(57)【要約】【課題】撮像した画像から撮像対象との相対的な位置関係を広範囲に推定できる情報端末装置を提供する。【解決手段】対象を撮像して撮像画像を得る撮像部1と、前記撮像画像から特徴情報を算出する算出部2と、特徴情報及び位置情報を対応付けて記憶する記憶部5と、前記記憶部5を参照して、前記算出された特徴情報に類似すると判定される特徴情報を求めると共に、当該類似すると判定された特徴情報に含まれる座標情報から前記算出された特徴情報に含まれる座標情報への変換関係として当該特徴情報同士の相対的位置情報を求める推定部3と、前記相対的位置情報と前記類似すると判定された特徴情報の位置情報とを合成することによって前記撮像画像の位置情報を得ると共に、当該得た位置情報を前記撮像画像から算出された特徴情報と対応付けて前記記憶部5に記憶させる合成部4と、を備える。【選択図】図１
2019070944.tif 000002
【特許請求の範囲】
【請求項１】
対象を撮像して撮像画像を得る撮像部と、
前記撮像画像から特徴情報を算出する算出部と、
特徴情報及び位置情報を対応付けて記憶する記憶部と、
前記記憶部を参照して、前記算出された特徴情報に類似すると判定される特徴情報を求めると共に、当該類似すると判定された特徴情報に含まれる座標情報から前記算出された特徴情報に含まれる座標情報への変換関係として当該特徴情報同士の相対的位置情報を求める推定部と、
前記相対的位置情報と前記類似すると判定された特徴情報の位置情報とを合成することによって前記撮像画像の位置情報を得ると共に、当該得た位置情報を前記撮像画像から算出された特徴情報と対応付けて前記記憶部に記憶させる合成部と、を備えることを特徴とする情報処理装置。
【請求項２】
前記記憶部では、前記推定部からの前記参照に対して、一部の特徴情報のみを参照に供することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記憶部では、前記参照に供する一部の特徴情報として、互いの重複割合が少ないと判定されるものを採用することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記記憶部では、前記推定部からの前記参照に対して、一部の特徴情報のみを参照に供して前記推定部において類似すると一段回目で判定される特徴情報の結果を得た後さらに、
当該一段回目で類似判定された特徴情報に重複していると判定される一部の特徴情報を参照に供して、前記推定部において類似すると二段階目で判定される特徴情報の結果を得るようにさせることを特徴とする請求項１ないし３のいずれかに記載の情報処理装置。
【請求項５】
前記記憶部では、前記合成部によって記憶されてからの経過時間に基づいて、記憶している対応付けられた特徴情報及び位置情報を削除することを特徴とする請求項１ないし４のいずれかに記載の情報処理装置。
【請求項６】
前記記憶部では、前記合成部によって合成して記憶された際の相対的位置情報によって対応付けられている特徴情報同士の間にパスを設けることで、複数の特徴情報及び位置情報を、位置情報の間の経路情報と共に記憶することを特徴とする請求項１ないし５のいずれかに記載の情報処理装置。
【請求項７】
前記合成部では、前記合成して前記撮像画像の位置情報を得る際に、前記経路情報を利用することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
対象を撮像して撮像画像を得る撮像段階と、
前記撮像画像から特徴情報を算出する算出段階と、
特徴情報及び位置情報を対応付けて記憶する記憶段階と、
前記記憶段階の記憶を参照して、前記算出された特徴情報に類似すると判定される特徴情報を求めると共に、当該類似すると判定された特徴情報に含まれる座標情報から前記算出された特徴情報に含まれる座標情報への変換関係として当該特徴情報同士の相対的位置情報を求める推定段階と、
前記相対的位置情報と前記類似すると判定された特徴情報の位置情報とを合成することによって前記撮像画像の位置情報を得ると共に、当該得た位置情報を前記撮像画像から算出された特徴情報と対応付けて前記記憶段階の記憶を更新させる合成段階と、を備えることを特徴とする方法。
【請求項９】
コンピュータを請求項１ないし７のいずれかに記載の情報取得装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像した画像から撮像対象との相対的な位置関係を広範囲に推定できる情報端末装置、方法及びプログラムに関する。
【背景技術】
【０００２】
画像から対象を判定する技術は、配布や提示が容易な媒体に記載されたアナログ情報からデジタル情報に変換させることが可能であり、利用者の利便性を向上させることができる。当該技術としては、例えば非特許文献１のものが公開されている。非特許文献１では、画像から特徴点を検出し、特徴点周辺から特徴量を算出した上で、事前に蓄積しておいた特徴量と比較することによって、対象の種類および相対的な位置関係を特定する。
【０００３】
一方、上記のような特徴点及び特徴量に基づく判定に関してさらに、精度を向上させる技術としては、例えば特許文献１のものが公開されている。特許文献１では、撮像画像中の撮影対象物について、撮影装置の光軸回りにおける回転角度を求め、この回転角度に基づいて、特徴点抽出手段が算出したオリエンテーション情報と、事前に保存されたオリエンテーション情報との座標系を揃えたとき、両オリエンテーション情報が所定のずれ角度範囲内に収まる特徴点同士を、対比すべき特徴点として設定することで精度を向上させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１０９８４１号公報
【非特許文献】
【０００５】
【非特許文献１】D. G. Lowe, ``Object recognition from local scale-invariant Features,'' Proc. of IEEE International Conference on Computer Vision (ICCV), pp.1150-1157, 1999.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、以上のような非特許文献１や特許文献１といった従来技術には、認識できる角度や距離が限定されているという課題があった。
【０００７】
具体的には、斜めから撮像した場合、射影歪みによって特徴量が変化し、事前に登録している特徴量と一致できないと判定処理が全く機能しないという課題がある。また、撮像対象が遠くから撮像された場合でも、特徴量算出に用いられる部分領域が相対的に広くなるため、特徴量が変化し、事前に登録している特徴量と一致できないと判定処理が全く機能しないという課題がある。さらに、撮像対象が撮像範囲から逸脱した場合、従来手法は全く認識できなくなるという課題がある。
【０００８】
本発明の目的は、上記従来技術の課題に鑑み、撮像した画像から撮像対象との相対的な位置関係を広範囲に推定できる情報端末装置、方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明は情報端末装置であって、対象を撮像して撮像画像を得る撮像部と、前記撮像画像から特徴情報を算出する算出部と、特徴情報及び位置情報を対応付けて記憶する記憶部と、前記記憶部を参照して、前記算出された特徴情報に類似すると判定される特徴情報を求めると共に、当該類似すると判定された特徴情報に含まれる座標情報から前記算出された特徴情報に含まれる座標情報への変換関係として当該特徴情報同士の相対的位置情報を求める推定部と、前記相対的位置情報と前記類似すると判定された特徴情報の位置情報とを合成することによって前記撮像画像の位置情報を得ると共に、当該得た位置情報を前記撮像画像から算出された特徴情報と対応付けて前記記憶部に記憶させる合成部と、を備えることを特徴とする。また、当該情報端末装置に対応する方法及びプログラムであることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、特徴情報と位置情報とを取得したその場で順次記憶していくことにより、広範囲に渡る位置関係の推定が可能となる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態に係る情報処理装置の機能ブロック図である。
【図２】一実施形態に係る情報処理装置の動作のフローチャートである。
【図３】撮像部による各時刻での撮像範囲の模式例である。
【図４】図３の例に対応する特徴情報及び位置情報の模式例である。
【図５】図４と同様の例において類似度の閾値判定を適用する場合の模式例である。
【図６】複数経路ごとの位置情報を説明するための模式例である。
【図７】図３の例において固有の特徴情報に限定する場合の模式例である。
【発明を実施するための形態】
【００１２】
図１は、一実施形態に係る情報処理装置の機能ブロック図である。図示するように、情報処理装置10は、撮像部1、算出部2、推定部3、合成部4、記憶部5及び処理部6を備える。情報処理装置10としては撮像部1を備える任意の情報端末を利用することができ、携帯端末の他、タブレット型端末、デスクトップ型又はラップトップ型のコンピュータその他を利用することができる。また、撮像部1以外の一部若しくは全てをサーバーに設置し、情報を適宜通信でやり取りしてもよい。各部の概略的な機能は次の通りである。
【００１３】
撮像部1は、所定のフレームレートのもとで各時刻tにおいて撮像を行い、得られた撮像画像を算出部2へと出力する。算出部2では撮像画像より特徴情報を算出して推定部3へと出力する。推定部3では、記憶部5を参照して得られる複数の記憶された特徴情報（推定部3での当該判定処理等の説明の明確化のため、リファレンス特徴情報と呼ぶこととする。）のいずれに、算出部2から得た現時刻tの撮像画像の特徴情報（当該判定処理等の説明の明確化のため、クエリ特徴情報と呼ぶこととする。）が対応するものであるのかの判定処理を行ない、対応するものと判定されたリファレンス特徴情報及びクエリ特徴情報を記憶部5へ出力すると共に、当該照合結果におけるクエリ特徴情報とリファレンス特徴情報との空間的な対応関係としての相対的な位置情報を算出して合成部4へと出力する。
【００１４】
合成部4では推定部3で得た相対的な位置情報と、記憶部5を参照して得られる推定部3が対応するものとして判定したリファレンス特徴情報に対応する位置情報と、を合成することにより、現時刻tの撮像画像の位置情報を算出する。当該算出された位置情報は情報処理装置10からの第一出力とされると共に、記憶部5及び処理部6へも出力される。
【００１５】
記憶部5では特徴情報と位置情報とを対応づけて記憶しておくことで、推定部3及び合成部4に対して必要な情報を参照に供する。記憶部5ではさらに、当該記憶しておく情報の更新管理を行う。具体的には、推定部3から得られた現時刻tの撮像画像のクエリ特徴情報と、合成部4から得られた現時刻tの撮像画像の位置情報と、を対応付けて、新たな（リファレンスとしての）特徴情報及び位置情報として自身における記憶対象を追加更新する。記憶部5ではさらに、当該記憶しておく情報の取捨選択によってそのデータ量を適切な範囲に保つようにしてもよいし、対応付けて記憶されている特徴情報及び位置情報に対して階層構造を定義しておくことで推定部3での推定処理の高速化を図るようにしてもよい。
【００１６】
記憶部5ではさらに、当該対応付けて記憶しておくに際して、図４や図５を参照してその模式例を説明するような特徴情報同士の類似対応関係の情報（一般に経路情報として与えることができる情報）も記憶しておき、当該対応関係の情報を合成部4に対して参照に供するようにすることができる。
【００１７】
処理部6は、合成部4から得られた現時刻tの撮像画像の位置情報を利用して、任意の追加処理を行なうことができる。例えば、当該現時刻tの撮像画像に対して所定の情報を重畳した拡張現実表示を行うようにし、当該拡張現実表示の際に位置情報を利用することで重畳情報の表示される位置姿勢を制御するようにしてもよい。なお、処理部6は情報処理装置10において省略されていてもよい。
【００１８】
図２は、一実施形態に係る情報処理装置10の動作のフローチャートである。ステップS1では、時刻tを当該現在時刻（初期時刻t=0とする）に設定してステップS2へと進む。ステップS2では、撮像部1が現時刻tにおいて撮像を行い、ステップS3へと進む。ステップS3では、ステップS2で得た現時刻tの撮像画像に対して算出部2、推定部3及び合成部4がそれぞれ上記概略説明した通りの処理を行なうことにより、合成部4が現時刻tの撮像画像の位置情報を得たうえでステップS4へと進む。なお、ステップS3ではさらに、合成部4で得た現時刻tの撮像画像の位置情報に基づいて処理部6が拡張現実表示などの追加処理を行なうようにしてもよい。
【００１９】
ステップS4では記憶部5が、ステップS3で現時刻tの撮像画像に対して算出部2で得た特徴情報及び合成部4で得た当該撮像画像の位置情報を対応付けて新たに記憶することで、記憶部5において記憶されている情報の更新処理を行なってから、ステップS5へと進む。ステップS4では記憶部5はさらに、当該現時刻t等に基づいて自身の記憶している情報を追加更新してもよい。例えば、得られてから（すなわち、ループ構成となっている図２のフローにおける過去のステップS4において得られてから）一定時間以上経過している等の条件を満たす記憶情報を削除するようにしてもよい。
【００２０】
なお、例えば時刻t=0（初期時刻）であり、記憶部5に過去の情報が何も記憶されていない場合は、ステップS3及びS4を初期登録に該当するものとして次のように変更すればよい。すなわち、ステップS3では推定部3はその処理を省略し、算出部2で得た特徴情報をそのまま合成部4へと出力させるようにする。また、ステップS3では合成部4は、当該そのまま出力された特徴情報を初期位置に該当するものとして記憶部5に出力する。ステップS4では記憶部5は当該出力された特徴情報を初期位置Pinitに対応するものとして記憶する。こうして、以降の時刻t≧1のステップS3で合成部4において得られる位置情報は、当該初期位置Pinitを基準とした位置情報として得られることとなる。
【００２１】
ステップS5では現時刻tを次の時刻t+1へと更新してからステップS2へと戻り、以降の各時刻t+1,t+2,t+3,…に関して同様に、ステップS2からS5までの処理がループ構成によって同様に継続されることとなる。当該継続されることにより、情報処理装置10では各時刻tにおいてリアルタイムに撮像画像の位置情報を算出することが可能となる。
【００２２】
以下、図２のように動作する図１の情報処理装置10の各部の処理の詳細を説明する。
【００２３】
撮像部1は、撮像対象を撮像して、その撮像画像を算出部2へ出力する。ここで、推定部3によって推定される予め既知の対象が含まれるよう、利用者等が撮像部1により撮像を行うものとする。撮像部1を実現するハードウェアとしては、携帯端末に標準装備されるデジタルカメラ等を用いることができる。
【００２４】
算出部2は、撮像部1から撮像画像を入力し撮像画像から算出した特徴量を特徴情報として推定部3へ出力する。具体的には、当該算出する特徴量として、SIFT(Scale-Invariant Feature Transform)やSURF(Speeded Up Robust Features)などの既存手法によるものが利用できる。
【００２５】
推定部3は、算出部2で算出されたクエリ特徴情報と記憶部5に記憶されたリファレンス特徴情報とを比較することで、クエリ特徴情報に類似する特徴情報をリファレンス特徴情報の中から検索するとともに、当該検索の結果において類似すると判定されたリファレンス特徴情報とクエリ特徴情報との相対的位置関係を位置情報として出力する。
【００２６】
すなわち、推定部3では記憶部5で記憶されているリファレンス特徴情報のいずれに、クエリ特徴情報が対応関係を有しているかを特定するとともに、相対的位置関係によって撮像画像の当該対応関係における変位量を推定する。ここで、記憶部5で記憶されている過去のリファレンス特徴情報の全て又は一部が類似判定対象となる。例えば、図３に矩形状の範囲R0〜R7として模式的に示すように、撮像部1が移動しながら時刻t=0〜7において当該範囲R0〜R7をそれぞれ捉えたものとして撮像して撮像画像を得た場合、最新の時刻t=7ではそれまでの過去時刻t=0〜6において範囲R0〜R6の各撮像画像において得られ記憶されたリファレンス特徴情報の全部又は一部が類似判定対象となる。
【００２７】
すなわち、より一般に説明すれば、算出部2で算出された現時刻tのクエリ特徴情報Ftよりも過去の時刻0〜t-1に既に（図２のステップS3でクエリとして）算出され（同ステップS4でリファレンスとして）記憶されたリファレンス特徴情報F0〜Ft-1の一部または全部を記憶部5から入力し、クエリ特徴情報Ftに類似しているものを推定部3が検索する。ここで、類似していると判定されるリファレンス特徴情報は最も類似すると判定された一つのみとしてもよいし、類似度が一定以上となる複数のリファレンス特徴情報の全てを類似判定結果として採用してもよい。
【００２８】
ここで、類似判定を下すために特徴情報同士を比較する際には、各種の周知手法を利用することができ、例えば、RANSAC(Random Sample Consensus)等により、特徴情報を構成している各特徴点及び特徴量をそれぞれ個別にマッチングすることを試みながら外れ値を排除することで、全体として最もマッチングしているものを特定する手法を用いてもよい。あるいは、BoVW（Bag of Visual words）のヒストグラム同士の類似度を算出してもよい。
【００２９】
そして、推定部3ではクエリ特徴情報Ftに類似するリファレンス特徴情報Faを検索結果として得るとさらに、リファレンス特徴情報Faからクエリ特徴情報Ftへの相対的位置関係の情報Patを推定する。
【００３０】
一実施形態では、当該推定する相対的位置関係は、特徴情報を構成している複数の特徴点の座標同士の対応関係から、周知の相似変換行列、アフィン変換行列、射影変換行列等で表現されるものとして求めることができる。例えば射影変換行列であれば、画像（特徴情報における特徴点の座標が配置されている画像）上の4点以上の特徴点座標(u,v)同士を互いに変換する関係として数値計算で求め、当該平面射影変換行列に含まれる並進成分及び回転成分を相対的位置関係とすればよい。なお、特徴点の対応関係は、推定部3が類似判定する際に求めておけばよい。
【００３１】
また、別の一実施形態では、同様の特徴点の対応関係をもとに、周知の運動視差やステレオ視差を利用して基本行列や基礎行列を推定し、当該行列を分解して得られる並進成分及び回転成分を特徴情報間の相対的位置関係としてもよい。
【００３２】
なお、射影変換行列等で相対的位置関係を求める場合は、特徴情報が抽出される撮像対象は１つの平面上に乗っていることが望ましい。例えば、撮像対象は建物における１つの壁面に設置されたものとすることが望ましい。基本行列や基礎行列を推定する場合はこのように必ずしも１つの平面上に乗っていなくともよい。
【００３３】
図４は、図３のように撮像部1が移動しながら時刻t=0〜7において当該範囲R0〜R7をそれぞれ捉えたものとして撮像して撮像画像を得た場合において、推定部3で類似判定される特徴情報及び当該判定結果から算出される相対的位置情報の模式的な例を示すものである。なお、図４はまた、同設定において記憶部5で更新されて記憶される情報ST0〜ST7（経路の情報をも含むもの）の模式的な例を示すものともなっている。
【００３４】
図４の例は推定部3で最も類似すると判定される１つのリファレンス特徴情報を求める場合に対応する例である。時刻t=0では情報ST0として示すように、特徴情報F0が得られ記憶部5にそのまま記憶される。ここで、時刻t=0は図２のフローを開始した直後に相当するものであり、記憶部5には過去結果として記憶されている情報が存在しないことから、このように情報ST0としてそのまま記憶される。
【００３５】
図４にてさらに、時刻t=1ではクエリ特徴情報F1が得られ、リファレンス特徴情報F0と類似していると判定されて相対的位置情報P01が計算され、情報ST1として更新されリファレンスとして記憶される。時刻t=2ではクエリ特徴情報F2が得られ、リファレンス特徴情報F0と類似していると判定されて相対的位置情報P02が計算され、情報ST2として更新されリファレンスとして記憶される。時刻t=3ではクエリ特徴情報F3が得られ、リファレンス特徴情報F2と類似していると判定されて相対的位置情報P23が計算され、情報ST3として更新されリファレンスとして記憶される。時刻t=4ではクエリ特徴情報F4が得られ、リファレンス特徴情報F1と類似していると判定されて相対的位置情報P14が計算され、情報ST4として更新されリファレンスとして記憶される。時刻t=5ではクエリ特徴情報F5が得られ、リファレンス特徴情報F4と類似していると判定されて相対的位置情報P45が計算され、情報ST5として更新されリファレンスとして記憶される。時刻t=6ではクエリ特徴情報F6が得られ、リファレンス特徴情報F5と類似していると判定されて相対的位置情報P56が計算され、情報ST6として更新されリファレンスとして記憶される。時刻t=7ではクエリ特徴情報F7が得られ、リファレンス特徴情報F3と類似していると判定されて相対的位置情報P37が計算され、情報ST7として更新されリファレンスとして記憶される。
【００３６】
図５は図４の例と同様の場合において、推定部3で類似度の閾値判定によって必ずしも１つに限らないリファレンス特徴情報を求める場合に対応する例を、時刻t=7において情報ST70が得られるものとして示している。すなわち、図４の例に加えてさらに、時刻t=6ではクエリ特徴情報F6に類似すると判定されたものとしてリファレンス特徴情報F5のみでなくリファレンス特徴情報F4があったことにより、追加で相対的位置情報P46が計算されている。また図４の例に加えてさらに、時刻t=7ではクエリ特徴情報F7に類似すると判定されたものとしてリファレンス特徴情報F3のみでなくリファレンス特徴情報F2があったことにより、追加で相対的位置情報P27が計算されている。
【００３７】
以上、図４や図５にその模式例が情報ST0〜ST7や情報ST70として示されるような、特徴情報同士の個別の類似対応関係を合わせることで特徴情報の間での経路情報が定義された情報を、記憶部5では更新しながら記憶しておき、一実施形態において当該経路情報としての類似対応関係を合成部4での位置情報算出のための参照に供することができる。
【００３８】
なお、経路情報とは例えば、図４の情報ST7であれば個別の対応関係P01,P14,P45,P56を合わせて得られる「F0→F1→F4→F5→F6」という特徴情報間の経路や、個別の対応関係P02,P23,P37を合わせて得られる「F0→F2→F3→F7」という特徴情報間の経路である。すなわち、対応関係Pij（Fi→Fj）及びPjk（Fj→Fk）があれば、これらを組み合わせて対応する特徴情報の部分的な経路「Fi→Fj→Fk」が得られ、このような部分的な経路をつなぎ合わせることで経路情報が得られることとなる。当該経路は記憶部5に記憶しておく情報において基準位置が対応付けられている特徴情報を起点として定義することができ、図４の情報ST7であれば特徴情報F0が時刻t=0で基準位置に該当しているものとして設定されているので、上記のような経路情報が得られることとなる。
【００３９】
また、記憶部5においては各時刻tで新たな特徴情報Ftが得られる都度、図２のステップS4における更新で上記のような経路情報をも更新することにより、自身が記憶しておく情報において経路情報を常に最新の状態に更新して管理することが可能である。
【００４０】
合成部4は、算出部2で算出されたクエリ特徴情報の位置情報を、推定部3で類似判定されたリファレンス特徴情報の位置情報と算出部2で算出されたクエリ特徴情報との相対的位置情報とを合成することによって算出し、記憶部5に当該クエリ特徴情報と当該算出された位置情報とを対応付けて出力する。こうして、記憶部5では現時刻tにて当該出力されたクエリ特徴情報をこれよりも未来時刻t+1,t+2,…の推定部3での類似判定処理等のために、リファレンス特徴情報として、位置情報と対応付けて記憶することとなる。当該記憶する模式例は図４等で示した通りである。
【００４１】
合成部4で位置情報を当該合成する手法の各実施形態は次のようなものが可能である。第一実施形態では、特徴情報Faに対する特徴情報Fb（クエリ特徴情報Fb）の位置情報を、特徴情報Faと特徴情報Fbの最短経路上の位置情報の積として算出することができる。ここで経路情報は記憶部5に記憶されているものを用いればよい。最短経路は、経路情報上において、特徴情報Faから特徴情報Fbへと類似判定がなされている特徴情報を経由して到達する場合のパス数が最小となるものとして求めればよい。例えば、図５の情報ST70の経路情報を利用して特徴情報F6の特徴情報F0に対する位置情報を求める場合であれば、当該位置情報は積P01*P14*P46として算出することができる。ここで、F0からF6へと到達する経路としては「F0→F1→F4→F6」及び「F0→F1→F4→F5→F6」の2通りがあるが、前者はパス数が3であり後者はパス数が4であるため、最短経路である前者によって積P01*P14*P46を算出することとなる。
【００４２】
第二実施形態では、基準位置に対応する特徴情報Fnと類似判定されたリファレンス特徴情報Fsとの位置関係を記憶部5において位置情報Pnsとして記憶しておくことにより、位置情報を算出してもよい。ここで、位置情報Pnsの記憶は、現時刻tにおいて類似判定されたリファレンス特徴情報Fsが過去時刻s(s<t)において初めて記憶された場合、すなわち過去時刻sにおいてクエリ特徴情報Fsとしてその位置情報Pnsが求められた際の図２のステップS4において記憶部5に記憶しておくようにすればよい。
【００４３】
そして、具体的な位置情報の算出は、類似特徴情報Fsと算出部2で算出されたクエリ特徴情報Ftとの相対的位置関係を変換行列Pstとして求めたうえで、積Pns*Pstとして算出することができる。
【００４４】
第三実施形態では、特徴情報Faから特徴情報Fbへと至る複数経路毎にそれぞれの位置情報の積で当該位置情報を算出し重み付け平均したものとして位置情報Pabを求めてもよい。ここで、複数経路のそれぞれの位置情報の積は第一又は第二実施形態によって求めればよい。ここで、重み係数は経路の距離や推定部での類似度、後述する記憶部5の重複等を利用して、経路の1パスごとに設定したものを当該経路全体で総和等したものを用いればよい。1パス「Fi→Fj」の経路の距離は位置情報Pijの並進成分の大きさとして求めることができ、1パス「Fi→Fj」の類似度は当該特徴情報Fi,Fjの類似度として求めることができる。なお、当該求める重みは、推定部3で初めてクエリ特徴情報として処理対象となった際に計算して記憶部5に記憶しておいてもよい。
【００４５】
第三実施形態ではさらに、複数経路毎の位置情報の積を記憶部5において記憶しておくことで、今後参照される際の計算に利用してもよい。例えば、図６の[1]のように時刻0〜3において範囲R0〜R3を対象として撮像画像を取得し、図６の[2]のように特徴情報F0〜F3及びこれらの間の類似関係が経路情報ST30として求まった場合であれば、特徴情報F2の特徴情報F0に対する位置情報は複数経路が存在しP02とP01*P12とが得られる。両者を記憶部5に保持しておくことで、特徴情報F3の特徴情報F0に対する位置情報を算出する際、複数経路の内、特徴情報F2に至る経路は既に計算済みであるため、再利用することで位置情報の算出負荷を軽減できる。
【００４６】
なお、図６の例における範囲R0〜R3や特徴情報F0〜F3等は、図３〜図５の例とは独立のものである。
【００４７】
第三実施形態ではさらに、特徴情報間の相対的位置関係を逆に辿る経路を記憶部5において保持しておくようにしてもよい。図６の[2]の場合であれば、特徴情報F1にP01=P02*(P12)-1を対応付けて保持しておくことで、特徴情報F3に関してP03=P02*(P12)-1*P13を計算する際、特徴情報F1が保持する位置情報を再利用できる。
【００４８】
なお、以上の第一〜第三実施形態の説明では1パス「Fi→Fj」に対応する位置情報Pijを平面射影変換等に対応する行列で求めることを前提として、これらの合成を積によって求めるものとして説明した。ここで、パスを逆向きに辿る場合は逆行列を乗ずればよい。位置情報Pijを基本行列や基礎行列を推定したえうで、当該行列を分解して得られる並進成分及び回転成分として求めている場合、当該並進成分及び回転成分を加算することによって合成を求めればよい。ここで、パスを逆向きに辿る場合は減算するようにすればよい。
【００４９】
記憶部5では、各時刻tにおいて合成部4から得られた特徴情報及び対応する位置情報を蓄積して記憶し、且つ管理更新することで、以降の時刻t+1,t+2,…における推定部3の参照に供する。ここで、初期時刻t=0においては記憶部5は何も記憶していない状態として設定しておき、図２のフローに関して説明したように初期時刻t=0のステップS3及びS4で初期位置Pinitに対応する特徴情報を初めて記憶させる（初期登録させる）ようにしてもよい。また、当該記憶させる初期位置Pinit及び対応する特徴情報のペアを１つ以上、予め記憶部5に記憶させておくことで、初期時刻t=0であってもステップS3及びS4は初期登録することなく、通常通りの処理としてもよい。
【００５０】
記憶部5から推定部3へ特徴情報を参照に供する処理に関して、一実施形態では現時刻tにおいて記憶している全ての（すなわち過去時刻においてクエリ特徴情報として得た全ての）又は一部の特徴情報を一度のみ提供し、推定部3では一度で推定結果を得るようにしてもよいし、別の一実施形態では段階的に特徴情報を提供して推定部3では段階的に推定結果を得て確定させるようにしてもよい。
【００５１】
一度に提供する場合、過去時刻においてクエリ特徴情報として得られリファレンス特徴情報として記憶された全てのものを推定部3に提供するようにしてもよいし、当該全てのうちから固有の特徴情報に限定したもののみを推定部3に提供するようにしてもよい。
【００５２】
例えば、現在時刻がt=7であり、時刻t=0〜7において前述の図３のような範囲R0〜R7を対象として撮像を行った場合、図３に対応する図７に太枠表示で模式的に示すように、過去時刻t=0〜6の全ての特徴情報を推定部3に提供するのではなく、固有の特徴情報に該当する時刻t=0,3,4,6の特徴情報のみに限定して提供することができる。
【００５３】
具体的には例えば、特徴情報の重複の割合が閾値以下となるような特徴情報同士を固有の特徴情報として定め、これに限定して提供すればよい。ここで、重複の割合は特徴情報における特徴点同士のうち対応していると判定されるものの個数の割合として評価してもよいし、相対的位置情報に対応する平面射影変換を施して一方の特徴情報に対応する画像範囲をもう一方の画像の座標(u,v)に変換した際の、もう一方の画像範囲との重複割合として評価してもよい。
【００５４】
あるいは、特徴情報に対応する位置情報の空間座標値にk-means(k平均法)などを適用して複数のセントロイド位置を求め、当該セントロイド位置に最も近い位置情報を有するような特徴情報のみを固有のものとして定めてもよい。あるいは、特徴情報Ftの得られた時刻tを所定の除数Nで割った際の剰余が所定値となるもののみを固有情報に設定する等、単純に間引いたものとしてもよい。
【００５５】
固有の特徴情報を設定する場合はさらに、得られた時刻tが新しいものを優先して固有の特徴情報に設定してもよい。この場合、以上のような重複割合の評価に加えてさらに、得られた時刻tから現在時刻までの経過時間に基づく評価を行うことで固有の特徴情報として設定してもよい。あるいは、既に固有の特徴情報を構成している特徴情報Foldと重複割合が大きいと判定されるが、既に固有の特徴情報となっているものよりも所定時間以上新しいような特徴情報Fnewがある場合に、当該新しい特徴情報Fnewによって古い特徴情報Foldを置き換えることで固有の特徴情報を更新するようにしてもよい。
【００５６】
なお、自身が記憶している特徴情報のうちいずれが固有のものとなるかの決定は、記憶部5が図２のステップS4の更新の際に行うようにすればよい。
【００５７】
また、段階的に提供する場合は、例えば２段階で提供するものとし、1段階目では上記の固有の特徴情報のみを提供して推定部3で最類似となるものを判定し、2段階目では1段階目で最類似判定された特徴情報に近いと判定されるものであるが1段階目では提供されていなかった特徴情報を追加提供し、1段階目で最類似判定されたものと2段階目で追加提供されたものとの中で最も類似すると判定されるものと推定部3での最終的な類似判定結果とすればよい。ここで、2段階目で追加提供するための「近い」特徴情報の決定は、固有の特徴情報を限定した際のものと同様の尺度（位置情報の近さや重複の割合）で決定すればよい。全く同様にして、記憶部5に記憶しておく特徴情報に階層構造を設けておくことで3段階以上の判定を行うようにしてもよい。階層構造の管理に関しても、記憶部5が図２のステップS4の更新の際に行うようにすればよい。この際、新たな特徴情報に対応する追加分に関して階層構造等を更新して管理すればよい。
【００５８】
2段階で提供する例として例えば、図７で時刻t=6であるものとし特徴情報F6がクエリとして入力された状況（F7はまだ存在しない状況）では次のようになる。すなわち、1段階目では固有の特徴情報F0,F3,F4が提供され、推定部3での最類似判定の結果が特徴情報F4となった場合、2段階目では特徴情報F4に近い特徴情報F5がさらに提供され、特徴情報F6と特徴情報F5との類似度で前回の推定結果F4の採否を判定する。すなわち、F4の方が類似していればF4が採用され、F5の方が類似していればF5が採用される。こうして、1段階目の判定結果から得られる特徴情報F5に近いものだけに類似度評価を限定することで高速高精度化が図られる。
【００５９】
なお、位置情報の近さに基づいて段階的に提供する場合、1段階目に最類似判定されたリファレンス特徴情報の位置情報P1を用いてクエリ特徴情報の位置情報P2を暫定的に求め、当該両方の位置情報P1,P2に近いと判定されるものを2段階目の提供対象に設定するようにしてもよい。上記の例であれば、最類似判定された特徴情報F5の位置情報と、これに基づいて暫定的に算出されるクエリ特徴情報F6の位置情報（合成部4で算出するのと同様のものとして暫定的に算出される位置情報）と、の両方に近いと判定されるものを2段階目の提供対象としてよい。
【００６０】
記憶部5では、過去時刻tにおいて合成部4から位置情報と対応付けて登録された特徴情報に関して、当該過去時刻t（すなわち登録時刻t）からの経過時間に基づいて、互いに対応付けられた位置情報及び特徴情報を削除するようにしてもよい。例えば、固有の特徴情報として設定されていないもののうち、登録時刻tから一定期間以上が経過しているものは削除するようにしてもよい。
【００６１】
記憶部5ではまた、ある初期時刻t=0から一定期間以上が経過した場合は既に記憶している情報を全て削除して、当該削除した時点を新たな初期時刻t=0とすることで、情報処理装置10を動作させるようにしてもよい。
【００６２】
以上、本発明によれば、特徴情報と位置情報とを取得したその場で順次記憶していくことで、事前に撮像対象から算出しておいた特徴情報には含まれない特徴情報を徐々に組み入れることで撮像対象以外の周辺環境から算出される特徴情報が推定の手掛かりとなるため、従来より広範囲な認識が可能となる効果が得られる。ここで、ある初期時刻t=0において求まる特徴情報を初期登録するようにすれば、事前に所定の撮像対象から特徴情報を算出して記憶しておくことも省略可能である。
【００６３】
本発明の好適な適用例の１つとして、処理部6では拡張現実表示分野において周知の所定の正方マーカ等を利用することで当該マーカを基準とした拡張現実表示を行う場合に、当該マーカがフレームアウトした場合であっても、当該マーカ以外の対象の特徴情報の事前登録を必要とすることなく、当該拡張現実表示を継続可能とすることが挙げられる。この場合、マーカが所定精度で検出されている際は当該マーカのみを検出対象として拡張現実表示を行うようにすると共に、一定の時間間隔で撮像画像全体を対象として特徴情報を取得し初期位置Pinitとして登録することを行っておき、マーカが所定精度で検出されなくなった時点で直近過去に初期位置Pinitとして登録された特徴情報を用いて現在時刻の撮像画像の位置姿勢の推定を行うようにして、その後に再度マーカが所定精度で検出されるまでは本発明の手法を適用するようにすればよい。
【００６４】
本発明の情報処理装置10は一般的な構成のコンピュータとして実現可能である。すなわち、CPU（中央演算装置）、当該CPUにワークエリアを提供する主記憶装置、ハードディスクやSSDその他で構成可能な補助記憶装置、キーボード、マウス、タッチパネルその他といったユーザからの入力を受け取る入力インタフェース、ネットワークに接続して通信を行うための通信インタフェース、表示を行うディスプレイ、カメラ及びこれらを接続するバスを備えるような、一般的なコンピュータによって情報処理装置10を構成することができる。さらに、図１に示す情報処理装置10の各部の処理はそれぞれ、当該処理を実行させるプログラムを読み込んで実行するCPUによって実現することができるが、任意の一部の処理を別途の専用回路等（GPUを含む）において実現するようにしてもよい。なお、撮像部1に関してはハードウェアとしてのカメラで取得した撮像画像を取得するインタフェースとしての画像取得プログラムとして実現されてもよいし、当該ハードウェアとしてのカメラの撮像処理を制御する撮像制御プログラムをさらに含んで実現されてもよい。
【符号の説明】
【００６５】
10…情報処理装置、1…撮像部、2…算出部、3…推定部、4…合成部、5…記憶部、6…処理部
【図１】
2019070944.tif 000003
【図２】
2019070944.tif 000004
【図３】
2019070944.tif 000005
【図４】
2019070944.tif 000006
【図５】
2019070944.tif 000007
【図６】
2019070944.tif 000008
【図７】
2019070944.tif 000009