您好!歡迎訪(fǎng)問(wèn)杭州藍芯科技有限公司網(wǎng)站!
全國服務(wù)咨詢(xún)熱線(xiàn):

13675884706

當前位置:首頁(yè) > 技術(shù)文章 > 3D視覺(jué)技術(shù)在機器人抓取作業(yè)中的應用

3D視覺(jué)技術(shù)在機器人抓取作業(yè)中的應用

更新時(shí)間:2019-09-17      點(diǎn)擊次數:1454

摘要:近年來(lái),機器人自動(dòng)化領(lǐng)域越來(lái)越多地應用3D視覺(jué)技術(shù)對目標物體進(jìn)行定位。本文主要研究3D視覺(jué)技術(shù)在機器人抓取作業(yè)中的應用,總結了3D視覺(jué)技術(shù)在識別、定位物體時(shí)面臨的挑戰,給出了抓取作業(yè)機器人3D視覺(jué)系統的設計方法,歸納了現有的3D表面成像方法和視覺(jué)處理算法,后給出一個(gè)結合3D視覺(jué)技術(shù)對白色抽屜紙盒進(jìn)行抓取分揀的實(shí)際應用案例。

關(guān)鍵詞:3D視覺(jué);工業(yè)機器人;抓取

 

1 引言

隨著(zhù)經(jīng)濟的發(fā)展與科技的進(jìn)步,人們越來(lái)越多地將自動(dòng)化技術(shù)應用到生產(chǎn)與生活中,與此同時(shí),也對自動(dòng)化技術(shù)提出了更高的要求。近十年來(lái),工業(yè)機器人的普及使得機器人自動(dòng)化得到了更廣泛的應用和關(guān)注。很多機器人系統已經(jīng)集成了視覺(jué)系統,利用機器視覺(jué)技術(shù)實(shí)現檢測、識別、定位等功能,為后續的機器人運動(dòng)提供必要的信息。

在許多自動(dòng)化應用場(chǎng)合中,如自動(dòng)化分揀、裝配、拆垛、碼垛、上料等過(guò)程中,工業(yè)機器人經(jīng)常被用來(lái)進(jìn)行抓取作業(yè)。要完成抓取操作,機器人系統可能需要完成目標感知、運動(dòng)規劃、抓取規劃等一系列任務(wù)。視覺(jué)系統在機器人抓取作業(yè)中的作用就是識別、定位目標物體,為機器人提供目標物體的類(lèi)型與位姿信息。其中,位姿估計的精度關(guān)系到抓取的成功率與精度,是非常重要的技術(shù)參數。

3D視覺(jué)技術(shù)作為新興的技術(shù)領(lǐng)域還存在很多亟待解決的問(wèn)題,但2D視覺(jué)已不能滿(mǎn)足空間抓取的應用要求。與2D視覺(jué)相比,3D視覺(jué)技術(shù)的優(yōu)點(diǎn)有:

 

(1)3D視覺(jué)可以提供目標物體6DOF的位姿數據,而2D視覺(jué)僅能提供平面內3DOF的位姿數據;

(2)3D視覺(jué)能給出目標物體的深度信息或物體表面的點(diǎn)云信息。

但與此同時(shí),3D視覺(jué)技術(shù)在機器人抓取應用中仍然面臨許多挑戰:

(1)點(diǎn)云空洞:用3D相機捕捉反光、透明、網(wǎng)狀物體表面的點(diǎn)云信息,經(jīng)常會(huì )出現數據的丟失,丟失的點(diǎn)云數據形成了點(diǎn)云空洞;

(2)點(diǎn)云粘連:多個(gè)物體雜亂堆放或者兩個(gè)物體表面靠近擺放時(shí),不同物體表面的點(diǎn)云會(huì )粘連在一起,這就涉及到如何穩定、準確地進(jìn)行點(diǎn)云分割;

(3)點(diǎn)云密度不一致:物體表面與3D相機之間的相對位姿、物體表面的顏色均會(huì )影響點(diǎn)云的密度,使得目標場(chǎng)景的點(diǎn)云密度不一致,這在一定程度上給點(diǎn)云處理算法帶來(lái)了困難;

(4)視野局限:有限的相機視角、遮擋和陰影效果,都會(huì )阻礙3D相機獲得抓取目標的表面全貌,進(jìn)而阻礙對抓取目標的識別;

(5)速度:3D視覺(jué)的原理要求其處理的數據量較大。3D相機的分辨率越高,所采集的點(diǎn)云質(zhì)量越好,越能表征物體表面更細微的幾何特征,但相應地帶來(lái)的數據量就越大。為了適應實(shí)際應用需要,如何提高3D相機獲取目標場(chǎng)景點(diǎn)云的速度、點(diǎn)云處理算法的速度仍是需要研究的課題。

此外,相機傳感器的噪聲,點(diǎn)云分割噪聲,光照條件的變化,物體的顏色等諸多因素都是3D視覺(jué)技術(shù)所面臨的問(wèn)題。

本文主要研究3D視覺(jué)技術(shù)在機器人抓取作業(yè)中的應用。文章第二部分介紹抓取作業(yè)機器人3D視覺(jué)系統的設計,包括視覺(jué)設備的選擇、與機械設計的關(guān)系;第三部分介紹幾種3D表面成像技術(shù);第四部分介紹3D視覺(jué)處理算法,包括點(diǎn)云分割、3D匹配等;第五部分給出一個(gè)實(shí)際應用案例:工業(yè)機器人結合3D視覺(jué)分揀白色抽屜紙盒;第六部分為總結。

 

2 抓取作業(yè)機器人3D視覺(jué)系統的設計

2.1 3D相機的選擇

 

 

圖1 3D相機的選擇

 

選擇3D相機時(shí)需要考慮相機與目標場(chǎng)景之間的距離以及目標場(chǎng)景的尺寸。目標場(chǎng)景合適位于相機的中間視場(chǎng)附近,不超出近視場(chǎng)和遠視場(chǎng)的邊界,即目標場(chǎng)景的高度不超出測量范圍。

3D相機的成像精度需要滿(mǎn)足應用場(chǎng)景的抓取精度要求。通常,工作距離越大,3D相機的視場(chǎng)越大,但成像的精度越低。此外,相機的分辨率、點(diǎn)云的獲取速度也是評價(jià)3D成像系統的重要指標。其中,相機的分辨率決定了點(diǎn)云數據量的大小及其對物體細節的表征程度,關(guān)系到點(diǎn)云處理算法的設計。點(diǎn)云的獲取時(shí)間加上點(diǎn)云處理算法的執行時(shí)間必須滿(mǎn)足抓取應用的節拍要求。

此外,相機的性?xún)r(jià)比、系統的可靠性也是選擇相機時(shí)需要考量的因素。

2.2 光源、遮光板的選擇

為了避免外界環(huán)境光對視覺(jué)系統的影響、保證視覺(jué)系統的穩定性,有時(shí)需要外加光源和遮光板。外加的光源不能影響3D相機成像。

2.3 視覺(jué)系統對機械設計的要求

當相機固定安裝時(shí),機器人需要手持標定板做手眼標定。為了方便進(jìn)行手眼標定,可設計專(zhuān)門(mén)的Tool抓持標定板,留出足夠的空間以保證標定板在手眼標定過(guò)程中不會(huì )與機器人發(fā)生干涉。相機固定安裝的優(yōu)點(diǎn)是,對Tool位姿進(jìn)行變更后,無(wú)需再做機器人手眼標定。

當機器人手持相機拍照時(shí),一般要求抓取作業(yè)Tool(夾具、吸盤(pán))不遮擋相機的視野。

 

3 3D表面成像技術(shù)

3D表面成像/重構/測量技術(shù),可用于測量物體表面上點(diǎn)的(x,y,z)坐標,測量結果可表示為深度圖。除了測量三維坐標,3D表面成像系統也可輸出物體表面空間點(diǎn)的其他光學(xué)特征值,如反射率、顏色等。這時(shí)的點(diǎn)云測量結果可一般表示為,其中,fi為一向量,代表第i個(gè)點(diǎn)的光學(xué)特征值。如常見(jiàn)的RGB-D(紅綠藍-深度)測量數據可表示為。

目前,常見(jiàn)的3D表面成像技術(shù)有:雙目立體視覺(jué)(binocular stereo vision),多目立體視覺(jué)(multi-view stereo vision),線(xiàn)結構光三角測量(laser triangulation with sheet of light),編碼結構光三角測量(encoded structured light),飛行時(shí)間深度測量(time of flight),聚焦深度測量(depthfrom focus),光度立體視覺(jué)(photometric stereovision)。

3.1 雙目立體視覺(jué)(binocular stereo vision)

使用兩個(gè)相機拍攝同一個(gè)目標場(chǎng)景,通過(guò)匹配場(chǎng)景內同一物理目標點(diǎn)投影到兩幅圖像中的像點(diǎn)(同源點(diǎn)),測量得到該點(diǎn)的空間三維坐標。雙目立體視覺(jué)的主要任務(wù)是雙目系統的標定和同源點(diǎn)的匹配。其中,同源點(diǎn)的匹配(立體匹配,stereo matching)方法有相關(guān)法、多重網(wǎng)格法和多掃描線(xiàn)法。這些方法都依賴(lài)于目標場(chǎng)景的紋理、結構等特征,因此若能主動(dòng)制造特征,如投射隨機分布的散斑圖案、編碼結構光等圖案,則能變被動(dòng)為主動(dòng),通過(guò)增強匹配的魯棒性,使方法具有普適性。

 

 

圖2 雙目立體視覺(jué)原理示意圖

 

3.2 線(xiàn)結構光三角測量(laser triangulation with sheet of light)

線(xiàn)激光器投射出的光平面照射到物體表面上會(huì )形成表征其輪廓的亮線(xiàn),這些窄亮的細線(xiàn)通常被稱(chēng)為光條。線(xiàn)結構光三角測量的基本思想是:通過(guò)相機拍攝線(xiàn)結構光發(fā)射器所照射的目標物體,得到物體表面上光條中心位置的一系列3D坐標。因此,目標物體與線(xiàn)結構光成像系統之間做相對運動(dòng)并在多個(gè)不同位置進(jìn)行拍照測量,才能獲得目標物體完整的3D表面輪廓。

線(xiàn)結構光三角測量的主要任務(wù)是:標定相機及其與光平面之間的相對位姿,標定目標物體與成像系統之間的相對運動(dòng),提取光條的中心點(diǎn)。

 

 

圖3 線(xiàn)結構光三角測量原理示意圖

 

3.3 編碼結構光三角測量(encoded structured light)

編碼結構光激光器向目標物體投射經(jīng)過(guò)特殊設計的編碼圖案,基于不同的圖案編碼方法,相機可能需要拍攝一幅或多幅被激光器照射的目標物體表面圖像,通過(guò)對比圖像上經(jīng)過(guò)物體表面調制的編碼光圖案與未調制的編碼光圖案可以測量獲得目標表面的3D形貌。與線(xiàn)結構光三角測量相比,只要編碼光能夠照射到整個(gè)物體表面,物體與成像系統之間無(wú)需做相對運動(dòng)即可獲取物體表面的幾何全貌。

 

 

圖4 編碼結構光原理示意圖

 

3.4 飛行時(shí)間深度測量(time of flight)

傳感器向目標物體發(fā)射經(jīng)過(guò)調制的近紅外光脈沖,然后再接收從物體表面反射回來(lái)的光脈沖,通過(guò)計算返回脈沖與發(fā)射脈沖之間的相位差即可測出目標物體的深度。

3.5 聚焦深度測量(depth from focus)

由于相機的景深有限,在某物距下,目標物體表面上只有一部分點(diǎn)能夠在成像平面上清晰成像。聚焦深度測量利用這一原理,通過(guò)拍攝不同物距下同一物體的多幅圖像,提取圖像上清晰成像的像點(diǎn)位置,計算得到物體表面上各點(diǎn)的深度坐標。聚焦深度測量技術(shù)的精度一般高于雙目立體視覺(jué)和線(xiàn)結構光三角測量,但因其需要配合遠心鏡頭或顯微鏡頭使用,只適于對小尺寸物體進(jìn)行測量。

3.6 光度立體視覺(jué)(photometric stereo vision)

物體表面反射光量的多少取決于該表面與光源和觀(guān)察者之間的相對姿態(tài)。采用不同的角度對靜止目標物體進(jìn)行照明,在每個(gè)照明角度下,使用同一臺相機在同一個(gè)固定視角下拍攝一幅圖像,光度立體視覺(jué)技術(shù)使用這組圖像估計出目標物體表面的法向量。目前,機器人抓取應用中使用的3D相機主要采用3.1 ~ 3.4中的成像原理。

 

4 3D視覺(jué)處理算法

按照不同的功能,3D視覺(jué)處理算法可分為:

4.1 點(diǎn)云濾波

點(diǎn)云的濾波(filter)算法主要用于點(diǎn)云數據的預處理,可實(shí)現去噪、平滑、采樣、特征提取等功能。濾波方法有:雙邊濾波、高斯濾波、條件濾波、隨機采樣一致性濾波等。

4.2 點(diǎn)云特征估計

4.2.1 點(diǎn)云局部特征估計

點(diǎn)云的局部特征(local feature)估計算法用于估計點(diǎn)云中一點(diǎn)或一點(diǎn)周?chē)鷶祩€(gè)鄰近點(diǎn)的特征值。這些特征包括法向量、曲率、邊界、點(diǎn)特征直方圖(PFH)、快速點(diǎn)特征直方圖(FPFH)、視角特征直方圖(VFH)、NARF描述子、旋轉投影統計特征(Rotational Projection Statistics)等。

4.2.2 點(diǎn)云整體特征估計

點(diǎn)云的整體特征(global feature)估計算法用于估計某個(gè)點(diǎn)云集合的特征,如點(diǎn)云的表面積、小外接盒、大直徑、截面曲線(xiàn)等。

4.3 點(diǎn)云關(guān)鍵點(diǎn)提取

關(guān)鍵點(diǎn)(key point),也稱(chēng)為興趣點(diǎn),因為具有某種特點(diǎn),可依照預先定義的標準被穩定地識別出來(lái)。點(diǎn)云關(guān)鍵點(diǎn)的提取算法有:Harris3D、ISS3D、NARF、SIFT、SUSAN、Trajkovic3D。

4.4 點(diǎn)云配準

由于遮擋等原因,為了獲得完整的目標表面3D點(diǎn)云,常常需要從不同的視角對同一目標物體進(jìn)行掃描。點(diǎn)云配準(registration)技術(shù)是將這些點(diǎn)云數據兩兩進(jìn)行匹配,計算它們之間互相重疊的部分,將它們拼接在一起,獲得更全面的目標物體表面點(diǎn)云。點(diǎn)云配準算法有近點(diǎn)迭代法(ICP)。

4.5 點(diǎn)云分割

點(diǎn)云分割(segmentation)算法用于將點(diǎn)云數據分割成不同的子集。依據應用需求,可采用不同的分割方法,如平面分割、柱面分割、歐幾里得聚類(lèi)提取、超體聚類(lèi)分割、區域生長(cháng)分割、基于小割的點(diǎn)云分割、基于法向量差的點(diǎn)云分割等。除了上述的3D點(diǎn)云分割方法,點(diǎn)云的分割也可結合2D圖像進(jìn)行。先在2D圖像上應用邊緣提取、深度學(xué)習等算法,然后再對點(diǎn)云進(jìn)行分割。

 

4.6 三維匹配

三維匹配(3D matching)算法的功能是在搜索數據中找到目標物體并確定它的3D位姿,其中,搜索數據可以是3D點(diǎn)云或2D圖像。三維匹配算法可分為基于形狀的3D匹配、基于表面的3D匹配和可變形表面的3D匹配。

4.7 點(diǎn)云擬合

如果某個(gè)點(diǎn)云子集為已知的幾何形狀,如平面、柱面、球面,可利用點(diǎn)云擬合算法進(jìn)行擬合求出相應的位姿和幾何參數信息。

此外,點(diǎn)云處理算法還包括k維樹(shù)、八叉樹(shù)等方法。

在機器人抓取作業(yè)中,視覺(jué)的重要任務(wù)之一是目標物體位姿的估計。要估計位姿,正確地分割點(diǎn)云是前提。通常,綜合利用4.1~4.4中的方法,然后再對點(diǎn)云進(jìn)行分割,后利用三維匹配或點(diǎn)云擬合估計出目標物體的位姿。

5 實(shí)際案例研究

5.1 白色抽屜紙盒機器人3D視覺(jué)分揀

任務(wù)描述:料框內雜亂堆放著(zhù)不同型號的白色抽屜紙盒,并且這些紙盒的各個(gè)表面的長(cháng)寬尺寸各不相同。3D視覺(jué)系統通過(guò)識別紙盒表面的尺寸將不同型號的紙盒區分開(kāi)來(lái),再由機器人將它們分別分揀到不同的料框中。

5.1.1 視覺(jué)系統設計

長(cháng)方形鐵質(zhì)料框的尺寸為500 X 385 X 180 mm,壁厚為1.5 mm,為避免反光并增加視覺(jué)對比度,在料框表面噴涂啞光黑漆。3D相機采用固定安裝,在長(cháng)方形料框的正上方進(jìn)行拍攝??紤]到ABB 2600機器人的工作范圍,3D相機距離料框底部的高度需大于1000 mm并盡可能取小值。

綜合考慮各種因素,這里選用Ensenso N20-1202-16-BL相機,該相機的工作原理是投射散斑紋理的雙目立體視覺(jué)技術(shù),其分辨率為1280 X 1024像素,小、大和合適工作距離分別為1100 mm、2200 mm、1400 mm。料框底部距離相機的距離設計為1400 mm,在該距離下3D相機的Z向分辨率為1.037 mm,能夠滿(mǎn)足四個(gè)真空吸盤(pán)的抓取精度要求;紙盒的大堆疊高度不超過(guò)230 mm,Ensenso N20-1202-16-BL在1150mm工作距離下的視野范圍為572.90 X 497.96 mm,能夠滿(mǎn)足視野要求。為避免環(huán)境光的影響,在相機頂部上方安裝遮光板,在相機旁邊加設白色光源。

 

 

圖5 白色抽屜盒分揀場(chǎng)景示意圖

 

5.1.2 視覺(jué)方法描述

為了識別紙盒表面的長(cháng)寬尺寸、估計紙盒表面的位姿,就需要對紙盒表面的3D點(diǎn)云進(jìn)行正確分割。這里將2D圖像處理技術(shù)與3D點(diǎn)云處理技術(shù)相結合:首先,相機接收到觸發(fā)信號,打開(kāi)散斑投影儀拍攝一幅3D點(diǎn)云圖像;然后,關(guān)閉散斑投影儀,拍攝一幅左相機矯正灰度圖像。Ensenso通過(guò)計算左相機矯正圖像上各像素點(diǎn)的空間3D坐標,生成一幅3D點(diǎn)云圖像。因而,Ensenso所拍攝的3D點(diǎn)云圖像(有三個(gè)通道,其像素值分別代表X,Y,Z坐標)上各點(diǎn)的像素值與左相機矯正圖像上同一位置的像素值是一一對應的,可通過(guò)分割左相機矯正圖像來(lái)實(shí)現紙盒表面3D點(diǎn)云的分割。

視覺(jué)程序設計思路:

首先,利用邊緣提取、邊緣連接、腐蝕、膨脹等算法在左相機矯正圖像上分割出不同的紙盒表面區域;

然后,取每個(gè)區域所對應的3D點(diǎn)云,估計這片點(diǎn)云的厚度,若厚度小于閾值t,則認為這片點(diǎn)云代表了一個(gè)紙盒表面的幾何形貌,計算這片點(diǎn)云的3D小外接盒區域,即可估算得到紙盒表面的長(cháng)寬尺寸、中心位置與姿態(tài);若厚度大于閾值t,則認為2D圖像分割失敗,這片點(diǎn)云至少代表兩個(gè)紙盒表面的幾何形貌,這時(shí)先根據點(diǎn)云的法向量、曲率等特征對其進(jìn)行3D分割,然后再進(jìn)入上述的厚度判斷與尺寸、位姿的計算程序。為了縮短程序執行時(shí)間,對點(diǎn)云做3D分割之前,預先對其進(jìn)行采樣以減少數據量。

檢查紙盒表面上方是否有遮擋,過(guò)濾掉上方有遮擋的結果,防止抓取過(guò)程中發(fā)生碰撞或損壞。

后,將處理結果按照表面中心高度、姿態(tài)方向和表面尺寸進(jìn)行綜合排序,輸出到機器人抓取路徑規劃程序當中。路徑規劃程序根據視覺(jué)輸出的結果引導機器人運動(dòng)并控制夾具動(dòng)作。

5.1.3 視覺(jué)算法處理結果

如圖6(左上)所示,料框中散亂堆放著(zhù)三種型號的白色抽屜紙盒,由視覺(jué)程序輸出的紙盒表面尺寸與位姿的排序結果如表1所示??梢钥闯?,視覺(jué)程序沒(méi)有給出被遮擋紙盒表面的計算結果。

 

 

圖6左上:Ensenso左相機矯正灰度圖;右上:3D點(diǎn)云渲染效果圖;左下:排序輸出結果;右下:5#紙盒表面點(diǎn)云圖

 

表1 白抽屜盒視覺(jué)算法輸出結果

 

經(jīng)過(guò)測試,在該視覺(jué)系統下,紙盒表面尺寸的測量誤差小于5 mm,表面中心定位誤差小于2 mm,表面姿態(tài)估計誤差小于5度。使用intel i7-6820HQ CPU、主頻2.7GHz的LenovoP50筆記本計算機,視覺(jué)處理時(shí)間為3~5 s。

 

6 總結

本文主要研究3D視覺(jué)技術(shù)在機器人抓取作業(yè)中的應用,歸納了3D視覺(jué)技術(shù)在機器人抓取作業(yè)中面臨的挑戰,對機器人抓取視覺(jué)系統的設計方法進(jìn)行了總結,搜集了當前主要的3D成像技術(shù)及3D視覺(jué)算法,后給出了應用案例。

 

來(lái)源:自動(dòng)化博覽

杭州藍芯科技有限公司
地址:杭州市余杭區文一西路1818-2號中國人工智能小鎮7-902
傳真:
關(guān)注我們
歡迎您關(guān)注我們的微信公眾號了解更多信息:
歡迎您關(guān)注我們的微信公眾號
了解更多信息