一种自动修复识别二维码码图符号的解码方法及其设备技术

技术编号:10022101 阅读:236 留言:0更新日期:2014-05-09 03:56
一种自动修复识别二维码码图符号的解码方法,①、获取二维码的码图符号图像,并对获取的码图符号图像进行二值化处理;②、对码图符号图像中的圆形单元模块进行边缘检测,得到边界图像;③、对边界图像进行闭合边界跟踪;④、进行闭合边界跟踪后,对圆形单元模块进行识别,用于将非圆形闭合边界丢弃;⑤、对不同码图符号图像中的圆形单元模块进行区别和剔除;⑥、方向定位:根据各圆形单元模块的闭合边界坐标,计算得到圆形单元模块的最小外接矩形;经过该最小外接矩形的中心坐标划一条水平线与垂直线,其交点为图像原点,将圆形单元模块分成左上、右上、左下、右下四个区,每一个区中离最小外接矩形的中心最远的点就是该区的定位圆形单元模块;⑦、码词还原并纠错。

【技术实现步骤摘要】
【专利摘要】一种自动修复识别二维码码图符号的解码方法,①、获取二维码的码图符号图像,并对获取的码图符号图像进行二值化处理;②、对码图符号图像中的圆形单元模块进行边缘检测,得到边界图像;③、对边界图像进行闭合边界跟踪;④、进行闭合边界跟踪后,对圆形单元模块进行识别,用于将非圆形闭合边界丢弃;⑤、对不同码图符号图像中的圆形单元模块进行区别和剔除;⑥、方向定位:根据各圆形单元模块的闭合边界坐标,计算得到圆形单元模块的最小外接矩形;经过该最小外接矩形的中心坐标划一条水平线与垂直线,其交点为图像原点,将圆形单元模块分成左上、右上、左下、右下四个区,每一个区中离最小外接矩形的中心最远的点就是该区的定位圆形单元模块;⑦、码词还原并纠错。【专利说明】—种自动修复识别二维码码图符号的解码方法及其设备
本专利技术涉及一种自动修复识别二维码码图符号还原为数据的解码方法及其解码设备。
技术介绍
二维码的组成分为三个部分:格式信息区域、特征模式区域、数据区域。扫描码图符号格式与数据纠错相关的参数存放在格式信息区域,码图符号由特征模式区域指导图像识别算法进行识别定位,经过纠错编码算法后的数据存放在数据区域。这种解码方法对二值化阈值的选择非常敏感,造成二值化后的模块粘连在一起,不利于解码和定位。
技术实现思路
本专利技术的目的就是为了克服以上现有技术的不足,提供一种自动修复识别二维码码图符号还原为数据的解码设备,其识读、纠错能力强,对二维码码图要求低,可广泛应用。为实现上述目的,本专利技术采用以下技术方案: 一种自动修复识别二维码码图符号的解码方法,包括以下步骤: ①、获取二维码的码图符号图像,并对获取的码图符号图像进行二值化处理; ②、对码图符号图像中的圆形单元模块进行边缘检测,得到边界图像; ③、对边界图像进行闭合边界跟踪;④、进行闭合边界跟踪后,对圆形单元模块进行识别,用于将非圆形闭合边界丢弃; ⑤、对不同码图符号图像中的圆形单元模块进行区别和剔除; ⑥、方向定位:根据各圆形单元模块的闭合边界坐标,计算得到圆形单元模块的最小外接矩形;经过该最小外接矩形的中心坐标划一条水平线与垂直线,其交点为图像原点,将圆形单元模块分成左上、右上、左下、右下四个区,每一个区中离最小外接矩形的中心最远的点就是该区的定位圆形单元模块; ⑦、码词还原并纠错:根据与编码时的码词比特到圆形单元模块的布局,及条码符号中的各圆形单元模块坐标,设置码词各比特位的值,有圆形单元模块对应的名称的比特位为比特1,否则为比特O ;运用Reed-solomon纠错算法对码词纠错;纠错成功后,输出数据字。在所述的步骤①中,对获取的二维码码图符号图像进行图像增强和自动修复处理,然后再进行二值化处理;且在该步骤中,图像增强算法为USM算法。在所述的步骤②中,边缘检测获得的边界像素定义为像素值为O且相邻8个像素中有非O像素的像素;边缘检测的方法是:对二值图像中所有像素作边界判定得到边界图像,将边界像素标记为最大亮度255,其余则标记为O。在所述的步骤③中,对边界图像进行闭合边界跟踪的方法为:31)对边界图像按行主的方向扫描,以扫描到的第一个边界像素为边界跟踪的起点像素,如果没有边界像素则表明本次流程结束;32)将起点像素的像素坐标放入队列Q,并将该起点像素标记为0,表示已跟踪过了 ;33)判断起点像素的相邻8个像素中是否有边界像素,如果有则任选一个像素作为下次跟踪的起点,跳转到32);否则本次跟踪结束,队列Q中的像素坐标即是一个闭合边界,存储队列Q中的像素坐标列表并将其清空,跳转到31)。步骤④中,圆形单元模块识别的过程如下:41)将闭合边界所有边界点的像素横坐标累加,将累加和除以边界点总数得到闭合边界的中心点像素横坐标U,将所有边界点像素纵坐标累加,将累加和除以边界点总数得到闭合边界的中心点像素纵坐标V ;42)以闭合边界中心点像素坐标(U,V)按四个方向扫描闭合边界的直径,分别得到四个长度值 dl,d2,d3,d4 ;43)平均直径为 d=(dl+d2+d3+d4) /4,定义圆的规范度 N 为 N= | d_dl | /d+1 d-d2 I /d+1 d-d3 I /d+1 d-d4 I /d ;44)对每一个闭合边界计算圆的规范度N值,根据实测统计结果将N值大于设定阈值Tn的闭合边界丢弃,剩下的闭合边界认为是圆形单元模块的边界。步骤⑤的过程如下:51)取得两个圆的尺寸差异度:设一个圆的直径长度为D1,另一个圆的直径长度为D2,则这两个圆的尺寸差异度Ldif为:Ldif= I D1-D21/max (D1, D2),设定条码的静区宽度为M个圆形单元模块直径,并且圆的尺寸差异度为Ldif ;52)选择离图像中心点最近的圆形单元模块为种子圆形单元模块,然后将距离该圆形单元模块距离小于M且尺寸差异度Ldif小于预设值的圆形单元模块加入到分组中;53) —轮增长结束后,以新加入组的圆形单元模块为种子圆形单元模块重复增长过程,知道没有新的圆形单元模块加入组为止。步骤⑥中方向定位的过程如下:61)找出码图符号的四角定位圆形单元模块;62)设定四角定位圆形单元模块的坐标;63)按照坐标校正公式,计算各圆形单元模块的坐标。一种自动修复识别二维码码图符号的解码设备,它包括光源,光源照射到二维码码图符号图像上后,发射光穿过光学透镜并会聚到扫描模组上,扫描模组把光信号转换成模拟信号,经模拟数字转换电路转换后输出数字信号至中心处理器,所述的中心处理器采用解码方法对码图符号图像进行解码后,输出数据字。所述中心处理器外设有塑料外壳。采用上述技术方案的本专利技术,由于本专利技术的二维码选用圆形单元模块,且模块与模块之间保留间隙;圆形单元模块在深度离焦条件下成像后还是圆形单元模块,经过unsharp mask滤波后能很好的还原圆形单元模块的形状。这种设计使得图像处理算法对二值化阈值的选择不敏感,这是因为虽然阈值会影响到二值化后圆形单元模块的大小,但圆形单元模块的中心坐标不会因阈值的变化而漂移,又因模块间有间隙,减小了二值化后相邻模块粘连在一起的可能性,使得每个模块可以被单独定位。因此,本专利技术即便在深度离焦、低照度成像条件下人可以可靠地识读、解码;易识读,纠错能力强,对识读设备和二维码码图要求低,利于广泛推广应用。【专利附图】【附图说明】图1是本专利技术的一种二维码码图符号。图2是本专利技术的解码流程示意图。图3是解码过程中采集的二维码原始图像。图4是图3 二维码原始图像的增强图像。图5是对图4增强图像的二值化后的图像。图6是对图5进行边界检测得到的边界图像。图7是对边界图像进行闭合边界跟踪的结果图像。图8是对闭合边界跟踪的结果图像进行圆形单元模块识别的示意图。图9是重构出的二维码码图符号。图10是边界检测时某个像素相邻像素的定义示意图。图11是本专利技术的原理框图。【具体实施方式】本专利技术选用圆形单元模块,且模块与模块之间保留间隙;圆形单元模块在深度离焦条件下成像后还是圆形单元模块,经过unsharp mask滤波后能很好的还原圆形单元模块的形状。这种设计使得图像处理算法对二值化阈值的选择不敏感,这是因为虽然阈值会影响到二值化后圆形单元模块的大小,但圆形单元模块的中心坐标不会因阈值的变化而漂移,又因本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:孙鹏赵勃
申请(专利权)人:河南盛唐信息技术有限公司
类型:发明
国别省市:

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

1