https://github.com/bestsongc/yolov7_object_tracking
yolov7 with strongsort ,bytetracker, ocsort
Science Score: 10.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (6.9%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
yolov7 with strongsort ,bytetracker, ocsort
Basic Info
- Host: GitHub
- Owner: Bestsongc
- License: gpl-3.0
- Default Branch: main
- Size: 46.6 MB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Fork of akashAD98/yolov7_object_tracking
Created almost 3 years ago
· Last pushed over 3 years ago
https://github.com/Bestsongc/yolov7_object_tracking/blob/main/
# yolov7_object_tracking yolov7 with strongsort ,bytetracker, ocsort # Yolov7 + StrongSORT with OSNet ## Introduction This repository contains a highly configurable two-stage-tracker that adjusts to different deployment scenarios. The detections generated by [YOLOv5](https://github.com/ultralytics/yolov5), a family of object detection architectures and models pretrained on the COCO dataset, are passed to the tracker of your choice. Supported ones at the moment are: [StrongSORT](https://github.com/dyhBUPT/StrongSORT)[](https://arxiv.org/pdf/2202.13514.pdf) [OSNet](https://github.com/KaiyangZhou/deep-person-reid)[](https://arxiv.org/abs/1905.00953), [OCSORT](https://github.com/noahcao/OC_SORT)[](https://arxiv.org/pdf/2203.14360.pdf) and [ByteTrack](https://github.com/ifzhang/ByteTrack)[](https://arxiv.org/pdf/2110.06864.pdf). They can track any object that your Yolov5 model was trained to detect. ## Tutorials refrencce * [Yolov5 training (link to external repository)](https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data) * [Deep appearance descriptor training (link to external repository)](https://kaiyangzhou.github.io/deep-person-reid/user_guide.html) * [ReID model export to ONNX, OpenVINO, TensorRT and TorchScript](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/wiki/ReID-multi-framework-model-export) * Inference acceleration with Nebullvm * [Yolov5](https://colab.research.google.com/drive/1J6dl90-zOjNNtcwhw7Yuuxqg5oWp_YJa?usp=sharing) * [ReID](https://colab.research.google.com/drive/1APUZ1ijCiQFBR9xD0gUvFUOC8yOJIvHm?usp=sharing) ## Experiments * [Yolov5 StrongSORT OSNet vs other trackers MOT17](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/wiki/MOT-17-evaluation-(private-detector)) * [Yolov5 StrongSORT OSNet vs other trackers MOT16 (deprecated)](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/wiki/MOT-16-evaluation) * [StrongSORT ablation study](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/wiki/Yolov5DeepSORTwithOSNet-vs-Yolov5StrongSORTwithOSNet-ablation-study-on-MOT16) * [Effect of different Osnet architectures on MOT16](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/wiki/OSNet-architecture-performances-on-MOT16) * [Yolov5 StrongSORT vs BoTSORT vs OCSORT](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/wiki/StrongSORT-vs-BoTSORT-vs-OCSORT) * Yolov5 [BoTSORT](https://arxiv.org/abs/2206.14651) branch: https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/tree/botsort ## Before you run the tracker 1. Clone the repository recursively: `git clone --recurse-submodules https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet.git` If you already cloned and forgot to use `--recurse-submodules` you can run `git submodule update --init` 2. Make sure that you fulfill all the requirements: Python 3.8 or later with all [requirements.txt](https://github.com/mikel-brostrom/Yolov5_DeepSort_Pytorch/blob/master/requirements.txt) dependencies installed, including torch>=1.7. To install, run: `pip install -r requirements.txt` ## Tracking methods ```bash $ python track.py --tracking-method strongsort ocsort bytetrack ``` ## Tracking sources Tracking can be run on most video formats ```bash $ python track.py --source 0 # webcam img.jpg # image vid.mp4 # video path/ # directory path/*.jpg # glob 'https://youtu.be/Zgi9g1ksQHc' # YouTube 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP stream ``` ## Select object detection and ReID model ### Yolov5 There is a clear trade-off between model inference speed and accuracy. In order to make it possible to fulfill your inference speed/accuracy needs you can select a Yolov5 family model for automatic download ```bash $ python track.py --source 0 --yolo-weights yolov5n.pt --img 640 yolov5s.tflite yolov5m.pt yolov5l.onnx yolov5x.pt --img 1280 ... ``` ### ReID The above applies to StrongSORT models as well. Choose a ReID model based on your needs from this ReID [model zoo](https://kaiyangzhou.github.io/deep-person-reid/MODEL_ZOO) ```bash $ python track.py --source 0 --reid-weights osnet_x0_25_market1501.pt mobilenetv2_x1_4_msmt17.engine resnet50_msmt17.onnx osnet_x1_0_msmt17.pt ... ``` ## Filter tracked classes By default the tracker tracks all MS COCO classes. If you only want to track persons I recommend you to get [these weights](https://drive.google.com/file/d/1gglIwqxaH2iTvy6lZlXuAcMpd_U0GCUb/view?usp=sharing) for increased performance ```bash python track.py --source 0 --yolo-weights yolov5/weights/crowdhuman_yolov5m.pt --classes 0 # tracks persons, only ``` If you want to track a subset of the MS COCO classes, add their corresponding index after the classes flag ```bash python track.py --source 0 --yolo-weights yolov5s.pt --classes 16 17 # tracks cats and dogs, only ``` [Here](https://tech.amikelive.com/node-718/what-object-categories-labels-are-in-coco-dataset/) is a list of all the possible objects that a Yolov5 model trained on MS COCO can detect. Notice that the indexing for the classes in this repo starts at zero. ## MOT compliant results Can be saved to your experiment folder `runs/track/_ /` by ```bash python track.py --source ... --save-txt ``` ## Cite If you find this project useful in your research, please consider cite: ```latex @misc{yolov5-strongsort-osnet-2022, title={Real-time multi-camera multi-object tracker using YOLOv5 and StrongSORT with OSNet}, author={Mikel Brostrm}, howpublished = {\url{https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet}}, year={2022} } ``` ## Contact For Yolov5 DeepSort OSNet bugs and feature requests please visit [GitHub Issues](https://github.com/mikel-brostrom/Yolov5_StrongSORT_OSNet/issues). For business inquiries or professional support requests please send an email to: yolov5.deepsort.pytorch@gmail.com
Owner
- Name: Bestsongc
- Login: Bestsongc
- Kind: user
- Repositories: 1
- Profile: https://github.com/Bestsongc