説明

ドットパターンを用いた情報入出力方法

ドットパターンの各ドットに異なる機能を付与することで、そのドットパターンからの情報化に際し、方向性を認識して迅速に情報化することができると共に、ドットの配置状態のエラーをチェックすることができ、更にセキュリティを高めることを目的とする。本発明は、複数の格子ドットを矩形状に配置してブロックとし、それを規則的且つ連続的に配置し、この矩形状に配置した格子ドットのブロック内にある1個の格子ドットを一定方向にずらして配置したドットをキーコードとし、キーコードを代表点にして、キードットの周辺に配置すると共に、4点の格子ドットで囲まれた中心を仮想点にして、これを始点として方向ベクトルにより表現した終点に、種々の情報を認識させる情報ドットを所定の規則に従って複数配置してドットパターンを生成し、ドットパターンをカメラにより画像データとして取り込み、デジタル化して求めた数値より情報、プログラムを出力する。

【発明の詳細な説明】
【技術分野】
本発明は、印刷物等に形成したドットパターン情報を光学的に読み取ることにより、様々な情報やプログラムを入出力させるドットパターンを用いた情報入出力方法に関するものである。
【背景技術】
従来より、印刷物等に印刷されたバーコードを読み取り、音声等の情報を出力させる情報出力方法が提案されている。例えば、予め記憶手段に与えられたキー情報に一致する情報を記憶させておき、バーコードリーダで読み込まれたキーから検索して情報等を出力する方法が提案されている。
また、多くの情報やプログラムを出力できるように、微細なドットを所定の法則で並べたドットパターンを生成し、印刷物等に印刷したドットパターンをカメラにより画像データとして取り込み、デジタル化して音声情報を出力させる技術も提案されている。
しかし、上記従来のバーコードにより音声等を出力させる方法は、印刷物等に印刷されたバーコードが目障りであるという問題を有していた。また、バーコードが大きく、紙面の一部を占有するため、このようにバーコードが大きいと、一部分の文章やセンテンスまたは、写真、絵、グラフィックの画像の中に登場する意味を有するキャラクターや対象物毎に分り易く数多くのバーコードを割りあてることはレイアウト上不可能であるという問題を有していた。
ドットパターンをカメラにより画像データとして取り込み、その画像データを無彩色の256階調にデジタル化し、ドットを認識しやすくするために、階調の変化を微分し、ドットのエッジをシャープにする。次に256階調のデータを白か黒に二値化する。この二値化することで、ドットを紙面に印刷するときに、印刷のズレやにじみ、画素化した際のズレが原因してドットの印刷エラーが生じる。従来はこのような印刷エラーをパリティチェックによりエラーチェックしていた。しかし、これらのエラーチェックには、ドット毎の印刷エラーチェックではなく、複数のドットから得られるデータの固まりに対してエラーチェックをし、どのドットに印刷エラーが生じたかを確定できないことと、カメラの撮像範囲を広くとらなければならないという問題を有していた。
更に、レンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時のゆがみによって撮像されたドットパターンに歪みが生じ、これを補正するために高度な技術力が必要となるという問題を有していた。
本発明は、かかる問題点を解決するために創案されたものである。すなわち、本発明の目的は、印刷物等に表示するドットパターンの各ドットに異なる機能を付与することで、多量のデータをドットパターンで定義し、そのドットパターンからの情報化に際し、方向性を認識して迅速に情報化することができると共に、ドットの配置状態のエラーをチェックすることができ、更にセキュリティを高めることができるドットパターンを用いた情報入出力方法を提供することにある。
【発明の開示】
本発明によれば、印刷物等の媒体面に、複数の格子ドット(4)を矩形状に配置してブロックとし、該ブロックを規則的かつ連続的に配置し、該ブロック内にある1個の格子ドット(4)を一定方向にずらして配置したドットをキードット(2)とし、前記キードット(2)を代表点にして、該キードット(2)の周辺に配置すると共に、4点の格子ドット(4)で囲まれた中心を仮想点にして、これを始点としてベクトルにより表現した終点に、種々の情報を認識させる情報ドット(3)を、ドットコード生成アルゴリズムにより所定の規則に則って複数配列してドットパターン(1)を生成し、前記ドットパターン(1)を構成するブロックをカメラにより画像データとして取り込み、それをデジタル化して求めた数値より情報、プログラムを出力させる、ことを特徴とするドットパターンを用いた情報入出力方法が提供される。
前記カメラで、前記ドットパターン(1)のキードット(2)の方向を認識し、その方向を基準にベクトルの終点に配置されたドットを情報ドット(3)とする。前記情報ドット(3)を、前記格子ドット(4)の仮想点を中心に複数表示する、ことができる。
上記構成の情報・プログラム出力方法では、情報出力装置、パソコン、PDA又は携帯電話等を用いて、印刷物等の媒体に形成したドットパターン(1)をカメラにより画像データとして取り込む。このカメラが、これらのドットパターン(1)における所定の規則に則って印刷されたドットを認識し、それをデジタル化し、求めた数値より、情報及びプログラムを出力させる。
特に、ドットパターン(1)をカメラによりその画像データとして取り込み、先ず格子ドット(4)を認識してキードット(2)を抽出し、キードット(2)で方向性を認識し、その方向をパラメータとして使用することができる。次に、このキードット(2)の周囲に配置した情報ドット(3)を抽出することにより、迅速に情報及びプログラムを出力させることができる。
ドットパターン(1)には、格子ドット(4)を配置してあるので、カメラでこのドットパターン(1)を画像データとして取り込む際に、レンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時のゆがみを矯正することができる。具体的には、歪みんだ4点の格子ドット(4)を元の正方形に変換する補正用の関数
(X,Y)=f(X´,Y´)を求め、
その同一の関数で情報ドットを補正して、正しい情報ドット(3)のベクトルを求める。
前記情報ドット(3)に定義するデータをビット表示した場合、エラーチェックに用いるために、前記情報ドット(3)1個の内、1ビットに冗長性を持たせ、該情報ドット(I)から得られるデータの上位ビットと情報ドットIn+1から得られるデータの下位ビットとを同一と取り扱うことにより、前記情報ドット(3)が前記媒体面に表示された状態において、その情報ドット(I)から得られるデータの上位ビットと情報ドット(In+1)から得られるデータの下位ビットが同一でないときに、前記情報ドット(3)は適正位置に表示されていないと判定する。
前記情報ドット(3)をエラーチェックに用いるために下位ビットに「0」又は「1」を割り当てることにより、前記情報ドット(3)が前記媒体面に表示された状態において、該情報ドット(3)が配置される位置から、隣接する、別のデータを有する情報ドット(3)が配置される位置へずれているときに、該情報ドット(3)は適正位置に表示されていないと判定する。
前記キードット(2)の方向を上方向と定め、その方向の情報ドットに定義されるデータを「0」とすると、前記情報ドット(3)を等間隔8方向の何れかに配置すると共に、エラーチェックを行うために下位ビットに「0」を割り当てることにより、前記情報ドット(3)が前記媒体面に表示された状態において、該情報ドット(3)が前記仮想点を中心にして上下又は左右方向以外の傾斜方向に位置するときに、該情報ドット(3)は適正位置に表示されていないと判定する。
前記キードット(2)の方向を上方向と定め、その方向の情報ドット(3)に定義されるデータを「0」とすると、前記情報ドット(3)を等間隔8方向の何れかに配置すると共に、エラーチェックを行うために下位ビットに「1」を割り当てることにより、前記情報ドット(3)が前記媒体面に表示された状態において、該情報ドット(3)が前記仮想点を中心にして傾斜方向以外の上下又は左右方向に位置するときに、該情報ドット(3)は適正位置に表示されていないと判定する。
前記情報ドット(3)のエラーチェックを行い、満遍なく情報ドット(3)を配置するために下位ビットに「0」と「1」を交互に割り当てることも好ましい。
これにより、ドットパターン(1)の情報ドット(3)が、前記媒体面への印刷のずれ、該媒体の伸縮、画素化した際のずれにより隣接方向へずれて入力されているかどうかについてエラーチェックすることができる。特に、情報ドット(3)が、仮想点を中心とした同心円状の回転方向にずれて入力された場合には、エラーを100%チェックすることができる。
前記ドットパターン(1)の情報ドットIに定義されたデータKを暗号化し目視で読むことができないようにするために、前記データKに対して関数fで表現された演算を実施し、I=f(K)をドットパターン(1)で表現し、前記ドットパターン(1)をカメラにより画像データとして取り込み、前記データKをK=f−1(I)により求める。
前記ドットパターン(1)の規則性をなくし、前記情報ドット(3)のデータを目視で読むことができないようにするために、隣り合う2列の情報ドット(3)の差分を情報ドット(3)に定義するデータとし、隣り合う前列の情報ドットIに、定義するデータKを加算することで求められる情報ドットIによりドットパターン(1)を生成し配置する。
これにより、媒体面に印刷したドットパターン(1)を目視で読むことが不可能となるためにセキュリティを高めることができる。さらに、前記ドットパターン(1)を媒体面に印刷した際、情報ドット(3)がランダムに配置され、模様が無くなり、ドットパターンを目立たなくすることができる。
前記ドットパターン(1)において情報のない領域を定義するために、又は領域と領域の境界において境界をまたいで異なったデータを取り込まないようにするために、データの定義されていないダミードット(5)として、4点の格子ドット(4)の中心位置にドットを配置することができる。
前記ドットパターン(1)をカメラによりその画像データとして取り込むときに、情報の代表点であるキードット(2)の位置におけるX,Y座標値を算定した後に、該キードット(2)から得られるドットパターン(1)の向きと、隣接する代表点におけるX,Y座標値の増分値及び、撮像中心からX,Y座標値が算定されたキードット(2)までの距離より、座標値を補完することによって、撮像中心のX,Y座標値を算定する。
前記ドットパターン(1)のブロックをカメラによりその画像データとして取り込むときに、各ブロックに同一のデータが定義されている領域、又はX,Y座標値が定義されている領域において、前記カメラの撮像中心の周囲にある情報ドット(3)から読み始め、順次情報ドット(3)を読み込み、1ブロック分に相当する情報ドット(3)を読み込むことにより、前記カメラの撮像中心から最小のエリアでドットパターン(1)を読み取り、撮像中心位置におけるデータを算定する。
前記ドットパターン(1)をカメラにより画像データとして取り込むときに、情報ドット(3)についてエラーが発生した際に、該情報ドット(3)に相当する最も近い情報ドット(3)を読み込み、エラー修正をする。
前記ブロックをサブブロックに分割し、各サブブロックに個々に独立した情報を与えることにより、前記カメラの撮像中心から、前記ブロック単位より小さなエリアでドットパターン(1)を読み取り、また各サブブロック毎にエラーチェック及びエラー修正を行う。
【図面の簡単な説明】
図1は、本発明のドットパターンの一例を示す説明図である。
図2は、ドットパターンの情報ドットの一例を示す拡大図である。
図3(a)、(b)は、キードットを中心に配置した情報ドットを示す説明図である。
図4は、情報ドット及びそこに定義されたデータのビット表示の例であり、他の形態を示すものである。
図5は、情報ドット及びそこに定義されたデータのビット表示の例であり、(a)はドットを2個、(b)はドットを4個及び(c)はドットを5個配置したものを示すものである。
図6は、ドットパターンの変形例を示すものであり、(a)は情報ドット6個配置型、(b)は情報ドット9個配置型、(c)は情報ドット12個配置型、(d)は情報ドット36個配置型の概略図である。
図7(a)、(b)は、情報ドットのエラーをチェックする方法を説明するために情報ドットIからI16までを並列させた状態を示す説明図である。
図8は、下位ビットに「0」を割り当てて情報ドットのエラーをチェックする方法の説明図である。
図9は、下位ビットに「1」を割り当てて情報ドットのエラーをチェックする方法の説明図である。
図10は、下位ビットに「0」と「1」を交互に割り当てて情報ドットのエラーをチェックする方法の説明図である。
図11は、情報ドットのセキュリティについて説明するために情報ドットIからI16までを並列させた状態を示す説明図である。
図12は、キードットの配置位置を変更したドットパターンの他の配置例を示す正面図である。
図13は、ダミードットを示すものであり、(a)はダミードットの説明図、(b)は印刷物の一例、(c)は印刷物における領域、及び(d)はダミードットでマスクの境界を規制しているドットパターンの配置例を示す説明図である。
図14は、(a)は情報ドットを入力する順番を示す説明図であり、(b)はドットパターンを読み込み、X,Y座標値を算定する方法を示す説明図である。
図15は、規則性を排除したドットパターン生成方法を示す説明図であり、ドットパターンとする情報ブロックを示すものである。
図16は、規則性を排除したドットパターン生成方法を示す説明図であり、ドットパターンに記録するデータブロックを示すものである。
図17は、カメラの断面図である。
図18は、カメラの撮像範囲を示す説明図である。
図19は、4ブロック分の情報ドットを示す説明図である。
図20は、カメラにより撮像中心位置とサブブロックの入力手順を示す説明図である。
図21は、カメラにより撮像中心位置とサブブロックの入力手順を示す説明図である。
図22は、カメラにより撮像中心位置とサブブロックの入力手順を示す説明図である。
図23は、カメラにより撮像中心位置とサブブロックの入力手順を示す説明図である。
【発明を実施するための最良の形態】
以下、本発明の好ましい実施の形態を図面を参照して説明する。
図1は本発明のドットパターンの一例を示す説明図である。図2はドットパターンの情報ドット及びそれに定義されたデータのビット表示の一例を示す拡大図である。図3(a)、(b)はキードットを中心に配置した情報ドットを示す説明図である。
本発明のドットパターンを用いた情報入出力方法は、ドットパターン1の生成と、そのドットパターン1の認識と、このドットパターン1から情報及びプログラムを出力する手段とからなる。即ち、ドットパターン1をカメラにより画像データとして取り込み、先ず、格子ドットを抽出し、次に本来格子ドットがある位置にドットが打たれていないことによってキードット2を抽出し、次に情報ドット3を抽出することによりデジタル化して情報領域を抽出して情報の数値化を図り、その数値情報より、このドットパターン1から情報及びプログラムを出力させる。例えば、このドットパターン1から音声等の情報やプログラムを、情報出力装置、パソコン、PDA又は携帯電話等に出力させる。
本発明のドットパターン1の生成は、ドットコード生成アルゴリズムにより、音声等の情報を認識させるために微細なドット、即ち、キードット2、情報ドット3、格子ドット4を所定の規則に則って配列する。図1に示すように、情報を表すドットパターン1のブロックは、キードット2を中心に5×5の格子ドット4を配置し、4点の格子ドット4に囲まれた中心の仮想点の周囲に情報ドット3を配置する。このブロックには任意の数値情報が定義される。なお、図1の図示例では、ドットパターン1のブロック(太線枠内)を4個並列させた状態を示している。但し、ドットパターン1は4ブロックに限定されないことは勿論である。
1つのブロックに1つの対応した情報及びプログラムを出力させ、又は、複数のブロックに1つの対応した情報及びプログラムを出力させることができる。
格子ドット4は、カメラでこのドットパターン1を画像データとして取り込む際に、そのカメラのレンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時のゆがみを矯正することができる。具体的には歪んた4点の格子ドット4を元の正方形に変換する補正用の関数(X,Y)=f(X´,Y´)を求め、その同一の関数で情報ドットを補正して、正しい情報ドット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で囲まれた中心を仮想点にして、これを始点としてベクトルにより表現した終点に配置したものである。例えば、この情報ドット3は、格子ドット4に囲まれ、図2に示すように、その仮想点から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で囲まれた仮想点との間隔は、隣接する仮想点間の距離の15〜30%程度の間隔であることが望ましい。情報ドット3と仮想点間の距離がこの間隔より遠いと、ドット同士が大きな塊りと視認されやすく、ドットパターン1として見苦しくなるからである。逆に、情報ドット3と仮想点間の距離がこの間隔より近いと、隣接する何れの仮想点を中心にしてベクトル方向性を持たせた情報ドット3であるかの認定が困難になるためである。
例えば、情報ドット3は、図3(a)に示すように、キードット2を中心に時計回りでIからI16を配置する格子間隔は1mmであり、4mm×4mmで3ビット×16=48ビットを表現する。
なお、ブロック内に、個々に独立した情報内容を有し、かつ他の情報内容に影響されないサブブロックを更に設けることができる。図3(b)はこれを図示したものであり、4つの情報ドットで構成されるサブブロック[I1,2,3,]、[I5,6,7,]、[I9,10,11,12]、[I13,14,15,16]は各々独立したデータ(3ビット×4=12ビット)が情報ドットに展開されているようになっている。このようにサブブロックを設けることより、後述するエラーチェックをサブブロック単位で容易に行うことができる。
情報ドット3のベクトル方向(回転方向)は、30度〜90度毎に均等に定めるのが望ましい。
図4は情報ドット及びそこに定義されたデータのビット表示の例であり、他の形態を示すものである。
また、情報ドット3について格子ドット4で囲まれた仮想点から長・短の2種類を使用し、ベクトル方向を8方向とすると、4ビットを表現することができる。このとき、長いほうが隣接する仮想点間の距離の25〜30%程度、短い方は15〜20%程度が望ましい。但し、長・短の情報ドット3の中心間隔は、これらのドットの径より長くなることが望ましい。
4点の格子ドット4で囲まれた情報ドット3は、見栄えを考慮し、1ドットが望ましい。しかし、見栄えを無視し、情報量を多くしたい場合は、1ベクトル毎に、1ビットを割り当て情報ドット3を複数のドットで表現することにより、多量の情報を有することができる。例えば、同心円8方向のベクトルでは、4点の格子ドット4に囲まれた情報ドット3で2の情報を表現でき、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個(6×6)配置したもの(d)がある。
図7(a)、(b)は情報ドットのエラーをチェックする方法を説明するために情報ドットIからI16までを並列させた状態を示す説明図である。
前記情報ドット3の1個の3ビットの内、1ビットに冗長性を持たせ、情報ドットIから得られるデータの上位ビットと情報ドットIn+1から得られるデータの下位ビットとを同一と取り扱うことにより、情報ドット3が印刷物等の媒体面に表示された状態において、その情報ドットIから得られるデータの上位ビットと情報ドットIn+1から得られるデータの下位ビットが同一でないときに、情報ドット3は適正位置に表示されていないと判定する。
また、図7(b)は、情報ドットをサブブロック単位でエラーをチェックする方法を説明するために情報ドットIからI16までを並列させた状態を示す説明図である。
図7(b)に示すエラーチェック方式は、図7(a)と同様に、1ビットに冗長性を持たせ、4つの情報ドット3で構成される[I1,2,3,]、[I5,6,7,]、[I9,10,11,12]、[I13,14,15,16]の各々独立したデータ(3ビット×4=12ビット)単位でエラーチェックする方式である。
これにより、ドットパターン1の情報ドット3が、印刷物等の媒体面への印刷のずれ、媒体面の伸縮、画素化した際のずれにより隣接する、別のデータを有する情報ドット3が配置される位置へずれて入力されているかどうかについて、そのエラーを100%チェックすることができる。
図8は下位ビットに「0」を割り当てて情報ドットのエラーをチェックする方法の説明図である。
情報ドット3については、その下位ビットに「0」又は「1」を割り当てることによりエラーチェックに用いることができる。情報ドット3が媒体面に表示された状態において、情報ドット3が仮想点を中心にして隣接する別のデータを有する情報ドットが配置される位置へこの情報ドット3は適正位置に表示されていないと判定することができる。
例えば、キードット2の方向を上方向と定め、その方向の情報ドット3に定義されるデータを「0」とすると、情報ドット3を8方向の何れかに配置すると共に、エラーチェックに用いるために下位ビットに「0」を割り当てる。即ち、下位ビットに「0」を割り当てた情報ドット3は、常に仮想点を中心にして上下又は左右方向に位置する。そこで、この情報ドット3が傾斜方向に位置するときは適正位置に表示されていないと判定することができる。
図9は下位ビットに「1」を割り当てて情報ドットのエラーをチェックする方法の説明図である。
または、キードット2の方向を上方向と定め、その方向の情報ドット3に定義されるデータを「0」とすると、情報ドット3を8方向の何れかに配置すると共に、下位ビットに「1」を割り当てることにより情報ドット3のエラーをチェックすることも可能である。即ち、下位ビットに「1」を割り当てた情報ドット3は、常に仮想点を中心にして傾斜方向に位置する。そこで、この情報ドット3が上下又は左右方向に位置するときは適正位置に表示されていないと判定することができる。
図10は下位ビットに「0」と「1」を交互に割り当てて情報ドットのエラーをチェックする方法の説明図である。
更に、1個の情報ドット3を満遍なく配置すると共に、エラーチェックに用いるために下位ビットに「0」と「1」を交互に割り当てることにより、この情報ドット3のエラーをチェックすることも可能である。このエラーチェック方式では、上下、左右と45度傾斜方向に交互に情報ドットが生成され、ドットパターンの規則性を無くすことができる。即ち、下位ビットに「0」と「1」を交互に割り当てた情報ドット3は、常に仮想点を中心にして上下、左右又は45度傾斜方向に位置する。そこで、この情報ドット3が上下、左右又は45度傾斜方向以外の方向に位置するときは適正位置に表示されていないと判定する。このように、情報ドット3が、仮想点を中心に回転方向にずれて入力されたエラーは確実にチェックすることができる。
なお、情報ドット3を8方向(45度間隔)かつ長・短としたときは(図4参照)、4ビットの内、下位1ビットを「0」又は「1」とすると近接する3点(同心円±45度回転位置2点+長・短どちらか1点)のドットの位置にずれた場合は、それをエラーとすることができ、エラーを100%チェックができる。
図11は情報ドットのセキュリティについて説明するために情報ドットIからI16までを並列させた状態を示す説明図である。
例えば、ドットパターン1のデータを目視で読むことができないようにするために、情報ドット3のIに対して関数f(Kn)で表現された演算を実施し、I=K+Rをドットパターン1で表現し、ドットパターンIを入力した後、K=I−Rを求める。
または、ドットパターン1のデータを目視で読むことができないようにするために、キードット2を代表点に複数の情報ドット3を1列に配置し、かつこの1列を複数列に配置し、隣り合う2列のデータの差分を情報ドット3のデータとすることにより、各ブロックのドットパターン1の規則性が無くなるように、各情報ドット3を配置することができる。
これにより、媒体面への印刷したドットパターン1を目視で読むことが不可能となるためにセキュリティを高めることができる。また、前記ドットパターン1を媒体面に印刷した際、情報ドット3がランダムに配置され、模様が無くなり、ドットパターンを目立たなくすることができる。
図12はキードットの配置位置を変更したドットパターンの他の配置例を示す説明図である。
キードット2は、必ずしも矩形状に配置した格子ドット4のブロックの中心に配置する必要はない。例えば、格子ドット4のブロックの隅角部に配置することができる。このときは、情報ドット3は、キードット2を起点にして並列するように配置することが好ましい。
図13はダミードットを示すものであり、(a)はダミードットの説明図、(b)は印刷物の一例、(c)は印刷物における領域、及び(d)はダミードットでマスクの境界を規制しているドットパターンの配置例を示す説明図である。
4点の格子ドット4の中心位置にドットを配置し、情報の与えられていないドットとしてダミードット5を定義する(図13(a))。このダミードット5は、数値データ、もしくはX,Y座標値が定義された領域と領域の境界や、数値データ、もしくはX,Y座標値が定義されない領域に使用することができる。
例えば、図13(b)に示すように、印刷物に小熊、カバと太陽といった3種類の図柄を印刷し、この3つの図柄に対応した領域を、図13(c)に示すように、マスク1、マスク2、マスク3のように配置する。図13(d)に示すように、マスク1、マスク2の境界にダミードット5を配置する。
なお、ダミードット5を境界に使用する場合、対応する位置のブロック全てをダミードット5にする必要はなく、境界を示すために最小限のドットをダミードットとすればよい。
また、マスク以外の領域にダミードットを配置し、情報が定義されていない領域を設けることができる。
ドットパターン1をカメラにより画像データとして取り込むときに、情報の代表点であるキードット2の位置におけるX,Y座標値を算定した後に、キードット2から得られるドットパターン1の向きと、隣接する代表点におけるX,Y座標値の増分値及び、撮像中心からX,Y座標値が算定されたキードット2までの距離より、座標値を補完することによって、撮像中心のX,Y座標値を算定する。
または、ドットパターン1のブロックをカメラにより画像データとして取り込むときに、各ブロックに同一のデータが定義されている領域、又はX,Y座標値が定義されている領域において、カメラの撮像中心の周囲にある情報ドット3から読み始め、順次情報ドット3を読み込み、1ブロック分に相当する情報ドット3を読み込むことにより、カメラの撮像中心から最小のエリアでドットパターン1を読み取り、撮像中心位置におけるデータを算定する。
図14(a)は、カメラの撮像中心から最小のエリアで1ブロック分に相当する情報ドットを入力する順番を示したものである。時計回りで縦4個×4列=16個の情報ドットを入力する。
図14(b)はドットパターンを読み込みX,Y座標値を算定する方法を示す説明図である。
図示するように、求めるX,Y座標値はカメラの撮像中心のあるブロックのX,Y座標値とする。X,Y座標値は、ブロック毎に増分値がX方向(右方向)、Y方向(上方向)に+1に定めると、他のブロックから入力した情報ドットを補正する必要がある。尚、X座標値を示すK(i16151413121110)とY座標値を示すK(i)が補正の対象となりこれ以外のK16〜K(i32〜i17)はどのブロックでも同一の値となり、補正する必要はない。
これらの計算は次の数式1によって求まる。[]内の計算によって桁が上がっても、[]前のビットの列に影響を与えないものとする。情報ドットIの中からエラーチェックビットを除いたものをKとする。



ドットパターン1をカメラにより画像データとして取り込むときに、情報ドット3についてエラーが発生した際に、情報ドット3に相当する最も近い情報ドット3を読み込み、エラー修正をすることにより、カメラの撮像中心から最小のエリアでドットパターン1を読み取ることができる。
上述した情報の取り込み方法を利用して、XY座標を使用したタブレットやデジタイザ、入力インタフェースを実現できる。例えば、タブレット、デジタイザはドットパターン1を印刷した透明シートを対象物に重ねて、カメラ撮像し、ドットパターン1のXY座標値を入力する。
図15は規則性を排除したドットパターン生成方法を示す説明図であり、ドットパターンとする情報ブロックを示すものである。図16は規則性を排除したドットパターン生成方法を示すものであり、ドットパターンに記録するデータブロックを示す説明図である。
先ず、図15に示すように、iは1ビットのデータを意味し、rはi2m×2+i2m−1とする。またαα×2+0、αI’α×2+1としてエラーチェックビットを付加する。αはブロックの横方向へのならびを示す数値とする。
次に、図16に示すように、Cは1ビットの記録したいデータとする。
また、αはC2m×2+C2m−1とする。αはブロックの横方向への並びを示す数値となる。
αから次の数式2により求めるαを使用し、上記の定義によりドットパターン1とする情報ブロック3を生成する4。これによってドットパターン1は横方向に対して規則性を排除することができる。

α=1のとき、13141516として初期値を与える。これをβRとする。βはブロックの縦方向への並びを示す数値とする。βRは同一の値ではなく、乱数列による値を与えることによって、ドットパターンは縦方向に対しても規則性を排除する。
図17から図23はカメラによりサブブロックで構成された1ブロック相当のドットパターンを読み込む方法を示す説明図である。
カメラを収納する筒は10mm前後であり、ドットパターンの撮像範囲を、直径10mmとすると、4mm×4mmのドットパターン1ブロック分(I〜I16)を読み込むために最大2r=2×4√2=11.28mmの撮像範囲が必要となる。これを解消するために、1ブロックとして構成されるキードットの周辺に配置される情報ドット16個を順次読み込むのではなく、他の情報ドットと独立的な情報を有する4個の情報ドット毎(1/4ブロック)に読み込む。これにより、撮像範囲からはずれた1/4ブロックの情報ドットを撮像範囲内にある、他のブロックの対応する情報ドット(1/4ブロック)を入力することにより、1ブロック分の情報を撮像範囲の直径10mm内で入力可能とする。
上記方法により入力されたいずれかの1/4ブロックの中でエラーが生じた場合は、他のブロックの対応する情報ドット(1/4ブロック)を入力し、エラー修正を行う。
図20はカメラの撮像中心がB1ブロックのIを示しており、撮像中心から最も近いB1ブロックの[I〜I16]を入力する。
図21はカメラの撮像中心がB1ブロックのIを示しており、カメラ中心から最も近いB1ブロックの[I,I,I,I]、[I,I,I,I]とB2ブロックの[I,I10,I11,I12]、[I13,I14,I15,I16]を入力する。
図22はカメラの撮像中心がB1ブロックのIを示しており、中心から最も近いB1ブロックの[I,I,I,I]、B2ブロックの[I,I10,I11,I12]、B3ブロックの[I13,I14,I15,I16]、B4ブロックの[I,I,I,I]を入力する。
図23はカメラの撮像中心がB1ブロックのIを示しており中心から最も近いB1ブロックの[I,I,I,I]、[I,I10,I11,I12]とB4ブロックの[I,I,I,I]、[I13,I14,I15,I16]を入力する。
図20〜図23において、入力したドットパターンにエラーが生じた場合、代替で入力可能な1/4ブロックのドットパターンがいずれも最大8ヶ所ある。
上述したような本発明のドットパターン1を、絵本、テキスト等の印刷物に印刷することにより、このカメラで画像データとして取り込み、それをデジタル化して求めた数値よりパソコン、情報出力装置、PDA又は携帯電話等からそれに対応する情報、プログラムを出力させる。
なお、本発明は上述した発明の実施の形態に限定されず、ドットパターン1の各ドット2,3,4に異なる機能を付与することで、多量のデータをドットパターンで定義し、方向性を認識して迅速に情報化することにより、所定の情報やプログラムを出力させて様々な使用を可能にするものであれば、上述した形態に限定されず、本発明の要旨を逸脱しない範囲で種々変更できることは勿論である。
【産業上の利用可能性】
上述のように、本発明のドットパターンを用いた情報入出力方法は、ドットパターンをカメラにより、先ず格子ドットを認識してキードットを抽出し、キードットで方向性を認識し、その方向をパラメータとして使用することができる。次に、このキードットの周囲に配置した情報ドットを抽出することにより、迅速に情報及びプログラムを出力させることができる。
また、ドットパターンに格子ドットを配置してあるので、カメラでこのドットパターンの画像データとして取り込む際に、そのカメラのレンズの歪みや斜めからの撮像、紙面の伸縮、媒体表面の湾曲、印刷時のゆがみによって撮像されたドットパターンに歪みを矯正することができる。
さらに、ドットの配置状態のエラーをチェックすることができ、更にセキュリティを高めることができる。
【図1】

【図2】

【図3】

【図4】

【図5】

【図6】

【図7】

【図8】

【図9】

【図10】

【図11】

【図12】

【図13】

【図14】

【図15】

【図16】

【図17】

【図18】

【図19】

【図20】

【図21】

【図22】

【図23】


【特許請求の範囲】
【請求項1】
印刷物等の媒体面に、複数の格子ドット(4)を矩形状に配置してブロックとし、
該ブロックを規則的かつ連続的に配置し、
該ブロック内にある1個の格子ドット(4)を一定方向にずらして配置したドットをキードット(2)とし、
前記キードット(2)を代表点にして、該キードット(2)の周辺に配置すると共に、4点の格子ドット(4)で囲まれた中心を仮想点にして、これを始点としてベクトルにより表現した終点に、種々の情報を認識させる情報ドット(3)を、ドットコード生成アルゴリズムにより所定の規則に則って複数配列してドットパターン(1)を生成し、
前記ドットパターン(1)を構成するブロックをカメラにより画像データとして取り込み、それをデジタル化して求めた数値より情報、プログラムを出力させる、
ことを特徴とするドットパターンを用いた情報入出力方法。
【請求項2】
前記カメラで、前記ドットパターン(1)のキードット(2)の方向を認識し、その方向を基準にベクトルの終点に配置されたドットを情報ドット(3)とする、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項3】
前記情報ドット(3)を、前記格子ドット(4)の仮想点を中心に複数表示する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項4】
前記情報ドット(3)に定義するデータをビット表示した場合、エラーチェックに用いるために、前記情報ドット(3)1個の内、1ビットに冗長性を持たせ、該情報ドット(I)から得られるデータの上位ビットと情報ドットIn+1から得られるデータの下位ビットとを同一と取り扱うことにより、
前記情報ドット(3)が前記媒体面に表示された状態において、その情報ドット(I)から得られるデータの上位ビットと情報ドット(I+1)から得られるデータの下位ビットが同一でないときに、前記情報ドット(3)は適正位置に表示されていないと判定する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項5】
前記情報ドット(3)をエラーチェックに用いるために下位ビットに「0」又は「1」を割り当てることにより、
前記情報ドット(3)が前記媒体面に表示された状態において、該情報ドット(3)が配置される位置から、隣接する、別のデータを有する情報ドット(3)が配置される位置へずれているときに、該情報ドット(3)は適正位置に表示されていないと判定する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項6】
前記キードット(2)の方向を上方向と定め、その方向の情報ドット(3)に定義されるデータを「0」とすると、前記情報ドット(3)を等間隔8方向の何れかに配置すると共に、エラーチェックを行うために下位ビットに「0」を割り当てることにより、
前記情報ドット(3)が前記媒体面に表示された状態において、該情報ドット(3)が前記仮想点を中心にして上下又は左右方向以外の傾斜方向に位置するときに、該情報ドット(3)は適正位置に表示されていないと判定する、ことを特徴とする請求項5のドットパターンを用いた情報入出力方法。
【請求項7】
前記キードット(2)の方向を上方向と定め、その方向の情報ドット(3)に定義されるデータを「0」とすると、前記情報ドット(3)を等間隔8方向の何れかに配置すると共に、エラーチェックを行うために下位ビットに「1」を割り当てることにより、
前記情報ドット(3)が前記媒体面に表示された状態において、該情報ドット(3)が前記仮想点を中心にして傾斜方向以外の上下又は左右方向に位置するときに、該情報ドット(3)は適正位置に表示されていないと判定する、ことを特徴とする請求項5のドットパターンを用いた情報入出力方法。
【請求項8】
前記情報ドット(3)のエラーチェックを行い、満遍なく情報ドット(3)を配置するために下位ビットに「0」と「1」を交互に割り当てる、ことを特徴とする請求項5のドットパターンを用いた情報入出力方法。
【請求項9】
前記ドットパターン(1)の情報ドットIに定義されたデータKを暗号化し目視で読むことができないようにするために、
前記データKに対して関数fで表現された演算を実施し、
=f(K)をドットパターン(1)で表現し、
前記ドットパターン(1)をカメラにより画像データとして取り込み、前記データKをK=f−1(I)により求める、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項10】
前記ドットパターン(1)の規則性をなくし、前記情報ドット(3)のデータを目視で読むことができないようにするために、
隣り合う2列の情報ドット(3)の差分を情報ドット(3)に定義するデータとし、
隣り合う前列の情報ドットIに、定義するデータKを加算することで求められる情報ドットIによりドットパターン(1)を生成し配置する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項11】
前記ドットパターン(1)において情報のない領域を定義するために、又は領域と領域の境界において境界をまたいで異なったデータを取り込まないようにするために、
データの定義されていないダミードット(5)として、4点の格子ドット(4)の中心位置にドットを配置する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項12】
前記ドットパターン(1)をカメラによりその画像データとして取り込むときに、
情報の代表点であるキードット(2)の位置におけるX,Y座標値を算定した後に、
該キードット(2)から得られるドットパターン(1)の向きと、隣接する代表点におけるX,Y座標値の増分値及び、撮像中心からX,Y座標値が算定されたキードット(2)までの距離より、座標値を補完することによって、
撮像中心のX,Y座標値を算定する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項13】
前記ドットパターン(1)のブロックをカメラによりその画像データとして取り込むときに、各ブロックに同一のデータが定義されている領域、又はX,Y座標値が定義されている領域において、
前記カメラの撮像中心の周囲にある情報ドット(3)から読み始め、順次情報ドット(3)を読み込み、
1ブロック分に相当する情報ドット(3)を読み込むことにより、前記カメラの撮像中心から最小のエリアでドットパターン(1)を読み取り、撮像中心位置におけるデータを算定する、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項14】
前記ドットパターン(1)をカメラにより画像データとして取り込むときに、
情報ドット(3)について一部エラーが発生した際に、該情報ドット(3)に相当する最も近い情報ドット(3)を読み込み、エラー修正をする、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。
【請求項15】
前記ブロックをサブブロックに分割し、各サブブロックに個々に独立した情報を与えることにより、
前記カメラの撮像中心から、前記ブロック単位より小さなエリアでドットパターン(1)を読み取り、また各サブブロック毎にエラーチェック及びエラー修正を行う、ことを特徴とする請求項1のドットパターンを用いた情報入出力方法。

【国際公開番号】WO2004/084125
【国際公開日】平成16年9月30日(2004.9.30)
【発行日】平成18年6月22日(2006.6.22)
【国際特許分類】
【出願番号】特願2004−569547(P2004−569547)
【国際出願番号】PCT/JP2003/003162
【国際出願日】平成15年3月17日(2003.3.17)
【特許番号】特許第3706385号(P3706385)
【特許公報発行日】平成17年10月12日(2005.10.12)
【出願人】(503349741)
【Fターム(参考)】