[go: up one dir, main page]

JP2007094584A - Method for detecting two dimensional code, detecting device, and detecting program - Google Patents

Method for detecting two dimensional code, detecting device, and detecting program Download PDF

Info

Publication number
JP2007094584A
JP2007094584A JP2005280798A JP2005280798A JP2007094584A JP 2007094584 A JP2007094584 A JP 2007094584A JP 2005280798 A JP2005280798 A JP 2005280798A JP 2005280798 A JP2005280798 A JP 2005280798A JP 2007094584 A JP2007094584 A JP 2007094584A
Authority
JP
Japan
Prior art keywords
dimensional code
position detection
detection element
determined
detecting
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.)
Pending
Application number
JP2005280798A
Other languages
Japanese (ja)
Inventor
Shinichi Yada
伸一 矢田
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2005280798A priority Critical patent/JP2007094584A/en
Priority to KR1020060090669A priority patent/KR100828539B1/en
Priority to US11/523,570 priority patent/US8061615B2/en
Publication of JP2007094584A publication Critical patent/JP2007094584A/en
Pending legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To provide a method for detecting two dimensional code, detecting device, and detecting program for avoiding mis-detection of two dimensional code due to mis-recognition of the position detecting pattern, and accurately detecting two dimensional code from an image including two dimensional code. <P>SOLUTION: The method for detecting two dimensional code determines there is a single two dimensional code in the two dimensional code area under the condition that characteristic of the two dimensional code is detected from the two dimensional code area including three position detecting element patterns and the peripheral area in addition to the condition that an apex of a rectangular isosceles triangle is formed by the central point of three position detecting element patterns. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、二次元コードの検出方法、検出装置、及び検出プログラムに係り、特に、二次元コードを含む画像から二次元コードを検出する二次元コードの検出方法、検出装置、及び検出プログラムに関する。   The present invention relates to a two-dimensional code detection method, detection apparatus, and detection program, and more particularly, to a two-dimensional code detection method, detection apparatus, and detection program for detecting a two-dimensional code from an image including the two-dimensional code.

異なる太さや間隔の縦線の組み合わせによってデータを表現するバーコードは、商品の情報管理など広く世の中で活用されている。バーコードは、縦線が一方向に配列された一次元のコードである。近時、表現できる情報量の多さから、二次元コードの利用が広まっている。二次元コードとは、二進コードで表されるデータをセル化して、二次元のマトリックス上にパターンとして配置したコードである(特許文献1)。この二次元コードの代表例であるQRコードに関しては、その基本仕様がJIS(JIS-X-0510)で規格化されている。   Bar codes that represent data by combining vertical lines with different thicknesses and intervals are widely used around the world, such as for product information management. The bar code is a one-dimensional code in which vertical lines are arranged in one direction. Recently, the use of two-dimensional codes has become widespread due to the large amount of information that can be expressed. The two-dimensional code is a code in which data represented by a binary code is converted into cells and arranged as a pattern on a two-dimensional matrix (Patent Document 1). Regarding the QR code which is a representative example of the two-dimensional code, the basic specification is standardized by JIS (JIS-X-0510).

例えば、紙文書の記載内容を二次元コードに変換し、その紙文書の余白に二次元コードを付加しておくことで、紙文書をスキャンしたときに、付加された二次元コードを認識して復号すれば、光学式文字読取装置(OCR)などを用いることなく、その文書の記載内容を電子データとして取得することが可能である。   For example, by converting the description content of a paper document into a two-dimensional code and adding the two-dimensional code to the margin of the paper document, when the paper document is scanned, the added two-dimensional code is recognized. If decrypted, it is possible to acquire the description content of the document as electronic data without using an optical character reader (OCR) or the like.

QRコードのシンボルは、図3に示すように、正方形に配置されたモジュールからなり、データの符号化に使用される符号化領域と、位置検出パターン等の機能パターンとを含んで構成されている。位置検出パターンは、シンボルの3隅に配置される3個の位置検出要素パターンから構成される機能パターンである。3個の位置検出要素パターンの中心点は、各中心点を頂点とする直角二等辺三角形を構成する。また、シンボルの四辺の周囲には、クワイエットゾーンと呼ばれる余白領域が設けられている。   As shown in FIG. 3, the QR code symbol is composed of modules arranged in a square, and includes a coding area used for data coding and a function pattern such as a position detection pattern. . The position detection pattern is a functional pattern composed of three position detection element patterns arranged at the three corners of the symbol. The center points of the three position detection element patterns form a right-angled isosceles triangle having each center point as a vertex. In addition, a blank area called a quiet zone is provided around the four sides of the symbol.

QRコードを復号する場合には、専用のQRコードリーダで走査してシンボルを光学的に読み取り、読み取った画像からQRコードを検出し、検出されたQRコードを復号する(特許文献2)。QRコードを検出するために、3個の位置検出要素パターンを検出し、その位置検出要素パターンの中心点の座標を全て算出する。中心点の座標の算出は、JIS規格(JIS-X-0510)のp65-66に記載された方法に従って行なう。位置検出要素パターンの中心点の座標が特定されることで、位置検出パターンの位置が求められ、QRコードが検出される。   When decoding the QR code, the symbol is optically read by scanning with a dedicated QR code reader, the QR code is detected from the read image, and the detected QR code is decoded (Patent Document 2). In order to detect the QR code, three position detection element patterns are detected, and all the coordinates of the center point of the position detection element pattern are calculated. The calculation of the coordinates of the center point is performed according to the method described in p65-66 of the JIS standard (JIS-X-0510). By specifying the coordinates of the center point of the position detection element pattern, the position of the position detection pattern is obtained, and the QR code is detected.

また、上述した二次元コードは、一次元コードよりも表現できる情報量が多いが、それでもその情報量には限界がある。このため、上記JIS規格のp22 5.3.2.7の「連結モード」の項に記載されているように、大量の情報をQRコードで表現する場合には、その情報を複数のQRコードに分割して表現している。従来、この連結モードでQRコードを復号する場合には、シンボルを1つずつ読み取って、複数のQRコードを順に復号していた。
特許第2938338号公報 特開平06−012515号公報
Further, the above-described two-dimensional code has a larger amount of information that can be expressed than the one-dimensional code, but the information amount is still limited. For this reason, when a large amount of information is expressed by QR codes as described in the section “Connection mode” of p22 5.3.2.7 of the JIS standard, the information is divided into a plurality of QR codes. expressing. Conventionally, when decoding QR codes in this concatenation mode, symbols are read one by one and a plurality of QR codes are sequentially decoded.
Japanese Patent No. 2938338 Japanese Patent Laid-Open No. 06-012515

しかしながら、従来の検出方法では、読み取った画像中にノイズが含まれる場合に、ノイズを位置検出要素パターンと誤認識する等して、位置検出パターンが誤検出され、QRコードを正確に検出することができない、という問題があった。例えば「回」という漢字が位置検出要素パターンと誤認識されるような場合である。   However, in the conventional detection method, when noise is included in the read image, the position detection pattern is erroneously detected by, for example, misrecognizing the noise as a position detection element pattern, and the QR code is accurately detected. There was a problem that it was not possible. For example, this is a case where the Chinese character “times” is erroneously recognized as a position detection element pattern.

また、シンボルの光学的読み取りに、フラットベッドスキャナ等の汎用スキャナを用いることができれば、QRコードの利便性は著しく向上する。しかしながら、情報が複数のQRコードで表現されている場合には、汎用スキャナで走査して得られた画像には複数のシンボルが含まれ、個々のQRコードを正確且つ迅速に検出することが難しい、という問題があった。   If a general-purpose scanner such as a flatbed scanner can be used for optical reading of symbols, the convenience of the QR code is significantly improved. However, when information is expressed by a plurality of QR codes, an image obtained by scanning with a general-purpose scanner includes a plurality of symbols, and it is difficult to accurately and quickly detect individual QR codes. There was a problem.

即ち、複数のシンボルを含む画像からは、多数の位置検出要素パターンが検出される。例えばQRコードが1つであれば、位置検出要素パターンは3個であるが、QRコードが4個あれば、位置検出要素パターンはその4倍の12個となる。このため、図4に示すように、異なるシンボルに含まれる位置検出要素パターンが組み合わされて、位置検出パターンと誤認識され、QRコードを正確に検出することが難しくなる。   That is, a large number of position detection element patterns are detected from an image including a plurality of symbols. For example, if there is one QR code, there are three position detection element patterns. However, if there are four QR codes, the number of position detection element patterns is four times that of twelve. For this reason, as shown in FIG. 4, position detection element patterns included in different symbols are combined and misrecognized as a position detection pattern, making it difficult to accurately detect a QR code.

また、位置検出要素パターンの全部の組み合わせを考慮することで、誤認識を回避することは可能であるが、この場合には最適な組み合わせになるまで、演算を延々と繰り返すことになる。その結果、演算量が増えて処理速度が遅くなり、QRコードを迅速に検出することが難しくなる。   In addition, it is possible to avoid erroneous recognition by considering all combinations of position detection element patterns. In this case, however, the calculation is repeated endlessly until an optimal combination is obtained. As a result, the amount of calculation increases, the processing speed decreases, and it becomes difficult to quickly detect the QR code.

本発明は、上記問題を解決すべく成されたものであり、本発明の目的は、位置検出パターンの誤認識による二次元コードの誤検出を防止して、二次元コードを含む画像から二次元コードを正確に検出することができる、二次元コードの検出方法、検出装置、及び検出プログラムを提供することにある。   The present invention has been made to solve the above problems, and an object of the present invention is to prevent a two-dimensional code from being erroneously detected due to erroneous recognition of a position detection pattern, and to perform two-dimensional detection from an image including a two-dimensional code. It is an object to provide a two-dimensional code detection method, a detection device, and a detection program capable of accurately detecting a code.

また、本発明の他の目的は、複数の二次元コードを含む画像から個々の二次元コードを正確且つ迅速に検出することができる、二次元コードの検出方法、検出装置、及び検出プログラムを提供することにある。   Another object of the present invention is to provide a two-dimensional code detection method, detection apparatus, and detection program capable of accurately and quickly detecting individual two-dimensional codes from an image including a plurality of two-dimensional codes. There is to do.

上記目的を達成するために本発明の二次元コードの検出方法は、
直角二等辺三角形の各頂点に対応する位置に3つの位置検出要素パターンが設けられ、且つ該位置検出要素パターンにより定まる領域にデータ領域が設けられた二次元コードを検出する二次元コードの検出方法であって、
前記二次元コードを含む画像を読み取り、
読み取られた画像を二値化し、
二値化された画像に含まれる複数の位置検出要素パターンを検出し、
検出された位置検出要素パターンの中心点の位置を特定し、
位置が特定された中心点の中から、直角二等辺三角形の頂点を構成する3つの中心点を選択し、
選択された中心点に対応する位置検出要素パターンにより定まる二次元コード領域又はその周辺領域から二次元コードとしての特徴を抽出し、
二次元コードとしての特徴が抽出された場合には、該二次元コード領域に1つの二次元コードが存在すると判定し、
二次元コードを検出することを特徴としている。
In order to achieve the above object, the two-dimensional code detection method of the present invention comprises:
Two-dimensional code detection method for detecting a two-dimensional code in which three position detection element patterns are provided at positions corresponding to respective vertices of a right isosceles triangle and a data area is provided in an area determined by the position detection element pattern Because
Read an image containing the two-dimensional code,
Binarize the scanned image,
A plurality of position detection element patterns included in the binarized image are detected,
Specify the position of the center point of the detected position detection element pattern,
From the center points whose positions are specified, select the three center points that form the vertices of a right isosceles triangle,
Extract a feature as a two-dimensional code from a two-dimensional code area determined by the position detection element pattern corresponding to the selected center point or its peripheral area,
When a feature as a two-dimensional code is extracted, it is determined that one two-dimensional code exists in the two-dimensional code region,
It is characterized by detecting a two-dimensional code.

本発明によれば、3つの位置検出要素パターンの中心点により直角二等辺三角形の頂点が構成されるという条件に加え、3つの位置検出要素パターンを含む二次元コード領域及びその周辺領域から二次元コードとしての特徴が抽出されることを条件として、二次元コード領域に1つの二次元コードが存在すると判定するので、位置検出パターンの誤認識による二次元コードの誤検出を防止して、二次元コードを含む画像から二次元コードを正確に検出することができる。また、複数の二次元コードを含む画像の場合であっても、かかる画像から個々の二次元コードを正確且つ迅速に検出することができる。   According to the present invention, in addition to the condition that the vertex of the right isosceles triangle is constituted by the center points of the three position detection element patterns, the two-dimensional code area including the three position detection element patterns and the surrounding area are two-dimensionally Since it is determined that one two-dimensional code exists in the two-dimensional code area on the condition that a feature as a code is extracted, two-dimensional code is prevented from being erroneously detected due to erroneous recognition of the position detection pattern. A two-dimensional code can be accurately detected from an image including the code. Further, even in the case of an image including a plurality of two-dimensional codes, individual two-dimensional codes can be accurately and quickly detected from such images.

以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。ここでは、二次元コードとして「QRコード」を用いる例について説明する。   Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings. Here, an example using a “QR code” as a two-dimensional code will be described.

(第1の実施の形態)
図1は、本実施の形態に係るQRコードの処理装置の概略構成を示すブロック図である。この装置は、画像データからのQRコードの検出に、本発明を適用したものである。図1に示すように、この処理装置は、原稿画像からラスター画像データを取得する画像入力装置10を備えている。画像入力装置10は、紙原稿から原稿画像を読み取るスキャナやデジタルカメラ等で構成されている。紙原稿に複数のQRコードが付されている場合には、画像入力装置10は、複数のQRコードを含むラスター画像データを取得する。
(First embodiment)
FIG. 1 is a block diagram showing a schematic configuration of a QR code processing apparatus according to the present embodiment. This apparatus applies the present invention to detection of a QR code from image data. As shown in FIG. 1, the processing apparatus includes an image input device 10 that acquires raster image data from a document image. The image input device 10 includes a scanner that reads a document image from a paper document, a digital camera, and the like. When a plurality of QR codes are attached to a paper document, the image input device 10 acquires raster image data including a plurality of QR codes.

また、処理装置は、画像入力装置10により取得されたラスター画像データを保持すると共にワーキングエリアとして機能するメモリ12と、プログラムを読み込み各種処理を実行するCPU14と、QRコードの検出処理及び復号処理を実行するプログラム等を記憶したROM16と、ネットワーク経由で他のコンピュータに接続するための外部インタフェース18と、プリンタ等の画像出力装置20と、QRコードを復号して得られたデータに関連する文書データを蓄積したデータベース22と、を備えている。   The processing device holds raster image data acquired by the image input device 10 and also functions as a working area, a CPU 14 that reads a program and executes various processes, and a QR code detection process and a decoding process. ROM 16 storing a program to be executed, external interface 18 for connecting to another computer via a network, image output device 20 such as a printer, and document data related to data obtained by decoding a QR code And a database 22 in which are stored.

これら画像入力装置10、メモリ12、CPU14、ROM16、外部インタフェース18、画像出力装置20、及びデータベース22は、データバス24で相互に接続されている。   The image input device 10, the memory 12, the CPU 14, the ROM 16, the external interface 18, the image output device 20, and the database 22 are connected to each other via a data bus 24.

次に、上記の処理装置で、複数のQRコードを含むラスター画像データを取得し、複数のQRコードの各々を復号する手順について説明する。図2は、CPU14により実行される処理ルーチンを示すフローチャートである。   Next, a procedure for acquiring raster image data including a plurality of QR codes and decoding each of the plurality of QR codes with the above processing device will be described. FIG. 2 is a flowchart showing a processing routine executed by the CPU 14.

まず、ステップ100で、画像入力装置10からラスター画像データを取得し、メモリ12に保持する。次のステップ102で、メモリ12上でその画像データを二値化する。二値化方式はしきい値を用いた単純二値化でも良いし、その他の二値化方式でもよい。次のステップ104で、二値化されたラスター画像データから、QRコードの位置検出要素パターンの中心点の座標(以下、「中心座標」という場合がある。)を全部検出し、検出した中心点の座標をリスト化して、メモリ12に保持する。検出方法としては、例えばJIS規格(JIS-X-0510)に記載された既存の方法を用いることができる。   First, in step 100, raster image data is acquired from the image input device 10 and stored in the memory 12. In the next step 102, the image data is binarized on the memory 12. The binarization method may be simple binarization using a threshold or other binarization methods. In the next step 104, all the coordinates of the center point of the QR code position detection element pattern (hereinafter sometimes referred to as “center coordinate”) are detected from the binarized raster image data, and the detected center point is detected. Are stored in the memory 12 as a list. As a detection method, for example, an existing method described in JIS standard (JIS-X-0510) can be used.

次に、ステップ106で、同じシンボルに含まれる3個の位置検出要素パターンの組み合わせを検出する「組み合わせ検出処理」を実行する。ステップ104で、位置検出要素パターンの中心点の座標が検出され、リスト化されている。リスト化の段階では、どの3個の組み合わせが同じシンボルに含まれるか不明である。このリスト中から、同じシンボルに含まれる3個の位置検出要素パターンの組み合わせを検出することにより、各シンボルの位置検出パターンの位置が求められ、QRコードが検出される。   Next, in step 106, a “combination detection process” for detecting a combination of three position detection element patterns included in the same symbol is executed. In step 104, the coordinates of the center point of the position detection element pattern are detected and listed. At the stage of listing, it is unknown which three combinations are included in the same symbol. By detecting a combination of three position detection element patterns included in the same symbol from the list, the position of the position detection pattern of each symbol is obtained, and a QR code is detected.

ここで、「組み合わせ検出処理」の概要を簡単に説明する。図10は、QRコードのシンボルの構造を示す図である。図10に示すように、QRコードのシンボル30は、3個の位置検出要素パターン32A、32B、32Cを有している。これら位置検出要素パターン32A、32B、32Cの中心点a、b、cは、図示するように、各中心点を頂点とする直角二等辺三角形36を構成する。また、シンボル30の四辺の周囲には、何も表示しない余白領域(以下、「クワイエットゾーン」という。)34が設けられている。クワイエットゾーン34の外周34Aを点線で図示する。JIS規格によれば、クワイエットゾーン34の幅は、4モジュールと規定されている。なお、モジュールとは、QRコードにおいて1ビットの情報を表示する単位正方形である。   Here, the outline of the “combination detection process” will be briefly described. FIG. 10 is a diagram illustrating a QR code symbol structure. As shown in FIG. 10, the QR code symbol 30 has three position detection element patterns 32A, 32B, and 32C. The center points a, b, and c of the position detection element patterns 32A, 32B, and 32C constitute a right-angled isosceles triangle 36 having each center point as a vertex as shown in the figure. In addition, a blank area (hereinafter referred to as “quiet zone”) 34 in which nothing is displayed is provided around the four sides of the symbol 30. An outer periphery 34A of the quiet zone 34 is illustrated by a dotted line. According to the JIS standard, the width of the quiet zone 34 is defined as 4 modules. The module is a unit square that displays 1-bit information in the QR code.

本実施の形態では、上述したシンボルの特徴を利用して組み合わせを検出する。具体的には、直角二等辺三角形を構成する3個の位置検出要素パターンの中心点の座標の組み合わせを検出し、その3個の座標の周辺にクワイエットゾーンが有るか否かを判定する。そして、クワイエットゾーンがある場合には、同じシンボルに含まれる3個の位置検出要素パターンの組み合わせであると判定することができる。なお、組み合わせ検出処理の詳細については後述する。   In the present embodiment, combinations are detected using the above-described symbol features. Specifically, a combination of coordinates of the center points of the three position detection element patterns forming a right isosceles triangle is detected, and it is determined whether or not there is a quiet zone around the three coordinates. When there is a quiet zone, it can be determined that the combination is a combination of three position detection element patterns included in the same symbol. Details of the combination detection process will be described later.

ステップ106で、位置検出要素パターンの組み合わせが全部検出されると、次に、その中から1組の組み合わせを選択し、その組み合わせに係るQRコードを復号する。即ち、まず、ステップ108で、1組の組み合わせを選択し、位置検出要素パターンの中心点の座標から、シンボルの回転角度を演算し、演算した回転角度に基づいてシンボルの向きを補正し、基準座標に対しQRコードが正立した状態にする。次のステップ110で、向きが補正されたシンボルを切り出し(トリミング)、メモリ12に保持する。次のステップ112で、シンボルの符号化領域を復号する。復号方法としては、例えば上記のJIS規格に記載された既存の方法を用いることができる。   If all the combinations of the position detection element patterns are detected in step 106, then one set of combinations is selected from the combinations, and the QR code related to the combination is decoded. That is, first, in step 108, one set of combinations is selected, the symbol rotation angle is calculated from the coordinates of the center point of the position detection element pattern, the symbol direction is corrected based on the calculated rotation angle, and the reference Make the QR code upright with respect to the coordinates. In the next step 110, the symbol whose direction is corrected is cut out (trimmed) and held in the memory 12. In the next step 112, the coding region of the symbol is decoded. As a decoding method, for example, an existing method described in the above JIS standard can be used.

次に、ステップ114で、検出された全部の組み合わせについてQRコードを復号したか否かを判断する。ここで、肯定判断の場合はルーチンを終了し、否定判断の場合はステップ108に戻って、他の1組の組み合わせを選択し、ステップ108〜ステップ112の処理を繰り返す。即ち、組み合わせ検出の結果、複数の組み合わせが検出された場合は、全部の組み合わせについて回転補正、トリミング、復号の処理を行う。   Next, in step 114, it is determined whether or not QR codes have been decoded for all the detected combinations. If the determination is affirmative, the routine is terminated. If the determination is negative, the routine returns to step 108, and another set of combinations is selected, and the processing of steps 108 to 112 is repeated. That is, when a plurality of combinations are detected as a result of combination detection, rotation correction, trimming, and decoding are performed for all combinations.

また、上記の処理装置では、復号されたデータに基づいて、様々な処理を行うことができる。例えば、復号されたデータが、データベース22に蓄積された文書を識別するID番号(以下、「文書ID」という。)である場合には、この文書IDを検索キーとしてデータベース22を検索し、データベース22から文書データ本体を取得する。そして、取得した文書データを、画像出力装置22を用いてプリントする。また、得られた文書データを、外部インタフェース18を経由して他のコンピュータに転送することもできる。   The above processing device can perform various processes based on the decoded data. For example, when the decrypted data is an ID number for identifying a document stored in the database 22 (hereinafter referred to as “document ID”), the database 22 is searched using the document ID as a search key. The document data body is acquired from 22. The acquired document data is printed using the image output device 22. The obtained document data can also be transferred to another computer via the external interface 18.

ここで、図2のステップ106で実行される「組み合わせ検出処理」について詳細に説明する。上述した通り、この処理は、位置検出要素パターンの中心点の座標が全て検出され、リスト化された後に実行される。1個のQRコードのシンボルには3個の位置検出要素パターンが含まれるので、N個のQRコードが有る場合には、3N個の座標がリスト化されている。   Here, the “combination detection process” executed in step 106 of FIG. 2 will be described in detail. As described above, this processing is executed after all the coordinates of the center point of the position detection element pattern are detected and listed. Since one QR code symbol includes three position detection element patterns, when there are N QR codes, 3N coordinates are listed.

図5は、組み合わせ検出処理のサブルーチンを示すフローチャートである。まず、ステップ200で、メモリ12に保持された中心点の座標リストを参照する。位置検出パターンを構成する3個の位置検出要素パターンの中心点をA、B、Cとし、ステップ202〜ステップ206で、中心点A、B、Cに対応させて、座標リストから3個の座標を選択する。   FIG. 5 is a flowchart showing a subroutine of the combination detection process. First, in step 200, the coordinate list of the center point held in the memory 12 is referred to. The center points of the three position detection element patterns constituting the position detection pattern are A, B, and C, and the three coordinates from the coordinate list are associated with the center points A, B, and C in steps 202 to 206. Select.

3N個から3個を総当たりになるように組み合わせる。組み合わせ数は、下記式に示すように、3Nから3を取り出す組み合わせ(=コンビネーション)の計算で求まる。   Combine 3N to 3 pieces so as to be brute force. The number of combinations is obtained by calculating a combination (= combination) for extracting 3 from 3N, as shown in the following equation.

例えば、QRコードが2個ならば、位置検出要素パターンの数は2N=6個になり、6個から3個と選択する組み合わせは20通りとなる。QRコードが10個ならば、組み合わせは4060通りとなる。   For example, if there are two QR codes, the number of position detection element patterns is 2N = 6, and there are 20 combinations to select from 6 to 3. If there are 10 QR codes, there are 4060 combinations.

次に、ステップ208で「直角二等辺三角形の判定処理」を実行する。かかる判定処理では、選択された3個の座標で特定される中心点A、B、Cが直角二等辺三角形の各頂点を構成するか否かを判定する。肯定判定(True)の場合には、中心点A、B、Cが直角二等辺三角形の各頂点を構成し、3個の位置検出要素パターンが同じシンボルに含まれる可能性があるため、次のステップ210の「クワイエットゾーンの有無の判定処理」に進む。   Next, in step 208, “right-angled isosceles triangle determination process” is executed. In such determination processing, it is determined whether or not the center points A, B, and C specified by the three selected coordinates constitute each vertex of a right-angled isosceles triangle. In the case of an affirmative determination (True), the center points A, B, and C constitute vertices of a right-angled isosceles triangle, and three position detection element patterns may be included in the same symbol. The process proceeds to “a determination process for whether there is a quiet zone” in step 210.

ステップ210では、選択された3個の座標から、QRコードのシンボルが存在する可能性のある領域(候補領域)を想定し、候補領域の周囲にクワイエットゾーンが存在するか否かを判定する。肯定判定(True)の場合には、候補領域の周囲にクワイエットゾーンが存在し、候補領域にシンボルが存在する可能性が非常に高いため、ステップ212で、選択された3個の座標を、位置検出パターンの位置を表す座標群としてリスト化し、メモリ12に格納する。即ち、選択された3個の座標に対応した位置検出要素パターンが、同じシンボルに含まれ、位置検出パターンを構成すると判断して、当該座標の組み合わせをメモリ12に格納するのである。   In step 210, an area (candidate area) where a QR code symbol may exist is assumed from the three selected coordinates, and it is determined whether or not a quiet zone exists around the candidate area. In the case of an affirmative determination (True), there is a quiet zone around the candidate area, and it is very likely that a symbol exists in the candidate area. A list of coordinates representing the position of the detection pattern is listed and stored in the memory 12. That is, it is determined that the position detection element patterns corresponding to the three selected coordinates are included in the same symbol and constitute a position detection pattern, and the combination of the coordinates is stored in the memory 12.

種々の要因により位置検出パターンの誤認識が発生する。例えば、ラスター画像データに含まれるノイズが、位置検出要素パターンと認識される場合もある。また、中心点A、B、Cが直角二等辺三角形の各頂点を構成していても、異なるシンボルに含まれる位置検出要素パターンが組み合わされている場合もある。しかしながら、QRコードのシンボルは、その四辺の周囲にクワイエットゾーンが設けられるという特徴を有しているので、本実施の形態のように、候補領域の周囲にクワイエットゾーンが存在するか否かを判定することで、異なるシンボルに含まれる位置検出要素パターンが組み合わされて、位置検出パターンと誤認識されるのを防止することができる。   Various factors cause misrecognition of the position detection pattern. For example, noise included in raster image data may be recognized as a position detection element pattern. Even if the center points A, B, and C form vertices of a right isosceles triangle, position detection element patterns included in different symbols may be combined. However, since the QR code symbol has a feature that a quiet zone is provided around its four sides, it is determined whether or not a quiet zone exists around the candidate area as in the present embodiment. By doing so, it is possible to prevent a position detection element pattern included in different symbols from being combined and erroneously recognized as a position detection pattern.

また、同じシンボルに含まれる位置検出要素パターンの組み合わせ(3個の座標の組み合わせ)が順次特定されるので、演算を延々と繰り返す必要が無く、QRコードの検出処理が簡単になり、全部の組み合わせが特定されるまでの時間が短縮される。   In addition, since combinations of position detection element patterns (combinations of three coordinates) included in the same symbol are sequentially specified, it is not necessary to repeat the calculation endlessly, and QR code detection processing is simplified, and all combinations The time until is identified is shortened.

一方、ステップ208又はステップ210で否定判定(False)の場合には、ステップ214〜ステップ218で、全部の組み合わせが選択されたか否かを検証し、全部の組み合わせが選択されていればルーチンを終了する。一方、ここで、選択されていない組み合わせがある場合には、ステップ202〜ステップ206に戻って、中心点A、B、Cに対応させて、座標リストから3個の座標の異なる組み合わせを選択する。そして、新たな組み合わせについて、ステップ208〜ステップ212の処理を繰り返す。   On the other hand, if the determination in step 208 or step 210 is negative (false), it is verified in step 214 to step 218 whether or not all combinations have been selected. If all combinations have been selected, the routine is terminated. To do. On the other hand, if there is a combination that has not been selected, the process returns to step 202 to step 206 to select a different combination of three coordinates from the coordinate list in correspondence with the center points A, B, and C. . And the process of step 208-step 212 is repeated about a new combination.

ここで、図5のステップ208で実行される「直角二等辺三角形の判定処理」について詳細に説明する。図7は、直角二等辺三角形の判定処理のルーチンを示すフローチャートである。   Here, the “right isosceles triangle determination process” executed in step 208 of FIG. 5 will be described in detail. FIG. 7 is a flowchart showing a routine for determining a right isosceles triangle.

まず、ステップ300で、選択された3個の座標を取得し、ステップ302で、中心点Aが直角二等辺三角形の直角頂となり得るか否かを判定する。ステップ302で肯定判定(True)の場合には、中心点A、B、Cが直角二等辺三角形の各頂点を構成する(True)と判定する。一方、ステップ302で否定判定(False)の場合には、次のステップ304に進み、中心点Bが直角二等辺三角形の直角頂となり得るか否かを判定する。   First, in step 300, the three selected coordinates are acquired, and in step 302, it is determined whether or not the center point A can be a right angle apex of a right isosceles triangle. If the determination in step 302 is affirmative (True), it is determined that the center points A, B, and C constitute vertices of a right-angled isosceles triangle (True). On the other hand, in the case of negative determination (False) in step 302, the process proceeds to the next step 304, and it is determined whether or not the center point B can be a right angle apex of a right isosceles triangle.

ステップ304で肯定判定(True)の場合には、中心点A、B、Cが直角二等辺三角形の各頂点を構成する(True)と判定する。一方、ステップ304で否定判定(False)の場合には、次のステップ306に進み、中心点Cが直角二等辺三角形の直角頂となり得るか否かを判定する。ステップ306で肯定判定(True)の場合には、中心点A、B、Cが直角二等辺三角形の各頂点を構成する(True)と判定する。一方、ステップ306で否定判定(False)の場合には、中心点A、B、Cが直角二等辺三角形の各頂点を構成しない(False)と判定する。   If the determination in step 304 is affirmative (True), it is determined that the center points A, B, and C constitute vertices of a right-angled isosceles triangle (True). On the other hand, in the case of negative determination (False) in step 304, the process proceeds to the next step 306, where it is determined whether or not the center point C can be a right angle apex of a right isosceles triangle. If the determination in step 306 is affirmative (True), it is determined that the center points A, B, and C constitute vertices of a right-angled isosceles triangle (True). On the other hand, if the determination in step 306 is negative (False), it is determined that the center points A, B, and C do not constitute vertices of a right isosceles triangle (False).

ここで、図7のステップ302〜306で実行される「直角頂の判定処理」について詳細に説明する。図6は、直角二等辺三角形の幾何学的な成立条件を説明するための図である。また、図8は、図7のステップ302で実行される直角頂の判定処理のルーチンを示すフローチャートである。   Here, the “right angle apex determination process” executed in steps 302 to 306 in FIG. 7 will be described in detail. FIG. 6 is a diagram for explaining the geometrical conditions for forming a right isosceles triangle. FIG. 8 is a flowchart showing a routine for determining the right-angled vertex executed in step 302 of FIG.

図6に示すように、点A、B、Cを各頂点とする三角形が、点Aを直角頂とする直角二等辺三角形であるというためには、線分ABと線分ACとがなす角度θが90°であり、且つ線分ABと線分ACの長さが等しくなければならない。   As shown in FIG. 6, in order for a triangle having points A, B, and C as vertices to be a right isosceles triangle having a point A as a right angle apex, an angle formed by a line segment AB and a line segment AC θ must be 90 °, and the lengths of the line segment AB and the line segment AC must be equal.

従って、まず、図8のステップ400で、選択された3個の座標を取得し、ステップ402で、取得した座標から線分ABと線分ACとがなす角度θを演算し、ステップ404で、演算結果に基づいて角度θが90°か否かを判断する。即ち、点Aから点Bに向かうベクトルと点Aから点Cに向かうベクトルとの内積がゼロになるか否かを判断する。ここで、否定判断(False)の場合には、中心点Aを直角頂とする直角二等辺三角形ではない(False)と判定することができる。一方、ステップ404で肯定判断(True)の場合には、次のステップ406に進む。   Therefore, first, in step 400 of FIG. 8, the three selected coordinates are acquired, and in step 402, an angle θ formed by the line segment AB and the line segment AC is calculated from the acquired coordinates, and in step 404, Based on the calculation result, it is determined whether or not the angle θ is 90 °. That is, it is determined whether or not the inner product of the vector from point A to point B and the vector from point A to point C becomes zero. Here, in the case of negative determination (False), it can be determined that it is not a right-angled isosceles triangle having the center point A as a right angle apex (False). On the other hand, if the determination in step 404 is affirmative (True), the process proceeds to the next step 406.

ステップ406で、取得した座標から線分ABと線分ACの長さを各々演算し、ステップ408で、演算結果に基づいて線分ABと線分ACの長さが等しいか否かを判断する。ここで、否定判断(False)の場合には、中心点Aを直角頂とする直角二等辺三角形ではない(False)と判定することができる。一方、ステップ408で肯定判断(True)の場合には、中心点Aを直角頂とする直角二等辺三角形である(True)と判定することができる。   In step 406, the lengths of line segment AB and line segment AC are calculated from the acquired coordinates, and in step 408, it is determined whether the lengths of line segment AB and line segment AC are equal based on the calculation result. . Here, in the case of negative determination (False), it can be determined that it is not a right-angled isosceles triangle having the center point A as a right angle apex (False). On the other hand, if the determination in step 408 is affirmative (True), it can be determined that the center point A is a right-angled isosceles triangle (True).

次に、図5のステップ210で実行される「余白領域(クワイエットゾーン)有無の判定処理」について詳細に説明する。図11及び図18は、クワイエットゾーンの有無の判定方法を説明するための図である。   Next, the “blank area (quiet zone) presence / absence determination process” executed in step 210 of FIG. 5 will be described in detail. 11 and 18 are diagrams for explaining a method for determining whether or not there is a quiet zone.

図11に示すように、QRコードが存在する場合、シンボル30のクワイエットゾーン34に引かれた仮想線(スキャンライン)38上をスキャンすると、このスキャンライン38は、全て、画素値が「白」である画素(以下、「白画素」という。)で構成される。なお、画素値が「黒」である画素は「黒画素」という。また、スキャンライン38を図示した以外は、図10に示すQRコードと同じ構成を備えているため、同じ構成部分には同じ符号を付して説明を省略する。   As shown in FIG. 11, when a QR code is present, when scanning on a virtual line (scan line) 38 drawn in the quiet zone 34 of the symbol 30, all of the scan lines 38 have pixel values of “white”. (Hereinafter, referred to as “white pixel”). A pixel having a pixel value “black” is referred to as a “black pixel”. Further, except for the illustration of the scan line 38, the same configuration as the QR code shown in FIG. 10 is provided.

本実施の形態では、図18に示すように、3個の位置検出要素パターン42A、42B、42Cの中心点をA、B、Cとし、QRコードのシンボルが存在する可能性のある領域(候補領域)40を想定する。また、候補領域40の周囲にクワイエットゾーンが存在すると仮定し、クワイエットゾーンの外周44Aを想定する。更に、候補領域40の外周40Aとクワイエットゾーンの外周44Aとの間にスキャンライン48を設定する。   In the present embodiment, as shown in FIG. 18, the center points of the three position detection element patterns 42A, 42B, and 42C are A, B, and C, and regions (candidates) where a QR code symbol may exist. Region) 40 is assumed. Further, it is assumed that a quiet zone exists around the candidate area 40, and an outer periphery 44A of the quiet zone is assumed. Further, a scan line 48 is set between the outer periphery 40A of the candidate area 40 and the outer periphery 44A of the quiet zone.

このスキャンライン48上をスキャンする。即ち、メモリ上に展開された画像データの画素値を順番に取得する。スキャンライン48が白画素で構成されていれば、候補領域40の周囲にクワイエットゾーンが存在すると判定することができる。即ち、シンボルの周囲にクワイエットゾーンが存在するというQRコードの特徴を備えており、候補領域40にシンボルが存在する可能性が非常に高い。   This scan line 48 is scanned. That is, the pixel values of the image data developed on the memory are acquired in order. If the scan line 48 is composed of white pixels, it can be determined that there is a quiet zone around the candidate area 40. That is, it has a QR code feature that there is a quiet zone around the symbol, and the possibility that a symbol exists in the candidate area 40 is very high.

スキャンライン48は、例えば、クワイエットゾーンの中心線に沿って設定することができる。即ち、外周40Aと外周44Aとの中間位置にスキャンライン48を設定することができる。スキャンライン48を、上記した中心線に沿って候補領域40の四辺の周囲に設定した場合、スキャンライン48で囲まれた領域の形状は、候補領域40と同じ正方形となる。スキャンライン48の基準となるのは、候補領域40の中心点Eから中心点A、B、Cの方向に延びた延長線上の点AS、BS、CSと、点AS、BS、CSと共に正方形の頂点を構成する点DSである。点DSの座標は点AS、BS、CSの座標から算出される。 The scan line 48 can be set along the center line of the quiet zone, for example. That is, the scan line 48 can be set at an intermediate position between the outer periphery 40A and the outer periphery 44A. When the scan line 48 is set around the four sides of the candidate area 40 along the center line, the shape of the area surrounded by the scan line 48 is the same square as the candidate area 40. The reference of the scan line 48 is the points A S , B S , C S on the extension line extending from the center point E of the candidate area 40 in the direction of the center points A, B, C, and the points A S , B S. , C S is a point D S that forms a vertex of a square. The coordinates of the point D S are calculated from the coordinates of the points A S , B S and C S.

図12は、クワイエットゾーンが存在すると判定される例を示す図である。この場合は、中心点A、B、Cが直角二等辺三角形46の各頂点を構成すると判定され、中心点A、B、Cの座標から想定された候補領域の周囲にスキャンライン48が設定されるが、スキャンライン48が白画素で構成されているので、候補領域の周囲にクワイエットゾーンが存在すると判定される。   FIG. 12 is a diagram illustrating an example in which it is determined that a quiet zone exists. In this case, it is determined that the center points A, B, and C constitute each vertex of the right-angled isosceles triangle 46, and a scan line 48 is set around the candidate area assumed from the coordinates of the center points A, B, and C. However, since the scan line 48 is composed of white pixels, it is determined that a quiet zone exists around the candidate area.

一方、図13は、中心点A、B、Cが直角二等辺三角形46の各頂点を構成すると判定されたにも拘わらず、クワイエットゾーンが存在しないと判定される例を示す図である。このように、中心点A、B、Cの全部が同じシンボルに属していなくても、中心点A、B、Cが直角二等辺三角形46の各頂点を構成する場合がある。この場合、中心点A、B、Cの座標から想定された候補領域の周囲にスキャンライン48が設定されると、スキャンライン48は白画素と黒画素とで構成されることになり、候補領域の周囲にクワイエットゾーンは存在しないと判定される。   On the other hand, FIG. 13 is a diagram illustrating an example in which it is determined that a quiet zone does not exist even though it is determined that the center points A, B, and C constitute each vertex of the right-angled isosceles triangle 46. As described above, the center points A, B, and C may form the vertices of the right-angled isosceles triangle 46 even if the center points A, B, and C do not all belong to the same symbol. In this case, when the scan line 48 is set around the candidate area assumed from the coordinates of the center points A, B, and C, the scan line 48 is composed of white pixels and black pixels. It is determined that there is no quiet zone around.

図14は、余白領域(クワイエットゾーン)有無の判定処理のルーチンを示すフローチャートである。上述した通り、クワイエットゾーンの有無を判定するポイントは、スキャンラインの位置の決定方法にある。スキャンラインの基準点の座標は、中心点A、B、Cの座標から算出される。   FIG. 14 is a flowchart illustrating a routine for determining whether or not there is a blank area (quiet zone). As described above, the point for determining whether or not there is a quiet zone is in the method for determining the position of the scan line. The coordinates of the reference point of the scan line are calculated from the coordinates of the center points A, B, and C.

まず、ステップ500で、点Bと点Cとを結ぶ線分BCの中点Eの座標を演算する(図18参照)。点Eは、点Aを直角頂とした場合の直角二等辺三角形の長辺の中点である。また、点Eは、候補領域40の中心点であり、候補領域40にシンボルが存在する場合にはQRコードの中心点でもある。点Bの座標を(xb、yb)とし、点Cの座標を(xc、yc)とすると、点Eの座標(xe、ye)は下記式で表される。 First, in step 500, the coordinates of the midpoint E of the line segment BC connecting the points B and C are calculated (see FIG. 18). Point E is the midpoint of the long sides of the right-angled isosceles triangle when point A is a right angle apex. The point E is the center point of the candidate area 40, and is also the center point of the QR code when a symbol exists in the candidate area 40. If the coordinates of the point B are (x b , y b ) and the coordinates of the point C are (x c , y c ), the coordinates (x e , y e ) of the point E are expressed by the following equations.

次に、ステップ502〜ステップ506で、スキャンラインの基準点AS、BS、CSの座標を演算する。まず、ステップ502で、点Aの座標から基準点ASの座標を演算し、ステップ504で、点Bの座標から基準点BSの座標を演算し、ステップ506で、点Cの座標から基準点CSの座標を演算する。なお、演算方法の詳細については後述する。そして、ステップ508で、点Eを中心として基準点ASと点対称な位置にある基準点DSの座標を演算する。下記のベクトル演算により点DSの座標を求めることができる。これにより、基準点AS、BS、CS、DSを結ぶスキャンラインが設定される。 Next, in steps 502 to 506, the coordinates of the reference points A S , B S , and C S of the scan line are calculated. First, in step 502, the coordinates of the reference point A S are calculated from the coordinates of the point A, in step 504, the coordinates of the reference point B S are calculated from the coordinates of the point B, and in step 506, the coordinates of the reference point A S are calculated. The coordinates of the point C S are calculated. Details of the calculation method will be described later. Then, in step 508, the coordinates of the reference point D S that is point-symmetric with the reference point A S around the point E are calculated. The coordinates of the point D S can be obtained by the following vector calculation. As a result, scan lines connecting the reference points A S , B S , C S and D S are set.

次に、ステップ510で、スキャンライン上をスキャンする。例えば、基準点AS→基準点BS→基準点DS→基準点CS→基準点ASの順にスキャンする。次のステップ512で、スキャンライン上の総画素数N、白画素数W、及び総画素数に対する白画素数の割合W/Nを各々演算する。続くステップ514で、CPU14のメモリ内に予め設定された「しきい値TH」を参照し、演算された総画素数に対する白画素数の割合W/Nが「しきい値TH」よりも大きいか否かを判断する。 Next, in step 510, the scan line is scanned. For example, scanning in the order of the reference point A S → reference point B S → reference point D S → reference point C S → reference point A S. In the next step 512, the total number of pixels N on the scan line, the number of white pixels W, and the ratio W / N of the number of white pixels to the total number of pixels are calculated. In subsequent step 514, referring to “threshold value TH” preset in the memory of CPU 14, is the ratio W / N of the number of white pixels to the calculated total number of pixels larger than “threshold value TH”? Judge whether or not.

ステップ514で肯定判断(OK)の場合は、候補領域の周囲にクワイエットゾーンが存在する(True)と判定して、ルーチンを終了する。一方、否定判断(NG)の場合は、候補領域の周囲にクワイエットゾーンは存在しない(False)と判定して、ルーチンを終了する。   If the determination in step 514 is affirmative (OK), it is determined that a quiet zone exists around the candidate area (True), and the routine is terminated. On the other hand, in the case of negative determination (NG), it is determined that there is no quiet zone around the candidate area (False), and the routine is terminated.

図15は、位置検出要素パターンの中心点Aとスキャンラインの基準点ASの位置関係を示す図である。図15に示すように、QRコードの中心点Eと位置検出要素パターン42Aの中心点Aとを結ぶ線分EAを、QRコードの外側にクワイエットゾーンの外周44Aまで延長する。この延長線は、位置検出要素パターン42Aの頂点Apを通過して、基準点ASでスキャンライン48と交差する。延長線上の画素値を見ていくと、中心点Aでは黒であるが、次に白に反転し、更に黒に反転する。そして、位置検出要素パターン42Aの頂点Apで、再度白に反転する。 Figure 15 is a diagram showing the positional relationship between the reference point A S of the center point A and the scan line position detection pattern. As shown in FIG. 15, a line segment EA connecting the center point E of the QR code and the center point A of the position detection element pattern 42A is extended to the outer periphery 44A of the quiet zone outside the QR code. This extension passes through the apex A p of the position detection element patterns 42A, intersects the scan line 48 at the reference point A S. Looking at the pixel value on the extension line, it is black at the center point A, but then it is inverted to white and then inverted to black. Then, at the apex A p of the position detection element patterns 42A, inverted to white again.

図16は、位置検出要素パターンの構造を示す図である。位置検出要素パターンの構造はJIS規格で規定されており、図示した通り、3個の同心正方形が重なった形状であり、黒の7×7モジュール50、白の5×5モジュール52、及び黒の3×3モジュール54から構成されている。各モジュール幅の比率は1:1:3:1:1である。   FIG. 16 is a diagram illustrating the structure of the position detection element pattern. The structure of the position detection element pattern is defined by the JIS standard, and as shown in the figure, it is a shape in which three concentric squares are overlapped. The black 7 × 7 module 50, the white 5 × 5 module 52, and the black The 3 × 3 module 54 is used. The ratio of each module width is 1: 1: 3: 1: 1.

ここでモジュールサイズを1とすると、図15に示すように、線分AApの長さは3.5と表現される。なお、モジュールサイズとは、QRコードを描画する際の白黒要素の最小幅である。クワイエットゾーンの幅Wqは、4モジュールサイズとJIS規格で規定されている。スキャンライン48を、クワイエットゾーンの中心線に沿って設定すると、線分ASpの長さは2と表現される。換言すれば、基準点ASの位置は長さ3.5の線分AApを長さ2だけ延長した位置となる。ベクトル表記すると図17のようになる。従って、下記のベクトル演算により、基準点ASの座標を求めることができる。また、基準点BS、基準点CSの座標も同様にして求めることができる。 Assuming that the module size is 1, the length of the line segment AA p is expressed as 3.5 as shown in FIG. The module size is the minimum width of a monochrome element when drawing a QR code. The width W q of the quiet zone is defined by 4 module sizes and JIS standards. When the scan line 48 is set along the center line of the quiet zone, the length of the line segment A S A p is expressed as 2. In other words, the position of the reference point A S is a position obtained by extending the line segment AA p having a length of 3.5 by the length 2. The vector notation is as shown in FIG. Therefore, the coordinates of the reference point A S can be obtained by the following vector calculation. Further, the coordinates of the reference point B S and the reference point C S can be obtained in the same manner.

以上説明した通り、本実施の形態では、選択した3個の位置検出要素パターンの中心点が直角二等辺三角形の各頂点を構成するという条件に加えて、3個の中心点の座標から想定される候補領域の周囲にクワイエットゾーンが存在するという条件を満たす場合に、選択した3個の座標に対応した位置検出要素パターンが、同じシンボルに含まれ、位置検出パターンを構成すると判断するので、異なるシンボルに含まれる位置検出要素パターンが組み合わされて、QRコードの位置検出パターンと誤認識されるのを防止することができる。これにより、複数のQRコードを含む画像から個々のQRコードを正確に検出することができる。   As described above, in the present embodiment, in addition to the condition that the center points of the selected three position detection element patterns form the vertices of a right-angled isosceles triangle, it is assumed from the coordinates of the three center points. If the condition that there is a quiet zone around the candidate area is satisfied, it is determined that the position detection element patterns corresponding to the three selected coordinates are included in the same symbol and constitute the position detection pattern. By combining the position detection element patterns included in the symbol, it is possible to prevent erroneous recognition as a QR code position detection pattern. Thereby, each QR code can be accurately detected from an image including a plurality of QR codes.

また、本実施の形態では、候補領域の周囲にクワイエットゾーンが存在するという条件を加えることで、同じシンボルに含まれる位置検出要素パターンの組み合わせ(3個の座標の組み合わせ)が順次特定されるので、演算を延々と繰り返す必要が無く、QRコードの検出処理が簡単になり、全部の組み合わせが特定されるまでの時間が短縮される。これにより、複数のQRコードを含む画像から個々のQRコードを正確且つ迅速に検出することができる。   Further, in the present embodiment, by adding the condition that there is a quiet zone around the candidate area, combinations of position detection element patterns (combinations of three coordinates) included in the same symbol are sequentially specified. There is no need to repeat the calculation endlessly, the QR code detection process is simplified, and the time until all combinations are specified is shortened. Thereby, it is possible to accurately and quickly detect individual QR codes from an image including a plurality of QR codes.

なお、上記第1の実施の形態では、クワイエットゾーンの有無を判定する場合に、演算された総画素数に対する白画素数の割合W/Nを評価する「しきい値TH」として、予め設定した値を用いる例について説明したが、原稿画像から読み取ったQRコードのシンボルサイズに応じて、しきい値を動的に設定することもできる。   In the first embodiment, when the presence / absence of a quiet zone is determined, the “threshold value TH” for evaluating the ratio W / N of the number of white pixels to the calculated total number of pixels is set in advance. Although the example using the value has been described, the threshold value can also be dynamically set according to the symbol size of the QR code read from the document image.

JIS規格ではQRコードの型番が大きくなると、QRコードの面積が大きくなるので、クワイエットゾーンの有無を判定するためのスキャンラインもこれに応じて長くなる。スキャンラインが長くなると、スキャンライン上にノイズが存在する可能性も多くなる。この場合に「しきい値TH」を小さく設定することで、多少のノイズがあってもクワイエットゾーンの有無を正確に判定することが可能になる。   In the JIS standard, as the QR code model number increases, the area of the QR code increases, so the scan line for determining the presence or absence of a quiet zone also increases accordingly. As the scan line becomes longer, the possibility of noise on the scan line increases. In this case, by setting the “threshold value TH” small, it is possible to accurately determine whether there is a quiet zone even if there is some noise.

例えば、QRコードの中心点Eの座標から位置検出要素パターンの中心点Aの座標までの距離をモジュール数で換算した値Rに基づいて「しきい値TH」の値を決定する。図19は、換算値Rの算出方法を説明するための概念図である。QRコードの中心点Eの座標から位置検出要素パターン42Aの中心点Aの座標までの距離L1と、位置検出要素パターン42Aの中心点Aから位置検出要素パターン42Aの頂点Apまでの距離L2とを各々算出する。なお、距離L1及び距離L2の値はモジュール数(=画素数)で換算された値である。距離L2の値は3.5モジュールに相当する。従って、距離L1に相当するモジュール数Rは下記式から求めることができる。 For example, the value of “threshold value TH” is determined based on the value R obtained by converting the distance from the coordinate of the center point E of the QR code to the coordinate of the center point A of the position detection element pattern by the number of modules. FIG. 19 is a conceptual diagram for explaining a method of calculating the conversion value R. The distance L1 from the coordinate of the center point E of the QR code to the coordinates of the center point A of the position detection element patterns 42A, and the distance L2 from the center point A of the position detection element patterns 42A to the apex A p of the position detection element patterns 42A Are calculated respectively. Note that the values of the distance L1 and the distance L2 are values converted by the number of modules (= number of pixels). The value of the distance L2 corresponds to 3.5 modules. Therefore, the number R of modules corresponding to the distance L1 can be obtained from the following equation.

しきい値THは、上記の換算値Rに基づいて下記計算式から求めることができる。A、Bは定数である。この計算式に従ってしきい値THを求めることで、QRコードの型番に応じて最適なしきい値THを設定することが可能となる。   The threshold value TH can be obtained from the following calculation formula based on the converted value R. A and B are constants. By obtaining the threshold value TH according to this calculation formula, it is possible to set the optimum threshold value TH according to the QR code model number.

また、上記第1の実施の形態では、スキャンラインを候補領域の四辺の周囲に設定する例について説明したが、図20に示すように、基準点Cs、基準点As、基準点Bsを結ぶスキャンライン48を、候補領域40に対し少なくとも直角二等辺三角形の短辺側に設定することで、クワイエットゾーンの有無を判定することが可能になる。この場合には、図18に示す基準点DSの座標を演算する必要がなくなり、スキャンラインの設定が容易になる。また、スキャンラインが短くなることで、ノイズの影響を受け難くなる。 In the first embodiment, the example in which the scan lines are set around the four sides of the candidate area has been described. However, as shown in FIG. 20, the scan connecting the reference point Cs, the reference point As, and the reference point Bs. By setting the line 48 at least on the short side of the isosceles right triangle with respect to the candidate region 40, it is possible to determine whether or not there is a quiet zone. In this case, it is not necessary to calculate the coordinates of the reference point D S shown in FIG. 18, and the setting of the scan line is facilitated. In addition, since the scan line becomes shorter, it is less susceptible to noise.

また、上記第1の実施の形態では、スキャンラインを用いてクワイエットゾーンの有無を判定する例について説明したが、図21に示すように、候補領域40の周囲に所定範囲のスキャン領域78(斜線部)を設定し、スキャン領域78上をスキャンすることで、クワイエットゾーンの有無を判定することも可能である。   In the first embodiment, the example in which the presence / absence of the quiet zone is determined using the scan line has been described. However, as illustrated in FIG. It is also possible to determine whether or not there is a quiet zone by scanning the scan area 78.

また、上記第1の実施の形態では、直角二等辺三角形の判定処理の後に、クワイエットゾーンの有無の判定処理を行う例について説明したが、処理の順序を入れ替えて、クワイエットゾーンの有無の判定処理の後に、直角二等辺三角形の判定処理を行うこともできる。   In the first embodiment, the example in which the determination process for the presence / absence of the quiet zone is performed after the determination process for the right isosceles triangle has been described. However, the determination process for the presence / absence of the quiet zone is performed by changing the processing order. After that, a determination process of a right isosceles triangle can be performed.

更に、上記第1の実施の形態では、位置検出パターンを構成すると判断された3個の位置検出要素パターンの組み合わせ(3個の座標の組み合わせ)をメモリに格納する例について説明したが、図22に示すように、3個の座標の組み合わせをメモリに格納する(図5のステップ212)代わりに、ステップ211で、3個の座標の組み合わせを別途メモリに格納する等して管理し、ステップ213で、メモリに格納した3個の座標を最初のリストから削除するように、ルーチンを変更してもよい。このような処理手順とすることで、判定回数を削減し、処理量を減らして、処理時間を短縮することが可能となる。なお、ステップ211及びステップ213以外は図5に示す処理手順と同一であるため、同一の手順には同じ符号を付して説明を省略する。   Furthermore, in the first embodiment, an example in which a combination of three position detection element patterns determined to constitute a position detection pattern (a combination of three coordinates) is stored in the memory has been described. As shown in FIG. 5, instead of storing the combination of the three coordinates in the memory (step 212 in FIG. 5), in step 211, the combination of the three coordinates is managed separately by storing it in the memory, and step 213 is performed. Thus, the routine may be changed so that the three coordinates stored in the memory are deleted from the first list. By adopting such a processing procedure, the number of determinations can be reduced, the amount of processing can be reduced, and the processing time can be shortened. Since steps other than step 211 and step 213 are the same as the processing procedure shown in FIG. 5, the same procedure is denoted by the same reference numeral and description thereof is omitted.

(第2の実施の形態)
第2の実施の形態では、位置検出要素パターンの中心点の座標を検出し、リスト化して管理する第1の実施の形態とは異なる方法で、中心点の座標を管理する。図23は、組み合わせ検出処理のサブルーチンを示すフローチャートである。このサブルーチンは、図2に示すルーチンのステップ106で実行される。これ以外の点は、第1の実施の形態に係る処理手順と同様である。
(Second Embodiment)
In the second embodiment, the coordinates of the center point of the position detection element pattern are detected, and the coordinates of the center point are managed by a method different from the first embodiment in which the position detection element pattern is managed in a list. FIG. 23 is a flowchart showing a subroutine of the combination detection process. This subroutine is executed in step 106 of the routine shown in FIG. The other points are the same as the processing procedure according to the first embodiment.

図23に示す組み合わせ検出処理は、位置検出要素パターンの中心点の座標が全て検出され、リスト化された後に実行される。1個のQRコードのシンボルには3個の位置検出要素パターンが含まれるので、N個のQRコードが有る場合には、3N個の位置検出要素パターンの中心点の座標がリスト化されている。このリスト化の際に、全部の座標の値は有効であると設定する。   The combination detection process shown in FIG. 23 is executed after all the coordinates of the center point of the position detection element pattern are detected and listed. Since one QR code symbol includes three position detection element patterns, when there are N QR codes, the coordinates of the center point of 3N position detection element patterns are listed. . At the time of listing, all coordinate values are set to be valid.

まず、ステップ600で、メモリ12に保持された中心点の座標リストを参照する。次に、位置検出パターンを構成する3個の位置検出要素パターンの中心点をA、B、Cとし、ステップ602〜ステップ612で、中心点A、B、Cに対応させて、座標リストから3個の座標を組み合わせて選択する。   First, in step 600, the coordinate list of the center point held in the memory 12 is referred to. Next, the center points of the three position detection element patterns constituting the position detection pattern are set as A, B, and C, and 3 from the coordinate list corresponding to the center points A, B, and C in steps 602 to 612. Select a combination of coordinates.

ステップ602で、座標リストから中心点Aに対応する座標を選択し、ステップ604で、選択された座標が有効か否かを判断する。否定判断(False)の場合、即ち、選択された座標が無効である場合には、ステップ622に進んで、座標リストから有効な座標を選択して、中心点Aに対応する座標データを入れ替える。肯定判断(True)の場合、即ち、選択された座標が有効である場合には、次のステップ606に進む。   In step 602, a coordinate corresponding to the center point A is selected from the coordinate list, and in step 604, it is determined whether or not the selected coordinate is valid. In the case of negative determination (False), that is, when the selected coordinate is invalid, the process proceeds to Step 622 to select a valid coordinate from the coordinate list and replace the coordinate data corresponding to the center point A. If the determination is affirmative (True), that is, if the selected coordinates are valid, the process proceeds to the next step 606.

次に、ステップ606で、座標リストから中心点Bに対応する座標を選択し、ステップ608で、選択された座標が有効か否かを判断する。否定判断(False)の場合、即ち、選択された座標が無効である場合には、ステップ624に進んで、座標リストから有効な座標を選択して、中心点Bに対応する座標データを入れ替える。肯定判断(True)の場合、即ち、選択された座標が有効である場合には、次のステップ610に進む。   Next, in step 606, a coordinate corresponding to the center point B is selected from the coordinate list, and in step 608, it is determined whether or not the selected coordinate is valid. In the case of negative determination (False), that is, when the selected coordinate is invalid, the process proceeds to step 624 to select a valid coordinate from the coordinate list and replace the coordinate data corresponding to the center point B. If the determination is affirmative (True), that is, if the selected coordinates are valid, the process proceeds to the next step 610.

次に、ステップ610で、座標リストから中心点Cに対応する座標を選択し、ステップ612で、選択された座標が有効か否かを判断する。否定判断(False)の場合、即ち、選択された座標が無効である場合には、ステップ626に進んで、座標リストから有効な座標を選択して、中心点Cに対応する座標データを入れ替える。肯定判断(True)の場合、即ち、選択された座標が有効である場合には、次のステップ614に進む。   Next, in step 610, a coordinate corresponding to the center point C is selected from the coordinate list, and in step 612, it is determined whether or not the selected coordinate is valid. In the case of a negative determination (False), that is, when the selected coordinate is invalid, the process proceeds to step 626 to select a valid coordinate from the coordinate list and replace the coordinate data corresponding to the center point C. If the determination is affirmative (True), that is, if the selected coordinates are valid, the process proceeds to the next step 614.

次に、ステップ614で、直角二等辺三角形の判定処理を実行する。直角二等辺三角形の判定処理は、図7に示すルーチンに従い実行される。ここで肯定判定(True)の場合には、中心点A、B、Cが直角二等辺三角形の各頂点を構成し、3個の位置検出要素パターンが同じシンボルに含まれる可能性があるため、次のステップ616に進み、クワイエットゾーンの有無の判定処理を実行する。クワイエットゾーンの有無の判定処理は、図14に示すルーチンに従い実行される。   Next, in step 614, a right isosceles triangle determination process is executed. The determination process of the right isosceles triangle is executed according to the routine shown in FIG. Here, in the case of an affirmative determination (True), the center points A, B, and C constitute vertices of a right isosceles triangle, and three position detection element patterns may be included in the same symbol. Proceeding to next step 616, the process for determining whether or not there is a quiet zone is executed. The process for determining whether there is a quiet zone is executed according to the routine shown in FIG.

ステップ616で肯定判定(True)の場合には、ステップ618で、選択された3個の座標の組み合わせを、位置検出パターンの位置を表す座標群としてリスト化し、メモリ12に格納する。即ち、選択した3個の座標に対応した位置検出要素パターンが、同じシンボルに含まれ、位置検出パターンを構成すると判断して、選択された3個の座標の組み合わせをメモリ12に格納する。   If the determination in step 616 is affirmative (True), in step 618, the selected combination of three coordinates is listed as a coordinate group representing the position of the position detection pattern and stored in the memory 12. That is, it is determined that the position detection element patterns corresponding to the three selected coordinates are included in the same symbol and constitute the position detection pattern, and the combination of the three selected coordinates is stored in the memory 12.

次に、ステップ620で、座標リストにおいて格納した座標の値は無効であると設定する。選択された3個の座標に対応した位置検出要素パターンは、既に位置検出パターンを構成すると判断されているので、別のQRコードの位置検出パターンの中心点の座標を構成することはあり得ない。このため、選択された3個の座標の値は無効であると設定することができる。   Next, in step 620, the coordinate value stored in the coordinate list is set to be invalid. Since the position detection element pattern corresponding to the selected three coordinates has already been determined to form a position detection pattern, it is impossible to form the coordinates of the center point of the position detection pattern of another QR code. . For this reason, it can be set that the value of the selected three coordinates is invalid.

次に、ステップ622で、全部の組み合わせが選択されたか否かを検証し、全部の組み合わせが選択されていればルーチンを終了する。一方、ここで、選択されていない組み合わせがある場合には、ステップ602に戻って、中心点A、B、Cに対応させて、座標リストから3個の座標の異なる組み合わせを選択し、ステップ602〜ステップ620の処理を繰り返す。   Next, in step 622, it is verified whether all combinations have been selected. If all combinations have been selected, the routine is terminated. On the other hand, if there is a combination that has not been selected, the process returns to step 602 to select a different combination of three coordinates from the coordinate list in correspondence with the center points A, B, and C. Repeat the process of step 620.

以上説明した通り、本実施の形態では、選択した3個の位置検出要素パターンの中心点が直角二等辺三角形の各頂点を構成するという条件に加えて、3個の中心点の座標から想定される候補領域の周囲にクワイエットゾーンが存在するという条件を満たす場合に、選択した3個の座標に対応した位置検出要素パターンが、同じシンボルに含まれ、位置検出パターンを構成すると判断するので、第1の実施の形態と同様に、複数のQRコードを含む画像から個々のQRコードを正確且つ迅速に検出することができる。   As described above, in the present embodiment, in addition to the condition that the center points of the selected three position detection element patterns form the vertices of a right-angled isosceles triangle, it is assumed from the coordinates of the three center points. If the condition that there is a quiet zone around the candidate area is satisfied, it is determined that the position detection element pattern corresponding to the three selected coordinates is included in the same symbol and constitutes the position detection pattern. As in the first embodiment, individual QR codes can be detected accurately and quickly from an image including a plurality of QR codes.

また、位置検出パターンを構成すると判断された中心点の座標の値は無効であると設定し、それ以降の判定に用いないようにすることで、判定回数を削減し、処理量を減らして、処理時間を短縮することが可能である。   In addition, the coordinate value of the center point determined to constitute the position detection pattern is set to be invalid and is not used for subsequent determinations, thereby reducing the number of determinations and reducing the processing amount. Processing time can be shortened.

第1の実施の形態の処理は単純であるため、ハードウエア(HW)での実装や、DSP等のファームウエアへの実装に適している。これに対し、第2の実施の形態の処理は複雑であるが、処理量が減るためソフトウエア(SW)への実装に適している。   Since the processing of the first embodiment is simple, it is suitable for mounting on hardware (HW) or mounting on firmware such as DSP. On the other hand, the processing of the second embodiment is complex, but is suitable for mounting on software (SW) because the processing amount is reduced.

(第3の実施の形態) (Third embodiment)

第3の実施の形態では、QRコードのシンボルが存在する領域では白黒画素の比率が略等しくなるという特徴(以下、「QRコードらしさ」という。)を利用して、位置検出要素パターンの組み合わせを検出する。図24は、組み合わせ検出処理のサブルーチンを示すフローチャートである。このサブルーチンは、図2に示すルーチンのステップ106で実行される。これ以外の点は、第1の実施の形態に係る処理手順と同様である。   In the third embodiment, a combination of position detection element patterns is used by utilizing the feature that the ratio of black and white pixels is substantially equal in an area where a QR code symbol exists (hereinafter referred to as “QR code-likeness”). To detect. FIG. 24 is a flowchart showing a subroutine of the combination detection process. This subroutine is executed in step 106 of the routine shown in FIG. The other points are the same as the processing procedure according to the first embodiment.

このサブルーチンでは、図24に示すように、クワイエットゾーンの有無の判定処理(図5のステップ210)の代わりに、ステップ209で、QRコードらしさを判定する。なお、ステップ209以外は図5に示す処理手順と同一であるため、同一の手順には同じ符号を付して説明を省略する。   In this subroutine, as shown in FIG. 24, instead of the process of determining whether there is a quiet zone (step 210 in FIG. 5), the likelihood of a QR code is determined in step 209. Since the processing procedure other than step 209 is the same as the processing procedure shown in FIG. 5, the same procedure is denoted by the same reference numeral and description thereof is omitted.

ここで、図24のステップ209で実行される「QRコードらしさの判定処理」について詳細に説明する。図25及び図26は、QRコードらしさの判定方法を説明するための図である。   Here, the “QR-likeness determination process” executed in step 209 in FIG. 24 will be described in detail. 25 and 26 are diagrams for explaining a QR code-likeness determination method.

図25に示すように、QRコードのシンボル30が存在する場合に、3個の位置検出要素パターン32A、32B、32Cの中心点をa、b、cとすると、点a、b、cを各々頂点とする正方形33で囲まれた領域35は、シンボル30の内部に存在する。図26は、この領域35を切り出した図である。図25及び図26から分かるように、正方形33で囲まれた領域35では、白画素数と黒画素数とが略等しくなる。即ち、白画素数と黒画素数との比は略1であり、白画素数と黒画素数との差は略0である。また、白黒反転回数は比較的多くなる。   As shown in FIG. 25, when the symbol 30 of the QR code exists, if the center points of the three position detection element patterns 32A, 32B, and 32C are a, b, and c, the points a, b, and c are respectively A region 35 surrounded by a square 33 serving as a vertex exists inside the symbol 30. FIG. 26 is a diagram in which this region 35 is cut out. As can be seen from FIGS. 25 and 26, in the region 35 surrounded by the square 33, the number of white pixels and the number of black pixels are substantially equal. That is, the ratio between the number of white pixels and the number of black pixels is approximately 1, and the difference between the number of white pixels and the number of black pixels is approximately 0. Also, the number of black and white inversions is relatively large.

本実施の形態では、図27に示すように、3個の位置検出要素パターン42A、42B、42Cの中心点をA、B、Cとし、点A、B、Cを各々頂点とする正方形43で囲まれた領域(候補領域)40を想定する。この候補領域40上をスキャンし、白画素数と黒画素数とを計算した結果、白画素数と黒画素数の比率が予め設定された範囲内に収まる場合には、候補領域40がQRコードらしさを有していると判定することができる。即ち、シンボルが存在する領域では白黒画素の比率が略等しくなるというQRコードの特徴を備えており、候補領域40はシンボル内に存在する可能性が非常に高い。   In the present embodiment, as shown in FIG. 27, the center points of the three position detection element patterns 42A, 42B, and 42C are A, B, and C, and the squares 43 have points A, B, and C as vertices. An enclosed area (candidate area) 40 is assumed. As a result of scanning the candidate area 40 and calculating the number of white pixels and the number of black pixels, if the ratio between the number of white pixels and the number of black pixels falls within a preset range, the candidate area 40 is displayed as a QR code. It can be determined that the image is unique. That is, it has a QR code feature that the ratio of black and white pixels is substantially equal in the area where the symbol exists, and the possibility that the candidate area 40 exists in the symbol is very high.

具体的には、下記式に示すように、白画素数と黒画素数との差が「しきい値M」より小さくなった場合に、QRコードらしさを有していると判定する。式中、「しきい値M」はマージンを表す定数であり、QRコードのシンボルサイズに応じて設定される。   Specifically, as shown in the following formula, when the difference between the number of white pixels and the number of black pixels becomes smaller than the “threshold value M”, it is determined that the image has QR code-likeness. In the formula, “threshold value M” is a constant representing a margin, and is set according to the symbol size of the QR code.

一方、図28は、中心点A、B、Cが直角二等辺三角形の各頂点を構成すると判定されたにも拘わらず、QRコードらしさを有していないと判定される例を示す図である。このように、中心点A、B、Cの全部が同じシンボルに属していなくても、中心点A、B、Cが直角二等辺三角形の各頂点を構成する場合がある。この場合、中心点A、B、Cの座標から想定された候補領域40では、白画素数の割合が圧倒的に大きくなり、QRコードらしさを有していないと判定される。   On the other hand, FIG. 28 is a diagram showing an example in which it is determined that the center points A, B, and C constitute each vertex of a right-angled isosceles triangle but do not have the QR code-likeness. . In this way, even if the center points A, B, and C do not all belong to the same symbol, the center points A, B, and C may constitute vertices of a right-angled isosceles triangle. In this case, in the candidate area 40 assumed from the coordinates of the center points A, B, and C, it is determined that the ratio of the number of white pixels is overwhelmingly large and does not have the QR code quality.

図29は、QRコードらしさの判定処理のルーチンを示すフローチャートである。このルーチンは、図24のステップ209で実行される。まず、ステップ700で、候補領域40上の白画素数をカウントし、次のステップ702で、候補領域40上の黒画素数をカウントする。続くステップ704で、白画素数と黒画素数との差を求め、その差が「しきい値M」より小さいか否かを判断する。肯定判断(YES)の場合には、候補領域40はQRコードらしさを有している(True)と判定して、ルーチンを終了する。一方、否定判断(NO)の場合には、候補領域40はQRコードらしさを有していない(False)と判定して、ルーチンを終了する。   FIG. 29 is a flowchart illustrating a routine of QR code likelihood determination processing. This routine is executed in step 209 of FIG. First, in step 700, the number of white pixels on the candidate area 40 is counted, and in the next step 702, the number of black pixels on the candidate area 40 is counted. In the subsequent step 704, the difference between the number of white pixels and the number of black pixels is obtained, and it is determined whether or not the difference is smaller than the “threshold value M”. If the determination is affirmative (YES), it is determined that the candidate area 40 has a QR code quality (True), and the routine is terminated. On the other hand, in the case of negative determination (NO), it is determined that the candidate area 40 does not have the QR code-likeness (False), and the routine is ended.

以上説明した通り、本実施の形態では、選択した3個の位置検出要素パターンの中心点が直角二等辺三角形の各頂点を構成するという条件に加えて、3個の中心点の座標から想定される判定領域がQRコードらしさを有しているという条件を満たす場合に、選択した3個の座標に対応した位置検出要素パターンが、同じシンボルに含まれ、位置検出パターンを構成すると判断するので、第1の実施の形態と同様に、複数のQRコードを含む画像から個々のQRコードを正確且つ迅速に検出することができる。   As described above, in the present embodiment, in addition to the condition that the center points of the selected three position detection element patterns constitute the vertices of a right isosceles triangle, it is assumed from the coordinates of the three center points. Since the position detection element pattern corresponding to the selected three coordinates is included in the same symbol, and it is determined that the position detection pattern constitutes a position detection pattern. Similar to the first embodiment, each QR code can be detected accurately and quickly from an image including a plurality of QR codes.

なお、上記第3の実施の形態では、「QRコードらしさ」を表す数値的指標として「白黒画素の比率」を用いる例について説明したが、図9に示すように、候補領域40を水平方向(矢印Aで示す)又は垂直方向(矢印Bで示す)にスキャンした場合の「白黒反転回数」を、「QRコードらしさ」を表す数値的指標として用いることもできる。また、「白黒画素の比率」と「白黒反転回数」の両方を用いることもできる。   In the third embodiment, the example in which “monochrome pixel ratio” is used as a numerical index representing “QR code likeness” has been described. However, as shown in FIG. The “number of black and white inversions” when scanned in the vertical direction (indicated by an arrow A) or in the vertical direction (indicated by an arrow B) can also be used as a numerical index representing “likeness of QR code”. Further, both “the ratio of black and white pixels” and “the number of times of black and white inversion” can be used.

図30は、QRコードらしさの判定処理の他のルーチンを示すフローチャートである。このルーチンは、図24のステップ209で実行される。まず、ステップ800で、候補領域40を水平方向にスキャンした場合の白黒反転回数(白から黒へ画素値が変化する回数)をカウントし、次のステップ802で、候補領域40を水平方向にスキャンした場合の黒白反転回数(黒から白へ画素値が変化する回数)をカウントする。更に、ステップ804で、候補領域40を垂直方向にスキャンした場合の白黒反転回数をカウントし、次のステップ806で、候補領域40を垂直方向にスキャンした場合の黒白反転回数をカウントする。   FIG. 30 is a flowchart showing another routine of QR code-likeness determination processing. This routine is executed in step 209 of FIG. First, in step 800, the number of black and white inversions (the number of times the pixel value changes from white to black) when the candidate area 40 is scanned in the horizontal direction is counted, and in step 802, the candidate area 40 is scanned in the horizontal direction. In this case, the black / white inversion count (the number of times the pixel value changes from black to white) is counted. In step 804, the number of black / white inversions when the candidate area 40 is scanned in the vertical direction is counted, and in step 806, the number of black / white inversions in the case where the candidate area 40 is scanned in the vertical direction is counted.

図31は、水平方向にスキャンした場合の白黒反転回数のカウント例を示す図である。この例では、白黒反転回数は3回であり、黒白反転回数は3回である。   FIG. 31 is a diagram illustrating an example of counting the number of black and white inversions when scanning in the horizontal direction. In this example, the black-and-white inversion count is 3 and the black-and-white inversion count is 3.

次に、ステップ808で、ステップ800〜ステップ806で求めた4つの反転回数の合計値(和)を求め、その和が予め設定された「しきい値TH」より大きいか否かを判断する。肯定判断(YES)の場合には、候補領域40はQRコードらしさを有している(True)と判定して、ルーチンを終了する。一方、否定判断(NO)の場合には、候補領域40はQRコードらしさを有していない(False)と判定して、ルーチンを終了する。   Next, in step 808, a total value (sum) of the four inversion numbers obtained in steps 800 to 806 is obtained, and it is determined whether or not the sum is greater than a preset “threshold value TH”. If the determination is affirmative (YES), it is determined that the candidate area 40 has a QR code quality (True), and the routine is terminated. On the other hand, in the case of negative determination (NO), it is determined that the candidate area 40 does not have the QR code-likeness (False), and the routine is ended.

また、上記第3の実施の形態では、直角二等辺三角形の判定処理の後に、QRコードらしさの判定処理を行う例について説明したが、処理の順序を入れ替えて、QRコードらしさの判定処理の後に、直角二等辺三角形の判定処理を行うこともできる。   In the third embodiment, an example in which a QR code-likeness determination process is performed after a right-angled isosceles triangle determination process has been described. However, after the QR code-likeness determination process is changed, the processing order is changed. It is also possible to perform determination processing of a right isosceles triangle.

また、上記第3の実施の形態では、「組み合わせ検出処理」においてQRコードらしさの判定処理を行う例について説明したが、QRコードらしさの判定処理と共にクワイエットゾーンの有無の判定処理を行うこともできる。複数の条件を組み合わせることで、QRコードの検出精度が向上する。   In the third embodiment, an example in which the QR code-likeness determination process is performed in the “combination detection process” has been described. However, a quiet zone presence / absence determination process can be performed together with the QR code-likeness determination process. . Combining multiple conditions improves QR code detection accuracy.

本発明の第1の実施の形態に係るQRコードの処理装置の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the processing apparatus of QR Code which concerns on the 1st Embodiment of this invention. CPUにより実行される処理ルーチンを示すフローチャートである。It is a flowchart which shows the process routine performed by CPU. QRコードの構造を示す概略図である。It is the schematic which shows the structure of QR Code. 異なるシンボルに含まれる位置検出要素パターンが組み合わされた図である。It is the figure which combined the position detection element pattern contained in a different symbol. 組み合わせ検出処理のサブルーチンを示すフローチャートである。It is a flowchart which shows the subroutine of a combination detection process. 直角二等辺三角形の幾何学的な成立条件を説明するための図である。It is a figure for demonstrating the geometrical establishment conditions of a right-angled isosceles triangle. 直角二等辺三角形の判定処理のルーチンを示すフローチャートである。It is a flowchart which shows the routine of the determination process of a right-angled isosceles triangle. 直角頂の判定処理のルーチンを示すフローチャートである。It is a flowchart which shows the routine of the determination process of a right angle apex. QRコードらしさの判定方法を説明するための図である。It is a figure for demonstrating the determination method of QR code likeness. QRコードのシンボルの構造を示す図である。It is a figure which shows the structure of the symbol of QR Code. クワイエットゾーンの有無の判定方法を説明するための図である。It is a figure for demonstrating the determination method of the presence or absence of a quiet zone. クワイエットゾーンが存在すると判定される例を示す図である。It is a figure which shows the example determined with a quiet zone existing. クワイエットゾーンが存在しないと判定される例を示す図である。It is a figure which shows the example determined with a quiet zone not existing. クワイエットゾーン有無の判定処理のルーチンを示すフローチャートである。It is a flowchart which shows the routine of the determination process of the quiet zone presence / absence. 位置検出要素パターンの中心点Aとスキャンラインの基準点ASの位置関係を示す図である。Is a diagram showing the positional relationship between the reference point A S of the center point A and the scan line position detection pattern. 位置検出要素パターンの構造を示す図である。It is a figure which shows the structure of a position detection element pattern. 基準点ASの座標を求めるためのベクトル図である。It is a vector diagram for obtaining the coordinates of the reference point A S. クワイエットゾーンの有無の判定方法を説明するための図である。It is a figure for demonstrating the determination method of the presence or absence of a quiet zone. 換算値Rの算出方法を説明するための概念図である。It is a conceptual diagram for demonstrating the calculation method of the conversion value R. FIG. スキャンラインの他の設定例を示す図である。It is a figure which shows the other example of a setting of a scan line. スキャン領域の設定例を示す図である。It is a figure which shows the example of a setting of a scanning area | region. 組み合わせ検出処理の他のルーチンを示すフローチャートである。It is a flowchart which shows the other routine of a combination detection process. 本発明の第2の実施の形態に係る組み合わせ検出処理のサブルーチンを示すフローチャートである。It is a flowchart which shows the subroutine of the combination detection process which concerns on the 2nd Embodiment of this invention. 本発明の第3の実施の形態に係る組み合わせ検出処理のサブルーチンを示すフローチャートである。It is a flowchart which shows the subroutine of the combination detection process which concerns on the 3rd Embodiment of this invention. QRコードらしさの判定方法を説明するための図である。It is a figure for demonstrating the determination method of QR code likeness. QRコードらしさの判定方法を説明するための図である。It is a figure for demonstrating the determination method of QR code likeness. QRコードらしさの判定領域を示す図である。It is a figure which shows the determination area | region of QR code likelihood. QRコードらしさを有していないと判定される例を示す図である。It is a figure which shows the example determined not to have QR Code likeness. QRコードらしさの判定処理のルーチンを示すフローチャートである。It is a flowchart which shows the routine of a QR code-likeness determination process. QRコードらしさの判定処理の他のルーチンを示すフローチャートである。It is a flowchart which shows the other routine of a QR code-likeness determination process. 白黒反転回数のカウント例を示す図である。It is a figure which shows the example of a count of black-and-white inversion frequency.

符号の説明Explanation of symbols

10 画像入力装置
12 メモリ
14 CPU
16 ROM
18 外部インタフェース
20 画像出力装置
22 データベース
22 画像出力装置
24 データバス
30 シンボル
32A,32B,32C 位置検出要素パターン
33 正方形
34 クワイエットゾーン
34A 外周
35 領域
36 直角二等辺三角形
38 スキャンライン
40 候補領域
40A 外周
42A,42B,42C 位置検出要素パターン
43 正方形
44A 外周
46 直角二等辺三角形
48 スキャンライン
50 モジュール
52 モジュール
54 モジュール
78 スキャン領域
10 Image Input Device 12 Memory 14 CPU
16 ROM
18 External interface 20 Image output device 22 Database 22 Image output device 24 Data bus 30 Symbol 32A, 32B, 32C Position detection element pattern 33 Square 34 Quiet zone 34A Perimeter 35 Area 36 Right-angled isosceles triangle 38 Scan line 40 Candidate area 40A Perimeter 42A , 42B, 42C Position detection element pattern 43 Square 44A Perimeter 46 Right-angled isosceles triangle 48 Scan line 50 Module 52 Module 54 Module 78 Scan area

Claims (17)

直角二等辺三角形の各頂点に対応する位置に3つの位置検出要素パターンが設けられ、且つ該位置検出要素パターンにより定まる領域にデータ領域が設けられた二次元コードを検出する二次元コードの検出方法であって、
前記二次元コードを含む画像を読み取り、
読み取られた画像を二値化し、
二値化された画像に含まれる複数の位置検出要素パターンを検出し、
検出された位置検出要素パターンの中心点の位置を特定し、
位置が特定された中心点の中から、直角二等辺三角形の頂点を構成する3つの中心点を選択し、
選択された中心点に対応する位置検出要素パターンにより定まる二次元コード領域又はその周辺領域から二次元コードとしての特徴を抽出し、
二次元コードとしての特徴が抽出された場合には、該二次元コード領域に1つの二次元コードが存在すると判定し、
二次元コードを検出する二次元コードの検出方法。
A two-dimensional code detection method for detecting a two-dimensional code in which three position detection element patterns are provided at positions corresponding to respective vertices of a right-angled isosceles triangle and a data area is provided in an area determined by the position detection element pattern Because
Read an image containing the two-dimensional code,
Binarize the scanned image,
A plurality of position detection element patterns included in the binarized image are detected,
Specify the position of the center point of the detected position detection element pattern,
From the center points whose positions are specified, select the three center points that form the vertices of a right isosceles triangle,
Extract a feature as a two-dimensional code from a two-dimensional code area determined by the position detection element pattern corresponding to the selected center point or its peripheral area,
When a feature as a two-dimensional code is extracted, it is determined that one two-dimensional code exists in the two-dimensional code region,
A two-dimensional code detection method for detecting a two-dimensional code.
前記周辺領域に存在する予め規格化された空白領域を前記特徴として抽出する請求項1に記載の二次元コードの検出方法。   The method for detecting a two-dimensional code according to claim 1, wherein a pre-standardized blank area existing in the peripheral area is extracted as the feature. 前記空白領域は、少なくとも前記二次元コード領域の前記直角二等辺三角形の短辺側に隣接して存在する請求項2に記載の二次元コードの検出方法。   The two-dimensional code detection method according to claim 2, wherein the blank area is adjacent to at least a short side of the right isosceles triangle of the two-dimensional code area. 前記二次元コード領域の前記直角二等辺三角形の短辺側に、前記二次元コード領域の外周から所定距離離間した仮想線を設定し、該仮想線上の総画素数に対する白画素数の割合がしきい値を超えた場合に、空白領域が存在すると判断する請求項3に記載の二次元コードの検出方法。   A virtual line that is spaced a predetermined distance from the outer periphery of the two-dimensional code region is set on the short side of the right-angled isosceles triangle of the two-dimensional code region, and the ratio of the number of white pixels to the total number of pixels on the virtual line is set. The method for detecting a two-dimensional code according to claim 3, wherein when the threshold value is exceeded, it is determined that a blank area exists. 前記二次元コード領域の前記直角二等辺三角形の短辺側に、前記二次元コード領域の外周から所定距離内の仮想領域を設定し、該仮想領域の総画素数に対する白画素数の割合がしきい値を超えた場合に、空白領域が存在すると判断する請求項3に記載の二次元コードの検出方法。   A virtual region within a predetermined distance from the outer periphery of the two-dimensional code region is set on the short side of the right-angled isosceles triangle of the two-dimensional code region, and the ratio of the number of white pixels to the total number of pixels of the virtual region is set. The method for detecting a two-dimensional code according to claim 3, wherein when the threshold value is exceeded, it is determined that a blank area exists. 前記空白領域は、前記二次元コード領域の周囲四方に存在する請求項2に記載の二次元コードの検出方法。   The two-dimensional code detection method according to claim 2, wherein the blank area exists in four directions around the two-dimensional code area. 前記二次元コード領域の周囲四方に、前記二次元コード領域の外周から所定距離離間した仮想線を設定し、該仮想線上の総画素数に対する白画素数の割合がしきい値を超えた場合に、空白領域が存在すると判断する請求項6に記載の二次元コードの検出方法。   When a virtual line spaced apart from the outer periphery of the two-dimensional code region by a predetermined distance is set around the two-dimensional code region, and the ratio of the number of white pixels to the total number of pixels on the virtual line exceeds a threshold value The two-dimensional code detection method according to claim 6, wherein it is determined that a blank area exists. 前記二次元コード領域の周囲四方に、前記二次元コード領域の外周から所定距離内の仮想領域を設定し、該仮想領域の総画素数に対する白画素数の割合がしきい値を超えた場合に、空白領域が存在すると判断する請求項6に記載の二次元コードの検出方法。   When a virtual region within a predetermined distance from the outer periphery of the two-dimensional code region is set on all four sides of the two-dimensional code region, and the ratio of the number of white pixels to the total number of pixels in the virtual region exceeds a threshold value The two-dimensional code detection method according to claim 6, wherein it is determined that a blank area exists. 前記しきい値を、前記二次元コードのシンボルサイズに応じて定める請求項4、5、7、及び8のいずれか1項に記載の二次元コードの検出方法。   The method of detecting a two-dimensional code according to any one of claims 4, 5, 7, and 8, wherein the threshold value is determined according to a symbol size of the two-dimensional code. 前記二次元コード領域の白画素数と黒画素数との比又は差を前記特徴として抽出する請求項1に記載の二次元コードの検出方法。   The method of detecting a two-dimensional code according to claim 1, wherein a ratio or difference between the number of white pixels and the number of black pixels in the two-dimensional code area is extracted as the feature. 前記二次元コード領域では前記白画素数と黒画素数とが略等しくなる請求項9に記載の二次元コードの検出方法。   The two-dimensional code detection method according to claim 9, wherein the number of white pixels and the number of black pixels are substantially equal in the two-dimensional code region. 前記二次元コード領域を所定方向に走査した場合の白黒反転回数が所定範囲内にあるという特徴を抽出する請求項1に記載の二次元コードの検出方法。   The method for detecting a two-dimensional code according to claim 1, wherein a feature that the number of times of black and white inversion when the two-dimensional code region is scanned in a predetermined direction is within a predetermined range is extracted. 前記二値化された画像が複数の二次元コードを含む場合に、
更に、位置が特定された中心点の中から、直角二等辺三角形の頂点を構成し且つ前記3つの中心点とは組み合わせが異なる3つの中心点を選択し、
選択された中心点に対応する位置検出要素パターンにより定まる二次元コード領域及びその周辺領域から二次元コードとしての特徴を抽出し、
二次元コードとしての特徴が抽出された場合には、該二次元コード領域に1つの二次元コードが存在すると判定し、
複数の二次元コードを順次検出する請求項1乃至12のいずれか1項に記載の二次元コードの検出方法。
When the binarized image includes a plurality of two-dimensional codes,
Further, from among the center points whose positions are specified, select three center points that form vertices of a right isosceles triangle and have a combination different from the three center points,
Extracting features as a two-dimensional code from the two-dimensional code area determined by the position detection element pattern corresponding to the selected center point and its peripheral area,
When a feature as a two-dimensional code is extracted, it is determined that one two-dimensional code exists in the two-dimensional code region,
The two-dimensional code detection method according to any one of claims 1 to 12, wherein a plurality of two-dimensional codes are sequentially detected.
直角二等辺三角形の各頂点に対応する位置に3つの位置検出要素パターンが設けられ、且つ該位置検出要素パターンにより定まる領域にデータ領域が設けられた二次元コードを検出する二次元コードの検出装置であって、
前記二次元コードを含む画像を読み取る画像読取手段と、
前記画像読取手段で読み取られた画像を二値化する二値化手段と、
前記二値化手段で二値化された画像に含まれる二次元コードの位置検出要素パターンを検出し、検出された位置検出要素パターンの中心点の位置を特定する基準位置特定手段と、
前記基準位置特定手段により位置が特定された中心点の中から、直角二等辺三角形の頂点を構成する3つの中心点を選択し、選択された中心点に対応する位置検出要素パターンにより定まる二次元コード領域及びその周辺領域から二次元コードとしての特徴を抽出する特徴抽出手段と、
前記特徴抽出手段により二次元コードとしての特徴が抽出された場合には、該二次元コード領域に1つの二次元コードが存在すると判定する判定手段と、
を備える二次元コードの検出装置。
Two-dimensional code detection device for detecting a two-dimensional code in which three position detection element patterns are provided at positions corresponding to the vertices of a right isosceles triangle and a data area is provided in an area determined by the position detection element pattern Because
Image reading means for reading an image including the two-dimensional code;
Binarization means for binarizing the image read by the image reading means;
A reference position specifying means for detecting a position detection element pattern of a two-dimensional code included in the image binarized by the binarization means and specifying the position of the center point of the detected position detection element pattern;
Two-dimensionality determined by a position detection element pattern corresponding to the selected center point by selecting three center points constituting the vertices of a right isosceles triangle from the center points whose positions are specified by the reference position specifying means A feature extraction means for extracting features as a two-dimensional code from the code region and its peripheral region;
A determination unit that determines that one two-dimensional code exists in the two-dimensional code region when a feature as a two-dimensional code is extracted by the feature extraction unit;
A two-dimensional code detection device comprising:
請求項14に記載された検出装置により検出された二次元コードを復号する復号手段を更に備えた二次元コードの読取装置。   15. A two-dimensional code reading device further comprising decoding means for decoding the two-dimensional code detected by the detection device according to claim 14. 前記復号手段による二次元コードの復号前に、前記二次元コードの画素配列方向が走査方向と平行になる又は直交するように、前記二次元コードの回転位置を補正する位置補正手段を更に備えた請求項15に記載の二次元コードの読取装置。   Before the decoding of the two-dimensional code by the decoding means, further comprising a position correcting means for correcting the rotational position of the two-dimensional code so that the pixel arrangement direction of the two-dimensional code is parallel or orthogonal to the scanning direction. The two-dimensional code reader according to claim 15. コンピュータにより、直角二等辺三角形の各頂点に対応する位置に3つの位置検出要素パターンが設けられ、且つ該位置検出要素パターンにより定まる領域にデータ領域が設けられた二次元コードを検出する二次元コードの検出プログラムであって、
二値化された画像に含まれる複数の位置検出要素パターンを検出し、
検出された位置検出要素パターンの中心点の位置を特定し、
位置が特定された中心点の中から、直角二等辺三角形の頂点を構成する3つの中心点を選択し、
選択された中心点に対応する位置検出要素パターンにより定まる二次元コード領域又はその周辺領域から二次元コードとしての特徴を抽出し、
二次元コードとしての特徴が抽出された場合には、該二次元コード領域に1つの二次元コードが存在すると判定し、
二次元コードを検出する二次元コードの検出プログラム。
A two-dimensional code for detecting a two-dimensional code in which three position detection element patterns are provided at positions corresponding to the vertices of a right isosceles triangle and a data area is provided in an area determined by the position detection element pattern by a computer Detection program,
A plurality of position detection element patterns included in the binarized image are detected,
Specify the position of the center point of the detected position detection element pattern,
From the center points whose positions are specified, select the three center points that form the vertices of a right isosceles triangle,
Extract a feature as a two-dimensional code from a two-dimensional code area determined by the position detection element pattern corresponding to the selected center point or its peripheral area,
When a feature as a two-dimensional code is extracted, it is determined that one two-dimensional code exists in the two-dimensional code region,
A two-dimensional code detection program for detecting a two-dimensional code.
JP2005280798A 2005-09-20 2005-09-27 Method for detecting two dimensional code, detecting device, and detecting program Pending JP2007094584A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005280798A JP2007094584A (en) 2005-09-27 2005-09-27 Method for detecting two dimensional code, detecting device, and detecting program
KR1020060090669A KR100828539B1 (en) 2005-09-20 2006-09-19 A storage medium storing a two-dimensional code detection method, a detection device, and a detection program
US11/523,570 US8061615B2 (en) 2005-09-20 2006-09-20 Detection method of two-dimensional code, detection device for the same, and storage medium storing detection program for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005280798A JP2007094584A (en) 2005-09-27 2005-09-27 Method for detecting two dimensional code, detecting device, and detecting program

Publications (1)

Publication Number Publication Date
JP2007094584A true JP2007094584A (en) 2007-04-12

Family

ID=37980261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005280798A Pending JP2007094584A (en) 2005-09-20 2005-09-27 Method for detecting two dimensional code, detecting device, and detecting program

Country Status (1)

Country Link
JP (1) JP2007094584A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080684A (en) * 2007-09-26 2009-04-16 Fuji Xerox Co Ltd Code reader and code reading program
JP2010170539A (en) * 2008-12-22 2010-08-05 Canon Inc Code detecting and decoding system
JP2017203787A (en) * 2013-11-15 2017-11-16 株式会社Ihi Position acquisition method and sheet material
JP2022066280A (en) * 2013-05-22 2022-04-28 playground株式会社 System, method, program, and stamp
JP2024035801A (en) * 2022-09-02 2024-03-14 ジック アーゲー Locating the optical code

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009080684A (en) * 2007-09-26 2009-04-16 Fuji Xerox Co Ltd Code reader and code reading program
US8016197B2 (en) 2007-09-26 2011-09-13 Fuji Xerox Co., Ltd. Code reading device, code reading program storage medium and code reading method
JP2010170539A (en) * 2008-12-22 2010-08-05 Canon Inc Code detecting and decoding system
JP2022066280A (en) * 2013-05-22 2022-04-28 playground株式会社 System, method, program, and stamp
JP7178520B2 (en) 2013-05-22 2022-11-25 playground株式会社 Systems, methods, programs and stamps
JP2017203787A (en) * 2013-11-15 2017-11-16 株式会社Ihi Position acquisition method and sheet material
US10801996B2 (en) 2013-11-15 2020-10-13 Ihi Corporation Inspection system
JP2024035801A (en) * 2022-09-02 2024-03-14 ジック アーゲー Locating the optical code
JP7571217B2 (en) 2022-09-02 2024-10-22 ジック アーゲー Locating the optical code

Similar Documents

Publication Publication Date Title
KR100828539B1 (en) A storage medium storing a two-dimensional code detection method, a detection device, and a detection program
JP4911340B2 (en) Two-dimensional code detection system and two-dimensional code detection program
JP2835274B2 (en) Image recognition device
US8254683B2 (en) Code image processing method
JP4180497B2 (en) Code type discrimination method and code boundary detection method
JP2938338B2 (en) 2D code
US20050242186A1 (en) 2D rectangular code symbol scanning device and 2D rectangular code symbol scanning method
US7946491B2 (en) Method, apparatus, and computer program product for providing a camera barcode reader
US7764835B2 (en) Method and apparatus for recognizing code
JP6045752B2 (en) Two-dimensional code, two-dimensional code analysis system, and two-dimensional code creation system
JP2004054530A (en) Two-dimensional code reader, two-dimensional code reading method, two-dimensional code reading program, and recording medium for the program
JP6091708B2 (en) 2D code, 2D code analysis system
JPH0612515A (en) Method and apparatus for decoding two-dimensional bar code using ccd/cmd camera
JP2008533546A (en) Barcode scanner decoding
JP2004185058A (en) Barcode recognition method and decoding processing device for recognition
JP5808211B2 (en) Bar code symbol reading apparatus and bar code symbol reading method
CN117540762A (en) Bar code identification method, device, equipment and readable storage medium
JP2003337941A (en) Image recognition device, image recognition method, and program
JP2019003229A (en) Image analysis device
JP4574503B2 (en) Image processing apparatus, image processing method, and program
JP2007094584A (en) Method for detecting two dimensional code, detecting device, and detecting program
JP4893643B2 (en) Detection method and detection apparatus
JP2017102841A (en) Two-dimensional code, two-dimensional code analyzing method, two-dimensional code analyzing apparatus, and program for analyzing two-dimensional code
JP4398498B2 (en) Code boundary detection method
JP4905767B2 (en) Two-dimensional code detection system and two-dimensional code detection program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080821

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090303

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091110