暗通道去霧算法
(基本上都是網(wǎng)上找的資料,也沒(méi)啥好說(shuō)的,就這樣寫吧)


?? ?其中c表示rgb三通道中的某一通道。上式表示在一幅輸入圖像中,先取圖像中每一個(gè)像素的三通道中的灰度值的最小值,得到一幅灰度圖像,再在這幅灰度圖像中,以每一個(gè)像素為中心取一定大小的矩形窗口,取矩形窗口中灰度值最小值代替中心像素灰度值(最小值濾波),從而得到該霧天圖像的暗通道圖像。暗通道圖像為灰度圖像,通過(guò)大量統(tǒng)計(jì)并觀察發(fā)現(xiàn),暗通道圖像的灰度值是很低的,所以將整幅暗通道圖像中所有像素的灰度值近似為0,即:

對(duì)于成像模型,將其歸一化,即兩邊同時(shí)除以每個(gè)通道的大氣光值:

假設(shè)在圖像中一定大小的矩形窗口Ω(x)內(nèi),傳輸函數(shù)t(x)的值為定值t^(x),對(duì)上式兩邊用最小化算子(minimum operators)作最小化運(yùn)算:

? ? ? ? 由于t^(x)在矩形區(qū)域內(nèi)為定值,故將其拿出運(yùn)算符外部。由于場(chǎng)景輻射(scene radiance)是無(wú)霧圖像,將暗通道先驗(yàn)應(yīng)用于J,則有:

? ? ? ? 由于Ac總是正值,則有:

? ? ? ? ??將上式代入到最小化運(yùn)算的式子中,即可得到傳輸函數(shù)的估計(jì)值為:

? ? ? ? 為了防止去霧太過(guò)徹底,恢復(fù)出的景物不自然,應(yīng)引入?yún)?shù)

重新定義傳輸函數(shù)為:

找到兩份代碼,效果相似,第二個(gè)運(yùn)行的快一點(diǎn)
標(biāo)簽: