Maskerpatroon

Ook genoemd: gegevensmasker, maskeren, mask pattern

Definitie

Een maskerpatroon is een van acht vaste patronen die met XOR over het gegevensgebied van een QR-code worden gelegd om grote vlakken en misleidende vormen te doorbreken. De encoder kiest het masker dat het best scoort op vier strafregels.

Wat maskeren doet

Nadat de gegevens- en foutcorrectiebits zijn geplaatst, kunnen sommige gebieden lange reeksen van één kleur bevatten of vormen die op zoekpatronen lijken. Maskeren lost dat op door modules om te keren waar een eenvoudige formule waar is, waardoor donker en licht gelijkmatiger worden verdeeld.

Het masker geldt alleen voor het gegevens- en foutcorrectiegebied. Zoek-, timing- en uitlijnpatronen, de formaat- en versie-informatie en de donkere module worden nooit gemaskeerd.

De acht maskers

Maskers zijn genummerd van 000 tot 111. Elk wordt bepaald door een voorwaarde op rij i en kolom j van een module; waar de voorwaarde geldt, wordt die module omgekeerd. Een lezer leert het maskernummer uit de formaatinformatie en past hetzelfde masker opnieuw toe om het ongedaan te maken.

  • 000: (i + j) mod 2 = 0, een dambordpatroon
  • 001: i mod 2 = 0, afwisselende rijen
  • 010: j mod 3 = 0, elke derde kolom
  • 011: (i + j) mod 3 = 0, diagonale strepen
  • 100 tot 111: ingewikkeldere combinaties van rijen, kolommen en producten

Hoe het beste masker wordt gekozen

De encoder probeert alle acht maskers en beoordeelt elk resultaat met vier strafregels. Het masker met de laagste totale straf wordt gebruikt, waardoor de afgewerkte code makkelijker door camera’s te lezen is.

Sommige generatoren slaan de volledige beoordeling over en gebruiken een vast masker, wat nog steeds een geldige code oplevert maar iets moeilijker te scannen kan zijn. Micro QR-codes gebruiken een kleinere set van vier maskers met een eigen scoreregel.

  • Regel 1: lange reeksen van dezelfde kleur in een rij of kolom
  • Regel 2: blokken van 2 × 2 in één kleur
  • Regel 3: patronen die lijken op de zoekpatroonverhouding 1:1:3:1:1
  • Regel 4: algehele onbalans tussen donkere en lichte modules

Veelgestelde vragen

Waarom zien twee QR-codes met dezelfde inhoud er verschillend uit?

Ze kunnen verschillende maskerpatronen, foutcorrectieniveaus of versies gebruiken. Elk daarvan verandert de moduleopstelling terwijl de gedecodeerde inhoud identiek blijft.

Hoeveel maskerpatronen heeft een QR-code?

De norm definieert er acht, genummerd van 000 tot 111. Het gekozen masker staat in de formaatinformatie, zodat de scanner het kan verwijderen.

Bronnen en normen

Alle termen