串行器與攝像芯片應用一
引言
Maxim串行器可連接并控制攝像頭IC,這類(lèi)器件包括MAX9257(帶有半雙工UART/I2C控制通道)、MAX9259和MAX9263(兩款均帶有全雙工同步控制通道)。MAX9263還支持寬帶數字內容保護(HDCP)。本應用筆記介紹如何將攝像頭的RGB或YUV輸出轉換成標準顯示器接受的RGB數據。
攝像頭輸出數據格式
攝像頭芯片,例如OmniVision? OV10630,可通過(guò)串行器連接。OV10630的接口引腳包括:像素時(shí)鐘、PCLK、行有效、HREF、幀同步、VSYNC和并行數據位D[9:0]。數據位在時(shí)鐘的上升沿保持穩定。
YUV和原始RGB數據格式
CMOS攝像頭傳感器包括數百萬(wàn)光敏單元,每個(gè)單元可響應整個(gè)波長(cháng)的光信號。利用濾光膜使特定傳感器僅響應紅光、綠光或藍光信號。相鄰的光敏單元通常以拜耳結構的濾色規律排列,綠色濾色片的數量是紅色或藍色濾色片數量的兩倍。這種方式用于模擬人眼的感光特性。從左至右、從上至下讀取傳感器單元輸出,原始的RGB數據序列為藍、綠...藍、綠 (首行末尾),綠、紅...綠、紅(第二行末尾),依次類(lèi)推,如圖1所示。
圖1. 原始RGB數據排列
通過(guò)相鄰單元內插生成與傳感器單元密度相同的RGB數據。另外,利用相鄰單元的顏色,按照特定的規則可以恢復圖像。構成每個(gè)像素RGB數據組的規則之一是:使用同一行的相鄰單元,再加上下一行(或上一行)的綠色相鄰單元。內插后的RGB數據序列為...、紅(i-1)、綠(i-1)、藍(i-1)、紅(i)、綠(i)、藍(i)、紅(i+1)、綠(i+1)、藍(i+1)、...如圖2所示。每個(gè)像素需要一組RGB數據,驅動(dòng)彩色顯示器并保持攝像頭傳感器的最高分辨率。內插RGB數據的亮度分辨率接近于傳感器單元的分辨率,但色度分辨率較差。由于人眼對每個(gè)像素的灰度要比對像素的色彩分量更為敏感,所以感覺(jué)到的分辨率基本與傳感器單元分辨率相同。
圖2. RGB數據排列
然而,這種RGB數據的內插算法使得數據速率增至三倍。為了降低數據速率,尤其是需要圖像傳輸的場(chǎng)合,可采用YUV彩色空間(將模擬彩色電視信號壓縮到模擬黑白電視的頻帶)。在下式中,亮度以Y表示,藍色和亮度之間的色差以U表示,紅色和亮度之間的色差以V表示,
式中,典型的色彩加權為:WR= 0.299,WB= 0.114,WG= 1 - WR- WB= 0.587,歸一化值為UMAX,VMAX= 0.615。
對于采用拜耳濾色鏡的攝像頭傳感器,相鄰像素的U或V數據大致相同,取決于行索引i和像素索引j(如果采用的規則為相鄰顏色)。利用本指南,可根據下式利用RGB數據直接生成YUV數據。
評論