TWI723715B - 電腦裝置、控制機械手臂夾取和放置物件的方法 - Google Patents
電腦裝置、控制機械手臂夾取和放置物件的方法 Download PDFInfo
- Publication number
- TWI723715B TWI723715B TW108148469A TW108148469A TWI723715B TW I723715 B TWI723715 B TW I723715B TW 108148469 A TW108148469 A TW 108148469A TW 108148469 A TW108148469 A TW 108148469A TW I723715 B TWI723715 B TW I723715B
- Authority
- TW
- Taiwan
- Prior art keywords
- images
- target object
- image
- robotic arm
- rgb images
- Prior art date
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
本發明提供一種控制機械手臂夾取和放置物件的方法,包括獲取深度攝像機所拍攝的多組圖像;將每組圖像所包括的RGB圖像與深度圖像建立關聯;利用預設的影像處理演算法處理所述多張RGB圖像;將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;基於所述多張融合圖像構建三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件。本發明還提供實現控制所述機械手臂夾取和放置物件的方法的電腦裝置。本發明可以簡化機械手臂的定位問題,讓機械手臂在空間中抓取各種不同的物件。
Description
本發明涉及機器人控制技術領域,具體涉及一種電腦裝置、控制機械手臂夾取和放置物件的方法。
現行機械手臂架設須經由專業且訓練良好的工程師進行複雜且長時間的架設。此外,現行的機械手臂無法適應於各種環境做出抓與取的動作。
鑒於以上內容,有必要提出一種電腦裝置、控制機械手臂夾取和放置物件的方法,可使用立體視覺,讓機械手臂認知到自己所在的三度空間位置,以及各種物件的相關位置,經由此方式,簡化機械手臂的定位問題且配合相關物件辨識,可以讓機械手臂在空間中抓取各種不同的物件。
本發明的第一方面提供一種控制機械手臂夾取和放置物件的方法,所述方法包括:獲取機械手臂的深度攝像機所拍攝的多組圖像,其中,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;將每組圖像所包括的RGB圖像與深度圖像建立關聯;利用預設的影像處理演算法處理所述多張RGB圖像;將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;基於所述多張
融合圖像構建三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件。
優選地,所述利用預設的影像處理演算法處理所述多張RGB圖像包括:對所述多張RGB圖像作第一次處理,由此獲得經過所述第一次處理的多張RGB圖像,該第一次處理包括:利用SURF演算法對所述多張RGB圖像中每相鄰的兩張RGB圖像作特徵點匹配;對經過所述第一次處理的多張RGB圖像作第二次處理,由此獲得經過所述第二次處理的多張RGB圖像,該第二次處理包括:利用RANSAC演算法,確認經過所述第一次處理的多張RGB圖像中的每相鄰的兩張RGB圖像是否正確匹配特徵點,並剔除匹配錯誤的特徵點;及對經過所述第二次處理的多張RGB圖像作第三次處理,由此獲得經過所述第三次處理的多張RGB圖像,該第三次處理包括:利用RANSAC演算法,對經過所述第二次處理的多張RGB圖像中每相鄰的兩張RGB圖像計算圖形角度差異,並基於計算得到的圖形角度差異對應修正每相鄰的兩張RGB圖像中的一者,使得任意相鄰的兩張RGB圖像的圖形角度相同。
優選地,所述基於所述多張融合圖像構建三維地圖包括:計算所述多張融合圖像中的每張融合圖像的每個圖元點在實體空間的三維坐標;及將所述每張融合圖像與該每張融合圖像的每個圖元點在實體空間的三維坐標建立關聯,並縫合所述多張融合圖像,由此獲得所述三維地圖。
優選地,所述每張融合圖像的每個圖元點p1在實體空間的三維坐標為(x1,y1,z1),其中,z1=d/s;x1=(xx1-cx)*z1/fx;y1=(yy1-cy)*z1/fy;其中,xx1為圖元點p1在融合圖像中的橫坐標,yy1為圖元點p1在融合圖像中的縱坐標,d為圖元點p1在融合圖像中的豎坐標,fx為所述深度攝像機在所述實體空間所在的坐標系的x軸上的焦距;fy為所述深度攝像機在所述實體空間所在的坐標系的y軸上的焦距;cx為該深度攝像機的光圈中心到所述x軸的距離,cy為該深度攝像機的光圈中心到到所述y軸的距離;s為所述深度攝像機的縮放值。
優選地,所述控制所述機械手臂基於所述三維地圖夾取和放置物件包括:當已經獲得所述三維地圖時,基於所述三維地圖定位所述機械手臂的位置坐標;讀取目標物件的第一位置坐標,該第一位置坐標為所述目標物件當前所在位置的坐標;控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件;讀取所述目標物件的第二位置坐標,該第二位置坐標為所述目標物件需要放置的位置所在的坐標;及控制所述機械手臂基於所述目標物件的所述第二位置坐標放置所述目標物件。
優選地,所述控制所述機械手臂基於所述三維地圖夾取和放置物件還包括:於控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件後,確定所述機械手臂是否成功抓取所述目標物件;當所述機械手臂抓取所述目標物件失敗時,辨識所述目標物件,並測量所述目標物件的位置坐標;及控制所述機械手臂基於所測量的所述目標物件的位置坐標來抓取所述目標物件。
本發明第二方面提供一種電腦裝置,所述電腦裝置包括:儲存器;處理器;以及多個模組,所述多個模組被儲存在所述儲存器中並被由所述處理器執行,所述多個模組包括:獲取模組,用於獲取機械手臂的深度攝像機所拍攝的多組圖像,其中,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;執行模組,用於將每組圖像所包括的RGB圖像與深度圖像建立關聯;所述執行模組,還用於利用預設的影像處理演算法處理所述多張RGB圖像;所述執行模組,還用於將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;所述執行模組,還用於基於所述多張融合圖像構建三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件。
優選地,所述利用預設的影像處理演算法處理所述多張RGB圖像包括:對所述多張RGB圖像作第一次處理,由此獲得經過所述第一次處理的多張RGB圖像,該第一次處理包括:利用SURF演算法對所述多張RGB圖像中
每相鄰的兩張RGB圖像作特徵點匹配;對經過所述第一次處理的多張RGB圖像作第二次處理,由此獲得經過所述第二次處理的多張RGB圖像,該第二次處理包括:利用RANSAC演算法,確認經過所述第一次處理的多張RGB圖像中的每相鄰的兩張RGB圖像是否正確匹配特徵點,並剔除匹配錯誤的特徵點;及對經過所述第二次處理的多張RGB圖像作第三次處理,由此獲得經過所述第三次處理的多張RGB圖像,該第三次處理包括:利用RANSAC演算法,對經過所述第二次處理的多張RGB圖像中每相鄰的兩張RGB圖像計算圖形角度差異,並基於計算得到的圖形角度差異對應修正每相鄰的兩張RGB圖像中的一者,使得任意相鄰的兩張RGB圖像的圖形角度相同。
優選地,所述基於所述多張融合圖像構建三維地圖包括:計算所述多張融合圖像中的每張融合圖像的每個圖元點在實體空間的三維坐標;及將所述每張融合圖像與該每張融合圖像的每個圖元點在實體空間的三維坐標建立關聯,並縫合所述多張融合圖像,由此獲得所述三維地圖。
優選地,所述每張融合圖像的每個圖元點p1在實體空間的三維坐標為(x1,y1,z1),其中,z1=d/s;x1=(xx1-cx)*z1/fx;y1=(yy1-cy)*z1/fy;其中,xx1為圖元點p1在融合圖像中的橫坐標,yy1為圖元點p1在融合圖像中的縱坐標,d為圖元點p1在融合圖像中的豎坐標,fx為所述深度攝像機在所述實體空間所在的坐標系的x軸上的焦距;fy為所述深度攝像機在所述實體空間所在的坐標系的y軸上的焦距;cx為該深度攝像機的光圈中心到所述x軸的距離,cy為該深度攝像機的光圈中心到到所述y軸的距離;s為所述深度攝像機的縮放值。
優選地,所述控制所述機械手臂基於所述三維地圖夾取和放置物件包括:當已經獲得所述三維地圖時,基於所述三維地圖定位所述機械手臂的位置坐標;讀取目標物件的第一位置坐標,該第一位置坐標為所述目標物件當前所在位置的坐標;控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件;讀取所述目標物件的第二位置坐標,該第
二位置坐標為所述目標物件需要放置的位置所在的坐標;及控制所述機械手臂基於所述目標物件的所述第二位置坐標放置所述目標物件。
優選地,所述控制所述機械手臂基於所述三維地圖夾取和放置物件還包括:於控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件後,確定所述機械手臂是否成功抓取所述目標物件;當所述機械手臂抓取所述目標物件失敗時,辨識所述目標物件,並測量所述目標物件的位置坐標;及控制所述機械手臂基於所測量的所述目標物件的位置坐標來抓取所述目標物件。
本發明實施例中所述的電腦裝置、控制機械手臂夾取和放置物件的方法,通過獲取深度攝像機所拍攝的多組圖像,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;將每組圖像所包括的RGB圖像與深度圖像建立關聯;利用預設的影像處理演算法處理所述多張RGB圖像;將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;基於所述多張融合圖像構建三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件,可使用立體視覺,讓機械手臂認知到自己所在的三度空間位置,以及各種物件的相關位置,經由此方式,簡化機械手臂的定位問題且配合相關物件辨識,可以讓機械手臂在空間中抓取各種不同的物件。
30:控制系統
301:獲取模組
302:執行模組
3:電腦裝置
4:機械手臂
31:儲存器
32:處理器
33:通信匯流排
41:深度攝像機
42:力感測器
為了更清楚地說明本發明實施例或習知技術中的技術方案,下面將對實施例或習知技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。
圖1是本發明較佳實施例提供的構建三維地圖的方法流程圖。
圖2是本發明較佳實施例提供的控制機械手臂夾取和放置物件的方法的流
程圖。
圖3是本發明較佳實施例提供的控制系統的模組圖。
圖4是本發明較佳實施例提供的電腦裝置和機械手臂的示意圖。
如下具體實施方式將結合上述附圖進一步說明本發明。
為了能夠更清楚地理解本發明的上述目的、特徵和優點,下面結合附圖和具體實施例對本發明進行詳細描述。需要說明的是,在不衝突的情況下,本發明的實施例及實施例中的特徵可以相互組合。
在下面的描述中闡述了很多具體細節以便於充分理解本發明,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
除非另有定義,本文所使用的所有的技術和科學術語與屬於本發明的技術領域的技術人員通常理解的含義相同。本文中在本發明的說明書中所使用的術語只是為了描述具體的實施例的目的,不是旨在於限制本發明。
圖1是本發明較佳實施例提供的三維地圖構建方法的流程圖。
需要說明的是,在本實施例中,所述三維地圖構建方法可以應用於電腦裝置中,對於需要進行三維地圖構建的電腦裝置,可以直接在電腦裝置上集成本發明的方法所提供的用於構建三維地圖的功能,或者以軟體開發套件(Software Development Kit,SDK)的形式運行在電腦裝置上。
如圖1所示,所述三維地圖構建方法具體包括以下步驟,根據不同的需求,該流程圖中步驟的順序可以改變,某些步驟可以省略。
步驟S1、電腦裝置獲取機械手臂的深度攝像機所拍攝的多組圖像,其中,每組圖像包括一張RGB圖像和一張深度圖像。因此,所述多組圖像包括多張RGB圖像和多張深度圖像。電腦裝置將每組圖像所包括的RGB圖像與深
度圖像建立關聯。本實施例中,每張RGB圖像對應一張深度圖像。
在本實施例中,所述多組圖像為電腦裝置控制所述機械手臂的深度攝像機在第一預設角度範圍內每轉動第二預設角所拍攝的圖像。
在本實施例中,每組圖像所包括的RGB圖像和深度圖像為所述深度攝像機同時刻所拍攝,即每組圖像所包括的RGB圖像的拍攝時間和深度圖像的拍攝時間相同。
在一個實施例中,所述第一預設角度範圍為360度。所述第二預設角度為30度、60度或其他角度值。
舉例而言,電腦裝置可以控制所述深度攝像機每順時針轉動30度即控制該深度攝像機對當前場景進行拍攝,獲得當前場景的RGB圖像和深度圖像。
在一個實施例中,所述深度攝像機安裝於機械手臂的末端。
步驟S2、電腦裝置對所述多張RGB圖像作第一次處理,由此獲得經過所述第一次處理的多張RGB圖像。該第一次處理包括:利用SURF演算法對所述多張RGB圖像中每相鄰的兩張RGB圖像作特徵點匹配。
本實施例中,所述相鄰的兩張RGB圖像可以是指拍攝時間相鄰的兩張RGB圖像。
舉例而言,假設所述深度攝像機先後依次拍攝了三張RGB圖像,分別是R1、R2、R3,則R1和R2為相鄰的兩張RGB圖像,R2和R3為相鄰的兩張RGB圖像。那麼電腦裝置則利用SURF演算法對該三張RGB圖像中的R1和R2作特徵點匹配,以及對R2和R3作特徵點匹配。
步驟S3、電腦裝置對經過所述第一次處理的多張RGB圖像作第二次處理,由此獲得經過所述第二次處理的多張RGB圖像。該第二次處理包括:利用RANSAC演算法,確認經過所述第一次處理的多張RGB圖像中的每相鄰的兩張RGB圖像是否正確匹配特徵點,並剔除匹配錯誤的特徵點。
步驟S4、電腦裝置對經過所述第二次處理的多張RGB圖像作第三
次處理,由此獲得經過所述第三次處理的多張RGB圖像。該第三次處理包括:利用RANSAC演算法,對經過所述第二次處理的多張RGB圖像中每相鄰的兩張RGB圖像計算圖形角度差異,並基於計算得到的圖形角度差異對應修正每相鄰的兩張RGB圖像中的一者,使得任意相鄰的兩張RGB圖像的圖形角度相同。
在一個實施例中,被修正的RGB圖像為每相鄰的兩張RGB圖像中拍攝時間在後的RGB圖像。
舉例而言,仍然假設所述深度攝像機先後依次拍攝了三張RGB圖像,分別是R1、R2、R3,當該R1、R2、R3經過所述第二次處理後,電腦裝置則可以利用RANSAC演算法對經過所述第二次處理後的R1和R2計算圖形角度差異,並基於計算得到的圖形角度差異修正R2,使得R1和R2的圖形角度相同;然後利用RANSAC演算法對經過所述第二次處理後的R2和R3計算圖形角度差異,並基於計算得到的圖形角度差異修正R3,使得R2和R3的圖形角度相同。
步驟S5、電腦裝置將經過所述第三次處理的多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像。
所述多張融合圖像中的每張融合圖像是指經過所述第三次處理的每張RGB圖像融合了對應的深度圖像的深度資訊的圖像。即融合後的圖像既包含深度資訊,也包含色彩資訊。
本實施中,電腦裝置可以將經過所述第三次處理的多張RGB圖像中的每張RGB圖像的相素值與對應的深度圖像的深度值作1:1的迭合。
舉例而言,假設圖元點p1在經過所述第三次處理的RGB圖像中坐標為(xx1,yy1),該圖元點p1在對應的深度圖像中的深度值為d,則將經過所述第三次處理的RGB圖像的相素值與對應的深度圖像的深度值作1:1的迭合後,該圖元點p1在融合圖像中的坐標為(xx1,yy1,d)。即xx1為圖元點p1在融合圖像中的橫坐標,yy1為圖元點p1在融合圖像中的縱坐標,d為圖元點p1在融合圖像中的豎坐標。
步驟S6、電腦裝置基於所述多張融合圖像構建三維地圖,並儲存
所述三維地圖。例如,將所述三維地圖儲存於該電腦裝置的儲存器中。
在一個實施例中,電腦裝置可以基於所述多張融合圖像中的每張融合圖像的深度資訊來構建所述三維地圖。
在一個實施例中,所述基於所述多張融合圖像構建三維地圖包括(a1)-(a2):
(a1)計算所述多張融合圖像中的每張融合圖像的每個圖元點在實體空間的三維坐標。
在一個實施例中,所述每張融合圖像的每個圖元點在實體空間的三維坐標也即是指每張融合圖像的每個圖元在實體空間所在的坐標系中的坐標。
本實施例中,所述電腦裝置建立所述實體空間的坐標系包括:以所述深度攝像機為原點O,以水準向右為X軸,以豎直向上為Z軸,以及以垂直於XOZ平面所在的一個方向建立Y軸。
本實施例中,可以利用高斯光學原理來實現對每個圖元點在實體空間的三維坐標的計算。
舉例而言,假設已知圖元點p1在融合圖像中的坐標為(xx1,yy1,d),圖元點p1在實體空間所在的坐標系的坐標為(x1,y1,z1)。假設所述深度攝像機在所述實體空間所在的坐標系的x軸上的焦距為fx,在y軸上的焦距為fy;以及該深度攝像機的光圈中心到所述x軸的距離為cx,到所述y軸的距離為cy;以及所述深度攝像機的縮放值為s。即fx,fy,cx,cy,s均是已知數值。那麼z1=d/s;x1=(xx1-cx)*z1/fx;y1=(yy1-cy)*z1/fy。由此即可計算得到每張融合圖像的每個圖元在實體空間的三維坐標。
(a2)將所述每張融合圖像與該每張融合圖像的每個圖元點在實體空間的三維坐標建立關聯,並縫合所述多張融合圖像,由此獲得一副三維地圖。
在一個實施例中,所述電腦裝置可以基於特徵的方法、基於流的
方法和基於相位相關的方法來縫合所述多張融合圖像。此為習知技術,於此不再贅述。
步驟S7、電腦裝置控制所述機械手臂基於所述三維地圖夾取和放置物件。
本實施例中,控制所述機械手臂基於所述三維地圖夾取和放置物件的方法步驟可參以下對圖2的描述。
圖2是本發明較佳實施例提供的控制機械手臂夾取及放置物件的方法的流程圖。
需要說明的是,在本實施例中,所述控制機械手臂夾取及放置物件的方法可以應用於電腦裝置中,對於需要控制機械手臂夾取及放置物件的電腦裝置,可以直接在電腦裝置上集成本發明的方法所提供的用於控制機械手臂夾取及放置物件的功能,或者以軟體開發套件(Software Development Kit,SDK)的形式運行在電腦裝置上。
如圖2所示,所述控制機械手臂夾取及放置物件的方法具體包括以下步驟,根據不同的需求,該流程圖中步驟的順序可以改變,某些步驟可以省略。
步驟S20,電腦裝置確定是否已經獲得所述三維地圖。當尚未獲取所述三維地圖時,執行步驟S21。當已經獲得所述三維地圖時,執行步驟S22。
具體地,電腦裝置可以查詢所述電腦裝置的儲存器中是否存在三維地圖。
步驟S21,電腦裝置控制設置於機械手臂上的深度攝像機拍攝圖像,並基於所拍攝的圖像構建所述三維地圖。
具體地,構建所述三維地圖的方法參圖1所示的方法步驟S1到S6的記載。
步驟S22,當已經獲得所述三維地圖時,電腦裝置基於所述三維地圖定位所述機械手臂的位置坐標。
在一個實施例中,電腦裝置可以使用預設的演算法如粒子演算法(Particle Filter)、蒙地-卡羅法(Monte-Carlo)估算機械手臂在所述三維地圖中的位置坐標。
需要說明的是,所述粒子演算法是基於蒙地-卡羅法的方法。具體是使用每個粒子(particle)代表所述三維地圖上視覺看到的估計姿態。當機械手臂視覺移動的時候,利用圖型特徵點比對,賦予不同的粒子不同的權重,錯誤的粒子權重低,正確粒子權重高。經過不斷的遞迴運算,以及重新採樣,特徵值高的圖型會被比對出來,特徵值低的圖型會消失(收斂)。由此找到機械手臂在所述三維地圖的位置坐標。換句話來講,使用粒子演算法(Particle Filter)、蒙地-卡羅法(Monte-Carlo)估算機械手臂在所述三維地圖中的位置坐標為習知技術,因此不再贅述。
步驟S23,電腦裝置讀取目標物件的第一位置坐標。該第一位置坐標為所述目標物件當前所在位置的坐標。
本實施例中,所述目標物件即為待抓取的物件,並被所述機械手臂抓取後需要放置到其他位置的物件。所述目標物件的第一位置坐標為在所述三維地圖中的坐標。該目標物件的第一位置坐標可以預先儲存在電腦裝置的儲存器中。從而使得當需要夾取該目標物件時,電腦裝置可以直接從該儲存器中讀取該目標物件的第一位置坐標。
步驟S24,電腦裝置控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件。
換句話來講,電腦裝置控制所述機械手臂從該機械手臂的位置移動到所述目標物件的位置,並控制所述機械手臂抓取所述目標物件。
步驟S25,電腦裝置確定所述機械手臂是否成功抓取所述目標物件。當所述機械手臂抓取所述目標物件失敗時,執行步驟S26。當所述機械手臂成功抓取所述目標物件時,執行步驟S28。
具體地,電腦裝置可以根據所述機械手臂上的力感測器(force sensor)
所檢測的重量來確定所述機械手臂是否成功抓取所述目標物件。
步驟S26,當所述機械手臂抓取所述目標物件失敗時,電腦裝置辨識所述目標物件,並測量所述目標物件的位置坐標。執行完步驟S26後執行步驟S27。
具體地,所述電腦裝置可以控制所述機械手臂帶動所述深度攝像機,基於所述目標物件的所述第一位置坐標對所述目標物件拍攝照片,並利用範本匹配法從所拍攝的照片中識別所述目標物件。所述電腦裝置還可以進一步利用範本匹配法將所識別的物件與所述三維地圖進行匹配,從而在所述三維地圖中識別到所述目標物件並獲取該目標物件在所述三維地圖中的位置坐標。將該目標物件在所述三維地圖中的位置坐標作為所測量獲得的所述目標物件的位置坐標。
步驟S27,電腦裝置控制所述機械手臂基於所測量的所述目標物件的位置坐標來抓取所述目標物件。執行完步驟S27後執行步驟S25。
步驟S28,當所述機械手臂成功抓取所述目標物件時,電腦裝置讀取所述目標物件的第二位置坐標。該第二位置坐標為所述目標物件需要放置的位置所在的坐標。
步驟S29,電腦裝置控制所述機械手臂基於所述目標物件的所述第二位置坐標放置所述目標物件。
步驟S30,電腦裝置判斷所述機械手臂是否成功放置所述目標物件。當所述機械手臂成功放置所述目標物件時,結束流程。當所述機械手臂放置所述目標物件失敗時,執行步驟S31。
同樣地,電腦裝置可以根據所述機械手臂上的力感測器(force sensor)所檢測的重量來確定所述機械手臂是否成功放置所述目標物件。
步驟S31,電腦裝置調整所述第二位置坐標,並控制所述機械手臂基於調整後的所述第二位置坐標放置所述目標物件。執行完步驟S31後執行步驟S30。在一個實施例中,所述電腦裝置可以根據使用者操作訊號來調整所述第二位置坐標。即根據使用者的輸入來調整所述第二位置坐標。
綜上所述,本發明實施例中所述的機械手臂夾取和放置物件的方法,通過獲取深度攝像機所拍攝的多組圖像,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;將每組圖像所包括的RGB圖像與深度圖像建立關聯;利用預設的影像處理演算法處理所述多張RGB圖像;將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;基於所述多張融合圖像構建三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件,可使用立體視覺,讓機械手臂認知到自己所在的三度空間位置,以及各種物件的相關位置,經由此方式,簡化機械手臂的定位問題且配合相關物件辨識,可以讓機械手臂在空間中抓取各種不同的物件。
上述圖1和圖2分別詳細介紹了本發明的三維地圖構建方法以及機械手臂夾取和放置物件的方法,下面結合圖3和圖4,對實現所述三維地圖的構建以及機械手臂夾取和放置物件的方法的軟體裝置的功能模組以及硬體裝置架構進行介紹。
應該瞭解,所述實施例僅為說明之用,在專利申請範圍上並不受此結構的限制。
參閱圖3所示,是本發明較佳實施例提供的控制系統的模組圖。
在一些實施例中,所述控制系統30運行於電腦裝置(例如所述電腦裝置3)中。所述控制系統30可以包括多個由程式碼段所組成的功能模組。所述控制系統30中的各個程式段的電腦程式代碼可以儲存於電腦裝置的儲存器中,並由所述至少一個處理器所執行,以實現(詳見圖1描述)三維地圖的構建方法和機械手臂夾取和放置物件的方法。
本實施例中,所述控制系統30根據其所執行的功能,可以被劃分為多個功能模組。所述功能模組可以包括:獲取模組301、執行模組302。本發明所稱的模組是指一種能夠被至少一個處理器所執行並且能夠完成固定功能的一系列電腦程式段,其儲存在儲存器中。在本實施例中,關於各模組的功能將
在後續的實施例中詳述。
為清楚簡單說明本發明,下面從構建三維地圖的方面來具體說明所述控制系統30的各個功能模組的功能。
獲取模組301獲取機械手臂的深度攝像機所拍攝的多組圖像,其中,每組圖像包括一張RGB圖像和一張深度圖像。因此,所述多組圖像包括多張RGB圖像和多張深度圖像。執行模組302將每組圖像所包括的RGB圖像與深度圖像建立關聯。本實施例中,每張RGB圖像對應一張深度圖像。
在本實施例中,每組圖像所包括的RGB圖像和深度圖像為所述深度攝像機同時刻所拍攝,即每組圖像所包括的RGB圖像的拍攝時間和深度圖像的拍攝時間相同。
在一個實施例中,所述第一預設角度範圍為360度。所述第二預設角度為30度、60度或其他角度值。
舉例而言,獲取模組301可以控制所述深度攝像機每順時針轉動30度即控制該深度攝像機對當前場景進行拍攝,獲得當前場景的RGB圖像和深度圖像。
在一個實施例中,所述深度攝像機安裝於機械手臂的末端。
執行模組302對所述多張RGB圖像作第一次處理,由此獲得經過所述第一次處理的多張RGB圖像。該第一次處理包括:利用SURF演算法對所述多張RGB圖像中每相鄰的兩張RGB圖像作特徵點匹配。
本實施例中,所述相鄰的兩張RGB圖像可以是指拍攝時間相鄰的兩張RGB圖像。
舉例而言,假設所述深度攝像機先後依次拍攝了三張RGB圖像,分別是R1、R2、R3,則R1和R2為相鄰的兩張RGB圖像,R2和R3為相鄰的兩張RGB圖像。那麼執行模組302則利用SURF演算法對該三張RGB圖像中的R1和R2作特徵點匹配,以及對R2和R3作特徵點匹配。
執行模組302對經過所述第一次處理的多張RGB圖像作第二次處
理,由此獲得經過所述第二次處理的多張RGB圖像。該第二次處理包括:利用RANSAC演算法,確認經過所述第一次處理的多張RGB圖像中的每相鄰的兩張RGB圖像是否正確匹配特徵點,並剔除匹配錯誤的特徵點。
執行模組302對經過所述第二次處理的多張RGB圖像作第三次處理,由此獲得經過所述第三次處理的多張RGB圖像。該第三次處理包括:利用RANSAC演算法,對經過所述第二次處理的多張RGB圖像中每相鄰的兩張RGB圖像計算圖形角度差異,並基於計算得到的圖形角度差異對應修正每相鄰的兩張RGB圖像中的一者,使得任意相鄰的兩張RGB圖像的圖形角度相同。
在一個實施例中,被修正的RGB圖像為每相鄰的兩張RGB圖像中拍攝時間在後的RGB圖像。
舉例而言,仍然假設所述深度攝像機先後依次拍攝了三張RGB圖像,分別是R1、R2、R3,當該R1、R2、R3經過所述第二次處理後,執行模組302則可以利用RANSAC演算法對經過所述第二次處理後的R1和R2計算圖形角度差異,並基於計算得到的圖形角度差異修正R2,使得R1和R2的圖形角度相同;然後利用RANSAC演算法對經過所述第二次處理後的R2和R3計算圖形角度差異,並基於計算得到的圖形角度差異修正R3,使得R2和R3的圖形角度相同。
執行模組302將經過所述第三次處理的多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像。
所述多張融合圖像中的每張融合圖像是指經過所述第三次處理的每張RGB圖像融合了對應的深度圖像的深度資訊的圖像。即融合後的圖像既包含深度資訊,也包含色彩資訊。本實施中,執行模組302可以將經過所述第三次處理的多張RGB圖像中的每張RGB圖像的相素值與對應的深度圖像的深度值作1:1的迭合。
舉例而言,假設圖元點p1在經過所述第三次處理的RGB圖像中坐標為(xx1,yy1),該圖元點p1在對應的深度圖像中的深度值為d,則將經過
所述第三次處理的RGB圖像的相素值與對應的深度圖像的深度值作1:1的迭合後,該圖元點p1在融合圖像中的坐標為(xx1,yy1,d)。即xx1為圖元點p1在融合圖像中的橫坐標,yy1為圖元點p1在融合圖像中的縱坐標,d為圖元點p1在融合圖像中的豎坐標。
執行模組302基於所述多張融合圖像構建三維地圖,並儲存所述三維地圖。例如,將所述三維地圖儲存於該電腦裝置的儲存器中。
在一個實施例中,執行模組302可以基於所述多張融合圖像中的每張融合圖像的深度資訊來構建所述三維地圖。
在一個實施例中,所述基於所述多張融合圖像構建三維地圖包括(a1)-(a2):
(a1)計算所述多張融合圖像中的每張融合圖像的每個圖元點在實體空間的三維坐標。
在一個實施例中,所述每張融合圖像的每個圖元點在實體空間的三維坐標也即是指每張融合圖像的每個圖元點在實體空間所在的坐標系中的坐標。
本實施例中,所述執行模組302建立所述實體空間的坐標系包括:以所述深度攝像機為原點O,以水準向右為X軸,以豎直向上為Z軸,以及以垂直於XOZ平面所在的一個方向建立Y軸。
本實施例中,可以利用高斯光學原理來實現對每個圖元點的三維坐標的計算。
舉例而言,假設圖元點p1在融合圖像中的坐標為(xx1,yy1,d),圖元點p1在實體空間所在的坐標系的坐標為(x1,y1,z1)。假設所述深度攝像機在所述實體空間所在的坐標系的x軸上的焦距為fx,在y軸上的焦距為fy;以及該深度攝像機的光圈中心到所述x軸的距離為cx,到所述y軸的距離為cy;以及所述深度攝像機的縮放值為s。即fx,fy,cx,cy,s均是已知數值。那麼z1=d/s;x1=(xx1-cx)*z1/fx;y1=(yy1-cy)*z1/fy。由此即可計算得到每張融合圖
像的每個圖元在實體空間的三維坐標。
(a2)將所述每張融合圖像與該每張融合圖像的每個圖元點在實體空間的三維坐標建立關聯,並縫合所述多張融合圖像,由此獲得一副三維地圖。
在一個實施例中,所述執行模組302可以基於特徵的方法、基於流的方法和基於相位相關的方法來縫合所述多張融合圖像。此為習知技術,於此不再贅述。
所述執行模組302基於所構建的所述三維地圖控制所述機械手臂夾取及放置物件。
下面從控制機械手臂夾取及放置物件的方面來對所述控制系統30的各個功能模組的功能作具體說明。
執行模組302確定是否已經獲得所述三維地圖。
具體地,執行模組302可以查詢所述電腦裝置的儲存器中是否存在三維地圖。
當尚未獲取所述三維地圖時,獲取模組301控制設置於機械手臂上的深度攝像機拍攝圖像,執行模組302基於所拍攝的圖像構建所述三維地圖。
當已經獲得所述三維地圖時,執行模組302基於所述三維地圖定位所述機械手臂的位置坐標。
在一個實施例中,執行模組302可以使用預設的演算法如粒子演算法(Particle Filter)、蒙地-卡羅法(Monte-Carlo)估算機械手臂在所述三維地圖中的位置坐標。
需要說明的是,所述粒子演算法是基於蒙地-卡羅法的方法。具體是使用每個粒子(particle)代表所述三維地圖上視覺看到的估計姿態。當機械手臂視覺移動的時候,利用圖型特徵點比對,賦予不同的粒子不同的權重,錯誤的粒子權重低,正確粒子權重高。經過不斷的遞迴運算,以及重新採樣,特徵值高的圖型會被比對出來,特徵值低的圖型會消失(收斂)。由此找到機械手臂
在所述三維地圖的位置坐標。換句話來講,使用粒子演算法(Particle Filter)、蒙地-卡羅法(Monte-Carlo)估算機械手臂在所述三維地圖中的位置坐標為習知技術,因此不再贅述。
執行模組302讀取目標物件的第一位置坐標。該第一位置坐標為所述目標物件當前所在位置的坐標。
本實施例中,所述目標物件即為待抓取的物件,並被所述機械手臂抓取後需要放置到其他位置的物件。所述目標物件的第一位置坐標為在所述三維地圖中的坐標。該目標物件的第一位置坐標可以預先儲存在電腦裝置的儲存器中。從而使得當需要夾取該目標物件時,執行模組302可以直接從該儲存器中讀取該目標物件的第一位置坐標。
執行模組302控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件。
換句話來講,執行模組302控制所述機械手臂從該機械手臂的位置移動到所述目標物件的位置,並控制所述機械手臂抓取所述目標物件。
執行模組302確定所述機械手臂是否成功抓取所述目標物件。
具體地,執行模組302可以根據所述機械手臂上的力感測器(force sensor)所檢測的重量來確定所述機械手臂是否成功抓取所述目標物件。
當所述機械手臂抓取所述目標物件失敗時,執行模組302辨識所述目標物件,並測量所述目標物件的位置坐標。
具體地,所述執行模組302可以控制所述機械手臂帶動所述深度攝像機,基於所述目標物件的所述第一位置坐標對所述目標物件拍攝照片,並利用範本匹配法從所拍攝的照片中識別所述目標物件。所述執行模組302還可以進一步利用範本匹配法將所識別的物件與所述三維地圖進行匹配,從而在所述三維地圖中識別到所述目標物件並獲取該目標物件在所述三維地圖中的位置坐標。將該目標物件在所述三維地圖中的位置坐標作為所測量獲得的所述目標物件的位置坐標。
執行模組302控制所述機械手臂基於所測量的所述目標物件的位置坐標來抓取所述目標物件。
當所述機械手臂成功抓取所述目標物件時,執行模組302讀取所述目標物件的第二位置坐標。該第二位置坐標為所述目標物件需要放置的位置所在的坐標。
執行模組302控制所述機械手臂基於所述目標物件的所述第二位置坐標放置所述目標物件。
執行模組302判斷所述機械手臂是否成功放置所述目標物件。
同樣地,執行模組302可以根據所述機械手臂上的力感測器(force sensor)所檢測的重量來確定所述機械手臂是否成功放置所述目標物件。
執行模組302調整所述第二位置坐標,並控制所述機械手臂基於調整後的所述第二位置坐標放置所述目標物件。
在一個實施例中,所述執行模組302可以根據使用者操作訊號來調整所述第二位置坐標。即根據使用者的輸入來調整所述第二位置坐標。
綜上所述,本發明實施例中所述的控制系統30,通過獲取深度攝像機所拍攝的多組圖像,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;將每組圖像所包括的RGB圖像與深度圖像建立關聯;利用預設的影像處理演算法處理所述多張RGB圖像;將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;基於所述多張融合圖像構建三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件,可使用立體視覺,讓機械手臂認知到自己所在的三度空間位置,以及各種物件的相關位置,經由此方式,簡化機械手臂的定位問題且配合相關物件辨識,可以讓機械手臂在空間中抓取各種不同的物件。
參閱圖4所示,為本發明較佳實施例提供的電腦裝置和機械手臂的結構示意圖。在本發明較佳實施例中,電腦裝置3包括儲存器31、至少一個
處理器32、至少一條通信匯流排33。機械手臂4包括,但不限於,深度攝像機41和力感測器42。在一個實施例中,所述電腦裝置3和機械手臂4可以通過無線通訊方式或者有線通訊方式建立通訊連接。
本領域技術人員應該瞭解,圖4示出的電腦裝置和機械手臂4的結構並不構成本發明實施例的限定。所述電腦裝置3和機械手臂4還可以包括比圖示更多或更少的其他硬體或者軟體,或者不同的部件佈置。例如,所述電腦裝置還可以包括通訊設備如WIFI模組、藍牙模組等。機械手臂4還可以包括夾具等。
在一些實施例中,所述電腦裝置3包括一種能夠按照事先設定或儲存的指令,自動進行數值計算和/或資訊處理的終端,其硬體包括但不限於微處理器、專用積體電路、可程式設計閘陣列、數文書處理器及嵌入式設備等。
需要說明的是,所述電腦裝置3僅為舉例,其他現有的或今後可能出現的如可適應於本發明,也應包含在本發明的保護範圍以內,並以引用方式包含於此。
在一些實施例中,所述儲存器31用於儲存電腦程式代碼和各種資料,例如安裝在所述電腦裝置3中的控制系統30,並在電腦裝置3的運行過程中實現高速、自動地完成程式或資料的存取。所述儲存器31包括唯讀儲存器(Read-Only Memory,ROM)、可程式設計唯讀儲存器(Programmable Read-Only Memory,PROM)、可抹除可程式設計唯讀儲存器(Erasable Programmable Read-Only Memory,EPROM)、一次可程式設計唯讀儲存器(One-time Programmable Read-Only Memory,OTPROM)、電子抹除式可複寫唯讀儲存器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、唯讀光碟(Compact Disc Read-Only Memory,CD-ROM)或其他光碟儲存器、磁碟儲存器、磁帶儲存器、或者任何其他能夠用於攜帶或儲存資料的電腦可讀的儲存介質。
在一些實施例中,所述至少一個處理器32可以由積體電路組成,
例如可以由單個封裝的積體電路所組成,也可以是由多個相同功能或不同功能封裝的積體電路所組成,包括一個或者多個中央處理器(Central Processing unit,CPU)、微處理器、數文書處理晶片、圖形處理器及各種控制晶片的組合等。所述至少一個處理器32是所述電腦裝置3的控制核心(Control Unit),利用各種介面和線路連接整個電腦裝置3的各個部件,通過運行或執行儲存在所述儲存器31內的程式或者模組,以及調用儲存在所述儲存器31內的資料,以執行電腦裝置3的各種功能和處理資料,例如為所述機械手臂4構建三維地圖,以及控制機械手臂夾取和放置物件的的功能。
在一些實施例中,所述至少一條通信匯流排33被設置為實現所述儲存器31以及所述至少一個處理器32等之間的連接通信。
儘管未示出,所述電腦裝置3還可以包括給各個部件供電的電源(比如電池),優選的,電源可以通過電源管理裝置與所述至少一個處理器32邏輯相連,從而通過電源管理裝置實現管理充電、放電、以及功耗管理等功能。電源還可以包括一個或一個以上的直流或交流電源、再充電裝置、電源故障檢測電路、電源轉換器或者逆變器、電源狀態指示器等任意元件。應該瞭解,所述實施例僅為說明之用,在專利申請範圍上並不受此結構的限制。
上述以軟體功能模組的形式實現的集成的單元,可以儲存在一個電腦可讀取儲存介質中。上述軟體功能模組儲存在一個儲存介質中,包括若干指令用以使得一台電腦裝置或處理器(processor)執行本發明各個實施例所述方法的部分。
在進一步的實施例中,結合圖3,所述至少一個處理器32可執行所述電腦裝置3的操作裝置以及安裝的各類應用程式(如所述的控制系統30)、電腦程式代碼等,例如,上述的各個模組。
所述儲存器31中儲存有電腦程式代碼,且所述至少一個處理器32可調用所述儲存器31中儲存的電腦程式代碼以執行相關的功能。例如,圖3中所述的各個模組是儲存在所述儲存器31中的電腦程式代碼,並由所述至少一個
處理器32所執行,從而實現所述各個模組的功能以為機械手臂構建三維地圖及控制機械手臂夾取和放置物件的目的。
在本發明的一個實施例中,所述儲存器31儲存多個指令,所述多個指令被所述至少一個處理器32所執行以為機械手臂構建三維地圖並控制機械手臂夾取和放置物件。
具體請參圖1-2所示,於此不再贅述。
在本發明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模組的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。
所述作為分離部件說明的模組可以是或者也可以不是物理上分開的,作為模組顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到多個網路單元上。可以根據實際的需要選擇其中的部分或者全部模組來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能模組可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用硬體加軟體功能模組的形式實現。
對於本領域技術人員而言,顯然本發明不限於上述示範性實施例的細節,而且在不背離本發明的精神或基本特徵的情況下,能夠以其他的具體形式實現本發明。因此,無論從哪一點來看,均應將實施例看作是示範性的,而且是非限制性的,本發明的範圍由所附申請專利範圍第而不是上述說明限定,因此旨在將落在申請專利範圍第的等同要件的含義和範圍內的所有變化涵括在本發明內。不應將申請專利範圍第中的任何附圖標記視為限制所涉及的申請專利範圍第。此外,顯然“包括”一詞不排除其他單元或,單數不排除複數。裝置申請專利範圍第中陳述的多個單元或裝置也可以由一個單元或裝置通過軟體或者
硬體來實現。第一,第二等詞語用來表示名稱,而並不表示任何特定的順序。
最後應說明的是,以上實施例僅用以說明本發明的技術方案而非限制,儘管參照較佳實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或等同替換,而不脫離本發明技術方案的精神和範圍。
Claims (8)
- 一種控制機械手臂夾取和放置物件的方法,其中,所述方法包括:獲取機械手臂的深度攝像機所拍攝的多組圖像,其中,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;將每組圖像所包括的RGB圖像與深度圖像建立關聯;利用預設的影像處理演算法處理所述多張RGB圖像;將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;基於所述多張融合圖像構建三維地圖,其中,所述基於所述多張融合圖像構建三維地圖包括:計算所述多張融合圖像中的每張融合圖像的每個圖元點在實體空間的三維坐標,所述每張融合圖像的每個圖元點p1在實體空間的三維坐標為(x1,y1,z1),其中,z1=d/s;x1=(xx1-cx)*z1/fx;y1=(yy1-cy)*z1/fy;其中,xx1為圖元點p1在融合圖像中的橫坐標,yy1為圖元點p1在融合圖像中的縱坐標,d為圖元點p1在融合圖像中的豎坐標,fx為所述深度攝像機在所述實體空間所在的坐標系的x軸上的焦距;fy為所述深度攝像機在所述實體空間所在的坐標系的y軸上的焦距;cx為該深度攝像機的光圈中心到所述x軸的距離,cy為該深度攝像機的光圈中心到到所述y軸的距離;s為所述深度攝像機的縮放值;及將所述每張融合圖像與該每張融合圖像的每個圖元點在實體空間的三維坐標建立關聯,並縫合所述多張融合圖像,由此獲得所述三維地圖;及控制所述機械手臂基於所述三維地圖夾取和放置物件。
- 如請求項1所述的控制機械手臂夾取和放置物件的方法,其中,所述利用預設的影像處理演算法處理所述多張RGB圖像包括:對所述多張RGB圖像作第一次處理,由此獲得經過所述第一次處理的多張RGB圖像,該第一次處理包括:利用SURF演算法對所述多張RGB圖像中每相 鄰的兩張RGB圖像作特徵點匹配;對經過所述第一次處理的多張RGB圖像作第二次處理,由此獲得經過所述第二次處理的多張RGB圖像,該第二次處理包括:利用RANSAC演算法,確認經過所述第一次處理的多張RGB圖像中的每相鄰的兩張RGB圖像是否正確匹配特徵點,並剔除匹配錯誤的特徵點;及對經過所述第二次處理的多張RGB圖像作第三次處理,由此獲得經過所述第三次處理的多張RGB圖像,該第三次處理包括:利用RANSAC演算法,對經過所述第二次處理的多張RGB圖像中每相鄰的兩張RGB圖像計算圖形角度差異,並基於計算得到的圖形角度差異對應修正每相鄰的兩張RGB圖像中的一者,使得任意相鄰的兩張RGB圖像的圖形角度相同。
- 如請求項1所述的控制機械手臂夾取和放置物件的方法,其中,所述控制所述機械手臂基於所述三維地圖夾取和放置物件包括:當已經獲得所述三維地圖時,基於所述三維地圖定位所述機械手臂的位置坐標;讀取目標物件的第一位置坐標,該第一位置坐標為所述目標物件當前所在位置的坐標;控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件;讀取所述目標物件的第二位置坐標,該第二位置坐標為所述目標物件需要放置的位置所在的坐標;及控制所述機械手臂基於所述目標物件的所述第二位置坐標放置所述目標物件。
- 如請求項3所述的控制機械手臂夾取和放置物件的方法,其中,所述控制所述機械手臂基於所述三維地圖夾取和放置物件還包括:於控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件後,確定所述機械手臂是否成功抓取所述目標物 件;當所述機械手臂抓取所述目標物件失敗時,辨識所述目標物件,並測量所述目標物件的位置坐標;及控制所述機械手臂基於所測量的所述目標物件的位置坐標來抓取所述目標物件。
- 一種電腦裝置,其中,所述電腦裝置包括:儲存器;處理器;以及多個模組,所述多個模組被儲存在所述儲存器中並被由所述處理器執行,所述多個模組包括:獲取模組,用於獲取機械手臂的深度攝像機所拍攝的多組圖像,其中,每組圖像包括一張RGB圖像和一張深度圖像,由此所述多組圖像包括多張RGB圖像和多張深度圖像;執行模組,用於將每組圖像所包括的RGB圖像與深度圖像建立關聯;所述執行模組,還用於利用預設的影像處理演算法處理所述多張RGB圖像;所述執行模組,還用於將經過處理的所述多張RGB圖像與所述多張深度圖像作深度資訊融合,從而獲得多張融合圖像;所述執行模組,還用於基於所述多張融合圖像構建三維地圖,其中,所述基於所述多張融合圖像構建三維地圖包括:計算所述多張融合圖像中的每張融合圖像的每個圖元點在實體空間的三維坐標,所述每張融合圖像的每個圖元點p1在實體空間的三維坐標為(x1,y1,z1),其中,z1=d/s;x1=(xx1-cx)*z1/fx;y1=(yy1-cy)*z1/fy;其中,xx1為圖元點p1在融合圖像中的橫坐標,yy1為圖元點p1在融合圖像中的縱坐標,d為圖元點p1在融合圖像中的豎坐標,fx為所述深度攝像機在所述實體空間所在的坐標系的x軸上的焦距;fy為所述深度攝像機在所述實體空間所在的坐標系的y軸上的焦距;cx為該深度攝像機的光圈中 心到所述x軸的距離,cy為該深度攝像機的光圈中心到到所述y軸的距離;s為所述深度攝像機的縮放值;及將所述每張融合圖像與該每張融合圖像的每個圖元點在實體空間的三維坐標建立關聯,並縫合所述多張融合圖像,由此獲得所述三維地圖;及所述執行模組,還用於控制所述機械手臂基於所述三維地圖夾取和放置物件。
- 如請求項5所述的電腦裝置,其中,所述利用預設的影像處理演算法處理所述多張RGB圖像包括:對所述多張RGB圖像作第一次處理,由此獲得經過所述第一次處理的多張RGB圖像,該第一次處理包括:利用SURF演算法對所述多張RGB圖像中每相鄰的兩張RGB圖像作特徵點匹配;對經過所述第一次處理的多張RGB圖像作第二次處理,由此獲得經過所述第二次處理的多張RGB圖像,該第二次處理包括:利用RANSAC演算法,確認經過所述第一次處理的多張RGB圖像中的每相鄰的兩張RGB圖像是否正確匹配特徵點,並剔除匹配錯誤的特徵點;及對經過所述第二次處理的多張RGB圖像作第三次處理,由此獲得經過所述第三次處理的多張RGB圖像,該第三次處理包括:利用RANSAC演算法,對經過所述第二次處理的多張RGB圖像中每相鄰的兩張RGB圖像計算圖形角度差異,並基於計算得到的圖形角度差異對應修正每相鄰的兩張RGB圖像中的一者,使得任意相鄰的兩張RGB圖像的圖形角度相同。
- 如請求項5所述的電腦裝置,其中,所述控制所述機械手臂基於所述三維地圖夾取和放置物件包括:當已經獲得所述三維地圖時,基於所述三維地圖定位所述機械手臂的位置坐標;讀取目標物件的第一位置坐標,該第一位置坐標為所述目標物件當前所在位置的坐標; 控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件;讀取所述目標物件的第二位置坐標,該第二位置坐標為所述目標物件需要放置的位置所在的坐標;及控制所述機械手臂基於所述目標物件的所述第二位置坐標放置所述目標物件。
- 如請求項7所述的電腦裝置,其中,所述控制所述機械手臂基於所述三維地圖夾取和放置物件還包括:於控制所述機械手臂基於該機械手臂的位置坐標以及所述目標物件的第一位置坐標抓取所述目標物件後,確定所述機械手臂是否成功抓取所述目標物件;當所述機械手臂抓取所述目標物件失敗時,辨識所述目標物件,並測量所述目標物件的位置坐標;及控制所述機械手臂基於所測量的所述目標物件的位置坐標來抓取所述目標物件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108148469A TWI723715B (zh) | 2019-12-30 | 2019-12-30 | 電腦裝置、控制機械手臂夾取和放置物件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108148469A TWI723715B (zh) | 2019-12-30 | 2019-12-30 | 電腦裝置、控制機械手臂夾取和放置物件的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI723715B true TWI723715B (zh) | 2021-04-01 |
TW202125414A TW202125414A (zh) | 2021-07-01 |
Family
ID=76604730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108148469A TWI723715B (zh) | 2019-12-30 | 2019-12-30 | 電腦裝置、控制機械手臂夾取和放置物件的方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI723715B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN205219101U (zh) * | 2015-10-27 | 2016-05-11 | 众德迪克科技(北京)有限公司 | 一种家庭服务机器人 |
CN106127739A (zh) * | 2016-06-16 | 2016-11-16 | 华东交通大学 | 一种结合单目视觉的rgb‑d slam方法 |
TW201722653A (zh) * | 2015-10-05 | 2017-07-01 | X開發有限責任公司 | 選擇性地部署機器人以執行地圖測繪 |
US20190197768A1 (en) * | 2017-12-22 | 2019-06-27 | Sony Interactive Entertainment Inc. | Space capture, modeling, and texture reconstruction through dynamic camera positioning and lighting using a mobile robot |
-
2019
- 2019-12-30 TW TW108148469A patent/TWI723715B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201722653A (zh) * | 2015-10-05 | 2017-07-01 | X開發有限責任公司 | 選擇性地部署機器人以執行地圖測繪 |
CN205219101U (zh) * | 2015-10-27 | 2016-05-11 | 众德迪克科技(北京)有限公司 | 一种家庭服务机器人 |
CN106127739A (zh) * | 2016-06-16 | 2016-11-16 | 华东交通大学 | 一种结合单目视觉的rgb‑d slam方法 |
US20190197768A1 (en) * | 2017-12-22 | 2019-06-27 | Sony Interactive Entertainment Inc. | Space capture, modeling, and texture reconstruction through dynamic camera positioning and lighting using a mobile robot |
Also Published As
Publication number | Publication date |
---|---|
TW202125414A (zh) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210197389A1 (en) | Computer device and method for controlling robotic arm to grasp and place objects | |
JP6775263B2 (ja) | 測位方法及び装置 | |
CN106945035B (zh) | 机器人控制设备及其控制方法和机器人系统 | |
CN108827154B (zh) | 一种机器人无示教抓取方法、装置及计算机可读存储介质 | |
WO2019114339A1 (zh) | 机械臂运动的校正方法和装置 | |
KR20180080630A (ko) | 핸드-아이 캘리브레이션을 수행하는 로봇 및 전자 장치 | |
WO2019042426A1 (zh) | 增强现实场景的处理方法、设备及计算机存储介质 | |
JP2017042859A (ja) | ピッキングシステム、並びに、そのための処理装置、方法及びプログラム | |
JP2008087074A (ja) | ワーク取り出し装置 | |
JP2013043271A (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
US9591228B2 (en) | Method for the localization of a tool in a workplace, corresponding system and computer program product | |
CN110926330B (zh) | 图像处理装置和图像处理方法 | |
US10909720B2 (en) | Control device for robot, robot, robot system, and method of confirming abnormality of robot | |
CN113524187B (zh) | 一种工件抓取顺序的确定方法、装置、计算机设备及介质 | |
JP5093591B2 (ja) | 三次元位置姿勢計測方法および装置 | |
JP2014188617A (ja) | ロボット制御システム、ロボット、ロボット制御方法及びプログラム | |
JP2010122777A (ja) | ワーク識別方法およびワーク識別装置 | |
CN114080590A (zh) | 使用先进扫描技术的机器人料箱拾取系统和方法 | |
KR101535801B1 (ko) | 깊이맵 센서를 이용한 조립공정에서의 조립공정 검사장치, 방법 및 시스템 | |
TWI723715B (zh) | 電腦裝置、控制機械手臂夾取和放置物件的方法 | |
JP2015136764A (ja) | 制御装置、ロボットシステム、ロボット及びロボット制御方法 | |
JP2018180868A (ja) | 画像処理装置及び製造システム | |
JP2018173882A (ja) | 情報処理装置、方法、及びプログラム | |
CN111199533B (zh) | 图像处理装置 | |
JP7439410B2 (ja) | 画像処理装置、画像処理方法およびプログラム |