计算机视觉 (七) -- Canny
Canny 的目标是找到一个最优的边缘检测算法,最优边缘检测的含义是:
好的检测- 算法能够尽可能多地标识出图像中的实际边缘。
好的定位- 标识出的边缘要尽可能与实际图像中的实际边缘尽可能接近。
最小响应- 图像中的边缘只能标识一次,并且可能存在的图像噪声不应标识为边缘。
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import cv2
import numpy as np
image = cv2.imread("./imgs/2.jpg")
gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
wide = cv2.Canny(gray,30,100)
tight = cv2.Canny(gray,180,240)
f,(a1,a2) = plt.subplots(1,2,figsize=(200,200))
a1.set_title("wide")
a1.imshow(wide,cmap='gray')
a2.set_title("tight")
a2.imshow(tight,cmap='gray')
plt.show()