劃片機(jī)視覺識(shí)別系統(tǒng)設(shè)計(jì)原理分析
掃描二維碼
隨時(shí)隨地手機(jī)看文章
劃片機(jī)視覺識(shí)別系統(tǒng)設(shè)計(jì)原理分析
1 視覺識(shí)別系統(tǒng)構(gòu)成
劃片機(jī)的視覺識(shí)別系統(tǒng)是以計(jì)算機(jī)為主的實(shí)時(shí)圖像處理系統(tǒng)。如圖1所示:
由光學(xué)照明系統(tǒng),CCD攝像器件,圖像處理軟件等部分組成。
識(shí)別系統(tǒng)的目的是實(shí)現(xiàn)自動(dòng)對(duì)準(zhǔn),在工作臺(tái)精度保證的前提下,高精度的圖象處理算法對(duì)視覺自動(dòng)對(duì)準(zhǔn)系統(tǒng)的精度起著決定性的作用,這當(dāng)中的核心部分就是模式識(shí)別算法。目前常用的識(shí)別方法有統(tǒng)計(jì)模式識(shí)別法、特征提取法、神經(jīng)網(wǎng)絡(luò)識(shí)別、模板匹配法等。國(guó)內(nèi)在這一領(lǐng)域起步相對(duì)較晚,科研力量主要集中在一些高校院所,側(cè)重于理論研究,市場(chǎng)化效應(yīng)不太明顯。這就使得在機(jī)器視覺領(lǐng)域的發(fā)展速度上明顯落后于歐美各國(guó)。
2 技術(shù)路線選擇
針對(duì)國(guó)內(nèi)外現(xiàn)狀,我們?cè)谥纸澠瑱C(jī)自己的視覺識(shí)別技術(shù)構(gòu)架時(shí),出發(fā)點(diǎn)就擺在一個(gè)怎樣根據(jù)設(shè)備自身特點(diǎn),盡量利用現(xiàn)有成熟資源和理論算法,建立一個(gè)集效率和實(shí)用于一體的視覺算法集,進(jìn)而形成針對(duì)全自動(dòng)劃片機(jī)自己的機(jī)器視覺庫(kù)。
通過(guò)嘗試過(guò)多種方式,包括和國(guó)外機(jī)器視覺公司合作,根據(jù)特定功能模塊要求定制其成套視覺識(shí)別系統(tǒng)等。但是遇到的問(wèn)題是必須承擔(dān)國(guó)外公司昂貴的開發(fā)成本和高額利潤(rùn),導(dǎo)致設(shè)備成本直線升高,而且在合作的過(guò)程中極有可能泄露我們自己的技術(shù)秘密。實(shí)踐檢驗(yàn)這條路子是不可行的。購(gòu)買國(guó)外視覺公司的軟件開發(fā)包,進(jìn)行二次開發(fā)較上種方式更為合適,技術(shù)難度也較小。然而也面臨著軟件開發(fā)包針對(duì)性不強(qiáng),實(shí)際使用過(guò)程中效果并不完全符合現(xiàn)場(chǎng)要求,單臺(tái)設(shè)備成本提高及出現(xiàn)問(wèn)題無(wú)法解決等情況。經(jīng)過(guò)不斷摸索,以及對(duì)當(dāng)今業(yè)界幾種通用算法的比較后,我們最終決定在全自動(dòng)劃片機(jī)上采用基于Open CV視覺函數(shù)庫(kù)的模板幾何特征匹配算法。
Open CV是英特爾開源計(jì)算機(jī)視覺庫(kù),是一個(gè)跨平臺(tái)的由中、高層API構(gòu)成的視覺函數(shù)庫(kù)。它由一系列C函數(shù)和少量c++類構(gòu)成,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺方面的很多通用算法,這就避免了我們?cè)谝恍┏墒斓退剿惴ㄉ系闹貜?fù)研究,節(jié)省了大量時(shí)間。更重要的是它對(duì)非商業(yè)用途和商業(yè)用途都是免費(fèi)(FREE)的,不會(huì)對(duì)我們的設(shè)備成本造成壓力。而模板的幾何特征匹配是20世紀(jì)90年代后期在市場(chǎng)上出現(xiàn)的一種新的視覺定位技術(shù)。據(jù)了解,目前世界許多著名的半導(dǎo)體設(shè)備廠商包括日本DISCO,東京精密,美國(guó)K&s等都在其主要設(shè)備視覺領(lǐng)域采用了與此相關(guān)的技術(shù)。與傳統(tǒng)的灰度級(jí)匹配不同,幾何特征匹配通過(guò)設(shè)置興趣域并學(xué)習(xí)興趣域內(nèi)的物體幾何特征,然后在圖像內(nèi)尋找相似形狀的物體,它不依賴于特殊的像素灰度,從原理上保證了它具有優(yōu)于傳統(tǒng)視覺定位算法的一些特點(diǎn)。該算法在全自動(dòng)劃片機(jī)的研制過(guò)程中得到了驗(yàn)證。這種技術(shù)的應(yīng)用,提高了全自動(dòng)劃片機(jī)的視覺識(shí)別效率和自動(dòng)對(duì)準(zhǔn)能力,使得在改變工件角度、尺寸、明暗度等條件的情況下,仍能精確定位物體,實(shí)現(xiàn)自動(dòng)對(duì)準(zhǔn)劃切。
3 識(shí)別系統(tǒng)設(shè)計(jì)
3.1 設(shè)計(jì)流程
視覺識(shí)別系統(tǒng)的設(shè)計(jì)結(jié)構(gòu)大都基本相似,關(guān)鍵在于識(shí)別算法的選擇,劃片機(jī)視覺識(shí)別系統(tǒng)設(shè)計(jì)結(jié)構(gòu)流程如圖2所示:
在該算法的應(yīng)用過(guò)程當(dāng)中,考慮到劃片機(jī)工作現(xiàn)場(chǎng)的實(shí)際情況,為了有效地提取預(yù)存模板圖像的特征點(diǎn),我們對(duì)獲取的劃切工件模板圖像進(jìn)行了預(yù)處理,以便提取出圖像當(dāng)中的幾何特征,這些預(yù)處理主要包括減小和濾除圖像中的躁聲、增強(qiáng)圖像中待匹配的幾何特征點(diǎn)等。這其中濾波和分割是提取預(yù)模板圖像幾何特征前的兩個(gè)重要步驟。
3.2 濾波器設(shè)計(jì)原理
一般來(lái)說(shuō),現(xiàn)場(chǎng)躁聲在圖像中都表現(xiàn)為高頻信號(hào),因此一般的濾波器都是通過(guò)減弱和消除傅立葉空間中的高頻分量來(lái)達(dá)到濾波的目的。然而,待劃切工件中的各種結(jié)構(gòu)細(xì)節(jié),如:邊緣和角,也都屬于高頻分量,因此,如何在濾除躁聲的同時(shí)最大限度地保留圖像中的結(jié)構(gòu)特征,一直是圖像濾波研究中的主要方向。
線性濾波器有移動(dòng)平均濾波器和高斯濾波器等,非線性濾波器中最常用的有中值濾波器和SUSAN(Smallest Univalue Segment Assimilating Nucleus)濾波。其中SUSAN濾波可以在濾除圖像躁聲的同時(shí)很好保存物體的其他結(jié)構(gòu)特征。能夠滿足全自動(dòng)劃片機(jī)自動(dòng)對(duì)準(zhǔn)系統(tǒng)中對(duì)定位模板圖像進(jìn)行躁聲平滑的效果要求。SUASN方法是一類圖像處理算法的總稱,包括濾波,邊緣提取,角點(diǎn)提取,所有這些算法的基本原理都是相同的。
SUSAN濾波實(shí)質(zhì)上是加權(quán)平均的均值濾波,相似度測(cè)試函數(shù)為它的加權(quán)因子。式(1)定義了相似度測(cè)試函數(shù),它衡量了像素S[i,j]與其領(lǐng)域內(nèi)各像素S[i-m,j-n](m,n為偏移量)之間的相似程度??梢钥闯觯合嗨贫葴y(cè)量函數(shù)不僅比較了S[i-m,j-n]和S[i,j]灰度值的差異,而且還考慮了S[i-m,j-n]與S[i,j]之間距離的影響。
式中:S[i-m,j-n],S[i,j]為像素的灰度值,T是衡量灰度值相似程度的閥值,其取值對(duì)濾波結(jié)果影響較小。其中:θ可認(rèn)為是高斯平滑濾波器的方差,θ取較大的值可以得到較好的平滑效果,θ取較小的值能保持圖像中的細(xì)節(jié),經(jīng)過(guò)多次實(shí)驗(yàn),我們認(rèn)為取4.O較為合適。
相似度測(cè)量函數(shù)定義的濾波函數(shù)如式(2):
式中:S,[i,j]是像素濾波后的灰度值。由式(2)可知,相似度大的權(quán)值就大,因此對(duì)濾波結(jié)果的影響較大,相反則影響較小。SUSAN濾波不包括中心點(diǎn)本身,可以有效的去除脈沖躁聲。
3.3 圖像分析算法選擇
經(jīng)過(guò)濾波去除現(xiàn)場(chǎng)躁聲干擾之后,下一個(gè)環(huán)節(jié)是把圖像分離成互不重疊的有意義的區(qū)域,每一區(qū)域?qū)?yīng)于某一物體的表面。分類的依據(jù)是像素的頻譜特性,空間特性,灰度值,顏色等。這實(shí)際上是由圖像處理過(guò)渡到圖像分析的重要一環(huán),也是一種通用的計(jì)算機(jī)視覺技術(shù)。圖像分割的算法可分為兩大類:基于度量空間的灰度閾值分割法和基于空間區(qū)域增長(zhǎng)分割法。對(duì)于全自動(dòng)劃片機(jī)的自動(dòng)對(duì)準(zhǔn)系統(tǒng)而言,基于度量空間的灰度閾值分割法更為適用。相當(dāng)于對(duì)圖像進(jìn)行二值化處理。閾值一般由圖像的灰度直方圖計(jì)算得到。我們采用迭代算法針對(duì)雙峰直方圖進(jìn)行了閾值計(jì)算。效果比較滿意。迭代算法是針對(duì)雙峰直方圖計(jì)算分割閾值的方法。既首先確定圖像中最大和最小灰度值Mmax和Mmin,令初始閾值為:
根據(jù)T將圖像分成目標(biāo)和背景兩部分,分別求出兩部分的平均灰度值:
其中:i為灰度值,ni為灰度值等于i的像素個(gè)數(shù),由此得到新的閾值:
如果:Tk+1=Tk,則迭代過(guò)程結(jié)束,否則繼續(xù)。
以上圖像預(yù)處理過(guò)程利用Open CV視覺函數(shù)庫(kù)中都能得到很好實(shí)現(xiàn)。
幾何特征點(diǎn)集是能正確反映定位標(biāo)志位置點(diǎn)的集合,特征的選擇對(duì)最終的模板匹配有重要影響。幾何特征點(diǎn)數(shù)目越多匹配精度越高。但速度相對(duì)會(huì)慢。數(shù)目越少匹配精度會(huì)差。但速度相對(duì)會(huì)快。因此,我們經(jīng)過(guò)多次實(shí)驗(yàn)盡量選擇了最合適的幾何特征點(diǎn),兼顧了匹配的速度和精度。在此系統(tǒng)的應(yīng)用背景下,定位模板的幾何邊緣點(diǎn)是很好的選擇。為提取定位模板的幾何特征點(diǎn)集,首先利用迭代算法對(duì)圖像進(jìn)行分割,然后利用SUASAN邊緣和角點(diǎn)提取算法得到定位模板的幾何邊緣點(diǎn)。
3.4 幾何邊緣角點(diǎn)提取原理
SUSAN幾何邊緣提取,是在給定大小的窗口中對(duì)像素進(jìn)行運(yùn)算,得到窗口中心點(diǎn)處的角點(diǎn)初始響應(yīng),再在所有初始響應(yīng)中尋找局部極大值,得到最終的幾何邊緣點(diǎn)集,其算法如下:
(1)由以下兩公式計(jì)算窗口中灰度值與窗口中心像素相似的像素個(gè)數(shù)n(x0y0):
(2)由下式得到角點(diǎn)的初始響應(yīng):
(3)重復(fù)(1)(2)得到圖像中所有像素處的角點(diǎn)初試響應(yīng),最后尋找局部極大值得到邊緣點(diǎn)集和角點(diǎn)的位置。幾何閾值對(duì)輸出的結(jié)果有一定影響,它不僅影響輸出角點(diǎn)的數(shù)量,更重要的是它還影響輸出角點(diǎn)的形狀,例如,當(dāng)減小幾何閾值時(shí),被檢測(cè)出的角點(diǎn)將會(huì)更尖銳?;叶炔铋撝礣對(duì)輸出的角點(diǎn)的幾何形狀的影響不大,但它會(huì)影響輸出角點(diǎn)的數(shù)量。因?yàn)榛叶炔铋撝刀x了窗口中容許的最大灰度變化,而在劃切工件中,圖形模板與其背景圖像融合處灰度變化是最大的,所以當(dāng)減小灰度閾值時(shí),算法可以檢測(cè)出圖像中更微小的邊緣幾何變化,輸出更多的角點(diǎn)。
顯而易見,在劃片機(jī)的自動(dòng)對(duì)準(zhǔn)系統(tǒng)中,如果以模板圖像的幾何特征點(diǎn)作為依據(jù),那么特征點(diǎn)的數(shù)量將會(huì)顯著減小,運(yùn)算時(shí)間也大大縮短,可以大幅度提高自動(dòng)對(duì)準(zhǔn)的速度。
4 結(jié)束語(yǔ)
以上算法均在基于Open CV視覺函數(shù)庫(kù)的基礎(chǔ)上得到很好的實(shí)現(xiàn),整個(gè)圖像處理過(guò)程在PC機(jī)上完成,使用VC++6.0開發(fā)工具實(shí)現(xiàn)。經(jīng)過(guò)不斷現(xiàn)場(chǎng)實(shí)驗(yàn),我們最終認(rèn)為:以0pen CV視覺函數(shù)庫(kù)為基礎(chǔ),經(jīng)過(guò)SUSAN濾波,迭代分割和SUSAN幾何邊緣角點(diǎn)提取算法得到的定位模板圖像的特征點(diǎn)效果理想,它不僅全面保留了圖形的輪廓特征,還極大地減小了特征點(diǎn)的數(shù)量,并可有效地提高劃片機(jī)圖像匹配自動(dòng)對(duì)準(zhǔn)的精度和速度。