(57)【要約】【課題】テクスチャなし物体の姿勢を推定するシステム及び方法が開示されている。【解決手段】テクスチャなし物体の姿勢を推定する方法は、処理装置により、テクスチャなし物体の単一の画像を取得するステップを含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。方法は、処理装置により、テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成するステップと、離散化レンダリングとの間における単一の画像のアライメントを得るべく、処理装置により、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせるステップと、処理装置により、アライメントに基づいてテクスチャなし物体の姿勢を推定するステップと、を更に有する。【選択図】図４
2019515364.tif 000002
【特許請求の範囲】
【請求項１】
テクスチャなし物体の姿勢を出力するシステムであって、
処理装置と、
一時的ではない、プロセッサ可読のストレージ媒体であって、１つ又は複数のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ又は複数のプログラミング命令は、実行された際に、前記処理装置が、
前記テクスチャなし物体の単一の画像を取得し、この場合に、前記テクスチャなし物体の前記姿勢は、前記単一の画像から推定され、
前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、この場合に、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有し、
マルチレベル照明不変ツリー構造を構築するべく、前記複数のハイレベルパッチのそれぞれのものを前記複数のローレベルパッチの少なくとも１つに対してリンクし、
前記離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、前記マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせ、且つ、
前記アライメントに基づいて、前記テクスチャなし物体の前記姿勢を出力する、
ようにする、システム。
【請求項２】
前記テクスチャなし物体の前記推定された姿勢に基づいて前記テクスチャなし物体を把持するロボット装置を更に有する、請求項１に記載のシステム。
【請求項３】
前記処理装置に通信自在に結合された１つ又は複数の撮像装置を更に有し、実行された際に、前記処理装置が、前記単一の画像を取得するようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、前記１つ又は複数の撮像装置から前記単一の画像を取得するようにする、請求項１に記載のシステム。
【請求項４】
前記１つ又は複数の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、且つ、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において異なる角度を有するように、方向付けされている、請求項３に記載のシステム。
【請求項５】
前記１つ又は複数の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において複数の異なる角度に対して連続的に再方向付けされるように、中心軸を中心として回転する、請求項３に記載のシステム。
【請求項６】
実行された際に、前記処理装置が、前記３次元モデルを生成するようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、
複数のテンプレートを取得するべく、前記テクスチャなし物体の周りにおいて、複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得し、且つ、
複数のパッチによって前記複数のテンプレートをベクトル化する、
ようにする、請求項１に記載のシステム。
【請求項７】
前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数１】
2019515364.tif 000056
ここで、ｐは、確率を表しており、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、それぞれ、前記複数のパッチのうちの１つのパッチの場所を表しており、且つ、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表している、請求項１に記載のシステム。
【請求項８】
前記子ｘ21の親ｘ11が付与された場合の子ｘ21の条件付き確率は、次式によって表され、
【数２】
2019515364.tif 000057
ここで、ｐ（ｘ21｜ｘ11）は、親ｘ11の場所ｘ11が付与された場合に前記子ｘ21の場所を知る事前確率を表しており、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表しており、且つ、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表している、請求項７に記載のシステム。
【請求項９】
実行された際に、前記処理装置が、前記単一の画像を前記離散化レンダリングとマッチングさせるようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、前記３次元モデルの回転及び平行運動をランダムサンプルコンセンサスを介して前記単一の画像にアライメントするようにする、請求項１に記載のシステム。
【請求項１０】
テクスチャなし物体の姿勢を出力する方法であって、
処理装置により、前記テクスチャなし物体の単一の画像を取得するステップであって、前記単一の画像は、前記テクスチャなし物体の前記姿勢を通知する、ステップと、
前記処理装置により、前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成するステップと、
離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、前記処理装置により、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせるステップと、
前記処理装置により、前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を出力するステップと、
を有する方法。
【請求項１１】
前記処理装置により、前記テクスチャなし物体の前記推定された姿勢に基づいて前記テクスチャなし物体を把持するように、ロボット装置を制御するステップを更に有する、請求項１０に記載の方法。
【請求項１２】
前記単一の画像を取得するステップは、前記処理装置に通信自在に結合された１つ又は複数の撮像装置から前記単一の画像を取得するステップを更に有する、請求項１０に記載の方法。
【請求項１３】
前記３次元モデルを生成するステップは、
複数のテンプレートを取得するべく、前記テクスチャなし物体の周りにおいて複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得するステップと、
複数のパッチによって前記複数のテンプレートをベクトル化するステップと、
を有する、請求項１０に記載の方法。
【請求項１４】
前記処理装置により、前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出するステップであって、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有するステップと、
前記マルチレベル照明不変ツリー構造を構築するべく、前記処理装置により、前記複数のハイレベルパッチのそれぞれのものを前記複数のローレベルパッチの少なくとも１つに対してリンクするステップと、
を更に有する、請求項１０に記載の方法。
【請求項１５】
前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数３】
2019515364.tif 000058
ここで、ｐは、確率を表しており、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、前記複数のパッチのうちの１つのパッチの場所を表しており、且つ、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表している、請求項１４に記載の方法。
【請求項１６】
子ｘ21の親ｘ11が付与された場合の前記子ｘ21の条件付き確率は、次式によって表され、
【数４】
2019515364.tif 000059
ここで、ｐ（ｘ21｜ｘ11）は、前記親ｘ11の場所ｘ11が付与された場合に前記子ｘ21の場所を知る事前確率を表しており、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表しており、且つ、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表している、請求項１５に記載の方法。
【請求項１７】
テクスチャなし物体の姿勢に基づいてロボット装置を制御するシステムであって、
処理装置と、
前記処理装置に通信自在に結合された１つ又は複数の撮像装置と、
前記処理装置に通信自在に結合された前記ロボット装置と、
前記テクスチャなし物体を支持するピッキング表面と、
一時的ではない、プロセッサ可読のストレージ媒体であって、１つ又は複数のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ又は複数のプログラミング命令は、実行された際に、前記処理装置が、
前記１つ又は複数の撮像装置のうちの少なくとも１つから前記テクスチャなし物体の単一の画像を取得し、前記単一画像は、前記テクスチャなし物体の前記姿勢を通知しており、
前記１つ又は複数の撮像装置によって生成された前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせ、
前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を推定し、且つ、
前記推定された姿勢に基づいて前記テクスチャなし物体を運動させると共に把持するように、前記ロボット装置を制御する、
ようにする、システム。
【請求項１８】
前記１つ又は複数の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、且つ、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持する前記ピッキング表面との関係において異なる角度を有するように、方向付けされている、請求項１７に記載のシステム。
【請求項１９】
前記１つ又は複数の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持する前記ピッキング表面との関係において複数の異なる角度に対して連続的に再方向付けされるように、中心軸を中心として回転する、請求項１７に記載のシステム。
【請求項２０】
実行された際に、前記処理装置が、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、この場合に、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有し、且つ、
前記マルチレベル照明不変ツリー構造を構築するべく、前記複数のハイレベルパッチのうちのそれぞれのパッチを前記複数のローレベルパッチの少なくとも１つにリンクする、
ようにする、１つ又は複数のプログラミング命令を更に有する、請求項１７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１６年２月２６日付けで出願されると共に「ＳＹＳＴＥＭＳ  ＡＮＤ  ＭＥＴＨＯＤＳ  ＦＯＲ  ＥＳＴＩＭＡＴＩＮＧ  ＰＯＳＥ  ＯＦ  ＴＥＸＴＵＲＥＬＥＳＳ  ＯＢＪＥＣＴＳ」という名称を有する米国特許出願第１５／０５４，７７３号の利益を主張するものであり、この特許文献のすべては、引用により、本明細書に包含される。
【０００２】
本明細書は、一般に、姿勢の推定に関し、且つ、更に詳しくは、テクスチャなし物体の場所及び位置決めを推定するべく、ロボット把持装置によって使用されるシステム及び方法に関する。
【背景技術】
【０００３】
物体の場所及び位置決めを判定するべく人工知能を使用するこれまでの試みは、ブロック、一般化円筒、及び変形可能な超二次曲線（ｓｕｐｅｒｑｕａｄｒａｔｉｃｓ）などの低レベルの基本要素の観点においてパラメータ化された３Ｄモデルを画像に対してアライメントするステップを含んでいた。このような試みの１つは、頂点及び面の３Ｄメッシュとして表された３Ｄモデルを画像に対してアライメントするステップを含んでいた。この試みは、ターゲット物体が低レベルの基本要素から構成されており、その画像が強力な勾配を有しており、且つ／又は基礎をなす３Ｄ形状が既知の３Ｄモデルと正確にマッチングするように、ターゲット物体が「クリーン」であるケースに限定されていた。この問題に対する解決策は、不変性を低レベルの特徴に対して提供することにより、画像の間の類似性を改善するべく、勾配のヒストグラムなどの表現の開発に合焦した方式を結果的にもたらした。但し、低レベル特徴の不変性は、正確なアライメントを不可能にしている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従って、物体の単一の画像内の物体に対する３Ｄモデルの正確なライメントを実行する完全に自動化された方式に対するニーズが存在している。
【課題を解決するための手段】
【０００５】
一実施形態においては、テクスチャなし物体の姿勢を出力するシステムは、処理装置と、一時的ではないプロセッサ可読ストレージ媒体と、を含む。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置がテクスチャなし物体の単一の画像を取得するようにする１つ又は複数のプログラミング命令を含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置が、テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成し、３次元モデルの複数の離散化レンダリングのそれぞれから、複数のハイレベルパッチ及び複数のローレベルパッチを有する、複数のパッチを抽出し、マルチレベル照明不変ツリー構造を構築するべく、複数のハイレベルパッチのそれぞれのパッチを複数のローレベルパッチのうちの少なくとも１つに対してリンクし、離散化レンダリングとの間における単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせ、且つ、アライメントに基づいてテクスチャなし物体の姿勢を出力するようにする１つ又は複数のプログラミング命令を更に含む。
【０００６】
別の実施形態においては、テクスチャなし物体の姿勢を推定する方法は、処理装置により、テクスチャなし物体の単一の画像を取得するステップを含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。方法は、処理装置により、テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成するステップと、離散化レンダリングとの間における単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせるステップと、処理装置により、アライメントに基づいてテクスチャなし物体の姿勢を推定するステップと、を更に含む。
【０００７】
更に別の実施形態においては、テクスチャなし物体の姿勢に基づいてロボット装置を制御するシステムは、処理装置と、処理装置に対して通信自在に結合された１つ又は複数の撮像装置と、処理装置に対して通信自在に結合されたロボット装置と、テクスチャなし物体を支持するピッキング表面と、一時的ではないプロセッサ可読ストレージ媒体と、を含む。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置が、１つ又は複数の撮像装置のうちの少なくとも１つからテクスチャなし物体の単一の画像を取得するようにする１つ又は複数のプログラミング命令を含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置が、１つ又は複数の撮像装置によって生成されたテクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成し、離散化レンダリングとの間における単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせ、アライメントに基づいてテクスチャなし物体の姿勢を推定し、且つ、推定された姿勢に基づいてテクスチャなし物体を運動させると共にこれを把持するようにロボット装置を制御するようにする１つ又は複数のプログラミング命令を更に含む。
【０００８】
本明細書において記述されている実施形態によって提供されるこれらの及び更なる特徴については、図面との関連において、以下の詳細な説明を参照することにより、更に十分に理解することができよう。
【０００９】
図面において示されている実施形態は、例であり、その特性が例示を目的としており、且つ、請求項によって定義されている主題の限定を意図したものではない。例示用の実施形態に関する以下の詳細な説明については、同一の構造が同一の参照符号によって示されている以下の図面との関連において参照された際に、理解することができる。
【図面の簡単な説明】
【００１０】
【図１】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するシステム用の例示用の演算ネットワークを概略的に示す。
【図２Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するべく使用される演算装置の例示用のハードウェアのブロックダイアグラムを概略的に示す。
【図２Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するべく使用される演算装置のメモリ内に含まれているソフトウェアモジュールのブロックダイアグラムを概略的に示す。
【図２Ｃ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するべく使用される演算装置のデータストレージコンポーネント内に含まれている様々なデータのブロックダイアグラムを概略的に示す。
【図３Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体を含む例示用のピッキング表面を概略的に示す。
【図３Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体を含む別の例示用のピッキング表面を概略的に示す。
【図４】本明細書において図示及び記述されている１つ又は複数の実施形態による撮像装置によって取得されたテクスチャなし物体の複数の視点及びスケールを概略的に示す。
【図５Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態による試験フェーズ及びトレーニングフェーズを完了させる例示用の方法の概略フロー図を示す。
【図５Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態による推定フェーズを完了させる例示用の方法のフロー図を示す。
【図６】本明細書において図示及び記述されている１つ又は複数の実施形態によるトレーニングフェーズを完了させる例示用の方法のフロー図を示す。
【図７】本明細書において図示及び記述されている１つ又は複数の実施形態による試験フェーズを完了させる例示用の方法のフロー図を示す。
【図８Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態による様々な標準偏差におけるキャプチャ画像の例示用のマルチレベルガウシアン・ラプラシアン（Ｌａｐｌａｃｉａｎ  ｏｆ  Ｇａｕｓｓｉａｎ：ＬｏＧ）表現を示す。
【図８Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態による様々な地点場所においてセンタリングされたガウスシアン・ラプラシアン（ＬｏＧ）表現からの様々なサイズの例示用の複数の抽出パッチを示す。
【図８Ｃ】本明細書において図示及び記述されている１つ又は複数の実施形態による画像の例示用のパラレルマルチレベルガウシアン・ラプラシアン（ＬｏＧ）表現を示す。
【図９】本明細書において図示及び記述されている１つ又は複数の実施形態による複数の例示用のマップを示す。
【図１０】本明細書において図示及び記述されている１つ又は複数の実施形態による粗から微細へのアライメントを提供する例示用の方法のフロー図を示す。
【図１１】本明細書において図示及び記述されている１つ又は複数の実施形態による物体の画像用の３Ｄモデルの複数の例示用のアライメントを示す。
【図１２】本明細書において図示及び記述されている１つ又は複数の実施形態による回転及び平行運動における例示用の平均二乗誤差（ＭＳＥ：Ｍｅａｎ  Ｓｑｕａｒｅｄ  Ｅｒｒｏｒ）／物体対方位角、仰角、及び面内回転のヒストグラムを示す。
【図１３】本明細書において図示及び記述されている１つ又は複数の実施形態による例示用の平均二乗回転及び平行運動誤差対最良マッチングレンダリングからの方位角における偏差のヒストグラムを示す。
【発明を実施するための形態】
【００１１】
本明細書において記述されている実施形態は、一般に、テクスチャなし物体の姿勢を推定するシステム及び方法を対象としている。物体の姿勢の推定は、ロボットピッキング装置又はこれに類似したものなどの、ロボット装置が、物体を落下させる、物体の取扱いを誤る、且つ／又は、物体を損傷する、ことなしに、物体を正確に把持及び操作しうるように、必要とされる。
【００１２】
本明細書において使用されている「テクスチャなし物体」は、物体の姿勢を判定するべく、姿勢推定システムによって従来使用されている、表面特徴を実質的に欠いている任意の物体を意味している。例えば、テクスチャなし物体は、滑らかな表面、丸められた表面、なんらの弁別マーキングをも含んでいない表面、及び／又は、これらに類似したもの、を有する物体を含みうる。従って、既存の姿勢推定システム及び方法は、テクスチャなし物体の位置決めを判定することができず、その理由は、テクスチャなし物体が、推定に必要とされる特定の基準点を欠いているからである。いくつかの実施形態においては、テクスチャなし物体は、ロボット装置によって選択される、ロボット装置によって把持される、且つ／又は、ロボット装置によって操作されると共に運動させられる、物体であってもよい。例示用のテクスチャなし物体は、限定を伴うことなしに、テクスチャなし自動車コンポーネント及び／又はこれに類似したものを含みうる。
【００１３】
本明細書において記述されている姿勢を推定する方式は、３Ｄモデルの周りにおける姿勢の空間を高密度でサンプリングすることにより、テクスチャなし物体の３Ｄモデルを物体の単一の画像に対してアライメントするステップを含む。姿勢の空間には、複数の視点及びスケールから３Ｄモデルをレンダリングすることによって入力される。照明に対する不変性を保持しつつ、離散化レンダリングを正確にマッチングさせるべく、マルチレベル照明不変ツリー構造が提示される。マルチレベル照明不変ツリー構造は、画像内の様々な分解能のレベルにおいていくつかのパッチの場所を同時に推定するべく、動的プログラミングの活用を許容している。パッチの場所の同時特定は、最良マッチング視点を取得するべく、且つ、画像に対する３Ｄモデルの正確なアライメントを得るべく、ハイレベルパッチの弁別性及びローレベルパッチの精度の活用を許容している。
【００１４】
本明細書において開示されているシステム及び方法は、複数ＲＧＢ−Ｄ物体姿勢推定の検出に基づいた方式の速度及びスケーラビリティを向上させることができる。例えば、本明細書において開示されているいくつかの実施形態においては、システム及び方法は、２３フレーム／秒において３２０×２４０画像内において１５個の物体の姿勢を推定することができるが、この場合に、それぞれの物体は、６００個の視点及び１２個のスケールによってサンプリングされたテンプレートを有する。本明細書において記述されているシステム及び方法は、サブリニアな実行時増大により、物体の数を増大させることができる。
【００１５】
本明細書において使用されている「姿勢」は、一般に、撮像装置によって取得された画像から姿勢情報として抽出可能であるテクスチャなし物体の位置の場所を通知する情報を含む、撮像装置によって観察された際にテクスチャなし物体が撮像装置に対して現れる方式を意味している。即ち、姿勢は、例えば、物体を支持している表面、ロボット装置、テクスチャなし物体に隣接しているその他のテクスチャなし物体、様々な撮像装置、表面の境界、及び／又はこれらに類似したものなどの、その他の物体との関係におけるテクスチャなし物体の場所及び位置決めを意味しうる。
【００１６】
本明細書において使用されている「パッチ」は、特定の形状の単一のセクション又は最小表面要素を意味している。従って、特定の形状は、１つ又は複数のパッチに対応しうる。従って、３Ｄメッシュが三角形から構成されている場合には、パッチは、小さな三角形の地理的エリアに対応しうる。形状片の鏡面性をそれぞれの個々の三角形又はパッチごとに判定することができる。いくつかの実施形態においては、パッチは、３Ｄメッシュの三角形又は多角形の集合体を意味しうる。これに加えて、メッシュの三角形は、最長エッジ二等分及びエッジ崩壊動作を反復することにより、小さなサイズの、一般的には均一に成形された、三角形パッチに再構成することもできる。
【００１７】
次に図面を参照すれば、図１は、本明細書において図示及び記述されている実施形態によるテクスチャなし物体の姿勢を推定するシステム用のコンポーネントを示す例示用の演算ネットワークを示している。図１に示されているように、コンピュータネットワーク１００は、インターネットなどのワイドエリアネットワーク（ＷＡＮ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ローカルエリアネットワーク（ＬＡＮ：Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、モバイル通信ネットワーク、公共サービス電話ネットワーク（ＰＳＴＮ：Ｐｕｂｌｉｃ  Ｓｅｒｖｉｃｅ  Ｔｅｌｅｐｈｏｎｅ  Ｎｅｔｗｏｒｋ）、パーソナルエリアネットワーク（ＰＡＮ：Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、メトロポリタンエリアネットワーク（ＭＡＮ：Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、仮想プライベートネットワーク（ＶＰＮ：Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｏｗｋ）、及び／又は別のネットワークを含みうる。コンピュータネットワーク１００は、一般に、１つ又は複数の演算装置及び／又はそのコンポーネント、１つ又は複数の撮像装置、並びに／或いは、１つ又は複数のロボット装置を電子的に接続するように構成されていてもよい。例示用の演算装置は、限定を伴うことなしに、ユーザー演算装置２００と、サーバー演算装置１５０と、を含むことができる。例示用の撮像装置は、限定を伴うことなしに、本明細書において更に詳細に記述されているように、テクスチャなし物体の１つ又は複数の画像をキャプチャするように構成された撮像装置３０５を含むことができる。例示用のロボット装置は、限定を伴うことなしに、本明細書において更に詳細に記述されているように、ロボットピッキング装置又はこれに類似したものなどの、テクスチャなし物体を効果的に把持、操作、及び／又は運動させることを許容する位置に運動するように構成されたロボット装置３００を含むことができる。本明細書において更に記述されているように、ロボット装置３００及び撮像装置３０５は、別個の装置であってもよく、或いは、単一の装置に統合されていてもよい。
【００１８】
ユーザー演算装置２００は、一般に、ユーザーとコンピュータネットワーク１００に接続されたその他のコンポーネントの間のインターフェイスとして使用されてもよい。従って、ユーザー演算装置２００は、ユーザーから１つ又は複数の入力を受け取る、或いは、情報をユーザーに提供する、などの、１つ又は複数のユーザーとの間のやり取り機能を実行するべく、使用されてもよい。これに加えて、サーバー演算装置１５０が、監視、更新、又は補正を必要としている場合には、ユーザー演算装置２００は、望ましい監視、更新、及び／又は補正を提供するように構成されてもよい。又、ユーザー演算装置２００は、更なるデータをサーバー演算装置１５０のデータストレージ部分に入力するべく、使用されてもよい。
【００１９】
サーバー演算装置１５０は、１つ又は複数の供給源（例えば、撮像装置３０５及び／又は１つ又は複数のデータベース）から電子データ及び／又はこれに類似したものを受け取ってもよく、受け取った電子データに基づいて１つ又は複数のテクスチャなし物体の姿勢を判定してもよく、且つ／又は、運動するように、コンピュータネットワーク１００に接続された様々なコンポーネントを制御してもよい。例えば、サーバー演算装置１５０は、本明細書において更に詳細に記述されているように、テクスチャなし物体との関係において運動するように、撮像装置３０５を制御してもよく、テクスチャなし物体にズームイン又はズームアウトするように、撮像装置３０５を制御してもよく、テクスチャなし物体との関係において運動すると共に／又はテクスチャなし物体を把持するように、ロボット装置３００を制御してもよい。
【００２０】
ユーザー演算装置２００は、パーソナルコンピュータとして示されており、且つ、サーバー演算装置１５０は、サーバーとして示されているが、これらは、非限定的な例であることを理解されたい。更に詳しくは、いくつかの実施形態においては、任意のタイプの演算装置（例えば、モバイル演算装置、パーソナルコンピュータ、サーバーなど）が、これらのコンポーネントのうちのいずれかのために、使用されてもよい。これに加えて、図１には、これらの演算装置のそれぞれが単一片のハードウェアとして示されているが、これも、一例であるに過ぎない。更に詳しくは、ユーザー演算装置２００及びサーバー演算装置１５０のそれぞれは、複数のコンピュータ、サーバー、データベース、コンポーネント、及び／又はこれらに類似したものを表しうる。
【００２１】
これに加えて、本明細書において示されている実施形態は、演算装置のネットワークを参照しているが、本開示は、このようなネットワークにのみ限定されるものではないことを理解されたい。例えば、いくつかの実施形態においては、本明細書において記述されている様々なプロセスは、本明細書において記述されている様々なプロセスを完了させるためにネットワークを使用しない非ネットワーク接続型の演算装置又はネットワーク接続型の演算装置などの、単一の演算装置によって完了されてもよい。
【００２２】
図２Ａには、ユーザー演算装置２００及び／又はサーバー演算装置１５０の例示用のハードウェアコンポーネントが示されている。バス２０１は、様々なコンポーネントを相互接続することができる。コンピュータ処理ユニット（ＣＰＵ：Ｃｏｍｐｕｔｅｒ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの、処理装置２０５は、プログラムを実行するべく必要とされる計算及び論理動作を実行する、演算装置の中央処理ユニットであってもよい。例示用の処理装置、演算装置、プロセッサ、又はこれらの組合せなどの用語が本開示において使用されている際には、処理装置２０５が、単独で、或いは、図２に開示されているその他の要素のうちの１つ又は複数との関連において、例示用の処理装置であり、演算装置であり、プロセッサであり、或いは、これらの組合せである。読み出し専用メモリ（ＲＯＭ：Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）及びランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの、メモリ２１０が、例示用のメモリ装置（即ち、一時的ではないプロセッサ可読ストレージ媒体）を構成することができる。このようなメモリ２１０は、処理装置２０５によって実行された際に、処理装置２０５が、本明細書において記述されているプロセスなどの、様々なプロセスを完了させるようにする１つ又は複数のプログラミング命令をその上部において含むことができる。任意選択により、プログラム命令は、コンパクトディスク、デジタルディスク、フラッシュメモリ、メモリカード、ＵＳＢドライブ、Ｂｌｕ−ｒａｙ（商標）ディスクなどの光ディスクストレージ媒体、及び／又は、その他の一時的ではないプロセッサ可読ストレージ媒体などの、有体のコンピュータ可読媒体上において保存されてもよい。
【００２３】
いくつかの実施形態においては、メモリ２１０上において含まれているプログラム命令は、複数のソフトウェアモジュールとして実施されてもよく、この場合に、それぞれのモジュールは、１つ又は複数のタスクを完了させるためのプログラミング命令を提供している。例えば、図２Ｂに示されているように、メモリ２１０は、動作ロジック２１２、トレーニングロジック２１４、及び／又は試験ロジック２１６を含むことができる。動作ロジック２１２は、オペレーティングシステム及び／又は演算装置のコンポーネントを管理するためのその他のソフトウェアを含むことができる。トレーニングロジック２１４は、１つ又は複数のテクスチャなし物体の姿勢を認識するべく、演算装置をトレーニングするための１つ又は複数のソフトウェアモジュールを含むことができる。試験ロジック２１６は、演算装置のトレーニングの精度を検証し、これにより、演算装置が、テクスチャなし物体の姿勢を正確に判定し、且つ／又は、適切なコマンドを、例えば、ロボット装置３００などの、コンピュータネットワーク１００の様々なその他のコンポーネント（図１）に送信することを保証するべく、演算装置のトレーニングを試験するための１つ又は複数のソフトウェアモジュールを含むことができる。
【００２４】
図２Ａを再度参照すれば、一般には、本明細書において記述されているように、メモリ２１０とは別個であるストレージ媒体でありうる、ストレージ装置２５０は、トレーニングデータ及び／又は試験データを含む、物体の姿勢を推定するべく使用されるデータを保存するためのデータリポジトリを含むことができる。ストレージ装置２５０は、限定を伴うことなしに、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、メモリ、着脱自在のストレージ、及び／又はこれらに類似したものを含む、任意の物理的ストレージ媒体であってもよい。ストレージ装置２５０は、ローカル装置として示されているが、ストレージ装置２５０は、例えば、サーバー演算装置又はこれに類したものなどの、リモートストレージ装置でありうることを理解されたい。
【００２５】
図２Ｃには、ストレージ装置２５０に含まれうる例示用のデータが示されている。図２Ｃに示されているように、ストレージ装置２５０は、例えば、画像データ２５２、トレーニングデータ２５４、及び／又は試験データ２５６を含みうる。画像データ２５２は、例えば、テクスチャなし物体の姿勢を判定する際に基準として使用されうる既知のテクスチャなし物体のサンプル画像、収集されると共にテクスチャなし物体の姿勢を判定するべく後から使用されるターゲットテクスチャなし物体の画像、及び／又はこれらに類似したものを含みうる。トレーニングデータ２５４は、例えば、本明細書において更に詳細に記述されているように、テクスチャなし物体の姿勢を認識するための演算装置のトレーニングに関係するデータを含みうる。試験データ２５６は、例えば、本明細書において更に詳細に記述されているように、演算装置がテクスチャなし物体の姿勢を正確に認識することを保証する際の演算装置の試験に関係するデータを含みうる。
【００２６】
再度図２Ａを参照すれば、任意選択のユーザーインターフェイス２２０は、バス２０１からの情報が、オーディオ、ビジュアル、グラフィック、又は英数フォーマットにおいて、演算装置のディスプレイ２２５部分上において表示されることを許容することができる。更には、ユーザーインターフェイス２２０は、キーボード、マウス、ジョイスティック、タッチスクリーン、リモートコントロール、ポインティング装置、ビデオ入力装置、オーディオ入力装置、触覚フィードバック装置、及び／又はこれらに類似したものなどの、入力装置へのデータの送信又はこれらからのデータの受信を許容する１つ又は複数の入力２３０をも含みうる。このようなユーザーインターフェイス２２０は、例えば、ユーザーが演算装置又はその任意のコンポーネントとの間においてやり取りすることを許容するべく、使用されてもよい。
【００２７】
システムインターフェイス２３５は、一般に、例えば、ロボット装置３００及び／又は撮像装置３０５などの、コンピュータネットワーク１００（図１）のコンポーネントの１つ又は複数との間においてインターフェイスするための能力を演算装置に提供することができる。このようなコンポーネントとの間における通信は、様々な通信ポート（図示されてはいない）を使用することにより、実行することができる。例示用の通信ポートは、インターネット、イントラネット、ローカルネットワーク、直接接続、及び／又はこれらに類似したものなどの、通信ネットワークに対して装着することができる。
【００２８】
通信インターフェイス２４５は、一般に、例えば、外部演算装置、リモートサーバー、及び／又はこれらに類似したものなどの、１つ又は複数の外部コンポーネントとインターフェイスするための能力を演算装置に提供することができる。外部装置との間における通信は、（図示されてはいない）様々な通信ポートを使用することにより、実行することができる。例示用の通信ポートは、インターネット、イントラネット、ローカルネットワーク、直接接続、及び／又はこれらに類似したものなどの、通信ネットワークに対して装着することができる。
【００２９】
図２Ａ〜図２Ｃにおいて示されているコンポーネントは、例示を目的としたものに過ぎず、且つ、本開示の範囲の限定を意図したものではないことを理解されたい。更に詳しくは、図２Ａ〜図２Ｃのコンポーネントは、サーバー演算装置１５０又はユーザー演算装置２００内に存在するものとして示されているが、これらは、非限定的な例である。いくつかの実施形態においては、コンポーネントのうちの１つ又は複数は、サーバー演算装置１５０及び／又はユーザー演算装置の外に存在することができる。同様に、コンポーネントのうちの１つ又は複数は、本明細書において具体的に記述されてはいないその他の演算装置内において実施されてもよい。
【００３０】
図３Ａ及び図３Ｂは、１つ又は複数のテクスチャなし物体をサポートする例示用のピッキング表面を示している。ピッキング表面３１０は、ロボット装置３００がピッキング表面３１０上において配置された任意の物体に到達しうるように、ロボット装置３００に隣接していてもよい。ピッキング表面３１０は、作業表面又はこれに類似したものなどの、任意の表面であってもよい。ピッキング表面３１０は、テクスチャなし物体３１５が、ピッキング表面３１０から落下しないように、その上部における１つ又は複数のテクスチャなし物体３１０の配置をサポートするように構成されていてもよい。従って、いくつかの実施形態においては、ピッキング表面３１０は、水平方向であってもよく、且つ、ピッキング表面３１０の１つ又は複数のエッジは、テクスチャなし物体がピッキング表面３１０のエッジから落下することを防止する、唇、隆起、壁、又はこれらに類似したものを含むことができる。ピッキング表面３１０の寸法は、本開示によって限定されるものではなく、一般には、ロボット装置３００の少なくとも一部分が、その１つ又は複数のエッジのそれぞれを含む、ピッキング表面３１０のすべての部分に到達しうるように、サイズ設定及び成形することができる。
【００３１】
１つ又は複数の撮像装置３０５は、本開示によって限定されるものではなく、且つ、そのそれぞれは、一般には、画像をキャプチャする任意の装置であってもよい。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、カメラ、キャムコーダ、又はこれらに類似したものであってもよく、且つ、１つ又は複数の画像センサ、１つ又は複数の画像プロセッサ、１つ又は複数の光学要素、及び／又はこれらに類似したものを内蔵することができる。１つ又は複数の撮像装置３０５のそれぞれは、ズームイン及びアウトする能力を有していてもよく、且つ、更には、例えば、パン、チルト、及び／又はこれらに類似したものなどの、運動する能力を更に有することもできる。
【００３２】
撮像装置３０５の数は、本開示によって限定されるものではなく、且つ、一般には、任意の数の撮像装置３０５を含みうる。例えば、図３Ａに示されているように、複数の撮像装置３０５が、ピッキング表面３１０及び／又はその上部において支持されている１つ又は複数のテクスチャなし物体３１５をキャプチャするように使用されてもよい。別の例においては、図３Ｂにおいて示されているように、単一の撮像装置３０５が、ピッキング表面３１０及び／又はその上部において支持されている１つ又は複数のテクスチャなし物体３１５をキャプチャするように、使用されてもよい。
【００３３】
様々な実施形態においては、１つ又は複数の撮像装置３０５は、ピッキング表面３１０に隣接した状態において位置決めされてもよい。１つ又は複数の撮像装置３０５は、一般に、１つ又は複数の撮像装置３０５のうちのそれぞれの撮像装置の視野が、１つ又は複数のテクスチャなし物体３１５などの、その上部において配置されている任意の物体を含む、ピッキング表面３１０の少なくとも一部分をキャプチャするように、位置決めされてもよい。例えば、（図３Ａに示されているように）１つ又は複数の撮像装置３０５が複数の撮像装置である実施形態においては、複数の撮像装置のそれぞれが、その独自の光軸を有する。これに加えて、それぞれの個々の撮像装置は、それぞれの個々の光軸がピッキング表面３１０との関係において異なる角度を有するように、方向付けされている。別の例においては、（図３Ｂに示されているように）１つ又は複数の撮像装置３０５が単一の撮像装置である実施形態においては、撮像装置は、光軸を有していてもよく、且つ、撮像装置の運動（例えば、回転）により、光軸は、ピッキング表面３１０との関係において複数の異なる角度において連続的に再方向付けされている。
【００３４】
１つ又は複数の撮像装置３０５は、本明細書において記述されているように、ピッキング表面３１０を撮像する能力を撮像装置に対して提供する任意の静止した又は運動する装置に取り付けられてもよい。例えば、図３Ｂにおいて具体的に示されているように、撮像装置３０５は、撮像装置３０５がピッキング表面３１０の任意の角度をキャプチャしうるように、撮像装置３０５が、（破線によって示されているように）ピッキング表面３１０の周りにおいて中心軸Ａを中心として運動することを許容する、アーム又はその他の支持部（図示されてはいない）に対して結合されてもよい。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、１つ又は複数のテクスチャなし物体３１５などの、物体の運動を追跡するように、構成されていてもよい。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のうちのそれぞれの撮像装置の運動は、ユーザーによって遠隔制御されていてもよい。
【００３５】
次に図４を参照すれば、１つ又は複数の撮像装置３０５は、複数の異なる視点４０５ａ〜４０５ｈ（集合的に、４０５）においてテクスチャなし物体３１５の画像をキャプチャするように、構成されていてもよい。１つ又は複数の撮像装置３０５は、ピッキング表面３１０上において配置される前に、或いは、ピッキング表面３１０上において配置された後に、テクスチャなし物体３１５の画像をキャプチャすることができる。いくつかの実施形態においては、様々な視点４０５は、（例えば、図３Ｂに示されているように）それぞれの視点４０５ａ〜４０５ｈをキャプチャするべくテクスチャなし物体３１５を中心として回転する単一の撮像装置３０５から取得されてもよい。その他の実施形態においては、様々な視点４０５は、（例えば、図３Ａに示されているように）それぞれの視点４０５ａ〜４０５ｈをキャプチャするべく、テクスチャなし物体の周りにおいて位置決めされた複数の撮像装置３０５から取得されてもよい。図４は、８つの異なる視点４０５を示しているが、視点４０５の数は、本開示によって限定されるものではなく、且つ、一般には、本明細書において更に詳細に記述するように、画像データをキャプチャすると共にテクスチャなし物体の姿勢を判定するために十分な任意の数の視点であってよい。
【００３６】
又、複数の視点４０５に加えて、１つ又は複数の撮像装置３０５は、それぞれの視点４０５ａ〜４０５ｈにおいてテクスチャなし物体３１５の複数のスケールをキャプチャするように構成されていてもよい。スケールは、一般に、テクスチャなし物体の全体がそれぞれのズームにおいて可視状態にある場合に、テクスチャなし物体３１５の「ズームイン」又は「ズームアウト」されたキャプチャを意味している。即ち、それぞれのスケールは、それぞれの視点４０５ａ〜４０５ｈにおけるキャプチャ画像の特定の倍率レベルを表しうる。例えば、ズームレンズ又はこれに類似したものなどの、１つ又は複数の撮像装置３０５のうちのそれぞれの撮像装置の光学部分を使用することにより、様々な倍率レベルを取得することができる。例えば、１つ又は複数の撮像装置３０５は、それぞれの視点４０５ａ〜４０５ｈにおいて、１×倍率における第１スケール４１０ａ〜４１０ｈをキャプチャしてもよく、２×倍率における第２スケール４１５ａ〜４１５ｈをキャプチャしてもよく、且つ、３×倍率における第３スケール４２０ａ〜４２０ｈをキャプチャしてもよい。本明細書において記述されているそれぞれのスケールにおける倍率の値は、例示を目的としたものに過ぎず、且つ、本開示の範囲を逸脱することなしに、任意の倍率を使用できることを理解されたい。
【００３７】
図３Ａ及び図３Ｂを再度参照すれば、いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、画像を連続的にキャプチャしてもよく（例えば、「バーストモード」キャプチャ）、特定のインターバルにおいて単一の画像をキャプチャしてもよく、且つ／又は、モーション画像をキャプチャしてもよい（例えば、ビデオキャプチャ）。画像が特定のインターバルにおいてキャプチャされる実施形態においては、例示用のインターバルは、限定を伴うことなしに、１秒ごと、２秒ごと、３秒ごと、４秒ごと、又はこれらに類似したものを含みうる。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、例えば、図１に示されているサーバー演算装置１５０及び／又はユーザー演算装置２００などの、演算装置によって制御された際には常に、画像をキャプチャすることができる。１つ又は複数の撮像装置３０５のそれぞれの撮像装置によってキャプチャされた画像データは、一般に、例えば、図１に示されているサーバー演算装置１５０及び／又はユーザー演算装置２００などの、演算装置に送信されてもよい。画像データは、演算装置（例えば、図１のサーバー演算装置１５０及び／又はユーザー演算装置２００）が、本明細書において更に詳細に記述されているように、画像からテクスチャなし物体３１５の姿勢を判定しうるようなものであってよい。これに加えて、１つ又は複数の撮像装置３０５のそれぞれによってキャプチャされた画像データは、ストレージ装置２５０（図２Ａ）などの、ストレージ媒体内において保存されてもよい。
【００３８】
ロボット装置３００は、本開示によって限定されるものではなく、且つ、一般には、ロボットピッキング装置又はこれに類似したものなどの、運動する、物体を把持する、物体を運動させる、物体を操作する、且つ／又は、これらに類似した内容を実行する、能力を有する、且つ、これらを実行するべく制御されるように構成された、任意のロボット装置であってもよい。例えば、ロボット装置３００は、任意の方向において運動可能であり、且つ、延伸及び退却が可能でもある、アームを有することができる。これに加えて、ロボット装置３００は、ロボット装置３００が物体を把持することを許容する複数の指を含む手又はこれに類似したものを有することもできる。従って、ロボット装置３００は、任意の数の固定部材、延長部材、結合部、運動可能なコンポーネント、及び／又はこれらに類似したものを含みうる。又、ロボット装置３００は、モーター、ソレノイド、液圧システム、ガス圧システム、圧電システム、及び／又はこれらに類似したものなどの、ロボット装置３００を運動させるように構成された１つ又は複数の装置をも含みうる。いくつかの実施形態においては、ロボット装置３００は、１つ又は複数のステップモーターを含んでいてもよく、これらは、特定の増分におけるロボット装置３００の正確な運動を許容することにより、ロボット装置３００の正確な制御を許容することができる。これに加えて、ロボット装置３００は、本明細書において更に詳細に記述されているように、その様々なコンポーネント及び／又は１つ又は複数の演算装置の間の通信のための１つ又は複数の装置を含むこともできる。このような通信装置は、ロボット装置３００及び／又はそのコンポーネントの運動を制御する制御信号を受け取ることができる。
【００３９】
様々な実施形態においては、ロボット装置３００は、例えば、アーム本体セグメント、ロボットハンド、結合部、ベース部分、及び／又はこれらに類似したものなどの、その一部分に装着された１つ又は複数のセンサを含んでいてもよい。１つ又は複数のセンサは、一般には、ロボット装置３００と別の物体の間の接触を検知するように構成されていてもよい。例えば、いくつかの実施形態においては、１つ又は複数のセンサは、ロボット装置３００とテクスチャなし物体３１５の間の接触を検知することができる。特定の実施形態においては、１つ又は複数のセンサは、ロボット装置３００とテクスチャなし物体３１５の間の接触の正確な場所を検知するように構成されていてもよい。このような接触の正確な場所は、本明細書において更に詳細に記述されているように、テクスチャなし物体３１５の姿勢との関連において更なる情報を提供しうる。１つ又は複数のセンサは、一般に、任意のセンサであってもよく、具体的には、物体接触を検知するように構成されたセンサであってもよい。従って、いくつかの実施形態においては、１つ又は複数のセンサは、タッチセンサ、赤外線センサ、光センサ、レーザー検知装置、及び／又はこれらに類似したもののうちの１つ又は複数を含んでいてもよい。タッチセンサは、一般に、ロボット装置３００とテクスチャなし物体３１５の間の接触によって生成される圧力を検知するように構成されたセンサであってもよい。光センサは、テクスチャなし物体３１５がロボット装置３００と接触した際に、その視野内においてテクスチャなし物体３１５を検出するように構成された光ダイオード又はこれに類似したものであってもよい。いくつかの実施形態においては、１つ又は複数のセンサは、一般的に使用されている、容易に入手可能である、且つ、複雑なコンポーネント及び保守を必要としていない、タイプのセンサであってよい。
【００４０】
一般に、図３Ａ及び図３Ｂに示されているロボット装置３００は、例示を目的としたものに過ぎないことを理解されたい。従って、ロボット装置３００は、本開示の範囲を逸脱することなし、任意のタイプのロボット装置又は類似の装置を含みうる。従って、当業者は、本明細書において開示されているロボット装置３００に類似した方式によって機能するその他のロボット装置及び類似の装置を認識するであろう。更には、本開示は、更なる又は代替コンポーネント及び機能を含むロボット装置及び類似の装置をも含みうる。
【００４１】
いくつかの実施形態においては、ロボット装置３００及び１つ又は複数の撮像装置３０５は、単一のコンポーネント内に統合されていてもよい。即ち、ロボット装置３００及び撮像装置３０５は、本明細書において記述されているように、テクスチャなし物体３１５の撮像と、テクスチャなし物体３１５の把持、運動、及び操作と、の両方のために使用される単一のユニットを構成していてもよい。その他の実施形態においては、ロボット装置３００及び１つ又は複数の撮像装置３０５は、図３Ａ及び図３Ｂにおいて示されているように、その独自の別個の機能をそれぞれが有する、互いに別個のコンポーネントであってもよい。
【００４２】
ロボット装置３００及び撮像装置３０５は、一般に、テクスチャなし物体３１５の姿勢を推定すると共にテクスチャなし物体３１５を操作することを目的として、タンデム方式で機能することができる。例えば、撮像装置３０５は、ロボット装置３００がテクスチャなし物体３１５を操作する前に、テクスチャなし物体３１５の姿勢の判定のために（即ち、操作の前に、ロボット装置３００の位置決めについて正確な判定が実施されうるように）、テクスチャなし物体３１５の画像をキャプチャすることができる。別の例においては、撮像装置３０５は、ロボット装置３００がテクスチャなし物体３１５を誤った方式で操作しないことを保証するべく、且つ／又は、テクスチャなし物体３１５の操作の際にロボット装置３００を補正するべく、テクスチャなし物体３１５が姿勢について監視されうるように、ロボット装置３００によるその操作の際に、テクスチャなし物体３１５の画像を連続的にキャプチャすることができる。
【００４３】
図５Ａにおいて示されているように、演算装置（例えば、図１のサーバー演算装置１５０及び／又はユーザー演算装置２００）によって実行されうる方法は、一般に、トレーニングフェーズ５１０及び試験フェーズ５１５を含む推定フェーズ５０５を含むことができる。本明細書においては、一般に、図５Ｂとの関係において、推定フェーズ５０５について説明する。本明細書においては、一般に、図６との関係において、トレーニングフェーズについて説明し、且つ、本明細書においては、図７との関係において、試験フェーズについて説明する。いくつかの実施形態においては、トレーニングフェーズ５１０は、トレーニングロジック２１４（図２Ｂ）に含まれている１つ又は複数の命令によって完了させることができる。いくつかの実施形態においては、試験フェーズ５１５は、試験ロジック２１６（図２Ｂ）に含まれている１つ又は複数の命令によって完了させることができる。
【００４４】
図５Ｂを参照すれば、推定フェーズは、ステップ５１６において、テクスチャなし物体の単一の画像を取得するステップを含むことができる。テクスチャなし物体の姿勢は、単一の画像から推定することができる。例えば、姿勢が本明細書において記述されているように推定された際に、テクスチャなし物体を正確にピックアップし、テクスチャなし物体を操作し、テクスチャなし物体を運動させ、且つ／又はこれらに類似した内容を実行するべく、移動するために、推定を使用してロボット装置３００に命令を送信することができるように、ロボット装置３００（図１）の観点から、単一の画像を取得することができる。
【００４５】
ステップ５１８において、テクスチャなし物体の３次元（３Ｄ）モデルを生成（レンダリング）することができる。本明細書においては、３次元モデルのレンダリングに関する更なる詳細は、トレーニングフェーズの一部分として、図６との関係において説明することとする。
【００４６】
ステップ５２０において、ステップ５１６において取得された単一の画像が、ステップ５１８において生成された３Ｄモデルの離散化レンダリングとマッチングされている。３次元モデルに関する更なる詳細については、試験フェーズの一部分として、少なくとも図７との関係において説明することとする。マッチングステップの結果として、離散化レンダリングとの間における単一の画像のアライメントを得ることができる。
【００４７】
ステップ５２２によって示されているように、ステップ５２０におけるマッチングから、判定されたアライメントに基づいてテクスチャなし物体の姿勢が推定されている。姿勢の推定に関する更なる詳細については、本明細書において、更に詳細に説明することとする。
【００４８】
図６に示されているように、ステップ６０５において、テクスチャなし物体の画像が取得されている。画像は、一般に、更に詳細に本明細書において説明するように、撮像装置から取得することができる。ステップ６１０において、テクスチャなし物体の幅及び高さを画像Ｉ∈Ｒw×hから判定することができるが、ここで、図８ｃに示されているように、Ｉは、取得された画像を表しており、ｗは、画像の幅であり、且つ、ｈは、画像の高さである。ステップ６１５において、テクスチャなし物体の更なる画像が存在しているかどうかについての判定を実施することができる。例えば、図４との関係において上述したように、１つ又は複数の撮像装置は、複数の視点
2019515364.tif 000003
及び複数のスケール
2019515364.tif 000004
を表す複数の画像をキャプチャすることができる。ＮΩは、視点の数を表しており、且つ、Ｎsは、スケールの数を表している。
【００４９】
更なる画像の取得を要する場合には、プロセスは、更なる画像を取得するべく、ステップ６０５に戻ることができる。すべての画像が取得されたら、ステップ６２０において、ｎ個のテンプレートを取得するべく、テクスチャなし物体の周りの視点及びスケールのそれぞれから画像のすべてを取得することにより、３Ｄモデルが生成（レンダリング）される。以下のアルゴリズム１及びアルゴリズム２に従ってテンプレート及び画像パッチをベクトル化することにより、同時にすべてのテンプレートを画像とマッチングさせることができる。アルゴリズム１及びアルゴリズム２の一般的な目的は、関数
2019515364.tif 000005
の下においてパッチｔi及びｐjをｔi’及びｐj’に変換することにより、テンプレートベクトルと画像パッチベクトルの間の安定した類似性尺度を取得する、即ち、ｔi’＝ｆ（ｔi）及びｐj’＝ｆ（ｐj）を演算する、というものである。この関数の下においては、２つのベクトル（テンプレートベクトル及び画像ベクトル）の類似性を計測するための安定した方法として、相互相関が使用されている。方法は、変換関数ｆ（・）が、ガウシアン・ラプラシアン画像パッチの平均分散正規化を実行している場合には、即ち、以下のとおりである場合には、一般に、異なる照明、異なるモデル外観、テクスチャ、及びわずかな変形変化に対して安定しうる。
【数１】
2019515364.tif 000006
【００５０】
ここで、以下のとおりであり、
【数２】
2019515364.tif 000007
ここで、μv及びσvは、ベクトル化されたパッチｖ∈Ｒmの強度値の平均及び標準偏差であり、且つ、以下のとおりであり、
【数３】
2019515364.tif 000008
ここで、ｕは、オリジナルの画像からのパッチであり、Ｇは、２次元ガウシアンを表しており、且つ、Δは、ラプラス演算子を表している。
【００５１】
変換済みのパッチｔi’及びｐj’の間の類似性は、次式によって表され、
【数４】
2019515364.tif 000009
ここで、ｓ’は、オリジナルパッチＴi及びＰjのガウシアン・ラプラシアンの間の正規化された相互相関を表している。
【００５２】
パッチをベクトル化することにより、処理装置２０５（図２Ａ）上における高速行列間乗算を活用し、演算を高速化させる。次式のように、サイズＲn×mを有するスコア行列Ｓが生成され、ここで、ｎは、テンプレートの数であり、且つ、ｍは、画像内のパッチの数である。
【数５】
2019515364.tif 000010
【００５３】
ここで、Ｓ（ｉ，ｊ）は、ｊ番目の画像パッチＴとの間におけるｉ番目のテンプレートＴiの相関値を表しており、Ｔ’は、ベクトル化されたテンプレート行列であり、Ｔ’のそれぞれの行は、１つのベクトル化テンプレートｔi’を表している。
【数６】
2019515364.tif 000011
【００５４】
Ｐ’は、画像行列であり、Ｐ’のそれぞれの列は、次式のように、１つのベクトル化された画像パッチｐj’を表している。
【数７】
2019515364.tif 000012
【００５５】
式（５）の計算を更に加速させるべく、テンプレート行列Ｔ’に対する次元削減が事前演算される。
【数８】
2019515364.tif 000013
【００５６】
ここで、Ａは、直交行列であり、Ｚは、最初のｋ個の主成分を有する基本行列である。Ａ及びＺを取得するべく、主成分分析（ＰＣＡ：Ｐｒｉｎｃｉｐａｌ  ｃｏｍｐｏｎｅｎｔ  Ａｎａｌｙｓｉｓ）を使用することにより、Ｔ’に対する特異値分解を完了させる。即ち、Ｔ’は、次式のように分解される。
【数９】
2019515364.tif 000014
【００５７】
ここで、Ｄは、非負の対角要素が降順である、Ｘと同一次元の対角行列を表しており、且つ、Ｕ、Ｖは、それぞれ、対角行列、ユニタリ行列である。ここで、ｋ個の主成分が選択され、且つ、α百分率分散が維持される。
【数１０】
2019515364.tif 000015
【００５８】
ここで、α＝９０％である場合には、行列の次元を削減しつつ、精度が維持される。最初のｋ個の列がＵから選択され、
【数１１】
2019515364.tif 000016
且つ、Ｓ＝Ｔ’Ｐ’及びＴ’＝ＡＺから、Ｚが次式として定義され、
【数１２】
2019515364.tif 000017
次式が得られる。
【数１３】
2019515364.tif 000018
【００５９】
ここで、以下のとおりである。
【数１４】
2019515364.tif 000019
【００６０】
式（１３）を直接的に算出するのではなく、まず、高スコアが見込めない画像場所を除去することにより、ＡＱの計算が加速される。具体的には、Ｑ内の列が除去され、且つ、Ｑ’＝［…Ｑi…］，ｉ∈Ｉが取得されるが、ここで、Ｉは、有望な画像場所に対応する画像行列の列内へのインデックスの小さなサブセットである。最終的なスコア行列Ｓ’が、次式として得られる。
【数１５】
2019515364.tif 000020
【００６１】
行列Ｑ内のそれぞれの列のＬ2ノルムを計測値として使用する（即ち、
2019515364.tif 000021
）。
2019515364.tif 000022
が、λにより、上方において制限されている、即ち、このピクセルにおけるすべてのテンプレートスコアがλ未満であるとしよう。この観察は、Ｑ内のｊ番目の列に対応する見込みのない画像パッチの除去を許容する。
【００６２】
アルゴリズム１：オフラインテンプレート行列生成及びＰＣＡ
入力：
すべてのテンプレートＴ1．．．Ｔn
出力：
係数行列Ａ、基本行列Ｚ
2019515364.tif 000023
【００６３】
アルゴリズム２：オンラインマッシングテンプレートマッチング
入力：
テンプレート係数行列Ａ、基本マトリックスＺ、閾値λ
出力：
それぞれのフレームごとのスコア行列Ｓ
2019515364.tif 000024
【００６４】
例えば、ｉ∈｛１，２，…，ｎ｝であり、且つ、ｎがテンプレートの数である状態において、テンプレート
2019515364.tif 000025
である場合に、ｗ’及びｈ’は、それぞれ、テンプレートの幅及び高さである。テンプレートは、具体的には、行順序ピクセルを順番に列ベクトルＴi∈ＲN内に配置するように、ベクトル化され、Ｎは、１つのテンプレート内のピクセル数である。同様に、ｊ∈｛１，２，…，ｍ｝であり、且つ、ｍがＩ内の画像パッチの数を表している状態において、画像パッチＰjが、画像Ｉ∈Ｒm内の場所ｊにおけるテンプレートの同一サイズを有するとしよう。パッチは、ベクトルｐj∈Ｒmにベクトル化される。２つのベクトルｔi及びｐjの間の相互相関は、ｉ番目のテンプレートＴiとｊ番目の画像パッチＰjの間の類似性を表している。
【００６５】
ステップ６２５において、幅Ｕのスクエアレンダリング（ｓｑｕａｒｅ  ｒｅｎｄｅｒ）が生成され、ここで、Ｕ∝ｓ及びｓ∈Ｓである。視点Ω∈Ｏ及びスケールｓ∈Ｓからのレンダリングは、
2019515364.tif 000026
によって表される。それぞれのレンダリングＲごとに、ステップ６３０において、Ｌｏｇ画像の組Ｒ＝｛Ｒ1，Ｒ2，…，ＲL｝を得るべく、Ｒを減少する標準偏差σ1，σ2，…，σLのガウシアン・ノラプラシアン（Ｌｏｇ）と畳込むことにより、マルチレベル表現が生成され、ここで、Ｌは、マルチレベル表現内のレベルの数である。トップレベル（即ち、Ｒ1）において、ＬｏＧは、画像内の様々な一貫性を有する領域を表す粗ブロブを含み、且つ、弁別性を提供している。ボトムレベルにおいては（即ち、ＲLにおいては）、ＬｏＧは、コーナー及びテクスチャの微細スケールの詳細を表し、且つ、精度を提供しているが、弁別性は、提供していない。例えば、図８Ａに示されているように、ＲLは、いくつかの正確なエッジ特徴を含んでいる。
【００６６】
次に図７を参照すれば、試験フェーズは、パッチの場所特定用のマルチレベルツリーを形成するプロセスを含むことができる。ステップ７０５において、パッチがそれぞれのレンダリングＲから抽出されており、且つ、ステップ７１０において、それぞれのパッチの場所が抽出されている。従って、ｌ∈｛１，２，…，Ｌ｝であるそれぞれのレベルｌごとに、Ｎl個のパッチ
2019515364.tif 000027
が、レベルｌにおけるＬｏｇＲlレンダリング内の場所
2019515364.tif 000028
から抽出される。ここで、ｌ∈１，２，…，Ｎlであり、且つ、
2019515364.tif 000029
である。場所ｙilは、マルチレベルのガウシアン・ラプラシアン表現に対してスケール不変特徴変換（ＳＩＦＴ：Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）の基礎をなす関心点抽出アルゴリズムを実行することにより、抽出される。ステップ７１５において、更なるレベルが存在しているかどうかについての判定が実施され、且つ、存在している場合には、プロセスは、ステップ７０５に戻る。
【００６７】
ステップ７２０において、多数の関心点場所／レベルの抽出を要するかどうかについての判定が実施され、且つ、その抽出を要する場合には、ステップ７２５において、コーナーネス閾値が小さな値に設定される。例えば、いくつかの実施形態においては、コーナーネス閾値は、０．０２であってもよい。目的は、Ｉのマルチレベル表現内（即ち、組Ｉ内）のすべてのパッチの場所を同時に推定するというものである。パッチＲl（ｙil）の場所は、レベルｌのＬｏＧＩ1内において、ランダム変数ｘilとして表される。それぞれのｘilのサンプル空間は、画像Ｉのドメインを表す離散２次元グリッドＲW×Hである。目的は、ＩのＬｏＧの組Ｉが付与された場合の場所ｘ11，ｘ12，…，ｘN1l）の結合確率ｐ（ｘ11，ｘ12，…，ｘN1l｜Ｉ）の最大値の演算に対応しており、即ち、次式のとおりである。
【数１６】
2019515364.tif 000030
【００６８】
式（１６）内の結合確率の最適化は、演算的に困難である。画像内のすべてのパッチの最良の場所特定を判定するべく、
2019515364.tif 000031
という仮定を評価しなければならない。可能なパッチ場所の空間を素直にサーチするべく、図８Ｂに示されているように、それぞれのハイレベルパッチをいくつかのローレベルパッチにリンクすることにより、マルチレベルツリーが構築される。ベイズの定理と条件付き独立性の規則を使用することにより、結合確率ｐ（ｘ11，ｘ21，ｘ22，ｘ31，ｘ32，ｘ33，ｘ34｜Ｉ）は、相対的にハイレベルのパッチが付与された場合の相対的にローレベルのパッチの場所の条件付き確率の積として表現され、即ち、次式のとおりである。
【数１７】
2019515364.tif 000032
【００６９】
最大積の規則を使用することにより、式（１７）内の確率の極大化を次式として分解する。
【数１８】
2019515364.tif 000033
【００７０】
式（１８）は、図８Ｂに示されているツリー構造に対して正確な推定を実行するための動的プログラミングの活用を許容している。
【００７１】
わかりやすさを目的として、以下の説明は、その親Ｘ11が付与された場合の子ｘ21の条件付き確率ｐ（ｘ21｜ｘ11，Ｉ）の取得に関係している。但し、以下の説明は、すべてのパッチに適用されることを理解されたい。ベイズの定理は、ｐ（ｘ21｜ｘ11，Ｉ）を次式として表現するべく、使用される。
【数１９】
2019515364.tif 000034
【００７２】
式（１９）において、ｐ（ｘ21｜ｘ11）は、その親の場所ｘ11が付与された場合に子パッチの場所ｘ21を知る事前確率を表しており、且つ、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表している。式（１９）の項Ｚは、通常は
2019515364.tif 000035
が１に等しくなることを強制する証拠を表している。さもなければ、小さな値による除算が導入され、且つ、ｐ（ｘ21｜ｘ11，Ｉ）における偽応答がもたらされることから、Ｚを１に設定することにより、数値的に安定した結果が得られる。
【００７３】
式（１９）の項ｐ（ｘ21｜ｘ11）は、その親の場所ｘ11が付与された場合に子パッチのｘ21の場所を知る事前確率を表している。３Ｄモデルレンダリングを使用することにより、画像内のｘ21とｘ11の間の変位がレンダリング内のｙ21とｙ11の間の変位に類似することになるプライア（ｐｒｉｏｒ）を提供する。変位の類似性は、ガウシアンプライアｐ（ｘ21｜ｘ11）としてモデル化され、ここで、次式のとおりである。
【数２０】
2019515364.tif 000036
【００７４】
2019515364.tif 000037
、Δｙ21＝ｙ21−ｙ11、並びに、ｙ21及びｙ11は、レンダリングにおける子パッチ及び親パッチの場所である。式（２０）において、標準偏差λ2（或いは、一般的には、λ1）は、パッチがＬｏｇＩ3内（或いは、一般的には、Ｉl内）において微動（ｊｉｔｔｅｒ）しうる程度を表している。ボトムレベルにおいては、即ち、レベルＬにおいては、パッチは、パッチが、その親パッチのサイズに対応する領域内において微動することを許容するべく、ＬにおけるＬｏＧカーネルの標準偏差σLに設定されてもよい。すべてのその他のレベルの場合には、λ1は、２のべき乗だけのパッチサイズの減少を反映するように、２に設定される。
【００７５】
式（１９）において、ｐ（Ｉ｜ｘ21、ｘ11）は、画像内のパッチＲ2（ｙ21）の場所ｘ21を見出すデータ尤度を表している。ＬｏＧ画像は、独立的にパッチによって生成されるものと仮定され、これにより、次式が得られる。
【数２１】
2019515364.tif 000038
【００７６】
子ｘ21のレベルにおけるＬｏＧの生成の尤度は、その親ｘ11とは独立しており、これにより、式（２１）内のｘ11に対する従属性を破棄することが許容されるものと更に仮定する。これに加えて、それぞれの非リーフパッチ場所（即ち、ｘ２１、ｘ２２、及びｘ１１）は、それ自身に、且つ、その子に、のみ依存しており、これにより、式（２１）内の第１乗法項を破棄することが許容されるものと仮定する。この仮定は、データ尤度を次式に単純化する。
【数２２】
2019515364.tif 000039
【００７７】
Ｉ2（ｘ21）が、場所ｘ21において画像Ｉ2のＬｏＧから抽出されたサイズＵ2×Ｕ2のパッチを表し、且つ、ａが、列ベクトルとしてベクトル化されたパッチを表すものとしよう。Ｒ2（ｙ21）が、同様に、場所ｙ21におけるレンダリングのＬｏＧＲ2から抽出されたサイズＵ2×Ｕ2のパッチを表し、且つ、ｂが列ベクトルとしてベクトル化されたパッチを表すものとしよう。ｐ（Ｉ2｜ｘ21）は、次式としてモデル化される（即ち、Ｉ2｜ｘ21の生成におけるパッチＲ2（ｙ21）の寄与）。
【数２３】
2019515364.tif 000040
【００７８】
図９の中間列の最下部に配置されているマップ９００は、ｐ（Ｉ2｜ｘ21）を表している。式（２３）の絶対値における項は、画像のＬｏＧからのパッチＩ2（ｘ21）との間におけるパッチＲ2（ｙ21）の正規化済みの相互相関である。式（２３）において、μa及びμbは、それぞれ、パッチＩ2（ｘ21）及びパッチＲ2（ｙ21）内の平均強度であり、σa及びσbは、それぞれの強度における標準偏差である。正規化済みの相互相関は、画像内の類似の特徴を表すパッチ内の特徴の間における照明不変性を提供している。マッチングを加速させるべく、フーリエ変換及び積分和を使用することにより、ＬｏＧＩ2の全体に伴って、Ｒ2（ｙ21）の高速正規化済み相互相関が実行される。正規化済み相互相関の絶対値は、コントラスト反転を説明するべく用いられている。パラメータβは、確率分布のピーキネス（ｐｅａｋｉｎｅｓｓ）を表しており、これは、例えば、４に設定することができる。
【００７９】
項ｐ（Ｉ3｜ｘ21）、即ち、位置ｘ21におけるパッチの寄与は、次式のとおりであることを示すことにより、ｘ21に対応するパッチの子のデータ尤度を重要視しないことにより、モデル化することができる。
【数２４】
2019515364.tif 000041
【００８０】
図９の右列内の上部の２つのマップ９０５、９１０は、式（２４）における意図的過小評価を表している。式（２４）を式（２２）に代入することにより、データ尤度ｐ（Ｉ｜ｘ21，ｘ11）は、次式として記述される。
【数２５】
2019515364.tif 000042
【００８１】
図９の最下部右のマップ９１５は、ｐ（Ｉ｜ｘ21，ｘ11）を表している。式（２５）は、それ自体及びその子からの寄与を有するものとしてのパッチのデータ尤度のモデル化を許容しており、これにより、パッチの応答が強化される。この観点において、このような方式は、親部分のデータ尤度が子部分とは別個にモデル化されているその他の方式とは別個である。式（１６）内の結合確率に対する寄与においてリーフパッチを強調するべく、式（２５）の右側の平方根は、ｘ21などの非リーフパッチがデータ尤度ｐ（Ｉ｜ｘ21，ｘ11）を表すように、使用されている。
【００８２】
図９のマップ９２０内に示されている式（１６）の項ｐ（ｘ31｜ｘ21）は、式（１９）内の類似の項ｐ（ｘ21｜ｘ11）とは別個である。ここで、これは、その子に起因した画像内の場所ｘ21におけるパッチの予想外観に対するプライアをモデル化するべく、使用されている。外観プライアは、正しい視点からのレンダリングが物体の照明不変外観用の妥当なイニシャライザを提供していることから、平均において、パッチに起因した画像の応答、即ち、ｐ（Ｉ3｜ｘ31）によって表される応答は、パッチに起因したレンダリングの応答に類似することになる、という概念を表している。ｐ（ｘ31｜ｘ21）をモデル化するべく、パッチ
2019515364.tif 000043
が、ＬｏＧＲ3から親ｙ21の場所において抽出される。Ｒ3（ｙ21）は、図９のマップ９２５内において示されている。Ｒ3（ｙ31，ｙ21）が、それぞれの子パッチｙ31の場所におけるＲ3（ｙ21）から抽出されたサイズ
2019515364.tif 000044
のパッチを表しているとしよう。又、Ｒ3（ｙ31）が、場所ｙ31におけるＲ3から抽出された子パッチを表しているとしよう。ａ及びｂが、それぞれ、ベクトル化されたＲ3（ｙ31，ｙ21）及びＲ3（ｙ31）を表している場合には、ｐ（ｘ31｜ｘ21）は、式（２３）と同様に、即ち、次式として、記述することができる。
【数２６】
2019515364.tif 000045
【００８３】
ここで、
2019515364.tif 000046
である。式（２３）におけると同様に、式（２６）内の絶対値における項は、Ｒ3（ｙ31）とパッチＲ3（ｙ31、ｙ21）の間の正規化済みの相互相関を表している。式（２６）は、画像に依存していないことから、ｐ（ｘ31｜ｘ21）は、試験フェーズの前に、構築及び保存される。実際には、意図的過小評価
2019515364.tif 000047
は、画像全体における尤度ｐ（Ｉ3｜ｘ32）のマップをフーリエドメイン内の外観における事前確率ｐ（ｘ32｜ｘ21）のマップと畳込むことにより、実行される。
【００８４】
高速網羅サーチとの間における正確なアライメントを提供するべく、図１０に示されているように、粗から微細へのアライメント方式が提供される。ステップ１００５において、複数のスクエアテンプレートレンダリングを得るべく、複数の向きにわたって、且つ、複数のスケールにわたって、３Ｄモデルがレンダリングされている。非限定的な一例においては、３Ｄモデルは、３２４個の向きわたってレンダリングされてもよい（１０°だけ離隔した方位角における３６個のサンプル、２０°だけ離隔した仰角における３個のサンプル、及び２０°だけ離隔した面内回転における３個のサンプル）。別の非限定的な例においては、３Ｄモデルは、１６個のスケールにわたってレンダリングされてもよい。この結果、幅Ｕ＝１８０の５１８４個のスクエアテンプレートレンダリングを得ることができる。ｓ番目のスケールは、例えば、（０．７５＋．０５（ｓ−１））-1として設定することができる。σ1＝３を有する１レベルツリー（Ｌ−１）がテンプレートから候補の組を選択する。非限定的な一例においては、５１８４個のテンプレートから、２０個の候補を選択することができる。
【００８５】
ステップ１０１０において、仰角オフセット、方位角オフセット、及び／又は面内オフセットを有するそれぞれの候補の空間の周りの視点における複数の微細サンプルが取得されている。非限定的な一例においては、仰角オフセット５°、０°、０°、０°、及び−５°、方位角オフセット０°、５°、０°、−５°並びに０°、０°、０°、及び−５°を伴って、且つ、面内オフセットを伴うことなしに、２０個のそれぞれの候補の空間の周りにおいて、５個の微細サンプルを取得することができる。ステップ１０１５において、複数のテンプレートを得るべく、スケールにおいて複数のサンプルを取得することができる。非限定的な一例においては、スケールにおいて５個のサンプルを取得し、これにより、５０００個のテンプレートを得ることができる。
【００８６】
ステップ１０２０において、マルチレベルアライメント方式を使用することにより、それぞれの最良のマッチング姿勢からのパッチの正確なアライメントと共に、複数の最良のマッチング姿勢を取得することができる。非限定的な一例においては、マルチレベルアライメント方式を使用することにより、Ｌ＝５により、上位５つの最良のマッチング姿勢を取得することができる。
【００８７】
ステップ１０２５において、ランダムサンプルコンセンサス（ＲＡＮＳＡＣ）を使用することにより、３Ｄモデルの回転Ｒ及びその平行運動ｔをマッチングされた画像場所に対してアライメントすることができる。それぞれのＲＡＮＳＡＣ反復において、複数の対応性に伴って、効率的なパースペクティブｎポイント（ＰｎＰ：Ｐｅｒｓｐｅｃｔｉｖｅ−ｎ−Ｐｏｉｎｔ）アルゴリズムを使用することができる。非限定的な一例においては、ｎ＝４対応性に伴って、効率的なＰｎＰアルゴリズムを使用することができる。焦点距離は、交換可能な画像ファイル（ＥＸＩＦ）タグにより、或いは、カメラ較正（即ち、図１の撮像装置３０５から送信されるデータ）を通じて、提供されるものと仮定する。オリジナルの画像からの３Ｄモデル形状の間の差に対応するべく、変形ΔＸにおいて、次式の目的関数を極小化することにより、地点場所を正確にマッチングさせるように、３Ｄモデルの最終的な非剛体変形を提供することができる。
【数２７】
2019515364.tif 000048
【００８８】
式（２７）において、最初の二乗項は、Ｒ及びｔを使用して方向付けされると共に推定されたパッチ場所ｘilからの変形ΔＸによって増強された２ＤモデルＸの投影のＤＬＴ線形化再構築誤差を表している。ラプラシアン表面編集において使用されるものに類似している第２項は、ｊ番目の頂点の１リングＮj内のすべてのＫ個の頂点が、ｊ番目の頂点と同一の変形を有することを保証することにより、滑らかになるように３Ｄモデルメッシュを制約している。第３項は、小さくなるように変形を制約している。Ｎmodelは、３Ｄモデル上の地点の数を表しており、
2019515364.tif 000049
は、固有パラメータ行列の最初の２つの行の行列を表しており、且つ、Ｋ3は、固有パラメータ行列の第３行に対応する行ベクトルである。いくつかの実施形態においては、スムーズネス重みλが０．１に設定されてもよく、且つ、シュリンケージパラメータγが０．００５に設定されてもよい。
【００８９】
上述の内容の結果として、テクスチャなし物体の姿勢は、ロボット装置３００の場所及び位置決めが、テクスチャなし物体を適切に把持し、テクスチャなし物体を運動させ、且つ、テクスチャなし物体を操作するために十分なものとなるように、ロボット装置３００（図１）が、特定の位置まで運動するように制御されうるように、十分なものとなろう。本明細書において記述されているように姿勢を推定することにより、不適切な把持、テクスチャなし物体の落下、及び／又はこれらに類似したものに伴う問題が回避又は最小化される。
【００９０】
例
例１：試験
複数のテクスチャなし物体を撮像センサによって撮像されるエリア内に配置した。テクスチャなし物体は、木製の橋、カップ、マグ、木製の自動車、おもちゃのカボチャ、ティーポット、コーヒークリーマのカン、及びぬいぐるみの鳥を含む。撮像センサは、様々な視点からそれぞれの物体のサイズ６４０×４８０の画像をキャプチャするＲＧＢカメラであった。次いで、画像は、３２０×２４０にダウンサンプリングされた。Ａｕｔｏｄｅｓｋ  １２３Ｄ  Ｃａｔｃｈ（Ａｕｔｏｄｅｓｋ  Ｉｎｃ．  Ｓａｎ  Ｒａｆａｅｌ，  ＣＡ）を使用することにより、第２撮像装置を使用してそれぞれの物体の分解能３６４８×２０４８の３０〜５０枚の写真をキャプチャすることにより、マグを除いた、すべての物体の３Ｄモデルを構築した。橋、自動車、カボチャ、及び鳥という物体は、Ａｕｔｏｄｅｓｋ  １２３Ｄ  Ｃａｔｃｈ内の高分解能写真内において対応性を見出すべく十分な微細な粒子のテクスチャを有していた。カップ及びティーポットなどの滑らかな物体の場合には、物体上の粘性テープ上にマーカーを適用したが、テープは、３Ｄモデルを構築した後に除去した。マグの場合には、オンラインモデルリポジトリから取得された３Ｄモデルを使用した。
【００９１】
図１１は、撮像センサを使用してキャプチャされた入力画像に対する物体の上部３Ｄアライメントを示している。具体的には、図１１は、オリジナルの入力画像１１０５、５レベルツリーのレベル１において場所特定されたパッチ１１１０、５レベルツリーのレベル３において場所特定されたパッチ１１１５、５レベルツリーのレベル５において場所特定されたパッチ１１２０、オリジナルの物体ピクセルの代わりである推定された姿勢のレンダリング１１２５、及び画像上において重畳された推定姿勢レンダリングのエッジ表現１１３０を示している。５レベルツリーのレベル１におけるパッチ１１１０が、最良のマッチングレンダリングを表している。以下の表１及び２は、物体当たりの平均二乗回転及び平行運動誤差を示している。第２行は、上位５つの結果からの最も正確なマッチングの誤差を表している。上位５つのマッチングを提供することにより、平均において、約２６％だけ、誤差が低減される。
【００９２】
【表１】
2019515364.tif 000050
【００９３】
【表２】
2019515364.tif 000051
【００９４】
回転精度を、最も近接した回転を推定するべく使用されている、方式が最も近接したマッチングレンダリングを提供する既存の方法と比較した。但し、既存の方法は、３Ｄ平行運動を提供してはいない。自動車及びカボチャを除いた、すべての物体において、既存の方法との比較において相対的に小さな平均二乗誤差を見出した。自動車は、直線的であることから、自動車の正面図及び後面図は、いくつかのエッジの向きを非自動車物体と、或いは、自動車の側面図と、共有している。
【００９５】
図１２は、それぞれの物体ごとに、プロットされた平均二乗回転及び平行運動誤差対方位角、仰角、及び面内回転のヒストグラムを示している。自動車を例外として、すべての物体は、方位角において、小さな平均平行運動誤差を有する。ティーポット、橋、及びカップは、平均において、小さな方位角誤差を示している。橋は、完全に平面的な表面におけるＰｎＰアライメントの誤差に起因して、単一プレーンの図に対応する方位角における大きな誤差を示している。３Ｄモデルにおける蓋とジャーの間における弁別の欠如に起因して、相対的に小さなスケールのレンダリングが、クリーマの下部部分とアライメントすることになることから、平行運動誤差対仰角及び方位角は、クリーマの場合には、相対的に大きい。ティーポットは、ノブの上部エッジが下部エッジに似ている場合に、相対的に小さな仰角において、大きな誤差を示している。面内回転の場合には、大部分の物体において、小さな誤差が示されている。
【００９６】
例２−仰角
様々な数のレベルにおけるアライメントの精度を評価するべく、１０°だけ離隔した方位角における３６個のサンプルと、２０°だけ離隔した仰角における３つのサンプルと、２０°だけ離隔した面内回転における３つのサンプルと、スケールにおける１つのサンプルと、を使用してレンダリングされた、ぬいぐるみの鳥のモデルの３２４個のテンプレート画像の組を選択した。テンプレート画像と同一の平行運動及びスケール、仰角、及び面内回転における同一のサンプルを使用することにより、且つ、１°だけ離隔した方位角における３６０個のサンプルを使用することにより、ぬいぐるみの鳥の３Ｄモデルの３２４０枚のグラウンドトゥルース画像をレンダリングした。照明に対する不変性を試験するべく、異なる照明環境を使用することにより、テンプレート画像をレンダリングするべく使用されたものからグラウンドトゥルール画像をレンダリングした。それぞれのグラウンドトゥルースレンダリングされた画像を３２４個のテンプレートの組からの最も近接した２つのテンプレートに対して割り当てると共に、様々な数のレベル（即ち、様々なＬ）を伴って、本明細書において記述されているマルチレベルアライメントアプローチを適用することにより、２つのテンプレートから最良のマッチを取得した。Ｌのそれぞれの選択肢ごとに、推定された回転及び平行運動において、グラウンドトゥルース回転及び平行運動から、誤差を取得した。最良のマッチングテンプレートからの方位角の角度におけるそれぞれの偏差に従って、グラウンドトゥルースレンダリングを分類し、且つ、それぞれの偏差の値における平均二乗誤差を取得した。
【００９７】
図１３は、平均二乗回転及び平行運動誤差対方位角の角度における偏差のプロットを示している。１レベルツリーを例外として、Ｌの増大は、０°の偏差における、即ち、グラウンドトゥルースレンダリングがテンプレートレンダリングに正確に対応している際の、誤差を低減する。１レベルツリーの場合には、グラウンドトゥルースレンダリングに対する最良のマッチングテンプレートの回転及び平行運動の単純な割当が完了しており、この結果、０°におけるグラウンドトゥルースレンダリングの０の回転誤差と、すべてのレンダリングにおけるゼロ平行運動誤差と、が導入される。Ｌ＝２以上である場合には、０°の偏差マークにおいてＰｎＰアライメントにおける小さな偏差を導入する類似した局所的なエッジ勾配に起因して、最大で１ピクセルの小さなパッチミスアライメントが観察された。０°からの相対的に大きな偏差の場合には、Ｌの増大は、回転誤差を大幅に低減する。Ｌ＝５においては、回転誤差グラフのスロープは小さい。従って、本明細書において記述されている第２の微細マッチングステップにおいては、Ｌ＝５が使用される。
【００９８】
従って、本明細書において記述されているシステム及び方法は、テクスチャなし物体が、落下する、不適切に取り扱われる、且つ／又は、これらに類似した内容が発生する、ことなしに、テクスチャなし物体が、ロボット的装置により、適切に把持されうる、操作されうる、運動されうる、且つ／又は、これらに類似したものが実行されうる、ように、テクスチャなし物体の姿勢を迅速且つ正確に判定することが、いまや、理解されよう。本明細書において記述されているシステム及び方法は、複数の視点及びスケールから３Ｄモデルをレンダリングすることによって入力された３Ｄモデルの周りにおいて姿勢の空間をサンプリングすることによってテクスチャなし物体の３Ｄモデルをテクスチャなし物体の単一の画像に対してアライメントすることにより、姿勢を推定している。
【００９９】
「実質的に（ｓｕｂｓｔａｎｔｉａｌｌｙ）」及び「約（ａｂｏｕｔ）」という用語は、本明細書においては、任意の定量的な比較、値、計測、又はその他の表現に帰せられうる固有の不確実性の程度を表すべく、利用される場合があることに留意されたい。又、これらの用語は、本明細書において、定量的表現が、争点となっている主題の基本的関数の変化を結果的にもたらすことなしに、主張されている基準から変化しうる程度を表すべく、利用されてもいる。
【０１００】
本明細書においては、特定の実施形態が図示及び記述されているが、特許請求されている主題の精神及び範囲から逸脱することなしに、様々な変化及び変形が実施されうることを理解されたい。更には、本明細書においては、特許請求されている主題の様々な態様が記述されているが、このような態様を組合せにおいて利用することは、必須ではない。従って、添付の請求項は、特許請求されている主題の範囲に含まれる、このようなすべての変更及び変形を含むものと解釈されたい。
【０１０１】
本明細書に開示される発明は以下の実施形態を含む。
（１）テクスチャなし物体の姿勢を出力するシステムであって、
処理装置と、
一時的ではない、プロセッサ可読のストレージ媒体であって、１つ又は複数のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ又は複数のプログラミング命令は、実行された際に、前記処理装置が、
前記テクスチャなし物体の単一の画像を取得し、この場合に、前記テクスチャなし物体の前記姿勢は、前記単一の画像から推定され、
前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、この場合に、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有し、
マルチレベル照明不変ツリー構造を構築するべく、前記複数のハイレベルパッチのそれぞれのものを前記複数のローレベルパッチの少なくとも１つに対してリンクし、
前記離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、前記マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせ、且つ、
前記アライメントに基づいて、前記テクスチャなし物体の前記姿勢を出力する、
ようにする、システム。
（２）前記テクスチャなし物体の前記推定された姿勢に基づいて前記テクスチャなし物体を把持するロボット装置を更に有する、上記（１）に記載のシステム。
（３）前記処理装置に通信自在に結合された１つ又は複数の撮像装置を更に有し、実行された際に、前記処理装置が、前記単一の画像を取得するようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、前記１つ又は複数の撮像装置から前記単一の画像を取得するようにする、上記（１）に記載のシステム。
（４）前記１つ又は複数の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、且つ、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において異なる角度を有するように、方向付けされている、上記（３）に記載のシステム。
（５）前記１つ又は複数の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において複数の異なる角度に対して連続的に再方向付けされるように、中心軸を中心として回転する、上記（３）に記載のシステム。
（６）実行された際に、前記処理装置が、前記３次元モデルを生成するようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、
複数のテンプレートを取得するべく、前記テクスチャなし物体の周りにおいて、複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得し、且つ、
複数のパッチによって前記複数のテンプレートをベクトル化する、
ようにする、上記（１）に記載のシステム。
（７）前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数２８】
2019515364.tif 000052
ここで、ｐは、確率を表しており、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、それぞれ、前記複数のパッチのうちの１つのパッチの場所を表しており、且つ、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表している、上記（１）に記載のシステム。
（８）前記子ｘ21の親ｘ11が付与された場合の子ｘ21の条件付き確率は、次式によって表され、
【数２９】
2019515364.tif 000053
ここで、ｐ（ｘ21｜ｘ11）は、親ｘ11の場所ｘ11が付与された場合に前記子ｘ21の場所を知る事前確率を表しており、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表しており、且つ、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表している、上記（７）に記載のシステム。
（９）実行された際に、前記処理装置が、前記単一の画像を前記離散化レンダリングとマッチングさせるようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、前記３次元モデルの回転及び平行運動をランダムサンプルコンセンサスを介して前記単一の画像にアライメントするようにする、上記（１）に記載のシステム。
（１０）テクスチャなし物体の姿勢を出力する方法であって、
処理装置により、前記テクスチャなし物体の単一の画像を取得するステップであって、前記単一の画像は、前記テクスチャなし物体の前記姿勢を通知する、ステップと、
前記処理装置により、前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成するステップと、
離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、前記処理装置により、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせるステップと、
前記処理装置により、前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を出力するステップと、
を有する方法。
（１１）前記処理装置により、前記テクスチャなし物体の前記推定された姿勢に基づいて前記テクスチャなし物体を把持するように、ロボット装置を制御するステップを更に有する、上記（１０）に記載の方法。
（１２）前記単一の画像を取得するステップは、前記処理装置に通信自在に結合された１つ又は複数の撮像装置から前記単一の画像を取得するステップを更に有する、上記（１０）に記載の方法。
（１３）前記３次元モデルを生成するステップは、
複数のテンプレートを取得するべく、前記テクスチャなし物体の周りにおいて複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得するステップと、
複数のパッチによって前記複数のテンプレートをベクトル化するステップと、
を有する、上記（１０）に記載の方法。
（１４）前記処理装置により、前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出するステップであって、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有するステップと、
前記マルチレベル照明不変ツリー構造を構築するべく、前記処理装置により、前記複数のハイレベルパッチのそれぞれのものを前記複数のローレベルパッチの少なくとも１つに対してリンクするステップと、
を更に有する、上記（１０）に記載の方法。
（１５）前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数３０】
2019515364.tif 000054
ここで、ｐは、確率を表しており、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、前記複数のパッチのうちの１つのパッチの場所を表しており、且つ、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表している、上記（１４）に記載の方法。
（１６）子ｘ21の親ｘ11が付与された場合の前記子ｘ21の条件付き確率は、次式によって表され、
【数３１】
2019515364.tif 000055
ここで、ｐ（ｘ21｜ｘ11）は、前記親ｘ11の場所ｘ11が付与された場合に前記子ｘ21の場所を知る事前確率を表しており、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表しており、且つ、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表している、上記（１５）に記載の方法。
（１７）テクスチャなし物体の姿勢に基づいてロボット装置を制御するシステムであって、
処理装置と、
前記処理装置に通信自在に結合された１つ又は複数の撮像装置と、
前記処理装置に通信自在に結合された前記ロボット装置と、
前記テクスチャなし物体を支持するピッキング表面と、
一時的ではない、プロセッサ可読のストレージ媒体であって、１つ又は複数のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ又は複数のプログラミング命令は、実行された際に、前記処理装置が、
前記１つ又は複数の撮像装置のうちの少なくとも１つから前記テクスチャなし物体の単一の画像を取得し、前記単一画像は、前記テクスチャなし物体の前記姿勢を通知しており、
前記１つ又は複数の撮像装置によって生成された前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせ、
前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を推定し、且つ、
前記推定された姿勢に基づいて前記テクスチャなし物体を運動させると共に把持するように、前記ロボット装置を制御する、
ようにする、システム。
（１８）前記１つ又は複数の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、且つ、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持する前記ピッキング表面との関係において異なる角度を有するように、方向付けされている、上記（１７）に記載のシステム。
（１９）前記１つ又は複数の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持する前記ピッキング表面との関係において複数の異なる角度に対して連続的に再方向付けされるように、中心軸を中心として回転する、上記（１７）に記載のシステム。
（２０）実行された際に、前記処理装置が、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、この場合に、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有し、且つ、
前記マルチレベル照明不変ツリー構造を構築するべく、前記複数のハイレベルパッチのうちのそれぞれのパッチを前記複数のローレベルパッチの少なくとも１つにリンクする、
ようにする、１つ又は複数のプログラミング命令を更に有する、上記（１７）に記載のシステム。
【図１】
2019515364.tif 000060
【図２Ａ】
2019515364.tif 000061
【図２Ｂ】
2019515364.tif 000062
【図２Ｃ】
2019515364.tif 000063
【図３Ａ】
2019515364.tif 000064
【図３Ｂ】
2019515364.tif 000065
【図４】
2019515364.tif 000066
【図５Ａ】
2019515364.tif 000067
【図５Ｂ】
2019515364.tif 000068
【図６】
2019515364.tif 000069
【図７】
2019515364.tif 000070
【図８Ａ】
2019515364.tif 000071
【図８Ｂ】
2019515364.tif 000072
【図８Ｃ】
2019515364.tif 000073
【図９】
2019515364.tif 000074
【図１０】
2019515364.tif 000075
【図１１】
2019515364.tif 000076
【図１２】
2019515364.tif 000077
【図１３】
2019515364.tif 000078
【手続補正書】
【提出日】平成30年8月28日(2018.8.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
テクスチャなし物体の姿勢を出力する方法であって、
前記テクスチャなし物体の単一の画像を取得するステップであって、前記単一の画像は、前記テクスチャなし物体の前記姿勢を示す、ステップと、
前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成するステップと、
マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせて、前記離散化レンダリングとの間における前記単一の画像のアライメントを得るステップと、
前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を出力するステップと、
を有する、方法。
【請求項２】
前記テクスチャなし物体の推定された姿勢に基づいて前記テクスチャなし物体を把持するようロボット装置に指示するステップを更に有する、請求項１に記載の方法。
【請求項３】
前記単一の画像を取得するステップは、処理装置に通信可能に結合された１つ以上の撮像装置から前記単一の画像を取得するステップを更に有する、請求項１に記載の方法。
【請求項４】
前記３次元モデルを生成するステップは、
複数のテンプレートを取得するために、前記テクスチャなし物体の周りにおいて複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得するステップと、
複数のパッチによって前記複数のテンプレートをベクトル化するステップと、
を有する、請求項１に記載の方法。
【請求項５】
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出するステップであって、前記複数のパッチは、複数のハイレベルパッチ及び複数のローレベルパッチを有する、ステップと、
前記マルチレベル照明不変ツリー構造を構築するため、前記複数のハイレベルパッチのそれぞれに前記複数のローレベルパッチの少なくとも１つをリンクするステップと、
を更に有し、
前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数１】
2019515364.tif 000079
ｐは、確率を表し、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、前記複数のパッチの１つの場所を表し、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表し、
子ｘ21の親ｘ11が与えられたときの前記子ｘ21の条件付き確率は、次式によって表され、
【数２】
2019515364.tif 000080
ｐ（ｘ21｜ｘ11）は、前記親ｘ11の場所ｘ11が与えられたときの前記子ｘ21の場所を知る事前確率を表し、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表し、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表す、請求項１に記載の方法。
【請求項６】
前記単一の画像を前記離散化レンダリングとマッチングさせるステップは、前記３次元モデルの回転及び平行運動をランダムサンプルコンセンサスを介して前記単一の画像にアライメントさせるステップを含む、請求項１に記載の方法。
【請求項７】
テクスチャなし物体の姿勢を出力するシステムであって、
処理装置と、
一時的ではない、プロセッサ可読のストレージ媒体であって、実行された際に、前記処理装置に請求項１〜６のいずれか一項に記載の方法を完了させる１つ以上のプログラミング命令を有する、ストレージ媒体と、
を含む、システム。
【請求項８】
前記テクスチャなし物体の推定された姿勢に基づいて前記テクスチャなし物体を把持するロボット装置を更に有する、請求項７に記載のシステム。
【請求項９】
前記処理装置に通信可能に結合された１つ以上の撮像装置を更に有し、前記テクスチャなし物体の前記単一の画像は、前記１つ以上の撮像装置から取得される、請求項７に記載のシステム。
【請求項１０】
前記１つ以上の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において異なる角度を有するように方向付けされる、請求項９に記載のシステム。
【手続補正書】
【提出日】平成30年12月12日(2018.12.12)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１６年２月２６日付けで出願されると共に「ＳＹＳＴＥＭＳ  ＡＮＤ  ＭＥＴＨＯＤＳ  ＦＯＲ  ＥＳＴＩＭＡＴＩＮＧ  ＰＯＳＥ  ＯＦ  ＴＥＸＴＵＲＥＬＥＳＳ  ＯＢＪＥＣＴＳ」という名称を有する米国特許出願第１５／０５４，７７３号の利益を主張するものであり、この特許文献のすべては、引用により、本明細書に包含される。
【０００２】
本明細書は、一般に、姿勢の推定に関し、且つ、更に詳しくは、テクスチャなし物体の場所及び位置決めを推定するべく、ロボット把持装置によって使用されるシステム及び方法に関する。
【背景技術】
【０００３】
物体の場所及び位置決めを判定するべく人工知能を使用するこれまでの試みは、ブロック、一般化円筒、及び変形可能な超二次曲線（ｓｕｐｅｒｑｕａｄｒａｔｉｃｓ）などの低レベルの基本要素の観点においてパラメータ化された３Ｄモデルを画像に対してアライメントするステップを含んでいた。このような試みの１つは、頂点及び面の３Ｄメッシュとして表された３Ｄモデルを画像に対してアライメントするステップを含んでいた。この試みは、ターゲット物体が低レベルの基本要素から構成されており、その画像が強力な勾配を有しており、且つ／又は基礎をなす３Ｄ形状が既知の３Ｄモデルと正確にマッチングするように、ターゲット物体が「クリーン」であるケースに限定されていた。この問題に対する解決策は、不変性を低レベルの特徴に対して提供することにより、画像の間の類似性を改善するべく、勾配のヒストグラムなどの表現の開発に合焦した方式を結果的にもたらした。但し、低レベル特徴の不変性は、正確なアライメントを不可能にしている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従って、物体の単一の画像内の物体に対する３Ｄモデルの正確なライメントを実行する完全に自動化された方式に対するニーズが存在している。
【課題を解決するための手段】
【０００５】
一実施形態においては、テクスチャなし物体の姿勢を出力するシステムは、処理装置と、一時的ではないプロセッサ可読ストレージ媒体と、を含む。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置がテクスチャなし物体の単一の画像を取得するようにする１つ又は複数のプログラミング命令を含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置が、テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成し、３次元モデルの複数の離散化レンダリングのそれぞれから、複数のハイレベルパッチ及び複数のローレベルパッチを有する、複数のパッチを抽出し、マルチレベル照明不変ツリー構造を構築するべく、複数のハイレベルパッチのそれぞれのパッチを複数のローレベルパッチのうちの少なくとも１つに対してリンクし、離散化レンダリングとの間における単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせ、且つ、アライメントに基づいてテクスチャなし物体の姿勢を出力するようにする１つ又は複数のプログラミング命令を更に含む。
【０００６】
別の実施形態においては、テクスチャなし物体の姿勢を推定する方法は、処理装置により、テクスチャなし物体の単一の画像を取得するステップを含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。方法は、処理装置により、テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成するステップと、離散化レンダリングとの間における単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせるステップと、処理装置により、アライメントに基づいてテクスチャなし物体の姿勢を推定するステップと、を更に含む。
【０００７】
更に別の実施形態においては、テクスチャなし物体の姿勢に基づいてロボット装置を制御するシステムは、処理装置と、処理装置に対して通信自在に結合された１つ又は複数の撮像装置と、処理装置に対して通信自在に結合されたロボット装置と、テクスチャなし物体を支持するピッキング表面と、一時的ではないプロセッサ可読ストレージ媒体と、を含む。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置が、１つ又は複数の撮像装置のうちの少なくとも１つからテクスチャなし物体の単一の画像を取得するようにする１つ又は複数のプログラミング命令を含む。テクスチャなし物体の姿勢は、単一の画像から推定することができる。一時的ではないプロセッサ可読ストレージ媒体は、実行された際に、処理装置が、１つ又は複数の撮像装置によって生成されたテクスチャなし物体の画像データから取得された複数の視点及び複数のスケールからテクスチャなし物体の３次元モデルを生成し、離散化レンダリングとの間における単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、単一の画像を３次元モデルの離散化レンダリングとマッチングさせ、アライメントに基づいてテクスチャなし物体の姿勢を推定し、且つ、推定された姿勢に基づいてテクスチャなし物体を運動させると共にこれを把持するようにロボット装置を制御するようにする１つ又は複数のプログラミング命令を更に含む。
【０００８】
本明細書において記述されている実施形態によって提供されるこれらの及び更なる特徴については、図面との関連において、以下の詳細な説明を参照することにより、更に十分に理解することができよう。
【０００９】
図面において示されている実施形態は、例であり、その特性が例示を目的としており、且つ、請求項によって定義されている主題の限定を意図したものではない。例示用の実施形態に関する以下の詳細な説明については、同一の構造が同一の参照符号によって示されている以下の図面との関連において参照された際に、理解することができる。
【図面の簡単な説明】
【００１０】
【図１】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するシステム用の例示用の演算ネットワークを概略的に示す。
【図２Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するべく使用される演算装置の例示用のハードウェアのブロックダイアグラムを概略的に示す。
【図２Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するべく使用される演算装置のメモリ内に含まれているソフトウェアモジュールのブロックダイアグラムを概略的に示す。
【図２Ｃ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体の姿勢を推定するべく使用される演算装置のデータストレージコンポーネント内に含まれている様々なデータのブロックダイアグラムを概略的に示す。
【図３Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体を含む例示用のピッキング表面を概略的に示す。
【図３Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態によるテクスチャなし物体を含む別の例示用のピッキング表面を概略的に示す。
【図４】本明細書において図示及び記述されている１つ又は複数の実施形態による撮像装置によって取得されたテクスチャなし物体の複数の視点及びスケールを概略的に示す。
【図５Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態による試験フェーズ及びトレーニングフェーズを完了させる例示用の方法の概略フロー図を示す。
【図５Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態による推定フェーズを完了させる例示用の方法のフロー図を示す。
【図６】本明細書において図示及び記述されている１つ又は複数の実施形態によるトレーニングフェーズを完了させる例示用の方法のフロー図を示す。
【図７】本明細書において図示及び記述されている１つ又は複数の実施形態による試験フェーズを完了させる例示用の方法のフロー図を示す。
【図８Ａ】本明細書において図示及び記述されている１つ又は複数の実施形態による様々な標準偏差におけるキャプチャ画像の例示用のマルチレベルガウシアン・ラプラシアン（Ｌａｐｌａｃｉａｎ  ｏｆ  Ｇａｕｓｓｉａｎ：ＬｏＧ）表現を示す。
【図８Ｂ】本明細書において図示及び記述されている１つ又は複数の実施形態による様々な地点場所においてセンタリングされたガウスシアン・ラプラシアン（ＬｏＧ）表現からの様々なサイズの例示用の複数の抽出パッチを示す。
【図８Ｃ】本明細書において図示及び記述されている１つ又は複数の実施形態による画像の例示用のパラレルマルチレベルガウシアン・ラプラシアン（ＬｏＧ）表現を示す。
【図９】本明細書において図示及び記述されている１つ又は複数の実施形態による複数の例示用のマップを示す。
【図１０】本明細書において図示及び記述されている１つ又は複数の実施形態による粗から微細へのアライメントを提供する例示用の方法のフロー図を示す。
【図１１】本明細書において図示及び記述されている１つ又は複数の実施形態による物体の画像用の３Ｄモデルの複数の例示用のアライメントを示す。
【図１２】本明細書において図示及び記述されている１つ又は複数の実施形態による回転及び平行運動における例示用の平均二乗誤差（ＭＳＥ：Ｍｅａｎ  Ｓｑｕａｒｅｄ  Ｅｒｒｏｒ）／物体対方位角、仰角、及び面内回転のヒストグラムを示す。
【図１３】本明細書において図示及び記述されている１つ又は複数の実施形態による例示用の平均二乗回転及び平行運動誤差対最良マッチングレンダリングからの方位角における偏差のヒストグラムを示す。
【発明を実施するための形態】
【００１１】
本明細書において記述されている実施形態は、一般に、テクスチャなし物体の姿勢を推定するシステム及び方法を対象としている。物体の姿勢の推定は、ロボットピッキング装置又はこれに類似したものなどの、ロボット装置が、物体を落下させる、物体の取扱いを誤る、且つ／又は、物体を損傷する、ことなしに、物体を正確に把持及び操作しうるように、必要とされる。
【００１２】
本明細書において使用されている「テクスチャなし物体」は、物体の姿勢を判定するべく、姿勢推定システムによって従来使用されている、表面特徴を実質的に欠いている任意の物体を意味している。例えば、テクスチャなし物体は、滑らかな表面、丸められた表面、なんらの弁別マーキングをも含んでいない表面、及び／又は、これらに類似したもの、を有する物体を含みうる。従って、既存の姿勢推定システム及び方法は、テクスチャなし物体の位置決めを判定することができず、その理由は、テクスチャなし物体が、推定に必要とされる特定の基準点を欠いているからである。いくつかの実施形態においては、テクスチャなし物体は、ロボット装置によって選択される、ロボット装置によって把持される、且つ／又は、ロボット装置によって操作されると共に運動させられる、物体であってもよい。例示用のテクスチャなし物体は、限定を伴うことなしに、テクスチャなし自動車コンポーネント及び／又はこれに類似したものを含みうる。
【００１３】
本明細書において記述されている姿勢を推定する方式は、３Ｄモデルの周りにおける姿勢の空間を高密度でサンプリングすることにより、テクスチャなし物体の３Ｄモデルを物体の単一の画像に対してアライメントするステップを含む。姿勢の空間には、複数の視点及びスケールから３Ｄモデルをレンダリングすることによって入力される。照明に対する不変性を保持しつつ、離散化レンダリングを正確にマッチングさせるべく、マルチレベル照明不変ツリー構造が提示される。マルチレベル照明不変ツリー構造は、画像内の様々な分解能のレベルにおいていくつかのパッチの場所を同時に推定するべく、動的プログラミングの活用を許容している。パッチの場所の同時特定は、最良マッチング視点を取得するべく、且つ、画像に対する３Ｄモデルの正確なアライメントを得るべく、ハイレベルパッチの弁別性及びローレベルパッチの精度の活用を許容している。
【００１４】
本明細書において開示されているシステム及び方法は、複数ＲＧＢ−Ｄ物体姿勢推定の検出に基づいた方式の速度及びスケーラビリティを向上させることができる。例えば、本明細書において開示されているいくつかの実施形態においては、システム及び方法は、２３フレーム／秒において３２０×２４０画像内において１５個の物体の姿勢を推定することができるが、この場合に、それぞれの物体は、６００個の視点及び１２個のスケールによってサンプリングされたテンプレートを有する。本明細書において記述されているシステム及び方法は、サブリニアな実行時増大により、物体の数を増大させることができる。
【００１５】
本明細書において使用されている「姿勢」は、一般に、撮像装置によって取得された画像から姿勢情報として抽出可能であるテクスチャなし物体の位置の場所を通知する情報を含む、撮像装置によって観察された際にテクスチャなし物体が撮像装置に対して現れる方式を意味している。即ち、姿勢は、例えば、物体を支持している表面、ロボット装置、テクスチャなし物体に隣接しているその他のテクスチャなし物体、様々な撮像装置、表面の境界、及び／又はこれらに類似したものなどの、その他の物体との関係におけるテクスチャなし物体の場所及び位置決めを意味しうる。
【００１６】
本明細書において使用されている「パッチ」は、特定の形状の単一のセクション又は最小表面要素を意味している。従って、特定の形状は、１つ又は複数のパッチに対応しうる。従って、３Ｄメッシュが三角形から構成されている場合には、パッチは、小さな三角形の地理的エリアに対応しうる。形状片の鏡面性をそれぞれの個々の三角形又はパッチごとに判定することができる。いくつかの実施形態においては、パッチは、３Ｄメッシュの三角形又は多角形の集合体を意味しうる。これに加えて、メッシュの三角形は、最長エッジ二等分及びエッジ崩壊動作を反復することにより、小さなサイズの、一般的には均一に成形された、三角形パッチに再構成することもできる。
【００１７】
次に図面を参照すれば、図１は、本明細書において図示及び記述されている実施形態によるテクスチャなし物体の姿勢を推定するシステム用のコンポーネントを示す例示用の演算ネットワークを示している。図１に示されているように、コンピュータネットワーク１００は、インターネットなどのワイドエリアネットワーク（ＷＡＮ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ローカルエリアネットワーク（ＬＡＮ：Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、モバイル通信ネットワーク、公共サービス電話ネットワーク（ＰＳＴＮ：Ｐｕｂｌｉｃ  Ｓｅｒｖｉｃｅ  Ｔｅｌｅｐｈｏｎｅ  Ｎｅｔｗｏｒｋ）、パーソナルエリアネットワーク（ＰＡＮ：Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、メトロポリタンエリアネットワーク（ＭＡＮ：Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、仮想プライベートネットワーク（ＶＰＮ：Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｏｗｋ）、及び／又は別のネットワークを含みうる。コンピュータネットワーク１００は、一般に、１つ又は複数の演算装置及び／又はそのコンポーネント、１つ又は複数の撮像装置、並びに／或いは、１つ又は複数のロボット装置を電子的に接続するように構成されていてもよい。例示用の演算装置は、限定を伴うことなしに、ユーザー演算装置２００と、サーバー演算装置１５０と、を含むことができる。例示用の撮像装置は、限定を伴うことなしに、本明細書において更に詳細に記述されているように、テクスチャなし物体の１つ又は複数の画像をキャプチャするように構成された撮像装置３０５を含むことができる。例示用のロボット装置は、限定を伴うことなしに、本明細書において更に詳細に記述されているように、ロボットピッキング装置又はこれに類似したものなどの、テクスチャなし物体を効果的に把持、操作、及び／又は運動させることを許容する位置に運動するように構成されたロボット装置３００を含むことができる。本明細書において更に記述されているように、ロボット装置３００及び撮像装置３０５は、別個の装置であってもよく、或いは、単一の装置に統合されていてもよい。
【００１８】
ユーザー演算装置２００は、一般に、ユーザーとコンピュータネットワーク１００に接続されたその他のコンポーネントの間のインターフェイスとして使用されてもよい。従って、ユーザー演算装置２００は、ユーザーから１つ又は複数の入力を受け取る、或いは、情報をユーザーに提供する、などの、１つ又は複数のユーザーとの間のやり取り機能を実行するべく、使用されてもよい。これに加えて、サーバー演算装置１５０が、監視、更新、又は補正を必要としている場合には、ユーザー演算装置２００は、望ましい監視、更新、及び／又は補正を提供するように構成されてもよい。又、ユーザー演算装置２００は、更なるデータをサーバー演算装置１５０のデータストレージ部分に入力するべく、使用されてもよい。
【００１９】
サーバー演算装置１５０は、１つ又は複数の供給源（例えば、撮像装置３０５及び／又は１つ又は複数のデータベース）から電子データ及び／又はこれに類似したものを受け取ってもよく、受け取った電子データに基づいて１つ又は複数のテクスチャなし物体の姿勢を判定してもよく、且つ／又は、運動するように、コンピュータネットワーク１００に接続された様々なコンポーネントを制御してもよい。例えば、サーバー演算装置１５０は、本明細書において更に詳細に記述されているように、テクスチャなし物体との関係において運動するように、撮像装置３０５を制御してもよく、テクスチャなし物体にズームイン又はズームアウトするように、撮像装置３０５を制御してもよく、テクスチャなし物体との関係において運動すると共に／又はテクスチャなし物体を把持するように、ロボット装置３００を制御してもよい。
【００２０】
ユーザー演算装置２００は、パーソナルコンピュータとして示されており、且つ、サーバー演算装置１５０は、サーバーとして示されているが、これらは、非限定的な例であることを理解されたい。更に詳しくは、いくつかの実施形態においては、任意のタイプの演算装置（例えば、モバイル演算装置、パーソナルコンピュータ、サーバーなど）が、これらのコンポーネントのうちのいずれかのために、使用されてもよい。これに加えて、図１には、これらの演算装置のそれぞれが単一片のハードウェアとして示されているが、これも、一例であるに過ぎない。更に詳しくは、ユーザー演算装置２００及びサーバー演算装置１５０のそれぞれは、複数のコンピュータ、サーバー、データベース、コンポーネント、及び／又はこれらに類似したものを表しうる。
【００２１】
これに加えて、本明細書において示されている実施形態は、演算装置のネットワークを参照しているが、本開示は、このようなネットワークにのみ限定されるものではないことを理解されたい。例えば、いくつかの実施形態においては、本明細書において記述されている様々なプロセスは、本明細書において記述されている様々なプロセスを完了させるためにネットワークを使用しない非ネットワーク接続型の演算装置又はネットワーク接続型の演算装置などの、単一の演算装置によって完了されてもよい。
【００２２】
図２Ａには、ユーザー演算装置２００及び／又はサーバー演算装置１５０の例示用のハードウェアコンポーネントが示されている。バス２０１は、様々なコンポーネントを相互接続することができる。コンピュータ処理ユニット（ＣＰＵ：Ｃｏｍｐｕｔｅｒ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの、処理装置２０５は、プログラムを実行するべく必要とされる計算及び論理動作を実行する、演算装置の中央処理ユニットであってもよい。例示用の処理装置、演算装置、プロセッサ、又はこれらの組合せなどの用語が本開示において使用されている際には、処理装置２０５が、単独で、或いは、図２に開示されているその他の要素のうちの１つ又は複数との関連において、例示用の処理装置であり、演算装置であり、プロセッサであり、或いは、これらの組合せである。読み出し専用メモリ（ＲＯＭ：Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）及びランダムアクセスメモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの、メモリ２１０が、例示用のメモリ装置（即ち、一時的ではないプロセッサ可読ストレージ媒体）を構成することができる。このようなメモリ２１０は、処理装置２０５によって実行された際に、処理装置２０５が、本明細書において記述されているプロセスなどの、様々なプロセスを完了させるようにする１つ又は複数のプログラミング命令をその上部において含むことができる。任意選択により、プログラム命令は、コンパクトディスク、デジタルディスク、フラッシュメモリ、メモリカード、ＵＳＢドライブ、Ｂｌｕ−ｒａｙ（商標）ディスクなどの光ディスクストレージ媒体、及び／又は、その他の一時的ではないプロセッサ可読ストレージ媒体などの、有体のコンピュータ可読媒体上において保存されてもよい。
【００２３】
いくつかの実施形態においては、メモリ２１０上において含まれているプログラム命令は、複数のソフトウェアモジュールとして実施されてもよく、この場合に、それぞれのモジュールは、１つ又は複数のタスクを完了させるためのプログラミング命令を提供している。例えば、図２Ｂに示されているように、メモリ２１０は、動作ロジック２１２、トレーニングロジック２１４、及び／又は試験ロジック２１６を含むことができる。動作ロジック２１２は、オペレーティングシステム及び／又は演算装置のコンポーネントを管理するためのその他のソフトウェアを含むことができる。トレーニングロジック２１４は、１つ又は複数のテクスチャなし物体の姿勢を認識するべく、演算装置をトレーニングするための１つ又は複数のソフトウェアモジュールを含むことができる。試験ロジック２１６は、演算装置のトレーニングの精度を検証し、これにより、演算装置が、テクスチャなし物体の姿勢を正確に判定し、且つ／又は、適切なコマンドを、例えば、ロボット装置３００などの、コンピュータネットワーク１００の様々なその他のコンポーネント（図１）に送信することを保証するべく、演算装置のトレーニングを試験するための１つ又は複数のソフトウェアモジュールを含むことができる。
【００２４】
図２Ａを再度参照すれば、一般には、本明細書において記述されているように、メモリ２１０とは別個であるストレージ媒体でありうる、ストレージ装置２５０は、トレーニングデータ及び／又は試験データを含む、物体の姿勢を推定するべく使用されるデータを保存するためのデータリポジトリを含むことができる。ストレージ装置２５０は、限定を伴うことなしに、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、メモリ、着脱自在のストレージ、及び／又はこれらに類似したものを含む、任意の物理的ストレージ媒体であってもよい。ストレージ装置２５０は、ローカル装置として示されているが、ストレージ装置２５０は、例えば、サーバー演算装置又はこれに類したものなどの、リモートストレージ装置でありうることを理解されたい。
【００２５】
図２Ｃには、ストレージ装置２５０に含まれうる例示用のデータが示されている。図２Ｃに示されているように、ストレージ装置２５０は、例えば、画像データ２５２、トレーニングデータ２５４、及び／又は試験データ２５６を含みうる。画像データ２５２は、例えば、テクスチャなし物体の姿勢を判定する際に基準として使用されうる既知のテクスチャなし物体のサンプル画像、収集されると共にテクスチャなし物体の姿勢を判定するべく後から使用されるターゲットテクスチャなし物体の画像、及び／又はこれらに類似したものを含みうる。トレーニングデータ２５４は、例えば、本明細書において更に詳細に記述されているように、テクスチャなし物体の姿勢を認識するための演算装置のトレーニングに関係するデータを含みうる。試験データ２５６は、例えば、本明細書において更に詳細に記述されているように、演算装置がテクスチャなし物体の姿勢を正確に認識することを保証する際の演算装置の試験に関係するデータを含みうる。
【００２６】
再度図２Ａを参照すれば、任意選択のユーザーインターフェイス２２０は、バス２０１からの情報が、オーディオ、ビジュアル、グラフィック、又は英数フォーマットにおいて、演算装置のディスプレイ２２５部分上において表示されることを許容することができる。更には、ユーザーインターフェイス２２０は、キーボード、マウス、ジョイスティック、タッチスクリーン、リモートコントロール、ポインティング装置、ビデオ入力装置、オーディオ入力装置、触覚フィードバック装置、及び／又はこれらに類似したものなどの、入力装置へのデータの送信又はこれらからのデータの受信を許容する１つ又は複数の入力２３０をも含みうる。このようなユーザーインターフェイス２２０は、例えば、ユーザーが演算装置又はその任意のコンポーネントとの間においてやり取りすることを許容するべく、使用されてもよい。
【００２７】
システムインターフェイス２３５は、一般に、例えば、ロボット装置３００及び／又は撮像装置３０５などの、コンピュータネットワーク１００（図１）のコンポーネントの１つ又は複数との間においてインターフェイスするための能力を演算装置に提供することができる。このようなコンポーネントとの間における通信は、様々な通信ポート（図示されてはいない）を使用することにより、実行することができる。例示用の通信ポートは、インターネット、イントラネット、ローカルネットワーク、直接接続、及び／又はこれらに類似したものなどの、通信ネットワークに対して装着することができる。
【００２８】
通信インターフェイス２４５は、一般に、例えば、外部演算装置、リモートサーバー、及び／又はこれらに類似したものなどの、１つ又は複数の外部コンポーネントとインターフェイスするための能力を演算装置に提供することができる。外部装置との間における通信は、（図示されてはいない）様々な通信ポートを使用することにより、実行することができる。例示用の通信ポートは、インターネット、イントラネット、ローカルネットワーク、直接接続、及び／又はこれらに類似したものなどの、通信ネットワークに対して装着することができる。
【００２９】
図２Ａ〜図２Ｃにおいて示されているコンポーネントは、例示を目的としたものに過ぎず、且つ、本開示の範囲の限定を意図したものではないことを理解されたい。更に詳しくは、図２Ａ〜図２Ｃのコンポーネントは、サーバー演算装置１５０又はユーザー演算装置２００内に存在するものとして示されているが、これらは、非限定的な例である。いくつかの実施形態においては、コンポーネントのうちの１つ又は複数は、サーバー演算装置１５０及び／又はユーザー演算装置の外に存在することができる。同様に、コンポーネントのうちの１つ又は複数は、本明細書において具体的に記述されてはいないその他の演算装置内において実施されてもよい。
【００３０】
図３Ａ及び図３Ｂは、１つ又は複数のテクスチャなし物体をサポートする例示用のピッキング表面を示している。ピッキング表面３１０は、ロボット装置３００がピッキング表面３１０上において配置された任意の物体に到達しうるように、ロボット装置３００に隣接していてもよい。ピッキング表面３１０は、作業表面又はこれに類似したものなどの、任意の表面であってもよい。ピッキング表面３１０は、テクスチャなし物体３１５が、ピッキング表面３１０から落下しないように、その上部における１つ又は複数のテクスチャなし物体３１０の配置をサポートするように構成されていてもよい。従って、いくつかの実施形態においては、ピッキング表面３１０は、水平方向であってもよく、且つ、ピッキング表面３１０の１つ又は複数のエッジは、テクスチャなし物体がピッキング表面３１０のエッジから落下することを防止する、唇、隆起、壁、又はこれらに類似したものを含むことができる。ピッキング表面３１０の寸法は、本開示によって限定されるものではなく、一般には、ロボット装置３００の少なくとも一部分が、その１つ又は複数のエッジのそれぞれを含む、ピッキング表面３１０のすべての部分に到達しうるように、サイズ設定及び成形することができる。
【００３１】
１つ又は複数の撮像装置３０５は、本開示によって限定されるものではなく、且つ、そのそれぞれは、一般には、画像をキャプチャする任意の装置であってもよい。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、カメラ、キャムコーダ、又はこれらに類似したものであってもよく、且つ、１つ又は複数の画像センサ、１つ又は複数の画像プロセッサ、１つ又は複数の光学要素、及び／又はこれらに類似したものを内蔵することができる。１つ又は複数の撮像装置３０５のそれぞれは、ズームイン及びアウトする能力を有していてもよく、且つ、更には、例えば、パン、チルト、及び／又はこれらに類似したものなどの、運動する能力を更に有することもできる。
【００３２】
撮像装置３０５の数は、本開示によって限定されるものではなく、且つ、一般には、任意の数の撮像装置３０５を含みうる。例えば、図３Ａに示されているように、複数の撮像装置３０５が、ピッキング表面３１０及び／又はその上部において支持されている１つ又は複数のテクスチャなし物体３１５をキャプチャするように使用されてもよい。別の例においては、図３Ｂにおいて示されているように、単一の撮像装置３０５が、ピッキング表面３１０及び／又はその上部において支持されている１つ又は複数のテクスチャなし物体３１５をキャプチャするように、使用されてもよい。
【００３３】
様々な実施形態においては、１つ又は複数の撮像装置３０５は、ピッキング表面３１０に隣接した状態において位置決めされてもよい。１つ又は複数の撮像装置３０５は、一般に、１つ又は複数の撮像装置３０５のうちのそれぞれの撮像装置の視野が、１つ又は複数のテクスチャなし物体３１５などの、その上部において配置されている任意の物体を含む、ピッキング表面３１０の少なくとも一部分をキャプチャするように、位置決めされてもよい。例えば、（図３Ａに示されているように）１つ又は複数の撮像装置３０５が複数の撮像装置である実施形態においては、複数の撮像装置のそれぞれが、その独自の光軸を有する。これに加えて、それぞれの個々の撮像装置は、それぞれの個々の光軸がピッキング表面３１０との関係において異なる角度を有するように、方向付けされている。別の例においては、（図３Ｂに示されているように）１つ又は複数の撮像装置３０５が単一の撮像装置である実施形態においては、撮像装置は、光軸を有していてもよく、且つ、撮像装置の運動（例えば、回転）により、光軸は、ピッキング表面３１０との関係において複数の異なる角度において連続的に再方向付けされている。
【００３４】
１つ又は複数の撮像装置３０５は、本明細書において記述されているように、ピッキング表面３１０を撮像する能力を撮像装置に対して提供する任意の静止した又は運動する装置に取り付けられてもよい。例えば、図３Ｂにおいて具体的に示されているように、撮像装置３０５は、撮像装置３０５がピッキング表面３１０の任意の角度をキャプチャしうるように、撮像装置３０５が、（破線によって示されているように）ピッキング表面３１０の周りにおいて中心軸Ａを中心として運動することを許容する、アーム又はその他の支持部（図示されてはいない）に対して結合されてもよい。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、１つ又は複数のテクスチャなし物体３１５などの、物体の運動を追跡するように、構成されていてもよい。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のうちのそれぞれの撮像装置の運動は、ユーザーによって遠隔制御されていてもよい。
【００３５】
次に図４を参照すれば、１つ又は複数の撮像装置３０５は、複数の異なる視点４０５ａ〜４０５ｈ（集合的に、４０５）においてテクスチャなし物体３１５の画像をキャプチャするように、構成されていてもよい。１つ又は複数の撮像装置３０５は、ピッキング表面３１０上において配置される前に、或いは、ピッキング表面３１０上において配置された後に、テクスチャなし物体３１５の画像をキャプチャすることができる。いくつかの実施形態においては、様々な視点４０５は、（例えば、図３Ｂに示されているように）それぞれの視点４０５ａ〜４０５ｈをキャプチャするべくテクスチャなし物体３１５を中心として回転する単一の撮像装置３０５から取得されてもよい。その他の実施形態においては、様々な視点４０５は、（例えば、図３Ａに示されているように）それぞれの視点４０５ａ〜４０５ｈをキャプチャするべく、テクスチャなし物体の周りにおいて位置決めされた複数の撮像装置３０５から取得されてもよい。図４は、８つの異なる視点４０５を示しているが、視点４０５の数は、本開示によって限定されるものではなく、且つ、一般には、本明細書において更に詳細に記述するように、画像データをキャプチャすると共にテクスチャなし物体の姿勢を判定するために十分な任意の数の視点であってよい。
【００３６】
又、複数の視点４０５に加えて、１つ又は複数の撮像装置３０５は、それぞれの視点４０５ａ〜４０５ｈにおいてテクスチャなし物体３１５の複数のスケールをキャプチャするように構成されていてもよい。スケールは、一般に、テクスチャなし物体の全体がそれぞれのズームにおいて可視状態にある場合に、テクスチャなし物体３１５の「ズームイン」又は「ズームアウト」されたキャプチャを意味している。即ち、それぞれのスケールは、それぞれの視点４０５ａ〜４０５ｈにおけるキャプチャ画像の特定の倍率レベルを表しうる。例えば、ズームレンズ又はこれに類似したものなどの、１つ又は複数の撮像装置３０５のうちのそれぞれの撮像装置の光学部分を使用することにより、様々な倍率レベルを取得することができる。例えば、１つ又は複数の撮像装置３０５は、それぞれの視点４０５ａ〜４０５ｈにおいて、１×倍率における第１スケール４１０ａ〜４１０ｈをキャプチャしてもよく、２×倍率における第２スケール４１５ａ〜４１５ｈをキャプチャしてもよく、且つ、３×倍率における第３スケール４２０ａ〜４２０ｈをキャプチャしてもよい。本明細書において記述されているそれぞれのスケールにおける倍率の値は、例示を目的としたものに過ぎず、且つ、本開示の範囲を逸脱することなしに、任意の倍率を使用できることを理解されたい。
【００３７】
図３Ａ及び図３Ｂを再度参照すれば、いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、画像を連続的にキャプチャしてもよく（例えば、「バーストモード」キャプチャ）、特定のインターバルにおいて単一の画像をキャプチャしてもよく、且つ／又は、モーション画像をキャプチャしてもよい（例えば、ビデオキャプチャ）。画像が特定のインターバルにおいてキャプチャされる実施形態においては、例示用のインターバルは、限定を伴うことなしに、１秒ごと、２秒ごと、３秒ごと、４秒ごと、又はこれらに類似したものを含みうる。いくつかの実施形態においては、１つ又は複数の撮像装置３０５のそれぞれは、例えば、図１に示されているサーバー演算装置１５０及び／又はユーザー演算装置２００などの、演算装置によって制御された際には常に、画像をキャプチャすることができる。１つ又は複数の撮像装置３０５のそれぞれの撮像装置によってキャプチャされた画像データは、一般に、例えば、図１に示されているサーバー演算装置１５０及び／又はユーザー演算装置２００などの、演算装置に送信されてもよい。画像データは、演算装置（例えば、図１のサーバー演算装置１５０及び／又はユーザー演算装置２００）が、本明細書において更に詳細に記述されているように、画像からテクスチャなし物体３１５の姿勢を判定しうるようなものであってよい。これに加えて、１つ又は複数の撮像装置３０５のそれぞれによってキャプチャされた画像データは、ストレージ装置２５０（図２Ａ）などの、ストレージ媒体内において保存されてもよい。
【００３８】
ロボット装置３００は、本開示によって限定されるものではなく、且つ、一般には、ロボットピッキング装置又はこれに類似したものなどの、運動する、物体を把持する、物体を運動させる、物体を操作する、且つ／又は、これらに類似した内容を実行する、能力を有する、且つ、これらを実行するべく制御されるように構成された、任意のロボット装置であってもよい。例えば、ロボット装置３００は、任意の方向において運動可能であり、且つ、延伸及び退却が可能でもある、アームを有することができる。これに加えて、ロボット装置３００は、ロボット装置３００が物体を把持することを許容する複数の指を含む手又はこれに類似したものを有することもできる。従って、ロボット装置３００は、任意の数の固定部材、延長部材、結合部、運動可能なコンポーネント、及び／又はこれらに類似したものを含みうる。又、ロボット装置３００は、モーター、ソレノイド、液圧システム、ガス圧システム、圧電システム、及び／又はこれらに類似したものなどの、ロボット装置３００を運動させるように構成された１つ又は複数の装置をも含みうる。いくつかの実施形態においては、ロボット装置３００は、１つ又は複数のステップモーターを含んでいてもよく、これらは、特定の増分におけるロボット装置３００の正確な運動を許容することにより、ロボット装置３００の正確な制御を許容することができる。これに加えて、ロボット装置３００は、本明細書において更に詳細に記述されているように、その様々なコンポーネント及び／又は１つ又は複数の演算装置の間の通信のための１つ又は複数の装置を含むこともできる。このような通信装置は、ロボット装置３００及び／又はそのコンポーネントの運動を制御する制御信号を受け取ることができる。
【００３９】
様々な実施形態においては、ロボット装置３００は、例えば、アーム本体セグメント、ロボットハンド、結合部、ベース部分、及び／又はこれらに類似したものなどの、その一部分に装着された１つ又は複数のセンサを含んでいてもよい。１つ又は複数のセンサは、一般には、ロボット装置３００と別の物体の間の接触を検知するように構成されていてもよい。例えば、いくつかの実施形態においては、１つ又は複数のセンサは、ロボット装置３００とテクスチャなし物体３１５の間の接触を検知することができる。特定の実施形態においては、１つ又は複数のセンサは、ロボット装置３００とテクスチャなし物体３１５の間の接触の正確な場所を検知するように構成されていてもよい。このような接触の正確な場所は、本明細書において更に詳細に記述されているように、テクスチャなし物体３１５の姿勢との関連において更なる情報を提供しうる。１つ又は複数のセンサは、一般に、任意のセンサであってもよく、具体的には、物体接触を検知するように構成されたセンサであってもよい。従って、いくつかの実施形態においては、１つ又は複数のセンサは、タッチセンサ、赤外線センサ、光センサ、レーザー検知装置、及び／又はこれらに類似したもののうちの１つ又は複数を含んでいてもよい。タッチセンサは、一般に、ロボット装置３００とテクスチャなし物体３１５の間の接触によって生成される圧力を検知するように構成されたセンサであってもよい。光センサは、テクスチャなし物体３１５がロボット装置３００と接触した際に、その視野内においてテクスチャなし物体３１５を検出するように構成された光ダイオード又はこれに類似したものであってもよい。いくつかの実施形態においては、１つ又は複数のセンサは、一般的に使用されている、容易に入手可能である、且つ、複雑なコンポーネント及び保守を必要としていない、タイプのセンサであってよい。
【００４０】
一般に、図３Ａ及び図３Ｂに示されているロボット装置３００は、例示を目的としたものに過ぎないことを理解されたい。従って、ロボット装置３００は、本開示の範囲を逸脱することなし、任意のタイプのロボット装置又は類似の装置を含みうる。従って、当業者は、本明細書において開示されているロボット装置３００に類似した方式によって機能するその他のロボット装置及び類似の装置を認識するであろう。更には、本開示は、更なる又は代替コンポーネント及び機能を含むロボット装置及び類似の装置をも含みうる。
【００４１】
いくつかの実施形態においては、ロボット装置３００及び１つ又は複数の撮像装置３０５は、単一のコンポーネント内に統合されていてもよい。即ち、ロボット装置３００及び撮像装置３０５は、本明細書において記述されているように、テクスチャなし物体３１５の撮像と、テクスチャなし物体３１５の把持、運動、及び操作と、の両方のために使用される単一のユニットを構成していてもよい。その他の実施形態においては、ロボット装置３００及び１つ又は複数の撮像装置３０５は、図３Ａ及び図３Ｂにおいて示されているように、その独自の別個の機能をそれぞれが有する、互いに別個のコンポーネントであってもよい。
【００４２】
ロボット装置３００及び撮像装置３０５は、一般に、テクスチャなし物体３１５の姿勢を推定すると共にテクスチャなし物体３１５を操作することを目的として、タンデム方式で機能することができる。例えば、撮像装置３０５は、ロボット装置３００がテクスチャなし物体３１５を操作する前に、テクスチャなし物体３１５の姿勢の判定のために（即ち、操作の前に、ロボット装置３００の位置決めについて正確な判定が実施されうるように）、テクスチャなし物体３１５の画像をキャプチャすることができる。別の例においては、撮像装置３０５は、ロボット装置３００がテクスチャなし物体３１５を誤った方式で操作しないことを保証するべく、且つ／又は、テクスチャなし物体３１５の操作の際にロボット装置３００を補正するべく、テクスチャなし物体３１５が姿勢について監視されうるように、ロボット装置３００によるその操作の際に、テクスチャなし物体３１５の画像を連続的にキャプチャすることができる。
【００４３】
図５Ａにおいて示されているように、演算装置（例えば、図１のサーバー演算装置１５０及び／又はユーザー演算装置２００）によって実行されうる方法は、一般に、トレーニングフェーズ５１０及び試験フェーズ５１５を含む推定フェーズ５０５を含むことができる。本明細書においては、一般に、図５Ｂとの関係において、推定フェーズ５０５について説明する。本明細書においては、一般に、図６との関係において、トレーニングフェーズについて説明し、且つ、本明細書においては、図７との関係において、試験フェーズについて説明する。いくつかの実施形態においては、トレーニングフェーズ５１０は、トレーニングロジック２１４（図２Ｂ）に含まれている１つ又は複数の命令によって完了させることができる。いくつかの実施形態においては、試験フェーズ５１５は、試験ロジック２１６（図２Ｂ）に含まれている１つ又は複数の命令によって完了させることができる。
【００４４】
図５Ｂを参照すれば、推定フェーズは、ステップ５１６において、テクスチャなし物体の単一の画像を取得するステップを含むことができる。テクスチャなし物体の姿勢は、単一の画像から推定することができる。例えば、姿勢が本明細書において記述されているように推定された際に、テクスチャなし物体を正確にピックアップし、テクスチャなし物体を操作し、テクスチャなし物体を運動させ、且つ／又はこれらに類似した内容を実行するべく、移動するために、推定を使用してロボット装置３００に命令を送信することができるように、ロボット装置３００（図１）の観点から、単一の画像を取得することができる。
【００４５】
ステップ５１８において、テクスチャなし物体の３次元（３Ｄ）モデルを生成（レンダリング）することができる。本明細書においては、３次元モデルのレンダリングに関する更なる詳細は、トレーニングフェーズの一部分として、図６との関係において説明することとする。
【００４６】
ステップ５２０において、ステップ５１６において取得された単一の画像が、ステップ５１８において生成された３Ｄモデルの離散化レンダリングとマッチングされている。３次元モデルに関する更なる詳細については、試験フェーズの一部分として、少なくとも図７との関係において説明することとする。マッチングステップの結果として、離散化レンダリングとの間における単一の画像のアライメントを得ることができる。
【００４７】
ステップ５２２によって示されているように、ステップ５２０におけるマッチングから、判定されたアライメントに基づいてテクスチャなし物体の姿勢が推定されている。姿勢の推定に関する更なる詳細については、本明細書において、更に詳細に説明することとする。
【００４８】
図６に示されているように、ステップ６０５において、テクスチャなし物体の画像が取得されている。画像は、一般に、更に詳細に本明細書において説明するように、撮像装置から取得することができる。ステップ６１０において、テクスチャなし物体の幅及び高さを画像Ｉ∈Ｒw×hから判定することができるが、ここで、図８ｃに示されているように、Ｉは、取得された画像を表しており、ｗは、画像の幅であり、且つ、ｈは、画像の高さである。ステップ６１５において、テクスチャなし物体の更なる画像が存在しているかどうかについての判定を実施することができる。例えば、図４との関係において上述したように、１つ又は複数の撮像装置は、複数の視点
2019515364.tif 000081
及び複数のスケール
2019515364.tif 000082
を表す複数の画像をキャプチャすることができる。ＮΩは、視点の数を表しており、且つ、Ｎsは、スケールの数を表している。
【００４９】
更なる画像の取得を要する場合には、プロセスは、更なる画像を取得するべく、ステップ６０５に戻ることができる。すべての画像が取得されたら、ステップ６２０において、ｎ個のテンプレートを取得するべく、テクスチャなし物体の周りの視点及びスケールのそれぞれから画像のすべてを取得することにより、３Ｄモデルが生成（レンダリング）される。以下のアルゴリズム１及びアルゴリズム２に従ってテンプレート及び画像パッチをベクトル化することにより、同時にすべてのテンプレートを画像とマッチングさせることができる。アルゴリズム１及びアルゴリズム２の一般的な目的は、関数
2019515364.tif 000083
の下においてパッチｔi及びｐjをｔi’及びｐj’に変換することにより、テンプレートベクトルと画像パッチベクトルの間の安定した類似性尺度を取得する、即ち、ｔi’＝ｆ（ｔi）及びｐj’＝ｆ（ｐj）を演算する、というものである。この関数の下においては、２つのベクトル（テンプレートベクトル及び画像ベクトル）の類似性を計測するための安定した方法として、相互相関が使用されている。方法は、変換関数ｆ（・）が、ガウシアン・ラプラシアン画像パッチの平均分散正規化を実行している場合には、即ち、以下のとおりである場合には、一般に、異なる照明、異なるモデル外観、テクスチャ、及びわずかな変形変化に対して安定しうる。
【数１】
2019515364.tif 000084
【００５０】
ここで、以下のとおりであり、
【数２】
2019515364.tif 000085
ここで、μv及びσvは、ベクトル化されたパッチｖ∈Ｒmの強度値の平均及び標準偏差であり、且つ、以下のとおりであり、
【数３】
2019515364.tif 000086
ここで、ｕは、オリジナルの画像からのパッチであり、Ｇは、２次元ガウシアンを表しており、且つ、Δは、ラプラス演算子を表している。
【００５１】
変換済みのパッチｔi’及びｐj’の間の類似性は、次式によって表され、
【数４】
2019515364.tif 000087
ここで、ｓ’は、オリジナルパッチＴi及びＰjのガウシアン・ラプラシアンの間の正規化された相互相関を表している。
【００５２】
パッチをベクトル化することにより、処理装置２０５（図２Ａ）上における高速行列間乗算を活用し、演算を高速化させる。次式のように、サイズＲn×mを有するスコア行列Ｓが生成され、ここで、ｎは、テンプレートの数であり、且つ、ｍは、画像内のパッチの数である。
【数５】
2019515364.tif 000088
【００５３】
ここで、Ｓ（ｉ，ｊ）は、ｊ番目の画像パッチＴとの間におけるｉ番目のテンプレートＴiの相関値を表しており、Ｔ’は、ベクトル化されたテンプレート行列であり、Ｔ’のそれぞれの行は、１つのベクトル化テンプレートｔi’を表している。
【数６】
2019515364.tif 000089
【００５４】
Ｐ’は、画像行列であり、Ｐ’のそれぞれの列は、次式のように、１つのベクトル化された画像パッチｐj’を表している。
【数７】
2019515364.tif 000090
【００５５】
式（５）の計算を更に加速させるべく、テンプレート行列Ｔ’に対する次元削減が事前演算される。
【数８】
2019515364.tif 000091
【００５６】
ここで、Ａは、直交行列であり、Ｚは、最初のｋ個の主成分を有する基本行列である。Ａ及びＺを取得するべく、主成分分析（ＰＣＡ：Ｐｒｉｎｃｉｐａｌ  ｃｏｍｐｏｎｅｎｔ  Ａｎａｌｙｓｉｓ）を使用することにより、Ｔ’に対する特異値分解を完了させる。即ち、Ｔ’は、次式のように分解される。
【数９】
2019515364.tif 000092
【００５７】
ここで、Ｄは、非負の対角要素が降順である、Ｘと同一次元の対角行列を表しており、且つ、Ｕ、Ｖは、それぞれ、対角行列、ユニタリ行列である。ここで、ｋ個の主成分が選択され、且つ、α百分率分散が維持される。
【数１０】
2019515364.tif 000093
【００５８】
ここで、α＝９０％である場合には、行列の次元を削減しつつ、精度が維持される。最初のｋ個の列がＵから選択され、
【数１１】
2019515364.tif 000094
且つ、Ｓ＝Ｔ’Ｐ’及びＴ’＝ＡＺから、Ｚが次式として定義され、
【数１２】
2019515364.tif 000095
次式が得られる。
【数１３】
2019515364.tif 000096
【００５９】
ここで、以下のとおりである。
【数１４】
2019515364.tif 000097
【００６０】
式（１３）を直接的に算出するのではなく、まず、高スコアが見込めない画像場所を除去することにより、ＡＱの計算が加速される。具体的には、Ｑ内の列が除去され、且つ、Ｑ’＝［…Ｑi…］，ｉ∈Ｉが取得されるが、ここで、Ｉは、有望な画像場所に対応する画像行列の列内へのインデックスの小さなサブセットである。最終的なスコア行列Ｓ’が、次式として得られる。
【数１５】
2019515364.tif 000098
【００６１】
行列Ｑ内のそれぞれの列のＬ2ノルムを計測値として使用する（即ち、
2019515364.tif 000099
）。
2019515364.tif 000100
が、λにより、上方において制限されている、即ち、このピクセルにおけるすべてのテンプレートスコアがλ未満であるとしよう。この観察は、Ｑ内のｊ番目の列に対応する見込みのない画像パッチの除去を許容する。
【００６２】
アルゴリズム１：オフラインテンプレート行列生成及びＰＣＡ
入力：
すべてのテンプレートＴ1．．．Ｔn
出力：
係数行列Ａ、基本行列Ｚ
2019515364.tif 000101
【００６３】
アルゴリズム２：オンラインマッシングテンプレートマッチング
入力：
テンプレート係数行列Ａ、基本マトリックスＺ、閾値λ
出力：
それぞれのフレームごとのスコア行列Ｓ
2019515364.tif 000102
【００６４】
例えば、ｉ∈｛１，２，…，ｎ｝であり、且つ、ｎがテンプレートの数である状態において、テンプレート
2019515364.tif 000103
である場合に、ｗ’及びｈ’は、それぞれ、テンプレートの幅及び高さである。テンプレートは、具体的には、行順序ピクセルを順番に列ベクトルＴi∈ＲN内に配置するように、ベクトル化され、Ｎは、１つのテンプレート内のピクセル数である。同様に、ｊ∈｛１，２，…，ｍ｝であり、且つ、ｍがＩ内の画像パッチの数を表している状態において、画像パッチＰjが、画像Ｉ∈Ｒm内の場所ｊにおけるテンプレートの同一サイズを有するとしよう。パッチは、ベクトルｐj∈Ｒmにベクトル化される。２つのベクトルｔi及びｐjの間の相互相関は、ｉ番目のテンプレートＴiとｊ番目の画像パッチＰjの間の類似性を表している。
【００６５】
ステップ６２５において、幅Ｕのスクエアレンダリング（ｓｑｕａｒｅ  ｒｅｎｄｅｒ）が生成され、ここで、Ｕ∝ｓ及びｓ∈Ｓである。視点Ω∈Ｏ及びスケールｓ∈Ｓからのレンダリングは、
2019515364.tif 000104
によって表される。それぞれのレンダリングＲごとに、ステップ６３０において、Ｌｏｇ画像の組Ｒ＝｛Ｒ1，Ｒ2，…，ＲL｝を得るべく、Ｒを減少する標準偏差σ1，σ2，…，σLのガウシアン・ノラプラシアン（Ｌｏｇ）と畳込むことにより、マルチレベル表現が生成され、ここで、Ｌは、マルチレベル表現内のレベルの数である。トップレベル（即ち、Ｒ1）において、ＬｏＧは、画像内の様々な一貫性を有する領域を表す粗ブロブを含み、且つ、弁別性を提供している。ボトムレベルにおいては（即ち、ＲLにおいては）、ＬｏＧは、コーナー及びテクスチャの微細スケールの詳細を表し、且つ、精度を提供しているが、弁別性は、提供していない。例えば、図８Ａに示されているように、ＲLは、いくつかの正確なエッジ特徴を含んでいる。
【００６６】
次に図７を参照すれば、試験フェーズは、パッチの場所特定用のマルチレベルツリーを形成するプロセスを含むことができる。ステップ７０５において、パッチがそれぞれのレンダリングＲから抽出されており、且つ、ステップ７１０において、それぞれのパッチの場所が抽出されている。従って、ｌ∈｛１，２，…，Ｌ｝であるそれぞれのレベルｌごとに、Ｎl個のパッチ
2019515364.tif 000105
が、レベルｌにおけるＬｏｇＲlレンダリング内の場所
2019515364.tif 000106
から抽出される。ここで、ｌ∈１，２，…，Ｎlであり、且つ、
2019515364.tif 000107
である。場所ｙilは、マルチレベルのガウシアン・ラプラシアン表現に対してスケール不変特徴変換（ＳＩＦＴ：Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）の基礎をなす関心点抽出アルゴリズムを実行することにより、抽出される。ステップ７１５において、更なるレベルが存在しているかどうかについての判定が実施され、且つ、存在している場合には、プロセスは、ステップ７０５に戻る。
【００６７】
ステップ７２０において、多数の関心点場所／レベルの抽出を要するかどうかについての判定が実施され、且つ、その抽出を要する場合には、ステップ７２５において、コーナーネス閾値が小さな値に設定される。例えば、いくつかの実施形態においては、コーナーネス閾値は、０．０２であってもよい。目的は、Ｉのマルチレベル表現内（即ち、組Ｉ内）のすべてのパッチの場所を同時に推定するというものである。パッチＲl（ｙil）の場所は、レベルｌのＬｏＧＩ1内において、ランダム変数ｘilとして表される。それぞれのｘilのサンプル空間は、画像Ｉのドメインを表す離散２次元グリッドＲW×Hである。目的は、ＩのＬｏＧの組Ｉが付与された場合の場所ｘ11，ｘ12，…，ｘN1l）の結合確率ｐ（ｘ11，ｘ12，…，ｘN1l｜Ｉ）の最大値の演算に対応しており、即ち、次式のとおりである。
【数１６】
2019515364.tif 000108
【００６８】
式（１６）内の結合確率の最適化は、演算的に困難である。画像内のすべてのパッチの最良の場所特定を判定するべく、
2019515364.tif 000109
という仮定を評価しなければならない。可能なパッチ場所の空間を素直にサーチするべく、図８Ｂに示されているように、それぞれのハイレベルパッチをいくつかのローレベルパッチにリンクすることにより、マルチレベルツリーが構築される。ベイズの定理と条件付き独立性の規則を使用することにより、結合確率ｐ（ｘ11，ｘ21，ｘ22，ｘ31，ｘ32，ｘ33，ｘ34｜Ｉ）は、相対的にハイレベルのパッチが付与された場合の相対的にローレベルのパッチの場所の条件付き確率の積として表現され、即ち、次式のとおりである。
【数１７】
2019515364.tif 000110
【００６９】
最大積の規則を使用することにより、式（１７）内の確率の極大化を次式として分解する。
【数１８】
2019515364.tif 000111
【００７０】
式（１８）は、図８Ｂに示されているツリー構造に対して正確な推定を実行するための動的プログラミングの活用を許容している。
【００７１】
わかりやすさを目的として、以下の説明は、その親Ｘ11が付与された場合の子ｘ21の条件付き確率ｐ（ｘ21｜ｘ11，Ｉ）の取得に関係している。但し、以下の説明は、すべてのパッチに適用されることを理解されたい。ベイズの定理は、ｐ（ｘ21｜ｘ11，Ｉ）を次式として表現するべく、使用される。
【数１９】
2019515364.tif 000112
【００７２】
式（１９）において、ｐ（ｘ21｜ｘ11）は、その親の場所ｘ11が付与された場合に子パッチの場所ｘ21を知る事前確率を表しており、且つ、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表している。式（１９）の項Ｚは、通常は
2019515364.tif 000113
が１に等しくなることを強制する証拠を表している。さもなければ、小さな値による除算が導入され、且つ、ｐ（ｘ21｜ｘ11，Ｉ）における偽応答がもたらされることから、Ｚを１に設定することにより、数値的に安定した結果が得られる。
【００７３】
式（１９）の項ｐ（ｘ21｜ｘ11）は、その親の場所ｘ11が付与された場合に子パッチのｘ21の場所を知る事前確率を表している。３Ｄモデルレンダリングを使用することにより、画像内のｘ21とｘ11の間の変位がレンダリング内のｙ21とｙ11の間の変位に類似することになるプライア（ｐｒｉｏｒ）を提供する。変位の類似性は、ガウシアンプライアｐ（ｘ21｜ｘ11）としてモデル化され、ここで、次式のとおりである。
【数２０】
2019515364.tif 000114
【００７４】
2019515364.tif 000115
、Δｙ21＝ｙ21−ｙ11、並びに、ｙ21及びｙ11は、レンダリングにおける子パッチ及び親パッチの場所である。式（２０）において、標準偏差λ2（或いは、一般的には、λ1）は、パッチがＬｏｇＩ3内（或いは、一般的には、Ｉl内）において微動（ｊｉｔｔｅｒ）しうる程度を表している。ボトムレベルにおいては、即ち、レベルＬにおいては、パッチは、パッチが、その親パッチのサイズに対応する領域内において微動することを許容するべく、ＬにおけるＬｏＧカーネルの標準偏差σLに設定されてもよい。すべてのその他のレベルの場合には、λ1は、２のべき乗だけのパッチサイズの減少を反映するように、２に設定される。
【００７５】
式（１９）において、ｐ（Ｉ｜ｘ21、ｘ11）は、画像内のパッチＲ2（ｙ21）の場所ｘ21を見出すデータ尤度を表している。ＬｏＧ画像は、独立的にパッチによって生成されるものと仮定され、これにより、次式が得られる。
【数２１】
2019515364.tif 000116
【００７６】
子ｘ21のレベルにおけるＬｏＧの生成の尤度は、その親ｘ11とは独立しており、これにより、式（２１）内のｘ11に対する従属性を破棄することが許容されるものと更に仮定する。これに加えて、それぞれの非リーフパッチ場所（即ち、ｘ２１、ｘ２２、及びｘ１１）は、それ自身に、且つ、その子に、のみ依存しており、これにより、式（２１）内の第１乗法項を破棄することが許容されるものと仮定する。この仮定は、データ尤度を次式に単純化する。
【数２２】
2019515364.tif 000117
【００７７】
Ｉ2（ｘ21）が、場所ｘ21において画像Ｉ2のＬｏＧから抽出されたサイズＵ2×Ｕ2のパッチを表し、且つ、ａが、列ベクトルとしてベクトル化されたパッチを表すものとしよう。Ｒ2（ｙ21）が、同様に、場所ｙ21におけるレンダリングのＬｏＧＲ2から抽出されたサイズＵ2×Ｕ2のパッチを表し、且つ、ｂが列ベクトルとしてベクトル化されたパッチを表すものとしよう。ｐ（Ｉ2｜ｘ21）は、次式としてモデル化される（即ち、Ｉ2｜ｘ21の生成におけるパッチＲ2（ｙ21）の寄与）。
【数２３】
2019515364.tif 000118
【００７８】
図９の中間列の最下部に配置されているマップ９００は、ｐ（Ｉ2｜ｘ21）を表している。式（２３）の絶対値における項は、画像のＬｏＧからのパッチＩ2（ｘ21）との間におけるパッチＲ2（ｙ21）の正規化済みの相互相関である。式（２３）において、μa及びμbは、それぞれ、パッチＩ2（ｘ21）及びパッチＲ2（ｙ21）内の平均強度であり、σa及びσbは、それぞれの強度における標準偏差である。正規化済みの相互相関は、画像内の類似の特徴を表すパッチ内の特徴の間における照明不変性を提供している。マッチングを加速させるべく、フーリエ変換及び積分和を使用することにより、ＬｏＧＩ2の全体に伴って、Ｒ2（ｙ21）の高速正規化済み相互相関が実行される。正規化済み相互相関の絶対値は、コントラスト反転を説明するべく用いられている。パラメータβは、確率分布のピーキネス（ｐｅａｋｉｎｅｓｓ）を表しており、これは、例えば、４に設定することができる。
【００７９】
項ｐ（Ｉ3｜ｘ21）、即ち、位置ｘ21におけるパッチの寄与は、次式のとおりであることを示すことにより、ｘ21に対応するパッチの子のデータ尤度を重要視しないことにより、モデル化することができる。
【数２４】
2019515364.tif 000119
【００８０】
図９の右列内の上部の２つのマップ９０５、９１０は、式（２４）における意図的過小評価を表している。式（２４）を式（２２）に代入することにより、データ尤度ｐ（Ｉ｜ｘ21，ｘ11）は、次式として記述される。
【数２５】
2019515364.tif 000120
【００８１】
図９の最下部右のマップ９１５は、ｐ（Ｉ｜ｘ21，ｘ11）を表している。式（２５）は、それ自体及びその子からの寄与を有するものとしてのパッチのデータ尤度のモデル化を許容しており、これにより、パッチの応答が強化される。この観点において、このような方式は、親部分のデータ尤度が子部分とは別個にモデル化されているその他の方式とは別個である。式（１６）内の結合確率に対する寄与においてリーフパッチを強調するべく、式（２５）の右側の平方根は、ｘ21などの非リーフパッチがデータ尤度ｐ（Ｉ｜ｘ21，ｘ11）を表すように、使用されている。
【００８２】
図９のマップ９２０内に示されている式（１６）の項ｐ（ｘ31｜ｘ21）は、式（１９）内の類似の項ｐ（ｘ21｜ｘ11）とは別個である。ここで、これは、その子に起因した画像内の場所ｘ21におけるパッチの予想外観に対するプライアをモデル化するべく、使用されている。外観プライアは、正しい視点からのレンダリングが物体の照明不変外観用の妥当なイニシャライザを提供していることから、平均において、パッチに起因した画像の応答、即ち、ｐ（Ｉ3｜ｘ31）によって表される応答は、パッチに起因したレンダリングの応答に類似することになる、という概念を表している。ｐ（ｘ31｜ｘ21）をモデル化するべく、パッチ
2019515364.tif 000121
が、ＬｏＧＲ3から親ｙ21の場所において抽出される。Ｒ3（ｙ21）は、図９のマップ９２５内において示されている。Ｒ3（ｙ31，ｙ21）が、それぞれの子パッチｙ31の場所におけるＲ3（ｙ21）から抽出されたサイズ
2019515364.tif 000122
のパッチを表しているとしよう。又、Ｒ3（ｙ31）が、場所ｙ31におけるＲ3から抽出された子パッチを表しているとしよう。ａ及びｂが、それぞれ、ベクトル化されたＲ3（ｙ31，ｙ21）及びＲ3（ｙ31）を表している場合には、ｐ（ｘ31｜ｘ21）は、式（２３）と同様に、即ち、次式として、記述することができる。
【数２６】
2019515364.tif 000123
【００８３】
ここで、
2019515364.tif 000124
である。式（２３）におけると同様に、式（２６）内の絶対値における項は、Ｒ3（ｙ31）とパッチＲ3（ｙ31、ｙ21）の間の正規化済みの相互相関を表している。式（２６）は、画像に依存していないことから、ｐ（ｘ31｜ｘ21）は、試験フェーズの前に、構築及び保存される。実際には、意図的過小評価
2019515364.tif 000125
は、画像全体における尤度ｐ（Ｉ3｜ｘ32）のマップをフーリエドメイン内の外観における事前確率ｐ（ｘ32｜ｘ21）のマップと畳込むことにより、実行される。
【００８４】
高速網羅サーチとの間における正確なアライメントを提供するべく、図１０に示されているように、粗から微細へのアライメント方式が提供される。ステップ１００５において、複数のスクエアテンプレートレンダリングを得るべく、複数の向きにわたって、且つ、複数のスケールにわたって、３Ｄモデルがレンダリングされている。非限定的な一例においては、３Ｄモデルは、３２４個の向きわたってレンダリングされてもよい（１０°だけ離隔した方位角における３６個のサンプル、２０°だけ離隔した仰角における３個のサンプル、及び２０°だけ離隔した面内回転における３個のサンプル）。別の非限定的な例においては、３Ｄモデルは、１６個のスケールにわたってレンダリングされてもよい。この結果、幅Ｕ＝１８０の５１８４個のスクエアテンプレートレンダリングを得ることができる。ｓ番目のスケールは、例えば、（０．７５＋．０５（ｓ−１））-1として設定することができる。σ1＝３を有する１レベルツリー（Ｌ−１）がテンプレートから候補の組を選択する。非限定的な一例においては、５１８４個のテンプレートから、２０個の候補を選択することができる。
【００８５】
ステップ１０１０において、仰角オフセット、方位角オフセット、及び／又は面内オフセットを有するそれぞれの候補の空間の周りの視点における複数の微細サンプルが取得されている。非限定的な一例においては、仰角オフセット５°、０°、０°、０°、及び−５°、方位角オフセット０°、５°、０°、−５°並びに０°、０°、０°、及び−５°を伴って、且つ、面内オフセットを伴うことなしに、２０個のそれぞれの候補の空間の周りにおいて、５個の微細サンプルを取得することができる。ステップ１０１５において、複数のテンプレートを得るべく、スケールにおいて複数のサンプルを取得することができる。非限定的な一例においては、スケールにおいて５個のサンプルを取得し、これにより、５０００個のテンプレートを得ることができる。
【００８６】
ステップ１０２０において、マルチレベルアライメント方式を使用することにより、それぞれの最良のマッチング姿勢からのパッチの正確なアライメントと共に、複数の最良のマッチング姿勢を取得することができる。非限定的な一例においては、マルチレベルアライメント方式を使用することにより、Ｌ＝５により、上位５つの最良のマッチング姿勢を取得することができる。
【００８７】
ステップ１０２５において、ランダムサンプルコンセンサス（ＲＡＮＳＡＣ）を使用することにより、３Ｄモデルの回転Ｒ及びその平行運動ｔをマッチングされた画像場所に対してアライメントすることができる。それぞれのＲＡＮＳＡＣ反復において、複数の対応性に伴って、効率的なパースペクティブｎポイント（ＰｎＰ：Ｐｅｒｓｐｅｃｔｉｖｅ−ｎ−Ｐｏｉｎｔ）アルゴリズムを使用することができる。非限定的な一例においては、ｎ＝４対応性に伴って、効率的なＰｎＰアルゴリズムを使用することができる。焦点距離は、交換可能な画像ファイル（ＥＸＩＦ）タグにより、或いは、カメラ較正（即ち、図１の撮像装置３０５から送信されるデータ）を通じて、提供されるものと仮定する。オリジナルの画像からの３Ｄモデル形状の間の差に対応するべく、変形ΔＸにおいて、次式の目的関数を極小化することにより、地点場所を正確にマッチングさせるように、３Ｄモデルの最終的な非剛体変形を提供することができる。
【数２７】
2019515364.tif 000126
【００８８】
式（２７）において、最初の二乗項は、Ｒ及びｔを使用して方向付けされると共に推定されたパッチ場所ｘilからの変形ΔＸによって増強された２ＤモデルＸの投影のＤＬＴ線形化再構築誤差を表している。ラプラシアン表面編集において使用されるものに類似している第２項は、ｊ番目の頂点の１リングＮj内のすべてのＫ個の頂点が、ｊ番目の頂点と同一の変形を有することを保証することにより、滑らかになるように３Ｄモデルメッシュを制約している。第３項は、小さくなるように変形を制約している。Ｎmodelは、３Ｄモデル上の地点の数を表しており、
2019515364.tif 000127
は、固有パラメータ行列の最初の２つの行の行列を表しており、且つ、Ｋ3は、固有パラメータ行列の第３行に対応する行ベクトルである。いくつかの実施形態においては、スムーズネス重みλが０．１に設定されてもよく、且つ、シュリンケージパラメータγが０．００５に設定されてもよい。
【００８９】
上述の内容の結果として、テクスチャなし物体の姿勢は、ロボット装置３００の場所及び位置決めが、テクスチャなし物体を適切に把持し、テクスチャなし物体を運動させ、且つ、テクスチャなし物体を操作するために十分なものとなるように、ロボット装置３００（図１）が、特定の位置まで運動するように制御されうるように、十分なものとなろう。本明細書において記述されているように姿勢を推定することにより、不適切な把持、テクスチャなし物体の落下、及び／又はこれらに類似したものに伴う問題が回避又は最小化される。
【００９０】
例
例１：試験
複数のテクスチャなし物体を撮像センサによって撮像されるエリア内に配置した。テクスチャなし物体は、木製の橋、カップ、マグ、木製の自動車、おもちゃのカボチャ、ティーポット、コーヒークリーマのカン、及びぬいぐるみの鳥を含む。撮像センサは、様々な視点からそれぞれの物体のサイズ６４０×４８０の画像をキャプチャするＲＧＢカメラであった。次いで、画像は、３２０×２４０にダウンサンプリングされた。Ａｕｔｏｄｅｓｋ  １２３Ｄ  Ｃａｔｃｈ（Ａｕｔｏｄｅｓｋ  Ｉｎｃ．  Ｓａｎ  Ｒａｆａｅｌ，  ＣＡ）を使用することにより、第２撮像装置を使用してそれぞれの物体の分解能３６４８×２０４８の３０〜５０枚の写真をキャプチャすることにより、マグを除いた、すべての物体の３Ｄモデルを構築した。橋、自動車、カボチャ、及び鳥という物体は、Ａｕｔｏｄｅｓｋ  １２３Ｄ  Ｃａｔｃｈ内の高分解能写真内において対応性を見出すべく十分な微細な粒子のテクスチャを有していた。カップ及びティーポットなどの滑らかな物体の場合には、物体上の粘性テープ上にマーカーを適用したが、テープは、３Ｄモデルを構築した後に除去した。マグの場合には、オンラインモデルリポジトリから取得された３Ｄモデルを使用した。
【００９１】
図１１は、撮像センサを使用してキャプチャされた入力画像に対する物体の上部３Ｄアライメントを示している。具体的には、図１１は、オリジナルの入力画像１１０５、５レベルツリーのレベル１において場所特定されたパッチ１１１０、５レベルツリーのレベル３において場所特定されたパッチ１１１５、５レベルツリーのレベル５において場所特定されたパッチ１１２０、オリジナルの物体ピクセルの代わりである推定された姿勢のレンダリング１１２５、及び画像上において重畳された推定姿勢レンダリングのエッジ表現１１３０を示している。５レベルツリーのレベル１におけるパッチ１１１０が、最良のマッチングレンダリングを表している。以下の表１及び２は、物体当たりの平均二乗回転及び平行運動誤差を示している。第２行は、上位５つの結果からの最も正確なマッチングの誤差を表している。上位５つのマッチングを提供することにより、平均において、約２６％だけ、誤差が低減される。
【００９２】
【表１】
2019515364.tif 000128
【００９３】
【表２】
2019515364.tif 000129
【００９４】
回転精度を、最も近接した回転を推定するべく使用されている、方式が最も近接したマッチングレンダリングを提供する既存の方法と比較した。但し、既存の方法は、３Ｄ平行運動を提供してはいない。自動車及びカボチャを除いた、すべての物体において、既存の方法との比較において相対的に小さな平均二乗誤差を見出した。自動車は、直線的であることから、自動車の正面図及び後面図は、いくつかのエッジの向きを非自動車物体と、或いは、自動車の側面図と、共有している。
【００９５】
図１２は、それぞれの物体ごとに、プロットされた平均二乗回転及び平行運動誤差対方位角、仰角、及び面内回転のヒストグラムを示している。自動車を例外として、すべての物体は、方位角において、小さな平均平行運動誤差を有する。ティーポット、橋、及びカップは、平均において、小さな方位角誤差を示している。橋は、完全に平面的な表面におけるＰｎＰアライメントの誤差に起因して、単一プレーンの図に対応する方位角における大きな誤差を示している。３Ｄモデルにおける蓋とジャーの間における弁別の欠如に起因して、相対的に小さなスケールのレンダリングが、クリーマの下部部分とアライメントすることになることから、平行運動誤差対仰角及び方位角は、クリーマの場合には、相対的に大きい。ティーポットは、ノブの上部エッジが下部エッジに似ている場合に、相対的に小さな仰角において、大きな誤差を示している。面内回転の場合には、大部分の物体において、小さな誤差が示されている。
【００９６】
例２−仰角
様々な数のレベルにおけるアライメントの精度を評価するべく、１０°だけ離隔した方位角における３６個のサンプルと、２０°だけ離隔した仰角における３つのサンプルと、２０°だけ離隔した面内回転における３つのサンプルと、スケールにおける１つのサンプルと、を使用してレンダリングされた、ぬいぐるみの鳥のモデルの３２４個のテンプレート画像の組を選択した。テンプレート画像と同一の平行運動及びスケール、仰角、及び面内回転における同一のサンプルを使用することにより、且つ、１°だけ離隔した方位角における３６０個のサンプルを使用することにより、ぬいぐるみの鳥の３Ｄモデルの３２４０枚のグラウンドトゥルース画像をレンダリングした。照明に対する不変性を試験するべく、異なる照明環境を使用することにより、テンプレート画像をレンダリングするべく使用されたものからグラウンドトゥルール画像をレンダリングした。それぞれのグラウンドトゥルースレンダリングされた画像を３２４個のテンプレートの組からの最も近接した２つのテンプレートに対して割り当てると共に、様々な数のレベル（即ち、様々なＬ）を伴って、本明細書において記述されているマルチレベルアライメントアプローチを適用することにより、２つのテンプレートから最良のマッチを取得した。Ｌのそれぞれの選択肢ごとに、推定された回転及び平行運動において、グラウンドトゥルース回転及び平行運動から、誤差を取得した。最良のマッチングテンプレートからの方位角の角度におけるそれぞれの偏差に従って、グラウンドトゥルースレンダリングを分類し、且つ、それぞれの偏差の値における平均二乗誤差を取得した。
【００９７】
図１３は、平均二乗回転及び平行運動誤差対方位角の角度における偏差のプロットを示している。１レベルツリーを例外として、Ｌの増大は、０°の偏差における、即ち、グラウンドトゥルースレンダリングがテンプレートレンダリングに正確に対応している際の、誤差を低減する。１レベルツリーの場合には、グラウンドトゥルースレンダリングに対する最良のマッチングテンプレートの回転及び平行運動の単純な割当が完了しており、この結果、０°におけるグラウンドトゥルースレンダリングの０の回転誤差と、すべてのレンダリングにおけるゼロ平行運動誤差と、が導入される。Ｌ＝２以上である場合には、０°の偏差マークにおいてＰｎＰアライメントにおける小さな偏差を導入する類似した局所的なエッジ勾配に起因して、最大で１ピクセルの小さなパッチミスアライメントが観察された。０°からの相対的に大きな偏差の場合には、Ｌの増大は、回転誤差を大幅に低減する。Ｌ＝５においては、回転誤差グラフのスロープは小さい。従って、本明細書において記述されている第２の微細マッチングステップにおいては、Ｌ＝５が使用される。
【００９８】
従って、本明細書において記述されているシステム及び方法は、テクスチャなし物体が、落下する、不適切に取り扱われる、且つ／又は、これらに類似した内容が発生する、ことなしに、テクスチャなし物体が、ロボット的装置により、適切に把持されうる、操作されうる、運動されうる、且つ／又は、これらに類似したものが実行されうる、ように、テクスチャなし物体の姿勢を迅速且つ正確に判定することが、いまや、理解されよう。本明細書において記述されているシステム及び方法は、複数の視点及びスケールから３Ｄモデルをレンダリングすることによって入力された３Ｄモデルの周りにおいて姿勢の空間をサンプリングすることによってテクスチャなし物体の３Ｄモデルをテクスチャなし物体の単一の画像に対してアライメントすることにより、姿勢を推定している。
【００９９】
「実質的に（ｓｕｂｓｔａｎｔｉａｌｌｙ）」及び「約（ａｂｏｕｔ）」という用語は、本明細書においては、任意の定量的な比較、値、計測、又はその他の表現に帰せられうる固有の不確実性の程度を表すべく、利用される場合があることに留意されたい。又、これらの用語は、本明細書において、定量的表現が、争点となっている主題の基本的関数の変化を結果的にもたらすことなしに、主張されている基準から変化しうる程度を表すべく、利用されてもいる。
【０１００】
本明細書においては、特定の実施形態が図示及び記述されているが、特許請求されている主題の精神及び範囲から逸脱することなしに、様々な変化及び変形が実施されうることを理解されたい。更には、本明細書においては、特許請求されている主題の様々な態様が記述されているが、このような態様を組合せにおいて利用することは、必須ではない。従って、添付の請求項は、特許請求されている主題の範囲に含まれる、このようなすべての変更及び変形を含むものと解釈されたい。
【手続補正書】
【提出日】平成30年12月20日(2018.12.20)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１００
【補正方法】変更
【補正の内容】
【０１００】
本明細書においては、特定の実施形態が図示及び記述されているが、特許請求されている主題の精神及び範囲から逸脱することなしに、様々な変化及び変形が実施されうることを理解されたい。更には、本明細書においては、特許請求されている主題の様々な態様が記述されているが、このような態様を組合せにおいて利用することは、必須ではない。従って、添付の請求項は、特許請求されている主題の範囲に含まれる、このようなすべての変更及び変形を含むものと解釈されたい。
本明細書に開示される発明は以下の実施形態を含む。
（１）テクスチャなし物体の姿勢を出力するシステムであって、
処理装置と、
一時的ではない、プロセッサ可読のストレージ媒体であって、１つ又は複数のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ又は複数のプログラミング命令は、実行された際に、前記処理装置が、
前記テクスチャなし物体の単一の画像を取得し、この場合に、前記テクスチャなし物体の前記姿勢は、前記単一の画像から推定され、
前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、この場合に、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有し、
マルチレベル照明不変ツリー構造を構築するべく、前記複数のハイレベルパッチのそれぞれのものを前記複数のローレベルパッチの少なくとも１つに対してリンクし、
前記離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、前記マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせ、且つ、
前記アライメントに基づいて、前記テクスチャなし物体の前記姿勢を出力する、
ようにする、システム。
（２）前記テクスチャなし物体の前記推定された姿勢に基づいて前記テクスチャなし物体を把持するロボット装置を更に有する、上記（１）に記載のシステム。
（３）前記処理装置に通信自在に結合された１つ又は複数の撮像装置を更に有し、実行された際に、前記処理装置が、前記単一の画像を取得するようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、前記１つ又は複数の撮像装置から前記単一の画像を取得するようにする、上記（１）に記載のシステム。
（４）前記１つ又は複数の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、且つ、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において異なる角度を有するように、方向付けされている、上記（３）に記載のシステム。
（５）前記１つ又は複数の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持するピッキング表面との関係において複数の異なる角度に対して連続的に再方向付けされるように、中心軸を中心として回転する、上記（３）に記載のシステム。
（６）実行された際に、前記処理装置が、前記３次元モデルを生成するようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、
複数のテンプレートを取得するべく、前記テクスチャなし物体の周りにおいて、複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得し、且つ、
複数のパッチによって前記複数のテンプレートをベクトル化する、
ようにする、上記（１）に記載のシステム。
（７）前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数２８】
2019515364.tif 000130
ここで、ｐは、確率を表しており、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、それぞれ、前記複数のパッチのうちの１つのパッチの場所を表しており、且つ、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表している、上記（１）に記載のシステム。
（８）前記子ｘ21の親ｘ11が付与された場合の子ｘ21の条件付き確率は、次式によって表され、
【数２９】
2019515364.tif 000131
ここで、ｐ（ｘ21｜ｘ11）は、親ｘ11の場所ｘ11が付与された場合に前記子ｘ21の場所を知る事前確率を表しており、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表しており、且つ、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表している、上記（７）に記載のシステム。
（９）実行された際に、前記処理装置が、前記単一の画像を前記離散化レンダリングとマッチングさせるようにする、前記１つ又は複数のプログラミング命令は、前記処理装置が、前記３次元モデルの回転及び平行運動をランダムサンプルコンセンサスを介して前記単一の画像にアライメントするようにする、上記（１）に記載のシステム。
（１０）テクスチャなし物体の姿勢を出力する方法であって、
処理装置により、前記テクスチャなし物体の単一の画像を取得するステップであって、前記単一の画像は、前記テクスチャなし物体の前記姿勢を通知する、ステップと、
前記処理装置により、前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成するステップと、
離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、前記処理装置により、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせるステップと、
前記処理装置により、前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を出力するステップと、
を有する方法。
（１１）前記処理装置により、前記テクスチャなし物体の前記推定された姿勢に基づいて前記テクスチャなし物体を把持するように、ロボット装置を制御するステップを更に有する、上記（１０）に記載の方法。
（１２）前記単一の画像を取得するステップは、前記処理装置に通信自在に結合された１つ又は複数の撮像装置から前記単一の画像を取得するステップを更に有する、上記（１０）に記載の方法。
（１３）前記３次元モデルを生成するステップは、
複数のテンプレートを取得するべく、前記テクスチャなし物体の周りにおいて複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得するステップと、
複数のパッチによって前記複数のテンプレートをベクトル化するステップと、
を有する、上記（１０）に記載の方法。
（１４）前記処理装置により、前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出するステップであって、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有するステップと、
前記マルチレベル照明不変ツリー構造を構築するべく、前記処理装置により、前記複数のハイレベルパッチのそれぞれのものを前記複数のローレベルパッチの少なくとも１つに対してリンクするステップと、
を更に有する、上記（１０）に記載の方法。
（１５）前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数３０】
2019515364.tif 000132
ここで、ｐは、確率を表しており、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、前記複数のパッチのうちの１つのパッチの場所を表しており、且つ、Ｉは、ガウシアン・ラプラシアン（ＬｏＧ）表現の組を表している、上記（１４）に記載の方法。
（１６）子ｘ21の親ｘ11が付与された場合の前記子ｘ21の条件付き確率は、次式によって表され、
【数３１】
2019515364.tif 000133
ここで、ｐ（ｘ21｜ｘ11）は、前記親ｘ11の場所ｘ11が付与された場合に前記子ｘ21の場所を知る事前確率を表しており、ｐ（Ｉ｜ｘ21，ｘ11）は、データ尤度を表しており、且つ、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表している、上記（１５）に記載の方法。
（１７）テクスチャなし物体の姿勢に基づいてロボット装置を制御するシステムであって、
処理装置と、
前記処理装置に通信自在に結合された１つ又は複数の撮像装置と、
前記処理装置に通信自在に結合された前記ロボット装置と、
前記テクスチャなし物体を支持するピッキング表面と、
一時的ではない、プロセッサ可読のストレージ媒体であって、１つ又は複数のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ又は複数のプログラミング命令は、実行された際に、前記処理装置が、
前記１つ又は複数の撮像装置のうちの少なくとも１つから前記テクスチャなし物体の単一の画像を取得し、前記単一画像は、前記テクスチャなし物体の前記姿勢を通知しており、
前記１つ又は複数の撮像装置によって生成された前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記離散化レンダリングとの間における前記単一の画像のアライメントを得るべく、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせ、
前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を推定し、且つ、
前記推定された姿勢に基づいて前記テクスチャなし物体を運動させると共に把持するように、前記ロボット装置を制御する、
ようにする、システム。
（１８）前記１つ又は複数の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、且つ、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持する前記ピッキング表面との関係において異なる角度を有するように、方向付けされている、上記（１７）に記載のシステム。
（１９）前記１つ又は複数の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持する前記ピッキング表面との関係において複数の異なる角度に対して連続的に再方向付けされるように、中心軸を中心として回転する、上記（１７）に記載のシステム。
（２０）実行された際に、前記処理装置が、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、この場合に、前記複数のパッチは、複数のハイレベルパッチと、複数のローレベルパッチと、を有し、且つ、
前記マルチレベル照明不変ツリー構造を構築するべく、前記複数のハイレベルパッチのうちのそれぞれのパッチを前記複数のローレベルパッチの少なくとも１つにリンクする、
ようにする、１つ又は複数のプログラミング命令を更に有する、上記（１７）に記載のシステム。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
テクスチャなし物体の姿勢を出力するシステムであって、
処理装置と、
非一時的な、プロセッサ可読のストレージ媒体であって、１つ以上のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ以上のプログラミング命令は、実行された際に、前記処理装置が、
前記テクスチャなし物体の単一の画像を取得し、前記テクスチャなし物体の前記姿勢は、前記単一の画像から推定され、
前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、前記複数のパッチは、複数のハイレベルパッチ及び複数のローレベルパッチを有し、
マルチレベル照明不変ツリー構造を構築するため、前記複数のハイレベルパッチのそれぞれに前記複数のローレベルパッチの少なくとも１つをリンクし、
前記マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせて、前記離散化レンダリングとの間で前記単一の画像のアライメントを取得し、
前記アライメントに基づいて、前記テクスチャなし物体の前記姿勢を出力するようにする、システム。
【請求項２】
前記テクスチャなし物体の前記推定された姿勢に基づいて、前記テクスチャなし物体を把持するロボット装置を更に有する、請求項１に記載のシステム。
【請求項３】
前記処理装置に通信可能に結合された１つ以上の撮像装置を更に有し、実行された際に、前記処理装置に前記単一の画像を取得させる前記１つ以上のプログラミング命令は、更に前記処理装置が、前記１つ以上の撮像装置から前記単一の画像を取得するようにする、請求項１に記載のシステム。
【請求項４】
前記１つ以上の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持するピッキング表面に対して異なる角度を有するように方向付けされる、請求項３に記載のシステム。
【請求項５】
前記１つ以上の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持するピッキング表面に対して複数の異なる角度に連続的に再方向付けされるように、中心軸を中心として回転する、請求項３に記載のシステム。
【請求項６】
実行された際に、前記処理装置に前記３次元モデルを生成させる前記１つ以上のプログラミング命令は、更に前記処理装置が、
複数のテンプレートを取得するため、前記テクスチャなし物体の周りにおいて、前記複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得し、
複数のパッチによって前記複数のテンプレートをベクトル化するようにする、請求項１に記載のシステム。
【請求項７】
前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数１】
2019515364.tif 000134
ここで、ｐは、確率を表し、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、それぞれ、前記単一の画像内の前記複数のパッチの１つの場所を表し、Ｉは、前記画像データのガウシアン・ラプラシアン（ＬｏＧ）表現の組を表す、請求項１に記載のシステム。
【請求項８】
子ｘ21の親ｘ11が付与されたときの子ｘ21の条件付き確率は、次式によって表され、
【数２】
2019515364.tif 000135
ここで、ｐ（ｘ21｜ｘ11）は、前記親ｘ11の場所ｘ11が付与されたときの前記子ｘ21の場所を知る事前確率を表し、ｐ（Ｉ｜ｘ21，ｘ11）は、前記単一の画像内の前記複数のパッチの前記１つの場所ｘ21を見出すデータ尤度を表し、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表す、請求項７に記載のシステム。
【請求項９】
実行された際に、前記処理装置に前記単一の画像を前記離散化レンダリングとマッチングさせる前記１つ以上のプログラミング命令は、更に前記処理装置が、ランダムサンプルコンセンサスを介して、前記３次元モデルの回転及び平行運動を前記単一の画像にアライメントするようにする、請求項１に記載のシステム。
【請求項１０】
テクスチャなし物体の姿勢を出力する方法であって、
処理装置により、前記テクスチャなし物体の単一の画像を取得するステップであって、前記単一の画像は、前記テクスチャなし物体の前記姿勢を示す、ステップと、
前記処理装置により、前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成するステップと、
前記処理装置により、マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせて、前記離散化レンダリングとの間で前記単一の画像のアライメントを取得するステップと、
前記処理装置により、前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を出力するステップと、
を有する、方法。
【請求項１１】
前記処理装置により、前記テクスチャなし物体の推定された姿勢に基づいて前記テクスチャなし物体を把持するようロボット装置に指示するステップを更に有する、請求項１０に記載の方法。
【請求項１２】
前記単一の画像を取得するステップは、前記処理装置に通信可能に結合された１つ以上の撮像装置から前記単一の画像を取得するステップを更に有する、請求項１０に記載の方法。
【請求項１３】
前記３次元モデルを生成するステップは、
複数のテンプレートを取得するために、前記テクスチャなし物体の周りにおいて前記複数の視点のそれぞれ及び前記複数のスケールのそれぞれから複数の画像を取得するステップと、
複数のパッチによって前記複数のテンプレートをベクトル化するステップと、
を有する、請求項１０に記載の方法。
【請求項１４】
前記処理装置により、前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出するステップであって、前記複数のパッチは、複数のハイレベルパッチ及び複数のローレベルパッチを有する、ステップと、
前記処理装置により、前記マルチレベル照明不変ツリー構造を構築するため、前記複数のハイレベルパッチのそれぞれに前記複数のローレベルパッチの少なくとも１つをリンクするステップと、
を更に有する、請求項１０に記載の方法。
【請求項１５】
前記マルチレベル照明不変ツリー構造は、次式によって表され、
【数３】
2019515364.tif 000136
ここで、ｐは、確率を表し、ｘ11、ｘ21、ｘ22、ｘ31、ｘ32、ｘ33、及びｘ34は、前記単一の画像内の前記複数のパッチの１つの場所を表し、Ｉは、前記画像データのガウシアン・ラプラシアン（ＬｏＧ）表現の組を表す、請求項１４に記載の方法。
【請求項１６】
子ｘ21の親ｘ11が付与されたときの前記子ｘ21の条件付き確率は、次式によって表され、
【数４】
2019515364.tif 000137
ここで、ｐ（ｘ21｜ｘ11）は、前記親ｘ11の場所ｘ11が付与されたときの前記子ｘ21の場所を知る事前確率を表し、ｐ（Ｉ｜ｘ21，ｘ11）は、前記単一の画像内の前記複数のパッチの前記１つの場所ｘ21を見出すデータ尤度を表し、Ｚは、通常はΣx21ｐ（ｘ21｜ｘ11，Ｉ）が１に等しくなるように強制する証拠を表す、請求項１５に記載の方法。
【請求項１７】
テクスチャなし物体の姿勢に基づいてロボット装置に指示するシステムであって、
処理装置と、
前記処理装置に通信可能に結合された１つ以上の撮像装置と、
前記処理装置に通信可能に結合された前記ロボット装置と、
前記テクスチャなし物体を支持するピッキング表面と、
非一時的な、プロセッサ可読のストレージ媒体であって、１つ以上のプログラミング命令を有するストレージ媒体と、
を有し、
前記１つ以上のプログラミング命令は、実行された際に、前記処理装置が、
前記１つ以上の撮像装置の少なくとも１つから前記テクスチャなし物体の単一の画像を取得し、前記単一画像は、前記テクスチャなし物体の前記姿勢を示し、
前記１つ以上の撮像装置によって生成された前記テクスチャなし物体の画像データから取得された複数の視点及び複数のスケールから前記テクスチャなし物体の３次元モデルを生成し、
マルチレベル照明不変ツリー構造を介して、前記単一の画像を前記３次元モデルの離散化レンダリングとマッチングさせて、前記離散化レンダリングとの間で前記単一の画像のアライメントを取得し、
前記アライメントに基づいて前記テクスチャなし物体の前記姿勢を推定し、
前記推定された姿勢に基づいて、前記テクスチャなし物体を運動させ、及び把持するよう前記ロボット装置に指示するようにする、システム。
【請求項１８】
前記１つ以上の撮像装置は、複数の撮像装置を有し、前記複数の撮像装置のそれぞれは、光軸を有し、前記複数の撮像装置の個々の撮像装置は、それぞれの個々の光軸が、前記テクスチャなし物体を支持する前記ピッキング表面に対して異なる角度を有するように方向付けされる、請求項１７に記載のシステム。
【請求項１９】
前記１つ以上の撮像装置は、光軸を有する単一の撮像装置を有し、前記単一の撮像装置は、前記光軸が、前記テクスチャなし物体を支持する前記ピッキング表面に対して複数の異なる角度に連続的に再方向付けされるように、中心軸を中心として回転する、請求項１７に記載のシステム。
【請求項２０】
実行された際に、前記処理装置が、
前記３次元モデルの複数の離散化レンダリングのそれぞれから複数のパッチを抽出し、前記複数のパッチは、複数のハイレベルパッチ及び複数のローレベルパッチを有し、
前記マルチレベル照明不変ツリー構造を構築するため、前記複数のハイレベルパッチのそれぞれに前記複数のローレベルパッチの少なくとも１つをリンクするようにする、１つ以上のプログラミング命令を更に有する、請求項１７に記載のシステム。
【国際調査報告】
2019515364.tif 000138
2019515364.tif 000139
2019515364.tif 000140