| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 基于深度学习的工业品组件缺陷检测技术(一) -> 正文阅读 |
|
[人工智能]基于深度学习的工业品组件缺陷检测技术(一) |
目录 一、数据集缺点1.数据集样本量少,总共只有117张样本图片,其中的缺陷样本图片数量更少。数据样本不足容易导致模型发生过拟合现象,泛化能力不强。 2.图片像素大小为512*512,计算量大。如果对图片大小进行压缩或者将图片转为灰度图片都可能导致有用特征信息的丢失。 二、数据预处理针对以上缺点,最简单有效的方法是对数据集样本量进行扩充,一般采用几何变换的方式来增加训练集样本。常用的几何变换方法有旋转、缩放平移。 1.图片的旋转和缩放用cv2.getRotationMatrix2D生成变换矩阵M,再用warpAffine对图片应用仿射变换。为了生成多张不同旋转方式的图片,可以设定旋转角度范围,和图像缩放范围,每次在范围内随机取值生成旋转后图片。代码如下(代码仅展示思路,不严谨)
2.图片的平移先定义平移矩阵M,再用warpAffine对图片应用仿射变换。
除了通过几何变换扩充数据集样本量之外,常见的数据预处理还有通过卷积操作从输入图像中提取特征。常见的卷积操作有高斯模糊和边缘检测。 3.高斯模糊高斯模糊,也叫高斯平滑,通常用它来减少图片噪声以及降低细节层次(百度百科) 用cv2.GaussianBlur进行高斯模糊,其中高斯卷积核的尺寸必须是正数和奇数。
4.边缘检测边缘检测提取图片的边缘特征。Canny算法处理前后的图片(图片来自OpenCV文档): ?边缘检测的几种常见算法:Sobel、Laplacian、Canny。 4.1?Sobel依据:对像素点上下、左右邻点灰度加权差,在边缘处达到极值。先对x方向的梯度进行计算并取绝对值(有小于0的像素值),再对y方向的梯度进行计算并取绝对值,最后对图片混合加权。
4.2?Laplacian依据:进行二阶导数计算,最大变化处的值为零即边缘是零值。直接用cv2.Laplacian进行边缘检测。
4.3?Canny?用cv2.Canny实现边缘检测。Canny算法中设置高阈值和低阈值,其中高阈值将要提取轮廓的物体与背景区分开来,低阈值用来平滑轮廓。?
4.4 Canny算法的改进参考文献:一种改进自适应阈值的Canny算法 OpenCV文档关于传统Canny算法的介绍:Canny Edge Detector 传统Canny算法的实现过程:
Canny算法的改进:
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 1:56:43- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |