1、l运动目标检测的简介l运动目标检测的预处理帧间背景校正混合高斯模型建模l运动目标检测的方法l卡尔曼滤波l粒子滤波运动目标检测的简介运动目标检测的简介l运动目标检测是指在序列图像中检测出变化区域并将运动目标从背景图像中提取出来。l通常情况下,目标分类、跟踪和行为理解等后处理过程仅仅考虑图像中对应于运动目标的像素区域,因此运动目标的正确检测与分割对于后期处理非常重要。l由于场景的动态变化,如天气、光照、阴影及杂乱背景干扰等的影响,使得运动目标的检测与分割变得相当困难。运动检测分为静态背景和动态背景两类。l常用的方法有帧差法、光流法、背景减除法等。运动目标检测的预处理运动目标检测的预处理帧间背景校正
2、首先对相邻帧进行全局运动估计,补偿当前帧以实现背景校正背景建模混合高斯模型建模帧间背景校正帧间背景校正l特征点提取采用经典的Harris算子提取参考帧的特征点,计算图像亮度I(x,y)在点(x,y)处的梯度:构造自相关矩阵 表示卷积算子,是高斯平滑函数( 1,0,1)( 1,0,1)TXIYI 22,()AXw BYw CXYw222exp( ()/ 2)wxy得到一个二阶实对称矩阵M=A,C;C,B,必然存在两个特征值 和 ,代表自相关的主曲率。提取特征点如果特征值 和 是极大值时,则点(x,y)是一个特征点。即满足: ,其中, , ,这里T是一个固定的阈值,参数k=0.040.06。减号后
3、面的部分是修正,目的是抑制边缘点的误检。12122det()()RMktraceMT12det M12traceMl特征点匹配在当前帧找到参考帧中每一个特征点的唯一匹配点。step1:以特征点 为中心,将其领域构造一个尺寸为M N的模板图像 作为特征窗step2:在当前图像中对应位置处,确定(M+2p) (N+2p)的搜索区域 ,其中p表示设定的水平和垂直方向最大偏移量step3:从搜索区域的中心开始搜索,搜索路径采用菱形法,计算每点的绝对误差和SAD(Sum of Absolute Difference)值,其计算公式kp1I2I1211( , )( , )(,) ( ,. )MNmnSAD
4、 i jI m nImip njpi jpp step4:找出最小的SAD值,则其对应位置为匹配特征窗,其中心点即为匹配特征点l全局运动参数计算 假定参考帧中点 运动到当前帧的位置则对应的坐标关系为: 其中m2和m5表示两图的平移量,m0,m1,m3,m4表示尺度和旋转量,即为图像仿射变换模型。将特征点代入,求最小二乘解,求解的目标是使得各特征点的位置误差达到最小。 ,Tx y ,Tx y012534m mmxxmym my l帧间图像补偿 全局运动参数矩阵M代表的是背景的运动,即摄像系统的旋转、水平和垂直偏移运动。对当前帧的像素坐标利用M矩阵进行变换,得到新的坐标,并将原图中像素赋给该新坐标
5、,即可获取补偿后的结果图像,实现对帧间背景运动的校正。混合高斯模型建模混合高斯模型建模假设图像中的每一点的像素观测值和其他像素点的观测值相互独立,在某时刻t,设像素点的观测值为 ,则时刻t观测值为 的概率可以用具有K个高斯分布的混合高斯模型建模:tXtX,1()(,)Kti tti ti tiPXwX1,2,11(,)exp()()21(2 )2Tti ti tti ti tti tni tXXXK是高斯分布的个数,一般去3至5个, 是第i个高斯分布的权重, 是时刻t第i个高斯分布的均值向量, 是其相应的协方差矩阵, 是高斯分布的概率密度函数 。为了减少计算量,通常假定(R,G,B)三个颜色通
6、道是相互独立的,并且具有相同的方差,这样,协方差矩阵就有下面的形式: ,i tw, i t, i t2,i ti tIl假设图像中某像素点,在1t时刻的状态为 ,权重 反应了像素点从1t时间段内满足第i个高斯分布的后验概率, 中属于第i个高斯分布的观测样本越多,权重 就越大,方差 越小。 12,.,tXXX, i tw12,.,tXXX, i tw, i tl根据场景中任意点处大部分时间都呈现背景,而运动目标只是短暂出现的基本认识,对背景进行建模:把 K个高斯分布按照 值从大 到小排序, 大者表示有较小的方差与较大的出现概率,说明这些点在1t时间段内出现的概率较大,因此这些分布可以作为背景的描
7、述。 从首部选取前 个高斯分布作为该点处的背景模型,时变参数 由权重 和阈值 决定: ,i ti tw,i ti twtBtB, i tw(0,1)T ,1()arg minbti tibBwT运动目标检测的方法运动目标检测的方法l背景相减法背景相减法是目前运动检测中最常用的一种方法,基本思想是将输入的图像与背景图像或背景模型进行比较,通过判定灰度特征的变化,或用直方图等统计信息的变化来分割运动目标。它一般能够提供最完全的特征数据,但对于动态场景的变化,如光照和外来无关事件的干扰等特别敏感。传统的背景相减法包括背景模型的建立,目标决策和背景模型更新三个步骤。l帧间差分法帧间差分法是在连续的图像
8、序列中两个或三个相邻帧间采用基于像素的时间差分并且阈值化来提取出图像中的运动区域。使用基于时间序列图像上的差分图像检测运动目标,能够较好的适应环境变化大的情况,但对于图像序列中运动缓慢的目标其检测效果不好,难以有效的检测出图像序列中与运动目标相对应但变化相对较小的像素点,运动实体内部容易产生空洞现象。l光流法光流是空间运动物体被观测面上的像素点运动产生的瞬时速度场,基于光流方法的运动检测采用了运动目标随时间变化的光流特性,通过计算位移向量光流场来初始化基于轮廓的跟踪算法,从而有效地提取和跟踪目标。该方法的优点是在摄像机运动存在的情况下也能检测出独立的运动目标。然而,大多数的光流计算方法相当复杂
9、,且抗噪性能差,如果没有特别的硬件装置则不能被应用于视频流的实时处理。卡尔曼滤波卡尔曼滤波l匈牙利数学家lBS&MS at MITlPhD at Columbial1960年发表的论文A New Approach to Linear Filtering and Prediction Problems(线性滤波与预测问题的新方法)l假设当前室内温度仅跟上一时刻有关但变化中可能有噪声l温度计观测(摄氏华氏)读数会有误差l两种噪声相互无关l根据连续的观测值来推算实际温度变化lKF是根据上一状态的估计值和当前状态的观测值推出当前状态的估计值的滤波方法S(t) = f ( S(t-1) , O(t) )
10、l它是用状态方程和递推方法进行估计的,因而卡尔曼滤波对信号的平稳性和时不变性不做要求维纳滤波:使用全部观测值保证平稳性l优点:l卡尔曼滤波器是一个“optimal recursive data processing algorithm(最优化自回归数据处理算法)”l对于解决很大部分的问题,他是最优,效率最高甚至是最有用的公式公式xk系统状态实际温度A系统矩阵温度变化转移B、uk状态的控制量(通常没有)Zk观测值温度计读数H观测矩阵摄氏度-华氏度wk过程噪声温度变化偏差vk测量噪声读数误差卡尔曼滤波定义卡尔曼滤波定义l定义 为 先验状态估计, 为 后验状态估计值l先验误差和后验误差定义如下:l协
11、方差:卡尔曼滤波算法卡尔曼滤波算法l递推公式l如果没有误差,可以认为l 则包含全部误差的信息,称为新息(innovation)lK为修正矩阵,或称混合因子 (Blend factor)l修正矩阵的形式有多种,其中一种为:R-0 = K = 1/H流程图流程图任意给定初值均可,但P!=0应用应用l视频跟踪粒子滤波粒子滤波l什么是粒子滤波粒子滤波(PF:Particle Filter)的思想基于蒙特卡洛方法(Monte Carlo methods),它是利用粒子集来表示概率,可以用在任何形式的状态空间模型上。其核心思想是通过从后验概率中抽取的随机状态粒子来表示分布,是一种顺序重要性采样法。简单来说,粒子滤波法是指通过寻找一组在状态空间传播的随机样本对概率密度函数 进行近似,以样本均值代替积分运算,从而获得状态最小方差分布的过程。这里的样本即指粒子,当样本数量N时可以逼近任何形式的概率密度分布。 粒子滤波算法粒子滤波算法l1)初始化所有粒子l2)更新粒子当前位置l3)评估每个粒子的重要性l4)根据粒子重要性重新采样粒子滤波在物体跟踪中的应用示例粒子滤波在物体跟踪中的应用示例粒子滤波在机器人自定位中的应用示例粒子滤波在机器人自定位中的应用示例谢谢谢谢