(57)【特許請求の範囲】
【請求項１】
３次元空間内の対象物体の位置姿勢を推定する情報処理装置であって、
複数の撮影位置から前記対象物体を撮影して得られた複数の撮影画像を入力する入力手段と、
入力された前記複数の撮影画像の各々から、前記３次元空間内における複数の部分空間のそれぞれが占める領域に対応する部分画像を切り出す切出手段と、
前記部分空間毎に、該部分空間について前記複数の撮影画像からそれぞれ切り出された複数の部分画像からなる集合の特徴を示す特徴情報を当該複数の部分画像から抽出する抽出手段と、
物体の位置姿勢と、当該位置姿勢に対応する当該物体の特徴情報とを関連づけて示す辞書情報を記憶する記憶手段と、
前記抽出手段が前記部分空間毎に抽出した前記対象物体の特徴情報の各々と、前記辞書情報に示される特徴情報とを比較して、該対象物体の位置姿勢を推定する推定手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記推定手段は、前記部分空間毎に抽出された前記特徴情報の各々と、前記辞書情報に示される特徴情報とを比較して、該辞書情報に示される特徴情報との適合度が最も高い特徴情報が抽出された前記部分画像の集合に基づいて、前記対象物体の位置姿勢を推定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記憶手段は前記部分空間毎に前記辞書情報を記憶し、
前記推定手段は、前記部分空間毎に抽出された前記特徴情報の各々と、該部分空間に対応する前記辞書情報に示される特徴情報とを比較して、前記対象物体の位置姿勢を推定する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記情報処理装置は、前記適合度が予め定められたしきい値以上の前記部分空間の位置を前記対象物体の位置と推定することを特徴とする請求項２に記載の情報処理装置。
【請求項５】
前記情報処理装置は、前記部分空間に対応する複数の部分画像の全てに前記対象物体が占める全領域が表されている場合は、当該部分空間の位置を前記対象物体の位置と推定することを特徴とする請求項２に記載の情報処理装置。
【請求項６】
前記抽出手段は、前記複数の部分画像を融合して単一画像を生成し、当該単一画像の特徴を示す情報を前記特徴情報として抽出することを特徴とする請求項１から５のいずれか１項に記載の情報処理装置。
【請求項７】
前記記憶手段は物体の種類毎に前記辞書情報を記憶し、
前記推定手段は、前記抽出された特徴情報の各々と、前記物体の種類毎の辞書情報に示される特徴情報の各々とを比較して、前記対象物体の位置姿勢及び種類を推定する
ことを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記入力手段は、互いに異なる撮影位置に設けられた複数の撮影手段により撮影された画像を前記複数の撮影画像として入力する請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記入力手段は、同一の撮影手段により複数の撮影位置から撮影された複数の画像を前記撮影画像として入力する請求項１から７のいずれか１項に記載の情報処理装置。
【請求項１０】
物体の位置姿勢と当該位置姿勢に対応する当該物体の特徴情報とを関連づけて示す辞書情報を記憶する記憶手段を備えた、３次元空間内の対象物体の位置姿勢を推定する情報処理装置の制御方法であって、
入力手段が、複数の撮影位置から前記対象物体を撮影して得られた複数の撮影画像を入力する入力工程と、
切出手段が、入力された前記複数の撮影画像の各々から、前記３次元空間内における複数の部分空間のそれぞれが占める領域に対応する部分画像を切り出す切出工程と、
抽出手段が、前記部分空間毎に、該部分空間について前記複数の撮影画像からそれぞれ切り出された複数の部分画像からなる集合の特徴を示す特徴情報を当該複数の部分画像から抽出する抽出工程と、
推定手段が、前記抽出工程において前記部分空間毎に抽出された前記対象物体の特徴情報の各々と、前記辞書情報に示される特徴情報とを比較して、該対象物体の位置姿勢を推定する推定工程と
を有することを特徴とする情報処理装置の制御方法。
【請求項１１】
コンピュータを請求項１から９のいずれか１項に記載の情報処理装置が備える各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置及びその制御方法、プログラムに関し、特に、３次元空間内の対象物体の位置姿勢を推定する技術に関する。
【背景技術】
【０００２】
３次元空間内の物体の位置姿勢を推定する手法（３次元測定）としては、大別して以下の２つが知られている。即ち、一方は３角測量を用いたステレオビジョンであり、他方は位置姿勢が既知の登録画像とのパターンマッチングを行う手法である。
【０００３】
ステレオビジョンは、２台のカメラを用いる手法と、レーザー光と１台のカメラを用いる手法とが知られている。どちらの手法も、観測される１つの点と観測する２つの点との間の３角測量に基づいて、観測点の３次元上の位置を求める。２台のカメラを用いる手法ではカメラで撮影した画像中での観測対応点の特定が難しく、誤差が混入する可能性が高い。これはステレオビジョンにおける対応点探索の問題として知られている。これに対してレーザー光を用いる手法は対応点の探索が簡単になるが、レーザー光の正確な制御が難しく、これが誤差の原因となる。
【０００４】
ステレオビジョンが２台のカメラ、または１台のカメラとレーザー光照射装置が必要なのに対して、パターンマッチングを用いる手法は基本的にカメラが１台でもよい。この手法では、事前に３次元上の位置、姿勢がわかっている対象物の画像を蓄えておいて、新規に入力された画像をその蓄積された画像と蓄えておいた画像とをマッチングすることによって、対象物体の位置姿勢を求める。
【０００５】
このパターンマッチングを用いる手法としては、パラメトリック固有空間法を用いることで、少数の登録画像を用いて姿勢推定を行う構成が知られている（特許文献１）。
【０００６】
また、２台以上のカメラを用いてパターンマッチングを行うことにより、より高精度に物体の位置を特定する手法も知られている（特許文献２）。特許文献２の手法は、複数のカメラのパン・チルト・ズームを順次制御していくものである。具体的には、直前のカメラで撮影した画像の物体検出位置を利用することによって、次に撮影するカメラで同一物体を検出できるようにパン・チルト・ズームを逐次決定していく。そして、２台以上のカメラで物体を検出できた場合に正解とし、各カメラによる検出位置との誤差が最小となるように物体の位置を決定する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平８−１５３１９８号公報
【特許文献２】特開２００３−２２４４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したステレオビジョンで２台のカメラを用いる場合は、上記の対応点探索の問題が本質的な課題となる。特に、ステレオビジョンにおいては対応点が２台のカメラから見えている必要があり、対象物体の自己オクルージョンでどちらかのカメラから観測点が見えない場合は、原理的に３次元測定は不可能となる。
【０００９】
また、特許文献２に開示された手法でも、対応点が２台のカメラから見えている必要があり、対象物体の自己オクルージョンで１台のカメラでしか観測点が見えない場合は、１台のカメラでのパターンマッチングを用いた物体の位置姿勢推定手法を複数のカメラに単純に拡張した手法といえる。つまり、複数のカメラで撮影された画像を独立に用いてパターンマッチングしている。したがって、物体の位置姿勢の推定精度には限界がある。また、複数のカメラで矛盾した位置姿勢推定結果が導かれた場合、その解消が困難であるという課題がある。
【００１０】
本発明は上記課題に鑑みなされたものであり、自己オクルージョンが存在する環境においても、複数の撮影画像を用いて３次元空間内の対象物体の位置姿勢を高精度かつ安定的に推定するための技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明による情報処理装置は以下の構成を備える。即ち、
３次元空間内の対象物体の位置姿勢を推定する情報処理装置であって、
複数の撮影位置から前記対象物体を撮影して得られた複数の撮影画像を入力する入力手段と、
入力された前記複数の撮影画像の各々から、前記３次元空間内における複数の部分空間のそれぞれが占める領域に対応する部分画像を切り出す切出手段と、
前記部分空間毎に、該部分空間について前記複数の撮影画像からそれぞれ切り出された複数の部分画像からなる集合の特徴を示す特徴情報を当該複数の部分画像から抽出する抽出手段と、
物体の位置姿勢と、当該位置姿勢に対応する当該物体の特徴情報とを関連づけて示す辞書情報を記憶する記憶手段と、
前記抽出手段が前記部分空間毎に抽出した前記対象物体の特徴情報の各々と、前記辞書情報に示される特徴情報とを比較して、該対象物体の位置姿勢を推定する推定手段と
を備える。
【発明の効果】
【００１２】
本発明によれば、自己オクルージョンが存在する環境においても、複数の撮影画像を用いて３次元空間内の対象物体の位置姿勢を高精度かつ安定的に推定するための技術を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】物体認識手法の基本的な処理手順を説明する処理フロー図。
【図２】情報処理装置の構成を示すブロック図。
【図３】複数のカメラによる対象物体の撮影の様子を示す図。
【図４】３次元空間における対象物体とカメラの相対位置を示した図。
【図５】情報処理装置が実行する処理手順を示すフローチャート。
【図６】対象物体存在範囲とカメラとの位置関係を模式的に示す図。
【図７】物体認識手法の基本的な処理手順を説明する処理フロー図。
【図８】情報処理装置が実行する処理手順を示すフローチャート。
【図９】複数の画像を撮影する手順を示すフローチャート。
【図１０】複数の画像を融合する例を示す図。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【００１５】
＜＜実施形態１＞＞
本実施形態では、３次元空間内の対象物体の位置姿勢を推定する構成を説明する。
【００１６】
（基本処理手順）
図１は、本実施形態による物体認識手法の基本的な処理手順を説明する処理フロー図である。１０１は入力画像群（入力撮影画像群）であり、例えば、図３に示すように同一の対象物を複数のカメラ（撮影装置）で撮影した複数の画像のことである。なお、本実施形態では１０１は複数のカメラで撮影した複数の画像群を想定している。しかし、実施形態３に述べるように１つのカメラで複数回撮影した画像群を用いても構わない。
【００１７】
１０２は注目投射領域切り出しステップであり、ここでは入力画像群１０１の各画像から注目投射領域の切り出しが行われる。この処理の詳細は図４を用いて後述する。そして、切り出された入力画像群（切り出し入力画像群と呼ぶ）１０３は、画像正規化ステップ１０４でサイズが正規化されて、切り出し正規化入力画像群１０５が作成される。
【００１８】
一方、予め撮影された登録画像群（登録撮影画像群）１０６から対象物領域切り出しステップ１０７を用いて切り出し登録画像群１０８が作成される。登録画像群１０６の画像は、入力画像群１０１と同じように、例えば図３に示すような複数のカメラで撮影した複数の画像である。また、入力画像群１０１の撮影と登録画像群１０６の撮影は、１つの対象物についての撮影画像の数（図３の場合はカメラの数）は同じとする。また、詳細は図３を用いて後述するが、基本的に複数の撮影画像の３次元上の関係、すなわち、複数の撮影画像を取得したときのカメラの位置及び撮影方向は１０１と１０６で同じとする。言い換えると、登録画像と入力画像を撮影するときは、カメラの位置及び撮影方向は一定である。登録画像群１０６を作成する際は、対象物の位置、姿勢は既知である。したがって、対象物体の存在範囲が撮影画像中に占める領域も既知ということになる。したがって、対象物領域切り出しステップ１０７では、対象物体を包含する後述の検出枠（部分空間）について部分画像を切り出す処理を行う。
【００１９】
なお、図１の処理フロー図では、登録画像群１０６は実際に対象物体を撮影して得られることを前提としているが、高精度なコンピュータグラフィックを用いた擬似的な対象物体画像の集合を登録画像群に代えて用いてもよい。また、限定された方向からの撮影画像を用いて、それらの中間方向からの撮影画像を生成し、生成した撮影画像を用いて登録画像群に代えることも可能である。
【００２０】
ステップ１０７で切り出された登録画像群（切り出し登録画像群と呼ぶ）１０８は入力画像群と同じ処理（１０４）で正規化され、切り出し正規化登録画像群１０９（切り出し正規化登録撮影画像群）が得られる。
【００２１】
様々な種類の対象物体を様々な姿勢で撮影した登録画像群１０６から切り出し正規化登録画像群１０９が作成され、それらを学習することによって辞書（辞書情報）１１０が出来上がる。辞書１１０には対象物体の複数の視点からの撮影画像の情報と共に、対象物体の種類、姿勢等の情報が格納されることになる。なお、登録画像群１０６に対して、対象物領域切り出しステップ１０７、画像正規化ステップ１０４を実行して切り出し正規化登録画像群１０９を生成し、辞書１１０に登録する処理は、入力画像の認識を行う前に予め行われる。上記のような、物体の位置姿勢と、当該位置姿勢に対応する当該物体の特徴情報とを関連づけて示す辞書情報は、後述するように、記憶手段としての外部記憶装置２０１に記憶される。
【００２２】
画像マッチングステップ１１１において、辞書１１０を用いて切り出し正規化入力画像群１０５（切り出し正規化入力撮影画像群）のマッチングが行われ、最終的に認識結果１１２が得られる。
【００２３】
画像マッチングステップ１１１は、単純な画像同士の照合を行うことによって実現してもよいし、機械学習の技術を用いて実現してもよい。なお、画像マッチングステップ１１１において単純な画像同士の照合を行う場合は、辞書１１０は単純に複数セットの切り出し正規化登録画像群が登録されることとなる。
【００２４】
この画像マッチングステップ１１１で重要なことは、複数の画像の情報をまとめて１つの情報として扱うことである。単純な画像同士の照合を行う場合は、単純に複数の撮影画像を連結し、その連結した１枚の入力画像と複数の登録画像を照合する。機械学習の技術を用いる場合は、それぞれの画像から特徴抽出した結果、得られる複数の特徴量ベクトルを単純につなげて１つの特徴ベクトル（特徴情報）を作成してもよい。また、複数の画像から複合的な特徴量を抽出して１つの特徴ベクトルを作成してもよい。機械学習のアルゴリズムとしては、ニューラルネット、サポートベクターマシン、最近傍マッチングアルゴリズム、分類木など、どのアルゴリズムを用いてもよい。
【００２５】
（情報処理装置の構成）
図２は、本実施形態に係る物体認識手法を実行する情報処理装置の構成を示すブロック図である。図２のように情報処理装置は、外部記憶装置２０１、中央処理装置（ＣＰＵ）２０２、メモリ２０３、入出力装置２０４を備える。
【００２６】
記憶手段としての外部記憶装置２０１は、本実施形態を実現するプログラムや、カメラで撮影した登録画像、登録画像を用いて作成された辞書等を記憶・保持する。また、本実施形態の構成によって求められた対象物体の認識結果を保持する機能を持つ。
【００２７】
中央処理装置２０２は物体認識手法のプログラムを実行したり、情報処理装置が備える他の装置の制御を行なったりする。メモリ２０３は中央処理装置２０２が使用するプログラム、及びサブルーチンやデータを一時的に記憶・保持する。入出力装置２０４は、カメラからの画像を取り込んだり、ユーザとのインタラクションを行ったり、物体認識結果を他の情報処理装置へ出力したりする。また、本実施形態に係る物体認識手法を実現するプログラム実行のトリガーをこの入出力装置２０４を介してユーザが出す場合もある。また、ユーザが結果を確認したり、プログラムのパラメータ制御をこの入出力装置を介して行うこともある。また、出力先としてはロボットを制御する装置のような場合も有り得る。
【００２８】
（カメラ）
図３は実施形態１における複数のカメラ（撮影装置）による対象物体の撮影の様子を示す図である。実施形態１においては、複数のカメラを用いて複数の撮影位置から複数の撮影画像を取得して情報処理装置に入力する。図３では３台のカメラで対象物を撮影する例を示している。実施形態１においては、図３のように、対象物体３０１とカメラ間の距離はある程度離れている。具体的には、対象物体が奥行き方向に移動しても、それぞれのカメラで撮影された対象物体の形が大きさしか変化しないと見なせる程度に、対象物体とカメラとの間の距離は離れている。
【００２９】
図３で重要なことは、それぞれのカメラの位置と姿勢が固定されていることである。それぞれのカメラの位置と姿勢が固定されていることにより、同一の位置姿勢の対象物体を撮影して得られた３枚の撮影画像（撮影画像群３０２）の間には相関が存在する。本実施形態では、この複数画像間の相関を有効に利用することにより対象物体の位置、姿勢をより高精度で検出する。
【００３０】
（注目投射領域切り出し）
次に、図４を参照して、注目投射領域切り出しステップ１０２での処理を説明する。図４は３次元空間における対象物体とカメラの相対位置を示した図である。
【００３１】
図４では、１つの対象物体と２台のカメラとが、図面左手に記載のｘｙｚ座標空間内に存在する。図４(a)と図４(b)とでは、対象物およびカメラの配置および位置姿勢は同じであるが、注目枠の位置が異なっている。図４(c)は図４(a)で示す空間を上（ｙ軸正方向）から見た図となる。対象物体は、姿勢がわかりやすいように、大きな白い球に小さな黒い球が結合した構造を有している。
【００３２】
本実施形態では、物体認識を行う対象物体が存在する３次元上の範囲が予め与えられている。図４において、４０１は対象物体が存在可能な範囲を示している。本実施形態では、その存在可能範囲４０１のどの位置に対象物体があり、どのような姿勢をとっているのかを認識、検出する。実施形態１においては、対象物体とカメラとの距離が十分大きいため、対象物体が存在可能範囲４０１のどの場所にあっても、それぞれのカメラに映る対象物体の形状は大きさを除いて変化しないと見なすことができる。なお、対象物体とカメラ間の距離が近くなり、対象物体が存在範囲の中を移動すると、その見えが異なってくることが無視できなくなる。このようなケースについては、実施形態２で詳しく述べる。
【００３３】
図４の４０２は注目枠（部分空間）であり、対象物体の存在可能範囲４０１の中にある仮想的なボックスである。注目枠４０２の大きさは対象物体がどの方向を向いていても、それらを被覆（包含）できる大きさとする。
【００３４】
図４(a)及び図４(b)に示したように、注目枠４０２がそれぞれのカメラに投射された領域を、注目枠の投射領域４０３とする。注目投射領域切り出しステップ１０２では、対象物体の存在可能範囲４０１を注目枠４０２をｘｙｚ軸に移動させながら、注目枠の投射領域４０３を撮影画像から切り出す処理を行う。例えば、対象物体の存在可能範囲４０１の大きさがｘ軸方向、ｙ軸方向、ｚ軸方向について、それぞれ10cm、20cm、15cmだとし、注目枠４０２が一辺5cmの立方体だとする。そして、注目枠を対象物体存在可能範囲の中を1cm刻みで移動させるとすると、注目投射領域切り出しステップ１０２は、１０５６（＝6×16×11）回、実行されることになる。このようにして、注目投射領域切り出しステップ１０２では、入力された複数の撮影画像の各々から、３次元空間内の所定の部分空間（検出枠）が占める領域に対応する部分画像を切り出す切出処理を行う。特に、本実施形態では、検出枠を移動させながら撮影画像から部分画像を切り出していくことで、複数の撮影画像の各々から、複数の部分空間のそれぞれに対応する部分画像を切り出す処理を行う。
【００３５】
図４(a)は注目枠４０２が対象物体とオーバーラップしていない場合を示しており、図４(b)は注目枠４０２が対象物体を完全に被覆（包含）した場合を示している。なお、図４(a)の注目枠の投射領域４０３の中には対象物体が一部しか含まれないのに対して、図４(b)の注目枠の投射領域４０３には対象物体が全部含まれている。結果的に、図４の(b)に示した位置に４０２の注目枠が移動した時、対象物体の認識結果が最も高得点となり、３次元上の位置が特定できることとなる。
【００３６】
図４で最も重要なことは、図４（ｂ）で示したように、注目枠が対象物体と完全にオーバーラップした時は、注目枠の投射領域４０３内の２つの撮影画像が強い関連があるということである。より具体的にはカメラ１の撮影方向とカメラ２の撮影方向とがなす角度と同じ角度だけ、カメラ１の撮影画像に含まれる対象物体は、カメラ２の撮影画像に含まれる対象物体に対して回転していることになる。図４の例で言えば、カメラ２による撮影画像において黒い球が白い大きな球の中心近辺に存在する場合は、カメラ１の撮影画像において、黒い球は白い球の右下に位置することになる。そして、図４（ｂ）のように、対象物体と注目枠の位置が一致する、すなわち、注目枠４０２が対象物体を完全に包含する場合は、カメラ１とカメラ２それぞれの注目枠の投射領域４０３内には、対象物体の投射領域が完全に包含されることになる。本実施形態ではこの複数の切り出し画像群の関連性を利用して画像マッチングを行う。具体的には複数の切り出し画像群の情報を融合し、１つの画像、または１つベクトルとする。
【００３７】
なお、図４では、対象物体の存在可能範囲４０１および注目枠４０２が、直方体、立方体である場合を説明したが、存在可能範囲４０１、注目枠４０２の形状はこれに限られない。例えば、球や楕円球でも構わない。また、直方体や楕円球をつなぎ合わせた不規則な形をしていても構わない。また、注目枠４０２の形状を球とする場合は、その中心位置と半径を指定するだけで本実施形態における注目枠の切り出しを行うことができる。つまり、注目枠という明示的な枠が必要なのではなく、３次元上のどの位置を注目しているかという情報が必要かつ重要である。
【００３８】
（処理フロー）
図５は図１を参照して説明した処理を実現するために、情報処理装置が実行する処理手順を示すフローチャートである。このフローチャートの各ステップの処理は、情報処理装置の中央処理装置（ＣＰＵ）２０２の制御に基づいて実行される。
【００３９】
まず、Ｓ５０１で対象物体の存在領域（存在可能範囲４０１）を決定する。対象物体の存在領域が直方体の形状を有している場合は、その方向も含めて決定する。図４で示したのが１つの例となる。
【００４０】
次に、Ｓ５０２で注目枠４０２の初期位置を決定する。初期位置は、例えば、対象物体の存在領域（存在可能範囲４０１）のコーナーの位置とすることができる。
【００４１】
次にＳ５０３で撮影画像群の切り出し正規化のループに入る。１カ所の注目枠４０２について取得する撮影画像の枚数をｎ枚とすると、Ｓ５０３、Ｓ５０４、Ｓ５０５のループがｎ回実行され、切り出し正規化画像がｎ枚作成される。
【００４２】
すなわち、Ｓ５０３では、処理対象の撮影画像から、３次元空間内の所定の部分空間（検出枠）が占める領域に対応する部分画像を切り出す切出処理を行う。
【００４３】
次に、Ｓ５０４において、切り出した部分画像を正規化する処理を行う。この処理では、切り出した部分画像を画像変換処理により、予め定められた大きさの長方形画像に変換したり、輝度及び明度等を予め定められたスケールに変換する等の処理を行う。
【００４４】
Ｓ５０５では、入力された全ての撮影画像に対してＳ５０３、Ｓ５０４の処理を実行したか否かを判定する。全ての撮影画像に対する処理が終了した場合（Ｓ５０５でＹＥＳ）はＳ５０６へ進み、終了していない場合（Ｓ５０５でＮＯ）はＳ５０３に戻って処理を継続する。
【００４５】
次に、Ｓ５０６、Ｓ５０７において、複数の撮影画像からそれぞれ切り出された複数の部分画像からなる集合の特徴を示す特徴情報を、当該複数の部分画像から抽出する抽出処理を行う。本実施形態では、複数の部分画像を融合して単一画像を生成し、当該単一画像の特徴を示す情報を特徴情報として抽出する。
【００４６】
まず、Ｓ５０６で、このｎ枚の切り出し正規化画像を融合する。図１０を参照して画像融合の例を説明する。図１０(a)(b)は図４(b)のカメラ１とカメラ２の切り出した画像を正規化しておいて融合する例を示している。
【００４７】
最も単純な融合の仕方はｎ枚の画像を連結して１枚の画像を作成することである。これが図１０(a)に相当する。図１０の中で表示したｘｙ座標を２次元の撮影画像の座標とすると、図１０(a)の手法は単純にｘ軸の方向にカメラ１の画像とカメラ２の画像を連結していることになる。
【００４８】
これに対し、図１０(b)の手法は、ｘ軸に沿って、カメラ１の画像とカメラ２の画像を交互に織り込みながら融合する。式で表すと、カメラ１の画像がV_1(x,y)で、カメラ２の画像がV_2(x,y)だとする。そして融合した結果の画像をN(x,y)で表すと、N(2*n,y)＝V_1(n,y)、N(2*n+1,y)＝V_2(n,y)とすることを意味する。ただし、ｎは撮影画像の枚数である。
【００４９】
図１０(a)、図１０(b)の例ではｘ軸方向に画像を連結、または織り込みを行って融合したが、ｙ軸方向に融合してもよいし、ｘ軸方向、ｙ軸方向の両方向に対して融合してもよい。図１０(c)の例は撮影画像が４つあって、それを１つのｘ軸方向、ｙ軸方向の両方を使って織り込みながら融合する例を示している。
【００５０】
次に、Ｓ５０７で、その融合した画像から特徴を抽出して特徴ベクトル（特徴情報）を作成する。例えば、非特許文献１に記載のＳＩＦＴや非特許文献２に記載のＨＯＧなどのアルゴリズムを用いて画像から特徴ベクトルを計算する。なお、単純な画像照合を行う場合は、特徴情報は融合した画像のピクセル値となる。
［非特許文献１］  D. G. Lowe, “Object recognition from local scale-invariant features”, Proc. of IEEE International Conference on Computer Vision (ICCV), pp. 1150-1157, 1999.
［非特許文献２］  N. Dalel, B. Triggs, “Histograms of oriented gradientsfor fuman detection”, Proc. of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 886-893, 2005.
次に、Ｓ５０８で、抽出した対象物体の特徴情報と、辞書情報に示される特徴情報とを比較して、該対象物体の位置姿勢を推定する推定処理を行う。すなわち、辞書と特徴ベクトルをマッチングすることによって、入力画像に対する認識結果を取得する。その結果、信頼度（適合度）が予め定められたしきい値以上の場合は、当該注目枠に対象物体が認識した種類、姿勢で存在するとして結果ファイルに書き込む。
【００５１】
そして、Ｓ５０９で注目枠を移動しながら、ループを回し、存在可能領域を全部スキャンしたら終了する。例えば図４で例示したように、対象物体存在可能範囲の大きさがｘ、ｙ、ｚそれぞれ10cm、20cm、15cm、注目枠が一辺5cmの立方体だとする。そして、注目枠を対象物体存在可能範囲の中を1cm刻みで移動させるとすると、この注目枠移動のループは1056（＝6×16×11）回、実行されることになる。このようにして、注目枠（部分空間毎）にＳ５０２〜Ｓ５０８の処理が実行されることになる。
【００５２】
Ｓ５０８でのマッチングにより得られた結果ファイルにおいて、信頼度（適合度）が最も高い結果を対象物体の位置姿勢として推定することができる。すなわち、部分空間毎に抽出された特徴情報の各々と、辞書情報に示される特徴情報とを比較して、該辞書情報に示される特徴情報との適合度が最も高い特徴情報が抽出された部分画像の集合に基づいて、対象物体の位置姿勢を推定することができる。
【００５３】
上記のように、本実施形態の構成では、複数の撮影画像から切り出された複数の部分画像からなる集合の特徴に基づいて、対象物体の位置姿勢を推定する。このため、一部の部分画像について自己オクルージョンが存在する場合でも、残りの部分画像を用いて対象物体の位置姿勢を高精度かつ安定的に推定することができる。
【００５４】
また、本実施形態の構成では、複数の部分空間のそれぞれに対応する部分画像を切り出し、各部分空間ごとに、切り出した部分空間に対応する複数の部分画像からなる集合の特徴を示す特徴情報を抽出する。そして、辞書情報との適合度が最も高い抽出情報に基づいて、対象物体の位置姿勢を推定する。したがって、本実施形態の構成によれば、対象物体が対象物体存在領域４０１内のどこにあっても、対象物体の位置姿勢を精確に推定することが可能である。
【００５５】
なお、情報処理装置は、適合度が予め定められたしきい値以上の部分空間の位置を対象物体の位置と推定してもよい。あるいは、部分空間に対応する複数の部分画像の全てに対象物体が占める全領域が表されている場合は、当該部分空間の位置を対象物体の位置と推定することもできる。これらの手法によれば、対象物体の位置を簡易かつ効率的に推定することができる。
【００５６】
また、辞書情報は、物体の種類毎に設けられてもよい。この場合、抽出された特徴情報と、辞書情報に示される特徴情報とを比較して、対象物体の位置姿勢だけでなく、物体の種類をも推定することが可能になる。
【００５７】
以上説明したように、本実施形態に係る構成によれば、高精度に対象物の名称、種類、３次元上の存在位置、姿勢等の情報を推定することが出来るようになるという効果がある。特に、複数の撮影画像を用いる場合、自己オクルージョンなどの理由で原理的に対応点が探索できない場合でも物体の位置姿勢が推定できるという効果がある。また、複数の撮影画像を用いる場合、それぞれの撮影画像を矛盾なく処理して物体の位置姿勢を高精度で推定できるという効果もある。
【００５８】
＜＜実施形態２＞＞
実施形態１においては、対象物体とカメラ間の距離はある程度離れていることを前提としていたが、本実施形態では対象物体とカメラ間の距離が近接している場合においても対象物体の位置姿勢を高精度に検出可能な構成を説明する。
【００５９】
（登録画像群取得）
図６を参照して、実施形態２における登録画像群（登録撮影画像群）を取得する手法を説明する。図６は、図４（ｃ）のように対象物体存在範囲とカメラとの位置関係を上方（ｙ軸正方向）から見た様子を模式的に示す図である。６０１は対象物体の存在領域であり、図４の４０１に対応する。６０４は注目枠であり、図４の４０２に対応する。
【００６０】
図６において、太い枠で囲んで示している対象物体の存在領域６０１は、実施形態１と同様に（図４の４０１）、ｘ軸方向、ｙ軸方向、ｚ軸方向の大きさがそれぞれ10cm、20cm、15cmである。図６において、６０３に対象物体の例を示す。注目領域（注目枠６０４）は一辺が5cmの立方体であり、図６においては６０４の点線で囲まれた正方形となる。注目領域（注目枠６０４）は実施形態１と同じように1cmずつ移動することとする。
【００６１】
図４に示したように、実施形態１においては対象物体が存在領域のどの場所にいても、それぞれの撮影画像中の対象物体の形状は変化しなかった。しかし、図６のように存在可能領域がカメラに近い場合、存在可能領域のどの場所に物体が存在するかによって、対象物体が映った形状も変化することになる。このような場合でも問題なく対象物体の種類、位置、姿勢を精確に認識するために、本実施形態に係る構成は図１の辞書（１１０）を複数保持する。
【００６２】
具体的には対象物体の存在領域６０１の中に存在領域の小部屋６０２を設定する。図６では１つの小部屋の形状は一辺が5cmの立方体である。図６においては小部屋がタイル状に存在領域６０１の中に存在するので、全部で24個（＝2×4×3）あることとなる。なお、この小部屋６０２をお互いオーバーラップするように設定してもよいが、説明をわかりやすくするために図６ではタイル状に配置した。
【００６３】
実施形態１では、登録時、対象物体の撮影は姿勢のバリエーションを含んだ１セットのみとなるのに対し、実施形態２では例えば図６の状況ならば２４セット用意する必要がある。本実施形態の登録画像の取得には非常に手間がかかるので、高精度なコンピュータグラフィックを用いて擬似的な対象物体画像を作成することが、より現実的な実装手法となる。
【００６４】
（処理フロー）
図７は実施形態２の処理フロー図である。７０１、７０２、７０３はそれぞれ図１の１０１、１０２、１０３に対応し、７０４、７０５、７０６はそれぞれ図１の１０６、１０７、１０８に対応する。このため、７０１〜７０６については説明を省略する。図１では１１０の辞書が１つであったが、図７では７０７にあるように辞書群となっている点が図１と異なる。
【００６５】
７０８の辞書選択ステップでは、７０２の注目領域切り出しステップで用いた注目枠に最も近い場所で撮影した辞書を選択する。例えば、図６の点線で表した場所に注目枠が存在する場合、斜線で表した小部屋で撮影した画像群を使って作成された辞書が選択されることとなる。そして、選択された辞書を用いて切り出し入力画像群をマッチングし認識結果を出力する。
【００６６】
７０９、７１０、７１１は、それぞれ図１の１１０、１１１、１１２に対応する。このため、７０９〜７１１については説明を省略する。なお、図７の処理フロー図では、切り出した後の撮影画像群の正規化（サイズ変更）の処理は記載されていないが、もちろん正規化を行っても構わない。
【００６７】
図８は図７で説明した処理フロー図を実現するフローチャートである。図８は図５と基本的に同じフローとなる。したがって、図５と処理が異なる部分についてのみ説明する。なお、図７に対応して、図８でも正規化手順を省略しているが、上記の通り、正規化手順を実施しても構わない。
【００６８】
図８が図５と異なる部分は、切り出し画像群を融合（Ｓ８０５）し、特徴抽出（Ｓ８０６）した後で、辞書群の中から適当な辞書を読み出す（Ｓ８０６）ことである。ここで、Ｓ８０２の注目枠位置決定ステップの結果を利用し、現在の注目枠に一番近い場所で撮影した辞書を選択する。これは図７の処理フロー図では、辞書選択ステップ７０８に対応する。
【００６９】
上記のように、本実施形態では、記憶手段としての外部記憶装置２０１には部分空間毎に複数の辞書情報が辞書群として記憶されている。そして、本実施形態の情報処理装置は、部分空間毎に抽出された特徴情報の各々を、該部分空間に対応する辞書情報に示される特徴情報とを比較して、対象物体の位置姿勢を推定する。このため、本実施形態では、対象物体の位置に応じて最適な辞書情報を用いて処理を行うため、対象物体の位置姿勢を精確に推定することが可能になる。
【００７０】
＜＜実施形態３＞＞
実施形態１、実施形態２においては、カメラの数と撮影画像の数が一致していることを前提としていたが、本実施形態においては１つのカメラで複数の画像を撮影して、複数の撮影画像を取得・入力する。具体的には、ロボットハンド上にカメラを固定して、それを操作することにより異なる視点からの対象物体の撮影を実現する。
【００７１】
例えば、図３に示した３台のカメラで３枚の撮影画像を取得する代わりに、１台のカメラを図３に示した３台のカメラの位置、方向に移動させながら３枚の撮影画像を取得する。なお、図１の入力画像群（１０１）はカメラを移動させながら取得する一方、登録画像群（１０６）は図３のように事前に固定したカメラを用いて取得してもよい。
【００７２】
図９は実施形態３を実現する処理をフローチャートにした図である。カメラを所定の位置に移動し（Ｓ９０１）、撮影する（Ｓ９０２）ことによって、撮影画像群を蓄積していく。そして、撮影が終了（Ｓ９０３）すると図５または図８のフローチャートのスタートへ移る。
【００７３】
このように、本実施形態では、同一の撮影手段により複数の撮影位置から撮影された複数の画像を前記撮影画像として入力する。このため、複数の撮影手段を設けなくても、実施形態１，２と同様に精確な位置姿勢の推定を行うことが可能になる。
【００７４】
＜＜その他の実施形態＞＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005631086.tif 000002
【図２】
0005631086.tif 000003
【図３】
0005631086.tif 000004
【図４】
0005631086.tif 000005
【図５】
0005631086.tif 000006
【図６】
0005631086.tif 000007
【図７】
0005631086.tif 000008
【図８】
0005631086.tif 000009
【図９】
0005631086.tif 000010
【図１０】
0005631086.tif 000011