(57)【特許請求の範囲】
【請求項１】
自己位置情報を格納した外部デバイスと短距離無線通信を行う慣性航法を用いる携帯端末であって、
前記携帯端末の加速度を検知して加速度情報を出力する第１の検知部と、
画像を撮影する撮影部と、
前記外部デバイスと通信する通信部と、
前記通信部が前記外部デバイスと通信可能になると、前記外部デバイスから受信した位置情報を前記携帯端末の初期位置に設定すると共に、前記加速度情報のAC成分に基づいて撮影タイミングを予測し、前記外部デバイスの画像を前記撮影タイミングで撮影するよう前記撮影部を制御し、前記外部デバイスの撮影画像から推定したヨー角を前記携帯端末の初期方位に設定する制御部
を備えたことを特徴とする、携帯端末。
【請求項２】
前記携帯端末の方位情報を検知する第２の検知部を更に備え、
前記制御部は、前記外部デバイスの撮影画像から推定したヨー角と、前記加速度情報のDC成分及び前記方位情報から推定したロール角及びピッチ角を前記携帯端末の初期方位に設定することを特徴とする、請求項１記載の携帯端末。
【請求項３】
前記制御部は、前記通信部が前記外部デバイスと通信可能になると、前記加速度情報のAC成分及び前記方位情報に基づいて前記携帯端末が前記外部デバイスと接触する静止区間を推定し、前記静止区間で前記ロール角及び前記ピッチ角を推定することを特徴とする、請求項２記載の携帯端末。
【請求項４】
記憶部を更に備え、
前記制御部は、前記加速度情報を線加速度成分である前記AC成分と、重力成分である前記DC成分にフィルタリングして前記記憶部に格納することを特徴とする、請求項２又は３記載の携帯端末。
【請求項５】
自己位置情報を格納した外部デバイスと短距離無線通信を行う慣性航法を用いる携帯端末のコンピュータに、位置及び方位推定処理を行わせるプログラムであって、
前記携帯端末の通信部が前記外部デバイスと通信可能であるか否を判定する手順と、
前記通信部が前記外部デバイスと通信可能であると判定されると、前記外部デバイスから受信した位置情報を前記携帯端末の初期位置に設定する手順と、
前記携帯端末の加速度センサが出力する加速度情報のAC成分に基づいて撮影タイミングを予測する手順と、
前記外部デバイスの画像を前記撮影タイミングで撮影するよう前記携帯端末の撮影部を制御する手順と、
前記外部デバイスの撮影画像から推定したヨー角を前記携帯端末の初期方位に設定する手順
を前記コンピュータに実行させることを特徴とする、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯端末及び位置及び方位推定プログラムに関する。
【背景技術】
【０００２】
スマートホン（Smartphone）等の携帯端末には、携帯端末の位置及び方位（或いは、姿勢）を推定する機能を備えたものもある。携帯端末の位置及び方位を推定する方法としては、様々な方法が提案されている。携帯端末が推定した自己位置及び方位は、ナビゲーションに代表される種々のサービスを携帯端末のユーザに提供するのに使用される。
【０００３】
サービスの一例として、携帯端末の位置及び方位を推定することで、携帯端末と同じ空間中に配置されたデバイスに対する直感的なインタフェースを提供するサービスが挙げられる。例えば家庭での応用例では、携帯端末がテレビの近傍に位置しておりテレビを向いた方位を有すると、携帯端末にテレビの番組表を表示することでテレビの簡単、且つ、直感的な操作が可能なインタフェースを提供できる。又、オフィスでの応用例では、携帯端末がプリンタの近傍に位置しておりプリンタを向いた方位で一定時間静止すると、携帯端末が表示している内容をプリンタで印刷する等のプリンタの簡単、且つ、直感的な操作が可能なインタフェースを提供できる。
【０００４】
加速度センサ、ジャイロセンサ、地磁気センサ等が搭載された携帯端末では、慣性航法を利用して一定時間内で携帯端末の位置及び方位を推定することができる。しかし、慣性航法を利用する際には、携帯端末の初期位置及び初期方位（又は、初期姿勢）を予め決めておく必要である。従来、飛行機や船舶用の慣性航法装置では、イニシャルアライメント（Initial Alignment）と呼ばれる初期設定により、比較的高性能の慣性センサを利用して慣性航法装置の静止状態で姿勢等の状態量の初期値を決定する。しかし、このような初期設定には、比較的高性能の慣性センサを利用しなければならないので、一般的な携帯端末に搭載されているＭＥＭＳ（Micro Electro Mechanical Systems）センサの性能では、このような初期設定に対応することができない。
【０００５】
一方、室外で地磁気センサ、ＧＰＳ（Global Positioning System）センサ等で検知された情報を利用して携帯端末の位置及び方位を推定する方法もある。しかし、工場、オフィス等の室内では、地磁気が乱れて磁気センサで検知された情報の精度が低下し、ＧＰＳセンサによる検知を行えない場合もあるため、この方法を室内における携帯端末の位置及び方位の推定に適用することは難しい。
【０００６】
尚、例えば特許文献１のように、光学的に読み取られる専用タグを利用することにより携帯端末の姿勢を検知する方法も提案されている。しかし、携帯端末を専用タグを光学的に読み取れる位置まで移動させて読み取りが完了するまで携帯端末を静止状態に保つ必要があり、室内に専用タグを多数設けるには設置コストがかかるので、家庭やオフィスでの応用例には適さない。
【０００７】
このように、従来技術では、携帯端末に搭載されている比較的安価なセンサを利用して、位置及び方位の検知精度が携帯端末の運動状態に大きく影響されないように初期位置及び初期方位（又は、初期姿勢）を決定することは難しい。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許第７２８７７０６号公報
【特許文献２】特表２０１０−５２０６８８号公報
【特許文献３】特開２００６−１９４７２５号公報
【特許文献４】特開２００７−１８４５１号公報
【特許文献５】特開２００８−３３５２６号公報
【特許文献６】特開２００９−２８７９４０号公報
【特許文献７】特開２０１０−２７１１６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来技術では、携帯端末に搭載されている比較的安価なセンサを利用して、携帯端末の位置及び方位を高精度に検知することは難しいという問題があった。
【００１０】
そこで、本発明は、携帯端末に搭載されている比較的安価なセンサを利用して、携帯端末の位置及び方位を高精度に検知することが可能な携帯端末及び位置及び方位推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一観点によれば、自己位置情報を格納した外部デバイスと短距離無線通信を行う慣性航法を用いる携帯端末であって、前記携帯端末の加速度を検知して加速度情報を出力する第１の検知部と、画像を撮影する撮影部と、前記外部デバイスと通信する通信部と、前記通信部が前記外部デバイスと通信可能になると、前記外部デバイスから受信した位置情報を前記携帯端末の初期位置に設定すると共に、前記加速度情報のAC成分に基づいて撮影タイミングを予測し、前記外部デバイスの画像を前記撮影タイミングで撮影するよう前記撮影部を制御し、前記外部デバイスの撮影画像から推定したヨー角を前記携帯端末の初期方位に設定する制御部を備えたことを特徴とする携帯端末が提供される。
【００１２】
本発明の一観点によれば、自己位置情報を格納した外部デバイスと短距離無線通信を行う慣性航法を用いる携帯端末のコンピュータに、位置及び方位推定処理を行わせるプログラムであって、前記携帯端末の通信部が前記外部デバイスと通信可能であるか否を判定する手順と、前記通信部が前記外部デバイスと通信可能であると判定されると、前記外部デバイスから受信した位置情報を前記携帯端末の初期位置に設定する手順と、前記携帯端末の加速度センサが出力する加速度情報のAC成分に基づいて撮影タイミングを予測する手順と、前記外部デバイスの画像を前記撮影タイミングで撮影するよう前記携帯端末の撮影部を制御する手順と、前記外部デバイスの撮影画像から推定したヨー角を前記携帯端末の初期方位に設定する手順を前記コンピュータに実行させることを特徴とするプログラムが提供される。
【発明の効果】
【００１３】
開示の携帯端末及び位置及び方位推定プログラムによれば、携帯端末に搭載されている比較的安価なセンサを利用して、携帯端末の位置及び方位を高精度に検知することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施例における携帯端末のハードウェア構成の一例を示すブロック図である。
【図２】携帯端末の位置と方位の自由度を説明する図である。
【図３】ＮＦＣタグの位置取得処理を説明する斜視図である。
【図４】携帯端末の推定位置を表す座標系の一例を示す図である。
【図５】携帯端末の初期方位の推定処理を説明する図である。
【図６】携帯端末の初期方位の推定処理を説明するフローチャートである。
【図７】ＮＦＣタグと連動した携帯端末の運動状態の推定を説明するフローチャートである。
【図８】携帯端末の状態推定処理を説明するフローチャートである。
【図９】３軸線加速度とN=1の場合のＳＭＡを示す図である。
【図１０】撮影タイミング決定処理を説明する図である。
【図１１】撮影タイミング決定処理を説明するフローチャートである。
【図１２】静止区間の決定処理を説明するフローチャートである。
【図１３】Roll角及びPitch角を推定処理を説明する図である。
【図１４】タグ画像の特徴抽出及び携帯端末の方位計算を説明する図である。
【図１５】携帯端末の方位計算の一例を説明する図である。
【発明を実施するための形態】
【００１５】
開示の携帯端末及び位置及び方位推定プログラムでは、自己位置情報を格納した外部デバイスと短距離無線通信を行う携帯端末の加速度情報を第１の検知部で検知し、携帯端末の方位情報を第２の検知部で検知する。携帯端末の制御部は、携帯端末が外部デバイスと短距離無線通信が可能な位置まで移動すると、外部デバイスから受信した位置情報を携帯端末の初期位置に設定すると共に、加速度情報のAC成分に基づいて撮影部による外部デバイスの撮影タイミングを予測する。制御部は、外部デバイスの画像を予測した撮影タイミングで撮影するよう撮影部を制御し、外部デバイスの撮影画像から推定したヨー角を携帯端末の初期方位に設定する。
【００１６】
制御部は、外部デバイスの撮影画像から推定したヨー角と、加速度情報のDC成分及び方位情報から推定したロール角及びピッチ角を携帯端末の初期方位に設定しても良い。
【００１７】
以下に、開示の携帯端末及び位置及び方位推定プログラムの各実施例を図面と共に説明する。
【実施例】
【００１８】
図１は、本発明の一実施例における携帯端末のハードウェア構成の一例を示すブロック図である。図１において、携帯端末５００は、ＣＰＵ５０１、記憶部５０２、テンキー等を含む入力部５０３、表示部５０４、通信部５０５、及びセンサ部５０６を有する。この例では、記憶部５０２、入力部５０３、表示部５０４、通信部５０５、及びセンサ部５０６がバス５０７を介してＣＰＵ５０１に接続されているが、バス５０７を用いることなく記憶部５０２、入力部５０３、表示部５０４、通信部５０５、及びセンサ部５０６を夫々直接ＣＰＵ５０１に接続した構成であっても良い。バス５０７を介さずに直接ＣＰＵ５０１と信号の送受信を行う場合、バス５０７上のトラフィックの問題が軽減できる。図１に示す如きハードウェア構成を有するスマートホンは周知である。
【００１９】
入力部５０３の少なくとも一部及び表示部５０４は、タッチパネル等により一体的に設けられていても良い。センサ部５０６は、例えば加速度センサ５０６ａ、ジャイロセンサ（又は、ジャイロスコープ）５０６ｂ、及びカメラ５０６ｃを有する。センサ部５０６は、例えば地磁気センサ、ＧＰＳセンサ等を更に有しても良い。
【００２０】
ＣＰＵ５０１は、携帯端末５００全体の制御を司り、位置及び方位推定プログラムを含む各種プログラムを実行することで携帯端末５００の各機能を実現できる。記憶部５０２は、ＣＰＵ５０１が実行するプログラム、及びＣＰＵ５０１が実行する算出処理等の中間データ、例えば地図データ等を含む各種データを格納する。記憶部５０２は、例えばＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）等で形成可能である。入力部５０２は、携帯端末５００にコマンドやデータを入力する際にユーザにより操作される。表示部５０３は、入力部５０２からの入力情報、ユーザへのメッセージ、各種操作メニュー、地図等を表示する。通信部５０５は、他の装置（図示せず）と無線通信を行う。
【００２１】
携帯端末５００に少なくとも位置及び方位推定機能を持たせるプログラム（位置及び方位推定プログラム）は、ＣＰＵ５０１を慣性航法を用いた位置及び方位推定機能を有する携帯端末５００として動作させる。プログラムは、コンピュータ読み取り可能な記憶媒体に格納されていても良い。コンピュータ読み取り可能な記憶媒体は、例えばＩＣ（Integrated Circuit）カードメモリ等の半導体記憶装置、フロッピー（登録商標）ディスク等の磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ等の可搬型記録媒体に限定されるものではなく、ＣＰＵ５００でアクセス可能な各種記録媒体を含む。又、コンピュータ読み取り可能な記憶媒体は、例えば記憶部５０２で形成されても良い。
【００２２】
言うまでもなく、ＣＰＵ５０１は、位置及び方位推定機能に加え、各種プログラムを実行することで携帯端末５００の通話機能、撮影機能等の各種機能の少なくとも一部を更に実現しても良い。
【００２３】
スマートホンは携帯端末５００の一例である。携帯端末５００は、無線通信機能、加速度検知機能、方位（又は、姿勢）検知機能及び撮影機能を備えた電子装置であれば特に限定されない。無線通信機能は、例えば無線発信機及び無線受信機を含む通信部５０５で実現可能であり、少なくとも後述する短距離無線通信（ＮＦＣ：Near Field Communication）で周知のＮＦＣタグ１０と双方向無線通信を行う機能を含む。ＮＦＣタグ１０に情報を書き込む必要がない場合には、無線通信機能は、少なくともＮＦＣタグ１０に格納された情報を読み取るタグリーダ５０５−１を含む通信部５０５で実現可能である。
【００２４】
加速度検知機能は、例えばセンサ部５０６の加速度センサ（又は、加速度検知部）５０６ａで実現可能である。方位検知機能は、例えばセンサ部５０６のジャイロセンサ（又は、姿勢検知部）５０６ｂで実現可能である。撮影機能は、例えばセンサ部５０６のデジタルカメラ、デジタルビデオカメラ等のカメラ（撮影部又は撮像部）５０６ｃで実現可能である。
【００２５】
図２は、携帯端末の位置と方位の自由度を説明する図である。図２は、空間中の６自由度（位置について３自由度、方位（又は、姿勢）について３自由度）を検知する場合を示す。図２において、X, Y, Zは携帯端末５００の位置が表されるXYZ座標系の３軸を示し、携帯端末５００の方位はX, Y, Z軸を中心とした矢印の如き回転角度Roll, Pitch, Yawで表される。
【００２６】
次に、携帯端末５００の動作を図３以降と共に説明する。図３は、ＮＦＣタグの位置取得処理を説明する斜視図である。
【００２７】
先ず、携帯端末５００を使用する環境、例えば家庭或いはオフィスにおける室内の任意の位置にＮＦＣタグ１０を設置する。ＮＦＣタグ１０は、携帯端末５００と短距離無線通信（ＮＦＣ：Near Field Communication）を行う機能を有する外部デバイスの一例である。ＮＦＣタグ１０は、例えば携帯端末５００を保持するユーザが携帯端末５００をＮＦＣタグ１０に対して翳しやすい高さ位置の基準面１１に配置されている。基準面１１は、携帯端末５００の外部に設けられた重力方向と略垂直な水平面であり、この例ではテーブル等の上面である。
【００２８】
ＮＦＣは無線通信の国際規格である。携帯端末５００とＮＦＣタグ１０との間の通信には例えば13.56MHzの電波を使い、例えば10cm程度の近距離で例えば100kbps〜400kbpsの双方向通信が可能である。図３のように携帯端末５００がＮＦＣタグ１００と通信可能な近距離にあれば、通信部５０５によりＮＦＣタグ１０への情報の書き込み又はＮＦＣタグ１０から情報読み出しを行うことができる。
【００２９】
携帯端末５００の通信部５０５（例えば、タグリーダ５０５−１）は、携帯端末５００がＮＦＣタグ１０に近接するとＮＦＣタグ１０に格納されているタグ位置の情報を読み取る。携帯端末５００の通信部５０５がＮＦＣタグ１０のタグ位置の情報をＮＦＣで読み取れるということは、携帯端末５００はＮＦＣタグ１０に近接しているので、読み取ったタグ位置は携帯端末５００の推定位置とする。図４は、携帯端末の推定位置を表す座標系の一例を示す図である。図４は、携帯端末５００の推定位置を表すXYZ座標系を示す。
【００３０】
ロール（Roll）角、ピッチ（Pitch）角及びヨー（Yaw）角で表される携帯端末５００の方位（又は、姿勢）は、以下の処理を実行することで推定する。
【００３１】
通信部５０５がＮＦＣタグ１０と通信可能となることでＮＦＣタグ１０を検知すると、加速度センサ５０６ａが検知した加速度及びジャイロセンサ５０６ｂが検知した方位のバッファリング処理を起動すると共に、検知された加速度に基づきリアルタイムで携帯端末５００の運動区間の判別処理を起動する。又、携帯端末５００の静止状態からの離脱（又は、運動状態への遷移）を後述する方法で検知すると、初期速度及び初期方位での予測に基づきＮＦＣタグ１０の撮影時刻（又は、撮影タイミング）を計算する。携帯端末５００でＮＦＣタグ１０を触れることで携帯端末５００の初期位置及び初期方位を設定することが前提となっている。このため、通信部５０５がＮＦＣタグ１０を検知し、加速度センサ５０６ａが検知した加速度の線加速度成分の積分値（即ち、速度）がゼロ（０）であると共にジャイロセンサ５０６ｂが検知した角速度がゼロ（０）であれば、携帯端末５００はＮＦＣタグ１０と近接した位置で静止していることがわかるので、携帯端末５００とＮＦＣタグ１０の接触状態を推定することができる。又、通信部５０５がＮＦＣタグ１０を検知できなくなると、即ち、ＮＦＣタグ１０と通信できなくなると、携帯端末５００とＮＦＣタグ１０とＮＦＣタグ１０の非接触状態を推定することができる。カメラ５０６ｃは、計算された撮影時刻にＮＦＣタグ１０の画像を撮影する。カメラ５０６ｃによるＮＦＣタグ１０の撮影が完了した時点で、携帯端末５００とＮＦＣタグ１０の接触状態、或いは、非接触状態を推定し、再度Roll角及びPitch角を推定するための静止区間を求める。求めた静止区間での重力ベクトルを計算することで、Roll角及びPitch角を推定する。又、撮影されたＮＦＣタグ１０の画像の特徴を抽出することで、携帯端末５００のYaw角を求める。静止区間で推定した携帯端末５００の位置及び方位で現在時刻まで位置及び方位を再度更新し、連続して位置及び方位を推定する。
【００３２】
これにより、携帯端末５００で水平面に配置したＮＦＣタグ１０を触れる（以下、タッチと言う）だけで、携帯端末５００の位置及び方位を推定できる。携帯端末５００でＮＦＣタグ１０をタッチする時には、携帯端末５００の１つの面（例えば、底面）をＮＦＣタグ１０の表面と接触させる。この際、タッチの衝撃の有無に影響されることなく、携帯端末５００の位置及び方位を精度良く推定できる。携帯端末５００の位置及び方位を推定するために、携帯端末５００を比較的長時間静止状態に保つといったユーザへ負担となる操作は不要である。複数のＮＦＣタグ１０へのタッチにより、例えば複数の推定位置の平均及び複数の推定方位の平均を求めることで、安価な慣性センサ（加速度センサ５０６ａ、ジャイロセンサ５０６ｂ）を利用した慣性航法で発生した推定誤差を減少させるようにしても良い。携帯端末５００の位置及び方位の推定には、携帯端末５００に搭載されている既存のセンサ５０６ａ，５０６ｂ，５０６ｃを利用すれば、携帯端末５００のハードウェア構成を変更したり、携帯端末５００を使用する環境に専用のデバイス等を多数設置したりする必要はない。
【００３３】
上記の如く、携帯端末５００に搭載されている加速度センサ５０６ａ、ジャイロセンサ５０６ｂ及びカメラ５０６ｃを連携させることにより、携帯端末５００の位置及び方位を推定する。携帯端末５００の位置を推定する際、携帯端末５００がＮＦＣタグ１０と通信可能な距離は例えば１cm〜10cmと短いことから、ＮＦＣタグ１０の位置（X, Y ,Z）を携帯端末５００の位置として推定する。又、携帯端末５００の方位（又は、姿勢）を推定する際、携帯端末５００がＮＦＣタグ１０と短距離無線通信が可能な位置まで移動したこと、即ち、携帯端末５００とＮＦＣタグ１０との間の短距離無線通信の開始をトリガとして利用し、加速度センサ５０６ａが検知した加速度及びジャイロセンサ５０６ｂが検知した角速度に基づいて携帯端末５００でＮＦＣタグ１０をタッチする静止区間を求めることで、携帯端末５００のRoll角とPitch角を特定する。更に、携帯端末５００の運動を予測し、ＮＦＣタグ１０の画像をカメラ５０６ｃで撮影して解析することで、携帯端末５００のYaw角を推定する。
【００３４】
次に、携帯端末５００の初期位置及び初期方位（又は、初期姿勢）の推定について、より詳細に説明する。
【００３５】
携帯端末５００の初期位置は、以下の手順ＳＴ１〜ＳＴ４で推定（又は、設定）することができる。先ず、手順ＳＴ１では、事前に絶対座標系で観測したＮＦＣタグ１０の位置（x,y,z）を計測する。手順ＳＴ２では、計測したＮＦＣタグ１０の位置をＮＦＣタグ１０の固有情報（即ち、位置情報）として周知の方法でＮＦＣタグ１０へ書き込む。例えば、通信部５０５のタグライタ５０５−２、或いは、初期設定用の専用装置のタグライタを用いてＮＦＣタグ１０の位置情報をＮＦＣタグ１０へ書き込む。手順ＳＴ３では、携帯端末５００でＮＦＣタグ１０をタッチする際、通信部５０５のタグリーダ５０５−１を用いて周知の方法でＮＦＣタグ１０の位置情報を読み出す。手順ＳＴ４では、タグリーダ５０５−１がＮＦＣタグ１０の位置情報を短距離無線通信で読み出すことから、読み出した位置情報が示すＮＦＣタグ１０の位置を絶対座標系の携帯端末５００の推定位置に設定する。
【００３６】
一方、携帯端末５００の初期方位（又は、初期姿勢）は、３軸直交加速度データで推定できるRoll角及びPitch角と、３軸直交加速度データで推定できないYaw角とをグループ分けして、グループ毎に別々の方法で推定する。図５は携帯端末の初期方位の推定処理を説明する図であり、図６は携帯端末の初期方位の推定処理を説明するフローチャートである。
【００３７】
図５は、加速度センサ５０６ａ及びジャイロセンサ５０６ｂの検知データをバッファリングするデータバッファリング期間、携帯端末５００の運動を予測してＮＦＣタグ１０の画像を撮影する画像撮影期間、センサ区間（又は、撮影タイミング）の特定及び撮影画像による方位推定期間、及び推定した方位での現在位置更新期間を夫々白抜きの矢印で示す。接近区間は携帯端末５００がＮＦＣタグ１０に接近する区間、静止区間は携帯端末５００がＮＦＣタグ１０をタッチして静止状態にある区間、離脱区間は携帯端末５００が静止状態から離脱して（即ち、移動して）運動状態に遷移する区間である。携帯端末５００は、時刻ｔ１からＮＦＣタグ１０と通信可能（即ち、ＮＦＣタグ１０を検知可能）となり、ＮＦＣタグ１０をタッチして時刻ｔ２に静止状態となり、時刻ｔ３からＮＦＣタグ１０と通信可能な状態から離脱する（即ち、ＮＦＣタグ１０を検知不能となる）。
【００３８】
図６において、ステップＳ１は、携帯端末５００がＮＦＣタグ１０と通信可能となることでＮＦＣタグ１０を検知すると加速度センサ５０６ａ及びジャイロセンサ５０６ｂの検知データ５０２Ａ，５０２Ｂの記憶部５０２へのバッファリングを起動し、加速度に基づきリアルタイムで運動区間の判別を開始する。例えば、携帯端末５００の通信部５０５がＮＦＣタグ１０との通信を開始すると、携帯端末５００がＮＦＣタグ１０と通信可能になったことを検知することができる。ステップＳ２は、携帯端末５００の静止状態からの離脱を検知する際、初期加度及び初期方位での予測に基づきカメラ５０６ｃによるＮＦＣタグ１０の撮影時刻を計算して記憶部５０２に格納する。ステップＳ３は、計算された撮影時刻にカメラ５０６ｃでＮＦＣタグ１０を撮影し、撮影画像のデータ５０２Ｃを記憶部５０２に格納する。
【００３９】
ステップＳ４は、撮影が完了した時点で、携帯端末５００とＮＦＣタグ１０との接触状態又は非接触状態を検知データ５０２Ａ，５０２Ｂに基づいて確認した上で、静止区間を特定して記憶部５０２に格納する。ステップＳ４と並行して、ステップＳ５は、撮影画像のデータ５０２Ｃから撮影画像の特徴を抽出し、抽出された特徴から携帯端末５００のYaw角を特定して記憶部５０２に格納する。ステップＳ４の後、ステップＳ６は、静止区間での加速度の検知データ５０２Ａに基づいて、携帯端末５００のRoll角及びPitch角を特定して記憶部５０２に格納する。ステップＳ５又はＳ６の後、ステップＳ７は、静止区間で推定した位置及び方位で現在時刻までの位置及び方位を再度更新して記憶部５０２に格納する。
【００４０】
３軸直交加速度データでRoll角及びPitch角を精度良く推定するために、後述する理由で、図６の処理を行うために、携帯端末５００がＮＦＣタグ１０へのタッチ操作中の、静止や離脱等の運動状態を先に推定して静止区間を特定する。又、Yaw角を特定するためにＮＦＣタグ１０の画像を撮影するタイミングを決定するため、携帯端末５００の運動状態に基づいた撮影タイミングを予測する。この結果、加速度による携帯端末５００のRoll角及びPitch角の特定、及び画像撮影による携帯端末５００のYaw角の特定が可能となる。
【００４１】
次に、ＮＦＣタグ１０と連動した携帯端末５００の運動状態の推定について説明する。携帯端末５００の運動状態の推定は、ＮＦＣタグ１０を検知してから、ＮＦＣタグ１０の画像の撮影が完了まで行う。図７は、ＮＦＣタグと連動した携帯端末の運動状態の推定を説明するフローチャートである。
【００４２】
図７において、携帯端末５００の状態推定のタイミングは以下のように決定することができる。携帯端末５００がＮＦＣタグ１０から一定距離（例えば、１cm〜10cm）まで近づくと、通信部５０５がＮＦＣタグ１０と通信可能になるため、ステップＳ１１はＮＦＣタグ検知イベントが発生する。このＮＦＣタグ検知イベントが発生した時点で、携帯端末５００の状態推定処理を起動する。このように、状態推定処理は、ＮＦＣタグ検知イベントが発生したときだけ起動されるため、携帯端末５００の消費電力を抑えることができる。
【００４３】
状態推定処理のためのフィルタリング処理は、以下のように行える。携帯端末５００の状態を推定するために、ステップＳ１２は加速度センサ５０６ａが検知した加速度データから重力ベクトルによる重力データ（成分）と携帯端末５００の運動による３軸線加速度（Linear Acceleration）データ（成分）とを分離する。重力データは、加速度データをローパスフィルタ（ＬＰＦ：Low-Pass Filter）を通すことで、加速度データのDC成分５０２Ａ−２として求められる。一方、３軸線加速度データは、加速度データをハイパスフィルタ（ＨＰＦ：High-Pass Filter）を通すことで加速度データのAC成分５０２Ａ−１として求められる。ＬＰＦ及びＨＰＦ自体は周知であるため、その説明は省略する。分離した３軸線加速度データを利用することで、携帯端末５００の運動状態又は静止状態を推定することができる。
【００４４】
バッファリング処理は、以下のように行える。携帯端末５００の状態を推定するために、ステップＳ１２はフィルタリングされた加速度のAC成分５０２Ａ１−１と加速度のDC成分５０２Ａ−２を記憶部５０２にバッファリングすると共に、ジャイロセンサ５０６ｂが検知したジャイロデータ５０２Ｂを記憶部５０２にバッファリングする。又、ステップＳ１２は、ステップＳ１１で検知されたＮＦＣタグ１０から受信したタグ位置の情報を携帯端末５００の初期位置の情報として記憶部５０２にバッファリングする。
【００４５】
携帯端末５００の静止状態及び運動状態（又は、静止状態からの離脱）は、以下のように推定することができる。重力データを除いた線加速度データは、携帯端末５００の運動状態を示すため、リアルタイムで携帯端末５００の運動状態を判別することが可能である。そこで、ステップＳ１３は、AC成分５０２Ａ−１から携帯端末５００の静止状態及び運動状態を推定する。
【００４６】
図８は、携帯端末の状態推定処理を説明するフローチャートである。図８の状態推定処理は、上記ステップＳ１２，Ｓ１３の処理に相当する。図８において、ステップＳ２１は、加速度センサ５０６ａが検知した加速度データを取得する。ステップＳ２２は、取得した加速度データを、重力データである加速度のDC成分５０２Ａ−２と、３軸線加速度データである加速度のAC成分５０２Ａ−１とに分離する。ステップＳ２３は、加速度のAC成分５０２Ａ−１のＳＭＡ（Signal Magnitude Area）を計算する。ＳＭＡは、一定時間T内の運動量の大きさ（エネルギー）を示す特徴量であり、以下の式から計算できる。
【００４７】
【数１】
0005708362.tif 000002
【数２】
0005708362.tif 000003
【００４８】
一定時間TM以上、ＳＭＡのレベルが図９に太い破線で示す運動及び静止閾値以下であれば、携帯端末５００が静止状態にあると判定できる。一方、ＳＭＡのレベルが運動及び静止閾値を超えると、携帯端末５００の静止状態から運動状態への遷移を検知でき、携帯端末５００が運動状態にあると判定できる。ステップＳ２４は、ＳＭＡのレベルに基づいて携帯端末５００が静止状態にあるか、或いは、運動状態にあるかを分類する。
【００４９】
図７の説明に戻るに、携帯端末５００の運動状態の推定に基づく撮影タイミングは、以下のように決定することができる。後述する画像処理に基づき携帯端末５００のYaw角を推定するため、携帯端末５００がＮＦＣタグ１０をタッチした後にＮＦＣタグ１０から離れたときに、携帯端末５００がＮＦＣタグ１０から適切な高さ位置（又は、距離）にある状態でＮＦＣタグ１０を撮影できるように、ステップＳ１４は適切な撮影タイミングを予測（即ち、計算）に基づいて決定する。撮影タイミングが早すぎたり遅すぎたりした場合、撮影されたＮＦＣタグ１０の画像データから画像処理に必要なＮＦＣタグ１０の特徴を抽出（又は、キャプチャ）できない可能性がある。そこで、携帯端末５００が適切な高さ位置（ＮＦＣタグ１０からの距離）でＮＦＣタグ１０を撮影できるように、ステップＳ１２でバッファリングした加速度のAC成分５０２Ａ−１と、ステップＳ１３で検知された静止状態からの運動状態への遷移（又は、静止状態からの離脱）を利用して撮影タイミング決定処理を行う。
【００５０】
図１０は、撮影タイミング決定処理を説明する図である。図１０において、Ｓはカメラ５０６ｃによるＮＦＣタグ１０の撮影に必要な最小撮影距離を示し、例えば予め指定されているものとする。図１０に示すように、ステップＳ１３で携帯端末５００の静止状態及び静止状態からの離脱が検知されると、ステップＳ１４で撮影タイミングを決定し、その後にステップＳ１５でカメラ５０６ｃによるＮＦＣタグ１０の撮影が行われる。ステップＳ１５の詳細については後述する。
【００５１】
【数３】
0005708362.tif 000004
【００５２】
【数４】
0005708362.tif 000005
【００５３】
次に、携帯端末５００の静止区間の決定について説明する。図７において、ステップＳ１６は、後述するように加速度のDC成分５０２Ａ−２に基づいて携帯端末５００のRoll角及びPitch角を推定するための携帯端末５００の静止区間を決定する。加速度のAC成分５０２Ａ−１のＳＭＡに基づき携帯端末５００の静止状態を検出することは可能であるが、加速度のAC成分５０２Ａ−１のみでは検知できない携帯端末５００の回転をも考慮するようにしても良い。そこで、この例では、ジャイロセンサ５０６ｂが検知したジャイロデータ５０２−ＢのＳＭＡも加速度のAC成分５０２Ａ−１のＳＭＡと同時に評価し、夫々のＳＭＡから求めた静止区間の時間軸上での共通区間（即ち、積集合）を推定用の静止区間に決定する。
【００５４】
図１２は、静止区間の決定処理を説明するフローチャートである。図１２において、ステップＳ４１は、バッファリングされたジャイロデータ５０２−Ｂと加速度のAC成分５０２Ａ−１を記憶部５０２から取得する。ステップＳ４２は、取得したジャイロデータ５０２−Ｂのと取得した加速度のAC成分５０２Ａ−１のＳＭＡを計算する。ステップＳ４３は、計算された各ＳＭＡが指定されたＳＭＡの閾値以下である区間を特定する。ステップＳ４４は、ステップＳ４３で特定された二つの区間の共通区間（即ち、積集合）を特定し、Roll角及びPitch角の推定用静止区間に決定する。
【００５５】
次に、決定された静止区間内の３軸直交加速度データを利用してRoll角及びPitch角を推定する処理を説明する。図７において、ステップＳ１７は、ステップＳ１６で決定した携帯端末５００の静止区間の３軸直交加速度データ（即ち、加速度のAC成分５０２Ａ−１）で重力ベクトル或いは重力データ（即ち、加速度データのDC成分５０２Ａ−２）を用いて携帯端末５００のRoll角及びPitch角を推定する。
【００５６】
図１３は、Roll角及びPitch角を推定処理を説明する図である。図１３のように、先ず、絶対座標系（X, Y, Z）のZ軸を重力方向に設定する。絶対座標系のY軸の周りを角度θだけ回転し（X, Y, Z→X', Y', Z'）、その後X'軸の周りを角度φだけ回転する（X', Y', Z'  →  X", Y", Z"）。又、座標系（X", Y", Z"）を実際に携帯端末５００に配置するボディ座標系（ローカル座標系）とし、ボディ座標系で観測した３軸加速度のデータに基づいて上記の回転角度φ，θを計算することで、携帯端末５００のRoll角φ及び Pitch角θを推定することができる。上記二つ回転の変換行列は次のようになる。
【００５７】
【数５】
0005708362.tif 000006
【００５８】
次に、カメラ５０６ｃで撮影したＮＦＣタグ１０の画像データに基づきYaw角を推定する処理を説明する。加速度センサ５０６ａで検知した加速度データに基づき携帯端末５００のYaw角を推定することは難しい。そこで、図７において、ステップＳ１５はカメラ５０６ｃで撮影したＮＦＣタグ１０の画像データに基づきYaw角を推定する。具体的には、先ずＮＦＣタグ１０の方位データを予めＮＦＣタグ１０に登録しておくか、或いは、例えば記憶部５０２内のデータベース（ＤＢ:Data-Base）に登録しておく。又、携帯端末５００のカメラ５０６ｃでＮＦＣタグ１０をステップＳ１４で決定された撮影タイミングで撮影する。更に、撮影したＮＦＣタグ１０の画像データの特徴を抽出することにより、カメラ５０６ｃとＮＦＣタグ１０の相対方位関係と登録したＮＦＣタグ１０の絶対方位に基づいて携帯端末５００の方位を計算する。
【００５９】
図１４は、タグ画像の特徴抽出及び携帯端末の方位計算を説明する図である。図１４に示すように、ステップＳ１０１は、撮影したＮＦＣタグ１０の生画像とテンプレート画像を用いて周知のテンプレートマッチングによりＮＦＣタグ１０の特徴を抽出する。この例では、ＮＦＣタグ１０の角部（即ち、タグコーナ）をＮＦＣタグ１０の特徴として抽出するので、テンプレート画像はＮＦＣタグ１０のコーナ画像（又は、コーナテンプレート）である。テンプレートは、事前に用意しておくことができ、ＮＦＣタグ１０に登録しておくことができる。又、テンプレートは、ＮＦＣタグ１０に対応するタグＩＤでアクセス可能に、遠隔サーバや携帯端末５００の記憶部５０２内のＤＢ等に登録しておくこともできる。
【００６０】
ステップＳ１０２は、抽出したＮＦＣタグ１０の特徴（図１４中、○印で示すタグコーナ）の幾何特徴に基づいてＮＦＣタグ１０とＮＦＣタグ１０の向き（即ち、カメラ５０６ｃに対する相対方位）を決定する。ステップＳ１０３は、ステップＳ１０２で決定したＮＦＣタグ１０の向きと、ＮＦＣタグ１０に登録されているＮＦＣタグ１０の絶対方位に基づき、カメラ５０６ｃ（即ち、携帯端末５００）の方位を計算する。これにより、図１４に示すように、絶対座標系Ｏ、タグ座標系Ｔ、及びテンプレートマッチングにより画像で抽出した差分ｄに対して、絶対座標系Ｏ下の携帯端末５００の座標系が求められる。
【００６１】
【数６】
0005708362.tif 000007
【００６２】
ところで、携帯端末５００は、ＮＦＣタグ１０を検知した後、予測に基づいて撮影タイミングを決定する代わりに、カメラ５０６ｃにより連続的に画像撮影を行うことにより、上記の如き画像処理でYaw角を推定しても良い。この場合、連続的に撮影された画像から特徴を多く抽出可能な画像を複数選択することができ、Yaw角の推定精度を向上させることができる。
【００６３】
又、静止区間の加速度データに基づいて推定したRoll角及びPitch角と、予測した撮影タイミングで撮影した画像に基づいて推定したYaw角は、異なるタイミングで取得するため、慣性航法の初期方位として利用する際にはRoll角及びPitch角を再度更新しても良い。この場合、ＮＦＣタグ１０の画像が撮影されるまでのジャイロデータ５０２Ｂがバッファリングされているので、携帯端末５００がＮＦＣタグ１０から離れる動きを検知してから、Yaw角の推定が完了するまでのジャイロデータ５０２ＢでRoll角及びPitch角を補正れば良い。このように補正したRoll角及びPitch角と、撮影画像から推定したYawを初期方位として設定すれば良い。
【００６４】
上記実施例によれば、携帯端末５００の初期位置及び初期方位を比較的簡単な操作で正確に設定できるので、その後携帯端末５００の位置及び方位は、初期位置及び初期方位に基づいて慣性航法を用いる周知の方法で高精度に検知することが可能となる。
【００６５】
携帯端末５００の初期位置及び初期方位を設定した後に提供するサービスの一例として、初期位置及び初期方位に対する携帯端末５００の位置及び方位は周知の方法で推定することができるので、携帯端末５００と同じ空間中に配置されたデバイスに対する直感的なインタフェースを提供するサービスが挙げられる。例えば家庭での応用例では、携帯端末５００がテレビ（図示せず）の近傍に位置しておりテレビを向いた方位を有すると、携帯端末５００の表示部５０４にテレビの番組表を表示することでテレビの簡単、且つ、直感的な操作が可能なインタフェースを提供できる。又、オフィスでの応用例では、携帯端末５００がプリンタ（図示せず）の近傍に位置しておりプリンタを向いた方位で一定時間静止すると、携帯端末５００の表示部５０４に表示されている内容をプリンタで印刷する等のプリンタの簡単、且つ、直感的な操作が可能なインタフェースを提供できる。
【００６６】
上記の例では、携帯端末はＮＦＣタグと通信可能であるが、携帯端末が通信するデバイスは短距離無線通信（ＮＦＣ）が可能で自己位置を格納可能なデバイスであれば特に限定されない。
【００６７】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
自己位置情報を格納した外部デバイスと短距離無線通信を行う慣性航法を用いる携帯端末であって、
前記携帯端末の加速度を検知して加速度情報を出力する第１の検知部と、
画像を撮影する撮影部と、
前記外部デバイスと通信する通信部と、
前記通信部が前記外部デバイスと通信可能になると、前記外部デバイスから受信した位置情報を前記携帯端末の初期位置に設定すると共に、前記加速度情報のAC成分に基づいて撮影タイミングを予測し、前記外部デバイスの画像を前記撮影タイミングで撮影するよう前記撮影部を制御し、前記外部デバイスの撮影画像から推定したヨー角を前記携帯端末の初期方位に設定する制御部
を備えたことを特徴とする、携帯端末。
（付記２）
前記携帯端末の方位情報を検知する第２の検知部を更に備え、
前記制御部は、前記外部デバイスの撮影画像から推定したヨー角と、前記加速度情報のDC成分及び前記方位情報から推定したロール角及びピッチ角を前記携帯端末の初期方位に設定することを特徴とする、付記１記載の携帯端末。
（付記３）
前記制御部は、前記通信部が前記外部デバイスと通信可能になると、前記加速度情報のAC成分及び前記方位情報に基づいて前記携帯端末が前記外部デバイスと接触する静止区間を推定し、前記静止区間で前記ロール角及び前記ピッチ角を推定することを特徴とする、付記２記載の携帯端末。
（付記４）
記憶部を更に備え、
前記制御部は、前記加速度情報を線加速度成分である前記AC成分と、重力成分である前記DC成分にフィルタリングして前記記憶部に格納することを特徴とする、付記２又は３記載の携帯端末。
（付記５）
前記制御部は、前記通信部の前記外部デバイスとの通信の開始をトリガとして前記静止区間の推定及び前記静止区間での前記ロール角及び前記ピッチ角の推定を行うことを特徴とする、付記１乃至４のいずれか１項記載の端末装置。
（付記６）
自己位置情報を格納した外部デバイスと短距離無線通信を行う慣性航法を用いる携帯端末のコンピュータに、位置及び方位推定処理を行わせるプログラムであって、
前記携帯端末の通信部が前記外部デバイスと通信可能であるか否を判定する手順と、
前記通信部が前記外部デバイスと通信可能であると判定されると、前記外部デバイスから受信した位置情報を前記携帯端末の初期位置に設定する手順と、
前記携帯端末の加速度センサが出力する加速度情報のAC成分に基づいて撮影タイミングを予測する手順と、
前記外部デバイスの画像を前記撮影タイミングで撮影するよう前記携帯端末の撮影部を制御する手順と、
前記外部デバイスの撮影画像から推定したヨー角を前記携帯端末の初期方位に設定する手順
を前記コンピュータに実行させることを特徴とする、プログラム。
（付記７）
前記初期方位に設定する手順は、前記外部デバイスの撮影画像から推定したヨー角と、前記加速度情報のDC成分及び前記携帯端末のジャイロセンサが出力する方位情報から推定したロール角及びピッチ角を前記携帯端末の初期方位に設定することを特徴とする、付記６記載のプログラム。
（付記８）
前記通信部が前記外部デバイスと通信可能であると判定されると、前記加速度情報のAC成分及び前記方位情報に基づいて前記携帯端末が前記外部デバイスと接触する静止区間を推定する手順と、
前記静止区間で前記ロール角及び前記ピッチ角を推定する手順
を前記コンピュータに更に実行させることを特徴とする、付記７記載のプログラム。
（付記９）
前記加速度情報を線加速度成分である前記AC成分と、重力成分である前記DC成分にフィルタリングして前記携帯端末の記憶部に格納する手順
を前記コンピュータに更に実行させることを特徴とする、付記７又は８記載のプログラム。
（付記１０）
前記初期位置を設定する手順は、前記通信部と前記外部デバイスとの通信の開始を検知すると、前記通信部が前記外部デバイスと通信可能であると判定することを特徴とする、付記６乃至９のいずれか１項記載のプログラム。
【００６８】
以上、開示の携帯端末及び位置及び方位推定プログラムを実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【符号の説明】
【００６９】
１０      ＮＦＣタグ
５００      携帯端末
５０１     ＣＰＵ
５０２      記憶部
５０５      通信部
５０６      センサ部
５０６ａ      加速度センサ
５０６ｂ      ジャイロセンサ
５０６ｃ      カメラ
【図１】
0005708362.tif 000008
【図２】
0005708362.tif 000009
【図３】
0005708362.tif 000010
【図４】
0005708362.tif 000011
【図５】
0005708362.tif 000012
【図６】
0005708362.tif 000013
【図７】
0005708362.tif 000014
【図８】
0005708362.tif 000015
【図９】
0005708362.tif 000016
【図１０】
0005708362.tif 000017
【図１１】
0005708362.tif 000018
【図１２】
0005708362.tif 000019
【図１３】
0005708362.tif 000020
【図１４】
0005708362.tif 000021
【図１５】
0005708362.tif 000022