(57)【特許請求の範囲】
【請求項１】
センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部と、
撮像された映像フレームと三次元地図データとのマッチングを行い、前記機器の絶対位置を推定する絶対位置推定部と、
前記絶対位置推定部が前記機器の絶対位置を推定した場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合には、前記相対位置算出部が算出した前記機器の相対位置を用いて前記機器の自己位置を推定する自己位置推定部と、
前記自己位置推定部が推定した前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成する付加情報生成部と、
前記映像フレームに、前記付加情報生成部が生成した付加映像を重畳する重畳処理部と、
前記機器の周辺の明るさを示す照度情報を取得する照度情報取得部と、を備え、
前記自己位置推定部は、前記照度情報取得部が取得した前記照度情報が、予め設定した照度以上であった場合に、前記絶対位置推定部が推定した前記機器の絶対位置を用いて、前記機器の自己位置を推定することを特徴とする表示制御装置。
【請求項２】
センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部と、
撮像された映像フレームと三次元地図データとのマッチングを行い、前記機器の絶対位置を推定する絶対位置推定部と、
前記絶対位置推定部が前記機器の絶対位置を推定した場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合には、前記相対位置算出部が算出した前記機器の相対位置を用いて前記機器の自己位置を推定する自己位置推定部と、
前記自己位置推定部が推定した前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成する付加情報生成部と、
前記映像フレームに、前記付加情報生成部が生成した付加映像を重畳する重畳処理部と、
前記相対位置算出部が算出した前記機器の相対位置および前記絶対位置推定部が推定した前記機器の絶対位置を適用するか否かを判断するための閾値を設定する閾値設定部と、を備え、
前記自己位置推定部は、前記絶対位置推定部が前記機器の絶対位置を推定した場合、且つ今回推定された前記機器の絶対位置と、前回推定された前記機器の絶対位置との差分が、前記閾値設定部が設定した閾値以下であった場合に、今回推定された前記機器の絶対位置から前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合、且つ前記相対位置算出部において今回算出された前記機器の相対位置と、前回算出された前記機器の相対位置との差分が、前記閾値設定部が設定した閾値以下であった場合に、今回算出された前記機器の相対位置から前記機器の自己位置を推定することを特徴とする表示制御装置。
【請求項３】
センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部と、
撮像された映像フレームと三次元地図データとのマッチングを行い、前記機器の絶対位置を推定する絶対位置推定部と、
前記絶対位置推定部が前記機器の絶対位置を推定した場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合には、前記相対位置算出部が算出した前記機器の相対位置を用いて前記機器の自己位置を推定する自己位置推定部と、
前記自己位置推定部が推定した前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成する付加情報生成部と、
前記映像フレームに、前記付加情報生成部が生成した付加映像を重畳する重畳処理部と、
前記相対位置算出部が前記相対位置を算出する処理に要した時間、および前記絶対位置推定部が前記絶対位置を推定する処理に要した時間を計数する処理時間計数部と、
前記相対位置算出部が算出した相対位置、前記絶対位置推定部が推定した前記絶対位置、および前記映像フレームを一時格納し、前記処理時間計数部が計数した前記相対位置を算出する処理に要した時間と前記絶対位置を推定する処理に要した時間の差に基づいて、前記絶対位置を基準として、当該絶対位置に対応する相対位置を特定するバッファ制御部とを備えたことを特徴とする表示制御装置。
【請求項４】
相対位置算出部は、センサの検知情報から機器の相対位置を自律航法により算出するステップと、
絶対位置推定部は、撮像された映像フレームと三次元地図データとのマッチングを行い、前記機器の絶対位置を推定するステップと、
自己位置推定部は、前記機器の絶対位置が推定された場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記機器の絶対位置が推定されなかった場合には、前記算出された前記機器の相対位置を用いて前記機器の自己位置を推定するステップと、
付加情報生成部は、前記推定された前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成するステップと、
重畳処理部は、前記映像フレームに、前記生成された付加映像を重畳するステップと、
を備え、
照度情報取得部は、前記機器の周辺の明るさを示す照度情報を取得するステップをさらに備え、
前記自己位置推定部は、前記照度情報取得部が取得した前記照度情報が、予め設定した照度以上であった場合に、前記絶対位置推定部が推定した前記機器の絶対位置を用いて、前記機器の自己位置を推定することを特徴とする表示制御方法。
【請求項５】
相対位置算出部は、センサの検知情報から機器の相対位置を自律航法により算出するステップと、
絶対位置推定部は、撮像された映像フレームと三次元地図データとのマッチングを行い、前記機器の絶対位置を推定するステップと、
自己位置推定部は、前記機器の絶対位置が推定された場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記機器の絶対位置が推定されなかった場合には、前記算出された前記機器の相対位置を用いて前記機器の自己位置を推定するステップと、
付加情報生成部は、前記推定された前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成するステップと、
重畳処理部は、前記映像フレームに、前記生成された付加映像を重畳するステップと、
を備え、
閾値設定部は、前記相対位置算出部が算出した前記機器の相対位置および前記絶対位置推定部が推定した前記機器の絶対位置を適用するか否かを判断するための閾値を設定するステップをさらに備え、
前記自己位置推定部は、前記絶対位置推定部が前記機器の絶対位置を推定した場合、且つ今回推定された前記機器の絶対位置と、前回推定された前記機器の絶対位置との差分が、前記閾値設定部が設定した閾値以下であった場合に、今回推定された前記機器の絶対位置から前記機器の自己位置を推定し、前記絶対位置推定部が前記機器の絶対位置を推定しなかった場合、且つ前記相対位置算出部において今回算出された前記機器の相対位置と、前回算出された前記機器の相対位置との差分が、前記閾値設定部が設定した閾値以下であった場合に、今回算出された前記機器の相対位置から前記機器の自己位置を推定することを特徴とする表示制御方法。
【請求項６】
相対位置算出部は、センサの検知情報から機器の相対位置を自律航法により算出するステップと、
絶対位置推定部は、撮像された映像フレームと三次元地図データとのマッチングを行い、前記機器の絶対位置を推定するステップと、
自己位置推定部は、前記機器の絶対位置が推定された場合には、当該絶対位置を用いて前記機器の自己位置を推定し、前記機器の絶対位置が推定されなかった場合には、前記算出された前記機器の相対位置を用いて前記機器の自己位置を推定するステップと、
処理時間計数部は、前記相対位置算出部が前記相対位置を算出する処理に要した時間、および前記絶対位置推定部が前記絶対位置を推定する処理に要した時間を計数するステップと、
バッファ制御部は、前記相対位置算出部が算出した相対位置、前記絶対位置推定部が推定した前記絶対位置、および前記映像フレームを一時格納し、前記処理時間計数部が計数した前記相対位置を算出する処理に要した時間と前記絶対位置を推定する処理に要した時間の差に基づいて、前記絶対位置を基準として、当該絶対位置に対応する相対位置を特定するステップと、
付加情報生成部は、前記推定された前記機器の自己位置に基づいて、前記映像フレームに付加する付加映像を生成するステップと、
重畳処理部は、前記映像フレームに、前記生成された付加映像を重畳するステップとを備えたことを特徴とする表示制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、映像表示技術に関し、特にＡＲ（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ：ＡＲ（拡張現実））を用いて映像を表示する技術に関するものである。
【背景技術】
【０００２】
従来、現実映像にバーチャルな付加映像を加えて表示するＡＲ技術を用いた表示制御装置が開発されている。ＡＲ技術を用いた表示制御装置は、センサから入力された信号に基づいて、表示デバイス等の機器の相対位置を自律航法で計算し、計算した機器の相対位置を、機器の絶対位置を用いて修正している。
例えば、特許文献１に開示された位置方位検出装置では、自律航法装置の位置方位検出誤差に基づいて機器に搭載されたカメラに撮像を指示し、当該指示に基づいて撮像された画像に含まれるマークの幾何形状に基づいた機器の相対位置と相対方位を算出し、位置情報、方位情報、相対位置、および相対方位に基づいて、機器の絶対位置と絶対方位とを算出し、位置方位誤差が予め定められた閾値より大きい場合にカメラに撮像を指示するように構成している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１０９６１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上述した特許文献１に開示された技術では、自律航法で計算した機器の相対位置を修正するためには、多数のマーカを設置する必要があるという課題があった。【０００５】
この発明は、上記のような課題を解決するためになされたもので、マーカを設置することなく、自律航法で計算した機器の相対位置を機器の絶対位置を用いて修正し、機器の位置を推定することを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係る発明の表示制御装置は、センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部と、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部と、絶対位置推定部が機器の絶対位置を推定した場合には、当該絶対位置を用いて機器の自己位置を推定し、絶対位置推定部が機器の絶対位置を推定しなかった場合には、相対位置算出部が算出した機器の相対位置を用いて機器の自己位置を推定する自己位置推定部と、自己位置推定部が推定した機器の自己位置に基づいて、映像フレームに付加する付加映像を生成する付加情報生成部と、映像フレームに、付加情報生成部が生成した付加映像を重畳する重畳処理部と、機器の周辺の明るさを示す照度情報を取得する照度情報取得部と、を備え、自己位置推定部は、照度情報取得部が取得した照度情報が、予め設定した照度以上であった場合に、絶対位置推定部が推定した機器の絶対位置を用いて、機器の自己位置を推定するものである。
【発明の効果】
【０００７】
この発明によれば、マーカを設置することなく、自律航法で計算した機器の相対位置を機器の絶対位置を用いて修正し、機器の位置を推定することができる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１に係る表示制御装置の構成を示すブロック図である。
【図２】図２Ａ、図２Ｂは、実施の形態１に係る表示制御装置のハードウェア構成例を示す図である。
【図３】実施の形態１に係る表示制御装置の動作を示すフローチャートである。
【図４】実施の形態１に係る表示制御装置にセンサ値を入力する加速度センサの座標系を示す図である。
【図５】実施の形態１に係る表示制御装置の相対位置算出部の動作を示すフローチャートである。
【図６】実施の形態１に係る表示制御装置の絶対位置推定部１０２の動作を示すフローチャートである。
【図７】図７Ａ、図７Ｂは、実施の形態１に係る表示制御装置の絶対位置推定部１０２の画像特徴点の取得処理を示す図である。
【図８】図８Ａ、図８Ｂ、図８Ｃは、実施の形態１に係る表示制御装置の撮像映像と三次元地図のマッチングのイメージを示す図である。
【図９】実施の形態１に係る表示制御装置の自己位置推定部の動作を示すフローチャートである。
【図１０】実施の形態２に係る表示制御装置の絶対位置推定部１０２の動作を示すフローチャートである。
【図１１】実施の形態２に係る表示制御装置の自己位置推定部の動作を示すフローチャートである。
【図１２】実施の形態３に係る表示制御装置の構成を示すブロック図である。
【図１３】実施の形態３に係る表示制御装置の自己位置推定部の動作を示すフローチャートである。
【図１４】実施の形態４に係る表示制御装置の構成を示すブロック図である。
【図１５】実施の形態４に係る表示制御装置の動作を示すフローチャートである。
【図１６】実施の形態５に係る表示制御装置の構成を示すブロック図である。
【図１７】実施の形態５に係る表示制御装置の相対位置算出部と絶対位置推定部との出力タイミングを示すタイミングチャートである。
【図１８】実施の形態５に係る表示制御装置の動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態１．
図１は、この発明の実施の形態１に係る表示制御装置１００の構成を示すブロック図である。
表示制御装置１００は、相対位置算出部１０１、絶対位置推定部１０２、三次元地図データベース１０３、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６を備えて構成される。
【００１０】
また、図１に示すように、表示制御装置１００には、センサ２０１、カメラ２０２および表示デバイス２０３を備えた機器２００が接続されている。
まず、センサ２０１は、機器２００に加わる加速度および回転等を検知する加速度センサおよび回転センサ等で構成される。センサ２０１は、検知結果であるセンサ値を表示制御装置１００の相対位置算出部１０１に出力する。カメラ２０２は、機器２００の周囲を撮像する。カメラ２０２は、撮像した撮像映像を表示制御装置１００の絶対位置推定部１０２および重畳処理部１０６に出力する。表示デバイス２０３は、表示制御装置１００の重畳処理部１０６から入力された映像フレームに基づいて、映像を表示する。
【００１１】
次に、表示制御装置１００の各構成について説明する。
相対位置算出部１０１は、センサ２０１から入力されるセンサ値に基づいて、機器２００の相対位置を自律航法で計算する。なお、相対位置算出部１０１の詳細は後述する。絶対位置推定部１０２は、カメラ２０２から入力される撮像映像の映像フレームと、三次元地図データベース１０３に格納された三次元地図データとのマッチングを行い、機器２００の絶対位置を推定する。絶対位置推定部１０２は、例えば、風景の撮像映像の映像フレームと、風景の三次元地図データとのマッチングを行い、機器２００の絶対位置を推定する。なお、マッチングは風景の映像フレームに限定されるものではない。三次元地図データベース１０３は、三次元地図データを格納するデータベースである。
【００１２】
自己位置推定部１０４は、相対位置算出部１０１が算出した相対位置、または絶対位置推定部１０２が推定した絶対位置を用いて、機器２００の位置（以下、自己位置と記載する）を推定する。自己位置推定部１０４は、絶対位置推定部１０２が推定した絶対位置が入力された場合には、当該絶対位置を自己位置と推定する。自己位置推定部１０４は、絶対位置推定部１０２が推定した絶対位置が入力されていない場合には、相対位置算出部１０１が算出した相対位置を、前回算出した自己位置に累積加算して得られた位置を自己位置と推定する。
【００１３】
付加情報生成部１０５は、自己位置推定部１０４が推定した機器２００の自己位置に基づいて、カメラ２０２が撮像した撮像映像の映像フレームに付加すべきアノテーション映像を生成する。付加情報生成部１０５は、位置情報とアノテーション映像とを対応付けて記憶したデータベース等（図示しない）を参照し、アノテーション映像を生成する。重畳処理部１０６は、カメラ２０２から入力される撮像映像の映像フレームに、付加情報生成部１０５が生成したアノテーション映像を重畳する。重畳処理部１０６は、アノテーション映像を重畳した映像フレームを、表示デバイス２０３に出力する。
【００１４】
次に、表示制御装置１００のハードウェア構成例を説明する。
図２Ａおよび、図２Ｂは、表示制御装置１００のハードウェア構成例を示す図である。
表示制御装置１００における相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６の各機能は、処理回路により実現される。即ち、表示制御装置１００は、上記各機能を実現するための処理回路を備える。当該処理回路は、図２Ａに示すように専用のハードウェアである処理回路１００ａであってもよいし、図２Ｂに示すようにメモリ１００ｃに格納されているプログラムを実行するプロセッサ１００ｂであってもよい。
【００１５】
図２Ａに示すように相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６が専用のハードウェアである場合、処理回路１００ａは、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-programmable Gate Array）、またはこれらを組み合わせたものが該当する。相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６の各部の機能それぞれを処理回路で実現してもよいし、各部の機能をまとめて１つの処理回路で実現してもよい。
【００１６】
図２Ｂに示すように、相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６がプロセッサ１００ｂである場合、各部の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ１００ｃに格納される。プロセッサ１００ｂは、メモリ１００ｃに記憶されたプログラムを読み出して実行することにより、相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６の各機能を実現する。即ち、相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６は、プロセッサ１００ｂにより実行されるときに、後述する図３、図５、図６、図９および図１０に示す各ステップが結果的に実行されることになるプログラムを格納するためのメモリ１００ｃを備える。また、これらのプログラムは、相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６の手順または方法をコンピュータに実行させるものであるともいえる。
【００１７】
ここで、プロセッサ１００ｂとは、例えば、ＣＰＵ（Central Processing Unit）、処理装置、演算装置、プロセッサ、マイクロプロセッサ、マイクロコンピュータ、またはＤＳＰ（Digital Signal Processor）などのことである。
メモリ１００ｃは、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、フラッシュメモリ、ＥＰＲＯＭ（Erasable Programmable ROM）、ＥＥＰＲＯＭ（Electrically EPROM）等の不揮発性または揮発性の半導体メモリであってもよいし、ハードディスク、フレキシブルディスク等の磁気ディスクであってもよいし、ミニディスク、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）等の光ディスクであってもよい。
【００１８】
なお、相対位置算出部１０１、絶対位置推定部１０２、自己位置推定部１０４、付加情報生成部１０５および重畳処理部１０６の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、表示制御装置１００における処理回路１００ａは、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
【００１９】
次に、表示制御装置１００の動作について説明する。
図３は、実施の形態１に係る表示制御装置１００の動作を示すフローチャートである。
相対位置算出部１０１は、センサ２０１からセンサ値が入力されると、対応する機器２００の相対位置を自律航法で計算する（ステップＳＴ１）。相対位置算出部１０１は算出した機器２００の相対位置を自己位置推定部１０４に出力する。絶対位置推定部１０２は、カメラ２０２から撮像映像の映像フレームが入力されると、当該映像フレームと、三次元地図データベース１０３に格納された三次元地図データとのマッチングを行い、機器２００の絶対位置を推定する（ステップＳＴ２）。絶対位置推定部１０２は、推定した機器２００の絶対位置を自己位置推定部１０４に出力する。
【００２０】
自己位置推定部１０４は、ステップＳＴ１で計算された機器２００の相対位置、およびステップＳＴ２で推定された機器２００の絶対位置のうちの少なくともいずれか１つが入力されると、機器２００の自己位置を推定する（ステップＳＴ３）。自己位置推定部１０４は、推定した機器２００の自己位置を付加情報生成部１０５に出力する。付加情報生成部１０５は、ステップＳＴ３で推定された機器２００の自己位置に基づいて、撮像映像の映像フレームに付加すべきアノテーション映像を生成する（ステップＳＴ４）。重畳処理部１０６は、ステップＳＴ４で生成されたアノテーション映像を、カメラ２０２から入力された撮像映像の映像フレームに重畳する（ステップＳＴ５）。重畳処理部１０６は、ステップＳＴ５でアノテーション映像を重畳した映像フレームを、表示デバイス２０３に出力し（ステップＳＴ６）、処理を終了する。
【００２１】
次に、図３のフローチャートのステップＳＴ１の処理を、図４および図５を参照しながらより詳細に説明する。
図４は、実施の形態１に係る表示制御装置１００にセンサ値を入力する加速度センサの座標系を示す図である。図４では、機器２００として表示デバイス２０３を例に記載している。
図５は、実施の形態１に係る表示制御装置１００の相対位置算出部１０１の動作を示すフローチャートである。
図４に示した加速度センサの座標系において、機器２００（表示デバイス２０３）の回転を示すセンサ値を、Ｙ軸をＺ軸の方に傾けるような方向を正としてｒｏｌｌ、Ｚ軸をＸ軸の方に傾けるような方向を正としてａｚｉｍｕｔｈ、Ｘ軸をＹ軸の方に傾けるような方向を正としてｐｉｔｃｈとして定義する。
【００２２】
まず、相対位置算出部１０１は、機器２００が静止している状態において、機器２００の初期姿勢を記憶する（ステップＳＴ１１）。相対位置算出部１０１は、当該初期姿勢における重力加速度のＸ、Ｙ、Ｚ軸の重力加速度の成分を記憶する（ステップＳＴ１２）。相対位置算出部１０１は、機器２００が移動している状態において、現在の機器２００の姿勢におけるＸ、Ｙ、Ｚ軸の加速度を示すセンサ値を、仮想的に初期姿勢のＸ、Ｙ、Ｚ軸の加速度Ａｘ、Ａｙ、Ａｚに変換するために、回転のセンサ値を使用する。回転のセンサ値は、角速度ωｉ（但し、i= pitch、roll、azimuth）であるため、相対位置算出部１０１は、入力された回転のセンサ値を、以下の式（１）に基づいて積分し、初期姿勢からの変化角度θを算出する（ステップＳＴ１３）。
0006272572.tif 000002
【００２３】
相対位置算出部１０１は、ステップＳＴ１３で求めた変化角度θを用いて、pitchの回転行列、rollの回転行列、azimuthの回転行列を求める（ステップＳＴ１４）。
相対位置算出部１０１は、ステップＳＴ１４において、以下の式（２）に基づいてpitchの回転行列を求める。また、ステップＳＴ１４において、相対位置算出部１０１は、以下の式（３）に基づいてrollの回転行列を求める。また、相対位置算出部１０１は、ステップＳＴ１４において、以下の式（４）に基づいてazimuthの回転行列を求める。
0006272572.tif 000003
0006272572.tif 000004
0006272572.tif 000005
【００２４】
相対位置算出部１０１は、機器２００が移動している状態の姿勢の加速度のセンサ値ｒａｗＡｘ、ｒａｗＡｙ、ｒａｗＡｚを、以下の式（５）に基づいて、初期姿勢における加速度のセンサ値Ａｘ、Ａｙ、Ａｚに変換する（ステップＳＴ１５）。
0006272572.tif 000006
【００２５】
相対位置算出部１０１は、以下の式（６）に示すように、ステップＳＴ１５で変換した初期姿勢における加速度のセンサ値Ａｘ、Ａｙ、Ａｚから初期姿勢の重力加速度Ｇ０ｘ、Ｇ０ｙ、Ｇ０ｚを除去し、初期姿勢における機器２００のＸ、Ｙ、Ｚ軸の加速度ａｘ，ａｙ，ａｚを算出する（ステップＳＴ１６）。
0006272572.tif 000007
【００２６】
相対位置算出部１０１は、ステップＳＴ１６で算出した初期姿勢における機器２００のＸ、Ｙ、Ｚ軸の加速度ａｘ，ａｙ，ａｚを二重積分し、機器２００の相対位置ｄｘ、ｄｙ、ｄｚを算出する（ステップＳＴ１７）。
相対位置算出部１０１は、ステップＳＴ１７で算出した機器２００の相対位置ｄｘ、ｄｙ、ｄｚを、自己位置推定部１０４に出力する（ステップＳＴ１８）。
その後、相対位置算出部１０１は、機器２００の相対位置の算出を継続するか否か判定を行う（ステップＳＴ１９）。算出を継続する場合（ステップＳＴ１９；ＹＥＳ）、ステップＳＴ１３の処理に戻り、上述した処理を繰り返す。一方、算出を継続しない場合（ステップＳＴ１９；ＮＯ）、処理を終了する。
【００２７】
次に、図３のフローチャートのステップＳＴ２の処理を、図６および図７を参照しながらより詳細に説明する。
図６は、実施の形態１に係る表示制御装置１００の絶対位置推定部１０２の動作を示すフローチャートである。
図７は、実施の形態１に係る表示制御装置１００の絶対位置推定部１０２の画像特徴点の取得処理を示す図である。
図８は、実施の形態１に係る表示制御装置１００の撮像映像の映像フレームと三次元地図のマッチングのイメージを示す図である。
【００２８】
図６のフローチャートにおいて、絶対位置推定部１０２は、カメラ２０２から入力された撮像映像の映像フレームの画像特徴点を取得する（ステップＳＴ２１）。絶対位置推定部１０２が画像特徴点を取得する処理を図７に示している。
図７Ａはカメラ２０２の映像フレームを示し、図７Ｂは当該映像フレームにおける画像特徴点の判定処理を示している。
絶対位置推定部１０２は、例えば図７Ａに示す映像フレームが入力された場合、領域Ｏ内の画素Ｐに注目する（以下、注目画素Ｐと記載する、図７Ｂ参照）。注目画素Ｐを中心として、周囲に位置する周辺画素Ｑに、連続して一定個数以上、注目画素Ｐよりも明るいまたは暗い画素が存在するか否か判定する。図７Ｂの例では、絶対位置推定部１０２は、注目画素Ｐの周囲に位置する周辺画素Ｑの内、矢印Ｒで示した範囲の周辺画素Ｑｒに基づいて、注目画素Ｐよりも連続して一定個数以上（例えば、一定個数の５個に対して、９個）の明るい画素が存在すると判定する。絶対位置推定部１０２は、当該判定結果に基づいて、注目画素Ｐを画像特徴点として取得する。
【００２９】
次に、図８を参照して、撮像映像の映像フレームと三次元地図のマッチングイメージについて説明する。
図８Ａは、図７Ａで示した映像フレームである。図８Ｂは三次元地図データを示す図である。三次元地図データは、１点あたりにＸ，Ｙ，Ｚ座標の値を有する点群データである。図８Ｃは、カメラ２０２の位置２０２ａと、カメラ２０２の投影面２０２ｂと、三次元地図データ２０２ｃとの関係を示した図である。
図８Ｃに示すように、カメラ２０２の位置２０２ａを[Ｒ｜ｔ]とした場合、当該カメラ２０２の投影面２０２ｂ上の画像特徴点Ｓの２次元座標（ｕ，ｖ）と、三次元地図データ２０２ｃ上の点Ｔの三次元座標（Ｘ，Ｙ，Ｚ）は、以下の式（７）で示す関係を満たす。
0006272572.tif 000008
なお、式（７）において、Ａは、カメラ２０２の内部パラメータ、例えば画角、中心点等である。
【００３０】
0006272572.tif 000009
【００３１】
0006272572.tif 000010
0006272572.tif 000011
【００３２】
上述した図１０のフローチャートのステップＳＴ２３からステップＳＴ２６の具体的な処理内容を一例を挙げて説明する。なお、以下に示す処理は一例であり、適宜変更可能である。
絶対位置推定部１０２は、ステップＳＴ２１で取得した画像特徴点のうち、ｎ個の画像特徴点をランダムに選択し、選択したｎ個の画像特徴点についてステップＳＴ２３からステップＳＴ２５の処理を繰り返し実施する。絶対位置推定部１０２は、ステップＳＴ２５で算出した画像特徴点から得られた画像特徴点の２次元座標（ｕ´，ｖ´）と、ステップＳＴ２２で検索した画像特徴点の２次元座標（ｕ，ｖ）との差分が、ｎ個の画像特徴点の間でそれぞれほぼ同値である場合に、ステップＳＴ２６において差分が閾値以下であるか否かの判定を行う。
【００３３】
一方、ステップＳＴ２５で算出した画像特徴点から得られた画像特徴点の２次元座標（ｕ´，ｖ´）と、ステップＳＴ２２で検索した画像特徴点の２次元座標（ｕ，ｖ）との差分が、ｎ個の画像特徴点の間でほぼ同値でなかった場合に、絶対位置推定部１０２は再びステップＳＴ２１で取得した画像特徴点から、ｎ個の画像特徴点をランダムに選択し直す。絶対位置推定部１０２は、選択し直したｎ個の画像特徴点に対して上述した処理を繰り返し実施する。
【００３４】
次に、図３のフローチャートのステップＳＴ３の処理を、図９を参照しながらより詳細に説明する。
図９は、実施の形態１に係る表示制御装置１００の自己位置推定部１０４の動作を示すフローチャートである。図９のフローチャートでは、機器２００の自己位置を推定するものとして説明する。
自己位置推定部１０４は、絶対位置推定部１０２から、機器２００の絶対位置（Ｘ１）が入力されているか否か判定を行う（ステップＳＴ３１）。機器２００の絶対位置（Ｘ１）が入力されている場合（ステップＳＴ３１；ＹＥＳ）、自己位置推定部１０４は入力された機器２００の絶対位置（Ｘ１）を、自己位置（Ｘ）とする（ステップＳＴ３２）。一方、機器２００の絶対位置（Ｘ１）が入力されていない場合（ステップＳＴ３１；ＮＯ）、自己位置推定部１０４はさらに機器２００の相対位置（Ｘ２）が入力されているか否か判定を行う（ステップＳＴ３３）。
【００３５】
機器２００の相対位置（Ｘ２）が入力されている場合（ステップＳＴ３３；ＹＥＳ）、自己位置推定部１０４は、前回の自己位置（Ｘｐｒｅ）に、機器２００の相対位置（Ｘ２）を累積加算して、自己位置（Ｘ）を算出する（ステップＳＴ３４）。一方、機器２００の相対位置（Ｘ２）が入力されていない場合（ステップＳＴ３３；ＮＯ）、自己位置推定部１０４は、前回の自己位置（Ｘｐｒｅ）をそのまま適用して自己位置（Ｘ）を算出する（ステップＳＴ３５）。
自己位置推定部１０４は、ステップＳＴ３２、ステップＳＴ３４またはステップＳＴ３５で設定された自己位置（Ｘ）を、機器２００の自己位置として付加情報生成部１０５に出力し（ステップＳＴ３６）、処理を終了する。
【００３６】
以上のように、この実施の形態１によれば、センサの検知情報から機器の相対位置を自律航法により算出する相対位置算出部１０１と、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部１０２と、機器の絶対位置が推定された場合には、当該絶対位置を用いて機器の自己位置を推定し、機器の絶対位置が推定されなかった場合には、相対位置算出部１０１が算出した機器の相対位置を用いて機器の自己位置を推定する自己位置推定部１０４とを備えるように構成したので、撮像映像の映像フレームと三次元地図とのマッチングにより、対象となる機器の自己位置の情報を得ることができる。これにより、多数のマーカを設置することなく、自律航法で算出した相対位置を、絶対位置を用いて修正することができる。
【００３７】
実施の形態２．
この実施の形態２では、画像特徴点の数に基づいて機器２００の自己位置を推定する構成を示す。
なお、実施の形態２の表示制御装置１００の構成は、図１で示した実施の形態１の表示制御装置１００の構成と同一であるためブロック図の記載を省略する。また。実施の形態２の表示制御装置１００の各構成は、実施の形態１で使用した符号と同一の符号を付して説明する。
【００３８】
絶対位置推定部１０２は、実施の形態１で示した処理加えて、カメラ２０２から入力された撮像映像の映像フレームから取得した画像特徴点の数を計測する。絶対位置推定部１０２は、計測した画像特徴点の数を、自己位置推定部１０４に出力する。自己位置推定部１０４は、絶対位置推定部１０２から入力された画像特徴点の数を参照し、当該画像特徴点の数が、予め設定した個数ｎ個以上である場合に、絶対位置推定部１０２が推定した機器２００の絶対位置を、機器２００の自己位置に適用する。
【００３９】
次に、表示制御装置１００の動作について説明する。
表示制御装置１００全体の動作は、実施の形態１の図３で示したフローチャートと同一であるため、説明を省略する。
実施の形態１とは異なる処理を行う図３のフローチャートのステップＳＴ２の処理の詳細について、図１０を参照しながら説明する。
図１０は、実施の形態２に係る表示制御装置１００の絶対位置推定部１０２の動作を示すフローチャートである。なお、図１０のフローチャートにおいて、図６で示した実施の形態１のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
【００４０】
絶対位置推定部１０２は、ステップＳＴ２２において画像特徴点の２次元座標（ｕ，ｖ）を取得すると、当該画像特徴点の個数を計測する（ステップＳＴ４１）。絶対位置推定部１０２は、ステップＳＴ２３からステップＳＴ２８の処理を行い、ステップＳＴ２８で推定した機器２００の絶対位置およびステップＳＴ４１で取得した画像特徴点の個数を、自己位置推定部１０４に出力し（ステップＳＴ４２）、処理を終了する。
【００４１】
次に、図３のフローチャートのステップＳＴ３の処理の詳細について、図１１のフローチャートを参照しながら説明する。
図１１は、実施の形態２に係る表示制御装置１００の自己位置推定部１０４の動作を示すフローチャートである。なお、図１１のフローチャートにおいて、図９で示した実施の形態１のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
自己位置推定部１０４は、ステップＳＴ３１において機器２００の絶対位置（Ｘ１）が入力されていると判断した場合に（ステップＳＴ３１；ＹＥＳ）、絶対位置推定部１０２が計測した画像特徴点の個数が予め設定したｎ個以上であるか否か判定を行う（ステップＳＴ５１）。画像特徴点の個数がｎ個以上であった場合（ステップＳＴ５１；ＹＥＳ）、ステップＳＴ３２の処理に進む。一方、画像特徴点の個数がｎ個未満であった場合（ステップＳＴ５１；ＮＯ）。ステップＳＴ３３の処理に進む。
【００４２】
以上のように、この実施の形態２によれば、絶対位置推定部１０２が、映像フレーム内の画像特徴点の数を計測し、自己位置推定部１０４が、計測された画像特徴点の数が予め設定した個数以上であった場合に、推定された機器の絶対位置を用いて、機器の自己位置を推定するように構成したので、撮像映像の映像フレームがフラットで画像特徴点の取得に誤差が生じやすい環境においても、機器の自己位置の推定における誤差の発生を抑制することができる。
【００４３】
実施の形態３．
この実施の形態３では、撮像映像の映像フレームの領域の照度に基づいて、自己位置を推定する構成を示す。
図１２は、実施の形態３に係る表示制御装置１００Ａの構成を示すブロック図である。
実施の形態３に係る表示制御装置１００Ａは、図１に示した実施の形態１の表示制御装置１００に照度情報取得部１０７を追加して構成している。また、実施の形態１の表示制御装置１００の自己位置推定部１０４に替えて、自己位置推定部１０４ａを備えて構成している。
以下では、実施の形態１に係る表示制御装置１００の構成要素と同一または相当する部分には、実施の形態１で使用した符号と同一の符号を付して説明を省略または簡略化する。
【００４４】
照度情報取得部１０７は、機器２００の照度センサ等のセンサ２０１から、機器２００の周辺の明るさを示す照度情報を取得する。照度情報取得部１０７は、取得した照度情報を自己位置推定部１０４ａに出力する。自己位置推定部１０４ａは、照度情報取得部１０７から入力された照度情報を参照し、照度が予め設定した照度以上であった場合に、絶対位置推定部１０２が推定した機器２００の絶対位置を、機器２００の自己位置に適用する。
【００４５】
次に、表示制御装置１００Ａのハードウェア構成例を説明する。なお、実施の形態１と同一の構成の説明は省略する。
表示制御装置１００Ａにおける照度情報取得部１０７および自己位置推定部１０４ａは、図２Ａで示した処理回路１００ａ、または図２Ｂで示したメモリ１００ｃに格納されるプログラムを実行するプロセッサ１００ｂである。
【００４６】
次に、表示制御装置１００Ａの動作について説明する。
表示制御装置１００Ａ全体の動作は、実施の形態１の図３で示したフローチャートと同一であるため、説明を省略する。
実施の形態１とは異なる処理を行う、図３のフローチャートのステップＳＴ３の処理の詳細について、図１３を参照しながら説明する。
図１３は、実施の形態２に係る表示制御装置１００Ａの自己位置推定部１０４ａの動作を示すフローチャートである。なお、図１４のフローチャートにおいて、図９で示した実施の形態１のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
自己位置推定部１０４ａは、ステップＳＴ３１において機器２００の絶対位置（Ｘ１）が入力されていると判断した場合に（ステップＳＴ３１；ＹＥＳ）、照度情報取得部１０７から入力された照度情報が示す照度が、予め設定した照度の値以上であるか否か判定を行う（ステップＳＴ５２）。照度が予め設定した照度の値以上であった場合（ステップＳＴ５２；ＹＥＳ）、ステップＳＴ３２の処理に進む。一方、照度が予め設定した照度の値未満であった場合（ステップＳＴ５２；ＮＯ）、ステップＳＴ３３の処理に進む。
【００４７】
以上のように、この実施の形態３によれば、機器の周辺の明るさを示す照度情報を取得する照度情報取得部１０７を備え、自己位置推定部１０４ａは、照度情報が予め設定した照度以上であった場合に、推定された機器の絶対位置を用いて機器の自己位置を推定するように構成したので、映像フレームを撮像する機器の周囲が暗く、画像特徴点の取得に誤差が生じやすい環境においても、機器の自己位置の推定における誤差の発生を抑制することができる。機器の周囲の照度に応じて画像特徴点の取得に誤差が生じやすい環境とは、例えば、夜間、日陰およびトンネル等である。
【００４８】
なお、上記実施の形態３では、実施の形態１で示した表示制御装置１００に照度情報取得部１０７を追加して適用する構成を示したが、実施の形態２で示した表示制御装置１００に照度情報取得部１０７を追加して適用してもよい。
【００４９】
実施の形態４．
この実施の形態４では、相対位置算出部１０１が算出した相対位置および絶対位置推定部１０２が推定した絶対位置の採用を制限する構成を示す。
図１４は、実施の形態４に係る表示制御装置１００Ｂの構成を示すブロック図である。
実施の形態４に係る表示制御装置１００Ｂは、図１に示した実施の形態１の表示制御装置１００に閾値設定部１０８を追加して構成している。また、実施の形態１の表示制御装置１００の自己位置推定部１０４に替えて、自己位置推定部１０４ｂを備えて構成している。
【００５０】
以下では、実施の形態１に係る表示制御装置１００の構成要素と同一または相当する部分には、実施の形態１で使用した符号と同一の符号を付して説明を省略または簡略化する。
閾値設定部１０８は、相対位置算出部１０１が算出した相対位置、および絶対位置推定部１０２が推定した絶対位置の採用を制限する目的で、自己位置推定部１０４ｂに対して閾値を設定する。
表示制御装置１００が、例えば、一定の速度で移動する利用者が携帯するタブレット端末またはスマートフォン等に適用される場合、閾値設定部１０８は、利用者の移動速度の平均値、または利用者の移動速度の平均値に例えば数十パーセントの誤差許容値を加算した値、を閾値として設定する。加算する誤差許容値は、機器２００の相対位置に対する閾値を設定する場合、センサ２０１からの出力値のノイズを除外するための値となる。同様に、加算する誤差許容値は、機器２００の絶対位置に対する閾値を設定する場合、絶対位置推定部１０２における画像特徴点の抽出誤りを除外するための値となる。
なお、上述した閾値の設定方法は一例であり、閾値設定部１０８は、表示制御装置１００が適用される機器等に対応した閾値の設定を行う。
【００５１】
自己位置推定部１０４ｂは、相対位置算出部１０１が算出した機器２００の相対位置と、前回算出の相対位置との差分が、閾値β以下であった場合には、算出された相対位置を用いて機器２００の自己位置を推定する。
自己位置推定部１０４ｂは、絶対位置推定部１０２が推定した機器２００の絶対位置と、前回算出の絶対位置との差分が、閾値α以下であった場合には、推定された絶対位置を用いて機器２００の自己位置を推定する。
【００５２】
次に、表示制御装置１００Ｂのハードウェア構成例を説明する。なお、実施の形態１と同一の構成の説明は省略する。
表示制御装置１００Ｂにおける閾値設定部１０８および自己位置推定部１０４ｂは、図２Ａで示した処理回路１００ａ、または図２Ｂで示したメモリ１００ｃに格納されるプログラムを実行するプロセッサ１００ｂである。
【００５３】
次に、表示制御装置１００Ｂの動作について説明する。
表示制御装置１００Ｂ全体の動作は、実施の形態１の図３で示したフローチャートと同一であるため、説明を省略する。
実施の形態１とは異なる処理を行う、図３のフローチャートのステップＳＴ３の処理の詳細について、図１５を参照しながら説明する。
図１５は、実施の形態４に係る表示制御装置１００Ｂの自己位置推定部１０４ｂの動作を示すフローチャートである。
なお、図１５のフローチャートの処理が行われる前に、閾値設定部１０８は、自己位置推定部１０４ｂに対して閾値αおよび閾値βを設定しているものとする。また、図１５のフローチャートにおいて、図９で示した実施の形態１のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
【００５４】
自己位置推定部１０４ｂは、ステップＳＴ３１において機器２００の絶対位置（Ｘ１）が入力されていると判断した場合に（ステップＳＴ３１；ＹＥＳ）、絶対位置（Ｘ１）と前回算出した絶対位置（Ｘ１ｐｒｅ）との差分の絶対値が、閾値設定部１０８が設定した閾値α以下であるか否か判定を行う（ステップＳＴ６１）。差分の絶対値が閾値α以下である場合（ステップＳＴ６１；ＹＥＳ）、自己位置推定部１０４ｂは、絶対位置（Ｘ１）を機器２００の自己位置Ｘとする（ステップＳＴ３２）。また、自己位置推定部１０４ｂは、前回の絶対位置（Ｘ１ｐｒｅ）を今回の絶対位置（Ｘ１）で上書きする（ステップＳＴ６２）。その後、フローチャートはステップＳＴ３６の処理に進む。一方、差分の絶対値が閾値α以下でない場合（ステップＳＴ６１；ＮＯ）、ステップＳＴ３５の処理に進む。
【００５５】
自己位置推定部１０４ｂは、ステップＳＴ３１において絶対位置（Ｘ１）が入力されていないと判断した場合に（ステップＳＴ３１；ＮＯ）、当該機器２００の相対位置（Ｘ２）が入力されているか否か判定を行う（ステップＳＴ３３）。相対位置（Ｘ２）が入力されている場合（ステップＳＴ３３；ＹＥＳ）、相対位置（Ｘ２）と前回算出した相対位置（Ｘ２ｐｒｅ）との差分の絶対値が、閾値設定部１０８が設定した閾値β以下であるか否か判定を行う（ステップＳＴ６３）。差分の絶対値が閾値β以下である場合（ステップＳＴ６３；ＹＥＳ）、自己位置推定部１０４ｂは、前回の自己位置Ｘｐｒｅに相対位置（Ｘ２）を累積加算して、機器２００の自己位置Ｘを算出する（ステップＳＴ３４）。また、自己位置推定部１０４ｂは、前回の相対位置（Ｘ２ｐｒｅ）を今回の相対位置（Ｘ２）に上書きする（ステップＳＴ６４）。その後、フローチャートはステップＳＴ３６の処理に進む。
一方、差分の絶対値が閾値β以下でない場合（ステップＳＴ６３；ＮＯ）、またはステップＳＴ３３において相対位置（Ｘ２）が入力されていないと判断した場合に（ステップＳＴ３３；ＮＯ）、ステップＳＴ３５の処理に進む。
【００５６】
以上のように、この実施の形態４によれば、相対位置算出部１０１が算出した機器の相対位置および絶対位置推定部１０２が推定した機器の絶対位置を適用するか否かを判断するための閾値を設定する閾値設定部１０８を備え、自己位置推定部１０４ｂが、絶対位置推定部１０２が機器の絶対位置を推定した場合、且つ今回推定された機器の絶対位置と、前回推定された機器の絶対位置との差分が、設定された閾値以下であった場合に、今回推定された機器の絶対位置から機器の自己位置を推定し、絶対位置推定部１０２が機器の絶対位置を推定しなかった場合、且つ相対位置算出部１０１において今回算出された機器の相対位置と、前回算出された機器の相対位置との差分が、設定された閾値以下であった場合に、今回算出された機器の相対位置から機器の自己位置を推定するように構成したので、相対位置の算出または絶対位置の推定において計算エラーが発生した場合であっても、機器の自己位置の推定における誤差の発生を抑制することができる。
【００５７】
なお、上記実施の形態４では、実施の形態１で示した表示制御装置１００に閾値設定部１０８を追加して適用する構成を示したが、実施の形態２で示した表示制御装置１００および実施の形態３で示した表示制御装置１００Ａに閾値設定部１０８を追加して適用してもよい。
【００５８】
実施の形態５．
この実施の形態５では、相対位置算出部１０１において相対位置が算出されるタイミングと、絶対位置推定部１０２において絶対位置が推定されるタイミングとの違いを吸収する構成を示す。
図１６は、実施の形態５に係る表示制御装置１００Ｃの構成を示すブロック図である。
実施の形態５に係る表示制御装置１００Ｃは、図１に示した実施の形態１の表示制御装置１００に処理時間計数部１０９およびバッファ制御部１１０を追加して構成している。
【００５９】
センサ２０１は、カメラ２０２の映像フレーム信号に同期させて、センサ値を相対位置算出部１０１に出力する。相対位置算出部１０１は、実施の形態１と同様に、機器２００の相対位置を算出する処理を行う。絶対位置推定部１０２は、実施の形態１と同様に、機器２００の絶対位置を算出する処理を行う。カメラ２０２は、撮像映像の映像フレームを、絶対位置推定部１０２に加えて、後述するバッファ制御部１１０にも出力する。
【００６０】
処理時間計数部１０９は、相対位置算出部１０１をモニタし、センサ２０１からセンサ値が入力されてから、相対位置を算出し、算出した相対位置をバッファ制御部１１０に出力するまでの時間Δｔ１を計数する。処理時間計数部１０９は、絶対位置推定部１０２をモニタし、カメラ２０２から映像フレームが入力されてから、絶対位置を算出し、算出した絶対位置をバッファ制御部１１０に出力するまでの時間Δｔ２を計数する。処理時間計数部１０９は、計数した時間Δｔ１および時間Δｔ２をバッファ制御部１１０に出力する。
【００６１】
ここで、絶対位置推定部１０２は、画像を取り扱うため、相対位置算出部１０１よりも処理時間を多く要する。そのため、時間Δｔ１と時間Δｔ２は、Δｔ１＜Δｔ２の関係を満たす。時間Δｔ１と時間Δｔ２について、図１７を参照しながら説明する。
図１７は、実施の形態５の表示制御装置１００Ｃの相対位置算出部１０１と絶対位置推定部１０２との出力タイミングを示すタイミングチャートである。
センサ値の出力および映像フレームの出力を、フレーム１からフレームＦ５で示している。フレームＦ１で出力されたセンサ値に基づいて相対位置算出部１０１が算出した相対位置の出力は、出力Ｆ１ａとなる。同様に、フレームＦ２で出力されたセンサ値に基づいて相対位置算出部１０１が算出した相対位置の出力は、出力Ｆ２ａとなる。出力Ｆ１ａの出力タイミングは、フレームＦ１で示したセンサ値が出力されてから時間Δｔ１後であり、出力Ｆ２ａの出力タイミングは、フレームＦ２で示したセンサ値が出力されてから時間Δｔ１後である。
【００６２】
次に、フレームＦ１で出力された映像フレームに基づいて絶対位置推定部１０２が推定した絶対位置の出力は、出力Ｆ１ｂとなる。同様に、フレームＦ４で出力された映像フレームに基づいて絶対位置推定部１０２が推定した絶対位置の出力は、出力Ｆ４ｂとなる。出力Ｆ１ｂの出力タイミングは、フレームＦ１で示した映像フレームが出力されてから時間Δｔ２後であり、出力Ｆ４ｂの出力タイミングは、フレームＦ４で示した映像フレームが出力されてから時間Δｔ２後である。
【００６３】
出力Ｆ１ｂと出力Ｆ１ａとの差分、および出力Ｆ４ｂと出力Ｆ４ａとの差分は、時間（Δｔ２−Δｔ１）で表される。絶対位置推定部１０２の絶対位置の出力である出力Ｆ１ｂを基準とした場合、対応する相対位置算出部１０１の相対位置の出力である出力Ｆ１ａは、出力Ｆ１ｂから時間（Δｔ２−Δｔ１）遡った出力となる。
【００６４】
バッファ制御部１１０は、相対位置算出部１０１から入力される相対位置および絶対位置推定部１０２から入力される絶対位置を一時格納する。バッファ制御部１１０は、カメラ２０２から入力される撮像映像の映像フレームを一時格納する。バッファ制御部１１０は、格納された絶対位置を基準に設定する。次に、バッファ制御部１１０は、処理時間計数部１０９から入力される時間Δｔ１およびΔｔ２に基づいて、基準に設定された絶対位置の映像フレームと同一の出力タイミングで出力されたセンサ値から算出された相対位置を自己位置推定部１０４に出力する。また、バッファ制御部１１０は、基準とした絶対位置を推定する際に用いた映像フレームを重畳処理部１０６に出力する。
【００６５】
表示制御装置１００Ｃのハードウェア構成例を説明する。なお、実施の形態１と同一の構成の説明は省略する。
表示制御装置１００Ｃにおける処理時間計数部１０９およびバッファ制御部１１０は、図２Ａで示した処理回路１００ａ、または図２Ｂで示したメモリ１００ｃに格納されるプログラムを実行するプロセッサ１００ｂである。
【００６６】
次に、表示制御装置１００Ｃの動作について説明する。
図１８は、実施の形態５に係る表示制御装置１００Ｃの動作を示すフローチャートである。なお、図１８のフローチャートにおいて、図３で示した実施の形態１のフローチャートと同一のステップには同一の符号を付し、説明を省略する。
相対位置算出部１０１は、カメラ２０２の映像フレームに同期して、センサ２０１からセンサ値が入力されると、対応する機器２００の相対位置を自律航法で計算する（ステップＳＴ１ａ）。相対位置算出部１０１は算出した機器２００の相対位置をバッファ制御部１１０に出力する。絶対位置推定部１０２は、カメラ２０２から撮像映像の映像フレームが入力されると、三次元地図データベース１０３に格納された三次元地図データとのマッチングを行い、機器２００の絶対位置を推定する（ステップＳＴ２）。絶対位置推定部１０２は、推定した機器２００の絶対位置をバッファ制御部１１０に出力する。
【００６７】
処理時間計数部１０９は、ステップＳＴ１の処理に要した時間Δｔ１およびステップＳＴ２の処理に要した時間Δｔ２を計数し、バッファ制御部１１０に出力する（ステップＳＴ７１）。バッファ制御部１１０は、ステップＳＴ７１で入力された時間Δｔ１および時間Δｔ２に基づいて、絶対位置推定部１０２が直近に推定した絶対位置を基準として、当該絶対位置から時間（Δｔ２−Δｔ１）遡った出力である相対位置を特定する（ステップＳＴ７２）。バッファ制御部１１０は、当該絶対位置およびステップＳＴ７２で特定した相対位置を、自己位置推定部１０４に出力する。また、バッファ制御部１１０は、基準とした絶対位置を推定する際に用いた映像フレームを重畳処理部１０６に出力する（ステップＳＴ７３）。その後、フローチャートはステップＳＴ３の処理に進む。
【００６８】
以上のように、この実施の形態５によれば、相対位置算出が相対位置を算出する処理に要した時間、および絶対位置推定部１０２が絶対位置を推定する処理に要した時間を計数する処理時間計数部１０９と、相対位置算出部１０１が算出した相対位置、絶対位置推定部１０２が推定した絶対位置、および映像フレームを一時格納し、処理時間計数部１０９が計数した時間に基づいて、絶対位置を基準として、当該絶対位置に対応する相対位置を特定するバッファ制御部１１０とを備えるように構成したので、相対位置算出に要する時間と、絶対位置推定に要する時間の差を吸収して、機器の自己位置を推定することができる。また、映像フレームとずれのないアノテーション映像を重畳したＡＲ表示を行うことができる。
【００６９】
なお、上記実施の形態５では、実施の形態１で示した表示制御装置１００に処理時間計数部１０９およびバッファ制御部１１０を追加して適用する構成を示したが、実施の形態２で示した表示制御装置１００および実施の形態３で示した表示制御装置１００Ａおよび実施の形態４で示した表示制御装置１００Ｂに追加して適用してもよい。
【００７０】
上記以外にも、本発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、各実施の形態の任意の構成要素の変形、または各実施の形態の任意の構成要素の省略が可能である。
【産業上の利用可能性】
【００７１】
この発明に係る表示制御装置は、マーカに含まれた絶対位置情報を読み取ることなく、自律航法で計算した相対位置を用いて機器の自己位置を推定することができるため、ナビゲーションシステム等に適用し、システム構築費用の増大を抑制しつつ、自己位置推定を実現するのに適している。
【符号の説明】
【００７２】
１００，１００Ａ，１００Ｂ，１００Ｃ  表示制御装置、１０１  相対位置算出部、１０２  絶対位置推定部、１０３  三次元地図データベース１０３、１０４，１０４ａ，１０４ｂ  自己位置推定部、１０５  付加情報生成部、１０６  重畳処理部、１０７  照度情報取得部、１０８  閾値設定部、１０９  処理時間計数部、１１０  バッファ制御部、２００  機器、２０１  センサ、２０２  カメラ、２０３  表示デバイス。
【要約】
センサ（２０１）の検知情報から機器（２００）の相対位置を自律航法により算出する相対位置算出部（１０１）と、撮像された映像フレームと三次元地図データとのマッチングを行い、機器の絶対位置を推定する絶対位置推定部（１０２）と、機器の絶対位置が推定された場合には、当該絶対位置を用いて機器の自己位置を推定し、機器の絶対位置が推定されなかった場合には、機器の相対位置を用いて機器の自己位置を推定する自己位置推定部（１０４）とを備える。【図１】
0006272572.tif 000012
【図２】
0006272572.tif 000013
【図３】
0006272572.tif 000014
【図４】
0006272572.tif 000015
【図５】
0006272572.tif 000016
【図６】
0006272572.tif 000017
【図７】
0006272572.tif 000018
【図８】
0006272572.tif 000019
【図９】
0006272572.tif 000020
【図１０】
0006272572.tif 000021
【図１１】
0006272572.tif 000022
【図１２】
0006272572.tif 000023
【図１３】
0006272572.tif 000024
【図１４】
0006272572.tif 000025
【図１５】
0006272572.tif 000026
【図１６】
0006272572.tif 000027
【図１７】
0006272572.tif 000028
【図１８】
0006272572.tif 000029