文献标识码:A
文章编号: 0258-7998(2013)12-0141-04
运动目标检测与跟踪是在动态图像分析的基础上,结合图像模式识别和图像跟踪方法对图像序列中的目标进行检测、识别、跟踪的过程。人体目标识别与跟踪是该领域的重要课题之一,在安防监控、客流统计等方面应用广泛。
目前目标跟踪算法可以分为两类:(1)基于模型的方法,如模板匹配、图像分割和活动轮廓法[1]。以Mean Shift算法和Snake算法为代表,其中Mean Shift以目标颜色进行建模,具有较好的实时性和跟踪性能,但目标颜色与背景颜色接近时跟踪失败;Snake算法基于目标轮廓进行跟踪,受目标初始形状和位置影响较大,计算量大不适合实时操作。(2)基于运动的方法,如光流法和特特征点法[1],现有的基于特征点跟踪算以目标的质心或任意特征点实现对目标的跟踪,在处理多目标跟踪时效果较差[2]。
本文提出了将检测区按32×32像素点进行分割,以图像序列多状态转移综合判定前景目标和背景的情况,完成背景的提取与更新;基于运动的方法,提出利用目标的亮度和颜色信息,以及在图像序列中的相对位置来构建代价函数的算法,进行目标特征匹配与跟踪,改善多目标情况下的跟踪性能。以商场客流统计为例,从人体目标运动检测、特征匹配跟踪和计数三方面展开论述。
1 人体运动检测
在客流量统计中运动目标检测有获取目标在场景中的位置信息及获取目标尽可能多的特征信息两个任务。
商场客流统计摄像头常安装于出入口正上方垂直向下摄取图像,属于静止背景的目标识别,常用算法有帧间差分法、背景差分法和光流法。
1.1 帧间差分法
帧差法具有运算量小、对光照和阴影等外界因素不敏感的优点。但其缺点也非常明显:无法检测出静止或移动速度缓慢的目标,相反在目标移动较快时,检测出来的目标又远大于实际目标;亮度、颜色等特征单一的目标在差分运算后将形成较大的空洞,造成差分结果不连通,即便进行图像的膨胀和腐蚀等形态学方面的处理,也不能消除空洞的影响。图1所示为相邻两帧差分结果信息相对丰富,而图2(a)中目标信息单一,图2(b)差分结果只有目标轮廓,采用参考文献[3]等改进的差分算法对运动目标进行提取,结果如图2(c)所示。
1.2 背景分块更新算法
背景差与帧间差相比,检测出的目标内部区域不会出现较大的空洞,可以将目标完整提取出来,获取丰富的特征信息,便于目标的匹配跟踪。
常用的方法包括基于卡尔曼滤波模型、基于高斯背景模型和基于简单概率统计的方法等,前两种方法实现过程较为复杂,且算法的实现对硬件要求高。第三种方法在没有运动目标长时间滞留的情况下效果较好,且运算量不大,符合实时性要求;在实际应用中,由于天气、光照等外界条件的变化,或目标长时间滞留,影响了背景的准确更新,由此可能会得到虚假的运动目标,从而造成误判。
基于概率统计的背景更新方法,常以一段时间内序列帧图像每个像素做差分运算,满足预设条件,则进行背景更新[4]。如图3所示,按32×32像素大小将检测区域进行分割,对每个分块图像按照图4所示将其分成初始状态Status0,当三帧差结果判定图像无前景目标和干扰时,进入Status1取背景数据BG1;在该状态若有前景目标运动,则进入Status2;当前景目标消失、图像恢复静止,则进入Status3取背景数据BG3,据BG1、BG3差分运算判定进行背景更新,否则返回Status0。
图4中,②主要判断是否有前景运动目标存在,与①检测图像细微变化不同,人体运动时帧差结果较大、差分像素点数也较大,故将步骤(2)中的亮度阈值LumT1修改为LumT2=2LumT1,步骤(4)中阈值CntT1修改为CntT2=10CntT1。当Cnti i=1,2,3均大于CntT2时判定有前景目标移动Flag2=1,由Status1跳转到Status2。
对所有分块区域按照图4方法进行背景更新,可以得到整个检测区的背景数据。
1.3 光流法
光流法的优点在于能够检测独立运动的目标,对背景处于静态或是动态的环境均能适用,但是计算量较大,无法保证实用性和实时性[1]。
2 人体运动目标跟踪和计数
采用分块更新的方法可准确提取背景信息有效检测出前景目标,识别人体运动。在此基础上实现人体特征结点的创建、跟踪和计数。
2.1 虚拟检测区
图3中将检测区域划分为3个区域、2条计数线,分别是:
①③创建区,创建人体特征结点;
②跟踪区,匹配人体特征信息,跟踪人体运动;
④出计数线,当人体从③区域跨过该计数线时,出计数值加1,标注为⑦。
⑤进计数线,当人体从①区跨过该计数线时,进计数值加1,标注为⑥。
2.2 人体特征结点的创建
采用9宫格方法查找背景差结果的连通域[5],得到图3中⑧所示的人体目标的位置、长宽信息,综合判断其是否在①③区域,以及长宽大小、比例等信息,创建该目标Person[i], i为人体目标序号, i=[1:I],I为当前场景下目标个数,其信息如下:
Person[i].x第i个人中心位置x坐标;
Person[i].y第i个人中心位置y坐标;
Person[i].W人体宽度;
Person[i].H人体高度;
Person[i].Cnt包含的特征方块个数;
Person[i].Dir 创建区域。
而该目标的特征信息由PsnFeature[i][m]表示,m表示特征方块序号,m=[1:Person[i].Cnt]
PsnFeature[i][m].x该特征方块x坐标;
PsnFeature[i][m].y该特征方块y坐标;
PsnFeature[i][m].Ymean 该特征块Y分量均值;
PsnFeature[i][m].Umean 该特征块U分量均值;
PsnFeature[i][m].Vmean 该特征块V分量均值;
Y、U、V均值采用算术平均的方法获得。
2.3 特征匹配与跟踪
目标在检测区域内运动轨迹无规律可循,特别是当人流量较大时,人体的运动轨迹杂乱。提出以目标特征信息进行匹配、跟踪的算法,步骤如下:
(1)获取当前帧数据与背景做差分运算;
(2)查找连通域,去除干扰点保存变量为:
Zone[k].x 第k个连通域中心x坐标;
Zone[k].y第k个连通域中心y坐标;
Zone[k].Cnt 第k个连通域特征方块个数。
k=[1:K],K为当前计算的满足条件的连通域个数,隶属于第k个连通域的特征信息方块,表示为变量ZoneFeature[k][m],其中m=[1:Zone[k].Cnt]
ZoneFeature[k][m].x第m个方块x坐标;
ZoneFeature[k][m].y第m个方块y坐标;
ZoneFeature[k][m].Ymean特征块Y分量均值;
ZoneFeature[k][m].Umean特征块U分量均值;
ZoneFeature[k][m].Vmean特征块V分量均值。
(3)计算第i个目标与第k个连通域(k=[1:K])的距离和颜色特征差异保存为变量CompDist[i][k]和CompRes[i][k],并做归一化处理,构建代价函数,得到第i个目标与所有连通域的代价函数值CstFun[i][k]=0.6CompDist[i][k]+0.4CompRes[i][k]。
(4)将步骤(3)重复I次,得到I×K的代价函数矩阵CstFun;
(5)由CstFun得到与第i个目标最为匹配的连通域,即满足CstFun[i][k]最小的序号k,用Zone[k]变量更新Person[i]变量,用ZoneFeature[k]更新PsnFeature[i]变量,完成目标跟踪。
图5所示为采用该算法对走出某卖场出入口的两人进行跟踪的结果。
2.4 计数
Person[i]跟随第i个目标的运动不断被更新,当满足2.1节所述条件时计数,之后将Person[i]结点删除,其他出边界的情况则只删除结点不计数。
3 算法实现和结果分析
TMS320DM648是一款针对多媒体处理和视频安全与监控领域,基于VelociTITM超长指令结构的高性价比的单核DSP芯片。结合视频解码芯片TVP5154,视频编码SAA7015实现了4路PAL格式视频输入,1路PAL格式视频输出的商场客流统计系统,其结构如图6所示[6]。
将该系统成功应用于某家电卖场,其中抽取了2个时间段共7 h,统计结果如表1所示,现场人工计数为实际值,系统计数为检测值。由表1可见统计准确率保持在95%左右,注意到 “正大门”、“通信门”和“数码门”这3个门在2个时间段内系统均多计,而“服务门”均少计,说明算法性能稳定,不会出现忽多计、忽少计的情况。
本文针对基于概率模型的背景更新方法进行了改进,更新了背景分区域,提高了背景更新的可靠性和准确性。在此基础上提出了以目标位置、亮度和颜色构建代价函数的特征匹配和跟踪算法,并将其成功应用于商场客流统计系统,在TMS320DM648硬件平台同时处理4路PAL视频,且客流统计准确率稳定在95%。结果表明,该算法有较好的目标识别、匹配和跟踪能力。
参考文献
[1] 赵艳启. 运动目标识别与跟踪算法的研究[D].南京:河海大学,2005.
[2] 金鑫.基于改进特征跟踪的客流量统计[J].计算机工程,2012,38(15):175-178.
[3] 丁磊,宫宁生.基于改进的三帧差分法运动目标检测[J].电视技术,2013,37(1):151-153.
[4] 曹海青.基于全局和局部特征的目标识别研究[J].微型机与应用,2011,30(14):41-43.
[5] 孙抗,汪渤,郑智辉.基于局部亮度直方图特征的实时目标识别与跟踪[J].系统工程与电子技术,2011,33(9):
1927-1931.
[6] 王文武.嵌入式客流量统计模块的设计和实现[J].电子技术应用,2011,37(8):33-35.