JP3282606B2 - バーコード読取装置、方法及びプログラムを記憶した記憶媒体 - Google Patents
バーコード読取装置、方法及びプログラムを記憶した記憶媒体Info
- Publication number
- JP3282606B2 JP3282606B2 JP06564999A JP6564999A JP3282606B2 JP 3282606 B2 JP3282606 B2 JP 3282606B2 JP 06564999 A JP06564999 A JP 06564999A JP 6564999 A JP6564999 A JP 6564999A JP 3282606 B2 JP3282606 B2 JP 3282606B2
- Authority
- JP
- Japan
- Prior art keywords
- mask
- variance
- value
- pixel
- image signal
- 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
Description
置、方法及びこの装置、方法で用いられるプログラムを
記憶した記憶媒体に関するものである。
置では、以下の方法が多く用いられている。その一つの
方法は、図9に示すように、バーコードを読み取った信
号の走査方向について何らかのエンベロープを求め、こ
のエンベロープを基準にローカル二値化のための閾値算
出を行う方式である。
に示すように、縦・横各々3画素の平均値からレベルの
高い方を閾値とする二値化方法である。
従来方法では、次のような問題があった。第1の問題
は、バーコードの方向により求められた閾値の適正さが
保証されないことにある。その理由は、図9のようにバ
ーコードを横切る方向に走査する場合は、良好な結果が
得られるが、図11に示すようにバーコードと平行な方
向に走査する場合は、バーコード部分の画素レベルに引
きずられて、最適な閾値が求められないことがあるから
である。
値では、この閾値がバーコード部分と下地部分との中間
にあっても、良好に二値化できる保証がなかったことで
ある。このため、下地色・下地レベルの変動、バーコー
ド印刷の濃度変動があった場合は、エンベロープから閾
値を求めるパラメータの再調整が必要となっていた。そ
の理由は、下地・バーコード部分を弁別せずに単純にエ
ンベロープを求めていたからである。
地、バーコード部分の両方のエンベロープを求め、その
中間を閾値にするような方法を行ったとしても、走査が
バーコードと平行な場合は、バーを非常に長く横切るこ
とになるため、エンベロープ自体が安定した求めること
ができない(非常に強いローパス性の処理を行わないと
バーの長さに対応できない)。
に対しては良好に二値化できないという第3の問題があ
った。その理由は、この方法は、線の細い文字検出用の
二値化方法であり、バーコードに対しては、その強い微
分特性から適していないためである(幅=1画素、長さ
=3画素では、微分特性が強すぎ)。
黒判別を行いながら閾値を更新していく方法が用いられ
ているが、この方法でも、第4の問題点として、そもそ
も白黒判別をどうやって安定に行うかが問題となってい
る。その理由は、バーと走査が平行な場合、バー上の緩
やかなレベル変化と、通常の下地レベルのレベル変化と
があるため、白黒判別を安定して行うことができないた
めである。
る公知文献とその概略的な説明及び問題点を挙げてお
く。
05号)「二値化処理装置」 本発明に類似した先行発明であり、二値化する画素を中
心として、縦方向両隣、横方向両隣の合計5画素の画素
レベル平均値を二値化閾値とするものである。しかし、
この方法は強い微分特性を用いて濃度境界を抽出するも
のであり、バーコード二値化には適さない。
4号)「二値化回路」白黒判定を行いながら、平均値を
求めて閾値を決定。この白黒判定部分で、下地の影響を
受ける。
380号公報、特願昭60−182014号)「原稿読
取装置」 ・特開平10−91717号公報(特願平8−2467
35号)「バーコード認識装置」 縦・横への処理を行う場合、通常は上記2発明のように
画像全体もしくは部分領域のX/Yへの二値もしくは多
値射影を行うものであり、個別の画素の周辺X、Y各々
の濃度分布の統計指標を用いるものではない。
84号公報、特願平1−330859号)「バーコード
読取方式」 黒バーのピーク値で閾値を追従補正。これはピークを用
いた包絡線(エンベレープ)を求め、これからデジタル
スライスを求める方法。
511号)「バーコード読取回路」 アナログ的な平滑化(平均)を行った信号との差を用い
ることから包絡線(エンベレープ)にオフセットを与え
て閾値を生成する標準的なアナログスライスのバリエー
ションの一つ。
773号)「バーコード読取装置の浮動スライス方式」 デジタル的な平滑化(中位値)を行った信号との差を用
いることから包絡線(エンベレープ)にオフセットを与
えて閾値を生成する標準的なデジタルスライスのバリエ
ーションの一つ。
033号)「ダイナミツクスレシホールド検出器」 アナログ的な平滑化(中位値)を行った信号との差を用
いることから包絡線(エンベレープ)にオフセットを与
えて閾値を生成する標準的なアナログスライスのバリエ
ーションの一つ。
線(エンベレープ)からスライスを求める方式であり、
走査方向と黒バーの線が垂直である場合でないと性能が
発揮されない。
7837号)「半導体基板用バーコード読取装置」 欠陥の少ないバーコードの場合は面積判定や、面積ベー
スの閾値設定が可能であるが、郵便物では印字品質上困
難。また、処理時間も要する。
されたもので、画像中のバーコードシンボルを読み取る
場合において、バーコードシンボルの黒(白)バー及び
下地の画素レベル変動にかかわらず、黒(白)バーと下
地とを分離する閾値を容易に決定することにより、高い
認識率を実現することを目的としている。
めに、本発明によるバーコード読取装置においては、入
力画像信号における画素を中心に縦・横2方向について
それぞれマスクを設け、各マスク内における平均、分散
もしくは総分散を算出し、分散値もしくは総分散値の大
きい方のマスクの平均値を画像信号の二値化用の局所閾
値とする演算手段を設けている。
=(最大バー幅×1〜6倍+1画素)の大きさを有する
ものとしてよい。
散値をもとに、縦・横方向とも画素レベルが一様と判断
された画素については、二値化対象外としてよい。
ら閾値を求めたかに応じて、2面の二値画像に二値化結
果を格納することで、縦バーコード、横バーコードを別
々かつ同時に二値化する二値化手段を設けてよい。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける平均、及び平均値からの絶対差分和、もしくは計
算の簡単な分散代替値を算出し、平均値からの絶対差分
和、もしくは計算の簡単な分散代替値の大きい方のマス
クの平均値を画像信号の二値化用の局所閾値とする演算
手段を設けている。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける分散もしくは総分散を算出し、分散値もしくは総
分散値の大きい方のマスク内濃度ヒストグラムから群間
分散最大化法で閾値を求め、求めた閾値を画像信号の二
値化用の局所閾値とする演算手段を設けている。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける分散もしくは総分散を算出し、分散値もしくは総
分散値の大きい方のマスク内濃度ヒストグラムから、白
領域、黒領域について各最小バーコード幅から計算した
バー部分の存在率を設定したp−タイル法を併用した自
動閾値決定方法を用いて閾値を求め、求めた閾値を画像
信号の二値化用の局所閾値とする演算手段を設けてい
る。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれ幅=1〜3画素、長さ=(最
大バー幅×1〜6倍+1画素)のマスクを設け、そのマ
スクの角度を逐次変化させ、最大の分散もしくは最大の
総分散となる角度でのマスク内画素レベルの分布から閾
値を求め、求めた閾値を画像信号の二値化用の局所閾値
とする演算手段を設けている。
置においては、入力画像信号における画素を中心にそれ
ぞれ幅=1〜3画素、長さ=(最大バー幅×1〜6倍+
1画素)のマスクを、右→左への横、上→下への縦、右
上→左下への45度、左上→右下への45度の各方向に
4つ設け、4つのマスク内で分散もしくは総分散が最大
のマスクから閾値を求め、求めた閾値を画像信号の二値
化用の局所閾値とする演算手段を設けている。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける全変動、中位値を算出し、全変動の大きいマスク
の中位値を画像信号の二値化用の局所閾値とする演算手
段を設けている。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける全変動を算出し、全変動の大きいマスク内につい
て、各種の二値化閾値算出方法を適用して画像信号の二
値化用の局所閾値を求める演算手段を設けている。
置においては、入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける全変動を算出し、全変動の小さい方のマスク内は
一様な領域1とし、全変動の大きい方のマスク内は一様
な領域1・2に分割して、縦・横マスク領域全体に対し
て制約条件付きで各種の二値化閾値算出方を適用して、
画像信号の二値化用の局所閾値を求める演算手段を設け
ている。
置においては、入力画像信号における注目画素を中心に
縦・横方向に幅=1〜5画素、長さ=(最大バー幅×1
〜6倍)+1画素のマスクを設定し、各マスク内におけ
る分散もしくは総分散を求め、分散値もしくは総分散値
の大きなマスク内から求めた閾値を画像信号の二値化用
の局所閾値を求める演算手段を設けている。
は、各演算手段が行う手順であり、本発明によるプログ
ラムを記憶した記憶媒体は、各演算手段が実行する処理
のプログラムを記憶している。
と共に説明する。本実施の形態では、下地と黒バーの中
間レベルが最適な二値化閾値であるという観点から、縦
または横方向マスク内分散値の大きいマスクの平均値を
二値化閾値とすることで、安定したバーコード二値化用
閾値の決定を実現するものである。
ーコード読取装置を示すブロック図である。まず、概略
的に説明する。図1において、二値化処理部2は画像入
力装置1よりバーコード画像を受け取り、縦・横方向マ
スク平均算出手段21、縦・横方向マスク(総) 分散算
出手段22において、注目画素を中心に縦・横方向2つ
のマスク内の平均(それぞれAv、Ah)、分散(それ
ぞれVVv、VVh)もしくは総分散(それぞれTV
v、TVh)を算出する。
地を横切っている場合、マスク内の分散値もしくは総分
散値(マスク内の偏差を示す指標)は大きくなり、ま
た、そのときの平均値は黒(白)バー画素レベルと下地
画素レベルとの中間となる。そこで、分散大マスク選択
手段23により分散値もしくは総分散値の大きいマスク
を選択し、選択されたマスクのマスク内平均値を閾値選
択手段24により選択する。このとき、選択された平均
値は、マスク内の領域に対する適切な二値化レベルとな
っているため、この平均値を閾値として画像二値化手段
25により二値化を行う。
(白)バー部分と下地部分の中間画素レベルを設定でき
るため、バーコードシンボルの黒(白)バーおよび下地
画素レベルの変動にかかわらず、安定してバーコードシ
ンボルを二値化検出することが可能となる。
る。図1において、本装置は、ビデオカメラ・スキャナ
等の画像入力装置1と、前処理としてバーコード画像を
二値化する二値化処理部2を主構成として、これにバー
コードシンボルの位置、傾きを検出・補正する位置・傾
き補正部3、バーコードシンボルを走査し、バーコード
情報を復元する走査・デコード処理部4、ディスプレイ
装置や出力回線、印刷装置等の結果出力装置5が必要に
応じて追加される。
算出手段21、縦・横方向マスク(総) 分散算出手段2
2、分散大マスク選択手段23、閾値選択手段24、画
像二値化手段25を備えている。
像入力装置1より入力されたバーコード画像の、注目画
素を中心とした縦・横方向マスク内の平均値を算出す
る。
は、画像入力装置1より入力されたバーコード画像の、
注目画素を中心とした縦・横方向マスク内の分散値もし
くは総分散値を算出する。
マスク(総)分散算出手段22により算出された縦及び
横方向マスク内の分散値もしくは総分散値において、分
散値もしくは総分散値の大きいマスク、即ち、縦・横方
向のいずれかのマスクを選択する。
段23で選択された縦もしくは横方向マスクの、マスク
内平均値を選択する。
で選択されたマスク内平均値を閾値として注目画素の二
値化を行う。
明する。画像入力装置1によって採取されたバーコード
画像は、二値化処理部2に供給される。ここで、縦・横
方向マスク平均算出手段21は、図2に示すような注目
画素を中心とする最大バー幅の1倍以上の長さを持つ縦
・横方向のマスクを設定する(ここでは、説明簡略のた
めマスク幅は1とする)。
方向マスク内平均値Ahを次式(1)で算出する。ここ
で、位置(x,y)における画素レベルをL(x,y)
とする。算出位置は(X、Y)、以下ではAv(X、
Y)、Ah(X、Y)を略記。 M=2m+1,i=−m〜+m N=2n+1,j=−n〜+n
長M=9、横方向マスク長N=9のマスク内平均値A
v、Ahは、Av=10.0、Ah=38.0となる
(必ずしもM=Nである必要はない)。
段22は、図2に示すような注目画素を中心とする最大
バー幅の1倍以上の長さを持つ縦・横方向のマスクを設
定する(ここでは、説明簡略のためマスク幅は1とす
る)。
横方向マスク内分散値VVh、もしくは縦方向マスク内
総分散値TVv、横方向マスク内総分散値TVhを次式
(2)、(3)で算出する。ここで、において、算出位
置は(X、Y)、以下ではTVv(X、Y)、TVh
(X、Y)を略記。M=Nの場合、(3)式のような総
分散値を用いることもある。
長M=9、横方向マスク長N=9のマスク内分散値はV
Vv=4.8、VVh=594.3、総分散値はTVv
=38.0、TVh=4754.0となる。
マスクの分散値もしくは総分散値から、分散大マスク選
択手段23では、分散値もしくは総分散値の大きいマス
クを選択する。例えば、図2の例における縦・横方向マ
スク内分散値はそれぞれVVv=4.8、VVh=59
4.3、総分散値はTVv=38.0、TVh=475
4.0であるから、分散値もしくは総分散値の大きいマ
スク、即ち、横方向マスクが選択される。
ク選択手段23により選択されたマスクのマスク内平均
値を選択し、画像二値化手段25に渡す。図2の例にお
いては、横方向マスクが選択されたため、Ahが画像二
値化手段25へと渡される。
4から得られたマスク内平均値を閾値として、注目画素
の二値化を行う。図2の例において、選択された横方向
マスクの平均値はAh=38.0、注目画素L(X,
Y)=7であるため、注目画素は閾値以下であるから黒
画素に二値化される。
ド二値画像からバーコードシンボルの位置、及びスター
トシンボルからストップシンボル方向への傾きを検出
し、補正を行う。
ーコードシンボルに対して走査を行い、バーコード情報
の復元処理、即ち、デコード処理を行う。このデコード
処理が全て終了した時点で、バーコードシンボル読取結
果を結果出力装置5に出力する。
参照して説明する。図3の構成は、二値化処理部6が図
1の二値化処理部2における縦・横方向マスク平均算出
手段21が横方向マスク平均算出手段61に置き換わっ
た点、縦・横方向マスク(総) 分散算出手段22、分散
大マスク選択手段23、閾値選択手段24が削除された
点で図1と異なる。
手段61、画像二値化手段25を備えている。横方向マ
スク平均算出手段61は、画像入力装置1より入力され
たバーコード画像の、注目画素を中心とする横方向マス
ク内の平均値を算出する。
て説明する。図3の画像入力装置1、画像二値化手段2
5、位置・傾き補正部3、走査・デコード部4、結果出
力装置5の動作は、図1の場合と同一のため、説明は省
略する。
ド画像は、二値化処理部6に供給される。ここで、横方
向マスク平均算出手段61は、図4に示すように注目画
素を中心とする最大バー幅の1倍画素以上の長さを持つ
横方向マスクを設定する。次に、前記式(1)により横
方向マスク内平均値Ahを算出する。
スク平均算出手段61によって得られた横方向マスク内
平均値Ahを二値化閾値として、注目画素の二値化を行
う。
向に平行して並べられているバーコードシンボルに対し
て有効であり、バーコードシンボルの黒(白)バー方向
が既知である場合に効果を発揮する。また、図1の第1
の実施の形態と比較して、縦方向平均及び縦・横方向マ
スク(総) 分散を算出する処理を省くことができるた
め、処理簡略化による処理時間短縮を実現することがで
きる。
向が横方向に平行して並べられている場合、図3の横方
向マスク平均算出手段61を縦方向マスク平均算出手段
に置換するだけで、黒(白)バー並びが横方向のバーコ
ードシンボルにも簡単に対応できる。
図5を参照して説明する。図5の構成は、二値化処理部
7において、図1の二値化処理部2の構成における分散
大マスク選択手段23が削除された点、分散選択・判定
手段71が追加された点で図1と異なる。
算出手段21、縦・横方向マスク(総) 分散算出手段2
2、分散選択・判定手段71、閾値選択手段24、画像
二値化手段25を備えている。
スク(総) 分散算出手段22より算出された、縦及び横
方向マスク内の分散値もしくは総分散値を受け取り、分
散値もしくは総分散値の大きいマスクを選択する。ここ
で、選択されたマスク内分散値もしくは総分散値が十分
に大きい場合は、選択されたマスクを閾値選択手段24
に伝える。逆に、選択されたマスク内分散値もしくは総
分散値が小さい場合は、注目画素を二値化対象外とする
ような信号を閾値選択手段24に伝える。
参照して説明する。図5の画像入力装置1、縦・横方向
マスク平均算出手段21、縦・横方向マスク(総) 分散
算出手段22、閾値選択手段24、画像二値化手段2
5、位置・傾き補正部3、走査・デコード部4、結果出
力装置5の動作は、図1の場合と同一のため、説明は省
略する。
ド画像は、二値化処理部7に供給される。ここで、縦・
横方向マスク平均算出手段21において、注目画素を中
心とする縦・横方向マスク内の平均値Av、Ahが算出
される。また、縦・横方向マスク(総)分散算出手段2
2では、注目画素を中心とする縦・横方向マスク内の分
散値もしくは総分散値が算出される。
方向マスク(総) 分散算出手段22より算出された分散
値もしくは総分散値を受け取り、分散値もしくは総分散
値の大きいマスクを選択する。ここで、選択されたマス
ク内の分散値もしくは総分散値が十分大きい場合は、例
えば図6のように横方向マスクが黒(白)バーを横切る
ように設定されているような場合に、マスク内の分散
値、総分散値は十分大きくなり、そのときのマスク内平
均値は、下地画素レベルと黒バー画素レベルの中間とな
り、最適な閾値となる。
散値が小さい場合、例えば図7のように縦・横方向マス
クともに黒(白)バーを横切るように設定されていない
場合は、マスク内の分散値、総分散値は小さくなり、そ
のときの平均値は下地画素レベルとほぼ同一になる。そ
のため、この平均値を二値化の閾値として使用するとバ
ーコードシンボル以外の下地に多くのノイズが発生し、
バーコード読取の妨げとなる。そこで、選択されたマス
ク内の分散値もしくは総分散値が小さい場合は、分散選
択・判定手段71は、注目画素を二値化対象外とするよ
うな信号を発生する。
シンボル以外の下地部分でノイズが発生しないため、バ
ーコードシンボル以外のノイズ除去に必要とする処理が
軽減でき、かつノイズによるバーコード読取率の低減を
防ぐことができる。
施の形態を要約的に説明する。 (1)一番単純な閾値決定方法(その1) バーコード検出用の閾値を算出するにあたり、画素を中
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における平均、分散もしくは総分散を算出し、分散値
もしくは総分散値の大きいマスクの平均値を局所閾値と
する。
心に縦・横方向に、幅=1〜5画素、長さ=(最大バー
幅×1〜6倍+1画素)の細長い2つのマスクを設け、
各々のマスク内における分散もしくは総分散を求め、分
散値もしくは総分散値の大きなマスク内から求めた閾値
を局所閾値とする。
張 上記(2)において、バーコード検出用の閾値を算出す
るにあたり、画素を中心に縦・横2方向に幅=1〜5画
素、長さ=(最大バー幅×1〜6倍+1画素)の細長い
2つのマスクを設け、各々のマスク内における平均、分
散もしくは総分散を求め、縦・横とも一様と判断された
画素については、二値化対象外とする機能を有する。
張(その2) 上記(2)において、バーコード検出用の閾値を算出す
るにあたり、画素を中心に縦・横2方向に幅=1〜5画
素、長さ=(最大バー幅×1〜6倍+1画素)の細長い
2つのマスクを設け、各々のマスク内における平均、分
散もしくは総分散を求め、分散値もしくは総分散値の大
きいマスクのマスク内の平均値に定数を加算したものを
局所閾値とすることで、下地が一様な場合の誤二値化を
防ぐ機能を有する。
拡張 上記(2)において、バーコード検出用の閾値を算出す
るにあたり、画素を中心に縦・横2方向に幅=1〜5画
素、長さ=(最大バー幅×1〜6倍+1画素)の細長い
2つのマスクを設け、縦・横方向いずれかのマスクから
閾値を求めたかに応じて、2面の二値画像に二値化結果
を格納することで、縦バーコード、横バーコードを別々
かつ同時に二値化する機能を有する。
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における平均および平均値からの絶対差分和〔下記式
(4)(5)参照〕、もしくは計算の簡単な分散代替値
を算出し、平均値からの絶対差分和、もしくは計算の簡
単な分散代替値の大きいマスクの平均値を局所閾値とす
る。
横方向絶対差分和である。また、M=Nの場合に式
(5)を用いることがある。
の閾値決定方法 バーコードシンボルのバー並びが既知である場合に、バ
ー方向に対して垂直かつ幅=1〜5画素、長さ=(最大
バー幅×1〜6倍+1画素)の細長いマスクを設定し、
マスク内から求めた閾値を局所閾値とする。
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における分散もしくは総分散を算出し、分散値もしく
は総分散値の大きいマスクのマスク内濃度ヒストグラム
から群間分散最大化法で閾値を求め、求めた閾値を局所
閾値とする。
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における分散もしくは総分散を算出し、分散値もしく
は総分散値の大きいマスクのマスク内濃度ヒストグラム
から、白領域、黒領域について各最小バーコード幅から
計算したバー部分の存在率を設定したp−タイル法を併
用した自動閾値決定方法を用いて閾値を求め、求めた閾
値を局所閾値とする。
心に、幅=1〜3画素、長さ=(最大バー幅×1〜6倍
+1画素)の細長いマスクを設け、そのマスクの角度を
逐次変化させ、最大の分散もしくは最大の総分散となる
角度でのマスク内画素レベルの分布から閾値を求め、求
めた閾値を局所閾値とする。
心に、幅1〜3画素、長さ=(最大バー幅×1〜6倍+
1画素)の細長いマスクを右→左への横、上→下への
縦、右上→左下への45度、左上→右下への45度の4
つのマスクを設け、4つのマスク内で分散もしくは総分
散が最大のマスクから閾値を求め、求めた閾値を局所閾
値とする。
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における全変動、中位値を算出し、全変動の大きいマ
スクの中位値を局所閾値とする。〔分散(=2乗偏差
和)より、全変動(=絶対値偏差和)の方が、非均一性
の検出能力がやや劣るが、計算は容易。また、一方、平
均より中位値の算出計算量が多いが、統計的には安
定〕。
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における全変動を算出し、全変動の大きいマスク内に
ついて、各種の二値化閾値算出方法(「大津の二値
化」、「キトラの二値化」)を適用し、局所閾値を求め
る。
心に縦・横2方向の2つのマスクを設け、各々のマスク
内における全変動を算出し、全変動の小さい方のマスク
内は一様な領域1とし、全変動の大きい方のマスク内は
領域1・2の2つに分割されるとして、縦・横マスク領
域全体に対し、制約条件付きで、各種の二値化閾値算出
方法を適用し、局所閾値を求める。
を中心に縦・横方向に幅=1〜5画素、長さ=(最大バ
ー幅×1〜6倍)+1画素の細長いマスクを設定する。
ただし、この縦・横方向の各々のマスクに注目画素は含
まないとして各々のマスク内における分散もしくは総分
散を求め〔図8及び前記式(1)(2)(3)参照〕、
分散値もしくは総分散値の大きなマスク内から求めた閾
値を局所閾値とする。
(3)において、 M=2m,i=−m〜+m,i≠0 N=2n,j=−n〜+n,j≠0 である。
成されるコンピュータシステムで実現する場合、上記メ
モリは本発明による記憶媒体を構成することになる。こ
の記憶媒体には、上記各実施の形態で説明した動作のた
めの処理を実行するプログラムが格納される。
装置、光ディスク、光磁気ディスク、磁気記録媒体等が
用いられる。
次の効果が得られる。第1の効果は、安定してバーコー
ドシンボル二値化用閾値を決定することができる。その
理由は、設定したマスクが黒(白)バーと下地の両方を
横切っている場合、マスク内の分散値、総分散値は大き
な値を示し、そのときのマスク内平均値は黒(白)バー
と下地の中間画素レベルとなるため、分散値もしくは総
分散値の大きいマスクの平均値を選択することによっ
て、安定してバーコードシンボル二値化用閾値を決定す
ることができるからである。
ることである。その理由は、同一画像内においても場所
によって照明、撮像装置等の条件による下地画素レベ
ル、黒(白)バー画素レベルに違いが発生するが、局所
的に二値化閾値を算出しているため、固定閾値で画像全
体を二値化した場合のようにかすれ、つぶれなどが起き
にくいため、読取率が向上するからである。
にあまり依存しないということである。その理由は、縦
・横方向2つのマスクを十字型に設定することで、バー
コードシンボルの傾き(0度付近、90度付近)のどち
らにもよらず必ずどちらかのマスクがバーを横切るた
め、安定したバーコードシンボルの二値化用閾値が得ら
れるからである。
両方に、安定してそのまま適用できる点である。その理
由は、従来のエンベロープによる二値化方式では、安定
検出のために二値化にヒステリシス特性を持たせてお
り、白→黒と黒→白で異なるエンベロープ特性を用いて
二値化を行っており、このため、黒もしくは白のどちら
かに着目してエンベロープ特性を定める必要があり、両
方に安定して適用できるものではなかったが、本発明で
は、ヒステリシス特性を用いずに二値化できるため、黒
バー、白バー両方を安定に検出することができる。
取装置を示すブロック図である。
取装置を示すブロック図である。
取装置を示すブロック図である。
図である。
場合を示す構成図である。
る構成図である。
る。
ある。
ある。
ある。
Claims (42)
- 【請求項1】 入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける平均、分散もしくは総分散を算出し、分散値もし
くは総分散値の大きい方のマスクの平均値を前記画像信
号の二値化用の局所閾値とする演算手段を設けたことを
特徴とするバーコード読取装置。 - 【請求項2】 前記各マスクは、幅=1〜5画素、長さ
=(最大バー幅×1〜6倍+1画素)の大きさを有する
ことを特徴とする請求項1記載のバーコード読取装置。 - 【請求項3】 前記求められた分散値もしくは総分散値
をもとに、縦・横方向とも画素レベルが一様と判断され
た画素については、二値化対象外とすることを特徴とす
る請求項2記載のバーコード読取装置。 - 【請求項4】 前記求められた分散値もしくは総分散値
の大きいマスク内の平均値に定数を加算することで、マ
スク内画素レベルが一様である場合の誤二値化を防ぐこ
とを特徴とする請求項2記載のバーコード読取装置。 - 【請求項5】 前記縦・横方向いずれかのマスクから閾
値を求めたかに応じて、2面の二値画像に二値化結果を
格納することで、縦バーコード、横バーコードを別々か
つ同時に二値化する二値化手段を設けたことを特徴とす
る請求項2記載のバーコード読取装置。 - 【請求項6】 入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける平均、及び平均値からの絶対差分和、もしくは計
算の簡単な分散代替値を算出し、平均値からの絶対差分
和、もしくは計算の簡単な分散代替値の大きい方のマス
クの平均値を前記画像信号の二値化用の局所閾値とする
演算手段を設けたことを特徴とするバーコード読取装
置。 - 【請求項7】 入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける分散もしくは総分散を算出し、分散値もしくは総
分散値の大きい方のマスク内濃度ヒストグラムから群間
分散最大化法で閾値を求め、求めた閾値を前記画像信号
の二値化用の局所閾値とする演算手段を設けたことを特
徴とするバーコード読取装置。 - 【請求項8】 入力画像信号における画素を中心に縦・
横2方向についてそれぞれマスクを設け、各マスク内に
おける分散もしくは総分散を算出し、分散値もしくは総
分散値の大きい方のマスク内濃度ヒストグラムから、白
領域、黒領域について各最小バーコード幅から計算した
バー部分の存在率を設定したp−タイル法を併用した自
動閾値決定方法を用いて閾値を求め、求めた閾値を前記
画像信号の二値化用の局所閾値とする演算手段を設けた
ことを特徴とするバーコード読取装置。 - 【請求項9】 入力画像信号における画素を中心に縦・
横2方向についてそれぞれ幅=1〜3画素、長さ=(最
大バー幅×1〜6倍+1画素)のマスクを設け、そのマ
スクの角度を逐次変化させ、最大の分散もしくは最大の
総分散となる角度でのマスク内画素レベルの分布から閾
値を求め、求めた閾値を前記画像信号の二値化用の局所
閾値とする演算手段を設けたことを特徴とするバーコー
ド読取装置。 - 【請求項10】 入力画像信号における画素を中心にそ
れぞれ幅=1〜3画素、長さ=(最大バー幅×1〜6倍
+1画素)のマスクを、右→左への横、上→下への縦、
右上→左下への45度、左上→右下への45度の各方向
に4つ設け、4つのマスク内で分散もしくは総分散が最
大のマスクから閾値を求め、求めた閾値を前記画像信号
の二値化用の局所閾値とする演算手段を設けたことを特
徴とするバーコード読取装置。 - 【請求項11】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動、中位値を算出し、全変動の大きいマス
クの中位値を前記画像信号の二値化用の局所閾値とする
演算手段を設けたことを特徴とするバーコード読取装
置。 - 【請求項12】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動を算出し、全変動の大きいマスク内につ
いて、各種の二値化閾値算出方法を適用して前記画像信
号の二値化用の局所閾値を求める演算手段を設けたこと
を特徴とするバーコード読取装置。 - 【請求項13】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動を算出し、全変動の小さい方のマスク内
は一様な領域1とし、全変動の大きい方のマスク内は一
様な領域1・2に分割して、縦・横マスク領域全体に対
して制約条件付きで各種の二値化閾値算出方を適用し
て、前記画像信号の二値化用の局所閾値を求める演算手
段を設けたことを特徴とするバーコード読取装置。 - 【請求項14】 入力画像信号における注目画素を中心
に縦・横方向に幅=1〜5画素、長さ=(最大バー幅×
1〜6倍)+1画素のマスクを設け、各マスク内におけ
る分散もしくは総分散を求め、分散値もしくは総分散値
の大きなマスク内から求めた閾値を前記画像信号の二値
化用の局所閾値を求める演算手段を設けたことを特徴と
するバーコード読取装置。 - 【請求項15】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における平均、分散もしくは総分散を算出し、分散値も
しくは総分散値の大きい方のマスクの平均値を前記画像
信号の二値化用の局所閾値とすることを特徴とするバー
コード読取方法。 - 【請求項16】 前記各マスクは、幅=1〜5画素、長
さ=(最大バー幅×1〜6倍+1画素)の大きさを有す
ることを特徴とする請求項15記載のバーコード読取方
法。 - 【請求項17】 前記求められた分散値もしくは総分散
値をもとに、縦・横方向とも画素レベルが一様と判断さ
れた画素については、二値化対象外とすることを特徴と
する請求項16記載のバーコード読取方法。 - 【請求項18】 前記求められた分散値もしくは総分散
値の大きいマスクのマスク内平均値に定数を加算するこ
とで、マスク内画素レベルが一様である場合の誤二値化
を防ぐことを特徴とする請求項16記載のバーコード読
取方法。 - 【請求項19】 前記縦・横方向いずれかのマスクから
閾値を求めたかに応じて、2面の二値画像に二値化結果
を格納することで、縦バーコード、横バーコードを別々
かつ同時に二値化する二値化手段を設けたことを特徴と
する請求項16記載のバーコード読取方法。 - 【請求項20】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における平均、及び平均値からの絶対差分和、もしくは
計算の簡単な分散代替値を算出し、平均値からの絶対差
分和、もしくは計算の簡単な分散代替値の大きい方のマ
スクの平均値を前記画像信号の二値化用の局所閾値とす
ることを特徴とするバーコード読取方法。 - 【請求項21】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における分散もしくは総分散を算出し、分散値もしくは
総分散値の大きい方のマスク内濃度ヒストグラムから群
間分散最大化法で閾値を求め、求めた閾値を前記画像信
号の二値化用の局所閾値とすることを特徴とするバーコ
ード読取方法。 - 【請求項22】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における分散もしくは総分散を算出し、分散値もしくは
総分散値の大きい方のマスク内濃度ヒストグラムから、
白領域、黒領域について各最小バーコード幅から計算し
たバー部分の存在率を設定したp−タイル法を併用した
自動閾値決定方法を用いて閾値を求め、求めた閾値を前
記画像信号の二値化用の局所閾値とすることを特徴とす
るバーコード読取方法。 - 【請求項23】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれ幅=1〜3画素、長さ=
(最大バー幅×1〜6倍+1画素)のマスクを設け、そ
のマスクの角度を逐次変化させ、最大の分散もしくは最
大の総分散となる角度でのマスク内画素レベルの分布か
ら閾値を求め、求めた閾値を前記画像信号の二値化用の
局所閾値とすることを特徴とするバーコード読取方法。 - 【請求項24】 入力画像信号における画素を中心にそ
れぞれ幅=1〜3画素、長さ=(最大バー幅×1〜6倍
+1画素)のマスクを、右→左への横、上→下への縦、
右上→左下への45度、左上→右下への45度の各方向
に4つ設け、4つのマスク内で分散もしくは総分散が最
大のマスクから閾値を求め、求めた閾値を前記画像信号
の二値化用の局所閾値とすることを特徴とするバーコー
ド読取方法。 - 【請求項25】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動、中位値を算出し、全変動の大きいマス
クの中位値を前記画像信号の二値化用の局所閾値とする
ことを特徴とするバーコード読取方法。 - 【請求項26】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動を算出し、全変動の大きいマスク内につ
いて、各種の二値化閾値算出方法を適用して前記画像信
号の二値化用の局所閾値を求めることを特徴とするバー
コード読取方法。 - 【請求項27】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動を算出し、全変動の小さい方のマスク内
は一様な領域1とし、全変動の大きい方のマスク内は一
様な領域1・2に分割して、縦・横マスク領域全体に対
して制約条件付きで各種の二値化閾値算出方を適用し
て、前記画像信号の二値化用の局所閾値を求めることを
特徴とするバーコード読取方法。 - 【請求項28】 入力画像信号における注目画素を中心
に縦・横方向に幅=1〜5画素、長さ=(最大バー幅×
1〜6倍)+1画素のマスクを設け、各マスク内におけ
る分散もしくは総分散を求め、分散値もしくは総分散値
の大きなマスク内から求めた閾値を前記画像信号の二値
化用の局所閾値を求めることを特徴とするバーコード読
取方法。 - 【請求項29】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における平均、分散もしくは総分散を算出し、分散値も
しくは総分散値の大きい方のマスクの平均値を前記画像
信号の二値化用の局所閾値と処理を実行するためのプロ
グラムを記憶した記憶媒体。 - 【請求項30】 前記各マスクは、幅=1〜5画素、長
さ=(最大バー幅×1〜6倍+1画素)の大きさを有す
ることを特徴とする請求項29記載のプログラムを記憶
した記憶媒体。 - 【請求項31】 前記求められた分散値もしくは総分散
値をもとに、縦・横方向とも画素レベルが一様と判断さ
れた画素については、二値化対象外とすることを特徴と
する請求項30記載のプログラムを記憶した記憶媒体。 - 【請求項32】 前記求められた分散値もしくは総分散
値の大きいマスクのマスク内平均値に定数を加算するこ
とで、マスク内画素レベルが一様である場合の誤二値化
を防ぐことを特徴とする請求項30記載のプログラムを
記憶した記憶媒体。 - 【請求項33】 前記縦・横方向いずれかのマスクから
閾値を求めたかに応じて、2面の二値画像に二値化結果
を格納することで、縦バーコード、横バーコードを別々
かつ同時に二値化する二値化手段を設けたことを特徴と
する請求項30記載のプログラムを記憶した記憶媒体。 - 【請求項34】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における平均、及び平均値からの絶対差分和、もしくは
計算の簡単な分散代替値を算出し、平均値からの絶対差
分和、もしくは計算の簡単な分散代替値の大きい方のマ
スクの平均値を前記画像信号の二値化用の局所閾値とす
る処理を実行するためのプログラムを記憶した記憶媒
体。 - 【請求項35】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における分散もしくは総分散を算出し、分散値もしくは
総分散値の大きい方のマスク内濃度ヒストグラムから群
間分散最大化法で閾値を求め、求めた閾値を前記画像信
号の二値化用の局所閾値とする処理を実行するためのプ
ログラムを記憶した記憶媒体。 - 【請求項36】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における分散もしくは総分散を算出し、分散値もしくは
総分散値の大きい方のマスク内濃度ヒストグラムから、
白領域、黒領域について各最小バーコード幅から計算し
たバー部分の存在率を設定したp−タイル法を併用した
自動閾値決定方法を用いて閾値を求め、求めた閾値を前
記画像信号の二値化用の局所閾値とする処理を実行する
ためのプログラムを記憶した記憶媒体。 - 【請求項37】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれ幅=1〜3画素、長さ=
(最大バー幅×1〜6倍+1画素)のマスクを設け、そ
のマスクの角度を逐次変化させ、最大の分散もしくは最
大の総分散となる角度でのマスク内画素レベルの分布か
ら閾値を求め、求めた閾値を前記画像信号の二値化用の
局所閾値とする処理を実行するためのプログラムを記憶
した記憶媒体。 - 【請求項38】 入力画像信号における画素を中心にそ
れぞれ幅=1〜3画素、長さ=(最大バー幅×1〜6倍
+1画素)のマスクを、右→左への横、上→下への縦、
右上→左下への45度、左上→右下への45度の各方向
に4つ設け、4つのマスク内で分散もしくは総分散が最
大のマスクから閾値を求め、求めた閾値を前記画像信号
の二値化用の局所閾値とする処理を実行するためのプロ
グラムを記憶した記憶媒体。 - 【請求項39】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動、中位値を算出し、全変動の大きいマス
クの中位値を前記画像信号の二値化用の局所閾値とする
処理を実行するためのプログラムを記憶した記憶媒体。 - 【請求項40】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動を算出し、全変動の大きいマスク内につ
いて、各種の二値化閾値算出方法を適用して前記画像信
号の二値化用の局所閾値を求める処理を実行するための
プログラムを記憶した記憶媒体。 - 【請求項41】 入力画像信号における画素を中心に縦
・横2方向についてそれぞれマスクを設け、各マスク内
における全変動を算出し、全変動の小さい方のマスク内
は一様な領域1とし、全変動の大きい方のマスク内は一
様な領域1・2に分割して、縦・横マスク領域全体に対
して制約条件付きで各種の二値化閾値算出方を適用し
て、前記画像信号の二値化用の局所閾値を求める処理を
実行するためのプログラムを記憶した記憶媒体。 - 【請求項42】 入力画像信号における注目画素を中心
に縦・横方向に幅=1〜5画素、長さ=(最大バー幅×
1〜6倍)+1画素のマスクを設け、各マスク内におけ
る分散もしくは総分散を求め、分散値もしくは総分散値
の大きなマスク内から求めた閾値を前記画像信号の二値
化用の局所閾値を求める処理を実行するためのプログラ
ムを記憶した記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06564999A JP3282606B2 (ja) | 1999-03-11 | 1999-03-11 | バーコード読取装置、方法及びプログラムを記憶した記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP06564999A JP3282606B2 (ja) | 1999-03-11 | 1999-03-11 | バーコード読取装置、方法及びプログラムを記憶した記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000259759A JP2000259759A (ja) | 2000-09-22 |
JP3282606B2 true JP3282606B2 (ja) | 2002-05-20 |
Family
ID=13293079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06564999A Expired - Fee Related JP3282606B2 (ja) | 1999-03-11 | 1999-03-11 | バーコード読取装置、方法及びプログラムを記憶した記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3282606B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4728297B2 (ja) * | 2007-07-30 | 2011-07-20 | 東芝テック株式会社 | 2次元コード読取装置及びその方法 |
JP5125961B2 (ja) * | 2008-09-30 | 2013-01-23 | 富士通株式会社 | 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム |
JP5264956B2 (ja) * | 2011-04-13 | 2013-08-14 | 東芝テック株式会社 | 2次元コード読取装置及びその方法 |
CN111222356A (zh) * | 2020-01-14 | 2020-06-02 | 河北省烟草公司沧州市公司 | 图像识别方法、扫码方法、扫码终端和商品销售管理系统 |
CN113761960B (zh) * | 2020-09-07 | 2023-09-22 | 北京京东振世信息技术有限公司 | 用于识别条形码的方法和装置 |
-
1999
- 1999-03-11 JP JP06564999A patent/JP3282606B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000259759A (ja) | 2000-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100607018B1 (ko) | 화상 처리 장치, 화상 처리 방법 및 화상 처리 프로그램을기록한 매체 | |
JPH09179930A (ja) | 情報再生システム、情報記録媒体、及び情報記録装置 | |
JP4764903B2 (ja) | テキストマップの中からライン構造を検出する方法および画像処理装置 | |
JP3282606B2 (ja) | バーコード読取装置、方法及びプログラムを記憶した記憶媒体 | |
JP4085580B2 (ja) | 画像処理装置 | |
JP2002199206A (ja) | メッセージ埋込並びに抽出方法、装置および媒体 | |
JP4771428B2 (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 | |
JP3989341B2 (ja) | 画像処理装置 | |
JP4010440B2 (ja) | 影検出を伴う画像処理装置 | |
JP4998410B2 (ja) | 画像処理装置、及び画像処理プログラム | |
JP2009152901A (ja) | 画像処理装置および画像処理方法 | |
JP2007189577A (ja) | コンピュータプログラム、画像入力装置、画像入力システムおよび画像入力方法 | |
JPH04302375A (ja) | 画像二値化装置 | |
US11570331B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2000048118A (ja) | 情報読取システム | |
JPH05284356A (ja) | 画像情報2値化方法および画像情報2値化 | |
JPH11288453A (ja) | 再生用のスキャン環境における原稿画像のスキュ―角度および黒い境界線を検出する方法およびシステム | |
JP3966448B2 (ja) | 画像処理装置、画像処理方法、該方法を実行するプログラムおよび該プログラムを記録した記録媒体 | |
JP3359377B2 (ja) | バックグラウンド濃度検出装置 | |
JP2007312233A (ja) | 画像処理装置及びプログラム | |
JPH05344330A (ja) | 画像領域識別装置 | |
JP2877548B2 (ja) | 文書画像の属性判別方法 | |
JP2002290727A (ja) | 画像処理方法、その装置、その記憶媒体及びそのプログラム | |
JP4335590B2 (ja) | 2値化処理装置 | |
JP3605773B2 (ja) | 画像領域判別装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020129 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080301 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090301 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090301 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100301 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100301 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110301 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |