JP2007012016A - ドットパターン - Google Patents

ドットパターン Download PDF

Info

Publication number
JP2007012016A
JP2007012016A JP2005334219A JP2005334219A JP2007012016A JP 2007012016 A JP2007012016 A JP 2007012016A JP 2005334219 A JP2005334219 A JP 2005334219A JP 2005334219 A JP2005334219 A JP 2005334219A JP 2007012016 A JP2007012016 A JP 2007012016A
Authority
JP
Japan
Prior art keywords
dot
information
block
dots
lattice
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005334219A
Other languages
English (en)
Other versions
JP2007012016A5 (ja
JP4142683B2 (ja
Inventor
Kenji Yoshida
健治 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to JP2005334219A priority Critical patent/JP4142683B2/ja
Publication of JP2007012016A publication Critical patent/JP2007012016A/ja
Publication of JP2007012016A5 publication Critical patent/JP2007012016A5/ja
Application granted granted Critical
Publication of JP4142683B2 publication Critical patent/JP4142683B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

【課題】ブロックの方向を定義するために情報ドットを犠牲にすることなく、その探索のアルゴリズムが簡易でかつ低解像度のフレームバッファでも読み取りが可能なドットパターンを実現する。
【解決手段】情報ドットを配置するブロックの領域内に複数の基準点を設け、該基準点から定義される複数の仮想基準点(たとえば格子領域の中心点)を配置し、前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、前記基準点または仮想基準点の配置によってブロックの向きを定義したドットパターンである。このように、基準点または仮想基準点の配置によってブロックの向きを定義することができるため、キードットのように情報ドットの配置場所を犠牲にすることなく、ブロックの方向を定義することができる。
【選択図】図1

Description

本発明は、印刷物等に形成したドットパターン情報を光学的に読み取ることにより、様々な情報やプログラムを入出力させるドットパターンを用いた情報入出力方法に関するものであり、特にドットで構成されるブロックの向きを判定できる技術に関する。
従来より、印刷物等に印刷されたバーコードを読み取り、音声等の情報を出力させる情報出力方法が提案されている。たとえば、あらかじめ記憶手段に与えられたキー情報に一致する情報を記憶させておき、バーコードリーダで読み込まれたキーから検索して情報等を出力する方法が提案されている。 また、多くの情報やプログラムを出力できるように、微細なドットを所定の法則で並べたドットパターンを生成し、印刷物等に印刷したドットパターンをカメラにより画像データとして取り込み、デジタル化して音声情報を出力させる技術も提案されている。
しかし、上記従来のバーコードにより音声等を出力させる方法は、印刷物等に印刷されたバーコードが目障りであるという問題を有していた。また、バーコードが大きく、紙面の一部を占有するため、このようにバーコードが大きいと、一部分の文章やセンテンスまたは、写真、絵、グラフィックの画像の中に登場する意味を有するキャラクターや対象物毎にわかり易く数多くのバーコードを割り当てることはレイアウト上不可能であるという問題を有していた。
そこで、本発明者は、下記の特許文献に示すように、印刷面に影響を与えることなく多くのデータを格納できる全く新しいドットパターンを提案してきている。
WO/2004/084125 PCT/JP2004/019427
これらの本発明者による先行技術(特許文献1、2)において、本発明者はキードットを設けてデータの方向(ブロックの方向)とブロックの領域を定義することを提案している。このようにブロックの方向が把握できることにより、ブロックで定義された情報をその方向毎に異なる意味とすることができるため、多様な情報を格納できるという本発明者独自の独創的なドットパターンを提案している。
しかし、このキードットによりブロックの方向を定義する技術は、キードットを配置するための箇所には情報ドットが配置できないために、ブロックの情報量が制限されることになり、かつ、キードットを探索するためのアルゴリズムが複雑化して計算時間を要し、かつキードットの周辺領域の着目量が大きいため、フレームバッファの解像度も必要であるという克服すべき課題のあることが本発明者によって新たに指摘された。
本発明は、このような点に鑑みてなされたもので、ブロックの方向を定義するために情報ドットを犠牲にすることなく、その探索のアルゴリズムが簡易でかつ低解像度のフレームバッファでも読み取りが可能な、キードットに代わるディレクションドットの技術を実現することを課題とする。
前記課題を解決するために、本発明では、以下の手段を採用した。
すなわち、本発明の請求項1は、情報ドットを配置するブロックの領域内に複数の基準点を設け、該基準点から定義される複数の仮想基準点を配置し、前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、前記基準点または仮想基準点の配置によってブロックの向きを定義したドットパターンである。
このように、基準点または仮想基準点の配置によってブロックの向きを定義することができるため、キードットのように情報ドットの配置場所を犠牲にすることなく、ブロックの方向を定義することが可能となる。
本発明の請求項2は、少なくとも1以上の所定の位置の前記情報ドットについて、その方向基準を他の情報ドットと異ならせることによって当該ブロックの向きを定義した請求項1記載のドットパターンである。
このように、情報ドットの配置の仕方(仮想基準点からの方向)を他の情報ドットと異ならせることで、当該情報ドットには別の意味、すなわちブロックの方向を定義することに用いることができる。そのため、キードットのように情報ドットの配置場所を犠牲にすることなく、ブロックの方向を定義することが可能となる。
本発明の請求項3は、前記方向基準を他の情報ドットと異ならせた所定の位置の情報ドットは、前記仮想基準点からの方向でブロックの向きを定義した請求項1記載のドットパターンである。
このように、所定の情報ドットの基準点からの方向でブロックが定義されていることによって、キードットのように情報ドットの配置場所を犠牲にすることなく、ブロックの方向を定義することができる。
本発明の請求項4は、前記基準点と前記仮想基準点とが一致している請求項1記載のドットパターンである。
このように、基準点と仮想基準点を一致させてもよい。
本発明の請求項5は、前記所定の位置は3以上であり、各位置を直線で結んだ形状によってブロックの向きを定義した請求項2記載のドットパターンである。
このように、配置の仕方を異ならせる情報ドットを3以上設定して、その配置位置を直線で結んだ形状でブロックの向きを定義することができる。ここで直線で結んだ形状とは、たとえば三角形や矢印等であり、これらの形状で方向を識別することが好ましい。
本発明の請求項6は、前記所定の位置は1であり、ブロック内のその配置位置によってブロックの向きを定義した請求項2記載のドットパターンである。
このように、ブロック内で1カ所のみ配置の仕方を異ならせる情報ドットとすることによって、そのブロック内の配置位置によってブロックの方向を定義することができる。
本発明によれば、ブロックの方向の定義が容易なドットパターンを実現することができる。
次に、本発明を図面に基づいて説明する。
まず本発明で用いるドットパターンの基本原理を説明し、その後、これらのドットパターンのディレクションドットの具体例について説明する。
(ドットパターンの説明:GRID1)
図1〜図20は、本発明の前提となるドットパターンの原理を説明するための図である。これらの図1〜図20では、GRID1によるドットパターンを説明するためのものであり、キードット2が含まれているが、このキードット2は本発明のディレクションドットとは異なるものであり、本願発明の特徴的なものではない。
なおこの図1〜図20に記載されたキードット2と本発明によるディレクションドットとの違いは図21以下で詳細に説明する。
図1は本発明のドットパターンの一例であるGRID1を示す説明図である。図2はドットパターンの情報ドットおよびそれに定義されたデータのビット表示の一例を示す拡大図である。図3(a)、(b)はキードット(このキードットは本発明のディレクションドットとは異なる)を中心に配置した情報ドットを示す説明図である。
本発明のドットパターンを用いた情報入出力方法は、ドットパターン1の生成と、そのドットパターン1の認識と、このドットパターン1から情報およびプログラムを出力する手段とからなる。すなわち、ドットパターン1をカメラにより画像データとして取り込み、まず、基準格子点ドット4を抽出し、次に本来基準格子点ドット4がある位置にドットが打たれていないことによってキードット2(ここでのキードット2は本発明のディレクションドットとは異なる)を抽出し、次に情報ドット3を抽出することによりデジタル化して情報領域を抽出して情報の数値化を図り、その数値情報より、このドットパターン1から情報およびプログラムを出力させる。たとえば、このドットパターン1から音声等の情報やプログラムを、情報出力装置、パーソナルコンピュータ、PDAまたは携帯電話等に出力させる。
本発明のドットパターン1の生成は、ドットコード生成アルゴリズムにより、音声等の情報を認識させるために微細なドット、すなわち、キードット、情報ドット、基準格子点ドット4を所定の規則に則って配列する。図1に示すように、情報を表すドットパターン1のブロックは、キードット2を中心に5×5の基準格子点ドット4を配置し、4点の基準格子点ドット4に囲まれた中心の仮想格子点5の周囲に情報ドット3を配置する。このブロックには任意の数値情報が定義される。なお、図1の図示例では、ドットパターン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は、図1に示すように、矩形状に配置した基準格子点ドット4の略中心位置にある1個の基準格子点ドット4を一定方向にずらして配置したドットである。このキードット2は、情報ドット3を表す1ブロック分のドットパターン1の代表点である。たとえば、ドットパターン1のブロックの中心の基準格子点ドット4を上方に0.2mmずらしたものである。情報ドット3がX,Y座標値を表す場合に、キードット2を下方に0.2mmずらした位置が座標点となる。ただし、この数値はこれに限定されずに、ドットパターン1のブロックの大小に応じて可変し得るものである。
情報ドット3は種々の情報を認識させるドットである。この情報ドット3は、キードット2を代表点にして、その周辺に配置すると共に、4点の基準格子点ドット4で囲まれた中心を仮想格子点5にして、これを始点としてベクトルにより表現した終点に配置したものである。たとえば、この情報ドット3は、基準格子点ドット4に囲まれ、図2に示すように、その仮想格子点5から0.2mm離れたドットは、ベクトルで表現される方向と長さを有するために、時計方向に45度ずつ回転させて8方向に配置し、3ビットを表現する。したがって、1ブロックのドットパターン1で3ビット×16個=48ビットを表現することができる。
なお、図示例では8方向に配置して3ビットを表現しているが、これに限定されずに、16方向に配置して4ビットを表現することも可能であり、種々変更できることはもちろんである。
キードット2、情報ドット3または基準格子点ドット4のドットの径は、見栄えと、紙質に対する印刷の精度、カメラの解像度および最適なデジタル化を考慮して、0.1mm程度が望ましい。
また、撮像面積に対する必要な情報量と、各種ドット2,3,4の誤認を考慮して基準格子点ドット4の間隔は縦・横1mm前後が望ましい。基準格子点ドット4および情報ドット3との誤認を考慮して、キードット2のずれは格子間隔の20%前後が望ましい。
この情報ドット3と、4点の基準格子点ドット4で囲まれた仮想格子点との間隔は、隣接する仮想格子点5間の距離の15〜30%程度の間隔であることが望ましい。情報ドット3と仮想格子点5間の距離がこの間隔より近いと?、ドット同士が大きな塊と視認されやすく、ドットパターン1として見苦しくなるからである。逆に、情報ドット3と仮想格子点5間の距離がこの間隔より遠いと?、隣接するいずれの仮想格子点5を中心にしてベクトル方向性を持たせた情報ドット3であるかの認定が困難になるためである。
たとえば,情報ドット3は、図3(a)に示すように、キードット2を中心に時計回りでI1からI16を配置する格子間隔は1mmであり、4mm×4mmで3ビット×16=
48ビットを表現する。
なお、ブロック内に個々に独立した情報内容を有し、かつ他の情報内容に影響されないサブブロックをさらに設けることができる。図3(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度毎に均等に定めるのが望ましい。
図4は情報ドット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となる。
図5は情報ドットおよびそこに定義されたデータのビット表示の例であり、(a)はドットを2個、(b)はドットを4個および(c)はドットを5個配置したものを示すものである。
図6はドットパターンの変形例を示すものであり、(a)は情報ドット6個配置型、(b)は情報ドット9個配置型、(c)は情報ドット12個配置型、(d)は情報ドット36個配置型の概略図である。
図1と図3に示すドットパターン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)がある。
(ドットパターンの説明:GRID3)
次にGRID3について説明する。
図7は本発明のドットパターンの一例を示す説明図、図8はドットパターンの情報ドットおよびそれに定義されたデータのビット表示の一例を示す拡大図、図9(a)、(b)、(c)はキードットと情報ドットとの配置状態を示す説明図である。
本発明のドットパターンを用いた情報入出力方法は、ドットパターン1の認識と、このドットパターン1から情報およびプログラムを出力する手段とからなる。
すなわち、ドットパターン1をカメラにより画像データとして取り込み、まず、基準格子点ドット4を抽出し、これを仮想基準格子点6の位置であると判定し、これらの仮想基準格子点6を結ぶ直線を基準格子線7とする。そして、この基準格子線7上で、本来基準格子点ドット4があるべき仮想基準格子点6の位置にドットが配置されていない場合、こ
の仮想基準格子点6の周辺のドットを抽出し、これをキードット2(ブロックの四隅の角部)とする。そして、次に前記仮想基準格子点6同士を結ぶ縦横の格子線8a、8bを設定し、その格子線同士の交点を仮想格子点11(第1の仮想格子点)とする。そしてこの仮想格子点11の周囲のドットを探索し、その仮想格子点11からの距離と方向とで定義される情報ドット3を抽出する。
また、仮想基準格子点6同士を斜め方向に結ぶ斜め格子線8cを想定し、この斜め格子線8c同士の交点も仮想格子点12(第2の仮想格子点)とする。そしてこの仮想格子点12の周囲のドットも探索し、その仮想格子点12からの距離と方向とで定義される情報ドット3を抽出する。
次に、キードット2の仮想基準格子点6または仮想格子点11からの方向によって当該ブロックの向きが決定される。たとえば、キードット2が仮想格子点から+Y方向にずれていた場合には縦方向を正位としてブロック内の情報ドット3を認識すればよい。
また、キードット2が仮想基準格子点6または仮想格子点11から−Y方向にずれていれば当該ブロックをブロック中心を軸に180度回転させた方向を正位としてブロック内の情報ドット3を認識すればよい。
また、キードット2が仮想基準格子点6または仮想格子点11から−X方向にずれていれば当該ブロックをブロック中心を軸に時計方向に90度回転させた方向を正位としてブロック内の情報ドット3を認識すればよい。
また、キードット2が仮想基準格子点6または仮想格子点11から+X方向にずれていれば当該ブロックをブロック中心を軸に反時計方向に90度回転させた方向を正位としてブロック内の情報ドット3を認識すればよい。
光学読取手段で読み取られたドットパターン1の画像がフレームバッファに蓄積されると、当該光学読取手段の中央処理装置(CPU)は、フレームバッファのドットを解析して、各情報ドット3の仮想格子点11、12からの距離と方向によって情報ドット3毎に定義された数値を復号する。そしてこれらの数値はxy座標またはコードとして光学読取手段またはパーソナルコンピュータのメモリに格納された情報と照合されて、前記xy座標またはコードに対応する音声、画像、動画、文字、プログラム等が読み出されて、表示手段、音声・画像出力手段とから出力される。
本発明のドットパターン1の生成は、ドットコード生成アルゴリズムにより、音声等の情報を認識させるために微細なドット、すなわち、キードット2、情報ドット3、基準格子点ドット4を所定の規則に則って配列する。
図7に示すように、印刷物等の媒体面の、正方形または長方形の矩形領域をブロックとする。そして、該ブロックの枠を構成する縦方向および横方向の直線を基準格子線7(図1で太枠で示した線)として、該基準格子線7上の所定間隔毎に仮想基準格子点6を設け、仮想基準格子点6上に基準格子点ドット4を配置する。次に、該仮想基準格子点6同士を結びかつ前記基準格子線7と平行な直線を格子線8a、8bとし、格子線8a、8b同士の交点を仮想格子点11(第1の仮想格子点)とする。
そしてさらに、前記仮想基準格子点6同士を斜め方向に結ぶ斜め格子線8cを設定し、この斜め格子線8c同士の交点も仮想格子点12(第2の仮想格子点)とする。
このように設定された仮想格子点11、12を基準に距離と方向を有する1または複数
の情報ドット3をそれぞれ配置してドットパターンを生成する。
カメラでこのドットパターン1を画像データとして取り込む際に、そのカメラのレンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時の歪みを前記基準格子点ドット4によって矯正することができる。具体的には歪んだ4点の仮想格子点を元の正方形に変換する補正用の関数(Xn,Yn)=f(Xn’,Yn’)を求め、その同一の関数で情報ドットを補正して、正しい情報ドット3のベクトルを求める。
ドットパターン1に基準格子点ドット4を配置してあると、このドットパターン1をカメラで取り込んだ画像データは、カメラが原因する歪みを補正するので、歪み率の高いレンズを付けた普及型のカメラでドットパターン1の画像データを取り込むときにも正確に認識することができる。また、ドットパターン1の面に対してカメラを傾けて読み取っても、そのドットパターン1を正確に認識することができる。
キードット2は、図7に示すように、矩形状に配置した仮想格子点の略中心位置にある1個の仮想格子点11を基準に距離と方向によって配置されたドットである。このキードット2は、ひとまとまりの情報ドット群を表す1ブロック分のドットパターン1の代表点である。たとえば、ドットパターン1のブロックの中心の仮想格子点11から上方に0.2mmずれた位置に配置されているものである。したがって、情報ドット3が仮想格子点からのX、Y座標値で定義される場合には、キードット2から下方に0.2mmの距離の位置が仮想格子点(座標点)となる。ただし、この数値(0.2mm)はこれに限定されずに、ドットパターン1のブロックの大小に応じて可変し得るものである。
情報ドット3は種々の情報を認識させるドットである。この情報ドット3は、図12の場合、キードット2を代表点にして、その周辺に配置すると共に、4点の仮想格子点11(第1の仮想格子点)で囲まれた中心を仮想格子点12(第2の仮想格子点)にして、これを始点としてベクトルにより表現した終点に配置したものである。たとえば、この情報ドット3は、仮想格子点11、12に囲まれ、図8に示すように、その仮想格子点11,12から0.2mm離れたドットは、ベクトルで表現される方向と長さを有するために、時計方向に45度ずつ回転させて8方向に配置し、3ビットを表現している。
この図によれば、1ブロックのドットパターン1で3ビット×16個=48ビットを表現することができる。
なお、図示例では8方向に配置して3ビットを表現しているが、これに限定されずに、16方向に配置して4ビットを表現することも可能であり、種々変更できることはもちろんである。
さらに、図7では全ての仮想格子点において、この仮想格子点を始点としてその終点位置に情報ドットを配置したが、これに限定されることなく、仮想格子点上にドットが配置されているか否かで情報を定義するようにしてもよい。たとえば仮想格子点上にドットが配置されていれば「1」、配置されていなければ「0」というように情報を定義することができる。
キードット2、情報ドット3または基準格子点ドット4のドットの径は、見栄えと、紙質に対する印刷の精度、カメラの解像度および最適なデジタル化を考慮して、0.1mm程度が望ましい。
また、撮像面積に対する必要な情報量と、各種ドット2,3,4の誤認を考慮して基準格子点ドット4の間隔は縦・横1mm前後が望ましい。基準格子点ドット4および情報ド
ット3との誤認を考慮して、キードット2のずれは格子間隔の20%前後が望ましい。
この情報ドット3と、仮想格子点11または12との間隔は、隣接する仮想格子点11,12間の距離の15〜30%程度の間隔であることが望ましい。情報ドット3と仮想格子点11,12間の距離がこの間隔より近いと、ドット同士が大きな塊と視認されやすく、ドットパターン1として見苦しくなるからである。逆に、情報ドット3と仮想格子点間の距離がこの間隔より遠いと、隣接するいずれかの仮想格子点11,12を中心にしてベクトル方向性を持たせた情報ドット3であるかの認定が困難になるためである。
図9は、ブロック内における情報ドット3の読取順を示したものであり、同図中の丸付き数字は、それぞれ仮想格子点11,12毎に配置された情報ドット3の配置領域を意味しているものとする。
たとえば、図9(a)の場合、ブロック中心の(1)(図中で丸で囲まれた数字の「1」を意味している、以下同じ)を中心として、そこから時計回りで(1)から(25)が配置されている。このときの格子間隔はたとえば1mmであり、4mm×4mmで3ビット×1625=4875ビットを表現する。
図9(b)は、ブロックの左上の矩形領域の情報ドット(1)から縦方向に順番に(4)まで配置した後、縦横方向の格子線同士の交点に配置された情報ドット(5)〜(7)を配置している。
図9(c)は、ブロックの左上の矩形領域の情報ドット(1)から縦方向に(16)まで順番に配置した後、縦横の格子線同士の交点に配置された情報ドット(17)〜(25)を配置している。
図10は情報ドットおよびそこに定義されたデータのビット表示の例であり、他の形態を示すものである。
また、情報ドット3について基準格子点ドット4で囲まれた仮想格子点11,12から短(図10の上段)・長(図10の下段)の2種類を使用し、ベクトル方向を8方向とす
ると、4ビットを表現することができる。このとき、長い方が隣接する仮想格子点間の距離の25〜30%程度、短い方は15〜20%程度が望ましい。ただし、長・短の情報ドット3の中心間隔は、これらのドットの径より長くなることが望ましい。
4点の仮想格子点11,12で囲まれた情報ドット3は、見栄えを考慮し、1ドットが望ましい。しかし、見栄えを無視し、情報量を多くしたい場合は、1ベクトル毎に、1ビットを割り当て情報ドット3を複数のドットで表現することにより、多量の情報を有することができる。たとえば、同心円8方向のベクトルでは、4点の基準格子点ドット4に囲まれた情報ドット3で28の情報を表現でき、1ブロックの情報ドット16個で2128となる。
図11は情報ドット3およびそこに定義されたデータのビット表示の例であり、(a)はドットを2個、(b)はドットを4個および(c)〜(e)はドットを5個、(f)は7個配置したものを示すものである。
図12はドットパターンの変形例を示すものであり、(a)はブロック内に情報ドット3を8個配置したもの、(b)は情報ドット3を13個配置したもの、(c)は情報ドット3を18個配置したもの、(d)は情報ドット3を41個配置したものである。
前述の図7と図9に示すドットパターン1は、1ブロックに25個の情報ドット3を配置した例を示している。しかし、この情報ドット3は1ブロックに25個配置することに限定されずに、種々変更することができる。たとえば、必要とする情報量の大小またはカメラの解像度に応じて、情報ドット3を1ブロックに8個配置したもの(図12(a))、情報ドット3を1ブロックに13個配置したもの(図12(b))、情報ドット3を1ブロックに18個配置したもの(図12(c))、または情報ドット3を1ブロックに41個配置したもの(図12(d))がある。
(ドットパターンの説明:GRID4)
次にGRID4について説明する。
図13は、本発明の実施形態であるドットパターンを具体的に示したものであり、(a)は4×4格子、(b)は5×4格子、(c)は6×4格子分のドットパターンを示している。
同図(a)において、まず四角形を構成する縦横方向の基準格子線7a〜7dを設け、その四角形内の所定間隔毎に仮想格子点13が配置されている。
なお、基準格子線7a〜7dおよび仮想格子点13については、実際に紙面(媒体面)に印刷されるわけではなく、あくまでもコンピュータの画像メモリ上にドットパターンの配置の際、またはドットパターンの読取の際に仮想的に設定されるものである。
次に、上下の横方向の基準格子線7a、7b上の仮想基準格子点14上に基準格子点ドット4を配置する。
次に、仮想格子点13同士を結ぶ縦横方向の格子線8a、8bを想定し、この格子線8a、8b同士の交点を同じく仮想格子点13とする。
次に、仮想格子点13を基準に距離と方向とを有する情報ドット3を仮想格子点13毎に1または2以上配置してドットパターンを生成する。なお、図13では仮想格子点13毎に1つの情報ドット3が配置されている。
以上に説明した図13(a)は格子数を縦方向に4個、横方向に4個の単位で情報ドット3を配置した場合(4×4格子)であるが、同図(b)は5×4格子、(c)は6×4格子をそれぞれ示している。
図14は情報ドット3の定義を示したものであり、仮想格子点13を中心に情報ドット3の方向で値を定義したものである。同図では仮想格子点を通過する格子線を基準に時計方向に45度ずつ8方向に情報ドットを配置することによって、合計8通り(二進法で000から111、3ビット)の情報を定義できるようになっている。
また、図15は前記方向にさらに距離を2段階にすることによって合計16通り(二進法で)、すなわち0000〜1111(4ビット)の情報を定義できるようになっている。
図16は、仮想格子点13を中心に同心円上に複数の情報ドット3を配置する場合であり、その位置がドットがある場合を1、ない場合を0として定義することにより、8ビットを定義でき、すなわち鉛直方向に位置するドットを1ビット目として時計回りにビット情報を定義できる。
図17は当該同心円を2つにしたものであり、16ビットを定義できる。このようにすることにより、1つの仮想格子点13に対して膨大な情報量を定義することが可能となる。
図18は、光学読取手段における情報ドット3の読取順を説明するためのものである。同図における丸付き数字は便宜的なものであり、実際には図13(a)〜(c)に示されたドットパターンとなっている。
同図(a)では、まず左側縦方向の基準格子線7cに沿って縦方向に仮想格子点毎の情報ドットを読み取った後(丸付き数字(1)〜(3))、次の縦方向格子線8b上の仮想格子点13を上から順番に読み取る(丸付き数字(4)〜(6))。このようにして順次仮想格子点13毎の読取を実行する。
なお、以上の説明では格子毎の読取順は縦方向の格子線8bの左から順番としたが、情報を配置・読み取る格子順は任意に設定してよいことはもちろんである。
図19は、基準格子線上の仮想格子点13上に、基準格子点ドット4の代わりにキードット2を配置した例である。基準格子線7aの中間位置の仮想格子点13を基準に上方向にずらした位置にキードット2を配置している。
これらのキードット2により、ドットパターンの方向を定義することができる。
図20は差分法を用いた情報ドット3の読取方法について説明したものである。以下では図面の四角形数字を[]、丸付き数字を()で表現する。
すなわち、図20では、4×4格子において、(4)の情報ドットの値と(1)の情報ドットの値の差分により値[1]を表現している。
同様に、[2]は(5)と(2)の差分、[3]は(6)と(3)の差分で表現できる。[4]〜[12]も同様に表現している。
[1]〜[12]は以下の情報ドット間の差分で表現することができる。
[1]=(4)−(1)
[2]=(5)−(2)
[3]=(6)−(3)
[4]=(7)−(4)
[5]=(8)−(5)
[6]=(9)−(6)
[7]=(10)−(7)
[8]=(11)−(8)
[9]=(12)−(9)
[10]=(13)−(10)
[11]=(14)−(11)
[12]=(15)−(12)
このような差分法を用いることにより、1つの真値に対して異なる複数のドットパターンを生成することができ、セキュリティを高めることができる。
(GRID1におけるディレクションドットの説明)
以上の図1〜図20の説明は主として本発明者が提唱しているドットパターンの一例を
説明したものである。以下の説明では、キードット2を用いることなくディレクションドットによってブロックの方向を定義する場合について詳細に説明する。
図21(a)および(b)は、図1〜図20で説明したGRID1によるドットパターンを前提にしてディレクションドット21を配置した例である。
この例では、基準格子点ドット4に囲まれた領域の中心点からのずらし方によって情報を定義している。したがって、全ての格子領域に情報ドット3を配置することができるが、3×3個の中央の格子領域のみはディレクションドット21が配置されている。
ディレクションドット21の配置領域では、ディレクションドットは中心点から縦横方向にずれた位置に配置されて方向と情報とを表している。すなわち、図21(a)では、ディレクションドット21が中心から上方にずらした位置(+Y方向)に配置されているので、当該ブロックは上向きであることがわかる。これが中心から下方にずらした位置(−Y方向)に配置されている場合は、当該ブロックは下向きであることがわかる。同様に、中心から左方向にずらした位置(−X方向)に配置されている場合は、当該ブロックは左向き、中心から右方向にずらした位置(+X方向)に配置されている場合は、当該ブロックは右向きであることがわかる。
また、ディレクションドット21以外の格子領域では、中心点から斜め方向にずらすことにより、情報を定義している。この定義の仕方については前述したので説明は省略する。
なお、このような方向基準が他の格子領域とは異なる領域(ディレクションドット21が配置される格子領域)は、その中央に配置した場合にはディレクションドット21の方向でブロックを定義をすることになるが、この方向基準の異なる格子領域をブロックの他の領域に配置した場合(ディレクション領域)には、その配置位置によってブロックの方向を定義することができる(図40参照)。また、このような方向基準の異なる格子領域を複数設けてその配置態様によってブロックの方向を定義することもできる(図34〜図37)。これらの場合には方向基準の異なる格子領域を配置するだけでブロックの方向が定義できるため、当該格子領域に配置される情報ドット3は必ずしもブロックの方向と一致させる必要はない。この点については後で詳しく説明する。
このように、ディレクション領域では縦横方向、それ以外の領域では斜め方向に情報ドット3を配置することによって、キードット2のために基準格子点ドット4のいずれかをずらして基準格子点の等間隔性を犠牲にすることがないため、ドットパターンの読取アルゴリズムを簡易化できる。また、ディレクション領域にはそのまま情報ドット3を配置することができるため、情報ドット3を犠牲にすることなくブロックの方向を定義できる。
さらに、ディレクションドット21を配置した場合であっても中心点からのずれ量(中心点からの長さ)で情報を定義することができ、情報ドット3とディレクションドット21とを兼用することが可能である。
図47は、ディレクションドットと情報ドットの判定アルゴリズムを説明するための図である。
ディレクションドット21と情報ドット3との判別に際して、以下のような手順を実行する。
(1)s=|l0−l2|を算出する。
(2)t=|l3−l1|を算出する。
(3)s−tを算出する。
(4)s−tが所定値p以上であれば情報ドット、所定値p未満であればディレクションドットと判定する。
具体的には、図47(a)の場合、
s−t=|l0−l2|−|l3−l1|=|l0−l2
|l0−l2|≧pであれば情報ドットである。
同図(b)の場合、
s−t=|l0−l2|−|l3−l1|=0
0<pであればディレクションドットである。
なお、pの値は任意に設定できるが120pixel2程度が好ましいがこれに限定されるものではない。
図21(a)は、3×3=9個の格子領域で形成されたブロックを示しており、同図(b)はこのブロックを縦横2個ずつ配置した例を示している。
図22(a)および(b)は、図21(a)および(b)に対応した情報ドット3の格子領域毎の配置順を示したものである。情報ドット3の配置順はこれに限定されるものではない。
(GRID3:ディレクションドットの配置例)
図23(a)および(b)は、ディレクションドット21を別のドットパターン(GRID3)に適用した場合の図である。
GRID1では、4点の基準格子点ドットに囲まれた領域内に情報ドット3を配置したが、GRID3では、基準格子点の位置にも情報ドット3を配置している。この例では、ブロック内で、いずれかの基準格子点に着目して、ディレクションドット21を配置することができる。
図23(a)では、4×4=16個の格子領域のうち、左上の格子領域の右下に位置する基準格子点をディレクションドット21の配置場所としている。ディレクションドット21の配置場所をこのようにした場合、当該ブロックの中心24を中心に、90度ずつ開店回転させた位置(23a,23b,23c)ではディレクションドット21と同じ方向(縦横方向)に情報ドット3が配置されているとどれがディレクションドット21であるか判別できずに、ブロックの方向を定義できない可能性がある。
そこで、ディレクションドット21の配置場所以外の基準格子点では、情報ドットの配置は斜め方向に配置させている。これにより、ディレクションドット21の探索が容易となる。
図23(a)では、ディレクションドット21のドットの位置、すなわち同図では基準格子点から上方にドットが配置されていることで当該ブロックが上向きであることを定義している。
しかし、このようにドットの位置そのものでブロックの向きを定義することに限られず
、ドットを縦横方向に配置する領域を同図に示すように、ブロック中の左上に配置すること自体でブロックの方向を定義することもできる。この場合、当該領域に配置するドットは必ずしもブロックの向きと一致させる必要はなく、基準格子点から右、左、下の方向に配置してもよい。このように基準格子点からの方向が、他の情報ドット3とは異なる方向基準で情報を定義する領域(ディレクション領域21a:このディレクション領域21aでは基準格子点の縦横方向に情報ドット3が配置され、それ以外の領域の格子線の交点を基準格子点とした領域では斜め方向にドットが配置されている)をブロック内のあらかじめ定められた位置に配置することによって、ブロックの方向を定義できる。つまりディレクション領域21aが左上に配置されていれば当該ブロックは上向きである。また、当該領域(ディレクション領域21a)の配置場所だけでブロックの方向を定義できるため、当該領域(ディレクション領域21a)の情報ドット3は他の情報ドット3と異なる方向でさえあれば、基準格子点からいかなる方向に配置してもよい。
また図23(a)では、ディレクションドット21の向き(縦横方向)で他の基準格子点に配置される情報ドット3の配置方向(斜め方向)とは区別できるようにしたが、これに限らず、図23(b)に示すように、基準格子点からの長さによってディレクションドット21を識別できるようにしてもよい。同図では、ディレクションドット21のみ基準格子点からの距離を長く設定しており、他の位置(23a,23b,23c)の情報ドット3は基準格子点からの距離を短く設定している。
図24は、上記で説明したGRID3によるドットパターンを縦横2個で構成した場合の図、図25(a)および(b)はこれに対応する情報ドット3の配置順を示す図である。
図24に示す場合も、基準格子点から上下左右方向にドットを配置する領域(ディレクション領域21a)がブロックの左上に配置されていることによって、当該ブロックの向きを識別できるようになっている。
図26(a)および(b)は、GRID3によるドットパターンにおいて、ディレクションドット21をブロック中心に配置した場合の例を示している。
このようにディレクションドット21をブロック中心に配置することにより、他の格子点は縦横斜め方向に自由に情報ドット3を配置することができる。
図27は(a)および(b)は、図26(a)および(b)に対応した図であり、情報ドット3の配置順を示している。
(GRID4:ディレクションドットの配置例)
図28〜図33は、ディレクションドットをさらに別のドットパターン(GRID4)に適用した場合の図である。
図28(a)において、このドットパターン(GRID4)では、ブロックの上下の横方向の格子線28a,28b上に基準格子点ドット4が等間隔に配置されており、それ以外の格子点を中心にそれぞれ情報ドット3が配置されている。
このようなドットパターンにおいて、上下の格子線28a,28bの中間に位置する中央格子線28cの1つ上の格子線上の所定の基準格子点の領域では、この基準格子点を始点として縦横方向に情報ドット3が配置されており、この領域はディレクション領域21aとなっている。
このディレクション領域21aでは、同一の格子線に所属する基準格子点とは情報ドット3の配置の方向基準が異なっている。すなわち、他の基準格子点の領域では基準格子点から斜め方向に情報ドット3が配置されているのに対して、ディレクション領域21aでは基準格子点から縦横方向に情報ドット3が配置されている。
このように、中央格子線28cを基準にディレクション領域21aが上に配置されている場合には、当該ブロックは上向きであると識別することができる。
なお、ディレクション領域21aでは、縦横方向に任意に情報ドット3を配置することもできるが、このディレクション領域21a内のドットの配置をブロックの向きと一致させたディレクションドット21としてもよいことはもちろんである。
また、中央格子線28c上にディレクション領域21aを設けた場合には、その中に配置されるドットはディレクションドット21としてブロックの方向を示すことになる。
このようなドットパターン(GRID4)において、いずれかの格子点の位置をディレクションドット21とした場合、上下の格子線28a,28bの中間に位置する中央格子線28cを軸にして線対称位置にある格子点の情報ドット3は、ディレクションドット21とは異なるドットの配置となるようにしている。すなわち、ディレクションドット21は格子点から上下左右にずれた位置に配置するようにし、それと線対称位置にある格子点では情報ドット3は格子点から斜め方向にずらして配置するようにしている。
このようなドットパターン(GRID4)では、基準格子点4が等間隔に配置されているのは上下の格子線28a,28bのみであるから、これで当該ブロックの縦方向が識別できる。次に、中央の格子線28cを基準に互いの対称位置にそれぞれ斜め方向、縦方向にドットが配置されている部位を探索する。ここで探索された縦方向のドットがディレクションドット21である。
図28(b)は、このようなブロックを縦横2個並べた状態を示す図である。
また、図29(a)は、当該ドットパターン(GRID4)の情報の配置の仕方の一例を示す説明図である。この例では、ドット毎の差分で情報を定義するようになっている。本明細書において、[1]は図面において四角形で囲まれた数字の1、(1)は図面において丸付き数字の1を意味しているものとする。ここで、たとえば、最初の情報[1]は(4)の位置にある情報ドット3の値から(1)の位置にある情報ドット3の値を減算した値で定義されている。同図に示すように、ディレクションドット21が配置された格子点のみは情報ドット3として使用していないが、このディレクションドット21にも格子点からの長さの違いで情報を意味づけてもよい。
また、ディレクションドット21の代わりに図28(a)で説明したように、この領域をディレクション領域21aとして情報ドット3を配置してもよいことはもちろんである。
図30上図は図29に示したドットパターンのブロックを縦横2個ずつ連結したものであり、下図はその値の算出を示したものである。
図31(a)および(b)は、GRID4によるドットパターンにおいて、ディレクションドット21をブロック中心に配置した場合の例を示している。
このようにディレクションドット21をブロック中心に配置することにより、他の格子
点は縦横斜め方向に自由に情報ドット3を配置することができる。
図32〜図33は、図31に対応した情報の配置を示す図である。
(GRID1:変形パターン)
図34(a)および(b)は、GRID1のドットパターンにおいて、3×3=9個の格子領域で構成されるブロックのドットパターンにおいて、特定の格子領域(ディレクション領域)だけ情報ドット3の配置方向を他の格子領域(ディレクション領域)と変えることによって、ブロックの方向を定義している。
すなわち、図34(a)において、左下の格子領域34a、中央の格子領域34b、左下の格子領域34cは中心から縦横方向に情報ドット3が配置され、その他の格子領域では中心から斜め方向に情報ドット3が配置されている。このように格子領域34a,34b,34cを配置することでこの格子領域を結ぶ三角形の形状、すなわち、底辺34a,34cに対する頂点34bの関係から、当該ブロックが上向きであることが認識できる。
このように、ブロック中の情報ドット3の配置方向を変更した(中心から縦横方向に情報ドット3を配置した)格子領域34a,34b,34cの配置関係(ここでは三角形)によってブロックの方向を定義することができる。これによって、ブロック中の全ての格子領域に情報ドット3を配置することができるため、キードットのために格子領域を犠牲にすることがなく、全ての格子領域に情報ドット3を配置することができる。
なお、図34(b)は、図34(a)に示したブロックを縦横方向に2個ずつ連結したものである。
図35(a)および(b)は、図34(a)および(b)に対応した情報ドット3の配置状態を示す図である。
図36(a)は、図34(a)の変形であり、4×4=16個の格子領域で構成されるブロックのドットパターンにおいて、特定の格子領域36a,36b,36c,36dだけ情報ドット3の配置方向を格子領域の中心から縦横方向に情報ドット3を配置し、他の格子領域(中心から斜め方向に情報ドット3を配置)と変えることによって、ブロックの方向を定義している。このブロックでは格子領域36a,36c,36dが底辺と並行に直線的に配置され、格子領域36bのみが突出している。したがって、当該ブロックはこの格子領域36bの突出方向、すなわち上向きであることがわかる。
なお、図36(b)は、図36(a)に示したブロックを縦横方向に2個ずつ連結したものである。
図37(a)および(b)は、図36(a)および(b)に対応した情報ドット3の配置状態を示す図である。
このように、図34〜図37に示すように、特定の格子領域だけ情報ドット3の配置方向を他の格子領域と変えることによって、ブロックの方向を定義することでキードットによって格子領域を犠牲にすることなく、全ての格子領域に情報ドット3を配置することが可能となる。
なお、図38および図39は、上記図34〜図37で説明した格子領域の配置を行ったとしてもブロックの方向を定義できない例を示している。
すなわち、図38(a)の場合、情報ドット3を格子点の縦横方向にずらして配置する格子領域381,382,383がブロックの斜め方向に直線的に連続しており、このような特定の格子領域を結ぶ線が直線的に他のブロックにも繋がっていく場合には、ブロックの方向を定義することができない。また図38(b)も情報ドット3を格子点の縦横方向にずらして配置する格子領域384,385,386がブロックの上下方向に直線的に連続しており、ブロックの方向を定義することができない。
さらに、図38(c)の場合、情報ドット3を格子点の縦横方向にずらして配置する格子領域387,388,389が三角形を構成してはいるものの、これを180度回転した図形が395,394,389、または391,392,393のようにブロックをまたがって表れてしまうため、ブロック自体(ブロックB5を誤認識してしまう可能性がある)を定義することができなくなり、かつその方向も上下いずれであるか判別できなくなる。
図39も同様であり、情報ドット3を格子点の縦横方向にずらして配置する格子領域401,402,403を結ぶ線が三角形を構成してはいるものの、これを180度回転した図形が404,405,406のようにブロックB3,B4をまたがって表れてしまうため、本来ブロックではないブロックB5を誤認識してしまう可能性があり、正確にブロックを定義することができなくなり、かつその方向も上下いずれであるか判別できなくなる。
図40(a)は、図23で説明したドットパターン(GRID3)の変形例であり、ブロックの外周を構成する格子線上に等間隔の基準格子点ドット4を配置し、この基準格子点ドット4同士を縦横方向に結んだ格子線を配置し、格子線同士の交点を仮想格子点として4個の仮想格子点に囲まれた領域を格子領域としたものである。この格子領域の中心を基準に長さと方向(ベクトル)を有する情報ドット3を配置している。そして、仮想格子点も基準として情報ドット3を配置している。ここで、格子領域については、中央上の格子領域411のみ中心点から縦横方向にのみずらした情報ドット3を配置し、これ以外の格子領域は中心点から斜め方向にずらして情報ドット3を配置している。この場合、当該格子領域411の配置位置から、当該ブロックは上向きであることがわかる。
このように特定の方向に情報ドット3を配置する格子領域411をブロックのどの位置に配置するかによって当該ブロックの方向を認識することができる。
このように、格子領域411をディレクション領域として、ブロック内のその配置場所だけでブロックの方向を識別することも可能である。
すなわち、図40(a)の場合、格子領域411のみドット配置の方向基準が縦横方向となっており、当該格子領域411がディレクション領域とみることができる。
この場合、当該ディレクション領域が中央上に配置されていることによって当該ブロックは上向きであると識別できる。なお、このように格子領域411をディレクション領域とした場合には、この中に配置される情報ドット3は必ずしもブロックの向きと一致させる必要はない。そのために、当該格子領域411内では情報ドットは中心点(仮想基準点)を始点として左、右または下方向のベクトル終点に配置することも可能である。
また、この格子領域411に配置される情報ドット3をディレクションドット21としてもよいことはもちろんである。この場合、当該格子領域411の中心点からの方向でブロックの向きを定義することができる。この場合、ディレクションドット21を配置する講師格子領域411はブロック中のどこに配置してもよい。
なお、図40(b)は、同図(a)で示したブロックを縦横2個ずつ連結した状態を示している。
図41(a)および(b)は、図40(a)および(b)に対応した情報ドット3の配置順を示したものである。
図42(a)は、図40(a)で説明したドットパターンをさらに4×4=16個の格子領域からなるブロックで示したものである。図42(b)はこのブロックを縦横2個ずつ連結した状態を示している。
なお、図42(a)および(b)においても、前述の図40(a)と同様、格子領域411のみドット配置の方向基準が縦横方向となっているため、当該格子領域411をディレクション領域とみることができる。
この場合、当該ディレクション領域(格子領域411)が図42(a)に示す位置に配置されていることによって当該ブロックは上向きであると識別できる。なお、このように格子領域411をディレクション領域とした場合には、この中に配置される情報ドット3は必ずしもブロックの向きと一致させる必要はない。そのために、当該格子領域411内では情報ドット3は中心点(仮想基準点)を始点として左、右または下方向のベクトル終点に配置することも可能である。
図43(a)および(b)は、図42(a)および(b)に対応した情報ドット3の配置順を示したものである。
図44(a)は、図28(a)で説明したドットパターン(GRID4)の変形例である。このドットパターンでは、所定の領域441のみ、格子点から縦横方向にずらした位置に情報ドット3を配置し、それ以外の格子点では斜め方向にずらした位置に情報ドット3を配置している。
このように、当該領域441をディレクション領域として、情報ドット3を配置する方向基準(縦横方向)を他の格子点の情報ドット3(斜め方向)と異ならせることによって当該ブロックの向き(ここでは上向き)を認識することが可能となる。
なお、当該領域441に配置される情報ドット3は縦横方向であれば任意の位置に配置することができるが、当該情報ドット3そのものをディレクションドット21としてブロックの方向を示すようにしてもよいことはもちろんである。
図44(b)は、図44(a)で説明したブロックを縦横2個ずつ連結した状態を示している。
図45は図44(a)に対応した情報ドット3の配置状態を説明するための図、図46は図44(b)に対応した情報ドット3の配置状態を説明するための図である。
このように、GRID4によるドットパターンの場合にも、特定の格子点をキードットのために犠牲にすることなく全ての格子点を基準に情報ドット3を配置することができる。
(ディレクションドットの他の実施形態)
図48から図55では、ディレクションドットの他の実施形態について説明する。
図48は、ブロックの形状が格子状以外であるブロックにおいて、方向を定義したものである。
同図において、まず基準点48a〜48eが配置されている。この基準点48a〜48eを結ぶ線によってブロックの向きを示す形状(ここでは上方を向いた5角形)が定義されている。そして、この基準点に基づいて仮想基準点48f,48g,48hが配置され、この仮想基準点を視点始点として方向と長さを有するベクトル終点に情報ドット3が配置されている。このように、同図では、ブロックの向きを基準点の配置の仕方によって定義することができる。そしてブロックの向きが定義されることによって、ブロック全体の大きさも定義されることになる。
なお、図48においては、基準点48a〜48eと情報ドット3は全て同一形状のもので説明したが、たとえば図57に示すように、基準点48a〜48eを情報ドット3よりも大きな形状としてもよい。また、この基準点48a〜48eと情報ドット3とは識別可能であればいかなる形状としてもよく、三角形、四角形それ以上の多角形であってもよい。
なお、図49は、図48に示したブロックを縦横方向に2個ずつ連結したものである。
図50および図51は、ブロックの形状を格子状、すなわち矩形領域とはせずに、一部の基準点と仮想基準点とを一致させた場合を示したものである。
すなわち、図48において配置されている48a,48b,48c,48d,48e,48f,48gは、基準点であると同時に仮想基準点とみることができる。そのため図50では、各点を始点としたベクトルの終点に情報ドット3を配置している。そして、48a,48b,48c,48f,48gで構成される五角形において、48cが頂点であることから、当該ブロックが上向きであることが認識できる。
なお、図51は、図50に示したブロックを縦横方向に2個ずつ連結したものである。
図52および図53は、他とは異なる方向基準で情報ドットを配置することにより、ブロックの方向を定義する場合を示している。
同図では、ブロックの四隅に基準点が配置されている。仮想基準点を中心に配置される情報ドット3のうち、ディレクション領域21aにおける情報ドット3の向きを、他の情報ドットの方向基準と異ならせることにより方向を定義する。すなわち、ディレクション領域21aのみ仮想基準点から縦横方向にずれた位置に情報ドット3を配置し、その他の領域では情報ドット3は仮想基準点から斜め方向にずれた位置に配置されている。図52では、ディレクション領域21aがブロック中心から上方にずれた位置(+Y方向)に配置されているので、当該ブロックは上向きであることがわかる。なお、このようにディレクション領域21aのブロック内の位置でブロックの方向を定義した場合には、ディレクション領域21a内の情報ドット3の配置は任意である。すなわち同図では、情報ドット3は、仮想基準点よりも右方向のベクトル終点に配置されている。
図53は、図52に示したブロックを縦横方向に2個ずつ連結したものである。
図54および図55は、複数の領域において、他とは異なる方向基準で情報ドットを配置することにより、ブロックの方向を定義する場合を示している。
同図では、ブロックの四隅に基準点が配置されている。当該ブロックにおいて、仮想基準点を中心に配置される情報ドット3のうち、3カ所の情報ドット3の配置における方向基準を他の領域と異ならせることによって、この3カ所をディレクション領域21aとし、このディレクション領域21aを結ぶ線の形状でブロックの方向を定義したものである。すなわち同図では三角形の形状から当該ブロックが上向きであることが識別できる。
図55は、図54に示したブロックを縦横方向に2個ずつ連結したものである。
図56は、基準点4aを格子点と一致させた場合であり、このようにブロック中心を基準に点対称とならないように基準点4aを配置した場合には、あえてディレクション領域やディレクションドットを配置することなく、そのままブロックの方向を定義することができる。
図57は図48に示したドットパターンの基準点48a〜48gのドットの大きさを他の情報ドット3よりも大きくしたものである。
なお、本実施形態では、情報ドット、ディレクションドット、基準ドットの各ドットは円形のものを用いて説明したが、これに限らず、非円形の三角形、四角形またはそれ以上の多角形であってもよいことはもちろんである。
なお、図58は、1カ所の基準ドット58aのみを他の基準ドット58b〜58dよりも大きなドットとすることで、この大形の基準ドット58aが配置された方向でブロックの方向を定義したものである。この基準ドット58aについても、形状や大きさを変更してもよいことはもちろんである。また、基準ドット58aを配置しないことでブロックの方向を定義してもよい。また、このように大きさを変更したドットを配置してブロックの方向を定義する場合、当該ドットはかならずしも基準ドットである必要はなく、情報ドット3であってもよい。情報ドット3の大きさを変更することでブロックの方向を定義する場合には、情報ドット3の情報を犠牲にすることなくブロックの方向を定義することが可能となる。
図59は、ディレクションドット21の大きさを他の情報ドット3または基準格子点ドット4よりも大きくすることで当該ドットがディレクションドット21であることを識別可能としたものである。このようにディレクションドット21の大きさを他の情報ドットと変えることによって、情報ドット3の方向基準がディレクションドット21の方向基準と同じであっても(図59では両者ともの縦横方向となっている)、ブロックの方向を定義することが可能となる。
図62は、ブロックの中央上方の格子領域に情報ドットを配置しない構成を示している。このように所定の格子領域(仮想格子点上または基準点)に情報ドット3を配置しないことによってその格子領域の位置によってブロックの方向を定義することが可能となる。同図では、上向きのブロックであることがわかる。
また、図63は、ブロックの中央上方の仮想格子点上に情報ドット3を配置することによってブロックの方向を定義した場合の例である。
図60は、格子領域内に配置される情報ドットの形状を複数の形状で表現したものである。同図に示すように、情報ドットの形状は、■、▲、●を選択的に配置しており、この形状毎に異なる情報を定義してもよい。
また、同図において、ブロックの方向は、四隅の基準格子点ドットのうちの2個を基準
格子点からずらして配置することによって定義することができる。同図ではブロックの左上と右上の基準格子点ドットを上方にずらしているため、当該ブロックは上向きであると識別できる。
図61は、ブロックの中央の格子領域の仮想格子点に配置される情報ドット3についてのみ他の情報ドットと形状を異ならせたものである。この仮想格子点には三角形の情報ドットが配置されており、当該三角形の形状によって、当該ブロックが上向きであることが認識できるようになっている。
本発明は、光学センサで読み取ることによって音楽や音声を出力できる絵本、写真、カードゲーム、セキュリティシステム等に広く利用できる。
GRID1によるドットパターンの原理図(1) ドットパターンの情報ドットおよびそこに定義されたデータのビット表示の例 GRID1によるキードットを説明するための図であり、情報ドットの配置例を示す図 GRID1による情報ドットの配置例を示す図であり、情報ドットおよびそこに定義されたデータのビット表示の例 GRID1による情報ドットおよびそこに定義されたデータのビット表示の例 GRID1によるドットパターンの変形例を示す図 GRID3によるドットパターンの原理図 GRID3による情報ドットの配置例を示す図 GRID3によるキードットと情報ドットとの配置状態を示す説明図 GRID3による情報ドットおよびそこに定義されたデータのビット表示の例を示す図 GRID3による情報ドット3およびそこに定義されたデータのビット表示の例を示す図 GRID3によるドットパターンの変形例を示す図 GRID4によるドットパターンの原理図 GRID4による情報ドットの定義方法を示した図(1) GRID4による情報ドットの定義方法を示した図(2) GRID4による情報ドットの定義方法を示した図(3) GRID4による情報ドットの定義方法を示した図(4) GRID4による光学読取手段における情報ドットの読取順を説明するための図 GRID4において、基準格子点ドットの代わりにキードットを配置した図 GRID4において、差分法を用いた情報ドットの読取方法について説明する図 GRID1にディレクションドットを配置した図(1) GRID1にディレクションドットを配置した図(2)の情報ドットの配置順を示す図 GRID3にディレクションドットを配置した図(1) GRID3にディレクションドットを配置した図(2) GRID3の情報ドットの配置順を示す図(1) GRID3のディレクションドットの配置位置を示す図 GRID3の情報ドットの配置順を示す図(2) GRID4にディレクションドットを配置した図(1) GRID4の情報ドットの配置順を示す図(1) GRID4の情報ドットの配置順を示す図(2) GRID4のディレクションドットの配置位置を示す図 GRID4の情報ドットの配置順を示す図(3) GRID4の情報ドットの配置順を示す図(4) GRID1において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(1) GRID1において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(2) GRID1において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(3) GRID1において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(4) ブロックや方向が定義できない場合の配置例を示す図(1) ブロックや方向が定義できない場合の配置例を示す図(2) GRID3において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(1) GRID3において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(2) GRID3において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(3) GRID3において、情報の配置順を説明するための図情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(4) GRID4において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(1) GRID4において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(2) GRID4において、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(3) 本実施形態において、ディレクションドットと情報ドットの判定アルゴリズムを説明するための図 ブロックの形状が格子状以外であるブロックにおいて、基準点の配置の仕方によりブロックの方向を定義する説明図(1) ブロックの形状が格子状以外であるブロックにおいて、基準点の配置の仕方によりブロックの方向を定義する説明図(2) ブロックの形状を矩形領域とはせずに、一部の基準点と基準格子点とを一致させた場合において、基準点の配置の仕方によりブロックの方向を定義する説明図(1) ブロックの形状を矩形領域とはせずに、一部の基準点と基準格子点とを一致させた場合において、基準点の配置の仕方によりブロックの方向を定義する説明図(2) ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(1) ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(2) ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(3) ブロックの四隅に基準点を配置したブロックにおいて、情報ドットの配置の仕方を変更してブロックの方向を定義する説明図(4) ブロックの四隅に基準点を配置したブロックにおいて、基準点の一部を格子点と一致させることによりブロックの方向を定義する説明図 ブロックの形状が格子状以外であるブロックにおいて、基準点の大きさを変更してブロックの方向を定義する説明図 ブロックの形状が格子状のブロックにおいて、基準点の大きさを変更してブロックの方向を定義する説明図 ブロックの中央に配置された情報ドットの大きさを他の情報ドットよりも大きくしてディレクションドットとした場合の説明図 情報ドットの形状を変更してブロックの方向を定義する説明図 ブロックの中央に配置された情報ドットの形状を他の情報ドットと変えることでブロックの方向を定義する説明図 ブロックの中央上の格子領域の仮想格子点上に情報ドットを配置しないことによってブロックの方向を定義する説明図 ブロックの中央上の格子領域の仮想格子点上に情報ドットを配置することによってブロックの方向を定義する説明図
符号の説明
1 ドットパターン
2 キードット
3 情報ドット
4 基準格子点ドット
7a〜7d 基準格子線
8a,8b 格子線
13 仮想格子点
21 ディレクションドット
28a,28b 横方向格子線
34a,34b,34c 格子領域
36a,36b,36c,36d 格子領域
387〜389,391〜393,394〜396 格子領域
401〜403,404〜406 格子領域
411 格子領域
441 格子領域

Claims (11)

  1. 情報ドットを配置するブロックの領域内に複数の基準点を設け、
    該基準点から定義される複数の仮想基準点を配置し、
    前記仮想基準点からの距離と方向とで情報が定義される情報ドットを配置するとともに、
    前記基準点または仮想基準点の配置によってブロックの向きを定義したドットパターン。
  2. 少なくとも1以上の所定の位置の前記情報ドットについて、その方向基準を他の情報ドットと異ならせることによって当該ブロックの向きを定義した請求項1記載のドットパターン。
  3. 前記方向基準を他の情報ドットと異ならせた1以上の所定の位置の情報ドットは、前記仮想基準点からの方向でブロックの向きを定義した請求項1記載のドットパターン。
  4. 前記基準点と前記仮想基準点とが一致している請求項1記載のドットパターン。
  5. 前記所定の位置は3以上であり、各位置を直線で結んだ形状によってブロックの向きを
    定義した請求項2記載のドットパターン。
  6. 前記所定の位置は1であり、ブロック内のその配置位置によってブロックの向きを定義した請求項2記載のドットパターン。
  7. 前記基準点または情報ドットの大きさまたは形状を他のドットと異ならせることによってブロックの向きを定義した請求項1記載のドットパターン。
  8. 前記仮想基準点上に情報ドットがあるか否かで情報を定義した請求項1記載のドットパターン。
  9. 前記仮想基準点上に情報ドットがあるか否かでブロックの向きを定義した請求項1記載のドットパターン。
  10. 前記情報ドットの大きさまたは形状によって情報を定義した請求項1記載のドットパターン。
  11. 前記情報ドットの大きさまたは形状によってブロックの向きを定義した請求項1記載のドットパターン。
JP2005334219A 2005-11-18 2005-11-18 ドットパターン Active JP4142683B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005334219A JP4142683B2 (ja) 2005-11-18 2005-11-18 ドットパターン

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005334219A JP4142683B2 (ja) 2005-11-18 2005-11-18 ドットパターン

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005194295A Division JP3771252B1 (ja) 2005-07-01 2005-07-01 ドットパターン

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008110781A Division JP4336837B2 (ja) 2008-04-21 2008-04-21 ドットパターン

Publications (3)

Publication Number Publication Date
JP2007012016A true JP2007012016A (ja) 2007-01-18
JP2007012016A5 JP2007012016A5 (ja) 2007-12-13
JP4142683B2 JP4142683B2 (ja) 2008-09-03

Family

ID=37750362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005334219A Active JP4142683B2 (ja) 2005-11-18 2005-11-18 ドットパターン

Country Status (1)

Country Link
JP (1) JP4142683B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009295134A (ja) * 2008-06-06 2009-12-17 Elan Microelectronics Corp 二次元コード、そのデコード装置及び方法
JP2009301524A (ja) * 2008-06-17 2009-12-24 Elan Microelectronics Corp 二次元バーコードのデコード方法
WO2011007783A1 (ja) 2009-07-13 2011-01-20 Yoshida Kenji ストリームドットパターン、ストリームドットパターンの形成方法、ストリームドットパターンを用いた情報入出力方法およびドットパターン
US8368954B2 (en) 2006-01-31 2013-02-05 Kenji Yoshida Image processing method
CN101751590B (zh) * 2008-12-08 2013-09-18 义隆电子股份有限公司 可提供信息的点码图案的译码方法与影像处理装置
US10614333B2 (en) 2015-10-19 2020-04-07 Sonix Technology Co., Ltd. Method for reading graphical indicator, indicator structure and electronic apparatus thereof

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI393055B (zh) * 2008-09-26 2013-04-11 Elan Microelectronics Corp A dot pattern having a cross-shaped positioning pattern, and an image processing device for processing the dot pattern
JP6189812B2 (ja) * 2010-04-13 2017-08-30 グリッドマーク株式会社 手書き入力ボードおよび手書き入力ボードを用いた情報処理システム
AU2013355725A1 (en) 2012-12-05 2015-07-23 Kenji Yoshida Facility-management-system control interface

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8368954B2 (en) 2006-01-31 2013-02-05 Kenji Yoshida Image processing method
JP2009295134A (ja) * 2008-06-06 2009-12-17 Elan Microelectronics Corp 二次元コード、そのデコード装置及び方法
JP2009301524A (ja) * 2008-06-17 2009-12-24 Elan Microelectronics Corp 二次元バーコードのデコード方法
CN101751590B (zh) * 2008-12-08 2013-09-18 义隆电子股份有限公司 可提供信息的点码图案的译码方法与影像处理装置
WO2011007783A1 (ja) 2009-07-13 2011-01-20 Yoshida Kenji ストリームドットパターン、ストリームドットパターンの形成方法、ストリームドットパターンを用いた情報入出力方法およびドットパターン
JP2011222042A (ja) * 2009-07-13 2011-11-04 Kenji Yoshida ストリームドットパターン、ストリームドットパターン形成媒体、ストリームドットパターンの読み取り装置
US9010640B2 (en) 2009-07-13 2015-04-21 Kenji Yoshida Stream dot pattern, method of forming stream dot pattern, information input/output method using stream dot pattern, and dot pattern
RU2568308C2 (ru) * 2009-07-13 2015-11-20 Кенджи Йошида Потоковое точечное изображение, способ формирования потокового точечного изображения, способ ввода/вывода информации с использованием потокового точечного изображения и точечное изображение
US10614333B2 (en) 2015-10-19 2020-04-07 Sonix Technology Co., Ltd. Method for reading graphical indicator, indicator structure and electronic apparatus thereof

Also Published As

Publication number Publication date
JP4142683B2 (ja) 2008-09-03

Similar Documents

Publication Publication Date Title
JP3771252B1 (ja) ドットパターン
JP4142683B2 (ja) ドットパターン
US8031375B2 (en) Information input/output method using dot pattern
JP3706385B2 (ja) ドットパターンを用いた情報入出力方法
JP4011605B2 (ja) ドットパターンを用いた情報入出力方法
JP4336837B2 (ja) ドットパターン
JPWO2006112021A1 (ja) ドットパターンを用いた情報入出力方法
JP3858051B6 (ja) ドットパターンを用いた情報入出力方法
KR100860110B1 (ko) 도트 패턴을 이용한 정보 입출력 방법
AU2012241078A1 (en) Printed Material Printed with a Dot Pattern
AU2016200846A1 (en) Printed Material Printed with a Dot Pattern
AU2016200254A1 (en) Dot pattern
AU2012204140A1 (en) Dot pattern

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071012

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071012

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20071012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071207

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20080213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080421

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080603

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080612

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110620

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4142683

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140620

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250