全球每天消耗上百亿个二维码,一旦用完了怎么办?

再了解二维码数量之前,我们先了解二维码的原理。

二维码的原理

二维码其实就是由0、1组成的二进制,我们看到的二维码每个方块,都有意义,其中白色的方块代表0,黑色方块代表1。

而我们日常用的比较常见的是37*37的格子,其中三个角都有一个固定的方块,这个方块的大小是固定的,是用于识别时,方便定位二维码防线的用途。大小有7*7个像素点。

所以,37*37的二维码格子,可以产生37x37-49x3=1222个格子,又因为每个格子仅仅代表0或1两种情况,因此,共有2^1222种排列组合情况,也就是说,一个37*37的二维码格子,可以产生2^1222个二维码。

可能这样说,大家没概念,我们可以和全世界的人口做个对比,根据世界人口时钟比较,截止到2019年10月20号下午3点13分,目前全世界人口大概为7744402531人(77.44亿人),如果想要用完所有的二维码,大概每个人需要用完10^(292)个,并且还有非常多的剩余。

还有,我们宇宙中有非常多的基本粒子,甚至每个人体内都有上万亿个中微子穿过,由此可知宇宙中的粒子数是多么的恐怖。据科学家推算,全宇宙中的粒子数大概有3.28×10^80(肯定有误差,这已经是非常保守的估计),而二维码比全宇宙中所有的粒子加起来还要多。

由此可见,二维码虽然是有限多的,但却用不完。

而37*37的二维码只是其中一种,还有40*40,21*21等40多种规格,因此不用担心二维码被消耗完的问题。

识别二维码的原理

二维码虽然在人类看来像天书一样,并且每个二维码看起来都差不多,但在机器眼里,每个二维码都不相同。

首先白色之所以是白色,是因为它能反射各种波长的可见光,而黑色则相反,能吸收所有波长的可见光。所以当机器在靠近二维码并识别时,机器会根据不同的波长判断这个格子是白色还是黑色。

由于黑色和白色代表着不同的数字“0”“1”,所以机器也会自动识别出这个二维码不同的排列方式,其实还要注意一点,机器在识别图形时,会由于各种原因出现差错,而二维码之所以很少出错是因为它自身储存一定容量的纠错率。

比如我说:“我有一个苹果”,当你听错一个字之后,你可能会误解我的意思,但如果我说:“我有一个苹果,英文名叫apple,乔布斯用它做手机的名字……”等等,看似一大堆的废话,你再识别我的信息时,就很难出错了。二维码也有一些方格,对应的是这些废话,防止识别错误。其实这也是信息学的香农第三定理。

当机器识别出二维码不同的排列方式之后,然后就会像我们打开网页一样,每个不同的排列方式,对应着不同的“网页”,而这个网页被人们提前编撰过信息,所以识别出这个“网页”时,对应的信息也会被识别出来。

因此,二维码不仅能包含简单的价格,也可以包含一个网页,一个自我介绍,一份简历等等任何你想输入进去的东西。