基于图像特征信息统计的条形码解码方法

文档序号:8543990阅读:400来源:国知局
基于图像特征信息统计的条形码解码方法
【技术领域】
[0001]本发明涉及条形码解码方法,尤其是一种基于图像特征信息统计的快速,高效的条形码解码方法。
【背景技术】
[0002]随着条形码在日常生活中越来越多的应用,基于图像的条形码解码技术变得越来越重要,对解码的速度,精度提出了更多的要求。
[0003]传统的条形码解码方法,通常是先将多种条形码的图像特征建成数据库存在在解码芯片中,在解码时需要先从拍摄的图像中找到条形码的位置,然后再获取条形码的图像特征,将其与解码芯片中的图像特征一一比对,确定所对应的条形码类型,然后依据该种条形码的编码规则进行解码。由于传统的条形码解码方法在图像中确定条码位置是通过逐行扫描的方式来实现,而且确定条码位置后还需要一一比对,所以效率较低,而且常常无法正确识别,解码率较低,需要反复多次拍摄图像重复尝试解码。

【发明内容】

[0004]有鉴于此,本发明的目的是提供一种快速,高效的条形码解码方法,该方法利用统计学原理,通过图像特征信息统计快速定位条码位置;然后,判断条码类型及条码方向?’最后,根据编码规则解析出条码内容。
[0005]为了达到上述目的,本发明提供一种基于图像特征信息统计的条形码解码方法,其特征在于,包括以下步骤:
①采样:对多种类型的条形码分别进行拍摄,得到多个具有条形码的图像样本;例如可拍摄不同场景中的80种条形码的图像样本,每种条形码可拍摄一种或多种场景中的图像样本;采样的范围可涵盖多种常见的条形码类型,例如EAN、UPC、Code39、ITF25、Codebar, Code93、Codel28 等一维码以及 PDF417、Code49、Codel6K、QR 等二维码;
②建立条形码的图像特征统计信息数据库:对每个所述的图像样本进行图像特征提取并建立由多个图像特征信息子集组成的数据库,所述多个图像特征信息子集至少包含图像区域边缘特征子集A= { A1, A2, A3,......,AJ,其中η为正整数;
A1, A2, A3,……,An分别为每个图像样本的图像区域边缘特征参数组,通过以下步骤得到:将每个图像样本进行水平方向和竖直方向等分得到Χ*Χ个区域后,对每个区域提取图像边缘,将每个所述图像样本中所有区域的图像边缘组成图像区域边缘特征参数组;其中,X为大于I的整数;每个图像区域边缘特征参数组都与一种条形码之间形成映射关系;
③拍摄图像:对待解码的物体进行拍照,获取到具有条形码的实际图像i;
④获取图像特征统计信息:将实际图像i进行水平方向和竖直方向等分得到X*X个区域后,对每个区域提取图像边缘,将所述实际图像i中所有区域的图像边缘组成实际图像区域边缘特征参数组Ai;在一具体实施例中,X优选为8 ;
⑤特征匹配:将实际图像区域边缘特征参数组化与所述图像区域边缘特征子集A中的参数组进行匹配,匹配成功后,并映射确定一种条形码;
⑥解码;确定条形码后,根据编码规则进行解码;
⑦若解码成功,则输出解码结果;若解码失败,则尝试对下一副实际图像进行解码,重复步骤③至⑥。
[0006]一些简单的一维码,获取了实际图像区域边缘特征参数组八,后,通过A彡决速定位条码位置时,其所对应的数据库中的图像区域边缘特征参数组也被唯一的确定,从而就可以快速地确定条码类型和条码方向。
[0007]由于条码部分是边缘聚集的区域,当仅依靠实际图像区域边缘特征参数组Ai无法确定条码类型和条码方向时,我们可通过统计条码所在区域的图像水平方向和竖直方向的图像的一阶微分信号的分布,可以快速地判断条码位置,条码类型和条码方向。例如,水平方向的UPC-A码在水平方向的一阶微分信号很大,而竖直方向的一阶微分信号很小;QRCode无论在哪个方向的一阶微分信号都会很大。
[0008]具体地,所述步骤②中,所述多个图像特征信息子集还包括条形码区域图像的一阶微分信号特征子集B= { B1, B2, B3,……,BJ办,B2, B3,……,Bn分别为每个图像样本中的条形码所在区域的图像边缘一阶微分信号特征参数组,通过以下步骤得到:将每个图像样本中的条形码所在区域的图像中的边缘做水平方向和竖直方向的一阶微分,先得到两副一阶微分信号图,对两幅一阶微分信号图分别做直方图统计,得到包含水平方向和竖直方向的一阶微分信号直方图统计信息的图像边缘一阶微分信号特征参数组;每个图像边缘一阶微分信号特征参数组都与一种条形码之间形成映射关系;
所述步骤④还包括:将实际图像i中的条形码所在区域的图像中的边缘做水平方向和竖直方向的一阶微分,先得到两副一阶微分信号图,对两幅一阶微分信号图分别做直方图统计,得到包含水平方向和竖直方向的一阶微分信号直方图统计信息的实际图像边缘一阶微分信号特征参数组Bi;
所述步骤⑤还包括:将实际图像区域边缘特征参数组化与所述图像区域边缘特征子集A中的参数组匹配失败时,将实际图像边缘一阶微分信号特征参数组Bi与所述条形码区域图像的一阶微分信号特征子集B中的参数组进行匹配,匹配成功后,映射确定一种条型码。
[0009]当然,还可以同时统计条码所在区域的图像中的对角线方向的图像的一阶微分信号的分布。具体地,将每个图像样本中的条形码所在区域的图像中的边缘做水平方向、竖直方向和对角线方向的一阶微分,先得到三副一阶微分信号图,对三幅一阶微分信号图分别做直方图统计,得到包含水平方向、竖直方向和对角线方向的一阶微分信号直方图统计信息的图像边缘一阶微分信号特征参数组。
[0010]其中,如果依靠Ai和Bi仍然无法唯一确定是数据库中哪一种条形码时,依靠Bi大致判断条码类型和条码方向,我们可通过统计条码所在区域的图像水的频谱分析图上的峰值个数,进一步确定条码类型和条码方向。
[0011]具体地,所述多个图像特征信息子集还包括条形码区域图像的边缘频谱分析特征子集C= { C1, C2,C3,……,CJ ;&,C2,C3,……,Cn分别为每个图像样本中的条形码所在区域的图像的频谱分析特征参数组,通过以下步骤得到:将每个图像样本中的条形码所在区域的图像做频谱分析,先得到频谱分析图,然后统计得到包含所有峰值和峰值个数的频谱分析特征参数组;每个频谱分析特征参数组都与一种条形码之间形成映射关系; 所述步骤④还包括:将实际图像i中的条形码所在区域的图像做频谱分析,先得到频谱分析图,然后统计得到包含所有峰值和峰值个数的实际频谱分析特征参数组Ci;
所述步骤⑤还包括:将实际图像边缘一阶微分信号特征参数组Bi与所述条形码区域图像的一阶微分信号特征子集B中的参数组匹配失败后,将实际频谱分析特征参数组Ci与所述条形码区域图像的边缘频谱分析特征子集C中的参数组进行匹配,匹配成功后映射确定一种条型码;
所述步骤⑤还包括:将实际图像区域边缘特征参数组化与所述图像区域边缘特征子集A中的参数组匹配失败时,将实际图像边缘一阶微分信号特征参数组Bi与所述条形码区域图像的一阶微分信号特征子集B中的参数组进行匹配,匹配成功后映射确定一种条型码。
[0012]优选地,所述步骤⑦中解码失败后,还包括步骤:⑧在低对比度条件下对编码规则进行调整,产生一个新的编码规则,进行解码,若解码成功,输出解码结果。
[0013]进一步地,若所述步骤⑧解码失败,还包括步骤:⑨在低采样率条件下对编码规则进行调整,产生又一个新的编码规则,进行解码,若解码成功,输出解码结果。
[0014]再进一步地,若所述步骤⑨解码失败,还包括步骤:⑩在高畸变条件下对编码规则进行调整,产生另一个新的编码规则,进行解码,解码成功,输出解码结果。
[0015]在解码的过程中,本发明还会对数据库中的参数组进行微调,当仅通过Ai解码成功时,微调步骤为:在解码成功后,根据实际图像区域边缘特征参数组Ai,将其所对应的数据库中的图像区域边缘特征参数组进行微调,使数据库中的图像区域边缘特征参数组靠近实际图像区域边缘特征参数组A-
[0016]当通过化和~共同解码成功时,微调步骤为:在解码成功后,根据实际图像区域边缘特征参数组Ai和实际图像边缘一阶微分信号特征参数组Bi,将其所对应的数据库中的图像区域边缘特征参数组和条形码所在区域的图像边缘一阶微分信号特征参数组进行微调,使数
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1