【導讀】串行器可以連接并控制攝像頭IC,ADI的這類(lèi)器件包括MAX9257 (帶有半雙工UART/I2C控制通道)、MAX9259和MAX9263 (兩款均帶有全雙工同步控制通道),MAX9263還支持寬帶數字內容保護(HDCP)。本應用筆記介紹如何將攝像頭的RGB或YUV輸出轉換成標準顯示器接受的RGB數據。
串行器可以連接并控制攝像頭IC,ADI的這類(lèi)器件包括MAX9257 (帶有半雙工UART/I2C控制通道)、MAX9259和MAX9263 (兩款均帶有全雙工同步控制通道),MAX9263還支持寬帶數字內容保護(HDCP)。本應用筆記介紹如何將攝像頭的RGB或YUV輸出轉換成標準顯示器接受的RGB數據。
CMOS攝像頭傳感器包括數百萬(wàn)光敏單元,每個(gè)單元可響應整個(gè)波長(cháng)的光信號。利用濾光膜使特定傳感器僅響應紅光、綠光或藍光信號。相鄰的光敏單元通常以拜耳結構的濾色規律排列,綠色濾色片的數量是紅色或藍色濾色片數量的兩倍。這種方式用于模擬人眼的感光特性。從左至右、從上至下讀取傳感器單元輸出,原始的RGB數據序列為藍、綠...藍、綠 (首行末尾),綠、紅...綠、紅(第二行末尾),依次類(lèi)推,如圖1所示。
圖1. 原始RGB數據排列
圖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數據。
偶數行索引i和偶數像素索引j。
偶數行索引i和偶數像素索引j。
對于奇數行索引i和偶數像素索引j。
對于奇數行索引i和偶數像素索引j。
偶數行索引i和偶數像素索引j。
偶數行索引i和偶數像素索引j。
對于奇數行索引i和偶數像素索引j。
對于奇數行索引i和偶數像素索引j。
偶數行索引i和偶數像素索引j。
>偶數行索引i和偶數像素索引j。
為了降低數據速率,利用偶數像素索引的U數據和奇數像素索引的V數據,以及偶數和奇數像素索引的Y數據。壓縮后的YUV數據按照圖3所示排列發(fā)送,即:Y1、U0和V1為像素1的數據;Y2、U2和V1為像素2的數據等。
圖3. YUV422數據排列
422表示Y:U:V的采樣比,4:x:x標準為早期彩色NTSC標準,按照4:1:1色度再次采樣,所以,圖像的色彩分辨率僅為亮度分辨率的四分之一。目前,只有處理非壓縮信號的高端設備才會(huì )采用4:4:4彩色再采樣,亮度和彩色信息的分辨率完全相同。
為匹配MAX9268解串器攝像鏈路的輸出接口,并行RGB數據應按照以下信號圖映射。圖4所示為MAX9268并行位與其攝像鏈路輸出之間的映射,圖5所示為相機鏈路的RGB數據映射。表1所示為MAX9259串行器的對應內容映射。
圖4. MAX9268內部并行至輸出映射
圖5. 攝像鏈路內容映射
表1. MAX9259串行器RGB內容位映射
FPGA芯片可將壓縮(降低數據速率)后的攝像頭數據YUV轉換成RGB數據,用于MAX9259串行器。采用8位定點(diǎn)運算時(shí),色彩空間轉換的公式如下,式2和式3中,Dn和En的n為偶數。
Cn = Yn - 16
Dn = Dn + 1 = Un - 128
En = En + 1 = Vn + 1 - 128
Rn = clip((298 × Cn + 409 × En + 128) >> 8)
Gn = clip((298 × Cn - 100 × Dn - 208 × En + 128) >> 8)
Bn = clip((298 × Cn × 516 × Dn + 128) >> 8)
式中,>> 8表示“向右移8位”,clip表示“只取最低8位”。
輸入緩沖
輸入緩沖電路包括計數器、三個(gè)寄存器和組合邏輯,將單字節時(shí)鐘輸入轉換成三字節時(shí)鐘輸出,輸出時(shí)鐘速率為輸入的一半。組合邏輯僅用于分別使能Y、U和V字節的對應寄存器。
圖6. 輸入緩沖電路
時(shí)鐘開(kāi)關(guān)
FPGA輸出像素時(shí)鐘速率為攝像頭像素時(shí)鐘的一半,用于驅動(dòng)串行器像素時(shí)鐘輸入。但是,攝像頭在初始化之前不會(huì )輸出像素時(shí)鐘。解決方案是在FPGA內部采用2:1時(shí)鐘復用器(mux)和時(shí)鐘信號檢測器,mux由時(shí)鐘信號檢測器控制。上電時(shí),mux的默認時(shí)鐘來(lái)自攝像頭的時(shí)鐘振蕩器,使SerDes芯片組提供啟動(dòng)攝像頭的控制通道。時(shí)鐘信號檢測器對場(chǎng)同步信號脈沖進(jìn)行計數,經(jīng)過(guò)幾個(gè)場(chǎng)同步脈沖后,mux切換到攝像頭像素時(shí)鐘速率的一半。采用高清攝像頭傳感器時(shí),例如OV10630,每個(gè)場(chǎng)同步周期包含100k以上的像素時(shí)鐘。幾個(gè)場(chǎng)同步周期足以使攝像頭的鎖相環(huán)(PLL)達到穩定。場(chǎng)同步計數比像素時(shí)鐘計數的效率高得多,并可節省FPGA邏輯單元的資源。
中間緩沖
以上提及的YUV至RGB彩色轉換已用于A(yíng)ctel? ProASIC3 A3PN125Z FPGA,圖7所示為實(shí)現這一FPGA的原理圖。
圖7. YUV至RGB轉換器的FPGA實(shí)現
應用電路
廠(chǎng)家提供的攝像頭芯片可能位于PCB子板,圖8所示為攝像頭子板模塊的功能框圖。輸入包括電源、PWR和晶振時(shí)鐘(XCLK)。輸出信號包含并行數據位(D0..D9)、I2C總線(xiàn)(SDA、SCL)、視頻同步(HREF、VSYNC)和像素時(shí)鐘(PCLK)。
圖8. 攝像頭模塊功能框圖
圖9所示為應用電路的FPGA和串行器芯片的原理圖。電路通過(guò)兩對雙絞線(xiàn)組成的串行電纜供電,一對用于傳輸串行信號,另一對用于供電。獨立的LDO電源IC用于串行器和FPGA器件。攝像頭模塊采用旁路電容,自帶LDO電源芯片,進(jìn)一步降低潛在干擾。FPGA和串行器之間的數據鏈路采用阻尼電阻。
圖9a. 應用電路的FPGA部分
圖9b. 應用電路的串行器部分
MAX9259也能夠直接連接至攝像頭傳感器,例如OV10630,以構建更小的攝像頭。彩色空間轉換FPGA可置于解串器之后。由于這種應用需要攝像鏈路輸出,可直接由MAX9268驅動(dòng),所以彩色轉換FPGA置于攝像頭傳感器和串行器(MAX9259)之間。
視頻采集示例
圖10所示攝像頭應用電路也是利用這些攝像頭電路搭建的。
圖10. 攝像頭應用電路
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問(wèn)題,請聯(lián)系小編進(jìn)行處理。
推薦閱讀:
“國產(chǎn)芯片”瑞森半導體(REASUNOS)將亮相2023慕尼黑上海電子展