使用OpenCV4实现工业缺陷检测的六种方法

目录

  • 1 机器视觉
  • 2 缺陷检测
  • 3 工业上常见缺陷检测方法

1 机器视觉

机器视觉是使用各种工业相机,结合传感器跟电气信号实现替代传统人工,完成对象识别、计数、测量、缺陷检测、引导定位与抓取等任务。其中工业品的缺陷检测极大的依赖人工完成,特别是传统的3C制造环节,产品缺陷检测依赖于人眼睛来发现与检测,不仅费时费力还面临人员成本与工作时间等因素的制约。使用机器视觉来实现产品缺陷检测,可以节约大量时间跟人员成本,实现生产过程的自动化与流水线作业。

2 缺陷检测

常见得工业品缺陷主要包括划痕、脏污、缺失、凹坑、裂纹等,这些依赖人工目检(眼睛检测)的缺陷都可以通过机器视觉的缺陷检测算法来实现替代。当前工业缺陷检测算法目前主要分为两个方向,基于传统视觉的算法和基于深度学习的算法,前者主要依靠对检测目标的特征进行量化,比如颜色,形状,长宽,角度,面积等,好处是可解释性强、对样本数量没有要求、运行速度快,缺点是依赖于固定的光照成像,稍有改动就要改写程序重新部署,而且检测规则和算法跟开发者经验其主导作用。基于深度学习的缺陷检测算法刚好能弥补前者的不足之处,能够很好适应不同的光照,更好地适配同类缺陷要求,缺点是对样本数量有一定要求,对硬件配置相比传统也会有一定要求。

《OpenCV应用开发:入门、进阶与工程化实践》一书第十四 章 通过案例详细介绍基于OpenCV如何实现传统方式的缺陷检测跟基于深度学习的缺陷检测。

图片

3 工业上常见缺陷检测方法

方法一:基于简单二值图像分析实现划痕提取,效果如下:

图片

方法二:复杂背景下的图像缺陷分析,基于频域增强的方法实现缺陷检测,运行截图:

图片

方法三:复杂背景下的图像缺陷分析,基于空域增强实现图像缺陷分析,针对复杂背景的图像,通过空域滤波增强以后实现缺陷查找,运行截图如下:

图片

方法四:基于样品模板比对实现基于空域增强实现图像缺陷分析,通过二之分析与轮廓比对实现缺陷查找,运行截图如下:

图片

方法五:基于深度学习UNet模型网络,实现裂纹与划痕检测,运行截图如下:

图片

方法六:基于深度学习实例分割网络模型网络,实现细微缺陷检测,运行截图如下:

图片

以上内容均来自最近出版的一本新书《OpenCV应用开发:入门、进阶与工程化实践》一书第十四章,分享给大家。

延伸阅读

图片

OpenCV4应用开发:入门、进阶与工程化实践

贾志刚 张振 著

工业界和学术界专家联袂推荐

一线开发专家与金牌讲师撰写,一站式解决OpenCV工程化开发痛点

推荐语:

以工业级视觉应用开发所需知识点为主线,讲透OpenCV相关核心模块,案例化详解1000个常用函数、深度学习知识以及模型的推理与加速。

本书专注于介绍OpenCV4在工业领域的常用模块,通过合理的章节设置构建了阶梯式的知识点学习路径。化繁就简、案例驱动,注重算法原理、代码演示及在相关场景的实际使用。本书还介绍了必备的深度学习知识与开发技巧,拓展OpenCV开发者技能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/294612.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

with torch.no_grad()在Pytorch中的应用

with torch.no_grad()在Pytorch中的应用 参考: https://blog.csdn.net/qq_24761287/article/details/129773333 https://blog.csdn.net/sazass/article/details/116668755 在学习Pytorch时,老遇到 with torch.no_grad(),搞不清其作用&#…

蚂蚁集团5大开源项目获开放原子 “2023快速成长开源项目”

12月16日,在开放原子开源基金会主办的“2023开放原子开发者大会”上,蚂蚁集团主导开源的图数据库TuGraph、时序数据库CeresDB、隐私计算框架隐语SecretFlow、前端框架OpenSumi、数据域大模型开源框架DB-GPT入选“2023快速成长开源项目”。 (图…

SecureCRT连接vmware虚拟机的centos系统配置

软件版本:VMware10.0.3,centos 7,securecrt 8.7.2 1,虚拟网络编辑器选择桥接模式, 2,如果不小心删除网络,centos关机状态下,选择恢复默认设置。 3,进入linux系统&#…

2023年12月22日历史上的今天大事件早读

1808年12月22日 贝多芬《第五交响曲》在维也纳首演 1900年12月22日 清廷全盘接受议和大纲 1900年12月22日 第一辆奔驰汽车诞生 1905年12月22日 中日签订《满州善后协约》 1930年12月22日 苏联全面控制食品供应 1936年12月22日 苏联作家奥斯特洛夫斯基病逝 1942年12月22日…

使用 uiautomatorviewer 获取元素的定位信息

1. 使用 adb 连接设备(真机或模拟器) 连接夜神模拟器:adb connect 127.0.0.1:62001 连接MuMu模拟器:adb connect 127.0.0.1:7555 2. 打开 uiautomatorviewer 在 android-sdk --> tools 目录,找到 uiautomatorvie…

智能优化算法应用:基于社交网络算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于社交网络算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于社交网络算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.社交网络算法4.实验参数设定5.算法结果6.…

Java:LocalDateTime、LocalDate、Date、String相互转化

前言:LocalDateTime、LocalDate、Date三者联系 非线程安全的方法 Date类的大部分方法都不是线程安全的,比如setYear()、setMonth()、setDate()、setHours()、setMinutes()、setSeconds()等方法。这些方法都可以修改Date对象的内部状态。如果多个线程同时…

基于ssm重庆理工大学心理咨询管理子系统的分析与实现论文

摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理,然而,随着近些年信息技术的迅猛发展,让许多比较老套的信息管理模式进行了更新迭代,心理咨询预约信息因为其管理内容繁杂,管理数量繁多导致手工进行处理不能…

EasyExcel使用: RGB字体,RGB背景颜色,fillForegroundColor颜色对照表

EasyExcel使用: RGB字体,RGB背景颜色,fillForegroundColor颜色对照表 使用EasyExcel导出表格可能会对字体颜色和单元格背景颜色进行自定义的修改。 可以自定义字体颜色或者每个单元格的颜色 要想自定义颜色,需要重写CellWriteHandler接口&am…

Vue 组件传参 prop向下传递、emit向上传递

组件传参 学习了组件用法,就像一种嵌套引用关系,在这个关系中,经常会涉及相互传数据的需求,即父组件传子组件,子组件传父组件。 父、子组件的关系可以总结为 : prop 向下传递(和事件无关), emit 事件&…

AI-数学-初高中-不等式

原教学视频:初高衔接】2不等式解法梳理_哔哩哔哩_bilibili 1.一元二次不等式 2.分式不等式 3.高次函数图像 4.绝对值不等式 5.根式不等式

tsconfig.app.json文件报红:Option ‘importsNotUsedAsValues‘ is deprecated...

在创建vue3 vite ts项目时的 tsconfig.json(或者tsconfig.app.json) 配置文件经常会报一个这样的错误: 爆红: Option ‘importsNotUsedAsValues’ is deprecated and will stop functioning in TypeScript 5.5. Specify compi…