Study/Computer Vision, Image Processing

[Computer Vision / Image Precessing] Feature Detection & Matching

Alex An 2021. 12. 13. 14:15

특징 (Feature)

특징은 영상에서 나타나는 점, 가장자리 혹은 객체와 같은 특정 구조를 말합니다.

 

 

영상의 산봉우리, 건물의 모서리, 출입문과 같은 특정한 구조가 바로 특징입니다. 이러한 지역 특징들은 특징점(keypoint features)이라고 불리며, 해당 지점을 둘러싼 픽셀 패치의 모양에 의해 기술(describe)됩니다.

 

특징들은 각각의 방향과 지역적인 모양에 따라 매칭(matching)할 수 있으며, 이를 엣지(edges)라고 부릅니다. 또한 이는 영상 시퀀스에서 객체간의 경계와 겹침을 나타내는 좋은 지표가 될 수 있습니다.

 

특징점 (Feature Point)

특징점이란 객체 경계의 방향이 갑자기 변하는 점, 두 개 혹은 그 이상의 엣지의 교차점입니다.

 

 

특징점 검출 및 매칭의 주요 요소

  • Detection(감지, 검출) : 특징점(Feature Point) 식별
  • Description(기술) : 각 특징점 주위 지역 모양은 조명, 변환, 스케일, 평면 회전에 대한 변화에도 불변한 방식으로 기술됩니다. 일반적으로 각 특징점에 대한 Descriptor 벡터를 갖게 됩니다.
  • Matching(매칭) : 유사한 특징을 식별하기 위해 영상 전체에서 기술자(Descriptor)를 비교합니다. 두 영상의 경우 (Xi, Yi) - (Xi', Yi') 쌍을 얻을 수 있는데, 여기서 (Xi, Yi)는 한 영상에서의 특징이고, (Xi', Yi')는 다른 영상에서 이전 영상의 특징과 유사한 특징을 나타냅니다.

 

특징점의 특성

  • 영상 공간에서 잘 정의된 공간(well-defined position)을 가지고 있거나 제대로 지역화(localized)가 되어있습니다.
  • 조명과 밝기 변화에 강합니다. 때문에 고도의 반복성으로 확실하게 계산될 수 있습니다.
  • 효율적인 검출이 가능합니다.

 

특징점 검출 방식

  • 영상 밝기 기반 검출
  • 경계 검출 기반

 

 

특징 기술자 (Feature Descriptor)

특징 기술자영상 내 특징에 대한 정보 혹은 영상의 특징 벡터를 출력하는 알고리즘입니다. 특징점에 대한 정보를 일련의 숫자로 표현하고 하나의 특징점을 다른 특징점들과 구별하는데 사용되는 일종의 "지문" 역할을 합니다.

 

 

기술자는 영상 변환에 불변이므로 어떠한 방식으로든 이미지가 변환되더라도 그 특징을 다시 찾을 수 있습니다. 일반적으로 영상에서 특징점을 검출한 후, 모든 특징점에 대한 기술자를 계산합니다. 기술자는 두 개의 클래스로 분류할 수 있습니다.

 

  • 지역 기술자(Local Descriptor) : 하나의 특징점의 주변 지역 정보를 간략하게 표현한 것입니다. 특징점의 주변 지역에 한해서 유사한 정보(모양)를 보이기 때문에 특징점을 매칭하는데 적합합니다.
  • 전역 기술자(Global Descriptor) : 전체 영상에 대한 정보를 기술합니다. 영상의 일부가 변형되면 결과에 영향을 미쳐 오류가 발생할 수 있으므로 강력(robust)하지 않습니다.

 

관련 알고리즘

  • SIFT (Scale Invariant Feature Transform)
  • SURF (Speeded Up Robust Feature)
  • BRISK (Binary Robust Invariant Scalable keypoints)
  • BRIEF (Binary Robust Independent Elementary Features)
  • ORB (Oriented FAST and Rotated BRIEF)

 

 

특징점 매칭 (Feature Matching)

특징점 매칭은 동일한 영역, 객체를 나타낸 두 영상 사이의 대응 관계를 설정하는 작업입니다. 영상 매칭을 위한 일반적인 접근 방법은 기술자의 정보를 통해 특징점 집합을 검출하는 것입니다. 두 개 이상의 영상에서 특징점들과 그것들의 기술자를 검출한 이후 다음 단계는 영상 간 예비 특징점 쌍들을 설정하는 것입니다.

 

 

일반적으로, 특징점 매칭의 성능은 기본 특징점과 관련 기술자의 종류에 따라 달라집니다. 따라서 영상의 내용에 적합한 특징점 검출기와 기술자를 사용해야 합니다. 예를 들어, 영상에 박테리아 세포가 포함되어 있는 경우 엣지 검출기보다는 blob 검출기를 사용해야 합니다. 하지만 영상이 도시 전경이라면, 코너 검출기는 건물들을 찾는데 적합합니다. 또한 영상 열화(image degradation)를 방지하는 검출기와 기술자를 선택하는 것이 중요합니다.

 

 

(원 저작자에게 이용 허락을 받고 옮긴 글입니다.)

https://medium.com/data-breach/introduction-to-feature-detection-and-matching-65e27179885d

 

Introduction To Feature Detection And Matching

Feature detection and matching is an important task in many computer vision applications, such as structure-from-motion, image retrieval…

medium.com