(57)【要約】【課題】地図原稿に管理情報を付加することなく当該地図原稿に対応する範囲の地図データを記憶装置から取得できること。【解決手段】原稿を読み取って画像データを生成する画像読取装置と通信可能に接続されている情報処理装置に、画像読取装置を制御して原稿を読み取らせ、当該原稿を読み取って生成された画像データを取得する読取制御処理と、原稿が地図原稿である場合に、読取制御処理によって画像読取装置から取得された画像データである地図データが表す地図上の文字列を認識する文字列認識処理（Ｓ１０１）と、記憶装置に記憶されている地図データから、文字列認識処理によって認識された文字列によって示される対象を含む範囲の部分地図データを取得する部分地図データ取得処理（Ｓ１０３〜Ｓ１１０）と、を実行させる読取制御プログラム。【選択図】図３
2013077164.tif 000002
【特許請求の範囲】
【請求項１】
原稿を読み取って画像データを生成する画像読取装置と通信可能に接続されている情報処理装置に、
前記画像読取装置を制御して原稿を読み取らせ、当該原稿を読み取って生成された画像データを取得する読取制御処理と、
前記原稿が地図原稿である場合に、前記読取制御処理によって前記画像読取装置から取得された画像データである地図データが表す地図上の文字列を認識する文字列認識処理と、
記憶装置に記憶されている地図データから、前記文字列認識処理によって認識された前記文字列によって示される対象を含む範囲の部分地図データを取得する部分地図データ取得処理と、
を実行させる読取制御プログラム。
【請求項２】
請求項１に記載の読取制御プログラムであって、
前記記憶装置に記憶されている地図データに、前記文字列認識処理によって認識された一つの前記文字列によって示される対象が一つしか存在しないか又は複数存在するかを判定する複数判定処理と、
前記複数判定処理によって複数存在すると判定された場合に、それら複数の対象の中からユーザによる対象の選択を受付ける対象選択受付処理と、
を前記情報処理装置に実行させ、
前記部分地図データ取得処理において、前記複数判定処理によって一つの前記文字列によって示される対象が一つしか存在しないと判定された場合は当該対象を含む範囲の前記部分地図データを取得し、複数存在すると判定された場合は前記対象選択受付処理によって選択された対象を含む範囲の前記部分地図データを取得する、読取制御プログラム。
【請求項３】
請求項１又は請求項２に記載の読取制御プログラムであって、
前記読取制御処理によって取得された前記地図データを解析して当該地図データが表す地図の種類を判別し、判別した種類の地図を表す地図データが前記記憶装置に記憶されているか否かを判定する地図判定処理と、
前記地図判定処理によって前記判別した種類の地図を表す地図データが前記記憶装置に記憶されていないと判定された場合に、前記記憶装置に記憶されている地図データが表す地図の種類の中からユーザによる種類の選択を受付ける地図種類選択受付処理と、
を前記情報処理装置に実行させ、
前記部分地図データ取得処理において、前記地図判定処理によって前記判別した種類の地図を表す地図データが前記記憶装置に記憶されていると判定された場合は当該種類の地図を表す地図データから前記部分地図データを取得し、記憶されていないと判定された場合は前記地図種類選択受付処理によって選択された種類の地図を表す地図データから前記部分地図データを取得する、読取制御プログラム。
【請求項４】
請求項１乃至請求項３のいずれか一項に記載の読取制御プログラムであって、
前記記憶装置には前記地図データが縮尺毎に記憶されており、
前記部分地図データ取得処理において、前記記憶装置に記憶されている前記地図データのうち前記読取制御処理によって取得された前記地図データが表す地図の縮尺に適合する縮尺の地図データから前記部分地図データを取得する、読取制御プログラム。
【請求項５】
請求項１乃至請求項４のいずれか一項に記載の読取制御プログラムであって、
前記部分地図データ取得処理によって取得された前記部分地図データを、前記読取制御処理によって取得された前記地図データが表す地図の向きと一致するように回転させる回転処理を前記情報処理装置に実行させる、読取制御プログラム。
【請求項６】
請求項１乃至請求項５のいずれか一項に記載の読取制御プログラムであって、
前記読取制御処理によって取得された前記地図データを、前記部分地図データ取得処理によって取得された前記部分地図データで更新する更新処理を前記情報処理装置に実行させる、読取制御プログラム。
【請求項７】
請求項１乃至請求項６のいずれか一項に記載の読取制御プログラムであって、
前記部分地図データ取得処理において、前記記憶装置に記憶されている前記地図データから、前記読取制御処理によって取得された前記地図データが表す範囲と一致する範囲を表す前記部分地図データを取得する、読取制御プログラム。
【請求項８】
請求項１乃至請求項７のいずれか一項に記載の読取制御プログラムであって、
前記記憶装置には旧版の地図データに関する地図情報データと新版の地図データとが記憶されており、
前記部分地図データ取得処理において、前記文字列認識処理によって認識された前記文字列によって示される対象を含む範囲を前記旧版の地図情報データに基づいて特定し、前記新版の地図データから、前記旧版の地図情報データに基づいて特定した範囲の前記部分地図データを取得する、読取制御プログラム。
【請求項９】
請求項１乃至請求項８のいずれか一項に記載の読取制御プログラムであって、
前記部分地図データ取得処理において、前記文字列認識処理によって認識された前記文字列によって示される対象を全て含む範囲が前記記憶装置に記憶されている前記地図データ上に存在しない場合は、前記文字列認識処理によって認識された前記文字列のうち一部の文字列によって示される対象を含む範囲の前記部分地図データを取得する、読取制御プログラム。
【請求項１０】
原稿を読み取って画像データを生成する画像読取装置を制御して原稿を読み取らせ、当該原稿を読み取って生成された画像データを取得する読取制御部と、
前記原稿が地図原稿である場合に、前記読取制御部によって前記画像読取装置から取得された画像データである地図データが表す地図上の文字列を認識する文字列認識部と、
記憶装置に記憶されている地図データから、前記文字列認識部によって認識された前記文字列によって示される対象を含む範囲の部分地図データを取得する部分地図データ取得部と、
を備える情報処理装置。
【請求項１１】
原稿を読み取って画像データを生成する読取部と、
前記原稿が地図原稿である場合に、前記読取部によって生成された画像データである地図データが表す地図上の文字列を認識する文字列認識部と、
記憶装置に記憶されている地図データから、前記文字列認識部によって認識された前記文字列によって示される対象を含む範囲の部分地図データを取得する部分地図データ取得部と、
を備える画像読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、地図原稿に対応する地図データを記憶装置から取得する技術に関する。
【背景技術】
【０００２】
従来、原稿の読取時に原稿に記録された二次元コードなどの画像管理情報を読み取って、その画像管理情報に基づいて所定の記憶装置を検索し、最新の情報が公開されている場合にはその最新情報を印刷する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２６６９６２号公報（段落００１８）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術によると、最新情報を印刷するためには原稿に画像管理情報を付加しておかなければならないので、原稿に画像管理情報を付加するための作業が生じたり、あるいは、原稿の一部が画像管理情報によって占有されるため原稿に表記できる情報量が減少したりするなどの問題がある。
本発明では、地図原稿に管理情報を付加することなく当該地図原稿に対応する範囲の地図データを記憶装置から取得できる技術を開示する。
【課題を解決するための手段】
【０００５】
本明細書によって開示される読取制御プログラムは、原稿を読み取って画像データを生成する画像読取装置と通信可能に接続されている情報処理装置に、前記画像読取装置を制御して原稿を読み取らせ、当該原稿を読み取って生成された画像データを取得する読取制御処理と、前記原稿が地図原稿である場合に、前記読取制御処理によって前記画像読取装置から取得された画像データである地図データが表す地図上の文字列を認識する文字列認識処理と、記憶装置に記憶されている地図データから、前記文字列認識処理によって認識された前記文字列によって示される対象を含む範囲の部分地図データを取得する部分地図データ取得処理と、を実行させる。
【０００６】
また、上記読取制御プログラムは、前記記憶装置に記憶されている地図データに、前記文字列認識処理によって認識された一つの前記文字列によって示される対象が一つしか存在しないか又は複数存在するかを判定する複数判定処理と、前記複数判定処理によって複数存在すると判定された場合に、それら複数の対象の中からユーザによる対象の選択を受付ける対象選択受付処理と、を前記情報処理装置に実行させ、前記部分地図データ取得処理において、前記複数判定処理によって一つの前記文字列によって示される対象が一つしか存在しないと判定された場合は当該対象を含む範囲の前記部分地図データを取得し、複数存在すると判定された場合は前記対象選択受付処理によって選択された対象を含む範囲の前記部分地図データを取得してもよい。
【０００７】
また、上記読取制御プログラムは、前記読取制御処理によって取得された前記地図データを解析して当該地図データが表す地図の種類を判別し、判別した種類の地図を表す地図データが前記記憶装置に記憶されているか否かを判定する地図判定処理と、前記地図判定処理によって前記判別した種類の地図を表す地図データが前記記憶装置に記憶されていないと判定された場合に、前記記憶装置に記憶されている地図データが表す地図の種類の中からユーザによる種類の選択を受付ける地図種類選択受付処理と、を前記情報処理装置に実行させ、前記部分地図データ取得処理において、前記地図判定処理によって前記判別した種類の地図を表す地図データが前記記憶装置に記憶されていると判定された場合は当該種類の地図を表す地図データから前記部分地図データを取得し、記憶されていないと判定された場合は前記地図種類選択受付処理によって選択された種類の地図を表す地図データから前記部分地図データを取得してもよい。
【０００８】
また、前記記憶装置には前記地図データが縮尺毎に記憶されており、上記読取制御プログラムは、前記部分地図データ取得処理において、前記記憶装置に記憶されている前記地図データのうち前記読取制御処理によって取得された前記地図データが表す地図の縮尺に適合する縮尺の地図データから前記部分地図データを取得してもよい。
【０００９】
また、上記読取制御プログラムは、前記部分地図データ取得処理によって取得された前記部分地図データを、前記読取制御処理によって取得された前記地図データが表す地図の向きと一致するように回転させる回転処理を前記情報処理装置に実行させてもよい。
【００１０】
また、上記読取制御プログラムは、前記読取制御処理によって取得された前記地図データを、前記部分地図データ取得処理によって取得された前記部分地図データで更新する更新処理を前記情報処理装置に実行させてもよい。
【００１１】
また、上記読取制御プログラムは、前記部分地図データ取得処理において、前記記憶装置に記憶されている前記地図データから、前記読取制御処理によって取得された前記地図データが表す範囲と一致する範囲を表す前記部分地図データを取得してもよい。
【００１２】
また、前記記憶装置には旧版の地図データに関する地図情報データと新版の地図データとが記憶されており、上記読取制御プログラムは、前記部分地図データ取得処理において、前記文字列認識処理によって認識された前記文字列によって示される対象を含む範囲を前記旧版の地図情報データに基づいて特定し、前記新版の地図データから、前記旧版の地図情報データに基づいて特定した範囲の前記部分地図データを取得してもよい。
【００１３】
また、上記読取制御プログラムは、前記部分地図データ取得処理において、前記文字列認識処理によって認識された前記文字列によって示される対象を全て含む範囲が前記記憶装置に記憶されている前記地図データ上に存在しない場合は、前記文字列認識処理によって認識された前記文字列のうち一部の文字列によって示される対象を含む範囲の前記部分地図データを取得してもよい。
【００１４】
なお、この発明は、情報処理装置、画像読取装置、情報処理方法、画像読取方法、読取制御プログラムを記録した記録媒体等の種々の態様で実現することができる。
【発明の効果】
【００１５】
上記の読取制御プログラムによると、地図原稿に管理情報を付加することなく当該地図原稿に対応する範囲の地図データを記憶装置から取得できる。
【図面の簡単な説明】
【００１６】
【図１】実施形態１に係る地図読取システムの構成を示すブロック図。
【図２】ＰＣ及びイメージスキャナの電気的構成を示すブロック図。
【図３】地図データ更新処理の流れを示すフローチャート。
【図４】地図原稿の一例を示す模式図。
【図５】地図原稿の一例を示す模式図。
【図６】部分地図データが表す地図の例を示す模式図。
【図７】部分地図データが表す地図の例を示す模式図。
【図８】実施形態２に係る地図読取システムの構成を示すブロック図。
【発明を実施するための形態】
【００１７】
＜実施形態１＞
本発明の実施形態１を図１ないし図７によって説明する。
（１）地図読取システムの構成
図１は、実施形態１に係る地図読取システム１の構成を示すブロック図である。地図読取システム１は、情報処理装置としてのパーソナルコンピュータ（ＰＣ）２と、画像読取装置としてのイメージスキャナ３と、記憶装置としての地図サーバ４とで構成されており、これらはＬＡＮ（Ｌｏｃａｌ  Ａｒｉａ  Ｎｅｔｗｏｒｋ）やインターネットなどの有線あるいは無線通信ネットワーク５によって通信可能に接続されている。
【００１８】
地図読取システム１は、イメージスキャナ３によって地図原稿（例えば図４参照）を読み取って生成された地図データが表す地図をＰＣ２において文字認識し、認識された文字列によって示される対象を含む範囲の最新の地図データを地図サーバ４から取得するシステムである。
ここでいう対象には、県、市区町村、地区、字などの地域や、道路、河川などの他、「ｘｘｘ駅」、「ｚｚｚ商店」などの施設も含まれる。
ただし、理解を容易にするため、本実施形態では対象を施設に限定して説明する。つまり、以降の説明において対象という場合は「ｘｘｘ駅」、「ｚｚｚ商店」などの施設のことをいい、県、市区町村、地区、字などは含まないものとする。
【００１９】
（２）ＰＣ及びイメージスキャナの電気的構成
図２は、ＰＣ２及びイメージスキャナ３の電気的構成を示すブロック図である。なお、地図サーバ４の電気的構成はＰＣ１と実質的に同一であるので省略する。
【００２０】
ＰＣ２は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、表示部２４、操作部２５、記憶部２６、通信インタフェース（通信Ｉ／Ｆ）部２７などを備えて構成されている。
ＣＰＵ２１は、ＲＯＭ２２や記憶部２６に記憶されている各種のプログラムを実行することによってＰＣ２の各部を制御する。ＲＯＭ２２にはＣＰＵ２１によって実行される各種のプログラムやデータなどが記憶されている。ＲＡＭ２３はＣＰＵ２１が各種の処理を実行するための主記憶装置として用いられる。
【００２１】
表示部２４は、液晶ディスプレイなどの表示装置、表示装置を駆動するディスプレイ駆動回路などを備えて構成されている。
操作部２５は、キーボードやマウスなどで構成されている。
記憶部２６は、ハードディスクやフラッシュメモリなどの不揮発性のメモリを用いて各種のプログラムやデータを記憶する装置である。記憶部２６には、図示しないオペレーティングシステム（ＯＳ）、図示しないアプリケーションプログラム（ワードプロセッサ、表計算ソフト、画像編集ソフトなど）、読取制御プログラムとしてのスキャナドライバ２９などが記憶される。
【００２２】
通信インタフェース部２７は通信ネットワーク５を介してイメージスキャナ３や地図サーバ４と通信可能に接続されている。なお、ＰＣ２はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などを介してイメージスキャナ３と直接接続される構成であってもよい。
【００２３】
イメージスキャナ３は、制御部３１、読取部３２、通信インタフェース（通信Ｉ／Ｆ）部３３などを備えて構成されている。
制御部３１は、ＣＰＵ３１ａ、ＲＯＭ３１ｂ、ＲＡＭ３１ｃを備えている。ＣＰＵ３１ａはＲＯＭ３１ｂに記憶されているプログラムを実行することによってイメージスキャナ３の各部を制御する。ＲＯＭ３１ｂにはイメージスキャナ３の動作を制御するための制御プログラムや各種のデータなどが記録されている。ＲＡＭ３１ｃはＣＰＵ３１ａが各種の処理を実行するための主記憶装置として用いられる。
【００２４】
読取部３２は、光源、イメージセンサ、画像処理回路などを備えており、原稿を読み取って画像データを生成する。
通信インタフェース部３３は通信ネットワーク５を介してＰＣ２と通信可能に接続されている。なお、イメージスキャナ３はＵＳＢなどを介してＰＣ２と直接接続される構成であってもよい。
【００２５】
（３）地図サーバ
図１に示すように、地図サーバ４には、地形図を表す地図データ、道路地図を表す地図データ、衛星画像を表す地図データなどの複数種類の地図データ４ａが縮尺毎に格納されている。各地図データ４ａにはそれぞれその地図データ４ａの種類、その地図データ４ａが表す縮尺を示す縮尺情報が付加されている。地図データ４ａは例えば国単位のものであってもよいし、県単位のものであってもよいし、市単位のものであってもよい。
【００２６】
また、地図サーバ４には、地図上に存在する施設の施設名が格納される施設名フィールド、その施設の住所が格納される住所フィールド、各種類、各縮尺の地図データ４ａ上におけるその施設の座標が格納される複数の座標フィールドなどからなる地図情報データベース４ｂが記憶されている。なお、地図情報データベース４ｂには上述した施設の緯度、経度などが格納されてもよい。
【００２７】
（４）地図データ更新処理
スキャナドライバ２９を実行するＣＰＵ２１（以下、単に「スキャナドライバ２９」という）は、イメージスキャナ３に原稿の読み取りを指示し、イメージスキャナ３によって当該原稿を読み取って生成された画像データをイメージスキャナ３から取得するＰＣスキャンを実行することができる。ＰＣスキャンは読取制御処理の一例である。
【００２８】
ところで、ユーザは原稿として地図原稿を読み取らせようとする場合もある。この場合、その地図原稿が古いとその地図原稿上にある施設が既になくなってしまっていたり道路形状などの地形が変わってしまっていたりする場合がある。
そこで、スキャナドライバ２９は、原稿が地図原稿である場合は、当該地図原稿を読み取って生成された画像データ（以下「地図データ」という）をイメージスキャナ３から取得すると、その取得した地図データを、地図サーバ４に記憶されている地図データ４ａから取得した部分地図データによって更新する地図データ更新処理を実行する。
【００２９】
ここで、本実施形態ではＰＣスキャンによって地図原稿を読み取らせるときユーザは原稿が地図原稿であることを指定してスキャナドライバ２９にＰＣスキャンの実行を指示するものとする。これによりスキャナドライバ２９は原稿が地図原稿であるか否かを判断することができる。
【００３０】
図３は、地図データ更新処理の流れを示すフローチャートである。以下、地図データ更新処理の流れを図４に示す地図原稿４１を参照しつつ説明する。
【００３１】
Ｓ１０１では、スキャナドライバ２９はイメージスキャナ３から取得した地図データが表す地図に文字列認識処理を施すことにより、当該地図上の文字列を認識する。Ｓ１０１は文字列認識処理の一例である。
例えば図４に示す地図原稿４１には「ｘｘｘ駅」という文字列や「ｚｚｚ商店」という文字列が表記されている。このように地図には一般に多くの文字列が表記されており、スキャナドライバ２９は認識可能な文字列については全て認識するものとする。
なお、図４に示す「ｘｘｘ駅」という文字列や「ｚｚｚ商店」という文字列は施設名を表すものであるが、地図原稿には施設名だけでなく県名、市区町村名、地区名、字、道路名、河川名などを表す文字列が含まれる場合もあり、この段階ではそれらも含めて認識する。
【００３２】
Ｓ１０２では、スキャナドライバ２９は文字列を認識できたか否かを判定し、認識できた場合はＳ１０３に進み、認識できなかった場合は本処理を終了する。
【００３３】
Ｓ１０３では、スキャナドライバ２９はＳ１０１で認識した文字列を地図情報データベース４ｂの施設名フィールド上で検索し、見つかった場合には地図情報データベース４ｂからその文字列に対応付けられている住所を取得する。
ここで、施設名フィールドには施設名以外を示す文字列は格納されていないので、県名、市区町村名、地区名、字名、道路名、河川名などを示す文字列はこの段階で除外される。
【００３４】
スキャナドライバ２９は、複数の文字列を認識した場合は、認識した文字列毎に施設名フィールドを検索し、その文字列が見つかった場合には、その文字列に対応付けられている住所を地図情報データベース４ｂから取得する。例えば「ｘｘｘ駅」という施設名と「ｚｚｚ商店」という施設名とを認識した場合に、それらの施設名がどちらも見つかった場合には、「ｘｘｘ駅」という施設名に対応付けられている住所、及び、「ｚｚｚ商店」という施設名に対応付けられている住所の両方が地図情報データベース４ｂから取得される。
【００３５】
ここで、スキャナドライバ２９が取得する住所は施設名フィールド上で見つかった文字列に対応付けられている住所のみであるので、ユーザが読み取らせた地図原稿に現在は存在しない施設の施設名が表記されていたとすると、その施設名は施設名フィールド上で見つからないことになり、その施設名に対応付けられている住所は取得されないことになる。
【００３６】
ところで、異なる施設に同じ名称が付与されている場合もある。例えばＧ県Ｋ市にある商店と、Ｙ県Ｚ群にある商店とに同じ「ｚｚｚ商店」という施設名が付与されていることもある。スキャナドライバ２９は、同じ施設名が複数見つかった場合は、見つかった全ての施設名に対応付けられている住所を取得する。
【００３７】
Ｓ１０４では、スキャナドライバ２９は認識された各文字列について地図情報データベース４ｂ上で見つかったか否かを判定し、見つかった場合は、更にその見つかった文字列によって示される施設が一つしか存在しないか又は複数存在するかを判定する。
例えば、「ｚｚｚ商店」という文字列を検索すると、Ｇ県Ｋ市にある「ｚｚｚ商店」の住所と、Ｙ県Ｚ群にある「ｚｚｚ商店」の住所との二つの住所が取得される場合もある。このように一つの文字列について二つ以上の住所が取得された場合は、スキャナドライバ２９はその文字列によって示される施設が複数存在すると判定する。
【００３８】
スキャナドライバ２９は、認識したいずれの文字列も地図情報データベース４ｂ上で見つからなかった場合は本処理を終了し、地図情報データベース４ｂ上で見つかった場合は、見つかった文字列によって示される施設が複数存在する場合はＳ１０５に進み、見つかった文字列によって示される施設が一つしか存在しない場合はＳ１０６に進む。
ここで、例えばイメージスキャナ３から取得した地図データが表す地図上で二つの異なる文字列が認識され、それら二つの文字列がどちらも地図情報データベース４ｂ上で見つかったとし、一方の文字列はその文字列によって示される施設が一つしか存在せず、他方の文字列はその文字列によって示される施設が複数存在するとした場合、スキャナドライバ２９はＳ１０５に進むものとする。
【００３９】
Ｓ１０５では、スキャナドライバ２９は一つの文字列によって示される複数の施設の住所を表示部２４に一覧表示し、一覧表示した住所の中からユーザによる住所の選択を受付ける。
ここで、例えば二つの文字列が認識され、それら二つの文字列がどちらも地図情報データベース４ｂ上で見つかったとし、且つ、どちらの文字列もその文字列によって示される施設が複数存在するとした場合、スキャナドライバ２９は文字列毎に順に住所の選択を受付けるものとする。
【００４０】
Ｓ１０６では、スキャナドライバ２９はイメージスキャナ３から取得した地図データを画像解析して当該地図データが表す地図の種類を判断する。
Ｓ１０７では、スキャナドライバ２９はＳ１０６で判断した種類と同じ種類の地図を表す地図データ４ａが地図サーバ４に記憶されているか否かを判定する。
スキャナドライバ２９は、Ｓ１０６で判断した種類と同じ種類の地図データ４ａが地図サーバ４に記憶されていない場合はＳ１０８に進み、記憶されている場合はＳ１０９に進む。
上述したＳ１０６〜Ｓ１０７は地図判定処理の一例である。
【００４１】
Ｓ１０８では、スキャナドライバ２９は地図サーバ４に記憶されている地図の種類を表示部２４に一覧表示し、一覧表示した種類の中からユーザによる種類の選択を受付ける。Ｓ１０８は地図種類選択受付処理の一例である。
【００４２】
以降の説明において「地図サーバに記憶されている地図データ」というときは、地図サーバ４に記憶されている複数種類の地図データ４ａのうちＳ１０６で判断した種類の地図を表す地図データ４ａ、又は、Ｓ１０８でユーザにより選択された種類の地図を表す地図データ４ａのことをいうものとする。
【００４３】
Ｓ１０９では、スキャナドライバ２９は、地図サーバ４に記憶されている縮尺が異なる複数の地図データ４ａの中から、イメージスキャナ３から取得した地図データが表す地図の縮尺に最も近い縮尺の地図データ４ａを選択する。ここでいう地図データ４ａは前述したようにＳ１０６で判断した種類の地図を表す地図データ４ａ、又は、Ｓ１０８でユーザにより選択された種類の地図を表す地図データ４ａである。
【００４４】
以下、最も近い縮尺の地図データ４ａを選択する方法の例について説明する。ここでは最も近い縮尺の地図データ４ａを選択する方法として二つの方法を説明する。
【００４５】
一つは、イメージスキャナ３から取得した地図データ上において任意の二つの施設間の距離をピクセル数として求め、地図サーバ４に記憶されている縮尺の異なる複数の地図データ４ａのうち当該二つの施設間のピクセル数が上述したピクセル数に最も近い縮尺の地図データ４ａを選択する方法である。
具体的に例えば、図４に示す地図原稿４１を例に説明すると、スキャナドライバ２９は、イメージスキャナ３から取得した地図データ上において「ｘｘｘ駅」という施設と「ｚｚｚ商店」という施設との距離（図中において直線４２によって示される距離）をピクセル数として求める。
そして、スキャナドライバ２９は各縮尺の地図データ４ａ毎に当該地図データ４ａ上における上述した二つの施設の座標間のピクセル数を求める。この座標は地図情報データベース４ｂから取得することができる。
そして、各縮尺の地図データ４ａのうち、座標間のピクセル数が、イメージスキャナ３から取得した地図データから求めたピクセル数に最も近い地図データ４ａを選択する。二つの地図データ間において二つの施設間のピクセル数が近ければ、それら二つの地図データの縮尺は近いといえるからである。
【００４６】
もう一つは、イメージスキャナ３から取得した地図データが表す地図上で縮尺を特定できる情報を画像処理によって認識し、その認識した情報に基づいて当該地図データの縮尺を判断し、その判断した縮尺に最も近い地図データ４ａを選択する方法である。
例えば、地図には図５に示す地図原稿４５のように縮尺を示す情報が表記される場合がある。図５に示す例の場合は２００ｍ（メートル）という文字列とその文字列の近傍に表記されているスケール４６とが縮尺を示す情報に相当する。この場合、スケール４６の幅をピクセル数として取得し、地図サーバ４に記憶されている縮尺が異なる複数の地図データ４ａのうち２００ｍに相当するピクセル数が上述したスケール４６のピクセル数に最も近い地図データ４ａに決定する。二つの地図データ間において同一距離を表すピクセル数が近ければ、それら二つの地図データの縮尺は近いといえるからである。
【００４７】
また、例えば、地図には１／３０００などのように縮尺を表す文字列が表記される場合もある。この場合はその１／３０００という文字列が縮尺を示す情報に相当する。この場合は、画像解析によってその情報を取得し、その取得した縮尺に最も近い縮尺の地図データ４ａに決定すればよい。
【００４８】
Ｓ１１０では、スキャナドライバ２９は、Ｓ１０９で決定した縮尺の地図データ４ａから、地図サーバ４から取得した住所に対応付けられている座標を全て含む範囲の部分地図データを取得する。この座標は地図情報データベース４ｂから取得することができる。
ここで、地図サーバ４から取得した住所に対応付けられている座標は、文字列が複数認識された場合に、ある文字列については一つの施設しか存在していないと判定され、他の文字列については複数の施設が存在していると判定された場合には、一つの施設しか存在していない文字列についてはその文字列によって示される施設の住所に対応付けられている座標であり、複数の施設が存在している文字列についてはＳ１０５においてユーザにより選択された住所に対応付けられている座標である。
図６は、地図サーバ４から取得した部分地図データが表す地図の例を示す模式図である。図示する部分地図データ５０が表す地図には「ｘｘｘ駅」の住所に対応付けられている座標と「ｚｚｚ商店」の住所に対応付けられている座標との両方が含まれている。
【００４９】
ここで、仮に、ユーザが読み取らせた地図原稿に現在は存在しない施設の施設名が表記されていたとすると、地図サーバ４に記憶されている最新の地図データ４ａ上には、認識された文字列によって示される施設を全て含む範囲は存在しないことになる。この場合は、スキャナドライバ２９は、認識された文字列によって示される施設のうち一部の施設のみを含む範囲の部分地図データを取得することになる。
【００５０】
なお、上述したように部分地図データは取得した住所に対応付けられている座標を含む範囲を表すものであるが、範囲が広すぎると却ってユーザにとって利用し難いので、地図サーバ４から取得した部分地図データが表す範囲は、イメージスキャナ３から取得した地図データが表す範囲と一致することが望ましい。例えば、イメージスキャナ３から取得した地図データにおいていずれか一つの施設を基準として上下左右のピクセル数を取得し、部分地図データにおいて当該施設を基準とする上下左右のピクセル数が上述したイメージスキャナ３から取得した地図データにおける上下左右のピクセル数と一致するように範囲を決定してもよい。
上述したＳ１０３〜Ｓ１１０は部分地図データ取得処理の一例である。
【００５１】
Ｓ１１１では、スキャナドライバ２９はイメージスキャナ３から取得した地図データ上にある任意の二つの施設間を結ぶ直線の傾きを求める。例えば図４に示す例の場合「ｘｘｘ駅」という施設と「ｚｚｚ商店」という施設とを結ぶ直線４２の傾きを求める。
Ｓ１１２では、スキャナドライバ２９は地図サーバ４から取得した部分地図データ上において上述した二つの施設の住所に対応付けられている座標間を結ぶ直線の傾きを求める。
【００５２】
Ｓ１１３では、スキャナドライバ２９は上述した二つの傾きの差が一定角度以上である場合はそれらの地図データが表す地図の向きが一致していないと判断してＳ１１４に進み、傾きの差が一定角度未満である場合はそれらの地図データが表す地図の向きが一致していると判断してＳ１１５に進む。
【００５３】
Ｓ１１４では、スキャナドライバ２９は部分地図データが表す地図の向きが、イメージスキャナ３から取得した地図データが表す地図の向きと一致するように部分地図データを回転させる。Ｓ１１４は回転処理の一例である。
具体的には例えば、スキャナドライバ２９は、イメージスキャナ３から取得した地図データ上における前述した二つの施設間を結ぶ直線の傾きと部分地図データにおける前述した二つの座標間を結ぶ直線の傾きとの差が一定角度未満になるように部分地図データを回転させる。
例えば図６に示す部分地図データ５０の場合、図４に示す地図原稿４１を読み取って生成された地図データが表す向きと一致するように回転させることにより、図７に示すように回転されることになる。
なお、予め広い範囲の部分地図データを取得しておき、回転後に、図４に示す地図原稿４１を読み取って生成された地図データとほぼ一致する範囲を切り出すようにしてもよい。
【００５４】
Ｓ１１５では、スキャナドライバ２９はイメージスキャナ３から取得した地図データを、地図サーバ４から取得した部分地図データで更新する。Ｓ１１５は更新処理の一例である。
【００５５】
（５）実施形態の効果
以上説明した本発明の実施形態１に係るスキャナドライバ２９によると、地図データに含まれる文字列を認識し、認識した文字列によって示される施設を含む範囲の部分地図データを地図サーバ４から取得するので、地図原稿に管理情報を付加することなく当該地図原稿に対応する範囲の部分地図データを取得できる。
【００５６】
更に、スキャナドライバ２９によると、認識された文字列によって示される施設を全て含む範囲が地図サーバ４上の地図データ４ａに存在しない場合は、認識された文字列のうち一部の文字列によって示される施設を含む範囲の部分地図データを取得する。地図原稿が表す地図が古いと、認識された文字列によって示される全ての施設が、地図サーバ４に記憶されている地図データ４ａに存在しないこともあり得る。スキャナドライバ２９によると、認識された文字列によって示される全ての施設が地図サーバ４に記憶されている地図データ４ａに存在しなくても部分地図データを取得するので、地図原稿が表す地図が古くても地図サーバ４から最新の部分地図データを取得できる可能性が高くなる。
【００５７】
更に、スキャナドライバ２９によると、イメージスキャナ３から取得した地図データが表す範囲と一致する範囲の部分地図データを取得することにより、部分地図データにユーザが必要としない範囲が含まれないようにすることができる。
【００５８】
更に、スキャナドライバ２９によると、認識した一つの文字列によって示される施設が複数存在する場合はユーザに施設を選択させるので、一つの文字列によって示される施設が複数存在しても部分地図データを取得する範囲を適切に決定できる。
【００５９】
更に、スキャナドライバ２９によると、地図原稿と同じ種類の地図を表す地図データ４ａが地図サーバ４に記憶されている場合に、同じ種類の地図データを取得するので、地図データを更新したとしてもユーザにとって違和感のない結果を得られる。一方、地図原稿と同じ種類の地図を表す地図データ４ａが地図サーバ４に記憶されていない場合に、地図サーバ４から取得する部分地図データが表す地図の種類をユーザが選択できる。
【００６０】
更に、スキャナドライバ２９によると、イメージスキャナ３から取得した地図データが表す地図の縮尺に適合する縮尺の部分地図データを取得するので、ユーザにとって適切な縮尺の部分地図データを取得できる。
ここで「適合する縮尺」とは、前述したように地図サーバ４から取得した部分地図データ上の二つの座標間のピクセル数が、イメージスキャナ３から取得した地図データ上における二つの施設間のピクセル数に最も近くなる縮尺をいう。
【００６１】
更に、スキャナドライバ２９によると、地図サーバ４から取得した部分地図データを、イメージスキャナ３から取得した地図データが表す地図の向きと一致するように回転させるので、部分地図データが表す地図の向きを地図原稿上の地図の向きと一致させることができる。
【００６２】
更に、スキャナドライバ２９によると、イメージスキャナ３から取得した地図データを、地図サーバ４から取得した部分地図データで更新することにより、イメージスキャナ３から取得した地図データを最新の地図データに更新できる。
【００６３】
＜実施形態２＞
次に、本発明の実施形態２を図８によって説明する。
図８は、実施形態２に係る地図読取システム８０の構成を示すブロック図である。前述した実施形態１では地図サーバ４に１つの版の地図データ４ａ及び地図情報データベース４ｂしか記憶されていない場合を例に説明したが、実施形態２では新版の地図データ４ａ、新版の地図情報データベース４ｂ、及び、旧版の地図情報データベース４ｃが記憶されている。旧版の地図情報データベース４ｃは「旧版の地図データに関する地図情報データ」の一例である。
【００６４】
ユーザが読み取らせようとしている地図原稿が古いと、その地図原稿に表記されている文字列が新版の地図情報データベース４ｂ上で見つからないこともあり得る。その場合、他に文字列が認識されていないと、部分地図データとして取得すべき範囲を決定できない。
そこで、実施形態に２に係るスキャナドライバは、旧版の地図情報データベース４ｃでその文字列を検索し、文字列が見つかった場合には、見つかった文字列によって示される施設の住所に対応付けられている座標が含まれる範囲の部分地図データを新版の地図データ４ａから取得する。
【００６５】
実施形態２に係る地図データ更新処理は、Ｓ１０３において旧版の地図情報データベース４ｃ上で文字列を検索し、文字列が見つかった場合にはその文字列によって示される施設の住所に対応付けられている座標が含まれる範囲の部分地図データを新版の地図データ４ａから取得する点を除いて実施形態１と実質的に同一である。
以上説明した実施形態２に係るスキャナドライバによると、地図原稿が表す地図が古くても、新しい部分地図データを取得できる可能性が高くなる。
【００６６】
＜他の実施形態＞
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
【００６７】
（１）上記実施形態では対象を施設に限定して説明したが、対象は県、市区町村、地区、字などであってもよい。その場合は認識された文字列を地図情報データベース４ｂの住所フィールド上で検索すればよい。あるいは、対象は県、市区町村、地区、字などと、施設との両方であってもよい。
【００６８】
（２）上記実施形態では認識した一つの文字列によって示される施設が複数存在する場合はそれら複数の施設の住所を表示装置に一覧表示してユーザに選択させる場合を例に説明したが、ある文字列については複数の施設が存在しても、イメージスキャナ３から取得した地図データ上で認識された別の文字列によって示される施設は一つしか見つからなかった場合には、複数の施設のうちその別の文字列によって示される施設から遠い施設を除外してもよい。
あるいは、Ｇ県Ｋ市にある「ｚｚｚ商店」の住所とＹ県Ｚ群にある「ｚｚｚ商店」の住所とが取得された場合に、イメージスキャナ３から取得した地図データ上でＫ市という文字列が認識されている場合は、Ｙ県Ｚ群の「ｚｚｚ商店」を除外してもよい。
【００６９】
つまり、一つの文字列によって示される施設が複数存在する場合であっても、認識された他の文字列から施設を一つに絞り込める場合には、ユーザに施設を選択させないようにしてもよい。
【００７０】
（３）上記実施形態では地図データ上において直線の傾きを求めることによって地図データが表す地図の向きが一致しているか否かを判定する場合を例に説明したが、地図データから方角を示す情報を取得し、その情報に基づいて判定してもよい。
例えば、地図には図５に示す記号４７や図６に示す記号５１のように方角を示す情報が表記される場合がある。このため、これらの情報を画像処理によって認識し、地図サーバ４から取得した部分地図データが表す地図の向きが、イメージスキャナ３から取得した地図データが表す地図の向きと一致するように部分地図データを回転させてもよい。
【００７１】
（４）上記実施形態ではイメージスキャナ３から取得した地図データを地図サーバ４から取得した部分地図データによって更新する場合を例に説明したが、地図サーバ４から取得した部分地図データをイメージスキャナ３から取得した地図データとは別の地図データとして記憶してもよい。
【００７２】
（５）上記実施形態ではイメージスキャナ３から取得した地図データが表す範囲と一致する範囲の部分地図データを地図サーバ４から取得する場合を例に説明したが、イメージスキャナ３から取得した地図データが表す範囲より広い範囲を表す部分地図データを地図サーバ４から取得し、取得した部分地図データから、イメージスキャナ３から取得した地図データが表す範囲と一致する範囲を抽出するようにしてもよい。
【００７３】
（６）上記実施形態では地図サーバ４に記憶されている地図データ４ａのうちイメージスキャナ３から取得した地図データが表す地図の縮尺に最も近い縮尺の地図データから部分地図データを取得する場合を例に説明したが、例えばイメージスキャナ３から取得した地図データが表す地図の縮尺よりも大きい縮尺、すなわちより拡大された地図を表す地図データ４ａから部分地図データを取得し、その取得した部分地図データを、イメージスキャナ３から取得した地図データが表す地図の縮尺に合わせて縮小するようにしてもよい。
【００７４】
（７）上記実施形態２では旧版の地図情報データベース４ｃで文字列を検索しているが、最初は新版の地図情報データベース４ｂ上で検索し、見つからなかった場合のみ旧版の地図情報データベース４ｃ上で検索するようにしてもよい。なお、旧版の地図情報データベースは、例えば年度ごとに複数あってもよい。この場合、最新のものから遡って順に検索していくとよい。また、取得した地図データから地図データの作成時期が分かるような情報が含まれている場合は、その情報に対応する地図情報データベースを検索すればよい。
【００７５】
（８）上記実施形態ではスキャナドライバを実行するＰＣ２によって地図データ更新処理を実行する場合を例に説明したが、地図データ更新処理はイメージスキャナ３によって実行されてもよい。その場合、イメージスキャナ３は画像読取装置の一例である。また、地図データ更新処理は、スキャン機能、プリント機能、コピー機能、ファクシミリ機能などを備える所謂複合機によって実行されてもよい。
【符号の説明】
【００７６】
１・・・地図読取システム、２・・・ＰＣ、３・・・イメージスキャナ、４・・・地図サーバ、４ａ・・・地図データ、４ｂ・・・地図情報データベース、４ｃ・・・地図情報データベース、５・・・通信ネットワーク、２１・・・ＣＰＵ、２９・・・スキャナドライバ、３１・・・制御部、３２・・・読取部、３３・・・通信インタフェース部、４１・・・地図原稿、４５・・・地図原稿、５０・・・部分地図データ、８０・・・地図読取システム
【図１】
2013077164.tif 000003
【図２】
2013077164.tif 000004
【図３】
2013077164.tif 000005
【図４】
2013077164.tif 000006
【図５】
2013077164.tif 000007
【図６】
2013077164.tif 000008
【図７】
2013077164.tif 000009
【図８】
2013077164.tif 000010