YOLOv8 YOLOv9: 물체 감지를 위한 기술 비교
최적의 컴퓨터 비전 모델을 선택하는 것은 정확도, 추론 속도 및 계산 효율성에 대한 요구 사항의 균형을 맞추는 것으로, AI 프로젝트의 성공에 영향을 미치는 중요한 결정입니다. 이 종합 가이드에서는 다음을 비교합니다. Ultralytics YOLOv8을 다목적이며 프로덕션에 바로 사용할 수 있는 모델인 YOLOv9과 새로운 그라데이션을 통해 탐지 정확도를 극대화하는 데 중점을 둔 아키텍처를 비교합니다. 아키텍처의 차이점, 성능 메트릭, 이상적인 배포 시나리오를 분석하여 정보에 입각한 선택을 할 수 있도록 도와드립니다.
Ultralytics YOLOv8: 다목적성 및 사용 편의성의 표준
Ultralytics 출시, YOLOv8 은 단순한 모델이 아닌 실용적인 AI를 위한 완전한 프레임워크로 설계된 YOLO 시리즈의 주요 진화를 나타냅니다. 원활한 사용자 경험, 하드웨어 전반에 걸친 강력한 성능, 단순 감지 이상의 다양한 비전 작업 지원을 우선시합니다.
- 작성자: Glenn Jocher, Ayush Chaurasia, Jing Qiu
- 조직:Ultralytics
- 날짜: 2023-01-10
- GitHub:https://github.com/ultralytics/ultralytics
- Docs:https://docs.ultralytics.com/models/yolov8/
아키텍처 및 에코시스템
YOLOv8 앵커가 없는 감지 헤드와 C2f(2단계 부분 컨볼루션) 모듈을 도입하여 가벼운 실행을 유지하면서 기능 통합을 개선합니다. 연구 중심 모델과 달리 YOLOv8 배포를 염두에 두고 제작되었습니다. 기본적으로 이미지 분류, 인스턴스 분할, 포즈 추정, 방향성 바운딩 박스(OBB) 감지를 지원합니다.
YOLOv8 진정한 힘은 Ultralytics 에코시스템에 있습니다. 개발자는 통합된 Python API와 CLI 를 통해 교육, 검증 및 배포를 표준화할 수 있습니다. 이 '배터리 포함' 접근 방식은 컴퓨터 비전 애플리케이션의 출시 시간을 대폭 단축합니다.
강점
- 탁월한 다용도성: 단일 라이브러리에서 감지, 세분화, 분류, 포즈 추정을 처리합니다.
- 배포 준비 완료: 네이티브 내보내기 지원 ONNX, OpenVINO, TensorRT및 CoreML 엣지 디바이스 및 클라우드 서버로의 통합을 간소화합니다.
- 메모리 효율성: 트랜스포머 기반 아키텍처에 비해 트레이닝 중 CUDA 메모리 사용량을 낮추도록 최적화되어 표준 소비자용 GPU에서 사용할 수 있습니다.
- 속도-정확도 균형: 탁월한 실시간 추론 속도를 제공하며, CPU 및 엣지 하드웨어에서 경쟁사보다 뛰어난 성능을 발휘하는 경우가 많습니다.
- 적극적인 지원: 대규모 오픈 소스 커뮤니티의 지원과 Ultralytics 빈번한 업데이트를 통해 최신 라이브러리 및 하드웨어와의 호환성을 보장합니다.
YOLOv9: 높은 정확도를 위한 아키텍처 혁신
YOLOv9 딥 러닝의 '정보 병목' 문제를 해결하는 데 초점을 맞춰 출시되었습니다. 주로 물체 감지 정확도의 상한을 목표로 딥 레이어를 통과할 때 데이터 정보를 보존하기 위한 이론적 개념을 도입했습니다.
- 저자: Chien-Yao Wang, Hong-Yuan Mark Liao
- 조직:기관: 대만 학술원 정보 과학 연구소
- 날짜: 2024-02-21
- Arxiv:https://arxiv.org/abs/2402.13616
- GitHub:https://github.com/WongKinYiu/yolov9
- Docs:https://docs.ultralytics.com/models/yolov9/
핵심 혁신
YOLOv9 아키텍처는 두 가지 주요 구성 요소에 의존합니다: 프로그래밍 가능한 그라디언트 정보(PGI) 와 일반화된 효율적인 레이어 집계 네트워크(GELAN)입니다. PGI는 딥 네트워크에서 피드 포워드 프로세스 중 중요한 입력 정보의 손실을 방지하여 업데이트를 위한 안정적인 그라데이션이 생성되도록 합니다. GELAN은 매개변수 효율성을 최적화하도록 설계되어 모델이 상당한 계산 공간으로 높은 정확도를 달성할 수 있도록 합니다.
강점
- 높은 정확도: 가장 큰 변형인 YOLOv9 COCO 데이터 세트에서mAP 대한 인상적인 벤치마크를 설정하여 정밀도가 가장 중요한 시나리오에서 탁월한 성능을 발휘합니다.
- 파라미터 효율성: GELAN 덕분에 중형 YOLOv9 모델은 일부 구형 아키텍처보다 적은 수의 파라미터로 경쟁력 있는 정확도를 달성할 수 있습니다.
- 이론적 발전: 정보 보존과 관련된 딥 네트워크 트레이닝의 근본적인 문제를 해결합니다.
약점
- 제한된 범용성: 주로 물체 감지에 중점을 둡니다. 기능은 뛰어나지만, 핵심 Ultralytics 라인업에서 볼 수 있는 세분화, 포즈 및 분류에 대한 기본적이고 간소화된 지원은 부족합니다.
- 복잡한 트레이닝: PGI를 위한 보조 브랜치를 도입하면 간소화된 YOLOv8 파이프라인에 비해 트레이닝 프로세스가 리소스 집약적이고 조정하기가 더 복잡해질 수 있습니다.
- 추론 속도: 효율적이기는 하지만 아키텍처의 복잡성으로 인해 특정 하드웨어에서는 YOLOv8 사용된 고도로 최적화된 블록에 비해 추론 시간이 느려질 수 있습니다.
정면 성능 비교
YOLOv8 YOLOv9 비교할 때, 배포 환경의 특정 제약 조건에 따라 선택이 결정되는 경우가 많습니다. 추론 속도와 배포 유연성에서는 YOLOv8 우위에 있는 반면, 탐지 메트릭의 한계를 뛰어넘는 것은 YOLOv9 .
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
데이터는 분명한 차이를 강조합니다: YOLOv8 특히 에지 AI 애플리케이션에 필수적인 GPU TensorRT)와 CPU ONNX에서 뛰어난 속도를 제공합니다. 예를 들어, YOLOv8n T4 GPU에서 YOLOv9t보다 훨씬 빠릅니다(1.47ms 대 2.3ms). 반대로 YOLOv9e는 가장 높은 mAP (55.6%) 를 달성하므로 지연 시간이 미세한 디테일을 감지하는 것보다 덜 중요한 서버 측 처리에 적합합니다.
알고 계셨나요?
Ultralytics YOLOv8 다음을 기본적으로 지원하도록 설계되었습니다. 모두 주요 컴퓨터 비전 작업을 수행합니다. 물체 인식에서 다음과 같은 작업으로 전환할 수 있습니다. 인스턴스 분할 모델 웨이트 파일을 변경하기만 하면 됩니다(예 yolov8n.pt 에서 yolov8n-seg.pt), 표준 YOLOv9 리포지토리에서는 사용할 수 없는 수준의 유연성을 제공합니다.
이상적인 사용 사례
Ultralytics YOLOv8 If를 선택합니다:
- 프로덕션에 바로 사용할 수 있는 솔루션이 필요합니다: 광범위한 문서, 커뮤니티 지원, 사전 구축된 통합 기능(예: MLFlow 및 TensorBoard)을 통해 프로토타입에서 제품까지의 과정을 간소화할 수 있습니다.
- 속도는 매우 중요합니다: 실시간 비디오 분석, 자율 내비게이션 또는 모바일 앱의 경우, YOLOv8 최적화된 추론 속도는 뚜렷한 이점을 제공합니다.
- 여러 비전 작업이 필요합니다: 감지 작업과 함께 포즈 추정 또는 세분화가 필요한 프로젝트는 YOLOv8 통합 프레임워크가 가장 적합합니다.
- 리소스 제약이 존재합니다: YOLOv8 모델은 다양한 하드웨어에 고도로 최적화되어 있어 라즈베리 파이부터 NVIDIA 젯슨까지 다양한 기기에서 효율적으로 작동합니다.
YOLOv9 If를 선택합니다:
- 최대 정확도만이 유일한 지표입니다: 속도나 유용성보다 단 1%의 정확도가 더 중요한 학술 연구 또는 전문 검사 작업에 적합합니다.
- 아키텍처를 연구하고 있습니다: PGI와 GELAN 개념은 딥 네트워크에서 경사 흐름을 연구하는 연구자에게 유용합니다.
코드 구현
Ultralytics 에코시스템의 가장 큰 장점 중 하나는 동일한 간단한 API로 두 모델을 모두 지원한다는 점입니다. 따라서 사용자 정의 데이터 세트에서 쉽게 벤치마킹할 수 있습니다.
몇 줄의 코드만으로 YOLOv8 모델을 훈련하는 방법은 다음과 같습니다:
from ultralytics import YOLO
# Load a YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on your data
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Ultralytics YOLOv9 통합하므로 모델 문자열을 다음과 같이 바꿀 수 있습니다. yolov9c.pt 를 사용하여 동일한 강력한 파이프라인 내에서 YOLOv9 실험할 수 있지만, 기본 YOLOv8 모델은 배포 도구와의 긴밀한 통합을 통해 이점을 얻는 경우가 많습니다.
결론
대다수의 개발자와 상업용 애플리케이션의 경우, Ultralytics YOLOv8 여전히 권장되는 선택입니다. 속도와 정확성의 탁월한 균형과 성숙하고 잘 관리된 에코시스템이 결합되어 프로젝트의 미래 보장 및 유지 관리가 용이합니다. 단일 프레임워크 내에서 감지, 세분화 및 포즈 추정을 처리할 수 있는 기능은 비교할 수 없는 다용도성을 제공합니다.
YOLOv9 흥미로운 아키텍처 이론을 도입하고 높은 최고 정확도를 달성하지만, 추론 대기 시간이 제약이 없는 특정 연구 틈새 시장이나 시나리오에 가장 적합한 경우가 많습니다.
컴퓨터 비전 기술의 절대적인 최신 기술을 찾고 있다면 다음을 확인하십시오. YOLO11를 확인해보세요. 이 버전은 YOLOv8 확립한 효율성과 성능을 더욱 개선했습니다. 또한 트랜스포머 기반 접근 방식에 관심이 있는 연구자는 다음을 살펴볼 수 있습니다. RT-DETR 을 살펴볼 수도 있습니다.
모델 비교 페이지에서 더 많은 비교를 살펴보세요.