Monday, August 21, 2017

Scale-invariant feature transform (SIFT) 개념

Scale-invariant feature transform

  • computer vision에 있어, 이미지의 local feature를 식별;묘사하는 알고리즘
    • 1999년 David Lowe가 특허 출원.
      • Distinctive image features from scale-invariant keypoints (Lowe, 2004)
    • low-level feature 기반 영상 비교에 활용됨
      • 이미지 밝기(intensity) 정보의 low-level gradient가 scale-space에서 어느 방향으로 향하는 것인가만을 살펴보는 방식
      • 즉, gradient 방향성에 대한 히스토그램 특성을 128차원 벡터로 표현
  • 이미지를 feature vector 집합으로 transform.
    • each of which is invariant to image translation, scaling, and rotation, partially invariant to illumination changes and robust to local geometric distortion
  • 다음 4개 step을 통해, 특정 object에 대한 descriptor를 생성
    • Scale-space extrema를 찾기
      • difference of gaussian (DoG)를 이용하여, 의미없는 잡음을 걸러내어 강인한 feature(=extrema)을 찾아냄; 이후 이미지의 scale을 바꿔가면서 동일한 작업을 수행.
      • 즉, 입력 이미지의 scale이 달라지더라도 동일하게 코너점(코너성이 로컬하게 극대이면서 임계값 이상인)으로 검출되는 점을 찾기. -< image pyramid에서 Laplacian(2차 미분값의 합)을 이용하여 급격한 밝기 변화가 일어나는 곳을 찾아냄.
    • Key-point localization & filtering
      • 의미있는 정보들만을 추출.
    • Orientation 할당
      • gradient 방향에 따른 histogram 이용.
    • Descriptor 생성
  • 단점
    • 경계값의 연결, 물체의 일부분이나 전체에 대한 mid/high-level feature에 대해서는 식별할 수 없음.
    • 속도가 느림
    • 원래의 SIFT는 흑백 영상에만 적용 가능; 이후 HSV-SIFT, OpponentSIFT, HueSIFT, W-SIFT, rgSIFT 등이 제안됨.

Other

    No comments:

    Post a Comment

    Windows 10 High DPI 에서 Java application의 Font 조절

    Reference:  How do I run Java apps upscaled on a high-DPI display?  @superuser.com Summarize 1) Find java.exe you installed.  2) Righ...