マスクパターン

別名: データマスク, Mask pattern, マスク処理

定義

マスクパターンは、QRコードのデータ領域にXORで重ねる、8種類の固定パターンの1つで、大きなベタ領域や紛らわしい形を崩します。エンコーダーは、4つのペナルティ規則で最も点数のよいマスクを選びます。

マスク処理の役割

データと誤り訂正のビットを配置すると、同じ色が長く続く部分や、ファインダーパターンに似た形が生じることがあります。マスク処理は、単純な式が成り立つ場所のモジュールを反転させることで、これを解消し、明暗をより均等に分散させます。

マスクの対象は、データと誤り訂正の領域だけです。ファインダー、タイミング、アライメントの各パターン、形式情報と型番情報、ダークモジュールには、マスクをかけません。

8種類のマスク

マスクには、000から111までの番号が付いています。それぞれ、モジュールの行iと列jに関する条件で定義され、条件が成り立つモジュールが反転されます。リーダーは、形式情報からマスク番号を知り、同じマスクをもう一度かけて元に戻します。

  • 000:(i + j) mod 2 = 0、市松模様
  • 001:i mod 2 = 0、1行おきの縞
  • 010:j mod 3 = 0、3列ごと
  • 011:(i + j) mod 3 = 0、斜めの縞
  • 100〜111:行、列、積を組み合わせた、より複雑な条件

最適なマスクの選び方

エンコーダーは、8種類のマスクをすべて試し、それぞれの結果を4つのペナルティ規則で採点します。合計のペナルティが最も低いマスクが使われ、完成したコードはカメラで読み取りやすくなります。

ジェネレーターによっては、すべてを評価せずに固定のマスクを使うものもあります。それでも有効なコードはできますが、読み取りがわずかに難しくなることがあります。マイクロQRコードは、4種類のより小さなマスクの集合と、独自の採点規則を使います。

  • 規則1:行または列で同じ色が長く続く
  • 規則2:同じ色の2×2のブロック
  • 規則3:1:1:3:1:1というファインダーパターンの比率に似たパターン
  • 規則4:暗いモジュールと明るいモジュールの全体的な偏り

よくある質問

内容が同じQRコードでも見た目が違うのはなぜですか?

マスクパターン、誤り訂正レベル、型番のいずれかが違っている可能性があります。どれが変わってもモジュールの配置は変わりますが、デコードした内容は同じです。

QRコードには、マスクパターンがいくつありますか?

規格では、000から111までの8種類が定められています。選ばれたものは形式情報に記録され、スキャナーがそれを外せるようになっています。

出典と規格

すべての用語