◆张海霞 朱泰全 邓宇航 兰汶鑫 许燕
基于跟踪算法的图像识别方法研究
◆张海霞 朱泰全 邓宇航 兰汶鑫 许燕指导老师
(西北民族大学数学与计算机科学学院 甘肃 730124)
当今社会处于信息技术高速发展的阶段,随着人工智能的兴起,计算机技术被应用于各个行业的各个方面,其中图像识别技术的运用得到了很大程度的普及,很多个领域都在使用图像识别技术,图像识别技术也越来越成熟,变得越来越多元化,本文旨在深入研究跟踪算法,并结合现在的图像识别技术,探讨并研究基于跟踪算法的图像识别方法的实现以及优化,以及将其应用于智能化教学视频录播系统。
跟踪算法;图像识别;目标检测
对于运动目标的跟踪属于视频分析的知识,也需要对图像序列进行处理,从而研究运动目标的规律,或者为系统的决策报警提供语义和非语义的信息支持,包括运动检测、目标分类、目标跟踪、行为理解、事件检测等。由于线上教育的快速发展,现在越来越多的人通过线上的录播课、直播课等进行学习,而往往这种线上课堂相对于线下课堂的教学来说会有一定的限制,为了从各个方面提高线上教育的效率以及缩小其劣势,研究基于跟踪技术的图像识别技术有着重大的实用价值。
本项目研究的主要问题以及难点的概要解决方案如下。
在视频中目标往往具有运动特性,这些特性来源有目标本身的形变,目标本身的运动,以及相机的运动。所以需要引入多帧,这样我们不仅可以获得好多帧目标的外观信息,还能获得目标在帧间的运动信息。
具体可采用以下三种方式:
第一种:侧重于目标的运动信息。
先基于motion segmentation或是background extraction (光流法和高斯分布等)实现对前景和背景的分离,也就是说,我们借助运动信息挑出了很有可能是目标的区域;再考虑连续帧里目标的持续性(大小、颜色、轨迹的一致性),可以帮助删去一部分不合格的候选的目标区域;然后对挑出的区域打分做判断。
第二种:动静结合。
即在第一种的基础上,加入目标的外观形变。有些目标在视频中会呈现幅度较大的,有一定规律的形变。这时我们可以通过学习形变规律,总结出目标特殊的运动特征和行为范式,然后看待检测的目标是否满足这样的行为变化。常见的行为特征表示有3D descriptors,Markov-based shape dynamics,pose/primtive action-based histogram等等。这种通过综合目标静态和动态信息来判断是否是特定目标的方法,有些偏向action classification。
第三种:频域特征的利用。
在基于视频的目标检测中,除了可以对目标空间和时间信息进行分析外,目标的频域信息在检测过程中也能发挥巨大的作用。比如,在鸟种检测中,我们可以通过分析翅膀扇动频率实现鸟种的判别。值得注意的是,这里基于视频的目标检测(video-based detection)存在两种情况,一种是你只想知道这个场景中有没有这种目标,如果有,它对应的场景位置是哪;另一种是这个场景有没有这种目标,它在每一帧中的位置是哪。我们这里介绍的方法侧重的是后一种更复杂的。
基于边缘的分割常用方法之一,用于区域已分出(二值或已标注),但边界未知的情况。
首先在图像中找到一个边界点,然后从这个边界点出发,按照某种策略寻找下一个边界点,以此跟踪出目标边界。对于边界跟踪法,重要的是三个部分,边界的起始点、搜索规则(边界判别准则),搜索终止条件。
起始点:确定边界的起始搜索点,起始点的选择很关键,对某些图像,选择不同的起始点会导致不同的结果。
搜索规则(边界判别准则):确定合适的边界判别准则和搜索准则,判别准则用于判断一个点是不是边界点,搜索准则则指导如何搜索下个边缘点。
搜索终止条件:确定搜索的终止条件。
这里搜索终止条件对于封闭轮廓和非封闭轮廓有不同的处理(本项目主要讨论非封闭轮廓),对于封闭轮廓:直至跟踪的后续点回到起始点。
图1 原图像与边界提取后的图像
我们这里对封闭轮廓的跟踪算法进行讨论,具体算法如下:
(1)找到起始点,记录该点。
(2)初始跟踪方向为左上方0方向。
(3)判断该点是否为目标点,是则把该置为新的跟踪的起始点。
(4)将找到该点目标点的方向逆时针旋转90度,作为新的跟踪方向,继续检测新的跟踪方向上的点。
(5)若不是目标点,则沿顺时针旋转45度,一直找到目标点。
(6)找到目标点后,在当前跟踪方向的基础上,逆时针旋转90度作为新的跟踪方向,用同样的方法跟踪下一个边界点。
(7)直到回到起始点。
利用python以及OpenCv对该基于追踪算法的图像识别技术进行实现。
(1)运动检测
首先,目标跟踪是对摄像头视频中的移动目标进行定位的过程。实时目标跟踪是许多计算机视觉应用的重要任务,如监控、基于感知的用户界面、增强现实、基于对象的视频压缩以及辅助驾驶等。实现一般的运动物体检测,关于实现视频目标跟踪的方法有很多,当跟踪所有移动目标时,帧之间的差异会变得有用;当跟踪视频中移动的手时,基于皮肤颜色的均值漂移方法是最好的解决方案;当知道跟踪对象的一方面时,模板匹配是不错的技术。
常用的目标跟踪方法有:
①背景法(本次用的方法):是将一幅图作为背景,然后和每一帧对比;缺点是一开始存入的背景可能随光照变法而造成错误,但是可以用在光照环境稳定的地方,优点是可以检测之前背景没有的景象。
②差帧法:是将前一帧和后一帧进行对比;缺点是无法对运动后突然又静止的景象进行识别,优点是光照不影响。
(2)运动方向预测
可利用光流法,光流是进行视频中运动对象轨迹标记的一种很常用的方法,在OpenCV中实现光流也很容易。可利用cv2.calcOpticalFlowPyrLK函数计算一个稀疏特征集的光流,使用金字塔中的迭代Lucas-Kanade方法。
首先选取第一帧,在第一帧图像中检测Shi-Tomasi角点,然后使用LK算法来迭代地跟踪这些特征点。迭代的方式就是不断向cv2.calcOpticalFlowPyrLK()中传入上一帧图片的特征点以及当前帧的图片。函数会返回当前帧的点,这些点带有状态1或者0,如果在当前帧找到了上一帧中的点,那么这个点的状态就是1,否则就是0。
本文讨论了跟踪算法以及图像识别技术以及二者的结合使用,论述了实现对目标进行识别、动态跟踪、视频移动识别等的技术算法,分析各种技术以及跟踪算法的优劣性以及图像识别技术的实现,并讨论该算法技术在智能化教学视频录播系统方面的应用前景。
[1]https://www.cnblogs.com/-wenli/p/11719012.html.
[2]方青,梅晓春,张育平.用于机动目标跟踪的Kalman滤波器的设计[J].雷达科学与技术,2006,1(4):50-553.
[3]嵇成新,许江湖,陈康.跟踪机动目标的多模型算法进展[J].系统工程与电子技术,2003,25(7):882-888.
[4]Reid D B.An algorithm for tracking multiple targets.IEEE Trans. Automatic Control.1978,24(6):843-854.
[5]Singer R A,Stein J J.An optimal tracking filter for processing sensor data imprecisely.
[6]determined origin in surveillance systems[A].Proceedings of the 1971 IEEE Conferenceon Decision and Control. Miami Beach:1971,171-175.
西北民族大学中央高校基本科研业务费资助资助本科生科研能力项目训练项目(项目编号:XBMU21192)