以下、地図情報処理システム等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、1以上の地図閲覧操作の集合である地図閲覧操作列に応じて、地図上のオブジェクト(地名、図柄など)の表示属性を変更する地図情報処理システムについて説明する。本地図情報処理システムにおいて、表示属性の変更には、例えば、オブジェクト間の関係情報を用いる。また、本実施の形態において、オブジェクト間の関係情報を自動取得する機能についても説明する。
図1は、本実施の形態における地図情報処理システム1の概念図である。地図情報処理システム1は、地図情報処理装置11、1以上の端末装置12を具備する。なお、地図情報処理装置11は、スタンドアロンでも良い。また、地図情報処理システム1、または地図情報処理装置11は、ナビゲーションシステムを構成しても良い。さらに、端末装置12は、ユーザが利用する端末である。
図2は、本実施の形態における地図情報処理システム1のブロック図である。地図情報処理装置11は、地図情報格納部111、関係情報格納部112、受付部113、地図出力部114、操作情報列取得部115、関係情報取得部116、関係情報蓄積部117、表示属性決定部118、地図出力変更部119を具備する。
表示属性決定部118は、オブジェクト選択条件格納手段1181、判断手段1182、オブジェクト選択手段1183、表示属性値設定手段1184を具備する。
端末装置12は、端末側受付部121、端末側送信部122、端末側受信部123、端末側出力部124を具備する。
地図情報格納部111は、複数の地図情報を格納し得る。地図情報は、地図上に表示される情報であり、地図上の位置情報を含む1以上のオブジェクトを有する。地図情報は、例えば、地図の図柄(画像)を示す地図図柄情報と、オブジェクトを有する。地図図柄情報は、例えば、地図を構成するビットマップまたはベクターデータなどである。オブジェクトとは、地名、名勝等の文字列、地図上の図柄(マークなども含む)、一部の領域などである。オブジェクトとは、地図を構成する部分であり、地図上に現れる情報であり、文字列、画像、動画等、そのデータタイプは問わない。オブジェクトとは、例えば、用語(地名、名勝等の文字列)を有する。オブジェクトとは、用語のみと考えても良いし、用語と位置情報を有すると考えても良い。用語とは、地図上に表記されている地名や、建物や名勝や場所の名称などの文字列である。また、位置情報は、地図上の経度、緯度を有する情報や二次元平面上のX,Y座標値(地点情報)や、領域を示す情報(領域情報)などである。地点情報は、地図上の点の情報である。領域情報は、例えば、地図上の矩形を示す2点の情報(左上の経度、緯度、および右下の経度緯度など)である。また、地図情報は、ISOのkiwi地図データフォーマットであっても良い。また、地図情報は、好ましくは、縮尺ごとに地図図柄情報と、用語情報を有する。また、オブジェクトを出力する、とは、通常、オブジェクトが有する用語を、オブジェクトが有する位置情報に対応する位置に出力することである。地図情報格納部111は、通常、同一の領域の地図情報であり、縮尺が異なる複数の地図情報を格納している。また、通常、地図図柄情報は、地図の縮尺を示す情報である縮尺情報と対に格納されている。地図情報格納部111は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。地図情報格納部111に地図情報が記憶される過程は問わない。例えば、記録媒体を介して地図情報が地図情報格納部111で記憶されるようになってもよく、通信回線等を介して送信された地図情報が地図情報格納部111で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された地図情報が地図情報格納部111で記憶されるようになってもよい。
関係情報格納部112は、関係情報を格納し得る。関係情報とは、2以上のオブジェクト間の関係に関する情報である。関係情報とは、例えば、同位関係、上位関係、下位関係、無関係などがある。同位関係とは、二つ以上のオブジェクトが同等である関係である。上位関係とは、一のオブジェクトが他のオブジェクトと比較して上位にある関係である。下位関係とは、一のオブジェクトが他のオブジェクトと比較して下位にある関係である。関係情報格納部112は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。関係情報格納部112に関係情報が記憶される過程は問わない。例えば、記録媒体を介して関係情報が関係情報格納部112で記憶されるようになってもよく、通信回線等を介して送信された関係情報が関係情報格納部112で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された関係情報が関係情報格納部112で記憶されるようになってもよい。
受付部113は、各種指示や情報などを受け付ける。各種指示や情報とは、例えば、地図を出力する指示である地図出力指示、地図を閲覧する1または2以上の操作である地図閲覧操作列などである。受付部113は、例えば、ユーザから各種指示や情報などを受け付けても良いし、端末装置12から各種指示や情報などを受信しても良い。また、受付部113は、図示しないナビゲーションシステムから、操作などを受け付けても良い。つまり、自動車の走行により、現在地点が移動していくが、この移動は、例えば、地図の移動操作またはセンタリング操作であり、かかる移動やセンタリングの操作を、受付部113がナビゲーションシステムから受け付けても良い。受付部113は、無線または有線の通信手段で実現され得る。
地図出力部114は、受付部113が地図出力指示を受け付けた場合に、地図情報格納部111から、地図出力指示に対応する地図情報を読み出し、地図を出力する。地図出力部114の機能は公知技術であるので詳細な説明を省略する。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置(端末装置12など)への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。地図出力部114は、例えば、無線または有線の通信手段で実現され得る。
操作情報列取得部115は、受付部113が受け付けた地図閲覧操作列に対応する1または2以上の操作の情報である操作情報列を取得する。地図閲覧操作とは、例えば、ズームイン操作(記号[i])、ズームアウト操作(記号[o])、移動操作(記号[m])、センタリング操作(記号[c])などを含む。地図閲覧操作とは、自動車等の移動物体の走行により発生する情報も含めて考えても良い。なお、操作情報列は、例えば、多地点探索操作情報列、関心地点絞込操作情報列、単純移動操作情報列、選択移動操作情報列、または、位置確認操作情報列のいずれかを含むことは好適である。多地点探索操作情報列とは、c+o+[mc]+([+]は1回以上の繰り返し)の操作列を示す情報であり、一の地点から他の広域な領域へ探索範囲を広げようとする操作に対応する操作情報列である。関心地点絞込操作情報列とは、c+o+([mc]*c+i+)+([*]は0回以上の繰り返し)の操作列を示す情報であり、関心がある一の地点の詳細な情報を得ようとする操作に対応する操作情報列である。単純移動操作情報列とは、[mc]+の操作列を示す情報であり、複数の地点を移動する操作情報列である。選択移動操作情報列とは、[mc]+の操作列を示す情報であり、複数の地点を順に選択する操作情報列である。位置確認操作情報列とは、[mc]+o+i+の操作列を示す情報であり、一の地点の相対的な位置を調べる操作情報列である。操作情報列取得部115は、通常、MPUやメモリ等から実現され得る。操作情報列取得部115の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
関係情報取得部116は、2以上のオブジェクト間の関係情報を取得する。関係情報とは、2以上のオブジェクト間の関係を示す情報である。関係情報には、例えば、二つ以上のオブジェクトが同等の関係にある同位関係、一のオブジェクトが他のオブジェクトと比較して上位にある上位関係、および一のオブジェクトが他のオブジェクトと比較して下位にある下位関係、無関係などがある。関係情報取得部116は、例えば、縮尺が異なる複数の地図情報における2以上のオブジェクトの出現パターン、および2以上のオブジェクトの位置情報を用いて、2以上のオブジェクト間の関係情報を取得する。オブジェクトの出現パターンとは、例えば、同一関係、より広域な縮尺関係、より詳細な縮尺関係がある。同一関係とは、2つのオブジェクト(例えば、地名、名勝)が出現する縮尺のパターンが完全に一致している場合の、当該2つのオブジェクトの関係を言う。また、第一のオブジェクトに対して、第一のオブジェクトよりも広域な縮尺においても出現する第二のオブジェクトが存在する場合、第二のオブジェクトは第一のオブジェクトに対して「より広域な縮尺関係」である。さらに、第一のオブジェクトに対して、第一のオブジェクトよりも詳細な縮尺においても出現する第二のオブジェクトが存在する場合、第二のオブジェクトは第一のオブジェクトに対して「より詳細な縮尺関係」である。また、2以上のオブジェクトの位置情報とは、ここでは、例えば、2以上のオブジェクトの領域の関係である。領域の関係として、例えば、独立(隣接)、包含、一致、重複がある。知恩院と二条城のように地名領域が重なっていない場合、2つのオブジェクトは、独立である。また、京都御苑と京都御所のように、一の地名の領域に他の地名の領域が完全に含まれている場合、2つのオブジェクトは、包含である。被包含は、包含の逆である。一致とは、2つのオブジェクトの位置情報が示す領域が全く同じであることである。重複とは、大阪駅と梅田駅のように地下と地上で領域の一部が重なっているような地名(オブジェクト)である。
関係情報取得部116は、例えば、図3に示すような、関係判断管理表を保持している。そして、関係情報取得部116は、関係判断管理表を用いて、2つのオブジェクトの出現パターンと、位置情報から、関係情報を取得する。関係判断管理表の縦軸はオブジェクトの出現パターン、横軸は位置情報(2つの領域の関係)である。つまり、関係情報取得部116は、2つのオブジェクトの出現パターンが同一関係である場合、位置情報に関わらず、関係判断管理表から、2つのオブジェクト間の関係を同位関係と判断する。そして、関係情報取得部116は、2つのオブジェクトの出現パターンがより広域な縮尺関係であり、位置情報が包含、または一致、または重複の場合、2つのオブジェクト間の関係を上位関係と判断する。また、関係情報取得部116は、2つのオブジェクトの出現パターンがより詳細な縮尺関係であり、位置情報が被包含、または一致、または重複の場合、2つのオブジェクト間の関係を下位関係と判断する。その他の場合、関係情報取得部116は、2つのオブジェクト間の関係を無関係と判断する。そして、関係情報取得部116は、判断に対応する関係情報(図3の情報)を取得する。なお、関係情報取得部116が関係情報を取得するタイミングは問わない。関係情報取得部116は、通常、MPUやメモリ等から実現され得る。関係情報取得部116の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
関係情報蓄積部117は、関係情報取得部116が取得した関係情報を、関係情報格納部112に、少なくとも一時的に蓄積する。関係情報蓄積部117は、通常、MPUやメモリ等から実現され得る。関係情報蓄積部117の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
表示属性決定部118は、予め決められたオブジェクトを選択する条件であるオブジェクト選択条件に、操作情報列が合致する場合に、1以上のオブジェクトを選択し、当該1以上のオブジェクトの表示属性を決定する。なお、表示属性決定部118は、通常、オブジェクト選択条件に対応するオブジェクトの表示属性を保持している。また、表示属性決定部118は、例えば、操作情報列と2以上のオブジェクト間の関係情報とを用いて、1以上のオブジェクトを選択し、当該1以上のオブジェクトの表示属性を決定する。なお、ここで、決定するとは、表示属性を、オブジェクトの属性として設定することでも良い。また、表示属性とは、例えば、文字列の属性(フォント、色、大きさなど)、文字列を囲む図形の属性(図形の形状、色、線種など)、領域の属性(色、領域の境界の線種など)などである。さらに、具体的には、例えば、表示属性決定部118は、先に表示されていた地図に対応する地図情報が有さず、かつ、新たに表示される地図に対応する地図情報が有する1以上のオブジェクトが強調表示となるような属性値を、1以上のオブジェクトに設定する。強調表示となるような属性値とは、例えば、文字列をBOLDフォントにする、文字色を赤にする、背景色が他と比較して目立つ色(赤など)、文字のサイズを大きく、文字列を点滅させる等、他と比較して、目立つ態様にするような属性値である。また、具体的には、例えば、表示属性決定部118は、先に表示されていた地図に対応する地図情報が有し、かつ、新たに表示される地図に対応する地図情報が有する1以上のオブジェクトが淡化表示となるような属性値を、1以上のオブジェクトに設定する。淡化表示となるような属性値とは、文字色や領域を灰色等の薄い色にする、フォントサイズを小さくする、文字列や領域を半透明にする等、他と比較して目立たないような表示になるようにする属性値である。また、具体的には、例えば、表示属性決定部118は、新たに表示される地図に対応する地図情報が有する1以上のオブジェクトであり、予め決められた条件を満たす1以上のオブジェクトを選択し、当該選択した1以上のオブジェクトが強調表示となるような属性値を、1以上のオブジェクトに設定する。ここで、予め決められた条件とは、例えば、センタリング操作が入力された場合の地図の中央点に最も近い位置に存在する地名などのオブジェクトなどである。表示属性決定部118は、ディスプレイデバイスを含むと考えても含まないと考えても良い。表示属性決定部118は、ディスプレイデバイスのドライバーソフトまたは、ディスプレイデバイスのドライバーソフトとディスプレイデバイス等で実現され得る。
オブジェクト選択条件格納手段1181は、操作情報列を含むオブジェクト選択条件を1以上格納している。オブジェクト選択条件とは、予め決められたオブジェクトを選択するための条件である。オブジェクト選択条件格納手段1181は、オブジェクト選択条件と、選択するオブジェクトを特定する情報である選択特定情報(後述する図7のオブジェクト選択方法に該当する)と、表示属性値を対に有することは好適である。オブジェクト選択条件格納手段1181は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。オブジェクト選択条件格納手段1181にオブジェクト選択条件が記憶される過程は問わない。例えば、記録媒体を介してオブジェクト選択条件がオブジェクト選択条件格納手段1181で記憶されるようになってもよく、通信回線等を介して送信されたオブジェクト選択条件がオブジェクト選択条件格納手段1181で記憶されるようになってもよく、あるいは、入力デバイスを介して入力されたオブジェクト選択条件がオブジェクト選択条件格納手段1181で記憶されるようになってもよい。
判断手段1182は、操作情報列取得部115が取得した操作情報列が1以上のオブジェクト選択条件に合致するか否かを判断する。判断手段1182は、通常、MPUやメモリ等から実現され得る。判断手段1182の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
オブジェクト選択手段1183は、判断手段1182が合致すると判断したオブジェクト選択条件に対応する1以上のオブジェクトを選択する。オブジェクト選択手段1183は、通常、MPUやメモリ等から実現され得る。オブジェクト選択手段1183の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
表示属性値設定手段1184は、オブジェクト選択手段1183が選択した1以上のオブジェクトの表示属性を、判断手段1182が合致すると判断したオブジェクト選択条件に対応する表示属性値に設定する。表示属性値設定手段1184は、オブジェクト選択手段1183が選択した1以上のオブジェクトの表示属性を、予め決められた表示属性値に設定しても良い。表示属性値設定手段1184は、ディスプレイデバイスを含むと考えても含まないと考えても良い。表示属性値設定手段1184は、ディスプレイデバイスのドライバーソフトまたは、ディスプレイデバイスのドライバーソフトとディスプレイデバイス等で実現され得る。
地図出力変更部119は、地図閲覧操作に応じた地図情報を取得し、かつ、表示属性決定部118が決定した1以上のオブジェクトの表示属性に従って、1以上のオブジェクトを有する地図情報を出力する。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置(例えば、表示装置)への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。地図出力変更部119は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。地図出力変更部119は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
端末側受付部121は、ユーザからの指示や、地図の操作などを受け付ける。端末側受付部121は、例えば、地図を出力する指示である地図出力指示、および地図を閲覧する1または2以上の操作である地図閲覧操作列を受け付ける。指示などの入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。端末側受付部121は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。端末側受付部121は、タッチパネルからの信号を受け付けても良いことは言うまでもない。
端末側送信部122は、端末側受付部121が受け付けた指示などを地図情報処理装置11に送信する。端末側送信部122は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
端末側受信部123は、地図情報処理装置11から地図情報などを受信する。端末側受信部123は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
端末側出力部124は、端末側受信部123が受信した地図情報を出力する。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。端末側出力部124は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。端末側出力部124は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、地図情報処理装置11の動作について、図4のフローチャートを用いて説明する。なお、端末装置12は、公知の端末であるので、その動作説明は省略する。
(ステップS401)受付部113は、指示等を受け付けたか否かを判断する。指示等を受け付ければステップS402に行き、指示等を受け付けなければステップS401に戻る。
(ステップS402)地図出力部114は、ステップS401で受け付けた指示が地図出力指示であるか否かを判断する。地図出力指示であればステップS403に行き、地図出力指示でなければステップS405に行く。
(ステップS403)地図出力部114は、地図出力指示に対応する地図情報を、地図情報格納部111から読み出す。地図出力部114が読み出す地図情報は、デフォルトの地図情報(初期画面を構成する地図情報)でも良い。
(ステップS404)地図出力部114は、ステップS403で読み出した地図情報を用いて、地図を出力する。ステップS401に戻る。
(ステップS405)操作情報列取得部115は、ステップS401で受け付けた指示が地図閲覧操作であるか否かを判断する。地図閲覧操作であればステップS406に行き、地図閲覧操作でなければステップS413に行く。
(ステップS406)操作情報列取得部115は、ステップS401で受け付けた地図閲覧操作に対応する操作情報を取得する。
(ステップS407)操作情報列取得部115は、ステップS406で取得した操作情報を、操作情報列を格納するバッファに追記する。
(ステップS408)地図出力変更部119は、ステップS401で受け付けた地図閲覧操作に応じた地図を、地図情報格納部111から読み出す。
(ステップS409)表示属性決定部118は、バッファ中の操作情報列が、オブジェクト選択条件のうちのいずれかに合致するか否かを判断する。オブジェクト選択条件に合致ずればステップS410に行き、オブジェクト選択条件に合致しなければステップS412に行く。
(ステップS410)表示属性決定部118は、ステップS409で合致すると判断したオブジェクト選択条件に対応する1以上のオブジェクトを、ステップS408で読み出した地図情報から取得する。なお、表示属性決定部118は、例えば、地図情報の中心点に最も近い位置情報を有するオブジェクト(ここでは、地名のみでも良い)を取得する。
(ステップS411)表示属性決定部118は、ステップS410で取得した1以上のオブジェクトに対して、ステップS409で合致すると判断したオブジェクト選択条件に対応する表示属性を設定する。
(ステップS412)地図出力変更部119は、変更した地図情報を出力する。なお、変更した地図情報とは、ステップS408で読み出された地図情報、またはステップS411で表示属性を設定されたオブジェクトを含む地図情報である。ステップS401に戻る。
(ステップS413)関係情報取得部116は、ステップS401で受け付けた指示が関係情報生成指示であるか否かを判断する。関係情報生成指示であればステップS414に行き、関係情報生成指示でなければステップS401に戻る。
(ステップS414)関係情報取得部116等は、関係情報生成処理を行う。ステップS401に戻る。なお、関係情報生成処理の詳細について、図5のフローチャートを用いて説明する。
なお、図4のフローチャートにおいて、関係情報生成処理は必須の処理ではない。人手により、予め関係情報を用意していても良い。
また、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、ステップS414の関係情報生成処理の詳細について、図5のフローチャートを用いて説明する。
(ステップS501)関係情報取得部116は、カウンタiに1を代入する。
(ステップS502)関係情報取得部116は、地図情報格納部111中のすべての地図情報が有するオブジェクト内に、i番目のオブジェクトが存在するか否かを判断する。i番目のオブジェクトが存在すればステップS503に行き、i番目のオブジェクトが存在しなければ上位処理にリターンする。
(ステップS503)関係情報取得部116は、地図情報格納部111から、i番目のオブジェクトを取得し、メモリ上に配置する。
(ステップS504)関係情報取得部116は、カウンタjにi+1を代入する。
(ステップS505)関係情報取得部116は、地図情報格納部111中のすべての地図情報が有するオブジェクト内に、j番目のオブジェクトが存在するか否かを判断する。j番目のオブジェクトが存在すればステップS506に行き、j番目のオブジェクトが存在しなければステップS520に行く。
(ステップS506)関係情報取得部116は、地図情報格納部111から、j番目のオブジェクトを取得し、メモリ上に配置する。
(ステップS507)関係情報取得部116は、i番目のオブジェクト、およびj番目のオブジェクトが出現する地図の縮尺(縮尺情報)を、地図情報格納部111から取得する。
(ステップS508)関係情報取得部116は、ステップS507で取得したi番目のオブジェクト、およびj番目のオブジェクトの縮尺情報を用いて、出現パターン(例えば、同一関係、より広域な縮尺関係、より詳細な縮尺関係、のいずれか)を取得する。
(ステップS509)関係情報取得部116は、ステップS508で取得した出現パターンが、同一関係であるか否かを判断する。同一関係であればステップS510に行き、同一関係でなければステップS512に行く。
(ステップS510)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの関係情報を同位関係に設定する。なお、「関係情報を同位関係に設定する」とは、例えば、同位関係のオブジェクトを格納するバッファ(図示しない)に、i番目のオブジェクトとj番目のオブジェクトを対にして、追記することである。また、「関係情報を同位関係に設定する」処理は、如何なる処理でもよく、両オブジェクトが同位関係にあることが分かれば良い。
(ステップS511)関係情報取得部116は、カウンタjを1、インクリメントする。ステップS505に戻る。
(ステップS512)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの領域情報を取得する。なお、i番目のオブジェクトとj番目のオブジェクトが、領域情報を有さない場合もあり得る。
(ステップS513)関係情報取得部116は、ステップS508で取得した出現パターンが、より広域な縮尺関係であるか否かを判断する。より広域な縮尺関係であればステップS514に行き、より広域な縮尺関係でなければステップS516に行く。
(ステップS514)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの領域情報を用いて、両オブジェクトが「包含」または「一致」または「重複」の領域関係にあるか否かを判断する。両オブジェクトが「包含」または「一致」または「重複」の領域関係にあればステップS515に行き、かかる関係になければステップS518に行く。
(ステップS515)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの関係情報を上位関係に設定する。なお、「関係情報を上位関係に設定する」とは、例えば、上位関係のオブジェクトを格納するバッファ(図示しない)に、i番目のオブジェクトとj番目のオブジェクトを対にして、追記することである。また、「関係情報を上位関係に設定する」処理は、如何なる処理でもよく、両オブジェクトが上位関係にあることが分かれば良い。ステップS511に行く。
(ステップS516)関係情報取得部116は、ステップS508で取得した出現パターンが、より詳細な縮尺関係であるか否かを判断する。より詳細な縮尺関係であればステップS517に行き、より詳細な縮尺関係でなければステップS511に行く。
(ステップS517)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの領域情報を用いて、両オブジェクトが「被包含」または「一致」または「重複」の領域関係にあるか否かを判断する。両オブジェクトが「被包含」または「一致」または「重複」の領域関係にあればステップS519に行き、かかる関係になければステップS518に行く。
(ステップS518)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの関係情報を無関係に設定する。なお、「無関係に設定する」とは、何も処理をしなくても良いし、無関係のオブジェクトを格納するバッファ(図示しない)に、i番目のオブジェクトとj番目のオブジェクトを対にして、追記しても良い。ステップS511に行く。
(ステップS519)関係情報取得部116は、i番目のオブジェクトとj番目のオブジェクトの関係情報を下位関係に設定する。なお、「関係情報を下位関係に設定する」とは、例えば、下位関係のオブジェクトを格納するバッファ(図示しない)に、i番目のオブジェクトとj番目のオブジェクトを対にして、追記することである。また、「関係情報を下位関係に設定する」処理は、如何なる処理でもよく、両オブジェクトが下位関係にあることが分かれば良い。ステップS511に行く。
(ステップS520)関係情報取得部116は、カウンタiを1、インクリメントする。ステップS502に戻る。
なお、図5のフローチャートで説明した関係情報生成処理は、地図情報処理装置11がオブジェクトを選択するごとに、選択したオブジェクトと、過去に選択された(好ましくは直前に選択された)オブジェクトとの間の関係を取得する際に行われても良い。つまり、関係情報生成処理を行うタイミングは問わない。
以下、本実施の形態における地図情報処理システム1の具体的な動作について説明する。地図情報処理システム1の概念図は図1である。
今、地図情報格納部111には、例えば、図6に示す、京都の地図を構成する地図情報を格納している、とする。この地図情報は、縮尺が3段階である。図6において、1/21000の地図では知恩院、京都市、清水寺が出現している。また、図6中では、全ての縮尺で出現しているオブジェクト(地名)は知恩院と清水寺である。また、1/21000と1/8000の地図で出現しているオブジェクトは京都市である。また、1/8000と1/3000の地図で出現しているオブジェクトは高台寺と一休庵である。さらに、1/3000の地図のみで出現しているオブジェクトはウエスティン都ホテルである。また、地図情報は、地図図柄情報とオブジェクトを有する。また、ここでは、オブジェクトは、用語と位置情報を有する。位置情報は、その用語(地名など)の地点情報(緯度、経度)と、領域情報とを有する、とする。
かかる状況において、ユーザは、端末装置12に対して、関係情報生成指示を入力した、とする。そして、端末装置12の端末側受付部121は、関係情報生成指示を受け付ける。次に、端末側送信部122は、関係情報生成指示を地図情報処理装置11に送信する。そして、地図情報処理装置11の受付部113は、関係情報生成指示を受信する。そして、地図情報処理装置11は、図5のフローチャートに従い、地図情報処理装置11の関係情報取得部116等は、以下のように、オブジェクト間の関係情報を生成する。
つまり、関係情報取得部116は、清水寺と知恩院というオブジェクトは縮尺出現パターンが完全に一致しているため、両オブジェクトは、同一関係と決定する。そして、関係情報取得部116は、例えば、1/3000から1/8000の縮尺の地図に出現するオブジェクトである「一休庵」に対して、1/3000から1/21000の縮尺の地図に出現する「清水寺」は、より広域な縮尺関係と決定する。さらに、関係情報取得部116は、例えば、1/3000から1/21000の縮尺の地図に出現する「知恩院」に対して、1/3000の縮尺の地図のみに出現する「京都文化博物館」というオブジェクトは、より詳細な縮尺関係と決定する。
そして、出現パターンの情報と、各地名(オブジェクト)の領域情報を用いて、関係情報取得部116は、図3を参照し、2つのオブジェクト間の関係情報を取得し、関係情報蓄積部117は、当該関係情報を、関係情報格納部112に蓄積する。そして、例えば、関係情報格納部112に、図8に示す関係情報管理表が格納される。図8に示す関係情報管理表において、「上京区」は「京都府庁」の上位関係にある。また、図8に示す関係情報管理表において、「京都迎賓館」は「御所」の下位関係にある。さらに、図8に示す関係情報管理表において、同位関係、無関係において、ペアとなるオブジェクトは、それぞれ同位関係にあるオブジェクト群、無関係であるオブジェクト群である。
また、オブジェクト選択条件格納手段1181は、図7に示すオブジェクト選択条件管理表を保持している。オブジェクト選択条件管理表は、「ID」「再構成機能名称」「オブジェクト選択条件」「オブジェクト選択方法」「表示属性」の属性値を有するレコードを格納している。「ID」は、レコードを識別する識別子である。「再構成機能名称」とは、再構成機能の名称である。再構成機能とは、地図上のオブジェクトの表示態様を変更する機能を言う。なお、表示態様の変更とは、オブジェクトの表示属性値の変更、またはオブジェクトの表示/未表示の変更などである。「オブジェクト選択条件」とは、再構成するオブジェクトを選択する条件である。「オブジェクト選択条件」は、「操作情報列条件」「操作チャンク条件」「関係情報条件」を有する。「操作情報列条件」は、操作情報列を有する条件である。操作情報列は、例えば、「c+i+[mc]+」「c+o+([mc]*c+i+)+」の操作列を示す情報である。なお、[mc]*は、「m」または「c」が0回以上繰り返すことを意味する。「操作チャンク条件」とは、操作チャンクの条件である。操作チャンクとは、操作がいくつか組み合わさり、意味のあるまとまりになっているものを言う。したがって、「操作チャンク条件」と「操作情報列条件」とは、地図情報処理装置11から見た場合、同じものである。ここでは、「操作チャンク条件」は使わず、「操作情報列条件」を用いた動作について説明する。なお、操作チャンクとして、絞込チャンク(N)、広域探索チャンク(W)、移動チャンク(P)、位置確認チャンク(C)の4パターンが、例えば、考えられる。絞込チャンク(N)の操作情報列は「c+i+」、広域探索チャンク(W)の操作情報列は「c+o+」、移動チャンク(P)の操作情報列は[mc]+、位置確認チャンク(C)の操作情報列は「o+i+」である。また、絞込チャンクは、地図上の何かの地点に関心を持ち、その地点をもっと詳細に見ようとする操作列である。c操作により関心のある地点に近づき、関心のある地点をさらに詳細に見ようとしてi操作を行う。広域探索チャンクは、地図上の何かの地点に関心を持った後に、別の地点を見ようとする操作列である。ある地点をc操作により中心に表示させた後、o操作によって広域な地図に切り替える。移動チャンクは、同縮尺地図内で地図の表示位置を変更する操作列であり、ある地点から別の地点を探索しようとするものである。位置確認チャンクは、現在表示されている地点と他地点との位置関係を把握するために、一度地図の縮尺を広域なものに切り替え、確認後に元の縮尺の地図に戻るという操作列である。
次に、ユーザは、端末装置12に対して、地図出力指示を入力した、とする。そして、端末装置12の端末側受付部121は、地図出力指示を受け付ける。次に、端末側送信部122は、地図出力指示を地図情報処理装置11に送信する。そして、地図情報処理装置11の受付部113は、地図出力指示を受信する。次に、地図出力部114は、地図出力指示に対応する地図情報を、地図情報格納部111から読み出し、地図を端末装置12に送信する。そして、端末装置12の端末側受信部123は地図を受信する。次に、端末側出力部124は、地図を出力する。ここで、例えば、端末装置12に京都の地図が出力された、とする。
以下、5つの再構成機能の具体例について説明する。
(具体例1)
具体例1は、多地点探索再構成機能の例である。端末装置12に京都の地図が出力されている状況において、ユーザは、出力されている地図に対して、例えば、マウスや指(タッチパネルの場合)などの入力手段を用いて、「平安神宮」をc操作(センタリング操作)した後にo操作(ズームアウト操作)を行い、さらに、「八坂神社」をc操作した、とする。
すると、端末装置12の端末側受付部121は、かかる操作を受け付ける。そして、端末側送信部122は、かかる操作に対応する操作情報を地図情報処理装置11に送信する。
次に、地図情報処理装置11の受付部113は、操作情報列「coc」を受信する。そして、操作情報列取得部115は、操作情報列「coc」を取得し、メモリ上には配置する。なお、通常、一のユーザ操作ごとに、端末装置12から地図情報処理装置11に操作情報が送信されるが、ここでは、一操作ごとの地図情報処理装置11等の動作説明を省略する。
次に、地図出力変更部119は、地図閲覧操作「coc」に応じた地図を、地図情報格納部111から読み出し、メモリ上に配置する。なお、かかる技術は公知技術である。また、c操作により中央に配置されたオブジェクト「平安神宮」と「八坂神社」は選択され、一時的にバッファに蓄えられる。
次に、表示属性決定部118は、バッファ中の操作情報列「coc」と、図7のオブジェクト選択条件管理表の各オブジェクト選択条件とのマッチングをとる。そして、表示属性決定部118は、図7のオブジェクト選択条件管理表のオブジェクト選択条件のうちの「ID=1」のオブジェクト選択条件「c+o+[mc]+」に合致する、と判断する。
次に、表示属性決定部118は、図7のオブジェクト選択条件管理表の関係情報条件「同位」を取得する。そして、表示属性決定部118は、バッファに蓄えられている選択オブジェクト「平安神宮」と「八坂神社」が、同位の関係にあるか否かを、図8の関係情報管理表を用いて判断する。ここでは、表示属性決定部118は、「平安神宮」と「八坂神社」が、同位の関係にあると判断する。以上より、表示属性決定部118は、受け付けられた操作列が、多地点探索に合致すると判断したこととなる。
次に、表示属性決定部118は、図7のオブジェクト選択条件管理表の「ID=1」のレコードのオブジェクト選択方法「選択オブジェクト」「同位関係」「その他のオブジェクト」に対応するオブジェクトを取得する。つまり、表示属性決定部118は、「選択オブジェクト」に対応する「平安神宮」と「八坂神社」を取得し、バッファに格納する。そして、表示属性決定部118は、「平安神宮」と「八坂神社」に対して、「ID=1」のレコードの表示属性「強調」に対応する表示属性(例えば、文字列をBOLDフォントにし、テキストボックスの背景色を黄色にし、領域の背景色を濃い色にする、など)を設定する。なお、「選択オブジェクト」は、ここでは、一連の操作における1以上のセンタリング操作した場合の、地図の中央点に最も近い位置に存在する1以上のオブジェクトである。なお、表示属性決定部118は、選択オブジェクトが、最終の出力される地図情報に存在するか否かを判断し、存在する場合のみ、表示属性を設定することは好適である。
また、表示属性決定部118は、オブジェクト選択方法「同位関係」を用いて、選択オブジェクトである「平安神宮」または「八坂神社」と同位関係にあるオブジェクトを、図8の関係情報管理表から選択する。そして、表示属性決定部118は、「高台寺」「安養寺」などの同位オブジェクトを選択し、バッファに格納する。そして、表示属性決定部118は、同位オブジェクト「高台寺」「安養寺」などに対しても、表示属性「強調」に対応する表示属性を設定する。なお、表示属性決定部118は、同位オブジェクトが、最終の出力される地図情報に存在するか否かを判断し、存在する場合のみ、表示属性を設定することは好適である。
次に、表示属性決定部118は、「その他のオブジェクト」に対応するオブジェクト(最終の出力される地図情報に存在し、かつ、選択オブジェクトでもなく、同位オブジェクトでもないオブジェクト)を取得し、バッファに格納する。かかるオブジェクトは、例えば、「ホテルりょうぜん」である。そして、表示属性決定部118は、かかるオブジェクトに対して、「ID=1」のレコードの表示属性「淡化」に対応する表示属性(例えば、文字列の色をグレイにする、領域の背景色を半透明にする、など)を設定する。
そして、表示属性決定部118は、バッファ上に、図9に示すオブジェクト表示属性管理表を得る。なお、オブジェクト表示属性管理表は、一時的に利用される情報である。
次に、地図出力変更部119は、変更した地図情報を、端末装置12に送信する。なお、変更した地図情報とは、図9に示すオブジェクト表示属性管理表に示されるオブジェクトを含む地図情報である。
次に、端末装置12は、地図情報を受信し、出力する。かかる出力イメージは、図10である。図10において、選択オブジェクト、同位オブジェクトが強調され、その他のオブジェクトが淡化されている。
なお、上記において、操作情報列「coc」のうちの最初の「c」操作、および次の「o」操作により、出力される地図は変更になることは言うまでもない。また、かかる場合も、表示属性決定部118は、操作情報列「c」および操作情報列「co」と、図7のオブジェクト選択条件管理表の各オブジェクト選択条件とのマッチングをとり、マッチするオブジェクト選択条件が存在しないために、再構成機能は働かなかった、ということである。かかることは、以下の具体例2から具体例5でも同様である。
この多地点探索再構成機能とは、ある地点から他の広域な領域へ探索範囲を広げようとする操作が行われた際に、選択された地名が同位関係である場合に発生する再構成機能である。この再構成機能が発生した場合には、ユーザは、先に関心を持っていた地点と同じような表示オブジェクトを探索していると考えられる。再構成効果としては、選択されたオブジェクトの強調、c操作された地名と同位関係となるオブジェクトの強調を行う。この効果により、類似した地点の発見を補助することが出来る。なおトリガはc操作とし、この効果はc操作が行われ同位関係の判定となるまで継続する。また、表示属性決定部118は、多地点探索再構成機能などの再構成機能ごとに、トリガとなる操作情報を保持しており、当該トリガに該当する場合に、操作情報列と図7のオブジェクト選択条件管理表とのマッチングを行うことは好適である。かかることは、他の具体例でも同様である。
(具体例2)
具体例2は、関心地点絞込再構成機能の例である。かかる状況において、ユーザは、出力されている京都の地図に対して、例えば、マウスや指(タッチパネルの場合)などの入力手段を用いて、所定の操作(例えば、c操作、およびo操作)を行った後、「平安神宮」に対して、c操作を行い、その後に詳細な情報を得ようとしてi操作をした、とする。つまり、地図情報処理装置11の受付部113は、例えば、操作情報列「coci」を受信する。なお、ここで、端末装置12の動作を省略している。
そして、地図出力変更部119は、地図閲覧操作「coci」に応じた地図を、地図情報格納部111から読み出し、メモリ上に配置する。
次に、表示属性決定部118は、バッファ中の操作情報列「coci」と、図7のオブジェクト選択条件管理表の各オブジェクト選択条件とのマッチングをとる。そして、表示属性決定部118は、図7のオブジェクト選択条件管理表のオブジェクト選択条件のうちの「ID=2」のオブジェクト選択条件「c+o+([mc]*c+i+)+」に合致する、と判断した、とする。ここでは、関係情報条件は用いられない。
次に、表示属性決定部118は、図7のオブジェクト選択条件管理表の「ID=2」のレコードのオブジェクト選択方法「選択オブジェクト」「新出オブジェクト」に対応するオブジェクトを取得する。つまり、表示属性決定部118は、「選択オブジェクト」に対応する「平安神宮」を取得し、バッファに格納する。そして、表示属性決定部118は、「平安神宮」に対して、「ID=2」のレコードの表示属性「強調」に対応する表示属性を設定する。
次に、地図出力変更部119は、変更した地図情報を、端末装置12に送信する。なお、変更した地図情報とは、バッファ上のオブジェクトを含む地図情報である。
次に、端末装置12は、地図情報を受信し、出力する。かかる出力イメージは、図11である。図11において、選択オブジェクト「平安神宮」等が強調されている。つまり、図11において、平安神宮という地名と領域が強調され、また、この縮尺で新たに現れたオブジェクトも強調されている。
関心地点絞込再構成機能とは、ズームアウトした状態で、ある地点に関心を持ちc操作を行い、その後に詳細な情報を得ようとしてi操作をするものである。選択された地名同士の関係は用いない。この再構成機能が発生した場合には、ユーザは何か目的を持って地点を絞り込んできていると考えられる。再構成効果としては、操作によって新しく出現したオブジェクトを強調、選択されたオブジェクトの強調が行われる。絞り込む際に、新たな表示オブジェクトを強調することで、目的地点の発見を補助できると考える。なお、関心地点絞込再構成機能のトリガはi操作とし、この効果は一度きりで継続はせず、i操作が行われる度に再構成が行われる。
(具体例3)
具体例3は、単純移動再構成機能の例である。かかる状況において、ユーザは、出力されている京都の地図に対して、例えば、マウスや指(タッチパネルの場合)などの入力手段を用いて、「西本願寺」の方向から「京都駅」に向かって移動操作「m」を入力した、とする。
そして、地図情報処理装置11の受付部113は、操作情報列「m」を受信する。
次に、地図出力変更部119は、地図閲覧操作「m」に応じた地図を、地図情報格納部111から読み出し、メモリ上に配置する。
なお、表示属性決定部118は、出力されている地図の中央点に最も近いオブジェクトをバッファに追記していっている、とする。そして、現在、「西本願寺」と「京都駅」がバッファに格納されている、とする。また、表示属性決定部118は、例えば、地図操作において、ユーザが指示したオブジェクトなども選択し、バッファに追記しても良い。
次に、表示属性決定部118は、バッファ中の操作情報列「m」と、図7のオブジェクト選択条件管理表の各オブジェクト選択条件とのマッチングをとる。そして、表示属性決定部118は、図7のオブジェクト選択条件管理表のオブジェクト選択条件のうちの「ID=3」「ID=4」のオブジェクト選択条件「[mc]+」に合致する、と判断する。
次に、表示属性決定部118は、図7のオブジェクト選択条件管理表のオブジェクト選択条件のうちの「ID=3」「ID=4」の関係情報条件「無関係」「同位or上位or下位」を取得する。そして、表示属性決定部118は、図8の関係情報管理表から、「西本願寺」と「京都駅」は「無関係」であると判断する。そして、表示属性決定部118は、バッファ中の操作情報列および選択オブジェクト(ここでは、「西本願寺」と「京都駅」)は、図7のオブジェクト選択条件管理表のうち、「ID=3」のオブジェクト選択条件にマッチする、と判断する。
次に、表示属性決定部118は、図7のオブジェクト選択条件管理表の「ID=3」のレコードのオブジェクト選択方法「既出オブジェクト」、表示属性「淡化」、およびオブジェクト選択方法「選択オブジェクト」、表示属性「強調」を取得する。そして、表示属性決定部118は、直前、または直前までに表示されており、現在、読み出した地図情報に含まれるオブジェクトである既出オブジェクトを取得し、バッファに格納する。そして、その格納されたオブジェクトの表示属性として、「淡化」に対応する属性値(半透明など)を設定する。また、選択オブジェクト(「西本願寺」と「京都駅」)をバッファに格納する。そして、その格納されたオブジェクトの表示属性として、「強調」に対応する属性値(BOLDフォントなど)を設定する。
次に、地図出力変更部119は、変更した地図情報を、端末装置12に送信する。なお、変更した地図情報とは、表示属性決定部118が表示属性を変更したオブジェクトを含む地図情報である。
次に、端末装置12は、地図情報を受信し、出力する。かかる出力イメージは、図12である。図12において、既出のオブジェクトの淡化、選択オブジェクトの強調が行われている。図12は、西本願寺の方向から京都駅に向かって移動した場合の効果例であり、前操作時に表示されていた地図領域が淡化されている。
なお、この具体例3の単純移動再構成機能は、m操作が連続して行われているが、選択した地名同士に関係がなかった場合に発生する再構成機能である。つまり、地名の関係が無関係の場合に発生する。この単純移動再構成機能が発生した場合には、ユーザは、特に関心のある地点が発見できずにいる、または、自らの位置がわからなくなっている状況にあると考えられる。そして、再構成効果としては、既出のオブジェクトの淡化、選択オブジェクトの強調が行われる。単純移動再構成機能により、既に一度見た表示オブジェクトを淡化することで、ユーザに対しどの部分を見て、どの部分をまだ確認していないかということを示すことが出来る。なお、トリガはm操作、もしくはc操作とし、これらの操作が続く間は効果も継続する。
(具体例4)
具体例4は、選択移動再構成機能の例である。選択移動再構成機能は、m操作が行われているうちに、表示属性決定部118が選択し、バッファ上に格納した地名同士に同位、上位、下位の関係性がある場合に発生する再構成機能である(図7のオブジェクト選択条件管理表を参照のこと)。この再構成機能が発生した場合には、ユーザは何かに関心を持ち、意図的にそれらの地名を選びながら移動していると考えられる。再構成効果としては、既出オブジェクトの淡化、選択オブジェクトの強調、地名の関係性によるオブジェクトの強調が行われる。一度見た領域の淡化に加えて、地名の関係に従って表示オブジェクトを呈示することで、ユーザが次に求めている表示オブジェクトの候補を示すことが出来ると考える。なお、トリガはm操作、もしくはc操作とし、これらの操作が続く間は効果も継続する。
(具体例5)
具体例5は、位置確認再構成機能の例である。かかる状況において、ユーザは、出力されている京都の地図に対して、例えば、マウスや指(タッチパネルの場合)などの入力手段を用いて、「東本願寺」をc操作後、移動しながら「プラッツ近鉄」、「京都タワー」、「伊勢丹」をそれぞれc操作し、その後o操作、およびi操作を行った、とする。
そして、地図情報処理装置11の受付部113は、操作情報列「cmcmcmcoi」を、順次、受信する。
次に、地図出力変更部119は、操作情報列「cmcmcmcoi」に応じた地図を、地図情報格納部111から読み出し、メモリ上に配置する。
なお、表示属性決定部118は、c操作に対応するオブジェクト「東本願寺」「プラッツ近鉄」、「京都タワー」、および「伊勢丹」をバッファに蓄積する、とする。このバッファは、選択オブジェクトを格納するバッファである。
次に、表示属性決定部118は、バッファ中の操作情報列「cmcmcmcoi」と、図7のオブジェクト選択条件管理表の各オブジェクト選択条件とのマッチングをとる。そして、表示属性決定部118は、図7のオブジェクト選択条件管理表のオブジェクト選択条件のうちの「ID=5」のオブジェクト選択条件に合致する、と判断する、とする。
次に、表示属性決定部118は、図7のオブジェクト選択条件管理表の「ID=5」のレコードのオブジェクト選択方法「今までの選択領域」、表示属性「強調」、およびオブジェクト選択方法「選択オブジェクトの集合」、表示属性「出力・強調」を取得する。
そして、表示属性決定部118は、今までの選択されたオブジェクトに対応する領域を強調(例えば、背景色を濃い色に設定する等)する設定を、当該オブジェクトに対して行う。また、選択オブジェクト「東本願寺」「プラッツ近鉄」、「京都タワー」、および「伊勢丹」を、強制的に出力し(読み出した地図情報に存在しない場合でも)、かつ、出力時の表示属性を強調に対応する属性値(例えば、BOLDフォントなど)に設定する。
次に、地図出力変更部119は、変更した地図情報を、端末装置12に送信する。なお、変更した地図情報とは、表示属性決定部118が表示属性を変更したオブジェクトを含む地図情報である。
次に、端末装置12は、地図情報を受信し、出力する。かかる出力イメージは、図13である。図13において、c操作で強調された4つの地点(「東本願寺」「プラッツ近鉄」、「京都タワー」、および「伊勢丹」)を含む矩形で強調を行っている。
位置確認再構成機能は、m操作が行われた後、o操作が行われた際に発生する再構成機能である。c操作された地名を全て呈示する必要があるため、地名の関係は用いない。この再構成機能が発生した場合には、ユーザはm操作を行っていて自らの位置を見失う、どのように地点を調べてきたのか確認したいなど、一度現在地を現在より広域な地図で確認しようとしていると考えられる。再構成効果としては、選択領域間強調、消去地名再表示が行われる。選択領域とは、再構成機能の発生より前に行われたc 操作等で強調された表示オブジェクトのことを指す。選択領域を全て含むような最小矩形領域を強調し、また、o操作時に、詳細度制御により選択した地名が消去されてしまう可能性があるため、センタリングされた地名は強制的に呈示する。この効果により、ユーザの見ている位置とこれまでに移動してきたルートに近いものが呈示出来る。
以上、本実施の形態によれば、ユーザの意図に応じた、地図を出力できる。具体的には、本実施の形態によれば、1または2以上の地図閲覧操作の集合である地図閲覧操作列に応じて、地図上のオブジェクト(地名、図柄など)の表示属性を変更することができる。
また、本実施の形態によれば、地図閲覧操作列とオブジェクト間の関係情報を用いて、オブジェクトの表示属性を変更することにより、よりユーザの意図を反映した地図を出力できる。
さらに、本実施の形態によれば、オブジェクト間の関係情報を自動取得でき、容易に、ユーザの意図を反映した地図を出力できる。
なお、本実施の形態によれば、地図情報処理装置11はスタンドアロンでも良い。また、地図情報処理装置11、または地図情報処理装置11と端末装置12は、自動車などの移動体に組み込まれたナビゲーションシステムの一装置、一機能であっても良い。かかる場合、操作情報列は、移動体の走行により発生するイベント(1以上の地点への移動や、1以上の地点での停車など)であっても良い。また、操作情報列は、移動体の走行により発生するイベント、およびユーザ操作により発生する1以上の操作情報であっても良い。
また、本実施の形態によれば、上述したように、地図情報処理装置11を自動車等の移動体に組み込む場合、地図閲覧操作は移動体の走行により自動的に発生し得る。
また、本実施の形態によれば、再構成機能の例として5つの例を挙げた。しかし、他の再構成機能の例もあり得ることは言うまでもない。
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における地図情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、地図を出力する指示である地図出力指示、および地図を閲覧する1または2以上の操作である地図閲覧操作列を受け付け受付部と、前記受付部が地図出力指示を受け付けた場合に、記憶媒体から地図情報を読み出し、地図を出力する地図出力部と、前記受付部が受け付けた地図閲覧操作列に対応する1または2以上の操作の情報である操作情報列を取得する操作情報列取得部と、予め決められたオブジェクトを選択する条件であるオブジェクト選択条件に、前記操作情報列が合致する場合に、1以上のオブジェクトを選択し、当該1以上のオブジェクトの表示属性を決定する表示属性決定部と、前記地図閲覧操作に応じた地図情報を取得し、かつ、前記表示属性決定部が決定した前記1以上のオブジェクトの表示属性に従って、前記1以上のオブジェクトを有する地図情報を出力する地図出力変更部として機能させるためのプログラム、である。
また、上記プログラムにおいて、前記表示属性決定部は、前記操作情報列と前記2以上のオブジェクト間の関係情報とを用いて、1以上のオブジェクトを選択し、当該1以上のオブジェクトの表示属性を決定するものとして、コンピュータを機能させるためのプログラムであることは好適である。
また、記憶媒体に同一の領域の地図情報であり、縮尺が異なる複数の地図情報を格納しており、上記プログラムにおいて、コンピュータを、前記縮尺が異なる複数の地図情報における2以上のオブジェクトの出現パターン、および前記2以上のオブジェクトの位置情報を用いて、前記2以上のオブジェクト間の関係情報を取得する関係情報取得部としてさらに機能させることは好適である。
(実施の形態2)
本実施の形態において、地図閲覧に至るまでのユーザの入力、または出力された情報(例えば、ウェブページなど)、および地図閲覧操作を用いて、情報検索のための検索式(キーワードだけでも良い)を構成し、当該検索式を用いて情報を検索し、出力する地図情報処理システムについて説明する。また、本地図情報処理システムの機能をナビゲーションシステムに組み込んだ場合、運転者が見ることができる端末には自動車の停止時のみ情報が出力され、走行時には、助手席の端末や後部座席の端末にのみ情報が出力されるシステムについて説明する。
図14は、本実施の形態における地図情報処理システムの概念図である。地図情報処理システムは、地図情報処理装置141と1以上の情報格納装置142を有する。地図情報処理システムは、1以上の端末装置12を有しても良い。
図15は、本実施の形態における地図情報処理システム2のブロック図である。地図情報処理装置141は、地図情報格納部1410、受付部1411、第一情報出力部1412、地図出力部1413、地図出力変更部1414、操作情報列取得部1415、第一キーワード取得部1416、第二キーワード取得部1417、検索部1418、第二情報出力部1419を具備する。
第二キーワード取得部1417は、検索範囲管理情報格納手段14171、検索範囲情報取得手段14172、キーワード取得手段14173を具備する。
情報格納装置142は、地図情報処理装置141により検索され得る情報を格納しており、地図情報処理装置141からの要求に従って、情報を読み出し、当該情報を地図情報処理装置141に送信する。情報とは、例えば、ウェブページや、データベースに格納されているレコードなどであり、そのデータタイプ(文字列、静止画、動画、音声など)やデータの形式は問わない。また、情報とは、例えば、広告や、地図情報などでも良い。情報格納装置142は、ウェブページを保持しているウェブサーバや、データベースを具備するデータベースサーバなどである。
地図情報格納部1410は、地図についての情報である地図情報を格納し得る。地図情報格納部1410の地図情報は、他の装置から取得した情報でも良いし、予め地図情報処理装置141に格納されている情報でも良い。地図情報は、例えば、地図の図柄を示す地図図柄情報と、用語と当該用語の地図上での位置を示す位置情報を有する用語情報を有する。地図図柄情報は、例えば、地図を構成するビットマップまたはベクターデータなどである。用語とは、地図上に表記されている地名や、建物や名勝や場所の名称などの文字列を有する。また、位置情報は、地図上の経度、緯度を有する情報や、二次元平面上のX、Y座標値などである。また、地図情報は、ISOのkiwi地図データフォーマットであっても良い。また、地図情報は、好ましくは、縮尺ごとに地図図柄情報と、用語情報を有する。地図情報格納部1410は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
受付部1411は、ユーザから各種の指示や操作を受け付ける。各種の指示や操作とは、例えば、地図を出力する指示や地図を閲覧する操作である地図閲覧操作などである。地図閲覧操作とは、ズームイン操作(ズームイン操作を、以下、記号[i]で表す場合がある。)、ズームアウト操作(ズームアウト操作を、以下、記号[o]で表す場合がある。)、移動操作(移動操作を、以下、記号[m]で表す場合がある。)、センタリング操作(センタリング操作を、以下、記号[c]で表す場合がある。)などである。また、複数の地図閲覧操作を地図閲覧操作列という。各種の指示とは、第一の情報を出力する指示である第一情報出力指示、および地図を出力する地図出力指示などである。第一の情報とは、例えば、ウェブページ、地図情報などである。第一の情報とは、例えば、広告などでも良く、第一の情報は、地図と一緒に出力されている情報でも良い。第一情報出力指示とは、例えば、1以上の検索キーワード、URLなどを含むである。各種の指示や操作の入力手段は、キーボードやマウスやメニュー画面やタッチパネルによるもの等、何でも良い。受付部1411は、マウス等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
第一情報出力部1412は、受付部1411が受け付けた第一情報出力指示に応じて、第一の情報を出力する。第一情報出力部1412は、例えば、検索エンジンおよびウェブブラウザなどにより実現され得る。ただし、第一情報出力部1412は、いわゆる検索エンジンに第一情報出力指示に含まれるキーワードを与えるだけの処理を行っても良い。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。第一情報出力部1412は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。第一情報出力部1412は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
地図出力部1413は、受付部1411が地図を出力する指示を受け付けた場合に、地図情報格納部1410から地図情報を読み出し、地図を出力する。地図出力部1413は、地図図柄情報のみを読み出し、出力しても良いことは言うまでもない。ここで、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信等を含む概念である。地図出力部1413は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。地図出力部1413は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
地図出力変更部1414は、受付部1411が地図閲覧操作を受け付け場合に、地図閲覧操作に応じて地図の出力を変更する。「地図の出力を変更する」とは、地図出力部1413に、地図の出力の変更を指示することも含む。
さらに具体的には、地図出力変更部1414は、受付部1411がズームイン操作を受け付けた場合に、出力されている地図をズームインし、受付部1411がズームアウト操作を受け付けた場合に、出力されている地図をズームアウトする。また、地図出力変更部1414は、受付部1411が移動操作を受け付けた場合に、出力されている地図を、操作に従って移動する。さらに、地図出力変更部1414は、受付部1411がセンタリング操作を受け付けた場合に、出力されている地図の指示された地点が画面の中央になるように、画面を移動する。地図出力変更部1414の処理は公知技術であるので、詳細な説明を省略する。地図出力変更部1414は、変更後の地図を特定する情報(例えば、地図の縮尺と、出力されている地図の中心地点の位置情報など)をバッファに書き込む処理を行っても良い。なお、変更後の地図を特定する情報を、適宜、「出力地図特定情報」という。
地図出力変更部1414は、通常、MPUやメモリ等から実現され得る。地図出力変更部1414の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
操作情報列取得部1415は、地図閲覧操作列に対応する操作の情報である操作情報列を取得する。操作情報列取得部1415は、2以上の一連の操作情報である操作情報列を取得し、かつ、所定の条件に合致した場合に、自動的に取得する一の操作情報列を終了させる。操作情報列には、例えば、以下のものがある。まず、操作情報列の例として、「m*c+i+」の操作列を示す情報であり、任意の一点を指定する操作情報列である単点指定操作情報列がある。また、操作情報列の例として、「m+o+」の操作列を示す情報であり、任意の二以上の点を指定する操作情報列である複数点指定操作情報列がある。また、操作情報列の例として、「i+c[c*m*]*」の操作列を示す情報であり、複数の地点を順に選択する操作情報列である選択指定操作情報列がある。また、操作情報列の例として、「c+m*o+」の操作列を示す情報であり、複数の地点の位置関係を調べる操作情報列である周辺指定操作情報列がある。また、操作情報列の例として、「o+m+」の操作列を示す情報であり、複数地点を移動させていく操作情報列である広域指定操作情報列がある。さらに、上記の5種類の操作情報列(単点指定操作情報列、複数点指定操作情報列、選択指定操作情報列、周辺指定操作情報列、広域指定操作情報列)の1以上の組み合わせの操作列がある。
また、5種類の操作情報列の組み合わせについて、以下の絞込検索操作情報列、比較検索操作情報列、および経路検索操作情報列などが例として挙げられる。絞込検索操作情報列とは、単点指定操作情報列の後に単点指定操作情報列が続き、その後に、当該後の単点指定操作情報列の一部が重複する選択指定操作情報列を有する操作情報列である。比較検索操作情報列は、選択指定操作情報列の後に複数点指定操作情報列が続き、その後に、当該複数点指定操作情報列の一部が重複する広域指定操作情報列を有する操作情報列である。経路検索操作情報列は、周辺指定操作情報列の後に、選択指定操作情報列が続く操作情報列である。
また、上記における一の操作情報列の区切りを示す所定の条件の例は、移動操作における移動距離が予め決められた閾値より大きい場合がある。また、所定の条件の例は、受付部1411が一定時間操作を受け付けなかったことである。また、所定の条件の例は、受付部1411が、ユーザからの地図操作終了の指示(電源オフを含む)を受け付けたことである。
また、操作情報列は、ユーザの地図操作から取得される情報と、自動車等の移動体の走行により発生する情報とが、組み合わされた情報であることは好適である。自動車等の移動体の走行により発生する情報とは、例えば、ある地点を通過した場合に発生する、当該地点への移動操作[m]の情報であったり、ある地点で停止した場合に発生する、当該地点に対するセンタリング操作[c]の情報である。
操作情報列取得部1415は、通常、MPUやメモリ等から実現され得る。操作情報列取得部1415の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
第一キーワード取得部1416は、第一情報出力指示が有するキーワード、または第一の情報に対応するキーワードを取得する。第一の情報に対応するキーワードとは、第一の情報に含まれる1以上の用語などである。第一の情報が、例えば、ウェブページである場合、第一の情報に対応するキーワードとは、当該ウェブページのタイトル内の1以上の名詞や、当該ウェブページの主題を示す用語などである。ウェブページの主題を示す用語とは、例えば、最も出現頻度が高い用語や、自ページ内で出現頻度が高く、他のウェブページで出現頻度が少ない用語(例えば、tf/idfを用いて決定する)などである。また、第一情報出力指示が有するキーワードとは、例えば、ユーザがウェブページの検索のために入力した用語である。第一キーワード取得部1416は、通常、MPUやメモリ等から実現され得る。第一キーワード取得部1416の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
第二キーワード取得部1417は、操作情報列を用いて、地図情報から1以上のキーワードを取得する。第二キーワード取得部1417は、操作情報列取得部1415が取得した一の操作情報列を用いて、地図情報格納部1410の地図情報から1以上のキーワードを取得する。第二キーワード取得部1417は、通常、地図情報が有する用語情報から用語を取得する。用語とキーワードは同意義である。操作情報列からキーワードを取得するアルゴリズムの例の詳細は、後述する。なお、ここで、キーワードを取得するとは、通常、単なる文字列の取得であるが、地図画像を文字認識し、文字列を取得しても良い。第二キーワード取得部1417は、通常、MPUやメモリ等から実現され得る。第二キーワード取得部1417の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
検索範囲管理情報格納手段14171は、2以上の操作情報である操作情報列と、取得するキーワードの地図上での範囲についての情報である検索範囲情報の対である検索範囲管理情報を2組以上格納している。検索範囲情報は、取得するキーワードを特定する情報や、キーワードの取得方法を示す情報でも良い。検索範囲管理情報とは、例えば、絞込検索操作情報列と、ズームイン操作後にセンタリング操作を受け付けた場合またはズームイン操作後に移動操作を受け付けた場合に出力されている地図の中心地点と近傍(最も近い、所定の範囲内)にある地点である目的地点のキーワードを取得する旨の情報である絞込検索対象情報を対に有する情報である。また、検索範囲管理情報とは、例えば、比較検索操作情報列と、ズームアウト操作後に出力されている地図の領域とズームアウト操作前に出力されている地図の領域の差の領域を示す情報である比較検索対象情報を対に有する情報である。また、検索範囲管理情報とは、例えば、比較検索操作情報列と、移動操作後に出力されている地図の領域から移動操作前に出力されている地図の領域を除いた領域を示す情報である比較検索対象情報を対に有する情報である。また、検索範囲管理情報とは、例えば、経路検索操作情報列と、ズームイン操作またはズームアウト操作を受け付けた場合に出力されている地図の中心地点と近傍にある地点である目的地点のキーワードを取得する旨の情報である経路検索対象情報を対に有する情報である。さらに、絞込検索対象情報は、ズームイン操作後にセンタリング操作を受け付けた場合またはズームイン操作後に移動操作を受け付けた場合に出力されている地図の中心地点と近傍にある地点である目的地点のキーワードを取得する旨の情報である。絞込検索対象情報は、ズームイン操作前にセンタリング操作を受け付けた場合に出力されている地図の地名を示す目印地点のキーワードを取得する旨の情報も含んでも良い。なお、目的地点とは、ユーザが地図上で探したい地点である。目印地点とは、目的地点に到着するまでの目印となる地点である。なお、ある地点の近傍にある地点とは、当該地点に最も近い地点、または、当該地点から所定の範囲内にある地点などである。
検索範囲管理情報格納手段14171は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
検索範囲情報取得手段14172は、操作情報列取得部1415が取得した1以上の操作情報である操作情報列に対応する検索範囲情報を検索範囲管理情報格納手段14171から取得する。さらに具体的には、検索範囲情報取得手段14172は、操作情報列取得部1415が取得した1以上の操作情報である操作情報列が絞込検索操作情報列に対応すると判断した場合に、絞込検索対象情報を取得する。また、検索範囲情報取得手段14172は、操作情報列取得部1415が取得した1以上の操作情報である操作情報列が比較検索操作情報列に対応すると判断した場合に、比較検索対象情報を取得する。さらに、検索範囲情報取得手段14172は、操作情報列取得部1415が取得した1以上の操作情報である操作情報列が経路検索操作情報列に対応すると判断した場合に、経路検索対象情報を取得する。検索範囲情報取得手段14172が、例えば、ソフトウェアで実現されている場合、絞込検索対象情報は、絞込検索を行う関数名でも良い。同様に、比較検索対象情報は、比較検索を行う関数名でも良い。同様に、経路検索対象情報は、経路検索を行う関数名でも良い。
検索範囲情報取得手段14172は、通常、MPUやメモリ等から実現され得る。検索範囲情報取得手段14172の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
キーワード取得手段14173は、検索範囲情報取得手段14172が取得した検索範囲情報に従って、地図情報から1以上のキーワードを取得する。キーワード取得手段14173は、検索範囲情報取得手段14172が取得した絞込検索対象情報に対応する目的地点のキーワードを少なくとも取得する。キーワード取得手段14173は、検索範囲情報取得手段14172が取得した絞込検索対象情報に対応する目印地点のキーワードである地名をも取得する。キーワード取得手段14173は、検索範囲情報取得手段14172が取得した比較検索対象情報に対応するキーワードを少なくとも取得する。キーワード取得手段14173は、検索範囲情報取得手段14172が取得した経路検索対象情報に対応する目的地点のキーワードを少なくとも取得する。キーワード取得手段14173は、検索範囲情報取得手段14172が取得した経路検索対象情報に対応する目印地点のキーワードである地名をも取得する。キーワード取得手段14173のキーワード取得処理の具体例の詳細については後述する。また、目的地点のキーワードとは、目的地点を特定できるであろうキーワードである。目印地点のキーワードとは、目的印点を特定できるであろうキーワードである。
キーワード取得手段14173は、通常、MPUやメモリ等から実現され得る。キーワード取得手段14173の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
検索部1418は、第一キーワード取得部1416および第二キーワード取得部1417が取得した2以上のキーワードを用いて、情報を検索する。ここで、情報とは、インターネット上のウェブページであることが好適である。また、情報は、データベース内の情報等でも良い。また、情報は、地図情報や広告情報などでも良いことは言うまでもない。検索部1418は、例えば、受付部1411が絞込検索操作情報列を受け付けた場合、第一キーワード取得部1416が取得したキーワードをページ内に有し、かつ、目的地点のキーワードをタイトル内に有し、かつ、目印地点のキーワードをページ内に有するWebページを検索することは好適である。また、検索部1418は、第一キーワード取得部1416が取得したキーワード、および目印地点のキーワードと目印地点のキーワードが含まれる1以上のWebページを取得し、かつ、当該取得した1以上の各Webページから2以上の用語を検出し、当該2以上の用語の位置を示す2以上の位置情報を地図情報から取得し、当該2以上の位置情報を用いて、Webページの記述の地理的範囲を示す情報である地理的範囲情報をWebページごとに取得し、当該地理的範囲情報が最も狭い地理的範囲を示すWebページを少なくとも取得することは好適である。検索部1418は、第一キーワード取得部1416が取得したキーワード、および目的地点のキーワードと目印地点のキーワードが含まれる1以上のWebページを取得する場合、少なくとも一のキーワードをWebページのタイトル内に有する1以上のWebページを取得することは好適である。検索部1418は、例えば、Webページを取得しても良いし、いわゆるWeb検索エンジンにキーワードを渡して、当該Web検索エンジンを起動し、Web検索エンジンの検索結果を受け付けても良い。
検索部1418は、通常、MPUやメモリ等から実現され得る。検索部1418の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
第二情報出力部1419は、検索部1418が検索した情報を出力する。ここで、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積等を含む概念である。第二情報出力部1419は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。第二情報出力部1419は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、地図情報処理装置141の動作について図16から図21のフローチャートを用いて説明する。
(ステップS1601)受付部1411は、ユーザから指示を受け付けたか否かを判断する。指示を受け付ければステップS1602に行き、指示を受け付けなければステップS1601に戻る。
(ステップS1602)第一情報出力部1412は、ステップS1601で受け付けた指示が第一情報出力指示であるか否かを判断する。第一情報出力指示であればステップS1603に行き、第一情報出力指示でなければステップS1604に行く。
(ステップS1603)第一情報出力部1412は、受付部1411が受け付けた第一情報出力指示に応じて、第一の情報を出力する。第一情報出力部1412は、例えば、第一情報出力指示に含まれるキーワードを用いて、ウェブページを検索し、当該ウェブページを出力する。ステップS1601に戻る。なお、第一情報出力部1412は、第一情報出力指示に含まれる1以上のキーワードや、第一情報を、予め決められたバッファに格納しておいても良い。
(ステップS1604)地図出力部1413は、ステップS1601で受け付けた指示が地図の出力指示であるか否かを判断する。地図の出力指示であればステップS1605に行き、地図の出力指示でなければステップS1607に行く。
(ステップS1605)地図出力部1413は、地図情報格納部1410から地図情報を読み出す。
(ステップS1606)地図出力部1413は、ステップS1605で読み出した地図情報を用いて、地図を出力する。ステップS1601に戻る。
(ステップS1607)地図出力部1413は、ステップS1601で受け付けた指示が地図閲覧操作であるか否かを判断する。地図の地図閲覧操作であればステップS1608に行き、地図の地図閲覧操作でなければステップS1615に行く。
(ステップS1608)操作情報列取得部1415は、ステップS1601で受け付けた地図閲覧操作に対応する操作情報を取得する。
(ステップS1609)地図出力変更部1414は、地図閲覧操作に応じて地図の出力を変更する。
(ステップS1610)地図出力変更部1414は、ステップS1609で取得した操作情報と、ステップS1609で出力された地図を特定する情報である出力地図特定情報を対にしてバッファに格納する。出力地図特定情報は、例えば、地図の縮尺を示すIDである縮尺ID、出力される地図の中心点を示す位置情報(例えば、経度、緯度の情報を有する)を有する。出力地図特定情報は、縮尺IDと、出力される地図の矩形の左上の位置情報、右下の位置情報でも良い。なお、地図出力変更部1414が、操作情報と、出力地図特定情報を対にしてバッファに格納しても良い。出力地図特定情報は、例えば、地図の縮尺を特定する情報と、出力地図の中心地点の位置情報であっても良いし、出力された地図のビットマップと、出力地図の中心地点の位置情報であっても良い。
(ステップS1611)第一キーワード取得部1416、および第二キーワード取得部1417は、キーワード取得処理を行う。キーワード取得処理の詳細については、図17のフローチャートを用いて説明する。
(ステップS1612)検索部1418は、ステップS1611でキーワードを取得できたか否かを判断する。キーワードを取得できればステップS1613、キーワードを取得できなければステップS1601に戻る。
(ステップS1613)検索部1418は、ステップS1611で取得したキーワードを用いて、情報格納装置142から情報を検索する。かかる検索処理の例の詳細について、図21のフローチャートを用いて説明する。
(ステップS1614)第二情報出力部1419は、ステップS1613で検索した情報を出力する。ステップS1601に戻る。
(ステップS1615)地図出力部1413は、ステップS1601で受け付けた指示が処理を終了する終了指示であるか否かを判断する。終了指示であればステップS1616に行き、終了指示でなければステップS301に行く。
(ステップS1616)地図情報処理装置141は、バッファ内のキーワードや操作情報等の情報をクリアする。処理を終了する。ステップS1601に戻る。
なお、図16のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、ステップS1611のキーワード取得処理について図17のフローチャートを用いて説明する。
(ステップS1701)第一キーワード取得部1416は、ユーザが入力したキーワードを取得する。なお、ユーザが入力したキーワードとは、例えば、受付部1411に受け付けられた第一情報出力指示が有するキーワードである。
(ステップS1702)第一キーワード取得部1416は、第一情報出力部1412が出力した第一情報(例えば、ウェブぺージ)内から、キーワードを取得する。
(ステップS1703)検索範囲情報取得手段14172は、操作情報列が格納されているバッファから操作情報列を読み出す。
(ステップS1704)検索範囲情報取得手段14172は、ステップS1703で読み出した操作情報列を用いて、検索範囲情報を取得する処理である検索範囲情報取得処理を行う。検索範囲情報取得処理については、図18のフローチャートを用いて説明する。
(ステップS1705)キーワード取得手段14173は、ステップS1704で検索範囲情報を取得できたか否かを判断する。検索範囲情報を取得できればステップS1706に行き、検索範囲情報を取得できなければ上位関数にリターンする。
(ステップS1706)キーワード取得手段14173は、ステップS1704で取得した検索範囲情報を用いてキーワードを取得する処理を実行する。かかるキーワード取得処理について、図19のフローチャートを用いて説明する。上位関数にリターンする。
なお、図17のフローチャートにおいて、第一キーワード取得部1416は、ステップS1701の動作およびステップS1702の動作により、キーワードを取得した。しかし、第一キーワード取得部1416は、ステップS1701の動作およびステップS1702の動作のうちの、どちらか一方の動作により、キーワードを取得しても良い。
次に、ステップS1704の検索範囲情報取得処理については、図18のフローチャートを用いて説明する。
(ステップS1801)検索範囲情報取得手段14172は、カウンタiに1を代入する。
(ステップS1802)検索範囲情報取得手段14172は、検索範囲管理情報格納手段14171に、i番目の検索範囲管理情報が存在するか否かを判断する。i番目の検索範囲管理情報が存在すればステップS1803に行き、i番目の検索範囲管理情報が存在しなければ上位関数にリターンする。
(ステップS1803)検索範囲情報取得手段14172は、i番目の検索範囲管理情報を、検索範囲管理情報格納手段14171から読み出す。
(ステップS1804)検索範囲情報取得手段14172は、カウンタjに1を代入する。
(ステップS1805)検索範囲情報取得手段14172は、操作情報列のバッファに、j番目の操作情報が存在するか否かを判断する。j番目の操作情報が存在すればステップS1806に行き、j番目の操作情報が存在しなければステップS1811に行く。
(ステップS1806)検索範囲情報取得手段14172は、操作情報列のバッファから、j番目の操作情報を読み出す。
(ステップS1807)検索範囲情報取得手段14172は、i番目の検索範囲管理情報が示す操作列のパターンに、j番目までの操作情報列が合致するか否かを判断する。
(ステップS1808)検索範囲情報取得手段14172は、j番目までの操作情報列が合致すればステップS1809に行き、合致しなければステップS1810に行く。
(ステップS1809)検索範囲情報取得手段14172は、カウンタjを1、インクリメントする。ステップS1805に戻る。
(ステップS1810)検索範囲情報取得手段14172は、カウンタiを1、インクリメントする。ステップS1702に戻る。
(ステップS1811)検索範囲情報取得手段14172は、i番目の検索範囲管理情報を取得する。上位関数にリターンする。
次に、ステップS1704の検索範囲情報を用いてキーワードを取得する処理について図19のフローチャートを用いて説明する。
(ステップS1901)キーワード取得手段14173は、検索範囲情報が絞込検索操作情報列に対する情報であるか否か(絞込検索であるか否か)を判断する。前記条件を満たせばステップS1902に行き、条件を満たさなければステップS1910に行く。
(ステップS1902)キーワード取得手段14173は、バッファ内の操作情報列がズームイン操作[i]後に、センタリング操作[c]が行われたことを示す操作情報列であるか否かを判断する。かかる条件に合致すればステップS1903に行き、合致しなければステップS1909に行く。
(ステップS1903)キーワード取得手段14173は、センタリング操作[c]に対応する地図情報を読み込む。
(ステップS1904)キーワード取得手段14173は、ステップS1903で読み込んだ地図情報が有する地図図柄情報の中心地点の位置情報を取得する。キーワード取得手段14173は、操作情報列が有する操作情報と対に格納されている中心地点の位置情報を読み出しても良いし、地図図柄情報の領域を示す情報(例えば、地図図柄情報の左上の位置情報と右下の位置情報)から中心地点の位置情報を算出しても良い。
(ステップS1905)キーワード取得手段14173は、ステップS1904で取得した中心地点の位置情報に最も近い位置情報と対になる用語を、ステップS1903で読み込んだ地図情報が有する用語情報から、目的地点のキーワードとして取得する。
(ステップS1906)キーワード取得手段14173は、バッファ内の操作情報列から、以前の操作情報であり、最近のセンタリング操作[c]の際の地図情報を取得する。
(ステップS1907)キーワード取得手段14173は、ステップS1906で取得した地図情報が有する地図図柄情報の中心地点の位置情報を取得する。
(ステップS1908)キーワード取得手段14173は、ステップS1907で取得した中心地点の位置情報に最も近い位置情報と対になる用語を、ステップS1906で読み込んだ地図情報が有する用語情報から、目印地点のキーワードとして取得する。上位関数にリターンする。
(ステップS1909)キーワード取得手段14173は、バッファ内の操作情報列がズームイン操作[i]後に、移動操作[m]が行われたことを示す操作情報列であるか否かを判断する。かかる条件に合致すればステップS1903に行き、合致しなければ上位関数にリターンする。
(ステップS1910)キーワード取得手段14173は、検索範囲情報が比較検索操作情報列に対する情報であるか否かを判断する。前記条件を満たせばステップS1911に行き、条件を満たさなければステップS1921に行く。
(ステップS1911)キーワード取得手段14173は、バッファ内の操作情報列が有する最後の操作情報がズームアウト操作[o]であるか否かを判断する。かかる条件に合致すればステップS1912に行き、合致しなければステップS1918に行く。
(ステップS1912)キーワード取得手段14173は、最後の操作情報が示すズームアウト操作[o]直後の地図情報を、バッファ内の情報から取得する。
(ステップS1913)キーワード取得手段14173は、当該ズームアウト操作[o]直前の地図情報を、バッファ内の情報から取得する。
(ステップS1914)キーワード取得手段14173は、ステップS1912で取得した地図情報が示す領域とステップS1913で取得した地図情報が示す領域との差分の領域を示す情報を取得する。
(ステップS1915)キーワード取得手段14173は、ステップS1914で取得した領域を示す情報により識別される領域内のキーワードを、地図情報格納部1410の用語情報から取得する。かかる領域内キーワード取得処理の詳細について、図20のフローチャートを用いて説明する。
(ステップS1916)キーワード取得手段14173は、ステップS1915で取得したキーワードが一つか否かを判断する。キーワードが一つであればステップS1917に行き、キーワードが一つでなければ上位関数にリターンする。
(ステップS1917)キーワード取得手段14173は、ステップS1915で取得した一つのキーワードと最も共起度が高いキーワードを、情報格納装置142から抽出する。通常、キーワード取得手段14173は、1以上の情報格納装置142が格納している複数のWebページから、ステップS1915で取得した一つのキーワードと最も共起度が高いキーワードを抽出する。ここで、あるキーワードと最も共起度が高いキーワードを複数のファイル(例えば、Webページ)から抽出する技術は、公知の技術であるので、詳細な説明を省略する。上位関数にリターンする。
(ステップS1918)キーワード取得手段14173は、最後の操作情報が示す移動操作[m]直後の地図情報を、バッファ内の情報から取得する。
(ステップS1919)キーワード取得手段14173は、最後の操作情報が示す移動操作[m]直前の地図情報を、バッファ内の情報から取得する。
(ステップS1920)キーワード取得手段14173は、ステップS1918で取得した地図情報が示す領域とステップS1919で取得した地図情報が示す領域から、キーワードが存在し得る領域を示す情報を取得する。移動操作[m]が比較検索のトリガになった場合のキーワードの領域についての説明は後述する。ステップS1915に行く。
(ステップS1921)キーワード取得手段14173は、検索範囲情報が経路検索操作情報列に対する情報であるか否かを判断する。前記条件を満たせばステップS1922に行き、条件を満たさなければ上位関数にリターンする。
(ステップS1922)キーワード取得手段14173は、ズームアウト操作[o]後のズームイン操作[i]の直後の画面情報を取得する。
(ステップS1923)キーワード取得手段14173は、ステップS1922で取得した画面情報が有する地図図柄情報の中心地点の位置情報を取得する。
(ステップS1924)キーワード取得手段14173は、ステップS1923で取得した中心地点の位置情報に最も近い位置情報と対になる用語を、ステップS1922で読み込んだ地図情報が有する用語情報からキーワードを取得する。
(ステップS1925)キーワード取得手段14173は、ズームアウト操作[o]後のズームイン操作[i]から、最も近い過去の絞込検索において、目印地点のキーワードをキーワードとして取得する。上位関数にリターンする。
なお、図19のフローチャートにおいて、ステップS1917の処理は、必須ではないことは言うまでもない。
次に、ステップS1915の領域内キーワード取得処理について、図20のフローチャートを用いて説明する。
(ステップS2001)キーワード取得手段14173は、カウンタiに1を代入する。
(ステップS2002)キーワード取得手段14173は、対応する地図情報が有する用語情報中に、i番目の用語が存在するか否かを判断する。i番目の用語が存在すればステップS2003に行き、i番目の用語が存在しなければ上位関数にリターンする。
(ステップS2003)キーワード取得手段14173は、カウンタjに1を代入する。
(ステップS2004)キーワード取得手段14173は、j番目の領域が存在するか否かを判断する。j番目の領域が存在すればステップS2005に行き、j番目の領域が存在しなければステップS2008に行く。なお、各領域は、通常、矩形の領域である。
(ステップS2005)キーワード取得手段14173は、i番目の用語がj番目の領域内に存在する用語であるか否かを判断する。なお、キーワード取得手段14173は、例えば、i番目の用語と対になる位置情報(例えば、(ai,bi))を読み出し、当該位置情報がj番目の領域((ax,bx),(ay,by))で表される領域((ax,bx)は矩形の左上の点、(ay,by)は矩形の右下の点)内の点か否かを判断する。つまり、キーワード取得手段14173は、「ax<=ai<=ay」かつ「bx<=bi<=by」を満たせば、i番目の用語がj番目の領域内に存在すると判断し、上記を満たさなければi番目の用語がj番目の領域外に存在する、と判断する。
(ステップS2006)キーワード取得手段14173は、i番目の用語がj番目の領域内に存在すればステップS2007に行き、i番目の用語がj番目の領域内に存在しなければステップS2009に行く。
(ステップS2007)キーワード取得手段14173は、i番目の用語をキーワードとして登録する。ここで、登録とは、所定のメモリ上に格納することである。ステップS2008に行く。
(ステップS2008)キーワード取得手段14173は、カウンタiを1、インクリメントする。ステップS2002に戻る。
(ステップS2009)キーワード取得手段14173は、カウンタjを1、インクリメントする。ステップS2004に戻る。
次に、ステップS1613の検索処理の例の詳細について、図21のフローチャートを用いて説明する。
(ステップS2101)検索部1418は、検索範囲情報が絞込検索操作情報列に対する情報であるか否か(絞込検索であるか否か)を判断する。前記条件を満たせばステップS2102に行き、条件を満たさなければステップS2108に行く。
(ステップS2102)検索部1418は、カウンタiに1を代入する。
(ステップS2103)検索部1418は、1以上の情報格納装置142を検索し、i番目の情報(例えば、Webページ)が存在するか否かを判断する。i番目の情報が存在すればステップS2104に行き、i番目の情報が存在しなければ上位関数にリターンする。
(ステップS2104)検索部1418は、メモリ上に存在する目的地点のキーワードと、目印地点のキーワードを取得し、i番目の情報が、目的地点のキーワードをタイトル内(例えば、<title>タグ内)に含み、目印地点のキーワードおよび第一キーワード取得部1416が取得したキーワードを内部(例えば、<body>タグ内)に含むか否かを判断する。なお、検索部1418は、第一キーワード取得部1416が取得したキーワードをどこかに含む、かつ、目的地点のキーワードをタイトル内(例えば、<title>タグ内)に含み、目印地点のキーワードを内部(例えば、<body>タグ内)に含むか否かを判断しても良い。
(ステップS2105)検索部1418は、ステップS2104における判断結果が、条件に合致するとの判断の場合はステップS2106に行き、合致しないとの判断の場合はステップS2107に行く。
(ステップS2106)検索部1418は、i番目の情報を出力する情報として登録する。
(ステップS2107)検索部1418は、カウンタiを1、インクリメントする。ステップS2103に戻る。
(ステップS2108)検索部1418は、検索範囲情報が比較検索操作情報列に対する情報であるか否かを判断する。前記条件を満たせばステップS2109に行き、条件を満たさなければステップS2117に行く。
(ステップS2109)検索部1418は、カウンタiに1を代入する。
(ステップS2110)検索部1418は、1以上の情報格納装置142を検索し、i番目の情報(例えば、Webページ)が存在するか否かを判断する。i番目の情報が存在すればステップS2111に行き、i番目の情報が存在しなければステップS2116に行く。
(ステップS2111)検索部1418は、メモリ上に存在する2つのキーワードを取得し、i番目の情報が、目的地点のキーワードまたは目印地点をタイトル内(例えば、<title>タグ内)に含み、他のキーワードを内部(例えば、<body>タグ内)に含むか否かを判断する。他のキーワードとは、第一キーワード取得部1416が取得したキーワードも含む。
(ステップS2112)検索部1418は、ステップS2110における判断結果が、条件に合致するとの判断の場合はステップS2113に行き、合致しないとの判断の場合はステップS2115に行く。
(ステップS2113)検索部1418は、i番目の情報のMBRを取得する。MBR(Minimum Bounding Rectangle)とは、i番目の情報(例えば、Webページ)から、用語情報が有する2以上の用語を検索し、当該検索した2以上の用語の2以上の位置情報から、i番目の情報が話題にしている領域を示す情報であり、例えば、検索した2以上の用語に対応する2以上の位置情報の最も離れた2つの位置情報で構成される矩形の領域である。かかる場合、MBRは、2点(例えば、左上の位置情報、右下の位置情報)で識別される矩形領域の情報である。なお、MBRについては、公知技術である。なお、検索部1418は、MBRを取得する場合に、2以上の用語のうち、位置情報を有しない用語については、通常、無視する。
(ステップS2114)検索部1418は、i番目の情報とMBR(例えば、2点の位置情報)を登録する。
(ステップS2115)検索部1418は、カウンタiを1、インクリメントする。ステップS2110に戻る。
(ステップS2116)検索部1418は、登録した(メモリ上に存在する)情報とMBRの対を読み出し、MBRが最小の情報を取得し、出力する情報として登録する。なお、MBRが2点の位置情報で特定される矩形領域である場合、当該矩形領域の面積の大きさを比較し、最小の面積のMBRと対になる情報(例えば、Webページ)を取得する技術は公知技術であるので、詳細な説明を省略する。
(ステップS2117)検索部1418は、検索範囲情報が経路検索操作情報列に対する情報であるか否かを判断する。前記条件を満たせばステップS2118に行き、条件を満たさなければ上位関数にリターンする。
(ステップS2118)検索部1418は、カウンタiに1を代入する。
(ステップS2119)検索部1418は、1以上の情報格納装置142を検索し、i番目の情報(例えば、Webページ)が存在するか否かを判断する。i番目の情報が存在すればステップS2120に行き、i番目の情報が存在しなければステップS2123に行く。
(ステップS2120)検索部1418は、i番目の情報のMBRを取得する。
(ステップS2121)検索部1418は、i番目の情報とMBR(例えば、2点の位置情報)を登録する。
(ステップS2122)検索部1418は、カウンタiを1、インクリメントする。ステップS2119に戻る。
(ステップS2123)検索部1418は、操作情報列のバッファにおける、ズームアウト操作[o]直後のズームイン操作[i]直後の画面情報を取得する。
(ステップS2124)検索部1418は、ステップS2123で取得した画面情報が有する地図図柄情報が示す地図の中心地点の位置情報を取得する。
(ステップS2125)検索部1418は、一つ前の経路検索における画面情報が有する地図図柄情報が示す地図の中心地点の位置情報を取得する。
(ステップS2126)検索部1418は、ステップS2124で取得した地点の位置情報、ステップS2125で取得した地点の位置情報で構成されるMBRと、最も近いMBRを有する情報を取得し、出力する情報として登録する。なお、この場合、検索部1418は、ステップS2121で登録したMBRと情報の対の集合を検索し、ステップS2124で取得した地点の位置情報、ステップS2125で取得した地点の位置情報で構成されるMBRと、最も近いMBRを有する情報を取得する。
なお、図21のフローチャートにおいて、検索処理の例の詳細を説明した。しかし、検索処理は、いわゆる公知のWebの検索エンジンに、キーワードを渡して、検索エンジンを実行する処理のみをしても良い。
また、検索部1418は、キーワード取得手段14173が取得したキーワードからSQL文を構成し、SQL文によりデータベースを検索する処理を行っても良い。なお、SQL文の構成にあたって、キーワードの組み合わせ方法(AND,ORの利用方法)は問わない。
以下、本実施の形態における地図情報処理装置141の具体的な動作について説明する。地図情報処理装置141を有する地図情報処理システムの概念図は図14である。本地図情報処理装置141は、ここでは、ユーザが地図を操作する、または自動車が移動することで、検索を意識することなく、地図の操作意図、または/および自動車の走行意図に合ったWeb情報を自動的に取得することが出来る。また、本具体例では、地図操作の意味のある操作列をチャンクと呼ぶこととする。なお、地図情報処理装置141は、例えば、ここでは、カーナビゲーションに組み込まれている、とする。また、地図情報処理装置141は、例えば、図22に示すような概観図である。図22において、自動車の運転席と助手席の間の中央部に第一の表示部221、助手席の前に第二の表示部222が存在する。そして、図示しないが、1以上の第三の表示部が後部座席のみから見える位置(例えば、運転席や助手席の裏側)に存在する、とする。第一の表示部221には、地図が表示されている。第二の表示部222には、ウェブページが表示されている。
また、地図情報格納部1410は、図23に示す地図図柄情報を保持している。地図図柄情報は、地図の縮尺を識別する情報(縮尺A、縮尺B、など)と対に格納されている。また、地図情報格納部1410は、図24に示す用語情報を保持している。つまり、地図情報格納部1410は、縮尺の違いごとに地図図柄情報と、縮尺の違いごとに用語情報を格納している。
また、検索範囲管理情報格納手段14171は、図25に示す原子操作チャンク管理表、図26に示す複合操作チャンク管理表を格納している。原子操作チャンクは、ユーザの意図抽出のための操作列の最小単位である。原子操作チャンク管理表は、「ID」「意図識別情報」「ユーザ操作」「記号」の属性を有する。「ID」は、レコードを識別する情報であり、表におけるレコード管理のために存在する。「意図識別情報」は、5種類の原子操作チャンクを識別する情報である。原子操作チャンクは、単点指定、複数点指定、選択指定、周辺指定、および広域指定の5種類ある。単点指定は、旅行先の宿泊施設を探すように、対象を一意に決定しズームインさせていく操作である。複数点指定は、宿泊施設の周りの土産物屋がどこにあるのかを探すように、特定の対象からズームアウトさせていく操作である。選択指定は、旅行先の観光地を順に選んでいくように、複数地点をセンタリングしていく操作である。周辺指定は、行きたい観光地同士の位置関係を調べるように、複数地点を一画面に表示できるようズームアウトさせていく操作である。広域指定は、自分の住む街と旅行先の距離はどのくらいかを調べるように、複数点を移動させていく操作である。「ユーザ操作」は、ユーザが地図閲覧操作をする場合の操作情報列を示す。「記号」は、原子操作チャンクを識別する記号である。
また、ここでの地図情報処理装置141において、原子操作チャンク同士が結合した複合操作チャンクを識別することにより、ユーザの意図を含んだ情報の検索を実現する。複合操作チャンク管理表は、かかる検索実現のための管理表である。複合操作チャンク管理表は、「ID」「意図識別情報」「原子操作チャンクの組み合わせ」「トリガ」「ユーザ操作」の属性を有する。「ID」は、レコードを識別する情報であり、表におけるレコード管理のために存在する。「意図識別情報」は、3種類の複合操作チャンクを識別する情報である。「原子操作チャンクの組み合わせ」は、原子操作チャンクの組み合わせ方法についての情報である。ここでの原子操作チャンクの結合方法は、3種類ある。「overlaps」は、繋がり部分の操作が等しい結合方法である。「meets」は、繋がり部分の操作が違う結合方法である。「after」は、操作の間に他の操作を含んでいても良いことを示す結合方法である。「トリガ」は、キーワードを見つけるトリガを示す。「a include_in B」は、チャンクBに含まれる操作aを意味する。「a just_after b」は、操作bの直後に行われる操作aを意味する。つまり、「a just_after b」は、操作bの直後に行われる操作aがトリガとなることを示す。また、「ユーザ操作」は、ユーザが地図閲覧操作をする場合の操作情報列を示す。ここで、検索範囲管理情報格納手段14171が格納している操作情報列は、例えば、図26の「ユーザ操作」であり、検索範囲情報は、図26の「意図識別情報」である。なお、地図情報処理装置141のキーワード取得手段14173は、例えば、「意図識別情報」の値に対応する関数を実行し、キーワードを取得する。
複合操作チャンクの検索には絞込検索、比較検索、および経路検索の3種類がある。絞込検索は、任意の地点を一箇所定め、そこを検索対象とする最も基本的な検索である。比較検索は、任意地点同士の関係を判定する検索であり、例えば、旅行先の宿泊施設と最寄り駅の位置関係はどうなっているのかなどを検索する場合などである。経路検索は、ユーザが経路を辿る検索であり、例えば、最寄り駅から宿泊施設までの道なりに何があり、どう行けばいいのかを検索する場合などである。
また、地図情報処理システム2を構成する1以上の情報格納装置142は、多数のWebページを格納している、とする。
かかる状況において、まず、ユーザは、地図情報処理装置141に対して、ユーザは、「京都」、「桜」というキーワードを入力し、「京都」、「桜」を含む第一情報出力指示を入力した、とする。
次に、第一情報出力部1412は、「京都」、「桜」をキーワードとして、第一情報(ここでは、ウェブページ)を取得し、出力した、とする。
そして、第一情報出力部1412は、キーワード「京都」、「桜」(第一のキーワードという)を、予め決められたバッファに格納した、とする。
以上の状況において、地図を閲覧する複数の操作、および自動車の走行により発生するイベントを含む地図閲覧操作列から、情報検索に用いる第二のキーワードを取得する。つまり、地図閲覧操作列は、ユーザの操作および自動車の走行により発生するイベントを組み合わせた操作列であることは好適である。
そして、地図情報処理装置141は、第一のキーワードと第二のキーワードを用いて、Webページを検索する。かかる具体的な動作例について、以下に説明する。
(具体例1)
具体例1において、絞込検索の場合の情報検索、出力について述べる。絞込検索において、ユーザはズームイン操作をし、検索地点を決定させるため、キーワードの取得のトリガは、例えば、ズームイン操作[i]である。また、絞込検索において、ズームイン操作後の移動操作[m]やセンタリング操作[c]が、例えば、キーワードの取得のトリガとなる。移動操作[m]やセンタリング操作[c]は、地図情報が有する地点へ自動車が走行した場合、または停止した場合は、その地点への移動操作[m]またはセンタリング操作[c]が発生したと判断されて、地図情報処理装置141は、移動操作[m]またはセンタリング操作[c]に対応する操作情報を取得する。
そして、まず、キーワードの取得に至るまでの処理である、地図閲覧操作列からユーザの操作意図(自動車の走行意図も含む)を抽出する処理について述べる。地図閲覧操作にはズーミング操作(ズームイン操作[i]、ズームアウト操作[o])と移動操作(移動操作[m]、センタリング操作[c])があり、ユーザが意図を持って地図操作を行う際には、ある程度決まった操作列を検出することが出来る。例えば、沖縄に旅行に行こうと思い首里城を地図で表示させるには、まず沖縄が画面中央に来るように地図画面を移動させ、それからズームイン操作や移動操作で首里城を表示していく。また、首里城の最寄り駅を地図画面で探すには首里城からズームアウト操作で一番近い駅を探し、探し当てた駅と首里城を一つの画面に表示させると考えられる。
まず、ユーザは、自動車のエンジンを起動すると、地図情報処理装置141も起動され、受付部1411は、地図出力指示を受け付け、地図出力部1413は、地図情報を地図情報格納部1410から読み出し、例えば、第一の表示部221に、図27に示すように出力する。また、図27は、京都府の地図である。また、図示しないが、ナビゲーションシステムには、「ズームイン」ボタン、「ズームアウト」ボタン、上下左右の矢印ボタンが存在する、とする。そして、「ズームイン」ボタンの押下により操作情報[i]が発生し、「ズームアウト」ボタンの押下により操作情報[o]が発生し、上下左右の矢印ボタンの押下により操作情報[m]が発生し、地図情報の任意の位置の押下により、当該押下された位置へのセンタリングの操作情報[c]が発生する、とする。
次に、自動車の走行中に、ユーザ(助手席の者)は、「ズームイン」ボタンの押下、「センタリング」操作、「ズームイン」ボタンの押下、「ズームイン」ボタンの押下と、次々に地図の操作を行った、とする。
そして、ユーザが、かかる地図操作を行った場合に、操作情報列取得部1415は、受け付けた地図閲覧操作に対応する操作情報を取得し、バッファに一時格納する。また、地図出力変更部1414は、地図閲覧操作に応じて地図の出力を変更する。そして、地図出力変更部1414は、変更後の地図情報(例えば、出力する地図の縮尺を識別する情報や、出力地図の中心地点の位置情報)を取得し、バッファに格納する。すると、図28に示すようなバッファを得る。バッファには、「操作情報」「地図情報」「中心位置」「検索」「キーワード」が対応付けて、格納される。「検索」は、上記のユーザの意図であり、「絞込検索」「比較検索」「経路検索」のいずれかが入り得る。「キーワード」は、キーワード取得手段14173が取得したキーワードが入り得る。
次に、第二キーワード取得部1417は、受付部1411がユーザから地図操作を受け付ける毎にまたは、自動車が特定の地点を通過したり、特定の地点で停止したりする毎に、キーワードの取得を試みるが、操作情報列がキーワード取得のトリガに合致せず、これまで、キーワードを取得できない。
そして、ユーザは、さらにセンタリング操作[c]を行ったとする。次に、地図出力変更部1414は、この地図閲覧操作に応じて地図の出力を変更する。そして、地図出力変更部1414は、変更後の地図情報(例えば、出力する地図の縮尺を識別する情報や、出力地図の中心地点の位置情報)を取得し、バッファに格納する。次に、操作情報列取得部1415は、[iciic]という操作情報列を得る。
次に、キーワード取得手段14173は、[iciic]という操作情報列から、図26の表を検索し、「絞込検索」に合致すると判断する。つまり、ここで、操作情報列がキーワード取得のトリガに合致した、こととなる。そして、キーワード取得手段14173は、最後の[c]に対応する縮尺ID「縮尺D」、中心位置の情報(XD2,YD2)を取得する。
次に、キーワード取得手段14173は、中心位置の情報(XD2,YD2)を取得する。そして、キーワード取得手段14173は、縮尺ID「縮尺D」に対応する用語情報を検索し、位置情報(XD2,YD2)に最も近い用語「北野天満宮」を取得した、とする。
次に、キーワード取得手段14173は、バッファ内の操作情報列から、以前の操作情報であり、最近のセンタリング操作[c]の際の縮尺ID「縮尺B」および中心位置(XB2,YB2)を取得する。
次に、キーワード取得手段14173は、「縮尺B」に対応する用語情報を検索し、位置情報(XB2,YB2)に最も近い用語「上京区」を取得する。
以上の処理により、キーワード取得手段14173は、第二のキーワード「北野天満宮,上京区」を取得できた。なお、第二のキーワードのうち、キーワード「北野天満宮」は、目的地点のキーワードであり、「上京区」は目印地点のキーワードである。なお、キーワード取得手段14173は、バッファ内に、検索「絞込検索」、キーワード「北野天満宮,上京区」を書き込む。かかるバッファ内のデータを図29に示す。また、図29において、キーワード「(1)北野天満宮」の(1)は目的地点のキーワード、キーワード「(2)上京区」の(2)は目印地点のキーワードであることを示す。また、図29において、キーワード「(3)京都、桜」は、第一のキーワードであることを示す。
次に、第一のキーワード「京都,桜」、および第二のキーワード「北野天満宮,上京区」を用いて、Webページを検索する処理について述べる。検索部1418は、検索範囲情報が絞込検索操作情報列を有する(絞込検索である)と判断し、Webページのタイトル内(<title>タグ内)に「北野天満宮」を含み、Webページの内部(<body>タグ内)に「京都」「桜」および「上京区」を含むページである、「北野天満宮」のホームページを取得する。しかし、現在、自動車が走行中である。したがって、第二情報出力部1419は、自動車が走行中である信号を受け取り、運転者が見ることができる第二の表示部222には、「北野天満宮」のホームページを出力しない。一方、後部座席から見える1以上の第三の表示部には、「北野天満宮」のホームページを出力する。
そして、自動車が停止すると、第二情報出力部1419は、その停止を検知し(停止信号を自動車から取得することも含む)、「北野天満宮」のホームページを、第二の表示部222にも出力する(図30参照)。
以上により、ユーザが入力したキーワードや、ユーザ操作により出力された情報から得られた情報を用いて、より適切な情報をユーザに提示できる。そして、さらに、自動車の走行により、地図操作されたと同様の効果を奏し、ユーザがドライブ中にも、適切な情報が得られるともに、安全性も確保できる。
(具体例2)
具体例2において、比較検索の場合の情報検索、出力について述べる。比較検索において、ユーザはズームアウト[o]、または移動操作[m]をし、複数の任意地点を画面に提示すると考えられるため、キーワードの取得のトリガは、通常、ズームアウト[o]、または移動操作[m]となる。
図29のバッファの状態から、ユーザは、移動操作[m]、ズームアウト操作[o]を続けて行った、とする。
次に、操作情報列取得部1415は、受け付けた地図閲覧操作に対応する操作情報を取得し、バッファに一時格納する。また、地図出力変更部1414は、地図閲覧操作に応じて地図の出力を変更する。そして、地図出力変更部1414は、変更後の地図情報(例えば、出力する地図の縮尺を識別する情報や、出力地図の中心地点の位置情報)を取得し、バッファに格納する。
次に、キーワード取得手段14173は、[iciicmo]という操作情報列から、図26の表を検索し、「比較検索」に合致すると判断する。そして、最後の[o]に対応する縮尺ID「縮尺C」、中心位置の情報(XC2,YC2)を取得する。
次に、キーワード取得手段14173は、ズームアウト操作[o]前の縮尺ID「縮尺D」、中心位置の情報(XD3,YD3)を取得する。そして、キーワード取得手段14173は、地図情報(「縮尺C」、(XC2,YC2))が示す領域[Olast]と地図情報(「縮尺D」、(XD3,YD3))が示す領域[Olast−1]との差分の領域[R(o)]を示す情報を取得する。かかる概念図を図31に示す。図31において、ズームアウト後の領域から、ズームアウト前の領域の差分の領域である網掛け部分が、キーワードが存在し得る領域[R(o)]である。つまり、「[R(o)]=[Olast]−[Olast−1]」である。
次に、キーワード取得手段14173は、地図情報格納部1410の用語情報が有する位置情報で特定される地点の中で、領域[R(o)]内に含まれる地点があるか否かを判断する。そして、キーワード取得手段14173は、その地点の位置情報に対応する用語をキーワードとして取得する。ここで、キーワード取得手段14173は、キーワード「金閣寺」を取得した、とする。
次に、キーワード取得手段14173は、先に取得した目的地点のキーワード「北野天満宮」を取得する。
以上のように、キーワード取得手段14173は、比較検索において、キーワード「金閣寺,北野天満宮」を取得できた。
次に、検索部1418は、第一のキーワード「京都」「桜」および第二のキーワード「金閣寺」「北野天満宮」を含み、MBRが最小のWebページを、情報格納装置142から検索する。そして、第二情報出力部1419は、検索部1418が検索したWebページを出力する。ここで、検索部1418は、位置情報を有さない第一のキーワード「桜」について、通常の検索キーワードとして用いて、「桜」を有するWebページから、MBRが最小のWebページを取得しても良い。検索部1418は、如何にキーワードを用いるかは問わない。
なお、比較検索において、最後の操作情報が移動操作[m]である場合、最後の移動操作後の地図情報を(mlast)とし、移動前の地図情報を(mlast−1)とすると、少なくとも一つのキーワードが含まれている地図範囲(R(m))は、「R(m)=mlast−(mlast ∩ mlast−1)となる。また、比較対象物は出来るだけ大きく表したいというユーザ心理から、比較対象となるキーワードは「R(m0)=R(m)∪R(m')」の領域に存在する、と考えられる。ただし、ここで、R(m')とは、R(m)を地図上の中心から反転させた範囲を示している。この地図範囲を図で表すと、図32の{斜線部分A∪斜線部分B}となる。これらの地図範囲が、キーワードが存在する範囲である。図32において、出力される地図が、左側の大きな矩形から右側の大きな矩形に移動したことを示す。R(m)の領域は図32の「A」であり、R(m')の領域は図32の「B」である。第二のキーワードが存在し得る領域(R(m0))は、「A」または「B」の領域となる。
(具体例3)
具体例3において、経路検索の場合の情報検索、出力について述べる。経路検索において、ユーザはズームアウト操作[o]で大体の道順を確認しながらズームイン操作[i]をし、自ら辿る経路をセンタリング[c]させながら移動させていく、と考えられるため、確認操作(ズームアウト操作[o]後のズームイン操作[i]が確認操作となる)の後のセンタリング操作[c]が、通常、キーワードの取得のトリガとなる。
図33のバッファの状態から、ユーザは、センタリング操作[c]、ズームアウト操作[o]、ズームイン操作[i]、センタリング操作[c]を続けて行った、とする。
次に、操作情報列取得部1415は、受け付けた地図閲覧操作に対応する操作情報を取得し、バッファに一時格納する。また、地図出力変更部1414は、地図閲覧操作に応じて地図の出力を変更する。そして、地図出力変更部1414は、変更後の地図情報(例えば、出力する地図の縮尺を識別する情報や、出力地図の中心地点の位置情報)を取得し、バッファに格納する。
次に、キーワード取得手段14173は、[iciicmocoic]という操作情報列から、図26の表を検索し、「経路検索」に合致することを取得する。そして、最後の[c]に対応する縮尺ID「縮尺C」、中心位置の情報(XC5,YC5)を取得する。
次に、キーワード取得手段14173は、地図情報格納部1410の、縮尺ID「縮尺C」に対応する用語情報が有する位置情報で特定される地点の中で、中心位置の情報(XC5,YC5)も最も近い位置情報と対になる用語「北野白梅町」をキーワードとして取得する。次に、キーワード取得手段14173は、一つ前の絞込検索の目的地点のキーワード「北野天満宮」も取得する。以上の処理より、図34のバッファの内容を得る。
そして、以上により、キーワード取得手段14173は、経路索において、第二のキーワード「北野白梅町,北野天満宮」が取得できた。
次に、検索部1418は、情報格納装置142の各情報を取得し、取得した各情報のMBRを算出する。
次に、検索部1418は、第一のキーワード「京都,桜」、第二のキーワード「北野白梅町,北野天満宮」からキーワードのMBRを算出し、当該キーワードのMBRと最も近いMBRを有する情報を出力する情報として決定する。ここで、検索部1418は、位置情報を有さない第一のキーワード「桜」について、通常の検索キーワードとして用いて、「桜」を有するWebページから、MBRが最小のWebページを取得しても良い。検索部1418は、如何にキーワードを用いるかは問わない。
そして、第二情報出力部1419は、検索部1418が取得した情報(Webページ)を出力する。
以上、本実施の形態によれば、ユーザの地図に対する操作列、自動車の走行により通過した地点、停止した地点の情報等を自動的に検出し、適切な付加情報を提供することできる。
また、本実施の形態によれば、操作情報列として、原子操作チャンク、複合操作チャンクを、具体的に規定し、特定の複合操作チャンクに合致した場合に、キーワードを取得することにより、タイミング良く、効果的にキーワードを取得でき、ユーザ所望の情報を得ることができた。
さらに、本実施の形態によれば、地図情報処理装置を具備するナビゲーションシステムを構成できる。かかるナビゲーションシステムによれば、例えば、ドライブ中に、自動的に所望の情報(Webページなど)を得ることができ、ドライブを強力に支援できる。
また、本実施の形態において、操作情報列の具体例として、単点指定操作情報列、複数点指定操作情報列、選択指定操作情報列、周辺指定操作情報列、広域指定操作情報列、または、5種類の操作情報列の組み合わせ(絞込検索操作情報列、比較検索操作情報列、経路検索操作情報列)を示した。そして、本実施の形態において、上記各操作情報列に対するキーワード取得のトリガの例を明示した。しかし、キーワードを取得する場合の操作情報列や、キーワード取得のトリガは上述に限らない。
また、本実施の形態において、地図情報処理装置は、地図閲覧操作列を処理して、情報を検索するだけの装置であり、地図の表示や表示変更は他の装置が行っても良い。かかる場合の地図情報処理装置は、地図についての情報である地図情報を格納し得る地図情報格納部と、第一の情報を出力する指示である第一情報出力指示、および前記地図を閲覧する複数の操作である地図閲覧操作列を受け付ける受付部と、前記第一情報出力指示に応じて、第一の情報を出力する第一情報出力部と、前記地図閲覧操作列に対応する複数の操作の情報である操作情報列を取得する操作情報列取得部と、前記第一情報出力指示が有するキーワード、または前記第一の情報に対応するキーワードを取得する第一キーワード取得部と、前記操作情報列を用いて、前記地図情報から1以上のキーワードを取得する第二キーワード取得部と、前記第一キーワード取得部および前記第二キーワード取得部が取得した2以上のキーワードを用いて、情報を検索する検索部と、前記検索部が検索した情報を出力する第二情報出力部を具備する地図情報処理装置、である。また、この地図情報処理装置において、地図情報格納部の地図は、外部装置に存在し、地図情報処理装置が外部装置から地図情報を取得する処理を行っても良い。
さらに、本実施の形態における地図情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、第一の情報を出力する指示である第一情報出力指示、および前記地図を閲覧する複数の操作である地図閲覧操作列を受け付ける受付部と、前記第一情報出力指示に応じて、第一の情報を出力する第一情報出力部と、前記地図閲覧操作列に対応する複数の操作の情報である操作情報列を取得する操作情報列取得部と、前記第一情報出力指示が有するキーワード、または前記第一の情報に対応するキーワードを取得する第一キーワード取得部と、前記操作情報列を用いて、記憶媒体に記憶されている地図情報から1以上のキーワードを取得する第二キーワード取得部と、前記第一キーワード取得部および前記第二キーワード取得部が取得した2以上のキーワードを用いて、情報を検索する検索部と、前記検索部が検索した情報を出力する第二情報出力部として機能させるためのプログラム、である。
また、上記プログラムにおいて、前記受付部は、前記地図を出力する地図出力指示をも受け付け、前記受付部が地図出力指示を受け付けた場合に、前記地図情報を読み出し、地図を出力する地図出力部と、前記受付部が地図閲覧操作を受け付け場合に、前記地図閲覧操作に応じて地図の出力を変更する地図出力変更部として、コンピュータをさらに機能させるためのプログラムであることは好適である。
また、図35は、本明細書で述べたプログラムを実行して、上述した実施の形態の地図情報処理装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図35は、このコンピュータシステム340の概観図であり、図36は、コンピュータシステム340のブロック図である。
図35において、コンピュータシステム340は、FDドライブ、CD−ROMドライブを含むコンピュータ341と、キーボード342と、マウス343と、モニタ344とを含む。
図36において、コンピュータ341は、FDドライブ3411、CD−ROMドライブ3412に加えて、MPU3413と、CD−ROMドライブ3412及びFDドライブ3411に接続されたバス3414と、ブートアッププログラム等のプログラムを記憶するためのROM3415とに接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3416と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3417とを含む。ここでは、図示しないが、コンピュータ341は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム340に、上述した実施の形態の地図情報処理装置等の機能を実行させるプログラムは、CD−ROM3501、またはFD3502に記憶されて、CD−ROMドライブ3412またはFDドライブ3411に挿入され、さらにハードディスク3417に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ341に送信され、ハードディスク3417に記憶されても良い。プログラムは実行の際にRAM3416にロードされる。プログラムは、CD−ROM3501、FD3502またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ341に、上述した実施の形態の地図情報処理装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム340がどのように動作するかは周知であり、詳細な説明は省略する。
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(端末情報送信部、端末情報受信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。