張 馳,廖華麗,周 軍
(河海大學(xué) 機(jī)電工程學(xué)院,江蘇 常州 213022)
在目前工業(yè)生產(chǎn)的過程中,絕大多數(shù)的工業(yè)機(jī)器人均是依靠精確的示教進(jìn)行抓取和放置工件,但這種方式存在著較大的局限性,因?yàn)檫@種結(jié)構(gòu)化的環(huán)境要求工件必須以特定的方位處于固定的位置上,如果外界環(huán)境或工件的狀態(tài)發(fā)生變化導(dǎo)致這一要求不能滿足時(shí),機(jī)器人往往不能適應(yīng)這種變化,導(dǎo)致任務(wù)中斷或失敗[1]。而機(jī)器視覺技術(shù)因其信息量大、精度高、檢測(cè)范圍大等特點(diǎn),將其引入工業(yè)自動(dòng)化中實(shí)現(xiàn)工件的自主識(shí)別和定位越來越成為不可或缺的技術(shù)應(yīng)用[2]。王健強(qiáng)等[3]提出通過兩臺(tái)或多臺(tái)CCD攝像機(jī)獲取工況圖像,進(jìn)行分析計(jì)算實(shí)現(xiàn)目標(biāo)的識(shí)別與位姿計(jì)算的方法,但基于雙目或多目視覺的抓取系統(tǒng)計(jì)算量較大,影響系統(tǒng)的實(shí)時(shí)性;李星云等[4]提出了一種嵌入式平臺(tái)上的單目視覺定位方法,該系統(tǒng)集成性高,使用起來簡(jiǎn)單方便,但嵌入式系統(tǒng)開發(fā)起來難度較大。
本研究將單目視覺引入到工業(yè)機(jī)器人智能抓取系統(tǒng)設(shè)計(jì)中,并通過實(shí)驗(yàn)驗(yàn)證。
機(jī)器人工作時(shí),機(jī)器人抓取零件的流程如圖1所示。
圖1 工業(yè)機(jī)器人零件抓取流程
首先本研究由單目視覺對(duì)工作環(huán)境進(jìn)行掃描檢測(cè),檢測(cè)到工件到位,攝像機(jī)開始拍照并將拍攝到的圖像傳遞給上位機(jī)。上位機(jī)利用已經(jīng)開發(fā)好的程序?qū)D像進(jìn)行預(yù)處理,包括中值濾波,閾值分割和尋找連通域的輪廓,然后進(jìn)行模板匹配識(shí)別出當(dāng)前將要抓取的零件且計(jì)算出其在圖像中的位置和姿態(tài),進(jìn)一步地通過攝像機(jī)標(biāo)定[5],機(jī)器人的手眼標(biāo)定建立抓取系統(tǒng)的參數(shù)化模型[6],通過參數(shù)化的模型將獲得的目標(biāo)工件在圖像中的位姿信息轉(zhuǎn)化成目標(biāo)工件相對(duì)于機(jī)器人基坐標(biāo)的位姿信息[7]。得到目標(biāo)工件相對(duì)于機(jī)器人基座標(biāo)的位姿信息后,本研究將PC作為服務(wù)器,ABB機(jī)器人作為客戶端,采用TCP/IP協(xié)議建立SOCKET通信,將位姿信息通過建立的SOCKET傳遞給機(jī)器人控制系統(tǒng),從而引導(dǎo)機(jī)器人進(jìn)行路徑規(guī)劃,完成對(duì)目標(biāo)物的抓取。
假定工業(yè)機(jī)器人要抓取的工件為立方體薄片,要在眾多工件中對(duì)目標(biāo)工件進(jìn)行識(shí)別定位,本研究提出的圖像處理算法包括以下幾個(gè)步驟:(1)圖像預(yù)處理;(2)模板匹配;(3)目標(biāo)位姿計(jì)算。
圖像預(yù)處理主要包括中值濾波、閾值分割、尋找連通域的輪廓[8]。圖像濾波可以在盡量保留圖像細(xì)節(jié)特征的條件下對(duì)目標(biāo)的圖像噪聲進(jìn)行抑制。中值濾波是一種典型的非線性濾波技術(shù),基本思想是用像素的鄰域灰度值的中值來代替該像素點(diǎn)的灰度值,讓周圍像素值接近真實(shí)值,從而消除孤立的噪聲。在圖像處理中,常常需要對(duì)圖中的像素做出取舍與決策。閾值化可以被視作最簡(jiǎn)單的圖像分割方法。這樣的圖像分割方法基于圖像中物體與背景之間的灰度差異,屬于像素級(jí)的分割。為了從一幅圖像中提取出研究者需要的部分,應(yīng)該用圖像中的每一個(gè)像素點(diǎn)的灰度值與選取的閾值進(jìn)行比較,并作出相應(yīng)的判斷。當(dāng)進(jìn)行完閾值化分割后,本研究生成包含目標(biāo)物體位置的二值化圖像。即在圖像中目標(biāo)物成為一個(gè)個(gè)連通域,此時(shí)對(duì)目標(biāo)物形成的連通域進(jìn)行輪廓提取,系統(tǒng)性地掃描圖像直到遇到連通區(qū)域的一個(gè)點(diǎn),以它為起始點(diǎn),跟蹤它的輪廓,標(biāo)記邊界上的像素,當(dāng)輪廓完整閉合,掃描回到上一個(gè)位置,直到再次發(fā)現(xiàn)新的成分,提取出目標(biāo)物的輪廓后將其保存,用于下面進(jìn)行的模板匹配。預(yù)處理前后攝像機(jī)獲取的工況圖像分別如圖(2,3)所示。
圖2 多目標(biāo)工況原圖
圖3 預(yù)處理后的圖像
常用的模板匹配算法主要有基于灰度值的匹配和基于形狀特征的匹配?;诨叶戎档钠ヅ湟?yàn)槭腔谝粋€(gè)個(gè)像素點(diǎn)的灰度值的比較,實(shí)時(shí)性較差,且受光照和環(huán)境的的影響比較大。而為了滿足機(jī)械臂準(zhǔn)確的實(shí)時(shí)抓取,所選取的算法必須具有良好的實(shí)時(shí)性,并對(duì)環(huán)境因素和光照變化具有足夠的魯棒性。對(duì)物體的形狀特征匹配進(jìn)行研究后,本研究提出一種快速的基于輪廓的Hu不變矩的模板匹配算法即通過圖像預(yù)處理后提取目標(biāo)物與模板的輪廓,然后通過對(duì)兩個(gè)輪廓的Hu矩進(jìn)行計(jì)算,并根據(jù)提供的標(biāo)準(zhǔn)進(jìn)行比較從而實(shí)現(xiàn)輪廓的匹配達(dá)到對(duì)目標(biāo)物的識(shí)別。經(jīng)驗(yàn)證該算法對(duì)于物體的形狀描述較好,且具有平移、灰度、尺度、旋轉(zhuǎn)不變性,適合用于對(duì)零件的匹配識(shí)別,具體算法如下:
三峽水庫(kù)自2003年試驗(yàn)性蓄水以來,每年的水位調(diào)度過程基本相似且都具有“驟升緩降”的特點(diǎn)(見圖2),即每年的8月—11月為水位驟升段,大約歷時(shí)3個(gè)月,而每年的11月至次年6月為水位緩降段,大約歷時(shí)8個(gè)月。
定義一個(gè)輪廓的p+q階矩如下:
(1)
式中:p-對(duì)應(yīng)x維度上的矩,p=0,1,2...n;q—對(duì)應(yīng)y維度上的矩,q=0,1,2...;n—邊界輪廓上像素點(diǎn)的個(gè)數(shù)。
接著由公式(1)可計(jì)算得出輪廓的中心矩公式:
(2)
式中:p,q=0,1,2...。
其中:
(3)
進(jìn)一步計(jì)算得出輪廓的歸一化的中心矩為:
(4)
式中:p,q=0,1,2...;ρ=(p+q)/2+1。
最后本研究利用二階和三階歸一化的中心矩構(gòu)造了下式,7個(gè)基于輪廓的Hu不變矩(h1到h7),這些矩對(duì)某些變化如縮放,旋轉(zhuǎn)和鏡像映射具有不變性:
(5)
Hu不變矩構(gòu)造完成后,本研究可以簡(jiǎn)單地提供兩個(gè)物體并提取兩個(gè)物體的輪廓。然后計(jì)算它們的Hu矩并根據(jù)提供的標(biāo)準(zhǔn)進(jìn)行比較,以判別兩個(gè)物體是否相似。所提供的3種比較標(biāo)準(zhǔn)如下:
(6)
(7)
本研究根據(jù)計(jì)算公式(6)中的值來判定兩個(gè)物體的相似程度,完全相同的兩個(gè)物體則計(jì)算的值為0,若計(jì)算的值越靠近1,則代表兩個(gè)物體的相似程度越差。在用于模板匹配識(shí)別時(shí),可以設(shè)定一個(gè)閾值,低于此閾值則認(rèn)為匹配成功,確認(rèn)為要尋找的目標(biāo)物體,否則則認(rèn)為匹配失敗,繼續(xù)進(jìn)行對(duì)下一個(gè)目標(biāo)進(jìn)行匹配。
以公式(6)中,為計(jì)算標(biāo)準(zhǔn),模板零件與工況中各零件相匹配計(jì)算出的部分實(shí)驗(yàn)數(shù)據(jù)I1值如表1所示。
表1 模板零件與工況中各零件的匹配值表
若將閾值設(shè)為0.05,由表1的結(jié)果可看出,模板與目標(biāo)零件的匹配值遠(yuǎn)低于該值,而模板與非目標(biāo)零件匹配值遠(yuǎn)高于此值,故該算法中,以模板零件與目標(biāo)工件和非目標(biāo)工件之間匹配值具有較大數(shù)值差為基礎(chǔ),通過閾值設(shè)定可成功將目標(biāo)零件匹配出。
預(yù)處理后的用于匹配的三角形模板輪廓圖如圖4所示。
圖4 預(yù)處理后的模板
通過上述算法,匹配識(shí)別出的三角形目標(biāo)工件輪廓圖如圖5所示。
圖5 匹配出的目標(biāo)工件
對(duì)于材質(zhì)均勻的工件來說,工件的質(zhì)心既是工件的形心。在匹配出目標(biāo)工件后,分別計(jì)算出目標(biāo)工件輪廓的輪廓矩m00、m01和m10,然后按照公式(3)即可算出目標(biāo)工件的形心。
(8)
對(duì)公式(8)做θ的導(dǎo)數(shù)并使之為0,則可得方程:
(9)
解該方程可得θ值,即:
(10)
當(dāng)獲得目標(biāo)工件在圖像中的位姿之后,還需要對(duì)抓取系統(tǒng)進(jìn)行標(biāo)定,包括相機(jī)標(biāo)定和手眼標(biāo)定。相機(jī)標(biāo)定主要是利用張正友法標(biāo)定,確定相機(jī)的內(nèi)外參,從而確定圖像坐標(biāo)系到攝像機(jī)坐標(biāo)系的轉(zhuǎn)換關(guān)系;手眼標(biāo)定利用Tsai-Lenz法進(jìn)行標(biāo)定,可確定攝像機(jī)坐標(biāo)系和機(jī)器人末端坐標(biāo)系的轉(zhuǎn)換關(guān)系;而機(jī)器人末端坐標(biāo)系和基坐標(biāo)系的轉(zhuǎn)換關(guān)系可通過控制器讀出,所以本研究經(jīng)過上述步驟,可建立抓取系統(tǒng)的參數(shù)化模型,確立位姿的轉(zhuǎn)換關(guān)系,從而計(jì)算得出目標(biāo)工件相對(duì)機(jī)器人基坐標(biāo)系的位置,引導(dǎo)機(jī)器人實(shí)現(xiàn)抓取[10]。
為了驗(yàn)證本研究提出的算法有效性,筆者在六自由度的IRB120機(jī)器人上進(jìn)行智能抓取實(shí)驗(yàn),實(shí)驗(yàn)采用集成性高,成本低的網(wǎng)絡(luò)攝像機(jī)。首先,在自然光及一般照明條件下,筆者對(duì)機(jī)器人視場(chǎng)范圍內(nèi)工作平臺(tái)上任意放置的幾個(gè)大小形狀不同的典型工件進(jìn)行拍照,隨后對(duì)采集到的圖像進(jìn)行預(yù)處理,模板匹配,位姿計(jì)算得到工件在圖像中的位姿,利用之前建立的系統(tǒng)參數(shù)模型,換算得到目標(biāo)工件在機(jī)器人基坐標(biāo)系中的坐標(biāo)位置及姿態(tài),將該位姿與機(jī)器人抓取時(shí)機(jī)械手末端相對(duì)基坐標(biāo)系的位姿相比較(該位姿可在機(jī)器人示教器上直接讀出),得出位置誤差在14 mm以內(nèi),姿態(tài)角度誤差在15°以內(nèi),在誤差范圍允許之內(nèi)。實(shí)驗(yàn)裝置實(shí)物圖如圖6所示。
圖6 實(shí)驗(yàn)裝置實(shí)物圖
部分實(shí)驗(yàn)結(jié)果如表2所示(由于使用單目攝像機(jī)結(jié)構(gòu),不考慮Z坐標(biāo)的值)。
表2 單目視覺系統(tǒng)視覺定位與實(shí)際結(jié)果對(duì)比表
本研究將單目視覺技術(shù)應(yīng)用于工業(yè)機(jī)器人智能抓取系統(tǒng)設(shè)計(jì)中,通過提取工件的輪廓、模板匹配、位姿計(jì)算等可讓系統(tǒng)準(zhǔn)確地對(duì)目標(biāo)工件進(jìn)行識(shí)別和定位,具有系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、實(shí)時(shí)性好,成本低廉等特點(diǎn)。經(jīng)搭建的實(shí)驗(yàn)平臺(tái)驗(yàn)證得出的結(jié)果表明了該系統(tǒng)的可行性,且能夠達(dá)到實(shí)時(shí)準(zhǔn)確抓取目標(biāo)工件的預(yù)期目的,對(duì)實(shí)現(xiàn)工業(yè)自動(dòng)化,提高生產(chǎn)效率具有重要意義。
由于本研究中引入的是單目視覺,系統(tǒng)中存在對(duì)工件的深度信息無法進(jìn)行準(zhǔn)確獲取的不足,若在生產(chǎn)中需要獲取工件精確的深度信息,則需要在系統(tǒng)中引入雙目視覺或結(jié)構(gòu)光,進(jìn)行準(zhǔn)確的三維姿態(tài)測(cè)量,這是完善系統(tǒng)的方法,也是今后進(jìn)一步研究的方向。
[1] NIKU S B. Introduction to robotics: analysis, control, applications, second edition[M]. 2th ed. Beijing: Publishing House of Electronics Industry,2013.
[2] 張廣軍.視覺測(cè)量[M].北京:科學(xué)出版社,2008.
[3] 王健強(qiáng),呂 游.一種面向工業(yè)機(jī)器人智能抓取的視覺引導(dǎo)技術(shù)研究[J].機(jī)械設(shè)計(jì)與制造,2009(9):172-174.
[4] 李星云,李眾立,廖曉波.基于單目視覺的工業(yè)機(jī)器人定位系統(tǒng)的設(shè)計(jì)[J].機(jī)床與液壓,2015,43(9):35-38.
[5] 馬頌德,張正友.計(jì)算機(jī)視覺[M].北京:科學(xué)出版社,1998.
[6] TSAI R Y, LENZ R K. A new technique for fully autonomous and efficient 3d roboticsh and/eye calibration[J].IEEETransactionsonRoboticsandAutomation,1989,5(3):345-358.
[7] 翟敬梅,董鵬飛,張 鐵.基于視覺引導(dǎo)的工業(yè)機(jī)器人定位抓取系統(tǒng)設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與研究,2014,30(5):45-49.
[8] 李福運(yùn).工業(yè)機(jī)器人TCP自標(biāo)定精度疊加方法的設(shè)計(jì)與應(yīng)用[J].機(jī)械,2017(8):50-53.
[9] 馮偉興,賀 波,王臣業(yè).Visual C++數(shù)字圖像模式識(shí)別技術(shù)詳解[M].2版.北京:機(jī)械工業(yè)出版社,2013.
[10] 張 振.基于單目視覺的工件位姿識(shí)別與抓取系統(tǒng)[D].杭州:中國(guó)計(jì)量大學(xué)機(jī)電工程學(xué)院,2016.