二维码的原理是什么?
二维码进行读取时,通过颜色反差读取到二维码上的 01 顺序,之后通过数字,字节,特殊字符,混合编码,汉字编码等来将二进制进行转为我们可以认识的字符。
二维码的基本功能区有哪些?
二维码的生成遵循二进制编码,它们的排列方式就是信息的体现。它的基本功能区划分为:
位置探测图形、位置探测图形分隔符、定位图形:二维码的三个角落都分布着一个较大的回形黑白方块--位置探测图形,它和位置探测图形分隔符、定位图形一起帮助二维码在形成的过程中进行定位,减少错误排列的出现。不管你的手机是横着扫、竖着扫,还是斜着扫,它都知道二维码应该从哪个方向开始读。对每个 QR 码来说,它们的位置都是固定存在的,只是大小规格会有所差异。
格式信息:表示该二维码的纠错级别,级别越高,纠错能力越强。例如,需要编码的码字数据有 100 个,并且想对其中的一半,即对 50 个码字进行纠错,则计算方法如下。纠错需要相当于码字 2 倍的符号(RS 编码※),因此在这种情况下的数量为 50 个 ×2=100 码字。因此,全部码字数量为 200 个,其中用作纠错的码字为 50 个,所以计算得出,相对于全部码字的纠错率就是 25%。这一比率相当于 QR 码纠错级别中的“Q”级别。
校正图形:在图像有一定程度损坏的情况下,译码软件可以通过它同步图像模块的坐标映像。不同规格的二维码校正图形的数量和位置是不一样。规格确定,它的数量和位置也就确定了。
数据和纠错码字:实际保存的二维码信息和纠错码字。这是二维码的一种容错机制,举个例子假设一个二维码有 30% 以下的面积被遮盖或者去除时,二维码扫描器依然能够从这个残缺的二维码中准确获取信息。
版本信息:即二维码的规格,QR 码符号共有 40 种规格的矩阵,从 21x21(版本 1),到 177x177(版本 40),每一版本比前一版本在纵向和横向各自增加 4 个模块。二维码的各个版本结合数据量、字符类型和纠错级别,均有对应的最多输入字符数,需根据实际需求选定。如果增加数据量,就需要更多的码元,二维码就会越大。
当扫描设置开始扫描二维码时,根据位置探测图形、位置探测图形分隔符、定位图形迅速提取待识别区域。有时候我们用手机或者其他设备扫描二维码时并不是正对着二维码,或者,即使是正对着二维码,也会在一定程度上造成二维码倾斜,拉伸等等变形。但是我们发现这并不能影响二维码的识别,那么设计成一些固定比例的长方形块的校正图形就可以帮助设备对被扫描图片进行正确的矫正。