鄧 箴,王一斌,劉立波*
(1. 寧夏大學 信息工程學院,寧夏 銀川 750021;2. 四川師范大學 工學院,四川 成都 610000)
高質量的清晰圖像獲取對于機器視覺任務,如視頻監控、醫療診斷、自動駕駛、目標檢測等領域尤為重要,它能為機器視覺操作提供準確的圖像信息,確保機器視覺任務順利完成。然而,在弱光照或曝光不足條件下拍攝的圖像往往存在亮度低、色彩飽和度差、細節信息難以辨認等問題,不但降低了圖像質量,還影響了后續機器視覺任務的準確度。因此,作為圖像預處理操作的弱光照圖像增強技術具有重要理論意義和應用價值。
傳統的圖像增強方法可分為兩類:基于直方圖均衡化的方法和基于成像模型的方法。直方圖均衡化的方法可看作是利用直方圖調節圖像的灰度動態范圍從而增強圖像的過程。如PIZER等人提出的自適應直方圖均衡化圖像增強算法[1],KANDHWAY等人提出的結合全局直方圖均衡化的圖像增強算法等[2]。這類方法雖然簡單高效,但暗區域易出現增強不足,而亮區域增強過度,從而出現色偏問題。
基于成像模型的方法又可分為:基于去霧模型的方法和基于Retinex理論模型的方法。基于去霧模型的方法發現反轉后的弱光照圖像與霧天圖像有較高的相似性,若能利用去霧算法對反轉的弱光照圖像進行去霧處理,再將去霧結果反轉回來,即可得到增強圖像。如DONG等人提出的基于去霧模型的弱光照圖像增強算法[3];LI,YANG和FENG等人提出的基于去霧的對比度增強算法[4-6]。這類方法在某種程度上雖能有效增強弱光照圖像的視覺效果,但缺乏嚴謹的物理解釋,易出現顏色失真問題。另一方面,具有嚴密理論支撐的Retinex理論模型增強方法被廣泛使用。它將弱光照圖像看作光照圖像和反射率圖像的乘積,利用估計出的光照圖像,求得不受弱光照影響的反射率圖像,即增強圖像。如GUO等人提出的LIME(low-light image enhancement method)方法,通過求R、G和B顏色通道中像素的最大亮度值估計光照圖[7],再利用光照圖的結構先驗修正和細化光照圖,進而生成增強圖像。趙晨等[8]采用局部零度算法調整圖像的整體光照效果。FU等人利用高斯和拉普拉斯概率函數約束光照圖像和反射率圖像的分布,并構建加權變分模型來估計光照和反射率圖像[9-10]。程亞亞等人[11]則采用一種基于自蛇模型濾波的全息圖像增強方法,能對干擾信息進行抑制,去除“偽輪廓”,使刀具的邊緣更加清晰。林劍萍等[12]將分數階微分與Retinex相結合,提出一種自適應的弱光照圖像增強方法。總體而言,上述算法利用先驗知識或已有約束來估計Retinex理論模型中的光照圖,從而計算反射率圖像。然而,當先驗知識或已有約束無法描述復雜變化的光照條件時,光照圖像的估計會出現誤差,從而影響后續反射率圖像的準確度。
近年來,卷積神經網絡被廣泛應用于圖像處理的各個領域,其中也包括弱光照圖像增強。LORE等人[13]提出了基于深度自編碼器的弱光照圖像增強及去噪算法,它利用堆疊的稀疏自編碼器直接學習弱光照圖像與其增強圖像的映射關系,具有較好的增強效果。HUANG等人[14]在卷積神經網絡的基礎上提出一種改進的Unet模型來增強弱光照圖像。KUANG等人[15]進一步利用生成對抗網絡來抑制噪聲,增強弱光照圖像。CHENG等人[16]利用DFN (Deep Fusion Networks)融合弱光照圖像的派生圖像,如直方圖均衡圖像、對數變換圖像、亮通道增強圖像,從而有效實現圖像增強。上述算法雖能利用神經網絡估計增強圖像,但并未在網絡模型中注入視覺注意機制,使其有效注意到弱光照區域,并為其分配更多的計算資源,因此增強結果的精度及算法效率仍有進一步提升的空間。
考慮到視覺注意機制能使神經網絡模型有效地關注到局部目標區域,進而大幅度提高目標檢測的準確度。本文嘗試將視覺注意機制引入到神經網絡的圖像增強算法中,提出了一個端到端的注意殘差稠密神經網絡。該網絡包含注意循環網絡和殘差稠密網絡兩個部分。首先,注意循環網絡需要生成一個光照注意圖,這張光照注意圖是整個網絡最為關鍵的部分,它將引導注意循環網絡聚焦于圖像中的弱光照區域。然后,在光照注意圖的引導下,利用網絡的循環結構,聯合輸入圖像,逐步學習到需要增強的弱光照區域。最后,由該注意網絡逐步生成由粗到細,逐步優化的光照注意圖。而光照注意圖作為視覺注意機制的重要體現,與初始的弱光照圖像進一步聯合,作為第二部分稠密殘差網絡的輸入。并以此引導稠密殘差網絡通過高維通道的卷積層和ReLU函數獲取淺層特征,并將局部特征映射到一個相對“干凈”的空間獲取局部特征,進而將網絡指向局部需增強光照的區域,使最終估計的增強圖像具有黑暗區域得到有效增強,而明亮區域得到保留的自然視覺效果特征。
以人類視覺色彩感知角度出發的Retinex模型是圖像增強算法選用的經典理論模型,它假設弱光照圖像是反射率圖像和光照圖像的乘積:
IW=IR·IL,
(1)
式中:IW為初始弱光照圖像;IL為光照圖像,反應場景的光照情況;IR表示反射率圖像即增強圖像,反應圖像的固有屬性。為獲取增強圖像IR,我們提出了注意殘差稠密網絡。如圖1所示,該方法是全自動的,包含兩個子網絡:注意循環網絡和稠密殘差網絡。由于在圖像增強過程中,我們無法預知哪些區域是需要增強光照的,因此,需要使用注意循環網絡生成一個光照注意圖來引導后續對圖像的增強處理。而該光照注意圖的生成則是注意循環網絡的目的,同時也是注意循環網絡中最為關鍵的部分。因為它將作為先驗信息引導網絡在下一次循環中關注到需要增強的弱光照區域,并與輸入圖像聯合,作為網絡下一次循環的輸入。最終細化的光照注意圖就是由最后一次循環得到的,并以此光照注意圖聯合輸入圖像作為稠密殘差網絡的輸入,就能夠使網絡對弱光照圖像進行增強處理時,為黑暗區域分配更多的資源使該區域得到增強,而明亮區域得到保留,產生更為自然、真實的結果。

圖1 注意殘差網絡模型結構Fig.1 Architecture of attentive residual dense network
算法的基本思路:由光照注意圖引導網絡,將注意力集中在光照注意圖所指示的需要增強光照的區域上,這個執行過程形成的網絡就是注意循環網絡。它在IL的引導下,通過多次循環逐步關注輸入圖像中的弱光照區域,并將弱光區域可視化,最終生成由粗到細,逐漸細化的光照注意圖IA,產生的IA使得網絡對圖像中的弱光區域更加敏感。隨后,IA進一步聯合IW作為后續稠密殘差網絡的輸入,以生成增強圖像IR。這里IA由注意循環網絡自動產生,每執行一次循環,IA對應的像素值改變一次,網絡在上一次IA的引導下,聯合初始圖像,就能使網絡更加聚焦于局部需要增強的弱光照區域,并為其分配更多計算資源,最終使稠密殘差網絡能更好地學習IW與IR的映射關系,生成沒有過強或欠強區域的自然、真實的增強圖像。
2.2.1注意循環網絡
視覺注意模型已被成功用于目標檢測與分類[17-18]。考慮到視覺注意模型中的注意機制能使神經網絡注意到局部目標區域,本文創新性地將注意機制注入到圖像增強的網絡模型中。因為視覺注意可以讓網絡知道需要增強光照的重點應該放在哪里,這對生成視覺效果良好的增強圖像來說非常重要,如圖2所示。該網絡使用循環結構來產生逐步聚焦的視覺注意映射,并將其可視化。每次循環,將當前的光照注意圖與輸入圖像連接起來,作為下一次循環的輸入,有助于我們進一步地從輸入圖像和逐步細化的光照注意圖中提取特征,并引導網絡將注意力集中在光照注意圖所指示的區域上,得到逐步優化的光照注意圖,有效實現圖像增強。注意循環網絡包含4個殘差稠密模塊(RDB, Residual Dense Block),1個LSTM循環單元及1個卷積層。每次循環時,殘差稠密模塊和LSTM循環單元從輸入圖像和上次循環產生的光照注意圖中提取光照注意特征,隨后利用卷積層產生此次循環的光照注意圖。網絡執行一次循環,就能使產生的光照注意圖越來越多地集中關注到需要增強的弱光區域。

圖2 注意循環網絡結構Fig.2 Architecture of attentive recurrent network
注意循環網絡中各步驟的函數定義如下:
(2)
式中:IAt-1為t-1次循環時注意循環網絡產生的光照注意圖。HRDB,1,HRDB,2,HRDB,3,HRDB,4分別為第1,2,3,4個殘差稠密模塊RDB的函數。Xt為t次循環時最后一個RDB模塊輸出的特征。
Ht,Ct=HLSTM(Xt,Ct-1),
(3)
式中:HLSTM為LSTM循環單元函數;Ht和Ht-1為t次循環和t-1次循環時LSTM的輸出。
這里LSTM循環單元的結構如圖3所示,它包含輸入門N,遺忘門R,輸出門O及記憶單元C,各門和記憶單元采用卷積操作來實現交互操作:
(4)
式中:Nt為Xt進入輸入門后產生的特征,其中Wn和Bn分別為輸入門卷積操作的權重和偏移;Rt為Xt進入遺忘門后產生的特征,Wr和Br分別為遺忘門卷積操作的權重和偏移;Ct為記憶單元中存儲的信息,它由控制單元控制的信息Nt·(Wc*Xt+Bc)和遺忘門更新的信息Rt·Ct-1共同決定,這里Ct-1,Wc和Bc分別為t-1次循環時記憶單元中存儲的信息,控制單元的卷積權重和偏移;Ot為Xt進入輸出門產生的特征,其中Wo和Bo分別為輸出門卷積操作的權重和偏移;Ht為LSTM循環單元的輸出;tanh為激勵函數;*1表示步長為1的卷積操作;·為點乘操作。

圖3 LSTM循環單元結構Fig.3 Architecture of LSTM unit

(5)
式中:Wa是卷積操作權重;*1表示步長為1的卷積操作;Ba是偏差。
如圖2所示,每次循環時,光照注意圖將與輸入圖串聯作為下次循環時網絡的輸入,并隨著循環次數的增加,弱光照區域逐漸被關注,對應的像素值也逐漸增大,從而得到由粗到細,逐步優化的光照注意圖。
2.2.2 殘差稠密網絡
當注意循環網絡產生光照注意圖IA后,IA串聯弱光照圖像IW共同作為殘差稠密網絡的輸入,以生成增強圖像。殘差稠密網絡模型如圖4所示,主要包含:淺層特征提取,特征增強,全局特征融合,圖像重建。

圖4 殘差稠密網絡結構Fig.4 Residual dense network architecture
淺層特征提取:對于深度網絡來說,淺層網絡層能提取輪廓,邊緣等低級特征,為深層網絡層捕捉高級特征提供更多有效信息。為了更好地從IA和IW中提取值得注意的弱光照信息,有效地學習IW和IR之間的差異,這里采用一個高維通道數的卷積層Conv1和ReLU函數提取IW和IA中的淺層特征F0:
F0=σ(W0*2IW+B0),
(6)
式中:*2表示步長為2的卷積操作;W0是卷積操作的權重;B0是偏差;σ表示ReLU激活操作。通過該卷積操作,淺層特征圖F0的尺寸變為輸入圖像的一半。
特征增強:由于弱光照圖像易受到噪聲的影響,局部光照特征提取較為困難,這里使用特征增強層捕捉局部光照特征,并進一步將其映射到一個相對“干凈”的特征空間,以便提取全局特征。它利用淺層特征提取的F0作為輸入,并由4個殘差稠密模塊RDB來實現特征映射。
F4=HRDB,4(F3)=
HRDB,4(HRDB,3(HRDB,2(HRDB,1(F0)))),
(7)
式中:HRDB,1,HRDB,2,HRDB,3,HRDB,4分別定義了第1,2,3,4個殘差稠密模塊RDB的函數;F3為函數HRDB,3的輸出;F4為特征增強的輸出。
全局特征融合:將特征增強層提取的信息非線性融合成全局特征,便于后續圖像重建。為此,將各殘差稠密模塊RDB提取特征進行串聯,作為全局特征融合層的輸入,并用一個卷積層Conv2實現映射:
F5=σ(W2*1[F1,F2,F3,F4]+B2).
(8)
圖像重建:最后采用上采樣Upscale及卷積層Conv3將特征F5重建為與IW圖像相同空間大小的增強圖像IR:
IR=σ(W3*1F5↑+B3),
(9)
式中:F5↑為特征F5上采樣的結果;*1表示步長為1的卷積操作;W3是卷積操作權重;B3是偏差。
2.2.3 殘差稠密模塊結構
殘差稠密模塊(Residual Dense block, RDB)作為網絡的基本構建模塊,將稠密網絡和殘差網絡的優勢相結合,能最大化網絡的信息流,加速網絡的收斂。RDB模塊包括3個部分:稠密連接層,局部特征融合層以及局部殘差學習。模塊結構示意圖如圖5所示。

圖5 殘差稠密模塊結構Fig.5 Residual dense module architecture
稠密連接:受稠密網絡能加大信息流的啟發,我們采用4組卷積層和ReLU激活函數共同組成稠密連接層。與傳統稠密模塊不同的是,此處的稠密連接將上一個RDB模塊的輸出傳遞到當前RDB模塊的每一個稠密連接層中,如稠密連接層中的虛線所示,該設計能實現增強特征的連續傳遞。假設Fr-1和Fr分別為第r個殘差稠密模塊RDB的輸入和輸出,則稠密連接層中的第c個卷積和ReLU激活函數的輸出定義為:
Fr,c=σ(Wr,c*1[Fr-1,Fr,1,…,Fr,c-1]+Br,c),
(10)
式中:[Fr-1,Fr,1,…,Fr,c-1]為第r-1個RDB的輸出Fr-1,與當前r個RDB中前c-1個卷積層產生特征Fr-1,Fr,1,…,Fr,c-1的串聯;Wr,c是稠密連接層中第c個卷積操作的權重;*1表示步長為1的卷積;Br,c是卷積對應的偏差。
局部特征融合:為了更好地融合前面各層提取的稠密信息,將稠密連接層各層的特征Fr,1,…,Fr,4與Fr-1共同作為卷積層的輸入,得到局部特征融合后的信息Fr,LF:
Fr,LF=Wd,LF*1[Fr-1,Fr,1,…,Fr,4]+Bd,LF,
(11)
式中:[Fr-1,Fr,1,…,Fr,4]是串聯特征;Wd,LF是當前r個RDB中局部特征融合層的卷積Convr,5的權重;*1是步長為1的卷積;Bd,LF是偏差。
局部殘差學習:為了有效解決梯度退化問題,加速網絡收斂,在模塊的最后引入了局部殘差學習操作:
Fr=Fr-1+Fr,LF.
(12)
2.2.4 損失函數

(13)

LD為注意殘差稠密網絡的損失函數,同樣由網絡輸出的增強圖像f(IW)與真實圖像IR間的MSE定義:
LD=‖f(IW)-IR‖2,
(14)
式中:f表示注意殘差稠密網絡的映射函數。
注意殘差稠密神經網絡模型在PyTorch平臺上搭建,并在4*NIVIDIA RTX 2080 Ti GPU的計算機上訓練。優化函數為ADAM(Adaptive Moment Estimation),初始學習率0.05,每100 000次迭代學習率下降50%,迭代800 000次。
注意循環網絡中LSTM及卷積層的卷積操作核大小均為3×3,步長為1,邊緣填補像素量為0。殘差稠密網絡及RDB參數如表1設置,除全局特征融合層和局部特征融合層的卷積操作核大小為1×1,邊緣填補像素量為0外,其余卷積操作的核大小均為3×3,邊緣填補像素量為0。其中,淺層特征提取層中卷積操作的步長為2,因此輸入圖像經過淺層特征提取層后,特征空間大小為輸入圖像大小的一半,而在圖像重建層中采用雙線性插值的上采樣操作,進一步將特征大小復原為輸入圖像大小。

表1 殘差稠密卷積神經網絡及參數設置Tab.1 Parameters setting of attentive residual dense convolution neural network
本文首先從圖像質量評估數據集[19-20]中選取600張正常光照圖像,這些圖像均采集于包含不同景物的真實場景,將其視為真實結果;然后,根據Retinex模型(公式(1))合成訓練數據,讓其光照分量IL的元素服從[0,1]的均勻分布,得到對應的弱光照圖像數據集。
根據圖像內容與照明條件相獨立的假設,對每張正常光照圖像,我們利用上述方法隨機合成7張不同校正參數的弱光照圖像。共合成4 200對圖像,其中4 000對圖像作為訓練集,200對圖像作為測試集。
為了驗證網絡中各模塊的有效性,我們通過逐步添加模塊的方法對結果進行了比較。測試集選用含200對弱光照圖像及正常光照圖像的圖像對。其中室內、室外場景下整體光照偏弱圖像及真實圖像100對,光照不均勻圖像及真實圖像100對。保持每個模型訓練過程中的超參數,所有網絡訓練40 000次,以達到收斂狀態。
首先,將除去注意稠密網的網絡模型作為主干網絡。然后在主干網絡中添加注意循環網絡的1~4次循環,選擇PSNR和SSIM作為指標衡量添加不同次數的循環網絡對算法性能的影響。結果如表2所示,注意循環網絡的加入可以顯著提高圖像的PSNR和SSIM,本文方法的性能優于其他結構。一方面說明注意網絡的加入對提高圖像質量、視覺特性和增強網絡性能十分必要;另一方面也說明了并不是循環的次數越多越好。

表2 不同模塊的網絡性能Tab.2 Performance of network with different block
為了驗證本文增強算法的有效性和魯棒性,選用經典的LIME算法[7],基于卷積神經網絡的LORE算法[14]和DFN算法[18]及本文算法在200對弱光照圖像及正常光照圖像的測試集上進行測試。
圖6為各算法的視覺增強結果,其中圖6(a)從上到下分別為室外整體光照偏弱圖像,室外光照不均勻圖像和室內光照不均勻圖像。圖6(d)~圖6(e)分別為LIME算法、LORE算法、DFN算法與本文算法的圖像增強結果。圖6(f)為真實結果。算法雖能提升圖像亮度,但提升效果并不明顯,圖像整體亮度偏暗,細節信息清晰度低,如圖6(b)中第一行的天空區域雖有增強,但豹子的斑紋信息仍不清晰。同樣,圖6(b)的第三行中書架區域亮度雖有增強,但書架上擺放的書籍雜物仍無法辨認。LORE算法的增強效果最為明顯,顏色對比度高,但同時圖像的平均亮度也最大,易出現過度增強及顏色失真的問題,如圖6(c)第一行圖像中天空區域顏色過亮,第二行圖像的地面顏色失真。DFN算法增強圖像的亮度介于LIME算法和LORE算法之間,但對弱光照的區域,其增強結果仍然偏暗,如圖6(d)第二行圖像的地面區域及第三行圖像的書柜區域。本文算法因注入了視覺注意機制,增強效果較好,如圖6(e)所示,增強結果不但亮度適中,顏色自然,還具有細節清晰的優點,與真實結果圖6(f)最為接近。

圖6 不同算法在合成弱光照圖像上的視覺結果對比Fig.6 Visual comparisons of different algorithms on synthetic weakly illuminated images
我們進一步在測試集上測試各算法的性能,并采用均方誤差MSE、信噪比PSNR和相似度SSIM三種量化指標衡量算法的增強效果,對應結果如3所示。

表3 不同算法在測試集上的量化結果對比Tab.3 Quantitative comparisons of different algorithms on testing dataset
由表3可見,在整體光照偏弱圖像下,本文算法的均方誤差MSE最低,較LIME、LORE和DFN算法分別降低了82.91%、50.91%和7.31%,PSNR和SSIM較LIME、LORE、DFN算法分別提高了46.37%、18.72%、16.34%和24.18%、6.59%、3.30%。在光照不均勻圖像下,本文算法仍然具有最低的均方誤差MSE,較LIME、LORE和DFN算法分別降低了82.38%、49.33%和4.67%,PSNR和SSIM較LIME、LORE、DFN算法分別提高了46.48%、19.34%、9.07%和26.09%、8.70%、3.26%。在處理時間上,各算法的處理時間均在1 s內,本文算法的平均處理時間僅為0.45 s,較LIME和LORE算法分別高0.54 s和0.32 s,僅比DFN算法慢0.11 s。綜合來看,本文算法效率較高。
為了進一步驗證算法的穩健性,我們選取了多數增強算法常用的3幅真實弱光照圖像進行測試。如圖7所示,圖7(a)為真實的弱光照圖像,圖7(b)~圖7(e)為各算法的增強結果。整體而言,各算法在真實圖像上的增強效果與合成圖像上測試的效果趨于一致。LIME算法的增強結果整體偏暗,細節部分信息丟失,如圖7(b)第一行中汽車的車及行人區域無法清楚辨識。圖7(b)第二行和第三行的圖像雖有亮度增強,但是顏色依舊偏暗,增強效果不明顯。LORE算法的增強結果,圖7(c)存在過度增強問題,顏色明顯失真,如圖7(c)第一行的公路區域顏色偏紫,天空中白云過亮,圖7(c)第三行草地顏色偏黃,明顯與真實場景顏色不符合,圖7(c)第二行的草叢區域邊界存在明顯暗影,過增強現象明顯。DFN算法的增強結果在局部區域顏色偏暗,如圖7(d)第一行的公路區域及第三行的草地區域整體偏暗。相比而言,本文算法增強結果圖7(e)的視覺效果最佳,對弱光照部分進行增強的同時,確保了正常光照部分亮度適中,顏色柔和,且細節部分也最為清晰。

圖7 不同算法在真實弱光照圖像上的視覺結果對比Fig.7 Visual comparison of different algorithms on real weakly illuminated images
此外,我們還從DICM[21]和NASA[22]等真實弱光照圖像庫中選取了30幅圖像進行測試和客觀評價。由于這類圖像增強后沒有真實結果作參考,因此我們選用客觀評價指標,即信息熵、色度改變度、自然圖像質量評估指標來量化增強結果。其中,信息熵用來量化圖像中所含信息量的大小,其值越大圖像所含的信息量越豐富,細節信息越完整。色度改變度反應了增強圖像的色彩變化情況,值越小則顏色失真越少。自然圖像質量評估指標是依據圖像的自然統計特征來評價圖像質量的指標,值越小則圖像質量越高。表4列出了各算法在30幅真實弱光照圖像上的平均量化值。從中可見,本文算法具有最大信息熵值,最低的色度改變度和自然圖像質量評估值,其信息熵值分別較LIME、LORE、DFN算法提高了3.3%~5.1%,色度改變度和自然圖像質量評估指標值分別降低了26.5%~76.3%和7%~17.4%。這表明該算法的增強結果不但含有最多的信息量,還具有最少的顏色失真,最佳的圖像質量。

表4 不同算法在真實弱光照圖像上的量化結果對比Tab.4 Quantitative comparisons of different algorithms on real weakly illuminated images
各算法的平均處理時間均在1 s內,本文算法較LIME和LORE算法在平均處理時間上分別提高了49.42%和32.31%,僅比DFN算法低25%,0.11 s。
本文將視覺注意機制注入到圖像增強的神經網絡中,提出了一個端到端的注意殘差稠密網絡。該網絡包括注意循環網絡和殘差稠密網絡。注意循環網絡在真實光照圖這個先驗信息的引導下,利用循環網絡結構產生由粗到細,逐漸優化的光照注意圖。而這張優化的光照注意圖則進一步聯合輸入的弱光照圖作為后續殘差稠密網絡的輸入,使得該網絡能更好地關注到局部目標和弱光照區域,從而產生需增強光照區域得到增強,需保留光照區域得到保留的自然、視覺效果良好的增強圖像。實驗結果的量化指標均顯示,本文算法在合成圖像和真實圖像上均較常用算法有更好的增強效果,沒有過強或欠強區域,具有較好的視覺效果,并且處理效率較高。這也進一步說明將光照注意機制引入圖像增強方法中是一種新穎且有效的弱光照圖像增強方法。