WO2013027234A1 - サテライトドット方式による二次元コードとその読み取り方法 - Google Patents

サテライトドット方式による二次元コードとその読み取り方法 Download PDF

Info

Publication number
WO2013027234A1
WO2013027234A1 PCT/JP2011/004643 JP2011004643W WO2013027234A1 WO 2013027234 A1 WO2013027234 A1 WO 2013027234A1 JP 2011004643 W JP2011004643 W JP 2011004643W WO 2013027234 A1 WO2013027234 A1 WO 2013027234A1
Authority
WO
WIPO (PCT)
Prior art keywords
dot
dots
data
marker
center point
Prior art date
Application number
PCT/JP2011/004643
Other languages
English (en)
French (fr)
Inventor
清 高見
和 嶋崎
Original Assignee
Zak株式会社
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 Zak株式会社 filed Critical Zak株式会社
Priority to PCT/JP2011/004643 priority Critical patent/WO2013027234A1/ja
Publication of WO2013027234A1 publication Critical patent/WO2013027234A1/ja

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

Definitions

  • the present invention relates to a satellite dot type two-dimensional code and a reading method thereof, and more particularly, to a method of expressing digital data by the positional relationship between marker dots and satellite dots arranged in a grid pattern on a plane.
  • barcodes and QR codes are known as methods for expressing data by line thickness and pattern.
  • the barcode and QR code need to be provided separately on the paper surface, which limits the paper surface design.
  • a technology has been developed in which various information can be read by printing dots printed on a printed material so that they are hardly discernable with the naked eye, and reading the dot pattern with a dedicated device.
  • Patent Literature 1 discloses a code composed of a virtual raster point that is an intersection of raster lines and a dot called a marking that is located at a predetermined distance from the virtual raster point, Techniques for reading data by detecting dot misalignment or the like are disclosed.
  • Patent Document 2 discloses a technique for storing data by placing an information dot at an end point represented by a vector with a virtual point at the center surrounded by four grid dots and using the virtual point as a start point. It is disclosed. Patent Document 2 further discloses a technique for correcting distortion by converting a space formed by four grid dots into a square.
  • Patent Document 2 discloses distortion correction, four lattice dots must be used for each element, and the number of dots increases as a whole, and dots are densely packed. If the dots are dense, reading errors are likely to occur, and printing must be performed at a high resolution to prevent the errors.
  • An object of the present invention is to provide a satellite dot type two-dimensional code and a reading method thereof that are very flexible with respect to the distance and inclination between the code and a reading device when reading data.
  • the present invention is a two-dimensional code in which a plurality of code patterns are arranged in a grid pattern on a plane, and each of the code patterns includes a plurality of data elements representing bit data and an array of the plurality of data elements
  • One or more header elements for indicating the position and direction of each of the plurality of data elements are arranged in a grid pattern, and each of the plurality of data elements is positioned on a trajectory centered on the marker dot and the marker dot.
  • the bit data is identified by the positional relationship of the data satellite dots with reference to the marker dots, and the header element is a loop around the marker dots and the marker dots.
  • a plurality of header satellite dots located on orbit, the marker dots of the plurality of data elements and the The said marker dot header element, and key being arranged on an imaginary grid.
  • the present invention is also a method for reading a two-dimensional code in which a plurality of code patterns are arranged in a grid pattern on a plane, each code pattern comprising a plurality of data elements representing bit data and an array of the data elements
  • the header elements for indicating the position and direction of the two-dimensional code are arranged in a grid pattern.
  • marker dots that serve as reference points are actually printed in a lattice pattern, so that distortion due to tilt is unlikely to occur. Further, since the data is read by detecting the position information of the satellite dot centered on the marker dot, the distance and the inclination can be detected from the dot interval and displacement. For this reason, it is very flexible with respect to the distance, direction, and inclination from the reading device to the two-dimensional code.
  • FIG. 1 is a diagram showing an entire two-dimensional code 1 printed on a paper surface.
  • the two-dimensional code 1 is composed of a plurality of code patterns 2 arranged in a lattice pattern on a plane.
  • the code pattern 2 is a unit expressing one unit of digital data.
  • each code pattern 2 is surrounded by a dotted line in order to clarify the division of the code pattern 2, but this dotted line is not actually printed.
  • nine 3 ⁇ 3 code patterns 2 are arranged, but may be more or less than nine.
  • the plurality of code patterns 2 are the same pattern in one two-dimensional code 1 so that the same result is obtained regardless of which code pattern 2 is read. By printing the same pattern repeatedly, information can be read out even if part of the pattern becomes dirty.
  • FIG. 2 is a diagram showing one code pattern 2.
  • the code pattern 2 has a plurality of data elements 21 and one or more header elements 22 arranged in a lattice pattern.
  • one code pattern is constituted by nine elements of 3 ⁇ 3, but the number of elements may be more or less than nine as long as they are arranged in a lattice pattern. The number of elements varies depending on the size of data to be expressed.
  • Data element 21 is used to represent data
  • header element 22 is used to indicate the position and orientation of the array of data elements 21. Details will be described later.
  • the data element 21 is composed of marker dots M and data satellite dots 0 to 7 located on a trajectory centered on the marker dots M.
  • the number of marker dots M is always one, but the number of data satellite dots may be one in one data element or two or more depending on the size of data to be expressed.
  • the example of FIG. 2 shows a case where there is one data satellite dot. Further, the orbit of the satellite dot for data may be a circular orbit as in the example of FIG. 2 or a deformed orbit as will be described later.
  • the header element 22 includes a marker dot M and a plurality of header satellite dots positioned on the orbit of the marker dot M.
  • the header satellite dots are usually composed of three, but are not limited to three. In FIG. 2, the lattice and the trajectory of each element are described, but the lattice and the trajectory are not printed in an actual two-dimensional code. Therefore, the two-dimensional code that is actually printed is only dots.
  • the marker dot M is a dot which becomes the center of each element, and is arranged on the intersection of lattices with a constant interval.
  • each element By increasing the number of grids, each element also increases, so the number of bits of data that can be expressed can be increased.
  • each component is not particularly limited as long as it satisfies the following formula.
  • [Size of one side of code pattern 2 (between deg, gg)] [interval of marker dots M (between bc)] ⁇ [(number of columns and rows of grid) -1] + [Distance between marker dot M and data satellite dot or header satellite dot (between a and b)] ⁇ 2 [Distance between each code pattern 2 (between hi and jk)] ⁇
  • the configuration of the data element 21 will be described.
  • the data element 21 includes marker dots M and satellite dots.
  • one unit of data is expressed by printing a dot at one of eight points (0 to 7) obtained by equally dividing the circular orbit about the marker dot M into eight.
  • 8 (2 3 ) kinds of data can be expressed, 3 bits can be expressed by one data element.
  • the data density can be further increased.
  • second to fifth embodiments improved from the first embodiment will be described.
  • FIG. 4A shows a second embodiment in which the number of position points on the circular orbit of the first embodiment shown in FIG. 3 is increased.
  • one unit of data is expressed by printing a dot at one of 16 points (0 to 15) obtained by equally dividing the circular orbit around the marker dot M into 16 parts.
  • 16 (2 4 ) kinds of data can be expressed, 4 bits can be expressed by one data element.
  • the trajectory is not a circle but a zigzag trajectory, and the interval between adjacent position points is increased.
  • FIG. 4C shows a fourth embodiment having two circular orbits having different sizes and using two dots.
  • the fourth embodiment there are large and small circular orbits around the marker dot M on the outer and inner sides, each circular orbit is divided into eight equal parts, and a dot is placed at one of the eight position points of the outer circular orbit.
  • One unit of data is expressed by printing and further printing a dot at one of the eight position points of the inner circular orbit.
  • FIG. 4D shows a fifth embodiment.
  • the outer circular track and the inner circular track are provided as in the fourth embodiment, but the position points of the inner circular track are reduced to four in order to prevent close contact of the position points.
  • data of 8 (2 3 ) ways can be expressed by the outer circular orbit, 4 (2 2 ) ways by the inner circular orbit, and a total of 32 (2 5 ) ways can be expressed. Can be expressed in 5 bits.
  • FIG. 5 shows a pattern of data elements according to the sixth embodiment of the present invention.
  • one unit of data is expressed by printing one dot on one circular orbit, but in the sixth embodiment, two dots are printed on one circular orbit.
  • One unit of data is expressed by a combination of two dot positions.
  • dots are printed at two points out of eight points obtained by equally dividing the circular orbit around the marker dot M into eight.
  • 16 (2 4 ) kinds of data can be expressed, so that 4 bits can be expressed by one data element.
  • the header element 22 will be described. Like the data element, the header element 22 shown in FIG. 2 has marker dots M printed on a grid, but is data in that it has three satellite dots for header on a circular trajectory centered on the marker dots M. Distinguished from elements.
  • the direction indicated by the header element 22 is for indicating the reading reference of the data satellite dot of the data element.
  • the header element 22 in FIG. 2 indicates the upward direction, and this is expressed as 0, 1, 2,... 7 in the clockwise order from the upper end of the orbit among the data satellite dots of the data element 21. It shows that.
  • the header element 22 indicates the left direction
  • the data satellite dot of the data element 21 is expressed as 0, 1, 2,... 7 in order from the left end (position 6 in FIG. 2). Show.
  • the header element is an element different from the data element for indicating the position and direction of the data element array as described above, the header element is an array not included in the data element shown in FIGS. It must be arranged with Further, especially when the data element is expressed by two dots as in the sixth embodiment, a fake header element is not formed by the three satellite dots and marker dots of the adjacent data elements. Note the array of data and header elements. This will be described with reference to FIG. In FIG. 6, the real header element 22 is composed of three header satellite dots a, b, and c centered on M1.
  • the satellite dot a ′ of the adjacent data element 21-1 is regarded as a marker dot
  • the arrangement may be regarded as a satellite dot for the header. Accordingly, a fake header element is generated by M2, a ′, b ′, and c ′, and such an arrangement must be avoided.
  • Step 1 a two-dimensional code is photographed using a CCD sensor, a camera, or the like. At this time, photographing is always performed so that one or more code patterns are included. It is also possible to take an image of a two-dimensional code printed with a material that transmits infrared rays, such as a carbon material, using an infrared irradiation camera.
  • a two-dimensional code is printed with a material that transmits infrared light and a paper surface other than the two-dimensional code is printed with a material that does not transmit infrared light, only the two-dimensional code can be identified and photographed with an infrared irradiation camera. In this case, it is possible to identify the two-dimensional code even when the entire surface is black.
  • Step 2 The acquired image data is binarized so that it can be identified by dots and portions other than dots.
  • Step 3 A dot close to the center of the image is searched for as the first dot.
  • the search range of the first dot is a maximum from the outer peripheral position of the photographed image to the inside by the size of one code pattern (the length between de or the length between gg shown in FIG. 1).
  • Step 4 The center point A (FIG. 8) of the detected first dot is obtained based on the average value of the continuous coordinates determined as dots in the binarized image.
  • Step 5 Search from the center point A of the first dot for another dot on the radius line at a distance (between bc in FIG. 1) that is a normal marker dot interval in the shooting size, and search for the second dot And At this time, by setting a range from 1/3 or more to about 3 times the marker dot interval as an allowable range, it is possible to cope with a distance or a slope. If there is no second dot, the first dot detected first is not the marker dot M, so the process returns to step 3 to detect another dot as the first dot again. (Step 6) The center point B of the second dot is obtained.
  • Step 7 A vector (vector AB) from point A to point B is acquired, and points C, D, and E are detected.
  • Point C is a point 180 degrees from vector AB
  • point D is a point 90 degrees from vector AB
  • point E is a point 90 degrees from vector AB.
  • Points C, D, and E are the center points of the third, fourth, and fifth dots. If there are no third to fifth dots, the first detected first dot is not the marker dot M, so the process returns to step 3 to detect another dot as the first dot again.
  • Step 8 Next, the center points F to I of the sixth to ninth dots are detected.
  • Point F is from point B to vector AE
  • point G is from point C to vector AD
  • point H is from point D to vector AB
  • point I is from point E to vector AC This is the point.
  • the first dot detected first is not the marker dot M, so the process returns to step 3 to detect another dot as the first dot again.
  • the first to ninth dots are marker dots M of the data element or the header element.
  • FIG. 10 shows a case where the data element has the configuration of the first embodiment.
  • Step 9 The position information of satellite dots around points A to I, that is, each marker dot M, is acquired.
  • the position information of each satellite dot is acquired from the positional relationship with the marker dot M as a reference.
  • the radius of the satellite dot trajectory (between a and b in FIG. 1) is obtained from the ratio of the marker dot interval (between bc in FIG. 1) and the actual dot interval.
  • the number of satellite dots is one in the first to third embodiments and two in the fourth to sixth embodiments, it can be determined that the element is a data element, and the number of satellite dots is If there are three, it can be determined that they are header elements. In the case of FIG.
  • the elements of one point A to F, H, and I of the satellite dot are determined to be data elements, and the element of the point G is determined to be a header element.
  • the direction information of the data element can be acquired from the position information of the satellite dot for header.
  • the header element G indicates the upward direction.
  • Step 10 Based on the direction information of the header element, the satellite dot position information of the data element is read.
  • the satellite dots of the data elements A to F, H, and I indicate values of 0 to 7 clockwise from the top. If the header element indicates the left direction, the satellite dot of the data element indicates a value from 0 to 7 clockwise from the left.
  • Step 11 The sequence of code patterns is reproduced from the position of the header element.
  • the header element is rearranged to be arranged at the center.
  • the arrangement is reproduced because the center point A of the read first dot is not necessarily the marker dot M of the header element. Without rearranging, correct data cannot be read when the data elements are finally connected.
  • rearrangement is performed so as to reproduce the initial settings when the header elements are set at predetermined positions such as the lower right, the lower end, and the lower left.
  • the first line is FBH
  • the second line is EAD
  • the third line is ICG.
  • Step 12 the bit data acquired from the data elements is connected to acquire code pattern data.
  • the present invention can be used industrially by an object printed with a satellite dot type two-dimensional code and a two-dimensional code reader.
  • the reading device is connected to a computer, a television, a mobile phone, and the like, and can also be linked to a digital content on a CD-ROM or the Internet.
  • the reading device may be anything as long as it has a configuration for realizing the reading method described above. For example, it can be realized by an infrared irradiation camera, a CCD sensor, or a mobile phone camera.
  • the reading device is preferably a pen type so that it can be easily touched.
  • the object on which the code is printed may be any material that can print the code. For example, it can be printed on plastic as well as paper.
  • the two-dimensional code of the present invention is expressed by dots that are hardly visible to the naked eye, even if it is printed over characters, photos, illustrations, etc. on the paper, it does not affect the paper design.
  • Fields in which the satellite two-dimensional code of the present invention is utilized include catalogs for sales promotion, restaurant menus, catalogs for mail order sales, car navigation, polling places, descriptions of exhibits in museums and museums, hospitals and finance It can be used in various fields such as calling at institutions and retail stores, and business communication at inns and factories.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

 複数のコードパターンが平面上に格子状に配置される二次元コードであって、前記コードパターンの各々は、ビットデータを表現する複数のデータ要素と、前記複数のデータ要素の配列の位置及び方向を示すための一つ以上のヘッダ要素と、が格子状に配置されて構成され、前記複数のデータ要素の各々は、マーカードットと、前記マーカードットを中心とした軌道上に位置するデータ用サテライトドットとからなり、前記マーカードットを基準とした前記データ用サテライトドットの位置関係により前記ビットデータを識別し、前記ヘッダ要素は、前記マーカードットと、前記マーカードットを中心とした周回軌道上に位置した複数のヘッダ用サテライトドットとからなり、前記複数のデータ要素の前記マーカードットと前記ヘッダ要素の前記マーカードットとは、架空の格子上に配置されることを特徴とする。

Description

サテライトドット方式による二次元コードとその読み取り方法
 本発明は、サテライトドット方式による二次元コードとその読み取り方法に係り、より詳細には、平面上に格子状に配置されたマーカードットとサテライトドットとの位置関係によりデジタルデータを表現する方法に関する。
 従来から、線の太さや模様によってデータを表現する方法として、バーコードやQRコードが知られている。しかしながらバーコードやQRコードは、紙面に別途設けられる必要があり、紙面デザインが制限されてしまう。
 そこで、肉眼ではほとんど識別できない程度に微細なドットを印刷物に重ねて印刷し、このドットのパターンを専用の装置で読み取ることで、様々な情報を読み取ることができる技術が開発された。
 例えば、特許文献1には、ラスター線の交差点である仮想ラスター点と、仮想ラスター点を基準に所定距離離れた位置に位置するマーキングとよばれるドットからなるコードであって、仮想ラスター点からのドットのズレ等を検出してデータを読み取る技術が開示されている。
 また、特許文献2には、4点の格子ドットで囲まれた中心を仮想点にして、この仮想点を始点としてベクトルにより表現した終点に情報ドットを配置することで、データを記憶する技術が開示されている。特許文献2にはさらに、4点の格子ドットにより構成される空間が正方形になるように変換することにより、歪みを補正する技術が開示されている。
 上記特許文献1および2では、基準点となる「仮想ラスター点」および「4点の格子ドットで囲まれた中心」は実際には印刷されない。従って、従来技術では、読み取り装置を傾けて読み取る場合に歪みが生じてしまい、正しい読み取りができなくなってしまう。特許文献2では歪み補正について開示しているが、ひとつの要素につき4つの格子ドットを使用しなくてはならず、全体としてドット数が増加し、ドットが密集してしまう。ドットが密集してしまうと読み取りエラーが生じやすく、エラーを防止するためには高い解像度で印刷しなくてはならない。
国際公開第00/073981号公報 日本国特許第3706385号公報
 本発明は、データ読み取り時に、コードと読み取り装置との間の距離や傾きなどに対して非常に柔軟であるサテライトドット方式による二次元コードとその読み取り方法を提供することを目的とする。
 本発明は、複数のコードパターンが平面上に格子状に配置される二次元コードであって、前記コードパターンの各々は、ビットデータを表現する複数のデータ要素と、前記複数のデータ要素の配列の位置及び方向を示すための一つ以上のヘッダ要素と、が格子状に配置されて構成され、前記複数のデータ要素の各々は、マーカードットと、前記マーカードットを中心とした軌道上に位置するデータ用サテライトドットとからなり、前記マーカードットを基準とした前記データ用サテライトドットの位置関係により前記ビットデータを識別し、前記ヘッダ要素は、前記マーカードットと、前記マーカードットを中心とした周回軌道上に位置した複数のヘッダ用サテライトドットとからなり、前記複数のデータ要素の前記マーカードットと前記ヘッダ要素の前記マーカードットとは、架空の格子上に配置されることを主要な特徴とする。
 また本発明は、複数のコードパターンが平面上に格子状に配置される二次元コードの読み取り方法であって、前記コードパターンの各々は、ビットデータを表す複数のデータ要素と前記データ要素の配列の位置及び方向を示すためのヘッダ要素とが格子状に配列されて構成され、前記読み取り方法は、a)読み取り装置によって、前記複数のコードパターンが少なくとも一つ入るように前記二次元コードの一定範囲を撮影して画像データを取得するステップと、b)前記画像データの中心に近い第1ドットを検出するステップと、c)検出した前記第1ドットの中心点を求めるステップと、d)前記第1ドットの中心点から所定距離上の第2乃至第Mドットの中心点をそれぞれ検出するステップと、e)前記第1乃至第Mドットを、前記複数のデータ要素及び前記ヘッダ要素のマーカードットとし、前記マーカードットを中心とした軌道上に位置するサテライトドットの位置情報を取得して前記マーカードットを基準とした前記サテライトドットの位置関係から前記コードパターンを読み取るステップと、からなり、前記複数のデータ要素のマーカードットと前記ヘッダ要素のマーカードットとは、架空の格子上に配列されることを特徴とする。
 本発明のサテライト方式による二次元コードは、基準点となるマーカードットを実際に格子状に印刷するため、傾きによる歪みが生じにくい。また、マーカードットを中心としたサテライトドットの位置情報を検出することによりデータを読み取るため、ドットの間隔、変位から距離や傾きを検出することができる。このため、読み取り装置から二次元コードまでの距離や方向、傾きに対して非常に柔軟である。
 また、少ない数のドットにより複数ビットのデータを表現することが可能なので、印刷物のコード以外の文章や写真、イラストとのコントラストに与える影響が少ない。
 さらに、データは軌道上の位置により表現されているので、変位や変調を用いた表現方法よりも識別が容易で、読み取り装置に要求する性能や精度が低くてもよい。
本発明のサテライト方式による二次元コードの全体を示す図。 本発明の二次元コードのうち、一つのコードパターンを示す図。 本発明のコードパターンのうち、一つのデータ要素の第1実施例を示す図。 本発明のコードパターンのうち、一つのデータ要素の第2乃至5実施例を示す図。 本発明のコードパターンのうち、一つのデータ要素の第6実施例を示す図。 本物のヘッダ要素と偽物のヘッダ要素との違いを説明する図。 本発明のサテライトドット方式による二次元コードの読み取り方法を示すフローチャート。 マーカードットの検出方法を説明する図。 本発明のサテライトドット方式による二次元コードの読み取り方法を示すフローチャート。 サテライトドットの位置情報に基づくデータの読み取り方法を説明する図。
 本発明の二次元コードの全体構造について、図1及び2を参照して説明する。
 図1は、紙面に印刷される二次元コード1全体を示す図である。二次元コード1は、平面上に格子状に配列された複数のコードパターン2からなる。コードパターン2は、一単位のデジタルデータを表現する単位である。図1では、コードパターン2の区切りを明確にするために、各コードパターン2を点線で囲ったが、この点線は実際に印刷されない。
 図1の例では、コードパターン2は3×3の9個配置されているが、9個より多くても少なくてもよい。また、複数のコードパターン2は、どのコードパターン2を読み取っても同じ結果となるように、一つの二次元コード1の中では同一パターンである。同じパターンを繰り返し印刷することにより、一部が汚れてしまっても、情報を読み出すことができる。
 図2は、一つのコードパターン2を示す図である。
 コードパターン2は、互いに格子状に配列される複数のデータ要素21と一つ以上のヘッダ要素22とを有する。図2の例では、3×3の9つの要素で一つのコードパターンを構成しているが、格子状に配列されている限り、要素の数は9つより多くても少なくてもよい。要素の数は、表現したいデータの大きさに応じて異なる。
 図2の例では、データ要素21が8個、ヘッダ要素22が1個配列されている。
 データ要素21は、データを表現するために使用され、ヘッダ要素22は、データ要素21の配列の位置及び方向を示すために使用される。詳細は後述する。
 データ要素21は、マーカードットMと、マーカードットMを中心とした軌道上に位置する、データ用サテライトドット0~7とからなる。マーカードットMは必ず1個であるが、データ用サテライトドットは、表現したいデータの大きさに応じて、一つのデータ要素中1つでもよいし、2つ以上でもよい。図2の例ではデータ用サテライトドットが一つの場合を示す。また、データ用サテライトドットの軌道は、図2の例のように周回軌道でもよいし、後述するように変形軌道でもよい。
 ヘッダ要素22は、マーカードットMと、マーカードットMの周回軌道上に位置する複数のヘッダ用サテライトドットとからなる。ヘッダ用サテライトドットは通常3つで構成されるが、3つに限定されない。
 図2では、格子や各要素の軌道が記載されているが、実際の二次元コードではこの格子や軌道は印刷されない。従って、実際に印刷される二次元コードは、ドットのみである。
 ここで、マーカードットMとは、各要素の中心となるドットで、一定間隔の格子の交差点上に配置される。この格子の本数を増やすことにより、各要素も増えるので、表現できるデータのビット数を増やすことができる。
 ここで、図1に戻って、各構成要素のサイズについて説明する。各構成要素のサイズは、以下の式を満たすものであれば、特に限定されない。
 ・[マーカードットMの間隔(b-c間)]≧[マーカードットMとデータ用サテライトドット又はヘッダ用サテライトドットとの間隔(a-b間)]×3
 ・[コードパターン2の一辺のサイズ(d-e間、f-g間)]=[マーカードットMの間隔(b-c間)]×[(格子の列、行の数)-1]+[マーカードットMとデータ用サテライトドット又はヘッダ用サテライトドットとの間隔(a-b間)]×2
 ・[各コードパターン2の間隔(h-i間、j-k間)]≧[マーカードットMの間隔(b-c間)]×[格子の列、行の数]
 すなわち、各要素のマーカードットMの間隔(b-c間)は、少なくともマーカードットMとデータ用サテライトドット又はヘッダ用サテライトドットとの間隔(a-b間)の3倍以上が必要である。例えば、一つの要素の中で、マーカードットMとデータ用サテライトドット又はヘッダ用サテライトドットとの間隔(a-b間)を、250μmとすると、各要素のマーカードットMの間隔(b-c間)は、少なくとも750μm必要である。
 また、図1で上記の間隔を有する場合、コードパターン2の一辺のサイズ(d-e間、f-g間)=750μm×(3本-1)+250μm×2=2000μmとなる。
 この場合、各コードパターン2の間隔(h-i間,j-k間)は、少なくとも750μm×3本=2250μmとなる。これは、コードパターン2が複数並べられる二次元コード1では、コードパターン2の間隔は、最低でもサテライトドット間の間隔が必要であるためである。
 次に図3を参照して、コードパターン2を形成する要素の構成の第1実施例を説明する。ここでは、データ要素21の構成を説明する。
 データ要素21は、上述したように、マーカードットMとサテライトドットとからなる。第1実施例では、マーカードットMを中心とした円軌道を8等分した8点(0乃至7)のうち、一点にドットを印刷することにより一単位のデータを表現する。第1実施例では、8(2)通りのデータを表現することができるので、一つのデータ要素で3ビット表現することができる。
 第1実施例の構成に改良を施すことにより、さらなるデータ密度の増加が可能である。
 図4を参照して、第1実施例を改良した第2乃至第5実施例について説明する。
 図4(a)は、図3に示した第1実施例の円軌道上の位置点の数を増加させた第2実施例を示す。第2実施例では、マーカードットMを中心とした円軌道を16等分した16点(0乃至15)のうち、一点にドットを印刷することにより一単位のデータを表現する。第2実施例では、16(2)通りのデータを表現することができるので、一つのデータ要素で4ビット表現することができる。
 第2実施例では円軌道上の位置点の数を増加させたので、第1実施例よりも多くのデータを表現することができる。しかし、円軌道上の位置点が増えれば増えるほど隣り合う位置点が密接するため、より高い読み取り精度が要求される。
 そこで図4(b)に示す第3実施例では、軌道を円形ではなく、ジグザグの軌道とし、隣接する位置点の間隔を増やす。
 図4(c)は、大きさの異なる2つの円軌道を有し、2つのドットを用いる第4実施例を示す。第4実施例では、マーカードットMを中心とした大小の円軌道を外側と内側とに有し、それぞれの円軌道は8等分され、外側円軌道の8つの位置点のうち一点にドットを印刷し、さらに、内側円軌道の8つの位置点のうち一点にドットを印刷することにより、一単位のデータを表現する。第4実施例では、外側円軌道で8(2)通り、内側円軌道で8(2)通り、合わせて64(2)通りのデータを表現することができるので、一つのデータ要素で6ビット表現することができる。
 図4(d)では、第5実施例を示す。第5実施例では、第4実施例のように外側円軌道と内側円軌道とを有するが、位置点の密接を防ぐために、内側円軌道の位置点を4つに減らした。第5実施例では、外側円軌道で8(2)通り、内側円軌道で4(2)通り、合わせて32(2)通りのデータを表現することができるので、一つのデータ要素で5ビット表現することができる。
 図5は、本発明の第6実施例によるデータ要素のパターンを示す図である。上述した第1実施例では、一つの円軌道上に一つのドットを印刷することにより一単位のデータを表現していたが、第6実施例では、一つの円軌道上に2つのドットを印刷し、2つのドットの位置の組み合わせにより一単位のデータを表現する。図5の例では、マーカードットMを中心とした円軌道を8等分した8点のうち2点にドットを印刷する。第6実施例では図5のように、16(2)通りのデータを表現することができるので、一つのデータ要素で4ビット表現することができる。
 図2に再び戻り、ヘッダ要素22について説明する。図2に示すヘッダ要素22は、データ要素と同様に、格子上に印刷されたマーカードットMを有するが、マーカードットMを中心とした周回軌道上に3つのヘッダ用サテライトドットを有する点でデータ要素と区別される。
 ヘッダ要素22によって示された方向は、データ要素のデータ用サテライトドットの読み取り基準を示すためのものである。図2のヘッダ要素22は、上方向を示しているが、これは、データ要素21のデータ用サテライトドットのうち、軌道の上端から時計順に0,1,2,・・・7と表現されることを示す。ヘッダ要素22が左方向を示す場合には、データ要素21のデータ用サテライトドットは、左端(図2では6の位置)から時計順に0,1,2・・・7と表現されていることを示す。
 ヘッダ要素は、上述のようにデータ要素の配列の位置および方向を示す為の、データ要素とは異なる要素であるため、図3乃至5に示したデータ要素にはない配列で、かつ、方向性を持った配置でなくてはならない。
 また、第6実施例のようにデータ要素が2つのドットで表現される場合には特に、隣接したデータ要素の3つのサテライトドットとマーカードットとで偽物のヘッダ要素を形成してしまわないように、データ要素とヘッダ要素との配列に注意しなくてはならない。
 これを図6を参照しながら説明する。図6では、本物のヘッダ要素22は、M1を中心としたヘッダ用サテライトドット3点a,b,cからなる。しかしながら、隣接するデータ要素21-1のサテライトドットa´がマーカードットとみなされ、また、データ要素21-1のマーカードットM2と隣接するデータ要素21-2のサテライトドットb´とcと´でヘッダ用サテライトドットとみなされるような配列になる場合がある。従って、M2,a´、b´、c´により偽物のヘッダ要素ができてしまうので、このような配列は避けなければならない。
 次に、本発明の二次元コードの読み取り方法を図7乃至9を参照して説明する。以下では、一つのコードパターンが8つのデータ要素と1つのヘッダ要素とからなる場合の二次元コード読み取り方法の例を示す。
 (ステップ1)まず、CCDセンサ、カメラなどを用いて、二次元コードを撮影する。このとき、必ず1つ以上のコードパターンが入るように撮影する。また、赤外線照射カメラを用いて、カーボン素材等の赤外線を通す素材で印刷された二次元コードを撮影することもできる。二次元コードを赤外線を通す素材で印刷し、二次元コード以外の紙面を赤外線を通さない素材で印刷した場合、赤外線照射カメラにより、二次元コードのみを識別して撮影することができる。この場合、例えば全面黒い紙面であっても、二次元コードの識別が可能となる。
 (ステップ2)取得した画像データを、ドットとドット以外の部分とで識別できるように二値化する。
 (ステップ3)画像の中心に近いドットを検索し、第1ドットとする。第1ドットの検索範囲は、最大で、撮影画像の外周位置から一つのコードパターンのサイズ分(図1に示すd-e間の長さ分またはf-g間の長さ分)だけ内側までとする。
 (ステップ4)二値化画像でドット判断された連続した座標の平均値に基づき、検出した第1ドットの中心点A(図8)を求める。以下、図8を参照しながら説明する。
 (ステップ5)第1ドットの中心点Aから、撮影サイズで通常のマーカードット間隔となる距離(図1のb-c間)の半径線上に別のドットがないかを検索し、第2ドットとする。この時、当該マーカードット間隔の1/3以上から3倍程度までの範囲を許容範囲とすることにより、距離や傾きに対応することができる。
 第2ドットがない場合には、最初に検出した第1ドットはマーカードットMではないので、ステップ3に戻って、再度別のドットを第1ドットとして検出する。
 (ステップ6)第2ドットの中心点Bを求める。
 (ステップ7)点Aから点Bのベクトル(ベクトルA-B)を取得し、点C、D,Eを検出する。点CはベクトルA-Bから180°方向の点、点DはベクトルA-Bから90°方向の点、そして点EはベクトルA-Bから-90°方向の点である。この時、多少の誤差範囲を設けることで、距離や傾きに柔軟に対応できる。なお、点C,D,Eは第3,4,5ドットの中心点である。
 第3乃至5ドットがない場合には、最初に検出した第1ドットはマーカードットMではないので、ステップ3に戻って、再度別のドットを第1ドットとして検出する。
 (ステップ8)次に、第6乃至9ドットの中心点F乃至Iを検出する。点Fは点BからベクトルA-Eの点、点Gは点CからベクトルA-Dの点、点Hは点DからベクトルA-Bの点、そして点Iは点EからベクトルA-Cの点である。
 第6乃至9ドットがない場合には、最初に検出した第1ドットはマーカードットMではないので、ステップ3に戻って、再度別のドットを第1ドットとして検出する。
 第1乃至第9ドットは、データ要素またはヘッダ要素のマーカードットMである。
 次に図9のフローチャートと図10を参照して、サテライトドットの検出方法およびコードパターンのデータ取得方法を説明する。図10では、データ要素が第1実施例の構成を有する場合を示す。
 (ステップ9)点A乃至I、すなわち各マーカードットMの周りのサテライトドットの位置情報を取得する。各サテライトドットの位置情報は、マーカードットMを基準とした位置関係から取得する。サテライトドットの軌道の半径(図1のa-b間)は、マーカードット間隔(図1のb-c間)と実際のドット間隔の比から取得する。このとき、サテライトドットの数が、第1乃至第3実施例では1つ、第4乃至第6実施例では2つであれば、その要素はデータ要素であると判断でき、サテライトドットの数が3つであればヘッダ要素であると判断することができる。図10の場合、サテライトドットが1つの点A乃至F、H、Iの要素はデータ要素であると判断され、点Gの要素がヘッダ要素であると判断される。
 また、ヘッダ要素の場合は、ヘッダ用サテライトドットの位置情報により、データ要素の方向情報を取得することができる。図10の例では、ヘッダ要素Gは上方向を示す。
 (ステップ10)ヘッダ要素の方向情報に基づき、データ要素のサテライトドットの位置情報を読み取る。図10の例では、ヘッダ要素Gが上方向を示しているので、データ要素A乃至F,H,Iのサテライトドットは、上から時計回りに0乃至7の値を示す。もしもヘッダ要素が左方向を示している場合、データ要素のサテライトドットは左から時計回りに0乃至7の値を示す。
 (ステップ11)ヘッダ要素の位置から、コードパターンの並びを再現する。例えば、二次元コードの設定・印刷時に、ヘッダ要素をコードパターンの中央に配列した場合、ヘッダ要素を中心とした場合の配列に並び替える。配列を再現するのは、読み取った第1ドットの中心点Aがヘッダ要素のマーカードットMであるとは限らないからである。並び替えを行わないと、最終的に各データ要素をつないだときに、正しいデータを読み取ることができない。ヘッダ要素をコードパターンの中央に配列した場合のみならず、右下、下端、左下等の所定の位置に設定した場合も同様に、初期設定を再現するように並び替えを行う。
 図10の例では、1行目がF-B-H、2行目がE-A-D,3行目がI-C-Gとなっているが、ヘッダ要素Gを中心として並び替えを行うことにより、1行目がA-D-E、2行目がC-G-I、3行目がB-H-Fとなる。
 (ステップ12)最後に、データ要素から取得したビットデータをつなげて、コードパターンのデータを取得する。図10の例では、第1実施例を採用しているので、1行目:要素A=2、要素D=6、要素E=0、2行目:要素C=0,要素Gはヘッダ要素なので値を持たない、要素I=0、3行目:要素B=2、要素H=4、要素F=0を示している。
 ヘッダ要素が左方向を示していれば、1行目:要素A=4、要素D=0、要素E=2、2行目:要素C=2,要素Gはヘッダ要素なので値を持たない、要素I=2、3行目:要素B=4、要素H=6、要素F=2を示している。
 本発明は、サテライトドット方式の二次元コードを印刷した物体と二次元コードの読み取り装置とによって産業上利用することができる。読み取り装置はコンピュータやテレビ、携帯電話等と接続され、さらにCD-ROMやインターネット上のデジタルコンテンツと連動することもできる。
 読み取り装置は、上述した読み取り方法を実現するための構成を備えていれば、どのようなものでもよい。例えば赤外線照射カメラやCCDセンサ、携帯電話のカメラにより実現することができる。また、読み取り装置はタッチしやすいようにペン型が好ましい。
 コードを印刷する物体は、コードが印刷できる素材であればよい。例えば紙はもちろん、プラスチック等にも印刷することができる。
 本発明の二次元コードは、肉眼ではほとんど見えないドットにより表現されるため、紙面上の文字や写真、イラスト等に重ねて印刷しても、紙面デザインへの影響はない。本発明のサテライト方式の二次元コードが活用される分野として、販売促進のためのカタログ、飲食店のメニュー、通信販売のカタログ、カーナビゲーション、投票所、博物館や美術館の展示品説明、病院や金融機関及び小売店等での呼び出し、旅館や工場等での業務連絡など、様々な分野に利用可能である。
 1  二次元コード
 2  コードパターン
 21 データ要素
 22 ヘッダ要素
 M  マーカードット

Claims (8)

  1.  複数のコードパターンが平面上に格子状に配置される二次元コードであって、
     前記コードパターンの各々は、
     ビットデータを表現する複数のデータ要素と、
     前記複数のデータ要素の配列の位置及び方向を示すための一つ以上のヘッダ要素と、が格子状に配置されて構成され、
     前記複数のデータ要素の各々は、マーカードットと、前記マーカードットを中心とした軌道上に位置するデータ用サテライトドットとからなり、前記マーカードットを基準とした前記データ用サテライトドットの位置関係により前記ビットデータを識別し、
     前記ヘッダ要素は、前記マーカードットと、前記マーカードットを中心とした周回軌道上に位置した複数のヘッダ用サテライトドットとからなり、
     前記複数のデータ要素の前記マーカードットと前記ヘッダ要素の前記マーカードットとは、架空の格子上に配置されることを特徴とする二次元コード。
  2.  前記データ用サテライトドットが位置する前記軌道は、隣接する前記データ用サテライトドットが密接しないように、交互にジグザグであることを特徴とする請求項1に記載の二次元コード。
  3.  前記データ用サテライトドットは、2つのドットからなり、前記2つのドットの位置の組み合わせによりデータを識別することを特徴とする請求項1に記載の二次元コード。
  4.  前記データ用サテライトドットは、2つのドットからなり、
     前記2つのドットのうちの一つのドットは、前記マーカードットを中心とした周回軌道の外側の所定スポットに位置して一つのビットデータを表し、
     前記2つのドットのうちの他のドットは、前記周回軌道の内側の所定スポットに位置して一つのビットデータを表すことを特徴とする請求項1に記載の二次元コード。
  5.  前記周回軌道の内側の所定スポットの数は、前記周回軌道の外側の所定スポットの数よりも少ないことを特徴とする請求項4に記載の二次元コード。
  6.  複数のコードパターンが平面上に格子状に配置される二次元コードの読み取り方法であって、前記コードパターンの各々は、ビットデータを表す複数のデータ要素と前記データ要素の配列の位置及び方向を示すためのヘッダ要素とが格子状に配列されて構成され、前記読み取り方法は、
     a)読み取り装置によって、前記複数のコードパターンが少なくとも一つ入るように前記二次元コードの一定範囲を撮影して画像データを取得するステップと、
     b)前記画像データの中心に近い第1ドットを検出するステップと、
     c)検出した前記第1ドットの中心点を求めるステップと、
     d)前記第1ドットの中心点から所定距離上の第2乃至第Mドットの中心点をそれぞれ検出するステップと、
     e)前記第1乃至第Mドットを、前記複数のデータ要素及び前記ヘッダ要素のマーカードットとし、前記マーカードットを中心とした軌道上に位置するサテライトドットの位置情報を取得して前記マーカードットを基準とした前記サテライトドットの位置関係から前記コードパターンを読み取るステップと、からなり、
     前記複数のデータ要素のマーカードットと前記ヘッダ要素のマーカードットとは、架空の格子上に配列されることを特徴とする二次元コードの読み取り方法。
  7.  前記Mは9であり、
     前記ステップdは、
     d-1)前記第1ドットの中心点から所定距離上の前記第2ドットを検出するステップと、
     d-2)検出された前記第2ドットの中心点を求めるステップと、
     d-3)前記第1ドットの中心点から前記第2ドットの中心点までのベクトルを取得し、前記ベクトルから180°方向に位置する前記第3ドット、90°方向に位置する前記第4ドット、-90°方向に位置する前記第5ドットをそれぞれ検出するステップと、を含み、
     前記第2乃至第5ドットすべてが検出された場合、前記第2ドットの中心点から前記第1ドットの中心点と前記第5ドットの中心点とのベクトル上の前記第6ドット、前記第3ドットの中心点から前記第1ドットの中心点と前記第4ドットの中心点とのベクトル上の前記第7ドット、前記第4ドットの中心点から前記第1ドットの中心点と前記第2ドットの中心点とのベクトル上の前記第8ドット、および、前記第5ドットの中心点から前記第1ドットの中心点と前記第3ドットの中心点とのベクトル上の前記第9ドットを検出し、
     前記第2乃至第5ドットのうち一つでも検出されない場合、前記ステップbから再開することを特徴とする請求項6に記載の二次元コードの読み取り方法。
  8.  前記ステップeは、
     e-1)前記ヘッダ要素から取得した方向情報に基づいて、前記複数のデータ要素の各々の前記サテライトドットが表すビットデータを取得するステップと、
     e-2)前記ビットデータを集積し、前記コードパターンのデータを取得するステップと、を含むことを特徴とする請求項6に記載の二次元コードの読み取り方法。
PCT/JP2011/004643 2011-08-22 2011-08-22 サテライトドット方式による二次元コードとその読み取り方法 WO2013027234A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/004643 WO2013027234A1 (ja) 2011-08-22 2011-08-22 サテライトドット方式による二次元コードとその読み取り方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/004643 WO2013027234A1 (ja) 2011-08-22 2011-08-22 サテライトドット方式による二次元コードとその読み取り方法

Publications (1)

Publication Number Publication Date
WO2013027234A1 true WO2013027234A1 (ja) 2013-02-28

Family

ID=47746016

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/004643 WO2013027234A1 (ja) 2011-08-22 2011-08-22 サテライトドット方式による二次元コードとその読み取り方法

Country Status (1)

Country Link
WO (1) WO2013027234A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014089693A (ja) * 2012-10-01 2014-05-15 Kenji Yoshida ドットパターン
CN108985421A (zh) * 2018-08-14 2018-12-11 上海掌门科技有限公司 编码信息的生成方法和识别方法
US10460223B2 (en) 2014-04-28 2019-10-29 Gelliner Limited Encoded cells and cell arrays
CN110796219A (zh) * 2018-08-02 2020-02-14 夏普株式会社 识别码
GB2599159A (en) * 2020-09-28 2022-03-30 Mastercard International Inc Location determination

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005151182A (ja) * 2003-11-14 2005-06-09 Sires:Kk デジタル情報坦体
JP2007011890A (ja) * 2005-07-01 2007-01-18 Kenji Yoshida ドットパターン
JP2008225732A (ja) * 2007-03-12 2008-09-25 Kenwood Corp 読取装置で読取可能な二次元コードパターン、地図の表示媒体、読取システムおよび読取方法
WO2011007783A1 (ja) * 2009-07-13 2011-01-20 Yoshida Kenji ストリームドットパターン、ストリームドットパターンの形成方法、ストリームドットパターンを用いた情報入出力方法およびドットパターン

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005151182A (ja) * 2003-11-14 2005-06-09 Sires:Kk デジタル情報坦体
JP2007011890A (ja) * 2005-07-01 2007-01-18 Kenji Yoshida ドットパターン
JP2008225732A (ja) * 2007-03-12 2008-09-25 Kenwood Corp 読取装置で読取可能な二次元コードパターン、地図の表示媒体、読取システムおよび読取方法
WO2011007783A1 (ja) * 2009-07-13 2011-01-20 Yoshida Kenji ストリームドットパターン、ストリームドットパターンの形成方法、ストリームドットパターンを用いた情報入出力方法およびドットパターン

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014089693A (ja) * 2012-10-01 2014-05-15 Kenji Yoshida ドットパターン
US10460223B2 (en) 2014-04-28 2019-10-29 Gelliner Limited Encoded cells and cell arrays
US10482362B2 (en) 2014-04-28 2019-11-19 Gelliner Limited Encoded cells and cell arrays
EP3702970A1 (en) * 2014-04-28 2020-09-02 Gelliner Limited Encoded cells and cell arrays
EP3138048B1 (en) * 2014-04-28 2021-01-13 Gelliner Limited Encoded cells and cell arrays
US10936924B2 (en) 2014-04-28 2021-03-02 Gelliner Limited Encoded cells and cell arrays
CN110796219A (zh) * 2018-08-02 2020-02-14 夏普株式会社 识别码
CN108985421A (zh) * 2018-08-14 2018-12-11 上海掌门科技有限公司 编码信息的生成方法和识别方法
GB2599159A (en) * 2020-09-28 2022-03-30 Mastercard International Inc Location determination

Similar Documents

Publication Publication Date Title
JP5848464B2 (ja) 二次元コード、二次元コードの作成システムおよび解析プログラム
JP5908113B2 (ja) 二次元コード
JP4294025B2 (ja) インターフェース表面を生成する方法、および符号化データを読み取る方法
JP6623465B2 (ja) ドットパターン
WO2013027234A1 (ja) サテライトドット方式による二次元コードとその読み取り方法
JPWO2015174192A1 (ja) 二次元コード、二次元コードの解析システム及び二次元コードの作成システム
KR101821087B1 (ko) 이차원 코드, 이차원 코드의 해석 시스템
JP5743994B2 (ja) 二次元コードを表示した印刷物
US7900848B2 (en) Process for tag imaging and decoding of machine readable coded data
WO2014077187A1 (ja) 二次元コード
CN101167084A (zh) 使用了点图案的信息输入输出方法
WO2016166914A1 (ja) 二次元コード,二次元コード記録担体,二次元コード読取り方法,二次元コード読取用プログラムおよび二次元コード読取り装置
CN101794404A (zh) 隐形二维码的编码与识读方法
WO2018115542A1 (es) Método de detección y reconocimiento de marcadores visuales de largo alcance y alta densidad
CN101849243B (zh) 代码图形
CN112184826A (zh) 一种标定板和标定方法
JP4427552B2 (ja) 情報表示メモリーマーク
US10824821B2 (en) Method for providing a code pattern
JP6521709B2 (ja) 二次元コード、二次元コードの解析システム及び二次元コードの作成システム
CA2460888A1 (en) Method for image alignment and identification
JP2007334478A (ja) 画像処理装置及び画像処理方法
WO2012035552A2 (en) Generating a code system using haar wavelets
CN112184803A (zh) 一种标定板和标定方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11871218

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11871218

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP