如何使用OpenCV对图像应用零交叉

2024-04-24 03:30:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用高斯函数的拉普拉斯函数的零交叉来寻找边。如何在图像中找到零交叉点?你知道吗

我试过用腐蚀和扩张,但没有用。你知道吗

def log(P, std):
    gauss = cv2.GaussianBlur(P, (3, 3), std)  # apply Gaussian
    return cv2.Laplacian(gauss, cv2.CV_16S)  # apply Laplacian with negative values

def zero_crossing(P):
    minLoG = cv2.morphologyEx(P, cv2.MORPH_ERODE, np.ones((3, 3)))
    maxLoG = cv2.morphologyEx(P, cv2.MORPH_DILATE, np.ones((3, 3)))
    return np.logical_or(np.logical_and(minLoG < 0, P > 0), np.logical_and(maxLoG > 0, P < 0))

Tags: 函数returndefnponescv2stdapply