图像形态学处理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五:图像形态学处理

一、实验目的:

(1)了解二值形态学的基本运算

(2)掌握基本形态学运算的实现

(3)了解形态操作的应用

二、实验内容与要求

(1)设计程序实现对图1,实现去除图像中的噪声。

(2)设计程序,实现将图2转化为二值图像,并计算图中鸡块中骨头的比重。

(3)设计程序,实现去除图3中的矩形区域外的噪声,并填充矩形区域内部了。

三、实验代码及结果

1、(1)实验代码

>> i=imread('C:\Users\Administrator\Desktop\图片1.png');

>> se=ones(3);

>> I=imopen(i,se);

>> I=imclose(I,se);

>> subplot(1,2,1),imshow(i),title('图片1'),subplot(1,2,2),imshow(I),title('先开后闭');

(2)实验结果

2、(1)实验代码

.m文件:

function [new] =jisuan(original,T)

new=original;

m=size(original,1);

n=size(original,2);

for i=1:m

for j=1:n

if new(i,j)>=T

new(i,j)=1;

elseif new(i,j)

new(i,j)=0;

end

end

end

end

命令行窗口代码:

>> i=imread('C:\Users\Administrator\Desktop\图片2.png');

>> i1=double(i)./255;

>> imhist(i1);

>> i2=jisuan(i1,0.25);

>> I=jisuan(i1,0.785);

>> subplot(1,3,1),imshow(i),title('原图'),subplot(1,3,2),imshow(i2),title('鸡肉'),subplot(1,3,3),imshow(I),title('骨头');

>> n=bwarea(i2);

>> m=bwarea(I);

>> k=m/n

k =

0.0471

(2)实验结果

3、(1)实验代码

>> i=imread('C:\Users\Administrator\Desktop\图片3.png');

>> se=ones(20);

>> I=imerode(i,se);

>> I=imdilate(I,se);

>> I=imdilate(I,se);

>> subplot(1,2,1),imshow(i),title('图片3'), subplot(1,2,2),imshow(I),title('先腐蚀后膨胀'); (2)实验结果

四、实验总结

1、图像二值化的时候,自己设置阈值可以使得到的答案更准确,但需要一些经验;

2、先腐蚀后膨胀或者是先膨胀后腐蚀并不一定能恢复原图。

相关文档
最新文档