呂 東,張鑫港
(1.青島科技大學 信息科學技術學院,青島266061;2.蘭州交通大學 測繪與地理信息學院,蘭州730070)
目標檢測已成為當今計算機視覺領域的重要研究任務之一。其本質是在圖像的復雜背景中找到若干物體,給出物體的位置信息,并判斷其類別[1]。它被廣泛應用于工業生產、視頻監控、智能交通等方面[2]。然而,由于圖像采集過程中各種不可控因素導致的各種缺陷,尤其是在不利條件下,如室內光照、夜間照明和多云天氣[3],采集的圖像經常存在缺陷,從而導致圖像質量嚴重下降,這使得視覺系統無法完全實現其目的[4-8]。因此,在低照度圖像條件下提高目標檢測的準確性和實時性成為亟待解決的問題。
低照度圖像目標檢測作為目標檢測中極具挑戰性的任務,由于低照度圖像攜帶的信息較少,難以提取出足夠有效的特征。因此目標檢測結果相對較差?;谏疃葘W習方法包含更豐富的語義信息,這在圖像分類處理領域引起了研究者的關注[9-10]。這些方法顯示出檢測精度的顯著提高。隨著CNN 的進一步發展,人們發現低層特征圖包含豐富的高分辨率特征和較小的感受野,有利于低照度圖像目標檢測,而高層特征圖包含低分辨率語義信息,有利于大對象檢測。文獻[11]提出了SSD,它可以從多個層面直接檢測不同大小的物體。淺層特征圖適合檢測小物體,因為它們包含更大的尺寸、更小的感受野和更豐富的細節信息。而深度特征圖可以更好地檢測大物體,因為它們包含更小的尺寸、更大的感受野和更豐富的語義特征信息。淺層特征圖包含的語義信息較少,檢測性能仍然不佳;文獻[12]提出了一種在SSD 中引入上下文信息的多級特征融合算法。文獻[13]構建了一個特征金字塔網絡(FPN),它包括一個具有水平連接的自頂向下的體系結構。通過下采樣將高層特征圖和低層特征圖合并,使低層特征圖包含低分辨率特征和強語義映射。但是經過太多的下采樣操作,目標的很多信息都會丟失,難以恢復;文獻[14]通過引入擴張卷積增加了感受野,增強了特征的語義信息,保證了輸出圖像與輸入圖像具有相同的大小。然而,上述方法都有一些缺點,只是在單一圖像上進行特征增強提取,而沒能充分考慮到光照不均勻導致局部增強不明顯,或者是沒能充分挖掘低照度圖像的有效信息。
針對上述分析存在的問題,本文提出基于改進SSD的低照度圖像目標檢測算法。為了考慮到光照不均勻帶來的影響,采用基于Retinex 圖像增強算法[15]增強圖像特征的利用程度;為了充分挖掘互補信息,采用特征提取能力更強的ResNet50 網絡替換SSD 網絡原有的VGG16 特征提取網絡,并提出了差分特征融合模塊(DFF)模塊來挖掘原始圖像和增強圖像之間的差異,從而在每個通道上帶來更多的互補信息。實驗結果表明與現有的方法相比本文的方法具有較好效果。
SSD 算法模型借鑒YOLO 網絡將目標檢測任務由分類問題轉化為回歸問題的思想,無需區域候選框的提取過程,大大縮短了檢測時間。同時,SSD 算法模型借鑒Faster R-CNN 網絡的錨點機制,即在特征圖的每個像素上產生一定個數且縱橫比確定的默認框,在不同尺度的特征圖做預測,提高對物體的檢測準確性,模型總體檢測速度快且精確率較高。
原始的SSD 基礎網絡采用VGG16 作為主干網絡,通過將幾個尺寸逐漸減小的卷積層添加到基本網絡中,以生成多尺度金字塔特征圖。SSD 應用不同縱橫比的默認邊框這一過程確保了SSD 能夠高精度地檢測多尺度對象。如圖1所示,SSD 使用2 個3×3 個卷積層來預測默認框的偏移量和類別的分數。該方法不僅使用最后一層來處理對象檢測,而且利用基礎網絡的一些淺層和所有新添加的層。圖1 中,在卷積運算之后,特征圖包含3 個參數:長度、寬度和通道數。例如,在Fc6 層卷積運算之后,特征圖的規格為[19,19,1024]。

圖1 SSD 網絡結構圖Fig.1 SSD network structure diagram
SSD 匹配最佳Jaccard 的單個地面真實盒中的多個默認盒,重疊高于閾值。因此,一個對象可以有多個高度重疊的框。然后,使用非最大抑制(NMS)迭代后處理所有的置信框,以細化最終的輸出框。
針對原始SSD 算法對低照度圖像場景下圖像目標檢測精度不高、網絡存在性能退化等問題,對傳統SSD 算法進行改進:改進基礎網絡,優化侯框的回歸和分類任務;對低層和高層不同特征圖進行多尺度特征融合,提高模型對目標檢測的性能,具體改進SSD 網絡結構如圖2所示。

圖2 改進的SSD 網絡結構圖Fig.2 Improved SSD network structure diagram
在目標檢測算法網絡中分類網絡的性能對其性能有重大影響,分類網絡去掉全連接層和損失層就是基礎網絡部分。為驗證常見基礎分類網絡的性能,基于Tensorflow[16]框架在ImageNet2012[17]數據集上對DenseNet,VGGNet,MobileNetv2,ShuffleNet 和ResNet 各個網絡進行測試,結果如表1所示。

表1 不同網絡性能對比結果Tab.1 Comparison results of different network performance
從表1 可以看出,ResNet50 網絡的速度和精度均比SSD 原始基礎網絡VGG16 高很多,并且從每秒浮點運算次數(FLOPS)來看,ResNet50 網絡要比VGG16 小很多,這表明ResNet50 模型的時間復雜度遠低于VGG16。綜上所述,本文選擇了ResNet50作為改進SSD 算法的基礎分類網絡。
為了解決圖像光照度不平衡對提取特征不明顯的問題,本文提出用基于RetiNex 模型進行結構圖像增強來提高淺層特征的利用程度,而后提出了差分特征融合(DFF)模塊來挖掘原始圖像和增強特征圖之間的差異。以往基于深度卷積網絡特征增強模型通常采用在原網絡中引入稠密連接,并在最后一層卷積層后加入反卷積層,將其特征圖尺寸通過反卷積操作一直擴大到與原SSD 網絡卷積層Conv4_3 特征圖的尺寸相同。然后通過對降采樣之后的特征圖做反卷積操作,將特征圖尺寸擴大,并獲取比卷積層輸出相同尺寸的特征圖更加豐富的語義信息。預測階段將卷積操作生成的特征圖與反卷積操作生成的特征圖進行拼接,再將拼接后的結果送入檢測器和分類器中進行處理。
然而,傳統的直接拼接方法在獲取交叉通道互補信息時存在模糊性。這兩種模式都有自己的特征表征,其中夾雜著有用的提示和噪聲。而簡單的融合策略,如線性組合或串聯,缺乏清晰度提取交叉互補信息。在本文看來,兩種互補圖像之間的固有差異可以通過一種顯式和簡單的機制——差分特征融合模塊。
本文的思路來自差分放大器電路,其中共模信號被抑制,差分模式信號被放大。本文的DFF 模塊保留了原有的特征,并根據不同的特征進行補償。低照度圖像圖像卷積特征圖FA和增強卷積特征圖FB可以用每個通道的共模態部分和微分模態部分表示如下:

共同模態部分反映共同特征,差異模態部分反映兩種模態捕獲的獨特特征。式(1)說明了分裂的原理,這與差分放大電路和DFF 模塊的原理相同。本文的DFF 模塊的關鍵思想是從另一個具有信道加權的模態中獲取互補特性。期望通過明確地建模模態相互依賴來增強互補特征的學習,從而提高網絡對另一模態信息特征的敏感性。
為了充分利用跨模態補充,DFF 模塊被密集地嵌入到每個ResNet 塊中,如圖3所示。

圖3 差分特征融合模塊Fig.3 Differential modal perception fusion module
本文首先通過兩種模態的直接相減得到微分特征FD。然后,將全局空間信息FD壓縮到一個包含有全局平均池化的信道差分統計量的全局差分向量中。全局微分向量可以解釋為一個通道描述符,其統計是表達原始圖像和增強圖像之間的差異。采用范圍為-1~1 的tanh 激活函數對全局微分向量進行求解,得到融合權向量VW。兩個模態特征FA和FB通過融合權向量VW進行信道級乘法重新校準。重新校準的結果FAD,FBD將作為補充信息添加到原模態路徑中。在使用DFF 模塊從另一種方式進行增強之后,將生成信息更豐富、更健壯的特性,并在接下來的步驟中發送到下一個ResNet 塊。DFF 模塊的整個過程可以表述為

式中:F(X)為殘差函數;σ 表示tanh 函數;GAP表示全局平均池化;⊕和⊙分別表示元素的求和和元素的乘法。值得注意的是,在殘差分支中加入了FRD和FTD,使得互補特征學習成為受RFBNet[18]啟發的殘差學習。使用殘差映射,互補特性不會直接影響特定于模式的流。DFF 模塊作為ResNet 塊中的殘差函數的一部分。
DFF 模塊的可視化結果如圖4所示。由于兩種模式的特征不同,原始特征圖像和增強特征圖像在獲取目標和背景特征方面都有一定的局限性。隨著CNN 的深入,目標特征逐漸突出,背景特征被重新整合。背景特征的整合意味著細化有用的背景信息,盡可能地消除噪聲背景信息。DFF 模塊有效地結合了形態特征,有助于背景信息的整合,使目標特征從低到高的突出。本文認為,DFF 模塊促進了網絡中的模態交互,減少了冗余學習,傳遞了更多的信息。
圖4所示DFF 模塊前后階段3 中一個通道的Feature map 可視化結果。兩種形態特征圖之間的差異信息進行了修正。


圖4 特征增強前后對比結果可視化Fig.4 Visualization of comparison results before and after feature enhancement
由于設計了雙分支SSD 目標檢測網絡,原始低照度圖像和增強后圖像被組合以通過AP 階段生成近似位置估計,預測的回歸偏移t0用于提出可變形錨作為下一個階段的位置預測的基本參考。然后通過進一步微調可變形錨和置信度得分。由原始低照度圖像和增強后圖像得到的置信度得分s0,s1根據照度值重新加權。最終置信度得分sfinal和回歸偏移量tfinal計算如下:

置信度得分的提高是為了在只有在兩個階段的得分s0,s1都很高時才獲得最終得分。而對于回歸偏移,采用求和的方式逐步逼近真值框。受文獻[19]的啟發,在分類損失Lcls中添加了焦點權重,以解決正負失衡。Lcls的公式如下:

式中:S+,S-是正負錨盒。正如文獻[19]中所建議的,本文通過實驗設定α=0.25,γ=2。si為樣本的正概率。總損失為分類損失Lcls和回歸損失Lreg之和,其中回歸損失Lreg為Faster R-CNN 提出的平滑L1損失[20]。
總損失函數L為

本文基于Windows 10 操作系統,2.20 GHz×40Intel-Xeon(R)Silver 4114 CPU,GeForce GTX 1080 Ti GPU 和64 GB 內存進行迭代訓練。數據集采用KAIST[21]數據集(數據集由行人和車輛兩類,分為白天低照度圖像和黑夜低照度圖像),其中本文選取了2252 張低照度圖像環境下圖像數據作為擴充數據集。通過圖像平移、旋轉及鏡像進行數據集擴增,得到8963 對圖像。
本文改進的模型是在ImageNet 數據集上進行預訓練得到的預訓練權重,然后通過神經網絡的遷移學習,重新對訓練集和驗證集進行訓練,訓練過程中的超參數設置如表2所示。

表2 訓練參數設置Tab.2 Training parameter settings
整個網絡通過Adam 優化器進行優化訓練,學習率為0.0001,然后是將第3 階段至第6 階段初始錨的寬設置為[25.84,29.39],[33.81,38.99],[44.47,52.54],[65.80,131.40] 將訓練參數設定為32的圖像批大小和10-4的學習率,每迭代10000 次對學習率除以10。訓練模型花了22 個小時。
在經過35 輪的迭代訓練后,訓練總損失結果穩定在一個較低的平均水平,如圖5所示。

圖5 訓練損失曲線Fig.5 Training loss curve
除了與原始SSD 算法進行檢測精度比較,本文還將改進算法與Faster R-CNN,YOLOv3 在KAIST數據集中進行了比較,該相同訓練集分別對各網絡進行訓練,使用相同測試集進行測試,實驗結果如表3所示。
在相同的數據集和訓練迭代次數下運用不同的網絡模型進行比較。從表3 中可以看出,Faster R-CNN 平均精度均值mAP為81.35%,高于SSD 和YOLOv3 及本文算法的檢測精度,但FPS太低。相比于其它3 種檢測算法,YOLOv3 算法檢測精度mAP最低。本文改進算法的mAP為82.39%,相比于原始SSD 和YOLOv3 的檢測精度mAP指標上分別提升了2.71%和4.83%,并且相比較其它3種算法圖像傳輸速率FPS方面有了很大的提升,FPS提升為35,該算法在低照度圖像實時檢測方面具有很大的速度優勢。通過運用本文算法對照度不均勻圖像進行檢測,圖像檢測結果如圖6所示。

表3 不同算法檢測性能對比Tab.3 Comparison of detection performance of different algorithms

圖6 目標檢測結果對比Fig.6 Comparison of target detection results
為進一步提高低照度圖像中目標的檢測精度,本文改進了原始SSD 算法。通過對比多種基礎網絡結構對目標檢測性能的影響,本文采用ResNet50 網絡代替VGG16 作為SSD的基礎網絡,以此來平衡目標檢測速度與精度的影響;為了解決圖像光照度不平衡對提取特征不明顯,本文提出用基于Retinex模型進行結構圖像增強來提高淺層特征信息的利用程度;而后提出了設計雙分支SSD 網絡結構并結合差分特征融合(DFF)模塊來挖掘原始圖像和增強特征圖之間的差異,為了充分利用兩者之間的互補信息,DFF 模塊被密集地嵌入到每個ResNet 塊中,來生成信息更豐富、更健壯的特征。實驗結果表明,所提方法有效提高了對低照度圖像環境下目標的檢測精度,且實時性好,能夠滿足實際需求。