論文閱讀:An Efficient Statistical Method for Image Noise Level Estimation

Introduction

噪聲水平估計對於非盲去噪方法是至關重要的,噪聲水平估計質量直接影響去噪的質量。這篇文章是2015年ICCV 的一篇文章,針對於加性高斯白噪聲,其利用非局部相似塊具有低秩性的特性,利用協方差矩陣冗餘維度的特徵值估計噪聲水平,並取得了不錯的效果。這篇文章的主要貢獻在於
1. 分析了噪聲水平和圖像patch的協方差矩陣的特徵值之間的關係;
2. 提出了一種無參方法在多項式時間內從特徵值估計噪聲水平的方法,並給與了理論證明;

Analysis

這篇文章的方法是針對於加性,獨立,同質性的高斯噪聲。所謂“同質性”指的是噪聲方差對於圖像中所有像素都是一個常數,不會隨着位置和顏色強度改變。由於一般認爲圖像的噪聲都是零均值噪聲,所謂的噪聲水平估計就是通過單張噪聲圖像估計高斯噪聲的方差(或標準差)。
該文章的方法是基於以下觀察:從無噪聲圖像中提取的patch常常處於一個低維子空間中,而不是均勻分佈於所有空間中。所以噪聲的方差就可以從冗餘的空間維度上進行估計,那麼噪聲估計問題就變成了如何選擇冗餘維度的問題。

Method

把一張圖像分解爲一系列的patchXs={xt}t=1sRr×s 。如果圖像大小爲M×N×c ,則Xs 包含s=(Md+1)(Nd+1) 個大小爲d×d×c 的patch。然後將所有這些patch都變成向量,其維度爲r=cd2 。對於集Xs 中任意一個向量xt ,其可以分解爲:

xt=x^t+et

其中,x^t 是對應的無噪聲圖像patch,et 表示加性高斯白噪聲,etNr(0,σ2I)

特徵值

從下圖中可以看出,無噪聲圖像patch的特徵值多數爲0(即說明其位於低維子空間),而噪聲圖像patch的特徵值多數位於真實噪聲方差50附近,但不是精確爲50。
這裏寫圖片描述
所以如何精確的獲得噪聲方差是需要解決的問題。
計算xt 的協方差矩陣可得

Σx=1st=1s(xtμ)(xtμ)T

其中,μ=1st=1sxt 爲其平均值。
對其做特徵值分解可得

Σx=RΛRT=R[λ1000λ2000λr]RT

xt 可以表示爲(此處yt 與原文表達意思不同)

xt=Ryt

假設乾淨的patch位於m 維線性空間中,mr ,則

x^t=Ay^t

其中,R=[A,U]ARr×m 表示m 維的子空間。
綜上可知,

xt=Ryt=R[y^t,0]+et=[A,U][y^t,0]+et

公式兩邊乘以RT

RTxt=[y^t,0]+RTet=[y^t+ATet,UTet]

通過RT 將噪聲部分etxt 中分離出來,且根據高斯函數性質,nt=UTet 是服從高斯分佈Nrm(0,σ2I) 的隨機變量。
RTxt 的協方差爲

1st=1s(RTxt)(RTxt)T=RTΣxR=Λ

爲了估計噪聲方差,將特徵值S={λi}i=1r 分成兩個部分,其中,S1={λ1}i=1m 表示主維度的特徵值,S2={λ1}i=m+1r 表示冗餘維度的特徵值。用冗餘維度的特徵值估計噪聲方差。
由於冗餘維度向量nt=UTet 服從高斯分佈Nrm(0,σ2I) ,對於向量nt 中的每一個元素nt[i] 也是服從高斯分佈N(0,\sigma^2)的隨機變量,由於

λi=1st=1snt[i]2,im+1,m+2,..,r

則特徵值λiS2 也是均值爲噪聲方差σ2 的隨機變量。
這裏放上文章中的引理:
這裏寫圖片描述

維度選擇

下圖表示噪聲圖像特徵值的直方圖,可以看出除了少數比較大的異常值(主維度的特徵值)以外,其餘的特徵值是服從高斯分佈的,且根據上面的引理,其均值(期望)就是噪聲方差。
這裏寫圖片描述
所以現在的任務就是估計主維度的數量,去除其特徵值,即判斷特徵值是否屬於S2
放上文章另一個定理
這裏寫圖片描述
其說明,當集合S 中的冗餘維度足夠多時,可以通過判斷S 的平均值與其中值是否相等,來判斷S 是否存在異常值。我是從另一個角度理解的,由於冗餘維度的特徵值服從高斯分佈,高斯分佈的均值等於其中值,而異常值的存在破壞了這種等價關係,隨着異常值的剔除,其中值和均值逐漸接近。
在文章中,patch大小設爲8×8 ,則X={xt}t=1s 維度爲192,則主維度的數量不能超過67(具體證明可參見原文)。

算法

根據以上分析,則可以得到噪聲水平估計算法,總體來說,就是通過剔除S 中的異常值,得到冗餘維度的特徵值,然後冗餘維度的特徵值的期望(均值)就是噪聲的方差。
這裏寫圖片描述

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