Τι κάνει το μασκάρισμα
Αφού τοποθετηθούν τα bit δεδομένων και διόρθωσης σφαλμάτων, κάποιες περιοχές μπορεί να καταλήξουν με μεγάλες διαδοχές ενός χρώματος ή σχήματα που μοιάζουν με μοτίβα εντοπισμού. Το μασκάρισμα το διορθώνει αναστρέφοντας μονάδες όπου ισχύει ένας απλός τύπος, κάτι που μοιράζει πιο ομοιόμορφα το σκούρο και το ανοιχτό.
Η μάσκα εφαρμόζεται μόνο στην περιοχή δεδομένων και διόρθωσης σφαλμάτων. Τα μοτίβα εντοπισμού, χρονισμού και ευθυγράμμισης, οι πληροφορίες μορφής και έκδοσης και η σκούρα μονάδα δεν μασκάρονται ποτέ.
Οι οκτώ μάσκες
Οι μάσκες αριθμούνται από 000 έως 111. Καθεμία ορίζεται από μια συνθήκη για τη γραμμή i και τη στήλη j μιας μονάδας· όπου ισχύει η συνθήκη, εκείνη η μονάδα αναστρέφεται. Ο αναγνώστης μαθαίνει τον αριθμό της μάσκας από τις πληροφορίες μορφής και εφαρμόζει ξανά την ίδια μάσκα για να την αναιρέσει.
- 000: (i + j) mod 2 = 0, ντάμα
- 001: i mod 2 = 0, εναλλασσόμενες γραμμές
- 010: j mod 3 = 0, κάθε τρίτη στήλη
- 011: (i + j) mod 3 = 0, διαγώνιες ρίγες
- 100 έως 111: πιο σύνθετοι συνδυασμοί γραμμών, στηλών και γινομένων
Πώς επιλέγεται η καλύτερη μάσκα
Ο κωδικοποιητής δοκιμάζει και τις οκτώ μάσκες και βαθμολογεί κάθε αποτέλεσμα με τέσσερις κανόνες ποινής. Χρησιμοποιείται η μάσκα με τη χαμηλότερη συνολική ποινή, κάτι που κάνει τον έτοιμο κωδικό ευκολότερο για τις κάμερες.
Κάποιοι δημιουργοί παραλείπουν την πλήρη αξιολόγηση και χρησιμοποιούν σταθερή μάσκα, που παράγει και πάλι έγκυρο κωδικό αλλά ίσως λίγο δυσκολότερο στη σάρωση. Οι κωδικοί Micro QR χρησιμοποιούν μικρότερο σύνολο τεσσάρων μασκών με δικό τους κανόνα βαθμολόγησης.
- Κανόνας 1: μακριές διαδοχές του ίδιου χρώματος σε γραμμή ή στήλη
- Κανόνας 2: μπλοκ 2 × 2 ενός χρώματος
- Κανόνας 3: μοτίβα που μοιάζουν με την αναλογία εντοπισμού 1:1:3:1:1
- Κανόνας 4: συνολική ανισορροπία ανάμεσα σε σκούρες και ανοιχτές μονάδες