JP4096434B2 - バーコードイメージ検出装置 - Google Patents

バーコードイメージ検出装置 Download PDF

Info

Publication number
JP4096434B2
JP4096434B2 JP37632798A JP37632798A JP4096434B2 JP 4096434 B2 JP4096434 B2 JP 4096434B2 JP 37632798 A JP37632798 A JP 37632798A JP 37632798 A JP37632798 A JP 37632798A JP 4096434 B2 JP4096434 B2 JP 4096434B2
Authority
JP
Japan
Prior art keywords
white
black
bar
output
bar code
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
Application number
JP37632798A
Other languages
English (en)
Other versions
JP2000187703A (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.)
Pentel Co Ltd
Original Assignee
Pentel 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 Pentel Co Ltd filed Critical Pentel Co Ltd
Priority to JP37632798A priority Critical patent/JP4096434B2/ja
Publication of JP2000187703A publication Critical patent/JP2000187703A/ja
Application granted granted Critical
Publication of JP4096434B2 publication Critical patent/JP4096434B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、バーコードを光/電気量変換し、各々の白バーおよび黒バーの幅を検出するバーコードイメージ検出装置に関する。
【0002】
【従来の技術】
従来、バーコードイメージ検出装置において、バーコードを構成する白バーおよび黒バーの判別を行うには、バーコードスキャナの回路のみで構成するにせよ、ソフトウエアによる処理を加えるにせよ、次のように行っていた。まずバーコードの白バーおよび黒バーのパターンを明暗情報として電気信号に変換する。反射光を利用すれば、白バーに対する信号が黒バーに対する信号よりも大きいので、前記バーコードの白バーおよび黒バーを表す電気量の間に閾値を設定して、バーコーのパタ−ンの明暗情報としての信号が閾値よりも大きいか小さいかによって白バーか黒バーかを検出する。また、あるバーコードイメージ検出装置においては、白バーと黒バー対して異なる閾値を設定する方法を採るものも知られている。そして、白および黒の連続する時間を測定し、バーの幅の情報としてメモリ内に蓄え、バーコードをデコードする装置やソフトウエアに受け渡していた。
【0003】
【発明が解決しようとする課題】
上述の方法では、読み取るバーコードの細さや印刷状態などによって、鮮明な信号が得られず、特に細いバーに対する信号が上や下に偏って、閾値を超えることができないようなときには、白黒を判別することができない。図5にそのような信号の例を示す。バーコード50を読み取り、比較的鮮明な信号51に対し、細いバーに対する信号が上や下に偏った信号52では、閾値53のみから白黒を判別することができない。
【0004】
また、ソフトウエアにより処理をする場合には、バーコードのパターン全体の信号をA/D変換してメモリに蓄え、その後に白黒判別を行うならば、前後のデータを調べることによって閾値を調整し、白黒判別を行えると考えられる。しかしバーの幅の情報でなく、信号自体を保持しておくには大量のメモリが必要になる上、逆に搭載するメモリの量によって一度に読むことのできるバーコードの長さが制限されてしまうことも考えられる。
【0005】
【課題を解決するための手段】
本発明は如上の問題点に鑑みてなされたものであり、バーコードを照明する発光素子と、前記バーコードからの反射光を受光し光/電気量変換する受光素子と、該受光素子の出力を増幅する増幅器と、該増幅器の出力を入力するA/D変換器と、該A/D変換器の出力を入力し前記バーコードの各バーの白黒を判別して幅を検出するマイクロプロセッサとから成り、該マイクロプロセッサが前記A/D変換器の出力の、前記バーコードの白バーにおける最大値からの変化量および黒バーにおける最小値からの変化量によってstyle='text-underline:black'>白黒の仮判別を行い、白バーの仮判別ごとに更新する最小白レベルと、黒バーの仮判別ごとに更新する最大黒レベルの中間に設定した閾値を用いて、白バーの仮判別後に、前記A/D変換器の出力が前記閾値を下回った場合、下回るまでは直前の白バーに含まれると判断して白バーの判別を確定し、黒バーの仮判別後に、前記A/D変換器の出力が前記閾値を上回った場合、上回るまでは直前の黒バーに含まれると判断して黒バーの判別を確定することを特徴とするバーコードイメージ検出装置を提案するものである。
【0006】
【発明の実施の形態】
本装置は、バーコードの白黒を読み取るにあたって、マイクロプロセッサによるソフトウエア処理により、閾値と、信号の最大値および最小値からの変化量とを利用して、十分に白黒を再現していないような信号に対しても白黒判別をしてバーの幅の情報に変換するバーコードイメージ検出装置である。
【0007】
【実施例】
以下、本発明の詳細を、添付図面を参照して説明する。図1は本装置の電気的構成概要図である。本実施例では、ペン型のバーコード読み取り装置であって、ペン先(図示せず)でバーコード1を走査するとそれを読み取り、液晶などの組み込まれた表示装置10に読み取った結果を表示するような装置を例に説明する。
【0008】
本実施例による装置の動作を説明する。電源2(+V)からの電源供給により、定電流源3が発光素子4(発光ダイオードなど)に一定電流を供給する。すると発光素子4は光を放射し、バーコード1を照明する。発光素子4とバーコード1との間には通常レンズや導光体などの光学部材(図示せず)があり、発光素子4の放射光を効率よくバーコード1の印刷面に伝達する。受光素子5(フォトトランジスタ、CCDラインセンサなど)は発光素子4が照明したバーコード1からの反射光の一部を受光し、光/電気量変換を行う。受光素子5とバーコード1との間にはレンズや導光体などの光学部材(図示せず)があり、反射光を効率よく受光素子5に伝達すると共に、バーコード1を読み取る解像度を高くしている。受光素子5の出力電流は、バーコード1の白/黒の変化に応じて変化する。本実施例ではペン型のバーコード読み取り装置であるので、ペン先でバーコード1を走査してその白/黒パターンを検出する。また、詳細は述べないが、装置がペン型でなく、ラインセンサを用いる場合(CCDラインセンサもしくは振動ミラーなど)は、バーコード1を電気的もしくは機械光学的に走査して、バーコード1の白/黒パターンを検出することができる。
【0009】
演算増幅器7は受光素子5の出力電流を増幅する。A/D変換器8は増幅された信号を入力とし、A/D変換してデジタル値化し、それをマイクロコンピュータ9に入力する。マイクロコンピュータ9は信号の白黒判別を行い、その後バーコードの切り出しおよびデコードを行って、結果を表示装置10に表示する。
【0010】
マイクロコンピュータ9に内蔵された読み取り動作のソフトウエア部(図示せず)は、図3のような流れになっている。読み取り動作が始まると(ステップ1)、常に信号をA/D変換し監視する。バーが黒で印刷されているとすると、白のマージンがあるはずなので、それを仮定して最初は白バ−(マ−ジン)と見なし、ステップ2で白から黒へ変化するのを待つ。黒に変化したなら、ステップ3で白の持続時間を白バ−の幅としてメモリに保持し、今度はステップ4で黒から白に変化するのを待つ。ただし後述するように、信号のその後の変化によって、直前の白の幅を補正する。黒から白に変化したなら、ステップ5で黒の持続時間を黒バ−の幅としてメモリに保持し、ステップ2に戻って再び白から黒へ変化するのを待つ。
【0011】
白もしくは黒が一定時間連続した場合には、バーコード1のパターンの読み取りを終了したものと見なし、ステップ6に移って、読み取った白黒の幅のデータを白バーおよび黒バーの幅と見なし、デコードを試みる。データからバーコード部のみを切り出したり、特定の種類のバーコードにデコードする方法については、本発明に本質的な部分ではないので、ここでは述べない。白もしくは黒がどの程度連続したなら読み取りを終了するかについては、読み取るべきバーの太さと、走査する速度とから決めることができる。
【0012】
次に、閾値の決め方を図2および図4を用いて説明する。ペン型のバーコード読み取り装置(図示せず)がバーコード11を走査して、信号12を得たとする。マイクロコンピュータ9は、得られた信号12をA/D変換器8でA/D変換し、このデータを調べる。そのときにマイクロコンピュータ9は閾値13を設定し、信号が閾値13よりも大きくなったり小さくなったりするたびに、白に変化した、もしくは黒に変化した、と見なして白黒を判別する。閾値13自体は、最小白レベル16と、最大黒レベル15との中間に設定する。幅の広い白バーに対しては、信号は白レベル14まで達するが、幅の狭い白バーに対しては、信号は白レベル14まで達せず、それよりも小さくなる。その最小値を保持し、最小白レベル16と呼ぶ。ソフトウエアは、最小白レベル16と最大黒レベル15を監視して更新し、どちらかが更新されたなら閾値13をそれらに合わせて更新する。読み取り動作を始めてから初めて白から黒に変化するときは、最大黒レベルが不明であるので、閾値13を、予め白レベル14から一定量下がったところに設定しておく。すると、結果として出力16を得るため、それぞれの持続時間を測定して幅を得ることができる。
【0013】
ところが、読み取るバーコードが細すぎたり、印刷が不鮮明な場合には、得た信号が17に示すようであったとする。このとき最小白レベル18があまりに小さいために、その時点での閾値19を超えられなかったとすると、その白バーのデータを取り損ねてしまうため、模式的にその後閾値を更新しなかったとすると、正しくない出力20を得てしまう。これを解決するために、図4に示すような判別方法を用いる。
【0014】
図4では、白から黒に変化するのを調べるステップ2の内容を示す。ステップ9で持続時間を測定するためのタイマをリセットする。次にステップ10で信号のA/D値を取得する。得たA/D値をステップ15で直前の値と比較し、A/D値が上昇中であったらステップ16で現在連続中の白における最大値を更新する。ステップ17でA/D値を閾値と比較し、閾値よりも高かったら、その時点で実質的に白バーに入ったものと判断して、それ以前は実は黒バーであったと判断し直し、ステップ18でそこまでの持続時間を直前の黒の持続時間に繰り込んでそれを補正する。そしてステップ19でタイマを改めてリセットする。一方、ステップ17においてA/D値が依然閾値よりも小さい場合は、ステップ20において現在の白の持続時間を評価し、それが既定の時間よりも短い場合には再びステップ10でA/D値を取得してループを繰り返す。
【0015】
ステップ20において、白の持続時間が既定値よりも長い場合には、タイムアウトと判断して白黒判別を終了する。一旦ステップ17において、A/D値が初めて閾値を超えた後は、A/D値が上昇中であっても再び直前の黒の持続時間を補正することはしない。その後A/D値が上昇から下降に転じると、ステップ15における判断からステップ21で、A/D値が現在連続中の白における最大値よりもある既定の値だけ下降したならば、一応白から黒に変化したと仮判別し、ステップ22でその白における最大値が最小白レベルよりも小さかったらその値でもって更新する。そしてステップ3で白の幅を記憶し、黒に移る。ステップ21でA/D値が既定値だけ下降しないうちは、ステップ20でタイムアウトの判断をし、ループを続行する。
【0016】
A/D値が現在連続中の白における最大値よりもどれだけ下降したら黒に変化したと見なすかを決定する既定値は、ノイズよりも十分に大きく、白レベルと黒レベルとの差の半分よりも十分に小さく、また最小白レベルと黒レベル、および最大黒レベルと白レベルの差よりも十分に小さいような値を実験的に調べることで決めることができる。またステップ20におけるタイムアウトの判断時間は、読み取るべきバーの太さと、走査する速度とから決めることができる。
【0017】
持続時間の情報を後から補正するため、信号全体の値をメモリに保持することなく、白と黒を切り換えた後で、切り換え後の情報をもとに以前の値を補正することができる。従って、大量のメモリを必要としない構成になっている。このようにすると、信号17に対して出力20ではなく、出力21を得ることができる。出力21はいわば出力20を補正したものであって、信号12に対して出力16を得たときほど正しい結果ではない。補正したために、白黒の幅は多少実際の幅とは異なってしまう。しかし、本装置による白黒判別は、鮮明な信号が得られないときにも白黒を判別しようとするものであって、それによる誤差は、ある程度までならバーコード自体のコーディングルールによって、デコード時に回復することが可能である。
【0018】
【発明の効果】
本発明は以上のような構成となっているので、バーコードのバーの太さや印刷状態などによって、十分に白黒を再現できないような信号に対しても、白黒判別を行ってバーの幅の情報に変換することができ、従ってバーコードの読み取り率が向上した。
【図面の簡単な説明】
【図1】 実施例の電気的構成図
【図2】 バーコードパターンと読み取り信号図
【図3】 白黒判別部のフローチャート
【図4】 白判断部のフローチャート
【図5】 従来例
【符号の説明】
1 バーコード
2 電源
3 定電流源
4 発光素子
5 受光素子
6 基準電圧源
7 演算増幅器
8 A/D変換器
9 マイクロコンピュータ
10 表示装置
11 バーコードパターン
12 バーコード読み取り信号
13 閾値
14 白レベル
15 最大黒レベル
16 出力
17 得た信号
18 最小白レベル
19 閾値
20 正しくない出力
21 正しい出力

Claims (1)

  1. バーコード検出装置であって、バーコードを照明する発光素子と、前記バーコードからの反射光を受光し、受光した光量を光/電気量変換する受光素子と、該受光素子の出力を増幅する増幅器と、該増幅器の出力を入力するA/D変換器と、該A/D変換器の出力を入力し、前記バーコードの各バーの白黒を判別して、前記バーコードの白黒の幅を検出するマイクロプロセッサとから成り、該マイクロプロセッサが前記A/D変換器の出力の、バーコードの白バーにおける最大値からの変化量および黒バーにおける最小値からの変化量によってstyle='text-underline:black'>白黒の仮判別を行い、白バーの仮判別ごとに更新する最小白レベルと、黒バーの仮判別ごとに更新する最大黒レベルの中間に設定した閾値を用いて、白バーの仮判別後に、前記A/D変換器の出力が前記閾値を下回った場合、下回るまでは直前の白バーに含まれると判断して白バーの判別を確定し、黒バーの仮判別後に、前記A/D変換器の出力が前記閾値を上回った場合、上回るまでは直前の黒バーに含まれると判断して黒バーの判別を確定することを特徴とするバーコードイメージ検出装置。
JP37632798A 1998-12-22 1998-12-22 バーコードイメージ検出装置 Expired - Fee Related JP4096434B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP37632798A JP4096434B2 (ja) 1998-12-22 1998-12-22 バーコードイメージ検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP37632798A JP4096434B2 (ja) 1998-12-22 1998-12-22 バーコードイメージ検出装置

Publications (2)

Publication Number Publication Date
JP2000187703A JP2000187703A (ja) 2000-07-04
JP4096434B2 true JP4096434B2 (ja) 2008-06-04

Family

ID=18506959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP37632798A Expired - Fee Related JP4096434B2 (ja) 1998-12-22 1998-12-22 バーコードイメージ検出装置

Country Status (1)

Country Link
JP (1) JP4096434B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7568628B2 (en) 2005-03-11 2009-08-04 Hand Held Products, Inc. Bar code reading device with global electronic shutter control
US7770799B2 (en) 2005-06-03 2010-08-10 Hand Held Products, Inc. Optical reader having reduced specular reflection read failures

Also Published As

Publication number Publication date
JP2000187703A (ja) 2000-07-04

Similar Documents

Publication Publication Date Title
US5308962A (en) Reduced power scanner for reading indicia
US7679605B2 (en) Optical mouse with barcode reading function
JP4096434B2 (ja) バーコードイメージ検出装置
JP4154815B2 (ja) バーコード読み取り装置
JP2000306036A (ja) 光学読み取り装置、及び光学読み取り方法、並びに光学読み取りシステム
JP3774797B2 (ja) バ−コ−ドイメ−ジ検出装置
JP4099854B2 (ja) バーコード読取装置
JP2009135730A (ja) 画像読取装置
KR100241991B1 (ko) 화상판독장치
JP2006254367A (ja) 画像読取装置及び画像形成装置
JP4622992B2 (ja) 光学情報読取装置
JP2008263292A (ja) 画像読み取り装置
US8059168B2 (en) System and method for scene change triggering
US20020075526A1 (en) Image reading apparatus for optically reading an image
JP3711725B2 (ja) 画像認識装置
JP4656214B2 (ja) 画像読取装置、及びイメージセンサの判別方法
JPS6278973A (ja) 画像読み取り装置
JP2009005289A (ja) 画像読取装置及びイメージセンサの判別方法
JP2001069317A (ja) 画像読取装置
KR19980077968A (ko) 스캐너의 오염 판별방법 및 장치
JPS6337775A (ja) フアクシミリの画像検出方式
JP3518014B2 (ja) バーコード読取装置
JP2007143032A (ja) 画像読取装置、画像形成装置、画像読取装置制御方法及びプログラム
JPH0530303A (ja) 画像読取装置
JP4475285B2 (ja) 画像読取装置、画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070608

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080303

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110321

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120321

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120321

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130321

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130321

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140321

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees