콘텐츠로 건너뛰기

YOLOv5 YOLOv10: 실시간 객체 탐지기의 기술적 비교

컴퓨터 비전 역사에서 '한 번만 보면 된다(YOLO)' 아키텍처의 진화는 결정적인 서사였다. 이 시간축에서 두 가지 뚜렷한 이정표는 YOLOv5, 즉 업계 표준으로 신뢰성과 사용 편의성을 인정받는 모델과 YOLOv10입니다. 이 가이드는 개발자가 자신의 애플리케이션에 적합한 도구를 선택할 수 있도록 상세한 기술적 비교를 제공하며, 최신 YOLOv26이 양자의 장점을 어떻게 통합하는지 탐구합니다.

모델의 기원과 사양

성능 지표에 대해 살펴보기 전에 각 모델의 배경을 이해하는 것이 필수적입니다.

YOLOv5
저자: Glenn Jocher
소속: Ultralytics
날짜: 2020-06-26
GitHub: yolov5
문서: YOLOv5

YOLOv10
저자: Ao Wang, Hui Chen, Lihao Liu 외
소속 기관: 칭화대학교
날짜: 2024-05-23
Arxiv: arXiv:2405.14458
GitHub: THU-MIG/yolov10
문서: YOLOv10

5에 대해 자세히 알아보기

성능 분석

다음 표는 객체 탐지의 표준 벤치마크인 COCO 모델들을 비교합니다.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4

YOLOv10 더 적은 매개변수로 더 높은 평균 정밀도(mAP)를 달성하여, 새로운 아키텍처의 효율성 향상을 보여줍니다. 그러나 YOLOv5 고도로 최적화된 CUDA 덕분에, 특히 구형 하드웨어에서 GPU 속도 측면에서 여전히 경쟁력을 YOLOv5 .

10에 대해 자세히 알아보기

아키텍처 및 설계

YOLOv5: 믿을 수 있는 표준

YOLOv5 수정된 CSPNet 백본과 PANet 목 구조를 기반으로 YOLOv5 . 이 모델은 표준 앵커 기반 탐지 헤드를 활용하며, 중복 경계 상자를 걸러내기 위해 후처리 과정에서 비최대 억제(NMS) 가 필요합니다.

  • 장점: 매우 성숙한 코드베이스, 다양한 서드파티 도구의 광범위한 지원, 라즈베리 파이 같은 에지 디바이스에서의 안정적인 배포.
  • 단점: NMS 의존하며, 이는 장면 내 객체 수에 따라 지연 변동성을 유발할 수 있습니다.

YOLOv10: NMS 선구자

YOLOv10 NMS최소 수직 NMS 훈련하기 위해 일관된 이중 할당(Consistent Dual Assignments)을 도입함으로써 패러다임 전환을 YOLOv10 . 이를 통해 모델은 개체당 정확히 하나의 박스를 예측할 수 있어 NMS 단계가 필요 없어졌습니다.

  • 장점: NMS 인해 고밀도 장면에서 추론 지연 시간 감소; 효율적인 순위 기반 블록 설계로 계산적 중복성 감소.
  • 단점: 최신 아키텍처는 일부 컴파일러에 특정 내보내기 설정이 필요할 수 있음; v5에 비해 커뮤니티 지원 이력이 상대적으로 부족함.

NMS 현상

비최대 억제(NMS)는 중첩된 경계 상자를 필터링하는 후처리 단계입니다. 효과적이긴 하지만 순차적이며 CPU에서 계산 비용이 높습니다. YOLOv10 YOLO26에서 수행된 것처럼 이를 제거하는 것은 에지 하드웨어에서의 실시간 애플리케이션에 매우 중요합니다.

에코시스템 및 사용 편의성

개발자에게 가장 중요한 요소 중 하나는 모델을 둘러싼 생태계입니다. 이곳에서 연구용 저장소와 생산 플랫폼의 차이가 명확해집니다.

Ultralytics 이점

두 모델 모두 다음을 통해 실행할 수 있습니다. ultralytics Python 통해 사용자에게 강력한 도구 모음을 제공합니다.

  • Ultralytics : 사용자는 Ultralytics 통해 데이터셋을 관리하고, 클라우드에서 모델을 훈련시키며, 모델을 원활하게 배포할 수 있습니다.
  • 훈련 효율성: Ultralytics 훈련 중 메모리 효율성을 위해 최적화되어 있으며, 트랜스포머 기반 대안보다 훨씬 적은 VRAM을 필요로 하는 경우가 많습니다.
  • 다용도성: YOLOv10 주로 탐지 모델 YOLOv10 , Ultralytics 핵심 모델 전반에 걸쳐 이미지 분할, 자세 추정방향성 객체 탐지(OBB)를 지원합니다.

코드 예제

모델 간 전환은 모델 이름 문자열을 변경하는 것만큼 간단합니다.

from ultralytics import YOLO

# Load a pre-trained YOLOv5 model
model_v5 = YOLO("yolov5s.pt")
model_v5.train(data="coco8.yaml", epochs=100)

# Load a pre-trained YOLOv10 model
model_v10 = YOLO("yolov10n.pt")
model_v10.predict("path/to/image.jpg")

이상적인 사용 사례

5 선택해야 할 때

  • 레거시 시스템: 기존 파이프라인이 YOLOv5 형식을 기반으로 구축된 경우.
  • 가장 광범위한 호환성: 최신 연산자가 아직 지원되지 않을 수 있는 구형 임베디드 시스템에 배포하기 위한 것입니다.
  • 커뮤니티 리소스: 지난 5년간 제작된 수천 개의 튜토리얼과 타사 통합 기능에 접근해야 할 때.

10 선택해야 할 때

  • 고밀도 감지: 군중 계수나 교통 분석과 같은 시나리오에서 NMS 처리 속도를 NMS 경우.
  • 엄격한 지연 시간 제약: 실시간 로봇 공학 또는 자율 주행에서 추론 지연 시간 의 모든 밀리초가 중요한 경우.
  • 연구: 최신 과제 전략 및 아키텍처 트리밍 기술의 실험적 적용

궁극의 추천: YOLO26

YOLOv5 안정성을, YOLOv10 NMS 추론이 YOLOv10 , 새로 출시된 Ultralytics 이러한 장점들을 하나의 우수한 프레임워크로 통합합니다.

왜 YOLO26으로 업그레이드해야 할까요? YOLO26은 기본적으로 엔드투엔드(end-to-end) 방식으로 YOLOv10 최초로 도입한 NMS 설계를 YOLOv10 강력한 Ultralytics 파이프라인으로 이를 강화했습니다.

  1. MuSGD 최적화기: 대규모 언어 모델(LLM) 훈련(특히 Moonshot AI의 Kimi K2)에서 영감을 받아 개발된 이 최적화기는 안정적인 수렴과 더 빠른 훈련을 보장합니다.
  2. 성능: 에지 컴퓨팅에 최적화되어 이전 세대 대비 최대 43% 빠른 CPU 제공합니다.
  3. 정확도: ProgLossSTAL (의미 토큰 정렬 손실)을 특징으로 하여, 기존 모델에서 취약점이었던 소형 물체 탐지 성능을 크게 향상시킵니다.
  4. 완벽한 다용도성: 탐지에 YOLOv10 달리, YOLO26은 분할, 자세 추정, 분류OBB(Object Bounding Box)를 위한 최첨단 모델을 제공합니다.

2026년에 시작되는 모든 신규 프로젝트에는 YOLO26이 권장 선택지이며, 데이터셋 주석 작업부터 모델 내보내기까지 가장 쉬운 경로를 제공합니다.

YOLO26에 대해 더 알아보기

결론

YOLOv5 YOLOv10 모두 컴퓨터 비전 분야에서 중대한 전환점을 YOLOv10 . YOLOv5 는 접근성과 신뢰성을 높여 AI를 대중화한 반면, YOLOv10 엔드투엔드 처리의 기술적 한계를 확장했습니다. 그러나 이 분야는 빠르게 진화합니다. YOLO26의 출시로 개발자들은 더 이상 Ultralytics 신뢰성과 NMS 없는 아키텍처의 속도 사이에서 선택할 필요가 없습니다—YOLO26이 두 가지를 모두 제공합니다.

다른 현대적인 대안을 원하신다면, 다음을 살펴보시는 것도 고려해 보실 수 있습니다 YOLO11 를 일반적인 비전 작업에, 또는 트랜스포머 기반 탐지를 위한 실시간 DETR(RT-DETR) 을 고려해 볼 수 있습니다.


댓글