李博文,唐貴進(jìn),崔子冠
(南京郵電大學(xué) 江蘇省圖像處理與圖像通信重點(diǎn)實(shí)驗(yàn)室,江蘇 南京 210003)
在夜間等弱光環(huán)境下拍攝的圖像,由于其亮度、對比度較低且含有噪聲、色彩不飽和、細(xì)節(jié)模糊等缺點(diǎn),人的肉眼難以觀測,并給后續(xù)圖像處理帶來了嚴(yán)峻的挑戰(zhàn)[1]。因此,弱光照圖像增強(qiáng)變得尤為重要。
目前,國內(nèi)外已經(jīng)涌現(xiàn)了大量的弱光照圖像增強(qiáng)算法,廣泛使用的有兩類:基于傳統(tǒng)方法和基于深度學(xué)習(xí)方法。傳統(tǒng)方法中,基于直方圖均衡化(histogram equalization,HE)等算法[2-4]集中于增強(qiáng)圖像對比度,但黑暗區(qū)域的細(xì)節(jié)增強(qiáng)不是很明顯。Retinex理論[5-6]產(chǎn)生了一系列圖像增強(qiáng)算法,單尺度Retinex(single-scale Retinex,SSR)[7]算法、多尺度Retinex(multi-scale Retinex,MSR)[8]算法以及唐寧等人[9]提出的改進(jìn)多尺度Retinex的彩色圖像增強(qiáng)算法等,它們增強(qiáng)的效果通常看起來不自然,并且在某些地方過度增強(qiáng)。Dong等人[10]提出了去霧方法來增強(qiáng)弱光照圖像,并取得了較好的增強(qiáng)效果。Fu等人[11]提出了一種加權(quán)變分模型SRIE(simultaneous reflectance and illumination estimation)來估計(jì)反射分量和照度分量。Guo等人[12]估計(jì)具有先驗(yàn)結(jié)構(gòu)的照明,并將反射率作為最終的增強(qiáng)結(jié)果。Ying等人[13]提出一種用于低照度圖像增強(qiáng)的多重曝光融合框架,根據(jù)權(quán)重矩陣融合輸入圖像和合成圖像來獲得增強(qiáng)的效果。盡管這些方法在某些情況下可能會產(chǎn)生較好的結(jié)果,但增強(qiáng)后的圖像往往不符合實(shí)際場景,且容易在邊緣出現(xiàn)偽影。
隨著深度神經(jīng)網(wǎng)絡(luò)的迅速發(fā)展,CNN(convolutional neural networks)已廣泛用于圖像處理任務(wù)當(dāng)中,其中包括圖像去噪[14]、圖像去霧[15]、圖像超分辨率[16]等方向。Lore K G等人[17]提出了一種基于深度自動編碼器的方法,該方法學(xué)習(xí)從綜合暗化和噪聲添加的訓(xùn)練示例中同時進(jìn)行低光增強(qiáng)和降噪。Wei等人[18]設(shè)計(jì)了一個稱為Retinex-Net的深度網(wǎng)絡(luò),算法中分解出的照度分量有少許的模糊且不夠平滑,給后續(xù)照度分量的增強(qiáng)帶來了一些困難,而且再在對反射分量去噪時,也出現(xiàn)了不同程度的噪聲。為了克服這些缺點(diǎn),該文提出了一種有效的弱光圖像增強(qiáng)算法,在引導(dǎo)圖像分解時提出了一個損失函數(shù)來約束光照分量的平滑,對于反射分量的處理不再使用傳統(tǒng)的去噪方法,而是使用卷積神經(jīng)網(wǎng)絡(luò)來恢復(fù)反射分量,進(jìn)而增強(qiáng)暗光圖像。
Retinex理論[19]作為弱光照圖像增強(qiáng)領(lǐng)域的一個基礎(chǔ)理論,該理論假設(shè)原始圖像分解為光照圖像和反射率圖像的乘積,可以表示為以下形式:
L(x)=I(x)R(x)
(1)
其中,x表示像素點(diǎn);L(x)表示原始圖像;I(x)表示光照圖像;R(x)表示反射率圖像。關(guān)于實(shí)現(xiàn)圖像增強(qiáng)的要點(diǎn),第一步從原始圖像中估計(jì)出光照圖像I(x),第二步計(jì)算出反射率圖像R(x),消除I(x)中弱光照的影響后得到增強(qiáng)后的圖像。
受到Wei等人[18]提出的Retinex-Net算法的啟發(fā),文中算法基于Retinex模型建立了一個深層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)來實(shí)現(xiàn)弱光照圖像增強(qiáng)。網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。該網(wǎng)絡(luò)結(jié)構(gòu)分為三個網(wǎng)絡(luò):分解網(wǎng)、恢復(fù)網(wǎng)、增強(qiáng)網(wǎng)。在分解網(wǎng)中,由于沒有反射分量和光照分量對應(yīng)的真實(shí)值,網(wǎng)絡(luò)利用兩個約束條件學(xué)習(xí)圖像分解的過程。Retinex-Net算法分解出的照度分量有少許的模糊且不夠平滑,文中提出了一個約束光照分量平滑度的損失函數(shù),能夠很好地分解出比較真實(shí)的反射分量和光照分量。在恢復(fù)網(wǎng)中,由于分解出的反射分量中包含有噪聲,因此在重建輸出圖像之前,要對反射分量進(jìn)行去噪處理,由于Retinex-Net算法對反射分量去噪時使用的傳統(tǒng)的方法效果不是很好,文中采用了典型的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。最后在增強(qiáng)網(wǎng)中,在弱/正常光照圖像對之間建立一個映射關(guān)系,學(xué)習(xí)正常光照的全局信息,從而將弱光圖像分解出的照度分量進(jìn)行增強(qiáng)。最后將增強(qiáng)的照度分量和恢復(fù)的反射分量進(jìn)行融合,進(jìn)而重建增強(qiáng)后的圖像。
圖1 文中算法的網(wǎng)絡(luò)結(jié)構(gòu)
由圖2可知,文中提出的分解網(wǎng)中使用多個3*3卷積層以及LRelu(leaky rectified linear unit)激活函數(shù)和池化操作提取不同層次的圖像特征,為結(jié)合U-Net[20]思想,首先進(jìn)行上采樣,保證與相結(jié)合特征圖大小一致,將前幾層的特征圖引入到更深層,將其復(fù)制對應(yīng)拼接,之后進(jìn)行特征融合,得到細(xì)節(jié)保存更完整的特征圖,最后一個3*3的卷積層從特征空間投影出反射分量和照度分量,使用Sigmoid函數(shù)將兩者約束在[0,1]的范圍內(nèi)。
圖2 分解網(wǎng)
分解網(wǎng)的損失函數(shù)Ldecom由三部分組成:重建損失Lre、反射分量損失Lr、照度分量平滑損失Li,其中λr、λi分別表示反射分量一致性和照度分量平滑度的系數(shù):
Ldecom=Lre+λrLr+λiLi
(2)
重建損失Lre為了衡量低/正常圖像分解前后的誤差,可表示為:
Lre=‖IlRl-Ll‖1+‖IhRh-Lh‖1
(3)
其中,Il和Ih分別表示分解網(wǎng)分解出的弱光照和正常光照圖像的照度分量,Rl和Rh分別表示分解網(wǎng)分解出的弱光照和正常光照圖像的反射分量,Ll和Lh分別表示弱光照和正常光照圖像,‖.‖1表示L1范數(shù)。
反射分量損失Lr來約束反射分量的一致性,可表示為:
Lr=‖Rl-Rh‖1
(4)
照度分量平滑損失Li保證分解出的照度分量是分段平滑的,可表示為:
(5)
其中,?Il和?Ih分別表示分解網(wǎng)分解出的弱光照和正常光照圖像的照度分量的梯度值,?Ll和?Lh分別表示弱光照和正常光照圖像的梯度值,ε為一個很小的正數(shù),防止分母為零。
文中提出的恢復(fù)網(wǎng)如圖3所示,該子網(wǎng)和分解網(wǎng)中的網(wǎng)絡(luò)結(jié)構(gòu)一樣,層數(shù)更深,不僅能很好地調(diào)節(jié)網(wǎng)絡(luò)的自適應(yīng)能力,而且還能很好地去除反射分量中的噪聲,在很大程度上減小色彩失真。文中采用分解網(wǎng)輸出的正常圖像的反射分量作為真實(shí)值,為了更好地恢復(fù)反射分量,提出的損失函數(shù)Lrestore如下所示:
(6)
其中,Rre為恢復(fù)的反射分量,‖.‖2表示L2范數(shù),?Rre和?Rh分別表示恢復(fù)的反射分量和正常圖像的反射分量的梯度值,Lc為顏色損失函數(shù),λc為顏色感知平衡系數(shù)。
(7)
(8)
(9)
(10)
其中,Rreb、Rhb是Rre、Rh經(jīng)過高斯模糊后的圖像,G(k,l)為高斯核,A為幅值,k和l是中心點(diǎn)坐標(biāo),μx與μy為均值,σx與σy為方差。
圖3 恢復(fù)網(wǎng)
由于不存在照度分量的真實(shí)值,需要在弱光圖像和正常圖像之間建立一種機(jī)制來靈活地學(xué)習(xí)映射的過程。增強(qiáng)網(wǎng)采用編解碼器結(jié)構(gòu)的總體框架如圖4所示。
圖4 增強(qiáng)網(wǎng)
首先,輸入圖像依次向下采樣到小尺度,此時網(wǎng)絡(luò)可以看到大規(guī)模的光照信息分布。下采樣塊由一系列3*3的卷積層和一個線性修正單元Relu組成。利用大規(guī)模光照信息,上采樣塊重建局部光照分布。在上采樣塊中,使用了最近鄰插值操作和與之同樣大小的卷積層和線性修正單元。使用跳躍連接將下采樣塊的特征圖引入到對應(yīng)的鏡像上采樣塊并與之相加,從而強(qiáng)制網(wǎng)絡(luò)學(xué)習(xí)殘差。通過最近鄰插值將這些特征圖調(diào)整到同樣大小的尺度,并將它們拼接到特定多個通道的特征圖。然后,通過一個1*1的卷積層將連接的特征圖降為3通道。最后使用一個3*3個卷積層來重建照度分量。
增強(qiáng)網(wǎng)的損失函數(shù)Lenhance如下所示,其中Ien為增強(qiáng)后的照度分量。
(11)
文中使用LOL數(shù)據(jù)集[18]作為訓(xùn)練數(shù)據(jù)集,其中包括500個低/正常光圖像對。其中485張圖片用來訓(xùn)練,15張圖片用來測試,部分測試圖片如圖5所示。三個子網(wǎng)絡(luò)批大小設(shè)置為10,補(bǔ)丁大小設(shè)置為48×48,λr、λi、λc分別設(shè)置為0.02、0.15、0.004,學(xué)習(xí)率設(shè)置為1×10-4,網(wǎng)絡(luò)整體迭代2 000次。使用Tensorflow框架在Nvidia GTX 1080Ti GPU和Intel Core i7-8700 3.20 GHz CPU上訓(xùn)練整個網(wǎng)絡(luò)。
圖5 測試圖片
為了評估文中方法的性能,與幾種較先進(jìn)的方法進(jìn)行了對比,其中包括Dong等人[10]提出的去霧算法,F(xiàn)u等人[11]提出的SRIE算法,Guo等人[12]提出的LIME算法,以及Wei等人[18]提出的Retinex-Net算法,效果如圖6~圖8所示。
圖6 各算法在書柜圖像上的主觀視覺對比
圖7 各算法在碗柜圖像上的主觀視覺對比
圖8 各算法在跳水臺圖像上的主觀視覺對比
由以上三幅圖中可以看出,文中算法和對比的四種算法都能夠在不同程度上實(shí)現(xiàn)對弱光照圖像的增強(qiáng)。SRIE算法沒有充分改善低光圖像的亮度,并且細(xì)節(jié)不能清楚地看到,增強(qiáng)效果不明顯,圖像亮度仍較暗;LIME算法中明亮區(qū)域的圖像增強(qiáng)過度,增強(qiáng)后的圖像光照不自然,且會出現(xiàn)程度不等的色彩失真,如圖6中書柜顏色泛綠,而真實(shí)圖片為白色,圖7和圖8中圖片增強(qiáng)過度,顯得格外刺眼,與原始光照較好的圖像有一定的差距;Dong算法中的圖像亮度整體偏暗,圖像邊緣處有明顯的黑色輪廓,如圖6中碗柜的邊緣是一些陰影,但增強(qiáng)后出現(xiàn)了嚴(yán)重的輪廓線;Retinex-Net算法能夠有效地改善圖像的亮度,但會導(dǎo)致圖像噪聲過多,圖像整體較模糊且會出現(xiàn)程度不等的色彩失真,如圖6和圖7中的書柜和碗柜中出現(xiàn)了很多黑色的噪聲點(diǎn),而且顏色泛綠,顯然不符合實(shí)際場景。與其他四種方法相比,文中算法能夠提高圖像的亮度、對比度和色彩飽和度,產(chǎn)生了更加生動和自然的結(jié)果,更加接近正常光照下的原始圖像。
為了更客觀地對比各算法的增強(qiáng)表現(xiàn),使用峰值信噪比PSNR(peak signal to noise ratio)和結(jié)構(gòu)相似性指數(shù)SSIM(structural similarity index)對圖像質(zhì)量進(jìn)行評估。表1給出了使用不同算法對測試集中15幅弱光照圖像增強(qiáng)后的PSNR和SSIM的值。從表中可以看出,文中算法相對其他四種算法在PSNR和SSIM上是最優(yōu)的,算法的增強(qiáng)效果尤為突出。以上實(shí)驗(yàn)結(jié)果表明,從主觀視覺和客觀評價指標(biāo)這兩個角度來說,文中算法對弱光照圖像的增強(qiáng)能力均優(yōu)于其他幾種算法。
表1 各種算法的PSNR和SSIM值
提出了一種有效的弱光圖像增強(qiáng)算法,在引導(dǎo)圖像分解時提出了一個損失函數(shù)來約束光照分量的平滑,能夠更加準(zhǔn)確地估計(jì)弱光圖像的照射分量和反射分量。對于反射分量中噪聲的處理不再使用傳統(tǒng)的去噪方法,而是使用U-Net網(wǎng)絡(luò)來恢復(fù)反射分量,照度分量增強(qiáng)過程中學(xué)習(xí)了一種有效映射功能,進(jìn)而增強(qiáng)暗光圖像。實(shí)驗(yàn)結(jié)果表明,該算法在主觀視覺上亮度適中、顏色自然、細(xì)節(jié)清晰,在峰值信噪比和結(jié)構(gòu)相似性等客觀指標(biāo)下也得到了很大程度的提高。接下來的工作,會繼續(xù)對該算法進(jìn)行改進(jìn),使得算法能夠適應(yīng)在一些顏色鮮艷的場景中,更進(jìn)一步地減小顏色失真。