GPTrack

June 12, 2026 ยท View on GitHub

๐Ÿ“ˆ LasHeR Result Comparison

The following OPE curves compare GPTrack with representative RGB-T trackers on the LasHeR testing set.

LasHeR comparison curves

View the original PDF

โœจ Highlights

  • Geometry-Saliency Cross-Attention (GSCA): Integrates imaging-inspired guidance into cross-modal interaction.
  • Multi-Relation Topology Graph (MRTG): Builds spatial, cross-modal, and semantic edges for graph-enhanced RGB-T representation learning.
  • LasHeR-ready Training and Evaluation: Provides experiment configs and scripts for RGB-T tracking workflows.

๐Ÿ—‚๏ธ Repository Structure

GPTrack/
โ”œโ”€โ”€ assets/                    # README figures and result curves
โ”œโ”€โ”€ experiments/gptrack/       # Training and evaluation configs
โ”œโ”€โ”€ lib/
โ”‚   โ”œโ”€โ”€ config/gptrack/        # GPTrack configuration
โ”‚   โ”œโ”€โ”€ models/gptrack/        # Model builder and tracking utilities
โ”‚   โ”œโ”€โ”€ train/                 # Training actors, datasets, and trainers
โ”‚   โ””โ”€โ”€ test/                  # Evaluation datasets and tracker wrappers
โ”œโ”€โ”€ pretrained_models/         # Local pretrained weights
โ””โ”€โ”€ tracking/                  # Training, testing, and analysis entry points

โš™๏ธ Installation

conda create -n gptrack python=3.8
conda activate gptrack
bash install.sh

๐Ÿงญ Path Setup

Initialize local paths for datasets, checkpoints, and results:

python tracking/create_default_local_file.py \
  --workspace_dir . \
  --data_dir ./data \
  --save_dir ./output

You can further customize paths in:

lib/train/admin/local.py
lib/test/evaluation/local.py

๐Ÿ—ƒ๏ธ Data Preparation

Place RGB-T datasets under ./data. For LasHeR, the expected layout is:

data/
โ””โ”€โ”€ lasher/
    โ”œโ”€โ”€ trainingset/
    โ”œโ”€โ”€ testingset/
    โ”œโ”€โ”€ trainingsetList.txt
    โ””โ”€โ”€ testingsetList.txt

๐Ÿงฉ Pretrained Weights

Place pretrained weights under:

pretrained_models/

The default configs expect SOT/ViT initialization weights to be available locally.

๐Ÿš€ Training

Train GPTrack on LasHeR:

python tracking/train.py \
  --script gptrack \
  --config vitb_256_gptrack_32x1_1e4_lasher_15ep_sot \
  --save_dir ./output/vitb_256_gptrack_32x1_1e4_lasher_15ep_sot \
  --mode multiple \
  --nproc_per_node 4

Available experiment configs are stored in:

experiments/gptrack/

๐Ÿ“Š Evaluation

Run tracking on the LasHeR test split:

python tracking/test.py \
  gptrack \
  vitb_256_gptrack_32x1_1e4_lasher_15ep_sot \
  --dataset_name lasher_test \
  --threads 6 \
  --num_gpus 1

Analyze tracking results:

python tracking/analysis_results.py \
  --tracker_name gptrack \
  --tracker_param vitb_256_gptrack_32x1_1e4_lasher_15ep_sot \
  --dataset_name lasher_test

๐Ÿงฑ Core Components

  • lib/models/gptrack/gptrack.py: GPTrack model builder and tracking wrapper.
  • lib/models/gptrack/vit_gptrack_backbone.py: Main implementation of GSCA and MRTG details within the ViT backbone.
  • lib/models/gptrack/utils.py: token conversion utilities and multi-relation edge construction.
  • experiments/gptrack/: configuration files for training and evaluation.

๐Ÿ™ Acknowledgements

The ViT backbone is initialized from the pretrained OSTrack checkpoint. We appreciate the OSTrack project for its valuable open-source resources.

๐Ÿ“ Citation

If GPTrack is useful for your research, please cite the related work and this repository.