rectkernel = cv2.getStructuringElement(shape, ksize, anchor=None)
shape:
-
Enumerator MORPH_RECT 矩形 MORPH_CROSS 十字型 MORPH_ELLIPSE 椭圆形
ksize:
-
指定形状(元组)
示例程序01
rectKernel = cv2.getStructuringElement(cv2.MORPH_RECT, (6, 3))
print(rectKernel, type(rectKernel))
sqKernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
print(sqKernel, type(sqKernel))
运行结果01
[[1 1 1 1 1 1]
[1 1 1 1 1 1]
[1 1 1 1 1 1]] <class 'numpy.ndarray'>
[[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]] <class 'numpy.ndarray'>
示例程序02
sqKernel = cv2.getStructuringElement(cv2.MORPH_CROSS, (9, 5))
print(sqKernel, type(sqKernel))
sqKernel = cv2.getStructuringElement(cv2.MORPH_CROSS, (10, 6))
print(sqKernel, type(sqKernel))
运行结果02
[[0 0 0 0 1 0 0 0 0]
[0 0 0 0 1 0 0 0 0]
[1 1 1 1 1 1 1 1 1]
[0 0 0 0 1 0 0 0 0]
[0 0 0 0 1 0 0 0 0]] <class 'numpy.ndarray'>
[[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[1 1 1 1 1 1 1 1 1 1]
[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]] <class 'numpy.ndarray'>
双数话默认选后边那个,最好为奇数
示例程序03
sqKernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (9, 5))
print(sqKernel, type(sqKernel))
运行结果03
[[0 0 0 0 1 0 0 0 0]
[0 1 1 1 1 1 1 1 0]
[1 1 1 1 1 1 1 1 1]
[0 1 1 1 1 1 1 1 0]
[0 0 0 0 1 0 0 0 0]] <class 'numpy.ndarray'>