如何去ppt上的log?(如何去ppt上的水印文字)
1046
2022-05-28
引言:最近為FPGA驗證做圖片生成器,檢索了多種圖片格式的介紹文檔,這里做一個總結,希望對剛接觸數字圖像處理的新同事有所幫助。本系列分三部分,介紹工作中常見的YUV、RAW等各種圖片格式,不求艱深晦澀,但求簡潔明了。
本文是第三部分:RAW10? RAW12? RAW14? BGGR? 原來如此原始+土豪!
1????? RAW簡介
RAW的原意就是“未經加工的、原始的”,可以理解為:RAW圖像就是CMOS或者CCD圖像感應器將捕捉到的光信號轉為電信號,進而轉為數字信號的原始數據,換句話說,RAW圖就是記錄每個像素點的光強(亮度)信息。
以下為從光源(被攝物體)à 鏡頭 à CCD(光電耦合器件)à ADC(模數轉換)à RAW圖的大概流程。
按照每個像素點亮度記錄精度(位深)的不同,區分為RAW 10bits,RAW 12bits和RAW 14bits,簡稱為RAW10,RAW12和RAW14。
2????? RAW圖的數據存儲
不管是RAW10,RAW12還是RAW14,都是每兩個字節(16bits)存儲一個像素的亮度值,有效bit位數分別為10、12和14,無效bit位用0補齊,所以這三種raw圖文件的大小都是寬x高x2個字節
2.1????? RAW10
在RAW10圖文件中,每個像素點的亮度值用10個bit位表示,也就是從最暗到最亮分1024個層次精度。每個像素點的亮度值用兩個字節表示,其中6個無效的bit位用0表示,以下是用十六進制形式打開的一個RAW10圖文件:
紅框中的字節最大值為0x03,前6個bit位全是0。文件中無效數據占文件總大小的近40%,可以說相當“土豪”(langfei)。
2.2????? RAW12
在RAW12圖文件中,每個像素點的亮度值用12個bit位表示,也就是從最暗到最亮分4096(2的12次方)個層次精度。每個像素點的亮度值同樣用兩個字節表示,其中4個無效的bit位用0表示,以下是用十六進制形式打開的一個RAW12圖文件:
紅框中的字節最大值為0x0F,前4個bit位全是0。
2.3????? RAW14
讀者可以根據RAW10和RAW12自行擴展,這里不再贅敘。
3????? Bayer pattern
大家可能注意到,上面對RAW圖的介紹未涉及到色彩,實際上CCD只能根據光強信號轉換為對應強度的電信號,而無法分辨色彩(可見光波長),相當于“色盲”。這樣一來,我們得到的RAW圖也只能是mono圖,顯然這是不能接受的。
有人自然想到了一個簡單粗暴的解決辦法:用R、G、B濾光片將白光分解成三原色,分別用一塊CCD來做光電轉換,最后合成一張彩*** ,這就是3CCD相機。原理圖如下:
原理簡單,但是元件成本倍增,商業大佬們表示很不滿意。于是柯達公司的拜爾發明了一種棋盤狀的濾光片,只用一塊CCD,就解決了顏色的識別:
上圖中的濾光片上布滿了一個個排列規則的濾光點,與后面CCD上的像素一一對應,每個濾光點只能通過R、G、B中的一種顏色,這意味著照射在下層CCD每一個像素上的光只能是固定的某種顏色,從而實現了CCD對色彩的辨別,如下圖所示:
仔細看拜爾濾光片上棋盤狀的顏色分布,是有規律的,這就是Bayer pattern(拜爾模板),常見的有以下4種:
上述pattern中,每4個像素記錄1個R、1個B和2個G,之所以綠色得到“倚重”,是因為人眼對綠光最敏感。
這樣一來,我們得到的RAW圖就不再是mono圖,而是彩圖,效果如下所示:
最后經過插值算法,根據周邊像素點計算出中心像素點上另外兩種原色分量,就得到一張看上去比較正常的RAW圖:
篇幅所限,RAW格式的科普就到此為止吧,希望對大家有用。
其他
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。