ニュース:
このレポは、ジョイント検出および埋め込み(JDE)モデルのコードベースです。 JDEは、共有ニューラルネットワークにタスクを同時に埋め込むオブジェクト検出タスクと外観を学習する高速で高性能の複数オブジェクトトラッカーです。技術的な詳細については、ECCV 2020ペーパーで説明しています。このリポジトリを使用することにより、MOT-16チャレンジの「プライベート」プロトコルでMota 64%+を達成でき、 22〜38 fpsでほぼリアルタイム速度で実現できます(この速度は、システム全体の速度です。検出ステップ!
このリポジトリが、研究/エンジニアがより実用的なMOTシステムを開発するのに役立つことを願っています。アルゴリズム開発のために、トレーニングデータ、ベースラインモデル、評価方法を提供して、レベルの遊び場を作成します。アプリケーションの使用については、鐘やホイッスルなしで生ビデオを入力として撮影する小さなビデオデモも提供します。
pip install motmetrics
)pip install cython_bbox
)使用法:
python demo.py --input-video path/to/your/input/video --weights path/to/model/weights
--output-format video --output-root path/to/output/root
docker build -t towards-realtime-mot docker/
docker run --rm --gpus all -v $( pwd ) /:/Towards-Realtime-MOT -ti towards-realtime-mot /bin/bash
cd /Towards-Realtime-MOT ;
python demo.py --input-video path/to/your/input/video --weights path/to/model/weights
--output-format video --output-root path/to/output/root
トレーニング/評価データセットの詳細な説明については、DataSet_Zoo.mdを参照してください。
Darknet-53イメージネット事前処理モデル:[Darknet Official]
さまざまな入力解決策を備えた訓練されたモデル:
モデル | モタ | IDF1 | IDS | FP | fn | FPS | リンク |
---|---|---|---|---|---|---|---|
JDE-108x608 | 73.1 | 68.9 | 1312 | 6593 | 21788 | 22.2 | [Google] [Baidu] |
JDE-864x480 | 70.8 | 65.8 | 1279 | 5653 | 25806 | 30.3 | [Google] [Baidu] |
JDE-576x320 | 63.7 | 63.3 | 1307 | 6657 | 32794 | 37.9 | [Google] [Baidu] |
パフォーマンスは、参照のためだけにMOT-16トレーニングセットでテストされています。ランニング速度は、Nvidia Titan XP GPUでテストされています。他の方法とのより包括的な比較のために、MOT-16テストセットでテストし、MOT-16ベンチマークに結果を送信できます。結果はプライベート検出器トラックに提出する必要があることに注意してください。
python track.py --cfg ./cfg/yolov3_1088x608.cfg --weights /path/to/model/weights
デフォルトでは、スクリプトはMOT-16トレーニングセットで評価を実行します。テストセットで評価する場合は、コマンドラインに--test-mot16
を追加してください。結果は$DATASET_ROOT/results/*.txt
のテキストファイルに保存されます。視覚化された結果を取得するために、 --save-images
または--save-videos
フラグを追加することもできます。視覚化された結果は$DATASET_ROOT/outputs/
に保存されます
cfg/ccmcpe.json
を編集し、トレーニング/検証の組み合わせを構成します。データセットは画像リストで表されます。たとえばdata/*.train
参照してください。 CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 python train.py
8x Nvidia Titan XPを使用して、バッチサイズ32でモデルをトレーニングします。バッチサイズ(および学習レートを一緒に調整して)を調整できます。また、画像サイズが小さくなるとトレーニングすることもできます。これにより、推論時間が速くなります。ただし、画像サイズは32の倍数(ダウンサンプリングレート)であることに注意してください。
カスタムデータセットの追加は非常に簡単です。必要なのは、トレーニングセットと同じ形式で注釈ファイルを整理することです。データセット形式については、dataset_zoo.mdを参照してください。
コードの大部分は、Ultralytics/Yolov3とLongCW/Motdtから借りています。
このリポジトリがプロジェクトや調査で役立つ場合は、引用することを検討してください。
@article{wang2019towards,
title={Towards Real-Time Multi-Object Tracking},
author={Wang, Zhongdao and Zheng, Liang and Liu, Yixuan and Wang, Shengjin},
journal={The European Conference on Computer Vision (ECCV)},
year={2020}
}