Notice: Undefined variable: fterm_desc_sub in /mnt/www/biblio_conv.php on line 353
地図データ表示装置および地図データ表示方法
説明

地図データ表示装置および地図データ表示方法

【課題】撮影位置の密集度に応じて地図データの詳細度を制御することができるようにする。
【解決手段】撮影画像の撮影位置情報を取得する撮影位置情報取得手段と、前記撮影位置情報取得手段によって取得した撮影位置情報に基づいて密集度を算出する密集度算出手段と、前記密集度算出手段によって算出した密集度に基づいて、地図の詳細度を決定する詳細度レベル決定手段と、所定のタイミングで、前記詳細度レベル決定手段によって決定した詳細度の地図データを外部から取得する地図データ取得手段とを設け、低リソース機器でも画像データの撮影場所の詳細な地図データを高速に閲覧できるようにする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はデータベースエンジンを用いた地図データ表示装置および地図データ表示方法に関する。
【背景技術】
【0002】
小型機器におけるメモリデバイスとして、フラッシュメモリが一般的に利用されている。近年、このフラッシュメモリの容量の増加が続いており、カメラ等の小型機器においても大量のデータを蓄積することが可能である。さらに、フラッシュメモリの低価格化も進んでおり、内蔵メモリを備えるカメラが増加している。
【0003】
また、GPS(Global Positioning System)機能を搭載したカメラも増加しており、撮影場所の緯度・経度が分かる地理情報を画像データに付与可能になっている。近年はさらに、画像データの撮影位置の地理情報に基づいて、画像を検索・閲覧可能なカメラも登場している。これらのカメラの多くは、撮影画像と地図データを並べて表示し、各画像の撮影位置を地図上に対応付けて表示する機能を備えている。
【0004】
一般的に、地図データには詳細度のレベルがあり、概略情報のみを保持したデータと、詳細情報を保持したデータが階層構造を成している。概略情報のみを保持したデータは、詳細情報を保持したデータに比べ、一つのデータで広い地域を表現する。機器上で地図データを表示する場合には、最大限詳細な地図を表示できることが望ましい。
【0005】
しかし、カメラ等の機器において、全地域の詳細な地図データを機器内に保持しておくことは、リソース制約上困難である。このため、詳細な地図データは必要な区域のもののみを機器内に保持することになるが、詳細地図を必要とする区域はユーザごとに異なるという課題がある。
【0006】
近年は、カメラを含む多くの機器においてはネットワークへの接続が可能となっており、低リソース機器で地図データを表示する際には、外部の地図サーバから必要に応じて地図データを取得することが想定できる。しかし、地図データ閲覧時にネットワーク経由でデータを取得する方式では、ネットワーク接続が不可能な場所で地図データを表示することができない。
【0007】
また、ネットワーク経由で地図データを取得する処理には長い時間がかかるため、閲覧時に取得処理を行うと、地図データを表示するまでに多くの時間がかかってしまう。このため、地図データ表示機能を備えた低リソース機器においては、地図閲覧の可能性の高い地域の地図データを、必要に応じた詳細度で閲覧前に外部サーバから取得しておくことが望ましい。
【0008】
小型機器における地図データの取得方法および詳細度制御の方式として、特許文献1および特許文献2が開示されている。特許文献1に開示されている画像再生装置では、撮影画像をグループ化し、グループ化した写真の存在領域の大きさに応じた詳細度の地図データを外部サーバから取得する方式が開示されている。特許文献1の方式では、存在領域が広範囲におよぶ場合には、詳細度の低いデータを取得し、存在領域が狭い範囲の場合には詳細度の高いデータを取得する。
【0009】
また、特許文献2に開示されているプリント装置では、あらかじめグループ化された複数の撮影画像の撮影位置の差に基づいて、グループを包含する領域の地図の詳細度を選択する方式が開示されている。特許文献2の方式では、撮影画像の撮影位置の差が大きい場合には、詳細度の低いデータを取得し、撮影画像の撮影位置の差が小さい場合には詳細度の高いデータを取得する。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特開2006−148514号公報
【特許文献2】特開2006−33274号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
これらの先行技術では、グループ化された画像データを包含する領域の地図データの詳細度を制御することができる。しかし、これらの方式では、グループ内の領域の地図データは、すべて同一の詳細度となってしまう。このため、グループ内の画像データが広範囲に分布しており、その中の一部の画像データの撮影位置が密集している場合には、撮影位置が密集している地域に対しても詳細度の低い地図しか取得できないという問題点があった。
本発明は前述の問題点に鑑みてなされたものであり、撮影位置の密集度に応じて地図データの詳細度を制御できるようにすることを目的とする。
【課題を解決するための手段】
【0012】
本発明の地図データ表示装置は、撮影画像の撮影位置情報を取得する撮影位置情報取得手段と、前記撮影位置情報取得手段によって取得した撮影位置情報に基づいて密集度を算出する密集度算出手段と、前記密集度算出手段によって算出した密集度に基づいて、地図の詳細度を決定する詳細度レベル決定手段と、所定のタイミングで、前記詳細度レベル決定手段によって決定した詳細度の地図データを外部から取得する地図データ取得手段とを備えることを特徴とする。
【発明の効果】
【0013】
本発明によれば、撮影位置の密集度に応じて地図データの詳細度を制御することが可能となり、カメラ等の低リソース機器においても詳細な地図データを高速に閲覧することが可能となる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施形態の地図データ表示装置の構成例を示すブロック図である。
【図2】本発明の実施形態のデータ格納方式を示した図である。
【図3】本発明の実施形態を構成するユーザインタフェースの例を示す図である。
【図4】画像管理テーブル・ID管理テーブルの例を示す図である。
【図5】本発明の実施形態で用いる地図データを説明する図である。
【図6】本発明の実施形態で用いる詳細度制御メッシュを説明する図である。
【図7】第1の実施形態における地図管理テーブルの例を示す図である。
【図8】本発明の実施形態の処理の流れを示すフローチャートである。
【図9】撮影位置取得処理の流れを示すフローチャートである。
【図10】詳細度レベル決定処理の流れを示すフローチャートである。
【図11】地図データ取得処理の流れを示すフローチャートである。
【図12】第2の実施形態における地図管理テーブルの例を示す図である。
【図13】第2の実施形態の撮影位置取得処理の流れを示すフローチャートである。
【図14】第2の実施形態の詳細度レベル決定処理を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
(第1の実施形態)
図1は、本実施形態を適用する地図データ表示装置の構成例を示すブロック図である。CPU101は、ROM102に格納されている制御プログラムを実行することにより地図データ表示装置の全体の制御を行う。ROM102は、CPU101が実行するプログラムを格納する。CPU101がプログラムを実行することにより、当該装置は後述するフローチャートに示す各処理を実行するための各種手段として機能する。RAM103は、各構成要素からの各種データを一時記憶する。また、ROM102に格納されているプログラムを展開し、CPU101によって実行するために用いられる。
【0016】
内部記憶装置106および外部記憶装置107は、本実施形態の地図データ表示装置の処理対象となるデータを格納する装置である。内部記憶装置106は装置内に備え付けであり、外部記憶装置107は装置への着脱が可能である。これらのデータを格納する記憶媒体としては,フラッシュメモリ、HDDなどを用いることができる。
【0017】
撮像部108は、光学装置および撮像素子等によって構成され、CPU101からの指示に応じて、被写体の撮像を行う。撮像部108によって得られた撮像結果は、画像データとして外部記憶装置107に格納する。
【0018】
GPS受信機104は、GPS衛星からの信号を受信し、装置の現在位置を測位する。撮像部108が撮像を行う際には、GPS受信機104の機能により、撮影位置情報を画像データと対応付けて記憶することができる。
通信部105は、ネットワークを介して外部地図サーバ111とデータの送受信を行う。ネットワークには、インターネットあるいはイントラネット等を用いることができる。
【0019】
入力部109は、操作ボタン、タッチパネル等で構成され、ユーザからの指示を受け付ける。出力部110は、液晶パネル等で構成され、本実施形態において処理対象となるデータを表示する。
なお、本実施形態では後述するフローチャートの各ステップに対応する処理を、CPU101を用いてソフトウェアで実現するが、その処理の一部又は全部を電子回路などのハードウェアで実現するようにしてもよい。
【0020】
図2は、本実施形態におけるデータ格納方式を示した図である。地図データ表示装置201は、本実施形態を適用する装置全体を示しており、内部記憶装置106および外部記憶装置107を備えている。内部記憶装置106は、地図データ表示装置201での表示に用いる地図データを格納した地図データベース202を保持している。地図データベース202が格納する地図データには、詳細度の低い概略データ203と、詳細度の高い詳細データ204が存在する。
【0021】
概略データ203は、全区域のデータを格納しているのに対し、詳細データ204は特定区域のデータのみを外部装置から取得して格納する。また、内部記憶装置106内には、詳細データ204の取得を制御するための地図管理テーブル205、取得する地図データの詳細度を制御するための詳細度制御メッシュ206が存在する。
【0022】
外部記憶装置107は、画像データベース210を保持しており、撮影画像データ207を格納する。また、撮影画像データ207のメタデータを管理・検索するための画像管理テーブル208および後述する撮影位置情報取得処理で利用するID管理テーブル209を格納する。
【0023】
外部地図サーバ111は、地図データを格納した地図データベース211を備えており、地図データ表示装置201とネットワークを介して通信することが可能である。地図データベース211が格納する地図データには、地図データ表示装置201のものと同様に詳細度の低い概略データ212と、詳細度の高い詳細データ213が存在する。
【0024】
図3(A)は、入力部109および出力部110を構成するユーザインタフェースの例を示す図である。図3(A)において、十字キー303および回転ダイヤル304は入力部109を構成し、地図データ表示領域301および撮影画像データ表示領域302は出力部110を構成する。地図データ表示領域301は、地図データベース202内に格納している地図データを表示する領域である。
【0025】
撮影画像データ表示領域302は、画像データベース210内に格納されている撮影画像データ207を表示する領域である。地図データ表示領域301には、撮影画像データ表示領域302内に表示されている撮影画像データ207の撮影位置に対応する地図データが表示される。また、地図データ内には、撮影位置に対応するアイコン305が合成表示される。ユーザが、十字キー303および回転ダイヤル304を操作することにより、表示されている地図の詳細度の変更および表示領域の移動が可能である。
【0026】
図3(B)は、十字キー303を操作して、図3(A)の地図データ表示領域301に表示する地図データの詳細度を高くした状態を示している図であり、図3(A)の中央区域306が拡大され、地形のより細部を記録した地図データが表示されている。図3(A)では、中央区域306に撮影位置を示すアイコン305が密集していたのに対し、図3(B)では、各アイコン305の存在位置の差および付近のより詳細な地形を確認することができる。
【0027】
図3(C)は、地図データ表示領域301における表示状態の変化を示す図である。領域1(307)は、周囲の領域に比べアイコン305が多く存在しており、多数の撮影画像が存在する区域であることを示している。したがって、領域1(307)が示す区域は、アイコン305の存在位置を認識できるよう、ユーザが拡大表示を指示することが想定でき、詳細データが必要となる可能性が高い。また、領域1(307)内の部分領域2(308)は、領域1(307)の中でも特に撮影が多い区域である。このため、部分領域2(308)は、領域1(307)の中でも特に高い拡大率をユーザが指定することが想定でき、領域1(307)より詳細度の高い地図データが必要となる可能性が高い。
【0028】
図4(A)は、画像管理テーブル208の構成例を示した図である。画像管理テーブル208は、撮影画像データ207を一意に特定する画像ID401、および撮影時に付与されるメタデータとして撮影時刻402、緯度403、経度404を格納している。
【0029】
図4(B)は、ID管理テーブル209の構成を示した図である。ID管理テーブル209は、新規画像開始ID405および最新画像ID406を格納している。新規画像開始ID405は、図9で示すフローを適用するべきデータの中で、最も撮影時刻402が古いデータの画像ID401を格納する。最新画像ID406は、画像管理テーブル208内に格納されている撮影画像データ内で、最も撮影時刻402が新しいデータの画像ID401をコピーして格納している。
【0030】
図5(A)を参照して地図データベース202内のデータについて説明する。
地図データは、所定の詳細度ごとに作成された複数のデータ501〜503で構成される。図5の例では、地図データ501が最も詳細度の低いデータであり、地図データ503が最も詳細度の高いデータである。詳細度の低い地図データは、地図の概略情報のみを含んでおり、詳細度レベルが高くなるに従って地形の細部を記録したデータになる。
【0031】
図5(B)を参照して、地図データ表示装置内における地図データの格納方法について説明する。
地図データ表示装置では、各地図画像データ505を、それぞれ一つの詳細度レベル504に対応づけて記憶する。これらの地図データの内、詳細度が一定レベル未満のデータを概略データ203として扱い、詳細度が一定レベル以上のデータを詳細データ204として扱う。この区切りに用いる詳細度レベルは、装置側が設定してもよいし、ユーザが自由に設定できるようにしてもよい。区切りに用いる詳細度レベルをユーザが設定可能にする場合、ユーザの使い方に応じた詳細度レベルの地図データを機器内に保持することが可能である。例えば、ナビゲーション目的で詳細地図データを頻繁に参照するユーザは、区切りの詳細度レベルを高く設定することができる。
【0032】
図6(A)は、詳細度制御メッシュ206の概念図である。詳細度制御メッシュは、地図データを取得する時の詳細度制御に利用するものであり、詳細データの詳細度レベルごとに異なる細かさのメッシュが存在する。領域601は詳細度制御メッシュ206に対応する地図データの全域である。セル602は、メッシュで区切られた一区間を示す単位であり、詳細度レベルの高いメッシュでは1つのセルが示す領域は小さくなる。各セル602は、セルを一意に特定する不図示のIDで管理する。
【0033】
図6(B)は、詳細度制御メッシュ206の構成を説明する図である。各セル602は、他の詳細度レベルのメッシュ内のセルと階層構造を形成している。本実施形態では、セル602が形成する階層構造を四分木構造でインデキシングしており、ルートノード603から各セル602を辿ることができる。同一の詳細度レベルに属するセル602は、同一の階層のノードとして配置する。なお、セル602を管理するインデックスには、四分木構造ではなくハッシュ形式を用いてもよい。ハッシュを利用した場合には、各セル602へアクセスする際に、木構造を探索する必要がなく、アクセス時間を短縮することができる。
【0034】
次に、図7を参照して、地図管理テーブル205について説明する。
地図管理テーブル205では、すべてのセル602内の、画像データおよび地図データの取得状態を管理する。地図管理テーブル205は、セル602を一意に特定するセルID701、セル内の未処理データの有無を管理する新規データフラグ702、セル内の画像データ件数703、セルに対応する地図取得状態704を保持する。
【0035】
新規データフラグ702には、新規データが有ることを示す「有」と、新規データが無いことを示す「無」の2状態が存在する。地図取得状態704には、「取得済み」、「取得待ち」、「未取得」の3状態が存在する。「取得済み」は、対象セルの地図データを既に取得済みであることを示す。「取得待ち」は、対象セルの地図データを取得する必要があり、取得処理待ちであることを示す。「未取得」は、対象セルの地図データを取得しておらず、取得処理も不要であることを示す。
【0036】
図8は、本実施形態の全体処理の手順を説明するフローチャートである。
S801は、地図データ表示装置を省電力モードへ移行する指示を検知する処理である。指示を検知して省電力モード移行時には、S802へ移行する。
S802では、画像データベース210内の画像管理テーブル208から撮影位置情報取得を行う。
S803では、S802で取得した位置情報に基づき、取得する地図の詳細度レベルを決定する。最後に、S804では外部サーバから地図データ取得処理を行う。S804の処理を終えた後は、S801に戻り、省電力モード移行指示の検知待ち状態となる。
【0037】
このように、省電力モード移行が指示された場合にのみS802以降の処理を実施することで、地図データの取得処理が撮影へ影響を及ぼすことを避けることができる効果が得られる。なお、S802への移行タイミングを判断する処理として省電力モード移行を検知する処理の代わりに、地図データ表示装置の充電中であることを検知する処理、地図データ表示装置のネットワークへの接続を検知する処理を用いることも可能である。充電中であることを検知する処理を判断基準として用いる場合には、地図取得処理が撮影へ影響を及ぼすことを避ける効果に加えて、地図取得処理によるバッテリー残量低下を防止する効果を得ることができる。
【0038】
また、地図データ表示装置のネットワークへの接続を検知する処理を判断基準として用いる場合には、ネットワークへ接続している場合にのみ一連の処理を実行することができ、地図取得処理が失敗するのを防ぐ効果がある。また、地図取得処理によるバッテリー残量低下を防止する効果がある。さらに、地図データ表示装置のバッテリーの残量を検知する手段を設け、バッテリー残量に応じて以降の処理の実行可否を判断するよう構成してもよい。この場合には、地図取得処理によるバッテリー残量不足を防止する効果を得ることができる。
【0039】
次に、図9を参照して、S802の撮影位置取得処理の詳細を説明する。
S901では、新規画像データがあるか否かの判定を行う。この判定においては、未処理の新規画像データが存在するか否かを、ID管理テーブル209を参照して判定する。未処理の新規画像データとは、最後に本フローの処理を実施した時点以降に撮影された画像データを指す。最新画像ID406が新規画像開始ID405より大きい値である場合には、未処理の新規画像データが存在すると判定する。新規画像データが存在する場合には、S902へ移行する。新規画像データが存在しない場合には、本フローを終了する。
【0040】
S902では、新規画像データの撮影位置情報を1件取得する。ここでは、画像管理テーブル208を参照して、新規画像開始ID405以降の画像ID401をもつデータを検索し、緯度403および経度404を取得する。
S903では、S902で取得した撮影位置情報に対応するセルID701を算出する。セルIDの算出は、図6に示すインデックスを用いて、各詳細度レベルに対して検索を実施することで実現する。
【0041】
S904では、地図管理テーブル205の中から、S903で算出したセルID701に対応するデータを更新する。具体的には、セルID701に対応するデータの新規データフラグ702を「有」に設定し、画像データ件数703の値を1つインクリメントする。
【0042】
S905では、次の新規データがあるか否かを判定する。次のデータがある場合には、S902から処理を繰り返す。無い場合には、S906でID管理テーブル209の新規画像開始ID405の値を更新し、本フローを終了する。ここでは、現在の最新画像ID406に1を足した値を新たな新規画像開始ID405として記録する。
【0043】
次に、図10を参照して、S803における詳細度レベル決定処理の詳細を説明する。本ステップでは、詳細度制御メッシュ206を用いて、撮影位置の密集度算出処理を行い、各区域の地図の詳細度レベルを決定する。
まず、S1001では、以降のステップで用いる詳細度制御メッシュの詳細度レベルを初期値に設定する。好適には、初期値は詳細データの開始レベルとすることができる。
【0044】
S1002では、現在設定されている詳細度レベルの詳細度制御メッシュ内で、本フローを未実施のセル602があるか否かを判定する。未実施のセル602がある場合には、S1003へ進む。未実施のセルがない場合には、S1007へ進み、詳細度制御メッシュの詳細度レベルを一つ上げる。なお、S1007において、詳細度レベルが既に最大レベルに達している場合には、本フローを終了することができる。
【0045】
S1003では、現在設定されている詳細度レベルの詳細度制御メッシュ内で、新規データのあるセル602を1つ取得する。本処理では、地図管理テーブル205を参照して、新規データフラグ702の値が「有」になっている場合には当該セル内に新規データがあると判定する。
【0046】
S1004では、地図管理テーブル205内のデータを更新する。具体的には、S1003で取得したセルに対応する新規データフラグ702を「無」に設定する。
S1005では、S1003で取得したセルに対して、撮影位置の密集度を算出する。本ステップでは、画像データ件数703の値を参照し、その値を撮影位置の密集度として扱う。なお、画像データ件数の代わりに、撮影位置同士の距離の平均値を密集度として用いてもよい。この場合には、少数の画像を狭い区域内で撮影した場合にも撮影区域の密集度を高く判定し、詳細度の高い地図データを取得することができる。
【0047】
S1006では、S1005で算出した密集度が事前に設定した閾値以上であるか否かを判定する。閾値以上である場合には、密集度が高い区域であると判断し、S1008へ進む。一方、閾値以下の場合には、密集度が低いと判断し、S1002から処理を繰り返す。密集度の算出には、任意の位置から所定の距離内に存在する画像データ数を算出し、その値を利用してもよい。この場合には、セル単位で画像データ数を管理する必要がなく、構成を単純にすることができる。
【0048】
S1007では、密集度が高いと判断したセルに対して、地図管理テーブル205内の地図取得状態704を更新し、S1002から処理を繰り返す。本ステップでは、対象セルの地図取得状態704が「未取得」の場合に、「取得待ち」に変更する。
【0049】
次に、図11のフローチャートを参照して、S804の地図データ取得処理の詳細を説明する。
S1101では、地図管理テーブル205を参照して、地図取得状態704が「取得待ち」となっているセルがあるか否かを判定する。ない場合には本処理を終了する。取得待ち状態のセルがある場合には、S1102で外部地図サーバ111へ接続し、S1103で外部地図サーバ111からセルID701に対応する地図データを取得する。
【0050】
外部地図サーバ111から地図データを取得する際の方式としては、セルIDからセルに対応する区域の位置情報および領域サイズを算出する構成でもよいし、セルID701と地図データ1枚を一意に対応付けしておく構成でもよい。セルIDからセルに対応する区域の位置情報および領域サイズを算出する構成の場合、地図サーバ側に特別な構成は必要ないが、地図データ取得時に位置情報および領域サイズの算出処理時間が必要となる。
【0051】
セルID701と地図データ1枚を一意に対応付ける構成の場合、地図サーバ内で地図データをセル単位で分割して保持する必要があるが、地図データ取得処理を高速に実行することができる。本処理で取得した地図データは、地図データベース202内に格納し、出力部110への表示指示があった場合に利用する。
【0052】
本実施形態によれば、メッシュで区切った各区域に対して撮影位置の密集度を算出し、算出した密集度に基づき地図の詳細度を制御することができる。撮影位置の密集度に応じて取得する地図の詳細度レベルを制御するため、狭い区域で多くの画像を撮影した場合にも各撮影画像の撮影位置をユーザが識別可能となる。
【0053】
また、地図データの表示指示に先立って地図データを取得しておくため、地図閲覧時にネットワークに接続できない環境であっても、詳細地図を閲覧可能である。さらに、撮影区域のみの詳細データを取得するため、低リソース環境にも適用可能であり、カメラ等の低リソース機器上で詳細地図データを、高速に閲覧可能となる。
【0054】
(第2の実施形態)
以下、本発明の第2の実施形態を説明する。なお、第1の実施形態と同一構成部分についてはその説明を省略する。第1の実施形態では、撮影画像データの撮影位置の密集度に基づき、取得する地図データの詳細度レベルを制御した。しかし、第1の実施形態では、撮影画像データの撮影時刻の情報を考慮していない。
【0055】
撮影時刻の新しい画像データは、撮影時刻の古いデータに比べ、ユーザが閲覧する可能性が高く、詳細データを取得する価値が高いと言える。したがって、本実施形態では、撮影位置の密集度を撮影時刻に基づき補正し、詳細度制御に用いることで、閲覧可能性の高い区域の地図データの詳細度を高く設定できるようにした例を示す。
【0056】
図12は、本実施形態における地図管理テーブル205の構成例を示した図である。地図管理テーブル205は、セルID701、新規データフラグ702、画像データ件数703、地図取得状態704に加え、撮影時刻1201を保持している。
【0057】
図13は、本実施形態における撮影位置取得処理の流れを示すフローチャートである。
S1301では、新規データがあるか否かの判定を行う。この判定においては、未処理の新規画像データが存在するか否かを、ID管理テーブル209を参照して判定する。未処理の新規画像データとは、最後に本フローの処理を実施した時点以降に撮影された画像データを指す。最新画像ID406が新規画像開始ID405より大きい値である場合には、未処理の新規画像データが存在すると判定する。新規画像データが存在しない場合には、本フローを終了する。
【0058】
S1302では、新規画像データの撮影位置情報を1件取得する。ここでは、画像管理テーブル208を参照して、新規画像開始ID405以降の画像ID401をもつデータを検索し、緯度403および経度404を取得する。
S1303では、新規画像データの撮影時刻を1件取得する。ここでは、画像管理テーブル208を参照して、新規画像開始ID405以降の画像ID401をもつデータを検索し、撮影時刻402を取得する。
【0059】
S1304では、S1302で取得した撮影位置情報に対応するセルID701を算出する。セルIDの算出は、図6に示すインデックスを用いて、各詳細度レベルに対して検索を実施することで実現する。
S1305では、地図管理テーブル205の中から、S1304で算出したセルID701に対応するデータを更新する。具体的には、図12におけるセルID701に対応するデータの新規データフラグ702を「有」に設定し、画像データ件数703の値を1つインクリメントし、撮影時刻1201にS1303で取得した時刻を格納する。
【0060】
S1306では、次の新規データがあるか否かを判定する。次のデータがある場合には、S1302から処理を繰り返す。無い場合には、S1307でID管理テーブル209の新規画像開始ID405の値を更新し、本フローを終了する。ここでは、現在の最新画像ID406に1を足した値を新たな新規画像開始ID405として記録する。
【0061】
次に、図14のフローチャートを参照して、本実施形態における詳細度レベル決定処理の詳細を説明する。本処理では、画像データの撮影位置の密集度と撮影時刻に基づき、各区域の地図の詳細度レベルを決定する。
S1401では、以降のステップで用いる詳細度制御メッシュの詳細度レベルを初期値に設定する。好適には、初期値は詳細データの開始レベルとすることができる。
【0062】
S1402では、現在設定されている詳細度レベルの詳細度制御メッシュ内で、この詳細度レベル決定処理を未実施のセルがあるか否かを判定する。未実施のセルがある場合には、S1403へ進む。未実施のセルがない場合には、S1408へ進み、詳細度制御メッシュの詳細度レベルを一つ上げる。なお、S1408において、詳細度レベルが既に最大レベルに達している場合には、本フローを終了する。
【0063】
S1403では、現在設定されている詳細度レベルの詳細度制御メッシュ内で、新規データのあるセルを1つ取得する。この処理では、地図管理テーブル205を参照して、新規データフラグ702の値が「有」になっている場合には当該セル内に新規データがあると判定する。
【0064】
S1404では、地図管理テーブル205内のデータを更新する。具体的には、S1403で取得したセルに対応する新規データフラグ702を「無」に設定する。
S1405では、S1403で取得したセルに対して、撮影位置の密集度を算出する。本ステップでは、画像データ件数703の値を参照し、その値を撮影位置の密集度として扱う。
【0065】
S1406では、S1405で算出した密集度を、画像データの撮影時刻で補正する。本ステップでは、画像データの撮影時刻取得のためにS1403で取得したセルの撮影時刻1201の値を参照し、その値で撮影位置の密集度を補正する。好適には、撮影時刻の新しいデータは密集度を高く補正し、撮影時刻の古いデータは密集度を低く補正する。補正は、例えば一定時期以降のデータの密集度のみを一律引き上げるよう構成できる。この構成によれば、最近撮影を行った区域の地図データを、最近撮影していない区域より高い詳細度レベルで取得することが可能となる。
【0066】
S1407では、S1406で補正した密集度が事前に設定した閾値以上であるか否かを判定する。閾値以上である場合には、密集度が高い区域であると判断し、S1409へ進む。一方、閾値以下の場合には、密集度が低いと判断し、S1402から処理を繰り返す。
【0067】
S1409では、密集度が高いと判断したセルに対して、地図管理テーブル205内の地図取得状態704を更新し、S1402から処理を繰り返す。本ステップでは、対象セルの地図取得状態704が「未取得」の場合に、「取得待ち」に変更する。
【0068】
本実施形態によれば、撮影時刻で密集度に補正をかけるため、最近撮影を行っており閲覧可能性の高い区域の地図データを、撮影時刻で補正しない場合に比べて高い詳細度レベルで取得することが可能である。
【0069】
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種のコンピュータ読み取り可能な記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0070】
101 CPU、102 ROM、103 RAM、104 GPS受信機、105 通信部、106 内部記憶装置、107 外部記憶装置、108 撮像部、109 入力部、110 出力部、111 外部地図サーバ、201 地図データ表示装置、202 地図データベース、203 概略データ、204 詳細データ、205 地図管理テーブル、206 詳細度制御メッシュ、207 撮影画像データ、208 画像管理テーブル、209 ID管理テーブル、210 画像データベース、211 地図データベース、212 概略データ、213 詳細データ

【特許請求の範囲】
【請求項1】
撮影画像の撮影位置情報を取得する撮影位置情報取得手段と、
前記撮影位置情報取得手段によって取得した撮影位置情報に基づいて密集度を算出する密集度算出手段と、
前記密集度算出手段によって算出した密集度に基づいて、地図の詳細度を決定する詳細度レベル決定手段と、
所定のタイミングで、前記詳細度レベル決定手段によって決定した詳細度の地図データを外部から取得する地図データ取得手段とを備えることを特徴とする地図データ表示装置。
【請求項2】
撮影画像の撮影時刻を取得する撮影時刻取得手段をさらに備え、
前記詳細度レベル決定手段は、前記密集度算出手段によって算出した密集度と前記撮影時刻取得手段によって取得した撮影時刻に基づき詳細度を決定することを特徴とする請求項1に記載の地図データ表示装置。
【請求項3】
前記所定のタイミングは、省電力モード移行時であることを特徴とする請求項1または2に記載の地図データ表示装置。
【請求項4】
前記所定のタイミングは、充電中であることを特徴とする請求項1または2に記載の地図データ表示装置。
【請求項5】
前記所定のタイミングは、ネットワークへの接続を検知した時であることを特徴とする請求項1または2に記載の地図データ表示装置。
【請求項6】
前記地図データ取得手段は、バッテリー残量によって地図データ取得の実行可否を判断することを特徴とする請求項1〜5の何れか1項に記載の地図データ表示装置。
【請求項7】
撮影画像の撮影位置情報を取得する撮影位置情報取得工程と、
前記撮影位置情報取得工程において取得した撮影位置情報に基づいて密集度を算出する密集度算出工程と、
前記密集度算出工程において算出した密集度に基づいて、地図の詳細度を決定する詳細度レベル決定工程と、
所定のタイミングで、前記詳細度レベル決定工程において決定した詳細度の地図データを外部から取得する地図データ取得工程とを備えることを特徴とする地図データ表示方法。
【請求項8】
撮影画像の撮影時刻を取得する撮影時刻取得工程をさらに備え、
前記詳細度レベル決定工程は、前記密集度算出工程において算出した密集度と前記撮影時刻取得工程において取得した撮影時刻に基づき詳細度を決定することを特徴とする請求項7に記載の地図データ表示方法。
【請求項9】
前記所定のタイミングは、省電力モード移行時であることを特徴とする請求項7または8に記載の地図データ表示方法。
【請求項10】
前記所定のタイミングは、充電中であることを特徴とする請求項7または8に記載の地図データ表示方法。
【請求項11】
前記所定のタイミングは、ネットワークへの接続を検知した時であることを特徴とする請求項7または8に記載の地図データ表示方法。
【請求項12】
前記地図データ取得工程は、バッテリー残量によって地図データ取得の実行可否を判断することを特徴とする請求項7〜11の何れか1項に記載の地図データ表示方法。
【請求項13】
撮影画像の撮影位置情報を取得する撮影位置情報取得工程と、
前記撮影位置情報取得工程において取得した撮影位置情報に基づいて密集度を算出する密集度算出工程と、
前記密集度算出工程において算出した密集度に基づいて、地図の詳細度を決定する詳細度レベル決定工程と、
所定のタイミングで、前記詳細度レベル決定工程において決定した詳細度の地図データを外部から取得する地図データ取得工程とをコンピュータに実行させることを特徴とするプログラム。
【請求項14】
請求項13に記載のプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2013−109299(P2013−109299A)
【公開日】平成25年6月6日(2013.6.6)
【国際特許分類】
【出願番号】特願2011−256548(P2011−256548)
【出願日】平成23年11月24日(2011.11.24)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】