1 minute read

Object Detection란:

  • 객체 검출(Object Detection)은 이미지나 비디오 내에서 사람, 자동차, 동물 등 특정 객체를 찾아내고, 그 위치를 표시(보통 직사각형 바운딩 박스로)하는 작업

YOLO:

  • YOLO (You Only Look Once)는 객체 검출 분야에서 널리 알려진 실시간 알고리즘
  • YOLO는 “한 번만 보고 판단한다 (You Only Look Once)”는 뜻으로, 이미지 전체를 한 번에 처리하여 객체를 검출하는 모델

YOLO의 핵심 아이디어:

  • 이미지 분할: 입력 이미지를 S×S 그리드로 나눕니다.
  • 각 그리드 셀 역할: 각 셀은 그 영역에 객체의 중심이 존재한다면 해당 객체를 인식하고, 바운딩 박스와 - 클래스 확률을 예측합니다.
  • 단일 신경망: 이미지 전체를 한 번에 네트워크에 입력하여 모든 객체의 위치와 종류를 동시에 예측합니다.

YOLO의 동작 방식 (단순화)

  1. 입력 이미지를 CNN(합성곱 신경망)에 넣습니다.
  2. 특징 추출: CNN은 이미지의 특징을 추출해 고수준 표현을 만듭니다.
  3. 그리드 예측: 마지막 출력층은 S×S 그리드 셀별로 여러 개의 예측을 수행합니다. 각 셀은 여러 개의 바운딩 박스 후보와 그 박스에 대한 신뢰도(confidence), 그리고 객체가 어떤 클래스에 속하는지 예측합니다.
  4. 결과 처리: 모든 셀의 예측을 모아서, 높은 신뢰도를 가진 바운딩 박스들을 추리고, 겹치는 박스들을 제거(NMS: Non-Maximum Suppression)하여 최종 객체 검출 결과를 얻습니다.

YOLO의 장점

  • 속도: 전체 이미지를 한 번에 처리하기 때문에 매우 빠릅니다. 실시간 객체 검출에 적합합니다.
  • 전체 문맥 이해: 이미지 전체를 보고 예측하기 때문에, 주변 환경(context)을 고려한 객체 인식이 가능합니다.

YOLO의 단점

  • 작은 객체 검출 어려움: 그리드 셀 크기 제한 때문에 작은 객체나 근접한 객체의 구별이 어려울 수 있습니다.
  • 정확도: 일부 상황에서 두 단계 접근 방식(two-stage)인 Faster R-CNN보다 정확도가 떨어질 수 있습니다.