一种点阵式dm二维码图像处理方法及装置制造方法
【专利摘要】本发明涉及一种点阵式DM二维码图像处理方法及装置,该方法包括:步骤一,读取图像并统一尺寸;步骤二,转化为灰度图;步骤三,高斯平滑滤波处理;步骤四,二值化处理;步骤五,斑点检测获得码元直径;步骤六,根据码元直径对原始灰度图进行动态滤波及改进的二值化处理;步骤七,对二值化图像进行开、闭运算,获得点阵图像;步骤八,对点阵图像中值滤波处理,转化为标准二维码图像。该方法能够克服点阵式DataMatrix码在识别中间隙过大、光照不均匀和噪声干扰等问题,可通过目前的DM码手持识别设备进行检测,硬件上无需二次开发,系统设计可行快速有效,能满足目前对点阵式DM解码的实际需求。
【专利说明】一种点阵式DM二维码图像处理方法及装置
【技术领域】
[0001] 本发明属于二维码计算机图像处理【技术领域】,特别涉及一种点阵式DM二维码图 像处理方法和装置。
【背景技术】
[0002] 点阵式DM(DataMatrix)目前主要应用于汽车制造、制药医疗、军队枪械管理等领 域,由于其易于生成,因此在金属、玻璃、硬塑等材料中到了广泛的应用。同时由于点阵式DM 二维码生成方法和使用材料的多样性导致其条形码图像普遍存在对比度低、多噪声干扰、 背景复杂、采集过程中出现的光照不均匀等情况。与标准的DM符号不同,点阵式DM二维码 的点间空隙大,如图1所示。如对这种码毫无处理地进行识别,则又会加大识别的难度,因 此对于点阵式二维码图像进行图像预处理是很有必要的。
[0003] 随着嵌入式平台的发展与推广,已经出现了便携式二维码识别阅读器,使对二维 码的识读更加快捷方便,目前关于DM码图像预处理的研究层出不穷,但是对于点阵式DM码 图像预处理的研究相对较少。因此本发明提出了点阵式DM图像预处理方法以及相应的装 置。
【发明内容】
[0004] 本发明针对点阵式DataMatriX二维码存在的识别率低的问题,提出了一系列结 合二值化的形态学变换的图像预处理方法,并通过斑点检测使平滑模糊与形态学变换具有 自适应性。该方法能够克服点阵式DataMatrix码在识别中间隙过大、光照不均匀和噪声干 扰等问题,并将点阵式DM二维码转化为标准的格式,从而可通过目前的DM码手持识别设备 进行检测,硬件上无需二次开发,系统设计可行快速有效,能满足目前对点阵式DM解码的 实际需求。
[0005] 本发明提供了一种点阵式DM二维码图像处理方法,包括:
[0006] 步骤一:读取点阵式DM二维码图像,在不改变原点阵式DM二维码图像宽高比例的 基础上,利用最近邻插值算法或双线性插值算法进行宽度统一化处理;
[0007] 步骤二:将统一尺寸后的图像转换为灰度图;
[0008] 步骤三:对灰度化后的图像进行高斯平滑滤波处理,去除图像背景的细小纹理,使 点阵码元的实心点更加平滑;
[0009] 步骤四:将高斯平滑滤波后的灰度级图像转化为黑白二值化图像;
[0010] 步骤五:对步骤四中二值化后的图像进行码元检测,得到点阵式码元的直径;
[0011] 步骤六:根据步骤五获得的点阵码元的直径大小而动态的改变平均模板的大 小,进而对步骤二中的灰度图进行动态均值滤波处理,对动态均值滤波后的灰度图再进行 kittler算法与Bernsen算法相结合的改进的二值化处理;
[0012] 步骤七:将步骤六获得的二值化图像进行形态学的开运算和闭运算操作,得到处 理后的点阵图像,其中,
[0013] 开运算用下式表示:
[0014] Α〇Β = (ΑΘΒ)?Β
[0015] 闭运算用下式表示:
[0016] A· B = (ΑΦ Β)ΘΒ
[0017] 其中A为输入的二值图像,B为正方形结构元素。
[0018] 步骤八:将步骤七获得的点阵图像通过中值滤波去噪处理,转变为可识别的块状 结构的标准DM二维码图像。
[0019] 进一步的,所述步骤七开运算中的正方形结构元素 B的边长优选为点阵码元直径 的1/3,闭运算中正方形结构元素 B的边长优选为小于点阵码元直径1至5个显示像素点。
[0020] 进一步的,步骤八使用的中值滤波去噪处理优选为通过以下步骤实现:
[0021] 把图像中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近 真实值,从而消除孤立的噪声点,其中二维中值滤波输出通过下式获得:
[0022] g (x, y) = med {f (χ-k, y-1), (k, I e ff)}
[0023] 其中,!^(1{}表示取数组序列的中间值汀〇^7)4〇^7)分别为原始图像和处理后 图像;W为3X3大小的二维模板;k,I均为整数,分别表示坐标x、y方向上的增量。
[0024] 进一步的,步骤六的动态均值滤波处理优选的进一步包括如下步骤:
[0025] (1)模板大小通过下式获得:
[0026]
【权利要求】
1. 一种点阵式DM二维码图像处理方法,包括: 步骤一:读取点阵式DM二维码图像,在不改变原点阵式DM二维码图像宽高比例的基础 上,利用最近邻插值算法或双线性插值算法进行宽度统一化处理; 步骤二:将统一尺寸后的图像转换为灰度图; 步骤三:对灰度化后的图像进行高斯平滑滤波处理,去除图像背景的细小纹理,使点阵 码元的实心点更加平滑; 步骤四:将高斯平滑滤波后的灰度级图像转化为黑白二值化图像; 步骤五:对步骤四中二值化后的图像进行码元检测,得到点阵式码元的直径; 步骤六:根据步骤五获得的点阵码元的直径大小而动态的改变平均模板的大小,进而 对步骤二中的灰度图进行动态均值滤波处理,对动态均值滤波后的灰度图再进行kittler 算法与改进的Bernsen算法相结合的二值化处理; 步骤七:将步骤六获得的二值化图像进行形态学的开运算和闭运算操作,得到处理后 的点阵图像,其中, 开运算用下式表示: 闭运算用下式表示: 其中A为输入的二值图像,B为正方形结构元素。 步骤八:将步骤七获得的点阵图像通过中值滤波去噪处理,转变为可识别的块状结构 的标准DM二维码图像。
2. 根据权利要求1所述的点阵式DM二维码图像处理方法,其特征在于,所述步骤七开 运算中的正方形结构元素B的边长优选为点阵码元直径的1/3,闭运算中正方形结构元素B 的边长优选为小于点阵码元直径1至5个显示像素点。
3. 根据权利要求1所述的点阵式DM二维码图像处理方法,其特征在于,步骤八使用的 中值滤波去噪处理优选为通过以下步骤实现: 把图像中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近真实 值,从而消除孤立的噪声点,其中二维中值滤波输出通过下式获得: g(x,y) =med{f(χ-k,y-1), (k,Ieff)} 其中,med{}表示取数组序列的中间值;f(x,y),g(x,y)分别为原始图像和处理后图 像;W为3X3大小的二维模板;k,l均为整数,分别表示坐标x、y方向上的增量。
4. 根据权利要求1所述的点阵式DM二维码图像处理方法,其特征在于:步骤六的动态 均值滤波处理优选的进一步包括如下步骤: (1) 模板大小通过下式获得: A:= XD-1),其中round表不取整操作; 2 (2) 计算平均滤波模板:
其中,k为平均模板的大小,D为点阵码元的直径,ε是平均模板; (3)按照下式进行平均滤波: Ii (X,y) = ε *1 (X,y) 其中I(X,y)表示灰度图矩阵,I1U,y)表示滤波后图像灰度矩阵。
5. 根据权利要求1所述的点阵式DM二维码图像处理方法,其特征在于:步骤四中将高 斯平滑滤波后的灰度级图像转化为黑白二值化图像的过程具体包括: (1) 用Kittler算法得到全局阈值T,计算该全局阈值T的方法如下:
其中,f(X,y)是步骤二获得的原始的灰度图,e(x,y) =max{|ex|,|ey|}即梯度最大 值,ex =f(x-1,y)_f(x+l,y)是水平方向上的梯度,ey =f(X,y-l)_f(x,y+1)是垂直方向 上的梯度; (2) 扫描整个f(x,y)灰度图像,则二值化结果为:
其中b(x,y)为二值化结果。
6. 根据权利要求1所述的点阵式DM二维码图像处理方法,其特征在于:步骤六使用的 kittler算法与改进的Bernsen算法相结合的二值化处理包括如下具体步骤: 步骤(1)用Kittler算法得到全局阈值T,计算该全局阈值T的方法如下:
其中,f(X,y)是步骤二获得的原始的灰度图,e(x,y) =max{|ex|,|ey|}即梯度最大 值,ex =f(x-1,y)_f(x+l,y)是水平方向上的梯度,ey =f(X,y-l)_f(x,y+1)是垂直方向 上的梯度; 步骤(2)采用Bernsen算法对图像直方图中光照不均的区间进行处理,该区间的灰度 值集中在步骤(1)得到的全局阈值T附近, 如果T3 >D,D是Bernsen算法处理的区间宽度即点阵码元的直径 则二值化结I
如果T3 <D,D是Bernsen算法处理的区间宽度即点阵码元的直径 则二值化结果2
其中, T3是阈值选择依据且T3(x,y) =maxs-mins, T2 (x,y) =0.5 (maxd+mind), T4 (x,y) = 0. 5 (T+T2 (x,y)); 其中, maXd =-23%,/(Χ+Μ+ /),maxd表示像素点(x,y)在大小为4w*4w的窗口中最大像 素值; min〃 '表示像素点(X,y)在大小为4w*#的较大窗口中最小像 素值; +b+ 表示像素点(x,y)在大小为2w*2w的较小窗口中最大像素 值; mi~'3%/(x+lfe,x+/),表示像素点(x,y)在大小为2w*2w的较小窗口中最小像素 值; 上述式中的max表示取窗口内像素的最大值,min表示取窗口内像素的最小值,k和1 均为整数,分别表示坐标x、y方向上的增量;w表示局部阈值运算的窗口,w取值范围为5? 9,T2表示窗口内像素灰度平均值,T4是T2与全局阈值T的平均值。
7.根据权利要求1所述的点阵式DM二维码图像处理方法,其特征在于,步骤五中的码 元检测具体流程如下: 利用高斯拉普拉斯算子检测图像码元,对于二维高斯函数:
其中,σ为函数的宽度参数即特征尺度,用于控制函数的径向作用范围,〇越大表示 函数的径向越宽,其相似的码元越大,〇越小表示函数的径向越窄,其相似的码元越小,X, y表示二维空间位置,g(x,y,σ)表示二维高斯函数; 式(1)的拉普拉斯变换为:
其中,A2g表示二维高斯函数的拉普拉斯函数,△ 2表示二阶微分算子,g表示二维高斯 函数; 规范化的高斯拉普拉斯变换为:
式(3)中A2"_g表示规范化的高斯拉普拉斯函数,其方差为O; 式(3)所示的规范化的二维高斯拉普拉斯函数是圆对称函数,通过改变〇的值,检测 不同尺寸的二维码码元,而求取得极点值等价于求取下式:
其中,g)表示对规范化的高斯拉普拉斯函数 求〇的偏导,a(A?_g)=0 θσ"ormSδσ 表示求规范化的高斯拉普拉斯函数的极点值; 亦即: r2-2Q2 =O
其中r表示二维码图像二值化后的圆形码元的半径,在尺度σ= "^时,高斯拉普拉 斯响应值达到最大,同理,如果图像中的圆形码元黑白反相,那么,该码元的高斯拉普拉斯 响应值在尺度为cr=r/V^时达到最小,高斯拉普拉斯响应达到峰值时的尺度σ值是码元 检测的特征尺度,计算二值化后的图像在不同尺度下的离散拉普拉斯响应值,然后检查位 置空间中的每个点,若该点的拉普拉斯响应值都大于或小于其它立方空间邻域的值,那么, 该点就是被检测到的二维码数据元素点,上述寻找位置空间和尺度空间f的峰值可通 过如下函数表示:
该函数表示同时在空间位置和尺度上拉普拉斯响应达到最大值或最小值的点的取值, 该点就是所要检测的码元;其中,t表示尺度值,(X,y)表示空间位置,maxminlocal(x,y,t) (·)表示响应函数在空间和尺度位置上的最大值或最小值,arg( ·)表示对应函数值的变 量的取值,Δ2"_Ζ(υ,〇表示在尺度空间下标准二维拉普拉斯函数。
8. -种点阵式DM二维码图像处理装置,包括: 图像读取模块,用于读取点阵式DM二维码图像,在不改变原点阵式DM二维码图像宽高 比例的基础上,利用最近邻插值算法或双线性插值算法进行宽度统一化处理; 灰度转换模块,用于将统一尺寸后的图像转换为灰度图; 高斯平滑滤波模块,用于对灰度化后的图像进行高斯平滑滤波处理,去除图像背景的 细小纹理,使点阵码元的实心点更加平滑; 二值化转换模块,用于将高斯平滑滤波后的灰度级图像转化为黑白二值化图像; 码元检测模块,用于对二值化转换模块中二值化后的图像进行码元检测,得到点阵式 码元的直径; 动态均值滤波及二值化转换模块,用于根据码元检测模块获得的点阵码元的直径大 小而动态的改变平均模板的大小,进而对灰度转换模块获得的灰度图进行动态均值滤波处 理,对动态均值滤波后的灰度图再进行kittler算法与改进的Bernsen算法相结合的二值 化处理; 运算操作模块,用于将动态均值滤波及二值化转换模块获得的二值化图像进行形态学 的开运算和闭运算操作,得到处理后的点阵图像,其中, 开运算用下式表示:
闭运算用下式表示:
其中A为输入的二值图像;B为止万形铕构兀荼; 标准化模块,用于将运算操作模块获得的点阵图像通过中值滤波去噪处理,转变为可 识别的块状结构的标准DM二维码图像。
9. 根据权利要求8所述的点阵式DM二维码图像处理装置,其特征在于,所述运算操作 模块的开运算中的正方形结构元素B的边长优选为点阵码元直径的1/3,闭运算中正方形 结构元素B的边长优选为小于点阵码元直径1至5个显示像素点。
10. 根据权利要求8所述的点阵式DM二维码图像处理装置,其特征在于,标准化模块使 用的中值滤波去噪处理优选为通过以下方式实现: 把图像中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近真实 值,从而消除孤立的噪声点,其中二维中值滤波输出通过下式获得: g (x, y) = med {f (χ-k, y-1), (k, I e ff)} 其中,med{}表示取数组序列的中间值;f (x, y),g(x, y)分别为原始图像和处理后图 像;W为3X3大小的二维模板;k,l均为整数,分别表示坐标x、y方向上的增量。
【文档编号】G06T5/00GK104463795SQ201410674241
【公开日】2015年3月25日 申请日期:2014年11月21日 优先权日:2014年11月21日
【发明者】高韬 申请人:高韬