专栏中心

EEPW首页 > 专栏 > 二维码究竟是怎么被扫出来的

二维码究竟是怎么被扫出来的

发布人:电巢 时间:2022-11-27 来源:工程师 发布文章
image.png


我们每天都会扫大量的二维码,乘坐地铁需要扫描二维码、付款时需要扫描二维码,那你有没有想过,二维码到底是怎么被识别出来的呢?

image.png


虽然每一个二维码都是不同的样子,但它们本质上都是由无数个黑色小方块和白色小方块组成。二维码虽然看起来就是一坨正方形的东西,但实际上我们可以根据它们的功能将其分别理解为定位区、储存区以及格式区,我们用不同的颜色将它们区分开来。如下图。

image.png


首先是定位区由三个大的方块儿,以及两条与其他区域藏在一起的直线组成。无论是二维码内储存的任何信息,手机在照射到二维码时,首先便通过识别这三个方块进行定位,确定二维码的范围和方向。通过定位之后,我们无论用任何角度去扫机器,都能对二维码进行准确的识别。

除去定位区,剩下的部分全部由造型规整的黑白方块组成,就是数据储存的区域。在这里,我们就要提一下二进制。我们都知道在计算机上所有的信息都由数字0和1交替组成。而在二维码中黑色小方块代表了1,白色小方块代表了0。数据信息在不同的编码规则中,按照着0和1交替组成。假如在使用的二进制编码,中英文数字O的二进制排列是01001111。那么在二维码中就有一个白色方块,一个黑色方块,两个白色方块和四个黑色方块依次组成。手机对着一扫以八个方块为主,由右下角开始依次读取,并把这些黑白方块转换为0和1。再将其识别为二进制数字序列,然后进行编码,便能知道二维码中的信息了。当然这只是一个简单的原理,具体实际应用中整个识别的运算过程会更加复杂一些。

image.png


说到这,二维码中的信息就被提取出来了。我们刚刚还提到一个格式区,这是干什么的呢?实际在识别方面呢,二维码还包含了一定的容错机制。数据序还可以做更细的划分,将其中一部分划出来作为容错区域。当二维码出现破损和遮挡时,容错区的数据备份便可以作为补充辅助识别。而根据容错区域的大小,我们可以将二维码的容错等级分为四级,大小由7%到30%不等,区域越大,容错率自然越高。储存区域也会相应减小,而这个容错等级就被藏在了格式区内。那么在识别前,机器就需要先对格式区进行扫描。了解到二维码的容错等级后,再对内容进行准确识别。

image.png


image.png


除此之外,二维码还根据大小分为了四十个不同的版本,不同的大小可以包含的数据多少也不尽相同。在格式区内也包含了二维码大小的版本信息。机器在识别前也会对这一部分提前扫描识别。在实际应用中,二维码的识别顺序是按照定位去进行定位,格式去预识别二维码信息,最后在储存区读取二维码数据的顺序进行的。


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词: 二维码

相关推荐

快速响应矩阵码

二维码背后的专利之争:专家呼吁加强知识产权保护

2017-06-30

二维码支付终于有了国际标准:中国银联背后促动

2017-07-17

基于FPGA的二维码图像旋转系统

资源下载 2012-11-05

艾迈斯欧司朗LED产品搭配二维码(Data Matrix)技术,帮助汽车制造商简化生产流程

Data Matrix二维码图像处理与应用

安卓手机扫描二维码有新招,谷歌利用机器学习实现远距离自动放大

瑞萨AI视觉识别方案应用笔记2

工控自动化 2021-09-03

富士通最新传输技术:对准资料就能完成文件传输

2017-10-27

智能马桶暖风烘干器检测系统设计

二维码和 NFC短兵相接,技术含量更高的NFC为啥更被动?

模拟技术 2017-08-28

原来二维码技术是日本的 中国技术正崛起

2017-03-22

苹果将支持Apple Pay通过扫描二维码进行付款

更多 培训课堂
更多 焦点
更多 视频

技术专区