콘텐츠로 건너뛰기

RTDETRv2와 YOLOX: 실시간 객체 감지를 위한 기술 비교

빠르게 진화하는 컴퓨터 비전 환경에서 속도와 정확성 사이의 최적의 균형을 찾기 위한 노력은 혁신을 계속 주도하고 있습니다. 트랜스포머 기반의 RTDETRv2와 앵커가 없는 CNN 기반의 YOLOX라는 두 가지 접근 방식이 선두 주자로 부상했습니다. 이 비교에서는 개발자가 특정 요구 사항에 적합한 도구를 선택하는 데 도움이 되는 아키텍처 차이점, 성능 지표, 이상적인 사용 사례를 살펴봅니다.

모델 개요

기술적인 세부 사항을 살펴보기 전에 이 두 가지 영향력 있는 모델의 기원과 핵심 철학에 대해 알아봅시다.

RTDETRv2

RTDETRv2 (실시간 탐지 트랜스포머 버전 2)는 트랜스포머 아키텍처를 실시간 애플리케이션에 적용하는 데 있어 중요한 진전을 이뤘습니다. 바이두의 연구원들이 개발한 이 솔루션은 추론 지연 시간을 늘리지 않고도 훈련 안정성과 성능을 향상시키는 '백 오브 프리비(Bag-of-Freebies)'를 도입하여 기존 RT-DETR 기반으로 구축되었습니다. 이 기술은 일반적으로 비전 트랜스포머(ViT) 와 관련된 높은 계산 비용을 해결하면서 기존 CNN 디텍터보다 정확도를 높이는 것을 목표로 합니다.

RTDETRv2에 대해 자세히 알아보세요.

YOLOX

YOLOX는 2021년에 앵커가 없는 메커니즘으로 전환하고 디커플링 헤드 및 SimOTA 라벨 할당과 같은 고급 기술을 통합하여 YOLO 제품군에 활력을 불어넣었습니다. YOLO 시리즈의 다크넷 스타일 백본 특성은 유지하면서 앵커 기반 감지기의 많은 한계를 해결하여 엣지 디바이스에서 탁월한 성능을 발휘하는 매우 효율적이고 유연한 모델로 거듭났습니다.

YOLOX에 대해 자세히 알아보세요

성능 분석

RTDETRv2와 YOLOX의 성능 트레이드오프는 뚜렷합니다. RTDETRv2는 복잡한 장면과 가려진 오브젝트를 더 잘 이해하기 위해 트랜스포머의 글로벌 주의 메커니즘을 활용하여 최고 정확도mAP를 우선시합니다. 그러나 여기에는 특히 GPU 메모리 사용량과 관련하여 더 높은 계산 요구 사항이 수반됩니다.

반대로 YOLOX는 속도와 효율성에 최적화되어 있습니다. 앵커가 없는 설계로 감지 헤드를 단순화하여 설계 매개변수의 수를 줄이고 후처리NMS 속도를 높입니다. 특히 나노 및 타이니 모델은 하드웨어 리소스가 제한적인 엣지 AI 배포에 선호되는 경우가 많습니다.

아래 표는 이러한 차이점을 강조하고 있습니다. RTDETRv2가 더 높은 mAP 점수를 달성하는 반면, YOLOX-s는 지연 시간에 민감한 애플리케이션에 적합하다는 것을 보여주는 TensorRT 더 빠른 추론 속도를 제공한다는 점에 유의하세요.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

아키텍처 심층 분석

구조적 차이를 이해하면 이러한 모델이 다르게 작동하는 이유를 명확히 파악하는 데 도움이 됩니다.

RTDETRv2: 하이브리드 인코더-디코더

RTDETRv2는 효율적인 하이브리드 인코더를 도입하여 표준 DETR 모델의 계산 병목 현상을 해결합니다. 이 구성 요소는 멀티 스케일 피처를 처리하여 스케일 내 상호 작용(동일한 피처 레이어 내)과 스케일 간 융합(레이어 간)을 분리합니다.

  • IoU 쿼리 선택: 정적 객체 쿼리를 선택하는 대신 RTDETRv2는 분류 점수를 기반으로 초기 객체 쿼리로 사용할 고정된 수의 이미지 특징을 선택해 초기화를 개선합니다.
  • 유연한 디코더: 디코더는 추론 중에 쿼리 번호의 동적 조정을 지원하여 사용자가 재교육 없이 속도와 정확성을 맞출 수 있도록 합니다.

YOLOX: 앵커 프리 및 디커플링

욜록스는 욜로4와 YOLOv5 사용된 앵커 기반 패러다임에서 벗어나고 있습니다.

  • 앵커 프리: 오브젝트 중심과 크기를 직접 예측함으로써 YOLOX는 수동 앵커 박스 디자인이 필요 없어 하이퍼파라미터 조정의 복잡성을 줄여줍니다.
  • 분리된 헤드: 분류와 회귀 작업을 네트워크 헤드의 여러 가지 분기로 분리합니다. 이러한 분리는 종종 더 빠른 수렴과 더 나은 정확도로 이어집니다.
  • SimOTA: 할당 프로세스를 최적 전송 문제로 간주하는 고급 라벨 할당 전략으로, 글로벌 최적화 비용을 기반으로 양수 샘플을 기준 진실에 동적으로 할당합니다.

앵커 기반 대 앵커 프리

기존 감지기는 사전 정의된 박스(앵커)를 사용해 물체 위치를 추정합니다. YOLOX는 이러한 종속성을 제거하여 아키텍처를 단순화하고 다양한 물체 모양에 대해 모델을 더욱 강력하게 만듭니다. 트랜스포머인 RTDETRv2는 앵커 대신 객체 쿼리를 사용하여 관련 이미지 영역을 동적으로 파악하는 방법을 학습합니다.

강점과 약점

RTDETRv2

  • 강점:
    • 높은 정확도: COCO 벤치마크에서 최첨단 mAP 달성합니다.
    • 글로벌 컨텍스트: 트랜스포머 주의 메커니즘은 장거리 종속성을 효과적으로 포착합니다.
    • 적응성: 쿼리 선택을 조정할 수 있어 추론 시 유연하게 대처할 수 있습니다.
  • 약점:
    • 리소스 집약적: CNN에 비해 훈련 및 추론에 상당한 GPU 메모리가 필요합니다.
    • 느린 훈련: 트랜스포머는 일반적으로 CNN 기반 아키텍처보다 수렴하는 데 시간이 더 오래 걸립니다.

YOLOX

  • 강점:
    • 추론 속도: 매우 빠르며, 특히 작은 변형(나노, 타이니, S)의 경우 더욱 그렇습니다.
    • 배포 친화적: 낮은 FLOP과 매개변수 수로 인해 엣지 디바이스 및 CPUS에 배포하기가 더 쉽습니다.
    • 단순성: 앵커가 없는 설계로 엔지니어링 복잡성을 줄입니다.
  • 약점:
    • 낮은 피크 정확도: RTDETRv2-x와 같은 대형 변압기 모델의 최상위 정확도에 맞추기 위해 노력합니다.
    • 기능 진화: 최신 프레임워크에서 볼 수 있는 일부 멀티모달 기능이 부족합니다.

Ultralytics의 장점: YOLO11을 선택해야 하는 이유

RTDETRv2와 YOLOX는 강력한 모델이지만, 그보다 더 중요한 것은 Ultralytics YOLO 에코시스템이 주도하는 최첨단 YOLO11-가 주도하는 울트라리틱스 욜로 생태계는 개별 모델의 장점을 뛰어넘는 종합적인 솔루션을 제공합니다.

  • 성능 균형: YOLO11 속도와 정확도 간의 최적의 균형을 제공하도록 설계되었습니다. YOLO 제품군의 추론 속도 특성을 유지하면서 트랜스포머 기반 모델의 정확도와 일치하거나 이를 능가하는 경우가 많습니다.
  • 사용 편의성: Ultralytics 개발자 경험을 우선시합니다. 통합 Python API 및 CLI 사용하면 단 몇 줄의 코드만으로 모델을 학습, 검증 및 배포할 수 있습니다.
  • 메모리 효율성: GPU VRAM을 많이 사용하는 RTDETRv2와 달리, YOLO11 훈련과 추론 모두에서 메모리 효율이 높습니다. 따라서 일반 소비자용 하드웨어를 사용하는 연구자와 개발자가 사용할 수 있습니다.
  • 잘 관리된 에코시스템: Ultralytics 모델은 빈번한 업데이트, 활발한 커뮤니티, 광범위한 설명서를 통해 지원됩니다. Ultralytics HUB와 같은 기능은 원활한 모델 관리와 클라우드 교육을 용이하게 합니다.
  • 다목적성: YOLO11 단순한 객체 감지 외에도 인스턴스 분할, 포즈 추정, OBB, 분류를 기본적으로 지원하는 반면, YOLOX와 RTDETRv2는 주로 감지에 초점을 맞추고 있습니다.
  • 훈련 효율성: 다양한 작업에 사용할 수 있는 사전 훈련된 가중치와 정교한 전이 학습 기능을 갖춘 YOLO11 고성능 모델을 훈련하는 데 필요한 시간과 에너지를 대폭 줄여줍니다.

YOLO11에 대해 자세히 알아보세요

코드 예제

Ultralytics 사용하면 이러한 고급 모델을 매우 쉽게 사용할 수 있습니다. 아래는 YOLO11 사용하여 추론을 실행하는 방법의 예시이며, 특히 Ultralytics RT-DETR 직접 지원하므로 원래 리포지토리에 비해 사용이 크게 간소화됩니다.

from ultralytics import RTDETR, YOLO

# Load the Ultralytics YOLO11 model (Recommended)
model_yolo = YOLO("yolo11n.pt")

# Run inference on an image
results_yolo = model_yolo("path/to/image.jpg")

# Load an RT-DETR model via Ultralytics API
model_rtdetr = RTDETR("rtdetr-l.pt")

# Run inference with RT-DETR
results_rtdetr = model_rtdetr("path/to/image.jpg")

결론

RTDETRv2와 YOLOX 중 선택은 궁극적으로 특정 제약 조건에 따라 달라집니다.

  • 학술 연구나 고정밀 산업 검사 등 최고의 정확도가 요구되는 애플리케이션에서 강력한 GPU 리소스를 사용할 수 있는 경우 RTDETRv2를 선택하세요.
  • 지연 시간이 밀리초 단위로 중요한 라즈베리파이나 모바일 기기처럼 리소스가 제한된 환경에 배포하는 경우 YOLOX를 선택하세요.

그러나 대부분의 실제 애플리케이션에서는 그렇지 않습니다, Ultralytics YOLO11 이 탁월한 선택으로 떠오르고 있습니다. 최신 아키텍처의 정확도 이점과 CNN의 속도 및 효율성을 모두 사용자 친화적인 프로덕션 지원 에코시스템에 결합한 제품입니다. 엣지용이든 클라우드용이든 YOLO11 성공에 필요한 도구와 성능을 제공합니다.

다른 비교 살펴보기

결정을 내리는 데 도움이 되도록 다른 모델 비교를 살펴보십시오.


댓글