(57)【要約】【課題】複雑な処理を行うことなく明暗の識別を確実に行うことができる二次元コードを提供する。【解決手段】明暗の２進コードで表されるデータをセル化して二次元マトリックス状にパターンとして配置し、一つのコードセル１０ｂ，１０ｗが２ｎ列×２ｎ行（ｎは自然数）の二次元マトリックスのドット１００で構成された二次元コード１である。一つのコードセル１０ｂ，１０ｗにより表される２進コードの暗を表すコードセル１０ｂが、当該一つのコードセルを構成する二次元マトリックスの最外周のドット１００につき、周方向に対して明ドット１００ｗと暗ドット１００ｂとを交互に配置する。【選択図】　図１
2004102350.tif 000002
【特許請求の範囲】
【請求項１】
明暗の２進コードで表されるデータをセル化して二次元マトリックス状にパターンとして配置され、前記一つのコードセルが２ｎ列×２ｎ行（ｎは自然数）の二次元マトリックスのドットで構成された二次元コードであって、
暗を表すコードセルにおいて、当該一つのコードセルを構成する二次元マトリックスのうちの最外周のドットは、周方向に対して明ドットと暗ドットとが交互に配置されている二次元コード。
【請求項２】
前記暗コードを表すコードセルにおいて、当該一つのセルを構成する二次元マトリックスの最外周以外のドットは、すべて暗ドットで構成されている請求項１記載の二次元コード。
【請求項３】
明暗の２進コードで表されるデータをセル化して二次元マトリックス状にパターンとして配置され、前記一つのコードセルが２ｎ列×２ｎ行（ｎは自然数）の二次元マトリックスのドットで構成された二次元コードを印刷する方法であって、
暗を表すコードセルにおいて、当該一つのコードセルを構成する二次元マトリックスのうちの最外周のドットが、周方向に対して明ドットと暗ドットとが交互に配置されているコードセルと、前記最外周のドットがすべて暗ドットで構成されているコードセルとを、印刷装置の解像度又は印刷濃度に応じて選択して使い分ける二次元コードの印刷方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータ等に情報を入力するための光学的読み取りが可能な二次元コード及びその印刷方法に関し、特に２進コードで表されるデータをセル化して二次元マトリックス状にパターンとして配置した二次元コード及びその印刷方法に関する。
【０００２】
【従来の技術】
この種の二次元コード１をトナー方式またはインクジェット方式などのプリンタで印刷する場合、図７に示されるように、一つのコードセル１０が、たとえば４列×４行のドット１００で構成される。そして、４列×４行すべてのドット１００を黒色に印刷することで、暗（黒）のコードセル１０ｂが印刷され、４列×４行すべてのドット１００を白色に印刷する（すなわち、インクを吐出しない。）ことで明（白）のコードセル１０ｗが印刷される。このようにして、明暗（白黒）の２進コードで表される所望のデータを二次元マトリックス状に用紙に印刷することができる。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の二次元コード１の黒色のコードセル１０ｂを印刷する場合においては、印刷方式や用紙の影響によって、一つのドット１００の周辺にインクが飛散したり、インクが用紙に滲んだりして黒色のコードセル１０ｂが膨張する傾向にあった。このため、二次元コードにおいて、図８に示すように黒色のコードセル１０ｂに囲まれた白のコードセル１０ｗは、黒のコードセル１０ｂの膨張によって面積が狭まり、これを光学的読み取り装置で読み込むと黒色に近い灰色として誤認識されることがあった。
【０００４】
一方、黒色のコードセルにおいても用紙やプリンタの状況によっては濃淡差が生じるので、場合によっては灰色に近い黒色に印刷されることもあり、極端な場合には、白色のコードセル１０ｗと黒色のコードセル１０ｂとを区別できないといった問題があった。
【０００５】
【課題を解決するための手段】
本発明は、複雑な処理を行うことなく明暗の識別を確実に行うことができる二次元コード及びその印刷方法を提供することを目的とする。
【０００６】
本発明によれば、明暗の２進コードで表されるデータをセル化して二次元マトリックス状にパターンとして配置され、前記一つのコードセルが２ｎ列×２ｎ行（ｎは自然数）の二次元マトリックスのドットで構成された二次元コードであって、暗を表すコードセルにおいて、当該一つのコードセルを構成する二次元マトリックスのうちの最外周のドットは、周方向に対して明ドットと暗ドットとが交互に配置されている二次元コードが提供される。
【０００７】
この場合、前記暗コードを表すコードセルにおいて、当該一つのコードセルを構成する二次元マトリックスの最外周以外のドットはすべて暗ドットで構成することができる。
【０００８】
本発明の二次元コードでは、暗のコードセルを構成する最外周のドットを全て暗ドットとはせずに、一つおきに明ドットを入れて暗ドットを間引きする。
【０００９】
これにより、インクの飛散や滲みによって暗のコードセルが膨張する傾向がある場合、全て明ドットで構成された明のコードセルが暗のコードセルで囲まれても、当該明のコードセルにはみ出してくる暗ドットの数は半分になるので、明のコードセルを暗のコードセルと誤認識する確率が著しく減少する。また、暗のコードセルの最外周のドットのみを一つおきに間引きするので、暗のコードセルを明のコードセルと誤認識するおそれもない。
【００１０】
また、本発明によれば、明暗の２進コードで表されるデータをセル化して二次元マトリックス状にパターンとして配置され、前記一つのコードセルが２ｎ列×２ｎ行（ｎは自然数）の二次元マトリックスのドットで構成された二次元コードを印刷する方法であって、暗を表すコードセルにおいて、当該一つのコードセルを構成する二次元マトリックスのうちの最外周のドットが、周方向に対して明ドットと暗ドットとが交互に配置されているコードセルと、前記最外周のドットがすべて暗ドットで構成されるコードセルとを、印刷装置の解像度や印刷濃度に応じて選択して使い分ける二次元コードの印刷方法が提供される。
【００１１】
本発明では、印刷濃度に応じて、上述した最外周のドットを間引きしたコードセルを使用する場合と、間引きしないコードセルを使用する場合とを切り替える。すなわち、印刷濃度が濃い場合には、上述したように暗のコードセルが膨張する傾向が強いので、最外周の暗ドットを間引きしたコードセルを用いて二次元コードを印刷する。これに対して、印刷濃度が薄い場合には、暗のコードセルが膨張する傾向はさほど強くなく、逆に暗のコードセルの最外周の暗ドットを間引きすると明のコードセルと誤認識するおそれがあるため、最外周のドットも含めてすべてを暗ドットとしたコードセルを用いて二次元コードを印刷する。
【００１２】
これにより、暗コードセルを明コードセルと誤認識したり、明コードセルを暗コードセルと誤認識したりすることがなくなり、複雑な処理を行わなくとも読み取り精度を高めることができる。
【００１３】
【発明の実施の形態】
以下、本発明の実施形態を図面に基づいて説明する。
【００１４】
図１は本発明の二次元コードの一例を示す図であり、この二次元コード１は、４列×４行の二次元マトリックスのドットで構成されたコードセル１０を、１４列×８行の二次元マトリックス状にパターンとして配置したデータである。
【００１５】
同図に示す例では、１行目には、左から、暗コードセル１０ｂ、明コードセル１０ｗ、明コードセル１０ｗ、暗コードセル１０ｂ、明コードセル１０ｗ、暗コードセル１０ｂ、明コードセル１０ｗ、明コードセル１０ｗ、暗コードセル１０ｂ、明コードセル１０ｗ、暗コードセル１０ｂ、暗コードセル１０ｂ、明コードセル１０ｗ、暗コードセル１０ｂという１４個の２進データが配列され、また２行目には、左から、明コードセル１０ｗ、明コードセル１０ｗ、暗コードセル１０ｂ、明コードセル１０ｗ、明コードセル１０ｗ、明コードセル１０ｗ、明コードセル１０ｗ、暗コードセル１０ｂ、明コードセル１０ｗ、明コードセル１０ｗ、明コードセル１０ｗ、暗コードセル１０ｂ、暗コードセル１０ｂ、暗コードセル１０ｂという１４個の２進データが配列されている。このようなマトリックス方式の二次元コード１は、バーコード方式とは異なり狭小な面積で多くの情報をもつことができる。
【００１６】
本例のコードセル１０の一例を図２に示す。同図に示すコードセル１０は、４列×４行の二次元マトリックスのドットパターンで構成され、一つのドットがプリンタのたとえば一つの画素に対応する。同図（Ａ）に示すコードセルが暗コードセル１０ｂであり、同図（Ｂ）に示すコードセルが明コードセル１０ｗである。
【００１７】
同図（Ａ）に示す暗コードセル１０ｂは、４列×４行の１６個のドットのうちの最外周のドットが、周方向に対して暗ドット１００ｂと明ドット１００ｗとが交互に位置するように配列されている。また、それ以外のドット１００、すなわち内周に位置する４つのドットはすべて暗ドット１００ｂで構成されている。具体的には、印刷時に暗ドット１００ｂの部分のみをインクＯＮとし、明ドット１００ｗの部分はインクＯＦＦとすることで印刷される。
【００１８】
これに対して、同図（Ｂ）に示す明コードセル１０ｗは、すべてのドット１００が明ドット１００ｗで構成されたものであり、具体的には印刷時にインクの吐出をＯＦＦすることで印刷される。
【００１９】
図３は、本発明に係るコードセルの他の例を示す図であり、本例のコードセル１０は２列×２行の４つのドット１００から構成され、同図（Ａ）に示す暗コードセル１０ｂは対角線に位置する一対の２つのドット１００が暗ドット１００ｂとされ、他の対角線に位置する２つのドット１００が明ドット１００ｗとされている。これに対して、同図（Ｂ）に示す明コードセル１０ｗは、２列×２行の４つのドット１００のすべてが明ドット１００ｗで構成されている。
【００２０】
本例の場合には、内周に位置するドットが存在せず最外周のドットのみとなるが、本発明に係るコードセルはこれをも含む趣旨である。
【００２１】
図４は、本発明に係るコードセルのさらに他の例を示す図であり、本例のコードセル１０は６列×６行の３６個のドット１００から構成されたものである。同図（Ａ）に示す暗コードセル１０ｂは、６列×６行の３６個のドットのうちの最外周のドットが、周方向に対して暗ドット１００ｂと明ドット１００ｗとが交互に位置するように配列されている。また、それ以外のドット１００、すなわち内周に位置する４列×４行の１６個のドットはすべて暗ドット１００ｂで構成されている。これに対して、同図（Ｂ）に示す明コードセル１０ｗは、すべてのドット１００が明ドット１００ｗで構成されている。
【００２２】
なお、図示は省略するが、本発明に係るコードセルは、２ｎ列×２ｎ行（ｎは自然数）のドットマトリックスであればすべて適用することができる。
【００２３】
このように、２ｎ列×２ｎ行のドットを二次元マトリックス状に配列したコードセル１０において、暗コードセル１０ｂを構成する際に、その最外周のドット構成を、暗ドット１００ｂと明ドット１００ｗとを交互に配置し、かつそれ以外の内周に位置するドットをすべて暗ドット１００ｂにすると、図２乃至図４に示されるように、１８０°回転させても同じパターンとなる。また、暗コードセル１０ｂの最外周のドット構成において、対辺するドット構成を同じ方向でみると左から右に向かって、一方は暗ドット→明ドット→暗ドット…の順序で並び、もう一方は明ドット→暗ドット→明ドット…の順序で並び、互いに逆の関係にある。したがって、暗コードセル１０ｂ同士が隣り合ったときに、暗ドットと明ドットとが必ず隣り合い、明ドット同士が隣り合うことはない。こうすることで、明ドット同士が隣り合うことによる明ドットの面積増加を防止することができる。
【００２４】
次に、図５を参照しながら本実施形態の作用効果について説明する。
【００２５】
明コードセル１０ｗと暗コードセル１０ｂとを図１に示すように二次元マトリックス状にパターン化する場合、明コードセル１０ｗは、その四方を暗コードセル１０ｂで囲まれる場合と、その三方を暗コードセル１０ｂで囲まれる場合と、その二方を暗コードセル１０ｂで囲まれる場合と、その一方に暗コードセル１０ｂが存在する場合と、その四方を明コードセル１０ｗで囲まれる場合が考えられる。
【００２６】
このうち、その一方に暗コードセル１０ｂが存在する場合と、その四方を明コードセル１０ｗで囲まれる場合には、インクの飛散や滲みなどによって暗コードセル１０ｂが膨張しても、その明コードセル１０ｗに対する読み取り精度上の影響は少ないので、白色として認識される。
【００２７】
これに対して、図５に示すようなコードセルの配置において、暗コードセル１０ｂの全てのドットが暗ドット１００ｂで構成されている場合、図５（Ａ）に示すように、明コードセル１０ｗがその四方を暗コードセル１０ｂで囲まれる場合において、インクの飛散や滲みなどによって暗コードセル１０ｂが膨張すると、明コードセル１０ｗの四辺すべてが暗ドット１００ｂで浸食されることになり、黒色に近い灰色として認識される。また、図５（Ｂ）に示すように、明コードセル１０ｗがその三方を暗コードセル１０ｂで囲まれる場合において、インクの飛散や滲みなどによって暗コードセル１０ｂが膨張すると、明コードセル１０ｗの三辺が暗ドット１００ｂで浸食されることになるので、図５（Ａ）に示す場合よりも薄い灰色として認識される。さらに、図５（Ｃ）に示すように、明コードセル１０ｗがその二方を暗コードセル１０ｂで囲まれる場合において、インクの飛散や滲みなどによって暗コードセル１０ｂが膨張すると、明コードセル１０ｗの二辺が暗ドット１００ｂで浸食されることになるので、図５（Ｂ）に示す場合より薄い、白色に近い灰色として認識される。
【００２８】
このように、暗コードセル１０ｂのドットをすべて暗ドット１００ｂで構成すると、同じ明コードセル１０ｗであっても隣接する暗コードセルの数によって、認識されるべき白色部分の濃度が変動し、図５（Ａ）に示す場合のように最も濃い灰色として認識される場合の検出出力値と、暗コードセルを認識する場合の検出出力値とが近接すると、明コードセル１０ｗと暗コードセル１０ｂとを区別するための検出出力値のしきい値の範囲が狭くなり、これにより誤検出が生じる可能性が高くなる。
【００２９】
しかしながら、本実施形態に係る暗コードセル１０ｂは、同図に示されるように、その最外周の暗ドット１００ｂを半分間引きしているので、こうした誤検出を防止することができる。すなわち、明コードセル１０ｗがその四方を本例の暗コードセル１０ｂで囲まれた場合、インクの飛散や滲みなどによって暗コードセル１０ｂが膨張したとしても、明コードセル１０ｗの四辺から侵入する暗ドット１００ｂは従来の構成に対して半分になる。また、明コードセル１０ｗの三方又は二方を本例の暗コードセル１０ｂで囲まれた場合も同様に、侵入する暗ドット１００ｂは従来に比べて半分となる。
【００３０】
これに対して、暗コードセル１０ｂについては、図６（Ａ）に模式的に示すように、単独では最外周に明ドット１００ｗを配置した分だけ濃度が低下するが、後述するように明コードセルと誤検出されることはない。
【００３１】
たとえば、本例で誤認識が生じる可能性が最も高いのは、四方をすべて明コードセル１０ｗで囲まれた暗コードセル１０ｂと、四方をすべて暗コードセル１０ｂで囲まれた明コードセル１０ｗである。
【００３２】
これを図６（Ａ）および（Ｂ）に示すが、ドットオーダで考えると、四方を暗ドット１００ｂで囲まれた明ドット１００ｗは黒色に近い灰色となり、三方を暗ドット１００ｂで囲まれた明ドット１００ｗはそれよりも薄い灰色（図では＊で示す。）となり、二方を暗ドット１００ｂで囲まれた明ドット１００ｗはさらに薄い灰色（図では・で示す。）となるものと考えられる。
【００３３】
ここで、四方をすべて明コードセル１０ｗで囲まれた暗コードセル１０ｂを上述した灰色で示すと図６（Ａ）のようになり、四隅のうちの２つのドットのみが二方を暗ドット１００ｂで囲まれた最も薄い灰色ドット（・）となるだけで、他の４つの明ドット１００ｗは何れも三方を暗ドット１００ｂで囲まれた２番目に濃い灰色（＊）となる。
【００３４】
これに対して、四方をすべて暗コードセル１０ｂで囲まれた明コードセル１０ｗを上述した灰色で示すと図６（Ｂ）のようになり、四隅のうちの２つのドットのみが二方を暗ドット１００ｂで囲まれた最も薄い灰色ドット（・）となるだけで、他のすべての明ドット１００ｗは何れも明ドット１００ｗとなる。したがって、最も薄く検出される可能性がある暗コードセル１０ｂと、最も濃く検出される可能性がある明コードセル１０ｗとを比較しても、その明暗差はきわめて大きくなり、これにより明暗の誤検出を確実に防止することができる。
【００３５】
ちなみに、図６（Ｃ）は、四方をすべて暗コードセル１０ｂで囲まれた暗コードセル１０ｂを示す模式図であるが、この中央の暗コードセル１０ｂの最外周の明ドット１００ｗは、何れも四方を暗ドット１００ｂで囲まれるので、最も濃い灰色（図では▲で示す。）となり、暗コードセル１０ｂとして認識されることになる。
【００３６】
なお、プリンタや用紙の状況によっては、インクの飛散や滲みが発生せず、暗コードセル１０ｂが膨張しないことも考えられる。こうした場合には、逆に暗コードセル１０ｂの暗ドット１００ｂの数が少ない分だけ検出精度が低下するおそれがある。そこで、プリンタや用紙の状況に応じて、上述した本例の暗コードセル１０ｂを用いるか、或いは従来の暗コードセルを用いるかを選択することが望ましい。具体的には、本例の暗コードセル１０ｂ及び従来の暗コードセルを用いて二次元コードを印刷し、これを光学的読み取り装置又は検証装置で読み取らせて、読み取り結果の良い方のコードセルを選択する。
なお、以上説明した実施形態は、本発明の理解を容易にするために記載されたものであって、本発明を限定するために記載されたものではない。したがって、上記の実施形態に開示された各要素は、本発明の技術的範囲に属する全ての設計変更や均等物をも含む趣旨である。
【００３７】
【発明の効果】
以上述べたように本発明によれば、暗コードセルを明コードセルと誤認識したり、明コードセルを暗コードセルと誤認識したりすることがなくなり、複雑な処理を行わなくとも読み取り精度を高めることができる。
【図面の簡単な説明】
【図１】本発明の二次元コードの一例を示す図である。
【図２】本発明の二次元コードに係る一つのコードセル（４列×４行）の一例を示す図である。
【図３】本発明の二次元コードに係る一つのコードセル（２列×２行）の他の例を示す図である。
【図４】本発明の二次元コードに係る一つのコードセル（６列×６行）のさらに他の例を示す図である。
【図５】明コードセルと暗コードセルとの組み合わせ例を示す図である。
【図６】本発明の効果を説明するためのコードセルを示す図である。
【図７】従来の二次元コードを示す図である。
【図８】従来の二次元コードの問題点を説明するための明コードセルを示す図である。
【符号の説明】
１…二次元コード
１０…コードセル
１０ｂ…暗コードセル
１０ｗ…明コードセル
１００…ドット
１００ｂ…暗ドット
１００ｗ…明ドット
【図１】
2004102350.tif 000003
【図２】
2004102350.tif 000004
【図３】
2004102350.tif 000005
【図４】
2004102350.tif 000006
【図５】
2004102350.tif 000007
【図６】
2004102350.tif 000008
【図７】
2004102350.tif 000009
【図８】
2004102350.tif 000010