去馬賽克方法以及使用該方法的裝置的制造方法【
技術領域:
】[0001]本發明涉及一種圖像處理技術,特別涉及一種去馬賽克方法以及使用該方法的裝置。【
背景技術:
】[0002]圖像信號處理器(ISP,ImageSignalProcessor)使用的去馬賽克算法(Demosaicingalgorithm)用來將圖像傳感器(imagesensor)輸出的不完整圖像采點重建出完整的色彩圖像,圖像傳感器前覆蓋著顏色濾波陣列(CFA,ColorFilterArray)。顏色濾波陣列是顏色濾波的馬賽克圖案。商業實施上,最常見的顏色濾波陣列配置是貝爾濾鏡(Bayerfilter)。貝爾濾鏡的奇數列(或偶數列)包含交錯的紅色及綠色濾鏡,而其偶數列(或奇數列)包含交錯的綠色及藍色濾鏡。綠色濾鏡的數目二倍于紅色或藍色濾鏡,因為人類眼睛對綠色光線較敏感。然而,傳統的去馬賽克算法不適用重建具有斜線紋理(texture)或者邊界(edge)的圖像。因此,需要一種去馬賽克方法以及使用該方法的裝置,用以克服如上所述的缺點。【
發明內容】[0003]本發明的實施例提出一種由處理單元執行的去馬賽克方法。取得具貝爾格式圖像的幀,其中包含多個紅色像素、多個綠色像素以及多個藍色像素,其中上述紅色像素、綠色像素以及藍色像素交錯排列。為每一紅色像素計算綠色值,以及為每一藍色像素計算綠色值。在上述為每一紅色或藍色像素計算綠色值的步驟中,還包含依據紅色或藍色像素及其多個周圍像素在一水平方向和一垂直方向上的色差梯度選擇第一插值法以及第二插值法中的一個,以及使用選擇的插值法計算紅色或藍色像素的綠色值。接著,為每一紅色像素計算藍色值,以及為每一藍色像素計算紅色值。[0004]本發明的實施例提出一種去馬賽克裝置,包含相機模塊控制器以及處理單元。相機模塊控制器耦接于相機模塊,而處理單元耦接于相機模塊控制器。處理單元通過相機模塊控制器控制相機模塊取得具貝爾格式圖像的幀,其中包括多個紅色像素、多個綠色像素以及多個藍色像素,其中紅色像素、綠色像素以及藍色像素交錯排列。處理單元依據每一紅色像素或藍色像素及其多個周圍像素在水平方向和垂直方向上的色差梯度選擇第一插值法以及第二插值法中的一個,接著,使用選擇的插值法計算紅色或藍色像素的綠色值。處理單元接著為每一紅色像素計算藍色值,以及為每一藍色像素計算紅色值。[0005]本發明提出的前述去馬賽克方法及其裝置在計算貝爾格式圖像中紅色或藍色像素的綠色值時充分考慮了該紅色或藍色像素及其周圍像素在水平方向和垂直方向上的色差,依據2個方向的不同色差所體現的圖像的性質(例如是否存在邊界方向)來選擇不同插值法,以實現更優的去馬賽克效果。【附圖說明】[0006]圖1是依據本發明實施例的運算裝置的系統架構圖。[0007]圖2至圖3是依據本發明實施例由處理單元執行的去馬賽克方法流程圖。[0008]圖4是依據本發明實施例的8x8貝爾格式圖像示意圖。[0009]【符號說明】[0010]110處理單元;130幀緩存器;[0011]150易失性存儲器;170相機模塊控制器;[0012]190相機模塊;S210?S290方法步驟;[0013]S310?S370方法步驟;[0014]R(1,1)、R(1,3)、...、R(7,5)、R(7,7)紅色像素;[0015]Β(2,2)、Β(2,4)、...、Β(8,6)、Β(8,8)藍色像素;[0016]G(1,2)、G(1,4)、…、G(8,5)、G(8,7)綠色像素。【具體實施方式】[0017]以下說明為完成發明的優選實現方式,其目的在于描述本發明的基本精神,但并不用以限定本發明。實際的【
發明內容】必須參考權利要求書。[0018]必須了解的是,使用于本說明書中的“包含”、“包括”等詞,用以表示存在特定的技術特征、數值、方法步驟、作業處理、元件和/或組件,但并不排除可加上更多的技術特征、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。[0019]在權利要求中使用如“第一”、〃第二〃、〃第三〃等詞用來修飾權利要求中的元件,并非用來表示之間具有優先權順序,先行關系,或者是一個元件先于另一個元件,或者是執行方法步驟時的時間先后順序,僅用來區別具有相同名字的元件。[0020]圖1是依據本發明實施例的運算裝置的系統架構圖。此系統架構可實施于桌上型計算機、筆記型計算機、平板計算機、手機、數字相機、數字錄像機等,至少包含處理單元110。處理單元110可使用多種方式實施,例如以專用硬件電路或通用硬件(例如,單一處理器、具并行處理能力的多處理器、圖形處理器或其他具運算能力的處理器),并且在執行固件或軟件時,提供之后所描述的功能。處理單元110可整合于圖像信號處理器(ISP,ImageSignalProcessor)中,并且可通過相機模塊控制器170控制相機模塊190用以捕捉多個幀。相機模塊190可包含圖像傳感器,例如,互補式金屬氧化物半導體(complementarymetal-oxide-semiconductor,CMOS)、電荷親合元件(charge-coupleddevice,CCD)等傳感器,用以感測由紅、綠、藍光強度所形成的圖像,以及包含讀取電子電路,用以從圖像傳感器搜集感測到的數據。然而,圖像傳感器中有瑕疵的像素無法正確地感測光線強度。所以,處理單元110可使用去馬賽克方法將貝爾格式圖像(Bayerpattern)的圖像重建成完整圖像,并將重建后結果存儲在幀緩存器(framebuffer)1300易失性存儲器150,例如動態隨機存取存儲器(DRAM,DynamicRandomAccessMemory),用以存儲執行過程中需要的數據,例如,變量、數據表(datatables)等。具體而言,貝爾格式圖像包括交錯排列的多個紅色像素(R)、多個綠色像素(G)以及多個藍色像素(B)。去馬賽克方法具體而言是為貝爾格式圖像中的每一紅色(R)/藍色像素(B)計算綠色值(RG/BG),然后為每一紅色像素(R)計算藍色值(RB)并且為每一藍色像素(B)計算紅色值(BR),以及為每一綠色像素(G)計算其紅色值(GR)及藍色值(GB),從而重建RGB三通道完整的圖像。[0021]圖2是依據本發明實施例由處理單元執行的去馬賽克方法流程圖。此流程開始于由處理單元110通過相機模塊控制器170控制相機模塊190以取得具貝爾格式圖像的幀,其包括交錯排列的多個紅色像素、多個綠色像素以及多個藍色像素(步驟S210)。處理單元110為每一紅色像素(R)計算綠色值(RG)(步驟S230),以及為每一藍色像素(B)計算綠色值(BG)(步驟S250)。詳細來說,依據紅色或藍色像素(R/B)及其多個周圍像素在水平方向和垂直方向上的色差梯度選擇第一插值法以及第二插值法中的一個,并使用選擇的插值法計算該紅色或藍色像素(R/B)的綠色值(RG/BG)。接著,處理單元110為每一紅色像素(R)計算藍色值(RB)(步驟S270)以及為每一藍色像素(B)計算紅色值(BR)(步驟S290)。本發明本實施例的去馬賽克方法在計算貝爾格式圖像中紅色或藍色像素的綠色值時充分考慮了該紅色或藍色像素及其周圍像素在水平方向和垂直方向上的色差梯度,依據2個方向的不同色差梯度所體現的圖像的性質(例如是否存在邊界方向)來選擇不同插值法,以實現更優的去馬賽克效果。[0022]圖3是依據本發明實施例由處理單元執行的去馬賽克方法流程圖。此流程開始于由處理單元110通過相機模塊控制器170控制相機模塊190以取得具貝爾格式圖像的幀,其包括交錯排列的多個紅色像素、多個綠色像素以及多個藍色像素(步驟S310)。處理單元110為每一紅色像素(R)計算綠色值(RG)(步驟S320),以及為每一藍色像素(B)計算綠色值(BG)(步驟S330),即首先重建整個G平面(Gplane)。接著,處理單元110為每一紅色像素(R)計算藍色值(RB)(步驟S340),以及為每一藍色像素(B)計算紅色值(BR)(步驟S350)。為紅色像素以及藍色像素分別計算藍色值以及紅色值的虛擬碼將于以下段落描述。處理單元110再為每一綠色像素(G)計算紅色值(GR)(步驟S360)以及為每一綠色像素(G)計算藍色值(GB)(步驟S370)。為綠色像素分別計算紅色值以及藍色值的虛擬碼亦將在以下段落描述。值得注意的是,步驟S320和步驟S330之間不分先后順序,步驟S340和步驟S350之間不分先后順序,步驟S360和步驟S370之間不分先后順序。此外,在不同插值算法中,步驟S340與步驟S350也可能發生在步驟S360與步驟S370之前或之后,可能依賴于在步驟S320及S330選擇何種插值法來重建綠色平面。[0023]圖4是依據本發明實施例的8x8貝爾格式圖像示意圖。幀的奇數列包含交錯的紅色及綠色像素(又可稱為Gr-像素),例如,{R(l,I)、G(2,I)、R(3,I)、G(4,I)、R(5,I)、G(6,1)、R(7,1)、G(8,1)},而幀的偶數列包含交錯的綠色(又可稱為Gb-像素)及藍色像素,例如,{G(1,2)、B(2,2)、G(3,2)、B(4,2)、G(5,2)、B(6,2)、G(7,2)、B(8,2)}。以下所稱的紅色像素、綠色像素以及藍色像素是指從圖像傳感器檢測到的原始數據,而紅色值、綠色值以及藍色值是指依據周圍像素的數據計算出的插值值。[0024]接下來結合圖3與圖4詳述本發明實施例由處理單元執行的去馬賽克方法流程。處理單元110計算每一紅色像素(R-pixel)的綠色值(RG_value)(步驟S320),以及每一藍色像素(B-pixel)的綠色值(BG-value)(步驟S330)。步驟S320及步驟S330用以先取得綠色平面(greenplane)。在步驟S320,詳細來說,針對每一個紅色像素,先選擇使用例如加權插值法(WeightedInterpolat1n)以及邊界方向插值法(Edge-directedInterpolat1n)中的何者,接著,使用選擇的方法計算此紅色像素位置上的綠色值。在步驟S330,類似地,針對每一個藍色像素,先選擇使用例如加權插值法以及邊界方向插值法中的何者,接著,使用選擇的方法計算此藍色像素位置上的綠色值。加權插值法及邊界方向插值法可概稱為插值法,用以依據每一個紅色像素或藍色像素及其多個周圍像素的像素值計算該位置上的綠色值。[0025]計算紅色或藍色像素位置上的綠色值的細節說明如下:首先,計算紅當前第1頁1 2 3 4