YOLOv6.0과 YOLOv10: 자세한 기술 비교
최적의 컴퓨터 비전 모델을 선택하는 것은 추론 지연 시간, 정확도, 계산 효율성과 같은 요소의 균형을 맞추는 AI 이니셔티브의 성공에 있어 매우 중요합니다. 이 종합적인 기술 비교에서는 두 가지 대표적인 객체 감지 아키텍처를 살펴봅니다: 산업 속도를 위해 설계된 YOLOv6.0과YOLOv10과 실시간 엔드투엔드 효율성으로 잘 알려진 YOLOv10을 비교합니다. 아키텍처 혁신, 벤치마크 지표, 이상적인 사용 사례를 분석하여 선택 과정을 안내합니다.
YOLOv6.0: 산업 등급의 속도와 정밀도
메이투안의 비전 인텔리전스 부서에서 개발한 YOLOv6.0은 산업용 애플리케이션에 특별히 최적화된 단일 단계 물체 감지 프레임워크입니다. 2023년 초에 출시된 이 프레임워크는 하드웨어 친화적인 설계를 우선시하여 GPU와 에지 디바이스의 처리량을 극대화하고 제조 및 물류 분야의 실시간 추론에 대한 엄격한 요구 사항을 해결합니다.
- 작성자: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu, Xiangxiang Chu
- 조직:조직: 메이투안
- 날짜: 2023-01-13
- Arxiv:https://arxiv.org/abs/2301.05586
- GitHub:https://github.com/meituan/YOLOv6
- Docs:https://docs.ultralytics.com/models/yolov6/
아키텍처 및 주요 기능
YOLOv6.0은 특징 추출 및 융합 속도를 향상시키기 위해 몇 가지 고급 기술을 통합한 아키텍처의 '전면적 재로딩'을 도입했습니다:
- 효율적인 재파라미터화 백본: 하드웨어 인식 백본을 사용하여 복잡한 학습 구조를 더 빠른 추론 계층으로 단순화하여 정확도 저하 없이 FLOPS를 최적화할 수 있습니다.
- 양방향 연결(BiC): 넥 디자인은 BiC를 활용하여 로컬라이제이션 신호를 개선하여 다양한 스케일에서 더 나은 피처 융합을 보장합니다.
- 앵커 보조 훈련(AAT): 기본적으로 앵커를 사용하지 않지만, YOLOv6.0은 훈련 중에 앵커 기반 보조 브랜치를 다시 도입하여 컨버전스를 안정화하고 성능을 향상시킵니다.
강점과 약점
강점: YOLOv6.0은 높은 처리량이 요구되는 시나리오에서 탁월한 성능을 발휘합니다. 모델 정량화를 지원하므로 모바일 플랫폼과 임베디드 시스템에 효과적으로 배포할 수 있습니다. '라이트' 버전은 CPU 있는 환경에 특히 유용합니다.
약점: 객체 감지에만 초점을 맞춘 모델로서, 다음과 같은 통합 프레임워크에서 볼 수 있는 인스턴스 분할이나 포즈 추정과 같은 광범위한 작업에 대한 기본 지원이 부족합니다. YOLO11. 또한 최신 모델에 비해 파라미터 효율성이 낮아 비슷한 정확도 수준을 위해 더 많은 메모리를 필요로 합니다.
이상적인 사용 사례: 산업 자동화
YOLOv6.0은 조립 라인의 카메라가 고해상도 피드를 빠르게 처리하여 결함을 detect 품목을 분류해야 하는 제조 자동화에 적합한 솔루션입니다.
YOLOv10: 엔드투엔드 효율성의 최전선
2024년 5월 칭화대학교 연구진에 의해 소개된 YOLOv10 후처리 과정에서 비최대 억제(NMS) 의 필요성을 제거하여 YOLO 제품군의 한계를 뛰어넘었습니다. 이러한 혁신으로 지연 시간이 중요한 애플리케이션을 위한 차세대 모델로 자리매김하고 있습니다.
- 저자: Ao Wang, Hui Chen, Lihao Liu 외
- 조직:조직: 칭화 대학교
- 날짜: 2024-05-23
- Arxiv:https://arxiv.org/abs/2405.14458
- GitHub:https://github.com/THU-MIG/yolov10
- Docs:https://docs.ultralytics.com/models/yolov10/
아키텍처 및 주요 기능
YOLOv10 전체적인 효율성-정확성 중심의 설계 전략을 채택합니다:
- NMS 훈련: 일관된 이중 할당(훈련용 일대다, 추론용 일대일)을 활용함으로써 YOLOv10 각 개체에 대해 하나의 최적 박스를 예측합니다. 따라서 NMS 후처리와 관련된 계산 오버헤드 및 지연 시간 변동성이 제거됩니다.
- 전체론적 모델 설계: 이 아키텍처는 경량 분류 헤드와 공간 채널 분리형 다운샘플링을 통해 모델 파라미터와 계산 비용을 크게 줄여줍니다.
- 순위 가이드 블록 디자인: 이 모델은 효율성을 높이기 위해 순위 가이드 블록 디자인을 사용하여 피처 처리의 중요도가 낮은 단계에서 중복성을 줄입니다.
강점과 약점
강점: YOLOv10 우수한 속도-정확도 절충을 제공하여 종종 더 높은 mAP 을 달성할 수 있으며, 이전 버전보다 훨씬 적은 수의 매개변수로도 가능합니다. Ultralytics Python 에코시스템에 통합되어 다른 모델과 함께 매우 쉽게 훈련하고 배포할 수 있습니다.
약점: 비교적 최근에 출시된 제품이기 때문에 커뮤니티 리소스와 타사 도구가 아직 성장 중입니다. YOLOv6 마찬가지로 탐지에 특화되어 있지만, 멀티태스크 기능이 필요한 사용자는 다음을 선호할 수 있습니다. YOLO11.
훈계: 권고: 효율성 혁신
NMS 제거함으로써 YOLOv10 처리 시간이 결정론적이어야 하는 자율 주행 차량과 같은 안전이 중요한 시스템에 중요한 요소인 안정적인 추론 지연 시간을 달성할 수 있습니다.
성능 분석: 메트릭 및 벤치마크
다음 표는 COCO 데이터 세트에서 YOLOv6.0과 YOLOv10 성능을 비교한 것입니다. 주요 메트릭에는 모델 크기, 평균 평균 정밀도mAP, CPU 및 GPU 추론 속도가 포함됩니다.
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv6.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
주요 인사이트
- 파라미터 효율성: YOLOv10 놀라운 효율성을 보여줍니다. 예를 들어, YOLOv10은 절반 이하의 파라미터(7.2M 대 18.5M)를 사용하면서 YOLOv6.0s (45.0%)보다 더 높은 mAP (46.7%)를 달성합니다. 이러한 메모리 사용량 감소는 엣지 AI 디바이스에 매우 중요합니다.
- 지연 시간: YOLOv6.0n은 원시 TensorRT 지연 시간이 약간 더 빠르지만(1.17ms 대 1.56ms), YOLOv10 원시 모델 추론 시간에 포착되지 않는 실제 파이프라인에서 종종 추가 시간을 소비하는 NMS 단계를 제거합니다.
- 정확도: 거의 모든 스케일에서 YOLOv10 더 높은 정확도를 제공하여 복잡한 환경에서 어려운 물체를 감지하는 데 더욱 강력한 선택이 될 것입니다.
사용 및 구현
Ultralytics 이러한 모델을 사용하기 위한 간소화된 환경을 제공합니다. YOLOv10 기본적으로 ultralytics 패키지를 사용하여 원활한 교육 및 예측.
Ultralytics YOLOv10 실행하기
몇 줄의 코드만으로 Python API를 사용하여 YOLOv10 실행할 수 있습니다. 이는 Ultralytics 에코시스템에 내재된 사용 편의성을 강조합니다.
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg", save=True)
# Train the model on a custom dataset
# model.train(data="coco8.yaml", epochs=100, imgsz=640)
YOLOv6.0 사용
YOLOv6.0은 일반적으로 다른 코드베이스 구조를 따르기 때문에 훈련 및 추론을 위해 공식 Meituan 리포지토리를 복제해야 합니다.
# Clone the YOLOv6 repository
git clone https://github.com/meituan/YOLOv6
cd YOLOv6
pip install -r requirements.txt
# Inference using the official script
python tools/infer.py --weights yolov6s.pt --source path/to/image.jpg
결론 올바른 모델 선택하기
두 모델 모두 컴퓨터 비전 분야에서 중요한 성과를 거두었습니다. YOLOv6.0은 아키텍처에 특별히 최적화된 레거시 산업용 시스템을 위한 확실한 선택입니다. 하지만 YOLOv10 은 일반적으로 NMS 아키텍처, 뛰어난 매개변수 효율성, 높은 정확도로 인해 새로운 프로젝트에 더 나은 투자 수익을 제공합니다.
최고의 다양성과 에코시스템 지원을 원하는 개발자를 위한 제품입니다, Ultralytics YOLO11 을 적극 권장합니다. YOLO11 최첨단 감지 성능을 제공할 뿐만 아니라 잘 관리된 단일 패키지 내에서 포즈 추정, OBB 및 분류를 기본적으로 지원합니다. Ultralytics 에코시스템은 효율적인 트레이닝 프로세스, 낮은 메모리 사용량, 다음과 같은 포맷으로의 손쉬운 내보내기를 보장합니다. ONNX 및 TensorRT와 같은 형식으로 쉽게 내보낼 수 있어 강력한 AI 솔루션을 자신 있게 배포할 수 있습니다.
추가 자료
- 다용도로 활용 가능한 YOLO11 멀티태스크 비전 AI에 대해 알아보세요.
- 변압기 기반 감지를 위해 YOLOv10 RT-DETR 비교하세요.
- 배포 속도를 극대화하기 위한 모델 내보내기에 대해 알아보세요.