반응형

2020.04.20 - [영상처리] - Canny Edge Detection (Python)

 

Canny Edge Detection (Python)

import cv2 as cv import numpy as np import math import queue SIGMA = 1.0 LOW_T = 0.25 * 255 HIGH_T = 0.1 * 255 def gauss(y,x,sigma): value = math.exp(-(x**2+y**2)/(2*sigma**2)) return value/(2*math...

clazy-coder.tistory.com

예전에 개발한 Canny Edge Detection을 수정한 버전이다.

코드

 

GitHub - ClazyCoder/PyCV: Computer Vision Library

Computer Vision Library. Contribute to ClazyCoder/PyCV development by creating an account on GitHub.

github.com

수정된 코드는 Convolution 부분을 행렬연산으로 치환하여 더 빠른 속도를 보여준다.

이전의 코드는 Convolution시 영상 내부의 픽셀에 대해서만 연산을 수행했기 때문에, Kernel크기가 커지면 영상 테두리 쪽의 일부 픽셀은 무시되었다.

수정한 코드는 Zero-padding을 Kernel 크기 별로 원본 영상에 추가하여 연산을 수행하므로 모든 픽셀을 Convolution에 포함시킨다.

왼쪽: 원본 이미지, 오른쪽: 결과 이미지 (T_low=10, T_high=30)

반응형

'영상처리' 카테고리의 다른 글

Distance Transform  (0) 2021.04.09
K-MEANS Algorithm On Color Image  (0) 2021.04.09
Canny Edge Detection (Python)  (0) 2020.04.20
Image Rotation(Python)  (0) 2020.03.23

+ Recent posts