Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除

这篇具有很好参考价值的文章主要介绍了Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除

添加椒盐噪声

椒盐噪声(pepper&salt noise)由胡椒噪声(pepper noise)和盐噪声(salt noise)组成。一般因图像传感器,传输信道等处产生,由黑白相间的亮暗点噪声组成。
Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除
黑点可以看出胡椒,白点可以看成盐。
下面为使用matlab自带的函数对图像添加椒盐噪声的代码和添加后的结果。

I = imread('elaine.512.tiff');%读取图片
I_PepperSalt=imnoise(I,'salt & pepper');% 添加椒盐噪声

Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除

均值滤波

均值滤波的原理是,滤波后的像素的值为其本身及周围9个像素值的平均值。如下图所示。
Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除
matlab自带实现均值滤波的函数,在这里,我们先自己实现一下。

clc;
clear;
I = imread('elaine.512.tiff'); %读取图片
I_PepperSalt=imnoise(I,'salt & pepper'); % 添加椒盐噪声
Mat = ones(3,3)/9; % 3×3均值滤波矩阵 
[m,n] = size(I_PepperSalt); % 读取图像长和宽 
I1 = double(I_PepperSalt); %将图像转换成double类型
I2 = I1; 
for i=2:m-1  
    for j=2:n-1 %从去除边缘的像素开始滤波
        Mat2 = I1(i-1:i+1,j-1:j+1).*Mat;
        s = sum(Mat2(:));
        I2(i,j) = s;
    end
end
I3 = uint8(I2);
%%图像对比
figure;
subplot(131)
imshow(I);title('原始图像');
subplot(132)
imshow(I_PepperSalt);title('椒盐噪声图像');
subplot(133)
imshow(I3);title('均值滤波图像');

Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除

中值滤波

中值滤波则是将选取的3x3的像素块里的像素值按从小到大重新排列,选取中间的像素作为滤波后图像的像素。
Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除

同样的,matlab自带实现中值滤波的函数,在这里,我们首先也先自己实现一下。

clc;
clear;
I = imread('elaine.512.tiff'); %读取图片
I_PepperSalt=imnoise(I,'salt & pepper'); % 添加椒盐噪声
[m,n] = size(I_PepperSalt); % 读取图像长和宽 
I1 = double(I_PepperSalt); %将图像转换成double类型
I2 = I1; 
for i=2:m-1  
    for j=2:n-1 %从去除边缘的像素开始滤波
        Mat = I1(i-1:i+1,j-1:j+1);
        Mat2 = Mat(:);
        s=sort(Mat2); %对像素进行排序
        I2(i,j) = s(floor(9/2)+1); %选取中值
    end
end
I3 = uint8(I2);
%%图像对比
figure;
subplot(131)
imshow(I);title('原始图像');
subplot(132)
imshow(I_PepperSalt);title('椒盐噪声图像');
subplot(133)
imshow(I3);title('中值滤波图像');

Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除

完整代码

在这里,我们直接使用matlab里自带的函数进行实现。

I = imread('elaine.512.tiff');
I2 = imnoise(I,'salt & pepper'); % 加入椒盐噪声
H = fspecial('average',3);  
I3 = uint8(filter2(H, I2));
I4 = medfilt2(I2,[3,3]);
%%
figure;
subplot(221)
imshow(I);title('原始图像');
subplot(222)
imshow(I2);title('椒盐噪声图像');
subplot(223)
imshow(I3);title('均值滤波图像');
subplot(224)
imshow(I4);title('中值滤波图像');

实验结果如下。
Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除文章来源地址https://www.toymoban.com/news/detail-509243.html

到了这里,关于Matlab实现图像添加椒盐噪声及中值滤波/均值滤波去除的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于MATLAB对彩色图像去噪的代码,均值滤波,中值滤波,空域低通滤波。

    本文主要为代码展示,未对所用算法进行较为详细的文字介绍,请读者见谅。如有建议,欢迎私信。   MATLAB调用格式为: J=imnoise(I,type)或者J=imnoise(I,type,parameters)。将类型噪声添加到灰度图像。 其中,I为原始图像,J为有噪图像,参数type和parameters用于确定噪声类型和相应的参

    2024年02月06日
    浏览(37)
  • 图像处理:随机添加椒盐噪声和高斯噪声Python

    目录 图像处理:随机添加椒盐噪声和高斯噪声Python 1.常见的图像噪声 (1)高斯噪声 (2) 椒盐噪声 2.生成图像噪声 (1)高斯噪声 (2) 椒盐噪声(速度慢) (3) 椒盐噪声(快速版) 3. Demo测试         图像噪声是指存在于图像数据中的不必要的或多余的干扰信息。在噪

    2024年02月02日
    浏览(30)
  • 【halcon】--图像平滑--均值滤波、中值滤波

    图像平滑的主要目的是减小图像噪声 经常使用的有高斯滤波,均值滤波,中值滤波; 均值滤波:就是将一个窗口区域中的像素计算平均值,然后将窗口中计算得到的均值设置为锚点上的像素值。对高斯噪声有较好的处理效果,但是模糊效果比较明显,会丢失一些细节。 中值

    2024年02月05日
    浏览(28)
  • matlab 点云滤波(中值、均值、高斯滤波)代码

    介绍一下滤波函数  Method-平滑处理方法 \\\"movmean\\\"(默认)|\\\'movmedian\\\'|\\\'gaussian\\\'|\\\'lowess\\\'|\\\'loess\\\'|\\\'rlowess\\\'|\\\'rloess\\\'|\\\'sgolay\\\' \\\'movmean\\\'   -A的每个窗口内的移动平均值,此方法对于减少数据中的周期性趋势很有用。 \\\'movmedian\\\'  -A的每个窗口的移动中位数。当存在离群值时,此方法对于减少数据中的

    2024年02月01日
    浏览(35)
  • ZYNQ图像处理(6)——均值滤波和中值滤波

    首先要做的是最简单的均值滤波算法。均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围 8 个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像

    2024年02月08日
    浏览(34)
  • python使用opencv对图像添加(高斯/椒盐/泊松/斑点)噪声

    导读 这篇文章主要介绍如何利用opencv来对图像添加各类噪声,原图 高斯噪声 高斯噪声就是给图片添加一个服从 高斯分布的噪声 ,可以通过调节高斯分布 标准差(sigma) 的大小来控制添加噪声程度, sigma 越大添加的噪声越多图片损坏的越厉害 椒盐噪声 椒盐噪声就是给图片添

    2024年02月15日
    浏览(43)
  • python --opencv图像处理滤波详解(均值滤波、2D 图像卷积、方框滤波、 高斯滤波、中值滤波、双边滤波)

    第一件事情还是先做名词解释,图像平滑到底是个啥? 从字面意思理解貌似图像平滑好像是在说图像滑动。 emmmmmmmmmmmmmmm。。。。 其实半毛钱关系也没有,图像平滑技术通常也被成为图像滤波技术(这个名字看到可能大家会有点感觉)。 每一幅图像都包含某种程度的噪声,

    2024年02月04日
    浏览(37)
  • 图像处理:推导五种滤波算法(均值、中值、高斯、双边、引导)

    目录 概论 算法原理 1、均值滤波 2、中值滤波 3、高斯滤波 4、双边滤波 5、引导滤波  手写代码 Opencv代码实现  最后的总结 参考文章         本来打算是分开推导的,但我觉得还是整个合集吧,避免有水文的嫌疑,那么因为学习的需要,会涉及到图像的滤波处理,我汇总

    2024年02月07日
    浏览(36)
  • 31一维信号滤波(限幅滤波、中值滤波、均值滤波、递推平均滤波),MATLAB程序已调通,可直接运行。

    一维信号滤波(限幅滤波、中值滤波、均值滤波、递推平均滤波),MATLAB程序已调通,可直接运行。 31matlab、中值滤波、信号处理 (xiaohongshu.com)

    2024年02月08日
    浏览(27)
  • 【OpenCV-Python】:基于均值、中值、方框、双边和高斯滤波的图像去噪

    ✨博客主页:王乐予🎈 ✨年轻人要:Living for the moment(活在当下)!💪 🏆推荐专栏:【图像处理】【千锤百炼Python】【深度学习】【排序算法】 本节将对经过噪声污染的图像进行去噪,去噪方法包含 均值滤波、中值滤波、方框滤波、双边滤波和高斯滤波 。 实验所用的图

    2024年02月05日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包