yehengchen/Object-Detection-and-Tracking

Multi-Object Tracking via DeepSORT

解決する課題

本プロジェクトは、画像や動画における物体検出と追跡の課題に取り組み、リアルタイム性能とロボットシステムとの統合に焦点を当てています。一般的な1ステージ検出器(YOLOやSSDなど)と2ステージ検出器(R-CNNのバリエーションなど)を1つの実用的なツールキットにまとめ、カスタムデータでモデルをトレーニングし、ライブカメラフィードやROSベースのロボットで実行できるようにします。

仕組み

このリポジトリは、1ステージおよび2ステージの検出アプローチに整理されています。1ステージ向けには、YOLOv3/YOLOv4と追跡アルゴリズム(SORTおよびDeep SORT)を組み合わせた、歩行者や車両のカウント、さらには社会的距離の測定を行うためのすぐに使えるパイプラインを提供します。また、YOLOv3とROSを組み合わせて把持検出を行う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ファミリー)を1か所に統合
  • リアルタイム追跡オプション:カウントと監視のためのSORTおよびDeep SORT
  • 把持検出や火星探査機の例を含む、ロボット知覚のためのROS統合
  • カスタムデータセットでYOLOおよびMask R-CNNをトレーニングするためのガイド
  • データセット変換ツール(COCOからYOLO、VOCからYOLO)を含む
  • mAPやIoUなどの重要な概念を説明する教育リソースへのリンク

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト