在matlab上,怎么给这个图片加高斯噪声呢,加入的是均值为0、方差0.008的高斯噪声。 实在不会呀。。

在matlab上,怎么给这个图片加高斯噪声呢,加入的是均值为0、方差0.008的高斯噪声。 实在不会呀。。,第1张

clc

clear all

close all

A = imread('cameraman.tif') % 读入图像

imshow(A)title('原图')

V=0.008

Noisy=imnoise(A,‘gaussian’,0,V)

figure1

imshow(Noisy)%添加均值为0、方差0.008的高斯噪声

y_mask = [-1 -1 -10 0 01 1 1] % 建立Y方向的模板

x_mask = y_mask' % 建立X方向的模板

I = im2double(A) % 将图像数据转化为双精度

dx = imfilter(I, x_mask) % 计算X方向的梯度分量

dy = imfilter(I, y_mask) % 计算Y方向的梯度分量

grad = sqrt(dx.*dx + dy.*dy) % 计算梯度

grad = mat2gray(grad) % 将梯度矩阵转换为灰度图像

level = graythresh(grad) % 计算灰度阈值

BW = im2bw(grad,level) % 用阈值分割梯度图像

figure, imshow(BW) % 显示分割后的图像即边缘图像

title('Prewitt')

就是这样了。

实际应用中因为图像采集设备、自然环境因素等诸多原因,导致所处理的图像和“本真”图像有差异,这一部分差异就是噪声。

用MATLAB等仿真手段对算法进行仿真时,所用的基础图像是“本真”图像,为了验证其算法的有效性,需要在“本真”图像上加上噪声,才能达到类似于“实际”图像的效果,也只有考虑了噪声,算法仿真结果才具有说服力。

纯手打,纯个人语言组织。理解意思即可。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存