通过运用blobtrack的源程序,然后用VS2010C++,创建一个工程项目,增加自定义的模块:
1)采集到的视频帧图像处理,转化成单通道的矩阵图像后,变换成灰度图。
2)进行高斯滤波平滑处理帧图像,为分析处理图像做基础准备。
3)求前景和背景的取差值图像,分割目标物体。
4)阈值二值化图像
5)运用Canny算子进行图像的分割,找到目标物体的轮廓,使其内部进行填充。
6)将这些视频帧做好处理后,结合blobtrack,设定其参数值,从而获得捕捉到物体后能够进行标识跟踪。
程序被运行后,图4.6-4.7为跟踪过程中所截取的帧图像,左图为视频分析后的填充图像的效果图,右图为实时RGB检测的效果图。从图中可以看出,如果运动物体被跟踪到,系统将会自动的给其标号,在blobtrack的源程序中,还被提供了体现跟踪效果的函数,如果某个物体由绿色框圈住时,证明当前的跟踪效果良好;但是如果是红色框圈住时,那就表明当前的跟踪效果不是很稳定,同时旁边会显示出abnormal的字样。对于物体的检测、跟踪的原理实质是将实时采集到的帧画面,进行累积差分所得到的灰度信息,所以对于颜色较深或者和背景图较为接近的物体检测跟踪的效果会有所差异。
图 4.6 检测运动物体跟踪稳定效果图
Fig. 4.6 Detection of moving object tracking stability rendering
图 4.7 检测运动物体跟踪效果不稳定效果图
Fig. 4.7 Detection of moving object tracking effect is not stable rendering
4.3 三文立体点云算法实验
平面图像在进行三文立体点云算法后的实验结果效果图如图4.8所示:
(a)图像处理灰度图(b)点云正面效果图
(a)processing grayscale (b)The point cloud positive effect
(c)点云图左侧效果图(d)点云图右侧效果图
(c)The point cloud image rendering
(d)Point cloud picture on the right side of rendering
(e)点云图上部效果图
(e)Point cloud top rendering
图 4.8 点云图效果图
Fig. 4.8 Point cloud image rendering
从实验效果图中可以分析出,在2D平面图像的数据被三文的重构后,目标物体的前后的景深信息可以清楚地从多个角度分析出。效果图(a)为采集到的彩色图像灰度处理效果图,为后续的处理做准备;(b)为正面的点云图,已经显现出了三文的效果;(c)—(e)为不同角度得到的三文效果图。三文的前后的关系能够清楚的从实验结果中体现出来。
4.4 本章小结
对以上图像进行预处理的基础上,对于目标物体进行了检测、跟踪的实验。从实验结果可以清楚看到这些方法在处理图像时对运动物体检测、跟踪的效果和作用;将2D场景的数据重构成3D场景,本论文用了深度景深图和点云算法的显示方法。根据在前几章节中介绍的原理,将其直接应用到3D立体场景中,大量的数据被进行运算和重构,检测、跟踪目标运动物体。
第5章 结论与展望
通过对“基于OPENCV的计算机视觉技术研究” 这一论文课题的研究。实现了:跟踪目标物体,并且分析运动物体的运动情况和轨迹;设计了以OpenCV的运动框架为基础的运动检测、分析、跟踪系统;过程中用到智能Kinect摄像头,结合OpenNI库,OpenGL界面设计库实时采集视频帧数据,并且,结合点云算法,在2D的基础上转换为3D场景,综合分析运动物体的运动情况的目的。
研究的内容:
2D平面图像的分析、处理,运动物体的检测、跟踪,2D平面图像转换为3D立体图像的分析、处理,3D立体图像中运动物体的检测、跟踪。 OpenCV移动目标物体的检测跟踪的研究(14):http://www.751com.cn/jisuanji/lunwen_524.html