肉眼识别二维码?懂了原理你也可以(全文)

您所在的位置:网站首页 二维码识别技术 肉眼识别二维码?懂了原理你也可以(全文)

肉眼识别二维码?懂了原理你也可以(全文)

#肉眼识别二维码?懂了原理你也可以(全文)| 来源: 网络整理| 查看: 265

1二维码历史

  近日网上疯传着一个段子:小偷也利用上高科技手段啦,楼下的便利店抓到一个小偷,他把店里的支付二维码偷偷换成自己的,店主直到月底结款的时候才发现。事实上这只是一个段子罢了,小偷如果把商店的二维码偷梁换柱换成自己设计的二维码,首先这个过程不容易,因为店里粘贴二维码的位置固定在某一处,而且店内全天候有人,很难找到下手的机会。并且小偷制作的二维码中心头像需要跟店里的设计一致,不然很容易被发现。那么二维码到底是怎么工作的呢?又是怎么被手机所识别的呢?今天我们就来聊聊二维码的故事。

肉眼识别二维码?懂了原理你也可以

二维码发展过程

  其实早在1970年,美国易腾迈公司前身Interface Mechanisms就已经发明了二维码,但直到近几年才普及起来。二维码用特定的几何图形按照一定规律,在平面上印制出黑白相间的矩形方阵,用来记录数据符号信息。它的原理和它的哥哥一维条形码比较像,但一维条形码的使用受到了较大的限制,有时甚至变得毫无意义。另外,要用一维条形码表示汉字的场合,显得十分不方便,且效率很低,所以高密度、高可靠性的二维码就应运而生了。二维条码是大容量、高可靠性信息实现存储、携带并自动识读的最理想的方法。

  从上世纪90 年代初,中国物品编码中心将二维码技术引进中国,随着国外二维码制在中国不断拓展,人们逐渐发现了一个问题,由于PDF417、QR等国外码制没有考虑中国汉字编码的问题,在我国使用时,经常会出现中国汉字信息表示效率不高等问题。在2003年至2005年,中国物品编码中心与我国网路畅想、意锐新创公司共同研发的汉信码码制,正式开启了中国二维码的新篇章。随着汉信码技术的发展成熟与国家标准的制定,我国二维码产业和应用发展有了自主知识产权二维码码制标准的支持,适合中国需求的二维码民族产业开始起步。

  到了今天,随着iPhone、Android等智能手机软硬件平台的发展成熟,腾讯公司、百度公司等互联网巨头开始在二维码上投入巨额资源研发和推广,二维码的移动应用市场被培养起来,公众对于二维码,特别是手机二维码认知逐渐成熟。用于手机识读的二维码广泛出现在广告、网页、招牌、票据等载体上,手机“扫一扫”,实现移动获取信息或上网、添加微信、微博关注等应用,已经走入千家万户,悄无声息的改变着我们的生活。

2二维码怎么生成的?

二维码是怎么生成的

  二维码其实就是由很多0、1组成的数字矩阵。二维码是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化等特点。二维条码/二维码能够在横向和纵向两个方位同时表达信息,因此能在很小的面积内表达大量的信息。

  下面我们看看一个二维码的样例:

手机没电咋办?小编教你肉眼识别二维码 二维码内容“中关村在线”

  简单的说,二维码就是把你想表达的信息翻译成黑白两种小方块,然后填到这个大方块中。有点类似我们中学的答题卡,就是把我们的语言翻译成机器可识别的语言,说白了就是把数字、字母、汉字等信息通过特定的编码翻译成二进制0和1,一个0就是一个白色小方块,一个1就是一个黑色小方块。

  当然这其中还有很多纠错码,假如需要编码的码字数据有100个,并且想对其中的一半,也就是50个码字进行纠错,则计算方法如下。纠错需要相当于码字2倍的符号,因此在这种情况下的数量为50个×2=100码字。因此,全部码字数量为200个,其中用作纠错的码字为50个,也就是说在这个二维码中,有25%的信息是用来纠错的,所以这也就解释了二维码即使缺了一点或者变皱了也一样能被识别。有些朋友可能会问,为什么每个二维码上都会有三个黑色大方块呢?那就要涉及下面的内容:手机是如何识别二维码的。

3二维码怎么被手机识别的?

二维码怎么被手机识别的?

  由于不同颜色的物体,其反射的可见光的波长不同,白色物体能反射各种波长的可见光,黑色物体则吸收各种波长的可见光.所以当摄像头扫描黑白相间的二维码上时,手机利用点运算的阈值理论将采集到的图象变为二值图像,即对图像进行二值化处理,得到二值化图像后,对其进行膨胀运算,对膨胀后的图象进行边缘检测得到条码区域的轮廓。

手机没电咋办?小编教你肉眼识别二维码 图片来自互联网

  然后经过一项灰度值计算公式对图像进行二值化处理。得到一幅标准的二值化图像后,对该符号进行网格采样,对网格每一个交点上的图像像素取样,并根据阈值确定是深色“1”还是浅色“0”,从而得到二维码的原始二进制序列值,然后对这些数据进行纠错和译码,最后根据条码的逻辑编码规则把这些原始的数据转换成数据。

  上文中我们提到的三个大黑方块起什么作用呢?我们在使用手机扫描的时候无论是什么方向,都能够正确识别二维码的内容,就是因为手机通过三个大黑方块识别出二维码正确的方向。上述识别过程说起来分很多步骤,但在实际生活中,也就是两三秒的工夫,非常快!

4肉眼怎么识别二维码、总结

肉眼怎么识别二维码?

  在《最强大脑》中,有一期选手居然用肉眼识别二维码,不是一个两个,也不是十个二十个,而是102个。笔者听到就冷汗涔涔啊。。。

手机没电咋办?小编教你肉眼识别二维码

  那么二维码是怎么用肉眼识别的呢?我们从二维码的最右边开始,依次从上往下记录黑白的分布情况,黑的为1,白的为0。一排记录好后,往左记录一排的情况,一直记录到最左边为止。但是如果出现一圈方框的,则此部分跳过不记。

手机没电咋办?小编教你肉眼识别二维码

  然后我们去查Unicode表,将转换成十六进制的编码找出对应的Unicode值转换成对应的文字。刚刚的u4e2d、u5173、u6751、u5728、u7ebf,转换后对应“中关村在线”五个字。

  小结:看到这相信大家对二维码应该有所了解了吧。虽然二维码给我们生活带来了诸多便利,但我们在扫描二维码的时候一定要多一份警惕,要轻易扫描二维码,一定要在正规店面、官方工作人员的指导下扫描,或通过官方网站下载APP、关注公众号。避免扫描到被“劫持”的二维码,引起经济损失。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3