本發(fā)明涉及一種機(jī)器視覺(jué)的智能檢測(cè)方法,具體涉及一種基于機(jī)器視覺(jué)的汽車保險(xiǎn)絲盒工件缺陷檢測(cè)方法。
背景技術(shù):
產(chǎn)品檢測(cè)是工業(yè)生產(chǎn)中不可缺少的一環(huán),對(duì)產(chǎn)品質(zhì)量的提高起著重要作用。通常情況下,工業(yè)制造的工件存在一定的次品率,傳統(tǒng)方法是對(duì)工件進(jìn)行人工檢測(cè),這樣一方面造成了工件出貨效率低下,同時(shí)準(zhǔn)確率也難以保證,另一方面增加了工件整體的加工成本,影響生產(chǎn)效益?,F(xiàn)代工業(yè)注重在線、實(shí)時(shí)、快速、非接觸的檢測(cè)方式,確保產(chǎn)品質(zhì)量的前提下,提高產(chǎn)品的生產(chǎn)效率。
汽車保險(xiǎn)盒質(zhì)量對(duì)于汽車電路安全起到至關(guān)重要的作用。目前通過(guò)人工檢測(cè)汽車保險(xiǎn)盒缺陷的方法具有效率低、成本高等缺點(diǎn),急需汽車保險(xiǎn)盒缺陷自動(dòng)檢測(cè)系統(tǒng),以達(dá)到能快速、準(zhǔn)確地篩選出不合格產(chǎn)品,提高生產(chǎn)效率,降低安全隱患。同時(shí),由于汽車保險(xiǎn)絲盒內(nèi)部結(jié)構(gòu)復(fù)雜,工件的主要缺陷類型是多膠、少膠,缺陷小且不起眼,大大增加人工檢測(cè)的難度,平均每個(gè)工件的檢測(cè)時(shí)間在5分鐘,導(dǎo)致工件每天實(shí)際的產(chǎn)出量并不高。
為了解決傳統(tǒng)工件檢測(cè)方法帶來(lái)的弊端,本發(fā)明提出了一套基于機(jī)器視覺(jué)的汽車保險(xiǎn)盒工件缺陷檢測(cè)方法。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目標(biāo)在于開(kāi)發(fā)一種能夠檢測(cè)保險(xiǎn)盒待測(cè)工件與模板工件之間的差異,并將存在差異的缺陷標(biāo)記出來(lái)的方法。
為了解決上述技術(shù)問(wèn)題,本發(fā)明采用如下技術(shù)方案:
一種基于機(jī)器視覺(jué)的工件缺陷檢測(cè)方法,包括以下步驟:
(a)讀取拍攝的模板工件圖片與待測(cè)工件圖片;
(b)將待測(cè)工件圖片與模板工件圖片進(jìn)行粗匹配,匹配時(shí)對(duì)待測(cè)圖片進(jìn)行旋轉(zhuǎn)和平移校正,使其與模板圖片重合度最高;
(c)將校正處理后的待測(cè)工件圖片與原來(lái)的模板工件圖片進(jìn)行相同區(qū)域分割,對(duì)分割后的每塊子區(qū)域進(jìn)行精匹配,匹配時(shí)對(duì)待測(cè)子區(qū)域圖片進(jìn)行平移校正,使其與對(duì)應(yīng)模板子區(qū)域圖片重合度最高;
(d)對(duì)校正處理后的待測(cè)的子區(qū)域圖片與對(duì)應(yīng)的模板子區(qū)域圖片進(jìn)行對(duì)比分析找出缺陷,獲得每塊子區(qū)域的缺陷檢測(cè)結(jié)果;
(e)將每塊子區(qū)域的缺陷檢測(cè)結(jié)果在模板工件圖片上進(jìn)行標(biāo)記,并提示最后總的缺陷數(shù)量。
作為優(yōu)選,所述步驟(b)粗匹配時(shí)具體為在模板工件圖片和待測(cè)工件圖片中選擇方位相同的一對(duì)對(duì)角區(qū)域,兩個(gè)對(duì)角區(qū)域分別選出一對(duì)理想匹配點(diǎn),用于待測(cè)圖片平移與旋轉(zhuǎn)校正,使其與模板圖片重合度最高。
作為優(yōu)選,所述步驟(c)具體為對(duì)校正后的待測(cè)圖片以及模板圖片進(jìn)行相同的區(qū)域分割,得到多個(gè)子區(qū)域,在分割后的一個(gè)子區(qū)域中找出一對(duì)理想匹配點(diǎn),對(duì)待測(cè)的子區(qū)域圖片進(jìn)行平移校正,使其與對(duì)應(yīng)模板子區(qū)域圖片重合度最高。接著對(duì)待測(cè)的子區(qū)域分別進(jìn)行上下左右四個(gè)方向上的單位像素微調(diào),對(duì)比微調(diào)前的重合度獲得重合度最高的待測(cè)的子區(qū)域圖片,其他子區(qū)域執(zhí)行相同操作。
作為優(yōu)選,所述步驟(b)中的粗匹配具體包括以下步驟:
(b1)從待測(cè)工件圖片中的兩對(duì)對(duì)角區(qū)域中選出特征點(diǎn)數(shù)總和較多的一對(duì)對(duì)角區(qū)域,進(jìn)行理想匹配點(diǎn)對(duì)獲取;
(b2)找出其中歐氏距離最小的前n對(duì)匹配點(diǎn),計(jì)算每對(duì)匹配點(diǎn)x軸方向上的絕對(duì)差值Xc,以及y軸方向上的絕對(duì)差值Yc,找出Xc與Yc的最大值,記錄為L(zhǎng)c;找出所有Lc中的最小值Lmc,以Lmc為準(zhǔn),將Lmc分為0~Lmc,Lmc~Lmc+10,Lmc+10~Lmc+20,Lmc+20~Lmc+30.....Lmc+10×(T-2)~Lmc+10×(T-1)這樣T個(gè)等級(jí)(T>=1)。將每對(duì)匹配點(diǎn)的Xc、Yc與Lmc進(jìn)行比較,當(dāng)且僅當(dāng)Xc與Yc均小于Lmc的第m個(gè)等級(jí),同時(shí)Xc或Yc大于Lmc的第m-1個(gè)等級(jí),將其定級(jí)為m。將對(duì)角區(qū)域n對(duì)匹配點(diǎn)中等級(jí)大于T的匹配點(diǎn)對(duì)濾除。另一個(gè)對(duì)角區(qū)域執(zhí)行相同操作。
(b3)兩個(gè)對(duì)角區(qū)域各自留下來(lái)一定數(shù)量的匹配點(diǎn)對(duì),兩個(gè)對(duì)角區(qū)域各取一對(duì)匹配點(diǎn)構(gòu)成一個(gè)組合,其中歐氏距離較小的一對(duì)匹配點(diǎn)用于待測(cè)工件圖片平移校正,較大的用于旋轉(zhuǎn)校正,遍歷所有組合,選擇與模板圖片重合度最高的校正后的待測(cè)圖片。
作為優(yōu)選,所述步驟(c)中的精匹配具體包括以下步驟:
(c1)對(duì)校正后的待測(cè)圖片以及原來(lái)的模板圖片進(jìn)行相同的區(qū)域分割,得到多個(gè)子區(qū)域;
(c2)以一個(gè)子區(qū)域?yàn)槔页銎渲袧h明距離最小的前n’對(duì)匹配點(diǎn),獲得其中漢明距離最小值,記為S。以S值遍歷區(qū)域中所有漢明距離值Sa,找出與S值相等的所有匹配點(diǎn)對(duì),計(jì)算每對(duì)匹配點(diǎn)x軸方向上的絕對(duì)差值Xc’,以及y軸方向上的絕對(duì)差值Yc’,找出Xc’與Yc’的最大值,記錄為L(zhǎng)c’;找出所有Lc’中的最小值Lmc’,以Lmc’為準(zhǔn),將Lmc’分為0~Lmc’,Lmc’~Lmc’+10,Lmc’+10~Lmc’+20,Lmc’+20~Lmc’+30.....Lmc’+10×(T’-2)~Lmc’+10×(T’-1)這樣T’個(gè)等級(jí)(T’>=1)。
在n’對(duì)匹配點(diǎn)中,計(jì)算每對(duì)匹配點(diǎn)的Xc’、Yc’,并與Lmc’進(jìn)行比較,當(dāng)且僅當(dāng)Xc’與Yc’均小于Lmc’的第m’個(gè)等級(jí),同時(shí)Xc’或Yc’大于Lmc’的第m’-1個(gè)等級(jí),將其定級(jí)為m’,濾除匹配點(diǎn)對(duì)中等級(jí)大于T’的。
(c3)剩余的匹配點(diǎn)對(duì)中,每個(gè)匹配點(diǎn)對(duì)對(duì)應(yīng)一種平移校正后的待測(cè)工件子區(qū)域圖片,從中獲得與模板子區(qū)域圖片重合度最高的,記為Rs;
(c4)對(duì)Rs分別進(jìn)行上、下、左、右四個(gè)方向單位像素平移的操作,每個(gè)方向與平移前的進(jìn)行重合度比較,獲得重合度最高的待測(cè)子區(qū)域圖片,每個(gè)子區(qū)域皆按步驟(c2)-(c4)執(zhí)行。
作為優(yōu)選,步驟(b1)中在兩對(duì)對(duì)角區(qū)域選擇一對(duì)對(duì)角區(qū)域時(shí)通過(guò)以下方法進(jìn)行選擇:
(1)對(duì)角區(qū)域的特征點(diǎn)數(shù)總和SUM
(2)對(duì)角區(qū)域特征點(diǎn)數(shù)的比值RATE
SUM=S1+S2
其中S1、S2分別表示兩個(gè)對(duì)角區(qū)域的特征點(diǎn)總數(shù),選取SUM較大的一對(duì)對(duì)角區(qū)域,特征點(diǎn)數(shù)比值記為RATE1,另一對(duì)對(duì)角區(qū)域記為RATE2。如果RATE1<RATE2,則選擇該對(duì)對(duì)角區(qū)域;否則擴(kuò)展一次該對(duì)對(duì)角區(qū)域,并選擇擴(kuò)展后的對(duì)角區(qū)域。
作為優(yōu)選,步驟(c1)中的進(jìn)行區(qū)域分割時(shí),使用附加區(qū)域的區(qū)域分割方式,具體方法為:
先用若干條分割線將模板工件圖片和待測(cè)工件圖片均分成多個(gè)小區(qū)域,在每條分割線的兩側(cè)分別畫出兩條與該分割線平行的輔助分割線,將每個(gè)小區(qū)域中以分割線為邊的邊界向外擴(kuò)展至臨近的輔助分割線,從而得到子區(qū)域,從分割線擴(kuò)展至輔助分割線的區(qū)域記為重疊區(qū)域。
作為優(yōu)選,步驟(c4)中的單位像素微調(diào)操作具體為:首先統(tǒng)計(jì)微調(diào)前的待測(cè)子區(qū)域Rs的匹配重合度記為s0,接著對(duì)其分別進(jìn)行上、下、左、右四個(gè)方向微調(diào)并統(tǒng)計(jì)微調(diào)后的匹配重合度s1,s2,s3,s4。如果s0最小,則輸出;否則,將s1,s2,s3,s4中最小的一個(gè)作為新的s0,重新進(jìn)行四個(gè)方向的微調(diào)統(tǒng)計(jì),如此迭代。
作為優(yōu)選,在步驟(c4)中設(shè)置一個(gè)最多迭代次數(shù)u保證迭代正常終止。
本發(fā)明的有益效果是:
本發(fā)明首先對(duì)待測(cè)工件圖片與模板工件圖片進(jìn)行粗匹配,再對(duì)經(jīng)過(guò)粗匹配校正的待測(cè)工件圖片與原來(lái)的模板工件圖片進(jìn)行相同的區(qū)域分割,對(duì)分割后的每個(gè)子區(qū)域進(jìn)行精匹配,在精匹配的基礎(chǔ)上對(duì)每塊子區(qū)域分別進(jìn)行缺陷檢測(cè),并將最后缺陷檢測(cè)結(jié)果整合到模板工件圖片上并標(biāo)記,提高了缺陷檢測(cè)精度,保證缺陷檢測(cè)的準(zhǔn)確性。本發(fā)明能滿足多種類型待測(cè)工件與模板工件圖像的高精度匹配,在缺陷檢測(cè)上具有高準(zhǔn)確率。
附圖說(shuō)明
圖1是本發(fā)明的流程示意圖;
圖2是工件圖像;
圖3是工件缺陷圖像;
圖4是區(qū)域分割示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步描述:
本發(fā)明使用的機(jī)器視覺(jué)檢測(cè)系統(tǒng)包括工業(yè)相機(jī)、工業(yè)鏡頭以及光源,并將將獲取的圖片放在計(jì)算機(jī)中進(jìn)行缺陷檢測(cè)。本實(shí)施例中使用GS3-U3-120S6M-C的面陣相機(jī),DTCM110-240工業(yè)遠(yuǎn)心鏡頭以及與鏡頭相配套的光源。鏡頭滿足工件的高精度成像,相機(jī)滿足實(shí)際精度要求的情況下,相機(jī)的成像靶面無(wú)法容納整體工件,采用多工位的拍攝得到解決,光源選擇與鏡頭配套的DC110-240。整體硬件組合滿足工業(yè)檢測(cè)精度要求。
本發(fā)明提供的工件缺陷檢測(cè)方法的流程如圖1所示,具體包括以下步驟:
(1)讀取拍攝的模板工件圖片與待測(cè)工件圖片;
(2)圖片中的兩對(duì)對(duì)角區(qū)域(左上、右下與右下、左上)中存在一對(duì)合適對(duì)角區(qū)域,選出一對(duì)合適對(duì)角區(qū)域,進(jìn)行理想匹配點(diǎn)對(duì)獲取。對(duì)角區(qū)域通過(guò)以下方法進(jìn)行選擇:
1)對(duì)角區(qū)域的特征點(diǎn)數(shù)總和SUM
2)對(duì)角區(qū)域特征點(diǎn)數(shù)的比值RATE
SUM=S1+S2
其中S1、S2分別表示兩個(gè)對(duì)角區(qū)域的特征點(diǎn)總數(shù),選取SUM較大的一對(duì)對(duì)角區(qū)域,特征點(diǎn)數(shù)比值記為RATE1,另一對(duì)對(duì)角區(qū)域記為RATE2。如果RATE1<RATE2,則選擇該對(duì)對(duì)角區(qū)域;否則擴(kuò)展一次該對(duì)對(duì)角區(qū)域,并選擇擴(kuò)展后的。
(3)以一個(gè)對(duì)角區(qū)域?yàn)槔?,找出其中歐氏距離最小的前n對(duì)匹配點(diǎn),計(jì)算每對(duì)匹配點(diǎn)x軸方向上的絕對(duì)差值Xc,以及y軸方向上的絕對(duì)差值Yc,找出Xc與Yc的最大值,記錄為L(zhǎng)c;找出所有Lc中的最小值Lmc,以Lmc為準(zhǔn),將Lmc分為0~Lmc,Lmc~Lmc+10,Lmc+10~Lmc+20,Lmc+20~Lmc+30.....Lmc+10×(T-2)~Lmc+10×(T-1)這樣T個(gè)等級(jí)(T>=1)。將每對(duì)匹配點(diǎn)的Xc、Yc與Lmc進(jìn)行比較,當(dāng)且僅當(dāng)Xc與Yc均小于Lmc的第m個(gè)等級(jí),同時(shí)Xc或Yc大于Lmc的第m-1個(gè)等級(jí),將其定級(jí)為m。將對(duì)角區(qū)域n對(duì)匹配點(diǎn)中等級(jí)大于T的匹配點(diǎn)對(duì)濾除。另一個(gè)對(duì)角區(qū)域執(zhí)行相同操作;
(4)兩個(gè)對(duì)角區(qū)域各自留下來(lái)一定數(shù)量的匹配點(diǎn)對(duì),兩個(gè)對(duì)角區(qū)域各取一對(duì)匹配點(diǎn)構(gòu)成一個(gè)組合,其中歐氏距離較小的一對(duì)匹配點(diǎn)用于待測(cè)工件圖片平移校正,較大的用于旋轉(zhuǎn)校正,遍歷所有組合,選擇與模板圖片重合度最高的校正后的待測(cè)圖片;
(5)對(duì)校正后的待測(cè)圖片以及原來(lái)的模板圖片進(jìn)行相同的區(qū)域分割。具體操作如下:先用若干條分割線將模板工件圖片和待測(cè)工件圖片分割成多個(gè)小區(qū)域,在每條分割線的兩側(cè)分別畫出兩條與該分割線平行的輔助分割線,將每個(gè)小區(qū)域中以分割線為邊的邊界向外擴(kuò)展至臨近的輔助分割線,從而得到子區(qū)域,從分割線擴(kuò)展至輔助分割線的區(qū)域記為重疊區(qū)域;
下面舉例說(shuō)明,如圖4所示,圖中待測(cè)工件圖片被分割成4個(gè)區(qū)域F1,F(xiàn)2,F(xiàn)3,F(xiàn)4,其中L1,L2是平均分割四個(gè)區(qū)域的分割線,但由于存在缺陷區(qū)域被分割的風(fēng)險(xiǎn),需要將L1,L2用l1,l2,l3,l4四條輔助分割線取代,用于新增附加區(qū)域。以F1區(qū)域?yàn)槔?,其重疊的附加區(qū)域是f1和f2,其中f1是由L1,l2和l4組成的區(qū)域,f2是由L2,l4和l2組成的區(qū)域;而F2的重疊區(qū)域就是f1′與f2′,其中是f1′由L1,l2和l3組成的區(qū)域,f2′是由L2,l3和l2組成的區(qū)域。重疊區(qū)域的附加原則是除了邊界區(qū)域以外,其余圖像內(nèi)部的分割都需要附加。
(6)以一個(gè)子區(qū)域?yàn)槔?,找出其中漢明距離最小的前n’對(duì)匹配點(diǎn),獲得其中漢明距離最小值,記為S。以S值遍歷區(qū)域中所有漢明距離值Sa,找出與S值相等的所有匹配點(diǎn)對(duì)(一個(gè)漢明距離值對(duì)應(yīng)一個(gè)匹配點(diǎn)對(duì)),計(jì)算每對(duì)匹配點(diǎn)x軸方向上的絕對(duì)差值Xc’,以及y軸方向上的絕對(duì)差值Yc’,找出Xc’與Yc’的最大值,記錄為L(zhǎng)c’;找出所有Lc’中的最小值Lmc’,以Lmc’為準(zhǔn),將Lmc’分為0~Lmc’,Lmc’~Lmc’+10,Lmc’+10~Lmc’+20,Lmc’+20~Lmc’+30.....Lmc’+10×(T’-2)~Lmc’+10×(T’-1)這樣T’個(gè)等級(jí)(T’>=1)。
在n’對(duì)匹配點(diǎn)中,計(jì)算每對(duì)匹配點(diǎn)的Xc’、Yc’,并與Lmc’進(jìn)行比較,當(dāng)且僅當(dāng)Xc’與Yc’均小于Lmc’的第m’個(gè)等級(jí),同時(shí)Xc’或Yc’大于Lmc’的第m’-1個(gè)等級(jí),將其定級(jí)為m’,濾除匹配點(diǎn)對(duì)中等級(jí)大于T’的。
(7)剩余的匹配點(diǎn)對(duì)中,每個(gè)匹配點(diǎn)對(duì)對(duì)應(yīng)一種平移校正后的待測(cè)工件子區(qū)域圖片,從中獲得與模板子區(qū)域圖片重合度最高的,記為Rs;
(8)對(duì)Rs分別進(jìn)行上、下、左、右四個(gè)方向單位像素平移的操作,每個(gè)方向與平移前的進(jìn)行重合度比較,獲得重合度最高的待測(cè)子區(qū)域圖片。單位像素微調(diào)操作具體為:首先統(tǒng)計(jì)微調(diào)前的待測(cè)子區(qū)域Rs的匹配重合度記為s0,接著對(duì)其分別進(jìn)行上、下、左、右四個(gè)方向微調(diào)并統(tǒng)計(jì)微調(diào)后的匹配重合度s1,s2,s3,s4。如果s0最小,則輸出;否則,將s1,s2,s3,s4中最小的一個(gè)作為新的s0,重新進(jìn)行四個(gè)方向的微調(diào)統(tǒng)計(jì),如此迭代。為了避免迭代次數(shù)過(guò)多,設(shè)置一個(gè)最多迭代次數(shù)u保證迭代正常終止,每個(gè)子區(qū)域皆按步驟(6)-(8)執(zhí)行;
(9)對(duì)精匹配后的每塊子區(qū)域的待測(cè)工件圖片與模板工件圖片進(jìn)行對(duì)比分析找出缺陷,獲得每塊子區(qū)域最終的缺陷檢測(cè)結(jié)果;
(10)將每塊子區(qū)域的缺陷檢測(cè)結(jié)果在模板工件圖片上進(jìn)行標(biāo)記,并提示最后總的缺陷數(shù)量。
與上述方法相對(duì)應(yīng)的基于機(jī)器視覺(jué)的工件缺陷檢測(cè)裝置,包括:
圖片獲取單元,用于讀取拍攝的模板工件圖片與待測(cè)工件圖片;
粗匹配單元,用于將待測(cè)工件圖片與模板工件圖片進(jìn)行粗匹配,匹配時(shí)對(duì)待測(cè)圖片進(jìn)行旋轉(zhuǎn)和平移校正,使其與模板圖片重合度最高;
精匹配單元,將校正處理后的待測(cè)工件圖片與原來(lái)的模板工件圖片進(jìn)行相同區(qū)域分割,對(duì)分割后的每塊子區(qū)域進(jìn)行精匹配,匹配時(shí)對(duì)待測(cè)子區(qū)域圖片進(jìn)行平移校正,使其與對(duì)應(yīng)模板子區(qū)域圖片重合度最高;
缺陷檢測(cè)單元,用于對(duì)校正處理后的待測(cè)子區(qū)域圖片與對(duì)應(yīng)的模板子區(qū)域圖片進(jìn)行對(duì)比分析找出缺陷,獲得每塊子區(qū)域的缺陷檢測(cè)結(jié)果;
整合單元,用于將每塊子區(qū)域的缺陷檢測(cè)結(jié)果在模板工件圖片上進(jìn)行標(biāo)記,并提示最后總的缺陷數(shù)量。
本發(fā)明方案所公開(kāi)的技術(shù)手段不僅限于上述實(shí)施方式所公開(kāi)的技術(shù)手段,還包括由以上技術(shù)特征任意組合所組成的技術(shù)方案。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍。