条码检测算法:不起眼的条码识别也能玩出这么多花样 您所在的位置:网站首页 扫条形码识别数字 条码检测算法:不起眼的条码识别也能玩出这么多花样

条码检测算法:不起眼的条码识别也能玩出这么多花样

#条码检测算法:不起眼的条码识别也能玩出这么多花样| 来源: 网络整理| 查看: 265

不知道从什么时候开始,我们的生活中充满了二维码,看网页需要扫二维码,加好友需要扫二维码,就连公司门口卖烤红薯的大爷都要大家扫二维码了。你有没有想过,这个长得很奇怪的东西,是怎么来的呢,又是什么原理呢?

二维码其实就是由很多0、1组成的数字矩阵。最早于1994年被日本公司Denso Wave的腾弘发明,并且由原来的条形码改造而来,相比条形码数据能力存储能力都大大提升。最先的二维码是彩色的,主要用来追踪其公司旗下汽车零部件维修等情况,后来在此基础上为了提高工作效率Denso Wave公司又改进出了今天常见的黑白。

总的来说 二维码已经成了生活中必不可少的一部分,也确实为我们的生活带来了很多便捷。二维码在机器视觉中运用的也是炉火纯青了,今天小编就带大家一起学习下SGVision——条码识别算法。

条码检测算法实际应用场景:检测条码、二位码。主要用于读取识别条形码、QR 码(二维码)。

开始之前还是先来学习下

✔围绕条码识别算法的参数

【图像缩放尺寸】:当条码的形状太大或者太小的时候,可以用此命令适当缩放;

【合格标准】:此命令可以根据需要钩选;目的是输入原本的条码结果,与检测的条码进行对比,判断结果相同则 OK,判断结果不同则 NG;

【测试结果】:此处会显示条码的检测结果。

【设置为基准】:以此测试结果为基准,来对比其他条码检测结果。

在参数栏目里有【条码类型】,可选条码、QR 码或 Datamtrix 类型,根据我们检测需求来调整。

我们先打开SGVision软件,按【F4】快捷键进入算法页面,【导入需要检测的图片】—【选择检测栏目】—【选中条码识别】,框选出检测区域。

非常快捷 可以看到很快就识别出二维码了

再来检测左边这个二维码发现没有识别出来,其实是【条码类型】没有选对,所以识别不了,我们选择Dm码就准确的把条码内容检测出来了。

这里有一个【提取文本】的工具,就是我们可以选择从第二个位置开始提取,视频上可以看到把第一个S漏掉了。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATW9va0xhYumprOWFi-aLieS8rw==,size_20,color_FFFFFF,t_70,g_se,x_16

▲起始位置为1测试结果          poYBAGDYdXCAWkKMAAAAK8RNs4s030.png

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATW9va0xhYumprOWFi-aLieS8rw==,size_20,color_FFFFFF,t_70,g_se,x_16

            ▲起始位置为2测试结果 poYBAGDYdXCAWkKMAAAAK8RNs4s030.png

【长度】的意思就是提取的文本有多少个,比如说我从第二个开始,提取总共三个数字,它就变成GVi 三个文本了:如果选择-1就是从第二个开始剩下的全部保留。就是在于说有时候条码前面可能有流水号或者无效的标示符,要去掉的话就可以利用【提取文本】的工具。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBATW9va0xhYumprOWFi-aLieS8rw==,size_20,color_FFFFFF,t_70,g_se,x_16poYBAGDYdXCAWkKMAAAAK8RNs4s030.png

接下来我们说说【合格标准】

pYYBAGIJxDeAGHyIAAAeIMVyot8743.pngpoYBAGDYdXCAWkKMAAAAK8RNs4s030.png

第一个选项:【仅识别】

只要我们能测的出的文本就为OK,测不到就NG

第二个选项:【与基准比对】

不管他是什么二维码,只要他的编码内容跟我们设置的基准一样就为OK。我这里测试其他不一样的二维码,大家可以看下对比。与基准图一样的即为OK,反之为NG。

第三个选项:【历史记录的查重】

这个功能是可以导入记录也可以导出记录的

可以选择说每次检测完之后,勾选检测后添加记录到历史,他就会把这个记录存下来,下一次我们再检测的话,会发现他NG,虽然他识别出条码了,但是因为重复出现过所以为NG。有一些场景,是需要查询这个条码有没有重复出现过的,那就可以用上这个功能。

这里给大家导出文本示范一下

可以看到上面存了几个历史记录了,这种情况下,如果再一次测试就会显示NG,第一次检测的时候都是OK,但是再一次测试就会NG,就是一种查重的功能,如果把历史清空掉,那就都是OK的了。

当然我们也可以直接导入我们之前存档的记录,那他一开始就会显示NG,也就是说,我可以去添加一个新的条码识别的工具,它本来是可以OK的,那我导入了之前存档的记录测试就会显示NG。

审核编辑:符乾江



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有