opencv3.2.0形态学滤波之形态学梯度、顶帽、黑帽
/*一、形态学梯度
(1)含义:是膨胀图和腐蚀图之差
(2)数学表达式:dst=morph-grad(src,element)
=dilate(src,element) - erode(src,element)
(3)AP接口函数morphologyEx(),表示符为MORPH_GRADIENT
(4)作用:保留物体的边缘轮廓
*/
/*******相关程序*******/
#include <QCoreApplication>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
using namespace std;
using namespace cv; int main()
{
Mat srcImage = imread("/home/ttwang/12.tif");//读入原图
namedWindow("形态学梯度操作[原图]");
imshow("形态学梯度操作[原图]",srcImage); //获取自定义核
Mat element = getStructuringElement(MORPH_RECT,Size(,));
Mat dstImage; //进行形态学梯度操作
morphologyEx(srcImage,dstImage,MORPH_GRADIENT,element);
namedWindow("形态学梯度操作[效果图]");
imshow("形态学梯度操作[效果图]",dstImage); waitKey();
return ;
}
形态学梯度操作[原图]
形态学梯度操作[效果图]
/*二、顶帽
含义:顶帽运算(Top Hat),是原图像与“开运算”的结果图之差
数学表达式:dst = tophat(src,element)=src-open(src,element)
作用:顶帽运算往往用来分离比邻近点亮一些的斑块,在一幅图像具有大幅背景,而微小物品
比较有规律的情况下,可以使用顶帽运算进行背景提取。
核心API函数:morphologyEx(); (其中标识符为MORPH_TORHAT)
[相关例程以后,用到再学习]
*/ /*三、黑帽
含义:黑帽运算是闭运算的结果图与原图之差
数学表达式:dst=blackhat(src,element)=close(src,elemet)-src
作用:黑帽运算用来分离比近邻点暗一些的斑块,效果图有着完美的轮廓。
核心API函数:morphologyEx(); (其中标识符为MORPH_BLACKHAT)
[相关例程以后,用到再学习]
opencv3.2.0形态学滤波之形态学梯度、顶帽、黑帽的更多相关文章
- opencv 4 图像处理(2 形态学滤波:腐蚀与膨胀,开运算、闭运算、形态学梯度、顶帽、黑帽)
腐蚀与膨胀 膨胀(求局部最大值)(dilate函数) #include <opencv2/core/core.hpp> #include <opencv2/highgui/highg ...
- 【OpenCV新手教程之十一】 形态学图像处理(二):开运算、闭运算、形态学梯度、顶帽、黑帽合辑
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/23184547 作者:毛星云(浅墨) ...
- opencv3.2.0形态学滤波之膨胀
//名称:膨胀 //日期:12月21日 //平台:QT5.7.1+opencv3.2.0 /* 膨胀(dilate)的含义: 膨胀就是求局部最大值的操作,就是将图像(或图像的一部分,A)与核 B 进行 ...
- opencv学习之路(15)、形态学其他操作(开、闭、顶帽、黑帽、形态学梯度)
一.形态学其他操作(用的不多,如果忘了也可以通过膨胀腐蚀得到相同效果) 1.开运算 2.闭运算 3.形态学梯度 4.顶帽 5.黑帽 #include "opencv2/opencv.hpp& ...
- OpenCV3入门(七)图像形态学
1.膨胀 所谓的图片的膨胀处理,其实就是在图像的边缘添加像素值,使得整体的像素值扩张,进而达到图像的膨胀效果. 对Z2上元素集合A和结构体元素S,使用S对A进行腐蚀,记作: A⊕S={z|(S)z ∩ ...
- opencv —— morphologyEx 开运算、闭运算、形态学梯度、顶帽、黑帽
开运算:先腐蚀后膨胀. 能够排除小亮点. 闭运算:先膨胀后腐蚀. 能够排除小黑点. 形态学梯度:膨胀图 — 腐蚀图. 对二值图像进行这一操作,可将图块的边缘突出出来,故可用来保留物体边缘轮廓. 顶帽: ...
- [PCL]点云渐进形态学滤波
PCL支持点云的形态学滤波,四种操作:侵蚀.膨胀.开(先侵蚀后膨胀).闭(先膨胀后侵蚀) 在#include <pcl/filters/morphological_filter.h>中定义 ...
- python数字图像处理(13):基本形态学滤波
对图像进行形态学变换.变换对象一般为灰度图或二值图,功能函数放在morphology子模块内. 1.膨胀(dilation) 原理:一般对二值图像进行操作.找到像素值为1的点,将它的邻近像素点都设置成 ...
- opencv-图像形态学之开运算、闭运算、形态学梯度、顶帽、黑帽合辑
转自:https://blog.csdn.net/poem_qianmo/article/details/24599073 1.1 开运算(Opening Operation) 开运算(Opening ...
随机推荐
- 2019 rode of my LeetCode
基于自己的算法实操水平如此之菜,开始开启leetcode狂刷之路! 2019先定个小目标100题. 2018年经历了辞职到考研失利,我觉得这大概是一生中最低谷的时候了吧. 2019年收拾心情重新开始好 ...
- Xcode 10 如何创建自定义 Snippet
 或者 
- centos 7 初始化脚本
#!/bin/bash # 时间: 2018-11-21 # 作者: HuYuan # 描述: CentOS 7 初始化脚本 # 加载配置文件 if [ -n "${1}" ];t ...
- android开发分辨率适配总结
重要概念 什么是屏幕尺寸.屏幕分辨率.屏幕像素密度? 什么是dp.dip.dpi.sp.px?他们之间的关系是什么? 什么是mdpi.hdpi.xdpi.xxdpi?如何计算和区分? 在下面的内容中我 ...
- java的Arrays工具类
1年多了,jdk还不是很熟,补补. package lhy.core.util; import java.util.Arrays; import java.util.List; public clas ...
- Redis-cli命令总结
连接操作相关的命令 默认直接连接 远程连接-h 192.168.1.20 -p 6379 ping:测试连接是否存活如果正常会返回pong echo:打印 select:切换到指定的数据库,数据库索 ...
- CentOS7.4安装Java8
官网下载Jdk8Linux64位版本: 使用MobaXterm工具连接远程Linux系统: 上传刚才下载好的文件到远程系统下 /usr/local/ 文件夹: 先进入压缩包所在目录再输入命令解压jdk ...
- 解析xml文件步骤 -- pullparser
1. 初始化一个xml的解析器 XmlPullParser parser = Xml.newPullParser(); 2. 设置解析器的参数 InputStream inputStream = th ...
- 全网最详细使用Scrapy时遇到0: UserWarning: You do not have a working installation of the service_identity module: 'cannot import name 'opentype''. Please install it from ..的问题解决(图文详解)
不多说,直接上干货! 但是在运行爬虫程序的时候报错了,如下: D:\Code\PycharmProfessionalCode\study\python_spider\30HoursGetWebCraw ...
- 【Docker系列】:全面认识Docker和基本指令
Docker逐渐成为虚拟化技术的佼佼者,Docker技术也是架构师的必备技能. 什么是Docker Docker 是一个开源的应用容器引擎,基于Go语言,诞生于2013年初,最初发起者是dotClou ...