一種基于機器視覺的精度補償方法
【技術領域】
[0001] 本發明涉及一種基于機器視覺的精度補償方法,適用于自動化設備的坐標和路徑 補償。
【背景技術】
[0002] 隨著我國制造業的飛速發展,對生產設備的精度要求也越來越高。當前最有效的 提高精度的方案是采用各種精度補償技術。而在自動化設備領域,機器視覺系統的作用在 于,通過識別在經過工件上的若干個特征點(也稱為Mark點),計算出工件在工作臺上的實 際坐標相對原始坐標的旋轉量和偏移量。自動化設備的數控系統獲得所述旋轉量和偏移量 后,可以對原始坐標原點和運動路徑(比如,加工刀路)進行修正,這樣就能夠產生更優的 運動曲線和更準確的生產效果(比如,獲得更優的加工輪廓)。
[0003] 機器視覺系統一般由成像模塊和軟件識別模塊組成。這兩部分都會存在誤差,前 者的誤差主要是由光學部件固有的徑向畸變和切向畸變造成,不可避免,后者本質上就是 由視覺處理函數庫引起。成像模塊造成的誤差是最大的,而且減少該誤差的代價尤其昂貴, 比如可以采用更好的鏡頭(比如遠心鏡頭)來減少徑向畸變,或者,采用更高精密的攝像 機,采用專門的儀器來檢測鏡頭和攝像機的安裝精度來減少切向畸變,這樣會花費更多的 時間來調整,成本也更高。當前的機器視覺函數庫還無法計算出精確解,只能無窮接近解決 目標,因此采用圖像處理庫來最小化由軟件識別模塊所帶來的誤差仍然存在技術難題。
【發明內容】
[0004] 為了解決上述技術問題,本發明提供一種基于機器視覺的精度補償方法,實現了 從攝像模塊自身的參數補償到自動化設備的目標的坐標和路徑補償的一系列完整的精度 補償方案。
[0005] 本發明采用的技術方案為一種基于機器視覺的精度補償方法,包括以下步驟:A、 布置攝像模塊和精度補償目標,固定所述攝像模塊,并且使所述精度補償目標可動地處于 所述攝像模塊的視場內;B、通過識別標定件中的特定元素,確定攝像模塊的畸變系數和本 征旋轉角;C、通過攝像模塊對多個處于預設位置的已知點進行識別,然后采用正則化網絡 插值算法和預設的懲罰系數,對所述多個已知點的識別值進行逼近和擬合,從而實現所述 攝像模塊的識別精度補償;D、對攝像模塊的畸變系數、本征旋轉角和識別精度補償后,獲取 多個精度補償目標上的多個特征點的原始位置點集,通過攝像模塊識別與所述多個特征點 對應的實際位置點集;E、根據所述原始位置點集和所述實際位置點集,采用迭代算法計算 旋轉轉換數據和偏移轉換數據,然后將所述旋轉轉換數據和偏移轉換數據分配到所述精度 補償目標從而實現精度補償。
[0006] 作為本發明的進一步改進,所述步驟A包括:布置一個或多個光源設備,以保證所 述攝像模塊的視場內的物體被充分照明。
[0007] 作為本發明的進一步改進,所述步驟B包括:通過識別多個方位的柵格標定板中 的邊緣,調用本地圖像處理庫來計算攝像模塊的徑向畸變系數,并且計算單應矩陣以確定 攝像模塊的切向畸變系數。
[0008] 作為本發明的進一步改進,所述步驟B還包括:使所述精度補償目標等距地沿直 角坐標軸移動多次并且同時通過所述攝像模塊在每次移動時獲取所述精度補償目標上的 特定點,然后采用主元分析法對獲取的多個特定點計算得到所述攝像模塊的本征旋轉角。
[0009] 作為本發明的進一步改進,所述步驟C包括:配置標準化網格模板用于生成正則 化網絡插值,所述標準化網格模板由預設間距的多個圓形的點陣元件組成;將點陣置于所 述攝像模塊的視場內并采集所述標準化網格模板的圖像;通過圓周擬合求出各個點陣元件 的實際的位置數據,將該位置數據中心化并且根據標準化網格模板中的點陣元件的間距數 據進行位置擺正,從而獲得用于正則化網絡插值的二維插值網格。
[0010] 優選地,所述步驟C中預設的懲罰系數大于0并且小于等于0. 3。
[0011] 作為本發明的進一步改進,所述步驟D包括:通過數控系統控制所述精度補償目 標定位在多個預設的位置,所述數控系統每次定位所述精度補償目標的同時,發送信號到 所述攝像模塊以觸發攝像模塊同步采集所述精度補償目標上的特征點。
[0012] 優選地,所述步驟E中采用的迭代算法為列文伯格-馬夸爾特法。
[0013] 作為本發明的進一步改進,所述攝像模塊包括攝像頭和鏡頭,所述精度補償目標 包括與數控設備的坐標系關聯的工作臺、工件和/或定位構件。
[0014] 本發明的有益效果為:顯著減少了傳統的視覺定位設備或自動化設備中人為定位 所帶來的誤差;采用較低成本的方式實現了從攝像模塊自身的參數補償到自動化設備的目 標的坐標和路徑補償的一系列完整的精度補償方案。
【附圖說明】
[0015]圖1所示為根據本發明的基于機器視覺的精度補償方法的步驟流程圖;
[0016] 圖2所示為根據本發明一實施例中的柵格標定板;
[0017] 圖3所示為根據本發明一實施例中求解本征旋轉角時采用的主元分析法示意圖;
[0018]圖4所示為根據本發明一實施例中圖像識別精度補償時選取不同的懲罰系數的 結果圖;
[0019] 圖5所示為根據本發明一實施例中的標準化網格模板;
[0020] 圖6所示為根據本發明一實施例中原始點集與目標點集之間的轉換示意圖。
【具體實施方式】
[0021] 下面通過附圖和實例對本發明作進一步的詳細描述和解析。
[0022] 參照圖1所示為根據本發明的基于機器視覺的精度補償方法的步驟流程圖。該方 法包括以下步驟:A、布置攝像模塊和精度補償目標,固定所述攝像模塊,并且使所述精度補 償目標可動地處于所述攝像模塊的視場內;B、通過識別標定件中的特定元素,確定攝像模 塊的畸變系數和本征旋轉角;C、通過攝像模塊對多個處于預設位置的已知點進行識別,然 后采用正則化網絡插值算法和預設的懲罰系數,對所述多個已知點的識別值進行逼近和擬 合,從而實現所述攝像模塊的識別精度補償;D、對攝像模塊的畸變系數、本征旋轉角和識別 精度補償后,獲取多個精度補償目標上的多個特征點的原始位置點集,通過攝像模塊識別 與所述多個特征點對應的實際位置點集;E、根據所述原始位置點集和所述實際位置點集, 采用迭代算法計算旋轉轉換數據和偏移轉換數據,然后將所述旋轉轉換數據和偏移轉換數 據分配到所述精度補償目標從而實現精度補償。
[0023] 具體地,所述攝像模塊包括攝像頭和鏡頭,所述精度補償目標包括與數控設備的 坐標系關聯的工作臺、工件和/或定位構件。為了使攝像模塊能夠采集清晰的圖像,需要為 其可視區域提供充足的關照。優選地,可以在精度補償目標的附近布置光源裝置,或者可以 在鏡頭前端布置同軸光源。
[0024] 下面,在一些實施例中具體說明上述的步驟。
[0025] 在步驟B中,確定鏡頭的徑向畸變系數的方法是通過提取柵格標定板(如圖2所 示)的一組邊緣,再通過Halcon圖像處理庫(由MVtec公司開發的一套標準的機器視覺算 法包)的徑向畸變自校正函數來計算獲得徑向畸變系數(K)。如果采用良好的鏡頭而計算 得到非常小的徑向畸變系數(比如,K = -1. 25027e-009),則可以忽略不計,即是不需要對 鏡頭進行徑向畸變補償。此外,鏡頭的切向畸變是由于透鏡安裝缺陷使得透鏡本身與感光 元件(比如CCD)的成像平面不平行而產生。鏡頭的切向畸變需要專業的儀器才能精確檢 測出來,但是可以通過單應矩陣(Homography matrix)來判定,該單應矩陣可以通過上述的 圖像處理庫和標定板的圖像識別來計算。例如,如果計算得到的3X3單應矩陣如下:
[0026] 1. 0006 1 866 1 8 30 1 1 09 e + 0 0 0 2. 333476757506 1032e-004 2. 5603378911972030e-003
[0027] -1. 55495e-004 1. 0057039553171050e + 000 -1.02009C-003
[0028] -2. 66064e-005 8.58361e-005 1.0
[0029] 矩陣的主對角線兩側的數的絕對值不對稱,說明存在徑向畸變(Y方向比X方向嚴 重),并直接影響成像質量和最終的檢測精度,需要進行校正。公知地,上述的兩種畸變以及 其他因素對圖像品質和檢測精度的影響可以通過數值分析法來校正。
[0030]同樣在步驟B中,還需要確定攝像機的本征旋轉角。本質旋轉角是在攝像機安裝 時形成的,例如是指攝像機中的感光元片的長邊與自動化設備的X軸所成的夾角。攝像機 實際上采集到圖像傾斜,所以在進行識別操作之前必須將圖像擺正。具體地,求取本征旋轉 角的方法如下:等步距地使自動化設備的工作臺沿X軸或者Y軸移動多個位置,通過模板匹 配法在各個位置識別工作臺中的特定目