專利名稱:一種工件的定位方法及其裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及工件的測量領(lǐng)域,具體涉及一種工件的定位方法及其裝置。
背景技術(shù):
機器視覺就是用機器代替人眼來做判斷、測量等,已經(jīng)有20年的發(fā)展歷史,普遍應(yīng)用于半導(dǎo)體、電子行業(yè)及人工視覺難以滿足要求的場合。視覺定位作為視覺系統(tǒng)工作的第一步和關(guān)鍵部分,它的定位精度和效率直接影響整個視覺系統(tǒng)的性能。人們對定位算法也已有了多年的研究,目前的定位算法主要有基于機器學習、基于模板匹配、基于形狀特征和基于色彩分析等。基于機器學習的方法最復(fù)雜,包括以分類器設(shè)計為基礎(chǔ)的AdaBoost算法、神經(jīng)網(wǎng)絡(luò)、SVM (support vector machine支持向量機)支持向量機等,他們的共同點 都是要有大量的樣本進行數(shù)據(jù)的分析訓練,形成針對特定目標的“特征數(shù)據(jù)庫”,對于所有的輸入都采集某些特征數(shù)據(jù)和樣本特征數(shù)據(jù)進行相關(guān)性計算。此種方法粗定位效果較好,但前期工作太多,不適合外觀頻繁變換的工件定位?;谀0迤ヅ涞姆椒ㄔ趯嶋H中有一定的應(yīng)用,該方法優(yōu)點是理論簡單易實現(xiàn),外界環(huán)境理想的條件下準確率較高,缺點是算法本身不能解決旋轉(zhuǎn)和尺度變化的問題,且計算量大,實際中應(yīng)用的模板匹配都是在原理論基礎(chǔ)上優(yōu)化的版本?;谛螤钐卣鞯姆椒ㄊ且罁?jù)計算幾何理論,在圖像中查找圓、矩形、線段等基本圖形,典型算法如Hough變換,此種方法不能解決不規(guī)則形狀的工件定位問題。
發(fā)明內(nèi)容
本發(fā)明為解決現(xiàn)有技術(shù)工件定位方法不能解決不規(guī)則形狀工件定位的問題,從而提供了一種針對任意形狀工件的定位方法及其裝置。為解決上述技術(shù)問題,本發(fā)明提供如下技術(shù)方案
一種工件的定位方法,包括以下步驟步驟一將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列;步驟二 根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列;步驟三根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包;步驟四根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標。本發(fā)明還提供另外一種工件的定位裝置,包括粗定位模塊,用于將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列;高精度定位模塊,包括亞像素精度的邊緣計算模塊,用于根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列;凸包計算模塊,用于根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包;凸包外接多邊形計算模塊,用于根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標。與現(xiàn)有技術(shù)相比,本發(fā)明具有如下有益效果本發(fā)明提供的一種工件的定位方法及其裝置,利用由粗定位到高精度定位,由工件圖像目標區(qū)域邊緣的坐標序列得到目標區(qū)域邊緣點集的凸包,并進一步得到該凸包的最小外接多邊形的中心坐標,從而確定了工件的精確坐標;減少檢測時間的同時提聞了精度和識別率。
圖I是本發(fā)明實施例工件的定位方法的步驟流程圖。圖2是本發(fā)明實施例凸包示意圖。圖3是本發(fā)明實施例凸包外接矩形示意圖。圖4是本發(fā)明實施例工件的定位裝置的原理框圖。
具體實施例方式為了使本發(fā)明所解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖I是本發(fā)明實施例工件的定位方法的步驟流程圖;該工件定位方法包括以下步驟步驟一將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列;步驟二 根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列;步驟三根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包;步驟四根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標。利用由粗定位到高精度定位,由工件圖像目標區(qū)域邊緣的坐標序列得到目標區(qū)域邊緣點集的凸包,并進一步得到該凸包的最小外接多邊形的中心坐標,從而確定了工件的精確坐標;減少檢測時間的同時提高了精度和識別率。本實施例步驟一為粗定位,包括步驟Al :將工件圖像進行二值化;根據(jù)圖像像素的黑白進行區(qū)分,可以設(shè)定(Γ255中的一個參考值作為劃分臨界點,可以認為小于該參考值的圖像設(shè)定為黑,而高于該參考值的像素設(shè)定為白。步驟A2 :根據(jù)二值化的圖像進行blob分析得到該工件圖像目標區(qū)域;blob分析是對圖像中相同像素的連通域進行分析,該連通域稱為Blob。Blob分析可為機器視覺應(yīng)用提供圖像中的斑點的數(shù)量、位置、形狀和方向,還可以提供相關(guān)斑點間的拓撲結(jié)構(gòu);根據(jù)二值化的圖像可以得到每一個連通區(qū)域的數(shù)據(jù),包括中心坐標、區(qū)域長寬、周長、面積等,根據(jù)實際情況設(shè)定相應(yīng)的參數(shù),并根據(jù)相應(yīng)參數(shù)和實際數(shù)據(jù)對連通域進行過濾,符合設(shè)定參數(shù)條件的即為目標區(qū)域。步驟A3 :掃描圖像目標區(qū)域邊緣,得到圖像目標區(qū)域邊緣的坐標序列;掃描圖像目標區(qū)域邊緣并存入邊緣序列,可以分別從上下左右向圖像中心進行掃描,最終得到圖像目標區(qū)域邊緣的坐標序列。本實施例步驟二采用Zernike矩陣和圖像目標區(qū)域邊緣的坐標序列依次做卷積運算,得到亞像素精度的邊緣坐標序列;步驟一粗定位中已經(jīng)獲得了目標邊緣的近似坐標,這些坐標是一系列的離散點,在源圖像的灰度圖像中,使用Zernike矩陣和以這些離散點為中心的區(qū)域做卷積,這樣做不僅糾正了粗定位的誤差,還得到了亞像素精度的目標邊緣坐標序列。本實施例步驟三采用Graham-Scan算法得到目標區(qū)域邊緣點集的凸包。目標區(qū)域邊緣點集的凸包是指一個最小凸多邊形,圖2是本發(fā)明實施例凸包示意圖,如圖2中P1P2P3P4P5所圍成的凸包;滿足凸包中的點或者在多邊形邊上或者在其內(nèi)。具體的步驟三包括步驟BI :根據(jù)亞像素精度的邊緣坐標序列設(shè)定一極點;找出最左邊、最下面(如果X坐標相等,則比較y)的那個點,并將該點移動到首位,當作極點(原點),這樣其余的點都一定在極點的右邊。步驟B2 :根據(jù)所述極點計算亞像素精度的邊緣坐標序列各點的正弦值,根據(jù)步驟BI中確定的極點,計算各點的正弦值。步驟B3 :根據(jù)各點的正弦值進行排序得到極角序,由于各點極角正比于正弦值,故各點正弦值的排序正比于各點的極角序。本實施例步驟四根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標,為了計算方便,以該外接多邊形為矩形作為例子。計算凸包之后,我們得到了一組點,剛好為圖2中的P1P2P3P4P5,這些點圍成一個不規(guī)則的凸多邊形,為了獲得定位信息,我們通過求凸多邊形最小外接矩形來實現(xiàn),當然根據(jù)實際需求,求外接圓等其他基本圖像亦可。經(jīng)證明,凸多邊形的最小面積外接矩形的一條邊和凸多邊形的某一條邊是共線的。本實施例步驟四包括步驟Cl :以凸包邊界相鄰兩點為外接矩形的一邊,畫出所述凸包的外接矩形并計算該矩形的面積。結(jié)合圖3本發(fā)明實施例凸包外接矩形示意圖,詳細說明該步驟,包括以下步驟
a、相鄰邊界上的兩點P1P2確定一條直線LI,斜率Kl;
b、求其他邊緣點到直線LI的距離,距離最遠的一點記為Q,該圖中Q點與P4點重合,經(jīng) 過P點作平行于LI的直線L2 ;
C、從Q點向直線LI引垂線,得直線L3,其斜率K3 = -1/K1 ;
d、求直線L3兩側(cè)距離L3最遠的兩點Q3(與圖中P5重合)、Q4 (與圖中P4重合),過Q3、Q4兩點做與直線L3平行的兩直線L4、L5 ;
e、LI、L2、L4、L5四條直線所圍成的矩形AB⑶即是凸包點集的一個外接矩形,并計算該外接矩形的面積。以凸包邊界相鄰兩點均可以得到一外接矩形,由此可以得到多個外接矩形。步驟C2 :根據(jù)得到的多個外接矩形面積得到最小外接矩形,這樣便得到了目標趨于基于亞像素精度邊緣坐標信息的最小外接矩形,并得到該最小外接矩形的中心坐標;矩形的中心坐標就是定位目標的中心,目標的偏移角度可通過矩形頂點坐標的三角函數(shù)求得;至此,實現(xiàn)了亞像素精度的目標定位。本發(fā)明還提供另外一種工件的定位裝置,圖4是本發(fā)明實施例工件的定位裝置的原理框圖,該工件的定位裝置包括粗定位模塊1,用于將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列;高精度定位模塊2,包括亞像素精度的邊緣計算模塊21,用于根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列;凸包計算模塊22,用于根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包;凸包外接多邊形計算模塊23,用于根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標。該定位裝置利用由粗定位到高精度定位,由工件圖像目標區(qū)域邊緣的坐標序列得到目標區(qū)域邊緣點集的凸包,并進一步得到該凸包的最小外接多邊形的中心坐標,從而確定了工件的精確坐標;減少檢測時間的同時提高了精度和識別率。計算凸包外接多邊形時為了簡化計算、減小計算量,可以將該多邊形設(shè)定位簡單的矩形;該工件的定位裝置中各模塊的計算方法與上述工件的定位方法類似,此處不再贅述。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種工件的定位方法,其特征在于,包括以下步驟 步驟一將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列; 步驟二 根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列; 步驟三根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包; 步驟四根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標。
2.根據(jù)權(quán)利要求I所述的工件的定位方法,其特征在于,所述步驟一包括 步驟Al :將工件圖像進行二值化; 步驟A2 :根據(jù)二值化的圖像進行blob分析得到該工件圖像目標區(qū)域; 步驟A3 :掃描圖像目標區(qū)域邊緣,得到圖像目標區(qū)域邊緣的坐標序列。
3.根據(jù)權(quán)利要求I所述的工件的定位方法,其特征在于,所述步驟二采用Zernike矩陣和圖像目標區(qū)域邊緣的坐標序列依次做卷積運算,得到亞像素精度的邊緣坐標序列。
4.根據(jù)權(quán)利要求I所述的工件的定位方法,其特征在于,所述步驟三采用Graham-Scan算法得到目標區(qū)域邊緣點集的凸包。
5.根據(jù)權(quán)利要求4所述的工件的定位方法,其特征在于,所述步驟三包括 步驟BI :根據(jù)亞像素精度的邊緣坐標序列設(shè)定一極點; 步驟B2 :根據(jù)所述極點計算亞像素精度的邊緣坐標序列各點的正弦值; 步驟B3 :根據(jù)各點的正弦值進行排序得到極角序。
6.根據(jù)權(quán)利要求I所述的工件的定位方法,其特征在于,所述多邊形為矩形。
7.根據(jù)權(quán)利要求6所述的工件的定位方法,其特征在于,所述步驟四包括 步驟Cl :以凸包邊界相鄰兩點為外接矩形的一邊,畫出所述凸包的外接矩形并計算該矩形的面積; 步驟C2 :根據(jù)得到的多個矩形面積得到最小外接矩形,并得到該最小外接矩形的中心坐標。
8.一種工件的定位裝置,其特征在于,包括 粗定位模塊,用于將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列; 高精度定位模塊,包括亞像素精度的邊緣計算模塊,用于根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列; 凸包計算模塊,用于根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包;凸包外接多邊形計算模塊,用于根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標。
9.根據(jù)權(quán)利要求8所述的工件的定位裝置,其特征在于,所述多邊形為矩形。
全文摘要
一種工件的定位方法,包括以下步驟步驟一將工件圖像二值化并得到該工件圖像目標區(qū)域邊緣的坐標序列;步驟二根據(jù)圖像目標區(qū)域邊緣坐標序列得到亞像素精度的邊緣坐標序列;步驟三根據(jù)亞像素精度的邊緣坐標序列得到目標區(qū)域邊緣點集的凸包;步驟四根據(jù)目標區(qū)域邊緣點集的凸包得到該凸包的最小外接多邊形的中心坐標;還提供一種工件的定位裝置。本發(fā)明提供的工件的定位方法及其裝置,利用由粗定位到高精度定位,由工件圖像目標區(qū)域邊緣的坐標序列得到目標區(qū)域邊緣點集的凸包,并進一步得到該凸包的最小外接多邊形的中心坐標,從而確定了工件的精確坐標;減少檢測時間的同時提高了精度和識別率。
文檔編號G01B11/00GK102721364SQ20111007821
公開日2012年10月10日 申請日期2011年3月30日 優(yōu)先權(quán)日2011年3月30日
發(fā)明者余濤, 王艷 申請人:比亞迪股份有限公司