yehengchen/Object-Detection-and-Tracking

Multi-Object Tracking via DeepSORT

해결하는 문제

이 프로젝트는 이미지와 비디오에서 객체를 탐지하고 추적하는 과제를 해결하며, 실시간 성능과 로봇 시스템과의 통합에 중점을 둡니다. 인기 있는 1단계 탐지기(YOLO 및 SSD 등)와 2단계 탐지기(R-CNN 변형 등)를 하나의 실용적인 툴킷으로 통합하여, 사용자 지정 데이터로 모델을 학습시키고 라이브 카메라 피드나 ROS 기반 로봇에서 실행할 수 있도록 합니다.

작동 방식

이 저장소는 1단계 및 2단계 탐지 접근 방식으로 구성되어 있습니다. 1단계의 경우, YOLOv3/YOLOv4와 추적 알고리즘(SORT 및 Deep SORT)을 결합하여 보행자나 차량을 계수하고 사회적 거리를 측정하는 즉시 사용 가능한 파이프라인을 제공합니다. 또한 YOLOv3와 ROS를 결합하여 파지(grasp) 탐지를 수행하는 Darknet_ROS와 화성 탐사선 시뮬레이션에서 암석을 추적하기 위한 DeepLabv3+ ROS 버전도 포함되어 있습니다. 2단계 섹션에서는 영역 기반 CNN(Fast R-CNN, Faster R-CNN, Mask R-CNN)을 다루며, 자신의 이미지로 Mask R-CNN을 학습시키는 지침을 제공합니다. 사용자 지정 학습을 지원하기 위해 COCO 또는 Pascal VOC 형식으로 데이터셋을 준비하고 YOLO 형식으로 변환하는 방법을 설명합니다.

대상 사용자

딥러닝에 대한 기본 지식이 있는 로봇 공학 및 컴퓨터 비전 개발자를 대상으로 합니다. 설정에는 Ubuntu 16.04/18.04, ROS Kinetic 또는 Melodic, 특정 NVIDIA GPU(GTX 1080Ti 또는 RTX 2080Ti), Python 2.7/3.6이 필요합니다. 자신의 ROS 기반 로봇에 객체 탐지 및 추적 기능을 구축하고 싶거나 실용적인 파이프라인 예제가 필요한 경우, 이 모음집은 단계별 링크와 테스트된 구성을 제공합니다.

주요 특징

  • 여러 탐지 아키텍처(YOLO, SSD, R-CNN 제품군)를 한곳에 통합
  • 실시간 추적 옵션: 계수 및 모니터링을 위한 SORT 및 Deep SORT
  • 파지 탐지 및 화성 탐사선 예제를 포함한 로봇 인식을 위한 ROS 통합
  • 사용자 지정 데이터셋에서 YOLO 및 Mask R-CNN을 학습시키기 위한 가이드
  • 데이터셋 변환 도구 포함(COCO to YOLO, VOC to YOLO)
  • mAP 및 IoU와 같은 핵심 개념을 설명하는 교육 리소스 링크

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트