本發(fā)明涉及計算機(jī)視覺、圖像處理領(lǐng)域恢復(fù)圖像清晰度的算法,特別涉及采用學(xué)習(xí)的方法進(jìn)行去霧的算法
背景技術(shù):
圖像去霧算法是一種從有霧圖像中恢復(fù)出原始無霧圖像的算法,主要目的是提高受到霧的影響而成像質(zhì)量惡化的圖像的清晰度,廣泛應(yīng)用于交通運輸、衛(wèi)星遙感、視頻監(jiān)控、國防軍事等對圖像質(zhì)量有較高要求的行業(yè)。
當(dāng)前,很多方法致力于在學(xué)習(xí)的框架下,通過學(xué)習(xí)反映霧的大小程度的特征與透射率之間的關(guān)系來實現(xiàn)對透射率的預(yù)測,最終通過霧天圖像的成像模型恢復(fù)原始無霧圖像。該類方法的研究重點是如何提取與霧的大小相關(guān)的特征來提高對透射率的預(yù)測準(zhǔn)確性。2014年,tang[1]提出直接從有霧圖像塊中提取暗通道、最大對比度、色調(diào)差異、最大飽和度這幾種能反映霧的大小程度的特征。為了保證對透射率預(yù)測的準(zhǔn)確性及魯棒性,每一種特征又同時提取了不同的尺度。最終,通過訓(xùn)練好的隨機(jī)森林來實現(xiàn)對透射率的估計。在自然場景下,該方法雖然對薄霧區(qū)域有較好的效果,但對于濃霧區(qū)域的透射率估計得準(zhǔn)確度卻大大降低。其主要原因是濃霧區(qū)域的光線比薄霧區(qū)域的光線受到更大的衰減及散射的影響,使得濃霧區(qū)域的各種特征非常的不明顯且高度近似,嚴(yán)重降低了隨機(jī)森林對這部分區(qū)域透射率預(yù)測的準(zhǔn)確性。2015年,zhu[2]發(fā)現(xiàn)亮度與飽和度的差值能夠很好地反映霧的大小。根據(jù)這一先驗知識,通過學(xué)習(xí)的方法得到有霧條件下景物的深度與飽和度和亮度之間的關(guān)系。利用這一關(guān)系,對有霧圖像中景物的深度進(jìn)行估計,從而計算出透射率,最終恢復(fù)原始無霧圖像。同樣,該方法并沒有考慮到濃霧區(qū)域特征非常的不明顯以及該區(qū)域圖像塊之間特征的極度相似性,使得估計出的深度與亮度和飽和度之間關(guān)系的模型無法適用于濃霧區(qū)域。2015年,wang[3]從局部區(qū)域提取對比度直方圖及暗通道特征來訓(xùn)練svm分類器,通過訓(xùn)練好的svm分類器來判斷圖片中天氣的種類以及圖片清晰度的惡化程度。然而,由于濃霧區(qū)域細(xì)節(jié)消失較為嚴(yán)重,使得計算得到的對比度往往只集中在很小的范圍內(nèi)。此外,由于濃霧區(qū)域亮度值變化較小,使得局部圖像塊得到的暗通道特征可區(qū)分性很小。綜上兩方面原因,使得該方法無法應(yīng)用于濃霧區(qū)域。2016年,ren[4]將兩個卷積網(wǎng)絡(luò)結(jié)合起來估計透射率。該方法將有霧圖像作為輸入,同時輸入給粗尺度網(wǎng)絡(luò)及細(xì)尺度網(wǎng)絡(luò),并將兩個網(wǎng)絡(luò)相結(jié)合,最終輸出估計的透射率圖。但由于濃霧區(qū)域的特征非常的近似,且由于網(wǎng)絡(luò)采用的是上采樣及池化操作,使得最終得到的透射率圖在濃霧區(qū)域過于的平滑,無法很好地體現(xiàn)差異性,導(dǎo)致最終恢復(fù)出來的圖像在濃霧區(qū)域細(xì)節(jié)不夠清晰。2016年,cai[5]將原始有霧圖像的圖像塊輸入到卷積神經(jīng)網(wǎng)絡(luò),通過卷積網(wǎng)絡(luò)估計圖像塊的透射率,從而恢復(fù)出原始無霧圖像。綜上,由于濃霧區(qū)域本身存在相關(guān)特征非常不明顯以及局部區(qū)域之間特征高度相似,使得上述基于學(xué)習(xí)的方法對于濃霧區(qū)域透射率預(yù)測的準(zhǔn)確度大大降低,最終導(dǎo)致對于濃霧區(qū)域的去霧效果很不理想。
參考文獻(xiàn):
[1]k.tang,j.yang,j.wang,"investigatinghaze-relevantfeaturesinalearningframeworkforimagedehazing,"inproc.ieeeconf.comput.vis.patternrecognit.,2014.
[2]q.zhu,j.mai,l.shao,"afastsingleimagehazeremovalalgorithmusingcolorattenuationprior,"ieeetrans.imageprocess.,vol.24,no.11,pp.3522–3533,2015.
[3]c.wang,j.ding,l.chen,"hazedetectionandhazedegreedegreeestimationusingdarkchannelchannelsandcontrasthistograms,"inproc.ieeeint.conf.inf.,commun.signalprocess.,2015.
[4]w.ren,s.liu,h.zhang,j.pan,x.cao,m.yang,"singleimagedehazingviamulti-scaleconvolutionalneuralnetworks,"inproc.eur.conf.comput.vis.,2016.
[5]b.cai,x.xu,k.jia,c.qing,d.tao,"dehazenet:anend-to-endsystemforsingleimagehazeremoval,"ieeetrans.imageprocess.,vol.25,no.11,pp.5187–5198,2016.
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的是針對現(xiàn)有基于學(xué)習(xí)的去霧算法存在的對于濃霧區(qū)域的透射率估計不準(zhǔn)確的問題,提出一種對濃薄霧圖像塊進(jìn)行區(qū)分處理及對濃霧圖像塊進(jìn)行預(yù)處理的圖像去霧算法。技術(shù)方案如下:
一種基于區(qū)域劃分及濃霧預(yù)處理的卷積神經(jīng)網(wǎng)絡(luò)去霧算法,該算法首先訓(xùn)練該算法首先訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)w1及w2,w1采用lenet網(wǎng)絡(luò)結(jié)構(gòu),訓(xùn)練步驟如下:
(1)選取m個大小為r×r的無霧圖像塊
其中,y為
暗通道值
其中,c為r、g、b顏色通道中的一個,
(2)對
其中,βk為常數(shù),表示映射函數(shù)第k+1的系數(shù),k∈{1,2,......,k},
(3)將
其中,
w2采用nin網(wǎng)絡(luò)結(jié)構(gòu),訓(xùn)練步驟如下:
(1)任意選取l個大小為r×r的無霧圖像塊
其中,
暗通道值
其中,
(2)計算
其中,ω′(y)表示以y點為中心,大小為r×r的鄰域,y′為該鄰域內(nèi)的像素點,如果ω′(y)超出
(3)將
(4)將色度圖
其中,
算法步驟如下:
步驟1:將有霧圖像ih劃分成n個大小為r×r的不重疊的圖像塊p1,p2,......,pn,設(shè)ih去霧后的結(jié)果為jf,a=(255,255,255)t;
步驟2:對于每個圖像塊pi,計算pi的暗通道值di,公式如下:
其中,ω表示pi內(nèi)所有像素點,
步驟3:如果di≥t,則認(rèn)為pi為濃霧圖像塊,轉(zhuǎn)至步驟4;否則,判定pi為薄霧圖像塊,轉(zhuǎn)至步驟6;
步驟4:對pi進(jìn)行映射,結(jié)果為
其中,
步驟5:將
步驟6:計算pi的暗通道特征圖dmi,計算公式如下:
如果ω′(y)超出pi的范圍,則超出的像素點不參與計算;
步驟7:將有pi轉(zhuǎn)換到hls顏色空間,提取色度分量hi;
步驟8:將dmi及hi輸入到w2中,估計透射率ti;
步驟9:利用步驟5或8中得到的透射率ti,對pi進(jìn)行去霧,得到無霧圖像塊
步驟10:將
本發(fā)明采用了一種基于濃薄霧區(qū)域劃分及濃霧區(qū)域預(yù)處理的卷積神經(jīng)網(wǎng)絡(luò)去霧算法,將圖像塊劃分為濃霧圖像塊及薄霧圖像塊,并對每類圖像塊采用相對應(yīng)的卷積網(wǎng)絡(luò)。特別低,對濃霧圖像塊,在輸入神經(jīng)網(wǎng)絡(luò)之前進(jìn)行增強,使其中的細(xì)節(jié)信息顯露出來。與以往的基于學(xué)習(xí)的圖像去霧算法相比,能夠克服現(xiàn)有方法中存在的由于濃霧區(qū)域特征的不明顯行性及高度的相似性而導(dǎo)致的對透射率估計嚴(yán)重不準(zhǔn)確的問題,提高了透射率估計得準(zhǔn)確性,避免了由于估計不準(zhǔn)確而導(dǎo)致的顏色失真及細(xì)節(jié)不清晰的問題。
附圖說明
本發(fā)明方法流程圖
具體實施方式
本專利提出了一種基于濃薄霧區(qū)域劃分及濃霧區(qū)域預(yù)處理的卷積神經(jīng)網(wǎng)絡(luò)去霧算法。首先,提取有霧圖像中局部圖像塊的暗通道值并與閾值進(jìn)行比較,判斷該圖像塊為濃霧圖像塊或薄霧圖像塊。如果經(jīng)過判斷是濃霧圖像塊,則對該圖像塊進(jìn)行增強處理,然后輸入到卷積神經(jīng)網(wǎng)絡(luò)中,通過卷積網(wǎng)絡(luò)來預(yù)計該圖像塊的透射率;如果是薄霧圖像塊,則提取該圖像塊的色度特征圖及暗通道特征圖,輸入到卷積神經(jīng)網(wǎng)絡(luò)來判斷該圖像塊的透射率。最終,在得到圖像塊透射率值的基礎(chǔ)上,通過霧天圖像的成像模型,計算出原始的無霧圖像。具體方案如下:
該算法首先訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)w1及w2。w1采用lenet網(wǎng)絡(luò)結(jié)構(gòu),訓(xùn)練步驟如下:
(1)任意選取m個大小為r×r的無霧圖像塊
其中,y為
暗通道值
其中,c為r、g、b顏色通道中的一個,
(2)對
其中,βk為常數(shù),表示映射函數(shù)第k+1的系數(shù),k∈{1,2,......,k},
(3)將
其中,
w2采用nin網(wǎng)絡(luò)結(jié)構(gòu),訓(xùn)練步驟如下:
(1)任意選取l個大小為r×r的無霧圖像塊
其中,
暗通道值
其中,
(2)計算
其中,ω′(y)表示以y點為中心,大小為r×r的鄰域,y′為該鄰域內(nèi)的像素點。如果ω′(y)超出
(3)將
(4)將色度圖
其中,
算法步驟如下:
步驟1:將有霧圖像ih劃分成n個大小為r×r的不重疊的圖像塊p1,p2,......,pn,設(shè)ih去霧后的結(jié)果為jf,a=(255,255,255)t;
步驟2:對于每個圖像塊pi,計算pi的暗通道值di,公式如下:
其中,ω表示pi內(nèi)所有像素點,
步驟3:如果di≥t,則認(rèn)為pi為濃霧圖像塊,轉(zhuǎn)至步驟4;否則,判定pi為薄霧圖像塊,轉(zhuǎn)至步驟6。
步驟4:對pi進(jìn)行映射,結(jié)果為
其中,
步驟5:將
步驟6:計算pi的暗通道特征圖dmi,計算公式如下:
如果ω′(y)超出pi的范圍,則超出的像素點不參與計算。
步驟7:將有pi轉(zhuǎn)換到hls顏色空間,提取色度分量hi。
步驟8:將dmi及hi輸入到w2中,估計透射率ti。
步驟9:利用步驟5或8中得到的透射率ti,對pi進(jìn)行去霧,得到無霧圖像塊
步驟10:將