JPH07200712A - バーコード読み取りの方法および装置 - Google Patents
バーコード読み取りの方法および装置Info
- Publication number
- JPH07200712A JPH07200712A JP6304628A JP30462894A JPH07200712A JP H07200712 A JPH07200712 A JP H07200712A JP 6304628 A JP6304628 A JP 6304628A JP 30462894 A JP30462894 A JP 30462894A JP H07200712 A JPH07200712 A JP H07200712A
- Authority
- JP
- Japan
- Prior art keywords
- bar code
- scan
- scanning
- barcode
- consensus
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
- G06K7/10821—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
- G06K7/1093—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices sensing, after transfer of the image of the data-field to an intermediate store, e.g. storage with cathode ray tube
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods 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/1404—Methods for optical code recognition
- G06K7/146—Methods for optical code recognition the method including quality enhancement steps
- G06K7/1465—Methods for optical code recognition the method including quality enhancement steps using several successive scans of the optical code
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Health & Medical Sciences (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)
- Image Analysis (AREA)
Abstract
(57)【要約】
【目的】 本発明は、バーコードの誤読確率が常に低
く、バーコード記号の正確な解釈ができる方法および装
置を与える。 【構成】 バーコードの読み取り方法および装置におい
て、バーコード記号を光学的に走査し、メモリ13に格
納し、該格納したイメージに対して複数の走査を行な
い、バーコード決定の処理を行なう。バーコードにわた
る織り混ぜ位置で走査を行ない、格納デバイス87に格
納し、少なくとも二つの走査のコンセンサスを得るた
め、試験ユニット88で試験する。必要であればさらに
走査を行なう。コンセンサスに到達したことを決定する
ためには走査の半分以上が合致していることが好まし
い。各走査はいくつかのサブ走査について平均される。
これらの走査は記号に復号できる。これらの走査結果に
関して種々の有効性試験を行なうことができる。走査結
果はそれらの中に含まれる黒から白へのセンチおよび白
から黒への遷移の起きる位置を測定することにより解析
される。遷移位置はピクセル位置間で内挿できる。
く、バーコード記号の正確な解釈ができる方法および装
置を与える。 【構成】 バーコードの読み取り方法および装置におい
て、バーコード記号を光学的に走査し、メモリ13に格
納し、該格納したイメージに対して複数の走査を行な
い、バーコード決定の処理を行なう。バーコードにわた
る織り混ぜ位置で走査を行ない、格納デバイス87に格
納し、少なくとも二つの走査のコンセンサスを得るた
め、試験ユニット88で試験する。必要であればさらに
走査を行なう。コンセンサスに到達したことを決定する
ためには走査の半分以上が合致していることが好まし
い。各走査はいくつかのサブ走査について平均される。
これらの走査は記号に復号できる。これらの走査結果に
関して種々の有効性試験を行なうことができる。走査結
果はそれらの中に含まれる黒から白へのセンチおよび白
から黒への遷移の起きる位置を測定することにより解析
される。遷移位置はピクセル位置間で内挿できる。
Description
【0001】
【産業上の利用分野】本発明はバーコードを読み取るた
めの方法および装置に関する。
めの方法および装置に関する。
【0002】
【従来の技術】バーコードは(文書を含む物品の同定を
行なう手段として現在では確立されている。バーコード
は地色(便宜上白とする)の上に設けた、これとは異な
る色の複数のバーからなる領域もしくはストリップ
(帯)から成る。各バーはストリップの上を横断方向に
延びる。バーの幅およびそれらの間の間隔が、当該物品
を同定するコード番号等の情報を符号化している。バー
コードを使用することの主な利点は、それらが自動的に
同定できる点である。
行なう手段として現在では確立されている。バーコード
は地色(便宜上白とする)の上に設けた、これとは異な
る色の複数のバーからなる領域もしくはストリップ
(帯)から成る。各バーはストリップの上を横断方向に
延びる。バーの幅およびそれらの間の間隔が、当該物品
を同定するコード番号等の情報を符号化している。バー
コードを使用することの主な利点は、それらが自動的に
同定できる点である。
【0003】バーコードリーダー(バーコード読み取り
装置)の出力は直接に、あるいは物品について情報を得
るための他の技術と関連させて、当該情報を得ることが
でき、当該情報によりその物品を証明することができ
る。
装置)の出力は直接に、あるいは物品について情報を得
るための他の技術と関連させて、当該情報を得ることが
でき、当該情報によりその物品を証明することができ
る。
【0004】バーコードリーダーにはよく確立された形
式のものが多数ある。最も簡単な種類のものの一つは、
手動で「バーコード上を通過させる「光PNNネットワ
ーク」である(ただしこれはかなり念入りに設計された
クロック回路が必要である)。もう一つの広く使用され
ている形式はスーパーマーケット等で使用されているレ
ーザーリーダーである。これは連続的な走査レーザービ
ームと光セルを含む。バーコードを備えた物品が走査ゾ
ーンを通過されるとき、この光セルの出力がバーコード
から到来する光として認識される。
式のものが多数ある。最も簡単な種類のものの一つは、
手動で「バーコード上を通過させる「光PNNネットワ
ーク」である(ただしこれはかなり念入りに設計された
クロック回路が必要である)。もう一つの広く使用され
ている形式はスーパーマーケット等で使用されているレ
ーザーリーダーである。これは連続的な走査レーザービ
ームと光セルを含む。バーコードを備えた物品が走査ゾ
ーンを通過されるとき、この光セルの出力がバーコード
から到来する光として認識される。
【0005】このような形式のバーコードリーダーが十
分に満足できるものである場合が多々ある。その場合は
一般的に三つの特徴がある。第一に、バーコードの元来
の印刷がかなり良く制御されており、その結果バーコー
ドは「明確」であり、良好なコントラストをもってい
る。第二に、バーコードを付けた物品の取り扱いが総体
的にかなり良好に制御され、その結果バーコードは損傷
を受けている可能性が少ない。第三に通常はバーコード
リーダーがバーコードの認識に失敗しても、オペレータ
ーが即座に手動で同定情報を入力できる体勢にある。
分に満足できるものである場合が多々ある。その場合は
一般的に三つの特徴がある。第一に、バーコードの元来
の印刷がかなり良く制御されており、その結果バーコー
ドは「明確」であり、良好なコントラストをもってい
る。第二に、バーコードを付けた物品の取り扱いが総体
的にかなり良好に制御され、その結果バーコードは損傷
を受けている可能性が少ない。第三に通常はバーコード
リーダーがバーコードの認識に失敗しても、オペレータ
ーが即座に手動で同定情報を入力できる体勢にある。
【0006】しかしこれらの条件が存在しない状況が多
々ある。バーコードの初期印刷の制御が貧弱であること
がある(例えばバーコードを印刷する材料がきわめてい
ろいろと変わるかもしれない)。また物品は手荒い処理
を受け、その結果バーコードが非常に汚れ、傷つけら
れ、あるいは劣化しているかもしれない。また認識不能
のバーコードを処理するためにオペレーターを用意する
ことは高価につき、もしくは不便であるかもしれない。
々ある。バーコードの初期印刷の制御が貧弱であること
がある(例えばバーコードを印刷する材料がきわめてい
ろいろと変わるかもしれない)。また物品は手荒い処理
を受け、その結果バーコードが非常に汚れ、傷つけら
れ、あるいは劣化しているかもしれない。また認識不能
のバーコードを処理するためにオペレーターを用意する
ことは高価につき、もしくは不便であるかもしれない。
【0007】これらの理由その他により、バーコードを
光学的に走査して電子イメージを形成し、そのイメージ
からバーコードを抽出すべく処理されるバーコードリー
ダーが開発されている。この形式のバーコードリーダー
はヨーロッパ特許出願代0449634Aに記載されて
いる。本発明はこの形式のバーコードリーダーに関す
る。
光学的に走査して電子イメージを形成し、そのイメージ
からバーコードを抽出すべく処理されるバーコードリー
ダーが開発されている。この形式のバーコードリーダー
はヨーロッパ特許出願代0449634Aに記載されて
いる。本発明はこの形式のバーコードリーダーに関す
る。
【0008】この形式のバーコードリーダーはさらにい
くつかの利点を有する。イメージは聴き取ることができ
るように格納し記録しておくことができる。またバーコ
ードを帯びている物品はバーコード以外の形態で他の情
報を保有することができ、その情報も電子イメージから
抽出することもできる。光学的走査により読み取られか
つその後の電子イメージの処理によって得られる他の情
報を物品が保有していれば、明らかにこの形式のバーコ
ードリーダーは走査の機構を共有することができ、さら
に必要なのはイメージ処理だけである。
くつかの利点を有する。イメージは聴き取ることができ
るように格納し記録しておくことができる。またバーコ
ードを帯びている物品はバーコード以外の形態で他の情
報を保有することができ、その情報も電子イメージから
抽出することもできる。光学的走査により読み取られか
つその後の電子イメージの処理によって得られる他の情
報を物品が保有していれば、明らかにこの形式のバーコ
ードリーダーは走査の機構を共有することができ、さら
に必要なのはイメージ処理だけである。
【0009】多くの状況ではバーコードの位置と方向が
共に物品上に程よく良好に確定され制御されている。こ
のときは電子イメージ内のバーコードの位置および方向
は同様に確定され、制御される。本発明はバーコードが
そのようにイメージ内で程よく良好に確定された位置を
有し、標準的方向を有する電子イメージを処理するバー
コード認識処理手段に関する。
共に物品上に程よく良好に確定され制御されている。こ
のときは電子イメージ内のバーコードの位置および方向
は同様に確定され、制御される。本発明はバーコードが
そのようにイメージ内で程よく良好に確定された位置を
有し、標準的方向を有する電子イメージを処理するバー
コード認識処理手段に関する。
【0010】バーコードの位置および/または方向、あ
るいはまた電子イメージ内のバーコードの位置および方
向が、良好に確定されず、または制御されない状況がも
ちろんありうる。そのような状況では、必要であれば電
子イメージの初期解析を行なってバーコードを位置決め
し、その方向を定めると共にそのイメージ(バーコード
を含む)を回転させ、移動させる技術が利用できる。こ
の技術により、バーコードはイメージ内で程よく良好に
確定された位置を占め、標準方向(すなわちそのバーコ
ードに本発明を適用するに適した方向)にすることがで
きる。もちろん、バーコード認識処理手段が使用した座
標から実際のイメージ座標を得るべく適当な変換を行な
うことにより仮想的なイメージの回転を使用することが
できる。
るいはまた電子イメージ内のバーコードの位置および方
向が、良好に確定されず、または制御されない状況がも
ちろんありうる。そのような状況では、必要であれば電
子イメージの初期解析を行なってバーコードを位置決め
し、その方向を定めると共にそのイメージ(バーコード
を含む)を回転させ、移動させる技術が利用できる。こ
の技術により、バーコードはイメージ内で程よく良好に
確定された位置を占め、標準方向(すなわちそのバーコ
ードに本発明を適用するに適した方向)にすることがで
きる。もちろん、バーコード認識処理手段が使用した座
標から実際のイメージ座標を得るべく適当な変換を行な
うことにより仮想的なイメージの回転を使用することが
できる。
【0011】(電子イメージ内の)バーコードは水平な
帯であること、すなわちバーは鉛直であること、を仮定
すると便利である。イメージはピクセルの配列から成
り、各ピクセルは物品上のバーコードの対応点または対
応エレメントの明度または反射度に対応する値を有す
る。ピクセル値はグレイスケールで測定される。純粋に
黒(ゼロ反射度)は値0を有し、純粋な白(完全反射)
は値1を有し、中間のグレイの陰は0と1の間の値を有
する、と仮定する。
帯であること、すなわちバーは鉛直であること、を仮定
すると便利である。イメージはピクセルの配列から成
り、各ピクセルは物品上のバーコードの対応点または対
応エレメントの明度または反射度に対応する値を有す
る。ピクセル値はグレイスケールで測定される。純粋に
黒(ゼロ反射度)は値0を有し、純粋な白(完全反射)
は値1を有し、中間のグレイの陰は0と1の間の値を有
する、と仮定する。
【0012】またバーコードは、バーコードを含む帯の
全幅にわたってバーが延びる形式のものであると仮定す
る。その結果バーコードが担持する情報はバーの幅およ
び/またはバーの間隙にすべて含まれている。
全幅にわたってバーが延びる形式のものであると仮定す
る。その結果バーコードが担持する情報はバーの幅およ
び/またはバーの間隙にすべて含まれている。
【0013】理想的なイメージは、バー形状領域ではす
べてのピクセル値が0で背景フィールドのピクセル値が
1となるようにされた幾何学的に正確な一組のバー形状
領域から成る。しかし実際は「白」ピクセル値はやや1
より小さく、「黒」ピクセル値はやや0より大きく、帯
の周囲の境界はあいまいであり、また元々のバーコード
(したがってイメージも)別の形態で劣化している可能
性がある。それゆえバーコードリーダーはこの劣化した
イメージからバーコードの正確な表示を抽出しなければ
ならない。すなわちバーコードリーダーはバーコードが
表す情報を抽出しなければならない。
べてのピクセル値が0で背景フィールドのピクセル値が
1となるようにされた幾何学的に正確な一組のバー形状
領域から成る。しかし実際は「白」ピクセル値はやや1
より小さく、「黒」ピクセル値はやや0より大きく、帯
の周囲の境界はあいまいであり、また元々のバーコード
(したがってイメージも)別の形態で劣化している可能
性がある。それゆえバーコードリーダーはこの劣化した
イメージからバーコードの正確な表示を抽出しなければ
ならない。すなわちバーコードリーダーはバーコードが
表す情報を抽出しなければならない。
【0014】上記のヨーロッパ特許出願第044963
4Aはこれを達成するいろいろの可能な途を提案してい
る。一つの方法はバーコードにわたって多数の平行な走
査を行ない、対応位置における値の単純な平均値を使う
ことである。第二の方法は平均値ではなくてこれらの値
の中央値(mediam)を使うことである。第三の方法は他
の走査との相関が悪いものよりも他のものと高い相関を
もつ走査により高い重みを付けるよう、いろいろの走査
を相関させ、走査に重み付けることである。
4Aはこれを達成するいろいろの可能な途を提案してい
る。一つの方法はバーコードにわたって多数の平行な走
査を行ない、対応位置における値の単純な平均値を使う
ことである。第二の方法は平均値ではなくてこれらの値
の中央値(mediam)を使うことである。第三の方法は他
の走査との相関が悪いものよりも他のものと高い相関を
もつ走査により高い重みを付けるよう、いろいろの走査
を相関させ、走査に重み付けることである。
【0015】
【発明が解決しようとする課題】本発明の課題は、誤っ
た読み取り(以下、誤読という)の確率が常に低い、す
なわちバーコード記号を不正確に解釈する確率が常に低
い、バーコード読み取り方法およびそのための装置を与
えることである。
た読み取り(以下、誤読という)の確率が常に低い、す
なわちバーコード記号を不正確に解釈する確率が常に低
い、バーコード読み取り方法およびそのための装置を与
えることである。
【0016】
【課題を解決するための手段】したがって本発明の特徴
の一つによれば、符号化されたデータを表し物品上に配
置されたバーコードを読み取る方法であって、該バーコ
ードを光学的に走査してそのイメージをメモリ内に格納
するステップと、該格納されたイメージを複数回走査す
るステップと、該走査の結果を格納手段に格納するステ
ップと、少なくとも二回の走査のコンセンサスを得るた
めの試験を行なうステップと、到達したコンセンサスに
基づいて該符号化されたデータを評価するステップとを
含むバーコード読み取り方法が与えられる。
の一つによれば、符号化されたデータを表し物品上に配
置されたバーコードを読み取る方法であって、該バーコ
ードを光学的に走査してそのイメージをメモリ内に格納
するステップと、該格納されたイメージを複数回走査す
るステップと、該走査の結果を格納手段に格納するステ
ップと、少なくとも二回の走査のコンセンサスを得るた
めの試験を行なうステップと、到達したコンセンサスに
基づいて該符号化されたデータを評価するステップとを
含むバーコード読み取り方法が与えられる。
【0017】本発明のもう一つの特徴によれば、バーコ
ード読み取り装置であって、物品上のバーコードを光学
的に走査する走査手段と、該走査したバーコードのイメ
ージを格納するメモリ手段と、該メモリ内に格納された
イメージを複数回走査するための処理手段と、該処理手
段から得られる走査結果を格納する格納手段と、少なく
とも二回の走査結果のコンセンサスを得るため該格納手
段内の走査結果を試験する試験手段とを含むバーコード
読み取り装置が与えられる。
ード読み取り装置であって、物品上のバーコードを光学
的に走査する走査手段と、該走査したバーコードのイメ
ージを格納するメモリ手段と、該メモリ内に格納された
イメージを複数回走査するための処理手段と、該処理手
段から得られる走査結果を格納する格納手段と、少なく
とも二回の走査結果のコンセンサスを得るため該格納手
段内の走査結果を試験する試験手段とを含むバーコード
読み取り装置が与えられる。
【0018】本発明の方法および装置によれば、バーコ
ード記号を評価するためさらに二つ行なった走査のコン
センサスを利用することにより、誤読の確率が低減され
る。添付の図面を参照し、以下の説明を通して本発明の
一実施例を例示する。
ード記号を評価するためさらに二つ行なった走査のコン
センサスを利用することにより、誤読の確率が低減され
る。添付の図面を参照し、以下の説明を通して本発明の
一実施例を例示する。
【0019】
【実施例】図1を参照する。バーコード(図示してな
し)を担持する文書10が矢印10Aの方向に文書移送
手段(図示してなし)により搬送されてイメージ採取
(走査)デバイス12を通過する。デバイス12は例え
ばビデオカメラでよい。デバイス12の出力はイメージ
メモリ13に与えられ、ここで文書の電子イメージが造
られる。バーコードを担持した文書10上の位置を同定
するため、かつデバイス12をその位置まで指向させる
ため、バーコード位置決めユニット14をデバイス12
に結合することができる。メモリ内のイメージを処理
し、そのイメージからバーコードを認識し、ライン16
上に出力を与えるための処理ユニット15がメモリ13
に結合される。
し)を担持する文書10が矢印10Aの方向に文書移送
手段(図示してなし)により搬送されてイメージ採取
(走査)デバイス12を通過する。デバイス12は例え
ばビデオカメラでよい。デバイス12の出力はイメージ
メモリ13に与えられ、ここで文書の電子イメージが造
られる。バーコードを担持した文書10上の位置を同定
するため、かつデバイス12をその位置まで指向させる
ため、バーコード位置決めユニット14をデバイス12
に結合することができる。メモリ内のイメージを処理
し、そのイメージからバーコードを認識し、ライン16
上に出力を与えるための処理ユニット15がメモリ13
に結合される。
【0020】図2は本システムの一般的な流れ図であ
る。一般的な言い方をすれば、本システムはバーコード
イメージにわたる一連の走査結果を織り混ぜパターン
(interleaved pattern)で発生し、走査数が十分であ
るときはコンセンサス(consensus, 結果が一致すると
の結論)が達成できるか否かを決定するため、それらを
比較する。もしも全くコンセンサスがなければ、そのシ
ーケンスが続行される。もちろん、本システムのオペレ
ーションの詳細はこの流れ図の詳細を含めて、いろいろ
に変更できる。
る。一般的な言い方をすれば、本システムはバーコード
イメージにわたる一連の走査結果を織り混ぜパターン
(interleaved pattern)で発生し、走査数が十分であ
るときはコンセンサス(consensus, 結果が一致すると
の結論)が達成できるか否かを決定するため、それらを
比較する。もしも全くコンセンサスがなければ、そのシ
ーケンスが続行される。もちろん、本システムのオペレ
ーションの詳細はこの流れ図の詳細を含めて、いろいろ
に変更できる。
【0021】図3は走査シーケンスに便利なパターンを
示す。バーコードの位置(すなわちメモリ内でバーコー
ドが占める帯状の領域(strip)の境界)が既にバーコ
ード位置決めユニット14による処理その他のイメージ
予備処理等により決定されていると仮定する。従って走
査はバーコードの所望の位置で行なうことができる。図
3に示す場合は9回の走査が行なわれたので、バーコー
ドを含む帯状領域の幅にわたり等分に離隔された平行な
走査の組が形成される。走査は図3の右側に示す走査番
号1から走査番号9まで、この順に行なわれる。
示す。バーコードの位置(すなわちメモリ内でバーコー
ドが占める帯状の領域(strip)の境界)が既にバーコ
ード位置決めユニット14による処理その他のイメージ
予備処理等により決定されていると仮定する。従って走
査はバーコードの所望の位置で行なうことができる。図
3に示す場合は9回の走査が行なわれたので、バーコー
ドを含む帯状領域の幅にわたり等分に離隔された平行な
走査の組が形成される。走査は図3の右側に示す走査番
号1から走査番号9まで、この順に行なわれる。
【0022】コンセンサスを得るための試験は二つの走
査が行なわれたときに開始する。最初の二つの走査はバ
ーコード幅のおよそ1/2ないし1/4だけ離れた位置で行な
われる。両者間の相互間隔は(バーコードの小さな欠陥
は一方の走査にのみ影響するように)十分大きいが、
(縁が損傷しているかも知れないので)バーコードの縁
に近接し過ぎないように行なわれる。もしもこれら最初
の二つの走査間で何らコンセンサスが得られないと、第
三の走査がバーコード幅の約3/4だけ離れたところで行
なわれる。それでも依然としてコンセンサスがないと、
図示するシーケンスで各走査の後に新たな試験を行ない
つつコンセンサスが得られるまでさらに別の走査が行な
われる。これらの読み取り走査が行なわれる順序はイメ
ージの中線が最初であり、隣接ストリップを連続して走
査しないことに注意されたい。もしも全数の走査が行な
われても全くコンセンサスがないと、そのバーコードは
読み取り不能であると宣言される。
査が行なわれたときに開始する。最初の二つの走査はバ
ーコード幅のおよそ1/2ないし1/4だけ離れた位置で行な
われる。両者間の相互間隔は(バーコードの小さな欠陥
は一方の走査にのみ影響するように)十分大きいが、
(縁が損傷しているかも知れないので)バーコードの縁
に近接し過ぎないように行なわれる。もしもこれら最初
の二つの走査間で何らコンセンサスが得られないと、第
三の走査がバーコード幅の約3/4だけ離れたところで行
なわれる。それでも依然としてコンセンサスがないと、
図示するシーケンスで各走査の後に新たな試験を行ない
つつコンセンサスが得られるまでさらに別の走査が行な
われる。これらの読み取り走査が行なわれる順序はイメ
ージの中線が最初であり、隣接ストリップを連続して走
査しないことに注意されたい。もしも全数の走査が行な
われても全くコンセンサスがないと、そのバーコードは
読み取り不能であると宣言される。
【0023】コンセンサスは「多数決」、すなわち(少
なくとも2回の走査が行なわれて)半分以上の走査が相
互に合致することと定義すること、と定義することが好
ましい。この代わりとして、必要な合致レベルをさらに
高いレベルに(例えば三分の二以上)設定することがで
きる。合致はバーコードのバーの位置および幅に関する
直接的走査情報に基づいても試験することができ、ある
いは復号したバーコードに基づいて(すなわちバー幅お
よび位置についての情報を復号することにより得られる
記号シーケンスに基づいて)も試験することができる
が、後者の方が好ましい。直接的走査情報を合致試験に
使用するのであれば、明らかに、許容可能な合致が存在
するか否かを決定するための適切な許容度が定義されな
ければならない。ここで要求される合致は全体的なもの
(global)(すなわち走査全体について合致が得られる
こと)でもよいし、あるいはローカルなもの(例えば走
査1および2がバーコードの長さの最初の2/3にわたり
合致し、走査1および3がバーコードの長さの最後の2/
3にわたり合致すればコンセンサスが存在するとして扱
うこと)でもよい。ローカル合致試験の場合、明らか
に、試験は直接的走査情報に基づいていなければならな
い。全体的合致テストでは試験は直接的走査情報でも復
号済み記号シーケンスのいずれに基づいてもよい。
なくとも2回の走査が行なわれて)半分以上の走査が相
互に合致することと定義すること、と定義することが好
ましい。この代わりとして、必要な合致レベルをさらに
高いレベルに(例えば三分の二以上)設定することがで
きる。合致はバーコードのバーの位置および幅に関する
直接的走査情報に基づいても試験することができ、ある
いは復号したバーコードに基づいて(すなわちバー幅お
よび位置についての情報を復号することにより得られる
記号シーケンスに基づいて)も試験することができる
が、後者の方が好ましい。直接的走査情報を合致試験に
使用するのであれば、明らかに、許容可能な合致が存在
するか否かを決定するための適切な許容度が定義されな
ければならない。ここで要求される合致は全体的なもの
(global)(すなわち走査全体について合致が得られる
こと)でもよいし、あるいはローカルなもの(例えば走
査1および2がバーコードの長さの最初の2/3にわたり
合致し、走査1および3がバーコードの長さの最後の2/
3にわたり合致すればコンセンサスが存在するとして扱
うこと)でもよい。ローカル合致試験の場合、明らか
に、試験は直接的走査情報に基づいていなければならな
い。全体的合致テストでは試験は直接的走査情報でも復
号済み記号シーケンスのいずれに基づいてもよい。
【0024】もしもコンセンサスが達成できないと、他
の走査のほとんどあるいはすべてと極端な不一致状態に
ある走査はどれでも随意選択的に拒絶することができ
る。コンセンサスを得るため残りの走査を試験すること
ができる。このコンセンサスを得るプロセスはバーコー
ド誤読の可能性を低減する。
の走査のほとんどあるいはすべてと極端な不一致状態に
ある走査はどれでも随意選択的に拒絶することができ
る。コンセンサスを得るため残りの走査を試験すること
ができる。このコンセンサスを得るプロセスはバーコー
ド誤読の可能性を低減する。
【0025】図2に戻ると、本オペレーションはブロッ
ク20で開始し、走査番号がブロック21で1に設定さ
れる。この走査番号は走査番号カウンタ45(図4)内
に保持される。ブロック22では、走査番号と走査位置
との間の関係(図3)を与える一覧表47を使用して、
(走査位置レジスタ46内で)この走査番号に対する走
査位置が決定される。次いでこのイメージが走査され、
ブロック23でその走査結果がいろいろの方法で処理さ
れる。ブロック24でこの走査について有効度検査が行
なわれる。この走査が無効でないと仮定すると、次にブ
ロック25で走査結果が格納される。次いでブロック2
6で格納されたすべての走査間のコンセンサスを得るた
めの試験がコンセンサス試験ユニット(後述する)によ
り行なわれる。もしもコンセンサスが見つかると、バー
コードは成功裏に読み取られたと解釈され、プロセスは
ブロック27で終了する。もしも全くコンセンサスがな
いと、走査番号はブロック28で増大され、システムは
ブロック29を介してブロック22に戻り、もう一回走
査を行なう。
ク20で開始し、走査番号がブロック21で1に設定さ
れる。この走査番号は走査番号カウンタ45(図4)内
に保持される。ブロック22では、走査番号と走査位置
との間の関係(図3)を与える一覧表47を使用して、
(走査位置レジスタ46内で)この走査番号に対する走
査位置が決定される。次いでこのイメージが走査され、
ブロック23でその走査結果がいろいろの方法で処理さ
れる。ブロック24でこの走査について有効度検査が行
なわれる。この走査が無効でないと仮定すると、次にブ
ロック25で走査結果が格納される。次いでブロック2
6で格納されたすべての走査間のコンセンサスを得るた
めの試験がコンセンサス試験ユニット(後述する)によ
り行なわれる。もしもコンセンサスが見つかると、バー
コードは成功裏に読み取られたと解釈され、プロセスは
ブロック27で終了する。もしも全くコンセンサスがな
いと、走査番号はブロック28で増大され、システムは
ブロック29を介してブロック22に戻り、もう一回走
査を行なう。
【0026】走査番号はブロック28で増分された後、
ブロック29で試験される。もしも走査番号が最大走査
番号(図3に示すシステムでは9)より大きいと、最大
数の走査が既に行なわれており、当該バーコードを読み
取ることに失敗したままプロセスはブロック30で終了
する。もしもブロック24で走査に対する有効度検査が
失敗であると、その走査は廃棄される。システムはブロ
ック25、26を飛び越え、その結果走査は記録され
ず、コンセンサス試験で使用されない。システムは直接
にブロック28に進み、次の走査を開始する。
ブロック29で試験される。もしも走査番号が最大走査
番号(図3に示すシステムでは9)より大きいと、最大
数の走査が既に行なわれており、当該バーコードを読み
取ることに失敗したままプロセスはブロック30で終了
する。もしもブロック24で走査に対する有効度検査が
失敗であると、その走査は廃棄される。システムはブロ
ック25、26を飛び越え、その結果走査は記録され
ず、コンセンサス試験で使用されない。システムは直接
にブロック28に進み、次の走査を開始する。
【0027】ブロック25はブロック26のコンセンサ
ス試験に使用するのに有効な走査結果を格納すると共
に、有効な(格納済み)走査番号を格納する。この番号
はいずれかの走査が無効であればブロック21、22、
および29の走査数よりも小さい。これらの走査結果は
コンセンサス試験を行なうに必要な形態で格納される。
従ってもしも復号済み走査に対してコンセンサス試験を
行うのであれば、走査は復号済み記号として格納され
る。ブロック26は、ブロック25内に格納された有効
走査数が少なくとも2であるときだけコンセンサス試験
を行なう。
ス試験に使用するのに有効な走査結果を格納すると共
に、有効な(格納済み)走査番号を格納する。この番号
はいずれかの走査が無効であればブロック21、22、
および29の走査数よりも小さい。これらの走査結果は
コンセンサス試験を行なうに必要な形態で格納される。
従ってもしも復号済み走査に対してコンセンサス試験を
行うのであれば、走査は復号済み記号として格納され
る。ブロック26は、ブロック25内に格納された有効
走査数が少なくとも2であるときだけコンセンサス試験
を行なう。
【0028】図7はブロック23ないし25のオペレー
ションをさらに詳細に示す。図2に簡単に線図で示すブ
ロック23のすべての手順が完了した後に有効度試験を
行なう代わりとして、これらの種々の手順の実行期間中
に有効度試験を行なうことが好ましい、と言うことが理
解できよう。これらの手順は開始ブロック35において
ブロック21または29から入り、終了ブロック41で
終了する(その後、ブロック26に進む)。有効試験が
失敗であるときはエラー(走査無効)終了ブロック42
で終わる。(この後、ブロック28に進む。)最初のオ
ペレーションは走査を発生することであり(ブロック3
6)、このブロックで得られる結果は走査イメージ、す
なわちバーコードの延びているイメージにわたり分布す
る一行のイメージエレメントである。本システムの簡単
な形態では、これらのイメージエレメントはメモリ13
内のピクセル行である。しかしながらこれらのイメージ
エレメントは複数のサブ走査を適当に処理することによ
り生のピクセルから得られることが好ましい。そうする
ことによって走査過程のノイズおよび印刷されたバーコ
ードの欠陥の影響を低減することができる。
ションをさらに詳細に示す。図2に簡単に線図で示すブ
ロック23のすべての手順が完了した後に有効度試験を
行なう代わりとして、これらの種々の手順の実行期間中
に有効度試験を行なうことが好ましい、と言うことが理
解できよう。これらの手順は開始ブロック35において
ブロック21または29から入り、終了ブロック41で
終了する(その後、ブロック26に進む)。有効試験が
失敗であるときはエラー(走査無効)終了ブロック42
で終わる。(この後、ブロック28に進む。)最初のオ
ペレーションは走査を発生することであり(ブロック3
6)、このブロックで得られる結果は走査イメージ、す
なわちバーコードの延びているイメージにわたり分布す
る一行のイメージエレメントである。本システムの簡単
な形態では、これらのイメージエレメントはメモリ13
内のピクセル行である。しかしながらこれらのイメージ
エレメントは複数のサブ走査を適当に処理することによ
り生のピクセルから得られることが好ましい。そうする
ことによって走査過程のノイズおよび印刷されたバーコ
ードの欠陥の影響を低減することができる。
【0029】これを行なうため、単一線を発生すべく、
複数の隣接するピクセル線が平均される。図5はメモリ
13の一部を示す。我々は走査が三つのサブ走査から発
生されると仮定する。ただし三つに限定されないし、ま
たいろいろのサブ走査数を使用することができる。この
方法はピクセル55の三本の線を平均することを含む。
(最初の)走査レジスタ56(図6)は、メモリ13と
同じ幅の格納セルからなる単一線で構成される。走査レ
ジスタ56内に走査結果を発生させるため、線55内の
鉛直な三ピクセル(トリプレット)の内容が加算され、
3で割られる。その値が走査レジスタ56に入力され
る。このようにして例えば走査レジスタ56内のセル9
0の内容を発生するため、ピクセルトリプレット57が
総和され、3で割られる。
複数の隣接するピクセル線が平均される。図5はメモリ
13の一部を示す。我々は走査が三つのサブ走査から発
生されると仮定する。ただし三つに限定されないし、ま
たいろいろのサブ走査数を使用することができる。この
方法はピクセル55の三本の線を平均することを含む。
(最初の)走査レジスタ56(図6)は、メモリ13と
同じ幅の格納セルからなる単一線で構成される。走査レ
ジスタ56内に走査結果を発生させるため、線55内の
鉛直な三ピクセル(トリプレット)の内容が加算され、
3で割られる。その値が走査レジスタ56に入力され
る。このようにして例えば走査レジスタ56内のセル9
0の内容を発生するため、ピクセルトリプレット57が
総和され、3で割られる。
【0030】情報を失うことを回避するため、異なる走
査に属するサブ走査の組の間には全く間隙がないことが
好ましい。一走査当たりのサブ走査数をすべての走査に
対して同一とする等の目的上、異なる走査に属するサブ
走査の間の僅かな重畳は許容できる。
査に属するサブ走査の組の間には全く間隙がないことが
好ましい。一走査当たりのサブ走査数をすべての走査に
対して同一とする等の目的上、異なる走査に属するサブ
走査の間の僅かな重畳は許容できる。
【0031】一旦走査結果が発生されると、次のオペレ
ーション(ブロック37)が行なわれ、バーコード周囲
の背景の特性を決定する。走査の長さはバーコードの長
さよりも大きい。その結果走査レジスタ56は、空白の
背景をなす前文領域(preamble zone)を先頭に付け、
かつ後ろに空白の背景をなす後文領域(postamble zon
e)を付けたバーコード(さらに正確に言うとバーコー
ドを通過する帯状領域)を含む。
ーション(ブロック37)が行なわれ、バーコード周囲
の背景の特性を決定する。走査の長さはバーコードの長
さよりも大きい。その結果走査レジスタ56は、空白の
背景をなす前文領域(preamble zone)を先頭に付け、
かつ後ろに空白の背景をなす後文領域(postamble zon
e)を付けたバーコード(さらに正確に言うとバーコー
ドを通過する帯状領域)を含む。
【0032】前文長さカウンタ57は初め0に設定さ
れ、走査レジスタ56を矢印57Aの方向に歩ませるの
に使用される。各セルに到達すると、その内容が試験さ
れ、それらが白または黒を表すか否かを決定する。純粋
の黒を0とし、試験は単に当該セルの値が0.5(純粋
に白値1の半分)より大きいか否かを決定する。もしも
そうであると、その値は積算器58中に加算され、カウ
ンタ57は走査レジスタ内で次のセルを選択するように
増分を与えられる。値が0.5未満のセルに到達する
と、カウンタ57の増分は停止される。同様の後文長さ
カウンタ59が使用される。他方の端から走査レジスタ
56を矢印59Aの方向に向けて後ろ向きに進めるた
め、後文セルから得られる値が同じ積算器58中に同様
に積算される。
れ、走査レジスタ56を矢印57Aの方向に歩ませるの
に使用される。各セルに到達すると、その内容が試験さ
れ、それらが白または黒を表すか否かを決定する。純粋
の黒を0とし、試験は単に当該セルの値が0.5(純粋
に白値1の半分)より大きいか否かを決定する。もしも
そうであると、その値は積算器58中に加算され、カウ
ンタ57は走査レジスタ内で次のセルを選択するように
増分を与えられる。値が0.5未満のセルに到達する
と、カウンタ57の増分は停止される。同様の後文長さ
カウンタ59が使用される。他方の端から走査レジスタ
56を矢印59Aの方向に向けて後ろ向きに進めるた
め、後文セルから得られる値が同じ積算器58中に同様
に積算される。
【0033】前文および後文領域の長さの両方が発見さ
れると、加算器60で二つの長さの和が計算され、除算
器61内で積算器58の計数値をこの和で割り算し、レ
ジスタ62でバーコード外側周囲の背景領域に対する白
レベルの平均値を発生する。前文あるいは後文のいずれ
かの長さが0であると、走査は無効とみなされ、プロセ
スはブロック37(図5)を出て、エラー出力経路を経
由してエラー(無効)終了ブロック42に進む。
れると、加算器60で二つの長さの和が計算され、除算
器61内で積算器58の計数値をこの和で割り算し、レ
ジスタ62でバーコード外側周囲の背景領域に対する白
レベルの平均値を発生する。前文あるいは後文のいずれ
かの長さが0であると、走査は無効とみなされ、プロセ
スはブロック37(図5)を出て、エラー出力経路を経
由してエラー(無効)終了ブロック42に進む。
【0034】ブロック37の次のオペレーションはブロ
ック38である。このブロックではバーコード自体の特
徴が決定される。バーコードゾーンカウンタ65は矢印
65Aの方向のバーコードゾーン、すなわち前文の終了
端で始まり後文の開始端で終了する走査レジスタ56の
領域、に沿って計数を行なうのに使用される。
ック38である。このブロックではバーコード自体の特
徴が決定される。バーコードゾーンカウンタ65は矢印
65Aの方向のバーコードゾーン、すなわち前文の終了
端で始まり後文の開始端で終了する走査レジスタ56の
領域、に沿って計数を行なうのに使用される。
【0035】一対のレジスタ66、67を使用して、バ
ーコード内の黒レベルおよび白レベルの実際のピーク値
を決定する。これらのレジスタは共に0.5(純粋な白
レベルの半分)に初期化される。次いでバーコードゾー
ンカウンタ65が矢印65Aの方向に走査レジスタ56
内のバーコードに沿って進むにともない、各セルの値が
二つのレジスタ66および67内の値と比較される。も
しもセル値がレジスタ66内の値より小さいと、レジス
タ66内の値はセル値に下げられる。もしもセル値がレ
ジスタ67内の値より大きいと、レジスタ67内の値は
セル値まで増大される。
ーコード内の黒レベルおよび白レベルの実際のピーク値
を決定する。これらのレジスタは共に0.5(純粋な白
レベルの半分)に初期化される。次いでバーコードゾー
ンカウンタ65が矢印65Aの方向に走査レジスタ56
内のバーコードに沿って進むにともない、各セルの値が
二つのレジスタ66および67内の値と比較される。も
しもセル値がレジスタ66内の値より小さいと、レジス
タ66内の値はセル値に下げられる。もしもセル値がレ
ジスタ67内の値より大きいと、レジスタ67内の値は
セル値まで増大される。
【0036】走査レジスタ56のバーコード領域内のす
べてのセル値を積算するため、バーコード積算レベル積
算器68が使用される。これらの値はバーコードゾーン
カウンタ65が歩みを進めるに伴い、この積算器に入力
される。最終的和は除算器69内でバーコードゾーンの
長さ(すなわち前文および後文の長さより小さな、走査
レジスタ56の長さ)で割り算され、レジスタ70内で
バーコード平均レベルが発生される。
べてのセル値を積算するため、バーコード積算レベル積
算器68が使用される。これらの値はバーコードゾーン
カウンタ65が歩みを進めるに伴い、この積算器に入力
される。最終的和は除算器69内でバーコードゾーンの
長さ(すなわち前文および後文の長さより小さな、走査
レジスタ56の長さ)で割り算され、レジスタ70内で
バーコード平均レベルが発生される。
【0037】バーコードの全体的有効度を積算するた
め、変異度積算器71を使用する。バーコードゾーンカ
ウンタ65の各歩みごとに、走査レジスタ56内のセル
の値が一時的にレジスタ72内に格納され、バーコード
ゾーンカウンタ65の各歩みごとに(ただし最初のもの
を除く)論理回路73により走査レジスタ56内の現在
セル値が前回セル値(レジスタ72から得られる)と比
較される。この論理回路73は差の絶対値(符号なしの
値)を発生し、この値が変異度積算器71に与えられ
る。変異度積算器71内の最終和は除算器74内のバー
コードの長さ(1だけ小さくされている)で割り算さ
れ、レジスタ75内にバーコード平均変異度を発生す
る。
め、変異度積算器71を使用する。バーコードゾーンカ
ウンタ65の各歩みごとに、走査レジスタ56内のセル
の値が一時的にレジスタ72内に格納され、バーコード
ゾーンカウンタ65の各歩みごとに(ただし最初のもの
を除く)論理回路73により走査レジスタ56内の現在
セル値が前回セル値(レジスタ72から得られる)と比
較される。この論理回路73は差の絶対値(符号なしの
値)を発生し、この値が変異度積算器71に与えられ
る。変異度積算器71内の最終和は除算器74内のバー
コードの長さ(1だけ小さくされている)で割り算さ
れ、レジスタ75内にバーコード平均変異度を発生す
る。
【0038】この平均変異度はいろいろのコンポーネン
トの和、すなわちバーコードの諸特性(もっと正確には
バーコードを表す走査結果)の和、言い換えるとコント
ラスト、黒バーの数(もっと正確には先頭および後部両
方の黒バーの縁の数)、およびノイズの和である。しば
しばそうであるようにもしもコントラストが強く、黒バ
ーの数が一定であるなら(バーコードの情報はバーの幅
とそれらの間隔とによってのみ担持されるとして)、変
異度は単にバーコードのノイズの目安を表すと解するこ
とができる。必要であれば、バーコードのノイズをもっ
と良く表すさらに入念な目安を使用することもできる。
トの和、すなわちバーコードの諸特性(もっと正確には
バーコードを表す走査結果)の和、言い換えるとコント
ラスト、黒バーの数(もっと正確には先頭および後部両
方の黒バーの縁の数)、およびノイズの和である。しば
しばそうであるようにもしもコントラストが強く、黒バ
ーの数が一定であるなら(バーコードの情報はバーの幅
とそれらの間隔とによってのみ担持されるとして)、変
異度は単にバーコードのノイズの目安を表すと解するこ
とができる。必要であれば、バーコードのノイズをもっ
と良く表すさらに入念な目安を使用することもできる。
【0039】背景レベルがレジスタ62内に設定され、
バーコード平均レベルがレジスタ70内に設定される
と、しきい値レジスタ76の値が背景レベルの半分また
はバーコード平均値のいずれか小さい方に設定される。
バーコード平均レベルがレジスタ70内に設定される
と、しきい値レジスタ76の値が背景レベルの半分また
はバーコード平均値のいずれか小さい方に設定される。
【0040】一旦バーコード自体のこれら諸特徴が決定
されると、有効度試験論理ユニット77によりさらに有
効度試験が遂行される。有効であるための条件は以下の
とおりである: 1.バーコード内の値域(すなわちレジスタ66、67
の差)は、実際の白レベルピーク値(レジスタ67にあ
る)の少なくとも予定比率の大きさ(例えば30%)を
もつべきである。
されると、有効度試験論理ユニット77によりさらに有
効度試験が遂行される。有効であるための条件は以下の
とおりである: 1.バーコード内の値域(すなわちレジスタ66、67
の差)は、実際の白レベルピーク値(レジスタ67にあ
る)の少なくとも予定比率の大きさ(例えば30%)を
もつべきである。
【0041】2.バーコード内の平均値(レジスタ70
内にある)は、少なくとも、実際の白レベルピーク値
(例えば10%)の予定の比率だけ、バーコードの値域
(レジスタ66および67内にある)の両限界から異な
っているべきである。
内にある)は、少なくとも、実際の白レベルピーク値
(例えば10%)の予定の比率だけ、バーコードの値域
(レジスタ66および67内にある)の両限界から異な
っているべきである。
【0042】3.変異度(レジスタ75内にある)は、
少なくとも実際の白レベルピーク値の予定比率(例えば
3%)であるべきである。
少なくとも実際の白レベルピーク値の予定比率(例えば
3%)であるべきである。
【0043】もしもこれらの条件のいずれかが満足され
ないと、走査は無効とみなされ、プロセスはエラー出力
線を介してブロック38(図5)を出、無効終了ブロッ
ク42へ進む。
ないと、走査は無効とみなされ、プロセスはエラー出力
線を介してブロック38(図5)を出、無効終了ブロッ
ク42へ進む。
【0044】ブロック38の次のオペレーションはブロ
ック39である。このブロックでは走査においてバーコ
ードが強調される。強調はバーコードの不良読み取りの
確率すなわちバーコード復号不能の確率を低減する。
ック39である。このブロックでは走査においてバーコ
ードが強調される。強調はバーコードの不良読み取りの
確率すなわちバーコード復号不能の確率を低減する。
【0045】この強調されたバーコード走査は第二走査
レジスタ80内でユニット81によって発生される。こ
の第二走査レジスタ80内のバーコードゾーンを進むた
め、また走査レジスタ56内のバーコードを進むため、
カウンタ(これは65でよい)が使われる。しかし第一
走査レジスタを進む各ステップは三つの連続的セル値を
抽出する。ユニット81は、トリプレットの二つの外側
の値の和の半分をトリプレット中央のセル値から引き算
し、乗数パラメーターkを乗じ、この積を中央セル値に
加算する。この値は第二走査レジスタ80内の対応セル
中に入力される。
レジスタ80内でユニット81によって発生される。こ
の第二走査レジスタ80内のバーコードゾーンを進むた
め、また走査レジスタ56内のバーコードを進むため、
カウンタ(これは65でよい)が使われる。しかし第一
走査レジスタを進む各ステップは三つの連続的セル値を
抽出する。ユニット81は、トリプレットの二つの外側
の値の和の半分をトリプレット中央のセル値から引き算
し、乗数パラメーターkを乗じ、この積を中央セル値に
加算する。この値は第二走査レジスタ80内の対応セル
中に入力される。
【0046】これを表す方程式は、 vn1=vn+k{vn−(vn-1+vn+1)/2} である。大きな括弧の中の第二項はトリプレットの二つ
の外側セルの値の平均値であり、大きな括弧全体は中央
セル値が線形性からずれる程度を表す。大きな括弧の項
(乗数kを乗じられている)を中央セルの値に加算する
と、このズレが大きくなる。このようにして、強調した
走査の「ピーク性」は元の走査のピクセル値よりも増大
する。すなわち元の走査の(空間的)高周波数成分が強
調される。この手順は、サブ走査の「鉛直方向の」平均
化と共に用いるとき、バーコードの縁にアクセント(鋭
さ)を付ける2次元デジタルフィルタリングを与える。
の外側セルの値の平均値であり、大きな括弧全体は中央
セル値が線形性からずれる程度を表す。大きな括弧の項
(乗数kを乗じられている)を中央セルの値に加算する
と、このズレが大きくなる。このようにして、強調した
走査の「ピーク性」は元の走査のピクセル値よりも増大
する。すなわち元の走査の(空間的)高周波数成分が強
調される。この手順は、サブ走査の「鉛直方向の」平均
化と共に用いるとき、バーコードの縁にアクセント(鋭
さ)を付ける2次元デジタルフィルタリングを与える。
【0047】もちろん、第二走査レジスタ80内のセル
の値は範囲0ないし1内にあるように制限される。また
バーコードゾーン内の第一および最終セルの内容は第一
レジスタから第二走査レジスタに単に直接コピーされ
る。これはそれらの内容がトリプレットの一部を形成す
ることができないからである。
の値は範囲0ないし1内にあるように制限される。また
バーコードゾーン内の第一および最終セルの内容は第一
レジスタから第二走査レジスタに単に直接コピーされ
る。これはそれらの内容がトリプレットの一部を形成す
ることができないからである。
【0048】この強調の程度を制御するパラメーターk
は論理ユニット82により決定される。この論理ユニッ
トは機能(d−変異)/変異を計算する。ここにdはし
きい値レジスタ76内のしき値とレジスタ66、67内
の実際のピーク黒値および白値との差の大きい方であ
り、変異はレジスタ75内の変異である。この結果は範
囲0から1までに限定され、kの値とされる。
は論理ユニット82により決定される。この論理ユニッ
トは機能(d−変異)/変異を計算する。ここにdはし
きい値レジスタ76内のしき値とレジスタ66、67内
の実際のピーク黒値および白値との差の大きい方であ
り、変異はレジスタ75内の変異である。この結果は範
囲0から1までに限定され、kの値とされる。
【0049】ブロック39の次のオペレーションがブロ
ック40である。このブロックで走査されたバーコード
が決定される。さらに正確にはバーの縁、すなわち当該
走査における黒および白の間の遷移の位置、が決定され
る。
ック40である。このブロックで走査されたバーコード
が決定される。さらに正確にはバーの縁、すなわち当該
走査における黒および白の間の遷移の位置、が決定され
る。
【0050】これを行なうため、第二走査レジスタ80
におけるバーコードゾーンを進むためのカウンタ(図示
してないがカウンタ65でよい)が使用される。この場
合、この走査レジスタに沿った各歩みが一対の連続的セ
ル値を抽出する。演算ユニット85が各対の二つのセル
の値をしきい値レジスタ76内のしきい値と比較する。
その対の第一セルの値がしきい値を超えており、かつ第
二セルの値がしきい値未満であると、カウンタの計数は
白から黒への遷移、すなわち黒バーの開始、として記録
される。もしもこの対の第一セル値がしきい値未満であ
り、かつ第二セル値がしきい値を超えていると、カウン
タの計数は黒から白への遷移すなわち黒バーの終了とし
て記録される。
におけるバーコードゾーンを進むためのカウンタ(図示
してないがカウンタ65でよい)が使用される。この場
合、この走査レジスタに沿った各歩みが一対の連続的セ
ル値を抽出する。演算ユニット85が各対の二つのセル
の値をしきい値レジスタ76内のしきい値と比較する。
その対の第一セルの値がしきい値を超えており、かつ第
二セルの値がしきい値未満であると、カウンタの計数は
白から黒への遷移、すなわち黒バーの開始、として記録
される。もしもこの対の第一セル値がしきい値未満であ
り、かつ第二セル値がしきい値を超えていると、カウン
タの計数は黒から白への遷移すなわち黒バーの終了とし
て記録される。
【0051】またこの演算ユニットはもっと正確な位置
を与えるための内挿計算をすることが好ましい。このた
め、量(vth−v1)/(v2−v1)が計算され(ここ
にv1およびv2はセル対の第一および第二セルの値、v
thはしきい値である)、バーコードゾーンカウンタ65
からの計数に加算される。これはもしも最小のバー幅お
よび間隙がピクセル寸法よりはるかに大きいときは必要
でない。
を与えるための内挿計算をすることが好ましい。このた
め、量(vth−v1)/(v2−v1)が計算され(ここ
にv1およびv2はセル対の第一および第二セルの値、v
thはしきい値である)、バーコードゾーンカウンタ65
からの計数に加算される。これはもしも最小のバー幅お
よび間隙がピクセル寸法よりはるかに大きいときは必要
でない。
【0052】バーコードゾーンは、前文から一つのセル
を、また後文から一つのセルをこれに含めることにより
バーコードゾーンを拡張することが便利であることがあ
る。そのようにすると当該バーコードの最初の白から黒
への遷移および最後の黒から白への遷移ももっと正確に
位置決めすることができる。もちろんさらに多数のセル
をバーコード強調に含めることも好ましい。実際、所望
であれば第一走査レジスタの内容全体を保持しておき、
第二レジスタで強調することができる。これはいくつか
の不必要な余分の処理を来たすが、システムのオペレー
ションに影響することはない。
を、また後文から一つのセルをこれに含めることにより
バーコードゾーンを拡張することが便利であることがあ
る。そのようにすると当該バーコードの最初の白から黒
への遷移および最後の黒から白への遷移ももっと正確に
位置決めすることができる。もちろんさらに多数のセル
をバーコード強調に含めることも好ましい。実際、所望
であれば第一走査レジスタの内容全体を保持しておき、
第二レジスタで強調することができる。これはいくつか
の不必要な余分の処理を来たすが、システムのオペレー
ションに影響することはない。
【0053】得られる計数、すなわち位置値、はブロッ
ク25で格納される。これは計数値を直接に走査結果格
納器87に送ることにより行なうことができる。しかし
これらの位置値は、バーコード復号器86はバーコード
を復号してから復号済みバーコード記号を走査結果格納
器87へ送るバーコード復号器86に送ることが好まし
い。もしもバーコードを復号することが可能でないと、
その走査は無効であり、プロセスはブロック40(図
5)を出て、エラー出力線を経由して無効終了ブロック
42に進む。
ク25で格納される。これは計数値を直接に走査結果格
納器87に送ることにより行なうことができる。しかし
これらの位置値は、バーコード復号器86はバーコード
を復号してから復号済みバーコード記号を走査結果格納
器87へ送るバーコード復号器86に送ることが好まし
い。もしもバーコードを復号することが可能でないと、
その走査は無効であり、プロセスはブロック40(図
5)を出て、エラー出力線を経由して無効終了ブロック
42に進む。
【0054】許容可能なバーコード記号の組み合わせ
(すなわち復号済みバーコード)に関してある程度の先
見的知識が利用可能である。例えば、いくつかの記号は
許容不可能であることが知れているとか、あるいは記号
の組み合わせは予定範囲内になければならない、とかい
うことである。もしもそれらの必要な条件を満たしてい
れば、復号済みバーコードの有効度を試験し、無効であ
れば当該走査が無効であるとみなされ、処理は再びブロ
ック40(図5)を終え、エラー出力線を経由して無効
終了ブロック42へ進む。無効でなければバーコードが
完全に同定され、復号され、且つ復号済みバーコードが
走査結果格納器87に格納されたとき、処理はブロック
41を終了する。
(すなわち復号済みバーコード)に関してある程度の先
見的知識が利用可能である。例えば、いくつかの記号は
許容不可能であることが知れているとか、あるいは記号
の組み合わせは予定範囲内になければならない、とかい
うことである。もしもそれらの必要な条件を満たしてい
れば、復号済みバーコードの有効度を試験し、無効であ
れば当該走査が無効であるとみなされ、処理は再びブロ
ック40(図5)を終え、エラー出力線を経由して無効
終了ブロック42へ進む。無効でなければバーコードが
完全に同定され、復号され、且つ復号済みバーコードが
走査結果格納器87に格納されたとき、処理はブロック
41を終了する。
【0055】この時点で図7のシーケンスが完了する。
すなわち図2のブロック23ないし25が完了し、処理
は上述したように図2のブロック26を行なう。特に図
2のプロセスはブロック26に進み、そこで走査結果格
納器87内に格納されている当該走査が図6のコンセン
サス試験ユニット88により上述した方法で試験され
る。
すなわち図2のブロック23ないし25が完了し、処理
は上述したように図2のブロック26を行なう。特に図
2のプロセスはブロック26に進み、そこで走査結果格
納器87内に格納されている当該走査が図6のコンセン
サス試験ユニット88により上述した方法で試験され
る。
【0056】
【発明の効果】以上に説明したように、本発明は、バー
コード記号を評価するためさらに二つの走査を追加し、
それらのコンセンサスを利用するので、バーコードの誤
読確率が常に低く、従ってバーコード記号の正確な解釈
ができる方法および装置を与える。
コード記号を評価するためさらに二つの走査を追加し、
それらのコンセンサスを利用するので、バーコードの誤
読確率が常に低く、従ってバーコード記号の正確な解釈
ができる方法および装置を与える。
【図1】 バーコード付き物品を取り扱うユニットのブ
ロック線図である。
ロック線図である。
【図2】 本システムの一般的な流れ図である。
【図3】 どのようにバーコードイメージの走査が行な
われるかを示す図である。
われるかを示す図である。
【図4】 本バーコード認識処理手段の一部のブロック
線図である。
線図である。
【図5】 図1に示すイメージメモリの一部の線図であ
る。
る。
【図6】 バーコード認識処理手段のさらに別の部分の
ブロック線図である。
ブロック線図である。
【図7】 図2の一部についてのさらに詳細な流れ図で
ある。
ある。
10 文書 16 ライン 55 ピクセル 56 走査レジスタ 57 ピクセルトリプレット 58 積算器 60 加算器 61 除算器 69 除算器 74 除算器 80 第二走査レジスタ 81 演算ユニット 85 演算ユニット 90 セル
Claims (2)
- 【請求項1】 符号化されたデータを表し物品上に配置
されたバーコードを読み取る方法であって、 (a)該バーコードを光学的に走査してそのイメージを
メモリ内に格納するステップと、 (b)該格納されたイメージを複数回走査するステップ
と、 (c)該走査の結果を格納手段に格納するステップと、 (d)少なくとも二回の走査のコンセンサスを得るため
の試験を行なうステップと、 (e)到達したコンセンサスに基づいて該符号化された
データを評価するステップとを含むバーコード読み取り
方法。 - 【請求項2】 バーコード読み取り装置であって、 物品上のバーコードを光学的に走査する走査手段と、 該走査したバーコードのイメージを格納するメモリ手段
と、 該メモリ内に格納されたイメージを複数回走査するため
の処理手段と、 該処理手段から得られる走査結果を格納する格納手段
と、 少なくとも二回の走査結果のコンセンサスを得るため該
格納手段内の走査結果を試験する試験手段とを含むバー
コード読み取り装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9325439.9 | 1993-12-13 | ||
GB939325439A GB9325439D0 (en) | 1993-12-13 | 1993-12-13 | Barcode reading method and apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07200712A true JPH07200712A (ja) | 1995-08-04 |
Family
ID=10746508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6304628A Pending JPH07200712A (ja) | 1993-12-13 | 1994-12-08 | バーコード読み取りの方法および装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5510604A (ja) |
EP (1) | EP0661661A1 (ja) |
JP (1) | JPH07200712A (ja) |
GB (1) | GB9325439D0 (ja) |
ZA (1) | ZA949412B (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008541236A (ja) * | 2005-05-05 | 2008-11-20 | 株式会社オプトエレクトロニクス | バーコード検知方法及び装置 |
US7503494B2 (en) | 2006-05-30 | 2009-03-17 | Toshiba Samsung Storage Technology Corporation | Optical disc apparatus and barcode reading method |
CN107229887A (zh) * | 2016-03-24 | 2017-10-03 | 北京亮亮视野科技有限公司 | 多码扫描设备及多码扫描方法 |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6860428B1 (en) * | 1998-09-11 | 2005-03-01 | Robotic Vision Systems Inc. | Optical symbologies imager |
JP3077616B2 (ja) * | 1997-01-31 | 2000-08-14 | 富士通株式会社 | バーコード読取方法 |
US5848426A (en) * | 1993-03-05 | 1998-12-08 | Metanetics Corporation | Automatic data translation between different business systems |
US7387253B1 (en) | 1996-09-03 | 2008-06-17 | Hand Held Products, Inc. | Optical reader system comprising local host processor and optical reader |
US5942741A (en) * | 1994-03-04 | 1999-08-24 | Welch Allyn, Inc. | Apparatus for optimizing throughput in decoded-output scanners and method of using same |
US6705526B1 (en) * | 1995-12-18 | 2004-03-16 | Metrologic Instruments, Inc. | Automated method of and system for dimensioning objects transported through a work environment using contour tracing, vertice detection, corner point detection, and corner point reduction methods on two-dimensional range data maps captured by an amplitude modulated laser scanning beam |
US5698833A (en) * | 1996-04-15 | 1997-12-16 | United Parcel Service Of America, Inc. | Omnidirectional barcode locator |
US5686716A (en) * | 1996-05-13 | 1997-11-11 | Psc, Inc. | Bar code void and spot discrimination |
US5969325A (en) * | 1996-06-03 | 1999-10-19 | Accu-Sort Systems, Inc. | High speed image acquisition system and method of processing and decoding barcode symbol |
US5974147A (en) * | 1996-11-07 | 1999-10-26 | Pitney Bowes Inc. | Method of verifying unreadable indicia for an information-based indicia program |
US5890818A (en) * | 1997-06-30 | 1999-04-06 | Pitney Bowes Inc. | Pixel splitting to improve bar code readability |
JPH1153465A (ja) * | 1997-08-08 | 1999-02-26 | Fujitsu Ltd | バーコード読取装置 |
NL1008260C2 (nl) * | 1998-02-10 | 1999-08-11 | Scantech Bv | Optische inrichting voor het uitlezen en decoderen van een barcode. |
FR2775811B1 (fr) * | 1998-03-05 | 2000-05-26 | Dentelles Darquer Sa | Procede et dispositif de lecture et de codage numerique d'un support plan perfore, en particulier d'un carton jacquard |
DE69807242T2 (de) * | 1998-12-29 | 2003-07-10 | Datalogic S.P.A., Lippo Di Calderara Di Reno | Verfahren zum Lesen eines optischen Codes |
US6695209B1 (en) | 1999-10-04 | 2004-02-24 | Psc Scanning, Inc. | Triggerless optical reader with signal enhancement features |
US20020016750A1 (en) * | 2000-06-20 | 2002-02-07 | Olivier Attia | System and method for scan-based input, storage and retrieval of information over an interactive communication network |
US8682077B1 (en) | 2000-11-28 | 2014-03-25 | Hand Held Products, Inc. | Method for omnidirectional processing of 2D images including recognizable characters |
WO2004003444A1 (en) * | 2002-06-27 | 2004-01-08 | I.M.T. Interface Multigrad Technology Ltd. | Changing the temperature of a liquid sample and a receptacle useful therefor |
US7156311B2 (en) * | 2003-07-16 | 2007-01-02 | Scanbuy, Inc. | System and method for decoding and analyzing barcodes using a mobile device |
US7242816B2 (en) * | 2003-08-11 | 2007-07-10 | Scanbuy, Inc. | Group average filter algorithm for digital image processing |
DK1719068T3 (da) * | 2003-12-04 | 2010-10-18 | Scanbuy Inc | Sektionbaseret algoritme til billedforbedring |
US7387250B2 (en) * | 2003-12-04 | 2008-06-17 | Scanbuy, Inc. | System and method for on the spot purchasing by scanning barcodes from screens with a mobile device |
US7296747B2 (en) * | 2004-04-20 | 2007-11-20 | Michael Rohs | Visual code system for camera-equipped mobile devices and applications thereof |
US20050246196A1 (en) * | 2004-04-28 | 2005-11-03 | Didier Frantz | Real-time behavior monitoring system |
US20050283448A1 (en) * | 2004-06-22 | 2005-12-22 | Dixon Kyle M | Method and system for providing a barcode image over a network |
US7309015B2 (en) * | 2004-07-14 | 2007-12-18 | Scanbuy, Inc. | Mobile device gateway providing access to instant information |
US7528824B2 (en) * | 2004-09-30 | 2009-05-05 | Microsoft Corporation | Keyboard or other input device using ranging for detection of control piece movement |
US20060213997A1 (en) * | 2005-03-23 | 2006-09-28 | Microsoft Corporation | Method and apparatus for a cursor control device barcode reader |
US7268705B2 (en) * | 2005-06-17 | 2007-09-11 | Microsoft Corporation | Input detection based on speckle-modulated laser self-mixing |
US7557795B2 (en) * | 2005-06-30 | 2009-07-07 | Microsoft Corporation | Input device using laser self-mixing velocimeter |
US7283214B2 (en) * | 2005-10-14 | 2007-10-16 | Microsoft Corporation | Self-mixing laser range sensor |
US7543750B2 (en) * | 2005-11-08 | 2009-06-09 | Microsoft Corporation | Laser velocimetric image scanning |
US7505033B2 (en) * | 2005-11-14 | 2009-03-17 | Microsoft Corporation | Speckle-based two-dimensional motion tracking |
US20070109267A1 (en) * | 2005-11-14 | 2007-05-17 | Microsoft Corporation | Speckle-based two-dimensional motion tracking |
KR100651036B1 (ko) * | 2005-12-12 | 2006-11-30 | 한국전자통신연구원 | 공간다중화 시스템에서 부분적인 구복호 기반 복잡도를줄이는 반복 복호 수신 장치 및 그 방법 |
US8016187B2 (en) * | 2006-02-21 | 2011-09-13 | Scanbury, Inc. | Mobile payment system using barcode capture |
US8150163B2 (en) * | 2006-04-12 | 2012-04-03 | Scanbuy, Inc. | System and method for recovering image detail from multiple image frames in real-time |
US8496177B2 (en) | 2007-06-28 | 2013-07-30 | Hand Held Products, Inc. | Bar code reading terminal with video capturing mode |
US7743991B2 (en) * | 2007-11-14 | 2010-06-29 | Hand Held Products, Inc. | Automatic image transmission of difficult to read symbols |
EP2209078A1 (de) * | 2009-01-15 | 2010-07-21 | ETH Zürich | Verfahren und tragbares Gerät zum Erkennen von Barcodes |
CN104298947B (zh) * | 2014-08-15 | 2017-03-22 | 广东顺德中山大学卡内基梅隆大学国际联合研究院 | 一种对二维条码精确定位的方法及装置 |
US9501683B1 (en) * | 2015-08-05 | 2016-11-22 | Datalogic Automation, Inc. | Multi-frame super-resolution barcode imager |
US20180300515A1 (en) * | 2017-04-17 | 2018-10-18 | Symbol Technologies, Llc | Method and apparatus for accelerated data decoding |
CN111291578A (zh) * | 2020-03-10 | 2020-06-16 | 北京意锐新创科技有限公司 | 移动支付设备的生产测试方法和系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4044227A (en) * | 1975-08-07 | 1977-08-23 | The Upjohn Company | Bar code reader |
US4308455A (en) * | 1980-06-26 | 1981-12-29 | E. I. Du Pont De Nemours And Company | Method for decoding bar-coded labels |
US5216231A (en) * | 1988-05-13 | 1993-06-01 | Alps Electric Co., Ltd. | Self-scanning code reading device |
US4873426A (en) * | 1988-08-03 | 1989-10-10 | Image Business Systems Corporation | Technique for reading bar codes |
EP0449634B1 (en) * | 1990-03-28 | 1997-07-16 | Omniplanar, Inc. | Omnidirectional bar code reader |
US5268580A (en) * | 1992-09-02 | 1993-12-07 | Ncr Corporation | Bar code enhancement system and method for vision scanners |
-
1993
- 1993-12-13 GB GB939325439A patent/GB9325439D0/en active Pending
-
1994
- 1994-09-23 US US08/311,250 patent/US5510604A/en not_active Expired - Lifetime
- 1994-11-28 ZA ZA949412A patent/ZA949412B/xx unknown
- 1994-12-06 EP EP94309079A patent/EP0661661A1/en not_active Withdrawn
- 1994-12-08 JP JP6304628A patent/JPH07200712A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008541236A (ja) * | 2005-05-05 | 2008-11-20 | 株式会社オプトエレクトロニクス | バーコード検知方法及び装置 |
US7503494B2 (en) | 2006-05-30 | 2009-03-17 | Toshiba Samsung Storage Technology Corporation | Optical disc apparatus and barcode reading method |
CN107229887A (zh) * | 2016-03-24 | 2017-10-03 | 北京亮亮视野科技有限公司 | 多码扫描设备及多码扫描方法 |
Also Published As
Publication number | Publication date |
---|---|
ZA949412B (en) | 1995-08-11 |
US5510604A (en) | 1996-04-23 |
GB9325439D0 (en) | 1994-02-16 |
EP0661661A1 (en) | 1995-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH07200712A (ja) | バーコード読み取りの方法および装置 | |
US6366696B1 (en) | Visual bar code recognition method | |
US8746566B2 (en) | Two-dimensional symbol and method for reading same | |
US9390357B2 (en) | Readable matrix code | |
DE69027757T2 (de) | Verfahren zur Dekodierung von strichkodierten Symbolen aus Teilabtastungen | |
EP0877334B1 (en) | Method and apparatus for decoding bar code symbols using independent bar and space analysis | |
EP0669593B1 (en) | Two-dimensional code recognition method | |
US7454040B2 (en) | Systems and methods of detecting and correcting redeye in an image suitable for embedded applications | |
US4932065A (en) | Universal character segmentation scheme for multifont OCR images | |
US6895116B2 (en) | Automatically extracting graphical bar codes | |
US7539344B2 (en) | Boundary detection method between areas having different features in image data | |
EP0658042A1 (en) | Dropped-form document image compression | |
JPH0612515A (ja) | Ccd/cmdカメラを使用して二次元バーコードを復号する方法及び装置 | |
JP2000501209A (ja) | サブ−ピクセルデータフォームリーダー | |
JPH0157394B2 (ja) | ||
US7350710B2 (en) | Two-dimensional code extracting method | |
US20050196071A1 (en) | Black white image scaling for optical character recognition | |
US6039252A (en) | Bar code reading system for reconstructing irregularly damaged bar codes | |
WO1996009597A1 (en) | Method and apparatus for detecting and adaptively decoding bar code symbols in continuous images | |
DE102019217980A1 (de) | Verfahren und vorrichtung zum dekodieren von unter-aufgelösten symbolen | |
JPH11184965A (ja) | 帳票識別登録装置 | |
US7570835B2 (en) | Edge smoothing filter for character recognition | |
JP2737755B2 (ja) | データ読取装置 | |
He | High-speed edge-detection algorithm for bar-code scanners | |
JPH06251194A (ja) | 光学的情報読取装置 |