TWI776113B - 物體位姿估計方法及裝置、電腦可讀儲存介質 - Google Patents

物體位姿估計方法及裝置、電腦可讀儲存介質 Download PDF

Info

Publication number
TWI776113B
TWI776113B TW108147453A TW108147453A TWI776113B TW I776113 B TWI776113 B TW I776113B TW 108147453 A TW108147453 A TW 108147453A TW 108147453 A TW108147453 A TW 108147453A TW I776113 B TWI776113 B TW I776113B
Authority
TW
Taiwan
Prior art keywords
point
pose
point cloud
predicted
cloud data
Prior art date
Application number
TW108147453A
Other languages
English (en)
Other versions
TW202032437A (zh
Inventor
周韜
成慧
Original Assignee
大陸商深圳市商湯科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 大陸商深圳市商湯科技有限公司 filed Critical 大陸商深圳市商湯科技有限公司
Publication of TW202032437A publication Critical patent/TW202032437A/zh
Application granted granted Critical
Publication of TWI776113B publication Critical patent/TWI776113B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/66Analysis of geometric attributes of image moments or centre of gravity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37555Camera detects orientation, position workpiece, points of workpiece
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40053Pick 3-D object from pile of objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
  • Holo Graphy (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

本申請公開了一種物體位姿估計方法及裝置、電腦可讀儲存介質。該方法包括:獲取物體的點雲資料,其中,所述點雲資料中包含至少一個點;將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點所屬的物體的預測位姿;對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合;根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位姿,其中,所述位姿包括位置和姿態角。還公開了相應的裝置。本申請通過點雲神經網路對物體的點雲資料進行處理,得到物體的位姿。

Description

物體位姿估計方法及裝置、電腦可讀儲 存介質
本申請關於機器視覺技術領域,尤其關於一種物體位姿估計方法及裝置、電腦可讀儲存介質。
隨著機器人研究的深入和各方面需求的巨大增長,機器人的應用領域在不斷擴大,如:通過機器人抓取物料框中堆疊的物體。通過機器人抓取堆疊的物體首先需要識別待抓取物體在空間中的位姿,再根據識別到的位姿對待抓取物體進行抓取。傳統方式首先從圖像中提取特徵點,隨後將該圖像與預先設定的參考圖像進行特徵匹配獲得相匹配的特徵點,並根據相匹配的特徵點確定待抓取物體在相機座標系下的位置,再根據相機的標定參數,解算得到物體的位姿。
本申請提供一種物體位姿估計方法及裝置、電腦可讀儲存介質。
第一方面,提供了一種物體位姿估計方法,包括:獲取物體的點雲資料,其中,所述點雲資料中包含至少一個點;將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點所屬的物體的預測位姿;對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合;根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位姿,其中,所述位姿包括位置和姿態角。
在一種可能實現的方式中,所述物體的位姿包括所述物體的參考點的位姿;所述物體的位姿包括所述物體的參考點的位置和姿態角,所述參考點包括質心、重心、中心中的至少一種。
在另一種可能實現的方式中,所述將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點分別所屬的物體的預測位姿,所述點雲神經網路對所述物體的點雲資料執行的操作包括:對所述至少一個點進行特徵提取處理,得到特徵資料;對所述特徵資料進行線性變換,得到所述至少一個點分別所屬的物體的預測位姿。
在又一種可能實現的方式中,所述物體的預測位姿包括所述物體的參考點的預測位置和預測姿態角;所述對所述特徵資料進行線性變換,得到所述物體的點雲資料中的點的預測位姿,包括:對所述特徵資料進行第一線性變 換,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;對所述特徵資料進行第二線性變換,得到所述點所屬物體的參考點的預測姿態角。
在又一種可能實現的方式中,所述點雲神經網路包括第一全連接層,所述對所述特徵資料進行第一線性變換,得到所述至少一個點分別所屬的物體的預測位置,包括:獲取所述第一全連接層的權重;根據所述第一全連接層的權重對所述特徵資料進行加權疊加運算,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置。
在又一種可能實現的方式中,所述點雲神經網路包括第二全連接層,對所述特徵資料進行第二線性變換,得到所述點所屬物體的預測姿態角,包括:獲取第二全連接層的權重;根據所述第二全連接層的權重對所述特徵資料進行加權疊加運算,得到所述分別物體的預測姿態角。
在又一種可能實現的方式中,所述獲取物體的點雲資料,包括:獲取所述物體所在的場景的場景點雲資料以及預先儲存的背景點雲資料;在所述場景點雲資料以及所述背景點雲資料中存在相同的資料的情況下,確定所述場景點雲資料以及所述背景點雲資料中的相同資料;從所述場景點雲資料中去除所述相同資料,得到所述物體的點雲資料。
在又一種可能實現的方式中,所述方法還包括:對所述物體的點雲資料進行下採樣處理,得到數量為第一預設值的點;將所述數量為第一預設值的點輸入至預先訓練的點雲神經網路,得到所述數量為第一預設值的點中至少一個點所屬的物體的預測位姿。
在又一種可能實現的方式中,所述預測位姿包括預測位置,所述對所述至少一個點進行聚類處理,得到至少一個聚類集合,包括:根據所述至少一個聚類集合中的點的所屬的物體的預測位置,將所述至少一個點劃分成至少一個集合,得到所述至少一個聚類集合。
在又一種可能實現的方式中,所述根據所述至少一個聚類集合中的點的所屬的物體的預測位置,將所述至少一個點劃分成至少一個集合,得到所述至少一個聚類集合,包括:從所述物體的點雲資料中任取一個點作為第一點;以所述第一點為球心、第二預設值為半徑,構建第一待調整聚類集合;以所述第一點為起始點、所述第一待調整聚類集合中除所述第一點之外的點為終點,得到第一向量,並對所述第一向量求和得到第二向量;若所述第二向量的模小於或等於閾值,將所述第一待調整聚類集合作為所述聚類集合。
在又一種可能實現的方式中,所述方法還包括:若所述第二向量的模大於所述閾值,將所述第一點沿所述第二向量進行移動,得到第二點;以所述第二點為球心,所述第二預設值為半徑,構建第二待調整聚類集合;以所述 第二點為起始點、所述第二待調整聚類集合中除所述第二點之外的點為終點,得到第三向量,並對第三向量求和得到第四向量;若所述第四向量的模小於或等於所述閾值,將所述第二待調整聚類集合作為所述聚類集合。
在又一種可能實現的方式中,所述根據所述聚類集合中所包含物體的預測位姿,得到所述物體的位姿,包括:計算所述聚類集合中所包含物體的預測位姿的平均值;將所述預測位姿的平均值作為所述物體的位姿。
在又一種可能實現的方式中,所述方法還包括:對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿。
在又一種可能實現的方式中,所述對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿,包括:獲取所述物體的三維模型;將所述聚類集合中所包含的點所屬的物體的預測位姿的平均值作為所述三維模型的位姿;根據反覆運算最近點演算法以及所述物體對應的聚類集合對所述三維模型的位置進行調整,並將調整位置後的三維模型的位姿作為所述物體的位姿。
在又一種可能實現的方式中,所述方法還包括:將所述物體的點雲資料輸入至所述點雲神經網路,得到所述點雲資料中的點所屬物體的類別。
在又一種可能實現的方式中,所述點雲神經網路基於逐點點雲損失函數加和值,並進行反向傳播訓練得到,所述逐點點雲損失函數基於位姿損失函數、分類損失函 數以及可見性預測損失函數加權疊加得到,所述逐點點雲損失函數為對所述點雲資料中至少一個點的損失函數進行加和,所述位姿損失函數為:L=Σ∥R P -R GT 2;其中,R P 為所述物體的位姿,R GT 為所述位姿的標籤,Σ為對所述點雲資料中至少一個點的點雲位姿損失函數進行加和。
第二方面,提供了一種物體位姿估計裝置,包括:獲取單元,配置為獲取物體的點雲資料,其中,所述點雲資料中包含至少一個點;第一處理單元,配置為將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點所屬的物體的預測位姿;第二處理單元,配置為對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合;第三處理單元,配置為根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位姿,其中,所述位姿包括位置和姿態角。
在一種可能實現的方式中,所述物體的位姿包括所述物體的參考點的位姿;所述物體的位姿包括所述物體的參考點的位置和姿態角,所述參考點包括質心、重心、中心中的至少一種。
在另一種可能實現的方式中,所述第一處理單元包括:特徵提取子單元,配置為對所述至少一個點進行特徵提取處理,得到特徵資料;線性變換子單元,配置為對所述特徵資料進行線性變換,得到所述至少一個點分別所屬的物體的預測位姿。
在又一種可能實現的方式中,所述物體的預測位姿包括所述物體的參考點的預測位置和預測姿態角;所述線性變換子單元還配置為:對所述特徵資料進行第一線性變換,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;以及根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;以及對所述特徵資料進行第二線性變換,得到所述點所屬物體的參考點的預測姿態角。
在又一種可能實現的方式中,所述點雲神經網路包括第一全連接層,所述線性變換子單元還配置為:獲取所述第一全連接層的權重;以及根據所述第一全連接層的權重對所述特徵資料進行加權疊加運算,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;以及根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置。
在又一種可能實現的方式中,所述點雲神經網路包括第二全連接層,所述線性變換子單元還配置為:獲取第二全連接層的權重;以及根據所述第二全連接層的權重對所述特徵資料進行加權疊加運算,得到所述分別物體的預測姿態角。
在又一種可能實現的方式中,所述獲取單元包括:第一獲取子單元,配置為獲取所述物體所在的場景的場景點雲資料以及預先儲存的背景點雲資料;第一確定子單元,配置為在所述場景點雲資料以及所述背景點雲資料中存 在相同的資料的情況下,確定所述場景點雲資料以及所述背景點雲資料中的相同資料;去除子單元,配置為從所述場景點雲資料中去除所述相同資料,得到所述物體的點雲資料。
在又一種可能實現的方式中,所述獲取單元還包括:第一處理子單元,配置為對所述物體的點雲資料進行下採樣處理,得到數量為第一預設值的點;第二處理子單元,配置為將所述數量為第一預設值的點輸入至預先訓練的點雲神經網路,得到所述數量為第一預設值的點中至少一個點所屬的物體的預測位姿。
在又一種可能實現的方式中,所述預測位姿包括預測位置,所述第二處理單元包括:劃分子單元,配置為根據所述至少一個聚類集合中的點的所屬的物體的預測位置,將所述至少一個點劃分成至少一個集合,得到所述至少一個聚類集合。
在又一種可能實現的方式中,所述劃分子單元還配置為:從所述物體的點雲資料中任取一個點作為第一點;以及以所述第一點為球心、第二預設值為半徑,構建第一待調整聚類集合;以及以所述第一點為起始點、所述第一待調整聚類集合中除所述第一點之外的點為終點,得到第一向量,並對所述第一向量求和得到第二向量;以及若所述第二向量的模小於或等於閾值,將所述第一待調整聚類集合作為所述聚類集合。
在又一種可能實現的方式中,所述劃分子單元還配置為:若所述第二向量的模大於所述閾值,將所述第一 點沿所述第二向量進行移動,得到第二點;以及以所述第二點為球心,所述第二預設值為半徑,構建第二待調整聚類集合;以及以所述第二點為起始點、所述第二待調整聚類集合中除所述第二點之外的點為終點,得到第三向量,並對第三向量求和得到第四向量;以及若所述第四向量的模小於或等於所述閾值,將所述第二待調整聚類集合作為所述聚類集合。
在又一種可能實現的方式中,所述第三處理單元包括:計算子單元,配置為計算所述聚類集合中所包含物體的預測位姿的平均值;第二確定子單元,配置為將所述預測位姿的平均值作為所述物體的位姿。
在又一種可能實現的方式中,所述物體位姿估計裝置還包括:修正單元,配置為對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿。
在又一種可能實現的方式中,所述修正單元包括:第二獲取子單元,配置為獲取所述物體的三維模型;第三確定子單元,配置為將所述聚類集合中所包含的點所屬的物體的預測位姿的平均值作為所述三維模型的位姿;調整子單元,配置為根據反覆運算最近點演算法以及所述物體對應的聚類集合對所述三維模型的位置進行調整,並將調整位置後的三維模型的位姿作為所述物體的位姿。
在又一種可能實現的方式中,所述物體位姿估計裝置還包括:第四處理單元,配置為將所述物體的點雲資 料輸入至所述點雲神經網路,得到所述點雲資料中的點所屬物體的類別。
在又一種可能實現的方式中,所述點雲神經網路基於逐點點雲損失函數加和值,並進行反向傳播訓練得到,所述逐點點雲損失函數基於位姿損失函數、分類損失函數以及可見性預測損失函數加權疊加得到,所述逐點點雲損失函數為對所述點雲資料中至少一個點的損失函數進行加和,所述位姿損失函數為:L=Σ∥R P -R GT 2;其中,R P 為所述物體的位姿,R GT 為所述位姿的標籤,Σ為對所述點雲資料中至少一個點的點雲位姿損失函數進行加和。
第三方面,本申請提供了一種電腦可讀儲存介質,所述電腦可讀儲存介質中儲存有電腦程式,所述電腦程式包括程式指令,所述程式指令當被批次處理裝置的處理器執行時,使所述處理器執行第一方面中任意一項所述的方法。
第四方面,本申請提供了一種獲取物體位姿及類別的裝置,包括:處理器和記憶體,所述處理器和所述儲存耦合器;其中,所述記憶體儲存有程式指令,所述程式指令被所述處理器執行時,使所述處理器執行第一方面中任意一項所述的方法。
本申請實施例通過點雲神經網路對物體的點雲資料進行處理,預測物體的點雲資料中每個點所屬物體的參考點的位置以及每個點所屬物體的姿態角,再通過對物體的 點雲資料中的點所屬的物體的預測位姿進行聚類處理,得到聚類集合,並對聚類集合中包含的點的位置的預測值以及姿態角的預測值求平均值得到物體的參考點的位置以及物體的姿態角。
本申請還提供了一種計算程式產品,其中,所述電腦程式產品包括電腦可執行指令,該電腦可執行指令被執行後,能夠實現本申請實施例提供的物體位姿估計方法。
1:物體位姿估計裝置
11:獲取單元
111:第一獲取子單元
112:第一確定子單元
113:去除子單元
114:第一處理子單元
115:第二處理子單元
12:第一處理單元
121:特徵提取子單元
122:線性變換子單元
13:第二處理單元
131:劃分子單元
14:第三處理單元
141:計算子單元
142:第二確定子單元
15:修正單元
151:第二獲取子單元
152:第三確定子單元
153:調整子單元
16:第四處理單元
2:估計裝置
21:處理器
22:輸入裝置
23:輸出裝置
24:記憶體
此處的附圖被併入說明書中並構成本說明書的一部分,這些附圖示出了符合本公開的實施例,並與說明書一起用於說明本公開的技術方案。
圖1為本申請實施例提供的一種物體位姿估計方法的流程示意圖;圖2為本申請實施例提供的另一種物體位姿估計方法的流程示意圖;圖3為本申請實施例提供的另一種物體位姿估計方法的流程示意圖;圖4為本申請實施例提供的一種基於物體位姿估計抓取物體的流程示意圖;圖5為本申請實施例提供的一種物體位姿估計裝置的結構示意圖; 圖6為本申請實施例提供的一種物體位姿估計裝置的硬體結構示意圖。
為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
本申請的說明書和申請專利範圍及上述附圖中的術語“第一”、“第二”等是用於區別不同物件,而不是用於描述特定順序。此外,術語“包括”和“具有”以及它們任何變形,意圖在於覆蓋不排他的包含。例如包含了一系列步驟或單元的過程、方法、系統、產品或設備沒有限定於已列出的步驟或單元,而是可選地還包括沒有列出的步驟或單元,或可選地還包括對於這些過程、方法、產品或設備固有的其他步驟或單元。
在本文中提及“實施例”意味著,結合實施例描述的特定特徵、結構或特性可以包含在本申請的至少一個實施例中。在說明書中的各個位置出現該短語並不一定均是指相同的實施例,也不是與其它實施例互斥的獨立的或備選 的實施例。本領域技術人員顯式地和隱式地理解的是,本文所描述的實施例可以與其它實施例相結合。
在工業領域中,待裝配的零件一般都放置於物料框或物料盤裡,將放置於物料框或物料盤裡的零配件進行裝配是裝配過程中重要的一環,由於待裝配的零配件數量巨大,人工裝配的方式顯得效率低下,且人工成本較高,本申請通過點雲神經網路對物料框或物料盤裡的零配件進行識別,可自動獲得待裝配零件的位姿資訊,機器人或機械臂再根據待裝配零件的位姿資訊可完成對待裝配零件的抓取及裝配。
為了更清楚地說明本申請實施例或背景技術中的技術方案,下面將對本申請實施例或背景技術中所需要使用的附圖進行說明。
下面結合本申請實施例中的附圖對本申請實施例進行描述。本申請提供的方法步驟的執行主體可以為硬體執行,或者通過處理器運行電腦可執行代碼的方式執行。
請參閱圖1,圖1是本申請實施例提供的一種物體位姿估計方法的流程示意圖。
101、獲取物體的點雲資料。
本公開實施例通過對物體的點雲資料進行處理,得到物體的位姿,在一種獲取物體的點雲資料的可能的方式中,通過三維鐳射掃描器對物體進行掃描,當鐳射照射到物體表面時,所反射的鐳射會攜帶方位、距離等資訊,將雷射光束按照某種軌跡進行掃描,便會邊掃描邊記錄到反射 的鐳射點資訊,由於掃描極為精細,可得到大量的鐳射點,進而得到物體的點雲資料。
102、將上述物體的點雲資料輸入至預先訓練的點雲神經網路,得到至少一個點所屬的物體的預測位姿。
通過將物體的點雲資料輸入至預先訓練的點雲神經網路,對點雲資料中每個點所屬的物體的參考點的位置以及所屬物體的姿態角進行預測,得到各個物體的預測位姿,並以向量的形式給出,其中,上述物體的預測位姿包括所述物體的參考點的預測位置和預測姿態角,上述參考點包括質心、重心、中心中的至少一種。
上述點雲神經網路是預先訓練好的,在一種可能實現的方式中,上述點雲神經網路的訓練方法包括:獲取物體的點雲資料和標籤資料;對所述物體的點雲資料進行特徵提取處理,得到特徵資料;對所述特徵資料進行第一線性變換,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;對所述特徵資料進行第二線性變換,得到所述點所屬物體的參考點的預測姿態角;對所述特徵資料進行第三線性變換,得到所述點雲資料中的點對應的物體類別識別結果;對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合,其中,所述預測位姿包括所述點所屬物體的參考點的預測位置以及所述點所屬物體的參考點的預測姿態角;根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位 姿,其中,所述位姿包括位置和姿態角;根據分類損失函數、所述物體類別預測結果及所述標籤資料,得到分類損失函數值;根據位姿損失函數、所述物體的位姿以及所述物體的位姿標籤,得到位姿損失函數值,所述位姿損失函數的運算式為:L=Σ∥R P -R GT 2;其中,R P 為所述物體的位姿,R GT 為所述位姿的標籤,Σ表示對至少一個點的點雲位姿函數進行加和;根據逐點點雲損失函數、可見性預測損失函數、所述分類損失函數值、所述位姿損失函數值,得到逐點點雲損失函數值;調整所述點雲神經網路的權重,使得所述逐點點雲損失函數值小於閾值,得到訓練後的點雲神經網路。
需要理解的是,本申請對上述分類損失函數以及總損失函數的具體形式不做限定。訓練後的點雲神經網路可對物體的點雲資料中的每個點所屬物體的參考點的位置以及每個點所屬物體的姿態角進行預測,並將位置的預測值以及姿態角的預測值以向量的形式給出,同時還將給出點雲中的點所屬物體的類別。
103、對上述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合。
對物體的點雲資料中的點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合,每個聚類集合對應一個物體,在一種可能實現的方式中,通過均值漂移聚類演算法對物體的點雲資料中的點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合。
104、根據上述至少一個聚類集合中所包含物體的預測位姿,得到上述物體的位姿。
每個聚類集合內包含多個點,每個點都有位置的預測值以及姿態角的預測值。在一種可能實現的方式中,對聚類集合中所包含的點的位置的預測值求平均值,並將位置的預測值的平均值作為上述物體的參考點的位置,對聚類集合中所包含的點的姿態角的預測值求平均值,並將姿態角的預測值的平均值作為上述物體的姿態角。
可選地,通過101~104的處理,可獲得任意場景下的堆疊的至少一個物體的位姿,由於物體的抓取點均是預先設定的,因此,在得到相機座標系下的物體的參考點的位置以及物體的姿態角的情況下,根據物體的姿態角,得到機器人末端執行器的調整角度;根據物體的參考點與抓取點之間的位置關係,得到相機座標系下的抓取點的位置;再根據機器人的手眼標定結果(即相機座標系下的抓取點的位置),得到機器人座標系下的抓取點的位置;根據機器人座標系下的抓取點的位置進行路徑規劃,得到機器人的行徑路線;將調整角度及行徑路線作為控制指令,控制機器人對至少一個堆疊物體進行抓取。本申請實施例通過點雲神經網路對物體的點雲資料進行處理,預測物體的點雲中每個點所屬物體的參考點的位置以及每個點所屬物體的姿態角,再通過對物體的點雲資料中的點所屬的物體的預測位姿進行聚類處理,得到聚類集合,並對聚類集合中包含的點的位置的預 測值以及姿態角的預測值求平均值得到物體的參考點的位置以及物體的姿態角。
請參閱圖2,圖2是本申請實施例提供的另一種物體位姿估計方法的流程示意圖。
201、獲取物體所在的場景的場景點雲資料以及預先儲存的背景點雲資料。
由於物體放置於物料框或物料盤內,且所有物體都處於堆疊狀態,因此無法直接獲得物體在堆疊狀態下的點雲資料。通過獲取物料框或物料盤的點雲資料(即預先儲存的背景點雲資料),以及獲取放置有物體的物料框或物料盤的點雲資料(即物體所在的場景的場景點雲資料),再通過上述兩個點雲資料得到物體的點雲資料。在一種可能實現的方式中,通過三維鐳射掃描器對物體所在的場景(上述物料框或物料盤)進行掃描,當鐳射照射到物料框或物料盤表面時,所反射的鐳射會攜帶方位、距離等資訊,將雷射光束按照某種軌跡進行掃描,便會邊掃描邊記錄到反射的鐳射點資訊,由於掃描極為精細,可得到大量的鐳射點,進而得到背景點雲資料。再將物體放置於物料框或物料盤內,通過三維鐳射掃描獲取物體所在的場景的場景點雲資料。
需要理解的是,上述物體的數量至少為1個,且物體可以是同一類物體,也可以是不同種類的物體;將物體放置於物料框或物料盤內時,無特定放置順序要求,可將所有的物體任意堆疊於物料框或物料盤內;此外,本申請對獲 取物體所在的場景的場景點雲資料和獲取預先儲存的背景點雲資料的順序並不做具體限定。
202、在上述場景點雲資料以及上述背景點雲資料中存在相同的資料的情況下,確定所述場景點雲資料以及所述背景點雲資料中的相同資料。
點雲資料中包含的點的數量巨大,對點雲資料進行處理的計算量也非常大,因此,只對物體的點雲資料進行處理,可減少計算量,提高處理速度。首先,確定上述場景點雲資料以及上述背景點雲資料中是否存在相同的資料,若存在相同的資料,從上述場景點雲資料中去除所述相同資料,得到上述物體的點雲資料。
203、對上述物體的點雲資料進行下採樣處理,得到數量為第一預設值的點。
如上所述,點雲資料中包含有大量的點,即使通過202的處理,以及減少了很多計算量,但由於物體的點雲資料中仍然包含大量的點,若直接通過點雲神經網路對物體的點雲資料進行處理,其計算量仍然非常大。此外,受限於運行點雲神經網路的硬體設定,計算量若太大會影響後續處理的速度,甚至無法進行正常處理,因此,需要對輸入至點雲神經網路的物體的點雲資料中的點的數量進行限制,將上述物體的點雲資料中的點的數量減少至第一預設值,第一預設值可根據具體硬體設定進行調整。在一種可能實現的方式中,對物體的點雲資料進行隨機採樣處理,得到數量為第一預設值的點;在另一種可能實現的方式中,對物體的點雲 資料進行最遠點採樣處理,得到數量為第一預設值的點;在又一種可能實現的方式中,對物體的點雲資料進行均勻採樣處理,得到數量為第一預設值的點。
204、將上述數量為第一預設值的點輸入至預先訓練的點雲神經網路,得到上述數量為第一預設值的點中至少一個點所屬的物體的預測位姿。
將上述數量為第一預設值的點輸入至點雲神經網路,通過點雲神經網路對上述數量為第一預設值的點進行特徵提取處理,得到特徵資料,在一種可能實現的方式中,通過點雲神經網路中的卷積層對上述數量為第一預設值的點進行卷積處理,得到特徵資料。
經過特徵提取處理得到的特徵資料將輸入至全連接層,需要理解的是,全連接層的數量可以為多個,由於在對點雲神經網路進行訓練後,不同的全連接層具有不同的權重,因此特徵資料經過不同的全連接層處理後得到的結果均不一樣。對上述特徵資料進行第一線性變換,得到上述數量為第一預設值的點所屬物體的參考點的位置到點的位置的預測位移向量,根據上述點的位置與上述預測位移向量得到上述點所屬物體的參考點的預測位置,即通過預測每個點到所屬物體的參考點的位移向量以及該點的位置,得到每個點所屬物體的參考點的位置,這樣可使每個點所屬物體的參考點的位置的預測值的範圍變得相對統一,點雲神經網路的收斂性質更好。對上述特徵資料進行第二線性變換,得到上述數量為第一預設值的點所屬物體的姿態角的預測值,對上 述特徵資料進行第三線性變換,得到上述數量為第一預設值的點所屬物體的類別。在一種可能實現的方式中,根據第一全連接層的權重,確定卷積層輸出的不同的特徵資料的權重,並進行第一加權疊加,得到上述數量為第一預設值的點所屬物體的參考點的位置的預測值;根據第二全連接層的權重,對卷積層輸出的不同的特徵資料進行第二加權疊加,得到上述數量為第一預設值的點所屬物體的姿態角的預測值;根據第三全連接層的權重,確定卷積層輸出的不同的特徵資料的權重,並進行第三加權疊加,得到上述數量為第一預設值的點所屬物體的類別。
本公開實施例通過對點雲神經網路進行訓練,使訓練後的點雲神經網路能基於物體的點雲資料,識別點雲資料中的點所屬物體的參考點的位置以及所屬物體的姿態角。
請參閱圖3,圖3是本申請實施例提供的另一種物體位姿估計方法的流程示意圖。
301、對至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合。
通過點雲神經網路的處理,物體的點雲資料中的每個點都有一個對應的預測向量,每個預測向量中包含:該點所屬的物體的位置的預測值以及姿態角的預測值。由於不同的物體的位姿在空間中必定是不重合的,因此屬於不同的物體上的點所得到的預測向量會有較大的差異,而屬於相同物體上的點所得到的預測向量基本相同,對此,基於上述 至少一個點所屬的物體的預測位姿以及聚類處理方法對物體的點雲資料中的點進行劃分,得到相應的聚類集合。在一種可能實現的方式中,從上述物體的點雲資料中任取一個點作為第一點;以第一點為球心、第二預設值為半徑,構建第一待調整聚類集合;以上述第一點為起始點、上述第一待調整聚類集合中除所述第一點之外的點為終點,得到第一向量,並對上述第一向量求和得到第二向量;若上述第二向量的模小於或等於閾值,將上述第一待調整聚類集合作為聚類集合;若上述第二向量的模大於閾值,將第一點沿上述第二向量進行移動,得到第二點;以第二點為球心,上述第二預設值為半徑,構建第二待調整聚類集合;對第三向量求和得到第四向量,其中,上述第三向量的起始點為所述第二點,上述第三向量的終點為所述第二待調整聚類集合中除所述第二點之外的點;若上述第四向量的模小於或等於上述閾值,將上述第二待調整聚類集合作為聚類集合;若上述第四向量的模大於上述閾值,重複上述構建第二待調整聚類集合的步驟,直到新構建的待調整聚類集合中除球心之外的點到球心的向量的和的模小於或等於上述閾值,將該待調整聚類集合作為聚類集合。通過上述聚類處理,得到至少一個聚類集合,每個聚類集合都有一個球心,若任意兩個球心之間的距離小於第二閾值,將這兩個球心對應的聚類集合合併成一個聚類集合。
需要理解的是,除上述可實現的聚類處理方法之外,還可通過其他聚類方法對上述至少一個點所屬的物體 的預測位姿進行聚類,如:基於密度的聚類方法、基於劃分的聚類方法、基於網路的聚類方法。對此,本申請不做具體限定。
302、根據上述至少一個聚類集合中所包含物體的預測位姿,得到上述物體的位姿。
上述得到的聚類集合中包含多個點,每個點都有所屬物體的參考點的位置的預測值以及所屬物體的姿態角的預測值,且每個聚類集合對應一個物體。通過對聚類集合中的點所屬物體的參考點的位置的預測值求平均值,並將位置的預測值的平均值作為該聚類集合的對應的物體的參考點的位置,對聚類集合中的點所屬物體的姿態角的預測值求平均值,並將姿態角的預測值的平均值作為該聚類集合的對應的物體的姿態角,得到上述物體的位姿。
上述這種方式獲得的物體的位姿的精度較低,通過對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿,可提高獲得的物體的位姿的精度。在一種可能實現的方式中,獲取上述物體的三維模型,並將三維模型置於模擬環境下,將上述聚類集合中的點所屬物體的參考點的位置的預測值的平均值作為三維模型的參考點的位置,將上述聚類集合中的點所屬物體的姿態角的預測值的平均值作為三維模型的姿態角,再根據反覆運算最近點演算法、上述三維模型和上述物體的點雲,調整三維模型的位置,使三維模型與物體的點雲資料中相應位置的物體的區域的重合度達到第三預設值,並將調整位置後的三維模型的參考點的位 置作為物體的參考點的位置,將調整後的三維模型的姿態角作為物體的姿態角。
本公開實施例基於點雲神經網路輸出的至少一個點的所屬物體的位姿對物體的點雲資料進行聚類處理,得到聚類集合;再根據聚類集合內所包含的點所屬物體的參考點的位置的預測值的平均值及姿態角的預測值的平均值,得到物體的參考點的位置及物體的姿態角。
請參閱圖4,圖4是本申請實施例提供的一種基於物體位姿估計抓取物體的流程示意圖。
401、根據物體的位姿,得到控制指令。
通過實施例2(201~204)和實施例3(301~302)的處理,可獲得任意場景下的堆疊的物體的位姿,由於物體的抓取點均是預先設定的,因此,在得到相機座標系下的物體的參考點的位置以及物體的姿態角的情況下,根據物體的姿態角,得到機器人末端執行器的調整角度;根據物體的參考點與抓取點之間的位置關係,得到相機座標系下的抓取點的位置;再根據機器人的手眼標定結果(即相機座標系下的抓取點的位置),得到機器人座標系下的抓取點的位置;根據機器人座標系下的抓取點的位置進行路徑規劃,得到機器人的行徑路線;將調整角度及行徑路線作為控制指令。
402、根據上述控制指令,控制機器人抓取物體。
將控制指令發送給機器人,控制機器人對物體進行抓取,並將物體進行裝配。在一種可能實現的方式中,根據物體的姿態角,得到機器人末端執行器的調整角度,並根據調整角度控制機器人的末端執行器進行調整。根據物體的參考點的位置以及抓取點的與參考點之間的位置關係,得到抓取點的位置。通過手眼標定結果對抓取點的位置進行轉換,得到機器人座標系下的抓取點的位置,並基於機器人座標系下的抓取點的位置進行路徑規劃,得到機器人的行徑路線,並控制機器人按照行徑路線進行移動,通過末端執行器抓取物體,再對物體進行裝配。
本公開實施例基於物體的位姿,控制機器人抓取物體以及裝配。
以下實施例是本申請實施例提供的一種訓練上述點雲神經網路的方法。
獲取物體的點雲資料和標籤資料;對所述物體的點雲資料進行特徵提取處理,得到特徵資料;對所述特徵資料進行第一線性變換,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;對所述特徵資料進行第二線性變換,得到所述點所屬物體的參考點的預測姿態角;對所述特徵資料進行第三線性變換,得到所述點雲資料中的點對應的物體類別識別結果;對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合,其中,所述預測位姿包括所述點所屬物 體的參考點的預測位置以及所述點所屬物體的參考點的預測姿態角;根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位姿,其中,所述位姿包括位置和姿態角;根據分類損失函數、所述物體類別預測結果及所述標籤資料,得到分類損失函數值;根據位姿損失函數、所述物體的位姿以及所述物體的位姿標籤,得到位姿損失函數值,所述位姿損失函數的運算式為:L=Σ∥R P -R GT 2;其中,R P 為所述物體的位姿,R GT 為所述位姿的標籤,Σ表示對至少一個點的點雲位姿函數進行加和;根據逐點點雲損失函數、可見性預測損失函數、所述分類損失函數值、所述位姿損失函數值,得到逐點點雲損失函數值;調整所述點雲神經網路的權重,使得所述逐點點雲損失函數值小於閾值,得到訓練後的點雲神經網路。
上述詳細闡述了本申請實施例的方法,下面提供了本申請實施例的裝置。
請參閱圖5,圖5為本申請實施例提供的一種物體位姿估計裝置的結構示意圖,該裝置1包括:獲取單元11、第一處理單元12、第二處理單元13、第三處理單元14、修正單元15以及第四處理單元16,其中:獲取單元11,配置為獲取物體的點雲資料,其中,所述點雲資料中包含至少一個點;第一處理單元12,配置為將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點所屬的物體的預測位姿; 第二處理單元13,配置為對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合;第三處理單元14,配置為根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位姿,其中,所述位姿包括位置和姿態角;修正單元15,配置為對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿;第四處理單元16,配置為將所述物體的點雲資料輸入至所述點雲神經網路,得到所述點雲資料中的點所屬物體的類別。
進一步地,所述物體的位姿包括所述物體的參考點的位姿;所述物體的位姿包括所述物體的參考點的位置和姿態角,所述參考點包括質心、重心、中心中的至少一種。
進一步地,所述第一處理單元12包括:特徵提取子單元121,配置為對所述至少一個點進行特徵提取處理,得到特徵資料;線性變換子單元122,配置為對所述特徵資料進行線性變換,得到所述至少一個點分別所屬的物體的預測位姿。
進一步地,所述物體的預測位姿包括所述物體的參考點的預測位置和預測姿態角;所述線性變換子單元122還配置為:對所述特徵資料進行第一線性變換,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;以及根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;以及對所述特徵資料進行 第二線性變換,得到所述點所屬物體的參考點的預測姿態角。
進一步地,所述點雲神經網路包括第一全連接層,所述線性變換子單元122還配置為:獲取所述第一全連接層的權重;以及根據所述第一全連接層的權重對所述特徵資料進行加權疊加運算,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;以及根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置。
進一步地,所述點雲神經網路包括第二全連接層,所述線性變換子單元122還配置為:獲取第二全連接層的權重;以及根據所述第二全連接層的權重對所述特徵資料進行加權疊加運算,得到所述分別物體的預測姿態角。
進一步地,所述獲取單元11包括:第一獲取子單元111,配置為獲取所述物體所在的場景的場景點雲資料以及預先儲存的背景點雲資料;第一確定子單元112,配置為在所述場景點雲資料以及所述背景點雲資料中存在相同的資料的情況下,確定所述場景點雲資料以及所述背景點雲資料中的相同資料;去除子單元113,配置為從所述場景點雲資料中去除所述相同資料,得到所述物體的點雲資料。
進一步地,所述獲取單元11還包括:第一處理子單元114,配置為對所述物體的點雲資料進行下採樣處理,得到數量為第一預設值的點;第二處理子單元115,配置為將所述數量為第一預設值的點輸入至預先訓練的點雲 神經網路,得到所述數量為第一預設值的點中至少一個點所屬的物體的預測位姿。
進一步地,所述預測位姿包括預測位置,所述第二處理單元13包括:劃分子單元131,配置為根據所述至少一個聚類集合中的點的所屬的物體的預測位置,將所述至少一個點劃分成至少一個集合,得到所述至少一個聚類集合。
進一步地,所述劃分子單元131還配置為:從所述物體的點雲資料中任取一個點作為第一點;以及以所述第一點為球心、第二預設值為半徑,構建第一待調整聚類集合;以及以所述第一點為起始點、所述第一待調整聚類集合中除所述第一點之外的點為終點,得到第一向量,並對所述第一向量求和得到第二向量;以及若所述第二向量的模小於或等於閾值,將所述第一待調整聚類集合作為所述聚類集合。
進一步地,所述劃分子單元131還配置為:若所述第二向量的模大於所述閾值,將所述第一點沿所述第二向量進行移動,得到第二點;以及以所述第二點為球心,所述第二預設值為半徑,構建第二待調整聚類集合;以及以所述第二點為起始點、所述第二待調整聚類集合中除所述第二點之外的點為終點,得到第三向量,並對第三向量求和得到第四向量;以及若所述第四向量的模小於或等於所述閾值,將所述第二待調整聚類集合作為所述聚類集合。
進一步地,所述第三處理單元14包括:計算子單元141,配置為計算所述聚類集合中所包含物體的預測位姿的平均值;第二確定子單元142,配置為將所述預測位姿的平均值作為所述物體的位姿。
進一步地,所述修正單元15包括:第二獲取子單元151,配置為獲取所述物體的三維模型;第三確定子單元152,配置為將所述聚類集合中所包含的點所屬的物體的預測位姿的平均值作為所述三維模型的位姿;調整子單元153,配置為根據反覆運算最近點演算法以及所述物體對應的聚類集合對所述三維模型的位置進行調整,並將調整位置後的三維模型的位姿作為所述物體的位姿。
進一步地,所述點雲神經網路基於逐點點雲損失函數加和值,並進行反向傳播訓練得到,所述逐點點雲損失函數基於位姿損失函數、分類損失函數以及可見性預測損失函數加權疊加得到,所述逐點點雲損失函數為對所述點雲資料中至少一個點的損失函數進行加和,所述位姿損失函數為:L=Σ∥R P -R GT 2;其中,R P 為所述物體的位姿,R GT 為所述位姿的標籤,Σ為對所述點雲資料中至少一個點的點雲位姿損失函數進行加和。
圖6為本申請實施例提供的一種物體位姿估計裝置的硬體結構示意圖。該估計裝置2包括處理器21,還可以包括輸入裝置22、輸出裝置23和記憶體24。該輸入裝置 22、輸出裝置23、記憶體24和處理器21之間通過匯流排相互連接。
記憶體包括但不限於是隨機存取記憶體(random access memory,RAM)、唯讀記憶體(read-only memory,ROM)、可擦除可程式設計唯讀記憶體(erasable programmable read only memory,EPROM)、或可擕式唯讀記憶體(compact disc read-only memory,CD-ROM),該記憶體用於相關指令及資料。
輸入裝置用於輸入資料和/或信號,以及輸出裝置用於輸出資料和/或信號。輸出裝置和輸入裝置可以是獨立的器件,也可以是一個整體的器件。
處理器可以包括是一個或多個處理器,例如包括一個或多個中央處理器(central processing unit,CPU),在處理器是一個CPU的情況下,該CPU可以是單核CPU,也可以是多核CPU。
記憶體用於儲存網路設備的程式碼和資料。
處理器用於調用該記憶體中的程式碼和資料,執行上述方法實施例中的步驟。具體可參見方法實施例中的描述,在此不再贅述。
可以理解的是,圖6僅僅示出了一種物體位姿估計裝置的簡化設計。在實際應用中,物體位姿估計裝置還可以分別包含必要的其他元件,包含但不限於任意數量的輸入/輸出裝置、處理器、控制器、記憶體等,而所有可以實現 本申請實施例的物體位姿估計裝置都在本申請的保護範圍之內。
本申請實施例還提供了一種電腦程式產品,用於儲存電腦可讀指令,指令被執行時使得電腦執行上述任一實施例提供的物體位姿估計方法的操作。
該電腦程式產品可以具體通過硬體、軟體或其結合的方式實現。在一個可選實施例中,所述電腦程式產品具體體現為電腦儲存介質(包括易失性和非易失性儲存介質),在另一個可選實施例中,電腦程式產品具體體現為軟體產品,例如軟體發展包(SDK,Software Development Kit)等等。
本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及演算法步驟,能夠以電子硬體、或者電腦軟體和電子硬體的結合來實現。這些功能究竟以硬體還是軟體方式來執行,取決於技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本申請的範圍。
所屬領域的技術人員可以清楚地瞭解到,為描述的方便和簡潔,上述描述的系統、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統、裝置和方法,可以通過其它的方式實現。 例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或元件可以結合或者可以集成到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些介面,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到多個網路單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本申請各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
在上述實施例中,可以全部或部分地通過軟體、硬體、固件或者其任意組合來實現。當使用軟體實現時,可以全部或部分地以電腦程式產品的形式實現。所述電腦程式產品包括一個或多個電腦指令。在電腦上載入和執行所述電腦程式指令時,全部或部分地產生按照本申請實施例所述的流程或功能。所述電腦可以是通用電腦、專用電腦、電腦網路、或者其他可程式設計裝置。所述電腦指令可以儲存在電腦可讀儲存介質中,或者通過所述電腦可讀儲存介質進行傳輸。所述電腦指令可以從一個網站網站、電腦、伺服器或 資料中心通過有線(例如同軸電纜、光纖、數位用戶線路(digital subscriber line,DSL))或無線(例如紅外、無線、微波等)方式向另一個網站網站、電腦、伺服器或資料中心進行傳輸。所述電腦可讀儲存介質可以是電腦能夠存取的任何可用介質或者是包含一個或多個可用介質集成的伺服器、資料中心等資料儲存裝置。所述可用介質可以是磁性介質,(例如,軟碟、硬碟、磁帶)、光介質(例如,數位通用光碟(digital versatile disc,DVD))、或者半導體介質(例如固態硬碟(solid state disk,SSD))等。
本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,該流程可以由電腦程式來指令相關的硬體完成,該程式可儲存於電腦可讀取儲存介質中,該程式在執行時,可包括如上述各方法實施例的流程。而前述的儲存介質包括:唯讀記憶體(read-only memory,ROM)或隨機儲存記憶體(random access memory,RAM)、磁碟或者光碟等各種可儲存程式碼的介質。
圖1代表圖為流程圖,無元件符號簡單說明。

Claims (14)

  1. 一種物體位姿估計方法,包括:獲取物體的點雲資料,其中,所述點雲資料中包含至少一個點;將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點所屬的物體的預測位姿;對所述至少一個點所屬的物體的預測位姿進行聚類處理,得到至少一個聚類集合;根據所述至少一個聚類集合中所包含物體的預測位姿,得到所述物體的位姿,其中,所述位姿包括位置和姿態角;所述位姿能夠用於對所述物體進行抓取;其中,所述獲取物體的點雲資料,包括:獲取所述物體所在的場景的場景點雲資料以及預先儲存的背景點雲資料;在所述場景點雲資料以及所述背景點雲資料中存在相同的資料的情況下,確定所述場景點雲資料以及所述背景點雲資料中的相同資料;從所述場景點雲資料中去除所述相同資料,得到所述物體的點雲資料。
  2. 根據請求項1所述的方法,其中,所述物體的位姿包括所述物體的參考點的位姿;所述物體的位姿包括所述物體的參考點的位置和姿態角,所述參考點包括質心、重心、中心中的至少一種。
  3. 根據請求項1或2所述的方法,其中,所述將所述物體的點雲資料輸入至預先訓練的點雲神經網路,得到所述至少一個點分別所屬的物體的預測位姿,所述點雲神經網路對所述物體的點雲資料執行的操作包括:對所述至少一個點進行特徵提取處理,得到特徵資料;對所述特徵資料進行線性變換,得到所述至少一個點分別所屬的物體的預測位姿。
  4. 根據請求項3所述的方法,其中,所述物體的預測位姿包括所述物體的參考點的預測位置和預測姿態角;所述對所述特徵資料進行線性變換,得到所述物體的點雲資料中的點的預測位姿,包括:對所述特徵資料進行第一線性變換,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;對所述特徵資料進行第二線性變換,得到所述點所屬物體的參考點的預測姿態角。
  5. 根據請求項4所述的方法,其中,所述點雲神經網路包括第一全連接層,所述對所述特徵資料進行第一線性變換,得到所述至少一個點分別所屬的物體的預測位置,包括:獲取所述第一全連接層的權重; 根據所述第一全連接層的權重對所述特徵資料進行加權疊加運算,得到所述點所屬物體的參考點的位置到所述點的位置的預測位移向量;根據所述點的位置與所述預測位移向量得到所述點所屬物體的參考點的預測位置;和/或,所述點雲神經網路包括第二全連接層,對所述特徵資料進行第二線性變換,得到所述點所屬物體的預測姿態角,包括:獲取第二全連接層的權重;根據所述第二全連接層的權重對所述特徵資料進行加權疊加運算,得到所述分別物體的預測姿態角。
  6. 根據請求項1或2所述的方法,其中,所述預測位姿包括預測位置,所述對所述至少一個點進行聚類處理,得到至少一個聚類集合,包括:根據所述至少一個聚類集合中的點的所屬的物體的預測位置,將所述至少一個點劃分成至少一個集合,得到所述至少一個聚類集合。
  7. 根據請求項6所述的方法,其中,所述根據所述至少一個聚類集合中的點的所屬的物體的預測位置,將所述至少一個點劃分成至少一個集合,得到所述至少一個聚類集合,包括:從所述物體的點雲資料中任取一個點作為第一點;以所述第一點為球心、第二預設值為半徑,構建第一待調整聚類集合; 以所述第一點為起始點、所述第一待調整聚類集合中除所述第一點之外的點為終點,得到第一向量,並對所述第一向量求和得到第二向量;若所述第二向量的模小於或等於閾值,將所述第一待調整聚類集合作為所述聚類集合。
  8. 根據請求項7所述的方法,所述方法還包括:若所述第二向量的模大於所述閾值,將所述第一點沿所述第二向量進行移動,得到第二點;以所述第二點為球心,所述第二預設值為半徑,構建第二待調整聚類集合;以所述第二點為起始點、所述第二待調整聚類集合中除所述第二點之外的點為終點,得到第三向量,並對第三向量求和得到第四向量;若所述第四向量的模小於或等於所述閾值,將所述第二待調整聚類集合作為所述聚類集合。
  9. 根據請求項1或2所述的方法,所述方法還包括:對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿。
  10. 根據請求項9所述的方法,其中,所述對所述物體的位姿進行修正,將修正後的位姿作為所述物體的位姿,包括:獲取所述物體的三維模型; 將所述聚類集合中所包含的點所屬的物體的預測位姿的平均值作為所述三維模型的位姿;根據反覆運算最近點演算法以及所述物體對應的聚類集合對所述三維模型的位置進行調整,並將調整位置後的三維模型的位姿作為所述物體的位姿。
  11. 根據請求項1或2所述的方法,所述方法還包括:將所述物體的點雲資料輸入至所述點雲神經網路,得到所述點雲資料中的點所屬物體的類別。
  12. 根據請求項1或2所述的方法,其中,所述點雲神經網路基於逐點點雲損失函數加和值,並進行反向傳播訓練得到,所述逐點點雲損失函數基於位姿損失函數、分類損失函數以及可見性預測損失函數加權疊加得到,所述逐點點雲損失函數為對所述點雲資料中至少一個點的損失函數進行加和。
  13. 一種物體位姿估計的裝置,包括:處理器和記憶體,所述處理器和所述記憶體耦合;其中,所述記憶體儲存有程式指令,所述程式指令被所述處理器執行時,使所述處理器執行如請求項1至12任意一項所述的方法。
  14. 一種電腦可讀儲存介質,所述電腦可讀儲存介質中儲存有電腦程式,所述電腦程式包括程式指令,所述程式指令當被批次處理裝置的處理器執行時,使所述處理器執行如請求項1至12任意一項所述的方法。
TW108147453A 2019-02-23 2019-12-24 物體位姿估計方法及裝置、電腦可讀儲存介質 TWI776113B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910134640.4 2019-02-23
CN201910134640.4A CN109816050A (zh) 2019-02-23 2019-02-23 物体位姿估计方法及装置

Publications (2)

Publication Number Publication Date
TW202032437A TW202032437A (zh) 2020-09-01
TWI776113B true TWI776113B (zh) 2022-09-01

Family

ID=66607232

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108147453A TWI776113B (zh) 2019-02-23 2019-12-24 物體位姿估計方法及裝置、電腦可讀儲存介質

Country Status (7)

Country Link
US (1) US20210166418A1 (zh)
JP (1) JP2021536068A (zh)
KR (1) KR20210043632A (zh)
CN (1) CN109816050A (zh)
SG (1) SG11202101493XA (zh)
TW (1) TWI776113B (zh)
WO (1) WO2020168770A1 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109816050A (zh) * 2019-02-23 2019-05-28 深圳市商汤科技有限公司 物体位姿估计方法及装置
CN110414374B (zh) * 2019-07-08 2021-12-17 深兰科技(上海)有限公司 一种障碍物位姿的确定方法、装置、设备及介质
CN110927732A (zh) * 2019-10-21 2020-03-27 上海宾通智能科技有限公司 位姿识别方法、电子设备和存储介质
CN110796671B (zh) * 2019-10-31 2022-08-26 深圳市商汤科技有限公司 数据处理方法及相关装置
CN111091597B (zh) * 2019-11-18 2020-11-13 贝壳找房(北京)科技有限公司 确定图像位姿变换的方法、装置及存储介质
US11430150B2 (en) 2020-01-03 2022-08-30 Samsung Electronics Co., Ltd. Method and apparatus for processing sparse points
CN111612842B (zh) * 2020-05-29 2023-08-18 如你所视(北京)科技有限公司 生成位姿估计模型的方法和装置
CN112164115B (zh) * 2020-09-25 2024-04-02 清华大学深圳国际研究生院 物体位姿识别的方法、装置及计算机存储介质
US11748449B2 (en) * 2020-11-25 2023-09-05 Beijing Baidu Netcom Science And Technology Co., Ltd. Data processing method, data processing apparatus, electronic device and storage medium
CN112802093B (zh) * 2021-02-05 2023-09-12 梅卡曼德(北京)机器人科技有限公司 对象抓取方法及装置
CN114913331A (zh) * 2021-02-08 2022-08-16 阿里巴巴集团控股有限公司 一种基于点云数据的目标检测方法和装置
JP2023022517A (ja) * 2021-08-03 2023-02-15 株式会社東芝 計測システム及び計測プログラム
CN114029941B (zh) * 2021-09-22 2023-04-07 中国科学院自动化研究所 一种机器人抓取方法、装置、电子设备及计算机介质
CN116197886A (zh) * 2021-11-28 2023-06-02 梅卡曼德(北京)机器人科技有限公司 图像数据处理方法、装置、电子设备和存储介质
CN114596363B (zh) * 2022-05-10 2022-07-22 北京鉴智科技有限公司 一种三维点云标注方法、装置及终端
CN114648585B (zh) * 2022-05-23 2022-08-16 中国科学院合肥物质科学研究院 一种基于激光点云与集成学习的车辆姿态估计方法
CN114937265B (zh) * 2022-07-25 2022-10-28 深圳市商汤科技有限公司 点云检测方法和模型训练方法、装置、设备及存储介质
KR20240056222A (ko) 2022-10-21 2024-04-30 송성호 적응형 깊이 추정기를 이용한 미지 물체의 자세 예측
WO2024095380A1 (ja) * 2022-11-02 2024-05-10 三菱電機株式会社 点群識別装置、学習装置、点群識別方法、および、学習方法
CN115546202B (zh) * 2022-11-23 2023-03-03 青岛中德智能技术研究院 一种用于无人叉车的托盘检测与定位方法
CN116188883B (zh) * 2023-04-28 2023-08-29 中国科学技术大学 一种抓握位置分析方法及终端

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108399639A (zh) * 2018-02-12 2018-08-14 杭州蓝芯科技有限公司 基于深度学习的快速自动抓取与摆放方法
CN109144056A (zh) * 2018-08-02 2019-01-04 上海思岚科技有限公司 移动机器人的全局自定位方法及设备

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012146253A1 (en) * 2011-04-29 2012-11-01 Scape Technologies A/S Pose estimation and classification of objects from 3d point clouds
US9730643B2 (en) * 2013-10-17 2017-08-15 Siemens Healthcare Gmbh Method and system for anatomical object detection using marginal space deep neural networks
CN104123724B (zh) * 2014-07-09 2017-01-18 华北电力大学 一种3d点云物体的快速检测方法
US9875427B2 (en) * 2015-07-28 2018-01-23 GM Global Technology Operations LLC Method for object localization and pose estimation for an object of interest
CN105046235B (zh) * 2015-08-03 2018-09-07 百度在线网络技术(北京)有限公司 车道线的识别建模方法和装置、识别方法和装置
CN105809118A (zh) * 2016-03-03 2016-07-27 重庆中科云丛科技有限公司 三维目标识别方法及装置
CN105844631B (zh) * 2016-03-21 2018-11-20 湖南拓视觉信息技术有限公司 一种目标定位方法及装置
CN105931237A (zh) * 2016-04-19 2016-09-07 北京理工大学 一种图像校准方法和系统
CN106127120B (zh) * 2016-06-16 2018-03-13 北京市商汤科技开发有限公司 姿势估计方法和装置、计算机系统
CN107953329B (zh) * 2016-10-17 2021-06-15 中国科学院深圳先进技术研究院 物体识别和姿态估计方法、装置及机械臂抓取系统
CN106951847B (zh) * 2017-03-13 2020-09-29 百度在线网络技术(北京)有限公司 障碍物检测方法、装置、设备及存储介质
US11521712B2 (en) * 2017-05-19 2022-12-06 Accutar Biotechnology Inc. Computational method for classifying and predicting ligand docking conformations
CN107609541B (zh) * 2017-10-17 2020-11-10 哈尔滨理工大学 一种基于可变形卷积神经网络的人体姿态估计方法
CN108961339B (zh) * 2018-07-20 2020-10-20 深圳辰视智能科技有限公司 一种基于深度学习的点云物体姿态估计方法、装置及其设备
CN109145969B (zh) * 2018-08-03 2020-07-28 百度在线网络技术(北京)有限公司 三维物体点云数据的处理方法、装置、设备及介质
CN109685848B (zh) * 2018-12-14 2023-06-09 上海交通大学 一种三维点云与三维传感器的神经网络坐标变换方法
CN109816050A (zh) * 2019-02-23 2019-05-28 深圳市商汤科技有限公司 物体位姿估计方法及装置
CN110263652B (zh) * 2019-05-23 2021-08-03 杭州飞步科技有限公司 激光点云数据识别方法及装置
CN110490917A (zh) * 2019-08-12 2019-11-22 北京影谱科技股份有限公司 三维重建方法及装置
CN112651316B (zh) * 2020-12-18 2022-07-15 上海交通大学 二维和三维多人姿态估计系统及方法
CN113569638A (zh) * 2021-06-24 2021-10-29 清华大学 由平面指纹估计手指三维姿态的方法和装置
CN113408443B (zh) * 2021-06-24 2022-07-05 齐鲁工业大学 基于多视角图像的手势姿态预测方法及系统
CN113706619B (zh) * 2021-10-21 2022-04-08 南京航空航天大学 一种基于空间映射学习的非合作目标姿态估计方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108399639A (zh) * 2018-02-12 2018-08-14 杭州蓝芯科技有限公司 基于深度学习的快速自动抓取与摆放方法
CN109144056A (zh) * 2018-08-02 2019-01-04 上海思岚科技有限公司 移动机器人的全局自定位方法及设备

Also Published As

Publication number Publication date
TW202032437A (zh) 2020-09-01
KR20210043632A (ko) 2021-04-21
SG11202101493XA (en) 2021-03-30
WO2020168770A1 (zh) 2020-08-27
JP2021536068A (ja) 2021-12-23
CN109816050A (zh) 2019-05-28
US20210166418A1 (en) 2021-06-03

Similar Documents

Publication Publication Date Title
TWI776113B (zh) 物體位姿估計方法及裝置、電腦可讀儲存介質
US11325252B2 (en) Action prediction networks for robotic grasping
CN109202904B (zh) 一种机械臂运动路径的确定方法及确定系统
CN110796671B (zh) 数据处理方法及相关装置
US11292132B2 (en) Robot path planning method with static and dynamic collision avoidance in an uncertain environment
EP4157589A1 (en) A robot path planning method with static and dynamic collision avoidance in an uncertain environment
CN111882610A (zh) 基于椭圆锥人工势场的服务机器人抓取目标物体的方法
CN111015656A (zh) 一种机器人主动避障的控制方法、装置及存储介质
CN113997295B (zh) 机械臂的手眼标定方法、装置、电子设备及存储介质
CN114387513A (zh) 机器人抓取方法、装置、电子设备及存储介质
Zhang et al. Sim2real learning of obstacle avoidance for robotic manipulators in uncertain environments
CN115008452B (zh) 一种机械臂控制方法及其系统、电子设备、存储介质
Suzuki et al. Online self-supervised learning for object picking: detecting optimum grasping position using a metric learning approach
JP2018169660A (ja) オブジェクト姿勢検出装置、制御装置、ロボットおよびロボットシステム
CN115625709A (zh) 一种手眼标定方法、装置和计算机设备
CN116018599A (zh) 用于训练机器学习模型以从对象的图像中识别对象的对象拓扑的设备和方法
KR101107735B1 (ko) 카메라 포즈 결정 방법
CN115338874B (zh) 基于激光雷达的机器人实时控制方法
CN116690557A (zh) 基于点云的仿人三维扫描运动控制方法及装置
CN114494426A (zh) 用于控制机器人来在不同的方位拿起对象的装置和方法
CN109702739B9 (zh) 一种基于非向量空间控制策略的导线追踪方法及装置
WO2022254609A1 (ja) 情報処理装置、移動体、情報処理方法、及びプログラム
JP2023148859A (ja) 制御方法、制御システム及び保持制御プログラム
CN114720993A (zh) 机器人定位方法、装置、电子设备以及存储介质
CN117911503A (zh) 位姿估计方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent