(57)【要約】【課題】道路リンクの具体的な形態に基づいて、現在位置が市街地か否かを正確に判別することにより、高精度なマップマッチングと正しい現在位置表示を実現するナビゲーション装置、方法及びプログラムを提供する。【解決手段】計算した現在位置に対応する各道路リンクを所定のメモリ領域に一時格納し、前記メモリに記憶した道路リンクのうち他の道路の道路リンクと接続しないものについて（１）連続する長さを順次積算しその積算値が所定の基準値を超えたこと（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたこと、の一方又は両方の成立をもって、前記領域が市街地でないと判定する。【選択図】図１
2006084220.tif 000002
【特許請求の範囲】
【請求項１】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置において、
前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する前記各道路リンクのうち他の道路の道路リンクと接続しないものの連続する長さを順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定手段
を備えたことを特徴とするナビゲーション装置。
【請求項２】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置において、
前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定手段
を備えたことを特徴とするナビゲーション装置。
【請求項３】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置において、
前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの
（１）連続する長さを順次積算しその積算値が所定の基準値を超え
かつ
（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたこと
をもって、前記領域が市街地でないと判定する市街地判定手段
を備えたことを特徴とするナビゲーション装置。
【請求項４】
前記市街地判定手段は、前記処理部により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記積算値が所定の基準値を超えたことをもって前記領域が市街地と判定すること
を特徴とする請求項１から３のいずれか一項に記載のナビゲーション装置。
【請求項５】
前記市街地判定手段は、前記各積算値の二つ又は三つがそれぞれ対応する前記各基準値を同時に超えたことをもって市街地か否かを判定する場合に、前記現在位置に対応する道路リンクまでの通過済範囲について前記各積算値のうち一つ又は二つが、対応する前記基準値を超えたときに、前記現在位置の道路リンクの前途に連なる所定範囲の道路リンクも前記データベースから読み出して対象に加えその所定範囲までの残る積算値を計算し対応する前記基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定する
ことを特徴とする請求項１から４のいずれか一項に記載のナビゲーション装置。
【請求項６】
前記市街地判定手段は、
前記各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上から前記２ないし０に変化した道路リンクから開始して接続数と、前記長さと、前記方位変化の差分の、各積算値を順次計算し、
接続数の積算値が０のままで、前記長さの積算値が第１の所定値を超え、かつ、前記方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定する
ことを特徴とする請求項１から５のいずれか一項に記載のナビゲーション装置。
【請求項７】
前記市街地判定手段は、
前回市街地でないと判定した後に、前記接続数の積算値が第３の所定値を超え、かつ、前記道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定する
ことを特徴とする請求項６記載のナビゲーション装置。
【請求項８】
前記市街地判定手段は、
前回市街地であると判定した後に、前記接続数の積算値が第３の所定値以下であり、かつ、前記道路リンクの長さの積算値が第４の所定値を超え、かつ、前記方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定する
ことを特徴とする請求項６又は７記載のナビゲーション装置。
【請求項９】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を用いるナビゲーション方法において、
前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する前記各道路リンクのうち他の道路の道路リンクと接続しないものの連続する長さを順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理
を含むことを特徴とするナビゲーション方法。
【請求項１０】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を用いるナビゲーション方法において、
前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理
を含むことを特徴とするナビゲーション方法。
【請求項１１】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を用いるナビゲーション方法において、
前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの
（１）連続する長さを順次積算しその積算値が所定の基準値を超え
かつ
（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたこと
をもって、前記領域が市街地でないと判定する市街地判定処理
を含むことを特徴とするナビゲーション方法。
【請求項１２】
前記市街地判定処理は、前記処理部により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記積算値が所定の基準値を超えたことをもって前記領域が市街地と判定すること
を特徴とする請求項９から１１のいずれか一項に記載のナビゲーション方法。
【請求項１３】
前記市街地判定処理は、前記各積算値の二つ又は三つがそれぞれ対応する前記各基準値を同時に超えたことをもって市街地か否かを判定する場合に、前記現在位置に対応する道路リンクまでの通過済範囲について前記各積算値のうち一つ又は二つが、対応する前記基準値を超えたときに、前記現在位置の道路リンクの前途に連なる所定範囲の道路リンクも前記データベースから読み出して対象に加えその所定範囲までの残る積算値を計算し対応する前記基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定する
ことを特徴とする請求項９から１２のいずれか一項に記載のナビゲーション方法。
【請求項１４】
前記市街地判定処理は、
前記各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上から前記２ないし０に変化した道路リンクから開始して接続数と、前記長さと、前記方位変化の差分の、各積算値を順次計算し、
接続数の積算値が０のままで、前記長さの積算値が第１の所定値を超え、かつ、前記方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定する
ことを特徴とする請求項９から１３のいずれか一項に記載のナビゲーション方法。
【請求項１５】
前記市街地判定処理は、
前回市街地でないと判定した後に、前記接続数の積算値が第３の所定値を超え、かつ、前記道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定する
ことを特徴とする請求項１４記載のナビゲーション方法。
【請求項１６】
前記市街地判定処理は、
前回市街地であると判定した後に、前記接続数の積算値が第３の所定値以下であり、かつ、前記道路リンクの長さの積算値が第４の所定値を超え、かつ、前記方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定する
ことを特徴とする請求項１４又は１５記載のナビゲーション方法。
【請求項１７】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を制御することによりナビゲーション処理を行わせるナビゲーションプログラムにおいて、
そのプログラムは、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する前記各道路リンクのうち他の道路の道路リンクと接続しないものの連続する長さを順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理
を行わせることを特徴とするナビゲーションプログラム。
【請求項１８】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を制御することによりナビゲーション処理を行わせるナビゲーションプログラムにおいて、
そのプログラムは、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理
を行わせることを特徴とするナビゲーションプログラム。
【請求項１９】
道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を制御することによりナビゲーション処理を行わせるナビゲーションプログラムにおいて、
前記プログラムは、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの
（１）連続する長さを順次積算しその積算値が所定の基準値を超え
かつ
（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたこと
をもって、前記領域が市街地でないと判定する市街地判定処理
を行わせることを特徴とするナビゲーションプログラム。
【請求項２０】
前記市街地判定処理は、前記処理部により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記積算値が所定の基準値を超えたことをもって前記領域が市街地と判定すること
を特徴とする請求項１７から１９のいずれか一項に記載のナビゲーションプログラム。
【請求項２１】
前記市街地判定処理は、前記各積算値の二つ又は三つがそれぞれ対応する前記各基準値を同時に超えたことをもって市街地か否かを判定する場合に、前記現在位置に対応する道路リンクまでの通過済範囲について前記各積算値のうち一つ又は二つが、対応する前記基準値を超えたときに、前記現在位置の道路リンクの前途に連なる所定範囲の道路リンクも前記データベースから読み出して対象に加えその所定範囲までの残る積算値を計算し対応する前記基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定する
ことを特徴とする請求項１７から２０のいずれか一項に記載のナビゲーションプログラム。
【請求項２２】
前記市街地判定処理は、
前記各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上から前記２ないし０に変化した道路リンクから開始して接続数と、前記長さと、前記方位変化の差分の、各積算値を順次計算し、
接続数の積算値が０のままで、前記長さの積算値が第１の所定値を超え、かつ、前記方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定する
ことを特徴とする請求項１７から２１のいずれか一項に記載のナビゲーションプログラム。
【請求項２３】
前記市街地判定処理は、
前回市街地でないと判定した後に、前記接続数の積算値が第３の所定値を超え、かつ、前記道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定する
ことを特徴とする請求項２２記載のナビゲーションプログラム。
【請求項２４】
前記市街地判定処理は、
前回市街地であると判定した後に、前記接続数の積算値が第３の所定値以下であり、かつ、前記道路リンクの長さの積算値が第４の所定値を超え、かつ、前記方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定する
ことを特徴とする請求項２２又は２３記載のナビゲーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、道路リンクの具体的な形態に基づいて、現在位置が市街地か否かを正確に判別することにより、高精度なマップマッチングと正しい現在位置表示を実現するナビゲーション装置、方法及びプログラムに関する。
【背景技術】
【０００２】
近年急速に普及したナビゲーション装置は、道路データベースなどに予め用意した道路地図データを用いて、ＧＰＳ、ジャイロ、車速パルス等の航法データから逐次計算する自車位置を周辺地図上に画面表示したり、指定される目的地への最適な経路についても、計算のうえ画面表示や合成音声で誘導案内（ナビゲーション）するものである。
【０００３】
このようなナビゲーションにおける現在位置については、道路を前提とするため、上記のような航法データから単に緯度経度を算出するだけでなく、それら航法データから得た車両の走行軌跡形状を道路データベースに記録された道路形状と比較することにより、現在位置が道路上でいえばどの道路のどの位置かを判断する処理が不可欠であり、この処理をマップマッチングと呼ぶ。
【０００４】
ここで、車両の走行する場所は、山間部と市街地とに大別でき、山間部と市街地とでは、適切なマップマッチング動作の基準が異なる。例えば、山間部では、道路にカーブが多く、データベース化する際のデジタルデータ化による誤差が大きいので道路形状と走行軌跡形状の差が大きくなりやすい一方、駐車場など道路外の施設は少ないため、なるべく道路上に現在位置を仮定することが前提となる。このため例えば、ある走行軌跡上の現在位置を、近くの道路上とみなす許容誤差すなわち基準距離は比較的大きくすべきとされる。
【０００５】
一方、市街地では、山間部に比べて道路のカーブは少なく、デジタル化による実際との誤差も小さいので、道路形状と走行軌跡形状の差も、道路上を走行している限り小さい一方、道路から駐車場などへの逸脱が多いことが前提となる。このため例えば、ある走行軌道上の現在位置が、道路形状から逸脱したと判断する許容誤差すなわち基準距離は比較的小さくすべきとされる。
【０００６】
以上のように、道路形状と走行軌跡形状との一致や逸脱の基準となる距離などの程度は、山間部と市街地では異ならせる必要があり、この切り換えのため、現在位置が市街地かどうかの判定が従来から行われてきた。
【０００７】
そして、従来では、上記のような市街地かどうかの判定は、地図データベース中のデータ容量で分割されたクラスタ領域ごとに、または、メッシュで緯度経度方向へ分割された領域ごとに、それら領域に含まれる交差点数（典型的具体例として、ＫＩＷＩ形式データベースでは、道路データフレームのディストリビューションヘッダ中のマルチリンク数）に基づいて行っていた。すなわち、現在位置が属する上記のようなクラスタやメッシュに対応する交差点数の多寡、すなわち、所定の境界値を超えるか否かに基づいて、市街地か否かを判定していた（例えば、特許文献1参照）。
【特許文献１】特開平８−２９２０４２
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、上記のような従来技術では、メッシュの切り方によっては、市街地かどうかを正しく判断できず、その結果マップマッチングの精度も低下する問題があった。例えば、あるメッシュが市街地と山間部を等しく含むと、そのメッシュの交差点数が境界値付近となって判断が困難となる場合があり、また、市街地内であるのに緑地が多く交差点数が少なければ山間部と誤認される場合があった。このように、市街地かどうかを正しく判定できず、市街地または山間部の別に応じた適切なマップマッチングが難しくなるとその精度も低下し、現在位置表示も不正確となる問題があった。
【０００９】
本発明は、上記のような課題を解決するもので、その目的は、道路リンクの具体的な形態に基づいて、現在位置が市街地か否かを正確に判別することにより、高精度なマップマッチングと正しい現在位置表示を実現するナビゲーション装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【００１０】
上記の目的を達成するため、請求項１の発明は、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置において、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する前記各道路リンクのうち他の道路の道路リンクと接続しないものの連続する長さを順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定手段を備えたことを特徴とする。
【００１１】
請求項９の発明は、請求項１の発明を方法という見方から捉えたもので、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を用いるナビゲーション方法において、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する前記各道路リンクのうち他の道路の道路リンクと接続しないものの連続する長さを順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理を含むことを特徴とする。
【００１２】
請求項１７の発明は、請求項１，９の発明をコンピュータのプログラムという見方から捉えたもので、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を制御することによりナビゲーション処理を行わせるナビゲーションプログラムにおいて、そのプログラムは、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する前記各道路リンクのうち他の道路の道路リンクと接続しないものの連続する長さを順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理を行わせることを特徴とする。
【００１３】
本発明では、他の道路と接続しないものという条件で一本道であることを判定し、この一本道の続く長さの積算値が基準値を超えることにより、市街地を外れたことの判定を効率よく高精度に行うことが可能となる。
【００１４】
請求項２の発明は、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置において、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定手段を備えたことを特徴とする。
【００１５】
請求項１０の発明は、請求項２の発明を方法という見方から捉えたもので、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を用いるナビゲーション方法において、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理を含むことを特徴とする。
【００１６】
請求項１８の発明は、請求項２，１０の発明をコンピュータのプログラムという見方から捉えたもので、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を制御することによりナビゲーション処理を行わせるナビゲーションプログラムにおいて、そのプログラムは、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理を行わせることを特徴とする。
【００１７】
本発明では、他の道路と接続しないものという条件で一本道であることを判定し、この一本道の続く間の方位変化の差分すなわち曲がりくねりの量の積算値が基準値を超えることにより、市街地を外れたことの判定を効率よく高精度に行うことが可能となる。
【００１８】
請求項３の発明は、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置において、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの（１）連続する長さを順次積算しその積算値が所定の基準値を超えかつ（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定手段を備えたことを特徴とする。
【００１９】
請求項１１の発明は、請求項３の発明を方法という見方から捉えたもので、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を用いるナビゲーション方法において、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの（１）連続する長さを順次積算しその積算値が所定の基準値を超えかつ（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理を含むことを特徴とする。
【００２０】
請求項１９の発明は、請求項３，１１の発明をコンピュータのプログラムという見方から捉えたもので、道路リンクを用いた道路地図データのデータベースと、センサ群から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う処理部と、を備える車載型のナビゲーション装置を制御することによりナビゲーション処理を行わせるナビゲーションプログラムにおいて、前記プログラムは、前記処理部により、前記マップマッチングのために前記現在位置又はその前途の属する領域が市街地か否かを判定するにあたり、計算した前記現在位置に対応する各道路リンクのうち他の道路の道路リンクと接続しないものの（１）連続する長さを順次積算しその積算値が所定の基準値を超えかつ（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたことをもって、前記領域が市街地でないと判定する市街地判定処理を行わせることを特徴とする。
【００２１】
本発明では、他の道路と接続しないものという条件で一本道であることを判定し、この一本道の続く長さの積算値と、方位変化の差分の積算値すなわち曲がりくねりの量の併用により、市街地か否かの判定を効率よく高精度に行うことが可能となる。
【００２２】
請求項４の発明は、請求項１から３のいずれか一項に記載のナビゲーション装置において、前記市街地判定手段は、前記処理部により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記積算値が所定の基準値を超えたことをもって前記領域が市街地と判定することを特徴とする。
【００２３】
請求項１２の発明は、請求項４の発明を方法という見方から捉えたもので、請求項９から１１のいずれか一項に記載のナビゲーション方法において、前記市街地判定処理は、前記処理部により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記積算値が所定の基準値を超えたことをもって前記領域が市街地と判定することを特徴とする。
【００２４】
請求項２０の発明は、請求項４，１２の発明をコンピュータのプログラムという見方から捉えたもので、請求項１７から１９のいずれか一項に記載のナビゲーションプログラムにおいて、前記市街地判定処理は、前記処理部により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記積算値が所定の基準値を超えたことをもって前記領域が市街地と判定することを特徴とする。
【００２５】
本発明では、さらに、他の道路リンクとの接続数の積算値という単純な基準の併用により、市街地か否かをより一層効率よく高精度に判定可能となる。
【００２６】
請求項５の発明は、請求項１から４のいずれか一項に記載のナビゲーション装置において、前記市街地判定手段は、前記各積算値の二つ又は三つがそれぞれ対応する前記各基準値を同時に超えたことをもって市街地か否かを判定する場合に、前記現在位置に対応する道路リンクまでの通過済範囲について前記各積算値のうち一つ又は二つが、対応する前記基準値を超えたときに、前記現在位置の道路リンクの前途に連なる所定範囲の道路リンクも前記データベースから読み出して対象に加えその所定範囲までの残る積算値を計算し対応する前記基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定することを特徴とする。
【００２７】
請求項１３の発明は、請求項５の発明を方法という見方から捉えたもので、請求項９から１２のいずれか一項に記載のナビゲーション方法において、前記市街地判定処理は、前記各積算値の二つ又は三つがそれぞれ対応する前記各基準値を同時に超えたことをもって市街地か否かを判定する場合に、前記現在位置に対応する道路リンクまでの通過済範囲について前記各積算値のうち一つ又は二つが、対応する前記基準値を超えたときに、前記現在位置の道路リンクの前途に連なる所定範囲の道路リンクも前記データベースから読み出して対象に加えその所定範囲までの残る積算値を計算し対応する前記基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定することを特徴とする。
【００２８】
請求項２１の発明は、請求項５，１３の発明をコンピュータのプログラムという見方から捉えたもので、請求項１７から２０のいずれか一項に記載のナビゲーションプログラムにおいて、前記市街地判定処理は、前記各積算値の二つ又は三つがそれぞれ対応する前記各基準値を同時に超えたことをもって市街地か否かを判定する場合に、前記現在位置に対応する道路リンクまでの通過済範囲について前記各積算値のうち一つ又は二つが、対応する前記基準値を超えたときに、前記現在位置の道路リンクの前途に連なる所定範囲の道路リンクも前記データベースから読み出して対象に加えその所定範囲までの残る積算値を計算し対応する前記基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定することを特徴とする。
【００２９】
これらの態様では、さらに、市街地判定に用いる複数の積算値の一部が基準値を超えたときに、道路リンクのデータを先読みして残りの積算値についても判断することにより、市街地か否かの判定を実際に該当領域に差し掛かる前に先んじて行い、より的確なマップマッチングを実現することが可能となる。
【００３０】
請求項６の発明は、請求項１から５のいずれか一項に記載のナビゲーション装置において、前記市街地判定手段は、前記各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上から前記２ないし０に変化した道路リンクから開始して接続数と、前記長さと、前記方位変化の差分の、各積算値を順次計算し、接続数の積算値が０のままで、前記長さの積算値が第１の所定値を超え、かつ、前記方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定することを特徴とする。
【００３１】
請求項１４の発明は、請求項６の発明を方法という見方から捉えたもので、請求項９から１３のいずれか一項に記載のナビゲーション方法において、前記市街地判定処理は、前記各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上から前記２ないし０に変化した道路リンクから開始して接続数と、前記長さと、前記方位変化の差分の、各積算値を順次計算し、接続数の積算値が０のままで、前記長さの積算値が第１の所定値を超え、かつ、前記方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定することを特徴とする。
【００３２】
請求項２２の発明は、請求項６，１４の発明をコンピュータのプログラムという見方から捉えたもので、請求項１７から２１のいずれか一項に記載のナビゲーションプログラムにおいて、前記市街地判定処理は、前記各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上から前記２ないし０に変化した道路リンクから開始して接続数と、前記長さと、前記方位変化の差分の、各積算値を順次計算し、接続数の積算値が０のままで、前記長さの積算値が第１の所定値を超え、かつ、前記方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定することを特徴とする。
【００３３】
請求項７の発明は、請求項６記載のナビゲーション装置において、前記市街地判定手段は、前回市街地でないと判定した後に、前記接続数の積算値が第３の所定値を超え、かつ、前記道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定することを特徴とする。
【００３４】
請求項１５の発明は、請求項７の発明を方法という見方から捉えたもので、請求項１４記載のナビゲーション方法において、前記市街地判定処理は、前回市街地でないと判定した後に、前記接続数の積算値が第３の所定値を超え、かつ、前記道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定することを特徴とする。
【００３５】
請求項２３の発明は、請求項７，１５の発明をコンピュータのプログラムという見方から捉えたもので、請求項２２記載のナビゲーションプログラムにおいて、前記市街地判定処理は、前回市街地でないと判定した後に、前記接続数の積算値が第３の所定値を超え、かつ、前記道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定することを特徴とする。
【００３６】
請求項８の発明は、請求項６又は７記載のナビゲーション装置において、前記市街地判定手段は、前回市街地であると判定した後に、前記接続数の積算値が第３の所定値以下であり、かつ、前記道路リンクの長さの積算値が第４の所定値を超え、かつ、前記方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定することを特徴とする。
【００３７】
請求項１６の発明は、請求項８の発明を方法という見方から捉えたもので、請求項１４又は１５記載のナビゲーション方法において、前記市街地判定処理は、前回市街地であると判定した後に、前記接続数の積算値が第３の所定値以下であり、かつ、前記道路リンクの長さの積算値が第４の所定値を超え、かつ、前記方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定することを特徴とする。
【００３８】
請求項２４の発明は、請求項８，１６の発明をコンピュータのプログラムという見方から捉えたもので、請求項２２又は２３記載のナビゲーションプログラムにおいて、前記市街地判定処理は、前回市街地であると判定した後に、前記接続数の積算値が第３の所定値以下であり、かつ、前記道路リンクの長さの積算値が第４の所定値を超え、かつ、前記方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定することを特徴とする。
【００３９】
これらの態様では、さらに、同じ道路及び他の道路との接続数という単純な数値を元に、同じ道路の前後の道路リンクとの接続数２までを０とみなして積算するという機械的な処理によって、一本道が続いているか否かを効率よく判定でき、これに長さと、方位変化の差分すなわち道路の曲がりくねりという基準の併用により、市街地か否かを効率よく高精度に判定できる。
【発明の効果】
【００４０】
以上のように、本発明によれば、道路リンクの具体的な形態に基づいて、現在位置が市街地か否かを正確に判別することにより、高精度なマップマッチングと正しい現在位置表示を実現するナビゲーション装置、方法及びプログラムを提供することが可能となる。
【発明を実施するための最良の形態】
【００４１】
次に、本発明のナビゲーション装置（以下「本装置」と呼ぶ）、対応するナビゲーション方法及びプログラムを実施するための最良の実施形態について、図を参照して説明する。なお、すでに説明した従来の技術と共通の前提事項は再言しない。
【００４２】
〔１．構成〕
本装置は、車載型のナビゲーション装置で、図１の機能ブロック図に示す以下の各要素を備える。すなわち、ＧＰＳのアンテナやレシーバを含む絶対位置・方位検出部１と、ジャイロ等を利用した相対方位検出部２と、車より得られるパルスを処理する車速検出部３は、ナビゲーション用の航法データを得るセンサ群である。ディスク制御部１２は、ハードディスク、ＤＶＤ−ＲＯＭ、ＣＤ−ＲＯＭなどのドライブで、道路リンクを用いた道路地図データのデータベースを読み取る役割を果たし、携帯電話などを経由するサーバからの情報提供（いわゆるオフボード）で置き換えることもできる。
【００４３】
また、処理部４は、システム全体の制御を司るメインＣＰＵ及びその周辺回路で、センサ群（１〜３）から得る航法データに基づく現在位置の計算及びマップマッチングを含むナビゲーション処理を、前記道路地図データを用いて行う部分である。
【００４４】
また、メモリＭのうち、ＲＯＭ５は、処理部４のＣＰＵのためのプログラムを格納し、ＤＲＡＭ（ダイナミックＲＡＭ）６は、前記ＣＰＵにより処理されるデータを格納し、ＳＲＡＭ（スタティックＲＡＭ）７は、メイン電源ＯＦＦ時も設定等の情報をバッテリーバックアップし、ＶＲＡＭ（ビデオＲＡＭ）８は表示部１０に表示する画像のビットパターンの書込み用である。
【００４５】
また、表示部１０は地図やメニューなどの情報を表示する部分で、例えばＴＦＴ液晶パネルなどである。入力部１１はユーザからの様々な命令や情報の入力を受け付ける部分で、例えばスイッチ類やタッチパネルなどである。ユーザインタフェース部９は、表示部１０や入力部１１と、処理部４とを結び信号の伝達、変換、タイミング制御などを行う部分である。ＦＭ多重放送受信及び処理部１３は、ＦＭ放送波を受信すると共にＶＩＣＳなど所望のデータを取り出す部分である。
【００４６】
また、処理部４は、ＲＯＭ５内のプログラムにしたがって、以下の機能作用や処理を実現、実行する手段となる各要素４１〜４７の役割を果たす。
【００４７】
〔２．作用効果〕
すなわち、目的地等指定部４１は地図上でのカーソル操作や施設検索などで目的地の指定を受け付け、その目的地への最適な経路を経路設定部４２が経路探索アルゴリズムにより探索、設定し、現在位置計算部４０が逐次計算する現在位置に基づき、地図表示部４３が現在位置を周辺地図や経路と共に地図表示し、案内部４４が経路に沿った進行方向等を合成音声や画面表示などで案内する。
【００４８】
ここで、上記のような現在位置については、緯度経度の算出だけでなく、具体的な道路で言えばどの道路のどの区間なのか、道路外であればどの施設上なのかを、市街地判定部４５の判定する市街地か否か（市街地か山間部か）に応じた判断基準により、マップマッチング部４６が判定（マップマッチング）し、その結果に応じて地図表示や案内における画面表示等の動作を制御部４７が制御する。
【００４９】
所定時間間隔ごとに実行される上記のようなマップマッチングを含む現在位置算出の処理手順を図２のフローチャートに示す。
【００５０】
〔２−１．作用の概略〕
この図に示すステップＳ１１〜Ｓ１７までは従来技術と共通であり、まず、処理部４の現在位置計算部４０が、接続された絶対位置・方位検出部１、相対方位検出部２、車速検出部３から、それぞれの出力を読み込む（ステップＳ１１）。それら出力から方位と（ステップＳ１２）走行距離を算出し（ステップＳ１３）、走行距離を方位で緯度経度方向の移動量に分解のうえ（ステップＳ１４）、これら各移動量を前回図２の手順を実行のときに算出した緯度経度へそれぞれ加算し、仮の現在位置とする（ステップＳ１５）。
【００５１】
そのうえで、記憶媒体に道路地図データを格納したディスク制御部１２から仮の現在位置近傍の道路リンクデータを検索し（ステップＳ１６）、マップマッチングの処理、すなわち、それら道路リンクデータと現在位置の履歴（走行軌跡）との比較を行い、道路リンク上の現在位置を算出し、今回の現在位置とする処理を行う（ステップＳ１７）。
【００５２】
以上の処理に加え、本実施形態では、次回のマップマッチングのために、以下の処理も行う。まず、ステップＳ１７で算出した現在位置に対応する道路リンクのデータを、ダイナミックＲＡＭ（ＤＲＡＭ）６内の所定のメモリ領域へ保持する（ステップＳ１８）。この場合、現在位置に対応する道路リンクは、現在位置と座標同士が最寄の道路リンクや、最後にマップマッチングされた即ち走行中の道路に連なる次の道路リンクなどであるが、該当する道路リンクがない場合は、仮の現在位置からみて所定の方位（例えば、進行方向を中心に所定角度範囲）内で最近傍のリンクを保持する。
【００５３】
ここで保持する内容は、道路リンクの両端緯度経度座標、長さ、方位、終点に接続するリンクの数で、ここでいうリンクの数は、接続数、自リンクを含むが、接続数２以下の場合は０を保持する。これら保持された道路リンクのデータをもとに、マップマッチングのために現在位置又はこれから走行しようとする前途の属する領域が市街地に含まれるか否かを判定（以下「市街地判定」とも呼ぶ）する（ステップＳ１９）。この判定は、道路リンクが一本道状態で続く長さ、その曲がりくねり度合い（屈曲度）や、交差点が所定距離内にどれだけあるかを評価することで行われる。
【００５４】
〔２−２．市街地判定の概略〕
上記のように所定のメモリ領域に一時格納する道路リンクのデータに基づいて、市街地判定（ステップＳ１９）を行う概略としては、そのような道路リンクのうち他の道路の道路リンクと接続しないものについて
（１）連続する長さを順次積算しその積算値が所定の基準値を超えたこと
（２）連続する方位変化の差分を順次積算しその積算値が所定の基準値を超えたこと
の一方又は両方の成立をもって、前記領域が市街地でないと判定する。なお、本出願において基準値を「超えた」とは、閾値の設定如何により、「以上」と置換え可能である。
【００５５】
また、市街地判定部４５により、さらに、前記現在位置に対応する各道路リンクにおける他の道路の道路リンクとの接続数を順次積算し、現在位置を含む所定範囲内の各道路リンクにおける前記接続数の積算値が所定の基準値を超えたことをもって前記領域が市街地と判定するようにしてもよい。ここで、長さの積算値を用いる理由は、一本道が長く続けば山間部、という前提であり、方位変化の差分の積算値を用いる理由は、一本道がある程度以上曲がりくねれば（屈曲度があれば）山間部、という前提であり、接続数の積算値を併用する理由は、横道など他の道路と頻繁に繋がっていれば市街地、という前提である。さらに、上記の（１）長さの積算値、（２）方位変化の差分の積算値、（３）接続数の積算値、は自由に組み合わせて利用可能である。
【００５６】
そしてまた、前回市街地でないと判定した後に、接続数の積算値が第３の所定値を超え、かつ、道路リンクの長さの積算値が第４の所定値以下の場合に、市街地であると判定するなどの基準も併用可能である。
【００５７】
同様に、前回市街地であると判定した後に、接続数の積算値が第３の所定値以下であり、かつ、道路リンクの長さの積算値が第４の所定値を超え、かつ方位変化の差分の積算値が第５の所定値を超えた場合は、市街地でないと判定するようにしてもよい。
【００５８】
〔２−３．市街地判定の例〕
続いて、上記のようなアルゴリズムによる市街地判定の例を示す。
〔２−３−１．屈曲度による判定の例〕
まず、図３は、方位差分の積算値で表される道路の曲がりくねり（屈曲度）による判定の一例である。この例において、リンク１７が現在地を含むリンクとし、番号が若いほど過去とする。そして、実際には、リンク１７から順次１６，１５とさかのぼって評価するが、ここでは説明の便宜上、概念的な例として、最も古いリンクであるリンク１を最初に評価するリンクとし、２，３とたどった場合を示す。この際、Ｎ番目のリンクについて、Ｎ−１番目のリンクから方位差分の絶対値を算出するが、リンク１の場合は前のリンクがないので差分は０とする。そして、算出した差分および、長さを積算し、これら積算値がそれぞれ所定の値を超えるかどうかを、市街地ではないと判定する条件のひとつとする。
【００５９】
ここで、図３の例に対応する道路リンクのデータを保持する記憶領域など保持領域の内容について、方位、長さの積算の様子を図４に示す。この例において、長さ積算の所定値を１５０、方位差分積算値の所定値を１８０とすると、リンク６で長さ積算値が所定値１５０を超え、リンク１０で方位差分積算値が所定値１８０を超えるので、リンク１０以降が市街地でないと判定される。
【００６０】
〔２−３−２．早い判定の例〕
上記の例は、実際に走行したリンクを順次判断対象としたが、何らかの条件により前途のリンクを先読みして判定を前倒ししてもよい。例えば、市街地判定部４５が、各積算値の二つ又は三つがそれぞれ対応する各基準値を同時に超えたことをもって市街地か否かを判定する場合に、現在位置に対応する道路リンクまでの通過済範囲について各積算値のうち一つ又は二つが、対応する基準値を超えたときに、現在位置の道路リンクの前途に連なる所定範囲の道路リンクもデータベースから読み出して対象に加え、その所定範囲までの残る積算値を計算し対応する基準値を超えた場合に、現在位置又はその前途の属する領域が市街地か否かを判定するようにしてもよい。
【００６１】
図５は、図３と同じ道路の例において、判定を前倒しする様子を示す概念図である。この例では、リンクデータは図３と同様であるが、例えば、リンク６で長さ積算値が所定値１５０を超えたことが判定できれば、現在位置がリンク７上に到達したときに道路データを前方へたどりリンク８以降も得る。このとき例えば、リンク１０までを予測データとして得ることで、図３と同様に、リンク１０が市街地でないと判定でき、また、リンク７までの間に分岐点がないことから、市街地でないとの判断対象は、リンク７以降の範囲とすることができる。リンクを先読みする範囲については、市街地か否かの判定がつくまで、必要なだけの分量を先読みすればよい。
【００６２】
〔２−３−３．市街地を含む場合（接続数の処理）〕
図６は、他の道路との接続もある程度あるような市街地を含む場合で、リンク上の現在位置はリンク１２とする。ここで、接続数をどのように取り扱うかに関する処理の一例としては、各道路リンクについて、同じ道路の前後の道路リンクとの接続数２までを０とみなし、接続数がさらに他の道路の道路リンクとの接続数である３以上だった最後のリンク、又は、そのような３以上だったリンクから前記２ないし０に変化した道路リンクを基点として、その後の分について、接続数と、長さと、方位変化の差分の、各積算値を順次計算することが考えられる。この場合、例えば、接続数の積算値が０のままで、長さの積算値が第１の所定値を超え、かつ、方位変化の差分の積算値が第２の所定値を超えた場合に、市街地でないと判定するようにしてもよい。
【００６３】
例えば、図６の例に対応した道路リンクデータ保持領域の内容を図７に示す。この例において、例えば、リンク１については、終点にリンク２があることに加え、その他の２つのリンクとも接続があるので、自身も含めて接続数は４となり、リンク２についても同様である。また、リンク３については、リンク４とその他の１つのリンクと接続があるので接続数は３となる。
【００６４】
リンク４以降では接続数が０のリンクが続き、リンク４から始めて、図３及び図４でも説明した長さ積算の所定値１５０を超えるのはリンク１１である。同様にリンク４から始めて方位差分の所定値１８０を超えるのはリンク１２である。このように、接続数が０でなかった最後のリンクから起算する各積算値を、予め決められた各所定値と比較することにより、リンク１２で市街地でないことが判定できる。なお、積算値の起算点すなわち基点は、他の道路と接続しているため接続数が０でなかった最後のリンクでもよいし、一本道となった最初のリンクからでもよく、アルゴリズム上の意義は同じである。また、もちろん、図５と同様に、図６のリンク８の時点で前方へリンクをたどることで、さらに早い判定が可能となる（図示せず）。
【００６５】
〔２−３−４．Ｕターンを含む場合〕
図８は、市街地でＵターンを含むような場合で、図９は対応するデータの例である。リンク上の現在位置はリンク４とする。この場合、方位差分積算値が短い距離内で急激に増え、リンク１を起点にするとリンク４において、図３で例にあげた長さ積算値と方位差分積算値の各所定値は超えるが、このように長さや方位差分の積算値が大きくなる場合でも、接続数が０でない最後のリンクやその直後の一本道の始まりを起点にすることで、市街地でないとの判断を回避できる。
【００６６】
〔２−３−５．緑地などを含む場合〕
図１０は、緑地などを含み、破線で区切られた境界の右側のメッシュに交差点が少ない場合であり、対応するデータを図１１に示す。図１０右側のメッシュは、従来技術によれば市街地と判断しない程度の交差点数しかないものとし、リンク上の現在位置はリンク５とする。実際の車両はリンク４から、駐車場などのためリンクを離れているが、リンク５に方位と位置は近い状態である。
【００６７】
この場合、従来技術のように単に交差点の多寡から市街地でないと判断すれば、極力道路上にマップマッチングするためリンク５上が現在位置となる可能性があるが、本実施形態では、接続数が０になるリンク４を起点とすると、リンク５ではまだ、一本道の長さも曲がりくねりの量も多く積算されておらず、市街地と判定できる。そして、市街地では、道路形状から逸脱したと判断する許容誤差すなわち基準距離は比較的小さい値を用いることから、リンク４でリンクを離脱したと判断できることとなる。
【００６８】
〔２−４．詳細な処理フロー〕
上記のように図３〜１１に例示した判定を実現する処理手順は、図２のステップＳ１９に該当するもので、その具体的内容を図１２のフローチャートに示す。なお、以下の説明では、レジスタやアキュムレータの名称（例えば、Ｎ，Ｃ，ＡＬなど）を、それぞれが保持する値やその意味を表すものとして、「現在リンクＣ」のように用いる。また、長さ積算値を「長さ計」、方位差分積算値を「方位差分計」、接続数積算値を「接続数計」との略称も用いる。
【００６９】
そして、図１２の処理手順は、道路リンクの接続数、長さ、方位差分の各積算値（ステップ２０６）の組合せにより（ステップ２１０，２１３，２１４）市街地か（ステップ２１５）否か（ステップ２１１）判定し、各積算値の基点は（ステップ２０９）道路リンクの接続数が３以上から（ステップ２０８）０すなわち３未満へ変化（ステップ２０７）した時点で記録した（ステップ２０９）基点の値である。なお、基点は、接続数が０でなかった最後のリンクでも、その直後の一本道となった最初のリンクでも良く、図１２の例は後者であるが、ステップ２０８及び２１６を省略し、各所定値を減らせば前者の例となる。
【００７０】
〔２−４−１．初期化と繰返し制御〕
この手順では、まず、レジスタＮ，Ｃ，ＬＰ，ＤＰの初期化を行う（ステップ２０１）。具体的には、まず、保持しているリンク数すなわち判断対象とするリンクの最大番号をＮに代入する。また、Ｃについては、処理し終わったリンクの番号又は現在処理しているリンクの番号（「現在リンク」と呼ぶ）を格納するもので、初期値「０」をセットする。ＬＰについては、基点での長さ積算値を保持するもので、初期値「０」をセットする。ＤＰについては、基点での方位差分積算値を保持するもので、初期値「０」をセットする。そして、保持している全リンクの処理が終わって現在リンクＣが最大番号（最大数）Ｎに等しくなるまで（ステップ２０２）以下の処理を繰り返す。
【００７１】
〔２−４−２．積算値の初期化〕
繰り返す処理内容としては、まず、Ｃ番目のすなわち現在リンクのデータを読み出してその長さをＬ、方位をＤにセットする（ステップ２０３）。また、現在リンクＣが０、すなわち最初のリンクのときだけ（ステップ２０４）、長さ積算用のアキュームレータＡＬにリンク０の長さＬを、方位差分の絶対値を保持するレジスタＤＤに０を、方位差分を積算するアキュームレータＡＤに０を、接続数を積算するアキュームレータＡＣにリンク０の接続数を、それぞれ代入する（ステップ２０５）。
【００７２】
〔２−４−３．積算〕
このときを除けば、現在リンクＣは０ではないので（ステップ２０４）、現在リンクのデータをもとに、その長さを長さ積算値ＡＬに加算し、直前のすなわちＣ−１番目のリンクと比較した方位差分の絶対値ＤＤを計算のうえ方位差分積算値ＡＤに加算し、接続数を接続数積算値ＡＣに加算する（ステップ２０６）。
【００７３】
〔２−４−４．一本道での判定〕
そのうえで、現在のＣ番目のリンクの接続数を判定する（ステップ２０７）。すなわち、道路リンクの接続数が、同じ道路の前後の各道路リンクのみであれば通常２であり、すなわち３より小さく、この場合は（ステップ２０７）、この道路リンクは他の道路と接続がなく一本道を構成している部分で、前回記録した（ステップ２１６）接続数が３以上すなわち他の道路と接続していれば、一本道の始まる基点としてその時点の長さ積算値ＡＬを長さ積算値の基点ＬＰへ代入（コピー）して置き換える上書き更新を行い、同様に、その時点の方位差分積算値ＡＤを基点ＤＰへ、接続数積算値ＡＣも基点ＣＰへ代入する（ステップ２０９）。
【００７４】
そして、市街地から山間部等へ外れていないかの判定を行う（ステップ２１０）。すなわち、長さ積算値ＡＬの基点ＬＰからの差が所定値１を超え（一本道が続き）、かつ、方位差分積算値ＡＤの基点ＤＰからの差が所定値２を超えた（曲がりくねりが多い）場合に（ステップ２１０）、市街地でないと判定する（ステップ２１１）。この判断の基準は、図３，５，６で説明した例と同じで、例えば、所定値１は１５０、所定値２は１８０、といった値を用いる。
【００７５】
〔２−４−５．他の道路と接続している場合の判定〕
一方、Ｃ番目の現在リンクの接続数が３以上の場合でも（ステップ２０７）、現在の判定状態すなわち前回の判定結果が「市街地」なら（ステップ２１２）、市街地から山間部等へ外れていないかの判定を行う（ステップ２１３）。すなわち、基点との差としてみた接続数の積算値（ＡＣ−ＣＰ）が所定値３未満で（他の道路との接続が少なく）、かつ、長さ積算値（ＡＬ−ＡＰ）が所定値４を超え（一本道が続き）、かつ、方位差分積算値（ＡＤ−ＤＰ）が所定値５を超えた（曲がりくねりが多い）場合、市街地でないと判断する（ステップ２１３）。
【００７６】
ここで、所定値３には例えば、一般的な四辻を考慮すると４などといった値を用い、また、所定値４や所定値５にはそれぞれ、例えばステップ２１０での所定値１や所定値２と同様、１５０，１８０といった値を用いる。
【００７７】
Ｃ番目の現在リンクの接続数が３以上で（ステップ２０７）、かつ、市街地と判定中でなければ（ステップ２１２）、市街地かを判定する（ステップ２１４，２１５）。すなわち、基点との差としてみた場合に、接続数の積算値（ＡＣ−ＣＰ）が所定値３を超え（他の道路との接続が多く）、かつ、長さ積算値（ＡＬ−ＬＰ）が所定値４未満（一本道は長くない）の場合（ステップ２１４）、市街地と判定する（ステップ２１５）。
【００７８】
以上の繰返し処理の最後では、現在のＣ番目の道路リンクの接続数を前回接続数Ｘとして記録し（ステップ２１６）、ループ制御用のカウンタＣを１加算したうえ（ステップ２１７）、繰返し処理の冒頭（ステップ２０２）へ戻る。
【００７９】
なお、市街地か否かの判定（ステップ２１１，２１５）の結果はフラグなどにより、形状比較によるマップマッチング（図２のＳ１７）に利用される。また、この場合のフラグは従来と共通で、例えばメッシュ内の交差点数から判断したフラグと同等である。
【００８０】
〔３．効果〕
以上のような本実施形態では、道路リンクの具体的な形態に基づいて、現在位置が市街地か否か（山間部か）をより的確に判別することにより、走行地域に適したマップマッチングと正しい現在位置表示を実現し、例えば、自車位置表示が山間部では安定して道路上となり、市街地では道路上から駐車上等に逸脱してもこまめに追従するナビゲーション装置、方法及びプログラムを提供することが可能となる。
【００８１】
具体的には、本実施形態では、他の道路と接続しないものという条件で一本道であることを判定し、この一本道の続く長さの積算値が基準値を超えることにより、市街地を外れたことの判定を効率よく高精度に行うことが可能となる。
【００８２】
また、本実施形態では、他の道路と接続しないものという条件で一本道であることを判定し、この一本道の続く間の方位変化の差分すなわち曲がりくねりの量の積算値が基準値を超えることにより、市街地を外れたことの判定を効率よく高精度に行うことが可能となる。
【００８３】
また、本実施形態では、他の道路と接続しないものという条件で一本道であることを判定し、この一本道の続く長さの積算値と、方位変化の差分の積算値すなわち曲がりくねりの量の併用により、市街地か否かの判定を効率よく高精度に行うことが可能となる。
【００８４】
また、本実施形態では、さらに、他の道路リンクとの接続数の積算値という単純な基準の併用により、市街地か否かをより一層効率よく高精度に判定可能となる。
【００８５】
また、本実施形態では、さらに、市街地判定に用いる複数の積算値の一部が基準値を超えたときに、道路リンクのデータを先読みして残りの積算値についても判断することにより、市街地か否かの判定を実際に該当領域に差し掛かる前に先んじて行い、より的確なマップマッチングを実現することが可能となる。
【００８６】
また、本実施形態では、さらに、同じ道路及び他の道路との接続数という単純な数値を元に、同じ道路の前後の道路リンクとの接続数２までを０とみなして積算するという機械的な処理によって、一本道が続いているか否かを効率よく判定でき、これに長さと、方位変化の差分すなわち道路の曲がりくねりという基準の併用により、市街地か否かを効率よく高精度に判定できる。
【００８７】
〔４．他の実施形態〕
なお、本発明は上記実施形態に限定されるものではなく、次に例示するような他の実施形態も含むものである。例えば、市街地との判定や市街地でないとの判定の契機は、図１２の例には限定されず、長さ積算値、方位差分積算値、接続数積算値を所望の組合せで利用可能であり、例えば、同じ積算値の閾値となる所定値についても、市街地であるとの判定のときと、市街地で無いとの判定のときとで、異なる値を適用することも可能である。
【図面の簡単な説明】
【００８８】
【図１】本発明の実施形態の構成を示す機能ブロック図。
【図２】本発明の実施形態において、現在位置算出を含む処理手順を示すフローチャート。
【図３】本発明の実施形態における道路データの一例を示す図。
【図４】図３に対応する道路リンクデータの内容を示す概念図。
【図５】図３の道路データの途中において、前途の分（破線）を先読みすることを示す概念図。
【図６】本発明の実施形態において、道路データの他の例（接続あり）を示す図。
【図７】図６に対応する道路リンクデータの内容を示す概念図。
【図８】本発明の実施形態において、道路データの他の例（市街地）を示す図。
【図９】図８に対応する道路リンクデータの内容を示す概念図。
【図１０】本発明の実施形態において、道路データの他の例（緑地あり）を示す図。
【図１１】図１０に対応する道路リンクデータの内容を示す概念図。
【図１２】本発明の実施形態における市街地判定の具体的な処理手順を示すフローチャート。
【符号の説明】
【００８９】
１…絶対位置・方位検出部
２…相対方位検出部
３…車速検出部
４…処理部（メインＣＰＵ及びその周辺回路）
５…ＲＯＭ
６…ダイナミックＲＡＭ（ＤＲＡＭ）
７…スタティックＲＡＭ（ＳＲＡＭ）
８…ビデオＲＡＭ（ＶＲＡＭ）
９…ユーザインターフェース部
１０…表示部
１１…入力部
１２…ディスク制御部
１３…ＦＭ多重放送受信及び処理部
４１…目的地等指定部
４２…経路設定部
４３…地図表示部
４４…案内部
４５…市街地判定部
４６…マップマッチング部
４７…制御部
【図１】
2006084220.tif 000003
【図２】
2006084220.tif 000004
【図３】
2006084220.tif 000005
【図４】
2006084220.tif 000006
【図５】
2006084220.tif 000007
【図６】
2006084220.tif 000008
【図７】
2006084220.tif 000009
【図８】
2006084220.tif 000010
【図９】
2006084220.tif 000011
【図１０】
2006084220.tif 000012
【図１１】
2006084220.tif 000013
【図１２】
2006084220.tif 000014