關於暗通道先驗去霧問題的小結

2021-09-08 23:55:34 字數 739 閱讀 8785

前段日子導師甩給我一篇何博士的**,叫做《single image haze removal using dark channel prior》,利用統計得來的暗通道先驗實現對有霧影象的去霧問題,現大概說說對**中的幾個點。

其中,i為haze image,即輸入影象, j:haze free image,即目標影象 a:大氣光atmopheric light t: 透射率transmission,現在的已知條件就是i(x),要求目標值j(x),所以需要一些先驗條件,才能確定目標值j(x)。

在無霧影象中,在大多數區域性區域內,其中的一些畫素會在某個通道內含有非常低的畫素值(換句話說也就是,在某個區域內,所有畫素的各個通道的最小值的畫素值非常小(0~16))。這些畫素值的產生主要是由於陰影(shadow), 彩色物體(colorful object)(某乙個通道的值太大,導致其他通道的值小), 黑色物體。

以上為暗通道先驗的數學定義,式中jc表示彩色影象的每個通道 ,ω(x)表示以畫素x為中心的乙個視窗。

由於大氣光的影響,haze image要比haze-free image更白,也就是說暗通道處要更亮,並且霧越農,暗通道便會越白。通過這個特性,便可以使用dark channel prior去估計霧了。

暗通道先驗原理 DCP去霧演算法

一 霧圖形成模型 變形 c為r g b三通道。二 dark channel prior 統計規律 對於乙個無霧影象,每個區域性區域很可能至少乙個顏色通道會有很低的值,或黑色東西。非天空區域 每個區域性區域都總有一些很暗的東西。dark object subtraction 利用全圖最暗點來去除全域性...

瞎搞系列 暗通道去霧

基於暗通道先驗的去霧演算法實際上是一種統計演算法,發現了無霧影象中區域性存在一些畫素,這些畫素至少有乙個顏色通道的亮度值非常非常低 但是當影象區域白色的時候,這種演算法則存在缺陷 在計算機圖形學中,存在乙個比較重要的模型,這種模型的廣泛應用於霧圖中 其中i x 表示觀測到的亮度,j x 表示恢復後的...

暗通道去霧演算法的python實現

import cv2 as cv import numpy as np import matplotlib.pyplot as pyplot def darkchannel for i in range 0,rows 1 for j in range 0,cols 1 min rgb img arr...