#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

//形态学操作
int Demo_Morphology()
{
  char win1[] = "window1";
  char win2[] = "window2";

  Mat img1, img2;
  img1 = imread("D://images//4//13.jpg");
  if (img1.empty())
  {
    cout << "could not load img..."<< endl;
    return 0;
  }

  imshow(win1,img1);
  Mat kernel_close = getStructuringElement(MORPH_RECT,Size(35,35),Point(-1,-1));
  Mat kernel_GRADIENT = getStructuringElement(MORPH_RECT, Size(15, 15), Point(-1, -1));
  Mat kernel_top_hat = getStructuringElement(MORPH_RECT, Size(53, 53), Point(-1, -1));
  Mat kernel_black_hat = getStructuringElement(MORPH_RECT, Size(11, 11), Point(-1, -1));

  //
  //morphologyEx(img1,img2,CV_MOP_CLOSE,kernel_close);
  //梯度
  //morphologyEx(img2, img2, CV_MOP_GRADIENT, kernel_GRADIENT);
  //开操作-顶帽
  //morphologyEx(img1, img2, CV_MOP_TOPHAT, kernel_top_hat);
  //闭操作-黑帽
  morphologyEx(img1, img2, CV_MOP_BLACKHAT, kernel_black_hat);

  imshow(win2, img2);

  return 0;
}

int main()
{
  Demo_Morphology();

  waitKey(0);
  return 0;
}

Opencv3 形态学操作的更多相关文章

  1. EasyPR--开发详解(4)形态学操作、尺寸验证、旋转等操作

    在上一篇深度分析与调优讨论中,我们介绍了高斯模糊,灰度化和Sobel算子.在本文中,会分析剩余的定位步骤. 根据前文的内容,车牌定位的功能还剩下如下的步骤,见下图中未涂灰的部分. 图1 车牌定位步骤 ...

  2. opencv6.1-imgproc图像处理模块之平滑与形态学操作

    这个部分是<opencv-tutorials.pdf>的部分,这部分也是几大部分中例子最多的,其实这个教程的例子都很不错,不过有些看得出来还是c接口的例子,说明例子有些年头了,其实在&qu ...

  3. MATLAB 常用形态学操作函数

    常用形态学操作函数(转自:http://blog.sina.com.cn/s/blog_4c52e9e20100e5if.html) 1.dilate函数 该函数能够实现二值图像的膨胀操作,有以下形式 ...

  4. OPENCV形态学操作1

    形态学操作是指基于形状的一系列图像处理操作,包括膨胀,腐蚀,二值化,开运算,闭运算,顶帽算法,黑帽算法,形态学梯度等,最基本的形态学操作就是膨胀和腐蚀. 一.膨胀 首先需要明确一个概念,膨胀和腐蚀都是 ...

  5. OpenCV-Python:形态学操作

    常用的形态学操作:腐蚀.膨胀.开运算和闭运算 一.什么叫形态学操作 形态学操作就是改变物体的形状,比如腐蚀就是"变瘦",膨胀就是"变胖" 形态学操作一般作用于二 ...

  6. opencv学习笔记(五)----图像的形态学操作

    图像的形态学操作有基本的腐蚀和膨胀操作和其余扩展形态学变换操作(高级操作)-----开运算,闭运算,礼帽(顶帽)操作,黑帽操作...(主要也是为了去噪声,改善图像) 形态学操作都是用于处理二值图像(其 ...

  7. OpenCV学习笔记(六) 滤波器 形态学操作(腐蚀、膨胀等)

    转自:OpenCV 教程 另附:计算机视觉:算法与应用(2012),Learning OpenCV(2009) 平滑图像:滤波器 平滑 也称 模糊, 是一项简单且使用频率很高的图像处理方法.平滑处理的 ...

  8. opencv::形态学操作

    形态学操作 开操作- open 闭操作- close 形态学梯度- Morphological Gradient 顶帽 – top hat 黑帽 – black hat 开操作- open 先腐蚀后膨 ...

  9. OpenCV 图象腐蚀形态学操作 全家桶

    图象腐蚀与形态学操作 opencv 1. 通过调用库函数实现图像的腐蚀.膨胀: 2. 通过设置结构元素.元素大小.形态学操作类型实现对图象的形态学操作. 源码(VS2017+OpenCV 4.0) # ...

随机推荐

  1. 【转】Linux export 命令

    原文网址:http://mymobile.iteye.com/blog/1407601 Linux export 命令 功能说明: 设置或显示环境变量.(比如我们要用一个命令,但这个命令的执行文件不在 ...

  2. Tomcat(64位)免安装版的环境安装与配置

    本篇博客主要介绍Tomcat(64位)免安装版的环境安装与配置,该篇文章同样适合于32位Tomcat免安装版的环境安装与配置. 该篇博客中的大部分内容同百度经验中的<出现unable to op ...

  3. Python中dir()与help()的使用

    python内置了很多内置函数.类方法属性及各种模块.当我们想要当我们想要了解某种类型有哪些属性方法以及每种方法该怎么使用时,我们可以使用dir()函数和help()函数在python ide交互式模 ...

  4. jeecg中选择的数据字典

    <t:dictSelect field="fjingji" hasLabel="false" typeGroupCode="fjingji&qu ...

  5. Linux编译前提前丰富库资源

    Linux在软件编译的时候,时常提示一些依赖,无谓浪费时间.我们可以事先将常用的依赖包,一起安装一下,防止后续编译过程被打断. 之前,有个很重要的前提,就是epel源的安装. # ls /etc/yu ...

  6. 为什么我tracert经过H3C设备的时候,老是*号,不回包

    两条命令搞定  ip unreachables  en   ip ttl-expires enable  

  7. node中一个基本的HTTP客户端向本地的HTTP服务器发送数据

    上一篇讲到了node可以轻松的向其他请求数据. 这一篇就来讲讲向本地服务器的数据交互. HTTP服务器代码,s.js var http=require("http"); var s ...

  8. Linux 之 inotify+rsync 备份文件系统

    一.需求 1.线上有不同的机房,并且每个机房所对公网开放端口不一样. 2.A机房中的a机器是台文件服务器,需要备份到B机房中的b机器,以及C机房中的c机器. 3.并且保持实时同步.只要a上面的文件有改 ...

  9. OD 实验(九) - 对一个程序的破解

    程序: 运行程序 点击 About 这是要注册的 点击 Register 输入邮箱和注册码,点击 Register Now 逆向: 用 OD 打开程序 右键 -> 查找 -> 所有参考文本 ...

  10. MySQL的安装和基本管理

    ---恢复内容开始--- MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle(甲骨文)旗下公司.MySQL最流行的关系型数据库管理系统.在web应用方面MySQ ...