cv2.morphologyEx函数
时间: 2024-03-27 22:31:25 浏览: 63
cv2.morphologyEx函数是OpenCV中的形态学操作函数之一,用于对图像进行形态学操作,例如腐蚀、膨胀、开运算、闭运算等。该函数的语法格式如下:
cv2.morphologyEx(src, op, kernel[, dst[, anchor[, iterations[, borderType[, borderValue]]]]])
其中,参数src表示输入图像,op表示形态学操作类型,kernel表示形态学操作的核,dst表示输出图像,anchor表示核的锚点位置,iterations表示形态学操作的迭代次数,borderType表示边界填充方式,borderValue表示边界填充值。
常见的形态学操作类型包括:
- cv2.MORPH_ERODE:腐蚀操作
- cv2.MORPH_DILATE:膨胀操作
- cv2.MORPH_OPEN:开运算操作
- cv2.MORPH_CLOSE:闭运算操作
- cv2.MORPH_GRADIENT:形态学梯度操作
- cv2.MORPH_TOPHAT:顶帽操作
- cv2.MORPH_BLACKHAT:黑帽操作
形态学操作的核可以是矩形、椭圆、十字形等形状,可以使用cv2.getStructuringElement函数创建。
例如,下面的代码展示了如何使用cv2.morphologyEx函数进行腐蚀操作:
```
import cv2
import numpy as np
img = cv2.imread('image.jpg', 0)
kernel = np.ones((5,5), np.uint8)
erosion = cv2.morphologyEx(img, cv2.MORPH_ERODE, kernel)
cv2.imshow('Original Image', img)
cv2.imshow('Erosion', erosion)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
阅读全文