mgonzs13/yolo_ros
Ultralytics YOLOv8, YOLOv9, YOLOv10, YOLOv11, YOLOv12 for ROS 2
해결하는 문제
yolo_ros는 Ultralytics YOLO 모델을 위한 ROS 2 래퍼로, 로보틱스 개발자가 로봇 소프트웨어 스택에 고급 컴퓨터 비전 작업을 쉽게 통합할 수 있도록 합니다. 이 패키지는 원시 카메라 영상과 실행 가능한 공간 데이터 사이의 격차를 메우며, 로봇 환경 내 객체의 객체 탐지, 추적, 3D 위치 추정을 표준화된 방식으로 수행할 수 있도록 합니다.
작동 방식
이 패키지는 Ultralytics YOLO 라이브러리를 래핑하여 그 기능을 ROS 2 노드로 노출합니다. 카메라 토픽에서 오는 RGB 이미지를 처리하고, 검출 결과, 추적 ID, 디버그 이미지를 게시합니다. 3D 탐지 모드로 구성된 경우, RGB-D 카메라에서 오는 깊이 이미지를 사용하여 2D 경계 상자 또는 세그멘테이션 마스크를 3D 공간으로 투영하고, 타겟 프레임(예: base_link)에 대해 상대적인 3D 경계 상자와 키포인트를 계산합니다.
대상 사용자
ROS 2(Humble, Iron, Jazzy, Kilted, Lyrical, Rolling) 및 RGB-D 카메라를 사용하여 로봇용 객체 탐지, 인스턴스 세그멘테이션 또는 인간 자세 추정을 구현하고자 하는 개발자 및 연구자.
주요 특징
- 광범위한 모델 지원: YOLO v3부터 v12, YOLO-World, YOLOE, YOLOv26까지 넓은 범위의 YOLO 버전과 호환.
- 3D 공간 인식: 깊이 데이터를 사용하여 2D 탐지를 3D 경계 상자와 키포인트로 변환.
- 라이프사이클 노드 지원: 시스템이 비활성 상태일 때 리소스 사용량(CPU/VRAM)을 최적화하기 위해 ROS 2 라이프사이클 노드를 구현.
- 다양한 비전 작업 지원: 객체 탐지, 추적, ByteTrack, 인스턴스 세그멘테이션, 인간 자세 추정을 지원.
- YOLO-World 지원: 노드를 재시작하지 않고도 검출 클래스를 동적으로 업데이트할 수 있는 서비스 포함.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트