(57)【要約】【課題】移動体に搭載されたカメラの撮影画像に基づいて、負荷の少ない処理により移動体の現在位置を判定する。【解決手段】位置判定装置は、移動体の移動に伴って道路上の対象物を検出し、検出した対象物の間隔を算出する。移動体の移動に伴い、複数の対象物が検出され、その間隔が算出される。一方、記憶部には、地図上の対象物の間隔が記憶されている。位置判定装置は、移動体の移動に伴って算出された対象物の間隔と、記憶部に記憶されている対象物の間隔とに基づいて、移動体の位置を判定する。【選択図】図９
2020060597.tif 000002
【特許請求の範囲】
【請求項１】
移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出手段と、
前記対象物の間隔を逐次算出する算出手段と、
前記算出手段が算出した間隔と、記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定手段と、
を備えることを特徴とする位置判定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体の位置を判定する手法に関する。
【背景技術】
【０００２】
従来、移動体のナビゲーション装置などでは、位置特定技術としてＧＰＳを使用している。しかし、ＧＰＳは通常数ｍ〜数十ｍの測位誤差がある。その誤差を補正するための技術として特許文献１、２などが提案されている。
【０００３】
特許文献１は、車載カメラを用いて運転席から見える景色を撮影する。画像解析により撮影された画像の中に道路標示があるか否かを判定し、画像の中にある道路標示の特徴点を抽出する。そして、車両を基準に特徴点の座標を算出し、算出した特徴点の座標と、道路標示情報ＤＢ中の特徴点の位置座標とに基づいて現在位置を算出する。
【０００４】
特許文献２は、車載カメラで撮影した風景画像の特徴点を抽出して得られる参照データをデータベースに記憶しておき、車載カメラから撮影される風景画像と、参照データとのマッチング処理を行う。マッチング処理により一致していると判定された参照データに対応する撮影位置に基づいて自車位置が判定される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１０８０４３１号公報
【特許文献２】特開２０１３−３２９５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の特許文献の手法では、撮影、画像解析、画像からの特徴物の抽出、特徴物からの位置情報の算出、現在位置の補正などの処理を、移動体の走行中に常に行わなければならないため処理負荷が重い。一般に、走行中に注目すべき特徴物は、移動体のすぐ手前にものや遠くにあるもの、地面近くや道路脇にあるもの、頭上にあるものなど、広い範囲に存在する。特に道路標識は道路の脇や高い場所にあるため、カメラの撮影範囲の視野角を広くする必要がある。当然に撮影される画像は運転席からの景色を広くカバーするものとなり、情報量が増え、画像処理の負荷が大きくなる。
【０００７】
また、画像解析に時間を要し、その間に移動体が移動すると、算出される位置と本当の現在位置とがずれてしまい、正確な現在位置の判定が困難となる。さらに、特徴物に対応した位置情報のデータベースを端末内又はサーバに用意しておく必要があり、そのデータベースの構築には非常に労力を要する。
【０００８】
本発明は、上記のような課題を解決するためになされたものであり、移動体に搭載されたカメラの撮影画像に基づいて、負荷の少ない処理により移動体の現在位置を判定することを目的とする。
【課題を解決するための手段】
【０００９】
請求項に記載の発明は、位置判定装置であって、移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出手段と、前記対象物の間隔を逐次算出する算出手段と、前記算出手段が算出した間隔と、記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定手段と、を備えることを特徴とする。
【００１０】
他の請求項に記載の発明は、位置判定装置によって実行される位置判定方法であって、移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出工程と、前記対象物の間隔を逐次算出する算出工程と、前記算出手段が算出した間隔と、記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定工程と、を備えることを特徴とする。
【００１１】
他の請求項に記載の発明は、記憶部及びコンピュータを備える位置判定装置により実行される位置判定プログラムであって、移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出手段、前記対象物の間隔を逐次算出する算出手段、前記算出手段が算出した間隔と、前記記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定手段、として前記コンピュータを機能させることを特徴とする。
【図面の簡単な説明】
【００１２】
【図１】実施例に係るナビゲーション装置の構成を示す。
【図２】道路上の目印を検出する方法を説明する図である。
【図３】白線を検出するための検出窓を説明する図である。
【図４】信号機を検出するための検出窓を説明する図である。
【図５】道路上の白線の位置の例を示す。
【図６】目印間隔データベースの記憶内容の例を示す。
【図７】目印間隔測定データの例である。
【図８】目印間隔測定処理のフローチャートである。
【図９】位置判定処理のフローチャートである。
【発明を実施するための形態】
【００１３】
本発明の好適な実施形態では、位置判定装置は、移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出手段と、前記対象物の間隔を逐次算出する算出手段と、前記算出手段が算出した間隔と、記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定手段と、を備える。
【００１４】
上記の位置判定装置は、移動体の移動に伴って道路上の対象物を検出し、検出した対象物の間隔を算出する。対象物とは、例えば道路上の白線、信号機などの目印となるものである。移動体の移動に伴い、複数の対象物が検出され、その間隔が算出される。一方、記憶部には、地図上の対象物の間隔が記憶されている。位置判定装置は、移動体の移動に伴って算出された対象物の間隔と、記憶部に記憶されている対象物の間隔とに基づいて、移動体の位置を判定する。これにより、検出された対象物の間隔を、記憶部に記憶されている間隔と照合することにより、移動体の位置を判定することができる。
【００１５】
上記の位置判定装置の一態様では、前記検出手段は、前記移動体の前方を撮影して撮影画像を生成する撮影手段と、前記撮影画像の一部に設定される検出領域内の撮影画像を解析して前記対象物を抽出する抽出手段と、を備え、前記抽出手段は、前記移動体の速度に応じて、前記検出領域を変化させる。この態様では、移動体の速度に応じて検出領域を変えることにより、対象物の検出精度を確保する。
【００１６】
上記の位置判定装置の他の一態様では、前記判定手段は、前記移動体が方向転換を行った場合に算出された間隔を判定に使用しない。移動体が右左折などの方向転換を行った際には、対象物の間隔の算出精度が低下するので、その際に算出された間隔は位置の判定には使用しないこととして、位置判定の精度低下を防止する。
【００１７】
好適な例では、前記対象物は道路面に描かれる白線の表示であり、前記検出手段は前記白線の表示を検出し、前記算出手段は前記検出手段が検出した白線の表示の間隔を算出する。
【００１８】
他の好適な例では、前記対象物は信号機であり、前記検出手段は前記信号機を検出し、前記算出手段は前記検出手段が検出した信号機の間隔を算出する。
【００１９】
本発明の他の好適な実施形態では、位置判定装置によって実行される位置判定方法は、移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出工程と、前記対象物の間隔を逐次算出する算出工程と、前記算出手段が算出した間隔と、記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定工程と、を備える。この方法によっても、検出された対象物の間隔を、記憶部に記憶されている間隔と照合することにより、移動体の位置を判定することができる。
【００２０】
本発明の他の好適な実施形態では、記憶部及びコンピュータを備える位置判定装置により実行される位置判定プログラムは、移動体が移動する道路上の対象物を前記移動体の移動に応じて逐次検出する検出手段、前記対象物の間隔を逐次算出する算出手段、前記算出手段が算出した間隔と、前記記憶部に記憶されている地図上の対象物の間隔とに基づいて、前記移動体の位置を判定する判定手段、として前記コンピュータを機能させる。このプログラムをコンピュータで実行することにより、上記の位置判定装置を実現することができる。
【実施例】
【００２１】
以下、図面を参照して本発明の好適な実施例について説明する。
【００２２】
［装置構成］
図１は、本発明の位置判定装置の実施例に係るナビゲーション装置の概略構成を示す。図１に示すように、ナビゲーション装置１は、自立測位装置１０、ＧＰＳ受信機１８、システムコントローラ２０、カメラ３１、データ記憶ユニット３６、通信用インタフェース３７、通信装置３８、表示ユニット４０、音声出力ユニット５０、入力装置６０を備える。
【００２３】
システムコントローラ２０、カメラ３１、データ記憶ユニット３６、通信用インタフェース３７、表示ユニット４０、音声出力ユニット５０及び入力装置６０は、バスライン３０を介して相互に接続されている。
【００２４】
自立測位装置１０は、加速度センサ１１、角速度センサ１２及び距離センサ１３を備える。加速度センサ１１は、例えば圧電素子からなり、車両の加速度を検出し、加速度データを出力する。角速度センサ１２は、例えば振動ジャイロからなり、車両の方向変換時における車両の角速度を検出し、角速度データ及び相対方位データを出力する。距離センサ１３は、車両の車輪の回転に伴って発生されているパルス信号からなる車速パルスを計測する。
【００２５】
ＧＰＳ受信機１８は、複数のＧＰＳ衛星から、測位用データを含む下り回線データを搬送する電波１９を受信する。測位用データは、緯度及び経度情報等から車両の絶対的な位置（以後、「現在位置」とも呼ぶ。）を検出するために用いられる。
【００２６】
システムコントローラ２０は、インタフェース２１、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２３及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２４を含んでおり、ナビゲーション装置１全体の制御を行う。
【００２７】
インタフェース２１は、加速度センサ１１、角速度センサ１２、距離センサ１３、ＧＰＳ受信機１８とのインタフェース動作を行う。そして、これらから、車速パルス、加速度データ、相対方位データ、角速度データ、ＧＰＳ測位データ、絶対方位データ等をシステムコントローラ２０に入力する。
【００２８】
ＣＰＵ２２は、システムコントローラ２０全体を制御する。ＲＯＭ２３は、システムコントローラ２０を制御する制御プログラム等が格納された図示しない不揮発性メモリ等を有する。ＲＡＭ２４は、入力装置６０を介して使用者により予め設定された経路データ等の各種データを読み出し可能に格納したり、ＣＰＵ２２に対してワーキングエリアを提供したりする。
【００２９】
カメラ３１は、車両の前方の風景を撮影、録画する。撮影された画像データはデータ記憶ユニット３６に記憶される。
【００３０】
データ記憶ユニット３６は、例えば、ＨＤＤ、フラッシュメモリなどにより構成され、地図データなどのナビゲーション処理に用いられる各種データを記憶する。通信装置３８は、ネットワークを介してサーバ７との間で無線通信を行う。なお、通信装置３８は、ナビゲーション装置１に内蔵される専用の無線通信ユニットであってもよく、有線又は無線で携帯電話と接続し、携帯電話の通信機能を利用してネットワークに接続するユニットであってもよい。
【００３１】
表示ユニット４０は、システムコントローラ２０の制御の下、各種表示データをディスプレイなどの表示装置に表示する。具体的には、システムコントローラ２０は、データ記憶ユニット３６から地図データを読み出す。表示ユニット４０は、システムコントローラ２０によってデータ記憶ユニット３６から読み出された地図データなどを表示画面上に表示する。表示ユニット４０は、バスライン３０を介してＣＰＵ２２から送られる制御データに基づいて表示ユニット４０全体の制御を行うグラフィックコントローラ４１と、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）等のメモリからなり即時表示可能な画像情報を一時的に記憶するバッファメモリ４２と、グラフィックコントローラ４１から出力される画像データに基づいて、液晶、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）等のディスプレイ４４を表示制御する表示制御部４３と、ディスプレイ４４とを備える。ディスプレイ４４は、画像表示部として機能し、例えば対角５〜１０インチ程度の液晶表示装置等からなり、車内のフロントパネル付近に装着される。
【００３２】
音声出力ユニット５０は、システムコントローラ２０の制御の下、図示しないドライブ装置やＲＡＭ２４からバスライン３０を介して送られる音声デジタルデータのＤ／Ａ（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ）変換を行うＤ／Ａコンバータ５１と、Ｄ／Ａコンバータ５１から出力される音声アナログ信号を増幅する増幅器（ＡＭＰ）５２と、増幅された音声アナログ信号を音声に変換して車内に出力するスピーカ５３とを備えて構成されている。
【００３３】
入力装置６０は、各種コマンドやデータを入力するための、キー、スイッチ、ボタン、リモコン、音声入力装置等から構成されている。入力装置６０は、車内に搭載された当該車載用電子システムの本体のフロントパネルやディスプレイ４４の周囲に配置される。また、ディスプレイ４４がタッチパネル方式の場合、ディスプレイ４４の表示画面上に設けられたタッチパネルも入力装置６０として機能する。
【００３４】
上記の構成において、カメラ３１は本発明の撮影手段の一例であり、データ記憶ユニット３６は本発明の記憶部の一例であり、ＣＰＵ２２は本発明の検出手段、算出手段、抽出手段、判定手段の一例である。
【００３５】
［位置判定の方法］
次に、本実施例における位置判定の方法について説明する。本実施例では、ナビゲーション装置１のシステムコントローラ２０は、カメラ３１による撮影画像から、道路上にある目印を検出し、連続して検出された目印の間隔（以下、「目印間隔」と呼ぶ。）を算出する。目印としては、例えば、道路上の白線、道路ペイント（例えば、「止まれ」の文字などの白や黄色のペイント）、信号機などが利用できる。なお、目印は本発明の対象物の一例である。
【００３６】
一方、そのような目印の実際の間隔は地図データ又は実地調査などにより予め取得され、目印間隔データベース（以下、「データベース」を「ＤＢ］と記す。）に記憶されている。システムコントローラ２０は、カメラ３１の撮影画像から検出された目印に基づいて算出された目印間隔と、目印間隔ＤＢに予め記憶されている目印間隔を照合することにより、ナビゲーション装置１の現在位置を判定する。
【００３７】
図２は、道路上の目印を検出する様子を示す。道路３には、目印の一例としての白線４と、他の例としての信号機５とが存在する。なお、以下の説明では、目印として白線４を使用するものとする。車両２はナビゲーション装置１が搭載されている。車両２の前方に取り付けられたカメラ３１は、車両２の走行中に前方の景色を撮影する。
【００３８】
図３は、カメラ３１による車両２の前方の撮影画像の例を示す。具体的に、図３（ａ）は車両２が図２に示すＡ地点にいるときの撮影画像を示し、図３（ｂ）は車両２が図２に示すＢ地点にいるときの撮影画像を示し、図３（ｃ）は車両２が図２に示すＣ地点にいるときの撮影画像の例を示す。
【００３９】
システムコントローラ２０は、撮影画像から白線を検出する。この際、図３から理解されるように、白線は道路上にペイントされているので、車両の進行に伴って撮影画像中の白線は撮影画像の上下方向の中央付近から撮影画像の下端へと移動する。よって、システムコントローラ２０は、図３に示すように、撮影画像の下端に検出窓７を設け、その範囲内で白線の有無を検出する。具体的には、システムコントローラ２０は、白線４が検出窓７に入り、検出窓７を通過して下方へ抜けたときに、１つの白線４を検出したと判定する。このようにして、システムコントローラ２０は、車両２が道路上の白線４を通過するたびに白線４を検出する。なお、検出窓７は本発明の検出領域の一例である。
【００４０】
通常、道路はアスファルト舗装などで黒に近い色であり、一方、白線４は白色のペイントであるので、撮影画像中の道路から白線４を検出する処理は単純な２値化処理で行うことができる。よって、カメラ３１として安価なモノクロカメラを使用したり、カメラ３１の代わりにセンサを使用したりすることができる。また、白線４を検出するための画像解析は、撮影画像のうち検出窓７付近の一部の画像のみに対して行えば足りるので、特許文献１、２のような画像解析と比較して処理負荷を軽減できるという利点がある。
【００４１】
なお、車両２の走行速度に応じて、白線４の検出に用いられる検出窓７の上下幅を調整することが好ましい。例えば、走行速度が所定速度以下のときには検出窓７の上下幅を基準幅に設定し、走行速度が上昇したきには、それに応じて検出窓７の上下幅を大きくする。これにより、白線４の検出精度を維持することができる。
【００４２】
システムコントローラ２０は、車両２の走行中に順に白線４を検出し、１つの白線４を検出してから次の白線４を検出するまでの走行距離、即ち連続する２つの白線の間隔を取得する。具体的には、システムコントローラ２０は、距離センサ１３から出力される車速パルスを計数することにより、白線４の間隔を算出し、ＲＡＭ２４や逐次データ記憶ユニット３６に記憶する。
【００４３】
図４は目印として信号機５を使用した場合の撮影画像の例を示す。具体的に、図４（ａ）は車両２が図２に示すＡ地点にいるときの撮影画像を示し、図４（ｂ）は車両２が図２に示すＢ地点にいるときの撮影画像を示し、図４（ｃ）は車両２が図２に示すＣ地点にいるときの撮影画像の例を示す。
【００４４】
図４から理解されるように、車両２の走行に伴い、信号機５は撮影画像の上下方向における中央付近から上端へと移動する。よって、目印として信号機５を使用する場合、システムコントローラ２０は図４に示すように検出窓７を撮影画像の上端付近に設定し、信号機５が検出窓７に下方から入り、上方へ抜けて行ったときに、信号機５を検出したと判定する。
【００４５】
なお、目印としては、上記の白線、信号機の他に、道路上にペイントされた矢印のマーク、「止まれ」などの文字、速度制限の数字などを使用してもよい。具体的には、システムコントローラ２０は、これらのマーク、文字、数字などを形状パターンとして記憶しておき、撮影画像に対するマッチング処理により検出することができる。また、白のペイントに限らず、黄色のペイントを対象としてもよい。このように、信号機や道路のペイントなど認識しやすいものを目印として使用することにより、雨天などの悪天候の状況でも、目印を認識しやすくなる。
【００４６】
次に、目印間隔の例について説明する。図５は、ある道路の例を示す。図５では、横方向の道路７３と縦方向の道路７４とが交差している。道路７３は、目印である白線４が地点Ａ〜Ｇにある。道路７４は、目印である白線４が地点Ｈ〜Ｌにある。地点Ｄ、Ｅ、Ｉ、Ｊは道路７３と道路７４の交差点に属する。
【００４７】
図６は、図５の道路について目印間隔ＤＢに記憶されているデータの例を示す。目印間隔ＤＢにおいて、「区間」は隣接する地点により規定される道路区間を示す。「位置」は、その区間を規定する地点の各々の位置座標を示す。「間隔」は、その区間を規定する２つの地点の距離、即ち、２つの地点にある白線４の距離を示す。「交差点フラグ」は、その区間が交差点に属するか否かを示すフラグである。交差点に属する区間には、交差点フラグとしてその交差点を示す番号が記憶される。図５の例では、区間Ｄ−Ｅと区間Ｉ−Ｊが交差点に属するので、交差点フラグが記憶されている。一方、交差点に属さない区間には交差点フラグは記憶されない。図６に示すような目印間隔ＤＢは、地図データや実地調査に基づいて用意され、図１のデータ記憶ユニット３６に記憶される。なお、目印間隔ＤＢは、基本的にサーバに記憶され、必要に応じてサーバからダウンロードしてデータ記憶ユニット３６に保存することとしてもよい。
【００４８】
次に、車両２の走行時にナビゲーション装置１が測定した目印間隔測定データの例を図７に示す。図７（ａ）は、図５に示すルート１に沿って車両２が走行した際に得られた目印間隔測定データを示す。区間Ａ−Ｂから区間Ｆ−Ｇまでの各区間について、測定された目印間隔が記憶されている。「方向転換フラグ」とは、その区間の走行中に車両２が方向転換、即ち、右左折をしたか否かを示す。ルート１では、車両２は方向転換を行わないので、方向転換フラグは記憶されていない。
【００４９】
図７（ｂ）は、図５に示すルート２に沿って車両が走行した際に得られた目印間隔測定データを示す。図７（ａ）と同様に、各区間について測定された目印間隔が記憶されている。但し、ルート２では、車両２は交差点に属する区間Ｄ−Ｉにおいて方向転換（左折）を行っているので、区間Ｄ−Ｉについては方向転換フラグ「有」が記憶されている。また、方向転換が行われた区間Ｄ−Ｉについて、目印間隔は記憶されない。これは、方向転換時に測定された目印間隔は誤差が大きくなる傾向があり、後述する位置判定に使用するには不適当だからである。なお、車両２が方向転換を行ったか否かは、例えばナビゲーション装置１の角速度センサ１２の出力に基づいて判定することができる。
【００５０】
次に、位置判定の具体的な方法について説明する。例えば、車両２が図５に示すルート１に沿って地点Ａから地点Ｄまで走行した場合を考える。ここで、システムコントローラ２０は車両２がどの道路のどの区間を走行しているかを知らないものとする。この場合、システムコントローラ２０は、図７（ａ）に示すように、測定された目印間隔として順に「３５ｍ」、「２５ｍ」、「１７ｍ」を得る。そして、これに基づいて、システムコントローラ２０は、図６に例示する目印間隔ＤＢを参照し、目印間隔が順に「３５ｍ→２５ｍ→１７ｍ」と推移する区間を探す。図６の例では、目印間隔ＤＢにおいて区間Ａ−Ｂの間隔が「３５ｍ」、区間Ｂ−Ｃの間隔が「２５ｍ」、区間Ｃ−Ｄの間隔が「１７ｍ」と記憶されており、「３５ｍ→２５ｍ→１７ｍ」と推移するパターン（数値列）と一致するので、システムコントローラ２０は、車両２が現在区間Ａ−Ｄを走行していると判定する。
【００５１】
なお、目印間隔ＤＢには多数の区間についての目印間隔が記憶されているので、区間Ａ−Ｄ以外の別の区間においても目印間隔が「３５ｍ→２５ｍ→１７ｍ」と推移する可能性もある。いま、そのような区間を仮に「区間Ｓ−Ｖ」とする。その場合には、システムコントローラ２０は、目印間隔が「３５ｍ→２５ｍ→１７ｍ」と推移する区間として、区間Ａ−Ｄと区間Ｓ−Ｖとを抽出することになるが、現在走行中の区間がいずれであるかまでは決定できない。
【００５２】
この場合、システムコントローラ２０はさらに次の区間を加えて判定を行う。即ち、図７（ａ）に示す目印間隔測定データから次の区間Ｄ−Ｅの目印間隔「２０ｍ」を取得し、目印間隔ＤＢを参照して目印間隔が「３５ｍ→２５ｍ→１７ｍ→２０ｍ」と推移する区間を探す。区間Ｓ−Ｖの次の区間の目印間隔が２０ｍでない限り、システムコントローラ２０は現在走行している区間が区間Ａ−Ｅであると決定することができる。こうして、目印間隔測定データの推移パターンと一致する区間が目印間隔ＤＢに複数存在する場合には、一致する区間が１つになるまで、さらに次の区間の目印間隔を追加して目印間隔ＤＢの記憶内容との比較を行えばよい。
【００５３】
このように、システムコントローラ２０は、目印間隔測定データにおける、連続する目印間隔の推移パターンと一致するパターンを有する区間を目印間隔ＤＢから探し、そのパターンに対応する区間を車両２の現在の位置と判定することができる。
【００５４】
一方、図７（ｂ）に示すルート２の例のように、目印間隔測定データに交差点の区間（即ち、方向転換フラグが「有」の区間）が含まれる場合には、その区間について目印間隔を使用せず、代わりにその区間を「交差点」として比較を行えばよい。
【００５５】
具体的には、図７（ｂ）に示す目印間隔測定データが得られた場合には、システムコントローラ２０は、目印間隔が「３５ｍ→２５ｍ→１７ｍ→交差点→３０ｍ」と推移する区間を目印間隔ＤＢで探せばよい。図６に示すように、目印間隔ＤＢにおいて、交差点に属する区間は交差点フラグが付与されており、区間Ｄ−Ｅと区間Ｉ−Ｊは同一の交差点（No.253）に属することがわかるので、システムコントローラ２０は、目印間隔が「３５ｍ→２５ｍ→１７ｍ→交差点→３０ｍ」と推移する区間として、「区間Ａ−Ｂ→区間Ｂ−Ｃ→区間Ｃ−Ｄ→交差点（No.253）→区間Ｈ−Ｊ」を見つけることができる。これにより、システムコントローラ２０は、車両２が区間Ａ−Ｄを走行し、交差点を曲がって区間Ｉ−Ｈに入った（つまり、車両は区間Ｈ−Ｉにいる）と判定することができる。
【００５６】
なお、目印間隔測定データに車両が方向転換した区間が含まれる場合には、上記のように交差点を考慮することにより位置判定が可能となるが、交差点を含まない場合と比較すると処理が複雑となる。よって、初めから、車両が方向転換した区間を含む位置判定は行わないこととしてもよい。即ち、車両が方向転換していない連続する複数の区間の目印間隔を目印間隔ＤＢと照合して車両２の現在位置を判定することとしてもよい。
【００５７】
以上のように、本実施例によれば、走行中に測定された目印間隔の推移パターンと、予め目印間隔ＤＢに記憶されている目印間隔の推移パターンとを比較することにより、車両２の現在位置を判定することができる。即ち、走行中に測定された目印間隔の推移パターンと一致する推移パターンを有する区間を現在位置と判定することができる。
【００５８】
なお、上記の説明では、システムコントローラ２０は、車両２の現在位置を知らず、走行中に得られた目印間隔に基づいて車両２の現在位置を判定している。この手法は、電波環境の悪化やＧＰＳセンサなどの機器の不具合などによりＧＰＳ測位が行えない場合の代替手法として利用することができる。一方、ＧＰＳ測位が可能な状況であっても、上記の目印間隔に基づく判定結果を、ＧＰＳ測位により得た現在位置の補正などに使用することとしてもよい。
【００５９】
上記の例では、目印として白線４を使用しているが、他の目印を使用する場合には、その目印についての目印間隔を測定し、データベースに記憶されている目印間隔と比較すればよい。例えば、目印として信号機５を使用する場合、システムコントローラ２０は信号機５の間隔を目印間隔として測定し、信号機５の間隔を記憶した目印間隔ＤＢを参照して上記と同様の方法で現在位置を判定すればよい。
【００６０】
［処理フロー］
次に、本実施例において実行される処理について説明する。本実施例では、車両２の走行中に目印間隔を測定する目印間隔測定処理と、測定により得られた目印間隔を用いて目印間隔ＤＢを参照して現在位置を判定する位置判定処理とが行われる。
【００６１】
まず、目印間隔測定処理について説明する。図８は、目印間隔測定処理のフローチャートである。この処理は、システムコントローラ２０のＣＰＵ２２が、予め用意されたプログラムを実行することにより行われる。
【００６２】
まず、ＣＰＵ２２は、ユーザによる目印の指定を受け取り、検出窓７を設定する（ステップＳ１０）。例えば、ユーザが目印として白線を指定した場合には、ＣＰＵ２２は図３に示すように、撮影画像の下端に検出窓７を設定する。そして、ＣＰＵ２２は、カメラ３１を制御して撮影を開始する（ステップＳ１１）。
【００６３】
撮影が開始されると、ＣＰＵ２２は、図３を参照して説明した手法により、撮影画像から目印を検出する（ステップＳ１２）。目印が検出されると（ステップＳ１２：Ｙｅｓ）、ＣＰＵ２２は、１つ前の目印との距離を算出し、目印間隔として記憶する（ステップＳ１３）。なお、ステップＳ１３は、最初の目印が検出された際には行われない。
【００６４】
次に、ＣＰＵ２２は、車両が停止したか否かを判定する（ステップＳ１４）。車両が停止していない場合（ステップＳ１４：Ｎｏ）、処理はステップＳ１２へ戻る。よって、車両が停止するまでの間は、次の目印が検出されるたびに目印間隔が算出され、記憶される。こうして算出された目印間隔は、図７に示すような目印間隔測定データとして保存される。一方、車両が停止すると（ステップＳ１４：Ｙｅｓ）、処理は終了する。
【００６５】
次に、位置判定処理について説明する。図９は、位置判定処理のフローチャートである。この処理もＣＰＵ２２が予め用意されたプログラムを実行することにより行われる。
【００６６】
まず、ＣＰＵ２２は、図７に例示する目印間隔測定データ中の１つの目印間隔を読み出し（ステップＳ２１）、目印間隔ＤＢを参照して、その目印間隔と一致する目印間隔があるか否かを判定する（ステップＳ２２）。例えば、図７（ａ）の例では、ＣＰＵ２２は、目印間隔「３５ｍ」を読み出し、目印間隔ＤＢ内に目印間隔「３５ｍ」の区間があるか否かを判定する。
【００６７】
一致する目印間隔が無い場合（ステップＳ２２：Ｎｏ）、処理はステップＳ２１へ戻り、ＣＰＵ２２は次の目印間隔を読み出す。一方、一致する目印間隔がある場合（ステップＳ２２：Ｙｅｓ）、ＣＰＵ２２は次の目印間隔を読み出し（ステップＳ２３）、目印間隔ＤＢを参照して、次の目印間隔も一致する区間があるか否かを判定する。具体的には、図７ａ）の例において、ＣＰＵ２２は、次の目印間隔「２５ｍ」を読み出し、これと一致する目印間隔があるか否かを判定する。即ち、この時点でＣＰＵ２２は、目印間隔ＤＢに目印間隔「３５ｍ→２５ｍ」の推移パターンと一致するパターンがあるか否かを判定している。以下、目印間隔測定データにおける目印間隔の推移パターンと一致するパターンを有する目印間隔ＤＢ内の区間を「ＤＢ内候補」とも呼ぶ。
【００６８】
次の目印間隔が一致しない場合（ステップＳ２４：Ｎｏ）、処理はステップＳ２１へ戻る。この場合、該当する推移パターンが目印間隔ＤＢに存在しないことになるので、別の目印間隔測定データを用いて処理をやり直すことになる。
【００６９】
一方、次の目印間隔が一致する場合（ステップＳ２４：Ｙｅｓ）、ＣＰＵ２２は、目印間隔ＤＢ内の次の目印間隔も一致するＤＢ内候補が１つであるか否かを判定する（ステップＳ２５）。即ち、ＣＰＵ２２は、目印間隔ＤＢ内に存在する目印間隔「３５ｍ→２５ｍ」の推移パターンが１つであるか複数あるかを判定している。
【００７０】
ＤＢ内候補が１つでない場合（ステップＳ２５：Ｎｏ）、即ち、目印間隔「３５ｍ→２５ｍ」の推移パターンが目印間隔ＤＢ内に複数ある場合、処理はステップＳ２３へ戻り、ＣＰＵ２２はさらに次の目印間隔を読み出して、その目印間隔も一致するＤＢ内候補が目印間隔ＤＢ内にあるか否かを判定する。こうして、ＣＰＵ２２は、目印間隔の推移パターンが一致するＤＢ内候補が目印間隔ＤＢ内に１つのみとなるまで、次の目印間隔を追加して推移パターンの比較を行う。
【００７１】
そして、目印間隔のパターンが一致するＤＢ内候補が１つとなった場合（ステップＳ２５：Ｙｅｓ）、ＣＰＵ２２はそのＤＢ内候補の区間を現在位置と判定し（ステップＳ２６）、位置判定処理を終了する。
【００７２】
［変形例］
上記の実施例では、走行中に得られた目印間隔と、目印間隔ＤＢに記憶されている目印間隔との一致を判定しているが、実際に走行中に得られる目印間隔は多少の誤差を含むことが多い。よって、所定の誤差範囲（例えば１０％）内の相違は許容して、一致の判定を行うこととしてもよい。
【００７３】
上記の実施例では、本発明を車載用のナビゲーション装置に適用しているが、同様に歩行者や自転車用のナビゲーション装置に適用することができる。また、スマートフォンなどの携帯端末における地図表示アプリケーションなどに適用することもできる。
【符号の説明】
【００７４】
１  ナビゲーション装置
２  車両
３  道路
４  白線
５  信号機
７  検出窓
２０  システムコントローラ
２２  ＣＰＵ
３１  カメラ
【図１】
2020060597.tif 000003
【図２】
2020060597.tif 000004
【図３】
2020060597.tif 000005
【図４】
2020060597.tif 000006
【図５】
2020060597.tif 000007
【図６】
2020060597.tif 000008
【図７】
2020060597.tif 000009
【図８】
2020060597.tif 000010
【図９】
2020060597.tif 000011