(57)【要約】 【課題】安定して、高精度かつ高ロバストに位置および姿勢を計算することを可能にする。【解決手段】情報処理装置は、画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持し、撮像部によって撮像された画像を入力し、三次元マップに記録されている特徴について、入力された画像との整合性を決定し、三次元マップと入力された画像との間で対応づけられた特徴の存在状態の評価の結果を示す評価値を計算し、整合性と評価値に基づいて三次元マップの特徴が、前記撮像部の位置および姿勢の計算に与える影響を制御する重みを計算し、三次元マップと重みを用いて入力された画像の撮像時における撮像部の位置および姿勢を計算する。【選択図】  図１Ａ
2018022247.tif 000002
【特許請求の範囲】
【請求項１】
画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持する保持手段と、
前記撮像部によって撮像された画像を入力する入力手段と、
前記三次元マップに記録されている特徴について、前記入力された画像との整合性を決定する決定手段と、
前記三次元マップと前記入力された画像との間で対応づけられた特徴の存在状態の評価の結果を示す評価値を計算する評価手段と、
前記整合性と前記評価値に基づいて前記三次元マップの特徴が、前記撮像部の位置および姿勢の計算に与える影響を制御する重みを計算する重み計算手段と、
前記三次元マップと前記重みを用いて前記入力された画像の撮像時における前記撮像部の位置および姿勢を計算する計算手段と、を備えることを特徴とする情報処理装置。
【請求項２】
前記評価手段は、前記対応する特徴の数に基づいて前記評価値を計算することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記評価手段は、前記入力された画像における、前記対応する特徴の粗密の分布に基づいて前記評価値を計算することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記評価手段は、前記入力された画像における、前記対応する特徴の数および前記対応する特徴の粗密の分布に基づいて前記評価値を計算することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記重み計算手段は、前記整合性が所定の閾値以上のとき前記重みに０より大きい値を与え、前記整合性が前記所定の閾値未満のとき前記重みを０とし、さらに前記評価値が高いほど前記所定の閾値を高くすることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記重み計算手段は、前記整合性が高いほど前記重みを大きくし、前記整合性が低いほど、前記評価値が低い場合の前記重みを前記評価値が高い場合と比較して大きくすることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項７】
前記決定手段は、前記対応する特徴に関する、前記三次元マップと前記入力された画像との差異に基づいて前記整合性を決定することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記差異は、前記三次元マップの特徴点と、該特徴点の前記入力された画像への投影位置における輝度値の差異、色の差異、距離値の差異の、少なくとも何れかであることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記決定手段は、前記整合性の履歴を保持し、前記整合性の履歴に基づいて前記整合性を決定することを特徴とする請求項１乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持する保持手段と、
撮像部によって撮像された画像を入力する画像入力手段と、
前記三次元マップに記録されている特徴について前記入力された画像との整合性を取得し、取得した整合性と、保持されている整合性の履歴とに基づいて当該特徴の整合性を決定する決定手段と、
前記決定された整合性に基づいて前記三次元マップの特徴が前記撮像部の位置および姿勢の計算に与える影響を制御する重みを計算する重み計算手段と、
前記三次元マップと前記重みに基づいて前記入力された画像の撮像時における前記撮像部の位置および姿勢を計算する計算手段と、を備えることを特徴とする情報処理装置。
【請求項１１】
前記重み計算手段は、前記重みを連続値として計算することを特徴とする請求項１乃至１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記三次元マップは、あらかじめ登録されている複数の三次元マップのうち、前記撮像部について直前に計算された位置姿勢に最も近い位置姿勢が記録されている三次元マップであることを特徴とする請求項１乃至１１のいずれか１項に記載の情報処理装置。
【請求項１３】
画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持する保持手段を有する情報処理装置の制御方法であって、
前記撮像部によって撮像された画像を入力する入力工程と、
前記三次元マップに記録されている特徴について、前記入力された画像との整合性を決定する決定工程と、
前記三次元マップと前記入力された画像との間で対応づけられた特徴の存在状態の評価の結果を示す評価値を計算する評価工程と、
前記整合性と前記評価値に基づいて前記三次元マップの特徴が、前記撮像部の位置および姿勢の計算に与える影響を制御する重みを計算する重み計算工程と、
前記三次元マップと前記重みを用いて前記入力された画像の撮像時における前記撮像部の位置および姿勢を計算する計算工程と、を有することを特徴とする情報処理装置の制御方法。
【請求項１４】
画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持する保持手段を有する情報処理装置の制御方法であって、
撮像部によって撮像された画像を入力する画像入力工程と、
前記三次元マップに記録されている特徴について前記入力された画像との整合性を取得し、取得した整合性と、保持されている整合性の履歴とに基づいて当該特徴の整合性を決定する決定工程と、
前記決定された整合性に基づいて前記三次元マップの特徴が前記撮像部の位置および姿勢の計算に与える影響を制御する重みを計算する重み計算工程と、
前記三次元マップと前記重みに基づいて前記入力された画像の撮像時における前記撮像部の位置および姿勢を計算する計算工程と、を有することを特徴とする情報処理装置の制御方法。
【請求項１５】
コンピュータに、請求項１３または１４に記載された制御方法の各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は撮像装置の位置および姿勢を計測する情報処理装置およびその制御方法に関する。
【背景技術】
【０００２】
画像と現実空間の三次元マップを照合して撮像装置の位置および姿勢を計算する技術が知られている。このような技術は、ロボットや自動車の自己位置推定、拡張／複合現実感における現実空間と仮想物体との位置合わせ等に利用される。
【０００３】
特許文献１では、現実空間に移動物体が存在するシーンにおいて、シーンを撮像するカメラによって入力された画像をもとに、カメラの位置および姿勢計算を行う方法が開示されている。この方法では、三次元マップ上の特徴点が移動物体上の点か否かを判定し、移動物体上の特徴点を除いた特徴点を用いてカメラの位置および姿勢の計算を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２２１０４２号公報
【非特許文献】
【０００５】
【非特許文献１】G. Klein and D. Murray, “Parallel tracking and mapping for small AR workspaces,” International Symposium on Mixed and Augmented Reality, pp. 225-234, 2007
【非特許文献２】Z. Zhang, “A flexible new technique for camera calibration,” IEEE Trans. on Pattern Analysis and Machine Intelligence, vol.22, no.11, pp.1330-1334, 2000.
【非特許文献３】H. Kato and M. Billinghurst, “Marker tracking and hmd calibration for a video-based augmented reality conferencing system,” International Workshop on Augmented Reality, 1999
【非特許文献４】R. Y. Tsai, “A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses,” IEEE Journal of Robotics and Automation, vol.3, no.4, pp.323-344, 1987.
【非特許文献５】R. I. Hartley, “Self-calibration from multiple views with a rotating camera,” European Conference on Computer Vision, pp.471-478, 1994.
【非特許文献６】C. Pirchheim, D. Schmalstieg, G. Reitmayr, “Handling pure camera rotation in keyframe-based slam,” International Symposium on Mixed and Augmented Reality, pp.229-238, 2013.
【非特許文献７】J. Engel, T. Schops, D.Cremers, “LSD-SLAM: Large-Scale Direct Monocular SLAM,” European Conference on Computer Vision, pp.834-849, 2014.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では、三次元マップ上の特徴点が移動物体上の点であると判定された場合に、その特徴点を排除してしまう。そのため、特許文献１では、位置および姿勢計算に用いる特徴点数が少ない場合または特徴分布に偏りがある場合にカメラの位置および姿勢の精度およびロバスト性が低くなるという課題がある。
【０００７】
そこで本発明は、安定して、高精度かつ高ロバストに位置および姿勢を計算することを可能にすることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための本発明の一態様による情報処理装置は以下の構成を備える。すなわち、
画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持する保持手段と、
前記撮像部によって撮像された画像を入力する入力手段と、
前記三次元マップに記録されている特徴について、前記入力された画像との整合性を決定する決定手段と、
前記三次元マップと前記入力された画像との間で対応づけられた特徴の存在状態の評価の結果を示す評価値を計算する評価手段と、
前記整合性と前記評価値に基づいて前記三次元マップの特徴が、前記撮像部の位置および姿勢の計算に与える影響を制御する重みを計算する重み計算手段と、
前記三次元マップと前記重みを用いて前記入力された画像の撮像時における前記撮像部の位置および姿勢を計算する計算手段と、を備える。
【発明の効果】
【０００９】
本発明によれば、安定して、高精度かつ高ロバストに位置および姿勢を計算することができる。
【図面の簡単な説明】
【００１０】
【図１Ａ】第１実施形態における情報処理装置の機能構成例を示すブロック図。
【図１Ｂ】情報処理装置のハードウエア構成例を示すブロック図。
【図２】第１実施形態における処理手順を示すフローチャート。
【図３】三次元マップ上の特徴が有するリスト構造の一例を示す図。
【図４】第１実施形態における整合性決定の処理手順を示すフローチャート。
【図５】第４実施形態における情報処理装置の機能構成例を示すブロック図。
【図６】第４実施形態における処理手順を示すフローチャート。
【図７】評価値の高低による整合性と重みの関係の変化を示すグラフの図。
【発明を実施するための形態】
【００１１】
以下に、添付の図面を参照しながら、本発明の実施形態について説明する。
【００１２】
＜第１実施形態＞
以下では、現実空間に存在する特徴点の三次元座標を保持する三次元マップに基づいて、現実空間における撮像部の位置および姿勢の計測を行う情報処理装置について説明する。本実施形態の情報処理装置は、位置および姿勢計算に用いる特徴点数が少ない場合であって、現実空間に動く物体が存在するような場合にも、高精度、高ロバストに位置および姿勢を計算することが可能である。
【００１３】
第１実施形態では、撮像部から入力された画像と三次元マップとを照合し、撮像部の位置および姿勢を計算する。この際、動く物体上の特徴点は位置および姿勢計算時に与える影響の大きさ（以下、重みと呼ぶ）を下げる。但し、位置および姿勢計算に用いる特徴点数が多いほど動く物体上にある可能性が低い特徴点に重みを与え、特徴点数が少ないほど動く物体上にある可能性が高い特徴点にも重みを与える。このように位置および姿勢計算に用いる特徴点数に応じて重みを調整することにより高精度、高ロバストに位置および姿勢を計算する。
【００１４】
図１Ａは、第１実施形態における情報処理装置１の機能構成例を示すブロック図である。情報処理装置１は、機能部として、三次元情報保持部１１０、画像入力部１２０、整合性決定部１３０、特徴評価部１４０、重み計算部１５０、位置姿勢計算部１６０を有する。三次元情報保持部１１０は、整合性決定部１３０および位置姿勢計算部１６０で利用される三次元マップを保持する。画像入力部１２０は、撮像部１８０と接続されており、撮像部１８０が撮像する画像を整合性決定部１３０および位置姿勢計算部１６０に入力する。第１実施形態では、撮像部１８０として１台のカラーカメラが用いられる。初期化部１７０は、情報処理装置１が撮像部１８０の位置および姿勢計算を開始するに際して、各種初期情報を設定する。
【００１５】
整合性決定部１３０は、三次元情報保持部１１０が保持する三次元マップ、画像入力部１２０によって入力された画像、位置姿勢計算部１６０によって計算された位置および姿勢に基づいて、位置および姿勢計算に用いる特徴点群の整合性を決定する。ここで整合性とは、三次元マップ上の特徴点が動く物体上にない可能性を表す値である。整合性の詳細は後述する。特徴評価部１４０は、整合性決定部１３０において抽出された、位置および姿勢計算に用いる特徴点群の分布に関する評価値を計算する。重み計算部１５０は、整合性決定部１３０によって決定された整合性と、特徴評価部１４０による評価の結果である評価値とに基づいて、位置および姿勢計算に用いる特徴点群に含まれる各特徴点の重みを計算する。位置姿勢計算部１６０は、三次元情報保持部１１０が保持する三次元マップ、画像入力部１２０によって入力された画像、重み計算部１５０によって計算された重みに基づいて、撮像部１８０の世界座標系における位置および姿勢を計算する。
【００１６】
図１Ｂは、本実施形態による情報処理装置１のハードウエア構成例を示すブロック図である。ＣＰＵ１０は、ＲＯＭ１１またはＲＡＭ１２に格納されたプログラムを実行することにより、上述した各機能部を実現する。ＲＯＭ１１は、ＣＰＵ１０が実行するプログラムや各種データを記憶する。ＲＡＭ１２は、ＣＰＵ１０が各種処理を実行する際のワークエリアを提供する。なお、外部記憶装置１３に記憶されたプログラムは、ＲＡＭ１２にロードされ、ＣＰＵ１０により実行される。外部記憶装置１３は、ハードディスクまたはフラッシュメモリ等で構成され、各種情報を保持する。キーボード１４およびポインティングデバイス１５は、ユーザがＣＰＵ１０に各種指示を与えるための指示入力部である。インターフェース１６は外部装置と接続され、情報処理装置１と外部装置の通信を実現する。本実施形態では、インターフェース１６に撮像部１８０が接続され、撮像部１８０から撮像された画像がインターフェース１６を介して情報処理装置に入力される。バス１７は、上述した各部を相互に通信可能に接続する。
【００１７】
なお、図１Ａに示した各機能部がＣＰＵ１０によるソフトウエアの実行により実現されるものとしたが、これに限られるものではない。図１Ａに示した機能部の少なくとも一部が専用のハードウエアによって実現されてもよい。また、各機能は１つのＣＰＵ（プロセッサー）により実現されてもよいし、複数のＣＰＵ（プロセッサー）により実現されてもよい。
【００１８】
次に、第１実施形態における位置および姿勢計算のための処理手順について説明する。図２は、第１実施形態における処理手順を示すフローチャートである。
【００１９】
ステップＳ１０１では、初期化部１７０が、初期三次元マップを読み込み三次元情報保持部１１０に保持する。また、初期化部１７０は、撮像部１８０の内部パラメータの読み込みと、撮像部１８０の初期位置および初期姿勢の計算を行う。なお、本実施形態では、三次元マップはキーフレーム画像上の特徴点の集合として保持するものとする。ここでキーフレーム画像とは、画像を撮像した時の撮像部１８０の世界座標系における位置および姿勢が属性として付与された画像である。
【００２０】
三次元マップの特徴点群は、キーフレーム画像ごとに図３のようなリスト構造を有する。図３はＭ個の特徴点が有するリスト構造の一例である。三次元マップには、画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録されている。図３の特徴点ＩＤは１つのキーフレーム画像内で各特徴点を一意に識別できる番号である。輝度値はキーフレーム画像から得られる各特徴点の輝度値である。画像座標はキーフレーム画像座標系における各特徴点の二次元座標である。奥行き値は撮像部座標系を基準とした各特徴点の奥行き値である。特徴量は各特徴点で抽出した特徴量である。なお、特徴点の世界座標系を基準とした三次元座標は、特徴点の画像座標と奥行き値、キーフレーム画像に付与された位置および姿勢を用いて計算することができる。なお、それぞれの三次元マップは、情報抽出を行ったキーフレームを特定するためのキーフレームＩＤと、そのキーフレームを撮像したときの撮像部１８０の位置姿勢（世界座標系）を属性として保持している。
【００２１】
また、初期三次元マップは、たとえば、三次元マップ作成と撮像部１８０の位置および姿勢計測を同時に行うＫｌｅｉｎらの手法（非特許文献１）により作成しておくことができる。また、撮像部１８０の内部パラメータは、たとえば、平面パターンを多視点で撮像した画像を用いたＺｈａｎｇの手法（非特許文献２）によって事前に校正しておくものとする。また、撮像部１８０の初期位置および初期姿勢は、たとえば、サイズが既知の人工のマーカを用いたＫａｔｏらの手法（非特許文献３）によって計算するものとする。なお、後述のＳ１０６で撮像部１８０の位置および姿勢が計算されると、対象となっている入力画像をキーフレームとして新たな三次元マップが生成され、追加保持される。追加保持された三次元マップは、以降の位置および姿勢の計算に利用することができる。なお、三次元マップの保存は、Ｓ１０６で位置および姿勢が計算されるたびに行われてもよいし、ｎ回（ｎ＞１）に１回の割合で行われてもよい。また、算出された位置および姿勢が既に保存されている三次元マップの位置および姿勢と類似する場合には三次元マップとして保存しないようにしてもよい。
【００２２】
次に、ステップＳ１０２において、画像入力部１２０が、撮像部１８０により撮像された画像を情報処理装置１に入力する。ステップＳ１０３において、整合性決定部１３０が、三次元情報保持部１１０が保持する三次元マップ、ステップＳ１０２で入力された画像、撮像部１８０の直前のフレームの位置および姿勢に基づいて位置および姿勢計算に用いる特徴点の整合性を決定する。本実施形態の場合、整合性とは、三次元マップ上の特徴点が動く物体上の点であるか、動く物体によって遮蔽され入力画像から正しく観測されない点である場合に低くする値である。以下、より具体的に説明する。
【００２３】
図４は、ステップＳ１０３における整合性決定処理の手順を示すフローチャートである。本実施形態では、整合性決定部１３０は、三次元マップと入力された画像の間の対応する特徴に関して、三次元マップと入力された画像との差異を求め、これに基づいて整合性を決定する。ステップＳ１１１において、整合性決定部１３０は、まず前フレームで計算された位置および姿勢を現フレームの位置および姿勢の予測値として、この予測値に最も近い位置および姿勢を属性として持つ三次元マップ中のキーフレーム画像を選択する。そして入力画像上の特徴を抽出し、キーフレーム画像上の特徴点群と入力画像上の特徴点群を特徴量比較によって対応づける。以下、入力画像上の特徴点と対応づいたキーフレーム画像上の特徴点を被選択特徴点と呼び、１つのキーフレーム画像における全ての被選択特徴点を集めたものを被選択特徴点群と呼ぶ。なお、前フレームが存在しない場合は初期位置および初期姿勢が用いられる。また、上述の特徴量比較には、たとえば、テンプレートマッチングの手法を用いることもできる。
【００２４】
ステップＳ１１２において、整合性決定部１３０は、被選択特徴点群から整合性が未決定の被選択特徴点を選択する。ステップＳ１１３において、整合性決定部１３０は、位置および姿勢の予測値に基づいて被選択特徴点を入力画像に投影し、入力画像座標系での座標（位置ｐ）を予測する。ステップＳ１１４において、整合性決定部１３０は、予測した座標（位置ｐ）における入力画像の画素値（輝度値）と三次元マップに記録されている被選択特徴点の輝度値との差の絶対値に基づいて整合性を決定する。輝度値の差の絶対値が大きいほど、その被選択特徴点が動く物体（移動体）上の点、または動く物体によって遮蔽され入力画像から正しく観測されない点である可能性が高いと判断し、整合性の値を低くする。移動体が移動することにより特徴点が存在していた場所（背景）の画素値が大きく変化するからである。また、本実施形態では、入力画像における特徴点の投影位置の画素値（輝度値）と三次元マップにおける特徴点の属性値（輝度値）との比較により得られる差の絶対値を用いたが、これに限られるものではない。たとえば、入力画像における特徴点の投影位置の所定範囲内の画素による平均画素値と三次元マップにおける特徴点の属性値との比較により得られる差が用いられてもよい。
【００２５】
具体的には、輝度値の差の絶対値をｓとすると、整合性ｃは数１のように決定される。
【数１】
2018022247.tif 000003
但し、ｓｔｈは整合性を０とする輝度値の差の絶対値の閾値とする。
【００２６】
ステップＳ１１５において、整合性決定部１３０は、全ての被選択特徴点の整合性を決定したか否かを判定する。全ての被選択特徴点の整合性を決定したと判定された場合は、ステップＳ１０３の整合性決定処理を終了する。未処理の被選択特徴点がある場合は、ステップＳ１１２からの処理が繰り返される。
【００２７】
図２に戻り、ステップＳ１０４において、特徴評価部１４０は、ステップＳ１０３で得られた被選択特徴点の素材状態を評価し、評価値を得る。以下、ステップＳ１０４において特徴評価部１４０が行う特徴点の存在状態の評価を、単に特徴点の評価ともいう。第１実施形態では、特徴評価部１４０は、被選択特徴点の数に基づいて評価値を計算する。特徴評価部１４０は、被選択特徴点の数が多いほど整合性の高い特徴点のみが位置および姿勢計算に用いられるように評価値を高く設定し、被選択特徴点の数が少ないほど、整合性の低い特徴点も位置および姿勢計算に用いるように評価値を低く設定する。第１実施形態では、被選択特徴点の数をＮＡとすると、評価値Ｅは数２のように計算される。
【数２】
2018022247.tif 000004
【００２８】
ステップＳ１０５において、重み計算部１５０は、ステップＳ１０３で決定された整合性（ｃ）およびステップＳ１０４で計算された評価値（Ｅ）に基づいて重み（ｗ）を計算する。重みｗは被選択特徴点それぞれについて個別に計算される。評価値Ｅが高いほど整合性の高い特徴点にのみ重みを与え、評価値が低いほど整合性の低い特徴点にも重みを与える。具体的には、評価値をＥ、整合性をｃとすると、重みｗは数３、数４のように計算する。
Ｅ≧Ｅｔｈのとき、
【数３】
2018022247.tif 000005
Ｅ＜Ｅｔｈのとき、
【数４】
2018022247.tif 000006
但し、Ｅｔｈは評価値の高低を判断する閾値、ｃｔｈ１、ｃｔｈ２は重みを０とする整合性の閾値（ｃｔｈ１＞ｃｔｈ２）とする。
【００２９】
ステップＳ１０６において、位置姿勢計算部１６０は、三次元情報保持部１１０が保持する三次元マップ、ステップＳ１０２で入力された画像、ステップＳ１０５で計算された重みに基づいて世界座標系における撮像部１８０の位置および姿勢を計算する。位置および姿勢は、ステップＳ１０１で用いたＫｌｅｉｎの手法（非特許文献１）に基づいてステップＳ１０５で計算された重みを考慮して計算する。具体的には、数５のＳを最小化する位置および姿勢を計算する。
【００３０】
【数５】
2018022247.tif 000007
Ｓは、入力画像座標系における被選択特徴点の二次元座標ｍｉ’と、特徴量比較によってｍｉ’と対応付けた入力画像上の特徴点の二次元座標ｍｉとのユークリッド距離の二乗に重みｗｉを乗算したものを被選択特徴点ごとに計算し、それらを合計したものである。
【００３１】
ステップＳ１０７では、処理全体を終了するか否かを判定する。マウスやキーボードなどを介してユーザから処理全体を終了するコマンドが入力されている場合、処理全体を終了する。そうでない場合は処理を継続するためステップＳ１０２からの処理が繰り返される。
【００３２】
以上述べたように第１実施形態では、位置および姿勢計算に用いる特徴点数が多いほど動く物体上にある可能性が低い特徴点に重みが与えられ、特徴点数が少ないほど動く物体上にある可能性が高い特徴点にも重みが与えられる。このように位置および姿勢の計算に用いる特徴点数に応じて重みを調整することにより高精度、高ロバストに位置および姿勢を計算することができる。
【００３３】
＜第２実施形態＞
第１実施形態では、位置および姿勢計算に用いる特徴点数の多寡に基づいて各特徴点が位置および姿勢計算に与える影響の大きさである重みを計算した。第２実施形態では、位置および姿勢計算に用いる特徴点の分布の粗密に基づいて各特徴点が位置および姿勢計算に与える影響の大きさである重みを計算する。すなわち、第２実施形態では、位置および姿勢計算に用いる特徴点の分布が密な領域ほど動く物体上にある可能性が低い特徴点に重みを与え、分布が粗な領域ほど動く物体上にある可能性が高い特徴点にも重みを与える。このように位置および姿勢計算に用いる特徴点の分布の偏りを防ぐことにより高精度、高ロバストに位置および姿勢を計算する。
【００３４】
第２実施形態における装置の構成は第１実施形態で説明した情報処理装置１と同様である。また、第２実施形態における初期化、画像入力、整合性決定、重み計算、位置および姿勢計算の処理手順も第１実施形態と同様である。第１実施形態と第２実施形態で異なる主な部分は、図２のフローチャートにおける特徴の存在状態の評価（ステップＳ１０４）である。
【００３５】
ステップＳ１０４において、特徴評価部１４０は、ステップＳ１０３で得られた被選択特徴点の入力画像座標系における粗密の分布に基づいて特徴分布の評価値を計算する。被選択特徴点の分布の粗密は、たとえば、入力画像を格子状に四分割し、各分割領域内に投影された被選択特徴点の数を計算することで判断する。具体的には、分割領域Ｄ内に投影された被選択特徴点の数をＮＤとすると、分割領域Ｄ内に投影された被選択特徴点の評価値Ｅは数６のように計算する。
【数６】
2018022247.tif 000008
【００３６】
そして、重み計算部１５０は、被選択特徴点の入力画像への投影位置がどの分割領域に属するかに応じて数６によりＥを決定し、Ｅ≧Ｅｔｈの場合に上記の数３を用いて重みｗを計算し、Ｅ＜Ｅｔｈの場合には、上記の数４を用いて重みｗを計算する。位置姿勢計算部１６０は、重み計算部１５０が各特徴点について計算した重みを用いて、数５により撮像部１８０の位置および姿勢を計算する。但し、Ｅｔｈの値は、第１実施形態とは異なる。たとえば、第２実施形態では画像を四分割しているので、第１実施形態で用いられる閾値の１／４とする。
【００３７】
以上述べたように第２実施形態では、位置および姿勢計算に用いる特徴点の分布が密な領域ほど動く物体上にある可能性が低い特徴点に重みを与え、分布が粗な領域ほど動く物体上にある可能性が高い特徴点にも重みを与える。このように位置および姿勢計算に用いる特徴の分布の偏りを防ぐことにより高精度、高ロバストに位置および姿勢を計算する。
【００３８】
＜第３実施形態＞
第１実施形態では、位置および姿勢計算に用いる特徴点数の多寡に基づいて各特徴点が位置および姿勢計算に与える影響を制御する重みを計算する例を示した。第２実施形態では、位置および姿勢計算に用いる特徴点の入力画像座標系における粗密の分布に基づいて重みを計算する例を示した。第３実施形態では、位置および姿勢計算に用いる特徴点数の多寡と粗密の分布を併用する。したがって、第３実施形態では、位置および姿勢計算に用いる特徴点数が多いほど、また位置および姿勢計算に用いる特徴点の分布が密な領域ほど動く物体上にある可能性が低い特徴点に重みを与える。また、第３実施形態では、特徴点数が少ないほど、また分布が粗な領域ほど動く物体上にある可能性が高い特徴点にも重みを与える。このように位置および姿勢計算に用いる特徴点数に応じた重みの調整と、位置および姿勢計算に用いる特徴の分布の偏りの防止により高精度、高ロバストに位置および姿勢を計算する。
【００３９】
第３実施形態における装置の構成は第１実施形態で説明した情報処理装置１と同様である。また、第３実施形態における初期化、画像入力、整合性決定、重み計算、位置および姿勢計算の処理手順も第１実施形態と同様である。第１実施形態と第３実施形態で異なる主な部分は、図２のフローチャートにおける特徴の存在状態の評価（ステップＳ１０４）である。
【００４０】
ステップＳ１０４において、特徴評価部１４０は、ステップＳ１０３で得られた被選択特徴点の数および被選択特徴点の入力画像座標系における粗密の分布に基づいて、被選択特徴点の存在状態の評価値を計算する。被選択特徴点の分布の粗密は、たとえば第２実施形態と同様に、入力画像を格子状に四分割し、各分割領域内に投影された被選択特徴点の数を計算することで判断する。具体的には、被選択特徴点の総数を正規化したものをＮＡ’、分割領域Ｄ内に投影された被選択特徴点の数を正規化したものをＮＤ’とすると、分割領域Ｄ内に投影された被選択特徴点の評価値Ｅは数７のように計算する。
【数７】
2018022247.tif 000009
【００４１】
そして、重み計算部１５０は、被選択特徴点の入力画像への投影位置がどの分割領域に属するかに応じて数６によりＥを決定し、Ｅ≧Ｅｔｈの場合に上記の数３を用いて重みｗを計算し、Ｅ＜Ｅｔｈの場合には、上記の数４を用いて重みｗを計算する。位置姿勢計算部１６０は、重み計算部１５０が各特徴点について計算した重みを用いて、数５により撮像部１８０の位置および姿勢を計算する。但し、Ｅｔｈは数７により算出される評価値Ｅに関して適した値が用いられる。
【００４２】
以上述べたように第３実施形態では、位置および姿勢計算に用いる特徴点数が多いほど、また位置および姿勢計算に用いる特徴点の分布が密な領域ほど、動く物体上にある可能性が低い特徴点に重みを与えるように制御される。一方、特徴点数が少ないほど、また分布が粗な領域であるほど、動く物体上にある可能性が高い特徴点にも重みを与えるように制御される。このように位置および姿勢計算に用いる特徴点数に応じた重みの調整と、位置および姿勢計算に用いる特徴の分布の偏りの防止により高精度、高ロバストに位置および姿勢を計算する。
【００４３】
なお、評価値の計算は、被選択特徴点の数と被選択特徴点の粗密の分布に基づいて評価値を計算するものであればよく、上述した数７に限るものではない。例えば、ＮＡ’とＮＤ’を数７で定義したものと同じとすると、ＮＡ’とＮＤ’の和を評価値とするものや、ＮＡ’またはＮＤ’のどちらかが閾値以下であれば評価値は０、それ以外であれば評価値はＮＡ’とＮＤ’の積とするものでもよい。
【００４４】
＜第４実施形態＞
第１から第３実施形態では、フレームごとに独立して整合性を決定していたためフレーム間で整合性が大きく変化してしまい位置および姿勢が不安定になる可能性がある。第４実施形態では、過去の整合性（整合性の履歴）を用いて整合性の大きな変化を抑制することで位置および姿勢を高精度化、高ロバスト化する。
【００４５】
図５は第４実施形態における装置の構成を示す図である。第４実施形態における撮像部１８０、三次元情報保持部１１０、画像入力部１２０、整合性決定部１３０、位置姿勢計算部１６０は第１実施形態で説明した情報処理装置１（図１）と同様である。第１実施形態と第４実施形態で異なる主な部分は、情報処理装置１における特徴評価部１４０が省略されている点と、重み計算部１５０ａである。重み計算部１５０ａは、整合性決定部１３０によって決定された整合性に基づいて、位置および姿勢計算に用いる特徴点群に含まれる各特徴点の重みを計算する。
【００４６】
次に、本実施形態における処理手順について説明する。図６は、第４実施形態における処理手順を示すフローチャートである。第４実施形態における初期化、画像入力、位置および姿勢計算の処理手順は第１実施形態（図２のＳ１０１、Ｓ１０２、Ｓ１０６）と同様である。第１実施形態と第４実施形態で異なる主な部分は、図２のフローチャートにおける特徴点の評価（Ｓ１０４）が省略されている点と、整合性決定（Ｓ２０１）および重み計算（Ｓ２０２）である。
【００４７】
ステップＳ２０１では、まず第１実施形態のステップＳ１０３と同様に被選択特徴点の輝度値と入力画像の輝度値との差の絶対値ｓに基づいて仮の整合性を計算する。計算された仮の整合性は、履歴として保持される。そして仮の整合性を含め、新しいものから順にｎフレーム分の整合性を保持されている整合性の履歴から抽出し、抽出した整合性群の中央値を現在の整合性ｃとする。
【００４８】
ステップＳ２０２では、ステップＳ２０１で決定された整合性に基づいて重みを計算する。具体的には、整合性をｃとすると、重みｗは数８のように計算される。
【数８】
2018022247.tif 000010
但し、ｃｔｈは重みが０となる整合性の閾値とする。
【００４９】
以上述べたように第４実施形態では、過去の整合性を用いて整合性の大きな変化を抑制することで位置および姿勢を高精度化、高ロバスト化する。
【００５０】
なお、整合性の決定は、過去の整合性に基づいて尤もらしい現在の整合性を決定できるものであればよく、上述した過去の整合性の中央値を用いる方法に限るものではない。例えば、過去の整合性の平均値を現在の整合性としてもよい。また、過去の整合性を多項式近似し、近似した多項式から得られる現在の仮の整合性と、被選択特徴点と入力画像の輝度値の差から得られる現在の仮の整合性との平均値を現在の整合性としてもよい。
【００５１】
また、重み計算は、整合性を用いて重みを計算するものであればよく、上述した数８に限るものではない。例えば、整合性ｃをそのまま重みとして利用してもよい。また、整合性ｃと重みｗが数９のような指数関数や、シグモイド関数に従うものとして重みを計算してもよい。
【数９】
2018022247.tif 000011
【００５２】
なお、第４実施形態では、評価値Ｅを用いない構成を説明したが、第１〜第３実施形態で説明したような、特徴の存在状態の評価に基づく評価値を用いて数３および数４のように重みを計算してもよい。なお、第４実施形態における装置の構成で過去の整合性を用いずに現在の整合性を決定してもよい。この場合、たとえば、第１〜第３実施形態において特徴評価部１４０およびその処理（Ｓ１０４）が省略されたものとなる。
【００５３】
＜その他の実施形態＞
第１〜第４実施形態で示した構成は一例に過ぎず、本発明はこれらの構成に限定されるものではない。以下、第１〜第４実施形態の変形例を説明する。
【００５４】
撮像部１８０は、三次元マップと撮像部１８０が撮像する画像との整合性が決定できるものであればよく、上述したカラーカメラに限るものではない。例えば、濃淡画像を撮像するカメラや距離画像を撮像するカメラやカラー画像と距離画像を同時に撮像するカメラでもよい。
【００５５】
三次元情報保持部１１０が保持する三次元マップは、現実空間の特徴点の三次元座標を表現できるものであればよく、上述したキーフレーム画像の集合として保持するものに限られるものではない。例えば、キーフレーム画像は保持せずに特徴点の集合として保持するものでもよい。あるいは、全てのフレーム画像の集合として保持するものでもよい。
【００５６】
また、三次元マップが保持する特徴点のデータ構造は図３に限るものではなく、入力画像と照合して撮像部の位置および姿勢を計算できるものであれば何でもよい。例えば、画像座標と奥行き値の代わりに世界座標系を基準とした三次元座標を属性として付与してもよい。また、一定時間が経った特徴点を使用しないようにする等のために、三次元マップに登録された時間を属性として付与してもよい。
【００５７】
初期化時に読み込む初期三次元マップの作成方法は上述したＫｌｅｉｎの手法に限るものではなく、現実空間の特徴点の三次元座標を表現できるものを作成する方法であれば何でもよい。例えば、レーザースキャナーを用いて現実空間を計測して三次元マップを作成する方法でもよい。また、ＣＡＤ等により作成された現実空間の三次元モデルを利用できる場合は、その三次元モデルから特徴を抽出し三次元マップを作成する方法でもよい。
【００５８】
また、初期化時に読み込む撮像部の内部パラメータの校正方法は上述したＺｈａｎｇの手法に限るものではなく、内部パラメータを校正できる方法であれば何でもよい。例えば、３次元座標が既知の点を用いたＴｓａｉの手法（非特許文献４）や回転運動のみ行うカメラを用いたＨａｒｔｌｅｙの手法（非特許文献５）を用いてもよい。
【００５９】
また、初期化時の撮像部１８０の初期位置および初期姿勢の計算方法は上述したＫａｔｏの手法に限るものではなく、処理開始時の撮像部１８０の位置および姿勢を取得できる手法であれば何でもよい。例えば、あらかじめ初期位置および初期姿勢を指定しておき、撮像部１８０を初期位置および初期姿勢に固定してから処理を開始する方法でもよい。また、撮像部１８０に特定のパターンの画像を張り付け、世界座標系における位置および姿勢が既知の別の固定カメラでそのパターンを認識し、撮像部の位置および姿勢を取得する方法でもよい。
【００６０】
整合性を低くする場合とは、上述した三次元マップ上の特徴点が動く物体上の点であるか、動く物体によって遮蔽され入力画像から観測されない点である場合に限るものではなく、三次元マップ上の特徴点と入力画像とで差異が生じる場合であれば何でもよい。例えば、光源環境が変化して輝度値が変わる場合や、三次元マップに登録されていない静止物体によって遮蔽される場合でもよい。
【００６１】
整合性（第４実施形態では仮の整合性）の決定は上述した三次元マップ上の特徴点と入力画像との輝度値の差に基づく方法に限るものではなく、三次元マップと現実空間との合致度合いに基づく方法であれば何でもよい。例えば、入力画像から手や人物を検出し、検出した手や人物の領域内に投影された三次元マップ上の特徴点の整合性を低くする方法でもよい。また、三次元マップ上の特徴点と入力画像との色（ＲＧＢ色空間やＨＳＶ色空間の各要素）の差が小さいほど整合性を高く、三次元マップ上の特徴点と入力画像との色の差が大きいほど整合性を低くする方法でもよい。また、入力画像が距離画像の場合、三次元マップ上の特徴点と入力画像との距離値の差が小さいほど整合性を高く、三次元マップ上の特徴点と入力画像との距離値の差が大きいほど整合性を低くする方法でもよい。また、三次元マップの被選択特徴点の入力画像への投影位置と、入力画像上で被選択特徴点に対応づけられた特徴点の位置との間の距離が小さいほど整合性を高くするようにしてもよい。また、濃淡画像と、カラー画像と、距離画像のうちの複数が入力として得られる場合、三次元マップ上の特徴点と入力画像との輝度値の差、色の差、距離値の差を組み合わせて整合性を決定するようにしてもよい。
【００６２】
また、第１〜第３実施形態において、整合性を、第４実施形態のように、過去の整合性（履歴）に基づいて決定するようにしてもよい。例えば、過去の整合性の中央値や平均値を現在の整合性としてもよい。また、過去の整合性を多項式近似し、近似した多項式から得られる現在の仮の整合性と、位置および姿勢計算に用いる特徴点と入力画像の差異から得られる現在の仮の整合性の平均値を現在の整合性としてもよい。
【００６３】
第１〜第３実施形態における特徴点の数の評価は上述した被選択特徴点の数に基づいて評価する方法に限るものではなく、位置および姿勢計算に用いる特徴点数の多寡を判断できる方法であれば何でもよい。例えば、入力画像から検出される特徴点数が多いほど評価値を高く、入力画像から検出される特徴点数が少ないほど評価値を低くしてもよい。入力画像から検出される特徴点数が多いほど、三次元マップからの被選択特徴点の数も多くなると想定されるからである。また、被選択特徴点の数および入力画像から検出される特徴点の数が多いほど評価値を高く、被選択特徴点の数および入力画像から検出される特徴点の数が少ないほど評価値を低くしてもよい。
【００６４】
第２および第３実施形態における特徴点の粗密の分布の評価は上述した入力画像を格子状に四分割して各分割領域内の特徴点数を計算する手法に限るものではなく、ある範囲における特徴点分布の粗密を判断できる手法であれば何でもよい。例えば、入力画像の中央を中心とする半径の異なる同心円で入力画像を分割し、各分割領域において分割領域内の特徴点数が多いほどその分割領域内の特徴点の評価値を高く、分割領域内の特徴点数が少ないほどその分割領域内の特徴点の評価値を高くしてもよい。また、ある特徴点を中心とする特定の半径内の特徴点数が多いほどその特徴点の評価値を高く、ある特徴点を中心とする特定の半径内の特徴点数が少ないほどその特徴点の評価値を低くしてもよい。
【００６５】
重みは上述した連続値に限るものではなく、２値や量子化した値で表現してもよい。例えば、整合性をｃ、重みが変わる整合性の閾値をｃｔｈ、ｃｔｈ１、ｃｔｈ２（ｃｔｈ１＞ｃｔｈ２）とすると、重みｗは数１０または数１１のように計算してもよい。
【数１０】
2018022247.tif 000012
【数１１】
2018022247.tif 000013
【００６６】
第１〜第３実施形態における重み計算は上述した数３および数４に限るものではなく、整合性および特徴の存在状態の評価値を用いて重みを計算するものであれば何でもよい。例えば、整合性と評価値の和や積を重みとしてもよい。また、整合性をｃ、正規化した評価値をＥ’とすると、数１２のように評価値に応じて重みが０となる整合性の閾値を変化させて重みｗを計算してもよい。
【数１２】
2018022247.tif 000014
【００６７】
また、必ずしも整合性が閾値未満のときに重みを０としなくても良く、整合性が低いほど重みを小さくすればよい。例えば、図７のように整合性が高いほど重みを大きく、整合性が低いほど重みを小さくするが、整合性が低い場合は評価値が低いほど評価値が高い場合と比較して重みを大きくしてもよい。すなわち、評価値が低いほど、整合性の変化に対する重みの変化が少なくなるようにする。
【００６８】
位置および姿勢計算は上述したＫｌｅｉｎの手法に限るものではなく、三次元マップと入力画像に基づいて位置および姿勢を計算するものであれば何でもよい。例えば、Ｐｉｒｃｈｈｅｉｍらの手法（非特許文献６）やＥｎｇｅｌらの手法（非特許文献７）を用いてもよい。Ｐｉｒｃｈｈｅｍらの手法はＫｌｅｉｎの手法と同じく、特徴量比較によって対応付けられた三次元マップ上の特徴点と入力画像上の特徴点との画像座標系におけるユークリッド距離を最小化する位置および姿勢を計算する。よって本発明を実施する際は数５のようにユークリッド距離に重みを乗算することで三次元マップ上の特徴点が位置および姿勢計算に与える影響を制御する。Ｅｎｇｅｌらの手法は三次元マップ上の特徴点の輝度値と三次元マップ上の特徴点を入力画像に投影した際の画像座標における入力画像の輝度値との差を最小化する位置および姿勢を計算する。よって本発明を実施する際は輝度値の差に重みを乗算することで三次元マップ上の特徴点が位置および姿勢計算に与える影響を制御する。
【００６９】
被選択特徴点群を抽出する際に利用する現フレームの位置および姿勢の予測値は前フレームの位置および姿勢に限るものではなく、現フレームの位置および姿勢に近いと思われるものであれば何でもよい。例えば、等速度運動や等加速度運動などの運動モデルを仮定し、運動モデルに基づいて前フレームの位置および姿勢を更新したものでもよい。また、撮像部に別途位置や姿勢を計測するセンサを装着し、センサの計測値に基づいて現フレームの位置および姿勢の予測値を得てもよい。
【００７０】
各処理を行うタイミングは図２または図６に限るものではなく、重みが位置および姿勢計算に反映されれば何でもよい。例えば、整合性決定（Ｓ１０３、Ｓ２０１）、特徴の評価（Ｓ１０４）、重み計算（Ｓ１０５、Ｓ２０２）と、位置および姿勢計算（Ｓ１０６）を並列して処理してもよい。また、特徴の評価の後に整合性決定を行ってもよい。
【００７１】
三次元マップが保持する特徴は点に限るものではなく、三次元マップと現実空間とを照合できるものであれば何でもよい。例えば、物体のエッジの両端点の世界座標系における座標を特徴として保持してもよい。また、特定のパターンが描かれており撮像することで撮像部の位置および姿勢を計算できるマーカの、世界座標系での位置および姿勢とそのパターンを特徴として保持してもよい。
【００７２】
整合性は上述した連続値に限るものではなく、２値や量子化した値で表現してもよい。例えば、三次元マップ上の特徴点と入力画像上の特徴点の輝度値の差の絶対値をｓ、整合性が変わる輝度値の差の絶対値の閾値をｓｔｈ、ｓｔｈ１、ｓｔｈ２（ｓｔｈ１＞ｓｔｈ２）とすると、整合性ｃは数１３または数１４のように決定してもよい。
【数１３】
2018022247.tif 000015
【数１４】
2018022247.tif 000016
【００７３】
整合性は上述した三次元マップ上の特徴点と入力画像とで差異が生じる場合に低くするものに限るものではない。例えば、三次元マップ上の特徴点と入力画像とで差異が生じる場合に高くするものであってもよい。この場合、整合性が高いほど重みを小さくする。
【００７４】
特徴の評価値は上述した特徴点の数が多いほど、また特徴点の分布が密な領域ほど高く、特徴点の数が少ないほど、また特徴点の分布が粗な領域ほど低くするものに限るものではない。例えば、特徴点の数が多いほど、また分布が密な領域ほど低く、特徴点の数が少ないほど、また分布が粗な領域ほど高くするものであってもよい。この場合、特徴の評価値が高いほど整合性が低い特徴点にも重みを与える。但し、整合性が三次元マップ上の特徴点と入力画像とで差異が生じる場合に高くするものである場合は、特徴の評価値が高いほど整合性が高い特徴点にも重みを与える。整合性の評価は三次元マップ上の特徴点に対して行うものに限るものではない。三次元マップが静止環境において生成された場合などでは、三次元マップ上の特徴点は動体から検出されたものではない。その場合には三次元マップの特徴点に対応づいた入力画像上の特徴点について整合性を評価して、重みを与える。
【００７５】
＜効果＞
第１実施形態によれば、位置および姿勢計算に用いる特徴点数が多いほど動く物体上にある可能性が低い特徴点のみに重みが与えられるようになり、特徴点数が少ないほど動く物体上にある可能性が高い特徴点にも重みが与えられるようになる。このように位置および姿勢計算に用いる特徴点数に応じて重みを調整することにより高精度、高ロバストに位置および姿勢を計算することができる。
【００７６】
第２実施形態によれば、位置および姿勢計算に用いる特徴点の分布が密な領域ほど動く物体上にある可能性が低い特徴点に重みが与えられ、分布が粗な領域ほど動く物体上にある可能性が高い特徴点にも重みが与えられる。このように位置および姿勢計算に用いる特徴の分布の偏りを防ぐことにより高精度、高ロバストに位置および姿勢を計算すること可能になる。
【００７７】
第３実施形態によれば、位置および姿勢計算に用いる特徴点数が多いほど、また位置および姿勢計算に用いる特徴点の分布が密な領域ほど動く物体上にある可能性が低い特徴点に重みが与えられる。一方、位置および姿勢計算に用いる特徴点数が少ないほど、またそれらの分布が粗な領域ほど動く物体上にある可能性が高い特徴点にも重みが与えられる。このように位置および姿勢計算に用いる特徴点数に応じた重みの調整と、位置および姿勢計算に用いる特徴の分布の偏りの防止により高精度、高ロバストに位置および姿勢が計算される。
【００７８】
また、第４実施形態によれば、過去の整合性を用いて整合性の大きな変化を抑制することで位置および姿勢を高精度化、高ロバスト化することが可能になる。
【００７９】
＜定義＞
三次元情報保持部１１０は、画像中に存在する特徴の三次元情報とその画像の撮像時における撮像部の位置姿勢情報が記録された三次元マップを保持する構成の一例であり、三次元マップと現実空間とを照合できる特徴を保持するものであれば何でもよい。例えば、物体のエッジの両端点等の特徴点の世界座標系における座標を特徴として保持してもよい。また、特定のパターンが描かれており撮像することで撮像部の位置および姿勢を計算できるマーカの、世界座標系での位置および姿勢とそのパターンを特徴として保持してもよい。
【００８０】
整合性決定部１３０は、三次元マップに記録されている特徴について、入力された画像との整合性を決定する構成の一例であり、三次元マップと現実空間（入力画像）との合致度合いに基づいて整合性を決定するものであれば何でもよい。例えば、上記実施形態では、三次元マップ上の特徴点と入力画像との輝度値の差が小さいほど整合性を高く、三次元マップ上の特徴点と入力画像との輝度値の差が大きいほど整合性を低く決定したがこれに限られるものではない。たとえば、三次元マップ上の特徴点と入力画像との色（ＲＧＢ色空間やＨＳＶ色空間の各要素）の差が小さいほど整合性を高く、三次元マップ上の特徴点と入力画像との色の差が大きいほど整合性を低く決定してもよい。また、三次元マップ上の特徴点と入力画像との距離値の差が小さいほど整合性を高く、三次元マップ上の特徴点と入力画像との距離値の差が大きいほど整合性を低く決定してもよい。また、入力画像から手や人物を検出し、検出した手や人物の領域内に投影された三次元マップ上の特徴点の整合性を低く決定してもよい。手や人物の領域は移動体だからである。
【００８１】
特徴評価部１４０は、三次元マップと入力された画像との間の対応する特徴の存在状態の評価の結果を示す評価値を計算する構成の一例である。特徴評価部１４０は、三次元マップ上および／または入力画像上の特徴の数や分布に基づいて位置および姿勢計算に用いる特徴点を評価するものであれば何でもよい。一例として、第１実施形態では、三次元マップ上および／または入力画像上の特徴点の数が多いほど評価値を高く計算し、三次元マップ上および／または入力画像上の特徴点の数が少ないほど評価値を低く計算している。また、一例として、第２実施形態では、三次元マップ上および／または入力画像上の特徴点の分布が密な領域ほど評価値を高く計算し、三次元マップ上および／または入力画像上の特徴点の分布が粗な領域ほど評価値を低く計算している。
【００８２】
重み計算部１５０は、整合性と評価値に基づいて、三次元マップ上の特徴が、撮像部１８０の位置および姿勢の計算に与える影響を制御する重みを計算する構成の一例である。重み計算部１５０は、整合性および／または特徴の評価値を用いて重みを計算するものであれば何でもよい。例えば、整合性と評価値の和や積を重みとしてもよい。また、整合性が所定の閾値以上の場合は重みに０より大きい値を与え、整合性が所定の閾値未満の場合は重みを０とし、且つ、評価値が高いほど所定の閾値を高くするものでもよい。また、整合性が高い場合は重みを大きくし、整合性が低い場合は重みを小さくし、且つ、整合性が低い場合は評価値が低いほど評価値が高い場合と比較して重みを大きくするものでもよい。
【００８３】
位置姿勢計算部は三次元マップと入力画像に基づいて位置および姿勢を計算するものであれば何でもよい。例えば、Ｋｌｅｉｎの手法やＰｉｒｃｈｈｅｉｍらの手法やＥｎｇｅｌらの手法を用いてもよい。
【００８４】
なお、本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８５】
１：情報処理装置、１１０：三次元情報保持部、１２０：画像入力部、１３０：整合性決定部、１４０：特徴評価部、１５０：重み計算部、１６０：位置姿勢計算部、１８０：撮像部
【図１Ａ】
2018022247.tif 000017
【図１Ｂ】
2018022247.tif 000018
【図２】
2018022247.tif 000019
【図３】
2018022247.tif 000020
【図４】
2018022247.tif 000021
【図５】
2018022247.tif 000022
【図６】
2018022247.tif 000023
【図７】
2018022247.tif 000024