imaging algorithm specialist staff image quality engineer
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2YfNWawNCM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2csYnSYp1b502YsVjMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL4QDN5MDNxYTMxETOwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
cmos sensor
color science
3A
狹義3A:自動曝光 自動對焦 自動白平衡
廣義:整個相機自動控制
iris 光圈
ISO 感光度
Flash 閃光燈
ND Filter中窺鏡 (外部感光特别強)
Laser(與AE AF都有關)
IR 紅外
shutter快門
Zoom
Spot
Focus Motor 對焦,馬達控制
Cloor Temperature 色溫
輸出:亮度,光源,距離,位置,深度,運動,方向,人臉
blacklevle linearity
去底電流,噪聲。也是線性化基礎。
不同增益 不同溫度對黑電平都有影響。
線性化做的不好,會導緻整體顔色偏差。
Green Imbalance
GB、GR不平衡會導緻小格子,“迷宮格”
一般采用動态校正
采用周圍4個各自的G值,進行判斷,最後進行查找表對目前G 進行調整。
壞點消除
原因:
sensor工藝:灰塵,電子壽命
noise:sensor gain太大,濕度增益高
壞點:靜态壞點、動态壞點。靜态壞點基本是工藝,動态壞點基本是noise
也可以分
hot pixel:比周圍點亮很多
dead pixel:比周圍點暗很多
weak pixel:沒有提供正确像素值,但是沒有比周圍點特别亮或特别暗。
壞點的分類和類型(指的是單通道上3x3平面上出現的)
單壞點、雙壞點、多壞點
靜态壞點一般在sensor中做,ISP也可以做。
壞點消除名額:1、不能損失原有圖像細節 2、能夠去除所有壞點 3、不能引起artifact(不自然效應)
靜态壞點消除的壞點修正基本采用的都是中指濾波
使用方向梯度判斷方向。例如,G4-G6最小,那麼就是水準方向,G2-G8最小則為垂直方向。
corner case
1、噪聲影響
高噪聲(壞點校正調試時根據ISO進行調試)
2、高亮的孤立點(例如LED點陣列)
3、分辨率卡等(例如密集條紋)
lens shading
luma shading:lens的各位置和中心的透射率不同
color shading:
1、lens對不同光譜的shift不同
2、IR filter(紅外濾波片):lens對不同光譜的shift不同。濾掉近紅外光和更高的紅外光。
sensor vignetting也會導緻luma shading和color shading,但影響比較小。
表現為:圖像邊角和中心點像素值不一樣。
結論: (1)對于定光圈鏡頭來講,色溫是影響color shading的主要因素。
(2)任何shading,都可以通過目前像素乘以gain的方式來進行校正。
luma shading表現為:亮度有漸變,中心和周圍不一樣。從右邊看出中間亮度高,周圍亮度低。
展示圖實際為灰圖,即R=G=B。右下圖為正常情況表現,右上圖可以看出RGB不一樣R>G>B。
color shading表現為:整個圖像中有色偏,而且不一緻。比如:中間發綠,周圍發紅。
左側為luna shading評定,右側為color shading評定。
color shading比luma shading标準嚴格,因為人對色度比較敏感。
shading correction幾種模型方法
1、radial shading correct
gain_r1=r1/R*gain_radial
2、mesh correction
(1)線性內插補點
通過點與四個角的距離算出權重w。
w1Gain1+w2Gain2+w3Gain3+w4Gain4
(2)用logN,或多次方程拟合
3、auto shading correction
圖像分成多個塊,圖隻為簡單例子。統計各個塊色溫。然後進行比較判斷使用哪個gain使得各個塊比值接近相同。
raw denoise
降噪也可以放在YUV。
放在raw denoise的好處:噪聲是可測量的并且不會改變(模型可觀)的。
raw域噪聲一般随着亮度增大而增大。
在YUV處的降噪模型,不好用公式模型估計(沒什麼規律)
結構化噪聲:在demosaic時,不同的邊緣強度內插補點的方向以及插值的方式都會不一樣,進而會導緻噪聲的成都和形态與目前像素所處的結構等有關系。
raw denoise的相關啟發
1、raw denoise的噪聲不是單純的高斯噪聲,而是和亮度有關的。
2、在raw denoise進行一定程度的降噪,對于圖像品質會有很大的提高,比如結構性噪聲。
3、在raw denoise設計降噪算法會稍微容易一些,參考noise profile,在不同的亮度進行不同強度的降噪,或者把噪聲歸一化,有利于保護細節。
4、noise profile并不是單純用在denoise這一個子產品上,還可以用在時域降噪、demosaic等子產品上。
(實際使用時,不一定在raw domain降噪,很多ISP也都是以YUV domain降噪為主體)
降噪的評價标準:
PSNR
SNR
CPIQ(ISO 15739 noise)
枯葉圖(降噪時要關注中低頻的噪聲。)
SNR的标準是:db越高,降噪程度越好。但SNR不能絕對代表圖像好壞。
Dynamic Range 與Tone Mapping
DR 動态範圍:圖像表示資訊量
最大亮度除以最小亮度
TM 動态範圍壓縮(高bit圖像壓成低bit圖像,但視覺無損)
常見算法分類:
1、global tone mapping(單一曲線、雙邊濾波)
2、local tone mapping(虛拟曝光、local gamma)現在常用的方法
虛拟曝光:google/VIVO/OPPO常用
local gamma:将圖分成N塊,每一塊單獨統計直方圖。然後拉出gamma映射
HDR圖像來源:将多個曝光下的圖像合成,低bit變成高bit。
tone mapping問題
1、局部對比度缺失(global容易導緻的問題)
2、飽和度降低
3、halo(local容易導緻的問題)
4、時域不平滑
5、會引起噪聲的增大
6、tone mapping是個系統工程,且和應用領域有關。
Demosaic
color filter array:色彩濾鏡陣列,不用濾鏡吸收不同光譜。但是用這種方法如果對每個pixel都獲得三個通道的光強的話,則需要對每個pixel都應用三個濾鏡,成本過高。這種方法不需要demosaic。
bayer filter:50%綠,25%紅,25%藍。在間隔的pixel上方單一顔色濾鏡,這樣以來,每個通道能得到一個部分值空缺的圖檔,這些空缺的值可以通過各種插值手段進行填充。
demosaic步驟:
1、判斷插值方向
2、在判定的方向上進行插值
3、後處理(可選)
基礎點:
1、Green-based demosaicking。對G是橫向、縱向插,挑選最優,然後用此結果插值RB。
2、Edge-based demosaicking
3、相關性原理
插值方法:色差恒定法,即R-G ,B-G的值是連續的。R5-Gr5=R4-Gr4
demosaic難點:1、摩爾紋 2、noise。放大噪聲、會影響判斷 3、模糊 4、false color
color reporduction
color model: RGB,色彩的基本元素描述色彩模型。
加性色彩系統
相機和人眼
SMYK:
減性色彩系統
列印,印刷
color correction
CCM目的:(主觀提高曝光度)
将camRGB色彩空間轉換為sRGB色彩空間。camRGB->XYZ->sRGB
sRGB->XYZ是已知的,按照CIE國際照明委員會。
CCM評價标準:
通過CIE LAB色彩空間來計算color error
CCM注意事項:
1、飽和值處理,飽和值一般不建議處理
2、CCM一般在gamma前面
CCM計算方法
1、24色色卡對應的srgb求逆gamma,然後作為target
2、求得輸入圖像24個色卡每個patch對應的額R G B mean
for color error < th
3、設定ccm matrix初始值
4、計算color error
if(color error<th || color error達到最小 || 疊代次數>n)
break;
else
5、計算新的ccm matrix值
end
end
調試CCM注意事項:
1、曝光正常
2、CCM會增強彩噪,在高ISO時需要降低ccm的saturation,甚至關閉CCM。
3、gamma變動時,ccm也需要跟随自己變動。
CCM缺點和3D lut的優勢
1、ccm是線性的,但是色彩轉換不一定是線性的。
3D-lut基本原理
每一個亮度有一個對應值(3維坐标)
由于坐标太多,不可能全部儲存,是以劃分成若幹個8x8x8塊,儲存各個頂點值,塊内的值通過插值得到。
Gamma與對比度增強
為什麼gamma矯正:
1、韋伯理論(JND):人眼的視覺是非線性的,并且人眼對暗部的變化更加敏感。
2、存儲、傳輸、顯示圖像的手段是有帶寬限制的。
因為人眼對暗區的變化更加敏感,是以在存儲的時候應該給暗區更大的帶寬。
通過gamma矯正,可以将存儲的位寬更多的配置設定給暗區,然後在顯示端再做反gamma矯正,将圖像重新變成線性的。
encoder gamma和display gamma相乘不一定為1。
gamma對亮度、色彩的影響
1、gamma會降低色彩的飽和度。
2、不同gamma導緻亮度變化
3、gamma與色彩空間
動态gamma校正與contrast:
sharpening銳化
圖像銳化的主要目的有兩個:
1.增強圖像邊緣,使模糊的圖像變得更加清晰,顔色變得鮮明突出,圖像的品質有所改善,産生更适合人眼觀察和識别的圖像;
2.希望通過銳化處理後,目标物體的邊緣鮮明,以便于提取目标的邊緣、對圖像進行分割、目标區域識别、區域形狀提取等,進一步的圖像了解與分析奠定基礎。
圖像銳化一般有兩種方法:
1.微分法
2.高通濾波法
這裡主要介紹一下兩種常用的微分銳化方法:梯度銳化和拉普拉斯銳化。
注意:由于銳化使噪聲受到比信号還要強的增強,是以要求銳化處理的圖像有較高的信噪比;否則,銳化後的圖像的信噪比更低。
sharpening注意事項:
1、針對不同行業,調節合适的overshot和undershot,并保證MTF等達到要求
2、sharpening盡量不要增強噪聲
3、不能引起nyquist以上的頻率出現artifact
4、sharpending的邊緣盡量平整,均勻。
5、sharpending和focus/MTF等互相影響,是以在測試一個時,需要控制好其他變量。
color space matrix/conversion
把色彩空間從sRGB->編碼color space。即RGB->YCbCr。
spatial denoise(空域降噪與頻域降噪)
噪聲類型:1、高斯噪聲(高斯+泊松) 2、椒鹽噪聲(基本是壞點,在DPC幹掉) 3、FPN(noise是以固定形式存在,有專門子產品,大部分sensor已經沒有了)
是以去噪聲基本是去高斯噪聲
高斯降噪:和像素值無關和距離有關的降噪算法(圖像每個地方處理一緻,但有些地方想做不一樣處理)
雙邊濾波:即雙權重,和距離、像素值差有關(大邊緣保留住了,但小細節被抹平,在學術上屬于平滑算法)
非局部算法:在雙邊基礎上改變,根據圖像塊的相似性來計算像素的相似性權重。
tempor 時域去噪
1、像素值判斷(單點或block)
dif>th 運動,dif<th靜止
2、光流
motion compensation
depurple(色散 紫邊)
去馬賽克,UV,色散都可能導緻
實體原因:縱向色差和橫向色差
成因:鏡頭沒有把不同波長的光線聚焦到同一個焦平面(不同波長的光線的焦距是不同的),或者和鏡頭對不同波長的光線放大的程度不同而形成的。R G >B産生紫色
如何校正CA:
ISP:chromatic abberance correction(主要矯正鏡頭導緻)、depurple(解決高亮,廣角等導緻)
chromatic abberance correction步驟(CAC):标定+矯正
點狀圖:dot chart
depurple:不一定要有
depurple難點:
1、硬體設計line buffer很大
2、depurple後飽和降到會很産生artifact
3、誤檢測(比如紫色衣服矯正成黑色,或者紫燈)
CA與demosaic: demosaic後可能加劇紫邊程度,RGB一緻性更差。
ISP統計資訊
有多個地方标記,代表可以從其中的一個位置輸出。
AWB放 shading後面好處:放線上性化後面,圖形都是線性的。
AE放WB後:圖像亮度可知,後續demosaic,CCM不影響亮度,Gamma可以知道對亮度影響。
AF放demosaic後:節省硬體資源。
統計直方圖,提供N x M單獨區塊亮度統計
總共多少點,塊内有多少點,R/G/B均值。
AF統計資訊:
每個格内的focus value,亮度。
亮度:把格内值取均值,把RGB轉換成Y。
focus value:1、通過固定幾個濾波器(3X3矩陣)提取關注點 2、FIR濾波器 3、IIR濾波器(目前主流)4、FIR+IIR
自動曝光
自動曝光≠亮度控制
自動曝光:控制相機感光度,控制快門,光圈
曝光=ISO+光圈+曝光時間
曝光标準:曝光誤差 目前曝光值 與 實際應該達到的曝光值的偏差
每幾幀做一次循環(閉環控制系統,考慮防止過充)
自動白平衡
原因:人眼和sensor 色溫不一樣。
統計方法
1、把視窗分成若幹各自,算出各個R/G/B均值及像素個數,然後算出R/G,B/G(目前主流)
2、統計整個圖像直方圖
3、在YCbCr域進行統計,求出Y、Cb、Cr均值
怎麼算RGB Gain:
灰世界:(優點: 計算量小 。 缺點:可能會失敗,90%成功率)是以可以使用灰世界+别的算法,保證不失敗。
白點法:
自動對焦
CDAF 反差對焦
PDAF 相位對焦
Laser assisted AF 雷射輔助自動對焦
控制VCM調整焦距。
閃光燈
類型:LED/dual LED/Xenon
閃光燈常見問題:
1、反光的物體
2、Flash AE做成的過/次曝
3、Flash AF造成的失焦
4、Flash AWB造成的色偏
5、能量不夠造成的遠景不亮
6、曝光時間太長造成運動模糊
閃光燈名額:1、Relative Illuminace(範圍亮度一緻) 2、Chromaticity一緻性(同一批色溫一直)
HDR
HDR是一種改善動态對比度的技術。HDR就是高動态範圍技術,提升最亮和最暗畫面的對比度,這樣使用者可以看到更多的細節。
動态範圍:最早時系統信号的概念,一個信号系統的動态範圍被定義成最大不失真電平和噪聲電平的差。
sensor的動态範圍就是sensor在一幅圖像裡能夠同時展現高光和陰影部分内容的能力
DR=20lg(i_max/i_min),10bit的i_max=1023,從數學本質将提高bit width就可以 提高動态範圍。
i_min為底電流,i_max為 sensor最大不飽和電路。
多重曝光的HDR流程
圖像配準意義:多張圖合成時,去除人手抖動的影響
HDR合成常見問題:1、運動問題拖影 2、曝光時間的選擇 3、顔色效果不自然