ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:258.06KB ,
资源ID:6226157      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6226157.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(苏州大学数字图像Matlab上机实验要点.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

苏州大学数字图像Matlab上机实验要点.docx

1、苏州大学数字图像Matlab上机实验要点数字图像处理与分析实验报告专业 计算机科学与技术 年级 10级 姓名 学号 任课老师 龚声蓉 指导老师 蒋德茂 实验室 理工楼243机房 学期 2013(春) 苏州大学计算机科学与技术学院统一印制二零一三年六月实验一:空域及频域增强一 实验目的(1) 了解图像变换的意义和手段;(2) 熟悉傅里叶变换的基本性质; (3) 通过本实验掌握利用MATLAB编程实现数字图像的傅立叶变换及滤波锐化和复原处理;(4) 了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法。二 实验内容Matlab编程:实现Butterwor

2、th低通滤波和Butterworth高通滤波。提示:预设Butterworth的阶等于2,d0=10。使用cameraman.tif作为原图像。要求:使用subplot函数按3行2列分别显示(1)原始图(2)傅里叶频谱(3)Butterworth低通滤波(4)低通滤波图(5)Butterworth高通滤波(6)高通滤波图 三 实验分析(1) Roberts算子用来实现消除图像模糊地增强的方法,即“锐化”。此处理加强图像的边界和细节。Roberts算子提出的是在2*2的邻域上计算对角导数产生的偏导数在图像处理中心点上用均值或是绝对值求和的形式结合起来。但是此算法增强噪声的缺陷也在图像中体现了。(

3、2) 巴特沃思滤波器去的频率和通过的频率之间没有明显的不连续性,图像的模糊程度降低,而且也没有振铃效应,这是由于在低频和高频之间,滤波器平滑过渡的缘故。四 程序及实验结果 程序代码:clc,clear all;I=imread(cameraman.tif);I=im2double(I);subplot(3,2,1);imshow(I,);%在一张图里依次显示,三行两列title(原始图); F=fft2(I); G=fftshift(F); subplot(3,2,2);imshow(log(1+abs(G),);title(傅里叶频谱); m,n=size(G); c1=floor(m/2)

4、; %中心行坐标c2=floor(n/2); %中心列坐标 d0=10;for i=1:m for j=1:n d=sqrt(i-c1)2+(j-c2)2); h=1/(1+(d/d0)4); A(i,j)=h*G(i,j); endendsubplot(3,2,3);imshow(log(1+abs(A),);title(Butterworth低通滤波); d0=10;for i=1:m for j=1:n d=sqrt(i-c1)2+(j-c2)2); h=1/(1+(d/d0)4); A(i,j)=h*G(i,j); endendf=ifftshift(A);i=real(ifft2(f

5、);subplot(3,2,4);imshow(i,);title(低通滤波图); d0=10;for i=1:m for j=1:n d=sqrt(i-c1)2+(j-c2)2); h=1/(1+(d0/d)4); A(i,j)=h*G(i,j); endendsubplot(3,2,5);imshow(log(1+abs(A),);title(Butterworth高通滤波); d0=40;for i=1:m for j=1:n d=sqrt(i-c1)2+(j-c2)2); h=1/(1+(d0/d)4); B(i,j)=h*G(i,j); endendf=ifftshift(B);i=

6、real(ifft2(f);subplot(3,2,6);imshow(i,);title(高通滤波图); 实验结果:实验二:图像编码与压缩一实验目的(1) 了解图像编码与压缩过程;(2) 实践算数编码及解码的Matlab编程实现;二实验内容Matlab编程:算术编码及解码。提示:已知字符事件出现的概率如下表表:数据出现的概率和取值范围字符概率范围a0.40.0, 0.4)b0.40.4, 0.8)c0.20.8, 1.0)要求:(1) 对输入的字符序列(如aabbc)进行算术编码。(2) 对得到的编码进行解码。 三实验分析(1)算术编码方法是将被编码的一则消息或符号串(序列)表示成0和1之间

7、的一个间隔(Interval),即对一串符号直接编码成0,1区间上的一个浮点小数。(2)解码是编码的逆过程。四程序及实验结果程序代码:clcclear allclose allstring_s=input(请按要求输入字符串:);j,k=size(string_s);pa=0.4;pb=0.4;pc=0.2; disp(输入的字符串是:,string_s) format long for i=1:k if i=1 switch 1 case string_s(i)=a a1=0; a2=0+pa; case string_s(i)=b a1=pa; a2=pa+pb; case string_

8、s(i)=c a1=pa+pb; a2=1; end l=a2-a1; end if (i=2)&(i=1&inum switch 1 case ym1(i)=a bm0=(bm0-0)/pa; case ym1(i)=b bm0=(bm0-pa)/pb; case ym1(i)=c bm0=(bm0-pa-pb)/pc; end i=i+1; ym1(i)=YM(bm0);enddisp(-)disp(译码结果是:,ym1)disp(-)function ym=YM(A)pa=0.4;pb=0.4;pc=0.2; switch 1 case 0=A&Apa ym=a; case pa=A&A

9、pa+pb ym=b; case pa+pb=A&A=1|A0 yuzhi=i endend q=im2bw(I,yuzhi/255);subplot(2,2,4),imshow(q);试验结果:实验4:利用Hough变换检测直线一实验目的Matlab也提供了几个Hough变换的函数:hough、houghpeaks、houghlines,这些函数大大简化了编程复杂度。请使用这几个函数来编程实现对下图直线划痕的检测。要求程序的每一句都必须加注释说明。二实验内容1读入图像 选取有较多直线及部分曲线以作对比的图像作为实验素材。 3实现Houg变换,检测出图像中的直线 Hough变换是一种利用图像的

10、全局特征将特定形状的边缘连接起来,形成连续平滑边缘的一种方法。它通过将源图像上的点影射到用于累加的参数空间,实现对已知解析式曲线的识别。先前对边缘图像进行二值化处理,然后再用hough变换提取直线,最后用颜色标记之。三实验分析四程序实验结果实验代码clear,clc; %清屏I = imread(划痕2.png); subplot(2,2,1); %显示原来的图像imshow(I); title(原图像); %原图像名字 Img = edge(I,prewitt); %利用prewitt算子提取边缘subplot(2,2,2); Imshow(Img); title(提取边缘后); %显示提取

11、边缘的图片 H, T, R = hough(Img); %hough变换subplot(2,2,3); imshow(sqrt(H), ); title(hough变换); %显示hough变换的结果P = houghpeaks(H, 15, threshold, ceil(0.3*max(H(:); %寻找最大点lines = houghlines(Img, T, R, P,FillGap,10,MinLength,20 ); %返回找到的直线subplot(2,2,4); imshow(I);title(最终结果); %显示标出划痕后的图像hold on;max_len = 0;for k = 1:length(lines) xy = lines(k).point1; lines(k).point2; plot(xy(:,1),xy(:,2),LineWidth,2,Color,green); plot(xy(1,1),xy(1,2),x,LineWidth,2,Color,yellow); plot(xy(2,1),xy(2,2),x,LineWidth,2,Color,red); %用不同的颜色显示end实验结果:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1