【发布时间】:2019-08-04 10:56:27
【问题描述】:
我正在按照thonky.com 中的说明实施二维码生成算法,并且我正在尝试理解其中一种情况:
如this page 所述,在得到整个代码中暗模块的百分比后,我应该取两个最接近的五的倍数(例如 45 和 50 表示 48%),但是如果百分比是 5 的倍数呢?例如 45.0?应该取什么数字? 45? 40和50? 45和40? 45和50?完全不同的东西?我在任何地方都找不到任何答案...
非常感谢您的帮助!
【问题讨论】:
我正在按照thonky.com 中的说明实施二维码生成算法,并且我正在尝试理解其中一种情况:
如this page 所述,在得到整个代码中暗模块的百分比后,我应该取两个最接近的五的倍数(例如 45 和 50 表示 48%),但是如果百分比是 5 的倍数呢?例如 45.0?应该取什么数字? 45? 40和50? 45和40? 45和50?完全不同的东西?我在任何地方都找不到任何答案...
非常感谢您的帮助!
【问题讨论】:
确实,Thonky 教程在这方面并不清楚,所以让我们转向官方标准(在 ISO 付费墙后面,但 easy to find online)。第 8.8.2 节,第 52 页,表 24:
评估条件:50 ± (5 × k)% 至 50 ± (5 × (k + 1))%
点数:N₄ × k
这里,N₄ = 10,并且
k 是符号中暗模块的比例偏离 50% 的等级,步长为 5%。
因此,对于正好 45% 的暗模块,k = 1,导致 10 分的惩罚。
另外请注意,如果你稍微弄错了也没关系。因为掩码图案标识符是在格式字符串中编码的,所以即使您不小心选择了稍微次优的掩码图案,阅读器仍然可以解码 QR 码。
【讨论】: