YOLO(You Only Look One)는 객체 탐지를 하나의 회귀 문제로 만드는 접근으로 기존 객체 탐지 모델에 비해 획기적인 속도 향상을 만들어 낸 모델로. 이후에도 개선된 버전으로 지속적으로 연구가 이어지며 현재까지도 활발하게 사용되고 있다.
논문링크 : https://arxiv.org/pdf/1506.02640v5
1. 서론
객체 탐지의 궁극적인 목표는 사람처럼 이미지를 한번만 훑는 것만으로 어떤 객체가 어디어 어떻게 상호작용하는지 즉시 파악하는 것이다. 기존의 객체 탐지 시스템은 Classifer를 변형시켜 Detection을 수행한다. 예를 들어 DPM의 경우 슬라이딩 윈도우 방식으로 Classifier를 전체 이미지에 걸쳐 반복해서 적용한다. 좀 더 최근 방식인 R-CNN의 경우 먼저 객체가 있을 법한 위치(Region Proposal)를 생성한 뒤, 각 위치에 대해 분류기를 적용한다. 이 후에는 박스를 조정-> 중복 제거 -> 객체와 관계 반영해 점수 조정.. 등 복잡한 후처리 과정을 거친다.
YOLO는 이 모든 과정을 regression(회귀)로 정의한다. 이미지에서 객체의 위치와 클래스 확률을 한번에 예측하며, 전체 이미지를 한 번만 본다. 말 그대로 "You Only Look Once". 주요 특징은 다음과 같다.
- 단순하지만 강력함
* 이미지 resize -> CNN -> result 필터링 , 3단계만 거침
* GPU에서 실시간 속도(45FPS 이상) 달성
* Fast YOLO의 경우 155FPS 도달 - global한 예측
* 이미지를 전체적으로 보고 예측 -> 배경에 대한 오탐지(False Negative)가 적다 - 범용적인 표현 학습
* 여러 도메인(예: 그림, 만화) 등에서도 기존 방식들보다 유연하게 작동 - 정확도는 SOTA급 아님
* 특히 작은 객체에 대한 정확한 위치 예측(Localization)에서 정확도가 떨어지는 편
2. Unified Detection
YOLO는 객체 탐지의 개별적인 구성 요소들을 하나의 단일 신경망으로 통합한다. 이미지 전체를 바탕으로 예측을 수행하며, 모든 클래스의 모든 박스를 한번에 예측한다. 통합된 구조 때문에 end-to-end 학습이 가능하며, 실시간 속도 또한 달성할 수 있다. 이제 어떻게 학습이 되는지 과정을 살펴보자
- 먼저 입력 이미지를 S X S 그리드로 나눈다.
• 객체의 중심이 해당 그리드 셀 안에 있으면, 그 셀이 해당 객체를 탐지하는 역할을 한다 - 그리드로 나뉜 셀로 예측한다.
• 객체의 중심이 해당 그리드 셀 안에 있으면, 그 셀이 해당 객체를 탐지하는 역할을 한다
• 각 셀은 bounding box와 Confidence를 예측한다.
• Confidence : bounding box가 객체를 포함할 확률 X 박스 정확도(IoU)
객체가 없다면, Confidence는 0이 되어야 함
각 셀마다 Bounding box + Confidence값을 예측하는 동시에 클래스의 조건부 확률도 함께 예측한다. 해당 셀이 객체를 포함한다는 전제하에, 각 클래스의 확률을 추정하는 것이다. 여러개의 박스를 예측하더라도 셀 내에서 클래스 확률은 하나만 예측한다. 예측갑을 정리하면 다음과 같다
- (x, y) : 셀 내에서 중심점의 상대적 위치
- (w, h) : 이미지 전체에서 정규화된 너비와 높이
- Confidence : Pr(Object) × IOU (예측 박스와 GT 간 IOU)
- Pr(Class|Object) : 객체의 클래스 확률
학습시에는 해당 값이 이용되고 추론시에는 Class Specific Confidence Score를 기준으로 한다. 박스가 해당 클래스일 확률, 박스의 위치가 얼마나 정확한지에 대한 점수를 곱해서 계산한다.
$${Confidence Score} = \Pr(\text{Class}_i \mid \text{Object}) \times \Pr(\text{Object}) \times \text{IOU}$$
해당 score를 threshold로 사용해 특정 값 이상인 박스만 사용하고, 겹치는 박스는 NMS로 정리한다.
이제 전체적인 네트워크 구조와 함께 정리해보자
1. 입력 이미지 / 그리드 분할
- 크기 : 448 X 448 X 3(RGB)
- 입력 이미지를 S X S 그리드로 나눔
-> S=7(기본값), 7X7 = 총 49 개 셀 생성
2. 셀 예측 정보
- Bounding box (B개)
기본적으로 B = 2 -> 각 셀 당 2개 박스 예측
• x, y : 박스 중심점 (그리드 셀 내 상대적 위치 -> 0~1)
• w, h : 박스 너비와 높이 (전체 이미지 대비 비율 -> 0~1)
• confidence : 이 박스가 객체일 확률 × 예측된 박스의 IoU
-> 2개 X 5값 = 10 개의 값 - 클래스 확률 (C개)
• VOC 기준으로 C = 20
• 셀 단위로 한 번만 예측
• Pr(Class_i | Object) 형태 → 해당 셀에 객체가 있다면 클래스가 무엇인지 예측
3. 셀 당 예측 벡터
위의 예측 정보를 결합하여 30차원의 벡터를 생성한다
[ x₁, y₁, w₁, h₁, conf₁, x₂, y₂, w₂, h₂, conf₂, class₁, …, class₂₀ ]
- 10개 : 두 박스에 대한 위치 + Confidence 값
- 20개 : 클래스 확률
4. 전체 출력 텐처
S × S × (B×5 + C)
- $7 \times 7 \times (2 \times 5 + 20) = 7 \times 7 \times 30$
-> YOLO 기본 파라미터로 대입 시 - 최종 출력은 [7, 7, 30] 텐서 : 각 셀마다 30개의 예측정보를 담고 있는 구조
네트워크
YOLO의 네트워크는 CNN+FC의 구조로 이루어져 있으며 Convol layer가 이미지 특징을 추출, fully connected layer가 위치 좌표와 클래스 확률을 예측하는 역할을 한다.
YOLO의 네트워크 구조는 GoogleNet에서 영감을 받았지만, Inception module(여러 크기 필터 동시에 적용)은 사용하지 않고 1X1 conv layer 뒤에 3X3 conv layer를 배치하는 구조를 선택했다. 최종 모델은 24개의 conv layer와 2개의 fully conected layer로 구성된다. 따로 언급은 없으나 네트워크 구조 단순화와 연산량 감소를 위한 것으로 보인다. 경량 버전인 Fast YOLO도 함께 제안되었다. Fast YOLO는 conv layer를 24 -> 9로 줄였고, 각 layer의 filter수 또한 적게 구성하였다 (학습/테스트 조건은 동일하게 함)
학습
학습이 이루어지는 과정을 자세하게 알아보자
1. 사전학습 (Pretraining)
사전학습을 통하여 일반적인 이미지의 특징을 먼저 학습한다
- 데이터 : ImageNet (1000-class)
- 해당 네트워크 :
- Convolutional Layer: 20개
- Average Pooling + Fully Connected Layer 추가
2. 모델 구조 변경 (Model convert)
Detection을 위해 이후 구조가 변경된 모델을 추가한다.
- 기존 convol layer에 추가 :
- Convolutional Layer : 4개
- Fully Connected Layer : 2개
-> 해당 가중치는 무작위로 초기화
- 입력 해상도 변경 : 224X224 -> 448X448
-> 더 작은 객체들까지 탐지할 수 있도록 고해상도 input 사용
3. 책임 할당 방식 (Box Responsibility)
셀당 2개 박스를 예측하지만, 실제 학습에는 IoU가 가장 높은 박스 하나만 선택해서 해당 박스에 해당하는 출력값 (bbox+confidence)에만 loss를 걸고 업데이트를 한다. 셀에 객체가 있으면, 그 객체 탐지를 "책임지는 박스"를 하나 선택해서 학습을 시키는 것이 된다. 다른 box들은 해당 객체 학습에서 제외된다.
연구에선 예측하는 출력값을 각각(box1, box2)을 가상의 "predictor"로 표현한다. predictor는 IoU값을 통해 매번 둘 중 하나만 업데이트되면서 predictor 별로 특정 객체(예: 작은 크기, 긴 비율 등)를 탐지하는 역할로 특화(specialization)된다.
추론
학습때와 마찬가지로, 테스트 이미지에 대한 탐지 역시 단 한번의 네트워크로 이루어진다. YOLO는 PASCAL VOC 기준으로 이미지당 98개 바운딩 박스를 예측하고, 각 박스마다 클래스 확률도 함께 예측한다. YOLO는 다른 classifier 방식들과 달리 테스트 시간이 매우 빠르다.
YOLO는 그리드 기반 구조를 통해, 다양한 공간(위치)에서 예측이 이루어지도록 유도된다. 대부분의 경우, 객체가 어느 셀에 속하는지가 명확하므로 해당 셀에서 하나의 박스만 예측하게 된다. 하지만, 큰 객체나 그리드 경계에 걸친 객체는 여러 셀에서 동시에 예측될 수 있다. 이러한 경우, NMS(Non-Maximum Suppression)를 사용해 중복된 박스를 제거할 수 있다. YOLO에서는 NMS가 기존의 Fast R-CNN이나 DPM 만큼 중요하지는 않지만, 적용 시 평균 정확도(mAP)가 2~3% 상승한다.
YOLO의 한계
1. Spatial Constraint
YOLO는 bounding box 예측 시 공간적 제약(spatial constraints)을 강하게 가진다. 왜나하면 각 셀은 최대 2개의 박스만 예측하고, 하나의 클래스만 할당할 수 있기 때문이다. 이러한 공간적 제약은 근접한 객체가 여럿 있는 경우 탐지를 어렵게 만든다.
2. Precision Problem
YOLO는 데이터를 기반으로 박스를 직접 회귀 예측하기 때문에, 낯선 비율 / 위치의 객체에 대해서는 일반화 성능을 기대하기가 어렵다. 또한, 아키텍처 자체가 여러 단계의 다운 샘플링을 포함하므로 추출된 feature가 정밀한 정보를 담지 못해 위치 정확도가 떨어질 수 있다.
3. Loss Problem
YOLO는 detection 성능을 근사하는 loss(MSE)로 학습하지만, 작은 박스와 큰 박스의 오차를 동일하게 취급한다는 한계를 가진다. 이는 큰 박스에서의 위치 오차는 상대적으로 적은 영향을, 작은 박스에서의 오차는 IoU를 크게 떨어뜨릴 수 있다.
3. Comparison to other Detection Systems
객체 탐지는 컴퓨터 비전 분야의 핵심 문제이다. 전통적인 탐지 파이프라인은 일반적으로 다음 과정을 따른다.
- 입력 이미지에서 강한 특징(feature)을 추출 (예 : HOG, SIFT 등)
- 해당 특징을 사용해 분류(classification) 하거나 위치 검출(Localization)을 수행한다.
이러한 classifier나 Localizer는 슬라이딩 윈도우 방식이나 사전 정의된 후보 영역(subect region)을 사용하는 방식을 사용한다. 연구는 YOLO의 탐지 시스템을 다른 SOTA급 탐지 프레임워크들과 비교하면서, 비슷한 점과 다른 점을 강조한다.
DPM(Deformable Parts Model) 과 비교
DPM은 슬라이딩 윈도우 방식을 사용하는 객체 탐지 방법이다. DPM은 다음과 같이 분리된 파이프라인을 사용한다
- 고정된 정적 특징(static features) 추출
- 각 영역 분류
- 점수 높은 영역 대해 바운딩 박스 예측
이해 반해 YOLO는 분리된 모든 요소들을 하나의 CNN으로 대체한다. YOLO 네트워크는 특징 추출, 바운딩 박스 예측, NMS(중복 제거), 문맥을 고려한 추론을 동시에 수행한다. 고정된 특징을 사용하는 대신, 탐지하는 작업에 적합하게 특징 자체도 학습된다. 이러한 통합 구조를 통해 DPM보다 더 빠른 속도와 정확성을 가질 수 있었다.
R-CNN 과 비교
R-CNN과 R-CNN 기반 변형 모델들은 슬라이딩 윈도우 대신 region proposal(영역 제안) 방식을 통해 객체 후보를 찾는다. 기본적인 R-CNN 동작 방식을 살펴보면
- Selective Search 알고리즘 통해 후보 영역 생성
- SVM 통해 박스 분류
- 선형 모델 통해 박스 위치 조정
- NMS로 중복된 탐지 제거
이처럼 복잡한 파이프라인은 각 단계마다 따로 튜닝이 필요하고, 결과적으로도 매우 느리다. 테스트 시 한 장당 40초 이상 걸릴 수도 있다. YOLO는 R-CNN과 일부 유산한 점을 가지고 있다. 예를 들어, YOLO의 각 그리드 셀도 일종의 후보 영역(region proposal)을 생성하고, 해당 영역들을 CNN모델로 특징을 추출해 점수를 메긴다. 하지만 YOLO는 그리드 셀에서 후보 영역을 추출할 떄 공간적 제약(spatial constraint)을 두기 때문에, 동일한 객체에 대해 여러 번 탐지되는 현상을 줄일 수 있다. 또한, YOLO는 전체 이미지당 98개의 후보 영역만 제안하는 반면, R-CNN의 selective search의 경우 약 2000개의 후보 영역을 생성한다. 무엇보다도 YOLO는 이 모든 구성 요소를 하나의 통합 모델로 결합하고, 같이 최적화(jointly optimize) 한다.
Fast / Faster R-CNN 과 비교
Fast R-CNN과 Faster R-CNN은 R-CNN 구조를 개선하면서 연산을 공유하고, selective search 대신 뉴럴 네트워크 기반의 region proposal을 사용하여 속도롸 정확도를 향상시켰다. 하지만 이들 모델도 실시간 성능은 달성하지 못했다. 반면 YOLO는, 이런 탐지 파이프라인 구성 요소들을 하나하나 최적화하려는 방식 자체를 버리고, 애초에 설계부터 속도를 고려해 통합된 구조로 만들어졌다.
Single Class Detectors 와 비교
얼굴이나 사람처럼 단일 클래스를 대상으로 하는 탐지기는 다뤄야 할 클래스의 다양성이 적기 떄문에, 구현 시 최적화에 매우 유리하다. 반면 YOLO는 범용(general) 객체 탐지기로, 다양한 클래스를 동시에 탐지할 수 있도록 학습된다.
Deep MultiBox 와 비교
해당 연구에서는 R-CNN과 달리 selective search 없이, CNN이 직접 관심 영역(region of interest)을 예측하도록 학습한다. confidence 대신 단일 클래스만 예측하도록 조정하면, 단일 객체 탐지도 가능하다.
하지만 MuliBox는 범용 탐지기는 아니다. 그리고 MultiBox 자체는 탐지 시스템 중 일부분만을 담당하며, 이후 image patch classification 과정이 별도로 필요하다. YOLO와 MultiBox 모두 CNN으로 후보 영역을 예측하지만, YOLO는 그 자체로 완전한 탐지 시스템이다.
OverFeat 과 비교
Sermanet 등의 OverFeat 모델은 CNN모델을 학습시켜 위치 정보를 예측하고(Localization), 이후 이 모델을 탐지(detection)에 응용한다. OverFeat은 슬라이딩 윈도우 탐지를 효율적으로 수행하지만, 여전히 분리된 시스템을 가지고 있다.
OverFeat은 탐지 성능이 아니라, 위치 정확도(localization) 중심으로 최적화되어 있다. 또한 DPM처럼 로컬 정보만 보고 예측을 하기 때문에 이미지 전체의 문맥(global context)을 고려할 수 없고, 후처리가 많이 필요하다.
MultiGrasp 와 비교
YOLO는 구조적으로 grasp detection(물체 집을 수 있는 위치 탐지) 연구인 MultiGrasp와 유사하 점이 있다. YOLO의 그리드 기반 후보 영역 예측 구조는 MultiGrasp의 grasp 위치 회귀(regression) 시스템에서 기반한 것이다.
차이점은 grasp detection은 object detection에 비해 훨씬 단순한 작업이라는 것이다. MultiGrasp는 하나의 객체가 포함된 이미지에 대해서 잡을 수 있는(graspable) 영역 하나만 예측하면 되며, 객체의 크기 / 경계 / 위치 또는 클래스 등을 따로 추정할 필요도 없다. 반면 YOLO는 여러 객체에 대해 각각의 바운딩 박스와 클래스 확률을 동시에 예측해야 한다.
4. Experiments
다른 Real-Time System 들과 비교
객체 탐지 분야에서는 기존의 탐지 파이프라인을 빠르게 만드는 연구들이 많이 이루어졌다. 하지만, 실제로 실시간(30FPS 이상) 탐지가 가능한 시스템을 만든 것은 GPU 기반으로 구현된 DPM이 유일했다. 연구는 해당 DPM과 YOLO를 비교하여 성능을 분석한다. 또한, 실시간 성능에 도달하지 못한 다른 연구들의 mAP(정확도)와 속도도 함께 비교해서 객체 탐지 시스템에서의 정확도/속도의 trade-off를 평가한다.
Fast YOLO는 PASCAL 데이터셋 기준 가장 빠른 객체 탐지 시스템이다. Fast YOLO는 52.7%의 mAP를 달성했으며, 이는 이전의 실시간 탐지 방법들에 비해 2배 이상 높은 정확도를 보인다. YOLO의 기본 버전은 63.4%의 mAP에 도달하면서도 여전히 실시간 성능을 유지한다(45 FPS).
또한 연구는 YOLO에 VGG-16을 backbone으로 사용해서 학습하였다. 이 모델은 더 높은 정확도를 보이긴 했지만, YOLO의 기본 모델에 비해 훨씬 느리다. VGG-16 기반 YOLO는 VGG-16을 사용하는 탐지 시스템과 성능 비교에 용이할 수도 있지만, 실시간 성능을 목표로 하는 연구의 주요 목적에는 부합하지 않기 때문에 이후 실험에서는 빠른 모델(YOLO, Fast YOLO)만 중점적으로 다룬다.
PASCAL VOC 2007 기준 오류 분석
YOLO와 SOTA급 탐지기들 사이의 차이를 더 자세하게 살펴보기 위해, 연구는 VOC 2007 데이터셋을 기준으로 세부 결과 분석을 하였다. 연구는 YOLO를 Fast R-CNN과 비교한다. 그 이유는 Fast R-CNN이 PASCAL 데이터셋 기준에서 매우 높은 성능을 보이고, 그 탐지 결과가 공개되어 있기 때문이다. 비교에는 Hoiem의 오류 분석 방법론을 사용한다.
오류 분류 기준 (Hoiem 방식)
테스트 시, 각 클래스(category)별로 top-N 예측 결과를 확인하고, 각 예측을 다음 중 하나로 분류한다
✅ Correct | 올바른 클래스 & IOU > 0.5 |
❌ Localization (Loc) | 올바른 클래스지만 IOU 0.1~0.5 |
❌ Similar | 비슷한 클래스 (예: 고양이 ↔ 호랑이), IOU > 0.1 |
❌ Other | 완전 다른 클래스, IOU > 0.1 |
❌ Background | 어떤 객체와도 IOU < 0.1 → 배경에 잘못 탐지된 경우 |
Fig 4.는 20개 클래스 전체에서 오류 유형의 평균적인 비율을 보여준다. YOLO는 정확한 위치 예측(localalization)에 약한 경향을 보인다. YOLO의 오류 대부분은 Localization Error에 해당하며, 이 하나의 항목이 다른 모든 오류를 합친 것보다 많다. 반면, Fast R-CNN은 localization에는 강하지만, 배경을 잘못 탐지한 경우(Background Error)가 많다. 실제로 전체 탐지 중 13.6%가 객체가 없는 배경을 잘못 탐지한 false positive였다. YOLO와 비교 시 background error가 약 3배 정도 더 많다.
Fast R-CNN & YOLO 결합
YOLO는 Fast R-CNN보다 배경에 대한 오류가 적기 때문에, 이를 활용해 Fast R-CNN이 만든 background error들을 걸러낼 수 있다. 구체적으로는 다음과 같이 동작한다.
- Fast R-CNN로 이미지에서 200개의 탐지 결과 추출
- YOLO의 예측 결과를 기반으로 재평가(rescore)
- YOLO가 예측하지 않은 결과는 제거한다
이렇게 결합한 모델은 VOC 2007 기준 mAP 75% 달성했으며, 이는 Fast R-CNN을 단독으로 사용하는 성능(71.8%)보다 3.2% 향상된 결과이다.
PASCAL VOC 2012 기준 결과
아래의 Table 3는 YOLO의 mAP를 VOC 2012 기준으로 다른 탐지기들과 비교한 것이다. 연구는 3 가지 YOLO 버전들( Fast YOLO, 기기본 YOLO, YOLO+VGG-16)과 기존의 DPM, R-CNN, Fast R-CNN, Faster R-CNN 을 비교하였다.
결과를 요약하면 Fast YOLO는 여전히 기존 실시간 탐지기보다 2배 이상 정확하다. YOLO + VGG16은 mAP 66.4를 기록하며, 당시 SOTA급이었던 Fast R-CNN (66%)보다 높은 성능을 보여줬다. 여기서 주목할 점은 Fast R-CNN은 VOC 2007 + VOC 2012 데이터를 모두 사용해 학습한 반면, YOLO는 VOC 2012만을 사용해서 학습하였다는 점이다.
일반화 성능 : 그림에서 사람 탐지
YOLO는 VOC와 같은 현실의 이미지에서 객체 탐지를 하도록 학습되었다. 연구는 YOLO가 다른 도메인에서도 잘 동작하는지를 확인하기 위해, picasso와 People-Art라는 예술 작품으로 이루어진 두 개의 데이터 셋에서 테스트를 진행했다.
Fig 5.는 YOLO와 다른 탐지기들의 성능 비교를 보여준다. 참고로, VOC 2007에서 인물 탐지를 수행한 AP는 모든 모델을 VOC 2007 데이터만으로 학습했을 때의 결과이다. picasso 데이터셋에 대해 예측은 VOC 2012로 학습된 모델을, People-Art 데이터셋에 대한 예측은 VOC 2010으로 학습된 모델을 사용하였다.
R-CNN은 VOC 2007에서는 높은 AP를 기록하지만, 예술 작품에 적용하면 성능이 크게 떨어진다. R-CNN은 bounding box를 제안하기 위해 selective search방식을 사용하며, 이 방식은 현실 이미지에 최적화되어 있다. 또한 R-CNN의 분류기는 이미지의 작은 영역만을 보기 때문에, 좋은 proposal이 없으면 잘 작동하지 않는다.
DPM은 미술작품에 적용되었을때에도 AP가 크게 떨어지지 않는다. 이전 연구들은 DPM이 잘 작동하는 이유를 객체의 형태와 레이아웃에 강한 spatial model 때문이라고 분석한다. 하지만 DPM은 애초에 낮은 mAP를 가지고 있어서, R-CNN보다는 낫지만 성능 자체는 낮은 편이다.
YOLO는 VOC 2007에서도 좋은 성능을 보이며, 예술 이미지를 예측했을 때의 AP 하락이 가장 적다. DPM과 마찬가지로, YOLO도 객체 크기와 모양 / 객체들 간 공간적 관계 / 객체가 자주 출현하는 위치 등의 정보를 모델링하고 있다. 그림과 현실 이미지는 픽셀 수준에서는 매우 다르지만, 객체의 크기와 모양 측면에서는 유사하기 때문에 YOLO는 여전히 좋은 바운딩 박스와 탐지 결과를 낼 수 있었다.
5. Real-Time Detection in the Wild
YOLO는 빠르고 정확한 객체 탐지기로, 컴퓨터 비전 응용 프로그램들에 쓰이기 매우 적합하다. 연구에서는 YOLO를 웹캠에 연결하여, 카메라에서 이미지를 가져오고 탐지 결과를 출력하는 시간까지 포함했을 때에도 실시간 성능을 유지하는 것을 확인했다. YOLO의 시스템은 결과적으로 상호작용적이며 흥미로운 모습을 보인다. YOLO는 각 이미지를 독립적으로 처리하지만, 웹캠에 연결하면 움직이거나 외형이 변하는 객체를 계속 탐지하며 마치 Tracking 시스템 처럼 동작한다.
6. 결론
연구는 YOLO라는 통합 객체 탐지 모델을 제안했다. 이 모델은 구성이 간단하고, 전체 이미지를 직접 학습 대상으로 삼아 훈련할 수 있다. 분류 기반 접근 방식들과는 달리, YOLO는 탐지 성능에 직접 연결되는 손실 함수를 사용해 학습되며, 모델 전체가 유기적(jointly)으로 학습된다.
FAST YOLO는 2016년 기준 가장 빠른 범용(general-purpose) 객체 탐지기이며, YOLO는 실시간 객체 탐지 분야에서 SOTA의 수준을 끌어올렸다. 또한 YOLO는 새로운 도메인에 대해서도 일반화 성능이 뛰어나기 때문에, 빠르고 강력한 객체 탐지가 요구되는 다양한 응용 분야에 매우 적합할 것이다.
TMI를 하나 풀자면 YOLO의 원 저자 Joseph Redmon는 컴퓨터 비전 기술이 군사, 국가적으로 사용되는 것에 회의감을 느껴 컴퓨터 비전 연구를 그만둔 상태이다. 현재는 놀랍게도 서커스, 곡예 공연?을 하면서 살고계시는 중 (역시 YOLO 그 자체..). 따라서 v1~v3까지가 원 저자의 연구이고 우리가 현재 접하는 최신 버전들은 다른 연구자들이나 기업에서 공개한 모델들이라고 보면 된다.
이후 버전도 정리를 하려고는 하는데 논문별로 할지 버전별 중점만 정리할지는 생각 좀 해봐야겠다.
'논문 & 기술' 카테고리의 다른 글
DeepSORT (0) | 2025.05.01 |
---|---|
Faster R-CNN (3) | 2025.04.23 |
R-CNN (1) | 2025.04.17 |
NERF : Representing Scenes as Neural Radiance Fields for View Synthesis (0) | 2025.03.26 |
Volume rendering (0) | 2025.02.14 |