콘텐츠로 건너뛰기

YOLOv10 대 PP-YOLOE+: 종합적인 기술 비교

올바른 객체 감지 모델을 선택하는 것은 효율적인 컴퓨터 비전 애플리케이션을 개발하는 데 있어 매우 중요한 단계입니다. 이러한 선택에는 추론 속도, 감지 정확도, 하드웨어 제약 조건 간의 장단점을 비교해야 하는 경우가 많습니다. 이 기술 비교에서는 다음을 분석합니다. YOLOv10과 칭화대학교의 실시간 엔드투엔드 검출기, 그리고 Baidu의 PaddlePaddle 에코시스템의 정확도가 높은 모델인 PP-YOLOE+를 비교합니다. 두 모델 모두 중요한 아키텍처 혁신을 도입했지만 서로 다른 배포 요구 사항과 개발 환경을 충족합니다.

YOLOv10: 실시간 엔드투엔드 탐지를 위한 새로운 표준

YOLOv10 기존 포스트 프로세싱과 관련된 성능 병목 현상을 제거하는 데 중점을 둔 YOLO (You Only Look Once) 시리즈에서 한 단계 도약한 제품입니다. 칭화대학교 연구진이 개발한 이 제품은 비최대 억제NMS의 필요성을 제거하여 지연 시간을 줄이고 효율성을 높였습니다.

저자들: 저자: Ao Wang, Hui Chen, Lihao Liu 등
조직:칭화대학교
날짜: 2024-05-23
ArXiv:https://arxiv.org/abs/2405.14458
GitHub:https://github.com/THU-MIG/yolov10
Docsultralytics

아키텍처 및 주요 기능

YOLOv10 훈련 중에 일관된 이중 할당 전략을 도입합니다. 이 방법을 사용하면 모델이 추론하는 동안 각 객체에 대해 하나의 최적 박스를 예측할 수 있으므로 NMS 후처리가 필요하지 않습니다. 이러한NMS" 설계는 특히 오브젝트 클러스터가 밀집된 장면에서 추론 지연 시간을 크게 줄여줍니다.

아키텍처의 주요 발전 사항은 다음과 같습니다:

  • 총체적인 효율성-정확도 설계: 이 모델은 경량 분류 헤드와 공간 채널 디커플링 다운샘플링을 사용하여 정확도 저하 없이 계산 비용(FLOPs)을 절감합니다.
  • 랭크 가이드 블록 디자인: 속도와 정확도 간의 균형을 최적화하기 위해 모델의 여러 단계에서 다양한 블록 디자인을 사용하여 딥 레이어의 중복성을 줄입니다.
  • 대형 커널 컨볼루션: 대형 커널 컨볼루션을 전략적으로 사용하면 수용 필드가 향상되어 모델이 컨텍스트를 더 잘 이해하고 작은 물체를 detect 수 있습니다.

강점과 약점

YOLOv10 효율성을 극대화하도록 설계되어 실시간 애플리케이션을 위한 강력한 선택이 될 것입니다.

  • 장점: NMS 제거하여 결정론적 추론 속도가 빨라졌습니다. 뛰어난 파라미터 효율성을 제공하여 이전 버전보다 더 적은 수의 파라미터로 높은 mAP 점수를 달성할 수 있습니다. Ultralytics 에코시스템에 통합되어 있어 간단한 Python API를 사용하여 쉽게 훈련하고 배포할 수 있습니다.
  • 약점: 전문 객체 감지기로서 현재 주로 경계 상자 감지에 초점을 맞추고 있지만, Ultralytics 제품군의 다른 모델은 세분화포즈 추정과 같은 광범위한 작업을 지원합니다.

이상적인 사용 사례

  • 자율 로봇 공학: 탐색과 장애물 회피를 위해 순식간에 결정을 내려야 하는 로봇 공학에서는 YOLOv10 저지연 특성이 매우 중요합니다.
  • 엣지 AI 배포: YOLOv10 같은 소형 버전으로 NVIDIA Jetson 또는 Raspberry Pi와 같은 엣지 디바이스에 완벽하게 적합합니다.
  • 트래픽 모니터링: 이 모델은 NMS 오버헤드 없이 밀집된 장면을 처리할 수 있어 실시간 트래픽 관리에 이상적입니다.

YOLOv10 대해 자세히 알아보기

PP-YOLOE+: PaddlePaddle 생태계의 정밀 엔지니어링

PP-YOLOE+는 바이두에서 개발한 PP-YOLOE 시리즈의 진화 버전입니다. 이 제품은 높은 정밀도를 우선시하는 확장 가능한 앵커 프리 디텍터로 설계되었습니다. 이 제품은 PaddlePaddle 프레임워크의 초석 모델 역할을 하며, 특히 해당 환경에 최적화되어 있습니다.

저자들: PaddlePaddle 저자
조직:바이두
날짜: 2022-04-02
ArXiv:https://arxiv.org/abs/2203.16250
GitHubPaddlePaddle
문서PaddlePaddle

아키텍처 및 주요 기능

PP-YOLOE+는 앵커가 없는 아키텍처를 채택하여 앵커 기반 이전 버전에 비해 하이퍼파라미터 검색 공간을 간소화합니다.

주요 기능은 다음과 같습니다:

  • CSPRepResNet 백본: 이 백본은 CSPNet의 그라디언트 흐름 이점과 재파라미터화된 ResNet 블록의 추론 효율성을 결합합니다.
  • 작업 정렬 학습(TAL): 앵커 분류의 품질을 로컬라이제이션 정확도에 따라 동적으로 조정하는 특화된 라벨 할당 전략입니다.
  • 효율적인 작업 정렬 헤드(ET-Head): 충돌을 피하기 위해 분류 및 로컬라이제이션 기능을 독립적으로 처리하는 분리형 탐지 헤드입니다.

강점과 약점

PP-YOLOE+는 강력한 모델이지만 채택에 영향을 줄 수 있는 종속성을 가지고 있습니다.

  • 강점: 다음과 같은 벤치마크에서 뛰어난 정확도를 제공합니다. COCO와 같은 벤치마크에서 특히 더 큰 구성(L 및 X)에서 뛰어난 정확도를 제공합니다. PaddlePaddle 추론 엔진이 지원하는 하드웨어에 매우 최적화되어 있습니다.
  • 약점: 가장 큰 한계는 PaddlePaddle 생태계에 의존한다는 점입니다. 익숙한 개발자의 경우 PyTorch에 익숙한 개발자의 경우 PP-YOLOE+로 마이그레이션하려면 학습 곡선이 더 가파르고 도구 통합에 마찰이 발생할 수 있습니다. 또한 비슷한 정확도를 위해 파라미터 수가 YOLOv10 훨씬 많기 때문에 메모리 사용량이 더 많아집니다.

이상적인 사용 사례

  • 산업 검사: 높은 정확도로 제조 공정에서 미세한 결함을 감지하는 데 적합합니다.
  • 리테일 분석: 스마트 리테일 환경에서 재고 계산 및 제품 인식에 효과적입니다.
  • 재료 분류: 재활용 시설에서 다양한 재료의 자동 분류를 위해 사용됩니다.

PP-YOLOE+에 대해 자세히 알아보세요.

성능 분석: 효율성 대 정확도

기술 메트릭을 비교할 때, YOLOv10 효율성 측면에서 분명한 우위를 보여줍니다. 훨씬 적은 수의 매개변수와 계산 리소스(FLOP)를 사용하면서도 비슷하거나 더 뛰어난 정확도mAP를 달성합니다.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
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
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

주요 내용

  • 효율성: YOLOv10l은 약 44% 적은 파라미터를 사용하면서 PP-YOLOE+l(52.9%)보다 높은 mAP (53.3%)를 달성합니다. 따라서 YOLOv10 훨씬 더 가볍고 빠르게 로드할 수 있습니다.
  • 속도: YOLOv10 NMS 사용하지 않는 설계로 전반적으로 지연 시간이 짧습니다. 예를 들어, YOLOv10n은 1.56ms로 매우 빠르기 때문에 고속 비디오 분석에 탁월합니다.
  • 확장성: PP-YOLOE+x는 원시 mAP (0.3% 더 높음)에서 약간의 우위를 점하지만, YOLOv10x에 비해 거의 두 배의 파라미터(9842만 대 5690만)와 FLOP을 필요로 합니다.

메모리 효율성

YOLOv10 및 YOLO11 같은 Ultralytics 모델은 일반적으로 구형 아키텍처나 무거운 트랜스포머 기반 모델에 비해 훈련과 추론 모두에서 메모리 요구량이 낮습니다. 이러한 효율성 덕분에 표준 GPU 하드웨어에서 더 큰 배치 크기와 더 빠른 훈련 주기를 구현할 수 있습니다.

Ultralytics 이점

두 모델 모두 가능하지만, Ultralytics 에코시스템내에서 YOLOv10 최첨단 YOLO11-와 같은 모델을 선택하면 개발자에게 뚜렷한 이점을 제공합니다.

  1. 사용의 용이성: Ultralytics Python API는 복잡한 상용구 코드를 추상화합니다. 단 몇 줄의 Python 모델을 훈련, 검증 및 배포할 수 있습니다.
  2. 잘 관리된 에코시스템: 사용자는 잦은 업데이트, GitHub의 활발한 커뮤니티, 그리고 다음과 같은 MLOps 도구와의 원활한 통합(예: Ultralytics HUBWeights & Biases.
  3. 다목적성: 표준 객체 감지 외에도 Ultralytics 프레임워크는 인스턴스 분할, 이미지 분류, 포즈 추정, OBB(방향성 경계 상자) 감지를 지원하여 다양한 컴퓨터 비전 작업을 위한 통합 솔루션을 제공합니다.

코드 예제: Ultralytics YOLOv10 실행하기

Ultralytics 라이브러리를 사용하면 워크플로우에 YOLOv10 간편하게 통합할 수 있습니다:

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")

# Display the results
results[0].show()

결론

비교에서 YOLOv10PP-YOLOE+를 비교한 결과, 대부분의 범용 컴퓨터 비전 애플리케이션에 있어 YOLOv10 더 우수한 선택으로 나타났습니다. NMS 사용하지 않는 아키텍처는 오랫동안 지속되어 온 객체 감지 대기 시간의 병목 현상을 해결하며, 매우 효율적인 파라미터 사용으로 엣지 디바이스에서 클라우드 서버에 이르기까지 광범위한 하드웨어에 배포할 수 있습니다.

PaddlePaddle 프레임워크에 엄격하게 묶여 있는 사용자나 계산 효율성보다 정확도의 미미한 향상을 우선시하는 사용자에게는 PP-YOLOE+가 여전히 강력한 경쟁자입니다. 그러나 속도, 정확도, 사용 편의성 사이의 균형을 추구하는 개발자에게는 YOLOv10더 광범위한 Ultralytics 에코시스템이 보다 미래 지향적이고 개발자 친화적인 경로를 제공합니다.

다른 모델 살펴보기

Ultralytics 에코시스템 내에서 더 많은 옵션을 살펴보고 싶다면 다음 비교를 확인해 보세요:

  • YOLO11 대 YOLOv10: 최신 플래그십 모델이 효율성에 중점을 둔 YOLOv10 어떻게 비교되는지 알아보세요.
  • YOLOv10 대 RT-DETR: 실시간 트랜스포머와 CNN 기반 YOLO 아키텍처를 비교합니다.
  • YOLOv8 대 PP-YOLOE+: 널리 채택된 YOLOv8 성능을 바이두의 모델과 비교하여 분석합니다.

댓글