楊 靜,郎璐紅,馬書香,徐 慧
(蕪湖職業(yè)技術(shù)學(xué)院 信息與人工智能學(xué)院,安徽 蕪湖 241006)
車道線檢測(cè)是自動(dòng)駕駛技術(shù)中非常重要的一環(huán),它可以幫助車輛在行駛過程中避免發(fā)生與道路邊緣發(fā)生碰撞的現(xiàn)象,因此車道線檢測(cè)的準(zhǔn)確性對(duì)于車輛行駛安全具有非常重要的作用[1-2]。目前,主流的車道線檢測(cè)算法主要有基于邊緣檢測(cè)和基于區(qū)域生長(zhǎng)的算法兩大類。高揚(yáng)等人[3]主要基于邊緣檢測(cè)的算法通過對(duì)道路圖像進(jìn)行邊緣提取和濾波,然后將得到的邊緣圖像輸入到下一個(gè)網(wǎng)絡(luò)進(jìn)行車道線檢測(cè),可以得到較為準(zhǔn)確的車道線位置;陳建等人[4]主要基于區(qū)域生長(zhǎng)算法則是先將道路圖像劃分成若干個(gè)區(qū)域,然后通過區(qū)域生長(zhǎng)對(duì)各個(gè)區(qū)域進(jìn)行提取和融合得到最終的車道線檢測(cè)結(jié)果。其中,基于區(qū)域生長(zhǎng)算法由于其具有較強(qiáng)的魯棒性和適應(yīng)性而被廣泛應(yīng)用于道路車道線檢測(cè)中。以上的檢測(cè)算法中,傳統(tǒng)區(qū)域生長(zhǎng)算法對(duì)道路圖像要求較高,僅適用于交通較為簡(jiǎn)單、圖像較小或單一類型車輛行駛情況下的道路圖像處理。然而,在實(shí)際應(yīng)用中,由于車道線位置易受道路環(huán)境影響,傳統(tǒng)的車道線檢測(cè)算法結(jié)構(gòu)簡(jiǎn)單,往往難以對(duì)復(fù)雜場(chǎng)景中出現(xiàn)的車道線進(jìn)行準(zhǔn)確檢測(cè)。因此,如何在保證車道線檢測(cè)準(zhǔn)確性的同時(shí)提升車道線檢測(cè)算法對(duì)復(fù)雜場(chǎng)景下復(fù)雜道路圖像處理能力已成為當(dāng)前研究人員所面臨的一個(gè)重要問題。本文針對(duì)現(xiàn)有方法中存在的不足之處提出了一種基于優(yōu)化后有效殘差分解網(wǎng)絡(luò)(ERFNet網(wǎng)絡(luò))車道線檢測(cè)算法,并對(duì)其進(jìn)行了實(shí)驗(yàn)驗(yàn)證。
本節(jié)介紹了使用改進(jìn)后的ERFNet來進(jìn)行車道線圖像語義分割的基本流程。首先,用ResNet-50網(wǎng)絡(luò)進(jìn)行訓(xùn)練,并將其輸出結(jié)果作為輸入,然后通過優(yōu)化后的ERFNet網(wǎng)絡(luò)得到最終結(jié)果[5]。在車道線語義分割的過程中,圖像特征提取是一項(xiàng)重要的環(huán)節(jié)。該網(wǎng)絡(luò)可以有效地提取出圖像中的有效特征,但網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜,需要大量計(jì)算資源[6]。為了進(jìn)一步提高模型的性能和計(jì)算效率,本文提出了一種優(yōu)化后的ERFNet網(wǎng)絡(luò)。該網(wǎng)絡(luò)主要由一個(gè)多尺度殘差模塊、兩個(gè)空洞卷積模塊和兩個(gè)殘差模塊組成。本文所建立的優(yōu)化ERFNet模型如圖1所示。

圖1 優(yōu)化ERFNet模型
在以上的模型中,主要由非常多的功能模塊組成。相關(guān)的模型參數(shù)如表1所示。

表1 優(yōu)化ERFNet模型結(jié)構(gòu)參數(shù)
在該網(wǎng)絡(luò)中,首先增加了一個(gè)空洞卷積模塊,這可以增加圖像中特征信息的提取深度[7];其次是將多尺度殘差模塊與空洞卷積相結(jié)合,提高了圖像中特征信息的提取精度;最后是通過殘差模塊和空洞卷積將多尺度信息融合起來,實(shí)現(xiàn)車道線圖像在檢測(cè)前的情景語義分割。
在完成圖像的語義分割后,提取圖像中的車道線信息。經(jīng)過語義分割之后的車道線圖像數(shù)據(jù)集中包含了24種不同類型的車道線,包括了傾斜、平直、彎曲和交叉車道線等多種情況,通過對(duì)MNIST數(shù)據(jù)集進(jìn)行預(yù)處理,提取出的數(shù)據(jù)集包含了較多的車道線信息,對(duì)于提高模型的泛化能力具有重要作用。在預(yù)處理時(shí),本文使用了一種簡(jiǎn)單有效的方法——圖像切片和小線段提取[8-9]。具體步驟為:首先將原始圖像進(jìn)行二值化處理,然后將其轉(zhuǎn)化為灰度圖;其次以圖像的上邊界作為起點(diǎn)進(jìn)行邊緣檢測(cè),截取像素高度為h的圖像作為第一個(gè)水平切片圖像。按照上述步驟,直至完成原始圖像所有信息的截取[10-12]。最后根據(jù)邊緣的分布情況確定圖像中車道線的位置。得到的圖像切片結(jié)果示意圖如圖2所示。

圖2 圖像切片示意圖
在圖像切片完成后,將MNIST數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集兩個(gè)部分。其中訓(xùn)練集包含了圖像中所有車道線信息,用于提高模型的泛化能力;測(cè)試集則包含了在MNIST數(shù)據(jù)集中已經(jīng)檢測(cè)出的所有車道線信息[13-15]。為了統(tǒng)一計(jì)算方式,將切片圖像的像素坐標(biāo)進(jìn)行轉(zhuǎn)換。具體計(jì)算如式(1)所示。
(1)
式(1)中,(x′,y′)表示水平切片圖像中的像素點(diǎn)坐標(biāo),(x,y)表示原始圖像中的像素點(diǎn)坐標(biāo),W表示原始圖像的寬,H表示原始圖像的長(zhǎng),Δh表示每次切割向下移動(dòng)的像素高度,i表示圖像切片的序號(hào)。經(jīng)過轉(zhuǎn)換之后,將得到的切片圖像進(jìn)行Hough變換[16-17],以提取出小線段。變換過程如式(2)所示。
ρ=xcosθ+ysinθ
(2)
式(2)中,(ρ,θ)為參數(shù)的空間坐標(biāo),將檢測(cè)到的小線段根據(jù)θ的大小進(jìn)行劃分,得到兩個(gè)集合表示為Sl和Sr,即車道線的左右兩側(cè)的集合,那么滿足如(3)式所示。
(3)
根據(jù)式(3),對(duì)圖像中的小線段進(jìn)行集合聚類,實(shí)現(xiàn)車道線信息的提取。
由于車道線檢測(cè)的前提是車道線的精確檢測(cè),因此,本文將對(duì)車道線進(jìn)行擬合檢測(cè)。首先,根據(jù)車道線的顏色、寬度和形狀,提取出道路圖像中的感興趣區(qū)域,并對(duì)其進(jìn)行標(biāo)注;其次,對(duì)ROI中的車道線進(jìn)行擬合[18],可以得到擬合后的車道線圖像;最后,根據(jù)擬合后的車道線圖像與周圍環(huán)境中的車道線進(jìn)行比較,實(shí)現(xiàn)車道線的精確檢測(cè)。本文算法將輸入圖像的像素作為輸出圖像的重要依據(jù),這樣能夠?qū)?fù)雜多變的道路特征進(jìn)行提取。對(duì)于實(shí)際道路上采集到的圖像來說,其像素值可以反映真實(shí)情況。因此,本文利用這些像素值對(duì)圖像進(jìn)行處理來解決這些問題。在提取到上述的車道線信息之后,需要對(duì)車道線進(jìn)行擬合。需要對(duì)得到的車道線信息圖像進(jìn)行統(tǒng)計(jì)直方圖操作,利用滑動(dòng)窗口進(jìn)行擬合檢測(cè)[19-20]。根據(jù)道路的實(shí)際情況,設(shè)置窗口的數(shù)量,并確定窗口尺寸。在擬合過程中,本文所選擇的曲線擬合函數(shù)不需要全部數(shù)據(jù)點(diǎn)的殘差[21]均為0,即矛盾方程組如式(4)所示。
εi=φ(xi)-f(xi)
(4)
式(4)中,φ(xi)為擬合函數(shù),f(xi)為殘差函數(shù)。在擬合過程中,將道路圖像分成兩部分:一部分是原始圖像(即沒有經(jīng)過處理和分割的圖像);另一部分是經(jīng)過處理和分割后的圖像(即經(jīng)過預(yù)處理和分割后的圖像)。將原始圖像作為輸出圖像后,本文可以將其像素值代入下式中進(jìn)行計(jì)算如式(5)所示。
y=ax2+bx+c
(5)
從而得到擬合后的曲線[22]均方誤差如式(6)所示。
(6)
將式(6)的多元函數(shù)進(jìn)行求導(dǎo),得到極值,能夠解出二次曲線的各個(gè)系數(shù),得到擬合后車道線圖形曲線。至此完成基于優(yōu)化ERFNet的智能車輛車道線精確檢測(cè)算法的設(shè)計(jì)。
為了驗(yàn)證本文所設(shè)計(jì)基于優(yōu)化ERFNet的智能車輛車道線精確檢測(cè)算法在實(shí)際應(yīng)用過程中的有效性,實(shí)驗(yàn)設(shè)備選擇RTX 3060 12GX顯卡,EPYC嵌入式9004系列處理器,內(nèi)存256G;Ubuntu20.04 LTS操作系統(tǒng),配合CUDA、Matlab R2021b、ERFNet車道線檢測(cè)等其他編程軟件。
為了檢驗(yàn)本文設(shè)計(jì)檢測(cè)方法能夠準(zhǔn)確評(píng)估行駛中路況,通過數(shù)據(jù)集搜集了不同城市、不同天氣、不同時(shí)間,道路場(chǎng)景下車輛車道線情況作為測(cè)試數(shù)據(jù)樣本。部分樣本如圖3所示。

圖3 不同場(chǎng)景車道線示例
以上的車道線樣本圖中,相關(guān)的測(cè)試樣本分類以及描述如表2所示。

表2 不同道路場(chǎng)景車道線測(cè)試樣本
在以上數(shù)據(jù)集下,分別使用本文設(shè)計(jì)的基于優(yōu)化ERFNet的智能車輛車道線精確檢測(cè)算法、基于Canny算子的檢測(cè)方法共同進(jìn)行測(cè)試,并將測(cè)試結(jié)果進(jìn)行對(duì)比與分析。
為了驗(yàn)證本文檢測(cè)方法的可行性,將所提算法與傳統(tǒng)基于Canny算子的檢測(cè)方法的性能進(jìn)行對(duì)比。通過精準(zhǔn)率與準(zhǔn)確率兩個(gè)指標(biāo)進(jìn)行判定,具體數(shù)據(jù)如表3所示。

表3 ERFNet和本文檢測(cè)性能對(duì)比
由表3可知在不同路面情況下兩種檢測(cè)性能呈現(xiàn)出不同的精準(zhǔn)率與準(zhǔn)確率,具有較大差異。
(1)理想狀態(tài):兩種方法均可以對(duì)路面車道線情況進(jìn)行準(zhǔn)確分析判斷,但是后者精準(zhǔn)率和準(zhǔn)確率更高分別維持在99.42%和98.37%。
(2)非常規(guī)路面:當(dāng)路面車道線出現(xiàn)新舊線交替、磨損嚴(yán)重、積雨積雪、夜晚路面反光等復(fù)雜情況,ERFNet檢測(cè)方法無法對(duì)路況進(jìn)行準(zhǔn)確的判斷,因此給出的輔助引導(dǎo)也不再具有參考性。相比之下所提算法的輸出指標(biāo)也有所下降,但是仍然保持著86.71%的精準(zhǔn)率和85.37%的準(zhǔn)確率,具有較強(qiáng)的指導(dǎo)意義。
實(shí)驗(yàn)過程中,本文對(duì)不同檢測(cè)方法在不同道路場(chǎng)景下的檢測(cè)速度進(jìn)行采集分析,所得數(shù)據(jù)如表4所示。

表4 不同檢測(cè)方法檢測(cè)速度
由表4可知的數(shù)據(jù)可以看出,本文方法在理想狀態(tài)下完成整個(gè)檢測(cè)時(shí)間僅為60ms,即使在路況惡劣情況下也不高于140ms,綜合判定本文設(shè)計(jì)的智能檢測(cè)系統(tǒng)無論在輸出精準(zhǔn)率、準(zhǔn)確率和檢測(cè)時(shí)間方面,性能更高,具有更高的參考性。
綜上所述,傳統(tǒng)檢測(cè)方法由于功能單一,結(jié)構(gòu)簡(jiǎn)單,具有較快的數(shù)據(jù)采集和后處理速度,但是精準(zhǔn)率及準(zhǔn)確率較低,不具有參考性;在數(shù)據(jù)采集部分耗費(fèi)較長(zhǎng)時(shí)間,是由于在非理想狀態(tài)下,如夜間或積雪情況路面被遮擋的原因。所提算法后處理部分花費(fèi)時(shí)間較長(zhǎng)的原因是,在檢測(cè)前對(duì)采集數(shù)據(jù)進(jìn)行分析和預(yù)判,提前做好準(zhǔn)備工作。雖然總體檢測(cè)速度較傳統(tǒng)檢測(cè)方法不占優(yōu)勢(shì),但是具有高精準(zhǔn)率和高準(zhǔn)確率,在實(shí)際應(yīng)用中具有一定的實(shí)用意義和價(jià)值。
車道線檢測(cè)是智能車輛駕駛中的一個(gè)重要任務(wù),是確保車輛行駛安全的前提條件,其檢測(cè)精度直接影響到駕駛安全。然而,當(dāng)前車道線檢測(cè)算法中仍然存在許多問題,如特征提取網(wǎng)絡(luò)不夠完善、網(wǎng)絡(luò)訓(xùn)練樣本不足、網(wǎng)絡(luò)深度不夠等。由于本文所用數(shù)據(jù)集的特殊性,在使用之前需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,然后再將其轉(zhuǎn)化為RGB格式。此外,由于道路場(chǎng)景中存在光線、陰影、反光等因素,因此本文在使用預(yù)處理后的數(shù)據(jù)集時(shí)并沒有對(duì)原始圖像進(jìn)行處理。為了進(jìn)一步提高車道線檢測(cè)精度,后續(xù)將考慮對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行處理,以便提高車道線檢測(cè)精度。由于車道線檢測(cè)屬于高精度要求的任務(wù),后續(xù)也將考慮采用其他更高精度的方法來檢測(cè)車道線。
黑龍江工業(yè)學(xué)院學(xué)報(bào)(綜合版)2023年10期