跟踪算法的一些思考

为了完成高速公路车辆行为的监控,这些天在忙着搞目标跟踪相关的东西。在仔细翻阅了2013年cvpr的一篇关于跟踪的综述之后,对当前跟踪的研究,很是失望和无奈啊。失望的是,想找到一种能够解决大视野范围、尺度变化剧烈的跟踪算法,那是相当之困难啊。无奈的是,自己也想不出好的想法。

从综述上得到的信息,近几年提出的跟踪算法,在向深度学习和分类器这两种思维靠拢。吸收深度学习的最新思想,比如稀疏编码,这当然更有利于表达目标,降低对各种干扰因素的影响。但使用分类器,则总是给人感觉有点得不偿失了。采集样本,训练模型,都要花费时间的,cpu算得过来吗?何况好多时候,还是多目标跟踪。

其实我自己也有个思路,能够从根本上解决跟踪的难题,但是有生之年,就不知道能不能见到了。跟踪的本质,还是识别问题。如果计算机能够达到人脑的识别水准,要跟踪的目标,直接已经识别出来了,就不存在跟踪问题了,每一帧图像到来时,跟踪问题已经转化为识别问题了。当然,要实现这个目的,首要难题是,如何解决识别问题?这个难度应该比人脑的识别难度低,因为在单一的路口,相机所能看到的,就是路面、车子、行人,再没有其他的东西了。这也就是说,被识别的物体,其类别数目还是很少的。并且高速公路是个特殊的环境,场景相当单一,目标的运动规律也简单,因此实现难度肯定要远远低于人脑的。

目前基于分类器的跟踪方法,也是直接将目标从图像中检测出来。但是,这些方法不能很好的适应目标的变化,而且在线训练,耗费了大量的时间,因此跟上面讲到的模仿人脑的思路,是有本质区别的。区别的本质就是:模仿人脑的思路,是事先经过大规模的学习训练,已经将各类目标、背景等模型存储下来,不管在具体的跟踪过程中,目标如何变化,都在掌控范围以内,照样能够识别。这种方法属于离线学习。

此外,除了识别,还有一个影响较大的模块就是分割。以前在利用较简单的方法进行目标跟踪时,一个不好的现象,就是漂移。很多时候,跟踪框居然飘到路面上去了。这种现象,人脑是绝不会出现的。后来仔细思考,感觉是分割没很好的用起来,将车辆跟地面分割开,很多时候还是比较容易得。如果结合了分割的结果,要纠正漂移,就相对容易了。

现在要讨论离线训练的问题了。鉴于目前深度学习的训练过程相当复杂,需要大量计算资源才行,因此这个方案必须要得到足够的硬件支持。这个条件具备后,可以在挑选样本时,人为的将目标从图像中剪切出来,或者是利用自动分割的结果,将各种物体,送入到训练器。这些被训练的物体,包括路面、背景、车辆、阴影、行人等。然后让计算机自己学习,就像google对猫的学习一样,自己形成对各种车辆、行人的记忆。

在完成训练后,具体进行检测时,同样需要先对场景进行分割,然后对每一个分割区域进行识别。被跟踪的物体,可以结合上一帧的模型特征,以及位置和速度,进行检测。除了跟踪之外,还可以完成场景的分析,这对于后期的行为分析,也能提供大量有用信息。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值