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