这是一个所有人都用过、却几乎没人「看见」过的技术:早餐摊上扫一下,登机牌上印一张,Excel 里导出一张,连流浪猫的耳朵上都贴着一张。二维码(QR Code)每天在全球被扫描的次数是个天文数字,但如果随机拉一个人问「它为什么被涂黑一角还能扫出来」「为什么三个角都有个小回字」,答案基本是「不知道,反正能用」。
把这件事讲得最透的,是 Branch Education 的《How do QR Codes Work?》。这条视频用频道标志性的 3D 动画,把一张二维码当成标本放上解剖台:三个回字怎么当「锚点」、数据怎么蛇形填进去、Reed-Solomon 纠错码怎么让它在油污和破损里活下来。它解决的是一个典型的「熟视无睹」问题——你以为的黑白贴纸,其实是一套在噪声信道上可靠传输信息的微型通信系统。看完它,你对扫码、支付码、防伪甚至数据备份的理解都会上一个台阶。
先交代一句:本轮写作环境的实时抓取通道受限,视频页的标题、时长、播放量未能在线核验,下文卡片中标注为记忆值;正文涉及的二维码原理属教科书级稳定知识,不受此影响。
| 项目 | 内容 |
|---|---|
| 视频标题 | How do QR Codes Work?(以频道内检索为准) |
| 频道 | Branch Education(3D 工程可视化科普频道,订阅百万级) |
| 发布时间 | 2023 年前后(记忆值,未经实时核验) |
| 时长 | 约 20 分钟(记忆值,未经实时核验) |
| 播放量 | 频道头部代表作之一,千万级(记忆值,未经实时核验) |
| 核心主题 | 二维码的结构解剖:定位、编码、掩码与纠错机制 |
说明:本文以视频核心论点为骨架,结合公开的技术规格与工程常识展开,凡属我的延伸分析均已单独标注,未逐句复述视频原话。
频道背景多说一句:Branch Education 的路数是把「黑盒设备」用 3D 动画一颗颗螺丝拆开——本专栏此前深读过的 GPU、CPU、存储层级、JPEG 压缩都出自它手。这条二维码篇是它「信息编码」方向上的代表作之一,看之前建议开最高画质。
故事从 90 年代的日本工厂讲起。丰田的供应商电装(Denso Wave)有个日常烦恼:一维条码只能横向编码,容量撑死二十来个字符,扫一个零件要贴好几张码,还得对得很准。1994 年,工程师原昌宏(Masahiro Hara)带团队发明了 QR Code——Quick Response,名字就直接把设计目标写在了脸上:快。二维方向同时编码之后,容量直接跳到最高约 7000 位数字、4000 多个字母数字(以 version 40 为上限),还能装汉字,而且可以超高速识读。(延伸分析) 这里有个容易被忽略的产品洞察:QR 不是「把条码拍扁再排一排」的蛮力扩容,而是重新定义了读取方式——一维码要「扫」,二维码是「拍」,前者对准精度要求高,后者直接以图换图。你今天能歪着手机 0.5 秒付完钱,源头就是当年这个「拍下来再算」的思路。
二维码最显眼的特征,是左上、右上、左下三个角的回字形图案。视频把这块讲得非常清楚:它叫 finder pattern(定位图案),黑白比例严格遵循 1:1:3:1:1——正因为这个比例在整张图里几乎不可能偶然出现,扫描器可以在画面里快速「认出」这三个记号,进而确定整张码的位置、大小和旋转角度。据 Denso Wave 官方的历史介绍,原昌宏团队当年是从围棋棋盘的黑白交错中获得的灵感,光这一项就耗掉了漫长的试错时间。除了三个大锚点,还有细小的 timing pattern(时序图案)负责定出网格坐标,以及尺寸较大时才出现的 alignment pattern(校正图案)负责矫正拍摄时的透视变形。(延伸分析) 这其实是协议设计里非常高级的思想:让数据自带「自我描述」能力。图纸上先画出坐标系,再往坐标系里填内容——好的接口、好的文件格式、好的通信协议,都是这个套路。
定位解决了「在哪看」,接下来是「看什么」。视频里有一段非常治愈的动画:数据从右下角开始,沿着两列宽的蛇形路线一路向上填充,每 8 个模块组成一个基本单元(codeword)。填充之前还有一步「选编码模式」:数字模式最省(3 位数字只要 10 个比特),字母数字、字节、日文汉字各有专门模式,同一条内容会按需混用,能省则省。真正反直觉的是掩码(masking)这一步:直接填好的图案可能出现大片空白、或者「长得像定位图案」的假回字,干扰识别,所以规格定义了 8 种掩码模板,逐一叠加后打分,选黑白分布最均匀、最不「撞脸」定位图案的那一版。(延伸分析) 这一步是防御性设计的教科书案例——它防的不是「正常输入」,而是最坏情况。写代码时处理空值、限流、防重放,本质上都是在做二维码的「掩码」:不是让系统在理想输入下好看,而是在烂输入下不翻车。
二维码最神奇的特性——中间印个 logo、破个洞、沾点油也能扫——来自 Reed-Solomon 纠错码。这套 1960 年由 Irving Reed 和 Gustave Solomon 发明的数学工具,能从含错数据里把原始信息完整还原出来。二维码提供四档纠错:L 级约可恢复 7% 的数据,M 级 15%,Q 级 25%,H 级高达 30%。更妙的是存放方式:数据与纠错码不是各占一边,而是交织打散着填进整张图,这样局部损伤摊薄到全图,任何区域坏一点都有救。RS 码的战绩横跨半个数字史:CD、DVD、DSL、数字电视,甚至飞出太阳系的旅行者号探测器传回的照片,用的都是它。(延伸分析) 所以「二维码中间能放头像」从来不是玄学,是产品经理把纠错档位从 L 拨到 H 的决策结果——纠错等级换的是空间利用率,H 档容量最小但最抗造。营销码追求识读率选 H,票据追求容量选 M,这背后是个典型的工程权衡题,不是技术高低题。
视频的后半段把扫描过程倒放了一遍,值得单独拎出来:摄像头取景 → 找到三个回字定位 → 透视矫正出采样网格 → 读取格式信息(拿到纠错档位和掩码编号)→ 按掩码还原、解调出比特流 → RS 纠错修复损坏数据 → 按编码模式解码成最终文字。每一步都在为下一步兜底:定位错了后面全错,所以定位做得最冗余;数据会坏,所以纠错码随身携带。整个过程快到让你以为「扫码」是一个动作,其实是六七道工序的流水线。(延伸分析) 这是我在这个视频里最喜欢的一个认知升级:所谓「鲁棒」,从来不是一个品质形容词,而是一条流水线上每一环的具体冗余设计。你做的高可用系统、你写的重试逻辑、你备份文件的多地存放,和二维码的三个回字是同一种东西——都是提前为「一定会有坏事发生」付的保险费。
视频以技术解剖为主,这里补一段使用层面的延伸分析。你在餐厅扫的支付码、地铁里扫的乘车码,多数是动态二维码:图里只存一个短链,扫了之后跳转到服务器换真实内容——所以商家能改价、能统计、能防重复核销。代价是二维码本身不携带安全属性:它只是个载体。现实中的「偷换码」骗局(用自己贴纸盖住商家的收款码)骗的不是二维码,是你的不经意;恶意二维码诱导跳转钓鱼页,骗的也是你的扫码反射弧。对应的动作清单其实很短:付款页面认商户名、不扫来路不明的码、贴在公共场合的码优先走「扫完输入金额再确认」的流程。技术再稳,最后一环永远是人。
很多人不知道,QR Code 的专利策略相当大方:据 Denso Wave 官网介绍,它基本开放了专利实施,只是保留「QR Code」商标——这也是二维码能全球疯长成基础设施的法律前提。三十年来它还长出了新枝:能塞进更小空间的 Micro QR、近年完成标准化的长方形 rMQR 等。(延伸分析) 为什么这条视频值得每个开发者看一遍?因为它演示了一种稀缺能力:在互相冲突的约束里做出优雅的设计。容量、识读速度、容错率、印刷密度,四个愿望互相打架,原昌宏团队的答案是定位冗余 + 分级纠错 + 掩码打分这套组合拳,每个决定都牺牲一点什么,最后整体刚好能用、耐用、好用。这种「承认噪声存在,然后系统性对抗它」的思维方式,比任何语法知识都保值——毕竟你写的每一行代码,也都是在噪声世界里传递信息。
flowchart TD
A["二维码的三层骨架"] --> B["定位系统"]
A --> C["编码系统"]
A --> D["纠错系统"]
B --> B1["三个回字锚点<br/>比例1比1比3比1比1"]
B --> B2["时序图案定网格"]
B --> B3["校正图案<br/>抗拍摄变形"]
C --> C1["先选编码模式<br/>数字最省比特"]
C --> C2["蛇形路线<br/>从右下填入数据"]
C --> C3["八种掩码打分<br/>选分布最匀的一版"]
D --> D1["Reed-Solomon<br/>纠错码"]
D --> D2["L M Q H<br/>四档容错"]
D --> D3["数据与纠错码<br/>交织打散存放"]
B1 --> E["随便转个角度<br/>都能秒识别"]
C3 --> F["黑白更均匀<br/>误读率更低"]
D1 --> G["盖住一角<br/>照样扫出来"]
扫码那一刻的流水线:
flowchart LR
S["取景"] --> F["定位"]
F --> R["矫形"]
R --> U["解调"]
U --> E["纠错"]
E --> T["解码"]
如果你做产品或运营:先把纠错档位当产品参数用——需要印 logo、用在易磨损场景(包装、户外)就上 H 档;纯线上展示、追求好扫就 M 档。二维码四周务必留足静区(quiet zone,约 4 个模块宽),挤掉静区的海报码是「看起来能用、实际上难扫」的重灾区。深色码配浅色底,别反色——很多扫描器对白底黑码的对比度有硬性假设。内容长就用动态短链,别把几百字符的 URL 硬塞成一张高密度码。
如果你是开发者:把这条视频当成「信道编码」的入门糖衣。想加深可以动手:Nayuki 的 QR Code 生成器教程从比特流一路讲到掩码打分,跟着写一遍,你对「数据如何自描述、如何容错」的理解会脱胎换骨。再往深一层,Reed-Solomon 的思想可以直接搬进你的工程实践——分布式存储的纠删码、文件分发的校验分块,都是同一套数学的不同马甲。
如果你只是普通用户:记住三件事就够了——付款前看一眼收款方名称;公共场所贴着的码,谨慎扫;自己打印的码,隔段时间掏出手机验一次「还能不能扫」。最后这条是工程师习惯:任何承载关键信息的介质,都值得一次恢复演练。
二维码最值钱的设计不是「装得多」,而是「坏得起」——定位、编码、纠错三层冗余,让一张黑白贴纸扛住了这个毛毛躁躁的世界。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
