Mặt nạ làm gì
Sau khi đặt các bit dữ liệu và sửa lỗi, một số vùng có thể có những dải dài cùng màu hoặc hình dạng giống ô định vị. Mặt nạ khắc phục việc này bằng cách đảo các mô-đun ở nơi một công thức đơn giản đúng, giúp phân bố tối và sáng đều hơn.
Mặt nạ chỉ áp dụng cho vùng dữ liệu và sửa lỗi. Các ô định vị, mẫu đồng bộ và căn chỉnh, thông tin định dạng và phiên bản, cùng mô-đun tối không bao giờ bị che mặt nạ.
Tám mặt nạ
Các mặt nạ được đánh số từ 000 đến 111. Mỗi mặt nạ được định nghĩa bằng một điều kiện trên hàng i và cột j của mô-đun; nơi điều kiện đúng, mô-đun đó bị đảo. Đầu đọc biết số mặt nạ từ thông tin định dạng và áp dụng lại đúng mặt nạ đó để hoàn nguyên.
- 000: (i + j) mod 2 = 0, dạng bàn cờ
- 001: i mod 2 = 0, các hàng xen kẽ
- 010: j mod 3 = 0, cứ ba cột một cột
- 011: (i + j) mod 3 = 0, các sọc chéo
- 100 đến 111: các tổ hợp phức tạp hơn của hàng, cột và tích
Chọn mặt nạ tốt nhất thế nào
Bộ mã hóa thử cả tám mặt nạ và chấm điểm mỗi kết quả bằng bốn quy tắc phạt. Mặt nạ có tổng điểm phạt thấp nhất được dùng, giúp mã hoàn thiện dễ đọc hơn với camera.
Một số trình tạo mã bỏ qua bước đánh giá đầy đủ và dùng một mặt nạ cố định, cách này vẫn tạo mã hợp lệ nhưng có thể hơi khó quét hơn. Mã Micro QR dùng một tập nhỏ hơn gồm bốn mặt nạ với quy tắc chấm điểm riêng.
- Quy tắc 1: các dải dài cùng màu trên một hàng hoặc cột
- Quy tắc 2: các khối 2 × 2 cùng màu
- Quy tắc 3: các mẫu giống tỷ lệ ô định vị 1:1:3:1:1
- Quy tắc 4: sự mất cân bằng tổng thể giữa mô-đun tối và sáng