APP下载

基于MPL—Boost算法的多姿态行人检测方法

2016-11-24张莉

电脑知识与技术 2016年26期

张莉

摘要:行人检测在轨道交通、汽车辅助驾驶、电子警察等领域有广泛的应用。本文针对复杂和实时跟踪处理的行人检测场景,提出了采用MPL-Boost(MultiplePoseLearning- Boosting),并且引进分段线性函数(Piece-wisefunction)作为MPL-Boost的弱分类器,提高分类器算法的分类性能的高效行人检测方法。针对行人检测数据集的实验结果表明,基于MPL特征和弱分类器的分类行人检测方法具有较好的性能。

关键词:行人检测; MPL-Boost; 分段线性函数;Boosting算法

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)26-0198-03

1 引言

近年来随着智能信息技术的发展,对于行人检测技术有更高的需求。比如:在轨道交通的视频监控系统中,利用视频行人检测可以实现客流分析、旅客异常行为分析等功能以方便运营和安保;在汽车辅助驾驶中,基于行人检测可以实时提醒驾驶员行进前方出现的行人,避免因为驾驶员视线被遮挡或者注意力分散导致的危险等;在基于视频的电子警察系统中,利用行人检测可以有效地避免因为行人的干扰导致的误抓拍,大大减少垃圾照片的数量[1][2]。

行人检测的方法主要分为两类:一类是首先基于背景建模或者帧差的方法提取出运动的前景区域,然后利用轮廓的几何参数对前景进行分类[3];另一类是基于统计学习的方法,首先提前人体的外观特征,然后利用分类器进行建模学习[4]。第一类方法的缺陷在于对人体的描述过于简单,而且要求摄像机固定不动。这样会导致当行人与其他运动物体发生遮挡时会导致漏报,当场景内的其他运动目标容易导致误报,以及当摄像机运动(辅助驾驶)或场景内关照干扰较多时(夜间车灯)系统完全失效。第二类方法相对于第一类方法的优势在于对人体的描述更加详细,并且基于数据驱动的方式进行统计学习得到的行人检测器具有更好的区分性,可以减少第一类方法所无法解决的误报和失效等问题。

在视频行人检测方面国内外虽然已有很多的研究成果,但目前尚未有一个通用、精确、高性能和实时多目标人体检测算法。人体检测的研究目前的难点主要在于:

1)人体的形状不确定,尤其是在运动时等会有各种姿态,观察的视角不同时,看到的人体形状也会不同,这些原因造成人体类内模式的不固定。

2)人身上的衣服的多样性,尤其在复杂的环境下,前景和背景的区分性不是很清晰。

3)遮挡情况,人体检测要处理的数据很多是有遮挡的,尤其是在人比较密集的环境下,遮挡的情况比较严重,这种遮挡会影响检测的性能。

4)光照变化,和其他视觉目标检测任务一样,不同环境下光照不一样,这种差异对人体的检测会起到很大影响。

在本文中将采用分类器MPL-Boost(MultiplePoseLearningBoosting),并且引进分段线性函数(Piece-wisefunction)作为MPL-Boost的弱分类器,提高分类器算法的分类性能。

2 基于多姿态学习的分类器

2.1多姿态学习问题

在人体检测任务当中,由于人体的形状不确定,尤其是在运动时等会有各种姿态,而且人在镜头的不同位置时,看到的人体形状也会不同。这些原因造成人体类内模式的不固定,类内的模式比较大,在基线系统中,人体检测部分并没有关注这个问题,而是直接采用一个AdaBoost分类器统一建模,将变化很大的人体看成是同一类,进行分离器的训练,这样会使得分类性能不高。对于这种类内的变化,一种解决方式是通过人工将训练样本分子类,姿态相近的分为一个类,针对每个类别去训练出一个相应的分类器,但是这种方式需要人工划分样本,费时费力。

在本文中采用改进的AdaBoost分类器MPL-Boost,能够在训练的时候同时训练出多个强分类器,用这种多个分类器同时建模的方式来刻画类内的变化,而且在训练之前不需要对样本分子类别。

2.2梯度下降Boosting算法

基于梯度下降的Boosting算法,该算法是由Friedman[1]提出,能够引入更多形式的损失函数来推广Boosting算法。主要思想是在训练的时候利用梯度下降来优化定义的损失函数,从而在每一轮训练时能够挑选出最优的弱分类器,使得在训练集上的损失代价最小。

在机器学习中二分类监督学习的一般过程,给定n个训练样本和对应的标记,我们的目标是学习一个分类函数,使得该函数不仅在训练数据上有好的分类准确性,且对训练数据集外的数据具有好的推广性。Boosting是一种很成功的两分类的机器学习算法,在Boosting中,我们的目标通常是训练如下形式的分类器: