基于复杂背景的二维条码提取技术

2014-07-19 11:58陈文艺陈蓓敏
西安邮电大学学报 2014年2期
关键词:角点条码灰度

陈文艺, 陈蓓敏

(1西安邮电大学 物联网与两化融合研究院, 陕西 西安 710061; 2 西安邮电大学 通信与信息工程学院, 陕西 西安 710121)

基于复杂背景的二维条码提取技术

陈文艺1, 陈蓓敏2

(1西安邮电大学 物联网与两化融合研究院, 陕西 西安 710061; 2 西安邮电大学 通信与信息工程学院, 陕西 西安 710121)

为了从含有大量物体的复杂背景图像中提取出二维条码,给出一种基于图像连通区域特征、角点特征和边缘特征的提取方法,即将灰度图像二值化后进行形态学处理,排除复杂背景中大量无关因素,对筛选出的子区域进行角点检测准确定位出二维条码的位置。通过采集大量不同光照、不同物体为背景的图像对新方法进行检测,提取结果均获成功。

二维条码;同态滤波;连通区域;角点检测

随着社会信息化发展,条码技术得到广泛应用。二维条码因具备高密度、高译码准确度、高保密性以及高容错度等优点,而被广泛应用于商业、军事、运输和管理等方面[1],因此,对二维条码的识别技术显得尤为重要。二维条码分为堆叠式二维条码和矩阵式二维条码,其中较为广泛应用的有PDF417、数据矩阵(Data Matrix, DM)码和QR码等[2]。其中,DM码具有较强的抗污能力和抗畸变能力,纠错能力很强,而且DM码的面积更加灵活,最小面积只有10 inch×10 inch,更适合在工业领域用来识别工业零部件。

目前的识别技术大多靠人工检测二维条码的位置,通过相关译码软件进行二维条码的解码,因此在一些自动化要求较高的环境中往往会面临许多困难,因此,如何通过数字图像处理的方法准确的从含有大量物体的复杂背景中自动提取出二维条码成为了研究热点。文[3]提出了一种基于子区域的梯度特征和角点特征的提取方法,但如果图像中存在方格状物体时采用此方法就很难区分。文[4]的算法涉及子区域的对比度、方向边缘强度、线性尺度等特征,虽能自动定位出复杂背景中的条码区域,但是该算法难以区分和条码类似的纹理,如文字等[3]。基于形态学处理的提取方法[5]只能准确提取出近距离的二维条码,且在二维条码面积较小时就无法准确提取。

本文拟针对复杂背景下DM码的提取要求,吸取现有技术的优点,同时改进其缺点,根据二维条码本身的连通区域特征和角点特征,提出一种能准确提取出DM码的技术方法,并通过实验加以检测。

1 提取技术原理

提取技术原理如图1所示。先将获取的原始图像进行预处理,去除图像模糊和光照不均等干扰因素。然后根据连通区域特征提取出可能含有DM码的区域,利用角点特征确定DM码的大致位置,最后通过边缘特征来提取出DM码。

图1 提取技术原理

1.1 预处理

对图像进行预处理,是为了解决由于外界条件造成的图像模糊和光照不均等问题,以便对图像有效信息的提取。预处理算法中先将原始图像经过灰度处理,得到对应的灰度图像后,通过同态滤波消除图像光照不均的问题,之后选取适当的阈值,对图像进行二值化处理。

1.1.1 同态滤波

对于图像光照不均的现象,可有4种增强方法[6],经过对比,在此采用同态滤波处理方法。

在照度-反射模型中,一幅图像f(x,y)可以表示为其照射分量和反射分量的乘积,即

f(x,y)=i(x,y)r(x,y),

其中照射分量i(x,y)反映了背景中的不均匀光照,属于变化缓慢的低频分量;反射分量r(x,y)则反映了图像中的细节部分,属于高频分量。同态滤波的原理就是衰减低频(照射)分量,而增强高频(反射)分量。同态滤波的流程如图2所示。

图2 同态滤波流程

1.1.2 二值化

对图像进行二值化时,阈值的选取十分重要。经过对基于最大类间方差的全局阈值法和Niblack局部阈值法、Bernsen局部阈值法[7]、全局均值和局部方差的方法[8]和局部均值和局部方差的方法进行比较,其中局部均值和局部方差的方法虽然能准确的对图像进行二值化,但会出现边界效应。为了消除这种边界效应,可在局部均值和局部方差方法的基础上,逐点计算阈值并对图像进行二值化处理。

如图3所示,先将图像分为不重叠的r×r个子区域,再将每个子区域分成四个不重叠的小块。其中C表示角块,B表示边块,I表示中间块。

图3 图像分块

先计算每个区域的均值和方差,得到每个子区域单独的阈值T(i,j),即

T(i,j)=w1m(i,j)+w2s(i,j),

其中w1和w2为修正系数,一般取值范围为0~1,这里由多次试验比较得

w1=0.65,w2=0.55,

而m(i,j)和s(i,j)分别为此区域的均值和方差,即

其中f(x,y)为原图像灰度值,p和q分别为每个子区域的开始行坐标和列坐标。

然后根据每个点的位置判断该点的阈值T(x,y)。如果该点位于子区域的中心或者处于角块,则该点阈值为该子区域的阈值;如果处于边块,则该点的阈值为该子区域和相邻子区域阈值的线性差分的结果值;如果处于中间块,则对该点所在的子区域和相邻的其他四个子区域的阈值做线性差分,所得结果为该点的阈值。

随后再通过阈值对图像逐点进行二值化处理,即

其中B(x,y)为二值化图像,f(x,y)为原图像灰度值,T(x,y)为该点阈值。

1.2 连通区域特征

将二值化后的图像先通过开操作断开较窄的狭颈并消除细的突出物,之后再通过闭操作弥合较窄的间断和细长的沟壑,以此形成大量连通区域,再进行基于8连通的连通区域提取。根据DM条码在原始图像中所占的面积比和自身的长宽比对连通区域的面积进行限制,筛选出可能含有DM条码的区域。

根据DM码静区的宽度,开操作中的结构元素参数取为2,闭操作中的结构元素参数取为6,以使图像中有关联的物体形成连通区域,同时避免DM码与背景图像连通。

1.3 角点特征

由于DM条码本身具有丰富的角点信息,故可据此特征确定DM码所在的大致区域。采用Harris角点检测方法进行角点提取检测。

Harris角点检测算法是一种基于信号的点特征提取算子,若某个像素点向任何方向发生很小偏移时灰度都有很大变化,则认为此像素点为角点[9]。

定义局部灰度变化量为

(1)

其中I(x,y)表示灰度值,Ix和Iy分别表示了x方向和y方向的一阶灰度梯度。另外,为了加强抗噪能力,Harris算子选用了高斯窗口对图像进行降噪,即

将式(1)写成矩阵形式,即

Ex,y=[x,y]M[x,y]T。

其中

C=IxIy⊗w。

于是Harris角点即可定义为

R=det(M)-ktr2(M)

(2)

的局部区域最大值,其中k为经验值,Harris建议取为0.04。det(M)表示矩阵M的行列式值,即

det(M)=AB-C2,

tr(M) 表示矩阵M的迹,即

tr(M)=A+B,

因此式(2)也可写为

R=AB-C2-k(A+B)2。

计算出上式的局部极限值,对应的像素点即为角点。

1.4 边缘特征

实际采集提取出的DM条码通常都是存在倾斜角度的,必须采取必要的方法来纠正。

二维条码一般都包含有自己独特的定位符号,DM条码的定位符号即为其特有的“L”边。通过Canny边缘检测器和改善边缘连续的方法[10]对提取出含有DM条码的大致位置进行边缘检测,通过Hough变换提取出其中最长的两条边缘线即为其“L”边。然后通过坐标旋转公式将DM条码旋转到正确位置,即

其中x1和y1为旋转后的像素坐标,x和y为旋转前的像素坐标,α为检测出的“L”边的倾斜角度。

2 实验结果

在强光,弱光等光照不均的情况下,通过480×640可调距摄像头获取大量图像,获取的图像背景包含有机箱、文字、物体、图案等复杂物体,并在Matlab 7.12平台上编程实现提取算法,验证提取结果。实验所用图像100幅,除去2幅由于严重畸变无法提取外,从其余图像中皆能准确提取出DM条码。

以下面3幅提取结果图为例。图4(a)是将DM码嵌入到机箱背部获取的图像,当中含有大量干扰因素,比如电线、机箱本身的散热孔,这些干扰因素都会对后期的角点检测部分造成干扰,最终提取结果如图4(c)所示。第2幅和第3幅图像背景分别由大量文字(图5)和户外图像(图6)组成,提出结果也十分成功。

图4 机箱背景

图5 文字背景

图6 户外背景

3 结 语

从复杂背景中提取出二维条码的研究在现实生活中具有重要的实用价值。所提算法通过对子区域进行筛选,最终提取出二维条码,受外界干扰小,稳定性强。加之对同态滤波以及基于局部均值和局部方差而改进的二值化算法,很好解决了由于光照不均对图像产生的影响,对硬件要求也不高。实验表明,除简单物体、文字外,在其他更为复杂的背景下,所提算法也可以实现二维条码提取。在接下来的工作中将继续对本算法进行改善,增强稳定性及实时性。

[1] 徐杰民,肖云.二维条码技术现状及发展前景[J].计算机与现代化, 2004(12):141.

[2] 邹沿新.DataMatrix二维条形码图像预处理及识别技术研究[D].长沙:湖南大学,2009:4-7.

[3] 王霞玲,吕岳,文颖.复杂背景和非均匀光照环境下的条码自动定位和识别[J].智能系统学报,2010,5(1):36-37.

[4] 刘宁钟.复杂背景中条码检测定位技术的研究[J]. 南京航空航天大学学报,2005,37(1):66-68.

[5] 李雅静. Data Matrix二维条码图像识别的算法研究与实现[D].北京:北京交通大学,2009:40-42.

[6] 梁琳,何卫平,雷蕾,等.光照不均图像增强方法综述[J].计算机应用研究,2010,27(5):1626-1627.

[7] Trier B D, Jain A K. Goal-Directed Evaluation of Binarization Methods[J]. IEEE Transactions on Patternern Analysis and Machine Intellegence, 1995,17(12):1991-1201.

[8] 龙钧宇,金连文.一种基于全局均值和局部方差的图像二值化方法[J].计算机工程,2004,30(2):70-72.

[9] 赵万金,龚声蓉,刘纯平,等.一种自适应的Harris角点检测算法[J].计算机工程,2008,34(10):212-217.

[10] 王蒙,吕建平.基于边缘检测和自动种子区域生长的图像分割算法[J].西安邮电学院学报,2011,16(6):17-18.

[责任编辑:王辉]

Extraction technology of 2-D barcode under complicated background

CHEN Wenyi1, CHEN Beimin2

(1. Institute of IOT & IT-based Industrialization, Xi’an University of Posts and Telecommunications, Xi’an 710121, China;2. School of Communication and Information Engineering, Xi’an University of Posts and Telecommunications, Xi’an 710121, China)

To extract 2-D barcode from an image with complex scenes of many objects, an extraction technology based on the image features of connected region, corner and edge is proposed. It morphologically processes the gray-scale image after binarization, eliminates a large number of unrelated factors in complex scenes, and localizes 2-D barcode by checking corner detection of the selected sub-regions. Experiments on detecting many collected images under non-uniform illumination with different objects show that this technology can extract 2-D barcode from complex scenes accurately.

2-D barcode, homomorphic filter, connected region, corner detection

2013-11-14

陈文艺(1964-),男,博士,教授,从事数字图像处理及传输研究。E-mail: chenwy@xupt.edu.cn 陈蓓敏(1988-),女,硕士研究生,研究方向为数字图像处理。E-mail: bm_chen@163.com

10.13682/j.issn.2095-6533.2014.02.008

TP391.41

A

2095-6533(2014)01-0048-04

猜你喜欢
角点条码灰度
一种改进的Shi-Tomasi角点检测方法
采用改进导重法的拓扑结构灰度单元过滤技术
热线互动
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
浅析影响商品条码质量的主要因素
日杂商品条码质量现状研究
基于FAST角点检测算法上对Y型与X型角点的检测
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于圆环模板的改进Harris角点检测算法
基于像素重排比对的灰度图彩色化算法研究