OpenCV基础课程笔记12形态学操作
程序员文章站
2023-12-23 15:40:04
...
代码
#include<iostream>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main() {
Mat src = imread("A:\\专用\\TestForTheCV\\class12开.png");
imshow("图片", src);
Mat dst;
//一般形态学操作针对的都是二值化后的图
//开操作
//先膨胀后腐蚀,去掉小块的对象
Mat kernel = getStructuringElement(MORPH_RECT, Size(13, 13), Point(-1, -1));
morphologyEx(src, dst, CV_MOP_OPEN, kernel);
/*
更改开操作参数
闭操作:CV_MOP_CLOSE
先腐蚀后膨胀,填补小洞,去污渍等
形态学梯度:CV_MOP_GRADTENT
膨胀减去腐蚀
顶帽:CV_MOP_TOPHAT
原图像减去开操作(相当于去除的小块对象的提取)
黑帽:CV_MOP_BLACKHAT
闭操作减去原图像的图(相当于填补漏洞、污渍的提取)
*/
imshow("jieguo", dst);
waitKey(0);
return 0;
}