(57)【特許請求の範囲】
【請求項１】
２次元コードをカメラで撮像して得た画像データを格納する画像データ格納部と、２次元コードをカメラで撮像して得た画像データを格納するモデルパターン格納部と、前記モデルパターンとして予め設定したファインダパターンを格納するモデルパターン格納部と、前記モデルパターンと前記画像データとを照合し、その相関度合に基づいてファインダパターンを検出するファインダパターン検出手段と、前記ファインダパターンの検出に基づいて前記２次コードの内容を読み取るコード読取り手段とを備えた２次元コード読取装置であって、
前記画像データ格納部に格納された画像に対し、２次元コードのファインダパターンの位置を特定するための少なくとも始点と終点を含む位置情報の入力を行う入力手段と、
前記入力手段により入力された位置情報に基づいて画像を抽出する領域を定める領域確定手段と、
さらに、前記領域確定手段により定められた領域の少なくとも３角部を、モデルパターンとして抽出して前記モデルパターン格納部に格納する角部抽出手段と、
を備えたことを特徴とする２次元コード読取装置。
【請求項２】
前記角部抽出手段は、所定数の余白部とともに前記モデルパターン格納部に格納することを特徴とする請求項１に記載の２次元コード読取装置。
【請求項３】
前記モデルパターン格納部に格納されたモデルパターンの画像を表示する表示手段を、さらに備えたことを特徴とする請求項１に記載の２次元コード読取装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、２進コードで表わされるデータをセル化して２次元のマトリクス上にパターンとして配置した２次元コードを読み取るための２次元コード読取装置に関する。
【０００２】
【従来の技術】
マトリクス式の２次元コードとして、ＱＲコード、データマトリクスコード等が知られている。これらの２次元コードには、ファインダパターン（位置検出パターン又は位置決め用シンボル）なる特徴部分がある。
【０００３】
図１８はＱＲコードの一例を示す図である。ＱＲコードは、特定寸法比率の正方形を組み合わせたファインダパターンを３個有する。ＱＲコードの内部は、ｎ×ｎの正方形の升目（これをセルという）に区切られている。ファインダパターンは、例えば、一辺の長さが７セルに相当する黒い正方形と、一辺の長さが５セルに相当する白い正方形と、一辺の長さが３セルに相当する黒い正方形とを同心状に組み合わせてなる。
【０００４】
図１９はデータマトリクスコードの一例を示す図である。データマトリクスコードは、ファインダパターンとしてＬ字を形成する２辺と、その対角に位置し白黒が交互に並ぶタイミングパターンとを有する。
【０００５】
一般的に２次元コードの読み取りは次のようにしてなされている。（１）画像メモリ上でファインダパターンを検出する。（２）セルの部分の白黒を認識する。（３）白を０、黒を１のデータに並べ替える。（４）デコード処理を行ない、文字情報への変換を行なう。
【０００６】
図２０は従来のＱＲコード読み取りのフローチャートである。ステップＳ１で、画像メモリの画素値の白と黒の中間値をグローバルしきい値とする。ステップＳ２で、画像メモリ内のＸ軸方向に対して、位置検出パターン（ファインダパターン）の比率の検出を行ない、位置検出パターンの外縁のポイントを記憶する。そして、画像メモリ内の隣接するピクセル線についてこれを繰り返す。次にステップＳ３で、画像メモリ内のＹ軸方向に対してステップＳ２と同様の処理を繰り返す。ステップＳ４で、Ｘ軸，Ｙ軸の検出結果から位置検出パターンの中心位置を求める。ステップＳ５で、他の２個の位置検出パターンの中心位置を求める。ステップＳ６で、３個の位置検出パターンの中心位置に基づいてシンボルの向きを求める。ステップＳ７で、データ部のセルをしきい値に基づいてそれらが明暗のいずれであるかを決める。暗の画素を１とし、明の画素を０とする。ステップＳ８で、データの解析処理を行ない、デコード処理を行なう。
【０００７】
なお、特許２８６７９０４号公報には、ファインダパターンを現す周波数特性（周波数成分比）を検出して、ファインダパターンの位置を検出するようにした２次元コード読取装置が開示されている。
【０００８】
データマトリクスコードのファインダパターンは一般的に次の方法で検出される。画像メモリ上の直線を検出し、Ｌ字を構成する候補を選出する。画像取り込み時にエッジを抽出し、エッジ抽出データを元に画像メモリからエッジコードを算出し、ラベリング処理を行なう。ラベリング処理されたデータに基づいて直線を検出する。
【０００９】
【発明が解決しようとする課題】
電子部品や液晶，ＰＤＰ等では２次元コードの印字スペースが極めて小さく、コードは小さく印字する必要がある。マーキングについては、対象物に直接、コードのマーキングを行なうダイレクトマーキングが行なわれるのが一般的である。マーキングの方法として次の２つの方法があるが、いずれも、コードの１つ１つのセルはドットで形成されることが多い。
（１）レーザマーキング  レーザ加工の持つ優れた特長（非接触、高自由度、高速精密加工）を活かして非加工物表面にレーザ光を照射し、加熱・溶接蒸発といった熱加工原理によりマーキングを行なう。ＩＣパッケージ、シリコンウェハ、液晶基板、高熱処理または洗浄処理を行なう基板・部材等にレーザマーキングが用いられる。
（２）露光方式によるマーキング  露光方式はレーザ方式と比較し、パーティクルが発生しない、より微細なマーキングが可能になるなどの特長がある。露光工程を有する半導体ウェハ、液晶パネル、カラーフィルタ等で露光方式のマーキングが用いられる。
【００１０】
ＱＲコード読み取りに際して、従来の読み取りは図２１に示すアルゴリズムで読み取りが行なわれる。カメラで撮像して得た画像データは、２次元コード読取装置に取り込まれて（ステップＳ１１）、メモリ上に展開される（ステップＳ１２）。ステップＳ１３では、コードの切り出しがなされる。このコードの切り出し（ステップＳ１３）は、カメラから取り込んだ画像データの中から必要なデータを抽出するプロセスであり、背景を含めて取り込んだ画像データから２次元コードの画像のみを切り出す。ステップＳ１４で、コードの位置、大きさ、傾きが検出され、ステップＳ１５で各セルの白黒が認識され、ステップＳ１６で誤り訂正がなされる。この誤り訂正（ステップＳ１６）では、データに誤りが存在した際に、データの訂正がなされる。そして、ステップＳ１７のデコード処理で、２値データから文字列への変換がなされる。
【００１１】
ＱＲコードの読み取りでは、３箇所のファインダパターンを検出することで、コードの位置、傾き、大きさを検出し、コードの切り出しがなされる。
【００１２】
２次元コードの読取りには、通常１セル５画素以上にコードを映し出すことが行われているが、１セル５画素程度に２次元コードを映した場合には、ファインダパターンが小さくなってファインダパターンの登録作業が難しいという課題がある。
【００１３】
本発明はこのような課題を解決するためになされたもので、その目的は２次元コードの画像データからファインダパターンを自動的に検出し、検出したファインダパターンに基づいて画像データから２次元コードを高速に読み取ることができる利便性の高い２次元コード読取装置を提供することにある。
【００１４】
【課題を解決するための手段】
前記課題を解決するため本発明に係る２次元コード読取装置は、２次元コードをカメラで撮像して得た画像データを格納する画像データ格納部と、２次元コードをカメラで撮像して得た画像データを格納するモデルパターン格納部と、モデルパターンとして予め設定したファインダパターンを格納するモデルパターン格納部と、前記モデルパターンと前記画像データとを照合し、その相関度合に基づいてファインダパターンを検出するファインダパターン検出手段と、前記ファインダパターンの検出に基づいて前記２次コードの内容を読み取るコード読取り手段とを備えた２次元コード読取装置であって、前記画像データ格納部に格納された画像に対し、２次元コードのファインダパターンの位置を特定するための少なくとも始点と終点を含む位置情報の入力をユーザが行う入力手段と、前記入力手段により入力された位置情報に基づいて画像を抽出する領域を定める領域確定手段と、さらに、前記領域確定手段により定められた領域の少なくとも３角部を、モデルパターンとして抽出して前記モデルパターン格納部に格納する角部抽出手段とを備えたことを特徴とし、また、前記角部抽出手段は、所定数の余白部と共に前記モデルパターン格納部に格納することを特徴とするとともに、さらに、前記モデルパターン格納部に格納されたモデルパターンの画像を表示する表示手段を、備えたことを特徴とするものである。
【００１５】
また、本発明に係るファインダパターン検出手段は、２次元コードであるＱＲ（Quick Response）コードの１：１：３：１：１という比率のファインダパターンを検出することを特徴とする。
【００１６】
さらに、本発明に係るファインダパターン検出手段は、２次元コードであるデータマトリクス（Data Matrix）のＬ字型パターンのファインダパターンを検出することを特徴とする。
【００１７】
本発明に係る２次元コード読取装置は、撮像した画像データの中からＱＲ（Quick Response）コードを形成する白黒（または、明暗）パターンの幅の１：１：３：１：１という比率、またはデータマトリクス（Data Matrix）の黒（または、暗）パターンのＬ字型パターンなど、２次元コードのファインダパターンの特徴点を画像処理で自動的に検出するファインダパターン検出手段を備えたので、検出したファインダパターンに基づいて画像データの２次元コードを読み取るので、２次元コードのファインダパターンの検出作業を効率的に行なうことができ、利便性の向上を図ることができる。
【００１８】
また、本発明に係る２次元コード読取装置は、２次元コードをカメラで撮像して得た画像データを格納する画像データ格納部と、画像データ格納部に格納された画像データの中から２次元コードのファインダパターンの特徴点を画像処理で自動的に検出するファインダパターン検出手段と、ファインダパターン検出手段で検出したファインダパターンを自動的に登録するファインダパターン登録手段と、ファインダパターン登録手段に登録されたファインダパターンに基づいて画像データ格納部に格納された画像データの２次元コードを読み取るコード読取装置とを備えたことを特徴とする。
【００１９】
さらに、本発明に係るファインダパターン検出手段は、２次元コードであるＱＲ（Quick Response）コードの１：１：３：１：１という比率のファインダパターンを検出することを特徴とする。
【００２０】
また、本発明に係るファインダパターン検出手段は、２次元コードであるデータマトリクス（Data Matrix）のＬ字型パターンのファインダパターンを検出することを特徴とする。
【００２１】
本発明に係る２次元コード読取装置は、撮像した画像データの中からＱＲ（Quick Response）コード形成する白黒（または、明暗）パターンの幅の１：１：３：１：１という比率、またはデータマトリクス（Data Matrix）の黒（または、暗）パターンのＬ字型パターンなど、２次元コードのファインダパターンの特徴点を画像処理で自動的に検出し、検出したファインダパターンを自動登録した後、自動登録したファインダパターンに基づいて画像データの２次元コードを読み取るので、２次元コードの読取りの効率化ならびに高速化を図ることができる。
【００２２】
さらに、本発明に係るファインダパターン検出手段は、画像データを所定の画素間隔で間引いたファインダパターンを生成するとともに、間引いたファインダパターンに基づいて画像データの２次元コードを読み取ることを特徴とする。
【００２３】
また、本発明に係るファインダパターン検出手段は、１つのファインダパターンを検出すると、予め設定したファインダパターン配置情報を参照して他のファインダパターンが存在すべき位置を推測することを特徴とする。
【００２４】
本発明に係るファインダパターン検出手段は、画像データを所定の画素間隔で間引いたファインダパターンを生成したり、１つのファインダパターンを検出すると、他のファインダパターンが存在すべき位置を推測することができるので、より高速に画像データの中から２次元コードを特定し、読み取ることができる。
【００２５】
さらに、本発明に係る２次元コード読取装置は、２次元コードをカメラで撮像して得た画像データを格納する画像データ格納部と、モデルパターンとして予め設定したファインダパターンを格納するモデルパターン格納部と、モデルパターンと画像データとを照合し、その相関度合に基づいてファインダパターンを検出するファインダパターン検出手段と、ファインダパターンの検出に基づいて２次元コードの内容を読み取るコード読取手段とを備えたことを特徴とする。
【００２６】
また、本発明に係る２次元コード読取装置は、２次元コードをカメラで撮像して得た画像データの中からファインダパターンを検出し、検出したファインダパターンをモデルパターンとして登録するモデルパターン登録手段を備えたことを特徴とする。
【００２７】
さらに、本発明に係る２次元コード読取装置は、２次元コードのモデルパターンが、ＱＲ（Quick Response）コードのファインダパターンであることを特徴とする。
【００２８】
また、本発明に係る２次元コード読取装置は、２次元コードのモデルパターンが、データマトリクス（Data Matrix）のＬ字型パターンであることを特徴とする。
【００２９】
本発明に係る２次元コード読取装置は、予め登録されたＱＲ（Quick Response）コードパターンまたはデータマトリクス（Data Matrix）のＬ字型パターンなど、２次元コードのファインダパターンをモデルパターンとして登録し、モデルパターンと画像データとを照合し、その相関度合に基づいてファインダパターンを検出して画像データの２次元コードを読み取るので、２次元コードがダイレクトマーキングで形成されている場合でも、２次元コードを確実に読み取ることができる。また、ファインダパターンに欠けや汚れがあってもファインダパターンを的確に検出することができる。
【００３０】
【発明の実施の形態】
以下、本発明の実施の形態を添付図面に基づいて説明する。図１は本発明に係る２次元コード読取装置のシステム構成図である。
【００３１】
本発明に係る２次元コード読取装置は、コントローラ１と、カメラ２と、ビデオモニタ３と、パソコン／ＰＬＣ４と、コンソールユニット５と、ＰＬＣ／タイミングＳＷ６とからなる。
【００３２】
コントローラ１は、カメラＩ／Ｆ１１と、専用画像処理ＡＳＩＣ１２と、フレームバッファ１３と、モニタＩ／Ｆ１４と、グラフィックメモリ１５と、第１の画像メモリ１６と、第２の画像メモリ１７と、モデルメモリ１８と、ＣＰＵバス１９と、ＣＰＵ２０と、ＲＳ−２３２ＣＩ／Ｆ２１と、コンソールＩ／Ｆ２２と、パラレルＩ／ＯＩ／Ｆ２３と、ＦＬＡＳＨ−ＲＯＭ２４と、ＤＲＡＭ２５とからなる。
【００３３】
専用画像処理ＡＳＩＣ１２、ＣＰＵ２０、コンソールＩ／Ｆ２２、パラレルＩ／ＯＩ／Ｆ２３、ＦＬＡＳＨ−ＲＯＭ２４及びＤＲＡＭ２５は、ＣＰＵバス１９を介してそれぞれ接続されている。
【００３４】
カメラ２で撮像した画像は、カメラＩ／Ｆ１１を介して専用画像処理ＡＳＩＣ１２に供給される。専用画像処理ＡＳＩＣ１２及びＣＰＵ２０は、カメラＩ／Ｆ１１を介してカメラ２で撮像した画像の取り込みを制御する。専用画像処理ＡＳＩＣ１２には、グラフィックメモリ１５、各画像メモリ１６，１７及びモデルメモリがそれぞれ接続されている。また、専用画像処理ＡＳＩＣ１２には、フレームバッファ１３が接続されており、このフレームバッファ１３に格納された画像データはモニタＩ／Ｆ１４を介してビデオモニタ３へ供給される。これにより、モニタ画像をフレームバッファ１３に書き込むことで、ビデオモニタ３にモニタ画像を表示させることができる。
【００３５】
ＣＰＵ２０とパソコン／ＰＬＣ４とはＲＳ−２３２ＣＩ／Ｆ２１を介して接続している。したがって、ＣＰＵ２０とパソコン／ＰＬＣ４とはシリアルデータ通信が可能である。コンソールユニット５は、コンソールＩ／Ｆ２２を介してＣＰＵバス１９に接続されている。コンソールＩ／Ｆ２２と専用画像処理ＡＳＩＣ１２とは専用の信号線で接続されている。ＰＬＣ／タイミングＳＷ６はパラレルＩ／ＯＩ／Ｆ２３を介してＣＰＵバス１９に接続されている。ＰＬＣ／タイミングＳＷ６と専用画像処理ＡＳＩＣ１２とは専用の信号線で接続されている。
【００３６】
なお、本実施の形態では、専用画像処理ＡＳＩＣ１２によってファインダパターン検出手段、コード読取手段、ファインダパターン登録手段及びモデルパターン登録手段を構成している。また、各画像メモリ１６，１７によって画像データ格納部を構成し、モデルメモリ１８によってファインダパターン記憶手段及びモデルパターン格納部を構成している。
【００３７】
ファインダパターン検出手段は、画像データ格納部に格納された画像データの中から２次元コードのファインダパターンの特徴点を画像処理で自動的に検出する。また、ファインダパターン検出手段は、画像データを所定の画素間隔で間引いたファインダパターンを生成する。さらに、ファインダパターン検出手段は、１つのファインダパターンを検出すると、予め設定したファインダパターン配置情報を参照して他のファインダパターンが存在すべき位置を推測する。
【００３８】
ＱＲ（Quick Response）コードのファインダパターンは、白黒（または、明暗）パターンの幅の１：１：３：１：１という比率から検出する。また、ＱＲ（Quick Response）コードがレーザマーキング等で形成され、●状のドットパターンの場合には、前処理として●状のドットの画像に膨張処理を施してドットパターンを平滑化した後、ファインダパターンを白黒（または、明暗）パターンの幅の１：１：３：１：１という比率から検出する。
【００３９】
データマトリクス（Data Matrix）のファインダパターンは、黒（または、暗）パターンのＬ字型パターンから検出する。また、データマトリクス（Data Matrix）がレーザマーキング等で形成され、●状のドットパターンの場合には、前処理として●状のドットの画像に膨張処理を施してドットパターンを平滑化した後、ファインダパターンを黒（または、暗）パターンのＬ字型パターンから検出する。なお、データマトリクス（Data Matrix）のファインダパターン検出は、直接Ｌ字をサーチせずに、Ｌ字の縦一辺（Ｉ）または横一辺（−）をサーチすることにより、Ｌ字型ファインダパターンの存在を推定することもできる。
【００４０】
ファインダパターン登録手段は、ファインダパターン検出手段で検出したファインダパターンを自動的に登録する。
【００４１】
コード読取手段は、ファインダパターン記憶手段に記憶されたファインダパターンに基づいて画像データ格納部に格納された画像データの２次元コードを読み取る。また、コード読取手段は、ファインダパターン登録手段に登録されたファインダパターンに基づいて画像データ格納部に格納された画像データの２次元コードを読み取る。
【００４２】
モデルパターン登録手段は、２次元コードをカメラで撮像して得た画像データの中からファインダパターンを検出し、検出したファインダパターンをモデルパターンとして登録する。
【００４３】
図２は本発明に係る２次元コード読取手段におけるコード切り出し動作（パターンサーチ）を示す図である。モデルメモリ１８には、ドットで形成されたファインダパターンをモデルとして登録している。一方、ＱＲコードをカメラ２で撮像して得られた画像データは、画像メモリ１６に格納される。そして、専用画像処理ＡＳＩＣ１２（ファインダパターン検出手段）は、カメラ２から取り込まれた画像とモデル画像とを照合して、入力画像からＱＲコードに含まれる３つのファインダパターンを検出する。
【００４４】
従来の１：１：３：１：１という定型のパターンを探すのではなく、予め対象となるコードのファインダパターンをモデルとして登録しておくため、マーキング方式の特徴に左右されずに、また、ドットの欠け等にも対応することができ、ファインダパターンを高精度で検出でき、ダイレクトマーキングされたＱＲコードの読取性能を大幅に向上させることができる。
【００４５】
また、実施の形態に係る２次元コード読取手段では、読取エラー発生の際のユーザ側での原因究明の対策として、次の４つの機能を搭載している。
【００４６】
（１）セル認識位置表示機能：２次元コードの読取において、白と黒のセルの認識の際、黒と認識した点をモニタ表示する機能である。この機能により、コードに不具合がある場合にも、コードの白黒認識点はビデオモニタ３を見て確認することができる。
【００４７】
（２）セル認識照合機能：ある１つのコードに関するセルの白黒情報を基準データとして登録しておき、読取の際に一致判定し、モニタ出力を行なう機能である。この機能により、同じコードを読み取る場合、汚れたり欠けたりしている部分をチェックすることができ、マーキングの安定性を解析できる。
【００４８】
（３）画像解析機能：読取を行なった画像データに対する解析機能である。下記の３つの機能があり、ユーザ側にて読取エラーの原因解析をすることができる。
（ａ）ラインブライト：水平、垂直方向の任意の１ライン上の濃度分布がグラフ表示される。
（ｂ）画素値表示：特定エリアの濃度情報が０〜２５５の数値で表示される。
（ｃ）画像拡大：特定エリアの画像が拡大表示される。
【００４９】
（４）ＮＧ画像保存機能：読取エラーの画面を２４面まで画像で保存することが可能であり、どのような読取エラーが発生したかを保存画像で確認することができる。
【００５０】
以上の４機能により、読取エラーが生じた場合にも、ユーザ側にて原因の解析と対策を行なうことが可能である。
【００５１】
２次元コードにはリードソロモン符号による誤り訂正が使用されている。このリードソロモン符号による誤り訂正では、元データにその一部が破損しても復元できるような符号理論を駆使した誤り訂正コードを加えて、データ領域に配置している。これにより、コードの位置が汚れたり欠けたりしても、元のデータを復元できる。
【００５２】
本実施の形態に係る２次元コード読取手段では、図３に示す誤り訂正アルゴリズムを用いることで、誤り訂正の情報も出力できるようにしている。
▲１▼：２次元コードから得られたデータを元にシンドロームの演算を行なう。ここで、シンドロームとは、誤りの有無を検出する演算子であり、誤りがない場合には全てのシンドローム値が０の値をもつ。
▲２▼：誤り位置多項式用の変数を求める。
▲３▼：誤り位置多項式を解くことにより、誤り位置が検出される。
▲４▼：誤り位置に対応する誤りの値を求める。
▲５▼：誤りの位置からそれに対応する値を差し引くことで誤りが訂正される。
【００５３】
次に本発明に係る２次元コード読取手段の読取操作方法を説明する。図４〜図８は、ＱＲコードの読取操作方法を示す図である。なお、図４〜図８は、モニタ画面の表示内容を示している。図４（ａ）は確認状態の画面を示している。図４（ｂ）は設定状態の指定する画面を示している。図４（ｃ）は設定状態で画像入力モードを指定する画面を示している。図４（ｄ）は画像入力モードで画像前処理を設定する画面を示している。
【００５４】
図５（ａ）は画像前処理で平滑度合を設定する画面を示している。なお、画像前処理では、平滑化弱、平滑化強、エッジ強調の何れかを選択指定できる。図５（ｂ）は図４（ｃ）に示した状態に戻った状態を示している。図５（ｃ）は読取ＱＲパターンを指定する画面を示している。図５（ｂ）はパターン設定を指定する画面を示している。
【００５５】
図６（ａ）はモデル登録を指定する画面である。図６（ｂ）はＱＲコードのバージョンを設定する画面である。図６（ｃ）及び図６（ｄ）はファインダパターンの領域を設定する画面である。図６（ｃ）でファインダパターン（ＦＰ）を取り囲む始点を選択し、図６（ｄ）で終点を選択する。
【００５６】
図７（ａ）はモデル参照を指定する画面であり、図７（ｂ）はモデル参照の画面である。このモデル参照の画面で登録したモデル（ファインダパターン）を確認できる。図７（ｃ）は図４（ａ）に示した確認状態の画面である。図７（ｄ）は読取画面である。ＴＲＩＧ入力でファインダパターンの検出がなされ、コードの読取が行なわれる。画面中のＯＫの表示は、コードの読取が正常になされたことを示している。また、画面中の２４７ｍｓの表示は、コードの読取に要した時間を示している。図８（ａ）に示す画面で読取設定を設定すると、図８（ｂ）に示す画面で各種読取パラメータを変更できる。
【００５７】
図９及び図１０はＤＭ（データマトリクス）コードの読取操作方法を示す図である。図９（ａ）はＤＭパターン設定でモデル登録を指定する画面であり、モデル登録を指定すると、図９（ｂ）に示す画面でバージョンの指定を行なう。次に、図９（ｃ）でファインダパターンを取り囲む始点を選択し、図９（ｄ）でファインダパターンの終点を選択する。これにより、モデルの登録がなされる。
【００５８】
図１０（ａ）でモデル参照を指定すると、図１０（ｂ）に示すように、登録されたモデルを確認できる。ＤＭ（データマトリクス）コードでは、Ｌ字パターンの各角部である３点がそれぞれモデルとして登録される。そして、図１０（ｃ）に示す確認画面に戻った状態で、図１０（ｄ）に示すように、ＴＲＩＧ入力を行なうとモデルパターンが検出され、ＤＭ（データマトリクス）コードの読取がなされる。
【００５９】
図１１はＱＲコードの読取手順を示す図である。画像が取り込まれると、３箇所のファインダパターンがそれぞれ検出され、各ファインダパターンに基づいてＱＲコードの切り出しがなされる。そして、切り出されたＱＲコードの傾き、大きさが認識され、その認識に基づいて各セルの認識がなされる。次に、各セルの白，黒が認識され、デコード処理によって２進数で表記された内容の復号がなされ、ＲＳ２３２Ｃ等のシリアルインタフェースを介して読み取りデータがパソコン等の上位装置へ供給される。
【００６０】
図１２はデータマトリクスコードの読取手順を示す図である。画像が取り込まれると、Ｌ字の切り出しパターンが検索され、さらにＬ字の対角の白黒交互パターンが認識される。そして、これらの認識結果から傾き，大きさが認識され、その認識に基づいて各セルの認識がなされる。次に、各セルの白，黒が認識され、デコード処理によって２進数で表記された内容の復号がなされ、ＲＳ２３２Ｃ等のシリアルインタフェースを介して読み取りデータがパソコン等の上位装置へ供給される。
【００６１】
図１３は２値化方式と微分方式の比較を示す図である。本実施の形態に係る２次元コード読取手段は、グラデーションに強くまた照明等による変動に強い微分方式を採用している。
【００６２】
図１４は微分方式によるＱＲコードの読取方法を示す図である。ＱＲコードの読取では、「設定」濃淡値で設定された値を用いて、ファインダパターンを検出する。これは、画素間の差（微分値）が濃淡値以上変化した際に、白と黒が反転したと認識する方法である。読取濃淡値リトライをＯＮにすることにより、ファインダパターンの検出失敗の際に、濃淡値を変化させてリトライする。この機能により、ワークの経時変化に対しても対応可能である。
【００６３】
図１５はデータ部の白黒認識動作を示す図である。スレッシュ値は、ファインダパターンが検出された後、データ部のセルの白黒を認識する際に用いる。したがって、３点のファインダパターンが検出されていなければ、スレッシュ値は使用されない。
【００６４】
図１６は相関サーチ自動登録モデル例を示す図である。ＱＲコードでは、３箇所にあるファインダパターンの中からいずれか１つがモデルとして自動登録される。データマトリクスコードでは、Ｌ字パターンの３角部がそれぞれモデルとして自動登録される。ここで、各角部は所定セル数の白部とともに登録される。ベリコードでは、黒の四角枠の各角部がそれぞれモデルとして自動登録される。ここで、各角部は所定セル数の白部とともに登録される。
【００６５】
図１７はＱＲコードの相関サーチ方法を示す図である。ファインダパターンが１点検出された場合には、検出されたファインダパターンＰの位置に対して他の２点のファインダパターンが存在する可能性のある位置Ａ，Ｂ，Ｃ，Ｄのそれぞれに対してファインダパターンの検出を行なう。
【００６６】
ファインダパターンが２点検出された場合には、検出された２点のファインダパターンＰ，Ｑに対して他の１点のファインダパターンが存在する可能性のある位置Ａ’，Ｂ’，Ｃ’，Ｄ’のそれぞれに対してファインダパターンの検出を行なう。
【００６７】
このように、先に検出されたファインダパターンの位置に基づいて、他のファインダパターンの検索範囲を限定することで、全てのファインダパターンを検出するまでの時間を短縮できる。
【００６８】
２次元コードの読み取りには、１セルが５画素以上になるように撮像するのが通常である。また、大きく写した方がコードをより確実に読み取ることができる。これに対して、１セルが５画素程度に２次元コードを撮像した際には、モデルとなるファインダパターンが小さくなり、モデルの登録作業が難しいという問題が生ずる。また、モデルの登録にもノウハウがあり、マージン（余白部）を含ませることが必要である。
【００６９】
本発明に係る２次元コード読取手段は、モデルとなるファインダパターンの自動登録機能を備えているので、画像メモリ上の２次元コードのファインダパターンの位置検出を行ない、相関サーチのモデルの登録位置を決定し、モデル領域を自動的に登録することができる。
【００７０】
さらに、本発明に係る２次元コード読取手段は、画像データを所定の画素間隔で間引いて登録画像を生成し、この登録画像とモデルパターンとを照合しその相関度合に基づいてファインダパターンを検出することができるので、ファインダパターンの検索時間を短縮できる。
【００７１】
【発明の効果】
以上説明したように、本発明に係る２次元コード読取装置は、撮像した画像データの中からＱＲ（Quick Response）コードの１：１：３：１：１という比率またはデータマトリクス（Data Matrix）のＬ字型パターンなど、２次元コードのファインダパターンの特徴点を画像処理で自動的に検出し、検出したファインダパターンに基づいて画像データの２次元コードを読み取るので、２次元コードのファインダパターンの検出作業を効率的に行なうことができ、利便性の向上を図ることができる。
【００７２】
また、本発明に係る２次元コード読取装置は、撮像した画像データの中からＱＲ（Quick Response）コードの１：１：３：１：１という比率またはデータマトリクス（Data Matrix）のＬ字型パターンなど、２次元コードのファインダパターンの特徴点を画像処理で自動的に検出し、検出したファインダパターンを自動登録した後、自動登録したファインダパターンに基づいて画像データの２次元コードを読み取るので、２次元コードの読取りの効率化ならびに高速化を図ることができる。
【００７３】
さらに、本発明に係るファインダパターン検出手段は、画像データを所定の画素間隔で間引いたファインダパターンを生成したり、１つのファインダパターンを検出すると、他のファインダパターンが存在すべき位置を推測することができるので、より高速に画像データの中から２次元コードを特定し、読み取ることができる。
【００７４】
また、本発明に係る２次元コード読取装置は、予め登録されたＱＲ（Quick Response）コードパターンまたはデータマトリクス（Data Matrix）のＬ字型パターンなど、２次元コードのファインダパターンをモデルパターンとして登録し、モデルパターンと画像データとを照合し、その相関度合に基づいてファインダパターンを検出して画像データの２次元コードを読み取るので、２次元コードがダイレクトマーキングで形成されている場合でも、２次元コードを確実に読み取ることができる。また、ファインダパターンに欠けや汚れがあってもファインダパターンを的確に検出することができる。
【図面の簡単な説明】
【図１】本発明に係る２次元コード読取装置のシステム構成図
【図２】本発明に係る２次元コード読取装置におけるコード切り出し動作（パターンサーチ）を示す図
【図３】リードソロモン誤り訂正アルゴリズムのフローチャート
【図４】ＱＲコードの読取操作方法を示す図（その１）
【図５】ＱＲコードの読取操作方法を示す図（その２）
【図６】ＱＲコードの読取操作方法を示す図（その３）
【図７】ＱＲコードの読取操作方法を示す図（その４）
【図８】ＱＲコードの読取操作方法を示す図（その５）
【図９】ＤＭ（データマトリクス）コードの読取操作方法を示す図（その１）
【図１０】ＤＭ（データマトリクス）コードの読取操作方法を示す図（その２）
【図１１】ＱＲコードの読取手順を示す図
【図１２】データマトリクスコードの読取手順を示す図
【図１３】２値化方式と微分方式の比較を示す図
【図１４】微分方式によるＱＲコードの読取方法を示す図
【図１５】データ部の白黒認識動作を示す図
【図１６】相関サーチ自動登録モデル例を示す図
【図１７】ＱＲコードの相関サーチ方法を示す図
【図１８】ＱＲコードの一例を示す図
【図１９】データマトリクスコードの一例を示す図
【図２０】従来のＱＲコード読み取りのフローチャート
【図２１】従来のＱＲコード読み取りのアルゴリズムを示す図
【符号の説明】
１  コントローラ
２  カメラ
３  ビデオモニタ
４  パソコン／ＰＬＣ
５  コンソールユニット
６  ＰＬＣ／タイミングＳＷ
１１  カメラＩ／Ｆ
１２  専用画像処理ＡＳＩＣ
１３  フレームバッファ
１４モニタＩ／Ｆ
１５  グラフィックメモリ
１６，１７  画像メモリ
１８  モデルメモリ
２０  ＣＰＵ
【図１】
0004013027.tif 000002
【図２】
0004013027.tif 000003
【図３】
0004013027.tif 000004
【図４】
0004013027.tif 000005
【図５】
0004013027.tif 000006
【図６】
0004013027.tif 000007
【図７】
0004013027.tif 000008
【図８】
0004013027.tif 000009
【図９】
0004013027.tif 000010
【図１０】
0004013027.tif 000011
【図１１】
0004013027.tif 000012
【図１２】
0004013027.tif 000013
【図１３】
0004013027.tif 000014
【図１４】
0004013027.tif 000015
【図１５】
0004013027.tif 000016
【図１６】
0004013027.tif 000017
【図１７】
0004013027.tif 000018
【図１８】
0004013027.tif 000019
【図１９】
0004013027.tif 000020
【図２０】
0004013027.tif 000021
【図２１】
0004013027.tif 000022