运动目标检测、提取 主 讲:刘 龙 2019年2月24日
研究现状 已经出现了众多的视觉跟踪算法。 视觉跟踪问题进行分类 处理视觉跟踪问题的两种思路 视觉跟踪方法分类 ●摄像机的数目:单摄像机Vs多摄像机 ●摄像机是否运动:摄像机静止Vs摄像机运动 ●场景中运动目标的数目:单运动目标Vs多运动目标 ●场景中运动目标的类型:刚体Vs非刚体 ●传感器的种类:可见光图像Vs红外图像 处理视觉跟踪问题的两种思路 ●自底向上(Bottom-Up,Data-Driven) ●自顶向下(Top-Down,Model-Driven) 视觉跟踪方法分类 ●基于区域的跟踪(Region-based tracking) ●基于特征的跟踪(Feature-based tracking) ●基于变形模板的跟踪(Deformable-Template-based tracking) ●基于模型的跟踪(Model-based tracking)
技术路线 由于本文研究具有极强的工程应用背景,因此选择了自底向上的思路,这种思路对视觉跟踪的一般处理过程示意图如下 图 像 序 列 预 处 运 动 检 测 目 标 分 类 目 标 跟 踪
技术路线 本学位论文对其中所涉及的四个环节,即图像预处理、目标检测、目标分类和目标跟踪进行了研究。主要的创新之处包括以下四个方面。 返回目录 本学位论文对其中所涉及的四个环节,即图像预处理、目标检测、目标分类和目标跟踪进行了研究。主要的创新之处包括以下四个方面。 图像预处理--消噪算法及推广算法 目标检测--PIC算法及PICM算法 目标分类--FFA Snake算法
运动目标检测 (Pixel Intensity Classification, PIC ) 问题的提出 相关工作 基于像素灰度归类的背景重构算法 (Pixel Intensity Classification, PIC ) 基于像素灰度归类与修补的背景重构算法 (Pixel Intensity Classification and Mend, PICM) 小结
问题的提出 在视频监视系统中,运动目标的检测与分割是个非常重要的问题,尤其在复杂环境中对运动目标进行检测时,由于受到环境噪声的影响,往往很难检测到完整的或者真实的运动目标。运动检测的方法很多,这些方法可以分为三类: 基于光流的运动检测。 基于相邻帧图像差分的运动检测。 基于背景差的运动检测。
问题的提出 由于背景差方法的优越性,选择该方法作为研究的对象,但是该方法的难点在于如何在背景不断变化的情况下构造出随之变化的背景图像以避免运动目标的误检测。
相关工作 一种经典的方法是时间平均法,即对一段时间中的图像序列求和再平均,获得一帧近似的背景图像,但是这种方法容易将前景运动目标混入背景图像当中,产生混合现象。
相关工作 近年来关于背景图像的自适应更新,主要有两大类方法,第一类方法建立背景模型,并采用自适应方法对模型参数进行调整,从而获得新的背景图像,这类方法通常假定在模型初始化阶段,背景图像中不含运动前景,但这种假设在实际的公共场合很难满足;其次,运动前景很容易混入到背景图像中,产生混合现象。
相关工作 第二类方法是从过去的一组观测图像当中按照一定的假设选择像素灰度构成当前的背景图像,这类方法的优点在于背景的初始化与场景中是否存在运动的前景无关,同时能够有效避免混合现象。但是,由于这类方法是从过去的一段图像序列中重构背景图像,因此不如第一类方法能够适应迅速的场景变化,而是产生一定的时间延迟,但这个问题对于长时间图像监视和跟踪系统的影响不大。本文的背景重构算法属于第二类方法。
基于像素灰度归类的背景重构算法 首先选择假设。 第二类方法所采用的背景假设主要有: 在一段图像序列中,像素点处于稳定状态最长 的灰度值是背景像素灰度值。 背景至少在50%的时间内可以被观测到。 背景在图像序列中总是最经常被观测到的。 上述假设中,最后一种假设相比而言更为合理。。
基于像素灰度归类的背景重构算法 算法步骤: 步骤1:划分像素点的灰度平稳区间; 步骤2:分别计算各灰度平稳区间的平均灰度值; 步骤3:将平均灰度值相近的灰度平稳区间归为一类称之为灰度值一致区间,统计该区间像素点出现的频率; 步骤4:选择频率最大的灰度值作为该像素点的背景灰度值。
基于像素灰度归类的背景重构算法 步骤1:划分像素点的灰度平稳区间; 已知图像序列 ,从中等间隔抽取N +1帧图像。 表示在这N +1帧图像中的第i帧( i = 0,1,2,…, N )像素点(x,y)处的灰度值。则存在下式 , 和 灰度值不一致,不属于同一灰度平稳区间; , 和 灰度值一致,属于同一灰度平稳区间。
基于像素灰度归类的背景重构算法 步骤2:分别计算各灰度平稳区间的平均灰度值; 第s个灰度平稳区间的平均灰度值为 由上式可得灰度平稳区间的平均灰度值。
基于像素灰度归类的背景重构算法 步骤3:将平均灰度值相近的灰度平稳区间归为一类称之为灰度值一致区间,统计该区间像素点出现的频率; 比较所得灰度平稳区间的平均灰度值,选出灰度值一致的全部区间并合并,如果有 则第i个区间和第j区间为灰度值一致区间,其平均灰度值为
基于像素灰度归类的背景重构算法 步骤4:选择频率最大的灰度值作为该像素点的背景灰度值。 将灰度值一致区间中最大像素数与所对应的平均灰度值分别记为 和 ,有下式 即像素点(x,y)所对应的背景像素点的灰度值为
基于像素灰度归类的背景重构算法 实验结果一:
基于像素灰度归类的背景重构算法 实验结果二:
基于像素灰度归类与修补的背景重构算法 基于像素灰度归类的背景重构算法存在的问题。 在图像序列分析中,如果背景像素的出现满足假设条件,即背景在图像序列中总是最经常被观测到的,则利用PIC算法可以获得非常满意的重构背景。但是在很多情况下,这种假设条件并不满足。
基于像素灰度归类与修补的背景重构算法 例如在高速公路上,如果车辆较多时,道路在大多数情况下总是被遮挡的。
基于像素灰度归类与修补的背景重构算法 基于像素灰度归类与修补的背景重构算法的算法思路: PICM算法首先确定出利用PIC算法得到的重构背景中的错误区域,然后按照一定的规则对错误区域进行修补,最终得到正确的重构背景。 即算法分为三步: 步骤1:利用PIC算法得到重构的初始背景; 步骤2:确定初始背景中的错误区域; 步骤3:修补错误区域,获得正确的重构背景。
基于像素灰度归类与修补的背景重构算法 步骤2:确定背景中的错误区域; 初始背景中的错误区域通常是由该区域运动目标的遮挡所造成的,尽管这些错误区域所对应的真实背景在实际图像序列中出现的频率并不是最高的,但仍会以一定的频率出现。因此,如果将该图像序列与初始重构背景相减,那么错误区域所对应像素点的灰度值总是会以一个比较高的比例显示为变化的。
基于像素灰度归类与修补的背景重构算法 由步骤2得到的实验结果
基于像素灰度归类与修补的背景重构算法 步骤3:修补错误区域,获得正确的重构背景。 这一步的工作是在区域一致性假设的前提下进行的。所谓区域一致性假设是指,如果在背景的一个区域中,像素灰度值是大面积均匀的,则称该区域为均匀区域,在均匀区域中不会出现像素灰度值突变的区域,这种假设非常符合背景中含有道路、广场和天空等均匀区域的情况。 然后选择错误区域周边的像素灰度值作为标准灰度值,在错误区域所对应的像素点上选出与标准灰度值最接近的灰度值作为该点背景像素的灰度值,从而获得正确的重构背景,即最终背景。
基于像素灰度归类与修补的背景重构算法 由步骤3得到的实验结果
基于像素灰度归类与修补的背景重构算法 实验结果一:
基于像素灰度归类与修补的背景重构算法 实验结果二:
小结 针对复杂环境中的运动目标检测问题,本章首先提出了一种基于像素灰度归类的背景重构算法(PIC),该算法无须对场景中的背景和目标建立模型,能够直接从含有前景运动目标的场景图像中重构背景,有效的避免了混合现象。同时PIC算法只需要对一个物理意义明确的参数进行调节,在参数变化的很大范围内都可以得到满意的结果。通过对实际图像序列的处理表明,PIC算法能够很好的进行背景重构。
小结 返回目录 但PIC算法是建立在假设背景像素以最大概率出现在图像序列中的前提下的,若不满足这种假设则不能正确重构背景。因此本章又提出基于像素灰度归类和修补的背景重构算法(PICM),该算法重构出初始背景之后,检测初始背景中的错误区域并对其进行修补,最终获得正确的重构背景,从而有效克服了当不满足初始假设条件时背景图像的错误重构问题。通过对实际图像序列的处理表明,PICM算法能够准确地进行背景重构,从而正确完整地检测和分割出运动的前景目标。
基于力场分析Snake的运动目标提取 问题的提出 主动轮廓模型的数学基础 基于力场分析的主动轮廓模型 实验结果与比较 小结
问题的提出 在图像监视和跟踪系统中,检测到运动目标之后,应当将运动目标提取出来,以便获取运动目标的相关信息,从而进行更进一步的处理。 运动目标的提取问题属于图像分割范畴。在众多的图像分割方法中,主动轮廓模型(Active Contour Models) 近些年受到广泛关注。主动轮廓模型又称为Snake模型。本章主要利用Snake模型实现对运动目标完整和有意义地提取。
问题的提出 传统Snake模型存在以下严重缺点: 初始轮廓必须靠近感兴趣图像的真实边缘,否则就会得到错误的结果。 不能进入感兴趣图像的深凹部分。 参数主动轮廓模型具有非凸性,曲线能量最小时有可能是局部极小点。
问题的提出 针对这些缺点已经提出了许多改进算法,主要有 主动轮廓线的气球模型。 距离势能模型。 GVF Snake(Gradient Vector Flow Snake)。 但上述算法在解决传统Snake模型其中一个或两个缺点的同时又会产生新的问题。为此,经过研究提出一种基于力场分析的主动轮廓模型(Force Field Analysis Snake),称为FFA Snake。
主动轮廓模型的数学基础 主动轮廓模型分为两大类: 一类是参数主动轮廓模型 (Parametric Active Contour Model) 另一类是几何主动轮廓模型 (Geometric Active Contour Model)
主动轮廓模型的数学基础 参数主动轮廓模型 传统的参数Snake模型是一条曲线v(s)=[x(s), y(s)], s [0,1],这条曲线在图象的空间域中移动的能量最 小化函数为 其中, 称为内部能量函数,用来平滑Snake曲线。 称为外部能量函数,用来推动或牵引Snake向图象中感兴趣特征移动。
主动轮廓模型的数学基础 几何主动轮廓模型 几何主动轮廓模型是建立在曲线演化理论(Curve Evolution Theory)基础上利用水平集(Level Set)方法来实现的。在水平集方法中,曲线 被看作是高一维水平集函数 的零水平集,定义 值是点 在时刻 时到曲线 的最短距离,则曲线 由下式表示
基于力场分析的主动轮廓模型 FFA Snake的算法思路 算法步骤 真轮廓点的判定 假轮廓点 已更新轮廓
基于力场分析的主动轮廓模型 FFA Snake的算法思路 传统Snake方法所得结果示意图 (a)Snake的收缩过程使用(b)距离势能力场,(c)在接近边缘凹槽处的力场分布细节示意
基于力场分析的主动轮廓模型 FFA Snake的算法思路 FFA Snake的算法思路示意图
基于力场分析的主动轮廓模型 FFA Snake的算法思路 要实现上述思想,主要解决两个问题: 1)如何判断预更新轮廓中的真轮廓点和假轮廓点?也就是说,在上图中如何确定假轮廓ACB。 2)如何确定已更新轮廓?实际上,这个问题要解决的是如何确定上图中的对应轮廓点D,因为知道了点D就可以将点C直接拖向点D,从而也就确定了已更新轮廓ADB。
基于力场分析的主动轮廓模型 FFA Snake的算法步骤 步骤1:对输入图像进行边缘检测,求取边缘图像; 步骤2:对边缘图像求基于欧氏距离变换的距离势能力场作为外部力场; 步骤3:在外部力场上设定Snake的初始轮廓,进行Snake变形,得预更新轮廓; 步骤4:判断预更新轮廓中有无假轮廓,若有转步骤5,若无转步骤7; 步骤5:搜寻所有假轮廓的对应轮廓点; 步骤6:将预更新轮廓中的假轮廓拉向其对应轮廓点,得到已更新轮廓,以此已更新轮廓作为Snake的初始轮廓,转步骤3; 步骤7:预更新轮廓为最终感兴趣图像的真实轮廓,算法结束。
基于力场分析的主动轮廓模型 真轮廓点的判定 通过观察发现,真轮廓点的力场分布具有极强的规律性,假轮廓点的力场分布却没有规律可言。因此,只要归纳出真轮廓点8-连接域中力场分布规律,从预更新轮廓中将符合这些规律的轮廓点去掉,剩下的轮廓点就是假轮廓点,也就确定出了假轮廓。 通过对大量真轮廓点8-连接域中力场分布规律的总结,一共归纳出了六类真轮廓点,分别是正规轮廓点、16对轮廓点、断点、中心轮廓点、零点以及特殊轮廓点。
基于力场分析的主动轮廓模型 真轮廓点的判定 真轮廓点的力场分布具有极强的规律性。
基于力场分析的主动轮廓模型 真轮廓点的判定 正规轮廓点
基于力场分析的主动轮廓模型 真轮廓点的判定 16对轮廓点
基于力场分析的主动轮廓模型 真轮廓点的判定 断点
基于力场分析的主动轮廓模型 真轮廓点的判定 中心轮廓点、零点以及特殊轮廓点
基于力场分析的主动轮廓模型 假轮廓点
基于力场分析的主动轮廓模型 已更新轮廓点 将预更新轮廓中的假轮廓点用对应轮廓点代替。更换后得到的新轮廓就是已更新轮廓。
实验结果与比较 进入感兴趣图像的深凹部分 克服局部极小点 实际图像的结果 运行时间比较
实验结果与比较 进入感兴趣图像的深凹部分
实验结果与比较 进入感兴趣图像的深凹部分
实验结果与比较 克服局部极小点
实验结果与比较 克服局部极小点
实验结果与比较 实际图像的结果