Practical overview
When it fits
Use it when a research workflow needs point-cloud-based place recognition and the benchmark preparation, training or evaluation steps documented in the repository.
Who it is for
- Robotics and vehicle-mapping researchers working on point-cloud place recognition.
- Researchers who need benchmark data and scripts for training or evaluating point-cloud retrieval models.
Documented uses
- Retrieve matching point-cloud submaps to recognize places.
- Prepare positive and negative point-cloud examples from benchmark data.
- Train baseline or refined networks and evaluate them on benchmark test data.
- Use the provided pretrained baseline or refined models in a point-cloud retrieval experiment.
Requirements & limits
The repository is public and released under the MIT License. The documented environment uses Python 3, TensorFlow 1.4.0 and CUDA 8.0.
- Benchmark inputs are binary submaps paired with CSV metadata; the CSV files define positive and negative examples.
- Benchmark submaps are road-removed and downsampled to 4,096 points.
- Oxford and NUS dataset layouts and train/test splits differ; the README specifies corresponding folders and CSV files.
- The README lists CUDA and TensorFlow among prerequisites and reports testing with CUDA 8.0 and TensorFlow 1.4.0.
- The repository provides separate baseline and refined network preparation workflows and pretrained models.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Prepare benchmark files for training or evaluation
Generate the pickle files used by Pointnetvlad's training or evaluation workflows.
Before you start
- Python 3 environment with the listed Python, CUDA, TensorFlow, SciPy, Pandas and scikit-learn prerequisites.
- The benchmark dataset archive extracted alongside the project code so both benchmark_datasets/ and pointnetvlad/ are present.
Steps
Open the generating_queries/ directory.
Run generate_training_tuples_baseline.py for baseline-network training tuples, or generate_training_tuples_refine.py for refined-network training tuples.
For network evaluation data, run generate_test_sets.py.
Expected outcome
Pickle files containing the positive and negative point clouds for anchors, prepared for the selected training or evaluation workflow.
Guide limitations
- The README says tuple generation is needed only once and may take a few minutes.
- The repository documents Python 3, TensorFlow 1.4.0 and CUDA 8.0 as the environment used for the code; this is not a compatibility guarantee.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 17 October 2026
- Original website title
- mikacuy/pointnetvlad · Official homepage title · retained in its source language

