二维码为什么有三个角的方块

彩虹洋葱 · 2026-11-03 · 一分钟科普
扫了十年二维码,你可能从没注意过:它三个角上有三个大方块,唯独右下角没有。缺的那一角,就是你的手机知道该从哪个方向扫的秘密。

先认识二维码

二维码本质上是一张二维的信息表格:黑块代表1,白块代表0,横竖两个方向都能存数据。一张二维码最多能塞下1800个汉字,或者一个网址、一张名片、一张优惠券。它之所以能风靡全球,靠的是容量大、容错高、成本零——印在纸上就能用。

三个定位角

回到那三个方块。它们叫位置探测图形,是二维码的定位角。你扫码的时候手机摄像头可能是歪的、斜的、倒的——正是这三个7×7的回字方块,让算法瞬间算出二维码在画面里的位置和旋转角度。三个点确定一个平面,这是几何学里最基础的原理:知道三个角的位置,整个方块的方向就锁死了。

为什么右下角没有

那为什么第四个角不放?因为三个点已经够了——第四个角的位置可以由另外三个推算出来,放了纯属浪费。省下的右下角区域被用来放校正图形和版本信息:小二维码不需要,大二维码靠它在变形时修正畸变。工程师的抠门,用到了极致。

30%容错

二维码还有个神技:哪怕缺一块也能扫出来。它用里德-所罗门纠错算法存了冗余数据——最低7%、最高30%的容错。也就是说你可以把 logo 印在二维码中间,可以把二维码弄脏一角,甚至可以把三个定位角以外的地方抠掉一大块,它照样能还原。你的收款码贴在油乎乎的墙上还能用,就是它的功劳。

发明人的放弃

最传奇的是发明人的故事。1994年,日本电装公司的工程师原昌宏为了追踪汽车零件,发明了二维码。但他没有申请专利维护——他故意让它免费开放,因为他希望越多公司用越好。三十年过去,二维码成了全球基础设施,而原昌宏没有从中赚到一分钱专利费。他说:让更多人使用,才是它的价值。

失效的秘密

最后解个疑惑:为什么有的二维码会过期?二维码本身只是个死链接,扫出来的是它背后的网址——网址失效,二维码就成了黑白噪点。火车票的二维码每次检票后更新密钥,付款码每分钟自动刷新,靠的都是后台那头的动态,不是纸上的方块变了。方块还是那个方块,世界在它背后变了。

下次扫码,记得看它一眼:那三个方块,是你和机器之间三十年的默契。
关注彩虹洋葱,了解更多有趣的人和事。