Local feature tracking을 하는 방법에 대해 설명해주세요.

SJ·2025년 10월 15일

Local feature tracking

  • 정의

Local feature tracking은 비디오나 연속된 사진에서 특징인 지점들을 찾아내고, 프레임이 바뀌어도 이 지점들이 어디로 움직였는지 계속해서 추적하는 기술입니다.

  • 과정

    • 1단계: 특징점 찾기
      가장 먼저, 이미지에서 추적할 만한 의미 있는 점을 찾아야 합니다.
      주변과 확연히 구분되고, 식별하기 쉬운 지점을 우리는 의미 있는 점이라고 합니다.

    • 2단계: 특징점 묘사
      특징점을 찾았다면, 이제 각 특징점이 어떻게 생겼는지 Descriptor를 만들어줘야 합니다.
      우리가 잡은 의미 있는 점 근처와의 관계를 보통 descriptor로 저장합니다.

    • 3단계: 특징점 매칭
      이전 이미지에서 찾은 특징점들의 프로필과 새로 들어온 이미지에서 찾은 특징점들의 프로필을 비교해서 같은 지점까지 짝을 맞춰줍니다.

      여기까지는 저번 게시물에서 알아보았던 Local feature matching과 다를게 없습니다.
      하지만 이것을 동영상이나 연속적으로 들어오는 사진에서 한다면 우리는 의미있는 점의 변화를 계속해서
      추적하는 것이기 때문에 Local feature tracking이라고 합니다.


    Motion model로 어떤 것을 사용할 수 있을까요?

    우리가 local feature matching을 처음부터 수행하면 계산 속도가 들어오는 frame을 못 따라오거나 matching이 실패할 수 있습니다. 그렇기 때문에 Motion model을 통해 움직임을 예측하여 계산의 효율성을 높여주기도 합니다.
    주로 사용되는 모델은
    등속도 모델: 이전에 움직이던 속도와 방향 그대로 움직일 것이라고 가정한 가장 단순한 모델

    등가속도 모델: 속도의 변화까지 고려하여 점점 빨라지거나 느려지는 추세 그대로 움직일 것이다라고 예측한 모델

    2가지가 있습니다. 보통 등속도 모델을 많이 사용하는 것 같습니다.

    Optical Flow 방식 중 어떤 것을 사용할 수 있을까요?

    Optical flow는 물체의 움직임을 픽셀 단위로 추적하여 '속도 벡터'로 나타내는 기술
    한 픽셀이 다음 프레임에서 어느 방향으로 얼마나 빠르게 이동했는지 알려주는 가상의 화살표를 그려냄

    • 핵심 원리: 추적 대상의 특정 점은 다음 프레임으로 넘어가도 그 밝기가 변하지 않는다

    Optical flow는 모든 픽셀을 계산하거나 특징점을 뽑아서 움직임을 추적할 수 있는데
    실시간 객체 추적이나 SLAM처럼 속도가 중요한 분얄에서는 특징점을 뽑아서 진행하고 정확한 결과가 중요한 곳에서는 모든 픽셀의 움직임을 tracking할수 있습니다.

    Templete Tracking을 설명해주세요.

    Templete tracking은 특징점 주변 사진 조각을 잘라 픽셀의 밝기를 비교하여 가장 비슷한 부분을 찾는 방식입니다.
    이 방식은 조명의 변화나 형태의 변화가 발생한 경우 정확도가 떨어질 수 있다는 단점이 있습니다.
    방정식으로 풀어서 쓰냐 아니면 잘라서 직접 픽셀값 비교하냐의 차이로 볼 수 있겠습니다.

profile
student

0개의 댓글