-
Notifications
You must be signed in to change notification settings - Fork 16
Home
This is the wiki for the X navigation framework.
X is powered by a generic C++ library for real-time robot navigation using visual, thermal, range, solar, GPS and inertial measurements. It also includes a wrapper for real-time state estimation with ROS.
- Extended Navigation Capabilities for a Future Mars Science Helicopter Concept (IEEE Aerospace '20).
- Thermal-Inertial Odometry for Autonomous Flight Throughout the Night (IROS '19)
X is maintained for:
- Ubuntu LTS 16.04, 18.04. 20.04;
- ROS Kinetic, Lunar, Melodic, Noetic;
- x86 and ARM architectures.
-
The X library: a C++ library which contains EKF, VIO, and vision modules.
-
x_vio_ros: a ROS wrapper the xVIO module of the X library.
The x_external group includes the source code for the external dependencies of the X framework which are not available as Ubuntu packages.
- x_opencv3_catkin: a catkin wrapper for OpenCV 3 from source, if desired. Otherwise, X will natively link to the OpenCV 3 or 4 system install coming with Ubuntu.
Deprecated or unused projects are archived in Gitlab. They become read-only, unless their owner decides to unarchive them.
-
Naming:
-
Software modules within the X framework should be named after the core function that they perform, after the prefix
x
. Examples are xVIO, xEKF, xSim, etc. This pattern not only enables clear and unique names, but also good branding for the framework. -
All repositories including including code done for the X framework should start with the prefix
x_
, even if it is just one branch forked from an open-source repo, e.g x_opencv3_catkin. This serves to quickly identify any project which has X code in it, and avoid accidental deletion.
-