这 15 位包含什么
字段以 5 个数据位开头:2 位表示纠错等级,3 位表示掩模图案编号。之后再加上 10 位 BCH 纠错码,构成 BCH(15,5) 码。
得到的 15 位结果再与固定图案 101010000010010 做异或。这样可以避免该字段全部为浅色,否则可能让寻找二维码边缘的读取器发生混淆。
- 纠错等级位:L = 01,M = 00,Q = 11,H = 10
- 掩模图案:3 位,000 到 111
- 纠错:10 位 BCH 码
- 固定的异或掩模:101010000010010
存放在哪里
一份围绕着左上角的定位图案,位于紧邻其分隔带的那一行和一列。第二份分成两段,一段在右上定位图案下方的区域,另一段在左下定位图案旁边的区域。
有两份,意味着即使一个角损坏,二维码仍能解码。左下那一份旁边有一个始终为深色的模块,称为深色模块,它不属于数据。
为什么最先读取它
扫描器必须先知道该去除哪种掩模,以及码字如何在数据与纠错之间划分,才能解码数据。格式信息回答了这两个问题,所以在定位到定位图案之后就立刻读取。Micro QR 码只用一个 15 位的格式字段,它同时还编码了符号的版本。