![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro humble. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro rolling. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce hyperion |
|
Repository Summary
Description | Symbolic Continuous-Time Gaussian Belief Propagation Framework with Ceres Interoperability |
Checkout URI | https://github.com/vis4rob-lab/hyperion.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-11-24 |
Dev Status | UNKNOWN |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | python computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
hyperion | 1.0.0 |
README

A high-performance Continuous-Time Gaussian Belief Propagation (CT-GBP) framework with fully automated symbolic factor generation and seamless Ceres interoperability targeting distributed SLAM operations!
Report Issues or Request Features
About
Hyperion is a novel, modular, distributed, high-performance optimization framework targeting both discrete- and continuous-time SLAM (Simultaneous Localization and Mapping) applications. It stands out by offering the first open-source C++ implementation of a Gaussian-Belief-Propagation-based Non-Linear Least Squares solver, which, in turn, offers native support for decentralized, stochastic inference on factor graphs. In addition, Hyperion also extends [SymForce](https://github.com/symforce-org/symforce) to automate the generation of high-performance implementations for spline-related residuals from symbolic, high-level expressions. This results in the fastest, [Ceres](http://ceres-solver.org)-interoperable B- and Z-Spline implementations, achieving speedups of up to 110x over previous state-of-the-art methods. Links to [Paper](https://www.ecva.net/papers/eccv_2024/papers_ECCV/papers/04347.pdf), [Poster](https://eccv2024.ecva.net/media/PosterPDFs/ECCV%202024/2444.png), and [Video](https://www.youtube.com/watch?v=iubwqTzA8Do).Citation
Hyperion was presented at the [European Conference on Computer Vision 2024 (ECCV 2024)](https://eccv2024.ecva.net). Until the final version of record becomes available, please cite its archived version as follows: ``` @inproceedings{Hug:etal:ECCV2024, title={{Hyperion -- A fast, versatile symbolic Gaussian Belief Propagation framework for Continuous-Time SLAM}}, author={David Hug and Ignacio Alzugaray and Margarita Chli}, booktitle={Computer Vision -- ECCV 2024}, year={2024}, publisher={Springer Nature Switzerland}, address={Cham}, pages={215--231}, isbn={978-3-031-73404-5}, doi={10.1007/978-3-031-73404-5_13} } ```Setup and Documentation
Additional documentation for installing and using Hyperion will be available soon. The framework comprises two main modules: a Python-based symbolic code generation module and an optimization module for performing inference on general factor graphs. Currently, three executables are provided: one for demonstrating how to [set up a minimization problem](apps/pose3_absolute/main.cpp) in Hyperion, and two others for running [tests](tests/src/hyperion_tests/tests_main.cpp) and [benchmarks](benchmarks/src/hyperion_benchmarks/benchmarks_main.cpp). Hyperion's API closely mirrors that of [Ceres](http://ceres-solver.org), offering familiarity for users of that library. Additionally, a [sample benchmark](benchmarks/benchmark_results.xml) run is included for reference, detailing the metrics reported in the paper.Contact
Admin - David Hug, Leonhardstrasse 21, 8092 Zürich, ETH Zürich, SwitzerlandCONTRIBUTING
No CONTRIBUTING.md found.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro noetic. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro ardent. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro crystal. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro dashing. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro galactic. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro foxy. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro iron. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro lunar. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro jade. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro indigo. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro hydro. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
![]() |
hyperion repositorypython computer-vision cpp robotics code-generation slam sensor-fusion ceres-solver message-passing distributed-optimization eigen3 continuous-time gaussian-belief-propagation symforce |
|
No version for distro melodic. Known supported distros are highlighted in the buttons above.