物料自动分拣系统对应QR码标签信息识别

2021-11-17 07:09王清玥
计算机仿真 2021年5期
关键词:译码识别率阈值

王清玥,郭 婷

(内蒙古工业大学,内蒙古 呼和浩特 010051)

1 引言

为了快速、精准的对QR码标签信息进行的识别[1],李少波[2]等提出基于机器视觉的条码在线识别方法,首先分析了条码的编码原理,再对条码图像进行了特征提取,并建立识码系数与条码运动的关系模型,最后引入Halcon算法对条码内的信息进行识别。但该方法没有对QR码图像进行二值化处理,导致识别效果欠佳,准确性较差。丁伟利[3]等提出一种多目标QR码的识别方法,首先结合连通区域标记算法对图中的多个QR码进行分割,利用轮廓跟踪获得QR码探测图形边界,并使用逆投影变换对QR码进行校正处理,最后通过C语言完成QR码内信息的识别。虽然该方法能够有效识别QR码标签信息,但未利用局部阈值法对QR码图像进行二值化处理,也未引入投影法确定QR码的候选区域,导致识别效率过低。孙洋洋[4]等提出多种方法结合的条形码识别方法,首先利用轮廓检测方法提取特征区域,然后利用仿射变换算法完成条形码的角度校正,再利用条形码识别开发包获取条形码信息完成识别。但该方法未将二值化后的图像进行投影法计算,确定QR码的候选区域,导致QR码的位置不准确,影响了信息识别率,因此不能被广泛使用。

针对上述方法中的不足,提出物料自动分拣系统对应QR码标签信息识别方法。

2 QR码图像处理方法

QR码是以矩阵形式呈现的二维条码,如图1所示,编码区域包括各个功能区域图形组成,不同于传统的一维条码有着特殊的线性关系,可以通过带有激光扫描的设备进行识别。因此,所提方法以图像的处理为基础,基于此得到QR码内的字符、信息,然后进行译码、输出,完成识别。

图1 QR码中各区域功能示意图

2.1 QR码图像二值化

QR码在识别时经常处于在光照不均匀得环境下,导致图像出现失真现象,因此需要将QR码在译码识别前转化为二值化图像[5]。

如图2所示,在自然因素影响下,QR码图像中的识别目标和背景的灰度值大不相同,因此,所提方法利用背景区域和目标区域的灰度相关性,作为图像二值化的依据,进行局部阈值分割处理。

图2 理想与实际情况下的图像灰度直方图

若利用全局阈值对QR码图像进行分割,不能兼顾到图内的每个角落,进而影响图像的分割效果。为了拥有更好的图像分割效果,首先利用高通滤波器对图像中的噪声点进行剔除[6],然后采用局部阈值法对QR码进行二值化处理。

首先,采用高通滤波器对QR码图像进行去噪处理,设D为截止频率,其定义如式(1)所示

(1)

设T为一个阈值,关系表达如式(2)所示

T=[x,y,p(x,y),f(x,y)]T

(2)

其中,点(x,y)的灰度级为f(x,y),该点的局部性质为p(x,y)。

在图像f(x,y)中,将满足f(x,y)≥T的点均划分到同个区域中,其余的点划分到另外的区域中。局部阈值如式(3)所示

T(x,y)=(f·b)(x,y)

(3)

其中,图像函数为f,结构元素为b。

阈值处理如式(4)所示

(4)

给定局部阈值后,通过式(5)得到处理后的二值图像

(5)

综上可知,采用局部阈值法对QR码图像进行二值化处理[7],可以使图像不受自然环境的影响变得更清晰,使感兴趣的目标轮廓更加明显,提高识别的效率。经过二值化处理后的QR码图像,如图3所示。

图3 QR码图像二值化处理

2.2 QR码区域定位

经过二值化处理后,QR码图像中的噪声点大部分都被剔除。为了能够更加快速的识别QR码标签信息,提高方法的整体识别效率与信息识别率,引入投影法通过水平和垂直投影计算确定QR码的候选区域[8],获取QR码的准确位置。

将QR码二值化图像中同一行、列像素之和进行归一化,关系表达式如下所示

(6)

其中,第x列与第y行归一化处理后的投影值为histV[X]和histH[y],QR码二值化图像的高和宽为w和h。

如果垂直投影值小于水平投影值,那么histV[X]=histH[y],则在像素点(x,y)周围搜索领域内的其它像素值,如图4所示,当搜索到结果存在f(x,y)=1,则将该点标识为候选目标像素点。

图4 QR码目标像素点搜索示意图

采用加权算术平均法对图像进行水平投影。首先,将水平像素投影值看作离散数列,设histV[X]为QR码二值化图像中第X行的原始投影值,histV[X-1]为QR码二值化图像中第X-1平滑后的投影值,一次指数的平滑数列计算方法如式(7)所示

histV[X]=ahistV[X]+(1-a)histV[X-1]

(7)

其中,histV[X]=histV[0],a=0.3。

由于QR码区域的投影面积比较大,上下行区域附近的投影值比较小,因此需要找到水平投影值大于指定阈值的投影区,定位出QR码的准确位置,计算方法如式(8)所示

(8)

式中,0≤i≤3;0≤j≤3,max为一个窗口大小为4*4的区域内像素的最大值;min为一个窗口大小为4*4的区域内像素的最小值,图5内的红色窗口为经过投影法计算后的标记出的QR码定位结果。

图5 QR码定位结果示意图

3 基于极化译码算法的QR码标签信息识别

QR码是以矩阵形式呈现出的图形化编码符号,对QR码标签信息进行识别就是将图像化编码转换成有效的数据信息。

3.1 QR码的标准译码流程

识别QR码符号到输出译码的步骤是一种编码程序的逆过程,具体解码流程如下所示:

1) 首先以深色模块与浅色模块识别为“0”与“1”的阵列定位并获取QR码符号图像;

2)识别格式信息与版本信息,确定QR码符号的版本;

3)根据QR码中的模块排列规则,识别符号字符,回复信息的数据与纠错码,并利用纠错级别信息相对应的纠错码字检测错误,如果发现错误,立即进行纠错;

4)根据模式指示符和字符计数指示符,将数据码字划为多个部分;

5)按照使用的模式译码得出数据字符并输出结果,图6显示了QR码标准译码的具体流程。

图6 QR码译码流程

3.2 QR码标签信息识别算法

所提方法通过极化译码算法在译码流程的基础上寻找二值化图像中存在的符号,并对符号进行译码处理,主要流程如下:

1)通过QR码二值化图像中存在的最大反射率和最小反射率确定阈值,根据阈值用浅色的像素代替深色的像素;

2)确定寻像图形

QR码中存在的寻像图形通常是由位置相同的三个探测图构成。每个像素在探测图形中的相对宽度比例为1:1:3,设每一个元素块宽度的允许偏差为0.5;

①如图7(a)所示,当搜索到预选区时,重点观察相同行像素在QR码图像中与位置探测图形外边缘相交的首位两个点,并重复探测图形中存在的相邻像素,当所有经过方块中心X轴位置的直线全部检测完毕后停止迭代;

图7 位置探测图形扫描线

②重复上述步骤,对所有穿过位置探测图形中心的像素行进行识别;

③确定图形中心

通过在X轴方向穿过位置探测图形中心块连接A、B两点,并用相同的方法以垂直方向画一条直线为Y轴,则X轴与Y轴的交点为位置探测图形的中心,如图7(b)所示;

④按照步骤1)至步骤3),确定QR码中其它两个位置探测图形的中心。

3)将获取的3个位置探测图形中心的坐标进行分析,对QR码中处于左上角的位置探测图形进行识别;

4)设W1、W2描述的是两个不同的探测图形,两个探测图形之间存在的距离为D,探测图形如图8所示。

图8 QR码位置探测图形

5)QR码中位置探测图形X轴的计算方法如式(9)所示

X=(W1+W2)/14

(9)

6)符号版本的初步确定计算,如式(10)所示

V=[(D/X)-10]/4

(10)

7)当符号版本比6小时(包括6),QR码的版本号即为获得的计算值,反之,版本信息则按照下述步骤进行译码;

①当符号版本大于6时,计算模块尺寸CP2:

CP2=W2/7

(11)

②如图9所示,找出三个位置探测图像中心的导向线AB、AC。然后根据式(11)确定版本信息1区域中每个模块的取样网络;

图9 QR版本信息

③检测并修正版本信息,当容错量小于错误数时,对处于左下角的图形宽度W1进行计算,并按照步骤①、②进行译码。

8)利用公式验证QR码字符的正确性,如式(12)所示

(12)

9)输出译码,完成识别。

综上所述,所提方法按照QR码的标准译码流程,利用参考译码算法确定探测图形和版本信息,实现QR码标签信息识别。

4 实验分析

为了验证所提方法的整体有效性,如图10所示,实验利用文献[2]、文献[3]、所提方法在分别对物料包装上的QR码进行识别效果、识别效率、准确性对比测试,实验背景参数如表1所示。

图10 实验示例图

表1 实验背景参数

4.1 识别效果

由图11可以看出,文献[2]方法因为未对QR码图像进行预处理,所以不能进行有效的信息识别;文献[3]方法没有对图像进行二值化,虽然能够对QR码进行有效的信息识别,但是细节处的识别效果还有所欠佳;而所提方法首先利用高通滤波器剔除了QR码图像中的噪声点,然后采用局部阈值法对其进行了二值化处理,从而使图像内的目标轮廓更加明显,所呈现的识别效果也更加优秀。

图11 不同方法的QR码识别效果

4.2 识别效率

QR码标签信息识别过程经常会在光照均匀的情况下进行,如果没有将QR码图像中的背景区域与目标区域分割开,就会大大影响识别效率。

如图12所示,是三种方法的识别效率对比结果。文献[2]方法因为识别过程复杂,所以耗时最多;文献[3]方法没有将QR码图像中的背景区域与目标区域分割开,识别时间也随着图像内的像素点增加而增长;而所提方法利用背景区域和目标区域的灰度相关性作为图像二值化的依据,并通过局域阈值法进行了分割处理,增强了QR码图像的清晰度,使目标区域更加突出,因此,所提方法的识别效率不会受到自然因素的影响而降低。

图12 不同方法的QR码识别效率

4.3 信息识别率

为了使本节实验的结果更加可靠,引入识别率计算公式对三种方法的识别率进行计算分析。如式(13)所示

P=(ΔP/Y)100%

(13)

式中,ΔP为计算范围允许最大绝对误差,Y为量程输出。

图13记录了三种方法的QR码标签信息识别率。

图13 不同方法的QR码信息识别率

由图13的实验对比结果可以看出,文献[3]方法的识别过程相对稳定,经过式(13)计算,信息识别率为73.5%;文献[2]方法的因识别过程繁琐,导致信息识别过程波动性较大,经计算分析,信息平均识别率为61.2%;而所提方法对QR码图像进行了二值化处理,并引入投影法通过水平和垂直投影计算确定QR码的候选区域,获取QR码的准确位置,因此,信息识别率一直保持在82.3%以上,明显高于其它方法。

5 结束语

1)为了提高物料自动分拣系统的运作效率,实现QR条码标签信息快速、精准的识别,考虑到QR码是矩阵型呈现的二维条码,识别时必须兼顾图内的各个角落,因此,采用局部阈值分割法对QR码进行二值化处理,提高QR码的清晰度。

2)引入投影法通过水平和垂直投影计算QR码的候选区域,获取QR码的准确位置,提高方法整体的信息识别率,最后利用极化译码算法,按照QR码的标准译码流程确定QR码内的探测图形和版本信息,信息识别率一直保持在82.3%以上,实现QR码标签信息精准识别。实验对比结果表明,所提方法在实践中拥有更好的识别能力。

猜你喜欢
译码识别率阈值
改进的软硬阈值法及其在地震数据降噪中的研究
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
一种基于BCH 级联极化码的分段校验译码算法
分段CRC 辅助极化码SCL 比特翻转译码算法
基于校正搜索宽度的极化码译码算法研究
改进小波阈值对热泵电机振动信号的去噪研究
档案数字化过程中OCR技术的应用分析
基于PCA与MLP感知器的人脸图像辨识技术
科技文档中数学表达式的结构分析与识别