説明

QRコード読取装置

【課題】 通常では読み取り不可能なQRコードを、高い確率でQRコードを読み取ることを可能とする装置。
【解決手段】 2次元コードシンボルQRコードをデジタルカメラで撮影して得た画像データを格納する画像データ格納部と、前記画像データの傾きを計算する計算手段と、前記計算手段から得られた計算結果から前記画像データの傾きを正対に修正する修正手段を有し、
前記修正手段によって修正された正対の画像データにファインダパターンを付加し、前記ファインダパターンを付加した画像データの情報を読み取るデコード処理手段を備えたことを特徴とするQRコード読取装置。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2進コードで表わされるデータをセル化して2次元のマトリックス上にパターンとして配置した2次元コードであるQRコードを読み取るためのQRコード読取装置に関する。
【背景技術】
【0002】
マトリックス式の2次元コードとしては様々なものが提案されているが、代表的なものとしてQRコードが知られている。
QRコードは株式会社デンソーによって提案され、JIS X 0510及びISO/IEC18004で規格化され、標題が二次元コードシンボル−QRコード(以下、単に「QRコード」という)2次元バーコードであって、特開平07−254034号公報、特開平10−214317号公報、特開平11−328301号公報等に詳細に開示されている。
【0003】
【特許文献1】特開平07−254034号公報
【特許文献2】特開平10−214317号公報
【特許文献3】特開平11−328301号公報
【0004】
このQRコードは、パターンを画像処理で認識するため特殊なファインダパターン(切り出しシンボル)を設けて360°全方向の読み取りと高速読み取りを可能にしており、 通常次のようにして読み取りがなされる。
(1)雑誌などに印刷されたQRコードをデジタルカメラで撮影する。
(2)撮影した画像を画像メモリ上に展開する。
(3)画像メモリの画素値の白と黒の中間値をグローバルしきい値とする。
(4)データ部のセルをしきい値に基づいてそれらが白黒のいずれであるかを決める。白を0、黒を1のデータと認識する。
(5)画像メモリ内のファインダパターンの比率の検出を行ないファインダパターンの外縁のポイントを記憶する。そして、画像メモリ内の隣接するピクセル線についてこれを繰り返す。
(6)検出結果からファインダパターンの中心位置を求める。
(7)他の2個のファインダパターンの中心位置を求める。
(8)3個のファインダパターンの中心位置に基づいてシンボルの向きを求める。
(9)誤り訂正を行なう。QRコードには誤補正機能があり、最大30%の情報がなくなっても復元できる特徴を有している。
(10)データの解析処理を行ない、デコード処理を行なう。
しかしながら、前記ファインダパターンが変形していたり、欠けていたり、色が薄いなどによって読み取り不可能な場合は、ファインダパターン以外の部分が正常に残っていてもデータを全く読み取ることができなかった。特に、QRコードをスタンプなどの印面として作成した場合、使用者の押印する力加減によって非常に色の薄いQRコードとなったり、非常に歪んだQRコードとなったりすることが多く、スタンプとしてQRコードを利用する際の大きな問題点となっていた。
【発明の開示】
【発明が解決しようとする課題】
【0005】
そこで、本発明はQRコードのファインダパターンが変形していたり、欠けていたり、色が薄いなどの原因によって通常では読み取り不可能な場合であっても、高い確率でQRコードを読み取ることを可能とする装置を提案するものである。
【課題を解決するための手段】
【0006】
2次元コードシンボルQRコードをデジタルカメラで撮影して得た画像データを格納する画像データ格納部と、前記画像データの傾きを計算する計算手段と、前記計算手段から得られた計算結果から前記画像データの傾きを正対に修正する修正手段を有し、
前記修正手段によって修正された正対の画像データにファインダパターンを付加し、前記ファインダパターンを付加した画像データの情報を読み取るデコード処理手段を備えたことを特徴とするQRコード読取装置。
また、前記修正手段によって修正された正対の画像データにファインダパターンを付加し、前記ファインダパターンを付加した画像データの情報を読み取るデコード処理を行ない、デコードできない場合は大きさの異なるファインダパターンをもう一度付加して再度デコード処理を行ない、デコードできるまで当該処理を繰り返すデコード処理手段を備えたことを特徴とする前記記載のQRコード読取装置。
【発明の効果】
【0007】
本発明に係るQRコード読取装置は、撮像した画像データの中からQRコードの1:1:3:1:1という比率のファインダパターンを強制的に付加することにより、そのファインダパターンに基づいて画像データを読み取るので、ファインダパターンが変形していたり、欠けていたり、色が薄いなどの原因によって通常では読み取り不可能な場合であっても、高い確率でQRコードを読み取ることが可能である。
特に、QRコードを印刷などではなく、浸透印等のスタンプなどの印面として作成した場合に使用者の押印する力加減によって生じる、非常に色の薄いQRコード、非常に滲んだQRコード、非常に歪んだQRコードなどの場合でも、高い確率で認識可能であり、極めて有用である。
【発明を実施するための最良の形態】
【0008】
以下、本発明の実施の形態を添付図面に基づいて説明する。図1は本発明に係るQRコード読取装置の構成図である。
本発明に係るQRコード読取装置は、CCDカメラ1と、制御部2とからなり、必要に応じてモニタ3や、他のパソコン4や、ネットワーク5などと接続されている。
前記制御部2は、制御部本体を構成するCPU(centralprocessing unit)、ROM(read only memory)、RAM(random access memory)、外部メモリ等から構成されている。
【0009】
CCDカメラ1で撮像した画像は制御部2に供給される。制御部2のCPUは、CCDカメラ1で撮像した画像の取り込みを制御する。制御部2にモニタ3が接続されている場合はモニタ3に撮像した画像を表示させることができる。制御部2にパソコン4が接続されている場合は撮像した画像を他の用途に利用することができる。制御部2にネットワーク5が接続されている場合は撮像した画像をネットワークを介して利用することができる。
【0010】
本実施の形態では、制御部2のROMやRAMによって計算手段、修正手段、デコード処理手段を構成している。また、制御部2の外部メモリによって画像データ格納部を構成している。また、実際の各手段等の実行処理は制御部2のCPUが行なう。
【0011】
図2は本実施の形態のQRコード読み取りのフローチャートである。
ステップS1で、CCDカメラで撮像して得たQRコードの画像データは、画像データ格納部に取り込まれる。
ステップS2で、前記画像データをメモリ上に展開する。
ステップS3で、前記画像データをデコードし、正常にデコードできれば処理を終了する。一方、デコードできずエラーとなった場合は、次のステップに進む。
ステップS4で、QRコードの頂点座標を認識取得する認識プログラムからなる認識手段を用いて、前記画像データの少なくとも2角の頂点座標(X1,Y1)(X2,Y2)を認識取得する。
ステップS5で、前記頂点座標から前記画像データの傾きを計算プログラムからなる計算手段を用いて計算する。
ステップS6で、制御部にあらかじめ設定しておいたX軸とそれに直交するY軸に、前記画像データの傾きが平行となるよう修正プログラムからなる修正手段を用いて、前記計算結果から前記画像データの傾きを正対に修正する。
ステップS7で、前記修正手段によって修正された正対の画像データの3角にファインダパターンを計3個付加する。この際、1:1:3:1:1の白黒のセル比からなるファインダパターンの大きさがあらかじめわかっている場合は、制御部2のROM又はRAMに記憶させた該当する大きさのファインダパターンを付加する。もしも、ファインダパターンの大きさがわかっていない場合は、制御部2のROM又はRAMに記憶させた初期値の大きさのファインダパターンを付加する。ここで、QRコードのファインダパターンはQRコードの3角に存在させることになっているが、この段階ではどの3角にファインダパターンを付加すれば良いかわからないので、任意の3角に付加すれば良い。
【0012】
ここからの処理は、通常のQRコードのデコード処理となる。
ステップS8で、ファインダパターンを付加した画像データの濃淡からしきい値を設定し、2値化をする。
ステップS9で、2値化された画像データがCPUの処理によって、外部メモリに格納される。
ステップS10で、この2値画像データから、ファインダパターンの位置座標が検出される。
ステップS11で、ファインダパターンが3個以上見つけられたか否かが判定される。ファインダパターンは3個存在しなければ次の処理に移れないが、前記ステップS7で3個のファインダパターンを付加しているので、問題なく次の処理に移れる。尚、ファインダパターンは3個でなく4個以上の場合もある。これはQRコード内の他の領域、あるいは2次元コード外の領域にファインダパターンと同じ周波数成分比のパターンが存在することを示す。
ステップS12で、ファインダパターンの存在しないもう一つの頂点を計算で求める。
ステップS13で、該当する個所にもう一つの頂点が存在するか否かを検出判定する。検出されなければ選択・組み合せが良くないことになり、ファインダパターンの他の組み合せが有るか否かが判定され、組み合せが有るうちはステップS12に戻り再度選択し直す。選択・組み合せを変えてもう一つの頂点の検出処理を繰り返しても、もう一つの頂点が検出されない場合は、再度ステップS7に戻る。ファインダパターンの大きさがわからずに制御部2のROM又はRAMに記憶させた初期値の大きさのファインダパターンを付加した場合は、ここでファインダパターンのサイズを変化させてステップS7を行なう。
【0013】
ステップS13にてもう一つの頂点が検出されれば、ステップS14で、誤り訂正がなされる。この誤り訂正では、データに誤りが存在した際に、データの訂正がなされる。
そして、ステップS15のデコード処理で、2値データから文字列への変換がなされる。
【0014】
以上説明したように、本発明に係るQRコード読取装置は、撮像した画像データの中からQRコードの1:1:3:1:1という比率のファインダパターンを強制的に付加することにより、そのファインダパターンに基づいて画像データを読み取るので、ファインダパターンが変形していたり、欠けていたり、色が薄いなどの原因によって通常では読み取り不可能な場合であっても、高い確率でQRコードを読み取ることが可能である。
特に、QRコードを印刷などではなく、浸透印等のスタンプなどの印面として作成した場合に使用者の押印する力加減によって生じる、非常に色の薄いQRコード、非常に滲んだQRコード、非常に歪んだQRコードなどの場合でも、高い確率で認識可能であり、極めて有用な発明である。
【図面の簡単な説明】
【0015】
【図1】本発明のシステム構成図
【図2】本発明のフローチャート
【図3】本発明のイメージ図
【符号の説明】
【0016】
1 CCDカメラ
2 制御部
3 モニタ
4 パソコン
5 ネットワーク

【特許請求の範囲】
【請求項1】
2次元コードシンボルQRコードをデジタルカメラで撮影して得た画像データを格納する画像データ格納部と、前記画像データの傾きを計算する計算手段と、前記計算手段から得られた計算結果から前記画像データの傾きを正対に修正する修正手段を有し、
前記修正手段によって修正された正対の画像データにファインダパターンを付加し、前記ファインダパターンを付加した画像データの情報を読み取るデコード処理手段を備えたことを特徴とするQRコード読取装置。
【請求項2】
前記修正手段によって修正された正対の画像データにファインダパターンを付加し、前記ファインダパターンを付加した画像データの情報を読み取るデコード処理を行ない、デコードできない場合は大きさの異なるファインダパターンをもう一度付加して再度デコード処理を行ない、デコードできるまで当該処理を繰り返すデコード処理手段を備えたことを特徴とする請求項1に記載のQRコード読取装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2007−299098(P2007−299098A)
【公開日】平成19年11月15日(2007.11.15)
【国際特許分類】
【出願番号】特願2006−124870(P2006−124870)
【出願日】平成18年4月28日(2006.4.28)
【出願人】(390017891)シヤチハタ株式会社 (162)
【Fターム(参考)】