一種高斯噪聲的圖像噪聲強度估計方法與流程
2023-09-12 01:36:25
本發明屬於數字圖像處理領域,特別涉及一種高斯噪聲的圖像噪聲強度估計方法。
背景技術:
圖像去噪有廣泛的應用,經典的去噪算法如bm3d,nonlocalmeans都有非常好的去噪效果。但是一般去噪算法都需要知道噪聲程度以去噪,像bm3d,nonlocalmeans算法的去噪過程都需要已知噪聲的方差大小並在計算過程中將噪聲方差作為參數。
對圖像去噪時,我們經常會需要對於圖像的噪聲水平進行估計,我們用噪聲的方差來描述噪聲的強度大小。噪聲估計不準會對去噪過程產生不良的影響。如果估計過高,去噪過程會去除一些不該去除的紋理。如果估計過低,去噪過程會保留過多的噪聲。
我們認為噪聲圖像是原圖與噪聲之和。
in(x,y)=i(x,y)+n(x,y);i為原圖,n為高斯噪聲,in是我們要估計噪聲的噪聲圖像。
如果原始圖像的i中的像素值是一個恆定值,比如原始圖像的所有像素值i(x,y)是100,那圖像的噪聲水平很好估計。可是一般情況下,圖像存在大量的邊緣紋理信息,i(x,y)值變化很大,很難區分in(x,y)中的噪聲與圖像邊緣紋理,因此很難估計噪聲水平。
現有的噪聲估計算法基本流程是:
1.對於噪聲圖像進行小範圍的濾波。(比如說是均值濾波或是中值濾波)
2.將噪聲圖像與濾波後的圖像做差。
3.以獲得的差值的平方均值來近似噪聲的方差。
現有的噪聲估計算法通過噪聲圖in小範圍濾波近似原始圖i,將做差結果作為噪聲n的估計值,然後用差值的平方均值來近似噪聲的方差。
現有的不同的噪聲估計算法的差別基本是濾波方式的不同,以期望獲得更準確的噪聲估計值。但其實採取十分複雜的濾波方式其效果與基本的中值濾波,均值濾波獲取的噪聲估計值的準確度是差不多的。因為我們不知道圖像邊緣紋理的相應信息。
現有的算法強調通過選擇合適的濾波器,將噪聲與圖像邊緣紋理區分處理,提出的差值描述噪聲而非邊緣紋理。但其實圖像邊緣紋理的結構千變萬化,我們即使合適的濾波器也沒有辦法將噪聲與圖像的邊緣紋理徹底區分。
技術實現要素:
本發明所要解決的技術問題是針對上述現有技術的不足提供一種高斯噪聲的圖像噪聲強度估計方法,本高斯噪聲的圖像噪聲強度估計方法可以降低圖像邊緣紋理的影響從而進一步估計真實的噪聲。
為實現上述技術目的,本發明採取的技術方案為:
一種高斯噪聲的圖像噪聲強度估計方法,包括以下步驟:
步驟1:對圖像進行分塊處理,獲得多個分塊圖像;
步驟2:對分塊圖像進行濾波;
步驟3:將原始的分塊圖像與之對應的濾波後的分塊圖像做差,並將差值通過差值直方圖的形式記錄;
步驟4:對差值直方圖中差值大的像素數進行削減處理;
步驟5:分別求出差值直方圖中差值的正數部分的平方均值和負數部分的平方均值,提取正數部分的平方均值和負數的平方均值中最小的值,作為分塊圖像的噪聲強度;
步驟6:求出每個分塊圖像的噪聲強度值,從每個分塊圖像中的噪聲強度值中提取最小值作為整個圖像的噪聲強度。
作為本發明進一步改進的技術方案,所述的步驟2中對分塊圖像進行濾波為對分塊圖像進行中值濾波或者均值濾波。
作為本發明進一步改進的技術方案,所述的步驟4包括:
(1)假設差值直方圖的分布為hk(-n<khk,則hk+1=hk,其中k=[0,n];
若hk-1>hk,則hk-1=hk,其中k=[-n,-1]。
作為本發明進一步改進的技術方案,所述的步驟5包括;
(1)預設差值範圍閾值[-th,th];
(2)若差值n大於th,則求出差值直方圖中差值範圍為[-th,th]中的正數部分的平方均值和負數部分的平方均值;
(2)若差值n小於th,則求出差值直方圖中差值範圍為[-n,n]中的正數部分的平方均值和負數部分的平方均值;
(3)提取正數部分的平方均值和負數的平方均值中最小的值,作為分塊圖像的噪聲強度。
作為本發明進一步改進的技術方案,所述的求出差值直方圖中差值範圍為[-th,th]中的正數部分的平方均值的具體公式:
y=(12*h1+22*h2+32*h3+…+th2*hth)/(h1+h2+h3+…+hth);
其中h1、h2、h3、…、hth分別表示差值為1、2、3、…、th的像素數,y表示平方均值;
所述的求出差值直方圖中差值範圍為[-th,th]中的負數部分的平方均值的具體公式:y=[(-1)2*h-1+(-2)2*h-2+(-3)2*h-3+…+(-th)2*h-th]/(h-1+h-2+h-3+…+h-th);
其中h-1、h-2、h-3、…、h-th分別表示差值為-1、-2、-3、…、-th的像素數,y表示平方均值。
作為本發明進一步改進的技術方案,所述圖像為rgb彩色圖像,對圖像進行分塊處理,按照步驟3的方法分別求出分塊圖像中r通道、g通道和b通道的差值直方圖,再按照步驟4和步驟5的方法分別求出分塊圖像中r通道、g通道和b通道的噪聲強度,將所有分塊圖像中r通道、g通道和b通道的噪聲強度進行對比,選取其中最小值作為圖像的噪聲強度。
作為本發明進一步改進的技術方案,所述圖像為yuv420圖像,對圖像進行分塊處理,按照步驟3的方法分別求出分塊圖像中y分量、u分量和v分量的差值直方圖,再按照步驟4和步驟5的方法分別求出分塊圖像中y分量、u分量和v分量的噪聲強度,y分量去噪時採取y分量的噪聲強度值,uv分量去噪時採取u分量和v分量的噪聲強度值中最小值。
本發明提出一種全新的高斯噪聲的圖像噪聲強度估計方法。傳統方法選取合適濾波器提取噪聲的方法估計噪聲,而本發明通過將原始的分塊圖像與之對應的濾波後的分塊圖像做差,並將差值通過差值直方圖的形式記錄,採取對提取的差值的分布進行後處理的方法進行噪聲強度估計,對於差值的分布進行處理,使其更接近於噪聲的分布規律,本發明通過對差值直方圖中差值大的像素數進行削減處理從而降低了原始圖像邊緣紋理部分的影響。處理後的噪聲估計值可以準確的計算噪聲的大小。
附圖說明
圖1為本發明的流程圖。
圖2為本發明的圖像的分塊示意圖。
圖3為本發明的差值直方圖。
圖4為本發明的削減處理後的差值直方圖。
圖5為本發明的方法與舊噪聲估計算法的對比示意圖。
具體實施方式
本發明提出一種高斯噪聲的圖像噪聲強度估計方法,差值直方圖中的差值既包含噪聲,又包含邊緣紋理。那是否可以對於差值分布進行處理,使其更接近於噪聲的差值分布呢。圖像不管結構是怎樣的,但一般圖像信號是有規律的(稀疏特性)。圖像噪聲的差值分布與邊緣紋理的差值分布是不同的,噪聲的差值分布接近於高斯分布,而邊緣紋理的差值分布一般是不規則的。我們可以利用噪聲與邊緣紋理差值分布的區別,來對於差值分布進行處理,使其更接近於噪聲的分布。進而計算出噪聲的方差。
下面根據圖1至圖5對本發明的具體實施方式作出進一步說明:
參見圖1,一種高斯噪聲的圖像噪聲強度估計方法,包括以下步驟:
步驟1:對圖像進行分塊處理,獲得多個分塊圖像;
步驟2:對分塊圖像進行濾波;
步驟3:將原始的分塊圖像與之對應的濾波後的分塊圖像做差,並將差值通過差值直方圖的形式記錄;
步驟4:對差值直方圖中差值大的像素數進行削減處理;
步驟5:分別求出差值直方圖中差值的正數部分的平方均值和負數部分的平方均值,提取正數部分的平方均值和負數的平方均值中最小值,作為分塊圖像的噪聲強度;
步驟6:求出每個分塊圖像的噪聲強度值,從每個分塊圖像中的噪聲強度值中提取最小值作為整個圖像的噪聲強度。
先將圖像分塊再進行噪聲估計。一般圖像都是噪聲均勻分布的。去噪過程中,首先將圖像分塊。對每一分塊圖像求噪聲強度。我們以求出噪聲強度的最小值代表圖像的噪聲強度。因為圖像可能有邊緣紋理等導致估計值偏大,用分塊圖像求得的幾個噪聲強度估計值中的最小值,作為圖像的噪聲強度估計值。如圖2所示,所述步驟1中可以將圖像分為3x3的小塊圖像。每個小塊圖像包含足夠的像素點即可。這樣之後求差值直方圖就有足夠的像素點描述差值直方圖分布了。
所述的步驟2中對分塊圖像進行濾波為對分塊圖像進行中值濾波或者均值濾波,本實施例將圖像經過平滑濾波器,平滑濾波器可以是5x5的中值濾波器。之後通步驟3對原始分塊圖像與濾波後的分塊圖像求差,具體公式為:
ismooth=iorg*ifilter;
idif=iorg–ismooth;
其中,iorg為原始圖像,ifilter為濾波器,iorg與ifilter卷積之後獲得平滑圖像ismooth。
由於噪聲基本都是突變的,我們用idif代表估計的噪聲。因為idif是原圖iorg與其平滑後的圖像ismooth的差值。
差值idif是對噪聲的估計,對idif大小進行統計形成差值直方圖,如圖3所示。求出的差值直方圖分布代表估計的噪聲大小的分布。因為計算的噪聲點比較多,所以認為噪聲大小呈高斯分布,噪聲低的像素數量多,噪聲高的像素數量少。如果求出的差值直方圖的差值高的像素數量比差值低得像素數量多,那差值分布狀況不符合噪聲分布概率,則認為差值分布不合理,是邊緣紋理因素造成的,而非噪聲高的像素比噪聲低的像素數量多。
差值分布不合理時,計算噪聲大小需要限制差值大的點的數量。通過對差值直方圖進行處理限制差值大的點的數量,使其更接近於噪聲的分布特點。如果差值直方圖的差值絕對值大的數值比差值小的數值大,則削減直方圖差值絕對值大的數值。具體削減方法如下面步驟4。
所述的步驟4包括:
(1)假設差值直方圖的分布為hk(-n<khk,則hk+1=hk,其中k=[0,n];
若hk-1>hk,則hk-1=hk,其中k=[-n,-1]。
如果差值直方圖如圖3所示,在p1、p2、p3以及q1、q2、q3處差值直方圖的差值高的像素數量比差值低得像素數量多。則認為直方圖的分布是不正常的,對於直方圖進行修正,修正結果如圖4所示。
所述的步驟5包括;
(1)預設差值範圍閾值[-th,th];
(2)若差值n大於th,則求出差值直方圖中差值範圍為[-th,th]中的正數部分的平方均值和負數部分的平方均值;
(2)若差值n小於th,則求出差值直方圖中差值範圍為[-n,n]中的正數部分的平方均值和負數部分的平方均值;
(3)提取正數部分的平方均值和負數的平方均值中最小的值,作為分塊圖像的噪聲強度。
所述的求出差值直方圖中差值範圍為[-th,th]中的正數部分的平方均值的具體公式:
y=(12*h1+22*h2+32*h3+…+th2*hth)/(h1+h2+h3+…+hth);
其中h1、h2、h3、…、hth分別表示差值為1、2、3、…、th的像素數,y表示平方均值;
所述的求出差值直方圖中差值範圍為[-th,th]中的負數部分的平方均值的具體公式:y=[(-1)2*h-1+(-2)2*h-2+(-3)2*h-3+…+(-th)2*h-th]/(h-1+h-2+h-3+…+h-th);
其中h-1、h-2、h-3、…、h-th分別表示差值為-1、-2、-3、…、-th的像素數,y表示平方均值。
同理,所述的差值直方圖中差值範圍為[-n,n]中的正數部分的平方均值和負數部分的平方均值的計算公式和上述公式一樣。只需把公式中的th修改為n、hth修改為hn、-th修改為-n、h-th修改為h-n。
本發明分別計算差值直方圖的正負部分的平方均值,取較小值。因為圖像邊緣紋理的影響是在不同差值分布區不同的。計算正負部分的較小值可以降低圖像邊緣紋理的影響。且在求差值平方均值的時候,只計算差值絕對值不太大的部分,所以需要預先設置差值範圍閾值[-th,th]。因為差值絕對值太大的話基本是邊緣造成的,而非噪聲造成的。
實際噪聲估計以及去噪過程中,圖像可能包含不同分量。比如說rgb或是yuv。需要對於不同分量進行考慮。
一般彩色圖像是以rgb分量的形式保存,並且rgb分量的噪聲強度是一致的。我們分別估計rgb分量的噪聲強度,以最小的估計噪聲強度代表圖像的估計噪聲強度。rgb分量去噪時採取最小的估計噪聲強度。因為圖像可能有邊緣紋理等導致估計值偏大,所以採取rgb分量最小的估計值作為噪聲估計強度。具體實現步驟為:
當圖像為rgb彩色圖像時,對圖像進行分塊處理,按照步驟3的方法分別求出分塊圖像中r通道、g通道和b通道的差值直方圖,再按照步驟4和步驟5的方法分別求出分塊圖像中r通道、g通道和b通道的噪聲強度,將所有分塊圖像中r通道的噪聲強度、g通道的噪聲強度和b通道的噪聲強度進行綜合對比,選取其中最小值作為圖像的噪聲強度。
而在一般視頻中,每一幀的圖像內容是以yuv420格式保存的。y分量的噪聲強度是與uv分量的噪聲強度不同的,因為uv分量是經過壓縮的。噪聲估計時,一般將y分量與uv分量分開估計。對於yuv格式的圖像,分別提取圖像的y、u、v分量,分別估計y、u、v分量圖像的噪聲強度。y分量去噪過程採取y分量的噪聲估計強度。uv分量的去噪過程採取uv分量的噪聲強度估計值較小的。具體實現步驟為:
所述圖像為yuv420圖像,對圖像進行分塊處理,按照步驟3的方法分別求出分塊圖像中y分量、u分量和v分量的差值直方圖,再按照步驟4和步驟5的方法分別求出分塊圖像中y分量、u分量和v分量的噪聲強度,y分量去噪時採取y分量的噪聲強度值,uv分量去噪時採取u分量的噪聲強度值和v分量的噪聲強度值中最小值。
一般來說,圖像的噪聲不會太大,對於差值直方圖處理可以獲得更準確的噪聲估計。但是,如果噪聲太大,比如噪聲方差大小為40,那差值直方圖的分布不再是類似高斯分布的了。對於差值直方圖處理就可能破壞噪聲應有的直方圖分布。因此本發明只適用於噪聲不是極大的情況。對於差值直方圖進行處理後,噪聲方差估計準確度會大大提高。本發明採取5x5的均值濾波器獲得差值直方圖。本實施例的方法與舊方法進行對比如圖5所示。舊方法測量噪聲方差是直接計算差值直方圖的平方均值。本實施例的新方法測量噪聲方差是對直方圖進行削減處理後計算差值直方圖的平方均值。本實施例對於幾張圖進行測量,測量結果在圖5中。可見本發明的新方法的噪聲強度估計準確度會大大增加。
本發明的保護範圍包括但不限於以上實施方式,本發明的保護範圍以權利要求書為準,任何對本技術做出的本領域的技術人員容易想到的替換、變形、改進均落入本發明的保護範圍。