説明

光学的情報読取装置

【課題】 情報コードの解読処理の信頼度を向上できるようにする。
【解決手段】 制御回路3は、リニアバーコードの最小基本幅に対応する画素の割当数を検出し(S1)、画素の割当数が所定数(例えば30以上)である場合には、解読速度を優先するアルゴリズムを選択し、デコード処理を行う(S3〜S11)。また、制御回路3は、リニアバーコードの最小基本幅に対応する画素の割当数を検出した結果、画素の割当数が所定数未満である場合には、確実性を優先したアルゴリズムを選択しデコード処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バーコード等の1次元コードやQRコード等の2次元コードによる情報コードを光学的に読取る光学的情報読取装置に関する。
【背景技術】
【0002】
この種の光学的情報読取装置は、情報コードに照射された光を当該情報コードを通じて受光し、この受光信号に基づいてモジュールサイズ(例えば、バーコードの場合、バー幅/スペース幅)を検出し情報コードの表すデータを読取っている。このような光学的情報読取装置は、撮像距離が変化すると取込まれる画像データが変化するため、情報コードを光学的にデータを取込んだ場合に当該情報コードのモジュールに割当てられる画素数が変化してしまう。したがって、このような画像データから情報コードを解読するときには工夫が必要である。
【0003】
そこで、例えばPDF−417コード(2次元バーコード)を読取る場合に、大きなモジュールサイズのバーコードシンボルや大きく拡大されたバーコードシンボルを読取る時には高い信頼度を与えるようにし、小さなモジュールバーコードシンボルや縮小されたバーコードシンボルを読取る時には低い信頼度を与えるようにし、キャラクタマトリクス中のデータキャラクタと求められたデータキャラクタを比較し、両者が等しければデータキャラクタに付加された信頼度を前回格納した信頼度に加算し、信頼度が予め設定されたしきい値を超えたときデコード結果を正しい値と判断する技術がある(例えば、特許文献1参照)。この技術によれば、少ないスキャン回数で素早く読取ることができる。
【特許文献1】特開平6−231297号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に開示されている技術では、次のような不具合が生じるおそれがある。特許文献1に開示されている技術においては、キャラクタマトリクス中のデータキャラクタと求められたデータキャラクタを比較し、両者が異なっていた場合には、今回求めたデータキャラクタに付加する信頼度を信頼度マトリクスの前回格納した信頼度から減算している。減算した結果、信頼度が「0」以下になってしまった場合には、負数の信頼度の絶対値を新しい信頼度としているため、データキャラクタが異なっていた場合でも信頼度は大きくなってしまうこともあり、予め設定されたしきい値を超えてしまう場合が想定され、この場合解読結果が正しいと誤判断してしまうおそれがある。
【0005】
本発明は、上記事情に鑑みてなされたもので、その目的は、情報コードの解読処理の信頼度をより向上した光学的情報読取装置を提供することにある。
【課題を解決するための手段】
【0006】
請求項1記載の光学的情報読取装置によれば次のように作用する。すなわち、記憶手段には、明パターンおよび暗パターンを有してなる情報コードを解読するための複数のアルゴリズムを含むプログラムが記憶されている。受光手段が、情報コードに照射された光を受光する。そして検出手段は、受光手段の受光信号に基づいて情報コードの明パターンまたは暗パターンのいずれか少なくとも一方(もしくは、明パターンおよび暗パターン)の最小基本パターン(最小基本幅)の大きさを検出する。そして、選択手段は、検出手段により検出された最小基本パターンの大きさに応じて記憶手段に記憶された複数の解読アルゴリズムのうちの何れか1つの解読アルゴリズムを選択する。そして、解読手段は、受光手段の受光信号に基づいて選択手段により選択された解読アルゴリズムにより情報コードを解読する。したがって、情報コードの明パターンまたは/および暗パターンに対応した最小基本パターンの大きさに応じて解読アルゴリズムを変更して情報コードを解読できるようになる。これにより、解読処理の信頼度を向上できる。
【0007】
請求項2記載の光学的情報読取装置によれば、選択手段は、検出手段により検出された最小基本パターンの大きさが所定よりも小さい場合には、解読速度よりも解読確度を優先する解読アルゴリズムを選択するため、たとえ最小基本パターンの大きさに割り当てられる画素数が少なかったとしても解読確度を向上することができ、解読処理の確実性を向上できる。
【0008】
請求項3記載の光学的情報読取装置によれば、選択手段は、検出手段により検出された最小基本パターンの大きさが所定よりも大きい場合には、解読確度よりも解読速度を優先する解読アルゴリズムを選択するため、最小基本パターンの大きさに割り当てられる画素数が多い場合には解読処理速度を増すことができ、解読処理の迅速性を向上できる。これは、最小基本パターンに対する画素割当数が多いと最小基本パターンの大きさを計算する精度が高くなり、解読処理速度を増したとしても誤解読しにくくなるためである。
【0009】
請求項4記載の光学的情報読取装置によれば、解読手段は、情報コードとしてリニアバーコードを解読する場合に、選択手段により選択された解読アルゴリズムにより互いに平行な異なる複数の読取ラインを対象として解読処理を行い、同一の解読結果の得られた読取ラインが所定数以上あることを条件として情報コードの解読処理を成功とみなすため、例えば読取ラインを1ラインのみで行っている構成に比較して、情報コードの解読結果の信頼性を向上することができる。
【0010】
請求項5記載の光学的情報読取装置によれば、解読手段は、情報コードとしてリニアバーコードを解読する場合に、選択手段により選択された解読アルゴリズムにより互いに平行な異なる複数の読取ラインを対象として解読処理を行い、異なる解読結果の得られた読取ラインが所定数以上あることを条件として情報コードの解読処理を失敗とみなすため、例えば読取ラインを1ラインのみで行うのに比較して、情報コードの解読結果の正誤判断の信頼性をさらに向上することができる。
【0011】
請求項6記載の光学的情報読取装置によれば、解読手段は、情報コードとして複数のセルが組合わされてなる2次元コードを解読する場合において、検出手段により検出された最小基本パターンの大きさが所定よりも大きい場合には、互いに平行な異なる複数の読取ラインを対象として順次読取処理を行い、複数のセルのうち誤り訂正可能な数以上のセルが読取られたことを条件として後の読取ラインの読取処理を省略し、選択手段により選択された解読アルゴリズムにより解読処理および誤り訂正処理を行い当該誤り訂正処理が成功すれば情報コードの解読処理を成功とみなすため、特に最小基本パターンの大きさが所定よりも大きい場合に解読処理速度を向上できる。
【0012】
請求項7記載の光学的情報読取装置によれば、解読手段が、情報コードとして複数のセルが組合わされてなる2次元コードを解読する場合において、検出手段により検出された最小基本パターンの大きさが所定よりも小さい場合には、選択手段により選択された解読アルゴリズムにより2次元コードを構成する全てのセルが読取られたことを条件として解読処理を行うため、特に最小基本パターンの大きさが所定よりも小さい場合には解読確度を向上できる。
【0013】
請求項8記載の光学的情報読取装置によれば、解読手段が解読処理を失敗とみなした場合、受光手段は再度情報コードを通じて光を受光し、解読手段は、受光手段の受光信号に基づいて選択手段により選択された解読アルゴリズムにより情報コードを解読するため、たとえ解読処理を失敗とみなしたとしても再度情報コードを通じて光を受光し情報コードを解読することができ、情報コードを極力誤読することなく解読できるようになる。
【発明を実施するための最良の形態】
【0014】
(第1の実施形態)
以下、本発明の光学的情報読取装置を情報コード読取装置に適用した第1の実施形態について、図1ないし図8を参照しながら説明する。図1は、情報コード読取装置の構成を概略的に示している。
【0015】
この情報コード読取装置1は、QRコード等の2次元コードや、リニアバーコード等の1次元コードを光学的に読取るように構成されている。尚、本実施形態においては、ハンディタイプの情報コード読取装置についてその実施形態を示すが、これは定置式のものであっても良い。
【0016】
情報コード読取装置1は、二次電池等の電池2を駆動源としている。この情報コード読取装置1は、検出手段および選択手段並びに解読手段としての制御回路3、記憶手段としてのメモリ4、トリガスイッチ5、操作スイッチ6、LED7、ブザー8、液晶表示器9、通信インタフェイス10、同期信号発生回路11、アドレス発生回路12、照射部13、結像手段14、受光手段としての2次元画像センサ15、増幅回路16、A/D変換回路17、特定比検出回路18を備えている。
【0017】
照射部13は、例えばリング状のフレームに複数のLEDが配置された状態に構成されるもので、制御回路3の制御に基づいて画像取込対象領域Xに光を照射する。結像手段14は、例えばレンズにより構成されており、画像取込対象領域Xに反射した光を2次元画像センサ15に結像する。2次元画像センサ15は、例えばCCDやCMOSイメージセンサにより構成されており、同期信号発生回路11により発生された同期信号に基づいて2次元画像センサ15に結像した光を受光し光電変換し、変換された画素信号(受光信号に相当)を増幅回路16に与える。
【0018】
この画素信号は、同期信号発生回路11により発生された同期信号に基づいて増幅回路16、A/D変換回路17を通じてメモリ4内の画像メモリ4aに画像データとして記憶されるようになっている。このとき、画像メモリ4aに記憶される画像データは、例えば8ビット(256段階)の輝度データ(明度データ:輝度情報)を含む画像データである。
【0019】
尚、アドレス発生回路12は、同期信号発生回路11から同期信号が与えられるようになっており、この同期信号に応じてメモリ4のアドレスを指定する。このとき、制御回路3は、この画像データを取込み画像メモリ4aの指定されたアドレスに画像データを順次記憶させるようになっている。また、制御回路3は、画像メモリ4aに記憶された画像データに基づいて情報コードP(一次元コードや二次元コード)を解読する。
【0020】
情報コードPは、図8に示すように、白パターン(二次元コードの場合、白セル:明パターンに相当)および黒パターン(二次元コードの場合、黒セル:暗パターンに相当)が組み合わされることにより構成されている。
【0021】
具体的には、情報コードPは、図8(a)に示すようなQRコード(2次元コードH)、図8(b)に示すリニアバーコードB(1次元コード)、図8(c)に示すPDF−417コードSB(スタックドバーコード:二次元バーコード)、図8(d)に示す二次元コードHなどの種類があるが、本実施形態においては、リニアバーコードBを解読する実施形態を示す。図8(b)に示すように、リニアバーコードBは、黒色の「バー」パターンB1(以下、バーB1と略す:暗パターンに相当),および白色の「スペース」パターンB2(以下、スペースB2と略す:明パターンに相当)が縞状に組み合わされて構成されている。
【0022】
このリニアバーコードBは、バーB1およびスペースB2の長手方向に対し垂直方向に走査することによって読取可能なコードであり、本実施形態の特徴には直接関係しないため特に図示しないがクワイエットゾーン、シンボルキャラクタ、キャラクタ間ギャップと称される領域からなっている。
【0023】
上記構成の作用について図2ないし図7をも参照しながら説明する。本実施形態においては、横(水平方向)640画素×縦(垂直方向)480画素の画素データが画像メモリ4aに記憶されていることとして以下の説明を行う。
【0024】
読取対象領域XにリニアバーコードBが表示されており、操作者により操作スイッチ6が操作され、制御回路3に操作信号が与えられると、制御回路3は、画像データの取込指示を行いメモリ4の画像メモリ4aに画像データを取込む。
【0025】
図3は、メモリに取り込まれる画像データの一例を示している。メモリ4には、図2に示すように、バーB1およびスペースB2に対してそれぞれ対応した輝度データが記憶される。この図2は、メモリに取り込まれる輝度データの一例を示している。この図2において、輝度データは、バーB1部分の輝度レベルの値が低く、スペースB2部分の輝度レベルの値が高い。したがって、制御回路3は、あるしきい値を基準にして、輝度データの値が高い場合には「白点」(スペースB2)、輝度データの値が低い場合には「黒点」(バーB1)であると判定する。そして制御回路3は、バーB1およびスペースB2の幅を検出することで解読することができる。
【0026】
しかしこの場合、撮像距離が変化すると取り込まれる画像データの大きさも変化するため、リニアバーコードBを光学的に取込んだ場合にバーB1やスペースB2の幅(=対応する画素数)も撮像距離に応じて変化してしまう(図2および図5参照)。これらの図2に示すように、例えば、スペースB2の幅Wの大きさに対して誤差Gの大きさの割合が小さい場合にはこの誤差Gも無視できる程度に小さく問題が生じる可能性は少ないが、例えば図5に示すように、スペースB2の幅Wの大きさに対する誤差Gの大きさが大きいと、この誤差Gを無視できなくなってしまい、誤読の可能性が高くなる。そこで、本実施形態では、図4に示すように解読処理を行う。この図4は、制御回路が行う解読処理を概略的に示している。
【0027】
まず図4に示す処理に先立ち、図3に示すように、制御回路3は、垂直方向および水平方向について画像データを矩形状に区画し、この区画領域Kのうちどの領域にリニアバーコードBが存在しているかを推定する。このとき、リニアバーコードBの存在領域推定方法としては、例えばある区画領域K内において、隣接する画素について「白点」から「黒点」もしくは「黒点」から「白点」に変化する白黒変化数を検出し、この白黒変化数×(輝度レベルの最大値および最小値差)が所定数を上回っている場合にその区画領域内にリニアバーコードBが存在することを推定する方法がある。リニアバーコードBが傾いて画像メモリ4aに取込まれている場合があるため、制御回路3は、この存在領域推定方法を垂直方向および水平方向に一次元的に行うことで推定する。
【0028】
また、制御回路3は、リニアバーコードBの存在推定された区画領域KについてバーB1もしくはスペースB2の長手方向の垂直方向を検出する。そして、制御回路3は、検出されたバーB1もしくはスペースB2の長手方向の垂直方向に設定される読取ラインにより解読する。この場合、制御回路3が垂直方向の上側位置(1)(図3参照)の読取ラインから平行に下方に位置する下側位置(5)の読取ラインにかけて順次解読処理を行うようにする。このように異なる読取ラインで複数回の解読処理を行うのは、処理の確度(確実性)を向上させるためである。
【0029】
解読処理を行う場合に、制御回路3は、まず複数の解読アルゴリズムのうちの何れか1つの解読アルゴリズムを選択する処理を行う。図4に示すように、制御回路3は、リニアバーコードBのバーB1やスペースB2の幅Wの最小幅(最小基本幅、最小基本パターンに相当)に対応する画素数(画素の割当数)を検出する(ステップS1)。尚、バーB1およびスペースB2の幅Wの最小幅に対応する画素数を求め、これらの値を例えば平均することにより対応する画素数を検出しても良いし、バーB1もしくはスペースB2の何れかの幅Wの最小幅に対応する画素数を検出しても良い。
【0030】
このとき制御回路3は、最小基本幅に対する画素の割当数が所定数(例えば、30)以上であることを検出した場合に、以下の速度優先アルゴリズムによるプログラムを実行し(ステップS3〜S10)、画素の割当数が所定数(例えば30)未満であることを検出した場合に、後述する確実性優先アルゴリズムによるプログラムを実行する(ステップT1〜T10)。
【0031】
これは、制御回路3が、最小基本幅に対する画素の割当数に応じて異なるアルゴリズムを選択し、このアルゴリズムに基づいて解読処理を行うことを示している。例えば図2に示すように、スペースB2の幅Wに対して割当画素数が多い場合には、幅Wに対する誤差G(グレーゾーン)の割合も小さくなる。逆に、例えば図5に示すように、スペースB2の幅Wに対する割当画素数が少ない場合には、スペースB2の幅Wに対する誤差Gの大きさも大きくなる。このとき、スペースB2の幅Wに対する誤差Gの大きさが大きいと、バーB1やスペースB2の幅の誤検出につながり誤解読されるようになってしまう。
【0032】
そこで、制御回路3は、バーB1やスペースB2の幅Wに対して割当画素数が所定数以上の場合には速度優先アルゴリズムを適用して解読処理を行い、逆に幅Wに対する割当画素数が所定数未満の場合には、確実性優先アルゴリズムを適用して解読処理を行うようにしている。
【0033】
<速度優先アルゴリズムについて>
以下、速度優先アルゴリズムについて、図4のステップS3〜ステップS11を参照しながら説明する。まず、制御回路3は、最上行(最上段)の上側位置(1)の読取ラインについて解読(デコード)処理を行い(ステップS3)、デコード結果をメモリ4に記憶させる(ステップS4)。続いて制御回路3は、次行(次段)(2)の読取ラインについて解読処理を行い(ステップS5)、デコード結果をメモリ4に記憶させる(ステップS6)。
【0034】
この後、制御回路3は、最上行(1)の読取ラインと次行(2)の読取ラインのデコード結果とを照合する(ステップS7)。このとき、制御回路3は、同一の解読結果の得られた読取ラインが2行以上であることを条件として(ステップS8:YES)、解読成功と判定する。ここで、2行と比較的少なく条件設定しているのは速度を優先させるためである。すなわち、情報コード読取装置1は、解読処理に多大な時間を必要とする。このため、解読処理の回数を少なくすることが速度向上に繋がるからである。尚、この速度優先アルゴリズムでは、後述する確実性優先アルゴリズムの判定条件より少ない行数で解読成功と判定している。
【0035】
また制御回路3は、ステップS8において同一の解読結果の得られた読取ラインが2行未満であることを条件として(ステップS8:NO)、ステップS5の処理に戻り、次行以降(3)〜(5)の解読に移行する。制御回路3は、最下行(5)まで解読処理を行いステップS8の条件を満たせばステップS9において解読成功とするが、最下行(5)の解読が終了してもステップS8の条件を満たさない場合には(ステップS10:YES)、解読失敗とみなす(ステップS11)。
【0036】
すなわち、速度優先アルゴリズムを適用した場合には、読取ライン(1)〜(5)のうち2行だけでも同一の解読結果が得られれば解読成功とみなされることになり、最大行数解読しても全て一致しない場合のみ解読失敗とみなされることになる。尚、制御回路3は、解読失敗とみなしたときには、2次元画像センサ15により読取対象領域Xの反射光を受光し、再度画像データの取込み処理を行い再度解読処理を行う。そして、制御回路3は、例えば解読が完了するまで処理を繰り返す。
【0037】
<確実性優先アルゴリズム>
以下、確実性優先アルゴリズムについて図5ないし図7を参照しながら説明する。
前述したように、制御回路3は、最小基本幅に対する画素の割当数が所定数未満であることを検出した場合に、確実性優先アルゴリズムによるプログラムを実行する(ステップT1〜T10)。すなわち図5に示すように、幅Wに対して誤差Gの割合が大きいと、バーB1およびスペースB2の幅の検出誤差が大きくなるため、誤解読(デコード)しやすくなる。したがって、確実性優先アルゴリズムを用いることにより解読の確度を向上する。
【0038】
図7は、確実性優先アルゴリズムの動作をフローチャートにより示している。
この図7において、制御回路3は、最上行の読取ラインのデコード(解読)処理を行い(ステップT1)、デコード結果をメモリ4に記憶させる(ステップT2)。制御回路3は、次行の読取ラインのデコード処理を行い(ステップT3)、このデコード結果をメモリ4に記憶させる(ステップT4)。制御回路3は、これらのデコード結果を照合し(ステップT5)、同一の解読結果の得られた読取ラインが例えば5行以上あるか否かを判定し(ステップT6)、5行以上あれば解読成功とみなす(ステップT7)。
【0039】
ここで、解読成功とみなす同一の解読結果の得られる読取ラインのしきい値を例えば5行と比較的大きく設定しているのは、読取の確実性を向上するためである。つまり、図5に示すように、誤差Gが幅Wに対する割合が大きいと、前述したように誤解読しやすくなるためである。これにより、確実性優先アルゴリズムが選択された場合には速度優先アルゴリズムが選択された場合に比較して解読成功とみなす基準を厳しくすることができ、解読結果の正誤判断の信頼性を向上することができる。
【0040】
またステップT6において、制御回路3は、同一の解読結果の得られた読取ラインが5行未満の場合には、ステップT8〜T10の処理に移行する。このとき制御回路3は、デコード失敗した行数が3行以上であるときには(ステップT8:YES)、解読失敗とみなす(ステップT10)。これは、例えば図6に示すように、取り込まれた画像データの品質が悪い場合などに行われる処理である。すなわち、取込まれた画像データを所定行解読しても全て解読失敗と判断されたときに行われる処理である。
【0041】
尚、制御回路3は、デコード失敗した行数が多いときには解読結果の信頼性が劣るため、この解読結果を破棄し、再度画像データを取込み解読処理を繰り返すようにする。尚、図6は、模式的な解読処理の概要を示しており、5行失敗した例を示している。本実施形態においては3行以上失敗した時点で解読失敗とみなされるため、制御回路3は、図6の読取ライン(1)〜(3)を解読処理し失敗した時点で解読処理を終了し、次の画像データを取込み、解読処理を行うようになる。
【0042】
図7に戻って、制御回路3は、デコード処理の失敗した行数が3行未満(2行以下)であるときには(ステップT8:NO)、異なる解読結果の得られた読取ラインが3行以上あるか否かを判定する(ステップT9)。制御回路3は、異なる解読結果の得られた読取ラインが3行以上ある場合には(ステップT9:YES)、解読失敗とみなし再度画像データの取込処理を行い解読処理を行う。制御回路3は、異なる解読結果の得られた読取ラインが3行未満である場合には、ステップT3に戻り、次行の読取ラインの解読処理を行うようにする。
【0043】
これは、たとえデコード処理の成功する行数が多かったとしても、解読結果の異なる読取ラインが多ければ信頼性の劣る結果であると判定するためである。つまり、取込まれた画像データの品質が悪い場合には、読取ラインの位置が異なれば、異なる解読結果が得られてしまう場合があるため、このステップT9の判定処理を行う。これにより、信頼性の劣る解読結果を破棄することができ、解読結果の信頼性を向上できる。
【0044】
このような本実施形態によれば、制御回路3が、速度優先アルゴリズムおよび確実性優先アルゴリズムのうち何れかのアルゴリズムを含むプログラムによりリニアバーコードBを解読するため、解読処理の正誤判断の信頼度を向上できる。
【0045】
例えば、幅Wが所定値より大きく検出され、取込まれた画像データが良質なものであると判定された場合には、制御回路3が速度優先アルゴリズムにより解読処理することで少ない行数で解読処理を行うことができ、解読処理の迅速性を向上でき、素早く解読処理を終了できる。また、例えば、幅Wが所定値より小さく検出され、取込まれた画像データの品質が劣悪なものであると判定された場合には確実性優先アルゴリズムにより解読処理することにより確実に解読処理を行うことができ、解読結果の確実性,信頼性を向上できる。
【0046】
また、制御回路3は、速度優先アルゴリズムにより互いに平行な異なる5行の読取ラインを対象として解読処理を行い、同一の解読結果の得られた読取ラインが2行以上あることを条件として解読成功とみなすため、読取ラインを1ラインのみで行っている構成に比較して、リニアバーコードBの解読結果の信頼性を向上できる。
【0047】
また、制御回路3は、確実性優先アルゴリズムにより互いに平行な異なる複数の読取ラインを対象として解読処理を行い、異なる解読結果の得られた読取ラインが3行以上あることを条件としてリニアバーコードBの解読処理を失敗とみなすため、例えば読取ラインを1ラインのみで行うのに比較して、リニアバーコードBの解読結果の信頼性を向上できる。
【0048】
制御回路3が解読処理を失敗とみなした場合には、2次元画像センサ15が、再度リニアバーコードBを通じて光を受光し、この受光信号を画像メモリ4aに画像データを取り込みステップS1から再処理を行って解読するため、たとえ解読処理を失敗したとしても再度情報コードを通じて光を受光し情報コードを解読することができ、情報コードを極力誤読することなく解読できるようになる。
【0049】
(第2の実施形態)
図9は、本発明の第2の実施形態の説明を示すもので、第1の実施形態と異なるところは、2次元コードHを解読する処理に適用したところにある。第1の実施形態と同一部分については同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。
【0050】
情報コード読取装置1は、制御回路3が、図9(a)に示す2次元コードHを解読するように構成されている。2次元コードHは、矩形状の白セルH1,黒セルH2がマトリックスシンボル体系で格子状に組み合わされて構成されている。2次元コードHには、ある所定数の情報が含まれているが、この情報の一部分が欠損しても復元できるように誤り訂正符号も含まれている。そこで、本実施形態では、この誤り訂正符号を利用して解読速度を向上できるようにした例を示す。
【0051】
制御回路3は、情報コードとしての2次元コードHを解読する前に、2次元コードHの白セルH1または/および黒セルH2の最小幅を検出する。これは、2次元コードHの撮像距離に応じて白セルH1および黒セルH2に対応する画素の割当数が異なるためであり、制御回路3が解読確度を優先し確実性優先アルゴリズムを適用して処理を行うか、解読速度を優先し速度優先アルゴリズムを適用して処理を行うかを決定するためである。
【0052】
図9(a)は、2次元コードの一例を示している。また図9(b)は、図9(a)の2次元コードに対応したセルの読取領域を示すと共に読取ラインを示している。制御回路3は、白セルH1または黒セルH2の幅Wの最小幅が所定よりも大きいと判定すると、第1の実施形態と同様に速度優先アルゴリズムを適用して解読処理を行う。
【0053】
まず、制御回路3は、2次元コードHのセルの垂直方向および水平方向を設定する。例えば、2次元コードHとして例えばデータマトリックスを適用した場合には、L字のパターンを検出し、垂直方向および水平方向を設定する。例えば、2次元コードHとして例えばQRコードを適用した場合には、制御回路3は、位置決めパターンとしての切出しシンボルを検出し垂直方向および水平方向を設定する。また、例えば、2次元コードHとして例えばPDF−417コードを適用した場合には、制御回路3は、スタートビットおよびストップビットを検出し、2次元コードHの垂直方向および水平方向を設定する。
【0054】
図9(b)に示すように、制御回路3は、2次元コードHの形成領域に対して水平方向の直線状の読取ラインを設定し、最上行(最上段)の上側(1)の読取ラインY1から平行に設定された第N行の位置(N)の読取ラインYNにかけて順次白セルH1であるか黒セルH2であるかをメモリ4から読取る。
【0055】
この場合、制御回路3は、誤り訂正可能な所定の数のセル(図9(b)の読取セルHa参照)の白黒が読取られれば、その時点で白セルであるか黒セルであるかの読取処理を終了し、後のセル(図9(b)の未読取セルHb参照)の白黒読取処理を行うことなく、誤り訂正処理を行う。このとき、制御回路3は、誤り訂正処理を行った結果、誤り訂正処理が成功すれば解読処理を成功とみなす。これにより、解読速度を向上できる。尚、制御回路3は、誤り訂正処理が失敗すればさらに下行の位置の読取ラインにかけて順次白セルHであるか黒セルH2であるかをメモリ4から読取り再度解読処理を行う。
【0056】
また逆に、制御回路3は、白セルH1または黒セルH2の最小幅が所定よりも小さいと判定すると、確実性優先アルゴリズムを適用して解読処理を行う。この場合、制御回路3は、2次元コードHを構成する全ての白セルH1および黒セルH2が読取られた後に解読処理を行うようにする。これにより、解読速度よりも解読確度を優先して処理できるようになる。
【図面の簡単な説明】
【0057】
【図1】本発明の第1の実施形態を示す概略的なブロック構成図
【図2】輝度データと画素の対応関係を示す図(その1)
【図3】解読処理の順序を模式的に示す図
【図4】動作を示すフローチャート(その1)
【図5】輝度データと画素の対応関係を示す図(その2)
【図6】読取失敗時の形態を模式的に示す図
【図7】動作を示すフローチャート(その2)
【図8】(a)〜(d)は情報コードの一例を示す図
【図9】本発明の第2の実施形態の説明図((a)2次元コードの一例を示す図、(b)読取領域と読取ラインを示す図)
【符号の説明】
【0058】
図面中、1は情報コード読取装置(光学的情報読取装置)、3は制御回路(検出手段、選択手段、解読手段)、4はメモリ(記憶手段)、15は2次元画像センサ(受光手段)を示す。


【特許請求の範囲】
【請求項1】
明パターンおよび暗パターンを有してなる情報コードを解読するための複数のアルゴリズムを含むプログラムを記憶する記憶手段と、
前記情報コードに照射された光を受光する受光手段と、
前記受光手段の受光信号に基づいて前記情報コードの明パターンまたは/および暗パターンの最小基本パターンの大きさを検出する検出手段と、
前記検出手段により検出された最小基本パターンの大きさに応じて前記記憶手段に記憶された複数の解読アルゴリズムのうちの何れか1つの解読アルゴリズムを選択する選択手段と、
前記受光手段の受光信号に基づいて前記選択手段により選択された解読アルゴリズムを含むプログラムにより情報コードを解読する解読手段とを備えたことを特徴とする光学的情報読取装置。
【請求項2】
前記選択手段は、前記検出手段により検出された最小基本パターンの大きさが所定よりも小さい場合には、解読速度よりも解読確度を優先する解読アルゴリズムを選択することを特徴とする請求項1記載の光学的情報読取装置。
【請求項3】
前記選択手段は、前記検出手段により検出された最小基本パターンの大きさが所定よりも大きい場合には、解読確度よりも解読速度を優先する解読アルゴリズムを選択することを特徴とする請求項1または2記載の光学的情報読取装置。
【請求項4】
前記解読手段は、情報コードとしてリニアバーコードを解読する場合に、前記選択手段により選択された解読アルゴリズムにより互いに平行な異なる複数の読取ラインを対象として解読処理を行い、同一の解読結果の得られた読取ラインが所定数以上あることを条件として前記情報コードの解読処理を成功とみなすことを特徴とする請求項1ないし3の何れかに記載の光学的情報読取装置。
【請求項5】
前記解読手段は、情報コードとしてリニアバーコードを解読する場合に、前記選択手段により選択された解読アルゴリズムにより互いに平行な異なる複数の読取ラインを対象として解読処理を行い、異なる解読結果の得られた読取ラインが所定数以上あることを条件として前記情報コードの解読処理を失敗とみなすことを特徴とする請求項1ないし4の何れかに記載の光学的情報読取装置。
【請求項6】
前記解読手段は、情報コードとして複数のセルが組合わされてなる2次元コードを解読する場合において、前記検出手段により検出された最小基本パターンの大きさが所定よりも大きい場合には、互いに平行な異なる複数の読取ラインを対象として順次読取処理を行い、前記複数のセルのうち誤り訂正可能な数以上のセルが読取られたことを条件として後の読取ラインの読取処理を省略し、前記選択手段により選択された解読アルゴリズムにより解読処理および誤り訂正処理を行い当該誤り訂正処理が成功すれば前記情報コードの解読処理を成功とみなすことを特徴とする請求項1ないし5の何れかに記載の光学的情報読取装置。
【請求項7】
前記解読手段は、情報コードとして複数のセルが組合わされてなる2次元コードを解読する場合において、前記検出手段により検出された最小基本パターンの大きさが所定よりも小さい場合には、前記選択手段により選択された解読アルゴリズムにより前記2次元コードを構成する全てのセルが読取られたことを条件として解読処理を行うことを特徴とする請求項1ないし6の何れかに記載の光学的情報読取装置。
【請求項8】
前記解読手段が解読処理を失敗とみなした場合、
前記受光手段は再度前記情報コードを通じて光を受光し、
前記解読手段は、前記受光手段の受光信号に基づいて前記選択手段により選択された解読アルゴリズムにより情報コードを解読することを特徴とする請求項1ないし7の何れかに記載の光学的情報読取装置。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate