(57)【要約】【課題】バーコードの画像が不鮮明であっても，情報を認識可能なバーコード認識装置，及び，バーコード認識方法を提供すること。【解決手段】バーコードが記載された帳票２０２の画像を読み取るセンサ部２０４と，各バーコードエリアについて，バーコードに含まれる各バーと直交する方向に沿って，光学的に走査して，反射光の輝度グラフを作成する輝度グラフ作成部２１２と，輝度グラフの極大値と極小値とに応じて，各バーの幅を判定するバー幅判定部２１４と，判定された各バー幅に基づいて，バーコード情報を認識するバーコード情報認識部２１６と，を備えることを特徴とする，バーコード認識装置を提供する。【選択図】図６
2007226328.tif 000002
【特許請求の範囲】
【請求項１】
黒バーと前記黒バーの間隙である白バーとにより構成されるバーコードが記載された帳票の画像を読み取るセンサ部と；
前記読み取られた画像から，バーコードが記載されている領域であるバーコードエリアを各々切出すバーコードエリア切出し部と；
前記各バーコードエリアについて，前記黒バーと前記白バーとに対し，直交する方向に沿って，階調のヒストグラムである輝度グラフを作成する輝度グラフ作成部と；
前記輝度グラフの極値に応じて，前記黒バーと前記白バーとの幅を判定するバー幅判定部と；
前記判定された各バー幅に基づいて，バーコード情報を認識するバーコード情報認識部と；
を備えることを特徴とする，バーコード認識装置。
【請求項２】
前記バー幅判定部は，
前記黒バーに対応する輝度グラフの極小値と，前記白バーに対応する輝度グラフの極大値とをそれぞれ検出する極値検出手段と；
前記輝度グラフの極大値に応じて，前記白バーを所定の複数グループに分類する第１グルーピング手段と；
前記白バーを分類する所定のグループに属する白バーに対して，所定のバー幅を割り当てる第１割当手段と；
前記輝度グラフの極小値に応じて，前記黒バーを所定の複数グループに分類する第２グルーピング手段と；
前記黒バーを分類する所定のグループに属する黒バーに対して，所定のバー幅を割り当てる第２割当手段と；
を備えることを特徴とする，請求項１に記載のバーコード認識装置。
【請求項３】
前記第１グルーピング手段は，
バーコードの両端に形成されたガードバーに含まれる白バーに対応した輝度グラフの極大値である，ガードバー白ピーク値を基準として，前記バーコードに含まれる白バーを分類するためのグループを設定する白バーグループ設定手段を備えることを特徴とする，請求項２に記載のバーコード認識装置。
【請求項４】
前記第２グルーピング手段は，
バーコードの両端に形成されたガードバーに含まれる白バーに対応する輝度グラフの極大値であるガードバー白ピーク値よりも小さいグラフ領域のうち，前記輝度グラフの任意の１つの極小点を含むグラフ領域の面積である黒バー面積を算出する黒バー面積算出手段と；
前記ガードバーに含まれる黒バーの黒バー面積に基づいて，前記黒バーを分類するための各グループを設定する黒バーグループ設定手段と；
を備えることを特徴とする，請求項２又は３のいずれかに記載のバーコード認識装置。
【請求項５】
前記認識部は，
短縮タイプのＪＡＮコード規格に基づき，バーコード情報を認識する短縮型ＪＡＮコード認識部と；
標準タイプのＪＡＮコード規格に基づき，バーコード情報を認識する標準型ＪＡＮコード認識部と；
を備えることを特徴とする，請求項１〜４のいずれかに記載のバーコード認識装置。
【請求項６】
黒バーと前記黒バーの間隙である白バーとにより構成されるバーコードが記載された帳票の画像を読み取る画像読取り過程と；
前記読み取られた画像から，バーコードが記載されている領域であるバーコードエリアを各々切出すバーコードエリア切出し過程と；
前記各バーコードエリアについて，前記黒バーと前記白バーとに対し，直交する方向に沿って，階調のヒストグラムである輝度グラフを作成する輝度グラフ作成過程と；
前記輝度グラフの極値に応じて，前記黒バーと前記白バーとの幅を判定するバー幅判定過程と；
前記判定された各バーの幅に基づいて，バーコード情報を認識するバーコード情報認識過程と；
を含むことを特徴とする，バーコード認識方法。
【請求項７】
前記バー幅判定過程は，
前記黒バーに対応する輝度グラフの極小値と，前記白バーに対応する輝度グラフの極大値とをそれぞれ検出する極値検出過程と；
前記輝度グラフの極大値に応じて，前記白バーを所定の複数グループに分類する第１グルーピング過程と；
前記白バーを分類する所定の各グループに属する白バーに対して，所定のバー幅を割り当てる第１割当過程と；
前記輝度グラフの極小値に応じて，前記黒バーを所定の複数グループに分類する第２グルーピング過程と；
前記黒バーを分類する所定の各グループに属する黒バーに対して，所定のバー幅を割り当てる第２割当過程と；
を含むことを特徴とする，請求項６に記載のバーコード認識方法。
【請求項８】
前記第１グルーピング過程は，
バーコードの両端に形成されたガードバーに含まれる白バーに対応した輝度グラフの極大値である，ガードバー白ピーク値を基準として，前記バーコードに含まれる白バーを分類するためのグループを設定する白バーグループ設定過程を含むことを特徴とする，請求項７に記載のバーコード認識方法。
【請求項９】
前記第２グルーピング過程は，
バーコードの両端に形成されたガードバーに含まれる白バーに対応する輝度グラフの極大値であるガードバー白ピーク値よりも小さいグラフ領域のうち，前記輝度グラフの１つの極小点を含むグラフ領域の面積である黒バー面積を算出する黒バー面積算出過程と；
前記ガードバーに含まれる黒バーの黒バー面積に基づいて，前記黒バーを分類するための各グループを設定する黒バーグループ設定過程と；
を含むことを特徴とする，請求項７又は８のいずれかに記載のバーコード認識方法。
【請求項１０】
前記認識過程は，
ＪＡＮコード規格に基づき，バーコード情報を認識するＪＡＮコード認識過程を含むことを特徴とする，請求項６〜９のいずれかに記載のバーコード認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，バーコード認識装置，及び，バーコード認識方法に関する。
【背景技術】
【０００２】
従来のバーコード認識装置は，平行に配置されたバーコードの各バーを横切る方向に沿って光学的に走査することにより，その濃淡を識別し，２値化することによってバーコードのデータとして認識する。該認識されたデータは，ディスプレイ等の表示手段により，バーコード認識結果として表示される。
【０００３】
【特許文献１】特開２００１−２８０３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のバーコード認識システムについて説明する。従来のバーコード認識システムは，図１１に示すように，ワークステーション（以下，ＷＳ）１０と，光学式バーコード認識装置１２から構成されていた。ＷＳ１０は，キーボード等の入力手段，及び，ディスプレイ等の表示手段を備える。
【０００５】
さらに，光学式バーコード認識装置１２は，図１２に示すように，制御部２０と，センサ部２２と，画像メモリ２３と，バーコードエリア切出し部２４と，バーコードエリアメモリ２５と，画像２値化部２６と，認識部２７とにより構成される。
【０００６】
制御部２０は，光学式バーコード認識装置１２の全体を制御する制御手段であり，ＷＳ１０との間の通信手段を有する。センサ部２２は，バーコードが記録された帳票２１の画像を読み取る手段を有している。画像メモリ２３は，センサ部２２により読み出された帳票２１の画像情報を保持する記録手段である。バーコードエリア切出し部２４は，画像メモリ２３に記録された帳票２１の画像情報から，バーコードらしいエリアをバーコードエリアとして切出す手段である。バーコードエリアメモリ２５は，該バーコードエリアの画像を保持する記録手段である。認識部２７は，バーコードエリアメモリ２５に記録されたバーコードエリアの画像情報を参照して，エリア単位でバーコードの情報を認識する手段である。
【０００７】
さらに，認識部２７は，図１３に示すように，短縮型ＪＡＮコード認識部３２と，標準型ＪＡＮコード認識部３３とにより構成される。短縮型ＪＡＮコード認識部３２は，短縮タイプ（８桁）のＪＡＮ（Ｊａｐａｎ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ）コード規格に則って，バーコードエリアメモリ２５に記録されたバーコードの情報を認識する手段である。標準型ＪＡＮコード認識部は，標準タイプ（１３桁）のＪＡＮ（Ｊａｐａｎ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ）コード規格に基づいて，バーコードエリアメモリ２５に記録されたバーコードの情報を認識する手段である。
【０００８】
ここで，従来の光学式バーコード認識装置１２の動作過程について述べる。図１４は，従来の光学式バーコード認識装置１２におけるバーコード情報の認識過程を示したフローチャートである。
【０００９】
まず，ステップＳ４１において，バーコードが記録された帳票２１の画像が，センサ部２２において読み取られ，画像メモリ２３に記録される。ステップＳ４２では，バーコード切出し部２４が，画像メモリ２３に記録された帳票２１の画像情報から，バーコードエリアを切出して，１エリア毎の画像をバーコードエリアメモリ２５に格納する。
【００１０】
ステップＳ４３では，画像２値化部２６が，バーコードエリアメモリ２５に格納されたバーコードエリアの画像情報を参照して，該画像を２値化する。
【００１１】
ステップＳ４４では，短縮型ＪＡＮコード認識部３２が，画像２値化部２６により２値化されたバーコードエリアの画像情報を用いて，バーコードの情報を認識する。ステップＳ４５では，短縮型ＪＡＮコード認識部３２において，バーコード情報の認識が成功したか否かを判別する。ステップＳ４５において，バーコード情報の認識が失敗した場合には，ステップＳ４６へと進行し，標準型ＪＡＮコード認識部３３によりバーコード情報の認識が実行される。ステップＳ４７において，全てのバーコードエリアについてバーコード情報の認識が実行されたか否かを判別し，未認識のバーコードエリアが存在する場合には，次のバーコードエリアへと進行する（ステップＳ４８）。ステップＳ４３〜Ｓ４６の過程を繰返し，全てのバーコードエリアについてバーコード情報の認識を実行する。
【００１２】
しかし，従来の光学式バーコード認識装置１２において，ピントずれ又は解像度不足により，センサ部２２の取得した画像が不鮮明な場合，１つの閾値による単純２値化を行うと，画像２値化部２６により２値化された後に，バーの間隔が狭い部分が黒つぶれを起こしたり，或いは，細かい黒線が白つぶれを起こしたりして消えることにより，バーコードが認識できなくなるという問題があった。
【００１３】
そこで，本発明は，上記問題に鑑みてなされたものであり，本発明の目的とするところは，バーコードの画像が不鮮明であっても，バーコード情報を認識することが可能な，新規かつ改良されたバーコード認識方法，及び，それを利用したバーコード認識装置を提供することにある。
【課題を解決するための手段】
【００１４】
また，上記課題を解決するために，本発明の別の観点によれば，バーコードが記載された帳票の画像を読み取るセンサ部と；読み取られた画像から，１つのバーコードが記載されている領域であるバーコードエリアを各々切出すバーコードエリア切出し部と；各バーコードエリアについて，バーコードに含まれる各バーと直交する方向に沿って，階調のヒストグラムである輝度グラフを作成する輝度グラフ作成部と；輝度グラフの極大値，又は，極小値に応じて，バーコードに含まれる各バーの幅を判定するバー幅判定部と；判定された各バー幅に基づいて，バーコード情報を認識する認識部と；を備えることを特徴とする，バーコード認識装置が提供される。
【００１５】
上記各構成要素が奏する作用は以下の通りである。上記センサ部は，バーコードが記載された帳票の画像を読み取る。上記バーコードエリア切出し部は，読み取られた画像から，バーコードエリアを各々切出す。輝度グラフ作成部は，各バーコードエリアについて，バーコードに含まれる各バーと直交する方向に沿って，輝度グラフを作成する。上記バー幅判定部は，輝度グラフの極大値，又は，極小値に応じて，バーコードに含まれる各バーの幅を判定する。上記認識部は，判定された各バー幅に基づいて，バーコード情報を認識する。
【００１６】
かかる構成により，読み出された画像が不鮮明な場合にも，バー間隔が狭い部分における反射光の輝度を検出することが可能になり，バーコードの情報を認識することが可能となる。
【００１７】
バー幅判定部は，バーコードに含まれるバーである黒バーに対応する輝度グラフの極小値と，一対の黒バーの間隙である白バーに対応する輝度グラフの極大値とをそれぞれ検出する極値検出手段と；輝度グラフの極大値に応じて，バーコードに含まれる白バーを所定の複数グループに分類する第１グルーピング手段と；白バーを分類する所定の各グループに属する白バーに対して，所定のバー幅を割り当てる第１割当手段と；輝度グラフの極小値に応じて，バーコードに含まれる黒バーを所定の複数グループに分類する第２グルーピング手段と；黒バーを分類する所定の各グループに属する黒バーに対して，所定のバー幅を割り当てる第２割当手段と；をさらに備えていてもよい。かかる構成により，読み取られたバーコードエリアの画像が不鮮明であっても，バーコードに含まれる白バーと黒バーとの階調の違いを認識することが可能になり，バーコード情報を認識することが可能となる。
【００１８】
上記各構成要素が奏する作用は以下の通りである。上記極値検出手段は，輝度グラフの極小値と，輝度グラフの極大値とをそれぞれ検出する。上記第１グルーピング手段は，輝度グラフの極大値に応じて，各白バーを所定の複数のグループに分類する。上記第１割当手段は，白バーを分類する所定の各グループに属する白バーに対して，所定のバー幅を割り当てる。上記第２グルーピング手段は，輝度グラフの極小値に応じて，バーコードに含まれる黒バーを所定の複数グループに分類する。上記第２割当手段は，黒バーを分類する所定の各グループに属する黒バーに対して，所定のバー幅を割り当てる。
【００１９】
第１グルーピング手段は，バーコードの両端に形成されたガードバーに含まれる白バーの階調を示すガードバー白ピーク値を基準として，白バーを分類する所定の各グループを設定する白バーグループ設定手段をさらに備えていてもよい。
【００２０】
上記各構成要素が奏する作用は以下の通りである。上記白バーグループ設定手段は，ガードバー白ピーク値を基準として，白バーを分類する所定の各グループを設定する。かかる構成により，種々のバーコードに応じて，白バーの階調を認識するための基準を検出することが可能となる。
【００２１】
第２グルーピング手段は，バーコードの両端に形成されたガードバーに含まれる白バーの階調を示すガードバー白ピーク値よりも小さく，かつ，輝度グラフよりも大きい領域のうち，輝度グラフの任意の１つの極小点を含む領域の面積である黒バー面積を算出する黒バー面積算出手段と；ガードバーに含まれる黒バーの黒バー面積に基づいて，黒バーを分類する所定の各グループを設定する黒バーグループ設定手段と；をさらに備えていてもよい。
【００２２】
上記各構成要素が奏する作用は以下の通りである。上記黒バー面積算出手段は，各黒バーの黒バー面積を算出する。上記黒バーグループ設定手段は，ガードバーに含まれる黒バーの黒バー面積に基づいて，黒バーを分類する所定の各グループを設定する。かかる構成により，種々のバーコードに応じて，黒バーの階調を認識するための基準を検出することが可能となる。
【００２３】
バーコード情報認識部は，短縮タイプのＪＡＮコード規格に基づき，バーコード情報を認識する短縮型ＪＡＮコード認識部と；標準タイプのＪＡＮコード規格に基づき，バーコード情報を認識する標準型ＪＡＮコード認識部と；をさらに備えていてもよい。
【００２４】
上記各構成要素が奏する作用は以下の通りである。上記短縮型ＪＡＮコード認識部は，短縮タイプのＪＡＮコード規格に基づき，バーコード情報を認識する。上記標準型ＪＡＮコード認識部は，標準タイプのＪＡＮコード規格に基づき，バーコード情報を認識する。かかる構成により，バーコードがどちらのＪＡＮコード規格に則って記載されているかに関わらず，バーコード情報を認識することが可能となる。
【００２５】
上記課題を解決するために，本発明のある観点によれば，バーコードが記載された帳票の画像を読み取る画像読取り過程と；読み取られた画像から，１つのバーコードが記載されている領域であるバーコードエリアを各々切出すバーコードエリア切出し過程と；各バーコードエリアについて，バーコードに含まれる各バーと直交する方向に沿って，階調のヒストグラムである輝度グラフを作成する輝度グラフ作成過程と；輝度グラフの極大値，又は，極小値に応じて，バーコードに含まれる各バーの幅を判定するバー幅判定過程と；判定された各バーの幅に基づいて，バーコード情報を認識する認識過程と；を含むことを特徴とする，バーコード認識方法が提供される。
【００２６】
上記各構成要素が奏する作用は以下の通りである。上記画像読取り過程では，バーコードが記載された帳票の画像を読み取る。上記バーコードエリア切出し過程では，読み取られた画像から，１つのバーコードが記載されている領域であるバーコードエリアを各々切出す。上記輝度グラフ作成過程では，各バーコードエリアについて，バーコードに含まれる各バーと直交する方向に沿って，階調のヒストグラムである輝度グラフを作成する。上記バー幅判定過程では，輝度グラフの極大値，又は，極小値に応じて，バーコードに含まれる各バーの幅を判定する。上記認識過程では，判定された各バーの幅に基づいて，バーコード情報を認識する。
【００２７】
かかる構成により，読み出された画像が不鮮明な場合であっても，バー間隔が狭い部分における階調の違いを検出することが可能になり，バーコードの情報を認識することが可能となる。
【００２８】
バー幅判定過程は，バーコードに含まれるバーである黒バーに対応する輝度グラフの極小値と，一対の黒バーの間隙である白バーに対応する輝度グラフの極大値とをそれぞれ検出する極値検出過程と；輝度グラフの極大値に応じて，バーコードに含まれる白バーを所定の複数グループに分類する第１グルーピング過程と；白バーを分類する各グループに属する白バーに対して，所定のバー幅を割り当てる第１割当過程と；輝度グラフの極小値に応じて，バーコードに含まれる黒バーを所定の複数グループに分類する第２グルーピング過程と；黒バーを分類する各グループに属する黒バーに対して，所定のバー幅を割り当てる第２割当過程と；をさらに含んでいてもよい。
【００２９】
上記各構成要素が奏する作用は以下の通りである。上記極値検出過程では，黒バーに対応する輝度グラフの極小値と，白バーに対応する輝度グラフの極大値とをそれぞれ検出する。上記第１グルーピング過程では，輝度グラフの極大値に応じて，バーコードに含まれる白バーを所定の複数グループに分類する。上記第１割当過程では，白バーを分類する各グループに属する白バーに対して，所定のバー幅を割り当てる。上記第２グルーピング過程では，輝度グラフの極小値に応じて，バーコードに含まれる黒バーを所定の複数グループに分類する。上記第２割当過程では，黒バーを分類する各グループに属する黒バーに対して，所定のバー幅を割り当てる。かかる構成により，読み取られたバーコードエリアの画像が不鮮明であっても，バーコードに含まれる白バーと黒バーとの階調の違いを認識することが可能になり，バーコード情報を認識することが可能となる。
【００３０】
第１グルーピング過程は，バーコードの両端に形成されたガードバーに含まれる白バーの階調を示すガードバー白ピーク値を基準として，白バーを分類するための各グループを設定する白バーグループ設定過程を含んでいてもよい。
【００３１】
上記各構成要素が奏する作用は以下の通りである。上記白バーグループ設定過程では，ガードバー白ピーク値を基準として，白バーを分類するための各グループを設定する。かかる構成により，種々のバーコードに応じて，白バーの階調を認識するための基準を検出することが可能となる。
【００３２】
第２グルーピング過程は，バーコードの両端に形成されたガードバーに含まれる白バーの階調を示すガードバー白ピーク値よりも小さく，かつ，輝度グラフよりも大きい領域のうち，輝度グラフの１つの極小点を含む領域の面積である黒バー面積を算出する黒バー面積算出過程と；ガードバーに含まれる黒バーの黒バー面積に基づいて，黒バーを分類するための各グループを設定する黒バーグループ設定過程と；をさらに含んでいてもよい。
【００３３】
上記各構成要素が奏する作用は以下の通りである。上記黒バー面積算出過程では，各黒バーの黒バー面積を算出する。上記黒バーグループ設定過程では，黒バー面積に基づいて，黒バーを分類するための各グループを設定する。かかる構成により，種々のバーコードに応じて，黒バーの階調を認識するための基準を検出することが可能となる。
【００３４】
バーコード情報認識過程は，短縮タイプのＪＡＮコード規格に基づき，バーコード情報を認識するＪＡＮ８認識過程と；標準タイプのＪＡＮコード規格に基づき，バーコード情報を認識するＪＡＮ１３認識過程と；をさらに含んでいてもよい。
【００３５】
上記各構成要素が奏する作用は以下の通りである。上記ＪＡＮ８認識過程では，短縮タイプのＪＡＮコード規格に基づき，バーコード情報を認識する。上記ＪＡＮ１３認識過程では，標準タイプのＪＡＮコード規格に基づき，バーコード認識する。かかる構成により，バーコードがどちらのＪＡＮコード規格に則って記載されているかに関わらず，バーコード情報を認識することが可能となる。
【発明の効果】
【００３６】
以上説明したように，本発明によれば，バーコードの画像が不鮮明であっても，バーコード情報を認識することができる。
【発明を実施するための最良の形態】
【００３７】
以下に添付図面を参照しながら，本発明の好適な実施の形態について詳細に説明する。なお，本明細書及び図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００３８】
まず，本実施形態に係るバーコード認識システムについて述べる。
【００３９】
本実施形態に係るバーコード認識システムは，図１に示すように，ワークステーション（以下，ＷＳ）１０１と，光学式バーコード認識装置１０２から構成されていた。ＷＳ１０１は，キーボード等の入力手段，及び，ディスプレイ等の表示手段を備える。
【００４０】
さらに，光学式バーコード認識装置１０２は，図２に示すように，制御部２０１と，センサ部２０４と，画像メモリ２０６と，バーコードエリア切出し部２０８と，バーコードエリアメモリ２１０と，輝度グラフ作成部２１２と，バー幅判定部２１４と，バーコード情報認識部２１６とにより構成される。
【００４１】
制御部２０１は，光学式バーコード認識装置１０２の全体を制御する制御手段であり，ＷＳ１０１との間の通信手段を有する。
センサ部２０４は，バーコードが記録された帳票２０２の画像を読み取る手段を有している。帳票２０２の画像を読み取るために光源として利用される手段としては，レーザ光を利用してもよく，発光ダイオードを利用してもよい，もちろん，ＣＣＤ等の画像読み出し手段により画像データとして読み出してもよい。つまり，帳票２０２に記載されたバーコードは，センサ部２０４により，画像情報として読み出されてよいが，反射光の強度分布として検出されてもよい。画像メモリ２０６は，センサ部２０４により読み出された帳票２０２の画像情報を保持する記録手段である。帳票２０２に複数のバーコードが記載されている場合には，１つのバーコードが記載された帳票２０２上の領域をそれぞれ認識し，各バーコード毎に情報を読み出す必要がある。そこで，バーコードエリア切出し部２０８は，画像メモリ２０６に記録された帳票２０２の画像情報から，１つのバーコードが記載されたエリアをバーコードエリアとして切出す手段である。もちろん，複数のバーコードを同時に読み取り可能な手段を備える場合には，読み取り可能な数のバーコードを含む領域をバーコードエリアとして特定して切出してもよい。バーコードエリアメモリ２１０は，該切り出されたバーコードエリアの画像を保持する記録手段である。
【００４２】
輝度グラフ作成部２１２は，バーコードエリアメモリ２１０に格納された上記バーコードエリアの画像情報を参照し，各バーを横切る方向（以下，水平方向）に走査して検出される色階調のヒストグラムである輝度グラフを作成する手段である。
【００４３】
バー幅判定部２１４は，輝度グラフ作成部２１２により作成された輝度グラフに基づいて，各バーの幅を判定する手段である。
【００４４】
図３に示すように，バー幅判定部２１４は，極値検出手段３０４と，第１グルーピング手段３０６と，白バーグループ設定手段３０８と，第１割当手段３１０と，第２グルーピング手段３１２と，黒バー面積算出手段３１４と，黒バーグループ設定手段３１６と，第２割当手段３１６とにより構成される。
【００４５】
極値検出手段３０４は，バーコードに含まれる黒バーに対応する輝度グラフの極小値と，一対の黒バーの間隙である白バーに対応する輝度グラフの極大値とをそれぞれ検出する。第１グルーピング手段３０６は，輝度グラフの極大値に応じて，各白バーを所定の複数のグループに分類する。第１割当手段３１０は，白バーを分類する所定の各グループに属する白バーに対して，所定のバー幅を割り当てる。第２グルーピング手段３１２は，輝度グラフの極小値に応じて，バーコードに含まれる黒バーを所定の複数グループに分類する。第２割当手段３１８は，黒バーを分類する所定の各グループに属する黒バーに対して，所定のバー幅を割り当てる。白バーグループ設定手段３０８は，バーコードの両端に形成されたガードバーに含まれる白バーの階調を示すガードバー白ピーク値を基準として，白バーを分類する所定の各グループを設定する。黒バー面積算出手段３１４は，各黒バーの黒バー面積を算出する。黒バーグループ設定手段３１６は，ガードバーに含まれる黒バーの黒バー面積に基づいて，黒バーを分類する所定の各グループを設定する。
【００４６】
バーコード情報認識部２１６は，バーコードエリアメモリ２１０に記録されたバーコードエリアの画像情報を参照して，エリア単位でバーコードの情報を認識する手段である。さらに，バーコード情報認識部２１６は，図４に示すように，短縮型ＪＡＮコード認識部４０４と，標準型ＪＡＮコード認識部４０６とにより構成される。短縮型ＪＡＮコード認識部４０４は，短縮タイプ（８桁）のＪＡＮ（Ｊａｐａｎ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ）コード規格（以下，短縮型ＪＡＮコード規格）に基づいて，バーコードエリアメモリ２１０に記録されたバーコードの情報を認識する手段である。標準型ＪＡＮコード認識部４０６は，標準タイプ（１３桁）のＪＡＮ（Ｊａｐａｎ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ）コード規格（以下，標準型ＪＡＮコード規格）に基づいて，バーコードエリアメモリ２１０に記録されたバーコードの情報を認識する手段である。
【００４７】
ここで，上記の光学式バーコード認識装置１０２の動作過程について述べる。
図５は，本実施形態に係る光学式バーコード認識装置１０２におけるバーコード情報の認識過程を示したフローチャートである。
【００４８】
まず，ステップＳ５０２において，バーコードが記録された帳票２０２の画像が，センサ部２０４において読み取られ，画像メモリ２０６に記録される。帳票２０２には，１つのバーコードのみが記載されている場合もあるが，複数のバーコードが記載されている場合もあり，後者の場合には，個々のバーコードが記載された各領域（以下，バーコードエリア）を認識し，各バーコードについて，情報が読み出されなくてはならない。そこで，ステップＳ５０４では，バーコードエリア切出し部２０８が，画像メモリ２０６に記録された帳票２０２の画像情報から，バーコードエリアを切出して，１エリア毎の画像をバーコードエリアメモリ２１０に格納する。
【００４９】
ステップＳ５０６では，輝度グラフ作成部２１２が，バーコードエリアメモリ２１０に格納された各バーコードエリアの画像情報を参照して，バーコードの横方向（バーコードに対して垂直方向）の画像１ライン分を走査して，色階調のヒストグラムである輝度グラフを作成する。輝度は，バーコード画像の淡色部で大きく，濃色部で小さい。上述のように，バーコードは，黒バーと白バーとにより形成されており，該バーコード画像から判読された階調データに基づいて作成された輝度グラフは，複数の極値を有する波状をしており，各ピークは，それぞれ黒バーと白バーとに対応する。つまり，バーコード画像が不鮮明であったとしても，黒バーの芯部に位置する最濃部は，輝度グラフの極小値に対応し，白バーの芯部に位置する最淡部は，輝度グラフの極大値に対応する。
【００５０】
ステップＳ５０８では，バー幅判定部２１４が，輝度グラフ作成部２１２により作成された輝度グラフの極大点と極小点とを検出し，該極大点と極小点とをグルーピングする。該グルーピングは，例えば，極大点であれば，その値の小さいものから順に対応するバーを所定のグループに分類し，各グループに属するバーに対して，所定のバーの幅を割り当てる。逆に，極小点ならば，その値の大きいものから順にグループ分けして，各グループに属するバーに対して，所定のバーの幅を割り当てる。
【００５１】
該割り当てられるバーの幅は，対象とする規格等に応じて，予め決定されている設定値である。従って，分類するバーの種類数と各グループに割り当てられるバーの幅とは，バー幅判定部２１４により判定される過程（Ｓ５０８）において既定値である。
【００５２】
さらに，各バーに割り当てられた幅の数値をもとに，短縮型ＪＡＮコード認識部４０４が，短縮型ＪＡＮコード規格に則ってバーコードを認識する。ステップＳ５１２では，短縮型ＪＡＮコード認識部４０４において，バーコード情報の認識が成功したか否かを判別する。ステップＳ５１２において，バーコード情報の認識が失敗した場合には，ステップＳ５１４へと進行し，標準型ＪＡＮコード認識部４０６によりバーコード情報の認識が実行される。
【００５３】
ステップＳ５１６では，全てのバーコードエリアについて，バーコード情報の認識が実行されたか否かを判別し，未認識のバーコードエリアが存在する場合には，次のバーコードエリアへと進行する（ステップＳ５１８）。ステップＳ５０６〜Ｓ５１４の過程を繰返し，全てのバーコードエリアについてバーコード情報の認識を実行する。
【００５４】
（バー幅判定（Ｓ５０８）の詳細）
ここで，図６〜図１０を参照しながら，ステップＳ５０８に示したバー幅判定過程について詳述する。図６は，バー幅判定の手順を詳細に示したフローチャートである。なお，図６に示したのは，１つのバーコードについてバー幅を判定する過程である。
【００５５】
ステップＳ６０２の段階では，既に，バーコードエリアメモリ２１０に格納されたバーコードの画像情報から，輝度グラフ作成部２１２によって輝度グラフが作成されているとする。また，ここで例示するバーコードは，白色の背景色を有する帳票上に，黒色のバーが記載されたバーコードであるとし，各バーを黒バーと呼び，一対のバー間に形成された間隙を白バーと呼ぶことにする。もちろん，本実施形態に係るバーコード認識装置で対応が可能なバーコードの色と背景色とは，必ずしも黒白の色彩構成である必要はなく，多様な色彩構成が可能である。
【００５６】
まず，ステップＳ６０２では，輝度グラフ作成部２１２により作成された輝度グラフの全領域の中で，背景部分の階調を表す領域（以下，背景輝度領域）とバーコード部分の階調を表す領域（以下，バーコード輝度領域）とを識別し，その境界の位置を特定する。バーコード部分は，白バーと黒バーとが交互に配列されている為，上記バーコード輝度領域は，複数のピークを有する構造となっている。逆に，上記背景輝度領域は，連続した単一色（白色）で構成される為，目立ったピークを有さないほぼフラットな構造となる。従って，背景輝度領域とバーコード輝度領域との境界を判別することは容易である。
【００５７】
次に，ステップＳ６０４では，バーコード部分の左端に形成された左ガードバーと，右端に形成された右ガードバーとを検出する。ガードバーとは，（黒バー，白バー，黒バー）の順序で形成された所定の幅を有するバーの組合せのことである。また，ガードバーを構成する各バーは，バーコードの情報を読み出す際には，基準として参照される。以下では，一例として，ガードバーを構成する各バーの幅が，それぞれ１モジュール（０．３３ｍｍ）である場合について述べる。もちろん，この幅にガードバーを構成する各バーの幅が限定されるわけではなく，例えば，２モジュール（０．６６ｍｍ）以上とすることも可能である。また，モジュール単位に限定されるものでもなく，採用する規格等に応じて，自由に設定することが可能である。ガードバーは，背景部分からの，１つ目と２つ目の下向きピーク（黒ピーク），１つ目の上向きのピーク（白ピーク）を発見することで検出できる。
【００５８】
ステップＳ６０６では，背景輝度領域の輝度（以下，背景輝度値）と，ガードバーを構成する黒バーに対応する輝度のピーク値（以下，ガードバー黒ピーク値）と，ガードバーを構成する白バーに対応する輝度のピーク値（以下，ガードバー白ピーク値）とを検出する。より詳細には，該ガイドバー黒ピーク値は，左右のガードバーに含まれる２本づつの黒バーに対応する輝度のピーク値の算術平均値であり，さらに，該ガイドバー白ピーク値は，左右のガードバーに含まれる白バーに対応する輝度グラフのピーク値の算術平均値である。
【００５９】
なお，黒バーに対応する輝度のピーク値（以下，黒ピーク値）は，ガードバー部分の輝度グラフの極小値であり，白バーに対応する輝度のピーク値（以下，白ピーク値）は，ガードバー部分の輝度グラフの極大値である（図７を参照）。極値検出過程であるステップＳ６０６において，極値検出手段３０４により，各バーに対応する黒ピーク値と白ピーク値とが検出される。
【００６０】
次に，ステップＳ６３０においては，バーコード部分に含まれる白バーの幅を判定する為に，輝度グラフの白ピーク値に応じて，白バーをグルーピングする。一例として，白バーを３種類のグループに分類する方法について述べる。もちろん，４種類以上のグループに分類してもよく，また，分類数を２種類以下とすることも可能である。
【００６１】
ステップＳ６３０は，ステップＳ６０８，Ｓ６１０，Ｓ６１２の３ステップにより構成される。ステップＳ６０８〜Ｓ６１２は，第１グルーピング手段３０６により，白バーをグループ分けする第１グルーピング過程である。特に，該過程は，白バーグループ設定手段３０８により，白バーを分類するための各グループを規定する条件を設定する白バーグループ設定過程と，第１割当手段３１０により，規定された条件と検出された白ピーク値とに応じて分類された白バーに対して，各グループ毎に所定の幅を割り当てる第１割当過程とを含む。
【００６２】
以下では，ステップＳ６０８〜Ｓ６１２について，図８を参照しながら詳述する。
【００６３】
まず，ステップＳ６０８において，第１のグループに属する白バー（以下，白バーＡ）を分類するために，対応する輝度の範囲を設定する。第１のグループは，白ピーク値が，次式（１）で表現される白バーＡ輝度値よりも低い範囲に含まれる白バーの集合によって形成される。
【００６４】
（白バーＡ輝度値）＝（ガードバー白ピーク値）＋（白バーＡ輝度マージン）
・・・（１）
但し，白バーＡ輝度マージン値は，予め設定された値である。
【００６５】
次に，ステップＳ６１０において，第２のグループに属する白バー（以下，白バーＣ）を分類するために，対応する輝度の範囲を設定する。第２のグループは，白ピーク値が，次式（２）で表現される白バーＣ輝度値よりも高い範囲に含まれる白バーの集合よって形成される。
【００６６】
（白バーＣ輝度値）＝（背景輝度値）−（白バーＣ輝度マージン値）・・・（２）
但し，白バーＣ輝度マージン値は，予め設定された値である。
【００６７】
最後に，ステップＳ６１２においては，第３のグループに属する白バー（以下，白バーＢ）を分類するために，対応する輝度の範囲が設定され，その後，各白バーがグループ別に分類される。
【００６８】
第３のグループは，上記第１のグループの範囲にも，上記第２のグループの範囲にも属さない白バーとして設定される。つまり，白バーＢの白ピーク値は，白バーＡ輝度値以上，かつ，白バーＣ輝度値以下の範囲に設定される。ここでは，ガードバー白ピーク値と背景輝度値とを基準として，所定の白バーＡ輝度マージン値と白バーＣ輝度マージン値とにより，輝度グラフを輝度に応じて３つの領域に区分する例を示したが，４つ以上の領域に区分する場合には，白バーＡ輝度値と白バーＣ輝度値とを基準として，さらに分割することもできる。
【００６９】
上記所定のマージン値は，ガードバー白ピーク値と背景輝度値とで規定される輝度の領域を区分数に応じて，等分割するように設定されることも可能であるし，予め種々のテストパターンを用いて，多様な幅の白バーについて測定された白ピーク値から想定された値により設定されてもよい。
【００７０】
上述のように，各グループを規定する輝度の範囲が設定されると，各白バーは，各々が対応する白ピーク値に応じて，含まれる輝度の範囲に対応するグループに分類される。各輝度の範囲に対応するグループには，所定の幅が設定されており，属するグループに応じて，白バーの幅が割り当てられる。例えば，各グループに属する白バーの幅は，下表のように割り当てられてもよい。
【００７１】
【表１】
2007226328.tif 000003
【００７２】
このように，バーコードに含まれる各白バーの幅は，所定の種類に分類され，各グループ毎に所定の幅が割り当てられ，設定される。これにより，黒バーと白バーとの境界部分のにじみ等により，白バーの幅が均一でなく，また，幅の狭い白バーなどにおいて，２値化による認識が困難であったとしても，それぞれ所定の幅を有する白バーとして認識することができる。
【００７３】
次に，ステップＳ６４０において，バーコード部分に含まれる黒バーの幅を判定する為に，輝度グラフの黒ピーク値に応じて，黒バーをグルーピングする。以下では，一例として，黒バーを４種類のグループに分類する方法について述べる。もちろん，５種類以上のグループに分類してもよく，３種類以下のグループに分類することも可能である。
【００７４】
ステップＳ６４０は，ステップＳ６１４，Ｓ６１６の２ステップにより構成される。ステップＳ６１４，Ｓ６１６は，第２グルーピング手段３１２により，黒バーを分類する第２のグルーピング過程である。特に，該過程は，黒バー面積算出手段３１４により，黒バーを各グループに分類する指標となる黒バー面積（後述）を算出する黒バー面積算出過程と，黒バーグループ設定手段３１６により，黒バーを分類するためのグループを規定する条件を設定する黒バーグループ設定過程とを含む。また，第２割当手段３１８により，該規定された条件に基づいて分類された黒バーに対して，グループ毎に所定のバーの幅を割り当てる第２割当過程とを含む。
【００７５】
以下では，ステップＳ６１４，Ｓ６１６について，図９を参照しながら詳述する。
【００７６】
まず，ステップＳ６１４では，左右のガードバーにそれぞれ２本づつ含まれる黒バーの黒ピーク値を含む輝度グラフの領域において，ガードバー白ピーク値よりも下回る部分の面積（図９中の拡大図を参照）を求め，それらの平均値（以下，黒バーＡ面積）を算出する。
【００７７】
次に，ステップＳ６１６においては，ステップＳ６１４で算出した黒バーＡ面積を基準にして，バーコードに含まれる黒バーを分類する。各黒バーは，輝度グラフにおいて，下向きのピーク（以下，黒ピーク）により特定されることは既に述べた。これらの黒ピークにおいて，ガードバー白ピーク値を下回る部分の面積（以下，黒ピーク面積；図９を参照）をバーコードに含まれる各黒バーについて算出する。該黒ピーク面積は，黒バーの幅に概ね比例する為，黒バーの幅を分類する際の指標として利用することが可能である。例えば，上記黒バーＡ面積を基準として，下表のように各黒バーを４種類のグループに分類することができる。
【００７８】
【表２】
2007226328.tif 000004
【００７９】
但し，表２に示した黒バーＡ〜黒バーＤのいずれにも該当しない場合には，判定エラーとする。もちろん，表２に示した区分の仕方に限定されることなく，使用するバーコードやスキャナの特性に応じて，適宜，範囲を調整してもよい。
【００８０】
上述のように，バーコードに含まれる各黒バーに対応する黒バー面積に応じて，黒バーを各グループに分類した後，属するグループに応じて，所定の幅を割り当てられて，各黒バーの幅として設定される。例えば，表２の右欄のように割り当ててもよい。
【００８１】
このように，黒バーを分類する指標として，黒バー面積を採用したが，これにより，白バーの場合の背景色に相当するような太いバーの基準となる輝度値がない黒バーであっても，輝度値をもとに，バーの太さを決定することができる。また，一定以上の太さの黒バーの場合，黒ピーク値は，同じ輝度になってしまうが，黒バーＡの輝度グラフの面積を基準とすれば，黒バーの太さの種類が多い場合であっても対応が可能となる。
【００８２】
以上のように，各バーは，輝度グラフの各ピーク値を参照して，所定のグループに分類され，該グループ毎にバーの幅が割り当てられる。これにより，バーコードが記録された帳票から読み出されたバーコード画像が不鮮明であったとしても，各バーコードの幅を分類して特定することが可能となり，バーコードの情報を読み出すことができる。
【００８３】
なお，以上で述べた実施形態においては，ＪＡＮコード規格のバーコードを念頭に置いて説明したが，これに限定されることなく，ＥＡＮ（Ｕｎｉｖｅｒｓａｌ  Ｐｒｏｄｕｃｔ  Ｃｏｄｅ），ＵＰＣ（Ｅｕｒｏｐｅａｎ  Ａｒｔｉｃｌｅ  Ｎｕｍｂｅｒ）等，他の規格のバーコードにも適用することが可能である。その場合には，各規格に応じて，適宜，割り当てられる各バーの幅を調整することで対応することができる。
【００８４】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明は係る例に限定されないことは言うまでもない。当業者であれば，特許請求の範囲に記載された範疇内において，各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【００８５】
（産業上の利用可能性）
本発明は，バーコード認識装置，及び，バーコード認識方法に適用可能である。
【図面の簡単な説明】
【００８６】
【図１】本発明の一実施形態に係るバーコード認識システムの構成を示すブロック図である。
【図２】本発明の一実施形態に係るバーコード認識装置の構成を示すブロック図である。
【図３】本発明の一実施形態に係るバーコード認識装置が備えるバー幅判定部の構成を示すブロック図である。
【図４】本発明の一実施形態に係るバーコード認識装置が備える認識部の構成を示すブロック図である。
【図５】本発明の一実施形態に係るバーコード認識装置の動作を示すフローチャートである。
【図６】バーの幅を判定する方法を示すフローチャートである。
【図７】バーコードの画像とそれに対応する輝度グラフの一例である。
【図８】輝度グラフの一例である。
【図９】輝度グラフの一例である。
【図１０】本実施形態に係るバーコード認識装置により認識された情報の一例。
【図１１】従来のバーコード認識システムの構成を示すブロック図である。
【図１２】従来のバーコード認識装置の構成を示すブロック図である。
【図１３】従来のバーコード認識装置が備える認識部の構成を示すブロック図である。
【図１４】従来のバーコード認識装置の動作を示すフローチャートである。
【符号の説明】
【００８７】
２０１      制御部
２０２      帳票
２０４      センサ部
２０６      画像メモリ
２０８      バーコードエリア切出し部
２１０      バーコードエリアメモリ
２１２      輝度グラフ作成部
２１４      バー幅判定部
２１６      認識部
３０４      極値検出手段
３０６      第１グルーピング手段
３０８      白バーグループ設定手段
３１０      第１割当手段
３１２      第２グルーピング手段
３１４      黒バー面積算出手段
３１６      黒バーグループ設定手段
３１８      第２割当手段
４０４      短縮型ＪＡＮコード認識部
４０６      標準型ＪＡＮコード認識部
【図１】
2007226328.tif 000005
【図２】
2007226328.tif 000006
【図３】
2007226328.tif 000007
【図４】
2007226328.tif 000008
【図５】
2007226328.tif 000009
【図６】
2007226328.tif 000010
【図７】
2007226328.tif 000011
【図８】
2007226328.tif 000012
【図９】
2007226328.tif 000013
【図１０】
2007226328.tif 000014
【図１１】
2007226328.tif 000015
【図１２】
2007226328.tif 000016
【図１３】
2007226328.tif 000017
【図１４】
2007226328.tif 000018