opencv cv2.MorphologyEx
cv2.MorphologyEx() 是 OpenCV 中用于形态学操作的一个函数,可处理图像的结构特征,如边缘、角点、对象等。它作为 OpenCV 中的高级函数,允许执行各种复杂的形态学操作,如腐蚀、膨胀、开运算、闭运算等 1。
该函数的基本语法如下:
Python
retval, dst = cv2.morphologyEx(src, op, kernel[, dst[, anchor]])
参数解释如下:
src:源图像,必须是单通道的灰度图像 3。
op:形态学操作的类型,有以下几种:
cv2.MORPH_ERODE:腐蚀操作。
cv2.MORPH_DILATE:膨胀操作。
cv2.MORPH_OPEN:开运算,本质是先腐蚀后膨胀,可去除图像中的小噪声点,分离相邻较近的物体,且保留较大物体的形状和大小基本不变 35。
cv2.MORPH_CLOSE:闭运算。
cv2.MORPH_GRADIENT:形态学梯度,在该函数中直接调用此方法进行梯度运算时,图像效果为膨胀运算减去腐蚀运算,但随着运算使用的像素核增大,获得的梯度运算图像轮廓逐渐变得不够清晰 34。
cv2.MORPH_TOPHAT:原图像减去膨胀的图像。
cv2.MORPH_HITMISS:结构元素对应的点集比较 3。
kernel:形态学操作的核,通常是一个矩形、椭圆或十字形的小矩阵,核的大小可以是正奇数 3。
dst(可选):输出图像,如果未指定,则函数会创建一个新的输出图像 3。
anchor(可选):核的锚点,默认是核的中心