陳清江,李金陽,屈 梅,胡倩楠
(西安建筑科技大學理學院,陜西 西安 710055)
在光照不足、背光等環境下拍攝的圖像往往存在對比度低、亮度低和顏色失真等問題,這些問題會影響后續圖像處理工作。圖像增強技術通過提高圖像的對比度和亮度,提升圖像質量,恢復圖像內容,解決低質量圖像中存在的問題,具有十分重要的應用價值。
目前,國內外用于圖像增強的主流技術主要有4種:(1)直方圖均衡化HE(Histogram Equalization)[1]的圖像增強算法。(2)基于Retinex理論[2]的圖像增強方法,文獻[3,4]對Retinex理論算法進行了改進,提出了單尺度Retinex算法SSR(Single Scale Retinex)與多尺度Retinex算法MSR(Multi-Scale Retinex)。(3)Ying等[5]提出的相機重建模型,可獲取同場景下不同曝光度的圖像,有明顯的增強效果。(4)李慶忠等[6]提出的基于小波變換的圖像增強算法,有效實現了圖像增強與去噪。隨著深度學習的快速發展,該技術也被廣泛應用于計算機視覺領域。Park等[7]提出了一種自編碼網絡,以實現低照度圖像增強;Li等[8]提出了LightenNet網絡,將卷積層與Retinex理論相結合得到增強后的圖像;馬紅強等[9]將色彩空間進行轉換,對亮度通道進行增強,從而得到正常曝光度的圖像。通過深度學習實現低照度圖像增強,其效果顯著,說明利用深度學習技術增強低照度圖像是可行性。
針對低照度圖像增強現存的問題,本文提出了一種基于端到端雙網絡的低照度圖像增強方法。該方法有3個創新點:(1)采用并聯網絡進行特征提取,并且引入區域損失與結構損失,目的在于捕獲深層特征;(2)增加網絡寬度,緩解了網絡層數增加造成的過擬合;(3)解決了邊緣信息丟失問題。利用峰值信噪比PSNR(Peak Signal to Noise Ratio)與結構相似度SSIM(Structural SIMilarity)2項評價指標對本文方法進行性能測試。測試結果表明,本文所提方法優于其他方法,可以顯著提高圖像亮度與對比度,解決部分現存問題,增強后的圖像更加符合人類視覺。
殘差網絡是由He等[10]于2015年提出的,其解決了深層網絡易造成信息丟失、訓練困難等問題。殘差模型的引入可以加深網絡層數,降低錯誤率,緩解神經網絡梯度消失問題。基本殘差結構如圖1所示。

Figure 1 Residual learning: A building block圖1 基本殘差單元結構
該模型可表示為式(1):
H(x)=F(x)+x
(1)
其中,x表示輸入特征,F(x)表示經過2層卷積后的輸出,H(x)表示整個殘差網絡的輸出。
在Retinex算法[2]中,人眼視覺感知是由物體反射屬性決定的,與自然環境中的光照無關。一幅圖像由入射分量圖像與反射圖像分量組成,其理論模型如式(2)所示:
S(x,y)=R(x,y)×L(x,y)
(2)
其中,(x,y)表示像素點坐標,R(x,y)表示入射圖像分量,L(x,y)表示反射圖像分量,×表示對應像素點相乘。
由于圖像特征復雜,信息量多,采用單網絡模型難以提取深層次特征。本文所提方法中設計了一種雙網絡模型結構,緩解了單網絡模型層數過深造成的部分信息丟失、神經網絡性能飽和等問題。雙網絡模型是將2個單網絡模塊并聯以增加網絡寬度,減少網絡層數,緩解過擬合,獲得更多特征信息,提升圖像的對比度與亮度,最終得到增強圖像。
本文的端到端雙網絡模型結構包含2個子網絡:Inception網絡模塊INM(InceptionNet Module)和URes-Net模塊URM(URes-Net Module),主要分為特征提取、特征融合與特征重建3個部分,如圖2a所示。

Figure 2 End-to-end dual network structure圖2 端到端雙網絡模型結構
(1)特征提取:URM中特征提取結構與Ronneberger等[11]提出的Unet模型的類似。在網絡模型結構中統一采用3×3的卷積核,在第1和第9層、第2和第8層、第3和7層、第4和第6層以及第5層采用的卷積核數分別為16,32,64,128和256;在第1和第9層、第2和第8層、第3和第7層以及第4和第6層之間采用跳躍鏈接,防止信息丟失。在INM中采用InceptionNet V1模塊[12]進行特征提取,可提高模型收斂速度,其中InceptionNet V1模塊如圖2b所示,每層卷積核均為16個。URM與INM中每層卷積后都使用ReLU作為激活函數。
特征提取中的卷積計算公式如式(3)所示:
Hi,j=Wi,j*C+bi,j
(3)
修正單元中ReLU激活函數的計算公式如式(4)所示:
Ri,j=max(0,Wi,j*C+bi,j)
(4)
聚合(Concat)操作計算公式如式(5)所示:
Gi=∑max(0,Wi,j*C+bi,j)
(5)
其中,Wi,j表示第i層卷積的第j個分支的卷積核,Hi,j表示第i層卷積的第j個分支的卷積輸出,Ri,j表示第i層卷積的第j個分支的修正單元輸出,Gi表示第i層聚合操作后的輸出,C表示輸入特征,bi,j表示第j個分支的第i層卷積的偏置,*代表卷積操作。
(2)特征融合:INM網絡采用2個3×3×16卷積核和4個InceptionNet V1進行特征融合;URM采用殘差網絡進行特征融合。殘差學習模型由2個雙路徑殘差塊和1個卷積操作組成,雙路徑殘差塊由4個3×3卷積與1個1×1的卷積組成,卷積核的個數均為16,每層卷積后都使用ReLU作為激活函數。殘差網絡如圖2c所示。
(3)特征重建:對URM與INM網絡模型輸出的特征進行聚合(Concat)操作后,再用1個1×1×3的卷積核進行重建,輸出正常照度的圖像。采用1×1的卷積核是為了減少網絡參數,加快模型的訓練速度。
針對增強后的圖像存在邊緣細節丟失的問題,本文提出了一個新的損失函數,由結構損失SL(Structural Loss)與改進的區域損失RL(Regional Loss)組成,如式(6)所示:
L=λ1Ls+λ2Lr
(6)
其中,Ls表示結構損失;Lr表示區域損失;L為總損失;λ1,λ2為權重,λ1=0.75,λ2=0.25。
結構損失可以防止細節丟失,提高模型的泛化能力,具體表示如式(7)所示:
Ls=LSSIM+LMS_SSIM
(7)
其中,LSSIM考慮了亮度、對比度和結構3個方面,使增強后的圖像更加符合人類視覺;LMS_SSIM表示多尺度結構相似度損失。SSIM損失和MS_SSIM損失計算如式(8)和式(9)所示:
LSSIM=1-SSIM(X,Y)
(8)
LMS_SSIM=1-MS_SSIM(X,Y)
(9)
其中,X表示增強后的結果,Y表示對應的正常照度圖像。
在真實低照度圖像中,由于不同區域照度不同,因此不同區域需要的增強程度也不同,區域損失函數可以用來平衡不同區域的增強程度。本文根據低照度圖像的實際情況,設置極端低光區域約占40%,弱光區域約占40%,其他區域約占20%。區域損失函數計算如式(10)~式(13)所示:
Lr=μ1×L1+μ2×L2+μ3×L3
(10)
L1=
(11)
L2=
(12)
L3=
(13)
其中,mL1和nL1分別表示極端低光區域的寬和長,mL2和nL3分別表示弱光低光區域的寬和長,mL3和nL3分別表示其他低光區域的寬和長,EL1和GL1分別表示增強圖像的極端低光區域和正常圖像的對應區域;EL2和GL2分別表示增強圖像的弱光區域和正常圖像的對應區域;EL3和GL3分別表示增強圖像的其他區域和正常圖像的對應區域;L1,L2和L3分別表示增強圖像的極端低光區域、弱光區域和其他區域的損失;wL1,wL2和wL3為權重,wL1=4,wL2=2,wL3=1。
由于真實世界的低照度圖像與合成的低照度圖像有一定的差距,因此為了檢驗雙網絡模型的性能,在實驗中對合成的低照度圖像數據集與真實低照度圖像數據集進行測試與比較分析。利用本文方法與6種對比方法(MRSCR[12]、Ying等[5]方法、Ren等[13]方法、Li等[14]方法、Guo等[15]方法和Zhang等[16]方法)實現低照度圖像增強,運用峰值信噪比PSNR和結構相似度SSIM2項指標進行定量分析。
在現實世界中獲取同一場景中不同曝光度的圖像是十分困難的,因此本文從Berkeley Segmentation Dataset公開數據集[16]中選取正常曝光度的圖像,然后運用Retinex理論[2]合成低照度圖像來模擬真實環境下的低照度圖像,其中光照分量R∈(0,1),并對合成的不同亮度的低照度圖像進行90°,180°與270°翻轉,共計獲得990幅合成低照度圖像。從中選取850幅組成訓練集,140幅組成測試集。
本文采用Keras和TensorFlow2.0深度學習框架與Python3.7環境進行訓練與測試,計算機硬件配置如下:CPU 為 Intel Core i7-15750H,主頻為 2.40 GHz,內存為16 GB,GPU 為 NVIDIA GeForce 1660Ti(6 GB)。所有輸入圖像統一裁剪為256×256,3通道;采用Adam優化器,動量參數β1=0.9,β2=0.999;batch_size=2,epoch=5000。0~2 000次迭代設置固定學習率lr=0.001,2 000~4 000次迭代設置固定學習率lr=0.0005,4 000~5 000次迭代設置固定學習率lr=0.0001。
采用本文所提的雙網絡模型(Model1)、Inception網絡模型分支(Model2)、URes-Net模型分支(Model3)、沒有跳躍連接的URes-Net模塊(Model4)進行對比實驗,4種模型增強后的結果如圖3所示,其指標計算結果如表1所示。

Figure 3 Comparison of enhancement images using four models圖3 4種模型的增強圖像結果對比

Table 1 PSNR and SSIM of four network models
由圖3可知,Model1與Model2的增強效果優于Model3的,Model1相比于Model2細節恢復更好,具體表現在墻面瓷磚的細節更加清晰。由表1可以看出,Model1的PSNR值與SSIM值高于其他2個對比模型的,同時也可以看出,不采用跳躍連接的Model4存在偽影與部分細節丟失問題,其指標值遠遠低于采用跳躍連接的模型。
采用結構損失(SL)、區域損失(RL)以及結構損失與區域損失的5種線性組合(RL+SL)損失函數的增強結果如圖4所示,其指標計算結果如表2所示。

Figure 4 Comparison of subjective visual results of enhancement images using five loss functions圖4 使用5種損失函數的圖像增強主觀視覺結果對比

Figure 5 Comparison of subjective visual results between the proposed methodand six contrast methods on synthetic datasets圖5 合成數據集上本文方法與6種對比方法增強圖像主觀視覺對比
從圖4和表2可以看出,LS和Lr+LS的增強效果要好于Lr的增強效果,僅采用Lr損失函數增強后的圖像存在偽影;Lr+LS損失函數相比于LS損失函數細節恢復上效果更佳,亮度更加自然。當權重λ1=0.75,λ2=0.25時增強結果最優,其指標值高于其它2種組合方式的。

Table 2 PSNR and SSIM using five loss functions
隨機選取4組合成的低照度圖像,分別利用本文方法和6種對比方法對選取的圖像進行增強,增強后的圖像如圖5所示。
從圖5可以看出,Ren等[13]方法的增強圖像與低照度圖像相比有一定的增強效果,但從圖像的亮度與細節來看與清晰的圖像相比還有很大差距。Ying等[5]方法增強后的圖像整體偏暗,細節模糊。MSRCR[12]增強后的圖像曝光過度,圖像整體偏白。Li等[8]方法和Zhang等[15]方法增強后的圖像亮度偏低,存在偽影問題。Guo等[14]方法相比于其他幾種對比方法增強效果顯著提升,但是在細節與亮度等方面依然與真實圖像有一定的差距。本文方法中所提網絡模型在恢復亮度的同時最大限度地保留了圖像的紋理細節,在視覺效果上更加真實自然。
為了從定性和定量2方面評價增強后的圖像質量,對上述4幅增強后的圖像采用PSNR和SSIM進行衡量,結果如表3所示。

Table 3 PSNR and SSIM of the proposed method and six contrast methods on synthetic datasets
由表3中Image2與Image3的結構相似度可以看出,本文方法與Zhang等[15]方法相比沒有明顯提升,但總體上本文方法的PSNR與SSIM相比于6種對比方法的有顯著提高,說明本文方法在合成數據集上總體優于其他方法。
為了進一步說明本文方法優于其他方法,以及本文方法在真實數據集上的有效性,從LOL dataset公開數據集[18]中隨機選取了5組圖像,運用不同方法增強低照度圖像,增強后的圖像如圖6所示。

Figure 6 Comparision of subjective visual results between the proposed method and six contrast method on real dataset圖6 真實數據集上本文方法與6種對比方法增強圖像主觀視覺對比
從圖6可以看出,MRSCR[12]增強的圖像結果存在曝光過度問題,其中Image3沙發增強后的結果亮度偏高,失真最為明顯。文獻[5,8,13]3種方法增強的圖像亮度整體偏暗,圖像邊緣輪廓不清晰,其中文獻[8]較其他2種方法在Image1增強中表現最差。文獻[14]和文獻[15]在真實圖像數據集上相比其他幾種對比方法而言恢復的效果明顯有提升,但依然與真實圖像有一定差距。本文方法中所提網絡模型在低照度圖像增強上不僅提升了亮度,而且視覺效果更加真實自然,明顯優于其他對比方法。
為了從定性和定量2方面評價增強后的圖像質量,對上述4幅增強后的圖像采用客觀評價指標PSNR和SSIM進行衡量,其計算結果如表4。
由表4可看出,在真實低照度圖像數據集上,本文方法的PSRN和SSIM與其他6種對比方法的相比有顯著提高,說明本文所提方法在真實低照度圖像增強上具有明顯優勢。
為說明本文方法中網絡模型的效率,記錄了本文方法與6種對比方法增強單幅圖像的運行時間。其中文獻[5,8,13,14]的4種方法基于Matlab環境運行,本文方法、MRSCR[12]和文獻[15]3種方法基于Python3.7環境運行。具體時間如表5所示。

Table 4 PSNR and SSIM of the proposed method and six contrast methods on real dataset

Table 5 Comparison of running time between our method and six comtrast methods on different datasets
由于本文方法較為復雜,網絡參數較大,因此本文方法相比于文獻[8,13]的運行時間有所增加,降低模型運行時間是后續有待解決的問題。
本文提出了一種基于端到端雙網絡的低照度圖像增強方法,通過增加網絡寬度防止網絡層數過多造成梯度消失、特征丟失等問題。將InceptionNet V1作為特征提取模塊,改進了常見網絡中的特征提取方式,并將改進的U-Net網絡與殘差網絡相結合,提高了網絡利用率。實驗結果表明,本文方法中所提雙網絡模型可以顯著提升圖像增強后的效果,加快網絡模型收斂速度,獲得更加符合人類主觀視覺的圖像。盡管增加網絡寬度緩解了過擬合,在一定程度上減小了網絡深度,但也導致網絡模型變大、參數量增大、訓練時間增加。下一步將繼續優化減小運行時間,改進損失函數,以獲得更好的增強效果。