zoukankan      html  css  js  c++  java
  • 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;
    }

     

  • 相关阅读:
    全屏透明遮罩层
    理解Javascript__理解undefined和null
    JS 对象属性相关--检查属性、枚举属性等
    js 空正则匹配任意一个位置
    a 标签 download 和 target 不配合
    Array.prototype.filter(Boolean)
    页面操作表单不会调用表单 value 属性的 set 函数
    Babel6.x的安装
    html 事件处理程序中的代码在执行时,有权访问全局作用域中的任何代码。
    js 常用 DOM 元素宽高
  • 原文地址:https://www.cnblogs.com/herd/p/9733374.html
Copyright © 2011-2022 走看看