一种二维码的扩展方法与流程

文档序号:17994703发布日期:2019-06-22 01:05阅读:1300来源:国知局
一种二维码的扩展方法与流程

本发明涉及计算机应用领域,涉及二维码技术,具体涉及一种二维码的扩展方法。



背景技术:

随着社会的发展,二维码识别、支付技术快速发展,其成为了人们生活中重要的方式。二维码是用特定的集合图形按照一定的规律在二维方向上的平面分布的黑白相间的矩形方阵记录数据符号信息的新一代条码技术,通常由二维码阵和二维码号,以及下方的说明文字组成,具有信息量大,纠错能力强,识别速度快,全方位识读等特点,其应用领域广泛。同时,对于二维码的安全识别成为了重要的研究方向。

现有技术中,对于二维码容量不应数据进行调整,即二维码容量分配不可调整,资源浪费严重,且效率低,并且准确率也不高。专利公开号为cn104917637a的中国专利申请,其公开了一种文件分享的方法及系统,其具体的通过拆分文件成连续页文件,并在所述连续页文件上增加编号,生成包括连续页文件的内容及编号的二维码,并在分享设备上显示,接收设备读取所述二维码,并解码,获取单页文件的内容及其编号,分享设备切换显示下一页内容及编号的二维码,返回执行步骤“生成包括连续页文件的内容及编号的二维码,并在分享设备上显示”,直到读取所述连续页文件的最后一页,通过上述方式,可实现无网络、无移动介质的条件下,文件的传输。然而,该技术方案存在如下缺点:1.比较直观的一个缺点在于,该技术将产生多个二维码,如何保证传输过程或者使用中二维码组不与别的文件二维码的混淆是个难点;2.使用的二维码越多,在容量上的浪费就会更严重。我们知道一般二维码都不可能正好保存数据内容,都会有余量。所以当数量很多的时候,其空间是极其浪费的;3.在每个二维码内加入编号信息,虽然这个方法可以实现数据的排序,但是这个方法同时需要占用二维码内的数据存储空间。

此外,现有技术中还有利用当前使用最广的qrcode,通过数据容量,直接选择版本,得到容量的扩展,然而这种方式虽然直接选择版本,速度比较快,但是限制比较多,至少在形状上该扩展都必须保持正方形,并且由于其版本的限制,在扩展时,并没有在容量上做更多的处理。所以其并不是容量最优的解决方案。换句话说,二维码生成中,并没有根据数据容量大小做存储的调整。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种二维码的扩展方法,该方法更加灵活,是可以使得单位空间存储量最优的二维码扩展方式。

本发明提供了一种二维码的扩展方法,包括如下步骤:

s1.获得数据编码信息,基于数据编码长度,确定定位点个数;

s2.将数据区按不同的形状进行分区,通过调整横向和/或纵向单元二维码的数量调整各数据分区的参数;

s3.绘制二维码,输出结果。

在优选地方式中,定位点个数基于默认数据区的标准确定。

在优选地方式中,定位点个数通过计算数据区的容量来确定。

在优选地方式中,确定定位点个数为分别确定适合的横向和纵向的定位点个数。

在优选地方式中,定位点包括主定位点及辅助定位点。

在优选地方式中,定位点个数通过自定义版本列表,根据编码长度直接选择确定。

在优选地方式中,还包括将定位点的个数信息编译入基本信息区内。

在优选地方式中,二维码的数据容量大于数据编码的长度。

在优选地方式中,所述步骤s2中将数据区按不同的形状进行分区具体为分为a数据区,b数据区和c数据区。

在优选地方式中,a数据区,b数据区和c数据区容量满足关系:x*y+y:2x+(y-1)*(x-1):x*y,其中x,y分别代表最终二维码的横向、纵向单元二维码个数。

在优选地方式中,所述步骤s2中调整横向和/或纵向单元二维码的数量来确定各分区的容量,具体为调整x,y参数。

在优选地方式中,所述a数据区的宽度l1及b数据区的长度l2为可调节参数,a、b、c数据区的数量,a区域长度,b区域宽度都为固定值,c区域的参数根据a,b参数获得,通过调节l1和l2计算得到二维码中数据区需要的总容量。

在优选地方式中,所述需要的总容量无限逼近真实的编码数据大小,但是不小于编码数据大小。

在优选地方式中,所述步骤s3具体为根据定位点个数,定位点横向和纵向参数,以及各数据区的长度和宽度参数,绘制二维码框架,填入编码数据。

在优选地方式中,在输出结果之前把所有的参数信息处理成编码,填入基本信息区。

本发明的二维码的扩展方法,可以实现:为了让二维码的扩展更具有灵活性,扩展方式可以让二维码实现单向或者双向扩展;为了达到容量的最优化处理,对于数据区的参数做了可变处理。即数据区的长宽是可以微调的。这可以保证数据区的容量趋近于数据信息的大小,使单位空间内的容量最优化。

附图说明

图1为二维码的扩展方法流程图;

图2位二维码的具体结构示意图;

图3为单元二维码结构;

图4为横向为3纵向为1的二维码结构图;

图5为横向为3纵向2的二维码结构图;

附图标记说明:103-间隔区,106-伪装间隔区,201-a数据区单位区划分,202-b数据区单位区划分,203-c数据区单位区划分,100-定位点,101-基本信息区,102-外边框,103-间隔区,104-辅助定位点。

具体实施方式

下面详细说明本发明的具体实施,有必要在此指出的是,以下实施只是用于本发明的进一步说明,不能理解为对本发明保护范围的限制,该领域技术熟练人员根据上述本发明内容对本发明做出的一些非本质的改进和调整,仍然属于本发明的保护范围。

本发明提供了一种二维码的扩展方法,其具体的流程如附图1所示。

本发明的扩展方式一方面通过单向或者双向的扩展形式,可以让二维码更加灵活,另一个方面通过数据区的参数调节,我们可以减少不必要的数据填充,使得单位面积的数据容量最大化。

本发明的实现步骤,具体的包括如下步骤:

1.获得数据最终的编码信息;

2.根据编码信息,获得该编码长度,选择适合的横向、纵向的定位点个数。

上述定位点包括主定位点及辅助定位点。当然定位点可以分布在二维码四周,如图5所示,也可以在二维码中间增加定位点。此外定位点还决定了数据区的个数。本发明把数据区,按不同的形状分为了a、b、c三个大区。如图4,图中a、b、c编号下的为其特定数据区。相同编号下的数据区参数相同。

定位点个数的获得,可以通过固定计算公式获得。因为初始数据区的参数是默认的标准,而且各个数据区的比例也是有规律的,所以可以通过计算数据区的容量来决定定位点的数量。定位点的个数也可以通过自定义版本列表,根据编码长度直接选择得到。但是无论哪种形式,定位点的个数信息都将被编译入基本信息区内(图2-101),而且二维码的数据容量必须大于数据编码的长度。

上述所述数据区的比例规律为:若想x,y分别代表最终二维码的横向、纵向单元二维码个数(单元为如图3所示的二维码)。则a:b:c,必须满足x*y+y:2x+(y-1)*(x-1):x*y,即a:b:c=x*y+y:2x+(y-1)*(x-1):x*y。

通过对于x,y参数的设置,就可以实现单向的或者双向的图形扩展。其中x不变y变化,或是y不变x变化,即只有其中的一个方向上的参数变化,则为单向扩展。如果x,y都变化,即两个方向上的参数都变化,则为双向扩展。

对于两种定位点数量获取的比较,第一种方式的计算相对耗时,但是其结果将更有利于下一步的数据空间优化。第二种方式的速度更快,无论是在编码以及解码时都具有速度优势,而且图形也会比较美观。

3.根据编码长度,以及上一步骤得到的横向,纵向定位点个数。

该步骤为本发明的一个重要发明点步骤,在此步骤中,a区域的宽度l1及b区域的长度l2为可调节参数,而a、b、c三大数据区域的数量,a区域长度,b区域宽度都为固定值时,c区域的参数可以根据a,b参数获得,如果可以调节l1和l2,就可以计算得到二维码数据区需要的总容量。

计算原则为数据区容量无限逼近真实的编码数据大小,但是不小于编码数据大小。该设计可以实现数据容量的最优化,就是空间内所有的资源都将分配给真实的编码数据,而减少空白部分的补位信息。

4.绘制二维码,输出结果;

根据定位点个数,定位点横纵参数,以及数据区长宽参数等,绘制二维码框架。填入编码数据。当前输出之前需要把所有的参数信息处理成编码,填入基本信息区(图2-101)。输出二维码。

本发明的横向纵向两个维度的参数,可以实现二维码单向或者双向的扩展,使得二维码的扩展更加灵活,多变。

本发明的数据区可变参数,可以减少不必要的数据容量,让数据区容量更加逼近数据区容量总和,达到单位空间数据容量最优的结果。

尽管为了说明的目的,已描述了本发明的示例性实施方式,但是本领域的技术人员将理解,不脱离所附权利要求中公开的发明的范围和精神的情况下,可以在形式和细节上进行各种修改、添加和替换等的改变,而所有这些改变都应属于本发明所附权利要求的保护范围,并且本发明要求保护的产品各个部门和方法中的各个步骤,可以以任意组合的形式组合在一起。因此,对本发明中所公开的实施方式的描述并非为了限制本发明的范围,而是用于描述本发明。相应地,本发明的范围不受以上实施方式的限制,而是由权利要求或其等同物进行限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1