二维码在不知不觉中嵌入我们的日常。早上出门扫码一辆共享单车;中午吃饭查看电子菜单;晚上逛超市,结账时出示付款码;更别提乘坐公交地铁、交换微信好友……如今,二维码似乎成了生活的标配。
于是,有人提出了这样的担忧:“据说,全球每天消耗 100 亿个二维码,二维码会不会很快被用完。”
实际上,有关全球二维码的每日消耗数量,并没有官方的数据
理论上来说,二维码的数量是有限的,同时出于安全考虑,几乎不会发生重复利用的情况。不过不用担心,因为在可预见的未来,二维码被消耗殆尽的情况几乎不会发生。
二维码又称二维条码,它通过将多个几何图形按照一定顺序排列,来达到记录和存储信息的目的。二维码与通常只能在水平方向上存储信息的条形码不同,它可以在水平和垂直两个维度上存储信息,这也是它叫“二维”的原因。
计算机的运行逻辑是“ 0 ”和“ 1 ”组成的比特流,二维码的运行原理同样基于此。
将二维码放大,不难发现,它其实是由多个小方块组成的。通常情况下,白色方块代表“ 0 ”,黑色方块代表“ 1 ”,不同方块的排列组合就实现了不同信息的存储。
尽管每张二维码长得不一样,但它们却拥有一些相同的图案或者相似的区域。下面以日常生活中最常见的 QR 型二维码为例,向大家介绍。
仔细观察,我们能发现,每张二维码的左上角、左下角和右上角都有特别显眼的矩形。这三个大矩形叫“定位图案”,可以帮摄像头快速找到二维码。有时我们扫码还没有完全对准,就“哔”地扫出了内容,凭借的就是这些定位图案。
三个定位图案之间,有两条由黑、白方块依次交替排列组成的线。它们被称为“定时图案”,可以让读取器有个谱,大概知道这张码尺寸有多大。
二维码还有一些固定区域,比如用来确立边界的“空白区域”、提示二维码属于哪种版本的“版本信息区域”,以及揭示容错空间等信息的“格式信息区域”。
除去上述这些,剩下的部分就是“信息存储区”了。由于二维码是通过将不同色块排列组合来存储信息的,那么想要回答“二维码会不会被用尽”这个问题,我们就先来看看这些黑白色块一共有多少种排列组合方式。
以 25╳25 色块的二维码为例子,除去固定图案、区域后,还剩下了 478 个方块。每个方块可以是黑色或者白色,所以共有 2478 种组合。
宇宙诞生至今大概 137 亿年,假设人类在宇宙诞生后的每天都使用 100 亿个二维码,那么一共会用掉大约 5╳1022 个二维码,这也只占 2478 种组合中很小的比例。
每增加一个版本,就比前一版本每边增加4个模块。公式是:(V-1)*4+21(V是版本号)
更不要说,25╳25 色块的二维码只是众多版本之一。QR 型二维码总共有 40 个版本,最小版本是 21╳21 色块的矩阵,最大版本是 177╳177 色块的矩阵。以最大版本为例,它的色块排列组合几乎等于无穷大,所以根本不用担心二维码会有被用光的那天。
纵观历史,人类创造二维码就是为了获得用之不竭的存储容量。如今最常用的 QR 型二维码,是由日本工程师原昌宏设计出来的。
有一次在火车上看车窗外的建筑,发现一户人家的窗框和其他家都不相同,格外显眼,原昌宏由此想出了“定位图案”的设计
QR 型二维码还有很多兄弟姐妹:比如形状为长条形的 PDF417 码、没有定位图案的 DM 码、由六边形组成的 maxicode 码……每个型号的二维条码都仿佛是个巨大的“宇宙”。
二维条码大家族
现在问题来了,你每天大概会用几张二维码?
来源:上海杨浦