JP5125961B2 - 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム - Google Patents

二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム Download PDF

Info

Publication number
JP5125961B2
JP5125961B2 JP2008255313A JP2008255313A JP5125961B2 JP 5125961 B2 JP5125961 B2 JP 5125961B2 JP 2008255313 A JP2008255313 A JP 2008255313A JP 2008255313 A JP2008255313 A JP 2008255313A JP 5125961 B2 JP5125961 B2 JP 5125961B2
Authority
JP
Japan
Prior art keywords
binarization
threshold value
threshold
value
distribution
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
JP2008255313A
Other languages
English (en)
Other versions
JP2010086324A (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
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 JP2008255313A priority Critical patent/JP5125961B2/ja
Publication of JP2010086324A publication Critical patent/JP2010086324A/ja
Application granted granted Critical
Publication of JP5125961B2 publication Critical patent/JP5125961B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、バーコード画像を二値化する二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラムに関し、特に汎用のカメラで撮影した画像から二値化パターンを作成する二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラムに関する。
従来から利用されているバーコードは、複数本数の黒バーと白バーを並べて構成されている。この複数本数のバーのうち、特定本数の黒バーと白バーの組み合わせが特定のデータを表している。バーコードが文字情報を示している場合、この特定本数が一つの文字(キャラクタ)を示す領域、すなわちキャラクタ領域であり、バーコード全体はキャラクタ領域が複数並んだ形を取る。
デジタルカメラやスキャナで取得したコード画像からバーコードを認識する場合、バーコードの長辺方向に沿った1ライン分のデータを切出して認識処理を行う。この認識において、デジタルカメラのような汎用の光学機器を用いると、光学歪みによってバーコード画像に歪みが発生する場合がある。また光学機器の読み取り角度がバーコードの平面に対して傾いていれば、読み取ったバーコード画像に歪みが生ずる。
これらの歪みによってバーコード画像上でバーの長さ(幅)が場所によって異なると、単一の幅を基準としてバーコード全体を認識する処理では正確な認識処理ができない。そこで従来から、バーコード画像をキャラクタ単位の小領域に分割し、キャラクタ毎にバー幅の基準を設定して認識処理を行うことで、撮影画像上の位置によるバー幅の歪みの影響を小さく抑え、認識精度を向上していた。
特開2004−185058号公報
ところで、デジタルカメラのような汎用の光学機器を用いてバーコードを読み取る場合には、上述したバー幅の変化の他に、撮影画像上の位置による解像度の劣化や輝度の低下が発生する場合がある。
この画像上の位置に依存する解像度や輝度の劣化は、一般に撮影画像中心部から周辺部に行くに従って影響が大きくなる。従って、特にコード全体の長さが長く撮影画像の周辺部にまでかかってしまうコード画像では,撮影画像中心部と周辺部の画像の画像特性が大きく異なったものになる。同様の現象は、光学機器の読み取り角度がバーコードの平面に対して傾いているような場合にも発生する。さらに、コードの一部に影がかかって暗くなるような現象が発生した場合にも同様に、解像度や輝度の特性劣化が発生する。
このような解像度や輝度の変化が生じると、二値化閾値、すなわち、画像の濃度分布のどの範囲を黒バーとし、どの範囲を白バーとするかを切り分ける閾値の適切な値も変化する。しかしながら、従来の技術では、コード画像を二値化する処理に使用する閾値をコード全体の画像特性から求めるか、もしくはキャラクタ毎の画像特性に応じて決定していた。
前者の場合、特性の比較的良い撮影画像中心部の特性に合わせて決定すると周辺部の劣化した特性に適合せず、二値化の精度が劣化し、結果として認識率が低下するという問題が発生していた。後者の場合でも、閾値の決定方法がコード画像上の位置によらず同一であるため、場所によっては画像特性と閾値の決定方法の整合性が悪く、認識率が低下するという問題が発生していた。
すなわち、従来の技術では、バーコードの画像上の位置に依存したバー幅の劣化については考慮されていたが、バーコードの画像上の位置に依存した濃度分布の変化が考慮されていないために二値化を精度よく行なうことができず、ひいてはコード認識率が低下する場合があるという問題点があった。
特に近年、携帯電話端末やPDA(Personal Digital Assistant)などによるバーコード認識の利用が増加しているが、携帯電話端末やPDAではバーコード認識用に特化したカメラユニットを設けるのではなく、汎用のカメラでバーコードを撮影して認識を行なうことが求められているので、コード画像位置依存性の濃度分布特性の劣化が顕著であり、この問題に対応することが重要な課題であった。
本発明は、上述した従来技術における問題点を解消し、課題を解決するためになされたものであり、バーコードの画像上の位置に依存した濃度分布特性の劣化を考慮し、二値化精度を向上した二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本装置、方法およびプログラムは、バーコード画像1ライン分の画像データを分割して作成した分割領域について、分割領域内に含まれる画像の濃度分布の特徴を検出し、分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる基本閾値と、予め規定された第2の比率となる補助閾値とを求め、分割領域の濃度分布が予め規定された分布特性に基づいて基本閾値と補助閾値とのいずれかを当該分割領域の二値化に使用する閾値として選択する。
本装置、方法およびプログラムによれば、バーコードの画像上の位置に依存した濃度分布特性の劣化を考慮し、二値化精度を向上した二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラムを得ることができるという効果を奏する。
以下に、本発明にかかる二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラムの実施例を図面に基づいて詳細に説明する。
図1は、本実施例にかかる二値化処理装置を有する情報処理装置の概要構成を示す概要構成図である。図1に示した情報処理装置は、カメラユニット30とコード画像処理装置20を有する。そして、コード画像処理装置20は、さらにライン画像抽出部21、キャラクタ領域分割部22、処理対象キャラクタ選択部23、二値化処理装置10、コード認識処理部24およびメモリ25を有する。
情報処理装置は、例えば携帯電話端末やPDAであり、カメラユニット30は、バーコード以外の撮影、たとえば写真撮影や動画撮影などと共用される可能性がある汎用の光学機器である。
コード画像処理装置20は、カメラユニット30が撮影したバーコードを認識する処理を行なう。図2に、コード画像処理装置20が処理するバーコードの具体例を示す。バーコードは、異なる太さや間隔をもつ濃淡2色の並行線の組合せで情報を表現する画像である。このバーコードには、図2に示したようにJANコード、NW7コード、code39、code128などの種類があり、コードの種類毎に白バーと黒バーの比率、コードとキャラクタの対応関係などが定められている。
ライン画像抽出部21は、バーコードを撮影した画像であるバーコード画像データを走査して1ライン分の画像データを抽出する処理を行なう。
キャラクタ領域分割部22は、1ラインの抽出画像からキャラクタを構成するパターン毎に領域を分割する処理を行なう。この分割処理によって、一つの文字(キャラクタ)を示す領域、すなわちキャラクタ領域を分割領域として得ることができる。
処理対象領域選択部23は、分割して得られた複数のキャラクタ領域(分割領域)から認識処理の対象とする領域を選択する処理を行なう。
二値化処理装置10は、処理対象領域選択部23が選択した領域のライン画像データを二値化して二値化パターンを作成する。
そして、コード認識処理部24は、二値化パターンに対してコード認識を行ない、二値化パターンを文字情報に変換する。メモリ25は、コード認識処理部24が使用する各種データ、具体的には、白黒−キャラクタパターン対応表25a、キャラクタ−文字情報対応表25b、認識結果情報25cを保持している。
つづいて、二値化処理装置10の構成と動作について説明する。汎用の光学機器を用いてバーコードを読み取る場合には、撮影画像上の位置による解像度の劣化や輝度の低下という固有の問題が発生する。これらは一般に撮影画像中心部から周辺部に行くに従って影響が大きくなる。
図3は、カメラの特性による画像の品質劣化について説明する説明図である。バーコード画像B10を撮影した場合、特性の良好な画像中央部での濃度の階調値B11は、白側と黒側の双方で飽和するだけの振幅を得られる。一方、画像周辺部での濃度の階調値B12は特性が劣化しており、振幅が小さくなる。
かかる特性の劣化は、特にコード全体の長さが長く撮影画像の周辺部にまでかかってしまうバーコードを撮影した際に顕著に現れる。また、同様の特性の劣化は、光学機器の読み取り角度がバーコードの平面に対して傾いているような場合にも発生する。
さらに、図4に示したように、バーコードの一部に影がかかって暗くなるような現象が発生した場合にも、同様の特性劣化が発生する。図4は、右側が影にかかったバーコード画像B20を撮影した場合の具体例を示している。影になっていない位置の濃度の階調値B21は、白側と黒側の双方で飽和するだけの振幅を得られるが、影がかかった位置の濃度の階調値B22は全体に暗くなり、階調値は全般に低い値となる。
このように、バーコード画像上の位置に依存して濃度の階調値が変化することを考慮し、二値化処理装置10は、キャラクタ領域ごと、すなわち分割領域ごとに濃度の階調分布の特性を判別し、基本閾値と補助閾値のいずれを二値化に使用するか選択する。
具体的な構成としては、二値化処理装置10は、図1に示したようにその内部に画像濃淡分布検出部11、分布特性判別部12、基本閾値決定部13、補助閾値決定部14、二値化閾値選択部15、二値化部16を有する。
画像濃淡分布検出部11は、処理対象領域選択部23が選択した分割領域について、その中に含まれる画像の濃淡分布の特徴を検出する。そして、分布特性判別部12は、検出された濃淡分布の特性を判別する処理を行なう。
基本閾値決定部13は、濃淡分布の検出結果に基づいて二値化の基本閾値を決定する処理を行なう。また、補助閾値決定部14は、基本閾値とはとは異なる基準及び方法で補助閾値を決定する処理を行なう。
二値化閾値選択部15は、分布特性判別部12による判別結果に基づいて、基本閾値と補助閾値とのいずれかを二値化に使用する閾値として選択的に採用する。そして、二値化部16は、二値化閾値選択部15が選択した閾値を用い、分割領域のうち、階調値が閾値よりも低い部分を黒、高い部分を白として二値化パターンを作成する。
図5は、基本閾値と補助閾値の適用例について説明する説明図である。基本閾値では、例えば、キャラクタ中の画像データの階調値の最大値(=白側)/最小値(=黒側)の中点をしきい値として使用する。これは,撮影画像の中央付近のようにバーコードを十分な解像度・明るさで撮影できている場合の階調分布B31に対しては適切な閾値となる。
一方、バーコードを十分な明るさで撮影できない撮影画像の周辺部や影の部分では、画像データが暗い側に寄って撮影される。特にデジタルカメラなどの場合、元々入力データの濃淡に対する出力画像の階調値が非線形となるように特性を持たせ、例えば出力階調値の範囲が0〜255の場合、階調値の中央付近(=127)より最大(=255)/最小(=0)付近の方が同じ濃度変化に対する出力画像の階調値は小さくなるように設計していることが多く、基本閾値では適切に二値化を行なうことが難しい。加えて、濃度分布が暗い側に飽和してしまうような場合には、特に基本閾値で正確に二値化を行なうことは困難であった。図5では、階調値が黒側に寄り、かつ黒側で飽和した階調分布B32に、基本閾値、すなわち階調の最大値と最小値とを1対1に分割する閾値を用いており、閾値が大きすぎて黒パターンが太くなる傾向があらわれている。
この基本閾値に対し、例えば階調の最大値と最小値とを3対7に分割する閾値を補助閾値とし、補助閾値を用いて二値化を行なえば、階調分布B32と同様に階調値が黒側に寄り、かつ黒側で飽和した階調分布B33を適切に二値化することができる。
処理対象の分割領域に対して、基本閾値を用いるか補助閾値を用いるかは、分布特性判別部12が分布特性に基づいて決定する。具体的には、図6の階調分布B41に示したように、画像データの階調値の分布が、階調値の最大(=255)側と最小(=0)側のいずれか一方に飽和している場合には、補助閾値を用いる。
また、図7の階調分布B42に示したように、階調値の最大値が中央値(256階調であれば127)よりも小さい場合や、最小値が中央値よりも大きい場合にも補助閾値を用いる。
そして、図8の階調分布B43に示したように、階調値の最大値と最小値との差が予め定めた特定レベルaよりも小さい場合にも補助閾値を用いる。
補助閾値の値については、例えば固定的に階調の最大値と最小値とを3対7に分割する閾値を用いても良いが、バーコードの種別毎に定められた特徴を利用して設定しても良い。一般に用いられているバーコードの場合、キャラクタ内の黒:白バーのそれぞれの幅の合計の長さの割合は、特定の数パターンに限定されている。例えば、JANコードの場合は黒2:白5、黒3:白4、黒4:白3、黒5:白2の4パターンのうちのいずれかである。同様に、code128の場合は黒4:白7、黒6:白5、黒8:白3の3パターンのうちのいずれかになる。
補助閾値決定部14は、キャラクタ領域内の階調値の分布のうち、最も小さい値から順に画素値の小さい順に画素の個数を計数してゆき、全画素数に対して計数した画素の個数がバーコード種別に規定された比率になった時、その画素の階調値を補助閾値の候補とする。
したがって、例えば、バーコードがcode128であると想定した場合、補助閾値決定部14は、図9に示したように、階調値の分布を黒4:白7の比率に分ける補助閾値候補THa、黒6:白5の比率に分ける補助閾値候補THb、黒8:白3の比率に分けるTHcの3つの補助閾値候補を求めることとなる。
そして、補助閾値決定部14は、この3つの補助閾値候補のうち、最も基本閾値に近い値、図9では補助閾値候補THaを補助閾値とする。または基本閾値を用いた時の黒:白バーの幅の比率に最も近くなるものを選択するようにしてもよい。
図10は、補助閾値よりも基本閾値が有効である場合について説明する説明図である。階調分布B61のように、キャラクタ領域中の画像データの階調値が濃淡均等で最大値と最小値の差が十分大きい場合、補助閾値を用いると、適切な値を決定することができず、正確な白黒パターンを求められない可能性がある。すなわち、分布中において階調値の高い画素群と、階調値の低い画素群とが十分に離れている場合、適切な閾値は二つの画素群の間に存在する階調値であり、その階調値を有する画素は存在しない。このような分布に対して上述したように画素を計数し、所定個数目の画素の値を閾値として採用すると、その閾値は上下何れかの画素群に近すぎることとなり、基本閾値よりも不適切となる。
特にキャラクタ領域中の画像データのデータ数が少なく、離散的な分布になっている場合にこのような現象が顕著である。このため、階調値が濃淡均等で最大値と最小値の差が十分大きい場合には、基本閾値を選択して二値化に用いることで、正確な二値化パターンを求めることが可能である。
これに対し、階調分布B62に示したように、階調値の最大と最小の差が小さく、中間階調の画素がある場合、基本閾値よりも補助閾値の方が適切な値となる。
次に図11を参照し、コード画像処理装置20の処理動作について説明する。図11は、コード画像処理装置20の処理動作を説明するフローチャートである。カメラユニット30からバーコード画像が入力されるとまず、ライン画像抽出部21がバーコード画像を走査し、1ライン分の画像データを取り出す(S101)。
つぎに、キャラクタ領域分割部22が一ライン分の画像データをキャラクタ領域ごとに分割し、分割領域を出力する(S102)。処理対象領域選択部23は、分割して得られた複数の分割領域を先頭から順次処理対象として選択する(S103)。
処理対象として選択したキャラクタ領域に対し、画像濃淡分布検出部11が画像データの階調値の頻度ヒストグラムを作成する(S104)。そして、分布特性判別部12が、階調値の頻度ヒストグラムの情報を元に、階調値の分布特性を確認する(S105)。
階調値の分布特性が基本しきい値の想定と一致する場合(S106,Yes)には、基本閾値決定部13が階調値の頻度ヒストグラムから基本閾値を算出し(S107)、二値化閾値選択部15は、基本閾値を選択する(S108)。
一方、階調値の分布特性が基本しきい値の想定と一致しない場合(S106,No)には、補助閾値決定部14が階調値の頻度ヒストグラムから補助閾値を算出し(S109)、二値化閾値選択部15は、補助閾値を選択する(S110)。
二値化部16は、二値化閾値選択部15が選択した閾値を基準にして,各キャラクタ領域中の画像データの白黒パターンを抽出し、二値化パターンとして出力する(S111)。
コード認識処理部24は、メモリ25内の白黒−キャラクタパターン対応表25aを参照して二値化パターンに対応するキャラクタパターンの有無を確認し、二値化パターンとキャラクタパターンの対応表の中に対応するキャラクタパターンが有る場合には、キャラクタ−文字情報対応表25bを参照してキャラクタパターンを文字情報に変換する(S112)。
二値化パターンに対応するキャラクタパターンが存在し、文字情報に変換できた場合(S113,Yes)には、処理成功として文字情報を出力する(S114)。また、二値化パターンに対応するキャラクタパターンが存在せず、文字情報に変換できない場合(S113,No)には、処理失敗としてエラーを出力する(S115)。
その後、処理対象領域選択部23は、バーコードの全キャラクタ領域について処理が終了したかを確認し(S116)、未処理のキャラクタ領域が残っている場合(S116,No)には、処理対象領域の選択に戻る(S103)。そして、バーコード画像から分割した全ての領域に対して処理が終了した場合に(S116,Yes)、処理を終了する。
つぎに、キャラクタ領域分割部22による分割手法について説明する。一般に用いられているバーコードの場合,キャラクタ領域内の黒:白バーの本数は一意に決まっている。例えば、JANコードでは黒バー2本+白バー2本で構成されている。同様に,NW7コードでは黒バー4本+白バー3本、code30では黒バー5本+白バー4本、code128では黒バー3本+白バー3本で構成されている。
従来の技術では、白黒バーの境界における画像データの階調値の変化率の変曲点を元に、その数を計測してキャラクタの境界位置を求めていた。これに対してキャラクタ領域分割部22は、画像データの階調値の黒ピーク位置を求めてその数を計測し、バーコードに規定された黒バーの本数に基づいてキャラクタ領域を決定する。
つぎに、バーコード画像から取得した複数のライン画像に対する処理について説明する。従来、バーコードを撮影したコード画像に対する認識を行なう場合、バーコードの長辺方向に沿った1ライン分のデータを切出し、認識処理を行っている。そして、従来は、認1ラインに含まれるすべてのキャラクタを正しく認識できた場合のみ認識成功としていた。しかし、この方法ではコード画像の一部に欠損やゴミが生じてキャラクタの1つでも認識ができなくなると認識失敗としていたため、別の場所の複数のラインを切り出して認識を繰り返す必要がある。そのため、認識処理に時間がかかることが問題となっていた。
例えば、図12に示したバーコードB70に対する認識処理を実行した場合、コード画像B71のように汚れや欠損が生じると、1番目のラインは欠損によって生じた6番目のキャラクタ領域における認識失敗によってライン全体の認識が失敗となり、2番目のラインでは汚れによって生じた4番目のキャラクタ領域における認識失敗によってライン全体の認識が失敗となる。そのため、3番目のラインのように全てのキャラクタ領域において認識が成功して初めてライン全体の認識が成功となっていた。
また、図13に示したようにバーコードの短辺方向を横断するように複数ラインにまたがった欠損やゴミが生じている場合には認識ができないことが問題となっていた。
この従来のライン処理に対し、コード認識処理部24では、キャラクタ毎に認識成功/失敗の管理を行なう。具体的には、1つのラインで認識失敗のキャラクタが存在する場合には、別の場所から1ライン分のデータを切り出してきて認識処理を行なう。この際に、以前の処理で認識成功となっているキャラクタに対する処理は行わず、認識失敗のキャラクタに対してのみ認識を行う。以上の処理を繰り返し、図8に示したように、全キャラクタが認識成功となったら、バーコードの認識に成功したとして処理を終了する。これにより、認識処理に要する時間を短縮することが可能となる。また、欠損やゴミが生じている場合にも認識に成功するようになり、認識性能が向上する。
なお、従来の技術では、ライン単位での認識成功が所定回数以上得られた場合に、バーコードに対する認識が成功したとすることが一般的である。これに対応し、コード認識処理部24における認識処理では、各キャラクタ領域単位で成功回数を蓄積し、成功が所定回数に達したキャラクタ領域について認証成功とし、全てのキャラクタ領域が認証成功となった場合にバーコード全体に対する認証が成功した、としてもよい。
図15は、コード画像処理装置20による複数ライン処理について説明するフローチャートである。まず、1ライン分の画像データを抽出し(S201)、コードパターン認識を行なう(S202)。このコードパターン認識は、図11を参照して説明した動作である。
その後、コード認識処理部202は、コードパターン認識結果から処理対象を選択し(S203)、メモリ25に過去の認識結果情報が存在すれば、これを読み出す(S204)。そして、認識結果情報に記録された処理対象のキャラクタ領域における認識成功回数が所定回数より大きければ(S205,Yes)、処理対象キャラクタ選択(S203)に戻って次のキャラクタ領域を選択する。
一方、認識結果情報に記録された処理対象のキャラクタ領域における認識成功回数が所定回数以下であれば(S205,No)、今回のパターン変換が成功であったか否かを判定し(S206)、成功していれば(S206,Yes)メモリ25内部の認識結果情報25cをアップデートして(S207)、失敗していれば(S206,No)そのままステップS208に移行する。
ステップS208では、全キャラクタ領域に対する処理が終了したか否かを判定し(S208)、未処理のキャラクタ領域が残っていれば(S208,No)処理対象キャラクタ選択(S203)に戻って次のキャラクタ領域を選択する。
一方、全てのキャラクタ領域に対する処理が終了したならば(S208,Yes)、コード認識処理部24は、認識結果情報25cを参照し、全てのキャラクタ領域について所定回数以上の認証成功が得られていれば(S209,Yes)、コード認識成功として(S212)、処理を終了する。
また、所定回数以上の認証成功が得られていないキャラクタ領域が残っている場合、コード認識処理部24は、全てのラインについて処理が終了したかを判定し(S210)、未処理のラインが残っている場合(S210,No)には、ステップS201に戻って次のラインを取得する。一方、全てのラインの処理が終了した場合(S210,Yes)、コード認識処理部24は、コード認識失敗(S211)を出力して、処理を終了する。
以上説明してきたように、二値化処理装置10は、基本閾値と、画像の特性が異なっている場合に適した算出方法を用いる補助閾値の2つを用いる。そして、キャラクタ毎に画像データの階調値の分布特性に応じて2つの閾値のうち適した方を選択して用いることで、画像の特性が撮影画像の位置や影によって異なっている場合にも二値化パターンを正確に求めることが可能となり、認識成功率が向上する。
そのため、デジタルカメラのような汎用の光学機器を用いてバーコードを読み取る場合に生ずる撮影画像の歪や撮影画像上の位置による解像度の劣化や輝度の低下という固有の問題に対して、読み取り性能を落とさないバーコード読み取りを実現することが可能となる。
また、コード画像処理装置20は、1ライン分のデータを切り出しての認識処理を繰り返す際に、それ以前の処理で認識に成功しているキャラクタの情報を保存し、以降の処理に活用することで、認識時間を短縮することが可能となり、欠損やゴミが生じている場合の認識性能が向上する。
なお、本実施例はあくまで一例であり、本実施例の記載に限定されること無く適宜変形して実施することができる。例えば、基本閾値と補助閾値の双方を算出した後、分布特性に合わせて閾値を選択しても良いし、まず使用する閾値を選択した後に必要な閾値のみを算出するようにしても良い。また、基本閾値は常に算出し、補助閾値は必要な場合にのみ基本閾値を利用して定めるように構成することもできる。
また、本実施例に示した各種構成要素は、その一部または全てをソフトウェアによって実現することもできる。従って、二値化処理装置10の構成要素を全てソフトウェアによって実現することでコンピュータを二値化処理装置として機能させる二値化処理プログラムを得ることができ、コード画像処理装置20の構成要素を全てソフトウェアによって実現することでコンピュータをコード画像処理装置として機能させるコード画像処理プログラムを得ることができる。
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)バーコード画像を撮影したバーコード画像データから抽出された1ライン分の画像データを、キャラクタを構成するパターン毎に分割して作成した分割領域について、該分割領域内に含まれる画像の濃度分布の特徴を検出する画像濃度分布検出手段と、
前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定手段と、
前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定手段と、
前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別手段と、
前記分布特定の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択手段と、
前記採用した閾値を用いて前記判別対象の分割領域を二値化する二値化手段と、
を備えることを特徴とする二値化処理装置。
(付記2)前記基本閾値決定手段は、前記分割領域の濃度の最大値と最小値との間が1対1となる二値化閾値を前記基本閾値として決定し、
前記補助閾値決定手段は、前記分割領域における濃度分布の比率が該バーコードの種類毎に予め定められた比率となる二値化閾値を前記補助閾値として決定することを特徴とする付記1に記載の二値化処理装置。
(付記3)前記補助閾値決定手段は、前記分割領域の濃度分布が、予め定められた複数の比率となる複数の補助閾値候補を求め、該複数の補助閾値候補のうち、前記基本閾値に最も近いものを前記補助閾値として決定する付記1または2に記載の二値化処理装置。
(付記4)二値化閾値選択手段は、前記濃度分布の最大値と最小値の一方が飽和している場合、最大値と最小値の少なくともいずれかかが各々に定められた適正範囲を逸脱している場合、もしくは、最大値と最小値の差が予め定めた特定値より小さい場合に前記補助閾値を採用することを特徴とする付記1〜3のいずれか一つに記載の二値化処理装置。
(付記5)カメラと、
前記カメラにより撮影されたバーコード画像を走査して1ライン分の画像データを抽出する画像抽出手段と、
前記1ライン分の画像データを、キャラクタを構成するパターン毎に分割して分割領域を作成するキャラクタ領域分割手段と、
前記分割領域毎に、該領域内に含まれる画像の濃淡分布の特徴を検出する画像濃淡分布検出手段と、
前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定手段と、
前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定手段と、
前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別手段と、
前記分布特性の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択手段と、
前記採用した閾値を用いて前記判別対象の分割領域を二値化して二値化パターンを生成する二値化手段と、
を備えることを特徴とする情報処理装置。
(付記6)前記キャラクタ領域分割手段は、前記1ライン分の画像データから前記バーコード画像のバーに形成する濃度値の高い側の線を検出し、各分割領域内に含まれる線の本数が予め定められた本数となるように分割することを特徴とする付記5に記載の情報処理装置。
(付記7)前記バーコード画像から抽出された走査位置の異なる複数ラインの画像データに対し、異なるラインで同一のキャラクタ領域に対応する分割領域について前記ニ値化パターンから文字情報への変換結果を蓄積し、前記バーコード画像が有する全てのキャラクタ領域で各々変換成功回数が予め定めた基準回数を上回った場合に、前記バーコードの認識が成功したと判断するコード認識処理部をさらに備えたことを特徴とする付記5または6に記載の情報処理装置。
(付記8)バーコード画像に対する走査によって得られた1ライン分の画像データを、キャラクタを構成するパターン毎に分割して作成した分割領域について、該分割領域内に含まれる画像の濃度分布の特徴を検出する画像濃度分布検出ステップと、
前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定ステップと、
前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定ステップと、
前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別ステップと、
前記分布特定の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択ステップと、
前記採用した閾値を用いて前記判別対象の分割領域を二値化する二値化ステップと、
を有することを特徴とする二値化処理方法。
(付記9)バーコード画像に対する走査によって得られた1ライン分の画像データを、キャラクタを構成するパターン毎に分割して作成した分割領域について、該分割領域内に含まれる画像の濃度分布の特徴を検出する画像濃度分布検出手順と、
前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定手順と、
前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定手順と、
前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別手順と、
前記分布特定の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択手順と、
前記採用した閾値を用いて前記判別対象の分割領域を二値化する二値化手順と、
をコンピュータに実行させることを特徴とする二値化処理プログラム。
図1は、本実施例にかかる二値化処理装置を有する情報処理装置の概要構成を示す概要構成図である。 図2は、バーコードの具体例について説明する説明図である。 図3は、カメラの特性による画像の品質劣化について説明する説明図である。 図4は、バーコードの一部に影がかかって暗くなった場合の品質劣化について説明する説明図である。 図5は、基本閾値と補助閾値の適用例について説明する説明図である。 図6は、階調値が最小値側に飽和した場合について説明する説明図である。 図7は、階調値の最大値が中央値よりも小さい場合について説明する説明図である。 図8は、階調値の最大値と最小値との差が予め定めた範囲よりも小さい場合について説明する説明図である。 図9は、補助閾値の設定について説明する説明図である。 図10は、基本閾値が有効である場合について説明する説明図である。 図11は、コード画像処理装置20の処理動作について説明するフローチャートである。 図12は、従来のライン処理について説明する説明図である。 図13は、従来のライン処理で認識できない場合について説明する説明図である。 図14は、キャラクタ単位で認識を管理するライン処理について説明する説明図である。 図15は、キャラクタ単位で認識を管理するライン処理について説明するフローチャートである。
符号の説明
10 二値化処理装置
11 画像濃淡分布検出部
12 分布特性判別部
13 基本閾値決定部
14 補助閾値決定部
15 二値化閾値選択部
16 二値化部
20 コード画像処理装置
21 ライン画像抽出部
22 キャラクタ領域分割部
23 処理対象領域選択部
24 コード認識処理部
25 メモリ
25a 白黒−キャラクタパターン対応表
25b キャラクタ−文字情報対応表
25c 認識結果情報

Claims (7)

  1. バーコード画像を撮影したバーコード画像データから抽出された1ライン分の画像データを、キャラクタを構成するパターン毎に分割して作成した分割領域について、該分割領域内に含まれる画像の濃度分布の特徴を検出する画像濃度分布検出手段と、
    前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定手段と、
    前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定手段と、
    前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別手段と、
    前記分布特定の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択手段と、
    前記採用した閾値を用いて前記判別対象の分割領域を二値化する二値化手段と、
    を備えることを特徴とする二値化処理装置。
  2. 前記基本閾値決定手段は、前記分割領域の濃度の最大値と最小値との間が1対1となる二値化閾値を前記基本閾値として決定し、
    前記補助閾値決定手段は、前記分割領域における濃度分布の比率が該バーコードの種類毎に予め定められた比率となる二値化閾値を前記補助閾値として決定することを特徴とする請求項1に記載の二値化処理装置。
  3. 前記補助閾値決定手段は、前記分割領域の濃度分布が、予め定められた複数の比率となる複数の補助閾値候補を求め、該複数の補助閾値候補のうち、前記基本閾値に最も近いものを前記補助閾値として決定する請求項1または2に記載の二値化処理装置。
  4. 二値化閾値選択手段は、前記濃度分布の最大値と最小値の一方が飽和している場合、最大値と最小値の少なくともいずれかかが各々に定められた適正範囲を逸脱している場合、もしくは、最大値と最小値の差が予め定めた特定値より小さい場合に前記補助閾値を採用することを特徴とする請求項1〜3のいずれか一つに記載の二値化処理装置。
  5. カメラと、
    前記カメラにより撮影されたバーコード画像を走査して1ライン分の画像データを抽出する画像抽出手段と、
    前記1ライン分の画像データを、キャラクタを構成するパターン毎に分割して分割領域を作成するキャラクタ領域分割手段と、
    前記分割領域毎に、該領域内に含まれる画像の濃淡分布の特徴を検出する画像濃淡分布検出手段と、
    前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定手段と、
    前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定手段と、
    前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別手段と、
    前記分布特性の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択手段と、
    前記採用した閾値を用いて前記判別対象の分割領域を二値化して二値化パターンを生成する二値化手段と、
    を備えることを特徴とする情報処理装置。
  6. バーコード画像に対する走査によって得られた1ライン分の画像データを、キャラクタを構成するパターン毎に分割して作成した分割領域について、該分割領域内に含まれる画像の濃度分布の特徴を検出する画像濃度分布検出ステップと、
    前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定ステップと、
    前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定ステップと、
    前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別ステップと、
    前記分布特定の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択ステップと、
    前記採用した閾値を用いて前記判別対象の分割領域を二値化する二値化ステップと、
    を有することを特徴とする二値化処理方法。
  7. バーコード画像に対する走査によって得られた1ライン分の画像データを、キャラクタを構成するパターン毎に分割して作成した分割領域について、該分割領域内に含まれる画像の濃度分布の特徴を検出する画像濃度分布検出手順と、
    前記分割領域における濃度の最大値と最小値との間が、予め規定された第1の比率となる二値化閾値を基本閾値として決定する基本閾値決定手順と、
    前記分割領域における濃度分布が、予め規定された第2の比率となる二値化閾値を補助閾値として決定する補助閾値決定手順と、
    前記分割領域の濃度分布が予め規定された分布特性を持つか否かを判別する分布特性判別手順と、
    前記分布特定の判別結果に基づき、前記基本閾値と前記補助閾値とのいずれかを、該判別対象の前記分割領域の二値化に使用する閾値として選択的に採用する二値化閾値選択手順と、
    前記採用した閾値を用いて前記判別対象の分割領域を二値化する二値化手順と、
    をコンピュータに実行させることを特徴とする二値化処理プログラム。
JP2008255313A 2008-09-30 2008-09-30 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム Active JP5125961B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008255313A JP5125961B2 (ja) 2008-09-30 2008-09-30 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008255313A JP5125961B2 (ja) 2008-09-30 2008-09-30 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム

Publications (2)

Publication Number Publication Date
JP2010086324A JP2010086324A (ja) 2010-04-15
JP5125961B2 true JP5125961B2 (ja) 2013-01-23

Family

ID=42250214

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008255313A Active JP5125961B2 (ja) 2008-09-30 2008-09-30 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム

Country Status (1)

Country Link
JP (1) JP5125961B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5321610B2 (ja) * 2011-02-04 2013-10-23 カシオ計算機株式会社 スキャナ装置及びプログラム
JP5756322B2 (ja) * 2011-04-08 2015-07-29 任天堂株式会社 情報処理プログラム、情報処理方法、情報処理装置および情報処理システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6359272A (ja) * 1986-08-29 1988-03-15 Nippon Telegr & Teleph Corp <Ntt> 画像処理装置
JPH056549A (ja) * 1991-06-26 1993-01-14 Olympus Optical Co Ltd 再生信号処理装置
JP3550807B2 (ja) * 1995-06-16 2004-08-04 株式会社デンソー バーコード復号方式
JP3282606B2 (ja) * 1999-03-11 2002-05-20 日本電気株式会社 バーコード読取装置、方法及びプログラムを記憶した記憶媒体
JP3994571B2 (ja) * 1999-03-25 2007-10-24 株式会社デンソー 情報コードの2値化方法、当該2値化方法を用いた光学情報読取装置、及び当該2値化方法を用いたコード品質判断補助装置
JP2004246795A (ja) * 2003-02-17 2004-09-02 Toshiba Social Automation Systems Co Ltd バーコード認識方法及び認識装置
JP2008009907A (ja) * 2006-06-30 2008-01-17 Fuji Xerox Co Ltd バーコード認識装置、方法及びプログラム
JP4398498B2 (ja) * 2007-12-03 2010-01-13 富士通株式会社 コード境界検出方法

Also Published As

Publication number Publication date
JP2010086324A (ja) 2010-04-15

Similar Documents

Publication Publication Date Title
JP5334042B2 (ja) 文字列認識方法及び文字列認識装置
JP4911340B2 (ja) 二次元コード検出システムおよび二次元コード検出プログラム
US7636483B2 (en) Code type determining method and code boundary detecting method
US7539344B2 (en) Boundary detection method between areas having different features in image data
EP2605186B1 (en) Method and apparatus for recognizing a character based on a photographed image
US8538191B2 (en) Image correction apparatus and method for eliminating lighting component
US9251430B2 (en) Apparatus, method, and program for character recognition using minimum intensity curve of image data
JP5229328B2 (ja) 文字領域抽出装置,文字領域抽出機能を備えた撮像装置,および文字領域抽出プログラム
US8467608B2 (en) Method and apparatus for character string recognition
US6880758B2 (en) System and method for identifying object information
EP2133817A1 (en) Recognition apparatus and recognition method
CN111259680B (zh) 二维码图像二值化处理方法及装置
JP5870745B2 (ja) 画像処理装置、二値化閾値算出方法及びコンピュータプログラム
JP5125961B2 (ja) 二値化処理装置、情報処理装置、二値化処理方法および二値化処理プログラム
JP4335229B2 (ja) Qrコード認識装置、qrコード認識装置の制御方法、qrコード認識装置制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
US20170206391A1 (en) Barcode decoding method
JP5121685B2 (ja) バーコード読取装置、バーコード読取プログラム、バーコード読取方法
JP4398498B2 (ja) コード境界検出方法
JP2007189577A (ja) コンピュータプログラム、画像入力装置、画像入力システムおよび画像入力方法
JP3607065B2 (ja) 楽譜認識方法及び楽譜認識プログラムを記録したコンピュータ読み取り可能な記録媒体
JP5127687B2 (ja) バーコード読取装置、バーコード読取プログラム、バーコード読取方法
CN113255637A (zh) 图像边界的定位方法、图像处理设备、装置和存储介质
CN112862798B (zh) 一种黑白摄像头成像情况检测方法和装置
KR20070019847A (ko) 이미지 인식방법
JP4700597B2 (ja) 画像二値化装置、及び画像二値化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120912

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5125961

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3