本项目利用MATLAB实现匹配滤波技术进行行人追踪,并采用Mask-RCNN算法对追踪效果进行全面评估。
在使用MATLAB进行行人检测的方法1中,我应用了示例代码并得到了结果。该算法的工作原理如下:首先通过高斯混合模型的背景减除方法来识别运动对象;然后对得到的前景掩码执行形态学运算以消除噪声;最后利用斑点分析技术找到可能与移动物体对应的连通像素群。
对于每个检测到的目标,其关联性仅基于它们的运动特性。卡尔曼滤波器用于预测目标在每一帧中的位置,并确定将各检测结果分配给特定轨道的概率。该方法的一个关键部分是维护这些跟踪轨迹,在任何一帧中可能有某些检测被分配到了某个已有路径上,而其他则未被匹配。
对于那些没有与现有轨道成功关联的检测结果,则会启动新的追踪路线;同样地,如果一个已有的路径在一段时间内未能接收到新数据(即连续几帧里都找不到相应的运动目标),那么该路径会被标记为“不可见”。当这样的情况持续超过一定阈值时,系统将假定这个物体已经离开了视野范围,并删除对应的跟踪信息。
这种方法总体上表现良好,尤其是在行人之间距离较远的情况下。然而,在这种算法中由于使用了连接组件标签来追踪目标位置,因此在人与人之间的间距较小的时候容易产生误判现象——即近距离的行人们可能会被错误地标记为单一对象。这使得该方法不太适合拥挤环境下的行人跟踪应用。