《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的高速圖像數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
基于FPGA的高速圖像數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
2015年電子技術(shù)應(yīng)用第8期
王浩健,,姚遠(yuǎn)程,秦明偉
西南科技大學(xué) 信息工程學(xué)院 特殊環(huán)境機(jī)器人技術(shù)四川省重點(diǎn)實(shí)驗(yàn)室,四川 綿陽(yáng)621010
摘要: 介紹了新型高速數(shù)字相機(jī)PT-41-04M60的基本功能和配置方法,4M60相機(jī)使用Camera Link接口傳輸數(shù)據(jù)。根據(jù)Camera Link接口標(biāo)準(zhǔn)與協(xié)議,,以FPGA為主控單元,設(shè)計(jì)了Camera Link協(xié)議的硬件電路實(shí)現(xiàn)圖像采集。FPGA開(kāi)發(fā)板采用Xilinx公司Virtex-6系列的XC6VLX240T,,充分滿足設(shè)計(jì)需求。實(shí)驗(yàn)結(jié)果證明系統(tǒng)能夠成功地實(shí)現(xiàn)圖像采集并顯示,。
中圖分類號(hào): TN911
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2015.08.037

中文引用格式: 王浩健,,姚遠(yuǎn)程,秦明偉. 基于FPGA的高速圖像數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2015,,41(8):131-134.
英文引用格式: Wang Haojian,,Yao Yuancheng,Qin Mingwei. Design of high-speed image data acquisition system based on FPGA[J].Application of Electronic Technique,,2015,,41(8):131-134.
Design of high-speed image data acquisition system based on FPGA
Wang Haojian,Yao Yuancheng,,Qin Mingwei
Robot Technology Used for Special Envronment Key Laboratory of Sichuan Province, College of Information Engineering, Southwest University of Science and Technology, Mianyang 621010,,China
Abstract: This paper introduces the basic function and the configuration of a new type of high-speed digital camera called PT-41-04M60. This camera uses Camera Link interface to transmit data. According to the standard and protocol of Camera Link interface, FPGA is taken as the main controller in this system to design the hardware circuit of Camera Link interface to realize image data acquisition. FPGA development board uses Xilinx company Virtex-6 series of XC6VLX240T,which fully meets the design requirements. The experimental results show this system can successfully achieve image acquisition and display.
Key words : high-speed camera,;image acquisition,;FPGA;Camera Link

  

0 引言

    高速圖像數(shù)據(jù)采集系統(tǒng)實(shí)現(xiàn)高速相機(jī)拍攝圖像數(shù)據(jù)的采集,、實(shí)時(shí)傳輸,、處理和圖像數(shù)據(jù)存儲(chǔ)。通過(guò)采集的高速數(shù)據(jù),,可以觀測(cè)到高速運(yùn)動(dòng)物體的細(xì)微變化,,從而能夠更全面地改進(jìn)目標(biāo),提高目標(biāo)性能,。圖像數(shù)據(jù)采集使用高速面陣相機(jī),,相機(jī)數(shù)據(jù)傳輸接口為Camera Link接口。通過(guò)Camera Link接口將圖像數(shù)據(jù)傳輸?shù)?a class="innerlink" href="http://forexkbc.com/tags/FPGA" title="FPGA" target="_blank">FPGA開(kāi)發(fā)板上進(jìn)行實(shí)時(shí)處理,,處理后的數(shù)據(jù)能夠用顯示器顯示以便更好地觀測(cè),。本文主要研究高速相機(jī)和Camera Link接口協(xié)議[1],設(shè)計(jì)一個(gè)能夠?qū)崿F(xiàn)數(shù)據(jù)實(shí)時(shí)高速傳輸?shù)腃amera Link接口電路,,節(jié)省FPGA內(nèi)部資源消耗,。同時(shí)通過(guò)FPGA的緩存處理,在VGA顯示器上實(shí)現(xiàn)實(shí)時(shí)圖像顯示,。

    Camera Link協(xié)議是由一些高速相機(jī)生產(chǎn)商和圖像采集卡供應(yīng)商為了降低相機(jī)與采集卡之間連接的成本而聯(lián)合推出的一個(gè)標(biāo)準(zhǔn),。設(shè)計(jì)選用了Teledyne Dalsa公司的PT-41-04M60[2]相機(jī)(以下簡(jiǎn)稱為4M60),F(xiàn)PGA板卡采用Xilinx公司Virtex-6系列的XC6VLX240T,,相機(jī)數(shù)據(jù)通過(guò)Camera Link接口傳輸?shù)紽PGA芯片上進(jìn)行高速緩存處理,。

1 PT-41-04M60相機(jī)簡(jiǎn)介

    4M60相機(jī)[2]采用Teledyne DALSA專利的CMOS傳感技術(shù),在全分辨率4M時(shí)幀率可達(dá)62 f/s,。4M60相機(jī)分辨率為2 352×1 728,,像素尺寸7.4 μm×7.4 μm,有8/10 bit可選數(shù)據(jù)位,,4路傳感器通道,,基本(Base)和中級(jí)(Medium)兩種配置方式。相機(jī)上電后電源指示燈會(huì)閃爍一段時(shí)間表示正在初始化,初始化完畢之后指示燈變?yōu)榉€(wěn)定的綠色,。在實(shí)際操作中可依據(jù)相機(jī)電源指示燈狀態(tài)變化情況來(lái)判斷相機(jī)是否正常工作,。

    計(jì)算機(jī)可通過(guò)向串口發(fā)送命令來(lái)控制相機(jī)工作狀態(tài),異步串口命令[3]為ASCII字符,,默認(rèn)1位起始位,,1位停止位,無(wú)奇偶校驗(yàn)位和握手位,,波特率默認(rèn)為9 600 b/s,,通過(guò)串口命令sbr m可以改變波特率,m可選擇9 600(默認(rèn)),、19 200,、57 600、115 200幾種,。相機(jī)上電后的波特率總是9 600 b/s,,通過(guò)rc命令可重置相機(jī),但重置后的波特率不是上電后的9 600 b/s,,而是最近一次使用過(guò)的波特率,。

    串口每條命令以回車鍵<CR>結(jié)束,相機(jī)會(huì)以ok>或Error x:Error Message>回應(yīng),。x為錯(cuò)誤的類型,,Error Message為錯(cuò)誤的具體內(nèi)容,‘>’通常為相機(jī)發(fā)送的最后一個(gè)符號(hào),,發(fā)送命令大小寫均支持,。gcp<CR>為讀取相機(jī)當(dāng)前配置數(shù)據(jù)。用戶可以根據(jù)實(shí)際需求配置相機(jī)參數(shù),,相機(jī)指示燈變成穩(wěn)定的綠色后就會(huì)自動(dòng)向Camera Link接口傳輸圖像數(shù)據(jù),。

2 Camera Link標(biāo)準(zhǔn)與協(xié)議

    Camera Link接口主要是利用低壓差分信號(hào)(LVDS),將相機(jī)采集的并行數(shù)據(jù)通過(guò)LVDS轉(zhuǎn)換成串行數(shù)據(jù)高速傳輸,,在接收端再將串行數(shù)據(jù)轉(zhuǎn)換成并行,,以便于FPGA進(jìn)行處理。Camera Link協(xié)議主要包括相機(jī)信號(hào)和Channel Link技術(shù)兩個(gè)方面,。

2.1 相機(jī)信號(hào)

    Camera Link接口規(guī)定了相機(jī)信號(hào)主要分為高速視頻信號(hào),、相機(jī)控制信號(hào)、串行通信信號(hào)和電源,。

    (1)高速視頻信號(hào)

    高速視頻信號(hào)傳輸圖像數(shù)據(jù)信號(hào),,其中包括圖像數(shù)據(jù)和圖像使能信號(hào)。使能信號(hào)有4個(gè):幀有效(FVAL),、行有效(LVAL)、數(shù)據(jù)有效(DVAL)和備用(Spare)。FVAL為高時(shí)表明輸出有效行,;LVAL為高時(shí)表明輸出有效像素,;DVAL為高時(shí)表明輸出有效數(shù)據(jù)。備用信號(hào)(Spare)留作備用,。相機(jī)必須給每個(gè)Channel Link芯片提供上述4個(gè)使能信號(hào),。

    (2)高速相機(jī)控制信號(hào)

    Camera Link協(xié)議定義了4對(duì)LVDS信號(hào)用來(lái)傳輸相機(jī)控制信號(hào),分別是Camera Control 1(CC1),、Camera Control 2(CC2),、Camera Control 3(CC3)、Camera Control 4(CC4),。4對(duì)信號(hào)是由圖像采集卡發(fā)給相機(jī),,相機(jī)生產(chǎn)商可以根據(jù)自己的需要來(lái)定義這4組信號(hào)。本文使用的4M60相機(jī)將CC1作為外同步信號(hào)(EXSYNC)來(lái)觸發(fā)相機(jī)輸出幀數(shù)據(jù),。其他3個(gè)信號(hào)未使用,。

    (3)低速串行通信信號(hào)

    Camera Link協(xié)議使用了兩對(duì)LVDS信號(hào)來(lái)傳輸相機(jī)與圖像采集卡之間的異步串行通信信號(hào),分別為:由相機(jī)發(fā)給采集卡的信號(hào)SerTFG(Serial communications to The Frame Grabber)和采集卡發(fā)送給相機(jī)的信號(hào)SerTC(Serial communications to The Camera),。兩對(duì)信號(hào)實(shí)現(xiàn)了計(jì)算機(jī)與相機(jī)的通信,,計(jì)算機(jī)可以通過(guò)串口用ASCII字符對(duì)相機(jī)進(jìn)行配置。

    (4)電源

    Camera Link連接器并不為相機(jī)提供電源,,相機(jī)要通過(guò)獨(dú)立的電纜來(lái)供電,,本設(shè)計(jì)中使用的4M60相機(jī)的電源插座如圖1所示,其引腳配置[4]如表1所示,。

jsj3-t1.gif

jsj3-b1.gif

2.2 Channel Link

    Channel Link接口是利用低壓差分信號(hào)傳輸視頻信號(hào)的新技術(shù),。如圖2[2]所示為Channel Link主要原理圖,Channel Link是由一個(gè)并轉(zhuǎn)串驅(qū)動(dòng)器和一個(gè)串轉(zhuǎn)并接收器構(gòu)成一對(duì)信號(hào)傳輸線路,。在一片Channel Link接口芯片上有5對(duì)這樣的信號(hào),,4對(duì)用來(lái)傳輸數(shù)據(jù),另外一對(duì)用來(lái)傳輸時(shí)鐘信號(hào),。傳輸數(shù)據(jù)時(shí),,在并轉(zhuǎn)串驅(qū)動(dòng)器端,發(fā)送數(shù)據(jù)按照7:1的比例串行化,,這樣就將28 bit數(shù)據(jù)串行轉(zhuǎn)化為4路數(shù)據(jù),,分別通過(guò)差分信號(hào)對(duì)傳輸;在接收器端又將4路串行數(shù)據(jù)轉(zhuǎn)換回28 bit并行數(shù)據(jù),,方便FPGA進(jìn)行數(shù)據(jù)處理,。

jsj3-t2.gif

3 系統(tǒng)設(shè)計(jì)

    高速圖像采集系統(tǒng)一般分為圖像獲取、圖像接收,、圖像控制,、圖像存儲(chǔ)和圖像顯示幾個(gè)部分,,本設(shè)計(jì)主要是實(shí)現(xiàn)圖像的接收和顯示,總體框圖[5]如圖3所示,。

jsj3-t3.gif

3.1 圖像的接收和接口控制

    圖像數(shù)據(jù)由高速相機(jī)發(fā)送過(guò)來(lái),,在基本模式下相機(jī)發(fā)送的數(shù)據(jù)包括了24 bit圖像數(shù)據(jù)和4個(gè)同步信號(hào),并串轉(zhuǎn)換為4路串行差分信號(hào),。在接收端需要將這4路串行信號(hào)轉(zhuǎn)換為FPGA能夠識(shí)別的并行CMOS/TTL信號(hào),,所以在圖像采集端就需要串并轉(zhuǎn)換芯片實(shí)現(xiàn)信號(hào)轉(zhuǎn)換。本設(shè)計(jì)采用了美國(guó)國(guó)家半導(dǎo)體公司的DS90CR288A[6]芯片實(shí)現(xiàn)上述要求,。此外,,相機(jī)控制信號(hào)和串行通信信號(hào)也需要轉(zhuǎn)換芯片,分別使用美國(guó)國(guó)家半導(dǎo)體公司的DS90LV031A和DS90LV019芯片實(shí)現(xiàn),?;九渲媚J骄唧w實(shí)現(xiàn)框圖如圖4所示。

jsj3-t4.gif

    如圖4,,Camera Link接口選用3M公司生產(chǎn)的MDR26作為信號(hào)傳輸?shù)倪B接器,。在基本模式下相機(jī)端和采集卡端各有一個(gè),中級(jí)和高級(jí)模式下則各有兩個(gè)MDR26連接器,。其詳細(xì)引腳接口可參照文獻(xiàn)[1],。FPGA接收288A芯片轉(zhuǎn)換的28 bit 數(shù)據(jù),并可根據(jù)相機(jī)提供的FVAL,、LVAL和DVAL 3個(gè)同步信號(hào)將接收到的數(shù)據(jù)通過(guò)液晶顯示器顯示出來(lái),。FPGA還可以通過(guò)019和031A芯片實(shí)現(xiàn)對(duì)相機(jī)的控制,例如設(shè)置曝光模式,、輸出模式,、外同步等。

    圖5為Camera Link接口基本(Base)配置模式的硬件實(shí)現(xiàn)原理圖,。中級(jí)(Medium)配置比圖5多了一個(gè)MDR26連接器和一塊288A芯片,,連接方法與圖5類似。圖中最右邊的28個(gè)引腳為采集到的圖像數(shù)據(jù)和同步信號(hào)的輸出引腳,,將采集到的數(shù)據(jù)送到FPGA的FMC連接器上,,這樣FPGA就可以方便地對(duì)數(shù)據(jù)進(jìn)行操作。圖5中每對(duì)差分對(duì)之間跨接一個(gè)100 ?贅的電阻,,用來(lái)確保信號(hào)的完整性,,減少終端信號(hào)的反射。硬件模塊搭建完畢,,就可以進(jìn)行數(shù)據(jù)的采集,。圖6所示為圖像數(shù)據(jù)采集的時(shí)序圖,從圖中可以看出,,相機(jī)輸出的FVAL和LVAL信號(hào)都為周期信號(hào),,第一個(gè)FVAL低電平出發(fā)相機(jī)發(fā)送數(shù)據(jù),,當(dāng)FVAL和LVAL同時(shí)為低電平時(shí),數(shù)據(jù)無(wú)效,。FVAL的兩個(gè)低電平之間為一行數(shù)據(jù),。

jsj3-t5.gif

jsj3-t6.gif

3.2 圖像的顯示

    4M60相機(jī)在Medium模式下,,可以同時(shí)輸出4路(Taps)80 MHz數(shù)據(jù),,即一個(gè)時(shí)鐘周期可以同時(shí)輸出4個(gè)像素點(diǎn)的數(shù)據(jù)。像素點(diǎn)的輸出方式如圖7所示,,像素?cái)?shù)據(jù)從屏幕左邊到右邊,、從屏幕下方到上方依次輸出。4通道輸出方式下,,4個(gè)通道依次輸出像素點(diǎn),,即通道1依次輸出第1、5,、9,、13、17…2 349個(gè)像素點(diǎn)的數(shù)據(jù),。

jsj3-t7.gif

    像素4通道同時(shí)輸出時(shí),,每個(gè)通道的時(shí)鐘率為80 MHz,4個(gè)通道同時(shí)輸出則為320 MHz的數(shù)據(jù)率[3],。而VGA顯示標(biāo)準(zhǔn)中,,最大只能顯示108 MHz、1 280×1 024分辨率的圖像,,達(dá)不到要求,。所以在顯示過(guò)程中選一路數(shù)據(jù)進(jìn)行顯示來(lái)驗(yàn)證設(shè)計(jì)結(jié)果。此時(shí),,圖片的分辨率就變?yōu)?88×432,,根據(jù)VGA顯示標(biāo)準(zhǔn)表,選擇640×480@60顯示標(biāo)準(zhǔn),,60為每秒顯示幀數(shù),,與相機(jī)要求匹配,但是640×480顯示標(biāo)準(zhǔn)的時(shí)鐘只有25 MHz,,達(dá)不到相機(jī)的數(shù)據(jù)率,,所以在FPGA中采用了乒乓存儲(chǔ)結(jié)構(gòu)[7]對(duì)數(shù)據(jù)進(jìn)行緩存,從而達(dá)到實(shí)時(shí)顯示的效果,,顯示效果如圖8所示,。圖像未經(jīng)處理顯示效果略有失真,但總體還是比較理想,。

jsj3-t8.gif

4 結(jié)論

    本文根據(jù)Camera Link協(xié)議要求,,設(shè)計(jì)和實(shí)現(xiàn)了Camera Link硬件電路,。充分利用FPGA的高速特性,將采集到的高速圖像數(shù)據(jù)信號(hào)以幀為單位選擇性地送到顯示器上進(jìn)行顯示,,達(dá)到了單路60 f/s的顯示速率,,提高了圖像處理系統(tǒng)圖像接收部分的數(shù)據(jù)傳輸量和數(shù)據(jù)傳輸速率。

參考文獻(xiàn)

[1] Basler.Specification of the camera link interface standard for digital cameras and frame grabbers[Z].Ahrensburg,,Germany:Basler,,2000.

[2] DALSA. Falcon 4M30 and 4M60 monochrome and color camera manual[Z].2011.

[3] 郝偉,朱明.新型數(shù)字相機(jī)DS-21-01M60的原理及其硬件接口設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2007,,33(2):56-59.

[4] DALSA.Teledyne DALSA implementation road map[Z].Revision level 02.2011.

[5] 朱齊丹,劉進(jìn)業(yè),,康嶺.Camera Link硬件接口電路設(shè)計(jì)[J].應(yīng)用科技,,2008,35(10):57-60.

[6] National Semiconductor.DS90CR288 28-Bit camera link-75MHz datasheet[Z].Santa Clara,,USA:National Semiconductor Corporation,,2002.

[7] 董琰,彭琦,,李健志,,等.基于Camera Link協(xié)議的CCD圖像采集系統(tǒng)[J].吉林大學(xué)學(xué)報(bào):信息科學(xué)版,2010,,28(4):372-377.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。