缺陷检测 伤痕检测 瑕疵检测 划痕检测 matlab

可以看出 能够定位到缺陷的位置

更换成别的图像的检测结果

图  图像预处理的检测

由于照明方式等缘故,我们发现原始图像中的金属表面缺陷和整个金属表面背景之间的灰度差较小,灰度范围较小,因而其对比度较低,金属缺陷并不明显,这不利于图像的后期处理,我们需要使用一些方法来增加图像的对比度。常见的对比度增强方法有对数变换,幂律变换,灰度级分层,灰度归一化,对比度拉伸,直方图均衡化,直方图规定化等。考虑到不同照片的背景光强并不相同,所以恒定参数的方法(如对数变换,幂律变换,灰度级分层,对比度拉伸)并不对所有图片适用,故我们考虑使用灰度归一化和直方图均衡化。

滤波处理

    

滤波方法主要分为空域滤波与频域滤波,且二者的关系满足卷积定理。其中空域滤波主要有均值滤波,中值滤波,高斯滤波与双边滤波;频率滤波注意有傅里叶变换滤波,离散余弦变换滤波与小波变换滤波。这些算法虽然可以减少噪声,但是也会滤除部分细节信息,导致某些缺陷细节的丢失。所有我们需要寻找新的滤波算法来实现。

Ibw = bwareaopen(Ibw,20)        ;%灏嗗皬浜嶺X鍍忕礌鐨勫崟鍏冨幓鎺?
figure,
subplot(1,2,1) 
imshow(I);
title('鍘熷浘');
subplot(1,2,2)
imshow(Ibw);
title('鍒掔棔妫?娴嬪浘');


grayimg=I;
BWimg = grayimg;
BWimg = grayimg;

缺陷检测伤痕检测瑕疵检测划痕检测matlab-机器学习文档类资源-CSDN文库

猜你喜欢

转载自blog.csdn.net/matlab_python22/article/details/125098532