バーコード処理装置及びバーコード処理方法
【課題】スラント状態のバーコードの認識精度に優れたバーコード処理装置を提供すること。
【解決手段】バーコード処理装置は、1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、を備える。
【解決手段】バーコード処理装置は、1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、郵便物等に印刷されたバーコードを認識するバーコード処理装置及びバーコード処理方法に関する。
【背景技術】
【0002】
郵便物処理の分野では、宛先情報に対応したバーコードを郵便物に記録することが知られている。例えば、郵便物処理機は、高速搬送される郵便物の画像を読み取り、画像中の宛先情報を認識し、認識した宛先情報に対応したバーコードを郵便物に印字記録する。或いは、郵便物処理機が宛先情報を認識できない場合には、オペレータが、表示された郵便物画像を目視し、宛先情報を入力する。これに対応して、郵便物処理機は、入力された宛先情報に対応したバーコードを郵便物に印字記録する。
【0003】
上記したように郵便物に対してバーコードが印字記録された後は、郵便物はバーコードに基づき処理される。例えば、郵便物区分機は、郵便物に印字記録されたバーコードを読み取り、読み取ったバーコードに基づき郵便物を区分する。
【0004】
正確に郵便物を区分するためには、正確に郵便物画像からバーコードを読み取る必要がある。正確にバーコードを処理するための技術として、例えば、郵便物画像の中からバーコードを検出するバーコード検出技術、及びバーコードを読み取るバーコード読取技術などが開示されている(特許文献1、2参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2005−266907号公報
【特許文献2】特開2008−84218号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記した技術では、郵便物に印字されたスラント状態のバーを正しく認識することが難しい。
【0007】
例えば、郵便物処理装置は、高速搬送される郵便物に対して、インクジェットプリンタによりバーコードを印字記録する。そのため、郵便物の搬送速度とインクジェットプリンタのインク噴出タイミングとの調整が不十分である場合、バーコードを構成するバーが傾いた状態(スラント状態)で印字されることがある。スラント状態のバーは、上記した技術では正しく認識することが難しい。
【0008】
例えば、特許文献1には、フィルタリングによりバーコードを検出する技術が開示されているが、スラント状態のバー検出に関する技術は開示されていない。また、特許文献2には、スキュー状態のバーコードに対応する技術が開示されているが、スラント状態のバー検出に関する技術は開示されていない。
【0009】
なお、スキュー状態のバーコードとは、バーコードを構成する各バーの並びが郵便物の搬送方向に対して斜めになっている状態のバーコード、つまり、バーコード全体が郵便物の搬送方向に対して斜めに印字された状態のバーコードである。これに対してスラント状態のバーにより構成されたバーコードとは、バーコードを構成する各バーが郵便物の搬送方向に対して斜めになっているものの、バーコード全体が郵便物の搬送方向に沿って印字された状態のバーコードである。
【0010】
本発明の目的は、スラント状態のバーコードの認識精度に優れたバーコード処理装置及びバーコード処理方法を提供することにある。
【課題を解決するための手段】
【0011】
本発明の一実施形態に係るバーコード処理装置は、1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、を備える。
【0012】
本発明の一実施形態に係るバーコード処理方法は、1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識する。
【発明の効果】
【0013】
本発明によれば、スラント状態のバーコードの認識精度に優れたバーコード処理装置及びバーコード処理方法を提供できる。
【図面の簡単な説明】
【0014】
【図1】本発明の一実施形態に係るバーコード処理装置の概略構成を示す図である。
【図2】本発明の一実施形態に係るバーコード処理の概略を説明するためのフローチャートである。
【図3】4ステートバーコードの一例を示す図である。
【図4】スラント状態のバー(インクドットの集合体)により構成されたバーコードの一例を示す図である。
【図5】正しく印刷されたバーコードに対するフィルタリング処理及びドット連結処理の結果の一例を示す図である。
【図6】スラント状態のバーコードに対するスラント対応フィルタリング処理及びドット連結処理の結果の一例を示す図である。
【図7】ラベル輪郭追跡処理を説明するための図である。
【図8】輪郭追跡時の8方向の投票方向成分を示す図である。
【図9】推定スラント角度θと基準線からの高さとに基づく補正画像の生成を示す図である。
【図10】補正画像に対する認識処理の一例を示すフローチャートである。
【図11】得点マップの生成を説明するための図である。
【図12】仮定スラント角度に基づく補正得点マップの生成を説明するための図である。
【発明を実施するための形態】
【0015】
以下、図面を参照し、本発明の実施形態について説明する。
【0016】
図1は、本発明の一実施形態に係るバーコード処理装置の概略構成を示す図である。バーコード処理装置は、例えば郵便物区分機に適用することができる。
【0017】
図1に示すように、バーコード処理装置は、オペレーション部1、蛍光バーコード用スキャナ2、制御PC3、蛍光バーコード認識部5、HUB6、通信ケーブル7、搬送ベルト8を備えている。
【0018】
蛍光バーコード用スキャナ2は、搬送ベルト8を搬送される郵便物等の書状(読取対象物)9の画像(蛍光画像)を不可視光により読み取る。書状9には蛍光バーコード(識別情報)が印字されており、蛍光バーコード用スキャナ2は、この蛍光バーコードを読み取るものである。なお、本実施形態では、蛍光バーコードの検出及び認識について説明するが、蛍光バーコードに限定されるものではない。本実施形態で説明するバーコードの検出及び認識処理は、可視光バーコードにも適用することができる。
【0019】
蛍光バーコード認識部5は、蛍光バーコード用スキャナ2により読み取られた読取画像を処理する画像処理部である。
【0020】
オペレーション部1は、例えばPC(パーソナルコンピュータ)により構成することができる。同様に、制御部3も、例えばPCにより構成することができる。同様に、蛍光バーコード認識部5も、例えばPCにより構成することができる。
【0021】
通信ケーブル7は、蛍光バーコード用スキャナ2と蛍光バーコード認識部5とを接続し、HUB6とオペレーション部1、制御部3、及び蛍光バーコード認識部5とを接続する。
【0022】
例えば、図2に示すように、蛍光バーコード用スキャナ2は、バーコードが印字記録された画像を読み取る(ST201)。蛍光バーコード用スキャナ2は、ドット連結フィルタリング連結処理により読取画像からインクドット画像を抽出し、インクドット画像を連結し、また、二値画像作成処理により任意の閾値でバー成分を抽出する(ST202)(ST203)。さらに、蛍光バーコード認識部5は、ラベリング処理により二値画像から複数の画素の塊を抽出し、また、バー候補選別処理により複数の画素の塊の中からバー候補を選出する(ST204、ST205)。さらに、蛍光バーコード認識部5は、スキュー角推定処理によりバー候補の並びからスキュー角度を計算し、プロファイル基準線を決定する(ST206)。
【0023】
さらに、蛍光バーコード認識部5は、ラベル輪郭追跡処理により各々のバー候補のラベルに対して輪郭を追跡し方向成分を投票する(ST207、ST208)。さらに、蛍光バーコード認識部5は、スラント角度算出処理により投票結果からバー候補の傾き(スラント角度)を推定する(ST209)。さらに、蛍光バーコード認識部5は、角度補正画像作成処理により推定スラント角度の分だけ搬送方向に読取画像をシフト補正した補正画像を作成する(ST210)。さらに、蛍光バーコード認識部5は、個別バー判定処理により補正画像に含まれた各バーを分類し、また、復号処理によりバーの並びに基づきバーコードを復号する(ST211、ST212)。
【0024】
さらに、蛍光バーコード認識部5は、上記した復号結果が適当でなかった場合に(ST213、NO)、一定範囲の角度で何通りかのスラント角度を仮定して、仮定された何通りかのスラント角度でバー候補を作成し直す(ST214)。さらに、蛍光バーコード認識部5は、復号処理により、仮定された何通りかのスラント角度で作成し直されたバー候補の並びに基づきバーコードを復号し、最適な認識結果を選択し、認識結果を出力する(ST215、ST216、ST217)。
【0025】
ただし、二値化後のラベリングに関しては、微分二値ラベリングでもよいし、通常の二値ラベリングでも良い。上記したバーコードの認識処理の手順は一例であり、本発明はこの認識処理の手順に限定されるものではない。
【0026】
以下、具体的なバーコード処理について説明する。なお、蛍光バーコード用スキャナ2は事前にキャリブレーションされているものとする。つまり、蛍光バーコード用スキャナ2の位置合わせ等は完了しているものとする。
【0027】
図3に示すように、認識の対象となる蛍光バーコードは、例えば、4ステートバーコードである。4ステートバーコードとしては、タイミングバーB1、アセンダーバーB2、ディセンダーバーB3、ロングバーB4がある。タイミングバーB1は他のどのバーよりも短く、アセンダーB2はタイミングバーB1に比して上方向だけが長いバーであり、ディセンダーB3はタイミングバーB1に比して下方向だけが長いバーであり、ロングバーB4はタイミングバーB1に比して上下方向に長いバーである。なお、認識の対象となる蛍光バーコードは、リードソロモン式の復号による誤り訂正機能を備えている。
【0028】
蛍光バーコード用スキャナ2は、書状(郵便物)の画像を読み取り、図3に示すようなインクドットの画像(正しくバーコードが印刷された書状の画像)を取得する。或いは、後者は、バーコードの印刷時に、書状の搬送速度とインクジェットプリンタのインク噴出タイミングとの調整が不十分である場合に、蛍光バーコード用スキャナ2は、書状(郵便物)の画像を読み取り、図4に示すようなインクドットの画像(スラント状態のバーコードが印刷された書状の画像)を取得する。
【0029】
以下、スラントに対応した一定幅マスクによるフィルタリング処理(スラント対応フィルタリング処理)について説明する。
【0030】
図3に示すような正しく印刷されたバーコードに対しては横幅を絞った縦長のマスク(例えば1ラインに対応したマスク)を使用したフィルタリングにより、蛍光バーコード認識部5は、図5に示すようにドット連結処理によりバーを生成することができる。また、このときのフィルタリングの手法は、メディアンフィルタリングでも最大値フィルタリングでも構わない。
【0031】
ただ、このような横幅を絞った縦長のマスクを使用したフィルタリングは、スラント状態のバーで構成されたバーコード認識処理には適当ではない。そこで、本実施形態では、一定の横幅を持った縦長のマスク(複数ラインに対応したマスク)を使用したフィルタリングを適用する。例えば、バーコードを構成する各バーが複数のインクドットで形成され、しかも各バーが所定間隔D(図5参照)で配置されることが定義されているとする。このように定義されたバーコードに対して、蛍光バーコード用スキャナ2は、所定間隔Dより狭く、1本のバーの幅W(図5参照)より広く、且つ最も長い1本のバーの長さL(図5参照)に対応したマスクにより読取画像をフィルタリングし、蛍光バーコード認識部5は、このフィルタリングの結果に基づき複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識する。
【0032】
つまり、正しくバーコードが印刷された書状の画像に対しては、図5に示すような横幅の狭いマスク(例えば1ラインに対応したマスク)によるフィルタリングにより、バーを検出することができる。しかしながら、スラント状態のバーにより構成されたバーコードが印刷された書状の画像に対しては、図5に示すようなマスクによるフィルタリングでは不十分である。そこで、図6に示すような幅広のマスク(例えばバーの幅より広く且つ最も長いバーの長さより長いマスク)によるスラント対応フィルタリングにより、正しく記録されたバー及びスラント状態のバーのどちらでも検出することができる。
【0033】
このとき、フィルタリング処理において、処理高速化のために、マスク範囲内の輝度最大値を設定し、輝度最大値の画素を抽出するようにしてもよいし、マスク範囲内の全画素を輝度順に並べたときのX番目の輝度値を設定し、X番目の輝度値の画素を抽出するようにしてもよい。
【0034】
蛍光バーコード認識部5は、フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき二値化画像を生成する。例えば、画像の濃度ヒストグラムを元に大津法などで算出された閾値に基づく濃度二値化処理により二値化画像を生成する。或いは、固定閾値に基づく二値化処理により二値化画像を生成してもよいし、微分二値化処理により二値化画像を生成してもよい。
【0035】
続いて、蛍光バーコード認識部5は、二値化画像に対してラベリング処理を適用する。ラベリング処理は、二値化処理で抽出した画素の連結を塊として登録する処理である。連結を確認する方向として、例えば4方向又は8方向などがある。
【0036】
その後、蛍光バーコード認識部5は、ラベリング処理で抽出されたラベルが、バー候補として相応しいか否か判定する。つまり、蛍光バーコード認識部5は、ラベリング処理で抽出されたラベルが、バー候補として適切なサイズかどうか判定する。例えば、書状背景などが蛍光模様で光っている場合、この蛍光模様に対応したラベルが、バー候補として誤って抽出されてしまうことがある。そこで、このような誤ったバー候補を除外するために、抽出されたラベルがバー候補として適切なサイズかどうか判定する。具体的には、抽出されたラベルがバー候補として適切な高さ、幅、面積であるか否かを選別する。
【0037】
次に、蛍光バーコード認識部5は、バーコードのスキュー角を推定する。例えば、蛍光バーコード認識部5は、選別された複数のラベルのうちの左端と右端のラベルを基準に、これら複数のラベルにより構成されるバーコードのスキュー角度を推定する。また、スキュー角推定時に、蛍光バーコード認識部5は、左端と右端のラベルからバーコードの基準線を決定する。
【0038】
以下、バー輪郭追跡結果からスラント角を推定して補正画像作成し、補正画像中のバーコードを認識する認識処理(一次認識処理)について説明する。なお、この一次認識処理は、上記説明したスラント対応フィルタリング処理と組み合わせて実施することもできるし、単独で実施することもできる。
【0039】
まず、スラント角の推定について説明する。前述のラベル選別処理で選別されたラベルの輪郭部分(エッジ部分)は、図7に示す通りである。図7は、選別ラベルの輪郭部分(エッジ部分)を拡大した図である。図7に示すように、蛍光バーコード認識部5は、選別ラベルの輪郭を追跡する。図7中の矢印は、ラベル輪郭追跡処理を示す矢印である。
【0040】
蛍光バーコード認識部5は、ラベル輪郭追跡処理により、方向成分の配列を得る。さらに、蛍光バーコード認識部5は、その方向成分の配列に対して、X移動方向とY移動方向を2個単位で区切り、正負方向を同一とした8方向(図8参照)に投票し、方向投票成分を得る。さらに、蛍光バーコード認識部5は、各選別ラベルに対して同様の投票を繰り返して、得られた方向投票成分から、以下の式1、式2で推定スラント角度θを算出する。
【数1】
【0041】
【数2】
【0042】
図9に示すように、蛍光バーコード認識部5は、各選別ラベルの輪郭追跡の投票結果によって求めた推定スラント角度θと、スキュー推定処理の際に求めた基準線とを利用し、補正画像を作成する。つまり、蛍光バーコード認識部5は、推定スラント角度θと基準線(座標値)からの高さ(距離)とに基づき、横ずらし幅(w)に従って画素をずらして、補正画像を作成する。
【0043】
なお、蛍光バーコード認識部5は、各高さ(v)における横ずらし幅(w)を、基準線のバー長手方向の座標(h)と推定スラント角度(θ)から、下記式3に示すように算出する。
【数3】
【0044】
なお、蛍光バーコード認識部5は、横ずらし幅(w)を適用する画素が基準線の上側又は下側のどちらに位置するかによって、横ずらし幅(w)の正負を逆転する。
【0045】
図9に示すように補正画像が生成されれば、補正画像中のバーは、スラントしていない状態のバー、つまり正しく印字された状態のバーとなる。よって、この補正画像に対してバーコード認識処理を適用することにより、バーコードを高精度に認識することが可能となる。
【0046】
なお、蛍光バーコード認識部5が、効率よくスラント角推定の投票を行うために、選別ラベルの中から長いバー候補(最も長いバー候補)だけを選出して、選出されたバー候補だけを投票対象とし、投票対象となったバー候補を利用しスラント角度を推定するようにしてもよい。また、バー候補の本数が多い場合などは、更なる処理速度の向上を目的として、蛍光バーコード認識部5は、長いバー候補(最も長いバー候補)からさらに一部のバーをサンプリングして、サンプリングされたバー候補だけを投票対象とし、投票対象となったバー候補を利用しスラント角度を推定するようにしてもよい。或いは、蛍光バーコード認識部5は、一定以下の横幅のバー候補(最も長いバー候補)だけを選出し、選出されたバー候補だけを投票対象とし、投票対象となったバー候補を利用しスラント角度を推定するようにしてもよい。
【0047】
ここで、図10を参照し、補正画像に対する認識処理の一例について説明する。バーの並びを入力情報とし、入力情報を復号し、住所情報が取得される(ST1001)。また、復号結果が多数得られた場合には、適切な復号結果を採用する(ST1002)。例えば、誤り訂正数に基づき適切な復号結果が選択される。適切な復号結果が選択されたら、復号結果に対応した認識結果を出力する(ST1003)。
【0048】
また、蛍光バーコード認識部5は、上記した補正画像中のバーコードを認識する認識処理(一次認識処理)により得られた認識結果が適切でない場合、再認識処理(二次認識処理)を実行する。再認識処理とは、一定範囲の角度で何通りかのスラント角度を仮定して、仮定された何通りかのスラント角度でバー候補を作成し直し、復号処理により、仮定された何通りかのスラント角度で作成し直されたバー候補の並びに基づきバーコードを復号し、最適な認識結果(復号結果)を選択する処理である。以下、詳細について説明する。
【0049】
なお、この二次認識処理は、上記説明したスラント対応フィルタリング処理と組み合わせて実施することもできるし、上記説明したスラント対応フィルタリング処理及び一次認識処理と組み合わせて実施することもできるし、単独で実施することもできる。
【0050】
図11に示すように、蛍光バーコード認識部5は、基準線からの高さ(距離)に応じて、上側得点と下側得点を一定ピッチで加算する加点プロファイル方式に基づき、バー候補を選出する。つまり、図11に示すように、選別ラベルを構成する抽出画素の存在位置に得点を与え得点マップを生成し、この得点マップに基づき一定ピッチで各得点を集計し、集計結果に基づきバー候補を選出する。スラントした状態のバーは、基準線から離れるほど、得点の位置がずれる。つまり、スラントした状態のバーは、得点マップに基づき一定ピッチで各得点を集計しても、バー候補として選出できなくなってしまう。
【0051】
そこで、一定範囲の角度で何通りかのスラント角度を仮定する。例えば、一定範囲は、仕様で許容されたスラント角に基づき算出された範囲であってもよいし、実際に出現しているスラント角の傾向に基づき算出した範囲であってもよい。続いて、蛍光バーコード認識部5は、一定範囲の角度で何通りかのスラント角度(例えば図12に示すように5度、10度)を仮定して、仮定スラント角度と基準線の座標からの高さ(距離)とに基づき、横ずらし幅に従って画素をずらして、各仮定スラント角度に応じた補正得点マップを生成する。その上で、蛍光バーコード認識部5は、各補正得点マップに基づき、得点を集計し、集計結果に基づきバー候補を選出する。さらに、蛍光バーコード認識部5は、各補正得点マップに基づき選出された複数のバー候補の並びからバーコードを復号する。
【0052】
蛍光バーコード認識部5は、バーコードの復号結果に基づき、バーコードの認識結果を出力する。例えば、蛍光バーコード認識部5は、ある補正得点マップに基づき選出された複数のバー候補の並びからバーコードが正しく復号できた場合、この復号結果に基づきバーコードの認識結果を出力する。或いは、蛍光バーコード認識部5は、最もエラー訂正数の少なかった復号結果に基づきバーコードの認識結果を出力する。
【0053】
なお、二次認識処理において、一次認識処理の補正画像を利用するようにしてもよい。つまり、補正画像に基づき得点マップを生成し、得点マップに基づき複数のバー候補を選出し、選出された複数のバーコードの並びからバーコードを復号してもよい。また、補正画像に基づき補正得点マップを生成し、補正得点マップに基づき複数のバー候補を選出し、選出された複数のバーコードの並びからバーコードを復号してもよい。
【0054】
以上により、本実施形態のバーコード処理装置は、スラント状態のバーにより構成されたバーコードであっても、高精度に認識することができる。例えば、上記したスラント対応フィルタリング処理により、バーコードの認識率を向上することができる。また、上記した一次認識処理により、バーコードの認識率を向上することができる。また、上記した二次認識処理により、バーコードの認識率を向上することができる。さらに、スラント対応フィルタリング処理、一次認識処理、二次認識処理のうちの少なくとも二つの処理の組み合わせにより、さらにバーコードの認識率を向上することができる。
【0055】
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【0056】
1…オペレーション部、2…蛍光バーコード用スキャナ、3…制御PC、5…蛍光バーコード認識部、6…HUB、7…通信ケーブル、8…搬送ベルト
【技術分野】
【0001】
本発明は、郵便物等に印刷されたバーコードを認識するバーコード処理装置及びバーコード処理方法に関する。
【背景技術】
【0002】
郵便物処理の分野では、宛先情報に対応したバーコードを郵便物に記録することが知られている。例えば、郵便物処理機は、高速搬送される郵便物の画像を読み取り、画像中の宛先情報を認識し、認識した宛先情報に対応したバーコードを郵便物に印字記録する。或いは、郵便物処理機が宛先情報を認識できない場合には、オペレータが、表示された郵便物画像を目視し、宛先情報を入力する。これに対応して、郵便物処理機は、入力された宛先情報に対応したバーコードを郵便物に印字記録する。
【0003】
上記したように郵便物に対してバーコードが印字記録された後は、郵便物はバーコードに基づき処理される。例えば、郵便物区分機は、郵便物に印字記録されたバーコードを読み取り、読み取ったバーコードに基づき郵便物を区分する。
【0004】
正確に郵便物を区分するためには、正確に郵便物画像からバーコードを読み取る必要がある。正確にバーコードを処理するための技術として、例えば、郵便物画像の中からバーコードを検出するバーコード検出技術、及びバーコードを読み取るバーコード読取技術などが開示されている(特許文献1、2参照)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2005−266907号公報
【特許文献2】特開2008−84218号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記した技術では、郵便物に印字されたスラント状態のバーを正しく認識することが難しい。
【0007】
例えば、郵便物処理装置は、高速搬送される郵便物に対して、インクジェットプリンタによりバーコードを印字記録する。そのため、郵便物の搬送速度とインクジェットプリンタのインク噴出タイミングとの調整が不十分である場合、バーコードを構成するバーが傾いた状態(スラント状態)で印字されることがある。スラント状態のバーは、上記した技術では正しく認識することが難しい。
【0008】
例えば、特許文献1には、フィルタリングによりバーコードを検出する技術が開示されているが、スラント状態のバー検出に関する技術は開示されていない。また、特許文献2には、スキュー状態のバーコードに対応する技術が開示されているが、スラント状態のバー検出に関する技術は開示されていない。
【0009】
なお、スキュー状態のバーコードとは、バーコードを構成する各バーの並びが郵便物の搬送方向に対して斜めになっている状態のバーコード、つまり、バーコード全体が郵便物の搬送方向に対して斜めに印字された状態のバーコードである。これに対してスラント状態のバーにより構成されたバーコードとは、バーコードを構成する各バーが郵便物の搬送方向に対して斜めになっているものの、バーコード全体が郵便物の搬送方向に沿って印字された状態のバーコードである。
【0010】
本発明の目的は、スラント状態のバーコードの認識精度に優れたバーコード処理装置及びバーコード処理方法を提供することにある。
【課題を解決するための手段】
【0011】
本発明の一実施形態に係るバーコード処理装置は、1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、を備える。
【0012】
本発明の一実施形態に係るバーコード処理方法は、1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識する。
【発明の効果】
【0013】
本発明によれば、スラント状態のバーコードの認識精度に優れたバーコード処理装置及びバーコード処理方法を提供できる。
【図面の簡単な説明】
【0014】
【図1】本発明の一実施形態に係るバーコード処理装置の概略構成を示す図である。
【図2】本発明の一実施形態に係るバーコード処理の概略を説明するためのフローチャートである。
【図3】4ステートバーコードの一例を示す図である。
【図4】スラント状態のバー(インクドットの集合体)により構成されたバーコードの一例を示す図である。
【図5】正しく印刷されたバーコードに対するフィルタリング処理及びドット連結処理の結果の一例を示す図である。
【図6】スラント状態のバーコードに対するスラント対応フィルタリング処理及びドット連結処理の結果の一例を示す図である。
【図7】ラベル輪郭追跡処理を説明するための図である。
【図8】輪郭追跡時の8方向の投票方向成分を示す図である。
【図9】推定スラント角度θと基準線からの高さとに基づく補正画像の生成を示す図である。
【図10】補正画像に対する認識処理の一例を示すフローチャートである。
【図11】得点マップの生成を説明するための図である。
【図12】仮定スラント角度に基づく補正得点マップの生成を説明するための図である。
【発明を実施するための形態】
【0015】
以下、図面を参照し、本発明の実施形態について説明する。
【0016】
図1は、本発明の一実施形態に係るバーコード処理装置の概略構成を示す図である。バーコード処理装置は、例えば郵便物区分機に適用することができる。
【0017】
図1に示すように、バーコード処理装置は、オペレーション部1、蛍光バーコード用スキャナ2、制御PC3、蛍光バーコード認識部5、HUB6、通信ケーブル7、搬送ベルト8を備えている。
【0018】
蛍光バーコード用スキャナ2は、搬送ベルト8を搬送される郵便物等の書状(読取対象物)9の画像(蛍光画像)を不可視光により読み取る。書状9には蛍光バーコード(識別情報)が印字されており、蛍光バーコード用スキャナ2は、この蛍光バーコードを読み取るものである。なお、本実施形態では、蛍光バーコードの検出及び認識について説明するが、蛍光バーコードに限定されるものではない。本実施形態で説明するバーコードの検出及び認識処理は、可視光バーコードにも適用することができる。
【0019】
蛍光バーコード認識部5は、蛍光バーコード用スキャナ2により読み取られた読取画像を処理する画像処理部である。
【0020】
オペレーション部1は、例えばPC(パーソナルコンピュータ)により構成することができる。同様に、制御部3も、例えばPCにより構成することができる。同様に、蛍光バーコード認識部5も、例えばPCにより構成することができる。
【0021】
通信ケーブル7は、蛍光バーコード用スキャナ2と蛍光バーコード認識部5とを接続し、HUB6とオペレーション部1、制御部3、及び蛍光バーコード認識部5とを接続する。
【0022】
例えば、図2に示すように、蛍光バーコード用スキャナ2は、バーコードが印字記録された画像を読み取る(ST201)。蛍光バーコード用スキャナ2は、ドット連結フィルタリング連結処理により読取画像からインクドット画像を抽出し、インクドット画像を連結し、また、二値画像作成処理により任意の閾値でバー成分を抽出する(ST202)(ST203)。さらに、蛍光バーコード認識部5は、ラベリング処理により二値画像から複数の画素の塊を抽出し、また、バー候補選別処理により複数の画素の塊の中からバー候補を選出する(ST204、ST205)。さらに、蛍光バーコード認識部5は、スキュー角推定処理によりバー候補の並びからスキュー角度を計算し、プロファイル基準線を決定する(ST206)。
【0023】
さらに、蛍光バーコード認識部5は、ラベル輪郭追跡処理により各々のバー候補のラベルに対して輪郭を追跡し方向成分を投票する(ST207、ST208)。さらに、蛍光バーコード認識部5は、スラント角度算出処理により投票結果からバー候補の傾き(スラント角度)を推定する(ST209)。さらに、蛍光バーコード認識部5は、角度補正画像作成処理により推定スラント角度の分だけ搬送方向に読取画像をシフト補正した補正画像を作成する(ST210)。さらに、蛍光バーコード認識部5は、個別バー判定処理により補正画像に含まれた各バーを分類し、また、復号処理によりバーの並びに基づきバーコードを復号する(ST211、ST212)。
【0024】
さらに、蛍光バーコード認識部5は、上記した復号結果が適当でなかった場合に(ST213、NO)、一定範囲の角度で何通りかのスラント角度を仮定して、仮定された何通りかのスラント角度でバー候補を作成し直す(ST214)。さらに、蛍光バーコード認識部5は、復号処理により、仮定された何通りかのスラント角度で作成し直されたバー候補の並びに基づきバーコードを復号し、最適な認識結果を選択し、認識結果を出力する(ST215、ST216、ST217)。
【0025】
ただし、二値化後のラベリングに関しては、微分二値ラベリングでもよいし、通常の二値ラベリングでも良い。上記したバーコードの認識処理の手順は一例であり、本発明はこの認識処理の手順に限定されるものではない。
【0026】
以下、具体的なバーコード処理について説明する。なお、蛍光バーコード用スキャナ2は事前にキャリブレーションされているものとする。つまり、蛍光バーコード用スキャナ2の位置合わせ等は完了しているものとする。
【0027】
図3に示すように、認識の対象となる蛍光バーコードは、例えば、4ステートバーコードである。4ステートバーコードとしては、タイミングバーB1、アセンダーバーB2、ディセンダーバーB3、ロングバーB4がある。タイミングバーB1は他のどのバーよりも短く、アセンダーB2はタイミングバーB1に比して上方向だけが長いバーであり、ディセンダーB3はタイミングバーB1に比して下方向だけが長いバーであり、ロングバーB4はタイミングバーB1に比して上下方向に長いバーである。なお、認識の対象となる蛍光バーコードは、リードソロモン式の復号による誤り訂正機能を備えている。
【0028】
蛍光バーコード用スキャナ2は、書状(郵便物)の画像を読み取り、図3に示すようなインクドットの画像(正しくバーコードが印刷された書状の画像)を取得する。或いは、後者は、バーコードの印刷時に、書状の搬送速度とインクジェットプリンタのインク噴出タイミングとの調整が不十分である場合に、蛍光バーコード用スキャナ2は、書状(郵便物)の画像を読み取り、図4に示すようなインクドットの画像(スラント状態のバーコードが印刷された書状の画像)を取得する。
【0029】
以下、スラントに対応した一定幅マスクによるフィルタリング処理(スラント対応フィルタリング処理)について説明する。
【0030】
図3に示すような正しく印刷されたバーコードに対しては横幅を絞った縦長のマスク(例えば1ラインに対応したマスク)を使用したフィルタリングにより、蛍光バーコード認識部5は、図5に示すようにドット連結処理によりバーを生成することができる。また、このときのフィルタリングの手法は、メディアンフィルタリングでも最大値フィルタリングでも構わない。
【0031】
ただ、このような横幅を絞った縦長のマスクを使用したフィルタリングは、スラント状態のバーで構成されたバーコード認識処理には適当ではない。そこで、本実施形態では、一定の横幅を持った縦長のマスク(複数ラインに対応したマスク)を使用したフィルタリングを適用する。例えば、バーコードを構成する各バーが複数のインクドットで形成され、しかも各バーが所定間隔D(図5参照)で配置されることが定義されているとする。このように定義されたバーコードに対して、蛍光バーコード用スキャナ2は、所定間隔Dより狭く、1本のバーの幅W(図5参照)より広く、且つ最も長い1本のバーの長さL(図5参照)に対応したマスクにより読取画像をフィルタリングし、蛍光バーコード認識部5は、このフィルタリングの結果に基づき複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識する。
【0032】
つまり、正しくバーコードが印刷された書状の画像に対しては、図5に示すような横幅の狭いマスク(例えば1ラインに対応したマスク)によるフィルタリングにより、バーを検出することができる。しかしながら、スラント状態のバーにより構成されたバーコードが印刷された書状の画像に対しては、図5に示すようなマスクによるフィルタリングでは不十分である。そこで、図6に示すような幅広のマスク(例えばバーの幅より広く且つ最も長いバーの長さより長いマスク)によるスラント対応フィルタリングにより、正しく記録されたバー及びスラント状態のバーのどちらでも検出することができる。
【0033】
このとき、フィルタリング処理において、処理高速化のために、マスク範囲内の輝度最大値を設定し、輝度最大値の画素を抽出するようにしてもよいし、マスク範囲内の全画素を輝度順に並べたときのX番目の輝度値を設定し、X番目の輝度値の画素を抽出するようにしてもよい。
【0034】
蛍光バーコード認識部5は、フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき二値化画像を生成する。例えば、画像の濃度ヒストグラムを元に大津法などで算出された閾値に基づく濃度二値化処理により二値化画像を生成する。或いは、固定閾値に基づく二値化処理により二値化画像を生成してもよいし、微分二値化処理により二値化画像を生成してもよい。
【0035】
続いて、蛍光バーコード認識部5は、二値化画像に対してラベリング処理を適用する。ラベリング処理は、二値化処理で抽出した画素の連結を塊として登録する処理である。連結を確認する方向として、例えば4方向又は8方向などがある。
【0036】
その後、蛍光バーコード認識部5は、ラベリング処理で抽出されたラベルが、バー候補として相応しいか否か判定する。つまり、蛍光バーコード認識部5は、ラベリング処理で抽出されたラベルが、バー候補として適切なサイズかどうか判定する。例えば、書状背景などが蛍光模様で光っている場合、この蛍光模様に対応したラベルが、バー候補として誤って抽出されてしまうことがある。そこで、このような誤ったバー候補を除外するために、抽出されたラベルがバー候補として適切なサイズかどうか判定する。具体的には、抽出されたラベルがバー候補として適切な高さ、幅、面積であるか否かを選別する。
【0037】
次に、蛍光バーコード認識部5は、バーコードのスキュー角を推定する。例えば、蛍光バーコード認識部5は、選別された複数のラベルのうちの左端と右端のラベルを基準に、これら複数のラベルにより構成されるバーコードのスキュー角度を推定する。また、スキュー角推定時に、蛍光バーコード認識部5は、左端と右端のラベルからバーコードの基準線を決定する。
【0038】
以下、バー輪郭追跡結果からスラント角を推定して補正画像作成し、補正画像中のバーコードを認識する認識処理(一次認識処理)について説明する。なお、この一次認識処理は、上記説明したスラント対応フィルタリング処理と組み合わせて実施することもできるし、単独で実施することもできる。
【0039】
まず、スラント角の推定について説明する。前述のラベル選別処理で選別されたラベルの輪郭部分(エッジ部分)は、図7に示す通りである。図7は、選別ラベルの輪郭部分(エッジ部分)を拡大した図である。図7に示すように、蛍光バーコード認識部5は、選別ラベルの輪郭を追跡する。図7中の矢印は、ラベル輪郭追跡処理を示す矢印である。
【0040】
蛍光バーコード認識部5は、ラベル輪郭追跡処理により、方向成分の配列を得る。さらに、蛍光バーコード認識部5は、その方向成分の配列に対して、X移動方向とY移動方向を2個単位で区切り、正負方向を同一とした8方向(図8参照)に投票し、方向投票成分を得る。さらに、蛍光バーコード認識部5は、各選別ラベルに対して同様の投票を繰り返して、得られた方向投票成分から、以下の式1、式2で推定スラント角度θを算出する。
【数1】
【0041】
【数2】
【0042】
図9に示すように、蛍光バーコード認識部5は、各選別ラベルの輪郭追跡の投票結果によって求めた推定スラント角度θと、スキュー推定処理の際に求めた基準線とを利用し、補正画像を作成する。つまり、蛍光バーコード認識部5は、推定スラント角度θと基準線(座標値)からの高さ(距離)とに基づき、横ずらし幅(w)に従って画素をずらして、補正画像を作成する。
【0043】
なお、蛍光バーコード認識部5は、各高さ(v)における横ずらし幅(w)を、基準線のバー長手方向の座標(h)と推定スラント角度(θ)から、下記式3に示すように算出する。
【数3】
【0044】
なお、蛍光バーコード認識部5は、横ずらし幅(w)を適用する画素が基準線の上側又は下側のどちらに位置するかによって、横ずらし幅(w)の正負を逆転する。
【0045】
図9に示すように補正画像が生成されれば、補正画像中のバーは、スラントしていない状態のバー、つまり正しく印字された状態のバーとなる。よって、この補正画像に対してバーコード認識処理を適用することにより、バーコードを高精度に認識することが可能となる。
【0046】
なお、蛍光バーコード認識部5が、効率よくスラント角推定の投票を行うために、選別ラベルの中から長いバー候補(最も長いバー候補)だけを選出して、選出されたバー候補だけを投票対象とし、投票対象となったバー候補を利用しスラント角度を推定するようにしてもよい。また、バー候補の本数が多い場合などは、更なる処理速度の向上を目的として、蛍光バーコード認識部5は、長いバー候補(最も長いバー候補)からさらに一部のバーをサンプリングして、サンプリングされたバー候補だけを投票対象とし、投票対象となったバー候補を利用しスラント角度を推定するようにしてもよい。或いは、蛍光バーコード認識部5は、一定以下の横幅のバー候補(最も長いバー候補)だけを選出し、選出されたバー候補だけを投票対象とし、投票対象となったバー候補を利用しスラント角度を推定するようにしてもよい。
【0047】
ここで、図10を参照し、補正画像に対する認識処理の一例について説明する。バーの並びを入力情報とし、入力情報を復号し、住所情報が取得される(ST1001)。また、復号結果が多数得られた場合には、適切な復号結果を採用する(ST1002)。例えば、誤り訂正数に基づき適切な復号結果が選択される。適切な復号結果が選択されたら、復号結果に対応した認識結果を出力する(ST1003)。
【0048】
また、蛍光バーコード認識部5は、上記した補正画像中のバーコードを認識する認識処理(一次認識処理)により得られた認識結果が適切でない場合、再認識処理(二次認識処理)を実行する。再認識処理とは、一定範囲の角度で何通りかのスラント角度を仮定して、仮定された何通りかのスラント角度でバー候補を作成し直し、復号処理により、仮定された何通りかのスラント角度で作成し直されたバー候補の並びに基づきバーコードを復号し、最適な認識結果(復号結果)を選択する処理である。以下、詳細について説明する。
【0049】
なお、この二次認識処理は、上記説明したスラント対応フィルタリング処理と組み合わせて実施することもできるし、上記説明したスラント対応フィルタリング処理及び一次認識処理と組み合わせて実施することもできるし、単独で実施することもできる。
【0050】
図11に示すように、蛍光バーコード認識部5は、基準線からの高さ(距離)に応じて、上側得点と下側得点を一定ピッチで加算する加点プロファイル方式に基づき、バー候補を選出する。つまり、図11に示すように、選別ラベルを構成する抽出画素の存在位置に得点を与え得点マップを生成し、この得点マップに基づき一定ピッチで各得点を集計し、集計結果に基づきバー候補を選出する。スラントした状態のバーは、基準線から離れるほど、得点の位置がずれる。つまり、スラントした状態のバーは、得点マップに基づき一定ピッチで各得点を集計しても、バー候補として選出できなくなってしまう。
【0051】
そこで、一定範囲の角度で何通りかのスラント角度を仮定する。例えば、一定範囲は、仕様で許容されたスラント角に基づき算出された範囲であってもよいし、実際に出現しているスラント角の傾向に基づき算出した範囲であってもよい。続いて、蛍光バーコード認識部5は、一定範囲の角度で何通りかのスラント角度(例えば図12に示すように5度、10度)を仮定して、仮定スラント角度と基準線の座標からの高さ(距離)とに基づき、横ずらし幅に従って画素をずらして、各仮定スラント角度に応じた補正得点マップを生成する。その上で、蛍光バーコード認識部5は、各補正得点マップに基づき、得点を集計し、集計結果に基づきバー候補を選出する。さらに、蛍光バーコード認識部5は、各補正得点マップに基づき選出された複数のバー候補の並びからバーコードを復号する。
【0052】
蛍光バーコード認識部5は、バーコードの復号結果に基づき、バーコードの認識結果を出力する。例えば、蛍光バーコード認識部5は、ある補正得点マップに基づき選出された複数のバー候補の並びからバーコードが正しく復号できた場合、この復号結果に基づきバーコードの認識結果を出力する。或いは、蛍光バーコード認識部5は、最もエラー訂正数の少なかった復号結果に基づきバーコードの認識結果を出力する。
【0053】
なお、二次認識処理において、一次認識処理の補正画像を利用するようにしてもよい。つまり、補正画像に基づき得点マップを生成し、得点マップに基づき複数のバー候補を選出し、選出された複数のバーコードの並びからバーコードを復号してもよい。また、補正画像に基づき補正得点マップを生成し、補正得点マップに基づき複数のバー候補を選出し、選出された複数のバーコードの並びからバーコードを復号してもよい。
【0054】
以上により、本実施形態のバーコード処理装置は、スラント状態のバーにより構成されたバーコードであっても、高精度に認識することができる。例えば、上記したスラント対応フィルタリング処理により、バーコードの認識率を向上することができる。また、上記した一次認識処理により、バーコードの認識率を向上することができる。また、上記した二次認識処理により、バーコードの認識率を向上することができる。さらに、スラント対応フィルタリング処理、一次認識処理、二次認識処理のうちの少なくとも二つの処理の組み合わせにより、さらにバーコードの認識率を向上することができる。
【0055】
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【符号の説明】
【0056】
1…オペレーション部、2…蛍光バーコード用スキャナ、3…制御PC、5…蛍光バーコード認識部、6…HUB、7…通信ケーブル、8…搬送ベルト
【特許請求の範囲】
【請求項1】
1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、
前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、
を備えたことを特徴とするバーコード処理装置。
【請求項2】
前記バーコード認識手段は、前記マスクの範囲内の輝度最大値の画素を抽出することを特徴とする請求項1に記載のバーコード処理装置。
【請求項3】
前記バーコード認識手段は、前記マスクの範囲内のX番目(X:整数)の輝度の画素を抽出することを特徴とする請求項1に記載のバーコード処理装置。
【請求項4】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、
前記読取画像から複数のバー候補を抽出し、抽出された複数のバー候補のうちの所定のバー候補のスラント角度を推定し、推定スラント角度に基づき前記読取画像を補正し、補正画像から複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、
を備えたことを特徴とするバーコード処理装置。
【請求項5】
前記バーコード認識手段は、前記所定のバー候補の輪郭追跡によりスラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項6】
前記バーコード認識手段は、複数のバー候補の中から所定長より長いバー候補を選択し、選択されたバー候補に基づき前記スラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項7】
前記バーコード認識手段は、複数のバー候補の中から一定間隔でバー候補をサンプリングし、サンプリングされたバー候補に基づき前記スラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項8】
前記バーコード認識手段は、複数のバー候補の中から所定幅より短い幅のバー候補を選択し、選択されたバー候補に基づき前記スラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項9】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、
複数通りのスラント角度を仮定し、各スラント角度に基づき前記読取画像に含まれた複数のバー候補を補正し、これら補正された複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られたバーコード候補のデコード結果のうち最良のデコード結果を選択するバーコード認識手段と、
を備えたことを特徴とするバーコード処理装置。
【請求項10】
前記バーコード認識手段は、各スラント角度に基づき前記読取画像を補正し、これら補正画像に含まれた複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られたバーコード候補のデコード結果のうち最良のデコード結果を選択することを特徴とする請求項9に記載のバーコード処理装置。
【請求項11】
前記バーコード認識手段は、前記読取画像に含まれた複数のバー候補を構成する各画素に対して、複数のバー候補に共通する基準線からの距離に応じて得点付けした得点マップを生成し、各スラント角度に基づき得点マップを補正し、これら補正得点マップに含まれた複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られた複数の補正得点マップからのデコード結果のうち最良のデコード結果を選択することを特徴とする請求項9に記載のバーコード処理装置。
【請求項12】
前記バーコード認識手段は、誤り訂正数が最も少なかったデコード結果を最良のデコード結果として選択することを特徴とする請求項9に記載のバーコード処理装置。
【請求項13】
1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、
前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識する、
ことを特徴とするバーコード処理方法。
【請求項14】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、
前記読取画像から複数のバー候補を抽出し、抽出された複数のバー候補のうちの所定のバー候補のスラント角度を推定し、推定スラント角度に基づき前記読取画像を補正し、補正画像から複数本のバーにより構成されたバーコードを認識する、
ことを特徴とするバーコード処理方法。
【請求項15】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、
複数通りのスラント角度を仮定し、各スラント角度に基づき前記読取画像に含まれた複数のバー候補を補正し、これら補正された複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られたバーコード候補のデコード結果のうち最良のデコード結果を選択する、
ことを特徴とするバーコード処理方法。
【請求項1】
1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、
前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、
を備えたことを特徴とするバーコード処理装置。
【請求項2】
前記バーコード認識手段は、前記マスクの範囲内の輝度最大値の画素を抽出することを特徴とする請求項1に記載のバーコード処理装置。
【請求項3】
前記バーコード認識手段は、前記マスクの範囲内のX番目(X:整数)の輝度の画素を抽出することを特徴とする請求項1に記載のバーコード処理装置。
【請求項4】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、
前記読取画像から複数のバー候補を抽出し、抽出された複数のバー候補のうちの所定のバー候補のスラント角度を推定し、推定スラント角度に基づき前記読取画像を補正し、補正画像から複数本のバーにより構成されたバーコードを認識するバーコード認識手段と、
を備えたことを特徴とするバーコード処理装置。
【請求項5】
前記バーコード認識手段は、前記所定のバー候補の輪郭追跡によりスラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項6】
前記バーコード認識手段は、複数のバー候補の中から所定長より長いバー候補を選択し、選択されたバー候補に基づき前記スラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項7】
前記バーコード認識手段は、複数のバー候補の中から一定間隔でバー候補をサンプリングし、サンプリングされたバー候補に基づき前記スラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項8】
前記バーコード認識手段は、複数のバー候補の中から所定幅より短い幅のバー候補を選択し、選択されたバー候補に基づき前記スラント角度を推定することを特徴とする請求項4に記載のバーコード処理装置。
【請求項9】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取る読取手段と、
複数通りのスラント角度を仮定し、各スラント角度に基づき前記読取画像に含まれた複数のバー候補を補正し、これら補正された複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られたバーコード候補のデコード結果のうち最良のデコード結果を選択するバーコード認識手段と、
を備えたことを特徴とするバーコード処理装置。
【請求項10】
前記バーコード認識手段は、各スラント角度に基づき前記読取画像を補正し、これら補正画像に含まれた複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られたバーコード候補のデコード結果のうち最良のデコード結果を選択することを特徴とする請求項9に記載のバーコード処理装置。
【請求項11】
前記バーコード認識手段は、前記読取画像に含まれた複数のバー候補を構成する各画素に対して、複数のバー候補に共通する基準線からの距離に応じて得点付けした得点マップを生成し、各スラント角度に基づき得点マップを補正し、これら補正得点マップに含まれた複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られた複数の補正得点マップからのデコード結果のうち最良のデコード結果を選択することを特徴とする請求項9に記載のバーコード処理装置。
【請求項12】
前記バーコード認識手段は、誤り訂正数が最も少なかったデコード結果を最良のデコード結果として選択することを特徴とする請求項9に記載のバーコード処理装置。
【請求項13】
1本のバーは複数のインクドットで形成され、所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、
前記所定間隔より狭く1本のバーの幅より広く1本のバーの長さに対応したマスクにより前記読取画像をフィルタリングし、前記フィルタリングにより複数のインクドットの集合体を抽出し、抽出された集合体の複数のインクドットを連結し、連結結果に基づき1本のバーを検出し、検出された複数本のバーにより構成されたバーコードを認識する、
ことを特徴とするバーコード処理方法。
【請求項14】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、
前記読取画像から複数のバー候補を抽出し、抽出された複数のバー候補のうちの所定のバー候補のスラント角度を推定し、推定スラント角度に基づき前記読取画像を補正し、補正画像から複数本のバーにより構成されたバーコードを認識する、
ことを特徴とするバーコード処理方法。
【請求項15】
所定間隔で配置された複数本のバーにより構成されたバーコードの画像を読み取り、
複数通りのスラント角度を仮定し、各スラント角度に基づき前記読取画像に含まれた複数のバー候補を補正し、これら補正された複数のバー候補により構成されるバーコード候補をデコードし、各スラント角度に対応して得られたバーコード候補のデコード結果のうち最良のデコード結果を選択する、
ことを特徴とするバーコード処理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2010−277446(P2010−277446A)
【公開日】平成22年12月9日(2010.12.9)
【国際特許分類】
【出願番号】特願2009−131126(P2009−131126)
【出願日】平成21年5月29日(2009.5.29)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成22年12月9日(2010.12.9)
【国際特許分類】
【出願日】平成21年5月29日(2009.5.29)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]