logo资料库

一篇不错的缺陷检测文章附详细代码-缺陷检测 CL.doc

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
I=imread('wangge2.bmp'); mat2gray(I); %转化成灰度图 J= imadjust(I,[0.1 0.3],[]) ; %灰度调整,能增强黑色区域中白色 B=medfilt2(J); %中值滤波(去除椒盐噪声) BW= edge(B,'sobel',0.1); %边缘检测 BWfill= imfill(BW,'holes') ; %填充缺陷区域(孔或者洞) BWfilt=medfilt2(BWfill) ; %滤波 BWfilt2=medfilt2(BWfilt) ; BWfilt3=medfilt2(BWfilt2) ; BWfilt4=medfilt2(BWfilt3) ; BWfilt5=medfilt2(BWfilt4) ; figure,subplot(1,2,1),imshow(I) ; title('原始图'); subplot(1,2,2),imshow(J) ; title('亮度调整'); figure,subplot(1,3,1),imshow(BW) ; title('边缘检测'); subplot(1,3,2),imshow(BWfill) ; title('填充后'); subplot(1,3,3),imshow(BWfilt5) ; title('滤波后'); 原图
灰度图: I=imread('bupiquexian.jpg'); I=im2bw(I); %转化成二值图 B=medfilt2(I); BWfill= imfill(B,'holes') ; %填充缺陷区域 BWfilt=medfilt2(BWfill) ; %滤波 BWfilt2=medfilt2(BWfilt) ; BWfilt3=medfilt2(BWfilt2) ; BWfilt4=medfilt2(BWfilt3) ; BWfilt5=medfilt2(BWfilt4) ; imshow(I) ; title('二值图'); figure,subplot(1,3,1),imshow(B) ; title('边缘检测'); subplot(1,3,2),imshow(BWfill) ; title('填充后'); subplot(1,3,3),imshow(BWfilt5) ; title('滤波后'); 原始图
上述两例都属于转化成二值图,中值滤波-填充-滤波方法。 Imfill 也可直接用于灰度图像孔洞的填充, 此时孔洞指较亮像素包围的暗区 域。
分享到:
收藏