找回密码
 注册
关于网站域名变更的通知
查看: 727|回复: 2
打印 上一主题 下一主题

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

[复制链接]
  • TA的每日心情
    开心
    2020-7-31 15:46
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2021-4-28 09:31 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    本帖最后由 love1 于 2021-4-28 09:33 编辑   \0 i4 m) F5 s( `. s* V2 T

    % J. @4 F5 L! Y
    我们每天都会扫大量的二维码,乘坐地铁需要扫描二维码、付款时需要扫描二维码,那你有没有想过,二维码到底是怎么被识别出来的呢?
    虽然每一个二维码都是不同的样子,但它们本质上都是由无数个黑色小方块和白色小方块组成。二维码虽然看起来就是一坨正方形的东西,但实际上我们可以根据它们的功能将其分别理解为定位区、储存区以及格式区,我们用不同的颜色将它们区分开来。如下图。
    首先是定位区由三个大的方块儿,以及两条与其他区域藏在一起的直线组成。无论是二维码内储存的任何信息,手机在照射到二维码时,首先便通过识别这三个方块进行定位,确定二维码的范围和方向。通过定位之后,我们无论用任何角度去扫机器,都能对二维码进行准确的识别。
    除去定位区,剩下的部分全部由造型规整的黑白方块组成,就是数据储存的区域。在这里,我们就要提一下二进制。我们都知道在计算机上所有的信息都由数字01交替组成。而在二维码中黑色小方块代表了1,白色小方块代表了0。数据信息在不同的编码规则中,按照着01交替组成。假如在使用的二进制编码,中英文数字O的二进制排列是01001111。那么在二维码中就有一个白色方块,一个黑色方块,两个白色方块和四个黑色方块依次组成。手机对着一扫以八个方块为主,由右下角开始依次读取,并把这些黑白方块转换为01。再将其识别为二进制数字序列,然后进行编码,便能知道二维码中的信息了。当然这只是一个简单的原理,具体实际应用中整个识别的运算过程会更加复杂一些。
    说到这,二维码中的信息就被提取出来了。我们刚刚还提到一个格式区,这是干什么的呢?实际在识别方面呢,二维码还包含了一定的容错机制。数据序还可以做更细的划分,将其中一部分划出来作为容错区域。当二维码出现破损和遮挡时,容错区的数据备份便可以作为补充辅助识别。而根据容错区域的大小,我们可以将二维码的容错等级分为四级,大小由7%30%不等,区域越大,容错率自然越高。储存区域也会相应减小,而这个容错等级就被藏在了格式区内。那么在识别前,机器就需要先对格式区进行扫描。了解到二维码的容错等级后,再对内容进行准确识别。
    除此之外,二维码还根据大小分为了四十个不同的版本,不同的大小可以包含的数据多少也不尽相同。在格式区内也包含了二维码大小的版本信息。机器在识别前也会对这一部分提前扫描识别。在实际应用中,二维码的识别顺序是按照定位去进行定位,格式去预识别二维码信息,最后在储存区读取二维码数据的顺序进行的。

    ! S) x/ a5 {. `+ N) P
  • TA的每日心情
    开心
    2020-7-31 15:46
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
     楼主| 发表于 2021-4-28 10:54 | 只看该作者
    自己顶一下。其实二维码,也是由0101这样的数字来的,我们扫的其实也就是0101.

    点评

    是的,楼主,其实二维码扫的就是0101数字信号类似。  详情 回复 发表于 2021-4-28 10:55

    该用户从未签到

    3#
    发表于 2021-4-28 10:55 | 只看该作者
    love1 发表于 2021-4-28 10:544 Z. S- y/ X* ?/ q, U+ M! y0 G
    自己顶一下。其实二维码,也是由0101这样的数字来的,我们扫的其实也就是0101.
    8 \2 W/ c4 f  c3 `
    是的,楼主,其实二维码扫的就是0101数字信号类似。
    4 D, ^& X# q' {- r2 A2 O2 A0 z
    2 }4 A! F/ {. w6 I+ M+ [+ }% Z
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-22 13:24 , Processed in 0.109375 second(s), 30 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表