引導濾波GuidedFilter
何愷明讀博士提出基於暗通道採用引導濾波去霧演算法獲CVPR2009最佳論文,現在應用面很廣、很廣;能夠克服雙邊濾波的梯度翻轉現象,在濾波後影像的細節上更優,主要美顏演算法差不多都用這個。
先貼虛擬碼:
實現的話可以採用積分圖加速。
線性濾波器
其中I是引導影像,P是輸入的待濾波影像,W是根據引導圖I確定的權重值,Q是濾波後的輸出影像。
1、如果權重W與引導圖無關,那便是一個常量,比如高斯濾波那種,這種我們相對就特別好理解。
2、如果權重與引導圖相關,我們的影像就會受到引導圖影響,比如雙邊濾波中,我們採用和中心畫素差值作為引導,但這嚴格上還算不上引導圖。只能只能時有影響,有引導。
權重確定:
μ
k
μ_k
μk是視窗內畫素點的均值,
I
i
I_i
Ii指位於視窗中心的畫素值,
I
j
I_j
Ij指視窗內j位置的畫素點的值,
σ
k
2
σ_k^2
σk2代表視窗內畫素點的方差,ε是一個懲罰值。
( I i − μ k ) ( I j − μ k ) (I_i-μ_k)(I_j-μ_k) (Ii−μk)(Ij−μk)這一項表明,如果中心畫素值 I i I_i Ii小於均值時, I j I_j Ij如果約大於均值,該項值就是負值,權重1+(-0.幾)就會越小
ε懲罰項的值越大,則分母越大,引導圖對影像的影響就越小,極端情況(比如正無窮), W i j W_{ij} Wij就將退化為 1 / w 2 1/w^2 1/w2,這個 w w w呢,實際上就是視窗邊長,也就是說極端情況下會退化為均值濾波器
但是,實際上我們不用搞得太複雜,我們直接假設該點輸出值和該點引導圖的值是線性關係:
然後我們採用最小二乘去估計出
a
k
、
b
k
a_k、b_k
ak、bk兩個係數即可:
a的分子為I和P的協方差,分母部分為I的方差加上截斷值ε,b的值為P的均值減去a乘以I的均值。可以看出當a值很小時,b約等於視窗內畫素點的均值pk,近似於均值濾波。而當a值很大時,輸出則主要取決於a*▽I的大小,梯度資訊能夠得到保留。
相關文章
- [Python影象處理] 四.影象平滑之均值濾波、方框濾波、高斯濾波及中值濾波Python
- 均值濾波
- OpenCV計算機視覺學習(4)——影像平滑處理(均值濾波,高斯濾波,中值濾波,雙邊濾波)OpenCV計算機視覺
- 【OpenCV】鄰域濾波:方框、高斯、中值、雙邊濾波OpenCV
- 數字濾波器和模擬濾波器(一)
- 圖片濾波
- OpenCV 線性濾波OpenCV
- vivado fir濾波器
- 卡爾曼濾波
- 點雲濾波器與過濾器過濾器
- 濾波演算法——十大濾波演算法程式大全演算法
- 空域濾波演算法演算法
- LMS自適應濾波
- 音訊降噪-fir濾波器音訊
- 頻率域濾波基本操作
- 實驗六 有源濾波器
- 利用Matlab filterDesigner 工具生成FIR濾波器函式,並呼叫實現低通濾波MatlabFilter函式
- 卡爾曼濾波器(Kalman Filters)Filter
- 1.影像濾波與影像融合
- 卡爾曼濾波學習資料
- Kalman濾波器的原理與實現
- 卡爾曼濾波 跑通調參
- matlab 濾波器中用到的函式Matlab函式
- 卡爾曼濾波器預測原理
- nuxt 過濾 query 引數UX
- 芯和半導體“射頻EDA/濾波器設計平臺”閃耀IMS2022
- 詳解卡爾曼濾波(Kalman Filter)原理Filter
- 卡爾曼濾波器階次問題
- Unity元件:AudioChorusFilterPROonly音訊合聲濾波器Unity元件Filter音訊
- OpenCV計算機視覺學習(10)——影像變換(傅立葉變換,高通濾波,低通濾波)OpenCV計算機視覺
- 比例閥驅動電路後級PWM濾波尖刺如何消除?PWM通過RC低通濾波器模擬DAC
- 圖解卡爾曼濾波(Kalman Filter)--理解1圖解Filter
- 判斷低通濾波器的相位變化
- 10種軟體濾波方法的示例程式
- C語言實現多級濾波—乾貨C語言
- 關於fNIRS帶通濾波頻段選擇
- 影像處理技術(二)濾波去噪(上)
- 通道均衡之線性均衡——迫零濾波器