滤波原图:
1.方框滤波示例代码如下:
Mat source = new Mat(@"d:\lena.png" , ImreadModes.Color); Mat mat1 = new Mat(); //方框滤波 Cv2.BoxFilter(source, mat1, -1, new OpenCvSharp.Size(5, 5)); mat1.SaveImage("d:\\方框滤波.jpg");
输出结果:
2.均值滤波
Mat source = new Mat(@"d:\lena.png" , ImreadModes.Color); Mat mat1 = new Mat(); //均值滤波 Cv2.Blur(source, mat1, new OpenCvSharp.Size(5,5)); mat1.SaveImage("d:\\均值滤波.jpg");
输出结果:
3.高斯滤波
Mat source = new Mat(@"d:\lena.png" , ImreadModes.Color); Mat mat1 = new Mat(); //高斯滤波 Cv2.GaussianBlur(source, mat1, new OpenCvSharp.Size(5, 5) , 0, 0); mat1.SaveImage("d:\\高斯滤波.jpg");
输出结果:
4.中值滤波
Mat source = new Mat(@"d:\lena.png" , ImreadModes.Color); Mat mat1 = new Mat(); //中值滤波 Cv2.MedianBlur(source, mat1 , 5); mat1.SaveImage("d:\\中值滤波.jpg");
输出结果:
5.双边滤波
Mat source = new Mat(@"d:\lena.png" , ImreadModes.Color); Mat mat1 = new Mat(); //双边滤波 Cv2.BilateralFilter(source, mat1, 20 , 100 , 18 ); mat1.SaveImage("d:\\双边滤波 .jpg");
输出结果: