陳武陽 趙于前 陽春華 張 帆 余伶俐 陳白帆
環境感知作為自動駕駛系統的重要環節,對于車輛與外界環境的理解、交互起關鍵作用.然而,真實情景中的行車環境感知,需要解決復雜場景下感知精度不高、實時性不強等關鍵技術問題.行車環境感知主要包括目標檢測與語義分割[1].語義分割在像素級別上理解所捕獲的場景,與目標檢測相比,能夠產生更加豐富的感知信息,并且分割結果可以進一步用來識別、檢測場景中的視覺要素,輔助行車環境感知系統進行判斷.目前,相關的公共圖像分割數據集與語義分割網絡大多數都是基于可見光圖像.可見光圖像能夠記錄物體豐富的顏色和紋理特征,但在光照條件不足或光照異常時(如:暗黑中迎面的大燈照射),可見光圖像的質量會大幅降低,導致網絡無法正確分割對象,進而影響行車環境感知系統在這些環境下的準確性.紅外熱成像相機與可見光相機不同,其通過探測物體熱量獲取紅外輻射信息,因此對光線與天氣的變化更加魯棒,缺點在于紅外熱圖像提供的信息量較少,視覺效果模糊.由此可見,若僅依靠單一傳感器,難以精確分割不同環境下的場景.本文主要研究行車環境下基于可見光與紅外熱圖像的復雜場景分割,嘗試利用深度學習技術挖掘不同傳感器之間的互補信息提升分割性能,使車輛能夠充分感知其周圍環境.
場景分割作為行車環境感知的基本技術需求,一直以來受到研究人員的關注.目前,絕大部分研究集中在可見光圖像上,分割方法從初期的基于閾值、區域、邊緣等由人工設計特征的傳統算法,向基于深度學習的語義分割網絡過渡;研究內容則根據可見光圖像分割的難點大致從增加分割精細度、增強網絡對多尺度的泛化能力和學習物體空間相關性三個方向提升網絡性能.如文獻[2]利用膨脹卷積模塊用來保留特征圖中的細節信息,預測更加準確的結果;文獻[3]使用一個共享參數的卷積神經網絡訓練不同尺度的圖像獲得多尺度特征;文獻[4]利用循環神經網絡適用于序列數據編碼的特性,捕捉物體的空間關系等.雖然上述研究提高了分割準確率并解決了某些技術難題,但大多數方法只注重提升精度而忽略了網絡大小和分割速度,導致所提出的方法難以在行車環境感知系統中落地.此外,基于可見光圖像的分割方法無論如何改進,其輸入數據來源決定了這些方法無法避免因光線不足、分割對象與背景顏色紋理一致等導致的分割誤差.
紅外熱成像相機由于其能夠全天時、全天候有效工作的特性,在車輛駕駛領域中的應用越來越廣泛[5-6].例如,對紅外圖像中的行人進行識別,能提供危險區域、安全距離等重要信息,從而輔助行車系統更好地進行路徑規劃,提高其可靠性與魯棒性.一般來說,面向紅外圖像的分割算法都是通過人工設計特征來描述前景與背景的差異,如基于閾值、模糊集和最短路徑等方法,但它們通常對場景變化和噪聲很敏感,無法適應車輛所處的復雜環境.
近年來,有學者開始關注基于多種傳感器的感知方法[7],嘗試通過融合多模態數據充分挖掘信息,提高行車感知系統的性能[8].Ha 等[9]首次嘗試結合可見光與紅外熱圖像進行場景分割,提出了基于卷積神經網絡的MFNet 分割模型,并創建了一個可見光與紅外熱圖像的場景分割數據集.RTFNet[10]在MFNet 的基礎上引入殘差結構[11]進一步加強了信息的融合,提高了場景分割結果的準確性,由于該網絡結構過于龐大且參數數量顯著增加,與行車環境感知系統需要輕量級、實時性高的分割模型相違背,有待進一步改進.在此之前,針對多傳感器感知的研究集中在應用點云與可見光融合進行目標檢測[12-13],可見光與深度圖像進行分割[14],以及針對多光譜圖像進行目標檢測[15-16]等.
本文提出一種基于可見光與紅外熱圖像的復雜場景分割模型DMSNet (Dual modal segmentation network),該模型通過構建輕量級的雙路特征空間自適應(Dual-path feature space adaptation,DPFSA)模塊,將紅外熱特征與可見光特征變換到同一空間下進行融合,然后學習融合后的多模態特征,并提取這些特征中的低層細節與高層語義信息,從而實現對復雜場景的分割.實驗結果表明,該模型可減少由于不同模態特征空間的差異帶來的融合誤差,即使在光線發生變化時也表現出較強的魯棒性,分割結果相對其他方法也有明顯改進.
本文所構建的模型以復雜場景的可見光與紅外熱兩種模態圖像作為輸入,輸出該場景中不同類別物體的分割結果,我們因此將它命名為雙模分割網絡(Dual modal segmentation network,DMSNet),總體結構如圖1 所示.

圖1 DMSNet 模型結構圖Fig.1 The architecture of DMSNet
該網絡主要包括編碼器與解碼器.編碼器使用兩條路徑分別提取可見光與紅外熱圖像特征.兩條路徑除了輸入圖像分別為彩色圖像與灰度圖像外,其余部分結構一致,均包含五組操作.每組內包含一到三個3×3 卷積層,卷積層后緊接著批歸一化(Batch normalization)層[17],用來保持特征在網絡內分布的相對穩定,然后是激活層.每組之間采用步長為2 的最大池化層縮小特征圖空間尺寸,同時增加卷積核數目,由編碼器的淺層至深層逐步學習到圖像內更加豐富的語義信息.由于DMSNet 是面向行車環境感知的輕量級網絡,特征通道數目在編碼器最深層也未超過96,因此采用leaky-ReLU[18]作為網絡所有的激活函數,這樣做能夠避免常用的ReLU[19]激活函數造成大量神經元失活的問題.
解碼器負責融合兩條編碼路徑學習到的特征,依次通過五組操作逐步增加特征圖空間尺寸,并最終得到與輸入圖像尺寸一致的分割結果.解碼器每組內的操作與編碼階段類似,包含卷積層、批歸一化層與激活函數.每組之間以縮放因子為2 的最鄰近插值法進行快速上采樣,以逐步恢復特征圖空間尺寸.進行上采樣之前,需要融合來自可見光編碼器與紅外熱編碼器同一尺寸的特征圖.為了縮小不同模態特征空間存在的差異,本文提出雙路特征空間自適應(Dual-path feature space adaptation,DPFSA)模塊,用來自動轉換兩種模態特征至同一空間,并對它們進行融合.該模塊的詳細設計將在第1.2 節中闡述.
文獻[13]指出,目前利用激光雷達數據與可見光圖像融合進行道路檢測的方法,相對于僅基于可見光圖像的算法,正確率并沒有明顯提升.這種現象主要是由于兩種信息在數據空間與特征空間存在差異,進而影響了二者的融合.數據空間的差異是指激光雷達數據位于三維真實空間,而可見光圖像定義在二維平面上.特征空間的差異來源于兩種數據模態不同,進而導致網絡提取的特征也位于不同的空間,這些都會對特征融合造成不利影響.受該研究的啟發,本文將文獻[13] 中的特征空間轉換(Feature space transformation,FST)模塊進行改進并應用到DMSNet 中.
FST 模塊將激光雷達特征全部以逐點相加的方式融進可見光特征,導致轉換后的特征與未轉換的特征發生混淆,一定程度給激光雷達信息增加了噪聲,并有可能對可見光特征帶來負面影響.針對這種不足,本文設計了DPFSA 模塊,用來執行特征空間的轉換.該模塊結構如圖2 所示,相比FST模塊,最大的改進在于保留了不同模態數據的特征向量,且增加了預適應步驟(Pre-adaptation)與逆轉換層(Reverse layer).其中,預適應步驟是為了增加模型的非線性能力;逆轉換層的設計則借鑒了文獻[17]中的思想,對轉換完成的數據進一步執行卷積操作,從而避免數據分布嚴重改變,同時可增加模型的靈活性.這些改進使得最終的場景分割模型在幾乎不增加網絡參數的情況下,性能有了很大的提升.

圖2 雙路特征空間自適應模塊(DPFSA)結構圖Fig.2 The architecture of dual-path feature space adaptation module (DPFSA)
該模塊主要包含兩個功能:針對特征空間的轉換,以及將攜帶不同信息的特征進行融合.對于特征空間轉換,首先使用一個1×1 卷積層與leaky-ReLU 激活層對紅外熱特征進行預適應,然后將預適應后的紅外熱特征與可見光特征輸入到轉換網絡(TransNet)學習轉換參數,最后經過逆轉換層完成對紅外熱特征空間的轉換:

式中fadapt_ther為完成空間轉換后的紅外熱特征,Grev代表逆轉換層進行的操作,逆轉換層與預適應的結構相同,僅包含單個1×1 卷積層與激活層,用來改變特征通道數,同時增加模型的非線性;fpre_ther是預適應后的紅外熱特征;α與β則代表Trans-Net 輸出的轉換參數,它們分別由TransNet 內的兩個轉換子網絡計算得到:

其中Hα和Hβ分別代表兩個轉換子網絡計算α和β的全卷積運算,Wα和Wβ則是對應的參數,fvis表示可見光特征.
完成對特征空間的轉換后,接著進行特征間的融合.經過轉換后的紅外熱特征首先與可見光特征進行拼接,再與前一組已經融合的結果進行逐點相加達到融合效果,得到雙路特征.DPFSA 模塊處理過程可表示為:

其中,n代表場景分割模型的第n組,V、T分別為可見光與紅外熱圖像,ffuse代表DPFSA 模塊輸出的雙路特征經過解碼器某一組卷積運算后的結果,W泛指該模塊所有參數,Mfuse為逐點相加的融合過程.需要注意,在n=5 時,DPFSA 模塊僅接收兩個輸入,處理過程變為結合圖2 與式(4)可見,DPFSA 模塊不僅保留了兩種模態信息形成雙路特征,而且該雙路特征經過處理后能夠繼續作為下一個DPFSA 模塊的輸入,這種方式最大程度地減少了信息的雜糅與損失,增加了對紅外熱圖像的利用率.
考慮到交叉熵損失在反向傳播中更易優化,而Dice[20]損失善于處理數據集中的類別不平衡問題,本文構建新的損失函數Lmix如下:

其中LCE表示交叉熵損失,LDice表示Dice 損失,K為分割類別總數,G代表圖像對應的分割標簽,N為圖像像素總個數,將圖像I中第k類像素點i的分割標簽映射為獨熱(one-hot)編碼形式,映射任意數值到 [0,1] 范圍內,其計算公式如下:

本文所有實驗均通過基于CUDA10.0和cuDNN7.6.0 的PyTorch1.2.0 框架實現,使用搭載了Intel Xeon Bronze 3104 CPU (1.70 GHz)和NVIDIA GeForce RTX 2080 Ti (11 GB)硬件的Windows 10 電腦訓練.模型初始學習速率設置為0.01,每經過一輪迭代學習速率減少1 %,模型通過SGD 隨機梯度下降算法進行迭代優化,并使用動量為0.9、權重衰減系數為0.0005 的策略避免模型過擬合.本節首先介紹實驗使用的數據集與評價指標,然后通過消融實驗驗證DMSNet 中DPFSA 模塊與混合損失函數的有效性,并分析它們對模型產生的影響及可能原因,最后與其他分割模型進行對比.
1)數據集
本文主要使用文獻[9]中公開的數據集(后面統稱為 “數據集A”),一共包含1 569 幅行車環境下的城市場景圖像,其中820 張拍攝于白天,749 張拍攝于夜晚.該數據集使用InfRec R500 紅外熱成像相機拍攝,該設備能夠同時獲取可見光與紅外熱圖像.數據集中一共有8 個類別被標注,分別是汽車(Car)、行人(Person)、自行車(Bike)、路緣石(Curve)、車輛停止標識(Car stop)、護欄(Guardrail)、路障(Color cone)和突出物(Bump),不屬于上述類別的物體均以未標記(Unlabeled)處理.由于場景中只有少量類別被標記,未標記像素占據整體的93 %以上,而已被標記的像素中,不同類別像素占比相差達到43 倍以上.因此,該數據集有較嚴重的類別不平衡問題.在實際訓練中,本文采用了與文獻[9]相同的數據劃分策略,50 %的圖像用于訓練,25 %用于驗證,剩余的用作測試,所有圖像均被縮放至480×640 固定尺寸.
由于面向行車環境的可見光與紅外熱多模態圖像公開數據集稀缺,本文使用PST900 數據集[21](后面統稱為 “數據集B”)作為實驗補充.該數據集面向機器人自主環境感知,共包含894 對720×1 280 大小的可見光與紅外熱圖像,具體有5 個類別:背景(Background)、滅火器(Fire-extinguisher)、背包(Backpack)、手鉆(Hand-drill)和幸存者(Survivor).數據劃分策略與數據集A 保持一致.
2)評價指標
本文采用兩個指標衡量分割結果的性能,分別為正確率(Acc)和交并比(IoU).兩個指標在所有類別上的平均結果分別以mAcc、mIoU 指代,計算公式如下:

本文K在數據集A、B 上分別取為9和5,即包含了未被標注的類別.Pij代表類別為i的像素被預測為類別j的數目.在mIoU 的計算中,由于未被標注的像素占據絕大部分,不同分割模型計算得到的IoU 值非常接近,因此該類別未被納入考慮.
1) DPFSA 模塊分析為了驗證DPFSA 模塊的有效性,現通過調整該模塊內部結構得到另外兩個模塊,并將它們和MFNet、FuseNet[14]進行對比實驗.兩個調整后的模塊如圖3 所示,其中圖3 (a)是在DPFSA 基礎上去掉逆轉換層與預適應步驟,為了表示方便,將之命名為DPFSA-1,該模塊的提出是為了證明對特征空間進行轉換的思路是可行的;圖3 (b)是在DPFSA 基礎上去除逆轉換層(或者說在DPFSA-1的基礎上增加了預適應步驟),將之命名為DPFSA-2,該模塊的提出是為了證明單純增加網絡參數或層數不一定能提升分割精度.

圖3 調整DPFSA 內部結構得到的另外兩個模塊Fig.3 The other two modules obtained by adjusting the internal structure of DPFSA
為了保證比較的公平性,排除損失函數對模型性能的影響,將MFNet 使用的交叉熵損失函數作為表1 中DMSNet 及其變種模型的損失函數,并對白天與夜晚所有時間段內的圖像進行測試.由表1可知,使用DPFSA-1 模塊的分割結果優于MFNet與FuseNet,表明不同模態特征空間的差異能夠通過這種方式縮小,對特征空間進行轉換的思路可行;使用DPFSA-2 模塊的實驗結果雖然提升了mAcc指標,但mIoU 指標卻有所下降,表明單純通過增加網絡參數或層數并不能保證模型正確率的提升,更深的模型往往需要更多的訓練數據,且更難收斂.DPFSA 模塊相比于DPFSA-2 模塊,主要的不同在于將轉換后的特征進一步輸入到逆轉換層,由表1可以看出這種方式顯著提升了模型性能,且相比于未改進的DPFSA-1,參數量僅多出了0.18 MB,此外,模型參數量也只有FuseNet 的12.1 %.這也進一步證明,模型性能的提升并非由于訓練參數大量增多引起,而是DPFSA 模塊起了關鍵作用.

表1 不同模塊在數據集A 上的mAcc、mIoU值與參數量比較Table 1 Comparison of mAcc and mIoU values and parameter values of different modules on dataset A
2)損失函數分析
本文基于交叉熵(CE)與Dice 構建損失函數,為了證明該損失函數的優越性,在DMSNet 上使用了四種不同的損失函數進行訓練.表2 列出了不同損失函數在數據集A 上各類別的Acc 結果與mAcc、mIoU 指標值.其中,Focal 損失[22]的提出即為了解決樣本不均衡導致模型準確率降低的問題,它通過調制系數(Modulating factor)減少易分類樣本的權重,從而使得模型在訓練時更專注難分類的樣本.但從表2 可以發現,Focal 損失在本文所使用的數據集上效果并不好,很大程度是由于該數據集中不同類別的像素占比相差懸殊,可達十幾個數量級.因此直接通過對難分類樣本學習,微小的噪聲都將導致損失偏差嚴重,影響模型收斂.
單獨使用Dice 損失函數效果也較差,主要原因可能是Dice 損失的梯度形式類似于 2π(G)2/(p+π(G))2,在p與π(G) 均很小時,該梯度會變得異常大,導致整個訓練過程不穩定.雖然交叉熵損失不關注類別不平衡問題,但其梯度更加簡單、平穩,并且能夠學習到數據中主要類別的分布,因此交叉熵損失相比Dice和Focal 損失更適用于本文數據集.
基于以上分析,為了讓模型能學習到高頻類別特征的同時也能兼顧低頻類別,本文使用了交叉熵與Dice 相結合的混合損失函數.由表2 可知,本文提出的混合損失函數在mAcc和mIoU 指標上均表現最優,可有效提升模型性能.這在很大程度是由于交叉熵損失在網絡訓練前期起了主導作用,而Dice 損失作為輔助項,進一步優化了在低頻類別上的分割準確率.

表2 不同損失函數在數據集A 上的Acc 結果與mAcc、mIoU 值Table 2 Acc results and mAcc and mIoU values of different loss functions on dataset A
本節從準確性和魯棒性角度將DMSNet 分別與SegNet、ENet、MFNet和FuseNet 的分割性能進行對比分析.其中SegNet 與ENet 是針對可見光圖像的分割網絡,之所以被選擇為比較對象,是因為這兩種網絡參數量適中,并且ENet 是專門針對嵌入式端的高速度分割網絡.其余大多數網絡雖然在分割精度上表現更好,卻具有龐大的網絡結構與參數量(如RTFNet,模型參數量為980.88 MB),需要的硬件與計算條件也要求更高,對于行車環境感知系統甚至可能無法承受.為了確保對比實驗的公平性,分別使用兩種圖像訓練并測試SegNet 與ENet.第一種是可見光圖像作為三通道輸入,用3ch 表示;第二種為結合了可見光與紅外熱信息的圖像,但由于SegNet 與ENet 本身不具備處理多模態數據的網絡結構,因此第二種直接由可見光圖像與紅外熱灰度圖像在色彩維度上拼接作為四通道輸入,用4ch 表示.
表3 展示了不同模型在數據集A 上各個類別的Acc 與IoU 評價結果,以及它們的平均值.可以看出,除了個別類在其他模型上的分割結果具有優勢外,在絕大多數類別上DMSNet 都更勝一籌,且mAcc 與mIoU 指標相對于MFNet 分別高出了7.2 %與5.4 %,相對于FuseNet 則各高出了8.8 %與6.5 %.

表3 不同模型在數據集A 上的Acc 與IoU 結果對比Table 3 Comparison of Acc and IoU results of different models on dataset A
此外,為了驗證所提出模型在不同數據集上的適用性與魯棒性,表4 展示了各模型在數據集B 上的測試結果.不難發現,文本提出的方法同樣具有較強的分割性能.

表4 不同模型在數據集B 上的Acc 與IoU 結果對比Table 4 Comparison of Acc and IoU results of different models on dataset B
為了深入探究模型是否合理利用了兩種模態信息,本文進一步從時間角度比較不同模型對光照變化的魯棒性.表5 列出了在白天與黑夜不同光線條件下不同模型在數據集A 上的分割結果對比.可以看出,不經過任何處理直接將可見光與紅外熱圖像拼接輸入網絡,一定程度上影響了模型對于可見光數據的學習,特別對于SegNet 而言,四通道輸入相比三通道輸入,在白天的數據集上mAcc和mIoU 有明顯下降.反觀本文提出的DMSNet,在任意時間段的分割性能均有明顯提高,這也進一步說明DMSNet 高效利用了兩種模態數據的互補信息,對光照的變化表現出較強魯棒性.

表5 不同模型在數據集A 白天與黑夜環境下的mAcc 與mIoU 結果對比Table 5 Comparison of mAcc and mIoU results of different models on dataset A in daytime and nighttime
圖4 展示了DMSNet、FuseNet和MFNet 在數據集A 中5 組測試圖像上的分割結果,其中第一行是可見光圖像,第二行是紅外熱圖像,第三行為分割標簽,前3 幅拍攝于白天,后2 幅拍攝于夜晚.第四、五、六行分別為FuseNet、MFNet和DMSNet 的分割結果.可以看出,相比于MFNet和FuseNet,本文提出的DMSNet 對物體類別的判斷更加準確,如第一列中的路障與第四列中的自行車分割結果;對邊界細節的處理效果也更好,如圖中的行人;另外分割結果的噪聲也較少,如第三列和第五列中的汽車分割結果.

圖4 DMSNet、FuseNet和MFNet 在數據集A 上的分割結果對比Fig.4 Comparison of segmentation results of DMSNet,FuseNet and MFNet on dataset A
針對現有場景分割模型大多基于可見光圖像,無法適應復雜環境變化,且模型參數量龐大,難以部署在行車環境感知系統中的問題,本文構建了基于可見光與紅外熱圖像的雙模分割網絡DMSNet.從可見光與紅外熱圖像兩種模態特征空間存在差異的角度入手,提出了DPFSA 模塊.該模塊以十分輕量的操作對紅外熱圖像特征進行轉換,縮小了兩種模態特征空間的距離,從而能夠在幾乎不增加模型參數的情況下,有效改進模型性能.另外,使用本文提出的混合損失函數也可提升分割精度.不足之處在于,本文使用的數據集類別極其不平衡,甚至存在錯誤標記、對類別劃分標準不一致等情況,導致場景中出現頻率低的物體無法被準確分割,因此,下一步的工作需要從數據增強、模型優化等方面解決低頻類別分割難的問題.