(57)【特許請求の範囲】
【請求項１】
地図の画像の第１の領域に符号化された情報から、前記地図の画像上の第１座標系と前記地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得部と、
前記対応関係にしたがって、前記第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換部と、
前記領域情報に応じて表示データを取得する表示データ取得部と、を備え、
前記対応関係取得部は、前記符号化された情報から前記第１の領域に埋め込まれたコードを取得するデコード部と、
前記第１の領域の前記第１座標系での参照位置を示す第１座標情報を取得する第１取得部と、
前記コードに応じて、前記第１の領域の前記第２座標系での参照位置を示す第２座標情報を取得する第２取得部と、を有し、
前記デコード部は、
前記地図の画像情報中の罫線パターンを認識する罫線認識部と、
前記罫線認識部で認識された４つの罫線で囲まれた四角形領域を複数に分割し、前記四角形領域をユニークに識別する情報に応じて埋め込まれたビットパターンを取得するビット取得部と、を有する画像表示装置。
【請求項２】
地図の画像の第１の領域に符号化された情報から、前記地図の画像上の第１座標系と前記地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得部と、
前記対応関係にしたがって、前記第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換部と、
前記領域情報に応じて表示データを取得する表示データ取得部と、を備え、
前記対応関係取得部は、前記第１座標系における前記第１の領域の参照位置を示す第１座標情報を取得する第１取得部と、
前記符号化された情報から前記第２座標系における前記第１の領域の参照位置を示す第２座標情報を取得するデコード部と、を有し、
前記デコード部は、
前記地図の画像情報中の罫線パターンを認識する罫線認識部と、
前記罫線認識部で認識された４つの罫線で囲まれた四角形領域を複数に分割し、前記第２座標情報に応じて埋め込まれたビットパターンを取得するビット取得部と、を有する画像表示装置。
【請求項３】
前記ビット取得部は、前記四角形領域内に含まれるブロックの並びのうち、前記四角形領域のいずれかの辺を選択した場合の、前記選択された辺に隣接するブロックの並びである第１ブロック群を第１の処理対象として、前記第１ブロック群の処理後に前記第１ブロック群に隣接する第２ブロック群を処理対象とする処理を繰り返すことによって、前記第１ブロック群に並行なブロック群から埋め込まれたビットパターンを取得する処理を試行し、前記試行が成功した場合に処理を終了し、前記試行が成功しなかった場合に前記四角形領域の辺のうちの未選択の辺を選択して前記試行を繰り返し、前記四角形領域のいずれの辺を基準としても、試行が成功しなかったときに、処理不可能と判定する請求項１または２に記載の画像表示装置。
【請求項４】
前記第２取得部は、前記コードを基に、ネットワーク上のサーバにアクセスし、前記コードに対応する前記第１の領域の第２座標情報を取得する請求項１に記載の画像表示装置。
【請求項５】
コンピュータが、地図の画像の第１の領域に符号化された情報から、前記地図の画像上の第１座標系と前記地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得ステップと、
前記対応関係にしたがって、前記第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換ステップと、
前記領域情報に応じて表示データを取得する表示データ取得ステップと、を実行する画像表示方法であって、
前記対応関係取得ステップは、前記符号化された情報から前記第１の領域に埋め込まれたコードを取得するデコードステップと、
前記第１の領域の前記第１座標系での参照位置を示す第１座標情報を取得する第１取得ステップと、
前記コードに応じて、前記第１の領域の前記第２座標系での参照位置を示す第２座標情報を取得する第２取得ステップと、を有し、
前記デコードステップは、
前記地図の画像情報中の罫線パターンを認識する罫線認識ステップと、
前記罫線認識ステップで認識された４つの罫線で囲まれた四角形領域を複数に分割し、前記四角形領域をユニークに識別する情報に応じて埋め込まれたビットパターンを取得するビット取得ステップと、を有する画像表示方法。
【請求項６】
コンピュータが、地図の画像の第１の領域に符号化された情報から、前記地図の画像上の第１座標系と前記地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得ステップと、
前記対応関係にしたがって、前記第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換ステップと、
前記領域情報に応じて表示データを取得する表示データ取得ステップと、を実行する画像表示方法であって、
前記対応関係取得ステップは、前記第１座標系における前記第１の領域の参照位置を示す第１座標情報を取得する第１取得ステップと、
前記符号化された情報から前記第２座標系における前記第１の領域の参照位置を示す第２座標情報を取得するデコードステップと、を有し、
前記デコードステップは、
前記地図の画像情報中の罫線パターンを認識する罫線認識ステップと、
前記罫線認識ステップで認識された４つの罫線で囲まれた四角形領域を複数に分割し、前記第２座標情報に応じて埋め込まれたビットパターンを取得するビット取得ステップと、を有する画像表示方法。
【請求項７】
コンピュータに、地図の画像の第１の領域に符号化された情報から、前記地図の画像上の第１座標系と前記地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得ステップと、
前記対応関係にしたがって、前記第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換ステップと、
前記領域情報に応じて表示データを取得する表示データ取得ステップと、を実行させるための画像表示プログラムであって、
前記対応関係取得ステップは、前記符号化された情報から前記第１の領域に埋め込まれたコードを取得するデコードステップと、
前記第１の領域の前記第１座標系での参照位置を示す第１座標情報を取得する第１取得ステップと、
前記コードに応じて、前記第１の領域の前記第２座標系での参照位置を示す第２座標情報を取得する第２取得ステップと、を有し、
前記デコードステップは、
前記地図の画像情報中の罫線パターンを認識する罫線認識ステップと、
前記罫線認識ステップで認識された４つの罫線で囲まれた四角形領域を複数に分割し、前記四角形領域をユニークに識別する情報に応じて埋め込まれたビットパターンを取得するビット取得ステップと、を有する画像表示プログラム。
【請求項８】
コンピュータに、地図の画像の第１の領域に符号化された情報から、前記地図の画像上の第１座標系と前記地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得ステップと、
前記対応関係にしたがって、前記第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換ステップと、
前記領域情報に応じて表示データを取得する表示データ取得ステップと、を実行させるための画像表示プログラムであって、
前記対応関係取得ステップは、前記第１座標系における前記第１の領域の参照位置を示す第１座標情報を取得する第１取得ステップと、
前記符号化された情報から前記第２座標系における前記第１の領域の参照位置を示す第２座標情報を取得するデコードステップと、を有し、
前記デコードステップは、
前記地図の画像情報中の罫線パターンを認識する罫線認識ステップと、
前記罫線認識ステップで認識された４つの罫線で囲まれた四角形領域を複数に分割し、前記第２座標情報に応じて埋め込まれたビットパターンを取得するビット取得ステップと、を有する画像表示プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷画像の読み取り技術に関する。
【背景技術】
【０００２】
地図情報を用いた様々なサービスが、例えば、ネットワークを通じてユーザに提供されている。例えば、ユーザは、携帯電話、携帯情報端末、パーソナルコンピュータ等、様々な情報機器を用いて、ネットワーク上のサーバにアクセスする。そして、ユーザは、ネットワーク上のサーバから、地図情報をダウンロードし、情報機器上に表示できる。また、ユーザは、表示した地図情報とともに、地図で示される地域に関連する様々な情報を取得できる。例えば、ユーザが表示対象の施設の種類を指定し、指定された種類に該当する施設を地図に重ね合わせて表示できる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２３４６８４号公報
【特許文献２】特開２００６−１６３９９２号公報
【特許文献３】特開２００２−２３７３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述のような情報機器を用いて地図上の情報を取得する場合に、ハードウェア上の制限、例えば、画面サイズ、通信速度、プロセッサの処理能力、メモリ容量等に依存して、ユーザが所望する情報を的確に取得できない場合が生じる。
【０００５】
一方、従来の紙媒体、印刷媒体等を使用すると、情報機器を用いる場合のような情報機器のハードウェア上の制限は生じにくい。しかしながら、ユーザは、紙に印刷済みの情報しか取得できないという問題がある。例えば、ユーザは、地図情報が紙に印刷された後に設置された店舗あるいは施設の情報、地図情報が紙に印刷された後に建設された建物に関する情報などを印刷済みの紙から取得できない。また、ユーザは、地図を含む看板が製作された後に設けられた施設に関する情報を制作済みの看板から取得できない。
【課題を解決するための手段】
【０００６】
発明の一観点によれば、地図の画像の第１の領域に符号化された情報から、地図の画像上の第１座標系と地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得部と、対応関係にしたがって、第１の領域を含む第２の領域の第２座標系での存在範囲を示す領域情報を取得する座標変換部と、領域情報に応じて表示データを取得する表示データ取得部と、を備える情報表示装置が提供される。
【０００７】
発明の別の一観点によれば、地図の画像の第１の領域に符号化された情報から、地図の画像上の第１座標系と地図の画像に配置する表示データの表示位置を定義する第２座標系との対応関係を取得する対応関係取得ステップと、対応関係にしたがって、第１の領域を含む第２の領域の前記第２座標系での存在範囲を示す領域情報を取得する座標変換ステップと、領域情報に応じて表示データを取得する表示データ取得ステップと、を有する情報表示方法が提供される。
【発明の効果】
【０００８】
本発明によれば、既存の地図の画像とともに表示する表示データの情報量の増大を図る
ができる。
【図面の簡単な説明】
【０００９】
【図１】コードが埋め込まれた紙地図を例示する図である。
【図２】コードが埋め込まれた四角形領域の例を示す図である。
【図３】コード埋め込み技術の概要を例示する図である。
【図４】情報機器のハードウェア構成を例示する図である。
【図５】データテーブルの例を示す図である。
【図６】表示用データのデータベースのデータ例を示す図である。
【図７】コードが埋め込まれた地図を撮影し、撮影した地図の画像に表示用データを重畳して表示する処理のフローチャートを例示する図である。
【図８】デコード処理の詳細なフローチャートを例示する図である。
【図９】矩形の四隅座標と、ネットワークを通じて取得される緯度経度情報の対応例を示す図である。
【図１０】矩形の四隅座標と、ネットワークを通じて取得される四隅緯度、経度の対応例を示す図である。
【図１１】撮影画像の座標系に変換した表示用データを撮影画像に重ね合わせて表示した例を示す図である。
【図１２】表示用アイコンのうち変換された座標が撮影画像の範囲内であるものを変換した座標上に表示する図である。
【図１３】上辺を決定する変形例の処理概要を例示する図である。
【図１４】緯度経度情報が埋め込まれた地図画像と対応する位置情報を例示する図である。
【図１５】位置情報を地図画像に埋め込む手順の概要を例示する図である。
【図１６】検出した２進数のコードを四角形領域四隅の緯度経度情報に変換する手順を例示する図である。
【図１７】データが埋め込まれた紙地図を情報機器の撮影装置で撮影し、撮影画像に追加の情報を重畳して表示する処理のフローチャートを例示する図である。
【図１８】デコード処理の詳細なフローチャートを例示する図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、一実施形態に係る情報機器について説明する。以下の実施形態の構成は例示であり、本装置は実施形態の構成には限定されない。
【実施例１】
【００１１】
実施例１の情報機器として、カメラ付き携帯電話のように、撮影装置を含む情報機器を用いた情報処理技術を説明する。実施例１では、情報機器は、撮影装置によって紙媒体、印刷媒体などに印刷された地図、広告媒体、その他の媒体に掲載された地図を撮影し、地図画像を取得する。ここで、紙媒体とは、情報が紙面に読み取り可能に描画されている媒体をいう。紙媒体は、例えば、紙面にインク、塗料などで印刷された新聞、雑誌、書籍、広告のちらし、ポスターなどを含む。紙媒体を印刷媒体ともいう。また、広告媒体は、広告のちらしの他、屋外広告の看板、屋外の大型ディスプレイの表示、テレビの画像広告、インターネットのウェブ上の画像広告等を含む。なお、屋外広告の看板に作画された媒体の場合、平面上の媒体に塗料を噴出して地図を描画する描画装置によって、地図を描画することが望ましい。また、その他の媒体は、放送媒体、インターネット上のサービスによる情報媒体等を含む。
【００１２】
さらに、実施例１の地図には、コードが地図画像に埋め込まれている。地図画像に埋め込まれたコードは、地図の示す地域をユニークに識別する情報である。情報機器は、撮影した地図画像の画像処理によって、地図画像からコードを抽出する。そして、情報機器は
、例えば、ネットワークを通じて接続されるサーバに、コードを提示する。そして、情報機器は、提示したコードを基にしてサーバに対し、地図に追加する情報を要求する。地図に追加する情報とは、コードで識別される地域に関連する情報等をいう。例えば、情報機器は、コードを基に、地図に追加する情報として「Ａという名前のレストラン」を示すアイコンをディスプレイ上で撮影画像に重畳して表示する。
【００１３】
図１は、コードが埋め込まれた紙地図を例示する図である。実施例１で紙地図は、矩形であると想定する。矩形の紙地図は、縦横方向に複数の罫線Ｌで区切られている。罫線Ｌが罫線パターンに相当する。縦横の罫線Ｌで囲まれた四角形領域には固有のコードが埋め込まれる。固有のコードとは、コードが付された四角形領域と、地図上の他のコードが付された四角形領域とを識別可能なコードをいう。
【００１４】
図２にコードが埋め込まれた四角形領域ＳＱの例を示す。データの埋め込み方法は、例えば特許第３７８４７８１号に記載の技術を利用できる。図３に、特許第３７８４７８１号に記載のコード埋め込み技術の概要を例示する。図３のコード埋め込み技術では、画像を縦横それぞれ偶数個のブロックと呼ぶ四角形領域に分割する。そして、画像に対して、１つの方向を選択する。例えば、図３で左から右に向かう横方向を考える。そして、画像を横方向の行に分割し、１つの行のブロックの並びにおいて、隣接する２つのブロックの組を形成する。例えば、図３では、右上隅の２つのブロックＡ、Ｂが例示されている。このような隣接する２つのブロックをペアブロックと呼ぶことにする。
【００１５】
そして、隣接するペアブロックの特徴量に差をつけることにより、ペアブロックに０または１のビットを割り当てる。特徴量とは、例えば、ブロックに含まれる画素の平均濃度、階調のレベル、あるいは、ブロックに含まれる画素の特定色、例えば、黄色の平均濃度等である。例えば、ブロックＡの方がブロックＢよりも特徴量が小さい場合にペアブロックのビットを０と定義する。また、ブロックＡの方がブロックＢよりも特徴量が大きい場合にペアブロックのビットを１と定義すればよい。
【００１６】
図３の例では、１行あたりに８つのペアブロック（１６ブロック）が含まれるため、１行は８ビット分のコードを表すことができる。したがって、全行（１６行）では、１２８ビット分のコードを表すことができる。ただし、実施例１では、１２８ビットのコードに限定されることはない。例えば、１６ビットの同一コードを８回繰り返して図３の画像に埋め込んでもよい。同一コードを複数回埋め込むことで、多数決によっていわゆる誤り訂正を行うことができる。なお、当然であるがブロック数が１６×１６に限定される訳ではない。また、コードを示す情報に誤り検出符号を埋め込むこともできる。
【００１７】
コードを埋め込む方向として、例えば、左上から右下に向かう方向とすることができる。すなわち、図３の左から右に向かう行方向について、最上位の行を第１行と定義し、最下位の行を第１６行と定義すればよい。そして、各行ごとに左から右に並ぶペアブロックごとにビットを定義すればよい。さらに、第１行を開始行とし、第１６行を終了行とすればよい。
【００１８】
また、埋め込み方向を右上から左下に向かう縦方向としてもよい。右端の列を第１列、左端の列を第１６列としてもよい。すなわち、右上から左下に向かってコードを埋め込んでもよい。
【００１９】
また、埋め込み方向を右下から左上に向かう横方向としてもよい。最下段の行を第１行、最上段の列を第１６行としてもよい。すなわち、右下から左上に向かってコードを埋め込んでもよい。
【００２０】
また、埋め込み方向を左下から右上に向かう縦方向としてもよい。左端の列を第１列、右端の列を第１６列としてもよい。すなわち、左下から右上に向かってコードを埋め込んでもよい。
【００２１】
埋め込み方向は、例えば、パラメータdirに対して、dir={0,1,2,3}という４つの値によって定義できる。dir=0とは、撮影画像中の罫線で区切られた四角形領域ＳＱの左上から
開始し、左から右への行方向のペアブロック群によって、右下で終了するようにコードが埋めこまれた場合である。
【００２２】
dir=1は、dir=0のコード埋め込み方向を９０度時計回りに回転したコードの埋め込み方向を指定する。すなわち、dir=1とは、撮影画像中の罫線で区切られた四角形領域ＳＱの
右上から開始し、上から下への列方向のペアブロック群によって、左下で終了するようにコードが埋めこまれた場合である。
【００２３】
dir=２は、dir=0のコード埋め込み方向を１８０度時計回りに回転したコードの埋め込
み方向を指定する。すなわち、dir=2とは、撮影画像中の罫線で区切られた四角形領域Ｓ
Ｑの右下から開始し、右から左への行方向のペアブロック列に群によって、左上で終了するようにコードが埋めこまれた場合である。
【００２４】
dir=3は、dir=0のコード埋め込み方向を２７０度時計回りに回転したコードの埋め込み方向を指定する。すなわち、dir=3とは、撮影画像中の罫線で区切られた四角形領域ＳＱ
の左下から開始し、下から上への列方向のペアブロック群によって、右上で終了するようにコードが埋めこまれた場合である。ただし、情報の埋め込み方向は、上記の場合に限定される訳ではない。例えば、上記定義とは逆に半時計周りに回転する方向で、dir={0,1,2,3}を定義してもよい。dir=0が、左上から開始するものでなくてもよい。
【００２５】
以上の方法により情報機器はコードが埋め込まれた紙地図を情報機器の撮影装置で撮影し、コードを復号する。さらに、情報機器は、コードを基に四角形領域ＳＱの四隅の緯度、経度をネットワーク経由で取得する。以下、ネットワーク経由で取得する四角形領域ＳＱの四隅の緯度、経度を緯度経度情報と呼ぶ。さらに、埋め込み方向を確定しておくことで、情報機器は、取得した緯度経度情報と、四角形領域の四隅座標とを対応付ける。ここで、四角形領域の四隅座標は、情報機器が撮影した画像上の座標軸での座標である。
【００２６】
例えば、地図上の埋め込みコードは、地図上の東西南北を基準に、地図の上方向を北とする画像で、dir=0の埋め込み方向で埋め込むものとする。さらに、ネットワーク経由で
取得される緯度経度情報は、地図上の東西南北を基準に、上を北とする画像でdir=0埋め
込み方向のときの左上点、右上点、右下点、左下点の緯度、経度が取得できるとする。
【００２７】
このような定義を前提して、情報機器が例えば埋め込み方向dir=0を検出した場合には
、情報機器は、ネットワークを通じて取得した緯度、経度を左上点、右上点、右下点、左下点の緯度、経度として用いればよい。埋め込み方向dir=0を検出できたか、否かは、撮
影された画像に対して、情報機器が埋め込み方向dir=0での復号を試行し、復号が成功し
たことによって判定できる。復号が成功したか、否かは、例えば、コードを示す情報の誤り検出において、誤りが検出されず、正常に復号できたか、否かで判定できる。また、埋め込まれる情報に、コードそのものの他、特定の記号、例えば、"code="というようなコ
マンドあるいはキーワードを埋め込んでおいてもよい。そして、情報機器は、コードとともに、コマンド、あるいはキーワードが検出されたことによって、正常に復号できたか、否かを判定してもよい。
【００２８】
また、情報機器が例えば埋め込み方向dir=1を検出した場合には、情報機器は、ネット
ワークを通じて取得した緯度、経度を反時計回りに９０回転させて左上点、右上点、右下点、左下点の緯度、経度として用いればよい。dir=2、dir=3の場合も同様である。この意味で、埋め込み方向dirは、回転角度の指定と呼ぶこともできる。
【００２９】
図９および図１０に、埋め込み方向dirの検出結果に基づく、四角形領域の四隅座標と
、ネットワークを通じて取得される緯度経度情報の対応例を示す。図９の右側の地図は、サーバに登録された緯度経度情報の位置を(1)-(4)の数字で示している。(1)-(4)の数字で示された四角形領域は、いわば、変換前の座標系ということができる。ネットワーク上のサーバは、変換前の座標系でのそれぞれの位置(1)-(4)に対応する緯度経度情報を有して
いる。
【００３０】
一方、図９の右側の地図は、撮影された地図画像を例示している。情報機器は、地図画像上で、罫線を検出し、４本の罫線で囲まれた四角形領域の頂点(1)-(4)を検出する。た
だし、地図画像上で検出された四角形領域は、サーバに登録された緯度経度情報の位置と比較して、歪み、あるいは回転を含む。そこで、情報機器は、ネットワーク上のサーバから取得する緯度経度情報と、地図画像上で検出された四角形領域の頂点の座標との間で、座標変換を実行する。したがって、地図画像上の座標系は、変換された座標系ということもできる。
【００３１】
例えば、前述のデコード処理で埋め込み方向dir=0と判定された場合には、図９の（１
）〜（４）に示す対応となる。また、埋め込み方向dir = 1の場合には、図１０の（１）
〜（４）に示す対応となる。
【００３２】
図４に画像表示装置としての情報機器１０のハードウェア構成を例示する。情報機器１０は、ＣＰＵ１１、第１記憶装置１２、第２記憶装置１３、ディスプレイ１４、操作部１５、通信部１６、メディアアクセス装置１７、撮影装置１８を有する。
【００３３】
ＣＰＵ１１は、第１記憶装置１２に実行可能に展開されたコンピュータプログラムを実行し、情報機器１０の機能を提供する。ＣＰＵ１１は、１個に限定されず、複数のコアを含むものでもよい。
【００３４】
第１記憶装置１２は、ＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が処理するデータ等を記憶する。第１記憶装置１２として、例えば不揮発性のＲＯＭ（Read Only Memory）や、ＲＡＭ（Random Access Memory）等の揮発性メモリを用いることができる。ＲＡＭは、例えばＤＲＡＭ（Dynamic RAM）、ＳＲＡＭ（Static RAM）、ＦｅＲＡＭ(Ferroelectric RAM) 、ＭＲＡＭ (Magnetoresistive RAM)等である。また、例えばＤＲＡＭとＳＲＡＭとを併用するとともに、ＳＲＡＭをキャッシュメモリとして用いることもできる。
【００３５】
第２記憶装置１３は、例えばフラッシュメモリなどによるソリッド・ステート・ドライブ（ＳＳＤ）等である。ただし、第２記憶装置１３は、例えば、ハードディスクドライブに駆動されるハードディスクであってもよい。第２記憶装置１３は、不揮発性で、例えば、外部記憶装置と呼んでもよい。ただし、第２記憶装置１３が第１記憶装置１２と一体であってもよい。また、第２記憶装置１３と第１記憶装置１２とが同一の物理アドレス空間に配置されてもよい。
【００３６】
ディスプレイ１４は、例えば、液晶ディスプレイ、エレクトロルミネッセンスパネル等である。ディスプレイ１４は、インターフェース１４Ａを通じて、ＣＰＵ１１に接続される。インターフェース１４Ａは、例えば、ＶＧＡ（Video Graphics Array）等のグラフィックスモジュール、ＤＶＩ（Digital Visual Interface）等のインターフェースである。
【００３７】
操作部１５は、キー配列、マウス、タッチパネル、静電パッド等の入力装置である。キー配列は、押しボタンの並びである。ただし、キー配列としてキーボードを接続できるようにしてもよい。静電パッドは、平面パッドを指等でなぞるユーザ操作を検知し、ユーザ操作に応じてディスプレイ上のカーソルの位置と移動状態とを制御するために使用される装置である。例えば、平面パッド下の電極の静電容量の変化によって、ユーザの指の動きが検知される。
【００３８】
通信インターフェース１６は、例えば、無線ＬＡＮ（Local Area Network）のインターフェースである。ただし、通信インターフェース１６は、携帯電話基地局との通信部、あるいはＰＨＳ（Personal Handy Phone System）基地局との通信部であってもよい。また
、通信インターフェース１６は、ＬＡＮへの接続インターフェース、すなわちＮＩＣ(Network Interface Card)とも呼ばれるものであってもよい。情報機器１０は、通信インターフェース１６を通じて、ネットワーク上のサーバ２０と通信し、種々の情報を取得する。
【００３９】
メディアアクセス装置１７は、例えば、フラッシュメモリカード等の入出力装置である。ただし、メディアアクセス装置１７は、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、ブルーレイディスクの入出力装置へのインターフェースであってもよい。
【００４０】
撮影装置１８は、例えば、ＣＣＤ（Charge Coupled Device）、ＭＯＳ（Metal Oxide Semiconductor）デバイス等である。撮影装置１８は、カメラインターフェース１８Ａを介して情報機器１０に接続される。カメラインターフェース１８Ａは、ＵＳＢ（Universal Serial Bus）のような外部インターフェースであってもよい。また、カメラインターフェース１８Ａは、撮影装置１８のメーカ独自のインターフェースであってもよい。また、撮影装置１８が情報機器１０に内蔵される場合には、カメラインターフェース１８Ａは、ＣＰＵ１０と通信可能などのようなインターフェースであってもよい。
【００４１】
以下、ネットワーク上のサーバ２０が管理するデータ例を説明する。図５にサーバ２０上のデータテーブルの例を示す。データテーブルには、地図に埋め込まれたコードに対応する四隅の緯度経度情報が格納されている。ここで、四隅とは、図２に示す罫線で区切られた四角形領域ＳＱ、すなわち、図３に示すコードが埋め込まれた四角形領域ＳＱの四隅をいう。
【００４２】
実施例１では、情報機器１０は、撮影した画像から埋め込まれたコードを検出し、コードをサーバ２０に送信する。例えば、検出したコードが10001の場合、緯度経度情報(37.25, 137.25), (37.25, 138.5), (36.5, 137.25), (36.5, 138.5) が取得される。サーバ２０は、受信したコードを基に取得した緯度経度情報を情報機器１０に返信する。
【００４３】
情報機器１０は、サーバ２０から緯度経度情報を受信すると、緯度経度情報を基に、撮影した地図画像の表示領域の所定の４頂点の緯度、経度を算出する。表示領域とは、ディスプレイに表示される画像の領域をいう。すなわち、情報機器１０は、四角形領域ＳＱの四隅座標とサーバ２０から受信した緯度経度情報との関係から、撮影した地図画像の座標系を緯度、経度に変換する変換式を算出する。そして、情報機器１０は、撮影した地図画像の表示領域、例えば、撮影画像の有効な画素領域全体の４頂点座標に対応する緯度、経度を算出する。ただし、地図画像の表示領域が四角形領域に限定されるわけではない。例えば、地図画像の表示領域四角形の角が丸い曲線状になった領域でもよい。また、円、楕円、その他、曲線を含む領域でもよい。要するに、情報機器１０は、撮影した地図画像の座標系を緯度、経度に変換する変換式を取得することによって、変換前の地図画像の表示領域が四角形以外の形状であっても、撮影した地図画像の座標系を緯度、経度に変換することができる。そこで、ただし、地図画像の表示領域が四角形以外の場合でも、その地図
画像の表示領域に含まれる４頂点を想定することはできる。そこで、以下では、「地図画像の表示領域の所定の４頂点」という用語を用いる。「地図画像の表示領域の所定の４頂点」とは、例えば、地図画像の表示領域に含まれる、情報機器１０で事前に設定した４頂点と考えればよい。
【００４４】
そして、情報機器１０は、表示領域に表示するデータ（以下、表示用データ）をサーバ２０から取得する。そのため、情報機器１０は、表示領域の４頂点座標に対応する緯度、経度をサーバ２０に送信する。サーバ２０は、受信した緯度、経度の範囲に含まれる表示データを情報機器１０に返信する。
【００４５】
実施例１では、表示用データを取得するサーバは、四角形領域の緯度経度情報を取得したサーバ２０と同じと仮定する。ただし、表示用データを取得するサーバは、四角形領域の緯度経度情報を取得したサーバ２０以外の他のサーバでもよい。実施例１では、表示用データとしては、地図上の施設を示すデータを想定する。
【００４６】
図６に、表示用データのデータベースのデータ例を示す。表示用データのデータベースは、例えば、表形式である。表の各行が１つの表示用データとなる。図６では、データ１０１〜データ１１４の符号が付されている。データ１０１〜データ１１４のそれぞれは、業種、店舗名、緯度、経度、表示用アイコンのフィールドを含む。
【００４７】
業種とは、それぞれの表示用データが表す施設の業種である。店舗名は、施設の固有名称、例えば、商店の名称である。緯度と経度は、その表示用データで示す施設の地図上の位置である。表示用アイコンは、地図上に施設を表示するときの絵柄、あるいは文字パターンなどのデータを含むファイル名である。
【００４８】
図７に、コードが埋め込まれた地図を撮影し、撮影した地図の画像に表示用データを重畳して表示する処理のフローチャートを例示する。情報機器１０のＣＰＵ１１は、メモリ上に実行可能に展開されたコンピュータプログラムにより図７の処理を実行する。図７の処理では、ユーザが、操作部１５を通じて、地図読み取り処理の開始を指示する。地図読み取り処理の開始の指示を受け取ると、情報機器１０は、カメラインターフェース１８Ａを経由して、撮影装置１８にて撮影された撮影画像を取得する（Ｓ１）。情報機器１０は、取得した撮影画像に対して、デコード処理を実行する（Ｓ２）。デコード処理の詳細は、図８により後述する。
【００４９】
次に、情報機器１０は、デコードに成功したか否かを判定する（Ｓ３）。デコードに成功した場合には、情報機器１０は、撮影画像内の四角形領域の四隅座標、四角形領域に埋め込まれたコード、埋め込み方向という３種類の情報を検出できる。なお、Ｓ３の判定は、Ｓ２でのデコード処理が成功したか否かの判定である。
【００５０】
デコードに成功した場合には、情報機器１０は、検出したコードから四角形領域の四隅の緯度経度情報をサーバ２０に問い合わせる（Ｓ４）。情報機器１０のＣＰＵ１１は、第２取得部として、Ｓ４の処理を実行する。四角形領域の四隅の緯度経度情報が、第２座標系での参照位置を示す第２座標情報に相当する。参照位置とは、座標変換する際の基準となる座標と考えることができる。実施例１では、緯度経度情報による４点の参照位置と、撮影画像の座標系の４点の参照位置との関係から、座標変換のための対応関係が決定される。
【００５１】
次に撮影画像中の四角形領域の四隅座標および、該四隅の経度緯度情報、さらに埋め込み方向を基に、撮影画像の所定の四隅の緯度、経度を計算する（Ｓ５）。情報機器１０のＣＰＵ１１は、緯度経度情報取得部して、Ｓ４およびＳ５の処理を実行する。Ｓ５の計算
は、射影変換による座標変換により求める。実施例１の射影変換は、前述の緯度経度情報を変換後の４点の座標とし、デコード処理で検出した四角形領域の四隅座標を変換前の４点の座標として、緯度経度情報と四角形領域の四隅座標とを対応付ける。この際に、４点の対応は、デコード処理で求めた埋め込み方向より決定する。情報機器１０のＣＰＵ１１は、対応関係取得部として、Ｓ１−Ｓ４の処理を実行する。
【００５２】
今、変換前の４点の座標を(X1,Y1)(X2,Y2)(X3,Y3)(X4,Y4)、変換後の座標を(x1,y1)(x2,y2)(x3,y3)(x4,y4)とすると、射影変換の連立方程式は次のように表され、変換係数Ａ〜Ｈを求めることができる。
【００５３】
X1*A + Y1*B + C - x1*X1*G - x1*Y1*H = x1
X1*D + Y1*E + F - y1*X1*G - y1*Y1*H = y1
X2*A + Y2*B + C - x2*X2*G - x2*Y2*H = x2
X2*D + Y2*E + F - y2*X2*G - y2*Y2*H = y2
X3*A + Y3*B + C - x3*X3*G - x3*Y3*H = x3
X3*D + Y3*E + F - y3*X3*G - y3*Y3*H = y3
X4*A + Y4*B + C - x4*X4*G - x4*Y4*H = x4
X4*D + Y4*E + F - y4*X4*G - y4*Y4*H = y4
情報機器１０は、以上から求めたＡ〜Ｈの値を使った下式の座標変換式を作成する。そして、情報機器１０は、下記座標変換式を用いて、撮影画像中の表示領域四隅の座標を緯度、経度に変換する。ここで、Ｘ、Ｙは撮影画像の座標系、x、yは緯度、経度である。撮影画像の座標系が第１座標系に相当し、緯度、経度が第２座標系に相当する。
【００５４】
x = (A*X+B*Y+C)/(G*X+H*Y+1)
y = (D*X+E*Y+F)/(G*X+H*Y+1)
例えば、以下のデータを仮定する。撮影画像における四角形領域の四隅座標：
(X1, Y1) = (36, 61), (X2, Y2) = (220, 86), (X3, Y3) = (13, 191), (X4, Y4)=(201, 215)；
該四隅座標の緯度・経度：
(x1, y1) =(37.25,137.25), (x2, y2) =(37.25,138.5), (x3, y3) =(36.5,137.25), (x4,
y4) =(36.5,138.5)；
この場合、撮影画像の座標系を緯度、経度に変換するための変換係数Ａ〜Ｈは上記連立方程式により以下のように求められる。
【００５５】
A=-0.0022589372，B=-0.00040533077，C=37.5744860305，D=-0.0046212872，E=0.0209821614，F=136.9413073490，G=-0.0000817367，H=0.0001443715
また，緯度・経度(x, y)から撮影画像の座標系(X,Y)への変換式、変換係数Ａ’〜H’は以下となる。
【００５６】
X = (A’*x+B’*y+C’)/(G’*x+H’*y+1)
Y = (D’*x+E’*y+F’)/(G’*x+H’*y+1)
A’=-24.5936503114，B’=-118.3265988151，C’=17127.8929059696，D’=133.3829560990，E’=-16.4861005621，F’=-2754.1678566003，G’=-0.0212668996，H’=-0.0072915084
変換係数Ａ〜Ｈを使って、撮影画像の所定の四隅座標  (0, 0), (240, 0), (0, 320), (240, 320)  の緯度，経度を計算すると、それぞれ(37.57,136.94), (37.77,138.55), (35.79,137.31), （35.95, 138.86）となる。
【００５７】
情報処理装置１０は、撮影画像の所定の四隅の緯度、経度を求めた後、四隅の範囲内にある緯度・経度を持つ所定の条件の表示用データをサーバから取得する（Ｓ６）。情報機
器１０のＣＰＵ１１は、表示データ取得部として、Ｓ６の処理を実行する。上述のように、表示用データを取得するサーバは、四角形領域の緯度経度情報を取得したサーバ２０と同じでもよいし、他のサーバでもよい。
【００５８】
表示用データの検索条件が「Ａという名前のレストラン」である場合、図６のデータベースに対する検索条件は以下のようになる。
【００５９】
「業種=レストラン」  かつ
「店舗名=Ａ」  かつ
「四隅の緯度最小値35.79 ＜＝  店舗の緯度  ＜＝  四隅の緯度最大値37.77」  
かつ
「四隅の経度最小値136.94  ＜＝  店舗の緯度  ＜＝  四隅の経度最大値138.86」；
この条件に合致するデータは図６のデータ102、データ109、データ110、データ112の４件である。そこで、情報機器１０は、これらの緯度、経度および表示用アイコンデータをサーバから取得する。
【００６０】
次に、情報機器１０は、表示用データが取得できたか否かを判定する（Ｓ７）。
【００６１】
そして、表示用データを取得できた場合、情報機器１０は、上記変換式と上記変換係数Ａ’〜H’を用いて、緯度、緯度を撮影画像の座標に変換する（Ｓ８）。
【００６２】
上記４件のデータについて求めた撮影画像の座標（Ｘ，Ｙ）を以下に示す。なお、実施例１では、例えば、撮影画像の表示領域の左上点を原点とする。
【００６３】
データ102 (X, Y)= (28, 188)，
データ109 (X, Y)= (-11, 130)，
データ110 (X, Y)= (197, 115)，
データ112 (X, Y)= (152, 284)；
これらの撮影画像の所定の四隅座標の緯度、経度は全て異なっているため、検索したデータには撮影画像の範囲外のものが含まれる場合がある。撮影画像の範囲外のデータが含まれる場合には、撮影画像の座標に変換した際に、撮影画像の座標がＸ、ＹのいずれかがマイナスになるかX>240、Ｙ＞320となるので、該当するデータについては表示データから除外する。本例では、データ109のＸの値が-11となり、撮影画像の範囲外に相当するので、データ109を除外し、データ102、110、112の3個のデータが表示データとなる。図１１に
、撮影画像の座標系に変換したデータ102、110、112を撮影画像に重ね合わせて表示した
例を示す。
【００６４】
最後に、情報機器１０は、図１２で示すようにディスプレイ１４上に撮影画像と重畳して、表示用アイコンのうち変換された座標が撮影画像の範囲内であるものを変換した座標上に表示する（Ｓ９）。なお、図１２では、情報機器１０として、カメラ付き携帯電話を想定している。すなわち、紙に印刷された地図を撮影し、得られた地図画像からコードを取得し、取得されたコードに基づき、レストランを示すアイコンが撮影された地図画像に重畳して表示されている。
【００６５】
一方、表示用データを取得できなかった場合、すなわち、撮影した画像中の表示領域に、表示用データが存在しなかった場合、情報機器１０は、表示用データなしで撮影画像を表示する。
【００６６】
図８に、デコード処理の詳細なフローを例示する。情報機器１０のＣＰＵ１１は、メモ
リ上に実行可能に展開されたコンピュータプログラムにより図８の処理を実行する。ＣＰＵ１１は、デコード部として、図８の処理を実行する。
【００６７】
まず撮影画像中の罫線で囲まれた四角形領域の四隅座標を検出する（Ｓ２０）。四隅座標の検出方法として、罫線の一般的な検出方法であるハフ変換を用い、４辺を検出してそれらの交点を求める。情報機器１０のＣＰＵ１１は、罫線認識部および第１取得部として、Ｓ２０の処理を実行する。すなわち、情報機器１０のＣＰＵ１１は、罫線認識部として４辺を検出する。さらに、情報機器１０のＣＰＵ１１は、第１取得部として、４辺の交点である四隅の座標を算出する。４辺の交点である四隅の座標が、第１座標系での参照位置を示す第１座標情報に相当する。
【００６８】
ハフ変換は、ＸＹ座表系のＮ個の点のうちの最も多くの点を通過する直線ＬＭを求める手法として知られている。例えば、直線ＬＭの式をｙ＝ａ＊ｘ＋ｂと仮定する。ここで、＊は乗算記号である。このとき、ＸＹ座表系のＮ個の点（ｘｉ，ｙｉ）ｉ＝１，Ｎを通る複数の関係式ｙｉ＝ａｉ＊ｘｉ＋ｂｉが作成できる。関係式ｙｉ＝ａｉ＊ｘｉ＋ｂｉは、座標系（ａ，ｂ）では、複数の直線の軌跡を構成する。そして、もし、ＸＹ座表系のＮ個の点（ｘｉ，ｙｉ）ｉ＝１，Ｎが一直線上（傾きａ０、Ｙ切片ｂ０）にある場合には、関係式ｙｉ＝ａｉ＊ｘｉ＋ｂｉは、一点（ａ０，ｂ０）を通る直線群となる。そこで、（ａ，ｂ）座標系で最も多くの直線が通過する点（ａ０，ｂ０）を求めることで、ＸＹ座表系のＮ個の点（ｘｉ，ｙｉ）ｉ＝１，Ｎの最も多数を通る直線を求めることができる。
【００６９】
次に、情報機器１０は、ハフ変換によって、四角形領域の４辺が特定でき、四隅座標が全て検出できたか否かを判定する（Ｓ２１）。四隅座標が全て検出できた場合には、情報機器１０は、四角形領域の４辺を上辺、右辺、下辺、左辺の順に、埋め込み領域の上辺とした場合についてデコード処理を行う（Ｓ２２−Ｓ２６）。情報機器１０のＣＰＵ１１は、ビット取得部としてＳ２２−２６の処理を実行する。
【００７０】
デコード処理は、上辺方向に並ぶペアブロックに対して、画像の特徴量からビット０かビット１かを判定する処理である。すなわち、上辺に隣接するペアブロックの並びをビットの埋め込みと同一方向に辿り、ペアブロック内のブロック間で、特徴量を比較すればよい。上辺に隣接するペアブロックの並びが第１ブロック群に相当する。そして、ビット埋め込み時と同一の定義にしたがって、ビット＝０またはビット＝１を判定すればよい。例えば、図３に示した画像のブロックの場合には、１行について８ビットの情報が得られることになる。また、同一のコードを複数回繰り返して埋め込んでいる場合には、多数決処理で誤り訂正を行ってもよい。
【００７１】
すなわち、情報機器１０は、まず、初期値dir=0を設定する（Ｓ２２）。そして、情報
機器１０は、dirが４に達するまで以下の処理を実行する（Ｓ２３−２６）。すなわち、dir=0の場合には、画像の座標系を基準した左上から右下に向かって、左から右に向かう行方向にデコード処理を実行する。すなわち、この場合には、撮影画像中の上辺を、コードが埋め込まれた画像の上辺とする。
【００７２】
dir=1の場合には、９０度時計回りに回転した方向にデコード処理を実行する。すなわ
ち、情報機器１０は、画像の座標系を基準した右上から左下に向かって、上から下に向かう列方向にデコード処理を実行する。すなわち、この場合には、撮影画像中の右辺を、コードが埋め込まれた画像の上辺とする。
【００７３】
dir=2の場合には、１８０度時計回りに回転した方向にデコード処理を実行する。すな
わち、情報機器１０は、画像の座標系を基準した右下から左上に向かって、右から左に向かう列方向にデコード処理を実行する。すなわち、この場合には、撮影画像中の下辺を、
コードが埋め込まれた画像の上辺とする。
【００７４】
dir=3の場合には、２７０度時計回りに回転した方向にデコード処理を実行する。すな
わち、情報機器１０は、画像の座標系を基準した左下から右上に向かって、下から上に向かう列方向にデコード処理を実行する。すなわち、この場合には、撮影画像中の左辺を、コードが埋め込まれた画像の上辺とする。
【００７５】
そして、情報機器１０は、デコードに成功したか否かを判定する（Ｓ２５）。デコードに成功したか、否かは、例えば、デコードされた情報の誤り検出符号によって誤りが検出されなかったこと、デコードされた情報に所定のコマンドまたはキーワードが含まれていたこと、あるいは、デコードされた緯度と経度が特定の範囲、例えば、日本の緯度、経度の範囲、あるいは、０〜３６０度の範囲であったことなどで判定できる。デコードに成功しなかった場合、情報機器１０は、制御をＳ２３に戻す。デコードに成功した場合、情報機器１０は、検出したコード、四隅座標、埋め込み方向を記録する（Ｓ２７）。四隅座標が検出できなかった場合（Ｓ２１でＮＯ場合）、あるいは、どの方向からもデコードに成功しなかった場合（Ｓ２３でＮＯの場合）にはデコード失敗とする（Ｓ２８）。そして、情報機器１０は、図７のＳ３の判定に制御を進める。すなわち、Ｓ２３−Ｓ２６の処理の繰り返しによって、dir={0,1,2,3}のいずれかの埋め込み方向への試行で、デコードに成
功した場合には、図７のＳ３でデコード成功となる。一方、Ｓ２３−Ｓ２６の処理の繰り返しによって、dir={0,1,2,3}のどの埋め込み方向においても、デコードに成功しなかっ
た場合に、図７のＳ３でデコード失敗となる。
【００７６】
以上述べたように、実施例１の情報機器１０は、撮影装置１８で撮影した地図の画像に埋め込まれたコードを取得し、ネットワーク上のサーバ２０からコードに対応する緯度経度情報を取得する。そして、情報機器１０は、コードが埋め込まれた四角形領域の四隅座標と、緯度経度情報との関係から、地図画像の座標系と緯度、経度との変換式を作成する。そして、情報機器１０は、地図画像の表示領域に含まれる施設の表示用データをネットワーク上のサーバ２０等から取得し、撮影した地図画像に重ね合わせて表示する。
【００７７】
したがって、情報機器１０では、ネットワーク上のサーバ２０等から地図データをダウンロードしなくてもよいので、通信データ量を削減できる。また、情報機器１０は、紙データとして与えられる地図の画像を撮影するので、ディスプレイ１４の表示サイズが小さい場合でも、紙のサイズがディスプレイ１４の表示サイズよりも大きな地図と組み合わせることで、ユーザの使い勝手を向上できる。例えば、雑誌、パンフレット、看板等に大きな範囲の地図を表示しておき、撮影装置１８で地図の一部を撮影した場合、撮影された地図の一部が全体の地図のどの範囲であるかをユーザが認識しやすくなる。
【００７８】
また、既存の地図を撮影した地図の画像に、ネットワーク上のサーバ２０等から取得した表示用データを重畳して表示するので、表示用データとして、最新のものを取得できる可能性が高まる。ユーザは、例えば、地図が印刷された後に設置された施設、建設されたビル等に関する情報を地図に重畳して表示できる。
【００７９】
さらに、座標を撮影画像用に射影変換してデータを表示することで、カメラで地図を撮影する際に、カメラが傾き、画像の縦横の方向と地図上の罫線方向とが傾いて撮影された場合でも、表示位置を補正できる。
【００８０】
さらに、実施例１では、情報機器１０は、地図画像の罫線を認識し、罫線４つの罫線で囲まれた四角形領域を抽出する。したがって、ユーザが特定の領域を意識せず、大まかに地図を撮影した場合でも、情報機器１０は、撮影された地図に重畳する追加の情報を取得でき、ユーザの使い勝手がよい。さらに、上記図８の処理では、dir={0,1,2,3}のそれぞ
れに対して順次、デコードが成功するまでデコード処理を繰り返す。したがって、撮影装置１８による画像が９０度単位で回転した場合でも、情報機器１０は、緯度経度情報を取得できる可能性を高めることができる。
【００８１】
また、撮影された地図上に複数の四角形領域が含まれていた場合には、それぞれの四角形領域に対してデコード処理を実行すればよい。そして、最初にデコードに成功したときに残りの四角形領域でのデコード処理を中止すればよい。ただし、複数の四角形領域の頂点座標を基に、射影変換の係数を決定してもよい。複数の四角形領域の頂点座標を反映することで、射影変換の変換精度を高めることができる。
【００８２】
さらに、実施例１では、地図にコードを埋め込んでおき、デコードしたコードを基に、情報機器１０がサーバ２０に、緯度経度情報を問い合わせる。したがって、地図自体に埋め込む情報を単純化できる。例えば、とりあえず、コードを埋め込む地図上の四角形領域と、ユニークに識別できるコードを確定しておき、コードを埋め込んだ地図を作成すればよい。そして、そのコードをどのように用いるかは、地図が作製された後の段階で、情報機器１０およびサーバ２０のアプリケーションプログラムによって決定すればよい。すなわち、実施例１の構成では、極めて簡単、早期にコードが埋め込まれた地図を作成し、徐々にサービスの向上、充実を図ることができる。
【００８３】
＜変形例＞
上記実施例１では、dir={0,1,2,3}として、処理を説明した。例えば、画像の座標系で
検出された罫線が傾いていた場合には、罫線で区切られた四角形領域の４頂点を包含する座標軸方向に辺を持つ、矩形の４頂点の距離から、上辺を決定すればよい。
【００８４】
図１３に、上辺を決定する処理概要を例示する。例えば、ハフ変換によって得られた罫線が撮影画像の座標系において、Ｌ１、Ｌ２、Ｌ３、Ｌ４のように傾いていた場合を想定する。この場合には、情報機器１０は、罫線Ｌ１−Ｌ４で囲まれた四角形領域を包含する矩形ＰＵＬ、ＰＵＲ、ＰＤＲ、ＰＤＬ（点線の矩形）を作成する。そして、除法機器１０は、罫線Ｌ１−Ｌ４で囲まれた四角形領域を包含する矩形の左上点ＰＵＬに最も距離が近い頂点Ｐ１を罫線Ｌ１−Ｌ４で囲まれた四角形領域の左上点とする。そして、dir=0のと
き、情報機器１０は、頂点Ｐ１と頂点Ｐ１に対して時計回り方向の次の頂点Ｐ２とを決定する。そして、情報機器１０は、頂点Ｐ１、Ｐ２を両端とする辺Ｌ２をコードが埋め込まれた画像の上辺としてデコード処理を実行すればよい。
【００８５】
また、dir=1のとき、情報機器１０は、上記頂点Ｐ２と次の頂点Ｐ３とを決定する。そ
して、情報機器１０は、頂点Ｐ２、Ｐ３を両端とする辺Ｌ３をコードが埋め込まれた画像の上辺としてデコード処理を実行すればよい。また、dir=2のとき、情報機器１０は、上
記頂点Ｐ３と次の頂点Ｐ４とを決定する。そして、情報機器１０は、頂点Ｐ３、Ｐ４を両端とする辺Ｌ３をコードが埋め込まれた画像の上辺としてデコード処理を実行すればよい。また、dir=3のとき、情報機器１０は、上記頂点Ｐ４と次の頂点Ｐ１とを決定する。そ
して、情報機器１０は、頂点Ｐ４、Ｐ１を両端とする辺Ｌ１をコードが埋め込まれた画像の上辺としてデコード処理を実行すればよい。
【００８６】
なお、デコード処理の前に、一旦、Ｌ１−Ｌ４が撮影画像の座標軸（あるいは、図１３の点線の矩形の辺）に平行となるように、座標変換するようにしてもよい。例えば、辺Ｌ２が点線の矩形の上辺ＬＵに平行になるように、座標変換した後に、デコード処理を行ってもよい。そして、埋め込まれたコードが確定した後は、傾いた四角形領域Ｌ１−Ｌ４の頂点Ｐ１−Ｐ４の座標と、緯度経度情報との座標の変換式を作成すればよい。
【実施例２】
【００８７】
図１４から図１９を参照して実施例２を説明する。上記実施例１では、情報機器１０は、地図画像に埋め込まれたコードを得た後、サーバ２０から緯度経度情報を取得した。実施例２では、緯度経度情報が埋め込まれた地図を用いる処理を説明する。すなわち、情報機器１０は、撮影装置１８で地図を撮影し、地図画像を生成する。そして、情報機器１０は、生成した地図画像から緯度経度情報を読み取る。そして、情報機器１０は、読み取った緯度経度情報を基に表示用データをネットワーク上のサーバ２０等から取得する。そして、情報機器１０は、例えば、追加の情報として「Ａという名前のレストラン」を示すアイコンを取得する。そして、情報機器１０は、ディスプレイ１４上に撮影画像と重畳して、追加の情報を表示する。  
【００８８】
図１４は、緯度・経度の情報を埋め込まれた地図画像と対応する位置情報を例示する図である。地図画像は、緯度x、 経度yとすると、
四隅左上(x1, y1) =(37.25,137.25),
四隅右上(x2, y2) =(37.25,138.5), 
四隅左下(x3, y3) =(36.5,137.25),
四隅右下(x4, y4) =(36.5,138.5)；
である。そこで、情報機器１０は、四隅左上を基準として、緯度-0.75、経度+1.25の範囲の地図である。
【００８９】
図１５に、位置情報を地図画像に埋め込む手順の概要を例示する。図１５のように、情報機器１０は、四隅座標に対応する緯度、経度を２進数の埋め込みコードに変換する。
【００９０】
情報機器１０は、まず、四隅左上の緯度、経度を５桁１０進数に変換し、さらに変換で得られた５桁１０進数を１７桁の２進数に変換する。そして、情報機器１０は、四隅左上から四隅左下方向への緯度範囲を符号付き３桁の１０進数データに変換する。さらに、情報機器１０は、変換された１０進数データを符号部１桁、データ部１１桁の２進数データに変換する。
【００９１】
さらに、情報機器１０は、四隅左上から四隅右上方向への経度範囲を符号付き３桁の１０進数データに変換する。そして、情報機器１０は、変換された１０進数を符号部１桁、データ部１１桁の２進数データに変換する。以上の手順により、四隅左上緯度部。四隅左上経度部、緯度範囲部、経度範囲部を持つ２進数５６桁の埋め込みコードが作成される。なお、２進数５６桁に対して、多数決処理による誤り訂正を行うためには、画像内の埋め込みビット数は１６８ビットとなる。そこで、例えば、２０×２０ブロック、２００ビット分のデータを埋め込めるブロック構成としてもよい。また、さらに、ブロック数を増加し、より多くの情報によって多数決による誤り訂正が実行できるようにしてもよい。
【００９２】
作成された埋め込みコードは、例えば、図３に示した特許第３７８４７８１に記載の方法で画像に埋め込まれる。すなわち、情報機器１０は、図３に示すように画像をブロックに分割し隣接するペアブロックの特徴量に差をつけることにより、ペアブロックに０または１のビットを割り当てる方法により画像に埋め込む。例えば、特許第３７８４７８１に記載のように、黄色の濃度が、本来の画像における黄色の濃度から変更されたとしても、人の目には感じにくいという特徴がある。そこで、例えば、ビットパターンに対応して、ペアブロックの黄色の濃淡を変更することで、コードが地図画像に埋め込まれる。
【００９３】
図１６に、検出した２進数のコードを四角形領域四隅の緯度経度情報に変換する手順を例示する。情報機器１０は、まず、２進数のコードの上位１７桁を５桁の１０進数に変換する。そして、情報機器１０は、得られた１０進数の小数点を二桁桁下げして四角形領域の四隅左上の緯度として取得する。
【００９４】
同様に、情報機器１０は、２進数のコードの次の１７桁を５桁の１０進数に変換する。そして、情報機器１０は、小数点を二桁桁下げして四角形領域の四隅左上の経度として取得する。
【００９５】
さらに、情報機器１０は、２進数のコードの次の１２桁を符号部１桁＋１１桁に分割し、符号部が０ならば−、１ならば＋に変換する。そして、情報機器１０は、１１桁部分は３桁の１０進数に変換する。さらに、情報機器１０は、得られた１０進数の小数点を二桁桁下げして四角形領域の四隅左上から四角形領域四隅左下までの緯度範囲として取得する。
【００９６】
同様に、情報機器１０は、２進数のコードの次の１２桁を、符号１桁＋１１桁に分割し、符号部が０ならば−、１ならば＋に変換し、１１桁部分は３桁の１０進数に変換する。そして、情報機器１０は、得られた１０進数の小数点を二桁桁下げして四角形領域の四隅左上から四角形領域四隅右下までの経度範囲として取得する。以上の処理によって、四隅左上緯度経度をx1、 y1とすると(x1, y1) ＝(37.25,137.25)、緯度範囲-0.75、経度範囲+1.25が取得される。これをもとに、四角形領域の四隅の残りの緯度経度を下式により求める。
四隅右上緯度経度(x2, y2) =（x1，y1＋経度範囲）=(37.25,138.5)；
四隅左下緯度経度(x3, y3) =（x1＋緯度範囲，y1）= (36.5,137.25)；
四隅右下緯度経度(x4, y4) =（x1＋緯度範囲，y1＋経度範囲）= (36.5,138.5)；
なお、dir=0の場合には、撮影画像において検出した領域の四隅左上が四角形領域四隅
左上に割り当てられる。また、dir=1の場合には、撮影画像において検出した領域の四隅
右上が四角形領域四隅左上に割り当てられる。また、dir=2の場合には、撮影画像におい
て検出した領域の四隅右下が四角形領域四隅左上に割り当てられる。また、dir=3の場合
には、撮影画像において検出した領域の四隅左下が四角形領域四隅左上に割り当てられる。
【００９７】
図１７に、データが埋め込まれた紙地図を情報機器１０の撮影装置１８で撮影し、撮影画像に追加の情報を重畳して表示するフローチャートを例示する。図１７の処理において、図７と同一の処理には、同一の符号が付されている。
【００９８】
まず、情報機器１０は、実施例１と同様、ユーザの指示に応答して、地図の読み取りを開始する。地図読み取り処理により、カメラインターフェース１８Ａを経由して紙地図を撮影したカメラ撮影画像が取得される（Ｓ１）。取得された撮影画像に対して、デコード処理が実行される（Ｓ２Ａ）。情報機器１０のＣＰＵ１１は、対応関係取得部として、Ｓ１−Ｓ２Ａの処理を実行する。
【００９９】
そして、デコードに成功した場合には（Ｓ３の判定でＹＥＳの場合）、情報機器１０のＣＰＵ１１は、実施例１と同様に、情報機器１０は、撮影画像四隅の緯度、経度情報を算出する（Ｓ５Ａ）。すなわち、実施例では、地図画像に埋め込まれた情報から、緯度、経度を求め、射影変換を実行する。したがって、実施例２では、情報機器１０は、四角形領域四隅の緯度経度情報をサーバ２０から取得しなくてもよい。情報機器１０のＣＰＵ１１は、座標変換部として、Ｓ５Ａの処理を実行する。Ｓ６以下の処理は、図８と同様であるので、その説明を省略する。
【０１００】
図１８に、デコード処理（図１７のＳ２Ａ）の詳細なフローチャートを例示する。なお、Ｓ２０−Ｓ２６の処理は、画像からの埋め込み情報のデコード処理であり、基本的な手順は図８の場合と同様である。ただし、図８の場合には、画像への埋め込み情報が地域を識別するコードであったのに対して、図１８の場合には、画像への埋め込み情報が緯度・経度の情報（図１５、図１６参照）である点が相異する。情報機器１０のＣＰＵ１１は、
メモリ上に実行可能に展開されたコンピュータプログラムにより図１８の処理を実行する。ＣＰＵ１１は、デコード部として、図１８の処理を実行する。
【０１０１】
情報機器１０は、まず撮影画像中の罫線で囲まれた四角形領域の四隅座標を検出する（Ｓ２０）。四角形領域の四隅座標が、第１座標系での参照位置を示す第１座標情報に相当する。四隅座標が全て検出できた場合には（Ｓ２１でＹＥＳ）、四角形領域の４辺を上辺、右辺、下辺、左辺の順に、埋め込み領域の上辺とした場合について、特許第3784781の
方法でデコード処理を行う（Ｓ２３−Ｓ２６）。
【０１０２】
デコードに成功した場合には（Ｓ２６でＹＥＳ）、検出した２進数のコードを四角形領域四隅の緯度経度情報に変換する（Ｓ２７Ａ）。デコードに成功したか、否かは、実施例１の図８の場合と同様に判定する。四隅座標が検出できなかった場合、あるいは、どの方向からもデコードに成功できなかった場合には、情報機器１０は、デコード失敗とする。なお、四角形領域の四隅の緯度経度情報が第２座標系での参照位置を示す第２座標情報に相当する。
【０１０３】
デコード成功の場合（図１７のＳ３でＹＥＳ）、情報機器１０は、制御を図１７のＳ５Ａに進め、撮影画像中の四角形領域の四隅座標および、該四隅の緯度経度情報、さらに回転角度をもとに、撮影画像四隅の緯度、経度を計算する。
【０１０４】
以上述べたように、実施例２の処理によれば、四角形領域の四隅の緯度と経度が撮影画像に埋め込まれているので、情報機器１０は、サーバ２０に、緯度と経度を問い合わせなくても、撮影された地図画像の表示領域の緯度と経度を算出できる。
【０１０５】
以上のように、開示の技術の一側面は、地図に関連する画像表示技術に関する。すなわち、情報機器１０は、地図の第１の領域の座標情報に相当する罫線で囲まれた四角形領域の座標と緯度経度情報との対応関係に基づいて、画像の座標系と緯度、経度との座標変換の式を作成する。そして、情報機器１０は、第１の領域を含む第２の領域に相当する、地図画像の表示領域の緯度経度情報を取得する。さらに、情報機器１０は、取得した地図画像の表示領域の緯度経度情報から、地図画像に重畳して表示する表示用データを取得し、撮影された地図に表示される情報について、情報量の増大を図る。
【０１０６】
《その他の変形例》
上記実施例１、実施例２では、第２座標系として、緯度経度が用いられた。しかし、第２座標系は、緯度と経度以外の座標系によって定義してもよい。すなわち、表示用データのデータベース（図６参照）において、それぞれの表示用データに該当する施設の位置は、緯度経度ではなく、他の座標系で表してもよい。要するに、情報機器１０が、表示用データのデータベースにアクセスする際に、表示用データで示される施設の位置が、どのような座標系で定義されているかを認識できればよい。したがって、情報機器１０で、図７あるいは図１７の処理を実行するコンピュータプログラムと、表示用データのデータベースとで、第２座標系として共通の座標系を用いればよい。そのためには、表示用データのデータベースの座標系を事前に決定しておけばよい。そして、実施例１の手順または実施例２の手順で表示用データの座標系での四角形の４頂点の座標を取得すればよい。その場合に、表示用データの座標系での最大値や最小値などをサーバ２０から、情報機器１０に引き渡すことで、デコード結果が正しいか否かの判定に用いてもよい。ただし、緯度経度を用いることで、情報機器１０が複数のサーバから表示用データを取得するようなシステムにおいては、表示用データを汎用的に作成できるという利点はある。
【０１０７】
以上述べた処理は、紙媒体、印刷媒体、屋外において塗料で形成された看板上の地図、大型ディスプレイ上に表示された地図、インターネット上のウェブサイトに表示された地
図等、様々な地図に対して適用できる。
【０１０８】
《コンピュータが読み取り可能な記録媒体》
コンピュータその他の機械、装置（以下、コンピュータ等）に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【０１０９】
ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ブルーレイディスク、ＤＡＴ、８ｍｍテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスクやＲＯＭ（リードオンリーメモリ）等がある。
【０１１０】
１０  情報機器 
１１  ＣＰＵ
１２  第１記憶装置
１３  第２記憶装置
１４  ディスプレイ
１５  操作部
１６  通信インターフェース
１７  メディアアクセス装置
１８  撮影装置
２０  サーバ
【図１】
0005434671.tif 000002
【図２】
0005434671.tif 000003
【図３】
0005434671.tif 000004
【図４】
0005434671.tif 000005
【図５】
0005434671.tif 000006
【図６】
0005434671.tif 000007
【図７】
0005434671.tif 000008
【図８】
0005434671.tif 000009
【図９】
0005434671.tif 000010
【図１０】
0005434671.tif 000011
【図１１】
0005434671.tif 000012
【図１２】
0005434671.tif 000013
【図１３】
0005434671.tif 000014
【図１４】
0005434671.tif 000015
【図１５】
0005434671.tif 000016
【図１６】
0005434671.tif 000017
【図１７】
0005434671.tif 000018
【図１８】
0005434671.tif 000019