Object Re-identification (Re-ID)
객체 재식별(Re-ID)이 카메라 뷰 전반에 걸쳐 신원을 일치시키는 방법을 배우십시오. 강력한 시각적 추적을 위해 Ultralytics YOLO26과 BoT-SORT를 사용하는 방법을 알아보십시오.
객체 재식별(Re-ID)은 서로 겹치지 않는 다양한 카메라 뷰 전반에 걸쳐 또는 장기간에 걸쳐 특정 객체나 개인을 매칭하도록 설계된 computer vision (CV)의 특수한 작업입니다. 표준 object detection이 이미지에 "사람" 또는 "자동차"가 포함되어 있음을 식별하는 것과 같이 엔티티의 클래스를 인식하는 데 초점을 맞추는 반면, Re-ID는 시각적 외형을 기반으로 어떤 특정 사람인지 또는 자동차인지 확인함으로써 한 단계 더 나아갑니다. 이 기능은 단일 카메라로 전체 영역을 커버할 수 없는 대규모 환경에서 단절된 시각적 관측값 사이를 효과적으로 연결하여 이동에 대한 응집력 있는 내러티브를 생성하는 데 필수적입니다.
재식별 작동 원리#
Re-ID의 핵심 과제는 조명, 카메라 각도, 포즈 및 배경 혼잡의 변화에도 불구하고 정체성 일관성을 유지하는 것입니다. 이를 달성하기 위해 시스템은 일반적으로 딥 뉴럴 네트워크를 포함하는 다단계 파이프라인을 사용합니다.
- 특징 추출: 객체가 감지되면 convolutional neural network (CNN)이 이미지 자르기를 분석하여 embedding으로 흔히 알려진 특징 벡터를 생성합니다. 이 벡터는 의류 텍스처나 차량 색상과 같은 객체의 고유한 시각적 특성을 나타내는 밀집된 수치 표현입니다.
- 메트릭 학습: 기본 모델들은 metric learning 기법을 사용하여 학습됩니다. 목표는 동일한 객체의 임베딩이 벡터 공간에서 수학적으로 가깝게 위치하도록 하고, 서로 다른 객체의 임베딩은 멀리 떨어지도록 하는 것입니다. 이러한 관계를 학습하기 위해 Siamese neural networks와 같은 특수한 아키텍처가 자주 사용됩니다.
- 유사도 매칭: 배포 과정에서 시스템은 쿼리 객체의 임베딩을 저장된 신원 갤러리와 비교합니다. 이 비교에는 주로 cosine similarity 또는 Euclidean distance 계산이 포함됩니다. 유사도 점수가 미리 정의된 임계값을 넘어서면 시스템은 매칭을 확인합니다.
Re-ID 대 객체 추적#
비전 파이프라인에서 상호 보완적이면서도 구별되는 역할을 수행하므로 Re-ID를 object tracking과 구분하는 것이 중요합니다.
- 객체 추적: 이 프로세스는 시간적 연속성에 의존합니다. Kalman Filter와 같은 알고리즘은 현재 속도와 궤적을 기반으로 바로 다음 프레임에서 객체의 미래 위치를 예측합니다. 인접 프레임의 감지 결과를 연결하기 위해 종종 Intersection over Union (IoU)를 사용합니다.
- 재식별: Re-ID는 시간적 연속성이 깨질 때 매우 중요합니다. 이는 객체가 장애물 뒤에 가려지는 폐색(occlusion) 발생 시 또는 객체가 한 카메라의 시야를 벗어나 다른 카메라로 들어갈 때 발생합니다. Re-ID는 위치 기록이 아닌 외형을 기반으로 신원을 다시 확립하여 강력한 multi-object tracking (MOT)을 가능하게 합니다.
실제 애플리케이션 사례#
단절된 뷰 전반에서 정체성을 유지하는 능력은 다양한 산업 분야에서 정교한 분석을 가능하게 합니다.
- 스마트 시티 교통 관리: AI in smart cities의 맥락에서 Re-ID를 사용하면 도시 전역의 교차로 네트워크를 이동하는 차량을 시립 시스템이 추적할 수 있습니다. 이는 license plate recognition에만 의존하지 않고 평균 이동 시간을 계산하고 신호등 주기를 최적화하는 데 도움을 줍니다.
- 소매점 고객 분석: 소매업체들은 쇼퍼의 행동을 이해하기 위해 Re-ID를 활용합니다. 매장 내 다양한 통로에서 고객이 목격된 기록을 연결함으로써 매장은 인기 경로의 heatmaps를 생성할 수 있습니다. 이는 고립된 상호작용뿐만 아니라 전체 고객 여정에 대한 인사이트를 제공하여 optimizing store layouts과 인력 배치 수준을 최적화하는 데 도움을 줍니다.
Re-ID 기능을 활용한 추적 구현#
최근의 비전 AI 워크플로우는 종종 고성능 검출기와 Re-ID 개념을 활용하는 추적기를 결합합니다. YOLO26 모델은 외형 특징을 활용하여 트랙 일관성을 유지하는 BoT-SORT와 같은 추적기와 원활하게 통합될 수 있습니다. 데이터셋과 학습 파이프라인을 효율적으로 관리하려는 사용자를 위해 Ultralytics Platform은 주석 및 배포를 위한 통합 인터페이스를 제공합니다.
다음 예제는 Ultralytics Python 패키지를 사용하여 자동으로 정체성을 유지하면서 객체 추적을 수행하는 방법을 보여줍니다.
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# Track objects in a video file
# The 'persist=True' argument is vital for maintaining IDs across frames
# BoT-SORT is a tracker that can utilize appearance features for Re-ID
results = model.track(
source="https://www.ultralytics.com/blog/ultralytics-yolov8-for-speed-estimation-in-computer-vision-projects",
tracker="botsort.yaml",
persist=True,
)
# Print the unique ID assigned to the first detected object in the first frame
if results[0].boxes.id is not None:
print(f"Tracked Object ID: {results[0].boxes.id[0].item()}")안정적인 성능을 위해 이러한 모델을 학습하려면 고품질의 training data가 필요합니다. 임베딩의 변별력을 세부적으로 조정하기 위해 특정 Re-ID 서브 모듈을 학습하는 동안 triplet loss와 같은 기법이 자주 적용됩니다. Re-ID 시스템이 잘못된 매칭을 방지하는 성능을 평가할 때 precision and recall의 세부 사항을 이해하는 것도 매우 중요합니다.






