kaiyun官方注册
您所在的位置: 首页> 嵌入式技术> 设计应用> 基于MPEG-4的运动目标检测跟踪的DSP实现
基于MPEG-4的运动目标检测跟踪的DSP实现
李 岩,孙光民,吴 强,于 慧
(北京工业大学 电子工程系,北京100022)
摘要:提出一种基于MPEG-4的运动目标检测跟踪的方法,通过对MPEG-4编码中的运动矢量进行阈值分割、形态滤波等,实现运动物体的检测,并在ADSP-BF533上进行实现,给出实验结果。
Abstract:
Key words :

摘 要:提出一种基于MPEG-4的运动目标检测跟踪的方法,通过对MPEG-4编码中的运动矢量进行阈值分割、形态滤波等,实现运动物体的检测,并在ADSP-BF533上进行实现,给出实验结果。
关键词:视频监控运动检测ADSP-BF533MPEG-4

1 研究现状
  目前国内数字化视频监控系统发展迅速,嵌入式系统更是由于其成本低、稳定性高、可维护性强等优势而成为新的发展方向。就压缩技术来看,主要采用MJPEG、MPEG-1和MPEG-4,其中MPEG-4在压缩方法上远远优于其他2种,在录像存储容量、清晰度、帧率可调及网络传输上都有大幅度的提高,因此已成为目前发展的热点。
  运动目标的检测和跟踪是视频监控中的重要技术,现在的运动目标检测和跟踪技术包括帧差法、光流法、统计学方法和贝叶斯分割法等,在视频监控中主要应用的是帧差法。这些方法都是基于象素进行处理的,而且脱离了压缩技术,运算量和复杂度都比较大,不适合嵌入式视频监控系统。
  本文提出一种基于MPEG-4编解码系统的运动目标检测的方法,并在ADI公司的ADSP-BF533上进行实现,测试结果验证了算法的正确性和可行性。
  由于MPEG-4将对象按运动、形状、纹理三类信息进行编码,运动信息编码主要是通过运动估计和补偿来完成。其中运动估计就是在参考画面上搜寻最相似的方块,并确定二块相对位置的变化,即确定运动矢量MV的过程。而运动目标的检测就是要将运动的物体与背景进行区分。所以可以充分利用二者的联系,将MPEG-4编码中运动估计所得到的运动矢量信息作为检测依据的基本信息,这样无须再增加额外的运算和存储就能获取整帧图像的所有运动信息。
  本文提出的检测运动物体的方法就是在编码端,对提取的运动信息进行分析,滤除噪声区域,以准确分割运动物体,将目标块聚类在最小的外接矩形框内。并且将此时划分出来的运动目标块进行标记,随编码流输出。在解码端,从码流中读取相应运动块标志信息,判断边缘块,在解码图像上叠加边框后输出显示。对运动物体的跟踪则主要通过将每帧识别出的运动图像质心相连来实现,所以跟踪相对比较容易,重点还是单帧的运动目标检测。
2 运动目标检测与跟踪
2.1 编码端实现运动目标分割

  编码部分主要是检测分割出运动物体,并对物体包含的所有运动块进行标记,随码流输出。为便于监测观看,检测出的运动物体要聚类成矩形。编码端实现框图如图1所示。


  MPEG-4的运动信息编码有多种算法,本文采用的运动估计算法是块匹配方法,既可以基于宏块(16*16),也可以基于块(8*8)。匹配准则用的是绝对误差和(SAD)准则。在寻找最佳匹配点的搜索算法中则采用先整象素再半象素的搜索。整象素用的是菱形而半象素用的则是方形。运动估计后输出的运动矢量以宏块和块为单元。由于宏块的运动矢量已体现了各块运动的大致信息,所以运动物体检测算法提取的运动矢量以宏块为基本单元。
  运动检测就是通过对提取的运动矢量所形成的二维图进行分割。运动物体分割框图如图2所示。
  由于运动矢量包括x和y二个分量,为便于后面分析处理,先通过下式对其进行降维:

  式(1)中,I(x,y)是一维运动信息变量,其中x和y分别代表宏块位置的水平和垂直坐标,MVx和MVy是该位置运动矢量的2分量。然后将I(x,y)进行阈值分割得二值函数B(x,y),即:

式(2)中,Thresh为分割的阈值。阈值分割可以大致确定运动区域。由于太微小的变化多半是噪声,所以忽略不计。其中阈值的选取可根据需要按监控对象来定:对于剧烈运动的可选取范围大些,如监视人员的出入,这样可使最后框定的物体更精确;反之,对于细微运动的则选取小阈值,以免漏报。
  通过阈值分割得到的二值图只是标识了运动的大致区域,要想准确地确定运动物体,还需从二方面进行滤波处理。(1)对于本不属于运动物体但被标识为运动块的区域进行处理,即除噪。这里的噪声主要是指由于物体运动而带来的阴影和周边光线的变化。噪声的连通区域一般很小或为孤立宏块。(2)对属于运动物体但未进行标识的块进行处理,即填补。这里所要填补的是由于该宏块运动前后的属性相差不大经过阈值分割后错判而造成的。这种情况一般表现为运动区域中的空洞或区域边缘凹槽。这二部分的处理采用形态滤波,其实现框图如图3所示。


  形态滤波包括边缘除噪、中心除噪和中心填补三部分。形态滤波中,B表示二值图像,S表示结构元素,Sxy表示一个结构元素的原点平移到点(x,y)。边缘除噪运算如下:

式(3)中的A表示结构元素与二值图像的交集,式(4)中COUNT(A)表示计算集合A中的元素个数。根据边缘位置不同,选取的结构元素为不同类型的全1三邻域。
  中心除噪与边缘除噪类似,在具体实现过程中为减少计算量,将除噪和填补同时进行,运算过程如下:

其中,COUNT(A)thresh_padding为中心填补过程。结构元素Sxy取全1八连通域。
  形态滤波包含多种算法,考虑到该算法要应用于DSP中,编程时判断语句会大大增加运算时间。所以在是否属于运动块的判定上,没对邻域运动信息分布采用复杂的判断,而是通过计算其中包含运动块的个数来判定。形态滤波前后的效果图如图4所示。


  图4中叠加在原图像上的阴影就是对运动宏块作的标记。从图中可以看出,由于物体运动产生的阴影噪声已得到很好的消除,即左图中最下边的标记块,而运动物体左边的零散标记块,是由于运动造成的背景变化,也基本滤除了。此时运动物体已基本被标志出。
  形态滤波参数变化的效果图如图5所示,它对分割运动区域会产生影响。左图中thresh_noise=4、thresh_padding=5;右图中thresh_noise=2、thresh_padding=7,从图中可看出左边的形态滤波效果更好。


  经过除噪和填补的形态滤波,基本分割出运动物体。最后将运动物体聚类到最小矩形区域内,并对所有矩形区域内的块进行标记并输出到码流。
2.2 解码端实现运动目标的检测
  解码部分主要就是在解码图像上为已经标记好的运动物体矩形区域加上框,以显示输出。具体实现方法是:从码流中提取各宏块运动标志信息,对于运动块,判断其是否为矩形区域边缘,若是边缘则根据类型绘出相应框。解码端实现框图如图6所示。


  判断运动宏块是否在矩形框边缘时,采用模板匹配法。模板使用四连通标准,将垂直和水平方向邻点作为邻域。宏块与模板匹配后,根据判定的边缘类型再加边。边缘四模板如图7所示。


2.3 运动目标的跟踪
  MPEG-4将图像帧分为I、P、B三种类型。P、B属于预测帧,需要用到运动编码。而I是帧内编码,没有运动估计。前面都是针对预测帧而做的运动物体检测,将每帧图像确定的运动区域质心提取,整个视频序列连接而成的轨迹就实现了对运动物体的跟踪。其中I帧并没有识别运动物体,但由于I帧出现间隔一般在十帧或几十帧,所以对于整个物体运动的跟踪没有什么影响。
3 算法的DSP实现结果和结论
  本文提出的运动目标检测算法应用于嵌入式视频监控系统,而在嵌入式监控系统中对于视频压缩处理部分都采用DSP芯片来完成,所以需要使用DSP芯片来对算法进行测试和验证。Blackfin是ADI推出的一系列高性能16位定点处理器,专为满足当今嵌入式音频、视频和通信的计算需要与功率限制而设计。本文选用目前该系列中性能最好的处理器BF533。Visual DSP++是Blackfin的编译器,它支持C语言编译,还提供了很好的性能评估工具statistical profiling,可以方便地对C代码进行评估和优化。测试环境:硬件为BF533的EZ-KIT,软件为Visual DSP++ 3.5。测试对象:(1)用摄像头采集的30帧灰度视频序列,序列为在纯色背景下晃动U盘形成的,采集过程中摄像头位置不变,处理格式为CIF(352*288)。前面采用的效果图均出自此序列。(2)针对实际监控场景采集的100帧序列,处理格式为352*240。
  U盘运动序列检测结果图像和人运动监控监测结果图像分别如图8和图9所示。可以看出本文提出的运动检测算法能正确检测出运动图像。从图9的检测图像还可以看出该算法能检测出多于一个的运动目标。第30和60帧图像中,能检测出2个人同时运动。


  对于算法的可行性主要从输出码率和DSP运行的周期数二方面来评估。输出码率:每个运动标志按4位输出到码流,以352*288图像为例,每帧增加了352*288/(16*16)*0.5=198字节,码流的增加量非常小,对于网络传输不会造成任何影响。运行周期:用Blackfin 实现MPEG-4编码每帧需要约10M周期,而每帧用于检测标志运动区域的计算只占用不足0.4M周期,不会影响编码的实时性。
  由此可见,本文提出的基于MPEG-4的运动检测跟踪方法正确可行,完全可用DSP来实现,并可应用于嵌入式视频监控系统中。
参考文献
1 International Organization for Standardization ISO/IEC JTC1/SC29/WG11 N3342.Overview of the MPEG-4 Standard,2000
2 詹翊强,戚飞虎,刘天明.基于MPEG-2视频流的目标跟踪快速算法.上海交通大学学报,2001;35(9)
3 袁潮,黄晓伟,李川.基于ADI公司Blackfin处理器的MPEG-4视频编码器的设计.电子产品世界,2003;(9)
4 李在铭.数字图像处理压缩与识别技术.成都:电子科技大学出版社,2000

此内容为AET网站原创,未经授权禁止转载。
Baidu
map