(57)【要約】【課題】読取精度の低下を抑制し得る光学的情報読取装置を提供する。【解決手段】マージン領域が存在しないと判定される場合に、マージン相当領域のうち、第１領域Ｂ１と、第２領域Ｂ２と、第３領域Ｂ３とのそれぞれの幅値Ｗ１，Ｗ２，Ｗ３が算出される。そして、マージン領域が存在しないと判定される場合であっても、第１領域Ｂ１，第２領域Ｂ２および第３領域Ｂ３からなる端部近傍配列が第１状態でありかつ第２状態であると判定される場合に、メインパターンＢに相当する情報領域がデコードされる。【選択図】図４
2012123501.tif 000002
【特許請求の範囲】
【請求項１】
１または２以上の単位モジュールからなる明色パターンおよび暗色パターンが複数配列されて構成されるメインパターンを有するとともに、このメインパターンに隣接して明色パターンとして認識されるべきマージンが設けられた一次元コードを読み取り可能な光学的情報読取装置であって、
前記一次元コードからの反射光を受光し、この一次元コードの各パターンごとに前記反射光の輝度に応じた受光信号を出力する受光手段と、
前記受光手段により出力される前記受光信号の信号波形を閾値と比較し、その比較結果に基づいて前記信号波形を明色領域と暗色領域とに区分けする二値化手段と、
前記二値化手段により区分けされた前記明色領域および前記暗色領域からなる配列データにおいて前記マージンとして認識されるべきマージン領域が存在するか否かについて判定するマージン有無判定手段と、
前記配列データの前記メインパターンに相当する情報領域をデコード可能なデコード手段と、
を備え、
前記マージン領域に相当するマージン相当領域のうち、前記情報領域に隣接する明色領域からなる第１領域と、この第１領域に隣接する暗色領域からなる第２領域と、この第２領域に隣接する明色領域からなる第３領域とのそれぞれの幅値を算出する幅値算出手段と、
前記第１領域の幅値と前記第２領域の幅値と前記第３領域の幅値との少なくともいずれか１つが前記明色領域または前記暗色領域として存在しうる最大幅値よりも大きい状態を示す第１状態であるか否かについて判定する第１状態判定手段と、
前記第１領域と前記第２領域と前記第３領域との合計幅値が前記マージン領域に対応するマージン幅値よりも大きい状態を示す第２状態であるか否かについて判定する第２状態判定手段と、
を有し、
前記デコード手段は、
前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記第１状態判定手段により前記第１状態であると判定され、かつ、前記第２状態判定手段により前記第２状態であると判定される場合に、
前記配列データの前記情報領域をデコードすることを特徴とする光学的情報読取装置。
【請求項２】
前記情報領域の端部を構成する暗色領域からなる端部領域の輝度値と前記マージン領域に相当するマージン相当領域内に存在する複数の前記明色領域および前記暗色領域の輝度値とをそれぞれ記憶する記憶手段と、
前記記憶手段に記憶された前記端部領域の輝度値とこの端部領域に隣接する明色領域の輝度値との差よりも小さな値を基準輝度差とするとき、前記マージン相当領域において前記端部領域からｋ番目の領域の輝度値とｋ＋１番目の領域の輝度値との差である輝度差と前記基準輝度差とを比較する比較手段と、
を有し、
前記デコード手段は、
前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、
前記第１状態判定手段により前記第１状態であると判定され、かつ、前記第２状態判定手段により前記第２状態であると判定される場合と、
前記第１状態判定手段により前記第１状態でないと判定されるか、または、前記第２状態判定手段により前記第２状態でないと判定される場合であって、前記比較手段により全ての前記輝度差が前記基準輝度差未満となる場合に、
前記配列データの前記情報領域をデコードすることを特徴とする請求項１に記載の光学的情報読取装置。
【請求項３】
前記マージン相当領域において前記端部領域に隣接する１番目の領域の幅値からｋ番目までの領域の幅値を積算する積算手段を備え、
前記デコード手段は、
前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、
前記第１状態判定手段により前記第１状態であると判定され、かつ、前記第２状態判定手段により前記第２状態であると判定される場合と、
前記第１状態判定手段により前記第１状態でないと判定されるか、または、前記第２状態判定手段により前記第２状態でないと判定される場合であって、前記積算手段により積算される１番目からｋ番目までの領域の幅値の積算値が前記マージン領域に対応するマージン幅値以上であり、かつ、前記比較手段により１番目からｋ番目までの全ての前記輝度差が前記基準輝度差未満である場合に、
前記配列データの前記情報領域をデコードすることを特徴とする請求項２に記載の光学的情報読取装置。
【請求項４】
１または２以上の単位モジュールからなる明色パターンおよび暗色パターンが複数配列されて構成されるメインパターンを有するとともに、このメインパターンに隣接して明色パターンとして認識されるべきマージンが設けられた一次元コードを読み取り可能な光学的情報読取装置であって、
前記一次元コードからの反射光を受光し、この一次元コードの各パターンごとに前記反射光の輝度に応じた受光信号を出力する受光手段と、
前記受光手段により出力される前記受光信号の信号波形を閾値と比較し、その比較結果に基づいて前記信号波形を明色領域と暗色領域とに区分けする二値化手段と、
前記二値化手段により区分けされた前記明色領域および前記暗色領域からなる配列データにおいて前記マージンとして認識されるべきマージン領域が存在するか否かについて判定するマージン有無判定手段と、
前記配列データの前記メインパターンに相当する情報領域をデコード可能なデコード手段と、
を備え、
前記情報領域の端部を構成する暗色領域からなる端部領域の輝度値と前記マージン領域に相当するマージン相当領域内に存在する複数の前記明色領域および前記暗色領域の輝度値とをそれぞれ記憶する記憶手段と、
前記記憶手段に記憶された前記端部領域の輝度値とこの端部領域に隣接する明色領域の輝度値との差よりも小さな値を基準輝度差とするとき、前記マージン相当領域において前記端部領域からｋ番目の領域の輝度値とｋ＋１番目の領域の輝度値との差である輝度差と前記基準輝度差とを比較する比較手段と、
を有し、
前記デコード手段は、
前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記比較手段により全ての前記輝度差が前記基準輝度差未満となる場合に、
前記配列データの前記情報領域をデコードすることを特徴とする光学的情報読取装置。
【請求項５】
前記マージン相当領域において前記端部領域に隣接する１番目の領域の幅値からｋ番目までの領域の幅値を積算する積算手段を備え、
前記デコード手段は、
前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記積算手段により積算される１番目からｋ番目までの領域の幅値の積算値が前記マージン領域に対応するマージン幅値以上であり、かつ、前記比較手段により１番目からｋ番目までの全ての前記輝度差が前記基準輝度差未満である場合に、
前記配列データの前記情報領域をデコードすることを特徴とする請求項４に記載の光学的情報読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端部にマージンが設けられる一次元コードを光学的に読み取る光学的情報読取装置に関するものである。
【背景技術】
【０００２】
従来、端部にマージンが設けられるバーコードなどの一次元コードを光学的に読み取る光学的情報読取装置に関する技術として、下記特許文献１に示すバーコードデコード装置が知られている。このバーコードデコード装置では、バーコードラベルを読取手段で読み取った際のアナログ２値出力データを、データ計数手段によって基準クロックにより計数し、その計数値データをデコードする際に、予めアナログ２値データを計数時にバー・スペースデータ弁別手段により読取手段からのアナログ信号レベルによってバーデータとスペースデータの弁別(判別)を行い、計数値データ上にバー・スペース情報を付加する。そして、付加しておいたバー・スペース情報を基にデータの判別を行い、バーデータもしくはスペースデータ読み出し時に、ある一定の係数を用い変換処理を行うことによりデータの補正を行う。この補正によってデータ格納手段に蓄えられた計数値データのバーデータもしくはスペースデータの太りや細りによる影響を少なくしたデータ変換を行う。このような一連の前処理を従来のデコード処理以前に行うことにより、バー・スペース比が規定値より著しく異なったデータのデコードも従来と同様のデコード処理で可能としている。
【０００３】
下記特許文献２に示すバーコードデコード装置が知られている。このバーコードデコード装置では、光電変換手段にて生成される電気信号から白及び黒の変換点が変換点検出手段により複数検出されると、これら複数の変換点から、白及び黒の変換点と共に誤って検出される可能性のある変換点の真偽を、判別手段により変換点間の間隔を測定することによって判別する。そして、補正手段により、判別手段にて判別された真の変換点に基づいて、偽の変換点が真の変換点に補正される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０７−１６８９０８号公報
【特許文献２】特開平１１−０９６２８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、一次元コードのマージン領域に対して印影が押印等されたり当該一次元コードを囲う枠等が表示されたりすると、必要なマージンが確保できないために一次元コードの読み取りが失敗する場合がある。しかしながら、上記特許文献１，２の技術では、必要な情報が含まれるメインパターンの補正はできても、このメインパターンに隣接するマージン領域に関する補正をすることができない。そのため、読取精度が低下してしまうという問題がある。
【０００６】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、読取精度の低下を抑制し得る光学的情報読取装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、特許請求の範囲に記載の請求項１の光学的情報読取装置では、１または２以上の単位モジュールからなる明色パターンおよび暗色パターンが複数配列されて構成されるメインパターンを有するとともに、このメインパターンに隣接して明色パターンとして認識されるべきマージンが設けられた一次元コードを読み取り可能な光学的情報読取装置であって、前記一次元コードからの反射光を受光し、この一次元コードの各パターンごとに前記反射光の輝度に応じた受光信号を出力する受光手段と、前記受光手段により出力される前記受光信号の信号波形を閾値と比較し、その比較結果に基づいて前記信号波形を明色領域と暗色領域とに区分けする二値化手段と、前記二値化手段により区分けされた前記明色領域および前記暗色領域からなる配列データにおいて前記マージンとして認識されるべきマージン領域が存在するか否かについて判定するマージン有無判定手段と、前記配列データの前記メインパターンに相当する情報領域をデコード可能なデコード手段と、を備え、前記マージン領域に相当するマージン相当領域のうち、前記情報領域に隣接する明色領域からなる第１領域と、この第１領域に隣接する暗色領域からなる第２領域と、この第２領域に隣接する明色領域からなる第３領域とのそれぞれの幅値を算出する幅値算出手段と、前記第１領域の幅値と前記第２領域の幅値と前記第３領域の幅値との少なくともいずれか１つが前記明色領域または前記暗色領域として存在しうる最大幅値よりも大きい状態を示す第１状態であるか否かについて判定する第１状態判定手段と、前記第１領域と前記第２領域と前記第３領域との合計幅値が前記マージン領域に対応するマージン幅値よりも大きい状態を示す第２状態であるか否かについて判定する第２状態判定手段と、を有し、前記デコード手段は、前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記第１状態判定手段により前記第１状態であると判定され、かつ、前記第２状態判定手段により前記第２状態であると判定される場合に、前記配列データの前記情報領域をデコードすることを特徴とする。
【０００８】
請求項２の発明は、請求項１に記載の光学的情報読取装置において、前記情報領域の端部を構成する暗色領域からなる端部領域の輝度値と前記マージン領域に相当するマージン相当領域内に存在する複数の前記明色領域および前記暗色領域の輝度値とをそれぞれ記憶する記憶手段と、前記記憶手段に記憶された前記端部領域の輝度値とこの端部領域に隣接する明色領域の輝度値との差よりも小さな値を基準輝度差とするとき、前記マージン相当領域において前記端部領域からｋ番目の領域の輝度値とｋ＋１番目の領域の輝度値との差である輝度差と前記基準輝度差とを比較する比較手段と、を有し、前記デコード手段は、前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記第１状態判定手段により前記第１状態であると判定され、かつ、前記第２状態判定手段により前記第２状態であると判定される場合と、前記第１状態判定手段により前記第１状態でないと判定されるか、または、前記第２状態判定手段により前記第２状態でないと判定される場合であって、前記比較手段により全ての前記輝度差が前記基準輝度差未満となる場合に、前記配列データの前記情報領域をデコードすることを特徴とする。
【０００９】
請求項３の発明は、請求項２に記載の光学的情報読取装置において、前記マージン相当領域において前記端部領域に隣接する１番目の領域の幅値からｋ番目までの領域の幅値を積算する積算手段を備え、前記デコード手段は、前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記第１状態判定手段により前記第１状態であると判定され、かつ、前記第２状態判定手段により前記第２状態であると判定される場合と、前記第１状態判定手段により前記第１状態でないと判定されるか、または、前記第２状態判定手段により前記第２状態でないと判定される場合であって、前記積算手段により積算される１番目からｋ番目までの領域の幅値の積算値が前記マージン領域に対応するマージン幅値以上であり、かつ、前記比較手段により１番目からｋ番目までの全ての前記輝度差が前記基準輝度差未満である場合に、前記配列データの前記情報領域をデコードすることを特徴とする。
【００１０】
また、特許請求の範囲に記載の請求項４の光学的情報読取装置では、１または２以上の単位モジュールからなる明色パターンおよび暗色パターンが複数配列されて構成されるメインパターンを有するとともに、このメインパターンに隣接して明色パターンとして認識されるべきマージンが設けられた一次元コードを読み取り可能な光学的情報読取装置であって、前記一次元コードからの反射光を受光し、この一次元コードの各パターンごとに前記反射光の輝度に応じた受光信号を出力する受光手段と、前記受光手段により出力される前記受光信号の信号波形を閾値と比較し、その比較結果に基づいて前記信号波形を明色領域と暗色領域とに区分けする二値化手段と、前記二値化手段により区分けされた前記明色領域および前記暗色領域からなる配列データにおいて前記マージンとして認識されるべきマージン領域が存在するか否かについて判定するマージン有無判定手段と、前記配列データの前記メインパターンに相当する情報領域をデコード可能なデコード手段と、を備え、前記情報領域の端部を構成する暗色領域からなる端部領域の輝度値と前記マージン領域に相当するマージン相当領域内に存在する複数の前記明色領域および前記暗色領域の輝度値とをそれぞれ記憶する記憶手段と、前記記憶手段に記憶された前記端部領域の輝度値とこの端部領域に隣接する明色領域の輝度値との差よりも小さな値を基準輝度差とするとき、前記マージン相当領域において前記端部領域からｋ番目の領域の輝度値とｋ＋１番目の領域の輝度値との差である輝度差と前記基準輝度差とを比較する比較手段と、を有し、前記デコード手段は、前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記比較手段により全ての前記輝度差が前記基準輝度差未満となる場合に、前記配列データの前記情報領域をデコードすることを特徴とする。
【００１１】
請求項５の発明は、請求項４に記載の光学的情報読取装置において、前記マージン相当領域において前記端部領域に隣接する１番目の領域の幅値からｋ番目までの領域の幅値を積算する積算手段を備え、前記デコード手段は、前記マージン有無判定手段により前記マージン領域が存在しないと判定される場合であっても、前記積算手段により積算される１番目からｋ番目までの領域の幅値の積算値が前記マージン領域に対応するマージン幅値以上であり、かつ、前記比較手段により１番目からｋ番目までの全ての前記輝度差が前記基準輝度差未満である場合に、前記配列データの前記情報領域をデコードすることを特徴とする。
【発明の効果】
【００１２】
請求項１の発明では、幅値算出手段により、マージン相当領域のうち、情報領域に隣接する明色領域からなる第１領域と、この第１領域に隣接する暗色領域からなる第２領域と、この第２領域に隣接する明色領域からなる第３領域とのそれぞれの幅値が算出される。そして、マージン有無判定手段によりマージン領域が存在しないと判定される場合であっても、第１状態判定手段により第１領域の幅値と第２領域の幅値と第３領域の幅値との少なくともいずれか１つが明色領域または暗色領域として存在しうる最大幅値よりも大きい状態を示す第１状態であると判定され、かつ、第２状態判定手段により第１領域と第２領域と第３領域との合計幅値がマージン幅値よりも大きい状態を示す第２状態であると判定される場合に、デコード手段により、配列データの情報領域がデコードされる。
【００１３】
マージン相当領域の第１領域の幅値と第２領域の幅値と第３領域の幅値との少なくともいずれか１つが明色領域または暗色領域として存在しうる最大幅値よりも大きい状態を示す第１状態では、これら第１〜第３領域からなる配列が一次元コードの一部である可能性が低いと言える。また、各第１〜第３領域の合計幅値がマージン幅値よりも大きい状態を示す第２状態でも、これら第１〜第３領域からなる配列が一次元コードの一部である可能性が低いと言える。
【００１４】
すなわち、読取対象の一次元コードのマージン領域に第１〜第３領域などが存在するためにマージン領域が存在しないと判定される場合であっても、これら第１〜第３領域が第１状態かつ第２状態を満たす場合には、当該第１〜第３領域からなる配列は、一次元コードの一部ではなく模様等であると判断することができる。
したがって、マージン領域に複数の明色領域や暗色領域が存在する場合であっても、第１状態かつ第２状態を満たす配列データの情報領域をデコードすることで、読取精度の低下を抑制することができる。
【００１５】
請求項２の発明では、比較手段により、マージン相当領域において端部領域からｋ番目の領域の輝度値とｋ＋１番目の輝度値との差である輝度差と、上記基準輝度差とが比較される。そして、マージン有無判定手段によりマージン領域が存在しないと判定される場合であっても、第１状態判定手段により第１状態であると判定され、かつ、第２状態判定手段により第２状態であると判定される場合と、第１状態判定手段により第１状態でないと判定されるか、または、第２状態判定手段により第２状態でないと判定される場合であって、比較手段により全ての輝度差が基準輝度差未満となる場合に、デコード手段により、配列データの情報領域がデコードされる。
【００１６】
マージン相当領域に存在する複数の明色領域や暗色領域が一次元コードと無関係の模様等であっても、例えば、第１〜第３領域の幅値が上記最大幅値よりも十分小さい場合には、マージン領域が存在しないと判定されるとともに、第１状態でないと判定されるか第２状態でないと判定されてしまい、デコードが実施されないこととなる。また、端部領域からｋ番目の領域の輝度値とｋ＋１番目の輝度値との差である輝度差が上記基準輝度差未満となる場合には、ｋ番目の領域とｋ＋１番目の領域とは、一次元コードを構成する明色パターンおよび暗色パターンと異なりこれら明色パターンおよび暗色パターンよりも輝度値の差が低くなる色を組み合わせた模様等の一部であると言える。
【００１７】
このため、マージン領域が存在しないと判定されるとともに、第１状態でないと判定されるか第２状態でないと判定される場合であっても、マージン領域に存在する領域の色（輝度値）を考慮して、マージン相当領域での全ての輝度差が基準輝度差未満となる場合には、マージン領域に存在する複数の明色領域や暗色領域は、一次元コードの一部ではなく模様等であると判断することができ、読取精度の低下を確実に抑制することができる。
【００１８】
請求項３の発明では、積算手段により、マージン相当領域において端部領域に隣接する１番目の領域の幅値からｋ番目までの領域の幅値が積算される。そして、マージン有無判定手段によりマージン領域が存在しないと判定される場合であっても、第１状態判定手段により第１状態であると判定され、かつ、第２状態判定手段により第２状態であると判定される場合と、第１状態判定手段により第１状態でないと判定されるか、または、第２状態判定手段により第２状態でないと判定される場合であって、積算手段により積算される１番目からｋ番目までの領域の幅値の積算値がマージン領域に対応するマージン幅値以上であり、かつ、比較手段により１番目からｋ番目までの全ての輝度差が上記基準輝度差未満である場合に、デコード手段により、配列データの情報領域がデコードされる。
【００１９】
１番目からｋ番目までの領域の幅値の積算値がマージン領域に対応するマージン幅値以上になると、ｋ番目までの領域には確実にマージン領域が含まれることとなる。このため、当該ｋ番目までの輝度差が上記基準輝度差未満である場合、マージン領域の明色領域や暗色領域は、明色パターンおよび暗色パターンよりも輝度値の差が低くなる色を組み合わせた模様等であり一次元コードの一部ではないと判断することができ、読取精度の低下を確実に抑制することができる。
【００２０】
請求項４の発明では、比較手段により、マージン相当領域において端部領域からｋ番目の領域の輝度値とｋ＋１番目の輝度値との差である輝度差と、上記基準輝度差とが比較される。そして、マージン有無判定手段によりマージン領域が存在しないと判定される場合であっても、比較手段により全ての輝度差が上記基準輝度差未満となる場合に、デコード手段により、配列データの情報領域がデコードされる。
【００２１】
端部領域からｋ番目の領域の輝度値とｋ＋１番目の輝度値との差である輝度差が上記基準輝度差未満となる場合には、ｋ番目の領域とｋ＋１番目の領域とは、一次元コードを構成する明色パターンおよび暗色パターンと異なりこれら明色パターンおよび暗色パターンよりも輝度値の差が低くなる色を組み合わせた模様等の一部であると言える。
【００２２】
このため、マージン領域が存在しないと判定される場合であっても、マージン領域に存在する領域の色（輝度値）を考慮して、マージン相当領域での全ての輝度差が基準輝度差未満となる場合には、マージン領域に存在する複数の明色領域や暗色領域は、一次元コードの一部ではなく模様等であると判断することができる。
したがって、マージン領域に複数の明色領域や暗色領域が存在する場合であっても、マージン相当領域での全ての輝度差が上記基準輝度差未満となる配列データの情報領域をデコードすることで、読取精度の低下を抑制することができる。
【００２３】
請求項５の発明では、積算手段により、マージン相当領域において端部領域に隣接する１番目の領域の幅値からｋ番目までの領域の幅値が積算される。そして、マージン有無判定手段によりマージン領域が存在しないと判定される場合であっても、積算手段により積算される１番目からｋ番目までの領域の幅値の積算値がマージン領域に対応するマージン幅値以上であり、かつ、比較手段により１番目からｋ番目までの全ての輝度差が上記基準輝度差未満である場合に、デコード手段により、配列データの情報領域がデコードされる。
【００２４】
１番目からｋ番目までの領域の幅値の積算値がマージン領域に対応するマージン幅値以上になると、ｋ番目までの領域には確実にマージン領域が含まれることとなる。このため、当該ｋ番目までの輝度差が上記基準輝度差未満である場合、マージン領域の明色領域や暗色領域は、明色パターンおよび暗色パターンよりも輝度値の差が低くなる色を組み合わせた模様等であり一次元コードの一部ではないと判断することができ、読取精度の低下を確実に抑制することができる。
【図面の簡単な説明】
【００２５】
【図１】第１実施形態に係る光学的情報読取装置の電気的構成を示すブロック図である。
【図２】図２（Ａ）は、第１実施形態におけるメインパターンとマージンとの位置関係を示す説明図であり、図２（Ｂ）は、マージン領域に印影が押印された状態を拡大して例示する説明図である。
【図３】第１実施形態における読取処理の流れを例示するフローチャートである。
【図４】図３のマージン領域確認処理のサブルーチンを例示するフローチャートである。
【図５】第２実施形態における読取処理の流れを例示するフローチャートである。
【図６】図５のマージン領域確認処理のサブルーチンを例示するフローチャートである。
【図７】図７（Ａ）は、第２実施形態におけるメインパターンとマージンとの位置関係を示す説明図であり、図７（Ｂ）は、マージン領域に印影が押印された状態を例示する説明図である。
【図８】図７（Ｂ）に対応する図表であり、図８（Ａ）は各領域での輝度値を示し、図８（Ｂ）は輝度差を示す。
【図９】第２実施形態の変形例におけるマージン領域確認処理のサブルーチンを例示するフローチャートである。
【図１０】第３実施形態におけるマージン領域確認処理のサブルーチンを例示するフローチャートである。
【発明を実施するための形態】
【００２６】
［第１実施形態］
以下、本発明の第１実施形態に係る光学的情報読取装置について図を参照して説明する。図１は、第１実施形態に係る光学的情報読取装置１０の電気的構成を示すブロック図である。
【００２７】
図１に示すように、光学的情報読取装置１０は、物品に付されたバーコード等の一次元コードを光学的に読み取る装置として構成されている。この光学的情報読取装置１０は、図示しないケースの内部に回路部２０が収容されてなるものであり、回路部２０は、主に、照明光源２１、受光センサ２８、結像レンズ２７等の光学系と、メモリ３５、制御回路４０、トリガースイッチ４２等のマイクロコンピュータ（以下「マイコン」という）系と、から構成されている。
【００２８】
光学系は、投光光学系と、受光光学系とに分かれている。投光光学系を構成する照明光源２１は、照明光Ｌｆを発光可能な照明光源として機能するもので、例えば、赤色のＬＥＤとこのＬＥＤの出射側に設けられるレンズとから構成されている。なお、図１では、バーコードＣが付された物品Ｒに向けて照明光Ｌｆを照射する例を概念的に示している。
【００２９】
受光光学系は、受光センサ２８、結像レンズ２７、反射鏡（図示略）などによって構成されている。受光センサ２８は、例えば、Ｃ−ＭＯＳやＣＣＤ等の固体撮像素子である受光素子を一次元に配列したラインセンサとして構成されるものであり、バーコードＣに照射されて反射した反射光Ｌｒを受光可能に構成されている。この受光センサ２８は、結像レンズ２７を介して入射する入射光を受光可能にプリント配線板（図示略）に実装されている。なお、受光センサ２８は、特許請求の範囲に記載の「受光手段」に相当し得るものである。
【００３０】
結像レンズ２７は、外部から読取口（図示略）を介して入射する入射光を集光して受光センサ２８の受光面２８ａに像を結像可能な結像光学系として機能するものである。本実施形態では、照明光源２１から照射された照明光ＬｆがバーコードＣにて反射した後、この反射光Ｌｒを結像レンズ２７で集光し、受光センサ２８の受光面２８ａにコード像を結像させている。
【００３１】
マイコン系は、増幅回路３１、Ａ／Ｄ変換回路３３、メモリ３５、アドレス発生回路３６、同期信号発生回路３８、制御回路４０、トリガースイッチ４２、発光部４３、ブザー４４、バイブレータ４５、液晶表示器４６、通信インタフェース４８等から構成されている。
【００３２】
光学系の受光センサ２８から出力される画像信号（アナログ信号）は、増幅回路３１に入力されることで所定ゲインで増幅された後、Ａ／Ｄ変換回路３３に入力されると、アナログ信号からディジタル信号に変換される。そして、ディジタル化された画像信号、つまり画像データ（画像情報）は、生成されてメモリ３５に入力されると、所定のコード画像情報格納領域に蓄積される。なお、同期信号発生回路３８は、受光センサ２８およびアドレス発生回路３６に対する同期信号を発生可能に構成されており、またアドレス発生回路３６は、この同期信号発生回路３８から供給される同期信号に基づいて、メモリ３５に格納される画像データの格納アドレスを発生可能に構成されている。
【００３３】
メモリ３５は、半導体メモリ装置で、例えばＲＡＭ（ＤＲＡＭ、ＳＲＡＭ等）やＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ等）がこれに相当する。このメモリ３５のうちのＲＡＭには、上述したコード画像情報格納領域のほかに、制御回路４０が算術演算や論理演算等の各処理時に利用する作業領域や読取条件テーブルも確保可能に構成されている。またＲＯＭには、後述する読取処理、解析処理等を実行可能な所定プログラムやその他、照明光源２１、受光センサ２３等の各ハードウェアを制御可能なシステムプログラム等が予め格納されている。
【００３４】
制御回路４０は、光学的情報読取装置１０全体を制御可能なマイコンによって構成されており、ＣＰＵ、システムバス、入出力インタフェース等を有すると共に、情報処理機能を備えており、メモリ３５とともに情報処理装置を構成している。本実施形態では、制御回路４０に対し、トリガースイッチ４２、発光部４３、ブザー４４、バイブレータ４５、液晶表示器４６、通信インタフェース４８等が接続されている。
【００３５】
これにより、制御回路４０は、例えば、トリガースイッチ４２の監視や管理、バーコードＣの読み取りに関する情報を報知するインジケータとして機能する発光部４３の点灯・消灯、ビープ音やアラーム音を発生可能なブザー４４の鳴動のオンオフ、当該光学的情報読取装置１０の使用者に伝達し得る振動を発生可能なバイブレータ４５の駆動制御、液晶表示器４６の表示制御や外部装置とのシリアル通信を可能にする通信インタフェース４８の通信制御等を可能にしている。
【００３６】
次に、本実施形態における光学的情報読取装置１０の制御回路４０にて実行される読取処理について説明する。図２（Ａ）は、第１実施形態におけるメインパターンＢとマージンＭとの位置関係を示す説明図であり、図２（Ｂ）は、マージン領域に印影Ｓ１が押印された状態を拡大して例示する説明図である。図３は、第１実施形態における読取処理の流れを例示するフローチャートである。図４は、図３のマージン領域確認処理のサブルーチンを例示するフローチャートである。
【００３７】
図２（Ａ）に例示するように、バーコードＣは、１つ〜４つのいずれかの単位モジュールからなる白バー（明色パターン）および黒バー（暗色パターン）が複数配列されて構成されるメインパターンＢを有するとともに、このメインパターンＢに隣接して明色パターンとして認識されるべきマージンＭが確保されるように構成される。そのため、図２（Ｂ）に例示するように、マージンＭが存在すべきマージン領域に対して印影Ｓ１が押印等されると、必要なマージン幅（以下、マージン幅Ｗｏともいう）のマージンＭが確保できないためにバーコードＣの読み取りが失敗してしまう。
【００３８】
そこで、本実施形態における読取処理では、読み取り対象であるバーコードＣのマージン領域に複数の明色領域または暗色領域が存在する場合であっても、これら明色領域または暗色領域が模様等であるか否かを判定して模様等であると判定される場合には、デコードを実施することで、読取精度の低下を抑制している。
【００３９】
以下、上記読取処理について、図３および図４を用いて詳細に説明する。
まず、図３のステップＳ１０１において撮像処理がなされ、作業者のトリガースイッチ４２の操作に応じて照明光源２１から照明光Ｌｆが、バーコードＣが表示された対象物Ｒに向けて照射される。そして、図１に示すように、対象物Ｒにて反射された反射光Ｌｒが受光センサ２８にて受光されることにより当該受光センサ２８から受光信号が入力される。
【００４０】
次に、ステップＳ１０３において、二値化処理がなされる。この処理では、受光センサ２８により出力された受光信号の信号波形と所定の閾値とを比較し、その比較に基づいて信号波形を明色領域と暗色領域とに区分けする。上記所定の閾値は、予め定められた一定の値であってもよく、信号波形に基づいて定められる値であってもよい。なお、ステップＳ１０３の処理を実行する制御回路４０は、特許請求の範囲に記載の「二値化手段」の一例に相当する。
【００４１】
続いて、ステップＳ１０５において、マージンＭが存在するか否かについて判定される。ここで、図２（Ａ）に例示するように、メインパターンＢの一側（図２（Ａ）にて左側）に隣接してマージンＭが存在する場合には（Ｓ１０５でＹｅｓ）、ステップＳ１０９において、デコード処理がなされる。この処理では、上述のように区分けされた複数の明色領域および暗色領域が配列される配列データのうち、メインパターンＢに相当する情報領域が、公知のデコード方法に基づいてデコードされる。なお、ステップＳ１０５，Ｓ１０９の処理を実行する制御回路４０は、特許請求の範囲に記載の「マージン有無判定手段」および「デコード手段」の一例に相当する。
【００４２】
一方、図２（Ｂ）に例示するように、メインパターンＢに隣接するマージンＭに印影Ｓ１が押印されていると、必要なマージンＭが確保されていないために、ステップＳ１０５にてＮｏと判定される。そして、ステップＳ１０７にてマージン領域確認処理のサブルーチンが実行される。
【００４３】
このマージン領域確認処理のサブルーチンでは、まず、図４のステップＳ２０１において、単位モジュール幅値演算処理がなされ、上述のように二値化された明色領域および暗色領域の幅値から、上記単位モジュールの幅値が演算される。
【００４４】
次に、ステップＳ２０３において、幅値取得処理がなされる。この処理では、マージン領域に相当するマージン相当領域のうち、上記情報領域に隣接する明色領域からなる第１領域Ｂ１と、この第１領域Ｂ１に隣接する暗色領域からなる第２領域Ｂ２と、この第２領域Ｂ２に隣接する明色領域からなる第３領域Ｂ３とのそれぞれの幅値Ｗ１，Ｗ２，Ｗ３が算出されて取得される（図２（Ｂ）参照）。なお、ステップＳ２０３の処理を実行する制御回路４０は、特許請求の範囲に記載の「幅値算出手段」の一例に相当する。
【００４５】
続いて、ステップＳ２０５において、各幅値Ｗ１，Ｗ２，Ｗ３の少なくともいずれか１つが所定の閾値Ｗｍより大きい状態を示す第１状態であるか否かについて判定される。本実施形態では、閾値Ｗｍは、白バーおよび黒バーとして存在しうる最大幅値よりも大きくなるように、上記ステップＳ２０１にて演算された単位モジュールの幅値に対して４．５倍に設定されている。上述したように、白バーおよび黒バーは、最小で１つの単位モジュールから構成され、最大で４つの単位モジュールから構成される。そうすると、単位モジュールの幅値に対して少なくとも４．５倍を超える幅値を有する白バーまたは黒バーは存在しない。このため、各幅値Ｗ１，Ｗ２，Ｗ３の少なくともいずれか１つが閾値Ｗｍより大きくなると、これら第１領域Ｂ１，第２領域Ｂ２および第３領域Ｂ３からなる配列（以下、端部近傍配列ともいう）がバーコードの一部である可能性が低いと言える。
【００４６】
ここで、図２（Ｂ）からわかるように、幅値Ｗ３が閾値Ｗｍよりも大きいことから第１状態となる場合には、端部近傍配列がバーコードの一部である可能性が低いとして、ステップＳ２０５でＹｅｓと判定される。
【００４７】
そして、ステップＳ２０７において、各幅値Ｗ１，Ｗ２，Ｗ３の合計幅値Ｗｓがマージン幅Ｗｏより大きい状態を示す第２状態であるか否かについて判定される。合計幅値Ｗｓがマージン幅Ｗｏよりも大きい第２状態である場合も、端部近傍配列がバーコードの一部である可能性が低いと言える。
【００４８】
そのため、図２（Ｂ）からわかるように、合計幅値Ｗｓがマージン幅Ｗｏよりも大きいことから第２状態となる場合には、端部近傍配列がバーコードの一部である可能性が低いとして、ステップＳ２０７でＹｅｓと判定されて、マージン領域確認処理のサブルーチンが終了する。
【００４９】
上述のように、端部近傍配列が第１状態および第２状態を満たすことから、ステップＳ２０５およびステップＳ２０７にてＹｅｓと判定されると、当該端部近傍配列は、バーコードの一部ではなく模様等であると判断されて、マージン領域確認処理のサブルーチンの終了後に、図３のステップＳ１０９にて、メインパターンＢに相当する情報領域について上述したデコード処理がなされる。
【００５０】
一方、各幅値Ｗ１，Ｗ２，Ｗ３の全てが閾値Ｗｍ以下であり第１状態でないことからステップＳ２０５にてＮｏと判定されるか、合計幅値Ｗｓがマージン幅Ｗｏ以下であり第２状態でないことからステップＳ２０７にてＮｏと判定されると、上記ステップＳ１０９におけるデコード処理を実施することなく、読取処理を終了する。これは、端部近傍配列が、第１状態でない場合または第２状態でない場合には、バーコードの一部である可能性があるからである。なお、ステップＳ２０５，Ｓ２０７の処理を実行する制御回路４０は、特許請求の範囲に記載の「第１状態判定手段」および「第２状態判定手段」の一例に相当する。
【００５１】
以上説明したように、本実施形態に係る光学的情報読取装置１０では、マージン領域が存在しないと判定される場合に、マージン相当領域のうち、第１領域Ｂ１と、第２領域Ｂ２と、第３領域Ｂ３とのそれぞれの幅値Ｗ１，Ｗ２，Ｗ３が算出される。そして、マージン領域が存在しないと判定される場合であっても、第１領域Ｂ１，第２領域Ｂ２および第３領域Ｂ３からなる端部近傍配列が第１状態でありかつ第２状態であると判定される場合に、メインパターンＢに相当する情報領域がデコードされる。
【００５２】
このように、読取対象のバーコードのマージン領域に第１領域Ｂ１、第２領域Ｂ２および第３領域Ｂ３からなる端部近傍配列が存在するためにマージン領域が存在しないと判定される場合であっても、当該端部近傍配列が第１状態かつ第２状態を満たす場合には、当該第１領域Ｂ１、第２領域Ｂ２および第３領域Ｂ３は、バーコードの一部ではなく模様等であると判断することができる。
したがって、マージン領域に複数の明色領域や暗色領域が存在する場合であっても、第１状態かつ第２状態を満たす配列データの情報領域をデコードすることで、読取精度の低下を抑制することができる。
【００５３】
［第２実施形態］
次に、本発明の第２実施形態に係る光学的情報読取装置について図５〜図７を参照して説明する。図５は、第２実施形態における読取処理の流れを例示するフローチャートである。図６は、図５のマージン領域確認処理のサブルーチンを例示するフローチャートである。図７（Ａ）は、第２実施形態におけるメインパターンＢとマージンＭとの位置関係を示す説明図であり、図７（Ｂ）は、マージン領域に印影Ｓ２が押印された状態を例示する説明図である。図８は、図７（Ｂ）に対応する図表であり、図８（Ａ）は各領域Ｂ１〜Ｂ１１での輝度値を示し、図８（Ｂ）は輝度差Ｄ（ｋ，ｋ＋１）を示す。
【００５４】
本第２実施形態に係る光学的情報読取装置１０では、制御回路４０にて実行される読取処理を図３および図４に示すフローチャートに代えて図５および図６に示すフローチャートに基づいて演算処理している点が、上記第１実施形態に係る光学的情報読取装置と異なる。したがって、上述した第１実施形態の光学的情報読取装置と実質的に同一の構成部分には同一符号を付し、説明を省略する。
【００５５】
以下、本第２実施形態に係る光学的情報読取装置１０の制御回路４０による読取処理について、図５および図６のフローチャートを参照して説明する。
まず、上記第１実施形態と同様に、図５のステップＳ３０１において撮像処理がなされることで受光センサ２８から受光信号が入力されると、ステップＳ３０３にて二値化処理がなされて、当該受光信号の信号波形が明色領域と暗色領域とに区分けされる。
【００５６】
続いて、ステップＳ３０５において、輝度値記憶処理がなされる。この処理では、ステップＳ３０３にて区分けされた各領域での頂点となる信号波形（輝度値）、すなわち、明色領域では最高値となる輝度値、暗色領域では最低値となる輝度値が各領域ごとにメモリ３５に記憶される。この場合、情報領域の端部を構成する暗色領域からなる端部領域Ｂｏの輝度値やマージン相当領域内に存在する複数の明色領域および暗色領域の輝度値もそれぞれメモリ３５に記憶されることとなる。ここで、輝度値は、白色ほど高くなり黒色ほど低くなり、受光信号の信号波形は、輝度値の変化を示す波形と言える。なお、メモリ３５は、特許請求の範囲に記載の「記憶手段」の一例に相当する。
【００５７】
そして、ステップＳ３０７において、マージンＭが存在するか否かについて判定され、図７（Ａ）に例示するように、メインパターンＢに隣接してマージンＭが存在する場合には（Ｓ３０７でＹｅｓ）、ステップＳ３１１において、デコード処理がなされる。なお、ステップＳ３０７，Ｓ３１１の処理を実行する制御回路４０は、特許請求の範囲に記載の「マージン有無判定手段」および「デコード手段」の一例に相当する。
【００５８】
一方、図７（Ｂ）に例示するように、メインパターンＢに隣接するマージンＭに文字付の印影Ｓ２が押印されていると、必要なマージンＭが確保されていないために、ステップＳ３０７にてＮｏと判定される。そして、ステップＳ３０９にてマージン領域確認処理のサブルーチンが実行される。
【００５９】
このマージン領域確認処理のサブルーチンでは、まず、図６のステップＳ４０１において、単位モジュール幅値演算処理がなされ、上述のように二値化された明色領域および暗色領域の幅値から、上記単位モジュールの幅値が演算される。
【００６０】
次に、ステップＳ４０３にてｋが１に設定される。この符合ｋは、対象の領域が端部領域Ｂｏから読取方向に対して反対方向（図７にて左方向）に何番目に位置するかを示すものであり、ｋ＝１であれば、端部領域Ｂｏに隣接する明色領域に相当する。
【００６１】
続いて、ステップＳ４０５において、基準輝度差設定処理がなされる。この処理では、端部領域Ｂｏでの輝度値と、端部領域Ｂｏから読取方向に対して１番目に位置する明色領域Ｂ１での輝度値との差の絶対値に所定の係数を乗算した値が、基準輝度差Ｄｏとして設定される。本実施形態では、上記所定の係数は、０．６に設定されており、基準輝度差Ｄｏは、図８（Ｂ）に例示するように、６０に設定される。なお、上記所定の係数は、０．６に設定されることに限らず、例えば、０．４〜０．８程度に設定されてもよい。
【００６２】
次に、ステップＳ４０７において、輝度差演算処理がなされる。この処理では、ｋ番目の領域での輝度値とｋ＋１番目の領域での輝度値との差の絶対値が輝度差Ｄ（ｋ，ｋ＋１）として演算される。現段階では、ｋ＝１であるので、１番目の領域（明色領域Ｂ１）での輝度値と２番目の領域（暗色領域Ｂ２）での輝度値との差が演算される。
【００６３】
続いて、ステップＳ４０９において、輝度差Ｄ（ｋ，ｋ＋１）と基準輝度差Ｄｏとが比較されて、輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満であるか否かについて判定される。ここで、例えば、暗色領域Ｂ２が他のバーコードの端部であるために黒バーとほぼ等しい輝度値となる場合には、輝度差Ｄ（１，２）は基準輝度差Ｄｏ以上になるので、ステップＳ４０９ではＮｏと判定される。この場合には、図５のステップＳ３１１におけるデコード処理を実施することなく、読取処理が終了する。これは、暗色領域Ｂ２がバーコードの一部である可能性があるからである。なお、ステップＳ４０９の処理を実行する制御回路４０は、特許請求の範囲に記載の「比較手段」の一例に相当する。
【００６４】
一方、暗色領域Ｂ２が他のバーコードの一部と異なり黒色および白色の中間色に対して黒色にやや近い模様等であることから、輝度差Ｄ（１，２）が基準輝度差Ｄｏ未満になる場合には、ステップＳ４０９にてＹｅｓと判定される。
【００６５】
端部領域Ｂｏからｋ番目の領域の輝度値とｋ＋１番目の輝度値との差である輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となる場合には、ｋ番目の領域とｋ＋１番目の領域とは、バーコードを構成する白バーおよび黒バーと異なりこれら白バーおよび黒バーよりも輝度値の差が低くなる色を組み合わせた模様等の一部であると言える。このため、基準輝度差Ｄｏおよびその所定の係数は、マージン相当領域に存在する領域の輝度値の差からその領域がバーコードの一部かまたは中間色に近い模様等であるかを判定できるように設定される。
【００６６】
ここで、上述のようにステップＳ４０９にてＹｅｓと判定されると、ステップＳ４１１にて幅値積算処理がなされる。この処理では、現段階までに基準輝度差Ｄｏ未満とされた各領域の幅値に対してｋ番目の幅値が積算されて積算幅値Ｗａが演算される。この段階では、ｋ＝１であるため、積算幅値Ｗａは、明色領域Ｂ１の幅値に等しくなるように設定される。なお、ステップＳ４１１の処理を実行する制御回路４０は、特許請求の範囲に記載の「積算手段」の一例に相当する。
【００６７】
次に、ステップＳ４１３にて、積算幅値Ｗａがマージン幅Ｗｏより小さいか否かについて判定される。この段階では、積算幅値Ｗａは明色領域Ｂ１の幅値に等しいためにマージン幅Ｗｏより小さくなるため、ステップＳ４１３にてＹｅｓと判定されて、ステップＳ４１５にてｋに１が加算されて、上記ステップＳ４０７からの処理が繰り返される。
【００６８】
そして、ステップＳ４０７にて輝度差演算処理がなされ、２番目の領域（暗色領域Ｂ２）での輝度値と３番目の領域（明色領域Ｂ３）での輝度値との差の絶対値が輝度差Ｄ（２，３）として演算される。この輝度差Ｄ（２，３）が、上記輝度差Ｄ（１，２）と同様に、基準輝度差Ｄｏ未満であれば、ステップＳ４０９にてＹｅｓと判定されて、ステップＳ４１１にて、現段階での積算幅値Ｗａに対して暗色領域Ｂ２の幅値が積算された新たな積算幅値Ｗａが設定される。そして、この積算幅値Ｗａがマージン幅Ｗｏより小さい場合には、ステップＳ４１３にてＹｅｓと判定されて、ステップＳ４１５にてｋに１が加算されて、再び、上記ステップＳ４０７からの処理が繰り返される。
【００６９】
このように、輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ以上となりステップＳ４０９にてＮｏと判定されるか、積算幅値Ｗａがマージン幅Ｗｏ以上となりステップＳ４１３にてＮｏと判定されるまで、上記ステップＳ４０７からの処理が繰り返されることとなる。
【００７０】
このとき、図７（Ｂ）に例示するように、メインパターンＢに隣接するマージンＭに文字付の印影Ｓ２が押印されており、この印影Ｓ２が黒色および白色の中間色に対して黒色にやや近い色である場合には、図８（Ａ）に例示するように、マージン相当領域内の全ての暗色領域における輝度値が端部領域Ｂｏの輝度値よりも高くなり、図８（Ｂ）に例示するように、全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となる。このように全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となる状態がマージン相当領域内に存在する複数の明色領域および暗色領域について成立するとき、すなわち、上記状態が積算幅値Ｗａがマージン幅Ｗｏ以上となるまで成立するとき、マージンＭには、バーコードの一部ではなく模様等があると判断することができる。１番目からｋ番目までの領域の幅値の積算幅値Ｗａがマージン幅Ｗｏ以上になると、ｋ番目までの領域には確実にマージン領域が含まれることとなるからである。
【００７１】
このため、上述のような繰り返し処理中に、輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ以上となる前に積算幅値Ｗａがマージン幅Ｗｏ以上になると、マージンＭには、バーコードの一部ではなく模様等があると判断されて、マージン領域確認処理のサブルーチンの終了後に、図５のステップＳ３１１にて、メインパターンＢに相当する情報領域について上述したデコード処理がなされる。
【００７２】
一方、上述のような繰り返し処理中に、積算幅値Ｗａがマージン幅Ｗｏ以上となる前に輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ以上となると、ステップＳ４０９にてＮｏと判定されて、上記ステップＳ３１１におけるデコード処理を実施することなく、読取処理を終了する。これは、先に輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ以上となる場合には、マージン領域にバーコードの一部が存在する可能性があるからである。
【００７３】
以上説明したように、本実施形態に係る光学的情報読取装置１０では、マージン相当領域において端部領域Ｂｏからｋ番目の領域の輝度値とｋ＋１番目の輝度値との差である輝度差Ｄ（ｋ，ｋ＋１）と、基準輝度差Ｄｏとが比較される。そして、マージン領域が存在しないと判定される場合であっても、ステップＳ４１１にて積算される１番目からｋ番目までの領域の幅値の積算値である積算幅値Ｗａがマージン幅値Ｗｏ以上（Ｓ４１３でＮｏ）であり、かつ、全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満（Ｓ４０９でＹｅｓ）となる場合に、メインパターンＢに相当する情報領域がデコードされる。
【００７４】
マージン領域が存在しないと判定される場合であっても、マージン領域に存在する領域の色（輝度値）を考慮して、積算幅値Ｗａがマージン幅値Ｗｏ以上となる領域での全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となる場合には、マージン領域に存在する複数の明色領域や暗色領域は、バーコードの一部ではなく模様等であると判断することができる。そして、この場合のメインパターンＢに相当する情報領域をデコードすることで、読取精度の低下を抑制することができる。
【００７５】
図９は、第２実施形態の変形例におけるマージン領域確認処理のサブルーチンを例示するフローチャートである。
上記第２実施形態の変形例として、図５のステップＳ３０９におけるマージン領域確認処理のサブルーチンを、図６に示すフローチャートに代えて、図９に示すフローチャートに基づいて実行してもよい。
【００７６】
具体的には、図９のステップＳ４０７までの処理がなされてステップＳ４０９にてＹｅｓと判定されると、ステップＳ４１３ａにてｋが所定の閾値ｋｏ未満であるか否かについて判定される。ここで、閾値ｋｏは、マージン領域が端部領域Ｂｏから読取方向に対して１番目からｋ番目までの領域に含まれるとみなされるほどｋが大きなときの値に等しくなるように設定されている。
【００７７】
これにより、ｋが上記閾値ｋｏ以上になると、ｋ番目までの領域にはマージン領域が含まれると判断でき、この状態になるまでの全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となるときには、マージンＭには、バーコードの一部ではなく模様等があると判断することができる。
【００７８】
このようｋを計数することで、上述のように積算幅値Ｗａを逐次積算して演算しなくても、ｋ番目までの領域にマージン領域が含まれるか否かについて判断することができる。
【００７９】
［第３実施形態］
次に、本発明の第３実施形態に係る光学的情報読取装置について図１０を参照して説明する。図１０は、第３実施形態におけるマージン領域確認処理のサブルーチンを例示するフローチャートである。
【００８０】
本第３実施形態に係る光学的情報読取装置１０では、制御回路４０にて実行される読取処理を図５および図６に示すフローチャートに代えて図５および図１０に示すフローチャートに基づいて演算処理している点が、上記第２実施形態に係る光学的情報読取装置と異なる。したがって、上述した第２実施形態の光学的情報読取装置と実質的に同一の構成部分には同一符号を付し、説明を省略する。
【００８１】
以下、本第３実施形態に係る光学的情報読取装置１０の制御回路４０による読取処理について、図５および図１０のフローチャートを参照して説明する。
まず、上記第２実施形態と同様に、図５のステップＳ３０５までの処理がなされてステップＳ３０７にてＮｏと判定されると、図１０のステップＳ４０１にて単位モジュールの幅値が演算される。
【００８２】
次に、上記第１実施形態にて述べたステップＳ２０３からステップＳ２０７までの処理がなされ、ステップＳ２０５およびステップＳ２０７にてＹｅｓと判定されると、図５のステップＳ３１１にて、メインパターンＢに相当する情報領域について上述したデコード処理がなされる。
【００８３】
一方、ステップＳ２０５にてＮｏと判定されるかステップＳ２０７にてＮｏと判定されると、上記第２実施形態にて述べたステップＳ４０３以降の処理がなされる。そして、上述した繰り返し処理中に、輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ以上となる前に積算幅値Ｗａがマージン幅Ｗｏ以上になると（Ｓ４１３でＮｏ）、図５のステップＳ３１１にて、メインパターンＢに相当する情報領域について上述したデコード処理がなされる。また、上述した繰り返し処理中に、積算幅値Ｗａがマージン幅Ｗｏ以上になる前に輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ以上となると（Ｓ４０９でＹｅｓ）、デコード処理を実施することなく、読取処理を終了する。
【００８４】
以上説明したように、本実施形態に係る光学的情報読取装置１０では、マージン領域が存在しないと判定される場合であっても、端部近傍配列が第１状態でありかつ第２状態であると判定される場合と、第１状態でないと判定されるか、または、第２状態でないと判定される場合であって、積算幅値Ｗａがマージン幅値Ｗｏ以上であり、かつ、全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となる場合に、メインパターンＢに相当する情報領域がデコードされる。
【００８５】
このように、マージン領域が存在しないと判定されるとともに、第１状態でないと判定されるか第２状態でないと判定される場合であっても、マージン領域に存在する領域の色（輝度値）を考慮して、積算幅値Ｗａがマージン幅値Ｗｏ以上となる領域での全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となる場合には、マージン領域に存在する複数の明色領域や暗色領域は、バーコードの一部ではなく模様等であると判断することができる。そして、この場合のメインパターンＢに相当する情報領域をデコードすることで、読取精度の低下を抑制することができる。
【００８６】
なお、本第３実施形態の変形例として、上記第２実施形態の変形例のようにステップＳ４１１，Ｓ４１３に代えてステップＳ４１３ａを設け、ｋが上記閾値ｋｏ以上になるまでの全ての輝度差Ｄ（ｋ，ｋ＋１）が基準輝度差Ｄｏ未満となるときには（Ｓ４１３ａでＮｏ）、マージンＭには、バーコードの一部ではなく模様等があると判断してもよい。
【００８７】
なお、本発明は上記各実施形態および変形例に限定されるものではなく、以下のように具体化してもよい。
バーコードＣは、１つ〜４つのいずれかの単位モジュールからなる白バーおよび黒バーが複数配列されて構成されることに限らず、１または２以上の単位モジュールからなる白バーおよび黒バーが複数配列されて構成されてもよい。この場合、閾値Ｗｍは、白バーまたは黒バーとして存在し得る最大幅値に応じて設定される。
【符号の説明】
【００８８】
１０…光学的情報読取装置
２８…受光センサ（受光手段）
３５…メモリ（記憶手段）
４０…制御回路（二値化手段，マージン有無判定手段，デコード手段，幅値算出手段，第１状態判定手段，第２状態判定手段，比較手段，積算手段）
Ｂ…メインパターン
Ｃ…バーコード（一次元コード）
Ｍ…マージン
Ｓ１，Ｓ２…印影
Ｗ…幅値
Ｗｏ…マージン幅
【図１】
2012123501.tif 000003
【図２】
2012123501.tif 000004
【図３】
2012123501.tif 000005
【図４】
2012123501.tif 000006
【図５】
2012123501.tif 000007
【図６】
2012123501.tif 000008
【図７】
2012123501.tif 000009
【図８】
2012123501.tif 000010
【図９】
2012123501.tif 000011
【図１０】
2012123501.tif 000012