1、用Prewitt算子检测图像的边缘
I = imread('bacteria.BMP');
BW1 = edge(I,'prewitt',0.04); % 0.04为梯度阈值
figure(1);
imshow(I);
figure(2);
imshow(BW1);
2、用不同σ值的LoG算子检测图像的边缘
I = imread('bacteria.BMP');
BW1 = edge(I,'log',0.003); % σ=2
imshow(BW1);title('σ=2')
BW1 = edge(I,'log',0.003,3); % σ=3
figure, imshow(BW1);title('σ=3')
3、用Canny算子检测图像的边缘
I = imread('bacteria.BMP');
imshow(I);
BW1 = edge(I,'canny',0.2);
figure,imshow(BW1);
4、图像的阈值分割
I=imread('blood1.tif');
imhist(I); % 观察灰度直方图, 灰度140处有谷,确定阈值T=140
I1=im2bw(I,140/255); % im2bw函数需要将灰度值转换到[0,1]范围内
figure,imshow(I1);
5、用水线阈值法分割图像
afm = imread('afmsurf.tif');figure, imshow(afm);
se = strel('disk', 15);
Itop = imtophat(afm, se); % 高帽变换
Ibot = imbothat(afm, se); % 低帽变换
figure, imshow(Itop, []); % 高帽变换,体现原始图像的灰度峰值
figure, imshow(Ibot, []); % 低帽变换,体现原始图像的灰度谷值
Ienhance = imsubtract(imadd(Itop, afm), Ibot);% 高帽图像与低帽图像相减,增强图像
figure, imshow(Ienhance);
Iec = imcomplement(Ienhance); % 进一步增强图像
Iemin = imextendedmin(Iec, 20); figure,imshow(Iemin) % 搜索Iec中的谷值
Iimpose = imimposemin(Iec, Iemin);
wat = watershed(Iimpose); % 分水岭分割
rgb = label2rgb(wat); figure, imshow(rgb); % 用不同的颜色表示分割出的不同区域
6、对矩阵进行四叉树分解
I = [ 1 1 1 1 2 3 6 6
1 1 2 1 4 5 6 8
1 1 1 1 10 15 7 7
1 1 1 1 20 25 7 7
20 22 20 22 1 2 3 4
20 22 22 20 5 6 7 8
20 22 20 20 9 10 11 12
22 22 20 20 13 14 15 16];
S = qtdecomp(I,5);
full(S)
7、将图像分为文字和非文字的两个类别
I=imread('4-11.jpg');
I1=I(:,:,1);
I2=I(:,:,2);
I3=I(:,:,3);
[y,x,z]=size(I);
d1=zeros(y,x);
d2=d1;
myI=double(I);
I0=zeros(y,x);
for i=1:x
for j=1:y
%欧式聚类
d1(j,i)=sqrt((myI(j,i,1)-180)^2+(myI(j,i,2)-180)^2+(myI(j,i,3)-180)^2);
d2(j,i)=sqrt((myI(j,i,1)-200)^2+(myI(j,i,2)-200)^2+(myI(j,i,3)-200)^2);
if (d1(j,i)>=d2(j,i))
I0(j,i)=1;
end
end
end
figure(1);
imshow(I);
% 显示RGB空间的灰度直方图,确定两个聚类中心(180,180,180)和(200,200,200)
figure(2);
subplot(1,3,1);
imhist(I1);
subplot(1,3,2);
imhist(I2);
subplot(1,3,3);
imhist(I3);
figure(4);
imshow(I0);
8、形态学梯度检测二值图像的边缘
I=imread('wrod213.bmp');
imshow(I);
I=~I; % 腐蚀运算对灰度值为1的进行
figure, imshow(I);
SE=strel('square',3); % 定义3×3腐蚀结构元素
J=imerode(~I,SE);
BW=(~I)-J; % 检测边缘
figure,imshow(BW);
9、形态学实例——从PCB图像中删除所有电流线,仅保留芯片对象
I=imread('circbw.tif');
imshow(I);
SE=strel('rectangle',[40 30]); % 结构定义
J=imopen(I,SE); % 开启运算
figure,imshow(J);
bianyuan.zip_图像检测仿真
版权申诉
169 浏览量
2022-09-19
18:39:43
上传
评论
收藏 2KB ZIP 举报
alvarocfc
- 粉丝: 109
- 资源: 1万+
最新资源
- Python 程序语言设计模式思路-行为型模式:职责链模式:将请求从一个处理者传递到下一个处理者
- 9241703124789646.16健身系统2.apk
- postgresql-16.3-1-windows-x64.exe
- Python 程序语言设计模式思路-结构型模式:装饰器讲解及利用Python装饰器模式实现高效日志记录和性能测试
- 基于YOLOv5和DeepSORT的多目标跟踪仿真与记录
- Python 程序语言设计模式思路-创建型模式:原型模式:通过复制现有对象来创建新对象,面向对象编程
- 卸载软件geek卸载软件geek
- Python 程序语言设计模式思路-创建型模式:单例模式,确保一个类的唯一实例(装饰器)面向对象编程、继承
- skywalking-plugins.jar skywalking-alarm.jar
- 独栋别墅图纸D020-两层-10.00&11.00米- 施工图.dwg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈