一種基于生成對(duì)抗網(wǎng)絡(luò)的無人機(jī)圖像去霧算法
摘要: 無人機(jī)所采集的圖像容易受到霧霾、霧氣等陰霾天氣干擾,造成圖像質(zhì)量下降。針對(duì)陰霾天氣下無人機(jī)采集圖像的質(zhì)量下降問題,提出了一種新穎的基于生成對(duì)抗網(wǎng)絡(luò)的圖像去霧方法。本方法設(shè)計(jì)了新式生成網(wǎng)絡(luò)和判別網(wǎng)絡(luò),生成網(wǎng)絡(luò)由多層編碼器和解碼器對(duì)稱分布構(gòu)成,判別網(wǎng)絡(luò)由全卷積網(wǎng)絡(luò)構(gòu)成,為了提高生成圖像的清晰度,引入了一種新的對(duì)抗和平滑損失函數(shù)來優(yōu)化整個(gè)網(wǎng)絡(luò)。最后,通過大量實(shí)驗(yàn)表明,基于本文方法進(jìn)行圖像去霧取得了良好的效果,在結(jié)構(gòu)相似度和峰值信噪比等評(píng)價(jià)指標(biāo)以及主觀視覺效果上優(yōu)于已有的圖像去霧方法。
1. 引言
隨著人類社會(huì)的不斷發(fā)展與科技的不斷進(jìn)步,人們已經(jīng)進(jìn)入了信息時(shí)代。無人機(jī)作為這個(gè)時(shí)代信息獲取的獨(dú)特載體,憑借自身優(yōu)勢(shì),在航拍、農(nóng)業(yè)、救災(zāi)防災(zāi)、野生動(dòng)物觀測(cè)、測(cè)繪、電力巡線、電影電視、新聞報(bào)道等領(lǐng)域都有很大的應(yīng)用 [1]。
但隨著人類文明的不斷發(fā)展和工業(yè)化進(jìn)程,出現(xiàn)霧霾天氣的概率大幅增加,無人機(jī)飛行作業(yè)時(shí)所搭載的載荷在采集圖像時(shí)往往都會(huì)受到不同程度的霧氣的干擾??諝庵写嬖谥恍┬∷楹突覊m等小顆粒物,當(dāng)這些顆粒物數(shù)量增多到一定程度時(shí),就會(huì)對(duì)光線的傳播造成影響,會(huì)吸收并散射一部分光線,肉眼可見時(shí)便形成了霧霾天氣。這種對(duì)光線的吸收和散射作用,會(huì)使得無人機(jī)所搭載的載荷采集的圖像成像質(zhì)量變差,具體表現(xiàn)為清晰度下降、對(duì)比度和飽和度降低、動(dòng)態(tài)范圍變小、細(xì)節(jié)信息丟失等問題,導(dǎo)致視覺效果差,后續(xù)難以有效提取和分析圖像細(xì)節(jié)信息,不能滿足應(yīng)用需求,圖1為大氣光衰減示意圖
Figure 1. Diagram of atmospheric light attenuation
圖1. 大氣光衰減示意圖
為了降低霧霾對(duì)圖像采集工作的影響,提高無人機(jī)所搭載載荷采集的圖像的清晰度,加強(qiáng)其實(shí)用性和有效性,因此圖像去霧是亟待解決的問題,同時(shí)也能保障無人機(jī)飛行作業(yè)系統(tǒng)能夠在較差的天氣條件下的正常運(yùn)行。
隨著圖像處理領(lǐng)域的不斷發(fā)展,各種圖像去霧算法被學(xué)者相繼提出,盧漢明等人 [2] 提出將小波變換法與中值濾波法和直方圖匹配法結(jié)合起來進(jìn)行去霧;朱錫芳等人 [3] 提出按照帶霧圖像的熵來決定不同頻段處理的參量來去霧;Fattal等人 [4] 提出了透射率與物體顏色局部不相關(guān)的假設(shè),并利用馬爾科夫模型計(jì)算顏色信息,從而達(dá)到去霧的效果;Tan等人 [5] 研究后發(fā)現(xiàn),無霧的圖像比帶霧圖像相比普遍具有更高的對(duì)比度,可以通過提高圖像的對(duì)比度進(jìn)行去霧,并提出了最大化圖片局部對(duì)比度的方法;He等人 [6] 提出了基于暗通道先驗(yàn)理論對(duì)圖像進(jìn)行去霧。
近年來,深度學(xué)習(xí)發(fā)展迅猛,由于其可以自動(dòng)提取特征,在各個(gè)研究領(lǐng)域發(fā)揮著越來越重要的作用,在計(jì)算機(jī)視覺領(lǐng)域也取得了很大的進(jìn)展,受到了大家的廣泛關(guān)注和討論。越來越多的研究者開始利用深度學(xué)習(xí)的方法取代傳統(tǒng)方法來解決圖像去霧的問題。Cai等人 [7] 提出了一種端到端的去霧網(wǎng)絡(luò)DehazeNet,設(shè)計(jì)了一個(gè)三層卷積神經(jīng)網(wǎng)絡(luò)用于帶霧圖像透射率圖的估計(jì),融合了傳統(tǒng)去霧方法和深度學(xué)習(xí)去霧方法;Tang等人 [8] 將帶霧圖像的先驗(yàn)條件作為輸入,提出了一個(gè)隨機(jī)森林模型用于帶霧圖像透射率圖的估計(jì);Ren等人 [9] 設(shè)計(jì)了一種多層級(jí)卷積神經(jīng)網(wǎng)絡(luò),將細(xì)粒度估計(jì)和粗粒度估計(jì)相結(jié)合,可得到更加精細(xì)的透射率圖;Li等人 [10] 提出了AOD-Net,通過數(shù)學(xué)方法將大氣光和透射率的估計(jì)合成為了一個(gè)變量,避免了額外估計(jì)大氣光的操作。
綜上所述,目前的各種圖像處理方法都存在一定的不足,基于圖像增強(qiáng)的直方圖均衡化相關(guān)算法容易丟失圖像的細(xì)節(jié)信息,基于先驗(yàn)信息的算法處理圖片后常常產(chǎn)生光暈和過飽和現(xiàn)象,暗通道算法存在透射率估計(jì)不精確和顏色退化等問題,已有的神經(jīng)網(wǎng)絡(luò)算法一部分需要依賴已有的物理模型或先驗(yàn)假設(shè),另一部分處理效果不夠理想。因此,本文提出了一種新穎的基于生成對(duì)抗網(wǎng)絡(luò)的無人機(jī)圖像去霧算法。
2. 網(wǎng)絡(luò)模型設(shè)計(jì)
圖像去霧的目的是在不損失圖像基本細(xì)節(jié)信息的條件下,盡量多地處理掉目標(biāo)圖像的霧氣信息 [11]。使用傳統(tǒng)方法進(jìn)行圖像去霧在去霧效果上有一定的局限性,但大多數(shù)方法都不會(huì)破壞圖像的基本細(xì)節(jié)信息,不容易出現(xiàn)嚴(yán)重的圖像失真。但對(duì)于基于深度學(xué)習(xí)的圖像去霧方法,網(wǎng)絡(luò)的設(shè)計(jì)非常關(guān)鍵,一旦設(shè)計(jì)不當(dāng),處理后的圖像會(huì)嚴(yán)重失真,后續(xù)調(diào)整參數(shù)也無法有效改善其處理效果。生成對(duì)抗網(wǎng)絡(luò)最重要的三個(gè)關(guān)鍵方向就是生成網(wǎng)絡(luò)、對(duì)抗網(wǎng)絡(luò)和損失函數(shù)LOSS。
2.1. 生成網(wǎng)絡(luò)
本文采用深度學(xué)習(xí)中生成對(duì)抗網(wǎng)絡(luò)的方法,可以對(duì)帶霧圖像進(jìn)行端到端的去霧,輸入目標(biāo)帶霧圖像經(jīng)過處理后即可得到相應(yīng)的去霧圖像,在去霧過程中不需要估計(jì)額外的物理參數(shù)。如圖2所示,生成網(wǎng)
Figure 2. Generator network structure
圖2. 生成網(wǎng)絡(luò)結(jié)構(gòu)
絡(luò)的前半部分可以當(dāng)成一個(gè)數(shù)據(jù)編碼器,用來對(duì)原始圖像的特征進(jìn)行提取,在此部分,每一個(gè)密度塊后邊放置一個(gè)下采樣層。生成網(wǎng)絡(luò)的后半部分可以當(dāng)成一個(gè)與前半部分編碼器對(duì)應(yīng)的解碼器,在此部分,每一個(gè)密度塊后邊放置一個(gè)上采樣層,對(duì)前半部分傳遞的圖像特征進(jìn)行上采樣,可以把經(jīng)下采樣縮小的圖像特征重新放大到圖像的原始尺寸,以確保網(wǎng)絡(luò)輸出正確。每次上采樣步驟完成后,通過卷積層進(jìn)行學(xué)習(xí),豐富信息,可以使在編碼操作時(shí)丟失的圖像特征信息在解碼操作時(shí)能夠部分找回。對(duì)解碼器和對(duì)稱編碼器中的特征圖采取融合處理操作,可以確保解碼器的特征能夠正常表達(dá)。
2.2. 對(duì)抗網(wǎng)絡(luò)
對(duì)抗網(wǎng)絡(luò)的作用是可以對(duì)生成網(wǎng)絡(luò)生成的圖像和數(shù)據(jù)集原始不帶霧圖像進(jìn)行對(duì)比判斷,用來甄別生成網(wǎng)絡(luò)生成無霧圖像的好壞,同時(shí)也將參數(shù)逆?zhèn)鬟f,輔助生成網(wǎng)絡(luò)生成質(zhì)量更好的無霧圖像。本文建立了一個(gè)五層的卷積神經(jīng)網(wǎng)絡(luò),結(jié)構(gòu)如圖3所示,對(duì)生成的圖像與無霧圖像進(jìn)行逐塊比較,提高了判別的準(zhǔn)確性。對(duì)抗網(wǎng)絡(luò)的輸出為一個(gè)[0, 1]之間的概率值,當(dāng)生成網(wǎng)絡(luò)生成的圖像越接近真實(shí)無霧圖像時(shí),判別器的輸出越靠近0;當(dāng)生成的圖像越靠近原始帶霧圖像時(shí),判別器的輸出越靠近1。
Figure 3. Discriminator network structure
圖3. 對(duì)抗網(wǎng)絡(luò)結(jié)構(gòu)
2.3. 損失函數(shù)
對(duì)于深度學(xué)習(xí)圖像去霧模型來說,生成網(wǎng)絡(luò)生成的無霧圖像與原始帶霧圖像之間有很多相似的圖像信息,在訓(xùn)練過程中容易發(fā)生過擬合。為了確保網(wǎng)絡(luò)生成無霧圖像的清晰度以及與原帶霧圖像之間的相似性,不發(fā)生圖像失真,總的損失函數(shù)Loss [12] [13] 由兩部分組成,其中L1是對(duì)抗Loss,L2是平滑Loss,W分別代表權(quán)重。
其中G為生成器,D為判別器,x為輸入帶霧的圖像,y為x所對(duì)應(yīng)的無霧圖像,z為隨機(jī)噪聲。
3. 模型訓(xùn)練實(shí)驗(yàn)
3.1. 數(shù)據(jù)集與實(shí)驗(yàn)設(shè)置
本方法訓(xùn)練中所用的數(shù)據(jù)集采用D-HAZY DATASET。進(jìn)行訓(xùn)練之前,先對(duì)數(shù)據(jù)集中的待訓(xùn)練數(shù)據(jù)進(jìn)行預(yù)處理,為了確保訓(xùn)練時(shí)網(wǎng)絡(luò)能正常進(jìn)行梯度計(jì)算和更新,將圖像統(tǒng)一分割調(diào)整為256 × 256像素的圖像,并做成對(duì)化處理,形成了1472對(duì)包含同一場(chǎng)景有霧和無霧圖像的對(duì)比數(shù)據(jù)集。訓(xùn)練環(huán)境基于搭載了NVIDIA GTX1080 GPU計(jì)算機(jī)的Tensorflow上,訓(xùn)練過程中采用Adam優(yōu)化,學(xué)習(xí)率設(shè)置為0.0001,benchsize設(shè)置為4,epoch設(shè)置為400。
3.2. 實(shí)驗(yàn)流程
本方法流程如下:首先設(shè)計(jì)去霧所需的生成對(duì)抗網(wǎng)絡(luò)模型,并建立訓(xùn)練網(wǎng)絡(luò)模型所需要的數(shù)據(jù)集,進(jìn)行整理和預(yù)處理;
將數(shù)據(jù)集中的帶霧樣本圖像輸入已設(shè)計(jì)的生成網(wǎng)絡(luò)中,生成器對(duì)該樣本圖像進(jìn)行去霧處理;
將生成網(wǎng)絡(luò)去霧處理的樣本圖像和數(shù)據(jù)集中對(duì)應(yīng)的無霧樣本圖像輸入已設(shè)計(jì)的對(duì)抗網(wǎng)絡(luò)中,判別器對(duì)兩幅圖像進(jìn)行判別,設(shè)定閾值判斷圖像的真假,計(jì)算損失函數(shù)Loss等模型參數(shù);
將參數(shù)反饋給生成網(wǎng)絡(luò),生成網(wǎng)絡(luò)調(diào)整參數(shù),并更新生成網(wǎng)絡(luò)模型;
重復(fù)上述步驟,直到訓(xùn)練完成,獲得訓(xùn)練模型;
將需要去霧的帶霧圖片輸入到該已訓(xùn)練完成的模型中,得到去霧后的無霧圖片,圖4為網(wǎng)絡(luò)模型訓(xùn)練流程。
Figure 4. Model training process
圖4. 模型訓(xùn)練流程
4. 實(shí)驗(yàn)結(jié)果分析與評(píng)價(jià)
對(duì)于圖像去霧效果好壞的評(píng)價(jià),選取其他圖像去霧算法與之比較是比較直觀的辦法,本文列舉了幾種典型場(chǎng)景下不同的圖像去霧方法對(duì)圖像進(jìn)行去霧的效果,如圖5所示。
Figure 5. Comparison of different defogging methods
圖5. 多種去霧方法對(duì)比效果圖
圖像去霧方法的去霧效果需要有一定的評(píng)價(jià)指標(biāo),而評(píng)價(jià)一幅圖像的質(zhì)量有兩種方法,按照評(píng)價(jià)者是否為人類,可以分為主觀評(píng)價(jià)方法和客觀評(píng)價(jià)方法 [14] [15]。本文選取圖像的結(jié)構(gòu)相似度(structural similarity index measurement, SSIM) [16] 和峰值信噪比(peak signal to noise ratio, PSNR) [17] 這兩個(gè)指標(biāo)進(jìn)行計(jì)算,通過量化的結(jié)果對(duì)各圖像去霧算法進(jìn)行評(píng)價(jià)。
從主觀上來看,在城市場(chǎng)景中,四種方法都能有效的去除霧氣,但基于中值濾波方法和基于暗通道先驗(yàn)方法還有少量殘余,DehazeNet方法亮度較低,基于生成對(duì)抗網(wǎng)絡(luò)的去霧方法對(duì)比度較高,效果較好。
在交通場(chǎng)景中,四種去霧方法效果差距不大,都能較為清晰的還原鐵路的細(xì)節(jié)和機(jī)車的輪廓。
在農(nóng)田場(chǎng)景中,中值濾波方法偏離原圖的色彩較大,色彩失真,而且霧氣沒有去除干凈,效果不理想;基于暗通道先驗(yàn)的方法,主體部分效果不錯(cuò),但是在遠(yuǎn)處高光部分有色斑,細(xì)節(jié)丟失,DehazeNet方法去霧不徹底,這個(gè)場(chǎng)景中基于生成對(duì)抗網(wǎng)絡(luò)的去霧方法效果更好。
在森林場(chǎng)景中,中值濾波方法依舊色偏較大,色彩失真,處理結(jié)果不甚理想,而基于暗通道先驗(yàn)的方法和基于生成對(duì)抗網(wǎng)絡(luò)的去霧方法能清晰的看到樹葉和樹干的細(xì)節(jié),效果令人滿意,DehazeNet方法的效果稍遜一籌。同時(shí)可以看到,樹林深處還是有沒有處理干凈的霧氣,這說明當(dāng)霧過于濃導(dǎo)致帶霧圖像上部分細(xì)節(jié)幾乎完全丟失時(shí),這些算法都無法很好的應(yīng)對(duì),因此,在后續(xù)的研究中,應(yīng)當(dāng)針對(duì)濃霧問題繼續(xù)改進(jìn)算法。
表1為多種去霧方法的客觀評(píng)價(jià)結(jié)果,從上述客觀評(píng)價(jià)指標(biāo)可以看出,在大多數(shù)場(chǎng)景下,基于生成對(duì)抗網(wǎng)絡(luò)的方法去霧后的圖像不論是在結(jié)構(gòu)相似度還是在峰值信噪比的得分都相對(duì)較高,證明圖像顯得更加明亮和生動(dòng),具有更清晰的邊緣和細(xì)節(jié)信息,效果較好。這與主觀評(píng)價(jià)中通過肉眼觀察到的結(jié)論是一致的,相互得到了印證
客觀評(píng)價(jià)指標(biāo) | 中值濾波方法 | 暗通道先驗(yàn)方法 | DehazeNet | 本文方法 |
SSIM | 0.674 | 0.758 | 0.763 | 0.776 |
PSNR | 15.07 | 17.07 | 17.31 | 18.06 |
Table 1. Objective evaluation results
表1. 客觀評(píng)價(jià)結(jié)果
5. 結(jié)語
深度學(xué)習(xí)方法為很多圖像處理問題打開了新的天地,本文構(gòu)建了新的生成器和判別器,提出了構(gòu)建一個(gè)生成對(duì)抗網(wǎng)絡(luò)GAN來對(duì)圖像進(jìn)行去霧的方法,在典型場(chǎng)景中與其他其他去霧方法進(jìn)行對(duì)比,無論主觀評(píng)價(jià)指標(biāo)還是客觀評(píng)價(jià)指標(biāo)都表現(xiàn)出了較好的效果,本文算法得到的去霧圖像具有更清晰的邊緣和細(xì)節(jié)信息,在部分場(chǎng)景生成的去霧圖像更接近無霧圖像,結(jié)構(gòu)相似度與峰值信噪比的得分更高,具有較好的圖像質(zhì)量,體現(xiàn)了神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì)。但在分析中可以看到,本方法對(duì)特別濃厚的霧的去除效果不太好,而其他對(duì)比的方法也無法去除濃霧,因此濃霧的去除是未來值得研究的一個(gè)方向。
審核編輯:湯梓紅
評(píng)論
查看更多