1. Matlab图像处理创新实践-实验1【图像滤波基础(1)】
  2. Matlab图像处理创新实践-实验2【图像滤波基础(2)】
  3. Matlab图像处理创新实践-实验3【图像锐化】
  4. Matlab图像处理创新实践-实验4【大实验——GUI综合设计】
  • Matlab实验4——GUI程序操作说明

目   录

一、实验目的

二、实验内容

三、实验过程及结果

步骤1、2、3

步骤4

步骤5、6

步骤7

步骤8

四、分析与思考

附录:代码汇总


一、实验目的

通过简单实验完成对一个图像去除噪声的操作,来熟悉并了解图像处理中空域滤波的概念,通过实际操作掌握滤波器的生成和基本的滤波操作,以完成基本的图像处理目的。

二、实验内容

步骤1:用手机给自己拍一张美照(必须是本人照片);

步骤2:将你的照片放到计算机内;

步骤3:启动Matlab,并通过imread(); 读取该照片,然后通过imshow()进行显示;如果图片过大,可以通过imresize(A,m)进行缩小,其中A为图像,m为尺寸变化系数,比如可设为0.2,尺寸为原来的五分之一;

步骤4:执行noise_im = imnoise(im, 'gaussian');函数,对你刚刚读取到的照片添加一定量的噪声,其中,im代表你刚刚读取到的图像;

步骤5:利用F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器,其中,Size和Sigma的数值自己确定;

步骤6:通过new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作,并观察效果;

步骤7:反复调整第五步中的Size和Sigma两个参数,并反复进行滤波操作,最终将你最满意的结果保存,并显示,同时记录下得到最满意结果时的两个参数值;

步骤8:可尝试迭代操作,即 im = imfilter(im, F); im = imfilter(im, F);……即前一次滤波的结果又作为第二次滤波的输入参数。这样迭代多次,观察效果,并选择出迭代次数以及和Size,Sigma两个参数的最佳搭配值。

三、实验过程及结果

【在这里描述下你的实验操作过程和相应代码,以及你得到的最终结果,需图文并茂。】

尊龙

步骤1、2、3

步骤1用手机给自己拍一张美照(必须是本人照片);

步骤2将你的照片放到计算机内;

步骤3启动Matlab,并通过imread(); 读取该照片,然后通过imshow()进行显示;如果图片过大,可以通过imresize(A,m)进行缩小,其中A为图像,m为尺寸变化系数,比如可设为0.2,尺寸为原来的五分之一;

步骤4

步骤4:执行noise_im = imnoise(im, 'gaussian');函数,对你刚刚读取到的照片添加一定量的噪声,其中,im代表你刚刚读取到的图像;

步骤5、6

步骤5:利用F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器,其中,Size和Sigma的数值自己确定;

步骤6:通过new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作,并观察效果;

步骤7

步骤7:反复调整第五步中的Size和Sigma两个参数,并反复进行滤波操作,最终将你最满意的结果保存,并显示,同时记录下得到最满意结果时的两个参数值;

步骤8

步骤8:可尝试迭代操作,即 im = imfilter(im, F); im = imfilter(im, F);……即前一次滤波的结果又作为第二次滤波的输入参数。这样迭代多次,观察效果,并选择出迭代次数以及和Size,Sigma两个参数的最佳搭配值。

四、分析与思考

【在此描述下你从该实验中得出的结论,并对实验结果进行分析,解释下为什么高斯滤波器可以去除噪声,可以查阅资料。】

此次试验,学习了如何使用Matlab对图像进行处理(展示图像、放大图像、缩小图像、噪声处理等)。还学习了高斯滤波器,高斯滤波器是一种线性滤波器,能够有效的抑制噪声,平滑图像,其作用原理和均值滤波器类似,都是取滤波器窗口内的像素的均值作为输出。

附录:代码汇总(ex1.m)

%--------步骤3--------
x = imread('E:/zunlong.jpg'); % 读取图片:将图像数据读取到Matlab环境中
imshow(x); % 显示图片
% 警告: Image is too big to fit on screen; displaying at 8%
% > In imuitools\private\initSize at 71
%   In imshow at 282 %--------步骤3--------
smallx = imresize(x, 0.5); %在保持图像形状的基础上对图像的大小进行改变
figure, imshow(smallx);    % 显示图片% --------步骤4--------
x = imread('E:/zunlong.jpg'); % 读取图片:将图像数据读取到Matlab环境中
smallx = imresize(x, 0.5);    %在保持图像形状的基础上对图像的大小进行改变noise_x = imnoise(smallx, 'gaussian'); % 噪声处理 对刚刚读取到的照片添加一定量的噪声,其中,im代表刚刚读取到的图像;
figure, imshow(noise_x);               % figure: 生成新的图片窗口,不覆盖原窗口% --------步骤5--------
F = fspecial('gaussian', 5, 1); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器%--------步骤6--------
x = imread('E:/zunlong.jpg');  % 读取图片:将图像数据读取到Matlab环境中
smallx = imresize(x, 0.5);     %在保持图像形状的基础上对图像的大小进行改变
noise_x = imnoise(smallx, 'gaussian'); % 噪声处理 对刚刚读取到的照片添加一定量的噪声,其中,im代表刚刚读取到的图像;F = fspecial('gaussian', 5, 1); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im1 = imfilter(noise_x, F); % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
imshow(new_im1); % figure, F = fspecial('gaussian', 50, 1); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im2 = imfilter(noise_x, F);  % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
imshow(new_im2); % figure, F = fspecial('gaussian', 50, 30); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im3 = imfilter(noise_x, F);   % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
imshow(new_im3); % figure, subplot(2,2,1);imshow(x);title('原图');
subplot(2,2,2);imshow(smallx);title('缩小至原来的0.05倍');
subplot(2,2,3);imshow(imnoise(x, 'gaussian'));title('加噪');
subplot(2,2,4);imshow(imfilter(noise_x, fspecial('gaussian', 5, 1)));title('滤波处理');% --------步骤7--------
x = imread('E:/zunlong.jpg'); % 读取图片:将图像数据读取到Matlab环境中
smallx = imresize(x, 0.05);   %在保持图像形状的基础上对图像的大小进行改变
noise_x = imnoise(smallx, 'gaussian'); % 噪声处理 对刚刚读取到的照片添加一定量的噪声,其中,im代表刚刚读取到的图像;F = fspecial('gaussian', 5, 1);   % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im1 = imfilter(noise_x, F);   % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
subplot(2,2,1), imshow(new_im1),title('原始图像');F = fspecial('gaussian', 50, 1);  % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im2 = imfilter(noise_x, F);   % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
subplot(2,2,2), imshow(new_im2),title('Size、Sigma:50、1');F = fspecial('gaussian', 50, 5); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im3 = imfilter(noise_x, F);  % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
subplot(2,2,3), imshow(new_im3),title('Size、Sigma:50、5');F = fspecial('gaussian', 100, 1); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器
new_im4 = imfilter(noise_x, F);   % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
subplot(2,2,4), imshow(new_im4),title('Size、Sigma:100、1');%--------步骤8--------
x = imread('E:/zunlong.jpg'); % 读取图片:将图像数据读取到Matlab环境中
smallx = imresize(x, 0.5);    %在保持图像形状的基础上对图像的大小进行改变
noise_x = imnoise(smallx, 'gaussian'); % 噪声处理 对刚刚读取到的照片添加一定量的噪声,其中,im代表刚刚读取到的图像;F = fspecial('gaussian', 50, 1); % F = fspecial('gaussian', Size, Sigma);生成一个高斯滤波器new_im5 = imfilter(noise_x, F);  % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
figure, imshow(new_im5);new_im6 = imfilter(new_im5, F);  % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
figure, imshow(new_im6);new_im7 = imfilter(new_im6, F);  % new_im = imfilter(noise_im, F)函数对添加了噪声的图像进行滤波操作
figure, imshow(new_im7);

Matlab图像处理创新实践-实验1【图像滤波基础(1)】相关推荐

  1. Matlab图像处理创新实践-实验2【图像滤波基础(2)】

    Matlab图像处理创新实践-实验1[图像滤波基础(1)] Matlab图像处理创新实践-实验2[图像滤波基础(2)] Matlab图像处理创新实践-实验3[图像锐化] Matlab图像处理创新实践- ...

  2. Matlab图像处理创新实践-实验3【图像锐化】

    Matlab图像处理创新实践-实验1[图像滤波基础(1)] Matlab图像处理创新实践-实验2[图像滤波基础(2)] Matlab图像处理创新实践-实验3[图像锐化] Matlab图像处理创新实践- ...

  3. Matlab图像处理创新实践-实验4【综合设计大实验——GUI综合设计】

    Matlab图像处理创新实践-实验1[图像滤波基础(1)] Matlab图像处理创新实践-实验2[图像滤波基础(2)] Matlab图像处理创新实践-实验3[图像锐化] Matlab图像处理创新实践- ...

  4. 【OpenCV 例程200篇】78. 频率域图像滤波基础

    [OpenCV 例程200篇]78. 频率域图像滤波基础 欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列,持续更新中 3. 频率域 ...

  5. 2020-2021学年——图像图形编程实践实验4_Canny图像边缘检测

    Canny图像边缘检测 实验目的 了解并掌握使用微分算子进行图像边缘检测的基本原理: 了解Canny边缘检测原理与实现,进一步理解图像锐化的实质. 实验设备 PC机.matlab2018b 实验原理 ...

  6. 2020-2021学年——图像图形编程实践实验2_图像的基本运算

    图像的基本运算 实验目的 1.了解图像的算术运算在数字图像处理中的初步应用; 2.体会图像算术运算处理的过程和处理前后图像的变化. 实验设备 PC机.matlab2018b 实验原理   图像的代数运 ...

  7. 2020-2021学年——图像图形编程实践实验1_图像二值化

    图像二值化 实验目的 1.熟练掌握在MATLAB中如何读取图像. 2.掌握如何利用MATLAB来获取图像的大小.颜色.高度.宽度等等相关信息. 3.掌握如何在MATLAB中按照指定要求存储一幅图像的方 ...

  8. OpenCV2:图像滤波基础

    http://www.myexception.cn/image/1853919.html 一:基本概念 滤波是数字图像处理中的一个基本操作,在信号处理领域可以说无处不在.图像滤波,即在尽量保留图像细节 ...

  9. 图像滤波基础知识:图像与波的关系以及图像噪声知识

    ☞ ░ 前往老猿Python博文目录 https://blog.csdn.net/LaoYuanPython ░ 一.引言 老猿对图像处理基础知识非常缺乏,所以OpenCV-Python的学习进度很慢 ...

最新文章

  1. Android开发实践:以“专业”的态度处理多线程
  2. R语言构建xgboost模型:交叉验证(cross validation)训练xgboost模型
  3. 详解「递归」正确的打开方式
  4. ASP正则表达式方面小笔记
  5. java毕业实习日志_《Java课程实习》日志(周一)
  6. HG30A-3多用表校验仪
  7. 说说域名、二级域名和主机名的联系区别
  8. 重装后显示计算机无法联网,Win10重装系统后无法联网如何解决
  9. buuctf————[Zer0pts2020]easy strcmp
  10. app与后台通信完整流程
  11. mysql反删除恢复软件下载_MySQL Recovery(MySQL恢复软件)下载 v4.1官方版-下载啦
  12. [数论 斐波那契] 51nod1355. 斐波那契的最小公倍数
  13. [RK3288][Android5.1] 移植笔记 --- eDP显示屏添加
  14. 什么是WiFi 7?| 奇怪的知识又增加了……
  15. iebook模板制作器与iebook模…
  16. Q for Mortals2笔记 -- 字典
  17. 神经网络权值和阈值范围,神经网络的权值和阈值
  18. 企业如何做好数据管理?产品选型怎么做?
  19. 【观察】纷享销客:中国SaaS CRM市场的“破壁人”
  20. linux添加ax88772b驱动,佳能 USB 2.0 to Fast Ethernet AX88772B 驱动程序下载-更新佳能软件(以太网控制器)...

热门文章

  1. 北航java大作业,北航成人继续教育 本科 计算机科学与技术 JAVA——大作业.doc
  2. java project 部署_关于Java Project项目在Linux下部署步骤及注意事项
  3. hashCode() 和equals() 区别和作用
  4. 六、最通俗易懂的JavaScript进阶教程(二)
  5. AAAI 2022 | 北航提出基于特征纯化的视线估计算法,让机器更好地“看见”
  6. 再谈变分自编码器(VAE):估计样本概率密度
  7. 知识表示与融入技术前沿进展及应用
  8. 直播报名 | 官方解读NVIDIA黑科技:StyleGAN的架构与实现
  9. POJ 2251 Dungeon Master(三维BFS求最短路径)
  10. 算法竞赛入门与进阶 (一)枚举