JP2021056542A - 画像データからの物体のポーズ検出 - Google Patents

画像データからの物体のポーズ検出 Download PDF

Info

Publication number
JP2021056542A
JP2021056542A JP2019150869A JP2019150869A JP2021056542A JP 2021056542 A JP2021056542 A JP 2021056542A JP 2019150869 A JP2019150869 A JP 2019150869A JP 2019150869 A JP2019150869 A JP 2019150869A JP 2021056542 A JP2021056542 A JP 2021056542A
Authority
JP
Japan
Prior art keywords
pose
image
procedure
computer model
computer
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.)
Granted
Application number
JP2019150869A
Other languages
English (en)
Other versions
JP7129065B2 (ja
Inventor
エルベ オドレン
Audren Herve
エルベ オドレン
ノゲス フェルナンド カマロ
Camaro Nogues Fernando
ノゲス フェルナンド カマロ
ランケ フー
Lanke Fu
ランケ フー
ナッタワン チャロエングンワニッチ
Charoenkulvanich Nathawan
ナッタワン チャロエングンワニッチ
ロモ ホセ イバン ロペス
Romo Jose Ivan Lopez
ロモ ホセ イバン ロペス
睦月 榊原
Mutsuki Sakakibara
睦月 榊原
マルコ シミッチ
Simic Marko
マルコ シミッチ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ascent Robotics Inc
Original Assignee
Ascent Robotics Inc
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 Ascent Robotics Inc filed Critical Ascent Robotics Inc
Priority to JP2019150869A priority Critical patent/JP7129065B2/ja
Priority to US16/999,087 priority patent/US20210056247A1/en
Publication of JP2021056542A publication Critical patent/JP2021056542A/ja
Application granted granted Critical
Publication of JP7129065B2 publication Critical patent/JP7129065B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • 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/084Backpropagation, e.g. using gradient descent
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/12Programme-controlled manipulators characterised by positioning means for manipulator elements electric
    • 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
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • 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
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • 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
    • 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/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • 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/40532Ann for vision processing
    • 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/40607Fixed camera to observe workspace, object, workpiece, global

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Quality & Reliability (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Manipulator (AREA)
  • Image Processing (AREA)

Abstract

【課題】ポーズ検出実行時間およびデータモダリティ要件の両方を低く維持しながら精度を最大化する学習方法を提供する。【解決手段】物体のポーズを検出する方法は、物体のコンピュータモデルを取得する段階と、現実的環境シミュレータでコンピュータモデルをシミュレーションする段階と、複数のポーズ表現を含む訓練データを取り込む段階と、を含む。各ポーズ表現が、複数のポーズのうちの1つにあるコンピュータモデルの画像を含み、複数のポーズのうちの1つは、画像に示されるコンピュータモデルのポーズ指定を含むラベルと対になっており、コンピュータモデルの画像およびポーズ指定はシミュレータによって規定される。さらに、ポーズ表現に学習プロセスを適用して、物体の画像をポーズ指定に関連付けるためのポーズ決定関数を生成する段階を備える。【選択図】図3

Description

本発明は、ポーズ検出に関する。より具体的には、本発明は、コンピュータモデルポーズのシミュレーションで訓練したポーズ決定関数に関する。
製品の製造は、ますます多くのロボット工学技術を用いている。例えば、組み立てラインは、最終製品を組み立てる際に部品を検出し、拾い上げ、まとめるロボットアームを用いる場合がある。プログラミングの負荷を低減させるため、人間の介入が増加する場合がある。例えば、部品を手で適切な位置および向きに配置することによって、ロボットアームは最小限の検出能力のみでよい。ロボットアームが、物体を検出し操作するその能力を高めるにつれて、人間の介入を低減できる場合があり、それにより製造コストも低減され得る。
物体を効果的に操作するためには、ロボットシステムは、そのような物体がどのように6D空間(3軸に沿った位置および3軸の周りの向きで規定できる)に置かれているかを認識できる必要がある。そのようなロボットシステムを訓練しその性能を評価するために、多くの環境多様性を含む大量の訓練データを取得しなければならない。そのようなロボットシステムの設計者は、実行時間およびデータモダリティ要件の両方を低く維持しながら精度を最大化する試みにおいて課題に直面する。
本発明の一態様によれば、コンピュータによって実行可能なコンピュータプログラムであって、コンピュータに、物体のコンピュータモデルを取得する手順と、現実的環境シミュレータでコンピュータモデルをシミュレーションする手順と、複数のポーズ表現を含む訓練データを取り込む手順であって、各ポーズ表現が、複数のポーズのうちの1つコンピュータモデルの画像を含み、複数のポーズのうちの1つは、画像に示されるコンピュータモデルのポーズ指定を含むラベルと対になっており、コンピュータモデルの画像およびポーズ指定はシミュレータによって規定される、取り込む手順と、ポーズ表現に学習プロセスを適用して、物体の画像をポーズ指定に関連付けるためのポーズ決定関数を生成する手順と、を含む操作を実行させる、コンピュータプログラムが提供される。
この態様はまた、コンピュータプログラムの命令を実行するコンピュータによって実行される方法、およびその方法を実行する装置を含んでもよい。
なお、上記の発明の概要は、本発明の実施形態の必要な特徴の全てを列挙したものではない。上記の特徴のサブコンビネーションもまた本発明となり得る。
本発明の一実施形態による、CADモデルから補正されたポーズ検出までのハードウェアおよびソフトウェア要素間の相互作用の図を示す。
本発明の一実施形態による、ポーズ検出のための例示的なハードウェア構成を示す。
本発明の一実施形態による、ポーズ検出のための操作フローを示す。
本発明の一実施形態による、訓練データを取り込むためのコンピュータモデルのシミュレーションのための操作フローを示す。
本発明の一実施形態による、ポーズ決定関数を生成するための操作フローを示す。
本発明の一実施形態による、ポーズ指定を決定するための操作フローを示す。
続いて、例示の本発明の実施形態が説明される。例示の実施形態は、特許請求の範囲に係る本発明を限定するものではなく、実施形態に記載された特徴の組み合わせは、必ずしも本発明に不可欠なものではない。
図1は、本発明の一実施形態による、CADモデルから補正されたポーズ検出までのハードウェアおよびソフトウェア要素間の相互作用の図を示す。この図は、シミュレーション、ディープラーニング、および伝統的なコンピュータ・ビジョンからなる複数の手順を用いる手法を示す。この実施形態では、コンピュータ支援設計(CAD)モデル112が取得される。CADモデル112は、物体の3Dスキャンから作成されてもよく、または手動で設計されてもよい。組み立てラインなどのいくつかの場合では、CADモデルは既に作成されている場合があり、単に再使用されてもよい。
ランダムなポーズのCADモデル112のインスタンスの画像を作成するために、CADモデル112の1つまたは複数のインスタンスがシミュレータ104によって使用される。シミュレータ104が使用されてもよく、その結果、場合によっては「グランドトルース」と呼ばれる、CADモデル112の各インスタンスの実際のポーズがシミュレータから容易に出力され得る。このようにして、非常に退屈で時間のかかる場合がある、実際のポーズの手動での導出は必要なくなる。CADモデル112の各インスタンスのランダムなポーズは、シミュレーション内で物体を落下、衝突、振とう、撹拌させるなどによって達成され得る。シミュレータ104は、これらの操作を単純化するために物理エンジンを使用する。一旦CADモデル112の各インスタンスが静止位置に定着すると、画像が取り込まれる。ポーズと相関しない特徴はランダム化され得る。したがって、照明効果を変えることができ、表面の色、テクスチャ、および光沢はすべてランダム化することができる。それにより、ポーズを決定するために、ポーズに相関する特徴、例えば、形状データ、縁などに学習プロセスを効果的に集中させることができる。画像にノイズを付加してもよく、その結果、学習プロセスは、物体の実像の不完全さに慣れることができる。このとき照明効果も役割を果たしており、それは、実際の画像は常に理想的な照明条件下で撮られるわけではなく、それにより、関係するいくらかの側面が検出困難なままとなる場合があるためである。
シミュレータ104により取り込まれた各カラー画像は、ラベルとして使用されるシミュレータ104から出力される対応する実際のポーズ出力と対になる。この実施形態では、学習プロセスは、未訓練の畳み込みニューラルネットワーク117Uであり、これは各カラー画像およびラベル対に適用される。カラー画像およびラベル対が訓練データをなす。訓練データは、訓練プロセス前または訓練プロセス中に生成され得る。訓練データが訓練プロセスとは別の計算用リソースを使用して生成される実施形態では、各対が生成されると同時にそれを適用する方がより一時的に効果的である場合がある。訓練プロセス中、未訓練の畳み込みニューラルネットワーク117Uからの出力は対応するラベルと比較され、重みが適宜調整される。訓練プロセスは、訓練が完了したことを示す条件が満たされるまで継続される。この条件は、特定の量の訓練データの適用、未訓練の畳み込みニューラルネットワーク117Uの重みの定着、閾値精度に達する出力などであり得る。
一旦訓練が完了すると、結果として得られる訓練済みの畳み込みニューラルネットワーク117Tが物理的環境において使用される準備が整う。この実施形態では、物理的環境は、CADモデル112の実体である物体を含む。これらの物体は、カメラ125によって撮影され、それにより物体のうちの1つまたは複数のカラー画像をもたらす。カラー画像中の各物体の6Dポーズを出力するために、訓練済みの畳み込みニューラルネットワーク117Tがこのカラー画像に適用される。カメラ125はより基本的な性能の劣るカメラである場合があり、かつ照明条件は理想的でない場合があるものの、訓練済みの畳み込みニューラルネットワーク117Tは、訓練中のシミュレーション画像と同じ方式でこのカラー画像を適切に処理することができるはずである。
一旦カラー画像中の各物体の6Dポーズが出力されると、最後の操作の補正109が実行される。補正操作109は、もう一度CADモデル112を利用して、検出された各6Dポーズに対して微調整を行う。この実施形態では、CADモデル112は、出力された各6Dポーズに従って画像を再作成し、次いで、画像間でずれているように見える任意の物体の6Dポーズを調整するために使用される。6Dポーズが調整されるにつれて、再作成された画像が適宜操作され、画像が一致するまで比較が継続される。この実施形態では、補正操作109は、別の学習プロセスではなく、伝統的な手書きのアルゴリズムである。
一旦補正109が完了すると、最終的なポーズ119が出力される。最終的なポーズ119は、実施形態の状況に応じて多様な方法で利用され得る。例えば、組み立てラインにおいて、ロボットアームは最終的なポーズ119を利用して、ロボットアームが組み立てステップを実行することを可能にする方式で各物体を戦略的に掴むことができる。ロボットアーム以外、および組み立てライン以外にも、多くの用途が存在する。適切なポーズ検出を必要とする用途の数は増加している。
図2は、本発明の一実施形態による、ポーズ検出のための例示的なハードウェア構成を示す。例示的なハードウェア構成は、ネットワーク228と通信し、かつCADモデラ224、カメラ225、およびロボットアーム226と相互作用し得るポーズ検出デバイス220を含む。ポーズ検出デバイス220は、オンプレミスのアプリケーションを実行し、それを使用するクライアントコンピュータをホストするサーバコンピュータまたはメインフレームコンピュータなどのホストコンピュータであり得る。この場合、ポーズ検出デバイス220は、CADモデラ224、カメラ225、およびロボットアーム226と直接接続されなくてよく、ネットワーク228を介して接続される。ポーズ検出デバイス220は、2以上のコンピュータを含むコンピュータシステムであってもよい。ポーズ検出デバイス220は、ポーズ検出デバイス220のユーザ用のアプリケーションを実行するパーソナルコンピュータであってもよい。
ポーズ検出デバイス220は、論理部200、格納部210、通信インタフェース221、および入/出力コントローラ222を含む。論理部200は、様々な部分の操作をプロセッサまたはプログラマブル回路に実行させるためにプロセッサまたはプログラマブル回路で実行可能なプログラム命令を集合的に格納している1つまたは複数のコンピュータ可読記憶媒体を含むコンピュータプログラムプロダクトであってよい。論理部200は、代替的に、アナログもしくはデジタルプログラマブル回路、またはそれらの任意の組み合わせであり得る。論理部200は、通信を介して相互作用する、物理的に切り離された格納装置または回路から構成され得る。格納部210は、本明細書のプロセスの実行中に論理部200がアクセスするための実行不能データを格納することができる不揮発性コンピュータ可読媒体であり得る。通信インタフェース221は、格納部210などの記録媒体に設けられた送信バッファ領域に格納され得る送信データを読み取り、読み取った送信データをネットワーク228へ送信する、またはネットワーク228から受信した受信データを、記録媒体に設けられた受信バッファ領域に書き込む。入/出力コントローラ222は、パラレルポート、シリアルポート、キーボードポート、マウスポート、モニターポートなどを介してCADモデラ224、カメラ225、およびロボットアーム226などの様々な入出力ユニットに接続して、コマンドを受け入れ、情報を提示する。
取得部202は、ポーズ検出の過程で、CADモデラ224、カメラ225、ロボットアーム226、およびネットワーク228からのデータの取得を実行する論理部200の部分である。取得部は、物体のコンピュータモデル212を取得してもよい。取得部202は、コンピュータモデル212を格納部210に格納してもよい。取得部202は、以下のフローチャートに記載される付加的機能を実行するための小区分を含んでもよい。そのような小区分は、それらの機能に関連付けられた名称で呼ばれ得る。
シミュレーション部204は、現実的環境におけるコンピュータモデルをシミュレーションする論理部200の部分である。シミュレーション部204は、ランダムなポーズの物体のコンピュータモデルをシミュレーションしてもよい。その際、シミュレーション部204は、コンピュータモデルの運動を誘発するなどのために物理エンジンを含んでもよい。シミュレーション部204は、物理エンジンなどのシミュレーションパラメータ214を格納部210に格納してもよい。シミュレーション部204は、以下のフローチャートに記載される付加的機能を実行するための小区分を含んでもよい。そのような小区分は、それらの機能に関連付けられた名称で呼ばれ得る。
取込み部205は、訓練データを取り込む論理部200の部分である。訓練データは、複数のポーズ表現215を含んでもよく、各ポーズ表現215は、画像に示されるコンピュータモデルのポーズ指定を含むラベルと対になった複数のポーズのうちの1つにあるコンピュータモデルの画像を含む。画像および対応するポーズ指定は、シミュレーション部204によって規定される。取込み部205は、ポーズ表現215を格納部210に格納してもよい。取込み部205は、以下のフローチャートに記載される付加的機能を実行するための小区分を含んでもよい。そのような小区分は、それらの機能に関連付けられた名称で呼ばれ得る。
関数生成部206は、ポーズ検出の過程で、ポーズ表現に学習プロセスを適用してポーズ決定関数を生成する論理部200の部分である。例えば、ポーズ決定関数は、物体の画像をポーズ指定と関連付けることができる。関数生成部206は、ポーズ決定関数パラメータ217などの訓練済みの学習プロセスのパラメータを格納部210に格納してもよい。関数生成部206は、以下のフローチャートに記載される付加的機能を実行するための小区分を含んでもよい。そのような小区分は、それらの機能に関連付けられた名称で呼ばれ得る。
ポーズ決定部208は、ポーズ検出の過程で、ポーズ決定関数を物体の画像に適用することによって物体のポーズ指定を決定する論理部200の部分である。例えば、ポーズ指定位置および向きの6D指定である。その際、ポーズ決定部208は、格納部210に格納されたポーズ決定関数パラメータ217、およびカメラ225によって取り込まれた物理的環境におけるコンピュータモデル212と同一な物体の画像を利用してもよく、それにより6Dポーズ指定の出力がもたらされる。ポーズ決定部208は、以下のフローチャートに記載される付加的機能を実行するための小区分を含んでもよい。そのような小区分は、それらの機能に関連付けられた名称で呼ばれ得る。
ポーズ補正部209は、ポーズ検出の過程で、物体のポーズ指定を補正する論理部200の部分である。その際、ポーズ補正部209は、格納部210に格納された補正パラメータ218およびコンピュータモデル212を利用してもよく、それにより補正された6Dポーズ指定の出力がもたらされる。ポーズ補正部209は、以下のフローチャートに記載される付加的機能を実行するための小区分を含んでもよい。そのような小区分は、それらの機能に関連付けられた名称で呼ばれ得る。
この実施形態では、ポーズ検出デバイス220は、訓練データを生成し、学習プロセスを訓練してポーズ決定関数を生成し、次いで、単にコンピュータモデルを入力することによって自動的に訓練済みのポーズ決定関数を使用することを可能にし得る。
他の実施形態では、ポーズ検出デバイスは、本明細書のプロセスを実行するために論理関数を処理することができる任意の他のデバイスであってもよい。ポーズ検出デバイスは、入力、出力、およびすべての情報が直接接続されている環境ではネットワークに接続される必要がない場合がある。論理部および格納部は完全に別個のデバイスでなくてもよく、1つまたは複数のコンピュータ可読媒体を共有してもよい。例えば、格納部は、コンピュータ実行可能命令および論理部によってアクセスされるデータの両方を格納するハードドライブであってもよく、論理部は、中央処理装置(CPU)およびランダムアクセスメモリ(RAM)の組み合わせであってもよく、論理部では、本明細書のプロセスの実行中にCPUによって実行されるために、コンピュータ実行可能命令が全体的にまたは部分的に複製され得る。特にニューラルネットワークを利用する実施形態では、1つまたは複数のグラフィック処理装置(GPU)が論理部に含まれてもよい。
ポーズ検出デバイスがコンピュータである実施形態では、コンピュータにインストールされたプログラムは、コンピュータに、本発明の実施形態の装置またはその1もしくは複数の部(モジュール、コンポーネント、エレメントなどを含む)として機能させ得るか、またはそれに関連付けられる操作を実行させ得る、かつ/あるいはコンピュータに、本発明の実施形態のプロセスまたはそのステップを実行させ得る。そのようなプログラムは、コンピュータに、本明細書に記載のフローチャートおよびブロック図のいくつかもしくはすべてのブロックに関連付けられる特定の操作を実行させるために、プロセッサによって実行され得る。
他の実施形態では、カメラは、色情報に加えて各画素の深度情報を取り込むことができる深度カメラであってもよい。そのような実施形態では、取込み部はまた、シミュレーション部によって規定された深度情報も取り込み、学習関数は適宜訓練されることになる。換言すると、コンピュータモデルの画像は深度情報を含んでもよく、したがって、物体の画像の取り込みは、深度情報の取り込みも含む。しかしながら、多くの深度カメラは近距離では精度が良好でない場合がある。したがって、深度カメラは、より大きい規模の用途でより好適であり得る。
いくつかの実施形態では、単一の用途に複数のコンピュータモデルを使用することができる。シミュレーション部において複数のコンピュータモデルを容易にシミュレーションすることができるが、確実なポーズ決定関数を生成するためにより多くの訓練が要求され得る。例えば、単一の物体が、接続されているが相対的に移動可能な2つの構成要素を含む場合、そのような構成要素は個別の物体として扱われる場合があり、学習関数はそれに伴って訓練されることになる。さらなる実施形態では、ラベルは、構成要素間の関係を規定するパラメータを含み得る。より複雑な方法で形状を変化させる物体、例えば流れる、変形する、または多くの可動部を有する物体は、確実なポーズ決定関数を生成することが全くできない場合がある。
図3は、本発明の一実施形態による、ポーズ検出のための操作フローを示す。この操作フローは、ポーズ検出デバイス220または以下の操作を実行することができる任意の他のデバイスなどのポーズ検出デバイスによって実行され得るポーズ検出方法を提供し得る。
S330において、取得部202などの取得部はコンピュータモデルを取得する。例えば、取得部は、ネットワーク228などのネットワークを介して、CADモデラ224などのCADモデラから、または別のソースからなど、直接的なユーザ入力から物体のコンピュータモデルを取得し得る。いくつかの実施形態では、取得部は、物体の3Dスキャンを行うことによってコンピュータモデルを生成し得る。
S340において、シミュレーション部204などのシミュレーション部は、現実的環境においてコンピュータモデルをシミュレーションする。例えば、シミュレーション部は、現実的環境においてコンピュータモデルをシミュレーションしてもよい。いくつかの実施形態では、シミュレーション部は、コンピュータモデルの1より多くのインスタンスを同時にシミュレーションしてもよい。
S346において、取込み部205などの取込み部は、ポーズ表現の訓練データを取り込む。例えば、取込み部は、複数のポーズ表現を取り込んでもよく、各ポーズ表現は、画像に示されるコンピュータモデルのポーズ指定を含むラベルと対になった複数のポーズのうちの1つにあるコンピュータモデルの画像を含む。画像および対応するポーズ指定は、シミュレーション部によって規定される。シミュレーション部がコンピュータモデルの1より多くのインスタンスをシミュレーションする実施形態では、各画像もコンピュータモデルの1より多くのインスタンスを含んでもよく、コンピュータモデルの各インスタンスは固有のポーズにある。
S350において、関数生成部206などの関数生成部はポーズ決定関数を生成する。例えば、関数生成部は、学習プロセスをポーズ表現に適用して、物体の画像をポーズ指定と関連付けるポーズ決定関数を生成し得る。
S360において、ポーズ決定部208などのポーズ決定部はポーズ指定を決定する。例えば、ポーズ決定部は、ポーズ検出の過程で、ポーズ決定関数を物体の画像に適用することによって物体のポーズ指定を決定し得る。いくつかの実施形態では、ポーズ補正部209などのポーズ補正部は、物体のポーズ指定を補正し得る。いくつかの実施形態では、ポーズ補正部は、物体のポーズ指定に従ったコンピュータモデルの画像と物理的環境における物体の画像との間の差異を低減させるために、直接画像位置合わせ(Direct Image Alignment,DIA)を適用し得る。深度情報が利用可能である実施形態などのいくつかの実施形態では、ポーズ補正部は、物体のポーズ指定に従ったコンピュータモデルの画像と物理的環境における物体の画像との間の差異を低減させるために、コヒーレント点ドリフト(Coherent Point Drift,CPD)を適用し得る。
S370において、ロボットアーム226などのロボットアームが位置決めされ得る。例えば、ポーズ検出デバイスは、ポーズ指定に従いロボットアームを位置決めし得る。いくつかの実施形態では、ロボットアームの位置決めは、物体の画像を取り込んだカメラ、例えばカメラ225の位置に基づいて、ロボットアームに対する物体の位置を決定することを含み得る。
図4は、本発明の一実施形態による、図3のS340およびS346などの、訓練データを取り込むためのコンピュータモデルのシミュレーションのための操作フローを示す。この操作フロー内の操作は、シミュレーション部204などのシミュレーション部、または対応して名付けられたその小区分、および取込み部205などの取込み部、または対応して名付けられたその小区分によって実行され得る。
S442において、シミュレーション部204またはその小区分などの環境生成部は、シミュレーション環境を生成する。例えば、環境生成部は、その内部がコンピュータモデルとなり、かつ一部がプラットフォームを形成する3D空間を作成し得る。環境の残りの詳細、例えば背景色および物体は、たとえあったとしてもシミュレーションの目的にはあまり重要ではなく、学習プロセスがそれらに値を割り当てることを防ぐためにさらにランダム化される。
S444において、シミュレーション部204またはその小区分などのランダム割当部は、色、テクスチャ、および照明をランダムに割り当てる。例えば、ランダム割当部は、現実的環境シミュレータ内で、コンピュータモデルおよびプラットフォームに1つまたは複数の表面色をポーズごとにランダムに割り当て得る。別の例として、ランダム割当部は、現実的環境シミュレータ内で、コンピュータモデルおよびプラットフォームに1つまたは複数の表面テクスチャをポーズごとにランダムに割り当て得る。さらに別の例として、ランダム割当部は、現実的環境シミュレータ内で、環境における照明効果をポーズごとにランダムに割り当て得る。そのような照明効果は、明るさ、コントラスト、色温度、および方向のうちの少なくとも1つを含み得る。
S445において、シミュレーション部204またはその小区分などの運動誘発部は、コンピュータモデルの運動を誘発する。例えば、運動誘発部は、コンピュータモデルがランダムなポーズを呈するように、前記現実的環境シミュレータ内で、プラットフォームに対する前記コンピュータモデルの運動を誘発し得る。誘発される運動の例としては、プラットフォームまたはコンピュータモデルの他のインスタンスに対してコンピュータモデルを落下させ、回転させ、衝突させることが挙げられる。
S446において、取込み部205などの取込み部は、画像およびポーズ指定を取り込み得る。例えば、取込み部は、シミュレーション内でソフトカメラを規定し、そのソフトカメラを使用してコンピュータモデルの画像を取り込むことなどによって、シミュレーション内のコンピュータモデルの画像を取り込み得る。取込み部はまた、コンピュータモデルのポーズ指定を取り込んでもよい。ポーズ指定は、ソフトカメラの視点からであってもよい。あるいは、ポーズ指定は、いくつかの他の視点からであってもよく、例えば、ポーズ指定を変換することによって得られる。シミュレーション部がコンピュータモデルの1より多くのインスタンスをシミュレーションする実施形態では、各画像もコンピュータモデルの1より多くのインスタンスを含んでもよく、コンピュータモデルの各インスタンスは固有のポーズにあり、そのため、固有のポーズ指定と関連付けられる。
S448において、シミュレーション部は、取込み部によって十分な量の訓練データが取り込まれたかどうかを決定する。訓練データの量が不十分である場合、操作フローはS449に進み、そこで別の訓練データを取り込む準備をするために環境がリセットされる。十分な量の訓練データがある場合、操作フローは終了する。
図5は、本発明の一実施形態による、図3のS350などの、ポーズ決定関数を生成するための操作フローを示す。この操作フロー内の操作は、関数生成部206などの関数生成部または対応して名付けられたその小区分によって実行され得る。
S552において、関数生成部またはその小区分などの学習プロセス規定部は、学習プロセスを規定する。学習プロセスを規定することは、ニューラルネットワークの種類、ニューラルネットワークの次元、層の数などを規定することを含み得る。いくつかの実施形態では、学習プロセス規定部は、畳み込みニューラルネットワークとして学習プロセスを規定する。
S554において、関数生成部またはその小区分などのポーズ表現選択部は、複数のポーズ表現の中からポーズ表現を選択する。各ポーズ表現が処理されることを確実にするために、ポーズ決定関数を生成するための操作フローの反復が進むにつれて、以前に選択されていないポーズ表現のみがS554で選択され得る。ポーズ表現が取り込まれるとすぐに処理される実施形態では、ポーズ表現選択は必要でない場合がある。
S556において、関数生成部またはその小区分などの学習プロセス適用部は、学習プロセスを画像に適用する。学習プロセスをポーズ表現に適用することは、学習プロセスが出力を生成するように、画像を学習プロセスへの入力として使用することを含み得る。学習プロセスがニューラルネットワークを含み、かつポーズ表現がシミュレーション画像である実施形態では、学習プロセスは6Dポーズ指定を出力し得る。
S557において、関数生成部またはその小区分などの学習プロセス調整部は、シミュレーション部によって規定されるラベル、ポーズ指定を目標として用いて学習プロセスを調整する。ポーズ決定関数を生成するための操作フローの反復が進むにつれ、学習プロセス調整部は、ポーズ決定関数パラメータ217などの学習プロセスのパラメータを調整して、ポーズ決定関数となるように学習プロセスを訓練する。学習プロセスがニューラルネットワークを含み、ポーズ表現がシミュレーション画像である実施形態では、学習プロセス調整部は、ニューラルネットワークの重みを調整してもよく、学習プロセスは、画像内のコンピュータモデルのインスタンスごとに6Dポーズ指定を出力するように訓練され得る。例えば、ニューラルネットワークに画像が入力された後、ニューラルネットワークの実際の出力と対応するポーズ指定との間の誤差が算出される。一旦誤差が算出されると、次いで、この誤差は逆伝搬される、すなわち、誤差は、ネットワークの各重みに対する導関数として表される。一旦導関数が得られると、この導関数の関数に従ってニューラルネットワークの重みが更新される。
S559において、関数生成部は、すべてのポーズ表現が関数生成部によって処理されたかどうかを決定する。未処理のままのポーズ表現がある場合、操作フローはS554に戻り、そこで、処理のために別のポーズ表現が選択される。未処理のままのポーズ表現がない場合、操作フローは終了する。図5の操作フローが反復して実行されるにつれ、操作S554、S556、およびS557の反復は全体としてポーズ決定関数を生成する操作となる。図5の操作フローの終わりには、学習プロセスは、ポーズ決定関数となるのに十分な訓練を受けている。
この実施形態では訓練はすべてのポーズ表現が処理されたときに終了するものの、他の実施形態は、例えばエポックの数によって、または誤差の量に応じてなど、訓練が終わるときを決定するための異なる基準を含み得る。また、この実施形態では、学習プロセスのパラメータは各ポーズ表現の適用後に調整されるものの、他の実施形態では、例えばエポックごとに1回、または誤差の量に応じてなど、異なる間隔でパラメータを調整してもよい。最後に、この実施形態では、学習プロセスの出力がポーズ決定関数となり、これは学習関数の出力がポーズ指定であることを意味するものの、他の実施形態では、学習プロセス自体はポーズ指定を出力しないが、ポーズ指定をもたらすカメラのパラメータと組み合わされたいくつかの出力を行う場合がある。これらの実施形態では、目標の学習プロセス出力を適切に規定するために、訓練データはカメラのそのようなパラメータをポーズ指定から取り除くことによって生成され得る。これらの実施形態では、ポーズ決定関数は、訓練済みの学習プロセスと、出力をカメラのパラメータと組み合わせるための関数との両方を含む。
図6は、本発明の一実施形態による、図3のS360などの、ポーズ指定を決定するための操作フローを示す。この操作フロー内の操作は、ポーズ決定部208または対応して名付けられたその小区分などのポーズ決定部、およびポーズ補正部209または対応して名付けられたその小区分などのポーズ補正部によって実行され得る。
S662において、ポーズ決定部208またはその小区分などの画像取込み部は、物体の画像を取り込む。例えば、画像取込み部は、物理的環境における物体の画像を取り込み得る。画像取込み部は、カメラ225などのカメラ、または画像を取り込むための他のフォトセンサと通信し得る。ポーズ決定関数は、色情報が出力されるポーズ指定に影響を及ぼさないように効果的に訓練され得るものの、色付きで取り込まれた画像は、より多くの情報を提供することができ、その結果、例えばグレースケールで取り込まれた画像よりも縁においてそれらを表す情報のずれがより大きく、それにより、ポーズ決定関数が画像中の物体を画定する縁より容易に検出することが可能となる。
S664において、ポーズ決定部208または対応して名付けられたその小区分などのポーズ決定関数適用部は、ポーズ決定関数を画像に適用する。ポーズ決定関数を画像に適用することは、ポーズ決定関数が出力を生成するように、ポーズ決定関数への入力として画像を使用することを含み得る。ポーズ決定関数がニューラルネットワークを含む実施形態では、ニューラルネットワークは、画像中のコンピュータモデルのインスタンスごとに6Dポーズ指定を出力し得る。
S666において、ポーズ補正部209または対応して名付けられたその小区分などの画像作成部は、コンピュータモデルの画像を作成する。例えば、画像作成部は、物体のポーズ指定に従ったコンピュータモデルの画像を作成し得る。いくつかの実施形態では、画像は、無地の背景で、ポーズ指定に従ったコンピュータモデルのみからなる。
S667において、ポーズ補正部209または対応して名付けられたその小区分などの画像比較部は、作成された画像を取り込まれた画像と比較する。例えば、画像比較部は、物体のポーズ指定に従ったコンピュータモデルの画像を、物理的環境における物体の画像と比較し得る。いくつかの実施形態では、比較を容易にするために、作成された画像を切り出すことによって生成され得るシルエットは、シミュレーションから直接算出された作成された画像のシルエットと比較される。この比較は、誤差が十分に最小化されるまで反復して実行され得る。
S669において、ポーズ補正部209または対応して名付けられたその小区分などのポーズ調整部は、ポーズ決定関数から出力されるポーズ指定を調整する。例えば、ポーズ調整部は、取り込まれた画像と作成された画像との間の差異を低減させるためにポーズ指定を調整し得る。
本明細書の実施形態の多くでは、ポーズ検出デバイスは、訓練データを生成し、学習プロセスを訓練してポーズ決定関数を生成し、次いで、単にコンピュータモデルを入力することによって自動的に訓練済みのポーズ決定関数を使用することを可能にし得る。シミュレータを利用して訓練データを生成することにより、本明細書に記載の実施形態は、ラベルとしてシミュレータによって規定されたポーズ指定の取り込みを含む、迅速な画像の取り込みが可能となり得る。シミュレータによって規定されたポーズ指定を使用することにより、ラベルが非常に正確になることも可能となる。それらの現実的な精度で知られている既存のシミュレータ、例えばUNREAL(登録商標)エンジンは、精度の確信度を高めるだけでなく、画像処理および環境面のランダム化の能力も備わっていてもよい。
本発明の様々な実施形態は、ブロックが(1)操作が実行されるプロセスのステップ、または(2)操作を実行する役割を果たす装置の部を表し得るフローチャートおよびブロック図を参照して、説明することができる。特定のステップおよび部は、専用回路、コンピュータ可読媒体上に格納されたコンピュータ可読命令が供給されているプログラマブル回路、および/またはコンピュータ可読媒体上に格納されたコンピュータ可読命令が供給されているプロセッサによって実装され得る。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでもよく、集積回路(IC)および/または個別の回路を含み得る。プログラマブル回路は、論理AND、OR、XOR、NAND、NOR、および他の論理演算、フリップ−フロップ、レジスタ、メモリ素子など、例えばフィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理アレイ(PLA)などを含む再構成可能なハードウェア回路を含み得る。プロセッサは、中央処理装置(CPU)、グラフィック処理装置(GPU)、モバイル処理装置(MPU)などを含み得る。
コンピュータ可読媒体は、好適なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体などが含まれ得る。コンピュータ可読媒体のより具体的な例としては、フロッピーディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、スタティックランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、BLU−RAY(登録商標)ディスク、メモリスティック、集積回路カードなどが含まれ得る。
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはオブジェクト指向プログラミング言語、例えばSmalltalk(登録商標)、JAVA(登録商標)、C++など、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、もしくは他のプログラマブルなデータ処理装置のプロセッサ、またはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、例えばインターネットなどのワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理装置、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラなどが含まれる。
本発明の実施形態の多くは、特に、人工知能、学習プロセス、およびニューラルネットワークを含む。前述の実施形態のいくつかは、特定の種類のニューラルネットワークを説明している。しかしながら、学習プロセスは通常、重みなどの値を乱数で設定してから開始する。そのような未訓練の学習プロセスは、それらがうまく関数を実行すると合理的に予想することができるよう事前に訓練されなければならない。本明細書に記載のプロセスの多くは、ポーズ検出のための学習プロセスを訓練する目的のためのものである。一旦訓練されると、学習プロセスをポーズ検出に使用することができ、さらなる訓練を必要としない場合がある。このように、訓練済みのポーズ決定関数は、未訓練の学習プロセスを訓練するプロセスの成果である。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または補正を加えることが可能であることが当業者に明らかである。そのような変更または補正を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、実施形態、または図面に示す装置、システム、プログラム、および方法によって実行される各プロセスの操作、手順、ステップ、および段階は、順序が「に先立って」または「の前」などによって示されていない限り、また前のプロセスからの出力が後のプロセスで使用されない限りは、任意の順序で実行することができる。特許請求の範囲、明細書、または図面中の動作フローに関して、便宜上「まず、」または「次に、」などを用いて説明したとしても、この順序で実行することが必須であることを意味するものではない。

Claims (20)

  1. コンピュータによって実行可能なコンピュータプログラムであって、前記コンピュータに、
    物体のコンピュータモデルを取得する手順と、
    現実的環境シミュレータで前記コンピュータモデルをシミュレーションする手順と、
    複数のポーズ表現を含む訓練データを取り込む手順であって、各ポーズ表現が、複数のポーズのうちの1つにある前記コンピュータモデルの画像を含み、前記複数のポーズのうちの1つは前記画像に示される前記コンピュータモデルのポーズ指定を含むラベルと対になっており、前記コンピュータモデルの前記画像および前記ポーズ指定は前記現実的環境シミュレータによって規定される、取り込む手順と、
    前記複数のポーズ表現に学習プロセスを適用して、前記物体の画像をポーズ指定に関連付けるためのポーズ決定関数を生成する手順と、
    を含む操作を実行させる
    コンピュータプログラム。
  2. 物理的環境における前記物体の画像を取り込む手順と、
    前記ポーズ決定関数を前記物体の前記画像に適用することによって前記物体のポーズ指定を決定する手順と、
    をさらに含む、請求項1に記載のコンピュータプログラム。
  3. 前記ポーズ指定に従い、ロボットアームの位置決めをする手順をさらに含む、請求項2に記載のコンピュータプログラム。
  4. 前記ロボットアームを前記位置決めする手順が、前記物体の前記画像を取り込んだカメラの位置に基づいて、前記ロボットアームに対する前記物体の位置を決定することを含む、請求項3に記載のコンピュータプログラム。
  5. 前記物体の前記ポーズ指定を補正する手順をさらに含む、請求項2から4のいずれか一項に記載のコンピュータプログラム。
  6. 前記補正する手順が、前記物体の前記ポーズ指定に従った前記コンピュータモデルの画像を作成する手順を含む、請求項5に記載のコンピュータプログラム。
  7. 前記補正する手順が、
    前記物体の前記ポーズ指定に従った前記コンピュータモデルの前記画像を、前記物理的環境における前記物体の前記画像と比較する手順と、
    前記ポーズ指定を調整して、前記取り込まれた画像と前記作成された画像との間の差異を低減させる手順と、
    をさらに含む、請求項6に記載のコンピュータプログラム。
  8. 前記補正する手順が、直接画像位置合わせ(Direct Image Alignment,DIA)およびコヒーレント点ドリフト(Coherent Point Drift,CPD)のうちの1つを適用して、前記物体の前記ポーズ指定に従った前記コンピュータモデルの前記画像と前記物理的環境における前記物体の前記画像との間の差異を低減させる手順をさらに含む、請求項5から7のいずれか一項に記載のコンピュータプログラム。
  9. 前記ポーズ指定が、位置および向きの6D指定である、請求項1から8のいずれか一項に記載のコンピュータプログラム。
  10. 前記シミュレーションする手順が、前記コンピュータモデルの1より多くのインスタンスをシミュレーションする手順を含み、
    各画像は、前記コンピュータモデルの前記1より多くのインスタンスを含み、前記コンピュータモデルの各インスタンスは固有のポーズである、
    請求項1から9のいずれか一項に記載のコンピュータプログラム。
  11. 前記現実的環境シミュレータが物理エンジンを含み、
    前記シミュレーションする手順は、前記コンピュータモデルがランダムなポーズを呈するように、前記現実的環境シミュレータ内で、プラットフォームに対する前記コンピュータモデルの運動を誘発する手順を含む、
    請求項1から10のいずれか一項に記載のコンピュータプログラム。
  12. 前記運動を誘発する手順が、落下、回転、および衝突する手順のうちの少なくとも1つを含む、請求項11に記載のコンピュータプログラム。
  13. 前記シミュレーションする手順が、前記現実的環境シミュレータ内で、前記コンピュータモデルおよび前記プラットフォームに1つまたは複数の表面色をポーズごとにランダムに割り当てる手順を含む、請求項11または12に記載のコンピュータプログラム。
  14. 前記シミュレーションする手順が、前記現実的環境シミュレータ内で、前記コンピュータモデルおよび前記プラットフォームに1つまたは複数の表面テクスチャをポーズごとにランダムに割り当てる手順を含む、請求項11から13のいずれか一項に記載のコンピュータプログラム。
  15. 前記シミュレーションする手順が、前記現実的環境シミュレータ内で、環境における照明効果をポーズごとにランダムに割り当てる手順を含む、請求項1から14のいずれか一項に記載のコンピュータプログラム。
  16. 前記照明効果が、明るさ、コントラスト、色温度、および方向のうちの少なくとも1つを含む、請求項15に記載のコンピュータプログラム。
  17. 前記コンピュータモデルの前記画像が深度情報を含み、
    前記物体の前記画像を前記取り込む手順が、深度情報を取り込む手順を含む、
    請求項1から16のいずれか一項に記載のコンピュータプログラム。
  18. 前記学習プロセスが畳み込みニューラルネットワークである、請求項1から17のいずれか一項に記載のコンピュータプログラム。
  19. 物体のコンピュータモデルを取得する段階と、
    現実的環境シミュレータで前記コンピュータモデルをシミュレーションする段階と、
    複数のポーズ表現を含む訓練データを取り込む段階であって、各ポーズ表現が、複数のポーズのうちの1つにある前記コンピュータモデルの画像を含み、前記複数のポーズのうちの1つは前記画像に示される前記コンピュータモデルのポーズ指定を含むラベルと対になっており、前記コンピュータモデルの前記画像および前記ポーズ指定は前記現実的環境シミュレータによって規定される、取り込む段階と、
    前記複数のポーズ表現に学習プロセスを適用して、前記物体の画像をポーズ指定に関連付けるためのポーズ決定関数を生成する段階と、
    を含む
    コンピュータ実装方法。
  20. 物体のコンピュータモデルを取得するように構成された取得部と、
    現実的環境シミュレータで前記コンピュータモデルをシミュレーションするように構成されたシミュレーション部と、
    複数のポーズ表現を含む訓練データを取り込むように構成された取込み部であって、各ポーズ表現が、複数のポーズのうちの1つにある前記コンピュータモデルの画像を含み、前記複数のポーズのうちの1つは、前記画像に示される前記コンピュータモデルのポーズ指定を含むラベルと対になっており、前記コンピュータモデルの前記画像および前記ポーズ指定は前記現実的環境シミュレータによって規定される、取込み部と、
    前記複数のポーズ表現に学習プロセスを適用して、前記物体の画像をポーズ指定に関連付けるためのポーズ決定関数を生成するように構成された学習プロセス適用部と、
    を備える
    装置。
JP2019150869A 2019-08-21 2019-08-21 画像データからの物体のポーズ検出 Active JP7129065B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019150869A JP7129065B2 (ja) 2019-08-21 2019-08-21 画像データからの物体のポーズ検出
US16/999,087 US20210056247A1 (en) 2019-08-21 2020-08-21 Pose detection of objects from image data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019150869A JP7129065B2 (ja) 2019-08-21 2019-08-21 画像データからの物体のポーズ検出

Publications (2)

Publication Number Publication Date
JP2021056542A true JP2021056542A (ja) 2021-04-08
JP7129065B2 JP7129065B2 (ja) 2022-09-01

Family

ID=74645728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019150869A Active JP7129065B2 (ja) 2019-08-21 2019-08-21 画像データからの物体のポーズ検出

Country Status (2)

Country Link
US (1) US20210056247A1 (ja)
JP (1) JP7129065B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115222871B (zh) * 2021-08-31 2023-04-18 达闼科技(北京)有限公司 模型评估方法、装置、存储介质及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063567A (ja) * 2000-08-23 2002-02-28 Nec Corp 物体位置姿勢推定装置及びその方法並びそれを用いた特徴点位置抽出方法及び画像照合方法
JP2013010155A (ja) * 2011-06-28 2013-01-17 Canon Inc 対象物把持装置、対象物把持装置の制御方法、およびプログラム
US20140079314A1 (en) * 2012-09-18 2014-03-20 Yury Yakubovich Method and Apparatus for Improved Training of Object Detecting System
JP2015072581A (ja) * 2013-10-02 2015-04-16 キヤノン株式会社 情報処理方法、情報処理装置、およびコンピュータプログラム
JP2018144158A (ja) * 2017-03-03 2018-09-20 株式会社キーエンス ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715761B2 (en) * 2013-07-08 2017-07-25 Vangogh Imaging, Inc. Real-time 3D computer vision processing engine for object recognition, reconstruction, and analysis
US10055667B2 (en) * 2016-08-03 2018-08-21 X Development Llc Generating a model for an object encountered by a robot

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063567A (ja) * 2000-08-23 2002-02-28 Nec Corp 物体位置姿勢推定装置及びその方法並びそれを用いた特徴点位置抽出方法及び画像照合方法
JP2013010155A (ja) * 2011-06-28 2013-01-17 Canon Inc 対象物把持装置、対象物把持装置の制御方法、およびプログラム
US20140079314A1 (en) * 2012-09-18 2014-03-20 Yury Yakubovich Method and Apparatus for Improved Training of Object Detecting System
JP2015072581A (ja) * 2013-10-02 2015-04-16 キヤノン株式会社 情報処理方法、情報処理装置、およびコンピュータプログラム
JP2018144158A (ja) * 2017-03-03 2018-09-20 株式会社キーエンス ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YU XIANG ET AL: "PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes", ARXIV, JPN7021005566, 26 May 2018 (2018-05-26), ISSN: 0004666852 *

Also Published As

Publication number Publication date
US20210056247A1 (en) 2021-02-25
JP7129065B2 (ja) 2022-09-01

Similar Documents

Publication Publication Date Title
US10867444B2 (en) Synthetic data generation for training a machine learning model for dynamic object compositing in scenes
US10546408B2 (en) Retargeting skeleton motion sequences through cycle consistency adversarial training of a motion synthesis neural network with a forward kinematics layer
CN108369643B (zh) 用于3d手部骨架跟踪的方法和系统
US10902343B2 (en) Deep-learning motion priors for full-body performance capture in real-time
US10565792B2 (en) Approximating mesh deformations for character rigs
US9536338B2 (en) Animating objects using the human body
US20200057831A1 (en) Real-time generation of synthetic data from multi-shot structured light sensors for three-dimensional object pose estimation
US11741666B2 (en) Generating synthetic images and/or training machine learning model(s) based on the synthetic images
JP2019523504A (ja) ドメイン分離ニューラルネットワーク
KR20200102114A (ko) 학습기반 3d 모델 생성 장치 및 방법
US11104001B2 (en) Motion transfer of highly dimensional movements to lower dimensional robot movements
CN108961144A (zh) 图像处理系统
JP7294788B2 (ja) 3d配置のタイプに応じた2d画像の分類
WO2018080533A1 (en) Real-time generation of synthetic data from structured light sensors for 3d object pose estimation
Borrego et al. A generic visual perception domain randomisation framework for gazebo
JP7129065B2 (ja) 画像データからの物体のポーズ検出
US11170550B2 (en) Facial animation retargeting using an anatomical local model
US11875441B2 (en) Data-driven extraction and composition of secondary dynamics in facial performance capture
EP4367644A1 (en) Synthetic dataset creation for object detection and classification with deep learning
CN115035224A (zh) 图像处理和重构图像生成的方法和装置
JP2023521456A (ja) 実際の場所の仮想環境復元を作成するための方法
WO2023277906A1 (en) Synthetic images for machine learning
WO2020067204A1 (ja) 学習用データ作成方法、機械学習モデルの生成方法、学習用データ作成装置及びプログラム
JP6967150B2 (ja) 学習装置、画像生成装置、学習方法、画像生成方法及びプログラム
US20240153188A1 (en) Physics-based simulation of dynamic character motion using generative artificial intelligence

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220712

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220812

R150 Certificate of patent or registration of utility model

Ref document number: 7129065

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150