JP5515012B2 - バーコード情報読取方法及びバーコード情報読取装置 - Google Patents

バーコード情報読取方法及びバーコード情報読取装置 Download PDF

Info

Publication number
JP5515012B2
JP5515012B2 JP2010056823A JP2010056823A JP5515012B2 JP 5515012 B2 JP5515012 B2 JP 5515012B2 JP 2010056823 A JP2010056823 A JP 2010056823A JP 2010056823 A JP2010056823 A JP 2010056823A JP 5515012 B2 JP5515012 B2 JP 5515012B2
Authority
JP
Japan
Prior art keywords
width
bit pattern
character
thick
barcode information
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
JP2010056823A
Other languages
English (en)
Other versions
JP2011191957A (ja
Inventor
宏 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nidec Instruments Corp
Original Assignee
Nidec Sankyo Corp
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 Nidec Sankyo Corp filed Critical Nidec Sankyo Corp
Priority to JP2010056823A priority Critical patent/JP5515012B2/ja
Priority to US13/044,903 priority patent/US8403221B2/en
Publication of JP2011191957A publication Critical patent/JP2011191957A/ja
Application granted granted Critical
Publication of JP5515012B2 publication Critical patent/JP5515012B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1452Methods for optical code recognition including a method step for retrieval of the optical code detecting bar code edges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1465Methods for optical code recognition the method including quality enhancement steps using several successive scans of the optical code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1473Methods for optical code recognition the method including quality enhancement steps error correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1486Setting the threshold-width for bar codes to be decoded

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (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)
  • Quality & Reliability (AREA)
  • Character Input (AREA)

Description

本発明は、バーコード情報を光学的に読み取るバーコード情報読取装置及びバーコード情報読取方法に関する。
従来より、バーコード情報は、物体に固有の識別情報を付与して、これを自動認識するための手段として幅広く使われている。例えば、商品などに添付されたバーコード情報は、レーザスキャナやCCDカメラなどのバーコード情報読取装置により、通常は多値情報として読み取られ、所定の2値化しきい値によって多値情報を2値化してから復号するのが一般的である。
例えば、バーコード情報は、エレメント幅が太いか細いかの2つのパターンを持つ、白エレメント(スペース)及び黒エレメント(バー)の2種類のエレメント群より構成された2値レベルコードである。
一般に、このようなバーコード情報は、バーコード情報読取装置によって、1つのキャラクタを構成する黒エレメント及び白エレメント毎に、各エレメント幅を計測し、計測結果から算出される幅しきい値に基づいて、各エレメント幅を比較することによって、それぞれの幅が太いか細いかを判断し、その「太」/「細」の並びで構成される2進数のビットパターンを解析することにより、キャラクタを判読することで、バーコード情報の復号が行なわれている。
しかしながら、上記した各エレメント幅は、バーコード情報の印刷状態やバーコード情報読取装置の証明ムラになどによって変動し、各エレメント幅の計測が正確に行えず、本来のキャラクタとは異なるキャラクタに復号して誤読となってしまう場合がある。このため、バーコード情報読取装置は、さらに読取精度を改良する試みがなされ、誤読を低減する手段が、例えば、特許文献1に開示されている。
特許文献1に開示されたバーコード情報読取装置は、最もノイズを受けて誤差が大きいと思われる最大及び最小のデータは用いず、2番目にエレメント幅が太いデータ及び2番目にエレメント幅が細いデータを用いて2値化しきい値を算出し、この2値化しきい値を用いて、黒エレメント(バー)や白エレメント(スペース)の太りや細りの影響を排除するものである。
特開平5−101214号公報
しかしながら、特許文献1に開示されたバーコード情報読取装置では、黒エレメント(バー)や白エレメント(スペース)の印刷条件に起因する太りや細りの影響を緩和することはできるが、バーコード情報を読み取る際、読取速度が変動して発生する読み取り信号のジッタ(時間方向の変動)、または、読み取り対象のバーコード情報と下地とのコントラストの差が少ないものや下地の濃度が徐々に変化するものによる読み取られたデータのレベルの変動により、黒エレメントと白エレメントが微小に変動して生じる誤読に対しては、あまり有効でないという問題がある。
本発明は、このような点に鑑みてなされたものであり、その目的は、バーコード情報の読み取り時の環境条件の影響に左右されずに、バーコード情報を、正しく読み取ることが可能なバーコード情報読取方法及びバーコード情報読取装置を提供することにある。
以上のような課題を解決するために、本発明は、従来方法では読取不能となっていたバーコード情報を、キャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定し、この再判定された結果に基づいて、前記幅配列をビットパターンに再変換するとともに、再変換されたビットパターンに該当するキャラクタを判定することを特徴とする。
より具体的には、本発明は、以下のものを提供する。
(1) 媒体上に記録されたバーコード情報を読取手段により読み取り、所定の2値化しきい値で2値化情報に変換する第1ステップと、前記2値化情報に基づいて、バーコード情報を構成する複数の黒エレメントと白エレメントのエレメント幅を順次測定するとともに、各エレメント幅を測定した順番に並べた幅配列を生成する第2ステップと、所定の規則に基づいて各エレメント幅の「細」または「太」を判定し、この判定された結果に基づいて、前記幅配列をビットパターンに変換する第3ステップと、前記ビットパターンに該当するキャラクタを判定する第4ステップと、を含み、前記第4ステップにおいて、前記ビットパターンに該当するキャラクタが存在しない場合に、キャラクタを構成する「太」の個数に基づいて第2幅しきい値を求めて各エレメント幅の「細」または「太」を再判定し、この再判定された結果に基づいて、前記幅配列をビットパターンに再変換する第5ステップと、再変換されたビットパターンに該当するキャラクタを判定する第6ステップと、を有することを特徴とするバーコード情報読取方法。
本発明によれば、第1ステップで読取手段により読み取ったバーコード情報を所定の2値化しきい値で2値化情報に変換し、第2ステップで2値化情報に基づいてバーコード情報を構成する複数の黒および白エレメントのエレメント幅を順次測定し、第3ステップで所定の規則に基づいて各エレメント幅の「細」または「太」を判定して幅配列をビットパターンに変換し、第4ステップでビットパターンに該当するキャラクタを判定し、ビットパターンに該当するキャラクタが存在しない場合に、第5ステップでキャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定して幅配列をビットパターンに再変換し、第6ステップで再変換されたビットパターンに該当するキャラクタを判定することから、所定の規則に基づく従来方法では読取不能であったキャラクタであっても、キャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定することにより、バーコード情報を正しく読み取ることができる。
従って、バーコード情報の読み取り時の環境条件の影響に左右されずに、バーコード情報を、正しく読み取ることが可能である。
ここで、第3ステップの所定の規則とは、例えば、「太」と「細」の幅の比率から決められている第1幅しきい値など従来から用いられているものであり、第5ステップのキャラクタ構成上の特徴とは、例えば、キャラクタを構成するエレメントの個数、エレメント幅が「太」の個数及び「太」における黒白の割合などが挙げられる。
(2) 前記第5ステップは、再判定した「太」の構成を、黒エレメントと白エレメントの規定の組合せと比較し、一致するか否かを判定することを特徴とするバーコード情報読取方法。
本発明によれば、前記第5ステップは、キャラクタを構成する「太」の個数に基づいて第2幅しきい値を求めて各エレメント幅の「細」または「太」を再判定し、再判定した「太」の構成を、黒エレメントと白エレメントの規定の組合せと比較し、一致するか否かを判定することから、キャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定することができるとともに、黒エレメントと白エレメントの組合せを比較することにより、簡単かつ迅速に読取結果の成否を判断することができる。
(3) 前記キャラクタは、CODE39に基づいて構成されていることを特徴とするバーコード情報読取方法。
本発明によれば、CODE39において、キャラクタのエレメント幅配列が、1)「太」の数は3であり、2)「太」の構成は2種類のみ(「黒エレメント2個、白エレメント1個」および「黒エレメント0個、白エレメント3個」)であるという規則性を利用して復号を行うことができる。
(4) 前記第3ステップは、エレメント幅Tが、キャラクタの全長幅Sに対して、T≧S/8 であるエレメント幅を「太」と判定することを特徴とするバーコード情報読取方法。
本発明によれば、初めに、所定の規則(T≧S/8)に基づいて各エレメント幅の「細」または「太」を判定することから、誤読を低減することができる。ここで、CODE39の復号アルゴリズムは、日本工業規格JISX0503に記載されているものを用いることも可能である。
(5) 前記第5ステップは、前記第2ステップで生成した幅配列を太い順に並べ替え、太い方から3番目のエレメントのエレメント幅を第2幅しきい値THとし、エレメント幅Tが、T≧TH であるエレメントを「太」と判定することを特徴とするバーコード情報読取方法。
本発明によれば、既に第2ステップで生成した幅配列から簡単に第2幅しきい値THを求めることができると共に、CODE39に基づいて構成されるキャラクタは「太」の数が3であるというキャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定するから、所定の規則に基づく方法では読取不能であったキャラクタであっても、バーコード情報を正しく読み取ることができる。
(6) 前記第5ステップは、再判定した「太」の構成を、CODE39に規定される黒エレメントと白エレメントの組合せと比較し、一致しない場合にキャラクタ不明と判定することを特徴とするバーコード情報読取方法。
本発明によれば、CODE39に基づいて構成されるキャラクタは、「太」の構成が2種類のみ(「黒エレメント2個、白エレメント1個」および「黒エレメント0個、白エレメント3個」)であるという規則性を利用して、黒エレメントと白エレメントの個数の組合せを比較することにより、ビットパターンをキャラクタのコードと比較することなく、簡単に読取結果の成否を判断することができる。
(7) 媒体上に記録されたバーコード情報を読み取る読取部と、読み取られた情報を所定の2値化しきい値で2値化情報に変換する2値化処理部と、前記2値化情報に基づいて、バーコード情報を構成する複数のエレメントのエレメント幅を順次測定するとともに、各エレメント幅を測定した順番に並べた幅配列を生成する幅配列生成部と、所定の規則に基づいて各エレメント幅の「細」または「太」を判定し、この判定された結果に基づいて、前記幅配列をビットパターンに変換するビットパターン第1変換部と、前記ビットパターンに該当するキャラクタを判定する判定部と、を有し、前記判定部において、前記ビットパターンに該当するキャラクタが存在しない場合に、キャラクタを構成する「太」の個数に基づいて第2幅しきい値を求めて各エレメント幅の「細」または「太」を再判定し、この再判定された結果に基づいて、前記幅配列をビットパターンに再変換するビットパターン第2変換部を備え、再変換されたビットパターンに該当するキャラクタを前記判定部において判定することを特徴とするバーコード情報読取装置。
本発明によれば、上述した(1)と同様に、所定の規則に基づく従来方法では読取不能であったキャラクタであっても、キャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定することにより、バーコード情報を正しく読み取ることができる。
本発明に係るバーコード情報読取方法及びバーコード情報読取装置は、バーコード情報の読み取り時の環境条件の影響に左右されずに、バーコード情報を、正しく読み取ることが可能である。
本発明の実施の形態に係るバーコード情報読取装置の電気的構成を示すブロック図である。 本発明の実施の形態に係る第1のバーコード情報読取方法の流れを示すフローチャートである。 本発明の実施の形態に係る第2のバーコード情報読取方法の流れを示すフローチャートである。 CODE39の規格による数値情報とバーコード配置との関係を示す説明図である。 多値情報を2値化情報に変換する様子を説明するための説明図である。 エレメント幅配列の一例を示す図である。 図6に示すエレメント幅配列を変換したビットパターンを示す図である。 本発明の実施の形態に係る第2のバーコード情報読取方法により図6に示すエレメント幅配列を変換したビットパターンを示す図である。
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
[バーコード情報読取装置]
図1は、本発明の実施の形態に係るバーコード情報読取装置1の電気的構成を示すブロック図である。
図1において、バーコード情報読取装置1は、密着型の一次元撮像素子11aと、媒体搬送機構(搬送ガイド11bを含む)と、を有する撮像装置11と、画像メモリ12と、読取制御部13と、データ処理部20と、を備えている。
撮像装置11は、カードなどの記録媒体2上に記録されたバーコード情報21を多値情報として読み取る読取手段である。本実施の形態では、撮像装置11は、密着型の一次元撮像素子11aを備え、撮像素子11aによって光学像を撮像するようになっている。カードなどの記録媒体2は、媒体搬送機構の搬送ガイド11bに沿って搬送され、一次元撮像素子11aを通過することによって、バーコード情報21を含む記録媒体2の表面が撮像されるようになっている。本実施の形態では、撮像装置11は、密着型の一次元撮像素子11aを備え、撮像素子11aによって光学像を撮像し、撮像によって得られたアナログの画像信号を光電変換し、デジタルの多値情報として画像データに変換した後に画像メモリ12に記憶している。
画像メモリ12は、画像を有限個の画素の行列とみなし、各画素の画素値である輝度値を数値で表したものである。輝度値は一定の範囲の数で表される。例えば、8ビットの256階調の多値情報で表され、輝度値は0から255までの整数値として表される。具体的には、白エレメントを構成する画素では輝度値が相対的に大きな値になり、黒エレメントを構成する画素では輝度値が相対的に小さな値になっている。本実施の形態では、M×N個の画素をマトリクス状に配列して構成され、M×N個の領域にバーコード情報21全体の画像データが記憶されている。なお、この画像メモリ12は、RAM,SDRAM,DDRSDRAM,RDRAMなど、画像データを記憶しうるものであれば如何なるものであってもよい。
読取制御部13は、所定の搬送速度となるように、記録媒体2の移動量を制御している。
また、データ処理部20は、2値化処理部14と、幅配列生成部15と、第1復号部16及び第2復号部17と、判定部18とから構成されている。
2値化処理部14は、バーコード情報21の画像データを画像メモリ12から取り込み、所定の2値化しきい値で2値化情報に変換し、黒エレメントと白エレメントに判定する。幅配列生成部15は、2値化処理部14で変換された2値化情報に基づいて、各エレメント幅を順次測定し、測定した順番に並べた幅配列を生成する。
第1復号部16は、所定の規則に基づいて第1幅しきい値を算出する第1幅しきい値算出部16aと、第1幅しきい値に基づいて各エレメント幅の「細」または「太」を判定するビットパターン第1変換部16cとを備えている。
第1幅しきい値算出部16aは、幅配列生成部15において測定された各エレメント幅の総和であるキャラクタの全長幅Sから所定の規則に基づいて第1幅しきい値を算出し、ビットパターン第1変換部16cは、算出された第1幅しきい値に基づいて、各エレメント幅を比較し、それぞれについて「太」か「細」かを判断する。その「太」/「細」のエレメント幅の組合せ状態に基づいて復号が行われ、復号結果が、2進数の「0」または「1」に対応させてこれを順に並べて得られるビットパターン(ビット列)として出力される。
判定部18は、変換処理されたビットパターンが有効なキャラクタに合致するか否かを判定する。
また、第2復号部17は、キャラクタの構成上の特徴に基づいて第2幅しきい値を算出する第2幅しきい値算出部17aと、エレメント幅が「太」の数を黒エレメントと白エレメントと別々にカウントする黒・白エレメントカウンタ部17bと、第2幅しきい値に基づいて各エレメント幅の「細」または「太」を再判定するビットパターン第2変換部17cとを備えている。
第2幅しきい値算出部17aは、幅配列生成部15において測定された各エレメント幅からキャラクタの構成上の特徴に基づいて第2幅しきい値を算出し、ビットパターン第2変換部17cは、算出された第2幅しきい値に基づいて、各エレメント幅を比較し、それぞれについて「太」か「細」かを判断し、黒・白エレメントカウンタ部17bは、エレメント幅が「太」の数を黒エレメントと白エレメントと別々にカウントして読み取りの成否を検証する。そして、その「太」/「細」のエレメント幅の組合せ状態に基づいて復号が行われ、復号結果が、2進数の「0」または「1」に対応させてこれを順に並べて得られるビットパターン(ビット列)として出力される。
本実施の形態では、第1幅しきい値THは、日本工業規格JISX0503に記載されている所定の規則(T≧S/8)に基づいて求められる値であり、第2幅しきい値THは幅配列を太い順に並べ替え、太い方から3番目のエレメントのエレメント幅の値としている。
第2復号部17は、CODE39に基づいて構成されるキャラクタが、CODE39がもつ規則性を利用して、エレメント幅が「太」の黒エレメントと白エレメントの個数の組合せを比較し、読み取りの成否を検証する。
このような電気的構成からなるバーコード情報読取装置1において、本発明の実施の形態に係るバーコード情報読取方法について説明する。
[バーコード情報読取方法]
図2及び図3は、本発明の実施の形態に係る第1、第2のバーコード情報読取方法の流れを示すフローチャートである。図4はCODE39の規格による数値情報とバーコード配置との関係を示す説明図である。図5は、バーコード情報の多値情報を2値化情報に変換する様子を説明する説明図である。
本実施例では、バーコード情報は、エレメント幅が「太」と「細」との2種類で構成された2値レベルコードの一種であるCODE39と呼ばれるバーコードタイプを例にして説明する。
図4に示すように、CODE39に基づいて構成されたバーコード情報は、キャラクタ当たりのエレメント数が9本であり、5本の黒エレメントと、4本の白エレメントとで構成されている。このうち、エレメント幅が「太」は3本、「細」は6本と決められている。そして、1つのキャラクタを表現したバーコード情報は、必ず黒エレメントで始まり、必ず黒エレメントで終わるようになっている。
具体的には、図4において、左欄の「コード」は、数値情報(キャラクタ)を示し、中央欄の「パターン」は、黒エレメントと白エレメントを交互に用いながら、エレメント幅の「太」、「細」のパターン配置を示し、右欄の「ビットパターン」は、中央欄のエレメント幅において、「太」を「1」、細バーを「0」として2進数で表現している。
次に、図2を用いて、第1のバーコード情報読取方法の流れを概説する。
まず、1キャラクタ分の画像データを取り込む(S11)。具体的には、バーコード情報読取装置1の撮像素子11aは、搬送ガイド11bに沿って所定位置まで移動した記録媒体2のバーコード情報21を、光電変換によって撮像する。そして、撮像されたバーコード情報21全ての画像データは、画素毎に多値情報として画像メモリ12において記憶される。例えば、画像メモリ12はM×N個の画素をマトリクス状に配列して構成され、各画素に多値情報としての256階調の輝度値が記憶される。
その後、2値化処理部14は、画像メモリ12に記憶された多値情報で表された画像データを、その画像データ中の1キャラクタ分の画像データを取り込む。具体的には、図1に示すようなバーコード情報21においては、エレメントの長手方向に対して垂直な方向(エレメント幅の方向、すなわちエレメントが配列される方向)にだけ情報を持っている。すなわち、エレメントの長手方向を縦方向とすると、それに垂直な横方向の輝度値の変化によって決まるので、画像データの中で、実際にバーコード情報の認識に必要な部分は全部の画素ではなく、例えば、M×N画素の画像データの場合、1×N画素の1次元の画素列の画像データを用いている。そこで、本実施の形態では、図1に示す読取走査線SL上に該当する画素の輝度値(多値情報)を読み込むようにしている。本実施の形態では、読取走査線SLはバーコード情報21の縦方向(読取走査線SLに直交する方向)のほぼ真中に形成され、1×N個の画素で構成されている。なお、読取走査線SLは、1×N画素に限定されるものではなく、縦方向に2、3画素を選択した2(または3)×N画素の輝度値から決めてもよい。この場合には、各画素の輝度値は、それらの合計値または平均値をとるようにしてもよい。
図5上段は、1キャラクタ分の画像データにおける、読取走査線SL方向に配列された各画素の輝度値分布を示している。同図において、横軸は、画素位置を表し、縦軸は各画素の輝度値(0〜255)を表している。
2値化処理部14は、この多値情報を所定の2値化しきい値thを用いて、図5下段に示す2値化情報に変換し、黒エレメントと白エレメントを判別可能な状態にして画像メモリ12に記憶する。本実施の形態では、図5上段に示す2値化しきい値thは、読取走査線SLを構成する全画素の画像データの多値情報の総和を全画素数で除算した値である。
次いで、幅配列生成部15は、図5下段に示す2値化情報に基づいて、1キャラクタを構成する9本の黒エレメント及び白エレメントのエレメント幅を順次測定して、エレメント幅配列TX(X=1〜9)を求める(S12)。具体的には、図5下段に示すように、横軸の画素数、すなわち、読取走査線SL方向に配列された画素数をエレメント幅として計測している。(図6のサンプル1参照。)
次いで、第1復号部16は、所定の規則に基づいて各エレメント幅の「細」または「太」を判定する(S13)。ここで、CODE39の復号アルゴリズムは、日本工業規格JISX0503に記載されているものに準じて、次に説明するように判定を行う。
第1幅しきい値算出部16aは、以下の手順により第1幅しきい値を算出する。
まず、9本のエレメントからなる1キャラクタの全長幅をSとする(図5参照)。キャラクタの各エレメント幅をTとし、T≧S/8=TH(第1幅しきい値)であれば、そのエレメント幅は「太」とみなしてビット「1」を与え、そうでない場合(T<S/8)には、「細」とみなしてビット「0」を与える(S14)。より詳細に説明すると、まず、9本のエレメントからなる1キャラクタの全長幅をSとする。ここでエレメント幅の「太」「細」が2対1の比率の場合に、1つのキャラクタは「太」3本、「細」6本で構成されるから1キャラクタで「細」を基準とした全体の比は2×3+1×6=12となり1キャラクタ分のエレメント幅の合計値を12で割ったものが「細」のエレメント幅すなわちS/12となる。ここで「太」「細」を判断する第1幅しきい値THとしては中間の値が必要となり「細」のエレメント幅を1.5倍することで第1幅しきい値TH=1.5S/12=S/8を得る。
ビットパターン第1変換部16cは、このビット変換処理を1キャラクタの全エレメントに対して行う。そして、判定部18は、ビットパターン第1変換部16cにおいて各エレメント幅が「細」または「太」をそれぞれ2進数の0または1に変換処理されてこれを順に並べたビットパターン(ビット列)が有効なキャラクタに合致するか否かを判定する(S15)。
例えば、あるキャラクタに関して、図6に示すサンプル1のようなエレメント幅配列が得られたとする。この例では、
=6+3+11+7+11+3+6+3+6=56
第1幅しきい値TH=S/8=56/8=7
となり、左から1番目のエレメント幅T1=6について、6<7となるので、「細」とみなしてビット「0」が与えられる。他のエレメントについても順次ビット変換を行うと、図7に示すサンプル1のようなビットパターンが得られる。
次いで、判定部18は、得られたビットパターンからキャラクタを決定する(S16)。このビットパターンは、図4においてキャラクタコード6が該当し、正しい結果が得られたと判定し、復号処理を終了する。
一方で、同じキャラクタに関して、読み取り信号のジッタ、または、画像データのレベルの変動等のバーコード読み取り時の条件によって、図6に示すサンプル2のようなエレメント幅配列が得られる場合がある。この例では、2番目、6番目のエレメント幅が増加しており、
10=6+4+11+7+11+4+6+3+6=58
第1幅しきい値TH10=S/8=58/8=7.25
となり、左から4番目のエレメント幅T4=7について、7<7.25となるので、細エレメントとみなされ、このビットには「0」が与えられ、図7に示すサンプル2のようなビットパターンに変換される。しかし、サンプル2のパターンは、図4において、対応するキャラクタコードがないために、判定部18は、キャラクタ不明と判定し、読取不可となる(S17)。
図2に示すS17において、判定部18が、ビットパターンに対応するキャラクタが存在しないと判定した場合には、Aに進む。すなわち、第2復号部17が、図3に示す第2のバーコード情報読取方法を用いて、再度、復号処理を行う。
次に、図3を用いて、第2のバーコード情報読取方法の流れを概説する。
CODE39では、キャラクタのエレメント幅配列に次のような規則性がある。
1)エレメント幅が「太」のビットの合計は3である。
2)エレメント幅が「太」の構成は次の2種類のみである。
黒エレメント2個、白エレメント1個
黒エレメント0個、白エレメント3個
この規則性を利用し、図3に示すフローチャートに従って、次に説明する復号処理を行うことができる。
第2復号部17は、図2に示すS12で求めた1キャラクタ分のエレメント幅配列を読み込む。
次に、第2幅しきい値算出部17aは、エレメント幅が「太」か「細」かを分離する第2幅しきい値THを決定する(S21)。第2幅しきい値算出部17aは、1キャラクタに含まれる9本のエレメント幅を太い順に並べ替えて、上位から3番目に位置するエレメント幅を第2幅しきい値THとする。
図6に示されるサンプル2について具体的に説明する。このエレメント幅を太い順に並べ替えると、エレメント幅配列は、
11,11,7,6,6,6,4,4,3
となり、上記した規則性の1)により、上位から3番目に位置するエレメント幅は7であるから、第2幅しきい値TH=7となる。
ビットパターン第2変換部17cは、全てのエレメントに対して、ビットの初期値「0」を与える。次に、図6に示されるサンプル2において、1番目のエレメントT1=6について、これは図5に示すとおり黒エレメントであるが、T1≧TH を満たさないので、ビットB1は初期値「0」のままである(S22)。2番目のエレメントT2=4は、白エレメントであって、T2≧TH を満たさないので、ビットB2は初期値「0」のままである(S24)。
3番目のエレメントT3=11は、黒エレメントで、T3≧TH を満たすので、ビットB3は、エレメント幅が「太」と判定し、初期値「0」が「1」に置き換えられる(B3=1)。そして、黒・白エレメントカウンタ部17bは、黒エレメントのカウンターを1つカウントアップさせる(S22,S23)。
4番目のエレメントT4=7は、白エレメントであって、T1≧TH を満たすので、ビットB4は初期値「0」が「1」に置き換えられる(欄B4=1)。そして、黒・白エレメントカウンタ部17bは、白エレメントのカウンターが1つカウントアップされる(S24,S25)。
ビットパターン第2変換部17cは、この処理を最後のエレメントT9まで繰り返し実行すると、図8に示すサンプル2のようなビットパターンを得る。
次いで、判定部18は、第2のバーコード情報読取方法で得られたビットパターンからキャラクタを決定する(S27)。このビットパターンは、図4においてキャラクタコード6が該当し、正しい結果が得られたと判定し、復号処理を終了する。これにより、第1のバーコード情報読取方法で読取不能となっていたものが、正しく読み取りすることができる。
また、第2復号部17は、図3に示すS26において、CODE39に基づいて構成されるキャラクタが、「太」の構成が2種類のみ(「黒エレメント2個、白エレメント1個」および「黒エレメント0個、白エレメント3個」)であるという上述した規則性の2)を利用して、黒エレメントと白エレメントの個数の組合せを比較し、読み取りの成否を検証する。
上述のサンプル2では、「太」のエレメント幅は黒エレメントが2個(T3,T5)、白エレメントが1個(T4)であるから、上記した規則性1)、2)のキャラクタ構成上の特徴を満たし、読み取りは成功している。第2復号部17は、読取成功と判断して、判定部18によりキャラクタを決定する。
一方、黒エレメントと白エレメントの個数の組合せがキャラクタ構成上の特徴を満たさない場合には、第2復号部17がキャラクタ不明と判断し、復号処理を終了する(S28)。これにより、読取不能の場合には、判定部18による判定を行わないから、データ処理部20の負荷を低減することができる。
(本実施の形態の主な効果)
本実施の形態では、図2に示す第1のバーコード情報読取方法において、バーコード情報21を構成する複数の黒および白エレメントのエレメント幅を順次測定し、所定の規則に基づく第1幅しきい値TH=S/8により各エレメント幅の「細」または「太」を判定して幅配列をビットパターンに変換し、第4ステップでビットパターンに該当するキャラクタを判定する。そこで、ビットパターンに該当するキャラクタが存在しない場合に、図3に示す第2のバーコード情報読取方法に進み、キャラクタの構成上の特徴、すなわち、上記エレメント幅を太い順に並べ替えて、CODE39がもつ規則性により、上位から3番目に位置するエレメント幅を第2幅しきい値THとする。この第2幅しきい値THを用いて、各エレメント幅の「細」または「太」を再判定して幅配列をビットパターンに再変換し、再変換されたビットパターンに該当するキャラクタを判定する。これにより、所定の規則に基づく第1のバーコード読取方法では読取不能であったキャラクタであっても、第2のバーコード読取方法で、キャラクタの構成上の特徴に基づいて各エレメント幅の「細」または「太」を再判定することにより、バーコード情報を正しく読み取ることが可能となる。従って、バーコード情報の読み取り時の環境条件の影響に左右されずに、バーコード情報を、正しく読み取ることが可能である。
本発明は、CODE39に基づいて構成されたキャラクタに限られず、2値化レベルコードとしてのCODABAR(NW−7)や2of5など他のコードに基づいて構成されたキャラクタを読み取ることも可能である。
バーコードの読取方法には、図1に示す例の他に、レーザスキャン方式と、画像処理方式とがある。
本実施の形態は画像処理方式であり、撮像装置としてのカメラによってバーコードを撮影し、その画像データに画像処理を施すことで、バーコード情報を抽出するとともにバーコード情報を構成する4種類のバーの組み合わせを検出し解読する方法である。本願発明は、これに限定されるものではなく、例えば、レーザスキャン方式であってもよい。すなわち、バーコード情報をレーザ光線で走査し、その反射光を光学式1次元センサで検出することで、バーコード情報を構成する4種類(「太」の黒エレメント、「細」の黒エレメント、「太」の白エレメント、「細」の白エレメント)のエレメントの組合せを解読する方法を用いることもできる。
本発明に係るバーコード情報読取方法及びバーコード情報読取装置は、読み取り信号のジッタ(時間方向の変動)やモジュレーション(レベルの変動)により、黒部と白部が微小に変動する外乱にも強く、従来方法では読取不能であったキャラクタであっても、正しく読み取ることができるものとして有用である。
1 バーコード情報読取装置
2 記録媒体
11 撮像装置
11a 撮像素子
12 画像メモリ
13 読取制御部
14 2値化処理部
15 幅配列生成部
16 第1復号部
17 第2復号部
18 判定部
20 データ処理部

Claims (7)

  1. 媒体上に記録されたバーコード情報を読取手段により読み取り、所定の2値化しきい値で2値化情報に変換する第1ステップと、
    前記2値化情報に基づいて、バーコード情報を構成する複数の黒エレメントと白エレメントのエレメント幅を順次測定するとともに、各エレメント幅を測定した順番に並べた幅配列を生成する第2ステップと、
    所定の規則に基づいて各エレメント幅の「細」または「太」を判定し、この判定された結果に基づいて、前記幅配列をビットパターンに変換する第3ステップと、
    前記ビットパターンに該当するキャラクタを判定する第4ステップと、
    を含み、
    前記第4ステップにおいて、前記ビットパターンに該当するキャラクタが存在しない場合に、キャラクタを構成する「太」の個数に基づいて第2幅しきい値を求めて各エレメント幅の「細」または「太」を再判定し、この再判定された結果に基づいて、前記幅配列をビットパターンに再変換する第5ステップと、
    再変換されたビットパターンに該当するキャラクタを判定する第6ステップと、を有することを特徴とするバーコード情報読取方法。
  2. 前記第5ステップは、再判定した「太」の構成を、黒エレメントと白エレメントの規定の組合せと比較し、一致するか否かを判定することを特徴とする請求項1記載のバーコード情報読取方法。
  3. 前記キャラクタは、CODE39に基づいて構成されていることを特徴とする請求項1又は2記載のバーコード情報読取方法。
  4. 前記第3ステップは、エレメント幅Tが、キャラクタの全長幅Sに対して、
    T≧S/8であるエレメント幅を「太」と判定することを特徴とする請求項3記載のバーコード情報読取方法。
  5. 前記第5ステップは、前記第2ステップで生成した幅配列を太い順に並べ替え、太い方から3番目のエレメントのエレメント幅を第2幅しきい値THとし、
    エレメント幅Tが、T≧THであるエレメントを「太」と判定することを特徴とする請求項3又は4記載のバーコード情報読取方法。
  6. 前記第5ステップは、再判定した「太」の構成を、CODE39に規定される黒エレメントと白エレメントの組合せと比較し、一致しない場合にキャラクタ不明と判定することを特徴とする請求項3から5のいずれか記載のバーコード情報読取方法。
  7. 媒体上に記録されたバーコード情報を読み取る読取部と、
    読み取られた情報を所定の2値化しきい値で2値化情報に変換する2値化処理部と、
    前記2値化情報に基づいて、バーコード情報を構成する複数のエレメントのエレメント幅を順次測定するとともに、各エレメント幅を測定した順番に並べた幅配列を生成する幅配列生成部と、
    所定の規則に基づいて各エレメント幅の「細」または「太」を判定し、この判定された結果に基づいて、前記幅配列をビットパターンに変換するビットパターン第1変換部と、
    前記ビットパターンに該当するキャラクタを判定する判定部と、
    を有し、
    前記判定部において、前記ビットパターンに該当するキャラクタが存在しない場合に、キャラクタを構成する「太」の個数に基づいて第2幅しきい値を求めて各エレメント幅の「細」または「太」を再判定し、この再判定された結果に基づいて、前記幅配列をビットパターンに再変換するビットパターン第2変換部を備え、
    再変換されたビットパターンに該当するキャラクタを前記判定部において判定することを特徴とするバーコード情報読取装置。
JP2010056823A 2010-03-13 2010-03-13 バーコード情報読取方法及びバーコード情報読取装置 Active JP5515012B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010056823A JP5515012B2 (ja) 2010-03-13 2010-03-13 バーコード情報読取方法及びバーコード情報読取装置
US13/044,903 US8403221B2 (en) 2010-03-13 2011-03-10 Method and apparatus for reading barcode information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010056823A JP5515012B2 (ja) 2010-03-13 2010-03-13 バーコード情報読取方法及びバーコード情報読取装置

Publications (2)

Publication Number Publication Date
JP2011191957A JP2011191957A (ja) 2011-09-29
JP5515012B2 true JP5515012B2 (ja) 2014-06-11

Family

ID=44559020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010056823A Active JP5515012B2 (ja) 2010-03-13 2010-03-13 バーコード情報読取方法及びバーコード情報読取装置

Country Status (2)

Country Link
US (1) US8403221B2 (ja)
JP (1) JP5515012B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5398653B2 (ja) * 2010-06-30 2014-01-29 株式会社オプトエレクトロニクス デコード方法及びデコード処理装置
RU2634646C2 (ru) * 2013-05-16 2017-11-02 Тойота Дзидося Кабусики Кайся Система охлаждения выхлопных газов для двигателя внутреннего сгорания
US10127199B2 (en) * 2014-03-28 2018-11-13 Adobe Systems Incorporated Automatic measure of visual similarity between fonts

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6062481A (en) * 1986-04-18 2000-05-16 Cias, Inc. Optimal error-detecting, error-correcting and other coding and processing, particularly for bar codes, and applications therefor such as counterfeit detection
JPS63133282A (ja) * 1986-11-26 1988-06-06 Nippon Denso Co Ltd バ−コ−ドラベル
US5218190A (en) * 1990-09-28 1993-06-08 Symbol Technologies, Inc. Means and method for non-contact bar code label verification
JP2949958B2 (ja) 1991-10-07 1999-09-20 株式会社デンソー バーコード読取装置
GB2291524B (en) * 1994-07-21 1997-01-29 Fujitsu Ltd Reading bar codes
JPH09179927A (ja) * 1995-12-26 1997-07-11 Fujitsu Ltd バーコード読取装置
JPH10134130A (ja) * 1996-10-28 1998-05-22 Fujitsu Ltd バーコード読取方法およびバーコード読取装置
US6279828B1 (en) * 1999-03-01 2001-08-28 Shawwen Fann One dimensional bar coding for multibyte character
US6514140B1 (en) * 1999-06-17 2003-02-04 Cias, Inc. System for machine reading and processing information from gaming chips
JP4202101B2 (ja) * 2002-10-10 2008-12-24 富士通株式会社 バーコード認識方法、および認識用デコード処理装置

Also Published As

Publication number Publication date
US20110220721A1 (en) 2011-09-15
US8403221B2 (en) 2013-03-26
JP2011191957A (ja) 2011-09-29

Similar Documents

Publication Publication Date Title
JP4911340B2 (ja) 二次元コード検出システムおよび二次元コード検出プログラム
US7380718B2 (en) Method for reading out symbol information and device for reading out symbol information
US7949187B2 (en) Character string recognition method and device
US8333326B2 (en) Stacked barcode reader and stacked barcode reading method
JP2011227636A (ja) 文字列認識装置および文字列認識方法
JPH0612515A (ja) Ccd/cmdカメラを使用して二次元バーコードを復号する方法及び装置
JP4202101B2 (ja) バーコード認識方法、および認識用デコード処理装置
JP5676183B2 (ja) バーコード読取装置およびバーコード読取方法
JP5515012B2 (ja) バーコード情報読取方法及びバーコード情報読取装置
JP5379626B2 (ja) スタック型バーコード情報読取方法及びスタック型バーコード情報読取装置
JP4652201B2 (ja) バーコードシンボル情報読取方法及びバーコードシンボル情報読取装置
JP2734638B2 (ja) データ読取方法及び装置
US9262665B2 (en) Decoding method and decoding processing device
JPH0731717B2 (ja) 光学読取装置
JP2009175845A (ja) 画像処理装置、ペン・デバイスおよびプログラム
JP5896488B2 (ja) バーコード読取装置、バーコード読取方法及びバーコード読取プログラム
JP5453594B2 (ja) シンボル情報読取装置及びシンボル情報読取方法
JP5657987B2 (ja) スタック型バーコード読取装置およびスタック型バーコード読取方法
JP6393226B2 (ja) スタック型バーコード読取装置およびスタック型バーコード読取方法
JP4905767B2 (ja) 二次元コード検出システムおよび二次元コード検出プログラム
JP2734639B2 (ja) データ読取方法及び装置
JP2014115953A (ja) バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム
US8184910B2 (en) Image recognition device, image recognition method, and image scanning apparatus having image recognition device
JP2012083835A (ja) スタック型バーコード読取装置およびスタック型バーコード読取方法
JP4403063B2 (ja) シンボル情報読取方法及びシンボル情報読取装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131029

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131226

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: 20140129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140223

R150 Certificate of patent or registration of utility model

Ref document number: 5515012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150