二维码(Two-dimensional code)是用某种特定的几何图形按一定规律在平面(二维方向)分布的黑白相间的图形记录数据符号信息的方式。现实生活中。二维码普遍存在我们的周围,比如:产品防伪/溯源、广告推送、站点链接、数据下载、商品交易、定位/导航、电子凭证、车辆管理、信息传递、名片交流、wifi共享等。
在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念。使用若干个与二进制相相应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自己主动识读以实现信息自己主动处理。
在很多种类的二维条码中,经常使用的码制有:Data Matrix,MaxiCode, Aztec,QR Code, Vericode,PDF417,Ultracode, Code 49, Code 16K 等。每种码制有其特定的字符集;每一个字符占有一定的宽度;具有一定的校验功能等。同一时候还具有对不同行的信息自己主动识别功能及处理图形旋转变化等特点。二维码是一种比一维码更高级的条码格式。一维码仅仅能在一个方向(通常是水平方向)上表达信息,而二维码在水平和垂直方向都能够存储信息。一维码仅仅能由数字和字母组成。而二维码能存储汉字、数字和图片等信息。因此二维码的应用领域要广得多。
二维码能够大致分为矩阵式和行排式两种:
(1)矩阵式
在一个矩形空间通过黑、白像素在矩阵中的不同分布进行编码。
在矩阵元素位置上,出现方点、圆点或其它形状点表示二进制“1”。不出现点表示二进制的“0”。点的排列组合确定了矩阵式二维码所代表的意义。矩阵式二维码是建立在计算机图像处理技术、组合编码原理等基础上的一种新型图形符号自己主动识读处理码制。
具有代表性的矩阵式二维码有:Code One、Maxi Code、QR Code、 Data Matrix等。
图21*21的矩阵中,黑白的区域在QR码规范中被指定为固定的位置,称为寻像图形(finder pattern)和定位图形(timingpattern)。寻像图形和定位图形用来帮助解码程序确定图形中详细符号的坐标。黄色的区域用来保存被编码的数据内容以及纠错信息码。蓝色的区域,用来标识纠错的级别(也就是Level L到Level H)和所谓的"Mask pattern",这个区域被称为“格式化信息”(format information)。
(2)行排式
行排式二维码(又称:堆积式二维码或层排式二维码),其编码原理是建立在一维码基础之上。按须要堆积成二行或多行。它在编码设计、校验原理、识读方式等方面继承了一维码的一些特点,识读设备与条码印刷与一维码技术兼容。但因为行数的添加。须要对行进行判定、其译码算法与软件也不全然同样于一维码。
有代表性的行排式二维码有CODE49、CODE 16K、PDF417等。