(第一の実施形態 平面地図)
図1から図22は、本発明における第一の実施形態を示すものである。
この実施形態は、地図を媒体としたものであり、地図をペン型のスキャナ(撮像手段)で撮像すると、撮像内容に対応した地図や情報が出力手段であるディスプレイ装置(モニタ)に表示されるようになっている。ディスプレイ装置には、パーソナルコンピュータにインストールされた電子地図や、それに対応する文字、図形、音声、動画等が表示されるようになっている。
図1は、本発明で用いる地図(媒体)の表面印刷状態を示した図である。
本発明における地図は、ディスプレイ装置上で各種表示を行なうための操作を指示するためのアイコンが印刷されたアイコン部と、道路、線路、観光施設等が印刷された地図部とから構成されている。
アイコン部における各アイコンの領域には、操作指示に対応したコードを意味するドットパターンが印刷されているが、ここで印刷されるドットパターンについては後述する。アイコン部は、地図の上部および下部にそれぞれ印刷されており、上部には、「情報」「地図」「GSガソリンスタンド」「コンビニ」「ATM銀行」「宿泊」「お食事」「解除」の各アイコンが設けられている。
また、下部には、電子地図を移動させるための、「上へ」「右へ」「下へ」「左へ」「戻る」の各アイコン、電子地図のサイズを変更させるための、「拡大する」「標準」「縮小する」の各アイコンが印刷されている。
地図部には、道路、線路等の他、観光施設等を表示するシンボルが印刷されている。この地図部の領域には、道路や線路の位置に対応したXY座標を意味するドットパターンが印刷されている。また、シンボルには、施設等の位置に対応したXY座標に加えて、施設の情報等をコード化したドットパターンが重畳印刷されている。
図2は、地図の使用状態を示した説明図である。
図に示す如く、本発明における地図(媒体)は、パーソナルコンピュータ等の電子機器およびペン型のスキャナ(撮像手段)と連動させて用いる。すなわち、ペン型のスキャナを、USBケーブル等でコンピュータに接続する。ユーザは、スキャナを用いて、地図部上の任意の位置やシンボル等、またはアイコン部に印刷されている各種アイコンをクリック(撮像)する。
地図モードアイコンには、電子地図のアドレスが登録されており、ユーザが地図モードアイコンをクリックすることにより、パーソナルコンピュータのハードディスク装置に登録された電子地図が読み出されてディスプレイに出力表示される。
なお、図2においては、スキャナはコンピュータに接続されているが、本発明はこれに限らず、携帯電話、PDA(Personal Data Assistant)等、他の通信機器と連動させて用いるようにしてもよい。
図3は、コンピュータとスキャナの構成を示すハードウエアブロック図である。
同図に示すように、パーソナルコンピュータは、中央処理装置(CPU)を中心に、メインメモリ(MM)、バスで接続されたハードディスク装置(HD)、出力手段としての表示装置(DISP)、入力手段としてのキーボード(KBD)を有している。
そして、USBインターフェース(USB I/F)を介して撮像手段としてのスキャナが接続されている。
なお図示を省略してあるが、ディスプレイ装置(DISP)の他に、出力装置として、プリンタ、スピーカ等が接続されている。
また、バス(BUS)は、ネットワークインターフェース(NW I/F)を介してインターネット等の汎用ネットワーク(NW)に接続されており、電子地図データ、文字情報、画像情報、音声情報、動画情報、プログラム等が図示しないサーバよりダウンロード可能となっている。
なお、電子地図データ、文字情報、画像情報、音声情報、動画情報、プログラム等のコンテンツデータは、前記サーバからダウンロードする場合の他、CD−ROM、DVD等の記憶媒体から読み出してもよい。
ハードディスク(HD)内には、オペレーティングシステム(OS)とともに、本実施形態で用いられるドットパターンの解析プログラム等のアプリケーションプログラム、電子地図データ、文字情報、画像情報、音声情報、動画情報や各種テーブル等のデータが登録されている。
中央処理装置(CPU)は、ハードディスク内のアプリケーションプログラムをバス(BUS)およびメインメモリ(MM)を介して順次読み込んで実行処理するとともに、データを読み出してディスプレイ装置(DISP)に出力表示することによって、本実施形態に説明する機能が実現されることになる。
スキャナは、図示は省略するが、赤外線照射手段(赤色LED)とIRフィルタと、CMOSセンサ、CCDセンサ等の光学撮像素子を備えており、媒体面に照射した照射光の反射光を撮像する機能を有している。ここで媒体面上のドットパターンはカーボンインクで印刷されており、ドットパターン以外の部分はノンカーボンインクで印刷されている。
このカーボンインクは赤外光を吸収する特性を有しているため、前記光学撮像素子での撮像画像では、ドットの部分のみ黒く撮影されることになる。
ここで、照射光については、本実施形態では赤外線を用いてカーボンインク(赤外線を吸収する特性を有するインク)で印刷されたドットパターンを用いた場合で説明したが、照射光とインクの特性については、これに限らず、たとえば紫外線を用いて、紫外線を吸収する特性を有するインクを用いてドットパターンを印刷してもよい。
このようにして読み取ったドットパターンの撮像画像は、スキャナ内の中央処理装置(CPU)によって解析されて座標値またはコード値に変換されて、USBケーブルを介してパーソナルコンピュータに送信される。
パーソナルコンピュータの中央処理装置(CPU)は、受信した座標値またはコード値を示すテーブルを参照して、これらに対応した電子地図データ、文字情報、画像情報、音声情報、動画情報がディスプレイ装置(DISP)や図示しないスピーカから出力されるようになっている。
次に、本発明で用いるドットパターンについて図4〜図9を用いて説明する。
図4は本発明のドットパターンの一例であるGRID1を示す説明図である。
なお、これらの図において、縦横方向の格子線は説明の便宜のために付したものであり実際の印刷面には存在していない。ドットパターン1を構成するキードット2、情報ドット3、基準格子点ドット4等は撮像手段であるスキャナが赤外線照射手段を有している場合、当該赤外光を吸収するカーボンインクで印刷されていることが望ましい。
図5はドットパターンの情報ドットおよびそれに定義されたデータのビット表示の一例を示す拡大図である。図6(a)、(b)はキードットを中心に配置した情報ドットを示す説明図である。
本発明のドットパターンを用いた情報入出力方法は、ドットパターン1の生成と、そのドットパターン1の認識と、このドットパターン1から情報およびプログラムを出力する手段とからなる。すなわち、ドットパターン1をカメラにより画像データとして取り込み、まず、基準格子点ドット4を抽出し、次に本来基準格子点ドット4がある位置にドットが打たれていないことによってキードット2を抽出し、次に情報ドット3を抽出することによりデジタル化して情報領域を抽出して情報の数値化を図り、その数値情報より、このドットパターン1から情報およびプログラムを出力させる。たとえば、このドットパターン1から音声等の情報やプログラムを、情報出力装置、パーソナルコンピュータ、PDAまたは携帯電話等に出力させる。
本発明のドットパターン1の生成は、ドットコード生成アルゴリズムにより、音声等の情報を認識させるために微細なドット、すなわち、キードット2、情報ドット3、基準格子点ドット4を所定の規則に則って配列する。図4に示すように、情報を表すドットパターン1のブロックは、キードット2を基準に5×5の基準格子点ドット4を配置し、4点の基準格子点ドット4に囲まれた中心の仮想格子点5の周囲に情報ドット3を配置する。このブロックには任意の数値情報が定義される。なお、図4の図示例では、ドットパターン1のブロック(太線枠内)を4個並列させた状態を示している。ただし、ドットパターン1は4ブロックに限定されないことはもちろんである。
1つのブロックに1つの対応した情報およびプログラムを出力させ、または、複数のブロックに1つの対応した情報およびプログラムを出力させることができる。
基準格子点ドット4は、カメラでこのドットパターン1を画像データとして取り込む際に、そのカメラのレンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時の歪みを矯正することができる。具体的には歪んだ4点の基準格子点ドット4を元の正方形に変換する補正用の関数(Xn,Yn)=f(Xn’,Yn’)を求め、その同一の関数で情報ドット3を補正して、正しい情報ドット3のベクトルを求める。
ドットパターン1に基準格子点ドット4を配置してあると、このドットパターン1をカメラで取り込んだ画像データは、カメラが原因する歪みを補正するので、歪み率の高いレンズを付けた普及型のカメラでドットパターン1の画像データを取り込むときにも正確に認識することができる。また、ドットパターン1の面に対してカメラを傾けて読み取っても、そのドットパターン1を正確に認識することができる。
キードット2は、図4に示すように、ブロックの四隅の角部にある4個の基準格子点ドット4を一定方向にずらして配置したドットである。このキードット2は、情報ドット3を表す1ブロック分のドットパターン1の代表点である。たとえば、ドットパターン1のブロックの四隅の角部にある基準格子点ドット4を上方に0.1mmずらしたものである。情報ドット3がX,Y座標値を表す場合に、キードット2を下方に0.1mmずらした位置が座標点となる。ただし、この数値はこれに限定されずに、ドットパターン1のブロックの大小に応じて可変し得るものである。
情報ドット3は種々の情報を認識させるドットである。この情報ドット3は、キードット2を代表点にして、その周辺に配置すると共に、4点の基準格子点ドット4で囲まれた中心を仮想格子点5にして、これを始点としてベクトルにより表現した終点に配置したものである。たとえば、この情報ドット3は、基準格子点ドット4に囲まれ、図5に示すように、その仮想格子点5から0.1mm離れたドットは、ベクトルで表現される方向と長さを有するために、時計方向に45度ずつ回転させて8方向に配置し、3ビットを表現する。したがって、1ブロックのドットパターン1で3ビット×16個=48ビットを表現
することができる。
なお、図示例では8方向に配置して3ビットを表現しているが、これに限定されずに、16方向に配置して4ビットを表現することも可能であり、種々変更できることはもちろんである。
キードット2、情報ドット3または基準格子点ドット4のドットの径は、見栄えと、紙質に対する印刷の精度、カメラの解像度および最適なデジタル化を考慮して、0.05mm程度が望ましい。
また、撮像面積に対する必要な情報量と、各種ドット2,3,4の誤認を考慮して基準格子点ドット4の間隔は縦・横0.5mm前後が望ましい。基準格子点ドット4および情報ドット3との誤認を考慮して、キードット2のずれは格子間隔の20%前後が望ましい。
この情報ドット3と、4点の基準格子点ドット4で囲まれた仮想格子点との間隔は、隣接する仮想格子点5間の距離の15〜30%程度の間隔であることが望ましい。情報ドット3と仮想格子点5間の距離がこの間隔より近いと、ドット同士が大きな塊と視認されやすく、ドットパターン1として見苦しくなるからである。逆に、情報ドット3と仮想格子点5間の距離がこの間隔より遠いと、隣接するいずれの仮想格子点5を中心にしてベクトル方向性を持たせた情報ドット3であるかの認定が困難になるためである。
たとえば,情報ドット3は、図6(a)に示すように、ブロック中心から時計回りでI1からI16を配置する格子間隔は0.5mmであり、2mm×2mmで3ビット×16=48ビットを表現する。
なお、ブロック内に個々に独立した情報内容を有し、かつ他の情報内容に影響されないサブブロックをさらに設けることができる。図6(b)はこれを図示したものであり、4つの情報ドット3で構成されるサブブロック[I1、I2、I3、I4]、[I5、I6、I7、I8]、[I9、I10、I11、I12]、[I13、I14、I15、I16]は各々独立したデータ(3ビット×4=12ビット)が情報ドット3に展開されるようになっている。このようにサブブロックを設けることにより、エラーチェックをサブブロック単位で容易に行うことができる。
情報ドット3のベクトル方向(回転方向)は、30度〜90度毎に均等に定めるのが望ましい。
図7は情報ドット3およびそこに定義されたデータのビット表示の例であり、他の形態を示すものである。
また、情報ドット3について基準格子点ドット4で囲まれた仮想格子点5から長・短の2種類を使用し、ベクトル方向を8方向とすると、4ビットを表現することができる。このとき、長い方が隣接する仮想格子点5間の距離の25〜30%程度、短い方は15〜20%程度が望ましい。ただし、長・短の情報ドット3の中心間隔は、これらのドットの径より長くなることが望ましい。
4点の基準格子点ドット4で囲まれた情報ドット3は、見栄えを考慮し、1ドットが望ましい。しかし、見栄えを無視し、情報量を多くしたい場合は、1ベクトル毎に、1ビットを割り当て情報ドット3を複数のドットで表現することにより、多量の情報を有することができる。たとえば、同心円8方向のベクトルでは、4点の格子ドット4に囲まれた情報ドット3で28の情報を表現でき、1ブロックの情報ドット16個で2128となる。
図8は情報ドットおよびそこに定義されたデータのビット表示の例であり、(a)はドットを2個、(b)はドットを4個および(c)はドットを5個配置したものを示すものである。
図9はドットパターンの変形例を示すものであり、(a)は情報ドット6個配置型、(b)は情報ドット9個配置型、(c)は情報ドット12個配置型、(d)は情報ドット36個配置型の概略図である。
図4と図6に示すドットパターン1は、1ブロックに16(4×4)の情報ドット3を配置した例を示している。しかし、この情報ドット3は1ブロックに16個配置することに限定されずに、種々変更することができる。たとえば、必要とする情報量の大小またはカメラの解像度に応じて、情報ドット3を1ブロックに6個(2×3)配置したもの(a)、情報ドット3を1ブロックに9個(3×3)配置したもの(b)、情報ドット3を1ブロックに12個(3×4)配置したもの(c)、または情報ドット3を1ブロックに36個配置したもの(d)がある。
次に、図10は、地図表面に印刷されたドットパターンとコード値とXY座標値との関係を示している。
図10(a)は、本ドットパターンのC0〜C31までの32ビットに定義される値を表で示したものである。C0〜C7がX座標、C8〜C15がY座標、C16〜C27が地図番号、C28〜C30がパリティ、C31がXY地図データをそれぞれ意味している。
なお、C16〜C27は、地図番号に限らず、それ以外のコード(コード値)でもよい。
これらの値は図10(b)に示す格子領域に配置される。
このように、本ドットパターンでは、4×4個の格子領域中に、X座標、Y座標とともに、それに対応するコード情報(コード値)を登録しておくことができるため、地図上のシンボルの領域部分にXY座標とともに特定のコード情報を与えておくことができるようになっている。このようなドットパターンのフォーマットによって、XY座標に基づく情報とともに、建物等のシンボルアイコンに対応したテキスト、画像、動画、音声情報を対応付けておき、出力させることができるようになっている。
図11は、アイコン部下部に表示されたアイコンをクリックすることにより、電子地図を拡大、縮小させる操作を説明する図である。
図11(a)はユーザが地図上で行なう操作、(b)は、当該操作が行われた際にディスプレイ装置(モニタ)上に表示される映像を示した図である。(a)に示す如く、ユーザがスキャナを用いて、アイコン部下部に位置する「拡大する」のシンボルをクリックすると、撮像素子がシンボルに印刷されているドットパターンを撮像し、当該撮像画像は、スキャナに内蔵されている中央処理装置(CPU)によって解析されてドットコード(座標値またはコード値)に変換されてパーソナルコンピュータに送信される。
パーソナルコンピュータの中央処理装置(CPU)は、このドットコードに基づいて、ハードディスク装置(HD)内のテーブルを参照し、当該ドットコードに対応して格納された画像データ(ここでは電子地図の拡大データ)を読み出してディスプレイ装置(モニタ)に表示する。
なお、中央処理装置(CPU)は、ドットコードに基づいて、ディスプレイ装置(DISP)の表示制御を行い、ディスプレイ(モニタ)上に表示されている地図の画像データを直接拡大してもよい。
このようにして、同図(b)に示す如く、ディスプレイ装置(モニタ)上の電子地図の倍率が拡大される。同様に、「縮小する」のシンボルをクリックすると、電子地図の倍率が縮小される。「標準」のシンボルをクリックすると、標準倍率に戻る。
図12は、アイコン部下部に表示されたアイコンをクリックしてディスプレイ装置(モニタ)上に表示される地図を移動させる操作を説明するための図である。
同図において、「右へ」のアイコンをクリック(スキャナで撮像)すると、スキャナの中央処理装置(CPU)は、当該アイコンのドットパターンを解析プログラムによって解析し、ドットコード(座標値またはコード値)に変換してパーソナルコンピュータに送信する。
前記ドットコードを受信したパーソナルコンピュータの中央処理装置(CPU)はこのドットコードに基づいて、ハードディスク装置(HD)内のテーブルを参照し、当該ドットコードに対応して格納された画像データ(ここでは電子地図の当該座標位置よりも左右側の地図データ)を読み出してディスプレイ装置(モニタ)上に表示する。
なお、中央処理装置(CPU)は、ドットコードに基づいて、ディスプレイ装置(DISP)の表示制御を行い、ディスプレイ(モニタ)上に表示されている地図の画像データを直接移動描画してもよい。
なお、上記実施形態では、「右へ」のアイコンでディスプレイ装置(DISP)上に表示されている画像データを画面上で左方向に移動させた例で説明したが、逆の右方向に移動させてもよい。
同様に、ユーザが「左へ」をクリックすると左側(または右側)に、「上へ」をクリックすると上方(または下方)に、「下へ」をクリックすると下方(または上方)にスクロールされる。また、「戻る」をクリックするとスクロール前の状態に戻る。
図13は、ユーザが地図上をクリックすることにより、電子地図をスクロールさせる操作を説明する図である。
図13は、地図上の道路、河川等、ユーザが任意の位置をクリックした場合について説明した図である。(a)はユーザが地図上で行なう操作、(b)は、当該操作が行われた際にディスプレイ装置(モニタ)上に表示される映像を示した図である。たとえば、(a)に示す如く、ユーザがスキャナを用いて道路の交差点をクリックすると、スキャナの中央処理装置(CPU)がドットパターンを解析ソフトプログラムによって解析する。このドットコードはコンピュータの中央処理装置(CPU)に送信される。コンピュータでは、当該ドットコードのうち、その位置のXY座標を表すコードのみを読み取る。このようにして、同図(b)に示す如く、ディスプレイ中央に交差点が位置するようにスクロールされる。
なお、本発明においては、クリックする部位は、道路や河川に限らず、ガソリンスタンド等、地図上のシンボルでもよい。ユーザがシンボルをクリックすると、上述した方法により、シンボルのXY座標を表すコードを読み取り、ディスプレイ中央にシンボルが位置するようにスクロールされる。
図14は、グリッドドラッグ動作により電子地図をスクロールさせる操作について説明する図である。
(a)はユーザが地図上で行なう操作、(b)は、当該操作が行われた際にディスプレイ上に表示される映像を示した図である。ここでグリッドドラッグ動作とは、地図部上にスキャナを接触させ、そのままの状態でスキャナを移動させることをいう。ここでは、ユーザが最初に交差点の中心をクリックし、そのままスキャナを地図部から離さずに、地図部中央まで移動させる。すると、(b)に示す如く、交差点の中央がディスプレイ中央に位置するように、画面がスクロールされる。
このような動作によって、スキャナはまず交差点の座標値を読み込み、スキャナの移動にともなって読み取られる座標値が変化することになる。
このように変化する座標値は順次パーソナルコンピュータに送信される。パーソナルコンピュータの中央処理装置(CPU)は、前記座標値の変化に基づいて、ディスプレイ装置(モニタ)に表示される電子地図を移動(スクロール)させる。この結果、本発明においては、スキャナでクリックされた部位がディスプレイ中央に表示されるように、電子地図がスクロールされる。
図15は、施設等検索機能について説明した図である。
図15(a)はユーザが地図上で行なう操作、(b)は、当該操作が行われた際にディスプレイ装置(モニタ)上に表示される映像を示した図である。
ユーザが、地図上部に印刷された「GS」「ATM」「宿泊」「お食事」のいずれかのアイコンをクリックすると、そのシンボルアイコンに対応した施設を示すアイコンシンボルが、電子地図上に表示される。たとえば(a)に示す如く、ユーザが「GS」のアイコンをクリックすると、(b)に示す如く、電子地図上のガソリンスタンドが存在する位置に、ガソリンスタンドを示す「GS」シンボルが表示される。同様に、ユーザが「ATM」のアイコンをクリックすると銀行等のATMを示すアイコンが、「宿泊」のアイコンをクリックするとホテルや旅館等の宿泊施設を示すシンボルが、「お食事」のシンボルをクリックするとレストラン等の飲食店を示すシンボルが表示される。これによりユーザは、目的とする施設がどこに位置しているか、容易に知ることができる。
ここで、「GS」「ATM」「宿泊」「お食事」のアイコンには、所定のアイコン毎にコード値がドットパターンとして印刷されており、スキャナの撮像素子が当該ドットパターンを撮像画像として読み取ると、スキャナの中央処理装置(CPU)がROMの解析プログラムに基づいてコード値に変換し、該コード値をパーソナルコンピュータに送信する。
パーソナルコンピュータの中央処理装置(CPU)は、該コード値に基づいて、テーブルを検索し、コード値に対応したシンボル画像をディスプレイ(モニタ)に表示された電子地図画像上にマッピング表示する。
なお、電子地図上にシンボルが表示された状態で、ユーザがそのシンボルに対応するアイコンを再度クリックすると、電子地図上のシンボルは消去される。
図16は、情報モードについて説明した図である。
情報モードとは、地図部上のシンボルに対応する情報(文字、画像、音声、動画等)を説明する状態であることをいう。
本実施形態では、初期設定では地図モードに設定されている。情報モードに切り替えるためには、(a)に示す如く、ユーザは、まずアイコン部上部の「情報」アイコンをクリックする。これにより、地図モードから情報モードへの切り替え処理が行われる。
具体的には、「情報」アイコンには所定のコード値がドットパターンとして印刷されており、スキャナの撮像素子が当該ドットパターンを撮像画像として読み取ると、スキャナの中央処理装置(CPU)がROMの解析プログラムに基づいてコード値に変換し、該コード値をパーソナルコンピュータに送信する。
前記コード値を受信したパーソナルコンピュータの中央処理装置(CPU)は、ディスプレイ(モニタ)の表示モードを情報モードに切り替える。
次にユーザは、情報を得たい施設を示すシンボルをクリックする。たとえば、(a)に示す如く、寺院のアイコンシンボルをクリックする。これにより、寺院を意味するコード値がパーソナルコンピュータに送信される。当該寺院のコード値を受信したパーソナルコンピュータの中央処理装置(CPU)は、該コード値に基づいて、テーブルを検索し、コード値に対応した情報(文字、画像、音声、動画等)をディスプレイ(モニタ)から出力する。ここではディスプレイ上に寺院の映像が表示され、スピーカから寺院について説明する音声が出力される。
図17は、地図モードから情報モードへ切り替える方法について説明した図である。
図16で説明したように、アイコン部上部には、「情報」「地図」の2種類のアイコンが印刷されている。しかし、これらのアイコンをクリックする以外にも、スキャナの操作によりモードの切り替えを行うことが可能である。
(a)はグリッドタッピング動作により切り替えを行うものである。グリッドタッピング動作とは、スキャナを地図の鉛直方向に立て、上下にスキャナを動かして地図をたたく動作のことである。たとえば、ユーザが寺院のシンボル上でグリッドタッピング動作を行なうと、地図モードから情報モードへの切り替えが行われ、ディスプレイ(モニタ)上に寺院の映像が表示される。
具体的には、パーソナルコンピュータの中央処理装置(CPU)が、所定時間内にほぼ同一のXY座標情報またはコード情報が複数回読み取られることによって、当該中央処理装置(CPU)がグリッドタッピング動作が行われたことを認識する。
(b)は、グリッドスライディング動作により切り替えを行なうものである。グリッドスライディング動作とは、地図上でスキャナを円状にスライドさせる動作のことである。ユーザは、シンボルの周囲を囲むようにグリッドスライディング動作を行なう。これにより、地図モードから情報モードへの切り替えが行われ、ディスプレイ(モニタ)上に寺院の映像が表示される。
具体的には、パーソナルコンピュータの中央処理装置(CPU)が、撮像手段の媒体面への円状のグリッドスライディング動作によって、所定時間内に読み取ったXY座標情報がほぼ円状の軌跡として認識されることによって行われる。
(c)は、グリッドスクラッチ動作により切り替えを行なうものである。グリッドスクラッチ動作とは、地図上で、引っかくようにスキャナを複数回動かす動作をいう。ユーザは、シンボルの上でグリッドスクラッチ動作を行なう。これにより、地図モードから情報モードへの切り替えが行われ、ディスプレイ(モニタ)上に寺院の映像が表示される。
具体的には、パーソナルコンピュータの中央処理装置(CPU)が、所定時間内に読み取ったXY座標の軌跡が短距離の直線上の軌跡の繰り返し(スクラッチ)として認識されることによって行われる
なお、地図モードから情報モードへの切り替えを行うためのスキャナの操作は、上述した実施例に限定されない。ユーザが上述した操作以外の操作を行うことにより、情報モードに切り替わるようにしてもよい。
図18は、スキャナの向きにより(グリッドティルト動作)、電子地図をスクロールさせる操作を説明する図であり、(a)はユーザの操作を説明した図、(b)は鉛直方向に対するスキャナの傾きを変更させた場合を説明した図、(c)はディスプレイ(モニタ)上でスクロールされる状態を説明した図である。
スキャナの向きとは、撮像した際に、フレームバッファが上向きとなる方向のことである。(a)に示す如く、ユーザは、スクロールさせたい方向にスキャナの向きを設定し、クリックする。すると、ユーザがクリックした位置が、スキャナの向きの示す方向にスクロールされる。
この場合、地図の鉛直線に対するスキャナの傾きにより、スキャナと地図とのなす角度により、電子地図のスクロール距離が決定される。(b)において、(1)はスキャナを倒す前の垂直に立てた状態、(2)は前方に倒した状態、(3)はさらに前方に倒した状態、(4)は後方に倒した状態、(5)はさらに後方に倒した状態である。このように、スキャナを前後に倒す動作をグリッドティルトという。それぞれの場合に、ディスプレイ(モニタ)上でどのようにスクロールされるかを説明したのが(c)である。ユーザが地図部上でクリックした部位が、スキャナを倒す前には画面中央に位置したとする。すると、スキャナを前方に倒した場合には、電子地図は、スキャナの向きが示す方向と同方向に平行に移動する。また、深く倒すほど移動速度および移動距離が増加する。一方、スキャナを後方に倒した場合には、スキャナの向きが示す方向と180度反対方向に電子地図が移動し、前方に倒した場合と同様、深く倒すほど移動速度および移動距離が増加する。
図19は、ドットパターンの向きに対するスキャナの傾きにより、ディスプレイ(モニタ)上に表示される地図をスクロールさせる操作を説明する図であり、(a)はユーザの操作を説明した図、(b)は鉛直方向に対するスキャナの傾きを変更させた場合を説明した図、(c)はディスプレイ(モニタ)上でスクロールされる状態を説明した図である。
スキャナの傾きとは、上述したドットパターンの向きと、スキャナ本体とがなす角度のことである。電子地図は、スキャナを傾けた方向にスクロールされる。
また、スキャナを倒す深さにより、スクロールする距離が決定される。(b)において、(1)はペンを倒す前の垂直に立てた状態、(2)は前方に倒した状態、(3)はさらに前方に倒した状態である。それぞれの場合に、ディスプレイ(モニタ)上でどのようにスクロールされるかを説明したのが(c)である。ユーザが地図上でクリックした部位が、スキャナを倒す前には画面中央右下に位置したとする。スキャナを前方に倒した場合には、電子地図は、スキャナの向きが示す方向と同方向に平行に移動する。また、深く倒すほど移動速度および移動距離が増加する。
なお、スキャナを倒す方向と、ディスプレイ上の電子地図のスクロール方向は上記と逆方向であってもよい。
図20は、スキャナの傾きと、ディスプレイ(モニタ)上の地図がスクロールされる角度との関係を説明した図である。
地図上のドットパターンは、紙面の縦方向と同方向に重畳印刷されている。(a)に示す如く、ドットパターンの向きと、スキャナの向きとがなす角度をαとする。また、(b)に示す如く、ユーザがスキャナを傾けたときに、スキャナの傾きとスキャナの向きとがなす角度をβとする。この場合に、電子地図は、ドットの向きとスキャナの傾きとがなす角度γの方向に移動する。すなわち、角度γは、
γ=α+β
となる。
なお、スキャナの傾きについては、撮像視野における明度の差で認識することが可能であるが、この点については後述する。
図21は、グリッドグラインド動作により、ディスプレイ(モニタ)上に表示される画面を拡大させるためのスキャナの操作について説明した図である。
グリッドグラインドとは、スキャナを回転させる動作のことである。(a)はユーザが地図上で行なう操作、(b)は、当該操作が行われた際にディスプレイ(モニタ)上に表示される映像を示した図である。(a)に示す如く、ユーザがスキャナを右方向にグリッドグラインドさせると、(b)に示す如く、電子地図が拡大される。
なお、グリッドグラインドとは、スキャナを回転させる動作のことであり、右方向にグリッドグラインドすることを「グリッドグラインドライト」とも呼ぶ。
具体的には、パーソナルコンピュータの中央処理装置(CPU)が、媒体面の鉛直線に対する撮像光軸の一定の傾きを維持した傾斜状態で鉛直線を中心に回転させることによって撮像光軸の傾斜状態の変化を認識することによって行われる。
図22は、このグリッドグラインド動作により、ディスプレイ(モニタ)上に表示される画面を縮小させるためのスキャナの操作について説明した図である。
(a)はユーザが地図上で行う操作、(b)は、当該操作が行われた際にディスプレイ(モニタ)上に表示される映像を示した図である。(a)に示す如く、ユーザがスキャナを左方向にグリッドグラインドさせると、(b)に示す如く、電子地図が縮小される。
なお、このように左方向にグリッドグラインドすることを「グリッドグラインドレフト」とも呼ぶ。
(第二の実施形態 立体地図)
図23から図31は、本発明における第二の実施形態である、電子地図が立体地図である場合の立体地図の表示について説明したものである。
本実施例においても、平面地図と同様、ドットパターンが重畳印刷された地図とコンピュータ等の電子機器を連動させて用いる。すなわち、スキャナで山や池等、地図上の任意の部位をクリックすると、その部位に対応した立体映像がディスプレイ(モニタ)上に表示される。
図23は、地図表面に印刷されたドットパターンとコード値とXYZ座標値との関係を示している。
図23(a)は、本ドットパターンのC0〜C31までの32ビットに定義される値を表で示したものである。C0〜C7がX座標、C8〜C15がY座標、C16〜C23がZ座標、C24〜C27が地図番号、C28〜C30がパリティ、C31がXYZ地図データをそれぞれ意味している。
なお、C24〜C27は、地図番号に限らず、それ以外のコードでもよい。
これらの値は図23(b)に示す格子領域に配置される。
図24は、前述のグリッドグラインド動作によって、視点を変化させる操作について説明した図である。
(a)は、スキャナを反時計方向に回転させた場合、(b)はスキャナを時計方向に回転させた場合、(c)は(a)および(b)における視点の変化について説明した図である。
(c)において、Zは、ユーザがクリックした部位における高度である。ユーザが任意の部位をクリックすると、ディスプレイ装置(モニタ)には、ユーザがクリックした部位から眺めた風景が立体映像で表示される。この場合、視点は、高度と人間の目の高さを合計した、Z+h1となり、これが標準視点である。(a)に示す如く、ユーザがスキャナを反時計方向に回転させると、視点が(1)の位置まで上昇する。それから、(b)に示す如く時計方向に回転させると、上昇した視点が下降する。
図25、図26は、スキャナの向きにより、視点をチルドアップ、チルドダウンさせる操作を説明した図である。
図25は、ユーザの地図上での操作を説明する図である。(1)に示す如く、ユーザは、まずスキャナを地図に対して垂直に置く。すると、図26(a)に示す如く、標準モードでディスプレイ(モニタ)上に表示される。ユーザが図25(2)に示す如く、スキャナを前方に倒すと、図26(b)に示す如く、人間の姿勢が前のめりになるような動きで視点が下方に移動する。また、図25(3)に示す如く、スキャナを後方に倒すと、図26(c)に示す如く、人間の上体が後ろに反るように視点が上方に移動する。
図27、図28は、スキャナを左右に傾けることにより、アングルを変化させる操作を説明した図である。
図27(a)において、(1)はスキャナを地図に対して垂直に立てた状態、(2)はスキャナを左側に傾けた状態、(3)は右側に傾けた状態である。
(1)の場合は、ディスプレイ(モニタ)上には立体地図が標準モードで表示される。(2)に示す如く、ユーザがスキャナを左側に傾けると、図28(1)に示す如く、視点が左側に移動した状態の画面が表示される。(3)に示す如く、ユーザがスキャナを右側に傾けると、図28(2)に示す如く、視点が右側に移動した状態の画面が表示される。
図29、図30は、グリッドポンプ動作により、画面上に表示される地図の倍率を変化させる操作を説明した図である。
グリッドポンプ動作とは、スキャナを前方または後方に素早く繰り返し倒す操作のことである。グリッドポンプ動作を行う前は、ディスプレイ(モニタ)上には、図29(b)に示す如く、カメラの標準レンズで撮影されたのと同様の画面が表示される。ユーザが、図29(a)(1)に示す如く、ペンを前方に素早く繰り返し倒すと、図30(a)に示す如く、徐々に画像が拡大され、望遠レンズで撮影された状態の画面が表示される。また、図29(a)(2)に示す如く、ペンを後方に素早く繰り返し倒すと、徐々に画角が広くなり、図30(b)に示す如く、ワイドレンズで撮影された状態の画面が表示される。
図31は、グリッドタッピング動作により視点オペレーションをリセットさせる操作を説明した図である。
グリッドタッピング動作とは、スキャナを地図に垂直に立て、上下にスキャナを動かして地図をたたく操作のことである。
たとえば、(b)に示す如く、上述したグリッドポンプ動作により、高高度まで上昇した位置で、ワイドレンズで撮影された状態の画面が表示されたとする。この場合に、図31(a)に示す如く、グリッドタッピング動作を行なうと、(c)に示す如く、標準モードにリセットされる。
グリッドポンプ動作により望遠モードにした際にも、同様に標準モードにリセットされる。
また、図24で説明したグリッドグラインド動作により視点を変化させた場合にも、グリッドタッピング動作を行うことにより、視点がリセットされる。
図32は、スキャナの他の実施形態を示したものである。
図32(a)は、三脚状の用具でスキャナを固定したものである。用具の中央には開口が設けられており、開口の周辺にはゴムが形成されている。開口部にスキャナをはめ込み使用する。このような構造とすることにより、ユーザがグリッドグラインド等の操作を行う場合に、スキャナを固定することができ、センサ部が、目的とするドットパターン以外のドットパターンを読み取ってしまうことを防止することができる。
(b)は、杯状の用具にバネを設置してスキャナを固定したものである。用具の上部と下部には開口が設けられており、上部には複数のバネが設置されている。このバネでスキャナを固定し、使用する。
ユーザがスキャナを用いて種々の操作を行う場合に、従来のスキャナでは、回転等させた場合に底部がぶれてしまい、ドットパターンを正確に読み取ることができないという問題があった。このような構造とすることにより底部が固定され、正確にドットパターンを読み取ることが可能となる。また、ゴムやバネを用いることにより、ユーザがスムーズに操作を行うことができる。
図33から図37は、スキャナを傾けた際の傾斜方向の算出方法について説明した図である。
スキャナ(撮像手段)の媒体面(地図)の鉛直方向に対する傾きについては、図20(b)に示すように、当該スキャナの撮像視野における明度の差で認識することが可能である。
スキャナの傾斜方向とは、図34(a)に示す如く、スキャナと地図とのなす角度をいう。ユーザがどの方向にスキャナを傾けたかは、以下の方法により求めることができる。
まず、キャリブレーションを行う。スキャナを地図に対して垂直に立て、その場合の、図33に示した、1〜48のセルの明るさを測定する。図33は、スキャナ周辺の領域である。このときの明るさをBL0(i)とする。iは、測定したセルの値であり、たとえば、24番のセルの明るさは、BL0(24)と表示する。
スキャナ内部には、LEDが2個設置されている。そのため、スキャナを地図に対して垂直に立てていても、LED付近のセルとLEDから離れた位置にあるセルとでは、明るさが異なる。そのため、キャリブレーションを行なう。
次に、スキャナを傾けた場合の明るさを測定する。図34(a)に示す如く、スキャナを一定方向に傾けた場合の、セル1からセル48までの明るさを測定し、セルiにおける明るさをBL(i)とする。そして、各セルにおけるBL(i)とBL0(i)との差分を計算する。そして、
Max(BL0(i)−BL(i))
を計算する。
スキャナを傾けた場合、傾けた方向と逆の方向が暗くなる。スキャナを傾けた方向にLEDも傾くため、傾けた方向と逆方向では、LEDとの距離が遠くなるからである。したがって、図34(b)に示す如く、差分が最大値となるセルと逆方向が、スキャナを傾けた位置となる。
これにより、スキャナを傾けた方向が定まる。
図33〜図34を用いて、キャリブレーションを行なうことにより、傾斜方向および角度を決定する他の方法について説明する。
最初にキャリブレーションを行なう。まず、スキャナを地図に対して垂直に立て、図33(a)に示したセル1からセル48の明るさを測定し、セルiにおける明るさをBL0(i)とする。
次に、スキャナを45°傾け、図34に示す如くペン先を軸にして一周させる。この場合に、スキャナがセルiの位置にきた場合の明るさをBL45(i)とする。セル1からセル48までのBL45(i)を求める。以上の操作によりキャリブレーションが終了する。
次に、ユーザがスキャナを傾けた場合の、セル1からセル48までの明るさを測定し、セルiにおける明るさをBL(i)、i=1,n(=48)とする。そして、
を求める。
BL0(i)−BL45(i)は一定であるため、BL0(i)−BL(i)の値が最も大きいとき、すなわち、BL(i)が最小となるときに、
は最大値となる。上述した如く、スキャナを傾けた方向と逆の方向が最も暗くなるため、この場合のセルiの逆方向が、スキャナを傾けた方向となる。
また、スキャナを傾けた角度は、
となる。
なお、上述した式は、明るさに対して角度θが線形となることを想定しているが、厳密には、三角関数等で以下のように近似するとさらに精度を高めることができる。このようにすると、角度は
となる。
図36は、フーリエ関数を用いて、傾斜方向を測定する方法である。
図35に示す如く、1から8の8個のセルを測点とし、各セルの明るさを測定する。
サイン関数は、
αj{sin(1/2)j−1(θ―βj)}
で表される。すなわち、未知数は2個となる。
したがって、n個の測点を有する場合には、離散したポイントがn個となるため、n/2個のサイン関数の和を求め、これが解析中心から半径における明るさBL(i)となる。すなわち、
ただし、n=2m(nは測点の数)
で表される。
本実施例においては、測点が8個であるため、n=8である。したがって、4個のサイン関数の式を合成することにより、フーリエ級数のα1〜α4およびβ1〜β4を求める。そして、解析中心から半径における明るさBL(i)を、4個のサイン関数の和で表す。
上記式より、BL(i)が最小値となる角度θが最も暗い位置であり、その180度反対の方向が、スキャナを傾けた方向となる。
図37は、n次方程式を解くことにより、傾斜方向を測定する方法である。
図37のグラフは、n次関数を示したものである。n次関数を用いた場合、解析中心から半径における明るさBL(i)は、
BL(i)=α1(θ―β1)・α2(θ―β2)・・・・αj(θ―βj)
ただし、j=n/2,n=2m
で表される。
図35に示す如く、本実施例においては、測点が8個であるため、8個の解を求める必要がある。1個の方程式には、αj,βjの2個の未知数が含まれているため、4個の方程式を解き、α1〜α4およびβ1〜β4を求める。
これにより、BL(i)が最小値となる角度θを求める。角度θとなる位置が最も暗い位置であり、その180度反対の方向が、スキャナを傾けた方向となる。
なお、図36および図37による測定方法では、地図の鉛直線に対するスキャナの傾きまでは測定できない。そこで、図33〜図34に示した測定方法と併用することにより、具体的に傾けた角度を測定することができる。
図38は、図15で説明した施設等検索機能の、他の実施例を示した説明図である。
本実施例は、ユーザがグリッドドラッグ動作を行なうと、その軌跡を元に指定範囲が定まり、ユーザが指定した施設等を、その範囲内で検索するものである。
(a)では、Aが始点、Bが終点である。ユーザが、地図部内の任意のAからBまでドラッグすると、AおよびBの座標値が認識されて、ABを対角線とする長方形または正方形が指定範囲となる。グリッドドラッグ動作を行なった後に、アイコン部に印刷されている「GS」「ATM」等、検索したい施設のアイコンをクリックすると、施設のうち、指定範囲内にある施設のみが表示される。
(b)は、ユーザが、地図部内の任意のAからBまでドラッグすると、ABを半径とする円が指定範囲となるものである。また(c)は、ユーザが、始点と終点が同一となるように任意の形状を描くと、その形状が指定範囲となるものである。
図39は、立体地図において、グリッドドラッグ動作により断面を表示させる方法を示した説明図である。
(a)はユーザが地図上で行なう操作、(b)は当該操作が行なわれたときにディスプレイ(モニタ)上に表示される画面を示したものである。(a)に示す如く、ユーザが、Aを始点、Bを終点としてグリッドドラッグ動作を行なう。すると、(b)に示す如く、ディスプレイ(モニタ)上に、線分ABで切り取った断面図が表示される。かかる断面図は、当該地図が図23で説明したように、XY座標とともにZ座標を有しているために、その線分ABにおけるXY座標に対するZ座標に基づいて断面図の生成が容易となっているためである。
<電子地図の印刷>
図40〜図44は、電子地図の印刷について説明する図である。
図40(a)は電子地図を示したものである。この電子地図を印刷すると、(b)に示すように紙面上に地図が出力される。
(a)の電子地図と(b)の印刷地図とを対応付ける場合、本来は、全ての緯度・経度をXY座標として表現する必要がある。
しかし、図41(a)に示す如く、緯度・経度に割り当てられたドットコードは8ビットであるため、全ての緯度・経度を表現することは不可能であり、異なる緯度・経度を同一のXY座標で表現する場合がある。
そのため、紙面の左上部に、地図番号を設け、地図毎に異なる地図番号を付与する。これにより、同一のXY座標を用いていても、緯度・経度の異なる地図を印刷することが可能となる。
図41は、印刷地図のドットコードフォーマットについて説明した図である。
図41(a)は、本ドットパターンのC0〜C31までの32ビットに定義される値を表で示したものである。C0〜C7がY座標、C8〜C15がX座標、C16〜C29が地物コード、C30〜C31がパリティをそれぞれ意味している。
なお、C16〜C29は、地物コードに限らず、それ以外のコード(コード値)でもよい。
また、ドットコードは32ビットに限定されず、それ以外のビット数であってもよい。
ここで、地物コードとは、地上に設けられた家屋、ビル等に割り当てられた固有のコードであるが、必ずしもコードを用いる必要はなく、緯度・経度で代用してもよい。
この地物コードや経度・経度はユーザが自由に設定することができる。なお、異なる地物に対して緯度・経度が重なるということはありえない。
このような電子地図をユーザに対して開放した場合、ユーザが自分の地物を登録する度に地物コードを申請していたのでは、コード発行手続が煩雑になり、その管理も困難になってしまう。
そこで、ユーザにとって、自身の地物が存在する位置の緯度・経度を地物コードとして代用すれば、全ユーザが自由に緯度・経度を地物コードとして登録できる。
図41(b)は地図番号とX座標、Y座標との対応を示すテーブルである。
当該テーブルは、記憶手段に記憶されており、地図番号毎に、X座標の最小値・最大値、Y座標の最小値・最大値が対応付けられて登録されている。
図42〜図43は、電子地図を印刷する場合の縮尺について説明した図である。
図42(a)に示す如く、モニタ上に、縦M、横Lの範囲で電子地図が表示されている。また、用紙の最大印刷領域は、(b)に示す如く、縦K、横Jである。
(c)に示すように、電子地図の縦と横の比が、最大印刷領域の縦と横の比よりも小さいか等しい場合、すなわち、
である場合、電子地図の横幅Lが用紙の横幅Jとなるように縮尺をする。したがって、縮尺率は、
となる。
一方、(d)に示すように、電子地図の縦と横の比が、最大印刷領域の縦と横の比よりも大きい場合、すなわち、
である場合、電子地図の長さMが最大印刷領域の長さKとなるように縮尺をする。したがって、縮尺率は
となる。
また、本実施形態では、図43に示すように、ユーザ自身で地図の縮尺を決定して、電子地図を印刷することも可能である。
図44は、図42および図43の印刷処理について説明するフローチャートである。
最初に、印刷モードがONになっているかどうかを判断する(4401)。ユーザが、図示しない印刷アイコンをクリックする等、印刷指示を行うと、印刷を行う旨の割り込み信号が発生する。中央処理装置(CPU)が信号を受信すると、印刷モードがONになる。
印刷モードがONになっていると判断した場合には、用紙サイズが選択されたか否かを判断する(4402)。ユーザは、A4、B5、A3等、複数のサイズの中から任意の用紙サイズを選択することが可能である。
用紙サイズが選択されたら、ユーザによる縮尺指定があるか否かを判断する(4403)。
縮尺が指定された場合には、ユーザが指定した縮尺率に決定する(4404)。
縮尺が指定されなかった場合には、中央処理装置(CPU)は、電子地図の縦と横の比率と、紙面の最大印刷領域における縦と横の比率とを比較する(4405)。電子地図の縦と横の比が、最大印刷領域の縦と横の比よりも小さいか等しい場合、すなわち、
である場合には、縮尺率を
とする(4406)。
一方、電子地図の縦と横の比が、最大印刷領域の縦と横の比よりも大きい場合、すなわち、
である場合には、縮尺率を
とする(4407)。
次に、印刷領域を決定する(4408)。中央処理装置(CPU)は、ステップ4404、4406または4407の処理により決定した縮尺にしたがって印刷領域を決定する。
次に、出力処理を行う(4409)。中央処理装置(CPU)は、ドットパターンが付加された地図を印刷装置から印刷し、本処理を終了する。
<電子地図とドットパターンのリンク>
図45〜図46は、電子地図上のアイコンと、アイコンシールとのリンクについて説明する図である。
リンクとは、電子地図上のアイコンの情報と、アイコンシールのドットパターンとを関係付けることをいう。アイコンの情報には、たとえばアイコンがレストランである場合、レストランのWebアドレス、レストランが位置する緯度・経度等の情報が含まれている。
リンク設定は、図46(b)に示す記憶手段内のテーブルによって管理されている。
リンク処理を行うには、まずユーザは、マウスを用いて、リンクを行いたいアイコンをクリックする。すると、中央処理装置(CPU)は、図46(a)に示すテーブルを参照し、クリックされたアイコンの地物コードに対応したアドレスを読み出す。また、アイコンの位置を示す緯度・経度の値をメモリに記憶する。次に、ユーザによりアイコンシールがスキャナでクリックされると、中央処理装置(CPU)は、電子地図上のアイコンのアドレスおよび地図情報と、ドットパターンのドットコードとを関連付けて登録する。これにより、リンク処理が完了する。
リンク処理を行ったアイコンシールは、たとえば(c)に示すように、手帳に貼り付けて使用することができる。また、このようなドットパターンが印刷されたアイコンは、シールに限らず、付箋紙等、他の形態であってもよい。
またユーザは、図47に示す如く、電子地図上のアイコンに対して任意のWebアドレスをテーブルに登録することができる。
図48は、電子地図と、ドットパターンを重畳印刷した地図帳とを対応させて用いる実施例について説明した図である。
地図帳には、あらかじめドットパターンが重畳印刷されている。アイコン等の地物情報は記載されていない。
この地図帳に、XY座標や地物情報をリンクしたアイコンシールを貼付することにより、ユーザは、電子地図に表示されたアイコンの中から、必要なアイコンのみを対応付けることが可能となる。
図49〜50のフローチャートを用いて、電子地図と地図帳とを対応付ける手順について説明する。
まず、ユーザにより電子地図上のアイコンがクリックされたか否かを判断する(4901)。ユーザが電子地図上のアイコンにカーソルを当て、マウスを用いてクリックすると、アイコンをクリックした旨の割り込み信号がコンピュータの中央処理装置(CPU)に送信される。中央処理装置(CPU)は、信号を受信したと判断した場合には、ステップ4902に処理を移す。
次に、緯度・経度(x,y)を計算する(4902)。中央処理装置(CPU)は、クリックされたアイコンの緯度・経度を計算する。次に、アイコンに登録されている、Webアドレス等の地物情報を求める(4903)。
次に、ユーザにより地図帳がクリックされたか否かを判断する(4904)。図48(b)に示す如く、ユーザがスキャナを用いて、地図帳をクリックすると、地図帳に重畳印刷されているドットパターンをスキャナが読み取る。スキャナの中央処理装置(CPU)は、当該ドットパターンを解析ソフトによって解析し、ドットコード(コード情報)に変換する。このドットコードが、コンピュータの中央処理装置(CPU)に送信される。ドットコードが送信された場合には、地図帳がクリックされたと判断する。
次に、コンピュータの中央処理装置(CPU)は、送信されたドットコードのうちのXY座標情報を、緯度・経度(x’,y’)に変換するための計算を行う(4905)。
次に、4902で算出した緯度・経度と4905で求まった緯度・経度とがほぼ一致しているか否かを判断する(4906)。この処理において、何%の誤差であればほぼ一致していると判断するか、あらかじめ記憶手段に記憶させておく。ほぼ一致していると判断した場合には、5001に処理を移し、一致していると判断しなかった場合には、4904の処理を再度行う。
次に、位置登録処理を行う(5001)。中央処理装置(CPU)は、電子地図の緯度・経度と、地図帳のXY座標とを対応付けて記憶手段に登録する。
そしてその後は、中央処理装置(CPU)は、シールが貼付されたか否かを判定し(5002)、シールが貼られてそれがクリックされたことを認識した場合には(5003)、そのシールから読み取ったドットパターンが前記で登録されたXY座標とほぼ一致するか否かを判定し(5004)、一致する場合にはリンク処理(5005)、たとえばテーブルに登録された対応するアドレス(URL)へのアクセスを実行する。
図51は、グリッドティルト動作により、電子地図をスクロールさせる操作について説明した図である。ここで、グリッドティルト動作は、前述の図18および図20で説明したように、スキャナを傾けることで生じる、撮像視野における明度の差によって傾けた方向を認識し、所定の動作を行う。
たとえば、同図(a)の(1)の方向(紙面では右方向)にスキャナを傾けたときには同図(b)の(1)に示すように、電子地図を画面の右上方向にスクロールし、同図(a)の(2)の方向(紙面では左方向)にスキャナを傾けたときには同図(b)の(2)に示すように、電子地図を画面の左下方向にスクロールし、同図(a)の(3)の方向(紙面では右上方向)にスキャナを傾けたときには同図(b)の(3)に示すように、電子地図を画面の右上方向にスクロールさせる。
図52、図53は、グリッドグラインド動作により、電子地図を拡大または縮小する操作について説明した図である。
グリッドグラインド動作については、図21で説明した通りである。
同図において、スキャナの後端を右回り(時計回り)に回転させるとディスプレイ画面に表示される電子地図が徐々に拡大表示され(図52)、左回り(反時計回り)に回転させるとディスプレイ画面に表示される電子地図が徐々に縮小表示される(図53)。
図54は、グリッドタッピング動作により、モードを切り替える操作について説明した図である。
グリッドタッピング動作は、図17(a)で説明したスキャナの動作である。すなわち、スキャナを地図の鉛直方向に立て、上下にスキャナを動かして地図をたたく動作のことである。本実施形態における地図では、図54(a)に示すように、グリッドタッピング動作によって、地図モード、情報モードおよび航空写真モードの3種類のモードに切り替えが可能である。
<地物情報>
図55は、地物情報をモニタ上に表示させる操作について説明した図である。
同図に示すように、地図帳には地図と地物記号(たとえばアイコン)が印刷されており、これらの印刷に重畳してドットパターンが印刷されている。
スキャナでこれらの地物記号(アイコン)を撮像したときには、当該地物記号(アイコン)上のドットパターンがスキャナによって読み込まれてドットコードに変換され、これに対応する地物情報がディスプレイモニタ上に表示される(同図(b))。
図56は、地図上の代表点が位置する緯度・経度を属性コードとして用いる場合の説明図である。
すなわち、地図は複数の分割領域に分割されているが、これらの分割領域毎に代表点(ここでは10m×10mの領域)が設定されている。
すなわち、当該分割領域においては、代表点が位置する緯度・経度を当該領域の属性コードとして用いている。
図57は、この属性コードと、代表点と、アドレス(URL等)の関係付けを行う対応テーブルの一例を示している。
このように、代表点の緯度・経度を当該分割領域の属性コードとして用いることにより、所定の分割領域(たとえば市区町村や行政区画)に対して同一の属性コードを付与することができる。
なお、属性コードとして用いるのは代表点の緯度・経度だけでなく、たとえば図58に示すように、分割領域の図心の緯度・経度であってもよい。
地物コードがあれば自社や自宅を地図上で識別できる。しかし、地物コードの発行は個人で行うことはできない。地物コードの発行には膨大な管理システムが必要になる。
しかし、緯度経度を地物コードとして利用できれば、場所を特定することが非常に容易になる。そこで本実施形態では緯度経度を地物コードとして用いている。
図59は、地図とドットパターンが重畳印刷された紙媒体をスキャナで読み込んで、電子地図上に地物アイコンを表示する場合の例である。
XY座標と地物情報コードとがドットパターンで印刷された地図媒体をスキャナで読み取ると、当該地物情報コードとXY座標とがパーソナルコンピュータに読み込まれる。
パーソナルコンピュータの中央処理装置(CPU)は、記憶手段の地物情報コードテーブルを参照して、当該地物情報コードに対応したアドレスに格納された画像、動画、文字情報等のマルチメディア情報を読み出して、パーソナルコンピュータのディスプレイ画面またはスピーカから出力する。
一方、このテーブルには当該地物の代表点としての緯度経度も前記地物情報コードおよびアドレスと関連付けられており、たとえば、当該地物にある範囲でのXY座標の広がりがある場合には、当該地物の代表点としての緯度経度が用いられる。このように地物の代表点という概念を用いることにより、当該地物の駅からの距離等の計算が容易となる。
そして、地物情報コードとともに読み込まれたXY座標はあらかじめ用意された変換アルゴリズムにしたがって緯度経度に変換されて、電子地図を表示する。
(地図モード)
地図モードと情報モードとは紙媒体にあらかじめ印刷されたアイコン(ドットパターン)をスキャナで読み取ることによって切り替え可能になっている。
地図モードとのとき、XY座標が読み取られると、これがあらかじめ用意された変換アルゴリズムにしたがって緯度経度に変換されて、当該緯度経度を中心とした電子地図が表示される。
なおこのときに、パーソナルコンピュータ上でのディスプレイ画面でウィンドウが分割されており、電子地図と同時に画像、動画、文字情報のマルチメディア情報の表示が可能な場合には、XY座標と同時に読み取った地物情報コードに対応したアドレスに格納したマルチメディア情報が出力される。
(情報モード)
情報モードのとき、地物情報コードが読み取られると、当該地物情報コードに対応したアドレスからマルチメディア情報が読み出されて出力される。
また、当該地物と駅からの距離等を計算する場合には、当該地物の代表点としての緯度経度が読み出されてこの緯度経度を地物の緯度経度として計算が行われる。
なお、地図モード、情報モードのいずれであっても、地物情報コードを読み取ったときには、それに関連付けられた地物の代表点としての緯度経度を用いて表示、距離の計算等を行うことも可能である。
<電子地図のスクロール>
図60、図61は、電子地図をスクロールする方法について説明した図である。
図60(a)に示す如く、ユーザが地図(紙媒体)上の任意の位置でスキャナを連続して2回以上タッピングし、それからスキャナを地図上でスライドさせると、(b)に示す如く、スライドさせた方向に電子地図(ディスプレイモニタに表示された地図)がスクロールされるようになっている。
このとき、グリッドティルトとは、スキャナを前後に倒す動作をいい、この動作で地図上の位置を特定することができる。また反復タップ動作によって、地図上の位置を特定してもよい。要するにグリッドティルト・反復タップ動作とは、地図上でスキャナを動作させることによって地図上(媒体面上)のドットパターンを2回以上認識させることをいう。
すなわち媒体面のドットパターンを連続して2回以上認識することによって、撮像時の、XY座標(図61ではa1,a2)を捕捉し、その後、前記撮像手段を媒体面上でスライドさせて、地図からスキャナを離したときのXY座標(b1,b2)との差分量((b1=f1(a1,Δx)、b2=f2(a2,Δy))に基づいて、移動の方向および移動量を決定しディスプレイ画面に表示する
図61に示すように、スキャナで読み込まれたXY方向の差分量をもとに、これを緯度・経度に変換する。そして、最終的には移動量は、緯度・経度で表現する。
なお、前記タッピング動作の場合には、中央制御装置(CPU)のプログラムが地図面(媒体面)からの連続的な反射光の明暗の変化によってスキャナのグリッドタッピング動作を認識してもよい。
このように、タッピング動作を認識するためには、必ずしもスキャナがドットパターン(座標値)を最初に読み込む必要はなく、地図面(媒体面)からの連続的な反射光の明暗の変化で地図面(媒体面)上をスキャナがタッピングされていることを認識することができる。なお、タッピング動作が終了したときには、スキャナは地図面(媒体面)上で停止するので、そのときにはその地図面(媒体面)上のドットパターンを座標値またはコード値として読み込むようにすればよい。
図62は、媒体に印刷されたドットパターンと緯度経度とを関連付ける手順について説明した図である。
ユーザは、ドットパターンと電子地図の緯度経度とを関連付けて登録しておくことが可能である。
具体的には、ユーザは、(a)で示す電子地図上の(a,b)(緯度がa、経度がb)の位置にカーソルを移動させ、マウスを用いてクリックする。次にユーザは、(b)に示す如くシールをクリックする。すると、緯度a、経度bおよびシールのドットコードとが関連付けられて、(c)に示すテーブルとして登録される。これにより、ユーザがシールをクリックすると、電子地図の中心に(a、b)が表示されるようになる。
なお、ドットパターンが印刷された媒体はシールに限らず、アイコン、ブックマーク等、他の媒体であってもよい。
なお、図63は、電子地図と地物情報とを同一のディスプレイモニタに表示した場合の例である。
図64は、電子地図を印刷するインクと、ドットパターンを印刷するインクとで、判別可能な異なるインクを用いる場合について説明する図である。
(a)は、周波数特性の異なる2種類のインクを用いた場合について説明したものである。インクAとインクBとでは、周波数特性が異なる。たとえば、インクAとインクBとでは、周波数αにおける色の含有率が異なっている。そのため、ドットパターンと、地図およびアイコンが重畳印刷された媒体の色を解析することにより、ドットパターンと、地図およびアイコンを判別する。
(b)は、任意の周波数の光を吸収するか反射するかで、2種類のインクを判別する場合について説明したものである。たとえば、図に示す如く、周波数βにおいては、インクAは反射し、インクBは吸収する。ドットパターンの印刷にインクBを使用し、地図およびアイコンの印刷にインクAを用いることにより、ドットパターンと、地図およびアイコンを判別することが可能となる。
なお、任意の周波数の光を吸収するインクおよび反射するインクとは、任意の周波数における光の吸収率が高いインク、および反射率の高いインクも含むものである。
(c)は、(b)の場合において、インクBを不可視インクとした場合について説明したものである。すなわち、インクBは、可視光領域では不可視であるため、ユーザはドットパターンを認識することが困難となる。
このように、地図を印刷するためのインクとドットパターンを印刷するインクとをその特性が異なるインク、すなわちスキャナ等で撮影した際に判別可能な異なる光吸収特性・光反射特性を有するインクを用いることによって、ドットパターンのセキュリティを高めたり、特性毎に異なる情報を印刷させる等の多様性を持たせることができる。