專利名稱:一種色彩濾波陣列插值方法和裝置的制作方法
技術領域:
本發明涉及一種色彩濾波陣列插值方法,尤其涉及一種貝爾(Bayer)模式的色彩濾波陣列的插值方法。
背景技術:
數字影像擷取裝置的光學傳感器通常采用CCD(Charge-coupled device,電荷耦合器件)或CMOS(Complementary Metal Oxide Semiconductor,互補性氧化金屬半導體)技術,由橫豎兩個方向密集排列的感光元件(CCD或CMOS)組成的一個二維矩陣,而CCD或CMOS傳感器只能感應光線亮度,不能感應色彩信息。因此必須使用色彩濾波陣列(Color Filtered Array,CFA)確保每個傳感器像素只會收到一種顏色的光通常是紅、綠、藍三種顏色中的一種。色彩濾波陣列可以使用不同的模式,最常用的是Bayer模式的色彩濾波陣列。Bayer模式交替使用一組紅色和綠色濾鏡以及一組綠色和藍色濾鏡,其中綠色像素的總數為紅色和藍色像素之和。Bayer模式的原始(raw)圖像的像素排列格式如圖2,3,4,5所示。
因此,為了獲得每個像素的顏色值,必須進行CFA插值運算。CFA插值通常采用如下方法如圖2所示,對于Rm,n像素點,即像素點(m,n)的原始值為R分量的像素點,求取該像素點G分量的插值時,計算水平方向2個相鄰像素點的G值的差的絕對值,計算垂直方向2個相鄰像素點的G值的差的絕對值,取上述差值的絕對值小的2個相鄰像素點的G值的平均值作為Gm,n;例如,若水平方向2個相鄰像素點的G值的差的絕對值比垂直方向2個相鄰像素點的G值的差的絕對值小,則Gm,n=(Gm,n-1+Gm,n+1)/2;求取該像素點B分量的插值時,計算左斜對角方向2個相鄰像素點的B值的差的絕對值,計算右斜對角方向2個相鄰像素點的B值的差的絕對值,取上述差值的絕對值小的2個相鄰像素點的B值的平均值作為Bm,n;例如,若|Bm-1,n-1-Bm+1,n+1|<|Bm-1,n+1-Bm+1,n-1|,則Bm,n=(Bm-1,n-1+Bm+1,n+1)/2;如圖3所示,對于Bm,n像素點,即像素點(m,n)的原始值為B分量,求取該像素點G分量的插值時,計算水平方向2個相鄰像素點的G值的差的絕對值,計算垂直方向2個相鄰像素點的G值的差的絕對值,取上述差值的絕對值小的2個相鄰像素點的G值的平均值作為Gm,n;例如,若水平方向2個相鄰像素點的G值的差的絕對值比垂直方向2個相鄰像素點的G值的差的絕對值小,則Gm,n=(Gm,n-1+Gm,n+1)/2;求取該像素點R分量的插值時,計算左斜對角方向2個相鄰像素點的R值的差的絕對值,計算右斜對角方向2個相鄰像素點的R值的差的絕對值,取上述差值的絕對值小的2個相鄰像素點的R值的平均值作為Rm,n;例如,若|Rm-1,n-1-Rm+1,n+1|<|Rm-1,n+1-Rm+1,n-1|,則Rm,n=(Rm-1,n-1+Rm+1,n+1)/2;如圖4所示,對于Grm,n像素點,即像素點(m,n)的原始值為G分量,且左右相鄰像素點為R值的像素點,該像素點R分量的插值為Rm,n=(Rm,n-1+Rm,n+1)/2;該像素點的B分量的插值為Bm,n=(Bm-1,n+Bm+1,n)/2;如圖5所示,對于Gbm,n像素點,即像素點(m,n)的原始值為G分量,且左右相鄰像素點為B值的像素點,該像素點B分量的插值為Bm,n=(Bm,n-1+Bm,n+1)/2;R分量的插值為Rm,n=(Rm-1,n+Rm+1,n)/2。
由上可知,現有技術采用左右/上下或左/右斜對角相鄰像素點的絕對值差為依據獲得Rm,n像素點對應的G值和B值以及Bm,n像素點對應的G值和R值。采用這種方式雖然計算量相對較小,但生成的圖像顏色和亮度不一致,模糊,并產生偽彩。
發明內容
本發明要解決的技術問題是,克服現有技術中CFA插值技術的不足,提出一種色彩濾波陣列插值方法和裝置,可以使得圖像顏色和亮度一致,獲得清晰的圖像。
為了解決上述問題,本發明提供了一種色彩濾波陣列插值方法,包含如下步驟(a)根據圖像像素點的原始測量數據計算像素點(m,n)的RGB分量的水平插值和垂直插值,m,n分別表示像素點所在的行數和列數;(b)根據像素點(m,n)與其相鄰像素點的水平插值和垂直插值,求取像素點(m,n)與其相鄰像素點之間在水平方向的水平亮度距離和水平色度距離,以及垂直方向的垂直亮度距離和垂直色度距離;(c)將像素點(m,n)與其相鄰像素點在水平方向的水平亮度距離和水平色度距離,與垂直方向的垂直亮度距離和垂直色度距離進行比較,確定像素點(m,n)與相鄰像素點亮度距離和色度距離較小的方向;(d)將所述亮度距離和色度距離較小的方向的插值作為像素點(m,n)的最終顏色值輸出。
進一步地,上述方法還可具有以下特點所述原始測量數據為貝爾模式的原始數據,所述步驟(a)進行像素點RGB分量的水平插值和垂直插值計算,進一步分為以下步驟(a1)計算Rm,n像素點的G分量的水平插值GHm,n和垂直插值GVm,nGHm,n=Gm,n-1+Gm,n+12;]]>或GHm,n=Gm,n-1+Gm,n+12+-Bm,n-2+2Bm,n-Bm,n+24;]]>GVm,n=Gm-1,n+Gm+1,n2;]]>或GVm,n=Gm-1,n+Gm+1,n2+-Bm-2,n+2Bm,n-Bm+2,n4;]]>(a2)計算Bm,n像素點的G分量的水平插值GHm,n和垂直插值GVm,nGHm,n=Gm,n-1+Gm,n+12;]]>或GHm,n=Gm,n-1+Gm,n+12+-Bm,n-2+2Bm,n-Bm,n+24;]]>
GVm,n=Gm-1,n+Gm+1,n2;]]>或GVm,n=Gm-1,n+Gm+1,n2+-Bm-2,n+2Bm,n-Bm+2,n4;]]>(a3)在原始值就是G分量的像素點上GHm,n=GVm,n=Gm,n;(a4)在Grm,n像素點,計算R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=Gm,n+Rm,n-1+Rm,n+1-GHm,n-1-GHm,n+12;]]>RVm,n=Gm,n+Rm,n-1+Rm,n+1-GVm,n-1-GVm,n+12;]]>在Grm,n像素點,計算B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=Gm,n+Bm-1,n+Bm+1,n-GHm-1,n-GHm+1,n2;]]>BVm,n=Gm,n+Bm-1,n+Bm+1,n-GVm-1,n-GVm+1,n2;]]>(a5)在Gbm,n像素點,計算B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=Gm,n+Bm,n-1+Bm,n+1-GHm,n-1-GHm,n+12]]>BVm,n=Gm,n+Bm,n-1+Bm,n+1-GVm,n-1-GVm,n+12;]]>在Gbm,n像素點,獲得R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=Gm,n+Rm-1,n+Rm+1,n-GHm-1,n-GHm+1,n2;]]>RVm,n=Gm,n+Rm-1,n+Rm+1,n-GVm-1,n-GVm+1,n2;]]>(a6)計算Bm,n像素點的R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=GHm,n+Rm-1,n-1+Rm+1,n-1+Rm-1,n+1+Rm+1,n+1-(GHm-1,n-1+GHm+1,n-1+GHm-1,n+1+GHm+1,n+1)4;]]>RVm,n=GHm,n+Rm-1,n-1+Rm+1,n-1+Rm-1,n+1+Rm+1,n+1-(GVm-1,n-1+GVm+1,n-1+GVm-1,n+1+GVm+1,n+1)4;]]>(a7)獲得Rm,n像素點的B分量的水平插值BHm,n和垂直插值BVm,n
BHm,n=GHm,n+Bm-1,n-1+Bm+1,n-1+Bm-1,n+1+Bm+1,n+1-(GHm-1,n-1+GHm+1,n-1+GHm-1,n+1+GHm+1,n+1)4;]]>BVm,n=GHm,n+Bm-1,n-1+Bm+1,n-1+Bm-1,n+1+Bm+1,n+1-(GVm-1,n-1+GVm+1,n-1+GVm-1,n+1+GVm+1,n+1)4]]>。
進一步地,上述方法還可具有以下特點所述步驟(b)中像素點(m,n)到4個相鄰像素點的水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j、水平色度距離DChm+i,n+j和垂直色度距離DCVm+i,n+j由以下公式計算得出DLhm+i,n+j=abs(GHm,n-GHm+i,n+j);DLvm+i,n+j=abs(GVm,n-GVm+i,n+j);DChm+i,n+j=abs(GRHm,n-GRHm+i,n+j)+abs(GBHm,n-GBHm+i,n+j);或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2;]]>或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2DCVm+i,n+j=abs(GRVm,n-GRVm+i,n+j)+abs(GBVm,n-GBVm+i,n+j);或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2;]]>或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2其中,i=0時,j=-1,1;j=0時,i=-1,1;且有GRHx,y=GHx,y-RHx,y;GRVx,y=GVx,y-RVx,y;GBHx,y=GHx,y-BHx,y;GBVx,y=GVx,y-BVx,y;上述GHx,y、GVx,y表示像素點(x,y)G分量的水平插值和垂直插值,RHx,y、RVx,y表示像素點(x,y)R分量的水平插值和垂直插值,BHx,y、BVx,y表示像素點(x,y)B分量的水平插值和垂直插值,x=m,y=m或x=m+i,y=n+j。
進一步地,上述方法還可具有以下特點所述步驟(b)進一步分為以下步驟(b1)將步驟(a)中得到的像素點的水平插值和垂直插值從RGB色彩空間轉化到亮度和色度分離的色彩空間,得到亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值;(b2)使用色彩分離的色彩空間的各分量的水平插值和垂直插值,計算像素點(m,n)與其相鄰4個像素點之間的水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j,和水平色度距離DChm+i,n+j、垂直色度距離DCvm+i,n+j,公式如下DLhm+i,n+j=abs(LHm,n-LHm+i,n+j);DLvm+i,n+j=abs(LVm,n-LVm+i,n+j);DChm+i,n+j=abs(SHm,n-SHm+i,n+j)+abs(THm,n-THm+i,n+j);DCvm+i,n+j=abs(SVm,n-SVm+i,n+j)+abs(TVm,n-TVm+i,n+j);其中,i=0時,j=-1,1;j=0時,i=-1,1上述LHx,y,LVx,y為亮度分量的水平插值和垂直插值;SHx,y,SVx,y為第一色度分量的水平插值和垂直插值;THx,y,TVx,y為第二色度分量的水平插值和垂直插值,x=m,y=m或x=m+i,y=n+j。
進一步地,上述方法還可具有以下特點所述步驟(c)進一步分為以下步驟(c1)根據計算得到的像素點(m,n)與相鄰像素點的水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j、水平色度距離DChm+i,n+j和垂直色度距離DCvm+i,n+j,求取像素點(m,n)的亮度閾值參數leps和色度閾值參數cepsleps=MIN(MAX(DLhm,n-1,DLhm,n+1),MAX(DLVm-1,n,DLVm+1,n));ceps=MIN(MAX(DChm,n-1,DChm,n+1),MAX(DCVm-1,n,DCvm+1,n));上述i=0時,j=-1,1;j=0時,i=-1,1;MIN表示取最小值函數,MAX表示取最大值函數。
(c2)逐一判斷像素點(m,n)與4個相鄰像素點的水平亮度距離和水平色度距離是否滿足條件DLhm+i,n+j<=leps且DChm+i,n+j<=ceps,如果是,計數值加1,最后得到計數值CHm,n;逐一判斷像素點(m,n)與4個相鄰像素點的垂直亮度距離和垂直色度距離是否滿足條件DLvm+i,n+j<=leps且DCvm+i,n+j<=ceps,如果是,計數值加1,最后得到計數值CVm,n;(c3)若CHm,n>CVm,n,判斷水平方向為亮度距離和色度距離較小的方向;若CHm,n<CVm,n,判斷垂直方向為亮度距離和色度距離較小的方向;若CHm,n=CVm,n,則按約定選擇其中的一個或任選其中一個,作為亮度距離和色度距離較小的方向;其中,上述i=0時,j=-1,1;j=0時,i=-1,1;或者,所述步驟(c)中,是對像素點(m,n)到4個相鄰像素點的水平亮度和色度距離進行加權計算,再對該像素點(m,n)到4個相鄰像素點的垂直亮度和色度距離進行加權計算,將兩者的結果進行比較,以值較小的方向為亮度距離和色度距離較小的方向。
進一步地,上述方法還可具有以下特點所述步驟(a)中先對整個圖像或部分圖像的各像素點進行RGB插值運算,然后再進行后續步驟,對于位于整個圖像邊界的像素點,在計算其各分量的水平插值和垂直插值時,采用邊界擴充,對稱取值的方法進行處理。
本發明提供的色彩濾波陣列插值裝置包括水平插值單元、垂直插值單元、水平亮度和色度距離計算單元、垂直亮度和色度距離計算單元、距離比較單元和選擇輸出單元,其中所述水平插值單元用于對收到的圖像的貝爾原始數據進行水平插值運算,得到像素點(m,n)的RGB分量的水平插值并輸出到水平亮度和色度距離計算單元以及選擇輸出單元;所述垂直插值單元用于對收到的圖像的貝爾原始數據進行垂直插值運算,得到像素點(m,n)的RGB分量的垂直插值并輸出到垂直亮度和色度距離計算單元以及選擇輸出單元;所述水平亮度和色度距離計算單元用于根據收到的像素點的水平插值,求取像素點(m,n)與水平方向相鄰像素點之間的水平亮度距離DLhm+i,n+j和水平色度距離DChm+i,n+j,輸出到距離比較單元;所述垂直亮度和色度距離計算單元用于根據收到的像素點的垂直插值,求取像素點(m,n)與垂直方向相鄰像素點之間的垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,輸出到距離比較單元;所述距離比較單元用于根據計算出的像素點(m,n)到相鄰像素點的水平亮度距離DLhm+i,n+j、水平色度距離DChm+i,n+j、垂直亮度距離DLvm+i,n+j和垂直色度距離DCVm+i,n+j,比較得到色度距離和亮度距離較小的方向,輸出選擇該方向的選擇控制信號到選擇輸出單元;所述選擇輸出單元用于根據選擇控制信號從輸入的像素點(m,n)的RGB分量的垂直插值和水平插值中選擇出一組作為最終顏色值輸出其中,i,j的取值為i=0時,j=-1,1;j=0時,i=-1,1。
進一步地,上述裝置還可具有以下特點所述距離比較單元進一步分為亮度和色度閾值計算單元、水平計數單元、垂直計數單元和距離判斷單元,其中所述亮度和色度閾值計算單元用于根據計算出的像素點(m,n)的水平亮度距離DLhm+i,n+j、水平色度距離DChm+i,n+j、垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,計算該像素點的亮度閾值參數leps和色度閾值參數ceps,輸出到水平計數單元和垂直計數單元,公式如下leps=MIN(MAX(DLhm,n-1,DLhm,n+1),MAX(DLVm-1,n,DLvm+1,n));ceps=MIN(MAX(DChm,n-1,DChm,n+1),MAX(DCVm-1,n,DCvm+1,n));上述i=0時,j=-1,1;j=0時,i=-1,1;MIN表示取最小值函數,MAX表示取最大值函數。
所述水平計數單元用于逐一判斷像素點(m,n)與4個相鄰像素點的水平亮度距離和水平色度距離是否滿足條件DLhm+i,n+j<=leps且DChm+i,n+j<=ceps,如果是,計數值加1,最后得到水平計數值CHm,n,輸出到距離判斷單元;所述垂直計數單元用于逐一判斷像素點(m,n)與4個相鄰像素點的垂直亮度距離和垂直色度距離是否滿足條件DLvm+i,n+j<=leps且DCvm+i,n+j<=ceps,如果是,計數值加1,最后得到垂直計數值CVm,n,輸出到距離判斷單元;所述距離判斷單元用于根據上述水平計數值和垂直計數值,判斷出計數值較小的方向,輸出選擇該方向的選擇控制信號到選擇輸出單元。
或者,所述距離比較單元是對像素點(m,n)到4個相鄰像素點的水平亮度和色度距離進行加權計算,再對該像素點(m,n)到4個相鄰像素點的垂直亮度和色度距離進行加權計算,將兩者的結果進行比較,以值較小的方向為亮度距離和色度距離較小的方向。
進一步地,上述裝置還可具有以下特點所述水平亮度和色度距離計算單元根據下式計算水平亮度距離DLhm+i,n+j和水平色度距離DChm+i,n+jDLhm+i,n+j=abs(GHm,n-GHm+i,n+j);DChm+i,n+j=abs(GRHm,n-GRHm+i,n+j)+abs(GBHm,n-GBHm+i,n+j);或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n-j)2;]]>或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+( GBHm,n-GBHm+i,n+j)2其中,GRHx,y=GHx,y-RHx,y;x=m,y=m或x=m+i,y=n+j;GBHx,y=GHx,y-BHx,y;x=m,y=m或x=m+i,y=n+j;所述垂直亮度和色度距離計算單元根據下式計算垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j)DLvm+i,n+j=abs(GVm,n-GVm+i,n+j);
DCvm+i,n+j=abs(GRVm,n-GRVm+i,n+j)+abs(GBVm,n-GBVm+i,n+j);或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2;]]>或DCVm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBm,n-GBVm+i,n+j)2其中,GRVx,y=GVx,y-RVx,y;x=m,y=m或x=m+i,y=n+j;GBVx,y=GVx,y-BVx,y;x=m,y=m或x=m+i,y=n+j;上述i=0時,j=-1,1;j=0時,i=-1,1;上述GHx,y、GVx,y表示像素點(x,y)G分量的水平插值和垂直插值,RHx,y、RVx,y表示像素點(x,y)R分量的水平插值和垂直插值,BHx,y、BVx,y表示像素點(x,y)B分量的水平插值和垂直插值。
進一步地,上述裝置還可具有以下特點所述水平插值單元、水平亮度和色度距離計算單元之間,以及所述垂直插值單元、垂直亮度和色度距離計算單元之間還設置了一個色彩空間轉換單元,用于將像素點水平插值和垂直插值從RGB色彩空間轉化到亮度和色度分離的色彩空間,得到亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值;所述水平亮度和色度距離計算單元根據下式計算水平亮度距離DLhm+i,n+j和水平色度距離DChm+i,n+jDLhm+i,n+j=abs(LHm,n-LHm+i,n+j);DChm+i,n+j=abs(SHm,n-SHm+i,n+j)+abs(THm,n-THm+i,n+j);所述垂直亮度和色度距離計算單元根據下式計算垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+jDLvm+i,n+j=abs(LVm,n-LVm+i,n+j);DCvm+i,n+j=abs(SVm,n-SVm+i,n+j)+abs(TVm,n-TVm+i,n+j);上述i=0時,i=-1,1;i=0時,i=-1,1;LHx,y,LVx,y為亮度分量的水平插值和垂直插值;SHx,y,SVx,y為第一色度分量的水平插值和垂直插值;THx,y,TVx,y為第二色度分量的水平插值和垂直插值;其中,x=m,y=m或x=m+i,y=n+j。
本發明通過同時生成水平插值圖像和垂直插值圖像,并依據亮度距離和色度距離最小準則選擇各像素點對應的RGB值作為最終輸出值,生成最終圖像。本發明在選擇插值時,對于RGB三個分量要么都采用垂直分量,要么都采用水平分量,使得產生的圖像顏色和亮度一致。同時,本發明在選擇垂直分量和水平分量時,是綜合考慮色度距離和亮度距離,選擇距離較小的方向的插值作為對應像素點的最終輸出值,使得圖像更為清晰。
圖1為本發明色彩濾波陣列插值方法的流程圖;圖2為(m,n)像素點原始值為R分量的Bayer模式的原始圖像的像素排列格式;圖3為(m,n)像素點原始值為B分量的Bayer模式的原始圖像的像素排列格式;圖4為(m,n)像素點原始值為G分量,且該行包含原始值為R分量的Bayer模式的原始圖像的像素排列格式;圖5為(m,n)像素點原始值為G分量,且該行包含原始值為B分量的Bayer模式的原始圖像的像素排列格式。
圖6是本發明實施例裝置的結構圖。
具體實施例方式
本發明的基本思路是,同時生成水平插值圖像和垂直插值圖像,并生成各像素點對應的亮度距離和色度距離值,最后依據亮度距離和色度距離最小準則,輸出各像素點的RGB值,生成最終圖像。
下面將結合附圖和實施例對本發明進行詳細的描述。
圖1為本實施例色彩濾波陣列插值方法的流程圖,包含如下步驟步驟1計算像素點(m,n)的RGB分量的水平插值和垂直插值;該步驟可細分為如下子步驟步驟1A獲得Rm,n像素點的G分量的水平插值GHm,n和垂直插值GVm,n,Rm,n像素點的Bayer模式的原始圖像的像素排列格式如圖2所示;GHm,n=Gm,n-1+Gm,n+12;]]>或GHm,n=Gm,n-1+Gm,n+12+-Rm,n-2+2Rm,n-Rm,n+24;]]>GVm,n=Gm-1,n+Gm+1,n2;]]>或GVm,n=Gm-1,n+Gm+1,n2+-Rm-2,n+2Rm,n-Rm+2,n4;]]>步驟1B獲得Bm,n像素點的G分量的水平插值GHm,n和垂直插值GVm,n,Bm,n像素點的Bayer模式的原始圖像的像素排列格式如圖3所示GHm,n=Gm,n-1+Gm,n+12;]]>或GHm,n=Gm,n-1+Gm,n+12+-Bm,n-2+2Bm,n-Bm,n+24;]]>GVm,n=Gm-1,n+Gm+1,n2;]]>或GVm,n=Gm-1,n+Gm+1,n2+-Bm-2,n+2Bm,n-Bm+2,n4;]]>步驟1C在原始值就是G分量的像素點上GHm,n=GVm,n=Gm,n;至此,我們獲得了圖像的所有像素點G分量的水平插值和垂直插值;步驟1D在Grm,n像素點,獲得R分量的水平插值RHm,n和垂直插值RVm,n,Grm,n像素點的Bayer模式的原始圖像的像素排列格式如圖4所示RHm,n=Gm,n+Rm,n-1+Rm,n+1-GHm,n-1-GHm,n+12;]]>
RVm,n=Gm,n+Rm,n-1+Rm,n+1-GVm,n-1-GVm,n+12;]]>步驟1E在Grm,n像素點,獲得B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=Gm,n+Bm-1,n+Bm+1,n-GHm-1,n-GHm+1,n2;]]>BVm,n=Gm,n+Bm-1,n+Bm+1,n-GVm-1,n-GVm+1,n2;]]>步驟1F在Gbm,n像素點,獲得B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=Gm,n+Bm,n-1+Bm,n+1-GHm,n-1-GHm,n+12;]]>BVm,n=Gm,n+Bm,n-1+Bm,n+1-GVm,n-1-GVm,n+12;]]>Gbm,n像素點的Bayer模式的原始圖像的像素排列格式如圖5所示;步驟1G在Gbm,n像素點,獲得R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=Gm,n+Rm-1,n+Rm+1,n-GHm-1,n-GHm+1,n2;]]>RVm,n=Gm,n+Rm-1,n+Rm+1,n-GVm-1,n-GVm+1,n2;]]>步驟1H獲得Bm,n像素點的R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=GHm,n+Rm-1,n-1+Rm+1,n-1+Rm-1,n+1+Rm+1,n+1-(GHm-1,n-1+GHm+1,n-1+GHm-1,n+1+GHm+1,n+1)4]]>RVm,n=GVm,n+Rm-1,n-1+Rm+1,n-1+Rm-1,n+1+Rm+1,n+1-(GVm-1,n-1+GVm+1,n-1+GVm-1,n+1+GVm+1,n+1)4;]]>步驟1I獲得Rm,n像素點的B分量的水平插值BHm,n和垂直插值BVm,n
BHm,n=GHm,n+Bm-1,n-1+Bm+1,n-1+Bm-1,n+1+Bm+1,n+1-(GHm-1,n-1+CHm+1,n-1+GHm-1,n+1+GHm+1,n+1)4;]]>BVm,n=GVm,n+Bm-1,n-1+Bm+1,n-1+Bm-1,n+1+Bm+1,n+1-(GVm-1,n-1+GVm+1,n-1+GVm-1,n+1+GVm+1.n+1)4]]>至此,我們獲得了插值后圖像的所有像素點的RGB分量水平插值RHm,n,GHm,n,BHm,n;垂直插值RVm,n,GVm,n,BVm,n;其中,m=1,2,...,M;n=1,2,...,N;M,N分別為圖像像素點的行數和列數。
需要說明的是,本發明并不局限于上述計算像素點水平插值和垂直插值的方法,對于現有的任何一種有效的計算水平插值和垂直插值的方法本發明都可以使用。
步驟2求取像素點(m,n)與其相鄰4個像素點之間的水平亮度距離DLhm+i,n+j、垂直亮度距離DLVm+i,n+j,和水平色度距離DCbm+i,n+j、垂直亮度距離DCVm+i,n+jDLhm+i,n+j=abs(GHm,n-GHm+i,n+j);DLvm+i,n+j=abs(GVm,n-GVm+i,n+j);DChm+i,n+j=abs(GRHm,n-GRHm+i,n+j)+abs(GBHm,n-GBHm+i,n+j);DCVm+i,n+j=abs(GRVm,n-GRVm+i,n+j)+abs(GBVm,n-GBVm+j,n+j);上述GRHx,y=GHx,y-RHx,y;x=m,y=m或x=m+i,y=n+j;上述GRVx,y=GVx,y-RVx,y;x=m,y=m或x=m+i,y=n+j;上述GBHx,y=GHx,y-BHx,y;x=m,y=m或x=m+i,y=n+j;上述GBVx,y=GVx,y-BVx,y;x=m,y=m或x=m+i,y=n+j;上述i=0時,j=-1,1;j=0時,i=-1,1;上述亮度距離和色度距離以差的絕對值的方式計算,除此之外,色度距離還可以使用差的平方的和的開方的方式來計算。例如DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2;]]>或者色度距離還可以使用差的平方的和的方式來計算。例如DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2此外,水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j,和水平色度距離DChm+i,n+j、垂直亮度距離DCvm+i,n+j還可采用如下步驟獲得(1)將上述步驟1計算得出的像素點水平插值和垂直插值從RGB色彩空間轉化到亮度和色度分離的色彩空間,得到亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值;上述亮度和色度分離的色彩空間可以是Lab色彩空間,L指亮度分量,a和b是色度分量,經過上述色彩空間轉換后得到L、a、b分量的水平插值和垂直插值;或YCbCr色彩空間,Y指亮度分量,Cb和Cr是色度分量,經過上述色彩空間轉換后得到Y、Cb、Cr的水平插值和垂直插值;(2)使用亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值計算像素點(m,n)與4個相鄰像素點的水平亮度距離、水平色度距離、垂直亮度距離和垂直色度距離DLhm+i,n+j=abs(LHm,n-LHm+i,n+j);DLvm+i,n+j=abs(LVm,n-LVm+i,n+j);DChm+i,n+j=abs(SHm,n-SHm+i,n+j)+abs(THm,n-THm+i,n+j);DCvm+i,n+j=abs(SVm,n-SVm+i,n+j)+abs(TVm,n-TVm+i,n+j);上述i=0時,j=-1,1;j=0時,i=-1,1;LHx,y,LVx,y為亮度分量的水平插值和垂直插值;SHx,y,SVx,y為第一色度分量的水平插值和垂直插值;THx,y,TVx,y為第二色度分量的水平插值和垂直插值;x=m,y=m或x=m+i,y=n+j。
以上像素點(m,n)到相鄰像素點的水平亮度和色度距離,垂直亮度和色度距離的計算可以采用任一現有的算法進行。
步驟3求取像素點(m,n)的亮度閾值參數leps和色度閾值參數cepsleps=MIN(MAX(DLhm,n-1,DLhm,n+1),MAX(DLvm-1,n,DLvm+1,n));ceps=MIN(MAX(DChm,n-1,DChm,n+1),MAX(DCvm-1,n,DCvm+1,n));其中MIN表示取最小值函數,MAX表示取最大值函數。
步驟4統計像素點(m,n)的水平計數值CHm,n和垂直計數值CVm,n,其中逐一判斷像素點(m,n)與4個相鄰像素點的水平亮度距離和水平色度距離是否滿足條件DLhm+i,n+j<=leps且DChm+i,n+j<=ceps,如果是,計數值加1,最后得到計數值CHm,n;逐一判斷像素點(m,n)與4個相鄰像素點的垂直亮度距離和垂直色度距離是否滿足條件DLvm+i,n+j<=leps且DCVm+i,n+j<=ceps,如果是,計數值加1,最后得到計數值CVm,n;其中,上述i=0時,j=-1,1;j=0時,i=-1,1;步驟5根據計數值CHm,n和CVm,n的比較結果從像素點(m,n)的水平插值和垂直插值中選擇亮度和色度較小的方向作為最終輸出值若CHm,n>CVm,n,則選擇水平插值RHm,n,GHm,n,BHm,n作為該像素點的最終輸出值;若CHm,n<CVm,n,選擇垂直插值RVm,n,GVm,n,BVm,n作為該像素點的最終輸出值,若CHm,n=CVm,n,可按約定選擇其中的一個或任選其中一個。
以上計算可以是對整個圖像或部分圖像(如若干列或若干行)的像素點行進行RGB插值運算,然后再進行后續的亮度和色度距離計算以及距離大小的比較。對于位于整個圖像邊界的像素點,在計算其各分量的水平插值和垂直插值時,可采用邊界擴充,對稱取值的方法進行處理。例如,當(m,n)=(1,1)時,Gm,n-1可取為Gm,n1,即G1,0=G1,2。
如圖6所示是本發明實施例方法對應的色彩濾波陣列插值裝置的結構框圖,如圖所示,包括水平插值單元、垂直插值單元、水平亮度和色度距離計算單元、垂直亮度和色度距離計算單元、亮度和色度閾值計算單元、水平計數單元、垂直計數單元,距離判斷單元和選擇輸出單元,其中所述水平插值單元用于對收到的Bayer原始數據進行水平插值運算,得到像素點(m,n)的RGB分量的水平插值并輸出到水平亮度和色度距離計算單元以及選擇輸出單元,具體的計算公式已經在方法步驟中詳細介紹,這里不再贅述,以下各個單元也是如此。
所述垂直插值單元用于對收到的Bayer原始數據進行垂直插值運算,得到像素點(m,n)的RGB分量的垂直插值并輸出到垂直亮度和色度距離計算單元以及選擇輸出單元。
所述水平亮度和色度距離計算單元用于根據收到的像素點的水平插值,求取像素點(m,n)與水平方向相鄰像素點之間的水平亮度距離DLhm,n+j和水平色度距離DChm,n+j,輸出到亮度和色度閾值計算單元和水平計數單元。
所述垂直亮度和色度距離計算單元用于根據收到的像素點的垂直插值,求取像素點(m,n)與垂直方向相鄰像素點之間的垂直亮度距離DLvm+i,n和垂直色度距離DCvm+i,n,輸出到亮度和色度閾值計算單元和垂直計數單元。
所述亮度和色度閾值計算單元用于根據計算出的像素點(m,n)到相鄰像素點的水平亮度距離DLhm+i,n+j、水平色度距離DChm+i,n+j、垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,計算該像素點的亮度閾值參數leps和色度閾值參數ceps,輸出到水平計數單元和垂直計數單元;所述水平計數單元用于逐一判斷像素點(m,n)與相鄰像素點的水平亮度距離和水平色度距離是否滿足條件DLhm+i,n+j<=leps且DChm+i,n+j<=ceps,如果是,計數值加1,最后得到水平計數值CHm,n輸出到距離判斷單元;所述垂直計數單元用于逐一判斷像素點(m,n)與相鄰像素點的垂直亮度距離和垂直色度距離是否滿足條件DLvm+i,n+j<=leps且DCvm+i,n+j<=ceps,如果是,計數值加1,最后得到垂直計數值CVm,n,輸出到距離判斷單元。
所述距離判斷單元用于根據兩個水平和垂直計數值,判斷出計數值較小的方向,輸出選擇該方向的選擇控制信號到選擇輸出單元。
所述選擇輸出單元用于根據選擇控制信號從輸入的像素點(m,n)的RGB分量的垂直插值和水平插值中選擇出一組作為最終顏色值輸出。
以上的亮度和色度閾值計算單元、水平計數單元、垂直計數單元,距離判斷單元從功能上可以均從屬于一距離比較單元,用于根據計算出的像素點(m,n)到相鄰像素點的水平亮度距離DLhm+i,n+j、水平色度距離DChm+i,n+j、垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,比較得到色度距離和亮度距離較小的方向,輸出選擇該方向的選擇控制信號到選擇輸出單元。
上述i,j的取值為i=0時,j=-1,1;j=0時,i=-1,1。
此外,如果在計算亮度和色度距離時采用了上述的先進行色彩空間轉換的方法,則需要在水平插值單元、水平亮度和色度距離計算單元之間增加一個色彩空間轉換單元,在垂直插值單元、垂直亮度和色度距離計算單元之間也增加一個色彩空間轉換單元,用于將像素點水平插值和垂直插值從RGB色彩空間轉化到亮度和色度分離的色彩空間,得到亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值。
本發明在比較選擇色度距離和亮度距離較小的方向時,并不局限于上述實施例中的閾值和計數值的方式。另一實施例中,無論是上述方法還是裝置,均可對像素點(m,n)到各相鄰像素點的水平亮度距離和水平色度距離進行加權計算,再對該像素點(m,n)到各相鄰像素點的垂直亮度和色度距離進行加權計算,將兩者的結果進行比較,選擇值較小的一個方向作為選擇的方向,輸出該方向的RGB插值作為最終顏色值。加權值可以根據經驗事先設定并根據圖像效果而調整。
綜上所述,在現有技術中,在計算某一像素點的RGB插值時,其結果可能是對某一分量采用了水平插值而對其它分量采用了垂直插值,這樣可能使得圖像顏色和亮度不一致。而本發明在選擇插值時,對于RGB三個分量要么都采用垂直分量,要么都采用水平分量,使得產生的圖像顏色和亮度一致。同時,本發明在選擇垂直分量和水平分量時,是綜合考慮色度距離和亮度距離,選擇距離較小的方向的插值作為對應像素點的最終輸出值,使得圖像更為清晰。
權利要求
1.一種色彩濾波陣列插值方法,包含如下步驟(a)根據圖像像素點的原始測量數據計算像素點(m,n)的RGB分量的水平插值和垂直插值,m,n分別表示像素點所在的行數和列數;(b)根據像素點(m,n)與其相鄰像素點的水平插值和垂直插值,求取像素點(m,n)與其相鄰像素點之間在水平方向的水平亮度距離和水平色度距離,以及垂直方向的垂直亮度距離和垂直色度距離;(c)將像素點(m,n)與其相鄰像素點在水平方向的水平亮度距離和水平色度距離,與垂直方向的垂直亮度距離和垂直色度距離進行比較,確定像素點(m,n)與相鄰像素點亮度距離和色度距離較小的方向;(d)將所述亮度距離和色度距離較小的方向的插值作為像素點(m,n)的最終顏色值輸出。
2.如權利要求1所述的色彩濾波陣列插值方法,其特征在于所述原始測量數據為貝爾模式的原始數據,所述步驟(a)進行像素點RGB分量的水平插值和垂直插值計算,進一步分為以下步驟(a1)計算Rm,n像素點的G分量的水平插值GHm,n和垂直插值GVm,nGHm,n=Gm,n-1+Gm,n+12;]]>或GHm,n=Gm,n-1+Gm,n+12+-Bm,n-2+2Bm,n-Bm,n+24;]]>GVm,n=Gm-1,n+Gm+1,n2;]]>或GVm,n=Gm-1,n+Gm+1,n2+-Bm-2,n+2Bm,n-Bm+2,n4;]]>(a2)計算Bm,n像素點的G分量的水平插值GHm,n和垂直插值GVm,nGHm,n=Gm,n-1+Gm,n+12;]]>或GHm,n=Gm,n-1+Gm,n+12+-Bm,n-2+2Bm,n-Bm,n+24;]]>GVm,n=Gm-1,n+Gm+1,n2;]]>或GVm,n=Gm-1,n+Gm+1,n2+-Bm-2,n+2Bm,n-Bm+2,n4;]]>(a3)在原始值就是G分量的像素點上GHm,n=GVm,n=Gm,n;(a4)在Grm,n像素點,計算R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=Gm,n+Rm,n-1+Rm,n+1-GHm,n-1-GHm,n+12;]]>RVm,n=Gm,n+Rm,n-1+Rm,n+1-GVm,n-1-GVm,n+12;]]>在Grm,n像素點,計算B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=Gm,n+Bm-1,n+Bm+1,n-GHm-1,n-GHm+1,n2;]]>BVm,n=Gm,n+Bm-1,n+Bm+1,n-GVm-1,n-GVm+1,n2;]]>(a5)在Gbm,n像素點,計算B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=Gm,n+Bm,n-1+Bm,n+1-GHm,n-1-GHm,n+12;]]>BVm,n=Gm,n+Bm,n-1+Bm,n+1-GVm,n-1-GVm,n+12;]]>在Gbm,n像素點,獲得R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=Gm,n+Rm-1,n+Rm+1,n-GHm-1,n-GHm+1,n2;]]>RVm,n=Gm,n+Rm-1,n+Rm+1,n-GVm-1,n-GVm+1,n2;]]>(a6)計算Bm,n像素點的R分量的水平插值RHm,n和垂直插值RVm,nRHm,n=]]>GHm,n+Rm-1,n-1+Rm+1,n-1+Rm-1,n+1+Rm+1,n+1-(GHm-1,n-1+GHm+1,n-1+GHm-1,n+1+GHm+1,n+1)4;]]>RVm,n=]]>GHm,n+Rm-1,n-1+Rm+1,n-1+Rm-1,n+1+Rm+1,n+1-(GVm-1,n-1+GVm+1,n-1+GVm-1,n+1+GVm+1,n+1)4;]]>(a7)獲得Rm,n像素點的B分量的水平插值BHm,n和垂直插值BVm,nBHm,n=]]>GHm,n+Bm-1,n-1+Bm+1,n-1+Bm-1,n+1+Bm+1,n+1-(GHm-1,n-1+GHm+1,n-1+GHm-1,n+1+GHm+1,n+1)4;]]>BVm,n=]]>GHm,n+Bm-1,n-1+Bm+1,n-1+Bm-1,n+1+Bm+1,n+1-(GVm-1,n-1+GVm+1,n-1+GVm-1,n+1+GVm+1,n+1)4.]]>
3.如權利要求1所述的色彩濾波陣列插值方法,其特征在于所述步驟(b)中像素點(m,n)到4個相鄰像素點的水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j、水平色度距離DChm+i,n+j和垂直色度距離DCvm+i,n+j由以下公式計算得出DLhm+i,n+j=abs(GHm,n-GHm+i,n+j);DLvm+i,n+j=abs(GVm,n-GVm+i,n+j);DChm+i,n+j=abs(GRHm,n-GRHm+i,n+j)+abs(GBHm,n-GBHm+i,n+j);或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2;]]>或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+i)2DCvm+i,n+j=abs(GRVm,n-GRVm+i,n+j)+abs(GBVm,n-GBVm+i,n+j);或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2;]]>或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2其中,i=0時,j=-1,1;j=0時,i=-1,1;且有GRHx,y=GHx,y-RHx,y;GRVx,y=GVx,y-RVx,y;GBHx,y=GHx,y-BHx,y;GBVx,y=GVx,y-BVx,y;上述GHx,y、GVx,y表示像素點(x,y)G分量的水平插值和垂直插值,RHx,y、RVx,y表示像素點(x,y)R分量的水平插值和垂直插值,BHx,y、BVx,y表示像素點(x,y)B分量的水平插值和垂直插值,x=m,y=m或x=m+i,y=n+j。
4.如權利要求1所述的色彩濾波陣列插值方法,其特征在于所述步驟(b)進一步分為以下步驟(b1)將步驟(a)中得到的像素點的水平插值和垂直插值從RGB色彩空間轉化到亮度和色度分離的色彩空間,得到亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值;(b2)使用色彩分離的色彩空間的各分量的水平插值和垂直插值,計算像素點(m,n)與其相鄰4個像素點之間的水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j,和水平色度距離DChm+i,n+j、垂直色度距離DCvm+i,n+j,公式如下DLhm+i,n+j=abs(LHm,n-LHm+i,n+j);DLvm+i,n+j=abs(LVm,n-LVm+i,n+j);DChm+i,n+j=abs(SHm,n-SHm+i,n+j)+abs(THm,n-THm+i,n+j);DCvm+i,n+j=abs(SVm,n-SVm+i,n+j)+abs(TVm,n-TVm+i,n+j);其中,i=0時,j=-1,1;j=0時,i=-1,1上述LHx,y,LVx,y為亮度分量的水平插值和垂直插值;SHx,y,SVx,y為第一色度分量的水平插值和垂直插值;THx,y,TVx,y為第二色度分量的水平插值和垂直插值,x=m,y=m或x=m+i,y=n+j。
5.如權利要求1所述的色彩濾波陣列插值方法,其特征在于所述步驟(c)進一步分為以下步驟(c1)根據計算得到的像素點(m,n)與相鄰像素點的水平亮度距離DLhm+i,n+j、垂直亮度距離DLvm+i,n+j、水平色度距離DChm+i,n+j和垂直色度距離DCvm+i,n+j,求取像素點(m,n)的亮度閾值參數leps和色度閾值參數cepsleps=MIN(MAX(DLhm,n-1,DLhm,n+1),MAX(DLvm-1,n,DLvm+1,n));ceps=MIN(MAX(DChm,n-1,DChm,n+1),MAX(DCvm-1,n,DCvm+1,n));上述i=0時,j=-1,1;j=0時,i=-1,1;MIN表示取最小值函數,MAX表示取最大值函數。(c2)逐一判斷像素點(m,n)與4個相鄰像素點的水平亮度距離和水平色度距離是否滿足條件DLhm+i,n+j<=leps且DChm+i,n+j<=ceps,如果是,計數值加1,最后得到計數值CHm,n;逐一判斷像素點(m,n)與4個相鄰像素點的垂直亮度距離和垂直色度距離是否滿足條件DLvm+i,n+j<=leps且DCvm+i,n+j<=ceps,如果是,計數值加1,最后得到計數值CVm,n;(c3)若CHm,n>CVm,n,判斷水平方向為亮度距離和色度距離較小的方向;若CHm,n<CVm,n,判斷垂直方向為亮度距離和色度距離較小的方向;若CHm,n=CVm,n,則按約定選擇其中的一個或任選其中一個,作為亮度距離和色度距離較小的方向;其中,上述i=0時,j=-1,1;j=0時,i=-1,1;或者,所述步驟(c)中,是對像素點(m,n)到4個相鄰像素點的水平亮度和色度距離進行加權計算,再對該像素點(m,n)到4個相鄰像素點的垂直亮度和色度距離進行加權計算,將兩者的結果進行比較,以值較小的方向為亮度距離和色度距離較小的方向。
6.如權利要求1所述的色彩濾波陣列插值方法,其特征在于所述步驟(a)中先對整個圖像或部分圖像的各像素點進行RGB插值運算,然后再進行后續步驟,對于位于整個圖像邊界的像素點,在計算其各分量的水平插值和垂直插值時,采用邊界擴充,對稱取值的方法進行處理。
7.一種色彩濾波陣列插值裝置,其特征在于,包括水平插值單元、垂直插值單元、水平亮度和色度距離計算單元、垂直亮度和色度距離計算單元、距離比較單元和選擇輸出單元,其中所述水平插值單元用于對收到的圖像的貝爾原始數據進行水平插值運算,得到像素點(m,n)的RGB分量的水平插值并輸出到水平亮度和色度距離計算單元以及選擇輸出單元;所述垂直插值單元用于對收到的圖像的貝爾原始數據進行垂直插值運算,得到像素點(m,n)的RGB分量的垂直插值并輸出到垂直亮度和色度距離計算單元以及選擇輸出單元;所述水平亮度和色度距離計算單元用于根據收到的像素點的水平插值,求取像素點(m,n)與水平方向相鄰像素點之間的水平亮度距離DLhm+i,n+j和水平色度距離DChm+i,n+j,輸出到距離比較單元;所述垂直亮度和色度距離計算單元用于根據收到的像素點的垂直插值,求取像素點(m,n)與垂直方向相鄰像素點之間的垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,輸出到距離比較單元;所述距離比較單元用于根據計算出的像素點(m,n)到相鄰像素點的水平亮度距離DLhm+i,n+j、水平色度距離DChm+i,n+j、垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,比較得到色度距離和亮度距離較小的方向,輸出選擇該方向的選擇控制信號到選擇輸出單元;所述選擇輸出單元用于根據選擇控制信號從輸入的像素點(m,n)的RGB分量的垂直插值和水平插值中選擇出一組作為最終顏色值輸出其中,i,j的取值為i=0時,j=-1,1;j=0時,i=-1,1。
8.如權利要求7所述的色彩濾波陣列插值裝置,其特征在于所述距離比較單元進一步分為亮度和色度閾值計算單元、水平計數單元、垂直計數單元和距離判斷單元,其中所述亮度和色度閾值計算單元用于根據計算出的像素點(m,n)的水平亮度距離DLhm+i,n+j、水平色度距離DChm+i,n+j、垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+j,計算該像素點的亮度閾值參數leps和色度閾值參數ceps,輸出到水平計數單元和垂直計數單元,公式如下leps=MIN(MAX(DLhm,n-1,DLhm,n+1),MAX(DLvm-1,n,DLvm+1,n));ceps=MIN(MAX(DChm,n-1,DChm,n+1),MAX(DCvm-1,n,DCvm+1,n));上述i=0時,j=-1,1;j=0時,i=-1,1;MIN表示取最小值函數,MAX表示取最大值函數。所述水平計數單元用于逐一判斷像素點(m,n)與4個相鄰像素點的水平亮度距離和水平色度距離是否滿足條件DLhm+i,n+j<=leps且DChm+i,n+j<=ceps,如果是,計數值加1,最后得到水平計數值CHm,n,輸出到距離判斷單元;所述垂直計數單元用于逐一判斷像素點(m,n)與4個相鄰像素點的垂直亮度距離和垂直色度距離是否滿足條件DLvm+i,n+j<=leps且DCvm+i,n+j<=ceps,如果是,計數值加1,最后得到垂直計數值CVm,n,輸出到距離判斷單元;所述距離判斷單元用于根據上述水平計數值和垂直計數值,判斷出計數值較小的方向,輸出選擇該方向的選擇控制信號到選擇輸出單元。或者,所述距離比較單元是對像素點(m,n)到4個相鄰像素點的水平亮度和色度距離進行加權計算,再對該像素點(m,n)到4個相鄰像素點的垂直亮度和色度距離進行加權計算,將兩者的結果進行比較,以值較小的方向為亮度距離和色度距離較小的方向。
9.如權利要求7所述的色彩濾波陣列插值裝置,其特征在于所述水平亮度和色度距離計算單元根據下式計算水平亮度距離DLhm+i,n+j和水平色度距離DChm+i,n+jDLhm+i,n+j=abs(GHm,n-GHm+i,n+j);DChm+i,n+j=abs(GRHm,n-GRHm+i,n+j)+abs(GBHm,n-GBHm+i,n+j);或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2;]]>或DChm+i,n+j=(GRHm,n-GRHm+i,n+j)2+(GBHm,n-GBHm+i,n+j)2其中,GRHx,y=GHx,y-RHx,y;x=m,y=m或x=m+i,y=n+j;GBHx,y=GHx,y-BHx,y;x=m,y=m或x=m+i,y=n+j;所述垂直亮度和色度距離計算單元根據下式計算垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+jDLvm+i,n+j=abs(GVm,n-GVm+i,n+j);DCvm+i,n+j=abs(GRVm,n-GRVm+i,n+j)+abs(GBVm,n-GBVm+i,n+j);或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2;]]>或DCvm+i,n+j=(GRVm,n-GRVm+i,n+j)2+(GBVm,n-GBVm+i,n+j)2其中,GRVx,y=GVx,y-RVx,y;x=m,y=m或x=m+i,y=n+j;GBVx,y=GVx,y-BVx,y;x=m,y=m或x=m+i,y=n+j;上述i=0時,j=-1,1;j=0時,i=-1,1;上述GHx,y、GVx,y表示像素點(x,y)G分量的水平插值和垂直插值,RHx,y、RVx,y表示像素點(x,y)R分量的水平插值和垂直插值,BHx,y、BVx,y表示像素點(x,y)B分量的水平插值和垂直插值。
10.如權利要求7所述的色彩濾波陣列插值裝置,其特征在于所述水平插值單元、水平亮度和色度距離計算單元之間,以及所述垂直插值單元、垂直亮度和色度距離計算單元之間還設置了一個色彩空間轉換單元,用于將像素點水平插值和垂直插值從RGB色彩空間轉化到亮度和色度分離的色彩空間,得到亮度分量、第一色度分量和第二色度分量的水平插值和垂直插值;所述水平亮度和色度距離計算單元根據下式計算水平亮度距離DLhm+i,n+j和水平色度距離DChm+i,n+jDLhm+i,n+j=abs(LHm,n-LHm+i,n+j);DChm+i,n+j=abs(SHm,n-SHm+i,n+j)+abs(THm,n-THm+i,n+j);所述垂直亮度和色度距離計算單元根據下式計算垂直亮度距離DLvm+i,n+j和垂直色度距離DCvm+i,n+jDLvm+i,n+j=abs(LVm,n-LVm+i,n+j);DCvm+i,n+j=abs(SVm,n-SVm+i,n+j)+abs(TVm,n-TVm+i,n+j);上述i=0時,j=-1,1;j=0時,i=-1,1;LHx,y,LVx,y為亮度分量的水平插值和垂直插值;SHx,y,SVx,y為第一色度分量的水平插值和垂直插值;THx,y,TVx,y為第二色度分量的水平插值和垂直插值;其中,x=m,y=m或x=m+i,y=n+j。
全文摘要
一種色彩濾波陣列插值方法和裝置,該裝置包括水平插值單元、垂直插值單元、水平亮度和色度距離計算單元、垂直亮度和色度距離計算單元、距離比較單元和選擇輸出單元。先根據圖像像素點的原始測量數據計算像素點(m,n)的RGB分量的水平插值和垂直插值;根據像素點(m,n)與其相鄰像素點的水平插值和垂直插值,求取像素點(m,n)與其相鄰像素點之間在水平方向的水平亮度距離和水平色度距離,以及垂直方向的垂直亮度距離和垂直色度距離;再確定像素點(m,n)與相鄰像素點亮度距離和色度距離較小的方向;將該方向的插值作為像素點(m,n)的最終顏色值輸出。本發明可以使得圖像顏色和亮度一致,并可獲得清晰的圖像。
文檔編號H04N9/77GK1964500SQ200610165050
公開日2007年5月16日 申請日期2006年12月12日 優先權日2006年12月12日
發明者沈操 申請人:北京中星微電子有限公司