圖像降噪的一些總結

圖像降噪,是最簡單也是最基礎的圖像處理逆問題(inverse problem)。

 

大多數情況下,圖像降噪都是ill-posed的問題。因爲通過有噪音的觀察,總是無法逆向求得唯一正確的乾淨圖片。就好像讓你解一個超越方程一樣,不借助其他額外的條件信息,是沒有唯一解的。

 

降噪問題(這裏只討論additive noise),用最簡單的數學語言一句話就可以描述清楚:

y = x + e

 

y是你觀察到的帶噪音的圖像,e是噪音,x是乾淨無噪音的圖像。只已知y,外加e的概率分佈,降噪問題需要你去尋找最接近真實值的x。

 

說起來降噪問題如此簡單明瞭,但自從信號處理開宗立派起,研究人員一直在孜孜不倦地提出各種降噪算法。我最早也沒搞懂,大家何必糾結於這麼簡單的問題,而不去考慮更復雜,更貼近實際的花哨應用?

 

然而世間萬物的規律,萬變不離其中:不管多複雜問題,其本質往往都有簡單的起源。而看似簡單的問題,往往卻是高手一身修行的追求:就好像考察一個書法家功力,看他寫一個永字就好;看一個川菜廚師功力,看他做一道開水白菜就好。

 

科研之道和其他道也類似,簡單的任務見到的是這個approach的潛力:這僅僅是起點,而不是終點。一個好的科研者應該要着眼於起點,追求問題的本源,然後拓展到未來,此爲道。只追求花哨的應用,拼湊堆疊,捨本求末甚至本末倒置,只能爲術。

 

好吧,扯遠了。我就是想說,圖像降噪問題,最簡單也最困難。

 

那麼要怎麼解好這個逆問題呢?

 

降噪的本質,是要從觀測值中分離噪音,保留圖像。算法的關鍵,是要掌握並藉助於圖像本身獨特的性質和結構。具體用什麼性質,這個流派就多了,我在這裏就先提供一個不完全總結,關於近期的一些好的圖像降噪算法。

 

根據算法利用了什麼圖像性質,或者用到的手段,我大概把各種算法分成如下幾類:

  1. 濾波類
  2. 稀疏表達類
  3. 外部先驗
  4. 聚類低秩
  5. 深度學習

 

 

我根據我的瞭解,對於每一個類比總結了一個常見算法列表。

 

入選的算法要滿足:1.近期(05年以後)提出的算法,2.有可復現的代碼提供,3.可以得到很好,或者接近state-of-the-art的效果。

 

由於我的水平有限,希望同行高手來幫這個public repo添磚加瓦。

 

以下是可復現的圖像降噪算法列表,包含了簡要的算法介紹,若想了解算法詳情,可在該鏈接中查看:https://github.com/wenbihan/reproducible-image-denoising-state-of-the-art

 

Filter

  • NLM

A non-local algorithm for e denoising (CVPR 05), Buades et al.

  • BM3D

Image restoration by sparse 3D transform-domain collaborative filtering (SPIE Electronic Imaging 2008), Dabov et al.

  • PID

Progressive Image Denoising (TIP 2014), C. Knaus et al.

 

Sparse Coding

  • KSVD

Image Denoising Via Sparse and Redundant Representations Over Learned Dictionaries (TIP 2006), Elad et al.

  • LSSC

Non-local Sparse Models for Image Restoration (ICCV 2009), Mairal et al.

  • NCSR

Nonlocally Centralized Sparse Representation for Image Restoration (TIP 2012), Dong et al.

  • OCTOBOS

Structured Overcomplete Sparsifying Transform Learning with Convergence Guarantees and Applications (IJCV 2015), Wen et al.

  • GSR

Group-based Sparse Representation for Image Restoration (TIP 2014), Zhang et al.

 

Effective Prior

  • EPLL

From Learning Models of Natural Image Patches to Whole Image Restoration (ICCV2011), Zoran et al.

  • GHP

Texture Enhanced Image Denoising via Gradient Histogram Preservation (CVPR2013), Zuo et al.

  • PGPD

Patch Group Based Nonlocal Self-Similarity Prior Learning for Image Denoising (ICCV 2015), Xu et al.

  • PCLR

External Patch Prior Guided Internal Clustering for Image Denoising (ICCV 2015), Chen et al.

 

Low Rank

  • SAIST

Nonlocal image restoration with bilateral variance estimation: a low-rank approach (TIP2013), Dong et al.

  • WNNM

Weighted Nuclear Norm Minimization with Application to Image Denoising (CVPR2014), Gu et al.

  • Multi-channel Weighted Nuclear Norm

Multi-channel Weighted Nuclear Norm Minimization for Real Color Image Denoising (ICCV 2017), Xu et al.

 

Deep Learning

  • SF

Shrinkage Fields for Effective Image Restoration (CVPR 2014), Schmidt et al.

  • TNRD

Trainable nonlinear reaction diffusion: A flexible framework for fast and effective image restoration (TPAMI 2016), Chen et al.

  • DnCNN

Beyond a Gaussian Denoiser: Residual Learning of Deep CNN for Image Denoising (TIP2017), Zhang et al.

 

Combined with High-Level Tasks

  • Meets High-level Tasks

When Image Denoising Meets High-Level Vision Tasks: A Deep Learning Approach (Arxiv2017), Ding Liu, Bihan Wen, Xianming Liu, Thomas S. Huang.

 

Benchmark

  • Darmstadt

Benchmarking Denoising Algorithms with Real Photographs (CVPR 2017), Tobias Plotz, Stefan Roth.

 

下面對於這幾類算法的一些簡略地解釋:

 

濾波類:相對比較傳統的一類算法,通過設計濾波器對圖像進行處理。特點是速度往往比較快,很多卷積濾波可以藉助快速傅里葉變化來加速。近期的一些算法例如BM3D也結合了一些block matching來利用圖片的self-similarity,達到了很棒的效果。

 

稀疏表達類:自然圖片之所以看起來不同於隨機噪音/人造結構,是因爲大家發現他們總會在某一個模型(synthesis model或者analysis model)下存在稀疏表達。而我們想排除的噪音往往無法被稀疏化。基於這個判別式模型(discriminative model),用稀疏性來約束自然圖像,在很多逆問題裏取得了拔羣的效果。

 

外部先驗(external prior):如果從有噪音的圖片本身無法找到規律,我們也可以藉助其他類似但又沒有噪音的圖片,來總結圖片具有的固有屬性。這一類方法利用的外部圖片來創造先驗條件,然後用於約束需要預測的圖片。最有代表性的工作,就是混合高斯模型(Gaussian Mixture Model)。嚴格來說,基於深度學習的算法也可以歸於這個類。

 

聚類低秩(Low-Rankness):除了可稀疏性,低秩性也是自然圖片常見的一個特性。數學上,可稀疏表達的數據可以被認爲是在Union of low-dimensional subspaces;而低秩數據則是直接存在於一個Low-dimensional subspace。這個更嚴格的限制往往也可以取得很好的降噪效果。

 

深度學習(Deep Learning):這類可以歸於外部先驗的子類,但由於近期大熱,我單獨拿出來說說。如果說解決逆問題的關鍵,是尋找一個好的圖像約束器(regularizer),那麼我們爲什麼不用一個最好的約束器?深度學習方法的精髓,就在於通過大量的數據,學習得到一個高複雜度(多層網絡結構)的圖片約束器,從而將學習外部先驗條件這一途徑推到極限。近期的很多這類工作,都是沿着這一思路,取得了非常逆天的效果。

 

根據我的經驗,基本上主流的圖像降噪算法,都可以被放到這上面的5種類型中。 

 

具體論文下載和代碼見:https://github.com/clxiao/Image-Denoising-State-of-the-art

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章