JP5255335B2 - バーコード認識装置、及びバーコード認識プログラム - Google Patents

バーコード認識装置、及びバーコード認識プログラム Download PDF

Info

Publication number
JP5255335B2
JP5255335B2 JP2008157593A JP2008157593A JP5255335B2 JP 5255335 B2 JP5255335 B2 JP 5255335B2 JP 2008157593 A JP2008157593 A JP 2008157593A JP 2008157593 A JP2008157593 A JP 2008157593A JP 5255335 B2 JP5255335 B2 JP 5255335B2
Authority
JP
Japan
Prior art keywords
barcode
waveform
width
imaging
character
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.)
Active
Application number
JP2008157593A
Other languages
English (en)
Other versions
JP2009301463A (ja
JP2009301463A5 (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2008157593A priority Critical patent/JP5255335B2/ja
Publication of JP2009301463A publication Critical patent/JP2009301463A/ja
Publication of JP2009301463A5 publication Critical patent/JP2009301463A5/ja
Application granted granted Critical
Publication of JP5255335B2 publication Critical patent/JP5255335B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、バーコード認識装置、及びバーコード認識プログラムに関する。
従来、バーコードの読み取りには、レーザ発振器、リニアCCD、及び専用のハードウェアを用いて、高解像度の画像を取得し、また、専用の照明装置を搭載するなどの工夫が行われていた。
近年、バーコードは、Code128(EAN-128)などのモジュール幅が0.16mm程度で印刷される高密度のものが一般的にも使われるようになった。これらのバーコードは、モジュール幅が細密なため、高解像度で品質のよい撮像機器が必要である。
一方、現代においては、携帯端末カメラやWebカメラなど、汎用スキャナ、デジタルカメラなど安価な装置での読取要求が発生している。このため、安価で低解像度の撮像機器で撮像しても正確なバーコード認識をおこなうことができる技術が求められている。
特許文献1には、バーコードのノイズ分除去のために使用されるローパスフィルタが開示され、特許文献2には、認識の失敗時に閾値をリトライする技術が開示され、特許文献3には、複数の解像度での画像を登録しておき、低い解像度での画像が入力されても比較検証することができる技術が開示されている。
また、非特許文献1には、バーコード復号手順が具体的に開示されており、最大反射率をRmaxとし、最小反射率をRminとしたとき、全域的しきい値G=(Rmax+Rmin)/2より上にある各々の領域はスペースとみなし、それぞれの領域内の最大反射率をスペース反射率Rsとしている。また、全域的しきい値より下にある領域はバーとみなし、それぞれの領域内の最小反射率をバー反射率Rbとしている。
また、エレメントエッジは、走査反射率波形の隣り合う二つの領域のRsとRbとの中間点を交差する点を位置すると規定されている。すなわち、エレメントエッジは、反射率が(Rs+Rb)/2となる点である。なお、エレメントとは、バーコードの黒、又は白のバーを指しており、エレメントエッジは黒、白の境界部分のことを指す。
特開2006−238354号公報 特開2002−269491号公報 特開2007−36836号公報 規格番号JIS X 0520、規格名称 「バーコードシンボル印刷品質の評価仕様−1次元シンボル」
しかしながら、汎用カメラデバイスは、レンズ等の光学部品を用いているので、解像度不足やピンボケなどが生じる。すなわち、汎用カメラデバイスを用いてバーコードを撮像した場合は、図1の汎用画像走査反射率波形例に示すように、全域的しきい値GT=(Rmax+Rmin)/2を用いて、バー、スペースの区別を行う場合は、バーが幅広であり、スペースが狭小であるときに、バーよりも高い値に全域的しきい値がくることがあり、バー、スペースの区別が困難になるという課題がある。
また、図2の画像走査反射率波形例(エレメントエッジ)は、スペース間が狭小な例を示しており、解像度不足、ピンボケのため画像信号がバーコードの濃淡に追従しておらず丸みを帯びている。図2のエレメントエッジee1,ee2は、実際のバーコードのエッジ(Rs+Rb)/2の位置とは異なる場合が発生し、正しく復号できなくなる課題がある。
本発明は、前記課題を解決するためになされたものであり、撮像素子による分解能の低下の影響を低減することができるバーコード認識装置、及びバーコード認識プログラムを提供することを目的とする。
前記課題を解決するため、本発明の一の手段は、撮像素子を用いて撮像されたバーコードを認識するバーコード認識装置であって、狭小バーと狭小スペースとを備えた基準バーコードの波形にレスポンス関数を適用した模擬波形を演算し、この模擬波形(例えば、P[n])と前記基準バーコードを撮像した基準撮像波形とが一致するように前記レスポンス関数のパラメータ(例えば、ピント特性u)を変化させて、前記撮像素子の分解能を演算する分解能演算手段と、前記バーコードを撮像した撮像波形を取得するバーコード波形取得手段(例えば、第二撮像手段)と、記バーコード波形取得手段で取得した撮像波形(例えば、走査反射率波形)のピーク値同士の中点座標((Rs+Rb)/2)を用いて、前記バーコードのバー及びスペースの幅を算出する幅算出手段と、前記幅算出手段で算出された幅の画素数と、前記分解能演算手段で演算された前記分解能の値と、前記分解能演算手段で一致するように変化させたパラメータを適用した前記レスポンス関数とを用いて、前記バーコードに使用される複数のキャラクタのエレメントパターンを作成するエレメントパターン作成手段と、前記バーコード波形取得手段で取得した撮像波形と、前記エレメントパターン作成手段で作成したエレメントパターンとを比較して、最適なキャラクタを選択するキャラクタ選択手段とを備えることを特徴とする。
本発明の他の手段は、撮像素子を用いて撮像されたバーコードを認識するバーコード認識装置であって、前記バーコードを撮像した撮像波形を取得するバーコード波形取得手段と、前記バーコード波形取得手段で取得した撮像波形のピーク値同士の中点座標を用いて、前記バーコードのバー及びスペースの幅を算出する幅算出手段と、前記幅算出手段が算出した幅より演算されたキャラクタの画素数とレスポンス関数とを用いて、複数のキャラクタのエレメントパターンを作成するエレメントパターン作成手段と、前記エレメントパターン作成手段で作成された複数のエレメントパターンと、前記撮像波形とを比較することによりキャラクタを選択するキャラクタ選択手段とを備えることを特徴とする。このとき、前記レスポンス関数のパラメータは、前記キャラクタ選択手段で復号された復元キャラクタのエレメント幅と、前記幅算出手段により算出された幅とが略一致するように更新されたものであることが好ましい。
本発明によれば、撮像素子による分解能の低下の影響を低減することができる。
(第1実施形態)
図3は、本発明の第1実施形態のバーコード認識装置の構成図である。
バーコード認識装置100は、スキャナ200に接続されるものであり、入力I/F10と、制御部12と、表示部14と、記憶部20とを備えている。
スキャナ200は、撮像素子であるCCD210と照明装置220とを備え、照明装置220により照明されたバーコードをCCD210が撮像するようになっている。
また、バーコード認識装置100は、基準バーコード300が記載されている測定シートをスキャナ200が読み取り、CCD210の解像度等を決定するピント特性を測定する処理と、この測定されたピント特性を用いて、読取対象のバーコードを撮像した撮像画像を補正する処理とを実行するように構成されている。
入力I/F10は、制御部12により制御され、CCD210が出力する影像出力を入力する。表示部14は、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)により構成され、バーコードの認識結果を表示する。
制御部12は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等により構成され、記憶部20に記憶されているプログラムを実行する。なお、バーコード認識装置100がPC(Personal Computer)により構成される場合には、ROMにイニシャルプログラムローダが記憶されており、HDD(Hard Disc Drive)に記憶されたOS(Operating System)及びプログラムがRAMに展開されて実行される。
記憶部20は、画像メモリ22と、CTF(Contrast Transfer Function)領域24と、ピント特性u領域26と、ノイズ特性領域28と、バーコードのエレメントパターンが記憶されるキャラクタ辞書30と、制御部12に実行させるプログラムの領域とを備えている。このプログラムは、第一撮像手段42と、分解能演算手段50と、第二撮像手段60と、エレメント幅算出手段70と、エレメントパターン作成手段80と、キャラクタ選択手段85と、表示手段90とを備える。
第一撮像手段42は、スキャナ200から測定シートの基準バーコード300を事前に読み取り、読み取った基準バーコード300の画像データを画像メモリ22に記憶する。分解能演算手段50は、狭小幅測定手段52と、ピント特性演算手段54と、CTF・ノイズ測定手段56とを備える。
図4(a)は、測定シートに記載されている基準バーコード300の一例である。
基準バーコード300は、バー幅やスペース幅が正確であり、十分に太く黒い、幅広バー311、白い狭小スペース312、黒い狭小バー313、及び十分に広く白い、幅広スペース314を備えている。狭小スペース312、及び狭小バー313は、読取対象となるバーコードの最小モジュール幅と同値以下の幅となっている。
図4(b)は、基準バーコード300に対応するCCD210の撮像出力であり、画像メモリ22に格納される走査反射率波形を示す。
ここでRは画像上のバーコードの位置における反射率である。
幅広バー311に対応する反射率Rb0は、幅広黒バー311の中心付近のノイズNbを含む輝度の平均値で反射率零とする。幅広スペース314に対応する反射率Rs0は、幅広スペース314の中心付近のノイズNsを含む輝度の平均値で反射率100%とする。しかしながら、解像度不足やピンぼけのために図4(b)に示すようななまった波形になるため、狭小スペース312に対応する反射率は、100%にならずRs1であり、狭小バー313に対応する反射率は零にならずRb1である。
反射率が(Rs1+Rb1)/2となる点が、狭小スペース312と狭小バー313とのエレメントエッジ320(図4(b))である。このため、このエレメントエッジ320は、スキャナ特性測定用媒体例の図4(a)の狭小スペース312と狭小バー313とのエレメントエッジ316と一致させている。
一方、幅広バー311と狭小スペース312とのエレメントエッジを図4(b)より算出した場合、反射率が(Rs1+Rb0)/2の点321となる。この点は、幅広バー311と狭小スペース312のエレメントエッジ315とは異なっている。すなわち、狭小幅測定手段52は、図4(b)の走査反射率波形から狭小スペース312の幅を点321と点320との間隔として算出する。この間隔は、本来の狭小スペース312の幅よりも大きな値として算出される。
同様に、狭小バー313と幅広スペース314とのエレメントエッジを図4(b)より算出すると点322となる。狭小幅測定手段52は、図4(b)の走査反射率波形から狭小バー313の幅を点320と点322との間隔として算出する。この間隔は、本来の狭小バー313の幅よりも大きな値として算出される。
ピント特性演算手段54は、(1)式を用いて、レスポンス関数である走査反射率P[n]を演算し、バーエッジ(Rs+Rb)/2を算出し、図4(b)で測定された狭小スペースの幅(321から320までの間隔)、狭小バーの幅(320から322までの間隔)に略一致するようなピント特性「u」を演算する。

u
P[n]=f×Σ(p[n+i]×((u-|i|)/u)2) ・・・(1)
i= -u
ただし、u=0の場合は、P[n]=p[n]
f 固定値、
u ピント特性(分解能、レスポンス関数のパラメータ)
P[n] n画素目の算出される反射率
p[n] 基準バーコードのn画素目の輝度 (幅広バーを0、幅広スペースを100とする)
ここで、ピント特性uは、「ある画素の輝度がそこから何画素目まで影響するか」という意味である。なお、シグマで(n+i)を(n−u)から(n+u)まで変化させるようになっているが、nは画素の位置である。言い換えると、「ピント特性uは、画素nから何画素離れると影響がなくなるか」の意味となる。
例えば、狭小スペース312が2.5画素の場合、p[0]=100、p[1]=100、p[2]=50、p[3]=0、・・・・である。
なお、i=−u、0、+uのときは、次のようになる。
i=−u のとき、 ((u−u)/u)=0
i=0 のとき、 1
i=+u のとき、 ((u−u))/u)=0
nは、測定部分すべてが範囲である。
CTF・ノイズ測定手段56は、(2)式を用いて、バー、スペースのコントラスト特性CTFを演算する。
CTF=(Rs1−Rb1)/(Rs0−Rb0) ・・・・・(2)
CTFは、1に近づくほど間隔が狭いバーコードでもコントラスト特性がよく、0に近づくほどコントラスト特性が悪くなることを示す。
また、CTF・ノイズ測定手段56は、図4(b)のNs,Nbをノイズ特性として測定する。Nsはスペース(白)部分の輝度の変化量、Nbはバー(黒)部分の輝度の変化量とする。そして、CTF・ノイズ測定手段56は、算出・測定された、ピント特性「u」、CTF、ノイズ特性Ns,Nbをスキャナ部1の特性値として記憶部20の記憶領域24,26,28に記憶する。
第二撮像手段60は、スキャナ200のCCD210から読取対象のバーコードの影像出力を入力I/F10を介して取得し、画像データを画像メモリ22に記憶する。エレメント幅算出手段70は、バー・スペース判断手段72と、コントラスト演算手段74とを備え、コントラスト差の閾値S1及び画素数Nを格納する。
コントラスト演算手段74は、演算された波形の最大反射率と最低反射率との差分に(2)式で算出され、CTF領域24に登録されているCTFの値をバーとスペースとのコントラスト差の閾値S1とする。また、ノイズなどを考慮して、コントラスト演算手段74は、閾値S1から記憶部20のノイズ特性領域28に記憶されている輝度の変化量Ns,Nbを減算して、この値をバーとスペースとのコントラスト差の閾値S2を記憶する。閾値S1と閾値S2との関係は、以下のようになる。
S2=(S1−(Ns/(Rs0−Rb0))+(Nb/(Rs0−Rb0)))
バー・スペース判断手段72は、走査反射率波形の各頂点(山、谷部分)にて、算出したコントラスト差の閾値S2以上のコントラスト差が生じている部分を有効な山、谷と判断し、山部分をスペース(白)、谷部分をバー(黒)として判断する。そして、エレメント幅算出手段70は、判断されたスペース、バーの走査反射率波形より(Rs+Rb)/2となるエレメントエッジを求め各スペース、バーの幅を算出する。
エレメントパターン作成手段80は、1スペース、バーの幅より演算されたキャラクタの画素数と、ピント特性uとを用いて、エレメントパターンを作成する。
バーコードは、幾つかのバーとスペースとを組み合わせて1キャラクタを構成している。例えば、Code-128 の場合、1キャラクタは4種類の太さの3本のバーと3本のスペースとで構成され、11モジュールで表現される。したがって、バーコード全体幅やエレメント幅算出手段70が算出した各スペース、バーの幅より1キャラクタの画素数Ncを求めることができる。
キャラクタ選択手段85は、バーコードを1キャラクタ毎に復号する。
記憶部20のキャラクタ辞書30には、読取対象のバーコードに対応したキャラクタ毎のエレメントパターン構成(バー比率)と対応する復号値(コード)とが登録されている。読み取られたバーコードの1キャラクタの画素数Ncより、キャラクタ辞書30に登録されている各キャラクタに対するエレメントパターン構成の画素数を算出し、記憶部20に登録されているピント特性uを用いて、キャラクタに対するエレメントパターン構成のバー、スペースを(1)式を用いて走査反射率波形を作成し、エレメントエッジを算出してエレメントパターン構成を作り直す。このとき、キャラクタの前後のスペースやバーは実際に算出されたエレメント幅を用いる。
例えば、辞書に格納された任意のキャラクタは、バー、スペースの比率(バー比率)が「1:2:3:1:2:2」であり、算出されたキャラクタ当りの画素数Ncが22画素であり、復号キャラクタの前のスペース:4画素、後ろのバー:6画素であれば、[4:2:4:6:2:4:4:6]として、(1)式を用いて走査反射率波形を作成し、この走査反射率波形から「2:4:6:2:4:4」部分を算出する。
辞書にはバー比率「1:2:3:1:2:2」と、これに対応する「コード」とが登録されており、取得された画像の1キャラクタ当りの画素数より「2:4:6:2:4:4」と拡張し、バー(黒)を0とし、スペース(白)を100として、登録されたピント特性uを用いて、(1)式を適用(取得したuの値を用いる)し、波形を作成してバーエッジを算出しバーエッジ間の間隔にて、辞書を補正する。
さらに、補正された辞書と実画像上から測定されるバー幅とをマッチングを行う。これにより、スキャナ部1によって取得される画像特性用の各キャラクタに対するエレメントパターン構成を作成できる。
キャラクタ選択手段85は、エレメント幅算出手段70が算出した各エレメント幅をエレメントパターン作成手段80で算出した各キャラクタに対するエレメントパターン構成と比較して最も近いキャラクタを選択することによりキャラクタ毎に復号を行う。
次に、図5,図7のフローチャートを参照して、動作を説明する。
図5は、基準バーコードを用いてスキャナ特性を測定するためのフローチャートであり、図7は、測定対象のバーコードを復号する復号手順を示すフローチャートである。
図5のルーチンは、スキャナ200に測定シートを設置して、基準バーコードの映像出力を受信するときに起動させるものである。
第一撮像手段42は、測定シートの読み込みを入力I/Fを介してスキャナ200に行わせ、読み取った画像を画像メモリ22に記憶する(S1)。そして、狭小幅測定手段52は、画像メモリ22に記憶された基準バーコード300のバー・スペース幅を測定する(S2)。そして、ピント特性演算手段54は、(1)式を満たすピント特性uを演算する。例えば、基準バーコードの理想的な状態((1)式u=0)に対して、所定のuの値において(1)式を適用した画像を、uの値を変更させながら、スキャナ200で読み取った画像と最も近くなる状態となった際のuの値を採用する。例えば、理想的な画像データを論理的に作成して(1)式を適用し、スキャナ200で取った画像に近くなるようなuの値を採用する。(S3)。CTF・ノイズ測定手段56は、コントラスト(CTF)、及びノイズを測定する(S4)。そして、分解能演算手段50は、ピント特性u、CTF,及びノイズ等のスキャナ特性を領域24,26,28に記憶し、終了する。
図6は、JIS X 0520に記載されている「走査反射率波形の詳細」であり、スキャナ200で取得した映像出力の例を示す。図6の縦軸は反射率[%]であり、横軸は位置を示す。全域しきい値GTと比較して、反射率が高い箇所をスペースとして判断し、低い箇所をバーとして判断されている。また、左端の位置に反射率約80%のクワイエットゾーンのエッジ1から反射率が低下し最初のバーが存在し、複数のスペースとバーとが存在しており、右端にクワイエットゾーンが存在している。ここで、最大反射率がRmaxであり、最小反射率がRminであり、エッジ4の最小エッジコントラストがECminであり、最大エレメント反射率の非均一性がERNmaxである。なお、エレメント反射率非均一性とは、最高山部の反射率と最低山部の反射率との差である。
図7のルーチンは、スキャナ200に読取対象物を設置して、測定対象のバーコードの映像出力を受信するときに起動させるものである。
第二撮像手段60は、測定対象物の読み取りを入力I/Fを介してスキャナ200に行わせ、読み取った画像を画像メモリ22に記憶する(S10)。
エレメント幅算出手段70は、バー・スペースを判断し(S11)、画像メモリ22に記憶された画像に基づいてバー・スペースのエレメント幅を算出する(S12)。そして、エレメントパターン作成手段80は、エレメント幅、ピント特性u、及び(1)式を用いて、シンボルキャラクタをスキャナ特性に変換する(S13)。そして、キャラクタ選択手段85は、スキャナ特性に変換された全シンボルキャラクタとS12で算出したエレメント幅とをマッチングして、キャラクタを選択する(S14)。
ここで、キャラクタの選択とは、S12で算出された各エレメント幅とS13で算出したエレメントパターン構成のエレメント幅との差分で判断したり、バーとスペースのペアを用いてS12で測定された各エレメント幅とS13で算出したエレメント幅との差分で判断したりすることにより可能である。ただし、一定以上の差分が発生する場合は復号失敗とする。
以上のS13,S14をバーコード内のキャラクタすべて完了するまで繰り返し(S15)、すべてのキャラクタを復号できた場合は、バーコード規格でのチェックデジットなどのチェックを行い問題が無ければ復号成功とする。
そして、全キャラクタの選択が終了したか否かを判定する(S15)。全キャラクタの選択が終了した場合には(S15でYes)、復号成功であり、このルーチンが終了する。これにより、表示手段90が表示処理を実行する。
一方、全キャラクタの選択が終了していない場合には(S15でNo)、処理がS13に戻り、他のシンボルキャラクタの変換処理が実行される。
以上説明したように本実施形態によれば、従来の方式では解像度不足などの画質上の問題で復号できなかった詳細かつ細密なバーコードでもピント特性を測定し、スキャナの特性に合わせて復号処理することができ詳細なバーコードを復号可能となる。
(第2実施形態)
第1実施形態では、基準バーコード300を用いてスキャナ特性を事前に評価してから、読取対象のバーコードを読み取っていたが、事前にスキャナ特性を評価せずに、高密度なバーコードを読み取ることができる。
図8は、第2実施形態の記憶部20bの構成図である。記憶部20bは、第二撮像手段(撮像手段)60と、ノイズ量測定手段410と、バー・スペース判断手段420と、幅算出手段430と、キャラクタ復元手段450と、表示手段90と、画像メモリ22と、キャラクタ辞書30とを備え、キャラクタ復元手段450は、全キャラクタ変換手段460と、キャラクタ選択手段470と、ピント特性変更手段480とを備える。なお、画像メモリ22と、キャラクタ辞書30と、第二撮像手段60と、表示手段90と、バーコード認識装置を構成する他の構成要素10,12,14は、図3と同様である。
第二撮像手段60は、スキャナ200(図3)のCCD210から読取対象のバーコードの画像信号を入力I/F10(図3)を介して取得し、画像メモリ22に記憶する。
ノイズ量測定手段410は、画像メモリ22に記憶された画像データより走査反射率波形を作成し、クワイエットゾーン(図6)にてノイズ量(Ns)を測定する。
バー・スペース判断手段420は、ノイズ量Nsの2倍程度以上の値を有するエレメントをエレメント内の最大ノイズとして、バー・スペース判断手段420は、走査反射率波形の各頂点(山、谷部分)にて、算出したコントラスト差のNsの2倍以上のコントラスト差が生じている部分を有効な山/谷と判断し、山部分をスペース(白)、谷部分をバー(黒)として判断する。
図1にノイズ量(Ns)とコントラスト差のNsの2倍以上のコントラスト差が生じている部分を有効な山/谷部分の例を示す。
幅算出手段430は、上述のようにして判断された山部分のスペース(白)、谷部分のバー(黒)について、スペース、バーの走査反射率波形より(Rs+Rb)/2となるエレメントエッジを求め各スペース、バーの幅を算出する。
全キャラクタ変換手段460は、各スペース、バーの幅より演算されたキャラクタの画素数と、ピント特性uと、(1)式とを用いて、全シンボルキャラクタをスキャナ特性に従い変換する。なお、ピント特性uは、初期値を0とし、逐次、値が増加させられる。
キャラクタ選択手段470は、幅算出手段430により算出された各スペース、バーの幅と、全キャラクタ変換手段460により変換されたキャラクタとを比較することにより、バーコードを1キャラクタ毎に復号する。
ピント特性変更手段480は、キャラクタ選択手段470により復号されたキャラクタのエレメント幅と、幅算出手段430により算出されたエレメント幅との差分が一定以上ある場合はマッチング失敗と判断して、ピント特性uの値を更新する。一方、ピント特性変更手段480は、差分が一定値未満である場合はマッチング成功と判断して、表示手段90に復号されたキャラクタを表示させる。
次に、図9のフローチャートを参照して、バーコード復号手順動作を説明する。
第二撮像手段60は、スキャナ200(図1)に測定対象物を設置し、CCD210が撮像したバーコード画像を画像メモリ22に格納する(S20)。
そして、ノイズ量測定手段410は、クワイエットゾーン(図6)にてノイズ量Nsを測定する(S21)。
バー・スペース判断手段420は、ノイズ量Nsの2倍程度以上の値をコントラスト差判断の閾値とし、算出したコントラスト差の閾値以上のコントラスト差が生じている部分を有効な山、谷と判断し、山部分をスペース(白)、谷部分をバー(黒)として判断する(S22)。
また、読取対象のバーコードが限定(指定)されていて、バー本数が明確な場合は、バー・スペース判断手段420は、走査反射率波形の山、谷の差分が少ないものから削除し、目的のバー本数になるようにすることにより、山部分をスペース(白)、谷部分をバー(黒)として判断する(S22)。そして、幅算出手段430は、スペースとバーとの幅であるエレメント幅を算出する(S23)。
次に、全キャラクタ変換手段460は、測定されていないピント特性uを0に設定し(S24)、算出されたエレメント幅を用いて、全シンボルキャラクタをスキャナ特性に従い変換する(S25)。キャラクタ選択手段470は、全シンボルキャラクタとエレメント幅とをマッチングして、キャラクタ毎に復号を実行する(S26)。
但し、キャラクタ選択手段470は、幅算出手段430が算出したエレメント幅と全キャラクタ変換手段460が算出した各エレメント幅との差分が一定以上あるか否かを判断して、マッチング失敗か否かを判断する(S27)。
ピント特性が不適合であり、マッチングが失敗した場合は(S27で失敗)、ピント特性変更手段480は、ピント特性値uを更新(大きく)して(S28)、S25の処理に戻る。一方、マッチング成功したピント特性値uが存在した時点でピント特性値uを確定とし(S27で成功)、全キャラクタが終了したか否かを判断する(S29)。全キャラクタ終了で復号完了となる(S29でYes)。一方、全キャラクタが終了しない場合は(S29でNo)、S25の処理に戻る。
なお、S29において、一定以上、ピント特性を更新しても適合するピント特性が存在しない場合は、復号失敗とする。
以上のように、ピント特性uをボケていない値(u=0)からボケている値に変化させながら、バーコード復号処理を行うことにより、事前にスキャナ特性を測定しない場合も、従来の方式では解像度不足などの画質上の問題で復号できなかった詳細なバーコードでもバーコードを復号可能となる。
(変形例)
本発明は前記した実施形態に限定されるものではなく、例えば以下のような変形が可能である。
前記各実施形態は、一次元バーコードで説明したが、二次元バーコードでも適用可能である。
汎用画像走査反射率波形例である。 画像走査反射率波形例である。 本発明の第1実施形態のバーコード認識装置の構成図である。 測定シートに記載されている基準バーコード、及びこれに対応するCCDの撮像出力の一例である。 第1実施形態のフローチャートである。 走査反射率波形を説明するための詳細図である。 第2実施形態の他のフローチャートである。 本発明の第2実施形態の記憶部の構成図である。 バーコード復号手順動作を説明するためのフローチャートである。
符号の説明
10 入力I/F
12 制御部
14 表示部
20,20a,20b 記憶部
22 画像メモリ
24 CTF領域
26 ピント特性u領域
28 ノイズ特性領域
30 キャラクタ辞書(バー比率、コード)
42 第一撮像手段
50 分解能演算手段
52 狭小幅測定手段
54 ピント特性演算手段
56 CTF・ノイズ測定手段
60 第二撮像手段(バーコード波形取得手段)
70 エレメント幅算出手段
72 バー・スペース判断手段
74 コントラスト演算手段
80 エレメントパターン作成手段
85 キャラクタ選択手段
90 表示手段
100 バーコード認識装置
200 スキャナ
210 CCD(撮像素子)
220 照明装置
300 基準バーコード(測定シート)
410 ノイズ量測定手段
420 バー・スペース判断手段
430 幅算出手段
450 キャラクタ復元手段
460 全キャラクタ変換手段
470 キャラクタ選択手段
480 ピント特性変更手段

Claims (10)

  1. 撮像素子を用いて撮像されたバーコードを認識するバーコード認識装置であって、
    狭小バーと狭小スペースとを備えた基準バーコードの波形にレスポンス関数を適用した模擬波形を演算し、この模擬波形と前記基準バーコードを撮像した基準撮像波形とが一致するように前記レスポンス関数のパラメータを変化させて、前記撮像素子の分解能を演算する分解能演算手段と、
    前記バーコードを撮像した撮像波形を取得するバーコード波形取得手段と、
    記バーコード波形取得手段で取得した撮像波形のピーク値同士の中点座標を用いて、前記バーコードのバー及びスペースの幅を算出する幅算出手段と、
    前記幅算出手段で算出された幅の画素数と、前記分解能演算手段で演算された前記分解能の値と、前記分解能演算手段で一致するように変化させたパラメータを適用した前記レスポンス関数とを用いて、前記バーコードに使用される複数のキャラクタのエレメントパターンを作成するエレメントパターン作成手段と、
    前記バーコード波形取得手段で取得した撮像波形と、前記エレメントパターン作成手段で作成したエレメントパターンとを比較して、最適なキャラクタを選択するキャラクタ選択手段と
    を備えることを特徴とするバーコード認識装置。
  2. 前記バーコード波形取得手段で取得された撮像波形は、前記分解能演算手段で一致するように変化させたパラメータを用いて、補正されることを特徴とする請求項1に記載のバーコード認識装置。
  3. 前記基準撮像波形のピーク値同士の中点座標を用いて前記狭小バーと前記狭小スペースとの幅を測定する狭小幅測定手段を備え、
    前記分解能演算手段は、前記模擬波形の狭小幅と前記撮像波形の狭小幅とが一致するように前記パラメータを変化させる
    ことを特徴とする請求項1に記載のバーコード認識装置。
  4. 撮像素子を用いて撮像されたバーコードを認識するバーコード認識装置であって、
    前記バーコードを撮像した撮像波形を取得するバーコード波形取得手段と、
    前記バーコード波形取得手段で取得した撮像波形のピーク値同士の中点座標を用いて、前記バーコードのバー及びスペースの幅を算出する幅算出手段と、
    前記幅算出手段が算出した幅より演算されたキャラクタの画素数とレスポンス関数とを用いて、複数のキャラクタのエレメントパターンを作成するエレメントパターン作成手段と、
    前記エレメントパターン作成手段で作成された複数のエレメントパターンと、前記撮像波形とを比較することによりキャラクタを選択するキャラクタ選択手段と
    を備えることを特徴とするバーコード認識装置。
  5. 前記レスポンス関数のパラメータは、前記キャラクタ選択手段で復号された復元キャラクタのエレメント幅と、前記幅算出手段により算出された幅とが一致するように更新されたものであることを特徴とする請求項4に記載のバーコード認識装置。
  6. 前記バーコードは、読取バー本数が特定されており、
    前記撮像波形は、バー及びスペースの数を前記読取バー本数に対応させるように、輝度変化の少ない部分削除されたものであることを特徴とする請求項4又は請求項5に記載のバーコード認識装置。
  7. 前記バーコードは、読取バー本数が不特定であり、
    前記撮像波形は、ノイズ量Nsの2倍程度以上の値を有する最大欠陥エレメントとして、この値以上のコントラスト差が生じている部分を有効な山/谷と判断したものであることを特徴とする請求項4又は請求項5に記載のバーコード認識装置。
  8. 前記バーコードは、一次元バーコード又は二次元バーコードであることを特徴とする請求項1乃至請求項7の何れか1項に記載のバーコード認識装置。
  9. 撮像素子により撮像されたバーコードをコンピュータに認識させるバーコード認識プログラムであって、
    狭小バーと狭小スペースとを備えた基準バーコードの波形にレスポンス関数を適用した模擬波形を演算し、この模擬波形と前記基準バーコードを撮像した基準撮像波形とが一致するように前記レスポンス関数のパラメータを変化させて、前記撮像素子の分解能を演算する分解能演算ステップと、
    前記バーコードを撮像した前記撮像素子の撮像波形を取得するバーコード波形取得ステップと、
    記バーコード波形取得ステップで取得した撮像波形のピーク値同士の中点座標を用いて、前記バーコードのバー及びスペースの幅を算出する幅算出ステップと、
    前記幅算出ステップで算出された幅の画素数と、前記分解能演算ステップで演算された前記分解能の値と、前記分解能演算手段で一致するように変化させたパラメータを適用した前記レスポンス関数とを用いて、前記バーコードに使用される複数のキャラクタのエレメントパターンを作成するエレメントパターン作成ステップと、
    前記バーコード波形取得ステップで取得した撮像波形と、前記エレメントパターン作成ステップで作成したエレメントパターンとを比較して、最適なキャラクタを選択するキャラクタ選択ステップと
    を前記コンピュータに実行させることを特徴とするバーコード認識プログラム。
  10. 撮像素子により撮像されたバーコードをコンピュータに認識させるバーコード認識プログラムであって、
    前記バーコードを撮像した前記撮像素子の撮像波形を取得するバーコード波形取得ステップと、
    前記バーコード波形取得ステップで取得した撮像波形のピーク値同士の中点座標を用いて、前記バーコードのバー及びスペースの幅を算出する幅算出ステップと、
    前記幅算出ステップが算出した幅より演算されたキャラクタの画素数とレスポンス関数とを用いて、複数のキャラクタのエレメントパターンを作成するエレメントパターン作成ステップと、
    前記エレメントパターン作成ステップで作成された複数のエレメントパターンと、前記撮像波形とを比較することによりキャラクタを選択するキャラクタ選択ステップと
    を前記コンピュータに実行させることを特徴とするバーコード認識プログラム。
JP2008157593A 2008-06-17 2008-06-17 バーコード認識装置、及びバーコード認識プログラム Active JP5255335B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008157593A JP5255335B2 (ja) 2008-06-17 2008-06-17 バーコード認識装置、及びバーコード認識プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008157593A JP5255335B2 (ja) 2008-06-17 2008-06-17 バーコード認識装置、及びバーコード認識プログラム

Publications (3)

Publication Number Publication Date
JP2009301463A JP2009301463A (ja) 2009-12-24
JP2009301463A5 JP2009301463A5 (ja) 2011-06-16
JP5255335B2 true JP5255335B2 (ja) 2013-08-07

Family

ID=41548265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008157593A Active JP5255335B2 (ja) 2008-06-17 2008-06-17 バーコード認識装置、及びバーコード認識プログラム

Country Status (1)

Country Link
JP (1) JP5255335B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5576812B2 (ja) * 2011-02-16 2014-08-20 オリンパス株式会社 画像処理装置、画像処理方法、画像処理プログラム、及び、撮像装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3275598B2 (ja) * 1994-12-27 2002-04-15 オムロン株式会社 パターン読取り装置および取引処理装置
JP2000172776A (ja) * 1998-12-10 2000-06-23 Olympus Optical Co Ltd 2値化回路

Also Published As

Publication number Publication date
JP2009301463A (ja) 2009-12-24

Similar Documents

Publication Publication Date Title
JP4911340B2 (ja) 二次元コード検出システムおよび二次元コード検出プログラム
US20070272755A1 (en) Two-directional bar code symbol and its encoding & decoding method
US10726539B2 (en) Image processing apparatus, image processing method and storage medium
JP5262869B2 (ja) 画像処理システム、画像処理サーバ、mfp及び画像処理方法
KR20080019637A (ko) 패턴 검출을 위한 이미지 처리
US8503734B2 (en) Detecting image detail level
US8538191B2 (en) Image correction apparatus and method for eliminating lighting component
US8494282B2 (en) Blur estimation
Munoz-Mejias et al. A low-complexity pre-processing system for restoring low-quality QR code images
JP5703520B2 (ja) バーコード画像のボケ修正を行う方法、端末、およびコンピュータ可読記録媒体
US10460142B2 (en) Barcode identification method for improving decoding reliability by correcting image distortion
JP5255335B2 (ja) バーコード認識装置、及びバーコード認識プログラム
US8452115B2 (en) Method and apparatus for designing restoration filter, and method and apparatus for restoring image using the restoration filter
JP4182937B2 (ja) 撮影装置、撮影装置の画像処理方法及びプログラム
US9116854B2 (en) Method of evaluating image correlation with speckle patter
JP4335229B2 (ja) Qrコード認識装置、qrコード認識装置の制御方法、qrコード認識装置制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
JP5121685B2 (ja) バーコード読取装置、バーコード読取プログラム、バーコード読取方法
JPH05161002A (ja) 原稿読み取り装置
JP5002670B2 (ja) 画像処理装置及び画像読取装置
US7451931B2 (en) Detecting barcodes on two-dimensional images using frequency domain data
JP2009175845A (ja) 画像処理装置、ペン・デバイスおよびプログラム
JP5127687B2 (ja) バーコード読取装置、バーコード読取プログラム、バーコード読取方法
TWI595426B (zh) 條碼解碼方法
JP4355305B2 (ja) 画像処理装置、コンピュータプログラム、及び記録媒体
JP4422128B2 (ja) 2値画像の階調補正処理方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110425

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130308

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: 20130402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130419

R150 Certificate of patent or registration of utility model

Ref document number: 5255335

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: 20160426

Year of fee payment: 3