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