技术简介:
本专利针对二维码译码过程中因错误码字数量与纠错能力未区分导致解码效率低的问题,提出根据错误码字数量及纠错能力动态选择解码方法的优化方案。当错误码字为1时直接定位错误位置;多错误时,若纠错能力低于阈值则用解方程法,高于阈值则采用BM迭代算法,从而显著提升译码效率。
关键词:二维码译码,错误码字处理,纠错算法优化
一种二维码译码的方法及其装置制造方法
【专利摘要】本发明公开了一种二维码译码的方法,包括如下步骤:判断二维码错误码字的个数和纠错能力;基于错误码字的个数和纠错能力调用相应的解码方法。本发明还公开了一种二维码译码装置,所述装置包括:判断模块,用于判断二维码错误码字的个数和纠错能力;处理模块,用于基于错误码字的个数和纠错能力调用相应的解码方法。通过本发明实施例,根据二维码的错误码字个数不同,采用不同的方法解码来提高整个译码的效率。根据错误码字和译码器的纠错能力,提供相适宜的译码处理能力,提高了整个系统的译码效率。
【专利说明】一种二维码译码的方法及其装置
【技术领域】
[0001]本发明涉及二维码【技术领域】,具体涉及一种二维码译码的方法及其装置。
【背景技术】
[0002]二维码(2-dimensional bar code)是将特定的几何图形按照一定的规则在平面上分布的黑白相间的图形,它是一种数据符号的信息。二维码具有很多显著的优点,其编码密度高,信息容量大,编码范围广,纠错能力强,容易制作,而且制作成本低。由于以上的原因,二维码在生活中很多领域得到了广泛的应用,如物流、医疗卫生、交通,生产等等。
[0003]图1示出了现有的二维码译码的功能原理图,其包括对原始二维码的提取、图像采集、二维码码字提取,对二维码进行译码,从而达到二维码中的原始信息,在整个二维码译码过程中,其存在着复杂的比较量,图2示出了现有的二维码译码的方法流程图,在二维码的整个解码过程中,存在着伴随因子的计算,以及错误位置多项式系数的计算,错误位置的确定,错误值得计算,由求解出来的错误值和原来错误位置上的值异或运算,即可得到正确的值。在二维码的整个解码过程中,伴随因子的计算,错误位置多项式系数的计算,错误位置的确定,错误值得计算,这些步骤的计算量都是很大,尤其是错误位置多项式系数的计算和错误位置的确定,这两个步骤占据了整个解码过程的大部分的时间。现在普遍采用的方法是不管错误码字有几个,纠错能力怎样,都采用一样的解码方法,因此,这样会导致解码效率不高,花费的时间过长。
[0004]基于以上问题,需要对二维码的解码算法中错误位置多项式系数的计算和错误位置的确定这两个步骤进行优化,以减少计算量,提高解码的效率。
【发明内容】
[0005]针对现有技术中的不足,针对二维码的错误码字个数不同,本发明实施例提供了一种二维码译码的方法及其装置,通过用不同的方法解码会提升整个译码过程中的效率。
[0006]本发明提供了一种二维码译码的方法,包括如下步骤:
[0007]判断二维码错误码字的个数和纠错能力;
[0008]基于错误码字的个数和纠错能力调用相应的解码方法。
[0009]所述判断二维码错误码字的个数具体为:
[0010]判断二维码译码过程中是否只有一个错误码字,如果不是,则判断二维码的纠错能力是否小于等于阈值。
[0011]所述基于错误码字的个数和纠错能力调用相应的解码方法具体为:
[0012]当二维码译码过程中只有一个错误码字时,则利用定义计算错误位置;
[0013]当二维码译码过程中超过一个错误码字时,在二维码的错误能力小于等于阈值情况下,则利用解方程的方法求解错误位置多项式系统;在二维码的错误能力大于阈值情况下,则利用BM迭代算法求解错误位置多项式系数。
[0014]所述阈值为2到10的自然数。[0015]相应的,本发明实施例还提供了一种二维码译码装置,所述装置包括:
[0016]判断模块,用于判断二维码错误码字的个数和纠错能力;
[0017]处理模块,用于基于错误码字的个数和纠错能力调用相应的解码方法。
[0018]所述判断模块包括:
[0019]错误码字判断单元,用于判断二维码译码的过程中是否只有一个错误码字;
[0020]纠错能力判断单元,用于判断二维码的纠错能力是否小于等于阈值。
[0021]所述处理模块包括:
[0022]第一处理单元,用于当二维码译码过程中只有一个错误码字时,利用定义计算错误位置;
[0023]第二处理单元,用于当二维码译码过程中超过一个错误码字时,在二维码的错误能力小于等于阈值情况下,利用解方程的方法求解错误位置多项式系统;
[0024]第三处理单元,用于当二维码译码过程中超过一个错误码字时,在二维码的错误能力大于阈值情况下,利用BM迭代算法求解错误位置多项式系数。
[0025]所述阈值为2到10的自然数。
[0026]在本发明根据二维码的错误码字个数不同,采用不同的方法解码来提高整个译码的效率。根据错误码字和译码器的纠错能力,提供相适宜的译码处理能力,提高了整个系统的译码效率。
【专利附图】
【附图说明】
[0027]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0028]图1是现有技术中的二维码译码的功能原理图;
[0029]图2是现有技术中的二维码译码的方法流程图;
[0030]图3是本发明实施例中的二维译码的方法流程图;
[0031]图4是本发明实施例张的二维码译码装置结构示意图。
【具体实施方式】
[0032]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0033]本发明实施例针对二维码错误码字的个数和纠错能力,基于错误码字的个数和纠错能力调用相应的解码方法。本发明中的译码优化方法是综合考虑错误码字的个数和纠错能力,对不同的情况采用不同的解码方法。首先判断二维码是否只有一个错误,如果是,则用定义计算错误位置;如果不是,则判断本二维码的纠错能力时候小于等于阈值(比如说3或者2至10中的一个数值),如果是,则用解方程的方法求错误位置多项式系数,否则,用BM迭代算法求错误位置多项式系数,[0034]图3示出了本发明实施例中的二维码译码的方法流程图,包括如下步骤:
[0035]S301、判断二维码译码过程中是否只有一个错误码字,如果是则进入到S302,否则进入到S303 ;
[0036]S302、利用定义计算错误位置;
[0037]当错误个数只有一个时,用定义来计算错误位置以及错误值。即当S1^O,且
【权利要求】
1.一种二维码译码的方法,其特征在于,包括如下步骤:判断二维码错误码字的个数和纠错能力;基于错误码字的个数和纠错能力调用相应的解码方法。
2.如权利要求1所述的二维码译码的方法,其特征在于,所述判断二维码错误码字的个数具体为:判断二维码译码过程中是否只有一个错误码字,如果不是,则判断二维码的纠错能力是否小于等于阈值。
3.如权利要求2所述的二维码译码的方法,其特征在于,所述基于错误码字的个数和纠错能力调用相应的解码方法具体为:当二维码译码过程中只有一个错误码字时,则利用定义计算错误位置;当二维码译码过程中超过一个错误码字时,在二维码的错误能力小于等于阈值情况下,则利用解方程的方法求解错误位置多项式系统;在二维码的错误能力大于阈值情况下,则利用BM迭代算法求解错误位置多项式系数。
4.如权利要求3所述的二维码译码的方法,其特征在于,所述阈值为2到10的自然数。
5.一种二维码译码装置,其特征在于,所述装置包括:判断模块,用于判断二维码错误码字的个数和纠错能力;处理模块,用于基于错误码字的个数和纠错能力调用相应的解码方法。
6.如权利要求5所述的二维码译码装置,其特征在于,所述判断模块包括:错误码字判断单元,用于判断二维码译码的过程中是否只有一个错误码字;纠错能力判断单元,用于判断二维码的纠错能力是否小于等于阈值。
7.如权利要求6所述的二维码译码装置,其特征在于,所述处理模块包括:第一处理单元,用于当二维码译码过程中只有一个错误码字时,利用定义计算错误位置;第二处理单元,用于当二维码译码过程中超过一个错误码字时,在二维码的错误能力小于等于阈值情况下,利用解方程的方法求解错误位置多项式系统;第三处理单元,用于当二维码译码过程中超过一个错误码字时,在二维码的错误能力大于阈值情况下,利用BM迭代算法求解错误位置多项式系数。
8.如权利要求7所述的二维码译码装置,其特征在于,所述阈值为2到10的自然数。
【文档编号】H03M13/05GK103944584SQ201410169580
【公开日】2014年7月23日 申请日期:2014年4月24日 优先权日:2014年4月24日
【发明者】胡建国 申请人:胡建国