JP6393226B2 - スタック型バーコード読取装置およびスタック型バーコード読取方法 - Google Patents
スタック型バーコード読取装置およびスタック型バーコード読取方法 Download PDFInfo
- Publication number
- JP6393226B2 JP6393226B2 JP2015074073A JP2015074073A JP6393226B2 JP 6393226 B2 JP6393226 B2 JP 6393226B2 JP 2015074073 A JP2015074073 A JP 2015074073A JP 2015074073 A JP2015074073 A JP 2015074073A JP 6393226 B2 JP6393226 B2 JP 6393226B2
- Authority
- JP
- Japan
- Prior art keywords
- sequence
- cluster value
- barcode
- unit
- stack
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Printers Characterized By Their Purpose (AREA)
Description
なお、図1において、符号Dは記録媒体20の搬送方向を示している。また、説明を簡単にするために、本実施形態では、搬送方向DはX軸方向としている。また、搬送方向Dに直交する方向をY軸方向としている。
本実施形態の構造解析部132は、カラム解析部1321およびロウ解析部1322を有する。
カラム解析部1321は、スタック型バーコード21のカラム構造を解析して各カラムの境界位置を特定する。
ロウ解析部1322は、スタック型バーコード21のロウ構造を解析して各ロウの境界位置を特定する。
構造解析部132は、カラム解析部1321の解析結果およびロウ解析部1322の解析結果を復号部133に供給する。
次に行われる高レベル復号処理は、929個のコードで示される中間情報に変換された後、所定ルールに基づいて最終言語にデコード(復号)される処理である。この最終言語としては、PDF417では、ASCII文字やバイナリ表現、その他のキャラクタ等がある。
低レベル復号部1331は、構造解析部132の解析結果に基づいてコードワードごとにその走査反射率特性(波形)よりバーおよびスペースパターンを生成し、そのパターンからコードワードを特定して、コードワードマトリクスを、高レベル復号部1332に出力する。なお、走査反射率特性(波形)は、たとえば、特開2014−191755号公報に説明されているので、ここでの説明は省略する。
低レベル復号部1331は、変換されたバーおよびスペースのTシーケンスから計算されるクラスタ値CTを、ロウ番号から決まる理論クラスタ値CRと比較するクラスタ比較機能を有する。
低レベル復号部1331は、さらにクラスタ値CTとCRに差異がある場合はその差異の程度に応じてその差異がゼロとなるようにバーおよびスペースシーケンスを修正する線幅(エレメント幅)修正機能を有している。
図2に示す低レベル復号部1331において、上記変換機能は、Xシーケンス計測部13311およびTシーケンス計測部13312により実現され、クラスタ比較機能および線幅(エレメント幅)修正機能は、Tシーケンス修正部13314により実現される。
具体的には、Xシーケンス計測部13311は、スタック型バーコード21の各ロウの走査反射特性について、カラム解析部1321で決定されたカラム境界を両端とするセグメント(すなわち部分走査反射特性)を取り出し、このセグメントについてバー(黒色で示す)とスペース(白色で示す)からなる線幅(エレメント幅)の配列によって形成されるXシーケンスと呼ばれる数値列を求める。
ここでいう正規化とは、画素数によって表現されている線幅(エレメント幅)データをモジュール数表現に変換する処理のことをいう。PDF417ではモジュールは1〜6の値をとる。1モジュールはバーまたはスペースの最小幅に対応する。1カラムは17モジュールによって構成される。
具体的には、Tシーケンス計測部13312は、Xシーケンスの隣接する2つのエレメントを1つずつシフトさせながら足し合わせてTシーケンスと呼ばれる数値列を求める。
コードワード取得部13313は、テーブルメモリ133131を有しており、テーブルメモリ133131には、Tシーケンスとコードワードとの対応関係を示すコードワード変換(参照)テーブルが格納されている。
コードワード取得部13313は、テーブルメモリ133131にあらかじめ用意しておいたコードワード変換(参照)テーブルを参照して各Tシーケンスに対応するコードワードを決定する。
また、本実施形態によれば、コードワード取得部13313は、Tシーケンス修正部13314で修正されたTシーケンスに対応するコードワードを参照し、該当するコードワードを取得する。
また、Tシーケンス修正部13314は、Tシーケンスから得られるクラスタ値CTが理論クラスタ値CRに一致するように、Tシーケンスを修正する。
また、Tシーケンス修正部13314は、異なる数値列となるように修正した複数のTシーケンスからコードワード参照を行う少なくとも一つの有効なTシーケンスを取得する。
また、Tシーケンス修正部13314は、Tシーケンスから得られるクラスタ値CTと理論クラスタ値CRとの差異が±1のときにTシーケンスの修正を行う。
このTシーケンス修正部13314は、比較部133141および修正部133142を有する。
「事前に把握できる誤り」とは、バーおよびスペース判定の結果得られるXシーケンスまたはTシーケンスに対して、Tシーケンスから計算されるクラスタ値CTに対するコードワードテーブル内を検索したとき、該当するコードワードが存在しないことから顕在化する誤りを指し、PDF417規格では「erasure」と呼ばれる。これは、スタック型バーコードの擦れや、印刷不良により、バーおよびスペースパターンが損傷を受けた場合に生じることが多い。
いま、あるスタック型バーコードを読み取って、1または複数の誤り(Erasure)を含む結果が得られたとする。
上述したように、クラスタ値CTはPDF417規格に基づいて、Tシーケンスから計算されるクラスタ値である。一方、理論クラスタ値CRはコードワードのロウ番号から決定されるクラスタ値である。
CT=(T[0]−T[1]+T[4]−T[5]+9)mod 9
理論上、クラスタ値CTと理論クラスタ値CRは一致する。しかしクラスタ値CTが「0」,「3」,「6」以外の値の場合、コードワード参照を行うことができなくなるため、この時点で「Erasure」エラーが確定する。
しかし、クラスタ値CTと理論クラスタ値CRの差異が小さければ、クラスタ値CTが理論クラスタ値CRに一致するように、Tシーケンスの線幅(エレメント幅)の要素T[0:5]を調整することにより、コードワード参照を実行できるようにすることができる。
上述したように、本実施形態では、クラスタ値CTと理論クラスタ値CRの差異(コードワード差)が±1である場合にTシーケンスに修正(補正)をかけるようにしている。
高レベル復号部1332の復号結果はたとえば表示部14に表示される。
図4は、スタック型バーコード21であるPDF417のラベル構造の画像データの一例を示す図である。なお、このスタック型バーコードPDF417は、ISO/IEC15438として国際規格化されている。
すなわち、図4に示すように、スタック型バーコード21は、5カラムに分かれており、中央にデータカラム211が配置され、また、データカラム211の左右にはレフトロウインジケータ212、ライトロウインジケータ213、さらに、その左右にはスタートパターン214、ストップパターン215が配置されている。
たとえば、スタック型バーコード21のデータカラム211には、1個(データカラム1カラム分)×6行より6個のコードワードが構成されている。
次に、本実施形態に係るスタック型バーコードであるPDF417の読取方法について説明する。
そして、得られたスタック型バーコード21の画像データは、画像メモリ12に記憶される。画像メモリ12は二次元的に配列された有限個の画素で構成されている。
本実施形態では、撮像されたスタック型バーコード21の画像データは、各画素の(画素値である)輝度値を数値で表したものである。この輝度値は、たとえば0〜255までの整数値として表される。
より具体的には、データ処理部13の構造解析部132は、ステップST2において切出された画像データに基づき、スタック型バーコード21の構造を解析する。構造解析部13においては、カラム解析(ステップST3)およびロウ解析(ステップST4)が行われる。
より具体的には、データ処理部13の復号部133は、ステップST3、ST4において解析されたスタック型バーコード21の構造に基づき、スタック型バーコード21の復号処理を行う。
次に行われる高レベル復号処理では、929個のコードで示される中間情報に変換された後、所定ルールに基づいて最終言語にデコード(復号)される。
図5のステップST3、ST4の構造解析処理について説明する。
図6は、図5に示すフローチャートにおける構造解析処理(ステップST3、ST4)の流れを示すフローチャートである。
具体的には、スタック型バーコード21の画像データに基づいて、X軸方向(水平方向)に配列された画素ごとに、各Y軸方向(垂直方向)に配列された全画素の輝度値の総和を演算し、画像メモリ12に格納する処理である。
一方、ステップST23において、スタートパターン214およびストップパターン215が適切に検出されていないと判定された場合には、デコード不可、すなわち、復号できないとして処理を終了する(ステップST24)。
ピークと判断された場合には、ピーク値をもつ画素の位置を画像メモリ12に記憶させる。
より具体的には、ステップST25において記憶されたピーク値をもつ画素の位置に基づき、スタートパターン214、レフトロウインジケータ212、データカラム211、ライトロウインジケータ213、ストップパターン215の5つのカラムの境界を検出する。
そして、ロウの境界の検出によって、画像データの各ラインLがどのロウに属するかを判定し、デコード(復号)可能として処理を終了する(ステップST28)。
次に、図5のステップST5の低レベル復号処理について説明する。
図7は、図5に示すフローチャートにおける低レベル復号処理(ステップST5)の流れを示すフローチャートである。
次に行われる高レベル復号処理は、929個のコードで示される中間情報に変換された後、所定ルールに基づいて最終言語にデコード(復号)される処理である。この最終言語としては、PDF417では、ASCII文字やバイナリ表現、その他のキャラクタ等がある。
Xシーケンス計測処理においては、各ロウにおいて、ロウに含まれる複数のラインLを平均化したライン波形を走査して、バーの線幅およびスペースの線幅を求める線幅計測を行った後に、画素数によって表現されている線幅をモジュール数表現に変換して、Xシーケンスを得る。
なお、走査線は、たとえば、各ロウにおいて、ロウ方向のほぼ真中に形成された複数のラインLであり、すなわち、複数行で構成された画素の行列である。さらに、複数のラインLを構成する画素の輝度値の平均を計算し、平均した画素の輝度値を用いて、そのロウにおける画素の輝度値を示す走査反射率波形として復号処理に用いる。
Xシーケンス計測処理の次に、Tシーケンス計測処理を行う(図7のステップST32)。
たとえば、XシーケンスX[0:7]=[2,1,1,1,1,3,2,6]がTシーケンスT[0:5]=[3,2,2,2,4,5]の線幅配列に変換される。
次に、コードワード取得処理を行う(図7のステップST33)。
具体的には、テーブルメモリ133131に予め用意しておいたコードワード変換テーブルを参照して各Tシーケンスに対応するコードワードを取得(決定)する。
すなわち、低レベル復号処理が行われ、1つのカラムを構成する4個のバーの線幅と4個のスペースの線幅でなるコードワードが0〜928の番号が付けられた、929個のコードで示される中間情報に変換される。
本実施形態では、コードワード取得処理(ステップST33)を行った後、直ちに高レベル復号処理に移行せずに、Tシーケンス修正処理を行う(ステップST34)。
より具体的には、Tシーケンスから算出したクラスタ値CTと理論クラスタ値CRとを比較し、その差異が生じた場合に、理論クラスタ値CRと、Tシーケンスとコードワードとの変換テーブルを用いてTシーケンスを修正する。
「事前に把握できる誤り」とは、バーおよびスペース判定の結果得られるXシーケンスまたはTシーケンスに対して、Tシーケンスから計算されるクラスタ値CTに対するコードワードテーブル内を検索したとき、該当するコードワードが存在しないことから顕在化する誤りを指し、PDF417規格では「erasure」と呼ばれる。これは、スタック型バーコードの擦れや、印刷不良により、バーおよびスペースパターンが損傷を受けた場合に生じることが多い。
図8は、本実施形態においてスタック型バーコードとしてのPDF417を読み取って得られた結果の一例を示す図である。
また、以下に示す図8の説明において、Tシーケンス修正が可能であるが修正が正しくない場合のTシーケンス(TSEQ)修正の結果は「NG」で表し、Tシーケンス修正が正しい場合のTシーケンス修正の結果は「OK」で表し、クラスタ値CTと理論クラスタ値CRとの差が±1より大きい場合はTシーケンス修正をしないことを「−」で表している。
CT=(T[0]−T[1]+T[4]−T[5]+9)mod 9
理論上、クラスタ値CTと理論クラスタ値CRは一致する。しかし、クラスタ値CTが「0」,「3」,「6」以外の値の場合、コードワード参照を行うことができなくなるため、この時点でErasureエラーが確定する。
しかし、クラスタ値CTと理論クラスタ値CRの差異が小さければ、クラスタ値CTが理論クラスタ値CRに一致するように、Tシーケンスの線幅(エレメント幅)T[0:5]を調整することにより、コードワード参照を実行できるようにすることができる。
上述したように、本実施形態では、クラスタ値CTと理論クラスタ値CRの差異(コードワード差)が±1である場合にTシーケンスに修正(補正)をかけるようにしている。
結果#1では、Tシーケンスは「233223」、クラスタ値CTが「7」、ロウ番号ROW#は「3」、カラム番号COL#は「11」、理論クラスタ値CRは「6」、クラスタ値CTと理論クラスタ値CRとの差異は「1」でTシーケンス(TSEQ)修正可能であり、これによりTシーケンス(TSEQ)修正の可否は「する(可)」であり、Tシーケンス(TSEQ)修正候補は「243223」と「233224」であるが、Tシーケンス(TSEQ)修正結果は「NG」であり、以上から最終結果は修正不調番号「999」が提示されている。
図9および図10は、本実施形態に係るTシーケンス修正の具体的な処理フローを示すフローチャートである。
ここで、本実施形態に係るTシーケンス修正部13314におけるTシーケンス修正の具体的な処理フローについて図9および図10に関連付けて説明する。
ステップST61において、クラスタ値CTと理論クラスタ値CRが等しいと判定されると、Tシーケンス修正は不要として通常の処理が行われる(ステップST62)。
ステップST63において、クラスタ値CTが理論クラスタ値CRより大きいと判定された場合にはステップST64の処理に移行し、大きくない(小さい)と判定された場合には図10のステップST83の処理に移行する。
クラスタ値CTが理論クラスタ値CRより小さい場合は、Tシーケンスの最上位(第1位)T[0]の値をプラス1(+1)し、Tシーケンスの最上位側から第2位T[1]の値をマイナス1(−1)し、Tシーケンスの最上位側から第5位T[4]の値をプラス1(+1)し、Tシーケンスの最上位側から第6位T[5]の値をマイナス1(−1)して、候補となる修正TシーケンスTlを生成する処理を行う。
すなわち、本実施形態では、クラスタ値CTが理論クラスタ値CRより大きいか否かで、クラスタ値CTの各要素にプラス1するかマイナス1するかを切り替えて、幅広く候補となる修正TシーケンスTlを生成するようにしている。
ここで、Xシーケンスを生成して候補条件に採用しているのは、基本的に、Xシーケンスからシフト演算によりTシーケンスが求められることから、条件を満たすXシーケンスが存在するということは、修正Tシーケンス自体も実存するものに即している可能性が高いとみなすことが可能となるからである。
ステップST66において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST67)。ステップST67の処理後またはステップST66において条件を満たさないと判定された場合にはステップST68の処理に移行する。
ステップST70において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST71)。ステップST71の処理後またはステップST70において条件を満たさないと判定された場合にはステップST72の処理に移行する。
ステップST74において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST75)。ステップST75の処理後またはステップST74において条件を満たさないと判定された場合にはステップST76の処理に移行する。
ステップST78において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST79)。ステップST79の処理後またはステップST78において、条件を満たさないと判定された場合にはステップST80の処理に移行する。
ステップST80においては、候補Tシーケンスバッファに追加した修正TシーケンスTlに有効Tシーケンスが最低1個存在するか否かが判定される。
ステップST80において有効Tシーケンスが存在すると判定された場合にはTシーケンス修正の結果が真(正しい、OK)であると判定される(ステップST81)。一方、有効Tシーケンスが存在しないと判定された場合にはTシーケンス修正の結果が偽(正しくない、NG)であると判定される(ステップST82)。
ここで生成される修正TシーケンスTlは、図8の例を参照すると、結果#5のTシーケンス「345566」の最上位(第1位)T[0]の値をプラス1(+1)して候補Tシーケンスとして「445566」が生成される。
そして、生成したXシーケンスXseqが条件を満たす最低1個のXシーケンスとして存在するか否かが判定される(ステップST85)。
ステップST85において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST86)。ステップST86の処理後またはステップST85において条件を満たさないと判定された場合にはステップST87の処理に移行する。
ここで生成される修正TシーケンスTlは、図8の例を参照すると、結果#5のTシーケンス「345566」の第2位T[1]の値をマイナス1(−1)して候補Tシーケンスとして「335566」が生成される。
そして、生成したXシーケンスXseqが条件を満たす最低1個のXシーケンスとして存在するか否かが判定される(ステップST89)。
ステップST89において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST90)。ステップST90の処理後またはステップST89において条件を満たさないと判定された場合にはステップST91の処理に移行する。
ここで生成される修正TシーケンスTlは、図8の例を参照すると、結果#5のTシーケンス「345566」の第5位T[4]の値をプラス1(+1)して候補Tシーケンスとして「345576」が生成される。
そして、生成したXシーケンスXseqが条件を満たす最低1個のXシーケンスとして存在するか否かが判定される(ステップST93)。
ステップST93において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST94)。ステップST94の処理後またはステップST93において条件を満たさないと判定された場合にはステップST95の処理に移行する。
ここで生成される修正TシーケンスTlは、図8の例を参照すると、結果#5のTシーケンス「345566」の第6位T[5]の値をマイナス1(−1)して候補Tシーケンスとして「345565」が生成される。
そして、生成したXシーケンスXseqが条件を満たす最低1個のXシーケンスとして存在するか否かが判定される(ステップST97)。
ステップST97において、条件を満たすと判定された場合には、修正TシーケンスTlを候補Tシーケンスバッファに追加(格納)する(ステップST98)。ステップST98の処理後またはステップST97において、条件を満たさないと判定された場合にはステップST99の処理に移行する。
ステップST99においては、候補Tシーケンスバッファに追加した修正TシーケンスTlに有効Tシーケンスが最低1個存在するか否かが判定される。
ステップST99において、有効Tシーケンスが存在すると判定された場合にはTシーケンス修正の結果が真(正しい、OK)であると判定される(ステップST100)。一方、有効Tシーケンスが存在しないと判定された場合にはTシーケンス修正の結果が偽(正しくない、NG)であると判定される(ステップST101)。
以上説明したように、本実施形態に係るスタック型バーコード読取装置10によれば、復号部133の低レベル復号部1331は、画像データを形成する複数の画素値に基づき、スタック型バーコード(PDF417)のバーおよびスペースの線幅を計測する線幅計測部としてのXシーケンス計測部13311と、Xシーケンス計測部によって計測されたスタック型バーコード(PDF417)のバーおよびスペースの線幅から数値列であるTシーケンスを計測するTシーケンス計測部13312と、Tシーケンス計測部13312によって計測されたTシーケンスまたは修正されたTシーケンスに対応するコードワードを取得するコードワード取得部13313と、Tシーケンス計測部によるTシーケンスから得られるクラスタ値CTと理論クラスタ値CRとを比較し、両クラスタ値に差異が生じた場合に、理論クラスタ値CRと、Tシーケンスとコードワードとの変換テーブルを用いてTシーケンスを修正するTシーケンス修正部13314と、を有する。
低レベル復号部1331は、変換されたバーおよびスペースのTシーケンスから計算されるクラスタ値CTを、ロウ番号から決まる理論クラスタ値CRと比較するクラスタ比較機能を有する。
低レベル復号部1331は、さらにクラスタ値CTと理論クラスタ値CRに差異がある場合はその差異の程度に応じてその差異がゼロとなるようにTシーケンスを修正する線幅(エレメント幅)修正機能を有している。
本実施形態においては、たとえば事前に検出可能な誤りの発生を抑止することができ、誤り訂正処理の処理負荷を軽減することが可能である。そして、エラー数が誤り訂正限界を超える場合であっても、スタック型バーコード(PDF417)の復号を行うことが可能となる。
このように、本実施形態においては、Tシーケンスから得られるクラスタ値CTが理論クラスタ値CRに一致するように、Tシーケンスを修正することにより、誤りがあった場合にもコードワード参照を実行できるようにすることができる。
このように、本実施形態においては、異なる数値列となるように修正した複数のTシーケンスからコードワード参照を行う少なくとも一つの有効なTシーケンスを取得することにより、たとえば事前に把握できる誤りを可能な限り削減することが可能となる。
このように、本実施形態においては、Tシーケンスから得られるクラスタ値CRと理論クラスタ値CRとの差異が±1のときにTシーケンスの修正を行うことにより、修正の候補の数を適正化でき、処理時間の増大を抑止することが可能となる。
このように、本実施形態においては、Tシーケンス修正部13314で修正されたTシーケンスに対応するコードワードを参照し、該当するコードワードを取得することにより、たとえば事前に把握できる誤りを可能な限り削減することが可能となる。
上述した実施形態では、位置検出処理部131のシンボル切出し部1312の出力側に構造解析部132を配置したが、シンボル切出し部1312の出力と構造解析部132の入力との間に、切り出したバーコード21の傾斜角を検出して傾斜角を補正し、補正後のバーコード21の画像データを構造解析部132に供給する傾き補正部を設けても良い。この傾き補正部は、たとえば特開2014−191755号に開示されているものである。
撮像素子111によって読み取られたスタック型バーコードの画像データは、傾く場合がある。換言すれば、ロウ方向DRと画像メモリ12に格納された画像データの垂直方向が一致していない場合がある。
そのため、スタック型バーコード21の読み取り処理において、傾き補正を行うように構成しても良い。
上述した実施形態では、クラスタ値CTと理論クラスタ値CRの差異(コードワード差)が±1である場合にTシーケンスに修正(補正)をかけるようにしているが、差が±1より大きい場合についても、同様の修正を行うことは可能である。この場合、修正の候補の数が多くなって処理時間を増大させることもあるため、製品コストに応じた構成をとるようにすればよい。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー(登録商標)ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
Claims (4)
- 情報がコード化されてバーおよびスペースで表示されたスタック型バーコードを撮像する撮像部と、
前記撮像部が撮像した前記スタック型バーコードの画像データを記憶する画像メモリと、
前記画像データに基づき、前記スタック型バーコードで表示されたコード化情報を復号する復号部を有するデータ処理部と、を備え、
前記復号部は、
前記画像データを形成する複数の画素値に基づき、前記スタック型バーコードのバーおよびスペースの線幅を計測する線幅計測手段と、
前記線幅計測手段によって計測された前記スタック型バーコードのバーおよびスペースの線幅から数値列であるTシーケンスを計測するTシーケンス計測手段と、
少なくとも前記Tシーケンス計測手段によって計測されたTシーケンスに対応するコードワードを取得するコードワード取得手段と、
前記Tシーケンス計測手段によるTシーケンスから得られるクラスタ値と理論クラスタ値とを比較し、両クラスタ値に差異が生じた場合に、理論クラスタ値と、Tシーケンスと前記コードワードとの変換テーブルを用いてTシーケンスを修正するTシーケンス修正手段と、を有することを特徴とするスタック型バーコード読取装置。 - 前記Tシーケンス修正手段は、
前記Tシーケンスから得られるクラスタ値が前記理論クラスタ値に一致するように、Tシーケンスを修正することを特徴とする請求項1に記載のスタック型バーコード読取装置。 - 情報がコード化されてバーおよびスペースで表示されたスタック型バーコードを撮像する撮像部と、
前記撮像部が撮像した前記スタック型バーコードの画像データを記憶する画像メモリと、
前記画像データに基づき、前記スタック型バーコードで表示されたコード化情報を復号する復号部を有するデータ処理部と、を備えたスタック型バーコード読取装置で使用されるスタック型バーコード読取方法であって、
前記復号部において、
前記画像データを形成する複数の画素値に基づき、前記スタック型バーコードのバーおよびスペースの線幅を計測する第1ステップと、
前記第1ステップによって計測された前記スタック型バーコードのバーおよびスペースの線幅から数値列であるTシーケンスを計測する第2ステップと、
少なくとも前記第2ステップによって計測されたTシーケンスに対応するコードワードを取得する第3ステップと、
前記第2ステップによるTシーケンスから得られるクラスタ値と理論クラスタ値とを比較し、両クラスタ値に差異が生じた場合に、理論クラスタ値と、Tシーケンスと前記コードワードとの変換テーブルを用いてTシーケンスを修正する第4ステップと、を有することを特徴とするスタック型バーコード読取方法。 - 前記第4ステップにおいては、
前記Tシーケンスから得られるクラスタ値が前記理論クラスタ値に一致するように、Tシーケンスを修正することを特徴とする請求項3に記載のスタック型バーコード読取方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015074073A JP6393226B2 (ja) | 2015-03-31 | 2015-03-31 | スタック型バーコード読取装置およびスタック型バーコード読取方法 |
US15/084,742 US9495574B2 (en) | 2015-03-31 | 2016-03-30 | Stack barcode reader and stack barcode reading method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015074073A JP6393226B2 (ja) | 2015-03-31 | 2015-03-31 | スタック型バーコード読取装置およびスタック型バーコード読取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016194791A JP2016194791A (ja) | 2016-11-17 |
JP6393226B2 true JP6393226B2 (ja) | 2018-09-19 |
Family
ID=57015386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015074073A Expired - Fee Related JP6393226B2 (ja) | 2015-03-31 | 2015-03-31 | スタック型バーコード読取装置およびスタック型バーコード読取方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9495574B2 (ja) |
JP (1) | JP6393226B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112241641B (zh) * | 2019-07-19 | 2022-07-05 | 杭州海康威视数字技术股份有限公司 | 对条形码的解码方法、终端设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5489158A (en) * | 1990-01-05 | 1996-02-06 | Symbol Technologies, Inc. | Printer system for removable machine readable code |
US6672511B1 (en) * | 1996-06-03 | 2004-01-06 | Symbol Technologies, Inc. | Omnidirectional reading of two-dimensional symbols |
ATE321310T1 (de) * | 2000-04-06 | 2006-04-15 | Seiko Epson Corp | Verfahren und vorrichtung zum lesen von einem zwei-dimensionalen strichkode und datenspeichermedium |
JP6095194B2 (ja) * | 2013-03-28 | 2017-03-15 | 日本電産サンキョー株式会社 | スタック型バーコード読取装置及びスタック型バーコード読取方法 |
-
2015
- 2015-03-31 JP JP2015074073A patent/JP6393226B2/ja not_active Expired - Fee Related
-
2016
- 2016-03-30 US US15/084,742 patent/US9495574B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20160292482A1 (en) | 2016-10-06 |
JP2016194791A (ja) | 2016-11-17 |
US9495574B2 (en) | 2016-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4911340B2 (ja) | 二次元コード検出システムおよび二次元コード検出プログラム | |
US7380718B2 (en) | Method for reading out symbol information and device for reading out symbol information | |
JP3725879B2 (ja) | 多解像度機械の読み取り可能な記号 | |
EP0999519B1 (en) | Distortion correction method in optical code reading | |
US7949187B2 (en) | Character string recognition method and device | |
EP0561334A2 (en) | Method and apparatus for decoding two-dimensional bar code using CCD/CMD camera | |
JPH05324887A (ja) | シンボル情報読取装置 | |
WO2007075719A2 (en) | Method and system for creating and using barcodes | |
US8333326B2 (en) | Stacked barcode reader and stacked barcode reading method | |
US9070033B2 (en) | Stack barcode reader and stack barcode reading method | |
CN109657515B (zh) | 一种一维条形码的解码方法及设备 | |
JP5676183B2 (ja) | バーコード読取装置およびバーコード読取方法 | |
JP5379626B2 (ja) | スタック型バーコード情報読取方法及びスタック型バーコード情報読取装置 | |
JP6393226B2 (ja) | スタック型バーコード読取装置およびスタック型バーコード読取方法 | |
JP4652201B2 (ja) | バーコードシンボル情報読取方法及びバーコードシンボル情報読取装置 | |
US8403221B2 (en) | Method and apparatus for reading barcode information | |
JP5683891B2 (ja) | スタック型バーコード読取装置およびスタック型バーコード読取方法 | |
JP5657987B2 (ja) | スタック型バーコード読取装置およびスタック型バーコード読取方法 | |
JP4403063B2 (ja) | シンボル情報読取方法及びシンボル情報読取装置 | |
JP5453594B2 (ja) | シンボル情報読取装置及びシンボル情報読取方法 | |
JP3730716B2 (ja) | バーコード読取装置 | |
JP2000194793A (ja) | スタック型2次元バ―コ―ドのデ―タ読み取り装置及びスタック型2次元バ―コ―ドのデ―タ読み取り方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20171121 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180207 |
|
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: 20180814 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180824 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6393226 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |