梁 猛,史曉霜
(西安郵電大學(xué) 電子工程學(xué)院,西安 710121)
隨著數(shù)碼相機的普及以及數(shù)字媒體技術(shù)的發(fā)展,人們對數(shù)碼圖像質(zhì)量的要求日益增高。然而由于大部分數(shù)碼相機采用單圖像傳感器,因此當(dāng)拍攝接近顏色濾波陣列(Color Filter Array,CFA)采樣頻率的規(guī)則性圖案時,如細密柵欄結(jié)構(gòu)或網(wǎng)絡(luò)織物,相機輸出圖像容易出現(xiàn)明顯的彩色或非彩色波紋狀條紋,即莫爾條紋[2],而對圖像中紋理區(qū)域的處理一直是具有挑戰(zhàn)性的難題[3],例如莫爾條紋的消除問題。數(shù)碼廠商通常在相機鏡頭前加低通濾波來抑制莫爾條紋,雖然有一定效果,但影響圖像分辨率,并且從硬件上處理成本太高,而對圖像進行后期處理并未從根本上處理問題,因此從圖像插值出發(fā)是較好的解決辦法[4]。
現(xiàn)有的圖像插值可分為基于單通道間的獨立插值[5]、基于各通道間相關(guān)性的插值[6]、基于方向梯度的插值[7]。針對圖像中莫爾條紋的干擾,一些學(xué)者從CFA彩色插值過程入手,尋求避免產(chǎn)生莫爾條紋的有效算法。例如,文獻[8]提出基于JPEG圖像重構(gòu)的莫爾條紋消除算法,需對圖像進行后期處理;文獻[9]提出基于混疊估計的圖像重構(gòu)算法,先進行混疊估計,進而沿水平和垂直方向分別插值,再基于區(qū)域相似度合并;文獻[10]提出一種使用多尺度顏色漸變來自適應(yīng)組合不同方向色差估計的插值方法,無需任何閾值做判決且非迭代;文獻[11]提出一種基于CFA邊緣信息的高質(zhì)量圖像插值算法,通過分析CFA的局部空間梯度信息來重建三色圖像,一定程度上提高了峰值信噪比和圖像重建質(zhì)量;文獻[12]提出一種自適應(yīng)殘差插值算法,自適應(yīng)選擇合適的迭代次數(shù)且在各個像素處組合兩種不同類型的RI算法;文獻[13]提出一種低復(fù)雜度色彩插值算法,能夠準確判斷插值方向且獲得的PSNR值較高;文獻[14]利用最小拉普拉斯殘差插值來消除莫爾條紋。
由于采用上述算法對圖像中莫爾條紋進行消除,處理后的圖像效果并不理想,因此本文提出基于二階Newton插值近似的數(shù)碼圖像莫爾條紋消除算法。通過模擬CFA混疊檢測莫爾條紋區(qū)域,針對莫爾條紋區(qū)域采用二階牛頓插值算法得到G分量各方向的估計值,并對所得估計值加權(quán)平均得到丟失的G分量,再利用色差模型恢復(fù)出R和B分量,最終恢復(fù)出完整RGB圖像信息,從而得到消除莫爾條紋的圖像效果。
CFA是實現(xiàn)CCD或CMOS傳感器拍攝彩色圖像的主要技術(shù)之一[15]。CFA一般采用RGB色系,且多數(shù)屬于Bayer結(jié)構(gòu)[16]。Bayer濾波陣列在不同像素點位置上允許通過不同波長的光,據(jù)此判斷某像素點上可通過的顏色分量[17]。Bayer濾波陣列的RGB顏色分布如圖1所示。
圖1 5×5窗口的Bayer彩色濾波陣列
CFA采樣過程可以看成CCD接收的光線與對應(yīng)點像素值之間的線性關(guān)系,將圖像傳感器的光譜響應(yīng)記為Ls(λ),空間響應(yīng)記為hs(x,y),數(shù)碼相機的成像過程可以表示為:
r(m1,m2,l)+Ns(n1,n2)
(1)
其中,S(n1,n2)表示(n1,n2)處的像素值,r(m1,m2,l)表示入射光量,Ns(n1,n2)表示隨機噪聲。
光信號經(jīng)過鏡頭打在圖像傳感器前,需先經(jīng)過CFA濾波[18]。CFA濾波方程定義如下:
(2)
圖像經(jīng)過Bayer彩色濾鏡陣列后的數(shù)據(jù)可表示為:
(3)
當(dāng)單圖像傳感器的數(shù)碼相機拍攝圖像時,只能采集到Bayer CFA模板中一個色彩分量[19],為得到清晰的全彩色圖,需要恢復(fù)該像素在圖像采樣中丟失的另外兩個色彩分量,該過程即CFA插值,也被稱為Demosaicking處理[20]。
通常數(shù)碼相機只采用一個圖像傳感器[21],在Bayer彩色濾鏡陣列上同時采集紅、綠、藍3種顏色分量[22]。莫爾條紋形成的關(guān)鍵原因就在CFA彩色濾鏡的濾波過程中。
由式(3)可知,CFA濾波過程實際是對圖像的二次采樣,根據(jù)奈奎斯特采樣定理,圖像傳感器可以分辨的最高空間頻率為空間采樣頻率的一半[23]。當(dāng)CCD獲取目標圖像信息時,若圖像的采樣頻率超過CFA的分辨率,高頻部分會被反射到低頻帶,造成圖像混疊并產(chǎn)生莫爾條紋[24],其中R、B色彩分量丟失的高頻信息比G分量多[25],更容易產(chǎn)生莫爾條紋。圖2為含有莫爾條紋的圖像。
圖2 含有莫爾條紋的圖像
假設(shè)在CFA濾色前圖像的完整信息為I0(x,y),其RGB各自的色彩分量為R0(x,y)、G0(x,y)、B0(x,y),根據(jù)Bayer CFA的排列特性,圖像I0(x,y)經(jīng)過CFA二次采樣后得到圖像Is(x,y),表達式為:
(4)
其中:
圖像經(jīng)過CFA二次采樣后的G分量可以表示如下:
(5)
經(jīng)過二次采樣后的R、B分量表示如下:
(-1)xR0(x,y)-(-1)x+yR0(x,y)]
(6)
(-1)xB0(x,y)+(-1)x+yB0(x,y)]
(7)
對式(5)~式(7)分別進行Z變換得到:
(8)
R0(zx,-zy)-R0(-zx,-zy)]
(9)
B0(zx,-zy)-B0(zx,-zy)]
(10)
由Z變換性質(zhì)可知,高頻信息I(Z1,Z2)變?yōu)镮(-Z1,Z2),結(jié)合頻域特性可知,CFA采樣過程中的高頻信息被復(fù)制到低頻區(qū)域并引起混疊,如圖3所示,ω1代表頻率,ω2代表頻率對應(yīng)的幅值,π表示通帶范圍。
圖3 莫爾條紋的產(chǎn)生示意圖
本文莫爾條紋消除算法包括莫爾條紋區(qū)域檢測和莫爾條紋消除兩部分。莫爾條紋區(qū)域的檢測建立在頻域分析的基礎(chǔ)上,莫爾條紋的消除利用二階Newton近似和色差空間模型實現(xiàn)。
若對整個Bayer圖像直接進行莫爾條紋消除處理,不僅耗時多且還可能對非莫爾區(qū)域的圖像細節(jié)造成影響,因此有必要先對圖像中的莫爾區(qū)域進行檢測。由于G分量的采樣頻率高于R、B的采樣頻率,因此在插值過程中G分量保留了更多的高頻信息,引起的混疊相比R、B較弱,且RGB色彩分量之間具有較高的相關(guān)性,特別是在圖像高頻部分,因此可利用G分量保留的高頻信息來模擬混疊估計圖像,以此匹配圖像中的莫爾條紋實現(xiàn)莫爾條紋的檢測。
依據(jù)莫爾條紋在頻域的成因分析,在檢測圖像中莫爾條紋區(qū)域的具體步驟如下:
1)對圖2原圖數(shù)據(jù)的G分量做下采樣,模擬CFA的采樣,進而對下采樣后的圖像利用小波分析提取出G分量保留的水平、垂直方向的高頻信息Gh、Gv,得到的高頻信息如圖4所示。
圖4 G分量的水平與垂直方向高頻信息
Fig.4 Horizontal and vertical high-frequency information ofGcomponent
圖5 水平與垂直方向的混疊條紋圖像
Fig.5 Horizontal and vertical images with aliasing fringes
3)在一定區(qū)域內(nèi),混疊估計的條紋圖像的平均值因存在混疊而不為0,如波紋狀的峰尖峰谷。
Gmed=med(G′)
其中,max(I)是一個7×7最大值濾波器,min(I)是一個7×7最小值濾波器,med(I)是一個7×7中間值濾波器。
4)計算莫爾區(qū)域圖像M:
M=(Gmed-8×G′)>t
經(jīng)驗證,閾值t在0.06附近可以得到較好的分割效果,再進行簡單的開閉運算后即可得到莫爾區(qū)域,處理結(jié)果如圖6所示,其中白色部分表示圖像中實際莫爾條紋區(qū)域。
圖6 莫爾區(qū)域示意圖
對于檢測出的莫爾條紋區(qū)域采用本文插值算法,黑色部分采用傳統(tǒng)插值算法,這樣既能保留非莫爾區(qū)域的圖像信息,又能減少處理時間。
本文插值算法采用二階Newton近似恢復(fù)出G分量,再使用色差空間模型對R、B進行插值。由于R、B分量具有相似的特征,因此本文只描述在B像素位置處的插值算法。
2.2.1G分量的恢復(fù)
由于像素之間具有較高的空間相關(guān)性和光譜相關(guān)性,因此通過對G分量在各方向上的估計值加權(quán)平均得到丟失的G分量。由北(N)、南(S)、西(W)、東(E)方向的二階牛頓插值結(jié)果確定逆梯度權(quán)值和估計值,再由式(11)恢復(fù)G分量:
(11)
其中,φN、φS、φW和φE分別為N、S、W和E方向上的逆梯度權(quán)值,GN、GS、GW和GE是各方向的估計值。
各方向逆梯度權(quán)值可由對應(yīng)的方向梯度值計算得出,用于計算給定B(i,j)位置處各方向梯度值的參考像素網(wǎng)格如圖7所示。
圖7 確定各方向梯度值的參考像素
Fig.7 Reference pixel for determining the gradient value in each direction
令PN、PW分別為(i,j)處北和西方向的梯度值:
PN=|Bi+2,j-2Bi,j+Bi-2,j|+
|Bi,j-2Bi-2,j+Bi-4,j|+
|Gi+1,j-2Gi-1,j+Gi-3,j|+
|Gi,j-1-2Gi-2,j-1+Gi-4,j-1|/2+
|Gi,j+1-2Gi-2,j+1+Gi-4,j+1|/2
(12)
PW=|Bi,j+2-2Bi,j+Bi,j-2|+
|Bi,j-2Bi,j-2+Bi,j-4|+
|Gi,j+1-2Gi,j-1+Gi,j-3|+
|Gi-1,j-2Gi-1,j-2+Gi-1,j-4|/2+
|Gi+1,j-2Gi+1,j-2+Gi+1,j-4|/2
(13)
南方向梯度值PS、東方向梯度值PE的計算公式與PN、PW類似,其中,PS與PN表達式中各對應(yīng)元素關(guān)于(i,j)水平方向?qū)ΨQ,PE與PW表達式中各對應(yīng)元素關(guān)于(i,j)垂直方向?qū)ΨQ。
在得到各方向梯度值后,各方向的逆梯度權(quán)值由式(14)求得:
(14)
在恢復(fù)G分量的過程中,采用Newton插值,Newton插值的一般形式為:
(15)
利用二階Newton插值近似確定G分量各方向的估計值,如式(16)~式(19)所示:
GN=Gi+1,j-f[(i+1,j),(i-2,j)]-
2f[(i+1,j),(i-2,j),(i-4,j)]
(16)
GS=Gi-1,j-f[(i-1,j),(i+2,j)]-
2f[(i-1,j),(i+2,j),(i+4,j)]
(17)
GW=Gi,j+1-f[(i,j+1),(i,j-2)]+
2f[(i,j+1),(i,j-2),(i,j-4)]
(18)
GE=Gi,j-1+f[(i,j-1),(i,j+2)]-
2f[(i,j-1),(i,j+2),(i,j+4)]
(19)
其中,f[x0,x1]和f[x0,x1,x2]分別表示某一方向的一階差商和二階差商。
利用式(20)、式(21)可計算得到N方向的一階和二階差商。
(20)
f[(i+1,j),(i-2,j),(i-4,j)]=
(21)
通過同樣方法可得到S、W、E方向的估計值。由于RGB像素平面具有相似的高頻特征,可用已知的R、B像素信息代替其位置丟失的G分量,最后通過式(11)恢復(fù)出丟失的G信息。
2.2.2R與B分量的恢復(fù)
在得到全部的G分量后恢復(fù)丟失的R、B信息。利用對角線方向的R、G或者B、G分量間的色差加權(quán)平均,即西北方向(NW)、西南方向(SW)、東北方向(NE)、東南方向(SE)。此處只描述B位置處的R插值算法。
(22)
(23)
(24)
(25)
(26)
(27)
(28)
各方向的色差CNW、CSW、CNE、CSE可表示為:
(29)
(30)
(31)
(32)
利用式(33)、式(34)恢復(fù)G位置處的R、B信息。通過上述計算過程,最終恢復(fù)出完整色彩分量。
(33)
(34)
本文利用Matlab實現(xiàn)莫爾條紋的檢測和插值。圖8為含有莫爾條紋圖像的對應(yīng)CFA原始數(shù)據(jù)圖像。利用本文莫爾條紋檢測方法對原始數(shù)據(jù)圖像進行檢測,檢測出含有莫爾條紋區(qū)域的圖像如圖9所示。采用本文插值算法對圖8進行處理,結(jié)果如圖10所示。對比圖2與圖10,可以看出本文算法能準確檢測出莫爾條紋區(qū)域,同時在插值過程中可有效避免莫爾條紋的產(chǎn)生,進而改善圖像的視覺效果。
圖8 CFA原始數(shù)據(jù)圖像
圖9 莫爾區(qū)域的檢測結(jié)果
圖10 采用本文插值算法對含莫爾條紋圖像的處理結(jié)果
Fig.10 Process result of image with Moire fringes by the proposed interpolation algorithm
圖11、圖12分別為對不同角度拍攝的西裝部分剪裁圖像經(jīng)過本文算法與4種插值算法的處理結(jié)果,其中的莫爾條紋樣式各不相同。
圖11 本文算法與4種插值算法的處理結(jié)果對比1
Fig.11 Comparison of the processing results of the proposed algorithm and four interpolation algorithms 1
圖12 本文算法與4種插值算法的處理結(jié)果對比2
Fig.12 Comparison of the processing results of the proposed algorithm and four interpolation algorithms 2
圖13為對Kodak數(shù)據(jù)集中Lighthouse部分剪裁圖像經(jīng)過本文算法與4種插值算法的處理結(jié)果。實驗分別采用雙線性插值(Bilinear)算法、Hibbard算法、基于JPEG圖像重構(gòu)的莫爾條紋消除算法[8]、MLRI算法以及本文算法對圖像進行莫爾條紋消除處理,并通過主觀觀察和峰值信噪比(Peak Signal to Noise Ratio,PSNR)作為評估圖像質(zhì)量的標準。
圖13 本文算法與4種插值算法的處理結(jié)果對比3
Fig.13 Comparison of the processing results of the proposed algorithm and four interpolation algorithms 3
從恢復(fù)圖像效果可以看出,Bilinear算法、Hibbard算法、基于JPEG圖像重構(gòu)的莫爾條紋消除算法[8]對圖像的莫爾條紋去除效果不明顯,MLRI算法具有一定的恢復(fù)效果,而本文算法的莫爾條紋恢復(fù)效果最佳。
由表1可知,Bilinear算法、Hibbard算法和基于JPEG圖像重構(gòu)的莫爾條紋消除算法[8]插值得到的圖像PSNR值均較低,其中Bilinear算法是單通道插值,忽略了RGB通道之間的相關(guān)性,Hibbard算法雖然結(jié)合邊緣進行插值,但其只利用亮度分量或者色度分量確定邊緣方向,基于JPEG圖像重構(gòu)的莫爾條紋消除算法屬于后期處理,受損嚴重的JPEG圖像會對插值結(jié)果造成較大影響,MLRI算法有一定程度的莫爾條紋去除效果,但處理過程復(fù)雜。本文算法恢復(fù)出的插值圖像PSNR值最高且對莫爾條紋的去除效果更好。綜上所述,本文算法的莫爾條紋消除效果明顯,同時PSNR值較高,獲得的圖像質(zhì)量最好。
表1 經(jīng)5種插值算法恢復(fù)的圖像顏色分量PSNR值比較
針對數(shù)碼拍攝時圖像中出現(xiàn)的莫爾條紋問題,本文在分析CFA排列特性和莫爾條紋產(chǎn)生原因的基礎(chǔ)上,先對圖像中莫爾區(qū)域檢測并利用基于二階Newton插值近似得到G分量各方向的值,再借助色差空間模型加權(quán)平均恢復(fù)出R和B分量值,最終去除莫爾條紋。實驗結(jié)果表明,該算法恢復(fù)出的圖像峰值信噪比較高,視覺效果良好,驗證了算法有效性。由于本文莫爾條紋檢測算法只能大致估計出莫爾條紋區(qū)域,可能會對后續(xù)插值過程中的圖像整體效果產(chǎn)生一定程度的影響,因此下一步將結(jié)合邊緣檢測等算法,更準確地檢測出實際莫爾條紋區(qū)域。