(57)【要約】【課題】表したいデータを複数のコードシンボルで表現した光学式認識コードを提供する。また、セル数の異なるコードシンボルの混在を許容する場合、端部の読み落としがあっても、その読み落としを検知し、誤認識を防止しうる光学式認識コードを提供する。【解決手段】所定のデータを複数のコードシンボルで表現し、各コードシンボル中にはその複数のコードシンボルのグループを識別するためのグループ識別データと、そのグループ内における順番を示すグループ内順識別データと、を含んでいる。  また、コードシンボルの左端部、右端部には、それぞれ端部識別用色彩配列が設けられている。読み取りの際の欠けが合った場合、端部識別用色彩配列が破壊されることによって、欠けが生じたことを検知することができ、誤読を防止することが可能である。【選択図】図１
2009003653.tif 000002
【特許請求の範囲】
【請求項１】
所定の色彩が付された色彩の領域であるセルを所定個数線状に配置して成る光学式認識コードにおいて、
１個のコードシンボル中の前記セル数の範囲が定められており、係る範囲の中であれば異なるセル数のコードシンボルの混在を許容する光学式認識コード。
【請求項２】
所定の色彩が付された色彩の領域であるセルを所定個数線状に配置して成る光学式認識コードにおいて、
表現したいデータを、複数のコードシンボルを用いて表現した光学式認識コード。
【請求項３】
請求項２記載の光学式認識コードにおいて、
前記複数のコードシンボルは、そのセル数が全て同一であることを特徴とする光学式認識コード。
【請求項４】
請求項２又は３記載の光学式認識コードにおいて、
前記複数のコードシンボルのそれぞれは、
前記コードシンボルが、所定のデータを表す複数のコードシンボル群のグループに含まれることを示すために、前記コードシンボル群が属する前記グループを識別するグループ識別データと、
前記コードシンボルの、前記グループ内における順番を示すグループ内順識別データと、
を含むことを特徴とする光学式認識コード。
【請求項５】
前記請求項４記載の光学式認識コードにおいて、
前記グループを識別するグループ識別データは、前記コードシンボル中の所定のセル群が表すデータであることを特徴とする光学式認識コード。
【請求項６】
前記請求項４記載の光学式認識コードにおいて、
前記グループを識別するグループ識別データは、前記コードシンボル中の所定のセル群に表された色彩パターンであることを特徴とする光学式認識コード。
【請求項７】
前記請求項４記載の光学式認識コードにおいて、
前記グループ内順識別データは、前記コードシンボル中の所定のセル群が表すデータであることを特徴とする光学式認識コード。
【請求項８】
前記請求項４記載の光学式認識コードにおいて、
前記グループ内順識別データは、前記コードシンボル中の所定のセル群に表された色彩パターンであることを特徴とする光学式認識コード。
【請求項９】
請求項１又は２記載の光学式認識コードにおいて、
前記各コードシンボルは、その端部の読み落としによる誤読を未然に防止するよう、左端及び右端に、端部識別用色彩配列を設け、
前記端部識別用色彩配列は、その一部が欠けて読み取られた場合に、読み落としがあったことが判別しうることを特徴とする光学式認識コード。
【請求項１０】
請求項９記載の光学式認識コードにおいて、
前記各コードシンボルを構成するセル数がＮ又はＮ−１であり、
前記各コードシンボルが使用する色彩が３色以上であり、
前記各コードシンボルの一方端の端部に前記端部識別用色彩配列として第１の色彩のセルを配置し、他方端の端部に前記端部識別用色彩配列として第２の色彩のセルを配置したことを特徴とする光学式認識コード。ここで、前記Ｎは自然数であり、前記第１の色彩と前記第２の色彩とは異なる色彩である。
【請求項１１】
請求項９記載の光学式認識コードにおいて、
前記各コードシンボルを構成するセル数がＮ又はＮ−１であり、
前記各コードシンボルが使用する色彩が３色以上であり、
前記各コードシンボルの一方端に設けられた前記端部識別用色彩配列は、一方端部から順に、第１の色彩のセルと、第２の色彩のセルと、から構成され、
前記各コードシンボルの他方端に設けられた前記端部識別用色彩配列は、他方端部から順に、第１の色彩のセルと、第３の色彩のセルと、から構成されていることを特徴とする光学式認識コード。ここで、前記第１の色彩、第２の色彩、第３の色彩は互いに異なる色彩であり、前記Ｎは自然数である。
【請求項１２】
請求項９記載の光学式認識コードにおいて、
前記各コードシンボルを構成するセル数がＮ以下、Ｎ−ｋ以上であり、
前記各コードシンボルが使用する色彩が３色以上であり、
前記各コードシンボルの一方端に設けられた前記端部識別用色彩配列は、一方端部から順に、第１の色彩のセルと、第１の繰り返しセル部と、から構成され、
前記各コードシンボルの他方端に設けられた前記端部識別用色彩配列は、他方端部から順に、第２の色彩のセルと、第２の繰り返しセル部と、から構成され、
前記第１の繰り返しセル部は、前記一方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第２の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であり、
前記第２の繰り返しセル部は、前記他方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第１の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であることを特徴とする光学式認識コード。ここで、前記Ｎは自然数であり、前記ｋは、１以上Ｎ未満の整数である。
【請求項１３】
請求項９記載の光学式認識コードにおいて、
前記各コードシンボルを構成するセル数がＮ以下、Ｎ−ｋ以上であり、
前記各コードシンボルが使用する色彩が３色以上であり、
前記各コードシンボルの一方端に設けられた前記端部識別用色彩配列は、一方端部から順に、第１の色彩のセルと、第１の繰り返しセル部と、から構成され、
前記各コードシンボルの他方端に設けられた前記端部識別用色彩配列は、他方端部から順に、第１の色彩のセルと、第２の繰り返しセル部と、から構成され、
前記第１の繰り返しセル部は、前記一方端部側から前記コードシンボルの内側に向かって、第２の色彩のセルと、第３の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であり、
前記第２の繰り返しセル部は、前記他方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第２の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であることを特徴とする光学式認識コード。ここで、前記Ｎは自然数であり、前記ｋは、１以上Ｎ未満の整数である。
【請求項１４】
前記請求項１〜１３記載の光学式認識コードが付された物品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光学式認識コードに関する。特に、本願発明者が提案した１Ｄカラービットコード（特願２００６−１９６７０５）と呼ぶ光学式認識コードの効率的なデータ復元手法に関する。また、効率的なデータ復元に適した仕様をも提案する。すなわち、本発明は光学的認識コードのコーディング技術にも関する。
【背景技術】
【０００２】
本願出願人は、先の特願２００６−１９６７０５号において、色彩の遷移、変化によって情報を表す光学式認識コードを提案した。この光学式認識コードを「１Ｄカラービットコード」と呼ぶ。この１Ｄカラービットコードによれば、各色彩の占める領域の大きさや形の制限が緩いので、凹凸のある表面や、柔軟性のある素材上でも光学式認識コードをマーキングすることが可能である。
【０００３】
この１Ｄカラービットコードは複数の色彩（信号色）の配列により決められたデジタル値を返す構造となっている。その基本仕様は、一本に連なった色彩（信号色）の配列（＝コードシンボル）である。
【０００４】
したがって、表すデータ量が多くなるとコードシンボルが長大になるため、一本のコードシンボル全てを同時にキャプチャーすることができない可能性が増加する。
【０００５】
尚、所定のデータを表す、具体的な１個１個の光学式認識コードそのもの、幾何学的図形を、特に「コードシンボル」（又は単にシンボル）と呼ぶ場合がある。この具体的なコードシンボルをＣＣＤカメラ等で撮影し（キャプチャー）し、所定の画像処理を行って、原データを復元する。
【０００６】
さて、例えば、コードシンボルがカメラの画像視野に収まらなかったり、コードシンボルの一部が覆い隠されている場合などが現実に想定される。このような場合は、１画面中にコードシンボルが収まらないので、データの復元が困難となる。したがって、キャプチャーの際に、操作者が十分注意してキャプチャーを行う必要があった。
【０００７】
ところで、一般的な白黒バーコードの場合、ステッチングの概念が取り入れられているものが知られている。これは、全体ではなく、一部のデータが読み取られた場合、その一部のデータを複数箇所キャプチャーし、それら一部をつなぎ合わせて、元の一つのバーコードのデータ（すなわち、１個の全体のコードシンボル）を復元するものである。
【０００８】
このようなステッチング技術は、ラスタスキャンによる読取りや、スタックド２次元バーコードの読取りに応用されている。これらは主に端点や中央を示す特有のパターンに基づいてデータのつなぎ合わせを行なっているものである。この様子が図１２に示されている。
【０００９】
図１２には、一般的な黒バーと白バーとを用いたバーコード１０の例が示されており、その上にスキャンラインが描かれている。スキャンライン１２は、コードシンボルの左上のみをスキャンしているのでコードシンボルの左側の一部のみが得られることが容易に理解できよう。一方、スキャンライン１４は、コードシンボルの右下のみをスキャンしているのでコードシンボルの右側の一部のみが得られることが容易に理解できよう。
【００１０】
このような場合、これら２本のスキャンライン１２、１４によるスキャンでキャプチャーできたデータをつなぎ合わせて、一本の完全なコードシンボル１０がキャプチャーできることが明らかであり、実際に広く利用されている。
【００１１】
このようなステッチングの技術は、キャプチャーした部分的なコードのパターンを読み取って、どの部分かを判断し、その判断に基づきステッチングを行う。したがって、バーコードのパターンには、ある程度冗長性を持たせる必要がある。
【００１２】
このような冗長性に基づくステッチングを、１Ｄカラービットコードにも適用して、読み取り精度の向上を図ることも考えられる。
【００１３】
１Ｄカラービットコードの定義
さて、本願発明者が考案した１Ｄカラービットコードの定義を説明する。１Ｄカラービットコードは、
・所定の色彩の領域「セル」が一列に配列したもの（＝「セル列」）である。
【００１４】
・複数の色彩が用いられ、各セルにはセル毎の色彩が付されている。
【００１５】
・セル同士の包含はない。すなわち、あるセルが他のセルに包含されることはない。
【００１６】
・配列を構成するセルの数が予め定められた数である。
【００１７】
・隣接するセル同士には同色は付されず、必ず異なる色彩が付される。
【００１８】
というものである。１Ｄカラービットコードは意本的にはこの条件に基づいて作成されている。
【００１９】
もちろん、セルの数、実際に用いる色彩の種類等は、各アプリケーション毎に異なる。
【００２０】
従来の先行特許技術
ここで、従来の先行特許技術を、数種説明する。
【００２１】
例えば、下記特許文献１には、４ステートバーによりＩＤコードが印刷され、バーノーバー方式のバーコードで局内コードを印刷し、印刷が欠けてしまうことを防止する技術が開示されている。
【００２２】
また、下記特許文献２には、ＣＣＤカメラで取り込まれた対象物がかすれていてもバーコードに欠けが生じてもバーコードを読み取ることができる技術が開示されている。
【００２３】
また、下記特許文献３、４には、感熱発色層に金赤外線吸収能を有する発色性化合物を含有させ、発色パターンがカルラコードである感熱記録体が開示されている。その結果、自動認識コードに多少の欠けが生じても読みとりが可能であると記載されている。
【００２４】
【特許文献１】特開２００６−０９５５８６号公報
【特許文献２】特開２０００−２４９５１８号公報
【特許文献３】特開平８−３００８２７号公報
【特許文献４】特開平８−１８５４６３号公報
【発明の開示】
【発明が解決しようとする課題】
【００２５】
（１）しかしながら、１Ｄカラービットコードの場合は、複数種類（例えば３種類）の色彩のみの組み合わせによるコードであるので、極端な冗長性を持たせないと特有のパターンの形成が非常に困難である。しかし、極端な冗長性は色彩列の長大化につながるため、現実問題として採用は困難である。
【００２６】
ところで、１Ｄカラービットコードは、複数のコードシンボルを同時に読み取ることが容易であることが特徴の一つである。
【００２７】
そこで、本願発明者は、従来のステッチングの考え方とは異なり、一つのデータを表すコードシンボルを複数に分割してマーキングするという方法で、従来のステッチングと同等以上の作用・効果が得られるコード読み取り技術を開発したものである。
【００２８】
すなわち、本発明は、あるデータを表す１Ｄカラービットコードのコードシンボルを複数に分割してマーキングすることによって、読み取り精度を向上させた光学式認識コードを提供することを目的とする。
【００２９】
（２）また、本発明は、セル数の異なる複数のコードシンボルの混在を許容する状況において、コードシンボルの端部が欠けて読まれた場合、その読み落としを検知でき、誤読を防止しうる技術を提供することを、他の目的とする。
【課題を解決するための手段】
【００３０】
（１）本発明は、上記課題を解決するために、所定の色彩が付された色彩の領域であるセルを所定個数線状に配置して成る光学式認識コードにおいて、１個のコードシンボル中の前記セル数の範囲が定められており、係る範囲の中であれば異なるセル数のコードシンボルの混在を許容する光学式認識コードである。
【００３１】
（２）また、本発明は、所定の色彩が付された色彩の領域であるセルを所定個数線状に配置して成る光学式認識コードにおいて、表現したいデータを、複数のコードシンボルを用いて表現した光学式認識コードである。
【００３２】
（３）また、本発明は、（２）記載の光学式認識コードにおいて、前記複数のコードシンボルは、そのセル数が全て同一であることを特徴とする光学式認識コードである。
【００３３】
（４）また、本発明は、（２）又は（３）記載の光学式認識コードにおいて、前記複数のコードシンボルのそれぞれは、前記コードシンボルが、所定のデータを表す複数のコードシンボル群のグループに含まれることを示すために、前記コードシンボル群が属する前記グループを識別するグループ識別データと、前記コードシンボルの、前記グループ内における順番を示すグループ内順識別データと、を含むことを特徴とする光学式認識コードである。
【００３４】
（５）また、本発明は、上記（４）記載の光学式認識コードにおいて、前記グループを識別するグループ識別データは、前記コードシンボル中の所定のセル群が表すデータであることを特徴とする光学式認識コードである。
【００３５】
（６）また、本発明は、上記（４）記載の光学式認識コードにおいて、前記グループを識別するグループ識別データは、前記コードシンボル中の所定のセル群に表された色彩パターンであることを特徴とする光学式認識コードである。
【００３６】
（７）また、本発明は、上記（４）記載の光学式認識コードにおいて、前記グループ内順識別データは、前記コードシンボル中の所定のセル群が表すデータであることを特徴とする光学式認識コードである。
【００３７】
（８）また、本発明は、上記（４）記載の光学式認識コードにおいて、前記グループ内順識別データは、前記コードシンボル中の所定のセル群に表された色彩パターンであることを特徴とする光学式認識コードである。
【００３８】
（９）また、本発明は、上記（１）又は（２）記載の光学式認識コードにおいて、前記各コードシンボルは、その端部の読み落としによる誤読を未然に防止するよう、左端及び右端に、端部識別用色彩配列を設け、前記端部識別用色彩配列は、その一部が欠けて読み取られた場合に、読み落としがあったことが判別しうることを特徴とする光学式認識コードである。
【００３９】
（１０）また、本発明は、上記（９）記載の光学式認識コードにおいて、前記各コードシンボルを構成するセル数がＮ又はＮ−１であり、前記各コードシンボルが使用する色彩が３色以上であり、前記各コードシンボルの一方端の端部に前記端部識別用色彩配列として第１の色彩のセルを配置し、他方端の端部に前記端部識別用色彩配列として第２の色彩のセルを配置したことを特徴とする光学式認識コードである。ここで、前記Ｎは自然数であり、前記第１の色彩と前記第２の色彩とは異なる色彩である。
【００４０】
（１１）また、本発明は、上記（９）記載の光学式認識コードにおいて、前記各コードシンボルを構成するセル数がＮ又はＮ−１であり、前記各コードシンボルが使用する色彩が３色以上であり、前記各コードシンボルの一方端に設けられた前記端部識別用色彩配列は、一方端部から順に、第１の色彩のセルと、第２の色彩のセルと、から構成され、前記各コードシンボルの他方端に設けられた前記端部識別用色彩配列は、他方端部から順に、第１の色彩のセルと、第３の色彩のセルと、から構成されていることを特徴とする光学式認識コードである。ここで、前記第１の色彩、第２の色彩、第３の色彩は互いに異なる色彩であり、前記Ｎは自然数である。
【００４１】
（１２）また、本発明は、上記（９）記載の光学式認識コードにおいて、前記各コードシンボルを構成するセル数がＮ以下、Ｎ−ｋ以上であり、前記各コードシンボルが使用する色彩が３色以上であり、前記各コードシンボルの一方端に設けられた前記端部識別用色彩配列は、一方端部から順に、第１の色彩のセルと、第１の繰り返しセル部と、から構成され、前記各コードシンボルの他方端に設けられた前記端部識別用色彩配列は、他方端部から順に、第２の色彩のセルと、第２の繰り返しセル部と、から構成され、前記第１の繰り返しセル部は、前記一方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第２の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であり、前記第２の繰り返しセル部は、前記他方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第１の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であることを特徴とする光学式認識コード。ここで、前記Ｎは自然数であり、前記ｋは、１以上Ｎ未満の整数である。
【００４２】
（１３）また、本発明は、上記（９）記載の光学式認識コードにおいて、前記各コードシンボルを構成するセル数がＮ以下、Ｎ−ｋ以上であり、前記各コードシンボルが使用する色彩が３色以上であり、前記各コードシンボルの一方端に設けられた前記端部識別用色彩配列は、一方端部から順に、第１の色彩のセルと、第１の繰り返しセル部と、から構成され、前記各コードシンボルの他方端に設けられた前記端部識別用色彩配列は、他方端部から順に、第１の色彩のセルと、第２の繰り返しセル部と、から構成され、前記第１の繰り返しセル部は、前記一方端部側から前記コードシンボルの内側に向かって、第２の色彩のセルと、第３の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であり、前記第２の繰り返しセル部は、前記他方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第２の色彩のセルとを交互に連結し、連結した合計セル数がｋ個であることを特徴とする光学式認識コード。ここで、前記Ｎは自然数であり、前記ｋは、１以上Ｎ未満の整数である。
【００４３】
（１４）また、本発明は、上記（１）〜（１３）記載の光学式認識コードが付された物品である。
【発明の効果】
【００４４】
以上述べたように、本発明によれば、複数のコードシンボルを用いて所定のデータを表すことができる。また、複数のコードシンボルのセル数に差がある場合でも、端部識別用色彩配列を設けることによって、読み取りの際に読み落とし（端部の欠け）があったことを検知することができ、誤読を防止することができる。
【００４５】
また、本発明は、異なるセル数のコードシンボルの混在を許容する状況において、コードシンボルの読み落とし（端部の欠け）が生じた場合を検知でき、誤読を防止することができる光学式認識コードが得られる。
【００４６】
また、これらのような光学式認識コードを付した物品によれば、複数のコードシンボルによって、所定のデータを表現することができる。
【００４７】
また、これらのような光学式認識コードを付した物品によれば、セル数の異なる複数のコードシンボルが混在していても、端部の読み落とし（欠け）をより効率的に把握することができ、誤読を防止することが可能である。
【発明を実施するための最良の形態】
【００４８】
以下、図面を参照して、本発明に係る１Ｄカラービットコードの切り出し手法の好適な実施の形態について詳細に説明する。
【００４９】
実施の形態１  複数のコードシンボルによる表現
図１には、あるデータを３分割して３つのコードシンボル２０ａ、２０ｂ、２０ｃに分けて表した例が示されている。この３個のコードシンボル（２０ａ、２０ｂ、２０ｃ）から成るグループで、所定のデータを表現している。
【００５０】
図１で示した例では、上記グループは、表したい「データ」の他に、そのグループを表すグループ識別データと、各コードシンボルが、そのグループ内の何番目のコードであるのかを示すグループ内順識別データと、を含むデータを表現している。
【００５１】
まず、３個のコードシンボル２０は、共通のグループ識別データを含んでいる。更に、３個のコードシンボルは、そのグループ内の何番目のコードであるのかを示すグループ内順識別データを含んでおり、これは各コード毎に異なる。
【００５２】
グループ識別データ
図１（１）に示す例では、グループ識別データは「００」である。コードシンボル中のデータの最初の２桁がこのグループ識別データを表す。図１に示すように、３個のコードシンボル中のグループ識別データはいずれも「００」である。尚、本実施の形態１では、グループ識別データとして番号を用いているので、グループ識別データをグループ番号と呼ぶ場合もある。
【００５３】
尚、グループ識別データとして、単なる数値以外のものを利用する例が下記実施の形態２に示されている。
【００５４】
グループ内順識別データ 
また、図１（１）に示す例では、グループ内順識別データは「００」、「０１」、「１０」であり、この数を表す色彩のパターンが、コードシンボル中に含まれている。
【００５５】
尚、本実施の形態１では、グループ内順識別データとして番号を用いているので、グループ識別データをグループ内番号と呼ぶ場合もある。
【００５６】
データ表現
図１（１）に示す例では、各コードシンボルは、グループ識別データ、グループ内番号順識別データ、表現したいデータ、を順に表している。表現したいデータは、上段のコードシンボルの場合、１０４８５７６（十進数）であり、その２進数表現が図１（１）に示されている。同様に、中段のコードシンボルが表現したいデータは、１（十進数）であり、その２進数表現が図１（１）に示されている。また、下段のコードシンボルが表現したいデータは、１３９８１０１（十進数）であり、その２進数表現が図１（１）に示されている。
【００５７】
結局図１（１）に示す例では、「１０４８５７６−１−１３９８１０１」というデータを表すことになる。
【００５８】
読み取り
図１（１）の場合、１Ｄカラービットコードの読み取りにおいては、これら３つのコードシンボルを同時に読み取ることは容易である。その理由は、１Ｄカラービットコードは、所定の領域を占めるものであるので、ＣＣＤカメラ等で所定の領域をキャプチャーして読み取る必要があるためである。所定の領域をキャプチャーするので、複数の１Ｄカラービットコードを取得することが原理的に容易となる。従来のいわゆるバーコードにおいては、一直線状であることを前提にしているので、所定の線上しかスキャンしない場合が多い。そのため、従来のバーコードにおいては複数個のバーコードを読み取ることは原理的に困難である。
【００５９】
したがって、元の表現したいデータ（を３分割したデータ）に加えて、グループを表すグループ識別データ、グループ内順識別データ、を付加することで、元の表現したいデータをが容易に復元できる。
【００６０】
このようにして、本実施の形態では、従来のステッチングとは異なり、一つのデータを表すコードシンボルを複数個に分割してマーキングする手法で一度に従来のステッチングと同様以上の効果を得ることが可能である。
【００６１】
他の例
図１（２）には、別の例が示されている。この例では、データは、コードシンボル３０ａ、３０ｂ、３０ｃに分けられて記録される。この図１（２）で示す例は、グループ識別データが「１０」である点、表したいデータが「１８８７４３６−５２４３５１−６３」というデータである点、が図１（１）と異なる。それ以外は図１（１）と同様である。
【００６２】
実施の形態２  複数のコードシンボルによる表現（その２）
グループ識別データ、グループ内順識別データ、は数値データとして与える以外に、色彩のパターンとして与えることも好適である。そのような例が図２、図３に示されている。
【００６３】
図２には、図１と同様に、あるデータを３分割して３つのコードシンボル４０ａ、４０ｂ、４０ｃに分けて表した例が示されている。この３個のコードシンボル（４０ａ、４０ｂ、４０ｃ）から成るグループで、所定のデータを表現している。
【００６４】
図２で示した例では、グループ識別データと、グループ内順識別データと、を色彩配列パターンで表している。
【００６５】
グループ識別データ
図２に示す例では、グループ識別データは「ＹＣＭ」である。ここでは、色彩そのものをグループ識別データとして利用しており、コードシンボル中のグループパターン部４２がこれを表す。図２（１）の例では、グループ識別データが「ＹＣＭ」であるので、グループパターン部４２に、その色彩通りに「ＹＣＭ」が付されている。これは、３個のコードシンボル４０ａ、４０ｂ、４０ｃ全てがそのパターンが設定されている。
【００６６】
グループ内順識別データ
また、図２（１）に示す例では、グループ内順識別データは「ＹＭＹ」、「ＭＹＭ」、「ＭＣＭ」であり、このようなグループ内部の順番を示す色彩のパターンが、コードシンボル中のグループ内順表示パターン部４４に付されている。
【００６７】
この図２のような構成のグループ内順識別データを採用する場合は、順番を予め色彩で表現しておくおく必要がある。
【００６８】
データ表現
図２（１）に示す例では、各コードシンボルは、グループ識別データを表すグループパターン、表現したいデータ、グループ内番号順識別データ、を順に表している。表現したいデータは、上段のコードシンボル４０ａの場合、１０４８５７６（十進数）であり、その２進数表現が図２（１）に示されている。同様に、中段のコードシンボル４０ｂが表現したいデータは、１（十進数）であり、その２進数表現が図２（１）に示されている。また、下段のコードシンボル４０ｃが表現したいデータは、１３９８１０１（十進数）であり、その２進数表現が図２（１）に示されている。
【００６９】
結局図２（１）に示す例では、「１０４８５７６−１−１３９８１０１」というデータを表すことになる。
【００７０】
他の例
（ａ）
図２（２）には、別の例が示されている。この例では、データは、コードシンボル５０ａ、５０ｂ、５０ｃに分けられて記録される。この図２（２）で示す例は、グループ識別データが「ＭＣＹ」である点、表したいデータが「１８８７４３６−５２４３５１−６３」というデータである点、のみが図２（１）と異なる。それ以外は、同様である。
【００７１】
（ｂ）
図３に示す例では、データは、コードシンボル６０ａ、６０ｂ、６０ｃに分けられて記録される。また、図３の例では、グループ識別データや、グループ内順識別データを、色彩のパターンで表現している点で、上記図２の例と共通する。また、この図３で示す例は、表したいデータが「１８８７４３６−５２４３５１−６３」というデータであり、この点も、図２の例と同様である。
【００７２】
図３に示す例が、図２の例と異なる点は、グループ内順識別データの「位置」である。図３に示した例では、グループ内順識別データは、グループ内順表示パターン部６２に記述され、これはコードシンボル６０のおよそ中央の近傍に存在している。
【００７３】
この図３の例から容易に理解されるように、要するに、グループ内順識別データやグループ識別データは、予め決めてさえおけば、どこに配置されていてもかまわない。
【００７４】
実施の形態３  誤読防止
以上述べてきたい各例（図１〜図３）の場合、これら複数のコードシンボルが存在しているとして、読み取り処理を行う。上述したように、本実施の形態のいわゆる１Ｄカラービットコードにおいては、コードシンボル中のセル数が規定されていないコードも利用することができる。それは、開始点と終了点とがある特定のパターンで指定されており、そのある特定のパターンが検出された場合に、それぞれ、開始地点、終了地点であると認定する（認識・判断）するのである。
【００７５】
このように、コードシンボルのセル数が予め規定されていない場合、コードシンボルの端が例えばＣＣＤカメラの視野の関係等で切れてキャプチャーできなかった時に、残った部分が別のデータを表してしまう可能性（誤読）が高い。
【００７６】
実施の形態３ａ：シンボルコードのセル数の制限
そこで、本実施の形態においては、コードシンボルのセル数に制限を設けて、誤読を防止することを提案する。
【００７７】
最も厳しい制限は、全てのコードシンボルのセル数が等しいという制約条件である。このような制限を設けることで無用に冗長なチェックセルを設けることを避けることが可能である。チェックセルは、データを表すセルではなく、エラーチェックのためのセルであり、パリティやＣＲＣなど従来から知られている技術によるチェックセルが考えられる。
【００７８】
すなわち、全てのシンボル長が等しいので画像視野に入りきらなかったり、障害物に隠れたり、その他の要因で端部の一部がキャプチャーできなかったものは全てセル数が足りないと認識されるので、（チェックセル等が無くても）誤読を未然に防止することが可能である。
【００７９】
尚、上述した図２〜図３の例は、「全てのコードシンボルのシンボル長（セル数）が等しい」という制限が課された例であり、それぞれの３個のコードシンボルのセル数が等しい。
【００８０】
実施の形態３ｂ：端点条件の検査
上述した「全てのコードシンボルのシンボル長（セル数）が等しい」という制限は、実際に運用する場合は厳しすぎる条件となる場合がある。
【００８１】
そこで、実際の運用面での使用条件を緩和するために、セル数Ｎ個のコードシンボルとセル数Ｎ−１個のコードシンボルの混在を許すことも好適である。ここで、Ｎは自然数である。
【００８２】
このような若干緩い制限を設けた場合、セル数Ｎ−１個のコードシンボルについては端部がキャプチャーできない場合、セル数条件でデコードに規制がかかり誤読のおそれがない。ところが、この例では、セル数Ｎ個のコードシンボルは端部の一つのセルがキャプチャーできなくてもＮ−１個のセル数を許しているためセル数条件のデコード規制は逃れることができるため、誤読のおそれが出てくる。
【００８３】
そこで、本実施の形態３ｂでは、セル数条件だけでなく、端点条件の面から、誤読を検知することを検討する。
【００８４】
図４のように、左端の端点セルの色彩がＹ、右端の端点セルの色彩がＣであるとの端点条件を定める。この場合の誤読の検出について検討する。尚、本特許では、「左端」、「右端」と呼ぶが、これは「始点」、「終点」と読み替えても実質的に等価である。
【００８５】
図４においては、太枠で記述されたセルが端点のセルである。図４（１）−（４）は、正しい１Ｄカラービットコードの例である。
【００８６】
図４（１）は、セル数がＮ個の場合を示す。左端のＹセルの隣接セルがＭである例を示す。図４（２）は、（１）と同様セル数がＮ個の場合であるが、左端のＹセルの隣接セルがＣである例を示す。
【００８７】
図４（３）は、セル数がＮ−１個の場合を示す。左端のＹセルの隣接セルがＭである例を示す。図４（４）は、（３）と同様セル数がＮ−１個の場合であるが、左端のＹセルの隣接セルがＣである例を示す。
【００８８】
図４（５）−（８）には、読み取りの際、端部に欠けが生じた場合の様子が示されており、それぞれ、図４（１）−（４）に相当する。
【００８９】
図４（５）は、図４（１）の１Ｄカラービットコードにおいて、左端が１セル（Ｙセル）欠けて読み取ってしまった場合の様子が示されている。この場合は、明らかに端点条件（左端がＹで、右端がＣであるという条件）を満たさない（左端がＹセルではない）ので、誤読が生じたということを検知可能である。これは、左右逆に読み取ってしまった場合も、同様に端点条件は満たさないので、いずれにしても、誤読を検出可能である。
【００９０】
図４（６）は、図４（２）の１Ｄカラービットコードにおいて、左端が１セル（Ｙセル）欠けて読み取ってしまった場合の様子が示されている。この場合も、明らかに端点条件（左端がＹで、右端がＣであるという条件）を満たさない（左端がＹセルではない）ので、誤読が生じたということを検知可能である。これは、左右逆に読み取ってしまった場合も、同様に端点条件は満たさないので、いずれにしても、誤読を検出可能である。
【００９１】
図４（７）は、図４（１）の１Ｄカラービットコードにおいて、右端が１セル（Ｃセル）欠けて読み取ってしまった場合の様子が示されている。この場合も、端点条件を満たさない（右端がＣセルではない）ので、誤読が生じたということを検知可能である。これは左右反転しても同様に満たさず、誤読が生じたということを検知可能である。
【００９２】
図４（８）は、図４（２）の１Ｄカラービットコードにおいて、右端が１セル（Ｃセル）欠けて読み取ってしまった場合の様子が示されている。この場合も、端点条件を満たさない（右端がＣセルではない）ので、誤読が生じたということを検知可能である。これは左右反転しても同様に満たさず、誤読が生じたということを検知可能である。
【００９３】
さて、１Ｄカラービットコードにおいての端部セル配列は、その条件として左端と右端が必ず異なることが必要である。これは始点と終点との区別を付けるためである。したがって、図４に示すようにＮ個のセルの端部一つがキャプチャーできない場合には、本来の端部セルの条件（端点条件とも呼ぶ）（この例ではＹとＣ、左右反転も許されないという条件）に必ず反する。すなわち、誤読を検出することが可能である。
【００９４】
このように、端点条件も加味することによって（例えば、図４の様な端部セル配列を採用することによって）、セル数Ｎ個のコードシンボルセル数と、Ｎ−１個のコードシンボルが混在しても、端部欠けによる誤読を未然に防ぐことができる。
【００９５】
Ｎ個のセルのコードシンボルと、Ｎ−２個のコードシンボルとの共存
更に、Ｎ個のセルから成るコードシンボルと、Ｎ−２個のセルから成るコードシンボルとの共存を許す場合の誤読の検出について検討した結果が、図５に示されている。
【００９６】
図５に示す例の端点条件は、左端がＹＭＣ（Ｙセルが左端）、右端がＹＭＣ（Ｃセルが右端）というものである。
【００９７】
この端点条件の場合、端部の配列条件は上述したＮ個とＮ−１個の場合の条件を包含している。
【００９８】
すなわち、
図４の条件  左端：Ｙ              右端：    Ｃ
図５の条件  左端：ＹＭＣ          右端：ＹＭＣ
のように、左端の１セル、右端の１セルだけを見れば、図５の例は図４と同様である。
【００９９】
したがって、図５の例でも、図４と同様にＮ個とＮ−１個混在の場合の誤読、左右反転が未然に防げることはまったく同様である。
【０１００】
図５に示したケースでは、図４で示した例に加えて、更にコードシンボルの内側方向に端点条件を伸展させた形になっていることが理解できよう。すなわち、左端では、Ｙセルに加えて、コードシンボルの内側方向にＭセルとＣセルが付加され、右端では、Ｃセルに加えて、コードシンボルの内側方向にＹＭセルが付加されている。
【０１０１】
このような端点条件を採用すれば、図５で示すように、端部のどれか２つのセルが欠けたいずれの場合においても端部セル配列が、元の配列と必ず異なる。
【０１０２】
図５（３）は、図３（１）の例の左端のＹセル及び右端のＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１０３】
図５（４）は、図３（１）の例の左端のＹＭセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１０４】
図５（５）は、図３（１）の例の右端のＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１０５】
したがって、Ｎ個のコードシンボルに２個の欠けが生じた場合、必ずそのことを検知でき、誤読を防止できる。
【０１０６】
Ｎ個又はＮ−１個のコードシンボルに対して１個の欠けが生じた場合は、図４で示した通り、誤読を防止できる。
【０１０７】
Ｎ−１個のコードシンボルに２個以上の欠けが生じた場合は、セル数が規定の要件を満たさず、欠けが生じたことを検知でき、誤読を防止できる。
【０１０８】
よって、図５に示すような端部セル配列によって（端点条件を採用することによって）、Ｎ個からＮ−２個までのセル数のコードシンボルの混在（自由度）を許容することができる。
【０１０９】
Ｎ個のセルのコードシンボルとＮ−３個のコードシンボルとの共存
更に図６では、Ｎ個のセルのコードシンボルとＮ−３個のコードシンボルとの共存の例が示されている。
【０１１０】
図６に示す示す例の端点条件は、左端がＹＭＣＭ（Ｙセルが左端）、右端がＭＹＭＣ（Ｃセルが右端）というものである。
【０１１１】
この端点条件の場合、端部の配列条件は上述したＮ個とＮ−１個の場合の条件（図４の条件）、及び、Ｎ個とＮ−２個の場合の条件（図５の条件）を包含している。
【０１１２】
すなわち、
図４の条件  左端：Ｙ              右端：      Ｃ
図５の条件  左端：ＹＭＣ          右端：  ＹＭＣ
図６の条件  左端：ＹＭＣＭ        右端：ＭＹＭＣ
このように、左端の３セル、右端の３セルだけを見れば、図６の例は、図５・図４と同様である。
【０１１３】
したがって、Ｎ個とＮ−１個混在の場合の誤読、左右反転が未然に防止でき、また、Ｎ個とＮ−２個混在の場合の誤読、左右反転も未然に防止できることはまったく同様である。
【０１１４】
図６に示したケースでは、図４、図５で示した例に加えて、更にコードシンボルの内側方向に端点条件を伸展させた形になっていることが理解できよう。すなわち、左端では、Ｙセルに加えて、コードシンボルの内側方向にＭセルとＣセルが付加され、更にＭセルが付加されている。
【０１１５】
そして、右端では、Ｃセルに加えて、コードシンボルの内側方向にＹＭセルが付加され、更にＭセルが付加されている。
【０１１６】
このような端点条件を採用すれば、図６で示すように、端部のどれか３つのセルが欠けたいずれの場合においても端部セル配列が、元の配列と必ず異なる。
【０１１７】
図６（３）は、図６（１）の例の左端のＹＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１１８】
図６（４）は、図６（１）の例の左端のＹＭセル及び右端のＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１１９】
図６（５）は、図６（１）の例の左端のＹセル及び右端のＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１２０】
図６（６）は、図６（１）の例の右端のＹＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１２１】
したがって、Ｎ個のコードシンボルに３個の欠けが生じた場合、必ずそのことを検知でき、誤読を防止できる
一方、２個のセルが欠けた場合、１個のセルが欠けた場合は、図４、図５で説明したように欠けが生じたことを検知でき、誤読を防止できる。
【０１２２】
よって、図６に示すような端部セル配列によって（端点条件を採用することによって）、Ｎ個からＮ−３個までのセル数のコードシンボルの混在（自由度）を許容することができる。
【０１２３】
Ｎ個のセルのコードシンボルとＮ−４個のコードシンボルとの共存
また更に、図７ではＮ個のセルのコードシンボルとＮ−４個のコードシンボルとの共存の例が示されている。
【０１２４】
図７に示す示す例の端点条件は、左端がＹＭＣＭＣ（Ｙセルが左端）、右端がＹＭＹＭＣ（Ｃセルが右端）というものである。
【０１２５】
この端点条件の場合、端部の配列条件は上述したＮ個とＮ−１個の場合の条件（図４の条件）、及び、Ｎ個とＮ−２個の場合の条件（図５の条件）、及び、Ｎ個とＮ−３個の場合の条件（図６の条件）とを包含している。
【０１２６】
すなわち、
図４の条件  左端：Ｙ              右端：        Ｃ
図５の条件  左端：ＹＭＣ          右端：    ＹＭＣ
図６の条件  左端：ＹＭＣＭ        右端：  ＭＹＭＣ
図７の条件  左端：ＹＭＣＭＣ      右端：ＹＭＹＭＣ
このように、左端の１セル、右端の１セルだけを見れば、図７の例は、図４と同様である。また、同様に、図７は、図５や図８の条件をも包含している。
【０１２７】
したがって、Ｎ個とＮ−１個混在の場合の誤読、左右反転が未然に防止でき、また、Ｎ個とＮ−２個混在の場合の誤読、左右反転も未然に防止できる。同様に、Ｎ個とＮ−３個混在の場合の誤読、左右反転も未然に防止できる。
【０１２８】
図７に示したケースでは、図４、図５、図６で示した例に加えて、更にコードシンボルの内側方向に端点条件を伸展させた形になっていることが理解できよう。すなわち、左端では、Ｙセルに加えて、コードシンボルの内側方向にＭセル・Ｃセルが付加され、更にまたＭセル・Ｃセルが付加されている。
【０１２９】
そして、右端では、Ｃセルに加えて、コードシンボルの内側方向にＭセル・Ｙセルが付加され、更にＭセルが付加され、更に再びＹセルが付加されている。
【０１３０】
図７（１）には、上記の端点条件を満たすＮセルのコードシンボルが示されている。また、図７（２）には、上記の端点条件を満たすＮ−４セルのコードシンボルが示されている。
【０１３１】
このような端点条件を採用すれば、図７で示すように、端部のどれか４つのセルが欠けたいずれの場合においても端部セル配列が、元の配列と必ず異なる。
【０１３２】
図７（３）は、図７（１）の例の左端のＹＭＣＭセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１３３】
図７（４）は、図７（１）の例の左端のＹＭＣセル及び右端のＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１３４】
図７（５）は、図７（１）の例の左端のＹＭセル及び右端のＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１３５】
図７（６）は、図７（１）の例の左端のＹセル及び右端のＹＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１３６】
図７（７）は、図７（１）の例の右端のＭＹＭＣセルが欠けており、左右反転の場合も含めて、明らかに上記端点条件を満たさない。
【０１３７】
よって、図７に示すような端部セル配列によって（端点条件を採用することによって）、Ｎ個からＮ−４個までのセル数のコードシンボルの混在（自由度）を許容することができる。
【０１３８】
まとめ１
図４から帰納法的に明確なように、
３つの色彩で配列されたＮ個又はＮ−１個のコードシンボルの両端に端部識別用色彩配列が添加された１Ｄカラービットコード（特願２００６−１９６７０５）において、左端、右端に、端部識別用色彩配列を置くことによって、端部が欠けていることを認識するには、端部識別用色彩配列として以下のような配列を用いればよい。
【０１３９】
すなわち、左端の配列として、第１色、右端の配列として、第２色、を配置すればよい。ここで、第１色と第２色とは異なる色彩である。
【０１４０】
ここで、左端、又は、右端のいずれか一方が１セルでも欠ければ、必ず、上記の端点条件が満たされないことは明らかである。これは、１Ｄカラービットコードにおいては、隣接するセルは必ず異なる色彩が付されるからである。
【０１４１】
左端が１セルでも欠ければ、もはや第１色がいずれかの（左か右かの）端点セルとして表れることはないので（左右を交換した場合を考慮しても）明らかに端点条件を満たさない。同様に、右端が１セルでも欠ければ、もはや第２色がいずれかの（左か右かの）端点セルとして表れることはないので（左右を交換した場合を考慮しても）明らかに端点条件を満たさない。したがって、いずれか１セルが欠けることによって端点条件が満たされないので、誤読を的確に検出することができる。
【０１４２】
尚、図４の場合は、端部が２個以上欠ければ、セル数が異なってくるので、セル数の点から、欠けたことを判断できる。図４の場合は、Ｎ個のセルからなるコードシンボルの端部が１個欠けた場合を端点条件の観点から「端部欠け」であると認識できれば、誤読を防止することが可能である。
【０１４３】
まとめ２
図５、図６、図７から帰納法的に明確なように、以下のような端部識別用色彩配列を左右に設けることによって、読み取りの際にセルの欠けが生じたことを検出することが可能である。
【０１４４】
このような端部識別用配列は、具体的には以下のようなステップ（処理）で作成される。
【０１４５】
（第１ステップ）まず、左端、右端にそれぞれ第１色、第２色を配置し、初期の端部識別用配列を構成させる。すなわち、左端の端部識別用配列の初期の配列は、第１色のセル１個であり、右端の端部識別用配列の初期の配列は、第２色のセル１個である。以下、下記の処理によって、端部識別用配列には順次セルが加えられる。
【０１４６】
（第２ステップ）Ｎ個から、Ｎ−ｋ個までのセル数のコードシンボルの混在を許す場合は、以下の処理（左端側処理と右端側処理）をｋ回繰り返す。ここで、ｋは、２以上の整数である。
【０１４７】
（コードシンボルの左端側処理）
コードシンボルの左端において、端部識別用配列の右端、すなわちコードシンボルの内側方向に向かう側のセルが、第１色又は第３色であれば、新たに、第２色のセルを置く。すなわち、端部識別用配列の右端に、第２色のセル１個が加えられる。
【０１４８】
一方、コードシンボルの左端において、端部識別用配列の右端、すなわちコードシンボルの内側方向に向かう側のセルが、第２色であれば、新たに、第３色のセルを置く。すなわち、端部識別用配列の右端に、第３色のセル１個が加えられる。
【０１４９】
（コードシンボルの右端側処理）
コードシンボルの右端において、端部識別用配列の左端、すなわちコードシンボルの内側方向に向かう側のセルが、第２色又は第３色であれば、新たに、第１色のセルを置く。すなわち、端部識別用配列の左端に、第１色のセル１個が加えられる。
【０１５０】
一方、コードシンボルの右端において、端部識別用配列の右端、すなわちコードシンボルの内側方向に向かう側のセルが、第１色であれば、新たに、第３色のセルを置く。すなわち、端部識別用配列の左端に、第３色のセル１個が加えられる。
【０１５１】
このような処理によって、コードシンボルの左端においては、端部セルのみが第１色であり、コードシンボルの内側に向かって、第３色：第２色：第３色：第２色が繰り返し配置される。一方、コードシンボルの右端においては、端部セルのみが第２色であり、コードシンボルの内側に向かって、第３色：第１色：第３色：第１色が繰り返し配置される。
【０１５２】
より正確に記述すると、上記のような処理で生成される端部識別用色彩配列は、以下のようになる。
【０１５３】
コードシンボルを構成するセル数がＮ以下〜Ｎ−ｋ以上である場合に、誤読を防止するための端部識別用色彩配列は、利用する色彩が３色の場合、以下の通りである。
【０１５４】
左端側端部識別用色彩配列：
第１の色彩のセル＋第１の繰り返しセル部と、から構成される。ここで、左端の端点セルは、第１の色彩のセルである。
【０１５５】
右端側端部識別用色彩配列：
第２の繰り返しセル部＋第２の色彩のセルと、から構成される。ここで、左端の端点セルは、第２の色彩のセルである。
【０１５６】
そして、前記第１の繰り返しセル部は、前記左端側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第２の色彩のセルとを交互に連結して構成され、その連結した合計セル数がｋ個である。
【０１５７】
また、前記第２の繰り返しセル部は、前記右端側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第１の色彩のセルとを交互に連結し、連結した合計セル数がｋ個である。
【０１５８】
尚、ここで、前記Ｎは自然数であり、前記ｋは、１以上Ｎ未満の整数である。
【０１５９】
さて、図５（ｋ＝２）、図６（ｋ＝３）、図７（ｋ＝４）の場合を模式的に表せば、以下の通りとなる。
【０１６０】
図５  左端：ＹＭＣ            右端：    ＹＭＣ
図６  左端：ＹＭＣＭ          右端：  ＭＹＭＣ
図７  左端：ＹＭＣＭＣ        右端：ＹＭＹＭＣ
すなわち、図５〜図７の例では、第１色がＹ、第２色がＣ、そして第３色がＭである。これらの例では、第１の色彩がＹ、第２の色彩がＣ、第３の色彩がＭの場合の例である。ここでは、このような組み合わせを示したが、もちろん他の組み合わせ、他の色でもかまわない。
【０１６１】
さて、このような「まとめ２」で示した端部識別用色彩配列を用いれば、Ｎ個からＮ−ｋ個までのセル数のコードシンボルを混在させる場合に、Ｎ個のセルから成るコードシンボルにｋ個のセルの欠けが生じた場合を検出することができる。
【０１６２】
ｋ個のセルの欠け 
まず、左端でｋ個のセルが欠けた場合は、第１色が端部に表れないので、明らかに端点条件を満たさず、「欠け」が生じたことを検知することができる。上の説明から明らかなように、左端でセルがｋ個欠けた場合は、左端のセルは、第２色又は第３色になり、一方、右端は第２色のセルのままである。したがって、明らかに端点条件を満たさない。
【０１６３】
次に、右端でｋ個のセルが欠けた場合は、第２色が端部に表れないので、この場合も、明らかに端点条件を満たさず、「欠け」が生じたことを検知することができる。上の説明から明らかなように、右端でセルがｋ個欠けた場合は、右端のセルは、第１色又は第３色になり、一方、左端は第１色のセルのままである。したがって、明らかに端点条件を満たさない。
【０１６４】
次に、左端において１個以上のセルが欠け、右端において１個以上のセルが欠け、合計ｋ個のセルが欠けた場合は、右端にも左端にも第１色のセルが表れない。その結果、明らかに端点条件を満たさず、何らかのセルの欠けが生じ誤読が生じていることが検知できる。
【０１６５】
１個からｋ−１個までのセルの欠け
本実施の形態で提案する端部識別用色彩配列は、帰納的に構成されており、あるｋの場合の配列は、ｋ−１の配列を包含するので、当然に、ｋ−１個のセルの欠けも検知することができる。また、このｋ−１の配列もまたｋ−２個の配列を包含するので、当然にｋ−２個の欠けも検知することができる。以下、同様にして、１個からｋ−１個までのセルの欠けが全て検知可能である。
【０１６６】
帰納的な説明をすれば以上の通りであるが、直感的には、左端で１個以上のセルの欠けが生じ、右端で１個以上の欠けが生じ、その合計がｋ個以下であれば、明らかに端部に第１色のセルが表れず、端点条件を満たさないことは明白である。その結果、誤読が生じ、セルの欠けが生じたことを検知することができる、と理解しても良いであろう。
【０１６７】
実施の形態４  他の種類の実施例（誤読防止その２）
尚、実施の形態３で述べた手法の他の実施例を種々挙げる。
【０１６８】
「他の実施例１」
図８には、端点条件を
左端：ＹＭ（Ｙセルが左端）      右端：ＣＹ（Ｙセルが右端）
とした例が示されている。この例は、図４と同様に、Ｎ個のコードシンボルとＮ−１個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに１個の欠けが生じた場合を検知可能な端点条件を提案する（端部識別用配列を提案する）ものである。
【０１６９】
この図８によれば、セルの欠けが生じない場合は、両端のセルはＹセルであるが、１個のセルの欠けが左右のいずれかに生じれば、左右の少なくともいずれか一方のセルはＹではなくなり、両端のセルがＹであるという上記端点条件を満たさなくなることは明らかである。
【０１７０】
図８（１）には、上記端点条件を満たすＮセルから成るコードシンボルが示されている。また、図８（２）には、上記端点条件を満たすＮ−１セルから成るコードシンボルが示されている。
【０１７１】
また、図８（３）には、Ｎセルから成るコードシンボルの左側の１セルが欠けてＮ−１セルとなったコードシンボルが示されている。そして、図８（４）には、Ｎセルから成るコードシンボルの右側の１セルが欠けてＮ−１セルとなったコードシンボルが示されている。
【０１７２】
この図８（３）及び（４）から明らかなように、１セル欠けた場合は、左右反転した場合も含めて上記端点条件を満たさない。
【０１７３】
したがって、図８に示す端部識別用配列を用いれば、Ｎ個のコードシンボルとＮ−１個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに１個の欠けが生じた場合を検知可能である。
【０１７４】
図８の例を一般化すれば、以下のように記述することが可能である。すなわち、
左端：第１色、第３色、      右端  第２色、第１色  （いずれも第１色が端部セル）
図８の例では、第１色としてＹ、第２色としてＣ、第３色としてＭの例を示したが、他の色を割り当てたり、他の色の組み合わせを利用することももちろん好適である。
【０１７５】
「他の実施例２」
図９には、端点条件を
左端：ＹＭＣ（Ｙセルが左端）      右端：ＭＣＹ（Ｙセルが右端）
とした例が示されている。この例は、図５と同様に、Ｎ個のコードシンボルとＮ−２個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに２個の欠けが生じた場合を検知可能な端点条件を提案する（端部識別用配列を提案する）ものである。
【０１７６】
これまで述べた端部識別用配列と同様に、図９の例は、図８の例の端部識別用配列の内側方向にセルを１個ずつ加えた構成を採用している。加えるセルは左右それぞれ１個である。
【０１７７】
図９（１）には、Ｎ個のセルから成るコードシンボルに端部識別用配列を設けた例が示されており、図９（２）には、Ｎ−１個のセルから成るコードシンボルに端部識別用配列を設けた例が示されている。
【０１７８】
図９（３）（４）（５）には、Ｎ個のセルから成るコードシンボルに２個のセルの欠けが生じたい場合の様子が示されている。それぞれ、左右１セルずつ欠けた場合、左が２セル欠けた場合、右が２セル欠けた場合である。
【０１７９】
この図９によれば、セルの欠けが生じない場合は、両端のセルはＹセルであるが、図９（３）（４）（５）に示すように２個のセルの欠けが左右のいずれかに生じれば、左右の少なくともいずれか一方のセルはＹではなくなり、両端のセルがＹであるという上記端点条件を満たさなくなることは明らかである。
【０１８０】
したがって、図９に示す端部識別用配列を用いれば、Ｎ個のコードシンボルとＮ−２個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに２個の欠けが生じた場合を検知可能である。
【０１８１】
図９の例を一般化すれば、以下のように記述することが可能である。すなわち、
左端：第１色、第３色、第２色      右端  第３色、第２色、第１色  
（いずれも第１色が端部セル）
図９の例では、第１色としてＹ、第２色としてＣ、第３色としてＭの例を示したが、他の色を割り当てたり、他の色の組み合わせを利用することももちろん好適である。
【０１８２】
「他の実施例３」
図１０には、端点条件を
左端：ＹＭＣＭ（Ｙセルが左端）      右端：ＣＭＣＹ（Ｙセルが右端）
とした例が示されている。この例は、図６と同様に、Ｎ個のコードシンボルとＮ−３個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに３個の欠けが生じた場合を検知可能な端点条件を提案する（端部識別用配列を提案する）ものである。
【０１８３】
これまで述べた端部識別用配列と同様に、図１０の例は、図９の例の端部識別用配列の内側方向にセルを１個ずつ加えた構成を採用している。加えるセルは左右それぞれ１個である。
【０１８４】
図１０（１）には、Ｎ個のセルから成るコードシンボルに端部識別用配列を設けた例が示されており、図１０（２）には、Ｎ−３個のセルから成るコードシンボルに端部識別用配列を設けた例が示されている。
【０１８５】
図１０（３）（４）（５）（６）には、Ｎ個のセルから成るコードシンボルに３個のセルの欠けが生じたい場合の様子が示されている。順に、右端で３セル欠けた場合。右端で２セル左端で１セル欠けた場合、右端で１セル左端で２セル欠けた場合、左端で３セル欠けた場合、である。
【０１８６】
この図１０によれば、セルの欠けが生じない場合は、両端のセルはＹセルであるが、図１０（３）（４）（５）（６）に示すように合計３個のセルの欠けが左端・右端で生じた場合、左右の少なくともいずれか一方のセルはＹではなくなり、両端のセルがＹであるという上記端点条件を満たさなくなることは明らかである。
【０１８７】
したがって、図１０に示す端部識別用配列を用いれば、Ｎ個のコードシンボルとＮ−３個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに３個の欠けが生じた場合を検知可能である。
【０１８８】
図１０の例を一般化すれば、以下のように記述することが可能である。すなわち、
左端：第１色、第３色、第２色、第３色（第１色が端部セル）
右端：第２色、第３色、第２色、第１色（第１色が端部セル）
図１０の例では、第１色としてＹ、第２色としてＣ、第３色としてＭの例を示したが、他の色を割り当てたり、他の色の組み合わせを利用することももちろん好適である。
【０１８９】
「他の実施例４」
図１１には、端点条件を
左端：ＹＭＣＭＣ（Ｙセルが左端）      右端：ＭＣＭＣＹ（Ｙセルが右端）
とした例が示されている。この例は、図７と同様に、Ｎ個のコードシンボルとＮ−４個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに４個の欠けが生じた場合を検知可能な端点条件を提案する（端部識別用配列を提案する）ものである。
【０１９０】
これまで述べた端部識別用配列と同様に、図１１の例は、図１０の例の端部識別用配列の内側方向にセルを１個ずつ加えた構成を採用している。加えるセルは左右それぞれ１個である。
【０１９１】
図１１（１）には、Ｎ個のセルから成るコードシンボルに端部識別用配列を設けた例が示されており、図１１（２）には、Ｎ−４個のセルから成るコードシンボルに端部識別用配列を設けた例が示されている。
【０１９２】
図１１（３）（４）（５）（６）（７）には、Ｎ個のセルから成るコードシンボルに４個のセルの欠けが生じたい場合の様子が示されている。順に、右端で４セル欠けた場合、右端で３セル左端で１セル欠けた場合、右端で２セル左端で２セル欠けた場合、右端で１セル左端で３セル欠けた場合、左端で４セル欠けた場合、である。
【０１９３】
この図１１によれば、セルの欠けが生じない場合は、両端のセルはＹセルであるが、図１１（３）（４）（５）（６）（７）に示すように合計４個のセルの欠けが左端・右端で生じた場合、左右の少なくともいずれか一方のセルはＹではなくなり、両端のセルがＹであるという上記端点条件を満たさなくなることは明らかである。
【０１９４】
したがって、図１１に示す端部識別用配列を用いれば、Ｎ個のコードシンボルとＮ−４個のコードシンボルとの混在が許された状況下で、Ｎ個のセルのコードシンボルに４個の欠けが生じた場合を検知可能である。
【０１９５】
図１１の例を一般化すれば、以下のように記述することが可能である。すなわち、
左端：第１色、第３色、第２色、第３色、第２色（第１色が端部セル）
右端：第３色、第２色、第３色、第２色、第１色（第１色が端部セル）
図１１の例では、第１色としてＹ、第２色としてＣ、第３色としてＭの例を示したが、他の色を割り当てたり、他の色の組み合わせを利用することももちろん好適である。
【０１９６】
まとめ３
図８、図９、図１０、図１１から帰納法的に明確なように、以下のような端部識別用色彩配列を左右に設けることによって、読み取りの際にセルの欠けが生じたことを検出することが可能である。
【０１９７】
このような端部識別用配列は、具体的には以下のようなステップ（処理）で作成される。
【０１９８】
（第１ステップ）まず、左端、右端にそれぞれ第１色を配置し、初期の端部識別用配列を構成させる。すなわち、左端の端部識別用配列の初期の配列は、第１色のセル１個であり、右端の端部識別用配列の初期の配列も、第１色のセル１個である。以下、下記の処理によって、端部識別用配列には順次セルが加えられる。
【０１９９】
（第２ステップ）Ｎ個から、Ｎ−ｋ個までのセル数のコードシンボルの混在を許す場合は、以下の処理（左端側処理と右端側処理）をｋ回繰り返す。ここで、ｋは、１以上の整数である。
【０２００】
（コードシンボルの左端側処理）
コードシンボルの左端において、端部識別用配列の右端、すなわちコードシンボルの内側方向に向かう側のセルが、第１色又は第３色であれば、新たに、第２色のセルを置く。すなわち、端部識別用配列の右端に、第２色のセル１個が加えられる。
【０２０１】
一方、コードシンボルの左端において、端部識別用配列の右端、すなわちコードシンボルの内側方向に向かう側のセルが、第２色であれば、新たに、第３色のセルを置く。すなわち、端部識別用配列の右端に、第３色のセル１個が加えられる。
【０２０２】
（コードシンボルの右端側処理）
コードシンボルの右端において、端部識別用配列の左端、すなわちコードシンボルの内側方向に向かう側のセルが、第１色又は第２色であれば、新たに、第３色のセルを置く。すなわち、端部識別用配列の左端に、第３色のセル１個が加えられる。
【０２０３】
一方、コードシンボルの右端において、端部識別用配列の右端、すなわちコードシンボルの内側方向に向かう側のセルが、第３色であれば、新たに、第２色のセルを置く。すなわち、端部識別用配列の左端に、第２色のセル１個が加えられる。
【０２０４】
このような処理によって、コードシンボルの左端においては、端部セルのみが第１色であり、コードシンボルの内側に向かって、第２色：第３色：第２色：第３色が繰り返し配置される。一方、コードシンボルの右端においては、端部セルのみが第１色であり、コードシンボルの内側に向かって、第３色：第１色：第３色：第１色が繰り返し配置される。
【０２０５】
より正確に記述すると、上記のような処理で生成される端部識別用色彩配列は、以下のようになる。
【０２０６】
コードシンボルを構成するセル数がＮ以下〜Ｎ−ｋ以上である場合に、誤読を防止するための端部識別用色彩配列は、利用する色彩が３色の場合、以下の通りである。
【０２０７】
左端側端部識別用色彩配列：
第１の色彩のセル＋第１の繰り返しセル部と、から構成される。ここで、左端の端点セルは、第１の色彩のセルである。
【０２０８】
右端側端部識別用色彩配列：
第２の繰り返しセル部＋第１の色彩のセルと、から構成される。ここで、左端の端点セルは、第１の色彩のセルである。
【０２０９】
そして、前記第１の繰り返しセル部は、前記左端側から前記コードシンボルの内側に向かって、第２の色彩のセルと、第３の色彩のセルとを交互に連結して構成され、その連結した合計セル数がｋ個である。
【０２１０】
また、前記第２の繰り返しセル部は、前記右方端部側から前記コードシンボルの内側に向かって、第３の色彩のセルと、第２の色彩のセルとを交互に連結し、連結した合計セル数がｋ個である。
【０２１１】
尚、ここで、前記Ｎは自然数であり、前記ｋは、１以上Ｎ未満の整数である。
【０２１２】
尚、ｋは、上記の色彩の繰り返しが両端ともに、端部を除いてｋ回繰り返した場合に相当する。
【０２１３】
図８（ｋ＝１）、図９（ｋ＝２）、図１０（ｋ＝３）、図１１（ｋ＝４）の例を模式的に表せば、
図８    左端：ＹＭ              右端：      ＣＹ  
図９    左端：ＹＭＣ            右端：    ＭＣＹ
図１０  左端：ＹＭＣＭ          右端：  ＹＭＣＹ
図１１  左端：ＹＭＣＭＣ        右端：ＭＹＭＣＹ
すなわち、図８〜図１１の例では、第１色がＹ、第２色がＭ、そして第３色がＣである。もちろん他の組み合わせ、他の色でもかまわない。
【０２１４】
さて、このような「まとめ３」で示した端部識別用色彩配列を用いれば、Ｎ個からＮ−ｋ個までのセル数のコードシンボルを混在させる場合に、Ｎ個のセルから成るコードシンボルにｋ個のセルの欠けが生じた場合を検出することができる。
【０２１５】
ｋ個のセルの欠け 
まず、左端でｋ個のセルが欠けた場合は、第１色が端部に表れないので、明らかに端点条件を満たさず、「欠け」が生じたことを検知することができる。上の説明から明らかなように、左端でセルがｋ個欠けた場合は、左端のセルは、第２色又は第３色になり、一方、右端は第１色のセルのままである。したがって、明らかに端点条件を満たさない。
【０２１６】
次に、右端でｋ個のセルが欠けた場合は、右端は常に第１色ではない。この場合も、明らかに端点条件を満たさず、「欠け」が生じたことを検知することができる。上の説明から明らかなように、右端でセルがｋ個欠けた場合は、右端のセルは、第２色又は第３色になり、一方、左端は第１色のセルのままである。したがって、明らかに端点条件を満たさない。
【０２１７】
次に、左端において１個以上のセルが欠け、右端において１個以上のセルが欠け、合計ｋ個のセルが欠けた場合は、右端にも左端にも第１色のセルが表れない。その結果、明らかに端点条件を満たさず、何らかのセルの欠けが生じ誤読が生じていることが検知できる。
【０２１８】
１個からｋ−１個までのセルの欠け
他の実施例１〜４で説明した端部識別用色彩配列は、帰納的に構成されており、あるｋの場合の配列は、ｋ−１の配列を包含するので、当然に、ｋ−１個のセルの欠けも検知することができる。また、このｋ−１の配列もまたｋ−２個の配列を包含するので、当然にｋ−２個の欠けも検知することができる。以下、同様にして、１個からｋ−１個までのセルの欠けが全て検知可能である。
【０２１９】
帰納的な説明をすれば以上の通りであるが、直感的には、左端で１個以上のセルの欠けが生じ、右端で１個以上の欠けが生じ、その合計がｋ個以下であれば、明らかに端部に第１色のセルが表れず、端点条件を満たさないことは明白である。その結果、誤読が生じ、セルの欠けが生じたことを検知することができる。
【０２２０】
その他
以上述べたように、本発明は、複数のコードシンボルによる元のデータの復元という側面を有するが、その範疇にとどまるものではない。すなわち、本発明は、互いに独立した複数のコードシンボルの読み取り時にも適用できることは言うまでもない。
【０２２１】
尚、複数のコードシンボルによる元のデータの復元の場合を考えると、これら複数のコードシンボルは、それぞれ単独でも何らかの意味を有するように設定することで（それぞれ、日付、シリアルナンバー、価格など）、何らかの原因で元のデータを完全に復元できない場合でも少しでも集計等に有意義な状況にすることができるので好ましい。
【０２２２】
実施の形態５  その他
（１）  また、上述した端点条件、すなわち端部識別用色彩配列によって読み取りの「欠け」を検知する発明は、複数個のコードシンボルで所定の単一のデータを表す場合だけでなく、各コードシンボルが単独で単一のデータを表す場合にも応用できることは言うまでもない。
【０２２３】
（２）また、画像データは、典型的には、ＣＣＤカメラ等で撮影して得ることが好ましい。アナログカメラで撮影したデータをデジタル信号に変換してもかまわない。
【図面の簡単な説明】
【０２２４】
【図１】本実施の形態において、データを複数のコードシンボルで表現した場合の様子を示す説明図である。
【図２】グループ識別データ、グループ内順識別データを、色彩のパターンとして与えた場合の１Ｄカラービットコードの様子を示す説明図である。
【図３】グループ識別データ、グループ内順識別データを、色彩のパターンとして与えた場合の１Ｄカラービットコードの様子を示す説明図であり、特にグループ内順識別データをコードの中間位置に配置した例である。
【図４】セル数Ｎ個のコードシンボルとセル数Ｎ−１個のコードシンボルの混在が許されている場合のコードシンボルの様子を示す説明図である。
【図５】セル数Ｎ個のコードシンボルとセル数Ｎ−２個のコードシンボルの混在が許されている場合のコードシンボルの様子を示す説明図である。
【図６】セル数Ｎ個のコードシンボルとセル数Ｎ−３個のコードシンボルの混在が許されている場合のコードシンボルの様子を示す説明図である。
【図７】セル数Ｎ個のコードシンボルとセル数Ｎ−４個のコードシンボルの混在が許されている場合のコードシンボルの様子を示す説明図である。
【図８】他の実施例１に係る光学式認識コードの説明図である。
【図９】他の実施例２に係る光学式認識コードの説明図である。
【図１０】他の実施例３に係る光学式認識コードの説明図である。
【図１１】他の実施例４に係る光学式認識コードの説明図である。
【図１２】従来のバーコードにおいて、複数のスキャンラインで読み取る様子を示す説明図である。
【符号の説明】
【０２２５】
１０  バーコード
１２、１４  スキャンライン
２０  コードシンボル
３０  コードシンボル
４０  コードシンボル
４２  グループパターン部
４４  グループ内順表示パターン部
５０  コードシンボル
６０  コードシンボル
６２  グループ内順表示パターン部
【図１】
2009003653.tif 000003
【図２】
2009003653.tif 000004
【図３】
2009003653.tif 000005
【図４】
2009003653.tif 000006
【図５】
2009003653.tif 000007
【図６】
2009003653.tif 000008
【図７】
2009003653.tif 000009
【図８】
2009003653.tif 000010
【図９】
2009003653.tif 000011
【図１０】
2009003653.tif 000012
【図１１】
2009003653.tif 000013
【図１２】
2009003653.tif 000014