我是靠谱客的博主 欣喜大叔,最近开发中收集的这篇文章主要介绍Opencv(C++)笔记--形态学操作之开、闭操作、基本梯度计算、顶帽和黑帽操作1--开操作2--闭操作3--基本梯度计算4--顶帽操作5--黑帽操作6--代码实例,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
目录
1--开操作
2--闭操作
3--基本梯度计算
4--顶帽操作
5--黑帽操作
6--代码实例
1--开操作
① 原理:先进行腐蚀操作,再进行膨胀操作;
② 作用:消除值高于邻近点的孤立点,达到去除图像中噪声的作用(假定对象是前景色、背景是黑色);消除较小的连通域,保留较大的连通域;断开较窄的狭颈,可以在两个物体纤细的连接处将它们分离;不明显改变较大连通域的面积的情况下平滑连通域的连界、轮廓;
③ OpenCV API:
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(30, 30), cv::Point(-1, -1));
cv::morphologyEx(src, dst, cv::MORPH_OPEN, kernel);
2--闭操作
① 原理:先进行膨胀操作,再进行腐蚀操作;
② 作用:消除值低于邻近点的孤立点,达到去除图像中噪声的作用(假定对象是前景色、背景是黑色);连接两个邻近的连通域;弥合较窄的间断和细长的沟壑;去除连通域内的小型空洞;能够平滑物体的轮廓;
③ OpenCV API:
cv::morphologyEx(src, dst, cv::MORPH_CLOSE, kernel);
3--基本梯度计算
① 原理:膨胀后的图像减去腐蚀后的图像;
② Opencv API:
cv::morphologyEx(src, dst, cv::MORPH_GRADIENT, kernel);
4--顶帽操作
① 原理:计算原图像和开运算图像的差值图像;
② Opencv API:
cv::morphologyEx(src, dst, cv::MORPH_TOPHAT, kernel);
5--黑帽操作
① 原理:计算闭运算操作的图像与原图像的差距;
② Opencv API:
cv::morphologyEx(src, dst, cv::MORPH_BLACKHAT, kernel);
6--代码实例
#include <opencv2/opencv.hpp>
# include<cstdio>
int main(int argc, char** argv){
cv::Mat src;
src = cv::imread("C:/Users/Liujinfu/Desktop/opencv_bilibili/test1.jpg");
if (src.empty()){
printf("could not load image..n");
return -1;
}
cv::imshow("input", src);
cv::Mat dst;
cv::Mat kernel = cv::getStructuringElement(cv::MORPH_RECT, cv::Size(3, 3), cv::Point(-1, -1));
// 开操作,先腐蚀后膨胀
//cv::morphologyEx(src, dst, cv::MORPH_OPEN, kernel);
// 闭操作,先膨胀后腐蚀
//cv::morphologyEx(src, dst, cv::MORPH_CLOSE, kernel);
// 形态学梯度:膨胀减去腐蚀(基本梯度)
cv::morphologyEx(src, dst, cv::MORPH_GRADIENT, kernel);
// 顶帽:计算原图像与开图像的差值
//cv::morphologyEx(src, dst, cv::MORPH_TOPHAT, kernel);
// 黑帽:计算闭图像与原图像的差值
//cv::morphologyEx(src, dst, cv::MORPH_BLACKHAT, kernel);
cv::imshow("output", dst);
cv::waitKey(0);
return 0;
}
最后
以上就是欣喜大叔为你收集整理的Opencv(C++)笔记--形态学操作之开、闭操作、基本梯度计算、顶帽和黑帽操作1--开操作2--闭操作3--基本梯度计算4--顶帽操作5--黑帽操作6--代码实例的全部内容,希望文章能够帮你解决Opencv(C++)笔记--形态学操作之开、闭操作、基本梯度计算、顶帽和黑帽操作1--开操作2--闭操作3--基本梯度计算4--顶帽操作5--黑帽操作6--代码实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复