JP4257131B2 - バーコード読取装置およびバーコード読取方法 - Google Patents

バーコード読取装置およびバーコード読取方法 Download PDF

Info

Publication number
JP4257131B2
JP4257131B2 JP2003044988A JP2003044988A JP4257131B2 JP 4257131 B2 JP4257131 B2 JP 4257131B2 JP 2003044988 A JP2003044988 A JP 2003044988A JP 2003044988 A JP2003044988 A JP 2003044988A JP 4257131 B2 JP4257131 B2 JP 4257131B2
Authority
JP
Japan
Prior art keywords
barcode
cut
data
barcode candidate
priority order
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003044988A
Other languages
English (en)
Other versions
JP2004252897A (ja
Inventor
功 岩口
秀夫 宮澤
光雄 渡辺
行造 山崎
正徳 大川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Fujitsu Frontech Ltd
Original Assignee
Fujitsu Ltd
Fujitsu Frontech 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, Fujitsu Frontech Ltd filed Critical Fujitsu Ltd
Priority to JP2003044988A priority Critical patent/JP4257131B2/ja
Priority to US10/751,885 priority patent/US7431214B2/en
Publication of JP2004252897A publication Critical patent/JP2004252897A/ja
Application granted granted Critical
Publication of JP4257131B2 publication Critical patent/JP4257131B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/10544Methods 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/10821Methods 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/10851Circuits for pulse shaping, amplifying, eliminating noise signals, checking the function of the sensing device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06K7/1404Methods for optical code recognition
    • G06K7/146Methods for optical code recognition the method including quality enhancement steps
    • G06K7/1491Methods for optical code recognition the method including quality enhancement steps the method including a reconstruction step, e.g. stitching two pieces of bar code together to derive the full bar code

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (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)
  • Cash Registers Or Receiving Machines (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取装置およびバーコード読み取り方法に関し、特にバーコードの読み取りにおける処理効率を向上したバーコード読取装置およびバーコード読取方法に関する。
【0002】
【従来の技術】
従来、各種商品を管理する際、商品にバーコードを添付し、バーコードを光学的に読み取ることで商品の識別をおこなっていた。バーコード自体は印刷などによって安価に作成可能であるので、バーコードラベルを用いることで商品の管理コストを大幅に低減することができる。
【0003】
このバーコードラベルの読み取りは、レーザスキャナやCCDカメラなどの光学系を有するバーコード読取装置によっておこなう。バーコード読取装置は、バーコードラベルからの反射光を受信し、反射光強度からバーコードに含まれる白線と黒線の配列を算出し、復号処理によって白線と黒線の配列を数値や文字の配列であるキャラクタデータに変換する。
【0004】
しかし、スキャンデータにはバーコード配列の前後の情報が含まれるので、スキャンデータ全体を復号処理にかけることとすると、非常に大きな負荷がかかることとなる。そこで、バーコードの読み取りを効率的に行うには、スキャンデータからバーコードの配列を正確に切り出すことが極めて重要な課題となる。
【0005】
この課題を解決すべく、従来のバーコード読取装置では、スキャンデータからバーコードの開始位置を特定してバーコードを切り出すことで復号処理を効率化していた(例えば、特許文献1参照。)。
【0006】
【特許文献1】
特表2000−507727号公報
【0007】
【発明が解決しようとする課題】
ところで、スキャンデータにはバーコードである可能性の高い領域が複数含まれることがある。特に、バーコードの周囲に文字列や網掛けなどの模様がある場合には、これらの文字列や模様をバーコードである可能性が高い領域、すなわちバーコード候補領域として切り出してしまう。
【0008】
従来のバーコード読取装置では、このように複数のバーコード候補領域が存在する場合に、その全てを復号処理し、復号結果によってバーコードであるか否かを判定していたので、バーコード復号処理に大きな負荷がかかり、読み取り効率が低下するという問題点があった。
【0009】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、スキャンデータに含まれる複数のバーコード候補領域から最もバーコードである可能性が高い候補領域を選択し、バーコードの処理効率を向上したバーコード読取装置およびバーコード読み取り方法を提供することを目的とする。
【0010】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するため、請求項1の発明に係るバーコード読取装置は、バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取装置であって、前記スキャンデータから、バーコードである可能性が高いバーコード候補領域を切り出す切り出し手段と、前記切り出し手段が切り出した前記バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を特徴データとして算出する特徴データ算出手段と、前記バーコード候補領域が複数ある場合に、前記特徴データをもとに復号処理を実行する際の優先順位を決定する優先順位決定手段と、を備えたことを特徴とする。
【0011】
この請求項1の発明によれば、バーコード読取装置は、バーコードを走査して取得したスキャンデータからバーコードである可能性が高いバーコード候補領域を複数切り出し、複数のバーコード候補領域のそれぞれについて、バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を特徴データとして算出し、特徴データをもとに復号処理を実行する際の優先順位を決定する。
【0012】
また、請求項2の発明に係るバーコード読取装置は、請求項1の発明において、前記特徴データは、前記バーコード候補領域の時間あたりの平均エネルギー量を含むことを特徴とする。
【0013】
この請求項2の発明によれば、バーコード読取装置は、複数のバーコード候補領域のそれぞれについて時間あたりの平均エネルギー量を算出し、算出した平均エネルギー量をもとに復号処理の優先順位を決定する。
【0014】
また、請求項3の発明に係るバーコード読取装置は、請求項1または2の発明において、前記特徴データは、前記バーコード候補領域の幅を含むことを特徴とする。
【0015】
この請求項3の発明によれば、バーコード読取装置は、複数のバーコード候補領域のそれぞれの幅の長さを算出し、算出した幅の長さをもとに復号処理の優先順位を決定する。
【0016】
また、請求項4の発明に係るバーコード読取装置は、請求項1,2または3の発明において、前記優先順位決定手段は、復号処理の対象とするバーコード候補領域数の上限を有し、該上限数のバーコード候補領域を前記複数のバーコード候補領域から選択することを特徴とする。
【0017】
この請求項4の発明によれば、バーコード読取装置は、複数のバーコード候補領域から予め定めた上限数のバーコード候補領域を選択し、復号処理の優先順位を決定する
【0018】
また、請求項5の発明に係るバーコード読取方法は、バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取方法であって、前記スキャンデータから、バーコードである可能性が高いバーコード候補領域を切り出す切り出し工程と、前記切り出し工程が切り出した前記バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を特徴データとして算出する特徴データ算出工程と、前記バーコード候補領域が複数ある場合に、前記特徴データをもとに復号処理を実行する際の優先順位を決定する優先順位決定工程と、を含むことを特徴とする。
【0019】
この請求項5の発明によれば、バーコード読取方法は、バーコードを走査して取得したスキャンデータからバーコードである可能性が高いバーコード候補領域を複数切り出し、複数のバーコード候補領域のそれぞれについて、バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を特徴データとして算出し、特徴データをもとに復号処理を実行する際の優先順位を決定する。
【0020】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係るバーコード読取装置およびバーコード読取方法の好適な実施の形態について説明する。
【0021】
まず、図1および図2を参照し、この発明にかかるバーコード読取方法の概念について説明する。図1は、複数のバーコード候補領域を含むスキャンデータの微分波形を示す図である。同図に示すようにスキャンデータは、バーコード候補領域1〜4を有する。
【0022】
本発明にかかるバーコード読み取り方法では、このバーコード候補領域1〜4から、それぞれのバーコード候補領域を特徴付ける特徴データを算出し、特徴データの比較によって、復号処理の優先順位を決定する。
【0023】
すなわち、特徴データの比較によって、バーコードである可能性が高い順番で復号処理することにより、誤って切り出したバーコード候補領域を復号する前に正しいバーコード候補領域を復号処理することができる。したがって、バーコードのスキャンから読み取り完了までの時間を短縮し、かつ復号負荷を軽減することができる。
【0024】
バーコード候補領域の評価に用いる特徴データとしては、具体的には、各バーコード候補領域の時間あたりの平均エネルギー量、バーコード候補領域の幅、および所定の閾値を超えたピークの数などを用いることができる。
【0025】
バーコード候補領域の平均エネルギー量は、バーコード候補領域を微分し、各振幅値を二乗して合計した後、バーコード候補領域の時間幅、すなわち波形長で除することで求めることができる。この時間あたり平均エネルギー量は、バーコード候補領域における振幅が大きいほど大きい値をとり、スキャンした領域におけるコントラスト比を示すこととなる。
【0026】
図1において、バーコード候補領域1の平均エネルギー量1b、バーコード候補領域2の平均エネルギー量2b、バーコード候補領域3の平均エネルギー3bおよびバーコード候補領域4の平均エネルギー量4bを比較すると、平均エネルギー量4bが最も大きく、次に平均エネルギー量1b、その後に平均エネルギー量2b、平均エネルギー量3bとなる。
【0027】
これらの平均エネルギー量は、各バーコード候補領域のコントラストに対応しているので、コントラストに関してはバーコード候補領域4が最も大きく、バーコードである確率が高いと言える。
【0028】
また、バーコード候補領域の幅は、バーコード候補領域の波形長であり、スキャンした領域における長さに対応する。図1において、バーコード候補領域1の波形長1a、バーコード候補領域2の波形長2a、バーコード候補領域3の波形長3aおよびバーコード候補領域4の波形長4aを比較すると、波形長3aが最も大きく、次に波形長1a、その後に波形長4a、波形長2aとなる。
【0029】
これらの波形長は、各バーコード候補領域の長さに対応しているので、バーコード候補領域の長さに関してはバーコード候補領域3aがもっとも大きく、バーコードである確率が高いと言える。
【0030】
さらに、バーコードの微分波形のうち、所定の閾値を超えたピークの数を計数することで、所定以上のコントラスト比を有するパターンがどれだけの長さ継続しているかを評価することができる。図1においては、バーコード候補領域1のピーク数1c、バーコード候補領域2のピーク数2c、バーコード候補領域3のピーク数3cおよびバーコード候補領域4のピーク数4cを比較すると、ピーク数1cが最も大きく、次にピーク数3c、その後にピーク数4c、ピーク数2cとなる。
【0031】
すなわち、ピーク数を比較した場合には、バーコード候補領域1がもっともバーコードである確率が高いと言える。なお、ピーク数を計数する場合の閾値は、全てのバーコード候補領域で同一の値を用いてもよいし、各バーコード候補領域について個別に設定するようにしてもよい。
【0032】
このように、波形長や平均エネルギー量、ピーク数などを用いることにより、複数のバーコード候補領域のうち、どの領域がもっともバーコードである可能性が高いかを評価することができる。バーコードは、黒線と白線との繰り返し配列で形成されるので、その反射光の波形は波形長が長く、かつエネルギー量が大きくなる。したがって、図2に示すように、波形長が長く、かつエネルギー量が大きいほど波形品質が良く、バーコードである確率が高い。
【0033】
そこで、波形長、平均エネルギー量およびピーク数から各バーコード候補領域の品質評価値を算出し、この評価値を特徴データとして用いることで、バーコード候補領域を総合的に比較して処理の優先順序を定めることができる。
【0034】
つぎに、この実施の形態にかかるバーコード読取装置について説明する。図3は、この実施の形態にかかるバーコード読取装置の概要構成を説明する概要構成図である。図1において、バーコード読取装置12は、主制御部21、ミラー駆動回路22、ポリゴンミラー23、レーザダイオード(LD)25、LD駆動回路24、フォトダイオード26、前処理部27、切り出し処理部28、切り出しデータ評価部29、切り出しデータ記憶部31、切り出しデータ選択部32、復号処理部33、通信インターフェース34を有する。
【0035】
主制御部21は、バーコード読取装置12を全体制御する制御部である。具体的には、ミラー駆動回路22およびLD駆動回路24を制御してバーコード11のスキャンを実行し、また、復号処理部33から受信したキャラクタデータを通信インターフェース34を介してPOS端末に送信する。
【0036】
ミラー駆動回路22は、主制御部21からの制御を受け、ポリゴンミラー23を回転させる。また、LD駆動回路24は、主制御部21からの制御を受けレーザダイオード25を動作させてレーザ光を出射させる。
【0037】
レーザダイオード25が出射したレーザ光は、ポリゴンミラー23に反射してバーコード11に照射される。このバーコード11に対するレーザ光の照射位置は、ポリゴンミラー23の回転によって変化し、バーコード11のスキャンを実現することができる。
【0038】
一方、バーコード11が反射したレーザ光は、フォトダイオード26によって電気信号に変換される。前処理部27は、この電気信号を増幅した後、デジタル信号に変換することで図4に示すスキャンデータ40を作成し、このスキャンデータ40を切り出し処理部28に送信する。
【0039】
切り出し処理部28は、スキャンデータ40を微分して図4に示す微分スキャンデータ40aを作成し、この微分スキャンデータ40aからバーコード候補領域を切り出して切り出しデータ評価部29に送信する。図4においては、切り出し処理部28は、微分スキャンデータ40aから切り出しデータ41c,42c,43cを切り出す。
【0040】
切り出しデータ評価部29は、切り出しデータ41c,42c,43cに対して特徴データを算出し、特徴データをもとに切り出したデータがバーコードである可能性を示す評価値を求める。具体的には、切り出しデータ41c,42c,43cの特徴データとして、それぞれ平均エネルギー量、波形長、ピーク数を算出し、平均エネルギー量、波形長、ピーク数をパラメータとする関数によって評価値を算出する。
【0041】
切り出しデータ評価部29は、算出した評価値を切り出しデータに付加して切り出しデータ記憶部31に書き込む。さらに、切り出しデータ評価部29は、切り出したデータと、評価結果に加え、切り出しサンプル数を併せて書き込む。この切り出しサンプル数は、切り出しデータに含まれるAD変換時のサンプリング数であり、切り出しデータとともにバーコード復号処理に用いるデータである。
【0042】
すなわち、切り出しデータ記憶部31は、各バーコード候補領域について、表価値、切り出しサンプル数、切り出しデータを記憶することとなる。さらに、切り出しデータ記憶部31は、図5に示すように、各バーコード候補領域の評価値をもとに、バーコード復号処理の優先順位に従ってバーコード候補領域を記憶する。
【0043】
具体的には、切り出しデータ記憶部31は、優先順位1にバーコード候補領域42を設定し、バーコード候補領域42の評価値42a,切り出しサンプル数42bおよび切り出しデータ42cを記憶する。また、優先順位2にバーコード候補領域43を設定し、バーコード候補領域43の評価値43a、切り出しサンプル数43bおよび切り出しデータ43cを記憶する。さらに、優先順位3にバーコード候補領域41を設定し、バーコード候補領域41の評価値41a、切り出しサンプル数41bおよび切り出しデータ41cを記憶する。
【0044】
切り出しデータ選択部32は、切り出しデータ記憶部31から、優先順位の高い順番でバーコード候補領域を読み出して、その切り出しデータと切り出しサンプル数とを復号処理部33に送信する。
【0045】
復号処理部33は、切り出しデータ選択部32から受信した切り出しデータと切り出しサンプル数とを用いてバーコード復号処理をおこない、数字や文字の配列であるキャラクタデータを作成して主制御部21に送信する。
【0046】
ここで、復号処理部33は、評価値の高い順番、すなわちバーコードである可能性が高い順番で切り出しデータおよび切り出しサンプル数を受信するので、誤って切り出されたデータを復号する前に正しいバーコード候補領域を復号することができ、バーコードの読み取り完了までの時間を短縮し、処理負荷を軽減することができる。
【0047】
主制御部21は、通信インターフェース34を介し、復号処理部33から受信したキャラクタデータを外部の装置、たとえばPOS端末に送信することで、バーコード11の読み取り結果を出力する。
【0048】
つぎに、バーコード読取装置12におけるバーコード復号処理について、さらに詳細に説明する。図6は、バーコード読取装置12におけるバーコード復号の処理動作を説明するフローチャートである。同図に示すように、バーコード読取装置12は、まずレーザダイオード25とポリゴンミラー23とを協働させてバーコード11をスキャンし、フォトダイオード26によってスキャンデータを取得する(ステップS101)。
【0049】
つぎに、バーコード読取装置12は、スキャンデータを前処理部27によって増幅、AD変換した後、切り出し処理部28によってバーコード候補領域を切り出す(ステップS102)。その後、バーコード読取装置12は、切り出しデータ評価部29によって切り出したデータの評価値を算出し(ステップS103)、切り出したデータに評価値を付して切り出しデータ記憶部31に記憶させる(ステップS104)。
【0050】
つぎに、このステップS104の処理によって、切り出しデータの数が所定の数に達したか否かを判定する(ステップS105)。切り出しデータの数が所定の数に達していない場合(ステップS105,No)、バーコード読取装置12は、処理開始から所定時間が経過したか否かを判定する(ステップS106)。
【0051】
処理開始から所定時間が経過していない場合(ステップS106,No)、バーコード読取装置12は、スキャンデータから次のバーコード候補領域を切り出す(ステップS102)。
【0052】
切り出しデータの数が所定数に達した場合(ステップS105,Yes)、または処理開始から所定時間が経過した場合(ステップS106,Yes)、バーコード読取装置12は、各バーコード候補領域の評価値をもとに、優先順位を設定する(ステップS107)。
【0053】
その後、切り出しデータ記憶部から、優先順位がもっとも高いバーコード候補領域の切り出しデータを読み出し(ステップS108)、読み出した切り出しデータを復号する(ステップS109)。その後、切り出しデータ記憶部にバーコード候補領域が残っているか否かを判定し(ステップS110)、バーコード候補領域が残っているならば(ステップS110,Yes)、残ったバーコード候補領域のうち、最も優先順位が高いバーコード候補領域の切り出しデータを処理する(ステップS110)。
【0054】
このように、優先順位に従って復号処理を実行し、全てのバーコード候補領域を復号した場合に(ステップS110,No)、バーコードの読み取り処理を終了する。
【0055】
ところで、切り出しデータ記憶部31は、一定数、たとえば3個のバーコード候補領域を記憶する。この一定数のバーコード候補領域を記憶する場合、切り出しデータ記憶部31は、スキャンデータから切り出した順に3個のバーコード候補領域を記憶し、この3個のバーコード候補領域に対して優先順位を設定して復号処理を始める。
【0056】
しかし、数多くのバーコード候補領域が切り出された場合、所定数の中に正しいバーコード候補領域があるとは限らず、スキャンデータから3個の誤ったバーコード候補領域が切り出される場合がある。切り出し順にバーコード候補領域を記憶し、この3個に優先順位を割り振って復号することとすると、3個全てが誤ったバーコード候補領域であり、その後に正しいバーコード候補領域がある場合、誤った3個のバーコード候補領域を全て復号した後に正しいバーコード候補領域を復号することとなり、処理効率が低下する。
【0057】
そこで、切り出しデータ記憶部31に所定数のバーコード候補領域を記憶した後、新たにバーコード候補領域を切り出した場合に、新たなバーコード候補領域の評価値と既に記憶しているバーコード候補領域の評価とを比較し、新たなバーコード候補領域の評価値が、既存のバーコード候補領域の評価値に比して大きい場合に切り出しデータ記憶部31の記憶するバーコード候補領域を入れ替えることにより、最もバーコードである可能性が高いバーコード候補領域を常に優先して復号することができ、処理効率の低下を防止することができる。
【0058】
この切り出しデータ記憶部31に記憶するバーコード候補領域の入れ替え処理について、図7を参照して説明する。図7は、バーコード候補領域の入れ替え動作を説明するフローチャートである。切り出しデータ評価部29が新たに切り出したバーコード候補領域の評価値を算出した場合、同図に示すように、まず、切り出しデータ記憶部31から優先順位3の評価値を読み出す(ステップS101)。つぎに、切り出しデータ評価部29は、新たに切り出したデータの評価値と優先順位3の評価値とを比較する(ステップS202)。
【0059】
新たに切り出したデータの評価値が優先順位3の評価値以下である場合(ステップS202,No)、切り出しデータ評価部29は、新たに切り出したデータを破棄する(ステップS203)。
【0060】
一方、新たに切り出したデータの評価値が優先順位3の評価値に比して大きい場合(ステップS202,Yes)、切り出しデータ評価部29は、優先順位2の評価値を読み出す(ステップS204)。つぎに、切り出しデータ評価部29は、新たに切り出したデータの評価値と優先順位2の評価値とを比較する(ステップS205)。
【0061】
新たに切り出したデータの評価値が優先順位2の評価値以下である場合(ステップS205,No)、切り出しデータ評価部29は、新たに切り出したデータを優先順位3に設定し、もとの優先順位3のデータを破棄する(ステップS206)。
【0062】
一方、新たに切り出したデータの評価値が優先順位2の評価値に比して大きい場合(ステップS205,Yes)、切り出しデータ評価部29は、優先順位1の評価値を読み出す(ステップS207)。つぎに、切り出しデータ評価部29は、新たに切り出したデータの評価値と優先順位1の評価値とを比較する(ステップS208)。
【0063】
新たに切り出したデータの評価値が優先順位1の評価値以下である場合(ステップS208,No)、切り出しデータ評価部29は、新たに切り出したデータを優先順位2に設定し、もとの優先順位2のデータを優先順位3に設定し、もとの優先順位3のデータを破棄する(ステップS209)。
【0064】
一方、新たに切り出したデータの評価値が優先順位1の評価値に比して大きい場合(ステップS208,Yes)、切り出しデータ評価部29は、新たに切り出したデータを優先順位1に設定し、もとの優先順位1のデータを優先順位2に設定し、もとの優先順位2のデータを優先順位3に設定し、もとの優先順位3のデータを破棄して(ステップS210)、処理を終了する。
【0065】
このように、切り出しデータ記憶部31に記憶するバーコード候補領域を、評価値をもとに入れ替えることで、記憶するバーコード候補領域の数や切り出したバーコード候補領域の数に関わらず、最もバーコードである可能性の高い切り出しデータを記憶することができる。なお、切り出しデータ記憶部31に記憶した内容は、復号処理に移行した後に消去することが望ましい。これは、過去に高品質のバーコード候補領域を読み込んだ後に、低品質のバーコード候補領域を読む場合、過去の高品質のデータによって新たなデータが全て却下されるのを防止するためである。
【0066】
つぎに、復号処理部33の処理についてさらに説明する。復号処理部33は、バーコード候補領域の切り出しデータをキャラクタデータに変換するが、バーコードの配列は所定の規約にしたがって作成されるため、キャラクタデータの配列からもとのデータがバーコードであったか否かを判定することができる。通常、スキャンデータに含まれるバーコードは単一であるので、バーコード候補領域の復号の結果、正常なキャラクタデータを得ることができた場合に、それ以降のバーコード候補領域を復号せずに破棄することで、バーコードの復号にかかる負荷をさらに減少させることができる。
【0067】
上述してきたように、本実施の形態にかかるバーコード読取装置では、バーコード11をスキャンして取得したスキャンデータ40から複数のバーコード候補領域を切り出した場合に、それぞれのバーコード候補領域を特徴付ける特徴データを算出し、特徴データから復号処理の優先順位を決定し、この優先順位にしたがってバーコードの復号処理をおこなうので、バーコードである可能性が高い候補領域を優先的に処理し、バーコードのスキャンから読み取り完了までの時間を短縮するとともに復号負荷を軽減することができる。
【0068】
(付記1)バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取装置であって、
前記スキャンデータから、バーコードである可能性が高いバーコード候補領域を切り出す切り出し手段と、
前記切り出し手段が切り出したバーコード候補領域の特徴を示す特徴データを算出する特徴データ算出手段と、
前記バーコード候補領域が複数ある場合に、前記特徴データをもとに復号処理を実行する際の優先順位を決定する優先順位決定手段と、
を備えたことを特徴とするバーコード読取装置。
【0069】
(付記2)前記特徴データは、前記バーコード候補領域の時間あたりの平均エネルギー量を含むことを特徴とする付記1に記載のバーコード読取装置。
【0070】
(付記3)前記特徴データは、前記バーコード候補領域の幅を含むことを特徴とする付記1または2に記載のバーコード読取装置。
【0071】
(付記4)前記特徴データは、前記バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を含むことを特徴とする付記1,2または3に記載のバーコード読取装置。
【0072】
(付記5)前記優先順位決定手段は、復号処理の対象とするバーコード候補領域数の上限を有し、該上限数のバーコード候補領域を前記複数のバーコード候補領域から選択することを特徴とする付記1〜4のいずれか一つに記載のバーコード読取装置。
【0073】
(付記6)前記優先順位決定手段は、上限数のバーコード候補領域を選択した後に新たにバーコード候補領域が切り出された場合に、予め選択した上限数のバーコード候補領域に新たなバーコード候補領域を含めて前記優先順位を振りなおし、該振りなおした優先順位が最も低いバーコード候補領域を破棄することを特徴とする付記5に記載のバーコード読取装置。
【0074】
(付記7)バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取方法であって、
前記スキャンデータから、バーコードである可能性が高いバーコード候補領域を切り出す切り出し工程と、
前記切り出し工程が切り出したバーコード候補領域の特徴を示す特徴データを算出する特徴データ算出工程と、
前記バーコード候補領域が複数ある場合に、前記特徴データをもとに復号処理を実行する際の優先順位を決定する優先順位決定工程と、
を含むことを特徴とするバーコード読取方法。
【0075】
(付記8)前記特徴データは、前記バーコード候補領域の時間あたりの平均エネルギー量を含むことを特徴とする付記7に記載のバーコード読取方法。
【0076】
(付記9)前記特徴データは、前記バーコード候補領域の幅を含むことを特徴とする付記7または8に記載のバーコード読取方法。
【0077】
(付記10)前記特徴データは、前記バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を含むことを特徴とする付記7,8または9に記載のバーコード読取方法。
【0078】
(付記11)前記優先順位決定工程は、復号処理の対象とするバーコード候補領域数の上限を有し、該上限数のバーコード候補領域を前記複数のバーコード候補領域から選択することを特徴とする付記7〜10のいずれか一つに記載のバーコード読取方法。
【0079】
(付記12)前記優先順位決定工程は、上限数のバーコード候補領域を選択した後に新たにバーコード候補領域が切り出された場合に、予め選択した上限数のバーコード候補領域に新たなバーコード候補領域を含めて前記優先順位を振りなおし、該振りなおした優先順位が最も低いバーコード候補領域を破棄することを特徴とする付記11に記載のバーコード読取方法。
【0080】
【発明の効果】
以上説明したように、請求項1の発明によれば、バーコード読取装置は、バーコードを走査して取得したスキャンデータからバーコードである可能性が高いバーコード候補領域を複数切り出し、複数のバーコード候補領域についてそれぞれ特徴データを算出し、特徴データをもとに復号処理を実行する際の優先順位を決定するので、バーコードである可能性が高いバーコード候補領域を優先して処理し、処理時間を短縮するとともに処理効率を向上したバーコード読取装置が得られるという効果を奏する。
【0081】
また、請求項2の発明によれば、バーコード読取装置は、複数のバーコード候補領域のそれぞれについて時間あたりの平均エネルギー量を算出し、算出した平均エネルギー量をもとに復号処理の優先順位を決定するので、コントラストの高いバーコード候補領域を優先して処理し、処理時間を短縮するとともに処理効率を向上したバーコード読取装置が得られるという効果を奏する。
【0082】
また、請求項3の発明によれば、バーコード読取装置は、複数のバーコード候補領域のそれぞれの幅の長さを算出し、算出した幅の長さをもとに復号処理の優先順位を決定するので、スキャンした領域おける幅が長いバーコード候補領域を優先して処理し、処理時間を短縮するとともに処理効率を向上したバーコード読取装置が得られるという効果を奏する。
【0083】
また、請求項4の発明によれば、バーコード読取装置は、複数のバーコード候補領域から予め定めた上限数のバーコード候補領域を選択し、復号処理の優先順位を決定するので、処理時間を短縮するとともに処理効率を向上したバーコード読取装置が得られるという効果を奏する。
【0084】
また、請求項5の発明によれば、バーコード読取方法は、バーコードを走査して取得したスキャンデータからバーコードである可能性が高いバーコード候補領域を複数切り出し、複数のバーコード候補領域についてそれぞれ特徴データを算出し、特徴データをもとに復号処理を実行する際の優先順位を決定するので、バーコードである可能性が高いバーコード候補領域を優先して処理し、処理時間を短縮するとともに処理効率を向上したバーコード読取方法が得られるという効果を奏する。
【図面の簡単な説明】
【図1】複数のバーコード候補領域を含むスキャンデータの微分波形を説明する説明図である。
【図2】バーコード候補領域の波形長およびエネルギー量について説明する説明図である。
【図3】本発明の形態にかかるバーコード読取装置の概要構成を説明する概要構成図である。
【図4】スキャンデータおよび微分スキャンデータの具体例について説明する説明図である。
【図5】図3に示した切り出しデータ記憶部が記憶するデータを説明する説明図である。
【図6】バーコード復号の処理動作を説明するフローチャートである。
【図7】バーコード候補領域の入れ替え動作を説明するフローチャートである。
【符号の説明】
1〜4,41〜43 バーコード候補領域
1a〜4a 波形長
1b〜4b 平均エネルギー量
1c〜4b ピーク数
11 バーコード
12 バーコード読取装置
21 主制御部
22 ミラー駆動回路
23 ポリゴンミラー
24 LD駆動回路
25 レーザダイオード
26 フォトダイオード
27 前処理部
28 切り出し処理部
29 切り出しデータ評価部
31 切り出しデータ記憶部
32 切り出しデータ選択部
33 復号処理部
34 通信インターフェース
41a〜43a 評価値
41b〜43b 切り出しサンプル数
41c〜43c 切り出しデータ

Claims (5)

  1. バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取装置であって、
    前記スキャンデータから、バーコードである可能性が高いバーコード候補領域を切り出す切り出し手段と、
    前記切り出し手段が切り出した前記バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を特徴データとして算出する特徴データ算出手段と、
    前記バーコード候補領域が複数ある場合に、前記特徴データをもとに復号処理を実行する際の優先順位を決定する優先順位決定手段と、
    を備えたことを特徴とするバーコード読取装置。
  2. 前記特徴データは、前記バーコード候補領域の時間あたりの平均エネルギー量を含むことを特徴とする請求項1に記載のバーコード読取装置。
  3. 前記特徴データは、前記バーコード候補領域の幅を含むことを特徴とする請求項1または2に記載のバーコード読取装置。
  4. 前記優先順位決定手段は、復号処理の対象とするバーコード候補領域数の上限を有し、該上限数のバーコード候補領域を前記複数のバーコード候補領域から選択することを特徴とする請求項1〜3のいずれか一つに記載のバーコード読取装置。
  5. バーコードを走査して取得したスキャンデータから、前記バーコードが示す情報を読み取るバーコード読取方法であって、
    前記スキャンデータから、バーコードである可能性が高いバーコード候補領域を切り出す切り出し工程と、
    前記切り出し工程が切り出した前記バーコード候補領域の微分波形のうち、所定の閾値を超えたピークの数を特徴データとして算出する特徴データ算出工程と、
    前記バーコード候補領域が複数ある場合に、前記特徴データをもとに復号処理を実行する際の優先順位を決定する優先順位決定工程と、
    を含むことを特徴とするバーコード読取方法。
JP2003044988A 2003-02-21 2003-02-21 バーコード読取装置およびバーコード読取方法 Expired - Fee Related JP4257131B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003044988A JP4257131B2 (ja) 2003-02-21 2003-02-21 バーコード読取装置およびバーコード読取方法
US10/751,885 US7431214B2 (en) 2003-02-21 2004-01-07 Bar-code reader and method of reading bar code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003044988A JP4257131B2 (ja) 2003-02-21 2003-02-21 バーコード読取装置およびバーコード読取方法

Publications (2)

Publication Number Publication Date
JP2004252897A JP2004252897A (ja) 2004-09-09
JP4257131B2 true JP4257131B2 (ja) 2009-04-22

Family

ID=32866495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003044988A Expired - Fee Related JP4257131B2 (ja) 2003-02-21 2003-02-21 バーコード読取装置およびバーコード読取方法

Country Status (2)

Country Link
US (1) US7431214B2 (ja)
JP (1) JP4257131B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100715754B1 (ko) * 2001-01-26 2007-05-08 후지쯔 가부시끼가이샤 정보 판독 방법 및 장치
US7364080B2 (en) * 2006-03-22 2008-04-29 Symbol Technologies, Inc. System and method for bar code detection
US8542867B2 (en) * 2007-07-31 2013-09-24 Canon Kabushiki Kaisha Image processing for reproducing code image from original information
JP5140820B2 (ja) 2008-03-31 2013-02-13 日本電産サンキョー株式会社 シンボル情報読取装置及びシンボル情報読取方法
JP5262994B2 (ja) * 2008-07-24 2013-08-14 株式会社デンソーウェーブ 光学的情報読取装置
US8868661B2 (en) * 2008-10-08 2014-10-21 Verizon Patent And Licensing Inc. Message management based on metadata
JP2011165139A (ja) * 2010-02-15 2011-08-25 Toshiba Tec Corp コードシンボル読取装置及び制御プログラム
US8336780B1 (en) * 2010-06-15 2012-12-25 Webscan, Inc. Windowed housing with rotatable imaging device
JP5398653B2 (ja) * 2010-06-30 2014-01-29 株式会社オプトエレクトロニクス デコード方法及びデコード処理装置
EP2831809B1 (en) 2012-07-19 2017-07-05 Hewlett-Packard Indigo B.V. Security feature

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS586982B2 (ja) * 1976-08-18 1983-02-07 株式会社デンソー バ−コ−ド読取方法および装置
US4411016A (en) * 1981-06-01 1983-10-18 Recognition Equipment Incorporated Barcode width measurement system
US5153928A (en) * 1989-06-09 1992-10-06 Casio Computer Co., Ltd. Method and apparatus for recording/reproducing mesh pattern data
US5155343A (en) * 1990-03-28 1992-10-13 Chandler Donald G Omnidirectional bar code reader with method and apparatus for detecting and scanning a bar code symbol
US5298728A (en) * 1991-11-01 1994-03-29 Spectra-Physics Scanning System, Inc. Signal processing apparatus and method
US5504319A (en) * 1994-02-09 1996-04-02 Symbol Technologies, Inc. Method and system for bar code acquisition
JPH0896059A (ja) * 1994-09-28 1996-04-12 Toshiba Corp バーコード読取装置
NL9500597A (nl) * 1995-03-28 1996-11-01 Scantech Bv Werkwijze en inrichting voor het decoderen van barcodes.
US5821520A (en) * 1995-04-28 1998-10-13 Symbol Technologies, Inc. Bar code scanning system with the pre-decoding signal processing and method for bar code candidate selection for decoding
US5739518A (en) * 1995-05-17 1998-04-14 Metanetics Corporation Autodiscrimination for dataform decoding and standardized recording
US5539191A (en) * 1995-06-22 1996-07-23 Intermec Corporation Method and apparatus for decoding unresolved bar code profiles using edge finding circuitry
US5773807A (en) * 1995-07-28 1998-06-30 Symbol Technologies, Inc. Arrangement for and method of minimizing reading errors in bar code symbol readers
JPH09160997A (ja) 1995-12-08 1997-06-20 Toshiba Corp バーコード検出方法およびバーコード検出装置
US5719384A (en) * 1996-05-10 1998-02-17 Metanetics Corporation Oblique access to image data for reading dataforms
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
JP2000251010A (ja) 1999-03-01 2000-09-14 Hitachi Ltd 帳票読み取り方法
US6176428B1 (en) * 1999-04-07 2001-01-23 Symbol Technologies, Inc. Techniques for reading postal code
JP4288756B2 (ja) 1999-04-08 2009-07-01 株式会社デンソー 情報コード概略存在領域推定方法、情報コード読取方法及び装置、記録媒体

Also Published As

Publication number Publication date
US20040164155A1 (en) 2004-08-26
US7431214B2 (en) 2008-10-07
JP2004252897A (ja) 2004-09-09

Similar Documents

Publication Publication Date Title
JP4257131B2 (ja) バーコード読取装置およびバーコード読取方法
JP2738098B2 (ja) 光走査装置
JP4838387B2 (ja) 情報コード及び情報コード復号方法
US20200250469A1 (en) Methods for optical character recognition (ocr)
US7083101B2 (en) Bar-code reader and method of reading bar-code
JPH10171913A (ja) 16ビットキャラクターをエンコード可能なバーコード、及び該バーコードの印刷及び読取り装置及び方法
US5627358A (en) System and method for reading two-dimensional barcodes
JP2001250080A (ja) バーコードのエラー検出及び修正のためのシステム及びその方法
JP2001043308A (ja) バーコード読取り方法及びバーコード読取りシステム
EP1450291B1 (en) Bar code reader using a maximum likelihood method
JP2007034546A (ja) 光学読取装置
US6237850B1 (en) Bar code reader and method of reading bar code
JP3711725B2 (ja) 画像認識装置
JP3448404B2 (ja) バーコード読取装置及びバーコード読取方法
JP2009076031A (ja) 光学的情報読取装置
JP2004252896A (ja) バーコード読取装置
JP3835003B2 (ja) データコード読取装置およびそのプログラム記録媒体
JP5424369B1 (ja) バーコードリーダ、バーコード読取り方法及びバーコード読取り用プログラム
JPH10222602A (ja) 光学式文字読取装置
JP5896488B2 (ja) バーコード読取装置、バーコード読取方法及びバーコード読取プログラム
JP5115124B2 (ja) バーコード読取装置及びプログラム
JP4555952B2 (ja) バーコード記号読取装置及びそれによるスタートマージン候補検出方法並びにバーコード記号読取方法
JP2001307013A (ja) バーコード読取装置
JP6083829B2 (ja) バーコード読取装置、バーコード読取方法及びバーコード読取プログラム
JP2001184481A (ja) 画像読み取り装置及び画像読み取り方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080115

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081218

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090127

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090202

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

Free format text: PAYMENT UNTIL: 20120206

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4257131

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130206

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140206

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees