(57)【特許請求の範囲】
【請求項１】
シンボル情報が記録された媒体を撮像する撮像手段と、
前記撮像手段により得られた前記媒体の画像データを記憶する画像メモリと、
前記画像データを取り込んで、前記シンボル情報が媒体に記録された位置を検出する位置検出処理部と、を有するシンボル情報読取装置であって、
前記位置検出処理部は、前記画像データを所定の領域で前記シンボル情報の走査線の走査方向に沿って輝度値の変動量を計算して、前記シンボル情報に該当する可能性のある仮領域を判定する仮領域判定部と、
前記仮領域について、前記走査線の走査方向に対して直交する方向に隣接する隣接領域との相関を求めて、相関値の高い領域を示すマップを作成する相関マップ作成部と、
前記相関マップについて、基本バーコードの有無を検索し、前記基本バーコードが存在すると判断した領域をラベリングするラベリング部と、
ラベリングされた領域に基づき、前記シンボル情報が媒体に記録された位置を検出する位置決定部と、を備えることを特徴とするシンボル情報読取装置。
【請求項２】
前記撮像手段は、密着型の一次元撮像素子であることを特徴とする請求項１記載のシンボル情報読取装置。
【請求項３】
シンボル情報が記録された媒体を撮像する撮像手段と、前記撮像手段により得られた前記媒体の画像データを記憶する画像メモリと、前記画像データを取り込んで、前記シンボル情報が媒体に記録された位置を検出する位置検出処理部と、を有するシンボル情報読取装置で使用されるシンボル情報読取方法であって、
前記位置検出処理部において、前記画像データを所定の領域で前記シンボル情報の走査線の走査方向に沿って輝度値の変動量を計算して、前記シンボル情報に該当する可能性がある仮領域か否かを判定する第１ステップと、
前記仮領域について、前記走査線の走査方向に対して直交する方向に隣接する隣接領域との相関を求めて、相関値の高い領域を示す相関マップを作成する第２ステップと、
前記相関マップについて、基本バーコードの有無を検索し、前記基本バーコードが存在すると判断した領域をラベリングする第３ステップと、
ラベリングされた領域に基づき、前記シンボル情報が媒体に記録された位置を検出する第４ステップと、を含むことを特徴とするシンボル情報読取方法。
【請求項４】
前記第２ステップは、前記仮領域について、前記走査線の走査方向に対して直交する方向に隣接する２つの隣接領域との相関を求めて、これら２つの相関値の双方が所定の閾値よりも高い相関値を示した場合と、これら２つの相関値のいずれか一方が所定の閾値よりも高い相関値を示した場合とを区別して、前記相関マップを作成することを特徴とする請求項３記載のシンボル情報読取方法。
【請求項５】
前記第３ステップにおいて、前記２つの相関値の双方が所定の閾値よりも高い相関値を示す領域が、前記基本バーコードが存在すると判断した領域としてラベリングされることを特徴とする請求項４記載のシンボル情報読取方法。
【請求項６】
前記第４ステップにおいて、ラベリングされた領域に基づいてシンボル情報が媒体に記録された上下左右の概略位置を決定し、当該概略位置で形成される矩形領域内のラベリング総数をカウントし、これを予めカウントされた前記相関マップ全体でのラベリング総数と一致するか否かを判定した後、前記シンボル情報が媒体に記録された位置を検出することを特徴とする請求項３から５のいずれか記載のシンボル情報読取方法。
【請求項７】
前記ラベリング部には、複数の基本バーコードパターンが記憶されていることを特徴とする請求項１又は２記載のシンボル情報読取装置。
【請求項８】
前記第３ステップにおいて、複数の基本バーコードパターンが前記位置検出処理部に記憶されており、当該複数の基本バーコードパターンを順次切り替えながら、基本バーコードパターンの検索を行うことを特徴とする請求項３から６のいずれか記載のシンボル情報読取方法。
【請求項９】
前記複数の基本バーコードパターンの順番を出現頻度に基づいて変更するようにしたことを特徴とする請求項８記載のシンボル情報読取方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バーコード等のシンボル情報を光学的に読み取るシンボル情報読取装置及びシンボル情報読取方法に関する。
【背景技術】
【０００２】
従来より、紙やプラスチック等の媒体に固有の情報を付与し、これを自動認識するための手段として、バーコードが普及している。商品管理や物流管理などでは、レーザスキャナやＣＣＤカメラ等のバーコード読取装置によって、商品に添付されたバーコードの情報読み取りが行われる。近年になって、ＩＤカードに個人番号をバーコードで記録しておき、ＩＤカードの全面をスキャンして画像を取り込み、その画像に基づいてバーコードを認識するタイプのバーコード読取装置が登場してきている。このようなタイプのバーコード読取装置の場合、二次元画像空間からバーコードシンボルを正確に検出できることが重要となり、その手法としてはいくつかある（特許文献１，２参照）。
【０００３】
特許文献１には、画像空間の局所領域で平行する走査線の導関数の類似度を評価値として、その領域がバーコードイメージを含んでいるかどうかを判定するものである。ここでの導関数は、微分演算によって導出されている。また、特許文献２には、バーコード候補領域の微分波形を求め、この波形のもついくつかの特徴量を数値化し、その数値の大小によって各領域がバーコードイメージを有しているか否かを判定している。ここでの微分波形も、微分演算によって求められている。
【０００４】
【特許文献１】特開平４−２２５４８７号公報
【特許文献２】特開２００４−２５２８９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１や特許文献２に開示された技術では、バーコードシンボル位置の特定を行うにあたって、上述のとおり微分演算を含む複雑な計算処理が必要になるため、多くの演算量を必要とする。これは、処理時間を短縮化する際の弊害となる可能性がある。一方、処理時間の短縮化を目指して高性能の演算素子を使うことは可能であるが、そのような演算素子は高価であり、結果として読取装置全体のコストアップに繋がってしまう虞がある。
【０００６】
本発明は、このような点に鑑みてなされたものであり、その目的は、バーコード等のシンボル情報を読み取るのに必要な演算量を低減することが可能なシンボル情報読取装置及びシンボル情報読取方法を提供することにある。
【課題を解決するための手段】
【０００７】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【０００８】
（１）  シンボル情報が記録された媒体を撮像する撮像手段と、前記撮像手段により得られた前記媒体の画像データを記憶する画像メモリと、前記画像データを取り込んで、前記シンボル情報が媒体に記録された位置を検出する位置検出処理部と、を有するシンボル情報読取装置であって、前記位置検出処理部は、前記画像データを所定の領域で前記シンボル情報の走査線の走査方向に沿って輝度値の変動量を計算して、前記シンボル情報に該当する可能性のある仮領域を判定する仮領域判定部と、前記仮領域について、前記走査線の走査方向に対して直交する方向に隣接する隣接領域との相関を求めて、相関値の高い領域を示すマップを作成する相関マップ作成部と、前記相関マップについて、基本バーコードの有無を検索し、前記基本バーコードが存在すると判断した領域をラベリングするラベリング部と、ラベリングされた領域に基づき、前記シンボル情報が媒体に記録された位置を検出する位置決定部と、を備えることを特徴とするシンボル情報読取装置。
【０００９】
本発明によれば、撮像手段と、画像メモリと、この画像メモリ内の画像データを取り込んで、シンボル情報が媒体に記録された位置を検出する位置検出処理部と、を有するシンボル情報読取装置において、位置検出処理部に含まれる仮領域判定部によって、画像データを所定の領域でシンボル情報の走査線の走査方向に沿って輝度値の変動量（例えば分散や標準偏差など）が計算され、シンボル情報に該当する可能性のある仮領域が判定され、位置検出処理部に含まれる相関マップ作成部によって、その仮領域について、走査線の走査方向に対して直交する方向に隣接する隣接領域との相関が求められ、相関値の高い領域を示すマップが作成され、位置検出処理部に含まれるラベリング部によって、相関マップについて、基本バーコード（原始バーコードパターン）の有無が検索され、基本バーコードが存在すると判断した領域がラベリングされ、位置検出処理部に含まれる位置決定部によって、ラベリングされた領域に基づき、シンボル情報が媒体に記録された位置が検出されることとしたので、微分演算を必要とすることなくシンボル情報が媒体に記録された位置を検出することができ、ひいてはシンボル情報を読み取る際の演算量を低減することができる。
【００１０】
（２）  前記撮像手段は、密着型の一次元撮像素子であることを特徴とするシンボル情報読取装置。
【００１１】
本発明によれば、上述した撮像手段が、密着型の一次元撮像素子であったとしても、１次元バーコードなどのシンボル情報を読み取る際の演算量を減らすことができる。特に、上述した相関マップ作成部によれば、仮領域について、シンボル情報の走査線の走査方向に対して直交する方向に隣接する隣接領域との相関が求められ、相関値の高い領域を示すマップが作成されるが、これにより、シンボル情報が記録された位置のみを特徴付けることができる。
【００１２】
（３）  シンボル情報が記録された媒体を撮像する撮像手段と、前記撮像手段により得られた前記媒体の画像データを記憶する画像メモリと、前記画像データを取り込んで、前記シンボル情報が媒体に記録された位置を検出する位置検出処理部と、を有するシンボル情報読取装置で使用されるシンボル情報読取方法であって、前記位置検出処理部において、前記画像データを所定の領域で前記シンボル情報の走査線の走査方向に沿って輝度値の変動量を計算して、前記シンボル情報に該当する可能性がある仮領域か否かを判定する第１ステップと、前記仮領域について、前記走査線の走査方向に対して直交する方向に隣接する隣接領域との相関を求めて、相関値の高い領域を示す相関マップを作成する第２ステップと、前記相関マップについて、基本バーコードの有無を検索し、前記基本バーコードが存在すると判断した領域をラベリングする第３ステップと、ラベリングされた領域に基づき、前記シンボル情報が媒体に記録された位置を検出する第４ステップと、を含むことを特徴とするシンボル情報読取方法。
【００１３】
本発明によれば、上述した（１）と同様に、撮像手段と画像メモリと位置検出処理部を有するシンボル情報読取装置で、シンボル情報に該当する可能性がある仮領域が否かを判定し（第１ステップ）、相関値の高い領域を示す相関マップを作成し（第２ステップ）、基本バーコードが存在すると判断した領域をラベリングした後（第３ステップ）、シンボル情報が媒体に記録された位置を検出することとしたので、シンボル情報を読み取る際の演算量を低減することができる。
【００１４】
（４）  前記第２ステップは、前記仮領域について、前記走査線の走査方向に対して直交する方向に隣接する２つの隣接領域との相関を求めて、これら２つの相関値の双方が所定の閾値よりも高い相関値を示した場合と、これら２つの相関値のいずれか一方が所定の閾値よりも高い相関値を示した場合とを区別して、前記相関マップを作成することを特徴とするシンボル情報読取方法。
【００１５】
本発明によれば、上述した第２ステップにおいて、仮領域について、走査線の走査方向に対して直交する方向に隣接する２つの隣接領域との相関を求めて、これら２つの相関値の双方が所定の閾値よりも高い相関値を示した場合と、これら２つの相関値のいずれか一方が所定の閾値よりも高い相関値を示した場合とを区別して（例えば前者と後者で、相関マップの要素になるポイントを変える等）、相関マップを作成することとしたので、シンボル情報の上下の中央部付近と上下端部付近とを相関マップ上で分けることができる。これにより、シンボル情報の位置をより正確に認識することができる。
【００１６】
（５）  前記第３ステップにおいて、前記２つの相関値の双方が所定の閾値よりも高い相関値を示す領域が、前記基本バーコードが存在すると判断した領域としてラベリングされることを特徴とするシンボル情報読取方法。
【００１７】
本発明によれば、第３ステップにおいて、２つの相関値の双方が所定の閾値よりも高い相関値を示す領域が、基本バーコードが存在すると判断した領域としてラベリングされることとしたので、位置決定部による位置検出において、より確度の高い部分（シンボル情報である確率が高い部分）を用いることができ、ひいては読取精度を向上させることができる。
【００１８】
（６）  前記第４ステップにおいて、ラベリングされた領域に基づいてシンボル情報が媒体に記録された上下左右の概略位置を決定し、当該概略位置で形成される矩形領域内のラベリング総数をカウントし、これを予めカウントされた前記相関マップ全体でのラベリング総数と一致するか否かを判定した後、前記シンボル情報が媒体に記録された位置を検出することを特徴とするシンボル情報読取方法。
【００１９】
本発明によれば、上述したステップ４において、ラベリングされた領域に基づいてシンボル情報が媒体に記録された上下左右の概略位置を決定し、その概略位置で形成される矩形領域内のラベリング総数をカウントし、これを予めカウントされた相関マップ全体でのラベリング総数と一致するか否かを判定した後、シンボル情報が媒体に記録された位置を検出することとしたので、概略上下左右位置情報の確度を高めることができ、ひいては読取精度を高めることができる。
【００２０】
（７）  前記ラベリング部には、複数の基本バーコードパターンが記憶されていることを特徴とするシンボル情報読取装置。
【００２１】
本発明によれば、上述したラベリング部には、複数の基本バーコードパターンが記憶されていることとしたので、１つの媒体に複数種類のバーコードが用いられている場合であっても、微分演算を必要とすることなくシンボル情報が媒体に記録された位置を検出することができる。
【００２２】
（８）  前記第３ステップにおいて、複数の基本バーコードパターンが前記位置検出処理部に記憶されており、当該複数の基本バーコードパターンを順次切り替えながら、基本バーコードパターンの検索を行うことを特徴とするシンボル情報読取方法。
【００２３】
本発明によれば、上述した第３ステップにおいて、複数の基本バーコードパターンが位置検出処理部に記憶されており、複数の基本バーコードパターンを順次切り替えながら、基本バーコードパターンの検索を行うこととしたので、１つの媒体に複数種類のバーコードが用いられている場合であっても、バーコードごとに基本バーコードパターンを適用し、目的のバーコードを選択的に検出できるので、シンボル情報の読み取り過程がシンプルとなり、ひいてはシンボル情報を読み取る際の演算量を低減することができる。
【００２４】
すなわち、近年、１つの記録媒体に複数種類のバーコードが用いられることがあり、この場合、複雑な処理計算でバーコード種類の特定及びバーコードシンボル位置の特定を行うと、時間が掛かったりコストアップに繋がったりする虞があるが、本発明によれば、シンボル情報の読み取り過程をシンプルにすることができ、ひいてはシンボル情報を読み取る際の演算量を低減することができる。
【００２５】
（９）  前記複数の基本バーコードパターンの順番を出現頻度に基づいて変更するようにしたことを特徴とするシンボル情報読取方法。
【００２６】
本発明によれば、上述した複数の基本バーコードパターンの順番を出現頻度に基づいて変更するようにしたので、必要とされる基本バーコードパターンの切り替え回数を減らし、シンボル情報を読み取る際の演算量を低減しつつ、情報読取の効率性を高めることができる。
【発明の効果】
【００２７】
本発明に係るシンボル情報読取装置及びシンボル情報読取方法によれば、微分演算の処理を行わなくてよいので、バーコード等のシンボル情報を読み取るのに必要な演算量を低減するができる。また、１つの媒体に複数種類のバーコードが用いられている場合であっても、シンボル情報の読み取り過程が複雑化するのを防ぐことができ、ひいてはシンボル情報を読み取る際の演算量を低減することができる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００２９】
［シンボル情報読取装置］
図１は、本発明の実施の形態に係るシンボル情報読取装置１の電気的構成を示すブロック図である。
【００３０】
図１において、シンボル情報読取装置１は、密着型の一次元撮像素子１１ａと、カード搬送機構（搬送ガイドを含む）１１ｂと、を有する撮像装置１１と、画像メモリ１２と、データ処理装置２０と、を備えている。また、データ処理装置２０は、位置検出処理部１３と復号処理部１４から構成され、位置検出処理部１３は、分散マップ計算部１３ａと、上下ライン間の相関計算部１３ｂと、基本パターン検索部１３ｃと、シンボル位置判定部１３ｄとを備えている。なお、位置検出処理部１３を構成する各要素は、ＣＰＵやＲＯＭ，ＲＡＭといったハードウェアにより実現することができる。また、本実施形態では、位置検出処理部１３と復号処理部１４は別要素として図示しているが、復号処理部１４が位置検出処理部１３内に組み込まれていてもよい。また、カード等の記録媒体２には、シンボル情報の一例として、一次元バーコードのバーコードシンボル２１が印刷されている。なお、符号Ｄは記録媒体２の搬送方向を示し、符号Ｌは、一次元バーコードのバーコードシンボル２１の走査線を示す。
【００３１】
撮像装置１１の撮像素子１１ａは、記録媒体２に印刷（記録）されたバーコードシンボル２１を、光電変換によって撮像する。画像メモリ１２は、撮像素子１１ａによって撮像されたバーコードシンボル２１の画像データを記憶する。データ処理装置２０は、バーコードシンボル２１の画像データを画像メモリ１２から取り込み、取り込んだ画像データに基づいて様々な処理を施す。特に、本実施形態では、データ処理装置２０のうちの位置検出処理部１３によって、バーコードシンボル２１が記録媒体２に記録された位置が検出される。
【００３２】
このような電気的構成からなるシンボル情報読取装置１において、本発明の実施の形態に係るシンボル情報読取方法について説明する。
【００３３】
［シンボル情報読取方法］
図２は、本発明の実施の形態に係るシンボル情報読取方法の流れを示すフローチャートである。図２を用いて、本発明の実施の形態に係るシンボル情報読取方法の流れを概説する。
【００３４】
まず、処理プランの指定が行われる（ステップＳ１）。具体的には、記録媒体２に記録されているバーコードの種類、或いは読み取るべきバーコードの種類に応じて使用するバーコード検出器（検出フィルタ）の種類と適用順番の設定を行う。デフォルトでは、第一の検出フィルタ（後述する基本バーコードパターンの一つ）が指定されるが（ステップＳ２）、たとえば、バーコードの出現頻度に応じて順番を変えてもよい。
【００３５】
次に、シンボル検出（ステップＳ３）が行われる。具体的には、シンボル情報読取装置１の撮像素子１１ａは、カード搬送機構（搬送ガイド）１１ｂに沿って所定位置まで移動した記録媒体２のバーコードシンボル２１を、光電変換によって撮像する。そして、撮像されたバーコードシンボル２１の画像データは、画像メモリ１２において記憶される。なお、この画像メモリ１２は、ＲＡＭ，ＳＤＲＡＭ,ＤＤＲＳＤＲＡＭ，ＲＤＲＡＭなど、画像データを記憶しうるものであれば如何なるものであってもよい。
【００３６】
その後、データ処理装置２０における位置検出処理部１３は、画像メモリ１２に記憶された画像データを読み込み、分散マップ計算部１３ａ→上下ライン間の相関計算部１３ｂ→基本パターン検索部１３ｃ→シンボル位置判定部１３ｄを経由して、上述した第一の検出フィルタが担当するバーコードシンボル２１の有無が決定され、有りと判定された場合には、その位置が決定される。
【００３７】
そして、データ処理装置２０の復号処理部１４において、復号の処理が行われる（ステップＳ４）。より具体的には、データ処理装置２０の復号処理部１４は、ステップＳ３において解析されたバーコードシンボル２１の位置等に基づき、バーコードシンボル２１の復号処理（走査線Ｌに沿ったデータ復号）を行う。
【００３８】
ここで、仮に検出すべきバーコードが残っている場合、すなわち未適用の検出フィルタがある場合には（ステップＳ５：ＹＥＳ）、次の検出フィルタが適用され（ステップＳ６）、処理はステップＳ３に移され、新たなシンボル検出及びシンボル復号が行われる（ステップＳ３及びステップＳ４）。一方で、未適用の検出フィルタがない場合には（ステップＳ５：ＮＯ）、一連のシンボル情報の読取処理は終了する。なお、検出フィルタの切り替え処理は、たとえば、位置検出処理部１３の基本パターン検索部１３ｃが行ってもよいし、復号処理部１４が行ってもよい。また、検出フィルタを切り替える順番は、たとえば出現頻度に基づいて決めてもよい。これにより、シンボル情報読取処理の効率化を図ることができる。さらに、本実施形態では、１つの媒体に複数種類のバーコードが用いられている可能性を考慮して、処理プランの指定（ステップＳ１）や検出フィルタの更新（ステップＳ６）などを行うこととしたが、これらを省くことも可能である。すなわち、ステップＳ３及びステップＳ４のみで処理を行うことも可能である。
【００３９】
図３は、図２におけるステップＳ１のシンボル検出に関する情報処理の流れを示すフローチャートである。
【００４０】
図３において、最初に、記録媒体２の上下左右のエッジ位置が検出される（ステップＳ１１）。より具体的には、分散マップ計算部１３ａは、分散マップを計算するための前処理として、画像メモリ１２に記憶された記録媒体２の画像データより、上下左右のエッジ位置を検出する。図４は、画像メモリ１２に記憶された記録媒体２の画像データの一例を示す。図４における周囲の実線は、エッジ検出によって得られた記録媒体２のエッジ位置を表している。
【００４１】
次に、分散マップの計算が行われる（ステップＳ１２）。より具体的には、分散マップ計算部１３ａは、エッジラインを基準として、画像空間全体を図４に示すような格子状の小区画に分割し、区画ごとに区画内の一つのラインに沿って輝度値の変動量（例えば分散や標準偏差など）を計算する。この区画内の一つのラインとは、図１に示すバーコードシンボル２１の走査線Ｌの走査方向と同じ方向に形成されており、例えば、図４に示す符号Ａ０（Ｂ０）で示すラインである。なお、従来技術では、小区画内で複数ラインを指定して、まず微分演算した上で対応点ごとの積和演算を行う方法をとっている一方、本実施形態に係るシンボル情報読取方法では、単一ラインかつ分散（又は標準偏差等）の演算が行われる。そのため、本実施形態に係るシンボル情報読取方法は、従来技術と比べて演算量の少ない方法となっている。
【００４２】
全格子区画について同様の演算を行うと、格子座標に基づく変動量マップを得ることができる。図５は、マップ数値を画像で表現した図である。白い部分は変動が大きい部分を表し、黒い部分は変動が小さい部分を表している。そして、この変動量が大きい部分については、図４に示すバーコードシンボル２１の位置に対応している。次に、図５に示すマップを２値化すると、図６に示すようになる。２値化の閾値は、変動量の分布状態から適したものを設定することができる。図６は、図５に示すマップを２値化した図である。
【００４３】
図６について詳述すると、例えば、右から４列目は、上から［０，０，０，０，０，０，１，１，１，０，０］という順で数値が並んでいるが（点線枠Ｘで示す部分）、これは、図４におけるＡ１〜Ａ１１という各単一ラインの分散を所定の閾値で２値化したものに相当する。図６に示すように、図４におけるバーコードシンボル２１の位置には、１の値が９箇所、正方形状に並んでいることが分かる（そのうちの１辺が、図４に示すＡ７，Ａ８及びＡ９である）。このように、上下左右のエッジ位置を検出し（図３のステップＳ１１）、分散マップ（図５，図６）の計算（図３のステップＳ１２）を行う分散マップ計算部１３ａは、画像データを所定の領域で走査線に沿って輝度値の変動量を計算して、シンボル情報に該当する可能性のある仮領域を判定する「仮領域判定部」の一例として機能する（請求項記載の第１ステップを実行する）。なお、ここでいう「仮領域」は、上述した１が９箇所並んでいる領域である。
【００４４】
ここで、図６に示すマップにおいて、１に該当するイメージ部分は、バーコード領域に合致している見込みが高い一方、必ずしもバーコード領域になるとは限らない。すなわち、バーコードシンボル２１が位置する領域ではないが１となる領域が存在しており、その領域が「仮領域」として判定されることも考えられる。具体的には、図６において、点線枠Ｙ内に存在する４個の１は、図４に示すように記録媒体２の表面に印字された文字が位置する領域に合致しているのであって、バーコードシンボル２１が位置する領域に合致しているわけではない。
【００４５】
したがって、図３のステップＳ１３として上下ライン相関の処理が行われる。これは、上下ライン間の相関計算部１３ｂによって、バーコードシンボル２１とそうでない部分とを分離するための処理である。具体的には、格子マップ上の１の各要素について、該当する区画のすぐ上とすぐ下に隣接する区画のライン相互の輝度の相関を計算する。それらの区画がバーコードシンボル２１を含んでいれば、この相関値は大きな値を示すはずである。
【００４６】
図７は、上下ライン相関の処理結果を示す図である。具体的には、バーコードシンボル２１の走査線の走査方向に沿って形成されたラインにおいて、注目ラインと上又は下のいずれかのラインとの相関値が高ければ、その要素に１ポイントが加算され、注目ラインと上及び下の両方のラインとの相関値が高ければ、その要素に２ポイントが加算される。ここで注意すべき点は、図６に示す値（０と１の２値）が処理対象ではない点である。図４に示す実際の画像データが処理対象になる。
【００４７】
たとえば、図６における点線枠Ｙ内の４箇所のポイントを生成するため使われたラインは、図４でいえば、Ｂ２，Ｂ６，Ｂ３，Ｂ７の４ラインとなる。よって、これらが注目ラインとなる。Ｂ２のラインについての上下ライン相関の処理は、Ｂ２とＢ１の相関値と、Ｂ２とＢ３の相関値とが計算される。そして、いずれかが高ければ１ポイントが付与され、両方ともが高ければ２ポイントが付与される。一般的に、文字の領域では、バーコードシンボル２１の領域と比べて、これらの相関値は高くならない（そのため、相関値が高いか低いかを決める閾値は、バーコードシンボル２１の領域のみを特定できるような値に設定しておく）。同様に、図４に示すＢ６のラインについての上下ライン相関の処理は、Ｂ６とＢ５の相関値と、Ｂ６とＢ７の相関値とが計算され、Ｂ３のラインについての上下ライン相関の処理は、Ｂ３とＢ２の相関値と、Ｂ３とＢ４の相関値とが計算され、Ｂ７のラインについての上下ライン相関の処理は、Ｂ７とＢ６の相関値と、Ｂ７とＢ８の相関値とが計算されるが、いずれも高い値とはならない。その結果、図７の点線枠Ｙ'に示すように、図６の点線枠Ｙに相当する箇所のポイントは、全て０となる。
【００４８】
同様にして、図６に示す点線枠Ｚ内の９箇所のポイントを生成するために使われたラインは、図４でいえば、バーコードシンボル２１を包含する９ラインとなる。たとえば、図６に示す点線枠Ｚ内の左列の各ポイント（上から［１，２，１］の部分）を生成するために使われた３ラインに着目すると、図４でいえば、Ａ７〜Ａ９のラインとなる。Ａ７を注目ラインとした場合、上下ライン相関の処理は、Ａ７とＡ６の相関値と、Ａ７とＡ８の相関値とが計算されるところ、バーコードシンボル２１の性質上、Ａ７とＡ８の相関値は極めて大きく（限りなく１に）なる。その結果、ポイントは１が加算される。また、Ａ９を注目ラインとした場合も同様に、ポイントは１が加算される。そして、Ａ８を注目ラインとした場合には、Ａ８とＡ７の相関値も、Ａ８とＡ９の相関値も、極めて大きくなることから、ポイントは２が加算される。このようにして、点線枠Ｚ内の左列の各ポイント［１，２，１］が決まる。点線枠Ｚ内の中央列の各ポイント［１，２，１］も、右列の各ポイント［１，２，１］も、同様に決まる。
【００４９】
図７に示すように、ポイント２をもつ要素は、特に上下の相関が強いことを表している。そして、このような要素は、同一ラインパターンが上下に積層しているバーコードの特徴を反映していると考えられ、バーコード領域である可能性が高いことが分かる。このように、上下ライン相関の処理（図３のステップＳ１３）を行う上下ライン間の相関計算部１３ｂは、上述した仮領域について、バーコードシンボル２１の走査線（図１に示す符号Ｌ参照）の走査方向に対して直交する方向（図４や図６でいえば上下）に隣接する隣接領域との相関を求めて、相関値の高い領域を示すマップを作成する「相関マップ作成部」の一例として機能する（請求項記載の第２ステップを実行する）。また、本実施形態では、図７の点線枠Ｚを用いて説明したように、上下方向に隣接する２つの隣接領域（隣接するライン）との相関を求めた後、これら２つの相関値の双方が所定の閾値よりも高い相関値を示した場合（ポイント２が加算された場合）と、これら２つの相関値のいずれか一方が所定の閾値よりも高い相関値を示した場合（ポイント１が加算された場合）とを区別して、相関マップを作成するようにしている。これにより、バーコードシンボル２１が存在する位置を的確に認識できる相関マップを作成することができる（図７参照）。
【００５０】
次に、基本パターン検索が行われる（図３のステップＳ１４）。具体的には、相関マップを用いて、原始バーコードパターンの存在を調べる。たとえば、検出した最小のバーコードサイズが、相関マップ上で走査方向に［２，２，２］のマスクパターン（ポイント列）に対応する場合において、図７の相関マップをサーチして、このマスクパターン［２，２，２］が検出されたら、そのマスクパターンによって占有されるマップ要素に１を立て、それ以外は０とする。図７に示す相関マップに対して、このような処理を実行すると、図８に示すようなバーコードマップを得ることができる。図８は、図７に示す相関マップから得られたバーコードマップを示す図である。このように、基本パターン検索の処理（図３のステップＳ１４）を行う基本パターン検索部１３ｃは、相関マップについて、基本バーコード（本実施形態では上述したマスクパターン［２，２，２］）の有無を検索し、その基本バーコードが存在すると判断した領域をラベリングする（本実施形態ではマップ要素に１を立てる）「ラベリング部」の一例として機能する（請求項記載の第３ステップを実行する）。
【００５１】
なお、本実施形態では、３要素からなるマスクパターンを考えたが、一列４要素からなるマスクパターンや、上下各３要素の計６要素からなるマスクパターンなど、「基本バーコード」（基本バーコードパターン）の態様としては種々変更可能である。また、本実施形態では、注目ラインについて、走査線の走査方向に対して直交する方向に隣接する隣接領域（隣接するライン）との相関を求め、これら２つの相関値の双方が所定の閾値よりも高い相関値を示す領域が、基本バーコードが存在すると判断した領域としてラベリングされるようにしている。これにより、文字部分を適切に排除し、より確度の高い部分（バーコードシンボル２１が存在する部分のみ）を検索対象とすることができる。
【００５２】
また、位置検出処理部１３の基本パターン検索部１３ｃには、一又は複数の基本バーコードパターン（検出フィルタ）が記憶されている。そして、図２のフローチャートを用いて説明したように、一連のシンボル情報の読取処理の中で、基本バーコードパターンが順次切り替わるので（図２のステップＳ５，ステップＳＳ６）、結果的に、基本パターン検索部１３ｃは、複数の基本バーコードパターンを用いて基本パターン検索を行うことになる。
【００５３】
次に、シンボル位置判定が行われる（図３のステップＳ１５）。具体的には、シンボル位置判定部１３ｄにより、バーコードマップの重心（ｙｃｏｇ，ｘｃｏｇ）を求めることから開始される（重心は、一般的な定義に基づいて計算）。次に、バーコードマップの左端・右端・上端・下端位置を求める。左右位置は、バーコードマップ上でｘｃｏｇを起点として、左右に要素和（加算範囲はｙｃｏｇ±２）がゼロとなる座標ｘｓｔａｒｔおよびｘｓｔｏｐを検出し、そこで打ち切る。上下位置は、バーコードマップ上でｙｃｏｇを起点として、上下に要素和（加算範囲［ｘｓｔａｒｔ， ｘｓｔｏｐ］）がゼロとなる座標ｙｕｐｐｅｒおよびｙｌｏｗｅｒを検出したら打ち切る。このようにして、格子座標上において、バーコードの４辺位置が特定される。そして、４辺の座標から画像空間上の座標を求める。格子区画ごとに画像空間との対応関係をもっているので、バーコードの左端ＢＣＤＬは、区画（ｙｃｏｇ， ｘｓｔａｒｔ）における区画開始点である。バーコードの右端ＢＣＤＲは、区画（ｙｃｏｇ， ｘｓｔｏｐ）における区画終了点である。したがって、バーコードの左右範囲は、ＢＣＤＬ〜ＢＣＤＲとなる。なお、この左右範囲については、マージンをみて、左右それぞれ一定画素数拡張することも可能である。バーコードの上下端の画像空間上の位置は、区画（ｙｕｐｐｅｒ， ｘｃｏｇ）のｙ座標と、区画（ｙｌｏｗｅｒ， ｘｃｏｇ）のｙ座標とで挟まれた領域の平均輝度のプロファイルから求められる。具体例を図９に示す（なお、図８のバーコードマップを用いることなく、全ての領域についてプロファイルを計算するとなると、ある程度の演算量・計算時間が必要になる）。
【００５４】
図９は、バーコードシンボル２１付近における平均輝度のプロファイルを示す図である。図９に示すように、上下エッジのサーチ開始点は、重心区画のｙ座標であり、その輝度に基づいてエッジ判定閾値（図９参照）を決める。そして、上下にサーチして、エッジ判定閾値を超えたところをエッジと判定し、それらをＢｉｍｇｔｏｐ及びＢｉｍｇｂｏｔｔｏｍとする。これにより、バーコードの画像空間上の位置を確定することができる。なお、最後に、走査線の決定（図３のステップＳ１６）が行われる。図９に示す例でいえば、バーコードシンボル２１中の５ライン（図中の一点鎖線）をスキャンするために、ＢｉｍｇｔｏｐからＢｉｍｇｂｏｔｔｏｍまでの区間を６等分している。
【００５５】
このように、シンボル位置判定部１３ｄは、図８に示すようにラベリングされた領域に基づき、バーコードシンボル２１が記録媒体２に記録された位置を検出する「位置決定部」の一例として機能する（請求項記載の第４ステップを実行する）。また、たとえば、このシンボル位置判定部１３ｄの機能として、ラベリングされた領域に基づいてバーコードシンボル２１が記録媒体２に記録された上下左右の概略位置を決定し、その概略位置で形成される矩形領域内のラベルリング総数をカウントし、これを予めカウントされた前記相関マップ全体でのラベリング総数と一致するか否かを判定した後、バーコードシンボル２１が記録媒体２に記録された位置を検出するようにしてもよい。これにより、上下左右の概略位置の精度を高めることが可能である。
【００５６】
［実施形態の主な効果］
以上説明したように、本実施形態に係るシンボル情報読取方法によれば、イメージの所定の領域でシンボル情報の走査線の走査方向に沿った変動量（ここでは分散）を求め、分散の大きさによってその領域がバーコード領域に該当する可能性があるか否かを判定する第１ステップと（図３のステップＳ１２）、バーコード領域に該当する可能性があると判定された領域について、上下に隣接する局所領域の走査線間の相関をとって相関値の高い領域に得点を与える第２ステップと（図３のステップＳ１３）、その得点マップに対して、検出すべき最小のバーコードシンボルに相当する得点配列パターンが存在するかを調べるとともに、その得点配列パターンに合致するマップ上の領域をラベリングする第３ステップと（図３のステップＳ１４）、マップ上のラベリングパターンに基づいてバーコードシンボル２１の上下左右の概略位置を決定し、その概略位置情報より画像空間座標上のバーコードシンボル２１の上下左右位置を最終決定する第４ステップと（図３のステップＳ１５）、からなることとしているので、微分演算を行うことなく、バーコードシンボル２１の上下左右位置を決定することができ、ひいては演算量を削減することができる。また、演算量が削減されれば、処理時間の短縮化に貢献することができる。さらに、安価な撮像素子を用いても十分な速度を出すことができれば、高価な撮像素子を控えることで、製造コスト削減に寄与することができる。
【００５７】
また、上述の第２ステップにおいて、隣接する局所領域の走査線の走査方向に沿って形成されたライン間の相関演算は、上側若しくは下側のいずれか一方のみ高い相関値を示したときはポイント１、いずれも高い相関値を示したときはポイント２を与えるようにしているので、バーコードシンボル２１の上下端部の効果（上下端部では相関値が低くなる効果）を反映させることができる。
【００５８】
また、上述の第３ステップにおいて、最小バーコードシンボルパターンのマップ上のポイント２を示す要素に限定しているので、より確度の高い部分を検索対象とすることができる。
【００５９】
さらに、上述した第４ステップにおいて、上下左右概略位置で形成される矩形領域内のラベリング総数をカウントし、これを予めカウントされたマップ全体でのラベリング総数と一致するか否かをチェックするようにしてもよい。これにより、概略上下左右位置情報の確度を高めることができる。
【００６０】
［応用例］
本発明では、代表的な２次元バーコードであるＰＤＦ４１７の位置検出にも利用可能である。図１０は、２次元バーコード３１が印刷された媒体画像例を示す図である。図１０に示す画像に対して、上述した位置検出の各処理ステップを適用すれば、各ラインの相関マップは図１１のようになる。１次元バーコードの場合には、シンボル全体に亘って値（ポイント）２が出現していたが（図８参照）、図１１では、左端と右端の部分に対応する要素にのみ値２が現れ、中間部分は０となっている。この場合、上述のマスクパターンを検索する処理によって、２次元バーコードを検出することができないため、一旦１次元バーコードとしての検索は打ち切り、相関マップを起点として２次元バーコードを想定した検索を行う。すなわち、相関マップにおいて左端・右端の類似パターン対の検索を行い、検出されたらこの部分に挟まれた矩形領域を画像空間座標にマッピングし、２次元バーコードの特徴に基づいて位置決定を行うようにすればよい。
【００６１】
また、図１２は、１つの媒体に複数種類のバーコードが用いられている例を示す図である。図１２に示すように、１つの媒体上に、１次元バーコードＣＯＤＥ１２８（符号３２で示す）と２次元バーコードＰＤＦ４１７（符号３３で示す）とが存在する場合を考える。予めそれぞれのシンボル検出器を用意しておき、入力画像に対し、まずＣＯＤＥ１２８に対応した第一のシンボル検出器を適用する。図１２に関し、上で述べた図７に相当する相関マップは、図１３のようになる。図１３は、図１２に基づき得られた相関マップを示す図である。図１３の相関マップに対してマスクパターン［２，２，２］を作用させると、ＣＯＤＥ１２８に反応して、上で述べた図８と同様のバーコードマップが得られ、ＣＯＤＥ１２８の存在が検出される。それ以後は、バーコードマップに基づいてＣＯＤＥ１２８シンボルの画像空間上の位置を決定し、復号処理を行えばよい。
【００６２】
次に、同一の入力画像に対し、ＰＤＦ４１７に対応した第二のシンボル検出器を適用する。検出器のパラメータとしては、格子区画の寸法をＰＤＦ４１７の形状に最適なものに設定しておくとよい。ここでは、ＣＯＤＥ１２８と同じ格子区画を用いることとする。すると、相関マップは、上述したように図１３に示すようになる。１次元バーコードの場合は、シンボル全体にわたって値２が出現したが、ＰＤＦ４１７では、左端と右端の部分に対応する要素にのみ値２が現れ、中間部分は０となっている。この場合は、２次元バーコードを想定したマスクパターン検索を行う。すなわち、相関マップにおいて、左端・右端の類似パターン対の検索を行い、これが検出されたら、この部分に挟まれた矩形領域を画像空間座標にマッピングし、２次元バーコードの特徴に基づいた画像空間上の位置決定を行った上で、復号処理に移行すればよい。
【００６３】
また、本実施形態では、一次元撮像素子やリニア搬送機構の組合せに対して本発明を適用することとしたが、本発明はこれに限られることなく、例えば、二次元ＣＣＤやＣＭＯＳイメージャなどのエリアセンサと被写体支持機構との組合せや、また１次元撮像素子と手動による媒体駆動を組合せ等に対して本発明を適用することとしてもよい。
【００６４】
さらに、上述の変形例では、バーコードラベルにＰＤＦ４１７フォーマットを用いることとしたが、本発明はこれに限られることなく、例えば、バーコードラベルにＣｏｄｅ４９その他のスタック型バーコードを用いてもよい。
【産業上の利用可能性】
【００６５】
本発明に係るシンボル情報読取方法及びシンボル情報読取装置は、シンボル情報を読み取る際の演算量を減らすことが可能なものとして有用である。
【図面の簡単な説明】
【００６６】
【図１】本発明の実施の形態に係るシンボル情報読取装置の電気的構成を示すブロック図である。
【図２】本発明の実施の形態に係るシンボル情報読取方法の流れを示すフローチャートである。
【図３】図２におけるステップＳ１のシンボル検出に関する情報処理の流れを示すフローチャートである。
【図４】画像メモリに記憶された記録媒体の画像データの一例を示す図である。
【図５】マップ数値を画像で表現した図である。
【図６】図５に示すマップを２値化した図である。
【図７】上下ライン相関の処理結果を示す図である。
【図８】図７に示す相関マップから得られたバーコードマップを示す図である。
【図９】バーコードシンボル付近における平均輝度のプロファイルを示す図である。
【図１０】２次元バーコードが印刷された媒体画像例を示す図である。
【図１１】図１０に示す画像に対して、位置検出の各処理ステップを適用したときの様子を示す図である。
【図１２】１つの媒体に複数種類のバーコードが用いられている例を示す図である。
【図１３】図１２に基づき得られた相関マップを示す図である。
【符号の説明】
【００６７】
１  シンボル情報読取装置
２  記録媒体
１１  撮像装置
１１ａ  撮像素子
１２  画像メモリ
１３  位置検出処理部
１３ａ  分散マップ計算部（仮領域判定部）
１３ｂ  上下ライン間の相関計算部（相関マップ部）
１３ｃ  基本パターン検索部（ラベリング部）
１３ｄ  シンボル位置判定部（位置決定部）
２０  データ処理装置
【図１】
0005140820.tif 000002
【図２】
0005140820.tif 000003
【図３】
0005140820.tif 000004
【図４】
0005140820.tif 000005
【図５】
0005140820.tif 000006
【図６】
0005140820.tif 000007
【図７】
0005140820.tif 000008
【図８】
0005140820.tif 000009
【図９】
0005140820.tif 000010
【図１０】
0005140820.tif 000011
【図１１】
0005140820.tif 000012
【図１２】
0005140820.tif 000013
【図１３】
0005140820.tif 000014