Edge Detection

Kategori: Computer Vision , 29 Ocak 2020 , JanFranco


Bu yazımızda OpenCV kütüphanesini kullanarak Python üzerinden kenar bulma ile ilgili bir örnek yapacağız. Kenar bulma algoritmasını, arkasındaki matematiği ve detayları bir başka yazıda anlatacağım. Sabırsızlar için:


https://en.wikipedia.org/wiki/Edge_detection
https://en.wikipedia.org/wiki/Canny_edge_detector
Kütüphaneleri ve resmi alalım:


import cv2
import numpy as np

img = cv2.imread('../data/sammy.jpg')
cv2.imshow("Dog", img)
cv2.waitKey(0)
>>

Edge Detection

cv2.Canny methodu ile kenar bulalım. 3 parametre vereceğiz. Resim, min threshold ve maxthreshold değerleri:


canny1 = cv2.Canny(img, 127, 127)
cv2.imshow("Canny1", canny1)
cv2.waitKey(0)
>>

Edge Detection

Blurring tekniklerini anlatırken de bahsettik. Genellikle kenar bulma uygulamarında, işleme geçmeden önce blurring ile gürültü temizlenir. Deneyelim:


blurredImg = cv2.blur(img, ksize=(5, 5))
canny2 = cv2.Canny(blurredImg, 127, 127)
cv2.imshow("Canny2", canny2)
cv2.waitKey(0)
>>

Edge Detection

Farklı threshold değerleri deneyelim:


med_val = np.median(blurredImg)
lower = int(max(0, .7 * med_val))
upper = int(min(255, 1.3 * med_val))
canny3 = cv2.Canny(blurredImg, lower, upper + 50)
cv2.imshow("Canny3", canny3)
cv2.waitKey(0)
>>

Edge Detection


Sonraki Yazı: Grid Detection
Yorumlar

Henüz bir yorum bulunmuyor.