楊榮錦,張秀峰,龔莉娜,牛選兵,王 偉,馬天翼
(大連民族大學(xué) 機(jī)電工程學(xué)院,遼寧 大連 116605)
車道線檢測是智能輔助駕駛系統(tǒng)和自動(dòng)駕駛的重要組成部分。在實(shí)際的車道線檢測任務(wù)中,需要面對(duì)各種復(fù)雜的道路場景,如車道線破損、光照影響、雨天、霧天等造成車道線被部分遮擋或完全遮擋。傳統(tǒng)的車道線檢測方法難以解決以上問題,隨著深度學(xué)習(xí)在圖像分類任務(wù)中取得的巨大進(jìn)步,在車道線檢測任務(wù)中基于深度學(xué)習(xí)的研究方法逐漸占據(jù)主導(dǎo)地位。車道線檢測的實(shí)現(xiàn)大致由三部分組成:圖像預(yù)處理、特征提取、車道線擬合,其中特征提取是車道線檢測任務(wù)的核心部分。目前基于視覺的車道線檢測任務(wù)的特征提取方法主要有兩種,一種是利用車道線的顏色、梯度、紋理、視覺消失點(diǎn)等特征將車道線從圖像中分離出來,這種方法依賴于人工設(shè)計(jì)的特征,是傳統(tǒng)的車道線特征提取方法[1-9];另一種是利用自動(dòng)學(xué)習(xí)特征的深度學(xué)習(xí)技術(shù)進(jìn)行特征提取,與傳統(tǒng)方法相比基于深度學(xué)習(xí)的提取特征方法檢測精度高、魯棒性好。因此,本文將主要綜述基于深度學(xué)習(xí)的車道線檢測方法。
目前綜述性的車道線檢測論文較少,文獻(xiàn)[10]對(duì)車道線檢測系統(tǒng)進(jìn)行了說明,對(duì)邊緣特征提取和車道線擬合兩方面進(jìn)行了總結(jié),僅列舉了部分基于語義分割的算法;文獻(xiàn)[11]對(duì)車道線檢測各個(gè)步驟的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的總結(jié)分析,由于涉及的范圍較廣,對(duì)每個(gè)步驟中使用的各類方法不能做到詳細(xì)地描述。本文總結(jié)了近幾年學(xué)者們的研究成果,在此基礎(chǔ)上分析車道線檢測算法目前存在的難點(diǎn),并對(duì)其未來發(fā)展進(jìn)行展望。
車道線檢測的實(shí)現(xiàn)是將視覺傳感器采集的車道圖像信息作為輸入,對(duì)輸入信息進(jìn)行處理,實(shí)時(shí)檢測車道線位置,檢測結(jié)果作為指導(dǎo)自動(dòng)駕駛的決策信息。車道線檢測任務(wù)主要應(yīng)用于自動(dòng)駕駛中的導(dǎo)航、定位、車道偏離預(yù)警等自動(dòng)駕駛汽車的路徑規(guī)劃,對(duì)自動(dòng)駕駛的發(fā)展具有重要影響。
國外對(duì)于車道線檢測技術(shù)的研究起步較早,早在20世紀(jì)90年代車道線檢測就成為輔助駕駛系統(tǒng)中必不可少的一部分。意大利帕爾馬大學(xué)的學(xué)者提出的GOLD系統(tǒng)[12]實(shí)現(xiàn)了對(duì)車道線和障礙物的檢測,采用逆透視變換的方法將車道線轉(zhuǎn)換為平行的方式,然后使用模板匹配技術(shù)對(duì)車道線進(jìn)行檢測并確定車道線的位置。Feng You等[5]提出一種夜間檢測車道線的算法,使用圖像處理的方法對(duì)CCD相機(jī)采集的數(shù)字圖像進(jìn)行處理,采用多方向搜索方法消除車道線邊界的噪聲,利用自適應(yīng)的霍夫變換檢測車道線信息。算法在車道線夜間檢測中具有較好的可靠性和魯棒性。杜克大學(xué)的研究人員提出了一種基于深度神經(jīng)網(wǎng)絡(luò)的車道檢測方法LaneNet[13],將車道檢測分為兩個(gè)階段:車道邊緣提取和車道線定位,算法大大降低了誤檢率,取得了很好的檢測效果。
國內(nèi)關(guān)于車道線檢測的研究較晚,但發(fā)展迅速。2002年寧波大學(xué)蔣毅剛等[14]發(fā)表了關(guān)于車道標(biāo)線檢測和汽車前方道路估計(jì)的文章。此后,國內(nèi)許多高校和科研機(jī)構(gòu)也相繼展開了對(duì)車道線檢測的研究。2009年西北工業(yè)大學(xué)雷濤等[15]提出基于形態(tài)學(xué)結(jié)構(gòu)元素建模的車道線檢測算法,該算法簡單、魯棒性強(qiáng),在多種復(fù)雜環(huán)境下都能夠檢測出車道線,但針對(duì)彎曲的車道檢測效果不佳。文獻(xiàn)[16-18]首先對(duì)圖像進(jìn)行灰度化預(yù)處理,在此基礎(chǔ)上使用Canny、Sobel等算子進(jìn)行邊緣檢測提取車道線邊緣信息,最后使用Hough變換檢測車道線。該方法對(duì)環(huán)境要求較高,僅在車道線清晰的條件下檢測效果較好。2020年劉彬等[19]提出了基于改進(jìn)Enet網(wǎng)絡(luò)的車道線檢測算法,該算法在標(biāo)準(zhǔn)路面檢測的準(zhǔn)確率達(dá)到了96.3%,在公開數(shù)據(jù)集上取得了實(shí)時(shí)性的檢測結(jié)果,與傳統(tǒng)算法相比該算法能夠滿足實(shí)際駕駛環(huán)境和實(shí)時(shí)性需求。車道線檢測技術(shù)隨著計(jì)算機(jī)視覺的進(jìn)步,由最開始利用圖像處理、邊緣檢測算子、Hough變換、IPM圖霍夫變換,到現(xiàn)在的PointLaneNet、LaneNet、Enet、Spinnet,準(zhǔn)確率有了大幅提升[20-22],在自動(dòng)駕駛領(lǐng)域具有廣闊的應(yīng)用前景。
根據(jù)車道線提取的方式不同,車道線檢測的特征提取方法分為兩種:基于傳統(tǒng)方法和基于深度學(xué)習(xí)方法。傳統(tǒng)的車道線檢測方法依賴于高度專業(yè)化、手工制作的特征和啟發(fā)式的組合來識(shí)別車道線。特征提取根據(jù)圖像的灰度梯度變化、顏色、紋理、視覺消失點(diǎn)等特征進(jìn)行分析并設(shè)計(jì)特征。這些算法對(duì)光照、天氣等變化較為敏感,當(dāng)行駛環(huán)境發(fā)生明顯變化時(shí),車道線檢測的效果不佳。隨著計(jì)算機(jī)計(jì)算能力的提升,GPU的快速發(fā)展,深度學(xué)習(xí)技術(shù)在計(jì)算機(jī)視覺、圖像處理等領(lǐng)域都有著廣泛的應(yīng)用。研究者提出將車道線檢測看作分割問題進(jìn)行研究,使用圖像分割模型提取車道線特征。該模型從大量具有標(biāo)注信息的圖像中提取特征信息,依據(jù)這些信息推理出原始圖像中對(duì)應(yīng)的像素點(diǎn)標(biāo)簽,在這種端到端的訓(xùn)練下能夠較好地提取車道線的語義信息并對(duì)各個(gè)像素分類。與邊緣特征提取、閾值分割、分水嶺等手工設(shè)計(jì)特征的傳統(tǒng)方法相比,基于深度學(xué)習(xí)的圖像分割方法能夠提取更加豐富的車道線信息,在車道線檢測技術(shù)中得到了廣泛的應(yīng)用[23-28]。
傳統(tǒng)方法先對(duì)圖像進(jìn)行預(yù)處理,使用人工設(shè)計(jì)的特征提取方法和Hough變換、最小二乘法擬合車道線?;谏疃葘W(xué)習(xí)方法主要有目標(biāo)檢測和圖像分割,這兩種方法都是利用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,自主檢測車道線信息。但目標(biāo)檢測方法不能精確地表達(dá)車道線的邊界信息。目前流行的車道線檢測是基于圖像分割的方法[29-32],該方法能夠進(jìn)行端到端的學(xué)習(xí),對(duì)圖像中的像素點(diǎn)進(jìn)行分類,可較好地提取車道線的類別和位置信息。
傳統(tǒng)的車道線檢測方法先對(duì)圖像進(jìn)行平滑去噪等預(yù)處理獲取感興趣區(qū)域,然后對(duì)預(yù)處理后的圖像使用人工設(shè)計(jì)的特征提取車道線的邊緣信息,最后擬合提取的車道線特征得到車道線信息。車道線具有特征簡單、與路面有明顯梯度、灰度變化較大、多種線形和顏色等特點(diǎn),因此,能夠通過這些特點(diǎn)人工設(shè)計(jì)特征檢測車道線。吳彬等[33]調(diào)整攝像頭獲取較好的視野,基于圖像中的消失點(diǎn)檢測和車道線位置信息設(shè)定動(dòng)態(tài)ROI,然后結(jié)合形態(tài)學(xué)運(yùn)算獲取較好的邊緣信息,能較好地避免其他車道的干擾。何旭光等[34]提出基于Hough變換的車道線檢測算法,首先對(duì)道路圖像平滑去噪,Canny算子邊緣檢測和自適應(yīng)算法提取車道線特征信息,然后使用改進(jìn)的Hough算法得到車道線信息,該方法在多種環(huán)境下檢測效果良好,但在彎曲的車道線上表現(xiàn)不理想,魯棒性差。馬泉鈞等[35]針對(duì)長距離車道線檢測,結(jié)合霍夫變換和滑塊法提取車道線,保障了車道線的完整性,但該算法在復(fù)雜環(huán)境下的檢測效果有待提升。
使用人工設(shè)計(jì)的特征進(jìn)行車道線檢測的方法原理簡單且相對(duì)成熟,依賴于車道邊界的梯度信息,對(duì)特征明顯的圖像表現(xiàn)較好,在車道線磨損或被遮擋導(dǎo)致車道線不完整的情況下,車道線的檢測效果會(huì)受到影響,在復(fù)雜環(huán)境下魯棒性差。
基于深度學(xué)習(xí)的方法與傳統(tǒng)方法相比魯棒性和泛化能力更好,主要有目標(biāo)檢測和圖像分割兩種。
2.2.1 目標(biāo)檢測
隨著深度學(xué)習(xí)的迅速發(fā)展和公開數(shù)據(jù)集的增多,目標(biāo)檢測網(wǎng)絡(luò)的檢測精度得到了極大提升。R-CNN、Faster R-CNN、YOLO等網(wǎng)絡(luò)在公開的數(shù)據(jù)集和實(shí)際應(yīng)用中,檢測精度和效率逐漸得到提升[36-39],目標(biāo)檢測引入自動(dòng)駕駛領(lǐng)域獲得了巨大的發(fā)展。崔文靚等[40]提出改進(jìn)的YOLOv3算法對(duì)公路車道線進(jìn)行檢測,該方法在YOLOv3算法的基礎(chǔ)上,特征提取部分選擇Darknet-53網(wǎng)絡(luò)結(jié)構(gòu),通過加深網(wǎng)絡(luò)層數(shù)的方式提高特征提取的能力,同時(shí)為降低漏檢風(fēng)險(xiǎn),對(duì)YOLOv3進(jìn)行簡化處理,該方法實(shí)現(xiàn)了端到端的檢測,平均準(zhǔn)確率達(dá)到95%,但對(duì)傾斜車道線檢測存在局限性,目標(biāo)檢測采用邊界框?qū)⒛繕?biāo)框選出來,在車道線邊界信息的表達(dá)上不夠精細(xì),結(jié)合語義分割方法后效果會(huì)更好。
2.2.2 圖像分割
圖像分割是將圖像中的各個(gè)像素標(biāo)注所屬的類別,把圖像分割成幾個(gè)具有一定語義類別的部分?;趫D像分割的車道線檢測能夠?qū)D像進(jìn)行像素級(jí)的分類,與傳統(tǒng)的方法相比檢測效果比較理想,通過端到端的學(xué)習(xí)魯棒性更好。
目前深度學(xué)習(xí)模型進(jìn)行車道線檢測僅局限于預(yù)測固定數(shù)量的車道線,對(duì)變化數(shù)量的車道線不能很好地應(yīng)對(duì)。文獻(xiàn)[13]將車道線檢測看作一個(gè)實(shí)例分割問題,同時(shí)提出了LaneNet模型,該模型由語義分割模型和實(shí)例模型構(gòu)成,語義分割模型將圖像進(jìn)行逐像素的二值分類,實(shí)例分割模型將圖像按像素區(qū)域分成不同的車道線實(shí)例,然后對(duì)分割結(jié)果進(jìn)行處理得到車道線的數(shù)量和類別,最終輸出實(shí)例分割的車道線圖像。
空間CNN[41](SCNN)將傳統(tǒng)的逐層卷積推廣到特征映射中的逐層卷積進(jìn)行車道線檢測,增強(qiáng)了像素之間的信息傳遞,特別適合車道線這種長距離連續(xù)形狀的目標(biāo)檢測,該算法在TuSimple基準(zhǔn)車道檢測數(shù)據(jù)集上準(zhǔn)確率達(dá)到了96.53%。文獻(xiàn)[42]從節(jié)省計(jì)算資源的角度對(duì)SCNN進(jìn)行改進(jìn),提出了稀疏空間卷積神經(jīng)網(wǎng)絡(luò),稀疏空間CNN是由SCNN改進(jìn)而來,是一個(gè)更輕量的模型,將SCNN特征映射內(nèi)的逐層卷積進(jìn)行分組卷積,提高了模型處理時(shí)間上的性能,但是計(jì)算精度較低。
文獻(xiàn)[43]提出一種用于車道線檢測的注意DNN(改進(jìn)的大視野),該模型由兩個(gè)并行的子模塊組成,通道注意力模塊和自注意力模塊。自注意力在車道線被遮擋,局部上下文無法推斷像素所屬類別時(shí),能夠提供一個(gè)全局上下文搜索;通道注意力在推斷像素所屬類別時(shí),提供一個(gè)根據(jù)通道重要性添加不同權(quán)重的方法。該方法在推斷車道線分類時(shí)強(qiáng)調(diào)關(guān)鍵通道,并可在惡劣環(huán)境下進(jìn)行車道線檢測。
采用圖像分割的方法進(jìn)行車道線檢測在檢測結(jié)果上更加精細(xì),處理耗時(shí)較少,算法的檢測速度更快。但對(duì)訓(xùn)練的數(shù)據(jù)集要求較高,需要進(jìn)行像素級(jí)的標(biāo)注,工作量大。
車道線具有明顯的線性特征,但是同一目標(biāo)的尺度變化明顯,近寬遠(yuǎn)窄,復(fù)雜環(huán)境下車道線目標(biāo)容易被遮擋,線型種類較多且不易區(qū)分。傳統(tǒng)方法中常使用逆透視變換[44-45]的方法將拍攝的圖像轉(zhuǎn)換為鳥瞰圖,從而解決車道線近寬遠(yuǎn)窄的問題。深度學(xué)習(xí)引入車道線檢測中能夠通過端到端的學(xué)習(xí)提取更豐富的車道線特征,泛化性和魯棒性更好,但仍存在以下難點(diǎn):
(1)車道線易被遮擋,汽車、陰影、道路破損等導(dǎo)致車道邊界局部特征不明顯,檢測時(shí)易出現(xiàn)誤檢、漏檢的情況。文獻(xiàn)[46-47]從全局的角度搭建網(wǎng)絡(luò)模型對(duì)車道線進(jìn)行檢測,模型可實(shí)現(xiàn)端到端的檢測,能有效檢測擁擠場景下的車道線,但被汽車完全遮擋的車道線依舊較難檢測。宏明佳等[48]提出基于FCN的車道線檢測算法,通過一系列卷積、池化及反卷積操作后,經(jīng)過條件隨機(jī)場處理,最終得到精細(xì)的檢測結(jié)果,算法僅準(zhǔn)確地識(shí)別了車道線的位置,不能識(shí)別車道線的顏色和虛實(shí)。
(2)線型種類多,在確定車道線位置信息的同時(shí),較難有效區(qū)分黃、白、虛、實(shí)線。如文獻(xiàn)[43]使用CNN對(duì)不同顏色的車道線(黃、白線)進(jìn)行檢測,只能處理較小的32×32圖像。文獻(xiàn)[49]采用Sobel算子對(duì)圖像進(jìn)行邊緣檢測與語義分割網(wǎng)絡(luò)進(jìn)行特征融合和跨連接,優(yōu)化了車道線的邊緣和細(xì)節(jié),能夠準(zhǔn)確識(shí)別車道線的位置和類別,但在實(shí)時(shí)車道線檢測中需要足夠大的計(jì)算資源。修宇璇[50]提出了新的數(shù)據(jù)標(biāo)注方式,在編碼器和解碼器之間增加跨連接結(jié)構(gòu),對(duì)不同的特征進(jìn)行特征融合,能夠在準(zhǔn)確檢測車道線位置的同時(shí)區(qū)分車道線的顏色和虛實(shí),但對(duì)設(shè)備的計(jì)算資源有較高要求。
(3)基于圖像分割的車道線檢測算法較傳統(tǒng)方法檢測效果更好,但訓(xùn)練模型所需的訓(xùn)練數(shù)據(jù)要進(jìn)行像素級(jí)的標(biāo)注,標(biāo)注難度大,工作量大。
深度學(xué)習(xí)的引入使得車道線檢測的性能有了巨大的提升,加快了車道線檢測和輔助駕駛技術(shù)的發(fā)展。但仍有一些未能解決的問題:深度學(xué)習(xí)模型可解釋性較差,模型種類單一;訓(xùn)練所需的樣本標(biāo)注要求高,樣本數(shù)據(jù)成本大。深度學(xué)習(xí)為車道線檢測的魯棒性和實(shí)時(shí)性帶來了巨大的提升,相信在未來的研究中會(huì)開發(fā)出魯棒性更優(yōu)的車道線檢測方法。