李藤,劉凱雷
(黑龍江科技大學電氣與控制工程學院,黑龍江哈爾濱,150022)
安全生產(chǎn)是煤礦企業(yè)發(fā)展的關(guān)鍵,視頻監(jiān)控是當前煤礦安全生產(chǎn)系統(tǒng)中的重要組成部分[1]。由于井下環(huán)境存在燈光照射不均勻,空氣中有大量粉塵等因素,井下視頻監(jiān)控質(zhì)量容易受到影響。目前所使用的礦井下低照度圖像增強算法大多為以Retinex算法為主的傳統(tǒng)算法及其改進算法。
低照度圖像增強方法主要分為傳統(tǒng)算法和深度學習方法兩類[2]。傳統(tǒng)方法中,基于Retinex 理論主要在頻域中增強圖像。Z Rahman提出帶色彩恢復的多尺度Retinex算法(MSRCR)[3],該算法對圖像具有一定的增強效果但該算法處理后的圖像會出現(xiàn)部分邊緣細節(jié)消失和圖像整體泛白出現(xiàn)光暈現(xiàn)象。程德強等提出了基于引導濾波的單尺度Retinex算法[4],采用引導濾波進行照度估計,并改進對比度增強方法,能夠有效地保留圖片的邊緣信息,增強了圖像的對比度。蔡利梅等人提出自適應(yīng)HSV空間Retinex算法[5],利用自適應(yīng)增強系數(shù)對反射分量進行增強處理,實現(xiàn)了參數(shù)自適應(yīng),提高了圖像的對比度與亮度。Wei等人根據(jù)Retinex理論,使用卷積神經(jīng)網(wǎng)絡(luò),將圖像增強過程分為圖像分解、圖像增強兩個階段,提出了Retinex-Net[6],該算法可以對低照度圖像進行增強,但增強后的圖像存在明顯的失真。
本文使用的KinD-Net算法[7]是基于深度學習的低照度圖像增強,該算法采用了分階段的模式,包括圖像分解、反射圖恢復、照度圖調(diào)整三個模塊。反射恢復模塊中通過引入照度圖信息減小圖像的顏色失真并加入去噪模塊抑制圖像增強過程中產(chǎn)生的噪聲。圖像分解模塊加入重構(gòu)損失,相互一致性損失與光照平滑損失增強圖像的邊緣細節(jié)。照度調(diào)整模塊提高圖像的亮度。
KinD-Net算法可以有效地優(yōu)化圖像暗光線部分的退化問題,還可以靈活地調(diào)整曝光條件。該算法由三個模塊構(gòu)成,分解模塊、反射模塊與亮度調(diào)整模塊。該網(wǎng)絡(luò)的輸入為一個包含低光照與正常光照的圖像對,通過分解模塊,將兩張圖片分別分解為反射圖與照度圖,低光照圖像的反射圖與照度圖通過恢復模塊與正常光照圖片的反射圖進行降噪處理后合并得到輸出的反射圖,低光照圖像的照度圖輸入亮度調(diào)整模塊后與正常光照圖像的照度圖合并得到調(diào)整亮度后的照射圖,恢復模塊輸出的反射圖與亮度調(diào)整模塊輸出的照度圖合并得到增強后的圖片。如圖1所示為KinD-Net算法結(jié)構(gòu)

圖1 kinD-Net 算法結(jié)構(gòu)
1.1.1 分解模塊
該模塊的作用是把圖片分為照射分量與反射分量。從一個圖像中恢復兩個組件是一個高度不適定問題,在光照條件下,圖像的標準反射率與照度圖是很難獲取的,因為這里面存在人們的主觀意向。光照發(fā)生變化不會影響物體對光的固有屬性。在理想狀態(tài)下分解反射率對(Rl與Rh)應(yīng)該相同,所以此處設(shè)計反射相似性損失如式(1)所示。

光照平滑度損失如式(2)所示,該損失對邊緣位置的懲罰很小,對平坦區(qū)域的懲罰會比較大。Li表示正常光配置,Lh表示曝光配置。

為了強化邊緣信息設(shè)計了相互一致性損失如式(3)所示,光照梯度的大小表示表示光照在物體上的位置,較大則表示在物體的邊緣,較小表示在物體表面。該損失會在梯度處于中間值時進行懲罰。c表示常數(shù)值。

分解模塊被分解的兩層需要重新生成輸入,而輸入受到重構(gòu)誤差的約束如式(4)所示,因此層分解模塊的損失函數(shù)為式(5)所示。Il表示圖像的照度,Ih表示圖像的反射率

1.1.2 反射恢復模塊
該模塊的作用是反射圖的恢復。低照度圖像的反射圖與照度圖作為輸入,通過4次卷積與池化操作后提取圖像的輸入特征,再通過4次卷積與上采樣實現(xiàn)降噪模塊。低光照圖像的反射圖比正常光照的反射圖更容易收到退化的影響,為了有效地降噪,該模塊的損失函數(shù)如式6所示。

1.1.3 亮度調(diào)整模塊
該模塊的作用是亮度調(diào)節(jié)。低光照圖像的照度圖作為輸入,使用兩層3*3以ReLU作為激活函數(shù)的卷積層獲取照度圖的光照信息,再經(jīng)過一次3*3的卷積操作后利用Sigmoid層輸出亮度調(diào)節(jié)后的照度圖。該模塊的損失函數(shù)如式(7)所示:

本文使用的訓練數(shù)據(jù)集為公開數(shù)據(jù)集LOL dataset,對該數(shù)據(jù)集進行了重新排列并添加了幾張全零圖像,以改善分解結(jié)果和恢復結(jié)果。該數(shù)據(jù)集包含485對低光照/正常光照訓練圖像和測試圖像。訓練數(shù)據(jù)使用imgaug庫實現(xiàn)數(shù)據(jù)的預處理,做幾何變換,像素變換等操作。
網(wǎng)絡(luò)采用圖像對訓練,批量化大小設(shè)置為10,塊大小設(shè)為48*48,像素塊尺寸為384*384。本文采用Adam優(yōu)化器對整個模型進行優(yōu)化。整個網(wǎng)絡(luò)的訓練在NVIDIA GTX 3060 GPU設(shè)備上完成,實現(xiàn)代碼基于TensorFlow框架。Tensorflowgpu 1.13 版本,numpy 1.19版本。
為了驗證本文所使用算法在普通場景以及礦井下的處理效果,使用了以下對比算法做對比實驗:Retinex算法,MSRCR算法,基于HSV色彩空間下的MSRCR算法與Retinex-Net算法。
為了驗證本文所使用的KinD-Net算法的優(yōu)越性,選取了三張礦井下工作面、巷道等真實場景的低光照圖片。在礦井下各算法的處理效果如圖2,圖3,圖4所示。礦井下的三種場景都受到了不均勻光照,圖像存在高亮度與低亮度區(qū)域,符合煤礦下惡劣的環(huán)境,可以很好地對算法進行檢驗。從主觀角度上這幾種算法對圖像的亮度都有明顯的增強但還是存在一些問題,在場景一中,Retinex算法與MSRCR算法處理后的圖片存在過度增強問題,圖像出現(xiàn)光暈現(xiàn)象。Retinex-Net算法處理后的圖片出現(xiàn)明顯的顏色失真問題,圖像的一些紋理細節(jié)也有一定程度的丟失。HSV MSRCR算法處理后的圖片略微出現(xiàn)顏色失真問題,本文算法相比較其它算法有較好的圖像增強效果。在場景二中,四種對比算法處理后的圖片都出現(xiàn)了明顯的噪聲,本文算法對圖像低光照區(qū)域增強后并沒有明顯的噪聲。場景三中,HSV MSRCR算法與Retinex-Net算法處理后的圖片存在顏色失真的問題,四種對比算法沒有消除圖像低亮度區(qū)域的噪聲,反而在增強圖片的同時,放大了該區(qū)域的噪聲。本文算法處理后,圖像效果清晰且提高了圖像低光照區(qū)域的亮度以及對比度,邊緣特征相比較其他算法也都較好地保留下來。從主觀角度評價,本文算法針對礦井下不同場景的低照度圖像有較好的增強效果。

圖2 場景一不同算法比較

圖3 場景二不同算法比較

圖4 場景三不同算法比較
從客觀角度上,本文使用了峰值信噪比(PSNR)與結(jié)構(gòu)相似性(SSIM)來評價算法的結(jié)果。各算法的處理結(jié)果如表1和表2所示,各算法對圖像都有所增強。本文算法在礦井下的三種場景中都取得最高的峰值信噪比與機構(gòu)相似性,峰值信噪比越高說明圖像失真程度越小,結(jié)構(gòu)相似性越高也說明圖像失真程度越小。從客觀角度評價,本文算法優(yōu)化了顏色失真問題,礦井下的圖像得到了較好的增強效果。

表1 各算法處理結(jié)果的的PSNR值對比

表2 各算法處理結(jié)果的SSIM值對比
針對井下生產(chǎn)環(huán)境惡劣,光線差,亮度低,存在大量光照不均勻圖片為礦井下視頻監(jiān)控帶來不便這個問題,本文提出使用KinD-Net算法對礦井下圖片進行去噪增強,該算法在圖像分解網(wǎng)絡(luò)中加入重構(gòu)損失,反射圖恢復網(wǎng)絡(luò)中加入去噪模塊,抑制圖像增強過程中產(chǎn)生的噪聲。在反射恢復網(wǎng)絡(luò)中引入照度圖信息減少圖像顏色失真。本文選取Retinex算法、MSRCR算法、HSV MSRCR算法與Retinex-Net算法做對比實驗,引入峰值信噪比,結(jié)構(gòu)相似性作為評價指標,在主觀角度與客觀角度綜合評價后,得出結(jié)論:本文算法可以有效提高提高圖像的亮度,減弱圖像失真問題使處理后的圖像有較為理想的增強結(jié)果。