Detecting Edges

Kategori: Python / OpenCV , 07 Ekim 2019 , JanFranco


OpenCV kütüphanesinde, kenar bulma işlemi için 3 algoritma bulunmaktadır: Sobel, Laplacian ve Canny. Sobel algoritması, dikey ve yatay kenarlara vurgu yapar. Laplacian, tüm pixel yönelimlerini vurgular. Canny algoritması ise threshold değerlerine göre kenar bulma işlemi yapar. Canny algoritmasının nasıl çalıştığından bahsedelim:

1. Resme Gaussian blurring uygular
2. Yoğunluk gradyanlarını bulur
3. Kenar olmayan pixelleri resimden çıkarır
4. Resme threshold tekniği uygulanır

Örnek görelim:


import cv2

image = cv2.imread('input.jpg',0)

height, width = image.shape

sobel_x = cv2.Sobel(image, cv2.CV_64F, 0, 1, ksize=5)
sobel_y = cv2.Sobel(image, cv2.CV_64F, 1, 0, ksize=5)

cv2.imshow('Original', image)
cv2.waitKey(0)
cv2.imshow('Sobel X', sobel_x)
cv2.waitKey(0)
cv2.imshow('Sobel Y', sobel_y)
cv2.waitKey(0)

sobel_OR = cv2.bitwise_or(sobel_x, sobel_y)
cv2.imshow('sobel_OR', sobel_OR)
cv2.waitKey(0)

laplacian = cv2.Laplacian(image, cv2.CV_64F)
cv2.imshow('Laplacian', laplacian)
cv2.waitKey(0)

canny = cv2.Canny(image, 50, 120)
cv2.imshow('Canny', canny)
cv2.waitKey(0)

cv2.destroyAllWindows()
Methodları ve nasıl uygulandıklarını gördük. Bu algoritmaların detaylarını Computer Vision bölümünde göreceğiz.


Sonraki Yazı: Perspective Transformation
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın