鞏稼民, 陳 博, 曾祥忠
(1.西安郵電大學(xué) 電子工程學(xué)院, 陜西 西安 710121; 2.西安中川光電科技有限公司, 陜西 西安 710075)
基于Camera Link數(shù)字相機(jī)的實(shí)時(shí)小型化系統(tǒng)
鞏稼民1, 陳 博1, 曾祥忠2
(1.西安郵電大學(xué) 電子工程學(xué)院, 陜西 西安 710121; 2.西安中川光電科技有限公司, 陜西 西安 710075)
設(shè)計(jì)一套基于Camera Link數(shù)字相機(jī)的實(shí)時(shí)小型化系統(tǒng)。根據(jù)Camera Link協(xié)議以及Bayer變換算法,采用Cyclone III 系列FPGA EP3C40F484芯片,通過(guò)采集輸入的Camera Link信號(hào),異步FIFO與單片SDRAM方式進(jìn)行數(shù)據(jù)緩存,利用ADV7123芯片實(shí)現(xiàn)8位數(shù)模轉(zhuǎn)換,輸出1024×768 ×60Hz的VGA信號(hào)。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)可以不通過(guò)攜帶Camera Link圖像采集卡的計(jì)算機(jī),完成對(duì)Camera Link 信號(hào)的轉(zhuǎn)換并直接顯示圖像,并實(shí)現(xiàn)彩色與黑白模式切換。
實(shí)時(shí)小型化;Camera Link;FPGA;SDRAM 控制器;Bayer
Camera Link數(shù)字相機(jī)逐漸成為機(jī)器視覺方面的熱點(diǎn),相比于千兆網(wǎng)、USB2.0以及IEEE 1394接口,Camera Link具有高傳輸速度、高分辨率、強(qiáng)穩(wěn)定性、通信協(xié)議靈活簡(jiǎn)單等特點(diǎn),可應(yīng)用于軍事偵查、光學(xué)遙感和飛船預(yù)警等領(lǐng)域[1-2]。而基于Camera Link數(shù)字相機(jī)的實(shí)時(shí)顯示系統(tǒng)主要是通過(guò)載有Camera Link圖像采集卡的計(jì)算機(jī)進(jìn)行間接顯示。目前Camera Link圖像采集卡是基于PCI總線或者PCI Express總線進(jìn)行數(shù)據(jù)的控制與傳輸[3-5],雖然系統(tǒng)的高速實(shí)時(shí)性得到滿足,但體積較為龐大,使用攜帶不方便,對(duì)于空間要求嚴(yán)格的地點(diǎn)并不適合,其靈活性較低,具有一定的局限性[6-7]。
為了實(shí)現(xiàn)一種基于Camera Link數(shù)字相機(jī)高速實(shí)時(shí)小型化系統(tǒng),就需要基于Camera Link信號(hào)采集原理、Bayer算法以及FPGA編程技術(shù),在不通過(guò)計(jì)算機(jī)的情況下完成對(duì)Camera Link數(shù)據(jù)及控制信號(hào)進(jìn)行圖像采集、圖像緩存、信號(hào)轉(zhuǎn)換并顯示等一系列數(shù)據(jù)處理。圖像緩存模塊可以通過(guò)雙SDRAM[8]或者雙SRAM[9]乒乓操作進(jìn)行高速大容量數(shù)據(jù)的處理,本系統(tǒng)則采用單片SDRAM加異步FIFO的方法實(shí)現(xiàn),另外在圖像的顯示方面增加了彩色/黑白模式的變換。
本文采用STC-CLC83A型號(hào)彩色Camera Link數(shù)字相機(jī),根據(jù)DS90CR288解碼芯片采集Camera Link信號(hào),基于EP3C40F484芯片完成控制器的設(shè)計(jì),將輸入的有效像素1 024×768×30 fps的Camera Link信號(hào)緩存到單片SDRAM,并通過(guò)數(shù)模轉(zhuǎn)換芯片ADV7123進(jìn)行轉(zhuǎn)換,輸出1 024×768×60 Hz的標(biāo)準(zhǔn)VGA信號(hào),外置撥碼開關(guān)進(jìn)行輸出圖像模式選擇。
1.1 Camera Link協(xié)議
Camera Link協(xié)議是基于低壓差分信號(hào)(Low Voltage Differential Signaling,LVDS)數(shù)據(jù)傳輸信號(hào)之上的,LVDS信號(hào)在傳輸過(guò)程中產(chǎn)生一對(duì)電壓值大小不同信號(hào),在接收時(shí)對(duì)這對(duì)差異信號(hào)進(jìn)行相應(yīng)的信號(hào)解碼成TTL信號(hào),從而得到原始數(shù)據(jù)信息。
STC-CLC83A數(shù)字相機(jī)采用Camera Link配置下的Base型結(jié)構(gòu),因此選用單片DS90CR288解碼芯片作為Camera Link信號(hào)接收器。從MDR26接口發(fā)送包含圖像信息的4路LVDS串行數(shù)據(jù)流和1路作為高速數(shù)據(jù)同步的LVDS時(shí)鐘流。5路LVDS信號(hào)在標(biāo)準(zhǔn)Camera Link電纜中傳輸并在DS90CR288接收到信號(hào)時(shí)將其串并轉(zhuǎn)換,解碼恢復(fù)成28位的并行數(shù)據(jù)進(jìn)行后續(xù)圖像處理[10],如圖1所示。
圖1 Camera Link傳輸協(xié)議
1.2 Bayer算法
還原彩色圖像通常是在CCD傳感器的表面按一定順序排列的鍍含有紅綠藍(lán)三色的馬克膜,對(duì)接收的數(shù)據(jù)進(jìn)行一定的算法來(lái)獲取彩色圖像。Bayer CFA模板是目前廣泛采用的彩色圖像還原模板,它交替使用一組紅綠濾鏡和一組綠藍(lán)濾鏡,其中綠色像素占據(jù)總像素的50%,紅色像素占據(jù)25%,藍(lán)色像素占據(jù)25%,如圖2所示。
經(jīng)過(guò)Bayer CFA模板采集的圖像數(shù)據(jù)因?yàn)榫G色像素分量占了全部像素的一半,所以不經(jīng)過(guò)算法處理,圖像在整體的顯示效果上會(huì)呈現(xiàn)綠色。在算法上使用占用邏輯資源最少的2×2塊的Bayer模板。
圖2 Bayer CFA模板
在2×2塊的Bayer模板基本單元如圖3所示。內(nèi)對(duì)缺失的R、B分量完全使用相同顏色的分量,而對(duì)缺失的G分量使用均值方法,通過(guò)顏色分量輔助實(shí)現(xiàn)色彩還原。程序基本設(shè)計(jì)思路為在2×2單位塊內(nèi)的4個(gè)像素單元具有相同的R值和B值,第1列和第2列的兩個(gè)像元的G值為兩像素的平均值[11-13]。
圖3 2×2塊的拜爾模板基本單元
系統(tǒng)的總體設(shè)計(jì)由信號(hào)采集、圖像緩存、Bayer變換以及VGA信號(hào)模塊4個(gè)部分組成,如圖4所示。
圖4 總體設(shè)計(jì)框圖
2.1 信號(hào)采集模塊
相機(jī)通過(guò)MDR26輸出的5路LVDS串行差分信號(hào)經(jīng)DS90CR288A芯片恢復(fù)相機(jī)圖像信號(hào),由芯片解碼輸出1路時(shí)鐘信號(hào)和28路數(shù)據(jù)信號(hào),其數(shù)據(jù)信號(hào)包括24bit圖像有效數(shù)據(jù)信號(hào)和包含幀有效信號(hào)FVAL、行有效信號(hào)LVAL、數(shù)據(jù)有效信號(hào)DVAL、預(yù)留信號(hào)SPARE的4路控制信號(hào)。當(dāng)控制器檢測(cè)到行/場(chǎng)同步信號(hào)同時(shí)有效的情況下,以相機(jī)的輸入頻率作為信號(hào)采集模塊的像素時(shí)鐘,進(jìn)行接收?qǐng)D像數(shù)據(jù)的采集工作。
2.2 實(shí)時(shí)Bayer轉(zhuǎn)換
相機(jī)的輸出數(shù)據(jù)按2×2 Bayer模板設(shè)4個(gè)變量,分別為mDATA_0,mDATA_1,mDATAd_0和mDATAd_1。4個(gè)變量組成了一個(gè)空間模板,mDATAd_0位于模板左上方,如表1所示。
表1 2×2 Bayer空間模板
模板中4個(gè)變量必然包含GRBG 4個(gè)色彩分量,根據(jù)2×2的Bayer變換模板的色彩變換原理,在模板中任意像素取鄰域的紅色像素值、藍(lán)色像素值和兩個(gè)綠色像素的平均值。在程序設(shè)計(jì)中,不同的位置采取不同的取值方法,其中mCCD_G的值在程序處理時(shí)再進(jìn)行均值,部分程序設(shè)計(jì)為
if ({iY_Cont[0],iX_Cont[0]} == 2'b00)
begin
mCCD_R <= mDATAd_0;
mCCD_G <= mDATA0+mDATAd_1;
mCCD_B <= mDATA_1;
end
else if…..
為了實(shí)現(xiàn)彩色Camera Link數(shù)字相機(jī)靈活的優(yōu)勢(shì)特點(diǎn),并符合特定場(chǎng)所的要求,設(shè)計(jì)了通過(guò)撥碼開關(guān)調(diào)節(jié)CM信號(hào)實(shí)現(xiàn)黑白及彩色信號(hào)切換,部分程序?yàn)?/p>
采用SPSS 25.0統(tǒng)計(jì)學(xué)軟件對(duì)該次研究數(shù)據(jù)進(jìn)行統(tǒng)計(jì)處理,其中計(jì)量資料為血糖水平控制情況,用(±s)表示,進(jìn)行t檢驗(yàn),治療效果為計(jì)數(shù)資料,用[n(%)]表示,進(jìn)行χ2檢驗(yàn)。P<0.05為差異有統(tǒng)計(jì)學(xué)意義。
assign oRed = CM?rRed : iDATA ;
assign oGreen = CM?rGreen[10:1] : iDATA ;
assign oBlue = CM?rBlue : iDATA ;
2.3 高速SDRAM緩存控制
采用單片MT48LC8M32B2(8M×32)型號(hào)、容量為256Mb、工作電壓為3.3V的SDRAM芯片,系統(tǒng)時(shí)鐘同步運(yùn)行的接口方式。其包括32bit Data Bus, 4banks (BA0~BA1),每Bank的64Mb的存儲(chǔ)架構(gòu)是4096行×512列×32bit,每個(gè)Bank存儲(chǔ)單元通過(guò)行和列尋址,最終完成存儲(chǔ)單元的尋址工作。其SDRAM芯片引腳有DQ0~DQ31(數(shù)據(jù)輸入輸出引腳)、A0~A11(地址輸入引腳)、CLK、CKE、CS(芯片選擇)、RAS(行地址選擇)、CAS(列地址選擇)、WE(寫使能)、BA0~BA1(Bank地址輸入信號(hào)引腳)、DQM、VSS、VDD等引腳。設(shè)計(jì)程序通過(guò)初始化、預(yù)充電、行激活、讀/寫操作、自動(dòng)刷新等操作控制SDRAM工作。在模式寄存器操作命令下進(jìn)行主要工作參數(shù)設(shè)置,其中包括Burst Length、Burst Type、CAS Latency以及OP Code。
因?yàn)镃amera Link數(shù)字相機(jī)輸入的圖像數(shù)據(jù)量大,速率快,所以采用異步FIFO實(shí)現(xiàn)乒乓緩存的機(jī)制進(jìn)行數(shù)據(jù)緩存,如圖5所示。
圖5 SDRAM模塊設(shè)計(jì)
為避免Camera Link信號(hào)(30fps)與VGA標(biāo)準(zhǔn)(60Hz)在幀頻上的干擾,首先將相機(jī)采集的圖像數(shù)據(jù)緩存到FIFO1中,當(dāng)FIFO1寫滿數(shù)據(jù)后,SDRAM開始存儲(chǔ)FIFO1的數(shù)據(jù),在FIFO1讀操作的同時(shí)FIFO2進(jìn)行相機(jī)數(shù)據(jù)的寫操作,當(dāng)FIFO1讀空時(shí)等待FIFO2的寫滿信號(hào),當(dāng)FIFO2的寫滿信號(hào)有效時(shí)進(jìn)行FIFO1的寫操作。在寫FIFO2的同時(shí)對(duì)FIFO1進(jìn)行讀操作,當(dāng)讀操作讀空時(shí)等待FIFO2的寫滿信號(hào),當(dāng)寫滿信號(hào)有效時(shí)再對(duì)FIFO1進(jìn)行寫操作,同時(shí)對(duì)FIFO2進(jìn)行讀操作。讀寫切換可以由FIFO的寫滿和讀空信號(hào)來(lái)控制,將圖像緩存到單片的SDRAM中,便于后續(xù)的圖像顯示處理。而在讀取圖像有效時(shí)同樣利用異步FIFO的乒乓操作,進(jìn)行緩存RGB信號(hào)提取并結(jié)合VGA模塊產(chǎn)生的行/場(chǎng)同步信號(hào)輸出信號(hào)。
接收的Camera Link相機(jī)時(shí)鐘信號(hào)為60MHz,而標(biāo)準(zhǔn)XGA信號(hào)的時(shí)鐘頻率為65MHz,利用50MHz晶振倍頻,將SDRAM的工作時(shí)鐘控制到166MHz,將有效圖像信號(hào)在SDRAM中進(jìn)行緩存,最大限度地保證在寫入以及讀取圖像信號(hào)時(shí)保證數(shù)據(jù)無(wú)失真。
2.4 VGA模塊輸出
選用ADV7123芯片作為視頻D/A轉(zhuǎn)換器,由于相機(jī)采用8位數(shù)據(jù)流,所以只用到ADV7123高8位端口。經(jīng)過(guò)ADV7123轉(zhuǎn)換后的3路模擬數(shù)據(jù)結(jié)合行、場(chǎng)同步信號(hào),傳輸給VGA接口顯示器進(jìn)行顯示[14-16]。
根據(jù)VESA 1024×768×60Hz的時(shí)序標(biāo)準(zhǔn),其行頻要求為48.363kHz,場(chǎng)頻要求為60Hz,像素時(shí)鐘為65MHz,有效行像素周期數(shù)為1024,有效場(chǎng)像素周期數(shù)為768,而FPGA核心板的晶振為50 MHz的時(shí)鐘信號(hào),所以對(duì)其進(jìn)行PLL鎖相環(huán)產(chǎn)生像素時(shí)鐘。
行周期數(shù)= 65MHz÷48.363kHz = 1344,
幀周期數(shù)= 48.363kHz÷60Hz=806,
行消隱周期數(shù)=1344-1024=320,
場(chǎng)消隱周期數(shù)=806 -768=38。
在顯示信號(hào)消隱期間不進(jìn)行SDRAM中緩存圖像信息的讀取,只有在輸出1024×768有效像素時(shí)讀取信號(hào)。
構(gòu)建hsync行像素計(jì)數(shù)器,當(dāng)hsync=1344時(shí)清零,而當(dāng)行脈沖計(jì)數(shù)≥h_blank(=320)時(shí),行同步信號(hào)輸出高電平1有效,其余在h_blank消隱期內(nèi)輸出低電平0,從而以行計(jì)數(shù)器hsync信號(hào)為單位構(gòu)建場(chǎng)像素計(jì)數(shù)器vsync。當(dāng)場(chǎng)計(jì)數(shù)值≥v_blank(= 38)時(shí)輸出有效信號(hào)高電平1,在v_blank消隱期內(nèi)的輸出低電平0,當(dāng)vsync (=806) 場(chǎng)同步信號(hào)時(shí),場(chǎng)計(jì)數(shù)器清零以此作為場(chǎng)同步信號(hào)vsync。
在防靜電實(shí)驗(yàn)臺(tái)上,將STC-CLC83A數(shù)字相機(jī)和顯示器連接于系統(tǒng)(如圖6),輸入5V+電壓,進(jìn)行測(cè)試。
圖6 系統(tǒng)實(shí)現(xiàn)效果
在顯示器上顯示1024×768×60Hz 實(shí)時(shí)圖像,并對(duì)目標(biāo)區(qū)域進(jìn)行彩色/黑白圖像信號(hào)的相互切換,如圖7所示。
(a) 黑白 (b) 彩色
圖7 圖像切換效果
測(cè)試結(jié)果表明,該系統(tǒng)已經(jīng)實(shí)現(xiàn)了基于Camera Link數(shù)字相機(jī)的小型化要求,支持Camera Link的高速穩(wěn)定信號(hào)的傳輸,滿足特定場(chǎng)所需求,替代Camera Link圖像采集卡進(jìn)行圖像直接顯示。
該小型化實(shí)時(shí)顯示系統(tǒng)針對(duì)于特定場(chǎng)所對(duì)空間以及實(shí)時(shí)性的要求,實(shí)現(xiàn)了摒棄在計(jì)算機(jī)工作環(huán)境下的Camera Link數(shù)字相機(jī)的直接顯示。通過(guò)Camera Link圖像高速采集在FPGA系統(tǒng)中進(jìn)行SDRAM數(shù)據(jù)緩存模塊和VGA信號(hào)產(chǎn)生與輸出,采用撥碼開關(guān)實(shí)現(xiàn)彩色與黑白信號(hào)的切換控制,不僅保證Camera Link實(shí)時(shí)系統(tǒng)的高速穩(wěn)定的特點(diǎn),而且縮小體積,提高了系統(tǒng)的靈活性。
[1] 沈鴿,王美嬌,嵇曉強(qiáng).基于Camera Link 的視頻圖像采集與傳輸系統(tǒng)[J]. 嵌入式與SOC,2011(8):99-100.
[2] 陳炎斌,金剛.基于Camera Link標(biāo)準(zhǔn)的DSP_FPGA高速實(shí)時(shí)數(shù)字圖像處理系統(tǒng)設(shè)計(jì)[J]. 現(xiàn)代科學(xué)儀器,2010, 12(6):61-63.
[3] 王雪松.基于PCI9054的Camera Link圖像采集卡設(shè)計(jì)[J].儀器儀表用戶,2009(16):64-67.
[4] 鐘文峰. 基于 Camera Link 圖像采集卡的設(shè)計(jì)與實(shí)現(xiàn)[D]. 成都:電子科技大學(xué), 2011:9-12.
[5] 黃影. 基于 PCIe 總線的 Camera Link 圖像采集卡設(shè)計(jì)[D]. 大連:大連理工大學(xué), 2013:9-12.
[6] Zhao Wenge, He Huiming. FPGA-based video image processing system research [C]//Chengdu:Computer Science and Information Technology,2010:680-682.
[7] Benkrid K, Crookes D, Smith J, et al. High Level Programming for FPGA Based Image and Video Processing using Hardware Skeletons[C]//Rohnert Park:FCCM01, 2001:219-226.
[8] 孫春鳳, 袁峰,丁振良.基于FPGA 的多通道高速CMOS 圖像采集系統(tǒng)[J]. 計(jì)算機(jī)工程與應(yīng)用,2008, 44(21):46-49.
[9] 董亞則,王順.高速數(shù)字圖像采集顯示系統(tǒng)的設(shè)計(jì)與研究[J].吉林大學(xué)學(xué)報(bào),2011,29(6):543-547.
[10] 于建軍,吳志勇. Camera Link在視頻控制系統(tǒng)中的應(yīng)用[J]. 光機(jī)電信息,2011,28(5):42-45.
[11] 王淵博.基于FPGA的Bayer格式實(shí)時(shí)彩色恢復(fù)系統(tǒng)研究[D].北京:中國(guó)科學(xué)院大學(xué),2013:15-28.
[12] 孫輝,柏旭光,孫麗娜,等.Bayer圖像色彩還原線性插值方法[J]. 液晶與顯示,2013,28(3):418-424.
[13] 莫迪涵, 杜慧敏, 沈緒榜. 基于線性插值法圖像縮放的設(shè)計(jì)與 FPGA 實(shí)現(xiàn)[J]. 西安郵電大學(xué)學(xué)報(bào), 2013,18(3): 52-55.
[14] 王鳴浩,陳濤,吳小霞.基于Camera Link接口的高幀頻數(shù)字圖像采集顯示系統(tǒng)[J].微電子學(xué)與計(jì)算機(jī),2011, 28(3):149-152.
[15] 劉慧,朱勇.基于FPGA 的VGA 彩色圖片的顯示[J]. 科技向?qū)В?011(20):84-85.
[16] 楊小勇,葛彥麟,毛瑞娟. 基于FPGA+A/D的數(shù)據(jù)采集設(shè)計(jì)及驗(yàn)證[J]. 西安郵電學(xué)院學(xué)報(bào), 2011,16(1): 98-102.
[責(zé)任編輯:祝劍]
《西安郵電大學(xué)學(xué)報(bào)》版權(quán)聲明
為適應(yīng)我國(guó)信息化建設(shè)的需要,擴(kuò)大刊物影響,拓寬信息交流渠道,本刊已加入“中國(guó)知網(wǎng)CNKI系列期刊數(shù)據(jù)庫(kù)”、“中國(guó)核心期刊(遴選)數(shù)據(jù)庫(kù)”(萬(wàn)方數(shù)據(jù)——數(shù)字化期刊群)、“中國(guó)期刊網(wǎng)”等數(shù)據(jù)庫(kù)。本刊已許可以上數(shù)據(jù)庫(kù)以數(shù)字化方式復(fù)制、匯編、發(fā)行、信息網(wǎng)絡(luò)傳播本刊所載文章的全文信息。稿件一經(jīng)刊登,將在本刊稿酬中一次性支付著作權(quán)使用報(bào)酬(包括印刷版、光盤版和網(wǎng)絡(luò)版等各種使用方式的報(bào)酬)。作者向本刊提交文章的行為即視為同意我刊上述聲明。
西安郵電大學(xué)學(xué)報(bào)編輯部
A real-time miniaturization system based on Camera Link CCD camera
GONG Jiamin1, CHEN Bo1, ZENG Xiangzhong2
(1.School of Electronics Engineering, Xi’an University of Posts and Telecommunications, Xi’an 710121,China;2.Xi’an Mid-River Photoelectric technology Co.,Ltd, Xi’an 710075,China)
A design of the real-time miniaturization system is designed in this paper. In this system, Cyclone III (series FPGA EP3C40F484) is used to design a real-time display system and asynchronous FIFO and SDRAM are adopted to frame buffer and then transform Camera Link signal input to a 1024×768×60Hz format output. At the meantime, ADV7123 chip is used to transform the signal into an 8 digits format model and the output signals are displayed on a monitor through VGA port. Experiment result shows that this system can transfer and display images through Camera Link without the help of images capture cards. Thus, it allows the images to be switched from black and white to colour.
real-time miniaturization system, Camera Link, FPGA, SDRAM, Bayer
2015-01-16
西安郵電大學(xué)研究生創(chuàng)新基金資助項(xiàng)目(ZL2013-22)
鞏稼民(1962-),男,博士,教授,博導(dǎo),從事光電技術(shù)研究。E-mail:gjm@xupt.edu.cn 陳博(1989-),男,碩士研究生,研究方向?yàn)楣怆妶D像處理。E-mail:tooth_of_dark@sina.com
10.13682/j.issn.2095-6533.2015.03.018
TN27
A
2095-6533(2015)03-0100-05