JPH01290092A - バーコードのバー幅判別方法 - Google Patents

バーコードのバー幅判別方法

Info

Publication number
JPH01290092A
JPH01290092A JP63120230A JP12023088A JPH01290092A JP H01290092 A JPH01290092 A JP H01290092A JP 63120230 A JP63120230 A JP 63120230A JP 12023088 A JP12023088 A JP 12023088A JP H01290092 A JPH01290092 A JP H01290092A
Authority
JP
Japan
Prior art keywords
bar
width
module
bars
total number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP63120230A
Other languages
English (en)
Inventor
Koichi Kameyama
亀山 恒一
Toshiro Tsukada
敏郎 塚田
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.)
Topcon Corp
Original Assignee
Topcon 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 Topcon Corp filed Critical Topcon Corp
Priority to JP63120230A priority Critical patent/JPH01290092A/ja
Publication of JPH01290092A publication Critical patent/JPH01290092A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、各キャラクタを構成するモジュールの総本数
が一定でそのモジュールの幅が一定に構成されたバーコ
ードを読み取って各バーを2値化する際、各バーのバー
幅の補正をするに好適のバーコードのバー幅判別方法に
関する。
(従来の技術) 従来から、各キャラクタを構成する最小基本単位として
のモジュールの総本数が一定でそのモジュールの幅が一
定のバーコードには、JAN、UPC,EAN等の各種
の規格のものがあり、たとえば、第6図はJAN規格の
バーコードの一例を示している。
この種のバーコードは、白バーと黒バーとからなってい
る。各バーはその幅が基本モジュールの幅の整数倍、た
とえば、1〜4倍となっており。
各キャラクタは一定の本数のモジュールと一定の本数の
バーとによって構成されている。たとえば、第5図(a
)に示すバーコードでは、各キャラクタは、白バーと黒
バー(黒バーを斜線で示す)とが2本づつの4本のバー
(n=4)により構成され、かつ、モジュールの総本数
mが「7」である。なお、この例では、ガードバ−は2
本の黒バーと1本の白バーとからなるn=3本のバーか
ら構成され、モジュールの総本数mはr3Jであり、セ
ンターバーは第3図に示すように3本の黒バーと2本の
白バーとからなり、モジュールの総本数が「5」である
このようなバーコードを光学的に走査してバーコード情
報を2値化し、デコードする際には、各キャラクタを構
成するバーがモジュールの何単位であるのかを求める必
要があり、そのためバー幅を求めなければならない。な
お、そのバー幅はクロックの個数をカウントすることに
より求める。
従来は、先頭のガードバ−が−単位(n/m=1)であ
るので、まず、先頭のガードバ−からモジュールの幅を
平均値として求め、各バー幅を平均値として求められた
モジュールの幅を用いて除算し、その除算値を四捨五入
して得られた整数値に基づき、バー幅を判定するように
している。
なお、白バーと黒バーとでは、バー幅が異なる傾向にあ
るので、ガードバ−に基づき、白バーと黒バーとのモジ
ュールの幅を別々に求め、各キャラクタのバー幅を求め
るに際し、黒バーのバー幅を求めるときには黒バーに対
応するモジュールの幅を用い、白バーのバー幅を求める
ときには白バーに対応するモジュールの幅を用いてバー
幅の判別をするようにしたものもある。
(発明が解決しようとする問題点) ところで、ハンドスキャナタイプのバーコードリーダ、
レーザー式定置型バーコードリーダでは、レーザー光源
のスポット径、バーコード情報を含んだ光電変換信号を
増幅する増幅器の特性等の関係で、バーコードに対応す
る光電変換信号は第5図(b)で示すようなものとなる
この第5図(b)で示す信号をスレッショルドレベル(
イ)によりスライスして2値化信号(第5図(c)参照
。)を得るものであるが、背景光の変化、電気的原因で
、光電変換信号の直流レベルが変化すると、相対的にス
レッショルドレベルが(ロ)に示すように変化したこと
になり、実際に得られる2値化信号は第5図(d)で示
すような信号となる。
このように、光電変換信号の直流レベルの変化により相
対的にスレッショルドレベルが(イ)に示すような状態
から(ロ)に示すような状態に変化した場合、ガードバ
−に基づいてモジュールの幅を計算により求めると、正
しいモジュールの幅よりも大きいものとなる。また、各
キャラクタのバー幅は白バーが小さく、黒バーのバー幅
は大きくなり、誤差が大きくなると、除算した場合、各
バーの正しいモジュールの総本数を算出できないことに
なる。各バーを構成しているモジュールの総本数が「4
」の場合、0.5/4以上になると誤読を生じる。
この例に示すように、白バーのバー幅が全部小さく、黒
バーのバー幅が全部大きいような場合には、このことに
着目して、白バー、黒バーについて別々にモジュールの
幅を求めることが考えられるが、キャラクタのバー幅は
モジュールの本数に比例して変化しているわけではない
ので、モジュールの本数が「1」以外のバーには誤差が
生じ、モジュールの本数が多い程誤読を生じ易くなる。
なお、実際には、光電変換信号の直流レベル、スレッシ
ョルドレベル、走査速度はバーコードの全領域を走査す
るに際し、一定とは限らず、その走査途中で、直流レベ
ル、スレッショルドレベル、走査速度が変化することも
あるので、先頭のガードバ−のみに基づいてモジュール
の幅を決めたのみでは末尾の方で誤差が大きくなる。
この誤読を避けるためには、直流レベルの変化にスレッ
ショルドレベルを追従させることが考えられ、そのため
の回路工夫を行なったものも発表されているが、十分で
あるとはいい難い。
そこで、本発明の目的は、キャラクタを構成するバーの
本数、モジュールの本数が一定であることに着目してソ
フトウェア的に誤読の発生を防止できるバーコードのバ
ー幅判別方法を提供することにある。
(課題を解決するための手段) 本発明に係るバーコードのバー幅判別方法は、幅方向に
隣あって互いに区別できる二種のバーのバー幅がバーの
最小基本単位としてのモジュールの幅の単位倍で、総本
数が一定のモジュールとバーとにより定義されるガード
バ−又はセンターバーと、前記二種のバーのバー幅が前
記モジュールの幅の整数倍で、総本数が一定のモジュー
ルとバーとにより定義されるキャラクタとを有するバー
コードのバー幅判別方法であって、 前記ガードバ−又はセンターバーのバー幅、前記キャラ
クタのバー幅を以下の演算式に基づいて演算して求める
ことを特徴とするバーコードのバー幅判別方法。
前記ガードバ−、センターバー、前記キャラクタを構成
するモジュールの総本数をm、前記バーの総本数をn、
該バーのi番目の検出バー幅をBい演算により求めるモ
ジュール幅をMとし、(i)バーの総本数nが偶数のと
き(例えば、JANのキャラクタのモジュール幅のとき
)Nのガードバ−のモジュール幅又はセンターバーのモ
ジュール幅のとき) という計算式に基づいて、各バーのバー幅を求め、次に
、各バーの幅の基本幅からの偏差をD、i = 2 j
番目のバーを構成するモジュールの本数をN2.とする
とき、 (fit)バーの総本数nが偶数の場合(例えば、JA
Nのキャラクタのモジュール幅のとき)又は、 (iv )バーの総本数nが奇数の場合(例えば、JA
Nのガードバ−のモジュール幅又はセンターバ−のモジ
ュール幅のとき) という計算式により、偏差りを求め、 各バーを構成するモジュールの本数N、を、NL=(B
L±D)/M、(小数以下は四捨五入、復号はバーの種
類により偏差を補正する方向にとる)、として求めるこ
とを特徴とする。
(作用) 本発明に係るバーコードのバー幅判別方法は、キャラク
タを構成するバーの本数、モジュールの本数が一定であ
ることに着目してソフトウェア的にバー幅を求めるもの
であるから、誤読の発生を容易に防止できる。
(実施例) 以下に、本発明に係る光学式コード読み取り装置の実施
例を図面を参照しつつ説明する。
第4図は本発明に係る光学式コード読み取り装置の概略
構成を示す図であって、その第4図において、1はスキ
ャナ部である。このスキャナ部1には、照明光源として
のレーザー管2、ミラー面3aを有する直角プリズム、
ガルバノミラ−4、結像レンズ5、受光素子6が設けら
れていると共に、トリガ部7が設けられている。また、
スキャナ部1にはミラードライブ回路8、アナログ増幅
部9、デジタル変換部10からなる2値化回路が設けら
れている。
レーザー管2から射出されたレーザービームは、ミラー
面3aで反射されて、ガルバノミラ−4に導かれ、ガル
バノミラ−4によってバーコードシンボル11に向けて
反射される。このガルバノミラ−4は、図示を略すモー
タによって周期的に振られ、このガルバノミラ−4の振
れによって、バーコードシンボル11のバーを横断する
方向の走査りが行われる。
バーコードシンボル11で反射された反射光は。
ガルバノミラ−4で反射されて、結像レンズ5に導かれ
、PINフォトダイオード等の受光素子6に結像される
。その反射光の強度は、バーの幅とその間隔に対応して
変化する。したがって、その受光素子6からの光電変換
信号は、その反射光の強度の変化にともなって変化する
。その光電変換信号は2値化回路としてのアナログ増幅
部9で増幅され、デジタル変換部10でデジタル変換さ
れて。
デコーダ部12に入力される。そのデコーダ部12は、
CPUとRAMメモリとを少なくとも有している。
CPUはトリガ部7がオンすることによって、作動を開
始し、スキャナコントロール信号をスキャナ部1に出力
し、スキャナ部1に所定のスキャナを行なわせるもので
あるが、その詳細は作用と共に説明する。
トリガスイッチ(図示を略す)によりトリガ部7がオン
されると、レーザービームが射出されると共にCPUが
作動を開始する。そのcpuの作動の開始によってスキ
ャナコントロール信号がスキャナ部1に出力され、ミラ
ードライブ回路8が駆動され、ガルバノミラ−4が振ら
れて、バーコードシンポル11の走査が開始される。そ
のバーコードシンボル11からの反射光は、レンズ5に
より受光素子6に受光され、スキャン検出が行われる。
光電変換信号は、2値化回路によって逐次2値化され1
、ACCを介してデータとしてRAMメモリに一旦記憶
される。そして、CPuは第1図に示すようにバーのカ
ウント数をRAMメモリにストアする(ステップS□)
次に、 cpuはデータ取り込み完了か否かを判定する
(ステップS、)、rYEs」のときは、ステップS3
に移行し、 rNOJのときはバーコード11を再走査
する。ステップS3では、先頭ガードバ−が検出された
か否かを判定する。rYEsJのときは、ステップS4
に移行し、rNOJのときは、バーコード11を再走査
する。
ステップS4では、先頭のガードバ−に基づき、ガード
バ−の演算により求めるバー幅M、偏差りの算出を行な
う。
その演算は以下の式に基づく。
ガードバ−のバー幅Mはバーの総本数nが奇数(n =
 3)であり、モジュールの総本数m = 3であるの
で、 という計算式に基づいて、 M・(3−1)=B、+(B1+B、)/2M=(B1
+B3)/4+B、/2 として求められる。
ガードバ−の偏差りは、 又は、 の式により求める。
次に、キャラクタを構成する4本のバーのバー幅BLの
総和を求め、モジュールの総本数m=7によって除算し
、キャラクタのモジュール幅Mを求める(ステップS5
)、そして、ガードバ−のバー幅Mとキャラクタのバー
幅Mとの差が許容範囲内であるか否かを判定する(ステ
ップS、)。ステップSllにおいて、rYEsJのと
きは、ステップS7に移行し、rNOJのときはステッ
プS0に移行する。ステップS7においては、バーを構
成するモジュールの本数を計算する処理を行なう。
又は、 を、 N、=(B、±D)/M (小数以下は四捨五入、復号
はバーの書類により偏差を補正するようにとる)、とし
て求める。
このステップS7の処理を4本のバーについてそれぞれ
行なう(ステップSB)。そして、各バーを構成するモ
ジュールの演算により求められた本数の総和が7本であ
るか否かを判定する(ステップS□。)。ステップS1
゜において、rNOJのときには、ステップS11に移
行し、先頭のガードバ−の再検出を行ない、ステップS
1□においてrYESJのときにはステップS4に移行
する。ステップS11において「NO」のときにはステ
ップS工に移行し、もういちどスキャンを行なう。ステ
ップS1oにおいて、rYESJのときには、コード表
の中から該当するキャラクタを探知する(ステップS1
.)。そして、該当するキャラクタが検出されたか否か
の判定を行ない(ステップ513)、rYESJのとき
にはキャラクタをRAMメモリにストアする(ステップ
5i4)。そして、CPUは前に求められたモジュール
幅M、偏差りをこの求められたキャラクタのモジュール
幅M、偏差りに置換する(ステップS1.)。
そして、全キャラクタについて、終了したか否かを判定
する(ステップS□6)。ステップS16において、「
NO」のときには、ステップS5〜S7、S3、S1o
、S11〜S16を繰り返し、rYEsJのときは、パ
リティチエツク等の後段の処理に移行する。
なお、ステップS13において、rNOJのときには、
ステップS1□に移行し、先頭のガードバ−の再検出を
行なう。
ステップSGにおいて、ガードバ−のモジュール幅Mと
キャラクタのモジュール幅Mとの差が許容範囲外のとき
には、ステップSsにおいて、センターバーの計算処理
が終わっているか否かを判定する。rNOJのときには
、ステップSエフに移行し、センターバーのモジュール
幅Mとその偏差りとを演算し、ステップS、に移行する
。rYESJのときには、ス゛テップステップS1..
に移行し、全キャラクタが求められた否かを判定する。
以上の説明においては、バーコードに欠損、汚損がなく
正常にバーコード情報が読み取られたものとして説明し
たが、バーコードにインクのにじみ等の欠損があっても
補正できる。
また、この実施例では、ガードバ−、センターバーのモ
ジュールの総本数nが奇数でn=mの場合を例示したが
、キャラクタと同様に総本数nが偶数のときにも適用で
きる。
(発明の効果) 本発明は、以上説明したように構成したので、キャラク
タを構成するバーの本数、モジュールの本数が一定であ
ることに着目してソフトウェア的に誤読の発生を防止で
きるという効果を奏する。
【図面の簡単な説明】
第1図は本発明に係るバーコードのバー幅判別方法の手
順を説明するためのフローチャート、第2図はそのバー
コードのキャラクタの一例を示す図、 第3図はそのバーコードのセンターバーの一例を示す図
、 第4図は本発明に係るバーコードのバー幅判別方法に用
いる光学式コード読み取り装置の回路構成を示す図、 第5図は従来のバーコードのバー判別方法の不具合を説
明するための説明図、 第6図はバーコードの一例を説明するための図である。 1・・・スキャナ部 2・・・レーザー光源 6・・・受光素子 11・・バーコードシンボル 12・・・デコーダ部 n・・・バーの本数 m・・モジュールの本数 M・・・演算により求めたバー幅 D・・偏差 B、・・・検出バー幅 NL・・・バーのモジュール数 昭和63年5月20日

Claims (2)

    【特許請求の範囲】
  1. (1)幅方向に隣あって互いに区別できる二種のバーの
    バー幅がバーの最小基本単位としてのモジュールの幅の
    単位倍で、総本数が一定のモジュールとバーとにより定
    義されるガードバー又はセンターバーと、前記二種のバ
    ーのバー幅が前記モジュールの幅の整数倍で、総本数が
    一定のモジュールとバーとにより定義されるキャラクタ
    とを有するバーコードのバー幅判別方法であって、 前記ガードバ−又はセンターバーのバー幅、前記キャラ
    クタのバー幅を以下の演算式に基づいて演算して求める
    ことを特徴とするバーコードのバー幅判別方法。 前記ガードバーセンターバー又は前記キャラクタを構成
    するモジュールの総本数をm、前記バーの総本数をn、
    該バーのi番目の検出バー幅をB_i、演算により求め
    るモジュール幅をMとし、(i)バーの総本数nが偶数
    のとき(例えば、JANのキャラクタのモジュール幅の
    とき) ▲数式、化学式、表等があります▼ (ii)バーの総本数nが奇数のとき(例えば、JAN
    のガードバーのモジュール幅又はセンターバーのモジュ
    ール幅のとき) ▲数式、化学式、表等があります▼ という計算式に基づいて、各バーのモジュール幅を求め
    、 次に、各バーの幅の基本幅からの偏差をD、i=2j番
    目のバーを構成するモジュールの本数をN_2_jとす
    るとき、 (iii)バーの総本数nが偶数の場合(例えば、JA
    Nのキャラクタのモジュール幅のとき) ▲数式、化学式、表等があります▼ 又は、 ▲数式、化学式、表等があります▼ (iv)バーの総本数nが奇数の場合(例えば、JAN
    のガードバ−のモジュール幅又はセンターバーのモジュ
    ール幅のとき) ▲数式、化学式、表等があります▼ 又は、 ▲数式、化学式、表等があります▼ という計算式により、偏差Dを求め、 各バーを構成するモジュールの本数Nを、 N_j=(B_j±D)/M(小数以下は四捨五入、複
    号はバーの種類により偏差を補正するようにとる)、と
    して求めることを特徴とするバーコードのバー幅判別方
    法。
  2. (2)請求項1に記載のバーコードのバー幅判別方法に
    おいて、 モジュールの本数Nを判別する際、前記偏差Dとして、
    直前のキャラクタ、ガードバー、センターバーにより求
    めたものを用いることを特徴とするもの。
JP63120230A 1988-05-17 1988-05-17 バーコードのバー幅判別方法 Pending JPH01290092A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63120230A JPH01290092A (ja) 1988-05-17 1988-05-17 バーコードのバー幅判別方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63120230A JPH01290092A (ja) 1988-05-17 1988-05-17 バーコードのバー幅判別方法

Publications (1)

Publication Number Publication Date
JPH01290092A true JPH01290092A (ja) 1989-11-21

Family

ID=14781079

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63120230A Pending JPH01290092A (ja) 1988-05-17 1988-05-17 バーコードのバー幅判別方法

Country Status (1)

Country Link
JP (1) JPH01290092A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992021100A1 (fr) * 1991-05-10 1992-11-26 Ape Inc. Lecteur de code barres et dispositif de jeu l'utilisant
US5502296A (en) * 1993-12-20 1996-03-26 Fujitsu Limited Method of and apparatus for demodulating bar code

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992021100A1 (fr) * 1991-05-10 1992-11-26 Ape Inc. Lecteur de code barres et dispositif de jeu l'utilisant
US5331141A (en) * 1991-05-10 1994-07-19 Ape, Inc. Bar code reader and game set using the same
US5502296A (en) * 1993-12-20 1996-03-26 Fujitsu Limited Method of and apparatus for demodulating bar code

Similar Documents

Publication Publication Date Title
US4500776A (en) Method and apparatus for remotely reading and decoding bar codes
JP2788152B2 (ja) バーコードリーダ
JP2750083B2 (ja) 走査装置
JPS63127387A (ja) コ−ド読み取り装置
JP2001250080A (ja) バーコードのエラー検出及び修正のためのシステム及びその方法
JPH0354388B2 (ja)
JP3550807B2 (ja) バーコード復号方式
JPH09179926A (ja) バーコード復調方法並びにバーコード読取装置
US5393968A (en) Method and device for reading bar code
JPH064699A (ja) バーコードリーダ
JP4154871B2 (ja) バーコード読取方法およびバーコード読取装置
JPH01290092A (ja) バーコードのバー幅判別方法
JP2718442B2 (ja) バーコード復調方法及び装置
JPS63115282A (ja) バ−コ−ド読取装置
JPS62162181A (ja) 光学読取装置
JPH08263585A (ja) コード読取装置
JPS5841542B2 (ja) 光学式文字読取装置
JPH0421915B2 (ja)
JPH0793451A (ja) バーコードシンボル読取装置
JP2766768B2 (ja) バーコードデコーダのデコード方法
JP3711725B2 (ja) 画像認識装置
JP2810514B2 (ja) バーコード読取り装置およびその検査方法
JPS62128380A (ja) 文字・バ−コ−ド読取装置
JP2953143B2 (ja) バーコード読取装置およびバーコード読取方法
JP3329969B2 (ja) バーコード読取方法およびバーコード読取装置