技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种复杂环境条件下二维码识别方法、系统及介质与流程  >  正文

一种复杂环境条件下二维码识别方法、系统及介质与流程

  • 国知局
  • 2024-07-31 22:56:09

本技术涉及二维码识别,具体而言,涉及一种复杂环境条件下二维码识别方法、系统及介质。

背景技术:

1、qr码(quick response code,二维码)因信息存储量大、保密性好、追踪性高等特性,被广泛应用。但在实际应用中,溯源环境复杂多变,qr码识别难度大大增加。现有的研究多集中在对静止或者低速下得到的清晰qr码图像进行识别,对于复制光照条件下qr研究较少。

2、现有的技术大多通过传统阈值分割后进行轮廓等特征进行筛选,得到qr区域,然后通过zbar或zxing等开源库进行解析。面对复杂环境下qr二维码定位,传统阈值分割算法存在着适应性差,进而导致qr的定位准确率大大降低。同时,对于存在仿射变换的qr码图像,直接进行解析准备率也会大大降低。另外工业图像往往都比较大,直接对原图进行扫描分析,效率上也会大大降低。因此,亟需一种复杂环境条件下二维码识别方法。

技术实现思路

1、本技术的目的在于提供一种复杂环境条件下二维码识别方法、系统及介质,本技术定位准确率高,抗环境干扰能力强,识别成功率高。

2、本技术提供了一种复杂环境条件下二维码识别方法,所述方法包括:

3、获取原始图像,利用预设检测模型提取原始图像中二维码感兴趣roi区域;

4、对所述二维码roi区域进行中值滤波并灰度化,得到roi区域灰度图像;

5、利用预设识别算法对roi区域灰度图像进行识别,若识别成功则返回二维码识别结果;

6、若识别失败,则利用预设阈值分割算法对灰度图像进行二值化处理;

7、利用二值化图像进行轮廓提取并确定二维码的三个回型定位角;

8、根据二维码的三个回型定位角的中心点坐标,确定出每个定位角的位置;

9、根据每个定位角的位置得到仿射变换矩阵,利用仿射变换矩阵对二值化图像进行校正;利用预设识别算法对校正后的图像进行识别,识别成功,则返回识别内容以及定位参数,否则,返回识别失败。

10、本方案中,所述利用预设阈值分割算法对灰度图像进行二值化处理,包括:

11、对灰度图像进行二值化,同时得到最大类间方差阈值outsvalue,目标区域平均像素值meanval1和背景区域平均像素值meanval2,并使用形态学开处理二值化图像。

12、本方案中,利用二值化图像进行轮廓提取并确定二维码的三个回型定位角,具体包括:

13、对二值化图像进行轮廓提取,利用轮廓筛选三个回型定位角,若未能筛选回型定位角,则更新预设阈值分割算法中分割阈值进行轮廓提取,直至提取出三个回型定位角;

14、本方案中,所述利用轮廓筛选三个回型定位角,轮廓筛选的步骤包括:

15、遍历轮廓,找到所有存在两级父轮廓的轮廓;

16、通过轮廓面积、长宽比筛选出符合条件的轮廓;

17、最后对筛选出所有轮廓按照矩形度从大到小进行排序,取出前三个轮廓即为二维码定位轮廓;

18、其中:矩形度 = 轮廓面积 / 最小外界轮廓面积。

19、本方案中,若未能筛选回型定位角,则更新预设阈值分割算法中分割阈值进行轮廓提取,直至提取出三个回型定位角,包括:

20、利用最大类间方差阈值outsvalue,目标区域平均像素值meanval1更新分割阈值,重新对灰度图像分割得到新的二值图像,更新后阈值newthred为:

21、newthred = otusvalue - (otusvalue - meanval1) / 2;

22、对二值图像进行形态学闭运算,然后轮廓提取,再次遍历轮廓,定位三个定位角轮廓;

23、若定位失败,则利用最大类间方差阈值outsvalue,目标区域平均像素值meanval1更新分割阈值,重新对灰度图像分割得到新的二值图像,更新后阈值newthred为:

24、newthred = otusvalue + ( meanval2 - otusvalue) / 2;

25、对二值图像进行形态学开运算,然后轮廓提取,再次遍历轮廓,定位三个回型定位角的轮廓。

26、本方案中,根据二维码的三个回型定位角的中心点坐标,确定出每个定位角的位置,具体包括:

27、以图像左上角为坐标原点,计算三个回型定位角的中心点的坐标,以三个坐标点计算得到三个向量,分别计算每个向量之间的夹角,通过夹角确定二维码的左上定位角和另外两个定位角;

28、本方案中,通过夹角确定二维码的左上定位角和另外两个定位角,具体为:

29、若两个向量的夹角为90度,或夹角与90度的差最小,此时两个向量所在直线的交点即为二维码左上定位角,然后通过向量的内积正负,判断出另外两个回型定位角。

30、本方案中,定义定位角轮廓中心点p1(x1,y1)、中心点p2(x2,y2),x1、x2为中心点横坐标,y1、y2为中心点纵坐标,则p1*p2= x1 * y2 - x2 * y1;

31、若p1 * p2>0,则p1在p2的顺时针方向;

32、若p1 * p2<0,则p1在p2的逆时针方向;

33、若p1 * p2 = 0,则p1和p2共线。

34、本技术第二方面提供了一种复杂环境条件下二维码识别系统,该系统包括:存储器、处理器,所述存储器中包括一种复杂环境条件下二维码识别方法程序,所述一种复杂环境条件下二维码识别方法程序被所述处理器执行时实现如下步骤:

35、获取原始图像,利用预设检测模型提取原始图像中二维码感兴趣roi区域;

36、对所述二维码roi区域进行中值滤波并灰度化,得到roi区域灰度图像;

37、利用预设识别算法对roi区域灰度图像进行识别,若识别成功则返回二维码识别结果;

38、若识别失败,则利用预设阈值分割算法对灰度图像进行二值化处理;

39、利用二值化图像进行轮廓提取并确定二维码的三个回型定位角;

40、根据二维码的三个回型定位角的中心点坐标,确定出每个定位角的位置;

41、根据每个定位角的位置得到仿射变换矩阵,利用仿射变换矩阵对二值化图像进行校正;利用预设识别算法对校正后的图像进行识别,识别成功,则返回识别内容以及定位参数,否则,返回识别失败。

42、本技术第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中包括复杂环境条件下二维码识别方法程序,所述复杂环境条件下二维码识别方法程序被处理器执行时,实现所述的复杂环境条件下二维码识别方法的步骤。

43、由上可知,本技术提供的复杂环境条件下二维码识别方法、系统及介质通过获取原始图像,利用预设检测模型提取原始图像中二维码感兴趣roi区域;对所述二维码roi区域进行中值滤波并灰度化,得到roi区域灰度图像;利用预设识别算法对roi区域灰度图像进行识别,若识别成功则返回二维码识别结果;若识别失败,则利用预设阈值分割算法对灰度图像进行二值化处理;利用二值化图像进行轮廓提取并确定二维码的三个回型定位角;根据二维码的三个回型定位角的中心点坐标,确定出每个定位角的位置;根据每个定位角的位置得到仿射变换矩阵,利用仿射变换矩阵对二值化图像进行校正;利用预设识别算法对校正后的图像进行识别,识别成功,则返回识别内容以及定位参数,否则,返回识别失败。本技术定位准确率高,抗环境干扰能力强,识别成功率高。

44、本技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术实施例了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

本文地址:https://www.jishuxx.com/zhuanli/20240730/195391.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。