JP6565786B2 - Optical symbol, display medium, article and generating device - Google Patents

Optical symbol, display medium, article and generating device Download PDF

Info

Publication number
JP6565786B2
JP6565786B2 JP2016091809A JP2016091809A JP6565786B2 JP 6565786 B2 JP6565786 B2 JP 6565786B2 JP 2016091809 A JP2016091809 A JP 2016091809A JP 2016091809 A JP2016091809 A JP 2016091809A JP 6565786 B2 JP6565786 B2 JP 6565786B2
Authority
JP
Japan
Prior art keywords
cell
color
code
unit
optical symbol
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.)
Active
Application number
JP2016091809A
Other languages
Japanese (ja)
Other versions
JP2017199306A (en
Inventor
紘 片山
紘 片山
工藤 宏一
宏一 工藤
敏弘 岡本
敏弘 岡本
多聞 貞末
多聞 貞末
華子 阪東
華子 阪東
前田 大輔
大輔 前田
研 及川
研 及川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2016091809A priority Critical patent/JP6565786B2/en
Publication of JP2017199306A publication Critical patent/JP2017199306A/en
Application granted granted Critical
Publication of JP6565786B2 publication Critical patent/JP6565786B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

本発明は、光学シンボル、表示媒体、物品および生成装置に関する。   The present invention relates to an optical symbol, a display medium, an article, and a generation apparatus.

QRコード(登録商標)といった2値情報に基づく2次元コードは、カメラで撮像することでIDなどの情報を得られるため、多くの場面で利用されている。また、より多くの情報を記憶するために、例えばモノクロの2値情報ではなく、複数色を用いて単位面積当たりの記憶容量を向上させた2次元コードも開発されている。この複数色を用いた2次元コード(カラーコードと呼ぶ)の一つとして、色の配置ではなく隣接する領域間での色の遷移をコード化することで歪み耐性を向上させたカラーコードが知られている(特許文献1)。   A two-dimensional code based on binary information such as a QR code (registered trademark) is used in many scenes because information such as an ID can be obtained by imaging with a camera. Further, in order to store more information, for example, a two-dimensional code in which a storage capacity per unit area is improved by using a plurality of colors instead of monochrome binary information has been developed. One of the two-dimensional codes (called color codes) using multiple colors is a color code that improves distortion resistance by coding color transitions between adjacent areas rather than color arrangement. (Patent Document 1).

しかしながら、従来技術によるカラーコードは、歪みに強い一方で、認識処理を並列処理より実行することが困難であり、認識処理の処理速度を向上させることが難しいという問題点があった。   However, the color code according to the prior art is resistant to distortion, but it is difficult to execute recognition processing from parallel processing, and it is difficult to improve the processing speed of recognition processing.

本発明は、上記に鑑みてなされたもので、より高速な認識処理が可能な光学シンボルを提供することを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to provide an optical symbol that can be recognized at higher speed.

上述した課題を解決するために、本発明は、複数の主コードセルが1次元に接続された第1のセル列を有する主コード部と、複数の副コードセルが1次元に接続された第2のセル列を有する副コード部と、を含む光学シンボルであって、第2のセル列は、複数の主コードセルのうち、第1のセル列の端部のセルを除く複数の主コードセルの何れか1つのセルに接続される。   In order to solve the above-described problem, the present invention provides a main code portion having a first cell row in which a plurality of main code cells are connected in one dimension, and a first code in which a plurality of sub code cells are connected in one dimension. And the second cell column includes a plurality of main codes excluding a cell at an end portion of the first cell column among the plurality of main code cells. Connected to any one of the cells.

本発明によれば、より高速な認識処理が可能な光学シンボルを提供可能となるという効果を奏する。   According to the present invention, it is possible to provide an optical symbol that can be recognized at higher speed.

図1は、第1の実施形態に係る光学シンボルの利用形態の例を概略的に示す図である。FIG. 1 is a diagram schematically illustrating an example of a usage form of an optical symbol according to the first embodiment. 図2は、第1の実施形態に係る光学シンボルの基本的な構成例を示す図である。FIG. 2 is a diagram illustrating a basic configuration example of the optical symbol according to the first embodiment. 図3は、第1の実施形態に係る光学シンボルにコード化するための情報の例を示す図である。FIG. 3 is a diagram illustrating an example of information for encoding into an optical symbol according to the first embodiment. 図4は、第1の実施形態に適用可能な、2進数を表現可能なコード化ルールについて説明するための図である。FIG. 4 is a diagram for explaining a coding rule that can be applied to the first embodiment and that can express a binary number. 図5は、第1の実施形態に係る、コード化された主コード部および副コード部における色の配列の例を示す図である。FIG. 5 is a diagram showing an example of the color arrangement in the coded main code portion and sub-code portion according to the first embodiment. 図6は、第1の実施形態に係る光学シンボルの例を示す図である。FIG. 6 is a diagram illustrating an example of an optical symbol according to the first embodiment. 図7は、第1の実施形態に係る、4色を用いた場合のコード化ルールの例を示す図である。FIG. 7 is a diagram illustrating an example of a coding rule when four colors are used according to the first embodiment. 図8は、第1の実施形態に係る光学シンボルの各セルに割り当てる色数を4色とした場合のより具体的な例について説明するための図である。FIG. 8 is a diagram for explaining a more specific example when the number of colors assigned to each cell of the optical symbol according to the first embodiment is four. 図9は、第1の実施形態に係る光学シンボルの各セルに割り当てる色数を4色とした場合のより具体的な例について説明するための図である。FIG. 9 is a diagram for explaining a more specific example when the number of colors assigned to each cell of the optical symbol according to the first embodiment is four. 図10は、第1の実施形態に適用可能なコード生成システムの一例の構成を示すブロック図である。FIG. 10 is a block diagram illustrating a configuration of an example of a code generation system applicable to the first embodiment. 図11は、第1の実施形態に係るコード生成装置のハードウェア構成の例を示すブロック図である。FIG. 11 is a block diagram illustrating an example of a hardware configuration of the code generation device according to the first embodiment. 図12は、第1の実施形態に係るコード生成装置の機能を説明するための機能ブロック図である。FIG. 12 is a functional block diagram for explaining functions of the code generation device according to the first embodiment. 図13は、第1の実施形態に係る光学シンボルの生成方法を示す一例のフローチャートである。FIG. 13 is a flowchart illustrating an example of the optical symbol generation method according to the first embodiment. 図14は、第1の実施形態に係る、副コード部に含まれる各セル列に含まれるセルの個数固定する例を示す図である。FIG. 14 is a diagram illustrating an example in which the number of cells included in each cell column included in the subcode portion is fixed according to the first embodiment. 図15は、第1の実施形態に係る、副コード部の各セル列に含まれるセルの大きさが各セル列毎に異なり、且つ、各セル列の長さが一定である光学シンボルの例を示す図である。FIG. 15 is an example of an optical symbol according to the first embodiment in which the size of the cell included in each cell column of the sub-code part is different for each cell column and the length of each cell column is constant. FIG. 図16は、第1の実施形態に係る、開始セルおよび終了セルを用いた光学シンボルの例を示す図である。FIG. 16 is a diagram illustrating an example of an optical symbol using a start cell and an end cell according to the first embodiment. 図17は、第1の実施形態に係る光学シンボルにコード化するための情報の例を示す図である。FIG. 17 is a diagram illustrating an example of information for encoding into an optical symbol according to the first embodiment. 図18は、第1の実施形態に係る、光学シンボル、および、光学シンボルが表示された表示媒体の例を示す図である。FIG. 18 is a diagram illustrating an example of an optical symbol and a display medium on which the optical symbol is displayed according to the first embodiment. 図19は、第1の実施形態に係る光学シンボルが表示された表示媒体の使用例を概略的に示す図である。FIG. 19 is a diagram schematically illustrating a usage example of the display medium on which the optical symbol according to the first embodiment is displayed. 図20は、第1の実施形態に適用可能なコード認識システムの一例の構成を示すブロック図である。FIG. 20 is a block diagram showing a configuration of an example of a code recognition system applicable to the first embodiment. 図21は、第1の実施形態に適用可能なコード認識装置のハードウェア構成の例を示すブロック図である。FIG. 21 is a block diagram illustrating an example of a hardware configuration of a code recognition device applicable to the first embodiment. 図22は、第1の実施形態に係るコード認識装置の機能を説明するための一例の機能ブロック図である。FIG. 22 is a functional block diagram of an example for explaining functions of the code recognition device according to the first embodiment. 図23は、第1の実施形態に係る、カメラにより撮像され、コード認識装置の画像取得部に取得される撮像画像の例を示す図である。FIG. 23 is a diagram illustrating an example of a captured image captured by the camera and acquired by the image acquisition unit of the code recognition device according to the first embodiment. 図24は、第1の実施形態に係る光学シンボルの認識およびデコード処理を示す一例のフローチャートである。FIG. 24 is a flowchart illustrating an example of optical symbol recognition and decoding processing according to the first embodiment. 図25は、第1の実施形態に係る副コード認識部による認識処理を示す一例のフローチャートである。FIG. 25 is a flowchart illustrating an example of recognition processing by the sub code recognition unit according to the first embodiment. 図26は、第1の実施形態に係る、合成部による接続情報に基づく合成処理について説明するための図である。FIG. 26 is a diagram for explaining the composition process based on the connection information by the composition unit according to the first embodiment. 図27は、第1の実施形態に適用可能なテンプレートの例を示す図である。FIG. 27 is a diagram illustrating an example of a template applicable to the first embodiment. 図28は、第1の実施形態に係る第1の切り出し処理を示す一例のフローチャートである。FIG. 28 is a flowchart illustrating an example of a first cutout process according to the first embodiment. 図29は、第1の実施形態に係る第1の切り出し処理により切り出した光学シンボルの画像から、各セルの色を取得する方法の例を示す図である。FIG. 29 is a diagram illustrating an example of a method for acquiring the color of each cell from the optical symbol image cut out by the first cut-out process according to the first embodiment. 図30は、第1の実施形態に係る第2の切り出し処理を示す一例のフローチャートである。FIG. 30 is a flowchart illustrating an example of a second cutout process according to the first embodiment. 図31は、第1の実施形態の変形例に係る光学シンボルの一例の構成を示す図である。FIG. 31 is a diagram illustrating a configuration of an example of an optical symbol according to a modification of the first embodiment. 図32は、第2の実施形態に係るコード管理システムおよび搬送システムを概略的に示す図である。FIG. 32 is a diagram schematically illustrating a code management system and a transport system according to the second embodiment.

以下に添付図面を参照して、光学シンボル、表示媒体、物品および生成装置の実施形態を詳細に説明する。   Hereinafter, embodiments of an optical symbol, a display medium, an article, and a generation apparatus will be described in detail with reference to the accompanying drawings.

(第1の実施形態)
図1は、第1の実施形態に係る光学シンボルの利用形態の例を概略的に示す。図1において、各物品50に対して、第1の実施形態に係る光学シンボル30が表示された表示媒体40がそれぞれ添付される。表示媒体40は、例えば光学シンボル30が印刷された印刷媒体である。これに限らず、表示媒体40は、光学シンボル30が表示された、LCD(Liquid Crystal Display)などの表示デバイスでもよい。
(First embodiment)
FIG. 1 schematically shows an example of a usage form of an optical symbol according to the first embodiment. In FIG. 1, a display medium 40 on which the optical symbol 30 according to the first embodiment is displayed is attached to each article 50. The display medium 40 is a print medium on which, for example, the optical symbol 30 is printed. However, the display medium 40 may be a display device such as an LCD (Liquid Crystal Display) on which the optical symbol 30 is displayed.

詳細は後述するが、光学シンボル30は、それぞれセルと呼ばれる複数の小領域を含み、各セルが、隣接するセルと色を異ならせて配列されて構成される。光学シンボル30は、セル間の色の遷移を用いて情報を表現する。すなわち、光学シンボル30は、色を用いて情報をコード化したコード(カラーコード)である。   As will be described in detail later, the optical symbol 30 includes a plurality of small regions each called a cell, and each cell is configured with a color different from that of an adjacent cell. The optical symbol 30 expresses information using a color transition between cells. That is, the optical symbol 30 is a code (color code) obtained by coding information using colors.

コード認識装置10は、カメラ11により撮像された撮像画像から光学シンボル30を認識し、認識された光学シンボル30をデコードする。より具体的には、コード認識装置10は、光学シンボル30の認識により光学シンボル30に含まれる各セルの色の遷移を検出し、検出された色の遷移に基づきデコードを行う。コード認識装置10は、光学シンボル30からデコードされた情報を出力する。   The code recognition device 10 recognizes the optical symbol 30 from a captured image captured by the camera 11 and decodes the recognized optical symbol 30. More specifically, the code recognition device 10 detects a color transition of each cell included in the optical symbol 30 by recognizing the optical symbol 30, and performs decoding based on the detected color transition. The code recognition device 10 outputs information decoded from the optical symbol 30.

(第1の実施形態に係る光学シンボルの詳細)
図2は、第1の実施形態に係る光学シンボル30の基本的な構成例を示す。図2に示されるように、光学シンボル30は、幹と、一端が幹に接続される枝とを含んで構成される。幹は、順次隣接する複数のセルが1次元に配列されたセル列(第1の配列)により構成される。すなわち、幹は、複数のセルが分岐および交差せずに配列される。枝は、幹の1つのセルに接続されるセルを含む1以上のセルが、幹の配列方向と異なる方向に向けて、順次隣接して1次元に配列されたセル列(第2の配列)により構成される。枝は、複数のセルを含む場合、幹と同様に、複数のセルが分岐および交差せずに配列される。また、枝同士は、接触しない。
(Details of optical symbol according to the first embodiment)
FIG. 2 shows a basic configuration example of the optical symbol 30 according to the first embodiment. As shown in FIG. 2, the optical symbol 30 includes a trunk and a branch having one end connected to the trunk. The trunk is configured by a cell row (first array) in which a plurality of adjacent cells are sequentially arranged in one dimension. That is, the trunk is arranged without a plurality of cells branching and intersecting. A branch is a cell array (second array) in which one or more cells including cells connected to one cell of the trunk are sequentially arranged adjacently in a direction different from the arrangement direction of the trunk. Consists of. When the branch includes a plurality of cells, the plurality of cells are arranged without branching and intersecting like the trunk. Further, the branches do not contact each other.

幹および枝を構成する各セルは、色が割り当てられる。このとき、各セルに割り当てる色は、隣接するセル同士で同一色とならないように選択される。また、各セルに割り当てる色は、予め定めた複数の色から選択される。セルに割り当てるための複数の色は、当該複数の色から任意に選択した2色を隣接させた場合に、この2色を識別容易な色の組み合わせとすることが好ましい。   Each cell constituting the trunk and branch is assigned a color. At this time, the color assigned to each cell is selected so that adjacent cells do not have the same color. The color assigned to each cell is selected from a plurality of predetermined colors. The plurality of colors to be assigned to the cells are preferably a combination of colors that can be easily identified when two colors arbitrarily selected from the plurality of colors are adjacent to each other.

第1の実施形態に係る光学シンボル30は、隣接するセル間での色の遷移に基づき情報を表現する。換言すれば、光学シンボル30は、色の遷移を用いて情報をコード化する。光学シンボル30は、幹の各セル、および、枝の各セルにより、それぞれ異なる情報をコード化して表現することができる。幹の各セル(主コードセル)によりコード化された情報を主コードと呼び、枝の各セル(副コードセル)によりコード化された情報を副コードと呼ぶ。以下、特に記載の無い限り、幹および枝を、それぞれ主コード部300および副コード部301と呼ぶ。副コード部301は、複数の枝を含むことができる。   The optical symbol 30 according to the first embodiment expresses information based on a color transition between adjacent cells. In other words, the optical symbol 30 encodes information using color transitions. The optical symbol 30 can be expressed by coding different information for each cell of the trunk and each cell of the branch. Information coded by each cell (main code cell) of the trunk is called a main code, and information coded by each cell (subcode cell) of the branch is called a subcode. Hereinafter, unless otherwise specified, the trunk and the branch are referred to as a main code portion 300 and a sub code portion 301, respectively. The sub-code unit 301 can include a plurality of branches.

図2において、主コード部300は、一端のセルを開始セル302とし(図中で「S」とも記載)、他端のセルを終了セル303とする(図中で「E」とも記載)。主コード部300の各セルの色の遷移は、図中に矢印にて示されるように、開始セル302から終了セル303に向けて検出されるものとする。また、副コード部301の各セルの色の遷移は、図中に矢印にて示されるように、主コード部300と接続される端から、他端に向けて検出されるものとする。   In FIG. 2, the main code unit 300 sets a cell at one end as a start cell 302 (also described as “S” in the figure) and a cell at the other end as an end cell 303 (also described as “E” in the figure). It is assumed that the color transition of each cell of the main code unit 300 is detected from the start cell 302 toward the end cell 303 as indicated by an arrow in the drawing. In addition, the transition of the color of each cell of the sub code unit 301 is detected from the end connected to the main code unit 300 toward the other end as indicated by an arrow in the drawing.

なお、開始セル302および終了セル303は、省略することができる。この場合、主コード部300の先頭および後端の各セルが、それぞれ開始セル302および終了セル303の役割を兼用することができる。   Note that the start cell 302 and the end cell 303 can be omitted. In this case, the cells at the beginning and the rear end of the main code portion 300 can also serve as the start cell 302 and the end cell 303, respectively.

以下では、光学シンボル30を用いてコード化する情報が文字列であるものとする。文字列は、例えば「0」〜「9」の数字である。これに限らず、光学シンボル30は、「a」〜「z」、または、小文字の「a」〜「z」に大文字の「A」〜「Z」を加えたアルファベットによる文字列や、さらに記号を含めた文字列をコード化することもできる。   In the following, it is assumed that the information encoded using the optical symbol 30 is a character string. The character string is, for example, a number “0” to “9”. Not limited to this, the optical symbol 30 may be an alphabetic character string “a” to “z” or an alphabetic character string obtained by adding uppercase letters “A” to “Z” to lowercase letters “a” to “z”, or a symbol. It is also possible to code a character string including.

図3は、第1の実施形態に係る光学シンボル30にコード化するための情報の例を示す。図3において、主コード部300’および副コード部301’は、それぞれ、コード化後の光学シンボル30における主コード部300および副コード部301に対応する。また、図3において、主コード部300’および副コード部301’に含まれる各マスを、光学シンボル30の各セルに倣って、便宜上、セルと呼ぶ。   FIG. 3 shows an example of information for encoding into the optical symbol 30 according to the first embodiment. In FIG. 3, a main code portion 300 ′ and a sub code portion 301 ′ respectively correspond to the main code portion 300 and the sub code portion 301 in the encoded optical symbol 30. In FIG. 3, each cell included in the main code portion 300 ′ and the sub code portion 301 ′ is called a cell for convenience, following each cell of the optical symbol 30.

図3は、コード化を行う文字列が数字である場合の例である。主コード部300’のセル列の各セル「d1」、「d2」、「d3」、…が、文字列の各桁を表現している。図3における左端のセル「d1」が文字列の第1桁目を表し、セル「d1」を起点として順次隣接する各セル「d2」、「d3」、…において、表現される桁が順次移動する。すなわち、主コード部300’のセル列の各セル「d1」、「d2」、「d3」、…は、文字列における位置に対応している。   FIG. 3 shows an example in which the character string to be encoded is a number. Each cell “d1”, “d2”, “d3”,... Of the cell string of the main code portion 300 ′ represents each digit of the character string. The leftmost cell “d1” in FIG. 3 represents the first digit of the character string, and the represented digits sequentially move in adjacent cells “d2”, “d3”,... Starting from the cell “d1”. To do. That is, each cell “d1”, “d2”, “d3”,... Of the cell string of the main code portion 300 'corresponds to a position in the character string.

図3の例では、当該各セル「d1」、「d2」、「d3」、…は、10進数の各桁を表しているものとする。具体的には、先端セルである左端のセル「d1」が「10」の桁を示し、以降、各セル「d2」、「d3」、…は、順次、「10」、「10」、…の桁を表す。 In the example of FIG. 3, each of the cells “d1”, “d2”, “d3”,... Represents each decimal digit. Specifically, the leftmost cell “d1”, which is the leading cell, indicates the digit “10 0 ”, and thereafter, each cell “d2”, “d3”,... Is sequentially “10 1 ”, “10 2 ”. ", ... represents the digit.

また、図3の例において、副コード部301’は、端が接続される主コード部300’のセル「d1」、「d2」、「d3」、…における値を、2進数で表している。図3の例では、副コード部301’の各セル列において、主コード部300’に接続されるセルが最下位ビットとされ、主コード部300’のセル「d1」、「d2」および「d3」に接続される各セル列がそれぞれ値「b0010」、値「b0110」および値「b1000」とされている。したがって、図3の光学シンボル30は、「10」、「10」および「10」の桁の値が、それぞれ10進数で「2」、「6」および「8」である文字列を表している。なお、値の表記において先頭の「b」は、続く数字が2進数による値であることを示している。 In the example of FIG. 3, the sub code portion 301 ′ represents the values in the cells “d 1”, “d 2”, “d 3”,... . In the example of FIG. 3, in each cell column of the sub code portion 301 ′, the cell connected to the main code portion 300 ′ is the least significant bit, and the cells “d1”, “d2” and “ Each cell column connected to “d3” has a value “b0010”, a value “b0110”, and a value “b1000”. Therefore, the optical symbol 30 in FIG. 3 is a character string in which the values of “10 0 ”, “10 1 ”, and “10 2 ” are decimal numbers “2”, “6”, and “8”, respectively. Represents. In the value notation, the leading “b” indicates that the subsequent number is a binary value.

第1の実施形態では、上述したように、主コード部300’および副コード部301’において表現される情報を、セル間の色の遷移を用いてコード化する。ここで、主コード部300’は、表現される情報が予め定められている。したがって、主コード部300’がコード化された光学シンボル30における主コード部300は、各セルの色が、隣接するセル同士で異なっていることが分かればデコードできる。例えば、主コード部300に含まれるセルの数が既知であれば、セル間の色の遷移の回数を計数することで、主コード部300をデコードできる。   In the first embodiment, as described above, the information expressed in the main code portion 300 'and the sub code portion 301' is coded using the color transition between cells. Here, in the main code portion 300 ′, information to be expressed is predetermined. Therefore, the main code portion 300 in the optical symbol 30 in which the main code portion 300 ′ is encoded can be decoded if it is found that the color of each cell is different between adjacent cells. For example, if the number of cells included in the main code unit 300 is known, the main code unit 300 can be decoded by counting the number of color transitions between cells.

一方、副コード部301’は、コード化する情報に応じて異なる値を表現する必要がある。そのため、副コード部301’は、色の遷移と表現可能な値とを予め関連付けた変換テーブルを用いてコード化を行う。   On the other hand, the sub-code portion 301 'needs to express different values depending on the information to be encoded. Therefore, the sub-code unit 301 ′ performs coding using a conversion table in which color transitions and expressible values are associated in advance.

図4を用いて、第1の実施形態に適用可能な、2進数を表現可能なコード化ルールについて説明する。隣接する異なる色のセル間での色の遷移により2値を表現するためには、少なくとも3色が必要となる。図4は、赤色(R)、緑色(G)および青色(B)の3色を用いて2値を表現する場合のコード化ルールの例を示している。例えば、図4(a)に例示されるように、時計回り、すなわち、R色からB色、B色からG色、および、G色からR色への各遷移により値「0」を表現する。また、反時計回り、すなわち、R色からG色、G色からB色、および、B色からR色の各遷移により値「1」を表現する。   An encoding rule that can be applied to the first embodiment and that can express a binary number will be described with reference to FIG. In order to express a binary value by a color transition between adjacent cells of different colors, at least three colors are required. FIG. 4 shows an example of a coding rule when a binary is expressed using three colors of red (R), green (G), and blue (B). For example, as illustrated in FIG. 4A, the value “0” is expressed in the clockwise direction, that is, by transition from the R color to the B color, the B color to the G color, and the G color to the R color. . Also, the value “1” is expressed counterclockwise, that is, by transitions from R color to G color, G color to B color, and B color to R color.

例えば、図4(b)に示されるように、G色、B色、G色、R色の順に各セルが順次隣接されたセル列において、図中で左から右に向けて各セルの色遷移を見た場合について考える。この場合、G色からB色への遷移が値「1」、B色からG色への遷移が値「0」、G色からR色への遷移が値「0」をそれぞれ表す。したがって、図4(b)の配列は、値「b001」、すなわち10進数の値「1」を表す。   For example, as shown in FIG. 4B, in the cell row in which each cell is sequentially adjacent in the order of G color, B color, G color, and R color, the color of each cell from left to right in the figure. Consider the case of seeing a transition. In this case, the transition from the G color to the B color represents the value “1”, the transition from the B color to the G color represents the value “0”, and the transition from the G color to the R color represents the value “0”. Therefore, the array of FIG. 4B represents the value “b001”, that is, the decimal value “1”.

また例えば、図4(c)に示されるように、図4(b)の各セルの配列に対し、図4(b)とは逆方向に向けて色遷移を見た場合について考える。この場合、R色からG色への遷移が値「1」、G色からB色への遷移が値「1」、B色からG色への遷移が値「0」をそれぞれ表す。したがって、図4(c)の配列は、値「011」、すなわち、10進数の値「3」を表す。   Further, for example, as shown in FIG. 4C, consider a case where the color transition is viewed in the direction opposite to that in FIG. 4B with respect to the array of cells in FIG. 4B. In this case, the transition from the R color to the G color represents the value “1”, the transition from the G color to the B color represents the value “1”, and the transition from the B color to the G color represents the value “0”. Accordingly, the array of FIG. 4C represents the value “011”, that is, the decimal value “3”.

図4(d)は、図4(a)に示したコード化ルールに従った色遷移と値とを関連付ける変換テーブルの例を示す。図4(d)の変換テーブルにおいて、左端の列は、直前のセル(遷移元のセル)の色を示し、上端の行は、表現したい値を示す。例えば、遷移元のセルの色がR色で、値「1」を表現したい場合、遷移元のセルに隣接する遷移先のセルの色をG色とする。同様に、遷移元のセルの色がB色で値「1」を表現したい場合、遷移先のセルの色をR色とする。   FIG. 4D shows an example of a conversion table that associates color transitions and values according to the coding rule shown in FIG. In the conversion table of FIG. 4D, the leftmost column indicates the color of the immediately preceding cell (transition source cell), and the uppermost row indicates the value to be expressed. For example, when the color of the transition source cell is R color and the value “1” is to be expressed, the color of the transition destination cell adjacent to the transition source cell is G color. Similarly, when the transition source cell color is B color and the value “1” is to be expressed, the transition destination cell color is R color.

図5は、第1の実施形態に係る、コード化された主コード部300および副コード部301における色の配列の例を示す。図5(a)は、主コード部300のセル列における各セルの色の配列の例を示す。図5(a)の例では、主コード部300のセル列は、第1色(この例ではR色)のセルと、第2色(この例ではB色)の2色のセルを交互に配置して構成している。また、主コード部300のセル列は、2N個(Nは1以上の整数)のセルにより構成している。これにより、主コード部300のセル列の先端のセルの色を第1色に固定することで、後端のセルの色が第2色に一意に決定されるため、主コード部300のセル列の先端および後端の認識が容易となる。   FIG. 5 shows an example of the color arrangement in the coded main code portion 300 and sub-code portion 301 according to the first embodiment. FIG. 5A shows an example of the color arrangement of each cell in the cell row of the main code portion 300. In the example of FIG. 5A, the cell row of the main code portion 300 includes cells of the first color (R color in this example) and cells of the second color (B color in this example) alternately. Arranged and configured. In addition, the cell string of the main code unit 300 is composed of 2N cells (N is an integer of 1 or more). Thus, by fixing the color of the leading cell of the cell row of the main code portion 300 to the first color, the color of the rear end cell is uniquely determined to be the second color. The front and rear ends of the rows can be easily recognized.

図5(b)は、副コード部301のセル列における色の配列の例を示す。副コード部301のセル列は、各セルに対して、上述した2値を表現するための3色が、隣接するセルの色が異なるように割り当てられる。また、副コード部301のセル列は、当該セル列が接続される主コード部300のセルを最初の遷移元のセルとして、上述したコード化ルールに従ったコード化がなされる。   FIG. 5B shows an example of the color arrangement in the cell column of the sub code portion 301. In the cell sequence of the sub-code portion 301, the three colors for expressing the binary values described above are assigned to each cell so that the colors of adjacent cells are different. In addition, the cell string of the sub code unit 301 is coded according to the coding rule described above, with the cell of the main code unit 300 to which the cell string is connected as the first transition source cell.

副コード部301のセル列は、表現する値によっては、当該3色のうち割り当てられない色が発生する場合がある。これに対して、主コード部300は、セル列に含まれる各セルに割り当てる所定の2色を、副コード部301において2値を表現するために用いる3色から選択し、この2色を各セルに交互に割り当ててセル列を構成している。したがって、主コード部300のセル列は、各セルに、主コード部300に用いるように定められた各色が必ず割り当てられる。そのため、例えば当該光学シンボル30を含む画像から当該光学シンボル30を切り出す場合に、主コード部300の各セルに割り当てられている色の情報のみを検出することで、容易に光学シンボル30を切り出すことが可能である。   Depending on the value to be expressed, an unallocated color among the three colors may occur in the cell string of the sub-code portion 301. On the other hand, the main code unit 300 selects two predetermined colors to be assigned to each cell included in the cell sequence from the three colors used to express the binary values in the sub code unit 301, and selects these two colors. Cell rows are configured by alternately assigning to cells. Therefore, in the cell string of the main code part 300, each color determined to be used for the main code part 300 is necessarily assigned to each cell. Therefore, for example, when the optical symbol 30 is cut out from an image including the optical symbol 30, the optical symbol 30 can be easily cut out by detecting only the color information assigned to each cell of the main code unit 300. Is possible.

図6は、第1の実施形態に係る、図3に例示した情報を、図4を用いて説明したコード化ルールに従いコード化した光学シンボル30の例を示す。この例では、コード化された主コード部300のセル列は、偶数個のセルを含み、先端のセルをR色として、R色およびB色が交互に配置されて構成されている。   FIG. 6 shows an example of the optical symbol 30 in which the information exemplified in FIG. 3 according to the first embodiment is coded according to the coding rule described with reference to FIG. In this example, the encoded cell string of the main code portion 300 includes an even number of cells, and the tip cell is an R color, and the R color and the B color are alternately arranged.

また、コード化された副コード部301は、例えば左端のセル列において、当該セル列の端のセルが接続される、主コード部300のセルのR色を最初の遷移元の色として、各セルの色が割り当てられる。この例では、当該セル列の各セルに対して、値「0」、「1」、「0」、「0」に従い、図4(d)の変換テーブルを参照して、B色、R色、B色、G色がそれぞれ割り当てられる。   In addition, the encoded sub-code unit 301 uses, for example, the R color of the cell of the main code unit 300 to which the cell at the end of the cell column is connected in the leftmost cell column as the first transition source color. The cell color is assigned. In this example, for each cell in the cell row, according to the values “0”, “1”, “0”, “0”, referring to the conversion table in FIG. , B color and G color are assigned respectively.

図6に示されるように、第1の実施形態に係る光学シンボル30は、幹(主コード部300のセル列)の伸長方向と異なる一方向に対し、複数の枝(副コード部301の各セル列)が、主コード部300のセル列の各セルにそれぞれ接続される。且つ、第1の実施形態に係る光学シンボル30は、カメラ11にて光学シンボル30を撮像した撮像画像から光学シンボル30を認識する際の認識精度を良好とするため、副コード部301の各セル列が、隣り合うセル列に対して所定の間隔を開けて配置される。このように、第1の実施形態に係る光学シンボル30は、幹と複数の枝とによる櫛型の形状として構成される。   As shown in FIG. 6, the optical symbol 30 according to the first embodiment has a plurality of branches (each of the sub-code units 301) with respect to one direction different from the extension direction of the trunk (cell row of the main code unit 300). Cell string) is connected to each cell of the cell string of the main code section 300. In addition, the optical symbol 30 according to the first embodiment is configured so that each cell of the sub-code unit 301 has good recognition accuracy when the optical symbol 30 is recognized from a captured image obtained by capturing the optical symbol 30 with the camera 11. The columns are arranged at predetermined intervals with respect to adjacent cell columns. As described above, the optical symbol 30 according to the first embodiment is configured as a comb shape having a trunk and a plurality of branches.

光学シンボル30を櫛型形状とすることで、例えば光学シンボル30が含まれる画像において、光学シンボル30の形状の当該画像に含まれる他の形状との区別や、光学シンボル30の当該画像内での向き(角度)などの認識が容易となる。これにより、例えば後述するテンプレートを用いた光学シンボル30の切り出し処理を、高精度に実行可能となる。   By making the optical symbol 30 into a comb shape, for example, in an image including the optical symbol 30, the shape of the optical symbol 30 is distinguished from other shapes included in the image, and the optical symbol 30 in the image is included in the image. The orientation (angle) can be easily recognized. Thereby, for example, the extraction process of the optical symbol 30 using a template, which will be described later, can be executed with high accuracy.

上述では、光学シンボル30の各セルに割り当てる色数を3色として、情報を2値により表現したが、これはこの例に限定されず、各セルに割り当てる色数を4色以上としてもよい。各セルに割り当てる色数を多くすることで、同じセル数でより多くの情報を表現可能となる。   In the above description, the number of colors assigned to each cell of the optical symbol 30 is three colors, and the information is expressed by binary. However, this is not limited to this example, and the number of colors assigned to each cell may be four or more. By increasing the number of colors assigned to each cell, more information can be expressed with the same number of cells.

図7は、第1の実施形態に係る、R色、G色およびB色と、K色(黒色)との4色を用いた場合のコード化ルールの例を示す。4色を用いる場合、3値すなわち3進数での表現が可能である。例えば、図7(a)に例示されるように、時計回り、すなわち、R色からK色、K色からB色、B色からG色、G色からR色への各遷移により値「0」を表現する。また、反時計回り、すなわち、R色からG色、G色からB色、B色からK色、K色からR色への各遷移により値「1」を表現する。さらに、対角線上、すなわち、R色とB色との間の双方向の遷移、および、K色とG色との間の双方向の遷移により、それぞれ値「2」を表現する。   FIG. 7 shows an example of a coding rule when four colors of R color, G color, B color, and K color (black) are used according to the first embodiment. When four colors are used, ternary values, that is, ternary numbers can be expressed. For example, as illustrated in FIG. 7A, the value “0” is generated by clockwise transition, that is, each transition from R color to K color, K color to B color, B color to G color, and G color to R color. ". The value “1” is expressed counterclockwise, that is, each transition from R color to G color, G color to B color, B color to K color, and K color to R color. Furthermore, the value “2” is expressed on the diagonal line, that is, by the bidirectional transition between the R color and the B color and the bidirectional transition between the K color and the G color.

例えば、図7(b)に示されるように、G色、R色、B色、K色、G色の順に各セルが順次接続されたセル列において、図中で左から右に向けて各セルの色遷移を見た場合について考える。この場合、G色からR色への遷移が値「0」、R色からB色への遷移が値「2」、B色からK色への遷移が値「1」、K色からG色への遷移が値「2」をそれぞれ表す。したがって、図7(b)の配列は、値「3d2120」、すなわち10進数の値「69」を表す。なお、値の表記において先頭の「3d」は、続く数字が3進数による値であることを示している。   For example, as shown in FIG. 7B, in a cell column in which cells are sequentially connected in the order of G color, R color, B color, K color, and G color, Consider the case of looking at the color transition of a cell. In this case, the transition from the G color to the R color is the value “0”, the transition from the R color to the B color is the value “2”, the transition from the B color to the K color is the value “1”, and the K color to the G color. Each transition to represents the value “2”. Therefore, the array of FIG. 7B represents the value “3d2120”, that is, the decimal value “69”. In the value notation, the leading “3d” indicates that the subsequent number is a ternary value.

また例えば、図7(c)に示されるように、図7(b)の各セルの配列に対し、図7(b)とは逆方向に向けて色遷移を見た場合について考える。この場合、G色からK色への遷移が値「2」、K色からB色への遷移が値「0」、B色からR色への遷移が値「2」、R色からG色への遷移が値「1」をそれぞれ表す。したがって、図7(c)の配列は、値「3d1202」、すなわち10進数の値「47」を表す。   Further, for example, as shown in FIG. 7C, consider a case where the color transition is viewed in the direction opposite to that in FIG. 7B with respect to the array of cells in FIG. 7B. In this case, the transition from the G color to the K color is the value “2”, the transition from the K color to the B color is the value “0”, the transition from the B color to the R color is the value “2”, and the transition from the R color to the G color. Each transition to represents a value “1”. Accordingly, the array of FIG. 7C represents the value “3d1202”, that is, the decimal value “47”.

4色の色遷移を用いたコード化ルールは、図7(a)に示した例に限定されない。図7(d)は、第1の実施形態に適用可能な、4色の色遷移を用いたコード化ルールの別の例を示す。この別の例では、R色とK色と間の遷移が双方向それぞれで値「0」を表し、R色とG色との間の遷移が双方向それぞれで値「1」を表し、G色とB色との間の遷移が双方向それぞれで値「2」を表す。また、B色からR色への遷移、および、K色からG色への遷移が値「1」をそれぞれ表す。さらに、G色からK色への遷移が値「0」を、R色からB色への遷移が値「2」をそれぞれ表す。   The coding rule using the four color transitions is not limited to the example shown in FIG. FIG. 7D shows another example of a coding rule using four color transitions applicable to the first embodiment. In this other example, the transition between the R color and the K color represents a value “0” in both directions, the transition between the R color and the G color represents a value “1” in each direction, and G The transition between colors B and B represents the value “2” in each direction. The transition from the B color to the R color and the transition from the K color to the G color each represent the value “1”. Further, the transition from the G color to the K color represents the value “0”, and the transition from the R color to the B color represents the value “2”.

図7(e)は、図7(d)に示したコード化ルールに従った色遷移と値とを関連付ける変換テーブルの例を示す。図7(e)に変換テーブルにおける列および行の意味は、上述した図4(d)の変換テーブルと同様であるので、ここでの説明を省略する。図7(e)において、例えば、遷移元のセルの色がR色で、値「2」を表現したい場合、遷移元のセルに隣接する遷移先のセルの色をB色とする。同様に、遷移元のセルの色がK色で値「1」を表現したい場合、遷移先のセルの色をG色とする。   FIG. 7E shows an example of a conversion table that associates color transitions and values according to the coding rule shown in FIG. The meanings of columns and rows in the conversion table in FIG. 7E are the same as those in the conversion table in FIG. In FIG. 7E, for example, when the color of the transition source cell is R color and the value “2” is to be expressed, the color of the transition destination cell adjacent to the transition source cell is B color. Similarly, when the transition source cell color is K color and the value “1” is to be expressed, the transition destination cell color is G color.

図8および図9を用いて、第1の実施形態に係る、光学シンボル30の各セルに割り当てる色数を4色とした場合のより具体的な例について説明する。一例として、図8に示すように、主コード部300’の各セル「d1」、「d2」、「d3」および「d4」に接続される、副コード部301’の各セル列がそれぞれ値「3d0121」、「3d2101」、「3d2212」および「3d0220」とされている。   A more specific example of the case where the number of colors assigned to each cell of the optical symbol 30 is four colors according to the first embodiment will be described with reference to FIGS. 8 and 9. As an example, as shown in FIG. 8, each cell column of the sub code portion 301 ′ connected to each cell “d 1”, “d 2”, “d 3”, and “d 4” of the main code portion 300 ′ has a value. “3d0121”, “3d2101”, “3d2212”, and “3d0220”.

図9は、図8に例示した情報を、図7を用いて説明したコード化ルールに従いコード化した光学シンボル30の例を示す。この例では、主コード部300のセル列は、偶数個のセルを含み、先端のセルをR色として、R色およびK色が交互に配置されて構成されている。   FIG. 9 shows an example of an optical symbol 30 in which the information exemplified in FIG. 8 is coded according to the coding rules described with reference to FIG. In this example, the cell row of the main code portion 300 includes an even number of cells, and the tip cell is an R color, and the R color and the K color are alternately arranged.

また、副コード部301は、図6と同様にして、例えば左端のセル列において、当該セル列の端のセルが接続される、主コード部300のセルのR色を最初の遷移元の色として、各セルの色が割り当てられる。この例では、当該セル列の各セルに対して、値「1」、「2」、「1」、「0」に従い、図7(d)の変換テーブルを参照して、G色、B色、R色、K色がそれぞれ割り当てられている。   Similarly to FIG. 6, the sub code unit 301 changes the R color of the cell of the main code unit 300 to which the cell at the end of the cell column is connected, for example, in the leftmost cell column, as the first transition source color. The color of each cell is assigned. In this example, for each cell in the cell row, according to the values “1”, “2”, “1”, “0”, referring to the conversion table of FIG. , R color and K color are assigned respectively.

(第1の実施形態に適用可能な装置構成)
次に、第1の実施形態に係る光学シンボル30を生成するための構成について説明する。図10は、第1の実施形態に適用可能なコード生成システムの一例の構成を示す。図10において、コード生成システムは、コード生成装置20と、コード生成装置20に対して例えばネットワーク22を介して接続されるプリンタ21とを含む。
(Apparatus configuration applicable to the first embodiment)
Next, a configuration for generating the optical symbol 30 according to the first embodiment will be described. FIG. 10 shows an example of the configuration of a code generation system applicable to the first embodiment. 10, the code generation system includes a code generation device 20 and a printer 21 connected to the code generation device 20 via, for example, a network 22.

コード生成装置20は、入力された情報を上述したコード化ルールに従いコード化して、光学シンボル30を生成する。プリンタ21は、コード生成装置20により生成された光学シンボル30を印刷媒体に印刷し、光学シンボル30が表示される表示媒体40を作成する。作成された表示媒体40は、例えば、図1を用いて説明したように、物品50に貼付される。   The code generation device 20 generates the optical symbol 30 by encoding the input information according to the above-described encoding rules. The printer 21 prints the optical symbol 30 generated by the code generation device 20 on a print medium, and creates a display medium 40 on which the optical symbol 30 is displayed. The created display medium 40 is attached to the article 50 as described with reference to FIG.

図11は、第1の実施形態に係るコード生成装置20のハードウェア構成の例を示す。図11において、コード生成装置20は、CPU(Central Processing Unit)2000と、ROM(Read Only Memory)2001と、RAM(Random Access Memory)2002と、グラフィクスI/F2003と、ストレージ2005と、データI/F2006と、通信I/F2009とを含み、これら各部がバス2010により互いに通信可能に接続される。このように、第1の実施形態に係るコード生成装置20は、一般的なコンピュータを用いて実現できる。   FIG. 11 shows an example of the hardware configuration of the code generation device 20 according to the first embodiment. 11, the code generation device 20 includes a CPU (Central Processing Unit) 2000, a ROM (Read Only Memory) 2001, a RAM (Random Access Memory) 2002, a graphics I / F 2003, a storage 2005, and a data I / O. F2006 and communication I / F 2009 are included, and these units are communicably connected to each other via a bus 2010. Thus, the code generation device 20 according to the first embodiment can be realized using a general computer.

ストレージ2005は、ハードディスクドライブやフラッシュメモリといった不揮発性の記憶媒体であって、プログラムやデータが記憶される。CPU2000は、ストレージ2005やROM2001に記憶されるプログラムに従い、RAM2002をワークメモリとして用いて、コード生成装置20の全体の動作を制御する。   The storage 2005 is a non-volatile storage medium such as a hard disk drive or a flash memory, and stores programs and data. The CPU 2000 controls the overall operation of the code generation device 20 using the RAM 2002 as a work memory in accordance with a program stored in the storage 2005 or the ROM 2001.

グラフィクスI/F2003は、ディスプレイ2004が接続され、CPU2000によりプログラムに従い生成された表示制御情報に基づき、ディスプレイ2004が表示可能な表示信号を生成する。データI/F2006は、コード生成装置20の外部から供給される外部データに対するインタフェースである。また、データI/F2006は、マウスといったポインティングデバイス2007や、キーボード2008を接続することができる。データI/F2006としては、例えばUSB(Universal Serial Bus)を適用することができる。   The graphics I / F 2003 is connected to a display 2004 and generates a display signal that can be displayed on the display 2004 based on display control information generated by the CPU 2000 according to a program. The data I / F 2006 is an interface for external data supplied from the outside of the code generation device 20. The data I / F 2006 can be connected to a pointing device 2007 such as a mouse and a keyboard 2008. As the data I / F 2006, for example, USB (Universal Serial Bus) can be applied.

コード化対象のデータは、外部からデータI/F2006に供給される。これに限らず、ユーザがポインティングデバイス2007やキーボード2008を操作して、コード化対象のデータをコード生成装置20に入力してもよい。   Data to be encoded is supplied to the data I / F 2006 from the outside. However, the present invention is not limited to this, and the user may input data to be encoded into the code generation device 20 by operating the pointing device 2007 or the keyboard 2008.

通信I/F2009は、ネットワーク22と接続され、ネットワーク22を介した通信を行う。ネットワーク22は、LAN(Local Area Network)であってもよいし、インターネットであってもよい。また、ネットワーク22は、有線通信および無線通信の何れを用いて接続されるものでもよい。   A communication I / F 2009 is connected to the network 22 and performs communication via the network 22. The network 22 may be a LAN (Local Area Network) or the Internet. The network 22 may be connected using either wired communication or wireless communication.

図12は、第1の実施形態に係るコード生成装置20の機能を説明するための機能ブロック図である。図12において、コード生成装置20は、データ入力部200と、分解部201と、変換部202と、色割当部203と、テーブル記憶部204と、出力部205とを含む。   FIG. 12 is a functional block diagram for explaining functions of the code generation device 20 according to the first embodiment. In FIG. 12, the code generation device 20 includes a data input unit 200, a decomposition unit 201, a conversion unit 202, a color assignment unit 203, a table storage unit 204, and an output unit 205.

これらのうち、データ入力部200、分解部201、変換部202、色割当部203および出力部205は、CPU2000上で動作するプログラムにより構成される。これに限らず、データ入力部200、分解部201、変換部202、色割当部203および出力部205の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。また、テーブル記憶部204は、ストレージ2005またはRAM2002における所定の記憶領域により構成される。   Among these, the data input unit 200, the separation unit 201, the conversion unit 202, the color assignment unit 203, and the output unit 205 are configured by programs that operate on the CPU 2000. However, the present invention is not limited thereto, and some or all of the data input unit 200, the separation unit 201, the conversion unit 202, the color assignment unit 203, and the output unit 205 may be configured by hardware circuits that operate in cooperation with each other. The table storage unit 204 includes a predetermined storage area in the storage 2005 or the RAM 2002.

データ入力部200は、データI/F2006を介して入力されたコード化対象のデータを受け付ける。この場合、上述したように、コード化対象のデータは、文字列であるものとする。分解部201は、データ入力部200に受け付けられた文字列を、各桁の値に分解する。変換部202は、分解部201で分解された各桁の値を、光学シンボル30の各セルに割り当てる色数に応じた値に変換する。例えば、変換部202は、各セルに割り当てる色数が4色であれば、各桁の値を3進数による値に変換する。   The data input unit 200 receives data to be encoded that is input via the data I / F 2006. In this case, as described above, it is assumed that the data to be encoded is a character string. The decomposition unit 201 decomposes the character string received by the data input unit 200 into a value of each digit. The conversion unit 202 converts each digit value decomposed by the decomposition unit 201 into a value corresponding to the number of colors assigned to each cell of the optical symbol 30. For example, if the number of colors assigned to each cell is four, the conversion unit 202 converts the value of each digit into a ternary value.

テーブル記憶部204は、図4(d)や図7(d)で説明したような、各セルに割り当てる色数に応じた変換テーブルを予め記憶する。色割当部203は、変換部202で変換された値と、遷移元の色とに基づきテーブル記憶部204に記憶される変換テーブルを参照して、光学シンボル30の各セルに色を割り当てる。なお、色割当部203は、主コード部300のセル列における各セルの色の配列を示す情報を予め記憶しているものとする。   The table storage unit 204 stores in advance a conversion table according to the number of colors assigned to each cell, as described with reference to FIGS. 4D and 7D. The color assignment unit 203 assigns a color to each cell of the optical symbol 30 with reference to the conversion table stored in the table storage unit 204 based on the value converted by the conversion unit 202 and the transition source color. It is assumed that the color assignment unit 203 stores in advance information indicating the color arrangement of each cell in the cell row of the main code unit 300.

出力部205は、色割当部203で色が割り当てられたセルおよび色の情報を記憶する。出力部205は、光学シンボル30の全てのセルに対して色が割り当てられたと判定した場合に、光学シンボル30の各セルに割り当てられた色を示す情報を、各セルの情報に関連付けて出力する。   The output unit 205 stores the cell to which the color is assigned by the color assigning unit 203 and the color information. When the output unit 205 determines that a color has been assigned to all the cells of the optical symbol 30, the output unit 205 outputs information indicating the color assigned to each cell of the optical symbol 30 in association with the information of each cell. .

なお、色割当部203は、副コード部301における1つのセル列のコード化において、直前にコード化したセルの色を、出力部205から取得することができる。   Note that the color assignment unit 203 can obtain the color of the cell coded immediately before from the output unit 205 in the coding of one cell string in the sub-code unit 301.

第1の実施形態に係るコード生成装置20の各機能を実現するためのコード生成プログラムは、インストール可能な形式または実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、コード生成プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、コード生成プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。   A code generation program for realizing each function of the code generation apparatus 20 according to the first embodiment is a file in an installable format or an executable format, which is a CD (Compact Disk), a flexible disk (FD), a DVD ( Provided on a computer-readable recording medium such as Digital Versatile Disk). However, the present invention is not limited to this, and the code generation program may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. Further, the code generation program may be provided or distributed via a network such as the Internet.

コード生成プログラムは、上述した各部(データ入力部200、分解部201、変換部202、色割当部203および出力部205)を含むモジュール構成となっている。実際のハードウェアとしては、CPU2000がストレージ2005などの記憶媒体から当該コード生成プログラムを読み出して実行することにより、上述した各部がRAM2002などの主記憶装置上にロードされ、データ入力部200、分解部201、変換部202、色割当部203および出力部205が主記憶装置上に生成されるようになっている。   The code generation program has a module configuration including the above-described units (data input unit 200, decomposition unit 201, conversion unit 202, color allocation unit 203, and output unit 205). As actual hardware, the CPU 2000 reads the code generation program from a storage medium such as the storage 2005 and executes the code generation program, whereby the above-described units are loaded on the main storage device such as the RAM 2002, and the data input unit 200, the decomposition unit 201, a conversion unit 202, a color allocation unit 203, and an output unit 205 are generated on the main storage device.

図13は、第1の実施形態に係る光学シンボル30の生成方法を示す一例のフローチャートである。ステップS100で、データ入力部200により、コード化対象のデータが受け付けられる。ここで、データ入力部200に受け付けられたデータは、k桁の文字列であるものとする。次のステップS101で、分解部201は、データ入力部200に受け付けられたk桁のデータを、桁毎の値v(i)に分解する。なお、変数iは、処理対象の桁の文字列における位置を示すループ変数であって、(0≦i≦k)の整数である。   FIG. 13 is a flowchart illustrating an example of a method for generating the optical symbol 30 according to the first embodiment. In step S100, the data input unit 200 accepts data to be encoded. Here, it is assumed that the data received by the data input unit 200 is a k-digit character string. In the next step S101, the decomposition unit 201 decomposes the k-digit data received by the data input unit 200 into a value v (i) for each digit. The variable i is a loop variable indicating the position in the character string of the digit to be processed, and is an integer (0 ≦ i ≦ k).

次のステップS102で、変数iが値「0」に初期化され、次のステップS103で、変数iに値「1」が加算される。   In the next step S102, the variable i is initialized to the value “0”, and in the next step S103, the value “1” is added to the variable i.

次のステップS104で、変換部202は、分解部201により分解されたk桁のデータのi桁目の値v(i)を、n進数のp桁の値u(q)に変換する。なお、値nは、予め定められた、2以上の整数である。また、変数qは、副コード部301のセル列内のセルの位置を示すループ変数であって、(0≦q≦p)の整数であり、値pは、副コード部301における処理対象のセル列に含まれるセル数を示す。   In the next step S104, the conversion unit 202 converts the i-th value v (i) of the k-digit data decomposed by the decomposition unit 201 into an n-ary p-digit value u (q). The value n is a predetermined integer of 2 or more. The variable q is a loop variable indicating the position of the cell in the cell string of the sub code unit 301, and is an integer of (0 ≦ q ≦ p), and the value p is a processing target in the sub code unit 301 Indicates the number of cells included in the cell column.

次のステップS105で、変数qが値「0」に初期化され、次のステップS106で、変数qに値「1」が加算される。   In the next step S105, the variable q is initialized to the value “0”, and in the next step S106, the value “1” is added to the variable q.

次のステップS107で、色割当部203は、出力部205から、現在色を割り当てようとしているセルに対する直前(遷移元)のセルの色を取得する。なお、ステップS107において、色割当部203は、変数qの値が「1」である場合には、主コード部300のセル列におけるi桁目に対応するセルの色を取得する。   In the next step S107, the color assigning unit 203 acquires from the output unit 205 the color of the cell immediately before (transition source) for the cell to which the current color is to be assigned. In step S107, when the value of the variable q is “1”, the color assignment unit 203 acquires the color of the cell corresponding to the i-th digit in the cell string of the main code unit 300.

次のステップS108で、色割当部203は、ステップS107で取得したセルの色と、値u(q)とに基づき、テーブル記憶部204に記憶される変換テーブルを参照して、副コード部301におけるi桁目のセル列におけるq番目のセルの色を取得する。   In the next step S108, the color assignment unit 203 refers to the conversion table stored in the table storage unit 204 based on the cell color acquired in step S107 and the value u (q), and the subcode unit 301. To obtain the color of the q-th cell in the i-th cell row.

次のステップS109で、色割当部203は、変数qが値pと一致するか否かを判定する。一致しないと判定した場合(ステップS109、「No」)、色割当部203は、処理をステップS106に戻す。また、一致すると判定した場合(ステップS109、「Yes」)、色割当部203は、処理をステップS110に移行させる。   In the next step S109, the color assignment unit 203 determines whether or not the variable q matches the value p. If it is determined that they do not match (step S109, “No”), the color assignment unit 203 returns the process to step S106. If it is determined that they match (step S109, “Yes”), the color assignment unit 203 shifts the processing to step S110.

ステップS110で、変換部202は、変数iが値kと一致するか否かを判定する。一致しないと判定した場合(ステップS110、「No」)、変換部202は、処理をステップS103に戻す。また、一致すると判定した場合(ステップS110、「Yes」)、変換部202は、ステップS100で受け付けられたデータの光学シンボル30へのコード化が終了したとして、図13のフローチャートにおける一連の処理を終了させる。   In step S110, the conversion unit 202 determines whether or not the variable i matches the value k. If it is determined that they do not match (step S110, “No”), the conversion unit 202 returns the process to step S103. When it is determined that they match (step S110, “Yes”), the conversion unit 202 performs a series of processes in the flowchart of FIG. 13 assuming that the encoding of the data received in step S100 into the optical symbol 30 is completed. Terminate.

なお、図13のフローチャートの処理では、副コード部301に含まれる各セル列に含まれるセルの個数が制限されない。これはこの例に限られず、副コード部301に含まれる各セル列に含まれるセルの個数を一定数としてもよい。図14は、第1の実施形態に係る、副コード部301に含まれる各セル列に含まれるセルの個数をM個に固定する例を示す。   In the process of the flowchart of FIG. 13, the number of cells included in each cell column included in the subcode unit 301 is not limited. This is not limited to this example, and the number of cells included in each cell column included in the subcode unit 301 may be a fixed number. FIG. 14 shows an example in which the number of cells included in each cell column included in the sub-code unit 301 is fixed to M according to the first embodiment.

このように、副コード部301に含まれる各セル列に含まれるセルの個数を一定数とすることで、後述する、光学シンボル30に対するデコード処理を容易とすることができる。また、さらに、各セルの大きさも一定とすると、後述するテンプレートを用いた光学シンボル30の切り出し処理が容易となり好ましい。   In this way, by making the number of cells included in each cell column included in the sub-code unit 301 a fixed number, it is possible to facilitate decoding processing for the optical symbol 30 described later. Furthermore, it is preferable that the size of each cell is also constant because the optical symbol 30 can be easily cut out using a template, which will be described later.

また、第1の実施形態では、隣接するセル間での色の遷移を用いて情報のコード化を行っている。そのため、光学シンボル30を構成する各セルの大きさが異なっていてもよい。この場合、副コード部301に含まれる各セル列の長さを一定とすると、後述するテンプレートを用いた光学シンボル30の切り出し処理が容易となり好ましい。   In the first embodiment, information is encoded by using color transition between adjacent cells. Therefore, the size of each cell constituting the optical symbol 30 may be different. In this case, it is preferable that the length of each cell column included in the sub-code portion 301 is constant because the optical symbol 30 can be easily cut out using a template, which will be described later.

図15は、第1の実施形態に係る、副コード部301の各セル列に含まれるセルの大きさが各セル列毎に異なり、且つ、各セル列の長さが一定である光学シンボル30の例を示す。図15の例では、副コード部301の左端のセル列がP個のセルを含み、真中のセル列が左端のセル列のセルより大きいセルを、P個より少ないQ個含む。また、図15における副コード部301の右端のセル列は、真中のセル列のセルより大きいセルを、Q個より少ないR個含む。この例では、各セル列に含まれるセルのサイズは、それぞれが属するセル列に含まれるセルの総数(P個、Q個、R個)に応じたサイズとなる。   FIG. 15 shows an optical symbol 30 according to the first embodiment, in which the size of the cell included in each cell column of the sub-code unit 301 is different for each cell column, and the length of each cell column is constant. An example of In the example of FIG. 15, the leftmost cell column of the subcode portion 301 includes P cells, and the middle cell column includes Q cells that are smaller than P cells than the cells of the leftmost cell column. In addition, the rightmost cell column of the sub-code portion 301 in FIG. In this example, the size of the cell included in each cell column is a size corresponding to the total number of cells (P, Q, R) included in the cell column to which each cell column belongs.

上述では、光学シンボル30において、図2に示した開始セル302および終了セル303を省略したものとして説明したが、開始セル302および終了セル303を用いることで、後述する光学シンボル30のデコード処理の際の、各セルの認識処理が容易となり好ましい。   In the above description, in the optical symbol 30, the start cell 302 and the end cell 303 shown in FIG. 2 are omitted. However, by using the start cell 302 and the end cell 303, the decoding process of the optical symbol 30 described later is performed. In this case, the recognition process of each cell becomes easy, which is preferable.

図16は、第1の実施形態に係る、上述した開始セル302および終了セル303を用いた光学シンボル30の例を示す。図16に示されるように、主コード部300のセル列において、開始セル302および終了セル303には副コード部301のセル列が接続されない。また、主コード部300のセル列は、開始セル302および終了セル303に挟まれる各セルには副コード部301の各セル列が必ず接続される構成となっている。   FIG. 16 shows an example of the optical symbol 30 using the start cell 302 and the end cell 303 described above according to the first embodiment. As shown in FIG. 16, in the cell string of the main code part 300, the cell string of the sub code part 301 is not connected to the start cell 302 and the end cell 303. The cell string of the main code part 300 is configured such that each cell string of the sub code part 301 is always connected to each cell sandwiched between the start cell 302 and the end cell 303.

このような構成において、各セルに接続される他のセルの個数を示す接続数に基づき、主コード部300と副コード部301とを認識することができる。すなわち、開始セル302および終了セル303と、副コード部301の各セル列の終端のセル(主コード部300のセル列のセルに接続されていない側のセル)は、それぞれ接続数が「1」である。一方、副コード部301の各セル列の終端以外の各セルの接続数が「2」であるのに対し、主コード部300のセル列の、開始セル302および終了セル303以外の各セルは、接続数が「3」である。したがって、接続数「3」のセルに接続される接続数「1」のセルが開始セル302または終了セル303であると判定できる。   In such a configuration, the main code unit 300 and the sub code unit 301 can be recognized based on the number of connections indicating the number of other cells connected to each cell. That is, the start cell 302, the end cell 303, and the cell at the end of each cell column of the sub code unit 301 (the cell not connected to the cell of the cell column of the main code unit 300) each have a connection number of “1”. Is. On the other hand, the number of connections of each cell other than the end of each cell row of the sub code portion 301 is “2”, whereas each cell other than the start cell 302 and the end cell 303 of the cell row of the main code portion 300 is The number of connections is “3”. Therefore, it can be determined that the cell with the connection number “1” connected to the cell with the connection number “3” is the start cell 302 or the end cell 303.

開始セル302および終了セル303を用いることで、主コード部300のセル列の先端のセルの色を決めなくても、デコード時に主コード部300のセル列を容易に認識できる。また、主コード部300のセル列の先端のセルの色を決める必要が無いため、主コード部300のセル列にも情報を埋め込むことが可能となり、光学シンボル30が含む情報量を増加させることが可能となる。   By using the start cell 302 and the end cell 303, the cell string of the main code part 300 can be easily recognized at the time of decoding without determining the color of the cell at the tip of the cell string of the main code part 300. Further, since it is not necessary to determine the color of the cell at the tip of the cell row of the main code portion 300, information can be embedded in the cell row of the main code portion 300, and the amount of information included in the optical symbol 30 is increased. Is possible.

(第1の実施形態に係る光学シンボルの具体的な例)
次に、第1の実施形態に係る光学シンボル30のより具体的な例について説明する。ここでは、光学シンボル30におけるセルの色をR色、G色、B色およびK色の4色とし、コード化対象の情報(文字列)の各桁を3進数で表すものとする。
(Specific example of optical symbol according to the first embodiment)
Next, a more specific example of the optical symbol 30 according to the first embodiment will be described. Here, the cell color in the optical symbol 30 is assumed to be four colors of R color, G color, B color, and K color, and each digit of the information to be encoded (character string) is represented by a ternary number.

ここで、副コード部301において、数値と文字とを対応付けたコード表を用いて各桁の情報を表現することができる。コード表を用いることで、数字以外の文字や記号を表現可能となる。   Here, in the sub-code unit 301, information of each digit can be expressed using a code table in which numerical values and characters are associated with each other. By using the code table, characters and symbols other than numbers can be expressed.

このようなコード表の例として、ASCII(American Standard Code for Information Interchange)コードがある。ASCIIコードは、7ビットの値で表現され、コード「0」〜「31」に制御文字、コード「32」に空白、コード「33」〜「47」、「58」〜「64」、「91」〜「96」および「123」〜「126」に記号、コード「48」〜「57」に数字、コード「65」〜「90」にアルファベットの大文字、コード「97」〜「122」にアルファベットの小文字、コード「127」に「削除」がそれぞれ割り当てられている。   As an example of such a code table, there is an ASCII (American Standard Code for Information Interchange) code. The ASCII code is expressed as a 7-bit value, the control characters are the codes “0” to “31”, the space is the code “32”, the codes “33” to “47”, “58” to “64”, “91”. ”To“ 96 ”and“ 123 ”to“ 126 ”, symbols“ 48 ”to“ 57 ”, numerals“ 65 ”to“ 90 ”, uppercase letters, codes“ 97 ”to“ 122 ” “Delete” is assigned to the lower case letter “code”.

例えば、副コード部301の各セル列に含まれるセル数を4個とした場合、3進数では、「0」〜「80」の値を表現できる。したがって、この値をそのままASCIIコードに適用した場合、大文字のアルファベットの途中までを表現可能である。また、副コード部301の各セル列により表現する4桁の3進数の値を、例えばオフセット値「32」を与えてシフトさせることで、ASCIIコードで表現される、すべての文字と、空白など一部の記号を除く記号とを表現可能である。   For example, when the number of cells included in each cell column of the subcode portion 301 is four, values of “0” to “80” can be expressed in ternary numbers. Therefore, when this value is applied to the ASCII code as it is, it is possible to represent the middle part of the uppercase alphabet. Further, by shifting the 4-digit ternary value expressed by each cell column of the subcode portion 301 by giving an offset value “32”, for example, all characters expressed by the ASCII code, blanks, etc. Symbols excluding some symbols can be expressed.

なお、数値と文字との対応付けは、このASCIIコードによるコード表を利用した例に限定されない。すなわち、第1の実施形態では、文字や記号と、副コード301のセル列により表現可能な数値とを1対1に関連付けることができれば、任意の形式のコード表を適用することができる。以下では、説明のため、副コード部301の各セル列により表現する4桁の3進数の値を、そのままASCIIコードに適用させるものとする。   The association between numerical values and characters is not limited to the example using the code table based on the ASCII code. That is, in the first embodiment, any form of code table can be applied as long as the characters and symbols can be associated with the numerical values that can be expressed by the cell string of the subcode 301 on a one-to-one basis. In the following, for the sake of explanation, it is assumed that a 4-digit ternary value expressed by each cell string of the subcode portion 301 is applied to the ASCII code as it is.

図17は、第1の実施形態に係る光学シンボル30にコード化するための情報の例を示す。ここでは、コード化対象の情報を、8桁の文字列「CBA00283」とする。また、図17において、この8桁の各桁を、桁の小さい方から順にセル「d1」、「d2」、…、「d8」として示している。図13のフローチャートのステップS100では、この文字列「CBA00283」の入力がデータ入力部200により受け付けられる。ステップS101で、分解部201は、この文字列「CBA00283」を桁毎の値に分解する。このとき、分解部201は、ASCIIコードのコード表を用いて、この文字列「CBA00283」の各桁を、それぞれ「67」、「66」、「65」、「48」、「48」、「50」、「56」、「51」の各値に変換する。   FIG. 17 shows an example of information for encoding into the optical symbol 30 according to the first embodiment. Here, it is assumed that the information to be encoded is an 8-digit character string “CBA00283”. In FIG. 17, the eight digits are shown as cells “d1”, “d2”,..., “D8” in order from the smallest digit. In step S100 of the flowchart of FIG. 13, the input of the character string “CBA00283” is accepted by the data input unit 200. In step S101, the decomposition unit 201 decomposes the character string “CBA00283” into values for each digit. At this time, the disassembling unit 201 uses the code table of the ASCII code to change each digit of the character string “CBA00283” to “67”, “66”, “65”, “48”, “48”, “ It is converted into each value of “50”, “56”, and “51”.

これら各値をさらに3進数に変換すると、それぞれ「3d2111」、「3d2110」、「3d2102」、「3d1210」、「3d1210」、「3d1212」、「3d2002」、「3d1220」となる。これらの3進数の各桁の値が、副コード部301’のセル列における各セルで表現される値となる。変換部202は、図13のフローチャートのステップS104において、この変換処理を、桁毎に実行している。   When these values are further converted into ternary numbers, “3d2111”, “3d2110”, “3d2102”, “3d1210”, “3d1210”, “3d1212”, “3d2002”, and “3d1220” are obtained. The value of each digit of these ternary numbers is the value expressed by each cell in the cell string of the subcode portion 301 '. The conversion unit 202 executes this conversion processing for each digit in step S104 of the flowchart of FIG.

図18は、第1の実施形態に係る、図17に例示した情報を、図7を用いて説明したコード化ルールに従いコード化した光学シンボル30、および、光学シンボル30が表示された表示媒体40の例を示す。この例では、主コード部300のセル列は、開始セル302および終了セル303を含む10個のセルで構成され、開始セル302をR色として、R色およびK色を交互に配置して構成されている。   18 shows an optical symbol 30 obtained by coding the information illustrated in FIG. 17 according to the coding rule described with reference to FIG. 7 and a display medium 40 on which the optical symbol 30 is displayed according to the first embodiment. An example of In this example, the cell string of the main code part 300 is composed of 10 cells including a start cell 302 and an end cell 303, and the start cell 302 is set to R color, and R color and K color are alternately arranged. Has been.

色割当部203は、図13のフローチャートのステップS106〜ステップS109において、テーブル記憶部204に記憶される変換テーブルと、遷移元のセルの色とを参照して、上述した文字列の各桁が変換された3進数の桁毎に、色を割り当てる。例えば、図17のセル「d1」に対応する桁は、3進数の値が「3d1220」である。   The color assignment unit 203 refers to the conversion table stored in the table storage unit 204 and the color of the transition source cell in steps S106 to S109 in the flowchart of FIG. A color is assigned to each digit of the converted ternary number. For example, the digit corresponding to the cell “d1” in FIG. 17 has the ternary value “3d1220”.

副コード部301のセル列において、3進数の最も小さい桁(「3」の桁)が主コード部300に接続されるセル(先端セル)に割り当てられるものとする。この場合、色割当部203は、先ず、主コード部300のセル列の当該桁に対応するK色を遷移元のセルの色として変換テーブルを参照して、当該セル列の先端セルに割り当てる色を取得する。以降、色割当部203は、直前に色を割り当てたセルを遷移元のセルとして、当該セル列の各セルに順次色を割り当てる。 It is assumed that the smallest ternary digit (the digit of “3 0 ”) is assigned to the cell (leading cell) connected to the main code unit 300 in the cell sequence of the sub code unit 301. In this case, the color assignment unit 203 first refers to the conversion table using the K color corresponding to the digit of the cell string of the main code unit 300 as the color of the transition source cell, and assigns the color to the leading cell of the cell string. To get. Thereafter, the color assigning unit 203 assigns a color to each cell in the cell column in sequence, using the cell to which the color is assigned immediately before as the transition source cell.

図18の例では、図17のセル「d1」に対応する主コード部300のセルに接続される副コード部301のセル列における各セルは、先端セル側から、「R色」、「B色」、「G色」、「R色」がそれぞれ割り当てられている。色割当部203は、当該セル列の終端のセルへの色の割当が終了すると、副コード部301の次のセル列への色割り当て処理を実行する。   In the example of FIG. 18, each cell in the cell row of the sub code portion 301 connected to the cell of the main code portion 300 corresponding to the cell “d1” of FIG. “Color”, “G color”, and “R color” are respectively assigned. When the color assignment to the cell at the end of the cell row ends, the color assignment unit 203 executes a color assignment process to the next cell row in the sub-code portion 301.

コード生成装置20は、上述のようにして生成した光学シンボル30を、表示媒体40上に表示させる。例えば、コード生成装置20は、生成した光学シンボル30を、プリンタ21を用いて表示媒体40としての印刷媒体に印刷する。   The code generation device 20 displays the optical symbol 30 generated as described above on the display medium 40. For example, the code generation device 20 prints the generated optical symbol 30 on a print medium as the display medium 40 using the printer 21.

図19は、第1の実施形態に係る光学シンボル30が表示された表示媒体40の使用例を概略的に示す。図19の例では、光学シンボル30が表示された表示媒体40が、物品50の外面に添付されている。一例として、光学シンボル30にコード化するコード化対象の文字列を、物品50を識別する識別情報とすることができる。表示媒体40をカメラにより撮像し、撮像画像に含まれる光学シンボル30を認識してデコードすることで、物品50からの作用無しに、物品50の識別情報を取得できる。   FIG. 19 schematically illustrates an example of use of the display medium 40 on which the optical symbol 30 according to the first embodiment is displayed. In the example of FIG. 19, the display medium 40 on which the optical symbol 30 is displayed is attached to the outer surface of the article 50. As an example, a character string to be encoded to be encoded into the optical symbol 30 can be used as identification information for identifying the article 50. By capturing the display medium 40 with a camera, and recognizing and decoding the optical symbol 30 included in the captured image, the identification information of the article 50 can be acquired without any action from the article 50.

(第1の実施形態に係る光学シンボルの認識処理)
次に、第1の実施形態に係る光学シンボル30の認識処理について説明する。図20は、第1の実施形態に適用可能なコード認識システムの一例の構成を示す。図20において、コード認識システムは、コード認識装置10と、カメラ11と、コード管理装置12とを含み、コード認識装置10とコード管理装置12とがネットワーク13を介して互いに通信可能に接続される。また、カメラ11は、コード認識装置10に接続される。
(Optical Symbol Recognition Processing According to First Embodiment)
Next, the recognition process of the optical symbol 30 according to the first embodiment will be described. FIG. 20 shows an example of the configuration of a code recognition system applicable to the first embodiment. In FIG. 20, the code recognition system includes a code recognition device 10, a camera 11, and a code management device 12, and the code recognition device 10 and the code management device 12 are connected to each other via a network 13 so as to communicate with each other. . The camera 11 is connected to the code recognition device 10.

コード認識装置10は、図1を用いて説明したように、カメラ11で撮像された撮像画像に含まれる光学シンボル30の画像を認識し、光学シンボル30のデコードを行う。コード管理装置12は、コード認識装置10が光学シンボル30をデコードして得た情報を管理する。   As described with reference to FIG. 1, the code recognition device 10 recognizes the image of the optical symbol 30 included in the captured image captured by the camera 11 and decodes the optical symbol 30. The code management device 12 manages information obtained by the code recognition device 10 decoding the optical symbol 30.

図21は、第1の実施形態に適用可能なコード認識装置10のハードウェア構成の例を示す。コード認識装置10は、CPU1000と、ROM1001と、RAM1002と、ストレージ1003と、カメラI/F1004と、通信I/F1005とを含み、これら各部がバス1010により互いに通信可能に接続されて構成される。このように、第1の実施形態に係るコード認識装置10は、一般的なコンピュータを用いて実現できる。なお、コード認識装置10は、キーボードやポインティングデバイスといった入力手段や、グラフィクスI/Fおよびディスプレイといった表示手段は、省略することができる。   FIG. 21 shows an example of the hardware configuration of the code recognition apparatus 10 applicable to the first embodiment. The code recognition apparatus 10 includes a CPU 1000, a ROM 1001, a RAM 1002, a storage 1003, a camera I / F 1004, and a communication I / F 1005, and these units are communicably connected to each other via a bus 1010. Thus, the code recognition apparatus 10 according to the first embodiment can be realized using a general computer. Note that the code recognition apparatus 10 can omit input means such as a keyboard and a pointing device, and display means such as a graphics I / F and a display.

ストレージ1003は、ハードディスクドライブやフラッシュメモリといった不揮発性の記憶媒体であって、プログラムやデータが記憶される。CPU1000は、ストレージ1003やROM1001に記憶されるプログラムに従い、RAM1002をワークメモリとして用いて、コード認識装置10の全体の動作を制御する。   The storage 1003 is a non-volatile storage medium such as a hard disk drive or a flash memory, and stores programs and data. The CPU 1000 controls the overall operation of the code recognition apparatus 10 using the RAM 1002 as a work memory according to programs stored in the storage 1003 and the ROM 1001.

カメラI/F1004は、カメラ11が接続される。CPU1000は、カメラ11で撮像された撮像画像を、カメラI/F1004を介して取得することができる。また、CPU1000は、カメラI/F1004を介してカメラ11の撮像動作などを制御することも可能である。   The camera 11 is connected to the camera I / F 1004. The CPU 1000 can acquire a captured image captured by the camera 11 via the camera I / F 1004. The CPU 1000 can also control the imaging operation of the camera 11 via the camera I / F 1004.

通信I/F1005は、ネットワーク13と接続され、ネットワーク13を介した通信を行う。ネットワーク13は、LAN(Local Area Network)であってもよいし、インターネットであってもよい。また、ネットワーク13は、有線通信および無線通信の何れを用いて接続されるものでもよい。   The communication I / F 1005 is connected to the network 13 and performs communication via the network 13. The network 13 may be a LAN (Local Area Network) or the Internet. The network 13 may be connected using either wired communication or wireless communication.

図22は、第1の実施形態に係るコード認識装置10の機能を説明するための一例の機能ブロック図である。図22において、コード認識装置10は、画像取得部100と、切出処理部101と、認識部102と、デコード部103と、テーブル記憶部104とを含む。   FIG. 22 is a functional block diagram of an example for explaining functions of the code recognition device 10 according to the first embodiment. In FIG. 22, the code recognition device 10 includes an image acquisition unit 100, a cut-out processing unit 101, a recognition unit 102, a decoding unit 103, and a table storage unit 104.

これらのうち、画像取得部100、切出処理部101、認識部102およびデコード部103は、CPU1000上で動作するプログラムにより構成される。これに限らず、画像取得部100、切出処理部101、認識部102およびデコード部103の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。また、テーブル記憶部104は、ストレージ1003またはRAM1002における所定の記憶領域により構成される。   Among these, the image acquisition unit 100, the cutout processing unit 101, the recognition unit 102, and the decoding unit 103 are configured by programs that operate on the CPU 1000. However, the present invention is not limited to this, and some or all of the image acquisition unit 100, the clipping processing unit 101, the recognition unit 102, and the decoding unit 103 may be configured by hardware circuits that operate in cooperation with each other. The table storage unit 104 is configured by a predetermined storage area in the storage 1003 or the RAM 1002.

画像取得部100は、カメラ11により撮像された撮像画像を取得する。切出処理部101は、画像取得部100により取得された撮像画像から、光学シンボル30の画像を切り出す。認識部102は、切出処理部101で切り出された光学シンボル30の画像に対する認識処理を行う。すなわち、認識部102は、光学シンボル30の画像から各セルの画像を検出し、検出した画像の色情報に基づき各セルの接続関係から得られる情報、または、その色情報自身が持つ情報を認識する。認識部102は、この認識結果に基づき、光学シンボル30が持つシンボル情報を作成する。   The image acquisition unit 100 acquires a captured image captured by the camera 11. The cutout processing unit 101 cuts out the image of the optical symbol 30 from the captured image acquired by the image acquisition unit 100. The recognition unit 102 performs recognition processing on the image of the optical symbol 30 cut out by the cut-out processing unit 101. That is, the recognition unit 102 detects the image of each cell from the image of the optical symbol 30, and recognizes information obtained from the connection relationship of each cell based on the color information of the detected image or information held by the color information itself. To do. Based on the recognition result, the recognition unit 102 creates symbol information that the optical symbol 30 has.

より具体的には、認識部102は、主コード認識部1020と、副コード認識部1021と、合成部1022とを含む。主コード認識部1020は、光学シンボル30の画像から主コード部300のセル列を構成するセルの色を示す色情報を認識する。副コード認識部1021は、光学シンボル30の画像から、副コード部301に含まれる各セル列を構成するセルの色情報を認識する。このとき、副コード認識部1021は、副コード部301に含まれる各セルの色情報を認識する認識処理を、各セルについて並列的に実行する。合成部1022は、主コード認識部1020および副コード認識部1021でそれぞれ認識して得られた情報を合成し、光学シンボル30が持つシンボル情報として作成する。シンボル情報は、例えば、光学シンボル30の主コード部300および副コード部301が含む各セル列内の各セルの色情報と、各セル間の接続関係の情報とを含む。   More specifically, the recognition unit 102 includes a main code recognition unit 1020, a sub code recognition unit 1021, and a synthesis unit 1022. The main code recognizing unit 1020 recognizes color information indicating the color of the cells constituting the cell row of the main code unit 300 from the image of the optical symbol 30. The sub code recognition unit 1021 recognizes the color information of the cells constituting each cell column included in the sub code unit 301 from the image of the optical symbol 30. At this time, the sub-code recognition unit 1021 executes a recognition process for recognizing the color information of each cell included in the sub-code unit 301 in parallel for each cell. The synthesizing unit 1022 synthesizes information obtained by the recognition by the main code recognizing unit 1020 and the sub code recognizing unit 1021, respectively, and creates the symbol information that the optical symbol 30 has. The symbol information includes, for example, color information of each cell in each cell column included in the main code portion 300 and the sub code portion 301 of the optical symbol 30 and information on connection relations between the cells.

テーブル記憶部104は、図4(d)や図7(e)で説明したような、各セルに割り当てる色数に応じた変換テーブルを予め記憶する。デコード部103は、認識部102で作成されたシンボル情報をデコードし、光学シンボル30にコード化された情報を復元する。   The table storage unit 104 stores in advance a conversion table corresponding to the number of colors assigned to each cell, as described with reference to FIGS. 4D and 7E. The decoding unit 103 decodes the symbol information created by the recognition unit 102 and restores the information encoded in the optical symbol 30.

第1の実施形態に係るコード認識装置10の各機能を実現するためのコード認識プログラムは、インストール可能な形式または実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、コード認識プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、コード認識プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。   A code recognition program for realizing each function of the code recognition apparatus 10 according to the first embodiment is a file in an installable format or an executable format in a CD (Compact Disk), a flexible disk (FD), a DVD ( Provided on a computer-readable recording medium such as Digital Versatile Disk). However, the present invention is not limited thereto, and the code recognition program may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. The code recognition program may be provided or distributed via a network such as the Internet.

コード認識プログラムは、上述した各部(画像取得部100、切出処理部101、認識部102およびデコード部103)を含むモジュール構成となっている。実際のハードウェアとしては、CPU1000がストレージ1003などの記憶媒体から当該コード認識プログラムを読み出して実行することにより、上述した各部がRAM1002などの主記憶装置上にロードされ、画像取得部100、切出処理部101、認識部102およびデコード部103が主記憶装置上に生成されるようになっている。   The code recognition program has a module configuration including the above-described units (image acquisition unit 100, cut-out processing unit 101, recognition unit 102, and decoding unit 103). As actual hardware, the CPU 1000 reads out and executes the code recognition program from a storage medium such as the storage 1003, so that the above-described units are loaded on the main storage device such as the RAM 1002. A processing unit 101, a recognition unit 102, and a decoding unit 103 are generated on the main storage device.

(第1の実施形態に係る光学シンボルの認識処理の詳細)
次に、第1の実施形態に係る光学シンボル30の認識およびデコード処理について、より詳細に説明する。以下では、図18を用いて説明した光学シンボル30を用いるものとして説明を行う。
(Details of optical symbol recognition processing according to the first embodiment)
Next, the recognition and decoding process of the optical symbol 30 according to the first embodiment will be described in more detail. In the following description, it is assumed that the optical symbol 30 described with reference to FIG. 18 is used.

すなわち、以下の説明に用いる光学シンボル30は、開始セル302および終了セル303を含み、開始セル302および終了セル303に挟まれた8個のセルを含む主コード部300と、主コード部300の開始セル302および終了セル303に挟まれた8個のセルにそれぞれ接続される8本のセル列を含む副コード部301とを備える。主コード部300において、開始セル302の色がR色とされ、R色とK色とが交互に配置されて構成される。副コード部301において、各セル列は、4色を用いて3進数を表す4個のセルをそれぞれ含む。コード認識装置10は、この光学シンボル30の構造を、予め知っているものとする。   That is, the optical symbol 30 used in the following description includes a start cell 302 and an end cell 303, and includes a main code unit 300 including eight cells sandwiched between the start cell 302 and the end cell 303, and A sub-code unit 301 including eight cell strings connected to eight cells sandwiched between a start cell 302 and an end cell 303, respectively. In the main code part 300, the color of the start cell 302 is R, and the R color and the K color are alternately arranged. In the subcode portion 301, each cell row includes four cells each representing a ternary number using four colors. It is assumed that the code recognition device 10 knows the structure of the optical symbol 30 in advance.

図23は、第1の実施形態に係る、カメラ11により撮像され、コード認識装置10の画像取得部100に取得される撮像画像60の例を示す。図23の例では、撮像画像60は、表示媒体40と、表示媒体40上に表示された光学シンボル30との組の画像を複数含んでいる。コード認識装置10は、この撮像画像60から光学シンボル30の画像をそれぞれ切り出して、切り出した光学シンボル30の画像に基づき、光学シンボル30に含まれる各セルの色情報および各セルの接続関係を認識し、認識結果に基づき光学シンボル30のデコードを行う。   FIG. 23 shows an example of a captured image 60 captured by the camera 11 and acquired by the image acquisition unit 100 of the code recognition device 10 according to the first embodiment. In the example of FIG. 23, the captured image 60 includes a plurality of sets of images of the display medium 40 and the optical symbol 30 displayed on the display medium 40. The code recognition device 10 cuts out the image of the optical symbol 30 from the captured image 60, and recognizes the color information of each cell included in the optical symbol 30 and the connection relation of each cell based on the cut out image of the optical symbol 30. Then, the optical symbol 30 is decoded based on the recognition result.

図24は、第1の実施形態に係るコード認識装置10における光学シンボル30の認識およびデコード処理を示す一例のフローチャートである。図24において、ステップS400で、コード認識装置10は、認識部102により、光学シンボル30に対して認識処理を行い、主コード部300のセルが認識されたか否かを判定する。   FIG. 24 is a flowchart of an example showing recognition and decoding processing of the optical symbol 30 in the code recognition device 10 according to the first embodiment. In FIG. 24, in step S400, the code recognition apparatus 10 performs a recognition process on the optical symbol 30 by the recognition unit 102, and determines whether or not the cell of the main code unit 300 has been recognized.

より詳細には、ステップS400において、コード認識装置10は、切出処理部101により撮像画像60から光学シンボル30の画像の切り出しを行う。認識部102は、主コード認識部1020により、切り出された画像から主コード部300のセルの認識処理を行い、主コード部300における開始セル302および終了セル303以外のセルが認識されたか否かを判定する。認識されていないと判定した場合、認識部102は、処理をステップS400に戻し(ステップS400、「No」)、主コード部300のセルの認識処理を続行する。   More specifically, in step S <b> 400, the code recognition apparatus 10 cuts out the image of the optical symbol 30 from the captured image 60 by the cutout processing unit 101. The recognizing unit 102 performs the cell recognizing process of the main code unit 300 from the clipped image by the main code recognizing unit 1020, and whether or not cells other than the start cell 302 and the end cell 303 in the main code unit 300 are recognized. Determine. If it is determined that it is not recognized, the recognizing unit 102 returns the process to step S400 (step S400, “No”), and continues the cell recognizing process of the main code unit 300.

ステップS400で、主コード部300のセルが認識されていると判定した場合(ステップS400、「Yes」)、認識部102は、認識されたセルの色と接続情報とを取得し、処理をステップS401およびステップS402に移行させる。   When it is determined in step S400 that the cell of the main code part 300 is recognized (step S400, “Yes”), the recognition unit 102 acquires the color and connection information of the recognized cell, and performs the processing step. The process proceeds to S401 and step S402.

なお、接続情報は、例えば、認識されたセルを示す情報と、認識されたセルに隣接する、認識済みのセルを示す情報とを含む。認識部102は、例えば、主コード認識部1020および副コード認識部1021においてセルが認識された順序に応じた識別情報(例えば通し番号)を、そのセルを示す情報として用いる。   Note that the connection information includes, for example, information indicating a recognized cell and information indicating a recognized cell adjacent to the recognized cell. The recognition unit 102 uses, for example, identification information (for example, a serial number) corresponding to the order in which cells are recognized by the main code recognition unit 1020 and the sub code recognition unit 1021 as information indicating the cell.

ステップS401で、認識部102において主コード認識部1020は、主コード部300のセル列の全てのセルを認識したか否かを判定する。認識していないと判定した場合(ステップS401、「No」)、認識部102は、処理をステップS400に戻し、主コード部300のセルの認識処理を続行する。   In step S <b> 401, the main code recognizing unit 1020 in the recognizing unit 102 determines whether or not all cells in the cell row of the main code unit 300 have been recognized. If it is determined that it has not been recognized (step S401, “No”), the recognition unit 102 returns the process to step S400 and continues the cell recognition process of the main code unit 300.

一方、ステップS401で、主コード部300のセル列の全てのセルを認識したと判定した場合(ステップS401、「Yes」)、認識部102は、処理をステップS403に移行させる。   On the other hand, if it is determined in step S401 that all the cells in the cell string of the main code portion 300 have been recognized (step S401, “Yes”), the recognition unit 102 shifts the processing to step S403.

例えば、主コード部300に含まれるセル列が、2種類の色情報のセルが交互に配置されて構成され、且つ、当該セル列に含まれるセルの個数が既知であるとする。この場合、主コード認識部1020は、当該セル列におけるセル間の色情報の遷移の回数を計数することで、主コード部300のセル列の全てのセルを認識したと判定できる。また、主コード認識部1020は、この主コード部300のセル列におけるセル間の色情報の遷移の回数を、主コード部300のセル列により表現される情報であると認識できる。   For example, it is assumed that the cell string included in the main code unit 300 is configured by alternately arranging cells of two types of color information, and the number of cells included in the cell string is known. In this case, the main code recognizing unit 1020 can determine that all cells in the cell sequence of the main code unit 300 have been recognized by counting the number of transitions of color information between cells in the cell sequence. Further, the main code recognition unit 1020 can recognize the number of transitions of color information between cells in the cell sequence of the main code unit 300 as information expressed by the cell sequence of the main code unit 300.

上述した図17および図18を例に取ると、主コード部300において、開始セル302および終了セル303を含めて、9回の色情報の遷移が計数されると、主コード部300のセル列の全てのセルを認識したと判定できる。また、色情報の遷移回数から1を減じた値が、主コード部300のセル列の、開始セル302および終了セル303を除いたセルにより表現される情報すなわち桁数であると認識できる。   Taking FIG. 17 and FIG. 18 as an example, if nine transitions of color information including the start cell 302 and the end cell 303 are counted in the main code unit 300, the cell string of the main code unit 300 is counted. It can be determined that all the cells of have been recognized. Further, it can be recognized that the value obtained by subtracting 1 from the number of transitions of the color information is the information expressed by the cells excluding the start cell 302 and the end cell 303 in the cell string of the main code portion 300, that is, the number of digits.

また、ステップS402で、認識部102は、副コード認識部1021により、副コード部301のセルに対する認識処理を行う。より詳細には、副コード認識部1021は、ステップS400で主コード認識部1020により認識されたセルに接続される、副コード部301のセル列を処理対象として、この処理対象のセル列について、各セルの認識処理を行う。   In step S <b> 402, the recognition unit 102 performs recognition processing on the cell of the sub code unit 301 by the sub code recognition unit 1021. More specifically, the sub-code recognition unit 1021 sets the cell sequence of the sub-code unit 301 connected to the cell recognized by the main code recognition unit 1020 in step S400 as a processing target, Recognize each cell.

図25は、第1の実施形態に係る、このステップS402による副コード認識部1021による認識処理を示す一例のフローチャートである。ステップS4020で、副コード認識部1021は、例えば主コード部300で認識されたセルに対して接続される副コード部301のセルを認識する。ここで認識されたセルが含まれるセル列が、処理対象のセル列となる。副コード認識部1021は、認識されたセルの色と接続情報とを取得する。次のステップS4021で、副コード認識部1021は、処理対象のセル列における色の遷移に基づき、直前の処理で認識されたセルに隣接するセルを認識する。副コード認識部1021は、認識されたセルの色と接続情報とを取得する。   FIG. 25 is a flowchart of an example showing the recognition processing by the sub-code recognition unit 1021 in step S402 according to the first embodiment. In step S4020, the sub code recognition unit 1021 recognizes, for example, the cell of the sub code unit 301 connected to the cell recognized by the main code unit 300. A cell string including the recognized cell is a cell string to be processed. The sub-code recognition unit 1021 acquires the recognized cell color and connection information. In the next step S4021, the sub-code recognition unit 1021 recognizes a cell adjacent to the cell recognized in the immediately preceding process based on the color transition in the cell row to be processed. The sub-code recognition unit 1021 acquires the recognized cell color and connection information.

次のステップS4022で、副コード認識部1021は、ステップS4021で認識されたセルが、処理対象のセル列の終端セルであるか否かを判定する。終端セルではないと判定した場合(ステップS4022、「No」)、副コード認識部1021は、処理をステップS4021に戻し、直前のステップS4021の処理において認識されたセルに隣接するセルの認識処理を行う。一方、副コード認識部1021は、終端セルであると判定した場合(ステップS4022、「Yes」)、図25のフローチャートによる一連の処理を終了させる。   In next step S4022, the sub-code recognition unit 1021 determines whether or not the cell recognized in step S4021 is the terminal cell of the cell string to be processed. If it is determined that the cell is not the terminal cell (step S4022, “No”), the sub-code recognition unit 1021 returns the process to step S4021, and performs a process of recognizing a cell adjacent to the cell recognized in the immediately preceding step S4021. Do. On the other hand, if the sub-code recognition unit 1021 determines that the cell is a terminal cell (step S4022, “Yes”), the series of processing according to the flowchart of FIG. 25 is terminated.

なお、副コード認識部1021は、例えば、ステップS4021において予め定められた回数の色の遷移を認識した場合に、ステップS4022において、認識されたセルが処理対象のセル列の終端セルであると判定する。これに限らず、副コード認識部1021は、ステップS4021において認識されたセルに隣接するセルの接続数に基づきステップS4022の終端セルの判定を行ってもよい。   For example, when the sub-code recognition unit 1021 recognizes a predetermined number of color transitions in step S4021, the sub-code recognition unit 1021 determines in step S4022 that the recognized cell is the terminal cell of the cell string to be processed. To do. However, the sub code recognition unit 1021 may determine the terminal cell in step S4022 based on the number of connected cells adjacent to the cell recognized in step S4021.

この図25のフローチャートによる処理は、副コード部301に含まれる複数のセル列に対して、並列的に実行される。例えば、副コード認識部1021は、図24のステップS400において主コード認識部1020によりセルが認識される毎に、ステップS402の処理、すなわち、図25のフローチャートによる処理を実行させる。   The process according to the flowchart of FIG. 25 is executed in parallel for a plurality of cell strings included in the subcode unit 301. For example, every time a cell is recognized by the main code recognition unit 1020 in step S400 of FIG. 24, the sub code recognition unit 1021 executes the process of step S402, that is, the process of the flowchart of FIG.

図24のフローチャートの説明に戻り、認識部102は、ステップS403で、主コード部300のセル列に接続される、副コード部301の全てのセル列に対する処理が終了したか否かを判定する。例えば、認識部102は、主コード認識部1020におけるステップS400およびステップS401の処理と、副コード認識部1021におけるステップS402の処理とを監視する。認識部102は、ステップS400およびステップS401において最後に認識された主コード部300のセルに接続される副コード部301のセル列に対するステップS402の処理が終了したか否かを判定する。終了していないと判定した場合(ステップS403、「No」)、認識部102は、処理をステップS403に戻して、処理の終了を待機する。   Returning to the description of the flowchart of FIG. 24, the recognition unit 102 determines in step S403 whether or not the processing has been completed for all the cell strings of the sub code unit 301 connected to the cell string of the main code unit 300. . For example, the recognizing unit 102 monitors the processing of steps S400 and S401 in the main code recognizing unit 1020 and the processing of step S402 in the sub code recognizing unit 1021. The recognizing unit 102 determines whether or not the processing in step S402 for the cell string of the sub code unit 301 connected to the cell of the main code unit 300 last recognized in step S400 and step S401 is completed. If it is determined that the process has not been completed (step S403, “No”), the recognition unit 102 returns the process to step S403 and waits for the process to end.

一方、認識部102は、ステップS403で、主コード部300のセル列に接続される、副コード部301の全てのセル列に対する処理が終了したと判定した場合(ステップS403、「Yes」)、処理をステップS404に移行させる。   On the other hand, when the recognition unit 102 determines in step S403 that the processing for all cell strings of the sub code unit 301 connected to the cell string of the main code unit 300 has been completed (step S403, “Yes”). The process proceeds to step S404.

ステップS404で、認識部102は、合成部1022により、主コード部300のセル列を読み取って得られた情報と、副コード部301に含まれる複数のセル列を読み取って得られた情報とを合成し、各情報が合成された情報を、光学シンボル30が持つシンボル情報として作成する。より具体的には、合成部1022は、上述のステップS400およびステップS401、ならびに、ステップS402で取得された各セルの接続情報に基づき、主コード部300に含まれる情報と、副コード部301に含まれる情報との合成処理を行う。   In step S404, the recognizing unit 102 uses the combining unit 1022 to obtain information obtained by reading the cell sequence of the main code unit 300 and information obtained by reading a plurality of cell sequences included in the sub code unit 301. The information obtained by combining the information is created as symbol information of the optical symbol 30. More specifically, the combining unit 1022 determines whether the information included in the main code unit 300 and the sub code unit 301 are based on the connection information of each cell acquired in step S400 and step S401 and step S402 described above. Performs composition processing with the included information.

図26を用いて、第1の実施形態に係る、合成部1022による接続情報に基づく合成処理について説明する。なお、ここでは、説明のため、主コード部300のセル列は、図26(d)に示されるように、開始セル302および終了セル303と、開始セル302および終了セル303に挟まれた3個のセル(それぞれラベルを丸で囲んで示す)を含むものとする。また、副コード部301の各セル列は、2個のセルを含むものとする。   A composition process based on connection information by the composition unit 1022 according to the first embodiment will be described with reference to FIG. Here, for the sake of explanation, the cell string of the main code portion 300 is represented by 3 between the start cell 302 and the end cell 303 and between the start cell 302 and the end cell 303 as shown in FIG. Suppose that it contains cells (each labeled with a circle). In addition, each cell column of the subcode portion 301 includes two cells.

なお、図26(d)において、各セルに付された数字は、例えば各セルが認識された順番に応じて各セルに与えられた識別情報(ラベル)である。開始セル302および終了セル303のラベルは、それぞれ「S」および「E」とされている。   In FIG. 26D, the numbers given to the cells are identification information (labels) given to the cells according to the order in which the cells are recognized, for example. The labels of the start cell 302 and the end cell 303 are “S” and “E”, respectively.

図26(a)は、各セル間の接続情報をラベルを用いて示している。図26(a)において、括弧「()」内に併記される2つのセルが接続されていることを示し、例えばラベル#1のセルと、ラベル#2のセルとが接続されることが示されている。同様に、ラベル#5およびラベル#2の各セル、ラベル#3およびラベル#9の各セル、ラベル#1およびラベル#3の各セル、ラベル#1およびラベル#Sの各セル、ラベル#8およびラベル#4の各セル、ラベル#3およびラベル#6の各セル、ラベル#6およびラベル#7の各セル、ラベル#9およびラベル#4の各セル、ラベル#9およびラベル#Eの各セルがそれぞれ接続されることが示されている。   FIG. 26A shows connection information between cells using labels. In FIG. 26 (a), it is shown that two cells written in parentheses “()” are connected, and for example, a cell of label # 1 and a cell of label # 2 are connected. Has been. Similarly, each cell of label # 5 and label # 2, each cell of label # 3 and label # 9, each cell of label # 1 and label # 3, each cell of label # 1 and label #S, label # 8 And each cell of label # 4, each cell of label # 3 and label # 6, each cell of label # 6 and label # 7, each cell of label # 9 and label # 4, each of label # 9 and label #E It is shown that the cells are each connected.

合成部1022は、図26(a)に示される各セル間の接続情報に基づき、各セルに接続される他のセルの個数である接続数を求める。図26(b)は、ラベル#1〜#9の各セルの接続数を示す。ラベル#1、#3および#9の各セルが接続数「3」であり、ラベル#2、#4および#6の各セルが接続数「2」であり、ラベル#5、#7および#8の各セルが接続数「1」となっている。   The combining unit 1022 obtains the number of connections, which is the number of other cells connected to each cell, based on the connection information between the cells illustrated in FIG. FIG. 26B shows the number of connected cells of labels # 1 to # 9. Each cell of labels # 1, # 3 and # 9 has a connection number “3”, each cell of labels # 2, # 4 and # 6 has a connection number “2”, and labels # 5, # 7 and # 9 Each of the eight cells has the number of connections “1”.

合成部1022は、図26(a)で示した各セルの接続情報と、図26(b)で示した各セルの接続数とに基づき、各セルの接続の組を求める。すなわち、図16を用いて説明したように、接続数「3」のセルは、主コード部300のセル列のセルである。接続数「2」のセルは、副コード部301における各セル列の、終端以外のセルである。また、接続数「1」のセルは、副コード部301における各セル列の終端のセルである。なお、開始セル302および終了セル303も、接続数「1」となるが、開始セル302および終了セル303は、ラベル#Sおよび#Eとして他のセルと区別されているので、ここで考慮する必要は無い。   The combining unit 1022 obtains a connection set of each cell based on the connection information of each cell shown in FIG. 26A and the number of connections of each cell shown in FIG. That is, as described with reference to FIG. 16, the cell with the number of connections “3” is a cell in the cell row of the main code unit 300. A cell with the number of connections “2” is a cell other than the end of each cell string in the sub-code unit 301. Further, the cell with the number of connections “1” is a cell at the end of each cell column in the sub code unit 301. Note that the start cell 302 and the end cell 303 also have the number of connections “1”, but the start cell 302 and the end cell 303 are distinguished from other cells as labels #S and #E, and are considered here. There is no need.

合成部1022は、これらの情報と、図26(a)のセルの接続情報とから、図26(c)に接続組として示されるように、ラベル#1、#3および#9の各セルによる接続の組により、幹すなわち主コード部300のセル列における各セルの接続関係を作成する。また、ラベル#2および#5、ラベル#4および#8、ならびに、ラベル#6および#7の各接続の組により、それぞれ枝すなわち副コード部301の各セル列における各セルの接続関係を作成する。さらに、合成部1022は、幹の各セルの接続関係と、枝の各セルの接続関係とに基づき、副コード部301の各セル列を、主コード部300のセル列における各セルに接続する。   The synthesizer 1022 uses the cells of labels # 1, # 3, and # 9 based on these pieces of information and the connection information of the cells shown in FIG. 26 (a), as shown in FIG. 26 (c). The connection relationship of each cell in the cell row of the trunk, that is, the main code unit 300 is created by the connection set. In addition, the connection relationship of each cell in each cell column of the branch, that is, the subcode section 301 is created by each connection set of labels # 2 and # 5, labels # 4 and # 8, and labels # 6 and # 7. To do. Furthermore, the combining unit 1022 connects each cell string of the sub code unit 301 to each cell in the cell string of the main code unit 300 based on the connection relationship of each cell of the trunk and the connection relationship of each cell of the branch. .

合成部1022は、副コード部301の各セル列が、主コード部300のセル列における各セルに接続された構成に基づき、主コード部300のセル列に含まれる情報と、副コード部301の各セル列に含まれる各情報とを取得する。合成部1022は、取得された各情報を合成し、合成した情報を、光学シンボル30が持つシンボル情報として作成する。上述したように、シンボル情報は、光学シンボル30の主コード部300および副コード部301が含む各セル列内の各セルの色情報と、各セル間の接続関係の情報とを含む。   Based on the configuration in which each cell string of the sub code unit 301 is connected to each cell in the cell string of the main code unit 300, the combining unit 1022 includes information included in the cell string of the main code unit 300, and the sub code unit 301. Each information included in each cell column is acquired. The combining unit 1022 combines the acquired pieces of information and creates the combined information as symbol information that the optical symbol 30 has. As described above, the symbol information includes the color information of each cell in each cell column included in the main code portion 300 and the sub code portion 301 of the optical symbol 30 and information on the connection relationship between the cells.

説明は図24のフローチャートに戻り、ステップS404で合成部1022により主コード部300のセル列に基づく情報と副コード部301の各セル列に基づく情報とが合成されて光学シンボル30が持つシンボル情報が作成されると、処理がステップS405に移行される。ステップS405で、デコード部103は、ステップS404で作成されたシンボル情報のデコード処理を行い、元の情報を復元する。   Returning to the flowchart of FIG. 24, symbol information held by the optical symbol 30 by combining the information based on the cell sequence of the main code unit 300 and the information based on each cell sequence of the sub code unit 301 by the combining unit 1022 in step S404. Is created, the process proceeds to step S405. In step S405, the decoding unit 103 decodes the symbol information created in step S404 and restores the original information.

より詳細には、デコード部103は、ステップS404で合成部1022により作成されたシンボル情報に基づき、テーブル記憶部104に記憶される変換テーブルを参照する。デコード部103は、シンボル情報に基づき、光学シンボル30の副コード部301の各セル列における隣接する2つのセルについて、主コード部300のセル列に近い側のセルを遷移元のセルとして、各セルの色情報に従い変換テーブルを参照して値を取得する。   More specifically, the decoding unit 103 refers to the conversion table stored in the table storage unit 104 based on the symbol information created by the synthesis unit 1022 in step S404. Based on the symbol information, the decoding unit 103 uses the cells closer to the cell column of the main code unit 300 as adjacent cells in each cell column of the sub code unit 301 of the optical symbol 30 as the transition source cells. The value is obtained by referring to the conversion table according to the cell color information.

デコード部103は、副コード部301の1本のセル列の各セルについて値が取得されると、取得された各値を3進数の桁に応じて加算して、当該セル列の値を求める。デコード部103は、求めたセル列の値に基づき、例えばコード表を参照して、元の文字を復元する。この処理を、副コード部301の全てのセル列に対して実行し、光学シンボル30にコード化された元の文字列をデコードする。   When a value is acquired for each cell of one cell string of the sub-code part 301, the decoding unit 103 adds the acquired values according to ternary digits to obtain the value of the cell string. . Based on the obtained value of the cell string, the decoding unit 103 restores the original character with reference to, for example, a code table. This process is executed for all the cell strings in the sub-code unit 301, and the original character string encoded in the optical symbol 30 is decoded.

ステップS405のデコード処理が終了すると、図24のフローチャートによる一連の処理が終了される。   When the decoding process in step S405 ends, a series of processes according to the flowchart of FIG. 24 ends.

このように、第1の実施形態に係る光学シンボル30は、主コード部300のセル列に対して、副コード部301の複数のセル列が接続されている。そのため、副コード部301の複数のセル列に対するデコード処理を並列的に実行することができ、デコード処理を高速化できる。   As described above, in the optical symbol 30 according to the first embodiment, a plurality of cell strings of the sub code part 301 are connected to a cell string of the main code part 300. Therefore, the decoding process for a plurality of cell strings in the subcode unit 301 can be executed in parallel, and the decoding process can be speeded up.

(第1の実施形態に係る光学シンボルの切り出し処理)
次に、第1の実施形態に係る光学シンボル30を撮像画像から切り出す切り出し処理について説明する。第1の実施形態では、この切り出し処理として、(1)テンプレートを用いたテンプレートマッチングによる第1の切り出し処理と、(2)画素の色の連続性を用いた第2の切り出し処理とのうち、何れかを適用する。
(Optical Symbol Cutout Processing According to First Embodiment)
Next, a clipping process for clipping the optical symbol 30 according to the first embodiment from the captured image will be described. In the first embodiment, as the cut-out process, (1) a first cut-out process based on template matching using a template and (2) a second cut-out process using continuity of pixel colors, Apply either one.

(第1の切り出し処理)
先ず、(1)の、第1の切り出し処理について説明する。第1の切り出し処理では、光学シンボル30の形状を既知とし、光学シンボル30の形状に対応する形状のテンプレートを用意する。図27は、第1の実施形態に適用可能なテンプレートの例を示す。図27(a)は、形状が既知の光学シンボル30の例を示す。
(First cutout process)
First, the first cutout process (1) will be described. In the first cutout process, the shape of the optical symbol 30 is known, and a template having a shape corresponding to the shape of the optical symbol 30 is prepared. FIG. 27 shows an example of a template applicable to the first embodiment. FIG. 27A shows an example of the optical symbol 30 whose shape is known.

図27(b)は、2値化画像によるテンプレート70aの例を示す。テンプレート70aは、例えば、図27(a)に示される光学シンボル30に対して、当該光学シンボル30を輝度値に対する所定の閾値に基づき2値化して作成する。図27(c)は、エッジ検出により作成したテンプレート70bの例を示す。テンプレート70bは、例えば、図27(a)に示される光学シンボル30をグレースケールの画像に変換し、このグレースケールの画像に対して既知の方法によりエッジ検出処理を施し、検出されたエッジ情報を用いて作成する。   FIG. 27B shows an example of a template 70a using a binarized image. For example, the template 70a is created by binarizing the optical symbol 30 shown in FIG. 27A based on a predetermined threshold value for the luminance value. FIG. 27C shows an example of a template 70b created by edge detection. For example, the template 70b converts the optical symbol 30 shown in FIG. 27A into a grayscale image, performs edge detection processing on the grayscale image by a known method, and detects the detected edge information. Use to create.

第1の切り出し処理は、これらテンプレート70aおよび70bの何れを用いて実行してもよい。以下では、2値化画像によるテンプレート70aを用いるものとして説明を行う。   The first cut-out process may be executed using any of these templates 70a and 70b. In the following description, it is assumed that a template 70a using a binarized image is used.

図28は、第1の実施形態に係る第1の切り出し処理を示す一例のフローチャートである。この図28のフローチャートによる処理は、上述した図24のフローチャートにおけるステップS400の処理に対応する。   FIG. 28 is a flowchart illustrating an example of a first cutout process according to the first embodiment. The process according to the flowchart of FIG. 28 corresponds to the process of step S400 in the flowchart of FIG.

ステップS200で、コード認識装置10は、切出処理部101により、撮像画像60(図23参照)に対して、既知の技術を用いてエッジ検出処理を施す。次のステップS201で、切出処理部101は、用いるテンプレート70aのサイズおよび形状を選択する。すなわち、撮像画像60に含まれる光学シンボル30の画像は、撮像時のカメラ11と光学シンボル30との距離や、カメラ11の画角、撮像の角度などにより、向きや大きさが変化する。そのため、切出処理部101は、複数のサイズのテンプレート70aを用意する。   In step S <b> 200, the code recognition device 10 causes the cutout processing unit 101 to perform edge detection processing on the captured image 60 (see FIG. 23) using a known technique. In the next step S201, the cutout processing unit 101 selects the size and shape of the template 70a to be used. That is, the orientation and size of the image of the optical symbol 30 included in the captured image 60 changes depending on the distance between the camera 11 and the optical symbol 30 at the time of imaging, the angle of view of the camera 11, the imaging angle, and the like. Therefore, the cutout processing unit 101 prepares templates 70a having a plurality of sizes.

次のステップS202で、切出処理部101は、ステップS201で選択されたテンプレート70aを用いて、撮像画像60に対して既知の技術を用いてテンプレートマッチング処理を施し、類似度を求める。例えば、切出処理部101は、ステップS201で選択したテンプレート70aを撮像画像60内でスキャンさせて、各位置での類似度を求める。   In the next step S202, the cutout processing unit 101 performs template matching processing on the captured image 60 using a known technique using the template 70a selected in step S201, and obtains a similarity. For example, the cutout processing unit 101 scans the template 70a selected in step S201 in the captured image 60, and obtains the similarity at each position.

次のステップS203で、切出処理部101は、ステップS202で求めた類似度に基づき、閾値以上の類似度の有無を判定する。このとき、上述したように、光学シンボル30が櫛型形状とされているため、撮像画像60に含まれる、光学シンボル30の画像と、光学シンボル30以外の画像との区別が容易であり、類似度に基づく判定を高精度に実行可能である。閾値以上の類似度が無いと判定した場合(ステップS203、「No」)、切出処理部101は、処理をステップS201に戻し、別のサイズ、形状のテンプレート70aを選択して再びテンプレートマッチング処理を行う。   In the next step S203, the cut-out processing unit 101 determines the presence or absence of a similarity equal to or greater than a threshold based on the similarity obtained in step S202. At this time, as described above, since the optical symbol 30 has a comb shape, the image of the optical symbol 30 and the image other than the optical symbol 30 included in the captured image 60 can be easily distinguished from each other. The determination based on the degree can be executed with high accuracy. If it is determined that there is no similarity equal to or greater than the threshold (step S203, “No”), the cut-out processing unit 101 returns the process to step S201, selects a template 70a having a different size and shape, and again performs template matching processing. I do.

ステップS203で、閾値以上の類似度があると判定した場合(ステップS203、「Yes」)、切出処理部101は、処理をステップS204に移行させる。ステップS204で、切出処理部101は、撮像画像60から、類似度が閾値以上と判定された撮像画像60上の位置におけるテンプレート70aの領域の画像を切り出す。次のステップS205で、コード認識装置10は、認識部102の主コード認識部1020により、ステップS204で切り出した画像から、主コード部300のセル列を構成するセルの色情報を認識する。   If it is determined in step S203 that there is a similarity equal to or higher than the threshold (step S203, “Yes”), the extraction processing unit 101 shifts the processing to step S204. In step S204, the cut-out processing unit 101 cuts out an image of the area of the template 70a at the position on the picked-up image 60 where the similarity is determined to be greater than or equal to the threshold value from the picked-up image 60. In the next step S205, the code recognition device 10 recognizes the color information of the cells constituting the cell string of the main code unit 300 from the image cut out in step S204 by the main code recognition unit 1020 of the recognition unit 102.

主コード部300のセル列構成するセルの色情報が認識されると、図28のフローチャートによる一連の処理が終了される。   When the color information of the cells constituting the cell row of the main code unit 300 is recognized, a series of processes according to the flowchart of FIG.

図29は、第1の実施形態に係る第1の切り出し処理により切り出した光学シンボル30の画像から、各セルの色情報を取得する方法の例を示す。図29(a)は、各セルにおける所定の位置の画素から色情報を取得する例を示す。図29(b)は、セル列をセルの接続方向にスキャンして、位置が連続する複数の画素から色情報を取得する例を示す。   FIG. 29 shows an example of a method for acquiring the color information of each cell from the image of the optical symbol 30 cut out by the first cut-out process according to the first embodiment. FIG. 29A shows an example in which color information is acquired from a pixel at a predetermined position in each cell. FIG. 29B illustrates an example in which color information is acquired from a plurality of pixels whose positions are continuous by scanning a cell row in the cell connection direction.

図29(a)に示す取得方法は、光学シンボル30における各セルが一定の大きさを有し、且つ、撮像画像60に歪みが少ない場合に、高速に色の取得を行うことが可能である。一方、図29(b)に示す取得方法は、図29(a)の取得方法に比べて処理に時間を要する一方で、各セルの大きさが一定ではない場合や、撮像画像60に歪みが多い場合であっても、高精度に色の取得を行うことが可能である。また、図29(b)に示す取得方法は、撮像画像60における色ムラに強いという利点もある。   The acquisition method shown in FIG. 29A enables high-speed color acquisition when each cell in the optical symbol 30 has a certain size and the captured image 60 has little distortion. . On the other hand, the acquisition method shown in FIG. 29B requires more processing time than the acquisition method shown in FIG. 29A, but the size of each cell is not constant or the captured image 60 is distorted. Even when there are many cases, it is possible to acquire colors with high accuracy. In addition, the acquisition method illustrated in FIG. 29B has an advantage of being resistant to color unevenness in the captured image 60.

これら図29(a)に示す取得方法と、図29(b)に示す取得方法は、撮像画像60の撮像条件などに応じて適宜選択できるようにすると、好ましい。   It is preferable that the acquisition method shown in FIG. 29A and the acquisition method shown in FIG. 29B can be appropriately selected according to the imaging conditions of the captured image 60 and the like.

(第2の切り出し処理)
次に、(2)の、第2の切り出し処理について説明する。第2の切り出し処理では、撮像画像60の画素毎に色を認識し、注目画素に隣接する隣接画素と注目画素とが同一色である場合に、注目画素と当該隣接画素とを一纏めにしてラベリングする。
(Second cutout process)
Next, the second cutout process (2) will be described. In the second cut-out process, the color is recognized for each pixel of the captured image 60, and when the adjacent pixel adjacent to the target pixel and the target pixel are the same color, the target pixel and the adjacent pixel are collectively labeled. To do.

図30は、第1の実施形態に係る第2の切り出し処理を示す一例のフローチャートである。この図30のフローチャートによる処理は、上述した図24のフローチャートにおけるステップS400の処理に対応させることができる。   FIG. 30 is a flowchart illustrating an example of a second cutout process according to the first embodiment. The process according to the flowchart of FIG. 30 can correspond to the process of step S400 in the flowchart of FIG. 24 described above.

ステップS300で、コード認識装置10は、切出処理部101により、撮像画像60からランダムに画素を注目画素として選択する。なお、ステップS300では、撮像画像60の所定画素を注目画素として選択するようにしてもよい。   In step S300, the code recognition device 10 causes the cutout processing unit 101 to randomly select a pixel from the captured image 60 as a target pixel. In step S300, a predetermined pixel of the captured image 60 may be selected as a target pixel.

次のステップS301で、切出処理部101は、注目画素の色を認識する。次のステップS302で、切出処理部101は、注目画素の色情報が、光学シンボル30の構成色(例えばR色、G色、B色およびK色の何れか)の色情報と対応するか否かを判定する。一例として、切出処理部101は、ある色情報に係る色を示す値が、他の色情報に係る色を示す値に対して所定の範囲内に収まっている場合に、当該ある色情報が当該他の色情報に対応していると判定する。切出処理部101は、注目画素の色情報が光学シンボル30の構成色の色情報と対応しないと判定した場合(ステップS302、「No」)、処理をステップS300に戻し、別の画素を新たな注目画素として選択する。   In the next step S301, the cutout processing unit 101 recognizes the color of the target pixel. In the next step S302, the clipping processing unit 101 determines whether the color information of the target pixel corresponds to the color information of the constituent color of the optical symbol 30 (for example, any one of R color, G color, B color, and K color). Determine whether or not. As an example, when the value indicating the color related to certain color information is within a predetermined range with respect to the value indicating the color related to other color information, the clipping processing unit 101 stores the certain color information. It is determined that it corresponds to the other color information. When it is determined that the color information of the pixel of interest does not correspond to the color information of the constituent color of the optical symbol 30 (step S302, “No”), the cutout processing unit 101 returns the process to step S300 and adds another pixel. Selected as a target pixel.

一方、切出処理部101は、ステップS302で、注目画素の色情報が光学シンボル30の構成色の色情報に対応すると判定した場合(ステップS302、「Yes」)、処理をステップS303に移行する。ステップS303は、注目画素の色情報と、注目画素に隣接する隣接画素の色情報とに基づき各画素をラベリングする処理である。換言すれば、ステップS303は、光学シンボル30に含まれるセルを特定するための処理である。ステップS303は、ステップS3030〜ステップS3037の一連の処理を含む。   On the other hand, when it is determined in step S302 that the color information of the target pixel corresponds to the color information of the constituent color of the optical symbol 30 (step S302, “Yes”), the extraction processing unit 101 proceeds to step S303. . Step S303 is a process of labeling each pixel based on the color information of the target pixel and the color information of the adjacent pixel adjacent to the target pixel. In other words, step S303 is a process for specifying a cell included in the optical symbol 30. Step S303 includes a series of processes of steps S3030 to S3037.

ステップS303において、ステップS3030で、切出処理部101は、注目画素に対して固有のラベルを付与するラベリングを行う。ラベリングは、ラベリング対象の画素(注目画素)の撮像画像60上の座標情報と、注目画素の色情報と、所定のラベルとを関連付けることで行う。切出処理部101は、ラベリングを行った画素の情報を、例えばRAM1002に記憶する。   In step S <b> 303, in step S <b> 3030, the extraction processing unit 101 performs labeling that assigns a unique label to the target pixel. The labeling is performed by associating coordinate information on the captured image 60 of the pixel to be labeled (target pixel), color information of the target pixel, and a predetermined label. The cutout processing unit 101 stores information on the labeled pixels in, for example, the RAM 1002.

次のステップS3031で、切出処理部101は、色情報の認識に用いるパラメータを調整する。例えば、切出処理部101は、R色、G色、B色およびK色をそれぞれ認識するための閾値を、ステップS3031で調整する。   In the next step S3031, the extraction processing unit 101 adjusts parameters used for color information recognition. For example, the cut-out processing unit 101 adjusts threshold values for recognizing each of R color, G color, B color, and K color in step S3031.

次のステップS3032で、切出処理部101は、注目画素に隣接する隣接画素のうち、未処理の隣接画素が有るか否かを判定する。切出処理部101は、判定対象の隣接画素の座標に基づき当該隣接画素にラベルが付与されているか否かを調べ、ラベルが付与されていない場合に、当該隣接画素が未処理画素であると判定する。切出処理部101は、未処理の隣接画素が無いと判定した場合(ステップS3032、「No」)、処理を後述するステップS3034に移行する。   In the next step S3032, the cutout processing unit 101 determines whether there is an unprocessed adjacent pixel among the adjacent pixels adjacent to the target pixel. The cutout processing unit 101 checks whether or not a label is assigned to the adjacent pixel based on the coordinates of the adjacent pixel to be determined, and if the label is not attached, the adjacent pixel is an unprocessed pixel. judge. When it is determined that there is no unprocessed adjacent pixel (step S <b> 3032, “No”), the cut-out processing unit 101 proceeds to step S <b> 3034 described later.

一方、切出処理部101は、ステップS3032で、未処理の隣接画素があると判定した場合(ステップS3032、「Yes」)、処理をステップS3033に移行する。ステップS3033で、切出処理部101は、未処理の隣接画素の座標を、座標記憶部に記憶する。座標記憶部は、例えばRAM1002やストレージ1003の所定領域が用いられる。このステップS3033の処理では、光学シンボル30の構成色の色情報と対応しない色情報の未処理の隣接画素も、座標記憶部に記憶される。   On the other hand, if it is determined in step S3032 that there is an unprocessed adjacent pixel (step S3032, "Yes"), the cutout processing unit 101 proceeds to step S3033. In step S3033, the extraction processing unit 101 stores the coordinates of unprocessed adjacent pixels in the coordinate storage unit. For example, a predetermined area of the RAM 1002 or the storage 1003 is used as the coordinate storage unit. In the process of step S3033, unprocessed adjacent pixels of color information that does not correspond to the color information of the constituent colors of the optical symbol 30 are also stored in the coordinate storage unit.

次のステップS3034で、切出処理部101は、未処理の隣接画素の座標が座標記憶部に記憶されているか否かを判定する。切出処理部101は、未処理の隣接画素の座標が座標記憶部に記憶されていると判定した場合(ステップS3034、「Yes」)、処理をステップS3035に移行させる。ステップS3035で、切出処理部101は、未処理の隣接画素のうち1つの画素を選択する。このとき、切出処理部101は、注目画素と同一の色の画素を優先して選択する。   In the next step S3034, the extraction processing unit 101 determines whether or not the coordinates of unprocessed adjacent pixels are stored in the coordinate storage unit. When it is determined that the coordinates of the unprocessed adjacent pixels are stored in the coordinate storage unit (step S3034, “Yes”), the cut-out processing unit 101 shifts the processing to step S3035. In step S3035, the cutout processing unit 101 selects one pixel from unprocessed adjacent pixels. At this time, the extraction processing unit 101 preferentially selects a pixel having the same color as the target pixel.

次のステップS3036で、切出処理部101は、ステップS3035で選択した未処理の隣接画素の色情報を認識する。次のステップS3037で、切出処理部101は、ステップS3036で認識された色情報が、光学シンボル30の構成色の色情報と対応するか否かを判定する。   In the next step S3036, the cutout processing unit 101 recognizes the color information of the unprocessed adjacent pixels selected in step S3035. In the next step S3037, the extraction processing unit 101 determines whether or not the color information recognized in step S3036 corresponds to the color information of the constituent colors of the optical symbol 30.

切出処理部101は、認識された色情報が光学シンボル30の構成色の色情報と対応すると判定した場合(ステップS3037、「Yes」)、処理をステップS3030に戻し、当該未処理の隣接画素を新たな注目画素としてラベリングを行う。   When it is determined that the recognized color information corresponds to the color information of the constituent color of the optical symbol 30 (step S3037, “Yes”), the cutout processing unit 101 returns the process to step S3030, and the unprocessed adjacent pixel Is labeled as a new pixel of interest.

このラベリングにおいて、切出処理部101は、当該新たな注目画素の色情報が、直前の処理における注目画素の色情報に対応する場合、当該新たな注目画素に、当該直前の処理における注目画素と同一のラベルを付与する。一方、切出処理部101は、当該新たな注目画素の色情報が、直前の処理における注目画素の色情報と異なる色情報である場合、当該新たな注目画素に、当該直前の処理における注目画素と異なるラベルを付与する。すなわち、切出処理部101は、ステップS3030のラベリング処理により、座標が連続し、且つ、互いに対応する色情報を有する一塊の画素群に対して、固有のラベルを付与する。   In this labeling, when the color information of the new pixel of interest corresponds to the color information of the pixel of interest in the immediately preceding process, the extraction processing unit 101 adds the pixel of interest in the immediately preceding process to the pixel of interest in the immediately preceding process. Give the same label. On the other hand, when the color information of the new pixel of interest is different from the color information of the pixel of interest in the immediately preceding process, the cutout processing unit 101 adds the pixel of interest in the immediately previous process to the new pixel of interest. Give a different label. In other words, the cutout processing unit 101 assigns a unique label to a group of pixels having coordinate information and corresponding color information by the labeling process in step S3030.

一方、ステップS3037で、切出処理部101は、ステップS3036で認識された色情報が、光学シンボル30の構成色の色情報に対応しないと判定した場合(ステップS3037、「No」)、処理をステップS3034に戻す。切出処理部101は、ステップS3034で未処理の隣接画素の座標が座標記憶部に記憶されていると判定した場合(ステップS3034、「Yes」)、次のステップS3035で、直前の処理で選択した未処理の隣接画素と異なる未処理の隣接画素を選択する。   On the other hand, if it is determined in step S3037 that the color information recognized in step S3036 does not correspond to the color information of the constituent colors of the optical symbol 30 (step S3037, “No”), the process is performed. It returns to step S3034. When it is determined in step S3034 that the coordinates of the unprocessed adjacent pixels are stored in the coordinate storage unit (step S3034, “Yes”), the cut-out processing unit 101 selects the previous process in step S3035. An unprocessed adjacent pixel that is different from the unprocessed adjacent pixel is selected.

上述したステップS3034で、未処理の隣接画素の座標が座標記憶部に記憶されていないと判定した場合(ステップS3034、「No」)、ステップS303の一連の処理を抜け、処理がステップS304に移行される。すなわち、ステップS3032で未処理の隣接画素が無く、且つ、ステップS3034で座標記憶部に未処理の隣接画素の座標が記憶されていない場合に、ステップS303の一連の処理を抜けることになる。   If it is determined in step S3034 described above that the coordinates of the unprocessed adjacent pixels are not stored in the coordinate storage unit (step S3034, “No”), the series of processing in step S303 is terminated, and the processing proceeds to step S304. Is done. That is, when there is no unprocessed adjacent pixel in step S3032, and the coordinates of the unprocessed adjacent pixel are not stored in the coordinate storage unit in step S3034, the series of processing in step S303 is terminated.

ステップS304で、コード認識装置10において、主コード認識部1020は、ステップS303におけるラベリングによりそれぞれ固有のラベルが付与された各画素群による構成が、主コード部300のセルの接続情報と一致するか否かを判定する。   In step S304, in the code recognition apparatus 10, the main code recognition unit 1020 determines whether the configuration of each pixel group to which a unique label is assigned by the labeling in step S303 matches the cell connection information of the main code unit 300. Determine whether or not.

すなわち、このステップS304では、ステップS303のラベリング処理によりそれぞれ固有のラベルが付与された画素群が複数あり、且つ、これら複数の画素群間の接続関係が、主コード部300のセル列における各セルの接続情報と完全一致する接続関係を含むか否かを判定する。画素群間の接続関係は、例えば、ラベリングされた各画素の座標および色に基づき知ることができる。   That is, in this step S304, there are a plurality of pixel groups to which unique labels are assigned by the labeling process in step S303, and the connection relationship between the plurality of pixel groups is determined by each cell in the cell column of the main code section 300. It is determined whether or not a connection relationship that completely matches the connection information is included. The connection relationship between the pixel groups can be known based on, for example, the coordinates and color of each labeled pixel.

主コード認識部1020は、ステップS304で、それぞれ固有のラベルが付与された各画素群による構成が、主コード部300のセルの接続情報と一致しないと判定した場合(ステップS304、「No」)、処理をステップS300に戻す。すなわち、この場合は、ステップS300で選択された画素が、光学シンボル30を構成する画素ではなかったことになる。   When the main code recognition unit 1020 determines in step S304 that the configuration of each pixel group to which a unique label is assigned does not match the cell connection information of the main code unit 300 (step S304, “No”). The process returns to step S300. That is, in this case, the pixel selected in step S300 is not a pixel constituting the optical symbol 30.

一方、主コード認識部1020は、ステップS304で、それぞれ固有のラベルが付与された各画素群による構成が、主コード部300のセルの接続情報と一致すると判定した場合(ステップS304、「Yes」)、図30のフローチャートによる一連の処理を終了させる。この場合、少なくとも光学シンボル30の主コード部300の切り出し処理が完了している。   On the other hand, when the main code recognition unit 1020 determines in step S304 that the configuration of each pixel group to which a unique label is assigned matches the cell connection information of the main code unit 300 (step S304, “Yes”). ), A series of processes according to the flowchart of FIG. 30 is terminated. In this case, at least the extraction process of the main code portion 300 of the optical symbol 30 has been completed.

なお、主コード認識部1020は、上述のステップS303のラベリング処理において、固有のラベルが付与された画素群と、この画素群に接続される他の画素群との接続関係に基づき、当該画素群が主コード部300のセルであると認識することが可能である。画素群が主コード部300のセルであると認識された場合、図24のステップS400の判定に従い処理をステップS402に移行させ(ステップS400、「Yes」)、副コード部301のセルの処理を実行する。   The main code recognizing unit 1020 determines the pixel group based on the connection relationship between the pixel group to which the unique label is assigned and the other pixel group connected to the pixel group in the labeling process in step S303 described above. Can be recognized as a cell of the main code part 300. When the pixel group is recognized as a cell of the main code unit 300, the process proceeds to step S402 according to the determination in step S400 of FIG. 24 (step S400, “Yes”), and the cell process of the sub code unit 301 is performed. Run.

この場合、例えば、コード認識装置10は、図30のフローチャートの処理を別途実行することで、副コード部301のセル列の切り出し処理を実行することができる。一例として、切出処理部101は、ステップS300における画素の選択を、主コード部300のセルであると認識した画素群に隣接する画素に対して行う。また、ステップS304の判定処理は、例えば、副コード認識部1021により、副コード部301のセルの接続情報と一致するか否かを判定する。   In this case, for example, the code recognition apparatus 10 can execute the cell string cut-out process of the sub-code unit 301 by separately executing the process of the flowchart of FIG. As an example, the extraction processing unit 101 performs pixel selection in step S300 on pixels adjacent to the pixel group that is recognized as a cell of the main code unit 300. In the determination process in step S304, for example, the sub code recognition unit 1021 determines whether or not the cell connection information of the sub code unit 301 matches.

コード認識装置10は、主コード認識部1020により主コード部300のセルが認識される毎に、図30のフローチャートの処理を別途、並列的に実行できる。これにより、処理の高速化が可能である。   The code recognition device 10 can separately execute the processing of the flowchart of FIG. 30 in parallel each time the main code recognition unit 1020 recognizes a cell of the main code unit 300. As a result, the processing speed can be increased.

なお、図30のフローチャートのステップS303では、注目画素に隣接する隣接画素の色実行が光学シンボル30の構成色の色情報と対応する場合、当該隣接画素を新たな注目画素として処理を行い、順次、ラベルを付与する領域を拡大していく。このとき、光学シンボル30の構成色以外の色の隣接画素への領域の拡大を行わない。このように、ラベリング処理を行う領域を限定的とすることで、ラベリング処理をより高速に実行することが可能である。   In step S303 in the flowchart of FIG. 30, when the color execution of the adjacent pixel adjacent to the target pixel corresponds to the color information of the constituent color of the optical symbol 30, the adjacent pixel is processed as a new target pixel, and sequentially The area to which the label is attached will be expanded. At this time, the area is not expanded to adjacent pixels of colors other than the constituent colors of the optical symbol 30. In this way, by limiting the area where the labeling process is performed, it is possible to execute the labeling process at a higher speed.

(第1の実施形態の変形例)
次に、第1の実施形態の変形例について説明する。第1の実施形態では、光学シンボル30を、セルが直線状に配列されたセル列による主コード部300と、主コード部300の開始セル302および終了セル303を除く各セルに接続される、それぞれセルが直線状に配列された複数のセル列による副コード部301とにより構成した。光学シンボル30の形状は、この例に限定されず、主コード部300および副コード部301の各セル列をそれぞれ直線状に配列しない形状も可能である。
(Modification of the first embodiment)
Next, a modification of the first embodiment will be described. In the first embodiment, the optical symbol 30 is connected to each cell except the main code part 300 by a cell row in which cells are arranged in a straight line, and the start cell 302 and the end cell 303 of the main code part 300. The sub-code unit 301 is composed of a plurality of cell rows in which cells are arranged in a straight line. The shape of the optical symbol 30 is not limited to this example, and a shape in which the cell columns of the main code portion 300 and the sub code portion 301 are not arranged linearly is also possible.

図31は、第1の実施形態の変形例に係る光学シンボル30’の一例の構成を示す。第1の実施形態の変形例では、光学シンボル30’を、図31(a)に例示されるように、各セルの大きさをそれぞれ異ならせると共に、各セル間の接続を、各セルの任意の辺に対して行い、3以上のセルが直線状に配列されないように構成している。なお、図31(a)のセル内のアルファベットは、そのセルに付与されるラベルを示している。   FIG. 31 shows an exemplary configuration of an optical symbol 30 ′ according to a modification of the first embodiment. In the modification of the first embodiment, as illustrated in FIG. 31 (a), the optical symbol 30 ′ is made different in size of each cell, and the connection between the cells is arbitrarily set in each cell. This is performed so that three or more cells are not arranged in a straight line. In addition, the alphabet in the cell of Fig.31 (a) has shown the label provided to the cell.

図31(b)は、図31(a)の光学シンボル30’の構成を整理して示している。なお、図31(b)では、ラベルを丸で囲んでセルを示している。図31(b)において、セル「a」、「b」、「g」、「k」、「p」および「q」が主コード部300のセル列となる。この例では、セル「a」および「q」がそれぞれ開始セル302および終了セル303であり、セル「a」および「q」に挟まれる各セル「b」、「g」、「k」および「p」は、3以上のセルが接続されている。   FIG. 31B shows the configuration of the optical symbol 30 ′ in FIG. In FIG. 31B, a cell is shown by enclosing the label in a circle. In FIG. 31B, cells “a”, “b”, “g”, “k”, “p”, and “q” are the cell strings of the main code portion 300. In this example, cells “a” and “q” are a start cell 302 and an end cell 303, respectively, and each cell “b”, “g”, “k” and “ In “p”, three or more cells are connected.

また、セル「c」、「d」および「e」、セル「i」および「j」、セル「l」、「m」、「n」および「o」、ならびに、セル「r」および「s」は、それぞれ主コード部300のセル「b」、「g」、「k」および「p」に接続される、副コード部301のセル列である。また、図31(b)の例では、セル「f」および「h」も、それぞれ副コード部301のセル列として構成されている。この場合、例えばセル「f」は、主コード部300のセル「b」に対して、セル「c」、「d」および「e」によるセル列とは異なる方向に接続される。セル「h」も同様である。また、これらセル「f」および「h」は、それぞれ、副コード部301におけるセル列の終端セルでもある。   Also, cells “c”, “d” and “e”, cells “i” and “j”, cells “l”, “m”, “n” and “o”, and cells “r” and “s” "Is a cell string of the sub code unit 301 connected to the cells" b "," g "," k ", and" p "of the main code unit 300, respectively. In the example of FIG. 31B, the cells “f” and “h” are also configured as cell strings of the sub-code portion 301, respectively. In this case, for example, the cell “f” is connected to the cell “b” of the main code unit 300 in a direction different from the cell row by the cells “c”, “d”, and “e”. The same applies to the cell “h”. Further, these cells “f” and “h” are also terminal cells of the cell string in the sub-code portion 301.

このような構成であっても、主コード部300の各セルに対して副コード部301の各セル列がそれぞれ接続されるため、副コード部301の各セル列に対する処理を並列的に実行でき、処理の高速化が可能である。   Even in such a configuration, each cell string of the sub code unit 301 is connected to each cell of the main code unit 300, so that the processing for each cell string of the sub code unit 301 can be executed in parallel. The processing speed can be increased.

(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態は、第1の実施形態に係る光学シンボル30を、コード管理システムおよび搬送システムに適用させた例である。図32は、第2の実施形態に係るコード管理システムおよび搬送システムを概略的に示す。なお、図32において、上述した図1、図10および図20などと共通する部分には同一の符号を付して、詳細な説明を省略する。
(Second Embodiment)
Next, a second embodiment will be described. The second embodiment is an example in which the optical symbol 30 according to the first embodiment is applied to a code management system and a transport system. FIG. 32 schematically shows a code management system and a transport system according to the second embodiment. Note that, in FIG. 32, the same reference numerals are given to portions common to FIGS. 1, 10 and 20 described above, and detailed description thereof is omitted.

図32において、コード管理システムは、互いにネットワーク13で接続されるコード認識装置10、コード管理装置12、コード生成装置20およびプリンタ21を含む。また、搬送システムは、このコード管理システムの構成に対して、さらに、搬送制御装置14を含む。搬送制御装置14は、搬送装置51の駆動制御を行うことができる。例えば、搬送制御装置14は、位置情報を入力することで、入力された位置情報に対応する位置の搬送装置51を駆動制御し、移動させることができる。   In FIG. 32, the code management system includes a code recognition device 10, a code management device 12, a code generation device 20, and a printer 21 that are connected to each other via a network 13. The transport system further includes a transport control device 14 in addition to the configuration of the code management system. The transport control device 14 can perform drive control of the transport device 51. For example, the conveyance control device 14 can drive and control the conveyance device 51 at a position corresponding to the input position information by inputting the position information.

図32の例では、各搬送装置51に対して、それぞれ物品50が積載されている。物品50には、第1の実施形態に係る光学シンボル30が表示される表示媒体40が、外面(この例では上面)に添付される。各物品50に添付される表示媒体40に表示される各光学シンボル30は、それぞれ、各物品50を識別するための識別情報がコード化されたものである。   In the example of FIG. 32, the articles 50 are loaded on the respective conveyance devices 51. A display medium 40 on which the optical symbol 30 according to the first embodiment is displayed is attached to the article 50 on the outer surface (the upper surface in this example). Each optical symbol 30 displayed on the display medium 40 attached to each article 50 is obtained by encoding identification information for identifying each article 50.

コード生成装置20は、各物品50を識別する各識別情報が入力される。コード生成装置20は、入力された各識別情報を、例えば図13に示される手順に従いコード化して、各物品50にそれぞれ対応する各光学シンボル30を生成する。コード生成装置20は、生成した各光学シンボル30を、それぞれ表示媒体40に印刷する。光学シンボル30が印刷された各表示媒体40は、光学シンボル30にコード化された識別情報に対応する物品50に添付される。   Each identification information for identifying each article 50 is input to the code generation device 20. The code generation device 20 encodes each input identification information according to the procedure shown in FIG. 13, for example, and generates each optical symbol 30 corresponding to each article 50. The code generation device 20 prints the generated optical symbols 30 on the display medium 40, respectively. Each display medium 40 on which the optical symbol 30 is printed is attached to an article 50 corresponding to the identification information encoded in the optical symbol 30.

コード認識装置10は、カメラ11により撮像された撮像画像60から、図23〜図30を用いて説明した方法に従い、各光学シンボル30の切り出しを行う。すなわち、コード認識装置10は、光学シンボル30を含む撮像画像60を取得する画像取得部として機能する。コード認識装置10は、さらに、切り出した各光学シンボル30をデコードし、光学シンボル30にコード化された識別情報を復元する。すなわち、コード認識装置10は、光学シンボル30にコード化された識別情報を取得する識別情報取得部としても機能する。また、コード認識装置10は、例えば光学シンボル30の切り出し処理の際に取得した画素の座標に基づき、撮像画像60内における各光学シンボル30の位置を取得する。すなわち、コード認識装置10は、光学シンボル30の位置を取得する位置取得部としても機能する。   The code recognition device 10 cuts out each optical symbol 30 from the captured image 60 captured by the camera 11 according to the method described with reference to FIGS. That is, the code recognition device 10 functions as an image acquisition unit that acquires the captured image 60 including the optical symbol 30. The code recognition apparatus 10 further decodes each cut-out optical symbol 30 to restore the identification information encoded in the optical symbol 30. That is, the code recognition device 10 also functions as an identification information acquisition unit that acquires identification information encoded in the optical symbol 30. Further, the code recognition device 10 acquires the position of each optical symbol 30 in the captured image 60 based on, for example, the coordinates of the pixel acquired during the cutting process of the optical symbol 30. That is, the code recognition device 10 also functions as a position acquisition unit that acquires the position of the optical symbol 30.

コード認識装置10は、各光学シンボル30をデコードして復元した各識別情報と、各光学シンボル30の位置を示す位置情報とをコード管理装置12に送信する。コード管理装置12は、コード認識装置10から送信された各識別情報と、各位置情報とを関連付けて管理する。ここで、撮像画像60の撮像範囲と、各物品50が配置される領域の座標とが予め関連付けられているものとする。   The code recognition device 10 transmits the identification information restored by decoding each optical symbol 30 and the position information indicating the position of each optical symbol 30 to the code management device 12. The code management device 12 manages each identification information transmitted from the code recognition device 10 in association with each position information. Here, it is assumed that the imaging range of the captured image 60 and the coordinates of the region where each article 50 is arranged are associated in advance.

搬送制御装置14は、例えば、外部から、特定の物品50の識別情報と、当該物品50を移動させる移動指示が入力される。搬送制御装置14は、入力された識別情報をコード管理装置12に送信し、当該識別装置に関連付けられた位置情報を、コード管理装置12に要求する。コード管理装置12は、この要求に応じて、管理される情報から識別情報に関連付けられた位置情報を取得して、搬送制御装置14に送信する。搬送制御装置14は、コード管理装置12から送信された位置情報に対応する搬送装置51の動作を制御して、当該搬送装置51を移動させる。   For example, the conveyance control device 14 receives, from the outside, identification information of a specific article 50 and a movement instruction for moving the article 50. The transport control device 14 transmits the input identification information to the code management device 12 and requests the code management device 12 for position information associated with the identification device. In response to this request, the code management device 12 acquires position information associated with the identification information from the managed information and transmits it to the transport control device 14. The transport control device 14 controls the operation of the transport device 51 corresponding to the position information transmitted from the code management device 12 and moves the transport device 51.

このように、第2の実施形態に係るコード管理システムおよび搬送システムは、各物品50に添付された表示媒体40に表示される各光学シンボル30をカメラ11により撮像して、各光学シンボル30にコード化された各識別情報を一括して取得および管理できる。そのため、各物品50の出庫管理などを容易に実行することが可能である。   As described above, the code management system and the transport system according to the second embodiment captures each optical symbol 30 displayed on the display medium 40 attached to each article 50 with the camera 11, and sets each optical symbol 30. Each encoded identification information can be acquired and managed collectively. Therefore, it is possible to easily execute the delivery management of each article 50.

なお、上述の実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。   The above-described embodiment is a preferred embodiment of the present invention, but is not limited thereto, and various modifications can be made without departing from the scope of the present invention.

10 コード認識装置
11 カメラ
12 コード管理装置
14 搬送制御装置
20 コード生成装置
21 プリンタ
30,30’ 光学シンボル
40 表示媒体
50 物品
51 搬送装置
60 撮像画像
70a,70b テンプレート
100 画像取得部
101 切出処理部
102 認識部
103 デコード部
104,204 テーブル記憶部
201 分解部
202 変換部
203 色割当部
300,300’ 主コード部
301,301’ 副コード部
302 開始セル
303 終了セル
1020 主コード認識部
1021 副コード認識部
1022 合成部
DESCRIPTION OF SYMBOLS 10 Code recognition apparatus 11 Camera 12 Code management apparatus 14 Conveyance control apparatus 20 Code generation apparatus 21 Printer 30, 30 'Optical symbol 40 Display medium 50 Article 51 Conveyance apparatus 60 Captured image 70a, 70b Template 100 Image acquisition part 101 Extraction process part 102 Recognition unit 103 Decoding unit 104, 204 Table storage unit 201 Decomposition unit 202 Conversion unit 203 Color allocation unit 300, 300 ′ Main code unit 301, 301 ′ Sub code unit 302 Start cell 303 End cell 1020 Main code recognition unit 1021 Sub code Recognition unit 1022 Compositing unit

特許第4404224号公報Japanese Patent No. 4404224

Claims (14)

複数の主コードセルが1次元に接続された第1のセル列を有する主コード部と、
複数の副コードセルが1次元に接続された第2のセル列を有する副コード部と、を含む光学シンボルであって、
前記第2のセル列は、前記複数の主コードセルのうち、前記第1のセル列の端部のセルを除く該複数の主コードセルの何れか1つのセルに接続される光学シンボル。
A main code portion having a first cell row in which a plurality of main code cells are connected in one dimension;
An optical symbol including a subcode portion having a second cell row in which a plurality of subcode cells are connected in one dimension,
The second cell column is an optical symbol connected to any one of the plurality of main code cells excluding a cell at an end of the first cell column among the plurality of main code cells.
前記副コード部は、前記第2のセル列を複数有する
請求項1記載の光学シンボル。
The optical symbol according to claim 1, wherein the sub-code portion includes a plurality of the second cell columns.
前記第2のセル列は、それぞれ異なる前記主コードセルに接続され、前記第2のセル列同士は所定以上の間隔を有する
請求項2記載の光学シンボル。
The optical symbol according to claim 2, wherein the second cell columns are connected to different main code cells, and the second cell columns have a predetermined interval or more.
前記主コードセルおよび前記副コードセルは、隣接して接続されるセルと異なる色が割り当てられる
請求項1乃至請求項3の何れか1項に記載の光学シンボル。
The optical symbol according to any one of claims 1 to 3, wherein the main code cell and the sub code cell are assigned different colors from the cells connected adjacently.
前記主コードセルおよび前記副コードセルは、
複数の色から選択された色がそれぞれ割り当てられる
請求項1乃至請求項4の何れか1項に記載の光学シンボル。
The main code cell and the sub code cell are:
The optical symbol according to any one of claims 1 to 4, wherein a color selected from a plurality of colors is assigned.
前記第1のセル列は、
2種類の色の前記主コードセルが交互に配置されることにより成り、該第1のセル列の一方の端部および他方の端部の前記主コードセルの色が互いに異なる
請求項1乃至請求項5の何れか1項に記載の光学シンボル。
The first cell column is:
The main code cells of two kinds of colors are alternately arranged, and the colors of the main code cells at one end and the other end of the first cell row are different from each other. 6. The optical symbol according to any one of items 5.
前記第2のセル列は、
予め定められたサイズであり、前記副コードセルは、属するセル列に含まれる副コードセルの総数に応じたサイズを有する
請求項1乃至請求項6の何れか1項に記載の光学シンボル。
The second cell column is:
The optical symbol according to any one of claims 1 to 6, wherein the optical code has a predetermined size, and the sub code cell has a size corresponding to a total number of sub code cells included in a cell column to which the sub code cell belongs.
前記第2のセル列は、
予め定められたサイズであり、予め定められた個数の前記副コードセルを含む
請求項1乃至請求項6の何れか1項に記載の光学シンボル。
The second cell column is:
The optical symbol according to claim 1, wherein the optical symbol has a predetermined size and includes a predetermined number of the sub code cells.
前記副コード部は、
隣接して接続される前記副コードセル間の色の遷移を用いて値が表現される
請求項1乃至請求項8の何れか1項に記載の光学シンボル。
The sub-code part is
The optical symbol according to any one of claims 1 to 8, wherein a value is expressed using a color transition between the sub-code cells connected adjacently.
前記主コード部は、
前記主コードセルに接続される前記副コードセルを含む前記副コード部に表現される前記値の位置を表現する
請求項9に記載の光学シンボル。
The main code portion is
The optical symbol according to claim 9, wherein a position of the value expressed in the sub code portion including the sub code cell connected to the main code cell is expressed.
前記主コードセル同士が接続される方向と、前記副コードセル同士が接続される方向が異なる
請求項1乃至請求項10の何れか1項に記載の光学シンボル。
The optical symbol according to claim 1, wherein a direction in which the main code cells are connected is different from a direction in which the sub code cells are connected.
請求項1乃至請求項11の何れか1項に記載の光学シンボルが表示された表示媒体。   A display medium on which the optical symbol according to any one of claims 1 to 11 is displayed. 請求項12に記載の表示媒体が外面に添付された物品。   An article having the display medium according to claim 12 attached to an outer surface. 請求項1乃至請求項11の何れか1項に記載の光学シンボルを生成する生成装置。   12. A generating device for generating an optical symbol according to claim 1.
JP2016091809A 2016-04-28 2016-04-28 Optical symbol, display medium, article and generating device Active JP6565786B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016091809A JP6565786B2 (en) 2016-04-28 2016-04-28 Optical symbol, display medium, article and generating device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016091809A JP6565786B2 (en) 2016-04-28 2016-04-28 Optical symbol, display medium, article and generating device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019142224A Division JP6881517B2 (en) 2019-08-01 2019-08-01 Optical symbols, display media, articles and generators

Publications (2)

Publication Number Publication Date
JP2017199306A JP2017199306A (en) 2017-11-02
JP6565786B2 true JP6565786B2 (en) 2019-08-28

Family

ID=60238020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016091809A Active JP6565786B2 (en) 2016-04-28 2016-04-28 Optical symbol, display medium, article and generating device

Country Status (1)

Country Link
JP (1) JP6565786B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7358756B2 (en) * 2018-07-30 2023-10-11 株式会社リコー Information processing system, progress management method and program
EP3605308A3 (en) 2018-07-30 2020-03-25 Ricoh Company, Ltd. Information processing system for slip creation
JP7205507B2 (en) * 2019-03-15 2023-01-17 株式会社リコー Information processing system
US10929073B2 (en) 2019-03-15 2021-02-23 Ricoh Company, Ltd. Information processing system
JP7435093B2 (en) 2020-03-17 2024-02-21 株式会社リコー Information processing systems, programs and information processing devices
US11567716B2 (en) 2020-03-17 2023-01-31 Ricoh Company, Ltd. Information processing system, information processing method, and information processing apparatus
JP2022145190A (en) 2021-03-19 2022-10-03 株式会社リコー Information processing system, position management method, information processing apparatus, and program
JP2022145287A (en) 2021-03-19 2022-10-03 株式会社リコー Information processing system, position management method, information processing apparatus, and program
JP2023140699A (en) 2022-03-23 2023-10-05 株式会社リコー Information processing system, information processing method, program, and information processing apparatus

Also Published As

Publication number Publication date
JP2017199306A (en) 2017-11-02

Similar Documents

Publication Publication Date Title
JP6565786B2 (en) Optical symbol, display medium, article and generating device
US8615138B2 (en) Image compression using sub-resolution images
US7349577B2 (en) Image processing method and image processing system
US7950589B2 (en) Program, information storage medium, two-dimensional code generation system, image generation system and printed material
JP4982486B2 (en) Method and system for combining position and information signs
CN101419673B (en) Image dictionary creating apparatus and method
US20120069408A1 (en) Document management system and method thereof
JP5808211B2 (en) Bar code symbol reading apparatus and bar code symbol reading method
JP6070568B2 (en) Feature coding apparatus, feature coding method, and program
JP6634952B2 (en) Recognition device, recognition method and recognition program, and management system and transport system
JP6881517B2 (en) Optical symbols, display media, articles and generators
JP2008299412A (en) Optical recognition code recognition result display method
JPH0215782A (en) Picture encoding system
JP2010102501A (en) Image processing device, image processing method, and program
JP7383882B2 (en) Information processing device and information processing program
JP7302175B2 (en) Information processing device and information processing program
US8786471B1 (en) Lossless data compression with variable width codes
US20210142133A1 (en) Reflection and inversion invariant codes
JP4008428B2 (en) Image compression method
JP6844574B2 (en) Image processing device and image processing method
JP7039918B2 (en) Segment management method
JP2008205994A (en) Image encoding apparatus, image decoding apparatus, and image processing system and program
US8611663B2 (en) Computer-readable medium storing an information image and apparatus and computer-readable medium for generating and detecting an information image with five pixel series
CN111209988A (en) Management method of big data sharing system based on recognizable color graphics
JP2023162011A (en) Program, method, and system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190617

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190715

R151 Written notification of patent or utility model registration

Ref document number: 6565786

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151