Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH09161001A - バーコード読取装置 - Google Patents
[go: Go Back, main page]

JPH09161001A - バーコード読取装置 - Google Patents

バーコード読取装置

Info

Publication number
JPH09161001A
JPH09161001A JP7316648A JP31664895A JPH09161001A JP H09161001 A JPH09161001 A JP H09161001A JP 7316648 A JP7316648 A JP 7316648A JP 31664895 A JP31664895 A JP 31664895A JP H09161001 A JPH09161001 A JP H09161001A
Authority
JP
Japan
Prior art keywords
data
bar
demodulated
demodulated data
scanning
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
JP7316648A
Other languages
English (en)
Inventor
Mitsuo Watanabe
光雄 渡辺
Ichiro Shinoda
一郎 篠田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP7316648A priority Critical patent/JPH09161001A/ja
Priority to US08/677,373 priority patent/US5780832A/en
Publication of JPH09161001A publication Critical patent/JPH09161001A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

(57)【要約】 【課題】分割読み全体の処理時間を短くすることができ
るとともに誤読の可能性を低くすることができるバーコ
ード読取装置を提供する。 【解決手段】復調データ格納バッファ7には、走査光学
系14によるレーザビームLの一走査中に得られたバー
幅データ群が格納される。CPU1は、これらバー幅デ
ータ群を順次復調して、一連の復調データ列として、復
調データ格納バッファ7に格納する。CPU1は、この
復調データ列内に含まれる各復調データを相互に比較
し、連続読みによる復調データ及び分割読みによる復調
データを優先して有効データとして扱うとともに、これ
ら復調データ相互の関係により論理的にありえない復調
データを、ノイズデータとみなして削除する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、両端が固定パター
ンの識別バーによって囲まれたデータキャラクタのブロ
ックからなるバーコードの読取装置に関し、特に、バー
コードを部分的に読み取って得られた複数の読み取りデ
ータを合成してバーコード全体による読取データを獲得
するバーコードの読取装置に関する。
【0002】
【従来の技術】近年、流通業等におけるPOSシステム
に代表されるように、商品等の管理をバーコードによっ
て行うことが一般化している。例えば、商店のPOSシ
ステムでは、商品の種類や販売価格等の情報をバーコー
ドのフォーマットにコード化して商品に印刷しておく。
そして、レジにてこのバーコードを読み取ることによっ
て、精算を行うとともに、商品の売り上げ数をリアルタ
イムで集計し、在庫管理や仕入れ管理に役立てるように
している。
【0003】ところで、このようなバーコードは、WP
Cコード,JANコード,UPCコード,EANコード
等の固定長コードと、可変長のセカンドコードに大別さ
れる。例えば、WPCコードは、図20に示すように、
左端に付加されるスタートガードバー(LGB),中間
部に挿入されるセンターバー(CB),及び、右端に付
加されるエンドガードバー(RGB)を有し、スタート
ガードバーとセンターバーとの間に6キャラクタのデー
タキャラクタからなる第1データブロックを格納し、セ
ンターバーとエンドガードバーとの間に6キャラクタの
データキャラクタからなる第2データブロックを格納し
ている。これら各ガードバー及びセンターバーは、予め
規格によってそのパターンが定められているので、バー
コードの読取装置は、これらガードバー及びセンターバ
ーを検知することができる。
【0004】また、バーコード読取装置は、これらガー
ドバー及びセンターバーを手掛かりに、バーコードのデ
ータキャラクタ(コード化した数値又は記号の最小単
位)を読み取ることができる。この読み取りの方式とし
ては、連続読み方式及びブロック読み方式,並びに、分
割読み方式といった方式がある。ブロック読み方式と
は、一方のガードバーとセンターバーに囲まれたデータ
キャラクタのブロックのみをバーコードであると認識
し、2つのブロックを夫々別個に読み取った後でこれら
ブロックの復調データを結合し、一個のバーコードに対
応する復調データとして再現するというものである。ま
た、連続読み方式とは、センターバーを中心に両ガード
バーに挟まれた両ブロックを一度に読み取って、一個の
バーコードに対応する復調データとして再現するという
ものである。一方、分割読み方式とは、最小限1個のガ
ードバー又はセンターバーに連接するデータキャラクタ
列であってもバーコードであると認識し、夫々別個に読
み出したこれらデータキャラクタの復調データの断片を
復調後全て格納し、一個のバーコードに対応する復調デ
ータとして合成するというものである。
【0005】上記した連続読み方式及びブロック読み方
式によると、バーコードのガードバーとセンターバーに
挟まれたデータのみが有効とみなされて周囲のデータか
ら抽出するので、バーコード以外の部分に基づくデータ
等のノイズは効率よく除去される。その反面、商店のレ
ジ等において使用される据え置き方式のバーコード読取
装置では、バーコード読取用レーザビームがあらゆる方
向に走査されるので、一回のレーザビーム走査で一つの
ブロック全体が読み取られる可能性は非常に低い。従っ
て、一回のレーザビーム走査で読み取り得る可能性が高
いデータキャラクタ列の断片からバーコード全体に対応
する復調データを合成する分割読み方式を、連続読み方
式及びブロック読み方式と併用することが望ましい。
【0006】
【発明が解決しようとする課題】しかしながら、分割読
み方式による場合には、バーコードを読み取って得られ
たデータを、他のノイズから抽出する必要がある。つま
り、一回のレーザビーム走査によって得られたデータの
うち、バーコードを読み取って得られたデータ列は一つ
しかないはずであるが、紙面ノイズ(バーコードの回り
に描かれた模様等)や文字等を読み取ったデータは、外
見上、バーコードを読み取って得られたデータ列との区
別が付きにくいので、これらノイズデータ中に本来のバ
ーコードによるデータが埋もれてしまうのである。従来
においては、これらノイズデータを含め全てのデータを
採取・復調し、可能性のある全てのデータ列の組み合わ
せを、試行錯誤しつつチェックしていた。
【0007】例えば、図20に示すように、WPCコー
ドの上を二本のレーザビーム(ビームX,ビームY)が
走査され、ビームXにより三つの復調データ(α,β,
γ)が得られ、ビームYにより二つの復調データ(δ,
ε)が得られたとする。この時に、各復調データに含ま
れるデータを、図21に示す。
【0008】この場合、バーコードを読み取って得られ
たデータ群は、ビームXによる復調データβとビームY
による復調データδだけであるので、本来であれば、こ
れら二つの復調データ(β,δ)のみを合成すれば、バ
ーコードによるデータを再現することができるはずであ
る。しかし、従来のバーコード読取装置は、合成処理前
に、各復調データ(α〜ε)の中から本来のバーコード
による復調データ(β,δ)を予め抽出することができ
ない。従って、各復調データを夫々組み合わせてみて、
バーコード全体に対応した復調データを再現できるかど
うかを、いちいち調べていたのである。
【0009】従って、ノイズデータの組み合わせをチェ
ックするための無駄な処理時間がかかり、全体としての
処理時間が長くなる問題があった。また、偶然にバーコ
ードに似たデータ形状となったノイズデータを合成して
得られたデータを、バーコード全体に対応した復調デー
タとして出力するといった誤読の可能性が大きかった。
【0010】本発明の課題は、以上の問題点に鑑み、ビ
ーム走査によって得られたデータ列からノイズデータを
論理的に削除することによって、分割読み全体の処理時
間を短くすることができるとともに誤読の可能性を低く
することができるバーコード読取装置を提供することで
ある。
【0011】
【課題を解決するための手段】請求項1によるバーコー
ド読取装置は、上記課題を解決するため、図1の原理図
に示した通り、繰り返し走査を行って被走査面上の走査
軌跡における明暗パターンを検出する走査手段(10
0)と、前記走査手段(100)による各回の走査の開
始を検出する走査開始検出手段(101)と、前記走査
手段(100)による各回の走査の終了を検出する走査
終了検出手段(102)と、前記走査開始検出手段(1
01)によって前記走査の開始が検出されてから前記走
査終了検出手段(102)によって前記走査の終了が検
出されるまでの間に前記走査手段(100)によって検
出された一走査分の明暗パターンを復調する復調手段
(103)と、前記復調手段(103)によって復調さ
れた一走査分の復調データの構成に基づき、バーコード
を走査することによって得られた明暗データを復調した
復調データである可能性がある部分のみを有効データと
して前記一走査分の復調データから抽出する有効データ
抽出手段(104)と、前記有効データ抽出手段(10
4)によって抽出された複数回走査分の有効データを合
成して、バーコードにコード化されていたデータを再現
する合成手段(105)とを備えたことを特徴とする。
【0012】請求項1によるバーコード読取装置による
と、走査手段(100)は、繰り返し走査を行って、被
走査面上の走査軌跡における明暗パターンを検出する。
走査開始検出手段(101)は、この走査手段(10
0)による各回の走査の開始を検出する。また、走査終
了検出手段(102)は、走査手段(100)による各
回の走査の終了を検出する。復調手段(103)は、走
査開始検出手段(101)によって前記走査の開始が検
出されてから前記走査終了検出手段(102)によって
前記走査の終了が検出されるまでの間に前記走査手段
(100)によって検出された一走査分の明暗パターン
を復調する。この復調は、走査手段(100)による走
査がなされる毎に行われる。そして、有効データ抽出手
段(104)は、前記復調手段(103)によって復調
された一走査分の復調データの構成に基づき、バーコー
ドを走査することによって得られた明暗データを復調し
た復調データである可能性がある部分のみを、有効デー
タとして前記一走査分の復調データから抽出する。即
ち、それ以外の部分を削除する。合成手段(105)
は、この有効データ抽出手段(104)によって抽出さ
れた複数回走査分の有効データを合成して、バーコード
にコード化されていたデータを再現する。従って、合成
手段(105)による合成処理の対象は、抽出された有
効データに限られるので、その処理時間を大幅に短くで
きるとともに、誤読の可能性を低くすることができる。
【0013】以下、本発明の構成要件を説明する。 (バーコード)バーコードは、固定パターンの識別バー
によってデータキャラクタを挟んでいる構成のものであ
れば有効データを抽出する手がかりとなるので好まし
い。この識別バーは2本のみであっても良いし、識別バ
ーが3本であるとともに各識別バーの間に夫々データキ
ャラクタを挟んでいても良い。前者の例としては、例え
ば、ITFコード,NW−7,CODE39,CODE
128,等の可変長コードが挙げられる。また、後者の
例としては、例えば、WPCコード,JANコード,E
ANコード,等の固定長コードが挙げられる。 (走査手段)走査手段は、繰り返し走査を行うが、この
走査は、走査光学系を用いた光学的走査とすることがで
きる。また、この走査手段は、各回の走査が夫々異なっ
た方向に向けて行われるように構成されていることが望
ましい。 (走査開始検出手段,走査終了検出手段)走査開始検出
手段及び走査終了検出手段は、走査手段が走査ビームを
走査させる形態である場合には、この走査ビームの初期
位置及び終期位置を検出する光学的センサを用いること
ができる。また、走査手段がポリゴンミラーやガルバノ
ミラーのような走査光学系を含んでいる場合には、これ
ら走査光学系の角度を機械的に検出するセンサとするこ
とができる。
【0014】次に、各従属項によるバーコード読取装置
は以下の手段を採用した。請求項2によるバーコード読
取装置は、請求項1の走査手段が、コード化されたデー
タ領域が固定パターンを有する1本のセンターバーによ
って2つのブロックに分割されているとともに固定パタ
ーンを有する2本のガードバーによって両側から挟まれ
ている構造のバーコードを走査することで、特定したも
のである。
【0015】請求項3によるバーコード読取装置は、請
求項2の有効データ抽出手段が、一連の復調データが固
定パターンを有する1本のセンターバーによって2つの
ブロックに分割されているとともに固定パターンを有す
る2本のガードバーによって両側から挟まれている形の
復調データが前記一走査分の復調データ中に含まれてい
た場合には、この復調データを有効データとして抽出す
ることで、特定したものである。
【0016】請求項4によるバーコード読取装置は、請
求項2の有効データ抽出手段が、一本のセンターバーと
一本のガードバーとによって一連の復調データが囲まれ
たブロックデータが前記一走査分の復調データ中に含ま
れていた場合には、このブロックデータを有効データと
して抽出することで、特定したものである。
【0017】請求項5によるバーコード読取装置は、請
求項4の有効データ抽出手段が、前記ブロックデータの
前記センターバー側の外側にこのセンターバーから連続
する復調データがあった場合には、このセンターバーか
ら連続する復調データをも、有効データとして抽出する
ことで、特定したものである。
【0018】請求項6によるバーコード読取装置は、請
求項4の有効データ抽出手段が、前記ブロックデータの
前記センターバー側の外側に、他のガードバーがあり且
つこの他のガードバーからセンターバー側に向かって連
続する復調データがあった場合には、この他のガードバ
ーから連続する復調データをも、有効データとして抽出
することで、特定したものである。
【0019】請求項7によるバーコード読取装置は、請
求項2の有効データ抽出手段が、一本のセンターバー及
び一本のガードバーから夫々互いの側に向かって連続す
る復調データが前記一走査分の復調データ中に含まれて
いた場合には、これら一本のセンターバー及び一本のガ
ードバーから夫々互いの側に向かって連続する復調デー
タを、有効データとして抽出することで、特定したもの
である。
【0020】請求項8によるバーコード読取装置は、請
求項7の有効データ抽出手段が、前記センターバーから
前記一本のガードバーとは反対側に向かって連続する復
調データがあった場合には、このセンターバーから連続
する復調データをも、有効データとして抽出すること
で、特定したものである。
【0021】請求項9によるバーコード読取装置は、請
求項7の有効データ抽出手段が、前記センターバーを中
心に前記一本のガードバーとは反対側に他のガードバー
があり且つこの他のガードバーからセンターバー側に向
かって連続する復調データがあった場合には、この他の
ガードバーから連続する復調データをも、有効データと
して抽出することで、特定したものである。
【0022】請求項10によるバーコード読取装置は、
請求項2の有効データ抽出手段が、ガードバーから一方
向に向けて復調データが連続している形のデータが複数
個前記一走査の復調データ中に含まれていた場合には、
何れも有効データとして抽出することで、特定したもの
である。
【0023】請求項11によるバーコード読取装置は、
請求項2の有効データ抽出手段が、ガードバーから一方
向に向けて復調データが連続している形のデータが複数
個前記一走査の復調データ中に含まれていた場合には、
歪み量が小さい方のみを有効データとして抽出すること
で、特定したものである。
【0024】請求項12によるバーコード読取装置は、
請求項2の有効データ抽出手段が、センターバーから一
方向に向けて復調データが連続している形のデータが複
数個前記一走査の復調データ中に含まれていた場合に
は、何れも有効データとして抽出することで、特定した
ものである。
【0025】請求項13によるバーコード読取装置は、
請求項2の有効データ抽出手段が、センターバーから一
方向に向けて復調データが連続している形のデータが複
数個前記一走査の復調データ中に含まれていた場合に
は、歪み量が小さい方のみを有効データとして抽出する
ことで、特定したものである。
【0026】
【発明の実施の形態】以下、図面に基づいて、本発明の
実施の態様の説明を行う。
【0027】
【実施形態1】図2は本発明の第1実施形態によるバー
コード読取装置の概略構成を示すブロック図である。本
第1実施形態によるバーコード読取装置は、WPCコー
ドのフォーマットに従ってデータをコード化した商品2
0上のバーコード21を読み取る装置である。 (全体構成)図2において、CPU1は、バー幅データ
群格納バッファ2,制御部回路3,インタフェース回路
4,ROM5,復調データ一時退避バッファ6,及び復
調データ格納バッファ7に対して、バス接続されてい
る。このCPU1は、バーコード読取装置全体の制御を
行うとともに、商品20の表面に印刷されたバーコード
21を読み取って得られたバー幅データ群を復調するデ
ータ復調処理を実行する。
【0028】ROM5は、CPU1において実行される
バーコード認識/復調処理プログラムを格納している読
み出し専用メモリである。インタフェース回路4は、C
PU1と他の回路とを接続しているバスBのステータス
を制御したり、外部装置へのデータ送信等を制御する回
路である。
【0029】制御部回路3は、モータ駆動回路8,レー
ザ駆動回路9,スピーカ10,発光ダイオード(LE
D)11,及びレーザビームの開始・終了検出回路17
を制御する回路である。このモータ駆動回路8は、モー
タ12を駆動して、走査光学系14を構成する図示せぬ
ポリゴンミラーを回転させる。また、レーザ駆動回路9
は、半導体レーザ13を駆動して、レーザビームLを出
射させる。また、スピーカ10は、バーコードの読取
(復調)完了を示す音声を発する。また、発光ダイオー
ド11は、バーコードの復調の結果得られた商品20の
販売価格等の情報を表示する表示素子である。
【0030】半導体レーザ13から出射されたレーザビ
ームLは、走査光学系14に入射されて、この走査光学
系14によって偏向される。即ち、この走査光学系14
は、モータ12によって回転される図示せぬポリゴンミ
ラーによってレーザビームLを一方向に偏向する。この
ポリゴンミラーの反射側には、複数の固定ミラーが固定
されている。従って、ポリゴンミラーによって偏向され
たレーザビームLは、各固定ミラーによって再度反射さ
れ、様々な方向にその偏向方向(走査方向)が変えられ
る。即ち、図示せぬポリゴンミラーの回転角度が角度θ
0〜θ1の期間は、第1の固定ミラーによって第1の方向
への走査がなされ、角度θ1〜θ2の期間は第2の固定ミ
ラーによって第2の方向への走査がなされ、角度θ
(n-1)〜θnの期間は第nの固定ミラーによって第nの方
向への走査がなされる。ポリゴンミラーが更に回転する
と、レーザビームLを偏向させる反射面が隣に移り、再
度、第1〜第nの方向への走査がなされる。これら各方
向への走査を、以下、「一走査」という。なお、走査開
始検出手段及び走査終了検出手段としてのレーザビーム
の開始・終了検出回路17は、このように回転する図示
せぬポリゴンミラーの回転角を常時モニターし、この回
転角度がθ0,θ1…,θnになる毎に、一走査が終了し
て次の走査が開始したことを検出する。
【0031】このようにして走査されたレーザビームL
が商品20の表面(バーコード21を含む)に当たる
と、この表面においてレーザビームLが乱反射され、そ
の反射光Rの一部が受光素子(ホトダイオード)18に
受光される。A/D変換器15は、この受光素子18に
よって受光された反射光Rの明暗を示す電流値を、所定
のしきい値と比較して、二値化信号に変換する。この二
値化信号は、反射光Rの強度がバーコード21中の黒バ
ーの反射率に対応する場合には“H”を示し、反射光R
の強度がバーコード21中の白バーの反射率に対応する
場合には“L”を示す。
【0032】バー幅カウンタ16は、A/D変換器15
から入力された二値化信号に基づいて、二値化信号の立
ち上がりタイミングから立ち下がりタイミングまでの時
間(バーコード21中の黒バーの幅に対応するものと期
待される),及び、二値化信号の立ち下がりタイミング
から立ち上がりタイミングまでの時間(バーコード21
中の白バーの幅に対応するものと期待される)を測定す
る。なお、バー幅カウンタ16は、これらバー幅に対応
する時間を計測するためにクロック19からのクロック
数をカウントする。バー幅カウンタ16から出力される
各バーの読取データは、このカウント値と白又は黒を示
す色識別信号とを組み合わせた形態であり、レーザービ
ームの一走査毎に、このような読取データが連続的に出
力される。このように連続的に出力される一走査毎の読
取データを「バー幅データ群(明暗パターンに相当)」
という。以上の半導体レーザ13,走査光学系14,受
光素子18,A/D変換器15,及びバー幅カウンタ1
6が、走査手段に相当する。
【0033】バー幅データ群は、バー幅データ群格納バ
ッファ2に一時格納される。このバー幅データ群格納バ
ッファ2は、バー幅カウンタ16から入力されたバー幅
データ群を順次格納するとともに、CPU1からの求め
に応じて、格納した順に一個づつこのバー幅データ群を
CPU1に渡す。
【0034】復調データ一時退避バッファ6は、復調が
行われた各バー幅データ群を格納しておくメモリであ
る。また、復調データ格納バッファ7は、合成の完了し
たバーコードに対応する読み出しデータを格納するメモ
リである。 (復調アルゴリズム)次に、WPCコードを復調するた
めの一般的アルゴリズムの概略を説明する。WPCコー
ドの各キャラクタは、図8に示すように、7個のモジュ
ール(各モジュールは単位長を有する)の夫々を適宜白
又は黒に割り振って2本の白バーと2本の黒バーの組み
合わせとして構成したものである。CPU1の復調部
は、各キャラクタの末尾の黒バー(B1)とその直前の
白バー(B2)とを合わせた長さ(T1モジュール)
と、この白バー(B2)とその直前の黒バー(B3)と
を合わせた長さ(T2モジュール)とを、算出する。こ
れらT1モジュール及びT2モジュールのことを、「δ
ディスタンス」という。そして、CPU1の復調部は、
これらT1モジュールびT2モジュールの各々のモジュ
ール数に基づいて、図9に示す距離復調テーブルを参照
し、対応するデータを読み出すのである。なお、図9に
示す各データの「E−」は偶数パリティの値であること
を示し、「O−」は奇数パリティの値であることを示
す。
【0035】なお、図9に示す距離復調テーブルでは、
T1モジュール及びT2モジュールのモジュール数が3
又は4である場合には、対応するデータが2種類づつあ
り、これらのうちの何れであるかを特定することができ
ない。その場合には、黒バー(B1)と黒バー(B3)
のモジュール数に基づいて図10に示すバー幅復調テー
ブルを参照して、何れのデータであるかを特定するので
ある。例えば、図8に示すキャラクタA及びキャラクタ
Bは、図9に示す距離復調テーブルを参照することによ
って、何れも“O2”又は“O8”であると復調され
る。さらに、図10に示すバー幅復調テーブルを参照す
ることによって、キャラクタAは“O2”でありキャラ
クタBは“O8”であると特定される。 (歪み量チェック)次に、本実施形態において実行され
る歪み量チェックの方式を、説明する。この歪み量検出
としては、具体的には、「隣接キャラクタの歪み量チェ
ック」,「δディスタンスの歪み量チェック」,及び
「各バーの歪み量チェック」が実行される。
【0036】「隣接キャラクタの歪み量チェック」で
は、図11に示すように、チェック対象のキャラクタの
バー幅カウント値(C−B)がその直前にチェック対象
となったキャラクタのバー幅カウント値(C−A)に対
して0.9倍乃至1.1倍の範囲内にあるときには歪み量が小
さいと判定し、その範囲外にあるときには歪み量が大き
いと判定する。
【0037】「δディスタンスの歪み量チェック」で
は、チェック対象キャラクタ中の全バー幅カウント値の
総計(C−B)を7等分したカウント値を、図12の表
中の“c”の値に代入する。そして、各δディスタンス
のバー幅カウンタ値(T1−B,T2−B)を基準とし
てこの図12の表を参照し、各δディスタンスのモジュ
ール数を読み出すとともに、その歪み量が大であるか小
であるかを判定する。
【0038】「各バーの歪み量チェック」では、チェッ
ク対象キャラクタ中の全バー幅カウント値の総計(C−
B)を7等分したカウント値を、図13の表中の“c”
の値に代入する。そして、各バーのバー幅カウンタ値
(b−B,d−B)を基準としてこの図13の表を参照
し、各バーのモジュール数を読み出すとともに、その歪
み量が大であるか小であるかを判定する。 (バーコード認識/復調処理)次に、CPU1において
実際に実行されるバーコード認識/復調処理プログラム
の具体的内容を、図3乃至図7のフローチャートに基づ
いて説明する。
【0039】このバーコード認識/復調処理のメインル
ーチンである図3のフローは、バーコード読取装置に主
電源が投入されることによりスタートする。そして最初
のS001において、一走査中におけるレーザビームの
走査開始を検出する。この検出は、レーザビームの開始
・終了検出回路17による検出結果に基づいて行われる
(走査開始検出手段に相当)。
【0040】このようにしてレーザビームの走査スター
トが検出されると、S002において、バーコード復調
処理が実行される(復調手段に相当)。図4乃至図6
は、このバーコード復調処理サブルーチンを示すフロー
チャートである。このサブルーチンに入って最初のS1
01では、バー幅データ群格納バッファ2からバー幅デ
ータ群を取り出し、このバー幅データ群がスタートガー
ドバー(LGB)を含んでいるかどうかをチェックす
る。そして、スタートガードバーを含んでいる場合に
は、処理をS102に進める。S102乃至S135の
処理は、スタートガードバーを起点に、復調できる箇所
までキャラクタを復調するための処理である。
【0041】S102では、第1キャラクタ(スタート
ガードバーのセンターバー側に隣接するキャラクタ)の
長さをチェックする。即ち、第1キャラクタを構成する
4個のバーのバー幅カウント値の総計が一定値近傍内に
あるかどうかをチェックする。そして、第1キャラクタ
長が一定値近傍内にない場合には(S103)、バーコ
ード以外の模様に基づくデータ群であるとみなして、S
136において「復調完了フラグ」をリセットし、この
サブルーチンを終了する。これに対して、第1キャラク
タ長が一定値近傍内にある場合には(S103)、処理
をS104に進める。
【0042】S104では、隣接キャラクタ(初期にお
いては第1キャラクタに隣接する第2キャラクタ)の長
さをチェックする。そして、このキャラクタの長さが一
定値近傍内にない場合には(S105)、これまでにキ
ャラクタ長が一定値近傍内であったとチェックされた第
1ブロックのキャラクタに対する復調を行うべく、処理
をS109に進める。これに対して、このキャラクタの
長さが一定値近傍内にある場合には(S105)、S1
06において、歪み量が大か否かをチェックする。即
ち、上述したようにして「キャラクタ全体の歪み量チェ
ック」,「δディスタンスの歪み量チェック」,及び
「各バーの歪み量チェック」を実行する。そして、全歪
み量が小である場合には処理をそのままS108に進め
るが、何れかの歪み量が大である場合(即ち、各キャラ
クタに対応するバー幅データ[明暗データ]相互の比が
一定範囲を超えた場合,及び、各モジュールに対応する
バー幅データ[明暗データ]相互の比が一定範囲を超え
た場合,)には、S107において「歪み有りフラグ」
をセットしてから処理をS108に進める。S108で
は、第6キャラクタ(センターバーのスタートガードバ
ー側に隣接するキャラクタ)までキャラクタ長のチェッ
クを終了したかどうかをチェックする。そして、第6キ
ャラクタまでキャラクタ長のチェックを終了した場合に
は、第1ブロックをなす6個のキャラクタの復調をすべ
く、処理をS109に進める。これに対して、未だ第6
キャラクタまでのキャラクタ長のチェックを終了してい
ない場合には、隣接する次のキャラクタのキャラクタ長
をチェックすべく、処理をS104に戻す。
【0043】S109では、S103及びS105にお
いて一定値近傍内にあると判定されたキャラクタのうち
から最もスタートガードバーに近いものを取り出して、
このキャラクタに対する復調処理を実行する。次のS1
10では、S109での復調処理が成功したかどうかを
チェックする。そして、復調処理が成功しなかった場合
には、このサブルーチンを終了すべく処理をS135に
進め、復調処理が成功した場合には処理をS111に進
める。S111では、歪み量が大か否かをチェックす
る。そして、歪み量が小である場合には処理をそのまま
S113に進めるが、歪み量が大である場合には、S1
12において「歪み有りフラグ」をセットしてから処理
をS113に進める。S113では、S103及びS1
05のキャラクタ長チェックにおいて一定値近傍内にあ
ると判定された全キャラクタの個数分の復調処理が完了
したか否かをチェックする。そして、未だ全個数分の復
調処理が完了していない場合には、隣接する次のキャラ
クタに対する復調処理を実行すべく、処理をS109に
戻す。これに対して、全個数分の復調処理が完了してい
る場合には、処理をS114に進める。
【0044】S114では、S109での復調処理によ
って復調できたキャラクタ数が6キャラクタであるかど
うかをチェックする。そして、6キャラクタ未満である
場合には、分割読みのデータ群でしかありえないので、
このサブルーチンを終了すべく、処理をS135に進め
る。これに対して、復調できたキャラクタ数が6キャラ
クタである場合には、処理をS115に進める。
【0045】S115では、第6キャラクタの長さを改
めてチェックする。そして、この第6キャラクタの長さ
が一定値近傍内にない場合には(S116)、処理をS
135に進め、このキャラクタの長さが一定値近傍内に
ある場合には(S116)、S117においてセンター
バーのチェックを行う。このセンターバーのチェックと
は、第6キャラクタの次の隣接するキャラクタがセンタ
ーバーとして定められている所定のパターンと一致して
いるか否かのチェックである。そして、センターバーの
チェック結果が良好である場合には(S118)、処理
をS119に進める。これに対して、チェック結果が良
好でない場合には(S118)、分割読みのデータ群で
あるとして、このサブルーチンを終了すべく処理をS1
35に進める。
【0046】S119では、第7キャラクタ(センター
バーのエンドガードバー側に隣接するキャラクタ)の長
さをチェックする。そして、第7キャラクタの長さが一
定値近傍内にない場合には(S120)、連続読みによ
るバー幅データ群ではないため、このサブルーチンを終
了すべく処理をS135に進める。これに対して、第7
キャラクタの長さが一定値近傍内にある場合には(S1
20)、処理をS121に進める。
【0047】S121では、隣接キャラクタ(初期にお
いては第7キャラクタに隣接する第8キャラクタ)の長
さをチェックする。そして、このキャラクタの長さが一
定値近傍内にない場合には(S122)、連続読みのバ
ー幅データ群ではないため、このサブルーチンを終了す
べく処理をS135に進める。これに対して、このキャ
ラクタの長さが一定値近傍内にある場合には(S12
2)、S123において、歪み量が大か否かをチェック
する。そして、歪み量が小である場合には処理をそのま
まS125に進めるが、歪み量が大である場合には、S
124において「歪み有りフラグ」をセットしてから処
理をS125に進める。S125では、第12キャラク
タ(エンドガードバーのセンターバー側に隣接するキャ
ラクタ)までキャラクタ長のチェックを終了したかどう
かをチェックする。そして、第12キャラクタまでキャ
ラクタ長のチェックを終了した場合には、第2ブロック
をなす6個のキャラクタの復調をすべく、処理をS12
6に進める。これに対して、未だ第12キャラクタまで
のキャラクタ長のチェックを終了していない場合には、
隣接する次のキャラクタのキャラクタ長をチェックすべ
く、処理をS121に戻す。
【0048】S126では、S120及びS122にお
いて一定値近傍内にあると判定されたキャラクタのうち
から最もセンターバーに近いものを取り出して、このキ
ャラクタに対する復調処理を実行する。次のS127で
は、S126での復調処理が成功したかどうかをチェッ
クする。そして、復調処理が成功しなかった場合には、
このサブルーチンを終了すべく処理をS135に進め、
復調処理が成功した場合には処理をS128に進める。
S128では、歪み量が大か否かをチェックする。そし
て、歪み量が小である場合には処理をそのままS130
に進めるが、歪み量が大である場合には、S129にお
いて「歪み有りフラグ」をセットしてから処理をS13
0に進める。S130では、S120及びS122のキ
ャラクタ長チェックにおいてその長さが一定値近傍内に
あると判定されたキャラクタの個数分の復調処理が完了
したか否かをチェックする。そして、未だ全個数分の復
調処理が完了していない場合には、次の隣接するキャラ
クタに対する復調処理を実行すべく、処理をS126に
戻す。これに対して、全個数分の復調処理が完了してい
る場合には、処理をS131に進める。
【0049】S131では、第12キャラクタの長さを
改めてチェックする。そして、この第12キャラクタの
長さが一定値近傍内にない場合には(S132)、処理
をS135に進め、このキャラクタの長さが一定値近傍
内にある場合には(S132)、S133においてエン
ドガードバーのチェックを行う。このエンドガードバー
のチェックとは、第12キャラクタの次の隣接するキャ
ラクタがエンドガードバーとして定められている所定の
パターンと一致しているか否かのチェックである。そし
て、エンドガードバーのチェック結果が良好である場合
には(S134)、連続読みのデータ群であるとして、
処理をS135に進める。これに対して、チェック結果
が良好でない場合には(S134)、少なくともブロッ
ク読みのデータ群であるとして、このサブルーチンを終
了すべく処理をS135に進める。
【0050】S135では、S109及びS126にて
復調完了したデータがスタートガードバー及び3個以上
のキャラクタを含んでいるか否かを、チェックする。そ
して、スタートガードバー及び3個以上のキャラクタを
含んでいる場合には、少なくとも分割読みのデータ群で
あると認められるので、S137にて「復調完了フラ
グ」をセットしてこのサブルーチンを終了する。これに
対して、スタートガードバー及び3個以上のキャラクタ
を含んでいない場合には、データの信頼性が低いので、
S136にて「復調完了フラグ」をリセットしてこのサ
ブルーチンを終了する。
【0051】一方、S101にて処理対象のバー幅デー
タ群がスタートガードバーを含んでいないと判定した場
合には、連続読みのデータ群ではありえないので、処理
をS138に進める。このS138では、このバー幅デ
ータ群がセンターバーを含んでいるかどうかをチェック
する。そして、センターバーを含んでいる場合には、処
理をS139に進める。S139乃至S169の処理
は、センターバーを中心として両側方向に、復調できる
箇所までキャラクタを復調するための処理である。S1
39では、第6キャラクタ及び第7キャラクタの長さを
チェックする。そして、第6キャラクタの長さ及び第7
キャラクタの長さの何れもが一定値近傍内にない場合に
は(S140)、バーコード以外の模様に基づくデータ
群であるとみなして、S136において「復調完了フラ
グ」をリセットし、このサブルーチンを終了する。これ
に対して、第6キャラクタの長さ及び第7キャラクタの
長さの何れかが一定値近傍内にある場合には(S14
0)、処理をS141に進める。
【0052】S141では、エンドガードバー側の隣接
キャラクタ(初期においては第7キャラクタ)の長さを
チェックする。そして、このキャラクタの長さが一定値
近傍内にない場合には(S142)、これまでにキャラ
クタ長が一定値近傍内であったとチェックされた第2デ
ータブロックのキャラクタに対する復調を行うべく、処
理をS146に進める。これに対して、このキャラクタ
の長さが一定値近傍内にある場合には(S142)、S
143において、歪み量が大か否かをチェックする。そ
して、歪み量が小である場合には処理をそのままS14
5に進めるが、歪み量が大である場合には、S144に
おいて「歪み有りフラグ」をセットしてから処理をS1
45に進める。S145では、第2データブロックをな
す6キャラクタ分のキャラクタ長のチェックを終了した
かどうかをチェックする。そして、6キャラクタ分のキ
ャラクタ長のチェックを終了した場合には、これら6個
のキャラクタの復調をすべく、処理をS146に進め
る。これに対して、未だ6キャラクタ分のキャラクタ長
のチェックを終了していない場合には、隣接する次のキ
ャラクタのキャラクタ長をチェックすべく、処理をS1
41に戻す。
【0053】S146では、S142において一定値近
傍内にあると判定されたキャラクタのうちから最もセン
ターバーに近いものを取り出して、このキャラクタに対
する復調処理を実行する。次のS147では、S146
での復調処理が成功したかどうかをチェックする。そし
て、復調処理が成功しなかった場合には、そのまま処理
をS151に進め、復調処理が成功した場合には処理を
S148に進める。S148では、歪み量が大か否かを
チェックする。そして、歪み量が小である場合には処理
をそのままS150に進めるが、歪み量が大である場合
には、S149において「歪み有りフラグ」をセットし
てから処理をS150に進める。S150では、S14
2のキャラクタ長チェックにおいて一定値近傍内にある
と判定されたキャラクタの個数分の復調処理が完了した
か否かをチェックする。そして、未だ全個数分の復調処
理が完了していない場合には、隣接する次のキャラクタ
に対する復調処理を実行すべく、処理をS146に戻
す。これに対して、全個数分の復調処理が完了している
場合には、処理をS151に進める。
【0054】S151では、S146での復調処理によ
って復調できたキャラクタ数が6キャラクタであるかど
うかをチェックする。そして、6キャラクタ未満である
場合には、第1データブロックに含まれるキャラクタの
復調をすべく、処理をS154に進める。これに対し
て、復調できたキャラクタ数が6キャラクタである場合
には、処理をS152に進める。
【0055】S152では、第12キャラクタの長さを
改めてチェックするとともに、エンドガードバーのチェ
ックを行う。そして、何れの場合であっても(S15
3)、第1データブロックに含まれるキャラクタを復調
すべく、処理をS154に進める。
【0056】S154では、スタートガードバー側の隣
接キャラクタ(初期においては第6キャラクタ)の長さ
をチェックする。そして、このキャラクタの長さが一定
値近傍内にない場合には(S155)、これまでにキャ
ラクタ長が一定値近傍内であったとチェックされた第1
データブロックのキャラクタに対する復調を行うべく、
処理をS159に進める。これに対して、このキャラク
タの長さが一定値近傍内にある場合には(S155)、
S156において、歪み量が大か否かをチェックする。
そして、歪み量が小である場合には処理をそのままS1
58に進めるが、歪み量が大である場合には、S157
において「歪み有りフラグ」をセットしてから処理をS
158に進める。S158では、第1データブロックを
なす6キャラクタ分のキャラクタ長のチェックを終了し
たかどうかをチェックする。そして、6キャラクタ分の
キャラクタ長のチェックを終了した場合には、これら6
個のキャラクタの復調をすべく、処理をS159に進め
る。これに対して、未だ6キャラクタ分のキャラクタ長
のチェックを終了していない場合には、隣接する次のキ
ャラクタのキャラクタ長をチェックすべく、処理をS1
54に戻す。
【0057】S159では、S155において一定値近
傍内にあると判定されたキャラクタのうちから最もセン
ターバーに近いものを取り出して、このキャラクタに対
する復調処理を実行する。次のS160では、S159
での復調処理が成功したかどうかをチェックする。そし
て、復調処理が成功しなかった場合には、そのまま処理
をS164に進め、復調処理が成功した場合には処理を
S161に進める。S161では、歪み量が大か否かを
チェックする。そして、歪み量が小である場合には処理
をそのままS163に進めるが、歪み量が大である場合
には、S162において「歪み有りフラグ」をセットし
てから処理をS163に進める。S163では、S15
5のキャラクタ長チェックにおいて一定値近傍内にある
と判定されたキャラクタの個数分の復調処理が完了した
か否かをチェックする。そして、未だ全個数分の復調処
理が完了していない場合には、次のキャラクタに対する
復調処理を実行すべく、処理をS159に戻す。これに
対して、全個数分の復調処理が完了している場合には、
処理をS164に進める。
【0058】S164では、S159での復調処理によ
って復調できたキャラクタ数が6キャラクタであるかど
うかをチェックする。そして、6キャラクタである場合
には、処理をS169に進め、6キャラクタ未満である
場合には、処理をS165に進める。
【0059】S165では、第1キャラクタの長さをチ
ェックする。そして、この第1キャラクタの長さが一定
値近傍内にない場合(第1キャラクタが欠落している場
合を含む)には(S166)、処理をS169に進め
る。これに対して、この第1キャラクタの長さが一定値
近傍内にある場合には(S166)、S167において
スタートガードバーのチェックを行う。そして、スター
トガードバーを検出した場合には(S168)、S10
1の判定と矛盾するとして、S136において「復調完
了フラグ」をリセットしてこのサブルーチンを終了す
る。これに対して、スタートガードバーを検出できなか
った場合には(S168)、処理をS169に進める。
【0060】S169では、復調完了したデータ群がセ
ンターバーを挟んで両側に連続するデータ群であるかを
チェックする。そして、センターバーを挟んで両側に連
続している場合には、S137において「復調完了フラ
グ」をセットしてこのサブルーチンを終了する。これに
対してセンターバーを挟んで両側に連続していない場合
には、ほとんどあり得ない状況であってデータの信頼性
が低いので、S136において「復調完了フラグ」をリ
セットしてこのサブルーチンを終了する。
【0061】一方、S138にて処理対象のバー幅デー
タ群がセンターバーを含んでいないと判定した場合に
は、ブロック読みのデータ群でもありえないので、処理
をS170に進める。このS170では、このバー幅デ
ータ群がエンドガードバーを含んでいるかどうかをチェ
ックする。そして、エンドガードバーを含んでいない場
合には、バーコード以外の模様に基づくデータ群である
とみなして、S136において「復調完了フラグ」をリ
セットし、このサブルーチンを終了する。これに対し
て、エンドガードバーを含んでいる場合は、処理をS1
71に進める。S171乃至S187の処理は、エンド
ガードバーを起点としてセンターバー側に、復調できる
箇所までキャラクタを復調するための処理である。
【0062】S171では、第12キャラクタの長さを
チェックする。そして、第12キャラクタの長さが一定
値近傍内にない場合には(S172)、バーコード以外
の模様に基づくデータ群であるとみなして、S136に
おいて「復調完了フラグ」をリセットし、このサブルー
チンを終了する。これに対して、第12キャラクタの長
さが一定値近傍内にある場合には(S172)、処理を
S173に進める。
【0063】S173では、センターバー側の隣接キャ
ラクタ(初期においては第11キャラクタ)の長さをチ
ェックする。そして、このキャラクタの長さが一定値近
傍内にない場合には(S174)、これまでにキャラク
タ長が一定値近傍内であったとチェックされた第2デー
タブロックのキャラクタに対する復調を行うべく、処理
をS178に進める。これに対して、このキャラクタの
長さが一定値近傍内にある場合には(S174)、S1
75において、歪み量が大か否かをチェックする。そし
て、歪み量が小である場合には処理をそのままS177
に進めるが、歪み量が大である場合には、S176にお
いて「歪み有りフラグ」をセットしてから処理をS17
7に進める。S177では、第2データブロックをなす
6キャラクタ分のキャラクタ長のチェックを終了したか
どうかをチェックする。そして、6キャラクタ分のキャ
ラクタ長のチェックを終了した場合には、これら6個の
キャラクタの復調をすべく、処理をS178に進める。
これに対して、未だ6キャラクタ分のキャラクタ長のチ
ェックを終了していない場合には、隣接する次のキャラ
クタのキャラクタ長をチェックすべく、処理をS173
に戻す。
【0064】S178では、S172又はS174にお
いて一定値近傍内にあると判定されたキャラクタのうち
から最もエンドガードバーに近いものを取り出して、こ
のキャラクタに対する復調処理を実行する。次のS17
9では、S178での復調処理が成功したかどうかをチ
ェックする。そして、復調処理が成功しなかった場合に
は、そのまま処理をS183に進め、復調処理が成功し
た場合には処理をS180に進める。S180では、歪
み量が大か否かをチェックする。そして、歪み量が小で
ある場合には処理をそのままS182に進めるが、歪み
量が大である場合には、S181において「歪み有りフ
ラグ」をセットしてから処理をS182に進める。S1
82では、S172又はS174のキャラクタ長チェッ
クにおいてその長さが一定値近傍内にあると判定された
キャラクタの個数分の復調処理が完了したか否かをチェ
ックする。そして、未だ全個数分の復調処理が完了して
いない場合には、隣接する次のキャラクタに対する復調
処理を実行すべく、処理をS178に戻す。これに対し
て、全個数分の復調処理が完了している場合には、処理
をS183に進める。
【0065】S183では、第7キャラクタの長さをチ
ェックする。そして、この第7キャラクタの長さが一定
値近傍内にない場合(第7キャラクタが欠落している場
合を含む)には(S184)、処理をS187に進め、
この第7キャラクタの長さが一定値近傍内にある場合に
は(S184)、S185においてセンターバー及び第
6キャラクタの長さのチェックを行う。そして、センタ
ーバーを検出した場合又は第6キャラクタの長さが一定
値近傍内に入っている場合には(S186)、S138
の判定に矛盾するとして、S136において「復調完了
フラグ」をリセットしてこのサブルーチンを終了する。
これに対して、センターバーを検出できなかった場合に
は(S186)、処理をS187に進める。
【0066】S187では、S178にて復調完了した
データがエンドガードバー及び3個以上のキャラクタを
含んでいるか否かを、チェックする。そして、エンドガ
ードバー及び3個以上のキャラクタを含んでいる場合に
は、少なくとも分割読みのデータ群であると認められる
ので、S137にて「復調完了フラグ」をセットしてこ
のサブルーチンを終了する。これに対して、エンドガー
ドバー及び3個以上のキャラクタを含んでいない場合に
は、データの信頼性が低いので、S136にて「復調完
了フラグ」をリセットしてこのサブルーチンを終了す
る。
【0067】このバーコード復調処理サブルーチンから
処理が戻された図3のメインルーチンでは、次のS00
3において、CPU1内のRAM領域内に「復調完了フ
ラグ」がセットされているかどうかがチェックされる。
この「復調完了フラグ」は、S002のバーコード復調
処理中のS137(図4)においてセットされるフラグ
であり、少なくとも何れかのガードバー又はセンターバ
ーとこれに続く3キャラクタ以上のデータキャラクタが
復調されたことを示すフラグである。
【0068】この「復調完了フラグ」がセットされてい
る場合には、S004において、復調された復調データ
を復調データ一時退避バッファ6に格納した後に、処理
をS005に進める。これに対して、「復調完了フラ
グ」がセットされていない場合には、そのまま、処理を
S005に進める。この場合、今回処理対象のバー幅デ
ータ群は、破棄されることになる。
【0069】S005では、S001にてその走査スタ
ートを検出した一走査のレーザビーム走査の終了を検出
したかどうかをチェックする。この終了の検出も、レー
ザビームの開始・終了検出回路17による検出結果に基
づいて行われる。そして、未だ終端が検出されていない
場合には、バー幅データ群格納バッファ2内に新たなバ
ー幅データ群が格納されている可能性がある。そして、
今回のループ処理におけるS002にて復調されたバー
幅データ群がノイズデータであって、新たなバー幅デー
タ群がバーコードを読み取って得られたものである可能
性もある。そこで、未だ終端が検出されていない場合に
は、次のバー幅データ群をバー幅データ群格納バッファ
2内から新たに取り出して、S002のバーコード復調
処理を実行する。
【0070】これに対して、レーザービーム走査の終端
を検出した場合には、S006において、現時点で復調
データ一時退避バッファ6内に格納されている復調デー
タ列の個数を算出する。この復調データ列の個数の算出
においては、一走査中において得られた全ての復調デー
タが一個の復調データ列をなすものとして、算出され
る。
【0071】そして、現時点で復調データ一時退避バッ
ファ6内に格納されている復調データ列の個数が単数又
は0であった場合は、復調データが全く得られなかった
場合,連続読みによる復調データが得られた場合,ブロ
ック読み又は分割読みによるデータが一つだけ得られた
場合であり、そのまま処理をS009に進める。
【0072】これに対して、現時点で復調データ一時退
避バッファ6内に格納されている復調データ列の個数が
複数であった場合には、S008において、最新に格納
した復調データ列に対して有効データ判別処理を実行す
る(有効データ抽出手段に相当)。この有効データ判別
処理は、復調データ列の中から有効な復調データ(バー
コードを読み取って得られた蓋然性の高いデータ)のみ
を抽出する処理である。図7は、この有効データ判別処
理サブルーチンを示すフローチャートである。
【0073】このサブルーチンに入って最初のS201
では、処理対象の復調データ列中に、連続読みによる復
調データが含まれているかどうかをチェックする。この
チェックは、スタートガードバー(LGB),センター
バー(CB),及びエンドガードバー(RGB)の全て
を含んでいる一連の復調データがあるかどうかによって
行われる。このスタートガードバー(LGB)とエンド
ガードバー(RGB)とによって囲まれている部分のこ
とを、以下、「連続読みデータ」という。
【0074】そして、連続読みデータが含まれている場
合には、S208において、この連続読みデータのみを
有効データとして扱う。即ち、この復調データ列中にお
ける連続読みデータ以外の部分を削除する。以上の後
に、この有効データ判別処理サブルーチンを終了し、処
理を図3のメインルーチンに戻す。
【0075】これに対して、S201にて連続読みデー
タが含まれていないと判定された場合には、次のS20
2において、処理対象の復調データ列中にブロック読み
による復調データが含まれているかどうかをチェックす
る。このチェックは、スタートガードバー(LGB)又
はエンドガードバー(RGB)とセンターバー(CB)
とによってデータキャラクタが囲まれている形の復調デ
ータがあるかどうかによって行われる。このスタートガ
ードバー(LGB)又はエンドガードバー(RGB)と
センターバー(CB)とによって囲まれている部分のこ
とを、以下、「ブロックデータ」という。
【0076】そして、ブロックデータが含まれていると
判定した場合には、S212において、処理対象の復調
データ列内において、ブロックデータのセンターバー
(CB)側の外側に復調データが含まれているかどうか
をチェックする。
【0077】そして、ブロックデータのセンターバー
(CB)側の外側に復調データが含まれていない場合に
は、S216において、このブロックデータのみを有効
データとして扱う。即ち、この復調データ列中における
ブロックデータ以外の部分を削除する。以上の後に、こ
の有効データ判別処理サブルーチンを終了し、処理を図
3のメインルーチンに戻す。
【0078】これに対して、S212にてブロックデー
タのセンターバー(CB)側の外側に復調データが含ま
れていると判定した場合には、S213において、この
ブロックデータのセンターバー(CB)側の外側に含ま
れている復調データがセンターバー(CB)を中心にブ
ロックデータと対になるデータであるかどうかをチェッ
クする。ここで、「対になるデータ」とは、センターバ
ー(CB)に続いてデータキャラクタが連続する形のデ
ータ,若しくは、他のガードバーを含むとともに、この
ガードバーからセンターバー(CB)に向かってデータ
キャラクタが連続する形のデータである。
【0079】そして、対となるデータである場合には、
S214において、これらブロックデータ及び対となる
データの両方を有効データとして扱う。即ち、この復調
データ列中におけるブロックデータのガードバー(LG
B,RGB)側の外側部分,及び、対となるデータの外
側部分を、削除する。以上の後に、この有効データ判別
処理サブルーチンを終了し、処理を図3のメインルーチ
ンに戻す。
【0080】これに対して、S213にて対になるデー
タでないと判定した場合には、S215において、この
ブロックデータのみを有効データとして扱う。即ち、こ
の復調データ列中におけるブロックデータ以外の部分を
削除する。以上の後に、この有効データ判別処理サブル
ーチンを終了し、処理を図3のメインルーチンに戻す。
【0081】一方、S202にてブロックデータが含ま
れていないと判定した場合には、S203において、処
理対象の復調データ列中に、ガードバー(LGB,RG
B)から連続する復調データ,及びセンターバー(C
B)から連続する復調データが含まれるかどうかをチェ
ックする。
【0082】そして、ガードバー(LGB,RGB)か
ら連続する復調データ,及びセンターバー(CB)から
連続する復調データが含まれない場合には、何れの復調
データもバーコードを読み取って得られたものである可
能性があるので、S209において、この復調データ列
に含まれるデータを全て有効データとして扱う。以上の
後に、この有効データ判別処理サブルーチンを終了し、
処理を図3のメインルーチンに戻す。
【0083】これに対して、S203にてガードバー
(LGB,RGB)から連続する復調データ,及びセン
ターバー(CB)から連続する復調データが含まれてい
ると判定した場合には、S204において、これら二つ
の復調データが互いに向かい合っているかどうかをチェ
ックする。即ち、ガードバー(LGB,RGB)又はセ
ンターバー(CB)から連続するデータキャラクタが互
いの方に向かって連続しているかどうかをチェックす
る。
【0084】そして、二つの復調データが互いに向かい
合っていない場合は、何れの復調データもバーコードを
読み取って得られたものである可能性があるので、S2
09において、この復調データ列に含まれるデータを全
て有効データとして扱う。以上の後に、この有効データ
判別処理サブルーチンを終了し、処理を図3のメインル
ーチンに戻す。
【0085】これに対して、S204にて二つの復調デ
ータが互いに向かい合っていると判定した場合には、ブ
ロックデータ中の真ん中の部分が何らかの理由によって
欠落したものであると考えることができる。そこで、S
205において、向かい合っているデータのセンターバ
ー(CB)側の外側に、復調データが含まれるか否かを
チェックする。
【0086】そして、向かい合っているデータのセンタ
ーバー(CB)側の外側に復調データが含まれない場合
には、S210において、向かい合っている二つの復調
データのみを有効データとして扱う。即ち、この復調デ
ータ列中における向かい合っているデータの外側の部分
を削除する。以上の後に、この有効データ判別処理サブ
ルーチンを終了し、処理を図3のメインルーチンに戻
す。
【0087】これに対して、S205にて向かい合って
いるデータのセンターバー(CB)側の外側に復調デー
タが含まれていると判定した場合には、向かい合ってい
るデータのセンターバー(CB)側の外側に含まれてい
る復調データがセンターバー(CB)を中心として対に
なるデータであるかどうかをチェックする。ここで、
「対になるデータ」とは、センターバー(CB)に続い
てデータキャラクタが連続する形のデータ,若しくは、
他のガードバーを含むとともに、このガードバーからセ
ンターバー(CB)に向かってデータキャラクタが連続
する形のデータである。
【0088】そして、対になるデータである場合には、
S207において、対になるデータを含む3つの復調デ
ータを有効なものとして扱う。即ち、この復調データ列
中における向かい合っている復調データ及び対となるデ
ータの外側部分を削除する。以上の後に、この有効デー
タ判別処理サブルーチンを終了し、処理を図3のメイン
ルーチンに戻す。
【0089】これに対して、S206にて対になるデー
タでないと判定した場合には、S211において、向か
い合っている二つの復調データのみを有効データとして
扱う。即ち、この復調データ列中における向かい合って
いるデータの外側の部分を削除する。以上の後に、この
有効データ判別処理サブルーチンを終了し、処理を図3
のメインルーチンに戻す。
【0090】処理が戻されたメインルーチンにおいて
は、処理は、S008からS009に進められる。S0
09では、復調データ一時退避バッファ6に格納されて
いる全復調データを復調データ格納バッファ7に格納
し、データ合成処理を行う(合成手段に対応)。この合
成処理は、復調データに含まれるガードバー又は/及び
センターバー(CB)を手掛かりに、固定形式であるW
PCフォーマットに各復調データを当て填めることによ
って、なされる。
【0091】次のS010では、モジュラス10チェッ
クが実行される。このモジュラス10チェックとは、S
009の合成処理によってバーコード全体に対応する読
み取りデータの獲得が成功したかどうかを判定するチェ
ックである。このモジュラス10チェックの結果がNG
(読み取りデータ獲得不成功)である場合は、復調デー
タが全部揃っていない場合であるので、新たなレーザビ
ーム走査によって読み取られたバー幅データ群に対する
復調処理を実行すべく、処理をS001に戻す。
【0092】これに対して、モジュラス10チェックの
結果がOK(バーコード全体に対する読み取りデータ獲
得)である場合は、連続読みによって読み取りデータが
獲得された場合かS009の結果データ合成が完了した
場合であるので、このバーコード認識/復調処理を終了
する。 (実施形態による作用)次に、以上のように構成される
本実施形態によるバーコード読取装置の作用を、図14
乃至図17に基づいて、説明する。なお、各図におい
て、「GB」は、図19のスタートガードバー(LG
B)又はエンドガードバー(RGB)に対応する復調デ
ータ(又は、外観上、同形状となったノイズデータ)で
ある。また、「CB」は、図19のセンターバー(C
B)に対応する復調データ(又は、外観上、同形状とな
ったノイズデータ)である。また、「A−」,「B
−」,又は「C−」は、データキャラクタを復調したデ
ータ,又はノイズデータである。
【0093】先ず、図14に示すように、復調データ
γ,復調データα,復調データβの順に連続する復調デ
ータ列が、得られたとする。この場合、復調データα
は、レーザービームがバーコード全体を一気に走査する
ことによって得られた連続読みデータであると考えられ
る。従って、この連続読みデータである復調データαの
みが有効データとされる。即ち、復調データβ及び復調
データγは、紙面ノイズや文字等に基づいて復調された
ノイズデータであると考えられるので、削除される(S
208)。
【0094】次に、図15に示すように、復調データ
α,復調データβの順に連続する復調データ列が、得ら
れたとする。この場合、復調データαは、レーザービー
ムがバーコードの左ブロック上を走査することによって
得られたブロックデータであると考えられる。従って、
このブロックデータである復調データαは、有効データ
とされる。一方、復調データβは、復調データαの後に
スタートガードバー(SGB)を検出した形となってい
るが、レーザビームは直線的に走査されるので、このよ
うな復調データは論理上あり得ない。従って、この復調
データβは、紙面ノイズや文字等に基づいて復調された
ノイズデータであるとみなされ、削除される(S21
5)。
【0095】なお、復調データβの形が、数キャラクタ
のデータキャラクタ復調後にエンドガードバー(RG
B)を検出した形になっているのであれば、論理的にあ
り得ると考えられる。従って、そのような場合には、復
調データα及び復調データβの両方が有効データとされ
る(S214)。
【0096】一方、復調データβの形が、センターバー
(CB)を中心にして前後両側にデータキャラクタが連
続する形になっているのであれば、論理的にあり得ない
と考えられる。従って、そのような場合には、復調デー
タαのみが有効データとされて、復調データβが削除さ
れる(S215)。
【0097】次に、図16に示すように、復調データ
α,復調データβ,復調データγの順に連続する復調デ
ータ列が、得られたとする。この場合、ガードバー(G
B)を含む復調データαとセンターバー(CB)を含む
復調データβとは、レーザービームがバーコードの左ブ
ロック上を走査したがその中間点において汚れ等により
データが分離してしまったデータであると考えられる。
そのため、復調データα及び復調データβが有効データ
とされる。一方、復調データα及び復調データβがバー
コードの右ブロックを復調して得られた復調データであ
ると考えた場合、復調データγは、右ブロックを再度走
査した形となっているので、論理上ありえないとして削
除される(S211)。
【0098】次に、図17に示すように、復調データ
α,復調データβの順に連続する復調データ列が、得ら
れたとする。この場合、両復調データα,βは、ともに
ガードバー(GB)からデータキャラクタが連続する形
となっている。そのため、何れの復調データも、バーコ
ードによる復調データである可能性を有している。従っ
て、この場合には、両復調データα,βを有効データと
して扱う(S209)。
【0099】このようにして有効データのみを残し、合
成処理(009)前に、論理的にノイズデータと思われ
る復調データを予め削除することができる。従って、デ
ータ合成処理対象とする復調データの量を大幅に少なく
し、データ合成処理の全体的処理時間を短くするととも
に、誤読の可能性を低く抑えることができる。
【0100】
【実施形態2】本発明の第2の実施形態は、上述の第1
実施形態と比較して、有効データ判別処理サブルーチン
(図7)のS209において処理対象の復調データ列に
含まれる復調データを全て有効データとするのではな
く、各復調データの歪み量を比較して有効データを決定
する点を特徴とする。
【0101】図18は、本第2実施形態において図3の
S008にて実行される有効データ判別処理サブルーチ
ンを示すフローチャートである。この図18は、第1実
施形態における図7に対応するものであり、S309の
処理のみを図7のもの(S209)と異にし、他の処理
を同じくしている。
【0102】図18のS309では、歪みチェック処理
が行われる。図19は、この歪みチェック処理サブルー
チンを示すフローチャートである。このサブルーチンに
入って最初のS401では、処理対象の復調データ列内
に同じ形態の復調データが複数含まれているかどうかが
チェックされる。即ち、ガードバー(GB)から同じ方
向にデータキャラクタが連続した形の復調データが複数
含まれるか否か、及び、センターバー(CB)から同じ
方向にデータキャラクタが連続した形の復調データが複
数含まれるか否かがチェックされる。そして、同じ形態
の復調データが複数含まれているのでなければ、処理を
S405に進める。
【0103】これに対して、同じ形態の復調データが複
数含まれている場合には、S402において、各復調デ
ータの歪み量を判定する。即ち、個々の復調データに含
まれる各隣接キャラクタ同士のキャラクタ長を比較し、
歪み量が大きかった隣接キャラクタの数の全キャラクタ
数に占める率を、復調データ全体の歪み量として算出す
るのである。若しくは、個々の復調データに含まれる各
バーのδディスタンス同士を比較し、歪み量が大きかっ
たδディスタンスの数の全モジュール数に占める率を、
復調データ全体の歪み量として算出するのである。若し
くは、個々の復調データに含まれる各バーの長さ同士を
比較し、歪み量が大きかったバーの数の全バー数に占め
る率を、復調データ全体の歪み量として算出するのであ
る。
【0104】このようにして各復調データの歪み量が判
定された後に実行されるS403では、片方の復調デー
タの歪み量が他の復調データの歪み量よりも小さいか否
かがチェックされる。そして、両復調データの歪み量が
同じであった場合には、処理をS405に進める。
【0105】これに対して、片方の復調データの歪み量
が他の復調データの歪み量よりも小さかった場合には、
S404において、歪み量の小さい方の復調データのみ
を有効データとして扱う。即ち、歪み量が大きい方の復
調データを、削除する。そして、その後、処理を図18
に戻す。
【0106】一方、S405においては、処理対象の復
調データ列に含まれる復調データを全て有効データとし
て扱って、処理を図18に戻す。以上のように構成され
る本実施形態において、図17に示すように、復調デー
タα,復調データβの順に連続する復調データ列が得ら
れたとする。この場合、両復調データα,βの歪み量を
比較して、歪み量が小さい復調データのみを有効とする
(S404)。また、両復調データα,βの歪み量が同
じである場合には、何れもバーコードを読み取って得ら
れた復調データである可能性があるので、何れも有効デ
ータとする(S405)。
【0107】本第2実施形態におけるその他の構成及び
作用は、第1実施形態のものと同じなので、その説明を
省略する。
【0108】
【発明の効果】以上のように構成された本発明のバーコ
ード読取装置によると、ビーム走査によって得られたデ
ータ列からノイズデータを論理的に削除することによっ
て、分割読み全体の処理時間を短くすることができると
ともに誤読の可能性を低くすることができる。
【図面の簡単な説明】
【図1】 本発明の原理を示す原理図
【図2】 本発明の第1の実施形態によるバーコード読
取装置のブロック図
【図3】 図2のCPUで実行されるバーコード認識/
復調処理プログラムの内容を示すフローチャート
【図4】 図3のS002で実行されるバーコード復調
処理の内容を示すフローチャート
【図5】 図3のS002で実行されるバーコード復調
処理の内容を示すフローチャート
【図6】 図3のS002で実行されるバーコード復調
処理の内容を示すフローチャート
【図7】 図3のS008で実行される有効データ判別
処理の内容を示すフローチャート
【図8】 WPCコードのキャラクタの構成図
【図9】 距離復調テーブル
【図10】 バー幅復調テーブル
【図11】 隣接キャラクタ長の歪み量の説明図
【図12】 δディスタンスの歪み量の換算表
【図13】 各バーの歪み量の換算表
【図14】 復調データ列の具体例を示す図
【図15】 復調データ列の具体例を示す図
【図16】 復調データ列の具体例を示す図
【図17】 復調データ列の具体例を示す図
【図18】 本発明の第2の実施形態において図3のS
008で実行される有効データ判別処理の内容を示すフ
ローチャート
【図19】 図18のS309で実行される歪みチェッ
ク処理の内容を示すフローチャート
【図20】 バーコード上の走査軌跡例を示す図
【図21】 各走査軌跡毎に復調される復調データの一
覧表
【符号の説明】
1 CPU 2 バー幅データ群格納バッファ 6 復調データ一時退避バッファ 13 半導体レーザ 14 走査光学系 15 A/D変換器 16 バー幅カウンタ 17 レーザビームの開始・終了検出回路 18 受光素子 21 バーコード

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】繰り返し走査を行って被走査面上の走査軌
    跡における明暗パターンを検出する走査手段と、 前記走査手段による各回の走査の開始を検出する走査開
    始検出手段と、 前記走査手段による各回の走査の終了を検出する走査終
    了検出手段と、 前記走査開始検出手段によって前記走査の開始が検出さ
    れてから前記走査終了検出手段によって前記走査の終了
    が検出されるまでの間に前記走査手段によって検出され
    た一走査分の明暗パターンを復調する復調手段と、 前記復調手段によって復調された一走査分の復調データ
    の構成に基づき、バーコードを走査することによって得
    られた明暗データを復調した復調データである可能性が
    ある部分のみを、有効データとして前記一走査分の復調
    データから抽出する有効データ抽出手段と、 前記有効データ抽出手段によって抽出された複数回走査
    分の有効データを合成して、バーコードにコード化され
    ていたデータを再現する合成手段とを備えたことを特徴
    とするバーコード読取装置。
  2. 【請求項2】前記走査手段は、コード化されたデータ領
    域が固定パターンを有する1本のセンターバーによって
    2つのブロックに分割されているとともに固定パターン
    を有する2本のガードバーによって両側から挟まれてい
    る構造のバーコードを走査することを特徴とする請求項
    1記載のバーコード読取装置。
  3. 【請求項3】前記有効データ抽出手段は、一連の復調デ
    ータが固定パターンを有する1本のセンターバーによっ
    て2つのブロックに分割されているとともに固定パター
    ンを有する2本のガードバーによって両側から挟まれて
    いる形の復調データが前記一走査分の復調データ中に含
    まれていた場合には、この復調データを有効データとし
    て抽出することを特徴とする請求項2記載のバーコード
    読取装置。
  4. 【請求項4】前記有効データ抽出手段は、一本のセンタ
    ーバーと一本のガードバーとによって一連の復調データ
    が囲まれたブロックデータが前記一走査分の復調データ
    中に含まれていた場合には、このブロックデータを有効
    データとして抽出することを特徴とする請求項2記載の
    バーコード読取装置。
  5. 【請求項5】前記有効データ抽出手段は、前記ブロック
    データの前記センターバー側の外側にこのセンターバー
    から連続する復調データがあった場合には、このセンタ
    ーバーから連続する復調データをも、有効データとして
    抽出することを特徴とする請求項4記載のバーコード読
    取装置。
  6. 【請求項6】前記有効データ抽出手段は、前記ブロック
    データの前記センターバー側の外側に、他のガードバー
    があり且つこの他のガードバーからセンターバー側に向
    かって連続する復調データがあった場合には、この他の
    ガードバーから連続する復調データをも、有効データと
    して抽出することを特徴とする請求項4記載のバーコー
    ド読取装置。
  7. 【請求項7】前記有効データ抽出手段は、一本のセンタ
    ーバー及び一本のガードバーから夫々互いの側に向かっ
    て連続する復調データが前記一走査分の復調データ中に
    含まれていた場合には、これら一本のセンターバー及び
    一本のガードバーから夫々互いの側に向かって連続する
    復調データを、有効データとして抽出することを特徴と
    する請求項2記載のバーコード読取装置。
  8. 【請求項8】前記有効データ抽出手段は、前記センター
    バーから前記一本のガードバーとは反対側に向かって連
    続する復調データがあった場合には、このセンターバー
    から連続する復調データをも、有効データとして抽出す
    ることを特徴とする請求項7記載のバーコード読取装
    置。
  9. 【請求項9】前記有効データ抽出手段は、前記センター
    バーを中心に前記一本のガードバーとは反対側に他のガ
    ードバーがあり且つこの他のガードバーからセンターバ
    ー側に向かって連続する復調データがあった場合には、
    この他のガードバーから連続する復調データをも、有効
    データとして抽出することを特徴とする請求項7記載の
    バーコード読取装置。
  10. 【請求項10】前記有効データ抽出手段は、ガードバー
    から一方向に向けて復調データが連続している形のデー
    タが複数個前記一走査の復調データ中に含まれていた場
    合には、何れも有効データとして抽出することを特徴と
    する請求項2記載のバーコード読取装置。
  11. 【請求項11】前記有効データ抽出手段は、ガードバー
    から一方向に向けて復調データが連続している形のデー
    タが複数個前記一走査の復調データ中に含まれていた場
    合には、歪み量が小さい方のみを有効データとして抽出
    することを特徴とする請求項2記載のバーコード読取装
    置。
  12. 【請求項12】前記有効データ抽出手段は、センターバ
    ーから一方向に向けて復調データが連続している形のデ
    ータが複数個前記一走査の復調データ中に含まれていた
    場合には、何れも有効データとして抽出することを特徴
    とする請求項2記載のバーコード読取装置。
  13. 【請求項13】前記有効データ抽出手段は、センターバ
    ーから一方向に向けて復調データが連続している形のデ
    ータが複数個前記一走査の復調データ中に含まれていた
    場合には、歪み量が小さい方のみを有効データとして抽
    出することを特徴とする請求項2記載のバーコード読取
    装置。
JP7316648A 1995-12-05 1995-12-05 バーコード読取装置 Pending JPH09161001A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7316648A JPH09161001A (ja) 1995-12-05 1995-12-05 バーコード読取装置
US08/677,373 US5780832A (en) 1995-12-05 1996-07-05 Bar code reading apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7316648A JPH09161001A (ja) 1995-12-05 1995-12-05 バーコード読取装置

Publications (1)

Publication Number Publication Date
JPH09161001A true JPH09161001A (ja) 1997-06-20

Family

ID=18079372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7316648A Pending JPH09161001A (ja) 1995-12-05 1995-12-05 バーコード読取装置

Country Status (2)

Country Link
US (1) US5780832A (ja)
JP (1) JPH09161001A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011053968A (ja) * 2009-09-02 2011-03-17 Toshiba Tec Corp バーコード読取装置及びその制御プログラム
JP2012058776A (ja) * 2010-09-03 2012-03-22 Nidec Sankyo Corp バーコード読取装置およびバーコード読取方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10134130A (ja) * 1996-10-28 1998-05-22 Fujitsu Ltd バーコード読取方法およびバーコード読取装置
JP2760351B2 (ja) * 1996-11-01 1998-05-28 日本電気株式会社 バーコード読取装置
JPH1153465A (ja) * 1997-08-08 1999-02-26 Fujitsu Ltd バーコード読取装置
JP3576356B2 (ja) * 1997-08-08 2004-10-13 富士通株式会社 バーコード読取装置,バーコード読取方法,及びコンピュータ可読媒体
JP3514982B2 (ja) * 1998-09-28 2004-04-05 富士通株式会社 バーコード読取装置及びバーコード読取方法
JP4170111B2 (ja) * 2003-02-21 2008-10-22 富士通株式会社 バーコード読取装置およびバーコード読取方法
US7852519B2 (en) * 2007-02-05 2010-12-14 Hand Held Products, Inc. Dual-tasking decoder for improved symbol reading
US8628015B2 (en) 2008-10-31 2014-01-14 Hand Held Products, Inc. Indicia reading terminal including frame quality evaluation processing
US20100125497A1 (en) * 2008-12-16 2010-05-20 Dale Junior Arguello Electronic coupon distribution and redemption method for electronic devices
US20110210170A1 (en) * 2009-02-18 2011-09-01 Arguello Dj Digital barcode use, distribution, and redemption system for mobile devices
US8587595B2 (en) 2009-10-01 2013-11-19 Hand Held Products, Inc. Low power multi-core decoder system and method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4409469A (en) * 1980-01-21 1983-10-11 Sharp Kabushiki Kaisha Optical bar code reader
US5124538B1 (en) * 1988-08-26 1995-01-31 Accu Sort Systems Inc Scanner
US5548107A (en) * 1988-08-26 1996-08-20 Accu-Sort Systems, Inc. Scanner for reconstructing optical codes from a plurality of code fragments
US5495097A (en) * 1993-09-14 1996-02-27 Symbol Technologies, Inc. Plurality of scan units with scan stitching
CA2022269A1 (en) * 1990-01-05 1991-07-06 Theodosios Pavlidis Method of decoding bar code symbols from partial scans
US5194722A (en) * 1990-05-02 1993-03-16 Ncr Corporation Enhanced UPC bar code decoding system reconstructing complete bar code signals from partial bar code scans
US5276316A (en) * 1990-05-02 1994-01-04 Ncr Corporation Method for reconstructing complete bar code signals from partial bar code scans
US5296691A (en) * 1992-09-14 1994-03-22 Lazerdata Corporation Scanning device for reconstructing a complete code from scanned segments

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011053968A (ja) * 2009-09-02 2011-03-17 Toshiba Tec Corp バーコード読取装置及びその制御プログラム
JP2012058776A (ja) * 2010-09-03 2012-03-22 Nidec Sankyo Corp バーコード読取装置およびバーコード読取方法

Also Published As

Publication number Publication date
US5780832A (en) 1998-07-14

Similar Documents

Publication Publication Date Title
US6095419A (en) Bar code reading apparatus for reading plural code systems
US6366696B1 (en) Visual bar code recognition method
JPH09161001A (ja) バーコード読取装置
JPH096884A (ja) 解読されないバー・コード・プロフィールをエッジ検出回路を用いてエンコードする方法および装置
US6142377A (en) Method of reading bar code
KR100308415B1 (ko) 바코드판독장치,바코드판독방법및컴퓨터판독가능매체
EP0576220B1 (en) Bar-code reader device
JP3448404B2 (ja) バーコード読取装置及びバーコード読取方法
US5798510A (en) Apparatus for and method of reading a bar code
US6070801A (en) Bar code reader, bar code reading method and computer readable medium
JP2725220B2 (ja) バーコード復調方式
US7021546B2 (en) Bar-code reader and method of reading bar-code
JP5195264B2 (ja) バーコード読取方法およびバーコード読取装置
JP3560477B2 (ja) バーコード読取装置及びバーコード読取方法
JPH0954809A (ja) バーコード検出装置及び検出方法
US7364080B2 (en) System and method for bar code detection
JP2603702B2 (ja) 前処理自動識別機能付マルチバーコードリーダ
JPS63131282A (ja) 光学式読取り装置
JP2953143B2 (ja) バーコード読取装置およびバーコード読取方法
JP2750244B2 (ja) バーコードデコーダのデコード方法
JPH0997302A (ja) 光学式情報読取装置
JP2003036416A (ja) バーコード読取装置
JPH11134427A (ja) バーコード読取り装置
JPH06274676A (ja) バーコードシンボル読取装置
JPH05324879A (ja) バーコードのコード種判別方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020528