CN102568608B - 一种增强qr码纠错能力的改进方法 - Google Patents
一种增强qr码纠错能力的改进方法 Download PDFInfo
- Publication number
- CN102568608B CN102568608B CN201210044671.9A CN201210044671A CN102568608B CN 102568608 B CN102568608 B CN 102568608B CN 201210044671 A CN201210044671 A CN 201210044671A CN 102568608 B CN102568608 B CN 102568608B
- Authority
- CN
- China
- Prior art keywords
- code
- data
- error correction
- error correcting
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000005728 strengthening Methods 0.000 title abstract description 5
- 230000004044 response Effects 0.000 title abstract description 4
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 230000011218 segmentation Effects 0.000 claims description 22
- 230000002708 enhancing effect Effects 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 2
- 230000014509 gene expression Effects 0.000 description 5
- 241001269238 Data Species 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Landscapes
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
增强QR码纠错能力的改进方法,利用数据区的未使用空间,不再是填入预定的特定数据,根据已填入数据计算纠错码,再将纠错码数据填入未使用空间;额外纠错数据长度填入QR码功能区定位图形区域中;纠错码和原始QR码一样选择RS码进行纠错;RS码的生成多项式根据剩余存储空间进行动态计算和生成;纠错分段数量和原有编码机制中一样;采用数据分段机制,分段的方向和原有机制在每个版本中根据纠错等级可以存入固定数量的数据码和纠错码,若是已有数据量不足以填满预留的数据区,空白区域会用预定的数据进行填充。本发明利用原有编码机制未利用的空间对数据进行纠错码生成,在解码部分,可进行两次纠错,这两次纠错还可能会互补,从而还原最初填入的数据。
Description
技术领域
本发明涉及一种改进方法用于增强QR码的纠错能力,提高QR码抵抗污损的能力;有助于进一步推广QR码在现实生产生活中的应用;有助于更加自由的进行个性化定制。
背景技术
二维码技术从上个世纪80年代末开始出现,经过20多年的推广应用,在很多行业的信息管理和信息交换领域发挥了巨大的作用。
国内的二维码市场也在快速发展中,QR码作为中国移动官方推荐的条码标准,早在2004年就纳入中国移动数据部得业务计划,在2005年底制定中国移动企业标准,在2006年纳入中国移动终端预置规划。目前,国内的火车票上也开始出现QR码的身影,相信二维码在国内会获得蓬勃地发展。
发明内容
本发明的目的是:根据现有QR码的抗污损能力在特定场合下不足,在进行QR码的个性化定制时受到较大的限制的问题。本发明提出一种用于增强QR码的纠错能力的方法,可以提高QR码抵抗污损的能力;有助于进一步推广QR码在现实生产生活中的应用。
本发明的技术解决方案如下:增强QR码纠错能力的改进方法,QR码符号中能够存储的数据量是确定的,而用户需要存储的数据量小于能够存储的容量,那么多出来的未使用空间用来存储额外纠错码,以此来增强QR码的纠错能力。本发明利用数据区的未使用空间,不再是填入预定的(特定)数据,根据已填入数据计算纠错码,再将纠错码数据填入未使用空间;额外纠错数据长度填入QR码功能区定位图形区域中。
RS码又称里所码,即Reed-Solomon codes,是一种前向纠错的信道编码,对由校正过采样数据所产生的多项式有效。编码过程首先在多个点上对这些多项式求冗余,然后将其传输或者存储。对多项式的这种超出必要值得采样使得多项式超定(过限定)。当接收器正确的收到足够的点后,它就可以恢复原来的多项式,即使接收到的多项式上有很多点被噪声干扰失真。
RS(Reed-Solomon)码是一类纠错能力很强的特殊的非二进制BCH码。对于任选正整数S可构造一个相应的码长为n=qS-1的q进制BCH码,而q作为某个素数的幂。当S=1,q>2时所建立的码长n=q-1的q进制BCH码,称它为RS码。当q=2m(m>1),其码元符号取自于F(2m)的二进制RS码可用来纠正突发差错,它是最常用的纠错码之一。
计算额外纠错码的方法的步骤:纠错码和原始QR码一样选择RS码进行纠错;RS码的生成多项式根据剩余存储空间进行动态计算和生成;纠错分段数量和原有编码机制(根据版本号的纠错等级确定)中一样;采用数据分段机制,分段的方向和原有机制不同;
所述的数据分段机制的特征在于:根据原有机制将数据分为n段D1、D2、……Dn,构造完成后的数据段1长度等于D1的长度,但是数据由D1的第一个字节,D2的第一个字节、……Dn的第一个字节、D1的第二个字节……以此类推构成。
根据QR码的版本号和纠错等级确定QR码数据的分段数,按照原来的分段方法进行分段,然后换一个方向进行重新分段。根据剩余空间确定纠错码数量,再根据分段后的数据计算纠错码,填入剩余空间,接下来按照原始的方法计算纠错码得到最终数据。额外纠错码的长度存入功能区的定位图形中。
表1版本5-H符号的最终码字序列
所述的数据分段机制举例如下:在版本2纠错等级H的QR码中,可以存放46字节数据,QR码将其分为4块,本发明方法中也将要编码的数据分为4块,假设用户输入数据长度为24字节,则还空余22字节,分段后数据排列情况如表2。但是进行纠错码计算的时候取块1的第1个字节、块2的第1个字节……总共数据长度的四分之一长,即D1,D7,D13,D19,D2,D8作为第一块数据码来计算5个字节的纠错码。这样的顺序组合来进行纠错码的计算,当解码时可以利用原来QR码编码机制中的纠错码和本发明增加额外纠错码的互补性,最大程度的增强纠错能力。
表2本发明分段机制对编码数据进行分段
块1 | D1 | D2 | D3 | D4 | D5 | D6 |
块2 | D7 | D8 | D9 | D10 | D11 | D12 |
块3 | D13 | D14 | D15 | D16 | D17 | D18 |
块4 | D19 | D20 | D21 | D22 | D23 | D24 |
所述的额外纠错长度存入定位图形的方法,定位图形有两个,进行一次重复冗余;对长度数据本身也进行纠错计算,版本1不进行纠错;版本2进行奇偶校验;版本3以后使用BCH(15,4)进行纠错计算。
本发明利用数据存储区域的未使用空间,额外再进行一次纠错;增加的纠错和原有机制的纠错使用不同的排列分段方式,通过两次纠错的互补,最大程度的增强纠错能力。额外纠错的长度存入数据区的功能区。
计算额外纠错码的方法的步骤:纠错码和原始QR码一样选择RS码进行纠错;RS码的生成多项式根据剩余存储空间进行动态计算和生成;纠错分段数量和原有编码机制(根据版本号的纠错等级确定)中一样;采用数据分段机制,分段的方向和原有机制不同;
所述的数据分段机制的特征在于:根据原有机制将数据分为n段D1、D2、……Dn,构造完成后的数据段1长度等于D1的长度,但是数据由D1的第一个字节,D2的第一个字节、……Dn的第一个字节、D1的第二个字节……以此类推构成。
根据QR码的版本号和纠错等级确定QR码数据的分段数,按照原来的分段方法进行分段,然后换一个方向进行重新分段。根据剩余空间确定纠错码数量,再根据分段后的数据计算纠错码,填入剩余空间,接下来按照原始的方法计算纠错码得到最终数据。额外纠错码的长度存入功能区的定位图形中。
所述的数据分段机制举例如下:在版本2纠错等级H的QR码中,可以存放46字节数据,QR码将其分为4块,本发明方法中也将要编码的数据分为4块,假设用户输入数据长度为24字节,则还空余22字节,分段后数据排列情况如表2。但是进行纠错码计算的时候取块1的第1个字节、块2的第1个字节……总共数据长度的四分之一长,即D1,D7,D13,D19,D2,D8作为第一块数据码来计算5个字节的纠错码。这样的顺序组合来进行纠错码的计算,当解码时可以利用原来QR码编码机制中的纠错码和本发明增加额外纠错码的互补性,最大程度的增强纠错能力。
所述的额外纠错长度存入定位图形的方法,定位图形有两个,进行一次重复冗余;对长度数据本身也进行纠错计算,版本1不进行纠错;版本2进行奇偶校验;版本3以后使用BCH(15,4)进行纠错计算。
本发明利用数据存储区域的未使用空间,额外再进行一次纠错;增加的纠错和原有机制的纠错使用不同的排列分段方式,通过两次纠错的互补,最大程度的增强纠错能力。额外纠错的长度存入QR码的功能区。
在本发明改进方法中,解码程序需要得到额外增加的纠错数据的长度才能正确的纠错,在完全兼容普通QR码解码器的前提下,利用QR码原有编码机制中的定位图形区域(探测图形之间深浅交替的行和列)存放额外纠错数据长度。
本发明的有益效果是:在QR码原有编码机制中,在每个版本中根据纠错等级可以存入固定数量的数据码和纠错码,若是已有数据量不足以填满预留的数据区,空白区域会用预定的数据进行填充。增强QR码纠错能力的改进方法就是利用这一块原有编码机制没有利用的空间,来对数据进行一次纠错码生成,这样在解码部分,可以进行两次纠错,这两次纠错还可能会互补,从而还原最初填入的数据。
现有QR码的抗污损能力在特定场合下不足,本发明可以提高QR码抵抗污损的能力;有助于进一步推广QR码在现实生产生活中的应用;有助于自由的进行个性化定制。
附图说明
图1是本发明增加纠错的实现流程;
图2通过本发明编码方式编码,经过个性化定制或是污损,普通QR码解码工具无法解码,但本发明解码方法可以解码的示例图片。
具体实施方式
表3纠错等级
纠错等级 | 恢复的容量%(近似值 |
L | 7 |
M | 15 |
Q | 25 |
H | 30 |
下面对一种增强QR码纠错能力的改进方法所采用的技术方案进行进一步的说明。QR码采用纠错算法生成一系列纠错码字,添加在数据码字序列后,使得符号可以在遇到损坏时不致丢失数据。纠错共有4个纠错等级,对应四种纠错容量,如表1所示。当确定了版本号和纠错等级,那么QR码符号中能够存储的数据量是已经确定的,而经常用户需要存储的数据量小于能够存储的容量,那么多出来的空间就可以用做其他用途。这里将这部分空间用来存储额外纠错码,以此来增强QR码的纠错能力。
表4版本5-H符号的最终码字序列
根据QR码的版本号和纠错等级确定QR码数据的分段数,按照原来的分段方法进行分段,然后换一个方向进行重新分段。根据剩余空间确定纠错码数量,再根据分段后的数据计算纠错码,填入剩余空间,接下来按照原来的方法计算纠错码得到最终数据。额外纠错码的长度存入功能区的定位图形中。比如,表2是版本5-H符号的最终码字序列,原始QR码将其分为4块,那么改进的方法中也将要编码的数据分为4块,按照表2排列,但是进行纠错码计算的时候取块1的第1个字节、块2的第1个字节……总共数据长度的四分之一长,即D1,D12,D23这样的顺序。
所述的数据分段机制举例如下:在版本2纠错等级H的QR码中,可以存放46字节数据,QR码将其分为4块,本发明方法中也将要编码的数据分为4块,假设用户输入数据长度为24字节,则还空余22字节,分段后数据排列情况如表2。但是进行纠错码计算的时候取块1的第1个字节、块2的第1个字节……总共数据长度的四分之一长,即D1,D7,D13,D19,D2,D8作为第一块数据码来计算5个字节的纠错码。这样的顺序组合来进行纠错码的计算,当解码时可以利用原来QR码编码机制中的纠错码和本发明增加额外纠错码的互补性,最大程度的增强纠错能力。
Claims (3)
1.增强QR码纠错能力的改进方法,所述QR码是一种二维条码,其特征在于:利用数据区的未使用空间,不再是填入预定的特定数据,根据已填入数据计算纠错码,再将纠错码数据填入未使用空间;额外纠错数据长度填入QR码功能区定位图形区域中;计算额外纠错码的方法的步骤:纠错码和原始QR码一样选择RS码进行纠错;RS码的生成多项式根据剩余存储空间进行动态计算和生成;纠错分段数量和原有编码机制中一样;采用数据分段机制,所述的数据分段机制的特征在于:根据原有机制将数据分为n段D1、D2、……Dn,构造完成后的数据段1长度等于D1的长度,但是数据由D1的第一个字节,D2的第一个字节、……Dn的第一个字节、D1的第二个字节……以此类推构成。
2.根据权利要求1所述的增强QR码纠错能力的改进方法,其特征在于:根据QR码的版本号和纠错等级确定QR码数据的分段数,按照原来的分段方法进行分段,然后换一个方向进行重新分段;根据剩余空间确定纠错码数量,再根据分段后的数据计算纠错码,填入剩余空间,接下来按照原始的方法计算纠错码得到最终数据;额外纠错码的长度存入功能区的定位图形中。
3.根据权利要求1或2所述的增强QR码纠错能力的改进方法,其特征在于:解码程序需要得到额外增加的纠错数据的长度才能正确的纠错,在完全兼容普通QR码解码器的前提下,利用QR码原有编码机制中的定位图形区域存放额外纠错数据长度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210044671.9A CN102568608B (zh) | 2012-02-24 | 2012-02-24 | 一种增强qr码纠错能力的改进方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210044671.9A CN102568608B (zh) | 2012-02-24 | 2012-02-24 | 一种增强qr码纠错能力的改进方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102568608A CN102568608A (zh) | 2012-07-11 |
CN102568608B true CN102568608B (zh) | 2014-08-27 |
Family
ID=46413804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210044671.9A Active CN102568608B (zh) | 2012-02-24 | 2012-02-24 | 一种增强qr码纠错能力的改进方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102568608B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI502516B (zh) * | 2014-01-15 | 2015-10-01 | Univ Nat Taiwan | 快速響應碼的美化方法及其裝置 |
CN106611207B (zh) * | 2015-10-23 | 2019-03-15 | 孙东耀 | 可写入数据的二维码及其数据读取方法 |
CN113822091B (zh) * | 2021-11-23 | 2022-03-15 | 北京紫光青藤微系统有限公司 | 用于二维码码图纠错的方法及装置、电子设备、存储介质 |
TWI783895B (zh) * | 2022-04-01 | 2022-11-11 | 國立勤益科技大學 | 隨機式rs碼之qr碼驗証系統及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001167222A (ja) * | 1999-09-29 | 2001-06-22 | Denso Corp | 誤り訂正方法、2次元コード読取方法、2次元コード読取装置及び記録媒体 |
CN1885725A (zh) * | 2006-07-12 | 2006-12-27 | 中国物品编码中心 | 纠错编码方法 |
CN102034127A (zh) * | 2009-09-28 | 2011-04-27 | 上海易悠通信息科技有限公司 | 新型大容量二维条码与系统及其编解码方法和应用 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3896827B2 (ja) * | 2001-02-21 | 2007-03-22 | 株式会社デンソー | 情報コードの解読方法および解読システム |
-
2012
- 2012-02-24 CN CN201210044671.9A patent/CN102568608B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001167222A (ja) * | 1999-09-29 | 2001-06-22 | Denso Corp | 誤り訂正方法、2次元コード読取方法、2次元コード読取装置及び記録媒体 |
CN1885725A (zh) * | 2006-07-12 | 2006-12-27 | 中国物品编码中心 | 纠错编码方法 |
CN102034127A (zh) * | 2009-09-28 | 2011-04-27 | 上海易悠通信息科技有限公司 | 新型大容量二维条码与系统及其编解码方法和应用 |
Non-Patent Citations (2)
Title |
---|
"QR二位条码的纠错编码算法研究及实现";黄宏博;《微计算机信息》;20101231;第26卷(第10-3期);第36页-第38页 * |
黄宏博."QR二位条码的纠错编码算法研究及实现".《微计算机信息》.2010,第26卷(第10-3期), |
Also Published As
Publication number | Publication date |
---|---|
CN102568608A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1770639B (zh) | 级联的迭代和代数译码 | |
CN102568608B (zh) | 一种增强qr码纠错能力的改进方法 | |
CN102592160B (zh) | 一种面向短信的字符二维码编码方法和解码方法 | |
CN103888148A (zh) | 一种动态阈值比特翻转的ldpc码硬判决译码方法 | |
CN102833040A (zh) | 解码处理方法、装置及编解码系统 | |
CN101288232B (zh) | 对数据进行编码和解码的方法以及设备 | |
CN105808170A (zh) | 一种能够以最小磁盘读写修复单磁盘错误的raid6编码方法 | |
CN108712232A (zh) | 一种用于连续变量量子密钥分发系统中的多码字并行译码方法 | |
CN104424010A (zh) | 一种文本文档乱码检测及修复方法和系统 | |
CN102077470B (zh) | 采用线性分组码的编码方法、装置及线性分组码生成方法、装置 | |
CN101800560A (zh) | Flash控制器中BCH编译码的纠错能力扩展方法 | |
CN113258936B (zh) | 一种基于循环移位的双重编码的构造方法 | |
CN1885725B (zh) | 纠错编码方法 | |
CN101303742B (zh) | 微小型汉信码及其符号的生成方法 | |
CN101848001A (zh) | Flash控制器中BCH编译码的数据长度扩展方法 | |
CN103151078A (zh) | 一种存储器检错纠错码生成方法 | |
CN106656216A (zh) | 一种针对Turbo乘积码的修正的软入软出译码方法 | |
CN101346884B (zh) | 卷积编码器、通信装置以及卷积编码方法 | |
CN103944584A (zh) | 一种二维码译码的方法及其装置 | |
CN102622630A (zh) | 一种利用qr码储存私密数据的方法 | |
CN102170333B (zh) | 一种交织地址的并行计算方法及系统 | |
CN105450333A (zh) | Ldpc码字的交织映射方法及解交织解映射方法 | |
CN104202056B (zh) | 一种二维码纠错译码的方法及二维码装置 | |
CN110445582B (zh) | 一种编码交织方法、系统、装置及计算机可读存储介质 | |
CN101695002B (zh) | 一种基于理德-所罗门码的编码电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee | ||
CP02 | Change in the address of a patent holder |
Address after: 225400 Taixing, Jiangsu, Hongqiao Industrial Park, Tai Chang South Road Patentee after: Nanjing University Address before: 210093 Nanjing, Gulou District, Jiangsu, No. 22 Hankou Road Patentee before: Nanjing University |