一种新的条形码定位与识别方法Word文档下载推荐.docx
《一种新的条形码定位与识别方法Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《一种新的条形码定位与识别方法Word文档下载推荐.docx(10页珍藏版)》请在冰豆网上搜索。
条形码;
Sobel边缘检测;
条形码定位;
图像矫正;
条形码识别
A
NewMethod
for
BarCodeLocalization
andRecognition
WUXin-sheng1,2,QIAOLian-zhi2,DENGJun2
(1.
EngineeringResearchCentreforPrecisionElectronicManufacturingEquipment
ofMinistryofEducation,
CollegeofAutomation,
SouthChinaUniversityofTechnology,Guangzhou
510640China
;
CollegeofAutomationScienceandTechnology,SouthChinaUniversityofTechnology,
GuangzhouGuangdong510640,China)
Abstract:
Anewmethodisproposedforthelocalizationandrecognitionof
a
one-dimensionalbar
code,whichisbasedondetectinglinesquicklyandobtaintheinclinationangleoftheselines.
Firstly,mostofimagebackground
are(is)
eliminatedbyusingSobeledgedetector,andthebarcode
area
isremained.
Then,theimageisdividedinto
several
horizontal
barsofsamesize.
BecauseofthedisadvantagesofHoughtransform,thatis,
ithaslarge
computation(calculation)
and
is
time-consumingwhiledetectinglinesinimage,anewfastmethodisproposedinthispaper
detectinglinesandobtainingtheir
inclinationangles.
Anglesofedgesinsomebars
arecomputed.
Considerthestructure
characteristic
ofbarcodes,thatis,barcodesconsistof
parallel
blackbarsandwhitebars,andtheedgepoints
are
continuous,computetheangleoflinesfittedbyturningpoints,andthisangleisbarcode’s
inclination
angle.
Theimagebarsthathavesameor
similar
anglesmakeagreat
possibility
ofbarcode
area,thenpickupthem.
Iftheangleisnot90degrees,
relativeto
direction,then
rectify
thebarcodeviabilinearinterpolation.
Recognizethepicked-upbarcode
bycallingthedecodingprocedurewhichemployssimilaredges.MATLABsimulationresultsshowthatusingthemethodproposedinthispaper,the
localization
rateofourimagedatabasecanreach99%,andthedecodingrateis98.5%.
Key
words:
Barcode;
Sobeledgedetect;
Barcodelocalization;
Imagerectify;
Barcoderecognition
1引言
条形码广泛应用于商品流通、物流运输、邮政、仓储、图书管理等领域,如何正确、快速的识别出条形码所携带的信息也就是一个很重要的问题。
目前已获得广泛应用的是激光式条形码阅读器,因为其性能优于光笔和CCD条形码阅读器。
激光式条形码阅读器的优点如下[1]:
1)非接触扫描,不会损坏条形码标签;
2)可阅读的条形码密度广;
3)可阅读不规则的条形码表面,可透过玻璃或透明胶纸阅读;
4)识别成功率高;
5)识别速度相比光笔及CCD更快;
6)可阅读印刷质量不好或模糊的条形码;
7)误码率低,仅约为三百万分之一;
8)防震、防摔性能好。
正是有这么多的优点,激光式条形码阅读器得到了广泛的应用,我们平时在商场、超市等地方见到的就是这种条形码阅读器。
但它的缺点是含有容易偏移和损坏的移动部件,缩短了平均使用寿命,且价格相对较高,平均在¥1800~¥3000,且均为国外产品,占据着国内绝大部分市场。
图1所示为两种常见的激光式条形码阅读器,图1(a)为手持式,图1(b)为固定式。
(a)手持式条形码阅读器
(b)固定式条形码阅读器
图1常见的激光式条形码阅读器
Fig1Two
kindsofcommonlaser
barcodereaders
国内也有相应的产品,虽然价格便宜,但是性能不好,难以推广应用。
1998年出现了第一个图像式条形码阅读器。
线性图像式阅读器除了在一些超长距离阅读的场合外,其具备了激光枪的所有优点,但它降低了用户的总体成本。
虽然目前有图像式条形码阅读器,但是其发展还不是很成熟,还不能完全取代激光式条形码阅读器,但它所具备的优点使人们对它的认识逐渐增强。
图像式条形码阅读器的优点如下[1]:
1)由于内部没有易偏移和易损坏的移动部件,产品的寿命更长,且成本低于激光式条码阅读器;
2)阅读速度比大多数CCD和激光器快5倍以上;
3)代表了条码阅读器的发展方向;
4)条码技术正在向二维条码的方向发展,携带的信息更丰富,激光式条形码阅读器不能识读矩阵式二维条码,只有采用图像式处理方式才能识读二维条码。
本文研究的是基于数字图像处理的方式识别条形码,通过数码相机等采集到包含条形码的图像,通过数字图像处理的方式改善图像质量,诸如光照不均、模糊、条码部分倾斜、有噪声等问题,准确而快速的定位出条形码部分,进而选取条形码的一部分进行识读,解译条形码所包含的信息。
2概述已有方法
国内外有很多学者对条形码的识别进行研究。
AnilK.Jain[2]利用条码的纹理特性,基于多通道Gabor滤波技术,讨论了对平整和弯曲表面的条形码定位均具有旋转不变性的监督和非监督方法,缺点是计算特征图像比较耗时,文献中实验大约需32s,且特征分类约需3s,显然不适于实时应用。
DouglasChai[3]将图像分块,利用小块的区域性质,将具有类似角度的小块提取出来组成条码图像,进而识读,该算法思路清晰,定位的同时也确定了图像的倾角,但有时结果不准确,且只能定位一维条码。
Zhang
Chunhui
[4]给出在复杂背景中的自动实时条码定位方法,先把原图像降低分辨率,用基于区域的分析方法来找条码,然后,利用原始图像进行聚焦,识读图像。
RamtinShams[5]针对低分辨率,模糊非均匀光照,有噪声等高扭曲图像,提出了一种快速且可扩展的识读条码的方法,适于手持设备比如手机。
Feng
Xiaojun
[6]提出对JPEG2000形式的图像利用条码特殊的头文件数据进行定位,但JPEG2000的编码计算复杂性明显高于JPEG,该方法在用于JPEG图像中时需先对整个图像进行Huffman编码。
Alexander
Tropf[7]提出在离散余弦变化(DCT)领域进行1D条码的定位,前提是条码部分需占整幅图像的至少10%,由于算法中用到的权重矩阵系数不能自适应确定,故算法缺乏鲁棒性。
Hu
Ying[8]给出一种识别1D条形码的低成本方法,可对边缘模糊,倾斜,视觉扭曲等条码进行识别,前提是条码已经定位。
范永法[9]提出基于图像腐蚀、中值滤波和模板匹配的有复杂背景的条码图像区域分割方法,但模板匹配存在计算量大、计算时间长的问题。
范永法[10]利用矩不变量求得条码倾斜的角度,进而校正。
赵素霞[11]介绍了应用数字图像方式进行EAN-13条码的识读算法,以瓦楞箱上的条码为例,包括一些去噪,校正等。
但因为只是针对一种物体,条码在瓦楞箱上的位置基本上固定的,所以可有预制的背景图像。
有一定局限性,不适于推广应用。
刘宁钟[12]提出一种基于子区域多特征分析的条码检测算法。
郭艳萍[13]简要介绍了数字图像处理技术在条码识别中的应用,包括灰度化,阈值变换,中值滤波,垂直投影等。
李庆峰[14]概要介绍了倾斜角检测的主要5种方法,并分析了优缺点,并提取一种快速的倾斜校正方法,前提是要有两条已知的参考线或一个已知点和一条参考线,需要校正的图像是矩形或类矩形,而条码图像可近似为矩形。
3
算法描述
本文方法的流程图如图2所示,其中核心部分在图像分条和角度计算。
图2条形码定位、识别流程图
Fig2
Theblockdiagramoftheproposedmethod
3.1图像输入
为仿真方便,本文由数码相机获得包含条形码的图像。
考虑到图像的分辨率和图像处理的时间,选择图像大小为480×
640像素。
实际应用中,还可以采用摄像头,CCD或CMOS专用图像传感器等获得图像。
3.2灰度转化
由数码相机获得的图像都是24位RGB图像,本算法只需图像的亮度信息,故需首先将RGB图像转换为灰度图像。
将原图中的色度和饱和度分量去除,只保留亮度信息。
3.3边缘检测
利用亮度值的不连续性来检测图像边缘,这样的不连续性是用一阶和二阶导数检测的。
图像处理中选择的一阶导数是如下形式定义的梯度。
二维函数的梯度定义为向量[15]
。
该向量的幅值是,可简化为:
或。
二阶导数由拉普拉斯算子计算:
梯度边缘检测包括滤波、增强、检测和定位4个步骤。
边缘检测使用如下两个基本准则之一在图像中找到亮度快速变化的地方[15]:
1)找到亮度的一阶导数在