Camera硬體基本組成:
BLC(黑電平校正-black level Correction)
1.產生原因
因為sensor電路本身存在暗電流,導致在沒有光線照射的時候像素單位也會有一定的輸出電壓,BLC易受到Again和溫度的影響,電路的增益增大,暗電流也會增強。
2.校正原理
在Sensor上預留一些沒有曝光的像素,通過讀其像素值的大小得到OB(Optical Black Level)此時sensor輸出的RAW=input-ob,考慮到信噪比一般還會進行基底矯正(pedestal),此時sensor輸出的RAW=input-ob-pedestal。
3.校正步驟
(1)全黑採集RAW圖,分為R、Gr、Gb、B 四個通道;
(2)對四個通道求平均值(或中值)作為校正值;
(3)對圖像的每個通道都減去這個校正值。
4.影響範圍
色彩:偏色,RGB分量、對比度、破壞噪聲形態降低信噪比。
註:當Blc扣除過多時,會導致整體畫面亮度過低,動態範圍變低,細節損失多,黑色部分偏色無法通過白平衡糾正,畫面偏綠。當BLC扣除過少時,扣除的黑電平值不足以抵消紅色通道的信號,導致紅色部分的亮度過高,從而使整個圖像偏紅。
LSC(鏡頭陰影抑制-Lens Shading Correction)
1.產生原因
由於鏡頭的光學特性會導致sensor的影像邊緣區域接收到的光強比中心小,造成中心和四角亮度不一致的現象,並且鏡頭本身是一個凸透鏡,由於凸透鏡的原理,中心的感光必然比周邊多。需要根據像素的位置做增益補償。
Luma shading:會造成圖像邊角偏暗
color shading:中心和四周顏色不一致,偏色
2.校正方法
網格法:把整幅圖像分成m*n個網格,然後針對網格頂點求出校正的增益,然後把這些頂點的增益儲存到內存中,其它點的增益通過插值的方式求出 。
AWB(自動白平衡-Automatic White Balance)
1.基本原理
白平衡就是:不管在任何光源下,都能將拍攝的白色物體的圖像還原為白色,人眼在早晨、中午、晚上 不同色溫下都能準確看到白色。 CMOS 要獲得這種能力,必須對每種光源做相應的色彩校準,才能完成人眼一樣的功能。這個功能叫做白平衡。
2.校準原理
人眼中的白色總是R=G=B,那麼白平衡所做的事情就是在不同色溫條件下將圖像做歸一化,也就是如下將Sensor響應的RGB分別乘上一個係數,使得物體在不同光源條件下所呈現出來的顏色,恢復到物體的固有色。
R'=R×R_Gain,
G'=G×G_Gain,
B'=B×B_Gain,
使得R'=G'=B'。
3.算法原理
(1)灰世界算法
原理:灰度世界算法以灰度世界假設為基礎,該假設認為:對於一幅有著大量色彩變化的圖像,其R,G,B 三個色彩分量的平均值趨於同一灰度值 K。 從物理意義上講,灰色世界法假設自然界景物對於光線的平均反射的均值在總體上是個定值,這個定值近似地為“灰色”。 顏色平衡算法將這一假設強制應用於待處理圖像,可以從圖像中消除環境光的影響,獲得原始圖像。
步驟:
1.確定K值.一般有2種方法確定K值,
1).K取固定值,如最亮灰度值的一般,針對0-255圖像,可以取128
2).計算圖像R,G,B三個通道的平均值 R ˉ , G ˉ , B ˉ ,K=(Rˉ+Gˉ+Bˉ)/3
2.計算R,G,B三個通道的增益係數:
3.對於圖像中的每個像素的像素值R,G,B,計算其調整後的值:
註:這種算法簡單快速,但是當圖像場景顏色並不豐富時,尤其出現大塊單色物體時,該算法常會失效。當圖片中沒有足夠豐富的色彩來近似理想情況時,灰度世界算法的白平衡效果就差強人意。
(2)白點統計法
1)將原圖轉換為YCrCb空間: 轉換關係如下:
在YCrCb空間定義一個三維結構,落於此區域內的像素統計為白點,計算色差時只需計算白色像素的平均色差來取代整個圖像的色差,從而提高色溫計算的準確度,限定YCrCb的約束條件來判斷是否為白點:
Ymin:CbCr較小的像素表現為接近白色的灰度值;Ymax:CbCr較大的像素可以認為是白色物體收到光源干擾得到的,當圖像中出現燈光時燈光周圍區域會出現過曝的現象色彩成分被抑制。
2) 統計白點(有效像素點)數量、累加對應的R、G、B、分量值,得到R、G、B的平均值:
3)得到平均亮度、確定各分量的增益係數:
4)最後進行白平衡校正:
(3)白點統計法的實現
1)標定參考點:提取Sensor在不同標準光源下的白點特徵(R/G、B/G);
2)計算色溫擬合曲線;
3)根據色溫曲線確定灰區;
4)調整各通道增益實現收白或者喜好色調整。
(4)色溫計算原理
1)取的圖像數據,並劃分MxN塊,如果是25x25,並統計每一塊的基本信息(,白色像素的數量及R/G/B通道的分量的均值)。
2)根據第1步中的統計值, 找出圖像中所有的白色塊,並根據色溫曲線判斷色溫。
比如25x25=625 個塊中,一共找出了100個有效白色塊, 裡面又有80個白色塊代表了色溫4500左右, 那當前色溫基本就是4500.根據4500色溫得出的Rgain,Bgain來調整當前圖像的白平衡。
CCM(色彩矩陣校正-Color Correction Matrix)
1.基本原理
sensor 的 RGB 分量對光譜的響應與人眼的不同,為了使圖像顯示的顏色與人眼接近,則需要色彩校正模塊對各種顏色進行還原,將顏色從sensor RGB空間變換到人眼的RGB空間,使圖像的效果符合人的主觀感受。
2.校正原理
使用 sensor 抓拍到的 24 色卡場景下前 18 個色塊的實際顏色信息和其期望值,計算 3x3 的 CCM 矩陣。輸入顏色經 CCM 矩陣處理得到的顏色與其期望值差距越小,則 CCM 矩陣就越理想。
3.調試方法
(1)調試CCM矩陣時,先將矩陣配置成單位陣( rr=gg=bb=1),再將飽和度提高到適當值;
(2)對著24色卡對顏色進行調整至用戶喜好顏色。
以縱軸為基色,橫軸為分量,找到對應的色彩在色相環上的位置,再根據色彩偏向調整CCM數值。
備註:此圖參考此博文所總結整理:Hisi平台CCM調試-細調_Camera Man的博客-CSDN博客
3DLUT(Look up ttable)
基本原理
顏色查找表,用於顏色校正的技術,它可以將輸入的顏色值映射到輸出的顏色值。它的原理是將輸入顏色空間中的每個顏色值映射到輸出顏色空間中的一個對應顏色值,這個映射關係可以通過一個三維數組來表示,這個數組就是3D LUT。
3D LUT的作用是對圖像進行顏色校正,使得圖像在不同設備上顯示時顏色表現一致。它可以校正圖像的亮度、對比度、飽和度等參數,從而達到更加真實、自然的效果
色差(chromatic aberration)
1.產生原因
透鏡對不同波長的色光有不同的折射率,波長越長折射率越高。
2.分類
(1)橫向色差
不同波長的光按照一定的角度進入透鏡,並且聚焦到沿著相同的平面上不同的位置時產生的色差。一般出現於圖像邊緣高對比度的地方。 圖像的放大倍數隨波長的不同而產生的顏色條紋。
(2)縱向色差
不同波長的光沿著水平光軸進入透鏡後不能聚焦同一平面的同一點而產生的色差。一般出現於物體邊緣呈現紅綠藍或者這些顏色的結合。 可以通過縮小鏡頭光圈來大幅度減少色差。
紫邊(purple boundary)
產生原因:
通常認為紫邊的成因是鏡頭色差,即鏡頭對不同光譜光線的折射程度不同,導致不同光譜的光線不能成像到一點上。成像系統一般將綠色通道準確對焦,然而由於鏡頭色差,藍色和紅色通道不能完全準確對焦,從而使物體邊緣出現紫紅色的色邊。實際就是色差導致了R≠G≠B,所以才會有了顏色;紫色就是R、B通道的分量 > G通道的分量。
步驟:
現象:
評論