开操作:
先腐蚀(erode)后膨胀(dilate)
闭操作:
先膨胀(dilate)后腐蚀(erode)
形态学梯度:
膨胀(dilate) 减去 腐蚀(erode)
顶帽:
原图像 减去 开操作
黑帽:
闭操作 减去 原图像
#include<opencv2/opencv.hpp> #include<iostream> using namespace cv; using namespace std; Mat src, dst; int main(int argc, char** argv) { src = imread("D:/OpenCVprj/image/test3.jpg"); imshow("src", src); Mat kernel = getStructuringElement(MORPH_RECT, Size(7, 7), Point(-1, -1)); //morphologyEx(src, dst, CV_MOP_CLOSE, kernel); //morphologyEx(src, dst, CV_MOP_OPEN, kernel); morphologyEx(src, dst, CV_MOP_GRADIENT, kernel); //morphologyEx(src, dst, CV_MOP_TOPHAT, kernel); //morphologyEx(src, dst, CV_MOP_BLACKHAT, kernel); imshow("dst", dst); waitKey(0); return 0; }