JP4794847B2 - 2次元コードおよび情報処理方法 - Google Patents

2次元コードおよび情報処理方法 Download PDF

Info

Publication number
JP4794847B2
JP4794847B2 JP2004315842A JP2004315842A JP4794847B2 JP 4794847 B2 JP4794847 B2 JP 4794847B2 JP 2004315842 A JP2004315842 A JP 2004315842A JP 2004315842 A JP2004315842 A JP 2004315842A JP 4794847 B2 JP4794847 B2 JP 4794847B2
Authority
JP
Japan
Prior art keywords
information
dimensional code
area
pixel
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004315842A
Other languages
English (en)
Other versions
JP2006127216A (ja
Inventor
晋二 内山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2004315842A priority Critical patent/JP4794847B2/ja
Priority to US11/257,786 priority patent/US7438232B2/en
Publication of JP2006127216A publication Critical patent/JP2006127216A/ja
Application granted granted Critical
Publication of JP4794847B2 publication Critical patent/JP4794847B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Description

本発明は、画像から検出できる2次元コードの構成、2次元コードを画像から検出する方法および装置に関するものである。
[従来技術1]
2次元の領域をある規則で区分し、各区分された領域の明暗によって情報を表現する二次元コードが従来から知られている。通常、これらのコードはカメラによって撮影され、背景からこの2次元コードを識別・検出し、内部に割り当てられた各区分領域の明度に基づいて情報が読み出される。2次元コードには、様々な形状のものが公知の技術として知られており、図9、図10に示されている2次元コードはその一種である。この2次元コードを以降では2次元コード1と呼ぶ。
この2次元コードは、明度の高い背景に対して、明度の低い正方形を外形の形状として持ち、その外枠から一定の間隔を空けて内部を小さい正方形に分割し、それぞれの正方形の明度によってビットを表現する2次元コードである。
[従来技術2]
また、現実空間に仮想空間を融合表示する複合現実感技術において、現実空間の中のカメラの位置姿勢を推定するための一つの方法として、現実空間に配置した四角形の指標が利用されている。複数の四角形の指標を現実空間に配置する要求から、それぞれの四角形を個体として識別するために、四角形の内部に個々のID情報を持たせる構成となっている四角形の指標が提案されている。例えば、非特許文献1の中で開示されている方法として、図12に示す指標1と図13に示す指標2がある。
指標1は、内部を小さな正方形で区分された大きな正方形と、その大きな正方形のある一辺の外側に小さないくつかの正方形を配置した構造となっている。大きな正方形の内部の構造は従来技術1で前述した2次元コード1と同様であり、正方形の外枠から一定の間隔を空けて内部を小さな正方形に均等分割したものである。それぞれの内部の四角形の明度によってビットを表現することができる。指標1は、さらに四角形の外部にも小さい正方形領域をもっており、それらは正方形の基準となる辺を決めるため、すなわち正方形の回転方向を決定するために利用されている。また、その外部に配置する小さな正方形の大きな正方形との間の相対的な位置と数によって、回転方向の決定だけではなく、情報を表現することもできる。
指標2は、明度の高い背景に対して、明度の低い正方形を外形の形状として持っている点に関しては、従来技術1の2次元コード1と上述の指標1と同じである。異なる点は、正方形内部にビットを割り当てる領域の形状であり、この指標においては、円形領域を利用している点である。しかし、正方形の外枠から、ある一定の距離を置いた内部の領域に対して、円形領域を割り当てていることに変わりはない。
X.Zhang,S.Fronz,N.Navab:Visual marker detection and decoding in AR systems:A comparative study,Proc.of International Symposium on Mixed and Augmented Reality(ISMAR’02),2002.
従来技術で述べた2次元コード1、指標1、指標2は、いずれも明度の高い背景に対して、明度の低い正方形を外形の形状として持ち、その外枠から一定の間隔を空けて内部を均等な間隔で分割した区分領域を用意し、それぞれの区分領域の明度によってビットを表現するという点で同じ技術に基づいたものである。
そのとき、外形となる正方形の外枠と内部領域との間の一定の間隔は、情報を載せるために区分された内部の個々の区分領域一つのサイズに対して、同じかもしくは大きく設定されている。例えば、2次元コード1の場合について図11を用いて説明する。図11のd1が、外形の正方形と内部のビット領域との間に設けられた間隔の長さである。一方、d2が内部のビット領域それぞれの一辺の長さである。この図で明らかなように、d1はd2よりも長く設定されている。また、指標1についても同様に図14を用いて説明する。図14のd1は同様に外形の正方形と内部のビット領域との間の間隔の長さであり、d2は内部のビット領域の一辺の長さである。指標1の場合には、d1=d2となるように設定されている。
以下では、2次元コード1、指標1、指標2を総じて2次元コードと呼ぶ。
このように、従来の2次元コードは、外枠と内部のビット領域の間隔d1と内部のビット領域の大きさd2とが、d1≧d2という関係にある。
従来の2次元コードは、外形形状の認識が可能な2次元コードの限界最小サイズと、内部ビット領域が読み取り可能な2次元コードの限界最小サイズが食い違っている。つまり、d1とd2のサイズが最適化されていない。
そのため、2次元コードの外形形状である正方形の認識はできるのに対して、内部のビットを確からしく読み出すことができないという問題があった。他の見方をすると、内部ビット領域を読み出すことが可能な限界最小サイズに基づくと、外形形状を認識するために必要な外枠と内部領域との間の間隔は必要以上に大きいこととなり、画像上で2次元コードが占める面積が必要以上に大きくなってしまうという問題である。
本発明はこの点に鑑みてなされたものであり、上述の問題を解決した2次元コードを提供することを目的とする。
また、本願請求項1に記載の発明は、外枠領域と情報領域とを有する2次元コードを撮影画像から検出し、複数のエリアを有する情報領域で示される情報を取得する情報処理方法であって、撮影画像データを取得する取得工程と、前記撮影画像データの少なくとも1画素の幅の前記2次元コードの外枠領域から、前記2次元コードの幾何形状に応じた形状を有する領域を検出する検出工程と、
前記検出された領域内の複数のエリアの画像情報を取得し、前記情報領域で示される情報を識別する取得する情報取得工程とを有し、前記2次元コードは、前記複数のエリアの間に枠線がない2次元コードであって、前記エリアの大きさが外枠領域の大きさに対して2倍であることを特徴とする。
また、本願請求項4に記載の発明は、背景と明度または色によって識別可能な多角形の外形形状をもち、その内部の外周に一定の間隔をおいてその内部を特定のサイズに分割し、分割された各領域のそれぞれの明度または色によって、情報を表現する、該各領域の間に枠線がない2次元コードを撮影画像から検出し、複数のエリアを有する情報領域で示される情報を取得する情報処理方法であって、背景と明度または色によって識別可能な多角形の外形形状をもち、その内部の外周に一定の間隔をおいてその内部を特定のサイズに分割し、分割された各領域のそれぞれの明度または色によって、情報を表現する2次元コードであって、明度または色差に基づいて、多角形の外形形状を検出する多角形検出工程と、前記多角形検出工程で検出された多角形を基準として、各分割領域の画像中での位置の明度または色を読み出す画素値読み出し工程と、該画素値読み出し工程で読み出された明度または色を2値または多値情報に変換する情報変換工程とを有し、多角形の外形形状内部の外周の一定の間隔が、内部の各エリアのサイズに対して半分のサイズであることを特徴とする。
本発明によれば、多角形の外形を持ち内部にビット領域を持つ2次元コードが画像に映ったときに、外枠と内部のビット領域との間隔が1画素程度となる場合においても、内部のビット値を確からしく読み出すことができる。
(実施例1)
画像から2次元コードを検出する方法として、次の二つの工程を含む方法が用いられる。
一つの工程は、背景から外形四角形を検出する工程であり、もう一つの工程は、検出された外形四角形を基準として内部のビット領域の位置決めをし、その明度を読み出す工程である。外形正方形と内部ビット領域との間に間隔が設けてある理由は、この二つの工程のうちの前者である背景から外形正方形を検出するために必要であるためである。より具体的には、2次元コードで表現する情報がどのような値であろうとも、背景から外形四角形を検出するためである。2次元コードで表現する情報は、内部のビット領域の明度を明るいもの(すなわち白)と暗いもの(すなわち黒)に塗り分けることによって表現されるため、内部の領域の明度は様々に変化することとなる。明度の高い背景から2次元コード全体を表す明度の低い正方形を検出するためには、明度が不確定となる内部のビット領域と外枠との間に十分な幅が必要となる。
ここで、外枠と内部のビット領域との間の間隔、および、内部の個々のビット領域のサイズは、画像から識別可能なサイズに基づき決定される。識別可能なサイズは、2次元コードが画像中で映る大きさと撮像する画像の解像度と基づき決定される。
まずは、図5を利用して背景から正方形を検出する方法を説明する。そして、外枠と内部のビット領域との間の間隔において必要な要求を説明する。
図5(a)は、内部もすべて黒い正方形を示しており、この黒い正方形が白い背景の上に配置されているマーカである。このマーカが配置されているシーンをカメラで撮影すると、図5(b)に示すように撮像される。カメラでの撮影は必ずしも正方形に正対する姿勢で撮影されるとは限らない上に、画像の横軸縦軸と正方形の辺の向きも揃っているとは限らないため、一般にはこの図に示したように斜めに傾いた四角形として観察される。なおかつ、画像は格子状に画像を区分する小さな領域である画素が並んだもので構成されているため、図5(b)に示すように、特に図5(a)の正方形と背景との境界部分では、正方形の黒と背景の白とが混ざりグレーとして観察される。
図5(b)のような画像からこの四角形を検出するためには、図5(c)に示すようにその画像を明度に基づいて二値化し、得られた連続領域の境界上の画素を、図5(d)に示すように抽出する。なお、ここでは図5(b)の画像を二値化して境界上の画素を求める方法の説明を行ったが、図5(b)の画像に対してエッジ検出処理を施すことによって、境界上の画素を求める方法を用いても構わない。
そして、得られた境界上の画素を折れ線で近似したときに、4つのコーナー点とそれらを結ぶ直線とによって十分に近似できれば、四角形であると判定する。
ここまでで、図5を用いて内部がすべて黒の正方形を画像から検出する方法を説明した。もしも、図5(a)の内部に白い領域があったとしても、結果として図5(d)に示すように外周を成す画素が連続して得られれば正方形を検出できる。すなわち、撮影画像において、正方形の外枠と内部の白領域と間の間隔が1画素以上の幅をもっていれば、その正方形を検出できる。
これを2次元コードの外枠と内部のビット領域に当て嵌めて考えると、その間の間隔は画像で撮像したときに1画素以上の大きさになるように予め考慮して設定されている必要があるということを意味する。
次に、2次元コードの内部のビット領域の個々のサイズに関して、必要とされる要求を説明する。もしも、個々のビット領域が画像に映った画像面上での大きさが1画素未満となってしまった場合には、隣接するビット領域が一画素の中に混ざってしまうため、検出が不可能になる。すなわち、個々のビット領域の大きさは、2次元コードを画像で撮影したときに、少なくとも1画素以上でなければならない。しかしながら、1画素以上のサイズを有していれば検出が可能であるかというとそうではない。これを図6〜図8を用いてより詳細に説明する。
図6の801はある一つの2次元コードを撮影した画像の一部を拡大した部分画像を表す。この画像中の二次元コードの正方形外形が背景から検出された結果、802で示した四角形が検出されたとする。これは、図5(d)のように検出された四角形の境界上の画素の並びから、4辺に相当する部分をそれぞれ直線近似することによって得られる。
内部のビット領域の位置(中心位置)は、この802の四角形を基準として求められる。例えば、内部のある一つのビット領域の位置は、804に中心点があるとして計算されるとする。撮影画像におけるビット領域の位置は、物理的な2次元コード上でのビット領域の位置に基づき算出することができる。例えば、物理的な2次元コード上でのビット領域の位置を利用して802の四角形の各辺をある比率で割った2本の直線(803)の交点として求めることができる。また、四角形802の各頂点と物理的な正方形頂点との対応関係から2次元射影変換(Homography)を算出し、得られた2次元射影変換を利用して求めることができる。
また、同様な方法により、そのビット領域となる小四角形は805に示すように画像上での位置を計算できる。
得られたビット領域の中心点804の明度値は、この2次元コードを撮影した画像の画素値を基にして求める。図7は、図6の804近辺を拡大した図である。901は804と同じであり、ビット領域の中心点を表す。902は804と同じであり、ひとつのビット領域である小四角形の画像上での位置を表す。画像を構成する画素は、903のように画像面を埋め尽くす格子上の領域であり、その画素値はその領域の平均的な色や明度を表現しているものであり、各格子で区切られた画素領域の中心点をその画素の位置として考えることができる。そこで、この903の画素の並びの中から、901に最も近い位置の画素を901と同じ色や明度をもつと近似する。すなわち、901の明度値を904に示す画素の値を基にして求める。この方法は、ビット領域の中心点の最近傍画素をそのまま利用する方法であり、ニアレストネイバー法とも呼ばれる方法である。
他の方法としては、図8に示す方法によってビット領域の明度を求めることができる。図8(a)の1001は804と同じビット領域の中心点をあらわし、1002はビット領域である小四角形805を表す。1001の位置を(x、y)と表すとすると、x、yそれぞれに対して1画素距離内にある画素は、1003、1004、1005、1006の4つの画素である。それらの4画素の画素値を基にして、そのビット領域の明度値を求める。より具体的には、図8(b)を用いて説明する。この図に示すように、1003、1004、1005、1006の画素の画素位置をそれぞれP1、P2、P3、P4とする。1001のx座標は、P3とP1のx座標をs:1−sで分割した値であり、1001のy座標は、P4とP3のy座標をt:1−tで分割した値となる。そこで、このビット領域の明度をこれらの4画素の画素値をsとtを利用して内挿することによって求める。例えば、1003の画素値、1004の画素値、1005の画素値、1006の画素値から求められるそれぞれの明度をv1、v2、v3、v4とすると、このビット領域の明度vは、双一次補間計算により、
v=t・{s・v1+(1−s)・v3}+(1−t){s・v2+(1−s)・v4}
として求めることができる。なお、この補間計算は、双一次補間ではなくとも、1001とP1、P2、P3、P4との距離に基づいて内挿計算を行っても良いし、他の如何なる補間計算を用いてもよい。
以上説明した処理によって、ビット領域の明度値を求めることができる。いずれの方法にしろ、ビット領域の画像上での大きさ、すなわち902で示した四角形の大きさが2画素以上の幅を持っていないと、そのビット領域の明度を確からしく求めることができない。それは、図7の902が画素幅の2倍以上のサイズがなければ、最近傍画素を選んだとしてもビット領域の外部の位置にある画素の明度を利用してしまうためである。同様に図8の場合においても1002が画素幅の2倍以上のサイズがなければ、1002外部に中心がある画素の画素値を利用して双一次補間計算がなされるため、1001の明度値として確からしい値を得ることができない。
以上説明したように、2次元コードの外枠と内部のビット領域との間の間隔に関しては、画像に映ったときに1画素以上の幅となれば検出することができるのに対して、内部のビット領域は2画素以上の幅がなければ確からしい値を求めることができない。
それに対して、従来技術の2次元コードは、外枠と内部のビット領域の間隔d1と内部のビット領域の大きさd2とが、d1≧d2という関係にあることは前述した通りである。すなわち、外枠と内部のビット領域との間隔が、画像上で1画素幅程度の小ささで画像に映っているような場合、2次元コードの外形形状である正方形の認識はできるのに対して、内部のビットを確からしく読み出すことができないという問題があった。他の見方をすると、外形形状の認識が可能な2次元コードの限界最小サイズと、内部ビット領域が読み取り可能な2次元コードの限界最小サイズが食い違っているということである。内部ビット領域を読み出すことが可能な限界最小サイズに基づくと、外形形状を認識するために必要な外枠と内部領域との間の間隔は必要以上に大きいこととなり、画像上で2次元コードが占める面積が必要以上に大きくなってしまうという問題でもある。
以下、図面を用いて、従来の2次元コードが有する問題を解決した2次元コードの実施形態、2次元コード検出装置の構成例、処理手順を説明する。
図1は、2次元コードの実装形態である。図1(a)の101は2次元コードの背景となる白い背景であって、その上に黒い正方形外形として2次元コードが形成されている。その外枠からd1の距離をおいて内部にビットを表すための領域を用意する。内部のビットを表す領域は、nXnの領域に分割され、各領域の一辺の長さはd2である。さらに、d2=2xd1である。内部のビットを表す領域は、1を表現するときは白とし、0を表すときは黒とする。0を表現するときを黒とし、1を表現するときを白としてもよい。
また、図1(b)に示すように黒い背景の上に白い正方形外形をなし、その外枠からd1の距離を置いて内部のビットを表すための領域を用意してもよい。さらには、個々の内部の領域を白か黒かの2値を表現するのではなく、明度の異なるn値で塗り分け、1つの領域でn状態を表現するようにしてもよいし、異なるm通りの色によって塗り分け、m状態を表現するようにしてもよい。
図1では、内部のnxnの分割数として、実際には4x4分割としているが、図2に示すように内部の分割数はいくらであってもよい。図2(a)は2x2分割、図2(b)は3x3分割、図2(c)は8x8分割とした場合の例である。いずれの場合であっても、2次元コードの外枠と内部のビット領域との間の間隔と内部のビット領域のサイズは1:2の比となっている。
さらに、図1ではd2=2xd1としているが、正確にd2はd1の2倍でなければならないわけではない。ほぼ2倍となる大きさ(例えば2。1倍)に設定されていればよい。
次に、図1で示した2次元コードを検出する2次元コード検出装置の構成例を示すブロック図を図3に示す。
図3の301はカメラであり、図1で示した2次元コードを撮像する。撮像画像は、302の画像取り込み部を通して304のバスコントローラの調停のもと、305のメモリに書き込まれる。また、305のメモリには、本実施例の処理手順が記憶されていて、303がその処理手順に従って処理を行うCPUである。304は、303のCPU、302の画像取り込み部、305のメモリ間でデータの入出力と調停を行うバスコントローラである。
この図3で示したブロック図で構成される2次元コード検出装置の処理手順を示すフローチャートを図4に示し、図4を用いて処理手順を説明する。
まず、ステップS401にて図1に示した2次元コードを301のカメラで撮影し、撮影した画像を302の画像取り込み部を通して取得する。得られた画像からステップS402にて、画像に映った2次元コードの外形形状である四角形を検出する。撮像された画像を二値化し、得られた連続領域の境界上の画素を抽出し、境界上の画素を折れ線で近似したときに、4つのコーナー点とそれらを結ぶ直線とによって十分に近似できるかどうかを判定し、十分に近似できれば各々の4辺に相当する画素の並びを直線近似することによって、四角形を検出する。このとき、二値化を行って連続領域の境界上の画素を抽出する代わりに、エッジ検出を行うことで境界上の画素を抽出しても構わない。
次にステップS403にて、ある一つの内部のビット領域の位置を、検出された四角形外形を基準として計算する。図6に示したように、物理的な2次元コード上でのビット領域の位置を利用して802の四角形の各辺をある比率で割った2本の直線(803)の交点として求めることができるし、四角形802の各頂点と物理的な正方形頂点との対応関係から2次元射影変換(Homography)を算出し、得られた2次元射影変換を利用して求めてもよい。
ステップS404にて、得られたビット領域の位置を基にしてそのビット領域の明度を求める。ニアレストネイバー法、もしくは双一次補間によって取得することができる。
ステップS405にて、得られた明度値がある閾値よりも大きい場合には1とし、そうでない場合は0とすることで、そのビット領域のビット値に変換する。ここで、ある閾値よりも大きい場合を0とし、ある閾値よりも小さい場合を1としてもよい。また、閾値を小さい順にn個用意し、1つ目の閾値よりも小さいものを0、1つ目の閾値以上でかつ2つ目の閾値未満の場合を1、n−1つ目の閾値以上でかつn番目の閾値未満の場合をn−1、n番目の閾値以上の場合をnというように、明度をn値に変換してもよい。この場合、一つの領域は1ビット(すなわち2値)を表現するものではないため、正確にはビット領域と記述することは正しくないが、便宜的にこの場合であっても内部ビット領域であると捉えることとすれば、本実施例で記述した方法のすべてがそのまま適用できる。
ステップS403からS405の処理を、すべての内部ビット領域に対して処理が終わるまで繰り返す。これは、ステップS406にて、すべての内部ビット領域に対して処理が終わったかどうか判定し、終わっていなければステップS403へと戻り、終わっていれば終了する。
このように、本実施例では、撮影画像からの2次元コードの検出を2次元コードの外形形状特徴を用いて検出する(ステップS402)。そして、2次元コードのビット領域の識別を、ビット領域の明度値に基づき識別する(ステップS403〜ステップS406)。
本実施例の2次元コードは、外形形状を識別するための外枠と内部のビット領域の間隔のサイズとビット領域のサイズとを、これらの検出および識別のアルゴリズムの特性に基づき最適化している。
よって、2次元コードが画像に映ったときに、外枠と内部のビット領域の間隔と内部のビット領域との間隔が1画素程度となる場合においても、内部のビット値を確からしく読み出すことが可能となる。つまり、撮影画像から2次元コードを検出できた場合は、内部のビット値を確からしく読み出すことができる。言い換えると、撮影画像から2次元コードを検出できたにもかかわらず、内部ビットをご認識する確立を低減させることができる。
(変形例)
図1で示した実施例1の2次元コードは、その外形形状として正方形の代わりに長方形などの他の多角形を用いても良い。
また、上記実施例では、外枠と内部のビット領域の間隔d1と内部のビット領域のサイズd2との関係が、ほぼd2=2xd1としたが、d2を2xd1より大きくしても構わない。ビット領域のサイズを大きくすると、内部ビットの認識精度は高くなる。したがって、用途に応じてd1の大きさを2倍より大きくしても構わない。
また、実施例1では、個々のビット領域は白黒に塗り分けられていて、その明度を閾値判定することによって1/0である二値に変換する方法、および複数の明度を利用してn値に変換する方法として説明を行ったが、個々のビット領域を複数の色によって塗り分けても良い。その場合であっても、ニアレストネイバー法、あるいは双一次補間法などの近傍画素からの補間法によって、個々の領域の色を取得できることに変わりはない。得られた色を複数(m個)の登録済み色候補の中から最も確からしいものとして選択することによって、m個の状態に変換することができる。個々の内部ビット領域の塗り分け方法は如何なる方法であっても構わない。
また、上述の実施例で説明した指標識別装置と同等の機能を複数の機器から構成されるシステムによって実現しても良い。
尚、前述した実施例の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線/無線通信を用いて当該プログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムを実行することによって同等の機能が達成される場合も本発明に含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−R、DVD−RW等の光/光磁気記憶媒体、不揮発性の半導体メモリなどがある。
有線/無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイル等、クライアントコンピュータ上で本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムデータファイル)を記憶し、接続のあったクライアントコンピュータにプログラムデータファイルをダウンロードする方法などが挙げられる。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置することも可能である。
つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルを複数のユーザに対してダウンロードさせるサーバ装置も本発明に含む。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件を満たしたユーザに対して暗号化を解く鍵情報を、例えばインターネットを介してホームページからダウンロードさせることによって供給し、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施例の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施例の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施例の機能が実現され得る。
第1実施例の2次元コードの構成図である。 第1実施例の2次元コードのその他の構成図である。 第1実施例の2次元コード検出装置を表すブロック図である。 第1実施例の2次元コード検出装置が行う処理のフローチャートである。 2次元コードの外形正方形を検出する方法を説明するための模式図である。 2次元コードの外形正方形である画像上での四角形の検出結果とそれを基準に内部ビット領域を決定することができることを表す模式図である。 内部ビット領域の明度をニアレストネイバー法で取得することを説明するための模式図である。 内部ビット領域の明度を近傍4画素の画素値から補間して求めることを説明するための模式図である。 従来の2次元コードの1例である。 従来の2次元コードの1例である。 従来の2次元コードの外枠と内部ビット領域の間隔と、内部ビット領域のサイズの関係を示す図である。 従来利用されていた正方形形状を基本とした指標の例であり、2次元コードの一種である。 従来利用されていた正方形形状を基本とした指標の例であり、2次元コードの一種である。 図12で示した2次元コードの外枠と内部ビット領域の間隔と、内部ビット領域のサイズの関係を示す図である。

Claims (14)

  1. 外枠領域と情報領域とを有する2次元コードを撮影画像から検出し、複数のエリアを有する情報領域で示される情報を取得する情報処理方法であって、
    撮影画像データを取得する取得工程と、
    前記撮影画像データの少なくとも1画素の幅の前記2次元コードの外枠領域から、前記2次元コードの幾何形状に応じた形状を有する領域を検出する検出工程と、
    前記検出された領域内の複数のエリアの画像情報を取得し、前記情報領域で示される情報を識別する取得する情報取得工程とを有し、
    前記2次元コードは、前記複数のエリアの間に枠線がない2次元コードであって、前記エリアの大きさが外枠領域の大きさに対して2倍であることを特徴とする情報処理方法。
  2. 前記検出工程は、
    前記撮影画像データに対して2値化処理を行い、2値画像を生成する2値化処理工程と、
    前記2値画像から連続領域の境界を検出する境界検出工程とを有することを特徴とする請求項1記載の情報処理方法。
  3. 前記情報取得工程は、
    前記2次元コードにおける物理的なエリア位置情報に対応する画像情報を求める工程と、
    前記複数のエリアの各々に対応する画像情報から前記情報を識別する識別工程とを有することを特徴とする請求項1または2に記載の情報処理方法。
  4. 背景と明度または色によって識別可能な多角形の外形形状をもち、その内部の外周に一定の間隔をおいてその内部を特定のサイズに分割し、分割された各領域のそれぞれの明度または色によって、情報を表現する、該各領域の間に枠線がない2次元コードを撮影画像から検出し、複数のエリアを有する情報領域で示される情報を取得する情報処理方法であって、
    少なくとも1画素の幅を持つ明度または色差に基づいて、多角形の外形形状を検出する多角形検出工程と、
    前記多角形検出工程で検出された多角形を基準として、各分割領域の画像中での位置の明度または色を読み出す画素値読み出し工程と、
    該画素値読み出し工程で読み出された明度または色を2値または多値情報に変換する情報変換工程とを有し、
    多角形の外形形状内部の外周の一定の間隔が、内部の各エリアのサイズに対して半分のサイズであることを特徴とする情報処理方法。
  5. 前記多角形検出工程は、
    明度または色によって背景から分離された多角形領域に対して、画素の連結情報に基づいて最外周となる画素を見つけ出し、最外周となる画素の並びを基にして多角形を検出する方法であることを特徴とする請求項4に記載の情報処理方法。
  6. 前記画素値読み出し工程は、
    前記多角形検出工程で画像から検出された多角形外形形状と物理的な外形形状との間の関係から、2次元射影変換に相当する情報を算出する算出工程と、
    前記2次元射影変換相当の情報から各分割領域の画像中での位置を計算する画素位置計算工程と、
    前記計算された画素位置の明度または色を取得する取得工程とを有することを特徴とする請求項4または5に記載の情報処理方法。
  7. 前記取得工程は、前記画素位置計算工程で計算された非整数位置の最近傍となる画素の明度または色を基に算出するか、もしくは、前後左右の整数位置4近傍画素の明度または色を基に内挿計算して算出することを特徴とすることを特徴とする請求項4乃至6のいずれか1項に記載の情報処理方法。
  8. 前記2次元コードの外形形状が四角形であることを特徴とする請求項1乃至7の何れか1項に記載の情報処理方法。
  9. 前記2次元コードの内部のエリアの形状が四角形であることを特徴とする請求項1乃至8の何れか1項に記載の情報処理方法。
  10. 請求項1乃至9の何れか1項に記載の情報処理方法で用いられる2次元コード。
  11. 請求項1乃至9のいずれか1項に記載の情報処理方法を、コンピュータにて実行させるためのコンピュータプログラム。
  12. 請求項11記載のコンピュータプログラムを格納したコンピュータ読み取り可能な記録媒体。
  13. 外枠領域と情報領域とを有する2次元コードを撮影画像から検出し、複数のエリアを有する情報領域で示される情報を取得する情報処理装置であって、
    撮影画像データを取得する取得手段と、
    前記撮影画像データの少なくとも1画素の幅の前記2次元コードの外枠領域から、前記2次元コードの幾何形状に応じた形状を有する領域を検出する検出手段と、
    前記検出された領域内の複数のエリアの画像情報を取得し、前記情報領域で示される情報を識別する取得する情報取得手段とを有し、
    前記2次元コードは、前記複数のエリアの間に枠線がない2次元コードであって、前記エリアの大きさが外枠領域の大きさに対して2倍であることを特徴とする情報処理装置。
  14. 背景と明度または色によって識別可能な多角形の外形形状をもち、その内部の外周に一定の間隔をおいてその内部を特定のサイズに分割し、分割された各領域のそれぞれの明度または色によって、情報を表現する、該各領域の間に枠線がない2次元コードを撮影画像から検出し、複数のエリアを有する情報領域で示される情報を取得する情報処理装置であって、
    少なくとも1画素の幅を持つ明度または色差に基づいて、多角形の外形形状を検出する多角形検出手段と、
    前記多角形検出手段で検出された多角形を基準として、各分割領域の画像中での位置の明度または色を読み出す画素値読み出し手段と、
    該画素値読み出し手段で読み出された明度または色を2値または多値情報に変換する情報変換手段とを有し、
    多角形の外形形状内部の外周の一定の間隔が、内部の各エリアのサイズに対して半分のサイズであることを特徴とする情報処理装置。
JP2004315842A 2004-10-29 2004-10-29 2次元コードおよび情報処理方法 Expired - Fee Related JP4794847B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004315842A JP4794847B2 (ja) 2004-10-29 2004-10-29 2次元コードおよび情報処理方法
US11/257,786 US7438232B2 (en) 2004-10-29 2005-10-25 Two-dimensional code and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004315842A JP4794847B2 (ja) 2004-10-29 2004-10-29 2次元コードおよび情報処理方法

Publications (2)

Publication Number Publication Date
JP2006127216A JP2006127216A (ja) 2006-05-18
JP4794847B2 true JP4794847B2 (ja) 2011-10-19

Family

ID=36260671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004315842A Expired - Fee Related JP4794847B2 (ja) 2004-10-29 2004-10-29 2次元コードおよび情報処理方法

Country Status (2)

Country Link
US (1) US7438232B2 (ja)
JP (1) JP4794847B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0714333A2 (pt) * 2006-07-19 2013-05-07 B Core Inc sÍmbolo àtico, artigo ao qual o sÍmbolo àtico estÁ fixado, mÉtodo para fixar o sÍmbolo àtico ao artigo, mÉtodo de decodificaÇço de sÍmbolo àtico, dispositivo relativo, e programa relativo
AU2008226843A1 (en) * 2007-03-08 2008-09-18 Microscan Systems, Inc. Detection and segmentation of a two-dimensional code
TW200937299A (en) * 2007-11-09 2009-09-01 B Core Inc Optical identification code and marking method of the same and recognition method of the same and goods marked with the same, recognition method of colour and computer program executing the ridognition method of colour, auto identification code using col
US7980473B2 (en) * 2008-02-28 2011-07-19 Microsoft Corporation Camera based code reading
KR20120110817A (ko) * 2011-03-30 2012-10-10 삼성전자주식회사 전자펜 및 전자펜을 이용한 입력 방법, 전자펜 입력을 위한 디스플레이 장치
JP5553920B2 (ja) * 2012-06-01 2014-07-23 パナソニック株式会社 表示パネルおよび表示装置
US8712566B1 (en) * 2013-03-14 2014-04-29 Zazzle Inc. Segmentation of a product markup image based on color and color differences
EP2979228A1 (en) * 2013-03-27 2016-02-03 Smartglyph Limited Optical code
US20150035846A1 (en) * 2013-08-02 2015-02-05 Alex Ioannidis Scannable time-varied geometric representation of data
CN104424241B (zh) * 2013-08-27 2019-02-12 腾讯科技(深圳)有限公司 基于二维码的网站链接处理方法、装置及系统
CN104517110B (zh) * 2013-09-29 2018-01-05 北大方正集团有限公司 一种二维码图像的二值化方法及系统
CN104517089B (zh) * 2013-09-29 2017-09-26 北大方正集团有限公司 一种二维码解码系统及其方法
US10235596B2 (en) * 2013-11-06 2019-03-19 Research & Business Foundation Sungkyunkwan University System and method for transferring data using image code, outputting image code on display device, and decoding image code
US10546172B2 (en) * 2015-03-30 2020-01-28 Temptime Corporation Two dimensional barcode with dynamic environmental data system, method, and apparatus
CN106778440B (zh) * 2016-12-21 2020-04-21 腾讯科技(深圳)有限公司 二维码识别方法及装置
CN107729789A (zh) * 2017-09-04 2018-02-23 华南理工大学 一种基于差异背景颜色的快递单制作与条形码定位识别方法
CN109271824B (zh) * 2018-08-31 2021-07-09 出门问问信息科技有限公司 一种识别二维码图像的方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6165375A (ja) * 1984-09-06 1986-04-03 Kyoritsu Denshi Sangyo Kk マ−クコ−ド及びその読取装置
US4924078A (en) * 1987-11-25 1990-05-08 Sant Anselmo Carl Identification symbol, system and method
US5126542A (en) * 1988-05-05 1992-06-30 International Data Matrix, Inc. Dynamically variable machine readable binary code and method for reading and producing thereof
JP3209108B2 (ja) * 1996-08-23 2001-09-17 松下電器産業株式会社 2次元コード読み取り装置
JP3716615B2 (ja) * 1998-04-22 2005-11-16 株式会社デンソー 2次元コード印刷用データの作成装置及び記録媒体
US6267296B1 (en) * 1998-05-12 2001-07-31 Denso Corporation Two-dimensional code and method of optically reading the same
US6802454B1 (en) * 1999-07-27 2004-10-12 International Business Machines Corporation Interleaved sequencing method for multiple two-dimensional scanning codes
US6866199B1 (en) * 2000-08-09 2005-03-15 Eastman Kodak Company Method of locating a calibration patch in a reference calibration target
US6456798B1 (en) * 2000-08-09 2002-09-24 Eastman Kodak Company Barcode and data storage arrangement on a photographic element
JP2003058841A (ja) * 2001-08-09 2003-02-28 Satoshi Mizoguchi 二次元コード
JP4301775B2 (ja) * 2002-07-18 2009-07-22 シャープ株式会社 2次元コード読み取り装置,2次元コード読み取り方法,2次元コード読み取りプログラム及び該プログラムの記録媒体
JP2004054529A (ja) * 2002-07-18 2004-02-19 Sharp Corp 2次元コード読み取り方法,2次元コード読み取りプログラム,該2次元コード読み取りプログラムの記録媒体及び2次元コード読み取り装置
JP4276972B2 (ja) * 2003-03-17 2009-06-10 株式会社リコー 画像認識装置及び画像認識方法
US6814291B1 (en) * 2003-12-15 2004-11-09 Pitney Bowes Inc. Robust barcode reader

Also Published As

Publication number Publication date
JP2006127216A (ja) 2006-05-18
US7438232B2 (en) 2008-10-21
US20060091215A1 (en) 2006-05-04

Similar Documents

Publication Publication Date Title
JP4794847B2 (ja) 2次元コードおよび情報処理方法
JP5908113B2 (ja) 二次元コード
US7942340B2 (en) Two-dimensional code, and method and apparatus for detecting two-dimensional code
CN102243704B (zh) 用于二维码的定位系统、二维码的识别方法及设备
JP3883696B2 (ja) 多数の写真をスキャンしかつ検出するとともに人工エッジを除去するための方法
JP4726257B2 (ja) 画像処理方法およびその装置
CN111435438A (zh) 适于增强现实、虚拟现实和机器人的图形基准标记识别
JP5791826B2 (ja) 二次元コード
JP2004140764A (ja) 画像処理装置及び画像処理方法
CN112243518A (zh) 获取深度图的方法、装置及计算机存储介质
JP2011237296A (ja) 3次元形状計測方法、3次元形状計測装置、及びプログラム
JP2008159055A (ja) バーコード復号方法及び装置
JP5699621B2 (ja) 画像処理装置、画素補間方法およびプログラム
KR20170047780A (ko) 적응적 윈도우 마스크를 이용하는 로우 코스트 계산장치 및 그 방법
JP2007172596A (ja) 2次元コード、2次元コード検出方法、および2次元コード検出装置
JP6785546B2 (ja) 二次元コードの解析方法、二次元コードの解析装置及び二次元コードを解析するプログラム
JP7136721B2 (ja) 演算装置、視差算出方法
JP2004520660A (ja) 深度マップの計算
JP5737387B2 (ja) 画像処理装置
JP5657503B2 (ja) 読取装置、方法及びプログラム
JP5708305B2 (ja) 画像認識装置、画像認識方法及び画像認識用コンピュータプログラム
JP4804125B2 (ja) 2次元コード、2次元コード検出方法、および2次元コード検出装置
JP4351090B2 (ja) 画像処理装置および画像処理方法
JP6952846B2 (ja) 二次元コード
JP4497880B2 (ja) 指標識別方法および装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071029

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100201

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100630

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110124

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110622

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110628

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110719

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110727

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140805

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees