潘峰,安啟超,刁奇,王瑞,馮肖雪
(1.北京理工大學(xué) 自動(dòng)化學(xué)院,北京 100081;2.昆明北理工產(chǎn)業(yè)技術(shù)研究院有限公司,云南,昆明 650101)
基于航拍圖像的道路提取研究在自然災(zāi)害急救、車輛導(dǎo)航、智能交通[1]等方面具有廣泛的應(yīng)用[2-3].近年來(lái),隨著計(jì)算機(jī)視覺技術(shù)的快速發(fā)展,基于視覺的道路提取技術(shù)成為機(jī)器視覺領(lǐng)域的重要熱點(diǎn),得到國(guó)內(nèi)外學(xué)者的廣泛關(guān)注.關(guān)于道路提取方面的研究,已經(jīng)有很多相關(guān)的方法提出.王鑫[4]提出使用最小二乘匹配算法,并融合模板匹配等算法來(lái)提取道路,該算法有較快的提取速度,但是對(duì)于道路數(shù)據(jù)集質(zhì)量要求較高.基于Canny邊緣提取算法進(jìn)行道路的提取[5],該方法對(duì)算子的依賴程度較高,對(duì)具有復(fù)雜背景的道路數(shù)據(jù)集沒(méi)有較好的適應(yīng)能力.基于光譜分析的主成分分析方法[6],由于存在窗口選擇最優(yōu)化的問(wèn)題,道路的提取缺乏較好的泛化能力;將光譜分析與幾何特征相結(jié)合的方法應(yīng)用到道路提取任務(wù)中[7],雖然解決了部分道路的分離,但是對(duì)于細(xì)小道路的提取,效果依舊不理想.近年來(lái),隨著深度學(xué)習(xí)技術(shù)的不斷發(fā)展,將深度學(xué)習(xí)方法應(yīng)用到道路提取任務(wù)中也越來(lái)越多.利用卷積神經(jīng)網(wǎng)絡(luò)(CNN)進(jìn)行道路提取[8-9],展示了卷積神經(jīng)網(wǎng)絡(luò)在道路提取方面的巨大潛力,但由于卷積神經(jīng)網(wǎng)絡(luò)需要對(duì)海量數(shù)據(jù)進(jìn)行計(jì)算,資源消耗非常巨大,而目前的數(shù)據(jù)標(biāo)注主要依靠人工來(lái)實(shí)現(xiàn),需要耗費(fèi)大量的時(shí)間和精力.
因此,目前對(duì)于道路的提取大都針對(duì)于結(jié)構(gòu)清晰的城市道路.該類型的城市道路作為結(jié)構(gòu)化道路,路面整潔,寬度較為統(tǒng)一,其光譜特征和幾何特征都較明顯,因此特征提取難度較小,數(shù)據(jù)標(biāo)注相對(duì)簡(jiǎn)單.而針對(duì)于復(fù)雜交錯(cuò)的城市道路,其道路存在嚴(yán)重的交叉現(xiàn)象,而且路面相對(duì)狹長(zhǎng),受制于光線的原因,道路的顏色特征與周圍建筑相似度極高,不利于道路的提取.農(nóng)田道路結(jié)構(gòu)復(fù)雜多變,道路結(jié)構(gòu)化程度較低,與周圍田地的顏色特征相似度極高,有時(shí)會(huì)存在樹木遮擋道路等干擾情況.多變曲折的道路類型,復(fù)雜的環(huán)境背景,還有小分辨率的狹長(zhǎng)道路,不利于特征提取,不僅數(shù)據(jù)標(biāo)注的難度隨之提高,也給道路的提取帶來(lái)困難.圖1(a)1(b)為Massachusetts城市道路,其道路具有狹長(zhǎng)、顏色特征不清晰等特點(diǎn);圖1(c)1(d)為中國(guó)云南省昆明市的農(nóng)田道路,其具有遮擋嚴(yán)重,邊界模糊,形狀不規(guī)則等特點(diǎn).以上兩類復(fù)雜的道路場(chǎng)景使得傳統(tǒng)的圖像處理算法無(wú)法較好的提取出道路,而采用深度學(xué)習(xí)技術(shù)可以更好的發(fā)掘圖像的上下文信息,自動(dòng)提取圖像特征信息,擺脫了傳統(tǒng)算法手動(dòng)提取特征復(fù)雜、繁瑣并且容易出錯(cuò)等弊端.因此,本文使用深度學(xué)習(xí)的方法解決復(fù)雜場(chǎng)景下的道路提取工作.
深度學(xué)習(xí)是基于圖像特征進(jìn)行分類的算法,特征的準(zhǔn)確性直接影響到分類的正確率.全卷積網(wǎng)絡(luò)(fully convolutional networks,F(xiàn)CN)[10]作為深度學(xué)習(xí)領(lǐng)域中最為經(jīng)典的語(yǔ)義分割網(wǎng)絡(luò),已經(jīng)取得了非常廣泛的應(yīng)用[11-12].全卷積神經(jīng)網(wǎng)絡(luò)以深度學(xué)習(xí)領(lǐng)域中經(jīng)典的分類網(wǎng)絡(luò)為基礎(chǔ),例如VGGNet[13]、ResNet[14],將分類網(wǎng)絡(luò)中的全連接層替換為卷積層,從而保留了圖像的空間結(jié)構(gòu)信息.與經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)不同,輸入FCN網(wǎng)絡(luò)的圖像尺寸可以改變.FCN網(wǎng)絡(luò)通過(guò)不斷的下采樣來(lái)提取圖像的語(yǔ)義信息,并在上采樣的過(guò)程中不斷地恢復(fù)空間信息.FCN通過(guò)編碼-解碼的結(jié)構(gòu)形式,使得輸入圖像能夠得到相同分辨率的預(yù)測(cè)輸出,對(duì)于每一個(gè)像素都產(chǎn)生了一個(gè)預(yù)測(cè),實(shí)現(xiàn)了端到端的訓(xùn)練.FCN網(wǎng)絡(luò)模型結(jié)構(gòu)如圖2所示.
如圖2所示,F(xiàn)CN對(duì)輸入圖像進(jìn)行5次的卷積+池化的組合操作,特征圖的尺寸縮小為原圖像的1/32,然后把CNN網(wǎng)絡(luò)中的全連接層替換成卷積層,此時(shí)特征圖的數(shù)量改變但是尺寸大小不變,依然為原圖的1/32,但圖像不再稱為特征圖而是為heatMap(熱圖),最后FCN進(jìn)行上采樣操作,共有3種上采樣方式:
① FCN32s:對(duì)于卷積層7進(jìn)行32倍的上采樣得到輸出;
② FCN16s:將卷積層7進(jìn)行2倍的上采樣,與池化層4進(jìn)行1∶1融合后再進(jìn)行16倍的上采樣得到輸出;
③ FCN8s:將FCN16s的特征圖進(jìn)行2倍的上采樣,與池化層3進(jìn)行1∶1融合后進(jìn)行8倍的上采樣得到輸出.
全卷積網(wǎng)絡(luò)采用了跳躍連接的方法,在上采樣的特征融合過(guò)程中,將下采樣過(guò)程中得到的不同特征圖按照相同的融合系數(shù),等比例疊加,并通過(guò)反卷積得到與輸入圖片相同尺寸的輸出,來(lái)得到更加準(zhǔn)確的分割效果.圖3是由傳統(tǒng)的FCN8s卷積神經(jīng)網(wǎng)絡(luò)提取的道路結(jié)果,可以看出,F(xiàn)CN8s對(duì)于農(nóng)田道路或者是城市道路的整體提取有不錯(cuò)的效果,但是對(duì)于細(xì)節(jié)的處理卻并不好,存在道路提取斷裂、細(xì)節(jié)處理粗糙等問(wèn)題.通過(guò)對(duì)于卷積層的可視化展示[15](如圖4所示),可以明顯發(fā)現(xiàn),不同的卷積層對(duì)于道路的語(yǔ)義信息提取有很大的差異.深層網(wǎng)絡(luò)帶有更多的語(yǔ)義信息,而淺層網(wǎng)絡(luò)更多展示的是空間信息[16].在下采樣的過(guò)程中,連續(xù)的卷積和池化操作,將特征圖分辨率縮小的同時(shí),也丟失了空間信息.采用空洞卷積的操作雖然可以保證特征圖的分辨率[17-18],但是會(huì)產(chǎn)生大量的高分辨率特征圖,無(wú)論從計(jì)算量還是存儲(chǔ)方面,都是巨大的負(fù)擔(dān).而由于傳統(tǒng)的等比例融合方法對(duì)特征的處理過(guò)于簡(jiǎn)單,忽視了不同層級(jí)的卷積層提取的特征信息的差異.因此,本文對(duì)于不同特征圖的模式特征,結(jié)合粒子群優(yōu)化算法[19],設(shè)計(jì)了不同比例的多尺度特征融合方法,更好地對(duì)空間信息和語(yǔ)義信息進(jìn)行選擇,以提高全卷積神經(jīng)網(wǎng)絡(luò)的表現(xiàn)性能.
隨著網(wǎng)絡(luò)深度的增加,網(wǎng)絡(luò)信息的提取逐步由空間信息向語(yǔ)義信息過(guò)渡.面對(duì)不同層之間提取的特征的差異,需要在上采樣的特征融合過(guò)程中,對(duì)特征圖的融合比重進(jìn)行差異選擇.因此,本文在基于傳統(tǒng)的全卷積神經(jīng)網(wǎng)絡(luò)FCN8s的基礎(chǔ)上,對(duì)其上采樣過(guò)程中的特征圖進(jìn)行了不同比例的融合,將其融合比例系數(shù)作為超參數(shù),引入粒子群算法來(lái)優(yōu)化融合比例系數(shù),來(lái)實(shí)現(xiàn)不同比例的多尺度特征融合.同時(shí),對(duì)于FCN8s,采取了不同的上采樣方式:傳統(tǒng)的FCN是將FCN16s的特征圖進(jìn)行2倍的上采樣后,與池化層3進(jìn)行融合;改進(jìn)后的FCN8s直接將池化層7進(jìn)行4倍的上采樣,將池化層4進(jìn)行2倍的上采樣后,與池化層3進(jìn)行融合.
改進(jìn)后的FCN模型如圖5所示.
對(duì)于改進(jìn)的FCN8s,融合方式如式(1)為
R8s=4p7φa+2p4φb+p3φc,
(1)
式中:
φa+φb+φc=1.
(2)
粒子群算法是一種啟發(fā)式優(yōu)化算法[20],源于鳥群捕食,充分利用個(gè)體信息的共享,使群體求解過(guò)程從無(wú)序轉(zhuǎn)變成有序,最終找到問(wèn)題的最優(yōu)解[19].在粒子群算法優(yōu)化迭代過(guò)程中,每一個(gè)粒子i都會(huì)計(jì)算自身的適應(yīng)度,統(tǒng)計(jì)個(gè)體經(jīng)歷過(guò)的最佳位置pbesti和全局的最佳位置pbestg并不斷地更新自身,一直到適應(yīng)度的數(shù)值達(dá)到一定的設(shè)置要求或者是迭代的次數(shù)達(dá)到上限時(shí)粒子群算法的尋優(yōu)結(jié)束.在任意k+1時(shí)刻,第i個(gè)粒子的第d維的速度更新公式定義為
(3)
位置更新公式定義為
(4)
利用粒子群算法來(lái)優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)參數(shù),已經(jīng)有許多成功的案例.Khalifa等[21]利用粒子群算法來(lái)優(yōu)化卷積核初始化,提高了肺部腫瘤的識(shí)別準(zhǔn)確率.Mnih等[22]利用粒子群算法來(lái)設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),實(shí)驗(yàn)證明取得了良好的效果.
實(shí)驗(yàn)以改進(jìn)后的FCN8s網(wǎng)絡(luò)為基礎(chǔ),將式(1)中的φa,φb,φc作為超參數(shù),構(gòu)成例子群算法的初始種群.采用不同規(guī)模數(shù)據(jù)集下的真實(shí)標(biāo)簽圖像和預(yù)測(cè)圖像的平均交并比mIOU(mean intersection over union)總和作為粒子群的適應(yīng)度函數(shù),設(shè)置速度區(qū)間為[-1,1],對(duì)于例子的位置限制如式(2)所示.在速度和搜索空間上對(duì)種群個(gè)體進(jìn)行隨機(jī)初始化,種群規(guī)模設(shè)置為4.粒子群優(yōu)化算法的具體內(nèi)容如圖6所示.
本次實(shí)驗(yàn)分別應(yīng)用城市道路數(shù)據(jù)集和農(nóng)田道路數(shù)據(jù)集來(lái)進(jìn)行網(wǎng)絡(luò)性能的驗(yàn)證.針對(duì)農(nóng)田道路采集了500張航拍圖像,每張航拍圖像經(jīng)過(guò)預(yù)處理后分辨率為1 500×1 500.由于計(jì)算資源的限制,對(duì)于預(yù)處理后的圖片采用隨機(jī)分割的方法,將每張航拍圖像隨機(jī)剪裁得到15張256×256大小的圖像,并將其分為訓(xùn)練集、交叉驗(yàn)證集和測(cè)試集3部分,分別有9 895,334和286張,數(shù)據(jù)集命名為FROBIT農(nóng)田道路數(shù)據(jù)集.
城市數(shù)據(jù)集采用的是Volodymyr Mnih所創(chuàng)建的城市道路數(shù)據(jù)集[23],該數(shù)據(jù)集包含928張訓(xùn)練集,14張交叉驗(yàn)證集和49張測(cè)試集,圖像的分別率為1 500×1 500.對(duì)于城市道路數(shù)據(jù)集,采取與鄉(xiāng)村道路數(shù)據(jù)集相同的預(yù)處理操作.最終得到8 000張測(cè)試集和210張測(cè)試集.農(nóng)田道路數(shù)據(jù)集和城市道路數(shù)據(jù)集展示如圖7所示.
農(nóng)田道路數(shù)據(jù)集的制作過(guò)程如圖8所示.首先對(duì)采集到的圖像進(jìn)行尺寸調(diào)整,并利用labelme[24]軟件進(jìn)行二分類標(biāo)簽的制作,將標(biāo)簽中的道路部分的像素值置為255,其余的非道路部分像素值置為0.之后,整理好圖像和標(biāo)簽,對(duì)圖片和標(biāo)簽進(jìn)行數(shù)據(jù)增強(qiáng)操作處理,隨機(jī)將其劃分為訓(xùn)練集、交叉驗(yàn)證集和測(cè)試集.至此完成了對(duì)于FROBIT數(shù)據(jù)集的初步建立.最后,將對(duì)于不同的神經(jīng)網(wǎng)絡(luò)和任務(wù)需求,可以對(duì)FROBIT數(shù)據(jù)集進(jìn)行必要的修正和改動(dòng).
本次實(shí)驗(yàn)中,改進(jìn)的FCN8s算法采用TensorFlow[25]深度學(xué)習(xí)框架,粒子群算法采用Python編寫.采用PyCharm作為編輯器,實(shí)驗(yàn)平臺(tái)的配置如下:CPU為Intel(R)Core(TM)i7-7800X 3.50 GHz,RAM為16.0 GB,GPU為Nvidia 1080Ti(11 GB).實(shí)驗(yàn)數(shù)據(jù)集包括上述的FROBIT農(nóng)田道路數(shù)據(jù)集和城市道路數(shù)據(jù)集.其中FROBIT數(shù)據(jù)集中訓(xùn)練集有9 895張,驗(yàn)證集有334張.城市道路數(shù)據(jù)集采用與FROBIT數(shù)據(jù)集相同的預(yù)處理操作,其中訓(xùn)練集為8 000張,驗(yàn)證集為210張.網(wǎng)絡(luò)的輸入圖像大小是256×256,網(wǎng)絡(luò)采用交叉熵?fù)p失函數(shù),A-dam算法優(yōu)化損失函數(shù)[26],采用Relu函數(shù)[27]來(lái)作為激活函數(shù).評(píng)價(jià)指標(biāo)采用mIOU,計(jì)算2個(gè)標(biāo)簽真實(shí)值(集合A)和預(yù)測(cè)值(集合B)的交集和并集的比值,計(jì)算公式為
(5)
實(shí)驗(yàn)第一階段,采用粒子群算法得到優(yōu)化參數(shù);實(shí)驗(yàn)的第二階段是以實(shí)驗(yàn)得到的優(yōu)化參數(shù)作為融合比例系數(shù)與傳統(tǒng)的FCN8s網(wǎng)絡(luò)來(lái)進(jìn)行實(shí)驗(yàn)對(duì)比.
實(shí)驗(yàn)采用2.2設(shè)計(jì)的算法,實(shí)現(xiàn)并得到了基于粒子群算法的優(yōu)化參數(shù).優(yōu)化參數(shù)如表1所示.
表1 經(jīng)過(guò)粒子群算法得到的優(yōu)化融合比例系數(shù)
Tab.1 Optimized fusion scale factor obtained by particle swarm optimization
數(shù)據(jù)集φaφbφcFROBIT0.500.290.210.570.280.150.510.320.17Massachusetts0.210.260.530.500.300.200.320.240.44
表1中,分別針對(duì)于FROBIT數(shù)據(jù)集和城市道路數(shù)據(jù)集,選取了經(jīng)過(guò)PSO優(yōu)化后,適應(yīng)度排名前3的3組融合比例系數(shù)作為展示,同時(shí),表1中的參數(shù)也將作為后續(xù)的對(duì)比實(shí)驗(yàn)參數(shù).
實(shí)驗(yàn)首先以基礎(chǔ)網(wǎng)絡(luò)分別對(duì)上述的道路數(shù)據(jù)集進(jìn)行道路提取[28].然后以改進(jìn)的FCN網(wǎng)絡(luò)進(jìn)行道路提取.融合比例系數(shù)及其mIOU如表2所示.
表2 融合系數(shù)與mIOU對(duì)比
表2展示的是在不同的數(shù)據(jù)集下,通過(guò)粒子群算法優(yōu)化得到的較好的融合比例系數(shù)與基礎(chǔ)模型的mIOU結(jié)果,測(cè)試結(jié)果是在154張測(cè)試數(shù)據(jù)集下得到的結(jié)果.表2中mIOU表明,通過(guò)粒子群算法優(yōu)化反卷積層的融合比例,可以有效提高FCN網(wǎng)絡(luò)的表現(xiàn).得到的測(cè)試效果如圖9所示.
圖9同樣顯示出,通過(guò)粒子群算法進(jìn)行不同比例的融合,能夠有效利用不同特征圖提取的不同特征,從而提升基礎(chǔ)網(wǎng)絡(luò)模型的預(yù)測(cè)效果.相對(duì)于傳統(tǒng)的FCN8s網(wǎng)絡(luò)模型,改進(jìn)后的網(wǎng)絡(luò)對(duì)于道路的預(yù)測(cè)效果更佳出色,提高了道路提取的延續(xù)性,對(duì)于道路的細(xì)節(jié)提取也更加完善.針對(duì)于鄉(xiāng)村道路改進(jìn)后的模型預(yù)測(cè)效果不僅更加出色,而且能夠?qū)?biāo)簽集當(dāng)中沒(méi)有標(biāo)注的道路,起到進(jìn)一步優(yōu)化提取的效果,如圖10所示.
圖11,圖12展示的是mIOU的對(duì)比結(jié)果圖,橫坐標(biāo)為測(cè)試數(shù)據(jù)集的數(shù)量,縱坐標(biāo)為mIOU的準(zhǔn)確率.圖中最右端的結(jié)果即為表2中的測(cè)試結(jié)果,也即圖11,圖12中的最右端結(jié)果是在154張測(cè)試集下取得的結(jié)果.
由圖11,圖12可以看出,相比于傳統(tǒng)的等比例融合的FCN網(wǎng)絡(luò),不同比例融合的FCN網(wǎng)絡(luò)模型準(zhǔn)確率有了明顯的提高.經(jīng)過(guò)粒子群算法優(yōu)化得到的融合比例系數(shù)模型的表現(xiàn)要優(yōu)于傳統(tǒng)的FCN模型.綜合以上實(shí)驗(yàn)結(jié)果,本文對(duì)其背后的原因進(jìn)行了分析,由于各個(gè)特征圖所包含的特征信息量存在差異,如圖4所示.而語(yǔ)義分割的核心點(diǎn)是對(duì)于提取目標(biāo)的空間信息和分類信息的充分利用.針對(duì)于FROBIT數(shù)據(jù)集,如圖4所示,卷積層7和池化層4對(duì)于農(nóng)田道路的空間信息和分類信息的提取要優(yōu)于池化層3,更加直觀體現(xiàn)出道路的特征信息,因此融合比例系數(shù)偏向于卷積層7和池化層4,可以更好地利用卷積層7和池化層4所提取到的特征信息,進(jìn)而得到更加出色的農(nóng)田道路語(yǔ)義分割效果.而針對(duì)于城市道路數(shù)據(jù)集,池化層3與卷積層7對(duì)于城市道路特征信息的提取要優(yōu)于池化層4,池化層4對(duì)于城市道路的特征提取體現(xiàn)的并不直觀,因此,融合比例系數(shù)也偏向于池化層3與卷積層7,實(shí)現(xiàn)對(duì)于城市道路更好的語(yǔ)義分割效果.對(duì)比卷積網(wǎng)絡(luò)對(duì)于城市道路數(shù)據(jù)集和FROBIT數(shù)據(jù)集特征提取的可視化結(jié)果(圖4)可以看出,針對(duì)于不同的數(shù)據(jù)集,不同卷積層提取到的特征有很大差異,因此,對(duì)于上采樣中的特征融合,不能夠僅僅采用簡(jiǎn)單的等比例融合,而是要針對(duì)不同的特征進(jìn)行差異化的融合.對(duì)于語(yǔ)義信息丟失嚴(yán)重的特征層給予較小的融合比例系數(shù),而對(duì)于語(yǔ)義信息提取良好的特征層賦予較大的融合比例系數(shù).將融合比例系數(shù)作為超參數(shù),利用粒子群優(yōu)化算法進(jìn)行優(yōu)化,將不同特征圖之間所包含的差異體現(xiàn)出來(lái),并針對(duì)不同的數(shù)據(jù)集采用不同的融合比例系數(shù)將特征信息進(jìn)行融合,使得改進(jìn)后的網(wǎng)絡(luò)模型達(dá)到了更加出色的提取效果.
本文主要?jiǎng)?chuàng)新之處在于提供了一個(gè)新的非結(jié)構(gòu)化農(nóng)田道路數(shù)據(jù)集,并對(duì)于農(nóng)田道路和復(fù)雜城市道路的提取復(fù)雜性給予了充分解釋.對(duì)傳統(tǒng)FCN神經(jīng)網(wǎng)絡(luò)的上采樣過(guò)程進(jìn)行改進(jìn),基于粒子群算法設(shè)計(jì)了不同比例的反卷積層進(jìn)行融合算法,并結(jié)合卷積神經(jīng)網(wǎng)絡(luò)的可視化結(jié)果,分析了融合比例系數(shù)差異化選擇的原因.通過(guò)將改進(jìn)后的算法與傳統(tǒng)的FCN神經(jīng)網(wǎng)絡(luò)在農(nóng)田道路數(shù)據(jù)集FROBIT以及城市道路數(shù)據(jù)集上進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果表明改進(jìn)后的FCN神經(jīng)網(wǎng)絡(luò)的有效性,并在某種程度上啟發(fā)了特征比例融合的新的可行性.文中提出的多比例融合算法,與自注意力模型有著很多的共通之處,接下來(lái)文章也將圍繞二者之間的關(guān)聯(lián)展開進(jìn)一步的研究與分析.