JP2022542239A - 視角エンベディングに基づいた自律タスク実行 - Google Patents

視角エンベディングに基づいた自律タスク実行 Download PDF

Info

Publication number
JP2022542239A
JP2022542239A JP2022503936A JP2022503936A JP2022542239A JP 2022542239 A JP2022542239 A JP 2022542239A JP 2022503936 A JP2022503936 A JP 2022503936A JP 2022503936 A JP2022503936 A JP 2022503936A JP 2022542239 A JP2022542239 A JP 2022542239A
Authority
JP
Japan
Prior art keywords
image
keyframe
pixels
robot
robotic device
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2022503936A
Other languages
English (en)
Other versions
JPWO2021015883A5 (ja
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 JP2022542239A publication Critical patent/JP2022542239A/ja
Publication of JPWO2021015883A5 publication Critical patent/JPWO2021015883A5/ja
Pending legal-status Critical Current

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/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • 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/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/28Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • 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
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • 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/375673-D vision, stereo vision, with two 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40136Stereo audio and vision
    • 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/40543Identification and location, position of components, objects
    • 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/40564Recognize shape, contour of object, extract position and orientation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • 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
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • 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/10016Video; Image sequence
    • 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/10024Color image
    • 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]
    • 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/20092Interactive image processing based on input by user
    • G06T2207/20104Interactive definition of region of interest [ROI]

Abstract

ロボット装置を制御する方法が提示される。本方法はロボット装置の現在の視覚に対応する画像を撮影することを含む。本方法はまた画像の第2のピクセルのセットに一致する第1のピクセルのセットを有するキーフレーム画像を識別することを含む。本方法は更にロボット装置によりキーフレーム画像に対応するタスクを実行することを含む。【選択図】図2D

Description

関連出願の相互参照
本出願は、2019年6月23日に出願され「キーフレームマッチャー」と題された米国特許仮出願第62/877,792、2019年6月23日に出願され「操作のための視覚的教示及び繰り返し―教示VR」と題された米国特許仮出願第62/877,791、及び2019年6月23日に出願され「視覚化」と題された米国特許仮出願第62/877,793の利益を主張する、2019年9月13日に出願され「視角エンベディングに基づいた自律タスク実行」と題された米国特許出願第16/570,618の利益を主張し、その内容を参照により本明細書に援用される。
本開示の特定の態様は概してロボット装置に関し、特に環境と相互作用するために環境の記憶を使用するシステム及び方法に関する。
自律エージェント(例えば車両、ロボット、ドローン等)及び半自律エージェントは周囲の環境における関心領域を解析するためにマシンビジョンを使用する。運転中は、自律エージェントは周囲の環境の画像中の関心領域中に存在する物体を識別するために訓練されたニューラルネットワークに頼ることがある。例えば、ニューラルネットワークは、光検出と測距(LIDAR)センサ、ソナーセンサ、RGBカメラ、RGB-Dカメラ等のような1つ以上のセンサにより捉えられた物体を識別し追従するよう訓練されていてもよい。センサは、自律エージェントのような装置と接続されるか、又は通信中であってもよい。自律エージェントのための物体検知アプリケーションは、自律エージェントの周囲の風景から物体(例えば歩行者、自転車に乗っている人、他の車等)を検知するために、センサ画像データを解析してもよい。
従来のシステムでは、自律エージェントは特徴に基づいたアプローチによりタスクを実行するよう訓練される。すなわち、タスクはロボット装置の現在の視覚の画像から抽出された特徴に基づいて実行される。画像の特徴は画像中の物体のユニークな特徴に限られる。画像が多くの特徴を有さなければ、従来の物体検出システムの正確性は限られ得る。視覚システムの正確性を向上させることが望ましい。
本開示のある態様では、ロボット装置を制御する方法が開示される。方法はロボット装置の現在の視覚に対応する画像を撮影することを含む。方法はまた画像の第2のピクセルのセットに一致する第1のピクセルのセットを備えるキーフレーム画像を識別することを含む。方法は更にロボット装置画像がキーフレーム画像に対応するタスクを実行することを含む。
本開示の別の態様では、非一時的なプログラムコードを記憶した非一時的なコンピュータ可読媒体が開示される。プログラムコードはロボット装置を制御するためのものである。プログラムコードはプロセッサにより実行され、ロボット装置の現在の視覚に対応する画像を撮影するプログラムコードを含む。プログラムコードはまた画像の第2のピクセルのセットに一致する第1のピクセルのセットを備えるキーフレーム画像を識別するプログラムコードを含む。プログラムコードは更にロボット装置がキーフレーム画像に対応するタスクを実行するプログラムコードを含む。
本開示の別の態様は、ロボット装置に関する。装置はメモリ及びメモリに接続された1つ以上のプロセッサを有する。プロセッサはロボット装置の現在の視覚に対応する画像を撮影する。プロセッサはまた画像の第2のピクセルのセットに一致する第1のピクセルのセットを備えるキーフレーム画像を識別する。プロセッサは更にキーフレーム画像に対応するタスクを実行する。
以上、この後の詳細な説明がより良く理解されるために本開示の特徴及び技術的利点を広く大まかに説明した。本開示の追加の機能及び利点を以下に説明する。本開示は、本開示と同じ目的を実行するためのその他の構造を変更又は設計するための基礎として容易に使用され得るものであることが、当業者により理解されるはずである。そのような同等の構成は添付する特許請求の範囲により規定される本開示の教示から逸脱しないことも、当業者により認識されるはずである。本開示の特徴であると考えられる新しい機能は、その構成及び操作方法に関して、更なる目的及び利点と共に、添付する図と併せて考慮されたときに以下の説明からよりよく理解されるであろう。しかしながら、各図面は例示及び説明のみを目的として提供され、本開示の限界を定義することは意図しないことは、明白に理解されるべきである。
本開示の機能、性質、及び利点は、類似の参照文字が全体に渡って対応する図面と組み合わせて考慮した場合に、以下に行う詳細な説明からより明らかになる。
本開示の態様によりオペレーターがロボット装置を制御する例を示す。 本開示の態様により環境中にて動作するロボット装置の例を示す。 本開示の態様によりロボット装置が撮影した画像の例を示す。 本開示の態様によるキーフレームの例を示す。 本開示の態様によるキーフレームマッチングの例を示す。 本開示の態様により環境中にて動作するロボット装置により提供された情報に基づいて生成された視覚的出力の例を示す。 本開示の態様によるロボットシステムのハードウエア実装の例を示す。 本開示の態様による教示された動作のグラフシーケンスを示す。 本開示の態様によるロボットシステムのためのソフトウエアモジュールを示す。 本開示の態様によるロボット装置を制御する方法を示す。
以下に行う添付図面に関連した詳細な説明は、様々な構成の説明を意図し、本明細書内で説明する概念を実施する単一の構成を提示することを意図しない。詳細な説明は、様々な概念の完全な理解を提供する目的により、特定の詳細を含む。しかしながら、これらの概念がこれらの特定の詳細なしに実施され得ることが当業者には明らかであろう。幾つかの事例では、そのような概念を不明瞭にすることを避けるために、周知の構造及び構成要素がブロック図にて示される。
教示に基づき、本開示の範囲は、独立して実装されるか本開示のその他の態様と組み合わせるかに関わらず、本開示の任意の態様を含めることを意図することが、当業者により理解されるべきである。例えば、明らかにされる任意の数の態様を使用して装置を実装してもよく、又は方法を実施してもよい。加えて、本開示の範囲は、本開示で明らかにする様々な態様に加えて、又はその他の構造及び機能、又は構造及び機能を使用して実施されるそのような装置又は方法を含むことを意図する。本開示の任意の態様は特許請求の範囲の1つ以上の要素により具現化され得ることが理解されるべきである。
本明細書において「例示的な」という語は「例、実例、又は例証の役割を果たす」という意味で使用される。「例示的」として説明される本明細書の任意の態様は必ずしも他の態様に比べて好ましい又は有利であるとして理解されるべきものではない。
本明細書にて特定の態様を説明するが、本開示の範囲にはこれらの態様に対する多数の変形及び置換が含まれる。好ましい態様の幾つかの利益及び利点が記載されるが、本開示の範囲は特定の利益、使用又は目的に限定されることを意図しない。寧ろ、本開示の態様は、一部を図及び好ましい態様の説明に例示を目的として示す異なる技術、システム構成、ネットワーク、及びプロトコルへ広く適用可能であることが意図される。詳細な説明及び図面は限定することよりも寧ろ本開示の説明のみを目的とし、本開示の範囲は添付する特許請求の範囲及び同等物によって定義される。
自律エージェント及び半自律エージェントは検出物体に対してタスクを実行してもよい。例えば、エージェントは環境中を走行し(navigate)、環境中の物体を識別し、そして/又は環境中の物体と相互作用し得る。本願では、ロボット又はロボット装置は自律エージェント又は半自律エージェントのことである。簡略化のために、ロボット装置はロボットと称される。
本開示の態様は特定の型のロボットに限定されない。視覚/視覚化出力を提供する1つ以上の視覚システムを有する様々な型のロボット装置が考えられる。視覚出力は供給ビデオとしてオペレーターへ提供されてもよい。
本開示の態様によれば、ロボットは移動操作が可能である。すなわち、ロボットは関節構成の機能としてエンドエフェクタの位置を変更する能力を有する。ある構成では、ロボットは自動的に全身を制御し計画を立てる機能を備えている。そのことにより人間のオペレーターが運動学的制約又はロボットの姿勢をほとんど又は全く気にすることなく、タスク空間における継ぎ目ないエンドエフェクタ動作を仮想現実(VR)で実演することができる。
ロボットはパン/チルトヘッドに1つ以上の視界RGB-D(red-green-blue及び奥行)センサを備え、仮想現実中の人間のオペレーターに重要なコンテキストを与えることができる。RGB-D画像はRGB画像及び対応する奥行画像の組み合わせである。奥行画像とは、各ピクセルが画像平面とRGB画像上の対応する物体との距離に関連付けられている画像チャンネルである。
ロボットは環境の供給ビデオ(例えば供給画像)から得られた画像に基づいて環境中を走行してもよい。ロボットはまた供給ビデオからの画像に基づいてタスクを実行してもよい。従来の視覚システムでは、ロボットは特徴点に基づいたアプローチにより画像(例えば物体の画像)を識別する。
従来のシステムでは、ロボットは特徴に基づいたアプローチによりタスクを実行するよう訓練される。すなわち、タスクはロボットの現在の視覚の画像から抽出された特徴に基づいて実行される。特徴点に基づくアプローチでは、テスト画像と参照画像の類似性に基づいてテスト画像(例えば現在の画像)を識別する。
特に、従来の視覚システムではテスト画像の特徴と参照画像の特徴を比較する。テスト画像は、特徴が参照画像の特徴と一致したときに識別される。ある場合には、従来のロボットは開始点及び/又は物体の方向/位置がプログラムされた、又は教示されたタスクと一致しない場合、同じタスクを実行することができない。
特徴とは、画像の明白な(例えばユニークな)特色(例えば角、端、高コントラスト領域、低コントラスト領域等)である。画像は複数の特徴を含んでもよい。ディスクリプタが画像中の特徴をエンコードする。特徴ベクトルはディスクリプタの例であってもよい。従来の視覚システムでは、ディスクリプタは画像のユニークな特徴(例えば画像中の物体)のエンコードに限られていた。
ほとんどの場合、ディスクリプタは画像変換(例えば局在化、スケール、明るさ等)に対してロバストである。すなわち、従来の視覚システムは、様々な照明条件などの様々な条件において、物体を識別し得る。それにも関わらず、ディスクリプタが画像にユニークな特徴のエンコードに限られているため、ロバスト性は限定的である。ロボットが画像を識別してタスクを実行する能力を改善するためには、画像の視覚システムのロバスト性を改善することが理想的である。
本開示の態様は画像のピクセルにディスクリプタを割り当てることに関する。すなわち、従来の視覚システムとは対照的に、本開示の態様ではディスクリプタはユニークな特徴に限られない。したがって、視覚システムの正確性が進歩し得る。特に、従来の視覚システムはテスト画像の明白な特徴(例えば特色)を参照画像の明白な特徴と比較することに限られていた。画像は特徴よりも多くのピクセルを含む。従って、特徴の代わりにピクセルを比較することにより、比較の正確性が増大する。
すなわち、ある構成では、視覚システムはテスト画像のピクセルを参照画像のピクセルと比較する。参照画像はキーフレームと称されてもよい。キーフレームは訓練中に取得されてもよく、姿勢及び画像変換に対して不変である。視覚システムは一致したピクセルの数が閾値よりも大きいときに、テスト画像がキーフレームに一致したことを判断する。
ある構成では、視覚システムは、テスト画像とキーフレームとの一致ピクセルを識別するために、ピクセルのディスクリプタを比較する。ピクセルディスクリプタはピクセルレベル情報と奥行情報を含む。ピクセルレベル情報はピクセルのRGB値や、画像/周囲のピクセル中におけるピクセルのコンテキストのような情報を含む。
ピクセルのコンテキストは、ピクセルのあいまいさをなくすための情報を含む。コンテキストのサイズはピクセルに依存し、訓練中に学習される。例えば、装飾のない白い壁の中央にあるピクセルは、瓶上の高度に質感を与えられたロゴに比較すると、より多くのコンテキストを必要とし得る。ロボットはこの機能を手作りすることなく、どのくらいのコンテキストが必要なのかを学習する。奥行情報は、ピクセルに対応し、面からその面の画像を取得するために使用されたセンサへの距離を示す。
訓練中、ロボットがタスクを実行すると、1つ以上のセンサが風景の画像データを取得する。キーフレームは取得された画像データから生成される。キーフレームはロボットが特定のタスクを実行していた時の環境の記憶として概念化されてもよい。すなわち、キーフレームは環境中のタスク又は位置へのアンカーとして設定されてもよい。テスト後、ロボットにより現在の画像とキーフレームが一致したとき、キーフレームに対応する訓練された機能が実行されてもよい。
キーフレームのピクセルにディスクリプタが割り当てられてもよい。ディスクリプタは値のベクトル又は配列であってもよい。例えば、ディスクリプタは16要素を持つベクトルであってもよい。ディスクリプタ(例えばピクセルディスクリプタ)は一致する画像を識別するために使用されてもよい。
訓練後、ロボットは1つ以上の学習されたタスクを実行するために初期化されてもよい。ロボットは命令されたタスクを実行する際に生の画像データを収集してもよい。生の画像データはロボットが通過及び/又は環境中の物体を操作する際にキーフレーム内のピクセルにピクセルレベルにてマッピングされる。現在の画像とキーフレームの対応関係はピクセルディスクリプタの類似性に基づいて判断される。
すなわち、ロボットは現在の画像のピクセルディスクリプタの値をキーフレームのピクセルディスクリプタと比較する。比較の確信度は現在の画像のピクセルがキーフレームのピクセルへ一致する可能性を示す。一致の信確信度を判断するために、剛体仮定が使用されてもよい。すなわち、確信度は現在の画像とキーフレーム中の物体上の点のペアの距離に基づいて判断されてもよい。双方の画像の姿勢に関わらず物体上の点間の距離が一定であり続けるときに確信度は上昇する。画像中の姿勢は画像が撮影されたときのロボットの姿勢のことである。異なる姿勢を持つ画像間で物体上の点間の距離が異なる場合、確信度は低下する。
ロボットは現在の画像データとキーフレームの複数のピクセル間の斜め/並行の対応関係(例えば非交差相対関係)を使用して一致の確信度を視覚してもよい。視覚化されたものは遠隔の操作センターへ送信されてもよい。交差関係は現在の画像データとキーフレームの間の非一致を示すということである。
ある構成では、ロボットは環境中に位置し、風景の画像データが収集される。その後ロボットは(例えば仮想現実インターフェースを通して)制御され、タスクを実行する。仮想現実にて人間のオペレーターの視界をロボットの視界へと制限することにより、訓練中にロボットが1人でタスクを実行する能力が改善される。
ロボットは、仮想現実インターフェースを通してオペレーターが行う動作をパラメーター化することによりアクション/タスクを実行するよう教示されてもよい。例えば、仮想現実インターフェースは、オペレーターがVR環境を描画するヘッドセットを着用して操作するパドル、手持ちのコントローラ、ペイントブラシツール、拭き取り用具、及び/又は配置ツールの使用を含んでもよい。従って、人間のオペレーターは、直接的にタスク空間での動作を教示するよりも、パラメーター化されたプリミティブ(又は動作)のセットを教示する。パラメーター化されたプリミティブは、教示されるパラメーターを削減し、実行中のロバスト性を提供するために、衝突のない動作計画とハイブリッド(位置及び力)のデカルト制御を組み合わせる。
パラメーター化された動作とは、そのタスクを小さい数の分離した動作の塊に分けることにより学習することである。各動作は、関節角度変化、回転角度等のパラメーターのセットにより定義される。これらのパラメーターの値はタスクを実行するときのロボットの状況に基づいて構成され更新されてもよい。
パラメーター化された動作は、1つの学習済みタスクから学習及び抽出され、より大きいタスクを形成するためにその他のタスクと組み合わされてもよい。回転するハンドルを有するドアを開けるようなパラメーター化された動作は、任意のドアハンドルを開けることを実行することとして実装されてもよい(例えば30度の回転を要するドア、又は60度の回転を要するドア、又はより多くの回転)。例えば、回転角度は回転するドアハンドルを有するドアを開けることに対するパラメーター化された動作を定義する1つのパラメーターであり得る。
タスクを実行するには、ロボットは(訓練中の初期位置から相対的に)同じ又は類似した環境中に位置してもよい。ロボットは異なるスタート地点に位置してもよく、相対的に異なる初期姿勢をとってもよい(例えば関節角度が異なるスタート位置へ調整される)。ロボットは瓶を取り上げる、キャビネットを開ける、そして瓶をキャビネットに入れるといった、(人間のオペレーターによる制御なしに)同じタスクの実行(例えばパラメーター化された動作のセット)を課され得る。例えば、ロボットは仮想現実にて制御されたシーケンスの中で教示された動作のパラメーターを更新することにより同じタスクを実行してもよい。パラメーターは、訓練中に使用された姿勢及び/又は位置に比較して、ロボットの現在の姿勢及び/又は位置に基づいて更新されてもよい。
議論したように、パラメーターを更新するには、ロボットは風景の初期の画像を撮影し、新しい画像からキーフレームへピクセル及び/ディスクリプタをマップする。マッピングにより、初期画像とキーフレームとの間における相対的な変換が定義される。相対的な変換によりキーフレームを新たな画像にマッピングすることができる。相対的な変換はロボットのx軸上の位置、y軸上の位置、z軸上の位置、ロール、ピッチ、及びヨーの変化により定義されてもよい。相対的な変換は、パラメーター化された動作のパラメーターを、教示されたパラメーターから観察された状況へアップデートするために使用されてもよい。
相対的な変換はパラメーター化された動作に適用されてもよい。パラメーター化された動作に相対的な変換を適用することにより、ロボットは、初期位置及び/又は姿勢が変わっても、同じタスクを以前教示されたように実行し得る。ロボットシステムは、ピクセル及び/又は密集したニューラルネットワークのディスクリプタを、現在の風景からのものからキーフレームからのものへ、パラメーター化された動作から間隔を空けて(例えば連続して)調整が行われるように、継続してマッピングしてもよい。例えば、引き出しを引いて開ける、ドアを開ける、カップ又は瓶を取り上げる等のような、パラメーター化された動作のセットにより定義された教示されたアクションへ、相対的な変換が適用されてもよい。
幾つかの態様では、アクションは風景全体に関連するか、及び/又は物体特有であってもよい。例えば、瓶を取り上げるアクションを行うには、瓶のところまで走行するために風景全体に関連したキーフレームの使用が必要になり得る。瓶に接近すれば、瓶に特有のキーフレームが環境から独立して解析されてもよい。
走行の動作はロボットをある地点から別の地点へ移動させるために使用されてもよい。このことにより、「取り上げる」アクションの訓練中に、ロボットが環境中の任意の場所に位置し得る物体の位置を特定し、その瓶の位置に関わらず「取り上げる」といったようなタスクを実行することができるようになり得る。操作する動作は、所望の物体と接触するためにロボットの部品(例えば胴体及び/又は腕)を動かすことに使用され得る。
図1は本開示の態様によりオペレーター100がロボット106を制御する例を示す。図1に示されるように、オペレーター100は、ロボット106を制御するための視覚システム102及び動作制御器104(例えばジェスチャ追従システム)を備える。この例では、オペレーター100はロボット106を1つ以上のタスクを実行するために制御してもよい。図1の例では、ロボット106はキッチン108にて訓練される。本開示の態様はロボット106をキッチン108で訓練することに限定されず、その他の環境も考慮されている。
視覚システム102はオペレーター100の視覚を捕捉するだけでなく、供給ビデオを提供してもよい。オペレーター100はロボット106から離れた位置にいてもよい。本例では、ロボット106はキッチン108に位置し、オペレーター100はロボット制御センター114のようなキッチン108と異なる場所に位置する。
視覚システム102はロボット106の供給ビデオを提供してもよい。例えば、視覚システム102はロボット106の前方視点に基づくキッチン108の光景を提供してもよい。360°の風景のようなその他の視点が提供されてもよい。視点はロボット106のビデオカメラのような1つ以上の視覚センサを使用して提供される。視覚システム102は図1に示されるようなヘッドセットに限定されない。視覚システム102はモニタ110、画像プロジェクタ、又はロボット106からの供給ビデオを表示可能なその他の装置であってもよい。
ロボット106の1つ以上のアクションが動作制御器104を介して制御されてもよい。例えば、動作制御器104はオペレーター100のジェスチャを捉え、捉えたジェスチャをロボット106が真似してもよい。オペレーター100はロボット106の運動、手足の動作、及びその他のアクションを、動作制御器104を介して制御してもよい。本開示の態様は動作制御器104を介してオペレーター100のジェスチャを捉えることに限定されない。その他の型のジェスチャ捕捉システムも考えられる。オペレーター100は無線接続112を介してロボット106を制御してもよい。加えて、ロボット106は無線接続112を介してオペレーター100へ供給ビデオのようなフィードバックを提供してもよい。
ロボット106は特定の環境(例えばキッチン108)及び/又は類似した環境を走行するよう訓練されていてもよい。加えて、ロボット106は特定の環境中の物体、及び/又は任意の環境中の類似した物体に対してタスクを実行するように訓練されていてもよい。例えば、ロボット106はキッチン108内の引き出しを開け閉めするよう訓練されていてもよい。訓練はキッチン108内の引き出しに対してのみ、及び/又は別のキッチンの引き出しなどの、任意の環境内の類似した引き出しに対して実装されていてもよい。
図2Aは本開示の態様による環境202中のロボット200の例を示す。明確にするために、図2Aは環境202の上面図である。図2Aに示されるように、環境202はダイニングテーブル204、シンク206、スプーン218の入った引き出し208、及びカウンター210を含む。
図2Aの例では、開いた引き出し208はロボット200の視界224内(例えば注視)にある。開いた引き出し208はロボット200のセンサにより撮影された現在の画像データ中に表示され得る。ある構成では、ロボット200は現在の画像データをキーフレームデータと比較してアクションが実行されるべきどうかを判断する。
図2Bはロボット200により訓練中に撮影された現在の画像252の例を示す。図2Bに示されるように、ロボット200の視界224、現在の画像252はシンク206とカウンター210を含む。ある構成では、後に続くアクションを判断するために、そして/又は環境中のロボットの位置を判断するために、ロボット200は現在の画像252のピクセルディスクリプタをキーフレームのピクセルディスクリプタと比較する。
図2Cはロボット200により訓練中に撮影されたキーフレーム260の例を示す。図2Cに示されるように、キーフレーム260はシンク206、カウンター210、引き出し208、及びスプーン218を含む。キーフレーム260はロボット200が現在の画像252を撮影した環境と異なる、又は同じ環境(例えば位置)にて撮影されてもよい。キーフレーム260の角度及び/又は奥行は、現在の画像252の角度及び/又は奥行と異なってもよく、又は同じであってもよい。簡略化のために、図2B、2C、及び2Dにて、キーフレーム260キーフレーム及び現在の画像252の角度及び奥行は同じである。
ある構成では、ユーザーがキーフレーム260中のアンカー領域と考えられる領域に注釈を付する。例えば、図2Cでは、スプーン218及び引き出し208は、動き得る、動的物体である。対照的に、蛇口の上部又はシンクの縁は静的物体である。従って、現在の画像がキーフレームに一致するかどうかを判断するために静的物体のピクセルが使用されるように、ユーザーは静的物体に注釈を付してもよい。静的物体(例えばアンカー)のピクセルに注釈を付すことで姿勢デルタの正確性が向上し得る。
図2Dは本開示の態様により現在の画像252をキーフレーム260と比較する例を示す。ある構成では、ロボット200は現在の画像252のピクセルディスクリプタ(例えばピクセルディスクリプタの値)をキーフレーム260のピクセルディスクリプタと比較する。現在の画像252とキーフレーム260との間の線270は2つの画像間で一致したピクセルを示す。
2本以上の線270が交差しなければ画像は一致し得る。一方、2本以上の線270が交差すれば、ミスマッチが識別され得る。現在の画像252、キーフレーム260、及び線270は制御センターのディスプレイに出力されてもよい。図2Dにて比較されたピクセルの数は説明を目的として使用される。本開示の態様は図2Dで比較されたピクセル数の比較のみに限定されない。
議論したように、訓練後、ロボットは1つ以上の学習されたタスクを実行するために初期化されてもよい。例えば、ロボットは環境中を走行し、そして/又は環境中の物体を操作するようなタスクが課されてもよい。ロボットは命令されたタスクを実行する際に生の画像データを収集する。生の画像データはキーフレームと比較される。
ある構成では、現在の画像データとキーフレームとの間で一致したピクセルの確信度が視覚化される。ディスプレイはまたピクセルディスクリプタと様々な閾値の比較を視覚化してもよい。例えば、画像中の奥行が閾値よりも大きければ、画像は拒否されてもよい。
1つ以上のキーフレームが現在の画像データと一致する場合は、合致したキーフレームと関連した動作が実行されてもよい。例えば、図2Dでは、現在の画像252がキーフレーム260に一致しているかの判断において、ロボットは引き出しを開ける又は閉じるといったタスクを実行してもよい。別の例としては、ロボットは蛇口を開けるか、又は閉めてもよい。加えて、又は代わりに、前の動作が完了すると、行動の実行がキューに追加されてもよい。別の例として、ロボットはキーフレームに基づいて現在の位置を判断してもよく、現在の位置から別の位置へ経路を走行するために使用してもよい。ロボットが環境中を移動するか、又は環境中の物体の位置が変更されるに従って、新しいキーフレームが参照されてもよい。
ある構成では、ピクセルディスクリプタを比較する前に1つ以上のピクセルがフィルタされる。外れ値をフィルタするために関数が実行されてもよい。例えば、観察されたデータをランダムにサンプルすることでピクセルの外れ値をフィルタするためにrandom sample consensus(RANSAC)関数を使用してもよい。ピクセルをフィルタすることによりノイズが削減され正確性が向上する。
議論したように、現在の画像の奥行及び/又は角度は一致したキーフレームの奥行及び/又は角度から異なり得る。従って、ある構成では、現在の画像データの一致したピクセルとキーフレームのピクセルとの間の相対変換が判断される。すなわち、現在の画像とキーフレームとの比較に基づいて姿勢デルタが判断され得る。デルタはキーフレームから現在の画像へのロボットの姿勢の変化のことである。
姿勢デルタはピクセルディスクリプタの奥行情報に基づいて判断されてもよい。奥行情報はセンサからピクセルに対応する物体への距離である。姿勢デルタは現在の画像とキーフレームとの間の(x,y,z)座標、ロール、ピッチ、及びヨーの変化である。すなわち、姿勢デルタにより、キーフレームから現在の画像へと画像がどのように変化したかがセンサの移動に基づいて説明される。
一致したピクセルの数の増加に関連して姿勢デルタの正確性が増加する。本開示では、一致したピクセルの数は一致した特徴の数よりも大きくなり得る。かくして、本開示の態様は画像を特徴のみに基づいて比較する従来のシステムと比較して姿勢デルタの判断の正確性を向上させる。姿勢デルタを判断するために最小二乗関数を使用してもよい。
すなわち、二乗再投影誤差を最小化することにより姿勢が判断されてもよい。特に、キーフレーム中のピクセルは現在の画像中に見られる厳密に一致したピクセルであるべきである。二乗再投影誤差の最小化は6つの未知のパラメーター(x、y、z、ロール、ピッチ、ヨー)に対して解かれる非線形最小二乗問題として表され得る。外れ値への感度を減少させるためにRANSACループを用いてもよい。
実行される動作のパラメーターの更新に、ピクセルのピクセルディスクリプタの1つ以上の数値の間の姿勢デルタ(例えば相対変換)を使用してもよい。例えば、ロボットがキーフレームにて定義された位置と比較して物体から1フィート(約30.5センチメートル)離れていることを姿勢デルタが示している場合、ロボットの現在の位置(例えば姿勢)を考慮して動作が更新されてもよい。キーフレームにて定義された位置は、タスクを実行するためにロボットを訓練する際に使用する位置である。
図3は本開示の態様による視覚システムからの出力300の例を示す。図3に示されるように、出力300は現在の画像302、キーフレーム308、ヒストグラム306、及び閾値ウインドウ304を含む。出力300はロボットの現在の位置から離れた位置に表示されてもよい。例えば、出力300はロボットの動作を制御する制御センターに表示されてもよい。
現在の画像302はロボットの現在の視覚からの画像である。キーフレーム308は、現在の画像302と比較されるキーフレームのセットからの1つのキーフレームである。ヒストグラム306は現在の画像302からキーフレームのセット中の各キーフレームへの一致に関する確信度スコアを示す。
訓練中には、走行タスクにおいて、ロボットは経路に沿ったスタートからゴールまでの特定の地点にて、キーフレームを撮影する。経路上で撮影されたキーフレームは走行タスクにおいてキーフレームのセットとして使用される。テスト中、ロボットは現在の位置を識別するために現在の画像をキーフレームのセットと比較する。
一致したピクセル(例えばピクセルディスクリプタ)の数に基づいて、ロボットは現在の画像から特定のキーフレームへの一致の確信度を判断する。一致の確信度が閾値よりも高ければ、ロボットは一致したキーフレームに関連したタスクを実行する。タスクは位置判定(例えばロボットの現在の位置を判断すること)を含んでもよい。図3の例にて、ロボットは経路上の、一致の確信度310が最も高いキーフレームの位置に対応する位置にいると判断する。
ヒストグラム306はタスクに応じて異なってもよい。図3のヒストグラム306は走行タスクのためのものである。ヒストグラム306はロボットが操作(例えば物体の操作)タスクを実行している場合には異なるものとなり得る。操作タスクのためのキーフレームのセットは、走行タスクのためのキーフレームのセットと比較して少ないキーフレームを有していてもよい。
例えばキャビネットを開ける場合、ロボットはキャビネットが閉じていたり少し開いていたりする場合に開けるように訓練されていてもよい。この例では、ヒストグラムは、棒グラフ中に2本のキーフレーム一致棒グラフを有し得る。1本の棒グラフは現在の画像が閉じたキャビネットのキーフレームに一致する確信度を示し、もう1本の棒グラフは現在の画像が部分的に開いたキャビネットのキーフレームに一致する確信度を示し得る。
姿勢確信度ウインドウ304は姿勢一致器から得た姿勢一致の確信度を示す。ある構成では、姿勢デルタを判断する前に、ロボットは数々の基準が1つ以上の閾値を満足するかどうかを判断する。基準は奥行、姿勢、クリーク、エラー、及びその他の要素に基づいていてもよい。
ある構成では、ロボットは奥行値を有するピクセルの数を判断する。ガラス又は艶のある面のような面では、ロボットは奥行を判断できないことがある。したがって、これらの面に対応するピクセルは奥行値を有さない場合がある。奥行値を有するピクセルの数はピクセルをフィルタする前に判断されてもよい。奥行値を有するピクセルの数が閾値よりも大きければ、奥行の基準は満足される。姿勢確信度ウインドウ304は、奥行値を有するピクセルの数の棒グラフ320と閾値を示す棒グラフ322とを比較する棒グラフを含んでいてもよい。棒グラフは色分けされていてもよい。
加えて、又は代わりに、姿勢確信度ウインドウ304の棒グラフは現在の画像とキーフレームの間で揃う特徴の数の棒グラフとアライメント閾値の棒グラフとの比較を含んでもよい。キーフレームと現在の画像の一致の正確性を判断するために、ロボットは姿勢変換を適用し、現在の画像における物体の特徴がキーフレーム中の物体の特徴と幾つ揃うか、及びその反対を判断してもよい。もしも特徴が静的でない物体と紐づけられていた場合、特徴は揃わなくてもよい。例えば、キーフレームは現在の画像には既に存在しないカップを含み得る。従って、カップの特徴は画像間で揃わなくなり得る。揃った特徴の数はクリークインライアと呼ばれてもよい。クリークインライアが閾値よりも大きい場合に姿勢デルタが生成され得る。
加えて、又は代わりに、姿勢確信度ウインドウ304の棒グラフは姿勢を判断するために使用される特徴の数の棒グラフと姿勢閾値の棒グラフの比較を含んでもよい。すなわち、姿勢を判断するために一定数の特徴が使用されるべきである。姿勢を判断するために使用される特徴の数が姿勢閾値よりも小さい場合は、姿勢デルタは計算されなくてもよい。姿勢を判断するために使用される特徴の数は姿勢インライアと呼ばれてもよい。
姿勢確信度ウインドウ304の棒グラフは姿勢デルタの二乗平均平方根(RMS)エラーの棒グラフと閾値の比較をも含み得る。RMSエラーがRMSエラー閾値よりも小さければ、姿勢デルタは申し分がないものであり得る。RMSエラーがRMSエラー閾値よりも大きければ、ユーザー又はロボットはタスクを実行するために姿勢デルタを使用しなくてもよい。
姿勢確信度ウインドウ304は棒グラフに限定されず、他のグラフ又は画像が使用されてもよい。姿勢確信度ウインドウ304の基準は議論された基準に限定されず、他の基準が用いられてもよい。
議論したように、本開示の態様は、仮想現実内の人間からタスクをデモンストレーションにより教示された後に、実世界環境にて自律的に人間のレベルのタスクを実行することが可能な移動操作ハードウエア及びソフトウエアシステムに関する。ある構成では、移動操作ロボットが使用される。ロボットは全身タスク空間ハイブリッド位置/力制御を含んでもよい。加えて、議論したように、ロバストに学習された風景の密な視覚的エンベディング表現にリンクされた、パラメーター化されたプリミティブがロボットに教示される。最後に、教示された動作のタスクグラフが生成されてもよい。
固定された物体のセットを認識したり予め定義されたタスクを実行したりするようにロボットにプログラミングや訓練を行うよりも、本開示の態様によりロボットは新しい物体やタスクを人間によるデモンストレーションから学習することができる。学習されたタスクは自然に変化する条件下でロボットにより自律的に実行されてもよい。ロボットは以前の物体モデル又はマップを使用せず、1つの例から、与えられた動作のセットを任意の風景及び物体へ関連付けるよう教示されることができる。視覚システムは既存の教師付き及び教師なしデータセットを使用してオフラインで訓練されてもよく、システムの残りは追加の訓練データなしに機能してもよい。
タスク空間の動作を直接教示する従来のシステムとは対照的に、本開示の態様はパラメーター化された動作のセットを教示する。これらの動作は、教示されたパラメーターを最小化し、実行中のロバスト性を提供するために、衝突のない動作計画とエンドエフェクタのハイブリッド(位置及び力)デカルト制御を組み合わせる。
ある構成では、タスクに特化した、訓練された密な視覚に関するエンベディングが計算される。このピクセルに関するエンベディングはパラメーター化された動作を風景にリンクさせる。リンクにより、システムは、新しい状況への一般化と引き換えにロバスト性の高い様々な環境を取り扱い得る。
タスクの動作は、視覚的な入力条件と、成功に基づく終了条件を用いて独立に教示されてもよい。動作は動的タスクグラフ内にて互いに連結されてもよい。動作が連結されているため、ロボットはタスクシーケンスを実行するために行動を再利用してもよい。
ロボットは多自由度(DOF)であってもよい。例えば、ロボットは車台、胴体、左腕、右腕、及び頭の5つのサブシステムに分けられた31自由度(DOF)であってもよい。ある構成では、車台は、「疑似ホロノミック」な可動性を実現する4つの駆操舵可能な動輪(例えば計8自由度)を含む。駆動/操舵アクチュエータパッケージは様々なモーター及びギアヘッドを含んでもよい。胴体は5自由度(ヨー、ピッチ、ピッチ、ピッチ、ヨー)であってもよい。それぞれの腕は7自由度であってもよい。頭はパン/チルトの2自由度であってもよい。それぞれの腕は劣駆動の指を有する1自由度のグリッパを含んでもよい。本開示の態様は上に議論したロボットに限定されない。その他の構成が考えられる。一例では、ロボットはスポンジ又はモップのようなカスタムツールを含んでもよい。
ある構成では、ロボットには環境との相互作用力を計測するための力/トルクセンサが一体化されている。例えば、力/トルクセンサはそれぞれの腕の手首に配されていてもよい。頭には、広い視界を提供し、また人間やロボットがタスクを実行するためのVRコンテキストを提供するための知覚センサが統合されていてもよい。
本開示の態様はロボット制御のための数段階の抽象化を提供する。ある構成では、最も低い制御レベルにより、ロボットの全ての自由度のリアルタイムな協調制御が提供される。リアルタイム制御は関節制御及び部品の制御を含み得る。関節制御により、低レベルの装置通信が実装され、装置のコマンドや状態を一般的な形で公開する。加えて、関節制御はアクチュエータ、力センサ、及び慣性計測装置をサポートする。関節制御は異なるロボットをサポートするためにランタイムにて構成されていてもよい。
部品制御により、ロボットを部品(例えば右腕、頭等)に分け、各部品に対してパラメーター化された制御器のセットを提供することで、ロボットのより高レベルの協働作用を扱い得る。部品制御により、関節位置及び速度、関節アドミッタンス、カメラ目視、車台位置及び速度、並びにハイブリッドタスク空間における姿勢、速度、及びアドミッタンス制御の制御器が提供されてもよい。
エンドエフェクタのタスク空間制御により、ロボット制御を別次元で抽象化することが可能になる。このレベルの抽象化により、所望の動作を達成するためのロボット姿勢の問題が解決される。ハイブリッドデカルト制御のための全身の逆運動学(IK)が二次のプログラムとして形成され、解かれる。部品には関節位置、速度、加速度、及び重力トルクに関して線形拘束が存在し得る。
全身のIKはデカルト座標における姿勢のゴールに到達するための動作計画に使用されてもよい。ある構成では、環境の占有されたボクセルは球体やカプセル型が当てはめられる。ロボットと世界の衝突を避けるために、ボクセルの衝突拘束がIKの二次プログラムに加えられる。IKの二次プログラムにて、ノード間の操舵関数としてデカルト空間におけるサンプリングを行い、rapidly-exploring random tree(RRT)を用いて動作計画が行われてもよい。
デカルト空間における計画により、自然で直接的な動作になる。操舵機能としてIKの二次プログラムを使用することにより、計画の信頼性を向上させることができ、計画と実行に同じ制御器を、両者の食い違いを削減するために用いてもよい。同様に、関節位置のゴールに向けた動作計画と、操舵機能として働く部品制御による関節位置制御器とを組み合わせてRRTを使用する。
次の抽象化レベルによりパラメーター化された動作が定義される。ある構成では、パラメーター化された動作は、パラメーター化可能で、組み合わせることでタスクを成し遂げることが可能な、プリミティブなアクションである。動作は、握る、持ち上げる、置く、引く、ひっこめる、拭く、直接制御、のような操作アクション、関節を動かす、速度命令により運転する、位置命令により運転する、能動的な障害物回避を行いながらの経路追従、のような走行アクション、及び目視して停止するといった予備的アクションを限定せず含んでもよい。
各動作は、ロボットの部品の1つ以上の関節又はデカルト座標における動作のような、単一又は複数の異なる型のアクションを有することができる。各アクションは位置、速度、又はアドミッタンス制御のような異なる制御手法を使用することができ、外部の障害物を回避するために動作計画を使用することを選択することができる。動作計画を使用するかに関わらないロボットの動作は、自己衝突を回避し、動作制御拘束を満たす。
各動作は異なるアクションによりパラメーター化され、その代わりにアクションは独自のパラメーターを有してもよい。例えば、把持動作はグリッパ角度、6Dアプローチ、把持、及びグリッパの(随意的な)持ち上げ時の姿勢の4つのパラメーターから成り立っていてもよい。本例では、これらのパラメーターにより、次の予め定義されたアクションのシーケンスが定義される。(1)所望のグリッパ角度までグリッパを開く(2)6Dアプローチ姿勢までの衝突のない経路を計画し実行する(3)6D把持姿勢までグリッパを動かし接触したら停止する(4)グリッパを閉じる、及び(5)6D持ち上げポーズまでグリッパを動かす。
最終レベルの制御の抽象化がタスクである。ある構成では、タスクは、ロボットが操作を行い人間の環境を走行することを可能にする動作のシーケンスとして定義される。タスクグラフ(図5参照)は、異なるタスクをノードとし、異なる移動状況をエッジとし、異常検出及び異常からの回復を含む、有効であり、周期的又は非周期的なグラフである。エッジ状況は異なる物体や環境を取り扱うための各動作の実行状況、力/トルクセンサを使用した手中の物体の検査、音声コマンド、及びキーフレームとの一致を含む。
本開示の態様により、ロボットが周囲の環境を理解するための知覚パイプラインが設計される。知覚パイプラインによりロボットはまた、教示されたタスクを踏まえてどのアクションを取るべきかを認識する能力が得られる。ある構成では、1つの視界画像(例えばワイドな視界の左画像)に高解像度カラーステレオペアの複数の奥行画像を投影することにより、融合RGB-D画像が作成される。システムは様々なピクセルレベルの分類及び特徴ベクトル(例えばエンベディング)を提供するためにディープニューラルネットワークのセットを実行する。教示されたシーケンスから呼び出された視覚的特徴に基づき、ピクセルレベルの分類及び特徴ベクトルは一時的な3Dボクセル表現へと累積される。ピクセルレベルの分類及び特徴ベクトルは実行するべきアクションを呼び出すために使用されてもよい。
ある構成では、物体のカテゴリは定義されない。加えて、若しくは物体のモデル又は環境は想定されない。物体を明示的に検出してセグメント分けし、また明示的に6自由度の姿勢を推定するよりも、多用なタスクのために密なピクセルレベルのエンベディングを生成してもよい。教示されたシーケンスからの参照エンベディングが動作分類又は姿勢推定を行うために使用されてもよい。
訓練されたモデルは完全な畳み込み型であってもよい。ある構成では、入力画像のピクセルはエンベディング空間の中のある点へそれぞれマップされる。エンベディング空間はモデルの出力により定義される損失関数と訓練手順によって暗黙のうちに定義されるメトリックを与えられる。訓練されたモデルは様々なタスクに使用されてもよい。
ある構成では、1つの注釈が付された例が与えられれば、訓練されたモデルはセマンティイッククラス中の全てのオブジェクトを検出する。セマンティッククラス中の物体は注釈中のエンベディングとその他の領域中のエンベディングを比較することにより検出されてもよい。モデルは識別損失関数(discriminative loss function)により訓練されてもよい。
モデルはオブジェクトインスタンスを判断するために訓練されてもよい。このモデルは独立したオブジェクトを識別し、そして/又は数える。モデルは各ピクセルのベクトル(2D エンベディング)を予測するために訓練されてもよい。ベクトルはそのピクセルを含むオブジェクトの重心を指し示してもよい。ランタイムにおいて、同じ重心を指すピクセルはその風景のセグメントとしてグループ分けされてもよい。ランタイムにおける実行は3Dで行われてもよい。
モデルは3Dの対応関係について訓練されてもよい。このモデルは風景内の任意の3D地点のビューが同じエンベディングに対してマッピングされるように、ビューや照明に対して不変なエンベディングをピクセルごとに提供する。このモデルは損失関数を使用して訓練されてもよい。
各RGB-Dフレームに対するピクセルに関するエンベディング(及び奥行データ)は動的3Dボクセルマップへと融合される。各ボクセルは第1及び第2の順序の位置、色、エンベディングの統計を累積する。動的オブジェクトの有効期限はボクセルの奥行画像への逆投影に基づく。ボクセルマップは、セマンティック及びインスタンスレーベル、並びに幾何学的近似性に基づいて、標準的なグラフセグメンテーションを使用して分割される。ボクセルマップは標高及び走行可能性の分類統計を有する2.5Dマップへと次元が削減される。
2.5Dマップは衝突のない車台の動作に使用される一方、ボクセルマップは衝突のない全身の動作計画に使用される。3Dにおける衝突の検査のために、貪欲法を使用してマップ中のボクセルがカプセルへとグループ化されてもよい。セグメント化されたオブジェクトは、物体が把持された際に手に付属させるための動作に使用されてもよい。
ロボットは過去に教示されたタスクにて記録された特徴に高度に関連する風景中の(又は特定の操作オブジェクトの)特徴を認識するように、ワンショット学習アプローチにより訓練されてもよい。タスクがユーザーによって実演されると、特徴がタスク全体にわたってキーフレームの形態で保存される。キーフレームはピクセルごとの奥行(有効であれば)を伴う多次元エンベディングを含むRGB画像であってもよい。
エンベディングは、現在の画像が教示時に存在した参照画像と充分類似しているという想定の下でランタイムにおけるピクセルごとの対応関係を確立し得る特徴ディスクリプタとして機能する。奥行が(ほとんど)全てのピクセルに存在するため、現在の画像と参照画像の姿勢のデルタを解くために対応関係を使用することができる。ユークリッド制約を使用してインライアが検出されてもよく、6自由度の姿勢を解くためにRANSACと共にレーベンバーグ・マルカート最小二乗関数を適用する。
姿勢のデルタは、教示された動作のシーケンスを現在の風景へ適合させるために適用可能な補正の役割を果たす。エンベディングが各ピクセルに対して定義されてもよいことから、キーフレームは画像中の全てのピクセルを含む程広くても良く、又はユーザーが定義したマスク内のピクセルのみを使用する程狭くてもよい。議論したように、ユーザーは、画像中の領域をタスクと関連するものとして、又は物体上にあるものとして選択的に注釈を付することにより、マスクを定義してもよい。
視覚センシングに加えて、ある構成では、ロボットは音声入力を収集して処理する。音声は、ロボットを教示するための入力として、別のエンベディングのセットを提供する。例として、ロボットは質問を行い、人間からの応答の音声言語を理解することにより音声入力を得る。音声による応答はカスタムのキーワード検出モジュールを使用して理解されてもよい。
ロボットは、完全畳み込みキーワードスポッティングモデルを利用して、カスタムのウェイクワード、物体のセット(例えば「マグ」又は「瓶」)、及び場所のセット(例えば「キャビネット」又は「冷蔵庫」)を理解してもよい。ある構成では、モデルは、例えば32msのようなある間隔でウェイクワードを聞いている。ウェイクワードが検出されたら、ロボットは物体又は場所のキーワードが検出されるかを注意する。訓練の間は、認識をよりロバストにするために人工的にノイズが加えられる。
議論したように、ロボットにタスクを教示するためには、オペレーターはVRモードのセットを使用する。各動作は、その動作に特有のパラメーターを設定し命令するために、対応するVRモードを有してもよい。各動作モードは、各パラメーターの設定を支援するために、パラメーターの型に応じて、カスタマイズされた視覚化を含んでもよい。例えば、ドアを引く動きのパラメーターを設定する場合、蝶番の軸がラベルされ、線として視覚化され、グリッパを引くための姿勢候補は蝶番を中心とする円弧上に制限される。教示プロセスを支援するために、動作の復元、関連物体による環境への注釈付け、仮想ロボットの再位置決め、カメラ画像、及びVR世界のメニューのような幾つかのユーティリティVRモードが使用される。
実行中、ロボットの姿勢及び環境中の部品は訓練中に使用されたものと異なってもよい。教示されたものと類似した環境中の特徴を発見するために特徴一致が使用されてもよい。姿勢デルタは一致した特徴の対応関係から確立されてもよい。ユーザーにより教示された動作が計算された姿勢デルタにより変化してもよい。ある構成では、複数のキーフレームがマッチング問題へ渡される。対応関係の数に基づいて、最も良く一致したキーフレームが選択される。
図4は本開示の態様によるロボットシステム400のハードウエア実装の例を示す図である。ロボットシステム400は車両、ロボット装置428、又はその他の装置のような、自律又は半自律システムの構成要素であってもよい。図4の例では、ロボットシステム400はロボット装置428の構成要素である。ロボットシステム400は、ロボット装置428のオペレーターの意図を推察することによってロボット装置428のアクションを制御するために使用されてもよい。
ロボットシステム400はバス430として概ね表されるバスアーキテクチャにより実装されてもよい。バス430はロボットシステム400の特定の用途及び全体的な設計制約に応じて任意の数の相互接続バス及びブリッジを含んでもよい。バス430は、プロセッサ420として表される1つ以上のプロセッサ及び/又はハードウエアモジュール、通信モジュール422、位置モジュール418、センサモジュール402、移動モジュール426、メモリ424、キーフレームモジュール408、及びコンピュータ可読媒体414のような様々な回路を接続する。バス430はタイミングソース、周辺機器、電圧制御器、電源管理回路のような、当業者に既知であり、故にこれ以上の説明は行わないその他の様々な回路も接続してもよい。
ロボットシステム400は、プロセッサ420に接続された送受信機416、センサモジュール402、キーフレームモジュール408、通信モジュール422、位置モジュール418、移動モジュール426、メモリ424、及びコンピュータ可読媒体414を含む。送受信機416はアンテナ434に接続されている。送受信機416は様々な装置と伝送媒体を介して通信する。例えば、送受信機416は通信を介してロボット装置428のオペレーターからの命令を受信してもよい。本明細書中に議論するように、オペレーターはロボット装置428から離れた位置にいてもよい。別の例として、送受信機416はキーフレームマッチングに関する情報をキーフレームモジュール408からオペレーターへ送信してもよい。
ロボットシステム400はコンピュータ可読媒体414に接続されたプロセッサ420を含む。プロセッサ420は、コンピュータ可読媒体414に記憶され、本開示による機能を提供するソフトウエアの実行を含む処理を行う。ソフトウエアは、プロセッサ420により実行された時、ロボットシステム400により、ロボット装置428又はモジュール402、408、414、416、418、420、422、424、426のような特定の装置に対して説明された様々な機能を実行させる。コンピュータ可読媒体414は、ソフトウエアを実行した時にプロセッサ420により操作されるデータを記憶するためにも使用されてもよい。
センサモジュール402は、第1のセンサ406及び第2のセンサ404のような異なるセンサを介して測定値を得るために使用されてもよい。第1のセンサ406は、2D画像を撮影するためのステレオカメラ又はRGBカメラのような視覚センサであってもよい。第2のセンサ404はLiDARセンサ、RADARセンサ、又はRGB-Dセンサのような測距センサであってもよい。当然、本開示の態様は上記のセンサに限られず、例えば、温度、音波、及び/又はレーザー等のその他の型のセンサもまたセンサ404、406のどちらかとして考えられる。第1のセンサ406及び第2のセンサ404による測定値は、本明細書中に説明した機能を実装するために、コンピュータ可読媒体414と併せて、プロセッサ420、センサモジュール402、通信モジュール422、位置モジュール418、移動モジュール426、メモリ424、のうち1つ以上により処理されてもよい。ある構成では、第1のセンサ406及び第2のセンサ404により捕捉されたデータは送受信機416を介して供給ビデオとしてオペレーターへ送信されてもよい。第1のセンサ406及び第2のセンサ404はロボット装置428へ接続されていてもよく、又はロボット装置428と通信状態にあってもよい。
位置モジュール418はロボット装置428の位置を判断するために使用されてもよい。例えば、位置モジュール418は、ロボット装置428の位置を判断するために、全地球測位システム(GPS)を使用してもよい。通信モジュール422は送受信機416を介した通信を促進するために使用されてもよい。通信モジュール422は、WiFi、long term evolution(LTE)、3G等のような異なる無線プロトコルを介した通信能力を提供してもよい。通信モジュール422はまた、ロボットシステム400のモジュールではない、ロボット装置428のその他の構成要素と通信するために使用されてもよい。
移動モジュール426は、ロボット装置428の、及び/又はロボット装置428の構成要素(例えば手足、手、等)の移動を促進するために使用されてもよい。例えば、移動モジュール426は手足438及び/又は車輪432の動きを制御してもよい。別の例として、移動モジュール426はエンジン又はバッテリーのようなロボット装置428の電力源と通信中であってもよい。¥
ロボットシステム400はまた、ロボット装置428及びキーフレームモジュール408の操作に関連するデータを記憶するためのメモリ424を含む。モジュールはプロセッサ420内で実行されるソフトウエアモジュール、コンピュータ可読媒体414及び/又はメモリ424に常駐/記憶されるもの、プロセッサ420に接続された1つ以上のハードウエアモジュール、又はそれらの組み合わせであってもよい。
キーフレームモジュール408はセンサモジュール402、送受信機416、プロセッサ420、通信モジュール422、位置モジュール418、移動モジュール426、メモリ424、及びコンピュータ可読媒体414と通信可能であってもよい。ある構成では、キーフレームモジュール408はロボット装置428の現在の視覚に対応した入力(例えば画像データ)を1つ以上のセンサ404、406から受信する。キーフレームモジュール408は入力中の各ピクセル、又はピクセルのセットにピクセルディスクリプタを割り当ててもよい。
キーフレームモジュール408は入力中の第2のピクセルのセットに一致する第1のピクセルのセットを有するキーフレーム画像を識別する。キーフレームモジュール408は入力のピクセルディスクリプタをキーフレーム画像のピクセルディスクリプタに一致させてもよい。キーフレーム画像はメモリ424に記憶されるか、ネットワークストレージ(図示せず)に記憶されるか、又は別の場所に記憶されてもよい。キーフレーム画像はロボット装置428がアクションを実行するために訓練されている間に撮影され記憶されてもよい。キーフレーム画像のピクセルディスクリプタは訓練中に割り当てられてもよい。
キーフレームモジュール408はまたキーフレーム画像に対応するアクションを実行するようにロボット装置428を制御する。アクションは入力とキーフレーム画像との相対変換(例えば姿勢デルタ)に基づいて適応されてもよい。キーフレームモジュールは入力及びキーフレーム画像の距離及び/又は姿勢の変化に基づいて相対変換を判断してもよい。ロボット装置428のアクションは移動モジュール426との通信を介して制御されてもよい。
図5は本開示の態様による教示された動作のグラフシーケンス500の例を示す。図5に示すように、グラフシーケンス500は開始ノード502と終了ノード504を含む。グラフシーケンス500はセンシングした視覚入力、音声入力、又はその他の条件に基づいて枝分かれ又はループしてもよい。
例えば、図5に示すように、開始ノード502の後、ロボットは「listen_for_object」の動作を実行してもよい。この例では、ロボットは、カップ又は瓶に対応する視覚又は音声入力をセンシングしたかどうかを判断する。この例では、センシングした入力がカップに対応するか又は瓶に対応するかどうかに基づいて異なる動作シーケンスが実行される。本開示の態様は図5に示した動作に限定されない。
図6は本開示の態様によるロボットシステムのためのソフトウエアモジュールの例を示す。図6のソフトウエアモジュールは、プロセッサ420、通信モジュール422、位置モジュール418、センサモジュール402、移動モジュール426、メモリ424、キーフレームモジュール408、及びコンピュータ可読媒体414のような図4のハードウエアシステムの1つ以上の構成要素を使用してもよい。本開示の態様は図6に示したモジュールに限定されない。
図6に示すように、ロボットは音声データ604及び/又は画像データ602を受信してもよい。画像データ602はRGB-D画像であってもよい。音声ネットワーク606はあるインターバルでウェイクワードを聞いていてもよい。音声ネットワーク606はウェイウクァードを検出し生のオーディオデータ604からキーワードを抽出するために生のオーディオデータ604を受信する。
密なエンベディングネットワーク608のようなニューラルネットワークは、画像データ602を受信する。画像データ602はあるインターバルにて受信されてもよい。密なエンベディングネットワーク608は画像データ602を処理し、画像データ602のエンベディング610を出力する。エンベディング610及び画像データ602はボクセルマップ626を生成するために組み合わされてもよい。エンベディング610もまたキーフレームマッチャー612に入力されてもよい。
キーフレームマッチャー612はエンベディング610を複数のキーフレームと比較する。エンベディング610がキーフレームのエンベディングと対応する場合に、一致するキーフレームが識別される。エンベディング610はピクセルディスクリプタ、奥行情報、及びその他の情報を含んでもよい。
タスクモジュール614は1つ以上のタスクグラフ616を受信してもよい。タスクモジュール614はキーフレームマッチャー612からの要求に対する応答を提供する。キーフレームマッチャー612は、一致したキーフレームへタスクを一致させる。タスクはタスクグラフ616から判断されてもよい。
タスクモジュール614はまた、動作モジュール618へ動作要求を送信してもよい。動作モジュール618はタスクモジュール614へ動作ステータスを提供する。加えて、動作モジュール618は一致したキーフレームに関する情報、及びキーフレームマッチャー612からの対応するタスクを要求してもよい。キーフレームマッチャー612は一致したキーフレームに関する情報、及び対応するタスクを動作モジュール618に提供する。動作モジュール618はボクセルマップ626からボクセルを受信してもよい。
ある構成では、動作モジュール618は、動作計画要求に応答して動作計画器620からの動作計画を受信する。動作モジュール618はまた、部品制御モジュール622より部品状況を受信する。動作モジュール618は、部品状況を受信したことに応答して部品制御モジュール622へ部品命令を送信する。最後に、部品制御モジュール622は関節制御モジュール624から関節状況を受信する。部品制御モジュール622は、関節状況を受信したことに応答して関節制御モジュール624へ関節命令を送信する。
図7は本開示の態様によるロボット装置を制御する方法700を示す。図7に示すように、随意の構成にて、ブロック702にて、ロボット装置はアクションを実行するように訓練されている時に1つ以上のキーフレーム画像を撮影する。タスクはドアを開ける、又は環境中を走行するといった走行のような、相互作用を含んでもよい。
訓練後、ブロック704にて、ロボット装置は現在の視覚に対応した画像を撮影する。画像はRGB-Dセンサのような1つ以上のセンサにより撮影されてもよい。キーフレーム画像の第1のピクセルのセット及び画像の第2のピクセルのセットの各ピクセルにピクセルディスクリプタが割り当てられてもよい。ピクセルディスクリプタは奥行情報に加えてピクセルレベル情報を提供する。第1のピクセルのセットに対応する領域はユーザーによって選択されてもよい。
ブロック706にて、ロボット装置はまた画像の第2のピクセルのセットに一致する第1のピクセルのセットを有するキーフレーム画像を識別する。ロボット装置は画像を複数のキーフレームと比較してもよい。ロボット装置は、それぞれのピクセルディスクリプタが一致するとき、第1のピクセルのセットが第2のピクセルのセットに一致するかを判断してもよい。
随意の構成にて、ブロック708にて、ロボット装置は、キーフレーム画像と画像の間で、距離、姿勢、又はそれらの組み合わせのうち少なくとも1つの相違点を判断する。相違点は姿勢デルタと称されてもよい。ブロック710にて、ロボット装置はキーフレーム画像に関連したタスクを実行する。随意の構成にて、ブロック712にて、タスクはキーフレーム画像と画像との判断された相違点に基づいて調整される。
上に説明した方法の様々な操作は、対応する機能を実行可能な任意の適切な手段により実行されてもよい。手段は回路、特定用途向け集積回路(ASIC)、又はプロセッサを限定せず含む、様々なハードウエア及び/又はソフトウエアコンポーネント及び/又はモジュールを含んでもよい。図に示す操作があるときは、これらの操作は、概ね類似した番号を割り振られた対応する機能的構成要素を有してもよい。
本明細書中に使用されるように、「判断」は多岐にわたるアクションを含む。例えば、「判断」は算出、計算、処理、導出、調査、検索(例えば表、データベース又はその他の構造の中を検索)、究明等を含み得る。加えて、「判断」は受信(例えば情報を受信すること)、アクセス(例えばメモリ中のデータにアクセスすること)等を含み得る。更に、「判断」は、解決、選出、選択、確立等を含み得る。
本明細書中に使用するように、「のうち少なくとも1つ」のフレーズは、項目のリストから、単一の項目を含む、項目の任意の組み合わせを指す。例えば、「a、b、又はcのうち少なくとも1つ」はa、b、c、a-b、a-c、b-c、a-b-cを含むことが意図される。
本開示に関連して説明される様々な例示的な論理ブロック、モジュール、および回路は、本開示に従って構成されたプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、Field Programmable Gate Array信号(FPGA)又は他のプログラマブル論理デバイス(PLD)、個別ゲート又はトランジスタ論理、個別ハードウェアコンポーネント、又は本明細書中に説明した機能を実行するよう設計された上記の任意の組み合わせにより実装又は実行されてもよい。プロセッサは、本明細書中の説明のように構成されるマイクロプロセッサ、コントローラ、マイクロコントローラ、又は状態マシンであってもよい。プロセッサはまた、例えばDSPとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、DSPコアと組み合わせた1つ以上のマイクロプロセッサ、又は本明細書で説明するその他の特別な構成といった、計算装置の組み合わせとして実装されてもよい。
本開示と関連して説明される方法のステップ又はアルゴリズムはハードウエア、プロセッサにより実行されるソフトウエアモジュール、又はこの2つの組み合わせ内にて直接具現化されてもよい。ソフトウエアモジュールは、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、フラッシュメモリ、Erasable Programmable Read Only Memory(EPROM)、Electrically Erasable Programmable Read-Only Memory(EEPROM)、レジスタ、ハードディスク、取り外し可能ディスク、CD-ROM又は他の光ディスク記憶装置、磁気ディスク記憶装置又はその他の磁気記憶装置、命令又はデータ構造の形態で所望のプログラムコードを搬送又は記憶することに使用可能でコンピュータによってアクセス可能なその他の任意の媒体を含む、記憶装置、又は機可読械媒体に存在してもよい。ソフトウエアモジュールは、単一の命令、又は多数の命令を備えることもあり、複数の異なるコードセグメント、異なるプログラム間、及び複数の記憶媒体に分散されていてもよい。プロセッサが記憶媒体へ情報を書き込んだり記憶媒体から情報を読み出したりできるようにプロセッサに記憶媒体が接続されていてもよい。代わりに、記憶媒体はプロセッサと一体となっていてもよい。
本明細書にて開示する方法は、開示された方法を実現するための1つ以上のステップ又はアクションを含む。方法のステップ及び/又はアクションは特許請求の範囲から逸脱することなく互いに入れ替えてもよい。言い換えれば、ステップ又はアクションの特定の順序が特定されていない限り、特定のステップ及び/又はアクションの順序及び/又は用途は特許請求の範囲から逸脱することなく変更されてもよい。
説明された機能はハードウエア、ソフトウエア、ファームウエア、又はこれらの任意の組み合わせにより実装されてもよい。ハードウエアで実装する場合、ハードウエア構成の例は装置中に処理システムを備えてもよい。処理システムはバスアーキテクチャを用いて実装してもよい。バスは処理システムの特定の用途及び全体的な設計制約に応じて任意の数の相互接続バス及びブリッジを含んでもよい。バスはプロセッサ、機械可読媒体、及びバスインターフェースを含む様々な回路を接続してもよい。バスインターフェースは、その他の物の中でも、ネットワークアダプタを処理システムにバスを介して接続することに使用されてもよい。ネットワークアダプタは信号処理機能を実装するために使用されてもよい。特定の態様では、ユーザーインターフェース(例えばキーパッド、ディスプレイ、マウス、ジョイスティック等)もまたバスに接続されてもよい。バスはタイミングソース、周辺機器、電圧制御、電源管理回路等のような、当業者に既知であり、故にこれ以上の説明は行わないその他の様々な回路も接続してもよい。
プロセッサはバスの管理、及び機械可読媒体に記憶されたソフトウエアの実行を含む処理を担当してもよい。ソフトウエアは、ソフトウエア、ファームウエア、ミドルウエア、マイクロコード、ハードウエア記述言語、又はその他の呼び方に関わらず、命令、データ、又はそれらの任意の組み合わせを意味すると解釈するものとする。
ハードウエア実装にて、機械可読媒体はプロセッサとは別個の処理システムの一部であってもよい。しかしながら、当業者が容易に理解するように、機械可読媒体、又はその任意の一部は、処理システムの外部にあってもよい。例えば、機械可読媒体は通信線、データによって変調された搬送波、及び/又は装置から切り離されたコンピュータ製品を含んでも良く、これらは全てバスインターフェースを介してプロセッサによりアクセスされてもよい。代わりに、又は加えて、機械可読媒体、又はその一部は、キャッシュ及び/又は特別なレジスタファイルが存在し得る場合のようにプロセッサに統合されていてもよい。議論した様々な構成要素は、ローカルな構成要素のように特別な位置を有するように説明されたが、それらは分散コンピューティングシステムの一部として構成される特定の構成要素のように様々な方法により構成されてもよい。
処理システムはプロセッサ機能を提供する1つ以上のマイクロプロセッサ、及び機械可読媒体の少なくとも一部を提供する及び外部メモリにより構成されてもよく、それらは全て外部のバスアーキテクチャによりサポート回路を通して連結されてもよい。代わりに、処理システムは、本明細書にて説明したニューロンモデル及びニューラルシステムのモデルを実装するために、1つ以上のニューロモーフィックプロセッサを備えていてもよい。別の代替として、処理システムは、プロセッサを有する特定用途向け集積回路(ASIC)、バスインターフェース、ユーザーインターフェース、サポート回路、及び単一のチップに統合された機械可読媒体の少なくとも一部、又は1つ以上のField Programmable Gate Array(FPGA)、プログラマブル論理デバイス(PLD)、コントローラ、状態マシン、ゲート論理、個別ハードウエア構成要素、又はその他の適切な回路、又は本開示内で説明された様々な機能を実行可能な回路の任意の組み合わせにより実装されてもよい。当業者は、特定の用途、及びシステム全体に課される全体的な設計制約により、説明された処理システムの機能をどのように実装することが最適なのかを認識するであろう。
機械可読媒体は数々のソフトウエアモジュールを備えていてもよい。ソフトウエアモジュールは送信モジュール及び受信モジュールを含んでいてもよい。各ソフトウエアモジュールは単一の記憶装置内に存在してもよく、又は複数の記憶装置に渡って分散されていてもよい。例えば、トリガとなるイベントが起こったときにソフトウエアモジュールがハードドライブからRAMにロードされてもよい。ソフトウエアモジュールの実行中、プロセッサは、アクセス速度を上げるために、幾つかの命令をキャッシュへロードしてもよい。プロセッサにより実行するため、1つ以上のキャッシュラインがその後特殊用途レジスタファイルにロードされてもよい。ソフトウエアモジュールの以下の機能を参照すれば、ソフトウエアモジュールによる命令の実行時にプロセッサにより機能が実施されることが理解されよう。更に、本開示の態様によりプロセッサ、コンピュータ、マシン、又はこのような態様を実装するその他のシステムの機能が改善することが理解されるべきである。
ソフトウエアに実装されれば、機能は1つ以上の命令又はコードとしてコンピュータ可読媒体上に記憶又は転送されてもよい。コンピュータ可読媒体には、コンピュータの記憶装置と、コンピュータプログラムをある場所から別の場所へ転送することを促進する任意の記憶装置を含む通信メディアとの両方が含まれる。加えて、任意の接続をコンピュータ可読媒体と呼ぶのが適切である。例えば、ソフトウエアが同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線(DSL)、又は赤外線(IR)、ラジオ、及びマイクロ波などの無線技術を使用してウェブサイト、サーバー、又は他の遠隔ソースから送信される場合は、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、又は赤外線、ラジオ、及びマイクロ波などの無線技術はメディアの定義に含まれる。本明細書に使用されるdisk及びdiscは、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、ブルーレイ(登録商標)ディスクを含み、diskは通常磁気的にデータを再生し、discはレーザーを使用して光学的にデータを再生する。従って、幾つかの態様では、コンピュータ可読媒体は非一時的なコンピュータ可読媒体(例えば有形媒体)を備えていてもよい。加えて、その他の態様では、コンピュータ可読媒体は一時的なコンピュータ可読媒体(例えば信号)を備えていてもよい。上記の組み合わせはコンピュータ可読媒体の範囲に含まれるべきものとする。
従って、特定の態様は本明細書中で提示された操作を実行するコンピュータプログラム製品を備えていてもよい。例えば、そのようなコンピュータプログラム製品は命令を記憶(及び/又は暗号化)したコンピュータ可読媒体を備えていてもよく、命令は本明細書中に説明した操作を実行するために1つ以上のプロセッサにより実行可能である。特定の態様では、コンピュータプログラム製品は包装資材を含んでもよい。
更に、モジュール並びに/又は本明細書中に説明した方法及び技術を実行するその他の適切な手段は、必要に応じてダウンロード並びに/又はユーザー端末及び/又はベースステーションにより取得可能であることが理解されるべきである。例えば、本明細書中で説明された方法を実行するための手段の転送を促進するために、そのような装置をサーバーに接続することができる。代わりに、本明細書中で説明した様々な方法は、記憶手段を装置に接続するか、又は記憶手段を装置に提供することによりユーザー端末及び/又はベースステーションが様々な方法を取得することが可能になる形で、記憶手段を介して提供することができる。更に、本明細書中で説明した方法及び技術を装置に提供するその他の任意の技術を使用することができる。
特許請求の範囲は上記に示された正確な構成及び構成要素に限定されないことが理解されるべきである。上に説明した方法及び装置の配置、操作、並びに詳細に対して、特許請求の範囲から逸脱せずに、様々な修正、変更及び変形がなされ得る。

Claims (20)

  1. ロボット装置の現在の視覚に対応する画像を撮影することと、
    前記画像の第2のピクセルのセットに一致する第1のピクセルのセットを有するキーフレーム画像を識別することと、
    前記ロボット装置により前記キーフレーム画像に対応するタスクを実行することと、
    を含む、ロボット装置を制御する方法。
  2. 前記ロボット装置が前記タスクを実行するように訓練されている間に前記キーフレーム画像を撮影することを更に含む、請求項1に記載の方法。
  3. 前記第1のピクセルのセット及び前記第2のピクセルのセット中の各ピクセルにピクセルディスクリプタを割り当てることを更に含む、請求項1に記載の方法。
  4. 前記ピクセルディスクリプタはピクセルレベル情報及び奥行情報に対応する値のセットを有する、請求項3に記載の方法。
  5. 距離、姿勢、又は前記キーフレーム画像と前記画像の間の組み合わせのうちの1つの相違点を判断することと、
    前記判断した相違点に基づいて前記タスクを調整することと、
    を更に含む、請求項1に記載の方法。
  6. 前記タスクは、物体と相互作用することと、環境中を走行することと、又はそれらの組み合わせと、のうちの少なくとも1つを有する、請求項1に記載の方法。
  7. 前記第1のピクセルのセットに対応する領域はユーザーによって選択される、請求項1に記載の方法。
  8. メモリと、
    少なくとも1つのプロセッサと、を備え、前記少なくとも1つのプロセッサは、
    ロボット装置の現在の視覚に対応する画像を撮影し、
    前記画像の第2のピクセルのセットに一致する第1のピクセルのセットを有するキーフレーム画像を識別し、
    前記キーフレーム画像に対応するタスクを実行する、
    ように構成されている、ロボット装置。
  9. 前記少なくとも1つのプロセッサは更に、前記ロボット装置が前記タスクを実行するように訓練されている間に前記キーフレーム画像を撮影するように構成されている、請求項8に記載のロボット装置。
  10. 前記少なくとも1つのプロセッサは更に、前記第1のピクセルのセット及び前記第2のピクセルのセット中の各ピクセルにピクセルディスクリプタを割り当てるように構成されている、請求項8に記載のロボット装置。
  11. 前記ピクセルディスクリプタは、ピクセルレベル情報及び奥行情報に対応する値のセットを有する、請求項10に記載のロボット装置。
  12. 前記少なくとも1つのプロセッサは更に、
    距離、姿勢、又は前記キーフレーム画像と前記画像の間の組み合わせのうちの1つの相違点を判断し、
    前記判断した相違点に基づいて前記タスクを調整する、
    ように構成されている、請求項8に記載のロボット装置。
  13. 前記タスクは、物体と相互作用することと、環境中を走行することと、又はそれらの組み合わせと、のうちの少なくとも1つを有する、請求項8に記載のロボット装置。
  14. 前記第1のピクセルのセットに対応する領域は、ユーザーによって選択される、請求項8に記載のロボット装置。
  15. ロボット装置を制御するためのプログラムコードを記録した非一時的なコンピュータ可読媒体であって、
    前記プログラムコードは、
    前記ロボット装置の現在の視覚に対応する画像を撮影するプログラムコードと、
    前記画像の第2のピクセルのセットに一致する第1のピクセルのセットを有するキーフレーム画像を識別するプログラムコードと、
    前記ロボット装置により前記キーフレーム画像に対応するタスクを実行するプログラムコードと、
    を含む、非一時的なコンピュータ可読媒体。
  16. 前記プログラムコードは更に、前記ロボット装置が前記タスクを実行するように訓練されている間に前記キーフレーム画像を撮影するプログラムコードを含む、請求項15に記載の非一時的なコンピュータ可読媒体。
  17. 前記プログラムコードは更に、前記第1のピクセルのセット及び前記第2のピクセルのセット中の各ピクセルにピクセルディスクリプタを割り当てるプログラムコードを含む、請求項15に記載の非一時的なコンピュータ可読媒体。
  18. 前記ピクセルディスクリプタは、ピクセルレベル情報及び奥行情報に対応する値のセットを有する、請求項17に記載の非一時的なコンピュータ可読媒体。
  19. 前記プログラムコードは更に、
    距離、姿勢、又は前記キーフレーム画像と前記画像の間の組み合わせのうちの1つの相違点を判断するプログラムコードと、
    前記判断した相違点に基づいて前記タスクを調整するプログラムコードと、
    を含む、請求項15に記載の非一時的なコンピュータ可読媒体。
  20. 前記タスクは、物体と相互作用することと、環境中を走行することと、又はそれらの組み合わせと、のうちの少なくとも1つを有する、請求項15に記載の非一時的なコンピュータ可読媒体。
JP2022503936A 2019-07-23 2020-06-10 視角エンベディングに基づいた自律タスク実行 Pending JP2022542239A (ja)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201962877792P 2019-07-23 2019-07-23
US201962877793P 2019-07-23 2019-07-23
US201962877791P 2019-07-23 2019-07-23
US62/877,791 2019-07-23
US62/877,792 2019-07-23
US62/877,793 2019-07-23
US16/570,618 US11288883B2 (en) 2019-07-23 2019-09-13 Autonomous task performance based on visual embeddings
US16/570,618 2019-09-13
PCT/US2020/037025 WO2021015883A1 (en) 2019-07-23 2020-06-10 Autonomous task performance based on visual embeddings

Publications (2)

Publication Number Publication Date
JP2022542239A true JP2022542239A (ja) 2022-09-30
JPWO2021015883A5 JPWO2021015883A5 (ja) 2023-06-19

Family

ID=74189690

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2022503981A Pending JP2022542858A (ja) 2019-07-23 2020-06-05 ディープネットワークの訓練方法
JP2022503979A Pending JP2022542241A (ja) 2019-07-23 2020-06-05 ロボット装置からの視覚的出力を補強するシステム及び方法
JP2022503936A Pending JP2022542239A (ja) 2019-07-23 2020-06-10 視角エンベディングに基づいた自律タスク実行
JP2022503980A Pending JP2022544007A (ja) 2019-07-23 2020-07-22 移動操作システムの視覚的教示と繰り返し

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2022503981A Pending JP2022542858A (ja) 2019-07-23 2020-06-05 ディープネットワークの訓練方法
JP2022503979A Pending JP2022542241A (ja) 2019-07-23 2020-06-05 ロボット装置からの視覚的出力を補強するシステム及び方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022503980A Pending JP2022544007A (ja) 2019-07-23 2020-07-22 移動操作システムの視覚的教示と繰り返し

Country Status (5)

Country Link
US (6) US11694432B2 (ja)
EP (4) EP4004828A4 (ja)
JP (4) JP2022542858A (ja)
CN (4) CN114127805A (ja)
WO (4) WO2021015869A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11694432B2 (en) 2019-07-23 2023-07-04 Toyota Research Institute, Inc. System and method for augmenting a visual output from a robotic device
US11685045B1 (en) * 2019-09-09 2023-06-27 X Development Llc Asynchronous robotic control using most recently selected robotic action data
EP4038458A4 (en) * 2019-10-02 2023-11-01 Baker Hughes Oilfield Operations, LLC TELEMETRY COLLECTION AND ANALYSIS FROM AUGMENTED REALITY STREAMING
US11328170B2 (en) * 2020-02-19 2022-05-10 Toyota Research Institute, Inc. Unknown object identification for robotic device
US11813748B2 (en) * 2020-10-13 2023-11-14 Google Llc Simulating multiple robots in virtual environments
US20220197277A1 (en) * 2020-12-23 2022-06-23 Qatar Foundation For Education, Science And Community Development Telepresence control schemes for hazardous environments
IT202100003821A1 (it) * 2021-02-19 2022-08-19 Univ Pisa Procedimento di interazione con oggetti
US20220355692A1 (en) * 2021-05-05 2022-11-10 Abb Schweiz Ag Systems and Methods for Electric Vehicle Charging Using Machine Learning
GB2616001A (en) * 2022-02-17 2023-08-30 Roke Manor Res Limited Remote visual inspection guidance
US20230286161A1 (en) * 2022-03-11 2023-09-14 Boston Dynamics, Inc. Systems and Methods for Robotic Manipulation Using Extended Reality
CN116823838B (zh) * 2023-08-31 2023-11-14 武汉理工大学三亚科教创新园 高斯先验标签分配与特征解耦的海洋船舶检测方法与系统

Family Cites Families (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082497B2 (en) * 2001-12-28 2006-07-25 Hewlett-Packard Development Company, L.P. System and method for managing a moveable media library with library partitions
JP3834297B2 (ja) * 2003-05-12 2006-10-18 ファナック株式会社 画像処理装置
ATE524783T1 (de) * 2004-03-27 2011-09-15 Harvey Koselka Autonomer persönlicher dienstroboter
JP2005308993A (ja) * 2004-04-20 2005-11-04 Matsushita Electric Ind Co Ltd 学習支援システム
DE102005009437A1 (de) * 2005-03-02 2006-09-07 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Einblenden von AR-Objekten
JP2007026309A (ja) * 2005-07-20 2007-02-01 Fuji Xerox Co Ltd 画像形成装置及びその制御方法
US7836437B2 (en) * 2006-02-10 2010-11-16 Microsoft Corporation Semantic annotations for virtual objects
US8930025B2 (en) * 2006-05-25 2015-01-06 Takehiro Ishizaki Work robot
US8121347B2 (en) 2006-12-12 2012-02-21 Rutgers, The State University Of New Jersey System and method for detecting and tracking features in images
JP5037248B2 (ja) * 2007-07-17 2012-09-26 株式会社日立製作所 情報収集システムおよび情報収集ロボット
WO2009024349A1 (en) * 2007-08-22 2009-02-26 Honda Research Institute Europe Gmbh Estimating objects proper motion using optical flow, kinematics and depth information
FR2946160B1 (fr) 2009-05-26 2014-05-09 Aldebaran Robotics Systeme et procede pour editer et commander des comportements d'un robot mobile.
JP2013022705A (ja) 2011-07-25 2013-02-04 Sony Corp ロボット装置及びロボット装置の制御方法、コンピューター・プログラム、並びにロボット・システム
US8965576B2 (en) * 2012-06-21 2015-02-24 Rethink Robotics, Inc. User interfaces for robot training
US9186793B1 (en) * 2012-08-31 2015-11-17 Brain Corporation Apparatus and methods for controlling attention of a robot
US9940553B2 (en) * 2013-02-22 2018-04-10 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates
US9542626B2 (en) 2013-09-06 2017-01-10 Toyota Jidosha Kabushiki Kaisha Augmenting layer-based object detection with deep convolutional neural networks
ES2680576T3 (es) * 2013-10-07 2018-09-10 Abb Schweiz Ag Método y dispositivo para verificar uno o más volúmenes de seguridad para una unidad mecánica móvil
US9259844B2 (en) * 2014-02-12 2016-02-16 General Electric Company Vision-guided electromagnetic robotic system
KR101708659B1 (ko) * 2014-06-17 2017-02-22 주식회사 유진로봇 이동 로봇의 맵을 업데이트하기 위한 장치 및 그 방법
US10518409B2 (en) 2014-09-02 2019-12-31 Mark Oleynik Robotic manipulation methods and systems for executing a domain-specific application in an instrumented environment with electronic minimanipulation libraries
US9579790B2 (en) * 2014-09-17 2017-02-28 Brain Corporation Apparatus and methods for removal of learned behaviors in robots
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
JP2016107379A (ja) * 2014-12-08 2016-06-20 ファナック株式会社 拡張現実対応ディスプレイを備えたロボットシステム
WO2016103065A1 (en) * 2014-12-23 2016-06-30 Husqvarna Ab Robotic vehicle with adjustable operating area
CN104732518B (zh) 2015-01-19 2017-09-01 北京工业大学 一种基于智能机器人地面特征的ptam改进方法
CN104808590B (zh) 2015-02-14 2017-01-25 浙江大学 一种基于关键帧策略的移动机器人视觉伺服控制方法
US9643314B2 (en) * 2015-03-04 2017-05-09 The Johns Hopkins University Robot control, training and collaboration in an immersive virtual reality environment
US9922271B2 (en) 2015-03-20 2018-03-20 Netra, Inc. Object detection and classification
US9868211B2 (en) * 2015-04-09 2018-01-16 Irobot Corporation Restricting movement of a mobile robot
US9646655B2 (en) 2015-08-31 2017-05-09 Fuji Xerox Co., Ltd. Systems and methods for interaction-based analysis and visualization of remote collaboration sessions
US9904867B2 (en) * 2016-01-29 2018-02-27 Pointivo, Inc. Systems and methods for extracting information about objects from scene information
JP7009389B2 (ja) * 2016-05-09 2022-01-25 グラバンゴ コーポレイション 環境内のコンピュータビジョン駆動型アプリケーションのためのシステムおよび方法
CN114967433B (zh) * 2016-05-20 2023-08-18 谷歌有限责任公司 基于捕获物体的图像的机器学习方法和装置
CN106023211B (zh) 2016-05-24 2019-02-26 深圳前海勇艺达机器人有限公司 基于深度学习的机器人图像定位方法及系统
US10105847B1 (en) * 2016-06-08 2018-10-23 X Development Llc Detecting and responding to geometric changes to robots
US10055667B2 (en) * 2016-08-03 2018-08-21 X Development Llc Generating a model for an object encountered by a robot
US9964955B2 (en) 2016-08-04 2018-05-08 Canvas Technology, Inc. System and methods of determining a geometric pose of a camera based on spatial and visual mapping
JP2018055429A (ja) * 2016-09-29 2018-04-05 ファナック株式会社 物体認識装置および物体認識方法
US10162360B2 (en) * 2016-12-01 2018-12-25 GM Global Technology Operations LLC Vehicle environment imaging systems and methods
KR101850410B1 (ko) * 2016-12-26 2018-04-20 한국생산기술연구원 가상 현실 기반 로봇 교시를 위한 시뮬레이션 장치 및 방법
JP2018122376A (ja) * 2017-01-31 2018-08-09 セイコーエプソン株式会社 画像処理装置、ロボット制御装置、及びロボット
JP2020508888A (ja) * 2017-02-25 2020-03-26 ディリジェント ロボティクス,インコーポレイテッド ロボットが技能を学習し実行するシステム、装置及び方法
EP3974934A1 (de) * 2017-03-02 2022-03-30 Robart GmbH Verfahren zur steuerung eines autonomen, mobilen roboters
CN109213306B (zh) * 2017-06-30 2022-02-01 沈阳新松机器人自动化股份有限公司 一种机器人远程控制平台及其设计方法
KR102024092B1 (ko) * 2017-07-12 2019-09-23 엘지전자 주식회사 이동 로봇 시스템 및 그 제어방법
US11345040B2 (en) * 2017-07-25 2022-05-31 Mbl Limited Systems and methods for operating a robotic system and executing robotic interactions
CN107610579A (zh) * 2017-09-05 2018-01-19 芜湖瑞思机器人有限公司 基于vr系统控制的工业机器人示教系统及其示教方法
US10354139B1 (en) * 2017-09-07 2019-07-16 X Development Llc Generating and utilizing spatial affordances for an object in robotics applications
US10915730B2 (en) * 2017-09-21 2021-02-09 Lexset.Ai Llc Detecting one or more objects in an image, or sequence of images, and determining a category and one or more descriptors for each of the one or more objects, generating synthetic training data, and training a neural network with the synthetic training data
US10607079B2 (en) * 2017-09-26 2020-03-31 Toyota Research Institute, Inc. Systems and methods for generating three dimensional skeleton representations
US11216988B2 (en) 2017-10-24 2022-01-04 L'oreal System and method for image processing using deep neural networks
US11703334B2 (en) * 2017-10-31 2023-07-18 Hewlett-Packard Development Company. L.P. Mobile robots to generate reference maps for localization
US10346721B2 (en) * 2017-11-01 2019-07-09 Salesforce.Com, Inc. Training a neural network using augmented training datasets
JP6972962B2 (ja) * 2017-11-22 2021-11-24 コニカミノルタ株式会社 物体追跡装置、物体追跡方法、および、物体追跡プログラム
US11771283B2 (en) * 2017-12-06 2023-10-03 BISSELL , Inc. Method and system for manual control of autonomous floor cleaner
US10380751B1 (en) * 2017-12-12 2019-08-13 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Robot vision in autonomous underwater vehicles using the color shift in underwater imaging
US10810427B1 (en) * 2017-12-15 2020-10-20 AI Incorporated Methods for an autonomous robotic device to identify locations captured in an image
US10981272B1 (en) * 2017-12-18 2021-04-20 X Development Llc Robot grasp learning
JP6641447B2 (ja) * 2017-12-26 2020-02-05 キヤノン株式会社 撮像装置及びその制御方法、プログラム、記憶媒体
US10913154B2 (en) * 2018-01-02 2021-02-09 General Electric Company Systems and method for robotic learning of industrial tasks based on human demonstration
US11097418B2 (en) * 2018-01-04 2021-08-24 X Development Llc Grasping of an object by a robot based on grasp strategy determined using machine learning model(s)
CN108333941A (zh) * 2018-02-13 2018-07-27 华南理工大学 一种基于混合增强智能的云机器人协作学习方法
US11340630B2 (en) * 2018-03-30 2022-05-24 Brain Corporation Systems and methods for robust robotic mapping
CN108619723A (zh) * 2018-04-18 2018-10-09 咪咕互动娱乐有限公司 一种应用操作的处理方法、装置以及存储介质
US10332261B1 (en) * 2018-04-26 2019-06-25 Capital One Services, Llc Generating synthetic images as training dataset for a machine learning network
US11189078B2 (en) * 2018-06-20 2021-11-30 Google Llc Automated understanding of three dimensional (3D) scenes for augmented reality applications
US10636114B2 (en) * 2018-08-04 2020-04-28 Beijing Jingdong Shangke Information Technology Co., Ltd. System and method for scan-matching oriented visual slam
US11030458B2 (en) * 2018-09-14 2021-06-08 Microsoft Technology Licensing, Llc Generating synthetic digital assets for a virtual scene including a model of a real-world object
US10824923B1 (en) * 2019-01-23 2020-11-03 Facebook Technologies, Llc System and method for improving localization and object tracking
US10870204B2 (en) * 2019-01-25 2020-12-22 Mujin, Inc. Robotic system control method and controller
JP7203474B2 (ja) * 2019-02-20 2023-01-13 富士フイルム株式会社 マンモグラフィ装置及びプログラム
US11694432B2 (en) 2019-07-23 2023-07-04 Toyota Research Institute, Inc. System and method for augmenting a visual output from a robotic device
US11529737B2 (en) * 2020-01-30 2022-12-20 Raytheon Company System and method for using virtual/augmented reality for interaction with collaborative robots in manufacturing or industrial environment

Also Published As

Publication number Publication date
EP4004828A1 (en) 2022-06-01
US20210023703A1 (en) 2021-01-28
US20210023707A1 (en) 2021-01-28
US11580724B2 (en) 2023-02-14
JP2022542858A (ja) 2022-10-07
EP4004670A1 (en) 2022-06-01
US20220165057A1 (en) 2022-05-26
US11288883B2 (en) 2022-03-29
CN114097004A (zh) 2022-02-25
JP2022542241A (ja) 2022-09-30
US11113526B2 (en) 2021-09-07
CN114080583B (zh) 2023-12-08
EP4003666A1 (en) 2022-06-01
US20210027058A1 (en) 2021-01-28
EP4003666A4 (en) 2023-09-06
WO2021015883A1 (en) 2021-01-28
WO2021015869A1 (en) 2021-01-28
JP2022544007A (ja) 2022-10-17
WO2021016394A1 (en) 2021-01-28
CN114127806A (zh) 2022-03-01
EP4004670A4 (en) 2023-09-06
CN114080583A (zh) 2022-02-22
CN114127805A (zh) 2022-03-01
US11741701B2 (en) 2023-08-29
EP4003668A1 (en) 2022-06-01
EP4003668A4 (en) 2023-09-06
US20210027097A1 (en) 2021-01-28
US11694432B2 (en) 2023-07-04
WO2021015868A1 (en) 2021-01-28
US20230154015A1 (en) 2023-05-18
EP4004828A4 (en) 2023-10-18

Similar Documents

Publication Publication Date Title
US11741701B2 (en) Autonomous task performance based on visual embeddings
Schmidt et al. Grasping of unknown objects using deep convolutional neural networks based on depth images
US10913151B1 (en) Object hand-over between robot and actor
Morales et al. Integrated grasp planning and visual object localization for a humanoid robot with five-fingered hands
EP3749492A2 (en) Positioning a robot sensor for object classification
Sayour et al. Autonomous robotic manipulation: Real-time, deep-learning approach for grasping of unknown objects
CN111085997A (zh) 基于点云获取和处理的抓取训练方法及系统
Husain et al. Realtime tracking and grasping of a moving object from range video
Bohg et al. Task-based grasp adaptation on a humanoid robot
Kragic et al. A framework for visual servoing
US20240153314A1 (en) Engagement Detection and Attention Estimation for Human-Robot Interaction
Xue et al. Gesture-and vision-based automatic grasping and flexible placement in teleoperation
CN117340929A (zh) 一种基于三维点云数据的柔性夹爪抓取处置装置及方法
CN113681560A (zh) 基于视力融合的机械臂操作铰接物体的方法
Liang et al. Visual reconstruction and localization-based robust robotic 6-DoF grasping in the wild
Hwang et al. Neural-network-based 3-D localization and inverse kinematics for target grasping of a humanoid robot by an active stereo vision system
Huh et al. Self-supervised Wide Baseline Visual Servoing via 3D Equivariance
WO2023100282A1 (ja) データ生成システム、モデル生成システム、推定システム、学習済みモデルの製造方法、ロボット制御システム、データ生成方法、およびデータ生成プログラム
Jabalameli et al. Near Real-Time Robotic Grasping of Novel Objects in Cluttered Scenes
Joshi Antipodal Robotic Grasping using Deep Learning
Sayour et al. Research Article Autonomous Robotic Manipulation: Real-Time, Deep-Learning Approach for Grasping of Unknown Objects
Hüser et al. Natural demonstration of manipulation skills for multimodal interactive robots
Kragic et al. Sensor Integration and Task Planning for Mobile Manipulation
Yu et al. Robotic Arm Control With Human Interactionl

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230609

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230609