Skip to content
/ QRDT Public

[TIM 2024] Handling Occlusion in UAV Visual Tracking with Query-Guided Re-Detection

License

Notifications You must be signed in to change notification settings

xyl-507/QRDT

Repository files navigation

Handling Occlusion in UAV Visual Tracking with Query-Guided Re-Detection

This is an official pytorch implementation of the 2024 IEEE Transactions on Instrumentation and Measurement paper:

Handling Occlusion in UAV Visual Tracking with Query-Guided Re-Detection
(accepted by IEEE Transactions on Instrumentation and Measurement; DOI: 10.1109/TIM.2024.3440378)

image

The paper can be downloaded from IEEE Xplore

The models and raw results can be downloaded from BaiduYun.

The tracking demos are displayed on the Bilibili or GitHub

The real-world tests are displayed on the Bilibili or GitHub

Proposed modules

  • query update (QU) in Tracker

  • Cross Fusion Layer (CFL) in model

  • Trajectory prediction (TP) in Tracker

UAV Tracking

Datasets qrdt_r50_l234
UAV20L - Full Occlusion (Suc./Pre.) 0.396/0.613
UAVDT - Large Occlusion (Suc./Pre.) 0.474/0.604
DTB70 - Occlusion (Suc./Pre.) 0.553/0.768
VisDrone2019-SOT-test-dev - Full Occlusion (Suc./Pre.) 0.591/0.812
HOB (Suc./Pre.) 0.363/0.244

Note:

  • r50_lxyz denotes the outputs of stage x, y, and z in ResNet-50.

Installation

Please find installation instructions in INSTALL.md.

Quick Start: Using QRDT

Add SmallTrack to your PYTHONPATH

export PYTHONPATH=/path/to/qrdt:$PYTHONPATH

demo

python tools/demo.py \
    --config experiments/siamban_r50_l234/config.yaml \
    --snapshot experiments/siamban_r50_l234/QRDT.pth
    --video demo/bag.avi

Download testing datasets

Download datasets and put them into testing_dataset directory. Jsons of commonly used datasets can be downloaded from Google Drive or BaiduYun. If you want to test tracker on new dataset, please refer to pysot-toolkit to setting testing_dataset.

Test tracker

cd experiments/siamban_r50_l234
python -u ../../tools/test.py 	\
	--snapshot QRDT.pth 	\ # model path
	--dataset UAV20L 	\ # dataset name
	--config config.yaml	  # config file

The testing results will in the current directory(results/dataset/model_name/)

Eval tracker

assume still in experiments/ssiamban_r50_l234

python ../../tools/eval.py 	 \
	--tracker_path ./results \ # result path
	--dataset UAV20L        \ # dataset name
	--num 1 		 \ # number thread to eval
	--tracker_prefix 'ch*'   # tracker_name

Training 🔧

See TRAIN.md for detailed instruction.

Acknowledgement

The code based on the PySOT , SiamBAN , CAM , CFME and DROL

We would like to express our sincere thanks to the contributors.