中值滤波

概念
  中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。方法是用某种结构的二维滑动模板,将板内像素按照像素值的大小进行排序,生成单调上升(或下降)的为二维数据序列。二维中值滤波输出为g(x,y)=med{f(x-k,y-l),(k,l∈W)} ,其中,f(x,y),g(x,y)分别为原始图像和处理后图像。W为二维模板,通常为33,55区域,也可以是不同的的形状,如线状,圆形,十字形,圆环形等。

原理解释
其实中值滤波比较好理解,首先需要我们找到中值,再用其去替代一个位置的像素。比如在一副图像中,我们取3*3的模板,在这个模板中,一个有9个元素,我们找出其中的中值,用它去代替最中间的那个位置的像素,这就是中值滤波。
图示:

MATLAB实现

方法一:medfilt2()函数实现

 t=imread('a1.jpg');
t=rgb2gray(t);
t1=imnoise(t,'salt & pepper',0.3);
subplot(1,2,1),imshow(t1),title('加入椒盐噪声后')
t2=medfilt2(t1,[3 3]);
subplot(1,2,2),imshow(t2),title('中值滤波后')

效果图:

注意:medfilt2()函数中的第一个参数必须是二维的,这就是为什么先要把图像灰度化的原因,那么有什么方法对彩色图像中值滤波呢?肯定可以的啊,分别对三个通道中值滤波就行了。

t=imread('a1.jpg');
t1=imnoise(t,'salt & pepper',0.3);
subplot(1,2,1),imshow(t1),title('加入椒盐噪声后')
t2=t
t2(:,:,1)=medfilt2(t1(:,:,1),[3 3]);
t2(:,:,2)=medfilt2(t1(:,:,2),[3 3]);
t2(:,:,3)=medfilt2(t1(:,:,3),[3 3]);
subplot(1,2,2),imshow(t2),title('中值滤波后')

效果图:

方法二:自己编写中值滤波函数
中值滤波函数:

function [ img ] = median_filter( image, m )
%----------------------------------------------
%中值滤波
%输入:
%image:原图
%m:模板的大小3*3的模板,m=3%输出:
%img:中值滤波处理后的图像
%----------------------------------------------n = m;[ height, width ] = size(image);x1 = double(image);x2 = x1;for i = 1: height-n+1for j = 1:width-n+1mb = x1( i:(i+n-1),  j:(j+n-1) );%获取图像中n*n的矩阵mb = mb(:);%将mb变成向量化,变成一个列向量mm = median(mb);%取中间值x2( i+(n-1)/2,  j+(n-1)/2 ) = mm;endendimg = uint8(x2);
end

主函数:

t=imread('a1.jpg');
t1=imnoise(t,'salt & pepper',0.3);
imshow(t1),title('加入椒盐噪声');
t2=median_filter(t,3);%调用函数
figure,imshow(t),title('中值滤波后')

效果图:

更多

获取更多资料、代码,微信公众号:海轰Pro
回复 海轰 即可

MATLAB--数字图像处理 中值滤波相关推荐

  1. 数字图像处理 中值滤波 MATLAB实验

    一.原理_中值滤波 中值滤波的基本思想是将图像中每个像素的灰度值用其邻域内像素灰度的中值代替,它是一种非线性平滑滤波算法. 设加噪图像为 f(x,y) ,经中值滤波处理后的图像为g(x,y) ,则: ...

  2. 数字图像处理——中值滤波中心加权中值滤波

    引言:在处理图像时,线性滤波将破坏边缘,而且不能有效滤除脉冲噪声.非线性滤波基于对输入信号序列的一种非线性映射关系,常可把某一特定的噪声近似映射为零而保留信号的重要特征,因而可以在一定程度上克服线性滤 ...

  3. 数字图像处理——中值滤波及其改进算法

    一.算法介绍 中值滤波器是非线性滤波器的一个例子,它在保留图像特征方面非常有效. 但是,滤波器的窗口大小直接影响中值滤波器的性能. 较小的窗口保留了特征,但会导致噪声抑制的减少. 在较大窗口的情况下, ...

  4. 数字图像处理——中值滤波降噪

    使用滤波模板中像素点的中值点作为目标像素,这就称为中值滤波降噪(顾名思义) Python实现过程如下: 图像数据为: 图像中存在典型的椒盐噪声,而中值降噪,对椒盐噪声的作用是非常有效的. 导入要使用的 ...

  5. matlab怎样实现滤波,如何用MATLAB来实现中值滤波

    在实时图像采集中,不可避免的会引入噪声,尤其是干扰噪声和椒盐噪声,噪声的存在严重影响边缘检测的效果,中值滤波是一种基于排序统计理论的非线性平滑计数,能有效平滑噪声,且能有效保护图像的边缘信息,所以被广 ...

  6. matlab图像处理-中值滤波原理

    中值滤波原理   中值滤波本质上是一种统计排序滤波器.对于原图像中某点(i,j),中值滤波以该点为中心的邻域内的所有像素的统计排序中值作为(i,j)点的响应.   中值不同于均值,是指排序队列中位于中 ...

  7. matlab 中medfilt2报错,Matlab图像处理——中值滤波medfilt2问题解决

    程序: I=imread('13.jpg');%读入图像 imshow(I); h=imnoise(I,'salt & pepper');%为I图片叠加椒盐噪声噪声 figure;imshow ...

  8. 【图像去噪】基于matlab GUI均值+中值滤波图像去噪(含PNSR)【含Matlab源码 372期】

    ⛄一.图像去噪及滤波简介 1 图像去噪 1.1 图像噪声定义 噪声是干扰图像视觉效果的重要因素,图像去噪是指减少图像中噪声的过程.噪声分类有三种:加性噪声,乘性噪声和量化噪声.我们用f(x,y)表示图 ...

  9. matlab设计自适应中值滤波,matlab课程设计(自适应中值滤波).doc

    matlab课程设计(自适应中值滤波).doc 10信息工程系课程设计报告课程MATLAB课程设计专业通信工程班级2级本科二班学生姓名1景学号114学生姓名2学号1414学生姓名3王学号6学生姓名4学 ...

最新文章

  1. 路由协议的优先级,以及管理距离AD和metric的区别
  2. IDC发布对话式人工智能白皮书|附下载
  3. PyTorch-训练
  4. 带有Spring Boot 2.0的Spring Security:UserDetailsS​​ervice
  5. Item 13 Minimize the accessibility of classes and members
  6. vc picture控件的分类总结(转载)
  7. C# .Net中的类型转换(3)
  8. R for data science之purrr包(下)
  9. 完整java开发中JDBC连接数据库代码和步骤[申明:来源于网络]
  10. pdf加水印方法,快速给pdf加水印
  11. 手机号码格式和邮箱格式校正
  12. word批量替换向下箭头为回车符号、批量删除空行、批量空格与空行
  13. 苹果战世界:苹果史上27大口水战
  14. 中文版ASAM OpenSCENARIO与OpenDRIVE标准正式发布
  15. xupt嵌入式学习(day1)
  16. LittleVGL(LVGL)学习笔记——PC 模拟器的安装和使用(CodeBlocks)
  17. 半监督学习模型: 半监督的SVM
  18. 50首最好听的英文歌
  19. 前端面试题-小米二面
  20. 如何评估机器学习模型的商业价值

热门文章

  1. WebStorm 安装步骤
  2. 一文了解Voice与它想做的事
  3. 阿里巴巴开源项目集锦
  4. 阿里巴巴推出企业诚信查询平台
  5. java8 循环map_Java8遍历Map的三种方式——for/stream/forEach
  6. USG600全局选路策略使用限制和注意事项
  7. 2021全军士兵高考成绩查询,道南教育:2021新高考|6月25日左右公布高考成绩,本科不再分一二三批...
  8. 存储控制器wwn号_浪潮存储系统AS5600用户手册V1.1.pdf
  9. cmcc_pwnme1
  10. 小米率先发布鸿蒙,小米率先使用鸿蒙?小米高管辟谣:竟然有15万人相信