вівторок, 27 квітня 2021 р.

Оператори виділення границь Собеля, Превітта, Кенні

gray=cv2.imread('foto.jpg',0)
#Оператор Собеля
grad_x = cv2.Sobel(gray, cv2.CV_64F, 1, 0, ksize=3)
grad_y = cv2.Sobel(gray, cv2.CV_64F, 0, 1, ksize=3)
grad=np.sqrt(grad_x**2+grad_y**2)
grad_norm = (grad * 255 / grad.max()).astype(np.uint8)
#Оператор Превітта
kernelx = np.array([[1,1,1],[0,0,0],[-1,-1,-1]])
kernely = np.array([[-1,0,1],[-1,0,1],[-1,0,1]])
grad_x = cv2.filter2D(gray, -1, kernelx)
grad_y = cv2.filter2D(gray, -1, kernely)
grad=np.sqrt(grad_x**2+grad_y**2)
grad_norm = (grad * 255 / grad.max()).astype(np.uint8)
#Оператор Кенні
threshold1=50
threshold12=150
edges=cv2.Canny(gray,threshold1,threshold12,apertureSize=5)

Немає коментарів:

Дописати коментар