python实现形态学操作(膨胀、侵蚀)
讲解
略
代码
import cv2
import numpy as np
def dilate(image_path, save_path):
pic = image_path
src = cv2.imread(pic, cv2.IMREAD_UNCHANGED)
kernel = np.ones((5, 5), np.uint8) # 初始化窗口
dilate = cv2.dilate(src, kernel) # 侵蚀操作
cv2.imwrite(save_path, dilate)
def erode(image_path, save_path):
pic = image_path
src = cv2.imread(pic, cv2.IMREAD_UNCHANGED)
kernel = np.ones((5, 5), np.uint8) # 初始化窗口
erode = cv2.erode(src, kernel) # 侵蚀操作
cv2.imwrite(save_path, erode)
if __name__ == "__main__":
image_path = r""
dilate_save_path = r""
erode_save_path = r""
dilate(image_path, dilate_save_path)
erode(image_path, erode_save_path)
运行结果
运行前
侵蚀结果
膨胀结果