实验七图像的形态**算。
一、实验目的。
1.掌握图像的奇异值分解与合成。
2.能够利用模板操作实现图像的腐蚀运算3.能够利用模板操作实现图像的膨胀运算4.掌握图像的开、闭运算。
二、实验内容。
1.读下面的程序,分析该程序要完成什么样的功能。
a=[1 2 1;2 3 2;1 2 1];[u d v]=svd(a);[nx,ny]=size(a);i=eye(nx,nx);for i=nx:-1:2i(i,i)=0;end
b=u*i*d*v';b
x=imread(''x=double(x);
a=x(20:256,20:256);[nx,ny]=size(a);i=eye(nx,nx);for i=nx:-1:21i(i,i)=0;end
u d v]=svd(a);b=u*i*d*v';a=uint8(a);`b=uint8(b);subplot(2,2,1);imshow(a)subplot(2,1,2);imshow(b)
该程序的功能是对图像分别进行膨胀和腐蚀的操作!
2.利用模板操作,编写程序实现二值图像的腐蚀运算函数imerode的功能。
程序:a=imread('d:\'b=~a;
m=[1;1;1];n=[1 1 0];
p=[0 0 0;0 1 0;0 0 0];q=[0 0 1;0 0 0;1 0 0];
c1=imerode(b,m);c2=imerode(b,n);c3=imerode(b,p);c4=imerode(b,q);subplot(1,5,1);imshow(b)subplot(1,5,2);imshow(c1)subplot(1,5,3);imshow(c2)subplot(1,5,4);imshow(c3)subplot(1,5,5);imshow(c4)
3.利用模板操作,编写程序实现二值图像的膨胀运算函数imdilate的功能。程序:
a=imread('d:\'b=~a;
m=[1;1;1];
n=[1 1 0];
p=[0 0 0;0 1 0;0 0 0];
q=[0 0 1;0 0 0;1 0 0];
c1=imdilate(b,m);c2=imdilate(b,n);c3=imdilate(b,p);c4=imdilate(b,q);subplot(1,5,1);imshow(b)subplot(1,5,2);imshow(c1)subplot(1,5,3);imshow(c2)subplot(1,5,4);imshow(c3)subplot(1,5,5);imshow(c4)
5.使用腐蚀与膨胀函数直接编写程序实现例3-26的功能,然后把得到的结果与例3-26
进行比较,从而分析理解开、闭运算的定义。
采用开闭运算得到的结果:a=imread('d:\'m=strel('line',10,30);c1=imopen(a,m);c2=imclose(a,m);subplot(1,3,1);imshow(a)subplot(1,3,2);imshow(c1)subplot(1,3,3);imshow(c2)
采用膨胀与腐蚀的结果:
a=imread('d:\'m=strel('line',10,30);b=imdilate(a,m);b1=imerode(b,m);
c=imerode(a,m);
c1=imdilate(c,m);
subplot(1,3,1);imshow(a)subplot(1,3,2);imshow(c1)subplot(1,3,3);imshow(b1)
matlab大作业
matlab语言及应用。周一晚作业廖育州07010559 第一组程序。绘制选用潍柴发动机wd615.50时汽车行驶性能曲线图,ft ua图clear,clc 清除内存变量,清屏 n为发动机的转速。n 1000,1100,1200,1300,1400,1500,1600,1700,1800,1900,...
MATLAB大作业
1.设计一个程序,要求用户用键盘输入10次,输入内容可以是数字 英文 汉字 或者其他文字或者符号。如果输入的是数字,则把存入一个数字数组当中 如果输入的是英文的字符,则存入一个英文字符数组当中 如果是其他字符,则存入一个字符串数组中。当10次内容都输入完毕后,先输出英文数组中的内容,然后输出字符串数...
matlab大作业
安阳工学院。专业课课程大作业。课程名称 中文 matlab编程应用 成绩。姓名邵艳草。班级通信工程2010级。学号20100203 日期2012年12月25日。二进制振幅键控 2ask 摘要 matlab是一种功能强大的科学计算和工程 软件,它的交互式集成界面能够帮助用户快速的完成数值分析 数字信号...