一种可承载多幅黑白二维码的彩色二维码编解码方法

文档序号:8339945阅读:551来源:国知局
一种可承载多幅黑白二维码的彩色二维码编解码方法
【技术领域】
[0001]本发明属于二维码技术领域,涉及一种可承载多幅黑白二维码的彩色二维码编码/解码方法,具体来说涉及一种对多幅黑白二维码进行复用和解复用的彩色编码方法。
技术背景
[0002]条码技术是集编码、印刷、识别、数据采集和处理于一体的综合技术,条码又分为一维码和二维码,二维码除了具备一维码成本低、传播方便等优点外,还具有信息容量大、可靠性高、可表示多种形式数据、保密防伪性强等优点。国外对二维码技术的研究始于20世纪80年代末。在二维码符号表示技术研究方面已研制出多种码制,常见的有H)F417、QRCode、Data Matrix等,并且国际标准化组织已经制定了这些二维码的IS0/IEC标准。我国对二维码技术的研究始于1993年,中国物品编码中心对几种常用的二维码TOF417、QRCode,Data Matrix等的技术规范进行了翻译和跟踪研究,并在此基础上制定了两个二维码的国家标准:GB/T17172-1997《四一^b条码》,GB/T 18284-2000《快速响应矩阵码》。
[0003]二维码技术主要应用在交通管理、物流、各类证件、各类报表和票据、工业生产线的自动化和电子商务平台入口等。近年来随着无线网和移动通信技术、移动通话技术和移动多媒体技术的深度结合,二维码已经在大众生活中得到了普及。但随着社会信息量增加以及二维码应用领域的扩展,需要二维码可容纳更多信息,而当前黑白二维码只使用两种颜色,限制了信息容量的提高,在此背景下彩色二维码得到了发展。微软研究院的GavinJancke发明了一款彩色二维码,有四色和八色两种版本,其单元模块是三角形,对信息流的编码采用多进制,相对于黑白二维码大约可以提高2?3倍的数据密度。浙江工业大学贾华国等提出了一种面向汉字的高压缩比彩色二维码编码规则。华南农业大学公开了一种色彩叠加二维码生成方法。从整体来看,目前的彩色二维码编解码方法都基于多进制编码来提高信息容量,这种编码方法无法与黑白二维码的编解码相兼容。然而,当前普通黑白二维码的读取设备及编解码软件已经得到大面积普及,如何在已普及的黑白二维码软硬件设备基础上实现大容量的二维码信息交流是二维码技术发展的一个方向。

【发明内容】

[0004]本发明的目的是提供一种可与黑白二维码信息编解码标准相兼容的大容量彩色编解码方法。借此方法可制作插件完成通用黑白二维码软件的升级,提高二维码的信息容量。
[0005]本发明的具体技术方案如下:
一种可承载多幅黑白二维码的彩色二维码编解码方法,包括彩色编码方法和彩色解码方法,所述彩色编码方法不是针对信息流进行多进制编码来扩展二维码的信息容量,而是对多幅普通黑白二维码相同网格位置的码元组合进行编码,从而实现用一副彩色二维码同时承载多幅黑白二维码的功能。
[0006]优选地,所述彩色编码方法包括以下步骤: (1)根据RGB颜色矢量间距大小选择多种编码颜色,并赋予每种颜色一个排列序号,例如选择红、黄、蓝、绿、青、紫…作为预选编码颜色,则每种颜色对应的序号依次为1,2,3,4,5,6,…;
(2)根据需要生成K幅普通的黑白二维码,并将其排序;
(3)依次扫描每幅黑白二维码的码元,将同一网格位置的码元提取按二维码的排列顺序组成K位二进制数;
(4)若二进制数为O,则选白(或黑)色作为彩色码对应码元的颜色,若二进制数的每一位均为1,则选黑(或白)色作为该彩色码码元的颜色,否则选取K位二进制数对应序号的预选颜色作为彩色二维码相应码元的编码颜色,以此方法扫描所有码元则生成一副彩色二维码。
[0007]优选地,所述彩色解码方法包括以下步骤:
(1)用通用二维码读取终端读取彩色二维码,并用通用的二维码定位方法对彩色二维码进行定位和网格划分;
(2)对已网格化的二维码码元进行逐个扫描,提取每个码元图像的RGB值,依据该RGB矢量与预选编码颜色RGB矢量之间的欧拉距离判断码元颜色;
(3)统计彩色二维码的编码颜色数M,并将各码元颜色对应的序号转化为1g2M位二进制数;
(4)分别读取1g2M位二进制数中每一位的二进制值,并依次分别赋予1g2Mf黑白二维码的码元值,以此扫描所有码元则可以得到1g2M个普通黑白二维码。
[0008]优选地,对于原始信息流的编码采用国际标准化的二进制编码方法,彩色编码是对QR码、PDF417码等标准的黑白二维码的二次编码。
[0009]优选地,所生成的彩色二维码的寻像图和功能模块区的颜色与黑白二维码的相同。
[0010]优选地,其解码的目标是彩色码到多个黑白二维码的分解,而不是对信息流的解码,二维码中蕴含的信息流可用标准的黑白二维码解码器/方法进行解读。
[0011]优选地,该彩色二维码可被通用的黑白二维码解码器/方法进行定位和网格化。
[0012]本发明的技术方案包括黑白码合成为彩色码的复用编码和彩色码分解为黑白码的解复用解码两部分。
[0013]所述彩色二维码的复用编码方法包括以下几个步骤:
(1)用标准的黑白二维码编码规则如QRCode, Η)Ρ417或Data Matrix等对信息流进行编码,生成K幅(K > I)黑白二维码。然后按生成的先后次序对黑白二维码进行排序,并分别用A、B、C...字母进行表示;
(2)根据RGB三基色原理,选取相邻颜色矢量距离大的多种颜色作为编码候选颜色,如红、黄、蓝、绿、青、紫…等,并分别赋予每种颜色一个编号如:红=1、黄=2、蓝=3、绿=4、青=5、紫=6…等。
[0014](3)分别依次扫描所有黑白二维码的码元,提取相同网格位置上各码元的码值,并按黑白二维码的排列次序构成一个K位二进制值。例如依次提取3幅黑白二维码在(n,m)网格位置上的码元值,分别为A(n,m)=l,8(11,111)=0和(:(11,111)=1,则所构成的二进制值为101。
[0015](4)生成一张与黑白二维码相同网格数的空白二维码网格,然后在各网格位置根据K幅黑白二维码相应码值构成的K位二进制值填入候选颜色,具体规则如下:
①若某网格位置上对应的K位二进制值为0,则该网格填入白色(或黑色);
②若某网格位置上对应的黑白二维码各码元值全为1,则该网格填入黑色(或白色);
③除以上两种情况外,则在预设的候选颜色表中,选取与K位二进制值所对应的颜色填入该网格,例如某网格的3位二进制值是101,则(101)2=(5)1(|,所以选取与5相应的青色作为该网格的填充颜色。
[0016](5)按照以上规则,依次扫描空白二维码的所有网格选择相应填充颜色,最后生成一张包含K幅黑白二维码的彩色二维码。
[0017]本发明所述彩色二维码到黑白二维码的解复用解码方法包括以下几个步骤:
(1)用通用二维码读取终端读取彩色二维码,并用通用的二维码定位方法对彩色二维码进行定位和网格划分;
(2)对已网格化的二维码码元进行逐个扫描,提取每个码元图像的RGB值,依据该RGB矢量与预选编码颜色RGB矢量之间的欧拉距离判断码元颜色;
(3)统计彩色二维码的编码颜色数M=2K,并将各码元颜色对应的序号转换为1g2M位二进制数,具体的转换方法如下:
①若检测到某网格的编码颜色为白色(或黑色),则该网格颜色转换为二进制值为O的1g2M位二进制数;
②若检测到某网格的编码颜色为黑色(或白色),则该网格颜色转换为十进制为(M-1)ltl的1g2M位二进制数;
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1