基于FPGA的機(jī)器視覺(jué)系統(tǒng)研究及應(yīng)用
本文關(guān)鍵詞:基于FPGA的機(jī)器視覺(jué)系統(tǒng)研究及應(yīng)用,由筆耕文化傳播整理發(fā)布。
當(dāng)前所在位置:中國(guó)論文網(wǎng) > 政治論文發(fā)表 > 基于FPGA的機(jī)器視覺(jué)系統(tǒng)研究及應(yīng)用
基于FPGA的機(jī)器視覺(jué)系統(tǒng)研究及應(yīng)用
發(fā)布日期: 2014-11-26 發(fā)布:
2014年12期目錄 本期共收錄文章20篇
摘 要
中國(guó)論文網(wǎng)
基于FPGA的機(jī)器視覺(jué)系統(tǒng)具有良好的性能、能耗低而且體積小,在視覺(jué)系統(tǒng)中具有良好的應(yīng)用前景。文章對(duì)FPGA在機(jī)器視覺(jué)系統(tǒng)中的應(yīng)用做了一些介紹,并指出了還存在一些問(wèn)題,需要經(jīng)過(guò)不斷研究和發(fā)展。
【關(guān)鍵詞】 FPGA 視覺(jué)系統(tǒng) 算法
【關(guān)鍵詞】 FPGA 視覺(jué)系統(tǒng) 算法
1 前言
機(jī)器視覺(jué)系統(tǒng)一般要處理一系列的信息才能獲得有用的信息,它利用機(jī)器替代人的眼睛進(jìn)行測(cè)量和感官。這是一種仿造人類視覺(jué)和大腦的系統(tǒng),具有高度的自動(dòng)化性能,所以機(jī)器視覺(jué)系統(tǒng)系統(tǒng)的發(fā)展程度也被當(dāng)做現(xiàn)代工業(yè)發(fā)展水平的衡量標(biāo)準(zhǔn)之一。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,特別是數(shù)字圖像處理、多媒體、集成電路的飛快發(fā)展,機(jī)器視覺(jué)系統(tǒng)在各領(lǐng)域中應(yīng)用越來(lái)越廣泛,并得到了廣泛的認(rèn)可。
機(jī)器視覺(jué)系統(tǒng)一般由三個(gè)主要部分構(gòu)成:圖像的獲取、處理和分析以及輸出,這些主要是通過(guò)計(jì)算機(jī)處理。然而,受到計(jì)算機(jī)CPU的限制,那些計(jì)算非常復(fù)雜的視覺(jué)算法很難及時(shí)有效地得到解決,很難滿足系統(tǒng)的正常需求。雖然現(xiàn)在有些計(jì)算機(jī)采用GPU,具有很高的計(jì)算速度,但是它同樣有體積大、功耗高等不足之處,很難利用自身攜帶的電池進(jìn)行長(zhǎng)時(shí)間的運(yùn)作。
專用集成電路ASIC(Application Specific Integrated Circuit)的應(yīng)用可以很好地解決機(jī)器視覺(jué)系統(tǒng)的功耗、體積及其性能之間的問(wèn)題,但是,它具有很長(zhǎng)的開(kāi)發(fā)周期,不方便修改,并且不能廣泛通用。
FPGA(Field Programmable Gate Array)是一種高性能的可編程控制的邏輯器件,它的內(nèi)部邏輯能使用編程的方法來(lái)實(shí)現(xiàn),操作較簡(jiǎn)單方便,能實(shí)現(xiàn)高速計(jì)算的同時(shí),也具有較低的功率消耗,這方面遠(yuǎn)遠(yuǎn)優(yōu)于CPU和GPU視覺(jué)系統(tǒng)(前者通常功耗在1W以下,后兩者一般可以達(dá)到100W)。所以,隨著FPGA技術(shù)不斷發(fā)展,它在視覺(jué)機(jī)器中應(yīng)用越來(lái)越廣泛,,是視覺(jué)系統(tǒng)重要的發(fā)展方向。
2 FPGA上實(shí)現(xiàn)低層圖像處理算法
低層圖像處理包括了圖像濾波、邊緣檢測(cè)等最基本的圖像處理運(yùn)算,它們一般需要大量單一的運(yùn)算,并且可以同時(shí)并行運(yùn)算,這些特點(diǎn)非常適合FPGA來(lái)操作。
2.1 圖像濾波與降噪
圖像濾波的主要功能是將圖像平滑化處理以及降低其噪音等,這是在圖像處理中最常用的一種方法。濾波一般使用基于窗口操作的流水線結(jié)構(gòu),其中一種具有高效的結(jié)構(gòu)方案是Systolic,它不僅具有普遍濾波適用性,還能夠?qū)崿F(xiàn)圖像的灰度形態(tài)學(xué)操作,完成圖像匹配等多種功能。
圖像濾波主要采用卷積運(yùn)算,卷積的計(jì)算方式為:(1)卷積核繞自己的核心元素沿著順時(shí)針的方向旋轉(zhuǎn)180°;(2)將卷積的核心元素移到輸入圖像等待處理的像素的上方;(3)在卷積核中,使用輸入圖像的像素值作為權(quán)重進(jìn)行乘法運(yùn)算;(4)將(3)中計(jì)算的結(jié)果進(jìn)行相加,所得的和作為輸出像素。FPGA的內(nèi)部圖像卷積核在設(shè)計(jì)過(guò)程中,其窗口大小、參數(shù)、輸入像素字長(zhǎng)以及圖像大小是可以調(diào)節(jié)的,可以滿足用戶不同的圖像處理需求。
圖像濾波還有其他的一些方法,例如使用FPGA可以實(shí)現(xiàn)中值濾波、小波域圖像降噪以及基于遺傳算法的濾波等等,它們都能大幅提高濾波的某一或者多方面的性能要求。
2.2 邊緣檢測(cè)
邊緣檢測(cè)主要是為了檢測(cè)出數(shù)字圖像中亮度變化十分明顯的點(diǎn),這些點(diǎn)一般能夠反映出事物的重要事件和變化,主要有深度斷裂、方向不一致、照明條件改變等等內(nèi)容。邊緣檢測(cè)能夠去掉那些與圖像不相關(guān)的信息,從而有效地減少數(shù)據(jù)處理量并且不會(huì)改變圖像最重要的結(jié)構(gòu)信息。
Canny算子可以有效地處理受白噪聲干擾的階躍型邊緣,它包括了去噪聲、尋找圖像中的亮度梯度以及在圖像中跟蹤邊緣等步驟,但是這種算法有點(diǎn)復(fù)雜。將FPGA應(yīng)用到Canny算法中能優(yōu)化檢測(cè)效果。
3 利用FPGA實(shí)現(xiàn)特征點(diǎn)提取和圖像匹配
特征點(diǎn)提取和圖像匹配與上面所述的低層圖像處理不同,它是較高層的操作,在它的基礎(chǔ)之上可以實(shí)現(xiàn)物體識(shí)別、三維視覺(jué)以及目標(biāo)跟蹤等。
3.1 SIFT算法
SIFT算法是Scale Invariant Feature Trans form的簡(jiǎn)稱,它能夠?qū)崿F(xiàn)圖像的平移、旋轉(zhuǎn)以及尺度不變等功能,運(yùn)用此算法能正確定位特征點(diǎn),還能提取良好的特征描述符,以實(shí)現(xiàn)對(duì)特征點(diǎn)良好的匹配。然而這種算法十分復(fù)雜,在計(jì)算機(jī)上運(yùn)行時(shí)需要耗費(fèi)大量的時(shí)間,難以滿足用戶的及時(shí)要求。
將計(jì)算機(jī)的硬件和軟件進(jìn)行合理的分工協(xié)作,發(fā)揮FPGA的并行計(jì)算能力可以有效解決SIFT算法的速度問(wèn)題。采用硬件計(jì)算來(lái)實(shí)現(xiàn)特征點(diǎn)的定位檢測(cè),使用Nios II軟核的計(jì)算提取特征描述符。使用這種方法,對(duì)于320x240的圖像處理時(shí)間不會(huì)超過(guò)0.8ms,可以滿足用戶的一般需求。
3.2 圖像匹配
圖像匹配是使用一些算法來(lái)識(shí)別兩幅或兩幅以上圖像中的同名點(diǎn),它包括灰度匹配和特征匹配,使用的方法有基于塊匹配和基于頻域匹配等。
基于塊匹配的計(jì)算方法中,將兩幅圖像中兩個(gè)相同大小的塊的灰度值進(jìn)行比較,并計(jì)算差值的絕對(duì)值,然后將這些值求和。在硬件上,可以采用靜態(tài)、動(dòng)態(tài)以及半動(dòng)態(tài)三種不同的結(jié)構(gòu)方式來(lái)實(shí)現(xiàn)圖像的匹配,而動(dòng)態(tài)結(jié)構(gòu)可以改變FPGA的內(nèi)部邏輯以適應(yīng)實(shí)物形狀和模板大小。
4 FPGA實(shí)現(xiàn)立體視覺(jué)算法
立體視覺(jué)就是將系統(tǒng)獲取的兩幅或兩幅以上的圖像中還原出實(shí)物的三維模型,以獲得其三維深度信息。立體視覺(jué)算法需要解決的最主要問(wèn)題是對(duì)應(yīng)點(diǎn)的匹配。在FPGA中,可以使用SAD的塊匹配方法,選用尺寸變化的窗口,并選擇平行匹配區(qū)域,在各個(gè)窗口中均使用樹狀結(jié)構(gòu),方便并行操作。也可以采用相位相關(guān)算法或其他基于頻域的匹配方法,它們?cè)谔幚碓肼暫妥冃螁?wèn)題時(shí),具有更好的優(yōu)越性。
5 結(jié)語(yǔ)
機(jī)器視覺(jué)系統(tǒng)一般需要具有良好的性能、較低功率消耗以及體積小等優(yōu)點(diǎn),基于FPGA的視覺(jué)系統(tǒng)完全能滿足這種需求。但是它同樣存在著實(shí)際應(yīng)用系統(tǒng)較少、算法模塊化程度較低等缺點(diǎn),相信經(jīng)過(guò)不斷研究,這些問(wèn)題能夠得到很好地解決。
參考文獻(xiàn)
[1]陳煒,白瑞林,趙潔. 嵌入式機(jī)器視覺(jué)檢測(cè)軟件的構(gòu)件化設(shè)計(jì)[J].自動(dòng)化儀表,2011(10): 103-105.
[2]張翼成,屠大維,趙其杰.機(jī)器視覺(jué)攝像機(jī)標(biāo)定的一般正多邊形方法[J].應(yīng)用科學(xué)學(xué)報(bào), 2010(8): 58-62.
[3]羅露,胡躍明.基于機(jī)器視覺(jué)的FPC嵌入式檢測(cè)系統(tǒng)[J].計(jì)算機(jī)測(cè)量與控制,2011(11): 32-36.
作者單位
西安航天恒星科技實(shí)業(yè)(集團(tuán))公司 陜西省西安市 710000
本文關(guān)鍵詞:基于FPGA的機(jī)器視覺(jué)系統(tǒng)研究及應(yīng)用,由筆耕文化傳播整理發(fā)布。
本文編號(hào):162292
本文鏈接:http://www.sikaile.net/kejilunwen/wltx/162292.html