專利名稱:通過外推來對圖像場數據進行建模的技術的制作方法
技術領域:
本發明一般涉及處理視頻信號數據的技術,更具體地說,涉及處理視頻二進制數據以校正成像的光場上的變化,例如,補償由透鏡、傳感器靈敏度變化和相機中的外殼內部反射造成的黑斑(shading)效應等。
背景技術:
圖像黑斑是圖像場上的不均勻光響應。在光學系統中,其可以由出現在特定系統中的以下因素造成透鏡的特征、光線所投射到的光傳感器上的靈敏度變化、透鏡相對于所采用的光傳感器的圖像平面的不適當的對準、內部的相機反射和可能出現在特定系統中的其它可能因素。在僅考慮透鏡的情況下,簡單的用于對其上具有均勻光強度的景象取景的透鏡將典型地產生具有明顯不均勻的光強度的所述景象的圖像。這種光強度通常在圖像的中間最高,在圖像的邊緣下降大約百分之六十或更多。這樣的透鏡很明顯在不對這種效應進行校正的情況下不適合多數光學應用。可通過使用復雜的透鏡組合件來進行校正,所述透鏡組合件對景象成像,而不會在其上帶來強度變化。
電子相機將景象成像在諸如電荷耦合裝置(CCD)、互補硅上金屬(CMOS)裝置的二維傳感器或其它類型的光傳感器。這些裝置包括沿著小型的二維表面排列的大量光檢測器(典型地有兩百萬、三百萬、四百萬或更多),所述光檢測器各自產生與光的強度或照射在元件上的其它光輻射(包括與可見光波長臨近的光譜的紅外線區域和紫外線區域)成比例的信號。典型地以光柵圖來掃描形成圖像的像素的這些元件,以便當掃描所述元件時,產生照射一個接一個的傳感器元件的光輻射強度的連續的數據流。獲得彩色數據最通常的方法是通過使用對交替分布在傳感器上的每個不同彩色分量(諸如,紅、綠和藍)敏感的光檢測器來獲得。黑斑效應造成在光傳感器上光的非均勻分布,由此,來自所述傳感器的視頻信號包括疊加在其上的不期望的強度變化的數據,其中,所述黑斑效應由以下因素造成將對象景象成像在光傳感器上的透鏡、光傳感器對于照射它的各種光色彩的不均勻靈敏度、以及其它潛在因素。
相比于通過使用復雜和昂貴的透鏡以及昂貴的經過仔細挑選的光傳感器來消除透鏡的黑斑效應,建議可以按某種方式處理來自光傳感器的信號以補償這些效應。應用于來自每個光檢測器元件的信號的補償量取決于所述元件在圖像光傳感器的表面上的位置。
發明內容
本發明的電子信號處理技術允許補償透鏡黑斑和/或其它類似現象,諸如傳感器靈敏度變化和內部的相機反射,這些現象共同地將可被測量和量化的變化疊加在由多元件的二維光電傳感器檢測的光圖案上。特別地將這種強度黑斑補償技術應用于數字相機或其它類型的視頻設備,但是所述技術并不限于這樣的光學圖像系統應用。該技術可用低成本來實現,需要最小量的存儲器并以與從光電傳感器獲得正被修改的視頻數據相同的速度來操作,從而不會對視頻系統的性能產生不利的影響。這可以通過以下方式來實現將校正因子實時地應用到光傳感器的輸出信號,以便補償光傳感器上不期望的固定的強度變化。
在以上給出的對相關申請進行交叉引用的兩個專利申請中,通過以下的方式來補償圖像上的黑斑變化將這些變化表征為一個或多個諸如圓形、橢圓形或雙曲線的幾何形狀,然后存儲表征所述幾何形狀所必需的少量數據。在優選的形式中,將強度黑斑變化的數據根據每個像素距離不期望的強度圖案的光心的徑向位置來維護。選擇性地將這樣的“光心”稱為“重心”或“定位點”。通過主要涉及加法的算法來按順序計算每個像素的徑向位置,這是一種基于每個像素的徑向位置來計算用于每個像素的校正因子的又快又簡單的方法。
然而,在一些情況下,通過一個或少數幾個簡單的幾何形狀以期望的精度來代表強度黑斑圖案是非常困難或者不實際的。作為另一選擇,根據本發明,可將光傳感器的像素矩陣在邏輯上劃分為大量毗鄰的矩形塊的柵格,每個塊在一邊包含固定數量的像素。在校準期間,計算并存儲各個塊上的黑斑圖案的數據,典型地以光柵掃描圖來實時地在從光傳感器掃描圖像數據時,通過所存儲的數據來對各個像素計算校正因子。存儲所述塊的黑斑強度數據所必需的存儲器的容量與存儲用于光傳感器的每個像素的校正因子所必需的存儲器的容量相比要小得多。由此減小了相機或其它圖像獲取設備所必需的集成電路的大小并降低了所述集成電路的成本。而校正的程度以及作為結果所得到的獲取的圖像數據的質量仍保持得非常好。
通過對存儲的校準數據進行插值而根據減化的所述數據的集合計算各個像素強度調整值。根據特定的實現,對于垂直的X方向和Y方向兩者,存儲各個像素塊上的黑斑強度的改變率(斜率)。還存儲光傳感器的上端左手邊角落中的掃描開始像素的絕對強度。當掃描開始時,通過存儲的斜率值來計算第一個像素之后的像素的強度。優選的是通過以下處理來進行所述計算將強度增量(其取決于斜率而為正數或負數)加到緊靠在前面的像素的強度,其中,通過存儲的用于當前像素所在的矩形的斜率來確定所述增量。使用加法和減法來代替乘法或除法,這使得實現起來更加容易,特別是當由專用邏輯電路執行所述計算時。
在一示例中,通過以下處理來校準每個相機或其它光學系統將均勻強度的景象成像在光傳感器上,捕獲作為結果所得到的光傳感器上的強度變化的每個像素的數據,在邏輯上將像素陣列劃分為塊的柵格,然后計算每個塊上的強度的平均改變率。這些相對較少的強度斜率值、像素柵格的特性和每個掃描的幀的第一像素的絕對強度通過減少的數據量來表征光傳感器上的黑斑強度變化。通常期望獲取三組這樣的數據,對于圖像處理中利用的每個基色采用一組數據。
本發明的其它目的、優點和特點被包括在下面結合附圖進行的、對其示例性實施例的描述中。將這里參考的每個專利、專利申請、論文或出版物全部包括在這里以達到參考的目的。
圖1示意性示出可采用本發明的技術的電子視頻設備;圖2是圖1的設備的電子處理系統的一部分的框圖;圖3A、圖3B和圖3C示出由圖2的系統對三種不同類型的視頻數據進行的修改;圖4示出將光傳感器的像素在邏輯上組織為塊,所述塊用于以基于塊而存儲的強度黑斑校正因子來校準和使用圖1和圖2的相機;圖5是圖4的像素塊之一的示例;以及圖6示出在校準相機或感興趣的其它光學系統期間執行的計算之一。
具體實施例方式
由于先前討論的現象而造成的在圖像或其它期望的光圖案上疊加變化,從而導致在所述光圖案的每個像素中能量的變化。這些能量變化與拍攝的圖像或其它圖像數據本身不相關。為了補償光傳感器上能量的這種變化,例如,可通過乘法將每個像素值與黑斑校正度因子進行組合。根據圖像傳感器矩陣中每個像素的地理位置,所述因子對于每個像素而言是唯一的。在理想情況下,可在將圖像的每個像素所需的補償因子存儲在存儲器的校準過程期間創建因子表。通過以圖像拍攝設備中的處理單元執行下面的等式,可使得需要的黑斑補償能夠有效進行PixelOut=PixelIn*F(X,Y) (1)其中,PixelOut=圖像黑斑補償模塊的輸出;換言之,校正后的像素;PixelIn=圖像黑斑補償模塊的輸入。校正之前的像素;以及F(X,Y)=校正因子,其取決于以X和Y直角坐標來表示的像素的位置。
在存儲用于光電傳感器的每個像素的校正因子的情況下,在集成電路上實現由所述等式定義的處理成本很高。需要大型存儲器來存儲用于每個像素的校正因子,由此使用存儲器的大量硅區域。將各個存儲的校正因子與像素值作乘法還需要相當大量的硅區域,以便專用電路完成所述乘法,而且/或者,所述乘法會降低獲得校正后的數據的速度。因此,這里描述的技術采用所述處理的獨特近似,該近似需要非常小的存儲器和處理能力,但是仍可從圖像中消除不期望的光圖案。可將數據量減少的不期望的強度黑斑圖案(或反之,黑斑校正因子)存儲在一個或多個稀疏的二維查找表中。可將單獨的查找表用于每種彩色。
在本說明書中,在校準過程期間得到用于數碼相機、視頻拍攝設備或其它類型的數字成像設備的光學圖像系統(即,透鏡、圖像傳感器、和/或外殼)的黑斑校正因子。通過將均勻強度的景象成像在正校準的設備采用的光傳感器上來執行所述校準,校準處理中還用到所述設備的透鏡系統和外殼。記錄各個像素強度值,計算在光傳感器上柵格的各個矩形的斜率值并將其存儲在正校準的設備內的存儲器中。由于在校準過程期間使用了數字成像設備的全部光學圖像系統,所以這些技術除了校正單純由于透鏡黑斑引起的不均勻之外,還校正由圖像傳感器和/或它與入射圖像光線之間的相互作用造成的任何強度變化。
光學設備示例在相機或其它視頻獲取設備中描述本發明的技術的實現,其中,迅速對圖像或其它拍攝的光圖案的數字數據進行修改,以補償由相機的光學系統、光電傳感器和來自內部的相機表面的反射在圖像上疊加的強度修改(黑斑?)。在圖1中,示意性示出這種相機,其包括外殼11、成像光學系統13、產生控制信號17的用戶控制器15、與內部電接線21相連的輸入-輸出接收器19、與內部電接線25連接的卡槽23、可抽取地插入卡槽23的非易失性存儲卡27。可將由相機拍攝的圖像的數據存儲在存儲卡27或內部非易失性存儲器(未示出)中。還可通過接收器19將圖像數據輸出到另一視頻設備。存儲卡27可以是商業上可用的半導體閃速電擦寫可編程只讀存儲器(EEPROM),小型可抽取式旋轉磁盤或其它非易失性存儲器,可由相機將視頻數據編程到所述存儲器。或者,特別是當相機在拍攝每秒三十圖像幀的電影等時,可使用諸如磁帶或可寫光盤的更大容量的存儲介質作為替代。
光學系統13可以是如圖所示的單個透鏡,但其通常是一組透鏡。在圖像傳感器35的二維表面上,以通過快門33的可見光輻射來形成景象31的圖像29。傳感器的電輸出37攜帶由掃描圖像29投射到的傳感器35的表面的各個光檢測器而產生的模擬信號。傳感器35典型地包含大量單個的光檢測器,按照行和列的二維陣列排列所述光檢測器以便檢測圖像29的各個像素。按時間順序在輸出37中獲得與照射各個光檢測器的光強度成比例的信號,典型地通過以光柵圖掃描所述光檢測器來獲得所述信號,在上述處理中,從頂端的行開始,從左到右每次掃描光檢測器的一行,以產生可重建圖像29的一幀視頻數據。將模擬信號37應用到模擬到數字轉換器電路芯片39,其產生圖像29在電路41中的數字數據。典型地,電路41中的信號是數字數據的各個塊的序列,所述數字數據代表照射傳感器35的各個光檢測器的光強度。
在該實施例中,通過單個的集成電路芯片43來提供對電路41中的視頻數據的處理以及對相機操作的控制。除了將電路芯片43連接到電路17、21、25和41之外,還將電路芯片43連接到控制和狀態線路45。又將線路45依次連接到快門33、傳感器29、模擬到數字轉換器39和相機的其它部件,以便提供對它們的同步操作。還將單獨的易失性隨機存取存儲器電路芯片47連接到處理器芯片43,以臨時存儲數據。此外,將單獨的非易失性可重新編程的存儲器芯片49連接到處理器芯片43,以存儲處理器程序、校準數據等。在相機內提供普通的時鐘電路51以將時鐘信號提供給所述電路芯片和其它部件。相比于時鐘電路作為單獨的部件,還可以將其包括在處理器芯片43中。
在圖2中示出處理器芯片43的功能框圖。數字信號處理器(DSP)55是關鍵部件,其控制芯片43以及相機的其它部件的操作。但是如下所述,由于DSP 55不會大量地處理視頻數據,所以其可以是相對簡單和便宜的處理器。存儲器管理單元57將DSP 55連接到外部存儲器芯片47和49,并且連接到輸出接口電路59,所述輸出接口電路59分別通過電路21連接到輸入輸出連接器19和通過電路25連接到卡槽23(圖1)。
現在,將概括地描述視頻數據從模擬-數字轉換器39(圖1)開始通過圖2的框圖的流程。在塊61中對線路41中的輸入數據進行預處理,隨后將其作為一路輸入提供給乘法器電路63。乘法器63的另一路輸入65攜帶修改輸入的視頻數據的數據,修改后的視頻數據出現在乘法器63的輸出67。在該示例中,線路65中的修改數據對由相機元件在圖像上帶來的透鏡黑斑和強度變化的效應進行校正。在又一個圖像處理器69中適當地對視頻數據進行處理之后,通過存儲器管理單元57將視頻數據送至輸出接口電路59,隨后或者通過線路21將視頻數據送至相機的輸入-輸出接收器19,或者通過線路25將視頻數據送至相機的卡槽23(圖1),或者兩者都進行,以便顯示和/或存儲。
通過專用處理電路71的塊來產生線路65中的校正數據。塊71包括電路73,所述電路73提供當前正從中獲取視頻數據的每個圖像像素的(X,Y)位置。隨后由計算電路75使用所述像素位置來產生應用于乘法器63的修改因子。存儲器77存儲查找表。為了減小存儲器77的大小,僅將少量的校正數據存儲在查找表中,電路75通過這些數據來計算各個像素的校正值。寄存器集合79存儲由計算電路73和75兩者使用的參數和中間結果。
計算電路73和75獨立于DSP 55而進行操作。可以將DSP作為替代來用于進行這些計算,但是這需要極其快速的處理器,即使可以提供足夠的速度,這也將很昂貴并且占用芯片43上相當大的空間。電路73和75在沒有DSP 55的參與的情況下專用于執行需要的重復計算,它們在結構上非常簡單,占用芯片43上很小的空間,并且釋放DSP 55使其執行其它功能。
存儲器或存儲器組77和79存儲圖像修改數據和參數,所述存儲器優選的是易失性隨機存取類型,以便與其它處理器電路兼容存取速度和處理,從而可將所述處理器包括在單個的成本效率合算的芯片上。在制造每個相機的最后階段為每個相機一次性產生圖像修改數據和參數,之后,將這些修改數據和參數永久地存儲在非易失性存儲器49中。隨后,在DSP 55通過控制和狀態線路83進行的控制下,每次初始化系統時,就將這些數據通過線路81加載到存儲器77和存儲器79中。
參照圖3A,解釋圖2的系統的操作的一方面,其中,傳感器35(圖1)包括每個圖像像素的單個光檢測器。傳感器的數字化輸出41包括來自一行中傳感器35的相鄰光檢測器的連續數據塊87、89、91等。每個數據塊包含10、12或更多比特,這些比特對正由單個光檢測器元件感測的圖像29的一個像素進行量化,所述數據塊以系統時鐘51通過控制計數器85(圖2)控制的速度出現在電路41中。例如,數據塊87、89、91等中的一個可以在每個時鐘信號周期期間出現。
由修改處理電路71(圖2)以相同的速度與圖像數據87、89、91等同步地產生數據塊93、95、97等。即,產生修改數據93以使其在與圖像數據87相同的時間出現在乘法器63,其它數據塊依此類推。由于已知光檢測器的掃描圖案,所以計算電路73按照與從傳感器35的表面上的光檢測器讀取圖像數據相同的順序和相同的速度產生所述光檢測器的位置半徑。隨后,將對于特定圖像像素產生的修改因子數據與所述像素的強度數據進行組合。將圖像數據87和對于相同像素產生的修改數據93在乘法器63中進行組合,其結果產生修改后的數據98。以類似的方式通過數據89和95、91和97的組合分別獲得修改后的數據塊99和100。
通常的視頻系統處理圖像的多個區別彩色分量的每一個的數據。典型的商用傳感器沿著行將光傳感器交替間隔,所述行覆蓋有紅、綠和藍濾光器。商業上使用的感色光傳感器有幾種不同的排列方式。在上述一種排列中,一行包含交替的感紅和感綠光檢測器,而下一行包含交替的感藍和感綠光檢測器,也沿著行放置所述光檢測器,以便提供以列交替的彩色靈敏度。其它標準的排列使用兩個交替彩色的其它組合。如圖3B所示,一種這樣的傳感器的線路41中的輸出包括連續的紅、綠和藍數據段。塊101、103、105等代表交替的感紅光檢測器和感綠光檢測器的分離的數據,在每個連續的時鐘周期期間輸出一個塊。
如果對于所有正檢測的離散彩色只有一組校正數據,則在不考慮彩色的情況下通過該組數據產生用于每個圖像像素的圖像修改數據。該處理對于以下這種情況是適當的正通過信號修改去除的圖像上的變化在相同或幾乎相同的程度上影響所有彩色。然而,在變化較大程度上依賴于彩色的情況下,將單獨的校正因子用于每個彩色分量。圖3B示出使用依賴于彩色的修改,其中,將連續的修改因子113、115、117等與每個連續的圖像數據塊101、103、105等進行組合。其結果是修改后的數據塊120、122、124等。從紅校正數據中提取修改因子113、117、121等,而修改因子115、119、123等來自綠校正數據。
一種特定類型的商業上可用的光檢測器在每個光點或像素上堆棧多個光檢測器。頂端的檢測器使紅色和綠色通過,而濾出所述檢測器對其敏感的彩色,例如,藍。緊接在該頂端的檢測器下面的檢測器使綠色(和藍色?)通過并濾出所述檢測器對其敏感的彩色,所述敏感的彩色在這個示例中是紅。隨后,底端的檢測器對綠色敏感。圖3C示出具有這種類型的傳感器的圖2系統的操作。輸出數據塊125、127、129、131等,其中三個用于一個像素的三種彩色,另外三個用于下一相鄰的像素,依次類推。如果對于所有彩色只保存一組校正數據,則將相同的修改因子與來自每個光點的三個數據塊進行組合,例如,修改因子133用于產生彩色數據塊125、127和129的點。如果對于每個彩色保存單獨的校正數據,則修改因子可以是不同的,但是對于圖像傳感器上的單個徑向位置,要計算全部三種彩色。當在乘法器63中進行組合時,產生連續的修改后的數據塊137、138、139等。
還可通過這里描述的技術對其它類型的彩色系統進行校正。例如,僅使用兩個彩色分量的商用彩色系統。此外,還有四彩色系統,其中,將具有較寬光譜范圍的單獨的檢測器用于獲取“黑和白”信息。
黑斑校正處理在本發明的二維表面外推方法中,保存黑斑校正因子的二維子集。這些校正因子用于對用于二維圖像平面中所有像素的大部分的黑斑校正因子的數據進行插值。
圖4和圖5提供用于下述討論的框架。在圖4中示意性示出光電傳感器,其中,將大量的像素在邏輯上劃分為以虛線的輪廓線顯示的柵格圖案的矩形。對于顯示的總共15,360,000個像素,描述一個特定的示例,其中,每行4800個水平像素,有3200個垂直行。所述柵格圖案水平方向上包括16個塊,垂直方向上包括8個塊。圖5以擴充視圖示出圖4的柵格圖案的矩形之一。在該特定示例中的每個塊在水平方向上包含300個像素,在垂直方向上包含400行像素。當然,在圖4和圖5中示出的柵格圖案中顯示的矩形的形狀和數量以及像素的數量并不受限于為了示出特定示例而選擇的數量。
一種在不必存儲用于陣列的所有像素的這種因子的情況下,確定用于各個像素的校正因子的方法是存儲用于每個塊中少數代表性像素的所述因子,隨后通過插值、線性變化或其它方式來計算用于其它各個像素的校正。即,使圖4和圖5的柵格圖案的塊的大小足夠小,從而可通過各個塊中少數存儲的值來預測所述塊上的黑斑圖案的強度變化。對于每個像素位置,可根據下式從所述存儲的子集外推出校正因子PixelOut=PixelIn*F[(X,Y)位置,存儲的校正值的子集] (2)其中,PixelOut=圖像黑斑處理模塊71的輸出;換言之,校正后的像素;PixelIn=圖像黑斑處理模塊71的輸入;換言之,校正之前的像素;以及F[...]=校正因子,其作為像素位置(X,Y)和存儲在存儲器77中的黑斑校正值的子集的函數,用于被校正的像素所位于的塊中的一些像素。
在這種情況下,將校正因子外推公式實現為二維外推,其響應于當前位置上感興趣的像素和由存儲在有限的校正因子表中的黑斑校正因子代表的臨近像素之間的幾何距離。可將分別用于圖5的角落像素A、B、C、D的校正因子的值GainA、GainB、GainC、GainD存儲在存儲器中。像素P是位于點A、B、C和D之間的塊內的感興趣的像素,那么,可將在像素P的圖像強度的校正后的值外推為點P處校正后的PixelOut=(點P處未校正的PixelIn)*Gainp(3)其中,GainP是點P處的黑斑校正因子,可以表示為GainP=[GainA*(Distance(A,P)/Distance(A,C))+GainB*(Distance(B,P)/Distance(B,D))+GainC*(Distance(C,P)/Distance(A,C))+GainD*(Distance(D,P)/Distance(B,D))](4)其中,Distance(A,P),Distance(B,P),Distance(C,P)和Distance(D,P)分別是像素A、B、C、D和感興趣的像素P之間的幾何距離,Distance(A,C)和Distance(B,D)分別是角落像素A和C,以及角落像素B和D之間的幾何距離。以若干像素為單位用最便利的方式測量所述距離。
然而,以集成電路的形式實現這一處理的成本較高,這是因為需要大量的乘法運算并且需要將大量的黑斑校正因子增益包括在集成電路中,其中,黑斑校正因子的數量直接與光傳感器中像素的數量成比例。必須存儲用于圖4的矩形的每個角落像素的校正因子。但是,通過將相鄰塊的角落點的黑斑校正因子增益之間的改變存儲在表中,而不是存儲增益本身的絕對值,并且通過采用加法器連同一組寄存器來存儲中間計算數據,需要的乘法數量會顯著減少,由此大大降低集成電路實現的成本。
使用校正因子增益改變或斜率,而不是使用黑斑校正因子本身的處理方法源于以下這種實際情況例如,在數碼相機中,透鏡或光傳感器的不均勻光感應可造成圖像的強度在水平和垂直兩個方向上改變,以致強度在水平行或垂直列的開端要低于在所述行或列的中央,并且中央的強度再次高于在所述行或列的末端的強度。為了在拍攝景象的時候以均勻的亮度來拍攝、存儲和顯示圖像,在校準的時間存儲光傳感器上的亮度的改變,隨后將這些測量用于補償所述改變。
對特定示例來說,將接收將被校正的圖像或其它光圖案的光傳感器的區域在邏輯上劃分為圖4所示的塊的數量。這在圖像的塊之間以及圖像的邊緣四周總共提供了16條水平邊界和8條垂直邊界。可使用更為粗略或更為精細的圖像劃分。選定的塊的范圍應該與光傳感器的接口計數器支持的最大像素分辨率一致。不論將圖像的哪一部分送入視頻信號處理單元43(圖1)中進行處理,塊邊界均擴展到遍及光傳感器的整個光圖像大小。
在校準時間,通過相機或其它光學設備的光學系統將其上均勻強度的光場投到光傳感器上。通過計算每個塊中黑斑強度的dX斜率、dY斜率和二階偏斜率dXY來在光傳感器輸出端測量在校準光分布上的亮度改變。因此,塊的dX斜率代表光強度沿著所述塊的頂端像素行的改變,dXY斜率代表在從塊的頂端像素行到底端像素行的各相繼行之間的dX斜率的改變。例如,由塊的dX斜率和i*dXY斜率的和來代表塊的行i的亮度改變。dY代表組成圖像的第一列的各相繼的塊之間在垂直方向上的亮度改變。通過這些測量來形成三個斜率表,并將它們包括在數字圖像拍攝設備中并用于圖像黑斑校正。所述表是1)HGST(水平增益斜率表)-X方向改變(dX)斜率表,其在該特定示例中具有128個條目(16×8),一個條目用于圖4的每個塊,每個條目具有22比特(1比特表示符號,21比特表示分數)。
2)VGST1(垂直增益斜率表1)-Y方向改變(dY)斜率表,其具有8個條目,一個條目用于圖4的塊的每一行,每個條目為22比特寬(1比特表示符號,21比特表示分數)。
3)VGST2(垂直增益斜率表2)-X方向改變的二次偏導數(dXY)斜率表,其具有128個條目,每個條目是17比特寬(1個符號比特,16個分數比特)。
表HGST對于圖像中的每個塊指定塊中每個像素的增益的斜率(HGS)。換言之,其指定沿著圖5所示的塊內的水平掃描行的像素x的增益和下一像素x+1的增益之間的微分。更具體地說,沿著點A和B之間的水平行的每像素增益的增加的微分(斜率)HGSAB是HGSAB=(GainB-GainA)/DAB(5)數量HGSCD是沿著諸如圖5所示的塊的點C和D之間的水平行的斜率HGSCD=(GainC-GainD)/DCD(6)其中,DAB是若干像素中測量的點A和B之間的距離,DCD是圖5的點C和D之間的距離。在特定示例中,所述數量是在相機的運行期間存儲在存儲器77(圖2)中的HGST表的一部分,將所述數量中的每一個表示為22比特寬的二進制數(1個符號比特,21個分數比特)。
表VGST1對于圖4的塊的每一行包含一個條目。對于每個在一行塊中的第一個塊,該條目指定所述第一個塊中的所有像素的增益的垂直斜率。換言之,其指定與塊的左邊緣相鄰的相同列中像素(0,Y)的增益到相鄰像素(0,Y+1)的增益之間的微分。可將每像素增益的增加的微分(斜率)VGSAC表示為VGS1=(GainC-GainA)/DAC(7)其中,DAC是作為若干像素測量的角落像素A和C之間的距離。在這個示例中,表中的每個條目是22比特寬的二進制數(1個符號比特,21個分數比特)。
表VGST2對于組成圖像的每個塊包含一個條目。多于每個塊,所述條目指定所述塊中每行的HGS的垂直斜率(也就是二階導數)。換言之,其指定行y中第一像素的HGS和按順序的下一行y+1中第一像素的HGS之間的微分。可將每像素增益的增加的微分(斜率)VGSAC表示為VGS2=(HGSCD-HGSAB)/DAC(8)在該示例中,表中的每個條目是17比特寬的二進制數(1個符號比特,16個分數比特)。
校準過程還提供包括在數字圖像拍攝設備中的“基本增益”。基本增益是圖像的第一個塊的增益,將基本增益作為如圖4所示的圖像的頂端左邊的像素(X0,Y0)的增益因子,用于圖像黑斑校正處理。在該示例中,將所述增益表示為26比特寬的二進制數(2個整數比特,24個分數比特)。
參考像素(X0,Y0)的基本增益和存儲在表HGST和VGST中的條目提供計算顯示的每個像素的校正因子的增益所必需的所有數據,將所述增益與從每個像素讀取的輸出值進行組合。另外的表VGST2提供使得所述計算和組合處理更快執行的數據。
在對于下面的表A描述的以下步驟的詳細描述中,使用下面的術語以及上面定義的術語逐行圖像格式在逐行圖像格式中,將圖像作為單個幀來對其進行處理。換言之,按照順序的次序作用于圖像的行。首先處理并顯示圖像的行1,其后接著圖像的行2,再接著圖像的行3等等。
隔行圖像格式在隔行圖像格式中,將圖像劃分為兩場場1包含偶數行(0,2,...)場2包含奇數行。當處理或顯示隔行圖像時,首先處理或顯示圖像的行1,3,5,7等,接著是圖像的行2、4、6、8。盡管在整個討論中將2場的隔行格式用作示例,但是本發明對于劃分為3、4、5或更多分離的場的圖像也是有效果的。
Reg[]16個寄存器的陣列,其累積(VGST2)*(當前感興趣的像素所位于的塊中的行號)。每個寄存器是26比特寬的二進制數(1個符號比特,1比特表示整數,24比特表示分數)。
CurrentVGS,CurrentHGS應用于當前塊的VGS和HGS,所述當前塊是感興趣的像素所在的塊。例如,如果像素在第(i,j)個塊中,則CurrentVGS2=VGST2(i,j)且CurrentHGS=HGST(i,j)。
CurrentVSize當前塊的垂直大小(取自塊邊界LUT)。
CurrentLine距離當前塊的開端的垂直偏移。
CurrentGain所述增益用于與當前像素的強度值相乘以便起到像素黑斑校正的作用。在該示例中,CurrentGain是26比特的二進制數(2比特表示整數,24比特表示分數)。
LineStart Register存儲行開端處的增益。在該示例中,LineStart是26比特的二進制數(2比特表示整數,24比特表示分數)。
AddH Register每當在正校正的圖像中將感興趣的像素向右移動一個像素時,將存儲在AddH register中的內容與CurrentGain相加。在該示例中,AddH的內容是26比特的二進制數(1比特表示符號,1比特表示整數,24比特表示分數)。
Tmp Register對CurrentGain值進行歸一化并將其存儲在Tmpregister中,隨后用Tmp register中歸一化的CurrentGain值去乘當前像素的強度值,即,未校正的PixelIn,以便起到黑斑校正的作用并產生校正后的PixelOut。在該示例中,Tmp是10比特的二進制數(2比特表示整數,8比特表示分數)。
對每個像素進行的校正計算響應于像素在作為整體的圖像中的的特定位置,所述像素在圖像的特定塊中,并且在圖像的已定義的行中。表A將作用于每個塊中的每個像素的黑斑校正描述為像素位置和圖像格式的函數。作為示例性實現,假設使用以集成電路的形式實現的數字信號處理引擎。
表A-黑斑校正方法步驟
黑斑補償校準由正校準的相機拍攝來自其上是均勻強度的均勻光照全白圖像的圖像數據,而略過對這一相機的黑斑校正階段。在特定示例中,由8個垂直塊將校準圖像劃分為16個水平塊。在相機的生產期間,由校準測試操作員通過使用在相機系統的控制器或視頻信號處理器上執行的程序,來對總共16個水平塊邊界和8個垂直塊邊界進行編程。選擇塊的數量,并由此選定塊數量的范圍,以匹配由相機光傳感器接口計數器支持的最大像素分辨率。對于今天普遍使用的光電傳感器,最大的塊大小將是300×400(水平×垂直)個像素,最小的塊大小將是30×30個像素。因此,塊中的每一個通常在每個水平行中具有30-300個像素,在垂直方向上具有30-400像素(行)。
首先計算平均亮度,將這一處理分配到每個校正的圖像塊的最頂端左邊的角落像素。由圖6的填滿的單元指示的像素用作所述平均亮度計算的“感興趣的像素”。通過使用臨近所述感興趣的像素的像素來計算平均亮度。如先前參照圖3A到圖3C所討論的,包括在該校準過程中使用的數碼相機光傳感器在內的大部分數碼相機光傳感器,采用兩種類型的光傳感器行。第一種是感應彩色RGRGRG(R=紅(Red),G=綠(Green),B=藍(Blue))的光傳感器元件的行,第二種是感應彩色GBGBGB的光傳感器元件的行。在圖6中通過邊框進行界定來示出第一種類型,第二種類型在圖6中表示為沒有邊框。為了計算圖像的給定像素的平均亮度,因此有必要從同樣組成的光傳感器行中的臨近像素讀取強度數據并對其進行平均。這就是說將由邊框界定的行中的像素與其它也是由邊框界定的行中的相應像素進行平均,沒有由邊框界定的像素與其它也沒有由邊框節點的行中的相應像素進行平均。具體說來,這要求將圖6中包含所述感興趣的像素并由邊框界定的行中的像素基于相應的逐像素,與在所述行之上和之下的也由邊框界定的行進行平均。優選的是將每行的每個像素進行平均。這一處理很重要,因為在平均亮度計算中,保證充分地表示出每行中的綠色分量是必要的。還應注意當必須對其計算平均亮度的像素是圖像的邊緣像素時,對較少的像素進行平均。因此,如果所述像素在圖像的左邊緣,則僅將右邊的相鄰像素計入平均處理中。
盡管下面對于“斜率計算”的討論和先前對于“平均亮度”的討論沒有特別要求對于每個基色使用單獨的平均亮度計算和單獨的塊斜率計算,但是可以以上述方式來實現所述實施例。
在作為示例的數碼相機中,透鏡或光傳感器的不均勻光感應可造成圖像以圖像中央處與其角落處不同的光強度進行存儲和顯示。這種強度通常在水平和垂直方向中均發生改變,以致強度在水平行或垂直列的開端低于在所述行或列的中央,并且中央的強度再次高于在所述行或列的末端的強度。為了在拍攝景象的時候以均勻的強度來拍攝、存儲和顯示圖像,在校準的時間測量強度的這些改變,隨后將這些測量用于補償所述改變。
在采用的校準過程中,通過計算每個塊中的dX斜率、dY斜率和二次偏斜率dXY來測量強度改變。因此,塊的dX斜率代表光強度沿著所述塊的像素頂端行的改變,dXY斜率代表在從塊的像素頂端行到像素底端行的各相繼行之間的dX斜率的改變。例如,由塊的dX斜率和i*dXY斜率的和來代表塊的行i的強度改變。dY斜率代表組成圖像的第一列的各相繼的塊之間在垂直方向上的強度改變。
通過以下處理來對于每個塊計算斜率dX、dY和dXY首先找到圖像的最大平均強度的圖像塊,用感興趣的圖像塊的平均強度去除所述平均最大強度值。得到的比率稱為“增益”。
計算dX、dY和dXY斜率的算法產生三個斜率表1)HGST(水平增益斜率表)-dX斜率表,其具有128個條目(16×8),每個條目具有22比特(1比特表示符號,21比特表示分數)。
2)VGST2(垂直增益斜率表)-dXY斜率表,其具有128個條目,每個條目是17比特寬(1個符號比特,16個分數比特)。
3)VGST1(垂直增益斜率表)-dY斜率表,其具有8個條目,每個條目為22比特寬(1比特表示符號,21比特表示分數)。
該算法還提供“基本增益”。基本增益是圖像的第一個塊的增益,將基本增益隨后作為圖像的頂端左邊的像素(X0,Y0)的增益因子,用于圖像校正處理。以26比特的條目(2比特表示整數,24比特表示分數)來給出所述增益。
可更加詳細地描述所述校準算法,如下1)首先找到最大平均亮度(在計算出每塊的平均亮度之后);2)使用最大平均亮度來計算基本增益;3)對于圖像的每個塊,計算出dX、dY和dXY斜率。以下面的方式來計算所述斜率第一行的第一塊
a)將dX斜率計算為(GainB-Basic_gain)/DABb)將dY斜率計算為(GainC-Basic_gain)/DAC對于這兩個斜率,Basic_gain值為GainA(見圖5)行i的第一塊a)將dX的斜率計算為(GainB-Basic_gain(i))/DABb)將dY的斜率計算為(GainC-Basic_gain(i)/DAC對于這兩個斜率,Basic_gain(i)計算為(Basic_gain(i-1))+dY(i-1)*Height(i-1))行i的塊ja)將dX斜率計算為(GainB-Basic_gain(j))/DAB,在這里,將Basic_gain(j)計算為(Basic_gain(j-1))+dX(j-1)*Width(j-1))對于行i的每個塊j,我們通過(dX(i+1)-dX(i))/DAC來計算它的dXY斜率。
4)在制造過程中,將產生的斜率表和基本增益存儲在數碼相機的非易失性存儲器,例如,圖1和圖2的49中,隨后按照先前所討論的那樣將它們用于對黑斑非均勻性進行補償。
結論盡管已參照特定實施例描述了本發明,但是應當理解,本發明享有在權利要求的全部范圍內進行保護的權利。
權利要求
1.一種對于從感光像素的二維陣列獲得的數據補償疊加在感興趣的光圖案上的黑斑強度圖案的方法,包括將以下內容存儲在存儲器中所述陣列的至少一個像素的黑斑強度圖案的至少一個基值,以及黑斑強度圖案在行和列兩者中在陣列上的像素之間的改變增量;根據所述至少一個基值和所述增量來計算用于各個像素的補償因子;以及將計算出的補償因子與從陣列的所述各個像素獲得的數據進行組合,由此對從所述像素獲得的數據校正黑斑強度圖案。
2.如權利要求1所述的方法,其中,將所述像素的陣列按照其行和列兩者劃分為具有多個像素的相鄰塊,用于各個塊的、存儲在存儲器中的改變增量包括黑斑強度圖案在行方向上沿著各個像素的第一改變率、以及黑斑強度圖案在列方向上沿著各個像素的第二改變率。
3.如權利要求2所述的方法,其中,用于各個塊的、存儲在存儲器中的改變增量還包括黑斑強度圖案在行方向上沿著各個像素的改變率的二階導數。
4.如權利要求1所述的方法,其中,以至少與從所述像素的陣列獲得數據同樣快的速度對各個像素執行計算和組合。
5.如權利要求1所述的方法,其中,黑斑強度圖案包括由將光場成像在傳感器上的光學系統所引入的強度變化、由感光像素陣列本身所引入的強度變化、或者由離開容納光學系統和陣列的外殼的內部表面的光反射所引入的強度變化。
6.如權利要求1所述的方法,其中,存儲至少一個基值和改變增量的步驟包括維護多組用于感光像素的陣列的黑斑強度圖案值,其中對于多個彩色分量中的每一個分量維護一組數據。
7.如權利要求1所述的方法,其中,存儲、計算和組合功能全部在單個集成電路芯片上完成。
8.如權利要求1所述的方法,其中,存儲、計算和組合功能全部由專用于實現這些功能的電子電路來執行。
9.一種對于來自光傳感器的數字視頻信號校正通過光學系統投到所述光傳感器上的光場上的強度黑斑變化的方法,所述圖像傳感器具有單獨光檢測器的二維陣列,當以光柵圖案掃描光檢測器時,所述陣列產生視頻信號,該方法包括維護用于光場的至少兩個彩色分量中的每一個的圖像校正數據,所述校正數據包括各個像素校正值在光檢測器陣列的塊上的斜率,根據校正數據斜率來計算各個像素強度校正值,以及將各個像素強度校正值與相應光檢測器的圖像傳感器視頻信號進行組合,由此來校正數字視頻信號。
10.一種包含能夠接收和處理各個光檢測器的數據流的電路的集成電路芯片,其中,通過根據預定的圖案線性掃描二維光學圖像來獲得所述數據流,該芯片包括所述電路的第一部分,其在二維光學圖像的線性掃描過程中,通過將存儲的增量值加到為在前面的光檢測器所確定的校正數據上,來與掃描所述光學圖像同步地確定掃描的光學圖像的校正值,以及所述電路的第二部分,其接收輸入數據和校正值,以輸出各個光檢測器的修改后的數據流。
11.一種視頻成像設備,包括具有檢測器的二維陣列的光學傳感器,其中,以光柵圖案掃描所述檢測器以便輸出代表檢測器上的光輻射強度的連續數據流,相對于所述傳感器固定的光學系統,用于將光輻射場投到所述傳感器上,存儲器,用于存儲至少用于光學傳感器和光學系統的強度校正函數,將所述校正函數定義為在陣列的行和列兩者中的檢測器中的相繼檢測器的值之間的改變,通過由設備的光學系統對其上具有均勻強度的光場進行取景,借助于光學傳感器來測量所述校正函數,專用校正確定電路,其從所述存儲器讀取所述檢測器中的相繼檢測器的值之間的改變值,并通過這些值計算用于對來自各個像素的連續數據流進行的強度校正量,以及組合電路,其用所確定的強度校正量對從光學傳感器輸出的連續數據流進行修改,由此對于所述連續數據流校正成像的光場上的強度變化。
12.如權利要求11所述的成像設備,其中,所述傳感器輸出連續數據流,所述數據流代表照射在所述傳感器上的光輻射的多個單獨的彩色分量的強度,并且存儲器存儲用于所述多個彩色分量中的每一個的校正數據。
13.一種對于從感光像素的二維陣列獲得的數據補償疊加在感興趣的光圖案上的黑斑強度圖案的方法,其包括將以下內容存儲在存儲器中所述陣列的至少一個像素的黑斑強度圖案的至少一個基值,黑斑強度圖案在行和列兩者中在陣列上的像素之間的改變增量,以及黑斑強度圖案在至少垂直方向上沿著陣列上的各個像素的改變增量的二階導數;根據所述至少一個基值、所述增量和所述二階導數來計算用于各個像素的補償因子;以及將計算出的補償因子與從陣列的所述各個像素獲得的數據進行組合,由此對從所述像素獲得的數據校正黑斑強度圖案。
14.如權利要求13所述的方法,其中,將所述像素的陣列按照其行和列兩者劃分為具有多個像素的相鄰塊,以及用于各個塊的、存儲在存儲器中的改變增量包括黑斑強度圖案在行方向上沿著各個像素的第一改變率、以及黑斑強度圖案在列方向上沿著各個像素的第二改變率。
15.如權利要求13所述的方法,其中,以至少與從所述像素的陣列獲得數據同樣快的速度對各個像素執行計算和組合。
16.如權利要求13所述的方法,其中,黑斑強度圖案包括由以下因素中的任何一個或多個所引入的強度變化將光場成像在傳感器上的光學系統、感光像素陣列本身、離開容納光學系統和陣列的外殼的內部表面的光反射。
17.如權利要求13所述的方法,其中,存儲至少一個基值、改變增量和二階導數的步驟包括維護多組用于感光像素的陣列的黑斑強度圖案值,對于多個彩色分量中的每一個分量維護一組數據。
18.如權利要求13所述的方法,其中,存儲、計算和組合功能全部在單個集成電路芯片上完成。
19.如權利要求18所述的方法,其中,存儲、計算和組合功能全部由專用于實現這些功能的電子電路來執行。
全文摘要
提供可在數碼相機、視頻圖像捕獲設備和其它光學系統中實現的用于修改圖像的數據的技術,以校正出現在來自二維光傳感器的數據中的圖像黑斑變化。例如,會由于有缺點的透鏡、光傳感器上的不均勻靈敏度和光學系統的外殼之內的內部反射造成這些變化。為了校正所述變化,將包括基值和黑斑強度的斜率的少量修改數據存儲在相機或其它光學系統之內的存儲器中,優選的是,對于每個基色存儲單獨的校正數據。通過以下處理迅速地對來自各個像素的圖像數據進行校正以與獲取圖像數據相同的速度對來自存儲的修改數據的各個像素校正量進行插值,從而可在不降低從圖像傳感器傳遞圖像數據的速度的情況下進行校正。
文檔編號H04N5/217GK1914580SQ200580003885
公開日2007年2月14日 申請日期2005年1月11日 優先權日2004年2月2日
發明者維克特·平托, 艾萊茲·加里爾 申請人:卓然公司