基于聚类算法的一维条码检测的方法及装置制造方法及图纸

技术编号:13747533 阅读:71 留言:0更新日期:2016-09-24 04:18
一种基于聚类算法的一维条码检测的方法及装置,其包括:依据一维条码的条码整齐的特点,对梯度方向一致的点进行首次的聚类;依据一维条码相对比较密集的特点,对相对密集的点进行再次的聚类;以及计算出这些点的最小外截矩形,即为定位出的区域。本发明专利技术适用范围广,准确率高,稳定性高,能够大大改善一维条码的检测效果。

【技术实现步骤摘要】

本专利技术涉及图像识别技术,尤其涉及到一维条码的自动检测技术。
技术介绍
在机器视觉应用中,经常需要识别图片中的一维条码;而且在实际应用中,需要考虑到一维条码出现在视野中各种位置、角度,甚至一维条码部分内容超出视野的情况,在解码之前需先对一维条码进行定位,所以开发出一种适用性广、鲁棒性强、准确率高的一维条码定位算法对于工业应用意义重大。目前已有的算法中,例如:google的zxing库中起始和终止图案定位法:先对图像进行间隔取点,每次取一整行的点;然后,对取到的这一行点进行分析,判断有无起始和终止图案。具体为:先将这行点用直方图法进行二值化,然后从第一点开始,依次计算出连续的黑像素和白像素的宽度,根据一维条码的具体类型,对这些宽度值,从前往后依次用相似边距法计算是否有起始符号,如果找到起始符号,则对起始符后面固定个数的黑白像素宽度来解码,解完码之后再判断后面是否有终止符。这种的检测方法,只能针对水平或水平倾斜角度较小的情况,如果一维条码角度倾斜较大,则定位不成功;且对噪声敏感,鲁棒性不强,如果图片不清晰、噪声较多时也容易出现定位不成功情况。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提出一种基于
聚类算法的一维条码检测的方法及装置,适用范围广,准确率高,稳定性高,能够大大改善一维条码的检测效果。本专利技术解决其技术问题所采用的技术方案是:提供一种基于聚类算法的一维条码检测的方法,其包括:依据一维条码的条码整齐的特点,对梯度方向一致的点进行首次的聚类;依据一维条码相对比较密集的特点,对相对密集的点进行再次的聚类;以及计算出这些点的最小外截矩形,即为定位出的区域。在一些实施例中,在所述的对梯度方向一致的点进行首次的聚类之前,还包括:计算出图像中轮廓的真实边缘点,并计算出这些边缘点的梯度方向。在一些实施例中,所述的图像中轮廓的真实边缘点是指灰度梯度变化极大值点。在一些实施例中,在所述的计算出图像中轮廓的真实边缘点的过程中,采用间隔取点,以减少计算量。在一些实施例中,所述的对梯度方向一致的点进行首次的聚类是指:对所有边缘点进行统计,将梯度方向一致且数量符合要求的点分类出来。在一些实施例中,所述的对相对密集的点进行再次的聚类是指:将密集程度符合要求的点分类出来。在一些实施例中,在所述的计算出这些点的最小外截矩形之后,还包括:根据一维条码的大小,对定位出来的区域进行筛选。本专利技术解决其技术问题所采用的技术方案还是:提供一种基于聚类算法的一维条码检测的装置,其包括:第一单元,用于依据一维条码的条码整齐的特点,对梯度方向一致的点进行首次的聚类;第二单元,用于依据一维条码相对比较密集的特点,对相对密集的点进行再次的聚类;以及第三单元,用于计算出这些点的最小外截矩形,即为定位出的区域。在一些实施例中,还包括:第四单元,用于计算出图像中轮廓的真实边缘点,并计算出这些边缘点的梯度方向。在一些实施例中,还包括:第五单元,用于根据一维条码的大小,对定位出来的区域进行筛选。本专利技术的有益效果在于,通过巧妙地对梯度方向一致的点进行首次的聚类,然后对相对密集的点进行再次的聚类,再计算出这些点的最小外截矩形,适用范围广,准确率高,稳定性高,能够大大改善一维条码的检测效果。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1为本专利技术基于聚类算法的一维条码检测的方法的原理示意。图2为本专利技术基于聚类算法的一维条码检测的方法的流程示意。图3为本专利技术基于聚类算法的一维条码检测的装置的框图示意。具体实施方式现结合附图,对本专利技术的较佳实施例作详细说明。参见图1,图1为本专利技术基于聚类算法的一维条码检测的方法的原理示意。本专利技术主要是利用一维条码的条码整齐且相对密集这两个特点进行定位。步骤104、计算出图像中轮廓的真实边缘点,即灰度梯度变化极大值点,并计算出这些边缘点的梯度方向。实际应用中可以间隔取点,减少计算量。步骤101、根据一维条码的条码整齐这个特点,可知一维条码边缘上的点的灰度梯度方向很一致,这里将边缘由白到黑和由黑到白认为是同一个方向,利用这个特点可以将一维条码的边缘点从图片中的边缘点中聚类出来,当然这
也会提取一些不是一维条码但梯度方向相似的边缘点,接下来再用一维条码的第二个特点继续筛选。步骤102、利用一维条码相对比较密集这一特点,可继续筛选,从上一步点中提取那些相对密集的点。步骤103、计算出这些点的最小外截矩形,这个外截矩形就是定位出的区域。步骤105、根据一维条码的大小,对定位出来的区域进行筛选。筛选完之后可能还是会存在一些与一维条码相似的区域,这在实际应用中是正常的,也可以调整一些参数,来调整定位的效果。参见图2,图2为本专利技术基于聚类算法的一维条码检测的方法的流程示意。本专利技术的方法具体包括:步骤201、计算出图片中所有轮廓的点。具体而言,应计算出轮廓的真实边缘点,即灰度梯度变化极大值点,然后计算出这些边缘点的梯度方向。实际应用中可以间隔取点,减少计算量。步骤202、聚类出梯度方向一致的点集。具体而言,对所有边缘点进行统计,将梯度方向一致且数量符合要求的点分类出来,可能会分类出多个类,这是正常的,当前将方向一致数量满足要求的点认为是一维码的候选点集。步骤203、是否有符合要求的点集?是的话,转步骤204,否则转步骤207。步骤204、再次聚类,将相对密集的点聚类。具体而言,由于一维码边缘上的点相对比较密集,点与点之间的距离不会超过一维码最大条码的宽度,利用这一点,可以对筛选后的点集再次聚类,将密集程度符合要求的点分类出来;现在得到的点集都是梯度方向一致并且比较密集的点,那么完全可以将这些梯度方向一致并且密集的点当做一维码的候选点集,也可以根据一维码的大小来
调节聚类的效果。步骤205、是否有符合要求的点集?是的话,转步骤206,否则转步骤207。步骤206、计算筛选出来的点集最小外截矩形。具体而言,这个外截矩形就是定位出的区域。可能还是会存在一些与一维码相似的区域,这在实际应用中是正常的,也可以调整一些参数,来调整定位的效果。步骤207、结束。参见图3,图3为本专利技术基于聚类算法的一维条码检测的装置的框图示意。本专利技术的装置包括:第四单元304、用于计算出图像中轮廓的真实边缘点,即灰度梯度变化极大值点,并计算出这些边缘点的梯度方向。实际应用中可以间隔取点,减少计算量。第一单元301、用于根据一维条码的条码整齐这个特点,可知一维条码边缘上的点的灰度梯度方向很一致,这里将边缘由白到黑和由黑到白认为是同一个方向,利用这个特点可以将一维条码的边缘点从图片中的边缘点中聚类出来,当然这也会提取一些不是一维条码但梯度方向相似的边缘点,接下来再用一维条码的第二个特点继续筛选。第二单元302、用于根据一维条码相对比较密集这一特点,可继续筛选,从上一步点中提取那些相对密集的点。第三单元303、用于计算出这些点的最小外截矩形,这个外截矩形就是定位出的区域。以及第五单元305、用于根据一维条码的大小,对定位出来的区域进行筛选。筛选完之后可能还是会存在一些与一维条码相似的区域,这在实际应用中是正常的,也可以调整一些参数,来调整定位的效果。本专利技术的有益效果在于,通过巧妙地对梯度方向一致的点进行首次的聚类本文档来自技高网
...

【技术保护点】
一种基于聚类算法的一维条码检测的方法,其特征在于,包括:依据一维条码的条码整齐的特点,对梯度方向一致的点进行首次的聚类;依据一维条码相对比较密集的特点,对相对密集的点进行再次的聚类;以及计算出这些点的最小外截矩形,即为定位出的区域。

【技术特征摘要】
1.一种基于聚类算法的一维条码检测的方法,其特征在于,包括:依据一维条码的条码整齐的特点,对梯度方向一致的点进行首次的聚类;依据一维条码相对比较密集的特点,对相对密集的点进行再次的聚类;以及计算出这些点的最小外截矩形,即为定位出的区域。2.根据权利要求1所述的方法,其特征在于:在所述的对梯度方向一致的点进行首次的聚类之前,还包括:计算出图像中轮廓的真实边缘点,并计算出这些边缘点的梯度方向。3.根据权利要求2所述的方法,其特征在于:所述的图像中轮廓的真实边缘点是指灰度梯度变化极大值点。4.根据权利要求2所述的方法,其特征在于:在所述的计算出图像中轮廓的真实边缘点的过程中,采用间隔取点,以减少计算量。5.根据权利要求2所述的方法,其特征在于:所述的对梯度方向一致的点进行首次的聚类是指:对所有边缘点进行统计,将梯度方向一致且数量符合要求的点分类出来。6.根据权...

【专利技术属性】
技术研发人员:李文科
申请(专利权)人:昂纳自动化技术深圳有限公司
类型:发明
国别省市:广东;44

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

1