許 哲,張少帥,郭 璐,黃 鶴,王會峰,尹康迪
(1.中國電子科技集團公司第20研究所,陜西 西安 710068;2.長安大學電子與控制工程學院,陜西 西安 710064;3.西安愛生技術集團公司,陜西 西安 710075;4.西北工業大學無人機系統國家工程研究中心,陜西 西安 710072)
四旋翼無人機飛行控制技術是無人機研究的重點之一,其廣泛應用于圖像處理領域,利用其微型攝像頭采集圖像信息,結合無人機云臺共同工作。通過無人機云臺控制相機的姿態,能在不同的環境下有效完成對圖像的采集任務。但通常無人機飛行高度幾十或者幾百米近似垂直向下拍攝的情況下也受到霧霾的影響,導致采集的圖像不同程度上質量的下降,航拍圖像模糊亟待一種有效實時去霧算法,因此使用一種基于深度學習神經網絡實現去霧算法具有必要的實施性。
圖像去霧是通過圖像處理消除或減少霧對成像的影響,提高圖像的能見度、對比度、飽和度和清晰度,獲取高質量圖像。圖像去霧增強屬于低層次圖像處理過程,同時也是高層次視覺感知任務的前提,圖像去霧是廣泛使用的圖像處理技術,應用場景非常廣,是近年來圖像處理領域的研究熱點。
霧天情況下,由于對大氣霧光散射效應,大氣粒子會引起光散射,光在粒子間多次散射,受散射光的影響,降低了能見度。含霧影像的暗通道的像素值遠遠高于無霧情況下的值。有霧的時候呈現一定的灰色,而無霧的時候呈現大量的黑色(像素接近0)。在大氣模型中,圖像的清晰度受到直接衰減項和大氣滲透項的影響。大氣散射模型為[1]
I(x)=J(x)t(x)+A(1-t(x))
(1)
I(x)為現有帶去霧圖像;J(x)為恢復的原無霧圖像;A為全球大氣光成分;t(x)為在大氣傳輸的透射率,表明物體的反射光在實際拍攝過程當中不被散射,而且直接就到達照相機。其中,準確評估出t(x)結果是去霧霾的關鍵[2]。

圖1 基于深度學習的DLDN網絡結構
首先,從輸入模型的霧霾圖像進行間隔多尺度卷積特征提取,得到特征F1;為了進一步提取圖像特征,進行多尺度卷積映射,提取特征F2(多尺度映射特征);為了對特征進行降維,采取最大池化層的方式實現特征的過濾與選取,通過這一步驟計算出特征F3(全連接對);最后,為了保持圖像特征的位移不變性,通過修正線性單元和全連接對F3,進行處理,得到回歸結果F4(非線性回歸結果)[3]。
基于霧霾特征圖,求取A[4]。其步驟如下:
a.在特征圖上,找出其亮度值在第1%的像素點特征值val。
b.找出n個小于val的像素點位置id-set,在灰度圖中,根據像素點的位置,得出像素值集合Bright-Pxls以及集合中的最大的像素值iBright。
c.根據像素點iBright值找出其對應圖中位置id。
d.根據id可以在霧霾圖像中找到其對應的3個通道的像素值,分別求取其平均值作為大氣亮度。為了避免白色物體和天空中亮度值的影響,選取所有像素值的第1%個值作為白色物體(或者天空)和其他物體的分界點[5]。
本文設計的是一種新的端到端的神經網絡訓練模型DLDN,利用神經網絡對大氣退化模型中的t(x)進行估計。在模型中輸入霧圖,輸出傳輸率t(x)映射圖,無霧圖像的恢復通過大氣退化模型進行調整。利用深度 CNN 結構(4 層),非線性下提出一種新的激活函數,如圖1所示。結合暗通道先驗、最大對比度、顏色衰減先驗和色度不一致的傳統方法,進行網絡設計,網絡結構主要分為 4個部分。
特征提取的公式為
(2)
特征提取有別于傳統卷積神經網絡,該網絡采用“卷積+激活函數(Maxout)”的結構作為網絡第1層。其中F代表輸出的特征,i代表第i個,1 是指第1層,k是指k個層進行激活函數操作。W和B是權重和偏置。第1層是特征提取層,即提取有霧圖像特征。
本文中使用了16 個濾波器,通過激活函數層單元的激活函數,每4個輸出1張圖。這里不填充,輸入是 3×16×16 三通道的塊,輸出的是4個12×12,每一個代表一種特征。
“卷積+激活函數(Maxout)”類似于手工去霧。反向濾波器(Opposite)為W1時,與暗通道先驗(DCP)等價;而環形濾波器(Round)為W1時,與對比度提取等價,最大對比度(MC)也與之等價;而當W1為全通濾波器(All-pass)以及反向濾波器時,相當于HSV與RGB轉換顏色空間,與顏色衰減先驗(CAP)等價。另外,樣條函數Maxout,非線性擬合能力很強。
使用多尺度的平行卷積操作。由于多尺度特征被證明有利于去霧并且在 inception 的模型中也用到了平行卷積,即同一張圖用不同尺度的卷積核進行卷積。分別用 16 個 3×3、16個 5×5 和 16 個 7×7 的卷積核進行卷積,每一種尺度產生 16 個,并且通過填充,每張圖大小應該是一致的。總共獲得 48 個 48×12×12 特征圖。多尺度映射特征為
(3)
根據假設透射率有局部不變性,用1個 7×7 局部最大值濾波替代區域最大值,輸出是 48 個 48×6×6,其表達式為
(4)
大氣透射率是0到1之間的概率。雙邊糾正線性單元(BReLU)的提出受激勵函數ReLU和Sigmoid的啟發,雙邊約束下,局部線性得到保證。如圖2所示。非線性回歸結果為
F4=min(tmax,max(tmin,W4·F3+B4))
(5)

圖2 非線性回歸處理
在主觀上加入基于Retinex的圖像去霧算法對比,基于Retinex的圖像去霧結果顏色恒常、高色彩保真,去霧結果圖像的清晰度與原圖像顏色更貼近,視覺效果很好,但存在大量光暈[6]。本文基于深度學習構建的網絡DLDN實現去霧未出現偏色及失真現象,處理結果較好。基于Retinex的圖像去霧算法結果如圖3所示,DLDN實現去霧結果如圖4所示。

圖3 原圖與基于Retinex的圖像去霧算法結果

圖4 原圖與DLDN實現去霧結果
分別在PSNR(峰值信噪比)、NC(相似度的衡量)和SSIM(結構相似性)上對2種算法進行對比[7],結果如表1所示。

表1 2種算法的評價指標值對比
由表1可知:SSR(單尺度改進 Retinex 去霧算法)在三者衡量因素上都是最小的,處理結果圖像失真度高、魯棒性差且與原圖相似度最小;而利用本文基于深度學習網絡DLDN實現去霧算法效果最好,PSNR及NC都比較大且SSIM更接近1,因此圖像失真度最小、魯棒性較好且與原圖相似度最高,圖像處理效果較好[8]。
本文提出的無人機深度學習去霧算法,利用構建的深度學習神經網絡DLDN訓練模型通過硬件搭載在無人機上進行實時去霧。該模型主客觀上效果都比較好,有效減少了去霧圖像的失真及偏色現象,算法處理能力不錯。但是由于獲取自然場景的有霧和無霧的圖像是十分困難的,采集數據使用了基于物理霧霾形成模型的綜合訓練集,所以對于更加廣泛的去霧情況的使用,此算法的效果還有待于進一步提高。