本组课题完成的主要内容:
①图像处理的基本功能,包括图片读取,保存与退出、彩色图像类型转换、旋转、初始化、裁剪;
②添加噪声,如高斯噪声、椒盐噪声、泊松噪声等;
③图像变换,包括傅里叶变换、离散余弦变换;
④边缘检测,如用Sobel算子检测等;
⑤图像基本类型转换,如原图变为二值图等;
⑥图像滤波,包括线性滤波(中值滤波、维纳滤波、均值滤波)与非线性滤波(巴特沃斯高通滤波器、理想低通滤波器);
⑦图像形态学处理,如开闭运算、腐蚀膨胀等;
⑧图像灰度变化,如灰度曲线变换、直方图显示以及直方图均衡化等;
⑨图像滤镜与额外功能,包括老照片、素颜与颜色混合增强滤镜,全局马赛克和选择边框供能;以及亮度,对比度的调节,自定义可视化界面,添加开发者选项,加载弹框的显示等。
1.课题描述. 2
2.相关背景介绍. 2
3.噪声添加算法. 3
3.1实验内容. 3
3.2基本原理. 3
3.3关键算法解析. 4
3.4实验结果与分析. 4
4.图像变换算法. 5
4.1实验内容. 5
4.2基本原理. 6
4.3关键算法解析. 6
4.4实验结果与分析. 6
5.边缘检测算法. 6
5.1实验内容. 6
5.2基本原理. 7
5.3关键算法解析. 7
5.4运行结果与分析. 8
6.图像滤波算法. 9
6.1 实验内容. 9
6.2 基本原理. 9
6.3 关键算法解析. 10
6.4 实验结果与分析. 12
7.图像形态学算法. 14
7.1 实验内容. 14
7.2 基本原理. 15
7.3.关键算法解析. 15
7.4. 实验结果与分析. 17
8.总结. 19
9.参考文献. 20
(1)近年来,DSP技术的发展不断将数字信号处理领域的理论研究成果应⽤到实际系统中,并且推动了新的理论和应⽤领域的发展,对图像处理等领域的技术发展也起到了⼗分重要的推动作⽤。基于DSP的图像处理系统也被⼴泛的应⽤于各种领域。
从图像处理技术的发展来看,实时性在实际中有着⼴泛的应⽤。实时图像处理系统设计的难点是如何在有限的时间内完成⼤量图像数据的处理。因为要对图像进⾏实时处理,所以为了实现实时和快速,⾼效的处理,在这个系统中要求我们的图像处理速度要达到⼀定的速度,⽽图像处理的速度是由算法的执⾏时间、视频输⼊输出延迟以及外部数据存储器与DSP的数据交换效率等因素决定。算法执⾏时间与CPU 速度有关;图像处理的速度既图像处理所要⽤的时间,它主要是由算法决定的。算法执⾏的指令的多少决定了处理速度。⽽图像的处理的算法包含有⼤量的算法指令,为了快速的处理⼤数据量的多媒体信息,特别是活动图像信息,同时⼜能灵活的⽀持多种不同的应⽤,DSP的应⽤势在必⾏。相⽐于通⽤的DSP,⽤于多媒体应⽤的专⽤DSP集成了许多专⽤模块,这些模块⽤硬件加速很多通⽤的多媒体⽅⾯的⼤量算法明晰的处理、实时性强等要求。
(2)图形用户界面(GUI)是指由窗口、菜单、图标、光标、按键、对话框和文本等各种图形对象组成的用户界面。它让用户定制用户与Matlab的交互方式,而命令窗口不是唯一与Matlab的交互方式。
基本图形对象分为控件对象和用户界面菜单对象,简称控件和菜单。
Matlab为GUI设计一共准备了4种模板,分别是:
Blank GUI(Default)(空白模板,默认);
GUI with Uicontrols(带控件对象的GUI模板);
GUI with Axes and Menu(带坐标轴与菜单的GUI模板);
Modal Question Dialog(带模式问题对话框的GUI模板)。
给原图像添加高斯噪声、椒盐噪声、乘法噪声以及泊松噪声并分析其效果。
(1)高斯噪声:高斯噪声就是符合高斯分布的噪声,在数字图像处理上为二维的高斯分布。即得到一个二维的、符合高斯分布的噪声矩阵,将其添加到原图像上,高斯噪声添加完成。
(2)椒盐噪声:是根据图像的信噪⽐,随机生成⼀些图像内部的像素位置,并且随机对这些像素点赋值为0或255.信噪⽐越⼩,噪声越多,信噪⽐为1时,图像不含噪声。
(3)乘性噪声:一般由信道不理想引起,它们与信号的关系是相乘,信号在它在,信号不在他也就不在。
(4)泊松噪声:就是符合泊松分布的噪声模型,泊松分布适合于描述单位时间内随机事件发生的次数的概率分布。
(5)MATLAB图像处理工具箱中有关图像噪声的函数有::imnoise函数(向图像增加噪声),基本语法为:J= imnoise(f, type,parameters)(其中J是添加噪声之后的图像,f是原图像,type是加入的噪声类型,parameters是噪声中的一些参数,根据类型再确定他参数)。例如‘gaussian’:增加高斯白噪声;‘salt & pepper’; :增加椒盐噪声;‘speckle’ :增加乘法噪声;‘poisson’:增加泊松噪声等。
一般在需要复原的图像中不但包含模糊成分,还有一些额外的噪声成分。在 matlab中可以使用两种方法模拟图像噪声:一种是使用 imnoise 函数直接对图像添加固定类型的噪声;另一种是创建自定义的噪声,然后使用matlab图像代数运算函数imadd将其添加到图像中。
J=imnoise(I,'gaussian');添加高斯噪声
J=imnoise(I,'salt & pepper');添加椒盐噪声
J=imnoise(I,'speckle');添加乘法噪声
J=imnoise(I,'poisson');添加泊松噪声
(1)添加高斯噪声的结果:
(2)添加椒盐噪声的结果:
(3)添加乘法噪声的结果:
(4)添加泊松噪声的结果:
(因为上传图片压缩原因,所以看起来不明显处理后图像)
对原图像进行图像变换,包括傅里叶变换和离散余弦变换,并分析实验效果。
傅里叶变换的基本原理:首先把遥感图像从空间域转换到频率域,然后在频率域上对图像进行滤波处理 ,减少或消除周期性噪音,再把图像从频率域转换到空间域,达到增强图像的目的。
变换编码的基本原理:将在空间域中描述的视频信号、图像信号或残差信号变换到另一个正交向量空间(变换域)中。如果该正交向量空间的基向量与图像本身的特征向量很接近,那么经过正交变换后,系数间的相关性基本消除,能量主要集中在直流和少数低频的变换系数上。因此,对频率域变换系数编码的效率远远高于直接对空间域像素编码,从而达到图像压缩的目的。
完整代码文件在下面这个链接里,需要的下载的同学自行下载,完整代码打开MATLAB可直接运行。https://download.csdn.net/download/Jacky_LAD/85969601?spm=1001.2014.3001.5503