一种判断条码类型的方法技术

技术编号:13506891 阅读:42 留言:0更新日期:2016-08-10 15:43
一种判断条码类型的方法,包括以下步骤:1)条码图像定位,获得条码的倾斜方向与分布区域;2)条码图像采样:沿着条码的倾斜方向获取一条条码数据,并分别按照不同阈值的二值化、不同长度的数据拉伸和基于波峰波谷的不同阈值下的采样方法,获取多组采样数据;3)采样数据类型判断;4)继续获取下一条条码数据,并进行采样和类型判断即循环进行步骤2)和步骤3),直到所有的前景区域的条码数据均判断完毕;5)统计在整个扫描过程中,每种条码类型出现的次数并将出现频率最高的条码类型作为整幅图像的条码类型;6)根据获取到的条码类型进行条码识别并输出识别结果。本发明专利技术提供了一种准确判断条码类型的方法。

【技术实现步骤摘要】
【专利摘要】,包括以下步骤:1)条码图像定位,获得条码的倾斜方向与分布区域;2)条码图像采样:沿着条码的倾斜方向获取一条条码数据,并分别按照不同阈值的二值化、不同长度的数据拉伸和基于波峰波谷的不同阈值下的采样方法,获取多组采样数据;3)采样数据类型判断;4)继续获取下一条条码数据,并进行采样和类型判断即循环进行步骤2)和步骤3),直到所有的前景区域的条码数据均判断完毕;5)统计在整个扫描过程中,每种条码类型出现的次数并将出现频率最高的条码类型作为整幅图像的条码类型;6)根据获取到的条码类型进行条码识别并输出识别结果。本专利技术提供了一种准确判断条码类型的方法。【专利说明】
本专利技术属于条码识别
,涉及。
技术介绍
条码识别技术是在信息技术和计算机技术基础上发展起来的一门新兴技术,由于其识别快速、准确、可靠和成本低等优点,被广泛应用于各个领域。但是在嵌入式平台上实现的条码图像识别技术,需要同时识别多种不同种类的条码,但现在还未找到有效的判断条码类型的方法,于是就出现了以下问题:I)由于不对条码类型进行判断而导致的识别速度下降的问题;2)由于未能准确地对条码类型进行判断而导致的识别性能下降的问题。现有的应用于条码识别模块中的条码类型判断方案描述如下: 方案一:不对条码类型进行判断:对获取到的某幅图像,条码识别模块按一定的顺序进行不同种类的条码识别,若正确识别则返回,否则将分别尝试所有种类的条码识别。显而易见,这种识别方案是十分耗时的,极大地降低了识别速度。方案二:该方案的流程图如图1所示,描述如下: 1)对待识别的条码图像进行二值化; 2)取一条二值化后的条码数据,并获得相应的条空宽度信息。然后,将该信息与预设的多种条码类型表进行对比,若找到匹配的条码类型,则继续下面的流程,否则,结束识别; 3)根据匹配的条空信息,获取其所对应的条码类型; 4)按照获取的条码类型对条码进行识别,并输出识别结果。综上所述,在现有的方案中,方案一识别前未进行条码类型的判断,模块需要尝试所有种类的条码识别,识别速度很低;方案二虽然识别前对条码类型进行了判断,但由于仅选取一条条码数据,很容易造成条码类型判断错误,导致识别性能下降。因此,寻找一种可以准确判断条码类型的方法势在必行。
技术实现思路
为了克服现有条码识别方案无法准确判断条码类型的不足,本专利技术提供了一种准确判断条码类型的方法。本专利技术解决其技术问题所采用的技术方案是: ,所述方法包括以下步骤: 1)条码图像定位:首先对图像进行分块,并按照从左至右从上至下的顺序根据方差判断每块图像为前景块还是背景块;然后根据初步背景表,对每块前景块依次计算其梯度场,然后根据梯度场获得条码的倾斜方向与分布区域; 2)条码图像采样:沿着条码的倾斜方向获取一条条码数据,并分别按照不同阈值的二值化、不同长度的数据拉伸和基于波峰波谷的不同阈值下的采样方法,获取多组采样数据; 3)采样数据类型判断:根据获取的一组采样数据得到其对应的条空宽度,并将该条空宽度与每种类型条码的起始符所对应的条空宽度进行对比,若找到匹配的条空宽度,则记录下该组数据所对应的条码类型,否则继续寻找匹配的条空宽度; 继续对下一组采样数据进行判断,直到所有的采样数据均判断完成。4)继续获取下一条条码数据,并进行采样和类型判断即循环进行步骤2)和步骤3),直到所有的前景区域的条码数据均判断完毕; 5)统计在整个扫描过程中,每种条码类型出现的次数并将出现频率最高的条码类型作为整幅图像的条码类型; 6)根据获取到的条码类型进行条码识别并输出识别结果。进一步,所述步骤2)中,对条数据两端的数据进行采样。再进一步,所述步骤2)中,获得的采样数据包括a)采用不同阈值对图像进行二值化所得到的采样数据;b)将数据拉伸到不同长度所得到的采样数据;c)基于波峰波谷的不同阈值下的采样所得到的采样数据。本专利技术的技术构思为:提出了一种应用于嵌入式领域的条码识别模块中的准确地判断条码类型的方法。该方法采用了以下技术:I)通过图像定位技术,找出条码所在区域;2)通过条码图像采样技术,对条码数据进行采样,进而获得条码的条空宽度;3)通过扫描多条条码数据,获得每条数据对应的条码类型,最后将出现频率最高的条码类型作为该图像的条码类型。通过以上技术的引入,可以极大地提高嵌入式平台上条码识别的性能和速度。 本专利技术的有益效果主要表现在:1、准确判断条码类型,提高识别性能;2、根据条码类型进行条码识别,提高识别速度。【附图说明】图1是现有技术中判断条码类型并识别条码的流程图。图2是本专利技术的判断条码类型的方法的流程图。图3是商品条码起始符的不意图。图4是128条码起始符(startA)的示意图。图5是39条码起始符的示意图。图6是矩阵25条码起始符的示意图。【具体实施方式】下面结合附图对本专利技术作进一步描述。参照图2?图6,,包括以下步骤: I)条码图像定位:首先对图像进行分块,并按照从左至右从上至下的顺序根据方差判断每块图像为前景块还是背景块。然后根据初步背景表,对每块前景块依次计算其梯度场,然后根据梯度场获得条码的倾斜方向与分布区域。需要特别指出的是这里采集的图像均为通过CMOS图像传感器采集的CMOS图像。2)条码图像采样:对条码图像进行采样的目的是获取条空宽度信息,其具体过程描述如下:沿着条码的倾斜方向获取一条条码数据,并分别按照不同阈值的二值化、不同长度的数据拉伸基于波峰波谷的不同阈值下的采样方法,获取多组采样数据。为了提高采样速度,这里仅对条数据两端的数据进行采样。3)采样数据类型判断:根据获取的一组采样数据得到其对应的条空宽度,并将该条空宽度与每种类型条码的起始符所对应的条空宽度进行对比,若找到匹配的条空宽度,则记录下该组数据所对应的条码类型,否则继续寻找匹配的条空宽度。继续对下一组采样数据进行判断,直到所有的采样数据均判断完成。4)继续获取下一条条码数据,并进行采样和类型判断即循环进行2)和3),直到所有的前景区域的条码数据均判断完毕。5)统计在整个扫描过程中,每种条码类型出现的次数并将出现频率最高的条码类型作为整幅图像的条码类型。6)根据获取到的条码类型进行条码识别并输出识别结果。图像定位技术:首先利用分块方差得到初步背景表,然后对前景区域的每个像素点计算梯度场。根据条码倾斜方向与梯度场的对应关系,得到条码的倾斜方向和可能位置,最后通过寻找连通区域更准确地找到条码所在区域。通过该定位方法不仅可以得到条码所在的位置而且可以得到条码的倾斜方向,为后续的多直线扫描打下良好的基础。条码采样技术:本专利技术采用了多种不同的方法来获取采样数据,每条条码数据均对应多种采样方法,得到多组采样数据。采用这种方式可以尽可能多地获得采样数据以得到更准确的条空信息。获得的采样数据包括a)采用不同阈值对图像进行二值化所得到的采样数据;b)将数据拉伸到不同长度所得到的采样数据;c)基于波峰波谷的不同阈值下的采样方法所得到的采样数据。对数据进行基于波峰波谷的不同阈值下的采样,具体描述如下:首先统计数据的直方图,然后寻找波峰波谷,最后设定不同阈值得到不同的采样数据。多直线扫描技术:首先沿着条码的倾斜方向对条码图像进行扫描以获取一条条码数据,对条码图像数本文档来自技高网
...
一种判断条码类型的方法

【技术保护点】
一种判断条码类型的方法,其特征在于:所述方法包括以下步骤:1)条码图像定位:首先对图像进行分块,并按照从左至右从上至下的顺序根据方差判断每块图像为前景块还是背景块;然后根据初步背景表,对每块前景块依次计算其梯度场,然后根据梯度场获得条码的倾斜方向与分布区域;2)条码图像采样:沿着条码的倾斜方向获取一条条码数据,并分别按照不同阈值的二值化、不同长度的数据拉伸和基于波峰波谷的不同阈值下的采样方法,获取多组采样数据;3)采样数据类型判断:根据获取的一组采样数据得到其对应的条空宽度,并将该条空宽度与每种类型条码的起始符所对应的条空宽度进行对比,若找到匹配的条空宽度,则记录下该组数据所对应的条码类型,否则继续寻找匹配的条空宽度;继续对下一组采样数据进行判断,直到所有的采样数据均判断完成;4)继续获取下一条条码数据,并进行采样和类型判断即循环进行步骤2)和步骤3),直到所有的前景区域的条码数据均判断完毕;5)统计在整个扫描过程中,每种条码类型出现的次数并将出现频率最高的条码类型作为整幅图像的条码类型;6)根据获取到的条码类型进行条码识别并输出识别结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:罗美美杨波
申请(专利权)人:杭州晟元数据安全技术股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1