李海豐, 范天嘯, 黃 睿, 侯謹(jǐn)毅, 桂仲成
(1.中國(guó)民航大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 天津 300300; 2.中國(guó)民航大學(xué) 民航智慧機(jī)場(chǎng)理論與 系統(tǒng)重點(diǎn)實(shí)驗(yàn)室 天津 300300; 3.成都圭目機(jī)器人有限公司 四川 成都 610100)
長(zhǎng)期以來(lái),機(jī)場(chǎng)跑道表觀結(jié)構(gòu)病害一直是影響機(jī)場(chǎng)飛行器安全起降的嚴(yán)重隱患。其中,道面裂縫是主要的機(jī)場(chǎng)道面結(jié)構(gòu)病害之一。傳統(tǒng)上,機(jī)場(chǎng)跑道裂縫的檢查工作主要依賴人工目視巡檢,檢測(cè)效率低下,檢測(cè)成本較高,且極易出現(xiàn)誤檢、漏檢等情況。為此,設(shè)計(jì)一種準(zhǔn)確度高、魯棒性好的機(jī)場(chǎng)跑道裂縫分割算法對(duì)于機(jī)場(chǎng)的安全運(yùn)營(yíng)、跑道養(yǎng)護(hù)等工作均有著深遠(yuǎn)的意義。
早期的裂縫分割算法主要依賴傳統(tǒng)圖像處理方式,此類算法通常從形態(tài)學(xué)出發(fā),首先對(duì)含有病害的圖像通過(guò)濾波算法進(jìn)行去噪處理,隨后設(shè)計(jì)不同的閾值分割算法,通過(guò)提取裂縫的邊緣特征,對(duì)裂縫進(jìn)行分割。如Li等[1]提出了基于二次閾值分割的機(jī)場(chǎng)道面裂紋檢測(cè)方法,使用改進(jìn)的Otsu閾值分割算法去除道面上的標(biāo)線,并用自適應(yīng)迭代閾值分割算法對(duì)道面裂縫進(jìn)行分割。Noh等[2]通過(guò)使用模糊C均值聚類的方式對(duì)混凝土表面的裂縫進(jìn)行檢測(cè),使用了不同的濾波器對(duì)裂縫的雜波進(jìn)行過(guò)濾。此類算法通常依賴人工設(shè)計(jì)特征,存在泛化性不高的問(wèn)題[3],不能兼顧所有裂縫特征,難以在真正的工程應(yīng)用中落地。
在后續(xù)研究中,分割任務(wù)通常借助卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)來(lái)實(shí)現(xiàn)。經(jīng)典的語(yǔ)義分割網(wǎng)絡(luò)有FCN[4]、U-net[5]、SegNet[6]、DeepLab[7]等模型,這些模型通常使用編碼器-解碼器(encoder-decoder)結(jié)構(gòu),其中,encoder負(fù)責(zé)提取圖像的語(yǔ)義信息,而decoder負(fù)責(zé)恢復(fù)特征圖的原始尺寸,得到模型預(yù)測(cè)結(jié)果。這啟發(fā)了研究人員在裂縫分割任務(wù)上探索基于CNN的分割模型,Zou等[8]提出了DeepCrack,這是一種基于CNN的裂縫檢測(cè)模型,網(wǎng)絡(luò)通過(guò)學(xué)習(xí)裂縫的高級(jí)特征表示來(lái)進(jìn)行自動(dòng)裂紋檢測(cè)。K?nig等[9]提出了一種結(jié)合殘差網(wǎng)絡(luò)和門控注意力的全卷積 U-net 網(wǎng)絡(luò),用于對(duì)路面裂縫進(jìn)行分割。
盡管CNN方法對(duì)各類裂縫分割任務(wù)有一定的效果,但CNN方法有兩個(gè)先天不足。首先,受限于卷積核大小,CNN僅能提取鄰近像素空間內(nèi)的特征,缺乏對(duì)全局信息的捕獲能力;其次,CNN中使用的卷積核形狀較為固定,難以適應(yīng)不同類型的圖像特征。由于機(jī)場(chǎng)跑道裂縫常常形態(tài)多樣、長(zhǎng)短不一,且在分布上呈稀疏特征,一般的CNN方法難以提取裂縫特征的全貌,需要依賴全局語(yǔ)義特征作為支撐。如何使網(wǎng)絡(luò)充分提取并利用裂縫的全局語(yǔ)義信息,成為改善裂縫分割效果的關(guān)鍵因素。
近年來(lái),transformer模型[10]在自然語(yǔ)言處理領(lǐng)域的許多任務(wù)上取得了非凡的成績(jī),Dosovitskiy等[11]將transformer應(yīng)用到視覺(jué)領(lǐng)域,提出了vision transformer(ViT)方法,ViT是一種基于自注意力(self-attention)機(jī)制的特征提取器,該模型改用堆疊多頭self-attention的方式來(lái)實(shí)現(xiàn)對(duì)圖像特征的提取,在大規(guī)模數(shù)據(jù)集上展現(xiàn)出優(yōu)于CNN的效果。Ho等[12]提出了用軸向注意力(axial-attention)計(jì)算特征圖中各個(gè)位置與其所在同一方向上其他位置間的注意力關(guān)系,減少了自注意力機(jī)制的運(yùn)算量。
本文提出了聯(lián)合self-attention與axial-attention的機(jī)場(chǎng)跑道裂縫分割網(wǎng)絡(luò)(CSA-net)。CSA-net采用了encoder-decoder模式,并在encoder的第一層使用基于可變形卷積[13]的殘差模塊提取有效的裂縫特征,設(shè)計(jì)self-attention[14]與axial-attention[12,15]聯(lián)合的特征編碼模塊用于增強(qiáng)網(wǎng)絡(luò)對(duì)細(xì)小裂縫的表達(dá)能力。在decoder階段,使用self-attention機(jī)制構(gòu)建的transformer模塊進(jìn)行上采樣操作,在恢復(fù)特征圖大小的同時(shí),減少特征信息的丟失。本文采用APD07機(jī)場(chǎng)跑道裂縫分割數(shù)據(jù)集,對(duì)比了5個(gè)不同的裂縫分割模型。CSA-net在APD07上的F1-score為78.91%,優(yōu)于其他對(duì)比方法。本文的主要貢獻(xiàn)為:1) 通過(guò)聯(lián)合self-attention與axial-attention,提出了一種新的transformer模塊;2) 使用該模塊構(gòu)建了裂縫分割網(wǎng)絡(luò),實(shí)現(xiàn)對(duì)裂縫的精細(xì)化分割;3) 通過(guò)不同損失函數(shù)加權(quán),解決了由于機(jī)場(chǎng)跑道裂縫正、負(fù)樣本不均衡導(dǎo)致的分割效果差的問(wèn)題。
本文提出的CSA-net主要由4部分組成:帶有可變形卷積[13]的殘差模塊、self-attention模塊[11]、axial-attention模塊[12]與transformer decoder模塊[14],并借鑒U-net模型堆疊而成,網(wǎng)絡(luò)的詳細(xì)結(jié)構(gòu)如圖1(a)所示。其中包括5個(gè)encoder層與4個(gè)decoder層,第一個(gè)encoder層由兩個(gè)帶有可變形卷積的殘差模塊堆疊而成,使用可變形卷積,可以從形態(tài)各異的裂縫中提取病害的普遍特征,隨后緊跟4個(gè)encoder層,用于在不同尺度的特征圖上對(duì)裂縫的特征進(jìn)行提取。每個(gè)encoder層包括一組self-attention模塊與一組axial-attention模塊。其中,self-attention模塊可以提取裂縫的全局語(yǔ)義特征,而axial-attention則專注于提取橫向或縱向裂縫的特征。網(wǎng)絡(luò)通過(guò)4層Transformer decoder恢復(fù)特征圖的原始尺寸,通過(guò)融合不同尺度下的特征信息,增強(qiáng)網(wǎng)絡(luò)對(duì)裂縫細(xì)節(jié)的分割能力。下面針對(duì)每個(gè)模塊進(jìn)行詳細(xì)說(shuō)明。
圖1 網(wǎng)絡(luò)模型結(jié)構(gòu)圖Figure 1 Network model structure diagram
在CNN方法中通常使用固定形狀與大小的卷積核來(lái)提取圖像特征,對(duì)于常規(guī)形態(tài)的物體,該方法有著較好的特征提取能力,但機(jī)場(chǎng)跑道裂縫病害通常在形態(tài)和方向上有著不同的分布,固定形狀的卷積核對(duì)幾何形變的適應(yīng)能力較差,不能很好地提取此類病害的特征。本文通過(guò)引入可變形卷積模塊來(lái)解決這一問(wèn)題。
可變形卷積模塊在感受野中加入了對(duì)偏移量的學(xué)習(xí),通過(guò)在普通卷積核中加入偏移量,可以使得卷積核不再是固定的方形。具體來(lái)說(shuō),一般的卷積操作對(duì)于輸入特征圖x中p0位置,其輸出特征圖中相同位置的計(jì)算方式為
(1)
其中:G為固定大小和形狀的卷積核;w(·)則為卷積核中某位置的權(quán)重參數(shù)。而可變形卷積是在標(biāo)準(zhǔn)卷積的常規(guī)網(wǎng)格采樣操作的基礎(chǔ)上增加了Δpn的偏移量,即公式(1)演化為
(2)
其中:Δpn是可以學(xué)習(xí)的網(wǎng)絡(luò)參數(shù),通過(guò)訓(xùn)練這一模塊,可變形卷積的卷積核可以變換為貼近裂縫的形狀,使得感受野中的區(qū)域始終是需要重點(diǎn)關(guān)注的跑道裂縫病害區(qū)域。
如圖1(b)所示,算法在模型淺層使用帶有可變形卷積的殘差模塊來(lái)提取裂縫的特征,由于網(wǎng)絡(luò)較淺,此處提取的特征多為裂縫的初級(jí)語(yǔ)義信息,例如裂縫的紋理、邊緣等信息。在此處使用可變形卷積,可以有效利用裂縫的形態(tài)差異信息提取裂縫的特征。
由于機(jī)場(chǎng)跑道裂縫通常較為狹長(zhǎng),使用卷積操作難以提取裂縫特征的全貌,這也是語(yǔ)義分割算法在裂縫分割任務(wù)中效果不佳的原因之一,本文引入了self-attention模塊,通過(guò)self-attention機(jī)制捕獲裂縫的全局語(yǔ)義信息,來(lái)改善對(duì)裂縫的分割效果。
與CNN不同,self-attention通過(guò)計(jì)算特征圖上某個(gè)點(diǎn)與所有點(diǎn)之間的相關(guān)關(guān)系來(lái)反映特征的相關(guān)性。這樣,self-attention具有全局感受野且善于捕捉圖像的長(zhǎng)程依賴,能夠從完整的圖像上、下文信息中提取圖像的語(yǔ)義信息。具體來(lái)說(shuō),對(duì)于一張?zhí)卣鲌DF∈RC×H×W,其中:H、W分別表示特征圖的高度和寬度;C表示特征圖的通道數(shù)。Self-attention通過(guò)一系列1×1卷積將F中的每個(gè)位置投影為3個(gè)長(zhǎng)度為d的隱向量q,k,v∈R1×d,通過(guò)這3個(gè)向量,可以計(jì)算出某個(gè)位置與其他位置間的相關(guān)關(guān)系。特征圖F中某點(diǎn)(i,j)的注意力值計(jì)算方式為
(3)
故對(duì)于特征圖F中的所有位置構(gòu)成的self-attention矩陣的計(jì)算方式為
(4)
其中:Q、K、V表示特征圖F上所有位置(i,j)的隱向量q、k、v所組成的隱向量矩陣;Q,K,V∈Rn×d,n=H×W。
為了使得self-attention機(jī)制能夠利用特征圖區(qū)域間的語(yǔ)義差異,通過(guò)學(xué)習(xí)位置偏差信息,加強(qiáng)self-attention機(jī)制對(duì)于特征圖整體的建模能力,在self-attention機(jī)制中加入位置編碼信息。位置編碼信息是一組可以學(xué)習(xí)的參數(shù),用以表征特征圖區(qū)域間的相對(duì)位置關(guān)系。對(duì)于特征圖中的任意兩個(gè)點(diǎn)i(xi,yi),j(xj,yj),它們之間的相對(duì)位置編碼信息li, j可以表示為
(5)
其中:rW和rH是一組可以學(xué)習(xí)的隱向量,分別與xj-xi間的相對(duì)寬度和yj-yi間的相對(duì)高度有關(guān)。將上述所有的信息融合在整張?zhí)卣鲌DF上,其self-attention矩陣可以表示為
(6)
其中:SH和SW為特征圖F中所有點(diǎn)對(duì)i(xi,yi),j(xj,yj)構(gòu)成的相對(duì)位置編碼信息li, j所組成的相對(duì)位置編碼矩陣。
關(guān)于self-attention模塊的計(jì)算流程如圖2所示,其中RW、RH為特征圖F上的所有位置(i,j)的隱向量rW、rH所構(gòu)成的隱向量矩陣。
圖2 Self-attention模塊計(jì)算流程Figure 2 The calculation process of the self-attention module
這樣,通過(guò)計(jì)算特征圖中每個(gè)位置與全局的注意力關(guān)系,網(wǎng)絡(luò)可以不斷學(xué)習(xí)和優(yōu)化同一特征圖中不同區(qū)域間的相關(guān)關(guān)系和重要性差異,以此來(lái)捕捉長(zhǎng)裂縫的全局語(yǔ)義特征,這種語(yǔ)義特征可以很好地幫助網(wǎng)絡(luò)理解裂縫的形態(tài)。
機(jī)場(chǎng)跑道裂縫除了具有形態(tài)和長(zhǎng)度方面的特點(diǎn)外,也常常在方向上有著特殊的分布,一般來(lái)說(shuō),在機(jī)場(chǎng)跑道的水平和垂直方向往往更容易出現(xiàn)裂縫?;谶@一發(fā)現(xiàn),本文引入了axial-attention模塊,通過(guò)axial-attention機(jī)制,重點(diǎn)關(guān)注機(jī)場(chǎng)跑道的水平方向和垂直方向裂縫的語(yǔ)義特征。
Axial-attention屬于注意力的一種形式,但其特點(diǎn)是在計(jì)算特征圖中某一點(diǎn)與其他區(qū)域的相關(guān)關(guān)系時(shí),僅關(guān)注與該點(diǎn)處于同一水平或垂直方向區(qū)域的語(yǔ)義信息。對(duì)于特征圖上某點(diǎn)(i,j)在寬度方向的注意力值可以表示為
(7)
同理,在高度方向上的axial-attention與之類似。
同樣地,為了使得本模塊可以利用不同區(qū)域間的相對(duì)位置偏差關(guān)系,更好地提取空間中的結(jié)構(gòu)信息,本文在axial-attention模塊中加入相對(duì)位置編碼,用于強(qiáng)化特征圖上不同區(qū)域之間的位置關(guān)系。具體來(lái)說(shuō),與q、k、v向量相似,用rq,rk,rv∈Rw×w表示該特征圖中寬度方向的位置編碼信息矩陣。于是,特征圖中某個(gè)位置(i,j)在寬度方向的axial-attention最終表示為
(8)
圖3 Axial-attention模塊的計(jì)算流程Figure 3 The calculation process of the axial-attention module
圖3展示了axial-attention模塊的計(jì)算流程,不同方向的axial-attention分別可以對(duì)裂縫的橫向或縱向特征進(jìn)行提取,本文通過(guò)不同方向的axial-attention模塊堆疊的方式提取裂縫在方向上的特征,其中Rq、Rk、Rv表示特征圖F上的所有位置(i,j)的位置編碼信息rq、rk、rv所構(gòu)成的位置編碼矩陣。
如圖1(c)所示,本文使用聯(lián)合self-attention與axial-attention的方式構(gòu)建transformer模塊,用于裂縫全局語(yǔ)義信息的提取,其中self-attention用于提取裂縫的全局語(yǔ)義信息,而axial-attention則專注于裂縫在方向上的特征。本文通過(guò)多個(gè)transformer模塊堆疊的方式,加強(qiáng)對(duì)裂縫特征提取的能力。
機(jī)場(chǎng)跑道裂縫普遍寬度較窄,網(wǎng)絡(luò)經(jīng)過(guò)多次encoder降采樣操作后,容易丟失裂縫的細(xì)節(jié)信息,難以在decoder階段還原裂縫的全貌[16]??紤]這一原因,在設(shè)計(jì)decoder網(wǎng)絡(luò)時(shí),本文采用級(jí)聯(lián)不同特征尺度的方式[17-19]還原裂縫形態(tài)。如圖1(d)所示,在decoder的每一階段,網(wǎng)絡(luò)首先通過(guò)transformer decoder的方式將該階段的特征圖恢復(fù)成下一階段期望的輸出尺寸,隨后,通過(guò)級(jí)聯(lián)的方式融合兩個(gè)階段的特征圖,并通過(guò)一個(gè)殘差模塊得到該層最終的輸出結(jié)果。通過(guò)上述操作,網(wǎng)絡(luò)融合了不同尺度間的分割效果,對(duì)于細(xì)小裂縫,這樣的設(shè)計(jì)方式可以有效減少裂縫細(xì)節(jié)的丟失,獲得更加精細(xì)的分割效果。圖4展示的是transformer decoder模塊在不同階段對(duì)機(jī)場(chǎng)跑道真實(shí)場(chǎng)景分割效果。可以看到,在decoder的初始階段,由于經(jīng)過(guò)多次特征提取,模型的預(yù)測(cè)結(jié)果保留了豐富的語(yǔ)義特征,并過(guò)濾了大部分的噪聲,但也損失了較多的邊緣細(xì)節(jié)信息。與之相反,深層decoder對(duì)于特征的邊緣信息保留較多。通過(guò)融合不同特征尺度下的預(yù)測(cè)結(jié)果,模型可以同時(shí)學(xué)習(xí)邊緣細(xì)節(jié)信息與深層語(yǔ)義信息,抑制特征噪聲,達(dá)到精確的分割效果。
圖4 網(wǎng)絡(luò)在不同解碼層的預(yù)測(cè)結(jié)果Figure 4 The prediction results of the network in different decoder layers
2.1.1對(duì)比方法 本文選用FCN[4]、U-net[5]、DeepLab-v3+[20]、Axial DeepLab[15]與DeepCrack[8]作為對(duì)比。其中,FCN是語(yǔ)義分割領(lǐng)域的經(jīng)典模型,U-net則是當(dāng)今語(yǔ)義分割網(wǎng)絡(luò)的經(jīng)典設(shè)計(jì)范式。DeepLab-v3+是DeepLab語(yǔ)義分割系列的最新模型,網(wǎng)絡(luò)使用Xception模塊[21]提取特征,并引入了空洞空間卷積池化金字塔模塊。在Axial DeepLab中,網(wǎng)絡(luò)通過(guò)使用axial-attention的方式,降低了transformer的模型復(fù)雜度,同時(shí)改進(jìn)了語(yǔ)義分割的效果。DeepCrack是一種專門針對(duì)裂縫場(chǎng)景實(shí)現(xiàn)語(yǔ)義分割的模型。
2.1.2數(shù)據(jù)集 本文中所有實(shí)驗(yàn)所使用的數(shù)據(jù)集稱為APD07,原始的圖像由成都圭目機(jī)器人有限公司使用機(jī)場(chǎng)道面安全檢測(cè)機(jī)器人在國(guó)內(nèi)各大機(jī)場(chǎng)實(shí)際采集獲得,該道面檢測(cè)機(jī)器人搭載了可見(jiàn)光相機(jī)、光照系統(tǒng)與差分GPS等模塊,其外觀如圖5所示。機(jī)器人采集的圖像原始像素尺寸為900×1 800,共2 000張。經(jīng)過(guò)人工像素級(jí)標(biāo)注后,將原始圖像裁切成符合網(wǎng)絡(luò)輸入的像素尺寸(256×256),并將不含裂縫病害的圖像剔除,最終共獲得圖像27 691張。將該數(shù)據(jù)集隨機(jī)劃分為訓(xùn)練集和測(cè)試集,訓(xùn)練集與測(cè)試集比例為9∶1。
圖5 機(jī)場(chǎng)道面安全檢測(cè)機(jī)器人Figure 5 Airport road surface safety inspection robot
2.1.3評(píng)價(jià)指標(biāo) 本文采用三個(gè)評(píng)價(jià)指標(biāo)來(lái)定量評(píng)估模型效果,分別是準(zhǔn)確率(Precision)、召回率(Recall)與F1-score。由于對(duì)裂縫的精細(xì)化像素級(jí)標(biāo)注是非常困難的,故在本文的評(píng)價(jià)標(biāo)準(zhǔn)中,允許對(duì)裂縫的實(shí)際分割效果與真實(shí)標(biāo)簽間存在兩個(gè)像素的容差,最終本文所采用的Precision和Recall定義為
F1-score定義為
(9)
F1-score是Precision與Recall的調(diào)和平均,通常能夠更加客觀地定量反映模型推理結(jié)果的好壞。
2.1.4實(shí)現(xiàn)細(xì)節(jié) 本文模型及對(duì)比方法基于pytorch深度學(xué)習(xí)框架實(shí)現(xiàn),使用Geforce RTX3090顯卡進(jìn)行訓(xùn)練與測(cè)試,其中對(duì)比方法采用默認(rèn)參數(shù)。CSA-net采用Adam進(jìn)行網(wǎng)絡(luò)參數(shù)優(yōu)化,學(xué)習(xí)率為0.001,權(quán)重衰減系數(shù)為0.000 01,動(dòng)量系數(shù)為0.9;使用Diceloss[22]與交叉熵?fù)p失函數(shù)[23]加權(quán)的方式計(jì)算網(wǎng)絡(luò)損失。具體來(lái)說(shuō),對(duì)網(wǎng)絡(luò)decoder部分的1~4層與真實(shí)標(biāo)簽分別計(jì)算Diceloss和交叉熵?fù)p失函數(shù),并各自賦予權(quán)重1.0、0.75、0.5和0.25,將所得的損失函數(shù)結(jié)果相加,作為最終的損失結(jié)果。此外,將交叉熵?fù)p失函數(shù)對(duì)背景分割權(quán)重設(shè)為0.2,裂縫分割權(quán)重設(shè)為1.0。
在同一實(shí)驗(yàn)環(huán)境下,使用上述參數(shù)初始化本文模型及對(duì)比方法,使用APD07訓(xùn)練集分別對(duì)所有模型進(jìn)行訓(xùn)練。訓(xùn)練相同的輪數(shù)后,使用APD07的測(cè)試集對(duì)6種模型效果進(jìn)行測(cè)試,得到如表1所示的實(shí)驗(yàn)結(jié)果。本文的語(yǔ)義分割模型在機(jī)場(chǎng)跑道裂縫分割場(chǎng)景中的F1-score達(dá)到了78.91%,優(yōu)于其他幾種模型效果。此外,針對(duì)機(jī)場(chǎng)跑道裂縫分割任務(wù)的召回率達(dá)到了77.35%,同樣優(yōu)于其他所有對(duì)比模型。最后,雖然裂縫分割的準(zhǔn)確率略低于部分對(duì)比模型,但在實(shí)際應(yīng)用場(chǎng)景中,更關(guān)注機(jī)場(chǎng)跑道裂縫的漏檢情況,對(duì)比模型FCN雖然擁有最高的準(zhǔn)確率,但在裂縫分割任務(wù)的召回率上表現(xiàn)不佳,即該模型對(duì)裂縫的漏檢率極高,難以在實(shí)際應(yīng)用場(chǎng)景中落地。本文模型能夠很好地平衡準(zhǔn)確率與召回率,符合工程化應(yīng)用的需求。
表1 CSA-net與其他算法對(duì)比結(jié)果Table 1 Comparison between CSA-net and other algorithms 單位:%
為直觀體現(xiàn)模型的分割效果,本文選取APD07測(cè)試集中的部分圖像進(jìn)行效果可視化,結(jié)果如圖6所示??梢?jiàn),本文設(shè)計(jì)的模型相較于其他5種對(duì)比模型在細(xì)小裂縫的分割上有著更好的效果。對(duì)于具有不同形態(tài)特征的裂縫,模型均能產(chǎn)生穩(wěn)定的分割效果。模型抗干擾能力較強(qiáng),不易將水漬、瀝青、劃痕等形似裂縫的目標(biāo)錯(cuò)誤分割。
為進(jìn)一步證明本模型中各個(gè)模塊的有效性,體現(xiàn)不同模塊的相互作用關(guān)系,本文設(shè)計(jì)并開(kāi)展了消融實(shí)驗(yàn),表2展示了不同模塊對(duì)模型的影響。
2.3.1可變形卷積模塊的有效性 為提取不同裂縫的形態(tài)特征,本模型在殘差模塊中使用了可變形卷積。為證明其有效性,保持其余模塊不變,將可變形卷積操作替換為普通卷積操作,在相同參數(shù)下對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。結(jié)果如表2中CSA-net w/Conv所示??梢?jiàn)可變形卷積對(duì)裂縫分割效果略有幫助但影響不大。
圖6 不同算法結(jié)果對(duì)比Figure 6 Comparison of different algorithms
表2 消融實(shí)驗(yàn)的對(duì)比結(jié)果Table 2 Comparison between ablation studies 單位:%
2.3.2self-attention機(jī)制的有效性 本文通過(guò)引入self-attention機(jī)制來(lái)提取裂縫的全局語(yǔ)義信息,為證明該模塊的有效性,本實(shí)驗(yàn)將網(wǎng)絡(luò)encoder部分的self-attention機(jī)制模塊去除,單獨(dú)保留axial-attention模塊,其余模塊和網(wǎng)絡(luò)整體結(jié)構(gòu)保持不變。在相同的實(shí)驗(yàn)條件下重新訓(xùn)練該網(wǎng)絡(luò),得到的分割效果如表2中CSA-net w/o SA所示??梢?jiàn)self-attention機(jī)制對(duì)裂縫分割效果影響較大,證明全局語(yǔ)義信息對(duì)于裂縫分割有較大的幫助。
2.3.3axial-attention機(jī)制的有效性 針對(duì)裂縫在水平或垂直方向上分布的特點(diǎn),本文采用axial-attention機(jī)制對(duì)機(jī)場(chǎng)跑道水平或垂直裂縫特征進(jìn)行提取。為證明本模塊的有效性,在網(wǎng)絡(luò)中去除axial-attention模塊,保持其他模塊與參數(shù)不變,重新訓(xùn)練該網(wǎng)絡(luò),分割結(jié)果如表2中CSA-net w/o ASA所示。結(jié)果表示裂縫在水平或垂直方向上的語(yǔ)義特征對(duì)于裂縫分割同樣重要。
2.3.4transformer decoder模塊的有效性 本文使用transformer decoder進(jìn)行特征圖上采樣,通過(guò)融合不同特征層間的結(jié)果,減少特征細(xì)節(jié)的丟失。為驗(yàn)證該模塊的有效性,本實(shí)驗(yàn)使用雙線性插值來(lái)替換transformer decoder。保持其他模塊及網(wǎng)絡(luò)參數(shù)一致,重新訓(xùn)練整個(gè)網(wǎng)絡(luò),得到的分割結(jié)果如表2中CSA-net w/Interp所示。由實(shí)驗(yàn)結(jié)果可以看出,對(duì)于裂縫分割任務(wù),相較于雙線性插值法,使用transformer decoder進(jìn)行特征圖上采樣能夠減少特征信息的丟失,獲得更為精確的分割效果。
2.3.5多種損失函數(shù)多個(gè)位置加權(quán)對(duì)網(wǎng)絡(luò)加速收斂的有效性 網(wǎng)絡(luò)會(huì)在decoder的不同位置產(chǎn)生不同尺度的分割結(jié)果,為加速網(wǎng)絡(luò)收斂,本文對(duì)網(wǎng)絡(luò)不同位置輸出結(jié)果計(jì)算交叉熵?fù)p失。并通過(guò)賦予不同權(quán)重的方式,強(qiáng)化監(jiān)督信號(hào)。同時(shí),考慮在實(shí)際場(chǎng)景中,裂縫占整張圖像的比例較小,正、負(fù)樣本嚴(yán)重不均衡,本文引入Diceloss解決這一問(wèn)題。為驗(yàn)證上述兩種策略的有效性,本文設(shè)計(jì)實(shí)驗(yàn)1)~3)。實(shí)驗(yàn)1)去除中間輸出層的交叉熵?fù)p失函數(shù)與所有輸出層的Diceloss,僅保留網(wǎng)絡(luò)最終分割結(jié)果的交叉熵?fù)p失結(jié)果。實(shí)驗(yàn)2)去除中間輸出層的交叉熵?fù)p失函數(shù)與Diceloss,為最后一層的輸出結(jié)果計(jì)算交叉熵?fù)p失與Diceloss。實(shí)驗(yàn)3)去除所有輸出層的Diceloss,保留所有輸出層的交叉熵?fù)p失函數(shù)。在相同的實(shí)驗(yàn)環(huán)境下對(duì)網(wǎng)絡(luò)模型重新訓(xùn)練,得到的分割結(jié)果如表3所示。從表中實(shí)驗(yàn)結(jié)果可以看出,添加Diceloss之后,網(wǎng)絡(luò)能夠解決正、負(fù)樣本不均衡的問(wèn)題,對(duì)于不同類型的裂縫,網(wǎng)絡(luò)均能產(chǎn)生穩(wěn)定的分割效果。
表3 損失函數(shù)策略的對(duì)比結(jié)果Table 3 Comparison results of loss function strategies 單位:%
針對(duì)機(jī)場(chǎng)跑道表觀裂縫的形態(tài)特點(diǎn)與分布方式,本文提出了聯(lián)合self-attention與axial-attention的裂縫分割網(wǎng)絡(luò),通過(guò)引入兩種不同方式的自注意力機(jī)制,使得網(wǎng)絡(luò)可以提取裂縫的全局語(yǔ)義信息。同時(shí),通過(guò)在殘差模塊中引入可變形卷積機(jī)制,在一定程度上彌補(bǔ)了CNN的不足,使得模型可以更好地提取病害的局部特征。通過(guò)堆疊幾類模塊,模型充分結(jié)合了CNN與transformer機(jī)制的優(yōu)點(diǎn),通過(guò)多種損失函數(shù)加權(quán)的形式,加速了網(wǎng)絡(luò)收斂。實(shí)驗(yàn)結(jié)果表明,本文模型相較于CNN方法在機(jī)場(chǎng)跑道裂縫分割任務(wù)中有著更好的效果。但同時(shí),本模型也存在網(wǎng)絡(luò)推理速度較慢的問(wèn)題,將在后續(xù)研究中關(guān)注該問(wèn)題并加以改善。