-
道路交通事故已是全球共性问题。建立完善的交通设施,设置合理的交通标线可以减少交通事故,提高道路交通行车安全。人行横道线作为与行人的人身安全息息相关的交通标线,其数字化监管和入库工作十分重要。由于人行横道线数量庞大,因此数字化监管工作需要自动识别技术的辅助。
对于横道线的识别,国内外现有的研究依据数据类型的不同主要分为地面影像人行横道区域识别研究和高分辨率低空影像人行横道线识别研究。基于地面影像的人行横道线识别技术,其主要应用方向是辅助盲人通过人行横道线、辅助驾驶等。Sichelschmidt等[1]利用神经网络模型进行人行横道线识别的研究,该算法对于不同的场景有着较好的鲁棒性,其输入参数为全面精确的相机参数和人行横道线宽度值。Boudet等[2]等将多个交通监控视频数据融合,通过长时间观测行人的轨迹数据统计出人行横道线所在位置。然而该方法的缺点在于检测范围受到监控视频布设区域、视角大小与行人活动规律限制。
对于大范围的目标区域,低空影像人行横道线识别方法更占优势。例如针对大面积城镇中的人行横道线管控、道路网提取等应用,如果利用地面影像人行横道线识别方法,就需要利用移动测图系统(mobile mapping system, MMS)对整片区域的每一条道路进行数据采集。这样不仅工作量大,计算耗时较长,而且由于城镇高楼对GPS精度的不利影响,会出现定位不精确的问题。相对而言,低空影像更有利于高效、自动、准确地制作大区域的人行横道线分布图。目前对于低空影像人行横道线识别研究的主要应用方向是道路网提取以及辅助构建智能交通网络。Herumurti等[3]的研究是从高分辨率航空影像中识别人行横道线,并利用识别结果进行道路网提取。研究通过圆形模板和速成鲁棒特征(speeded-up robust features, SURF)算法来检测和评定人行横道线的位置,该算法缺点在于运算时间较长。Ishino等[4]描述了一种将数字地图和低空影像融合的方法来识别人行横道线的方法,并指出自动识别人行横道线等道路交通标线有利于智能交通网络的构建。该文通过影像融合首先确定道路区域,然后采用二进制分类的方法来进行交通标线识别。该方法的缺点在于需要设定二进制分类阈值。对于不同的影像,不存在通用阈值,最佳阈值需要通过多项对比实验确定,且必须有数字地图辅助,故在应用上不方便。
针对各算法的不足,本文根据美国Overwatch Systems公司的feature analyst软件分层学习的思路,提出了一种基于错误式学习的人行横道线分类器。该分类器能够明显降低识别的误检率,提高分类性能。在初始检测的基础上,对多视角影像识别结果进行融合,以减少建筑物遮挡的影响,从而降低漏检率。该方法能够快速自动的从低空影像中检测出人行横道区域,且对于不同传感器在不同环境下拍摄的人行横道线都具有良好的鲁棒性,对于快速建立人行横道线数据库有着一定的实用价值。
HTML
-
本文选用基于特征的识别方法进行低空影像人行横道线的识别。根据人行横道边缘特征明显、形状规律的外形特点,选择了Lienhart等[5]提出的Haar-like特征模板来进行低空影像人行横道正样本的描述。
基于Haar-like特征的级联分类器,参见文献[6, 7],本文仅涉及与分类器错误式学习有关的内容。
当负样本的多样性、代表性和质量都不高时,系统利用初始随机选择的几个特征就能够轻易地区分当前正负样本,从而结束该轮学习。该分类器在训练过程中缺少了高质量负样本数据的检验,误识别率会因为学习过程得不到深入而升高。由于人类和机器识别物体的方式和手段都不相同,人为很难推测出怎样的负样本才能更好的满足机器学习的需要。为了解决该问题,本文运用基于错误式学习的分类器训练方法。
-
基于错误式学习的分类器训练方法的思路是,首先降低训练条件,快速训练出一个初始的分类器,并利用该分类器对影像进行识别,得到初始识别结果;然后半自动地搜索初始识别结果中被错误分类的影像区域。将这些被错分类的区域加入样本集中,迭代重复训练。
为了快速、高效地区分初始识别结果的正误,本文借助局部二值模式(local binary pattern, LBP)和方向梯度直方图(histogram of oriented gradient, HOG)特征分类器对Haar-like分类器的初始识别结果进行半自动筛选,将错误分类的影响区域加入样本集中,进行迭代训练, 如图 1所示。
步骤1 初始准备。人工裁剪正负样本进行分类器训练,训练得到初始的Haar-like分类器,LBP分类器和HOG分类器。
步骤2 联合检测。利用Haar-like、LBP和HOG共3个分类器分别对同一幅来自训练组的低空影像进行人行横道线识别,识别时设置3个分类器的重复检测次数均为0,Haar-like、LBP、HOG分类器得到的检测结果集合分别为S1、S2、S3。重复检测次数是指由于检测过程中会对影像进行缩放,以检测不同大小的目标。因此将影像尺度改变过程中同一区域被检测为目标的次数作为重复检测次数。当其设置为0时,表示某一区域在缩放过程中只被检测出1次。
步骤3 确定误检区。低空影像的某一区域如果同时被S1、S2和S3中两个或以上的集合包含,则认为该区域是人行横道线区域,即正样本区,其余区域均列为疑似误检区域集合SWa。
步骤4精化误检区(可选)。对步骤3得到的疑似误检结果进行目视判读,将SWa中带有目标人行横道线的区域均列入集合ST,而其余非目标区域列入集合SW,使得集合SW中的所有样本区域均满足负样本条件。该步骤可根据训练实际情况进行执行或跳过。当3个分类器均由数量充足且相同的样本训练而成,且检测的对象是训练组影像时,如果粗略观测发现经过步骤3处理后,正样目标被列入疑似误检区域集合SWa的结果非常少,则在前几次迭代过程中可不做人工判读,若发现前后两次迭代的误检率W下降不明显时,再对误检区进行判读。
步骤5 扩充正负样本迭代训练。将经过步骤3、步骤4筛选出的非目标区域SW(如果未做步骤4则此处应为集合SWa)加入负样本集中,经过步骤4目视判断为横道线的区域ST可加入正样本集中,以提高正样本质量。利用扩充后的正负样本,重新训练Haar-like分类器、LBP分类器和HOG分类器,然后对训练组的同一张低空影像重复步骤2~步骤5,直到连续两次迭代结果中,误检率W下降不明显,即可进行步骤6。
步骤6 迭代训练结束。利用训练组中新的低空影像重复步骤2~步骤5,直到误检率W低于设定的结束条件阈值T,迭代训练结束。
经过以上处理,即可在迭代过程中逐步减低误检概率,最终得到识别准确率高、误检率低的分类器。
1.1. 错误式学习目的
1.2. 基于错误式学习的分类器训练方法
-
城镇中高楼大厦密集,道路上的车辆众多,受这些地物遮挡影响,人行横道线自动识别的漏检概率大幅提高。为了尽可能地减少遮挡的不利影响,本文提出了对多角度识别结果进行合并以降低识别漏检率的方法。
如图 2所示,编号为1、2、6的人行横道受到楼房和车辆的遮挡,在图 2(a)中被漏检了,但是在同一地区不同角度的影像图 2(b)中可被正确检测出。为了降低漏检率,本文将同一地区不同角度的低空影像的识别结果进行合并。识别结果合并方法为:根据该地区所有影像的空三结果(空三结果由数字摄影测量网格系统[8](Digital Photogrammetry Grid,DPGrid)的无人机影像处理模块[9]计算得到),计算出全部横道线的空间坐标。利用横道线地理信息,将它们合并到同一坐标系下,从而得到该地区的人行横道线分布图。该方法虽然能够部分排除地物遮挡的不利影响,但是不可避免地会使误识别结果累加,如图 2(b)中编号为3、4、5的误检区域就会通过合并操作被引入人行横道线分布图中。
大部分楼面或者屋顶的误识别区域可以通过计算它们与地面的高程差异排除。然而对于处在地面上的误识别区域的排除有待进一步研究。对于位于地面上的误识别区域,本文仅提出了一种简单的后期处理方法,依据该地区已知的道路网分布图,将其与人行横道线分布图套合,如图 3所示,带红色数字的区域不与道路网重叠,这些区域即为误识别区域。
这种后期处理方法有两点弊端:1)若该地区的道路网分布图不精确、或者未及时更新,那么会造成误剔除现象;2)若道路网图的绝对坐标未知或者低空影像的控制点坐标未知,就必须人工对两幅图进行套合。
-
本文应用422张正样本及1 173张负样本作为初始数据,经过3次迭代训练后误检率达到设定阈值T为12%,训练自动结束。整个过程中没有进行人工目视判读,最终负样本数目达到4 945个。该目标识别算法是借用OpenCV[7]的人工智能库利用Visual C++编程实现。实验平台电脑CPU型号为Inter Core2 Quad 2.33 GHz,内存2 G,操作系统是Windows 7。当给训练器分配1 024 MB内存时,迭代训练过程约耗时28 h。训练过程虽然耗时,但训练工作是一次性的。分类器训练好后,在上述实验平台上的识别速度依据每张影像的大小(约6 048×4 032像素)和所含目标数目的多少而不同,一般情况耗时5 s~15 s不等。基于错误式学习的分类器和普通分类器对同一张影像的识别速度无差别。
-
为了测试基于Haar-like特征的分类器的鲁棒性,本文以无人机为数据获取平台,选择了不同相机在不同时间、不同高度、不同地点拍摄的3张影像进行了对比实验。实验中严格分隔了训练组和实验组的数据。
图 4是鲁棒性测试实验中较有代表性的3张实验组数据。数据的相机参数以及影像参数如表 1所示,由于实验目的是鲁棒性验证,所以未对第2组数据受到大气质量不利影响的影像做增强处理,从而保持影像质量的多样性,增加实验复杂度。
组别 拍摄地 相机型号 拍摄时间 焦距/mm ISO 影像质量 影像大小/像素 1 台湾 未知 2013-10 未知 未知 清晰 6 048×4 032 2 苏州 RICOH GXR 2013-03 18 200 轻微雾霾 4 288×2 848 3 未知 5D Mark 2 未知 24 400 清晰 5 616×3 744 Table 1. Parameters of Cameras and Images
图 4是利用基于错误式学习的分类器对上述3张实验组数据进行识别的结果,深蓝色的矩形是分类器识别出的低空影像人行横道线区域。
鲁棒性实验证实了地域的差异对识别正确率的影响并不明显。对于拍摄时间、地点、高度、影像质量、拍摄相机完全不同的异源影像也能进行相同地物的检测。对第2组存在质量问题的影像做了增强。对增强前后的结果对比后发现,影像增强后识别效果会改善,但并不显著。这一结果说明了该算法对影像质量并不敏感,从而进一步验证了鲁棒性。
-
为了清晰地看出识别效果,图 5是截取后放大的基于错误式学习的分类器对各类型路口布设的人行横道线的识别结果。可以看出,即使存在人行横道掉漆、阴影遮挡、人行横道线的长度和角度差异的情况,基于错误式学习的分类器也能有效地识别出低空影像中的各类人行横道线。
如图 6所示,基于错误式学习的分类器依然会受到大楼侧面、停车场网状线、条形房顶的纹理等这类和人行横道线纹理的相似程度非常高的地物的影响。基于错误式学习的分类器无法完全避免误识别,但能够显著减少误检率,其通常能将误检率从60%左右降低到10%以下。据本文§2将人行横道线分布图和该地区已知的道路网分布图套合的后期处理方法,也可以剔除这些位于非道路上的误识别区域。
-
图 7为在训练参数设置相同的情况下,错误式学习的分类器与未经过错误式学习的分类器对同张影像的识别结果图的局部截图。
可以直观地看出普通分类器的识别结果存在大量的误识别区域。为了更加客观地评价分类器的性能指标,本文利用识别准确率、漏检率和误检率3个指标来进行评估,3个指标的计算式为:
式中,A为识别准确率;M为漏检率;W为误检率;NSum指识别结果的总数;NWrong是错误识别的个数;NMiss是漏检的个数。
本文从实验组中随机选取了10张中国台湾省低空影像,通过对比实验分析基于错误式学习的分类器与一般分类器相比在性能上的差异。依据实验结果,针对两类分类器分别做出3项性能的对比图,如图 8所示。图 8中红色线代表未经过错误式学习的分类器的结果,蓝色线代表经过错误式学习的分类器的识别结果。
Figure 8. Contrast in Quality of Detecting Between Hierarchical Learning Classifier and General Classifier
从图 8可以清晰地看出,错误式学习分类器的性能不论是在漏检率、误检率还是准确率方面都高于普通的未经过错误式学习的分类器,且在降低误检率方面有着明显优势。如统计图 8(c),在相同条件下,错误式学习分类器能将误检率从60%左右降低到10%以下,且效果稳定。
-
为了评价本文提出的算法的性能,从识别漏检率、准确率、误检率、耗时几个方面,将本文的方法与Herumurti等[3]提出算法以及Sichelschmidt等[1]提出识别方法进行了对比。低空影像实验数据是中国武汉市光谷地区的10张存在重叠度的低空影像,地面影像识别算法所用数据是利用移动测图系统拍摄的该地区的4 300张地面影像。低空影像大小为8 162×5 986像素,地面影像大小为1 600×1 200像素。横道线识别结果的正误通过人工目视判读。表 2是这3种方法识别结果。
从表 2中可以看出,基于地面影像的识别方法虽然有较好的识别准确率以及较低的漏检率和误检率,但是由于目标区域地域面积大,致使数据量巨大,这导致了计算耗时大为增加。针对低空影像的圆形模版SURF算法,其识别耗时是本文方法的一倍多,准确率也没有本文提出的方法高。不过该方法在降低识别误检率方面有着较好的效果,但是这种保证低误检率的策略间接导致了该算法的漏检率大幅度上升。未迭代分类器在训练耗时上明显少于基于错误式学习的迭代分类器,在识别耗时上和迭代分类器无区别。但是,该方法误检率过高,无法实际使用。本文提出的基于错误式学习的分类器方法则在漏检率、误检率、准确率和识别耗时上都有着较好的表现。该算法对于分类器的训练是一次性的,即一旦训练出了基于错误式学习的分类器,无需重复该工作即可直接利用训练好的分类器对低空影像进行自动目标识别。
算法 影像类别 M/% W/% A /% 训练耗时/h 识别耗时/min 神经网络模型 地面 2.652 14.952 93.746 - 358 圆形模板+SURF算法 低空 42.264 6.235 83.211 - 17 普通未迭代分类器 低空 15.746 69.778 85.450 约6 8 本文方法
(错误式学习分类器)低空 4.098 10.828 90.302 约28 8 Table 2. The Contrast in the Quality of Detection of the Three Algorithm
3.1. 算法鲁棒性实验
3.2. 错误式学习分类器识别结果
3.3. 错误式学习前后识别效果对比
3.4. 不同算法间对比实验
-
本文提出一种基于错误式学习的分类器低空影像人行横道自动识别方法,该方法能够处理传统航拍及无人机获取的低空影像,利用错误式学习理论训练出用于识别低空影像人行横道线的分类器;并对多角度影像的初始识别结果进行融合,从而排除城区地物遮挡人行横道线的影响。通过对比实验证实了本文方法有着较好的综合性能,在不降低识别耗时的前提下,具备高准确率、低漏检率和低误识别率的特点。
进一步的研究是将MMS数据中检测出的人行横道线和低空检测结果通过空地数据集成手段[10]进行集成,这样不仅可以获得更精确、全面的检测结果,进一步降低误检率和漏检率;还可利用近景影像细节丰富的优势,对人行横道线的污损状态进行监测,从而提供便捷的交通设施监管、分析手段,提高交通安全性。