説明

マーカー、二次元コード、およびマーカーの認識方法、二次元コードの認識方法

【課題】Webカメラで良好な認識ができる小さなサイズの二次元コードを提供する。
【解決手段】二次元コード100は、互いに隣り合うグリーンとマゼンタの領域とで構成されるマーカー10と、マーカー10に対して所定の位置に配置され、マトリクス状に配列された2進データセルから成るデータマトリクス20とを備え、マーカー10の一方の領域のサイズは、データセルの4倍であり、データマトリクス20は、タイミングセル領域20tとデータセル領域20dとから成り、タイミングセル領域20tは、黒データセル1と白データセル2とが交互に並ぶ第1インデックス21、第2インデックス22と、黒データセル1から成る第3インデックス23とを備え、データセル領域20dは、一方の辺が第1インデックス21に隣り合い、交差する他方の辺が第2インデックス22に隣り合い、対角に第3インデックス23を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マーカー、該マーカーを備える二次元コード、およびマーカーの認識方法、該マーカーを備える二次元コードの認識方法に関する。
【背景技術】
【0002】
従来、例えば、特許文献1に記載されているように、データセル数が縦横同数の正方形状に配置された二次元マトリクスに、位置決め用のシンボルが少なくとも2箇所配置された二次元コードが知られていた。この位置決め用のシンボルは、各々中心をあらゆる角度で横切る走査線において同じ周波数成分比が得られるパターンで構成されていたため、いかなる方向から読み取っても、同じ特徴的な周波数成分比が得られた。その結果、角度を変えてスキャンし直すことがなく、容易にマトリックス内の少なくとも所定位置2個所を検出することができた。
また、例えば、特許文献2に記載されているように、対象物領域を検出するための手段として、対象物にそれぞれ異なる色相から成る二つ以上の領域を有するマーカーを付し、対象物を撮像した画像をマーカー処理装置により処理して、規定された色相パターンを認識した領域をマーカー領域として決定し、このマーカー領域に囲まれる領域を対象物領域とするマーカー処理方法が知られていた。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平7−254037号公報
【特許文献2】特開2005−309717号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の二次元コードは、位置決め用のシンボルが比較的大きな面積を必要とするために、小さな二次元コードを作ることが困難であるという課題があった。具体的には、位置決め用のシンボルを、あらゆる角度で横切る走査線において同じ周波数成分比が得られる特徴的なパターン構成とするために、例えば、暗:明:暗:明:暗=1:1:3:1:1となるように7つのデータセルを使う場合には、シンボル一つ当たりに49個のデータセルを費やす必要があった。従って、データセルの総数が数十個以下のコンパクトな二次元コードにこのシンボルを活用することが困難であった。
また、特許文献2に記載されているマーカー処理方法は、二つ以上の色相の組み合わせによる色相パターンによって、マーカーの所在を示す機能と個々のマーカーに異なる情報を持たせる機能との二つの機能を併せ持たせていた。しかし、安定して識別できる色相の組み合わせパターンの数が限られてしまうという問題があり、その結果、利用できる情報の量が少ないという課題があった。具体的には、安定して識別できるようにするために、色相の検出マージンを色相角度±10度に設定した3種類の色に限定するなど、組み合わせのパターンが絞られていた。
【課題を解決するための手段】
【0005】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【0006】
[適用例1]本適用例に係るマーカーは、互いに隣り合う第1色の領域と第2色の領域とで構成されるマーカーであって、第1色と第2色は、L*C*h*表色系における互いの色相角度hの差異が90度から270度の範囲であり、CIE(Commission Internationale de l'Eclairage)色度図における互いの距離が0.5以上離れている2色であることを特徴とする。
【0007】
本適用例によれば、マーカーを構成する隣り合う二つの領域のそれぞれの色は、L*C*h*表色系における互いの色相角度hの差異が90度から270度の範囲にあり、また、CIE色度図における互いの距離が0.5以上離れている。一方、一般的に、Webカメラなどを用いてカラー画像処理を行う場合には、Webカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、上記の2種類の色を選択し、より色差を明確にすることによって、隣り合う二つの色をより明確に検出することができる。また、二つの色の選択基準を明確とすることで、検出するための仕様も明確となる。つまり、取得した画像において所定の隣り合う二つの領域の検出がより確実となり、結果としてマーカーの検出を安定して行うことができる。
【0008】
[適用例2]上記適用例に係るマーカーにおいて、第1色はグリーンであり、第2色はマゼンタであることを特徴とする。
【0009】
本適用例によれば、マーカーに使用されるグリーンおよびマゼンタは、色相角度hの差異は約180度、また色度図における互いの距離が0.7以上であり、色差が明確であるため、より確実に識別が可能となる。
【0010】
[適用例3]本適用例に係る二次元コードは、適用例1または適用例2のいずれかに記載のマーカーと、マトリクス状に配列された2進データセルから成るデータマトリクスと、を備え、第1色の領域の重心と第2色の領域の重心との距離は、互いに隣り合う2進データセルの重心間距離の2倍以上の整数倍であることを特徴とする。
【0011】
本適用例によれば、二次元コードは、適用例1または適用例2のいずれかに記載のマーカーと、マトリクス状に配列された2進データセルから成るデータマトリクスと、を備え、マーカーを構成する第1色の領域の重心と第2色の領域の重心との距離は、互いに隣り合う2進データセルの重心間距離の2倍以上の整数倍である。つまり、マーカーを構成する領域の面積は、2進データセルの面積の少なくとも4倍以上で構成される。一方、一般的に、Webカメラなどを用いてカラー画像処理を行う場合には、Webカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、色差によって検出するマーカー領域の面積をこのように相対的に大きく設定することによって、より確実にマーカーの所在および向きを検出することができる。
【0012】
[適用例4]上記適用例に係る二次元コードにおいて、2進データセルは、黒データセルおよび/または白データセルで構成され、データマトリクスは、タイミングセル領域とデータセル領域とから成り、タイミングセル領域は、黒データセルと白データセルとが、データマトリクスの一方の配列方向に交互に並ぶ第1インデックスと、黒データセルと白データセルとが、データマトリクスの一方の配列方向に交差する他方の配列方向に交互に並ぶ第2インデックスとを備え、データセル領域は、一方の辺が第1インデックスに隣り合い、他方の辺が第2インデックスに隣り合うマトリクス領域から成ることを特徴とする。
【0013】
本適用例によれば、データセル領域の隣り合う2辺には、黒データセルと白データセルとが交互に並ぶ第1インデックスと第2インデックスとが備えられる。そのため、データセル領域における2進データセルの配列は、第1インデックスと第2インデックスの黒データセルと白データセルの位置を認識することで把握することが可能となる。交互に並ぶ黒データセルと白データセルとの境界は画像認識により容易に検出されるため、2進データセルの配列位置はより確実に認識することが可能であり、結果として安定した2進データの読み取りが可能となる。
【0014】
[適用例5]上記適用例に係る二次元コードにおいて、少なくとも1つ以上の黒データセル、あるいは少なくとも1つ以上の白データセル、あるいは、それらの組み合わせから成る第3インデックスを更に備え、第3インデックスは、データセル領域において、第1インデックスの延長方向と第2インデックスの延長方向との交点の対角側に配置されることを特徴とする。
【0015】
本適用例によれば、データセル領域の隣り合う2辺には、黒データセルと白データセルとが交互に並ぶ第1インデックスと第2インデックスとを備え、更にそれらが交差する部分の対角側に少なくとも1つ以上の黒データセルあるいは白データセルあるいはそれらの組み合わせから成る第3インデックスを備えている。データセル領域の周辺域に第1ないし第3インデックスを備え、これらのインデックスを画像認識することで、より確実に2進データセルの配列位置を認識することが可能となる。具体的には、Webカメラなどで二次元コードを斜め方向から捉えた場合など、データマトリクスの画像が正面像として取得できない場合がある。その場合に、交差する2辺およびその対角に備えるインデックスによって、そのゆがみ補正をより正確に行うことが可能となる。結果として安定した2進データの読み取りが可能となる。
【0016】
[適用例6]本適用例に係るマーカーの認識方法は、画像処理によるマーカーの認識方法であって、互いに隣り合う第1色の領域と第2色の領域とで構成され、第1色と第2色は、L*C*h*表色系における互いの色相角度hの差異が90度から270度の範囲で、且つCIE色度図における互いの距離が0.5以上離れている2色であるマーカーに対し、マーカーのある対象領域を撮像してカラー画像を取得するステップと、得られたカラー画像を走査して、互いに隣り合う第1色の領域と第2色の領域とを検出するステップと、第1色の領域の重心位置と第2色の領域の重心位置から、マーカーの向きおよび傾きを求めるステップと、を含むことを特徴とする。
【0017】
本適用例によれば、マーカーを構成する隣り合う二つの領域のそれぞれの色は、L*C*h*表色系における互いの色相角度hの差異が90度から270度の範囲にあり、また、CIE色度図における互いの距離が0.5以上離れている。一方、一般的に、Webカメラなどを用いてカラー画像処理を行う場合には、Webカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、上記のように色差が明確な2種類の色で構成されたマーカーに対して、対象領域のカラー画像を取得し、得られたカラー画像を走査して、互いに隣り合う第1色の領域と第2色の領域とを検出することで、所定の隣り合う二つの領域の検出がより確実となり、結果としてマーカーの検出を安定して行うことができる。
【0018】
[適用例7]上記適用例に係るマーカーの認識方法において、第1色をグリーンとし、第2色をマゼンタとすることを特徴とする。
【0019】
本適用例によれば、マーカーに使用されるグリーンおよびマゼンタは、色相角度hの差異は約180度、また色度図における互いの距離が0.7以上であり、色差が明確であるため、より確実に識別が可能となる。
【0020】
[適用例8]適用例6に係るマーカーの認識方法において、第1色と第2色は、それぞれ、更に、所望の対象領域を撮像して得られるカラー画像における所定の面積を上回る色の色相との互いの色相角度hの差異が60度から300度の範囲の色から選択することを特徴とする。
【0021】
本適用例によれば、マーカーを構成する第1色と第2色は、適用例6の範囲に加えて、所望の対象領域を撮像して得られるカラー画像における所定の面積を上回る色の色相との互いの色相角度hの差異が60度から300度の範囲の色で構成される。そのため、所定の面積を、マーカーを構成する第1色の領域または第2色の領域の面積として選択した場合に、マーカーを使用しようとする所望の対象領域にはほとんど存在しない組み合わせの色でマーカーを構成することができる。その結果、マーカーを誤認識することが少なくなり、安定して検出を行うことができる。
【0022】
[適用例9]本適用例に係る二次元コードの認識方法は、画像処理による二次元コードの認識方法であって、二次元コードは、マトリクス状に配列された2進データセルから成るデータマトリクスで構成し、データマトリクスには、データマトリクスの所在および向きを認識するためのマーカーを所定の位置に付属させ、マーカーの所在および向きは、請求項6ないし請求項8のいずれか一項に記載のマーカーの認識方法により認識することを特徴とする。
【0023】
本適用例によれば、データマトリクスには、データマトリクスの所在および向きを認識するためのマーカーを所定の位置に付属させるため、マーカーを検出することで、マーカーに付属するマーカーの情報とは独立したデータマトリクスの情報を容易に参照することが可能となる。つまり、マーカーが持つ色情報とは別に、マーカーにデータマトリクスによる所望の情報を付属させることが可能となる。換言すると、二次元コードには、二つの色の組み合わせによって安定して検出されるマーカーを備えるため、画像処理によって、所望の対象領域において容易に検出し参照することができる。また、データマトリクスとしてのデータ領域をマーカー領域として使わず、マーカー領域とは独立した部分に持つため、任意のコードサイズにすることができる。また、Webカメラなどの検出限界のサイズのマーカーと、検出限界のサイズの2進データセルから成るデータマトリクスとを組み合わせることにより、よりコンパクトな二次元コードを活用することができる。
【0024】
[適用例10]上記適用例に係る二次元コードの認識方法において、画像処理は、カラー画像の圧縮処理を含み、マーカーの面積と2進データセルの面積との比率が、カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による色差情報の距離分解能と輝度情報の距離分解能との比率に等しいことを特徴とする。
【0025】
本適用例によれば、マーカーの面積と2進データセルの面積との比率が、カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による色差情報の距離分解能と輝度情報の距離分解能との比率に等しい。そのため、カラー画像の圧縮処理によって劣化する色差情報を、予め圧縮比率に応じて多くしておくことで、劣化の影響を低減させることができる。その結果、マーカーの認識性は、2進データセルの認識性に比較して低下する度合いが低減され、画像の分解能に近いサイズで、2進データセルを含むマーカーをより安定して認識できる二次元コードの認識方法を提供することができる。
【0026】
[適用例11]画像処理により、適用例5に記載の二次元コードを認識する二次元コードの認識方法において、所望の対象領域を撮像してカラー画像を取得するステップと、カラー画像内で互いに隣り合う第1色の領域と第2色の領域を検出するステップと、第1色の領域の重心位置と第2色の領域の重心位置とからマーカーの向きを認識するステップと、第1色の領域の重心位置と第2色の領域の重心位置とから重心間距離を求めるステップと、マーカーの向きと重心間距離の情報から第1ないし第3インデックスを検出するステップと、第1ないし第3インデックスに含まれる黒データセルおよび/または白データセルの画像情報から、カラー画像内のデータマトリクスの形状を整えて、正規化データマトリクスを取得するステップと、正規化データマトリクスに含まれるデータセル領域から2進データセルを認識し、2進情報を取得するステップと、を含むことを特徴とする。
【0027】
本適用例によれば、データセル領域の周辺域に第1ないし第3インデックスを備え、これらのインデックスを画像認識することで、より確実に2進データセルの配列位置を認識することが可能となる。具体的には、Webカメラなどで二次元コードを斜め方向から捉えた場合など、データマトリクスの画像が正面像として得られない場合にそのゆがみ補正をより正確に行うことが可能となる。結果として安定した2進データの読み取りが可能となる。
【図面の簡単な説明】
【0028】
【図1】(a)、(b)実施形態1に係るマーカーを備えた二次元コードの説明図。
【図2】(a)L*C*h*表色系色相輪図の概略図、(b)CIE色度図の概略図。
【図3】(a)、(b)実施形態1に係るデータマトリクスの構成を説明する概略図。
【図4】二次元コードの認識方法を示すフローチャート。
【図5】(a)〜(d)二次元コードの認識手順を説明するイメージ図。
【図6】正規化用比較パターンの説明図。
【発明を実施するための形態】
【0029】
以下に本発明を具体化した実施形態について、図面を参照して説明する。以下は、本発明の一実施形態であって、本発明を限定するものではない。なお、以下の各図においては、説明を分かりやすくするため、実際とは異なる尺度で記載している場合がある。
【0030】
(実施形態1)
まず、実施形態1に係るマーカーを備えた二次元コード100について図1(a)、(b)を参照して説明する。図1(a)は、それぞれの領域の配置を示し、(b)はその寸法を示している。
二次元コード100は、対象物に記録した情報を光学的に読みとることができるようにした二次元コードであり、マーカー10とデータマトリクス20とから構成される。
【0031】
マーカー10は、第1色の領域11と、第2色の領域12とで構成される。領域11と領域12は、同じ大きさの正方形であり、一辺を共有して互いに隣り合っている。また、領域11は、第1色としてのグリーンで彩色され、領域12は、第2色としてマゼンタで彩色されている。
CIE色度図(図2(b))において、上記グリーンは、(x、y)=(0.1、0.7)〜(0.1、0.8)の範囲から、上記マゼンタは、(x、y)=(0.4、0.15)〜(0.4、0.2)範囲から選択している。従ってCIE色度図における互いの距離が0.7以上離れている。また、これらは、L*C*h*表色系における互いの色相角度h(図2(a))の差異が約180度である。
【0032】
データマトリクス20は、4行4列のマトリクス状に配列された2進データセルから成る。2進データセルは、黒データセル1および/または白データセル2で構成される。データマトリクス20は、図1(a)に示すように、マーカー10が左側に領域11、右側に領域12となる向きの場合に、マーカー10の下辺にデータマトリクス20の上辺が接するように配置される。
【0033】
領域11の重心11cと領域12の重心12cとの距離は2Lであり、2進データセルは、一辺の長さがLの正方形で構成される。従って、二次元コード100は、縦6L横4Lの大きさの長方形となる。
なお、この場合に、領域11または領域12の面積は、2進データセルの面積の4倍の面積を占めるが、必ずしもこの大きさである必要はない。しかし、領域11または領域12の面積と2進データセルの面積との比率は、カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による、色差情報の距離分解能と輝度情報の距離分解能との比率に等しくすることが好ましい。従って、例えば、画像処理においてカラー情報(色相情報)の圧縮を行わない場合には、領域11または領域12の面積を2進データセルの面積と同程度としても良い。
【0034】
ここで、距離分解能とは、撮像系において、接近する2つの点を分離して識別できる2点間の最小距離をいう。一般に、圧縮率を上げるためには高周波成分を多く削るため、圧縮率の高い画像は距離分解能が低く(距離的に長く)なる。例えば、隣接する白と黒の正方形セルと、隣接する緑とマゼンタ(画像における輝度は同じ)の正方形セルは、どこまで小さくしても分離して識別できるかを実験的にWebカメラで撮像して確かめてみると、隣接する白と黒の正方形セルのほうが小さくできることが確かめられている。
【0035】
図3(a)、(b)は、実施形態1に係るデータマトリクス20の構成を説明する概略図である。
データマトリクス20は、タイミングセル領域20tとデータセル領域20dとから成る。
タイミングセル領域20tは、データセル領域20dにおけるデータセルの並びを検出するためのインデックス機能を有し、第1インデックス21、第2インデックス22、第3インデックス23から構成される。
データセル領域20dには、データマトリクス20において、タイミングセル領域20tに使用されないすべてのデータセルが割り当てられる。
【0036】
第1インデックス21は、データマトリクス20の一方の配列方向としてマーカー10の下辺に接し、領域11の側から順に、黒データセル1、白データセル2、黒データセル1、白データセル2と並ぶ。
第2インデックス22は、データマトリクス20の他方の配列方向として、データマトリクス20の右辺に位置し、順に、白データセル2(第1インデックス21の左辺の白データセル2と共通)、黒データセル1、白データセル2、黒データセル1と並ぶ。
第3インデックス23は、一つの黒データセル1から成り、第1インデックス21と第2インデックス22が共有する白データセル2の対角側に配置される。
【0037】
データセル領域20dには、データマトリクス20の残りのデータセルが割り当てられる。従って、図3(b)において、(1)〜(8)がデータセル領域20dのデータセルとなり、所望の情報として、黒データセル1および/または白データセル2が任意に割り当てられる。
【0038】
図4は、二次元コード100の認識方法を示すフローチャートである。
また、図5(a)〜(d)は、二次元コード100の認識手順を説明するイメージ図である。
次に、これらの図を参照して、二次元コード100の認識方法について説明する。
【0039】
二次元コード100は、データセルが24個分のコンパクトな二次元コードであるため、比較的小さな工具やツール、容器などに貼り付けて使用することができる。また、複数の二次元コード100のそれぞれには、互いに異なるデータを埋め込み、二次元コード100を貼り付けたものを識別するのに利用することができる。従って、ロボットが稼動する環境において、ロボットに連動するWebカメラなどで二次元コード100を貼り付けたツール類を認識させながら、ロボットに必要な作業を行わせることなどに活用することができる。
【0040】
まず、ロボットの稼動エリアなど、二次元コード100のある所望の対象領域を撮像してカラー画像を取得する(ステップS1)。
次に、得られたカラー画像を走査して、互いに隣り合うグリーンの領域とマゼンタの領域を検出する。検出されたグリーンの領域とマゼンタの領域それぞれの重心位置座標を求め、重心間距離とそれぞれの領域のサイズとを検証し、マーカー10であるか否かを判定することでマーカー10の検出を行う(ステップS2)。所望の対象領域からは、複数のマーカー10が検出される場合があるが、その場合には、以降の認識処理を個々に行う。
【0041】
領域11と領域12に相当する隣り合うグリーンの領域とマゼンタの領域が検出されることでマーカー10が検出されたら、次に、その向きを検出する(ステップS3)。具体的には、グリーンの領域11の重心11cとマゼンタの領域12の重心12cの位置関係からマーカー10の向きと傾きを求める。傾きがある場合には、画像処理画面において、左側に配した領域11と右側に配した領域12とが水平となるように傾きを補正する(図5(a)、(b))。
また、マーカー10のサイズとして重心間距離(2L)を求める(ステップS4)。
【0042】
次に、求められたLの値から、マーカー10の下部に配置されたデータマトリクス20を外挿し認識する。実際には、図5(c)に示すように、二次元コード100を斜め方向から撮像した場合など、データマトリクス20がゆがんだ形状になっている場合がある。このような場合には、第1インデックス21、第2インデックス22、および第3インデックス23の黒データセル1、白データセル2の位置を検出し(ステップS5)、その情報に基づいてデータマトリクス20のゆがみを補正してデータマトリクスの正規化を行う(ステップS6)。
【0043】
このデータマトリクスの正規化は、具体的には、以下のようにモデル画像(正規化用比較パターン)とのマッチング処理によって行う。
図6は、二次元コード100に対応した正規化用比較パターン30の説明図である。
正規化用比較パターン30は、黒パターン31、白パターン32、グレーパターン33、マスク部34d、マスク部34pおよび間隙部35などから構成されている。
黒パターン31は、第1インデックス21、第2インデックス22、および第3インデックス23の黒データセル1(図3(a))に対応する位置に黒データを持つパターンである。
白パターン32は、第1インデックス21、第2インデックス22、および第3インデックス23の白データセル2(図3(a))に対応する位置に白データを持つパターンである。
グレーパターン33は、マーカー10に対応する位置にグレーデータ(黒白の中間データ)を持つパターンである。
マスク部34dは、データセル領域20d(図3(b))に対応する位置をマスクする(比較しない)パターンである。
マスク部34pは、二次元コード100の周辺部をマスクするパターンである。
間隙部35は、二次元コード100の周辺部とマスク部34pとの間隙部分に対応する位置に白データを持つパターンである。
【0044】
データマトリクスの正規化(ゆがみの補正)は、二次元コード100の正規化前の画像と、正規化用比較パターン30とを比較し、相互相関の評価を行うことで実施する。本実施例では、相関値として正規化相互相関値Rを用いている。正規化相互相関(NCC:normalized cross correlation)は、平均と標準偏差とによって正規化された絶対測度であり、値が1に近く大きいほど画像の類似性が高いことを表す。
【0045】
まずステップS4で得られた重心間距離(2L)を基に、二次元コード100の正規化前の画像(図5(c))と正規化用比較パターン30とのサイズを合わせる。具体的には、画像処理において、それぞれの領域11、領域12の重心位置を合わせこむ。
次に、正規化用比較パターン30を、正規化相互相関値Rが極大となる、あるいは所定の閾値以上になるように変換し、二次元コード100の正規化前の画像に重なる変換Mを求める。次に、二次元コード100の正規化前の画像に対して、変換Mに対する逆変換M-1を実施することで、二次元コード100の正規化を行う。
あるいは、二次元コード100の画像を変形させながら、相互相関の評価を行い、得られた正規化相互相関値Rが極大となるように、あるいは所定の閾値以上になるように変形させる方法であっても良い。
このようにして、図5(d)に示すように、正規化用比較パターン30の各部の位置に近似した二次元コード100の画像が得られる。この時のデータマトリクス20の部分を正規化データマトリクスとしてデータマトリクスの正規化(ステップS6)が完了する。
【0046】
次に、正規化されたデータマトリクス20からデータセル領域20dのデータセル(1)〜(8)を認識し(ステップS7)、それぞれのデータセルの黒白情報を取得することで二次元コード100に記録された2進情報の取得を完了する(ステップS8)。
図5(d)の例では、(1)が最下位ビット、(8)が最上位ビットとし、黒データが0、白データが1とした場合に、11011100(10進で220)が認識される。
【0047】
なお、実施例1では、マーカー10において、第1色と第2色にグリーンとマゼンタを用いたが、これに限定するものではない。第1色と第2色は、互いの色相角度hの差異が90度から270度の範囲にあり、色度図における互いの距離が0.5以上離れている2色から選択される色であれば良い。ただし、マーカー10を使用する環境において類似する色の組み合わせが既に存在する場合には、マーカーを誤認識してしまう可能性がある。その場合には、第1色と第2色の組み合わせを変更することが好ましい。例えば、使用する環境を撮像して得られるカラー画像を検証し、マーカー10の面積の約4分の一から約4倍程度の面積を同一の色で占める領域の色を確認し、それらと類似しない色相の色からマーカー10に使用する色を選択することが好ましい。類似しない色相としては、選択した色の色相角度hが、その環境で確認された色の色相角度hとの差異として60度から300度の範囲となることが誤認識を避ける上で好ましい。
【0048】
また、二次元コード100の領域11、12、およびデータマトリクス20の配置や、画像処理における処理画面での向きは、上記に限定するものではない。例えば、領域11、12が左右逆であっても良く、マーカー10は、データマトリクス20の下に配置されても良い。ただし、認識すべき二次元コードの配置は、予め統一しておく必要がある。
また、領域11と領域12は、必ずしも正方形である必要はなく、例えば同程度の面積の多角形や円であっても良い。
【0049】
以上述べたように、本実施形態によるマーカー10、二次元コード100、およびマーカー10の認識方法、二次元コード100の認識方法によれば、以下の効果を得ることができる。
【0050】
マーカー10を構成する隣り合う二つの領域(領域11と領域12)のそれぞれの色は、L*C*h*表色系における互いの色相角度hの差異が90度から270度の範囲にあり、また、CIE色度図における互いの距離が0.5以上離れている。一方、一般的に、Webカメラなどを用いてカラー画像処理を行う場合には、Webカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、上記の2種類の色を選択し、より色差を明確にすることによって、隣り合う二つの色をより明確に検出することができる。具体的には、例えば、輝度信号をY、B(青)信号と輝度信号Yとの色差信号をCb、R(赤)信号と輝度信号Yとの色差信号をCrとした場合の色空間YCbCrにおいて、CbとCrを足し合わせ。カラー画像を(Cb+Cr)軸上に投影して得られる情報で第1色と第2色の抽出ができる。また、二つの色の選択基準を明確とすることで、検出するための仕様も明確となる。つまり、取得した画像において所定の隣り合う二つの領域の検出がより確実となり、結果としてマーカー10の検出を安定して行うことができる。
【0051】
また、領域11と領域12のそれぞれの色をグリーンおよびマゼンタとした場合は、色相角度hの差異は約180度、また色度図における互いの距離が0.7以上であり、色差が明確であるため、より確実に識別が可能となる。
【0052】
また、データマトリクス20は、マーカー10に対して所定の位置に配置されるため、マーカー10を検出することで、マーカー10に付属するマーカー10の情報とは独立したデータマトリクス20の情報を容易に参照することが可能となる。つまり、マーカー10が持つ色情報とは別に、マーカー10にデータマトリクス20による所望の情報を付属させることが可能となる。換言すると、二次元コード100には、二つの色の組み合わせによって安定して検出されるマーカー10を備えるため、画像処理によって、所望の対象領域において容易に検出し参照される二次元コード100を提供することができる。また、データマトリクスとしてのデータ領域をマーカー領域として使われることもなく、マーカー領域とは独立した部分に持つことができるので、任意のコードサイズの二次元コードを提供することができる。また、Webカメラなどの検出限界のサイズのマーカーと、検出限界のサイズの2進データセルから成るデータマトリクスとを組み合わせることにより、よりコンパクトな二次元コードを実現することができる。
【0053】
また、マーカー10を構成する領域11の重心11cと領域12の重心12cとの距離は、互いに隣り合う2進データセルの重心間距離の2倍以上の整数倍であることから、マーカー10を構成する領域の面積は、2進データセルの面積の少なくとも4倍以上で構成される。一方、一般的に、Webカメラなどを用いてカラー画像処理を行う場合には、Webカメラが取得したカラー画像の色差信号が比較的大きく圧縮され、色差の識別情報が減少してしまう。従って、カラー画像の圧縮処理によって劣化する色差情報を、予め圧縮比率に応じて多くしておくことで、劣化の影響を低減させることができる。その結果、マーカーの認識性は、2進データセルの認識性に比較して低下する度合いが低減され、画像の分解能に近いサイズで、2進データセルを含むマーカーをより安定して認識できる二次元コードの認識方法を提供することができる。
【0054】
また、データセル領域20dの隣り合う2辺には、黒データセル1と白データセル2とが交互に並ぶ第1インデックス21と第2インデックス22とが備えられる。そのため、データセル領域20dにおける2進データセルの配列は、第1インデックス21と第2インデックス22の黒データセル1と白データセル2の位置を認識することで把握することが可能となる。交互に並ぶ黒データセル1と白データセル2との境界は画像認識により容易に検出されるため、2進データセルの配列位置はより確実に認識することが可能であり、結果として安定した2進データの読み取りが可能となる。
【0055】
また、データセル領域20dの隣り合う2辺には、黒データセル1と白データセル2とが交互に並ぶ第1インデックス21と第2インデックス22とを備え、更にそれらが交差する部分の対角側に第3インデックス23を備えている。データセル領域20dの周辺域に第1、第2、第3インデックス21、22、23を備え、これらのインデックスを画像認識することで、より確実に2進データセルの配列位置を認識することが可能となる。具体的には、Webカメラなどで二次元コード100を斜め方向から捉えた場合など、データマトリクス20の画像が正面像として取得できない場合がある。その場合に、交差する2辺およびその対角に備えるインデックスによって、そのゆがみ補正をより正確に行うことが可能となる。結果として安定した2進データの読み取りが可能となる。
【0056】
また、領域11と領域12のそれぞれの色を上記の選択範囲に加えて、使用する環境を撮像して得られるカラー画像を検証し、環境に確認される色との互いの色相角度hの差異が60度から300度の範囲の色から選択した場合、マーカー10を使用しようとする所望の対象領域にはほとんど存在しない組み合わせの色でマーカー10を構成することができる。その結果、マーカー10を誤認識することが少なくなり、安定して検出を行うことができる。
【符号の説明】
【0057】
1…黒データセル、2…白データセル、10…マーカー、11,12…領域、11c,12c…重心、20…データマトリクス、20d…データセル領域、20t…タイミングセル領域、21…第1インデックス、22…第2インデックス、23…第3インデックス、30…正規化用比較パターン、31…黒パターン、32…白パターン、33…グレーパターン、34d,34p…マスク部、35…間隙部、100…二次元コード。

【特許請求の範囲】
【請求項1】
互いに隣り合う第1色の領域と第2色の領域とで構成されるマーカーであって、
前記第1色と前記第2色は、
***表色系における互いの色相角度hの差異が90度から270度の範囲であり、
CIE(Commission Internationale de l'Eclairage)色度図における互いの距離が0.5以上離れている2色であることを特徴とするマーカー。
【請求項2】
前記第1色はグリーンであり、前記第2色はマゼンタであることを特徴とする請求項1に記載のマーカー。
【請求項3】
請求項1または請求項2に記載のマーカーと、
マトリクス状に配列された2進データセルから成るデータマトリクスと、を備え、
前記第1色の領域の重心と前記第2色の領域の重心との距離は、互いに隣り合う前記2進データセルの重心間距離の2倍以上の整数倍であることを特徴とする二次元コード。
【請求項4】
前記2進データセルは、黒データセルおよび/または白データセルで構成され、
前記データマトリクスは、タイミングセル領域とデータセル領域とから成り、
前記タイミングセル領域は、前記黒データセルと前記白データセルとが、前記データマトリクスの一方の配列方向に交互に並ぶ第1インデックスと、前記黒データセルと前記白データセルとが、前記データマトリクスの前記一方の配列方向に交差する他方の配列方向に交互に並ぶ第2インデックスとを備え、
前記データセル領域は、一方の辺が前記第1インデックスに隣り合い、他方の辺が前記第2インデックスに隣り合うマトリクス領域から成ることを特徴とする請求項3に記載の二次元コード。
【請求項5】
少なくとも1つ以上の黒データセル、あるいは少なくとも1つ以上の白データセル、あるいは、それらの組み合わせから成る第3インデックスを更に備え、
前記第3インデックスは、
前記データセル領域において、前記第1インデックスの延長方向と前記第2インデックスの延長方向との交点の対角側に配置されることを特徴とする請求項4に記載の二次元コード。
【請求項6】
画像処理によるマーカーの認識方法であって、
互いに隣り合う第1色の領域と第2色の領域とで構成され、前記第1色と前記第2色は、L***表色系における互いの色相角度hの差異が90度から270度の範囲で、且つCIE色度図における互いの距離が0.5以上離れている2色であるマーカーに対し、
前記マーカーのある対象領域を撮像してカラー画像を取得するステップと、
得られた前記カラー画像を走査して、互いに隣り合う前記第1色の領域と前記第2色の領域とを検出するステップと、
前記第1色の領域の重心位置と前記第2色の領域の重心位置から、前記マーカーの向きおよび傾きを求めるステップと、を含むことを特徴とするマーカーの認識方法。
【請求項7】
前記第1色をグリーンとし、前記第2色をマゼンタとすることを特徴とする請求項6に記載のマーカーの認識方法。
【請求項8】
前記第1色と前記第2色は、それぞれ、更に、
所望の対象領域を撮像して得られるカラー画像における所定の面積を上回る色の色相との互いの前記色相角度hの差異が60度から300度の範囲の色から選択することを特徴とする請求項6に記載のマーカーの認識方法。
【請求項9】
画像処理による二次元コードの認識方法であって、
前記二次元コードは、マトリクス状に配列された2進データセルから成るデータマトリクスで構成し、
前記データマトリクスには、前記データマトリクスの所在および向きを認識するためのマーカーを所定の位置に付属させ、
前記マーカーの所在および向きは、請求項6ないし請求項8のいずれか一項に記載のマーカーの認識方法により認識することを特徴とする二次元コードの認識方法。
【請求項10】
前記画像処理は、カラー画像の圧縮処理を含み、
前記マーカーの面積と前記2進データセルの面積との比率が、
前記カラー画像の圧縮処理における輝度情報の圧縮率と色差情報の圧縮率との差異による色差情報の距離分解能と輝度情報の距離分解能との比率に等しいことを特徴とする請求項9に記載の二次元コードの認識方法。
【請求項11】
画像処理により、請求項5に記載の二次元コードを認識する二次元コードの認識方法であって、
所望の対象領域を撮像してカラー画像を取得するステップと、
前記カラー画像内で互いに隣り合う前記第1色の領域と前記第2色の領域を検出するステップと、
前記第1色の領域の重心位置と前記第2色の領域の重心位置とから前記マーカーの向きを認識するステップと、
前記第1色の領域の重心位置と前記第2色の領域の重心位置とから重心間距離を求めるステップと、
前記マーカーの向きと前記重心間距離の情報から前記第1ないし前記第3インデックスを検出するステップと、
前記第1ないし前記第3インデックスに含まれる前記黒データセルおよび/または前記白データセルの画像情報から、前記カラー画像内の前記データマトリクスの形状を整えて、正規化データマトリクスを取得するステップと、
前記正規化データマトリクスに含まれる前記データセル領域から前記2進データセルを認識し、2進情報を取得するステップと、
を含むことを特徴とする二次元コードの認識方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−84031(P2013−84031A)
【公開日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願番号】特願2011−221591(P2011−221591)
【出願日】平成23年10月6日(2011.10.6)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】