(57)【要約】【課題】本発明は、傾き角度の検出処理時間の短縮化と傾き角度検出精度の高精度化を図るバーコード傾き角度検出方法及びバーコード読み取り装置を提供することにある。また、バーコード傾き角度検出方法を実行するためのプログラムを提供することにある。【解決手段】バーコードの２次元デジタル画像データに対し、水平成分のエッジ強度と垂直成分のエッジ強度を算出するエッジ強度算出手段と、水平成分のエッジ強度と垂直成分のエッジ強度から２次元デジタル画像データの各ピクセルにおける傾き角度を算出するエッジ傾き角度算出手段と、水平成分及び垂直成分のエッジ強度からエッジ強度絶対値を算出するエッジ強度絶対値算出手段により、２次元テーブルからエッジ傾き角度の合計累積数を算出し、合計累積数が最大であるバーコードの傾き角度を検出する。【選択図】　　　　図５
2004086305.tif 000002
【特許請求の範囲】
【請求項１】
バーコードの画像データを処理し、バーコードの傾きを検出する方法であって、下記の手順を備えたことを特徴とするバーコード傾き角度検出方法。
（ａ）エリアセンサに対しバーコードの２次元画像データを取りこみ指示する工程と、
（ｂ）前記２次元画像データが２ビット以上の分解能を持つ２次元デジタル画像データに変換された該２次元デジタル画像データを読み出す工程と、
（ｃ）前記２次元デジタル画像データの各ピクセルに対し、水平成分のエッジ強度を算出する工程と、
（ｄ）前記２次元デジタル画像データの各ピクセルに対し、垂直成分のエッジ強度を算出する工程と、
（ｅ）前記各ピクセルに対し、前記水平成分及び垂直成分のエッジ強度からエッジ傾き角度を算出する工程と、
（ｆ）前記水平成分及び垂直成分のエッジ強度からエッジが存在する方向であるエッジ強度絶対値を算出する工程と、
（ｇ）前記エッジ傾き角度と前記エッジ強度絶対値を示す所定のセル内に累積数を記録し、前記所定のセル数を備えた２次元テーブルを作成する工程と、
（ｈ）前記２次元テーブルから前記エッジ傾き角度についての合計累積数を算出し、前記合計累積数が最大であるバーコードの傾き角度を検出する工程。
【請求項２】
前記（ｃ）工程おいて、水平成分のエッジ強度を算出する工程は、所定の大きさと、垂直方向のみ要素を備えた２次元デジタルフィルタのテンプレートにより前記２次元デジタル画像データとの演算を行う工程であることを特徴とする請求項１に記載のバーコード傾き角度検出方法。
【請求項３】
前記（ｄ）工程において、垂直成分のエッジ強度を算出する工程は、所定の大きさと、水平方向のみ要素を備えた２次元デジタルフィルタのテンプレートにより前記２次元デジタル画像データとの演算を行う工程であることを特徴とする請求項１または２に記載のバーコード傾き角度検出方法。
【請求項４】
前記（ｈ）工程において、前記合計累積数を算出する工程は、所定のしきい値以上の前記エッジ強度絶対値について前記セル内の累積数を加算し、前記合計累積数を算出する工程であることを特徴とする請求項１から３のいずれか１項記載のバーコード傾き角度検出方法。
【請求項５】
さらに、前記（ｈ）工程は、前記エッジ強度絶対値のヒストグラムを算出し、前記ヒストグラムにおける総合計累積数に対して前記合計累積数が所定の比率となる前記エッジ強度絶対値を前記しきい値とするしきい値算出工程を備えたことを特徴とする請求項１から４のいずれか１項記載のバーコード傾き角度検出方法。
【請求項６】
エリアセンサを用いたバーコードの傾きを検出する方法であって、下記の工程をコンピュータに実行させることを特徴とするプログラム。
（ａ）エリアセンサに対しバーコードの２次元画像データを取りこみ指示する工程と、
（ｂ）前記２次元画像データが２ビット以上の分解能を持つ２次元デジタル画像データに変換された該２次元デジタル画像データを読み出す工程と、
（ｃ）前記２次元デジタル画像データの各ピクセルに対し、水平方向のエッジ強度を算出する工程と、
（ｄ）前記２次元デジタル画像データの各ピクセルに対し、垂直方向のエッジ強度を算出する工程と、
（ｅ）前記各ピクセルに対し、前記水平方向及び垂直方向のエッジ強度からエッジ傾き角度を算出する工程と、
（ｆ）前記水平方向及び垂直方向のエッジ強度からエッジが存在する方向であるエッジ強度絶対値を算出する工程と、
（ｇ）前記エッジ傾き角度と前記エッジ強度絶対値を示す所定のセル内に累積数を記録し、前記所定のセル数を備えた２次元テーブルを作成する工程と、
（ｈ）前記２次元テーブルから前記エッジ傾き角度の合計累積数を算出し、前記合計累積数が最大であるバーコードの傾き角度を検出する工程。
【請求項７】
バーコードの画像データを２ビット以上の２次元デジタル画像データに変換し、該２次元デジタル画像データから２次元デジタルフィルタによりエッジの傾き角度を算出し、バーコードの傾き角度を検出する下記の手段を備えたことを特徴とするバーコード読み取り装置。
（１）バーコードの２次元画像データを取りこむエリアセンサと、
（２）前記２次元画像データを２ビット以上の２次元デジタル画像データに変換する手段と、
（３）前記２次元デジタル画像データを一時的に記憶する記憶手段と、
（４）前記２次元デジタル画像データに対し、水平成分のエッジ強度と垂直成分のエッジ強度を算出するエッジ強度算出手段と、
（５）前記水平成分のエッジ強度と前記垂直成分のエッジ強度から前記２次元デジタル画像データの各ピクセルにおける傾き角度を算出するエッジ傾き角度算出手段と、
（６）前記水平成分及び垂直成分のエッジ強度からエッジが存在する方向であるエッジ強度絶対値を算出するエッジ強度絶対値算出手段と、
（７）前記エッジ傾き角度と前記エッジ強度絶対値を示す所定のセル内に累積数を記録し、前記所定のセル数を備えた２次元テーブルを作成する２次元テーブル作成手段と、
（８）前記２次元テーブルから前記エッジ傾き角度の合計累積数を算出し、前記合計累積数が最大であるバーコードの傾き角度を検出するバーコードの傾き角度検出手段。
【請求項８】
前記（４）のエッジ強度算出手段において、水平成分及び垂直成分のエッジ強度を算出する手段は、水平方向および垂直方向のみ要素を備えた２次元デジタルフィルタのテンプレートにより前記２次元デジタル画像データとの演算を行う水平成分及び垂直成分のエッジ強度算出手段であることを特徴とする請求項７に記載のバーコード読み取り装置。
【請求項９】
前記（８）のバーコードの傾き角度検出手段は、所定のしきい値以上の前記エッジ強度絶対値について前記セル内の累積数を加算し、前記合計累積数を算出する合計累積数算出手段であることを特徴とする請求項７または８のいずれか１項記載のバーコード読み取り装置。
【請求項１０】
さらに、前記（８）のバーコードの傾き角度検出手段は、前記エッジ強度絶対値のヒストグラムを算出し、前記ヒストグラムにおける総合計累積数に対して前記合計累積数が所定の比率となる前記エッジ強度絶対値を前記しきい値とするしきい値算出手段を備えたことを特徴とする請求項７から９のいずれか１項記載のバーコード読み取り装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、１次元バーコードを読み取る際に、読み取りセンサを基準にバーコードの傾き角度を検出する方法及びバーコード読み取り装置に関する。
【０００２】
【従来の技術】
エリアセンサを使用したバーコード読み取り装置において、傾きを持ったバーコードの読み取りを行う場合には、その傾きと平行してスキャンを行い、バーコードを読み取る必要がある。従って、上記傾きの角度を検出し、この傾き角度をバーコード読み取り装置に与えれば、スキャン方向を変えることで、バーコードの正確な読み取りが可能である。
【０００３】
このように、傾きの角度を検出することは、バーコードの正確な読み取りを行う上で、重要である。
【０００４】
図１は、従来技術による傾き検出方法を示す図である。
図１（ａ）に示す傾きを持ったバーコード画像データをエリアセンサまたはラインセンサによりＸ軸方向に水平にスキャンを行い、スキャン方向▲１▼とスキャン方向▲２▼のスキャン出力を比較する。両スキャン出力パターンの位相的なずれを除いて同じようなパターンが検出されたとき、図１（ｂ）のずれ量から傾きの推定量を算出することができる。
【０００５】
【発明が解決しようとする課題】
しかし、上記の方法によると、スキャンラインが少ないと、上記パターンの変形量が大きくなり、傾き角度を正確に検出するためには、スキャンラインを増やす必要がある。このために、検出処理時間が長くなるという問題点があった。
また、上記のようにスキャンラインが少ないと、検出パターンの一致が容易ではなく、角度検出精度が下がるという問題点もある。
【０００６】
そこで、本発明は、傾き角度の検出処理時間の短縮化と傾き角度検出精度の高精度化を図るバーコード傾き角度検出方法及びバーコード読み取り装置を提供することにある。
また、バーコード傾き角度検出方法を実行するためのプログラムを提供することにある。
【０００７】
【課題を解決するための手段】
本発明は、エリアセンサにより取得した２ビット以上の分解能を持つバーコード２次元デジタル画像データを２次元デジタルフィルタによりピクセル毎のバーコードのエッジ傾き角度を検出し、この角度とエッジの強度の２次元情報からバーコードの傾き角度を検出する方法を提供することにより、上記課題を達成するものである。
また、バーコードの傾き角度の検出手段を備えるバーコード読み取り装置を提供するものである。
【０００８】
本発明の第一の態様に係るバーコード傾き角度検出方法は、バーコードの２次元デジタル画像データを処理し、バーコードの傾きを検出する方法であって、（ａ）エリアセンサに対しバーコードの２次元画像データを取りこみ指示する工程と、（ｂ）２次元画像データが２ビット以上の分解能を持つ２次元デジタル画像データに変換された該２次元デジタル画像データを読み出す工程と、（ｃ）２次元デジタル画像データの各ピクセルに対し、水平成分のエッジ強度を算出する工程と、（ｄ）２次元デジタル画像データの各ピクセルに対し、垂直成分のエッジ強度を算出する工程と、（ｅ）各ピクセルに対し、前記水平成分及び垂直成分のエッジ強度からエッジ傾き角度を算出する工程と、（ｆ）水平成分及び垂直成分のエッジ強度からエッジが存在する方向であるエッジ強度絶対値を算出する工程と、（ｇ）エッジ傾き角度とエッジ強度絶対値を示す所定のセル内に累積数を記録し、前記所定のセル数を備えた２次元テーブルを作成する工程と、（ｈ）２次元テーブルからエッジ傾き角度についての合計累積数を算出し、合計累積数が最大であるバーコードの傾き角度を検出する工程を備えたことを特徴とする。
【０００９】
本発明の他の態様に係る水平成分のエッジ強度を算出する工程は、所定の大きさと、垂直方向のみ要素を備えた２次元デジタルフィルタのテンプレートにより２次元デジタル画像データとの演算を行う工程であることを特徴とする。
【００１０】
本発明の他の態様に係る垂直成分のエッジ強度を算出する工程は、所定の大きさと、水平方向のみ要素を備えた２次元デジタルフィルタのテンプレートにより２次元デジタル画像データとの演算を行う工程であることを特徴とする。
【００１１】
本発明の他の態様に係る合計累積数を算出する工程は、所定のしきい値以上のエッジ強度絶対値についてセル内の累積数を加算し、合計累積数を算出する工程であることを特徴とする。
【００１２】
本発明の他の態様に係るバーコードの傾き角度を検出する工程は、エッジ強度絶対値のヒストグラムを算出し、ヒストグラムにおける総合計累積数に対して合計累積数が所定の比率となるエッジ強度絶対値をしきい値とするしきい値算出工程を備えたことを特徴とする。
【００１３】
本発明の他の態様に係るプログラムは、エリアセンサを用いたバーコードの傾きを検出する方法であって、（ａ）エリアセンサに対しバーコードの２次元画像データを取りこみ指示する工程と、（ｂ）２次元画像データが２ビット以上の分解能を持つ２次元デジタル画像データに変換された該２次元デジタル画像データを読み出す工程と、（ｃ）２次元デジタル画像データの各ピクセルに対し、水平方向のエッジ強度を算出する工程と、（ｄ）２次元デジタル画像データの各ピクセルに対し、垂直方向のエッジ強度を算出する工程と、（ｅ）各ピクセルに対し、水平方向及び垂直方向のエッジ強度からエッジ傾き角度を算出する工程と、（ｆ）水平方向及び垂直方向のエッジ強度からエッジが存在する方向であるエッジ強度絶対値を算出する工程と、（ｇ）エッジ傾き角度とエッジ強度絶対値を示す所定のセル内に累積数を記録し、所定のセル数を備えた２次元テーブルを作成する工程と、（ｈ）２次元テーブルからエッジ傾き角度の合計累積数を算出し、合計累積数が最大であるバーコードの傾き角度を検出する工程をコンピュータに実行させることを特徴とする。
【００１４】
本発明の他の態様に係るバーコード読み取り装置は、（１）バーコードの２次元画像データを取りこむエリアセンサと、（２）２次元画像データを２ビット以上の２次元デジタル画像データに変換する手段と、（３）２次元デジタル画像データを一時的に記憶する記憶手段と、（４）２次元デジタル画像データに対し、水平成分のエッジ強度と垂直成分のエッジ強度を算出するエッジ強度算出手段と、（５）水平成分のエッジ強度と垂直成分のエッジ強度から２次元デジタル画像データの各ピクセルにおける傾き角度を算出するエッジ傾き角度算出手段と、（６）水平成分及び垂直成分のエッジ強度からエッジが存在する方向であるエッジ強度絶対値を算出するエッジ強度絶対値算出手段と、（７）エッジ傾き角度とエッジ強度絶対値を示す所定のセル内に累積数を記録し、所定のセル数を備えた２次元テーブルを作成する２次元テーブル作成手段と、（８）２次元テーブルからエッジ傾き角度の合計累積数を算出し、合計累積数が最大であるバーコードの傾き角度を検出するバーコードの傾き角度検出手段を備えたことを特徴とする。
【００１５】
本発明の他の態様に係る水平成分及び垂直成分のエッジ強度を算出する手段は、水平方向および垂直方向のみ要素を備えた２次元デジタルフィルタのテンプレートにより２次元デジタル画像データとの演算を行う水平成分及び垂直成分のエッジ強度算出手段であることを特徴とする。
【００１６】
本発明の他の態様に係るバーコード傾き角度検出手段は、所定のしきい値以上のエッジ強度絶対値についてセル内の累積数を加算し、合計累積数を算出する合計累積数算出手段であることを特徴とする。
【００１７】
本発明の他の態様に係るバーコード傾き角度検出手段は、さらに、エッジ強度絶対値のヒストグラムを算出し、ヒストグラムにおける総合計累積数に対して合計累積数が所定の比率となるエッジ強度絶対値をしきい値とするしきい値算出手段を備えたことを特徴とする。
【００１８】
【発明の実施の形態】
本発明の一実施形態について図を用いて説明する。バーコードの縦方向のパターンは、平行に配置されているため、エリアセンサおよびＡ／Ｄ変換回路により取得したバーコードの２次元デジタル画像データのピクセル毎に算出したバーコードのエッジの傾きは、ほぼ一つの値を中心にスペクトラムが集中することが推定される。
【００１９】
このことより、このスペクトラムのピーク値がそのバーコードの傾き角度に一致すると推定される。
【００２０】
従って、上記エッジの傾きについてヒストグラムを作成し、そのピーク値をもって、バーコードの傾き角度とする処理方法が可能である。
【００２１】
一方、このようなヒストグラム処理においては、処理速度が速いという利点はあるが、情報が累積数のみとなるため、累積数の分布が単峰性となるとは限らない。
【００２２】
そこで、バーコードのエッジの強度は、バーコード以外の背景部分より十分に高いという特徴を有することから、この特徴を考慮して、累積数の限定に反映することにより、分布が複峰性になることを防ぎ、検出角度の精度向上を図ったものである。本発明は、このような観点からなされたものである。
【００２３】
最初に、ピクセル毎のエッジの傾きについて一般式により説明する。
【００２４】
２次元画像データ座標軸について、ｘ軸を水平方向に、ｙ軸を垂直方向にとり、バーコードの２次元画像データの点（ｘ、ｙ）での濃度をｆ（ｘ、ｙ）で表す。このとき、この濃度の変化成分（グラディエント）について極座標系（ｒ、θ）におけるｒ成分は、“数１”で求められる。
【００２５】
［数１］
2004086305.tif 000003
ここで、“数１”をθで微分し、（∂／∂θ）・（∂ｆ／∂ｒ）＝０となるθが∂ｆ／∂ｒを最大にする。このときのθｍａｘがピクセル毎のエッジの傾きである。“数１”をθで微分した式を“数２”に示す。
【００２６】
［数２］
（∂／∂θ）・（∂ｆ／∂ｒ）＝−ｆｘ・ｓｉｎθ＋ｆｙ・ｃｏｓθ
θｍａｘは、“数２＝０”の時、“数３”で与えられる。
【００２７】
また、ｆｘ、ｆｙは、ｘ方向及びｙ方向の濃度ｆの変化成分である。
【００２８】
［数３］
θｍａｘ＝ｔａｎ−１（ｆｙ／ｆｘ）
次に、ｆｘとｆｙを算出する方法について説明する。
【００２９】
２次元デジタルフィルタのエッジ検出用テンプレートにおいて、水平方向（ｘ軸）と垂直方向のエッジに対してそれぞれ最大出力を発生する２つの独立のテンプレートを採用して、ｆｘ、ｆｙを求める。これらのテンプレートとして、例えば、一般的に採用されているソーベル微分テンプレートを適用することができる。
【００３０】
図２は、本発明のバーコードの傾き角度検出方法を示すフローチャートの１例である。
【００３１】
まず、バーコードの２次元デジタル画像データを取得する（ステップＳ１０）。この取得においては、まずエリアセンサに対しバーコードの２次元画像データを取り込む指示を行う。取り込まれた２次元画像データは、Ａ／Ｄ変換回路により２次元デジタル画像データに変換される。２次元デジタル画像データは、メモリ等の記憶手段に記憶される。なお、エリアセンサによるバーコードを見る視野は、できる限り、背景領域が含まれないようにすることが望ましい。
【００３２】
次に、エッジ傾き角度θとエッジ強度絶対値ｆを表す２次元テーブルを作成する。ここでは一例として、横軸にθ、縦軸にｆを表した２次元テーブルについて説明する。各セルの内容には、累積数を入れる。即ち、上記２次元デジタル画像データのピクセル毎に計算されるθとｆからその対応するセルの内容をインクリメントし、累積数を求める。
【００３３】
なお、θのレンジ、分解能を、例えば、０−１７９度のレンジで、１度の分解能とすれば、横軸のセル数は１８０になる。また、ｆのレンジと分解能は、２次元デジタル画像データの分解能に依存するが、例えば８ビットデジタル画像データに変換した場合には、０−２５５となり、縦軸のセル数は２５６になる。従って、２次元テーブルの総セル数は、２５６（行）×１８０（列）個になる。
【００３４】
ステップＳ１１でこの２次元テーブルのセルを全てクリアする。
【００３５】
２次元デジタル画像データにおける１つのピクセルを定め、以下の処理をスタートする（ステップＳ１２）。ｘ軸及びｙ軸方向の濃度変化成分ｆｘ、ｆｙを上記方法により算出するとともに、エッジ強度絶対値ｆを求める（ステップＳ１４）。エッジ強度絶対値ｆは、下記に示す“数４”で与えられる。
【００３６】
［数４］
ｆ＝（ｆｘ２＋ｆｙ２）１／２
ｆを求めるにあたっては、処理速度を短縮するために、角度検出精度が問題とならなければ、｜ｆｘ＋ｆｙ｜という近似式を使用した算出方法であってもよい。
【００３７】
ステップＳ１６で、上記に示した方法によりｆｘとｆｙからエッジの傾き角度を算出する。以下、算出されたエッジの傾き角度を単に、θと呼ぶ。
【００３８】
ステップＳ１４とステップＳ１６で得られたエッジ強度絶対値ｆとθに対応するセル内のカウント数を１つ増やす（ステップＳ１８）。
【００３９】
ステップＳ１２からステップＳ１８までの上記処理を２次元デジタル画像データの最後のデータが終了するまで繰り返し実行する（ステップＳ２０）。
【００４０】
ステップＳ２０が終了すると、θとｆの２次元テーブルが完成する。上述したようにθのピーク値を算出するにあたって、θに何ら制限を与えないで作成したヒストグラムから累積数の最大値を求めた場合、ヒストグラムが複数のピーク値を有する可能性がある。
【００４１】
そこで、本発明は、θについてヒストグラムを作成するにあたって、複数のピーク値をもたないヒストグラムを作成することを目的として、エッジ強度絶対値ｆという変数を導入した。バーコードのエッジ強度は、例えば、バーコード間の背景のエッジ強度より十分に強いことから、所定の以下の強度を有するエッジを除くことにより、より安定した単峰性ヒストグラムを作成することが可能である。
【００４２】
ステップＳ２２でエッジ強度絶対値ｆのしきい値を算出する。図４にθとｆの２次元テーブルを示す。横軸ｊ列目のθｊを２０、縦軸ｉ行目のｆｉを２１に示す。セル内の累積数Ｖｉ，ｊを２２、ｉ行番目の合計累積数ＣＭｉを２３、ｊ列番目の合計累積数Ｃθｊを２４に示す。
【００４３】
以下に、しきい値を算出する手順を示す。
【００４４】
総サンプル数Ｔ、ここでは、総ピクセル数とすると、Ｔ＝ΣΣＶｉ，ｊである。ｉ，ｊについてすべて加算する。
【００４５】
次に、合計累積数ＣＭｉ２３は、ＣＭｉ＝ΣＶｉ，ｊである。ｊについてすべて加算する。
【００４６】
さらに、上記ＣＭｉ２３についてｉから最大値、例えば２５５まで加算する。この時の累積値をＴｉとしたとき、上記総サンプル数Ｔに対して所定の割合、例えばここでは１０％になるｉの値を閾値とする。以下、このｉをｉｔｈと表記する。
【００４７】
このように、ｆとθとの累積数との関係から、しきい値を求め、不要なエッジ強度絶対値を削除したヒストグラムを作成することが可能である。
【００４８】
ステップＳ２４以降のステップにより、最終的なバーコード傾き角度の検出処理を行う。なお、ステップＳ２４以降のステップについては、図３に示す。
【００４９】
ステップＳ２４により、最大合計累積数を記憶する最大合計累積数レジスタとバーコード傾き角度を記憶するバーコード傾き角度レジスタをクリアしておく。
【００５０】
ステップＳ２６で、上述した２次元テーブルの横軸ｊ列番目のθｊ２０を決め、以下の処理を行う準備をする。
【００５１】
次に、上述したしきい値ｉｔｈ以上の合計累積数ＣθｉｔｈをステップＳ２８で計算する。
【００５２】
即ち、Ｃθｊ＝ΣＶｉ，ｊについて、ｊを固定にしてｉｔｈからｉの最大値、例えば２５５までの投票数である合計累積数Ｃθｉｔｈを計算する。
【００５３】
ステップＳ３０で上記合計累積数Ｃθｉｔｈと現在の最大合計累積数レジスタの内容である最大合計累積数Ｃθｍａｘとを比較する。ＣθｉｔｈがＣθｍａｘより大きい場合（ステップＳ３０；ｙｅｓ）、現在のＣθｍａｘをＣθｉｔｈに置き換え、最大合計累積数レジスタにセットする（ステップＳ３２）。一方、現在のバーコード傾き角度を横軸ｊ列番目のθｊ２０に置き換え、バーコード傾き角度レジスタを更新する（ステップＳ３２）。
【００５４】
ＣθｉｔｈがＣθｍａｘより小さい場合（ステップＳ３０；ｎｏ）には、上記レジスタの更新はせず、ステップＳ３４を行う。
【００５５】
ステップＳ３４では、最後のエッジ傾き角度であるかを判断し、最後でなければ、ｊを１だけインクリメントして、ステップＳ２６につなげる。即ち、ｊ＝０からｊ＝ｍａｘ（１７９）まで自動的にステップＳ２６からステップＳ３４までを繰り返し処理する。また、最後のエッジ傾き角度であるならば、本処理の実行を止める。
【００５６】
以上により、本処理の実行が終了すると、バーコード傾き角度レジスタには、バーコードの傾き角度が記憶されていることになる。
【００５７】
本発明の他の実施形態について図を用いて説明する。図５に本発明に関する傾き角度検出手段を備えたバーコード読み取り装置のブロック図を示す。
【００５８】
エリアセンサ４０で、バーコードの２次元画像データを取り込み、図示しないＡ／Ｄ変換回路により２次元デジタル画像データを生成し、画像データ記憶手段４２により、２次元デジタル画像データを記憶する。このデータを読み出すことにより、以下に説明する処理を行う。
【００５９】
次に、水平方向のエッジ強度ｆｘの算出及び垂直方向のエッジ強度ｆｙの算出は、それぞれ手段４４及び手段４６により行う。ｆｘ、ｆｙの算出手段としては、画像処理で知られているソーベルフィルタなどを使用することが可能である。なお、フィルタのテンプレートの大きさは、最適なものにすることが望ましい。
【００６０】
エッジ強度ｆｘとｆｙから、エッジ傾き角度算出手段４８により、上述の“数３”に示したエッジ傾き角度θを算出する。一方で、エッジ強度絶対値算出手段５０により上述の“数４”に示したエッジ強度絶対値ｆを算出する。
【００６１】
上記算出したエッジ傾き角度θとエッジ強度絶対値ｆの値のセルに累積数を記憶させテーブルを作成する手段が２次元テーブル作成手段５２である。
【００６２】
エッジ強度絶対値のしきい値算出手段５４は、エッジ傾き角度θのヒストグラム作成の際に所定行以下の累積数を加算させないためのしきい値を計算する。これにより、エッジ傾き角度θのヒストグラムの信頼性を高めることが可能である。
【００６３】
手段５６により、エッジ傾き角度θのヒストグラムの作成し、手段５８により、前記ヒストグラムの最大値を求め、そのときのエッジ傾き角度をバーコードの傾き角度とする。
【００６４】
以上の手段により、バーコードの傾き角度を算出することが可能である。
【００６５】
上記の実施形態は説明のためのものであり、本発明の範囲を制限するものではない。従って、当業者であればこれらの各要素もしくは全要素をこれと均等なものによって置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００６６】
【発明の効果】
以上説明したように、本発明によれば、エリアセンサから得られるバーコードの２次元画像データがＡ／Ｄ変換された２次元デジタル画像データから、１ピクセル単位でエッジ傾き角度とエッジ強度絶対値の２つの特徴量を得ることにより、これら２つの特徴量によって精度よく、バーコードの傾き角度を検出することが可能である。
【００６７】
また、本発明の実施例の説明では、バーコードの２次元デジタル画像データの全ピクセルについて、エッジ傾き角度θおよびエッジ強度絶対値ｆを求め、２次元テーブルに配置する例を述べているが、処理時間短縮のねらいから、バーコード角度検出精度と処理時間のバランスをとって２次元テーブルを作成するためのサンプル数を決定することが望ましい。
【図面の簡単な説明】
【図１】従来技術による傾き角度検出方法を示す説明図である。
【図２】本発明のバーコード傾き角度検出方法のフローチャートである。
【図３】本発明の図２示したフローチャートに連続するバーコード傾き角度検出方法のフローチャートである。
【図４】本発明の横軸にエッジの傾き角度と縦軸にエッジ強度絶対値を示すセル内に累積数を記録した２次元テーブルを示す表である。
【図５】本発明に関する傾き角度検出手段を備えたバーコード読み取り装置のブロック図である。
【符号の説明】
２０　横軸ｉ行目のθｉ
２１　縦軸ｊ列目のｆｊ
２２　セル内の累積数Ｖｉ，ｊ
２３　ｉ行目の合計累積数ＣＭｉ
２４　ｊ列目の合計累積数Ｃθｊ
４０　エリアセンサ
４２　画像データ記憶手段
４４　ｆｘ計算デジタルフィルタ
４６　ｆｙ計算デジタルフィルタ
４８　エッジ傾き角度算出手段
５０　エッジ強度絶対値算出手段
５２　２次元テーブル作成手段
５４　エッジ強度絶対値のしきい値算出手段
５６　エッジ傾き角度合計累積数算出手段
５８　最大合計累積数のエッジ傾き角度検出手段
【図１】
2004086305.tif 000004
【図２】
2004086305.tif 000005
【図３】
2004086305.tif 000006
【図４】
2004086305.tif 000007
【図５】
2004086305.tif 000008