YOLO (v1→v11)

Redmon 2016→2024 · 논문

한 줄 요약 — “You Only Look Once”는 물체 검출을 단 한 번의 CNN 순전파로 풀리는 단일 회귀 문제로 재구성하여, SLAM 시스템이 시맨틱 및 동적 물체 추론을 위해 가장 흔히 사용하는 실시간 검출 계열을 확립했습니다.

문제

YOLO 이전에는 물체 검출이 분류기를 재활용하는 방식으로 이루어졌습니다: DPM은 모든 위치와 스케일에 걸쳐 분류기를 슬라이딩시켰고, R-CNN 계열은 영역 제안(region proposal)을 생성한 뒤 각각을 분류하고, 후처리에서 경계 상자를 정제, 중복 제거, 재점수화했습니다. 이런 복잡한 파이프라인은 느렸으며 — 카메라 프레임 속도에 훨씬 못 미쳤고 — 각 구성 요소가 별도로 학습되기 때문에 최적화하기도 어려웠습니다. 로보틱스에는 단일 학습 목적 함수로 한 번의 패스, 영상 속도로 동작하는 검출이 필요했습니다.

방법 및 아키텍처

λcoordi=0S2j=0B1ijobj[(xix^i)2+(yiy^i)2]+λcoordi=0S2j=0B1ijobj[(wiw^i)2+(hih^i)2]+i=0S2j=0B1ijobj(CiC^i)2+λnoobji=0S2j=0B1ijnoobj(CiC^i)2+i=0S21iobjcclasses(pi(c)p^i(c))2\begin{aligned} & \lambda_{\text{coord}} \sum_{i=0}^{S^2} \sum_{j=0}^{B} \mathbf{1}_{ij}^{\text{obj}} \left[ (x_i - \hat{x}_i)^2 + (y_i - \hat{y}_i)^2 \right] + \lambda_{\text{coord}} \sum_{i=0}^{S^2} \sum_{j=0}^{B} \mathbf{1}_{ij}^{\text{obj}} \left[ \left(\sqrt{w_i} - \sqrt{\hat{w}_i}\right)^2 + \left(\sqrt{h_i} - \sqrt{\hat{h}_i}\right)^2 \right] \\ & + \sum_{i=0}^{S^2} \sum_{j=0}^{B} \mathbf{1}_{ij}^{\text{obj}} (C_i - \hat{C}_i)^2 + \lambda_{\text{noobj}} \sum_{i=0}^{S^2} \sum_{j=0}^{B} \mathbf{1}_{ij}^{\text{noobj}} (C_i - \hat{C}_i)^2 + \sum_{i=0}^{S^2} \mathbf{1}_{i}^{\text{obj}} \sum_{c \in \text{classes}} \left(p_i(c) - \hat{p}_i(c)\right)^2 \end{aligned}

w,hw, h의 제곱근을 취하면 작은 상자의 오차가 더 크게 반영됩니다. 분류 손실은 물체를 포함하는 셀에만 적용됩니다. VOC 2007+2012에서 약 135 epoch 학습(배치 64, 모멘텀 0.9, 감쇠 0.0005, 드롭아웃 0.5, 스케일/이동/HSV 증강).

실험 결과

Pascal VOC 2007에서 YOLO는 45 FPS에서 **mAP 63.4%**를, Fast YOLO는 155 FPS에서 **mAP 52.7%**를 달성합니다 — 30Hz DPM의 26.1% mAP와 비교되며, 정확하지만 느린 방법들 중 Fast R-CNN(0.5 FPS에서 70.0% mAP)과 Faster R-CNN(VGG-16, 7 FPS에서 73.2%)이 있습니다. VGG-16 YOLO는 21 FPS에서 66.4%를 기록합니다. 오차 분석에 따르면 Fast R-CNN은 배경 오탐(상위 검출의 13.6%)을 예측할 가능성이 거의 3배 높으며, Fast R-CNN을 YOLO로 재점수화하면 VOC 2007 mAP가 71.8%에서 **75.0%**로 올라갑니다. VOC 2012 테스트에서 YOLO는 57.9% mAP를 기록하며, 주로 작은 물체(bottle, sheep, tv/monitor에서 R-CNN보다 8–10% 낮음)에서 최고 성능에 못 미칩니다. 미술 작품에 대한 일반화에서 YOLO의 person AP는 잘 유지되지만(VOC2007 59.2 → Picasso 53.3, People-Art 45), R-CNN은 붕괴합니다(54.2 → 10.4, 26).

이 45-FPS 동작점은 프레임 단위 검출을 실시간 인지 스택 내에서 처음으로 실용적으로 만들었으며, 이 계열의 진화는 이를 계속 유지시켰습니다 — Transformer 검출기(DETR → RT-DETR)가 나중에 두 축 모두에서 넘어서야 했던 벤치마크를 설정했습니다.

SLAM에서의 의미

물체 검출은 SLAM 파이프라인에 시맨틱을 주입하는 가장 저렴한 방법입니다. YOLO 계열의 실시간 검출기는 동적 물체(사람, 차량)를 마스킹하여 특징 추적을 오염시키지 않도록 하고, 물체 SLAM을 위한 물체 수준 랜드마크를 제공하며(예: CubeSLAM은 2D 검출로부터 3D 큐보이드 랜드마크를 구축합니다), 하류 태스크를 위해 지도에 라벨을 붙이는 데 사용됩니다. SLAM 시스템이 로봇의 온보드 컴퓨터에서 프레임 속도로 “이미지에 무엇이 있는가”를 알아야 할 때, YOLO는 대개 가장 먼저 손이 가는 도구입니다 — 다만 설계상 closed-set이라는 한계가 있으며, 이는 Grounding DINO 같은 open-vocabulary 검출기를 낳은 동기입니다.

관련 문서