Post

왜 트래킹이 필요한가: KCF / CSRT와 감지 결합 전략

실시간 비전 안정화를 위해 KCF/CSRT 트래커와 감지 하이브리드를 설계하는 방법

왜 트래킹이 필요한가: KCF / CSRT와 감지 결합 전략

문제 정의

객체 트래킹은 영상에서 이미 감지된 객체를 시간 축을 따라 동일한 ID로 추적하는 문제다. 핵심은 “계속 찾는 것”이 아니라 같은 대상을 놓치지 않는 것이다.

요약 한 줄 트래킹은 정확도를 높이기 위한 기술이 아니라 시스템을 안정화하기 위한 기술이다.


1) 감지 vs 트래킹: 역할을 분리해야 하는 이유

정의

  • 객체 감지(Detection): 각 프레임마다 객체 위치를 새로 찾는다
  • 객체 트래킹(Tracking): 이전 프레임 정보를 이용해 위치를 이어간다

직관

매 프레임 감지는:

  • 연산 비용이 크고
  • 결과가 프레임마다 흔들린다

트래킹은:

  • “이전 위치 근처에 있을 것”이라는 가정을 활용해
  • 계산량을 줄이고 연속성을 만든다

오해 포인트

  • 트래킹이 감지를 대체한다고 생각함
  • 감지 정확도가 낮은 문제를 트래킹으로 해결하려 함

언제 쓰는가 / 쓰지 말아야 하는가

  • ✔ 실시간 영상, CCTV, 웹캠
  • ✘ 단일 이미지 처리, 객체가 자주 사라지는 환경

구현 체크리스트

  • 감지와 트래킹을 서로 다른 역할로 설계
  • 트래킹 실패 시 감지로 복구 경로 확보

요약

감지는 “초기화”, 트래킹은 “유지”다.


2) KCF와 CSRT의 핵심 차이

KCF (Kernelized Correlation Filter)

정의 상관 필터를 이용해 가장 비슷한 패턴 위치를 빠르게 찾는다.

직관

  • 이전 프레임의 객체 패턴을 템플릿으로 사용
  • FFT 기반 연산 → 매우 빠름

장단점

  • 장점: 속도 매우 빠름, CPU 친화적
  • 단점: 가림·형태 변화에 약함

CSRT (Discriminative Correlation Filter with Channel and Spatial Reliability)

정의 공간적 신뢰도와 채널 가중치를 함께 고려하는 상관 필터

직관

  • “어느 부분을 믿을 수 있는가”를 함께 학습
  • 배경 영향과 드리프트를 줄인다

장단점

  • 장점: 정확도 높음, 가림에 상대적으로 강함
  • 단점: KCF보다 느림

언제 쓰는가 / 쓰지 말아야 하는가

  • KCF: FPS 최우선, 객체 변화 적음
  • CSRT: 안정성 최우선, 부분 가림 가능성 있음

요약

KCF는 속도, CSRT는 신뢰도를 산다.


3) 트래킹의 현실적 문제와 대응

(1) 드리프트(Drift)

문제 트래커가 점점 배경으로 이동

대응

  • N프레임마다 감지로 위치 재보정
  • 신뢰도 점수 하락 시 트래킹 중단

(2) 가림(Occlusion)

문제 사람이 다른 객체 뒤에 가려짐

대응

  • CSRT 사용
  • 가림 시 감지 재시도

(3) 스케일 변화

문제 객체가 카메라에 가까워지거나 멀어짐

대응

  • scale adaptation 지원 트래커 선택
  • min/max box 크기 제한

요약

트래킹은 항상 실패를 전제로 설계해야 한다.


4) 감지 + 트래킹 하이브리드 전략

정의

  • 초기 및 주기적 위치 보정: 감지
  • 중간 프레임 연속 추적: 트래킹

직관

감지는 “비싸지만 정확”, 트래킹은 “싸지만 누적 오차 존재”. 둘을 섞어야 실무에서 버틴다.

하이브리드 파이프라인 (의사코드)

1
2
3
4
5
6
7
8
9
for each frame:
    if frame_id % N == 0 or tracker_failed:
        boxes = detect_objects(frame)
        init_tracker(boxes)
    else:
        boxes = tracker.update(frame)

    if tracking_confidence_low:
        force_detection_next_frame
  • N: 5~15 프레임 사이에서 환경별 튜닝
  • tracker_failed 기준 명확히 정의 필요

요약

트래킹은 단독이 아니라 감지와 결합될 때 완성된다.


5) KCF vs CSRT 선택 체크리스트

기준KCFCSRT
FPS★★★★☆★★☆☆☆
안정성★★☆☆☆★★★★☆
가림 대응약함상대적 강함
CPU 환경적합가능
실무 기본값조건부권장

실무 적용 시 추가로 필요한 요소

  • 재식별(Re-ID): 트래킹 끊긴 후 동일 객체인지 판단
  • 멀티 객체 관리: ID 충돌 방지
  • 신뢰도 스코어링: 자동 재감지 트리거
  • 카메라 이동 보정(PTZ, 모바일)

최종 요약

  • 트래킹은 성능이 아니라 안정성을 위한 기술
  • KCF = 빠름, CSRT = 정확
  • 실무에서는 감지와 반드시 결합해야 한다

다음 액션 플랜 (5줄)

  1. 매 프레임 감지를 제거한다
  2. KCF로 기본 트래킹을 붙인다
  3. 드리프트 발생 지점을 기록한다
  4. CSRT와 하이브리드 전략을 적용한다
  5. 재식별 필요 여부를 판단한다

This post is licensed under CC BY 4.0 by the author.