二维码图形的生成方法、装置、设备及介质与流程

文档序号:36167010发布日期:2023-11-23 19:19阅读:45来源:国知局
二维码图形的生成方法与流程

本技术涉及数据处理,尤其涉及一种二维码图形的生成方法、装置、设备及介质。


背景技术:

1、二维码是一种用某种特定的几何图形按一定规律在平面(二维方向)上分布的、黑白相间的图形,它能够存储一定的信息。常见的二维码可以分为qr码、dm码、pdf码、mc码和汉信码等几大类。

2、二维码图形通常包括功能区和信息区,功能区一般设置有用于寻找二维码图形的寻像图形以及用于图形校正的校正图形,信息区用于存储编码之后的二维数据信息。二维码生成时,计算机首先会生成一个设置好功能区的初始图形,然后通过一定的数据信息映射和压缩方法,将用户输入的数字、字母、符号、文字、图像等数据信息转化为二维的数据码字。由于二维码在传输过程中可能会出现磨损、擦伤等现象,因此,为了提高二维码识读的成功率和准确性,还会添加对数据码字进行纠错的纠错码字。之后,计算机可以将数据码字和纠错码字按照一定的顺序填充到初始图形的信息区中,从而生成二维码。

3、由于较大的功能区图形以及存储信息的限制,使得现有的二维码图形通常较大,不能设置在笔杆、芯片、线缆等印制面积较小的物品上。


技术实现思路

1、本技术提供一种二维码图形的生成方法、装置、设备及介质,用以解决现有的二维码图形较大,不能设置在印制面积较小的物品上的问题。

2、第一方面,本技术提供一种二维码图形的生成方法,所述二维码图形为矩形,并且由多个大小一致的矩形模块组成,所述模块包括深色模块和浅色模块,所述方法包括:

3、获取待编码的数据信息,并对所述数据信息进行预编码,以确定所述数据信息对应的数据编码和适用的二维码图形尺寸参数,所述数据编码为二进制字符序列;

4、按照预设位数的二进制字符为一组,将所述数据编码转换为数据码字,所述预设位数小于汉信码转换数据码字时对应的字符二进制位数;

5、根据所述数据码字的数目确定所述二维码图形的尺寸参数,并根据所述尺寸参数生成所述二维码图形对应的矩形区域,所述尺寸参数小于汉信码最小码图版本对应的尺寸参数23×23;

6、生成能够标识所述二维码图形位置的功能区图形,所述功能区图形包括位置探测图形和辅助寻像图形,所述位置探测图形为由m×m个模块组成的矩形,所述辅助寻像图形为由n×n个模块组成的矩形,m>n,m,n均为正整数;

7、将所述功能区图形添加至所述矩形区域,以生成所述矩形区域对应的初始图形;

8、确定所述初始图形中位于所述位置探测图形与所述辅助寻像图形之间的信息区,并将所述模块添加至所述信息区中;

9、将所述数据码字添加至所述信息区的模块中,以生成所述数据信息对应的二维码图形。

10、在一种可能的实施方式中,所述辅助寻像图形包括第一辅助寻像图形、第二辅助寻像图形和第三辅助寻像图形,所述将所述功能区图形添加至所述矩形区域,以生成所述矩形区域对应的初始图形,具体包括:

11、将所述位置探测图形添加至所述矩形区域的左下顶角,所述位置探测图形包括由p×p个模块组成的第一区域、设置在所述第一区域两侧的第二区域以及设置在所述第二区域两侧的第三区域,所述第一区域位于所述矩形区域的左下顶角,所述第二区域和所述第三区域均为q个模块宽的倒l形,所述第二区域位于所述第一区域的右侧和上侧,所述第三区域位于所述第二区域的右侧和上侧;

12、将所述第一辅助寻像图形添加至所述矩形区域的右上顶角,将所述第二辅助寻像图形添加至所述矩形区域的左上顶角,并将所述第三辅助寻像图形添加至所述矩形区域的右下顶角,所述第一辅助寻像图形的第四区域由q个模块组成并且位于所述矩形区域的右上顶角,所述第一辅助寻像图形的第五区域为q个模块宽的l形,并且位于所述第四区域的左侧和下侧,所述第二辅助寻像图形是所述第一辅助寻像图形旋转第一预设角度获得的,所述第三辅助寻像图形是所述第一辅助寻像图形旋转第二预设角度获得的;

13、其中,m>p>n>q,p,q均为正整数,所述第一区域中模块的颜色与所述第三区域以及所述第四区域中模块的颜色相同,并与所述第二区域以及所述第五区域中模块的颜色相反,所述第一区域以及所述第四区域分别位于所述矩形区域的顶角,所述第二区域、所述第三区域以及所述第五区域均位于所述矩形区域之内。

14、在一种可能的实施方式中,所述功能区图形还包括分隔区和功能信息区,所述分隔区将所述功能信息区与所述位置探测图形分隔;

15、所述分隔区位于所述第三区域的右侧和上侧,所述功能信息区位于所述分隔区的右侧和上侧,所述分隔区和功能信息区均为q个模块宽的倒l形,并且所述分隔区中模块的颜色与所述第三区域中模块的颜色相反,所述功能信息区中模块的颜色与所述第三区域中模块的颜色相同。

16、在一种可能的实施方式中,所述根据所述数据码字的数目确定所述二维码图形的尺寸参数,具体包括:

17、判断是否接收到用户输入的纠错等级;

18、若是,则根据所述纠错等级以及所述数据码字的总数确定所述二维码图形的尺寸参数;

19、若否,则确定所述用户对应的预设纠错等级,并且根据所述预设纠错等级以及所述数据码字的数目确定所述二维码图形的尺寸参数。

20、在一种可能的实施方式中,所述将所述数据码字添加至所述信息区的模块中,具体包括:

21、根据预设的纠错编码方式确定所述数据码字对应的纠错码字;

22、根据所述数据码字和所述纠错码字生成编码码字流;

23、判断所述编码码字流中码字的数目是否小于所述信息区的模块的数目;

24、若是,则在所述编码码字流的尾部添加填充码字,以使所述编码码字流中码字的数目等于所述信息区的模块的数目;

25、将所述编码码字流转换为二进制字符组成的信息位流,并将所述信息位流按照设定的填充方式依次添加至所述信息区的模块中。

26、在一种可能的实施方式中,所述根据预设的纠错编码方式确定所述数据码字对应的纠错码字,具体包括:

27、采用伽罗瓦域26上的reed-solomon纠错方式,根据设定的纠错能力,确定所述数据码字对应的纠错码字,所述伽罗瓦域的生成元满足以下约束:。

28、在一种可能的实施方式中,在所述将所述数据码字添加至所述信息区的模块中之后,还包括:

29、对所述初始图形的信息区的所有模块按照预设规则进行掩模,并根据预设判定规则确定最终的符号掩模方案和信息区掩模结果。

30、在一种可能的实施方式中,在所述将所述数据码字添加至所述信息区的模块中之后,还包括:

31、根据所述纠错等级以及所述掩模图形的掩模信息生成功能信息,并将所述功能信息附加按照特定规则生成的功能信息纠错信息后,添加至所述功能信息区,所述功能信息为二进制序列。

32、在一种可能的实施方式中,在所述生成所述数据信息对应的二维码图形之后,还包括:

33、在所述二维码图形的四周添加空白区,所述空白区中的模块为浅色模块。

34、在一种可能的实施方式中,所述对所述数据信息进行预编码,以确定所述数据信息对应的数据编码和适用的二维码图形尺寸参数,具体包括:

35、确定所述数据信息对应的信息模式,所述信息模式包括数字模式、文本模式、二进制字节模式、gs1模式、uri模式以及esi模式;

36、根据所述信息模式确定所述数据信息对应的编码方式,并且按照所述编码方式对所述数据信息进行编码;

37、将编码后生成的二进制字符进行排序组合,以生成所述数据编码的编码序列和适用的二维码图形尺寸参数,所述数据编码包括所述数据信息按照所述编码方式转换成的二进制字符,以及所述信息模式对应的模式指示符。

38、在一种可能的实施方式中,在所述确定所述数据信息对应的信息模式之后,还包括:

39、判断是否存在未找到对应的信息模式的数据信息;

40、若是,则所述数据信息对应的信息模式为二进制字节模式。

41、在一种可能的实施方式中,所述根据所述信息模式确定所述数据信息对应的编码方式,具体包括:

42、判断所述信息模式是否只包括数字模式和文本模式;

43、若是,则判断所述文本模式对应的数据信息是否全部为预设的运算符,当所述文本模式对应的数据信息全部为预设的运算符时,根据所述数字模式确定所述数据信息对应的编码方式,当所述文本模式对应的数据信息不全部为预设的运算符时,根据所述文本模式确定所述数据信息对应的编码方式;

44、若否,则判断所述信息模式中是否包括二进制字节模式,当所述信息模式包括二进制字节模式时,根据所述二进制字节模式确定所述数据信息对应的编码方式,当所述信息模式不包括二进制字节模式时,分别根据各数据信息各自对应的信息模式确定所述数据信息对应的编码方式。

45、在一种可能的实施方式中,当所述信息模式为文本模式时,所述根据所述信息模式确定所述数据信息对应的编码方式,具体包括:

46、顺序读取所述数据信息,并依次根据预设的第一文本模式确定所述数据信息对应的编码方式;

47、当读取到不能根据所述第一文本模式进行编码的第一数据信息时,则添加模式切换符,根据预设的第二文本模式确定所述第一数据信息对应的编码方式,并继续根据所述第一文本模式确定所述第一数据信息之后的信息所对应的编码方式。

48、第二方面,本技术提供一种二维码图形的生成装置,包括:

49、数据编码模块,用于获取待编码的数据信息,并对所述数据信息进行预编码,以确定所述数据信息对应的数据编码和适用的二维码图形尺寸参数,所述数据编码为二进制字符序列;按照预设位数的二进制字符为一组,将所述数据编码转换为数据码字,所述预设位数小于汉信码转换数据码字时对应的字符二进制位数;

50、尺寸确定模块,用于根据所述数据码字的数目确定所述二维码图形的尺寸参数,并根据所述尺寸参数生成所述二维码图形对应的矩形区域,所述尺寸参数小于汉信码最小码图版本对应的尺寸参数23×23;

51、功能区图形生成模块,用于生成能够标识所述二维码图形位置的功能区图形,所述功能区图形包括位置探测图形和辅助寻像图形,所述位置探测图形为由m×m个模块组成的矩形,所述辅助寻像图形为由n×n个模块组成的矩形,m>n,m,n均为正整数;

52、二维码图形生成模块,用于将所述功能区图形添加至所述矩形区域,以生成所述矩形区域对应的初始图形;确定所述初始图形中位于所述位置探测图形与所述辅助寻像图形之间的信息区,并将所述模块添加至所述信息区中;将所述数据码字添加至所述信息区的模块中,以生成所述数据信息对应的二维码图形。

53、第三方面,本技术提供一种二维码图形的生成设备,包括:处理器,以及与所述处理器通信连接的存储器;

54、所述存储器存储计算机执行指令;

55、所述处理器执行所述存储器存储的计算机执行指令,以实现上述的方法。

56、第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述的方法。

57、在一种可能的实施方式中,所述计算机可读存储介质存储二维码,所述二维码被处理器执行,所述二维码为根据上述的方法生成的二维码。

58、在一种可能的实施方式中,所述二维码用于费用支付、产品标识或网页跳转。

59、在一种可能的实施方式中,所述计算机可读存储介质中存储射频识别rfid模块,所述rfid模块中存储数据,所述数据被处理器执行,所述数据为根据上述的方法编码得到的数据。

60、在一种可能的实施方式中,所述rfid模块用在物流标签、产品标签、电子证件、电子钥匙或移动支付中。

61、本技术提供的二维码图形的生成方法、装置、设备及介质,可以获取待编码的数据信息,并对数据信息进行预编码,以确定数据信息对应的数据编码和适用的二维码图形尺寸参数,数据编码为二进制字符序列;按照预设位数的二进制字符为一组,将数据编码转换为数据码字,预设位数小于汉信码转换数据码字时对应的字符二进制位数;根据数据码字的数目确定二维码图形的尺寸参数,并根据尺寸参数生成二维码图形对应的矩形区域,尺寸参数小于汉信码最小码图版本对应的尺寸参数;生成能够标识二维码图形位置的功能区图形,功能区图形包括位置探测图形和辅助寻像图形,位置探测图形为由m×m个模块组成的矩形,辅助寻像图形为由n×n个模块组成的矩形,m>n,m,n均为正整数;将功能区图形添加至矩形区域,以生成矩形区域对应的初始图形;确定初始图形中位于位置探测图形与辅助寻像图形之间的信息区,并将模块添加至信息区中;将数据码字添加至信息区的模块中,以生成数据信息对应的二维码图形。本技术的方法,通过在功能区图形设置比现有汉信码的寻像图形更小的位置探测图形和辅助寻像图形,并且辅助寻像图形的大小小于位置探测图形,缩小了根据功能区图形生成的二维码图形的面积。通过这样的设置,通过本技术的方法生成的二维码图形的尺寸参数可以小于汉信码最小码图版本对应的尺寸参数,缩小了现有二维码图形的面积,使得二维码图形可以设置在印制面积较小的物品上。此外,本技术还通过较小的预设位数进行数据编码的码字转换,使得各码字对应的模块面积缩小,进一步缩小了二维码图形的面积,同时也仍然能够保证信息区存储的编码信息的完整性和准确性,即确保二维码图形被识别的成功率和准确性。

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