劃片機(jī)視覺識(shí)別系統(tǒng)設(shè)計(jì)原理分析
掃描二維碼
隨時(shí)隨地手機(jī)看文章
劃片機(jī)的視覺識(shí)別系統(tǒng)是以計(jì)算機(jī)為主的實(shí)時(shí)圖像處理系統(tǒng)。如圖1所示:
識(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ī)器視覺庫。
通過嘗試過多種方式,包括和國(guó)外機(jī)器視覺公司合作,根據(jù)特定功能模塊要求定制其成套視覺識(shí)別系統(tǒng)等。但是遇到的問題是必須承擔(dān)國(guó)外公司昂貴的開發(fā)成本和高額利潤(rùn),導(dǎo)致設(shè)備成本直線升高,而且在合作的過程中極有可能泄露我們自己的技術(shù)秘密。實(shí)踐檢驗(yàn)這條路子是不可行的。購買國(guó)外視覺公司的軟件開發(fā)包,進(jìn)行二次開發(fā)較上種方式更為合適,技術(shù)難度也較小。然而也面臨著軟件開發(fā)包針對(duì)性不強(qiáng),實(shí)際使用過程中效果并不完全符合現(xiàn)場(chǎng)要求,單臺(tái)設(shè)備成本提高及出現(xiàn)問題無法解決等情況。經(jīng)過不斷摸索,以及對(duì)當(dāng)今業(yè)界幾種通用算法的比較后,我們最終決定在全自動(dòng)劃片機(jī)上采用基于Open CV視覺函數(shù)庫的模板幾何特征匹配算法。
Open CV是英特爾開源計(jì)算機(jī)視覺庫,是一個(gè)跨平臺(tái)的由中、高層API構(gòu)成的視覺函數(shù)庫。它由一系列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í)匹配不同,幾何特征匹配通過設(shè)置興趣域并學(xué)習(xí)興趣域內(nèi)的物體幾何特征,然后在圖像內(nèi)尋找相似形狀的物體,它不依賴于特殊的像素灰度,從原理上保證了它具有優(yōu)于傳統(tǒng)視覺定位算法的一些特點(diǎn)。該算法在全自動(dòng)劃片機(jī)的研制過程中得到了驗(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)用過程當(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ì)原理
一般來說,現(xiàn)場(chǎng)躁聲在圖像中都表現(xiàn)為高頻信號(hào),因此一般的濾波器都是通過減弱和消除傅立葉空間中的高頻分量來達(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為偏移量)之間的相似程度。可以看出:相似度測(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)過多次實(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)過濾波去除現(xiàn)場(chǎng)躁聲干擾之后,下一個(gè)環(huán)節(jié)是把圖像分離成互不重疊的有意義的區(qū)域,每一區(qū)域?qū)?yīng)于某一物體的表面。分類的依據(jù)是像素的頻譜特性,空間特性,灰度值,顏色等。這實(shí)際上是由圖像處理過渡到圖像分析的重要一環(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,則迭代過程結(jié)束,否則繼續(xù)。
以上圖像預(yù)處理過程利用Open CV視覺函數(shù)庫中都能得到很好實(shí)現(xiàn)。
幾何特征點(diǎn)集是能正確反映定位標(biāo)志位置點(diǎn)的集合,特征的選擇對(duì)最終的模板匹配有重要影響。幾何特征點(diǎn)數(shù)目越多匹配精度越高。但速度相對(duì)會(huì)慢。數(shù)目越少匹配精度會(huì)差。但速度相對(duì)會(huì)快。因此,我們經(jīng)過多次實(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é)束語
以上算法均在基于Open CV視覺函數(shù)庫的基礎(chǔ)上得到很好的實(shí)現(xiàn),整個(gè)圖像處理過程在PC機(jī)上完成,使用VC++6.0開發(fā)工具實(shí)現(xiàn)。經(jīng)過不斷現(xiàn)場(chǎng)實(shí)驗(yàn),我們最終認(rèn)為:以0pen CV視覺函數(shù)庫為基礎(chǔ),經(jīng)過SUSAN濾波,迭代分割和SUSAN幾何邊緣角點(diǎn)提取算法得到的定位模板圖像的特征點(diǎn)效果理想,它不僅全面保留了圖形的輪廓特征,還極大地減小了特征點(diǎn)的數(shù)量,并可有效地提高劃片機(jī)圖像匹配自動(dòng)對(duì)準(zhǔn)的精度和速度。