使用OpenCV进行自定义线性滤波/Robert/Sobel/Laplace

源代码:

// testOpencv14.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;

const char* inWin = "input window";
const char* outWin = "output window";

Mat src, dst;

int main()
{
   // std::cout << "Hello World!\n";
    src = imread("E:/imageSources/3.jpg");
    if (!src.data) {
        printf("cannot load image,please check your code!");
        return -1;
    }

namedWindow(inWin, WINDOW_AUTOSIZE);
    namedWindow(outWin, WINDOW_AUTOSIZE);
    imshow(inWin,src);
    //===========================robert=====================================//
    robert算子 X轴方向
    //Mat kernal_robert_X=(Mat_<int>(2,2) << 1,0,0,-1);
    robert算子 Y轴方向
    //Mat kernal_robert_Y = (Mat_<int>(2, 2) << 0, 1, -1, 0);

//filter2D(src,dst,-1, kernal_robert_X,Point(-1,-1),0.0);
    //imshow(outWin,dst);
    //filter2D(src, dst, -1, kernal_robert_Y, Point(-1, -1), 0.0);
    //imshow("Robert_Y", dst);

//==========================sobel======================================//
    Sobel算子 X轴方向
    //Mat kernal_sobel_X=(Mat_<int>(3,3) << -1,0,1,-2,0,2,-1,0,1);
    Sobel算子 Y轴方向
    //Mat kernal_sobel_Y = (Mat_<int>(3, 3) << -1,-2,-1,0,0,0,1,2,1);

//filter2D(src,dst,-1, kernal_sobel_X,Point(-1,-1),0.0);
    //imshow(outWin,dst);
    //filter2D(src, dst, -1, kernal_sobel_Y, Point(-1, -1), 0.0);
    //imshow("Y", dst);

//=======================Laplace Operator===============================//
    Laplace算子
    //Mat kernal_laplace = (Mat_<int>(3, 3) << 0, -1, 0, -1, 4, -1, 0, -1, 0);

//filter2D(src, dst, -1, kernal_laplace, Point(-1, -1), 0.0);
    //imshow(outWin, dst);

//========================自定义模糊算子================================//
    int c = 0;
    int index = 0;
    int kernalSize = 0;
    while (true)
    {
        c = waitKey(500);
        if ((char)c == 27) //按下ESC键  
        {
            break;
        }

kernalSize = 0 + (index % 5)*2 + 1 ;//一定要保证Kernal的值为单数
        Mat kernalCustomalized = Mat::ones(Size(kernalSize, kernalSize), CV_32F) / (float)(kernalSize * kernalSize);
        filter2D(src,dst,-1,kernalCustomalized,Point(-1,-1),0.0);
        index++;
        imshow(outWin, dst);
    }

waitKey(0);
    return 0;
}

RobertX,Y算子处理结果:

Sobel算子X,Y处理结果:

Laplace算子处理结果:

自定义线性滤波处理效果(动态模糊处理):

(代码运行结果为动态模糊,即模糊程度逐渐加深,没有上传视频截取的图片)

2020.11.05 使用OpenCV进行自定义线性滤波 【OpenCV C++ Robert/Sobel/Laplace】相关推荐

  1. (十九:2020.11.05)MICCAI 2020 追踪之论文纲要(译)<中>

    论文目录 PART III <Computer Aided Intervention, Ultrasound and Image Registration 计算机辅助干预,超声和图像配准> ...

  2. 2020/11/05随记 基于jini的C++和Java交互

    书展翰墨,叹锦绣山河匆匆. 首选用Eclipse创建对应的java工程,编写.java和.class文件 native关键字的使用 凡是一种语言,都希望是纯.比如解决某一个方案都喜欢就单单这个语言来写 ...

  3. QIIME 2教程. 01简介和安装 Introduction Install(2020.11开始更新)

    写在前面 QIIME是微生物组领域最广泛使用的分析流程,10年来引用20000+次,2019年Nature杂志评为近70年来人体菌群研究的25个里程碑事件--里程碑16:生物信息学工具助力菌群测序数据 ...

  4. QIIME 2教程. 11元数据Metadata(2020.11)

    文章目录 QIIME 2用户文档. 11元数据 元数据格式要求 元数据验证 前导和尾随空格字符 注释和空行 标识符列 标识符的建议 元数据列 列类型 数字格式化 高级文件格式详细信息 TSV行话和语法 ...

  5. QIIME 2教程. 01简介和安装 Introduction Install(2020.11)

    文章目录 写在前面 QIIME 2的优势 QIIME 2用户文档(版本:2020.11) 视频:QIIME 2用户文档01.1 简介 入门指南 什么是QIIME 2? 核心概念 数据文件: QIIME ...

  6. 【不忘初心】Win10_20H2_2009_19042.610_X64_七合一_[纯净精简版][2.83G](2020.11.2)

    母版来自MSDN WIN10_20H2.19042.508,集成补到19042.610,20H2相比1909 2004版本要稳定很多,此版修复了上次的一些问题,应微软毒.粉的要求新增一版带Defend ...

  7. 2020.11.16-11.23 人工智能行业每周技术精华文章汇总

    月初的时候,大学好友盘下了一个门面,打算开一个儿童乐园. 不过并不是全职,后期他家里人会帮忙打理. 他也是喜欢折腾的人,这几年我们也一起合作做过很多的项目. 最近也一直在和我讨论,如何做新店的营销方案 ...

  8. 2020.11.02-11.09 人工智能行业每周技术精华文章汇总

    上周11月3号,国家发布了<十四五规划和2035年远景目标的建议>. 不管是从资本市场,还是在民间,都引起了广大的关注. 既然是政策性新闻,那就是国家希望你看的. 或者说,在未来的5年.1 ...

  9. 2020.11新闻文章回顾

    月初统一收租. 如果觉得每天的新闻&原创文章有点帮助,可以微微打赏,让德事君多一点坚持下去的动力! 2020.11新闻&文章 电子支付Joompay要做欧洲的支付宝 软件测试资质认证I ...

最新文章

  1. 2、以太网基础知识——IP协议
  2. pip 命令参数以及如何配置国内镜像源
  3. Boost:基于boost::asio的延迟udp服务器测试程序
  4. linux更新nvidia驱动程序,[下载]NVIDIA显卡Linux驱动更新304.60
  5. 【人工智能】AI如何把招人效率提高四成
  6. mysql c2_Mysql具有C2级安全性
  7. java应用程序怎样获取外接设备信号 通过usb
  8. 看过曹县国际车展,我闯入了魔幻的塞伯坦
  9. MATLAB信号处理之信号的积分和微分
  10. leetcode 148. Sort List ----- java
  11. 如何在阿里云里申请并使用免费https证书SSL、nginx下配置https证书
  12. wxWindows 第一个Frame程序
  13. (转)Asp.net页面生命周期详解任我行(1)-小试牛刀,编写页面代码
  14. 怎么制作真人qq秀_真人秀---搏击赛事新风向标的机与忧
  15. 富士通Fujitsu DPK9500GA Pro 打印机驱动
  16. ansible常见模块
  17. 区块链大本营专访 | MiiX全球技术开发者超级大赛,36小时,3支获胜队伍有哪些不一样的感受?
  18. css中表格内容从顶部开始,CSS粘性定位固定表格thead部分元素小方法
  19. mysql 8.0 初识
  20. 5G工业网关下工业自动化设备远程监控系统

热门文章

  1. 11项关键先进制造技术解读!
  2. 塔式和机架式它们到是什么?有什么区别?
  3. 桂林电子科技大学计算机学院钟艳如,桂林电子科技大学考研研究生导师简介-钟艳如...
  4. 三星认为 LG 零售店销售苹果 iPhone 违约:也应该销售 Galaxy 手机
  5. 中南大学信息与通信工程专业研究生入学考试计算机网络试题2001答案,中南大学信息与通信工程专业研究生入学考试计算机网络试题.doc...
  6. python经典好书-Python 必读好书,这十本分量十足!
  7. 影响大学生就业的几个关键问题
  8. 广工的计算机硕士全国排名s,2021年广东工业大学排名,附全国最新排名
  9. 特里回归战世界杯 英足总主席力挺 霍奇森已拒绝
  10. android 的injustdecodebounds