笔记:OpenCV4.5.4 【c++】形态学操作

目录

开操作- open

闭操作-close 

 形态学梯度- Morphological Gradient

顶帽 – top hat

黑帽

 morphologyEx(src, dest, CV_MOP_BLACKHAT, kernel);


 

开操作- open

先腐蚀后膨胀

可以去掉小的对象,假设对象是前景色,背景是黑色 

 

 

闭操作-close 

先膨胀后腐蚀(bin2)

可以填充小的洞(fill hole),假设对象是前景色,背景是黑色 

 

 

 形态学梯度- Morphological Gradient

膨胀减去腐蚀     

又称为基本梯度(其它还包括-内部梯度、方向梯度)

 

顶帽 – top hat

顶帽 是原图像与开操作之间的差值图像

 

黑帽

黑帽是闭操作图像与源图像的差值图像

 

 morphologyEx(src, dest, CV_MOP_BLACKHAT, kernel);

- Mat src – 输入图像  

- Mat dest – 输出结果

 - int OPT – CV_MOP_OPEN / CV_MOP_CLOSE / CV_MOP_GRADIENT  / CV_MOP_TOPHAT / CV_MOP_BLACKHAT 形态学操作类型

Mat kernel 结构元素

int Iteration 迭代次数,默认是1

#include <iostream>
#include <cstring>
#include <opencv2/highgui/highgui.hpp>
#include<cmath>
#include <opencv2/imgproc.hpp>
using namespace std;
using namespace cv;
int main() 
{
    Mat src = imread("D:/opencv/2/a.jpg");
    if (src.empty()) 
    {
        cout << "could not load image..." << endl;
        return -1;
    }
    namedWindow("input", WINDOW_AUTOSIZE);
    imshow("input", src);

    Mat dst;
     Mat kernel= getStructuringElement(MORPH_RECT,Size(3,3),Point(-1,1 ));
     //腐蚀操作
     morphologyEx(src,dst,MORPH_ERODE,kernel,Point(-1,-1));

     //膨胀操作
     morphologyEx(src,dst,MORPH_ERODE,kernel,Point(-1,-1));

     //开操作 先腐蚀后膨胀 可消除图像中小的干扰区域
     morphologyEx(src,dst,MORPH_OPEN,kernel);
     //闭操作 先膨胀后腐蚀 可填充小的封闭区域
     morphologyEx(src,dst,MORPH_CLOSE,kernel);

      //形态学梯度 膨胀图像与腐蚀图像的之差得到的图像
      //原图像减去腐蚀之后的图像得到差值图像,称为图像的内部梯度。
      //图像膨胀之后再减去原来的图像得到的差值图像,称为图像的外部梯度。
     morphologyEx(dst,dst,MORPH_GRADIENT,kernel,Point(-1,-1),1);

     //顶帽 原图像与开操作之间的差值图像
     morphologyEx(src,dst,MORPH_TOPHAT,kernel,Point(-1,-1));
     //黑帽 原图像与闭操作之间的差值图像
    morphologyEx(src,dst,MORPH_BLACKHAT,kernel,Point(-1,-1));

    imshow("output", dst);

    waitKey();
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值