国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

基于FPGA的圖像實(shí)時處理系統(tǒng)設(shè)計(jì)

發(fā)布時間:2015-6-16 09:49    發(fā)布者:designapp
由于現(xiàn)場實(shí)時測量的需要,機(jī)器視覺技術(shù)越來越多地借助硬件來完成,如DSP芯片、專用圖像信號處理卡等。但是,DSP做圖像處理也面臨著由于數(shù)據(jù)存儲與處理量大,導(dǎo)致處理速度較慢,系統(tǒng)實(shí)時性較差的問題。本文將FPGA的IP核內(nèi)置緩存模塊和乒乓讀寫結(jié)構(gòu)相結(jié)合,實(shí)現(xiàn)了圖像數(shù)據(jù)的緩存與提取,節(jié)省了存儲芯片所占用的片上空間,并且利用圖像預(yù)處理重復(fù)率高,但算法相對簡單的特點(diǎn)和FPGA數(shù)據(jù)并行處理,結(jié)合流水線的結(jié)構(gòu),大大縮短了圖像預(yù)處理的時間,解決了圖像處理實(shí)時性差的問題。

1 系統(tǒng)架構(gòu)和流程簡介

本系統(tǒng)采用了FPGA與DSP相結(jié)合的架構(gòu),綜合了各自的優(yōu)點(diǎn),使系統(tǒng)滿足實(shí)時性要求的同時,又可以在后續(xù)任務(wù)中完成復(fù)雜算法的處理。系統(tǒng)的整體架構(gòu)如圖1所示。

系統(tǒng)上電后,CCD 相機(jī)向AD 轉(zhuǎn)換芯片TVP5150輸入PAL制式模擬圖像信號,TVP5150將模擬信號轉(zhuǎn)換成數(shù)字信號后,以ITU-R BT656格式傳輸?shù)紽PGA,F(xiàn)PGA對采集到的ITU-R BT656格式的圖像數(shù)據(jù)去消隱化后進(jìn)行預(yù)處理,處理完之后傳輸?shù)紻M642的VP0口,VP0以8位RAW 格式接收圖像數(shù)據(jù),并通過EDMA通道存儲到連接在EMIFA接口上的SDRAM 中。經(jīng)過DSP的圖像處理后,將SDRAM 中的圖像數(shù)據(jù)以ITU-R BT656的格式經(jīng)DM642 的VP2 口傳輸?shù)紻A 芯片SAA7121,然后SAA7121進(jìn)行DA轉(zhuǎn)換后,將PAL制式的模擬信號輸出到LCD顯示器上顯示。需要說明的是,TVP5150和SAA7121通過DM642的I2C總線接口配置。


圖1 系統(tǒng)結(jié)構(gòu)框圖

2 FPGA圖像緩存與處理

由于該系統(tǒng)利用FPGA 并行性和高速性來縮減圖像預(yù)處理的時間,因此,F(xiàn)PGA的圖像緩存和預(yù)處理環(huán)節(jié)直接影響到系統(tǒng)的實(shí)時性,是整個系統(tǒng)的核心部分,也是本文所要介紹的重點(diǎn)。根據(jù)圖像預(yù)處理的需求和FPGA內(nèi)部各模塊功能的不同,將其分為4個部分:去消隱化、濾波、閾值分割和邊緣提取。

2.1 去消隱化

FPGA接收TVP5150傳輸?shù)臄?shù)字信號為ITUR BT656格式,該格式除了傳輸4∶2∶2的YCbCr視頻數(shù)據(jù)流外,還包含行、列消隱信號。因此,需要將行列消隱信號剔除掉,以便后期進(jìn)行圖像預(yù)處理。

根據(jù)BT656的固有結(jié)構(gòu),編寫了Verilog硬件語言程序,用于提取BT656中的720×576個像素點(diǎn)的有效視頻數(shù)據(jù),由于圖像處理過程只需要檢測亮度信號(Y分量),因此同時舍去各像素點(diǎn)的色度信號(Cb、Cr分量),僅保留亮度信號作為圖像有效數(shù)據(jù)。在去消隱化過程中,每行起始狀態(tài)里,檢測輸入8位數(shù)據(jù),如果連續(xù)3個輸入信號滿足FF、00、00結(jié)構(gòu),則跳入下一個狀態(tài),判斷下一個8位輸入XY信號,是否為有效圖像標(biāo)志信號(80標(biāo)志該行為偶場圖像數(shù)據(jù),C7標(biāo)志該行為奇場圖像數(shù)據(jù)),若判斷是,則計(jì)數(shù)器計(jì)數(shù),并采集計(jì)數(shù)器為偶數(shù)時的數(shù)據(jù)(即亮度信號),為圖像有效數(shù)據(jù),當(dāng)采集滿720個圖像有效數(shù)據(jù)時,狀態(tài)機(jī)轉(zhuǎn)入初始狀態(tài)繼續(xù)等待FF、00、00結(jié)構(gòu),并依此循環(huán)。
        
2.2 濾波

攝像機(jī)采集的圖像存在各類噪聲,從而對目標(biāo)信息的進(jìn)一步處理產(chǎn)生不利影響,因此,獲取圖像后需要對圖像進(jìn)行濾波。考慮到中值濾波在平滑脈沖噪聲方面非常有效,并且可以保護(hù)圖像尖銳的邊緣的優(yōu)點(diǎn),我們選用3×3中值濾波作為系統(tǒng)的圖像濾波算法。中值濾波模塊包括3個子模塊:乒乓結(jié)構(gòu)讀寫模塊、3×3陣列生成模塊和中值濾波算子模塊,其流程如圖2所示。


圖2 中值濾波模塊流程圖

2.2.1 乒乓結(jié)構(gòu)讀寫模塊

為了節(jié)約芯片成本和電路板的片上空間,圖像數(shù)據(jù)的存儲利用FPGA 上固有的IP核生成雙口RAM 來緩存。由于圖像數(shù)據(jù)量較大,而中值濾波只需要持續(xù)地提取3×3模塊來進(jìn)行數(shù)據(jù)處理,因此,僅需生成4片雙口RAM,每個用于存儲一行的圖像數(shù)據(jù),通過乒乓讀寫結(jié)構(gòu),便可實(shí)現(xiàn)數(shù)據(jù)的緩存。

乒乓讀寫結(jié)構(gòu)是指將輸入數(shù)據(jù)流通過輸入數(shù)據(jù)選擇單元等時地將輸入數(shù)據(jù)分配到兩個數(shù)據(jù)緩存區(qū),并且再寫入某一個緩存區(qū)的過程中,從另外一個緩存區(qū)讀出上個緩存周期寫入的數(shù)據(jù),依此循環(huán),不斷往復(fù)。在本系統(tǒng)中,選用4片1024×8bit的雙口RAM 作為緩存區(qū),在每個緩存周期,向其中1片雙口RAM 中寫入圖像數(shù)據(jù),同時,讀控制模塊從另外3片雙口RAM 中讀出前三個緩存周期已寫入的數(shù)據(jù),用于生成3×3陣列。當(dāng)一行數(shù)據(jù)緩存完成后,寫使能信號跳轉(zhuǎn)到下一個雙口RAM,繼續(xù)進(jìn)行下一行數(shù)據(jù)寫入,讀控制模塊繼續(xù)讀取剩余三行所存儲數(shù)據(jù)。

2.2.2 3×3陣列生成模塊

3×3陣列生成模塊利用了3個并行的24位移位寄存器,如果讀使能信號有效,則在每個時鐘的上升沿,將3個移位寄存器中的數(shù)據(jù)左移8位,然后將從3個雙口RAM 中讀取的數(shù)據(jù)分別填充各自對應(yīng)移位寄存器的后8位,在每個讀取周期內(nèi)循環(huán),直到讀使能信號置低時停止,然后等待下一行數(shù)據(jù)的循環(huán)。這樣,就生成了中值濾波所需要的3×3陣列。需要注意的是,每一幀圖像的第一行和最后一行因?yàn)闆]有相應(yīng)的上下行數(shù)據(jù),因此不能提取3×3陣列,所以需要控制信號將該兩行數(shù)據(jù)的3×3陣列剔除,以滿足圖像處理的準(zhǔn)確性。

在雙口RAM 的讀寫過程中,涉及到讀寫的時序問題,讀寫時序的控制必須滿足建立和保持時間的關(guān)系,以滿足圖像數(shù)據(jù)準(zhǔn)確性的要求。在此,設(shè)計(jì)了一種新型的讀寫時序控制方法,首先,在數(shù)據(jù)傳輸至寫雙口RAM 模塊時,利用一個與雙口RAM 寫時鐘頻率相同,但是相位相差180°的時鐘做同步處理,使數(shù)據(jù)信號和控制信號的上升沿與該時鐘同步,然后,將同步后的數(shù)據(jù)信號和控制信號傳輸?shù)诫p口RAM 的寫數(shù)據(jù)端口,則可以將觸發(fā)采集的寫時鐘的上升沿,恰好置于數(shù)據(jù)信號和控制信號的中央部分,以此保證數(shù)據(jù)寫入的穩(wěn)定性。該讀寫時序控制圖如圖5所示,其中,Clk_W 為寫時鐘,Clk_180°為上文所講的同步時鐘,Data_in為同步前數(shù)據(jù)信號,Data_in1為同步后數(shù)據(jù)信號,由圖可以清楚的顯示,利用這種方法,可以將數(shù)據(jù)信號穩(wěn)定的寫入雙口RAM 中,減少了時序設(shè)計(jì)時的計(jì)算時間,并且可以節(jié)約時序仿真的步驟,大大節(jié)省了開發(fā)時間。


圖3 時序同步示意圖

2.2.3 中值濾波算子模塊

中值濾波的原理是把圖像中某一點(diǎn)的像素值用該點(diǎn)的一個鄰域中各點(diǎn)像素值的中值代替,讓該點(diǎn)像素值更加接近真實(shí)值,從而消除孤立的噪聲點(diǎn)的濾波方法。在本系統(tǒng)中,選用3×3中值濾波模塊,其具體算法為將圖像某一點(diǎn)及其周圍8個點(diǎn)的像素按照大小排列順序,取9個像素值的中間值作為當(dāng)前點(diǎn)的像素值,依次濾除整幀圖像的雜散信號。

通過FPGA實(shí)現(xiàn)9個數(shù)大小的排序,為了節(jié)省處理時間和芯片片上資源,利用快速中值濾波算法,結(jié)合流水線結(jié)構(gòu),分級排序來選取圖像像素的中間值。排序步驟如下:首先對3×3陣列進(jìn)行列排序,然后行排序,最后副對角線排序,得到濾波中值。下圖4為快速中值濾波示意圖,圖中的C代表三輸入排序器,所用比較器為assign結(jié)構(gòu),可以節(jié)約大量比較所用時間,提高系統(tǒng)的實(shí)時性。


圖4 快速中值濾波算法示意圖
        
2.3 閾值分割

由于實(shí)時圖像系統(tǒng)的刷新頻率較快(BT656格式每秒刷新25幀圖像),每幀圖像之間像素灰度均值差別很小,因此,我們可以利用上一幀圖像的統(tǒng)計(jì)值來計(jì)算閾值,為下一幀圖像二值化提供閾值,以適應(yīng)測試環(huán)境變化所引起的閾值變化,閾值統(tǒng)計(jì)采用直方圖的方式。

利用FPGA 的IP 核生成一個256×9 位的DPRAM,用以作為直方圖的計(jì)數(shù)器。以該DPRAM 的地址作為圖像的像素值,而以DPRAM的內(nèi)部存儲值,作為該幀圖像中該像素值的個數(shù),每讀出一位相應(yīng)的像素,對應(yīng)地址的內(nèi)部寄存器加1,以此完成整幀圖像的像素統(tǒng)計(jì)。

整幀圖像像素統(tǒng)計(jì)完成以后,按照地址從小到大的順序,依此累加DPRAM 中的值,當(dāng)累加和不小于整幀圖像像素數(shù)的0.7時,該DPRAM 地址,即為直方圖法得到的閾值,然后利用該閾值,為下一幀圖像做閾值分割。

2.4 邊緣檢測

邊緣檢測在圖像處理中占有很重要的地位,好的邊緣檢測,可以提高圖像的定位精度,減少圖像后續(xù)處理中的數(shù)據(jù)量。綜合考慮各種濾波算法的優(yōu)缺點(diǎn),由于Sobel算法對噪聲容抗較大,并且較易在FPGA上實(shí)現(xiàn),因此,選取Sobel算法作為該系統(tǒng)的邊緣檢測算法。

邊緣檢測模塊類似于濾波模塊,同樣也包括3個主要部分:乒乓結(jié)構(gòu)存儲模塊、3×3陣列生成模塊和Sobel邊緣檢測算子模塊。前兩個部分不再贅述,本文主要介紹Sobel算子模塊。

該算子包含兩組3×3的矩陣,分別為橫向及縱向,將之與圖像作平面卷積,即可分別得出橫向及縱向的亮度差分近似值。

利用FPGA 在硬件并行結(jié)構(gòu)和流水線結(jié)構(gòu)的特點(diǎn),我們將整個Sobel算子分為4級,第一、二級分別將首、末行和首、末列按照算子模板參數(shù)相加并輸出結(jié)果,第三級將上級所得到的行列結(jié)果分別相減,第四級比較上級所得兩個值的絕對值,取絕對值較小的值作為Sobel檢測結(jié)果。如此,每個時鐘周期每級都執(zhí)行各自相應(yīng)的加減法運(yùn)算,并在下個時鐘上升沿將所得數(shù)據(jù)級級傳遞,即可完成3×3陣列的Sobel算法,該模塊的流水線結(jié)構(gòu)如圖5所示。這樣,在每個時鐘周期,都會輸出1個Sobel檢測值,即處理每一行圖像數(shù)據(jù),僅需要n+4個時鐘周期的時間,處理整幀圖像所需最少時間為(n+4)×m×T,其中n為每行像素點(diǎn)個數(shù),m 為行數(shù),T 為時鐘周期。


圖5 Sobel算法的流水線結(jié)構(gòu)

3 實(shí)驗(yàn)結(jié)果分析

根據(jù)系統(tǒng)硬件結(jié)構(gòu)搭建的實(shí)驗(yàn)平臺,連接各模塊接口,編譯并下載程序,運(yùn)行系統(tǒng)。在實(shí)驗(yàn)室環(huán)境下采集圖像,并進(jìn)行濾波和邊緣檢測等處理,在CCS3.3的view/graph菜單下觀測處理圖像效果圖,實(shí)驗(yàn)結(jié)果與原圖對比如圖6所示。由于實(shí)驗(yàn)室光線環(huán)境較為穩(wěn)定,圖像噪聲較少,濾波效果不明顯,但是通過圖6(c)可以明顯看到圖像邊緣檢測效果較好,可以滿足圖像預(yù)處理要求。
針對系統(tǒng)圖像預(yù)處理速度的評估,我們以Sobel邊緣檢測算法作為參考。首先利用CCS3.3的計(jì)時函數(shù),運(yùn)行得到DSP對一幀720×576像素的圖像邊緣提取所用時間為254.83ms,然后通過上文所列公式計(jì)算FPGA 圖像邊緣提取所用最少時間為15.445ms。通過兩種處理方式所用時間的比較,可以明顯得出FPGA在圖像預(yù)處理時的速度優(yōu)勢,完全可以滿足圖像實(shí)時處理的要求,具有很強(qiáng)的實(shí)用性。


圖6 圖像處理結(jié)果

4 結(jié)論
本文設(shè)計(jì)了一種基于FPGA 為核心的圖像處理系統(tǒng),實(shí)現(xiàn)了圖像的采集、傳輸、緩儲和預(yù)處理,經(jīng)過試驗(yàn)證明,處理速度達(dá)到了10ms級別,滿足圖像處理實(shí)時性的要求,有非常廣闊的應(yīng)用前景。
本文地址:http://www.4huy16.com/thread-150622-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • Microchip第22屆中國技術(shù)精英年會上海首站開幕
  • “芯”光璀璨,鵬城共賞——2025 Microchip中國技術(shù)精英年會深圳站回顧
  • 技術(shù)熱潮席卷三城,2025 Microchip中國技術(shù)精英年會圓滿收官!
  • 電動兩輪車設(shè)計(jì)生態(tài)系統(tǒng)
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表