Baidu의 RT-DETR: Vision Transformer 기반 실시간 객체 감지기
개요
Baidu에서 개발한 실시간 감지 트랜스포머RT-DETR는 높은 정확도를 유지하면서 실시간 성능을 제공하는 최첨단 엔드투엔드 객체 감지기입니다. NMS 필요 NMS 프레임워크인 DETR의 아이디어를 기반으로 하는 한편, 실시간 속도를 높이기 위해 컨버팅 기반 백본과 효율적인 하이브리드 인코더를 도입했습니다. RT-DETR 스케일 내 상호 작용과 스케일 간 융합을 분리하여 멀티스케일 기능을 효율적으로 처리합니다. 이 모델은 적응력이 뛰어나 재학습 없이 다양한 디코더 레이어를 사용하여 추론 속도를 유연하게 조정할 수 있습니다. RT-DETR CUDA 같은 가속화된 백엔드(예: TensorRT)에서 다른 많은 실시간 객체 검출기보다 뛰어난 성능을 발휘합니다.
참고: 객체 감지를 위해 Baidu의 RT-DETR 사용하는 방법 🚀 Ultralytics 사용한 추론 및 벤치마킹 🚀
Baidu의 RT-DETR 개요. RT-DETR 모델 아키텍처 다이어그램은 인코더에 대한 입력으로 백본의 마지막 세 단계 {S3, S4, S5}를 보여줍니다. 효율적인 하이브리드 인코더는 스케일 내 특징 상호 작용(AIFI)과 스케일 간 특징 융합 모듈(CCFM)을 통해 멀티스케일 특징을 이미지 특징 시퀀스로 변환합니다. IoU 쿼리 선택은 디코더의 초기 오브젝트 쿼리로 사용할 고정된 수의 이미지 특징을 선택하는 데 사용됩니다. 마지막으로, 보조 예측 헤드가 있는 디코더는 객체 쿼리를 반복적으로 최적화하여 박스 및 신뢰 점수(소스)입니다.
주요 기능
- 효율적인 하이브리드 인코더: Baidu의 RT-DETR은 스케일 내 상호 작용과 스케일 간 융합을 분리하여 멀티 스케일 특징을 처리하는 효율적인 하이브리드 인코더를 사용합니다. 이 고유한 Vision Transformers 기반 설계는 계산 비용을 줄이고 실시간 객체 탐지를 가능하게 합니다.
- IoU 쿼리 선택: Baidu의 RT-DETR IoU 쿼리 선택을 활용하여 객체 쿼리 초기화를 개선합니다. 이를 통해 모델이 장면에서 가장 관련성이 높은 객체에 집중하여 감지 정확도를 높일 수 있습니다.
- 적응형 추론 속도: Baidu의 RT-DETR은 재학습 없이 다양한 디코더 레이어를 사용하여 추론 속도를 유연하게 조정할 수 있도록 지원합니다. 이러한 적응성은 다양한 실시간 객체 감지 시나리오에서 실제 적용을 용이하게 합니다.
- NMS 프레임워크: DETR을 기반으로 하는 RT-DETR 비최대 억제 후처리가 필요하지 않아 탐지 파이프라인을 간소화하고 잠재적으로 효율성을 개선합니다.
- Anchor-Free Detection: 앵커 프리 검출기로서 RT-DETR은 검출 과정을 단순화하고 다양한 데이터셋에서 일반화 성능을 향상시킬 수 있습니다.
사전 훈련된 모델
Ultralytics python API는 다양한 스케일의 사전 훈련된 PaddlePaddle RT-DETR 모델을 제공합니다.
- RT-DETR: COCO val2017에서 53.0% AP , T4 GPU 114 FPS
- RT-DETR: COCO val2017에서 54.8% AP , T4 GPU 74 FPS
또한, Baidu는 2024년 7월에 RTDETRv2를 출시하여 향상된 성능 지표로 원래 아키텍처를 더욱 개선했습니다.
사용 예시
이 예제는 간단한 RT-DETR 훈련 및 추론 예제를 제공합니다. 이러한 모드 및 기타 예측, 훈련, 유효성 검사 및 내보내기 문서 페이지에 대한 전체 문서를 참조하십시오.
예시
from ultralytics import RTDETR
# Load a COCO-pretrained RT-DETR-l model
model = RTDETR("rtdetr-l.pt")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the RT-DETR-l model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
# Load a COCO-pretrained RT-DETR-l model and train it on the COCO8 example dataset for 100 epochs
yolo train model=rtdetr-l.pt data=coco8.yaml epochs=100 imgsz=640
# Load a COCO-pretrained RT-DETR-l model and run inference on the 'bus.jpg' image
yolo predict model=rtdetr-l.pt source=path/to/bus.jpg
지원되는 작업 및 모드
이 표는 모델 유형, 특정 사전 학습된 가중치, 각 모델에서 지원하는 작업 및 ✅ 이모지로 표시된 다양한 모드(Train, Val, Predict, Export)를 보여줍니다.
| 모델 유형 | 사전 훈련된 가중치 | 지원되는 작업 | 추론 | 검증 | 훈련 | 내보내기 |
|---|---|---|---|---|---|---|
| RT-DETR Large | rtdetr-l.pt | 객체 감지 | ✅ | ✅ | ✅ | ✅ |
| RT-DETR Extra-Large | rtdetr-x.pt | 객체 감지 | ✅ | ✅ | ✅ | ✅ |
이상적인 사용 사례
RT-DETR은 높은 정확도와 실시간 성능이 모두 필요한 애플리케이션에 특히 적합합니다.
- 자율 주행: 속도와 정확성이 모두 중요한 자율 주행 시스템에서 신뢰할 수 있는 환경 인식을 제공합니다. 자율 주행차의 AI에 대해 자세히 알아보세요.
- 고급 로보틱스: 동적 환경에서 정확한 객체 인식 및 상호 작용이 필요한 복잡한 작업을 로봇이 수행할 수 있도록 지원합니다. 로봇 공학에서 AI의 역할 살펴보기.
- 의료 영상: 객체 탐지의 정확성이 진단에 중요한 헬스케어 분야에 적용됩니다. 헬스케어 분야의 AI에 대해 알아보세요.
- 감시 시스템: 높은 감지 정확도로 실시간 모니터링이 필요한 보안 애플리케이션용. 보안 경보 시스템에 대해 자세히 알아보세요.
- 위성 이미지 분석: 전역 컨텍스트 이해가 중요한 고해상도 이미지의 상세 분석용. 위성 이미지의 컴퓨터 비전에 대해 읽어보기.
인용 및 감사의 말씀
Baidu의 RT-DETR을 연구 또는 개발 작업에 사용하는 경우 원래 논문을 인용하십시오.
@misc{lv2023detrs,
title={DETRs Beat YOLOs on Real-time Object Detection},
author={Wenyu Lv and Shangliang Xu and Yian Zhao and Guanzhong Wang and Jinman Wei and Cheng Cui and Yuning Du and Qingqing Dang and Yi Liu},
year={2023},
eprint={2304.08069},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
RTDETRv2의 경우 2024년 논문을 인용할 수 있습니다.
@misc{lv2024rtdetrv2,
title={RTDETRv2: All-in-One Detection Transformer Beats YOLO and DINO},
author={Wenyu Lv and Yian Zhao and Qinyao Chang and Kui Huang and Guanzhong Wang and Yi Liu},
year={2024},
eprint={2407.17140},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
PaddlePaddle 팀과 Baidu에게 컴퓨터 비전 커뮤니티를 위한 귀중한 리소스를 만들고 유지 관리해 주셔서 감사합니다. Vision Transformers 기반 실시간 객체 감지기인 RT-DETR 개발을 통해 이 분야에 기여한 점에 대해 깊이 감사드립니다.
FAQ
Baidu의 RT-DETR 모델은 무엇이며 어떻게 작동합니까?
바이두의 RT-DETR (실시간 감지 트랜스포머)은 비전 트랜스포머 아키텍처를 기반으로 구축된 고급 실시간 물체 감지기입니다. 효율적인 하이브리드 인코더를 통해 스케일 내 상호 작용과 스케일 간 융합을 분리하여 멀티스케일 기능을 효율적으로 처리합니다. 이 모델은 IoU 쿼리 선택을 사용하여 가장 관련성이 높은 객체에 집중함으로써 감지 정확도를 높입니다. 재교육 없이 디코더 레이어를 조정하여 달성하는 적응형 추론 속도 덕분에 RT-DETR 다양한 실시간 객체 감지 시나리오에 적합합니다. RT-DETR 기능에 대한 자세한 내용은 RT-DETR Arxiv 논문에서 확인하세요.
Ultralytics에서 제공하는 사전 훈련된 RT-DETR 모델을 어떻게 사용할 수 있습니까?
Ultralytics Python API를 활용하여 사전 훈련된 PaddlePaddle RT-DETR 모델을 사용할 수 있습니다. 예를 들어, COCO val2017에서 사전 훈련된 RT-DETR 모델을 로드하고 T4 GPU 높은 FPS를 달성하려면 다음 예제를 활용할 수 있습니다:
예시
from ultralytics import RTDETR
# Load a COCO-pretrained RT-DETR-l model
model = RTDETR("rtdetr-l.pt")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the RT-DETR-l model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
# Load a COCO-pretrained RT-DETR-l model and train it on the COCO8 example dataset for 100 epochs
yolo train model=rtdetr-l.pt data=coco8.yaml epochs=100 imgsz=640
# Load a COCO-pretrained RT-DETR-l model and run inference on the 'bus.jpg' image
yolo predict model=rtdetr-l.pt source=path/to/bus.jpg
다른 실시간 객체 감지기 대신 Baidu의 RT-DETR을 선택해야 하는 이유는 무엇인가요?
바이두의 RT-DETR 효율적인 하이브리드 인코더와 IoU 쿼리 선택으로 높은 정확도를 유지하면서 계산 비용을 대폭 절감하는 것이 특징입니다. 재교육 없이 다양한 디코더 레이어를 사용하여 추론 속도를 조정할 수 있는 고유한 기능으로 상당한 유연성을 제공합니다. 따라서 다른 많은 실시간 오브젝트 감지기를 능가하는 CUDA 같은 가속화된 백엔드에서 실시간 성능을 필요로 하는 애플리케이션에 특히 유리합니다( TensorRT 포함). 또한 트랜스포머 아키텍처는 기존의 CNN 기반 감지기에 비해 더 나은 글로벌 컨텍스트 이해를 제공합니다.
RT-DETR은 다양한 실시간 애플리케이션에 적합한 적응형 추론 속도를 어떻게 지원하나요?
Baidu의 RT-DETR은 재학습 없이 다양한 디코더 레이어를 사용하여 추론 속도를 유연하게 조정할 수 있습니다. 이러한 적응성은 다양한 실시간 객체 감지 작업에서 성능을 확장하는 데 매우 중요합니다. 낮은 정밀도가 필요한 더 빠른 처리 또는 더 느리지만 더 정확한 감지가 필요한 경우 RT-DETR을 특정 요구 사항에 맞게 조정할 수 있습니다. 이 기능은 다양한 컴퓨팅 기능을 가진 장치에 모델을 배포할 때 특히 유용합니다.
RT-DETR 모델을 훈련, 유효성 검사 및 내보내기와 같은 다른 Ultralytics 모드와 함께 사용할 수 있습니까?
예, RT-DETR 모델은 학습, 검증, 예측 및 내보내기를 포함한 다양한 Ultralytics 모드와 호환됩니다. 이러한 모드 활용 방법에 대한 자세한 내용은 각각의 문서(Train, Val, Predict 및 Export)를 참조하십시오. 이를 통해 객체 감지 솔루션 개발 및 배포를 위한 포괄적인 워크플로우를 보장할 수 있습니다. Ultralytics 프레임워크는 다양한 모델 아키텍처에서 일관된 API를 제공하므로 RT-DETR 모델을 쉽게 사용할 수 있습니다.