《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于感興趣區(qū)域的可變頻CCD實(shí)時處理系統(tǒng)
基于感興趣區(qū)域的可變頻CCD實(shí)時處理系統(tǒng)
來源:電子技術(shù)應(yīng)用2012年第1期
陳蘇婷1,楊世洪2
1.南京信息工程大學(xué) 江蘇省氣象探測與信息處理重點(diǎn)實(shí)驗室,江蘇 南京210044; 2.中國科學(xué)院光電技術(shù)研究所,四川 成都610209
摘要: 為滿足航空攝影測量需求,設(shè)計了基于感興趣區(qū)域的可變頻CCD實(shí)時處理系統(tǒng)。該系統(tǒng)主要由CCD控制模塊、數(shù)據(jù)實(shí)時處理模塊和顯示模塊組成。系統(tǒng)充分利用FPGA內(nèi)部資源,改變了傳統(tǒng)FPGA配合微處理器的實(shí)現(xiàn)方式,相關(guān)算法和時序邏輯控制均在一片F(xiàn)PGA內(nèi)實(shí)現(xiàn)并通過驗證,可廣泛適用于任何分辨率CCD的智能實(shí)時處理。
中圖分類號: TP274
文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2012)01-0034-04
Intelligent CCD real-time processing system of variable frame rate based on ROI
Chen Suting1,Yang Shihong2
1.Nanjing University of Information Science and Technology, Jiangsu Key Laboratory of Meteorological Observation and Informaiotn Processing,Nanjing 210044,China; 2.The Institute of Optics and Electronics, the Chinese Academy of Sciences, Chengdu 610209,China
Abstract: In order to meet the demand of image shooting in aviation photogrammetry, a real-time high resolution CCD data processing system based on variable frame rate is designed. Through video encoding unit in FPGA, inner register configuration of video encoder is accomplished in the control of FPGA. Thus, high definition video analog signal is implemented. The entire system has been implemented in FPGA and validated. It is suitable for various real-time CCD data processing situations.
Key words : high resolution;variable frame rate;intelligent observing;real-time display;FPGA

    在航空攝影測量領(lǐng)域,常采用高分辨率CCD相機(jī)在高空對物體進(jìn)行拍攝。目前的CCD數(shù)據(jù)處理系統(tǒng)首先在CCD相機(jī)的控制下,輸出海量連續(xù)的CCD數(shù)據(jù)流。然后通過構(gòu)造緩存單元結(jié)構(gòu),緩存接收的CCD圖像數(shù)據(jù)。由于圖像信息量太大,無法實(shí)時處理,需要在飛行過程中將所有圖像實(shí)時記錄在高速硬盤上,最終把緩存的數(shù)據(jù)流輸入至實(shí)時記錄系統(tǒng)實(shí)現(xiàn)高分辨率CCD數(shù)據(jù)的記錄。

    針對飛行過程中的一些特殊情況,需根據(jù)接收的GPS信息(飛行高度、速度等)實(shí)時調(diào)整CCD幀頻[1]。要實(shí)現(xiàn)可變幀率的CCD數(shù)據(jù)處理,對整個CCD數(shù)據(jù)實(shí)時處理能力提出了更高的要求。同時,隨著CCD像元數(shù)的激增,每幀CCD圖像的像素分辨率超大,如何實(shí)現(xiàn)基于高分辨率CCD圖像感興趣區(qū)域的智能實(shí)時觀測是目前航測領(lǐng)域的研究重點(diǎn)。針對可變幀率和智能觀測需求,提出了一種基于感興趣區(qū)域的可變頻CCD實(shí)時處理系統(tǒng)。
    系統(tǒng)根據(jù)可變頻要求,一方面通過在FPGA內(nèi)部設(shè)計UART控制器,觸發(fā)CCD相機(jī)外同步觸發(fā)信號,實(shí)時計算出隨GPS信息不斷變化的CCD幀頻信息;另一方面,提出了一種數(shù)據(jù)提取算法,該算法通過對乒乓緩存的CCD圖像數(shù)據(jù)進(jìn)行可變窗口定位,實(shí)現(xiàn)了感興趣區(qū)域的智能觀察和存儲;最后,通過視頻編碼實(shí)現(xiàn)感興趣區(qū)域的高清晰視頻實(shí)時顯示。整個系統(tǒng)已在FPGA內(nèi)實(shí)現(xiàn)并通過驗證,可廣泛適用于任何分辨率大小CCD的智能實(shí)時處理。
1 系統(tǒng)設(shè)計方案
    該可變頻CCD智能實(shí)時處理系統(tǒng)由CCD控制模塊、數(shù)據(jù)實(shí)時處理模塊和實(shí)時顯示模塊組成。CCD控制模塊:在相機(jī)外同步工作模式下,通過在FPGA內(nèi)設(shè)計UART控制器,接收外部發(fā)來的GPS信息,實(shí)現(xiàn)CCD相機(jī)幀頻的實(shí)時調(diào)整。針對數(shù)據(jù)實(shí)時處理模塊,提出了一種數(shù)據(jù)提取算法:首先提取出原始CCD圖像數(shù)據(jù)的感興趣區(qū)域,該區(qū)域符合SMPTE(1080i)有效的高清晰視頻數(shù)據(jù)分辨率大小,并通過可變窗口定位實(shí)現(xiàn)區(qū)域的智能實(shí)時調(diào)整;然后通過乒乓緩存結(jié)構(gòu)的設(shè)計,實(shí)現(xiàn)感興趣區(qū)域的實(shí)時存儲;最后由實(shí)時顯示模塊,將緩存的感興趣區(qū)域數(shù)據(jù)打包為高清晰視頻格式,通過視頻編碼實(shí)現(xiàn)感興趣區(qū)域的高清晰視頻實(shí)時顯示。圖1給出了整個系統(tǒng)的實(shí)現(xiàn)方案。

2 CCD控制模塊的設(shè)計
2.1 可變頻幀率的設(shè)計與實(shí)現(xiàn)

    在飛行過程中,首先需接收GPS導(dǎo)航信息[3](主要包括飛行器經(jīng)緯度位置、時間(時/分/秒)以及海拔高度、地速等飛行參數(shù),數(shù)據(jù)刷新率為10 Hz/s),根據(jù)信息計算得到當(dāng)前相機(jī)幀頻。由于數(shù)據(jù)刷新率較高,接收數(shù)據(jù)的準(zhǔn)確性是保證后續(xù)工作精度穩(wěn)定的前提條件。
    傳統(tǒng)的處理方式是[4]:通過串口配合相關(guān)電路,接收GPS信息,并計算得到隨飛行高度和速度實(shí)時改變的相機(jī)幀頻。UART(Universal Asynchronous Receiver Transmitter)作為計算機(jī)或外圍設(shè)備的串行通信接口,通常在單片機(jī)中使用。本設(shè)計中改用FPGA完成所有數(shù)據(jù)處理,并設(shè)計了基于PFGA的UART控制器。
    UART控制器包含以下組件:時鐘發(fā)生器、輸入和輸出移位寄存器、發(fā)送/接收控制單元和FIFO緩沖存儲器。時鐘發(fā)生器通常是比特率允許在一個位周期中采樣的倍數(shù)。輸入和輸出移位寄存器是串行和并行之間形式轉(zhuǎn)換的基本方法。發(fā)送或接收控制單元完成數(shù)據(jù)的傳輸和接收器下控制讀或?qū)懣刂七壿嫛IFO緩沖存儲器實(shí)現(xiàn)對發(fā)送/接收數(shù)據(jù)的高速緩存。圖2給出了基于FPGA的UART控制器設(shè)計,可見,整個UART設(shè)計充分利用FPGA的內(nèi)部存儲和時序邏輯資源,減小了系統(tǒng)的面積, 改變了傳統(tǒng)通過單片機(jī)處理器的控制,大大降低了系統(tǒng)功耗,提高了設(shè)計的穩(wěn)定性。

    通過基于FPGA的UART控制器設(shè)計,GPS信息可從UART正確接收,根據(jù)GPS相應(yīng)的飛行參數(shù),可計算得到可變幀率,并輸入至FPGA。本系統(tǒng)每幀CCD的拍攝時間間隔表達(dá)式如下:
  
    式中,v是飛行速度(km/h),H是飛行高度,a是拍攝視角, qx是相鄰的圖片重疊比例。可見,通過接收GPS的飛行速度和飛行高度信息和實(shí)際拍攝要求,即可計算出拍攝時間間隔。根據(jù)時間和頻率之間的關(guān)系,得到CCD當(dāng)前幀速率。
    FPGA在內(nèi)部時鐘的控制下,針對可變幀頻率,通過FPGA的時序邏輯控制,產(chǎn)生外同步控制脈沖信號。這樣,在外同步脈沖的觸發(fā)下,相機(jī)開始積分,積分完畢后,在行、場、消隱同步信號的控制下,讀出CCD相機(jī)數(shù)據(jù)。
2.2 基于高速Cameralink接口的CCD數(shù)據(jù)傳輸
    為提高海量CCD連續(xù)數(shù)據(jù)流的傳輸速率,采用基于Cameralink接口技術(shù)實(shí)現(xiàn)高速CCD數(shù)據(jù)傳輸。Cameralink接口技術(shù)是基于Channel Link技術(shù)發(fā)展而來的。Channel Link是基于LVDS技術(shù)發(fā)展而來的,它是一種用來傳輸視頻數(shù)據(jù)的新技術(shù)。Channel Link使用一個并轉(zhuǎn)串驅(qū)動器和一個串轉(zhuǎn)并接收器傳輸數(shù)據(jù),其最高速率可達(dá)2.38 GHz/s,非常適合高分辨率CCD數(shù)據(jù)實(shí)時處理以及其他高速控制信號的傳輸[5]。
    高分辨率CCD數(shù)字相機(jī)通過Camera Link接口的連接,實(shí)現(xiàn)多位高速并行的數(shù)據(jù)線轉(zhuǎn)換為串行數(shù)據(jù)線輸出。同時,通過接收芯片DS90CR288A實(shí)現(xiàn)對CCD相機(jī)輸出的串行數(shù)據(jù)還原為原始的并行數(shù)據(jù)輸出,并提供了相應(yīng)的CCD相機(jī)通信信號和有效控制信號。對DS90CR288A解碼輸出的CCD相機(jī)數(shù)據(jù)輸入至FPGA,實(shí)現(xiàn)實(shí)時處理。
3 實(shí)時數(shù)據(jù)處理模塊

 


3.1 感興趣區(qū)域提取算法

    實(shí)時處理模塊主要對輸入至FPGA的CCD圖像數(shù)據(jù)進(jìn)行處理。CCD相機(jī)數(shù)據(jù)的時鐘輸出速率為2 MHz×40 MHz,以兩路并行格式輸出,兩路數(shù)據(jù)像元分辨率大小為2 048×1 024,數(shù)據(jù)分辨率為10 bit。為有利于數(shù)據(jù)進(jìn)一步處理,在FPGA內(nèi)構(gòu)造FIFO實(shí)現(xiàn)對兩路并行數(shù)據(jù)的實(shí)時合成。合成后的數(shù)據(jù)分辨率為10 bit,頻率為80 MHz,像元分辨率大小為2 048×2 048。
    在實(shí)際觀測中,需要實(shí)時提取感興趣區(qū)域。設(shè)原始圖像分辨率大小為M×N,感興趣區(qū)域分辨率大小為m×n。由于CCD原始數(shù)據(jù)分辨率遠(yuǎn)大于感興趣區(qū)域數(shù)據(jù)分辨率,提出了一種感興趣區(qū)域提取算法。算法設(shè)計思路如下:
    (1)通過UART接收當(dāng)前波門位置信息(Rstart,Rwidth,Cstart,Cwidth),同時波門位置信息實(shí)時寫入FPGA。其中,Rstart、Rwidth分別表示在像素時鐘的作用下,原始圖像對應(yīng)的行起始地址和行寬;Cstart、Cwidth分別表示在像素時鐘的作用下,列起始地址和列寬。
    (2)在FPGA中構(gòu)造4個專用寄存器分別用來動態(tài)存儲上述波門位置信息(Rstart,Rwidth,Cstart,Cwidth)。
    (3)在像素時鐘的控制下,在FPGA內(nèi)構(gòu)造兩個計數(shù)器分別對每行、每列像素個數(shù)進(jìn)行計數(shù)。Pi、Qj分別表示當(dāng)前行、列計數(shù)值。
    (4)構(gòu)造波門判別函數(shù)模型,如判別函數(shù)為真,即當(dāng)前計數(shù)值在波門信息范圍內(nèi)時,對于圖像數(shù)據(jù)予以保留,否則予以舍棄。判別函數(shù)如式(2)所示。
    
    當(dāng)一幀圖像數(shù)據(jù)接收完畢時,即完成了對當(dāng)前幀圖像的感興趣區(qū)域數(shù)據(jù)提取。當(dāng)下一幀數(shù)據(jù)輸入且波門位置改變時,則返回(1),重復(fù)上述過程即可。
3.2 高速緩存的設(shè)計
    在實(shí)時抽取后,保留下的數(shù)據(jù)分辨率大小與高清晰模擬視頻有效數(shù)據(jù)分辨率相同。但兩者在速率和幀頻上都不相等(相機(jī)數(shù)據(jù)速率為80 MHz,幀頻為變量,高清晰視頻數(shù)據(jù)格式選擇速率為74.25 MHz,幀頻為30幀/s,每幀分為奇場和偶場的格式),因此需要為變頻的CCD圖像感興趣區(qū)域和恒速的視頻編碼之間構(gòu)造一個適應(yīng)通道——高速緩存結(jié)構(gòu)。常用的緩存結(jié)構(gòu)主要有以下三種形式[6]:
    (1)FIFO結(jié)構(gòu):能夠達(dá)到很高的傳輸速度和效率,且由于省去了地址線而有利于PCB 板布線。缺點(diǎn)是只能順序讀寫數(shù)據(jù),因而顯得比較呆板。
    (2)雙口RAM結(jié)構(gòu): 具有兩套獨(dú)立的數(shù)據(jù)、地址和控制總線,能達(dá)到很高的傳輸速度,并且具有隨機(jī)存取的優(yōu)點(diǎn)。缺點(diǎn)是大容量的高速雙口RAM 硬件復(fù)雜度高,價格昂貴。
    (3)SRAM乒乓緩存結(jié)構(gòu):可隨機(jī)存取,同時較大容量的高速SRAM容易得到且價格適中。缺點(diǎn)是切換控制電路比較復(fù)雜。
    綜合考慮以上三種高速緩存方案,在本設(shè)計單元中,選用SRAM乒乓緩存方案。具體設(shè)計流程如下:在第一個緩沖周期,將輸入數(shù)據(jù)流緩存到第一片SRAM中;在第二個緩沖周期,通過控制信號的切換,將輸入的數(shù)據(jù)流緩存到第二片SRAM中,并將第一片SRAM緩存的第一個周期的數(shù)據(jù)通過控制送入下一處理單元(視頻編碼單元);在第三個緩沖周期,通過控制權(quán)的再次切換,將輸入的數(shù)據(jù)流緩存到第一片SRAM,并將第二片SRAM緩存的第二個周期的數(shù)據(jù)通過控制權(quán)的切換,送到下一處理單元。如此循環(huán),周而復(fù)始,很好地完成對數(shù)據(jù)流的無縫緩沖和處理。
4 實(shí)時顯示模塊
4.1 基于FPGA的高清晰視頻數(shù)據(jù)打包

    由于從數(shù)據(jù)實(shí)時處理單元SRAM 讀出的是純粹圖像數(shù)據(jù), 因此首先要將讀出數(shù)據(jù)打包為符合SMPTE274 標(biāo)準(zhǔn)的1080i 高清晰視頻格式,最終實(shí)現(xiàn)高清晰的模擬視頻顯示。
    首先簡單介紹符合SMPTE274標(biāo)準(zhǔn)的1080i高清晰模擬視頻格式[7]。圖3給出了高清晰視頻數(shù)據(jù)包格式。其中,每個EAV 和SAV 定時基準(zhǔn)信號由4 個字的序列組成,格式如下:FF、00、FF、XY(數(shù)值以16進(jìn)制表示,F(xiàn)F、00留供定時基準(zhǔn)信號用) 。頭三個是固定前綴,第四個字包含定義第二場標(biāo)識、場消隱狀態(tài)和行消隱狀態(tài)的信息。每行有效數(shù)據(jù)像素為1 920個像素,行消隱期為272個像素。
    對數(shù)據(jù)進(jìn)行打包實(shí)際就是用FPGA產(chǎn)生包頭信息、消隱期的填充數(shù)據(jù)以及Y分量的數(shù)據(jù)和Cb、Cr分量的數(shù)據(jù)復(fù)合,再進(jìn)一步將視頻數(shù)據(jù)和包頭信息、填充數(shù)據(jù)合并,最終產(chǎn)生符合上述定義格式標(biāo)準(zhǔn)的數(shù)據(jù)包。在具體實(shí)現(xiàn)過程中,F(xiàn)PGA要設(shè)計兩個計數(shù)器,一個用來進(jìn)行行計數(shù),另一個用來對每行的像素進(jìn)行計數(shù)。根據(jù)兩個計數(shù)器的值,在相應(yīng)的地方寫上包頭信息,在消隱期填上填充數(shù)據(jù),而在有效行的有效像素期,F(xiàn)PGA 的輸出來自SRAM 輸出的原始相機(jī)數(shù)據(jù)。這樣,在FPGA 里的視頻數(shù)據(jù)復(fù)合成模塊,用74.25 MHz 的時鐘將Y分量和Cb、Cr分量按格式要求的4:2:2格式復(fù)合成高清晰視頻數(shù)據(jù)流,如圖3所示。


4.2 基于FPGA的視頻編碼芯片控制和實(shí)現(xiàn)
    在完成對數(shù)據(jù)的打包后,需要對視頻芯片內(nèi)部寄存器進(jìn)行配置并最終轉(zhuǎn)換為模擬視頻顯示。ADV7300A支持I2C總線通信協(xié)議。傳統(tǒng)的工作方式通常使用單片機(jī)實(shí)現(xiàn)對I2C總線接口的控制。然而,為減少設(shè)計資源并提高FPGA的使用效率,設(shè)計了基于FPGA的I2C總線控制器。
    I2C總線控制器主要包括以下幾個單元:數(shù)據(jù)緩存單元、移位寄存器單元、I2C總線傳輸控制單元和分頻單元。其中,數(shù)據(jù)緩存單元實(shí)現(xiàn)對如初始化ADV7300的數(shù)據(jù)進(jìn)行緩存,這里緩存單元即通過FPGA內(nèi)部的RAM存儲即可。
    移位寄存器單元實(shí)現(xiàn)數(shù)據(jù)的并-串轉(zhuǎn)換。由于FPGA內(nèi)部的緩存單元的數(shù)據(jù)位寬為8 bit,而I2C總線上傳輸?shù)奈粚挒? bit,所以要進(jìn)行并串轉(zhuǎn)換,且需滿足數(shù)據(jù)高位在前,低位在后。通過構(gòu)造移位寄存器,可在時序控制邏輯模塊的控制下根據(jù)讀寫使能信號對數(shù)據(jù)進(jìn)行正確處理。
    I2C總線傳輸控制單元是設(shè)計的核心,根據(jù)I2C總線傳輸協(xié)議,整個傳輸過程可以分為空閑、開始、發(fā)送數(shù)據(jù)、接收數(shù)據(jù)、停止5個狀態(tài)。當(dāng)I2C總線處于空閑狀態(tài)且驅(qū)動信號為高電平時開始運(yùn)作I2C模塊, 并根據(jù)讀/寫判斷進(jìn)入下一狀態(tài),即進(jìn)行傳輸數(shù)據(jù)或接收數(shù)據(jù)。當(dāng)數(shù)據(jù)傳輸完畢, 跳入停止?fàn)顟B(tài)。因此,在FPGA內(nèi)設(shè)計有限狀態(tài)機(jī)的結(jié)構(gòu)實(shí)現(xiàn)對I2C總線的傳輸時序控制,其狀態(tài)轉(zhuǎn)移如圖4所示。

    分頻單元則根據(jù)I2C總線傳輸速率,通過對FPGA的全局時鐘進(jìn)行分頻,以滿足I2C總線的傳輸速率要求。
    通過在FPGA內(nèi)實(shí)現(xiàn)基于I2C總線控制器的設(shè)計,很好地完成了FPGA對視頻編碼芯片ADV7300內(nèi)部寄存器的配置和讀寫,最終實(shí)現(xiàn)高清晰模擬視頻顯示。目前,該設(shè)計已通過驗證,并成功應(yīng)用于某航空攝影測量工程,具有很高的工程應(yīng)用價值。
參考文獻(xiàn)
[1] 陳蘇婷,吳欽章,楊世洪.航空攝影測量用高清晰視頻編碼顯示系統(tǒng)設(shè)計[J].半導(dǎo)體光電,2007,28(4):596-600.
[2] 陳蘇婷,楊世洪.基于IB-IWT實(shí)時圖像壓縮的FPGA設(shè)計與實(shí)現(xiàn)[J].信息與控制,2009,38(1):145-149.
[3] 高文武,賀賽先.基于GPS的CCD相機(jī)同步控制器[J]. 武漢大學(xué)學(xué)報,2004,29(8):744-746.
[4] 宋杰,何友,唐小明.雷達(dá)視頻回波信號的實(shí)時采集、顯示與存儲系統(tǒng)[J].數(shù)據(jù)采集與處理,2006,21(1):90294.
[5] 王明富,楊世洪,吳欽章.大面陣CCD圖像實(shí)時顯示系統(tǒng)的設(shè)計[J].光學(xué)精密工程,2010,18(9):2053-2059.
[6] 李武森,遲澤英,陳文建.高速DSP圖像處理系統(tǒng)中的乒乓緩存結(jié)構(gòu)研究[J].光電子技術(shù)與信息,2005,18(3):76279.
[7] Analog Devices,Inc.ADV7300A datasheet[EB/OL].http//www.analog.com.2005.
[8] 何立民.I2C總線應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,1995.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 亚洲精品午夜国产va久久成人 | 国产三级在线视频观看 | 免费一级特黄a | 一级特黄特黄的大片免费 | 九九精品免视频国产成人 | 九九香蕉 | 久久精品国产三级不卡 | 欧美日韩综合高清一区二区 | 亚洲男人天堂久久 | 美女视频免费看视频网站 | 国产国语一级毛片全部 | 亚洲欧美日韩综合久久久久 | 欧美另类精品一区二区三区 | 一个人看的免费高清视频日本 | 日本视频在线免费播放 | 中国一级毛片aaa片 中国一级毛片录像 | 久久久精品久久久久三级 | 久草最新视频 | 国产在线精品观看一区 | 国产中文字幕在线播放 | 草草影| 99视频国产精品 | 欧美日韩国产人成在线观看 | 琪琪午夜伦埋大全影院 | 亚洲精品国产成人7777 | 亚洲第一影院 | 亚洲系列国产系列 | 99九九视频 | 国产精品久久久久9999小说 | 美女张开腿让男人桶爽动漫视频 | 欧美一级一极性活片免费观看 | 欧美一级毛片欧美毛片视频 | 久久精品中文字幕不卡一二区 | 国产精品久久久久999 | 亚洲一区亚洲二区 | aaa毛片在线| 亚洲欧美日韩国产一区二区精品 | 国产色a| 福利视频专区 | 国产精品成人aaaaa网站 | 毛片免费大全 |