要点
ここでは、QRコードを高い完成度で作成する方法について説明します。
- クワイエットゾーン、検出パターン、アライメントパターンなどのQRコードの構成要素を理解します。
- 可読性とエラー補正のためのISO評価基準を検討します。
- コントラストと変位幅がQRコードの性能にどのような影響を与えるかを学びます。
- QRコードをさまざまな用途に最適化する手法を確認します。
QRコードとは?
自動車部品のコード読み取りを高速化するために、原昌宏氏がクイックレスポンスシステムシンボル、通称QRコードを開発しました。同氏は目標を達成しただけでなく、それ以上のことを成し遂げました。このテクノロジがISO標準になったのは、従来のバーコードに比べて以下のような多くの利点があるためです。
- デコード時間が最大10倍高速化
- データ保存容量の増加
- 柔軟性のあるサイズ
- あらゆる向きでの可読性
- 最大30%のコード破損にも耐える可読性
ただし、これらのメリットはQRコードの品質に左右されます。QRコードを社内用または一般向けに作成する企業は、QRコードを簡単にデコードできることを確認する必要があります。そのための最善の方法は、バーコード検証機を使用することです。バーコード検証機は、複数のパラメータをテストしてQRコードを分析し、総合的な品質グレードを判定します。
評価プロセスに入る前に、QRコードの構成要素を確認しましょう。
QRコードの構造について
クワイエットゾーン:コードの端にあるスペースで、近くのデザイン要素やマークからコードを分離するのに役立ちます。最小サイズは、ISO 16480規格のQRコードでは1モジュール(コードの最小正方形のサイズ)、ISO 18004規格のQRコードでは4モジュール(モバイル機器での読み取り用)です。
検出パターン: 黒と白の正方形を入れ子にした同一の3組のパターン。これによりスキャナは、コードの向きを迅速かつ簡単に判断して読み取ることができます。
アライメントパターン: より小さい黒と白の入れ子の正方形で、コードが斜めであっても、湾曲面上にあっても確実に読み取ることができます。これは、リーダソフトウェアにグリッドの配置場所を示すものです。
- コードが大きくなればなるほど、より多くのアライメントパターンが必要になります。
- 45モジュールを超えるQRコードは、多数のアライメントパターンが必要です。
タイミングパターン:3つの検出パターンの正方形の間を通るL字型の線により、リーダは、モジュールの大きさとデータの位置を判断できます。
フォーマット情報: エラー耐性とデータマスキングパターンを示すコードの専用領域。
バージョン情報: QRコードの40種類のバージョンのうち、どれが使用されているかを示し、シンボル内で使用されているデータマスク、エラー補正レベル、リンク値を特定するコードの特定領域。追加のアライメントパターンと同様、この情報は45 x 45モジュールより大きなシンボルにのみ示されています。
データと補正キー: データおよびエラー補正のために、明暗のモジュールを使用するコードの大部分。
- エラー補正により、コードの最大30%が損傷してもデコードが可能です。
QRコードの評価プロセス
QRコードは、デコードプロセスのステップに基づいて評価されます。詳細は、ラベル印刷コードについてはISO 15415規格に、部品に直接マークされたコード(DPM)についてはISO 29158に規定されています。
シンボル読み取りソフトウェアは、コードの隅にある3つの大きな検出パターンを見つけてデコードを開始します。これらのパターンが見つかると、クロックトラックとアライメントパターンによって文字グリッドが設定されます。各モジュールの色は、モジュールの中心付近にあるグリッド線の交点で計測され、その色がモジュールの規定された色と比較されます。
色計測のための円形サンプリング
モジュールの色は、グリッド線の交点を中心としたアパーチャと呼ばれる円形のサンプル内で計測されます。画像はアパーチャ内でグレーの階調にばらつきがあることが多いため、リーダはその領域内の平均色を使ってモジュールを評価します。
暗モジュールまたは明モジュールの判定
コード内の全モジュールの平均値は、ヒストグラムと呼ばれるグラフ上にプロットされます。そして、コード内で見つかった最も暗いレベルと最も明るいレベルの中間のグレーが、グローバルしきい値として設定されます。各モジュールは、グローバルしきい値より明るいか暗いかに基づいて、明または暗として解釈されます。これにより、リーダはさまざまな照明条件や印刷された背景に適応できます。
QRコードモジュールの評価
モジュールが暗モジュールか明モジュールかが判定されると、実際の色レベルがグローバルしきい値にどの程度近いかが評価されます。グローバルしきい値からの距離が長いほど良好です。明モジュールは画像内で最も明るいスポットの一つであることが求められ、暗モジュールは最も暗いスポットに近い必要があります。
これを反映させるため、モジュールはヒストグラムの中央からの距離に基づいて高いグレードが与えられ、グローバルしきい値に近づくにつれて低いグレードが与えられます。
QRコードの総合的なグレードは、検出パターン、クロックトラック、バージョン情報ブロック、フォーマット情報ブロック、アライメントパターン、通常のデータモジュールといった、QRコードのすべての構成要素のグレードによって決まります。
各モジュールの評価ルールは、QRコードの可読性にどの程度影響するかによって異なります。
検出パターンの評価パラメータ
セルの色が判定されると、デコードプロセスの次の段階として、検出パターンが特定されます。
検出パターンのグレード割り当て:
- 不正確なモジュールが0 - A
- 不正確なモジュールが1個 - B
- 不正確なモジュールが2個 - C
- 不正確なモジュールが3個 - D
- 不正確なモジュールが4個以上 - F
タイミングパターン
タイミングパターン:水平および垂直クロックトラック
クロックトラックに基づくグレード割り当て
- 不正確なモジュールが0 - A
- 不正確なモジュールが7%以下 - B
- 不正確なモジュールが11%以下 - C
- 不正確なモジュールが14%以下 - D
- 不正確なモジュールが14%超 - F
アライメントパターン
各アライメントパターンは、不正確なモジュールが含まれていないか検査され、エラーがあるアライメントパターンの割合に基づいて評価されます。アライメントパターンが1つしかない場合、そのパターンに損傷があればFグレードとなります。
アライメントパターンに基づくグレード割り当て
- 損傷したアライメントパターンが0 - A
- 損傷したアライメントパターンが10%以下 - B
- 損傷したアライメントパターンが20%以下 - C
- 損傷したアライメントパターンが30%以下 - D
- 損傷したアライメントパターンが30%超 - F
バージョン情報ブロック
バージョン情報ブロックは、45 x 45モジュール以上のQRコードシンボルでのみ出現します。これらのブロックは、損傷に対する冗長性保護を提供するために、シンボル内の2箇所で繰り返されます。
バージョン情報ブロックに基づくグレード割り当て
- 不正確なモジュールが0 - A
- 不正確なモジュールが1個 - B
- 不正確なモジュールが2個 - C
- 不正確なモジュールが3個 - D
- 不正確なモジュールが4個以上 - F
フォーマット情報ブロック
2つあるので、フォーマット情報ブロックのグレードは2つのグレードの平均となります。一方が損傷してF、もう一方がAだった場合、フォーマット情報ブロックの総合的なグレードはCになります。
フォーメーション情報ブロックに基づくグレード割り当て
- 不正確なモジュールが0 - A
- 不正確なモジュールが1個 - B
- 不正確なモジュールが2個 - C
- 不正確なモジュールが3個 - D
- 不正確なモジュールが4個以上 - F
QRコードシンボルの追加グレーディングパラメータ
QRコード固有のパターンに加え、すべての二次元バーコードの評価には、以下のパラメータが使用されます。
デコード成功
いかなるQRコードも、QRコード仕様に記載された手順に従ってデコードできる必要があります。デコードできないほど損傷したコードにはFが付与されます。デコードに成功したシンボルにはAが付与されますが、シンボルの実際のグレードは、固定パターンのグレードや以下の他のパラメータによって決まります。
未使用エラー訂正
ほとんどの二次元シンボルと同様、QRコードシンボルにはエラー補正が含まれており、一部のモジュールが読み取り不能な場合でも、デコーダがデータのビットを復旧できるようになっています。ただし、エラー補正機能は一定のモジュール数に制限されており、エラー補正機能の使用割合によって、未使用のエラー訂正(UEC)のグレードが決まります。
UECに基づくグレード割り当て
- 未使用エラー訂正が62%以上 - A
- 未使用エラー訂正が50%以上 - B
- 未使用エラー訂正が37%以上 - C
- 未使用エラー訂正が25%以上 - D
- 未使用エラー訂正が25%超 - F
軸方向非均一性
QRコードとその構成セルは、存在することが期待されています。シンボルのアスペクト比に影響を与える歪みは、軸方向非均一性(ANU)として測定されます。ANUの値は、2軸の長さの差を2軸の平均サイズで割ることによって計算されます。
ANUに基づくグレード割り当て:
- ANUが6%以下 - A
- ANUが8%以下 - B
- ANUが10%以下 - C
- ANUが12%以下 - D
- ANUが12%超 - F
グリッド非均一性
デコード処理の結果、交差する線からなるグリッドが生成され、これは各モジュールの中心に位置する必要があります。このグリッドは垂直方向と水平方向に等間隔に配置されるのが理想的です。
しかし、実際の使用では、グリッドはクロックトラックモジュールの位置やアライメントパターンに適応するため、理想的なグリッドと一致しない場合があります。
グリッド非均一性(GNU)は、実際のグリッドと理想的なグリッドの交差点位置の最大差を、X寸法に対するパーセンテージとして計測したものです。
GNUに基づくグレード割り当て
グリッド非均一性のグレード値:
- GNUが38%以下 - A
- GNUが50%以下 - B
- GNUが63%以下 - C
- GNUが75%以下 - D
- GNUが75%超 - F
変位幅(MODおよびRM)
変位幅とは、データモジュールの実際の色を、グローバルしきい値およびそれぞれの期待される色と比較したものです。 グローバルしきい値に近ければ近いほど、不確実性が高くなり、そのモジュールのグレードは低くなります。それぞれの色レベルを持つモジュールの割合によってグレードが決まります。変位幅とは、簡単に言うと、コントラストに問題がある局所的な領域のことです。
QRコードにはエラー補正機能があるため、少数の不確かなモジュールによってシンボルが読めなくなることはありません。しかし、不確かなモジュールが増えれば増えるほど、シンボルの読み取りは難しくなり、汚れや損傷にも弱くなります。
MODとRMのグレード判定手順
変位幅のグレードを計算する際、グレードがAより低いモジュールはエラーとしてカウントされ、未使用エラー訂正の式に基づいてグレードが計算されます。次に、グレードがB、C、Dより低いモジュールについて、この手順が繰り返されます。グレードは「最悪の中の最良」として計算されます。つまり、各制限グレードについて、制限グレードとUEC結果のうち低い方が選択され、MODまたはRMの最終グレードは、これらの選択結果のうち最も高いものになります。
MODとRMの違い
MODとRMの違いは、MODの場合、間違った色のモジュールは自動的にエラーとしてカウントされないことです。その代わりに、モジュールの実際の色に関係なく、グローバルしきい値からの距離がグレードの割り当てに使用されます。RMの場合、不正確なモジュールは常にエラーとしてカウントされます。
MOD方式は印刷工程を評価するのに有効であり、シンボルの正確さや可読性を判断するのには適していません。一方、RMは、間違った色のモジュールがすべてエラーとしてカウントされるため、シンボルの可読性を評価するのにより役立ちます。
変位幅の最終的なグレード判定
シンボルの総合的なグレードはすべてのパラメータのうち低い方となるため、MODとRMのうち低い方によって最終グレードが決定されます。さらに、RMは常にMODと等しいかそれ以下になるため、最終グレードは常に、MODではなくRMによって決まります。この意味で、MODはシンボルの最終グレードを決定するうえでは不要ですが、場合によっては、印刷工程の評価に役立つことがあります。
QRコード品質について
あらゆる種類のメーカーや生産者は、構造、評価プロセス、変位幅評価を理解することで、QRコード品質を最適化できます。クワイエットゾーン、検出パターン、アライメントパターン、タイミングパターン、バージョン情報など、すべての要素を正しく使用することで、正しく構成されたQRコードを作成できます。
評価プロセスは、潜在的なコントラストの問題を特定し、可読性を向上させるために重要です。エラー補正と色評価のバランスを適切に取ることは、QRコードの信頼性と効率性を確保するために非常に重要です。ベストプラクティスを順守し、包括的な評価手法を導入することで、企業は今日のデジタル環境において、ユーザ体験を向上させ、意図した目的を果たす高品質なQRコードを実現できます。