⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 代码17-1.txt

📁 matlab宝典书籍源码 全部代码 希望大家喜欢
💻 TXT
字号:

clc;
clear all;
k=input('Enter the file name','s'); %输入彩色图像到程序中待处理
im=imread(k); %原始彩色图像
im1=rgb2gray(im); %灰度图像,
im1=medfilt2(im1,[3 3]); %对图像进行中值滤波以便去除图像噪声
BW = edge(im1,'sobel'); %寻找边界
[imx,imy]=size(BW);
msk=[0 0 0 0 0;
     0 1 1 1 0;
     0 1 1 1 0;
     0 1 1 1 0;
     0 0 0 0 0;];
B=conv2(double(BW),double(msk)); %对图像进行平滑处理以便减少连通体个数
L = bwlabel(B,8);% 计算连通体
mx=max(max(L))
% 将会有mx 个连通体。这里你可以给出L的值为1到mx 中的一个,或者你可以通过一个循环提取所有的连通体
 [r,c] = find(L==17);  
rc = [r c];
[sx sy]=size(rc);
n1=zeros(imx,imy); 
for i=1:sx
    x1=rc(i,1);
    y1=rc(i,2);
    n1(x1,y1)=255;
end % 将提取的图像存储在数组阵列中
figure,imshow(im); 
figure,imshow(im1);
figure,imshow(B); 
figure,imshow(n1,[]); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -