opencv3 图片模糊操作-均值滤波 高斯滤波 中值滤波 双边滤波
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
//均值滤波模糊处理
int demo_blur()
{
char win1[] = "window1";
char win2[] = "window2";
Mat img1, img2;
img1 = imread("D://images//4.jpg");
if (img1.empty())
{
cout <<"could not found img..." << endl;
return 0;
}
imshow(win1,img1);
blur(img1,img2,Size(9,9),Point(-1,-1));
imshow(win2, img2);
return 0;
}
//高斯滤波
int demo_gaussian_blur()
{
char win1[] = "window1";
char win2[] = "window2";
Mat img1, img2;
img1 = imread("D://images//timg1.jpg");
if (img1.empty())
{
cout << "could not found img..." << endl;
return 0;
}
imshow(win1, img1);
//blur(img1, img2, Size(9, 9), Point(-1, -1));
GaussianBlur(img1, img2, Size(9, 9), 11, 11, 4);
imshow(win2, img2);
return 0;
}
//中值滤波
int demo_median_blur()
{
char win1[] = "window1";
char win2[] = "window2";
Mat img1, img2;
img1 = imread("D://images//2018092701.jpg");
if (img1.empty())
{
cout << "could not found img..." << endl;
return 0;
}
imshow(win1, img1);
//blur(img1, img2, Size(9, 9), Point(-1, -1));
//GaussianBlur(img1, img2, Size(9, 9), 11, 11, 4);
medianBlur(img1, img2, 5);
imshow(win2, img2);
return 0;
}
//双边滤波
int demo_bilateral_filter()
{
char win1[] = "window1";
char win2[] = "window2";
Mat img1, img2;
img1 = imread("D://images//timg1.jpg");
if (img1.empty())
{
cout << "could not found img..." << endl;
return 0;
}
imshow(win1, img1);
//blur(img1, img2, Size(9, 9), Point(-1, -1));
//GaussianBlur(img1, img2, Size(9, 9), 11, 11, 4);
//medianBlur(img1, img2, 5);
bilateralFilter(img1, img2, 15, 100, 3, 4);
imshow(win2, img2);
return 0;
}
int main()
{
//demo_blur();
//demo_gaussian_blur();
//demo_median_blur();
demo_bilateral_filter();
waitKey(0);
return 0;
}

opencv3 图片模糊操作-均值滤波 高斯滤波 中值滤波 双边滤波的更多相关文章
- 【OpenCV】邻域滤波:方框、高斯、中值、双边滤波
原文:http://blog.csdn.net/xiaowei_cqu/article/details/7785365 邻域滤波(卷积) 邻域算子值利用给定像素周围像素的值决定此像素的最终输出.如 ...
- [学习opencv]高斯、中值、均值、双边滤波
http://www.cnblogs.com/tiandsp/archive/2013/04/20/3031862.html [学习opencv]高斯.中值.均值.双边滤波 四种经典滤波算法,在ope ...
- opencv-11-中值滤波及自适应中值滤波
开始之前 在上一篇我们实现了读取噪声图像, 然后 进行三种形式的均值滤波得到结果, 由于我们自己写的均值滤波未作边缘处理, 所以效果有一定的下降, 但是总体来说, 我们得到的结果能够说明我们的算法执行 ...
- OpenCv高斯,中值,均值,双边滤波
#include "cv.h" #include "highgui.h" #include <iostream> using namespace s ...
- OpenCV计算机视觉学习(4)——图像平滑处理(均值滤波,高斯滤波,中值滤波,双边滤波)
如果需要处理的原图及代码,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice &q ...
- Python+OpenCV图像处理(七)—— 滤波与模糊操作
过滤是信号和图像处理中基本的任务.其目的是根据应用环境的不同,选择性的提取图像中某些认为是重要的信息.过滤可以移除图像中的噪音.提取感兴趣的可视特征.允许图像重采样等等.频域分析将图像分成从低频到高频 ...
- Atitit 图像处理 平滑 也称 模糊, 归一化块滤波、高斯滤波、中值滤波、双边滤波)
Atitit 图像处理 平滑 也称 模糊, 归一化块滤波.高斯滤波.中值滤波.双边滤波) 是一项简单且使用频率很高的图像处理方法 用途 去噪 去雾 各种线性滤波器对图像进行平滑处理,相关OpenC ...
- 学习 opencv---(8)非线性滤波:中值滤波,双边滤波
正如我们上一篇文章中讲到的,线性滤波可以实现很多种不同的图像变换.然而非线性滤波,如中值滤波器和双边滤波器,有时可以达到更好的实现效果. 邻域算子的其他一些例子还有对 二值图像进行操作的形态学算子,用 ...
- python实现模糊操作
目录: (一)模糊或平滑与滤波的介绍 (二)均值模糊 (1) 原理 (2)代码实现-----均值模糊函数blur() (三)中值模糊------mediaBlur函数 (四)高斯模糊------Gau ...
随机推荐
- HDU - 5728:PowMod (欧拉函数&指数循环节)
Declare: k=∑ m i=1 φ(i∗n) mod 1000000007 k=∑i=1mφ(i∗n) mod 1000000007 n n is a square-free number. φ ...
- bzoj 2131 免费的馅饼
Written with StackEdit. Description Input 第一行是用空格隔开的二个正整数,分别给出了舞台的宽度\(W\)(\(1\)到\(10^8\)之间)和馅饼的个数\(n ...
- [Luogu1527][国家集训队]矩阵乘法
luogu 题意 给你一个\(N*N\)的矩阵,每次询问一个子矩形的第K小数.(居然连修改都不带的) \(N\le500,Q\le60000\) sol 整体二分+二维树状数组裸题. 复杂度是\(O( ...
- gulp 合格插件评判标准
官方插件列表: https://gulpjs.com/plugins/ 合格插件的判断标准 1. 不修改内容 如果一个插件一个文件都修改(无论是文案内容,文件路径),那么它就不是一个gulp ...
- 【ASP.NET Web API2】Digest认证
Digest摘要认证 对于Basic认证方案来说,被传输的认证凭证仅仅采用Base64编码,所以包含密码的认证凭证基本上可以视为明文传输.Digest认证在此基础上进行了改善,在一定程度上提高了安全系 ...
- Oracle备份与恢复案例
注:以下内容来自<Oracle备份与恢复案例.doc>文档. Oracle备份与恢复案例 By Piner 一. 理解什么是数据库恢复 当我们使用一个数据库时,总希望数据库的内容是可靠的. ...
- bzoj 4881 [Lydsy1705月赛]线段游戏
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4881 1.当一块相互交织的线段中有3个或以上两两相交的那种线段时,无解. 这就是最长下降子序 ...
- 10 Things ASP.NET Developers Should Know About Web.config Inheritance and Overrides(转)
10 Things ASP.NET Developers Should Know About Web.config Inheritance and Overrides Wednesday, Janua ...
- 机器人操作系统(ROS)教程22:ROS的3D可视化工具—rviz
rviz是ROS中的一个3D可视化工具,有了它就可以把你用代码建的机器人模型转化为可视的3D模型. 首先需要安装: rosdep install rviz 然后编译rviz: rosmake rviz ...
- 学习FPGA有必要写SDRAM控制器吗?
在学习FPGA的过程中,注意是在学习过程中,联系FPGA的使用技巧,强烈建议尝试设计一个SDRAM控制器,不要使用IP核. 学习SDRAM控制器设计,能让你掌握很多知识. 更好的使用状态机去精准控制时 ...