代码
#include <iostream>
#include <opencv2/opencv.hpp>
#include <time.h>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/videoio.hpp>
#include <opencv2/video.hpp>
using namespace cv;
using namespace std;
//main
int main(int argc, char** argv)
{
//载入原图
Mat image = imread("700levi.jpg");
//创建窗口
namedWindow("原图");
namedWindow("方框滤波[效果图]");
namedWindow("均值滤波[效果图]");
namedWindow("高斯滤波[效果图]");
//显示原图
imshow("原图", image);
//进行均值滤波操作
Mat out1;
boxFilter(image, out1, -1, Size(5, 5), Point(-1, -1), true);
Mat out2;
blur(image, out2, Size(7, 7));
Mat out3;
GaussianBlur(image, out3, Size(3, 3), 0, 0);
//显示效果图
imshow("方框滤波[效果图]", out1);
imshow("均值滤波[效果图]", out2);
imshow("高斯滤波[效果图]", out3);
imwrite("qq.jpg", out3);
waitKey();
}
函数解析
方框滤波-boxFilter函数
均值滤波-blur函数
高斯滤波-GaussianBlur函数
效果
ps:先学会用这几个函数,后面需要了解下底层的原理