YOLOv5와 RTDETRv2#
컴퓨터 비전의 영역은 지난 몇 년 동안 크게 확장되어, 개발자에게 복잡한 시각 작업을 해결할 수 있는 다양한 아키텍처를 제공해 왔습니다. 가장 인기 있는 패러다임으로는 합성곱 신경망(CNN)과 검출 Transformer(DETR)가 있습니다.
이 가이드에서는 이러한 범주에 속하는 두 가지 핵심 모델인 Ultralytics YOLOv5와 RTDETRv2를 심층적으로 기술 비교합니다. Ultralytics YOLOv5는 매우 효율적이며 널리 채택된 CNN 기반 모델이고, RTDETRv2는 최첨단 Transformer 기반 실시간 객체 검출기입니다.
Ultralytics YOLOv5: 효율성의 업계 표준#
출시 이후 Ultralytics YOLOv5는 전 세계 수천 개의 상용 애플리케이션과 연구 프로젝트를 지원하며 AI 커뮤니티의 핵심 요소로 자리 잡았습니다. 전적으로 PyTorch 프레임워크를 기반으로 구축된 YOLOv5는 실시간 성능을 저하시키지 않으면서 직관적인 개발자 경험을 우선시했습니다.
주요 특징:
- 작성자: Glenn Jocher
- 조직: Ultralytics
- 날짜: 2020-06-26
- 링크: GitHub 저장소
아키텍처 및 강점#
YOLOv5는 매우 낮은 메모리 사용량을 유지하면서 특징 추출 효율성을 극대화하도록 설계된 간소화된 CNN 아키텍처를 활용합니다. CSPDarknet 백본과 PANet 넥을 사용하여 멀티 스케일 특징 융합을 위한 강력한 조합을 구성합니다.
YOLOv5의 주요 장점 중 하나는 성능 균형입니다. 속도와 정확도 사이에서 탁월한 균형을 이루므로 NVIDIA Jetson 디바이스 및 스마트폰과 같이 리소스가 제한된 하드웨어에 모델을 배포하는 데 이상적인 선택입니다.
또한 YOLOv5는 탁월한 다용성을 자랑합니다. 바운딩 박스 예측에만 엄격하게 제한된 모델과 달리 YOLOv5는 기본적으로 이미지 분류와 인스턴스 세그멘테이션을 지원하여 다양한 시각 작업을 위한 통합 프레임워크를 제공합니다. 학습 효율성 또한 뛰어나며, Transformer 기반 아키텍처에 비해 학습 중 CUDA 메모리를 훨씬 적게 사용합니다.
약점#
YOLOv5는 더 오래된 CNN 프레임워크에 의존하므로 후처리 중 중복 바운딩 박스를 제거하기 위해 본질적으로 비최대 억제(NMS)에 의존합니다. Ultralytics 프레임워크 내에서 고도로 최적화되어 있지만, NMS는 특수 엣지 NPU에서 때때로 지연 시간 병목을 유발할 수 있습니다.
RTDETRv2: Baidu의 실시간 Transformer#
RTDETRv2(실시간 검출 Transformer v2)는 실시간 객체 검출에 Transformer 아키텍처를 적용하는 데 있어 상당한 도약을 보여 주며, 기존 DETR을 오랫동안 괴롭혀 온 계산 비효율성 문제를 해결합니다.
주요 특징:
- 저자: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang, Yi Liu
- 조직: Baidu
- 날짜: 2024-07-24
- 링크: Arxiv 논문, GitHub 저장소
아키텍처 및 강점#
RTDETRv2는 하이브리드 인코더와 유연한 디코더 설계를 활용하여 이미지를 처리함으로써 이전 모델을 발전시켰습니다. Transformer의 셀프 어텐션 메커니즘은 모델에 이미지 맥락에 대한 전역적인 이해를 제공하므로, 심각한 객체 가림이 발생하는 복잡한 장면에서도 뛰어난 성능을 발휘할 수 있습니다.
RTDETRv2의 핵심 특징은 엔드투엔드 NMS 없는 설계입니다. 앵커 박스나 NMS 후처리 없이 객체 쿼리를 직접 예측하므로 추론 파이프라인이 간소화됩니다. 이 아키텍처는 COCO와 같은 벤치마크 데이터셋에서 인상적인 mAP(평균 정밀도)을 달성합니다.
약점#
실시간 기능에도 불구하고 RTDETRv2는 YOLO 모델에 비해 메모리 요구 사항이 눈에 띄게 높습니다. Transformer의 어텐션 메커니즘은 시퀀스 길이에 따라 제곱으로 확장되므로, 대규모 GPU 클러스터를 사용하지 않으면 고해상도 학습 중 메모리 부족 오류가 발생할 수 있습니다. 또한 Ultralytics 생태계의 즉시 사용 가능한 다용성을 갖추지 못해, 기본적으로 세그멘테이션이나 포즈 추정은 지원하지 않고 2D 객체 검출에만 주로 집중합니다.
성능 비교 표#
이러한 아키텍처를 객관적으로 평가하기 위해 성능 지표를 정리했습니다. 굵게 강조된 값은 테스트한 규모 전반에서 가장 효율적이거나 가장 높은 성능을 보이는 지표를 나타냅니다.
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
RTDETRv2-x가 절대적인 mAP는 가장 높지만, YOLOv5n보다 거의 30배 많은 파라미터가 필요합니다. 제한된 하드웨어에서 실행되는 고속 애플리케이션의 경우 Ultralytics 모델이 일관되게 최고의 계산 효율성을 제공합니다.
Ultralytics 생태계의 이점#
모델을 연구용 노트북에서 프로덕션 환경으로 이전할 때는 모델을 둘러싼 소프트웨어가 신경망 아키텍처만큼 중요합니다. Ultralytics가 제공하는 잘 관리되는 생태계는 개발 수명 주기를 크게 가속합니다.
탁월한 사용 편의성#
Ultralytics 모델은 매우 간소화된 사용자 경험을 우선시합니다. 커스텀 모델을 학습하거나, 검증을 실행하거나, TensorRT 또는 ONNX와 같은 하드웨어별 형식으로 내보내려는 경우에도 Ultralytics Python API를 사용하면 몇 줄의 코드만으로 수행할 수 있습니다.
다음은 Ultralytics 모델을 학습하고 추론을 실행하는 과정이 얼마나 간단한지 보여 주는 실용적인 코드 예제입니다.
from ultralytics import YOLO
# Initialize the model (automatically downloads the weights)
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device="cpu")
# Perform inference on an online image
inference_results = model.predict("https://ultralytics.com/images/bus.jpg")
# Display the resulting image with bounding boxes
inference_results[0].show()이 간단한 통합 API는 Weights & Biases 및 Comet과 같은 도구와의 실험 추적 통합을 기본적으로 지원하므로, 개발자는 복잡한 보일러플레이트 코드를 작성하지 않고도 지표를 원활하게 기록할 수 있습니다.
사용 사례 및 권장 사항#
YOLOv5와 RT-DETR 중 무엇을 선택할지는 구체적인 프로젝트 요구 사항, 배포 제약 조건 및 생태계 선호도에 따라 달라집니다.
YOLOv5를 선택해야 하는 경우#
YOLOv5는 다음과 같은 경우에 적합합니다.
- 검증된 프로덕션 시스템: YOLOv5의 오랜 안정성 기록, 광범위한 documentation, 대규모 community support가 중요한 기존 deployment입니다.
- 리소스가 제한된 training: YOLOv5의 효율적인 training pipeline과 낮은 memory requirement가 유리한 제한된 GPU resource 환경입니다.
- 광범위한 export format support: ONNX, TensorRT, CoreML, TFLite를 비롯한 다양한 format으로 deployment해야 하는 project입니다.
RT-DETR을 선택해야 하는 경우#
다음과 같은 경우 RT-DETR을 권장합니다.
- Transformer 기반 감지 연구: NMS 없이 엔드 투 엔드 객체 감지를 수행하기 위해 attention mechanism과 Transformer 아키텍처를 탐구하는 프로젝트입니다.
- 유연한 latency를 요구하는 고정확도 시나리오: 감지 정확도가 최우선이며 약간 더 높은 추론 latency를 허용할 수 있는 애플리케이션입니다.
- 대형 객체 감지: 주로 medium-to-large 객체가 있는 장면으로, Transformer의 global attention mechanism이 자연스러운 이점을 제공하는 경우입니다.
Ultralytics(YOLO26)를 선택해야 하는 경우#
대부분의 신규 프로젝트에서 Ultralytics YOLO26은 성능과 개발자 경험의 최적 조합을 제공합니다.
- NMS-Free 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관되고 지연 시간이 짧은 추론이 필요한 애플리케이션입니다.
- CPU 전용 환경: 전용 GPU 가속 기능이 없는 디바이스에서 YOLO26의 최대 43% 더 빠른 CPU 추론이 결정적인 이점을 제공하는 경우입니다.
- 소형 객체 탐지: 항공 드론 이미지나 IoT 센서 분석처럼 ProgLoss와 STAL이 작은 객체의 정확도를 크게 향상하는 까다로운 시나리오입니다.
앞으로의 방향: YOLO11 및 YOLO26#
오늘 새로운 비전 프로젝트를 시작한다면 최신 세대의 Ultralytics 모델을 살펴보는 것을 적극 권장합니다.
YOLOv5는 여전히 매우 신뢰할 수 있는 모델이지만, YOLO11은 향상된 정확도와 방향성 바운딩 박스(OBB) 검출을 포함한 확장된 작업 세트를 제공합니다.
더욱 중요한 점은 최첨단 YOLO26이 두 가지 장점을 결합한다는 것입니다. YOLO26은 엔드투엔드 NMS 없는 설계(YOLOv10에서 처음 개척됨)를 구현하여 후처리 오버헤드를 제거하는 동시에 CNN의 효율성을 유지합니다. 또한 LLM 학습 혁신에서 영감을 받은 MuSGD Optimizer를 도입하여 더 빠른 수렴을 지원합니다. DFL Removal(단순화된 내보내기와 엣지/저전력 디바이스 호환성 향상을 위해 Distribution Focal Loss 제거)을 통해 YOLO26은 최대 43% 더 빠른 CPU 추론을 제공하므로 엣지 AI를 위한 최적의 선택입니다. 또한 ProgLoss + STAL은 향상된 손실 함수를 제공하며, IoT, 로보틱스 및 항공 이미지에 중요한 소형 객체 인식 성능을 크게 개선합니다.
결론#
YOLOv5와 RTDETRv2 중 무엇을 선택할지는 배포 제약 조건에 크게 좌우됩니다. RTDETRv2는 강력한 Transformer 어텐션 메커니즘을 활용하여 mAP의 한계를 확장하지만, 메모리와 계산 오버헤드 측면에서 큰 비용이 따릅니다.
반면 Ultralytics YOLOv5는 클라우드 서버부터 마이크로컨트롤러까지 어디서나 원활하게 실행되는 검증된 고도로 최적화된 다용도 솔루션을 제공합니다. 원활한 배포 도구와 함께 가능한 한 높은 정확도를 원하는 팀에게는 Ultralytics 생태계 내에서 YOLO26으로 업그레이드하는 것이 최신 비전 AI 애플리케이션을 위한 확실한 최첨단 솔루션을 제공합니다.