(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、本発明を登山用装置に適用した場合の一実施形態について、図面を参照して詳細に説明する。
[構成]
図1は、この登山用ナビゲーション装置10の機能回路の構成を示すブロック図である。
【0013】
この登山用位置表示装置10において、GPS(Global Positioning System:全地球測位システム)アンテナ11で受信した、図示しない複数、少なくとも4つ以上のGPS衛星からの到来電波に基づき、GPS受信部12が現在位置の3次元座標、すなわち、緯度、経度、及び高度と、現在時刻とを算出し、バスBを介してCPU13へ送出する。
【0014】
なお上記GPSアンテナ11及びGPS受信部12は、上記GPS以外の衛星測位システム、例えばGLONASS(GLObal NAvigation Satellite System)や我が国の地域航法衛星システムである準天頂衛星システムQZSS(Quasi−Zenith Satellite System)等にも対応してそれらの衛星からの到来電波も受信し、より高い精度で現在位置の3次元座標と現在時刻とを算出できるものでも良い。
【0015】
その場合、下記動作時の説明においてGPS測位を行なうと記述した際には、上記GPS以外の衛星測位システムによる測位動作も合わせて実行するものとする。
【0016】
CPU13は、この登山用位置表示装置10全体の動作制御を、バスBを介して接続されたメインメモリ14及びSSD(Solid State Drive)15を使用して実行する。
【0017】
メインメモリ14は、例えばSDRAMで構成され、CPU13がプログラムを実行する際のワークメモリとなる。SSD15は、不揮発性メモリで構成され、登山道の位置表示動作に必要な各種動作プログラムと、登山地図データ15Aを含む各種固定データ等を格納、記憶するもので、それらの記憶内容は適宜CPU13によって上記メインメモリ14へ読出される。
【0018】
上記SSD15に記憶される登山地図データ15Aは、各地点の3次元座標と関連付けた登山用の地形図データであり、当該地形図データ中には等高線と、道路情報として登山道の情報とを含む。
【0019】
また上記バスBはさらに、表示部16、タッチ入力部17、音声処理部18、3軸地磁気センサ19、3軸加速度センサ20、3軸ジャイロセンサ21、気圧センサ22、キー操作部23、近距離無線通信部24、及び外部デバイスインタフェイス(I/F)25と接続される。
【0020】
表示部16は、バックライト付きのカラー液晶パネルとそれらの駆動回路とで構成される。この表示部16に対して、透明電極膜を用いたタッチ入力部17が一体に構成される。タッチ入力部17は、ユーザのタッチ操作に応じた時系列の座標信号をデジタル化し、タッチ操作信号として上記CPU13へ送出する。
【0021】
音声処理部18は、PCM音源等の音源回路を備え、与えられる音声データに応じてアナログの音声信号を発生し、スピーカ26から拡声放音させる。
【0022】
3軸地磁気センサ19は、互いに直交する3軸方向それぞれの地磁気を検出するもので、磁北の方向に基づいてその時点でこの登山用位置表示装置10を向けている方位が検出できる。
【0023】
3軸加速度センサ20は、互いに直交する3軸方向それぞれの加速度を検出するもので、重力加速度の方向により、登山用位置表示装置10の姿勢を検出できる。
【0024】
3軸ジャイロセンサ21は、互いに直交する3軸方向に配置された振動型ジャイロスコープで構成され、上記3軸地磁気センサ19、3軸加速度センサ20の出力と組み合わせて、この登山用位置表示装置10を所持、装着しているユーザの動作を解析して、上記GPSアンテナ11、GPS受信部12からの出力による現在位置の認識ができない状態でも、3軸地磁気センサ19、3軸加速度センサ20との協働により自律航法による現在位置の更新動作を実行するために用いる。
【0025】
気圧センサ22は、その時点の気圧を検出するもので、上記GPSアンテナ11、GPS受信部12による現在位置の測定精度が高い場合の高度情報に基づいて気圧情報を高度情報に変換することで、その後の移動に伴ってGPSアンテナ11、GPS受信部12によるGPS測位が実行できない場合や、GPS測位によって取得できる現在位置の位置精度が低下した場合でも、その時点で得られる気圧情報から、測定精度が高かった位置での気圧情報を基準として、相対的に現在位置の高度情報を算出することができる。
【0026】
キー操作部23は、この登山用位置表示装置10の筐体に設けられる、電源キーや現在位置キー、目的地キー、カーソルキー、エンターキー等からなり、それらのキー操作に応じたキー操作信号をバスBを介して上記CPU13へ送出する。
【0027】
近距離無線通信部24は、例えばBluetooth(登録商標) SMARTまたはANT+により、近距離通信アンテナ27を介して、予めペアリング設定された外部の機器と無線接続する。
【0028】
外部デバイスインタフェイス25は、ヘッドホンジャック28、マイクロUSB端子29、及びメモリカードスロット30を介して、例えばヘッドホンやイヤホン、USB機器、及びメモリカードをそれぞれ接続または装着可能とする。
【0029】
[第1の動作例]
本動作例では、登山用位置表示装置10のユーザが
図2に示すような登山地図中の、破線で示す登山コースSCを踏破しているものとする。
【0030】
図2に示すように、上記登山地図は各地点共に標高情報を含んだ三次元座標情報を有しており、上記登山コースSCから
図3(A)に示すような、横軸を水平方向の移動距離、縦軸を標高とした、コースSCの絶対高度変位を得ることができる。
【0031】
この絶対高度変位を基に、コース出発地点での高度を「0(ゼロ)」に換算することで、
図3(B)に示すような詳細な絶対高度変位を得ることができる。
【0032】
実際の位置表示動作時には、上記
図3(B)で示した詳細な相対高度変位に基づいて、登山用位置表示装置10のユーザが直前の一定時間、例えば10分分の移動による軌跡片の相対高度変位を取得して類似度を算出する。
【0033】
図4は、この登山コースSCに対応した相対高度変位(A)と、軌跡片の相対高度(B)との対比を示す図である。
図4(B)では、その高度変化の内容から図中に「N」字状の形状となる軌跡片を、コースの相対高度変化(A)中の各部位と対比させている状態を示す。この対比の過程において、それぞれ予め用意した演算式にしたがって類似度を算出することで、最も類似度が高かったコース中の部位を現在位置に該当するものとして特定する。
【0034】
図5は、上記
図4に対応して、実際の登山コースSC上で上記軌跡片に該当する区間P1〜P4を示す。ここでは、例えば区間P3が最も算出した類似度が高く現在位置としての第1候補、次点として区間P1が第2候補であったものとする。
【0035】
次に、上記CPU13が実行する、コース上の全n区間分の標高データと、実際に登山用位置表示装置10のユーザが観測した標高データとから、現在位置を特定する場合の処理内容を示す。
【0036】
図6(A)は、コース上の全n+1地点の標高データCと、地点の変数i=1であるコース始点を「0(ゼロ)」とした各相対高度dCとを例示する図である。
【0037】
これに対して
図6(B)は、観測のタイミング「t−n」〜「t」の計「n+1」地点で登山用位置表示装置10のユーザがコース上で観測した標高データVとコース始点を「0(ゼロ)」とした各相対高度dVとを例示する図である。
【0038】
上記
図6(B)に示したような観測が行なわれる過程で、登山用位置表示装置10では随時、
図7に示すような処理が実行される。
【0039】
図7は、コースSCの始端から出発した後に、登山用位置表示装置10のCPU13が、上記GPSアンテナ11、GPS受信部12による絶対的な現在位置の測定と平行して随時実行する、気圧センサ22の検出出力に基づいた現在位置推定のための処理内容を示すフローチャートである。
【0040】
この処理は、CPU13がSSD15に格納、記憶される動作プログラム及び登山地図データ15A等を読出し、メインメモリ14上に展開して記憶させることで、予めユーザによって設定された時間間隔、例えば60[秒]毎に実行される。
【0041】
その当初にCPU13は、現在の時点tに基づいて、現在時刻から一定時間分の直前の過去、例えば10分間分の、上記
図4(B)で示したような相対高度配列dVtで示される軌跡片を生成する(ステップS101)。
【0042】
次にCPU13は、登山コースSCの地点を示す変数iに初期値「2」を設定する(ステップS102)。CPU13は、その変数iに基づいて、地点iを先頭位置とする、上記一定時間分に対して充分余裕を持った直前の一定水平距離分のコース上の相対高度配列dCiを生成する(ステップS103)。
【0043】
ここでCPU13は、上記生成した相対高度配列dVtと相対高度配列dCi間の類似度Siを、予め設定されている演算式により算出する(ステップS104)
ここで用いる演算式としては、例えば差分二乗和法などが考えられるが、この登山用位置表示装置10のユーザの移動速度の個人差による、時間方向の伸縮を考慮すると、DTW(Dynamic Time Warping:動的時間伸縮法)等の時間伸縮法が、より適しているものと考えられる。
【0044】
上記ステップS104で算出した類似度Siを地点iに対応するものとしてメインメモリ14で一旦格納した上で(ステップS105)、次の地点での同類似度を算出するべく、変数iの値を「+1」更新する(ステップS106)。
【0045】
この更新設定した地点の変数iが、コースの終端を超えているか否か、具体的には上記
図6(A)に示すようにコースがn区間であった場合に、その最終地点「n+1」を超えた「n+2」となったか否かにより判断する(ステップS107)。
【0046】
ここで、まだコースの終端を超えていないと判断した場合(ステップS107のNo)、CPU13は上記ステップS103からの処理に戻って、同様の処理を続行する。
【0047】
こうしてステップS103〜S107の処理を繰返し実行し、順次その時点の変数iに基づいた類似度Siをメインメモリ14に格納していく。
【0048】
そして、上記ステップS107において、変数iが登山コースSC上の終端地点に達したと判断した時点で(ステップS107のYes)、CPU13は一旦この
図7の処理を終了すると共に、それまでメインメモリ14に格納した類似度の中で最も高かった地点を現在位置として特定し、表示部16で表示している登山コースSC上の該当地点に現在位置を表示させる。
【0049】
なお、この現在位置の特定に関しては、上記のように気圧センサ22の出力に基づいた相対高度検出のみによる一意の処理ではなく、上記GPSアンテナ11、GPS受信部12による絶対的な位置測定等の他の要因も含めて、後段の位置同定処理に渡す1つの指標としても用いるものとしても良い。
【0050】
この場合、あえてGPSアンテナ11、GPS受信部12によるGPS測位を用いずに位置推定を行なうことで、気圧センサ22の出力する気圧情報から相対高度を検出するものとした場合の気圧の変動や、水平位置での誤差等の誤差要因に対するロバスト性を向上できる。
【0051】
また反対に、登山用位置表示装置10の移動により得られる相対高度の軌跡片のデータに対し、移動時間と経過時間とを用いて正規化することで、登山地図データ15Aから読出す登山コースSCとの水平距離方向のスケールをあわせることも考えられる。
【0052】
この処理によって、上記水平方向のスケールを考慮せずに処理する方法に比して、さらにロバスト性を向上して、より確実に現在位置を推定可能となる。
【0053】
以上詳述した如く本動作例によれば、GPS測位が実行できない状況でも、現在の位置を正確に同定することが可能となる。
【0054】
また上記動作例では、登山地図データ15Aから読出した領域の登山データ中の登山コースSCに沿った相対高度分布を生成するものとしたので、予め移動するコースがわかっている場合の計算量を大幅に減らして、CPU13による演算処理の負担を軽減すると共に、この登山用位置表示装置10が、電源容量が制限されている電池電源で動作する場合の電力消費を削減できる。
【0055】
[第2の動作例]
本動作例では、上記
図2で説明した登山地図中の登山コースSCに対し、その水平方向の距離の成分をあえて除外した上で、登山用位置表示装置10の移動時の位置推定の動作を行なう場合について説明する。
【0056】
図8(A)は、登山コースSC中の一部の行程移動時におけるアップ/ダウンを、横軸を水平距離h、縦軸をコースの相対高度Δvとして例示した図である。同図(A)中、端点及びアップ/ダウンの変化点を丸記号CPで示している。この行程における各アップダウンの行程区間a〜eを、単純にその区間の高度のプラス/マイナスにより区間で累積した高度が
図8(B)に示すようになる。
【0057】
一方で、実際に登山用位置表示装置10のユーザが登山コースSCに沿って移動する場合を考えると、当該ユーザの登山者としての熟練度や基礎体力、当日の体調や天候等の様々な要因によって、実際に得られる移動の軌跡は上記
図8(A)の内容と大きく異なることものとなる可能性が高い。
【0058】
図9(A)は、上記
図8(A)で示した登山コースSC中の一部の行程移動時におけるアップ/ダウンを、横軸を水平距離hおよび時間t、縦軸を軌跡の相対高度Δvとして例示した図である。
【0059】
同図(A)中、本来のコースの行程区間aに対して、軌跡の行程区間a′では、スローペースS1と示すように、横軸方向が大幅に伸びた軌跡となっている。
【0060】
同様に、コースの行程区間bに対して、軌跡の行程区間b′では、休憩S2により相対高度が変化しない区間が含まれている。さらにコースの行程区間cに対して、軌跡の行程区間c′では、スローペースS3及び休憩S4を含んでいる。
【0061】
そして最後のコースの行程区間eに対して、軌跡の行程区間e′では、それまでの遅れを少しでも取り戻すべく、ハイペースS5により短時間で移動が行なわれている。
【0062】
しかしながら、上記横軸方向の成分を除外して考え、上記各行程区間a′〜e′を、単純にその区間のプラス/マイナスにより区間で累積した高度として算出すると、
図9(B)に示すように、上記
図8(B)と同様の情報が算出されることとなる。
【0063】
以上の考え方に基づいて、本動作例では、各行程区間のアップ/ダウンにより水平距離及び時間の成分を除去して、軌跡片を単純化するものとする。
【0064】
図10は、上記の考え方を用いて実際に位置を推定する場合を説明するための図である。例えば移動に伴う軌跡片の相対高度が
図10(A)に示すような、アップ/ダウン/アップが連続する形状となる場合、これを累積相対高度として捉えると、
図10(B)に示すような変位として捉えることができる。
【0065】
なお、このようなアップとダウンの符号反転に際し、微小な符号反転による影響を受けないように、前処理として線形/非線形の別に基づく平滑化を行なうものとしても良い。
【0066】
図11(A)は、上記
図4(A)と同様のコースの相対高度変位を例示するものであり、これを累積相対高度として置換したものが
図11(B)に示すようになる。
【0067】
したがって、この
図11(B)に示す累積高度変位の中で、上記
図10(B)に示した軌跡片の累積高度変位をマッチング処理により類似度を算出しながら検索することで、
図11(C)に示すように、きわめて少ない演算処理量で現在位置の推定を行なうことができるものとなる。
具体的な類似度の算出に際しては、次式
【0069】
の式(1)中、右辺の大括弧中の第1項の相関関数fを用いるが、同大括弧中の第2項にあるように、コースと軌跡片との絶対高度差と予め用意した係数との積を勘案することで、より最適な類似度を得ることができる。
【0070】
次に、上記CPU13が実行する、コース上の全n区間分の標高データと、実際に登山用位置表示装置10のユーザが観測した標高データとから、現在位置を特定する場合の処理内容を示す。
【0071】
図12(A)は、コース上の全n+1地点の標高データCと、地点の変数i=1であるコース始点を「0(ゼロ)」とした各相対高度dCとを例示する図である。
【0072】
これに対して
図12(B)は、アップ/ダウンに対応した符号反転位置で区切った区間j〜j+mにおける各累積高度σCである。
【0073】
図13は、コースSCの始端から出発した後に、登山用位置表示装置10のCPU13が、上記GPSアンテナ11、GPS受信部12による絶対的な現在位置の測定と平行して随時実行する、気圧センサ22の検出出力に基づいた現在位置推定のための処理内容を示すフローチャートである。
【0074】
この処理は、CPU13がSSD15に格納、記憶される動作プログラム及び登山地図データ15A等を読出し、メインメモリ14上に展開して記憶させることで、予めユーザによって設定された時間間隔、例えば60[秒]毎に実行される。
【0075】
その当初にCPU13は、現在の時点tに基づいて、現在時刻から一定時間分の直前の過去、例えば10分間分の、上記
図10(B)で示したような符号反転累積高度配列σVtで示される軌跡片を生成する(ステップS201)。
【0076】
次にCPU13は、登山コースSCの地点を示す変数iに初期値「2」を設定する(ステップS202)。CPU13は、その変数iに基づいて、地点iを先頭位置とする、上記一定時間分に対して充分余裕を持った直前の一定水平距離分のコース上の符号反転累積高度配列σCiを生成する(ステップS203)。
【0077】
ここでCPU13は、上記生成した符号反転累積高度配列σVtと符号反転累積高度配列σCi間の類似度Sjを、例えば上記式(1)で示した演算式により算出する(ステップS204)。
【0078】
上記ステップS204で算出した類似度Sjを地点iに対応するものとしてメインメモリ14で一旦格納した上で(ステップS205)、次の地点での同類似度を算出するべく、変数iの値を「+1」更新する(ステップS206)。
【0079】
この更新設定した地点の変数iが、コースの終端を超えているか否か、具体的には上記
図12(A)に示すようにコースがn区間であった場合に、その最終地点「n+1」を超えた「n+2」となったか否かにより判断する(ステップS207)。
【0080】
ここで、まだコースの終端を超えていないと判断した場合(ステップS207のNo)、CPU13は上記ステップS203からの処理に戻って、同様の処理を続行する。
【0081】
こうしてステップS203〜S207の処理を繰返し実行し、順次その時点の変数iに基づいた類似度Sjをメインメモリ14に格納していく。
【0082】
そして、上記ステップS207において、変数iが登山コースSC上の終端地点に達したと判断した時点で(ステップS207のYes)、CPU13は一旦この
図13の処理を終了すると共に、それまでメインメモリ14に格納した類似度の中で最も高かった地点を現在位置として特定し、表示部16で表示している登山コースSC上の該当地点に現在位置を表示させる。
【0083】
なお、この現在位置の特定に関しては、上記のように気圧センサ22の出力に基づいた相対高度検出のみによる一意の処理ではなく、上記GPSアンテナ11、GPS受信部12による絶対的な位置測定等の他の要因も含めて、後段の位置同定処理に渡す1つの指標としても用いるものとしても良い。
【0084】
このように本動作例においては、登山用位置表示装置10のユーザが移動する際の水平方向の距離と移動時間とを除外して相対高度の変位分布により類似度を算出することで、演算内容を大幅に簡略化してCPU13での処理に負担を軽減し、より迅速に現在位置の推定を行なうことが可能となる。
【0085】
[第3の動作例]
本動作例では、上記第2の動作例での考え方をさらに発展させ、上記
図2で説明した登山地図中の登山コースSCに対し、その水平方向の距離の成分を除外した上で、さらに勾配の程度を加味した符号化を行なった上で、登山用位置表示装置10の移動時の位置推定の動作を行なう場合について説明する。
【0086】
図14は、上記の考え方を用いて実際に位置を推定する場合を説明するための図である。例えば移動に伴う軌跡片の相対高度が
図14(A)に示すような、アップ/ダウン/アップが連続する形状となる場合、これを「アップ」を「1」、「ダウン」を「0」として、
図14(B)に示すように、「1,1,0,0,1,1,1」となるバイナリ符号化した相対高度符号とする。
【0087】
また上記のようなバイナリ符号化に代えて、勾配の上昇を意味する符号「1(=アップ)」をその変位の度合いに応じてU1(〜+10m)/U2(〜+20m)/U3(〜+30m)/‥‥、同様に勾配の下降を意味する符号「0(=ダウン)」をその変位の度合いに応じてD1(〜−10m)/D2(〜−20m)/D3(〜−30m)/‥‥とし、
図15(B)に示すような、変位の方向と度合いに応じた「U1,U1,D1,D1,U2,U2,U2」となる記号符号化した相対高度符号を取得しても良い。
【0088】
こうして、コース全体の相対高度変位を、バイナリ符号化、または記号符号化した相対高度符号に置換した上で、実際の移動に伴う軌跡片の相対高度も、バイナリ符号化、または記号符号化した相対高度符号に置換し、これらのマッチング処理により類似度を算出しながら検索することで、きわめて少ない演算処理量で現在位置の推定を行なうことができる。
次に、上記CPU13が実行する、コース上の全n区間分の標高データと、実際に登山用位置表示装置10のユーザが観測した標高データとから、現在位置を特定する場合の処理内容を示す。
【0089】
図16(A)は、コース上の全n+1地点の標高データCと、地点の変数i=1であるコース始点を「0(ゼロ)」とした各相対高度dC、バイナリ符号、及び記号符号を例示する図である。
【0090】
これに対して
図16(B)は、実際のコース上を移動して踏破した際に観測された、コース上の全n+1地点の標高データVと、コースの始点「t−n」地点を「0(ゼロ)」とした各相対高度dC、バイナリ符号、及び記号符号を例示する図である。
【0091】
加えて
図16(C)は、相対高度から上記記号符号を得るための変換テーブルである。
【0092】
図17は、コースSCの始端から出発した後に、登山用位置表示装置10のCPU13が、上記GPSアンテナ11、GPS受信部12による絶対的な現在位置の測定と平行して随時実行する、気圧センサ22の検出出力に基づいた現在位置推定のための処理内容を示すフローチャートである。
【0093】
この処理は、CPU13がSSD15に格納、記憶される動作プログラム及び登山地図データ15A等を読出し、メインメモリ14上に展開して記憶させることで、予めユーザによって設定された時間間隔、例えば60[秒]毎に実行される。
【0094】
その当初にCPU13は、現在の時点tに基づいて、現在時刻から一定時間分の直前の過去、例えば10分間分の、上記
図16(B)で示したような相対高度dVtと対応する記号符号の配列で示される軌跡片を生成する(ステップS401)。
【0095】
次にCPU13は、登山コースSCの地点を示す変数iに初期値「2」を設定する(ステップS402)。CPU13は、その変数iに基づいて、地点iを先頭位置とする、上記一定時間分に対して充分余裕を持った直前の一定水平距離分のコース上の相対高度dCiと対応する記号符号の配列を生成する(ステップS403)。
【0096】
ここでCPU13は、上記生成した高度配列σVtの符号列と相対高度配列dCiの符号列との間の類似度Siを算出する(ステップS404)。
【0097】
なお、この類似度Siは、例えば、ハミング距離や編集距離(レーベンシュタイン距離)を用いることにより算出できる。
【0098】
上記ステップS404で算出した類似度Siを地点iに対応するものとしてメインメモリ14で一旦格納した上で(ステップS405)、次の地点での同類似度を算出するべく、変数iの値を「+1」更新する(ステップS406)。
【0099】
この更新設定した地点の変数iが、コースの終端を超えているか否か、具体的には上記
図16(A)に示すようにコースがn区間であった場合に、その最終地点「n+1」を超えた「n+2」となったか否かにより判断する(ステップS407)。
【0100】
ここで、まだコースの終端を超えていないと判断した場合(ステップS407のNo)、CPU13は上記ステップS403からの処理に戻って、同様の処理を続行する。
【0101】
こうしてステップS403〜S407の処理を繰返し実行し、順次その時点の変数iに基づいた類似度Siをメインメモリ14に格納していく。
【0102】
そして、上記ステップS407において、変数iが登山コースSC上の終端地点に達したと判断した時点で(ステップS407のYes)、CPU13は一旦この
図17の処理を終了すると共に、それまでメインメモリ14に格納した類似度の中で最も高かった地点を現在位置として特定し、表示部16で表示している登山コースSC上の該当地点に現在位置を表示させる。
【0103】
なお、この現在位置の特定に関しては、上記のように気圧センサ22の出力に基づいた相対高度検出のみによる一意の処理ではなく、上記GPSアンテナ11、GPS受信部12による絶対的な位置測定等の他の要因も含めて、後段の位置同定処理に渡す1つの指標としても用いるものとしても良い。
【0104】
このように本動作例においては、登山用位置表示装置10のユーザが移動する際の水平方向の距離と移動時間とを除外し、さらに相対高度の変位分布を記号符号化した上で類似度を算出することで、CPU13が実行する演算内容をさらに大幅に簡略化してその処理負担を軽減し、より短時間に現在位置の推定を行なうことが可能となる。
【0105】
なお上記実施形態においては、登山用位置表示装置10において、標高情報を含んだ登山地図から相対高度変位を生成するものとして説明したが、本発明はこれに限らず、事前に、例えば、外部のPCにおいて相対高度変位を生成し、この生成した相対高度変位のデータを登山用位置表示装置10に取込むようにしてもよい。
【0106】
[第4の動作例]
本動作例では、予め移動することがわかっている登山コース上での、水平距離及び移動時間と相対高度とによる2次元的な位置推定ではなく、3次元情報で表現される地図データ上で、移動に伴う3次元座標配列による軌跡片を用いて位置推定を行なう場合について説明する。
【0107】
図18は、3次元軌跡配列と3次元地図配列との関係を示す図である。登山用位置表示装置10のユーザの移動により上記気圧センサ22で得られる、当初は登山コース入口での気圧を基準とした相対高度情報に加え、上記3軸地磁気センサ19、3軸加速度センサ20、及び3軸ジャイロセンサ21による各検出出力に基づいた3次元空間中での自律航法手法による移動軌跡配列を生成する。
【0108】
図18(A)は、一定時間分、例えば現在時刻から過去10分間分の、相対高度情報と3次元地磁気情報、3次元移動軌跡に基づいて生成した3次元軌跡配列による軌跡片テンプレートTP1を例示する。
【0109】
ここでは3次元地磁気情報を含めることで、移動方向の絶対的な方位を特定することができる。そのため、後述するパターンブロックのマッチング処理に際して、この軌跡片テンプレートTP1を水平平面に沿って360°の範囲内で回転処理してそれぞれの方位角度で3次元地図配列に対する類似度を算出する処理を省略することができ、メインメモリ14の演算処理量を大幅に低減できる。
【0110】
図18(B)は、相対高度情報に基づいて生成した3次元地図配列M中で、上記軌跡片テンプレートTP1のパターンブロックのマッチング処理を水平面に沿ってラスタスキャン状に実施する過程を例示する図である。同図(B)に示す如く、3次元空間中の水平面に沿った2次元座標範囲をH(例えば東西方向),V(例えば南北方向)により表現するものとする。
【0111】
図18(C)は、上記3次元地図配列M中で、上記軌跡片テンプレートTP1によるパターンブロックのマッチング処理を行なった結果、最も類似度が高いと判断した位置に軌跡片テンプレートTP1を嵌め合せた場合を例示する図である。
【0112】
図19は、上記
図18(B)で示した地図データの領域内を移動している間に、登山用位置表示装置10のCPU13が、上記GPSアンテナ11、GPS受信部12による絶対的な現在位置の測定と平行して随時実行する、3軸地磁気センサ19、3軸加速度センサ20、3軸ジャイロセンサ21、及び気圧センサ22の検出出力の各検出出力に基づいた現在位置推定のための処理内容を示すフローチャートである。
【0113】
この処理は、CPU13がSSD15に格納、記憶される動作プログラム及び登山地図データ15A等を読出し、メインメモリ14上に展開して記憶させることで、予めユーザによって設定された時間間隔、例えば60[秒]毎に実行される。
【0114】
その当初にCPU13は、登山地図データ15Aから現在位置を含む、予め設定された領域の地図データを読出して、3次元空間内での地表面形状を示す3次元地図配列Mを生成する(ステップS301)。
【0115】
次いでCPU13は、現在時刻から一定時間分の直前の過去、例えば10分間分の、上記
図18(A)に軌跡片テンプレートTP1で示したような3次元軌跡配列Tを生成する(ステップS302)。
【0116】
次にCPU13は、地図配列中の水平面での2次元座標地点を示す変数i,jにそれぞれ初期値「2」を設定する(ステップS303)。CPU13は、その時点の変数i,jに基づいて、地点座標(i,j)における3次元軌跡配列Tijと3次元地図配列Mij間の類似度Sjを演算により算出する(ステップS304)。
【0117】
ここで類似度の演算に関しては、例えばパーティクルと呼ばれる粒子を用いて確率分布を求めるモンテカルロ位置推定法(Monte Carlo Localization)を用いることが考えられる。
【0118】
上記ステップS304で算出した類似度Sijを地点座標(i,j)に対応するものとしてメインメモリ14で一旦格納した上で(ステップS305)、次の地点での同類似度を算出するべく、一方の座標変数iの値を「+1」更新する(ステップS306)。
【0119】
この更新設定した一方の座標変数iが、上記
図18(B)で示した地図範囲の水平方向を示す、一方の終端Hを超えているか否かを判断する(ステップS307)。
【0120】
ここで、まだ一方の座標変数iが地図範囲の一方の終端Hを超えていないと判断した場合(ステップS307のNo)、CPU13は上記ステップS303からの処理に戻って、同様の処理を続行する。
【0121】
こうしてステップS303〜S307の処理を繰返し実行し、順次一方の座標jに対応する走査線に沿った類似度Sijを順次メインメモリ14に格納していく。
【0122】
そして、上記ステップS307において、一方の座標変数iが終端Hを超えたと判断した時点で(ステップS307のYes)、走査線の垂直方向の座標を更新するべく、一方の座標変数iに初期値「2」を設定すると共に、もう一方の座標変数jを「+1」更新設定する(ステップS308)。
【0123】
ここで、更新設定した座標変数jが、上記
図18(B)で示した地図範囲の垂直方向を示す、もう一方の終端Vを超えているか否かを判断する(ステップS309)。
【0124】
ここで、まだもう一方の座標変数jが地図範囲のもう一方の終端Vを超えていないと判断した場合(ステップS309のNo)、CPU13は上記ステップS303からの処理に戻って、同様の処理を続行する。
【0125】
こうして上記ステップS303〜S309の処理を適宜繰返し実行することにより、地図範囲の全体をラスタスキャン状に走査して順次類似度Sijをメインメモリ14に格納していく。
【0126】
そして、上記ステップS309において、もう一方の座標変数jが地図範囲のもう一方の終端Vを超えたと判断した時点で(ステップS309のYes)、CPU13は一旦この
図19の処理を終了すると共に、それまでメインメモリ14に格納した類似度の中で最も高かった座標位置を現在位置として特定し、表示部16で表示している登山地図上の該当地点に現在位置を表示させる。
【0127】
なお、この現在位置の特定に関しては、上記のように気圧センサ22の出力に基づいた相対高度と、3軸地磁気センサ19、3軸加速度センサ20、及び3軸ジャイロセンサ21による自律航法処理による3次元軌跡配列のみによる一意の処理ではなく、さらに上記GPSアンテナ11、GPS受信部12による絶対的な位置測定等の他の要因も含めて、後段の位置同定処理に渡す1つの指標としても用いるものとしても良い。
【0128】
このように本動作例においては、予め設定されている登山コース等に限定されることなく、3次元空間内での移動により得られる軌跡配列にしたがって、地図の図形から現在位置を推定することが可能となる。
【0129】
なお上記実施形態は、本発明を登山用位置表示装置に適用した場合の一実施形態について説明したが、本発明はこれに限らず、標高情報を含む地図データを用いた位置表示用のアプリケーションプログラムをインストールしたスマートフォンやタブレット端末等の情報端末機器、及びこれらの情報端末機器と協働した動作するウェアラブルデバイス等に適用することも考えられる。
【0130】
その他、本発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の発明が含まれており、開示される複数の構成要件から選択された組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、課題が解決でき、効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【0131】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[請求項1]
地図における領域の相対高度分布である第1の相対高度分布を取得する相対高度分布取得手段と、
気圧情報を取得する気圧取得手段と、
移動した区間で上記気圧取得手段により得た気圧情報に基づいて、上記移動した区間での相対高度分布である第2の相対高度分布を生成する相対高度分布生成手段と、
上記相対高度分布取得手段で得た上記第1の相対高度分布と上記相対高度分布生成手段で得た上記第2の相対高度分布の類似度に基づいて、上記領域における上記移動した区間の位置を推定する位置推定手段と、
を備える位置推定装置。
[請求項2]
上記相対高度分布生成手段は、所定の時間移動した区間で上記気圧取得手段により得た気圧情報に基づいて、上記所定の時間移動した区間での相対高度分布である上記第2の相対高度分布を生成する、請求項1記載の位置推定装置。
[請求項3]
上記相対高度分布取得手段は、標高情報を含む地図データから、当該標高情報に基づいて当該地図における領域の相対高度分布である上記第1の相対高度分布を取得する、請求項1または2記載の位置推定装置。
[請求項4]
上記相対高度分布取得手段は、当該地図における領域内を移動するための経路に沿った相対高度分布である上記第1の相対高度分布を取得する、請求項3記載の位置推定装置。
[請求項5]
上記相対高度分布生成手段は、移動した区間で検出した気圧情報と移動時間、及び移動距離とを正規化して、上記第2の相対高度分布を生成する、請求項1乃至4のいずれかに記載の位置推定装置。
[請求項6]
上記相対高度分布取得手段は、水平方向の距離情報を除外した当該地図における領域の相対高度分布である上記第1の相対高度分布を取得し、
上記相対高度分布生成手段は、移動した区間での水平方向の距離情報及び移動時間を除外した上記第2の相対高度分布を生成する、
請求項1乃至4のいずれかに記載の位置推定装置。
[請求項7]
上記相対高度分布取得手段は、当該地図における領域の高度の変位の度合いを符号化した相対高度分布である上記第1の相対高度分布を取得し、
上記相対高度分布生成手段は、移動した区間での高度の変位の度合いを符号化した上記第2の相対高度分布を生成する、
請求項1乃至4のいずれかに記載の位置推定装置。
[請求項8]
上記相対高度分布取得手段は、当該地図における領域の3次元空間内での相対高度分布である上記第1の相対高度分布を取得し、
上記相対高度分布生成手段は、移動した区間で検出した気圧情報と自律航法による移動軌跡とに基づいて、移動した3次元空間内の区間での相対高度分布である上記第2の相対高度分布を生成する、
請求項1乃至4のいずれかに記載の位置推定装置。
[請求項9]
移動する方位を検出する方位検出手段をさらに備え、
上記相対高度分布生成手段は、移動した区間で検出した気圧情報と自律航法による上記方位検出手段で検出した方位情報を含んだ移動軌跡とに基づいて、移動した3次元空間内の区間での相対高度分布である上記第2の相対高度分布を生成する、
請求項8記載の位置推定装置。
[請求項10]
気圧情報を取得する気圧取得部を備える装置での位置推定方法であって、
地図における領域の相対高度分布である第1の相対高度分布を取得する相対高度分布取得工程と、
移動した区間で上記気圧取得部により得た気圧情報に基づいて、上記移動した区間での相対高度分布である第2の相対高度分布を生成する相対高度分布生成工程と、
上記相対高度分布取得工程で得た上記第1の相対高度分布と上記相対高度分布生成工程で得た上記第2の相対高度分布の類似度に基づいて、上記領域における現在位置を推定する位置推定工程と、
を有する位置推定方法。
[請求項11]
気圧情報を取得する気圧取得部を備える装置が内蔵したコンピュータが実行するプログラムであって、上記コンピュータを、
地図における領域の相対高度分布である第1の相対高度分布を取得する相対高度分布取得手段、
移動した区間で上記気圧取得部により得た気圧情報に基づいて、上記移動した区間での相対高度分布である第2の相対高度分布を生成する相対高度分布生成手段、及び
上記相対高度分布取得手段で得た上記第1の相対高度分布と上記相対高度分布生成手段で得た上記第2の相対高度分布の類似度に基づいて、上記領域における現在位置を推定する位置推定手段、
として機能させるプログラム。