以下、本発明の実施の形態に係るナビゲーションシステムおよび案内経路の更新方法を、図面に基づいて説明する。ナビゲーションシステムとしては、車両の一種である自動車に設置されて、自動車の道路案内に用いられるカーナビゲーションシステムを例に説明する。案内経路の更新方法は、カーナビゲーションシステムの動作の一部として説明する。
図1は、本発明の実施の形態に係るカーナビゲーションシステム1を示す構成図である。カーナビゲーションシステム1は、自動車に設置されるナビゲーション装置としてのナビゲーション本体2と、ナビゲーション本体2とUSB(Universal Serial Bus)ケーブル3により接続可能な、携帯入力装置としての電子ペン4と、印刷物としての地図帳5と、地図帳5と共に提供されるCD−ROM(Compact Disc Read Only Memory)6と、を有する。USBケーブル3は、通信ケーブルの一種である。
図2は、図1中の地図帳5中の1ページを示す図である。地図帳5は、電子ペン4で読取可能な座標パターンが印刷された専用シートを製本したものである。図3は、図2の地図帳5の専用シートの部分断面図である。
地図帳5の各ページは、図3に示すように、シート11の紙面に、赤外線を吸収するインクと、赤外線を透過するインクとが印刷されたものである。シート11には、まず、赤外線を吸収するインクが印刷され、その上に、赤外線を透過するインクにより地図などの情報が印刷される。
地図帳5のページには、赤外線を吸収するインクにより、複数の座標パターン13が印刷される。座標パターン13は、電子ペン4により読み取り可能な解像度のパターンであり、6×6個のドット12により構成されている。
図4は、シート11に対する複数の座標パターン13の印刷状態の一例を示す説明図である。図4において、複数の座標パターン13を構成する複数のドット12は、略0.3ミリメートル間隔で、縦横に配列されている。そして、1つの座標パターン13は、6×6個のドット12により構成される。座標パターン13内におけるその複数のドット12の配置は、少なくともその紙面中の複数の座標パターン13において互いが区別できるように、座標パターン13毎に互いに異なる。具体的にはたとえば、各ドット12は、図4中の所定の一定間隔毎の縦基準線と横基準線との交点の位置を基準として、上下左右のいずれか1つの方向(すなわち、4つの方向の中の1つの方向)へ少しずれた位置に印刷される。そして、各座標パターン13における6×6個の合計36個のドット12のずれ方向の組合せは、複数の座標パターン13の中で唯一なものとすることができる。複数のドット12の中から6×6個のドット12を選んだとき、その36個のドット12のずれ方向の組合せは、他のすべての36個のドット12によるずれ方向の組合せと異なるものとすることができる。この複数の座標パターン13の中で唯一となる36個のドット12のずれ方向の組合せにより、各座標パターン13には、ユニークな座標値を対応付けることができる。なお、6×6個のドット12で構成される複数の座標パターン13は、たとえば1つの地図帳5において互いに異なるものであってもよい。
複数の座標パターン13は、図2において複数の点で表すように、紙面の略全面に印刷される。複数の座標パターン13は、図2の地図帳5のページ中の、電子ペン用マーク22,23と重なる領域を含む紙面の全面に印刷される。複数の座標パターン13は、地図画像21と、経路探索処理を指示するためのマークとしての目的地設定マーク24と、経路変更処理を指示するためのマークとしてのルート補正マーク25とに重ねて印刷される。
シート11の略全面に印刷される複数の座標パターン13は、それぞれのユニークなドット12の配列に基づいて、電子ペン4により互いに異なる座標値の座標データへ変換される。地図画像21と重ねて印刷される複数の座標パターン13は、紙面上の位置に応じて互いに異なるものとなる。複数の座標パターン13は、たとえば紙面の左上隅を基準(0,0)とする、X,Yの二次元の座標データへ変換される。図2の紙面では、紙面の横方向がX軸であり、紙面の縦方向がY軸である。
なお、複数の座標パターン13は、たとえば1冊の地図帳5のすべてのページを1つの大きな紙面上に並べたと仮定した状態において、その大きな紙面の左上隅を基準(0,0)とする、X,Yの二次元の座標データへ変換されるものであってもよい。この変形例の場合、二次元の座標データにより、ページ内の読取位置のみならず、地図帳5中のページも特定することが可能である。
地図帳5の各ページには、図2に示すように、赤外線を吸収するインクの上に、赤外線を透過するインクにより、自動車が通行可能な複数の道路を含む四角形の地図画像21、目的地設定マーク24、ルート補正マーク25などが印刷される。地図画像21と、目的地設定マーク24と、ルート補正マーク25とは、シート11の別々の領域に、互いに重ならないように領域を分けて印刷される。
赤外線を透過するインクによりシート11に形成される電子ペン用マーク22,23は、電子ペン4を制御するためのものである。電子ペン用マーク22,23には、たとえばリセットマーク22、決定マーク23などがある。
図5は、図1中の電子ペン4の構成を示すブロック図である。電子ペン4は、ボールペン軸31、筆圧センサ32、赤外線LED(Light Emitting Diode)33、CMOS(Complementary Metal Oxide Semiconductor)センサ34、USBケーブル3が接続されるUSBI/F(USBインタフェース)35、時刻情報を生成するタイマ36、不揮発性メモリ37、マイクロコンピュータ38などを有する。電子ペン4は、図1に示すように、細長い棒形状のハウジング39を有する。
なお、電子ペン4や後述するナビゲーション本体2は、USBI/F35の代わりに、たとえばブルートゥースなどの無線通信I/Fを備えるものであってもよい。また、タイマ36は、電子ペン4がたとえばリセットされてからの経過時間などを時刻として計測するものであってもよい。不揮発性メモリ37は、EEPROM(Electrically Erasable Programmable Read−Only Memory)などで構成されていればよい。
ボールペン軸31は、この細長い棒形状のハウジング39の一端部に、突出して配設される。筆圧センサ32は、ボールペン軸31に作用する筆圧を検出する。筆圧センサ32は、検出した筆圧値をマイクロコンピュータ38へ出力する。
赤外線LED33およびCMOSセンサ34は、ハウジング39の一端部において、ボールペン軸31の配設位置の周囲に配設される。赤外線LED33は、ボールペン軸31の先端が紙面に触れるとき、その接触部位およびその周囲の部位へ赤外線を照射する。CMOSセンサ34は、紙面のその接触部位およびその周囲の部位により反射される赤外線を受光する。CMOSセンサ34は、受光した赤外線の強度分布データを、マイクロコンピュータ38へ出力する。
マイクロコンピュータ38は、図示外のメモリ、CPU(Central Processing Unit)、入出力ポートなどを有する。入出力ポートには、筆圧センサ32、赤外線LED33、CMOSセンサ34、USBI/F35、タイマ36、不揮発性メモリ37などが接続される。電子ペン4のCPUは、メモリなどから図示外の制御プログラムを読み込んで実行する。これにより、電子ペン4のマイクロコンピュータ38には、読取データ生成部41と、読取データ送信部42と、が実現される。
読取データ生成部41は、CMOSセンサ34により撮像される座標パターン13を紙面中の座標値へ変換し、複数の座標値の読取座標データを有する読取データ46を生成する。読取データ生成部41は、生成した読取データ46を不揮発性メモリ37に記憶させる。
図6は、図5中の不揮発性メモリ37に記憶される読取データ46のデータ構造の一例を示す図である。読取データ46は、通常、複数のレコードで構成される。図5では、横一列が1つのレコードに相当する。読取データ46の各レコードは、読取座標データ51と、ペン圧レベルデータ52と、読取時刻データ53と、を有する。読取座標データ51は、CMOSセンサ34により撮像される座標パターン13から得られる座標値を有する座標データであり、X,Yの二次元の座標データである。ペン圧レベルデータ52は、筆圧センサ32が検出した筆圧値を有するデータである。読取時刻データ53は、座標パターン13から座標値が読み取られたときの、タイマ36が計測する時刻を有するデータである。なお、図6の読取データ46は、図6の筆跡欄に示すように、7つの筆跡データにより構成される。各筆跡データは、複数のレコードにより構成されている。
不揮発性メモリ37は、読取データ46の他に、リセット座標枠データ47、決定座標枠データ48を記憶する。リセット座標枠データ47は、図2中のリセットマーク22と重ねて、赤外線を吸収するインクによりシート11に印刷される座標パターン13に対応する座標値の範囲を示すデータである。決定座標枠データ48は、図2中の決定マーク23と重ねて、赤外線を吸収するインクによりシート11に印刷される座標パターン13に対応する座標値の範囲を示すデータである。これらの範囲内の座標値は、読取データ生成部41による読取を制御するために使用される。
読取データ送信部42は、図5中の不揮発性メモリ37に記憶される読取データ46を、USBI/F35にUSBケーブル3により接続される機器へ送信する。図1のカーナビゲーションシステム1では、電子ペン4のUSBI/F35には、USBケーブル3によりナビゲーション本体2が接続される。読取データ送信部42は、ナビゲーション本体2へ、不揮発性メモリ37に記憶される読取データ46を送信する。
図7は、図1中のナビゲーション本体2の構成を示すブロック図である。ナビゲーション本体2は、ジャイロセンサ61、GPS(Global Positioning System)受信機62、HDD(ハードディスクドライブ)63、キーデバイス64、タッチパネル65、液晶デバイス66、一時メモリ67、USBI/F68、CD(Compact Disc)I/F69、マイクロコンピュータ70などを有する。また、図7中には、地図帳5とともに提供されるCD−ROM6が、ナビゲーション本体2に挿入された状態で記述されている。
図1に示すように、ナビゲーション本体2のフロントパネルには、液晶デバイス66と、キーデバイス64の複数の入力ボタン60とが配設される。また、液晶デバイス66の表示部上には、タッチパネル65が配設される。フロントパネルの裏側には、図示外のCD挿入口と、USBI/F68と、が配設される。このUSBI/F68には、電子ペン4のUSBI/F35に接続されたUSBケーブル3が接続可能である。
ジャイロセンサ61は、そのX軸,Y軸およびZ軸の3軸方向での加速度を検出する。つまり、ジャイロセンサ61は、ナビゲーション本体2が配設される自動車の3軸方向での加速度を検出する。
GPS受信機62は、GPS衛星が送信するGPS電波を受信し、緯度経度データを生成する。つまり、GPS受信機62は、ナビゲーション本体2が配設される自動車の緯度経度データを生成する。
HDD63は、ナビゲーション本体2が単独で経路探索および経路案内を実行するために必要となるデータを記憶する。このようなデータとしては、たとえば、ナビゲーションデータ71、目的地設定やルート補正に基づく案内経路データ72などがある。
ナビゲーションデータ71は、たとえば表示地図データ、複数のノードデータ、複数のリンクデータ、複数のランドマークデータなどを有する。
ナビゲーションデータ71中の表示地図データは、液晶デバイス66に道路地図を表示するためデータであり、たとえば所定の縮尺での日本全国の道路地図をデータ化したものである。ナビゲーションデータ71中の表示地図データは、たとえば所定のメッシュサイズでの複数のテクスチャデータにより構成される。各テクスチャデータには、そのテクスチャデータの位置を示す緯度経度データなどが対応付けられている。
ナビゲーションデータ71中のノードデータは、表示地図データが網羅する地域中の自動車が通過可能な道路の交差点や曲がり角のデータである。ノードデータは、固有のノード名や、それが対応する交差点や曲がり角の緯度経度データなどを有する。また、ノードデータには、対応する交差点などの交差点名などが属性情報として対応付けられている。
ナビゲーションデータ71中のリンクデータは、交差点と交差点とを結ぶ道路区間に対応付けられるデータである。リンクデータは、固有のリンク名や、それが接続される複数のノードのノード名などが対応付けられる。また、ノードデータおよびリンクデータには、対応する道路の道路名(たとえば国道○○号線、県道△△号線など)などが属性情報として対応付けられている。
ナビゲーションデータ71中のランドマークデータは、表示地図データが網羅する地域中の施設や場所、たとえばコンビニエンスストア、ガソリンスタンド、銀行などの金融機関、学校、神社などに対応付けられるデータである。ランドマークデータは、たとえば対応するランドマークの名称、種類、緯度経度などの属性情報を有する。
CDI/F69は、ナビゲーション本体2に挿入されたCD−ROM6からデータを読み込む。ナビゲーション本体2に挿入されるCD−ROM6は、たとえば地図帳5とともに、たとえばカーナビゲーションシステム1の提供元や出版社などから供給されるものである。そして、このCD−ROM6は、たとえば領域判断テーブル81、通過地点を指定するための所定の筆跡パターンのデータとしての地点指定パターンデータ82、地点テーブル83、座標変換テーブル84などを記憶する。
座標変換テーブル84は、電子ペン4により読み取られた読取座標データ51と、地図帳5の項や位置とを対比するテーブルである。座標変換テーブル84は、たとえば、地図画像21と重ねて印刷される読取座標データ51の座標値から、その読取座標データ51と重なる地図画像21中の地点の緯度経度データを得るための変換データを記憶するものである。
図8は、図7中のCD−ROM6に記憶される領域判断テーブル81の一例を示す図である。領域判断テーブル81は、電子ペン4で読み取る紙面と対応付けられた複数の座標枠データ101を有する。各座標枠データ101には、その座標枠が選択された場合に実行する処理コマンド102が対応付けられている。
具体的には、図8の領域判断テーブル81は、図2中の目的地設定マーク24の印刷範囲の座標枠データ101と、ルート補正マーク25の印刷範囲の座標枠データ101と、地図画像21の印刷範囲の座標枠データ101と、を有する。各座標枠データ101は、印刷範囲が長方形であると仮定し、その対向する2角の座標値で構成される。
また、図8の領域判断テーブル81では、目的地設定マーク24の座標枠内が選択された場合の処理コマンド102として、目的地設定が対応付けられている。ルート補正マーク25の座標枠内が選択された場合の処理として、ルート補正処理が対応付けられている。地図画像21の座標枠内が選択された場合の処理として、通過地点などの特定処理が対応付けられている。
地点指定パターンデータ82は、読取データ46中の各筆跡データが、通過地点を指定するための特定のパターンであるか否かを判断するためのデータである。この実施の形態では、地点指定パターンデータ82は、「○(丸印)」とされる。
図9は、図7中のCD−ROM6に記憶される地点テーブル83の一例を示す図である。地点テーブル83は、印刷された地図範囲内の複数の地点、たとえばインタチェンジや交差点などの地点の属性情報を有する。地点テーブル83の各レコードは、それが対応する地点のカテゴリデータ112、地点の名称データ111、地点の緯度経度データ113、紙面上で対応付けられる座標の範囲のデータ114などの属性情報を有する。地点のカテゴリデータ112は、たとえばインタチェンジなどの地点の種類を示すデータである。地点の名称データ111は、たとえば△△一丁目などの交差点名などである。地点の緯度経度データ113は、たとえばその交差点の緯度経度のデータである。座標の範囲のデータ114は、たとえばその交差点の緯度経度へ変換される座標の範囲を示すデータである。
一時メモリ67は、たとえばフラッシュメモリなどの半導体メモリなどにより構成される。一時メモリ67は、受信読取データ90、抽出地点データ91、ルート補正データ92などを記憶する。
抽出地点データ91は、受信読取データ90に基づいて特定された1つまたは複数の通過地点の緯度経度データを有する。
図10は、図7中の一時メモリに記憶されるルート補正データ92の一例を示す図である。ルート補正データ92は、ルート補正により指定された通過地点毎に、その通過地点の緯度経度データ121と、その通過地点の通過方向データと122を有する。通過地点とその通過地点での通過方向との組合せにより、通過経路が指定できる。
ナビゲーション本体2のマイクロコンピュータ70は、図示外のメモリ、CPU、入出力ポートなどを有する。入出力ポートには、ジャイロセンサ61、GPS受信機62、HDD63、キーデバイス64、タッチパネル65、液晶デバイス66、一時メモリ67、USBI/F68などが接続される。ナビゲーション本体2のCPUは、メモリなどから図示外の制御プログラムを読み込んで実行する。これにより、ナビゲーション本体2のマイクロコンピュータ70には、現在位置データ生成部131と、案内経路生成手段および案内経路更新手段としてのUI(User Interface)部132と、読取データ受信部133と、緯度経度生成手段および指定特定手段としての読取データ処理部134と、が実現される。
なお、このナビゲーション本体2のマイクロコンピュータ70が実行する制御プログラムは、ナビゲーション本体2の出荷前に、マイクロコンピュータ70のメモリなどに記憶されたものであっても、ナビゲーション本体2の出荷後に、マイクロコンピュータ70のメモリなどに記憶されたものであってもよい。また、制御プログラムの一部が、ナビゲーション本体2の出荷後に、マイクロコンピュータ70のメモリなどに記憶されたものであってもよい。ナビゲーション本体2の出荷後に、マイクロコンピュータ70のメモリなどに記憶される制御プログラムは、たとえばCD−ROMなどのコンピュータ読取可能な記録媒体に記憶されているものをインストールしたものであっても、インターネットなどの伝送媒体を介してダウンロードしたものをインストールしたものであってもよい。上述した電子ペン4のマイクロコンピュータ38が実行する制御プログラムについても、同様である。
現在位置データ生成部131は、GPS受信機62が生成する緯度経度データや、ジャイロセンサ61が生成する加速度データに基づいて、ナビゲーション本体2が設置される自動車の現在位置データを生成する。現在位置データは、緯度経度により表される。
UI部132は、一時メモリ67に記憶される抽出地点データ91や、ナビゲーション本体2において設定された目的地などに基づいて、案内経路データ72を生成したり修正したり、液晶デバイス66の表示を制御したりする。UI部132は、たとえばキーデバイス64やタッチパネル65からの入力データに基づいて、HDD63や一時メモリ67にアクセスし、新たな表示データを生成する。UI部132は、表示データに基づく画像を液晶デバイス66に表示させる。UI部132が液晶デバイス66に表示させる表示画面としては、探索した案内経路の表示画面、経路案内画面などがある。
読取データ受信部133は、ナビゲーション本体2のUSBI/F68を用いて、電子ペン4が送信する読取データ46を受信する。読取データ受信部133は、受信した読取データ46を一時メモリ67に記憶させる。一時メモリ67は、受信読取データ90として記憶する。
読取データ処理部134は、一時メモリ67に記憶される受信読取データ90を処理する。読取データ処理部134は、受信読取データ90から、抽出地点データ91あるいはルート補正データ92を生成する。読取データ処理部134は、生成した抽出地点データ91あるいはルート補正データ92を一時メモリ67に記憶させる。
次に、以上の構成を有するカーナビゲーションシステム1の動作を説明する。以下においては、まず、電子ペン4により地図帳5の複数の案内地点を読み取り、その読み取りに基づいて抽出された複数の案内地点を巡る経路を、ナビゲーション本体2の液晶デバイス66に表示する動作を説明する。次に、ナビゲーション本体2の液晶デバイス66に表示される案内経路を、電子ペン4により地図帳5の複数の通過経路を読み取り、その読み取りに基づいて抽出された複数の通過地点を指定された方向で通過するように修正する動作を説明する。
まず、ユーザは、電子ペン4により地図帳5を読み取る。地図帳5のページには、図2に示すように、地図画像21とともに、目的地設定マーク24、リセットマーク22、決定マーク23などが印刷されている。ユーザは、たとえば、電子ペン4のペン先(ボールペン軸31の先端)により、リセットマーク22をチェックし、目的地設定マーク24をチェックし、地図画像21中の案内地点をチェックし、さらに、決定マーク23をチェックする。
電子ペン4の読取データ生成部41は、筆圧センサ32から所定の閾値以上の筆圧値が入力されると、赤外線の照射処理を開始する。電子ペン4の読取データ生成部41は、筆圧センサ32からの筆圧値が所定の閾値以下になると、赤外線の照射処理を終了する。読取データ生成部41は、各マークおよび各案内地点がチェックされるとき、赤外線の照射処理を実行する。
この赤外線の照射処理において、読取データ生成部41は、赤外線LED33により赤外線を発光させる。赤外線LED33が出力する赤外線は、紙面のペン先が当たる部位により反射される。目的地設定マーク24などの各種のマークや地図画像21には、座標パターン13が重ねて印刷される。座標パターン13は、その複数のドット12の配列により赤外線を吸収する。CMOSセンサ34は、ドット12により吸収されずに紙面により反射された赤外線を受光する。CMOSセンサ34は、赤外線の強度分布データを、マイクロコンピュータ38に実現される読取データ生成部41へ供給する。
CMOSセンサ34から赤外線の強度分布データが供給されると、読取データ生成部41は、その画像を解析する。読取データ生成部41は、まず、画像中の座標パターン13を特定する。読取データ生成部41は、所定のアルゴリズムにより、特定した座標パターン13から、その座標パターン13に対応する、その座標パターン13に固有の座標値を得る。
座標値を得た後、読取データ生成部41は、その取得した座標値が、不揮発性メモリ37に記憶されるリセット座標枠データ47が示す座標枠内のものであるか否か、および、不揮発性メモリ37に記憶される決定座標枠データ48が示す座標枠内のものであるか否かを判断する。
取得した座標値がリセット座標枠データ47が示す座標枠内のものである場合、読取データ生成部41は、不揮発性メモリ37をリセットし、読取データ46の追加処理を開始する。読取データ生成部41は、不揮発性メモリ37に記憶されている過去の読取データ46を消去する。
取得した座標値が決定座標枠データ48が示す座標枠内のものである場合、読取データ生成部41は、読取データ46の追加処理を終了する。
また、取得した座標値がリセット座標枠データ47が示す座標枠内のものではなく、且つ、決定座標枠データ48が示す座標枠内のものでもない場合、読取データ生成部41は、タイマ36から時刻情報を取得し、筆圧センサ32から筆圧値を取得する。読取データ生成部41は、取得した座標値、筆圧値および時刻情報を、不揮発性メモリ37に記憶させる。不揮発性メモリ37は、読取データ生成部41から供給されるこの3つのデータを、読取データ46の1つのレコードとして、読取データ46へ追加する。
上述したように、ユーザが、リセットマーク22をチェックし、目的地設定マーク24をチェックし、地図画像21中の所定の案内地点をチェックし、さらに、決定マーク23をチェックすると、不揮発性メモリ37には、読取データ46が蓄積して記憶される。この読取データ46には、目的地設定マーク24をチェックしたときの複数の読取座標データ51と、地図画像21中の所定の案内地点をチェックしたときの複数の読取座標データ51と、が含まれる。
以上の目的地設定のための読取作業を終えると、ユーザは、電子ペン4とナビゲーション本体2とをUSBケーブル3で接続する。
USBケーブル3により電子ペン4とナビゲーション本体2とが接続されると、電子ペン4のUSBI/F35と、ナビゲーション本体2のUSBI/F68との間で、たとえばUSBマスストレージクラスなどにより、データの送受信が可能な状態となる。電子ペン4の読取データ送信部42は、不揮発性メモリ37に記憶されている読取データ46を、ナビゲーション本体2の読取データ受信部133へ送信する。読取データ送信部42が送信した読取データ46は、電子ペン4のUSBI/F35、USBケーブル3およびナビゲーション本体2のUSBI/F68を介して、読取データ受信部133へ送信される。読取データ受信部133は、受信した読取データ46を、一時メモリ67に記憶させる。一時メモリ67は、読取データ受信部133が受信した読取データ46を、受信読取データ90として記憶する。
一時メモリ67に新たな未処理の受信読取データ90が保存されると、読取データ処理部134は、その未処理の受信読取データ90に対する処理を開始する。
図11は、図7中の読取データ処理部134が未処理の受信読取データ90に対して実行する処理の流れを示すフローチャートである。読取データ処理部134は、まず、一時メモリ67に未処理の受信読取データ90が保存されているか否かを判断する(ステップST1)。
一時メモリ67に未処理の受信読取データ90が保存されていない場合、読取データ処理部134は、この判断処理(ステップST1)を繰り返し実行する。読取データ処理部134は、未処理の受信読取データ90待ち状態となる。
一時メモリ67に未処理の受信読取データ90が保存されている場合、読取データ処理部134は、その受信読取データ90が経路探索のものであるか否かを判断する(ステップST2)。読取データ処理部134は、受信読取データ90中に、たとえば領域判断テーブル81中の目的地設定のための座標枠データ101内の読取座標データが含まれているか否かを判断する。
このときの受信読取データ90には、座標枠データ101内の読取座標データが含まれている。読取データ処理部134は、案内地点の抽出登録処理を開始する。案内地点の抽出登録処理において、読取データ処理部134は、まず、処理判断に用いたレコード以外の、未処理の受信読取データ90の最初の筆跡のレコードを読み込む(ステップST3)。
地図帳5上に電子ペン4により目的地などを書込む動作において、ある筆跡の書込みから、次の筆跡の書込みまでには、時間がかかる。そのため、読取データ処理部134は、たとえば、連続して読み込む複数のレコードにおいて、読取時刻データ53が所定の離間時間(たとえば0.5秒や1秒程度の時間)以上の時間間隔で離間するところまで、未処理範囲内の複数のレコードを読み込む。この読込み処理により、読取データ処理部134は、目的地などの案内地点を指定するために書き込まれた筆跡データを読み込む。読取データ処理部134は、読取データ46中の複数の読取座標データ51を、所定の離間時間以下の時間間隔により連続する単位で複数の筆跡データに区切り、その複数の筆跡データを1つずつ読み込む。
1つの筆跡データを読み込むと、読取データ処理部134は、読み込んだすべてのレコードによる複数の読取座標データ51の座標の平均値を演算する(ステップST4)。円の筆跡である場合、この座標の平均値は、その円の略中心位置の座標値となる。
1つの筆跡データの複数の読取座標データ51の座標の平均値を演算した後、読取データ処理部134は、その座標の平均値を、ナビゲーション本体2が利用可能な緯度経度データへ変換する。読取データ処理部134は、たとえば地点テーブル83から、平均値の座標値に最も近い地点を選択し、その地点の緯度経度データ113を読み込む。読み込んだ1つ分の筆跡データに基づく地点の緯度経度データ113を得ると、読取データ処理部134は、次に、その地点の緯度経度データ113を、一時メモリ67に保存する(ステップST5)。一時メモリ67は、この案内地点の緯度経度データ113を抽出地点データ91として記憶する。
なお、読取データ処理部134は、座標変換テーブル84を用いて平均値の座標値の地点の緯度経度データを得て、その得た緯度経度データを抽出地点データ91として記憶させるようにしてもよい。
ステップST5による緯度経度データ113などの保存処理を終えると、読取データ処理部134は、受信読取データ90の最後まで処理を終えたか否かを判断する(ステップST6)。読取データ処理部134は、たとえば受信読取データ90中に、未処理の読取座標データ51が残っているか否かを判断する。この目的地設定の場合、受信読取データ90には、目的地設定マーク24をチェックしたときの筆跡データと、地図中で目的地をチェックしたときの1つの筆跡データとが含まれる。目的地設定マーク24をチェックしたときの筆跡データは、処理判断に使用済みである。受信読取データ90中に、未処理の読取座標データ51が残っていないので、読取データ処理部134は、処理を終える。
なお、受信読取データ90中に未処理の読取座標データ51が残っている場合、読取データ処理部134は、引き続き案内地点の特定処理を続ける。これにより、読取データ処理部134は、指定された複数の案内地点の緯度経度データ113を、抽出地点データ91として抽出することができる。
ナビゲーション本体2のUI部132は、目的地探索画面、経路探索画面、経路案内画面などの表示画面を液晶デバイス66に表示させる場合、所定の処理を実行する。
図12は、図7中のUI部132による経路探索処理などの流れを示すフローチャートである。UI部132は、まず、一時メモリ67に、抽出地点データ91が記憶されているか否かを判断する(ステップST21)。
一時メモリ67に抽出地点データ91が記憶されている場合、UI部132は、一時メモリ67から抽出地点データ91を読込み、経路探索処理を開始する(ステップST22)。UI部132は、一時メモリ67に記憶される抽出地点データ91中の案内地点までの経路を探索する。具体的にはたとえば、UI部132は、現在位置を出発地とし且つ抽出地点データ91中の案内地点を目的地とする経路を探索する。UI部132は、ナビゲーションデータ71のノードデータおよびリンクデータを使用し、経路を探索する。UI部132は、探索した経路を、HDD63に保存する。これにより、HDD63には、案内経路データ72が記憶される。
案内経路を探索した後、UI部132は、探索した経路を、液晶デバイス66に表示させる(ステップST23)。UI部132は、たとえば探索した経路の全体を含む縮尺の地図データを、ナビゲーションデータ71から読み込み、その読み込んだ地図上に経路を割り付けた画面を、液晶デバイス66に表示させる。
図13は、抽出地点データ91により指定された目的地までの案内経路の一部を表示する表示画面の一例を示す図である。案内経路は、太線で表示される。案内経路は、表示画面中の最も下の道路を左から右へ進み、2つ目の交差点を左折し、目的地へ向かう経路となっている。
以上のように、ナビゲーション本体2は、電子ペン4により地図帳5の案内地点を読み取り、その読み取りに基づいて抽出された案内地点を目的地などとする案内経路を生成し、液晶デバイス66に表示することができる。次に、電子ペン4により地図帳5の複数の通過経路を読み取り、ナビゲーション本体2の液晶デバイス66に表示される案内経路を、その読み取りに基づいて抽出された複数の通過地点を指定された方向で通過するように修正する動作を説明する。
まず、ユーザは、経路修正のために、電子ペン4により地図帳5を読み取る。ユーザは、たとえば、図2中に点線で示すように、電子ペン4のペン先により、リセットマーク22をチェックし、ルート補正マーク25をチェックし、地図画像21中の(1)(図面中では丸付きの1)の通過地点をチェックし、通過地点(1)の通過方向を書込み、通過地点(2)(図面中では丸付きの2)をチェックし、通過地点(2)の通過方向を書込み、通過地点(3)(図面中では丸付きの3)をチェックし、通過地点(3)の通過方向を書込み、さらに、決定マーク23をチェックする。
これにより、電子ペン4の読取データ生成部41は、不揮発性メモリ37をリセットした後、図6に示すように、7つの筆跡データからなる新たな読取データ46を生成する。その後、読取データ生成部41は、読取データ46の追加処理を終了する。図6に示す読取データ46は、ルート補正マーク25をチェックしたときの筆跡データと、図2中の(1)、(2)および(3)の通過指定地点をチェックしたときの筆跡データと、それぞれの通過指定地点の通過方向を記入したときの筆跡データとにより、構成されている。
不揮発性メモリ37に新たな読取データ46が記憶されると、電子ペン4の読取データ送信部42は、不揮発性メモリ37に記憶されている読取データ46を、ナビゲーション本体2の読取データ受信部133へ送信する。読取データ受信部133は、受信した読取データ46を、一時メモリ67に記憶させる。一時メモリ67は、読取データ受信部133が新たに受信した読取データ46を、受信読取データ90として記憶する。
一時メモリ67に新たな未処理の受信読取データ90が保存されると、読取データ処理部134は、その未処理の受信読取データ90に対する処理を開始する。読取データ処理部134は、図11に示すように、一時メモリ67に未処理の受信読取データ90が保存されていることを確認し(ステップST1)、その受信読取データ90が経路探索のものでないことを判断し(ステップST2)、さらに、その受信読取データ90がルート補正のものであることを判断する(ステップST7)。なお、読取データ処理部134は、受信読取データ90中に、たとえば領域判断テーブル81中のルート補正のための座標枠データ101内の読取座標データが含まれている場合に、その受信読取データ90が経路探索のものであると判断すればよい。
受信読取データ90がルート補正のものであると判断した読取データ処理部134は、ルート補正処理を開始する。ルート補正処理において、読取データ処理部134は、まず、未処理の受信読取データ90の、処理判断に用いたレコード以外の、最初の1つ分の筆跡データを読み込む(ステップST8)。図6の読取データ46で言えば、2つ目の筆跡データを読み込む。
1つ分の筆跡データを読み込むと、読取データ処理部134は、読み込んだすべてのレコードによる筆跡を再現する(ステップST9)。読取データ処理部134は、再現した筆跡が、地点指定パターンデータ82によるパターンとマッチングするか否かを判断する(ステップST10)。図6において、最初の筆跡データは、○(丸)を書き込む筆跡のものである。読取データ処理部134は、再現した筆跡が、地点指定パターンデータ82によるパターンとマッチングすると判断する。
再現した筆跡が地点指定パターンとマッチングすると判断した読取データ処理部134は、複数の読取座標データ51の座標の平均値を演算する。円の筆跡である場合、この座標の平均値は、その円の略中心位置の座標値となる。読取データ処理部134は、その平均値に最も近い地点を、地点テーブル83から読込み、その地点の緯度経度データ113をルート補正データ92として保存する(ステップST11)。
読み込んだ1つ分の筆跡データによるルート補正データ92を一時メモリ67に保存すると、読取データ処理部134は、受信読取データ90の最後まで処理を終えたか否かを判断する(ステップST12)。読取データ処理部134は、このステップST12において受信読取データ90の最後まで処理を終えたと判断するまで、1つ分の筆跡データに基づくルート補正データ92の更新処理を繰り返す。
このステップST8からST13の処理ループを繰り返すことで、読取データ処理部134は、図6の読取データ46の2つ目の筆跡データから7つ目の筆跡データについての特定処理を実行する。
そして、たとえば図6の3つ目の筆跡データは、2つ目の通過指定地点の通過方向を指定するものである。読取データ処理部134は、この3つ目の筆跡データを読み込むと、ステップST10において再現した筆跡が地点指定パターンとマッチングしないと判断する。読取データ処理部134は、再現した筆跡の向きから、先に特定した通過地点の通過方向を特定する。読取データ処理部134は、地図帳の上が北であるとの仮定に基づいて、図6の3つ目の筆跡データは、西から侵入し、北へ出る通過方向であることを特定する。読取データ処理部134は、特定した通過方向のデータを、先に特定した通過地点と対応付けて、ルート補正データ92に追加する(ステップST13)。
これにより、読取データ処理部134は、図6の読取データ46に基づいて、図10のルート補正データ92を生成する。図10のルート補正データ92は、○の筆跡で指定された3つの通過地点(図2中の(1)、(2)および(3)の3つの通過地点)を、それぞれの折れ線の筆跡で指定された通過方向により通過することを指定するデータである。指定された3つの指定通過経路が特定される。
ナビゲーション本体2のUI部132は、図12に示すように、一時メモリ67に、抽出地点データ91が記憶されていないことを確認した後(ステップST21)、一時メモリ67に、ルート補正データ92が記憶されていることを確認する(ステップST24)。
一時メモリ67にルート補正データ92が記憶されると、UI部132は、一時メモリ67からルート補正データ92を読込み、ルート補正処理を開始する(ステップST25)。UI部132は、ナビゲーションデータ71のノードデータおよびリンクデータを使用して、ルート補正データ92により指定される通過地点に最も近いノードのノードデータと、そのノードにおいて通過方向に沿った方向のリンクデータと、を抽出する。
UI部132は、抽出したノードデータおよびリンクデータを、探索済みの案内経路データ72に接続し、その接続済みデータにより、HDD63に記憶される案内経路データ72を更新する。これにより、HDD63には、ルート補正データ92により指定された通過地点を、指定された通過方向により通過するように変更された案内経路データ72が記憶される。
なお、探索済みの案内経路データ72のノードデータおよびリンクデータの一部に、抽出したノードデータおよびリンクデータを追加したり、探索済みの案内経路データ72の一部を、抽出したノードデータおよびリンクデータにより置き換えたりすることで、連続した案内経路を生成できない場合がある。この場合、UI部132は、探索済みの案内経路データ72中の複数のノードの中から、抽出したノードデータおよびリンクデータに近いものを選択し、その選択したノードと抽出したノードデータおよびリンクデータとの間の経路を探索すればよい。
ルート補正データ92により案内経路を修正した後、UI部132は、修正した経路を、液晶デバイス66に表示させる(ステップST26)。UI部132は、たとえば探索した経路の全体を含む縮尺の地図データを、ナビゲーションデータ71から読み込み、その読み込んだ地図上に更新した経路を割り付けた画面を、液晶デバイス66に表示させる。
図14は、図10のルート補正データ92により補正された後の、目的地までの案内経路の一部を表示する表示画面の一例を示す図である。案内経路は、太線で表示される。案内経路は、表示画面中の最も下の道路を左から右へ進み、指定された1つ目の交差点(図2の(1)の交差点)を左折し、次の交差点(図2の(2)の交差点)で右折し、次の交差点(図2の(3)の交差点)で右折し、目的地へ向かう経路へ更新されている。液晶デバイス66に表示される案内経路は、ユーザが電子ペン4を用いて地図帳5で指定された通過地点(図2の(1)、(2)および(3)の交差点)を、電子ペン4を用いて地図帳5で指定された方向で通過する案内経路へ変更されている。
UI部132は、以上の処理により電子ペン4により指定された目的地などの案内地点までの経路を探索し、あるいは電子ペン4により指定された通過地点および通過経路により修正した案内経路を、液晶デバイス66に表示させる。UI部132は、たとえば自動車の移動開始などによる案内開始指示があると(ステップST27)、その時点でHDD63に記憶される案内経路データ72による経路で案内を開始する(ステップST28)。UI部132は、たとえば図14の画面上に、現在位置データ生成部131が生成する現在位置を示すマークを重ねて表示し、現在位置が案内経路の曲がり角などに近づくとその旨を音声などにより報知し、経路を案内する。
以上のように、この実施の形態では、ナビゲーション本体2が生成した案内経路データ72は、地図が印刷された地図帳5中の、電子ペン4により指定された通過経路あるいは通過地点により更新される。ユーザは、たとえばナビゲーション本体2の表示画面に表示される地図において、通過経路や通過地点を指定しないですむ。ユーザは、所望の通過経路あるいは通過地点を指定するために、ナビゲーション本体2に表示される地図をスクロールしたり、縮尺を切り替えたりする操作をする必要がない。ユーザは、地図帳5において電子ペン4で指定する簡単な作業により、案内経路データ72を所望の経路へ変更することができる。ナビゲーションシステム1は、ユーザが希望する通過経路や通過地点を通過して、目的地まで移動する案内経路データ72を生成することができる。
また、この実施の形態では、地図が印刷された地図帳5中を電子ペン4により指定することで生成された案内経路データ72を、その地図が印刷された地図帳5中を電子ペン4により指定することで、所望の通過経路あるいは通過地点を通過する経路へ変更することができる。ユーザは、ナビゲーション本体2に対する直接の操作をすることなく、所望の通過地点あるいは通過経路を通過して、所望の目的地へ到達する経路を設定することができる。ユーザは、地図が印刷された地図帳5中と電子ペン4とを用いて、目的地などの所望の案内地点と、所望の通過指定地点や通過指定経路とを指定することができる。
また、この実施の形態では、電子ペン4は、読取データ46において、各読取座標データ51にそれぞれの読取時刻を示す読取時刻データ53を対応付ける。読取データ処理部134は、受信した読取データ中の複数の読取座標データ51を、所定の離間時間以下の時間間隔で連続する単位で複数の筆跡データに区切り、各筆跡データ中の複数の読取座標データ51により各筆跡による指定通過経路あるいは指定通過地点を特定する。したがって、ナビゲーションシステム1は、電子ペン4により複数の指定通過経路あるいは複数の指定通過地点が指定されると、生成した案内経路を、その複数の指定通過経路や複数の指定通過地点を通過する経路へ更新することができる。ユーザは、通過を希望する複数の経路や複数の地点を、1回の読取作業により指定することができる。
また、この実施の形態では、読取データ処理部134は、通過地点を指定するための所定の筆跡パターン地点指定パターンデータ82のパターン)により指定通過地点を特定し、その所定の筆跡パターンと一致しない筆跡データの筆跡の向きから、特定した通過地点の通過方向を特定し、これら特定した指定通過地点の特定した通過方向により指定通過経路を特定する。したがって、ユーザは、電子ペン4により地図帳5へ書込むことで、通過地点と、通過経路とを高い精度で指定することができる。
また、この実施の形態では、UI部132は、電子ペン4が生成した読取データ46の複数の読取座標データ51に基づいて特定される案内地点への案内経路を生成する。また、UI部132は、自らが読取データ46に基づいて生成したこの案内経路を、電子ペン4の別の読取データ46に基づいて指定通過経路あるいは指定通過地点を通過する案内経路へ更新する。ユーザは、電子ペン4と地図帳5とにより、ナビゲーション本体2に対する操作をすることなく、所望の通過地点や通過経路を通過して、目的地などの所望の案内地点までの経路を案内させることができる。目的地などの案内地点の指定と、通過地点などの指定とを、1つの電子ペン4により共通に指示することができる。
また、この実施の形態では、地図帳5には、地図21と重ならないように、目的地設定マーク24とルート補正マーク25とが印刷される。読取データ処理部134は、電子ペン4により目的地設定マーク24がチェックされると、案内経路探索のための、目的地などの案内地点を指定する抽出地点データ91を生成し、電子ペン4によりルート補正マーク25がチェックされると、ルート補正のための、通過指定地点や通過指定経路を指定するルート補正データ92を生成する。UI部132は、抽出地点データ91により案内経路データ72を生成し、ルート補正データ92により生成した案内経路データ72を補正する。したがって、ユーザは、1つの電子ペン4により、目的地などの案内地点を指定し、通過地点や通過経路を指定することができる。
以上の実施の形態は、本発明の好適な実施の形態の例であるが、本発明は、これに限定されるものではなく、発明の要旨を逸脱しない範囲において種々の変形や変更が可能である。
上記実施の形態では、印刷物は、地図帳5である。この他にもたとえば、電子ペン4が読み取ることができる座標パターン13が印刷可能な印刷物としては、たとえば旅行誌、観光案内パンフレット、その他、道路などの経路に関する情報が印刷されたものであればよい。これらの印刷物の地図中の交差点などの緯度経度データなどを、CD−ROM6の地点テーブル83に登録することで、通過地点や通過経路を指定することができる。
上記実施の形態では、地点指定パターンデータ82による、通過地点を指定する地点指定パターンは、○(丸)である。この他にも、△、×などの幾何学的な図形パターンや、チェックマークや所定の文字などを地点指定パターンとしてもよい。また、地点指定パターンは、たとえばユーザの嗜好や通過順位の指定などのために、複数設けられていてもよい。
上記実施の形態では、読取データ処理部134は、筆跡毎に読み込むすべての読取座標データ51の平均値を演算している。この他にもたとえば、読取データ処理部134は、筆跡毎に読み込む複数の読取座標データ51の中の一部の読取座標データ51の平均値を演算するようにしてもよい。また、この他にもたとえば、読取データ処理部134は、複数の読取座標データ51の座標の平均値を演算するのではなく、その他の座標値、たとえばチェックマークの折り返し点などの特徴点の座標値などを、座標の代表値として特定し、その座標の代表値に近接する地点の緯度経度データを得るようにしてもよい。
上記実施の形態では、領域判断テーブル81、地点指定パターンデータ82および地点テーブル83は、CD−ROM6により、カーナビゲーションシステム1のユーザへ提供される。これらのテーブルは、CD−ROM6以外のたとえばDVDなどの光ディスクや、半導体メモリを有するメモリカードなどの、コンピュータ読取可能な記録媒体により、ユーザへ提供されるようにしてもよい。また、領域判断テーブル81、地点指定パターンデータ82および地点テーブル83は、インターネットやLAN(Local Area Network)などの伝送媒体を介してナビゲーション本体2により取得可能に、ユーザへ提供されていてもよい。また、領域判断テーブル81、地点指定パターンデータ82および地点テーブル83は、ナビゲーション本体2のHDD63などに、ナビゲーションデータ71とは別に、予め記憶されているものであってもよい。
上記実施の形態では、読取データ46の複数のレコードは、離間時間に基づいて筆跡毎のデータに分けられている。この他にもたとえば、読取データ46の複数のレコードは、読取座標データ51における離間距離(図6で言えば、(1)、(2)、(3)の通過指定地点に記載した丸同士の間隔)に基づいて分けられても、ペン圧レベルデータ52における所定のレベル変化(たとえばペン圧レベルが2以下となるようなレベル変化、無くなるようなレベル変化)に基づいて分けられてもよい。
上記実施の形態では、読取データ46には、地図中の案内地点や通過指定地点などを指定するための筆跡のデータの他に、読取データ処理部134による処理を指示するための筆跡のデータが含まれている。この他にもたとえば、読取データ46には、地図中の案内地点や通過指定地点などを指定するための筆跡のデータのみで構成されていてもよい。この変形例の場合、読取データ処理部134は、たとえばナビゲーション本体2のボタン60の操作や、電子ペン4の図示外のボタンの操作などに基づいて、読取データ46による処理を判断するようにすればよい。
上記実施の形態では、ナビゲーションデータ71を記憶するHDD63とは別の記憶手段である一時メモリ67に、抽出地点データ91、ルート補正データ92などが記憶される。この他にもたとえば、抽出地点データ91、ルート補正データ92などは、HDD63に記憶されていてもよい。