二维码的发展和工作原理

2024-03-25    分类: 网站建设

二维码到底是怎么工作的呢?又是怎么被手机所识别的呢?今天我们就来聊聊二维码的故事。

二维码发展过程

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

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

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

二维码是怎么生成的

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

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

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

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

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

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

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

分享题目:二维码的发展和工作原理
本文链接:https://www.cdcxhl.com/news49/321699.html

成都网站建设公司_创新互联,为您提供静态网站手机网站建设移动网站建设网站收录微信小程序电子商务

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站建设