컴퓨터비전 - 8(SIFT 상세)

박승현·2023년 10월 9일
0

컴퓨터비전

목록 보기
8/15
post-thumbnail

SIFT 상세

  • SIFT 단계
    • 각각의 영상에서 특징점 찾기
    • 특짐정 매칭
    • 매칭된 점을 통해 영상의 차이를 계산해 align
  • 그 후 명도를 맞춰주는 과정을 실행해줌

  • 특징점은 다른 영상과의 분리되어 독립적으로 찾아야함
  • 그 후 특징을 잘 표현하는 기술자를 사용해 매칭

사용 분야


요구사항

  • Illumination
  • Scale
  • Rotation
  • Affine
  • 밑의 2개는 헤리스 코너에서도 만족, 위의 2개까지도 만족해야 함 -> SIFT

SIFT의 4단계

  • keypoints 검출
  • 키포인트를 중심으로 그레디언트의 방향을 분석 -> dominant orientation
  • 위의 정보들을 기술자(descriptor)로 정리
  • 기술자를 사용해 여러 영상에서 특징점을 매칭

키포인트 검출

  • DOG에서의 local maxima/minima 찾기
  • 여러개의 스케일 영상에서 시그마 값을 다르게 설정한 여러개의 가우시안 필터를 적용한 영상을 만들고 이들의 차이점으로 만든 영상이 DOG영상
  • DOG에서의 주변 영역을 통해 극점(maxima/minima)를 찾음
  • 2차 미분한 영상에서 영교차되는 지점이 명암차이가 많은 지점이었음(코너)
    • 각각의 피라미드 영상에서 다른 시그마로 가우시안 필터를 적용해야함 이는 오랜 시간이 걸림
    • 라플라시안 필터를 사용하면 빠르게 가능
    • 시그마의 차이로 라플라시안필터를 적용해 빼면 빠르게 가능


키포인트 검출

  • DOG영상이 5개일때 1,2,3번을 겹쳐 2번 DOG의 키포인트를 검출할 수 있음
  • 2번의 가운데 X값이 해당 DOG의 주변 8개와 주변 DOG(1,3번)의 주변 9개씩 18 총 26개중 최소, 최대일때 X지점을 키포인트라고 한다

스케일에 따른 키 포인트

  • 다른 스케일의 같은 지점에서 동일하게 키포인트가 검출되어야 스케일의 변화에도 유지되는 키포인트후보 영역
  • 후보 영역인 이유는 조명에 따라 다른 스케일에서 많은 키포인트가 검출될 수 있음
  • 명암값이 작은곳은 키포인트 값을 제거함
  • 라플라시안 필터를 적용하는 과정에서 엣지도 키포인트로 검출 될 수 있음 -> 엣지에 해당하는 키포인트도 제거

dominant orientation검출

  • 각각의 키포인트에 기술자를 부여하기 위해
  • 그레디언트를 사용(magnitude(크기) and orientation(방향))
  • 키포인트를 기준으로 64개의 픽셀에서 각각의 그레디언트(orientation)를 구함
    • 아크탄젠트를 8개의 방향으로 나누어서 히스토그램 작성
    • 키포인트의 주변 64개의 픽셀에서 8개의 방향중 어느 방향이 가장 많은지 분석 -> 이 히스토그램이 키포인트의 기술자로 사용됨
  • 픽셀을 16x16개로 확장하고 이것을 4x4블럭 16개로 나누고 4x4블럭 각각마다 8개의 방향의 히스토그램으로 작성하는 것이 일반적인 SIFT알고리즘의 기술자
    • 각 블럭마다 8방향의 히스토그램이 있음
    • 8x16 = 128차원
    • 두개의 영상에서 키포인트간 128개의 값을 비교해서 차이가 가장 작은 키포인트끼리 매칭하는것

사용 예시

  • 간판 인식

  • 파노라마

  • 파노라마2

    • 카메라를 고정하고 사람이 이동해 동일한 사람이 여러명 나오는 것처럼 보이게 함
profile
KMU SW

0개의 댓글