MATLAB进行 形态学处理的几个函数

本文详细介绍使用MATLAB进行图像形态学处理的方法,包括腐蚀、膨胀、开操作、闭操作及形态学重构等核心功能。通过实例展示了如何利用不同结构元素进行图像处理,如去除噪声、填补空洞和消除边界对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

腐蚀 和 膨胀

clear all; clc;

im = imread(‘G:\Matlab\toolbox\images\imdata\cameraman.tif’);
im_inv=255-im;
se = strel(‘line’,11,90); % 结构元素
im1=imerode(im,se);
im2=imdilate(im,se);
dilatedI=imdilate(im_inv,se);
dilatedII=255-dilatedI; % 先取反,后膨胀
figure;
subplot(221); imshow(im1); title(‘erode’);
subplot(222); imshow(im2); title(‘dilate’);
subplot(223); imshow(dilatedII); title('先取反,后膨胀 ');
subplot(224); imshow(im); title(‘原图’);
腐蚀 膨胀

开操作 和 闭操作

I = imread(‘G:\Matlab\toolbox\images\imdata\circles.png’);
se=strel(‘rectangle’,[40 30]); % 生成矩形结构
I1 = imopen(I,se); % 开运算,填补空洞
I2 = imclose(I,se); % 闭运算,连接图像
figure;
subplot(131); imshow(I1); title(‘open’);
subplot(132); imshow(I2); title(‘close’);
subplot(133); imshow(I); title(‘原图’);
在这里插入图片描述

形态学重构----填补空洞 & 消除边界对象

M = imread(‘G:\Matlab\toolbox\images\imdata\tire.tif’);
N = im2bw(imread(‘G:\Matlab\toolbox\images\imdata\rice.png’));
M1 = imfill(M,‘holes’);
N1 = imclearborder(N);
figure;
subplot(221); imshow(M); title(‘填充后图像’);
subplot(222); imshow(M1); title(‘原图’);
subplot(223); imshow(N); title('消除边界后图像 ');
subplot(224); imshow(N1); title(‘原图’);
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值