一物一码之【二维码基础】语音:
我们讲一下一物一码的基础。一物一码通俗的讲:是一个商品上附一个标识商品唯一性的二维码。一物一码商品附码形式非常多,有的是在包装里面投放奖卡,有的是在瓶子或是袋子上贴二维码或者是瓶盖拉环内印二维码。现在附码方式和技术都比较成熟了,在印刷工艺层面上也没什么问题。二维码怎么样能够标识商品的唯一性呢?一物一码的最核心的东西就是二维码,之所以叫一物一码,就是一个商品,附上一个二维码,这个二维码是唯一的,两两不同。
二维码实际上是一个字符串,按照一定算法生成的黑白图像,这个图像中排列出来二维图形点阵;这个稍微感觉是不是有点绕口,我们通俗点讲就是二维码,我们用手机把它拍照出来以后,可以通过软件可以把这个二维码识别成一个字符串。字符串是什么意思呢?字符串实际上就是ABCD字符和一些符号字符组成的,很多字符组成的一句话,例如todayisgreatday,就叫字符串。这串字符的组合不是随便的组合,这些字符的组合,在计算机知识里面里面叫做Url。Url又是什么东西?Url就是像我们去上网的时候,我们在浏览器里面输入的网址,这个网址就是Url。例如说我们去上百度,就要在浏览器中输入www.baidu.com,这个就叫Url。二维码图像,通过手机摄像头照相,然后通过软件解码,就可以解码出来一个字符串,这个字符串就是Url。一物一码中每个二维码解码出的url都不相同,这个就是二维码的唯一性的表现。
二维码的Url是域名加上一串随机的字符组成,域名是固定的,随机的字符串是唯一的;域名又什么东西呢?域名实际上就表示这个网站,它是属于谁的,例如说baidu.com就属于百度的,百度的域名也是一个字符串,例如像我们吉祥码的域名jixiangma.com.cn。一个真实的二维码Url如下: http://q.a5j.cc/?q=yuspi2cai9i96
二维码的字符串不能是无限长度的,因为无限长度的二维码图形就会非常大,二维码的点阵个数就会非常多。在一物一码里,附在商品上二维码,点阵数越少是越容易识别,因此二维码的Url越短越好。 二维码的Url字符串长度,一般的话是长度要小于等于32个字符,也就是说如果多于32个字符,它的二维码的点阵数就会非常多,32个字符和小于32个字符点阵数就会比较少,32个字符是个分界线. 用手机的摄像头,或者说是微信或支付宝或是浏览器或者其他二维码识别识别软件,都能很容易识别点阵数少的二维码。
二维码是有很多个标准的,我们一般使用的二维码叫QR码。QR码是日本发明的,日本发明了以后,就经过大概二十多年的传播,现在在中国国内被普遍应用起来。
在中国也有二维码的国家标准,被腾讯支持或支付宝等企业支持,他们算法都是基于二维码国家标准。二维码现在为什么这么流行,就在于它的强大识别容错性。二维码的识别容错为什么这么高?是因为它会把字符串数据写成两份,第一份是明文信息,就是字符串的信息。第二份叫做校验信息,校验信息会放在明文信息者的后面。
假如说二维码有一部分破损的话,通过它的校验信息就可以还原出它的明文信息。我们经常见到二维码里面嵌入一个图片,嵌入图片实际上已经破坏了二维码的结构。二维码的结构被破坏了以后,它怎么还能被识别出来呢?就是因为它里面的校验信息还没有被破坏,校验信息加上明文信息就会把缺失的部分给补上。二维码被部分破坏或破损的情况下,也还是可以被识别的。
软件识别二维码时,不仅仅有解码算法,还有很多图形变换的算法在里面。 有时一个异形二维码可以在支付宝里面被识别,而在腾讯微信中就识别不了,这是因为图形变换算法不一样? 因为二维码是一种图形,图形要识别的时候,还要经过一些图形变换; 比如说二维码斜了后,要用图形变换把它给变成正方形;还有如果它是模糊的,要用图形处理里面的噪音处理的方式把它变清晰等等。二维码识别软件识别的好坏,一个是解码算法要正确, 另外一个也要图形变换算法优秀。
总结二维码基础,二维码大家可以理解成一个字符串,这个字符串在每个商品上都是不一样的,这就是能够标示出商品的唯一性原因;换个方式说就像我们身份证一样,每个人的身份证的号码都不一样,每个商品上面的二维码的字符串也是不一样的,这个字符串就成为了商品唯一的身份证。
总结上述所述,阐述了一物一码基础的下述几点:
1)二维码是什么东西
2)二维码为什么可以唯一标示商品,做为商品的身份证
3)二维码的字符串组成方式,长度限制
4)二维码为什么被普遍应用(由于它的容错性非常好)
如果大家觉得有帮助,可以关注我们的公众号【吉祥码】一起讨论学习。