图像高通和低通滤波处理

上传人:油条 文档编号:33226617 上传时间:2018-02-14 格式:DOC 页数:7 大小:503.50KB
返回 下载 相关 举报
图像高通和低通滤波处理_第1页
第1页 / 共7页
图像高通和低通滤波处理_第2页
第2页 / 共7页
图像高通和低通滤波处理_第3页
第3页 / 共7页
图像高通和低通滤波处理_第4页
第4页 / 共7页
图像高通和低通滤波处理_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《图像高通和低通滤波处理》由会员分享,可在线阅读,更多相关《图像高通和低通滤波处理(7页珍藏版)》请在金锄头文库上搜索。

1、实验五 图像高通和低通滤波处理一、 实验目的掌握常用频域高通滤波器和低通滤波器的设计。进一步加深理解和掌握图像频谱的特点和频域高通滤波及频域低通滤波的原理。理解图象高通滤波和低通滤波的处理过程和特点。二、 实验要求1.实验之前要预习2.独立完成程序的编写3.写出实验报告4.实验每组 1 人实验设备:每组计算机一台三、 实验原理低通滤波器:容许低频信号通过,但减弱(或减少)频率高於截止频率的信号的通过。用在绘制长期走势或均化。 高通滤波器:容许高频信号通过、但减弱(或减少)频率低於截止频率信号通过的滤波器。强调细节。 二维理想高通滤波器的传递函数为:0.(,)(,)1DuvHvD0 是从频率矩形

2、中点测得的截止频率长度,它将以 D0 为半径的圆周内的所有频率置零,而毫不衰减地通过圆周外的任何频率。但其物理上是不可实现的。巴特沃斯高通滤波器的传递函数为: 201(,)(,)nHuvDuv式中 D0 为截止频率距远点距离。与低通滤波器的情况一样,可认为巴特沃斯高通型滤波器比 IHPF 更平滑。高斯高通滤波器传递函数为:220(,)/(,)1DuvHuve高通滤波器能够用高斯型低通滤波器的差构成。这些不同的滤波器有更多的参数,因此能够对滤波器的形状进行更多的控制。四、 实验内容1.对数字图象进行低通滤波处理2.对数字图象进行高通滤波处理3.比较和分析所得到的结果。五、 实验过程1. 流程图开

3、 始选 择 打 开 图 片图 像 格 式 正 确是否在 a x e s 1 中 显 示 原 始 图 像下 拉 菜 单 选 项巴 特 沃 兹 低 通滤 波巴 特 沃 兹 高 通滤 波调 用 巴 特 沃 兹 高通 滤 波 算 法调 用 巴 特 沃 兹 低通 滤 波 算 法a x e s 2 中 显 示 巴 特 沃 兹高 通 滤 波 后 图 像a x e s 3 中 显 示 巴 特 沃 兹低 通 滤 波 后 图 像调 用 理 想 高 通 滤波 算 法调 用 理 想 低 通 滤波 算 法a x e s 4 中 显 示 理 想高 通 滤 波 后 图 像a x e s 5 中 显 示 理 想低 通 滤 波

4、 图 像理 想 高 通 滤 波 理 想 低 通 滤 波2. 试验程序%-选择图片路径及显示-%global f%选择图片路径filename,pathname= . %.表示与下行连接uigetfile(*.bmp;*.jpg;*gif;*tif,选择图片); %打开文件类型,对话框名称f=imread(pathname filename);axes(handles.axes1); %在 axes1 显示原图像 imshow(f) ;title(原始图像);% - Executes on selection change in popupmenu1.function popupmenu1_Ca

5、llback(hObject, eventdata, handles)% hObject handle to popupmenu1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: contents = get(hObject,String) returns popupmenu1 contents as cell array% contentsget(hOb

6、ject,Value) returns selected item from popupmenu1global fva=get(handles.popupmenu1,Value);val=get(hObject,Value);switch val %用 switch 语句设置选项case 1 %巴特沃斯高通滤波器g=fft2(f); % 傅立叶变换g=fftshift(g); % 转换数据矩阵M,N=size(g);nn=2; % 二阶 Butterworth 高通滤波器d0=20; %截止频率为 10m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqr

7、t(i-m)2+(j-n)2);h=1/(1+d0/(0.414*d)(2*nn);% 计算高通滤波器传递函数result(i,j)=h*g(i,j);endendresult=ifftshift(result);y2=ifft2(result);y3=uint8(real(y2);axes(handles.axes2);imshow(y3); % 显示滤波处理后的图像title(巴特沃斯高通滤波);case 2 %巴特沃斯低通滤波 g=fft2(f); % 傅立叶变换g=fftshift(g); % 转换数据矩阵M,N=size(g);nn=2; % 二阶巴特沃斯(Butterworth)

8、低通滤波器d0=30; %截止频率为 10m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqrt(i-m)2+(j-n)2);h=1/(1+0.414*(d/d0)(2*nn);% 计算低通滤波器传递函数result(i,j)=h*g(i,j);endendresult=ifftshift(result);y2=ifft2(result);y3=uint8(real(y2);axes(handles.axes3);imshow(y3); % 显示滤波处理后的图像title(巴特沃斯低通滤波)case 3 %理想高通滤波k=fft2(f); % 傅立叶变换

9、g=fftshift(k); % 转换数据矩阵M,N=size(g);d0=10; %截止频率为 10m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqrt(i-m)2+(j-n)2); % 计算高通滤波器传递函数if d=d0h=0;else h=1;endresult(i,j)=h*g(i,j);endendresult=ifftshift(result);y2=ifft2(result);y3=uint8(real(y2);axes(handles.axes4);imshow(y3);title(理想高通滤波) case 4 %理想低通滤波k=ff

10、t2(f); % 傅立叶变换g=fftshift(k); % 转换数据矩阵M,N=size(g);d0=30; %截止频率为 30m=fix(M/2); n=fix(N/2);for i=1:Mfor j=1:Nd=sqrt(i-m)2+(j-n)2); % 计算高通滤波器传递函数if d=d0h=1;else h=0;endresult(i,j)=h*g(i,j);endendresult=ifftshift(result);y2=ifft2(result);y3=uint8(real(y2);axes(handles.axes5);imshow(y3);title(理想低通滤波)end;3. 实验结果六、 实验总结通过这次实验进一步加深了对图像高通和低通滤波的原理的理解和认识,运用 MATLAB 语言加以实现,锻炼了自己以程序语言实现内容的能力,并提高了解决问题的能力。在编程过程中也遇到了一些问题,经过不断的修正和调试,最终实现了实验内容,熟练了 MATLAB 平台的使用,并提高了对数字图像处理这门课程的理解和认识。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号