亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于fpga和dsp的機器視覺系統(tǒng)的制作方法

文檔序號:6339747閱讀:283來源:國知局
專利名稱:一種基于fpga和dsp的機器視覺系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及嵌入式機器視覺領(lǐng)域,尤其涉及基于FPGA (FieldProgrammable Gate Array,現(xiàn)場可編程門陣列)和DSP(Digital SignalProcessing,數(shù)字信號處理器)的嵌入 式機器視覺系統(tǒng)。
背景技術(shù)
機器視覺技術(shù)是計算機學(xué)科的一個重要分支,它綜合了光學(xué)、機械、電子、計算機 軟硬件等方面的技術(shù),涉及到計算機、圖像處理、模式識別、人工智能、信號處理、光機電一 體化等多個領(lǐng)域。目前大多數(shù)機器視覺系統(tǒng)都是基于通用計算機的視覺系統(tǒng)。此類系統(tǒng)通常包括攝 像頭,圖像采集卡和用于圖像處理的通用計算機(PC、普通工控機、PC-104工控機、筆記本 計算機)。視頻圖像通過圖像采集卡轉(zhuǎn)化為數(shù)字信號傳送給計算機進行處理。用戶可根據(jù) 實際需要在市場上選用不同的圖像采集卡和通用計算機,并在計算機中寫入有效的圖像處 理算法。基于計算機的視覺系統(tǒng)具有系統(tǒng)通用性強,配置靈活,實現(xiàn)容易等優(yōu)點。但是基于 通用計算機的視覺系統(tǒng)也有一些不可克服的缺點,如體積大、重量大、系統(tǒng)集成度差、功耗 高等。對于一些對體積、重量和功耗要求嚴格的應(yīng)用場合,基于通用計算機的視覺系統(tǒng)顯然 就不能滿足要求。隨著DSP、FPGA、ARM等嵌入式處理器性能的提高,基于嵌入式處理器的視 覺系統(tǒng)得到了很好的發(fā)展,如現(xiàn)有的一些視覺系統(tǒng)采用了單一處理器DSP或FPGA作為處理 器,這些視覺系統(tǒng)均具有系統(tǒng)集成度高、體積小和功耗低的優(yōu)點,但由于單一的嵌入式處理 處理性能不及通用計算機的處理能力,因此此類系統(tǒng)處理能力較弱,實時性較差,合適用于 一些對功耗和體積要求高,處理數(shù)據(jù)量不大、實時性要求不高的場合。

發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種具有系統(tǒng)集成度高、體積小、重量輕、實時性好等優(yōu)點 的基于FPGA和DSP的機器視覺系統(tǒng)。為達到此目的,本發(fā)明基于FPGA和DSP的機器視覺系統(tǒng)的技術(shù)方案如下該系統(tǒng) 以千兆以太網(wǎng)口作為圖像數(shù)據(jù)輸入接口 ;使用FPGA內(nèi)部電路實現(xiàn)圖像的高速采集與底層 預(yù)處理;使用DSP軟件編程實現(xiàn)系統(tǒng)的邏輯控制以及對預(yù)處理過的圖像進行高層理解與模 式識別處理,并將最終處理結(jié)果通過外設(shè)接口輸出,整個系統(tǒng)包括圖像采集模塊、圖像預(yù)處 理模塊、圖像高層處理與模式識別模塊以及結(jié)果輸出模塊;其中圖像采集模塊包括千兆以太網(wǎng)接口、數(shù)字相機控制單元、網(wǎng)絡(luò)數(shù)據(jù)包解析單元以 及數(shù)據(jù)搬運單元,利用千兆以太網(wǎng)接口連接具有千兆以太網(wǎng)接口的數(shù)字相機;數(shù)字相機控 制單元通過千兆以太網(wǎng)接口對數(shù)字相機發(fā)送控制命令,使數(shù)字相機工作在特定的工作模式 并向外傳輸圖像數(shù)據(jù);數(shù)字相機的圖像數(shù)據(jù)以UDP(User Datagram Protocol,用戶數(shù)據(jù)包 協(xié)議)數(shù)據(jù)包的形式向外傳輸,網(wǎng)絡(luò)數(shù)據(jù)包解析單元負責(zé)解析數(shù)字相機輸出的UDP數(shù)據(jù)包, 將圖像數(shù)據(jù)從數(shù)據(jù)包中提取出來;數(shù)據(jù)搬運單元負責(zé)數(shù)據(jù)在各個模塊間的自主高速搬運;
圖像預(yù)處理模塊包括濾波單元、邊緣提取單元及直線段提取單元,從圖像采集模 塊輸出的圖像數(shù)據(jù)依次經(jīng)過濾波單元、邊緣提取單元、直線段提取單元,得到預(yù)處理過后的 邊緣圖像以及圖像中的直線段信息;圖像高層處理 與模式識別模塊通過DSP軟件編程實現(xiàn),用于處理圖像預(yù)處理模塊 輸出的邊緣圖像以及圖像特征信息并將處理結(jié)果送到結(jié)果輸出模塊;結(jié)果輸出模塊包括一個百兆以太網(wǎng)接口和一個RS485總線協(xié)議的通用異步接收/ 發(fā)送器接口,負責(zé)將處理結(jié)果傳送給遠程控制上位機或執(zhí)行設(shè)備。優(yōu)選實施例,所述圖像采集模塊通過在FPGA內(nèi)部建立可編程片上系統(tǒng)實現(xiàn),可編 程片上系統(tǒng)包含多個組件一個軟核處理器,一個內(nèi)存控制器,一個10/100/1000M三速以 太網(wǎng)介質(zhì)訪問控制器,一個網(wǎng)絡(luò)數(shù)據(jù)包解析單元以及用于數(shù)據(jù)搬運的三個散/聚直接內(nèi)存 訪問控制器,在可編程片上系統(tǒng)中,這些組件通過片內(nèi)可編程總線連接在一起。優(yōu)選實施例,所述圖像采集模塊中的數(shù)字相機控制單元是通過對軟核處理器編程 實現(xiàn)的;在軟核處理器上運行yC/OS-II操作系統(tǒng),使用NicheStack協(xié)議棧支持UDP/IP協(xié) 議,這樣系統(tǒng)軟件就能通過以太網(wǎng)協(xié)議與數(shù)字相機進行通信,給數(shù)字相機發(fā)送用于控制的 UDP數(shù)據(jù)包,實現(xiàn)數(shù)字相機的控制。優(yōu)選實施例,所述圖像采集模塊中的網(wǎng)絡(luò)數(shù)據(jù)包解析單元使用FPGA硬件電路實 現(xiàn)UDP網(wǎng)絡(luò)數(shù)據(jù)包的解析;網(wǎng)絡(luò)數(shù)據(jù)包解析單元首先對數(shù)字相機輸出的UDP數(shù)據(jù)包進行解 包,對UDP數(shù)據(jù)包進行檢校和計算并去掉UDP和IP報頭,然后根據(jù)千兆以太網(wǎng)數(shù)字相機的 數(shù)據(jù)協(xié)議將圖像數(shù)據(jù)提取出來并送入圖像預(yù)處理模塊進一步處理。優(yōu)選實施例,所述圖像采集模塊中的數(shù)據(jù)搬運單元使用三個散/聚直接內(nèi)存訪問 控制器自主搬運數(shù)據(jù),包括兩個發(fā)送散/聚直接內(nèi)存訪問控制器和一個接收散/聚直接內(nèi) 存訪問控制器,其中一個發(fā)送散/聚直接內(nèi)存訪問控制器負責(zé)將UDP數(shù)據(jù)包搬運到介質(zhì)訪 問控制發(fā)送端口,另一個發(fā)送散/聚直接內(nèi)存訪問控制器負責(zé)將接收到的數(shù)據(jù)包據(jù)搬運到 網(wǎng)絡(luò)數(shù)據(jù)包解析單元,一個接收散/聚直接內(nèi)存訪問控制器負責(zé)將接收到的UDP數(shù)據(jù)包從 介質(zhì)訪問控制接收端口搬運到內(nèi)存中。優(yōu)選實施例,所述圖像預(yù)處理模塊中的濾波單元,采用高斯濾波算法對圖像去噪 聲處理,采用鄰域平均的方法,用鄰點灰度的平均值取代該點的灰度;所述圖像預(yù)處理模塊 中的邊緣提取單元,采用Carmy提取邊緣的算法對濾波后的圖像提取邊緣,得到邊緣圖像; 所述圖像預(yù)處理模塊中的直線段提取單元采用概率Hough變換算法,對邊緣圖像進行概率 Hough變換,得到圖像的直線段特征信息;圖像預(yù)處理模塊中所有計算單元均采用流水線 的處理模式,并在FPGA內(nèi)部使用硬件電路并行實現(xiàn)。優(yōu)選實施例,所述圖像高層處理與模式識別模塊,首先使用DSP的DMA通道,將預(yù) 處理過的邊緣圖像數(shù)據(jù)與特征信息搬運到DSP的片上內(nèi)存中,然后再利用DSP的軟件算法 程序?qū)D像進行高層理解處理與模式匹配,并將處理結(jié)果送入結(jié)果輸出模塊。優(yōu)選實施例,所述結(jié)果輸出模塊的百兆以太網(wǎng)接口通過DSP的集成外設(shè)10/100M 介質(zhì)訪問控制器實現(xiàn),用于將圖像處理結(jié)果通過以太網(wǎng)傳輸給遠程控制上位機;通用異步 接收/發(fā)送器接口通過在DSP的外部存儲器空間擴展一個RS485控制器來實現(xiàn),負責(zé)將系 統(tǒng)產(chǎn)生的控制命令直接傳輸給執(zhí)行設(shè)備。本發(fā)明的有益效果本發(fā)明提供了一種基于DSP和FPGA的機器視覺系統(tǒng),采用具有高速數(shù)據(jù)通訊能力的千兆以太網(wǎng)接口作為圖像輸入接口,使得系統(tǒng)具有采集高速圖像的能力;利用FPGA硬件電路實現(xiàn)計算量較大的圖像預(yù)處理,大大降低圖像處理時間,使得系 統(tǒng)具有處理高速圖像的能力;利用DSP編程的靈活性,將高層的圖像理解與模式識別算法 由DSP編程實現(xiàn),使得系統(tǒng)具有處理復(fù)雜圖像算法的能力;系統(tǒng)使用多個直接內(nèi)存訪問控 制器,使得數(shù)據(jù)在各個模塊之間實現(xiàn)自主搬運,減輕了處理器的負擔(dān),提高了系統(tǒng)傳輸數(shù)據(jù) 帶寬和系統(tǒng)處理的實時性。本發(fā)明提供的視覺系統(tǒng)采用嵌入式處理器,系統(tǒng)具有集成度高、 體積小、功耗低等特點。因此本發(fā)明提供的基于DSP和FPGA的機器視覺系統(tǒng),不僅體積小、 重量輕、功耗低,而且具有處理速度快,實時性高等優(yōu)點,非常適合應(yīng)用于對體積、功耗以及 處理能力要求苛刻的機器視覺系統(tǒng)。


圖1系統(tǒng)模塊示意圖,圖2圖像采集模塊示意圖,圖3系統(tǒng)軟件流程圖,圖4系統(tǒng)硬件示意圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,并參照 附圖,對本發(fā)明進一步詳細說明。本發(fā)明的基本思路是目前機器視覺系統(tǒng)大部分是基于通用計算機機實現(xiàn)的,此 類系統(tǒng)普遍存在系統(tǒng)集成度差、體積大、重量大、功耗高等缺點,為了解決以上這些缺點,近 年來也出現(xiàn)了一些基于嵌入式處理器的機器視覺系統(tǒng),在一定程度上解決了基于通用計算 機視覺系統(tǒng)的缺點。但由于單一的嵌入式處理器的性能較差,基于單一嵌入式處理器的視 覺系統(tǒng)的處理能力以及實時性往往不能滿足數(shù)據(jù)量較大、實時性要求較高的應(yīng)用場合。本 發(fā)明從計算機視覺圖像處理的特點分析出發(fā),將圖像處理過程分為底層圖像預(yù)處理與高層 圖像理解處理。其中底層處理完成圖像預(yù)處理和特征檢測等任務(wù)。而高層處理則完成模式 分類和結(jié)構(gòu)分析的任務(wù),依據(jù)圖像預(yù)處理部分所提取的特征,把相應(yīng)原圖歸屬到已知的一 類模式,并對這些模式信息進行簡明的描述和說明,產(chǎn)生最后的輸出結(jié)果。底層圖像處理基 本上都是逐點操作或逐點鄰域操作,對于每一點進行相同且規(guī)律的操作,具有操作簡單、規(guī) 則但計算量大的特點,因此很適合利用FPGA中豐富的硬件資源實現(xiàn)并行處理。與底層圖像 處理算法相比,高層處理操作通常具有順序搜索和數(shù)據(jù)獨立等特點。另外,由于它從底層處 理系統(tǒng)中獲得的信息本身不具有統(tǒng)一的格式,其操作缺乏規(guī)則性,不適合于在硬件中用并 行實現(xiàn)。因此,可利用DSP靈活編程的特點,采用DSP編程實現(xiàn)。本發(fā)明采用百萬門級FPGA 硬件實現(xiàn)底層圖像處理,如圖像的濾波、邊緣檢測、直線段特征的提??;采用具有高性能和 低功耗特性的DSP編程實現(xiàn)高層的圖像理解算法,如特征點分析與匹配,目標搜索等。同 時,F(xiàn)PGA和DSP都屬于具有低功耗的嵌入式處理器,因此本發(fā)明提供的視覺系統(tǒng)不僅具有 較高的數(shù)據(jù)吞吐量以及數(shù)據(jù)處理能力,而且具有低功耗的特性。附圖1為本發(fā)明的模塊示意圖。圖像采集模塊1通過千兆以太網(wǎng)接口將數(shù)字相機 的圖像數(shù)據(jù)采集到FPGA中,依次經(jīng)過由FPGA內(nèi)部硬件電路資源實現(xiàn)的高斯濾波、Carmy算子提取邊緣以及Hough變換圖像預(yù)處理模塊2,得到邊緣圖像以及圖像的直線段特征;DSP 的直接內(nèi)存訪問控制器將經(jīng)過FPGA預(yù)處理過的邊緣圖像以及特征信息搬運到內(nèi)存中,通 過DSP的軟件程序?qū)崿F(xiàn)圖像高層理解與模式識別模塊3,通過DSP的集成外設(shè)接口擴展的結(jié) 果輸出模塊4,將最終的處理結(jié)果傳送給遠程上位機或執(zhí)行設(shè)備。圖像采集模塊 1 通過在 FPGA 內(nèi)實現(xiàn)一個 SOPC (System on aProgrammable Chip, 可編程片上系統(tǒng))系統(tǒng)實現(xiàn),其組成結(jié)構(gòu)如附圖2所示。系統(tǒng)包含多個IP組件,包括一個軟 核處理器(型號為Nios-II),一個DDR SDRAM內(nèi)存控制器,一個10/100/1000M三速以太網(wǎng) 介質(zhì)訪問控制器以及用于數(shù)據(jù)搬運的三個SGDMA(Scatter-Gather DirectMemory Access, 散/聚直接內(nèi)存訪問)控制器。在SOPC系統(tǒng)中,這些組件通過片內(nèi)可編程總線連接在一起。 SOPC系統(tǒng)工作原理是在Nios-II處理器上運行μ C/0S-II操作系統(tǒng),使用NicheStack協(xié) 議棧支持UDP/IP協(xié)議,這樣系統(tǒng)軟件就可以通過以太網(wǎng)與數(shù)字相機進行通訊,發(fā)送數(shù)字相 機控制命令并接收數(shù)字相機輸出的圖像數(shù)據(jù)。系統(tǒng)軟件工作流程如附圖3所示上電后,首 先進行系統(tǒng)初始化,包括μ C/0S-II操作系統(tǒng)初始化、中斷服務(wù)的初始化、系統(tǒng)IP和MAC地 址的設(shè)定以及啟動UDP服務(wù)器;然后調(diào)用數(shù)字相機控制程序,控制數(shù)字相機的工作模式,設(shè) 定數(shù)字相機傳輸?shù)膱D像格式;啟動接收圖像數(shù)據(jù)的SGDMA,等待數(shù)字相機的圖像數(shù)據(jù);數(shù)字 相機將圖像數(shù)據(jù)以UDP數(shù)據(jù)包的方式發(fā)送到SOPC系統(tǒng),系統(tǒng)接收到數(shù)字相機的UDP數(shù)據(jù)包 后,使用SGDMA將接收到的原始UDP數(shù)據(jù)存入片內(nèi)雙端口 RAM ;SGDMA完成一次圖像UDP數(shù) 據(jù)包接收后發(fā)起一個中斷,在中斷服務(wù)程序中,首先重啟SGDMA,做好下個數(shù)據(jù)包接收的準 備,然后啟動發(fā)送SGDMA,將雙端口 RAM中的原始UDP數(shù)據(jù)包搬運到用硬件電路實現(xiàn)的網(wǎng)絡(luò) 數(shù)據(jù)包解析單元。UDP/IP協(xié)議解包包括協(xié)議分解和計算校驗和等操作,在數(shù)據(jù)接 受過程中,占用大 部分的CPU計算時間,是影響接收數(shù)據(jù)速率的主要因素。由于NiOS-II處理器的主頻不高, 若采用Nios-II軟件處理解包操作,勢必會影響數(shù)據(jù)的接收速度。在Nios-II處理器主頻 為150MHz的情況下,使用軟件解包的數(shù)據(jù)接收速度不高于80Mb/s,遠遠低于千兆以太網(wǎng)的 帶寬。鑒于此,本發(fā)明在FPGA內(nèi)部使用硬件電路實現(xiàn)UDP數(shù)據(jù)包解析功能,網(wǎng)絡(luò)數(shù)據(jù)包解 析單元分三個步驟解析UDP數(shù)據(jù)包Sl 圖像數(shù)據(jù)包的判定。讀取接收到數(shù)據(jù)包的端口號,確認是否為圖像數(shù)據(jù)的UDP 數(shù)據(jù)包,若是,執(zhí)行S2操作,若不是,直接將該數(shù)據(jù)包丟棄,返回到Sl。S2 :IP頭校驗和的計算。將計算結(jié)果與IP報頭中的頭部檢校和相比較,若相同則 執(zhí)行S3操作,若不相同,則丟棄該數(shù)據(jù)包,返回到Si。S3 圖像數(shù)據(jù)格式解析。數(shù)字相機在每個UDP數(shù)據(jù)包的前部會插入該數(shù)據(jù)包中圖 像數(shù)據(jù)的說明,如該包中的圖像數(shù)據(jù)所在的幀號以及在該幀中的位置,圖像數(shù)據(jù)格式解析 電路根據(jù)這些信息,將UDP包中的數(shù)據(jù)組合成圖像,并發(fā)送到圖像預(yù)處理模塊2。本發(fā)明使用硬件解包電路接收圖像數(shù)據(jù),最高傳輸速率不低于700Mb/s。圖像預(yù)處理模塊2包括高斯濾波、Canny算子提取邊緣以及Hough變換圖像預(yù)處 理單元。這些預(yù)處理計算基本上都是逐點操作或逐點鄰域操作,對于每一點進行相同且規(guī) 律的操作,具有操作簡單、規(guī)則但計算量大的特點,很適合利用FPGA中豐富的硬件資源實 現(xiàn)并行處理。鑒于此,本發(fā)明采用FPGA中的硬件電路實現(xiàn)圖像預(yù)處理操作,使圖像處理的 整體時間縮短,提高了系統(tǒng)的實時性。
圖像高層處理與模式識別模塊3通過DSP編程實現(xiàn)。為了減輕DSP的計算負擔(dān),提 高系統(tǒng)的實時性,首先使用DSP片內(nèi)集成外設(shè)DMA通道,將經(jīng)過FPGA預(yù)處理過的圖像數(shù)據(jù) 快速搬運到DSP的片內(nèi)存儲器中,進行后續(xù)圖像高層處理與模式識別。高層圖像處理與模 式識別有很多算法,本實施例采用較為常見的目標搜索以及模板匹配算法作為圖像的高層 處理。目標搜索方法是基于連續(xù)圖像相關(guān)性的順序網(wǎng)格搜索,將搜索區(qū)域人為地按一定的 準則分割為一定數(shù)量、大小相等的正方形小區(qū)域,并按一定的順序在該小區(qū)域中掃描目標, 搜索出 目標的大概位置。模板匹配是以某一區(qū)域的特征點作為原點,以一定的特征作為標 準向周圍擴散,直到將滿足要求(即模板)的所有像素點全部找到。處理結(jié)果4輸出模塊包括一個百兆以太網(wǎng)接口和一個RS485總線協(xié)議的UART接 口。百兆網(wǎng)接口通過DSP的集成外設(shè)10/100M MAC控制器和一個百兆物理層芯片實現(xiàn),用于 將圖像處理結(jié)果通過以太網(wǎng)傳輸給遠程控制上位機,數(shù)據(jù)實際傳輸速度最高不低于70Mb/ s ;UART接口通過在DSP的外部存儲器空間擴展一個RS485控制器來實現(xiàn),負責(zé)將系統(tǒng)產(chǎn)生 的控制命令直接傳輸給執(zhí)行設(shè)備,如數(shù)字相機的云臺電機。本發(fā)明的硬件示意圖如附圖4所示,各硬件的說明以及參數(shù)如下本發(fā)明中的DSP為TI公司的TMS320DM642處理器,該處理器最高時鐘頻率為 720MHz,處理能力不低于4000MIPS,最高可達5760MIPS。具有8個并行處理單元、兩級Cache 以及多個適合圖像處理的外設(shè),包括3個視頻接口,1個10M/100M以太網(wǎng)接口,1個32bit HPI接口,64個DMA通道以及64bit的EMIF接口。通過EMIF接口擴展了 8Mbyte的Flash, 其中4Mbyte用于存儲DSP程序,其余的4Mbyte用于存儲FPGA的動態(tài)配置程序;擴展了 4Mx64bit共32Mbyte的SDRAM,用于運行程序和緩存圖像;擴展了一個RS232/485控制器, 用于UART接口通訊;FPGA也通過EMIF接口映射在DSP的數(shù)據(jù)空間,便于DSP高速訪問。FPGA選用Altera公司的最新65nm工藝的EP3C40F484,該芯片具有豐富的硬件資 源,包括40K邏輯單元(LE)、1. 61Mbit片內(nèi)RAM、126個18X18硬件乘法器以及4個PLL單 元等,充分保證了較為復(fù)雜的圖像處理算法的硬件實現(xiàn)需求。FPGA內(nèi)部實現(xiàn)的千兆以太網(wǎng) MAC控制器與外接一片千兆以太網(wǎng)物理層芯片組成千兆以太網(wǎng)接口,接收圖像數(shù)據(jù)帶寬最 高可到700Mb/s,保證了圖像數(shù)據(jù)的高速采集;為了擴展系統(tǒng)的存儲空間,在FPGA外部擴展 了 2片16bit (組成32bit位寬)DDR 266和1片32bit ZBT SRAM的內(nèi)存模塊,用于SOPC 程序運行空間以及圖像數(shù)據(jù)緩存空間,其中DDR內(nèi)存工作在266MHz頻率下,F(xiàn)PGA訪問DDR 內(nèi)存的數(shù)據(jù)帶寬為8512Mbit/s,ZBT SRAM工作頻率為100MHz,F(xiàn)PGA訪問ZBT SRAM的數(shù)據(jù) 帶寬為3200Mbit/s。FPGA訪問片外內(nèi)存的數(shù)據(jù)帶寬均大于千兆以太網(wǎng)視頻的輸入帶寬,滿 足實時處理的帶寬要求。本發(fā)明采用FPGA硬件實現(xiàn)圖像采集與處理過程中計算量較大的操作,使用具有 高數(shù)據(jù)帶寬的千兆以太網(wǎng)接口作為圖像高速輸入接口,使得本發(fā)明所提出的視覺系統(tǒng)具有 進行實時高速圖像采集與處理的能力;再加上使用具有靈活編程能力的DSP作為圖像高層 理解處理器,配以外擴的多個大容量、高數(shù)據(jù)帶寬的存儲器,使得高層圖像處理算法的實現(xiàn) 成為可能;另外本系統(tǒng)是基于嵌入式處理器的視覺系統(tǒng),具有集成度高、體積小、功耗低的 優(yōu)點。因此本發(fā)明提供的視覺系統(tǒng)是一種體積小、功耗低、處理能力強、實時性高的視覺系 統(tǒng)。
權(quán)利要求
1.一種基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,該系統(tǒng)以千兆以太網(wǎng)口作為圖 像數(shù)據(jù)輸入接口 ;使用FPGA內(nèi)部電路實現(xiàn)圖像的高速采集與底層預(yù)處理;使用DSP軟件編 程實現(xiàn)系統(tǒng)的邏輯控制以及對預(yù)處理過的圖像進行高層理解與模式識別處理,并將最終處 理結(jié)果通過外設(shè)接口輸出,整個系統(tǒng)包括圖像采集模塊、圖像預(yù)處理模塊、圖像高層處理與 模式識別模塊以及結(jié)果輸出模塊;其中圖像采集模塊包括千兆以太網(wǎng)接口、數(shù)字相機控制單元、網(wǎng)絡(luò)數(shù)據(jù)包解析單元以及數(shù) 據(jù)搬運單元,利用千兆以太網(wǎng)接口連接具有千兆以太網(wǎng)接口的數(shù)字相機;數(shù)字相機控制單 元通過千兆以太網(wǎng)接口對數(shù)字相機發(fā)送控制命令,使數(shù)字相機工作在特定的工作模式并向 外傳輸圖像數(shù)據(jù);數(shù)字相機的圖像數(shù)據(jù)以UDP數(shù)據(jù)包的形式向外傳輸,網(wǎng)絡(luò)數(shù)據(jù)包解析單 元負責(zé)解析數(shù)字相機輸出的UDP數(shù)據(jù)包,將圖像數(shù)據(jù)從數(shù)據(jù)包中提取出來;數(shù)據(jù)搬運單元 負責(zé)數(shù)據(jù)在各個模塊間的自主高速搬運;圖像預(yù)處理模塊包括濾波單元、邊緣提取單元及直線段提取單元,從圖像采集模塊輸 出的圖像數(shù)據(jù)依次經(jīng)過濾波單元、邊緣提取單元、直線段提取單元,得到預(yù)處理過后的邊緣 圖像以及圖像中的直線段信息;圖像高層處理與模式識別模塊通過DSP軟件編程實現(xiàn),用于處理圖像預(yù)處理模塊輸出 的邊緣圖像以及圖像特征信息并將處理結(jié)果送到結(jié)果輸出模塊;結(jié)果輸出模塊包括一個百兆以太網(wǎng)接口和一個RS485總線協(xié)議的通用異步接收/發(fā)送 器接口,負責(zé)將處理結(jié)果傳送給遠程控制上位機或執(zhí)行設(shè)備。
2.根據(jù)權(quán)利要求1所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述圖像 采集模塊通過在FPGA內(nèi)部建立可編程片上系統(tǒng)實現(xiàn),可編程片上系統(tǒng)包含多個組件一個 軟核處理器,一個內(nèi)存控制器,一個10/100/1000M三速以太網(wǎng)介質(zhì)訪問控制器,一個網(wǎng)絡(luò) 數(shù)據(jù)包解析單元以及用于數(shù)據(jù)搬運的三個散/聚直接內(nèi)存訪問控制器,在可編程片上系統(tǒng) 中,這些組件通過片內(nèi)可編程總線連接在一起。
3.根據(jù)權(quán)利要求1所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述圖像 采集模塊中的數(shù)字相機控制單元是通過對軟核處理器編程實現(xiàn)的;在軟核處理器上運行 μ C/OS-II操作系統(tǒng),使用NicheStack協(xié)議棧支持UDP/IP協(xié)議,這樣系統(tǒng)軟件就能通過以 太網(wǎng)協(xié)議與數(shù)字相機進行通信,給數(shù)字相機發(fā)送用于控制的UDP數(shù)據(jù)包,實現(xiàn)數(shù)字相機的 控制。
4.根據(jù)權(quán)利要求3所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述圖像采 集模塊中的網(wǎng)絡(luò)數(shù)據(jù)包解析單元使用FPGA硬件電路實現(xiàn)UDP網(wǎng)絡(luò)數(shù)據(jù)包的解析;網(wǎng)絡(luò)數(shù)據(jù) 包解析單元首先對數(shù)字相機輸出的UDP數(shù)據(jù)包進行解包,對UDP數(shù)據(jù)包進行檢校和計算并 去掉UDP和IP報頭,然后根據(jù)千兆以太網(wǎng)數(shù)字相機的數(shù)據(jù)協(xié)議將圖像數(shù)據(jù)提取出來并送入 圖像預(yù)處理模塊進一步處理。
5.根據(jù)權(quán)利要求1所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述圖像采 集模塊中的數(shù)據(jù)搬運單元使用三個散/聚直接內(nèi)存訪問控制器自主搬運數(shù)據(jù),包括兩個發(fā) 送散/聚直接內(nèi)存訪問控制器和一個接收散/聚直接內(nèi)存訪問控制器,其中一個發(fā)送散/ 聚直接內(nèi)存訪問控制器負責(zé)將UDP數(shù)據(jù)包搬運到介質(zhì)訪問控制發(fā)送端口,另一個發(fā)送散/ 聚直接內(nèi)存訪問控制器負責(zé)將接收到的數(shù)據(jù)包據(jù)搬運到網(wǎng)絡(luò)數(shù)據(jù)包解析單元,一個接收散 /聚直接內(nèi)存訪問控制器負責(zé)將接收到的UDP數(shù)據(jù)包從介質(zhì)訪問控制接收端口搬運到內(nèi)存中。
6.根據(jù)權(quán)利要求1所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述圖像預(yù) 處理模塊中的濾波單元,采用高斯濾波算法對圖像去噪聲處理,采用鄰域平均的方法,用鄰 點灰度的平均值取代該點的灰度;所述圖像預(yù)處理模塊中的邊緣提取單元,采用Carmy提 取邊緣的算法對濾波后的圖像提取邊緣,得到邊緣圖像;所述圖像預(yù)處理模塊中的直線段 提取單元采用概率Hough變換算法,對邊緣圖像進行概率Hough變換,得到圖像的直線段特 征信息;圖像預(yù)處理模塊中所有計算單元均采用流水線的處理模式,并在FPGA內(nèi)部使用硬 件電路并行實現(xiàn)。
7.根據(jù)權(quán)利要求1所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述圖像高 層處理與模式識別模塊,首先使用DSP的DMA通道,將預(yù)處理過的邊緣圖像數(shù)據(jù)與特征信息 搬運到DSP的片上內(nèi)存中,然后再利用DSP的軟件算法程序?qū)D像進行高層理解處理與模 式匹配,并將處理結(jié)果送入結(jié)果輸出模塊。
8.根據(jù)權(quán)利要求1所述的基于FPGA和DSP的機器視覺系統(tǒng),其特征在于,所述結(jié)果輸 出模塊的百兆以太網(wǎng)接口通過DSP的集成外設(shè)10/100M介質(zhì)訪問控制器實現(xiàn),用于將圖像 處理結(jié)果通過以太網(wǎng)傳輸給遠程控制上位機;通用異步接收/發(fā)送器接口通過在DSP的外 部存儲器空間擴展一個RS485控制器來實現(xiàn),負責(zé)將系統(tǒng)產(chǎn)生的控制命令直接傳輸給執(zhí)行 設(shè)備。
全文摘要
一種基于FPGA和DSP的機器視覺系統(tǒng),是以千兆以太網(wǎng)接口作為圖像數(shù)據(jù)輸入接口;使用FPGA內(nèi)部硬件電路實現(xiàn)圖像的高速采集與底層預(yù)處理;使用DSP軟件編程實現(xiàn)系統(tǒng)的邏輯控制以及圖像的高層理解與模式識別處理。整個系統(tǒng)包括圖像采集模塊、圖像預(yù)處理模塊、圖像高層處理與模式識別模塊以及結(jié)果輸出模塊。圖像采集模塊通過千兆以太網(wǎng)接口將數(shù)字相機的圖像數(shù)據(jù)采集到FPGA中,依次經(jīng)過由FPGA內(nèi)部硬件電路資源實現(xiàn)的圖像預(yù)處理模塊中各個計算單元,得到邊緣圖像以及圖像特征信息;DSP通過軟件實現(xiàn)高層圖像理解與模式識別模塊,并將最終的處理結(jié)果通過結(jié)果輸出模塊傳送給遠程上位機或執(zhí)行設(shè)備。
文檔編號G06T1/00GK102044063SQ201010603189
公開日2011年5月4日 申請日期2010年12月23日 優(yōu)先權(quán)日2010年12月23日
發(fā)明者何文浩, 原魁, 李園, 鄒偉 申請人:中國科學(xué)院自動化研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1