説明

光学的情報読取装置

【課題】セルサイズの異なる2つのデータ領域を有する二次元コードからの反射光を集光レンズを介して受光手段に好適に合焦させ得る光学的情報読取装置を提供する。
【解決手段】QRコード50を含んで生成された画像データに基づいて当該QRコード50の第1データ領域61がデコードされて、当該QRコード50の大きさに関する情報が取得されると、QRコード50の大きさとこのQRコード50が画像データに占めるコード領域とに基づいて当該QRコード50までの距離Xが測定される。そして、この距離Xに応じて合焦させるように結像レンズ27が移動された状態において、QRコード50の反射光を受光した受光センサ28からの受光結果に応じて生成された画像データに基づいて、当該QRコード50の第2データ領域62がデコードされる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、光学的情報読取装置に関するものである。
【背景技術】
【0002】
従来、光学的情報読取装置に関する技術として、下記特許文献1に示す二次元コードが知られている。この二次元コードは、データ領域が位置決め用シンボルを構成するセルと同じセルサイズのセルを用いて表現された第1データ領域と、その位置決め用シンボルを構成するセルより小さなセルサイズのセルを用いて表現された第2データ領域とから構成されている。これにより、比較的大きなセルサイズが必要な高速移動時読取用や、比較的小さなセルサイズで読取可能な手持ちの読取装置用など、用途に合わせたセルサイズを混在させてコードを形成している。
【0003】
また、下記特許文献2に示す二次元コードの読取方法では、上述のようにセルサイズの異なるデータ領域を有する二次元コードが読取対象であって、撮像した二次元コードの画像内での第1データ領域あるいは第2データ領域の少なくともいずれか一方のデータ領域の位置を、位置決め用シンボルの位置及び各データ領域のセルサイズに基づいて検出し、第1データ領域あるいは第2データ領域のうちの少なくともいずれか一方のコード情報を読み取っている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3873450号公報
【特許文献2】特許第3887947号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、近年、伝票などに表示されている近くの二次元コードや、フォークリフトや棚の上にある商品に表示されている遠くの二次元コードを単一の読取装置で円滑に読み取るために、自動焦点調節機能(オートフォーカス機能)を搭載した読取装置の必要性が高くなってきている。オートフォーカスで焦点を合わす方法としてコントラスト検出方式が主に用いられており、長所として撮影用CCDを流用するので、機構を簡略化でき小型化および低コスト化を図ることができる。
【0006】
しかしながら、コントラスト検出方式の短所としては、コントラストのない被写体には焦点が合わせられないことや、暗いと焦点が合わないことなどに加えて、合焦までに時間がかかることがあげられる。合焦に時間がかかる理由は、この方式では瞬間に被写体までの距離を求めることができないために、物理的に集光レンズを移動させることでコントラストの高い位置、すなわち焦点が合う集光レンズの位置を探索するためであり、レンズを頻繁に移動させることからレンズの駆動機構の耐久性も問題になる。
【0007】
セルサイズの大きな二次元コードであれば、焦点を正確に合わせなくても読み取ることができるが、当該二次元コードのコードサイズが大きくなってしまうという問題がある。また、上記特許文献1,2に記載の発明のように、二次元コードのデータ領域がセルサイズの異なる2つのデータ領域から構成されていると、焦点が正確に合っていない場合に大きなセルサイズのデータ領域が読み取れても、小さなセルサイズのデータ領域が読み取れない可能性がある。
【0008】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、セルサイズの異なる2つのデータ領域を有する二次元コードからの反射光を集光レンズを介して受光手段に好適に合焦させ得る光学的情報読取装置を提供することにある。
【課題を解決するための手段】
【0009】
上記目的を達成するため、特許請求の範囲に記載の請求項1の光学的情報読取装置では、複数のセルから構成される第1データ領域とこの第1データ領域を構成するセルよりも小さなセルから構成される第2データ領域とを有する二次元コードを光学的に読み取る光学的情報読取装置であって、前記第1データ領域には前記二次元コードの大きさに関する情報が含まれており、前記二次元コードから反射されて集光レンズにて集光された反射光を受光する受光手段と、前記受光手段による受光結果に基づいて画像データを生成する生成手段と、前記生成手段により前記二次元コードを含んで生成された前記画像データに基づいて当該二次元コードの前記第1データ領域をデコードする第1デコード手段と、前記第1デコード手段により取得された前記二次元コードの大きさとこの二次元コードが前記画像データに占めるコード領域とに基づいて当該二次元コードまでの距離を測定する距離測定手段と、前記距離測定手段により測定された測定距離に応じて合焦させるように前記集光レンズを移動させるレンズ移動手段と、前記測定距離に応じて合焦させた状態において前記二次元コードの反射光を受光した前記受光手段からの受光結果に応じて生成された画像データに基づいて当該二次元コードの前記第2データ領域をデコードする第2デコード手段と、を備えることを特徴とする。
【0010】
請求項2の発明は、請求項1に記載の光学的情報読取装置において、前記第1データ領域および前記第2データ領域には誤り訂正を行うための情報が含まれることを特徴とする。
【0011】
請求項3の発明は、請求項1または2に記載の光学的情報読取装置において、前記第1データ領域は、前記二次元コードの位置を特定するための位置検出パターンの近傍に配置されることを特徴とする。
【0012】
請求項4の発明は、請求項1〜3のいずれか一項に記載の光学的情報読取装置において、前記距離測定手段は、前記測定距離を、前記二次元コードの大きさと、前記受光手段の画角と、前記画像データにおいて前記画角に対応する画角方向にて当該二次元コードが占める測定用画素数とに基づいて測定することを特徴とする。
【0013】
請求項5の発明は、請求項4に記載の光学的情報読取装置において、前記測定用画素数は、前記コード領域の外縁を構成する四辺のうち前記画角方向にて対向する両辺の中央同士を当該画角方向に結ぶ線分に基づいて算出され、前記距離測定手段は、前記測定距離を、前記線分に基づき算出された測定用画素数と、前記二次元コードの大きさおよび前記画角とに基づいて測定することを特徴とする。
【0014】
請求項6の発明は、請求項4に記載の光学的情報読取装置において、前記測定用画素数は、前記コード領域の四隅のうち近接する2つを結ぶ線分に基づいて算出され、前記距離測定手段は、前記測定距離を、前記線分に基づき算出された測定用画素数と、前記二次元コードの大きさおよび前記画角とに基づいて測定することを特徴とする。
【0015】
請求項7の発明は、請求項1〜5のいずれか一項に記載の光学的情報読取装置において、前記画像データに含まれる前記コード領域を、当該二次元コードの各セルの配列方向が当該画像データの水平方向および垂直方向に等しくなるように回転して補正する補正手段を備え、前記距離測定手段は、前記測定距離を、前記補正手段により補正された前記コード領域に基づいて測定することを特徴とする。
【0016】
請求項8の発明は、請求項1〜7のいずれか一項に記載の光学的情報読取装置において、前記第1デコード手段によるデコードが失敗したときには、現時点における前記受光手段の被写界深度の近点側を遠点側にするように前記レンズ移動手段により前記集光レンズを移動させた後に、前記第1デコード手段によるデコードを実施することを特徴とする。
【0017】
請求項9の発明は、請求項8に記載の光学的情報読取装置において、前回の前記第1デコード手段によるデコードが成功したときには、前記集光レンズを移動させることなく前記第1デコード手段によるデコードを実施することを特徴とする。
【発明の効果】
【0018】
請求項1の発明では、第1デコード手段により、二次元コードを含んで生成された画像データに基づいて当該二次元コードの第1データ領域がデコードされて、当該二次元コードの大きさに関する情報が取得されると、二次元コードの大きさとこの二次元コードが画像データに占めるコード領域とに基づいて当該二次元コードまでの距離が測定される。そして、この測定距離に応じて合焦させるようにレンズ移動手段により集光レンズが移動された状態において、二次元コードの反射光を受光した受光手段からの受光結果に応じて生成された画像データに基づいて、デコード手段により、当該二次元コードの第2データ領域がデコードされる。
【0019】
このように、第1データ領域は、第2データ領域に対してセルサイズが大きいため、焦点が正確に合っていない場合でもデコード成功の可能性を高めることができる。また、二次元コードが画像データに占める割合は、当該二次元コードまでの距離に応じて変化するので、取得した二次元コードの大きさとこの二次元コードが画像データに占めるコード領域とから、当該二次元コードまでの距離を求めることができる。そして、この測定距離に応じて集光レンズを移動させることで正確に合焦させることができ、この合焦状態で生成された画像データでは、焦点が合っているので、比較的小さなセルサイズの第2データ領域であっても確実にデコードすることができる。
したがって、セルサイズの異なる2つのデータ領域を有する二次元コードからの反射光を集光レンズを介して受光手段に好適に合焦させることができる。
【0020】
請求項2では、第1データ領域および第2データ領域には誤り訂正を行うための情報が含まれているため、各データ領域の一部が汚れの付着等などにより誤った情報となる場合であっても、誤り訂正情報に基づいて訂正することができるので、当該二次元コードに対する読取精度を向上させることができる。
【0021】
請求項3では、第1データ領域は、二次元コードの位置を特定するための位置検出パターンの近傍に配置される。位置検出パターンを基準に各セルの位置が検出されるため、第1データ領域を位置検出パターンの近傍に配置することで、第1データ領域の位置検出精度が高まるので、当該二次元コードに対する読取精度を向上させることができる。
【0022】
請求項4では、距離測定手段により、二次元コードまでの測定距離が、二次元コードの大きさと、受光手段の画角と、画像データにおいて画角に対応する画角方向にて当該二次元コードが占める測定用画素数とに基づいて測定される。特定の画角方向において、測定用画素数と実際の二次元コードの長さとの比は、当該特定の画角方向での画像データの外縁間の画素数と二次元コードの位置での上記外縁間に相当する実際の長さ(以下、外縁間長さともいう)との比に等しくなる。この外縁間長さは、二次元コードまでの測定距離と受光手段の画角とにより一義的に決まるので、二次元コードの大きさと受光手段の画角と測定用画素数とに基づいて、二次元コードまでの測定距離を正確に測定することができる。
【0023】
請求項5では、上記測定用画素数は、コード領域の外縁を構成する四辺のうち画角方向にて対向する両辺の中央同士を当該画角方向に結ぶ線分に基づいて算出される。受光手段に対して二次元コードが傾斜していると、画像データにはコード領域が歪んだ状態で含まれることとなる。そこで、上記線分に基づいて測定用画素数を算出することで、例えば上述のように対向する両辺の端部同士を結ぶ線分に基づいて測定用画素数を算出する場合と比較して歪みの影響が抑制されるので、コード領域の歪みに起因する測定距離の測定精度の低下を抑制することができる。
【0024】
請求項6では、上記測定用画素数は、コード領域の四隅のうち近接する2つを結ぶ線分に基づいて算出される。これにより、二次元コードの各セルの配列方向の双方が当該画像データの水平方向および垂直方向に対して傾いている状態(以下、回転状態ともいう)であっても、上記線分、すなわち、当該二次元コードの一辺に相当する画素数に基づいて上記測定用画素数を容易に算出することができる。
【0025】
請求項7では、画像データに含まれるコード領域を、当該二次元コードの各セルの配列方向が当該画像データの水平方向および垂直方向に等しくなるように回転して補正するため、画像データにおいて画角に対応する画角方向が二次元コードの各セルの配列方向の一方に一致する。これにより、コード領域の大きさが画素数を用いることで求めやすくなるので、二次元コードまでの測定距離を正確に測定することができる。
【0026】
請求項8では、第1デコード手段によるデコードが失敗したときには、現時点における受光手段の被写界深度の近点側を遠点側にするようにレンズ移動手段により集光レンズを移動させた後に、第1デコード手段によるデコードを実施する。このように焦点が合っていないために第1デコード手段によるデコードが失敗する場合には、被写界深度を遠点側から近点側に変化させるように集光レンズを移動させることで、集光レンズをランダムに移動させたり近点側から遠点側へ徐々に移動させる場合と比較して、焦点を合わせるための時間および集光レンズの移動回数を低減することができる。
【0027】
請求項9の発明のように、前回の第1デコード手段によるデコードが成功したときには、現時点でもセルサイズが大きな第1データ領域を読み取れる焦点である可能性が高いので、請求項8の発明のように集光レンズを移動させることなく第1デコード手段によるデコードを実施してもよい。これにより、不要な集光レンズの移動をなくすことができる。
【図面の簡単な説明】
【0028】
【図1】本実施形態に係る光学的情報読取装置10の電気的構成を示すブロック図である。
【図2】本実施形態に係るQRコード50の概要を示す構成図である。
【図3】制御回路40にて行われる読取処理の流れを例示するフローチャートの一部である。
【図4】制御回路40にて行われる読取処理の流れを例示するフローチャートの一部である。
【図5】被写界深度調整処理における結像レンズ27の移動状態を説明するための説明図である。
【図6】距離測定処理におけるQRコード50の大きさおよび測定用画素数Nと距離Xとの関係を示す概念図である。
【図7】回転状態のQRコード50を示す概念図である。
【図8】図8(A)は、水平方向の線分の長さが異なるように歪んだ状態のQRコード50を示す概念図であり、図8(B)は、垂直方向の線分の長さが異なるように歪んだ状態のQRコード50を示す概念図である。
【図9】本実施形態の変形例に係るQRコード50aの概要を示す構成図である。
【発明を実施するための形態】
【0029】
以下、本発明の光学的情報読取装置を具現化した一実施形態について、図面を参照して説明する。
図1に示すように、光学的情報読取装置10は、後述するQRコード(登録商標)等の二次元コードを光学的に読み取る携帯型の読取装置として構成されている。この光学的情報読取装置10は、筐体(図示略)の内部に回路部20が収容されてなるものであり、回路部20は、主に、照明光源21、受光センサ28、結像レンズ27等の光学系と、メモリ35、制御回路40等のマイクロコンピュータ(以下「マイコン」という)系と、から構成されている。
【0030】
光学系は、投光光学系と、受光光学系とに分かれている。投光光学系を構成する照明光源21は、照明光Lfを発光可能な照明光源として機能するもので、例えば、赤色のLEDとこのLEDの出射側に設けられるレンズとから構成されている。なお、図1では、QRコード50が表示された読取対象Rに向けて照明光Lfを照射する例を概念的に示している。
【0031】
受光光学系は、受光センサ28、結像レンズ27、反射鏡(図示略)などによって構成されている。受光センサ28は、画素数が640×480(VGA)のCCDエリアセンサとして構成されるものであり、QRコード50または読取対象Rに照射されて反射した反射光Lrを受光可能に構成されている。この受光センサ28は、結像レンズ27を介して入射する入射光を受光可能にプリント配線板(図示略)に実装されている。なお、受光センサ28は、特許請求の範囲に記載の「受光手段」の一例に相当し得るものである。
【0032】
結像レンズ27は、外部から読取口13を介して入射する入射光を集光して受光センサ28の受光面28aに像を結像可能な集光レンズとして機能するものである。本実施形態では、照明光源21から照射された照明光LfがQRコード50にて反射した後、この反射光Lrを結像レンズ27で集光し、受光センサ28の受光面28aにコード像を結像させている。
【0033】
この結像レンズ27は、レンズ移動機構29により受光センサ28の光軸Lに沿い移動可能に支持されている。レンズ移動機構29は、図略のモータ等により構成されて、制御回路40からの駆動信号に応じて結像レンズ27を所定量光軸方向に移動させる機能を有する。なお、結像レンズ27およびレンズ移動機構29は、特許請求の範囲に記載の「集光レンズ」および「レンズ移動手段」の一例に相当し得るものである。
【0034】
また、上述したマイコン系は、増幅回路31、A/D変換回路33、メモリ35、アドレス発生回路36、同期信号発生回路38、制御回路40、発光部43、ブザー44、バイブレータ45、液晶表示器46、通信インタフェース48等から構成されている。
【0035】
光学系の受光センサ28から出力される画像信号(アナログ信号)は、増幅回路31に入力されることで所定の増幅率で増幅された後、A/D変換回路33に入力されると、アナログ信号からディジタル信号に変換される。そして、ディジタル化された画像信号、つまり画像データ(画像情報)は、生成されてメモリ35に入力されると、所定のコード画像情報格納領域に蓄積される。なお、同期信号発生回路38は、受光センサ28およびアドレス発生回路36に対する同期信号を発生可能に構成されており、またアドレス発生回路36は、この同期信号発生回路38から供給される同期信号に基づいて、メモリ35に格納される画像データの格納アドレスを発生可能に構成されている。
【0036】
メモリ35は、半導体メモリ装置で、例えばRAM(DRAM、SRAM等)やROM(EPROM、EEPROM等)がこれに相当する。このメモリ35のうちのRAMには、前述した画像データ蓄積領域のほかに、制御回路40が算術演算や論理演算等の各処理時に利用する作業領域や読取条件テーブルなども確保されるようになっている。またROMには、後述する読取処理等を実行可能な所定のプログラムや、照明光源21、受光センサ28等の各ハードウェアを制御可能なシステムプログラムなどが予め格納されている。
【0037】
制御回路40は、光学的情報読取装置10全体を制御可能なマイコンで、CPU、システムバス、入出力インタフェース等からなるもので、メモリ35とともに情報処理装置を構成し得るもので情報処理機能を有する。この制御回路40は、内蔵された入出力インタフェースを介して種々の入出力装置と接続可能に構成されており、本実施形態の場合、発光部43、ブザー44、バイブレータ45、液晶表示器46、通信インタフェース48等が接続されている。
【0038】
これにより、制御回路40は、例えば、QRコード50の読み取りに関する情報を通知するインジケータとして機能する発光部43の点灯・消灯、ビープ音やアラーム音を発生可能なブザー44の鳴動のオンオフ、当該光学的情報読取装置10の作業者に伝達し得る振動を発生可能なバイブレータ45の駆動制御、液晶表示器46の表示制御や外部装置とのシリアル通信を可能にする通信インタフェース48の通信制御等を可能にしている。なお、通信インタフェース48に接続される外部装置には、当該光学的情報読取装置10の上位システムに相当するホストコンピュータ等が含まれる。
【0039】
次に、読取対象であるQRコード50の構成について以下に説明する。
図2に示すように、QRコード50は、複数の情報表示単位セル(以下、単にセルとも称する)が集合したセル集合体として構成されている。図2では、各セルが2種類のセル(明色セルおよび暗色セル)のうちのいずれかとされており、各セル領域が正方形領域として構成されている。そして、このようなセルがマトリックス状に配置されることで、セルが配置される領域全体が矩形領域として構成されている。具体的には、QRコード50は、3つの位置検出パターン51a,51b,51c、アライメントパターン52、タイミングセル53a,53b、フォーマットコード54およびデータ領域60などから構成されている。
【0040】
データ領域60は、複数のセルから構成される第1データ領域61と、この第1データ領域61を構成するセルをn分割した小さなセルサイズのセルから構成される第2データ領域62とが図2に例示する所定の位置に配置されるように構成されている。ここで、第2データ領域62で用いられているデータセルのセルサイズは、第1データ領域61に用いられているデータセルのセルサイズを縦横それぞれ2分割するように設定されている。また、QRコード50全体のサイズは、第1データ領域61で用いられているデータセルを基準として、25セル×25セルの正方形状とされている。なお、図2では、便宜上、ハッチング領域で第1データ領域61が配置される領域を示し、白領域で第2データ領域62が配置される領域を示しており、各データ領域61,62での本来の明色セルおよび暗色セルの記載を省略している。また、第1データ領域61および第2データ領域62は、特許請求の範囲に記載の「第1データ領域」および「第2データ領域」の一例に相当し得る。
【0041】
具体的には、第1データ領域61は、QRコード50の大きさに関する情報、例えば、QRコード50の一辺の長さの情報や、第2データ領域62の第1データ領域61に対する分割数などの所定の情報が含まれるように、複数の明色セルおよび暗色セルから構成されている。なお、QRコード50の大きさに関する情報としては、例えば、単位セルの大きさに関する情報であってもよい。
【0042】
また、第2データ領域62は、当該QRコード50に要求される必要な情報が含まれるように複数の明色セルおよび暗色セルから構成されている。そのため、第2データ領域62の分割数を多くすることで第2データ領域62に含まれる情報量、すなわち、QRコード50に含まれる情報量を多くすることができる。この第2データ領域62には、後述する誤り訂正を行うための誤り訂正領域も含まれているものとする。
【0043】
また、各位置検出パターン51a,51b,51cは、QRコード50の4つの頂点のうち、3つに配置されており、所定のパターンに応じて第1データ領域61にて採用されるセルサイズと同じ大きさのデータセルにて構成されている。また、アライメントパターン52は、図2に示すごとく、データ領域60の内部に配置されており、所定のパターンに応じて第1データ領域61にて採用されるセルサイズと同じ大きさのデータセルにて構成されている。
【0044】
また、タイミングセル53a,53bは、位置検出パターン51a,51b,51c間に配置されており、第1データ領域61にて採用されるセルサイズと同じ大きさのデータセルにて構成されている。このタイミングセル53a,53bは、明色セルおよび暗色セルが交互に組み合わせられた各データセル位置の指標となる基準パターンとして用いられる。
【0045】
また、フォーマットコード54は、位置検出パターン51aの近傍に配置されており、所定のパターンに応じて第1データ領域61にて採用されるセルサイズと同じ大きさのデータセルにて構成されている。このフォーマットコード54は、第1データ領域61および第2データ領域62についての存在領域、使用しているコード種類、セルサイズ等が特定可能な内容となっている。
【0046】
次に、本実施形態に係る光学的情報読取装置10において、上述のように構成されるQRコード50を光学的に読み取る読取処理について、図3および図4に示すフローチャートを用いて説明する。
【0047】
まず、電源が投入されて所定の初期設定等が実施されると、図3のステップS101において、前回のデコードが成功したか否かについて判定される。ここで、前回のデコードが成功していなければ(S101でNo)、ステップS103にてレンズ移動処理がなされて、後述する所定の遠方の位置に焦点を合わせるように駆動信号がレンズ移動機構29に出力されて結像レンズ27が移動する。
【0048】
前回のデコードが成功であるか(S101でYes)、ステップS103にて結像レンズ27が移動されると、ステップS105にて画像データ生成処理がなされる。この処理では、作業者が照明光源21からの照明光Lfを読取対象であるQRコード50に向けることで、QRコード50にて反射した反射光Lrが結像レンズ27を介して受光センサ28にて受光されると、この受光結果に基づいて画像データが生成される。なお、ステップS105および後述するステップS127を実行する制御回路40は、特許請求の範囲に記載の「生成手段」の一例に相当し得る。
【0049】
続いて、ステップS107にて、上述のように生成された画像データから位置検出パターン51a,51b,51cが検出されるか否かについて判定される。ここで、焦点が合っていないために位置検出パターン51a,51b,51cが検出されない場合には(S107でNo)、ステップS109にて被写界深度調整処理がなされる。この処理では、現時点における受光センサ28の被写界深度の近点(以下、近点被写界深度Dnともいう)を新たな被写界深度の遠点(以下、遠点被写界深度Dfともいう)に一致させるように、駆動信号がレンズ移動機構29に出力される。これにより、レンズ移動機構29は、制御回路40からの駆動信号に基づいて受光センサ28の光軸Lに沿い被写界深度が近点側に変化するように結像レンズ27を移動させる。
【0050】
ここで、上述した遠点被写界深度Dfおよび近点被写界深度Dnは、以下の式により演算される。
Df=X×(H−f)/(H+X−2×f) ・・・(1)
Dn=X×(H−f)/(H−X) ・・・(2)
ここで、Hは、f/(F×d)で表される係数、fは、レンズの焦点距離、Fは、絞りである。また、dは、許容錯乱円(ぼけ量)であり、デコード可能な最小分解能(読み取りに必要なセルの最小割当て画素)から決定される。
【0051】
このように、結像レンズ27を移動させた後に、再度ステップS105からの処理がなされ、位置検出パターン51a,51b,51cが検出されるまで、ステップ109における処理が繰り返される。
【0052】
ここで、ステップS109における被写界深度調整処理について、図5を用いて説明する。図5に示すように、ステップS103にて焦点を合わせた所定の遠方の位置をP点とすると、最初のステップS109では、このP点で焦点を合わせた近点被写界深度Dnが遠点被写界深度DfとなるP点に焦点を合わせるように駆動信号がレンズ移動機構29に出力されて結像レンズ27が移動する。この焦点位置で位置検出パターン51a,51b,51cが検出されない場合には、再びステップS109にて、P点で焦点を合わせた近点被写界深度Dnが遠点被写界深度DfとなるP点に焦点を合わせるように駆動信号がレンズ移動機構29に出力されて結像レンズ27が移動する。この焦点位置でも位置検出パターン51a,51b,51cが検出されない場合には、さらにステップS109にて、P点で焦点を合わせた近点被写界深度Dnが遠点被写界深度DfとなるP点に焦点を合わせるように駆動信号がレンズ移動機構29に出力されて結像レンズ27が移動する。
【0053】
上述のように結像レンズ27を移動させて被写界深度を調整することにより位置検出パターン51a,51b,51cが検出されると(S107でYes)、ステップS111において、第1デコード処理がなされる。この処理では、位置検出パターン51a,51b,51cやフォーマットコード54等に応じて、データ領域60では大きなセルサイズの第1データ領域61についてデコード処理がなされて、QRコード50の大きさに関する情報等が取得される。この段階では、位置検出パターン51a,51b,51cを検出できる程度に焦点が合っているので、同じセルサイズの第1データ領域61を確実にデコードすることができる。なお、ステップS111を実行する制御回路40は、特許請求の範囲に記載の「第1デコード手段」の一例に相当し得る。
【0054】
次に、ステップS113にて、画像データにおいてQRコード50が占める領域(以下、コード領域という)での各セルの配列方向の双方が当該画像データの水平方向(画角βに対応する画角方向)に対して傾いている回転状態であるか否かについて判定される。ここで、コード領域での両配列方向のいずれかが当該画像データの水平方向に等しく回転状態でない場合には(S113でNo)、ステップS115にてコード領域が歪んでいるか否かについて判定される。ここで、コード領域が正方形状であって歪んでいなければ、ステップS115にてNoと判定される。
【0055】
そして、ステップS117において、第1測定用画素数検出処理がなされる。この処理では、図6に例示するように、ステップS105にて生成された画像データにおいて、受光センサ28の画角βに対応する画角方向にて当該QRコード50が占める画素数(以下、測定用画素数Nという)が検出される。なお、本実施形態では、画角βに対応する画角方向は水平方向に設定されており、画角βは、例えば、30°に設定されている。また、測定用画素数Nは、特許請求の範囲に記載の「測定用画素数」の一例に相当し得るものである。
【0056】
一方、上述したステップS113において、図7に例示するようにコード領域が回転状態である場合には(S113でYes)、ステップS119にて第2測定用画素数検出処理がなされる。この処理では、コード領域の四隅のうち近接する2つを結ぶ線分に基づいて、測定用画素数Nが検出される。具体的には、図7に示すように、画像データにおいてコード領域の四隅のうち近接する2つの位置に応じて水平方向の画素数Nxと垂直方向の画素数Nyとを検出することで、コード領域の外縁の一辺に対応する線分における測定用画素数Nが算出される。
【0057】
また、上述したステップS115において、図8(A)に例示するように、コード領域の外縁を構成する四辺のうち水平方向(画角方向)にて対向する両辺を水平方向に沿い結ぶ線分の長さが垂直方向一側ほど小さく(大きく)なっていることから、コード領域が歪んでいると判定される場合には、Yesと判定される。そして、ステップS119において、第3測定用画素数検出処理がなされる。この処理では、コード領域の水平方向にて対向する両辺の中央同士を当該水平方向(画角方向)に結ぶ線分に基づいて、上述した測定用画素数Nが検出される。具体的には、図8(A)におけるe点とf点とを結ぶ線分に基づいて測定用画素数Nが算出されることとなる。
【0058】
ここで、上述のように測定用画素数Nを算出する理由について説明する。
受光センサ28に対してQRコード50が傾斜していると、画像データにはコード領域が歪んだ状態で含まれることとなる。そこで、上記線分に基づいて測定用画素数Nを算出することで、例えば上述のように対向する両辺の端部同士を結ぶ線分(図8(A)におけるa点とb点とを結ぶ線分やc点とd点とを結ぶ線分)に基づいて測定用画素数を算出する場合と比較して歪みの影響が抑制することができる。
【0059】
なお、画角方向が垂直方向である場合には、図8(B)に例示するように、コード領域の垂直方向にて対向する両辺を垂直方向に沿い結ぶ線分の長さが水平方向一側ほど小さく(大きく)なっていることから、コード領域が歪んでいると判定され、このとき、コード領域の垂直方向にて対向する両辺の中央同士を当該垂直方向(画角方向)に結ぶ線分に基づいて、上述した測定用画素数Nが検出される。具体的には、図8(B)におけるe点とf点とを結ぶ線分に基づいて測定用画素数Nが算出されることとなる。
【0060】
次に、図4のステップS123において、画像データ内のQRコード50が占める領域の大きさを利用して、距離測定処理がなされる。特定の画角方向において、測定用画素数Nと実際のQRコード50の長さYとの比は、当該特定の画角方向での画像データの外縁間の画素数とQRコード50の位置での上記外縁間に相当する実際の長さ(以下、外縁間長さYaともいう)との比に等しくなる。この外縁間長さYaは、QRコード50までの距離Xと受光センサ28の画角βとにより一義的に決まるので、QRコード50の長さYと受光センサ28の画角βと測定用画素数Nとに基づいて、QRコード50までの距離Xを測定することができる。
【0061】
具体的には、特定の画角方向が水平方向(図6で上下方向)である場合に、この画角方向での画像データの外縁間の画素数は640であることから、図6に例示するように、以下の式3,4の関係が成立する。
Ya:Y=640:N ・・・(3)
Ya=2×X×tan(β/2) ・・・(4)
そこで、上記式3,4の関係からYaを消去することで、距離Xに関する以下の式5が成立する。
X=(320×Y)/(N×tan(β/2)) ・・・(5)
したがって、上記距離測定処理では、上記式5により、ステップS111にて取得したQRコード50の一辺の長さYと、ステップS117〜121のいずれかにて検出された測定用画素数Nとに基づいて、QRコード50までの距離Xが演算される。なお、ステップS123を実行する制御回路40は、特許請求の範囲に記載の「距離測定手段」の一例に相当し、距離Xは、特許請求の範囲に記載の「測定距離」の一例に相当し得るものである。
【0062】
上述のようにステップS123にて距離Xが測定されると、ステップS125にて合焦処理がなされ、ステップS123にて演算された距離Xに応じて合焦させるように駆動信号がレンズ移動機構29に出力される。これにより、レンズ移動機構29は、制御回路40からの駆動信号に基づいて受光センサ28の光軸Lに沿い結像レンズ27を移動させて合焦させる。そして、ステップS127にて画像データ生成処理がなされて、焦点のあった新たな画像データが生成された後に、ステップS129にて第2デコード処理がなされる。この処理では、比較的小さなセルサイズの第2データ領域62についてデコード処理がなされて、必要な情報が取得される。この段階では、測定された距離Xに応じて合焦されているので、小さなセルサイズの第2データ領域62であっても確実にデコードすることができる。なお、ステップS129を実行する制御回路40は、特許請求の範囲に記載の「第2デコード手段」の一例に相当し得る。
【0063】
続いて、ステップS131にて誤り訂正処理がなされ、公知の誤り訂正方法により、上記ステップS129にてデコードができなかった情報領域に対して誤り訂正を実施する処理がなされる。そして、デコード処理が成功した場合には(S133でYes)、当該読取処理を終了し、デコード処理が失敗した場合には(S133でNo)、上記ステップS127からの処理が繰り返される。
【0064】
以上説明したように、本実施形態に係る光学的情報読取装置10では、QRコード50を含んで生成された画像データに基づいて当該QRコード50の第1データ領域61がデコードされて、当該QRコード50の大きさに関する情報が取得されると、QRコード50の大きさとこのQRコード50が画像データに占めるコード領域とに基づいて当該QRコード50までの距離Xが測定される。そして、この距離Xに応じて合焦させるように結像レンズ27が移動された状態において、QRコード50の反射光を受光した受光センサ28からの受光結果に応じて生成された画像データに基づいて、当該QRコード50の第2データ領域62がデコードされる。
【0065】
このように、第1データ領域61は、第2データ領域62に対してセルサイズが大きいため、焦点が正確に合っていない場合でもデコード成功の可能性を高めることができる。また、第1データ領域61のデコードにより取得したQRコード50の大きさとこのQRコード50が画像データに占めるコード領域とから当該QRコード50までの距離Xを求め、この距離Xに応じて結像レンズ27を移動させることで正確に合焦させることができる。この合焦状態で生成された画像データでは、焦点が合っているので、比較的小さなセルサイズの第2データ領域62であっても確実にデコードすることができる。
したがって、セルサイズの異なる2つのデータ領域61,62を有するQRコード50からの反射光Lrを結像レンズ27を介して受光センサ28に好適に合焦させることができる。
【0066】
また、本実施形態に係る光学的情報読取装置10では、第2データ領域62には誤り訂正を行うための情報が含まれているため、第2データ領域62の一部が汚れの付着等などにより誤った情報となる場合であっても、誤り訂正情報に基づいて訂正することができるので、当該QRコード50に対する読取精度を向上させることができる。なお、第1データ領域61に誤り訂正を行うための情報が含まれる場合も同様の効果を奏する。
【0067】
さらに、本実施形態に係る光学的情報読取装置10では、QRコード50までの距離Xが、QRコード50の一辺の長さYと、受光センサ28の画角βと、測定用画素数Nとを用いることで正確に測定することができる。
【0068】
さらにまた、本実施形態に係る光学的情報読取装置10では、コード領域が歪んでいる場合、上記測定用画素数Nは、コード領域の外縁を構成する四辺のうち画角方向にて対向する両辺の中央同士を当該画角方向に結ぶ線分に基づいて算出される。これにより、例えば対向する両辺の端部同士を結ぶ線分に基づいて測定用画素数を算出する場合と比較して、そのコード領域の歪みに起因する距離Xの測定精度の低下を抑制することができる。
【0069】
また、本実施形態に係る光学的情報読取装置10では、コード領域が回転状態である場合には、測定用画素数Nは、コード領域の四隅のうち近接する2つを結ぶ線分に基づいて算出されるので、回転状態のQRコード50であってもその一辺に相当する画素数に基づいて上記測定用画素数Nを容易に算出することができる。
【0070】
さらに、本実施形態に係る光学的情報読取装置10では、第1デコード処理によるデコードが失敗したときには、現時点における受光センサ28の被写界深度の近点側を遠点側にするように結像レンズ27を移動させた後に、再度第1デコード処理を実施する。このように焦点が合っていないために第1デコード処理が失敗する場合には、被写界深度を遠点側から近点側に変化させるように結像レンズ27を移動させることで、結像レンズ27をランダムに移動させたり近点側から遠点側へ徐々に移動させる場合と比較して、焦点を合わせるための時間および結像レンズ27の移動回数を低減することができる。特に、読取対象がQRコード50等の二次元コードであるため、被写体の状態が予測困難な通常のカメラ等と異なり、ぼけ量(許容錯乱円d)が予め分かっているので、精度良く被写界深度を演算することができる。
【0071】
さらにまた、本実施形態に係る光学的情報読取装置10では、前回の第1デコード処理が成功したときには、現時点でもセルサイズが大きな第1データ領域61を読み取れる焦点である可能性が高いので、ステップS103における結像レンズ27を移動させることなく第1デコード処理を実施する。これにより、不要な結像レンズ27の移動をなくすことができる。
【0072】
本実施形態の変形例として、図9に例示するように、第1データ領域61を、位置検出パターン51aの近傍に配置してもよい。これにより、位置検出パターン51aを基準に各セルの位置が検出されるため、第1データ領域61を位置検出パターン51aの近傍に配置することで、第1データ領域61の位置検出精度が高まるので、当該QRコード50に対する読取精度を向上させることができる。また、第1データ領域61を、位置検出パターン51b,51cの近傍に配置しても同様の効果を奏する。
【0073】
なお、本発明は上記実施形態に限定されるものではなく、以下のように具体化してもよく、その場合でも、上記実施形態と同等の作用・効果が得られる。
(1)受光センサ28として、画素数が640×480(VGA)のセンサを採用することに限らず、この画素数と異なる仕様の受光センサを採用してもよい。この場合、ステップS123における距離測定処理では、この受光センサの画素数に基づいて距離Xが演算されることになる。
【0074】
(2)第2データ領域62で用いられているデータセルのセルサイズは、第1データ領域61に用いられているデータセルのセルサイズを縦横それぞれ2分割するように設定されることに限らず、第2データ領域62の情報量を多くするために、例えば、縦横それぞれ4分割するように設定されてもよい。この場合、この分割情報は、第1データ領域61またはフォーマットコード54等から特定されてもよい。
【0075】
(3)上記ステップS119では、コード領域における両配列方向の一方が当該画像データの水平方向(画角βに対応する画角方向)に一致するように、当該コード領域を回転補正した後に、測定用画素数Nを測定してもよい。これにより、コード領域における配列方向、すなわち、QRコード50の一辺の長さYに対応する方向と、受光センサ28の画角βに対応する画角方向とが一致するので、容易に測定用画素数Nを測定することができる。また、上述のようにコード領域を回転補正した後に、ステップS115における処理を実施することで、コード領域の回転状態と歪み状態の双方の影響をなくすことができる。
【符号の説明】
【0076】
10…光学的情報読取装置
27…結像レンズ(集光レンズ)
28…受光センサ(受光手段)
29…レンズ移動機構(レンズ移動手段)
40…制御回路(生成手段、距離測定手段、第1デコード手段,第2デコード手段)
50,50a…QRコード(二次元コード)
60…データ領域
61…第1データ領域
62…第2データ領域
Df…遠点被写界深度
Dn…近点被写界深度
L…光軸
Lr…反射光
N…測定用画素数
X…距離(測定距離)
β…画角

【特許請求の範囲】
【請求項1】
複数のセルから構成される第1データ領域とこの第1データ領域を構成するセルよりも小さなセルから構成される第2データ領域とを有する二次元コードを光学的に読み取る光学的情報読取装置であって、
前記第1データ領域には前記二次元コードの大きさに関する情報が含まれており、
前記二次元コードから反射されて集光レンズにて集光された反射光を受光する受光手段と、
前記受光手段による受光結果に基づいて画像データを生成する生成手段と、
前記生成手段により前記二次元コードを含んで生成された前記画像データに基づいて当該二次元コードの前記第1データ領域をデコードする第1デコード手段と、
前記第1デコード手段により取得された前記二次元コードの大きさとこの二次元コードが前記画像データに占めるコード領域とに基づいて当該二次元コードまでの距離を測定する距離測定手段と、
前記距離測定手段により測定された測定距離に応じて合焦させるように前記集光レンズを移動させるレンズ移動手段と、
前記測定距離に応じて合焦させた状態において前記二次元コードの反射光を受光した前記受光手段からの受光結果に応じて生成された画像データに基づいて当該二次元コードの前記第2データ領域をデコードする第2デコード手段と、
を備えることを特徴とする光学的情報読取装置。
【請求項2】
前記第1データ領域および前記第2データ領域には誤り訂正を行うための情報が含まれることを特徴とする請求項1に記載の光学的情報読取装置。
【請求項3】
前記第1データ領域は、前記二次元コードの位置を特定するための位置検出パターンの近傍に配置されることを特徴とする請求項1または2に記載の光学的情報読取装置。
【請求項4】
前記距離測定手段は、前記測定距離を、前記二次元コードの大きさと、前記受光手段の画角と、前記画像データにおいて前記画角に対応する画角方向にて当該二次元コードが占める測定用画素数とに基づいて測定することを特徴とする請求項1〜3のいずれか一項に記載の光学的情報読取装置。
【請求項5】
前記測定用画素数は、前記コード領域の外縁を構成する四辺のうち前記画角方向にて対向する両辺の中央同士を当該画角方向に結ぶ線分に基づいて算出され、
前記距離測定手段は、前記測定距離を、前記線分に基づき算出された測定用画素数と、前記二次元コードの大きさおよび前記画角とに基づいて測定することを特徴とする請求項4に記載の光学的情報読取装置。
【請求項6】
前記測定用画素数は、前記コード領域の四隅のうち近接する2つを結ぶ線分に基づいて算出され、
前記距離測定手段は、前記測定距離を、前記線分に基づき算出された測定用画素数と、前記二次元コードの大きさおよび前記画角とに基づいて測定することを特徴とする請求項4に記載の光学的情報読取装置。
【請求項7】
前記画像データに含まれる前記コード領域を、当該二次元コードの各セルの配列方向が当該画像データの水平方向および垂直方向に等しくなるように回転して補正する補正手段を備え、
前記距離測定手段は、前記測定距離を、前記補正手段により補正された前記コード領域に基づいて測定することを特徴とする請求項1〜5のいずれか一項に記載の光学的情報読取装置。
【請求項8】
前記第1デコード手段によるデコードが失敗したときには、現時点における前記受光手段の被写界深度の近点側を遠点側にするように前記レンズ移動手段により前記集光レンズを移動させた後に、前記第1デコード手段によるデコードを実施することを特徴とする請求項1〜7のいずれか一項に記載の光学的情報読取装置。
【請求項9】
前回の前記第1デコード手段によるデコードが成功したときには、前記集光レンズを移動させることなく前記第1デコード手段によるデコードを実施することを特徴とする請求項8に記載の光学的情報読取装置。

【図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