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