OpenCV 高斯、中值、均值、双边滤波
来源:互联网 发布:淘宝卖家后台功能介绍 编辑:程序博客网 时间:2024/05/05 02:43
高斯滤波:
高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的具体操作是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。 高斯滤波后图像被平滑的程度取决于标准差。它的输出是领域像素的加权平均,同时离中心越近的像素权重越高。因此,相对于均值滤波(mean filter)它的平滑效果更柔和,而且边缘保留的也更好。
中值滤波:
中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值.
中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术,中值滤波的基本原理是把数字图像或数字序列中一点的值用该点的一个邻域中各点值的中值代替,让周围的像素值接近的真实值,从而消除孤立的噪声点。方法是用某种结构的二维滑动模板,将板内像素按照像素值的大小进行排序,生成单调上升(或下降)的为二维数据序列。二维中值滤波输出为g(x,y)=med{f(x-k,y-l),(k,l∈W)} ,其中,f(x,y),g(x,y)分别为原始图像和处理后图像。W为二维模板,通常为3*3,5*5区域,也可以是不同的的形状,如线状,圆形,十字形,圆环形等。
均值滤波:
均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。
双边滤波:
双边滤波(Bilateral filter)是一种非线性的滤波方法,是结合图像的空间邻近度和像素值相似度的一种折衷处理,同时考虑空域信息和灰度相似性,达到保边去噪的目的。具有简单、非迭代、局部的特点。
双边滤波器的好处是可以做边缘保存(edge preserving),一般过去用的维纳滤波或者高斯滤波去降噪,都会较明显地模糊边缘,对于高频细节的保护效果并不明显。双边滤波器顾名思义比高斯滤波多了一个高斯方差sigma-d,它是基于空间分布的高斯滤波函数,所以在边缘附近,离的较远的像素不会太多影响到边缘上的像素值,这样就保证了边缘附近像素值的保存。但是由于保存了过多的高频信息,对于彩色图像里的高频噪声,双边滤波器不能够干净的滤掉,只能够对于低频信息进行较好的滤波
#include "cv.h"#include "highgui.h"#include <iostream>using namespace std;using namespace cv;int main(int argc, char* argv[]){ Mat src = imread("misaka.jpg"); Mat dst; //参数是按顺序写的 //高斯滤波 //src:输入图像 //dst:输出图像 //Size(5,5)模板大小,为奇数 //x方向方差 //Y方向方差 GaussianBlur(src,dst,Size(5,5),0,0); imwrite("gauss.jpg",dst); //中值滤波 //src:输入图像 //dst::输出图像 //模板宽度,为奇数 medianBlur(src,dst,3); imwrite("med.jpg",dst); //均值滤波 //src:输入图像 //dst:输出图像 //模板大小 //Point(-1,-1):被平滑点位置,为负值取核中心 blur(src,dst,Size(3,3),Point(-1,-1)); imwrite("mean.jpg",dst); //双边滤波 //src:输入图像 //dst:输入图像 //滤波模板半径 //颜色空间标准差 //坐标空间标准差 bilateralFilter(src,dst,5,10.0,2.0);//这里滤波没什么效果,不明白 imwrite("bil.jpg",dst); waitKey(); return 0;}
- OpenCV 高斯、中值、均值、双边滤波
- [学习opencv]高斯、中值、均值、双边滤波
- OpenCV--图像滤波-方框-均值-高斯-中值-双边
- opencv----滤波函数:方框滤波、均值滤波、高斯滤波、中值滤波、双边滤波
- python3 利用opencv 添加中值滤波,均值滤波,高斯滤波,高斯双边滤波
- 高斯、中值、均值、双边滤波
- 高斯、中值、均值、双边滤波
- 高斯、中值、均值、双边滤波
- 【OpenCV】5种图像滤波辨析:方框、均值、高斯、中值、双边
- OpenCV 5种图像滤波辨析:方框、均值、高斯、中值、双边
- 【opencv学习笔记1】5种图像滤波辨析:方框、均值、高斯、中值、双边
- 【OpenCV】5种图像滤波辨析:方框、均值、高斯、中值、双边
- 【OpenCV】5种图像滤波辨析:方框、均值、高斯、中值、双边
- opencv学习(二十三)之方框、均值、高斯、中值、双边滤波综合比较
- 高斯、中值、均值、双边滤波的效果
- 图像滤波综合(方框、均值、高斯、中值、双边)
- 【拜小白opencv】34-图像平滑处理,6种滤波总结的综合示例【盒式滤波、均值滤波、高斯滤波、中值滤波、双边滤波、导向滤波】
- 【OpenCV】邻域滤波:方框、高斯、中值、双边滤波
- 【Java并发编程实战】—–“J.U.C”:锁,lock
- 【基础练习】【区间DP】codevs3657 括号序列题解
- ZooKeeper典型应用场景
- WebView注入Java对象注意事项 [INFO:CONSOLE(475)] "Uncaught TypeError: Object [object Object] has no method
- HDOJ-2008-数值统计
- OpenCV 高斯、中值、均值、双边滤波
- hdoj 1072 Nightmare 【bfs】
- 正则表达式,split
- 在线QQ代码设置
- 数据结构上机实验之二分查找
- (4.2.18)ViewPagerIndicator框架使用——CirclePageIndicator
- NYOJ--91--阶乘之和
- BMW BENZ AUDI 宝马,奔驰,奥迪维修标准工时,从KSD,WIS, ELSA 中提取。
- 逻辑Bug:在使用递归时的返回问题