曾 娟,李守義,張洪昌
(1.現(xiàn)代汽車零部件技術(shù)湖北省重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430070; 2.交通物聯(lián)網(wǎng)技術(shù)湖北省重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430070)
人車混流和交通擁堵是中國(guó)道路交通路況的典型特征。在人車混流的環(huán)境下,駕駛員忽視外周視野區(qū)域障礙物是導(dǎo)致事故發(fā)生的重要原因。如果駕駛員能提前1~2 s 時(shí)間得到環(huán)境危險(xiǎn)預(yù)警提示,則能避免90%的事故發(fā)生。目前基于機(jī)器視覺的車輛檢測(cè)技術(shù)作為道路環(huán)境感知的核心技術(shù)[1-2],較為成熟的方法為多特征融合+分類器,包括Haar-like特征、HOG(Histogram of Oriented Gradient)特征、LBP(Local Binary Patterns)特征。分類器算法常用的有Adaboost算法、SVM(Support Vector Machine)算法、貝葉斯算法等?;贖aar-like特征與Adaboost級(jí)聯(lián)分類器[3-6]組合對(duì)前向車輛具有較好的檢測(cè)效果,因?yàn)榍跋蜍囕v具有對(duì)稱性、水平特征及垂直特征。HOG特征與SVM算法組合主要應(yīng)用于行人檢測(cè)[7],很少在車輛檢測(cè)中使用[8-10]。劉東軍等[11]提出使用主成分分析(PCA)對(duì)Haar-like特征降維,提高檢測(cè)的實(shí)時(shí)性,但未在斜向車輛檢測(cè)中使用。
相對(duì)前向車輛而言,在換道、十字路口、對(duì)向來車等路況下斜向車輛的檢驗(yàn)更具普遍意義,但是針對(duì)斜向車輛的檢測(cè)算法研究很少。Bin-Feng Lin等[12]通過在后視鏡處安裝攝像頭,通過多特征融合算法檢測(cè)相鄰車道車輛。朱彬等[13]通過分區(qū)域檢測(cè),對(duì)斜向車輛采用多塊局部二值模式(MB-LBP)特征,相對(duì)于使用Haar-like特征具有更高的準(zhǔn)確率。晏曉娟[14]通過建立不同角度車輛前臉的訓(xùn)練樣本庫(kù),訓(xùn)練Haar-like+Adaboost分類器實(shí)現(xiàn)側(cè)后方車輛的檢測(cè),但沒有考慮實(shí)時(shí)性的問題。
基于上述,針對(duì)斜向車輛識(shí)別問題,本研究提出陰影+邊緣特征融合算法;針對(duì)車輛檢測(cè)的實(shí)時(shí)性和準(zhǔn)確率問題,提出 HG&HV算法進(jìn)行二次檢測(cè),即核主成分分析+Haar-like特征+HOG特征+Adaboost級(jí)聯(lián)分類器算法。在Haar-like特征提取過程中采用核主成分分析降維提高實(shí)時(shí)性,Haar-like特征+HOG特征融合提高算法準(zhǔn)確率。
斜向車輛檢測(cè)算法具體流程如圖1所示。
圖1 斜向車輛檢測(cè)算法流程Fig.1 Flowchart of oblique vehicle detection algorithm
1.1斜向檢測(cè)區(qū)劃1.1.1斜向車輛檢測(cè)區(qū)域定義
為了更清楚定義檢測(cè)目標(biāo),本研究列出檢測(cè)范圍3種工況:工況1為相鄰車道車輛變道,如圖2(a)所示;工況2為對(duì)向車道車輛靠近過程,如圖2(b)所示;工況3為十字路口車輛 轉(zhuǎn)彎或直行過程,如圖2(c)所示。車輛B均定義為斜向車輛。
圖2 斜向車輛定義的3種工況Fig.2 Three conditions defined for oblique vehicles
1.1.2K-means聚類與Hough直線融合的車道線區(qū)劃
本研究采用K-means聚類與Hough直線融合的方式,提高車道線檢測(cè)準(zhǔn)確率。
原始圖像根據(jù)最大類間方差法(OTSU)閾值分割轉(zhuǎn)化為二值圖像,逐行提取二值化圖像的像素點(diǎn)。根據(jù)式(1)、式(2)判斷像素點(diǎn)屬性,利用公式(3)篩選特征點(diǎn),通過K-means聚類將特征點(diǎn)分為兩類。利用Hough直線變換,對(duì)聚類后的像素點(diǎn)進(jìn)行直線擬合。像素點(diǎn)起點(diǎn)、終點(diǎn)判斷式:
R(i,j)-R(i,j-1)=255∩R(i,j)-
R(i,j+1)=0,
(1)
R(i,j)-R(i,j-1)=0∩R(i,j)-
R(i,j+1)=255,
(2)
式中,R(i,j)為二值化后圖像灰度值,istart,iend分別為起點(diǎn)橫坐標(biāo)及終點(diǎn)橫坐標(biāo)。像素?cái)?shù)與攝像頭有關(guān),本研究采用車道線寬度在5~30個(gè)像素左右[15],距離差公式:
5≤iend-istart≤30。
(3)
根據(jù)像素點(diǎn)的分布特點(diǎn)及篩選條件,確定車輛的特征點(diǎn)及聚類效果如圖3所示。
圖3 特征點(diǎn)提取Fig.3 Feature point extraction
提取特征點(diǎn)后,通過K-means聚類聚成兩類后,根據(jù)Hough變換實(shí)現(xiàn)車道線檢測(cè),見圖3(a)。依據(jù)檢測(cè)結(jié)果,定義在自車兩側(cè)車道線以外的區(qū)域?yàn)槟繕?biāo)檢測(cè)區(qū)域,效果見圖4(b)。
圖4 圖像區(qū)域劃分Fig.4 Image area division
1.2基于陰影特征與邊緣特征融合的斜向車輛初次檢測(cè)1.2.1自適應(yīng)雙閾值與OTSU閾值融合的斜向車輛陰影提取
OTSU與自適應(yīng)雙閾值分割算法應(yīng)用于車輛檢測(cè)會(huì)存在分割效果不佳的問題。例如OTSU算法在圖像是單峰、多峰情況下無法準(zhǔn)確分割[11];自適應(yīng)雙閾值法在不良天氣條件下效果不佳[16]。
鑒于此,結(jié)合自適應(yīng)閾值與OTSU的算法優(yōu)點(diǎn),提出一種融合閾值分割算法。首先利用自適應(yīng)閾值Threshold1排除車輛檢測(cè)區(qū)域的高亮區(qū)域及噪聲,然后將滿足條件的像素點(diǎn)進(jìn)行OTSU閾值分割,從而實(shí)現(xiàn)車輛陰影的提取。
依據(jù)式(4)、式(5)計(jì)算圖像的均值和方差;
(4)
(5)
依據(jù)式(6)和計(jì)算得到的均值與方差,計(jì)算閾值Thresholdfirst,統(tǒng)計(jì)低于閾值Threshold1的像素點(diǎn);
(6)
將高于閾值的像素點(diǎn)排除后,采用OTSU閾值分割得到二次閾值分割的閾值Threshold2?;叶戎敌∮陂撝档臑殛幱安糠?,大于閾值為背景部分。根據(jù)式(7)得到二值化圖像。
(7)
改進(jìn)閾值算法與自適應(yīng)雙閾值分割算法、OTSU算法作比較,3種方法得到的閾值分割效果如圖5所示。
圖5 閾值分割算法對(duì)比Fig.5 Comparison of threshold segmentation algorithms
1.2.2斜向車輛邊界的愈合處理
斜向車輛與正向車輛相比,垂直特征存在較大差異。通過提取垂直邊緣[17]作垂直邊緣直方圖,并建立愈合處理規(guī)則,從而確定斜向車輛的左右邊界。
通過垂直Sobel卷積算子,得圖像區(qū)域的垂直邊緣圖,如圖6(a)所示。根據(jù)垂直邊緣圖計(jì)算對(duì)應(yīng)列垂直邊緣像素點(diǎn)的個(gè)數(shù)。以圖像寬度為橫坐標(biāo)、以垂直邊緣像素點(diǎn)的個(gè)數(shù)為縱坐標(biāo)作垂直邊緣直方圖,如圖6(b)所示。定義自適應(yīng)閾值Thresholdj:
(8)
式中,F(xiàn)為斜向檢測(cè)區(qū)域;WidthF為斜向檢測(cè)區(qū)域的寬度;f(i,j)為斜向檢測(cè)區(qū)域垂直邊緣圖的灰度值;δ[]為克羅內(nèi)克函數(shù),當(dāng)[]內(nèi)值相等時(shí),δ[]函數(shù)值為1,反之為0。
直線j=Thresholdj與垂直邊緣直方圖相交,達(dá)到固定閾值Thresholdj的峰值坐標(biāo)點(diǎn)作為車輛左右邊界的候選點(diǎn),兩個(gè)對(duì)應(yīng)的左右邊界點(diǎn)之間的距離為疑似車輛區(qū)域的寬度。
圖6 斜向車輛左右邊界提取Fig.6 Extracting left and right borders of oblique vehicle
通過閾值Thresholdj的邊界候選點(diǎn)篩選匹配規(guī)則如下:
規(guī)則1:若直線j=Thresholdj與直方圖的兩個(gè)相交點(diǎn)之間所對(duì)應(yīng)的列距離超過0.6limage,則兩個(gè)相交點(diǎn)為左右邊界點(diǎn);
規(guī)則2:若列距離小于0.3limage,則將兩個(gè)相交點(diǎn)合并為一個(gè)交點(diǎn),合并原則為新的邊界點(diǎn)為縱坐標(biāo)不變,橫坐標(biāo)為兩個(gè)相交點(diǎn)橫坐標(biāo)的均值,即Bnew(i,j)=(iB1+iB2,j)。
規(guī)則3:若邊界候選點(diǎn)Bk的相鄰列距離處于0.3limage與0.6limage之間,則認(rèn)為邊界點(diǎn)屬于不同的車輛。
基于HOG特征與Haar-like特征的級(jí)聯(lián)分類器采取串聯(lián)的方式,從而達(dá)到更優(yōu)的效果。核主成分分析降維提高實(shí)時(shí)性。
1.3.1斜向車輛的HOG特征
(9)
(10)
將得到的梯度方向角θ在[0, 2π]內(nèi)分為9個(gè)bin區(qū)間,每個(gè)bin區(qū)間包含梯度方向角40°。梯度方向角對(duì)應(yīng)bin區(qū)間的梯度幅值函數(shù)為
(11)
式中,k=1, 2,…,9,Bk(i,j),為對(duì)應(yīng)bink區(qū)間的梯度幅值。每個(gè)像素點(diǎn)(i,j)都能通過上述式(11)得到一個(gè)k維向量,梯度方向直方圖如圖7所示。
圖7 梯度方向直方圖Fig.7 Gradient direction histogram
1.3.2斜向車輛的Haar-like特征
特征值計(jì)算速度與特征維度大小選取相互制約。選用Haar-like特征對(duì)車輛正臉進(jìn)行特征提取,如圖8所示。由于Haar-like特征為矩形特征,其特征維度隨區(qū)域增大而增長(zhǎng),可使用積分圖(Viola等[19])快速計(jì)算特征值,但特征維度太大將導(dǎo)致計(jì)算實(shí)時(shí)性難以保證。
圖8 Haar-like特征提取示例Fig.8 Example of extracting Haar-like features
1.3.3核主成分分析對(duì)Haar-like特征的降維處理
采用核主成分分析降維的方式可將高維數(shù)據(jù)流降維到低維空間,從而提高計(jì)算速度。思路如下。
提取m個(gè)圖像特征,每個(gè)樣本特征維度為n,將其構(gòu)成特征矩陣A:
(12)
高斯徑向基核函數(shù)(RBF)表達(dá)式為
(13)
計(jì)算核矩陣K的特征值λ1,λ2,…,λn及特征向量v1,v2,…,vn,并對(duì)特征值大小排序處理,而且調(diào)整相應(yīng)的特征向量位置。
根據(jù)主元成分的累積貢獻(xiàn)率Bk,當(dāng)累計(jì)貢獻(xiàn)率Bk達(dá)到最低限度值E=99.5%,提取前k個(gè)主成分向量v′1,v′2,…,v′k。累積貢獻(xiàn)率:
(14)
計(jì)算特征集A在低維空間的投影Y,利用主成分向量v′與核矩陣K即可得到Y(jié)=v′K,投影Y即為圖像特征集A的KPCA降維結(jié)果。
具體降維結(jié)果如表1所列。根據(jù)表1的結(jié)果,降維處理后,當(dāng)車輛Haar-like特征維度達(dá)到86時(shí),累積方差貢獻(xiàn)率達(dá)99.543%,能夠滿足車輛檢測(cè)的需要,所以選擇提取車輛圖片特征的前86維度特征進(jìn)行車輛檢測(cè)。
表1 車輛Haar-like特征降維Tab.1 Dimension reduction for vehicle Haar-like features
1.3.4Adaboost級(jí)聯(lián)分類器
自適應(yīng)增強(qiáng)學(xué)習(xí)算法(Adaboost)對(duì)訓(xùn)練樣本進(jìn)行訓(xùn)練產(chǎn)生若干個(gè)弱分類器(迭代n次就會(huì)產(chǎn)生n個(gè)分類器),且每次訓(xùn)練時(shí)訓(xùn)練樣本根據(jù)上一個(gè)弱分類器結(jié)果會(huì)對(duì)訓(xùn)練樣本集進(jìn)行權(quán)值調(diào)整,增大錯(cuò)分樣本權(quán)重,降低正確分類樣本權(quán)重,提高下一次迭代的弱分類器的準(zhǔn)確率。當(dāng)錯(cuò)誤率下降到一定要求或滿足迭代次數(shù)時(shí)分類器訓(xùn)練結(jié)束。檢測(cè)流程如圖9所示。
圖9 多分類器檢測(cè)Fig.9 Multi-classifier detection
通過多次強(qiáng)分類器的訓(xùn)練,將其以串行方式級(jí)聯(lián)成二級(jí)強(qiáng)分類器,作為最終分類判斷的依據(jù),提高分類器的分類精度。
試驗(yàn)使用兩個(gè)數(shù)據(jù)集作為測(cè)試數(shù)據(jù)集:百度語義分割比賽所用視頻剪輯圖片,共298張; KITTI數(shù)據(jù)庫(kù)的圖片數(shù)據(jù),共300張。針對(duì)檢測(cè)算法改進(jìn)的幾個(gè)環(huán)節(jié),設(shè)計(jì)試驗(yàn)如下:
虛擬試驗(yàn)1:陰影特征與邊緣特征融合的初次檢測(cè)與分類器二次檢測(cè)對(duì)比試驗(yàn);
虛擬試驗(yàn)2:增加HOG特征前后Adaboost分類器效果對(duì)比;
虛擬試驗(yàn)3:采用KPCA降維+多特征融合(HOG特征+Haar-like特征)+Adaboost級(jí)聯(lián)分類器與HOG+支持向量機(jī)(SVM)算法對(duì)比試驗(yàn);
虛擬試驗(yàn)4:選擇3種天氣條件(晴天,陰天及雨天)對(duì)比試驗(yàn)。
虛擬試驗(yàn)環(huán)境為Visual Studio2015+OpenCV3.1,使用C++語言進(jìn)行編程,硬件環(huán)境為戴爾靈越N4110電腦,6G內(nèi)存,i3處理器,Windows7系統(tǒng)。
試驗(yàn)評(píng)價(jià)標(biāo)準(zhǔn)分別為準(zhǔn)確率、實(shí)時(shí)性、誤檢率。3個(gè)定量參數(shù)定義:
(15)
(16)
(17)
式中,N為圖片數(shù)量;ti為第i張圖片處理所需要的時(shí)間;num為矩形框總數(shù);numL為漏檢數(shù);numw為誤檢數(shù);numr為正確數(shù)。
(1)虛擬試驗(yàn)1結(jié)果及分析
虛擬試驗(yàn)1為本研究算法中初次檢測(cè)與二次檢測(cè)的效果對(duì)比。結(jié)果如圖10所示。圖10(a)為閾值融合分割算法檢測(cè)結(jié)果,圖10(b)為分類器二次檢測(cè),矩形框表示檢測(cè)結(jié)果。
圖10 虛擬試驗(yàn)一結(jié)果對(duì)比Fig.10 Comparison of results of virtual experiment 1
從圖10看出,初次檢測(cè)能識(shí)別斜向車輛準(zhǔn)確率達(dá)90.1%;表2結(jié)果顯示,基于陰影特征和邊緣特征的斜向車輛的識(shí)別準(zhǔn)確率能達(dá)到94.6%。二次檢測(cè)的檢測(cè)準(zhǔn)確率提升4.5%。
表2 車輛檢測(cè)結(jié)果對(duì)比(虛擬試驗(yàn)1)Tab.2 Comparison of vehicle test results (virtual experiment 1)
(2)虛擬試驗(yàn)2結(jié)果及分析
虛擬試驗(yàn)2是3種算法效果對(duì)比。算法1,采用KPCA降維+多特征融合+Adaboost機(jī)器學(xué)習(xí)算法;算法2,多特征融合+Adaboost機(jī)器學(xué)習(xí)算法;算法3,經(jīng)典的支持向量機(jī)SVM+HOG特征算法。試驗(yàn)結(jié)果如圖11所示。矩形框?yàn)樗惴z測(cè)結(jié)果。
圖11 虛擬試驗(yàn)2結(jié)果對(duì)比Fig.11 Comparison of results of virtual experiment 2
從圖11看出,算法1在車輛檢測(cè)中框選車輛準(zhǔn)確;算法3存在多個(gè)車輛檢測(cè)為同一輛車的情形。表3結(jié)果顯示:算法2與算法3相比,誤檢率降低5.2%,準(zhǔn)確性提高2.5%,說明多特征融合+Adaboost能明顯提高檢測(cè)準(zhǔn)確率,但是實(shí)時(shí)性指標(biāo)(檢測(cè)時(shí)間)沒有改善;算法1和算法2相比,準(zhǔn)確性和誤檢率相差不大,檢測(cè)時(shí)間減少15 ms,說明采用核主成分分析降維后,實(shí)時(shí)性指標(biāo)改善明顯;算法1與算法3相比,誤檢率降低5.1%,準(zhǔn)確性提高1.1%,但是檢測(cè)時(shí)間減少16 ms,綜合檢測(cè)效果最佳。
表3 三種算法的車輛檢測(cè)結(jié)果對(duì)比(虛擬試驗(yàn)2)Tab.3 Comparison of vehicle detection results of 3 algorithms (virtual experiment 2)
(3)虛擬試驗(yàn)3結(jié)果及分析
虛擬試驗(yàn)3是增加HOG特征前后分類器效果對(duì)比。
采集Adaboost訓(xùn)練過程中的準(zhǔn)確率與虛警率(被錯(cuò)分的幾率)數(shù)據(jù),繪制出ROC曲線。分類器2:HOG+Haar-like+Adaboost分類器;分類器1:Haar-like+Adaboost分類器。從圖12可以看出,分類器2曲線位于分類器1上方,即分類器2訓(xùn)練效果準(zhǔn)確率優(yōu)于分類器1,虛警率低于分類器2。
圖12 ROC曲線Fig.12 ROC curves
圖13 三種天氣條件下車輛檢測(cè)效果Fig.13 Vehicle detection effects under 3 weather conditions
(4)虛擬試驗(yàn)4結(jié)果及分析
從圖13看出,陰天、雨天和晴天均可以檢測(cè)出斜向車輛;從表4結(jié)果分析,車輛檢測(cè)準(zhǔn)確率均高于90%。
表4 三種天氣條件下車輛檢測(cè)結(jié)果對(duì)比Tab.4 Comparison of vehicle test results under 3 weather conditions
針對(duì)斜向車輛識(shí)別,提出融合雙自適應(yīng)閾值與OTSU閾值分割算法、以及斜向車輛邊界的愈合處理規(guī)則。試驗(yàn)結(jié)果顯示可有效識(shí)別斜向車輛,準(zhǔn)確率達(dá)90%。針對(duì)檢測(cè)準(zhǔn)確率和實(shí)時(shí)性問題,提出核主成分分析+雙特征融合+Adaboost級(jí)聯(lián)分類器算法。4組試驗(yàn)結(jié)果顯示,雙特征融合+Adaboost級(jí)聯(lián)分類器對(duì)提高檢測(cè)的準(zhǔn)確率有明顯改善;核主成分分析降維對(duì)檢測(cè)的實(shí)時(shí)性效果明顯;二者融合的綜合效果改善明顯。由于試驗(yàn)采取的是靜態(tài)圖片進(jìn)行測(cè)試,在實(shí)車環(huán)境下,攝像頭的安裝、車體運(yùn)動(dòng)、空氣中水分、光線均可對(duì)檢測(cè)結(jié)果產(chǎn)生影響。所以該組圖片的檢測(cè)結(jié)果有局限性。實(shí)車測(cè)試是下一階段的主要工作。實(shí)車環(huán)境下算法的有效性和穩(wěn)定性、精確性是后續(xù)算法改進(jìn)的關(guān)鍵所在。