中值滤波和双边滤波
相关API
代码演示
#include<opencv2/opencv.hpp>
#include<iostream>
using namespace std;
using namespace cv;
int main() {
Mat src = imread("D:\\heroRcData\\opencvProject\\arrowImg\\02\\01.jpg");
if (!src.data) {
cout << "could not load image..." << endl;
return -1;
}
namedWindow("input image", CV_WINDOW_AUTOSIZE);
imshow("input image", src);
//***************************************************
//中值滤波
Mat dst_median;
medianBlur(src, dst_median, 5);
string median_window = "medianBlur image";
//imshow(median_window, dst_median);
//***************************************************
//双边滤波
Mat dst_bilateral;
bilateralFilter(src, dst_bilateral, 5, 150, 5);
string bilateral_window = "bilateral image";
imshow(bilateral_window, dst_bilateral);
//**************************************************
//高斯滤波(用于对比 凸显双边滤波效果)
Mat dst_Gauss;
GaussianBlur(src, dst_Gauss, Size(5, 5), 11, 11);
string Gauss_window = "Gauss image";
namedWindow(Gauss_window, CV_WINDOW_AUTOSIZE);
imshow(Gauss_window, dst_Gauss);
waitKey(0);
return 0;
}