機(jī)器視覺軟件sherlock在生產(chǎn)線零件對準(zhǔn)方面的應(yīng)用
1 概述
在機(jī)器視覺檢測過程中,通常需要通過夾具來對每一個檢測的零件進(jìn)行定位,以保證光源照射到零件而讓相機(jī)能拍攝到被照射的零件,從而使位置傳感器能夠在同一位置進(jìn)行觸發(fā),防止零件發(fā)生晃動或旋轉(zhuǎn)。每一個所要檢測的零件到達(dá)檢測區(qū)域時,視覺系統(tǒng)都要對它進(jìn)行檢測。但是在很多情況下,即使夾具特別精確,也不能保證零件位置不發(fā)生變化。因為零件不可能總是準(zhǔn)確的定位在期望的位置,即零件不能重復(fù)地關(guān)于攝像機(jī)定位。
在很多情況下,這種未對準(zhǔn)可以使用相關(guān)測量方法進(jìn)行補(bǔ)償。例如,在Sherlock軟件中可以得到零件的長度,方法是使用線peek找到所要測量的端點,然后使用距離公式計算兩個端點之間的距離。這樣,測量值就將保持恒定。只要它的一個端點沒有移出相應(yīng)的線區(qū)域即可。
然而,一些情況下則需要絕對對準(zhǔn)。此時如果使用理想模板,或者測量的是一個小零件,若還不考慮零件位置的正常變化,那么過度擴(kuò)大感興趣區(qū)域就不太可能保證魯棒性。在這些情況下,利用機(jī)器視覺軟件sherlock的landmark就很容易解決零件不能對準(zhǔn)的問題。
2 零件對準(zhǔn)工作過程
當(dāng)檢測的零件不在最初訓(xùn)練的位置時,Sherlock的零件對準(zhǔn)功能依靠Landmarks可自動找到所要檢測的位置。所有點的讀數(shù)都可以在讀數(shù)編輯對話框中標(biāo)記為Landmark。通過指令返回Landmarks標(biāo)記點的位置后,便可根據(jù)landmarks的位置對所要處理的peek進(jìn)行自動定位。
2.1 零件只發(fā)生移動時的對準(zhǔn)
當(dāng)所檢測的零件只發(fā)生X方向或Y方向的移動時,只需要一個landmark點進(jìn)行定位就可以實現(xiàn)自動對準(zhǔn)。其操作過程如下:
(1)首先在所拍攝的合格零件圖像上選定一個點作為定位點(landmark),如利用矩形peek的Smart-Search分析算法對零件的某一特征部分進(jìn)行訓(xùn)練,并將該特征的best point作為定位點(landmark)。
(2)將矩形peek的范圍拉大,使所檢測的零件中與所訓(xùn)練的特征相應(yīng)的特征部分總在該peek范圍內(nèi)。
(3)對需要檢測的區(qū)域進(jìn)行訓(xùn)練,并添加相應(yīng)的程序。
(4)運行檢測程序,當(dāng)零件位置發(fā)生移動時,所要檢測部位的peek就會根據(jù)landmark點自動精確的找到所要檢測的部位,并進(jìn)行檢測。
圖1中,將十字架作為訓(xùn)練模板,十字架的中心作為landmark,需要檢測的位置為梳狀齒。當(dāng)零件發(fā)生移動時,peek B可以自動找到所要檢測的位置。
2.2 零件既發(fā)生移動又有旋轉(zhuǎn)時的對準(zhǔn)
當(dāng)檢測的零件相對于訓(xùn)練模板在位置上既有X、Y方向移動,又發(fā)生了旋轉(zhuǎn)時,用一個landmark就不能找到所要檢測的位置。此時可在sherlock中使用兩個landmarks來實現(xiàn)自動對準(zhǔn)。其中一個land-mark計算移動的信息,另一個計算旋轉(zhuǎn)的信息。其操作過程如下:
(1) 在所拍攝的合格零件圖像上選定兩個可以被可靠定位的特征點作為定位點(landmarks)進(jìn)行訓(xùn)練。
(2) 訓(xùn)練完成后分別將兩個特征點的peek拉大,以使每一個特征點都在自己的peek范圍內(nèi)。
(3) 對需要檢測的區(qū)域進(jìn)行訓(xùn)練,并添加相應(yīng)的程序。
(4) 運行檢測程序,當(dāng)零件位置既發(fā)生移動,又發(fā)生旋轉(zhuǎn)時,所要檢測部位的peek就會根據(jù)land-mark點自動精確的找到所要檢測的部位并進(jìn)行檢測。
零件位置發(fā)生旋轉(zhuǎn)時,也可以使用三個land-marks實現(xiàn)對準(zhǔn),假定第一點相對于零件來說是一個固定點,隨后的兩點只被用來計算旋轉(zhuǎn)信息。那么,記錄下點之間的原始角度,再找出運行時的新角度,然后通過新角度和原始角度之間的比較計算出旋轉(zhuǎn)距離,就可以實現(xiàn)零件對準(zhǔn)。
2.3 使用Smart Search360的結(jié)果來實現(xiàn)零件對準(zhǔn)
sherlock軟件中的分析算法Smart Search360是一個模式識別的分析算法,該算法不但可以識別旋轉(zhuǎn)的物體,也可以實現(xiàn)零、部件對準(zhǔn)。Smart Search360的返回結(jié)果中有一個最佳點和一個最佳角度。使用點的轉(zhuǎn)換函數(shù)Formula—Align把該點和該角度轉(zhuǎn)換成兩個landmarks,就可以實現(xiàn)零件對準(zhǔn)。