uncertain-identity-aware-tracking
https://github.com/ngobibibnbe/uncertain-identity-aware-tracking
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.3%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: ngobibibnbe
- Language: Jupyter Notebook
- Default Branch: main
- Size: 203 MB
Statistics
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Uncertain Identity Aware Tracking
CVPR2024 CV4animals workshop Poster
Dataset
The dataset is available in the dataset folder
Files
Bytetrack: contains code for getting the tracker transition matrix, add observations, and perform the HMM Tracking
forwardBackward.py: contains code performing the HMM Tracking
ATQ.py: contains code for adding Identifier informations, could be feeder or artificial data for the time
Requirements
To install the required packages, run the following commands:
bash
pip install -r Bytetrack_requirements.txt
pip3 install cython
pip3 install 'git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI'
pip3 install cython_bbox
pip install -r requirements.txt
Tracker matching
We used Bytetrack as tracker to get the tracker-matching matrix type those commands:
```bash cd pathtobytetrack/ByteTrack
python3 tools/demotrackm.py video -f exps/example/mot/yoloxsmixdet.py -c pathtobytetrack/ByteTrack/models/yoloXspigtrainedmodel400images.tar --path pathtobytetrack/ByteTrack/videos/GR7720200512111314.mp4 --fuse --saveresult --device cpu --fps 25 --conf 0.2 --trackthres 0.2 --matchthresh 0.8 --track_buffer 100 --nms 0.45 --tsize 416 ```
Reproduce experiments
you can reproduce our test with generated visit using the command
bash
performance_test.py artificial_visits
To reproduce the test with real feeder data provided by the feeder
bash
performance_test.py feeder
To benchmark the models we tested previously you can do
bash
performance_test.py tracker_test
To visualize MOTA, IDF1, number of switches etc.
you can launch the notebook: Bytetrack/MOTmetricevaluation/tracking_evaluation.ipynb
Exemple where the HMM based Tracking Framework fix the tracker identity switch
* Exemple of tracker identity switch fixed by the HMM based tracking framework for the pig with RWID 4818 *
Owner
- Name: nams2000
- Login: ngobibibnbe
- Kind: user
- Repositories: 37
- Profile: https://github.com/ngobibibnbe
GitHub Events
Total
- Watch event: 3
- Push event: 2
Last Year
- Watch event: 3
- Push event: 2
Dependencies
- Pillow *
- filterpy *
- h5py *
- lap *
- loguru *
- motmetrics *
- ninja *
- numpy ==1.20
- onnx *
- onnx-simplifier *
- onnxruntime *
- opencv-python *
- opencv_python *
- openpyxl *
- scikit-image *
- tabulate *
- tensorboard *
- thop *
- torch >=1.7
- torchvision >=0.10.0
- tqdm *
- Babel ==2.12.1
- GitPython ==3.1.31
- Jinja2 ==3.1.2
- Mako ==1.1.3
- MarkupSafe ==2.0.1
- Pillow ==9.0.1
- PyJWT ==2.3.0
- PyNaCl ==1.5.0
- Pygments ==2.14.0
- SecretStorage ==3.3.1
- Send2Trash ==1.8.0
- aiobotocore ==2.5.0
- aiofiles ==22.1.0
- aiohttp ==3.8.4
- aioitertools ==0.11.0
- aiosignal ==1.3.1
- aiosqlite ==0.18.0
- anyio ==3.6.2
- appdirs ==1.4.4
- argon2-cffi ==21.3.0
- argon2-cffi-bindings ==21.2.0
- arrow ==1.2.3
- asttokens ==2.2.1
- async-timeout ==4.0.2
- attrs ==22.2.0
- backcall ==0.2.0
- bcrypt ==3.2.0
- beautifulsoup4 ==4.12.0
- bleach ==6.0.0
- blinker ==1.4
- certifi ==2020.6.20
- cffi ==1.15.1
- chardet ==4.0.0
- charset-normalizer ==3.1.0
- click ==8.0.3
- cmake ==3.26.3
- colorama ==0.4.4
- coloredlogs ==15.0.1
- comm ==0.1.3
- contourpy ==1.1.0
- croniter ==1.3.14
- cryptography ==3.4.8
- cycler ==0.11.0
- cython *
- debugpy ==1.6.6
- decorator ==5.1.1
- defusedxml ==0.7.1
- distlib ==0.3.6
- distro ==1.7.0
- docker-pycreds ==0.4.0
- et-xmlfile ==1.1.0
- executing ==1.2.0
- fasteners ==0.14.1
- fastjsonschema ==2.16.3
- filelock ==3.10.7
- flatbuffers ==23.5.26
- fonttools ==4.40.0
- fqdn ==1.5.1
- frozenlist ==1.3.3
- fsspec ==2023.4.0
- future ==0.18.2
- gitdb ==4.0.10
- greenlet ==2.0.2
- httplib2 ==0.20.2
- humanfriendly ==10.0
- idna ==3.3
- importlib-metadata ==4.6.4
- ipykernel ==6.22.0
- ipython ==8.12.0
- ipython-genutils ==0.2.0
- isoduration ==20.11.0
- jedi ==0.18.2
- jeepney ==0.7.1
- jmespath ==1.0.1
- json5 ==0.9.11
- jsonpointer ==2.3
- jsonschema ==4.17.3
- jupyter-events ==0.6.3
- jupyter-ydoc ==0.2.3
- jupyter_client ==8.1.0
- jupyter_core ==5.3.0
- jupyter_scheduler ==1.3.1
- jupyter_server ==2.5.0
- jupyter_server_fileid ==0.8.0
- jupyter_server_terminals ==0.4.4
- jupyter_server_ydoc ==0.8.0
- jupyterlab ==3.6.2
- jupyterlab-pygments ==0.2.2
- jupyterlab_server ==2.21.0
- keyring ==23.5.0
- kiwisolver ==1.4.4
- lap *
- launchpadlib ==1.10.16
- lazr.restfulclient ==0.14.4
- lazr.uri ==1.0.6
- lit ==16.0.3
- lockfile ==0.12.2
- loguru *
- markdown-it-py ==3.0.0
- matplotlib ==3.7.1
- matplotlib-inline ==0.1.6
- mdurl ==0.1.2
- mistune ==2.0.5
- monotonic ==1.6
- more-itertools ==8.10.0
- motmetrics ==1.4.0
- mpmath ==1.3.0
- multidict ==6.0.4
- nbclassic ==0.5.4
- nbclient ==0.7.2
- nbconvert ==7.2.10
- nbformat ==5.8.0
- nest-asyncio ==1.5.6
- netifaces ==0.11.0
- networkx ==3.1
- notebook ==6.5.3
- notebook_shim ==0.2.2
- numpy ==1.24.3
- nvidia-cublas-cu11 ==11.10.3.66
- nvidia-cuda-cupti-cu11 ==11.7.101
- nvidia-cuda-nvrtc-cu11 ==11.7.99
- nvidia-cuda-runtime-cu11 ==11.7.99
- nvidia-cudnn-cu11 ==8.5.0.96
- nvidia-cufft-cu11 ==10.9.0.58
- nvidia-curand-cu11 ==10.2.10.91
- nvidia-cusolver-cu11 ==11.4.0.1
- nvidia-cusparse-cu11 ==11.7.4.91
- nvidia-nccl-cu11 ==2.14.3
- nvidia-nvtx-cu11 ==11.7.91
- oauthlib ==3.2.0
- olefile ==0.46
- onnx ==1.14.0
- onnx-simplifier ==0.4.31
- onnxruntime ==1.15.0
- opencv-python ==4.7.0.72
- openpyxl ==3.1.2
- packaging ==23.0
- pandas ==2.0.2
- pandocfilters ==1.5.0
- paramiko ==2.9.3
- parso ==0.8.3
- pathtools ==0.1.2
- pexpect ==4.8.0
- pickleshare ==0.7.5
- platformdirs ==3.2.0
- plotly ==5.15.0
- prometheus-client ==0.16.0
- prompt-toolkit ==3.0.38
- protobuf ==4.22.3
- psutil ==5.9.4
- ptyprocess ==0.7.0
- pure-eval ==0.2.2
- pyRFC3339 ==1.1
- pycairo ==1.20.1
- pycocotools ==2.0.7
- pycparser ==2.21
- pydantic ==1.10.7
- pymacaroons ==0.13.0
- pyparsing ==2.4.7
- pyrsistent ==0.19.3
- python-dateutil ==2.8.2
- python-json-logger ==2.0.7
- pytz ==2022.1
- pyxdg ==0.27
- pyzmq ==25.0.2
- requests ==2.28.2
- rfc3339-validator ==0.1.4
- rfc3986-validator ==0.1.1
- rich ==13.4.2
- s3fs ==2023.4.0
- scipy ==1.10.1
- sentry-sdk ==1.21.0
- setproctitle ==1.3.2
- six ==1.16.0
- smmap ==5.0.0
- sniffio ==1.3.0
- soupsieve ==2.4
- ssh-import-id ==5.11
- stack-data ==0.6.2
- sympy ==1.12
- tenacity ==8.2.2
- terminado ==0.17.1
- tinycss2 ==1.2.1
- tomli ==2.0.1
- torch ==2.0.1
- torchvision ==0.15.2
- tornado ==6.2
- traitlets ==5.9.0
- trash-cli ==0.17.1.14
- triton ==2.0.0
- typing_extensions ==4.5.0
- tzdata ==2023.3