目标离开侦测算法的研究
李俊
摘 要: 研究目标检测、背景提取、目标像素的处理、跟踪框生成算法,详细分析目标离开侦测算法的思路和原理,实现目标离开算法在不同环境下的识别、跟踪。通过测试结果表明,该算法模型在目标离开过程的侦测、跟踪效果都表现的不错,算法的效果良好。
关键词: 计算机视觉; 视频图像处理; 侦测算法; 树莓派
中图分类号: TN911.73?34; TP391.4 文献标识码: A 文章编号: 1004?373X(2017)09?0043?03
Abstract: The thought and principle of the surveillance algorithm for target leaving are analyzed in detail by means of research on the algorithms of target detection, background extraction, target pixel processing and tracking box generation. The recognition and tracking of the surveillance algorithm for target leaving in different environments are realized. The test results show that the algorithm has perfect performance on surveillance and tracking in the target leaving process, and good effect.
Keywords: computer vision; video image processing; surveillance algorithm; Raspberry Pi
0 引 言
伴隨着图像处理和视觉算法的快速发展,可通过成像系统代替人眼对周边事物进行视觉观察,检测识别出目标物体及运动情况等信息。研究目标物体离开的侦测算法,实现对视频数据流的挖掘,是目前需要研究的一个热点问题[1]。
图像处理技术作为一门专业学科,产生了很多优秀的算法,苹果、华为手机之所以全球畅销,其优秀的图像处理技术就是其亮点之一,对视频图像进行算法研究也是当前遇到的热点问题,研究如何识别出目标物体,并对目标进行跟踪和检测,实现对目标离开的侦测,将对人们的日常生活产生重要影响。
1 目标离开侦测算法的研究
1.1 目标检测提取的算法
目前用于视频中目标检测常用到算法有以下几种:光流法、帧间差分算法和背景相减法[4]。与光流法相比,背景相减法能检测到场景中静止的物体,也能侦测、追踪运动的物体,而且算法不像光流法那么繁琐,大大提高了运算的速率,与帧间差分算法相比,背景相减法在背景图像提取质量较好的情况下,对目标的侦测也有较强的自适应能力。综合以上三种算法的优缺点及对比结果,选择背景相减法作为本次研究目标像素提取的算法。
1.2 提取背景图像的算法
目标检测提取算法中选择了背景相减算法,从视频中提取一张质量较好的背景图片对目标像素的提取是相当重要的[5]。目前,最常用的背景图像提取算法主要有时间中值算法、直方图统计法和高斯背景估计算法。
考虑本次研究是实现对目标离开的侦测,因此需要目标在没有运动的情况下能检测并跟踪物体,算法模型设计如图1所示。
背景图像提取中分别使用了时间中值和高斯背景估计两种算法。时间中值算法提取到的背景图像效果最好,但是它的运算稍微费时间。而高斯背景估计算法的提取速率相当快,但是提取出来的背景图像的质量较前者来说稍差一些。综上所述,分别设计了两种方式的背景提取算法,验收时按效果选择。
1.3 对目标像素的处理
视频输入的图像与提取的背景图像相减后,得到的目标像素不是很清晰,会给后续的矩形框跟踪目标带来很大的误差,甚至会出现完全不能进行跟踪的情况[6]。因此,在视频图像与背景相减后需要对所得目标像素进行再次处理。相应的处理包括取绝对值、二值化、中值滤波、膨胀运算、闭运算等。如图2所示,上方箭头指的是视频帧流的输入,下方箭头指的是背景图像的输入。Subtract模块表示视频的每一帧图像都与背景图像进行相减运算,Abs模块表示对相减结果取绝对值,Autothreshold模块表示对图像取二值化,Median Filter模块表示中值滤波模块,Dlate模块表示膨胀算法,最后Close模块表示做闭运算。经过这一系列的处理之后就能得到有利于后续跟踪,且干扰像素点较少的目标像素。
1.3.1 绝对值运算
在视频图像和背景图像相减之后,显示出像素点的值可能是正值也可能出现负值。因为后一步所做的二值化运算中阈值的设定都是针对正值,所以进行绝对值运算可以让相减为负值但其绝对值又大于阈值的像素点显示出来。这样便可以更好地表现出目标的所有像素点,而不至于漏掉原本属于目标的像素点,在很大程度上保持了目标像素点的完整性。
1.3.2 中值滤波
使用中值滤波的部分有三处。前面两处是视频图像和背景图像在进行相减之前都用中值滤波先做预处理,在视频图像的二维空间里,通过滤波窗口达到中值滤波的效果,滤波窗口可以根据所要滤掉像素的种类做相应的选择,对于奇数个像素点的滤波窗口,中值就是指中心的灰度值。对于偶数个像素点的滤波窗口,中值则指窗口像素排序之后中间的两个灰度值求平均所得。Simulink环境下默认的滤波窗口大小为3×3的矩阵,还可以设置成5×5,7×7的矩阵,直到达到所需要的滤波效果为止。
1.3.3 膨胀运算
膨胀(dilation)和腐蚀属于对偶运算[7],可以解释为:把结构元素的中心点移到与被处理图像的每个像素重合,如果结构元素中心点与原图像像素取交集,且交集不为空,则对该像素按结构元素进行膨胀运算。所有满足上述条件的像素点膨胀后共同组成了膨胀运算后图像,用公式可以表示为:
通过对目标像素进行膨胀处理后,目标与背景相接处的像素点被合并到目标像素中,扩大了目标像素的边界,同时也填补了目标像素中一些空白的像素点[5],这样确保了矩形跟踪框生成的惟一性。
1.3.4 闭运算
闭运算实际上就是先对图像进行一次膨胀运算,然后再进行一次腐蚀运算。用公式可以表示为:
下面以图3中的例子来说明闭算法的具体思路。图中标注的点阵区域代表待处理的图像,点阵代表闭运算的结构元素,区域表示待处理图像经过膨胀运算之后的图像像素构成,区域表示在区域图像的基础上再进行一次腐蚀运算后的图像像素构成。
1.4 跟踪框的生成
经过对目标像素处理之后,在各模块阈值、参数选择合理的条件下,所提取到的目标像素质量应该饱满、清晰[8]。接下来,就是要对目标进行捕捉和侦测。这个过程分为两个步骤,如图4所示。输入Image的箭头为视频输入口,输入BW的箭头为闭运算后的二值图像。
1.4.1 Blob Analysis
Blob分析(Blob Analysis)是对图像的二值图中物体的像素进行连通域区域分析,Blob Analysis算法可以为视频、图像提供其中连通像素的位置、形状、方向、大小、数量,甚至是各个连通域之间的拓扑结构等信息。Blob分析块支持可变信号输入和输出,还可以应用于视频图像中运动物体的检测和跟踪[9]。
1.4.2 绘制矩形框图
Draw Shape模块可以在图4中看到。模块中视频的输入通过Image端口进入模块中,输入PTS端口的数据类型是目标像素的一系列四元位置坐标[x y width height]。视频图像和目标像素四元坐标两路信号的时时输入同时进入Draw Shape模块后,两者在算法中进行叠加,然后把叠加的图像一同输出。这样一来就能得到对目标物体的时时侦测和监控效果,在绘制形状(Draw Shape)模块中可以绘制多种形状的框图。
2 目标离开侦测算法的测试
方案选择确认以后,接下来是在树莓派上运行模型,并在不同环境条件下测试目标离开检测算法的效果。此次测试的条件分为两类环境:正常的光照环境、光照不足的环境。首先是在正常光照条件下进行,因为监控设备通常都是在正常光照、视野较大的环境下运行的。此环境下,对被测目标读卡器离开的连续时间内侦测效果截图如图5所示,算法模型在正常光照环境下对目标离开过程的侦测、跟踪效果都表现的不错,算法的效果良好。
监控设备在大多数情况下都是在正常条件下工作,但是也不排除在一些极端条件下的工作情况,光线不足也是其中的一种情况,测试效果如图6所示,有时会检测出目标像素之外的几个杂质像素点群,使得跟踪的矩形框并不是完全惟一的,测试效果还算可以。
3 结 语
基于Simulink环境下在树莓派开发板上实现的目标离开的侦测算法,采用当前广泛使用的背景相减法提取目标像素,节省了算法调试的时间。如何在极端条件下检测目标,提取背景和处理目标对象像素等算法方面还有很多热点问题需要深入研究,相信在未来几年里相关算法模型的发展会更全面、更多样化。
参考文献
[1] 蒋钘.人体运动目标检测与跟踪关键问题研究[D].湖南:中南林业科技大学,2013.
[2] 赵小川.Matlab图像处理:程序实现与模块化仿真[M].北京:北京航空航天大学出版社,2013:41.
[3] 赵小川.现代数字图像处理技术提高及应用案例详解[M].北京:北京航空航天大学出版社,2011:235?251.
[4] 朱参世,安利.运动目标识别方法与仿真研究[J].计算机与现代化,2010(5):63?65.
[5] 苏书杰.视频检测系统中的背景检测及更新算法研究[D].西安:长安大学,2009.
[6] 王爱玲,叶明生,邓秋香.Matlab R2007图像处理技术与应用[M].北京:电子工业出版社,2007.
[7] 张红源,陈自力.基于Simulink的目标跟踪系统仿真[J].电光与控制,2009,16(6):62?65.
[8] 姚进.基于数学形态学的图像边缘检测研究[D].山东:山东师范大学,2005.
[9] SZELISKI R.計算机视觉:算法与应用[M].北京:清华大学出版社,2012.
摘 要: 研究目标检测、背景提取、目标像素的处理、跟踪框生成算法,详细分析目标离开侦测算法的思路和原理,实现目标离开算法在不同环境下的识别、跟踪。通过测试结果表明,该算法模型在目标离开过程的侦测、跟踪效果都表现的不错,算法的效果良好。
关键词: 计算机视觉; 视频图像处理; 侦测算法; 树莓派
中图分类号: TN911.73?34; TP391.4 文献标识码: A 文章编号: 1004?373X(2017)09?0043?03
Abstract: The thought and principle of the surveillance algorithm for target leaving are analyzed in detail by means of research on the algorithms of target detection, background extraction, target pixel processing and tracking box generation. The recognition and tracking of the surveillance algorithm for target leaving in different environments are realized. The test results show that the algorithm has perfect performance on surveillance and tracking in the target leaving process, and good effect.
Keywords: computer vision; video image processing; surveillance algorithm; Raspberry Pi
0 引 言
伴隨着图像处理和视觉算法的快速发展,可通过成像系统代替人眼对周边事物进行视觉观察,检测识别出目标物体及运动情况等信息。研究目标物体离开的侦测算法,实现对视频数据流的挖掘,是目前需要研究的一个热点问题[1]。
图像处理技术作为一门专业学科,产生了很多优秀的算法,苹果、华为手机之所以全球畅销,其优秀的图像处理技术就是其亮点之一,对视频图像进行算法研究也是当前遇到的热点问题,研究如何识别出目标物体,并对目标进行跟踪和检测,实现对目标离开的侦测,将对人们的日常生活产生重要影响。
1 目标离开侦测算法的研究
1.1 目标检测提取的算法
目前用于视频中目标检测常用到算法有以下几种:光流法、帧间差分算法和背景相减法[4]。与光流法相比,背景相减法能检测到场景中静止的物体,也能侦测、追踪运动的物体,而且算法不像光流法那么繁琐,大大提高了运算的速率,与帧间差分算法相比,背景相减法在背景图像提取质量较好的情况下,对目标的侦测也有较强的自适应能力。综合以上三种算法的优缺点及对比结果,选择背景相减法作为本次研究目标像素提取的算法。
1.2 提取背景图像的算法
目标检测提取算法中选择了背景相减算法,从视频中提取一张质量较好的背景图片对目标像素的提取是相当重要的[5]。目前,最常用的背景图像提取算法主要有时间中值算法、直方图统计法和高斯背景估计算法。
考虑本次研究是实现对目标离开的侦测,因此需要目标在没有运动的情况下能检测并跟踪物体,算法模型设计如图1所示。
背景图像提取中分别使用了时间中值和高斯背景估计两种算法。时间中值算法提取到的背景图像效果最好,但是它的运算稍微费时间。而高斯背景估计算法的提取速率相当快,但是提取出来的背景图像的质量较前者来说稍差一些。综上所述,分别设计了两种方式的背景提取算法,验收时按效果选择。
1.3 对目标像素的处理
视频输入的图像与提取的背景图像相减后,得到的目标像素不是很清晰,会给后续的矩形框跟踪目标带来很大的误差,甚至会出现完全不能进行跟踪的情况[6]。因此,在视频图像与背景相减后需要对所得目标像素进行再次处理。相应的处理包括取绝对值、二值化、中值滤波、膨胀运算、闭运算等。如图2所示,上方箭头指的是视频帧流的输入,下方箭头指的是背景图像的输入。Subtract模块表示视频的每一帧图像都与背景图像进行相减运算,Abs模块表示对相减结果取绝对值,Autothreshold模块表示对图像取二值化,Median Filter模块表示中值滤波模块,Dlate模块表示膨胀算法,最后Close模块表示做闭运算。经过这一系列的处理之后就能得到有利于后续跟踪,且干扰像素点较少的目标像素。
1.3.1 绝对值运算
在视频图像和背景图像相减之后,显示出像素点的值可能是正值也可能出现负值。因为后一步所做的二值化运算中阈值的设定都是针对正值,所以进行绝对值运算可以让相减为负值但其绝对值又大于阈值的像素点显示出来。这样便可以更好地表现出目标的所有像素点,而不至于漏掉原本属于目标的像素点,在很大程度上保持了目标像素点的完整性。
1.3.2 中值滤波
使用中值滤波的部分有三处。前面两处是视频图像和背景图像在进行相减之前都用中值滤波先做预处理,在视频图像的二维空间里,通过滤波窗口达到中值滤波的效果,滤波窗口可以根据所要滤掉像素的种类做相应的选择,对于奇数个像素点的滤波窗口,中值就是指中心的灰度值。对于偶数个像素点的滤波窗口,中值则指窗口像素排序之后中间的两个灰度值求平均所得。Simulink环境下默认的滤波窗口大小为3×3的矩阵,还可以设置成5×5,7×7的矩阵,直到达到所需要的滤波效果为止。
1.3.3 膨胀运算
膨胀(dilation)和腐蚀属于对偶运算[7],可以解释为:把结构元素的中心点移到与被处理图像的每个像素重合,如果结构元素中心点与原图像像素取交集,且交集不为空,则对该像素按结构元素进行膨胀运算。所有满足上述条件的像素点膨胀后共同组成了膨胀运算后图像,用公式可以表示为:
通过对目标像素进行膨胀处理后,目标与背景相接处的像素点被合并到目标像素中,扩大了目标像素的边界,同时也填补了目标像素中一些空白的像素点[5],这样确保了矩形跟踪框生成的惟一性。
1.3.4 闭运算
闭运算实际上就是先对图像进行一次膨胀运算,然后再进行一次腐蚀运算。用公式可以表示为:
下面以图3中的例子来说明闭算法的具体思路。图中标注的点阵区域代表待处理的图像,点阵代表闭运算的结构元素,区域表示待处理图像经过膨胀运算之后的图像像素构成,区域表示在区域图像的基础上再进行一次腐蚀运算后的图像像素构成。
1.4 跟踪框的生成
经过对目标像素处理之后,在各模块阈值、参数选择合理的条件下,所提取到的目标像素质量应该饱满、清晰[8]。接下来,就是要对目标进行捕捉和侦测。这个过程分为两个步骤,如图4所示。输入Image的箭头为视频输入口,输入BW的箭头为闭运算后的二值图像。
1.4.1 Blob Analysis
Blob分析(Blob Analysis)是对图像的二值图中物体的像素进行连通域区域分析,Blob Analysis算法可以为视频、图像提供其中连通像素的位置、形状、方向、大小、数量,甚至是各个连通域之间的拓扑结构等信息。Blob分析块支持可变信号输入和输出,还可以应用于视频图像中运动物体的检测和跟踪[9]。
1.4.2 绘制矩形框图
Draw Shape模块可以在图4中看到。模块中视频的输入通过Image端口进入模块中,输入PTS端口的数据类型是目标像素的一系列四元位置坐标[x y width height]。视频图像和目标像素四元坐标两路信号的时时输入同时进入Draw Shape模块后,两者在算法中进行叠加,然后把叠加的图像一同输出。这样一来就能得到对目标物体的时时侦测和监控效果,在绘制形状(Draw Shape)模块中可以绘制多种形状的框图。
2 目标离开侦测算法的测试
方案选择确认以后,接下来是在树莓派上运行模型,并在不同环境条件下测试目标离开检测算法的效果。此次测试的条件分为两类环境:正常的光照环境、光照不足的环境。首先是在正常光照条件下进行,因为监控设备通常都是在正常光照、视野较大的环境下运行的。此环境下,对被测目标读卡器离开的连续时间内侦测效果截图如图5所示,算法模型在正常光照环境下对目标离开过程的侦测、跟踪效果都表现的不错,算法的效果良好。
监控设备在大多数情况下都是在正常条件下工作,但是也不排除在一些极端条件下的工作情况,光线不足也是其中的一种情况,测试效果如图6所示,有时会检测出目标像素之外的几个杂质像素点群,使得跟踪的矩形框并不是完全惟一的,测试效果还算可以。
3 结 语
基于Simulink环境下在树莓派开发板上实现的目标离开的侦测算法,采用当前广泛使用的背景相减法提取目标像素,节省了算法调试的时间。如何在极端条件下检测目标,提取背景和处理目标对象像素等算法方面还有很多热点问题需要深入研究,相信在未来几年里相关算法模型的发展会更全面、更多样化。
参考文献
[1] 蒋钘.人体运动目标检测与跟踪关键问题研究[D].湖南:中南林业科技大学,2013.
[2] 赵小川.Matlab图像处理:程序实现与模块化仿真[M].北京:北京航空航天大学出版社,2013:41.
[3] 赵小川.现代数字图像处理技术提高及应用案例详解[M].北京:北京航空航天大学出版社,2011:235?251.
[4] 朱参世,安利.运动目标识别方法与仿真研究[J].计算机与现代化,2010(5):63?65.
[5] 苏书杰.视频检测系统中的背景检测及更新算法研究[D].西安:长安大学,2009.
[6] 王爱玲,叶明生,邓秋香.Matlab R2007图像处理技术与应用[M].北京:电子工业出版社,2007.
[7] 张红源,陈自力.基于Simulink的目标跟踪系统仿真[J].电光与控制,2009,16(6):62?65.
[8] 姚进.基于数学形态学的图像边缘检测研究[D].山东:山东师范大学,2005.
[9] SZELISKI R.計算机视觉:算法与应用[M].北京:清华大学出版社,2012.