Što radi maskiranje
Nakon što se smjeste bitovi podataka i ispravljanja pogrešaka, neka područja mogu imati duge nizove jedne boje ili oblike nalik uzorcima za pronalaženje. Maskiranje to rješava preokretanjem modula gdje god je jednostavna formula istinita, čime se tamno i svijetlo ravnomjernije raspoređuju.
Maska se primjenjuje samo na područje podataka i ispravljanja pogrešaka. Uzorci za pronalaženje, sinkronizaciju i poravnanje, informacije o formatu i verziji te tamni modul nikad se ne maskiraju.
Osam maski
Maske su numerirane od 000 do 111. Svaka je definirana uvjetom na redak i i stupac j modula; gdje uvjet vrijedi, taj se modul preokreće. Čitač broj maske saznaje iz informacija o formatu i istu masku primjenjuje ponovno kako bi je poništio.
- 000: (i + j) mod 2 = 0, šahovnica
- 001: i mod 2 = 0, izmjenjujući reci
- 010: j mod 3 = 0, svaki treći stupac
- 011: (i + j) mod 3 = 0, dijagonalne pruge
- 100 do 111: složenije kombinacije redaka, stupaca i umnožaka
Kako se bira najbolja maska
Koder isprobava svih osam maski i svaki rezultat ocjenjuje s četiri kaznena pravila. Koristi se maska s najmanjom ukupnom kaznom, što gotov kod čini lakšim za čitanje kamerama.
Neki generatori preskaču potpunu procjenu i koriste fiksnu masku, što i dalje daje valjan kod, ali koji se može nešto teže skenirati. Micro QR kodovi koriste manji skup od četiri maske s vlastitim pravilom ocjenjivanja.
- Pravilo 1: dugi nizovi iste boje u retku ili stupcu
- Pravilo 2: blokovi 2 × 2 jedne boje
- Pravilo 3: uzorci nalik omjeru 1:1:3:1:1 uzorka za pronalaženje
- Pravilo 4: ukupna neravnoteža između tamnih i svijetlih modula