转载请注明出处
1.1掩膜版的种类
QR码的掩膜版一共8种。他是在数据字和纠错字都在矩阵中填充完后,选择掩膜版类型与消息字(数据字和纠错字)XOR后的出的矩阵即为最终的QR码所展现的图案。
图1.1展示的是掩膜图案生成的条件
下面图形是对应的Mask Pattern。
1.2�最佳Mask的选取
对于QR code的掩膜版(mask)一共有8种。在实际运用中如何从这8种掩膜版中给自己设计的二维码选择最佳的mask呢?(先将这8中掩膜版与二维码矩阵数据异或,然后再根据以下四点去选择)
其实对于mask的选取应当遵守以下四点。这四点也是官方评估一个二维码图案的标准。原文来源于此处。
1.逐一检查每一行,在一行中连续5颜色相同的模块,加3,连续相同颜色模块超过5个以上,每增加一个,就加1。然后将每行中计算的数值加在一起,即为评判标准1的值。Eg1.
2.在二维码图像上寻找模块颜色相同的区域(最小为2×2的区域),然后代入公式3×(m-1)×(n-1)(这是一个m×n区域),将所有满足的区域代入公式所得的值全部相加起来。,即为评判标准2的值。Eg2.
3.寻找图案中dark-light-dark-dark-dark-light-dark-light-light-light-light图案(行/列都要计数),如图1-1所示样式的两种图案,没找出一个图案,加40。即为评判标准3的值。Eg3.
4.该评判标准是light与dark的比率。Eg4.
①计算二维码矩阵中的模块总数(totalmodules)
②计算矩阵中dark的数目(darkmodules)。
③计算矩阵中dark的模块的百分比:
(darkmodules/ totalmodules)* 100
④确定百分之五的前一个和下一个倍数。例如,43%,前一个百分之五的五倍是40%,而后一个百分之五的倍数是45%。
⑤从这百分之五的倍数中减去50,并取结果的绝对值。例如| 40 - 50 | = | -10 | = 10和| 45 - 50 | = | -5 | = 5。
⑥将上一步的值分别除以五。例如,10/5 = 2和5/5 = 1。
⑦最后,取上一步中最小的数字乘以10,即为评判标准4的值。在此示例中,较小的数字为1,因此结果为10.这是评判标准4(#4)的值。
另一个例子,在下图中,模块总数为441,暗模块总数为235。
黑暗模块的百分比是(235/441)* 100≈53.2879
��以前的五分之一是50,五的下一个五分之一是55。
减去50,取绝对值:
| 50 - 50 | =0
| 55 - 50 | = 0
将每一个除以五:
0/5 = 0
5/5 = 1
这两个数字中的最小值为0.乘以10,这仍然为0.因此,在本例中惩罚分数#4为0。
附录
QR码的掩膜版一共8种。他是在数据字和纠错字都在矩阵中填充完后,选择掩膜版类型与消息字(数据字和纠错字)XOR后的出的矩阵即为最终的QR码所展现的图案。
��� �c҈z