Jetson Nano2Gを使って、オブジェクトトラッキング(DeepSORT)ができるように実装していきます
Jetson Nano4Gでも同様の手順で実装できます
環境
・YOLOv5 https://github.com/ultralytics/yolov5
・Jetson Nano2G(4G) SWAPファイル設定と冷却ファン必須
・JetPack 4.6
・OpenCV 4.5.1
・PyTorch 1.9.0
・TorchVision 0.10.0
更新履歴
2021年10月 初版
このシリーズのゴール
Jetson Nano2G(4G) でUSBカメラを使って
オブジェクトトラッキング(DeepSORT)を動かします
DeepSORTの論文こちら
https://arxiv.org/pdf/1703.07402v1.pdf
1.準備
Jetson Nano2G(4G)でYOLOv5が動く環境が構築されていること
環境構築ができていれば簡単です
環境構築ができてない場合はこのシリーズを参照
[YOLOv5をJetson Nano2G(4G)で動かして、物体を検知するから応用まで その1]
(https://qiita.com/ShimoyamaAi/items/9b97f0888632fbc342ec)
[YOLOv5をJetson Nano2G(4G)で動かして、物体を検知するから応用まで その2]
(https://qiita.com/ShimoyamaAi/items/57a9f0b5c3996b651bce)
[YOLOv5をJetson Nano2G(4G)で動かして、物体を検知するから応用まで その3]
(https://qiita.com/ShimoyamaAi/items/7e44d07bc4b98d7ee055)
[YOLOv5をJetson Nano2G(4G)で動かして、物体を検知するから応用まで その4]
(https://qiita.com/ShimoyamaAi/items/a4846de8c72c610d541f)
2.実装
クローンします
git clone --recurse-submodules https://github.com/mikel-brostrom/Yolov5_DeepSort_Pytorch.git
環境が崩れてしまわないように
requirements.txtをコメントアウトします
# pip install -r requirements.txt
# base ----------------------------------------
# matplotlib>=3.2.2
# numpy>=1.18.5
# opencv-python>=4.1.2
# Pillow
# PyYAML>=5.3.1
# scipy>=1.4.1
# torch>=1.7.0
# torchvision>=0.8.1
# tqdm>=4.41.0
# plotting ------------------------------------
# seaborn>=0.11.0
# pandas
# deep_sort -----------------------------------
easydict
とりあえず動かしてみます
python3 track.py --source 0 --show-vid
ここからは特定の対象物だけで動かしてみます
YOLOv5 と同じように --class で指定できます
人の場合は
python3 track.py --source 0 --show-vid --class 0
実行結果です