(57)【要約】 【課題】  探索のアルゴリズムが簡易でかつ低解像度のフレームバッファでも読み取りが可能なドットパターンを実現する。【解決手段】  所定の情報ドットを配置するブロックの領域内に複数の基準点を設け、該基準点から定義される複数の仮想基準点を配置し、前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、前記仮想基準点上に情報ドットがあるか否かで情報を定義したドットパターンである。これによれば、すべての情報ドットにおいて距離と方向を定義することなく情報を定義することができるため、簡易にドットパターンを解析することが可能となる。【選択図】図６２
2008210402.tif 000002
【特許請求の範囲】
【請求項１】
情報ドットを配置するブロックの領域内に複数の基準点を設け、
該基準点から定義される複数の仮想基準点を配置し、
前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、
前記仮想基準点上に情報ドットがあるか否かで情報を定義したドットパターン。
【請求項２】
情報ドットを配置するブロックの領域内に複数の基準点を設け、
該基準点から定義される複数の仮想基準点を配置し、
前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、
前記情報ドットの大きさまたは形状によって情報を定義したドットパターン。
【請求項３】
前記基準点と前記仮想基準点が一致している請求項１または２記載のドットパターン。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷物等に形成したドットパターン情報を光学的に読み取ることにより、様
々な情報やプログラムを入出力させるドットパターンを用いた情報入出力方法に関するも
のであり、特にドットで構成されるブロックの向きを判定できる技術に関する。
【背景技術】
【０００２】
従来より、印刷物等に印刷されたバーコードを読み取り、音声等の情報を出力させる情
報出力方法が提案されている。たとえば、あらかじめ記憶手段に与えられたキー情報に一
致する情報を記憶させておき、バーコードリーダで読み込まれたキーから検索して情報等
を出力する方法が提案されている。また、多くの情報やプログラムを出力できるように
、微細なドットを所定の法則で並べたドットパターンを生成し、印刷物等に印刷したドッ
トパターンをカメラにより画像データとして取り込み、デジタル化して音声情報を出力さ
せる技術も提案されている。
【０００３】
しかし、上記従来のバーコードにより音声等を出力させる方法は、印刷物等に印刷され
たバーコードが目障りであるという問題を有していた。また、バーコードが大きく、紙面
の一部を占有するため、このようにバーコードが大きいと、一部分の文章やセンテンスま
たは、写真、絵、グラフィックの画像の中に登場する意味を有するキャラクターや対象物
毎に分り易く数多くのバーコードを割り当てることはレイアウト上不可能であるという問
題を有していた。
【０００４】
そこで、本発明者は、下記の特許文献に示すように、印刷面に影響を与えることなく多
くのデータを格納できる全く新しいドットパターンを提案してきている。
【特許文献１】ＷＯ/２００４/０８４１２５
【特許文献２】ＰＣＴ/ＪＰ２００４/０１９４２７
【発明の開示】
【発明が解決しようとする課題】
【０００５】
これらの本発明者による先行技術（特許文献１、２）において、本発明者はキードット
を設けてデータの方向（ブロックの方向）とブロックの領域を定義することを提案してい
る。このようにブロックの方向が把握できることにより、ブロックで定義された情報をそ
の方向毎に異なる意味とすることができるため、多様な情報を格納できるという本発明者
独自の独創的なドットパターンを提案している。
【０００６】
しかし、このキードットによりブロックの方向を定義する技術は、キードットを配置す
るための箇所には情報ドットが配置できないために、ブロックの情報量が制限されること
になり、かつ、キードットを探索するためのアルゴリズムが複雑化して計算時間を要し、
かつキードットの周辺領域の着目量が大きいため、フレームバッファの解像度も必要であ
るという克服すべき課題のあることが本発明者によって新たに指摘された。
【０００７】
本発明は、このような点に鑑みてなされたもので、ブロックの方向を定義するために情
報ドットを犠牲にすることなく、その探索のアルゴリズムが簡易でかつ低解像度のフレー
ムバッファでも読み取りが可能な、キードットに代わるディレクションドットの技術を実
現することを課題とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するために、本発明では、以下の手段を採用した。
【０００９】
すなわち、本発明の請求項１は、情報ドットを配置するブロックの領域内に複数の基準点を設け、該基準点から定義される複数の仮想基準点を配置し、前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、前記仮想基準点上に情報ドットがあるか否かで情報を定義したドットパターンである。
【００１０】
すなわち、本発明では、紙面等の媒体面上に所定の規則（たとえば三角形や四角形さら
にはそれ以上の多角形の頂点や、それらの辺の所定間隔毎等）に基づいて基準点を配置す
る。そしてその配置された複数の基準点からある規則に基づいて仮想基準点を設定する。
ここである規則とは、たとえば、前記多角形の頂点同士を結んだ線の交点を仮想基準点と
するような場合である。そして、この仮想基準点を始点にしたベクトルの終点にドットを
配置する。このドットは情報を定義する情報ドットとして機能する。
【００１１】
なお、このようなドットパターンは、コンピュータ等の情報処理装置にプログラミング
することによって、当該プログラムに基づいてプリンタ等で印刷出力することによって紙
面などの媒体面上に生成することができる。
【００１２】
また、このような媒体面上のドットパターンは、光学読取手段を用いて画像データとし
て読み取って、当該画像データを解析してドット相互間の位置と距離とを解析することに
よって基準点、仮想基準点、情報ドットとして認識可能である。
【００１３】
本発明の請求項２は、情報ドットを配置するブロックの領域内に複数の基準点を設け、該基準点から定義される複数の仮想基準点を配置し、前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、前記情報ドットの大きさまたは形状によって情報を定義したドットパターンである。
【００１４】
本発明の請求項３は、前記基準点と前記仮想基準点が一致している請求項１または２記載のドットパターンである。
【００１５】
このように、基準点と仮想基準点を一致させてもよい。
【発明の効果】
【００１６】
本発明によれば、ブロックの方向の定義が容易なドットパターンを実現することができ
る。
【発明を実施するための最良の形態】
【００１７】
次に、本発明を図面に基づいて説明する。
【００１８】
まず本発明で用いるドットパターンの基本原理を説明し、その後、これらのドットパタ
ーンのディレクションドットの具体例について説明する。
【００１９】
（ドットパターンの説明：ＧＲＩＤ１）
図１〜図２０は、本発明の前提となるドットパターンの原理を説明するための図である
。これらの図１〜図２０では、ＧＲＩＤ１によるドットパターンを説明するためのもので
あり、キードット２が含まれているが、このキードット２は本発明のディレクションドットとは異なるものであり、本願発明の特徴的なものではない。
【００２０】
なおこの図１〜図２０に記載されたキードット２と本発明によるディレクションドットとの違いは図２１以下で詳細に説明する。
【００２１】
図１は本発明のドットパターンの一例であるＧＲＩＤ１を示す説明図である。図２はド
ットパターンの情報ドットおよびそれに定義されたデータのビット表示の一例を示す拡大
図である。図３（ａ）、（ｂ）はキードット（このキードットは本発明のディレクション
ドットとは異なる）を中心に配置した情報ドットを示す説明図である。
【００２２】
本発明のドットパターンを用いた情報入出力方法は、ドットパターン１の生成と、その
ドットパターン１の認識と、このドットパターン１から情報およびプログラムを出力する
手段とからなる。すなわち、ドットパターン１をカメラにより画像データとして取り込み
、まず、基準格子点ドット４を抽出し、次に本来基準格子点ドット４がある位置にドット
が打たれていないことによってキードット２（ここでのキードット２は本発明のディレク
ションドットとは異なる）を抽出し、次に情報ドット３を抽出することによりデジタル化
して情報領域を抽出して情報の数値化を図り、その数値情報より、このドットパターン１
から情報およびプログラムを出力させる。たとえば、このドットパターン１から音声等の
情報やプログラムを、情報出力装置、パーソナルコンピュータ、ＰＤＡまたは携帯電話等
に出力させる。
【００２３】
本発明のドットパターン１の生成は、ドットコード生成アルゴリズムにより、音声等の
情報を認識させるために微細なドット、すなわち、キードット、情報ドット、基準格子点
ドット４を所定の規則に則って配列する。図１に示すように、情報を表すドットパターン
１のブロックは、キードット２を中心に５×５の基準格子点ドット４を配置し、４点の基
準格子点ドット４に囲まれた中心の仮想格子点５の周囲に情報ドット３を配置する。この
ブロックには任意の数値情報が定義される。なお、図１の図示例では、ドットパターン１
のブロック（太線枠内）を４個並列させた状態を示している。ただし、ドットパターン１
は４ブロックに限定されないことはもちろんである。
【００２４】
１つのブロックに１つの対応した情報およびプログラムを出力させ、または、複数のブ
ロックに１つの対応した情報およびプログラムを出力させることができる。
【００２５】
基準格子点ドット４は、カメラでこのドットパターン１を画像データとして取り込む際
に、そのカメラのレンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時
の歪みを矯正することができる。具体的には歪んだ４点の基準格子点ドット４を元の正方
形に変換する補正用の関数（Ｘｎ，Ｙｎ）＝ｆ（Ｘｎ’，Ｙｎ’）を求め、その同一の関
数で情報ドット３を補正して、正しい情報ドット３のベクトルを求める。
【００２６】
ドットパターン１に基準格子点ドット４を配置してあると、このドットパターン１をカ
メラで取り込んだ画像データは、カメラが原因する歪みを補正するので、歪み率の高いレ
ンズを付けた普及型のカメラでドットパターン１の画像データを取り込むときにも正確に
認識することができる。また、ドットパターン１の面に対してカメラを傾けて読み取って
も、そのドットパターン１を正確に認識することができる。
【００２７】
キードット２は、図１に示すように、矩形状に配置した基準格子点ドット４の略中心位
置にある１個の基準格子点ドット４を一定方向にずらして配置したドットである。このキ
ードット２は、情報ドット３を表す１ブロック分のドットパターン１の代表点である。た
とえば、ドットパターン１のブロックの中心の基準格子点ドット４を上方に０．２ｍｍず
らしたものである。情報ドット３がＸ，Ｙ座標値を表す場合に、キードット２を下方に０
．２ｍｍずらした位置が座標点となる。ただし、この数値はこれに限定されずに、ドット
パターン１のブロックの大小に応じて可変し得るものである。
【００２８】
情報ドット３は種々の情報を認識させるドットである。この情報ドット３は、キードッ
ト２を代表点にして、その周辺に配置すると共に、４点の基準格子点ドット４で囲まれた
中心を仮想格子点５にして、これを始点としてベクトルにより表現した終点に配置したも
のである。たとえば、この情報ドット３は、基準格子点ドット４に囲まれ、図２に示すよ
うに、その仮想格子点５から０．２ｍｍ離れたドットは、ベクトルで表現される方向と長
さを有するために、時計方向に４５度ずつ回転させて８方向に配置し、３ビットを表現す
る。したがって、１ブロックのドットパターン１で３ビット×１６個＝４８ビットを表現
することができる。
【００２９】
なお、図示例では８方向に配置して３ビットを表現しているが、これに限定されずに、
１６方向に配置して４ビットを表現することも可能であり、種々変更できることはもちろ
んである。
【００３０】
キードット２、情報ドット３または基準格子点ドット４のドットの径は、見栄えと、紙
質に対する印刷の精度、カメラの解像度および最適なデジタル化を考慮して、０．１ｍｍ
程度が望ましい。
【００３１】
また、撮像面積に対する必要な情報量と、各種ドット２，３，４の誤認を考慮して基準
格子点ドット４の間隔は縦・横１ｍｍ前後が望ましい。基準格子点ドット４および情報ド
ット３との誤認を考慮して、キードット２のずれは格子間隔の２０％前後が望ましい。
【００３２】
この情報ドット３と、４点の基準格子点ドット４で囲まれた仮想格子点との間隔は、隣
接する仮想格子点５間の距離の１５〜３０％程度の間隔であることが望ましい。情報ドッ
ト３と仮想格子点５間の距離がこの間隔より近いと、ドット同士が大きな塊と視認され
やすく、ドットパターン１として見苦しくなるからである。逆に、情報ドット３と仮想格
子点５間の距離がこの間隔より遠いと、隣接するいずれの仮想格子点５を中心にしてベ
クトル方向性を持たせた情報ドット３であるかの認定が困難になるためである。
【００３３】
たとえば，情報ドット３は、図３（ａ）に示すように、キードット２を中心に時計回り
でＩ１からＩ１６を配置する格子間隔は１ｍｍであり、４ｍｍ×４ｍｍで３ビット×１６
＝４８ビットを表現する。
【００３４】
なお、ブロック内に個々に独立した情報内容を有し、かつ他の情報内容に影響されない
サブブロックをさらに設けることができる。図３（ｂ）はこれを図示したものであり、４
つの情報ドット３で構成されるサブブロック[Ｉ１、Ｉ２、Ｉ３、Ｉ４]、[Ｉ５、Ｉ６、
Ｉ７、Ｉ８]、[Ｉ９、Ｉ１０、Ｉ１１、Ｉ１２]、[Ｉ１３、Ｉ１４、Ｉ１５、Ｉ１６]は
各々独立したデータ（３ビット×４＝１２ビット）が情報ドット３に展開されるようにな
っている。このようにサブブロックを設けることにより、エラーチェックをサブブロック
単位で容易に行うことができる。
【００３５】
情報ドット３のベクトル方向（回転方向）は、３０度〜９０度毎に均等に定めるのが望
ましい。
【００３６】
図４は情報ドット３およびそこに定義されたデータのビット表示の例であり、他の形態
を示すものである。
【００３７】
また、情報ドット３について基準格子点ドット４で囲まれた仮想格子点５から長・短の
２種類を使用し、ベクトル方向を８方向とすると、４ビットを表現することができる。こ
のとき、長い方が隣接する仮想格子点５間の距離の２５〜３０％程度、短い方は１５〜２
０％程度が望ましい。ただし、長・短の情報ドット３の中心間隔は、これらのドットの径
より長くなることが望ましい。
【００３８】
４点の基準格子点ドット４で囲まれた情報ドット３は、見栄えを考慮し、１ドットが望
ましい。しかし、見栄えを無視し、情報量を多くしたい場合は、１ベクトル毎に、１ビッ
トを割り当て情報ドット３を複数のドットで表現することにより、多量の情報を有するこ
とができる。たとえば、同心円８方向のベクトルでは、４点の格子ドット４に囲まれた情
報ドット３で２８の情報を表現でき、１ブロックの情報ドット１６個で２１２８となる。
【００３９】
図５は情報ドットおよびそこに定義されたデータのビット表示の例であり、（ａ）はド
ットを２個、（ｂ）はドットを４個および（ｃ）はドットを５個配置したものを示すもの
である。
【００４０】
図６はドットパターンの変形例を示すものであり、（ａ）は情報ドット６個配置型、（
ｂ）は情報ドット９個配置型、（ｃ）は情報ドット１２個配置型、（ｄ）は情報ドット３
６個配置型の概略図である。
【００４１】
図１と図３に示すドットパターン１は、１ブロックに１６（４×４）の情報ドット３を
配置した例を示している。しかし、この情報ドット３は１ブロックに１６個配置すること
に限定されずに、種々変更することができる。たとえば、必要とする情報量の大小または
カメラの解像度に応じて、情報ドット３を１ブロックに６個（２×３）配置したもの（ａ
）、情報ドット３を１ブロックに９個（３×３）配置したもの（ｂ）、情報ドット３を１
ブロックに１２個（３×４）配置したもの（ｃ）、または情報ドット３を１ブロックに３
６個配置したもの（ｄ）がある。
【００４２】
（ドットパターンの説明：ＧＲＩＤ３）
次にＧＲＩＤ３について説明する。
【００４３】
図７は本発明のドットパターンの一例を示す説明図、図８はドットパターンの情報ドッ
トおよびそれに定義されたデータのビット表示の一例を示す拡大図、図９（ａ）、（ｂ）
、（ｃ）はキードットと情報ドットとの配置状態を示す説明図である。
【００４４】
本発明のドットパターンを用いた情報入出力方法は、ドットパターン１の認識と、この
ドットパターン１から情報およびプログラムを出力する手段とからなる。
【００４５】
すなわち、ドットパターン１をカメラにより画像データとして取り込み、まず、基準格
子点ドット４を抽出し、これを仮想基準格子点６の位置であると判定し、これらの仮想基
準格子点６を結ぶ直線を基準格子線７とする。そして、この基準格子線７上で、本来基準
格子点ドット４があるべき仮想基準格子点６の位置にドットが配置されていない場合、こ
の仮想基準格子点６の周辺のドットを抽出し、これをキードット２（ブロックの四隅の角
部）とする。そして、次に前記仮想基準格子点６同士を結ぶ縦横の格子線８ａ、８ｂを設
定し、その格子線同士の交点を仮想格子点１１（第１の仮想格子点）とする。そしてこの
仮想格子点１１の周囲のドットを探索し、その仮想格子点１１からの距離と方向とで定義
される情報ドット３を抽出する。
【００４６】
また、仮想基準格子点６同士を斜め方向に結ぶ斜め格子線８ｃを想定し、この斜め格子
線８ｃ同士の交点も仮想格子点１２（第２の仮想格子点）とする。そしてこの仮想格子点
１２の周囲のドットも探索し、その仮想格子点１２からの距離と方向とで定義される情報
ドット３を抽出する。
【００４７】
次に、キードット２の仮想基準格子点６または仮想格子点１１からの方向によって当該
ブロックの向きが決定される。たとえば、キードット２が仮想格子点から＋ｙ方向にずれ
ていた場合には縦方向を正位としてブロック内の情報ドット３を認識すればよい。
【００４８】
また、キードット２が仮想基準格子点６または仮想格子点１１から−ｙ方向にずれてい
れば当該ブロックをブロック中心を軸に１８０度回転させた方向を正位としてブロック内
の情報ドット３を認識すればよい。
【００４９】
また、キードット２が仮想基準格子点６または仮想格子点１１から−ｘ方向にずれてい
れば当該ブロックをブロック中心を軸に時計方向に９０度回転させた方向を正位としてブ
ロック内の情報ドット３を認識すればよい。
【００５０】
また、キードット２が仮想基準格子点６または仮想格子点１１から＋ｘ方向にずれてい
れば当該ブロックをブロック中心を軸に反時計方向に９０度回転させた方向を正位として
ブロック内の情報ドット３を認識すればよい。
【００５１】
光学読取手段で読み取られたドットパターン１の画像がフレームバッファに蓄積される
と、当該光学読取手段の中央処理装置（ＣＰＵ）は、フレームバッファのドットを解析し
て、各情報ドット３の仮想格子点１１、１２からの距離と方向によって情報ドット３毎に
定義された数値を復号する。そしてこれらの数値はｘｙ座標またはコードとして光学読取
手段またはパーソナルコンピュータのメモリに格納された情報と照合されて、前記ｘｙ座
標またはコードに対応する音声、画像、動画、文字、プログラム等が読み出されて、表示
手段、音声・画像出力手段とから出力される。
【００５２】
本発明のドットパターン１の生成は、ドットコード生成アルゴリズムにより、音声等の
情報を認識させるために微細なドット、すなわち、キードット２、情報ドット３、基準格
子点ドット４を所定の規則に則って配列する。
【００５３】
図７に示すように、印刷物等の媒体面の、正方形または長方形の矩形領域をブロックと
する。そして、該ブロックの枠を構成する縦方向および横方向の直線を基準格子線７（図
７で太枠で示した線）として、該基準格子線７上の所定間隔毎に仮想基準格子点６を設け
、仮想基準格子点６上に基準格子点ドット４を配置する。次に、該仮想基準格子点６同士
を結びかつ前記基準格子線７と平行な直線を格子線８ａ、８ｂとし、格子線８ａ、８ｂ同
士の交点を仮想格子点１１（第１の仮想格子点）とする。
【００５４】
そしてさらに、前記仮想基準格子点６同士を斜め方向に結ぶ斜め格子線８ｃを設定し、
この斜め格子線８ｃ同士の交点も仮想格子点１２（第２の仮想格子点）とする。
【００５５】
このように設定された仮想格子点１１、１２を基準に距離と方向を有する１または複数
の情報ドット３をそれぞれ配置してドットパターンを生成する。
【００５６】
カメラでこのドットパターン１を画像データとして取り込む際に、そのカメラのレンズ
の歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時の歪みを前記基準格子点
ドット４によって矯正することができる。具体的には歪んだ４点の仮想格子点を元の正方
形に変換する補正用の関数（Ｘｎ，Ｙｎ）＝ｆ（Ｘｎ’，Ｙｎ’）を求め、その同一の関
数で情報ドットを補正して、正しい情報ドット３のベクトルを求める。
【００５７】
ドットパターン１に基準格子点ドット４を配置してあると、このドットパターン１をカ
メラで取り込んだ画像データは、カメラが原因する歪みを補正するので、歪み率の高いレ
ンズを付けた普及型のカメラでドットパターン１の画像データを取り込むときにも正確に
認識することができる。また、ドットパターン１の面に対してカメラを傾けて読み取って
も、そのドットパターン１を正確に認識することができる。
【００５８】
キードット２は、図７に示すように、矩形状に配置した仮想格子点の略中心位置にある
１個の仮想格子点１１を基準に距離と方向によって配置されたドットである。このキード
ット２は、ひとまとまりの情報ドット群を表す１ブロック分のドットパターン１の代表点
である。たとえば、ドットパターン１のブロックの中心の仮想格子点１１から上方に０．
２ｍｍずれた位置に配置されているものである。したがって、情報ドット３が仮想格子点
からのＸ、Ｙ座標値で定義される場合には、キードット２から下方に０．２ｍｍの距離の
位置が仮想格子点（座標点）となる。ただし、この数値（０．２ｍｍ）はこれに限定され
ずに、ドットパターン１のブロックの大小に応じて可変し得るものである。
【００５９】
情報ドット３は種々の情報を認識させるドットである。この情報ドット３は、図１２の
場合、キードット２を代表点にして、その周辺に配置すると共に、４点の仮想格子点１１
（第１の仮想格子点）で囲まれた中心を仮想格子点１２（第２の仮想格子点）にして、こ
れを始点としてベクトルにより表現した終点に配置したものである。たとえば、この情報
ドット３は、仮想格子点１１、１２に囲まれ、図８に示すように、その仮想格子点１１，
１２から０．２ｍｍ離れたドットは、ベクトルで表現される方向と長さを有するために、
時計方向に４５度ずつ回転させて８方向に配置し、３ビットを表現している。
【００６０】
この図によれば、１ブロックのドットパターン１で３ビット×１６個＝４８ビットを表
現することができる。
【００６１】
なお、図示例では８方向に配置して３ビットを表現しているが、これに限定されずに、
１６方向に配置して４ビットを表現することも可能であり、種々変更できることはもちろ
んである。
【００６２】
さらに、図７では全ての仮想格子点において、この仮想格子点を始点としてその終点位
置に情報ドットを配置したが、これに限定されることなく、仮想格子点上にドットが配置
されているか否かで情報を定義するようにしてもよい。たとえば仮想格子点上にドットが
配置されていれば「１」、配置されていなければ「０」というように情報を定義すること
ができる。
【００６３】
キードット２、情報ドット３または基準格子点ドット４のドットの径は、見栄えと、紙
質に対する印刷の精度、カメラの解像度および最適なデジタル化を考慮して、０．１ｍｍ
程度が望ましい。
【００６４】
また、撮像面積に対する必要な情報量と、各種ドット２，３，４の誤認を考慮して基準
格子点ドット４の間隔は縦・横１ｍｍ前後が望ましい。基準格子点ドット４および情報ド
ット３との誤認を考慮して、キードット２のずれは格子間隔の２０％前後が望ましい。
【００６５】
この情報ドット３と、仮想格子点１１または１２との間隔は、隣接する仮想格子点１１
，１２間の距離の１５〜３０％程度の間隔であることが望ましい。情報ドット３と仮想格
子点１１，１２間の距離がこの間隔より近いと、ドット同士が大きな塊と視認されやすく
、ドットパターン１として見苦しくなるからである。逆に、情報ドット３と仮想格子点間
の距離がこの間隔より遠いと、隣接するいずれかの仮想格子点１１，１２を中心にしてベ
クトル方向性を持たせた情報ドット３であるかの認定が困難になるためである。
【００６６】
図９は、ブロック内における情報ドット３の読取順を示したものであり、同図中の丸付
き数字は、それぞれ仮想格子点１１，１２毎に配置された情報ドット３の配置領域を意味
しているものとする。
【００６７】
たとえば、図９（ａ）の場合、ブロック中心の（１）（図中で丸で囲まれた数字の「１
」を意味している、以下同じ）を中心として、そこから時計回りで（１）から（２５）が
配置されている。このときの格子間隔はたとえば１ｍｍであり、４ｍｍ×４ｍｍで３ビッ
ト×１６２５＝４８７５ビットを表現する。
【００６８】
図９（ｂ）は、ブロックの左上の矩形領域の情報ドット（１）から縦方向に順番に（４
）まで配置した後、縦横方向の格子線同士の交点に配置された情報ドット（５）〜（７）
を配置している。
【００６９】
図９（ｃ）は、ブロックの左上の矩形領域の情報ドット（１）から縦方向に（１６）ま
で順番に配置した後、縦横の格子線同士の交点に配置された情報ドット（１７）〜（２５
）を配置している。
【００７０】
図１０は情報ドットおよびそこに定義されたデータのビット表示の例であり、他の形態
を示すものである。
【００７１】
また、情報ドット３について基準格子点ドット４で囲まれた仮想格子点１１，１２から
短（図１０の上段）・長（図１０の下段）の2種類を使用し、ベクトル方向を８方向とす
ると、４ビットを表現することができる。このとき、長い方が隣接する仮想格子点間の距
離の２５〜３０％程度、短い方は１５〜２０％程度が望ましい。ただし、長・短の情報ド
ット３の中心間隔は、これらのドットの径より長くなることが望ましい。
【００７２】
４点の仮想格子点１１，１２で囲まれた情報ドット３は、見栄えを考慮し、１ドットが
望ましい。しかし、見栄えを無視し、情報量を多くしたい場合は、１ベクトル毎に、１ビ
ットを割り当て情報ドット３を複数のドットで表現することにより、多量の情報を有する
ことができる。たとえば、同心円８方向のベクトルでは、４点の基準格子点ドット４に囲
まれた情報ドット３で２８の情報を表現でき、１ブロックの情報ドット16個で２１２８と
なる。
【００７３】
図１１は情報ドット３およびそこに定義されたデータのビット表示の例であり、（ａ）
はドットを２個、（ｂ）はドットを４個および（ｃ）〜（ｅ）はドットを５個、（ｆ）は
７個配置したものを示すものである。
【００７４】
図１２はドットパターンの変形例を示すものであり、（ａ）はブロック内に情報ドット
３を８個配置したもの、（ｂ）は情報ドット３を１３個配置したもの、（ｃ）は情報ドッ
ト３を１８個配置したもの、（ｄ）は情報ドット３を４１個配置したものである。
【００７５】
前述の図７と図９に示すドットパターン１は、１ブロックに２５個の情報ドット３を配
置した例を示している。しかし、この情報ドット３は１ブロックに２５個配置することに
限定されずに、種々変更することができる。たとえば、必要とする情報量の大小またはカ
メラの解像度に応じて、情報ドット３を１ブロックに８個配置したもの（図１２（ａ））
、情報ドット３を１ブロックに１３個配置したもの（図１２（ｂ））、情報ドット３を１
ブロックに１８個配置したもの（図１２（ｃ））、または情報ドット３を１ブロックに４
１個配置したもの（図１２（ｄ））がある。
【００７６】
（ドットパターンの説明：ＧＲＩＤ４）
次にＧＲＩＤ４について説明する。
【００７７】
図１３は、本発明の実施形態であるドットパターンを具体的に示したものであり、（ａ
）は４×４格子、（ｂ）は５×４格子、（ｃ）は６×４格子分のドットパターンを示して
いる。
【００７８】
同図（ａ）において、まず四角形を構成する縦横方向の基準格子線７ａ〜７ｄを設け、
その四角形内の所定間隔毎に仮想格子点１３が配置されている。
【００７９】
なお、基準格子線７ａ〜７ｄおよび仮想格子点１３については、実際に紙面（媒体面）
に印刷されるわけではなく、あくまでもコンピュータの画像メモリ上にドットパターンの
配置の際、またはドットパターンの読取の際に仮想的に設定されるものである。
【００８０】
次に、上下の横方向の基準格子線７ａ、７ｂ上の仮想基準格子点１４上に基準格子点ド
ット４を配置する。
【００８１】
次に、仮想格子点１３同士を結ぶ縦横方向の格子線８ａ、８ｂを想定し、この格子線８
ａ、８ｂ同士の交点を同じく仮想格子点１３とする。
【００８２】
次に、仮想格子点１３を基準に距離と方向とを有する情報ドット３を仮想格子点１３毎
に１または２以上配置してドットパターンを生成する。なお、図１３では仮想格子点１３
毎に１つの情報ドット３が配置されている。
【００８３】
以上に説明した図１３（ａ）は格子数を縦方向に４個、横方向に４個の単位で情報ドッ
ト３を配置した場合（４×４格子）であるが、同図（ｂ）は５×４格子、（ｃ）は６×４
格子をそれぞれ示している。
【００８４】
図１４は情報ドット３の定義を示したものであり、仮想格子点１３を中心に情報ドット
３の方向で値を定義したものである。同図では仮想格子点を通過する格子線を基準に時計
方向に４５度ずつ８方向に情報ドットを配置することによって、合計８通り（二進法で０
００から１１１、３ビット）の情報を定義できるようになっている。
【００８５】
また、図１５は前記方向にさらに距離を２段階にすることによって合計１６通り（二進
法で）、すなわち００００〜１１１１（４ビット）の情報を定義できるようになっている
。
【００８６】
図１６は、仮想格子点１３を中心に同心円上に複数の情報ドット３を配置する場合であ
り、その位置がドットがある場合を１、ない場合を０として定義することにより、８ビッ
トを定義でき、すなわち鉛直方向に位置するドットを１ビット目として時計回りにビット
情報を定義できる。
【００８７】
図１７は当該同心円を２つにしたものであり、１６ビットを定義できる。このようにす
ることにより、１つの仮想格子点１３に対して膨大な情報量を定義することが可能となる
。
【００８８】
図１８は、光学読取手段における情報ドット３の読取順を説明するためのものである。
同図における丸付き数字は便宜的なものであり、実際には図１３（ａ）〜（ｃ）に示され
たドットパターンとなっている。
【００８９】
同図（ａ）では、まず左側縦方向の基準格子線７ｃに沿って縦方向に仮想格子点毎の情
報ドットを読み取った後（丸付き数字（１）〜（３））、次の縦方向格子線８ｂ上の仮想
格子点１３を上から順番に読み取る（丸付き数字（４）〜（６））。このようにして順次
仮想格子点１３毎の読取を実行する。
【００９０】
なお、以上の説明では格子毎の読取順は縦方向の格子線８ｂの左から順番としたが、情
報を配置・読み取る格子順は任意に設定してよいことはもちろんである。
【００９１】
図１９は、基準格子線上の仮想格子点１３上に、基準格子点ドット４の代わりにキード
ット２を配置した例である。基準格子線７ａの中間位置の仮想格子点１３を基準に上方向
にずらした位置にキードット２を配置している。
【００９２】
これらのキードット２により、ドットパターンの方向を定義することができる。
【００９３】
図２０は差分法を用いた情報ドット３の読取方法について説明したものである。以下で
は図面の四角形数字を［］、丸付き数字を（）で表現する。
【００９４】
すなわち、図２０では、４×４格子において、（４）の情報ドットの値と（１）の情報
ドットの値の差分により値［１］を表現している。
【００９５】
同様に、［２］は（５）と（２）の差分、［３］は（６）と（３）の差分で表現できる
。［４］〜［１２］も同様に表現している。
【００９６】
［１］〜［１２］は以下の情報ドット間の差分で表現することができる。
【００９７】
［１］＝（４）−（１）
［２］＝（５）−（２）
［３］＝（６）−（３）
［４］＝（７）−（４）
［５］＝（８）−（５）
［６］＝（９）−（６）
［７］＝（１０）−（７）
［８］＝（１１）−（８）
［９］＝（１２）−（９）
［１０］＝（１３）−（１０）
［１１］＝（１４）−（１１）
［１２］＝（１５）−（１２）
このような差分法を用いることにより、１つの真値に対して異なる複数のドットパター
ンを生成することができ、セキュリティを高めることができる。
【００９８】
（ＧＲＩＤ１におけるディレクションドットの説明）
以上の図１〜図２０の説明は主として本発明者が提唱しているドットパターンの一例を
説明したものである。以下の説明では、キードット２を用いることなくディレクションド
ットによってブロックの方向を定義する場合について詳細に説明する。
【００９９】
図２１（ａ）および（ｂ）は、図１〜図６で説明したＧＲＩＤ１によるドットパター
ンを前提にしてディレクションドット２１を配置した例である。
【０１００】
この例では、基準格子点ドット４に囲まれた領域の中心点からのずらし方によって情報
を定義している。したがって、全ての格子領域に情報ドット３を配置することができるが
、３×３個の中央の格子領域のみはディレクションドット２１が配置されている。
【０１０１】
ディレクションドット２１の配置領域では、ディレクションドットは中心点から縦横方
向にずれた位置に配置されて方向と情報とを表している。すなわち、図２１（ａ）では、
ディレクションドット２１が中心から上方にずらした位置（＋Ｙ方向）に配置されている
ので、当該ブロックは上向きであることがわかる。これが中心から下方にずらした位置（
−Ｙ方向）に配置されている場合は、当該ブロックは下向きであることがわかる。同様に
、中心から左方向にずらした位置（−Ｘ方向）に配置されている場合は、当該ブロックは
左向き、中心から右方向にずらした位置（＋Ｘ方向）に配置されている場合は、当該ブロ
ックは右向きであることがわかる。
【０１０２】
また、ディレクションドット２１以外の格子領域では、中心点から斜め方向にずらすこ
とにより、情報を定義している。この定義の仕方については前述したので説明は省略する
。
【０１０３】
なお、このような方向基準が他の格子領域とは異なる領域（ディレクションドット２１
が配置される格子領域）は、その中央に配置した場合にはディレクションドット２１の方
向でブロックを定義をすることになるが、この方向基準の異なる格子領域をブロックの他
の領域に配置した場合（ディレクション領域）には、その配置位置によってブロックの方
向を定義することができる（図４０参照）。また、このような方向基準の異なる格子領域
を複数設けてその配置態様によってブロックの方向を定義することもできる（図３４〜図
３７）。これらの場合には方向基準の異なる格子領域を配置するだけでブロックの方向が
定義できるため、当該格子領域に配置される情報ドット３は必ずしもブロックの方向と一
致させる必要はない。この点については後で詳しく説明する。
【０１０４】
このように、ディレクション領域では縦横方向、それ以外の領域では斜め方向に情報ド
ット３を配置することによって、キードット２のために基準格子点ドット４のいずれかを
ずらして基準格子点の等間隔性を犠牲にすることがないため、ドットパターンの読取アル
ゴリズムを簡易化できる。また、ディレクション領域にはそのまま情報ドット３を配置す
ることができるため、情報ドット３を犠牲にすることなくブロックの方向を定義できる。
さらに、ディレクションドット２１を配置した場合であっても中心点からのずれ量（中心
点からの長さ）で情報を定義することができ、情報ドット３とディレクションドット２１
とを兼用することが可能である。
【０１０５】
図４７は、ディレクションドットと情報ドットの判定アルゴリズムを説明するための図
である。
【０１０６】
ディレクションドット２１と情報ドット３との判別に際して、以下のような手順を実行
する。
【０１０７】
（１）ｓ＝｜ｌ０−ｌ２｜を算出する。
【０１０８】
（２）ｔ＝｜ｌ３−ｌ１｜を算出する。
【０１０９】
（３）ｓ−ｔを算出する。
【０１１０】
（４）ｓ−ｔが所定値ｐ以上であれば情報ドット、所定値ｐ未満であればディレクショ
ンドットと判定する。
【０１１１】
具体的には、図４７（ａ）の場合、
ｓ−ｔ＝｜ｌ０−ｌ２｜−｜ｌ３−ｌ１｜＝｜ｌ０−ｌ２｜
｜ｌ０−ｌ２｜≧ｐであれば情報ドットである。
【０１１２】
同図（ｂ）の場合、
ｓ−ｔ＝｜ｌ０−ｌ２｜−｜ｌ３−ｌ１｜＝０
０＜ｐであればディレクションドットである。
【０１１３】
なお、ｐの値は任意に設定できるが１２０pixel2程度が好ましいがこれに限定されるも
のではない。
【０１１４】
図２１（ａ）は、３×３＝９個の格子領域で形成されたブロックを示しており、同図（
ｂ）はこのブロックを縦横２個ずつ配置した例を示している。
【０１１５】
図２２（ａ）および（ｂ）は、図２１（ａ）および（ｂ）に対応した情報ドット３の格
子領域毎の配置順を示したものである。情報ドット３の配置順はこれに限定されるもので
はない。
【０１１６】
（ＧＲＩＤ３：ディレクションドットの配置例）
図２３（ａ）および（ｂ）は、ディレクションドット２１を別のドットパターン（ＧＲ
ＩＤ３）に適用した場合の図である。
【０１１７】
ＧＲＩＤ１では、４点の基準格子点ドットに囲まれた領域内に情報ドット３を配置した
が、ＧＲＩＤ３では、基準格子点の位置にも情報ドット３を配置している。この例では、
ブロック内で、いずれかの基準格子点に着目して、ディレクションドット２１を配置する
ことができる。
【０１１８】
図２３（ａ）では、４×４＝１６個の格子領域のうち、左上の格子領域の右下に位置す
る基準格子点をディレクションドット２１の配置場所としている。ディレクションドット
２１の配置場所をこのようにした場合、当該ブロックの中心２４を中心に、９０度ずつ回転させた位置（２３ａ，２３ｂ，２３ｃ）ではディレクションドット２１と同じ方向（縦横方向）に情報ドット３が配置されているとどれがディレクションドット２１であるか判別できずに、ブロックの方向を定義できない可能性がある。
【０１１９】
そこで、ディレクションドット２１の配置場所以外の基準格子点では、情報ドットの配
置は斜め方向に配置させている。これにより、ディレクションドット２１の探索が容易と
なる。
【０１２０】
図２３（ａ）では、ディレクションドット２１のドットの位置、すなわち同図では基準
格子点から上方にドットが配置されていることで当該ブロックが上向きであることを定義
している。
【０１２１】
しかし、このようにドットの位置そのものでブロックの向きを定義することに限られず
、ドットを縦横方向に配置する領域を同図に示すように、ブロック中の左上に配置するこ
と自体でブロックの方向を定義することもできる。この場合、当該領域に配置するドット
は必ずしもブロックの向きと一致させる必要はなく、基準格子点から右、左、下の方向に
配置してもよい。このように基準格子点からの方向が、他の情報ドット３とは異なる方向
基準で情報を定義する領域（ディレクション領域２１ａ：このディレクション領域２１ａ
では基準格子点の縦横方向に情報ドット３が配置され、それ以外の領域の格子線の交点を
基準格子点とした領域では斜め方向にドットが配置されている）をブロック内のあらかじ
め定められた位置に配置することによって、ブロックの方向を定義できる。つまりディレ
クション領域２１ａが左上に配置されていれば当該ブロックは上向きである。また、当該
領域（ディレクション領域２１ａ）の配置場所だけでブロックの方向を定義できるため、
当該領域（ディレクション領域２１ａ）の情報ドット３は他の情報ドット３と異なる方向
でさえあれば、基準格子点からいかなる方向に配置してもよい。
【０１２２】
また図２３（ａ）では、ディレクションドット２１の向き（縦横方向）で他の基準格子
点に配置される情報ドット３の配置方向（斜め方向）とは区別できるようにしたが、これ
に限らず、図２３（ｂ）に示すように、基準格子点からの長さによってディレクションド
ット２１を識別できるようにしてもよい。同図では、ディレクションドット２１のみ基準
格子点からの距離を長く設定しており、他の位置（２３ａ，２３ｂ，２３ｃ）の情報ドッ
ト３は基準格子点からの距離を短く設定している。
【０１２３】
図２４は、上記で説明したＧＲＩＤ３によるドットパターンを縦横２個で構成した場合
の図、図２５（ａ）および（ｂ）はこれに対応する情報ドット３の配置順を示す図である
。
【０１２４】
図２４に示す場合も、基準格子点から上下左右方向にドットを配置する領域（ディレク
ション領域２１ａ）がブロックの左上に配置されていることによって、当該ブロックの向
きを識別できるようになっている。
【０１２５】
図２６（ａ）および（ｂ）は、ＧＲＩＤ３によるドットパターンにおいて、ディレクシ
ョンドット２１をブロック中心に配置した場合の例を示している。
【０１２６】
このようにディレクションドット２１をブロック中心に配置することにより、他の格子
点は縦横斜め方向に自由に情報ドット３を配置することができる。
【０１２７】
図２７は（ａ）および（ｂ）は、図２６（ａ）および（ｂ）に対応した図であり、情報
ドット３の配置順を示している。
【０１２８】
（ＧＲＩＤ４：ディレクションドットの配置例）
図２８〜図３３は、ディレクションドットをさらに別のドットパターン（ＧＲＩＤ４）
に適用した場合の図である。
【０１２９】
図２８（ａ）において、このドットパターン（ＧＲＩＤ４）では、ブロックの上下の横
方向の格子線２８ａ，２８ｂ上に基準格子点ドット４が等間隔に配置されており、それ以
外の格子点を中心にそれぞれ情報ドット３が配置されている。
【０１３０】
このようなドットパターンにおいて、上下の格子線２８ａ，２８ｂの中間に位置する中
央格子線２８ｃの１つ上の格子線上の所定の基準格子点の領域では、この基準格子点を始
点として縦横方向に情報ドット３が配置されており、この領域はディレクション領域２１
ａとなっている。
【０１３１】
このディレクション領域２１ａでは、同一の格子線に所属する基準格子点とは情報ドッ
ト３の配置の方向基準が異なっている。すなわち、他の基準格子点の領域では基準格子点
から斜め方向に情報ドット３が配置されているのに対して、ディレクション領域２１ａで
は基準格子点から縦横方向に情報ドット３が配置されている。
【０１３２】
このように、中央格子線２８ｃを基準にディレクション領域２１ａが上に配置されてい
る場合には、当該ブロックは上向きであると識別することができる。
【０１３３】
なお、ディレクション領域２１ａでは、縦横方向に任意に情報ドット３を配置すること
もできるが、このディレクション領域２１ａ内のドットの配置をブロックの向きと一致さ
せたディレクションドット２１としてもよいことは勿論である。
【０１３４】
また、中央格子線２８ｃ上にディレクション領域２１ａを設けた場合には、その中に配
置されるドットはディレクションドット２１としてブロックの方向を示すことになる。
【０１３５】
このようなドットパターン（ＧＲＩＤ４）において、いずれかの格子点の位置をディレ
クションドット２１とした場合、上下の格子線２８ａ，２８ｂの中間に位置する中央格子
線２８ｃを軸にして線対称位置にある格子点の情報ドット３は、ディレクションドット２１とは異なるドットの配置となるようにしている。すなわち、ディレクションドット２１は格子点から上下左右にずれた位置に配置するようにし、それと線対称位置にある格子点では情報ドット３は格子点から斜め方向にずらして配置するようにしている。
【０１３６】
このようなドットパターン（ＧＲＩＤ４）では、基準格子点４が等間隔に配置されてい
るのは上下の格子線２８ａ，２８ｂのみであるから、これで当該ブロックの縦方向が識別
できる。次に、中央の格子線２８ｃを基準に互いの対称位置にそれぞれ斜め方向、縦方向
にドットが配置されている部位を探索する。ここで探索された縦方向のドットがディレク
ションドット２１である。
【０１３７】
図２８（ｂ）は、このようなブロックを縦横２個並べた状態を示す図である。
【０１３８】
また、図２９（ａ）は、当該ドットパターン（ＧＲＩＤ４）の情報の配置の仕方の一例
を示す説明図である。この例では、ドット毎の差分で情報を定義するようになっている。
本明細書において、［１］は図面において四角形で囲まれた数字の１、（１）は図面にお
いて丸付き数字の１を意味しているものとする。ここで、たとえば、最初の情報［１］は
（４）の位置にある情報ドット３の値から（１）の位置にある情報ドット３の値を減算し
た値で定義されている。同図に示すように、ディレクションドット２１が配置された格子
点のみは情報ドット３として使用していないが、このディレクションドット２１にも格子
点からの長さの違いで情報を意味づけてもよい。
【０１３９】
また、ディレクションドット２１の代わりに図２８（ａ）で説明したように、この領域
をディレクション領域２１ａとして情報ドット３を配置してもよいことは勿論である。
【０１４０】
図３０上図は図２９に示したドットパターンのブロックを縦横２個ずつ連結したもので
あり、下図はその値の算出を示したものである。
【０１４１】
図３１（ａ）および（ｂ）は、ＧＲＩＤ４によるドットパターンにおいて、ディレクシ
ョンドット２１をブロック中心に配置した場合の例を示している。
【０１４２】
このようにディレクションドット２１をブロック中心に配置することにより、他の格子
点は縦横斜め方向に自由に情報ドット３を配置することができる。
【０１４３】
図３２〜図３３は、図３１に対応した情報の配置を示す図である。
【０１４４】
（ＧＲＩＤ１：変形パターン）
図３４（ａ）および（ｂ）は、ＧＲＩＤ１のドットパターンにおいて、３×３＝９個の
格子領域で構成されるブロックのドットパターンにおいて、特定の格子領域（ディレクシ
ョン領域）だけ情報ドット３の配置方向を他の格子領域（ディレクション領域）と変える
ことによって、ブロックの方向を定義している。
【０１４５】
すなわち、図３４（ａ）において、左下の格子領域３４ａ、中央の格子領域３４ｂ、右
下の格子領域３４ｃは中心から縦横方向に情報ドット３が配置され、その他の格子領域で
は中心から斜め方向に情報ドット３が配置されている。このように格子領域３４ａ，３４
ｂ，３４ｃを配置することでこの格子領域を結ぶ三角形の形状、すなわち、底辺３４ａ，
３４ｃに対する頂点３４ｂの関係から、当該ブロックが上向きであることが認識できる。
【０１４６】
このように、ブロック中の情報ドット３の配置方向を変更した（中心から縦横方向に情
報ドット３を配置した）格子領域３４ａ，３４ｂ，３４ｃの配置関係（ここでは三角形）
によってブロックの方向を定義することができる。これによって、ブロック中の全ての格
子領域に情報ドット３を配置することができるため、キードットのために格子領域を犠牲
にすることがなく、全ての格子領域に情報ドット３を配置することができる。
【０１４７】
なお、図３４（ｂ）は、図３４（ａ）に示したブロックを縦横方向に２個ずつ連結した
ものである。
【０１４８】
図３５（ａ）および（ｂ）は、図３４（ａ）および（ｂ）に対応した情報ドット３の配
置状態を示す図である。
【０１４９】
図３６（ａ）は、図３４（ａ）の変形であり、４×４＝１６個の格子領域で構成される
ブロックのドットパターンにおいて、特定の格子領域３６ａ，３６ｂ，３６ｃ，３６ｄだ
け情報ドット３の配置方向を格子領域の中心から縦横方向に情報ドット３を配置し、他の
格子領域（中心から斜め方向に情報ドット３を配置）と変えることによって、ブロックの
方向を定義している。このブロックでは格子領域３６ａ，３６ｃ，３６ｄが底辺と並行に
直線的に配置され、格子領域３６ｂのみが突出している。したがって、当該ブロックはこ
の格子領域３６ｂの突出方向、すなわち上向きであることがわかる。
【０１５０】
なお、図３６（ｂ）は、図３６（ａ）に示したブロックを縦横方向に２個ずつ連結した
ものである。
【０１５１】
図３７（ａ）および（ｂ）は、図３６（ａ）および（ｂ）に対応した情報ドット３の配
置状態を示す図である。
【０１５２】
このように、図３４〜図３７に示すように、特定の格子領域だけ情報ドット３の配置方
向を他の格子領域と変えることによって、ブロックの方向を定義することでキードットに
よって格子領域を犠牲にすることなく、全ての格子領域に情報ドット３を配置することが
可能となる。
【０１５３】
なお、図３８および図３９は、上記図３４〜図３７で説明した格子領域の配置を行った
としてもブロックの方向を定義できない例を示している。
【０１５４】
すなわち、図３８（ａ）の場合、情報ドット３を格子点の縦横方向にずらして配置する
格子領域３８１，３８２，３８３がブロックの斜め方向に直線的に連続しており、このよ
うな特定の格子領域を結ぶ線が直線的に他のブロックにも繋がっていく場合には、ブロッ
クの方向を定義することができない。また図３８（ｂ）も情報ドット３を格子点の縦横方
向にずらして配置する格子領域３８４，３８５，３８６がブロックの上下方向に直線的に
連続しており、ブロックの方向を定義することができない。
【０１５５】
さらに、図３８（ｃ）の場合、情報ドット３を格子点の縦横方向にずらして配置する格
子領域３８７，３８８，３８９が三角形を構成してはいるものの、これを１８０度回転し
た図形が３９５，３９４，３８９、または３９１，３９２，３９３のようにブロックをま
たがって表れてしまうため、ブロック自体（ブロックＢ５を誤認識してしまう可能性があ
る）を定義することができなくなり、かつその方向も上下いずれであるか判別できなくな
る。
【０１５６】
図３９も同様であり、情報ドット３を格子点の縦横方向にずらして配置する格子領域４
０１，４０２，４０３を結ぶ線が三角形を構成してはいるものの、これを１８０度回転し
た図形が４０４，４０５，４０６のようにブロックＢ３，Ｂ４をまたがって表れてしまう
ため、本来ブロックではないブロックＢ５を誤認識してしまう可能性があり、正確にブロ
ックを定義することができなくなり、かつその方向も上下いずれであるか判別できなくな
る。
【０１５７】
図４０（ａ）は、図２３で説明したドットパターン（ＧＲＩＤ３）の変形例であり、ブ
ロックの外周を構成する格子線上に等間隔の基準格子点ドット４を配置し、この基準格子
点ドット４同士を縦横方向に結んだ格子線を配置し、格子線同士の交点を仮想格子点とし
て４個の仮想格子点に囲まれた領域を格子領域としたものである。この格子領域の中心を
基準に長さと方向（ベクトル）を有する情報ドット３を配置している。そして、仮想格子
点も基準として情報ドット３を配置している。ここで、格子領域については、中央上の格
子領域４１１のみ中心点から縦横方向にのみずらした情報ドット３を配置し、これ以外の
格子領域は中心点から斜め方向にずらして情報ドット３を配置している。この場合、当該
格子領域４１１の配置位置から、当該ブロックは上向きであることがわかる。
【０１５８】
このように特定の方向に情報ドット３を配置する格子領域４１１をブロックのどの位置
に配置するかによって当該ブロックの方向を認識することができる。
【０１５９】
このように、格子領域４１１をディレクション領域として、ブロック内のその配置場所
だけでブロックの方向を識別することも可能である。
【０１６０】
すなわち、図４０（ａ）の場合、格子領域４１１のみドット配置の方向基準が縦横方向
となっており、当該格子領域４１１がディレクション領域とみることができる。
【０１６１】
この場合、当該ディレクション領域が中央上に配置されていることによって当該ブロッ
クは上向きであると識別できる。なお、このように格子領域４１１をディレクション領域
とした場合には、この中に配置される情報ドット３は必ずしもブロックの向きと一致させ
る必要はない。そのために、当該格子領域４１１内では情報ドットは中心点（仮想基準点
）を始点として左、右または下方向のベクトル終点に配置することも可能である。
【０１６２】
また、この格子領域４１１に配置される情報ドット３をディレクションドット２１とし
てもよいことは勿論である。この場合、当該格子領域４１１の中心点からの方向でブロッ
クの向きを定義することができる。この場合、ディレクションドット２１を配置する格子領域４１１はブロック中のどこに配置してもよい。
【０１６３】
なお、図４０（ｂ）は、同図（ａ）で示したブロックを縦横２個ずつ連結した状態を示
している。
【０１６４】
図４１（ａ）および（ｂ）は、図４０（ａ）および（ｂ）に対応した情報ドット３の配
置順を示したものである。
【０１６５】
図４２（ａ）は、図４０（ａ）で説明したドットパターンをさらに４×４＝１６個の格
子領域からなるブロックで示したものである。図４２（ｂ）はこのブロックを縦横２個ず
つ連結した状態を示している。
【０１６６】
なお、図４２（ａ）および（ｂ）においても、前述の図４０（ａ）と同様、格子領域４
１１のみドット配置の方向基準が縦横方向となっているため、当該格子領域４１１をディ
レクション領域とみることができる。
【０１６７】
この場合、当該ディレクション領域（格子領域４１１）が図４２（ａ）に示す位置に配
置されていることによって当該ブロックは上向きであると識別できる。なお、このように
格子領域４１１をディレクション領域とした場合には、この中に配置される情報ドット３
は必ずしもブロックの向きと一致させる必要はない。そのために、当該格子領域４１１内
では情報ドット３は中心点（仮想基準点）を始点として左、右または下方向のベクトル終
点に配置することも可能である。
【０１６８】
図４３（ａ）および（ｂ）は、図４２（ａ）および（ｂ）に対応した情報ドット３の配
置順を示したものである。
【０１６９】
図４４（ａ）は、図２８（ａ）で説明したドットパターン（ＧＲＩＤ４）の変形例であ
る。このドットパターンでは、所定の領域４４１のみ、格子点から縦横方向にずらした位
置に情報ドット３を配置し、それ以外の格子点では斜め方向にずらした位置に情報ドット
３を配置している。
【０１７０】
このように、当該領域４４１をディレクション領域として、情報ドット３を配置する方
向基準（縦横方向）を他の格子点の情報ドット３（斜め方向）と異ならせることによって
当該ブロックの向き（ここでは上向き）を認識することが可能となる。
【０１７１】
なお、当該領域４４１に配置される情報ドット３は縦横方向であれば任意の位置に配置
することができるが、当該情報ドット３そのものをディレクションドット２１としてブロ
ックの方向を示すようにしてもよいことは勿論である。
【０１７２】
図４４（ｂ）は、図４４（ａ）で説明したブロックを縦横２個ずつ連結した状態を示し
ている。
【０１７３】
図４５は図４４（ａ）に対応した情報ドット３の配置状態を説明するための図、図４６
は図４４（ｂ）に対応した情報ドット３の配置状態を説明するための図である。
【０１７４】
このように、ＧＲＩＤ４によるドットパターンの場合にも、特定の格子点をキードット
のために犠牲にすることなく全ての格子点を基準に情報ドット３を配置することができる
。
【０１７５】
（ディレクションドットの他の実施形態）
図４８から図５５では、ディレクションドットの他の実施形態について説明する。
【０１７６】
図４８は、ブロックの形状が格子状以外であるブロックにおいて、方向を定義したもの
である。
【０１７７】
同図において、まず基準点４８ａ〜４８ｅが配置されている。この基準点４８ａ〜４８
ｅを結ぶ線によってブロックの向きを示す形状（ここでは上方を向いた５角形）が定義さ
れている。そして、この基準点に基づいて仮想基準点４８ｆ，４８ｇ，４８ｈが配置され
、この仮想基準点を始点として方向と長さを有するベクトル終点に情報ドット３が配
置されている。このように、同図では、ブロックの向きを基準点の配置の仕方によって定
義することができる。そしてブロックの向きが定義されることによって、ブロック全体の
大きさも定義されることになる。
【０１７８】
なお、図４８においては、基準点４８ａ〜４８ｅと情報ドット３は全て同一形状のもの
で説明したが、たとえば図５７に示すように、基準点４８ａ〜４８ｅを情報ドット３より
も大きな形状としてもよい。また、この基準点４８ａ〜４８ｅと情報ドット３とは識別可
能であればいかなる形状としてもよく、三角形、四角形それ以上の多角形であってもよい
。
【０１７９】
なお、図４９は、図４８に示したブロックを縦横方向に２個ずつ連結したものである。
【０１８０】
図５０および図５１は、ブロックの形状を格子状、すなわち矩形領域とはせずに、一部
の基準点と仮想基準点とを一致させた場合を示したものである。
【０１８１】
すなわち、図４８において配置されている４８ａ，４８ｂ，４８ｃ，４８ｄ，４８ｅ，
４８ｆ，４８ｇは、基準点であると同時に仮想基準点とみることができる。そのため図５
０では、各点を始点としたベクトルの終点に情報ドット３を配置している。そして、４８
ａ，４８ｂ，４８ｃ，４８ｆ，４８ｇで構成される五角形において、４８ｃが頂点である
ことから、当該ブロックが上向きであることが認識できる。
【０１８２】
なお、図５１は、図５０に示したブロックを縦横方向に２個ずつ連結したものである。
【０１８３】
図５２および図５３は、他とは異なる方向基準で情報ドットを配置することにより、ブ
ロックの方向を定義する場合を示している。
【０１８４】
同図では、ブロックの四隅に基準点が配置されている。仮想基準点を中心に配置される
情報ドット３のうち、ディレクション領域２１ａにおける情報ドット３の向きを、他の情
報ドットの方向基準と異ならせることにより方向を定義する。すなわち、ディレクション
領域２１ａのみ仮想基準点から縦横方向にずれた位置に情報ドット３を配置し、その他の
領域では情報ドット３は仮想基準点から斜め方向にずれた位置に配置されている。図５２
では、ディレクション領域２１ａがブロック中心から上方にずれた位置（＋Ｙ方向）に配
置されているので、当該ブロックは上向きであることがわかる。なお、このようにディレ
クション領域２１ａのブロック内の位置でブロックの方向を定義した場合には、ディレク
ション領域２１ａ内の情報ドット３の配置は任意である。すなわち同図では、情報ドット
３は、仮想基準点よりも右方向のベクトル終点に配置されている。
【０１８５】
図５３は、図５２に示したブロックを縦横方向に２個ずつ連結したものである。
【０１８６】
図５４および図５５は、複数の領域において、他とは異なる方向基準で情報ドットを配
置することにより、ブロックの方向を定義する場合を示している。
【０１８７】
同図では、ブロックの四隅に基準点が配置されている。当該ブロックにおいて、仮想基
準点を中心に配置される情報ドット３のうち、３カ所の情報ドット３の配置における方向
基準を他の領域と異ならせることによって、この３カ所をディレクション領域２１ａとし
、このディレクション領域２１ａを結ぶ線の形状でブロックの方向を定義したものである
。すなわち同図では三角形の形状から当該ブロックが上向きであることが識別できる。
【０１８８】
図５５は、図５４に示したブロックを縦横方向に２個ずつ連結したものである。
【０１８９】
図５６は、基準点４ａを格子点と一致させた場合であり、このようにブロック中心を基
準に点対称とならないように基準点４ａを配置した場合には、あえてディレクション領域
やディレクションドットを配置することなく、そのままブロックの方向を定義することが
できる。
【０１９０】
図５７は図４８に示したドットパターンの基準点４８ａ〜４８ｇのドットの大きさを他
の情報ドット３よりも大きくしたものである。
【０１９１】
なお、本実施形態では、情報ドット、ディレクションドット、基準ドットの各ドットは
円形のものを用いて説明したが、これに限らず、非円形の三角形、四角形またはそれ以上
の多角形であってもよいことはもちろんである。
【０１９２】
なお、図５８は、１カ所の基準ドット５８ａのみを他の基準ドット５８ｂ〜５８ｄより
も大きなドットとすることで、この大形の基準ドット５８ａが配置された方向でブロック
の方向を定義したものである。この基準ドット５８ａについても、形状や大きさを変更し
てもよいことは勿論である。また、基準ドット５８ａを配置しないことでブロックの方向
を定義してもよい。また、このように大きさを変更したドットを配置してブロックの方向
を定義する場合、当該ドットはかならずしも基準ドットである必要はなく、情報ドット３
であってもよい。情報ドット３の大きさを変更することでブロックの方向を定義する場合
には、情報ドット３の情報を犠牲にすることなくブロックの方向を定義することが可能と
なる。
【０１９３】
図５９は、ディレクションドット２１の大きさを他の情報ドット３または基準格子点ド
ット４よりも大きくすることで当該ドットがディレクションドット２１であることを識別
可能としたものである。このようにディレクションドット２１の大きさを他の情報ドット
と変えることによって、情報ドット３の方向基準がディレクションドット２１の方向基準
と同じであっても（図５９では両者とも縦横方向となっている）、ブロックの方向を定義することが可能となる。
【０１９４】
図６２は、ブロックの中央上方の格子領域に情報ドットを配置しない構成を示している
。このように所定の格子領域（仮想格子点上または基準点）に情報ドット３を配置しない
ことによってその格子領域の位置によってブロックの方向を定義することが可能となる。
同図では、上向きのブロックであることがわかる。
【０１９５】
また、図６３は、ブロックの中央上方の仮想格子点上に情報ドット３を配置することに
よってブロックの方向を定義した場合の例である。
【０１９６】
図６０は、格子領域内に配置される情報ドットの形状を複数の形状で表現したものであ
る。同図に示すように、情報ドットの形状は、■、▲、●を選択的に配置しており、この
形状毎に異なる情報を定義してもよい。
【０１９７】
また、同図において、ブロックの方向は、四隅の基準格子点ドットのうちの２個を基準
格子点からずらして配置することによって定義することができる。同図ではブロックの左
上と右上の基準格子点ドットを上方にずらしているため、当該ブロックは上向きであると
識別できる。
【０１９８】
図６１は、ブロックの中央の格子領域の仮想格子点に配置される情報ドット３について
のみ他の情報ドットと形状を異ならせたものである。この仮想格子点には三角形の情報ド
ットが配置されており、当該三角形の形状によって、当該ブロックが上向きであることが
認識できるようになっている。
【産業上の利用可能性】
【０１９９】
本発明は、光学センサで読み取ることによって音楽や音声を出力できる絵本、写真、カ
ードゲーム、セキュリティシステム等に広く利用できる。
【図面の簡単な説明】
【０２００】
【図１】ＧＲＩＤ１によるドットパターンの原理図（１）
【図２】ドットパターンの情報ドットおよびそこに定義されたデータのビット表示の例
【図３】ＧＲＩＤ１によるキードットを説明するための図であり、情報ドットの配置例を示す図
【図４】ＧＲＩＤ１による情報ドットの配置例を示す図であり、情報ドットおよびそこに定義されたデータのビット表示の例
【図５】ＧＲＩＤ１による情報ドットおよびそこに定義されたデータのビット表示の例
【図６】ＧＲＩＤ１によるドットパターンの変形例を示す図
【図７】ＧＲＩＤ３によるドットパターンの原理図
【図８】ＧＲＩＤ３による情報ドットの配置例を示す図
【図９】ＧＲＩＤ３によるキードットと情報ドットとの配置状態を示す説明図
【図１０】ＧＲＩＤ３による情報ドットおよびそこに定義されたデータのビット表示の例を示す図
【図１１】ＧＲＩＤ３による情報ドット３およびそこに定義されたデータのビット表示の例を示す図
【図１２】ＧＲＩＤ３によるドットパターンの変形例を示す図
【図１３】ＧＲＩＤ４によるドットパターンの原理図
【図１４】ＧＲＩＤ４による情報ドットの定義方法を示した図（１）
【図１５】ＧＲＩＤ４による情報ドットの定義方法を示した図（２）
【図１６】ＧＲＩＤ４による情報ドットの定義方法を示した図（３）
【図１７】ＧＲＩＤ４による情報ドットの定義方法を示した図（４）
【図１８】ＧＲＩＤ４による光学読取手段における情報ドットの読取順を説明するための図
【図１９】ＧＲＩＤ４において、基準格子点ドットの代わりにキードットを配置した図
【図２０】ＧＲＩＤ４において、差分法を用いた情報ドットの読取方法について説明する図
【図２１】ＧＲＩＤ１にディレクションドットを配置した図（１）
【図２２】ＧＲＩＤ１にディレクションドットを配置した図（２）の情報ドットの配置順を示す図
【図２３】ＧＲＩＤ３にディレクションドットを配置した図（１）
【図２４】ＧＲＩＤ３にディレクションドットを配置した図（２）
【図２５】ＧＲＩＤ３の情報ドットの配置順を示す図（１）
【図２６】ＧＲＩＤ３のディレクションドットの配置位置を示す図
【図２７】ＧＲＩＤ３の情報ドットの配置順を示す図（２）
【図２８】ＧＲＩＤ４にディレクションドットを配置した図（１）
【図２９】ＧＲＩＤ４の情報ドットの配置順を示す図（１）
【図３０】ＧＲＩＤ４の情報ドットの配置順を示す図（２）
【図３１】ＧＲＩＤ４のディレクションドットの配置位置を示す図
【図３２】ＧＲＩＤ４の情報ドットの配置順を示す図（３）
【図３３】ＧＲＩＤ４の情報ドットの配置順を示す図（４）
【図３４】ＧＲＩＤ１において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（１）
【図３５】ＧＲＩＤ１において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（２）
【図３６】ＧＲＩＤ１において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（３）
【図３７】ＧＲＩＤ１において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（４）
【図３８】ブロックや方向が定義できない場合の配置例を示す図（１）
【図３９】ブロックや方向が定義できない場合の配置例を示す図（２）
【図４０】ＧＲＩＤ３において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（１）
【図４１】ＧＲＩＤ３において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（２）
【図４２】ＧＲＩＤ３において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（３）
【図４３】ＧＲＩＤ３において、情報の配置順を説明するための図情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（４）
【図４４】ＧＲＩＤ４において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（１）
【図４５】ＧＲＩＤ４において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（２）
【図４６】ＧＲＩＤ４において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（３）
【図４７】本実施形態において、ディレクションドットと情報ドットの判定アルゴリズムを説明するための図
【図４８】ブロックの形状が格子状以外であるブロックにおいて、基準点の配置の仕方によりブロックの方向を定義する説明図（１）
【図４９】ブロックの形状が格子状以外であるブロックにおいて、基準点の配置の仕方によりブロックの方向を定義する説明図（２）
【図５０】ブロックの形状を矩形領域とはせずに、一部の基準点と基準格子点とを一致させた場合において、基準点の配置の仕方によりブロックの方向を定義する説明図（１）
【図５１】ブロックの形状を矩形領域とはせずに、一部の基準点と基準格子点とを一致させた場合において、基準点の配置の仕方によりブロックの方向を定義する説明図（２）
【図５２】ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（１）
【図５３】ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（２）
【図５４】ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（３）
【図５５】ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図（４）
【図５６】ブロックの四隅に基準点を配置したブロックにおいて、基準点の一部を格子点と一致させることによりブロックの方向を定義する説明図
【図５７】ブロックの形状が格子状以外であるブロックにおいて、基準点の大きさを変更してブロックの方向を定義する説明図
【図５８】ブロックの形状が格子状のブロックにおいて、基準点の大きさを変更してブロックの方向を定義する説明図
【図５９】ブロックの中央に配置された情報ドットの大きさを他の情報ドットよりも大きくしてディレクションドットとした場合の説明図
【図６０】情報ドットの形状を変更してブロックの方向を定義する説明図
【図６１】ブロックの中央に配置された情報ドットの形状を他の情報ドットと変えることでブロックの方向を定義する説明図
【図６２】ブロックの中央上の格子領域の仮想格子点上に情報ドットを配置しないことによってブロックの方向を定義する説明図
【図６３】ブロックの中央上の格子領域の仮想格子点上に情報ドットを配置することによってブロックの方向を定義する説明図
【符号の説明】
【０２０１】
１  ドットパターン
２  キードット
３  情報ドット
４  基準格子点ドット
７ａ〜７ｄ  基準格子線
８ａ，８ｂ  格子線
１３  仮想格子点
２１  ディレクションドット
２８ａ，２８ｂ  横方向格子線
３４ａ，３４ｂ，３４ｃ  格子領域
３６ａ，３６ｂ，３６ｃ，３６ｄ  格子領域
３８７〜３８９，３９１〜３９３，３９４〜３９６  格子領域
４０１〜４０３，４０４〜４０６  格子領域
４１１  格子領域
４４１  格子領域
【図１】
2008210402.tif 000003
【図２】
2008210402.tif 000004
【図３】
2008210402.tif 000005
【図４】
2008210402.tif 000006
【図５】
2008210402.tif 000007
【図６】
2008210402.tif 000008
【図７】
2008210402.tif 000009
【図８】
2008210402.tif 000010
【図９】
2008210402.tif 000011
【図１０】
2008210402.tif 000012
【図１１】
2008210402.tif 000013
【図１２】
2008210402.tif 000014
【図１３】
2008210402.tif 000015
【図１４】
2008210402.tif 000016
【図１５】
2008210402.tif 000017
【図１６】
2008210402.tif 000018
【図１７】
2008210402.tif 000019
【図１８】
2008210402.tif 000020
【図１９】
2008210402.tif 000021
【図２０】
2008210402.tif 000022
【図２１】
2008210402.tif 000023
【図２２】
2008210402.tif 000024
【図２３】
2008210402.tif 000025
【図２４】
2008210402.tif 000026
【図２５】
2008210402.tif 000027
【図２６】
2008210402.tif 000028
【図２７】
2008210402.tif 000029
【図２８】
2008210402.tif 000030
【図２９】
2008210402.tif 000031
【図３０】
2008210402.tif 000032
【図３１】
2008210402.tif 000033
【図３２】
2008210402.tif 000034
【図３３】
2008210402.tif 000035
【図３４】
2008210402.tif 000036
【図３５】
2008210402.tif 000037
【図３６】
2008210402.tif 000038
【図３７】
2008210402.tif 000039
【図３８】
2008210402.tif 000040
【図３９】
2008210402.tif 000041
【図４０】
2008210402.tif 000042
【図４１】
2008210402.tif 000043
【図４２】
2008210402.tif 000044
【図４３】
2008210402.tif 000045
【図４４】
2008210402.tif 000046
【図４５】
2008210402.tif 000047
【図４６】
2008210402.tif 000048
【図４７】
2008210402.tif 000049
【図４８】
2008210402.tif 000050
【図４９】
2008210402.tif 000051
【図５０】
2008210402.tif 000052
【図５１】
2008210402.tif 000053
【図５２】
2008210402.tif 000054
【図５３】
2008210402.tif 000055
【図５４】
2008210402.tif 000056
【図５５】
2008210402.tif 000057
【図５６】
2008210402.tif 000058
【図５７】
2008210402.tif 000059
【図５８】
2008210402.tif 000060
【図５９】
2008210402.tif 000061
【図６０】
2008210402.tif 000062
【図６１】
2008210402.tif 000063
【図６２】
2008210402.tif 000064
【図６３】
2008210402.tif 000065