(57)【要約】      （修正有）【課題】計測対象物を高精度かつ高密度に三次元計測できなくとも、位置姿勢を高精度に推定できる情報処理装置を提供する。【解決手段】情報処理装置１００は、計測対象物が含まれる撮影画像１０、１１を入力する撮影画像入力部１０１と、計測対象物を複数の視点から観測した画像から得られる特徴要素及び特徴要素相互の奥行き相対関係の情報を有するテンプレート２０の情報を入力するテンプレート入力部１１２と、テンプレートに記述された特徴要素と撮影画像から検出される特徴要素との照合を行って、撮影画像に含まれる計測対象物のマッチング候補を探索する候補探索部１１３と、検出された特徴要素相互の奥行き相対関係を識別する奥行き識別部１１４と、奥行き識別部により得られる奥行き相対関係とテンプレートに記述された特徴要素相互の奥行き相対関係とに基づいてマッチング候補の正誤を判定する候補判定部１１５とを有する。【選択図】図１
2018195070.tif 000002
【特許請求の範囲】
【請求項１】
対象物が含まれる撮影画像を入力する撮影画像入力手段と、
対象物を複数の視点から観測した画像から得られる特徴要素及び特徴要素相互の奥行き相対関係の情報を有するテンプレートの情報を入力するテンプレート入力手段と、
前記テンプレートに記述された特徴要素と前記撮影画像から検出される特徴要素との照合を行って、前記撮影画像に含まれる対象物のマッチング候補を探索する候補探索手段と、
少なくとも２つの前記検出された特徴要素相互の奥行き相対関係を識別する奥行き識別手段と、
前記奥行き識別手段により得られる前記奥行き相対関係の情報と前記テンプレートに記述された特徴要素相互の奥行き相対関係の情報とに基づいて、前記マッチング候補の正誤を判定する候補判定手段とを有することを特徴とする情報処理装置。
【請求項２】
前記候補判定手段は、前記マッチング候補が前記撮影画像から検出された特徴要素における前記奥行き相対関係の情報と、前記テンプレートに記述された特徴要素相互の奥行き相対関係の情報とが同じである場合、前記マッチング候補を正しいと判定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記奥行き識別手段は、焦点距離の異なる複数の前記撮影画像のコントラストの大小関係と、前記テンプレートを基に取得した特徴要素相互の位置関係との比較に基づいて奥行き相対関係を識別することを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記奥行き識別手段は、複数の前記撮影画像における前記特徴要素の検出座標の比較に基づいて奥行き相対関係を識別することを特徴とする請求項１又は２記載の情報処理装置。
【請求項５】
対象物が含まれる第二の撮影画像を入力する第二の撮影画像入力手段と、
前記テンプレートに記述された特徴要素と前記第二の撮影画像から検出される特徴要素との照合を行って、前記マッチング候補の中から前記第二の撮影画像に含まれる対象物のマッチング候補を探索する第二の候補探索部とを有することを特徴とする請求項１又は２記載の情報処理装置。
【請求項６】
対象物の三次元座標を計測する三次元計測手段を有し、
前記奥行き識別手段は、前記三次元座標に基づいて前記検出された特徴要素の三次元位置を推定し、前記三次元位置の比較に基づいて奥行き相対関係を識別することを特徴とする請求項１又は２記載の情報処理装置。
【請求項７】
前記候補判定手段は、前記マッチング候補に係る対象物の位置姿勢の正誤を判定することを特徴とする請求項１〜６の何れか１項に記載の情報処理装置。
【請求項８】
前記候補判定手段は、前記マッチング候補に係る対象物の種別の正誤を判定することを特徴とする請求項１〜６の何れか１項に記載の情報処理装置。
【請求項９】
対象物が含まれる撮影画像を入力する撮影画像入力手段と、
対象物を複数の視点から観測した画像から得られる特徴要素及び特徴要素相互の奥行き相対関係の情報を有するテンプレートの情報を入力するテンプレート入力手段と、
前記テンプレートに記述された特徴要素と前記撮影画像から検出される特徴要素との照合を行って、前記撮影画像に含まれる対象物のマッチング候補を探索する候補探索手段と、
少なくとも２つの前記検出された特徴要素相互の奥行き相対関係を識別する奥行き識別手段と、
前記奥行き識別手段により得られる前記奥行き相対関係の情報と前記テンプレートに記述された特徴要素相互の奥行き相対関係の情報とに基づいて、前記マッチング候補の正誤を判定する候補判定手段と、
前記対象物を把持する駆動手段と、
前記駆動手段の目的位置姿勢情報を生成する制御手段とを有し、
前記候補判定手段は、前記マッチング候補が前記撮影画像から検出された特徴要素における前記奥行き相対関係の情報と、前記テンプレートに記述された特徴要素相互の奥行き相対関係の情報とが一致した場合、前記マッチング候補を正しいと判定し、
前記制御手段は、正しいと判定された前記マッチング候補に対応する前記対象物の位置姿勢情報に基づき、前記対象物を把持するための前記目的位置姿勢情報を生成することを特徴とする物体把持装置。
【請求項１０】
対象物が含まれる撮影画像を入力する撮影画像入力工程と、
対象物を複数の視点から観測した画像から得られる特徴要素及び特徴要素相互の奥行き相対関係の情報を有するテンプレートの情報を入力するテンプレート入力工程と、
前記テンプレートに記述された特徴要素と前記撮影画像から検出される特徴要素との照合を行って、前記撮影画像に含まれる対象物のマッチング候補を探索する候補探索工程と、
少なくとも２つの前記検出された特徴要素相互の奥行き相対関係を識別する奥行き識別工程と、
前記奥行き識別工程で得られる前記奥行き相対関係の情報と前記テンプレートに記述された特徴要素相互の奥行き相対関係の情報とに基づいて、前記マッチング候補の正誤を判定する候補判定工程とを有することを特徴とする情報処理方法。
【請求項１１】
請求項１〜８の何れか１項に記載の情報処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像から計測対象の三次元的な位置姿勢情報を取得する情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、ロボットアームを用いて、無作為に配置された部品等の対象の把持や操作を行うため、撮像装置によって対象を撮影して三次元位置姿勢を推定する装置が提案されている。そのような装置では、予め計測対象を複数の視点から観察した画像を複数取得し、視点毎に画像中で検出される輪郭等の二次元特徴量を抽出してテンプレートと呼ばれるルックアップテーブルを生成しておく。装置の実行時には、入力された撮影画像から得られる特徴量とテンプレートに記述されている特徴量とを照合し、最も類似したテンプレートに関連付けられた視点の情報を用いて、計測対象の位置姿勢の概略値を取得する。
【０００３】
特許文献１には、カメラで撮影して得られた二次元画像に加えて、計測対象を三次元計測して推定される三次元の輪郭と面法線の情報を利用して、誤りのない正しい姿勢を推定する方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１７８９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術では、計測対象物を高精度かつ高密度に三次元計測できないと、位置姿勢の推定精度が低いという問題がある。本発明の目的は、計測対象物を高精度かつ高密度に三次元計測できなくとも、位置姿勢を高精度に推定できる情報処理装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明に係る情報処理装置は、対象物が含まれる撮影画像を入力する撮影画像入力手段と、対象物を複数の視点から観測した画像から得られる特徴要素及び特徴要素相互の奥行き相対関係の情報を有するテンプレートの情報を入力するテンプレート入力手段と、前記テンプレートに記述された特徴要素と前記撮影画像から検出される特徴要素との照合を行って、前記撮影画像に含まれる対象物のマッチング候補を探索する候補探索手段と、少なくとも２つの前記検出された特徴要素相互の奥行き相対関係を識別する奥行き識別手段と、前記奥行き識別手段により得られる前記奥行き相対関係の情報と前記テンプレートに記述された特徴要素相互の奥行き相対関係の情報とに基づいて、前記マッチング候補の正誤を判定する候補判定手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、高密度かつ高精度に三次元計測を行うことができなくとも、計測対象の位置姿勢を精度良く推定することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態における情報処理装置の構成例を示す図である。
【図２】第１の実施形態における撮像部と計測対象物との関係を説明する図である。
【図３】第１の実施形態における処理の流れを説明するフローチャートである。
【図４】テンプレート生成部がテンプレート画像を生成する例を示す図である。
【図５】テンプレートのデータ構造の例を示す図である。
【図６】第１の実施形態において取得されるコントラストの例を示す図である。
【図７】第２の実施形態における情報処理装置の構成例を示す図である。
【図８】第２の実施形態における撮像部、第二撮像部、計測対象物の関係を説明する図である。
【図９】第２の実施形態における奥行き識別部による視差比較を説明する図である。
【図１０】第３の実施形態における情報処理装置の構成例を示す図である。
【図１１】第３の実施形態における撮像部、三次元計測部、計測対象物の関係を説明する図である。
【図１２】第３の実施形態での特徴要素三次元座標の取得方法を説明する図である。
【図１３】第４の実施形態における撮像部、三次元計測部、計測対象物の関係を説明する図である。
【図１４】第５の実施形態における情報処理装置の構成例を示す図である。
【図１５】第５の実施形態における処理の流れを説明するフローチャートである。
【図１６】本実施形態における情報処理装置を実現可能なコンピュータ機能を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態を図面に基づいて説明する。
（第１の実施形態）
本発明の第１の実施形態について説明する。本実施形態では、概ね同一平面上に存在する計測対象物の三次元位置姿勢の推定について、単一の撮像装置を用いて計測対象物を撮影する場合に適用できる装置に関して説明する。本実施形態では、撮像装置の焦点距離を変えて撮影した２枚の画像のコントラストに基づいて、複数得られた三次元位置姿勢の候補の中から適切なものを選択する。これにより、三次元計測装置を備えることなく、計測対象物の位置姿勢を精度良く推定することが可能となる。
【００１０】
図１は、第１の実施形態における装置全体の構成例を示す図である。図１において、長方形の枠は本実施形態の各処理を行う機能モジュールを示し、矢印はデータの流れを示している。装置は、三次元位置姿勢の推定を行う情報処理装置１００と、それに接続する撮像部１０１及びテンプレート生成部１０２を有する。なお、図１に示す構成は一例であり、これに限定されるものではない。
【００１１】
撮像部１０１は、三次元位置姿勢を推定する計測対象物を含むシーンを撮像した撮影画像を取得し、その撮影画像を情報処理装置１００の撮影画像入力部１１１に出力する。撮像部１０１は、その内部に不図示の自動フォーカス制御機構を有し、外部からの制御によりレンズの焦点距離を任意に変更することが可能になっている。本実施形態では、撮像部１０１は、異なる焦点距離で２枚の撮影画像１０及び１１を取得する。テンプレート生成部１０２は、計測対象物２０１を複数の視点から観測した画像から得られる特徴要素及び特徴要素相互の奥行き相対関係を記述したテンプレート２０を生成する。テンプレート生成部１０２は、生成したテンプレート２０を情報処理装置１００のテンプレート入力部１１２に出力する。
【００１２】
図２は、第１の実施形態における撮像部１０１と計測対象物２０１との関係を説明する図である。平面２０２上に複数の計測対象物２０１が無作為に配置され、撮像部１０１は、その上方から全体を俯瞰した撮影画像１０、１１を取得する。個々の計測対象物２０１は様々な位置姿勢を取るが、互いに重なり合うことは少なく、概ね平面２０２上に接している。また、撮像部１０１の光軸と平面２０２とが略直交するように撮像部１０１が配置されている。
【００１３】
第１の実施形態における情報処理装置１００は、撮影画像入力部１１１、テンプレート入力部１１２、候補探索部１１３、奥行き識別部１１４、及び候補判定部１１５を有する。撮影画像入力部１１１は、撮像部１０１が撮像した撮影画像１０及び１１を情報処理装置１００内部に取り込んで候補探索部１１３及び候補判定部１１５に供給する。テンプレート入力部１１２は、テンプレート生成部１０２が生成したテンプレート２０を情報処理装置１００内部に取り込んで候補探索部１１３及び候補判定部１１５に供給する。
【００１４】
候補探索部１１３は、入力される撮影画像１０とテンプレート２０とをテンプレートマッチングによって照合し、計測対象物の位置姿勢のマッチング候補を探索する。候補探索部１１３は、探索結果に基づきマッチング候補リスト４０を生成して奥行き識別部４０及び候補判定部１１５に出力する。
【００１５】
奥行き識別部１１４は、撮影画像１０、１１から検出される特徴要素相互の奥行き相対関係を識別する。奥行き識別部１１４は、２枚の撮影画像１０及び１１を参照してテンプレート２０に含まれる特徴要素の奥行きの前後関係を識別し、識別した奥行きの前後関係の情報を候補判定部１１５に出力する。候補判定部１１５は、奥行き識別部１１４によって得られる奥行き相対関係とテンプレート２０に記述された特徴要素相互の奥行き相対関係とに基づいてマッチング候補の正誤を判定する。候補判定部１１５は、特徴要素の奥行きの前後関係の情報に基づいて、マッチング候補リスト４０に含まれる位置姿勢の正誤を判定し、正しいと判定された位置姿勢の情報のみを最終位置姿勢情報５０として出力する。
【００１６】
第１の実施形態における動作について説明する。図３は、第１の実施形態における装置の処理の流れを示すフローチャートである。図３（ａ）には処理全体の流れを示しており、図３（ｂ）には図３（ａ）に示すステップＳ３０１での事前準備の処理の流れを示している。
【００１７】
ステップＳ３０１にて、事前準備の処理を行い、テンプレート生成部１０２が、計測対象物２０１に係るテンプレート２０を生成する。テンプレート生成部１０２は、情報処理装置１００には含まれないので、ステップＳ３０１の処理は、本実施形態における処理に先立って事前準備として実施する。なお、テンプレート２０が生成された後は、本実施形態の処理を繰り返し行う場合においても、ステップＳ３０１の処理は省略可能である。
【００１８】
図３（ｂ）を参照して、ステップＳ３０１での事前準備の処理の詳細について説明する。ステップＳ３１１にて、テンプレート生成部１０２は、計測対象物２０１の三次元モデルを読み込む。ここで三次元モデルは、計測対象物２０１の設計時に生成されたＣＡＤデータであるとし、そのＣＡＤデータには、計測対象物２０１の頂点の三次元座標及び辺や面を構成する頂点のインデックスに関する情報が記述されているものとする。
【００１９】
また、ステップＳ３１１にて、テンプレート生成部１０２は、計測対象物２０１の三次元モデルを描画するための視点を複数設定する。この視点は、図２に示したような計測対象物２０１の位置姿勢を推定する状況下で、計測対象物２０１が実際に取り得る姿勢を網羅した様々な見え方での画像が生成されるように設定する。本実施形態では、計測対象物２０１を外接球の中心に配置するような正多面体を仮定し、正多面体の頂点の位置に描画のための視点を設定するものとする。また、この後のステップＳ３１２において、外接球の半径を変えたもの、視点の画像面内での回転角を変えた画像も描画するため、これらも異なる視点として設定しておく。テンプレート生成部１０２は、数百から数千程度の数の視点を設定することとなるが、実際に設定する視点は、計測対象物２０１の大きさや取り得る姿勢、推定に要求される姿勢の分解能等の要因に応じて適宜決定すればよい。
【００２０】
ステップＳ３１２〜ステップＳ３１５の処理は、ステップＳ３１１において設定された視点毎に実行され、視点数に等しい回数繰り返し実行される。ステップＳ３１２にて、テンプレート生成部１０２は、ステップＳ３１１において設定された視点から計測対象物２０１の三次元モデルを描画して図４（ｂ）に示すようなテンプレート画像３０を生成する。このとき、視点位置から各画素を構成する三次元座標までの奥行き値は不図示の奥行きバッファに保持される。次に、ステップＳ３１３にて、テンプレート生成部１０２は、テンプレート画像３０から輪郭４１１上の画素を規定の数だけサンプリングし、テンプレート２０を構成するデータの一部である特徴要素４１２を抽出する。
【００２１】
図４（ａ）は、本実施形態において、テンプレート生成部１０２がテンプレート画像３０を生成する例を示す図である。テンプレート画像３０は、例えば計測対象物２０１の三次元モデルをコンピュータグラフィックスを用いて、ステップＳ３１１において設定された視点位置（４０１〜４０５等）から描画することによって生成する。図４（ｂ）には、生成されたテンプレート画像３０、及び後述する輪郭抽出処理の結果として得られる計測対象物２０１に係る輪郭４１１及びサンプリングされた特徴要素４１２の例を示している。
【００２２】
図５は、テンプレート生成部１０２によって生成されるテンプレート２０のデータ構造の例を示す図である。テンプレート２０は、複数のテンプレート要素の集合体で構成される。個々のテンプレート要素は、テンプレート画像３０を生成した視点の位置姿勢と複数の特徴要素４１２とを有する。個々の特徴要素４１２は、特徴位置、特徴パラメータ、及び特徴奥行き識別情報を有する。
【００２３】
本実施形態においては、特徴位置としてテンプレート画像３０から抽出される計測対象物２０１の輪郭４１１の画像座標が格納され、特徴パラメータとして輪郭４１１の勾配の方向を示す値が格納される。テンプレート生成部１０２は、個々のテンプレート画像３０に対して輪郭抽出処理を適用した後、輪郭４１１を構成している画素を規定の数だけサンプリングして、その画素の座標と輪郭勾配とを算出してテンプレート２０に書き込む。
【００２４】
ステップＳ３１４にて、テンプレート生成部１０２は、ステップＳ３１３において抽出した特徴要素４１２について特徴奥行き識別情報を算出する。テンプレート生成部１０２は、次のようにして特徴奥行き識別情報を算出する。テンプレート生成部１０２は、計測対象物２０１の特徴要素４１２をサンプリングする際、ステップＳ３１２において奥行き値を保持した奥行きバッファを参照して奥行き値を得る。１枚のテンプレート画像３０に対して所定数のサンプリングが終了した時点では、特徴要素数と同数の奥行き値が得られていることになる。テンプレート生成部１０２は、これらの奥行き値に対して「手前」又は「奥」のラベルを割り当てる。本実施形態では、複数の奥行き値に対して、判別分析によって手前、奥を区分するためのしきい値を定める。判別分析では、それぞれ「手前」「奥」のラベルが付与された値からなるグループに対して、それぞれのグループ内分散を最小化させグループ間分散を最大化させるしきい値が決定される。テンプレート生成部１０２は、しきい値よりも奥行き値が小さいものに「手前」ラベルを付与し、しきい値よりも奥行き値が大きいものに「奥」ラベルを付与し、ラベルの識別情報を特徴奥行き識別情報（ＩＤ）としてテンプレート２０に書き込む。
【００２５】
ステップＳ３１５では、ステップＳ３１１において設定されたすべての視点についてステップＳ３１２〜ステップＳ３１５の処理が行われた場合、ステップＳ３１６に進み、そうでない場合、ステップＳ３１２に戻る。ステップＳ３１６にて、テンプレート生成部１０２は、算出されたテンプレート２０を不図示の記憶手段に保持する。
【００２６】
図３（ａ）に戻り、ステップＳ３０２にて、撮像部１０１は、計測対象物２０１を含むシーンの画像を撮像する。第１の実施形態において撮像部１０１は、焦点距離の異なる２枚の撮影画像１０及び１１を取得して撮影画像入力部１１１に出力する。撮影画像１０は、平面２０２の位置にフォーカスが合っている状態で撮影された画像であり、撮影画像１１は、平面２０２に対して手前側（計測対象物２０１の上端）にフォーカスが合っている状態で撮影された画像である。撮影画像入力部１１１は、入力された撮影画像１０、１１を候補探索部１１３及び候補判定部１１５に供給する。ステップＳ３０３にて、テンプレート入力部１１２は、ステップＳ３１６において記録されたテンプレート２０を記憶手段から読み込んで情報処理装置１００に入力する。
【００２７】
ステップＳ３０４にて、候補探索部１１３は、位置姿勢の候補を探索する。候補探索部１１３は、まず撮影画像１０に対して輪郭抽出処理を行う。次に、候補探索部１１３は、テンプレート２０に含まれる各テンプレート要素について、いわゆるテンプレートマッチングによって、撮影画像１０上に設定された領域をシフトさせながら輪郭４１１と撮影画像１０から検出される輪郭との類似度を算出する。輪郭４１１の情報は、特徴要素４１２中に特徴位置及び特徴パラメータとして記述されている。類似度は、特徴要素４１２に定義されている輪郭４１１の位置及び方向が、撮影画像１０から検出された輪郭の位置及び方向と一致した場合に高くなるように設定される。すべての特徴要素４１２の類似度の総和がテンプレート要素、撮影画像１０の領域毎に算出される。
【００２８】
候補探索部１１３は、類似度の総和が所定のしきい値を超えたテンプレート要素をすべてマッチング候補として、マッチング候補リスト４０に保持する。マッチング候補リスト４０には、テンプレート要素の識別番号、類似度、及び撮影画像１０上におけるテンプレートの位置が格納される。テンプレート２０は計測対象物２０１をあらゆる方向の視点から描画することで生成されるため、テンプレート要素に記述されている位置姿勢を計測対象物２０１の三次元姿勢とみなすことができる。また、計測対象物２０１の三次元位置は、撮影画像１０上で検出されたテンプレート要素の位置と、テンプレート要素に記述されている位置姿勢から算出することができる。例えば、撮影画像１０上で検出されたテンプレート要素を代表する中心座標と、テンプレート要素に記述されている位置姿勢から算出される計測対象物２０１と視点との距離から、計測対象物２０１の三次元位置を算出可能である。
【００２９】
ステップＳ３０５にて、奥行き識別部１１４は、２枚の撮影画像１０及び１１を参照してテンプレート２０に含まれる特徴要素の奥行きの前後関係、つまり特徴要素相互の奥行きの相対関係を識別する。奥行き識別部１１４は、まずマッチング候補リスト４０からマッチング候補を１つ取り出す。そして、奥行き識別部１１４は、テンプレート要素中に定義されている特徴要素から特徴奥行き識別情報を参照し、「手前」ラベルが付与された特徴要素と「奥」ラベルが付与された特徴要素とを１つずつ抽出して特徴対を構成する。なお、撮影画像１０上で抽出された特徴要素が観測されなかった場合、その特徴要素は使用しない。奥行き識別部１１４は、この処理を繰り返して複数の特徴対を設定する。
【００３０】
次に、奥行き識別部１１４は、撮影画像１０及び１１を参照し、特徴要素４１２のコントラストの大小を比較する。本実施形態では、特徴要素４１２に対応する撮影画像１０及び１１における画素の輝度を比較することで、それを実現する。具体的には、撮影画像１０における輝度が撮影画像１１における輝度よりも高い場合、コントラストが高いと判断して値“１”を割り当て、それ以外の場合、コントラストが低いと判断して値“０”を割り当てる。本実施形態において、それぞれの撮影画像のフォーカス位置は、撮影画像１０では平面２０２の位置に設定され、撮影画像１１では計測対象物２０１の上端に設定されている。したがって、撮影画像１０のコントラストがより高い場合（すなわち、比較結果を示す値が“１”である場合）、その特徴要素４１２は相対的に奥側に位置すると判断し、そうでない場合には手前側に位置すると判断する。
【００３１】
図６は、奥行き識別部１１４によって取得されるコントラストの例を示す図である。テンプレート要素に定義されているある特徴要素４１２の位置を黒丸で示している。図６（ａ）は撮影画像１０でのコントラストの例を示し、図６（ｂ）は撮影画像１１でのコントラストの例を示している。図６において、下に示すグラフは、輪郭線４１１に直交する断面Ａ−Ｂ間の輝度変化の例を示すものである。
【００３２】
図６（ａ）に示すように撮影画像１０においては、計測対象物２０１の輪郭線４１１の部分にフォーカスが合っている状態であり、コントラストが高く、特徴要素４１２の位置（黒丸）での輝度ピークも相対的に大きな値となっている。一方、図６（ｂ）に示すように撮影画像１１においては、計測対象物２０１の輪郭線４１１からフォーカスが外れた状態であり、コントラストが低く、特徴要素４１２の位置での輝度ピークも相対的に小さな値となっている。そのため、撮影画像１０及び１１の特徴要素４１２の位置での輝度値を比較することは、コントラストを比較することと等価であると見なすことができる。
【００３３】
次に、ステップＳ３０６にて、候補判定部１１５は、マッチング候補リスト４０に含まれるマッチング候補の正誤を判定し、正しいと判断された情報を最終位置姿勢情報５０として出力する。候補判定部１１５は、特徴対に設定されたそれぞれの特徴要素４１２について、ステップＳ３０５において取得されたコントラストの比較結果と特徴奥行き識別情報とを参照し、マッチング候補の姿勢の正誤を判定する。具体的には、特徴奥行き識別情報の「手前」ラベルが付与された特徴要素４１２について比較結果が０であり、かつ、特徴奥行き識別情報の「奥」ラベルが付与された特徴要素４１２について比較結果が１であれば、そのマッチング候補は正しいと判断される。
【００３４】
本実施形態では、位置姿勢判定の安定性を高めるために、複数の特徴対に対して前述の判定を実施し、正しいと判定される割合が所定のしきい値よりも高い場合、そのマッチング候補を正しいと判定する。これにより、隠れているために観測されない特徴要素やノイズの影響を軽減することが可能となる。候補判定部１１５は、正しいと判定したマッチング候補に対応する位置姿勢の情報を、最終位置姿勢情報５０として出力する。なお、正しいと判定されたマッチング候補が複数存在する場合、候補判定部１１５は、正しいと判定される割合が最も高いマッチング候補を選択して、対応する位置姿勢の情報を最終位置姿勢情報５０とする。
【００３５】
このように第１の実施形態によれば、概ね同一平面上に存在する計測対象物について、三次元計測装置を設けなくとも、単一の撮像装置で計測対象物を撮影することによって三次元位置姿勢を精度良く推定することが可能となる。
【００３６】
なお、前述した例に限らず、第１の実施形態に関して、以下の変形例１〜変形例８を適用するようにしてもよい。各変形例を、単独で適用するようにしてもよいし、組み合わせて適用するようにしてもよい。
［変形例１］テンプレート生成部１０２によるテンプレート２０の生成は、本実施形態での処理に先立って行う例に限らず、ステップＳ３０３の段階で行うようにしてもよい。また、テンプレート入力部１１２がテンプレート生成部１０２の機能を有し、テンプレート２０を生成するようにしてもよい。
【００３７】
［変形例２］テンプレート２０を生成する際、撮像部１０１を所定の位置姿勢に移動させて、計測対象物２０１を撮影することで撮影画像１０を取得してもよい。撮影画像１０の撮影時の位置姿勢は、例えば撮像部１０１の位置姿勢を位置姿勢センサを用いて計測すればよい。また、ＳｆＭ（Ｓｔｒｕｃｔｕｒｅ  ｆｒｏｍ  Ｍｏｔｉｏｎ）又はＳＬＡＭ（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  Ａｎｄ  Ｍａｐｐｉｎｇ）技術を利用して、撮影した一連の画像群から撮像部１０１の位置姿勢を推定してもよい。
【００３８】
［変形例３］本実施形態において、特徴奥行き識別情報は「手前」又は「奥」の二種類としたが、これを任意の数に設定してもよい。例えば「手前」「奥」に加えて、「中間」のラベルを設定してもよいし、あるいは奥行き値を連続値のまま保持させるようにしてもよい。
【００３９】
［変形例４］撮像部２０１の絞り位置に符号化開口（Ｃｏｄｅｄ  Ａｐｅｒｔｕｒｅ）を設け、候補判定部１１５が撮影画像１０に対してブラインドデコンボリューションを適用して、奥行きの概略値を推定するようにしてもよい。この場合、撮像部２０１では撮影画像を１枚取得すればよいので、撮像部２０１はフォーカス制御機構を備える必要はない。奥行き推定は、例えばA. Levin et al, Image and Depth from a Conventional Camera with a Coded Aperture, SIGGRAPH 2007に記載の方法を用いればよい。
【００４０】
［変形例５］テンプレート生成部１０２が特徴要素を設定するのは計測対象物２０１の輪郭上に限られるものではなく、例えば計測対象物２０１の面上に特徴要素４１２を設定してもよい。
【００４１】
［変形例６］候補探索部１１３がマッチング候補リスト４０を生成するにあたり、位置姿勢の候補だけでなく、計測対象物２０１の種別を含めるようにしてもよい。複数種類の計測対象物２０１が存在する場合、その一部あるいはすべての種別のテンプレート２０を生成してもよい。この場合、テンプレート要素に計測対象物２０１の種別を記録するようにすればよい。
【００４２】
［変形例７］テンプレート生成部１０２は、計測対象物２０１のあらゆる見え方の視点を設定しているが、これに限られるものではない。計測対象物２０１が取り得る位置姿勢が限定される場合については、その位置姿勢に対応する視点に限ってテンプレート画像３０を生成するようにしてもよい。これにより、テンプレートの総数が削減されるため、処理速度を向上させることができる。
【００４３】
［変形例８］候補判定部１１５は、正しいと判定された位置姿勢候補のみを最終位置姿勢情報として出力するが、正誤に関係なくすべての位置姿勢候補と、判定に使用した評価値との組を出力するようにしてもよい。また、候補判定部１１５は、マッチング候補リスト４０に位置姿勢候補が１つしか含まれない場合、その候補の正誤判定結果を出力するようにしてもよい。候補判定部１１５は、位置と姿勢の各々について評価値を算出し、算出した評価値を出力するようにしてもよい。
【００４４】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。本実施形態では、概ね同一平面上に存在する計測対象物の三次元位置姿勢の推定について、２つの撮像装置で計測対象物を撮影する場合に適用できる装置に関して説明する。本実施形態では、２枚の画像中の視差の大小関係に基づいて、複数得られた三次元位置姿勢の候補の中から適切なものを選択する。これにより、三次元計測装置を備えることなく、計測対象物の位置姿勢を精度良く推定することが可能となる。
【００４５】
図７は、第２の実施形態における装置全体の構成例を示す図である。図７において、長方形の枠は本実施形態の各処理を行う機能モジュールを示し、矢印はデータの流れを示している。装置は、三次元位置姿勢の推定を行う情報処理装置１００と、それに接続する撮像部１０１、テンプレート生成部１０２、及び第二撮像部１０３を有する。なお、図７に示す構成は一例であり、これに限定されるものではない。また、以下では第１の実施形態と異なる部分について説明し、第１の実施形態と同様の部分については説明を省略する。
【００４６】
本実施形態において撮像部１０１は、その内部に自動フォーカス制御機構を有していなくともよく、１枚の撮影画像１０を取得する。第二撮像部１０３は、三次元位置姿勢を推定する計測対象物２０１を含むシーンを撮像した撮影画像を取得し、その撮像画像を情報処理装置１００の第二撮影画像入力部１１６に出力する。第二撮像部１０３は、１枚の撮影画像１１を取得する。ここで、撮像部１０１と第二撮像部１０３とは事前に較正（キャリブレーション）がなされている。複数カメラ間の較正については数多くの手法が提案されているが、いかなる方法を用いてもよい。本実施形態では、撮像部１０１及び第二撮像部１０３の各々の内部パラメータ（焦点距離、主点位置、歪み係数）や、外部パラメータ（撮像部１０１と第二撮像部１０３間の相対的な三次元位置姿勢）は予め得られており、既知であるものとみなす。
【００４７】
図８は、第２の実施形態における撮像部１０１、第二撮像部１０３、及び計測対象物２０１の関係を説明する図である。平面２０２上に複数の計測対象物２０１が無作為に配置され、撮像部１０１及び第二撮像部１０３は、その上方から全体を俯瞰した撮影画像１０、１１をそれぞれ取得する。個々の計測対象物２０１は様々な位置姿勢を取るが、互いに重なり合うことは少なく、概ね平面２０２上に接している。なお、撮像部１０１及び第二撮像部１０３は、その光軸と平面２０２とが略直交するように配置する必要はない。
【００４８】
第２の実施形態における情報処理装置１００は、撮影画像入力部１１１、テンプレート入力部１１２、候補探索部１１３、奥行き識別部１１４、候補判定部１１５、第二撮影画像入力部１１６、及び第二候補探索部１１７を有する。第二撮影画像入力部１１６は、第二撮像部１０３が撮像した撮影画像１１を情報処理装置１００内部に取り込んで第二候補探索部１１７に供給する。
【００４９】
第二候補探索部１１７は、入力される撮影画像１１と、マッチング候補リスト４０に含まれるマッチング候補の位置姿勢に対応するテンプレート２０とをテンプレートマッチングによって照合する。奥行き識別部１１４は、２枚の撮影画像１０及び１１を参照して特徴要素４１２の検出座標の視差を算出し、テンプレート２０に含まれる特徴要素の奥行きの前後関係を識別する。
【００５０】
第２の実施形態における動作について説明する。第２の実施形態における装置の処理の流れは、第１の実施形態と同様である。ただし、処理内容が第１の実施形態とは異なるステップが存在するため、それについて図３（ａ）を参照して説明する。
【００５１】
ステップＳ３０２にて、撮像部１０１は、計測対象物２０１を含むシーンの撮影画像１０を撮像し、第二撮像部１０３も同様に計測対象物２０１を含むシーンの撮影画像１１を撮像する。撮像部１０１は、撮影画像１０を撮影画像入力部１１１に出力し、第二撮像部１０３は、撮影画像１１を第二撮影画像入力部１１６に出力する。撮影画像入力部１１１は、入力された撮影画像１０を候補探索部１１３及び候補判定部１１５に供給し、第二撮影画像入力部１１６は、入力された撮影画像１１を第二候補探索部１１７に供給する。
【００５２】
本実施形態での撮像部１０１及び第二撮像部１０３は較正されているため、第二撮影画像入力部１１６は、入力される撮影画像１１に対して較正時の内部パラメータ及び外部パラメータを用いて平行化を行う。以降、本実施形態では、撮影画像１０及び撮影画像１１について、エピポーラ線はｘ軸（横方向）に平行であるものとして説明する。
【００５３】
また、ステップＳ３０４にて、候補探索部１１３及び第二候補探索部１１７は、位置姿勢の候補を探索する。候補探索部１１３が行う処理は、第１の実施形態と同様である。以下、第二候補探索部１１７が位置姿勢の候補を探索する処理の内容について説明する。第二候補探索部１１７は、候補探索部１１３と同様に、まず撮影画像１１に対して輪郭抽出処理を行う。そして、テンプレート２０に含まれる各テンプレート要素について、撮影画像１１における領域をシフトさせながらテンプレートマッチングによって、特徴要素４１２に定義されている輪郭４１１と、撮影画像１１から検出される輪郭との類似度を算出する。輪郭４１１の情報は、特徴要素４１２中に特徴位置及び特徴パラメータとして記述されている。
【００５４】
本実施形態では、既に候補探索部１１３によってマッチング候補が取得されているので、これを利用して第二候補探索部１１７の処理を効率的に行う。具体的には、第二候補探索部１１７は、マッチング候補リスト４０からマッチング候補を取り出し、テンプレート要素の識別番号と撮影画像１０上における領域の位置とを参照し、撮影画像１１上におけるテンプレート要素の位置を推定する。テンプレート要素の識別番号から、そのテンプレート要素の位置姿勢を参照できるので、計測対象物２０１の三次元位置姿勢が得られることとなる。
【００５５】
この三次元位置姿勢に対して、較正時の外部パラメータを用いて、撮像部１０１の位置姿勢から第二撮像部１０３の位置姿勢への三次元変換を求め、第二撮像部１０３の内部パラメータを用いて撮影画像１１に射影する。これにより、撮影画像１１上におけるテンプレート要素の位置が得られる。第二候補探索部１１７は、得られた撮影画像１１上におけるテンプレート要素の位置を初期値として、その近傍で撮影画像１１に対して候補探索部１１３と同様にテンプレートマッチングを行う。このようにして、最終的に正確な撮影画像１１上におけるテンプレートの位置が算出される。第二候補探索部１１７は、マッチング候補リスト４０に撮影画像１１上におけるテンプレート要素位置の座標を記録する。
【００５６】
また、ステップＳ３０５にて、奥行き識別部１１４は、テンプレート２０に含まれる特徴要素の奥行きの前後関係を識別する。奥行き識別部１１４は、まずマッチング候補リスト４０からマッチング候補を１つ取り出す。そして、奥行き識別部１１４は、テンプレート要素中に定義されている特徴要素４１２から特徴奥行き識別情報を参照し、「手前」ラベルが付与された特徴要素と「奥」ラベルが付与された特徴要素とを１つずつ抽出して特徴対を構成する。なお、撮影画像１０又は撮影画像１１上で抽出された特徴要素が観測されなかった場合、その特徴要素は使用しない。奥行き識別部１１４は、この処理を繰り返して複数の特徴対を設定する。
【００５７】
次に、奥行き識別部１１４は、各特徴対について特徴要素４１２が検出された撮影画像１０及び撮影画像１１上の視差を比較する。本実施形態において、撮影画像１０及び撮影画像１１のエピポーラ線はｘ軸に平行であるため、奥行き識別部１１４は、特徴要素４１２における撮影画像１０と撮影画像１１とのｘ座標の差を比較する。図９は、第２の実施形態における奥行き識別部１１４による視差の比較を説明する図である。特徴対を構成する２つの特徴要素４１２（図中の４１２ａと４１２ｂ）が検出された撮影画像１０及び撮影画像１１での検出座標についてｘ座標の差を求め、視差ｄaと視差ｄbとを算出する。
【００５８】
また、ステップＳ３０６にて、候補判定部１１５は、マッチング候補リスト４０に含まれるマッチング候補の正誤を判定して最終位置姿勢情報５０を出力する。候補判定部１１５は、２枚の撮影画像１０と撮影画像１１との三角測量に基づき、マッチング候補の正誤を判定し、正しいと判定されたマッチング候補に対応する位置姿勢の情報を最終位置姿勢情報５０として出力する。
【００５９】
具体的には、候補判定部１１５は、各特徴要素の特徴奥行き識別情報とステップＳ３０５において算出された視差ｄaと視差ｄbの相対的な大小関係とを比較する。図９に示した例において、特徴要素４１２ａの特徴奥行き識別情報が「手前」、特徴要素４１２ｂの特徴奥行き識別情報が「奥」であるとする。特徴要素４１２ａと特徴要素４１２ｂとの相対的な幾何関係により、手前側に位置する特徴要素４１２ａの視差が、奥側に位置する特徴要素４１２ｂの視差より大きくなる。そのため、候補判定部１１５は、ｄa＞ｄbであれば、そのマッチング候補を正しいと判定し、ｄa＜ｄbであれば、そのマッチング候補を誤りであると判定する。本実施形態では、位置姿勢判定の安定性を高めるために、複数の特徴対に対して前述の判定を実施し、正しいと判定される割合が所定のしきい値よりも高い場合、そのマッチング候補に対応する位置姿勢を正しいと判定する。これにより、隠れているために観測されない特徴要素やノイズの影響を軽減することが可能となる。
【００６０】
このように第２の実施形態によれば、概ね同一平面上に存在する計測対象物について、２つの撮像装置で計測対象物を撮影することで、三次元計測装置を設けなくとも、計測対象物の三次元位置姿勢を精度良く推定することが可能となる。撮影画像中で特徴要素が検出される座標の差（視差量）のみに基づき比較を行うため、三次元座標を明に算出することがなく、浮動小数演算を行うことなく整数演算のみで実行できるので、処理時間が短縮され処理速度が向上する。さらに、片方の撮影画像上で探索された位置姿勢の候補に基づき、較正時の幾何関係に基づいて他方の撮影画像上での位置を推定し、その近傍に限定して探索を行う。そのため、通常のステレオ計測で必要となる対応探索と比較して処理時間を短縮でき処理速度を向上させることができる。
【００６１】
なお、前述した例に限らず、第２の実施形態に関して、以下の変形例９、変形例１０を適用するようにしてもよく、変形例を単独で適用するようにしてもよいし、組み合わせて適用するようにしてもよい。
［変形例９］第二撮像部１０３は、撮像部１０１に対して解像度や光学特性等の性能が低いものを用いてもよく、このようにした場合、本実施形態における装置を安価に実現することが可能となる。
【００６２】
［変形例１０］本実施形態において、撮像部１０１と第二撮像部１０３との較正は必ずしも精密に行われなくてもよい。候補判定部１１５は特徴対の前後関係のみを判定しているのであるから、撮像部１０１と第二撮像部１０３の内部パラメータ及び外部パラメータは特徴対の前後関係の区別がつけられる程度の精度があればよい。
【００６３】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。本実施形態では、計測対象物の三次元位置姿勢の推定について、三次元計測装置によって計測される三次元座標が疎である場合に適用できる装置に関して説明する。本実施形態では、三次元計測装置によって計測された疎な三次元座標から、特徴要素位置における三次元座標を推定する。推定された三次元座標の前後関係に基づいて、複数得られた三次元位置姿勢の候補の中から適切なものを選択する。これにより、三次元計測装置によって計測される三次元座標が疎であるような状況においても、計測対象の位置姿勢を精度良く推定することが可能となる。
【００６４】
図１０は、第３の実施形態における装置全体の構成例を示す図である。図１０において、長方形の枠は本実施形態の各処理を行う機能モジュールを示し、矢印はデータの流れを示している。装置は、三次元位置姿勢の推定を行う情報処理装置１００と、それに接続する撮像部１０１、テンプレート生成部１０２、及び三次元計測部１０４を有する。なお、図１０に示す構成は一例であり、これに限定されるものではない。また、以下では第１の実施形態と異なる部分について説明し、第１の実施形態と同様の部分については説明を省略する。
【００６５】
本実施形態において撮像部１０１は、その内部に自動フォーカス制御機構を有していなくともよく、１枚の撮影画像１０を取得する。三次元計測部１０４は、計測対象物２０１表面の三次元座標を計測して、計測した三次元座標１１０１を三次元座標入力部１１８に出力する。本実施形態では、一例として三次元計測部１０４としてマルチスリット投影三次元計測装置を用い、撮影画像１０の解像度に対して、投影スリットに平行な方向には密であるが垂直な方向には疎となる三次元座標１１０１を取得するものとする。
【００６６】
図１１は、第３の実施形態における撮像部１０１、三次元計測部１０４、及び計測対象物２０１の関係を説明する図である。複数の計測対象物２０１が存在し、撮像部１０１は、その上方から全体を俯瞰した撮影画像１０を取得する。また、三次元計測部１０４は、複数のスリット光を計測対象物２０１に対して投影し、投影スリット線１１０２上の三次元位置を三次元座標１１０１の集合として取得する。個々の計測対象物２０１は無作為に様々な位置姿勢を取り、概ね同一平面上に存在していなくともよく、互いに重なり合う状況も生じ得る。なお、撮像部１０１は、その光軸と計測対象物２０１が載置される平面とが略直交するように配置する必要はない。
【００６７】
ここで、撮像部１０１と三次元計測部１０４とは事前に較正（キャリブレーション）がなされている。カメラ等の撮像部１０１と三次元計測装置等の三次元計測部１０４との間の較正については数多くの手法が提案されているが、いかなる方法を用いてもよい。本実施形態では、撮像部１０１の内部パラメータ（焦点距離、主点位置、歪み係数）及び撮像部１０１と三次元計測部１０４間の相対的な三次元位置姿勢は予め得られており、既知であるものとみなす。
【００６８】
第３の実施形態における情報処理装置１００は、撮影画像入力部１１１、テンプレート入力部１１２、候補探索部１１３、奥行き識別部１１４、候補判定部１１５、及び三次元座標入力部１１８を有する。撮影画像入力部１１１は、撮像部１０１が撮像した撮影画像１０を情報処理装置１００内部に取り込んで候補探索部１１３、候補判定部１１５、及び奥行き識別部１１４に供給する。三次元座標入力部１１８は、三次元計測部１０４が計測した三次元座標１１０１を情報処理装置１００内部に取り込んで奥行き識別部１１４に供給する。
【００６９】
奥行き識別部１１４は、撮影画像１０、三次元座標１１０１、テンプレート２０、及びマッチング候補リスト４０を用いて、計測対象物２０１の特徴要素位置における特徴要素三次元座標１２０１を複数推定する。そして、奥行き識別部１１４は、これらの位置関係に基づき、テンプレート２０に含まれる特徴要素の奥行きの前後関係を識別する。
【００７０】
第３の実施形態における動作について説明する。第３の実施形態における装置の処理の流れは、第１の実施形態と同様である。ただし、処理内容が第１の実施形態とは異なるステップが存在するため、それについて図３（ａ）を参照して説明する。
【００７１】
ステップＳ３０２にて、撮像部１０１は、計測対象物２０１を含むシーンの撮影画像１０を撮像し、三次元計測部１０４は、計測対象物２０１上の三次元座標１１０１を計測する。撮像部１０１は、撮影画像１０を撮影画像入力部１１１に出力し、三次元計測部１０４は、三次元座標１１０１を三次元座標入力部１１８に出力する。撮影画像入力部１１１は、入力された撮影画像１０を候補探索部１１３、奥行き識別部１１４、及び候補判定部１１５に供給する。また、三次元座標入力部１１８は、入力された三次元座標１１０１を奥行き識別部１１４に供給する。
【００７２】
また、ステップＳ３０５にて、奥行き識別部１１４は、三次元座標１１０１及びテンプレート２０を参照して、撮影画像１０における特徴要素三次元座標１２０１を推定する。奥行き識別部１１４は、まずマッチング候補リスト４０からマッチング候補を１つ取り出す。そして、奥行き識別部１１４は、候補探索部１１３によって抽出された撮影画像１０の輪郭と、テンプレート要素中に定義されている特徴要素４１２、三次元座標１１０１とを参照して、特徴要素三次元座標１２０１を算出する。
【００７３】
図１２は、本実施形態での特徴要素三次元座標１２０１の取得方法を説明する図である。奥行き識別部１１４は、計測対象物２０１上の三次元座標１１０１を用いて、撮影画像１０における特徴要素４１２の位置における三次元座標である特徴要素三次元座標１２０１を取得する。図１２において、特徴要素４１２と特徴要素三次元座標１２０１は同一の場所に存在する。特徴要素４１２の位置での特徴要素三次元座標１２０１は、この段階では未知である。そのため、奥行き識別部１１４は、周囲の三次元座標１１０１を用いて、特徴要素三次元座標１２０１を推定する。
【００７４】
具体的には、奥行き識別部１１４は、候補探索部１１３において抽出された撮影画像１０の輪郭４１１について、同一輪郭上で計測された特徴要素４１２近傍の三次元座標１１０１を探索する。図１２において、輪郭４１１上の２つの黒丸が探索された近傍の三次元座標１１０１ａ、１１０１ｂを表している。次に、奥行き識別部１１４は、撮像部１０１の内部パラメータ、及び撮像部１０１と三次元計測部１０４との間の外部パラメータを用いて、三次元座標１１０１ａ、１１０１ｂが撮影画像１０に投影される画像座標を算出する。奥行き識別部１１４は、特徴要素の画像座標と三次元座標１１０１ａ、１１０１ｂが撮影画像１０に投影される画像座標との距離を各々算出し、三次元座標１１０１ａ、１１０１ｂを算出した２つの距離で内分することで特徴要素三次元座標１２０１を算出する。
【００７５】
次に、奥行き識別部１１４は、第１の実施形態と同様に、テンプレート要素中に定義されている特徴要素４１２から特徴奥行き識別情報を参照し「手前」ラベルが付与された特徴要素と「奥」ラベルが付与された特徴要素とを１つずつ抽出して特徴対を構成する。なお、撮影画像１０上で抽出された特徴要素が観測されなかった場合、その特徴要素は使用しない。奥行き識別部１１４は、この処理を繰り返して複数の特徴対を設定する。
【００７６】
また、ステップＳ３０６にて、候補判定部１１５は、マッチング候補リスト４０に含まれるマッチング候補の正誤を判定して最終位置姿勢情報５０を出力する。候補判定部１１５は、各特徴対についてステップＳ３０５において算出された特徴要素三次元座標１２０１と、特徴奥行き識別情報とを比較する。「手前」ラベルが付与された特徴要素４１２に対応する特徴要素三次元座標１２０１が「奥」ラベルが付与された特徴要素４１２に対応する特徴要素三次元座標１２０１よりも視点に近い値であれば、候補判定部１１５は、そのマッチング候補を正しいと判定する。候補判定部１１５は、正しいと判定されたマッチング候補に対応する位置姿勢の情報を最終位置姿勢情報５０として出力する。
【００７７】
このように第３の実施形態によれば、三次元計測装置によって計測される三次元座標が疎であるような状況においても、計測対象物の三次元位置姿勢を精度良く推定することが可能となる。なお、前述した例に限らず、第３の実施形態に関して、以下の変形例１１を適用するようにしてもよい。
［変形例１１］奥行き識別部１１４は、撮影画像１０において特徴要素４１２が検出される位置での三次元座標として特徴要素三次元座標１２０１を推定するが、輪郭４１１上で計測された三次元座標１１０１をそのまま用いるようにしてもよい。この場合、候補判定部１１５は、特徴要素４１２ではなく、輪郭４１１の前後関係を判定するようにすればよい。また、テンプレート生成部１０２は、輪郭４１１上のサンプル点ではなく、輪郭を構成する直線（線分）に対して特徴奥行き識別情報を算出すればよい。
【００７８】
（第４の実施形態）
次に、本発明の第４の実施形態について説明する。本実施形態では、計測対象物の三次元位置姿勢の推定について、計測対象物に係る三次元座標を１点のみ計測する場合に適用できる装置に関して説明する。本実施形態では、複数得られた三次元位置姿勢の候補の中から、１点の三次元座標と既知の平面との距離に基づいて適切なものを選択する。これにより、計測できる三次元座標が１点であるような状況においても、計測対象の位置姿勢を精度良く推定することが可能となる。なお、第４の実施形態における装置全体の構成は、図１０に示した第３の実施形態における構成と同様である。以下では、第３の実施形態と異なる部分について説明し、第３の実施形態と同様の部分については説明を省略する。
【００７９】
三次元計測部１０４は、計測対象物２０１の表面の三次元座標を計測して、計測した三次元座標１１０１を三次元座標入力部１１８に出力する。本実施形態では、一例として三次元計測部１０４としてスポット投影三次元計測装置を用い、計測対象物２０１の表面の１点について、三次元座標１１０１を取得する。奥行き識別部１１４は、１点の三次元座標１１０１と平面２０２との間の距離に基づいて、テンプレート２０に含まれる特徴要素の奥行きの前後関係を識別する。
【００８０】
図１３は、第４の実施形態における撮像部１０１、三次元計測部１０４、及び計測対象物２０１の関係を説明する図である。複数の計測対象物２０１が無作為に配置され、撮像部１０１は、その上方から全体を俯瞰した撮影画像１０を取得する。また、三次元計測部１０４は、スポット光を計測対象物２０１に対して投影し、投影スポット上の三次元位置を三次元座標１１０１として取得する。個々の計測対象物２０１は様々な位置姿勢を取るが、互いに重なり合うことは少なく、概ね平面２０２上に存在する。また、三次元計測部１０４から平面２０２までの距離は予め計測しておく。これは計測対象物２０１を配置しない状態で三次元座標１１０１を計測し、その値を保持することで実現される。
【００８１】
第４の実施形態における動作について説明する。第４の実施形態における装置の処理の流れは、第３の実施形態と同様である。ただし、処理内容が第３の実施形態とは異なるステップが存在するため、それについて図３（ａ）及び図３（ｂ）を参照して説明する。
【００８２】
図３（ｂ）におけるステップＳ３１３にて、テンプレート生成部１０２は、テンプレート画像３０から特徴要素４１２を抽出する。このとき、計測対象物２０１の輪郭４１１上の画素だけでなく、面上の画素についてもサンプリングを行う。
【００８３】
また、ステップＳ３１４にて、テンプレート生成部１０２は、ステップＳ３１３において抽出した特徴要素４１２について特徴奥行き識別情報を算出する。テンプレート生成部１０２は、次のようにして特徴奥行き識別情報を算出する。テンプレート生成部１０２は、計測対象物２０１の特徴要素４１２をサンプリングする際、ステップＳ３１２において奥行き値を保持した奥行きバッファを参照して奥行き値を得る。１枚のテンプレート画像３０に対して所定数のサンプリングが終了した時点では、特徴要素数と同数の奥行き値が得られていることになる。テンプレート生成部１０２は、これらの奥行き値を最奥部の面からの距離に変換する。図１３において、計測対象物２０１は平面２０２上に置かれているので、視点から観測される計測対象物２０１は最奥面が平面２０２に接することとなる。テンプレート生成部１０２は、サンプリングされた特徴要素４１２における奥行きと、最奥面（すなわち、計測対象物２０１が平面２０２上に置かれたとき、平面２０２と接する面）との距離を算出し、特徴奥行き識別情報としてテンプレート２０に書き込む。
【００８４】
また、図３（ａ）におけるステップＳ３０２にて、撮像部１０１は、計測対象物２０１を含むシーンの撮影画像１０を撮像し、三次元計測部１０４は、計測対象物２０１上の三次元座標１１０１を計測する。撮像部１０１は、撮影画像１０を撮影画像入力部１１１に出力し、三次元計測部１０４は、三次元座標１１０１を三次元座標入力部１１８に出力する。撮影画像入力部１１１は、入力された撮影画像１０を候補探索部１１３及び奥行き識別部１１４に供給する。また、三次元座標入力部１１８は、入力された三次元座標１１０１を奥行き識別部１１４に供給する。
【００８５】
また、ステップＳ３０５にて、奥行き識別部１１４は、三次元座標１１０１及びテンプレート２０を参照して、撮影画像１０における特徴要素三次元座標１２０１を推定する。奥行き識別部１１４は、まずマッチング候補リスト４０からマッチング候補を１つ取り出す。次に、奥行き識別部１１４は、テンプレート要素中に定義されている位置姿勢を基に、撮影画像１０上で検出されたスポット光の画像座標の最近傍の特徴要素４１２を探索する。奥行き識別部１１４は、入力された三次元座標１１０１と、事前に算出した三次元計測部１０４−平面２０２間の距離とを参照して、三次元座標１１０１−平面２０２間の距離を算出する。
【００８６】
また、ステップＳ３０６にて、候補判定部１１５は、マッチング候補リスト４０に含まれるマッチング候補の正誤を判定して最終位置姿勢情報５０を出力する。候補判定部１１５は、ステップＳ３０５において算出された三次元座標１１０１−平面２０２間の距離と、テンプレート２０に記述されている特徴奥行き識別情報とを比較する。候補判定部１１５は、これらの値の差が一定のしきい値以内（すなわち、しきい値の範囲で概略等しいと見なせる状態）であれば、候補判定部１１５は、そのマッチング候補を正しいと判定する。候補判定部１１５は、正しいと判定されたマッチング候補に対応する位置姿勢の情報を、最終位置姿勢情報５０として出力する。
【００８７】
このように第４の実施形態によれば、計測できる三次元座標が１点であるような状況においても、計測対象物の三次元位置姿勢を精度良く推定することが可能となる。なお、前述した例に限らず、第４の実施形態に関して、以下の変形例１２を適用するようにしてもよい。
［変形例１２］本実施形態においてテンプレート生成部１０２は、計測対象物２０１の最奥面と特徴要素の奥行き値との差を特徴奥行き識別情報として算出したが、これに限られるものではない。物理シミュレーションを用いて計測対象物２０１が平面２０２に接する面を特定し、その面と特徴要素の奥行き値との差を算出するようにしてもよい。
【００８８】
（第５の実施形態）
次に、本発明の第５の実施形態について説明する。本実施形態では、計測対象物の三次元位置姿勢の推定について、単一の撮像部が移動しながら連続的に複数の撮影画像を取得する場合に適用できる装置に関して説明する。本実施形態では、単一の撮像部がロボットハンド等の駆動部に取り付けられ、駆動部が連続的に動作する過程で視点位置の異なる画像が複数撮影される。過去の撮影画像と現在の撮影画像との視差の大小関係に基づいて、複数得られた三次元位置姿勢の候補の中から適切なものを選択する。これにより、三次元計測装置を備えることなく、計測対象物の位置姿勢を精度良く推定することが可能となる。
【００８９】
図１４は、第５の実施形態における装置全体の構成例を示す図である。図１４において、長方形の枠は本実施形態の各処理を行う機能モジュールを示し、矢印はデータの流れを示している。装置は、三次元位置姿勢の推定を行う情報処理装置１００と、それに接続する撮像部１０１及びテンプレート生成部１０２を有する。なお、図１４に示す構成は一例であり。これに限定されるものではない。また、以下では第１の実施形態と異なる部分について説明し、第１の実施形態と同様の部分については説明を省略する。
【００９０】
撮像部１０１は、三次元位置姿勢を推定する計測対象物２０１を含むシーンを撮像した撮影画像１０を取得する。撮像部１０１は、不図示の駆動部に取り付けられており、駆動部が連続的に動作することによって時系列で視点位置の異なる複数の撮影画像１０が取得される。また、撮像部１０１は、不図示の位置姿勢センサを有しており、駆動部の動きに応じて撮影画像１０と同期した撮影画像位置姿勢情報１４を取得する。撮像部１０１は、取得した撮影画像１０及び撮影画像位置姿勢情報１４を、情報処理装置１００の撮影画像入力部１１１に出力する。なお、本実施形態において撮像部１０１は、その内部に自動フォーカス制御機構を有していなくともよい。
【００９１】
第５の実施形態における情報処理装置１００は、撮影画像入力部１１１、テンプレート入力部１１２、候補探索部１１３、奥行き識別部１１４、候補判定部１１５、及び候補保持部１１９を有する。撮影画像入力部１１１は、撮像部１０１が取得した撮影画像１０及び撮影画像位置姿勢情報１４を情報処理装置１００内部に取り込んで候補探索部１１３及び候補判定部１１５に供給する。
【００９２】
候補探索部１１３は、入力される撮影画像１０とテンプレート２０とをテンプレートマッチングによって照合し、計測対象物のマッチング候補リスト４０を生成して出力する。候補探索部１１３には、常に最新の撮影画像１０及び撮影画像位置姿勢情報１４が入力され、その時点におけるマッチング候補リスト４０が生成される。また、候補探索部１１３は、撮影画像１０、撮影画像位置姿勢情報１４、及びマッチング候補リスト４０を候補保持部１１９に出力する。
【００９３】
候補保持部１１９は、候補探索部１１３が過去に入力や生成した撮影画像１０、撮影画像位置姿勢情報１４、及びマッチング候補リスト４０を保持する。候補判定部１１５は、候補探索部１１３が出力する最新の撮影画像１０、撮影画像位置姿勢情報１４、及びマッチング候補リスト４０が入力される。また、候補判定部１１５は、候補保持部１１９が保持する過去の撮影画像１０、撮影画像位置姿勢情報１４、及びマッチング候補リスト４０が入力される。候補判定部１１５は、入力されるこれらの情報に基づいて、最新のマッチング候補リスト４０に含まれるマッチング候補の正誤を判定し、正しいと判定されたマッチング候補に対応する位置姿勢の情報のみを最終位置姿勢情報５０として出力する。
【００９４】
第５の実施形態における動作について説明する。図１５は、第５の実施形態における装置の処理の流れを示すフローチャートである。ステップＳ１５０１での事前準備の処理の流れは、図３（ｂ）に示した第１の実施形態における事前準備の処理と同様である。
【００９５】
本実施形態においては、第１の実施形態におけるステップＳ３０２の処理に対応するステップＳ１５０３の処理は幾度も繰り返される。それに対して、第１の実施形態におけるステップＳ３０３の処理に対応するステップＳ１５０２の処理は、本装置の起動時に一度のみ処理すればよい。そのため、第５の実施形態では、ステップＳ１５０２にてテンプレート２０の入力を行った後に、ステップＳ１５０３にて撮影画像１０及び撮影画像位置姿勢情報１４の入力を実行する。
【００９６】
ステップＳ１５０３にて、撮像部１０１は、計測対象物２０１を含むシーンの画像を撮像するとともに、これと同期して撮像部１０１の位置姿勢情報を取得する。撮像部１０１は、取得した撮影画像１０及び撮影画像位置姿勢情報１４を撮影画像入力部１１１に出力する。撮影画像入力部１１１は、入力された撮影画像１０及び撮影画像位置姿勢情報１４を候補探索部１１３及び候補判定部１１５に供給する。
【００９７】
ステップＳ１５０４にて、候補探索部１１３は、第１の実施形態と同様にして位置姿勢の候補を探索する。次に、ステップＳ１５０５にて、奥行き識別部１１４は、テンプレート２０に含まれる特徴要素の奥行きの前後関係を識別する。なお、候補保持部１１９が過去の撮影画像１０、撮影画像位置姿勢情報１４、及びマッチング候補リスト４０を保持していない場合（すなわち、初回実行時）には、ステップＳ１５０５及びステップＳ１５０６の処理を行わずにステップＳ１５０８に進む。
【００９８】
ステップＳ１５０４では、奥行き識別部１１４は、まず候補探索部１１３から入力されたマッチング候補リスト４０から位置姿勢候補を１つ取り出す。次に、奥行き識別部１１４は、候補探索部１１３から現在の撮影画像１０及び撮影画像位置姿勢情報１４を入力する。同時に、候補保持部１１９から、過去の撮影画像１０、撮影画像位置姿勢情報１４、及びマッチング候補リスト４０を入力する。
【００９９】
奥行き識別部１１４は、テンプレート要素中に定義されている特徴要素４１２から特徴奥行き識別情報を参照し、「手前」ラベルが付与された特徴要素と「奥」ラベルが付与された特徴要素を１つずつ抽出して特徴対を構成する。なお、現在の撮影画像１０又は過去の撮影画像１０上で抽出された特徴要素が観測されなかった場合、その特徴要素は使用しない。奥行き識別部１１４は、この処理を繰り返して複数の特徴対を設定する。
【０１００】
また、奥行き識別部１１４は、現在の撮影画像位置姿勢情報１４及び過去の撮影画像位置姿勢情報１４を参照して、過去の撮影画像１０を平行化する。これにより、現在の撮影画像１０及び過去の撮影画像１０のエピポーラ線がｘ軸に平行な状態となる。奥行き識別部１１４は、各特徴対について特徴要素４１２が検出された現在の撮影画像１０と過去の撮影画像１０上の視差（すなわち、それぞれ検出されたｘ座標の差）を比較する。２画像の視差の比較は、第２の実施形態と同様の方法で行えばよい。
【０１０１】
ステップＳ１５０６にて、候補判定部１１５は、マッチング候補リスト４０に含まれるマッチング候補の正誤を判定して最終位置姿勢情報５０を出力する。候補判定部１１５は、２枚の画像（現在の撮影画像１０及び過去の撮影画像１０）の三角測量に基づき、マッチング候補の正誤を判定し、正しいと判定されたマッチング候補に対応する位置姿勢の情報を最終位置姿勢情報５０として出力する。
【０１０２】
ステップＳ１５０７にて、候補保持部１１９は、候補探索部１１３から入力される最新のマッチング候補リスト４０、撮影画像１０、及び撮影画像位置姿勢情報１４を保持する。これらの値は、次回のステップＳ１５０６の処理を実行する際に参照される。ステップＳ１５０８にて、ユーザからの指示に基づき、本実施形態の三次元位置姿勢の推定処理を終了する、又はステップＳ１５０３に戻って処理を継続する。
【０１０３】
このように第５の実施形態によれば、単一の撮像部が移動しながら連続的に複数の撮影画像を取得することによって、三次元計測装置を設けなくとも、計測対象物の三次元位置姿勢を精度良く推定することが可能となる。なお、前述した例に限らず、第５の実施形態に関して、以下の変形例１２を適用するようにしてもよい。
［変形例１２］本実施形態においては、撮像部１０１が位置姿勢センサによって撮影画像位置姿勢情報１４を取得するようにしているが、これに限定されるものではない。ＳｆＭあるいはＳＬＡＭ技術を用いて、撮影画像１０上で検出される特徴点座標に基づき、撮影画像入力部１１１が撮影画像位置姿勢情報１４を生成するようにしてもよい。
【０１０４】
（第６の実施形態）
次に、本発明の第６の実施形態について説明する。本実施形態では、計測対象物の三次元位置姿勢の推定結果を用いて、ロボット等の駆動部が計測対象物を把持する場合に適用できる物体把持装置に関して説明する。本実施形態については、第５の実施形態と異なる部分についてのみ説明する。
【０１０５】
本実施形態においては、三次元位置姿勢の推定を行う情報処理装置１００の外部に不図示の制御部を備え、出力される最終位置姿勢情報５０を基に駆動部に対して最終目的位置姿勢情報を生成する。この最終目的位置姿勢情報は、駆動部が有するエンドエフェクター（不図示）が計測対象物２０１を把持することができるようにする位置姿勢情報である。最終目的位置姿勢情報に関しては、最終位置姿勢情報５０に対して所定の三次元変換を適用することで生成される。所定の三次元変換は、計測対象物２０１の形状とエンドエフェクターとの関係から定義され、そのエンドエフェクターが計測対象物２０１を把持するのに最も適した駆動部の位置姿勢を、計測対象物２０１の座標系において表したものである。所定の三次元変換は、本実施形態における処理の開始前に予め算出しておき、処理開始時にパラメータとして装置に入力される。
【０１０６】
このように第６の実施形態によれば、最終位置姿勢情報５０として出力される計測対象物の三次元位置姿勢の推定結果を用いて、最終目的位置姿勢情報を生成することで、ロボット等の駆動部が計測対象物を把持することが可能となる。
【０１０７】
なお、「撮影画像入力部１１１」は、撮像部１０１が撮影した画像を情報処理装置１００に入力できるものであれば、いかなるものでもよい。また、入力する画像においても、ＲＧＢカラー画像、グレイスケール画像、白黒画像、奥行き画像等、いかなる種類の画像でもよい。また、「特徴要素」は、画像中で検出される要素であれば何でもよく、点に限られず、線や円、矩形等の領域によって定義されるものであってもよい。また、「特徴要素」は、計測対象物を複数の視点から観測した画像から得ることができるものであり、各実施形態では計測対象物のＣＡＤモデルをレンダリングして生成する構成について説明したが、これに限られるものではない。例えば変形例２として説明したように、実際の計測対象物を複数の方向から撮影し、位置姿勢と対応づけてテンプレートを生成するようにしてもよい。
【０１０８】
また、「候補探索部１１３」は、入力した撮影画像から計測対象物の位置姿勢の候補を探索する構成に限られるものではない。例えば変形例６として示したように、位置姿勢に加えて計測対象物の種別を位置姿勢の候補に含め、計測対象物の種別を探索するような構成も含めることが可能である。また、「候補判定部１１５」は、検出された特徴要素相互の奥行き相対関係とテンプレートに記述された特徴要素相互の奥行き相対関係に基づいて、マッチング候補の正誤を判定するが、この特徴要素相互の奥行き相対関係には様々なものを用いることができる。また、「候補判定部１１５」は、マッチング候補の正誤判定の結果、正しいと判定されたマッチング候補を最終位置姿勢情報として出力するが、評価値等の中間結果を出力するようにしてもよい。例えば変形例８に一例を示したように、すべてのマッチング候補を出力する構成、評価値を含めて出力する構成、位置、姿勢の評価値をそれぞれ出力する構成等を適用可能である。
【０１０９】
（本発明の他の実施形態）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１１０】
例えば、前述した各実施形態に示した情報処理装置は、図１６に示すようなコンピュータ機能１６００を有し、そのＣＰＵ１６０１により各実施形態での動作が実施される。コンピュータ機能１６００は、図１６に示すように、ＣＰＵ１６０１と、ＲＯＭ１６０２と、ＲＡＭ１６０３とを備える。また、操作部（ＣＯＮＳ）１６０９のコントローラ（ＣＯＮＳＣ）１６０５と、ＣＲＴやＬＣＤ等の表示部としてのディスプレイ（ＤＩＳＰ）１６１０のディスプレイコントローラ（ＤＩＳＰＣ）１６０６とを備える。さらに、ハードディスク（ＨＤ）１６１１、及びフレキシブルディスク等の記憶デバイス（ＳＴＤ）１６１２のコントローラ（ＤＣＯＮＴ）１６０７と、ネットワークインタフェースカード（ＮＩＣ）１６０８とを備える。それら機能部１６０１、１６０２、１６０３、１６０５、１６０６、１６０７、１６０８は、システムバス１６０４を介して互いに通信可能に接続された構成としている。
【０１１１】
ＣＰＵ１６０１は、ＲＯＭ１６０２又はＨＤ１６１１に記憶されたソフトウェア、又はＳＴＤ１６１２より供給されるソフトウェアを実行することで、システムバス１６０４に接続された各構成部を総括的に制御する。すなわち、ＣＰＵ１６０１は、前述したような動作を行うための処理プログラムを、ＲＯＭ１６０２、ＨＤ１６１１、又はＳＴＤ１６１２から読み出して実行することで、前述した各実施形態での動作を実現するための制御を行う。ＲＡＭ１６０３は、ＣＰＵ１６０１の主メモリ又はワークエリア等として機能する。ＣＯＮＳＣ１６０５は、ＣＯＮＳ１６０９からの指示入力を制御する。ＤＩＳＰＣ１６０６は、ＤＩＳＰ１６１０の表示を制御する。ＤＣＯＮＴ１６０７は、ブートプログラム、種々のアプリケーション、ユーザファイル、ネットワーク管理プログラム、及び前述した各実施形態における前記処理プログラム等を記憶するＨＤ１６１１及びＳＴＤ１６１２とのアクセスを制御する。ＮＩＣ１６０８はネットワーク１６１３上の他の装置と双方向にデータをやりとりする。
【０１１２】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１１３】
１００：情報処理装置  １０１：撮像部  １０２：テンプレート生成部  １０３：第二撮像部  １０４：三次元計測部  １１１：撮影画像入力部  １１２：テンプレート入力部  １１３：候補探索部  １１４：奥行き識別部  １１５：候補判定部  １１６：第二撮影画像入力部  １１７：第二候補探索部  １１８：三次元座標入力部  １１９：候補保持部  ２０１：計測対象物
【図１】
2018195070.tif 000003
【図２】
2018195070.tif 000004
【図３】
2018195070.tif 000005
【図４】
2018195070.tif 000006
【図５】
2018195070.tif 000007
【図６】
2018195070.tif 000008
【図７】
2018195070.tif 000009
【図８】
2018195070.tif 000010
【図９】
2018195070.tif 000011
【図１０】
2018195070.tif 000012
【図１１】
2018195070.tif 000013
【図１２】
2018195070.tif 000014
【図１３】
2018195070.tif 000015
【図１４】
2018195070.tif 000016
【図１５】
2018195070.tif 000017
【図１６】
2018195070.tif 000018