光学的情報読取装置

【課題】ローリングシャッタ方式を用いて撮像された二次元コードのずれを好適に補正し得る光学的情報読取装置を提供する。
【解決手段】検出されたコード領域の外形形状の外縁を構成する四辺のうち、先に取り込まれる一辺が、基準辺Loとされる。そして、上記基準辺Loに隣接する行のセル領域を基準に、このセル領域に反基準辺側から隣接するセル領域について、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを推定するとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを、基準辺Loに近い行のセル領域から順に推定することで、コード領域が補正される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ローリングシャッタ方式を用いて撮像された二次元コードをデコードする光学的情報読取装置に関する。
【背景技術】
【0002】
従来、光学的情報読取装置において読取対象である二次元コードなどの情報コードを撮像する手段として、ローリングシャッタ方式が採用されるCMOSセンサ(CMOSイメージセンサ)が知られている。このCMOSセンサの特徴としては、画素信号のランダムアクセスが可能であり、他の撮像手段(受光手段)、例えばCCDセンサと比較して、読み出しが高速かつ低消費電力で画素ピッチを縮小しやすくセンサの小型化や高画素化に優位であるだけでなく、低価格というメリットがある。
【0003】
このようなCMOSセンサなどのローリングシャッタ方式が採用される受光手段(撮像手段)を用いて撮像された情報コードをデコードする光学的情報読取装置に関する技術として、下記特許文献1に示す撮像装置が知られている。この撮像装置は、ローリングシャッタ方式が採用されるCMOSセンサにより撮像された撮像画像における画像ひずみの補正のために、動き検知手段から得られる動きのある被写体と任意に固定された基準行までの距離と、動き検知手段から得られる動きベクトル量によって、行毎に動きのある被写体の水平位置を制御することで、行毎に露光時間が異なることによる画像ひずみを補正している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特願2009−141717号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、上記特許文献1に開示されるような構成の読取装置では、画像のずれ(画像ひずみ)を補正するために、過去の数フレームの画像を常に記憶することから画像データを記憶するために必要な記憶容量が大きくなるだけでなく、上記数フレームにわたってベクトル量を演算することから処理時間が長くなるという問題がある。特に、これらの問題は、撮像画像の解像度が高くなるほど顕著となる。また、当該読取装置と読取対象である情報コードとの相対的な速度変化が考慮されないために、読取装置および情報コードが一定速度で相対移動しない場合には、補正の精度が低くなるという問題がある。
【0006】
本発明は、上述した課題を解決するためになされたものであり、その目的とするところは、複数の過去の画像情報を考慮することなく、ローリングシャッタ方式を用いて撮像された二次元コードのずれを好適に補正し得る光学的情報読取装置を提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するため、特許請求の範囲に記載の請求項1の光学的情報読取装置では、矩形状の暗色セルおよび明色セルが二次元的に複数配列してなる矩形状の二次元コードを光学的に読み取る光学的情報読取装置であって、前記二次元コードからの反射光を受光可能な受光素子が二次元的に配列されて構成される受光手段と、前記受光手段から出力される画像情報をローリングシャッタ方式で取り込む取込手段と、前記取込手段により取り込まれた画像情報に含まれる前記二次元コードをデコード可能なデコード手段と、前記画像情報のうち前記二次元コードに相当するコード領域であって前記暗色セルおよび前記明色セルのいずれかに相当する複数のセル領域が互いに隣接して構成されるコード領域に対して、その外形形状を検出する検出手段と、前記検出手段により検出された前記外形形状の外縁を構成する四辺のうち前記取込手段に先に取り込まれる一辺を基準辺とするとき、この基準辺に隣接する行の前記セル領域を基準に、このセル領域に反基準辺側から隣接するセル領域について、前記コード領域に占める領域を予測してこの予測された領域から当該セル領域が前記暗色セルおよび前記明色セルのいずれに相当するかを推定するとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、前記コード領域に占める領域を予測してこの予測された領域から当該セル領域が前記暗色セルおよび前記明色セルのいずれに相当するかを、前記基準辺に近い行のセル領域から順に推定することで、前記コード領域を補正する領域補正手段と、を備え、前記デコード手段は、前記画像情報に含まれる二次元コードと、前記領域補正手段により前記コード領域が補正された二次元コードとのいずれかについてデコードすることを特徴とする。
【0008】
請求項2の発明は、請求項1に記載の光学的情報読取装置において、前記基準辺に直交する列方向の前記セル領域の長さを列方向長さとするとき、前記基準辺に隣接する行の前記セル領域の前記列方向長さに等しくなるように、他の行のセル領域の前記列方向長さを補正するセル長補正手段を備え、前記デコード手段は、前記画像情報に含まれる二次元コードと、前記セル長補正手段により前記列方向長さが補正され、さらに前記領域補正手段により前記コード領域が補正された二次元コードとのいずれかについて、デコードすることを特徴とする。
【0009】
請求項3の発明は、請求項1または2に記載の光学的情報読取装置において、前記領域補正手段は、補正対象のセル領域について、基準辺側から隣接するセル領域の四隅を通る線のうち前記基準辺に直交する列方向に沿う2つの線を用いて囲まれる領域を基準に、当該セル領域が前記コード領域に占める領域を予測して、この予測された領域から当該セル領域が前記暗色セルおよび前記明色セルのいずれに相当するか推定して補正することを特徴とする。
【0010】
請求項4の発明は、請求項1〜3のいずれか一項に記載の光学的情報読取装置において、前記予測された領域について、前記暗色セルに相当する領域が占める割合と前記明色セルに相当する領域が占める割合との差が所定の閾値よりも小さくなる場合には、このセル領域を含む前記コード領域に対する補正を無効とすることを特徴とする。
【0011】
請求項5の発明は、請求項1〜4のいずれか一項に記載の光学的情報読取装置において、前記受光手段は、CMOSセンサであることを特徴とする。
【発明の効果】
【0012】
請求項1の発明では、検出手段により検出されたコード領域の外形形状の外縁を構成する四辺のうち、取込手段に先に取り込まれる一辺が、基準辺とされる。そして、領域補正手段により、上記基準辺に隣接する行のセル領域を基準に、このセル領域に反基準辺側から隣接するセル領域について、コード領域に占める領域を予測してこの予測された領域から当該セル領域が暗色セルおよび明色セルのいずれに相当するかを推定するとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、コード領域に占める領域を予測してこの予測された領域から当該セル領域が暗色セルおよび明色セルのいずれに相当するかを、基準辺に近い行のセル領域から順に推定することで、コード領域が補正される。そして、画像情報に含まれる二次元コードと、領域補正手段によりコード領域が補正された二次元コードとのいずれかについて、デコード手段によるデコードがなされる。
【0013】
ローリングシャッタ方式が採用される場合、取込手段に先に取り込まれた画像情報に対して後に取り込まれる画像情報ほど受光タイミングに差が生じることとなるため、上記基準辺から離れた行のセル領域ほど、画像のずれの影響が大きくなる。
本発明では、補正対象のセル領域について、基準辺側から隣接するセル領域を基準として予測されたコード領域に占める領域に基づき推定されて補正されるため、装置と二次元コードとの相対的な速度変化が考慮されて、ずれ量が基準辺側のセル領域に近づくように補正されるので、基準辺から離れた行のセル領域であっても、ずれの影響を小さくすることができる。
したがって、複数の過去の画像情報を考慮することなく、ローリングシャッタ方式を用いて撮像された二次元コードのずれを好適に補正することができる。
【0014】
請求項2の発明では、セル長補正手段により、上記基準辺に隣接する行のセル領域の列方向長さに等しくなるように、他の行のセル領域の列方向長さが補正される。そして、画像情報に含まれる二次元コードと、セル長補正手段により列方向長さが補正され、さらに領域補正手段によりコード領域が補正された二次元コードとのいずれかについて、デコード手段によるデコードがなされる。
【0015】
これにより、コード領域を構成する各セル領域は、セル長補正手段によりその列方向長さが全て等しくなるように補正された後に領域補正手段により補正されるため、セル領域の形状が本来のセル形状により近くなるので、デコード成功確率を向上させることができる。
【0016】
請求項3の発明では、前記領域補正手段により、補正対象のセル領域について、基準辺側から隣接するセル領域の四隅を通る線のうち上記列方向に沿う2つの線を用いて囲まれる領域を基準に、当該セル領域がコード領域に占める領域を予測して、この予測された領域から当該セル領域が暗色セルおよび明色セルのいずれに相当するか推定して補正される。
【0017】
基準辺側から隣接するセル領域の四隅を通る線のうち上記列方向に沿う2つの線を用いて囲まれる領域は、当該基準辺側から隣接するセル領域のずれ量がより反映された領域となるため、ずれ量が基準辺側のセル領域に近づくように補正されて、ずれの影響を確実に小さくすることができる。
【0018】
請求項4の発明では、予測された領域について、暗色セルに相当する領域が占める割合と明色セルに相当する領域が占める割合との差が所定の閾値よりも小さくなる場合、すなわち、予測された領域が暗色セルおよび明色セルのどちらに相当するかの判断が困難である場合には、このセル領域を含むコード領域に対する補正が無効とされる。
【0019】
予測された領域が暗色セルおよび明色セルのどちらに相当するかの判断が困難であるような場合にまで上記補正を実行すると、誤った補正がなされてデコードが失敗してしまう可能性が高くなるので、このような場合には上記補正を無効とすることで、誤った補正に起因するデコードの失敗をなくすことができる。
【0020】
請求項5の発明では、受光手段は、CMOSセンサであるため、他の受光手段、例えばCCDセンサと比較して、読み出しが高速かつ低消費電力で画素ピッチを縮小しやすくセンサの小型化や高画素化に優位であるだけでなく、低価格というメリットを奏することができる。
【図面の簡単な説明】
【0021】
【図1】第1実施形態に係る光学的情報読取装置の電気的構成を示すブロック図である。
【図2】複数の受光素子をm行n列の二次元状に配列して構成される受光センサの受光面を例示する説明図である。
【図3】ローリングシャッタ方式にて撮像された撮像画像のずれを説明するための説明図である。
【図4】制御回路において実施される読取処理の流れを例示するフローチャートである。
【図5】図4のセル長補正処理における列方向長さの補正を説明するための説明図である。
【図6】図4の領域補正処理におけるセル領域の補正を説明するための説明図である。
【図7】本実施形態に係る第1変形例の制御回路において実施される読取処理の流れを例示するフローチャートである。
【発明を実施するための形態】
【0022】
以下、本発明の光学的情報読取装置を具現化した一実施形態について、図面を参照して説明する。図1は、本実施形態に係る光学的情報読取装置10の電気的構成を示すブロック図である。図2は、複数の受光素子をm行n列の二次元状に配列して構成される受光センサ28の受光面28aを例示する説明図である。
【0023】
図1に示すように、光学的情報読取装置10は、物品に付された情報コード、例えば、バーコードなどの一次元コードやQRコード(登録商標)などの二次元コードを光学的に読み取る装置として構成されている。この光学的情報読取装置10は、外装ケース11の内部に回路部20が収容されてなるものであり、回路部20は、主に、照明光源21、受光センサ28、結像レンズ27等の光学系と、メモリ35、制御回路40、トリガースイッチ42等のマイクロコンピュータ(以下「マイコン」という)系と、から構成されている。
【0024】
光学系は、投光光学系と、受光光学系とに分かれている。投光光学系を構成する照明光源21は、照明光Lfを発光可能な照明光源として機能するもので、例えば、赤色のLEDとこのLEDの出射側に設けられるレンズとから構成されている。なお、図1では、情報コードQが付された対象物Rに向けて照明光Lfを照射する例を概念的に示している。
【0025】
受光光学系は、受光センサ28、結像レンズ27、反射鏡(図示略)などによって構成されている。受光センサ28は、情報コードQ等に照射されて反射した反射光Lrを受光可能に構成されるもので、本実施形態では、図2に示すように、その受光面28aが複数の受光素子をm行n列の二次元に配列して構成されるCMOSセンサ(CMOSイメージセンサ)が、これに相当する。この受光センサ28は、結像レンズ27を介して入射する入射光を受光可能にプリント配線板(図示略)に実装されている。なお、受光センサ28は、特許請求の範囲に記載の「受光手段」に相当し得るものである。
【0026】
結像レンズ27は、外部から読取口13を介して入射する入射光を集光して受光センサ28の受光面28aに像を結像可能な結像光学系として機能するものである。本実施形態では、照明光源21から照射された照明光Lfが情報コードQにて反射した後、この反射光Lrを結像レンズ27で集光し、受光センサ28の受光面28aにコード像を結像させている。
【0027】
マイコン系は、増幅回路31、A/D変換回路33、メモリ35、アドレス発生回路36、同期信号発生回路38、制御回路40、トリガースイッチ42、発光部43、ブザー44、バイブレータ45、液晶表示器46、通信インタフェース48等から構成されている。
【0028】
光学系の受光センサ28から出力される画像信号(アナログ信号)は、増幅回路31に入力されることで所定ゲインで増幅された後、A/D変換回路33に入力されると、アナログ信号からディジタル信号に変換される。そして、ディジタル化された画像信号、つまり画像データ(画像情報)は、生成されてメモリ35に入力されると、所定のコード画像情報格納領域に蓄積される。なお、同期信号発生回路38は、受光センサ28およびアドレス発生回路36に対する同期信号を発生可能に構成されており、またアドレス発生回路36は、この同期信号発生回路38から供給される同期信号に基づいて、メモリ35に格納される画像データの格納アドレスを発生可能に構成されている。
【0029】
特に、本実施形態では、受光センサ28としてCMOSセンサが採用されているため、全画素(m行n列)について一度に露光してその全部を取り込む方式(グローバルシャッタ方式)ではなく、受光面28aを構成する2次元配列の1行づつを先頭から順番に露光して行ごとに順次取り込む方式(ローリングシャッタ方式)となる。このため、当該メモリ35のコード画像情報格納領域には、受光面28aを構成する2次元配列の、1行目の1列〜m列→2行目の1列〜m列→3行目の1列〜m列→…→(n−1)行目の1列〜m列→n行目の1列〜m列の順番に各画像データが蓄積されていく(図2参照)。
【0030】
メモリ35は、半導体メモリ装置で、例えばRAM(DRAM、SRAM等)やROM(EPROM、EEPROM等)がこれに相当する。このメモリ35のうちのRAMには、上述したコード画像情報格納領域のほかに、制御回路40が算術演算や論理演算等の各処理時に利用する作業領域や読取条件テーブルも確保可能に構成されている。またROMには、後述する読取処理等を実行可能な所定プログラムやその他、照明光源21、受光センサ28等の各ハードウェアを制御可能なシステムプログラム等が予め格納されている。
【0031】
制御回路40は、光学的情報読取装置10全体を制御可能なマイコンによって構成されており、CPU、システムバス、入出力インタフェース等を有すると共に、情報処理機能を備えており、メモリ35とともに情報処理装置を構成している。本実施形態では、制御回路40に対し、トリガースイッチ42、発光部43、ブザー44、バイブレータ45、液晶表示器46、通信インタフェース48等が接続されている。
【0032】
これにより、制御回路40は、例えば、トリガースイッチ42の監視や管理、情報コードQの読み取りに関する情報を報知するインジケータとして機能する発光部43の点灯・消灯、ビープ音やアラーム音を発生可能なブザー44の鳴動のオンオフ、当該光学的情報読取装置10の使用者に伝達し得る振動を発生可能なバイブレータ45の駆動制御、液晶表示器46の表示制御や外部装置とのシリアル通信を可能にする通信インタフェース48の通信制御等を可能にしている。
【0033】
このように光学的情報読取装置10を構成することによって、例えば、電源スイッチがオンされて所定の自己診断処理等が正常終了し、情報コードQの読み取りが可能な状態になると、照明光Lfの発光を指示するトリガースイッチ42の入力を受け付ける。これにより、作業者がトリガースイッチ42を押圧しオンにすることで、制御回路40が同期信号を基準に照明光源21に発光信号を出力するので、当該発光信号を受けた照明光源21は、LEDを発光させて照明光Lfを照射する。
【0034】
そして、情報コードQに照明光Lfが照射されて、その反射光Lrが読取口13を介して結像レンズ27に入射すると、受光センサ28の受光面28aには、結像レンズ27により情報コードQの像、つまりコード画像が結像され、それぞれの像が受光センサ28の各受光素子に対して露光可能となる。そして、受光面28aを構成する各受光素子が露光され、これら各受光素子から受光量に応じた信号がローリングシャッタ方式にてメモリ35のコード画像情報格納領域に順次取り込まれた後、このように取り込まれた信号から構成される情報コードQに相当する領域(以下、コード領域という)の画像データを2値化した後、所定のデコード処理を施すことによって、情報コードQとして符号化された文字データ等が解読されることとなる。解読された内容は液晶表示器46に表示したり、通信インタフェース48を介して図略のホストコンピュータ等に出力したりすることができる。なお、制御回路40は、特許請求の範囲に記載の「デコード手段」の一例に相当する。
【0035】
図3は、ローリングシャッタ方式にて撮像された撮像画像のずれを説明するための説明図であり、図3(A)は、行方向に相対移動する場合の撮像画像を示し、図3(B)は、列方向に相対移動する場合の撮像画像を示し、図3(C)は、行方向および列方向に相対移動する場合の撮像画像を示す。
ところで、例えば、対象物Rに対して表示された複数の情報コードQを読み取るために、作業者が読取口13を対象物Rに対して移動させながら各情報コードQを撮像する流し読みを行う場合がある。この場合には、装置本体と情報コードQとが相対移動しているため、コード画像情報格納領域に取り込まれる画像データにずれが生じやすくなり、当該情報コードQに対するデコード処理が失敗する可能性が高くなる。
【0036】
特に、QRコードのように、正方形状の黒色セルおよび白色セルが二次元的に複数配列してなる正方形状の二次元コードを流し読みして撮像する場合、例えば、QRコードに対して行方向(図3の左右方向)に流し読みして撮像する場合には、コード画像情報格納領域には1行目、2行目と順に取り込まれるため、図3(A)に例示するように、行ごとに異なるずれ量で撮像されることとなる。一方、QRコードに対して列方向(図3の上下方向)に流し読みして撮像する場合には、図3(B)に例示するように、列方向のセル長さが各行にて異なるように撮像されることとなる。また、QRコードにおける各セルの配列方向とこのQRコードを含む画像データの行方向および列方向が異なるように流し読みして撮像する場合には、図3(C)に例示するように行方向および列方向にずれて撮像されることとなる。
【0037】
そこで、本実施形態に係る光学的情報読取装置10では、以下説明する読取処理によって、作業者により二次元コードが流し読みなどされて装置本体と二次元コードとが相対移動した状態で画像が撮像(受光)される場合に、二次元コードのずれを補正可能にしている。
【0038】
以下、光学的情報読取装置10の制御回路40にて実行される読取処理について図4を用いて説明する。図4は、制御回路40において実施される読取処理の流れを例示するフローチャートである。
【0039】
光学的情報読取装置10が電源オン状態になり情報コードを読み取り可能な読取状態になると、まず、ステップS101において、撮像処理がなされ、作業者のトリガースイッチ42の操作に応じて、照明光源21から照明光Lfが、QRコードQが表示された対象物Rに向けて照射される。そして、図1に示すように、対象物Rにて反射された反射光Lrが受光センサ28の受光面28aにて受光され、各受光素子から受光量に応じた信号がローリングシャッタ方式にてメモリ35のコード画像情報格納領域に画像情報として順次取り込まれる。なお、ステップS101を実行する制御回路40は、特許請求の範囲に記載の「取込手段」の一例に相当し得し得る。
【0040】
次に、ステップS103において、外形形状検出処理がなされる。この処理では、メモリ35のコード画像情報格納領域に取り込まれた画像情報からQRコードQに相当するコード領域が抽出されることで、当該コード領域の外形形状が検出される。なお、コード領域は、黒色セルおよび白色セルのいずれかに相当するセル領域が複数互いに隣接して構成されている。なお、ステップS103を実行する制御回路40は、特許請求の範囲に記載の「検出手段」の一例に相当し得し得る。
【0041】
続いて、ステップS105において、検出された外形形状が正方形状か否かについて判定される。ここで、ステップS103にて検出された外形形状が正方形状であれば、撮像されたQRコードQにずれは生じていないとして、ステップS105にてYesと判定されて、後述する各補正処理を実施することなく、ステップS117にてデコード処理がなされる。このデコード処理では、コード領域の信号が二値化されることで各セル領域がそれぞれ黒色セルおよび白色セルのいずれかに相当するか特定され、公知のデコード方法によってQRコードQとして符号化された文字データ等が解読される。なお、ステップS117を実行する制御回路40は、特許請求の範囲に記載の「デコード手段」の一例に相当し得し得る。
【0042】
一方、ステップS103にて検出された外形形状が正方形状でない場合には(S105でNo)、ステップS107において、基準辺設定処理がなされる。この処理では、ステップS103にて検出された外形形状の外縁を構成する四辺のうち、メモリ35のコード画像情報格納領域に先に取り込まれる一辺が基準辺Loとして設定される(図3等参照)。
【0043】
続いて、ステップS109において、各行において、基準辺Loに直交する列方向のセル領域の長さ(以下、列方向長さYという)が等しいか否かについて判定される。ここで、図5(A)に例示するように、各行において列方向長さYが異なる場合には、ステップS109にてNoと判定される。
【0044】
そして、ステップS111において列方向長さ補正処理がなされる。この処理では、基準辺Loに隣接するセル領域の列方向長さを基準に、他の行におけるセル領域の列方向長さYが補正される。
【0045】
この補正について、図5を用いて具体的に説明する。図5は、図4のセル長補正処理における列方向長さYの補正を具体的に説明するための説明図であり、図5(A)は、補正前のコード領域における一部のセル領域の列方向長さYを示し、図5(B)は、補正後のコード領域における一部のセル領域の列方向長さYを示す。
【0046】
図5(A)に例示するように、基準辺Loに隣接するセル領域の列方向長さ(図5ではY1)と、他の行におけるセル領域の列方向長さ(図5ではY2〜Y4)とが異なる場合には、ステップS109にてNoと判定される。そして、上記ステップS111における補正処理により、図5(B)に例示するように、他の行におけるセル領域の列方向長さY2〜Y4等が、基準辺Loに隣接するセル領域の列方向長さY1に等しくなるように補正される。なお、ステップS111を実行する制御回路40は、特許請求の範囲に記載の「セル長補正手段」の一例に相当し得し得る。
【0047】
次に、ステップS113において、ステップS103にて検出された外形形状の外縁を構成する四辺のうち基準辺Loの両端にそれぞれ接続する辺(以下、側辺L1,L2という)が直線状か否かについて判定される。装置本体とQRコードQとの相対速度が変化している場合には、各行でのずれ量が不均一となり両側辺L1,L2が直線状にならないからである。このため、両側辺L1,L2が直線状でない場合には(S113でNo)、装置本体とQRコードQとの間に相対的な速度変化が生じているとして、ステップS115において、上記相対的な速度変化の影響を抑制して各行でのずれ量を均一化するために、領域補正処理がなされる。
【0048】
この補正処理では、基準辺Loに隣接する行のセル領域を基準に、このセル領域に反基準辺側から隣接するセル領域について、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを推定するとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを、基準辺Loに近い行のセル領域から順に推定することで、コード領域が補正される。
【0049】
当該補正処理について、図6を用いて具体的に説明する。図6は、図4の領域補正処理におけるセル領域の補正を説明するための説明図であり、図6(A)は、補正前のコード領域において列方向に互いに隣接する一部のセル領域を示し、図6(B)は、図6(A)の2行目のセル領域に対する補正を示し、図6(C)は、図6(A)の3行目のセル領域に対する補正を示す。
【0050】
コード領域の両側辺L1,L2が直線状でない場合に、基準辺Loに隣接する1つのセル領域(図6の符号P1)とこのセル領域と同じ列のセル領域の一部(図6の符号P2〜P4)とを抽出すると、図6(A)に例示するように、各セル領域P1〜P4での上記列方向に沿う辺はそれぞれ少なくとも一部が異なる形状を有することとなる。なお、図6では、便宜上、各セル領域P1〜P4での上記列方向に沿う辺が直線的に図示されているが、各辺がそれぞれ曲部を有するように形成されてもよい。
【0051】
以下、セル領域P1〜P4を用いて当該補正処理について説明する。
当該補正処理では、まず、基準辺Loに隣接する行のセル領域P1を基準に、このセル領域に反基準辺側から隣接するセル領域P2について、コード領域に占める領域を予測する。具体的には、k番目のセル領域の四つの隅部のうち基準辺側の隅部を符号Cka,Ckb、反基準辺側の隅部を符号Ckc,Ckdとするとき、セル領域P1の四つの隅部C1a〜C1dを通る線のうち上記列方向に沿う2つの線、すなわち隅部C1a,C1cを通る直線L1aと、隅部C1b,C1dを通る直線L1bを想定し、これら両直線L1a,L1bがセル領域P2の隅部C2c,C2dを通る直線と交わる点をC2e,C2fとする(図6(B)参照)。
【0052】
ここで、C2a,C2b,C2e,C2fによる囲まれる領域(以下、予測領域という)は、セル領域P1が撮像されたときの装置本体とQRコードQとの相対速度変化が等しくなる場合のセル領域P2に相当する。このため、上記予測領域を基準として、当該予測領域について、黒色セルに相当する領域が占める割合と白色セルに相当する領域が占める割合とを求め、図6(B)に例示するように、黒色セルに相当する領域が占める領域の割合が白色セルに相当する領域が占める領域の割合よりも大きい場合には、セル領域P2が黒色セルに相当する領域であると推定される。
【0053】
次に、セル領域P2を基準に、このセル領域に反基準辺側から隣接するセル領域P3について、コード領域に占める領域を予測する。具体的には、セル領域P2の四つの隅部C2a〜C2dを通る線のうち上記列方向に沿う2つの線、すなわち隅部C2a,C2cを通る直線L2aと、隅部C2b,C2dを通る直線L2bを想定し、これら両直線L2a,L2bがセル領域P3の隅部C3c,C3dを通る直線と交わる点をC3e,C3fとする(図6(C)参照)。そして、C3a,C3b,C3e,C3fによる囲まれる予測領域を基準として、当該予測領域について、黒色セルに相当する領域が占める割合と白色セルに相当する領域が占める割合とを求め、図6(C)に例示するように、白色セルに相当する領域が占める領域の割合が黒色セルに相当する領域が占める領域の割合よりも大きい場合には、セル領域P3が白色セルに相当する領域であると推定される。
【0054】
続いて、同様にセル領域P3を基準にセル領域P4が推定されるとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを、基準辺Loに近い行のセル領域から順に推定される。そして、このような推定を各列ごと実施することで、各セル領域が推定されて、これら各セル領域から構成されるコード領域が補正されることとなる。なお、ステップS115を実行する制御回路40は、特許請求の範囲に記載の「領域補正手段」の一例に相当し得し得る。
【0055】
このように、ステップS115にて各セル領域が推定されたコード領域について、ステップS117にてデコード処理がなされ、QRコードQとして符号化された文字データ等が解読される。なお、各行において列方向長さYが等しい場合には、ステップS109にてYesと判定されて、ステップS111における補正処理を実施することなく、ステップS113以降の処理がなされる。また、ステップS103にて検出された外形形状の両側辺L1,L2が直線状である場合には、ステップS113にてYesと判定されて、ステップS115における補正処理を実施することなく、ステップS117以降の処理がなされる。
【0056】
以上説明したように、本実施形態に係る光学的情報読取装置10では、検出されたコード領域の外形形状の外縁を構成する四辺のうち、先に取り込まれる一辺が、基準辺Loとされる。そして、上記基準辺Loに隣接する行のセル領域を基準に、このセル領域に反基準辺側から隣接するセル領域について、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを推定するとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、コード領域に占める領域を予測してこの予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するかを、基準辺Loに近い行のセル領域から順に推定することで、コード領域が補正される。そして、画像情報に含まれるQRコードQと、上述のようにコード領域が補正されたQRコードQとのいずれかについて、デコードがなされる。
【0057】
本発明では、補正対象のセル領域について、基準辺側から隣接するセル領域を基準として予測されたコード領域に占める領域に基づき推定されて補正されるため、装置本体とQRコードQとの相対的な速度変化が考慮されて、ずれ量が基準辺側のセル領域に近づくように補正されるので、基準辺Loから離れた行のセル領域であっても、ずれの影響を小さくすることができる。
したがって、複数の過去の画像情報を考慮することなく、ローリングシャッタ方式を用いて撮像されたQRコードQ(二次元コード)のずれを好適に補正することができる。
【0058】
また、上記基準辺Loに隣接する行のセル領域の列方向長さ(Y1)に等しくなるように、他の行のセル領域の列方向長さ(Y2〜)が補正される。そして、画像情報に含まれるQRコードQと、ステップS111にて列方向長さYが補正され、さらにステップS115にてコード領域が補正されたQRコードQとのいずれかについて、デコードがなされる。
【0059】
これにより、コード領域を構成する各セル領域は、ステップS111にてその列方向長さYが全て等しくなるように補正された後にステップS115にて補正されるため、セル領域の形状が本来のセル形状により近くなるので、デコード成功確率を向上させることができる。さらに、上記予測された領域の予測精度が向上し、ステップS115によるQRコードQ(二次元コード)のずれの補正精度を向上させることができる。
【0060】
特に、ステップS115では、補正対象のセル領域について、基準辺側から隣接するセル領域の四隅を通る線のうち上記列方向に沿う2つの線(L1a,L1b等)を用いて囲まれる領域を基準に、当該セル領域がコード領域に占める領域を予測して、この予測された領域から当該セル領域が黒色セルおよび白色セルのいずれに相当するか推定して補正される。
【0061】
基準辺側から隣接するセル領域の四隅を通る線のうち上記列方向に沿う2つの線を用いて囲まれる領域は、当該基準辺側から隣接するセル領域のずれ量がより反映された領域となるため、ずれ量が基準辺側のセル領域に近づくように補正されて、ずれ量の均一化が図られるので、ずれの影響を確実に小さくすることができる。
【0062】
また、受光センサ28としてCMOSセンサが採用されているため、他の受光センサ(受光手段)、例えばCCDセンサと比較して、読み出しが高速かつ低消費電力で画素ピッチを縮小しやすくセンサの小型化や高画素化に優位であるだけでなく、低価格というメリットを奏することができる。
【0063】
図7は、本実施形態に係る第1変形例の制御回路40において実施される読取処理の流れを例示するフローチャートである。
本実施形態に係る第1変形例として、デコード処理が失敗した場合に、上記ステップS103以降の処理を実施するようにしてもよい。
【0064】
具体的には、図7のフローチャートに示すように、ステップS101にて撮像処理によりがなされた後に、この処理によりメモリ35のコード画像情報格納領域に取り込まれた画像情報のコード領域について、ステップS119にて、上記ステップS117と同様のデコード処理がなされ、このデコード処理が失敗した場合に(S121でNo)、上記ステップS103からの処理を実施することができる。なお、この場合には、上述したステップS105における判定処理は廃止される。
【0065】
これにより、デコード処理が失敗した場合に限り、ステップS111やステップS115における補正処理が実施されることとなるので、制御回路40の読取処理に関する負荷を軽減するとともに処理時間を短縮することができる。
【0066】
なお、装置本体と二次元コードとの列方向の相対移動がなされる可能性が低いなどの場合には、図4のフローチャートにて示す読取処理や図7のフローチャートにて示す読取処理において、補正処理に関して上記ステップS109,S111における処理をなくして上記ステップS113,S115における処理のみ実施してもよい。また、読取作業状況に応じて、図4のフローチャートにて示す読取処理や図7のフローチャートにて示す読取処理において、補正処理に関して上記ステップS113,S115における処理をなくして上記ステップS109,S111における処理のみ実施してもよい。
【0067】
また、本実施形態に係る第2変形例として、ステップS115の領域補正処理において、予測領域(例えばC2a,C2b,C2e,C2fによる囲まれる領域)について、黒色セルに相当する領域が占める割合と白色セルに相当する領域が占める割合との差が所定の閾値よりも小さくなる場合、すなわち、予測領域が黒色セルおよび白色セルのどちらに相当するかの判断が困難である場合には、このセル領域を含むコード領域に対する補正が無効とされてもよい。
【0068】
ここで、上記所定の閾値は、読取作業環境に応じて、例えば、60〜80%程度に設定されており、黒色セルに相当する領域が占める割合が75%で白色セルに相当する領域が占める割合が残りの25%となる場合には、両者の差が上記所定の閾値よりも小さくなるとして、当該セル領域を含むコード領域に対する補正が無効とされる。
【0069】
このように予測領域が黒色セルおよび白色セルのどちらに相当するかの判断が困難であるような場合にまで上記補正を実行すると、誤った補正がなされてデコードが失敗してしまう可能性が高くなるので、このような場合には上記補正を無効とすることで、誤った補正に起因するデコードの失敗をなくすことができる。
【0070】
なお、本発明は上記実施形態に限定されるものではなく、以下のように具体化してもよい。
(1)受光センサ28として、CMOSセンサに代えて、ローリングシャッタ方式により画像信号が取り込まれる受光手段を採用することができる。このような受光手段を採用する場合でも、上述した二次元コードのずれを好適に補正することができる。
【0071】
(2)本発明の補正対象は、正方形状の黒色セルおよび白色セルが二次元的に複数配列してなる正方形状のQRコードQに限らず、矩形状の黒色セル(暗色セル)および白色セル(明色セル)が二次元的に複数配列してなる矩形状の二次元コードが本発明の補正対象とされてもよい。この場合、上述した読取処理では、当該矩形状の列方向長さおよび行方向長さを考慮して、ステップS111やステップS115における補正処理が実施される。
【0072】
(3)ステップS115の領域補正処理では、補正対象のセル領域について、基準辺側から隣接するセル領域の四隅を通る線のうち上記列方向に沿う2つの線を用いて囲まれる領域を基準に、上記予測領域を予測することに限らず、基準辺側から隣接するセル領域の特徴、例えば四辺の形状を基準に、上記予測領域を予測してもよい。
【符号の説明】
【0073】
10…光学的情報読取装置
28…受光センサ(受光手段)
35…メモリ
40…制御回路(取込手段,デコード手段,検出手段,領域補正手段,セル長補正手段)
Lo…基準辺

【特許請求の範囲】
【請求項1】
矩形状の暗色セルおよび明色セルが二次元的に複数配列してなる矩形状の二次元コードを光学的に読み取る光学的情報読取装置であって、
前記二次元コードからの反射光を受光可能な受光素子が二次元的に配列されて構成される受光手段と、
前記受光手段から出力される画像情報をローリングシャッタ方式で取り込む取込手段と、
前記取込手段により取り込まれた画像情報に含まれる前記二次元コードをデコード可能なデコード手段と、
前記画像情報のうち前記二次元コードに相当するコード領域であって前記暗色セルおよび前記明色セルのいずれかに相当する複数のセル領域が互いに隣接して構成されるコード領域に対して、その外形形状を検出する検出手段と、
前記検出手段により検出された前記外形形状の外縁を構成する四辺のうち前記取込手段に先に取り込まれる一辺を基準辺とするとき、この基準辺に隣接する行の前記セル領域を基準に、このセル領域に反基準辺側から隣接するセル領域について、前記コード領域に占める領域を予測してこの予測された領域から当該セル領域が前記暗色セルおよび前記明色セルのいずれに相当するかを推定するとともに、他の行のセル領域について、基準辺側から隣接するセル領域を基準に、前記コード領域に占める領域を予測してこの予測された領域から当該セル領域が前記暗色セルおよび前記明色セルのいずれに相当するかを、前記基準辺に近い行のセル領域から順に推定することで、前記コード領域を補正する領域補正手段と、
を備え、
前記デコード手段は、前記画像情報に含まれる二次元コードと、前記領域補正手段により前記コード領域が補正された二次元コードとのいずれかについてデコードすることを特徴とする光学的情報読取装置。
【請求項2】
前記基準辺に直交する列方向の前記セル領域の長さを列方向長さとするとき、前記基準辺に隣接する行の前記セル領域の前記列方向長さに等しくなるように、他の行のセル領域の前記列方向長さを補正するセル長補正手段を備え、
前記デコード手段は、前記画像情報に含まれる二次元コードと、前記セル長補正手段により前記列方向長さが補正され、さらに前記領域補正手段により前記コード領域が補正された二次元コードとのいずれかについて、デコードすることを特徴とする請求項1に記載の光学的情報読取装置。
【請求項3】
前記領域補正手段は、
補正対象のセル領域について、基準辺側から隣接するセル領域の四隅を通る線のうち前記基準辺に直交する列方向に沿う2つの線を用いて囲まれる領域を基準に、当該セル領域が前記コード領域に占める領域を予測して、この予測された領域から当該セル領域が前記暗色セルおよび前記明色セルのいずれに相当するか推定して補正することを特徴とする請求項1または2に記載の光学的情報読取装置。
【請求項4】
前記予測された領域について、前記暗色セルに相当する領域が占める割合と前記明色セルに相当する領域が占める割合との差が所定の閾値よりも小さくなる場合には、このセル領域を含む前記コード領域に対する補正を無効とすることを特徴とする請求項1〜3のいずれか一項に記載の光学的情報読取装置。
【請求項5】
前記受光手段は、CMOSセンサであることを特徴とする請求項1〜4のいずれか一項に記載の光学的情報読取装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−194853(P2012−194853A)
【公開日】平成24年10月11日(2012.10.11)
【国際特許分類】
【出願番号】特願2011−59080(P2011−59080)
【出願日】平成23年3月17日(2011.3.17)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【Fターム(参考)】