matlab GUI-图像输入与输出的简单例子

matlab GUI-图像输入与输出的简单例子,第1张

通过一个简单例子介绍图像输入与输出的 *** 作,给自学者参考借鉴。

1.创建一个新的空白的GUI。这个例子会用到静态文本、按钮、坐标轴和面板。先在界面中拖入一个静态文本,将其属性中的“string”一栏改为“输入输出图片示例”,字体大小调为20,如下图。

2.在界面中拖入两个面板,然后将两个面板的“string”一栏分别改为“输入图片”和“输出图片”。图像在GUI中都是显示在坐标轴控件上的,如果坐标轴控件没有放在面板控件中的话,显示出来的图像根据图像大小而变,而用面板把坐标轴框住,就可以固定住图像的大小,避免变来变去的。所以一般面板和坐标轴是搭配使用的。

3.再分别拖两个坐标轴到面板上,如图所示,调整好大小即可。双击打开坐标轴的属性,将它们的属性中“XTick”和“YTick”的值都改成0,因为坐标轴在显示的时候默认是有横纵坐标的,但是在这个例子中坐标轴用来显示图片,所以不需要横纵坐标。

4.再拖入四个按钮,将他们的“string”一栏分别改为“导入图片”、“添加高斯噪声”、“添加椒盐噪声”、“添加泊松噪声”,字体调为20。

5.进入按钮“导入图片”的回调函数,在回调函数中敲入如图的程序段。每一句程序的作用都标在图中了,这里不再重复啦。

6.进入按钮“添加高斯噪声”的回调函数,在回调函数中敲入如图的程序段。

7.进入按钮“添加椒盐噪声”的回调函数,在回调函数中敲入如图的程序段。

8.进入按钮“添加泊松噪声”的回调函数,在回调函数中敲入如图的程序段。

9.最后的结果就如下图所示了。

首先图像最少是二维的,图像有是有长宽两个属性组成的矩阵。一维信号是向量.

MATLAB 给图像添加噪声的命令为

imnoise

该函数的基本语法为:

g=imnoise(f,type,parameters)

f为是输入图像。函数imnoise在给图像添加噪声之前,将它转换为范围[0,1]内的double类图像。指定噪声参数时必须考虑到这一点。

g=imnoise(f,'gaussian',m,var)将均值M,方差为var的高斯噪声加到图像f上,默认值为均值是0,方差是0.01的噪声。

g=imnoise(f,'localvar',V)将均值为0,局部方差为V的高斯噪声添加到图像f上,其中V是与f大小相同的一个数组,它包含了每一个点的理想方差值。

g=imnoise(f,'localvar',image_intensity,var)将

均值为0的高斯噪声添加到图像f中,其中噪声的局部方差var是图像f的亮度值的函数。参量image_intensity和var是大小相同的向

量,plot(image_intensity,var)绘制出噪声方差和图像亮度的函数关系。向量image_intensity必须包含范围在

[0,1]内的归一化亮度值。

g=imnoise(f,'salt&pepper',d)用椒盐噪声污染图像f,其中d是噪声密度(即包括噪声值的图像区域的百分比)。因此,大约有d*numel(f)个像素受到影响。默认的噪声密度为0.05。

g=imnoise(f,'speckle',var)用方程g=f+n*f)将乘性噪声添加到图像f上,其中n是均值为0,方差为var的均匀分布的随机噪声,var的默认值是0.04。

g=imnoise(f,'poisson')从数据中生成泊松噪声,而不是将人工的噪声添加

到数据中,为了遵守泊松统计,unit8和unit16类图像的亮度必须和光子的数量相符合。当每个像素的光子数量大于65535时,就要使用双精度图像。亮度值在0到1之间变化,并且对应于光子的数量除以10e12。

Matlab中为图片加噪声的语句是:

(1)J = imnoise(I,type)

(2)J = imnoise(I,type,parameters)

其中I为原图象的灰度矩阵,J为加噪声后图象的灰度矩阵

一般情况下用(1)中表示即可,(2)中表示是允许修改参数,而(1)中使用缺省参数

至于type可有五种,分别为'gaussian'(高斯白噪声),'localvar'(与图象灰度值有关的零均值高斯白噪声),'poisson'(泊松噪声),'salt &pepper'(椒盐噪声)和'speckle'(斑点噪声)具体(2)中参数值的设定可根据个人需要其余情况以及若还有不懂请参考Matlab帮助文件。

在此使用'salt &pepper'(椒盐噪声),并将其参数设置为0.6。其例子如下:

L = imread(‘image_ori.jpg’)

J = imnoise(L, ‘salt &pepper’, 0.6)

imshow(J)//立即d出窗口,显示加了噪声后的图片

imwrite(J, ‘image_noise.jpg’, ‘jpg’, ‘Quality’, 100)//按100%的质量存储加了噪声的图片,Quality的默认值为75.

以上程序就表示把原图像加入椒盐噪声,但注意要把图像和以上程序的M文件放在同一个子目录下。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11928504.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存