11.2.1 캐니 엣지 검출 방법
1986년 J. Canny는 “A Computational Approach to Edge Detection”이라는 제목의 논문을 통해서 엣지 검출을 최적화 문제 관점으로 접근하는 방법을 소개하였다. 영상에서 그래디언트 크기가 큰 부분이 엣지일 가능성이 높다는 사실에만 만족한 것이 아니라, 어떻게 해야 보다 정확하고 깔끔한 형태의 엣지를 찾을 수 있을지에 대한 고민을 풀어나가는 방법을 제시한 것이다. J. Canny는 좋은 엣지 검출기의 조건으로 다음 세 가지 항목을 제시하였다.
• 정확한 검출Good detection: 엣지가 아닌 점을 엣지로 찾거나 또는 엣지인 점을 검출하지 못하는 확률을 최소화해야 한다.
• 정확한 위치Good localization: 실제 엣지의 중심을 찾아야 한다.
• 단일 엣지Single edge: 하나의 엣지는 하나의 점으로 표현되어야 한다.
J. Canny는 이러한 조건을 만족하는 새로운 형태의 엣지 검출 방법을 제안하였으며, 이를 캐니 엣지 검출기Canny Edge Detector라고 부른다. 11.1절에서 설명한 소벨 엣지 검출 방법이 단순히 그래디언트 크기만을 이용하여 엣지 픽셀을 찾는 방법이라면, 캐니 엣지 검출기는 그래디언트의 크기와 방향을 모두 고려하여 보다 정확하게 엣지 위치를 찾는다. 또한, 엣지의 진행 방향에 또 다시 엣지가 나타날 가능성이 높다는 점을 고려하여 그래디언트 크기가 다소 약하게 나타나는 엣지 픽셀도 놓치지 않고 찾을 수 있다.
11.1절에서 살펴보았던 마스크 기반의 엣지 검출 방식이 단순히 마스크 연산만으로 엣지를 검출하였던 것과 달리, 캐니 엣지 검출기는 내부적으로 다양한 연산이 복합적으로 수행된다. 이 책에서는 캐니 엣지 검출기에서 수행되는 연산을 크게 네 개의 과정으로 구분하여 설명할 것이다. 그림 11-9는 캐니 엣지 검출기에서 수행되는 내부 연산들을 나타낸다. 이제부터 각각의 연산에 대해 구체적으로 알아보자.