二维码识别技术解析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二维码识别技术解析
当你频繁和它照面的时候,你有没有过这样的好奇:为什么用手机扫一下就会看到一个“花花世界”?二维码的颜色为什么是黑白相间的呢?这些不规则几何图形中究竟藏着怎样的“秘密”?
常见的二维码上为啥三个角上有方块,这是三个定位点,图形旋转也不影响识别
要了解二维码的原理,我们先要来好好认识一下它。现在最常见的二维码是OR 二维码(OR是一种码制),我们便以它为例。
我们看一个二维码,最先看到的当然是几何图形。这些图形中,藏了不少重要的“部件”。南京邮电大学计算机学院副教授黄海平为我们做了详细分析。
首先,OR二维码的三个“角”上有三个方块,可别小瞧这方块,它叫位置探测图形。有了这三个点,不管是从哪个方向读取二维码,信息都可以被识别。即使将二维码图形旋转,也可以识别。也许你会问,为什么不是四个角上都有方块呢?事实上,是可以设更多的点,但几何知识告诉我们,3点就可以确定一个平面,节省出的一个角可以嵌入更多信息。
另外,二维码上还有一些图形混杂在几何图形中,是肉眼看不出来的,比如定位图形和分隔符。定位图形就是图中连接三个位置探测图形之间的两根“线”,它的作用是决定二维码符号中模块的坐标,而分隔符的作用是将位置探测图形与符号的其余部分分开。也就是说,通过扫描能读取的数据信息在二维码中的位置是由定位图形和分隔符决定的。
还有两个图形肉眼也难以发现,位于左下角位置探测图形上面的是“版本信息”,每个二维码都有一个版本号,我们常说的V1.0、V2.0就是版本;包围在三个位置探测图形周边的则是“格式信息”,这指的是这个二维码采用的编码格式。
二维码为什么是黑白相间的
黑色表示二进制的“1”,白色表示二进制的“0”
“我们之所以对二维码进行扫描能读出那么多信息,就是因为这些信息被编入了二维码之中。”黄海平说,“制作二维码输入的信息可以分成三类,文本信息,
比如名片信息;字符信息,比如网址、电话号码;还有图片信息,甚至还可以包括简短的视频。”
数据信息是怎么被编入的呢?信息输入后,首先要选择一种信息编码的码制。现在常见的二维码都是以QR码作为编码的码制。
QR码是矩阵式二维码,它是在一个矩形空间内,通过黑、白像素在矩阵中的不同分布,来进行编码的。我们知道电脑使用二进制(0和1)数来贮存和处理数据,而在二维码中,用黑白矩形表示二进制数据——我们肉眼能看到的黑色表示的是二进制“1”,白色表示二进制的“0”,黑白的排列组合确定了矩阵式二维条码的内容,以便于计算机对二维码符号进行编码和分析。
为了让我们更形象地了解,黄海平对信息“bcde”进行了QR编码(同时为了防泄露置入了密钥“a”,这是为了保护信息),这样经过编码,就出现了一个全部由0和1组成矩形的排列。由这个信息又生成了二维码。
至于数据信息到底在黑白相间的矩形中的什么位置,非专业人士是无法知晓的,“这都是后台的工作了,QR码有自动的规则,将信息安排在二维码相应的位置。”黄海平说。
和数据信息混在一起编入二维码的还有纠错码信息。这是因为当我们对二维码进行扫描时,不能保证扫的每一位信息都正确,这就需要依赖纠错码信息了。
此外,二维码中还藏着非常重要的校正图形。当二维码遭到污染或者破坏时,校正图形保证了没有被破坏的信息仍然可以被识别。也就是说,我们扫描读出的信息在二维码中备份了很多份。“即使二维码的损毁面积高达50%,信息仍然可以读取。”这也就是我们对着一个二维码扫描时,不需要只扫描整个图形,而只对着图形的某一个部分,就可能成功获取信息的原因。不信你可以试试!
说到这里,扫描二维码为什么能读取信息就好理解了。“在我们用光电扫描器或者手机智能终端的扫描软件进行扫描时,其实是一个解码的过程,解码恰恰是编码的逆过程。具体说来,是位置探测图形定位二维码的区域,根据二维码的编码格式信息和纠错码,对数据进行解读。如果编码时经过加密处理,解码时则需要加密时的密钥信息。”
也许你有个疑问,此前条形码在生活里也已经有诸多应用,比如超市货架上的东西都有条形码,二维码相比条形码有什么优点呢?
黄海平说,条形码是一维的,而二维码是采用纵横向编码的,储存的信息量就大很多。有数据显示,最多可记录1850个大写字母,2710个数字或500多个汉字。另外,二维码的空间利用率高;二维码除了常见的OR码,还可以用其他码制进行编码。还有,前面说到的纠错能力和校正能力,以及加密功能,都是二维码的优势。
安全隐患:见二维码就扫,100多元话费不翼而飞
随着二维码越来越多地应用,它的安全使用问题也引起了关注。
网秦手机安全专家邹仕洪博士表示,虽然二维码本身不会携带病毒,但很多病毒软件可以利用二维码下载。由于二维码技术已经发展得很成熟,“门槛”比较低,不法分子利用二维码生成器,就可以按照自己的意愿,制作二维码,在其中暗藏陷阱。比如,北京的一位市民习惯见码就扫,最近却因为刷某商家通过二维码链接的优惠活动,不幸中了扣费病毒跳转到恶意网址,导致 100多元话费不翼而飞。
目前网上可以随意找到二维码生成器,将病毒链接制成二维码并发布出去仅需三个小步骤。第一,在网上找到一个二维码生成平台,病毒链接和恶意软件下载地址通过整个平台可以直接转换成二维码;第二,将二维码发布,扫码者很有可能中招;第三,现在有种更新的二维码技术,可以在后台修改对应的链接信息,原本是无害的链接也有可能突然就成了恶意内容。
根据网秦Q3手机安全报告显示,去年三季度网秦共查杀到手机恶意软件23375款,三季度感染恶意软件的智能手机共有991万部。
南京邮电大学计算机学院副教授黄海平还指出,二维码会造成个人信息泄露被他人利用。比如早期的火车票上的信息没有加密,丢弃后,别人一扫就容易得知车票上的个人信息。不过,现在的火车票已经加密了,黄海平拿出一张火车票做实验,扫出的信息是乱码。“火车票上的信息只有铁路部门内部可以读取,他们在制作二维码时就将密钥信息预置在其中了。”
未来命运:手机彩码是噱头,二维码将有替代品
细心的人可能已经发现,现在在街头广告、报刊杂志上能看到的二维码已经不仅仅是黑白相间的了,还有彩色的二维码,这是什么原理呢?
邹仕洪博士说,手机彩码是通过颜色和形状承载信息量,应用比二维码更加广泛,