YOLOv10 vs PP-YOLOE+: 객체 감지를 위한 기술 비교
최적의 객체 감지 모델을 선택하는 것은 컴퓨터 비전 작업에서 정확도, 속도 및 컴퓨팅 리소스의 균형을 맞추는 데 매우 중요합니다. 이 페이지에서는 Ultralytics 생태계에 통합된 Tsinghua University의 최신 기술인 YOLOv10과 Baidu의 고정확도 모델인 PP-YOLOE+ 간의 기술 비교를 제공합니다. YOLOv10의 장점을 강조하면서 의사 결정을 안내하기 위해 아키텍처, 성능 및 애플리케이션을 분석합니다.
YOLOv10: 엔드 투 엔드 효율성
Ultralytics YOLOv10은 진정한 실시간 엔드 투 엔드 객체 감지에 중점을 둔 YOLO 시리즈의 획기적인 반복입니다. 칭화대학교 연구진이 개발했으며, 주요 혁신은 추론 대기 시간을 크게 줄이고 배포 파이프라인을 단순화하는 NMS(Non-Maximum Suppression) 후처리 필요성을 제거한 것입니다.
기술 세부 사항:
- 저자: Ao Wang, Hui Chen, Lihao Liu, et al.
- 기관: 칭화대학교
- 날짜: 2024-05-23
- Arxiv 링크: https:\/\/arxiv.org\/abs\/2405.14458
- GitHub 링크: https://github.com/THU-MIG/yolov10
- 문서 링크: https://docs.ultralytics.com/models/yolov10/
주요 기능 및 아키텍처
- NMS-Free 학습: YOLOv10은 학습 중에 일관된 이중 할당을 사용하여 추론 시 NMS 없이 깔끔한 예측을 생성할 수 있습니다. 이는 지연 시간이 매우 중요한 실시간 애플리케이션에 큰 이점입니다.
- 전체적인 효율성-정확도 중심 설계: 모델 아키텍처는 계산 중복성을 줄이도록 포괄적으로 최적화되었습니다. 여기에는 리소스 사용을 최소화하면서 모델 기능을 향상시키는 경량 분류 헤드 및 공간-채널 분리 다운샘플링과 같은 혁신 기술이 포함됩니다.
- Anchor-Free 감지: 많은 최신 검출기와 마찬가지로 앵커 프리 방식을 사용하여 아키텍처를 간소화하고 다양한 객체 크기와 종횡비에 대한 일반화를 향상시킵니다.
- Ultralytics 생태계 통합: Ultralytics에서 지원하는 모델인 YOLOv10은 강력하고 잘 관리된 생태계의 이점을 누릴 수 있습니다. 따라서 사용자는 간단한 Python API, 광범위한 문서, 즉시 사용 가능한 사전 훈련된 가중치를 사용한 효율적인 학습 프로세스, End-to-End 프로젝트 관리를 위한 Ultralytics HUB와의 원활한 통합을 통해 간소화된 경험을 할 수 있습니다.
사용 사례
- 실시간 비디오 분석: 자율 주행, 로보틱스 및 낮은 추론 지연 시간이 중요한 고속 감시와 같은 애플리케이션에 이상적입니다.
- Edge 배포: 더 작은 변형(YOLOv10n/s)은 NVIDIA Jetson 및 Raspberry Pi와 같이 리소스가 제한된 장치에 고도로 최적화되어 있어 엣지에서 고급 AI에 접근할 수 있도록 합니다.
- 높은 정확도의 애플리케이션: 더 큰 모델은 의료 영상 분석 또는 제조 분야의 상세한 품질 검사와 같이 까다로운 작업에 최첨단 정밀도를 제공합니다.
강점과 약점
강점:
- NMS-free 디자인으로 인한 뛰어난 속도와 효율성.
- 모든 모델 크기에서 속도와 정확도 간의 뛰어난 균형을 제공합니다.
- Nano (N)에서 Extra-large (X)까지 다양한 변형을 제공하여 확장성이 뛰어납니다.
- 더 낮은 메모리 요구 사항 및 효율적인 훈련.
- 사용 편의성과 잘 관리되는 Ultralytics 생태계 내에서 강력한 지원을 제공합니다.
약점:
- 더 새로운 모델로서 Ultralytics 생태계 외부의 커뮤니티는 여전히 성장하고 있습니다.
- 최고의 성능을 얻으려면 TensorRT와 같은 하드웨어별 최적화가 필요할 수 있습니다.
PP-YOLOE+: PaddlePaddle 프레임워크에서 높은 정확도 제공
Baidu에서 개발한 PP-YOLOE+는 효율성을 유지하면서 높은 정확도를 달성하는 데 중점을 둔 PP-YOLOE의 향상된 버전입니다. PaddlePaddle 딥러닝 프레임워크 내의 핵심 모델입니다.
기술 세부 사항:
- 저자: PaddlePaddle Authors
- 기관: Baidu
- 날짜: 2022-04-02
- Arxiv 링크: https:\/\/arxiv.org\/abs\/2203.16250
- GitHub 링크: https://github.com/PaddlePaddle/PaddleDetection/
- 문서 링크: https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
주요 기능 및 아키텍처
- Anchor-Free Design: YOLOv10과 마찬가지로 앵커 프리(anchor-free) 감지기로, 감지 헤드를 간소화하고 조정해야 할 하이퍼파라미터의 수를 줄입니다.
- CSPRepResNet 백본: 강력한 특징 추출을 위해 CSPNet 및 RepResNet의 원리를 결합한 백본을 활용합니다.
- 고급 손실 및 헤드: 이 모델은 분류 및 현지화 작업 간의 정렬을 개선하기 위해 Varifocal Loss와 효율적인 ET-Head를 통합합니다.
사용 사례
- 산업 품질 검사: 높은 정확도로 제조 라인에서 미세한 결함을 감지하는 데 적합합니다.
- 스마트 리테일: 자동화된 재고 관리 및 고객 행동 분석과 같은 애플리케이션에 사용할 수 있습니다.
- 재활용 자동화: 자동 분류 시스템을 위해 다양한 재료를 식별하는 데 효과적입니다.
강점과 약점
강점:
- 특히 더 큰 모델 변형에서 높은 정확도를 달성합니다.
- PaddlePaddle 생태계 내에서 잘 통합되어 있습니다.
- 효율적인 앵커 프리 디자인.
약점:
- 주로 PaddlePaddle 프레임워크에 최적화되어 있어 PyTorch와 같은 다른 프레임워크를 사용하는 개발자에게는 가파른 학습 곡선과 통합 문제가 발생할 수 있습니다.
- Ultralytics 모델을 둘러싼 광대한 생태계에 비해 커뮤니티 지원 및 사용 가능한 리소스가 덜 광범위할 수 있습니다.
- 더 큰 모델은 YOLOv10에 비해 파라미터 수가 훨씬 많아 계산 비용이 더 높습니다.
성능 분석: 속도, 정확도 및 효율성
모델 | 크기 (픽셀) |
mAPval 50-95 |
속도 CPU ONNX (ms) |
속도 T4 TensorRT10 (ms) |
파라미터 (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
성능 지표는 두 모델 간의 명확한 차이점을 보여줍니다. YOLOv10은 일관되게 우수한 매개변수 및 계산 효율성을 보여줍니다. 예를 들어 YOLOv10-L은 PP-YOLOE+-l의 52.9% mAP와 비슷한 53.3% mAP를 달성하지만 매개변수는 거의 44% 적습니다(29.5M 대 52.2M). 이러한 추세는 가장 큰 모델까지 계속되며, YOLOv10-X는 56.9M 매개변수로 54.4% mAP에 도달하는 반면 PP-YOLOE+-x는 약간 더 높은 54.7% mAP를 달성하기 위해 무려 98.42M 매개변수가 필요합니다.
속도 면에서 YOLOv10의 NMS-free 아키텍처는 특히 실시간 배포에 뚜렷한 이점을 제공합니다. 가장 작은 모델인 YOLOv10-N은 1.56ms의 인상적인 지연 시간을 자랑하며 edge AI 애플리케이션에 가장 적합한 선택입니다. PP-YOLOE+는 높은 정확도를 달성할 수 있지만 모델 크기가 훨씬 크고 계산 요구 사항이 더 높기 때문에 YOLOv10이 더 효율적이고 광범위한 배포 시나리오에 실용적인 선택입니다.
결론: YOLOv10이 권장되는 이유
YOLOv10과 PP-YOLOE+는 모두 강력한 객체 감지기이지만, YOLOv10은 대다수의 개발자와 연구자에게 더 나은 선택으로 부상하고 있습니다. 획기적인 NMS-free 아키텍처는 대기 시간을 줄이고 배포 파이프라인을 단순화하여 실제 애플리케이션에서 상당한 이점을 제공합니다.
YOLOv10의 주요 장점은 다음과 같습니다.
- 탁월한 효율성: PP-YOLOE+보다 파라미터와 FLOPs가 훨씬 적으면서 경쟁력 있는 mAP 점수를 달성하여 더 나은 속도-정확도 균형을 제공합니다. 이는 더 낮은 컴퓨팅 비용과 덜 강력한 하드웨어에서 실행할 수 있는 능력으로 이어집니다.
- 진정한 End-to-End 감지: YOLOv10은 NMS 병목 현상을 제거하여 특히 로보틱스 및 자율 시스템과 같이 지연 시간에 민감한 환경에서 더 빠르고 쉽게 배포할 수 있습니다.
- 뛰어난 사용자 경험: Ultralytics 에코시스템에 통합된 YOLOv10은 탁월한 사용 편의성, 포괄적인 문서, 활발한 커뮤니티 지원, 간단한 교육 및 내보내기 워크플로를 제공합니다. 이를 통해 개발 시간과 노력을 획기적으로 줄일 수 있습니다.
PP-YOLOE+는 뛰어난 원시 정확도를 제공하지만 PaddlePaddle 생태계에 크게 의존합니다. 더 큰 모델 크기와 프레임워크 종속성으로 인해 고도로 최적화되고 사용자 친화적인 YOLOv10에 비해 유연성이 떨어지고 리소스 집약적인 옵션입니다. 높은 성능, 효율성 및 쉬운 개발의 균형을 요구하는 프로젝트에는 YOLOv10이 확실한 승자입니다.
다른 모델 살펴보기
다른 최첨단 모델을 탐색하는 데 관심이 있는 사람들을 위해 Ultralytics는 광범위한 아키텍처에 대한 자세한 비교를 제공합니다. 여러 비전 작업에서 입증된 다재다능성을 위해 YOLOv8을 살펴보거나 프로젝트에 완벽하게 맞는 모델을 찾기 위해 RT-DETR 및 YOLOv9과 같은 모델과의 비교를 확인하십시오.