Ką daro maskavimas
Kai duomenų ir klaidų taisymo bitai išdėstyti, kai kuriose vietose gali atsirasti ilgos vienos spalvos atkarpos arba paieškos šablonus primenančios formos. Maskavimas tai ištaiso apversdamas modulius visur, kur tenkinama paprasta formulė, todėl tamsūs ir šviesūs moduliai pasiskirsto tolygiau.
Kaukė taikoma tik duomenų ir klaidų taisymo sričiai. Paieškos, taktavimo ir lygiavimo šablonai, formato ir versijos informacija bei tamsusis modulis niekada nemaskuojami.
Aštuonios kaukės
Kaukės sunumeruotos nuo 000 iki 111. Kiekviena apibrėžiama modulio eilutės i ir stulpelio j sąlyga; kur sąlyga tenkinama, tas modulis apverčiamas. Skaitytuvas kaukės numerį sužino iš formato informacijos ir tą pačią kaukę taiko dar kartą, kad ją panaikintų.
- 000: (i + j) mod 2 = 0, šaškių lenta
- 001: i mod 2 = 0, kintančios eilutės
- 010: j mod 3 = 0, kas trečias stulpelis
- 011: (i + j) mod 3 = 0, įstrižos juostos
- 100–111: sudėtingesni eilučių, stulpelių ir sandaugų deriniai
Kaip parenkama geriausia kaukė
Kodavimo programa išbando visas aštuonias kaukes ir kiekvieną rezultatą įvertina pagal keturias baudų taisykles. Naudojama kaukė su mažiausia bendra bauda, todėl gatavą kodą kameroms skaityti lengviau.
Kai kurie generatoriai praleidžia pilną vertinimą ir naudoja fiksuotą kaukę, o tai vis tiek sukuria tinkamą kodą, bet jį gali būti šiek tiek sunkiau nuskaityti. Micro QR kodai naudoja mažesnį keturių kaukių rinkinį su savo vertinimo taisykle.
- 1 taisyklė: ilgos vienos spalvos atkarpos eilutėje ar stulpelyje
- 2 taisyklė: 2 × 2 vienos spalvos blokai
- 3 taisyklė: šablonai, primenantys paieškos šablono santykį 1:1:3:1:1
- 4 taisyklė: bendras tamsių ir šviesių modulių disbalansas