光学学报, 2018, 38 (10): 1015003, 网络出版: 2019-05-09   

基于自适应分块编码SVM的车道导向箭头多分类方法 下载: 903次

Multi Classification Method of Lane Arrow Markings Based on Support Vector Machines with Adaptive Partitioning Coding
作者单位
长春理工大学 光电工程学院光电测控与光信息传输技术教育部重点实验室, 吉林 长春 130022
摘要
针对在道路导向箭头的检测和识别中支持向量机(SVM)多分类器的识别效率下降的问题,提出一种利用简单二分类SVM通过对结果的自定义二进制编码实现导向箭头多分类的方法。对导向箭头感兴趣区域(ROI)图像进行Harris角点粗检测,利用改进FAST-9(Features from accelerated segment test-9)算法对伪角点进行筛选,根据最终获取的角点集合中纵坐标最大的两个角点位置分割图像获得待识别区域;再利用几何不变矩特征训练SVM分类器;对分类结果进行二进制编码,从而实现单一种类SVM下多种导向箭头的分类。算法在实拍获取的500帧图像中进行测试,识别率优于96.8%。结果表明:所提算法不需逆透视变换,利用一种SVM二分类器即可实现导向箭头的识别,有效提高了导向箭头识别的准确率和运行效率。
Abstract
Aim

ing at the problem of decreasing the recognition efficiency of multi-class Support Vector Machines (SVM) in the detection and classification of lane arrow markings, an improved method for a simple SVM classifier which is applied to realize the multi classification of arrow markings by custom binary encoding for results is proposed. The Harris corner coarseness is detected for the arrow markings region of interest (ROI), and the pseudo corners are screened by improved FAST-9 (features from accelerated segment test-9) algorithm. According to the location of the largest two corners of the ordinate in the final corner set, the recognition area is obtained. The SVM classifier is trained by invariant moments. And the multi classification with one SVM classifier is realized via the binary encoding for results. The algorithm is tested on 500 real images obtained from the real shot, and the recognition rate is superior to 96.8%. The results show that the proposed method does not need inverse perspective transformation. A simple SVM classifier can realize the multi classification of arrow markings, and the accuracy and operation efficiency of arrow marking recognition can be improved effectively.

1 引言

城市道路中发生交通事故的主因之一是不能及时准确地判断所在车道的信息。当前,对于智能驾驶辅助系统的路况识别功能的研究主要致力于车道线识别及车道偏离预警系统,而对于车道信息做出及时准确的判断,能够有效辅助驾驶员安全驾驶,降低事故发生率。

导向箭头位于每一条车道的中央,指示车辆行进方向,而对于导向箭头识别研究主要集中在基于机器视觉的方法上。He等[1]将导向箭头轮廓上每一个角点所在位置及其夹角作为特征并对其进行编码,不同导向箭头的角点都具有不同的位置和夹角,根据不同编码对导向箭头分类; Maier等[2]利用提取到的导向箭头的轮廓特征,通过模板匹配的方法实现分类; Suchitra等[3]利用霍夫变换检测导向箭头的直线部分,通过计算导向箭头每个部分在霍夫空间的投票数完成识别。上述方法都是通过计算导向箭头的特征,与目标匹配实现分类,计算量大且需要利用逆透视变换将采集图像校正为俯视图,否则导向箭头的视觉差异会产生特征提取误差。随着机器学习在视觉领域的飞速发展,基于机器学习训练分类器分类导向箭头得到了广泛应用。通过提取描述箭头特征的信息构成特征向量,训练分类器实现识别,Wang等[4]将每两类样本间的欧氏距离作为特征训练了一个共3层的层次支持向量机(SVM)分类器;Li等[5]通过提取导向箭头的形状特征,采用贝叶斯分类器进行识别。由于特有的核函数很好地解决了非线性问题,SVM是当前机器学习领域应用最广泛的分类器之一,但由于其本身是一个由超平面划分的二分类器,因此对于多类导向箭头的分类,则需要构建多分类器以完成识别。传统的SVM多分类方式,通常使用一对多结构的OVR-SVMs与一对一结构的OVO-SVMs[6-7],但是存在欠拟合与计算代价较大的问题。Platt等[8]提出了决策导向的循环图(DDAG),将多个二分类器组合成多类分类器,利用多个SVM二分类器即构成了DAGSVMs;H-SVMs即层次分类器,将所有类别分成两个子类,再将子类进一步划分成两个次级子类[9]。可见,针对多类导向箭头的分类,大多方法都需要提取不同类别导向箭头的特征,构建多个分类器,增加了计算代价,分类器多次进行分类返回结果,降低了识别准确率。

针对上述问题,提出一种基于SVM的二进制编码多种导向箭头标识的分类方法。在对导向箭头进行Harris角点粗检测后,对检测结果采用FAST-9(Features from accelerated segment test-9)算法精检测,并利用筛选具有最大纵坐标的两个角点位置对导向箭头图像进行分割,分割后的箭头区域不受视觉差异影响;分类过程采用了基于二进制编码的SVM二分类器,分类过程中只需一种SVM分类器即可完成,显著提高了算法的效率和精度。

2 基于FAST-9改进Harris角点检测子的待识别区域分割

角点定义为在水平竖直方向上像素变化都较大的点,而导向箭头与道路背景有明显的像素差异,因此,采用角点检测的方式,利用检测结果对导向箭头图像分割提取检测区域[10],以便于进一步处理,如图1所示。

图 1. 原始图像

Fig. 1. Original image

下载图片 查看所有图片

为了剔除道路上的背景干扰,提取出只含有导向箭头的感兴趣区域(ROI),再进行角点检测及分割。其算法流程如图2所示。

图 2. 识别区域分割流程图

Fig. 2. ow chart of segmentation recognition area

下载图片 查看所有图片

2.1 导向箭头ROI提取

首先进行ROI提取减少了Harris角点检测的搜索空间,减小计算量。我国的道路建设规定导向箭头位于一条车道的中央,因此采用文献[ 4]中的方法进行ROI提取。对车头前方高300 pixel内的区域进行车道线识别,将识别到的左右两条车道线分别向内偏移100 pixel,构成一个含有完成导向箭头的梯形图像,如图3所示。

图 3. 导向箭头ROI图像

Fig. 3. ROI of arrow marking

下载图片 查看所有图片

2.2 Harris角点粗检测

采用Harris角点检测算法进行导向箭头的角点粗检测。计算ROI图像在XY两个方向的梯度IxIy及其乘积 Ix2Iy2Ixy,即矩阵M的4个元素。利用高斯函数对M进行高斯加权,Harris角点通过计算该矩阵的特征值获得一个角点响应值以判断角点。对于一幅图像I(x,y),如果在局部区域内水平和竖直方向上的梯度IxIy都较大,那么就认为在区域内存在角点;如果IxIy都较小,认为区域内就不存在角点;如果IxIy其中一个较大,那么认为区域内存在边缘。高斯加权后的新矩阵为

N=A=g(Ix2)B=g(Ixy)B=g(Ixy)C=g(Iy2)(1)

由(1)式得响应值:

K=detN-α(trN)2,α=0.04~0.06,(2)

式中det N=λ1λ2=AC-B2,tr N=λ12=A+C,其中λ1λ2为矩阵N的特征值。对ROI进行响应值计算,得到一个包含每个像素角点响应值的浮点型矩阵,若矩阵元素值大于阈值,则认为该点为Harris检测出的角点。3种不同导向箭头检测结果如图4所示。

图 4. Harris角点检测结果

Fig. 4. Results of Harris corner detection

下载图片 查看所有图片

由于道路污损及ROI自身畸变,检测结果产生了较多误检点,直接导致了图像的错误分割。因此,需要进一步处理来剔除掉虚假角点。

2.3 FAST-9算法精检测

采用基于二值图像的FAST-9算法对粗检测获得的角点进行筛选。原始FAST算法使用半径为R的Bresenham圆周上的8+4(R-1)+8(R/8)个像素点判定其圆心像素O是否为角点(结算过程中结果均取整数)。按顺时针方向对圆周上像素点进行编号。如果在圆周上有K个连续像素的像素值与圆心像素值的差值大于阈值,则称圆心像素为角点。FAST算法直接对图像灰度值进行操作,其方法简单、无需梯度运算。基于经验取R=9,圆周上的像素点数为48。由于期望角点处于导向箭头的外轮廓上,如三角形的3个锐角和矩形的4个直角,因此,为了准确获得期望点,K值取圆周像素点总数的3/4,如图5所示。

图 5. FAST-9算法原理

Fig. 5. Principle of FAST-9 algorithm

下载图片 查看所有图片

图6为采用原始FAST-9算法直接对导向箭头ROI进行检测获得的结果。

图 6. 原始FAST-9算法的检测结果

Fig. 6. Detection results of original FAST-9 algorithm

下载图片 查看所有图片

可以看出,在导向箭头图像中,由于灰度图像各像素间差异较小,利用阈值判断角点准确率不够,因此检测出较多的误检点,同时存在较多的漏检点。在图像中,非角点往往是占多数,利用FAST算法对整幅图像遍历降低了算法效率。因此,针对误检、漏检以及运行效率低的问题,改进算法的具体步骤如下:

1) 将Harris角点检测的所有结果构成点集O,作为精检测对象以进行进一步计算。

2) 对ROI二值化处理,在二值图像中对点集O中每一个(xo,yo)进行检测,判断过程如下式所示,其中K++和N++表示KN的值分别自加1,该方法避免了原始FAST算法中的阈值选择。

f(xo,yo)f(xi,yi),K++f(xo,yo)=f(xi,yi),N++,(3)

式中i=1,2,3,…,48。

3) 若N>12,则退出计算并返回2);若K≥36,则认为该点是角点,输出该点并返回2)。

4) 当遍历点集O中的所有角点后,结束筛选。

采用改进后的FAST-9算法进行精检测的过程及结果如图7所示,筛选后剔除了全部伪角点,保留了期望角点。

图 7. 改进FAST-9算法精检测过程及结果。(a) 精检测过程;(b) 精检测结果

Fig. 7. Precision detection process and results with improved FAST-9 algorithm. (a) Process of precision detection; (b) results of precision detection

下载图片 查看所有图片

2.4 待识别区域分割

导向箭头可能指向左、右、上三个方向,因此,需要将ROI分割为左、中、右三个部分,以保证完全保留箭头部分,便于进一步识别。对于任意方向的导向箭头,都可以看作“树干”向三个方向生长的“分支”,因此,以“树干”为基准,对图像进行分割。

无论哪一类导向箭头,具有最大纵坐标的两个角点一定位于“树干”的左、右下角,左、右两个角点的横坐标分别向左、右偏移M pixel(本文取经验值60),以偏移后的横坐标值为基准,将图像分割为A、B、C三个区域。由于B区域内向上方向的箭头一定处于图像的上半部分,为减少计算量,将左、右下角的角点纵坐标向上偏移N pixel(本文取经验值70)分割B区域并取其上半部分,分割后的识别区域如图8所示。

图 8. 箭头识别区域。(a) 直行/左转箭头;(b) 直行;(c) 右转

Fig. 8. Arrow marking recognition areas. (a) Straight or left; (b) straight; (c) right

下载图片 查看所有图片

3 基于二进制编码SVM的导向箭头识别

导向箭头共分5类:直行、左转、右转、直行左转和直行右转。采用SVM对导向箭头进行分类。传统多分类思想都需要构建多个SVM二分类器,经过多次决策最终产生结果,计算代价高、准确率不够。因此,设计一种基于二进制编码的SVM多分类方法,采用单个二分类器对分割后的识别区域进行识别。

3.1 几何不变矩特征

图像中计算出来的矩通常描述了图像不同种类的几何特征,如大小、灰度、方向、形状等,图像矩广泛应用于模式识别、目标分类、目标识别与防伪估计、图像编码与重构等领域。图像f(x,y)的(p+q)阶空间矩和中心矩分别为

mpq=xpyqf(x,y)dxdy,(4)μpq=(x-x¯)p(y-y¯)qf(x,y)d(x-x¯)d(y-y¯),(5)

式中 x¯=m10m00, y¯=m01m00

由于识别区域的导向箭头具有不同的方向和大小,而直接使用空间矩或中心矩作为特征不能同时具有平移、旋转和缩放不变性,因此选择由二阶和三阶归一化中心矩构造的7个几何不变矩作为导向箭头的候选特征向量[7]。几何不变矩在连续图像下可以保持平移、旋转和缩放不变。

归一化中心矩为

ηpq=μpqμ00γ,(6)

式中γ= p+q2+1,pq取值为2,3,4,…。

由(6)式得到了7个几何不变矩,如下式所示,作为导向箭头的候选特征向量。

φ1=η20+η02φ2=(η20-η02)2+4η112φ3=(η30-3η12)2+(3η21-η03)2φ4=(η30+η12)2+(η21+η03)2φ5=(η30-3η12)(η30+η12)[(η30+η12)2-3(η21+η03)2]+(3η21-η03)(η21+η03)[3(η30+η12)2-(η21+η03)2]φ6=(η20-η02)[(η30+η12)2-(η21+η03)2]+4η11(η30+η12)(η21+η03)φ7=(3η21-η03)(η30+η12)[(η30+η12)2-3(η21+η03)2]+(3η12-η03)(η21+η03)[3(η30+η12)2-(η21+η03)2]7

3.2 SVM分类器设计

图8所示,在分割后不包含箭头的识别区域中,只有左转和右转导向箭头的B区域中包含导向箭头的部分轮廓,即左、右转箭头的拐角部分,其余不包含箭头轮廓的识别区域将得到全为0的特征向量。因此,采集任意方向的500幅箭头图像作为训练正样本,其不包含箭头的剩余部分图像(左、右转箭头拐角部分)作为训练负样本。部分正负样本如图9所示。

图 9. 部分正负样本图像。(a) 正样本;(b) 负样本

Fig. 9. Partial positive and negative sample images. (a) Positive samples; (b) negative samples

下载图片 查看所有图片

对正负样本求几何不变矩,其中样本前三阶不变矩的概率分布直方图如图10所示,其中红色代表正样本不变矩概率分布,蓝色代表负样本不变矩概率分布。

图 10. 正负样本前三阶不变矩概率分布。(a) 一阶;(b) 二阶;(c) 三阶

Fig. 10. Probability distributions of the first three steps moments of positive and negative samples. (a) First order; (b) second order; (c) third order

下载图片 查看所有图片

图10可知,当几何不变矩达到三阶时,正负样本的不变矩数据十分接近,出现了较大重合,而前两阶负样本不变矩普遍大于正样本不变矩,此时不能显著体现箭头特征的几何不变矩反而会导致训练结果的过拟合,且高阶矩的值更小,并与前二阶矩尺度相差较大,优化目标函数过程中,梯度下降算法收敛速度慢,也影响了效率。因此,只从候选特征向量中选择前两阶几何不变矩作为训练特征,二维特征向量在坐标系下的分布如图11所示,其中红色点代表正样本特征,蓝色点代表负样本特征。

图 11. 特征向量分布图

Fig. 11. Feature vector distribution

下载图片 查看所有图片

选择径向基函数 (RBF)核函数对样本分类,得到一个分类箭头图像的二分类器,以图8(c)为例,对于分割得到的A、B、C三个识别区域使用该分类器进行分类,当判断结果为正则输出为1,否则输出为0,最终获得二进制编码001。该分类方法的原理如图12所示。

图 12. SVM多分类方法原理图

Fig. 12. Illustrative diagram of SVM multi classification method

下载图片 查看所有图片

得到5种不同导向箭头的二进制编码如表1所示,根据编码查表获取最终的分类结果。

表 1. 导向箭头二进制编码表

Table 1. Binary encoding table of arrow markings

Types of arrow markingsLeftStraight/LeftStraightStraight/RightRight
Part A11000
Part B01110
Part C00011
Binary coding100110010011001

查看所有表

4 实验结果与分析

本文算法的实现基于Visual Studio 2015编译环境,实验测试平台为台式电脑,操作系统为Windows 10 64bits,CPU 主频为3.20 GHz,8 GB内存,2 GB 显存。采集设备帧频为25 frame/s,图像分辨率为1920 pixel×1080 pixel。实验分别测试了导向箭头算法的识别率、运行速度与算法计算量。

从采集得到的城市道路视频中,随机抽取出500帧图像,提取出只含有导向箭头的梯形ROI,采用改进的角点检测算法对ROI进行角点精检测,获得分割后的1500个识别区域,分别提取其前两阶几何不变矩,采用自定义二进制编码的简单SVM多分类方法进行分类,以帧数为单位进行统计,从误检率方面对算法的识别准确率进行定量评价。误检率F的定义为

F=PFPPTP+PFP,(8)

式中PTP为导向箭头被正确识别的图像帧数,PFP为非箭头部分被误判成导向箭头的图像帧数。对5类导向箭头的识别率如表2所示。

表 2. 导向箭头分类准确率

Table 2. Classification accuracy for arrow markings

Types of arrow markingsLeftStraight/leftStraightStraight/rightRight
Total frames871159412876
Success frames841099212475
False rate /%3.45.22.13.11.3
Accuracy rate /%96.694.897.996.998.7

查看所有表

选取了文献[ 2]、文献[ 4]和文献[ 5]算法与本文算法在导向箭头的整体识别准确率和识别速率上进行对比,通过记录各算法运行时集成开发环境诊断工具中的进程内存峰值对算法计算量进行评估。为保证实验的公平性,实验环境和测试图像均保持一致,总体算法的准确率和识别速率对比如表3所示。

表 3. 算法评估结果

Table 3. Results of algorithm evaluation

MethodTotal framesSuccess framesFalse rate /%Accuracy rate /%Recognition rate /msProcess memory /MB
Ref. [2] method50043912.287.8119597.6
Ref. [4] method5004676.693.463368.3
Ref. [5] method5004784.495.6732112.5
Proposed method5004843.296.842849.7

查看所有表

表3可以看出,本文算法对于导向箭头的识别准确率更高。文献[ 2]算法采用了特征点匹配的方式进行导向箭头的检测,但特征点匹配对箭头的大小方向要求较高,因此,识别率和运行速度相对一般,计算量也相对较大;文献[ 4]算法采用了三层的层次SVM对导向箭头进行识别,每幅待测图像需要经过3个分类器的判断,代价较大,若其中某一层的识别结果不准确,会导致最终的识别错误,多个分类器的加载也占用了部分内存;文献[ 5]算法根据导向箭头的形状特征进行识别,准确率较高,但需要在识别前进行逆透视变换处理,将采集到的图像映射为俯视图,对图像每个像素操作增加了计算量,影响了识别速度。而本文算法无需进行逆透视变换,实现基于角点位置的自动分割,获取识别区域,在识别过程中采用一种SVM二分类器完成导向箭头的识别,由于识别只需在采集到下一个导向箭头之前完成即可,因此算法运行速度满足实际需求。经过分析,本文算法的漏检和误检主要来源于车辆变道时相机采集导向箭头的方向变化,导致基于角点位置的区域分割产生误差。

5 结论

对获取到的导向箭头图像分两步进行角点检测,利用FAST-9算法对粗检测的角点结果进行筛选,基于筛选获取的角点的位置对图像进行分割获取识别区域;采用一种简单二分类SVM,通过对结果的自定义二进制编码实现多种导向箭头的分类。算法不需要对采集到的图像进行逆透视变换,只需一种SVM分类器即可实现5种导向箭头的识别。经测试,算法的识别精度优于96.8%,有效提升了导向箭头识别效率。

在本文算法中,特征向量采用7个几何不变矩,虽然体现了箭头的形状特性且具有平移、旋转和缩放不变性,但是对于箭头特征的描述仍然不够完善,可能产生误检。因此,在接下来的研究中需要进一步完善特征向量,如坐标差值体现出的对称信息,优化分类器对于导向箭头的识别能力。

参考文献

[1] He YH, ChenS, Pan YF, et al. Using edit distance and junction feature to detect and recognize arrow road marking[C]∥Proceedings of IEEE International Conference on Intelligent Transportation Systems, 2014: 2317- 2323.

[2] MaierG, PangerlS, SchindlerA. Real-time detection and classification of arrow markings using curve-based prototype fitting[C]∥Proceedings of IEEE International Conference on Intelligent Vehicles Symposium, 2011: 442- 447.

[3] SuchitraS, Satzoda RK, SrikanthanT. Detection & classification of arrow markings on roads using signed edge signatures[C]∥Proceedings of IEEE International Conference on Intelligent Vehicles Symposium, 2012: 796- 801.

[4] WangN, LiuW, ZhangC, et al. The detection and recognition of arrow markings recognition based on monocular vision[C]∥Chinese Control and Decision Conference, 2009: 4380- 4386.

[5] LiY, HeK, JiaP. Road markers recognition based on shape information[C]∥Proceedings of IEEE International Conference on Intelligent Vehicles Symposium, 2007: 117- 122.

[6] Hsu C W, Lin C J. A comparison of methods for multiclass support vector machines[J]. IEEE Transactions on Neural Networks, 2002, 13(2): 415-425.

[7] 周中寒, 田雪咏, 孙兰香, 等. Fiber-LIBS技术结合SVM鉴定铝合金牌号[J]. 激光与光电子学进展, 2018, 55(6): 063002.

    Zhou Z H, Tian X Y, Sun L X, et al. Identification of aluminum alloy grades by fiber-laser induced breakdown spectroscopy combined with support vector machine[J]. Laser & Optoelectronics Progress, 2018, 55(6): 063002.

[8] Platt J C, Cristianini N, Shawe-Taylor J. Large margin DAGs for multiclass classification[J]. Advances in Neural Information Processing Systems, 2000, 12(3): 547-553.

[9] TakahashiF, AbeS. Decision-tree-based multiclass support vector machines[C]∥Proceedings of IEEE International Conference on Neural Information Processing, 2002, 5: 1418- 1422.

[10] 李厚杰, 邱天爽, 宋海玉, 等. 基于曲率尺度空间角点检测的交通标志分离算法[J]. 光学学报, 2015, 35(1): 0115002.

    Li H J, Qiu T S, Song H Y, et al. Separation algorithm of traffic signs based on curvature scale space corner detection[J]. Acta Optica Sinica, 2015, 35(1): 0115002.

杜恩宇, 张宁, 李艳荻. 基于自适应分块编码SVM的车道导向箭头多分类方法[J]. 光学学报, 2018, 38(10): 1015003. Enyu Du, Ning Zhang, Yandi Li. Multi Classification Method of Lane Arrow Markings Based on Support Vector Machines with Adaptive Partitioning Coding[J]. Acta Optica Sinica, 2018, 38(10): 1015003.

本文已被 1 篇论文引用
被引统计数据来源于中国光学期刊网
引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!