JP2021176078A - 深層学習及びベクトル場推定による特徴検出 - Google Patents

深層学習及びベクトル場推定による特徴検出 Download PDF

Info

Publication number
JP2021176078A
JP2021176078A JP2021062631A JP2021062631A JP2021176078A JP 2021176078 A JP2021176078 A JP 2021176078A JP 2021062631 A JP2021062631 A JP 2021062631A JP 2021062631 A JP2021062631 A JP 2021062631A JP 2021176078 A JP2021176078 A JP 2021176078A
Authority
JP
Japan
Prior art keywords
image
pixels
point
dimensional
vector field
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
JP2021062631A
Other languages
English (en)
Inventor
タン トー
Te Tang
哲朗 加藤
Tetsuro Kato
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Publication of JP2021176078A publication Critical patent/JP2021176078A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • 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/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/1669Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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
    • 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
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • 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/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/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Geometry (AREA)
  • Fuzzy Systems (AREA)
  • Computer Graphics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)
  • Manipulator (AREA)

Abstract

【課題】深層学習ニューラルネットワーク及びベクトル場推定プロセスを用いて、対象物の2D画像から特徴を抽出するシステム及び方法の提供をする。【解決手段】方法は、複数の可能な特徴点96を抽出することと、対象物が配置される2D画像82内のピクセルを定義するマスク画像200を生成することと、抽出した特徴点に向かう矢印を備えたベクトル場画像202を、抽出した特徴点毎に生成することとを含む。また、画像内の2つのピクセルPi、Pjの全ての組み合わせについての矢印が交差する交点xijを識別することにより、ベクトル交差画像206を生成することを含む。2つのピクセル及び交点の各組み合わせにおける各ピクセルからの距離に応じて各交点にスコアを割り当てて、複数の集合した点から特徴配置を識別する点投票画像を生成する。【選択図】図9

Description

本開示は、広くは、画像から特徴を抽出するためのシステム及び方法に関し、特には、深層学習ニューラルネットワーク及びベクトル場推定プロセスを使用して、画像から特徴を抽出するためのシステム及び方法に関する。
ロボットは、ピックアンドプレース操作を含む多数のタスクを実行し、この操作では、ロボットが複数の対象物をピックアップして、コンベヤベルト等のある場所から、収集ビン等の他の場所に搬送するが、対象物の3Dポーズとして知られる位置及び向きは、僅かに異なる。そこで、ロボットが対象物を効率的にピックアップするために、多くの場合、ロボットが対象物の3Dポーズを知る必要がある。この目的のために、対象物の3Dポーズを決定するための種々の技術では、対象物の3D画像をリアルタイムで取得する3Dカメラが使用される。この場合、3D画像は、カメラの視野内の多くのポイントまでの距離測定値を識別し、これらの測定値はロボット制御装置に送信される。これらの技術では、構造化光を使用してシーンの3Dマップを作成し、対象物の3D特徴を識別して該マップ内の対象物を検索することができる。ロボットアプリケーションのために、対象物の3Dポーズを決定すべく3Dカメラを使用することは、効果的であることが証明されている。しかしながら、3Dカメラは高価なデバイスであり、多くの場合、必要とされるものよりも動作が遅い。
ロボットアプリケーションのために対象物の3Dポーズを取得するための当技術分野で知られている技術の一つでは、代わりに2次元(2D)カメラを使用する。この技術は、シーンの単一の2Dカラー画像を取得し、完全畳み込み(fully-convolutional)アーキテクチャを使用して画像を処理する。アルゴリズムが、画像をSXSセルを含む2Dグリッドに分割し、セル内の対象物を識別する。アルゴリズムは、画像内の各対象物の周囲に境界ボックスを投影し、該ボックスの8つのコーナの2D位置を予測する。しかしながら、境界ボックスのコーナを予測するこの技術では、精度に制限があり、オクルージョンに対するロバスト性(robustness to occlusion)が低い。
対象物の3Dポーズを決定するための上記プロセスのいくつかは、人工知能(AI)を使用する。これは、アルゴリズムを使用するコンピュータサイエンスの一部であり、該アリゴリズムによって、ソフトウェアアプリケーションが環境から学習し、そこから決定を下して、特定の結果を達成することができる。機械学習は、ソフトウェアアプリケーションを使用するAIの一部であり、該ソフトウェアアプリケーションは、大量の生の入力データを繰り返し分析することで独自の知識を取得し、該データからパターンを抽出して、該ソフトウェアアプリケーションがあるタスクを実行するために特別にプログラムされていなくても、該タスクの実行を学習できる。深層学習(ディープラーニング)は、特定の現実世界の環境を、増加する複雑な概念の階層として表すことにより、より優れた学習パフォーマンスを提供する特定のタイプの機械学習である。
深層学習は典型的には、非線形処理を実行するニューラルネットワークの複数の層(レイヤ)を含むソフトウェア構造を使用し、この場合、前の層からの出力を次の層の各々が受け取る。一般に層は、センサから生データを受信する入力層と、該データから抽象的な特徴を抽出する複数の隠れ層と、該隠れ層からの特徴抽出に基づいて特定のものを識別する出力層とを含む。ニューラルネットワークは、各々が「重み」を有するニューロン又はノードを含み、この重みにノードへの入力を乗算することで、あることが正しいか否かの確率を取得することができる。より具体的には、各ノードは浮動小数点数である重みを有し、この重みはノードへの入力と乗算され、該入力の割合である、そのノードの出力が生成される。この重みは最初に、監視された処理の下でニューラルネットワークに既知のデータのセットを分析させることと、コスト関数を最小化してネットワークが正しい出力を最高の確率で取得できるようにすることとにより、「トレーニングされ(trained)」又は設定されている。
深層学習ニューラルネットワークは、画像内の対象物の視覚的な検出及び分類のための、画像特徴抽出及び変換を行うために、頻繁に使用される。画像のビデオ又はストリームは、該ネットワークによって分析可能であり、それにより対象物の識別・分類と、プロセスを通じて対象物をよりよく認識するための学習が可能となる。従って、これらのタイプのネットワークでは、システムは同じ処理構成を使用して特定の対象物を検出し、アルゴリズムが対象物を認識するためにどのように学習したかに基づいて、対象物を異なる方法で分類することができる。
以下の説明は、深層学習ニューラルネットワーク及びベクトル場推定プロセスを使用して、対象物の2次元画像から特徴を検出するためのシステム及び方法を開示・説明する。該方法は、2次元画像から対象物の複数の可能性のある特徴点を抽出することと、対象物が配置される、2次元画像内のピクセルを定義するマスク画像を生成することと、2次元画像内の各ピクセルのx方向値及びy方向値を有し、2次元画像内の抽出された特徴点に向かう方向の矢印を備えた別個のベクトル場画像を、抽出された特徴点ごとに生成することと、を含み、可能性のある特徴点の抽出、マスク画像の生成、及びベクトル場画像の生成は、深層学習ニューラルネットワークで実行される。また該方法は、対象物の一部を含む2次元画像内のピクセルに関連付けられていない矢印が破棄されるように、マスク画像内のピクセルをベクトル場画像内の対応するピクセルで乗算することにより、ベクトル場抽出画像を生成することと、2次元画像内の2つのピクセルの全ての組み合わせについての矢印が交差する交点を識別することにより、ベクトル交差画像を生成することと、を含む。該方法は、2つのピクセル及び交点の各組み合わせにおける各ピクセルからの距離に応じて、抽出された特徴点ごとに各交点にスコアを割り当てて、スコアのグリッドを生成し、複数の集合した点から特徴配置を識別する点投票画像を生成する。
本開示の追加の特徴は、添付の図面と併せて、以下の説明及び特許請求の範囲から明らかになるであろう。
対象物をコンベヤベルトからピックアップしてビン内に配置するロボットを含むロボットシステムの図であり、該システムは対象物の2D画像を取得する2Dカメラと、2D画像を用いて対象物の3Dポーズを計算する制御装置とを使用する。 ニューラルネットワークをトレーニングするために、2Dカメラを使用して対象物からデータセットを取得するプロセスを示すフロータイプの図である。 調整可能な重みを各々が有する複数のノードを含むニューラルネットワークの図である。 対象物の2D画像及びニューラルネットワークを使用して対象物の3Dポーズを推定するために、トレーニングされたニューラルネットワークを使用する学習ベースのニューラルネットワークプロセスを示すフロータイプの図である。 図4に示すプロセスにおいて、対象物の3Dポーズ推定を決定するためのパースペクティブnポイント(PnP)プロセスを示す図である。 対象物を撮像する複数のカメラを使用するカメラシステムの図である。 複数の2Dカメラを使用して対象物の3Dポーズを推定するシステムのブロック図である。 図7に示すシステムにおいて、対象物の3Dポーズを推定するためのPnPプロセスを示す図である。 対象物上の特徴点を予測するためのベクトル場推定プロセスを示すフロータイプの図である。
深層学習ニューラルネットワーク及びベクトル場推定プロセスを使用して画像の特徴を抽出するシステム及び方法を対象とする本開示の実施形態の以下の説明は、本質的に単なる例示であり、本発明又はそのアプリケーション若しくは使用を限定することを意図するものではない。例えば、システム及び方法は、ロボットに把持された対象物の位置及び向きを求めるアプリケーションを有する。しかしシステム及び方法は、他のアプリケーションを有してもよい。
図1は、対象物14をコンベヤベルト16からピックアップして収集ビン18内に配置するロボット12を含むロボットシステム10の図である。システム10は、本明細書の記載から利益を享受できる任意のタイプのロボットシステムを表すことを意図しており、ロボット12は、その目的に適した任意のロボットであり得る。各対象物14は、コンベヤベルト16上を下流側に移動するときに、他の対象物14に対して、コンベヤベルト16上での向き及び位置が異なる。ロボット12が対象物14を効果的に把持及びピックアップするためには、ロボット12のエンドエフェクタ20が物体14を把持する前に、エンドエフェクタ20を適切な位置及び姿勢に配置できる必要がある。これを達成するために、システム10は、対象物14に対して所望の位置に設けられる2Dカメラ22を含み、2Dカメラ22は、エンドエフェクタ20を動かすべくロボット12を制御するロボット制御装置24に2D画像を提供する。以下で詳述するように、ロボット制御装置24は、エンドエフェクタ20が適切な向きになるように、アルゴリズムを使用して、カメラ22からの2D画像を対象物14の3Dポーズに変換する。
後述するように、制御装置24が対象物14の3Dポーズを正確に決定するために、一実施形態では、学習ベースのニューラルネットワークが、制御装置24で実行されて対象物の特徴を抽出するアルゴリズム及びソフトウェアにおいて使用される。ニューラルネットワークは、代表対象物から取得したデータでトレーニングする必要がある。図2は、ニューラルネットワークをトレーニングするために使用される2Dカメラ40を使用して、システム10内の対象物14と同一の対象物32から画像データを取得するためのプロセスを示すフロータイプのダイアグラム30である。対象物32は、適切な数のマーカ36を有するマーカボード34上に配置され、マーカ36は、対象物32のグラウンドトゥルース又は実際の位置を識別するために使用される特別な検出可能なデザインを備える。ボード34上のマーカ36のうちの1つのみが図示されており、マーカ34と対象物32との間の線38によって表されるオフセット距離が測定される。
カメラ40は、マーカボード34の1つ又は複数の2D画像42、ここでは4つの画像を、互いに異なる角度で提供する。次にプロセスは、画像42上での投影を実行して、座標フレーム44によって識別されるマーカ36のうちの1つの、回転及び位置を求める。次にアルゴリズムは、マーカ36と対象物32との間の、以前に測定されたオフセットをマーカ36の回転及び位置に付加し、対象物32の回転及び位置を求める。対象物32の真の位置が決定されれば、対象物32のコーナ等の特徴点46の位置は、既知の特徴点抽出プロセスを使用して計算することができるが、ここでは少なくとも4つの特徴点が必要である。例えばガウス分布プロセスを使用可能なアルゴリズムは、画像42の識別された各特徴点46を見て、その点46の「ヒートマップ」48を生成し、ここでは、各ヒートマップ48は、色の強度によって、対象物32の特徴点の1つが特定の場所に存在する可能性を求める。例えば、領域50等の、特徴点があると考えられる画像42内の場所には、赤等の特定の色が割り当てられる。また特徴点が領域50から離れた場所に存在する可能性は低いので、色は、例えば領域52のように青に変化する。
次に、2D画像42と、ダイアグラム30で示すプロセスによって生成された対応するヒートマップ48とによって提供されるデータは、既知のAIトレーニングスキームを使用してニューラルネットワークをトレーニングするために使用され、そして対象物14の3Dポーズを識別するためにシステム10で使用される。図3は、各々が調整可能な重みWを有する複数のノード62を含むニューラルネットワーク60の図であり、ネットワーク60は、本明細書で論じられるニューラルネットワークを概略的に表すことを意図している。ニューラルネットワーク60は、2D画像から個々のピクセルデータを受信する入力層64と、2D画像のピクセルデータ内の特徴を識別する複数の残差ブロック層66及び68と、複数の畳み込み層70とを有し、畳み込み層70の各ノード62はヒートマップを提供する。畳み込み層70並びに残差ブロック層66及び68は、深層学習の領域で利用される標準モジュールであることに留意されたい。これらのタイプの畳み込み層は、画像の入力又は前の畳み込み層に対して畳み込み操作を実行する複数のフィルタカーネルで構成されているため、エッジ、テクスチャ又は輪郭情報が入力から抽出可能である。残差ブロック層は、スキップ接続を持つ2つの畳み込み層を含む構造であり、第2の畳み込み層の出力が第1の畳み込み層の入力に付加されて、ブロック出力として機能する。
図4は、制御装置24で動作するアルゴリズムを示すフロータイプのダイアグラム80であり、該アルゴリズムが採用する学習ベースのニューラルネットワーク78は、トレーニングされたニューラルネットワークを使用して、カメラ22で撮像された対象物14の2D画像82から、対象物14の3Dポーズを推定する。画像82は、入力層84と、制御装置24のAIソフトウェアで動作するニューラルネットワーク78内のフィードフォワードループを含む複数の連続する残差ブロック層86及び88とに提供され、フィルタリングプロセスを使用した、画像82内の対象物14の可能な特徴点の勾配、エッジ、輪郭等の特徴抽出が行われる。抽出された特徴を含む画像は、ニューラルネットワーク78内の複数の連続する畳み込み層90に提供され、抽出された特徴から得られる可能な特徴点は、特徴点ごとに1つずつ、一連のヒートマップ92として定義される。ヒートマップ92は、ヒートマップ92の色に基づいて、特徴点が対象物14上に存在する可能性を表している。画像94は、全てのヒートマップ92からの全ての特徴点のための特徴点96を含む、対象物14の画像82を使用して生成される。各特徴点96には、その特徴点のヒートマップ92の色に基づく信頼値が割り当てられ、特定の閾値を超える信頼値を持たない特徴点96は使用されない。
次に画像94は、ポーズ推定プロセッサ98内に同じ特徴点を有する、対象物14の公称又は仮想の3DCADモデルと比較されて、対象物14の推定3Dポーズ100を提供する。画像94をCADモデルと比較するための適切なアルゴリズムの1つは、当技術分野ではパースペクティブnポイント(PnP)として周知である。一般に、PnPプロセスは、ワールド座標フレーム内の対象物のn個の3Dポイントのセットと、カメラからの画像内の対応する2D投影とが与えられてキャリブレーションされたカメラに対する対象物のポーズを推定する。ポーズには、カメラの座標フレームに対する対象物の回転(ロール、ピッチ、ヨー)と3D平行移動とで構成される6自由度(DOF)が含まれる。
図5は、対象物14の3Dポーズを取得するために、本実施例ではPnPプロセスがどのように実行され得るかを示すイラスト104である。イラスト104は、グラウンドトゥルース又は現実位置にある対象物14を表す3D対象物106を示す。対象物106は、カメラ22を表すカメラ112によって観測され、2D画像平面110上に2D対象物画像108として投影される。ここでは、対象物画像108は画像94を表し、画像108上の点102はニューラルネットワーク78によって予測され、点96を表す特徴点である。またイラスト104は、特徴点96と同じ位置に特徴点132を有する対象物14の仮想3DCADモデル114を示しており、モデル114は、カメラ112の前にランダムに配置されるとともに、投影された特徴点118も含む2Dモデル画像116として画像平面110上に投影される。CADモデル114は、カメラ112の前で回転及び並進させられ、それによりモデル画像116は、モデル画像116の各特徴点118と対象物画像108の対応する特徴点102との間の距離が最小化するように、すなわち画像116と画像108とが位置合わせするように、回転及び並進させられる。モデル画像116が対象物画像108に可能な限り位置合わせされると、カメラ112に対するCADモデル114のポーズは、対象物14の推定された3Dポーズ100となる。
この分析は、画像108と画像116との間の対応する特徴点の1つについて式(1)で表され、式(1)は、画像108及び116の全ての特徴点について使用される。式(1)において、VはCADモデル114の特徴点132の1つであり、vはモデル画像116の対応する投影された特徴点102であり、aは対象物画像108の特徴点102の1つであり、R及びTはそれぞれ、カメラ112に対するCADモデル114の回転及び並進であり、記号「′」はベクトル転置であり、∀はインデックスiを有する任意の特徴点を指す。式(1)を最適化ソルバで解くことにより、最適な回転及び並進を計算することができ、故に対象物14の3Dポーズ100が推定される。
Figure 2021176078
対象物14の3Dポーズを推定するために学習ベースのニューラルネットワークを使用する上記のプロセスは、高レベルの精度を提供するが、改善可能である。例えば、カメラ112の光学的z軸に直交するx軸又はy軸における画像平面110上の対象物14の2D投影の小さなピクセル誤差は、z軸において比較的大きな誤差を生じさせ、このことは、対象物の位置を著しく不確実にし、3Dポーズ推定のパフォーマンスを低下させる。故に本開示は、複数のカメラを用いることでz軸の不確実性を低減する3Dポーズ推定プロセスも提案する。
図6は、x、y及びz座標フレームに対して方向付けられた第1のカメラ122及び第2のカメラ124を含むカメラシステム120の図であり、ここでは、z軸はカメラ122及び124の光軸に沿う。図示される不確実領域126は、カメラ122からの画像が対象物14の位置を推定できる精度の限界を示し、図示される不確実領域128は、カメラ124からの画像が対象物14の位置を推定できる精度の限界を示す。図示されるように、カメラ122及び124はいずれも、x軸及びy軸においては高精度であるが、z軸においては精度が制限されており、全ての軸における精度は、カメラ122又は124と画像化された対象物14との間の距離に依存する。しかしながら、カメラ122及び124の双方によって提供される3Dポーズ推定を融合することにより、z軸における対象物14の3D姿勢の推定精度は、不確実領域130で示すように大幅に改善される。換言すれば、この図では、カメラ122及び124の一方のz軸はカメラ122及び124の他方のx軸であるため、推定プロセスの全般的な不確実性はx軸方向の不確実性である。
この非限定的な実施形態では、カメラ122及び124の光軸が互いに直交し、カメラ122又は124から対象物14までの距離が最適となって最小の不確実領域130が提供されるように、カメラ122及び124が方向付けられる。しかしながら実際のシステムは、z軸を備えたカメラ122及び124が互いに対して配置可能な場所、カメラ122又は124と対象物14との間の距離、照明や使用されるカメラの種類等の他の制限要因に関して、制限され得る。このことは、光軸が互いに直交しないことや、その他の制限につながる可能性がある。それらのシステムでは、不確実領域のサイズを最小不確実領域130に近づけるために、2つ以上のカメラを使用することが望ましい場合がある。
図7は、2Dカメラ122及び124と、上述したタイプの学習ベースのニューラルネットワークとを使用して、対象物14の3Dポーズを推定するためのシステム140のブロック図である。対象物14のそれぞれの角度について、カメラ122は2D画像142を提供し、カメラ124は2D画像144を提供する。画像142はプロセッサ146に提供され、画像144はプロセッサ148に提供される。プロセッサ146及び148はそれぞれ、それらのパースペクティブからの画像94と同様に、特徴点画像150及び152を生成する。プロセッサ146及び148は例えば、入力層84、複数の連続する残差ブロック層86及び88、並びに複数の連続する畳み込み層90を使用してヒートマップを生成し、次にヒートマップは、上述した方法で画像150及び152を生成するために使用される。画像150及び152は、単一のカメラ22が提供できるものよりも正確に推定された対象物14の3Dポーズ156を生成するポーズ推定ブロック154で融合され、ポーズ推定プロセスもまた、上述のようにPnPアルゴリズムを使用する。
図8は、イラスト104と同様のイラスト160であり、同様の要素は同じ参照番号によって示され、上述のブロック154における画像融合のためのPnPプロセスを示す。イラスト160において、カメラ162はカメラ122を表し、カメラ164はカメラ124を表す。イラスト160は、カメラ164に関する2D画像平面170上へのCADモデル114の投影である特徴点172を有する2Dモデル画像166と、カメラ164に関する画像平面170上への3D対象物106の投影である特徴点174を有する2D対象物画像168とを示す。CADモデル114は、カメラ162及び164の双方の前で回転及び並進させられて、カメラ162及び164の双方のための最適なモデルポーズが同時に取得され、画像平面110上のモデル画像116の特徴点118が、対象物画像108の特徴点102に可能な限り接近し、画像平面170上のモデル画像166の特徴点172は、対象物画像168の特徴点174に可能な限り接近する。このことが達成されると、3Dモデル114の最適な向きが得られ、これは対象物14の3Dポーズを表す。
この分析は、画像108、116と画像166、168との間の対応する特徴点の1つについて式(2)によって表され、式(2)は、画像108、116及び画像166、168の全ての特徴点に対して使用される。式(2)において、uはモデル画像166の特徴点172の1つであり、bは対象物画像168の対応する特徴点174である。
Figure 2021176078
学習ベースのニューラルネットワークを使用して対象物14の3Dポーズを推定するために2D画像から特徴を抽出する上述の技術は、適切な特徴抽出技術の1つであり、他の技術もある。以下の説明では、学習ベースの技術を満足な結果に置換可能な深層学習及びベクトル場推定を使用する特徴抽出技術について説明する。以下で詳述するように、ベクトル場推定プロセスは、入力層84、複数の連続する残差ブロック層86及び88、並びにヒートマップ92を生成する複数の連続する畳み込み層90を含むニューラルネットワーク78を、ベクトル場推定要素に置換する。ここでは、対象物の3Dポーズを取得するためのベクトル場推定プロセスについて説明するが、該プロセスは、画像からの特徴抽出を必要とする他のいかなる適切なプロセスに適用できることを強調しておく。
図9は、カメラ22によって撮像された対象物14の2D画像82を使用して対象物14の3Dポーズを生成する制御装置24で動作するベクトル場推定プロセスを示すフロータイプのダイアグラム180であり、同様の要素は同じ参照符号で示される。画像入力は、3次元行列N×N×3によって定義される3チャネルRGB(赤−緑−青)画像であり、ここでNは、画像82の高さ及び幅である。画像82は、エンコーダ/デコーダニューラルネットワーク182に提供され、このネットワーク182は、画像82内の可能な主要特徴を抽出するエンコーダネットワーク184と、抽出された特徴から画像を生成して、以下で説明する対象物14の可能な特徴点を識別するデコーダネットワーク186とを含む。ここでネットワーク184及び186は、上述したタイプの複数のニューラルネットワーク層を含む。特に、ある非限定的な実施形態では、エンコーダネットワーク184のニューラルネットワーク層は、畳み込み層188、バッチ正規化(BN)層190及び正規化線形ユニット(ReLu)層192を含み、デコーダネットワーク186のニューラルネットワーク層は、プーリング層194、アップサンプリング層196及びソフトマックス層198を含む。
ネットワーク182は、画像82の3次元行列を処理し、3つのチャネルから、1次元(N×N×1)マスク画像200と、識別された各特徴点について2次元(N×N×2)ベクトル場画像202とを生成する。マスク画像200を生成するために、ネットワーク182は、対象物14の一部が特定のピクセルに存在するか否かに基づいて、画像82内の各ピクセルにデジタル1又は0を割り当てる。ここでマスク画像200の明るい領域のピクセルはデジタル1を有し、マスク画像200の暗い領域のピクセルはデジタル0を有する。各ベクトル場画像202は、画像82内の各ピクセルに与えられるx方向ベクトル値及びy方向ベクトル値によってそれぞれ定義される複数の矢印を含み、矢印の方向は、画像82の特徴点の1つに向かっている。故に画像82内の各ピクセルは、その特徴への方向を予測する能力を有する。マスク画像200内のピクセルの値は、ベクトル場画像202内の対応するピクセルの値で乗算されるので、対象物14の一部を含むピクセルに関連付けられておらず、かつ特徴点に対して有用な方向を提供しない矢印は、ベクトル場抽出画像204に示されるように、破棄される。
ベクトル場抽出画像204内の各矢印は、特徴点の1つへの方向を表すが、その特徴点までの距離は示さない。そこで、ベクトル場抽出画像204内の、値を有する2つの対象物ピクセルp及びpの全ての組み合わせについて、プロセスは点xijを識別する。点xijのベクトルv及びvは、ベクトル交差画像206に示すように、互いに交差する。各点xijには、ピクセルpと点xijとの間の距離、ピクセルpと点xijとの間の距離、並びにピクセルp及びpでの勾配の大きさに応じて、スコアが割り当てられる。例えば、ピクセルpと点xijとの間の距離、及びピクセルpと点xijとの間の距離が小さいほどスコアは高くなり、ピクセルp及びpでの勾配の大きさが大きいほどスコアは高くなる。その結果、各々がスコアを有する多くの点xijを含むグリッドが得られ、殆どの点xijを含む画像内の領域は、点投票画像208に示されるように、可能性のある特徴点の位置を識別する。
ベクトル場画像202は、ネットワーク182によって識別された可能な1つの特徴点のベクトル矢印を示す。ネットワーク182はまた、マスク200によって乗算された可能な特徴点ごとに別個のベクトル場画像202を生成する。全ての点投票画像208の全ての特徴点は、特徴点96を含む画像94のように、単一の画像内で結合され、個別の特徴点96の各々は、点投票画像208の1つによって提供される。次に画像94は、ポーズ推定プロセッサ98内でPnPプロセスによって処理されて、上述のやり方で3Dポーズ100を生成することができる。さらに、上述したような単一のカメラの光軸に沿った不確実性のために、複数のカメラを使用することができ、それらのカメラからの画像の各々が、ベクトル場推定プロセスによって処理される。
前述のように、ベクトル場推定プロセスは、特徴点の抽出を必要とする他のプロセスに適用され得る。例えば、ロボット工学のアプリケーションの1つでは、ロボットによってピックアップされている対象物の中心を探索するが、そこでは対象物の向きは必要ない。別のアプリケーションは、品質保証の目的で対象物の測定値を決定することであり得る。
当業者によってよく理解されるように、本発明を説明するために本明細書で論じられるいくつかの様々なステップ及びプロセスは、電気的現象を使用してデータを操作及び/又は変換するコンピュータ、プロセッサ又は他の電子計算デバイスによって実行される操作を意味し得る。それらのコンピュータ及び電子デバイスは、コンピュータ又はプロセッサによって実行可能な種々のコード又は実行可能命令を有する実行可能プログラムが格納された非一時的なコンピュータ可読媒体を含む、様々な揮発性及び/又は不揮発性メモリを使用することができる。メモリ及び/又はコンピュータ可読媒体は、あらゆる形態及びタイプの、メモリ及び他のコンピュータ可読媒体を含み得る。
上述の説明は、本開示の単なる例示的な実施形態を開示及び記載している。当業者は、そのような説明、並びに添付の図面及び特許請求の範囲から、以下の特許請求の範囲で規定される本開示の精神及び範囲から逸脱することなく、様々な変更、修正及び変形を行うことができることを容易に認識するであろう。

Claims (20)

  1. 対象物の画像から特徴を抽出する方法であって、
    2次元カメラを用いて、前記対象物の複数のピクセルを含む2次元画像を取得することと、
    前記2次元画像から、前記対象物の複数の可能性のある特徴点を抽出することと、
    前記対象物が配置される、前記2次元画像内のピクセルを定義するマスク画像を生成することと、
    前記2次元画像内の各ピクセルのx方向値及びy方向値を有し、前記2次元画像内の抽出された特徴点に向かう方向の矢印を備えた別個のベクトル場画像を、抽出された特徴点ごとに生成することと、
    前記対象物の一部を含む前記2次元画像内のピクセルに関連付けられていない矢印が破棄されるように、前記マスク画像内のピクセルを前記ベクトル場画像内の対応するピクセルで乗算することにより、抽出された特徴点ごとに別個のベクトル場抽出画像を生成することと、
    前記2次元画像内の2つのピクセルの全ての組み合わせについての矢印が交差する交点を識別することにより、抽出された特徴点ごとにベクトル交差画像を生成することと、
    2つのピクセル及び前記交点の各組み合わせにおける各ピクセルからの距離に応じて、抽出された特徴点ごとに各交点にスコアを割り当てて、ピクセルの全ての組み合わせについてスコアのグリッドを生成することと、
    複数の集合した点から特徴配置を識別する点投票画像を、抽出された特徴点ごとに生成することと、
    を含む方法。
  2. 前記可能性のある特徴点を抽出すること、前記マスク画像を生成すること、及び前記ベクトル場画像を生成することは、深層学習ニューラルネットワークで実行される、請求項1に記載の方法。
  3. 各交点にスコアを割り当てることは、前記ピクセルの勾配の大きさを使用することを含む、請求項1に記載の方法。
  4. 前記ピクセルと前記交点との間の距離が小さいほどスコアは高くなり、前記ピクセルでの勾配の大きさが大きいほどスコアは高くなる、請求項3に記載の方法。
  5. 前記抽出された特徴点の全ての前記点投票画像は、結合点投票画像として結合される、請求項1に記載の方法。
  6. 前記結合点投票画像は、前記対象物の3次元ポーズの推定に使用される、請求項5に記載の方法。
  7. 前記対象物の3次元ポーズを推定することは、特徴配置を前記対象物の3次元仮想モデルと比較することを含む、請求項6に記載の方法。
  8. 現実の前記対象物の3次元ポーズを推定することは、画像上での前記3次元仮想モデルの2次元投影を、前記特徴配置を有する現実の対象物の前記画像上での2次元投影と比較するパースペクティブnポイントアルゴリズムを使用することを含む、請求項7に記載の方法。
  9. 前記方法はロボットシステムにおいて実行され、前記対象物はロボットにピックアップされる、請求項7に記載の方法。
  10. 前記2次元画像は、3次元行列によって定義される3チャネルRGB(赤−緑−青)画像である、請求項1に記載の方法。
  11. 対象物の複数のピクセルを含む画像から、カメラを用いて特徴を抽出する方法であって、
    深層学習ニューラルネットワークを用いて、前記対象物の複数の可能性のある特徴点を前記画像から抽出することと、
    前記画像内の各ピクセルのx方向値及びy方向値を有し、前記画像内の抽出された特徴点に向かう方向の矢印を備えた別個のベクトル場画像を、深層学習ニューラルネットワークを用いて、抽出された特徴点ごとに生成することと、
    ベクトル場推定プロセスを使用して前記矢印の交点を識別し、別個のベクトル場画像ごとに特徴配置を識別することと、
    を含む方法。
  12. 識別された前記特徴配置の全ての組み合わせとして結合画像を提供することをさらに含む、請求項11に記載の方法。
  13. 前記画像は、3次元行列によって定義される3チャネルRGB(赤−緑−青)画像である、請求項11に記載の方法。
  14. 対象物の画像から特徴を抽出するシステムであって、
    前記対象物の複数のピクセルを含む2次元画像を取得する2次元カメラと、
    前記2次元画像から、前記対象物の複数の可能性のある特徴点を抽出する手段と、
    前記対象物が配置される、前記2次元画像内のピクセルを定義するマスク画像を生成する手段と、
    前記2次元画像内の各ピクセルのx方向値及びy方向値を有し、前記2次元画像内の抽出された特徴点に向かう方向の矢印を備えた別個のベクトル場画像を、抽出された特徴点ごとに生成する手段と、
    前記対象物の一部を含む前記2次元画像内のピクセルに関連付けられていない矢印が破棄されるように、前記マスク画像内のピクセルを前記ベクトル場画像内の対応するピクセルで乗算することにより、抽出された特徴点ごとに別個のベクトル場抽出画像を生成する手段と、
    前記2次元画像内の2つのピクセルの全ての組み合わせについての矢印が交差する交点を識別することにより、抽出された特徴点ごとにベクトル交差画像を生成する手段と、
    2つのピクセル及び前記交点の各組み合わせにおける各ピクセルからの距離に応じて、抽出された特徴点ごとに各交点にスコアを割り当てて、ピクセルの全ての組み合わせについてスコアのグリッドを生成する手段と、
    複数の集合した点から特徴配置を識別する点投票画像を、抽出された特徴点ごとに生成する手段と、
    を有するシステム。
  15. 前記可能性のある特徴点を抽出する手段、前記マスク画像を生成する手段、及び前記ベクトル場画像を生成する手段は、深層学習ニューラルネットワークである、請求項14に記載のシステム。
  16. 前記各交点にスコアを割り当てる手段は、前記ピクセルの勾配の大きさを使用する、請求項14に記載のシステム。
  17. 前記ピクセルと前記交点との間の距離が小さいほどスコアは高くなり、前記ピクセルでの勾配の大きさが大きいほどスコアは高くなる、請求項16に記載のシステム。
  18. 前記点投票画像を生成する手段は、複数の特徴配置についての点投票画像を結合する、請求項14に記載のシステム。
  19. 結合された前記点投票画像は、前記対象物の3次元ポーズの推定に使用される、請求項18に記載のシステム。
  20. 前記システムはロボット制御に使用され、前記対象物はロボットにピックアップされる、請求項14に記載のシステム。
JP2021062631A 2020-04-03 2021-04-01 深層学習及びベクトル場推定による特徴検出 Pending JP2021176078A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/839,346 2020-04-03
US16/839,346 US11554496B2 (en) 2020-04-03 2020-04-03 Feature detection by deep learning and vector field estimation

Publications (1)

Publication Number Publication Date
JP2021176078A true JP2021176078A (ja) 2021-11-04

Family

ID=77749824

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021062631A Pending JP2021176078A (ja) 2020-04-03 2021-04-01 深層学習及びベクトル場推定による特徴検出

Country Status (4)

Country Link
US (1) US11554496B2 (ja)
JP (1) JP2021176078A (ja)
CN (1) CN113496524A (ja)
DE (1) DE102021107351A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11436752B1 (en) 2021-04-30 2022-09-06 farm-ng Inc. Real time localization with image data
DE102021212860B4 (de) 2021-11-16 2024-05-08 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Aufnehmen eines Objekts mittels eines Roboters

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9142019B2 (en) * 2013-02-28 2015-09-22 Google Technology Holdings LLC System for 2D/3D spatial feature processing
US20150243035A1 (en) * 2014-02-21 2015-08-27 Metaio Gmbh Method and device for determining a transformation between an image coordinate system and an object coordinate system associated with an object of interest
US10102451B2 (en) * 2015-10-13 2018-10-16 Elekta, Inc. Pseudo-CT generation from MR data using tissue parameter estimation
WO2018107371A1 (zh) * 2016-12-13 2018-06-21 上海联影医疗科技有限公司 图像搜索系统及方法
US10424069B2 (en) * 2017-04-07 2019-09-24 Nvidia Corporation System and method for optical flow estimation
JP6950644B2 (ja) * 2018-08-10 2021-10-13 日本電信電話株式会社 注意対象推定装置及び注意対象推定方法
US11017542B2 (en) * 2018-12-21 2021-05-25 Beijing Voyager Technology Co., Ld. Systems and methods for determining depth information in two-dimensional images

Also Published As

Publication number Publication date
DE102021107351A1 (de) 2021-10-07
CN113496524A (zh) 2021-10-12
US20210308869A1 (en) 2021-10-07
US11554496B2 (en) 2023-01-17

Similar Documents

Publication Publication Date Title
US11475589B2 (en) 3D pose estimation by a 2D camera
Ahmed et al. A robust features-based person tracker for overhead views in industrial environment
Kiyokawa et al. Fully automated annotation with noise-masked visual markers for deep-learning-based object detection
CN113312973B (zh) 一种手势识别关键点特征提取方法及系统
JP2022047508A (ja) 複数の透明対象物の三次元検出
JP2021176078A (ja) 深層学習及びベクトル場推定による特徴検出
CN113370217B (zh) 基于深度学习的物体姿态识别和抓取的智能机器人的方法
JP2021163502A (ja) 複数の2次元カメラによる3次元の姿勢推定
JP6431404B2 (ja) 姿勢推定モデル生成装置及び姿勢推定装置
Höfer et al. Object detection and autoencoder-based 6d pose estimation for highly cluttered bin picking
Le Louedec et al. Segmentation and detection from organised 3D point clouds: A case study in broccoli head detection
JP5704909B2 (ja) 注目領域検出方法、注目領域検出装置、及びプログラム
US20220379475A1 (en) Transparent object bin picking
Rogelio et al. Object detection and segmentation using Deeplabv3 deep neural network for a portable X-ray source model
Mörwald et al. Advances in real-time object tracking: Extensions for robust object tracking with a Monte Carlo particle filter
Hansen et al. Soccer ball recognition and distance prediction using fuzzy Petri nets
Akizuki et al. ASM-Net: Category-level Pose and Shape Estimation Using Parametric Deformation.
Zhao et al. Cvml-pose: convolutional vae based multi-level network for object 3d pose estimation
Fang et al. Self-teaching strategy for learning to recognize novel objects in collaborative robots
Chowdhury et al. Comparison of neural network-based pose estimation approaches for mobile manipulation
Liang et al. Model-based 3d pose estimation for pick-and-place application
JP2022508434A (ja) 回転仮説を決定することによって画像を処理する方法及びシステム
Ćirić et al. CNN-Based Object Detection for Robot Grasping in Cluttered Environment
Hasan et al. 2D geometric object shapes detection and classification
US20230169324A1 (en) Use synthetic dataset to train robotic depalletizing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240307