YOLO-World: 실시간 Zero-Shot 객체 탐지 모델

1. YOLO-World란?

YOLO-World는 Zero-Shot Object Detection 모델로, 별도의 데이터 학습 없이 다양한 객체를 실시간으로 탐지할 수 있음. 기존 객체 탐지 모델보다 20배 빠른 속도를 제공하며, 저가형 GPU(Nvidia T4)에서도 원활하게 동작함.


2. 기존 객체 탐지 모델과의 차이점

기존 객체 탐지 모델(Faster R-CNN, SSD, YOLO 등)은 사전에 학습된 데이터셋(예: COCO, 80개 클래스) 내에서만 탐지가 가능함. 새로운 객체를 탐지하려면 추가 데이터셋을 구축하고 학습해야 하는 단점이 있음.

이를 해결하기 위해 Zero-Shot Object Detection 모델이 등장했으며, YOLO-World는 기존 모델 대비 속도가 빠르고 정확도가 높은 특징을 가짐.

비교: Grounding DINO vs. YOLO-World

  • Grounding DINO: Zero-Shot 탐지가 가능하지만 속도가 느림 (이미지 1장당 1초)
  • YOLO-World: Grounding DINO와 동일한 정확도를 유지하면서 20배 빠른 속도 제공

3. YOLO-World 아키텍처 (Prompt-then-Detect 방식)

YOLO-World는 크게 3가지 주요 구성 요소로 이루어짐.

  1. YOLO Detector: 입력 이미지에서 멀티스케일 특징 추출
  2. CLIP Text Encoder: 입력된 텍스트(탐지할 객체 명)를 임베딩 벡터로 변환
  3. Cross-Modality Fusion Network: 이미지와 텍스트 특징을 결합하여 객체 탐지 수행

YOLO-World는 기존 Transformer 기반 탐지 모델과 달리 경량화된 CNN 백본을 사용하여 속도를 향상시킴. 또한 Prompt-then-Detect 방식을 도입하여 텍스트 임베딩을 한 번만 생성하고 재사용함으로써 실시간 탐지를 가능하게 함.


4. YOLO-World 사용법 (Google Colab에서 실행하기)

  1. Colab에서 GPU 설정 확인 (nvidia-smi 실행)
  2. 필요한 라이브러리 설치
    • roboflow-inference: YOLO-World 실행 패키지
    • supervision: 탐지 결과 필터링 및 시각화
  3. 모델 불러오기
    • YOLO-World는 S, M, L, X 4가지 크기로 제공되며, L 버전 사용 가능
  4. 객체 탐지를 위한 클래스 설정 (set_classes)
    • 예: "person, backpack, dog, eye, nose, ear, tongue"
    • CLIP 모델을 이용해 클래스 리스트를 임베딩 벡터로 변환
  5. 이미지에서 객체 탐지 실행 (infer)
    • 탐지 결과를 supervision을 활용해 시각화

5. 성능 향상을 위한 기법들

(1) 낮은 Confidence Threshold 설정

  • COCO 데이터셋 외의 객체를 탐지할 때 Confidence Threshold를 0.03까지 낮추면 더 많은 객체 탐지가 가능함.
  • 낮은 Confidence Threshold를 설정할 경우 탐지된 객체 수가 증가하지만, 중복 탐지 문제가 발생할 수 있음.

(2) 중복 탐지 문제 해결 (Non-Max Suppression, NMS)

  • 여러 개의 바운딩 박스가 하나의 객체를 나타내는 경우 NMS 기법을 사용하여 중복 탐지 제거
  • IOU(Intersection over Union) 임계값 설정 (예: 0.1)

6. 동영상에서 객체 탐지하기

YOLO-World는 이미지뿐만 아니라 실시간 비디오 스트림 처리에도 최적화됨.

  • Nvidia V100 GPU에서 최대 50FPS 성능 제공
  • Nvidia T4 GPU에서도 15FPS 유지 가능

(1) 특정 객체 탐지 실험 - "노란색 채워진 구멍" 탐지

  • 특정 객체를 탐지할 때 색상(Color), 위치(Position) 정보를 활용
  • "yellow filling"과 같은 프롬프트를 사용하여 색상을 기준으로 탐지 가능

(2) 불필요한 객체 필터링 (Relative Area Filtering)

  • 큰 객체가 탐지될 경우 객체 면적을 기준으로 필터링
  • 영상 해상도를 기준으로 객체 크기를 계산하여 일정 비율 이상인 경우 탐지 제외

7. 결론

YOLO-World는 Zero-Shot Object Detection을 실시간으로 수행할 수 있는 혁신적인 모델로, 기존 모델보다 빠르고 정확하며 유연한 탐지 기능을 제공함.

  • 사전 학습 없이 다양한 객체 탐지가 가능
  • 실시간 비디오 스트림 처리 최적화
  • CLIP 기반 텍스트 임베딩을 활용한 Prompt-then-Detect 방식
  • 낮은 Confidence Threshold 및 NMS 적용을 통한 탐지 성능 개선

💡 YOLO-World는 다양한 산업에서 즉시 적용 가능하며, 실시간 객체 탐지가 필요한 모든 분야에 활용될 수 있음!

'AI > Computer Vision' 카테고리의 다른 글

numpy clip  (0) 2025.04.06
torch.cat  (0) 2025.04.06
구글 PailGemma  (0) 2025.03.25
체류 시간 분석  (0) 2025.03.24

+ Recent posts