How qvpr/vprtempo works
VPRTempo is a visual place-recognition application built around temporally encoded spiking neural networks. Its principal workflow is to prepare image datasets, train either the fp32 or quantization-aware model, then evaluate query images against a reference database and report retrieval metrics; the demo visualizes those results. The source index confirms the main model, training, dataset, network-layer, metrics, demo, and download modules, but excerpts are partial. Nordland, Oxford RobotCar, and custom-data preparation are included as documented capabilities; their detailed runtime wiring is not established by the excerpts.
Main entry points: main.py CLI orchestration · VPRTempo.py FP32 inference · VPRTempoQuant.py Quantized inference · blitnet.py BLiTNet layers
Components 17
Application workflow
- CLI orchestration
main.py
Network and learning
- FP32 training
vprtempo/VPRTempoTrain.py - QAT training
vprtempo/VPRTempoQuantTrain.py - FP32 inference
vprtempo/VPRTempo.py - Quantized inference
vprtempo/VPRTempoQuant.py - BLiTNet layers
vprtempo/src/blitnet.py
Data preparation
- Image dataset loader
vprtempo/src/dataset.py - CSV generation
vprtempo/src/create_data_csv.py - Nordland preparation
vprtempo/src/nordland.py - RobotCar processing
vprtempo/src/process_orc.py - Model and data download
vprtempo/src/download.py - Datasets and models
vprtempo/dataset
Evaluation and results
- Retrieval metrics
vprtempo/src/metrics.py - Run logging
vprtempo/src/loggers.py - Result visualization
vprtempo/src/demo.py
Other components
- Researcher
- Dataset providers
Connections 23
- Researcher → CLI orchestration: runs
README.md - CLI orchestration → FP32 training: selects training
main.py - CLI orchestration → QAT training: selects training
main.py - CLI orchestration → FP32 inference: runs evaluation
main.py - CLI orchestration → Quantized inference: runs evaluation
main.py - FP32 training → Image dataset loader: loads training data
vprtempo/VPRTempoTrain.py - QAT training → Image dataset loader: loads training data
vprtempo/VPRTempoQuantTrain.py - FP32 training → BLiTNet layers: builds layers
vprtempo/VPRTempoTrain.py - QAT training → BLiTNet layers: builds layers
vprtempo/VPRTempoQuantTrain.py - FP32 inference → Image dataset loader: evaluates batches
vprtempo/VPRTempo.py - Quantized inference → Image dataset loader: evaluates batches
vprtempo/VPRTempoQuant.py - FP32 inference → BLiTNet layers: uses layers
vprtempo/VPRTempo.py - Quantized inference → BLiTNet layers: uses layers
vprtempo/VPRTempoQuant.py - FP32 inference → Retrieval metrics: computes metrics
vprtempo/VPRTempo.py - Quantized inference → Retrieval metrics: computes metrics
vprtempo/VPRTempoQuant.py - FP32 inference → Result visualization: visualizes results
vprtempo/VPRTempo.py - CLI orchestration → Run logging: initializes logger
main.py - CSV generation → Datasets and models: creates annotations
README.md - Nordland preparation → Datasets and models: prepares dataset
- RobotCar processing → Datasets and models: processes images
- Dataset providers → Nordland preparation: provides images
README.md - Dataset providers → RobotCar processing: provides images
README.md - Model and data download → Datasets and models: downloads assets
vprtempo/src/download.py