IEEE/CVF International Conference on Computer Vision (ICCV), 2025
Valter Piedade, Chitturi Sidhartha, José Gaspar, Venu Madhav Govindu, Pedro Miraldo
Project Page · Paper · VideoSAC-GNC is a novel adaptive annealing strategy for Graduated Non-Convexity (GNC) that integrates sample consensus into the classical GNC framework. It updates the cost-function convexity scale adaptively by testing a range of candidate values and selecting the scale with the strongest inlier consensus, improving robustness and reducing dependence on predefined parameters.
Applications: Point Cloud Registration (PCR) and Pose Graph Optimization (PGO).
If you use the software, please cite the following:
@inproceedings{piedade2025sacgnc,
title={SAC-GNC: SAmple Consensus for adaptive Graduated Non-Convexity},
author={Piedade, Valter and Sidhartha, Chitturi and Gaspar, Jos{\'e} and Govindu, Venu Madhav and Miraldo, Pedro},
booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
pages={5780--5790},
year={2025}
}Pedro Miraldo
Senior Principal Research Scientist
Mitsubishi Electric Research Laboratories (MERL)
E-Mail: miraldo@merl.com
Clone the repository and initialize submodules:
git clone <repository_url>
cd sac-gnc
git submodule update --init --recursiveWe use mise.toml to build the project and pyproject.toml to create and sync the local Python environment .venv.
# If mise is not installed
sudo apt update -y && sudo apt install -y mise
# Install the project tools and sync the local Python environment
mise trust
mise install
uv syncCompile SAC-GNC and the C++ submodules:
mise buildFor the Python examples, build SAC-GNC with Python bindings. This also builds the GTSAM Python bindings:
mise build_examplesSubmodules can still be compiled one at a time when needed:
mise build_fgr
mise build_gtsam
mise build_gtsam_python- Point Cloud Registration: Fast Global Registration.
- Pose Graph Optimization: GTSAM.
See examples/README.md for usage examples in Python.
See CONTRIBUTING.md for our policy on contributions.
- This code is released under the
AGPL-3.0-or-laterlicense, as found in the LICENSE.md file.
Copyright (C) 2026 Mitsubishi Electric Research Laboratories (MERL).
SPDX-License-Identifier: AGPL-3.0-or-later
- The Eigen library for linear algebra is primarily licensed under the Mozilla Public License v. 2.0 (MPL2). Additionally, some parts of Eigen may be subject to other permissive licenses, such as BSD or LGPL, for specific modules or files. Please refer to the Eigen documentation and source files for detailed licensing information.
- Fast Global Registration, used as a baseline for point cloud registration, is software released under the MIT license.
- The GTSAM framework, used as a baseline for pose graph optimization, is a BSD-licensed C++ library.
