转载

二维码为什么不用对正了就能扫?残缺的也能扫出来?

作者:虎龙吟

随着智能手机和微信的普及,带动了一项新技术——二维码的流行。现如今,二维码几乎随处可见,我们的日常生活,不管是吃饭、看电影、购物,还是下载APP、加好友、入群,几乎都能通过二维码来简单快速的实现。

设想一下,当寒风中别人排着长队焦急等待,而你扫一下二维码就进去了,那是什么感受?可以说,二维码的出现,大大的方便了我们的生活,提高了效率。

二维码为什么不用对正了就能扫?残缺的也能扫出来?

那么,二维码到底是何方神圣,它是怎么完成这种看似五花八门、各行各业之间业务的连接和交互的呢?

其实, 所谓二维码,通俗的讲,就是记录着一组二进制数据的图形 。通过它,连接了扫码人和二维码提供方之间的交流互动。

当然,现在的二维码已经形成了自己的技术规范,就是大家日常所看到的:正方形,左上、右上和左下有个“回”字图案,其他地方是由点和空白构成。

那么,问题来了:这些成千上万、肉眼看着都很相似的二维码,机器到底是如何识别和区分的呢?

其实很简单。前面提到了二维码的形状规范,其中, 三个角上的 “回”字图案,就是用来判断二维码的关键位置和定位信息的 。有了它们,扫码器就能确定二维码的图形范围和相对位置。

二维码为什么不用对正了就能扫?残缺的也能扫出来?

而二维码的其他区域,还包括定位图形、校正图形、格式信息、版本信息、纠错码等,当然主要区域的图形,就是这个二维码最核心的信息数据了。正是通过识别这些信息数据,决定最终的业务或动作是什么。

有了二维码,剩下的事情就是打开手机扫码。 所谓“扫码”,其实就是手机摄像头不断对焦、采集二维码图像并进行判断识别的过程。 原则上说,二维码越简单,信息数据越少,识别越容易,扫码速度就越快。一般而言,当前阶段的主流手机,识别速度都在几毫秒到十几毫秒之间。

顺便说一句,现在几乎绝大多数人扫码,都是用微信的扫一扫功能。但事实上,其他二维码扫描器都能实现扫码,只是因为如今微信太流行、大家用着太习惯了而已。

这里要特意提到我们日常扫码中有趣的两个现象。

其一,二维码歪着扫倒着扫都可以!

二维码为什么不用对正了就能扫?残缺的也能扫出来?

我们可能也觉察到了,就是平时我们扫码时,可能手机摄像头并不是横平竖直正对着二维码的,但没关系,手机照样“滴”的一声,识别了出来。哈哈,可能处女座、强迫症们表示不服!

这就是前面提到的那三个“回”字立功了!系统通过判断这三个“回”字的相对位置,会自动把你扫得歪歪的二维码“扶正”,再结合校正信息等就能依然正常识别。

其二,就算是有损坏的二维码也能扫。

是的,我们可能日常使用时也发现了,有些二维码,比如有点污损、模糊、缺失、穿孔等情况,最后居然还是被强大的你给扫出来了?

二维码为什么不用对正了就能扫?残缺的也能扫出来?

不过,这可不是因为你的手机摄像头厉害哦!原来,二维码中都会放置纠错编码,而且,出于扫码成功率考虑,还会加入冗余信息(也就是在不同位置重复放置信息数据)。所以,即使二维码某个局部损毁或不清晰,但只要从其他部分依然能读取识别到完整信息数据,就依然可以扫码成功。当然了,如果损毁太多(一般不超过30%都有戏),那就神仙也难救了。

写到这里,你应该知道二维码是怎么一回事了吧。

其实,我们和世界的距离,就隔着一个二维码。

更多精彩内容,请关注 虎龙吟 百家号|微信公众号: hulongyin8

欢迎爆料、商务合作:001net@sina.com

赠人玫瑰,手留余香。好内容,多分享。

原文  http://chenyongjun.baijia.baidu.com/article/763338
正文到此结束
Loading...