(57)【特許請求の範囲】
【請求項１】
マトリックス型2次元コードの復号化方法であって、
復号化の対象となるマトリックス型2次元コード画像は、同じコードパターンユニットを複数組み合わせてなるマトリックス型2次元コード符号のリンクコードアレイであり、走査により取得した画像は単一の完全なコードパターンユニットを含む必要がなく、その復号化過程は、復号化しようとするマトリックス型2次元コード符号のリンクコードアレイの2値化画像を1つ取得し、属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることにより、1つの完全なコードパターンユニットを復元し、そして復号化することであり、
前記属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることは、各コード点及び位置決め点に座標値を与えることを指し、当該座標値が確定した各コード点及び位置決め点と、走査により取得した画像における各コード点及び位置決め点とは、同じ相対的な位置関係を有し、
各コード点及び位置決め点に座標値を与えることは、
各コード点が位置する行ラインと列ラインの方向をそれぞれ確定し、それぞれを行方向と列方向と称する工程と、
行方向と列方向の点ピッチをそれぞれ確定する工程と、
行方向での点ピッチ及び当該方向での投影波形で各コード点及び位置決め点の行座標を画定し、列方向での点ピッチ及び当該方向での投影波形で各コード点及び位置決め点の列座標を画定する工程と、を含み、
前記行方向と列方向を確定することは、
各コード点及び位置決め点の重心を確定するように、2値化画像を認識するA1工程と、
取得した画像における各コード点の重心を任意の1つの直線Lへ投影し、各投影点の数及び全ての投影点の数の平均値を計算して、且つ平均平方偏差σ0を計算するA2工程と、
取得した画像を所定の角度θ回転させ、工程A1の方法により平均平方偏差σ1を計算するA3工程と、
取得した画像を再び所定の角度θ回転させ、工程A1の方法により平均平方偏差σ2を計算し、このように、回転角度が累計で180°に達し最後の平均平方偏差σnを算出するまで繰り返すA4工程と、
平均平方偏差σ0〜σnのうちの最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、即ち行方向であるA5工程と、
前記行方向が対応する画像状態を±（90°±21°）回転させ、且つこの範囲内に平均平方偏差の最大値を取り、当該最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、即ち列方向であるA6工程と、を含む、マトリックス型2次元コードの復号化方法。
【請求項２】
マトリックス型2次元コードの復号化方法であって、
復号化の対象となるマトリックス型2次元コード画像は、同じコードパターンユニットを複数組み合わせてなるマトリックス型2次元コード符号のリンクコードアレイであり、走査により取得した画像は単一の完全なコードパターンユニットを含む必要がなく、その復号化過程は、復号化しようとするマトリックス型2次元コード符号のリンクコードアレイの2値化画像を1つ取得し、属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることにより、1つの完全なコードパターンユニットを復元し、そして復号化することであり、
前記属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることは、各コード点及び位置決め点に座標値を与えることを指し、当該座標値が確定した各コード点及び位置決め点と、走査により取得した画像における各コード点及び位置決め点とは、同じ相対的な位置関係を有し、
各コード点及び位置決め点に座標値を与えることは、
画像において行方向と列方向を確定する工程と、
前記行方向と列方向により、それぞれ1組の行平行線と1組の列平行線を画き、グリッドを形成し、行平行線と列平行線の間の距離はそれぞれコードパターンにおける列ラインと行ライン方向での点ピッチである工程と、
当該グリッドにおける各交差点の座標を計算することにより、画像における各コード点及び位置決め点に座標値を与える工程と、を含み、
前記行方向と列方向を確定することは、
各コード点及び位置決め点の重心を確定するように、2値化画像を認識するA1工程と、
取得した画像における各コード点の重心を任意の1つの直線Lへ投影し、各投影点の数及び全ての投影点の数の平均値を計算して、且つ平均平方偏差σ0を計算するA2工程と、
取得した画像を所定の角度θ回転させ、工程A1の方法により平均平方偏差σ1を計算するA3工程と、
取得した画像を再び所定の角度θ回転させ、工程A1の方法により平均平方偏差σ2を計算し、このように、回転角度が累計で180°に達し最後の平均平方偏差σnを算出するまで繰り返すA4工程と、
平均平方偏差σ0〜σnのうちの最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、即ち行方向であるA5工程と、
前記行方向が対応する画像状態を±（90°±21°）回転させ、且つこの範囲内に平均平方偏差の最大値を取り、当該最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、即ち列方向であるA6工程と、を含む、マトリックス型2次元コードの復号化方法。
【請求項３】
前記点ピッチが、自己相関法で離散信号の周期を求める方法により確定され、具体的には、
前記A5工程における平均平方偏差の最大値が対応する画像状態における各コード点をm個の画素で行方向に沿って平行移動し、平行移動する前後の各コード点の重心の投影値により自己相関係数Z1を計算し、取得した画像における各コード点をm+1個の画素で平行移動し、平行移動する前後の各コード点の重心の投影値により自己相関係数Z2を計算し、取得した画像における各コード点をm+2個の画素で平行移動し、平行移動する前後の各コード点の重心の投影値により自己相関係数Z3を計算し、このように、取得した画像における各コード点をm+n個の画素で平行移動し且つ自己相関係数Zn+1を算出するまで繰り返すB1工程と、
Z1〜Zn+1のうちの最大値を取り、当該最大値が対応するコード点の平行移動量は行方向での点ピッチeであるB2工程と、
同様に、前記A6工程における平均平方偏差の最大値が対応する画像状態における各コード点をn'回で列方向に沿って平行移動し、且つ最大の自己相関係数を算出することにより、列方向での点ピッチfを取得することができるB3工程と、を含み、
eとfがいずれも画素数であり、m≧1で、mが自然数であり、
0005905642.tif 000004
であり、m+nとm+n'はそれぞれ推定点ピッチが対応する画素数である、請求項１または２に記載のマトリックス型2次元コードの復号化方法。
【請求項４】
前記画像の回転は画像の中心点を回転中心とする、請求項１〜３のいずれか１項に記載のマトリックス型2次元コードの復号化方法。
【請求項５】
前記行平行線と列平行線は、
行方向に沿ってそれぞれa・e±Pの領域内にコード点の重心投影のピーク値を計算し、且つ各領域内のピーク値により列平行線を画くC1工程と、
列方向に沿ってそれぞれa・f±Pの領域内にコード点の重心投影のピーク値を計算し、且つ各領域内のピーク値により行平行線を画くC2工程と、により確定され、
Pが自然数で、且つe、fの中の小さいもの以下であり、aが自然数である、請求項２、または請求項２に従属する場合の請求項３若しくは４に記載のマトリックス型2次元コードの復号化方法。
【請求項６】
前記1つの完全なコードパターンユニットを復元する方法は、
位置決め点を参照とし、前記2次元コードのコード構造特徴により各コード点をマークし、且つ各コード点のマークにより、1つの完全な2次元コードユニットを復元することである、請求項１〜５のいずれか１項に記載のマトリックス型2次元コードの復号化方法。
【請求項７】
前記1つの完全なコードパターンユニットを復元する方法は、
位置決め点を参照とし、前記位置決め点の右側又は左側の各コード点を0、1、2から9まで順にマークし、且つこの順で循環にマークし、前記位置決め点の左側又は右側の各コード点を9、8、7から0まで順にマークし、且つこの順で循環にマークし、前記位置決め点の上側又は下側の各コード点を0、1、2から9まで順にマークし、且つこの順で循環にマークし、前記位置決め点の下側又は上側の各コード点を9、8、7から0まで順にマークし、且つこの順で循環にマークし、
以上のマークにより、1つの完全な2次元コードユニットを復元することである、請求項６に記載のマトリックス型2次元コードの復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は2次元コードに関し、特にマトリックス型2次元コードの復号化方法に関する。
【背景技術】
【０００２】
人々は伝統的な本や新聞などを目で読むのが一般的で、このような情報の取得方法は退屈で、時間が長くなると、目が疲労しやすい。また、盲人又は眼病に苦しむ人々は、このような伝統的な出版物を読むことができない。このため、近年、音声読み上げ出版物が出現しており、例えば特許番号ZL200610156879.4の中国発明特許は、MPR（multimedia print reader）出版物に対して、2次元コード音声読み上げ装置を用いて、音声読み上げ出版物における内容を復号化することができ、それにより、読者は読むと同時にオーディオおよびビデオ内容を更に受信することができ、読取又は記憶の効率を向上させ、さらに子供又は目や耳に障害がある人の学習に役立っている。MPR2次元コードについて、MPR出版物業界標準を参照して、MPR出版物の第1部（MPRコード符号規格、標準番号：CY/T 58.1-2009）、第2部（MPRコードの符号化規則、標準番号：CY/T 58.2-2009）、第3部（汎用作成規格、標準番号：CY/T 58.3-2009）、第4部（MPRコードの印刷品質要求及びテスト方法、標準番号：CY/T 58.4-2009）及び第5部（基本的な管理規格、標準番号：CY/T 58.5-2009）を含む。
【０００３】
前記中国発明特許における音声読み上げ出版物にはコードパターンアレイが印刷され、コードパターンアレイにおけるコードパターン符号は矩形であり、前記コードパターン符号におけるバーコードユニットは等ピッチで配列された中実点であり、コードパターンの四角に位置するユニットは境界の位置決めと認識のための位置決め点であり、他のユニットはデータ点であり、前記位置決め点の面積はデータ点の面積よりも大きい。前記コードパターン符号は下地に繰り返して配列されるとともに、シームレスジョイントにより、少なくとも同じコードパターン符号を2つ備え、且つ隣接するコードパターンが位置決め点を共有するコードパターンアレイに形成される。前記データ点ユニットのすべては隣接する前記位置決め点ユニットの中心を接続してなる矩形枠の内に位置する。その復号化方法は、まず位置決め点を選別し、更に位置決め点ユニットに対して矩形マッチングを行い、単独のコードパターン符号を1つ選定した後、データ点を組み分け、データ点のマトリックスを再構成することである。具体的には以下のステップを含む。
【０００４】
1）読取装置でコードパターンを読み取り、グレースケールコードパターン画像を取得する。2）前記グレースケールコードパターン画像を2値化処理して、2値化画像を取得する。3）2値化画像をデータ分析し、点ごとのエッジを検出し、エッジ画像を取得する。4）エッジ画像をデータ分析し、その中の閉合境界を追跡し、その中の全ての非閉合境界を捨て去り、閉合境界の画像を取得する。5）閉合境界画像をデータ分析し、閉合境界ごとの面積を計算し、位置決め点ユニットを選別する。6）位置決め点ユニットに対して矩形マッチングを行い、単独のコードパターン符号の画像を1つ選定する。7）当該コードパターン符号の画像におけるデータ点を組み分ける。8）データ点のマトリックスを再構成する。9）符号語を復元する。
【０００５】
当該発明の復号化方法は少なくとも4つの位置決め点を含む完全なコードパターンユニットを選別して矩形マッチングを行う必要があるので、取得しなければならないコードパターンの面積が大きい。図1は本発明と従来の技術が最も悪い場合に取得しなければならないコードパターンの最小面積を表し、外部の大きい矩形は従来の技術で取得しなければならないコードパターンの最小面積であり、即ちコードパターンユニットの面積の6倍であり、その内部の点線枠内の小さな矩形は本発明で取得しなければならないコードパターンの最小面積であり、即ちコードパターンユニットの面積の2倍である。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、従来の技術における読取装置が大きいコードパターン面積を読み取らなければならないことによる不便を解決するために、読取装置が小さいコードパターン面積を読み取るだけで復号化することができる復号化方法を提供する。
【課題を解決するための手段】
【０００７】
本発明の技術案は以下のとおりである。マトリックス型2次元コードの復号化方法であって、復号化の対象となるマトリックス型2次元コード画像は、同じコードパターンユニットを複数組み合わせてなるマトリックス型2次元コード符号のリンクコードアレイであり、走査により取得した画像は単一の完全なコードパターンユニットを含む必要がなく、その復号化過程は、復号化しようとするマトリックス型2次元コード符号のリンクコードアレイの2値化画像を1つ取得し、属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることにより、1つの完全なコードパターンユニットを復元し、そして復号化することである。
【０００８】
好ましくは、前記の属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることは、各コード点及び位置決め点に座標値を与えることを指し、当該座標値が確定した各コード点及び位置決め点と、走査により取得した画像における各コード点及び位置決め点とは、同じ相対的な位置関係を有する。
【０００９】
より好ましくは、各コード点及び位置決め点に座標値を与えることは、各コード点が位置する行ラインと列ラインの方向をそれぞれ確定し、それぞれを行方向と列方向と称する工程と、行方向と列方向の点ピッチをそれぞれ確定する工程と、行方向での点ピッチ及び当該方向での投影波形で各コード点及び位置決め点の行座標を画定し、列方向での点ピッチ及び当該方向での投影波形で各コード点及び位置決め点の列座標を画定する工程と、を含む。
【００１０】
又は、各コード点及び位置決め点に座標値を与えることは、画像において行方向と列方向を確定する工程と、前記行方向と列方向により、それぞれ1組の行平行線と1組の列平行線を画き、グリッドを形成し、行平行線と列平行線の間の距離はそれぞれコードパターンにおける列ラインと行ライン方向での点ピッチである工程と、当該グリッドにおける各交差点の座標を計算することにより、画像における各コード点に座標値を与える工程と、を含む。
【００１１】
更に好ましくは、前記行方向と列方向を確定することは、各コード点及び位置決め点の重心を確定するように、2値化画像を認識するA1工程と、取得した画像における各コード点の重心を任意の1つの直線Lへ投影し、各投影点の数及び全ての投影点の数の平均値を計算して、且つ平均平方偏差σ0を計算するA2工程と、取得した画像を所定の角度θ回転させ、工程A1の方法により平均平方偏差σ1を計算するA3工程と、取得した画像を再び所定の角度θ回転させ、工程A1の方法により平均平方偏差σ2を計算し、このように、回転角度が累計で180°に達し最後の平均平方偏差σnを計算するまで繰り返すA4工程と、平均平方偏差σ0〜σnのうちの最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、即ち行方向であるA5工程と、前記行方向が対応する画像状態を±（90°±21°）回転させ、且つこの範囲内に平均平方偏差の最大値を取り、当該最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、即ち列方向であるA6工程と、を含む。
【００１２】
更に好ましくは、前記点ピッチが、自己相関法で離散信号の周期を求める方法により確定され、具体的には、前記工程A5における平均平方偏差の最大値が対応する画像状態における各コード点をm個の画素で行方向に沿って平行移動し、平行移動する前後の各コード点の重心の投影値により自己相関係数Z1を計算し、取得した画像における各コード点をm+1個の画素で平行移動し、平行移動する前後の各コード点の重心の投影値により自己相関係数Z2を計算し、取得した画像における各コード点をm+2個の画素で平行移動して、平行移動する前後の各コード点の重心の投影値により自己相関係数Z3を計算し、このように、取得した画像における各コード点をm+n個の画素で平行移動し且つ自己相関係数Zn+1を算出するまで繰り返すB1工程と、Z1〜Zn+1のうちの最大値を取り、当該最大値が対応するコード点の平行移動量は行方向での点ピッチeであるB2工程と、同様に、前記工程A6における平均平方偏差の最大値が対応する画像状態における各コード点をn'回で列方向に沿って平行移動し、且つ最大の自己相関係数を算出することにより、列方向での点ピッチfを取得することができるB3工程と、を含み、eとfがいずれも画素数であり、m≧1で、mが自然数であり、
【数１】
0005905642.tif 000002
であり、m+nとm+n'はそれぞれ推定点ピッチが対応する画素数である。
【００１３】
更に好ましくは、前記画像の回転は画像の中心点を回転中心とする。
【００１４】
前記行平行線と列平行線は、行方向に沿ってそれぞれa・e±Pの領域内にコード点の重心投影のピーク値を計算し、且つ各領域内のピーク値により列平行線を画くC1工程と、列方向に沿ってそれぞれa・f±Pの領域内にコード点の重心投影のピーク値を計算し、且つ各領域内のピーク値により行平行線を画くC2工程と、により確定され、Pが自然数で、且つe、fの中の小さいもの以下であり、aが自然数である。
【００１５】
前記2次元コードを復元する方法は、位置決め点を参照とし、前記2次元コードのコード構造特徴により各コード点をマークし、且つ各コード点のマークにより、1つの完全な2次元コードユニットを復元することである。
【００１６】
更に好ましくは、前記2次元コードを復元する方法は、位置決め点を参照とし、その右側又は左側の各コード点を0、1、2から9まで順にマークし、且つこの順で循環にマークし、その左側又は右側の各コード点を9、8、7から0まで順にマークし、且つこの順で循環にマークし、その上側又は下側の各コード点を0、1、2から9まで順にマークし、且つこの順で循環にマークし、その下側又は上側の各コード点を9、8、7から0まで順にマークし、且つこの順で循環にマークし、以上のマークにより、1つの完全な2次元コードユニットを復元することである。
【００１７】
本発明の有益な効果は以下のとおりである。
【００１８】
属するコードパターンユニットにおける各コード点の位置を位置決めすることにより、少なくとも1つの完全なコードパターンユニットを復元し、復号化する方法で、本発明はコードパターンの回転が最も大きい場合に復号化しても、コードパターンユニットの2倍の面積のみを必要とするが、従来の技術の復号化方法は少なくともコードパターンユニットの6倍の面積を必要とする。これは、本発明の復号化方法は読取装置で完全なコードパターンユニットを読み取る必要がなく、取得したコードパターン画像が最終的に1つの完全なコードパターンユニットを組み合わせられれば復号化を完成することができ、取得した画像が異なるコードパターンユニットのフラグメントに属しても関係がなく、同時に画像が一定の傾斜を有しても影響がないからである。しかし、従来の技術の復号化方法は、必ず読取装置で読み取られたコードパターン画像に少なくとも1つの完全なコードパターンを直接に含まなければならないので、大きい面積を取得しなければ復号化することができない。このため、本発明の復号化方法を用いてコードパターンの印刷と読取装置の製造に大きな利便性を提供し、即ちコードパターンを大きく印刷する必要がなく、読取装置を小さく製造してもよく、それにより、携帯及び使用を便利にするとともに、コストを低減させた。なお、本発明はコードパターン画像が傾斜する場合にも適用することができ、且つ演算量が従来の技術よりも小さく、リソースを節約する。
【図面の簡単な説明】
【００１９】
【図１】図1は本発明と従来の技術で最も悪い場合に取得しなければならないコードパターンの最小面積（外部の大きい矩形は従来の技術で取得しなければならないコードパターンの最小面積であり、即ちコードパターンユニットの面積の6倍であり、その内部の点線枠内の小さな矩形は本発明で取得しなければならないコードパターンの最小面積であり、即ちコードパターンユニットの面積の2倍である）である。
【図２】図2は1つの実施例で取得したコードパターン画像の模式図（図1に対して一定の傾斜と回転が発生した）である。
【図３】図3は図2の画像を強化処理した後の模式図である。
【図４】図4は図3の画像を2値化処理した後の拡大模式図である。
【図５】図5は図4の画像を認識した後の拡大模式図である。
【図６】図6は図4の画像を53°回転させた時に投影する模式図（図における点線位置の4つの三角形面積は、画像をこの角度に回転させた時に、その4つの角が演算の際に除去されることを表す）である。
【図７】図7は図4の画像を90°回転させた時に投影する模式図である。
【図８】図8は図4の画像を124°回転させた時に投影する模式図（図における点線位置の4つの三角形面積は、画像をこの角度に回転させた時に、その4つの角が演算の際に除去されることを表す）である。
【図９】図9は図4の画像を179°回転させた時に投影する模式図である。
【図１０】図10は図4の画像を0°〜180°回転させる時の投影値の模式図（4つのピーク値がそれぞれ53°、90°、124°、179°に対応する）である。
【図１１】図11は図2の実施例で構成されたグリッドの模式図である。
【図１２】図12は復元したコードパターンユニットの模式図である。
【発明を実施するための形態】
【００２０】
理解しやすくするために、まず、従来の技術と本発明の復号化方法を比較して説明し、MPR2次元コード（マトリックス型2次元コードの中の1種）の復号化を例として、具体的な実施例を合わせて、且つ図面を参照しながら、本発明の方法を更に以下のように詳しく説明する。
【００２１】
図1に示すように、従来の技術の復号化方法において、4つの位置決め点を含む完全なコードパターンユニット（コードパターンユニットは、即ちMPR2次元コードにおけるコード符号に相当する）を読み出さないと、矩形マッチングし更に復号化することができない。すなわち、従来の技術の復号化方法において、A、B、C、Dに示すコードパターンの4つの部分を読み出すだけでなく、これらの4つの部分は同一のコードパターンユニットに属し、かつ4つの部分の配列順序が完全に正確でなければならない。しかし、本発明の方法において、A、B、C、Dに示すコードパターンの4つの部分を読み出すだけで、コードパターンユニットを復元することができ、配列順序には要求がなく、同一のコードパターンユニットの4つの部分であるか否かにも要求がない。
【００２２】
当該実施例のコードパターンには、シームレスジョイントにより一体的に配列される複数のMPR2次元コードのコード符号を含み、隣接する符号は位置決め点（MPRコード符号において開始及び終了位置をマークするバーである。位置決め点の形状が円形又は正多角形である。）を共用し、大面積のタイリング配列に組み合わせられ、その配列はシンボリックリンクと称する。MPRコードのシンボリックリンク図（即ちMPR読み物に印刷されたコードパターン）の例示は図2に示すようなものである。他のマトリックス型2次元コードにおいて、前記位置決め点は位置決め線などで代替されることができ、同様にシームレスジョイントにより複数のコードパターンユニットから構成され、いずれも同じ役割を実現し、且つ以下の方法により復号化することができる。このため、本発明に記載の位置決め点は位置決め線等の位置決め情報付きのモジュールも含む。
【００２３】
図3は、1つの実施例で取得したコードパターン画像の模式図である。図3に示すように、読み取る際の操作及び読取装置自身の精度等の原因により、取得したコードパターン画像が図2に対して一定の傾斜と回転が発生した。
【００２４】
取得した画像を強化処理した後の模式図は図4に示すようになり、そして2値化処理して、図5に示す模式図になる。
【００２５】
次に、図5のうえにコード点（MPRコード符号において有効的なデータ情報を表すバーである。コード点の形状が円形又は正多角形である。）の認識を行い、図6に示すように、後の処理工程に利用される各コード点及び位置決め点の重心を確定してマークする。
【００２６】
当該復号化の方法は、主に、取得した画像を2値化処理した後、属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることにより、少なくとも1つの完全なコードパターンユニットを復元し、そして復号化する工程を含む。
【００２７】
本実施例において、属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることは、各コード点が位置する行ラインと列ラインの方向をそれぞれ確定し、それぞれを行方向と列方向と称する工程と、行方向と列方向の点ピッチをそれぞれ確定する工程と、行方向と当該方向での点ピッチで各コード点の行座標を画定し、列方向と当該方向での点ピッチで各コード点及び位置決め点の列座標を画定する工程と、を含む。
【００２８】
属するコードパターンユニットにおける各コード点及び位置決め点の位置を位置決めすることは、各コード点及び位置決め点の重心を確定するように、2値化処理した後の画像を更に認識する工程と、画像において行方向と列方向を確定する工程と、それぞれ行方向と列方向に沿って1組の行平行線と1組の列平行線を画き、グリッドを形成し、行平行線と列平行線の間の距離がそれぞれコードパターンにおける行ラインと列ライン方向での点ピッチであり、点ピッチが隣接するコード点の重心の間のピッチである工程と、当該グリッドにおける各交差点の座標を計算することにより、画像における各コード点及び位置決め点の重心に座標値を与え、当該座標値は、属するコードパターンユニットにおけるコード点及び位置決め点の位置を表す工程と、を採用してもよい。
【００２９】
前記行方向と列方向の確定は、好ましくは、図6の画像における各コード点をX軸方向に投影し、各投影点の投影数及び全ての投影点の投影の数の平均値を計算し、そして各投影点の投影の数の平均平方偏差σ0を計算し、取得した画像を所定の角度θ回転させ、前記の同じ方法で平均平方偏差σ1を計算し、取得した画像を再び所定の角度θ回転させ、前記の同じ方法で平均平方偏差σ2を計算し、このように、回転角度が累計で180°に達し最後の平均平方偏差σnを算出するまで繰り返し、σ0〜σnのうちの最大値が対応する画像状態を取り、且つ当該画像状態で投影点の投影数が最も多く且つX軸に垂直するラインが位置する方向を行方向とマークするという方法を採用する。
【００３０】
画像を回転させる際、好ましくは、画像の中心を回転中心とし、この場合に、画像が回転して除去される面積は最も小さく、演算量も最も小さいが、他の点を回転中心としても、同様に発明の目的を実現することができる。
【００３１】
図6〜9は、当該実施例における画像を53°、90°、124°及び179°回転させた時に、投影する模式図である。また、図10は、当該画像を0°〜180°回転させる時の投影値の模式図（4つのピーク値がそれぞれ53°、90°、124°、179°に対応する）である。
【００３２】
列方向を確定する原理は、行方向を確定する原理と同じで、ただ、投影して平均平方偏差を計算する前に、前記行ラインが対応する画像状態を90°±21°回転させる必要があり、且つこの範囲（即ち行ラインが対応する画像状態に対して69°〜111°回転させる）内に平均平方偏差の最大値を取り、当該最大値が対応する画像状態でLラインでの投影点の数が最も多い位置にLに垂直するラインを画き、当該ラインが位置する方向は列方向である。
【００３３】
前記点ピッチの計算は、好ましくは、行ライン方向に沿って前記σ0〜σnのうちの最大値が対応する画像状態における各コード点をm個の画素で平行移動し、平行移動する前後の各コード点の投影値により自己相関係数Z1を計算し、取得した画像における各コード点をm+1個の画素で平行移動し、平行移動する前後の各コード点の投影値により自己相関係数Z2を計算し、取得した画像における各コード点をm+2個の画素で平行移動し、平行移動する前後の各コード点の投影値により自己相関係数Z3を計算し、自己相関係数Zn+1を算出するまでこのように繰り返し、Z1〜Zn+1のうちの最大値を取り、当該最大値が対応する平行移動量は行方向での点ピッチeであり、同様に、69°〜111°回転させる時に平均平方偏差の最大値が対応する状態図を列ライン方向に沿ってn'回平行移動し、且つ最大の自己相関係数を算出し、列方向での点ピッチfを取得することができ、eとfがいずれも画素数であり、m≧1で、mが自然数であり、
【数２】
0005905642.tif 000003
であり、m+nとm+n'はそれぞれ推定点ピッチが対応する画素数であるという方法を採用する。
【００３４】
前記行平行線と列平行線は、好ましくは、行方向に沿ってそれぞれa・e±Pの領域内にコード点の重心投影のピーク値を計算し、且つ各領域内のピーク値により列平行線を画き、列方向に沿ってそれぞれa・f±Pの領域内にコード点の重心投影のピーク値を計算し、且つ各領域内のピーク値により行平行線を画き、Pが自然数で、且つe、fの中の小さいもの以下であり、aが自然数であるという方法により確定される。
【００３５】
図11に示すように、前記の行平行線と列平行線がともにグリッドを構成する。グリッドを構成する方法はそれぞれ行平行線と列平行線を互いに交差するように延長して、グリッドを形成する。
【００３６】
画像における各コード点及び位置決め点に値を与える方法は、以下のとおりである。
【００３７】
画像の中心点を参照点とし、グリッドにおける各交差点の座標値を計算し、取得した画像における各コード点の座標の値を、それとの距離が最も近いグリッドにおける交差点の座標値とする。前記位置決め点の座標値は、それと隣接する4つのコード点の座標値により確定される。前記参照点は画像の中心点ではなく、画像での任意点を選択してもよく、ひいては画像以外の点を参照点としてもよい。
【００３８】
前記の2次元コードを復元する方法は（他のマトリックス型2次元コードであれば、当該マトリックス型2次元コードの符号化規則により復元すればよい）以下のとおりである。
【００３９】
位置決め点のモジュールサイズはコード点モジュールサイズの2倍であるべきである。コード点に対して重心の認識を行い、及び属するコードパターンユニットにおける各コード点の位置を位置決めする際、同時に位置決め点に対しても重心の認識と位置決めを行い、且つ位置決め点の面積情報（例えばその面積情報を記録する）をマークし、それにより、後の2次元コードの復元の際、参照として位置決め点を抽出する。具体的な位置決め方法は、重心の投影座標が行ラインにも列ラインにも位置せず、且つ当該重心が対応するコードパターン画像におけるモジュールサイズは行ラインと列ラインに位置するモジュールサイズよりも2倍又は2倍以上大きくすることである。
【００４０】
位置決め点を参照とし、その右側の各コード点をこの順で0、1、2から9までマークし、且つこの順で循環にマークし、その左側の各コード点はこの順で9、8、7から0までマークし且つこの順で循環にマークし、その上側の各コード点はこの順で0、1、2から9までマークし、且つこの順で循環にマークし、その下側の各コード点はこの順で9、8、7から0までマークし、且つこの順で循環にマークし、以上のマークにより、1つの完全な2次元コードユニットを復元し、図12に示すように、図における「+」字は位置決め点を表し、丸がコード点を表す。
【００４１】
本実施例において、位置決め点は、以下の特徴を有する。
1）重心座標が行列の中間に位置する。
2）面積がコード点の平均面積の2倍よりも大きい。
3）上下左右に隣接する4つの行列ラインの交差位置にコード点がない。
【００４２】
コード点の行列座標値を確定し又はコード点に座標値を与える際、同時に位置決め点をマークすることにより、後の参照として利用される。
【００４３】
以上具体的な実施例を合わせて本発明を更に詳しく説明したが、本発明の具体的な実施はこれらの説明に限定されたものと考えるべきではない。当業者は、本発明の考えを逸脱しない限り、更に複数の簡単な演繹又は取り替えを行うことができ、いずれも本発明の請求範囲に属すると見なすべきである。
【図１】
0005905642.tif 000005
【図２】
0005905642.tif 000006
【図３】
0005905642.tif 000007
【図４】
0005905642.tif 000008
【図５】
0005905642.tif 000009
【図６】
0005905642.tif 000010
【図７】
0005905642.tif 000011
【図８】
0005905642.tif 000012
【図９】
0005905642.tif 000013
【図１０】
0005905642.tif 000014
【図１１】
0005905642.tif 000015
【図１２】
0005905642.tif 000016