目标识别与跟踪综述文档格式.docx
《目标识别与跟踪综述文档格式.docx》由会员分享,可在线阅读,更多相关《目标识别与跟踪综述文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
由于人群运动的密集特性,使得人与人之间的遮挡问题变得极为严重。
此外,在真实场景中,还存在人群与人群之间甚至是人群与环境之间的互遮挡现象,这些现象都将导致运动目标对象信息的丢失。
这些如何有效处理遮挡问题也是衡量一个人群运动分析系统优劣的准则。
(3)运动特征的提取:
人群运动的特征既具有个体运动的特征也具有群体运动的特性,合理的选取人群运动的特征对后续的人群运动分析尤为重要。
运动视频序列的直方图信息、光流场、边缘信息、彩色纹理特征等都可以用来作为运动检测。
根据不同的运动场景、运动目标特性因合理的采用不同的运动特征。
本文通过对人群特征分析的几种主要算法的整理和介绍,学习了每种算法的优点和缺点以及其适用的环境。
2人体检测
视频图像中的运动人体检测是一个重要且十分困难的研究领域,在实现运动补偿、视频压缩编码、视频理解时都需要用到运动目标的检测。
在视频理解中运动人体检测是后续跟踪、识别和活动分析的基础。
对运动人体目标的正确检测能大大提高后续跟踪、识别和活动分析的正确率。
运动目标检测的方法主要分为三种:
一种是帧差法,基于时问序列图像上的差分图像实现运动目标的检测;
第二种是光流法,是对图像的运动场进行估计,将相似的运动矢量合并形成运动目标的检测;
最后一种是背景差法,基于图像序列和参考背景模型相减实现运动目标的检测。
帧差法能较好的适应环境变化较大的情况,对于目标运动引起的图像序列中发生明显变化的象素点比较容易检测,但对于变化不明显的象素点不能很好的检测出来。
光流法在摄像机存在运动的情况下能较好的检测运动目标,但大多数光流计算方法十分复杂,计算量较大,不能满足实时视频流处理的要求。
背景差方法能检测出和运动目标相关的所有象素点,但这种方法对于外界环境的变化,如光照、外来事件等非常敏感。
2.1帧差法
帧差法是基于目标的运动能体现在图像序列的变化上,以直接比较图像序列相邻帧对应象素点发生的相对变化为基础进行运动目标检测的方法。
这是一种直接简单的运动检测方法。
也相当于检测的是每一帧静态图像中的目标,通过阅读文献,了解了基于AdaBoost算法的人脸检测方法。
人脸样本集
计算各样本的积分图及计算矩形特征值
AdaBoost算法:
挑选矩形特征,构建弱分类器,并确定其阈值和分类值,更新归一化样本权值
弱分类器集
由若干弱分类器构成一个强分类器并且确定强分类器的阈值
强分类器集
所有强分类器层层相连构成一个多层分类器
存储多层分类器
非人脸样本集
待检测图像
选择候选窗口
计算各个候选窗口的积分图
检测
输出人脸大小及位置
图2.1AdaBoost快速人脸检测系统框架图
使用AdaBoost学习算法的人脸检测方法由Viola等于2001年提出,该方法的主要特点是简单,实时性好,采用了一种称为“积分图像”的图像表示方法,能够快速计算出检测器用到的特征,然后用AdaBoost学习算法,从一个较大的特征集中选择少量的关键的视觉特征,产生一个高效的强分类器;
再用级联的方式将单个的强分类器合成为一个更加复杂的分类器,使图像的背景区域快速地丢弃,而在有可能存在人脸目标的区域花费更多的计算。
该方法的突出地位和贡献在于,它给出了一个稳定的、实时的目标检测框架,是一个实时的人脸检测方法。
图2.1为AdaBoost快速人脸检测系统框架图。
2.2光流法
光流法是基于对光流场的估算进行检测分割的方法。
光流是图像亮度模式的表观运动光流中既包括被观察物体的运动信息,也包括了有关的结构信息。
光流场的不连续性可以用来将图像分割成对应于不同运动物体的区域。
光流法检测运动物体的基本原理是:
给图像中的每一个像素点赋予一个速度矢量,这就形成了一个图像运动场,在运动的一个特定时刻,图像上的点与三维物体上的点一一对应,这种对应关系可由投影关系得到,根据各个像素点的速度矢量特征,可以对图像进行动态分析。
如果图像中没有运动物体,则光流矢量在整个图像区域是连续变化的。
当图像中有运动物体时,目标和图像背景存在相对运动,运动物体所形成的速度矢量必然和邻域背景速度矢量不同,从而检测出运动物体及位置。
采用光流法进行运动物体检测的问题主要在于大多数光流法计算耗时,实时性和实用性都较差。
但是光流法的优点在于光流不仅携带了运动物体的运动信息,而且还携带了有关景物三维结构的丰富信息,它能够在不知道场景的任何信息的情况下,检测出运动对象。
光流计算方法大致可分为三类:
基于匹配的方法、频域的方法和梯度的方法。
(1)基于匹配的光流计算方法包括基于特征和基于区域两种。
基于特征的方法不断地对目标主要特征进行定位和跟踪,对大目标的运动和亮度变化具有鲁棒性。
存在的问题是光流通常很稀疏,而且特征提取和精确匹配也十分困难。
基于区域的方法先对类似的区域进行定位,然后通过相似区域的位移计算光流。
这种方法在视频编码中得到了广泛的应用。
然而,它计算的光流仍不稠密。
(2)基于频域的方法,也称为基于能量的方法,利用速度可调的滤波组输出频率或相位信息。
虽然能获得高精度的初始光流估计,但往往涉及复杂的计算。
另外,进行可靠性评价也十分困难。
(3)基于梯度的方法利用图像序列亮度的时空微分计算2D速度场(光流)。
由于计算简单和较好的效果,基于梯度的方法得到了广泛的研究。
虽然很多基于梯度的光流估计方法取得了较好的光流估计,但由于在计算光流时涉及到可调参数的人工选取、可靠性评价因子的选择困难,以及预处理对光流计算结果的影响,少量帧中噪声的存在以及图像采集地过程中形成的频谱混叠都将严重影响基于梯度的方法的结果精度。
2.3背景差法
背景差方法主要包括背景模型建立、背景模型更新、背景差、后处理等步骤。
背景模型建立就是对背景模型进行初始化;
背景模型更新是根据当前输入的图像修正背景模型及时反映环境的变化;
背景差是将当前帧和背景模型相比较检测运动目标;
后处理是在高层次上对检测出的运动目标进行修正,得到更精确的结果。
一般将背景差方法对图像的处理分为象素级、区域级和帧级三个由低到高的层次处理。
象素级完成对图像中象素最基本的分类,即前景象素和背景象素;
区域级考虑象素之间的相关性,进一步从区域的角度上修正象素级分类;
帧级从图像全局变化的角度修正象素分类。
背景差方法的难点不在输入图像与背景模型相比较这一步,而是对背景模型的维持与更新。
在现实世界里,场景中的背景很复杂,存在各种各样的干扰,且背景是随时间不断变化的。
背景模型及其更新要能反映这些变化,抑制处理干扰。
一般来说,视频监控系统需要长期运行,要保证视频监控能够长期运行需要
背景差算法应具有很强的鲁棒性,需要能满足以下要求:
1.能适应背景随时间的缓慢变化如在一天当中不同时间里的光照变化。
2.能适应背景物体的变化如场景中移入新的物体、背景中的物体移出场景
等变化。
3.背景模型能描述背景中的一些较大扰动如树叶晃动、显示器屏幕闪烁等。
4.能检测出光照的突然变化并能在尽量短的时间内适应这种变化。
5.为了能够更好的跟踪识别物体,在背景差算法中应能尽量消除运动目标。
3人体跟踪
所谓运动目标跟踪,就是在一段序列图像中的每幅图像中找到所感兴趣的运动目标所处位置。
在视觉监控中运动目标跟踪的作用非常重要,因为它不但可以提供被监视目标的运动轨迹,也为进行场景中运动目标的运动分析和场景分析提供了可靠的数据来源,同时运动目标的跟踪信息也能为运动目标的正确检测以及运动目标的识别提供了帮助。
一般说来,对于一个运动人体跟踪系统而言,通常希望实现以下几点目标:
1.检测一个新的运动物体何时进入监测场景中,通过对运动物体形成的连
通区域形状的判断,从而过滤掉非人体的运动物体。
2.通过跟踪算法预测每帧图像中每一运动人体的位置,对人体进行定位。
3.当图像中存在多个运动人体时,如果他们彼此之间互相重叠或遮挡,或
者运动人体被背景中的物体遮挡或分割时,仍能够正确对人体进行跟踪。
4.如果被跟踪人体暂时消失,当该人体重新出现时,跟踪算法能及时恢复
对该人体的跟踪。
本章主要介绍基于onlineboosting算法的目标跟踪。
3.1基于onlineboosting算法的目标跟踪
Onlineboosting算法的应用范围非常广泛,其中基于在线学习的目标跟踪是应用较多的一个方向。
因为,待跟踪的目标是人为指定出来的,即首先确定某一个或几个图像区域为跟踪目标,然后集中力量解决如何稳健的跟踪该目标。
相应的在线学习的样本的获取以及类别标注也很容易实现,只要来自于目标区域内的样本一定是正样本,而在目标区域外取样即可得到负样本。
在线学习方法只需准备一个含有少量样本的训练样本集
训练初始分类器,然后这个初始分类器不断的获取新样本进行在线学习,从而提高自身的分类精度,这样大大减轻了采集训练样本的工作量。
下面先介绍如何将onlineboosting算法用于目标跟踪。
3.1.1onlineboosting算法简介
传统的离线boosting算法需要事先获得所有的训练样本用于每一个弱分类器的训练,并且在每次算法循环过程中根据弱分类器对当前所有样本的分类结果计算各个弱分类器的错误率,从中挑选出错误率最小的添加到强分类器中,此外还要用该弱分类器更新各个样本权重。
而在线学习算法中,训练样本是一个一个获取并用于分类器训练的,因此,如何改变这种样本权重更新方法,是onlineboosting算法的重点。
Onlineboosting算法,算法的输入是一组初始的弱分类器集合
,以及相应的参数
和
,其中
集合中的每一个值均为其对应的弱分类器的正确分类样本数,
集合中的每一个值均为其对应的弱分类器的错误分类样本数,初始时刻均为零。
同时用基于类Haar特征的学习方法进行学习一个正确标注的新样本
,设其样本权重为
。
由于只有一个样本,每次循环由弱分类器集合中的每个弱分类器对该样本采用基本在线学习算法进行学习,并将学过的弱分类器对该样本进行分类,若能够正确分类,则更新该弱分类器的正确分类样本数,若仍不能正确分类则更新错误分类样本数,再由式(3.1)计算错误率
:
(3.1)
根据错误率分别更新样本权重
以及弱分类器权重
,如式(3.2,3.3),并挑选出权重最高的弱分类器,完成一次循环。
可见每次循环各个弱分类器只学习一个样本,并挑选出一个弱分类器,经过T次循环则可以挑选出T个弱分类器组成强分类器
,如式(3.4)所示。
(3.2)
(3.3)
(3.4)
基于类Haar特征积分图的学习方法是每个弱分类器对新样本的学习算法,弱分类器通过这种算法对新样本进行学习,从而逐渐影响其对样本类别的判断,如调整弱分类器的分类阈值,使弱分类器对学习样本的分类结果趋于准确。
Onlineboosting算法步骤如下:
Step1:
新样本
,设其权重
,选好基本在线学习算法(本文中采用基于类Haar特征的积分图学习方法);
Step2:
对每个弱分类器
,学习新样本K次;
Step3:
将学习后的弱分类器
对新样本再进行分类;
Step4:
如果
则:
否则:
Step5:
当M个弱分类器都学习完该样本后,则循环结束;
Step6:
从中挑选出错误率最小的弱分类器采用式(4.3)计算权重。
可见,onlineboosting算法和离线boosting算法有很大的不同点,对于离线的boosting算法,当所有的弱分类器对整个训练样本集学习完后,才会挑选出错误率最小的弱分类器对所有样本权重同时进行更新。
而onlineboosting算法中所有弱分类器学习一个样本,每学习一遍更新一次该样本的权重,然后再对下一个样本重复上述步骤,因此在线学习的最大问题是弱分类器对样本权重的更新仅仅基于其对部分训练样本学习的基础上。
例如对两种算法准备相同的1000个训练样本。
首先,在离线boosting算法中通过对这1000个样本的学习产生了第一个错误率最小的弱分类器
,再由该弱分类器对所有的样本的权重进行更新,为了与onlineboosting算法进行比较,只需观察第一百个样本权重的更新情况。
显然,对于onlineboosting算法,
对第100个样本权重的更新仅仅是基于前99个样本的学习情况。
而对于其它样本,onlineboosting算法还未学习到。
可见两种算法对样本权重的更新是不一样的。
为了改善onlineboosting的训练过程,我们可以先取出部分训练样本采用离线boosting算法训练出一个初始强分类器,再用弱分类器集合中的各个弱分类器在线学习剩下的训练样本,每学习一个则挑选出一个弱分类器加入初始强分类器中,当所有的训练样本学习完后,得到最终的强分类器。
实验证明,该方法能有效提高onlineboosting的分类能力。
离线boosting和onlineboosting的错误率比较如图3.1所示。
...
1
2
3
4
5
N
11
222
.
…
强分类器
训练样本集被逐步更新
(a)离线boosting算法
(b)onlineboosting算法
图3.1两种算法的训练过程
3.1.2基于onlineboosting算法的目标跟踪
初始训练样本
训练初始分类器
设定当前目标检测器
在线检测
分类器在线学习
结束
开始
采集一帧图像
跟踪结束?
检测到的样本加入分类器
Y
图3.2onlineboosting算法流程图
基于onlineboosting算法的人脸跟踪的流程图如图3.2所示。
首选,用部分离线样本训练分类器,形成初始样本分类器。
然后需要手动选择跟踪目标,以当前选择目标窗口作为正样本,再将这个窗口长宽放大一倍,然后分成四份(即左上、左下、右上、右下)来作为负样本,以此来训练每个弱分类器,然后在后续帧中,依次用类Haar特征进行人脸检测。
考虑到视频中的人体运动比较剧烈,我们在设定候选框时比简单的人脸检测时要多1~2倍。
检测到人脸后,则将检测正确的归为正样本,进入下一次循环。
4人群运动分析
人群运动分析主要包括人群密度估计、人群运动估计和人群行为理解三个方面。
本章从上述三个方面介绍研究人群运动分析的方法。
4.1人群密度估计
人群密度估计是人群分析里一个重要的内容,例如,人群密度分析可以用来测量公共场所的舒适度或者用来检测潜在的危机。
传统的人群密度估计模型主要分为基于像素的估计模型、基于纹理的估计模型和基于目标的估计模型三类。
4.1.1基于像素的估计模型
基于像素点的方法依赖于局部特征点(如通过背景相减模型或边缘检测获得)估计场景中的人数。
Davies于1995年发表了用图像处理技术进行人群监控的论文,在他的方法中首先利用前景像素面积和前景边缘像素面积做特征。
该方法使用了很多数字图像处理的技术,例如:
背景差分、边缘提取等。
Davi吮可以说是人群运动分析的主要代表者,促进了计算机视觉和数字图像处理技术的进一步发展。
在进行人群密度估计时,可采用的特征有很多种,可使用的分类器也不同。
Davies发现人群人数和所提取的特征具有线性关系,可利用卡尔曼滤波器来求解待定系数,而香港的Chow等在1999年提出了一种基于混合全局算法的神经网络人群密度估计方法。
这种方法提取了有关图像的三种特征:
前景图像的边缘长度、前景图像占整个图像的比率、背景图像占整个图像的比率。
由于人群在密度较大时,很容易发生个体之间的遮挡现象,因此为了更加适应现实中的实际情况,解决一定的遮挡现象,2002年Chow等人在1999年的算法基础上进行了修改和完善,加入了人体模板匹配模块,有效地改善了算法的性能,并应用于香港地铁站的智能监控系统中。
4.1.2基于纹理的估计模型
相比较基于像素点的估计模型,基于纹理的估计模型需要高层次的特征。
1998年,Marana提出了一种基于纹理分析技术的人群密度估计算法。
通过研究分析发现,纹理特征能够刻画不同密度等级的人群。
高密度的人群在纹理上表现为细纹理模式,而低密度的人群在纹理上表现为粗纹理模式。
经研究发现基于纹理分析的人群密度估计方法可以解决高密度人群问题,有效地改善了基于像素数统计的人群密度估计在高密度下准确率不高的现象。
基于纹理分析的人群密度估计方法通常可分为4类:
灰度共生矩阵法、直线分割法、傅里叶频谱法和分形。
因此,我们可以通过纹理分析来提取人群图像的纹理信息并作为分类的特征。
由于这类方法在不同人群密度情况下均有较好表现,因此,在人群密度估计方法中占主导地位。
4.1.3基于目标的估计模型
在低密度场景下,这种模型比前两种模型更能得到准确的结果,而在密集场景下,由于场景的严重遮挡,很难得到准确的结果。
此外,还有基于基于频域能量的人群人数估计方法。
根据监控环境的面积大小和人群的运动特征,人群密度一般情况下分为5类:
很低、低、中等、高、很高。
提取特征后,将特征变量送入分类器进行分类,以判断人群的状态。
因此,分类器的选择也是一项关键的工作。
常用的分类器有:
神经网络、拟合函数、模糊聚类等。
4.2人群运动估计
视频运动估计是指根据相互关联的两帧或多帧图像估计出图像中各个对象的运动信息,它是数字视频处理和计算机视觉领域中一个非常活跃的分支。
运动估计属于运动视觉的领域,而运动视觉主要分析变化场景中物体的形状、位置和运动信息。
运动估计可以解决很多现实问题,比如,视频压缩编解码系统、目标跟踪、超分辨率图像复原、机器人视觉和视频监控。
因为运动估计和运动补偿是现阶段视频压缩编解码的关键技术,故而运动估计的各种算法推动了视频压缩编解码系统的发展。
运动估计算法很多,大体可以分为4类:
光流法、块匹配、递归估计法和贝叶斯估计法。
4.2.1光流法
光流的概念是Gibson于1950年首先提出的。
当摄像机与场景目标间有相对运动时,所观察到的亮度模式运动称为光流。
在亮度不变假设下求取连续图像帧之间的相对运动,像素点的运动矢量即构成光流场。
光流中既包含了被观察物体运动的信息,也包含了与其有关的结构信息,通过分割光流图可以确定运动和对象在三维空间中的结构。
光流法描述了物体的运动,包含更多的信息,并且光流场每个像素都有一个运动矢量,因此可以较为准确地反映相邻帧之间的运动。
利用光流法研究了人群的运动估计,取得了很好的效果。
但是目前光流计算的普适性、准确性和实时性仍是函待解决的问题。
4.2.2块匹配
在一幅复杂的人群图像中,如果依靠每个步行者的个体信息来估计人群总体的运动,必须要分离出每个个体的运动,但是要做到这一点并不容易。
尤其当人群密度较大时,个体之间相互遮挡比较严重,这就变得更加困难,甚至是不可能的。
而块匹配估计人群运动时,不借助人群中个体的信息,而是通过统计视频中各个分割块的运动矢量估计人群整体的运动。
块匹配运动估计从4个方面进行研究:
块的形状和大小、块匹配准则、初始搜索点的选择、搜索策略。
(1)块的形状和大小:
块匹配方法基于的假设是:
同一块内像素的运动是一致的。
虽然这个假设具有一定的片面性,但是如果选择合适的块形状和大小,在一定程度上可以消除假设的片面影响。
然而,块大小的选择受两个矛盾的约束:
块大时,块内各个像素做相等平移运动的假设不合理;
块小时,编码一帧图像所用的运动估计次数就越多,因而需要存储和传输的运动矢量也越多,可能降低编码效率。
考虑各种因素,通常选择16xl6的宏块作为单位。
(2)块匹配准则:
块匹配准则是判断块相似程度的依据,因此块匹配准则的好坏直接影响运动估计的精度。
另一方面,块匹配运算复杂度、数据读取复杂度在很大程度上取决于所采用的块匹配准则。
因此,减少搜索匹配的次数和降低块匹配准则的计算复杂度是提高运动估计算法两种主要策略。
(3)初始搜索点的选择。
初始搜索点的选择方法有很多种,一种简单的方法是直接选择参考帧对应的(0,0)位置,但是这种方法极易陷入局部最优点。
另一种方法是选择预测点的起点作为初始搜索点。
大量的实验证明,预测点更加靠近最优匹配点,这和运动矢量中心的偏置分布理论是相符的。
这种选择预测点作为初始搜索点的方法有效地减少了搜索次数,提高了算法的时间效率。
(4)搜索策略:
搜索策略是运动估计算法最关键也最复杂的部分。
搜索策略的选择是否合适,对运动估计的准确性、运动估计速度都有很大的影响。
依据搜索方向策略可以分为:
梯度式、螺旋式;
依据搜索路线策略可以分为:
交叉线性、圆形和菱形等。
这些搜索策略和不同的搜索步长结合起来就可以得到不同的搜索方法。
4.3人群行为理解
人群行为理解是计算机视觉最为重要的一个课题,也是本文的主要研究内容。
一般而言,在给定场景下,时域信息用来估计人群的行为,如主流方向,速度,及异常运动。
目前有两种主要的人群行为理解模型:
(1)基于对象层次的模型:
人群可以视为所有个体的一个集合。
人群行为理解是通过对人群的某种分割或者对个体的检测来达到群体行为的分析。
例如,当检测出个人背离主流人群的方向运动时(如有人在比赛结束退场时从出口强行进入)可以视为是异常状况。
(2)基于整体层次的模型:
人群视为单一的实体,不需要分离出每个个体。
整体方法的目的是为了获取整体信息,如主要的人流,而不顾一些局部的信息。
5总结
通过阅读文献,本文总结和介绍了在人体检测,人体追踪以及人群运动分析三个方面的主要研究方