昨晚在“世界最辣辣椒”的文章最后,本AI照常挂上了常用的二维码——

(我的妈呀为什么这么大)

在评论里,有位读者发现玄机:

说到做到,今天,本AI就来告诉你关于二维码的3个小秘密——

文/小行踪,安然

编辑/一个AI

二维码

未必都是黑白方块

开头那个全都是小点点的二维码,竟然也能扫出来?

这就要从二维码的原理说起了:

二维码的原理

二维码,就是在矩阵相应元素位置上用“点”表示二进制“1”用“空”表示二进制“0”,用“点”和“空”的排列组成一组二进制代码。

对应二维码的种类很多,什么PDF417码、汉信码、颜色条码等等……不过,现在大家所看到的二维码绝大多数是“QR码”,QR码是“Quick Response”(快速反应)的缩写,由Denso-Wave公司发明。大家都按照这个系统来编码、识码,就相当于用了同一套语言来交谈。

所以,在定位准确的前提下,只要机器读取到的那个部分有一个黑点——哪怕只是小小的黑点,都不妨碍它被识别为“1”,连一丁点儿小黑点都没有的地方自然就被识别为“0”了。这就是为啥这样奇怪的二维码也可以扫哟~

机器识别二维码,靠的是明暗差异。所以,二维码是不是小方块组成无所谓,但一定要用对比鲜明的颜色。如果你的二维码被设置成了深灰+浅灰,可能就很难识别到了哦……

二维码缺了一块

为什么也能扫?

关于二维码的第二个小秘密就是:即使遮挡一部分,你依旧能通过长按图片扫描到二维码。

不信你试试:

是不是都扫得出来?

这是为什么呢?这就要归功于QR码在发明时的“容错度”设计了

二维码生成器会将部分信息重复表示(也就是冗余)来提高其容错度。QR码在生成时可以选择四种程度的容错度(可修正的字码量),分别是L,M,Q,H,对应7%,15%,25%,30%的容错度。也就是说,如果你在生成二维码时选择H档容错度,即使30%的图案被遮挡,也可以被正确扫描。这也就是为什么现在许多二维码中央都可以加上LOGO,比如果壳~

强行科普一百年

打开网易新闻 查看精彩图片

打开网易新闻 查看精彩图片

不是什么正经号

——用别的东西代替Logo也不要紧哟~

……是不是!(花老师:“你这样不太好吧……”

但是

千万不要挡住……

虽然挡住一大块都不妨碍扫码,但是大家千万不要把QR码图案三个角上的“回字形”图案遮挡住,这就是第三个秘密,不,注意事项了!

那三个回字框,是帮助解码软件进行定位的位置检测符(Position Detection Patterns)。在较大的QR码中还会有几个小回字形,那是位置对齐符,与检测符的用处类似。

有了这几个回字形图案,你才可以从任何角度准确扫描二维码信息。

下次你加别人微信的时候不妨试试,扫对方二维码时,并不需要手机方向和二维码方向保持一致,甚至歪歪扭扭都无所谓,只要镜头能扫到这几个回字框,它都能顺利定位!

来,试试躺着的:

还有压扁的……

拉长的……

所以

为啥只有3个方框呢?

所以,让我们回到开始时的问题:

——废话,二维码是有方向的!4个框框都有了,电脑哪还认得出这个哪边是上啊!

不过呢……这3个框框,倒也不一定要是方形啦……

这是果壳精选的下载地址二维码:

嗯,好玩吗?

这里

本来应该有

二维码

然而

上面明明全都是

本文来自果壳网,谢绝转载

如有需要请联系sns@guokr.com

(欢迎转发到朋友圈~)