发明名称 基于DaVinci技术的一维条码识别方法
摘要 本发明提供一种基于DaVinci技术的一维条码识别方法,包括下述步骤:A.输入图像预处理的步骤:对输入的RGB格式的源图像进行灰度化处理,以及缩小处理和去噪处理,分别获得解码用灰度图、定位用灰度图、去噪后灰度图;B.条码定位的步骤:对步骤A中获得的三张灰度图进行相关处理,提取条码区域并校正角度;C.解码的步骤:对提取的条码区域进行扫描和解码,获得条码码值。本发明对条码的识别算法进行了特殊的设计和优化,提高了算法的鲁棒性,满足了复杂的工业环境中的自动化、实时的条形码识别需求。
申请公布号 CN103793679B 申请公布日期 2016.08.17
申请号 CN201410079991.7 申请日期 2014.03.05
申请人 江苏物联网研究发展中心 发明人 程玉庭;班健;李功燕
分类号 G06K7/10(2006.01)I 主分类号 G06K7/10(2006.01)I
代理机构 无锡市大为专利商标事务所(普通合伙) 32104 代理人 殷红梅
主权项  一种基于DaVinci技术的一维条码识别方法,其特征在于,包括下述步骤:A.输入图像预处理的步骤:对输入的RGB格式的源图像进行灰度化处理,以及缩小处理和去噪处理,分别获得解码用灰度图、定位用灰度图、去噪后灰度图;B.条码定位的步骤:对步骤A中获得的三张灰度图进行相关处理,提取条码区域并校正角度;C.解码的步骤:对提取的条码区域进行扫描和解码,获得条码码值;所述步骤A具体包括以下子步骤:A‑1,首先将输入的RGB格式的源图像进行灰度化处理,即可得到解码用灰度图;A‑2,接着利用插值算法,将解码用灰度图按照需要的倍数缩小,获得定位用灰度图;A‑3,随后利用高斯模糊的方法对定位用灰度图进行平滑去噪,得到去噪后灰度图;子步骤A‑1中,源图像灰度化处理时所用的图像灰度化公式为:Gray = 0.30 * R + 0.59 * G + 0.11 * B,Gray代表灰色,R代表红色,G代表蓝色,B代表绿色;所述步骤B具体包括以下子步骤:B‑1,顶帽滤波:对去噪后灰度图和定位用灰度图进行顶帽滤波处理,获得滤波后灰度图;B‑2,获取掩码:由滤波后灰度图的相关信息,对定位用灰度图进行二值化阈值处理,获取初步的掩码;对该初步的掩码进行形态学操作,消除噪声,连通条码区域,得到条码区域的掩码,并对条码区域的掩码进行放大,使得掩码的大小与解码用灰度图相同;B‑3,用放大后的掩码处理解码用灰度图,获取解码用灰度图中的条码区域;B‑4,条码旋正:利用霍夫变换算法,获取条码区域中与条空平行的直线的倾斜角,并根据该倾斜角对条码区域进行旋正;子步骤B‑2中,进行二值化阈值处理时,所取阈值是滤波后灰度图最大亮度乘以0.8;所述步骤C具体包括以下子步骤:C‑1,逐行地扫描旋正后的条码区域,得到扫描线;C‑2,对扫描线进行二值化处理;C‑3,读取并根据二值化后的扫描线中的条空信息求条码的各码字的码值逻辑值;然后得到一个条码中所有码字的码值逻辑值组成的逻辑值数组;C‑4,判断解码方向;C‑5,根据码字的码值逻辑值与码字的对应关系,得到一个条码的所有码字的码值;C‑6,进行条码码值校验,若校验通过则解码成功,否则重新扫描一条扫描线,重复步骤C‑1至C‑6继续做解码操作;子步骤C‑2中,具体利用最大类间差分算法对扫描线进行二值化处理;子步骤C‑3中,码字的码值逻辑值用b<sub>1</sub>b<sub>2</sub>b<sub>3</sub>b<sub>4</sub>b<sub>5</sub>表示,其中:b<sub>n</sub>=a<sub>n</sub>+a<sub>n+1</sub>(n=1,2,3,4,5),a<sub>n</sub>(n=1,2,3,4,5,6)表示每个条或空的宽度所占的单位模板个数。
地址 214135 江苏省无锡市新区菱湖大道200号中国传感网国际创新园C座4楼
您可能感兴趣的专利