徐哲鈞,張 暐,郭 昊,張 洋,李 慶,董 雪
上海交通大學(xué) 中英國際低碳學(xué)院,上海 200240
隨著自動駕駛和輔助駕駛技術(shù)的迅速發(fā)展,對動態(tài)交通元素的精準(zhǔn)感知成為發(fā)展車輛主動安全技術(shù)的重要前提。而車道線檢測作為實現(xiàn)動態(tài)交通元素感知的重要環(huán)節(jié)也越來越受到研究者的關(guān)注。隨著深度學(xué)習(xí)技術(shù)的發(fā)展,基于視覺的車道線識別技術(shù)在近年來也取得了長足的進展,而深度神經(jīng)網(wǎng)絡(luò)作為機器視覺的主流技術(shù)方案,已廣泛應(yīng)用于車道線檢測中[1-3]。但是目前大多數(shù)基于深度學(xué)習(xí)的車道線檢測方案的應(yīng)用場景仍局限于白天晴朗天氣下,對于霧天、雨天等較為復(fù)雜的氣象與光照場景下的研究仍然較少。本文的研究目標(biāo)集中于提高霧天這一復(fù)雜場景下的車道線識別準(zhǔn)確率。
在復(fù)雜的天氣條件下,車道線檢測工作較晴朗天氣而言將更具有挑戰(zhàn)性。一方面,當(dāng)天氣條件不理想時,攝像頭所拍攝的圖像清晰度和對比度下降,并出現(xiàn)色彩失真和圖像細(xì)節(jié)特征丟失等問題,導(dǎo)致車道線更加難以識別,這將為特征提取工作帶來很大的困難,從而影響車道線檢測的準(zhǔn)確率。另一方面,對于由數(shù)據(jù)驅(qū)動的深度學(xué)習(xí)而言,訓(xùn)練樣本的數(shù)量和環(huán)境的多樣性直接影響了訓(xùn)練模型對車道線的檢測性能。因此,欲提高復(fù)雜天氣狀況下的車道線識別精度,需要大幅度增加相應(yīng)場景下的訓(xùn)練樣本數(shù)量。
當(dāng)前常用的開源自動駕駛車道線帶標(biāo)簽數(shù)據(jù)集,例如TuSimple[4]、Cityscapes[5]、KITTI[6]數(shù)據(jù)集等,大多都是以晴天場景下的高速道路車道線圖片為主,缺乏復(fù)雜場景下的車道線圖片。目前對復(fù)雜場景下的車道線標(biāo)注最具有權(quán)威性和挑戰(zhàn)性的開源車道線數(shù)據(jù)集當(dāng)屬CULane數(shù)據(jù)集[7],它包含了9種復(fù)雜場景下的車道線,具有場景眾多、數(shù)據(jù)規(guī)模龐大等特點,也是目前學(xué)術(shù)界及工業(yè)界最常用的動駕駛車道線數(shù)據(jù)集之一,為訓(xùn)練和測試深度學(xué)習(xí)模型在復(fù)雜場景下的車道線識別率提供了重要的數(shù)據(jù)支撐。
雖然CULane數(shù)據(jù)集中已經(jīng)包含了非常多的復(fù)雜場景,但在該數(shù)據(jù)集中,并沒有包含霧天場景下的車道線圖片,這也導(dǎo)致了使用CULane數(shù)據(jù)集經(jīng)過神經(jīng)網(wǎng)絡(luò)訓(xùn)練得到的車道線檢測模型對于霧天場景下的車道線檢測準(zhǔn)確率比較低。而現(xiàn)有的霧天車道線圖像數(shù)據(jù)集,以較為常用的FRIDA[8]和FRIDA2[9]數(shù)據(jù)集為例,其分別只包含了90和330張霧天道路圖片,數(shù)據(jù)規(guī)模難以支持神經(jīng)網(wǎng)絡(luò)訓(xùn)練過程中對樣本數(shù)量的需求。因此,缺乏霧天等復(fù)雜場景下的車道線數(shù)據(jù)集這一問題嚴(yán)重限制了深度學(xué)習(xí)訓(xùn)練的模型在復(fù)雜場景下的車道線識別準(zhǔn)確率。為了解決復(fù)雜場景下車道線數(shù)據(jù)集缺乏的問題,一種可行的方法是利用現(xiàn)有的開源車道線數(shù)據(jù)集中的晴天圖像人工生成復(fù)雜場景下的圖像,以此來主動擴大復(fù)雜場景下的車道線數(shù)據(jù)量,以支持更高精度的模型訓(xùn)練,提高復(fù)雜場景下的車道線識別準(zhǔn)確率。通過人工合成圖像來擴充現(xiàn)有數(shù)據(jù)集的方法已經(jīng)在雨天[10]和夜間[11]等場景下有了若干應(yīng)用。同時,在合成霧天圖像方面,前人也有了一些研究[12]。
長期以來,研究者們嘗試通過建模分析霧天圖像中清晰度和對比度下降的原因。1924年,Koschmieder[13]首次提出“大氣散射光(airlight)”的概念;1977年,McCartney[14]進一步指出,大氣中的懸浮粒子(包括水滴、塵埃和氣溶膠等)對光的吸收和散射造成了目標(biāo)光在目標(biāo)和相機之間傳輸過程中的衰減和背景光(大氣散射光)的產(chǎn)生,進而導(dǎo)致霧天圖片對比度和飽和度的下降;在1999年,Nayar和Narasimhan[15]建立了霧天成像的數(shù)學(xué)模型,明確闡釋了霧天圖像的成像過程,即為大氣散射模型。該模型認(rèn)為,在強散射介質(zhì)下(例如霧天場景),引起相機成像結(jié)果降質(zhì)的主要原因有兩個:一是目標(biāo)反射光受大氣中懸浮粒子的吸收和散射作用,造成目標(biāo)反射光能量的衰減,這導(dǎo)致探測系統(tǒng)的成像結(jié)果亮度降低,對比度下降;二是太陽光等環(huán)境光受大氣中散射介質(zhì)的散射作用形成大氣散射光,通常這部分散射光的強度大于目標(biāo)光,因而造成相機成像結(jié)果模糊不清。
但是,采用以上模型對霧天圖像進行重建要求原始數(shù)據(jù)集直接提供圖片的深度信息,或者由便于采用立體幾何算法提取深度信息的雙目相機采集圖片。然而目前大多數(shù)車道線數(shù)據(jù)集并沒有提供所需的深度信息,包括當(dāng)前使用最廣泛的CULane數(shù)據(jù)集(圖1)。因此,需要借助圖像的深度估計方法來進行圖片深度信息的提取。
圖1 CULane數(shù)據(jù)集Fig.1 CULane dataset
根據(jù)輸入圖像數(shù)量的不同,圖像的深度估計方法可分為多幅圖像深度估計方法與單幅圖像深度估計方法?;诙喾鶊D像的深度估計方法包括多視立體幾何(multi view system,MVS)算法[16-17]、運動中恢復(fù)結(jié)構(gòu)算法[18](structure from motion,SFM)與從陰影中恢復(fù)形狀(shape from shading,SFS)算法[19]等。但以上算法都是需要提供相同場景的多幅不同角度圖像,從中進行對應(yīng)點的匹配和三維重建,因此對同一場景的圖像數(shù)量提出了要求,普適性不足。
從單幅圖像中估計深度的方法是計算機視覺領(lǐng)域近年來熱門的研究課題?;赗GB圖像與深度圖之間存在著某種映射關(guān)系這一基本假設(shè),由數(shù)據(jù)驅(qū)動的深度學(xué)習(xí)方法逐漸應(yīng)用于單目深度估計問題中,以卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)為代表的深度學(xué)習(xí)技術(shù)在單目深度估計中取得了重要進展,逐漸成為圖像深度估計的主要方法。
通過使用帶有深度標(biāo)注的圖像,Eigen等人[20]首次將深度神經(jīng)網(wǎng)絡(luò)用于單幅圖像深度估計任務(wù),用有監(jiān)督學(xué)習(xí)法訓(xùn)練了一個基于CNN的深度估計模型。他們提出使用兩個尺度的神經(jīng)網(wǎng)絡(luò)對單張圖片的深度進行估計:粗尺度網(wǎng)絡(luò)預(yù)測圖片的全局深度,細(xì)尺度網(wǎng)絡(luò)優(yōu)化局部細(xì)節(jié)。
然而采集大量含高精度深度信息的多樣性圖像數(shù)據(jù)是極具挑戰(zhàn)性的,且有監(jiān)督學(xué)習(xí)無法適應(yīng)變化的環(huán)境。有監(jiān)督學(xué)習(xí)方法要求每幅RGB圖像都有其對應(yīng)的深度標(biāo)簽,而深度標(biāo)簽采集通常需要深度相機或激光雷達(dá),前者范圍受限,后者成本昂貴。此外,采集的原始深度標(biāo)簽通常是一些稀疏的點,不能與原圖很好地匹配。因此不用深度標(biāo)簽的無監(jiān)督或自監(jiān)督深度估計方法是近年的研究趨勢。其中比較突出的一種方法就是Godard等人[21]提出的Monodepth2網(wǎng)絡(luò)。
本研究提出了一種霧天車道線檢測的數(shù)據(jù)集擴充方法,以原始CULane數(shù)據(jù)集為基礎(chǔ),該方法利用Monodepth2方法提取出晴天車道線圖片中的深度信息,然后根據(jù)大氣散射模型進行霧天圖像生成。隨后,利用生成的霧天圖像對CULane數(shù)據(jù)集進行擴充和整理,人為地增加數(shù)據(jù)集中的霧天圖片數(shù)量,以提高其對復(fù)雜場景,特別是霧天場景中的車道線檢測性能。本研究中將以CULane數(shù)據(jù)集為基礎(chǔ)擴充得到的新數(shù)據(jù)集命名為FoggyCULane數(shù)據(jù)集,并使用近年來車道線檢測性能較為突出的SCNN網(wǎng)絡(luò)進行訓(xùn)練,通過對比CULane和FoggyCULane訓(xùn)練的網(wǎng)絡(luò)對不同復(fù)雜場景,尤其是霧天場景下的車道線檢測準(zhǔn)確率,來驗證這一方法的可行性和有效性。
相機成像時接收到的光源主要來自兩個部分,一是目標(biāo)反射光經(jīng)傳輸介質(zhì)衰減后到達(dá)探測系統(tǒng)的光,二是來自背景光源(本研究中為太陽光照)經(jīng)粒子散射形成的大氣光。通過此物理模型建立得到霧天成像的數(shù)學(xué)方程為:
式中,I(x)為坐標(biāo)J(x)處觀測到的圖像;J(x)為真實的清晰圖像;A為大氣亮度,通常假設(shè)為定值;t(x)為透射率,描述到達(dá)觀測者處的光透射霧的能力:
式中,l(x)為從場景到觀測者的距離;β為衰減系數(shù),β越大表示霧越濃。
可以看到,圖像降質(zhì)和信息丟失是隨著深度增加而增加的。因此,為了從J(x)獲取I(x),關(guān)鍵在于獲得t(x)公式中l(wèi)(x)的值,即為了通過晴天車道線圖片生成逼真的霧天車道線圖片,需要提取晴天車道線圖片的深度信息。目前的車道線數(shù)據(jù)集大多并未提供車道線場景的深度信息,并且通過有源傳感器(LiDAR、結(jié)構(gòu)光等)獲取深度信息的方法存在著成本高昂、噪聲較大、范圍受限、通用性差等問題,因此通過常規(guī)單目圖像進行深度信息提取對車道線檢測領(lǐng)域有著極其重要的意義。
如前文所述,自監(jiān)督學(xué)習(xí)有望替代有監(jiān)督學(xué)習(xí)已經(jīng)成為訓(xùn)練模型進行單眼深度估計的有希望的替代有效方法。
因此本文中采用Godard等人[21]提出的Monodepth2方法對CULane數(shù)據(jù)集中的晴天圖像進行深度提取,以此來生成所需的霧天圖像。
Monodepth2網(wǎng)絡(luò)是一種自監(jiān)督學(xué)習(xí)深度估計方法,使用深度估計和姿態(tài)估計網(wǎng)絡(luò)的組合,來預(yù)測單幀圖像中每個像素點的深度信息。基于對圖像外觀損失和分辨率的處理,Monodepth2網(wǎng)絡(luò)在單目圖像或者雙目圖像作為輸入數(shù)據(jù)進行模型訓(xùn)練時都能夠取得出色的深度估計效果。
為了解決從單幅圖像中進行深度估計的不適定性,即每一個像素點都對應(yīng)著大量有可能的深度值,Monodepth2網(wǎng)絡(luò)借鑒了多視圖立體系統(tǒng)MVS等方法的處理思路。由于自監(jiān)督學(xué)習(xí)的深度估計方法使用圖像重建的方法作為訓(xùn)練時的監(jiān)督,根據(jù)光度一致性(photoconsistency)假設(shè),同一空間的點在不同視角的投影中也應(yīng)當(dāng)具有相同的光度,因此自監(jiān)督學(xué)習(xí)的圖像重建工作重點在于恢復(fù)空間中具有光度一致性的點。通過在深度圖中進行強制平滑操作,以及基于光度一致性使用全局優(yōu)化方法求解圖像每個像素的深度,Monodepth2網(wǎng)絡(luò)能夠有效解決深度估計的不適定性問題。但同時,由于缺乏對應(yīng)場景的真實深度比例標(biāo)尺,Monodepth2網(wǎng)絡(luò)模型輸出的深度信息是場景的相對深度[21]。
Monodepth2網(wǎng)絡(luò)的架構(gòu)中包含了兩個網(wǎng)絡(luò),其中標(biāo)準(zhǔn)全卷積U-Net網(wǎng)絡(luò)用于對單目圖像進行深度信息的估計,而另一個單獨的姿態(tài)網(wǎng)絡(luò)用于對運動的圖像之間進行姿態(tài)的預(yù)測。
Monodepth2的損失函數(shù)L定義為:
式中,It、It′為不同視角下的圖片;It′→t為兩者的相對姿態(tài);Dt為預(yù)測的深度;K為內(nèi)聯(lián)函數(shù),方便起見假設(shè)所有視角的K都相同;pe為光度重建誤差(photometric reconstruction error),系數(shù)α=0.85;為平均歸一化反演深度;Lp為像素光度損失;Ls為像素平滑度;L為最終的訓(xùn)練損失函數(shù)。
本研究中,使用了Monodepth2在KITTI數(shù)據(jù)集上訓(xùn)練的1 024×320預(yù)訓(xùn)練模型,對所選取的晴天車道線圖像進行深度估計。
Monodepth2所得到的深度信息是相對深度,而非場景的絕對深度??紤]到本研究的目標(biāo)是生成濃度隨距離變化的霧天圖像,因此并不需要得到真實而具體的深度信息,所需要的只是深度的變化趨勢,或者說深度的相對變化,因此相對深度已經(jīng)能滿足本研究的需求。
由此,需要對方程(3)進行歸一化處理,以適應(yīng)相對深度的使用。
將Monodepth2提取得到的深度矩陣進行歸一化,得到范圍為[0,1]的深度矩陣l′(x),然后使用公式(8)獲得新的透射值t′(x):
由此,得到了新的t′(x),將其帶入前述的大氣擴散模型方程(1)中,即可求解出霧天圖像I(x)。CULane數(shù)據(jù)集的晴天圖像原圖,采用本研究的方法獲取的單目深度圖以及霧天車道線圖片如圖2所示??梢娝傻撵F天圖片在視覺效果上較為接近真實的霧天圖片。
CULane數(shù)據(jù)集整體文件結(jié)構(gòu)如表1所示,由包含88 880張圖片的訓(xùn)練集、9 675張圖片的驗證集和34 680張圖片的測試集組成。其中,測試集又進一步細(xì)分為9個子類別,包含了Normal正常、Crowded擁擠、Night夜晚、No line無線條、Shadow陰影、Arrow箭頭、Dazzle light眩光、Curve曲線和Crossroad十字路口這9種復(fù)雜場景下的車道線圖片,測試集各部分的組成如圖3所示。
CULane數(shù)據(jù)集主要關(guān)注的是當(dāng)前車道及相鄰的至多4條車道線,這也是駕駛過程中最為關(guān)注的車道線,減小了檢測復(fù)雜度,并降低了無關(guān)車道線對駕駛決策的影響。對于每張圖片,都使用3次樣條曲線標(biāo)注車道線,并將車道線延伸至圖像底端,其標(biāo)簽以坐標(biāo)點集的形式記錄車道線。對于車輛遮擋或看不到車道線的情況,數(shù)據(jù)集也仍然根據(jù)語義信息對車道線進行標(biāo)注。
通過前述的霧天圖片生成方法,本研究對CULane數(shù)據(jù)集的訓(xùn)練集、驗證集、測試集分別進行了擴充??紤]到實際環(huán)境中霧天濃度的多樣性和復(fù)雜性,為了能夠更加真實地模擬霧天場景,使數(shù)據(jù)集適應(yīng)多種濃度場景下的需求,本研究合理設(shè)置了霧濃度梯度,對公式(3)中的β值分別進行了β=2,3,4三種取值,從而生成霧濃度依次遞增的3種霧天場景圖片,霧天效果如圖4所示。
圖4 三種不同濃度的霧天場景效果展示Fig.4 Three different concentrations of fog
同時,由于本研究是使用CULane數(shù)據(jù)集中原本已經(jīng)標(biāo)注好車道線標(biāo)簽的圖片進行霧天圖片生成,因此所生成的霧天圖片與原圖擁有完全相同的車道線標(biāo)簽,因此,新生成的霧天圖片可以直接復(fù)制原圖的車道線標(biāo)簽文件。
由此,本研究數(shù)據(jù)集具體擴充方法如下:
(1)對訓(xùn)練集中所包含的driver_182_30frame文件夾下的所有圖片進行β=2的霧天圖片生成,一共生成了16 532張霧天圖片,并將原圖的車道線標(biāo)簽文件一起按照原文件夾的結(jié)構(gòu)進行整理,放置于driver_182_30frame_beta2文件夾中;同理,也依次進行β=3和β=4的霧天圖片生成,分別整理到driver_182_30frame_beta3、driver_182_30frame_beta4文件夾中;然后,按照霧濃度β值,將3種霧濃度的新建立文件夾和圖片路徑分別加入list文件夾中對應(yīng)β值的訓(xùn)練集數(shù)據(jù)索引文件train_beta2_gt.txt、train_beta3_gt.txt和train_beta4_gt.txt之中,并相應(yīng)地添加生成的霧天圖片與原圖在laneseg_label_w16文件夾中的標(biāo)注之間的關(guān)聯(lián)。
(2)對驗證集中所包含的driver_23_30frame文件夾中的圖片,同樣進行β=2的霧天圖片生成,并按照原文件夾的結(jié)構(gòu)進行整理,一共生成了9 675張霧天圖片,與車道線標(biāo)簽文件一起放置于driver_23_30frame_beta2文件夾;同理,也依次進行β=3和β=4的霧天圖片生成,分別整理到driver_23_30frame_beta3和driver_23_30frame_beta4文件夾中;然后,按照霧濃度β值,將3種霧濃度的新建立文件夾和圖片路徑分別加入list文件夾中對應(yīng)β值的訓(xùn)練集數(shù)據(jù)索引文件val_beta2_gt.txt、val_beta3_gt.txt和val_beta4_gt.txt之中,并相應(yīng)地添加生成的霧天圖片與原圖在laneseg_label_w16文件夾中的標(biāo)注之間的關(guān)聯(lián)。
(3)對于測試集,本研究取其normal子類中的所有圖片進行β=2,3,4的霧天圖片生成,按照其原文件夾的結(jié)構(gòu),分別放置于driver_37_30frame_beta2、driver_100_30frame_beta2、driver_193_90frame_beta2和driver_37_30frame_beta3、driver_100_30frame_beta3、driver_193_90frame_beta3和driver_37_30frame_beta4、driver_100_30frame_beta4、driver_193_90frame_beta4文件夾中,每一種霧濃度各生成9 610張霧天圖片,一共生成28 830張霧天圖片;接下來,將這些霧天圖片按照各自的霧濃度,在list文件夾中建立新的測試集霧天場景子類索引,分別命名為foggy_beta2、foggy_beta3和foggy_beta4,并將新建立的文件夾和圖片路徑加入list文件夾中的測試集數(shù)據(jù)索引文件之中。
由此,建立了一個擴充的包含3種不同霧濃度的霧天圖像的新車道線數(shù)據(jù)集,將其命名為FoggyCULane數(shù)據(jù)集。經(jīng)過擴增后的FoggyCULane數(shù)據(jù)集整體文件結(jié)構(gòu)如表2所示。相較于原始的CULane數(shù)據(jù)集,F(xiàn)oggyCU-Lane在訓(xùn)練集、驗證集和測試集中都增加了霧天圖像,訓(xùn)練集、驗證集和測試集也分別擴增為138 476張、38 700張和63 510張車道線圖片;并且測試集也新增了Foggy_beta2、Foggy_beta3和Foggy_beta4這三種不同濃度的霧天測試場景,總共擴增為12種不同的場景。
表2 FoggyCULane整體文件結(jié)構(gòu)Table 2 Overall file structure of FoggyCULane dataset
原始CULane數(shù)據(jù)集與FoggyCULane數(shù)據(jù)集的測試集構(gòu)成和圖片數(shù)量的對比如表3所示。
表3 CULane與FoggyCULane的測試集對比Table 3 Comparison between testing sets of CULane and FoggyCULane
在具體使用FoggyCULane數(shù)據(jù)集時,本研究采取的方法是:將霧天車道線的訓(xùn)練集與驗證集按照3種霧濃度進行分別提取,并與原始CULane的訓(xùn)練集與驗證集進行兩兩組合,由此可以得到3種包含單一霧濃度的FoggyCULane數(shù)據(jù)集,方便起見稱呼它們?yōu)镕oggyCULane_beta2、FoggyCULane_beta3和FoggyCULane_beta4;同時,也可以利用所有生成的霧天圖片得到包含以上3種霧濃度的FoggyCULane數(shù)據(jù)集,方便起見稱呼它為FoggyCULane_mix。因此,根據(jù)數(shù)據(jù)集導(dǎo)入方法的不同,事實上建立起了4種霧天車道線數(shù)據(jù)集,本文中如未特殊強調(diào)統(tǒng)一稱呼為FoggyCULane數(shù)據(jù)集。
SCNN(spatial CNN)是由Pan等人[7]創(chuàng)造性地提出的空間卷積神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)能更有效地學(xué)習(xí)圖像中的空間關(guān)系,以像素級目標(biāo)來訓(xùn)練網(wǎng)絡(luò),輸出車道線的概率圖,再通過另一個網(wǎng)絡(luò)判斷是否存在至多4條車道線。在當(dāng)前主流的車道線檢測網(wǎng)絡(luò)架構(gòu)中,SCNN是車道線檢測準(zhǔn)確率最高的網(wǎng)絡(luò)之一。
不同于CNN的逐層疊加,SCNN是將特征圖按上下左右四種不同方向的行或列作為切片,依次應(yīng)用卷積運算,并將當(dāng)前切片的輸出相加到下一切片作為新的一片,直至處理完所有切片,從而形成的一個深層神經(jīng)網(wǎng)絡(luò)。相較于通常的CNN,SCNN更加充分地利用到了圖片像素之間的空間關(guān)系。
如上所述,SCNN網(wǎng)絡(luò)的前向計算公式為:
式中,Xi,j,k為輸入的三維張量X中的元素,分別表示通道、行和列的索引;Ki,j,k為當(dāng)前切片內(nèi)通道j中的元素與末端切片內(nèi)通道i中的元素之間的權(quán)重,k為這兩個元素的列數(shù)之差。
SCNN的網(wǎng)絡(luò)架構(gòu)如圖5所示,其基于LargeFOV網(wǎng)絡(luò)進行搭建,包含了兩部分網(wǎng)絡(luò),分別進行車道線概率圖的預(yù)測(左)和車道線是否存在的預(yù)測(右)。圖中,“Conv”“HConv”和“FC”分別指的是卷積層convolution layer、帶洞卷積層atrous convolution layer以及全連接層fully connected layer。從圖中可以看到,在頂部的隱藏層(“fc6”層)之后,緊隨著的就是上述四種空間方向的卷積運算層(“fc7”層)。因此,SCNN的損失函數(shù)也由兩部分組成,即預(yù)測車道線概率圖的空間交叉熵(spatial cross entropy loss)和預(yù)測車道線是否存在的交叉熵(cross entropy loss)。
圖5 SCNN的網(wǎng)絡(luò)架構(gòu)Fig.5 Network structure of SCNN
本文使用SCNN網(wǎng)絡(luò)在原始CULane數(shù)據(jù)集、3種不同霧天濃度以及混合所有霧天濃度的FoggyCULane數(shù)據(jù)集上分別進行訓(xùn)練,以FoggyCULane擴充后的測試集為標(biāo)準(zhǔn)進行測試評估,以此來比較新建立的FoggyCULane數(shù)據(jù)集對復(fù)雜場景,特別是霧天場景下車道線檢測準(zhǔn)確率的提升效果。
本文中深度學(xué)習(xí)網(wǎng)絡(luò)的訓(xùn)練環(huán)境為CentOS 7.4,Pytorch和CUDA;算力為8塊NVIDIA GeForce GTX 2080Ti GPU顯卡。本文中SCNN的訓(xùn)練使用標(biāo)準(zhǔn)的隨機梯度(stochastic gradient descent,SGD)訓(xùn)練模型,批量大?。╞atch size)設(shè)置為64,基礎(chǔ)學(xué)習(xí)率為0.01,動量(momentum)為0.9,重量衰減(weight decay)為0.000 1,最大epoch數(shù)與最大迭代次數(shù)分別設(shè)置為30和8 000。圖像在輸入SCNN訓(xùn)練之前,會在預(yù)處理環(huán)節(jié)調(diào)整為800×288像素大小,以減輕訓(xùn)練的負(fù)擔(dān)。本研究針對3種不同的霧天濃度、12種不同的復(fù)雜場景下的車道線檢測效果進行了評估。
為了能夠量化評估車道線檢測結(jié)果,本文參照了文獻(xiàn)[7]中的方法,將真實車道線標(biāo)注與預(yù)測車道線標(biāo)注均視為寬度為30像素的線條狀區(qū)域,并計算兩者之間的交并比(intersection over union,IoU)。本文中,設(shè)置IoU的閾值為0.5,當(dāng)預(yù)測車道線與真實車道線之間的IoU不小于0.5時,即可將本次車道線預(yù)測視為真實正例(true positive,TP),反之則視為虛假正例(false positive,F(xiàn)P);相應(yīng)的,也可以定義真實負(fù)例(true negative,TN)和虛假負(fù)例(false negative,F(xiàn)N)。
如前文所述,F(xiàn)oggyCULane的擴充測試集中,共有12種不同的復(fù)雜場景,分別為正常、擁擠、夜晚、無線條、陰影、箭頭、眩光、曲線、十字路口和新增加的3種濃度的霧天場景。
其中,Crossroad場景由于未標(biāo)注真實車道線,僅采用FP值進行評價;對于其余11種復(fù)雜場景,評估的標(biāo)準(zhǔn)采用F1-measure,計算公式為:
表4展示了SCNN網(wǎng)絡(luò)在不同數(shù)據(jù)集上的5輪訓(xùn)練結(jié)果,包括12種不同場景。表4中,第一列所示為12種不同的復(fù)雜測試場景,其中最后3行是新增加的3種濃度依次遞增的霧天場景;而每一列分別代表5輪使用了不同數(shù)據(jù)集的神經(jīng)網(wǎng)絡(luò)訓(xùn)練,包括了原始CULane數(shù)據(jù)集、β值分別為2、3、4的3種霧天濃度FoggyCULane數(shù)據(jù)集以及混合了3種霧天濃度的FoggyCULane數(shù)據(jù)集;表格中的值(除了Crossroad行)代表每種場景下的F1-measure值,單位為%,而Crossroad行為FP值。
表4 SCNN在不同數(shù)據(jù)集上訓(xùn)練的評估結(jié)果Table 4 Evaluation results of SCNN trained on different datasets
如表4所示,在12種不同場景下,由FoggyCULane訓(xùn)練的模型基本都得到了比由原始CULane訓(xùn)練的模型更好的車道線檢測效果,其中,在3種霧天場景下,特別是濃度最高的Foggy_beta4下,車道線檢測效果的差異尤為明顯。
在3種霧天場景下,隨著霧的濃度即β值的增加,由原始CULane數(shù)據(jù)集訓(xùn)練的模型的車道線識別率由74.65%降低至11.09%,而由FoggyCULane數(shù)據(jù)集訓(xùn)練的模型則始終能保持在60%以上,其中,由混合了3種濃度霧天圖像的FoggyCULane數(shù)據(jù)集所訓(xùn)練的模型取得了86.65%到70.41%的霧天車道線檢測效果。
分析霧天車道線檢測效果得到提升的原因:
(1)相比于原始CULane數(shù)據(jù)集,F(xiàn)oggyCULane數(shù)據(jù)集的訓(xùn)練集和驗證集中增加了大量的霧天車道線圖像,使得車道線檢測網(wǎng)絡(luò)在訓(xùn)練中能夠充分接觸到霧天車道線特征,并對其進行提取和學(xué)習(xí)。
(2)所增加的霧天圖像是根據(jù)霧天成像的大氣散射模型人工合成的,其中包含了足夠的具有較高置信度的霧天信息和特征。此外,霧天車道線圖像的數(shù)量也能夠滿足車道線檢測網(wǎng)絡(luò)訓(xùn)練提取特征的需要。
以上兩點原因,使得由FoggyCULane數(shù)據(jù)集訓(xùn)練所得到的車道線檢測模型在霧天場景下的識別精度遠(yuǎn)高于原始CULane數(shù)據(jù)集。
因此,本研究通過人工生成霧天圖片擴充數(shù)據(jù)集的方法,不但能夠極大地提高神經(jīng)網(wǎng)絡(luò)訓(xùn)練對霧天場景下車道線的檢測準(zhǔn)確率,同時也不會對其他復(fù)雜場景下的車道線檢測造成負(fù)面影響,這證明了本文方法的有效性。
圖6 SCNN訓(xùn)練模型對霧天車道線識別效果圖Fig.6 Foggy lane detection results of models trained by SCNN
而在4種FoggyCULane數(shù)據(jù)集結(jié)果的橫向?qū)Ρ戎校梢杂^察到,在非霧天場景下的車道線識別率各有優(yōu)勢,彼此之間有一些差別但也相差不大。本文主要關(guān)注的是霧天場景下的車道線檢測識別率,SCNN訓(xùn)練模型對霧天車道線識別效果如圖6所示。其中,紅色為真實的車道線標(biāo)記,綠色為預(yù)測的車道線。
對4種FoggyCULane數(shù)據(jù)集結(jié)果之間的對比分析如下:
(1)混合霧天濃度的數(shù)據(jù)集比3種單一霧天濃度的數(shù)據(jù)集的識別效果更好。分析其原因,一方面是因為混合霧天濃度數(shù)據(jù)集中霧天圖像的數(shù)量更多,神經(jīng)網(wǎng)絡(luò)訓(xùn)練時能更多地接觸霧天場景,因此對霧天車道線更加敏感;另一方面,混合霧天濃度數(shù)據(jù)集包含了3種濃度的霧天圖片,使得模型訓(xùn)練時對霧天特征的提取和學(xué)習(xí)更加完善。
(2)3種單一霧天濃度的數(shù)據(jù)集中,可以發(fā)現(xiàn),對每一種濃度的霧天測試場景,車道線識別率最高的都是其對應(yīng)霧天濃度值的霧天車道線數(shù)據(jù)集。這取決于訓(xùn)練集中的霧天特征,反映了訓(xùn)練集中霧天圖片的霧天濃度對深度學(xué)習(xí)訓(xùn)練結(jié)果霧天車道線檢測適應(yīng)性的影響,訓(xùn)練結(jié)果更加適合用于檢測與訓(xùn)練集中圖片的霧天濃度相近的霧天場景。
本文以CULane數(shù)據(jù)集為基礎(chǔ),將該數(shù)據(jù)集中的晴天圖片人工合成霧天圖片,共生成了107 451張帶標(biāo)簽的霧天車道線圖像,以此將原始CULane數(shù)據(jù)集規(guī)模擴充了1.8倍,從而建立了包含3種不同濃度霧天場景的新車道線數(shù)據(jù)集FoggyCULane,解決了深度學(xué)習(xí)車道線檢測研究領(lǐng)域中霧天數(shù)據(jù)集不足的問題。
本文研究結(jié)果表明,人工生成復(fù)雜場景圖片來擴充數(shù)據(jù)集的方法能顯著提高對復(fù)雜場景車道線的識別能力,在不同的薄霧、中間狀態(tài),以及濃霧(對應(yīng)衰減系數(shù)β分別為2,3,4)情況下,F(xiàn)oggyCULane數(shù)據(jù)集可將SCNN網(wǎng)絡(luò)的霧天識別精度從74.65%、51.41%和11.09%分別提升至86.65%、81.53%和70.41%。因此該方法的有效性得到充分證明,并且在霧濃度越高的狀況下提升效果越顯著;同時,對數(shù)據(jù)集的擴充也并不會對其他復(fù)雜場景的識別率帶來負(fù)面影響。
本文所提出的方法能夠有效提高霧天場景的車道線檢測識別率,適用于相較于高速公路更為復(fù)雜的城市道路場景;同時,將本文方法進行推廣,還能夠發(fā)展適用于例如夜間、雨天等其他不同類型的復(fù)雜場景的目標(biāo)識別方法。