廣東工業大學自動化學院 陸嘯天 王欽若
?
基于HALCON的機械手視覺定位的軟件設計
廣東工業大學自動化學院陸嘯天王欽若
本文設計一個利用HALCON軟件提供的算子進行邊緣提取并能定位工件的軟件,同時該軟件能夠調節視覺識別的參數,具有通信功能,把處理識別后工件的坐標等信息發送給其他系統。利用VC++完成軟件人機界面的設計,經調試可完成實時在線檢測,可達到生產要求精度。
HALCON;視覺定位
機器視覺技術給傳統工業帶來深刻變革,裝備視覺設備的機器人系統,廣泛應用于食品加工等領域,使識別定位物體的過程更加自然,簡化系統,這對于降低成本,簡化設計生產流程都有莫大的好處。
框架如圖1所示,視覺定位處理線程是由圖像處理軟件HALCON導出的C++代碼,使用線程較靈活方便識別多個物體。PC機的GUI是為此線程服務的,利用TCP/IP協議的Socket套接字與其他系統通訊。

圖1

本軟件基于VC++、MFC和HALCON,MFC封裝了各種API函數,HALCON跨平臺支持C/C++,故VC++結合MFC和HALCON開發此軟件,軟件中定義的類如下:CVisionControllerDlg類為主界面類,包含:ParamDLg類是攝像頭參數設置類,有閾值、區域提取面積、模板放縮比等;ConnSetDlg類負責攝像頭設置,包含攝像頭名稱、匹配方式;ResultDlg類顯示識別數據,有幀率,幀時長,物體坐標,匹配度等;SockSever類負責與PC機通訊;HalconCamera_setdata類,負責存放處理參數;HalconCamera_outdata類,負責輸出結果。

圖2

圖3

圖4
3.1主界面設置模塊
如圖2所示,可選擇一個或兩個攝像頭。匹配方式有:導入現有模板,從程序中加載在HALCON中調節好參數的模板;現場創建模板,畫好識別區域再匹配。網絡設置:采用TCP/IP協議,Socket編程,設置IP端口后,可以向其他系統發送輸出界面模塊中的數據。
如圖3所示,根據選擇的相機,調節二值化參數,可以讓圖像顯示更多細節;改變區域提取面積可以識別不同面積的物體;模板放縮比可調節目標的尺寸;改變匹配分數可提高目標匹配度。
3.3數據輸出界面模塊
如圖4所示,輸出攝像頭處理結果:幀率、幀時長、識別物體的中心坐標、匹配度、縮放比、與模板偏移的角度。
3.4視覺處理模塊
待上述設置完成后,打開攝像頭,進入視覺處理模塊,由HALCON程序導出的C++代碼編寫,一個攝像頭對應一個視覺處理線程,避免數據干擾。視覺識別定位流程如圖5所示:

圖5
其中:
(1)圖像處理(邊緣提取)代碼如下,得到圖像Edgezoom,
read_image(Image1,path)//讀取圖像
zoom_image_size(Image,Zoom,width,height,'constant')//設置圖像寬與高
rgb1_to_gray(Zoom,GrayImage)//轉成灰度圖
highpass_image(GrayImage,Highpass,Width,Height)//高通濾波
sobel_amp(Highpass,Edge,'sum_abs',5)//邊緣提取
region_to_bin(Edgezoom,BinImage,255,0,Width,Height)//轉為黑白圖像,便于識別
(2)識別定位
根據主界面中的匹配方式實現定位操作,使用HALCON函數:get_shape_model_contours:獲取模板輪廓,find_scaled_shape_models:查找匹配輪廓,模板匹配過程:

本文利用HALCON機器視覺軟件包研究了圖像識別定位物體的
技術,并利用該技術為基于HALCON機械手視覺識別定位設計開發了軟件,具有人性化操作界面,經調試可完成實時在線檢測,可達到精度要求。
[1]王彥,傅衛平,袁國文,等.工件自動視覺定位識別系統研究[J].計算機工程與應用,2009(8):80-83.
[2]王紅濤,傅衛平,康業娜.工件圖像識別的邊緣匹配方法研究[J].儀器儀表學報,2008(5):986-991.
[3]潘武,張莉彥,徐俊成.基于機器視覺的工件的在線檢測[J].組合機床與自動化加工技術,2012(7):75-78.
陸嘯天(1992—),男,江蘇啟東人,碩士研究生,現就讀于廣東工業大學,主要研究方向:現代自動化裝備與控制技術。
王欽若(1958—),男,海南儋縣人,碩士,教授,博士生導師,主要研究方向:機電一體化,現代自動化裝備與控制技術。