(57)【要約】【課題】Ｗｅｂカメラで良好な認識ができる小さなサイズの二次元コードを提供する。【解決手段】二次元コード１００は、互いに隣り合うグリーンとマゼンタの領域とで構成されるマーカー１０と、マーカー１０に対して所定の位置に配置され、マトリクス状に配列された２進データセルから成るデータマトリクス２０とを備え、マーカー１０の一方の領域のサイズは、データセルの４倍であり、データマトリクス２０は、タイミングセル領域２０ｔとデータセル領域２０ｄとから成り、タイミングセル領域２０ｔは、黒データセル１と白データセル２とが交互に並ぶ第１インデックス２１、第２インデックス２２と、黒データセル１から成る第３インデックス２３とを備え、データセル領域２０ｄは、一方の辺が第１インデックス２１に隣り合い、交差する他方の辺が第２インデックス２２に隣り合い、対角に第３インデックス２３を備える。【選択図】図３
2013084031.tif 000002
【特許請求の範囲】
【請求項１】
互いに隣り合う第１色の領域と第２色の領域とで構成されるマーカーであって、
前記第１色と前記第２色は、
Ｌ*Ｃ*ｈ*表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲であり、
ＣＩＥ（Commission Internationale de l'Eclairage）色度図における互いの距離が０．５以上離れている２色であることを特徴とするマーカー。
【請求項２】
前記第１色はグリーンであり、前記第２色はマゼンタであることを特徴とする請求項１に記載のマーカー。
【請求項３】
請求項１または請求項２に記載のマーカーと、
マトリクス状に配列された２進データセルから成るデータマトリクスと、を備え、
前記第１色の領域の重心と前記第２色の領域の重心との距離は、互いに隣り合う前記２進データセルの重心間距離の２倍以上の整数倍であることを特徴とする二次元コード。
【請求項４】
前記２進データセルは、黒データセルおよび／または白データセルで構成され、
前記データマトリクスは、タイミングセル領域とデータセル領域とから成り、
前記タイミングセル領域は、前記黒データセルと前記白データセルとが、前記データマトリクスの一方の配列方向に交互に並ぶ第１インデックスと、前記黒データセルと前記白データセルとが、前記データマトリクスの前記一方の配列方向に交差する他方の配列方向に交互に並ぶ第２インデックスとを備え、
前記データセル領域は、一方の辺が前記第１インデックスに隣り合い、他方の辺が前記第２インデックスに隣り合うマトリクス領域から成ることを特徴とする請求項３に記載の二次元コード。
【請求項５】
少なくとも１つ以上の黒データセル、あるいは少なくとも１つ以上の白データセル、あるいは、それらの組み合わせから成る第３インデックスを更に備え、
前記第３インデックスは、
前記データセル領域において、前記第１インデックスの延長方向と前記第２インデックスの延長方向との交点の対角側に配置されることを特徴とする請求項４に記載の二次元コード。
【請求項６】
画像処理によるマーカーの認識方法であって、
互いに隣り合う第１色の領域と第２色の領域とで構成され、前記第１色と前記第２色は、Ｌ*Ｃ*ｈ*表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲で、且つＣＩＥ色度図における互いの距離が０．５以上離れている２色であるマーカーに対し、
前記マーカーのある対象領域を撮像してカラー画像を取得するステップと、
得られた前記カラー画像を走査して、互いに隣り合う前記第１色の領域と前記第２色の領域とを検出するステップと、
前記第１色の領域の重心位置と前記第２色の領域の重心位置から、前記マーカーの向きおよび傾きを求めるステップと、を含むことを特徴とするマーカーの認識方法。
【請求項７】
前記第１色をグリーンとし、前記第２色をマゼンタとすることを特徴とする請求項６に記載のマーカーの認識方法。
【請求項８】
前記第１色と前記第２色は、それぞれ、更に、
所望の対象領域を撮像して得られるカラー画像における所定の面積を上回る色の色相との互いの前記色相角度ｈの差異が６０度から３００度の範囲の色から選択することを特徴とする請求項６に記載のマーカーの認識方法。
【請求項９】
画像処理による二次元コードの認識方法であって、
前記二次元コードは、マトリクス状に配列された２進データセルから成るデータマトリクスで構成し、
前記データマトリクスには、前記データマトリクスの所在および向きを認識するためのマーカーを所定の位置に付属させ、
前記マーカーの所在および向きは、請求項６ないし請求項８のいずれか一項に記載のマーカーの認識方法により認識することを特徴とする二次元コードの認識方法。
【請求項１０】
前記画像処理は、カラー画像の圧縮処理を含み、
前記マーカーの面積と前記２進データセルの面積との比率が、
前記カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による色差情報の距離分解能と輝度情報の距離分解能との比率に等しいことを特徴とする請求項９に記載の二次元コードの認識方法。
【請求項１１】
画像処理により、請求項５に記載の二次元コードを認識する二次元コードの認識方法であって、
所望の対象領域を撮像してカラー画像を取得するステップと、
前記カラー画像内で互いに隣り合う前記第１色の領域と前記第２色の領域を検出するステップと、
前記第１色の領域の重心位置と前記第２色の領域の重心位置とから前記マーカーの向きを認識するステップと、
前記第１色の領域の重心位置と前記第２色の領域の重心位置とから重心間距離を求めるステップと、
前記マーカーの向きと前記重心間距離の情報から前記第１ないし前記第３インデックスを検出するステップと、
前記第１ないし前記第３インデックスに含まれる前記黒データセルおよび／または前記白データセルの画像情報から、前記カラー画像内の前記データマトリクスの形状を整えて、正規化データマトリクスを取得するステップと、
前記正規化データマトリクスに含まれる前記データセル領域から前記２進データセルを認識し、２進情報を取得するステップと、
を含むことを特徴とする二次元コードの認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マーカー、該マーカーを備える二次元コード、およびマーカーの認識方法、該マーカーを備える二次元コードの認識方法に関する。
【背景技術】
【０００２】
従来、例えば、特許文献１に記載されているように、データセル数が縦横同数の正方形状に配置された二次元マトリクスに、位置決め用のシンボルが少なくとも２箇所配置された二次元コードが知られていた。この位置決め用のシンボルは、各々中心をあらゆる角度で横切る走査線において同じ周波数成分比が得られるパターンで構成されていたため、いかなる方向から読み取っても、同じ特徴的な周波数成分比が得られた。その結果、角度を変えてスキャンし直すことがなく、容易にマトリックス内の少なくとも所定位置２個所を検出することができた。
また、例えば、特許文献２に記載されているように、対象物領域を検出するための手段として、対象物にそれぞれ異なる色相から成る二つ以上の領域を有するマーカーを付し、対象物を撮像した画像をマーカー処理装置により処理して、規定された色相パターンを認識した領域をマーカー領域として決定し、このマーカー領域に囲まれる領域を対象物領域とするマーカー処理方法が知られていた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−２５４０３７号公報
【特許文献２】特開２００５−３０９７１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の二次元コードは、位置決め用のシンボルが比較的大きな面積を必要とするために、小さな二次元コードを作ることが困難であるという課題があった。具体的には、位置決め用のシンボルを、あらゆる角度で横切る走査線において同じ周波数成分比が得られる特徴的なパターン構成とするために、例えば、暗：明：暗：明：暗＝１：１：３：１：１となるように７つのデータセルを使う場合には、シンボル一つ当たりに４９個のデータセルを費やす必要があった。従って、データセルの総数が数十個以下のコンパクトな二次元コードにこのシンボルを活用することが困難であった。
また、特許文献２に記載されているマーカー処理方法は、二つ以上の色相の組み合わせによる色相パターンによって、マーカーの所在を示す機能と個々のマーカーに異なる情報を持たせる機能との二つの機能を併せ持たせていた。しかし、安定して識別できる色相の組み合わせパターンの数が限られてしまうという問題があり、その結果、利用できる情報の量が少ないという課題があった。具体的には、安定して識別できるようにするために、色相の検出マージンを色相角度±１０度に設定した３種類の色に限定するなど、組み合わせのパターンが絞られていた。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００６】
［適用例１］本適用例に係るマーカーは、互いに隣り合う第１色の領域と第２色の領域とで構成されるマーカーであって、第１色と第２色は、Ｌ＊Ｃ＊ｈ＊表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲であり、ＣＩＥ（Commission Internationale de l'Eclairage）色度図における互いの距離が０．５以上離れている２色であることを特徴とする。
【０００７】
本適用例によれば、マーカーを構成する隣り合う二つの領域のそれぞれの色は、Ｌ＊Ｃ＊ｈ＊表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲にあり、また、ＣＩＥ色度図における互いの距離が０．５以上離れている。一方、一般的に、Ｗｅｂカメラなどを用いてカラー画像処理を行う場合には、Ｗｅｂカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、上記の２種類の色を選択し、より色差を明確にすることによって、隣り合う二つの色をより明確に検出することができる。また、二つの色の選択基準を明確とすることで、検出するための仕様も明確となる。つまり、取得した画像において所定の隣り合う二つの領域の検出がより確実となり、結果としてマーカーの検出を安定して行うことができる。
【０００８】
［適用例２］上記適用例に係るマーカーにおいて、第１色はグリーンであり、第２色はマゼンタであることを特徴とする。
【０００９】
本適用例によれば、マーカーに使用されるグリーンおよびマゼンタは、色相角度ｈの差異は約１８０度、また色度図における互いの距離が０．７以上であり、色差が明確であるため、より確実に識別が可能となる。
【００１０】
［適用例３］本適用例に係る二次元コードは、適用例１または適用例２のいずれかに記載のマーカーと、マトリクス状に配列された２進データセルから成るデータマトリクスと、を備え、第１色の領域の重心と第２色の領域の重心との距離は、互いに隣り合う２進データセルの重心間距離の２倍以上の整数倍であることを特徴とする。
【００１１】
本適用例によれば、二次元コードは、適用例１または適用例２のいずれかに記載のマーカーと、マトリクス状に配列された２進データセルから成るデータマトリクスと、を備え、マーカーを構成する第１色の領域の重心と第２色の領域の重心との距離は、互いに隣り合う２進データセルの重心間距離の２倍以上の整数倍である。つまり、マーカーを構成する領域の面積は、２進データセルの面積の少なくとも４倍以上で構成される。一方、一般的に、Ｗｅｂカメラなどを用いてカラー画像処理を行う場合には、Ｗｅｂカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、色差によって検出するマーカー領域の面積をこのように相対的に大きく設定することによって、より確実にマーカーの所在および向きを検出することができる。
【００１２】
［適用例４］上記適用例に係る二次元コードにおいて、２進データセルは、黒データセルおよび／または白データセルで構成され、データマトリクスは、タイミングセル領域とデータセル領域とから成り、タイミングセル領域は、黒データセルと白データセルとが、データマトリクスの一方の配列方向に交互に並ぶ第１インデックスと、黒データセルと白データセルとが、データマトリクスの一方の配列方向に交差する他方の配列方向に交互に並ぶ第２インデックスとを備え、データセル領域は、一方の辺が第１インデックスに隣り合い、他方の辺が第２インデックスに隣り合うマトリクス領域から成ることを特徴とする。
【００１３】
本適用例によれば、データセル領域の隣り合う２辺には、黒データセルと白データセルとが交互に並ぶ第１インデックスと第２インデックスとが備えられる。そのため、データセル領域における２進データセルの配列は、第１インデックスと第２インデックスの黒データセルと白データセルの位置を認識することで把握することが可能となる。交互に並ぶ黒データセルと白データセルとの境界は画像認識により容易に検出されるため、２進データセルの配列位置はより確実に認識することが可能であり、結果として安定した２進データの読み取りが可能となる。
【００１４】
［適用例５］上記適用例に係る二次元コードにおいて、少なくとも１つ以上の黒データセル、あるいは少なくとも１つ以上の白データセル、あるいは、それらの組み合わせから成る第３インデックスを更に備え、第３インデックスは、データセル領域において、第１インデックスの延長方向と第２インデックスの延長方向との交点の対角側に配置されることを特徴とする。
【００１５】
本適用例によれば、データセル領域の隣り合う２辺には、黒データセルと白データセルとが交互に並ぶ第１インデックスと第２インデックスとを備え、更にそれらが交差する部分の対角側に少なくとも１つ以上の黒データセルあるいは白データセルあるいはそれらの組み合わせから成る第３インデックスを備えている。データセル領域の周辺域に第１ないし第３インデックスを備え、これらのインデックスを画像認識することで、より確実に２進データセルの配列位置を認識することが可能となる。具体的には、Ｗｅｂカメラなどで二次元コードを斜め方向から捉えた場合など、データマトリクスの画像が正面像として取得できない場合がある。その場合に、交差する２辺およびその対角に備えるインデックスによって、そのゆがみ補正をより正確に行うことが可能となる。結果として安定した２進データの読み取りが可能となる。
【００１６】
［適用例６］本適用例に係るマーカーの認識方法は、画像処理によるマーカーの認識方法であって、互いに隣り合う第１色の領域と第２色の領域とで構成され、第１色と第２色は、Ｌ＊Ｃ＊ｈ＊表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲で、且つＣＩＥ色度図における互いの距離が０．５以上離れている２色であるマーカーに対し、マーカーのある対象領域を撮像してカラー画像を取得するステップと、得られたカラー画像を走査して、互いに隣り合う第１色の領域と第２色の領域とを検出するステップと、第１色の領域の重心位置と第２色の領域の重心位置から、マーカーの向きおよび傾きを求めるステップと、を含むことを特徴とする。
【００１７】
本適用例によれば、マーカーを構成する隣り合う二つの領域のそれぞれの色は、Ｌ＊Ｃ＊ｈ＊表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲にあり、また、ＣＩＥ色度図における互いの距離が０．５以上離れている。一方、一般的に、Ｗｅｂカメラなどを用いてカラー画像処理を行う場合には、Ｗｅｂカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、上記のように色差が明確な２種類の色で構成されたマーカーに対して、対象領域のカラー画像を取得し、得られたカラー画像を走査して、互いに隣り合う第１色の領域と第２色の領域とを検出することで、所定の隣り合う二つの領域の検出がより確実となり、結果としてマーカーの検出を安定して行うことができる。
【００１８】
［適用例７］上記適用例に係るマーカーの認識方法において、第１色をグリーンとし、第２色をマゼンタとすることを特徴とする。
【００１９】
本適用例によれば、マーカーに使用されるグリーンおよびマゼンタは、色相角度ｈの差異は約１８０度、また色度図における互いの距離が０．７以上であり、色差が明確であるため、より確実に識別が可能となる。
【００２０】
［適用例８］適用例６に係るマーカーの認識方法において、第１色と第２色は、それぞれ、更に、所望の対象領域を撮像して得られるカラー画像における所定の面積を上回る色の色相との互いの色相角度ｈの差異が６０度から３００度の範囲の色から選択することを特徴とする。
【００２１】
本適用例によれば、マーカーを構成する第１色と第２色は、適用例６の範囲に加えて、所望の対象領域を撮像して得られるカラー画像における所定の面積を上回る色の色相との互いの色相角度ｈの差異が６０度から３００度の範囲の色で構成される。そのため、所定の面積を、マーカーを構成する第１色の領域または第２色の領域の面積として選択した場合に、マーカーを使用しようとする所望の対象領域にはほとんど存在しない組み合わせの色でマーカーを構成することができる。その結果、マーカーを誤認識することが少なくなり、安定して検出を行うことができる。
【００２２】
［適用例９］本適用例に係る二次元コードの認識方法は、画像処理による二次元コードの認識方法であって、二次元コードは、マトリクス状に配列された２進データセルから成るデータマトリクスで構成し、データマトリクスには、データマトリクスの所在および向きを認識するためのマーカーを所定の位置に付属させ、マーカーの所在および向きは、請求項６ないし請求項８のいずれか一項に記載のマーカーの認識方法により認識することを特徴とする。
【００２３】
本適用例によれば、データマトリクスには、データマトリクスの所在および向きを認識するためのマーカーを所定の位置に付属させるため、マーカーを検出することで、マーカーに付属するマーカーの情報とは独立したデータマトリクスの情報を容易に参照することが可能となる。つまり、マーカーが持つ色情報とは別に、マーカーにデータマトリクスによる所望の情報を付属させることが可能となる。換言すると、二次元コードには、二つの色の組み合わせによって安定して検出されるマーカーを備えるため、画像処理によって、所望の対象領域において容易に検出し参照することができる。また、データマトリクスとしてのデータ領域をマーカー領域として使わず、マーカー領域とは独立した部分に持つため、任意のコードサイズにすることができる。また、Ｗｅｂカメラなどの検出限界のサイズのマーカーと、検出限界のサイズの２進データセルから成るデータマトリクスとを組み合わせることにより、よりコンパクトな二次元コードを活用することができる。
【００２４】
［適用例１０］上記適用例に係る二次元コードの認識方法において、画像処理は、カラー画像の圧縮処理を含み、マーカーの面積と２進データセルの面積との比率が、カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による色差情報の距離分解能と輝度情報の距離分解能との比率に等しいことを特徴とする。
【００２５】
本適用例によれば、マーカーの面積と２進データセルの面積との比率が、カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による色差情報の距離分解能と輝度情報の距離分解能との比率に等しい。そのため、カラー画像の圧縮処理によって劣化する色差情報を、予め圧縮比率に応じて多くしておくことで、劣化の影響を低減させることができる。その結果、マーカーの認識性は、２進データセルの認識性に比較して低下する度合いが低減され、画像の分解能に近いサイズで、２進データセルを含むマーカーをより安定して認識できる二次元コードの認識方法を提供することができる。
【００２６】
［適用例１１］画像処理により、適用例５に記載の二次元コードを認識する二次元コードの認識方法において、所望の対象領域を撮像してカラー画像を取得するステップと、カラー画像内で互いに隣り合う第１色の領域と第２色の領域を検出するステップと、第１色の領域の重心位置と第２色の領域の重心位置とからマーカーの向きを認識するステップと、第１色の領域の重心位置と第２色の領域の重心位置とから重心間距離を求めるステップと、マーカーの向きと重心間距離の情報から第１ないし第３インデックスを検出するステップと、第１ないし第３インデックスに含まれる黒データセルおよび／または白データセルの画像情報から、カラー画像内のデータマトリクスの形状を整えて、正規化データマトリクスを取得するステップと、正規化データマトリクスに含まれるデータセル領域から２進データセルを認識し、２進情報を取得するステップと、を含むことを特徴とする。
【００２７】
本適用例によれば、データセル領域の周辺域に第１ないし第３インデックスを備え、これらのインデックスを画像認識することで、より確実に２進データセルの配列位置を認識することが可能となる。具体的には、Ｗｅｂカメラなどで二次元コードを斜め方向から捉えた場合など、データマトリクスの画像が正面像として得られない場合にそのゆがみ補正をより正確に行うことが可能となる。結果として安定した２進データの読み取りが可能となる。
【図面の簡単な説明】
【００２８】
【図１】（ａ）、（ｂ）実施形態１に係るマーカーを備えた二次元コードの説明図。
【図２】（ａ）Ｌ＊Ｃ＊ｈ＊表色系色相輪図の概略図、（ｂ）ＣＩＥ色度図の概略図。
【図３】（ａ）、（ｂ）実施形態１に係るデータマトリクスの構成を説明する概略図。
【図４】二次元コードの認識方法を示すフローチャート。
【図５】（ａ）〜（ｄ）二次元コードの認識手順を説明するイメージ図。
【図６】正規化用比較パターンの説明図。
【発明を実施するための形態】
【００２９】
以下に本発明を具体化した実施形態について、図面を参照して説明する。以下は、本発明の一実施形態であって、本発明を限定するものではない。なお、以下の各図においては、説明を分かりやすくするため、実際とは異なる尺度で記載している場合がある。
【００３０】
（実施形態１）
まず、実施形態１に係るマーカーを備えた二次元コード１００について図１（ａ）、（ｂ）を参照して説明する。図１（ａ）は、それぞれの領域の配置を示し、（ｂ）はその寸法を示している。
二次元コード１００は、対象物に記録した情報を光学的に読みとることができるようにした二次元コードであり、マーカー１０とデータマトリクス２０とから構成される。
【００３１】
マーカー１０は、第１色の領域１１と、第２色の領域１２とで構成される。領域１１と領域１２は、同じ大きさの正方形であり、一辺を共有して互いに隣り合っている。また、領域１１は、第１色としてのグリーンで彩色され、領域１２は、第２色としてマゼンタで彩色されている。
ＣＩＥ色度図（図２（ｂ））において、上記グリーンは、（ｘ、ｙ）＝（０．１、０．７）〜（０．１、０．８）の範囲から、上記マゼンタは、（ｘ、ｙ）＝（０．４、０．１５）〜（０．４、０．２）範囲から選択している。従ってＣＩＥ色度図における互いの距離が０．７以上離れている。また、これらは、Ｌ＊Ｃ＊ｈ＊表色系における互いの色相角度ｈ（図２（ａ））の差異が約１８０度である。
【００３２】
データマトリクス２０は、４行４列のマトリクス状に配列された２進データセルから成る。２進データセルは、黒データセル１および／または白データセル２で構成される。データマトリクス２０は、図１（ａ）に示すように、マーカー１０が左側に領域１１、右側に領域１２となる向きの場合に、マーカー１０の下辺にデータマトリクス２０の上辺が接するように配置される。
【００３３】
領域１１の重心１１ｃと領域１２の重心１２ｃとの距離は２Ｌであり、２進データセルは、一辺の長さがＬの正方形で構成される。従って、二次元コード１００は、縦６Ｌ横４Ｌの大きさの長方形となる。
なお、この場合に、領域１１または領域１２の面積は、２進データセルの面積の４倍の面積を占めるが、必ずしもこの大きさである必要はない。しかし、領域１１または領域１２の面積と２進データセルの面積との比率は、カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による、色差情報の距離分解能と輝度情報の距離分解能との比率に等しくすることが好ましい。従って、例えば、画像処理においてカラー情報（色相情報）の圧縮を行わない場合には、領域１１または領域１２の面積を２進データセルの面積と同程度としても良い。
【００３４】
ここで、距離分解能とは、撮像系において、接近する２つの点を分離して識別できる２点間の最小距離をいう。一般に、圧縮率を上げるためには高周波成分を多く削るため、圧縮率の高い画像は距離分解能が低く（距離的に長く）なる。例えば、隣接する白と黒の正方形セルと、隣接する緑とマゼンタ（画像における輝度は同じ）の正方形セルは、どこまで小さくしても分離して識別できるかを実験的にＷｅｂカメラで撮像して確かめてみると、隣接する白と黒の正方形セルのほうが小さくできることが確かめられている。
【００３５】
図３（ａ）、（ｂ）は、実施形態１に係るデータマトリクス２０の構成を説明する概略図である。
データマトリクス２０は、タイミングセル領域２０ｔとデータセル領域２０ｄとから成る。
タイミングセル領域２０ｔは、データセル領域２０ｄにおけるデータセルの並びを検出するためのインデックス機能を有し、第１インデックス２１、第２インデックス２２、第３インデックス２３から構成される。
データセル領域２０ｄには、データマトリクス２０において、タイミングセル領域２０ｔに使用されないすべてのデータセルが割り当てられる。
【００３６】
第１インデックス２１は、データマトリクス２０の一方の配列方向としてマーカー１０の下辺に接し、領域１１の側から順に、黒データセル１、白データセル２、黒データセル１、白データセル２と並ぶ。
第２インデックス２２は、データマトリクス２０の他方の配列方向として、データマトリクス２０の右辺に位置し、順に、白データセル２（第１インデックス２１の左辺の白データセル２と共通）、黒データセル１、白データセル２、黒データセル１と並ぶ。
第３インデックス２３は、一つの黒データセル１から成り、第１インデックス２１と第２インデックス２２が共有する白データセル２の対角側に配置される。
【００３７】
データセル領域２０ｄには、データマトリクス２０の残りのデータセルが割り当てられる。従って、図３（ｂ）において、（１）〜（８）がデータセル領域２０ｄのデータセルとなり、所望の情報として、黒データセル１および／または白データセル２が任意に割り当てられる。
【００３８】
図４は、二次元コード１００の認識方法を示すフローチャートである。
また、図５（ａ）〜（ｄ）は、二次元コード１００の認識手順を説明するイメージ図である。
次に、これらの図を参照して、二次元コード１００の認識方法について説明する。
【００３９】
二次元コード１００は、データセルが２４個分のコンパクトな二次元コードであるため、比較的小さな工具やツール、容器などに貼り付けて使用することができる。また、複数の二次元コード１００のそれぞれには、互いに異なるデータを埋め込み、二次元コード１００を貼り付けたものを識別するのに利用することができる。従って、ロボットが稼動する環境において、ロボットに連動するＷｅｂカメラなどで二次元コード１００を貼り付けたツール類を認識させながら、ロボットに必要な作業を行わせることなどに活用することができる。
【００４０】
まず、ロボットの稼動エリアなど、二次元コード１００のある所望の対象領域を撮像してカラー画像を取得する（ステップＳ１）。
次に、得られたカラー画像を走査して、互いに隣り合うグリーンの領域とマゼンタの領域を検出する。検出されたグリーンの領域とマゼンタの領域それぞれの重心位置座標を求め、重心間距離とそれぞれの領域のサイズとを検証し、マーカー１０であるか否かを判定することでマーカー１０の検出を行う（ステップＳ２）。所望の対象領域からは、複数のマーカー１０が検出される場合があるが、その場合には、以降の認識処理を個々に行う。
【００４１】
領域１１と領域１２に相当する隣り合うグリーンの領域とマゼンタの領域が検出されることでマーカー１０が検出されたら、次に、その向きを検出する（ステップＳ３）。具体的には、グリーンの領域１１の重心１１ｃとマゼンタの領域１２の重心１２ｃの位置関係からマーカー１０の向きと傾きを求める。傾きがある場合には、画像処理画面において、左側に配した領域１１と右側に配した領域１２とが水平となるように傾きを補正する（図５（ａ）、（ｂ））。
また、マーカー１０のサイズとして重心間距離（２Ｌ）を求める（ステップＳ４）。
【００４２】
次に、求められたＬの値から、マーカー１０の下部に配置されたデータマトリクス２０を外挿し認識する。実際には、図５（ｃ）に示すように、二次元コード１００を斜め方向から撮像した場合など、データマトリクス２０がゆがんだ形状になっている場合がある。このような場合には、第１インデックス２１、第２インデックス２２、および第３インデックス２３の黒データセル１、白データセル２の位置を検出し（ステップＳ５）、その情報に基づいてデータマトリクス２０のゆがみを補正してデータマトリクスの正規化を行う（ステップＳ６）。
【００４３】
このデータマトリクスの正規化は、具体的には、以下のようにモデル画像（正規化用比較パターン）とのマッチング処理によって行う。
図６は、二次元コード１００に対応した正規化用比較パターン３０の説明図である。
正規化用比較パターン３０は、黒パターン３１、白パターン３２、グレーパターン３３、マスク部３４ｄ、マスク部３４ｐおよび間隙部３５などから構成されている。
黒パターン３１は、第１インデックス２１、第２インデックス２２、および第３インデックス２３の黒データセル１（図３（ａ））に対応する位置に黒データを持つパターンである。
白パターン３２は、第１インデックス２１、第２インデックス２２、および第３インデックス２３の白データセル２（図３（ａ））に対応する位置に白データを持つパターンである。
グレーパターン３３は、マーカー１０に対応する位置にグレーデータ（黒白の中間データ）を持つパターンである。
マスク部３４ｄは、データセル領域２０ｄ（図３（ｂ））に対応する位置をマスクする（比較しない）パターンである。
マスク部３４ｐは、二次元コード１００の周辺部をマスクするパターンである。
間隙部３５は、二次元コード１００の周辺部とマスク部３４ｐとの間隙部分に対応する位置に白データを持つパターンである。
【００４４】
データマトリクスの正規化（ゆがみの補正）は、二次元コード１００の正規化前の画像と、正規化用比較パターン３０とを比較し、相互相関の評価を行うことで実施する。本実施例では、相関値として正規化相互相関値Ｒを用いている。正規化相互相関（ＮＣＣ：normalized cross correlation）は、平均と標準偏差とによって正規化された絶対測度であり、値が１に近く大きいほど画像の類似性が高いことを表す。
【００４５】
まずステップＳ４で得られた重心間距離（２Ｌ）を基に、二次元コード１００の正規化前の画像（図５（ｃ））と正規化用比較パターン３０とのサイズを合わせる。具体的には、画像処理において、それぞれの領域１１、領域１２の重心位置を合わせこむ。
次に、正規化用比較パターン３０を、正規化相互相関値Ｒが極大となる、あるいは所定の閾値以上になるように変換し、二次元コード１００の正規化前の画像に重なる変換Ｍを求める。次に、二次元コード１００の正規化前の画像に対して、変換Ｍに対する逆変換Ｍ-1を実施することで、二次元コード１００の正規化を行う。
あるいは、二次元コード１００の画像を変形させながら、相互相関の評価を行い、得られた正規化相互相関値Ｒが極大となるように、あるいは所定の閾値以上になるように変形させる方法であっても良い。
このようにして、図５（ｄ）に示すように、正規化用比較パターン３０の各部の位置に近似した二次元コード１００の画像が得られる。この時のデータマトリクス２０の部分を正規化データマトリクスとしてデータマトリクスの正規化（ステップＳ６）が完了する。
【００４６】
次に、正規化されたデータマトリクス２０からデータセル領域２０ｄのデータセル（１）〜（８）を認識し（ステップＳ７）、それぞれのデータセルの黒白情報を取得することで二次元コード１００に記録された２進情報の取得を完了する（ステップＳ８）。
図５（ｄ）の例では、（１）が最下位ビット、（８）が最上位ビットとし、黒データが０、白データが１とした場合に、１１０１１１００（１０進で２２０）が認識される。
【００４７】
なお、実施例１では、マーカー１０において、第１色と第２色にグリーンとマゼンタを用いたが、これに限定するものではない。第１色と第２色は、互いの色相角度ｈの差異が９０度から２７０度の範囲にあり、色度図における互いの距離が０．５以上離れている２色から選択される色であれば良い。ただし、マーカー１０を使用する環境において類似する色の組み合わせが既に存在する場合には、マーカーを誤認識してしまう可能性がある。その場合には、第１色と第２色の組み合わせを変更することが好ましい。例えば、使用する環境を撮像して得られるカラー画像を検証し、マーカー１０の面積の約４分の一から約４倍程度の面積を同一の色で占める領域の色を確認し、それらと類似しない色相の色からマーカー１０に使用する色を選択することが好ましい。類似しない色相としては、選択した色の色相角度ｈが、その環境で確認された色の色相角度ｈとの差異として６０度から３００度の範囲となることが誤認識を避ける上で好ましい。
【００４８】
また、二次元コード１００の領域１１、１２、およびデータマトリクス２０の配置や、画像処理における処理画面での向きは、上記に限定するものではない。例えば、領域１１、１２が左右逆であっても良く、マーカー１０は、データマトリクス２０の下に配置されても良い。ただし、認識すべき二次元コードの配置は、予め統一しておく必要がある。
また、領域１１と領域１２は、必ずしも正方形である必要はなく、例えば同程度の面積の多角形や円であっても良い。
【００４９】
以上述べたように、本実施形態によるマーカー１０、二次元コード１００、およびマーカー１０の認識方法、二次元コード１００の認識方法によれば、以下の効果を得ることができる。
【００５０】
マーカー１０を構成する隣り合う二つの領域（領域１１と領域１２）のそれぞれの色は、Ｌ＊Ｃ＊ｈ＊表色系における互いの色相角度ｈの差異が９０度から２７０度の範囲にあり、また、ＣＩＥ色度図における互いの距離が０．５以上離れている。一方、一般的に、Ｗｅｂカメラなどを用いてカラー画像処理を行う場合には、Ｗｅｂカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、上記の２種類の色を選択し、より色差を明確にすることによって、隣り合う二つの色をより明確に検出することができる。具体的には、例えば、輝度信号をＹ、Ｂ（青）信号と輝度信号Ｙとの色差信号をＣｂ、Ｒ（赤）信号と輝度信号Ｙとの色差信号をＣｒとした場合の色空間ＹＣｂＣｒにおいて、ＣｂとＣｒを足し合わせ。カラー画像を（Ｃｂ＋Ｃｒ）軸上に投影して得られる情報で第１色と第２色の抽出ができる。また、二つの色の選択基準を明確とすることで、検出するための仕様も明確となる。つまり、取得した画像において所定の隣り合う二つの領域の検出がより確実となり、結果としてマーカー１０の検出を安定して行うことができる。
【００５１】
また、領域１１と領域１２のそれぞれの色をグリーンおよびマゼンタとした場合は、色相角度ｈの差異は約１８０度、また色度図における互いの距離が０．７以上であり、色差が明確であるため、より確実に識別が可能となる。
【００５２】
また、データマトリクス２０は、マーカー１０に対して所定の位置に配置されるため、マーカー１０を検出することで、マーカー１０に付属するマーカー１０の情報とは独立したデータマトリクス２０の情報を容易に参照することが可能となる。つまり、マーカー１０が持つ色情報とは別に、マーカー１０にデータマトリクス２０による所望の情報を付属させることが可能となる。換言すると、二次元コード１００には、二つの色の組み合わせによって安定して検出されるマーカー１０を備えるため、画像処理によって、所望の対象領域において容易に検出し参照される二次元コード１００を提供することができる。また、データマトリクスとしてのデータ領域をマーカー領域として使われることもなく、マーカー領域とは独立した部分に持つことができるので、任意のコードサイズの二次元コードを提供することができる。また、Ｗｅｂカメラなどの検出限界のサイズのマーカーと、検出限界のサイズの２進データセルから成るデータマトリクスとを組み合わせることにより、よりコンパクトな二次元コードを実現することができる。
【００５３】
また、マーカー１０を構成する領域１１の重心１１ｃと領域１２の重心１２ｃとの距離は、互いに隣り合う２進データセルの重心間距離の２倍以上の整数倍であることから、マーカー１０を構成する領域の面積は、２進データセルの面積の少なくとも４倍以上で構成される。一方、一般的に、Ｗｅｂカメラなどを用いてカラー画像処理を行う場合には、Ｗｅｂカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、カラー画像の圧縮処理によって劣化する色差情報を、予め圧縮比率に応じて多くしておくことで、劣化の影響を低減させることができる。その結果、マーカーの認識性は、２進データセルの認識性に比較して低下する度合いが低減され、画像の分解能に近いサイズで、２進データセルを含むマーカーをより安定して認識できる二次元コードの認識方法を提供することができる。
【００５４】
また、データセル領域２０ｄの隣り合う２辺には、黒データセル１と白データセル２とが交互に並ぶ第１インデックス２１と第２インデックス２２とが備えられる。そのため、データセル領域２０ｄにおける２進データセルの配列は、第１インデックス２１と第２インデックス２２の黒データセル１と白データセル２の位置を認識することで把握することが可能となる。交互に並ぶ黒データセル１と白データセル２との境界は画像認識により容易に検出されるため、２進データセルの配列位置はより確実に認識することが可能であり、結果として安定した２進データの読み取りが可能となる。
【００５５】
また、データセル領域２０ｄの隣り合う２辺には、黒データセル１と白データセル２とが交互に並ぶ第１インデックス２１と第２インデックス２２とを備え、更にそれらが交差する部分の対角側に第３インデックス２３を備えている。データセル領域２０ｄの周辺域に第１、第２、第３インデックス２１、２２、２３を備え、これらのインデックスを画像認識することで、より確実に２進データセルの配列位置を認識することが可能となる。具体的には、Ｗｅｂカメラなどで二次元コード１００を斜め方向から捉えた場合など、データマトリクス２０の画像が正面像として取得できない場合がある。その場合に、交差する２辺およびその対角に備えるインデックスによって、そのゆがみ補正をより正確に行うことが可能となる。結果として安定した２進データの読み取りが可能となる。
【００５６】
また、領域１１と領域１２のそれぞれの色を上記の選択範囲に加えて、使用する環境を撮像して得られるカラー画像を検証し、環境に確認される色との互いの色相角度ｈの差異が６０度から３００度の範囲の色から選択した場合、マーカー１０を使用しようとする所望の対象領域にはほとんど存在しない組み合わせの色でマーカー１０を構成することができる。その結果、マーカー１０を誤認識することが少なくなり、安定して検出を行うことができる。
【符号の説明】
【００５７】
１…黒データセル、２…白データセル、１０…マーカー、１１，１２…領域、１１ｃ，１２ｃ…重心、２０…データマトリクス、２０ｄ…データセル領域、２０ｔ…タイミングセル領域、２１…第１インデックス、２２…第２インデックス、２３…第３インデックス、３０…正規化用比較パターン、３１…黒パターン、３２…白パターン、３３…グレーパターン、３４ｄ，３４ｐ…マスク部、３５…間隙部、１００…二次元コード。
【図１】
2013084031.tif 000003
【図２】
2013084031.tif 000004
【図３】
2013084031.tif 000005
【図４】
2013084031.tif 000006
【図５】
2013084031.tif 000007
【図６】
2013084031.tif 000008