(57)【要約】【課題】携帯可能な情報処理装置の存在位置として検索された建物内であるか否かを特定するようにした情報処理装置を提供する。【解決手段】情報処理装置の位置検知手段は、携帯可能な情報処理装置の第１の時点における位置を検知し、高低差検知手段は、第１の時点から第２の時点への移動に伴う高低差を検知し、検索手段は、建物の名称と、該建物の位置と、該建物における階と該階の高さの対応と、該建物の入り口がある階を示す情報を記憶している記憶手段から、検知された位置に対応する建物を検索し、特定手段は、検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、検知された高低差に基づいて、前記第２の時点において前記検索手段によって検索された建物内にいるか否かを特定する。【選択図】図１
2014119293.tif 000002
【特許請求の範囲】
【請求項１】
携帯可能な情報処理装置の第１の時点における位置を検知する位置検知手段と、
前記第１の時点から第２の時点への移動に伴う高低差を検知する高低差検知手段と、
建物の名称と、該建物の位置と、該建物における階と該階の高さの対応と、該建物の入り口がある階を示す情報を記憶している記憶手段から、前記位置検知手段によって検知された位置に対応する建物を検索する検索手段と、
前記検索手段によって検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点において前記検索手段によって検索された建物内にいるか否かを特定する特定手段
を具備することを特徴とする情報処理装置。
【請求項２】
前記特定手段は、前記検索手段によって検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点における階を特定し、
前記検索手段によって検索された建物の名称と前記特定手段によって特定された階を、前記情報処理装置の第２の時点における位置として出力する出力手段
を具備することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記情報処理装置の標高を検知する標高検知手段
をさらに具備し、
前記特定手段は、前記検索手段によって検索された建物に入り口が複数階にある場合は、前記標高検知手段によって検知された標高に対応する階の入り口の高さに基づいて、前記第１の時点における入り口を選択し、該選択した入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点における階を特定する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記位置検知手段は、ＧＰＳ若しくは基地局の位置検知によって位置を検知できなくなった時点又はＧＰＳ若しくは基地局の位置検知の精度が予め定められた値未満若しくは以下となった時点を第１の時点とし、該第１の時点直前の位置を検知する位置とする
ことを特徴とする請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
コンピュータを、
携帯可能な情報処理装置の第１の時点における位置を検知する位置検知手段と、
前記第１の時点から第２の時点への移動に伴う高低差を検知する高低差検知手段と、
建物の名称と、該建物の位置と、該建物における階と該階の高さの対応と、該建物の入り口がある階を示す情報を記憶している記憶手段から、前記位置検知手段によって検知された位置に対応する建物を検索する検索手段と、
前記検索手段によって検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点において前記検索手段によって検索された建物内にいるか否かを特定する特定手段
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、登山等において、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）による衛星からの電波を受信できない場合があっても、それまでの位置情報に基づいて現在位置を推定することができる装置を提供することを課題とし、現在位置推定装置は、地図情報ＤＢと気圧高度換算ＤＢ（ＤａｔａＢａｓｅ）とを有し、ＧＰＳから受信したデータに基づく位置データと、気圧計から取得した気圧データと、を対応付けて時系列に測定ログＤＢに記録し、そして、測定ログＤＢにそれまでに記録した気圧データと、新たに取得した気圧データと、に基づいて気圧高度換算ＤＢを参照して現在の高度を推定し、推定した当該高度と、測定ログＤＢにそれまでに記録した位置データと、地図情報ＤＢに記憶した地形データと、に基づいて現在位置を推定することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−００８１５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、携帯可能な情報処理装置の存在位置として検索された建物内であるか否かを特定するようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００５】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、携帯可能な情報処理装置の第１の時点における位置を検知する位置検知手段と、前記第１の時点から第２の時点への移動に伴う高低差を検知する高低差検知手段と、建物の名称と、該建物の位置と、該建物における階と該階の高さの対応と、該建物の入り口がある階を示す情報を記憶している記憶手段から、前記位置検知手段によって検知された位置に対応する建物を検索する検索手段と、前記検索手段によって検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点において前記検索手段によって検索された建物内にいるか否かを特定する特定手段を具備することを特徴とする情報処理装置である。
【０００６】
請求項２の発明は、前記特定手段は、前記検索手段によって検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点における階を特定し、前記検索手段によって検索された建物の名称と前記特定手段によって特定された階を、前記情報処理装置の第２の時点における位置として出力する出力手段を具備することを特徴とする請求項１に記載の情報処理装置である。
【０００７】
請求項３の発明は、前記情報処理装置の標高を検知する標高検知手段をさらに具備し、前記特定手段は、前記検索手段によって検索された建物に入り口が複数階にある場合は、前記標高検知手段によって検知された標高に対応する階の入り口の高さに基づいて、前記第１の時点における入り口を選択し、該選択した入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点における階を特定することを特徴とする請求項１又は２に記載の情報処理装置である。
【０００８】
請求項４の発明は、前記位置検知手段は、ＧＰＳ若しくは基地局の位置検知によって位置を検知できなくなった時点又はＧＰＳ若しくは基地局の位置検知の精度が予め定められた値未満若しくは以下となった時点を第１の時点とし、該第１の時点直前の位置を検知する位置とすることを特徴とする請求項１から３のいずれか一項に記載の情報処理装置である。
【０００９】
請求項５の発明は、コンピュータを、携帯可能な情報処理装置の第１の時点における位置を検知する位置検知手段と、前記第１の時点から第２の時点への移動に伴う高低差を検知する高低差検知手段と、建物の名称と、該建物の位置と、該建物における階と該階の高さの対応と、該建物の入り口がある階を示す情報を記憶している記憶手段から、前記位置検知手段によって検知された位置に対応する建物を検索する検索手段と、前記検索手段によって検索された建物の入り口がある階と、該建物における階と該階の高さの対応と、前記高低差検知手段によって検知された高低差に基づいて、前記第２の時点において前記検索手段によって検索された建物内にいるか否かを特定する特定手段として機能させるための情報処理プログラムである。
【発明の効果】
【００１０】
請求項１の情報処理装置によれば、携帯可能な情報処理装置の存在位置として検索された建物内であるか否かを特定することができる。
【００１１】
請求項２の情報処理装置によれば、携帯可能な情報処理装置の存在位置を出力する場合にあって、建物とその建物内における階の存在位置を出力することができる。
【００１２】
請求項３の情報処理装置によれば、建物に入り口が複数階にある場合であっても、建物とその建物内における階の存在位置を出力することができる。
【００１３】
請求項４の情報処理装置によれば、ＧＰＳによって位置を検知できなくなった時点又は基地局の位置検知の精度が予め定められた値未満若しくは以下である時点からの移動に伴う、情報処理装置の存在位置を出力することができる。
【００１４】
請求項５の情報処理プログラムによれば、携帯可能な情報処理装置の存在位置として検索された建物内であるか否かを特定することができる。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態を実現する場合のシステム構成例を示す説明図である。
【図３】建物情報テーブルのデータ構造例を示す説明図である。
【図４】本実施の形態による処理例を示すフローチャートである。
【図５】本実施の形態による処理例を示す説明図である。
【図６】本実施の形態による処理例を示す説明図である。
【図７】本実施の形態による処理例を示すフローチャートである。
【図８】本実施の形態による処理例を示すフローチャートである。
【図９】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００１７】
本実施の形態である情報処理装置１００は、情報処理装置１００の位置を検出するものであって、図１の例に示すように、検知モジュール１３０、建物情報記憶モジュール１４０、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０を有している。情報処理装置１００は、携帯可能であって、通信機能を有していてもよい。例えば、携帯電話（スマートフォンを含む）、ノートＰＣ（タブレット型ＰＣを含む）等である。また、情報処理装置１００内には、検知モジュール１３０を有していればよく、図２の例を用いて後述するように、建物情報記憶モジュール１４０、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０のいずれか１つ以上は、他の情報処理装置に構築されていてもよい。なお、情報処理装置１００の位置を検知するとは、その情報処理装置１００を携帯している者の位置を検知することになる。
【００１８】
検知モジュール１３０は、位置検知モジュール１１０、高低差検知モジュール１２０を有している。検知モジュール１３０は、各種センサーによって構成されている。
位置検知モジュール１１０は、検索モジュール１５０と接続されている。位置検知モジュール１１０は、情報処理装置１００の第１の時点における位置を検知する。例えば、ＧＰＳ、無線通信網における基地局（例えば、３Ｇ基地局とＷｉＦｉ基地局）の位置検知モジュール等が該当する。ここで第１の時点として、例えば、ＧＰＳ若しくは基地局の位置検知によって位置を検知できなくなった時点又はＧＰＳ若しくは基地局の位置検知の精度が予め定められた値未満若しくは以下となった時点がある。具体的には、情報処理装置１００の所持者がビル等の建物内に入った時点が該当し、いわゆるＧＰＳ圏外といわれる状態が該当する。つまり、情報処理装置１００の所持者は、その建物の入り口（出入り口、玄関等を含む）がある階にいることになる。したがって、第１の時点とは、具体例として、建物内であって入り口がある階に入った時点となる。
なお、ＧＰＳ、基地局の位置検知モジュールは、位置（緯度、経度）の他に、その検知した位置の精度を示す情報を出力する。具体的には、ＧＰＳでは水平精度劣化指数等がある。これらの値を、ＧＰＳ、基地局の位置検知の精度として、その値が予め定められた値未満若しくは以下となったか否かを判断すればよい。
なお、位置検知モジュール１１０は、定期的に位置を検知する。
また、位置検知モジュール１１０は、情報処理装置１００の標高を検知するようにしてもよい。例えば、ＧＰＳは、緯度、経度の他に標高も検知する。
【００１９】
高低差検知モジュール１２０は、検索モジュール１５０と接続されている。高低差検知モジュール１２０は、第１の時点から第２の時点への移動に伴う高低差を検知する。具体的には、気圧センサーを用いてもよい。例えば、気圧ｐと高さｈの関係は、次の式によって表される。
ｈ＝１５３．８＊（ｔ０＋２７３．２）＊（１−（ｐ／ｐ０）＾０．１９０２）
なお、ｔ０は標準気温、ｐ０は標準気圧であり、予め定められた値であってもよいし、位置（緯度、経度）、時刻とｔ０、ｐ０を対応付けたテーブルを予め用意し、位置（緯度、経度）、時刻から対応するｔ０、ｐ０を抽出するようにしてもよいし、他の情報処理装置（例えば、近傍にある情報処理装置であって、基準（リファレンス）となるｔ０、ｐ０を検知しているもの）から取得するようにしてもよい。また、垂直方向に移動したこと自体も、気圧の変化によって検知してもよいし、いずれの方向（上方向か下方向）についても、気圧の増減（気圧が増えた場合は下方向、気圧が減った場合は上方向）によって判断するようにしてもよい。
また、垂直方向の高低差と移動の判定は気圧を用いたが、加速度センサーの出力である加速度データを用いてもよい。加速度データを２重積分すれば移動距離（高低差）が算出される。
ここで第２の時点とは、主に現在時点をいう。「第１の時点から第２の時点への移動に伴う高低差」とは、前述の例では、情報処理装置１００の所持者が、ビル等の建物内でエレベータ等によって移動した場合によって生じる高低差となる。
【００２０】
建物情報記憶モジュール１４０は、検索モジュール１５０と接続されている。建物情報記憶モジュール１４０は、建物の名称と、その建物の位置と、その建物における階とその階の高さの対応と、その建物の入り口がある階を示す情報を記憶している。例えば、建物情報テーブル３００を記憶している。なお、「階の高さ」とは、標高であってもよく、建物内の高さ（例えば、フロア（階）間の高さを含む）であってもよい。図３は、建物情報テーブル３００のデータ構造例を示す説明図である。建物情報テーブル３００は、建物ＩＤ欄３１０、建物名称欄３２０、建物位置欄３３０、入り口欄３４０、階数欄３５０、１階高さ欄３６１、２階高さ欄３６２等を有している。建物ＩＤ欄３１０は、その建物を本実施の形態において一意に識別し得る情報（ＩＤ：ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を記憶している。建物名称欄３２０は、その建物の名称を記憶している。建物位置欄３３０は、その建物の位置を記憶している。建物位置欄３３０は、Ｘ欄３３２、Ｙ欄３３４を有している。Ｘ欄３３２は、緯度を記憶している。Ｙ欄３３４は、経度を記憶している。入り口欄３４０は、その建物の入り口がある階を記憶している。入り口が複数階にある場合は、その複数の階を記憶している。階数欄３５０は、その建物の総階数を記憶している。１階高さ欄３６１は、その建物における１階の高さを記憶している。２階高さ欄３６２は、その建物における２階の高さを記憶している。以下、各階の高さを記憶している。したがって、入り口がある階からの高さの差を有している階を算出することができる。
なお、建物情報記憶モジュール１４０内の建物情報テーブル３００は、地図全体をカバーしている必要は無く、「どこにいる」か推定したい場所（予め定められた場所における建物）のデータがあればよい。
【００２１】
検索モジュール１５０は、位置検知モジュール１１０、高低差検知モジュール１２０、建物情報記憶モジュール１４０、特定モジュール１６０と接続されている。検索モジュール１５０は、建物情報記憶モジュール１４０から、位置検知モジュール１１０によって検知された位置に対応する建物を検索する。検索モジュール１５０が行う検索は、第１の時点における位置にある建物を検索する。又は、その位置からある範囲に入る建物を検索するようにしてもよい。位置検知モジュール１１０によって検知された位置に誤差がある場合があるためである。ここでのある範囲（以下、存在範囲ともいう）として、ＧＰＳが出力する精度を示す値（例えば、水平精度劣化指数等）に応じた距離値としてもよいし、予め定められた距離値としてもよい。例えば、その距離値を半径とした円内に建物があり、位置検知モジュール１１０によって検知された位置に最も近い建物を検索結果としてもよい。また、その半径内にある複数の建物を検索結果としてもよい。
第１の時点がＧＰＳ若しくは基地局の位置検知によって位置を検知できなくなった時点又はＧＰＳ若しくは基地局の位置検知の精度が予め定められた値未満若しくは以下となった時点である場合は、その第１の時点直前の位置を検知する位置とするようにしてもよい。
また、検索モジュール１５０は、位置検知モジュール１１０が定期的に検知した位置データの時系列データを用いて、速度と方向を算出することにより、存在範囲を絞り込むようにしてもよい。例えば、緯度と経度の時間変化を算出し、Ａ地点からＢ地点に向かっていると推定し、速度と経過時間から存在範囲をＢ地点周辺に絞る（優先度を上げる）ことができ、垂直方向の位置情報と建物情報テーブル３００内のデータとのマッチングの処理を軽減するようにしてもよい。また、いわゆる自律航行法といわれるものを用いて存在範囲を算出してもよい。
【００２２】
特定モジュール１６０は、検索モジュール１５０、出力モジュール１７０と接続されている。特定モジュール１６０は、検索モジュール１５０によって検索された建物の入り口がある階と、その建物における階とその階の高さの対応と、高低差検知モジュール１２０によって検知された高低差に基づいて、第２の時点において検索モジュール１５０によって検索された建物内にいるか否かを特定する。また、検索モジュール１５０によって検索された建物の入り口がある階と、その建物における階とその階の高さの対応と、高低差検知モジュール１２０によって検知された高低差に基づいて、第２の時点における階を特定するようにしてもよい。建物の入り口がある階は、建物情報テーブル３００の入り口欄３４０から抽出すればよい。「建物における階とその階の高さの対応」は、具体的には、建物情報テーブル３００の１階高さ欄３６１、２階高さ欄３６２等が該当する。入り口がある階の高さに高低差検知モジュール１２０によって検知された高低差を加算又は減算（気圧が減った場合は加算、気圧が増えた場合は減算）し、その計算結果の高さに対応する階を抽出する。この階が、第２の時点における情報処理装置１００の所持者がいる階である。
なお、検索モジュール１５０が複数の建物を検索した場合は、入り口がある階の高さに高低差検知モジュール１２０によって検知された高低差を加算又は減算した計算結果の高さに対応する階（差分が最も少ない階）を有している建物を検索モジュール１５０による検索結果としてもよい。
また、特定モジュール１６０は、検索モジュール１５０によって検索された建物に入り口が複数階にある場合は、位置検知モジュール１１０によって検知された標高に対応する階の入り口の高さに基づいて、第１の時点における入り口を選択し、その選択した入り口がある階と、その建物における階とその階の高さの対応と、高低差検知モジュール１２０によって検知された高低差に基づいて、第２の時点における階を特定するようにしてもよい。建物によっては入り口が複数の階にある場合がある。そこで、ＧＰＳが第１の時点で検出した標高に対応する入り口の階（建物情報テーブル３００の入り口欄３４０とその階に対応する高さ（１階高さ欄３６１等の高さ））を選択する。その後は、前述の通りに、情報処理装置１００の所持者がいる階を特定する。
【００２３】
出力モジュール１７０は、特定モジュール１６０と接続されている。出力モジュール１７０は、特定モジュール１６０による処理結果（第２の時点において検索モジュール１５０によって検索された建物内にいるか否かの特定）を出力する。例えば、建物内にいると特定された場合は、その建物の名称を出力し、建物内にいないと特定された場合は、その建物の周辺であることを出力してもよい。例えば、地下鉄から地下道を通り、ＧＰＳ圏外（位置精度が低い）のまま目的の建物に入る、という場合に、目的の建物に入ったか否かを出力することによって情報処理装置１００の所持者が判断できる。
また、出力モジュール１７０は、検索モジュール１５０によって検索された建物の名称と特定モジュール１６０によって特定された階を、情報処理装置１００の第２の時点における位置として出力するようにしてもよい。例えば、情報処理装置１００が有している液晶ディスプレイ等の表示装置に表示してもよいし、他の情報処理装置において、情報処理装置１００の所持者の名称とともに建物の名称と階を表示するようにしてもよい。なお、他の情報処理装置には、情報処理装置１００の所持者の名称等を情報処理装置１００から通知しておけばよい。
さらに、出力モジュール１７０は、建物と階に関する情報を記憶しているＤＢ（データベース）から、その建物と階に対応する情報（例えば、その階における会議室、トイレの位置、建物がデパートの場合は、その階における売り場の広告等）を表示するようにしてもよい。
【００２４】
図２は、本実施の形態（情報処理装置１００）を実現する場合のシステム構成例を示す説明図である。
携帯情報処理装置２００Ａ、携帯情報処理装置２００Ｂ、携帯情報処理装置２００Ｃ等、位置処理装置２５０は、それぞれ通信回線２９０を介して接続されている。携帯情報処理装置２００は、少なくとも検知モジュール１３０を有している。さらに、建物情報記憶モジュール１４０、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０のうちいずれか１つ以上を有していてもよい。携帯情報処理装置２００が有していないモジュールは、位置処理装置２５０が有している。例えば、携帯情報処理装置２００は、検知モジュール１３０、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０を有しており、位置処理装置２５０は建物情報記憶モジュール１４０を有しているシステム構成であってもよいし、携帯情報処理装置２００は検知モジュール１３０を有しており、位置処理装置２５０は、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０を有しているシステム構成であってもよい。携帯情報処理装置２００が全てのモジュール（検知モジュール１３０、建物情報記憶モジュール１４０、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０）を有していてもよい。その場合は、携帯情報処理装置２００は単独で動作し、位置処理装置２５０との通信を必要とせず、携帯情報処理装置２００は通信機能を有していなくてもよい。
【００２５】
図４は、本実施の形態による処理例を示すフローチャートである。
ステップＳ４０２では、検知モジュール１３０が、ＧＰＳ情報、基地局位置情報、気圧情報を取得する。ＧＰＳ情報、基地局位置情報は、いずれか一方だけでもよい。位置検知モジュール１１０がＧＰＳ情報、基地局位置情報を取得し、高低差検知モジュール１２０が気圧情報を取得する。
ステップＳ４０４では、位置検知モジュール１１０が、ＧＰＳ情報を検知したか否かを判断し、検知した場合はステップＳ４０６へ進み、それ以外の場合はステップＳ４０８へ進む。
ステップＳ４０６では、位置検知モジュール１１０が、ＧＰＳ情報から、水平方向の位置（緯度、経度）と存在範囲（半径の距離等）を判定する。
ステップＳ４０８では、位置検知モジュール１１０が、基地局位置を検知したか否かを判断し、検知した場合はステップＳ４１０へ進み、それ以外の場合はステップＳ４１２へ進む。
ステップＳ４１０では、位置検知モジュール１１０が、基地局位置情報から、水平方向の位置と存在範囲を判定する。
ステップＳ４１２では、位置検知モジュール１１０が、ＧＰＳ情報、基地局位置情報の時系列データから、水平方向の位置と存在範囲を判定する。前述したように、直前のＧＰＳ情報、基地局位置情報を用いてもよいし、時系列データから、水平方向の位置と存在範囲を判定するようにしてもよい。
【００２６】
ステップＳ４１４では、位置検知モジュール１１０が、位置情報は十分な精度であるか否かを判断し、十分な精度である場合はステップＳ４２２へ進み、それ以外の場合はステップＳ４１６へ進む。十分な精度であるか否かの判断は、ステップＳ４０２で取得した情報の精度と予め定められた値との比較によって判断する。例えば、ＧＰＳ情報を検知した場合であっても、その精度が十分な値でない場合は、ステップＳ４１６へ進む。なお、ステップＳ４１２からの場合は、ステップＳ４１６へ進む。
ステップＳ４１６では、高低差検知モジュール１２０が、気圧情報の時系列データから、垂直方向の差分を判定する。前述したように高低差を検知する。
ステップＳ４１８では、検索モジュール１５０が、存在範囲内にある建物を検索する。
ステップＳ４２０では、特定モジュール１６０が、垂直方向の差分を、水平位置の存在範囲内の建物情報とマッチングする。
ステップＳ４２２では、出力モジュール１７０が、どこにいるかを出力する。例えば、建物の名称と階を表示装置に表示する。
【００２７】
図５は、本実施の形態による処理例を示す説明図である。この例は、情報処理装置１００の所持者が、Ａ地点からＢ地点を通ってＣ地点にあるビルに入り、エレベータ等で上位階に移動した場合の緯度、経度の軌跡と標高を示したもの（図５（ａ）、（ｂ））である。なお、この例は実測したものであり、図５（ｂ）における気圧による垂直位置の判定において、ｔ０は３３（℃）、Ｐ０は１０１０（ｍ）として算出したものである。
具体的には、情報処理装置１００の所持者は、ビルＹ入り口に到着したが、ＧＰＳ圏外となった。水平位置の判定結果ではＣ地点（図では点線の円）にいることが検索モジュール１５０によって検索されるが、Ｃ地点内のどのビルにいるかは定かではない。前述したように、特定モジュール１６０によって、高低差検知モジュール１２０が検知した高低差を用いた特定から、Ｃ地点内のビルＹにおける入り口がある３Ｆから１５Ｆに移動（約６０ｍ）したことが分かる。したがって、情報処理装置１００の所持者は現在、ビルＹの１５階にいる、と推定できる。
図６は、本実施の形態による処理例を示す説明図である。この例は、図５（ａ）の例に位置検知モジュール１１０の精度に応じた存在範囲を付加したものである。Ｂ地点近辺は建物内であり、Ａ地点よりも精度が悪く存在範囲が広くなっている。ここでは、Ｃ地点にあるビルＹにおいて情報処理装置１００の所持者がどの階にいるかを知りたい場合に、情報処理装置１００の存在範囲内にビルＹの位置が含まれたか否かを判断し、含まれたと判断された場合に、高低差を利用した階の特定を行う。
【００２８】
図７は、本実施の形態による処理例を示すフローチャートである。図４の例に示したフローチャート以外の処理を示すものである。
ステップＳ７０２では、検知モジュール１３０が、ＧＰＳ情報、基地局位置情報、気圧情報のデータを取得する。
ステップＳ７０４では、位置検知モジュール１１０が、ＸＹ座標（緯度、経度）と存在範囲（精度）を決定する。
ステップＳ７０６では、高低差検知モジュール１２０が、気圧情報から前述の式を用いて高さＺを算出し、変化量△Ｚを算出する。
ステップＳ７０８では、検索モジュール１５０が、ＸＹＺ座標と△Ｚと存在範囲を算出する。精度が十分でない場合は、「ＸＹ座標と存在範囲の修正」処理をここで行う。
ステップＳ７１０では、検索モジュール１５０が、存在範囲内に建物（建物情報記憶モジュール１４０内に記憶されている建物、又は対象としている建物）が含まれるか否かを判断し、含まれる場合はステップＳ７１２へ進み、それ以外の場合はステップＳ７２０へ進む。
【００２９】
ステップＳ７１２では、特定モジュール１６０が、高さＺと変化量△Ｚ、建物の高さデータ（建物情報テーブル３００）をマッチングする。
ステップＳ７１４では、特定モジュール１６０が、マッチするか否かを判断し、マッチする場合はステップＳ７１６へ進み、それ以外の場合はステップＳ７１８へ進む。
ステップＳ７１６では、特定モジュール１６０が、建物内にいると判定する。そして、何階にいるかについても特定する。
ステップＳ７１８では、特定モジュール１６０が、建物周辺にいると判定する。
ステップＳ７２０では、特定モジュール１６０が、どこにいるかを判定する。建物内にはいないので、検知されたＸＹ座標等の位置であると判定する。
【００３０】
図８は、本実施の形態による処理例を示すフローチャートである。図７の例に示すフローチャートの処理を含み、対象とする人が複数人である場合の処理である。
判定する人の数だけステップＳ８０２からステップＳ８２４までの処理を繰り返す。
ステップＳ８０４では、検知モジュール１３０が、センサーデータ（ＧＰＳ情報、基地局位置情報、気圧情報のデータ）を取得する。
ステップＳ８０６では、検知モジュール１３０が、特徴量を計算する。詳細には、ステップＳ８０８からステップＳ８１４までの処理を行う。
ステップＳ８０８では、位置検知モジュール１１０が、高さ（標高）を計算する。
ステップＳ８１０では、高低差検知モジュール１２０が、高さ変化を計算する。
ステップＳ８１２では、位置検知モジュール１１０が、位置を計算する。
【００３１】
ステップＳ８１４では、検索モジュール１５０が、存在範囲を計算する。
ステップＳ８１６では、検索モジュール１５０と特定モジュール１６０が、位置を推定する。詳細には、ステップＳ８１８からステップＳ８２０までの処理を行う。
ステップＳ８１８では、特定モジュール１６０が、気圧データのある時刻を特定する。前述の第１の時点を特定する。さらに、第２の時点を特定するようにしてもよい。
ステップＳ８２０では、特定モジュール１６０が、マッチング処理を行う。詳細には、図７のステップＳ７１０〜ステップＳ７２０の処理を行う。
ステップＳ８２２では、出力モジュール１７０が、推定結果を表示する。つまり、情報処理装置１００の所持者の位置を表示する。ステップＳ７１６の処理を行った場合は、建物の名称、階数を表示し、ステップＳ７１８の処理を行った場合は、建物の名称とその周辺であることを表示し、ステップＳ７２０の処理を行った場合は、検知されたＸＹ座標等の位置を表示する。
ステップＳ８２４では、ステップＳ８０２に戻り、判定する人の数だけステップＳ８０２からステップＳ８２４の処理を繰り返す。
【００３２】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図９に例示するように、一般的なコンピュータであり、具体的には携帯情報処理装置２００としては携帯電話、ノートＰＣ、位置処理装置２５０としてはサーバーとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ９０１を用い、記憶装置としてＲＡＭ９０２、ＲＯＭ９０３、ＨＤ９０４を用いている。ＨＤ９０４として、例えばハードディスクを用いてもよい。検知モジュール１３０、検索モジュール１５０、特定モジュール１６０、出力モジュール１７０等のプログラムを実行するＣＰＵ９０１と、そのプログラムやデータを記憶するＲＡＭ９０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ９０３と、補助記憶装置であるＨＤ９０４と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置９０６と、液晶ディスプレイ等の出力装置９０５と、ネットワークインタフェースカード等の無線通信回線と接続するための通信回線インタフェース９０７、そして、それらをつないでデータのやりとりをするためのバス９０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００３３】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図９に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図９に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図９に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。
【００３４】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００３５】
１００…情報処理装置
１１０…位置検知モジュール
１２０…高低差検知モジュール
１３０…検知モジュール
１４０…建物情報記憶モジュール
１５０…検索モジュール
１６０…特定モジュール
１７０…出力モジュール
２００…携帯情報処理装置
２５０…位置処理装置
２９０…通信回線
【図１】
2014119293.tif 000003
【図２】
2014119293.tif 000004
【図３】
2014119293.tif 000005
【図４】
2014119293.tif 000006
【図５】
2014119293.tif 000007
【図６】
2014119293.tif 000008
【図７】
2014119293.tif 000009
【図８】
2014119293.tif 000010
【図９】
2014119293.tif 000011