在第十三课中,我们讲了图像识别中的OCR:字符识别。

本课将继续介绍图像识别中的条形码识别、二维码识别。我们将分别介绍二者的基本概念、操作流程、参数解析及应用案例。

条形码识别

条形码识别的概念
条形码识别,即在一幅灰度图像中指定 ROI 区域检测出所有符合参数条件的条形码,获得其解码字符串与位置信息。

条形码识别的特性
检测时通过指定待检条形码的类型(可通过“类型”栏内的自动检测按钮进行自动选定), 设定检测的参数包括:对比度、搜索步长、最大条宽,即可在指定的 ROI 区域内检测出指定类型的所有条形码,并返回定位区域和解码结果。SciSmart智能视觉软件支持同时识别多个条形码。

图1 常见的条形码类型示意图

条形码识别的操作流程及参数详解
打开SciSmart智能视觉软件,在主界面右下方工具箱栏点击图像识别的图标,如图2所示,选择“条形码识别”,二维码识别同此操作:

图2 图像识别工具界面图

1.条形码识别操作的基本流程
图3 条形码识别流程图

  1. 条形码识别的参数详解
    点击条形码算子中的“设置”按钮,打开设置参数界面,如图4所示:

图4 条形码识别的算子工具界面图
(1)类型:
●条形码类型:包括 39 码、128 码、EAN-8 码、EAN-13 码、UPC-A 码、 UPC-E 码、93码、ITF 码。
●自动检测:用于自动判断可能的条形码类型。
(2)参数:
●对比度:指定条码黑色部分和白色部分的对比度,该值增大时可以减少其它目标对条形码检测的干扰,只检测黑白对比度较明显的目标;减小时可以检测黑白对比不那么分明的目标,但同时也更易受到其它目标的干扰。
●搜索步长:将该参数调大时,将提高搜索速度,同时降低搜索精准度,在检测目标视野较大的条形码时可将其调大;反之,将其调小时,可以提高搜索的精准度,但同时将降低搜索速度,适合检测目标视野较小的条形码。
●最大条宽:指定需要检测条形码的最大条宽(黑色或白色条纹的宽度,以像素为计数单位),大于该条宽的条形码将被忽略。
●解码阈值:解码时黑色部分与白色部分的边缘阈值。
(3)结果:显示所成功读取的条形码内容。

条形码识别的应用场景及举例
1.应用场景
(1)3C行业零部件条形码读取。
(2)医药、烟草等外包装盒条形码检测。
2.应用举例

图5 条形码识别原图

图6 条形码识别效果图

二维码识别
二维码的概念
二维码,是用某种特定的几何图形,按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息,其在水平和垂直方向均存储信息。

二维码有多种不同的编码方式,称为码制。常用的码制有QRCode码(简称QR码)、DataMatrix码(简称DM码)、PDF417 码等。

二维码偏重于描述商品。相较于一维条形码,二维码不仅可以存储关键值,还可将商品的基本资料编入二维码中,达到描述商品信息的目的,进一步提供许多一维条形码无法达成的应用。

二维码识别的操作流程及参数详解

1.二维码识别的基本流程

图8 二维码识别流程图

2、二维码识别的参数界面
点击二维码算子中的“设置”按钮,打开设置参数界面。二维码类型的不同,出现的界面不同,如图9、图10、图11所示:

2.1 QR码识别界面及参数解析

图9 QR码识别的算子工具界面图

模式:模式选择。可供选择的有自动,模式 1 ,模式 2。
版本:二维码版本。可选版本有自动、其他选项,范围:自动、[0, 40]。
极性:极性选择。有自动、深色符号浅色背景、浅色符号深色背景选项。
边缘阈值:边缘提取的灰度差,范围是[2,255]。
读取字符串:将识别到二维码字符串信息显示在该区域。
识别结果:识别二维码信息。

2.2 DM码识别界面及参数解析

图10 DM码识别的算子工具界面图

形状:二维码的形状,可选的有自动,长方形和正方形。
极性:极性选择,有自动、深色符号浅色背景、浅色符号深色背景选项。
样式:Data Matrix 码的样式,可选的有自动和其他选项。
最小像素:Data Matrix 码中模块的最小像素宽度,可设范围是 [1,100]。
最大像素:Data Matrix 码中模块的最大像素宽度,可设范围是 [2,100]。
最小对比度:灰度差的最小值,范围是[1,100]。
读取字符串:将识别到二维码字符串信息显示在该区域。
识别结果:识别二维码信息。

2.3 PDF 417码识别界面及参数解析

图11 PDF417码识别的算子工具界面图

极性:极性选择,有自动、深色符号浅色背景、浅色符号深色背景选项。
行数:PDF417 码行数,PDF417 码专用参数。范围:自动,[3, 90]。
列数:PDF417 码列数,PDF417 码专用参数。范围:自动,[1, 30]。
读取字符串:将识别到二维码字符串信息显示在该区域。
识别结果:识别二维码信息。

3.二维码识别的应用场景及举例
3.1 应用场景
(1)电池二维码识别。
(2)外包装盒标签二维码码检测。
(3)PCB板二维码识别。

3.2 应用举例

图12 二维码识别原图

图13 二维码识别效果图

以上为OPT小讲堂之SciSmart智能视觉软件操作培训第十四课的内容,如对课程有任何问题欢迎在留言区留言。

OPT小讲堂 ∣ SciSmart图像识别之条形码识别、二维码识别相关推荐

  1. Android利用zxing生成二维码,识别二维码,中间填充图片超详细、超简易教程

    gayhub上的zxing可用于生成二维码,识别二维码 gayhub地址:https://github.com/zxing/zxing 此文只是简易教程,文末附有完整代码和demo下载地址,进入正题: ...

  2. CIDetector 相册识别二维码出错

    在做点击相册识别二维码识别不了,折腾了大半天,终于从坑里爬出来 ,下面分享一下填坑过程 在创建相册和获取图片的时候添加上面的代码.然后用取出来的图片作为参数进行二维码识别,下面封装了一个类方法: pu ...

  3. 基于机器视觉的Data Matrix二维码识别

    基于机器视觉的Data Matrix二维码识别 二维码识别,这个在视觉应用中占有很重要的比例,各种各样的二维码都有可能需要识别.常见的QR码.Data Matrix码.本方案是识别Data Matri ...

  4. Opencv+ZBar识别条形码、二维码

    文章目录 Opencv识别条形码.二维码 1.ZBar环境配置 2.一维码(条形码)识别 3. 二维码的识别 4. Opencv识别二维码 结束 Opencv识别条形码.二维码 最近的一次作业,恰好之 ...

  5. 【MaixPY 教程】用mixly玩转k210——条形码、二维码、AprilTag识别

    [MaixPY 教程]用mixly玩转k210--条形码.二维码.AprilTag识别 [MaixPy系列教程:] [MaixPy教程]用maixHub训练模型进行开源硬件识别 [MaixPy 教程] ...

  6. 微信小程序二维码识别

    目前市场上二维码识别的软件或者网站越来越多,可是真正方便,无广告的却少之很少. 于是,自己突发奇想做了一个微信二维码识别的小程序. 包含功能: 1.识别二维码 ①普通二维码 ②条形码 ③只是复制解析出 ...

  7. java生成、识别条形码和二维码

    一.概述 使用 zxing 开源库 Zxing主要是Google出品的,用于识别一维码和二维码的第三方库 主要类: BitMatrix 位图矩阵 MultiFormatWriter 位图编写器 Mat ...

  8. 使用JS调用手机本地摄像头或者相册图片识别二维码/条形码

    接着昨天的需求,不过这次不依赖微信,使用纯js唤醒手机本地摄像头或者选择手机相册图片,识别其中的二维码或者是条形码.昨天,我使用微信扫一扫识别,效果超棒的.不过如果依赖微信的话,又怎么实现呢,这里介绍 ...

  9. OpenCV(项目)二维码识别(二维码、条形码)

    目录 过程 1.获取图片中的二维码信息 2.获取视频中的二维码信息 3.检测出二维码框 4.显示数据 5.添加数据,判断二维码是否授权 5-1:.添加数据 5-2.读取文件信息,放入数组 5-3.判断 ...

最新文章

  1. Effective Java 读书笔记----第三章
  2. 亲历dataguard的一些经验问答题
  3. Java序列化,看这篇就够了!
  4. IBM开放Watson AI服务增加云服务使用
  5. D2 日报 2019年4月17日
  6. 集群监控之Ganglia的部署
  7. 部署邮件服务器之间相互通信
  8. SSM 封装base(二) -封装分页
  9. 视频教程-Linux从入门到精通-Linux
  10. Java中的Servlet详解
  11. 深入理解设计模式之模板模式
  12. 相机标定—— 张正友标定法(2)
  13. 根据浏览器的默认语言来切换中英文页面
  14. flink 出现反压场景, 异常场景造成Exceeded checkpoint tolerable failure threshold.
  15. atob()和btoa() 进行base64的编码和解码
  16. java集合之trove4j高性能集合库
  17. python 生成pdf 文字和图片_Python系列—PDF文本与图片抽取
  18. python的猴子补丁(Monkey Patching)
  19. avi格式视频转换高清mp4的方法
  20. MATLAB中调用Python

热门文章

  1. Amazon SageMaker助力行者AI实现游戏内容过滤准确率96%
  2. 2020年学计算机需要什么配置,2020年9月开学季,从实用到高端,力荐10款DIY电脑配置...
  3. python房子代码_用python爬取租房网站信息的代码
  4. 三星galaxy a9android,【三星2016版GALAXYA9评测】最新版智能管理器_三星 2016版GALAXY A9_手机评测-中关村在线...
  5. keil提示找不到芯片库
  6. linux命令行进入回收站,Linux 终端命令 rm 删除的文件进入回收站实现方法
  7. canvas实现图片马赛克
  8. JAVA语言读书笔记-内部类
  9. 一张PPT看懂vSAN
  10. 教你练习气功达到美容功效