All notable changes to this project are documented in this file.
ap_ukf: 4D local fusion (x, y, vx, vy); IMU removed; first VPS bootstraps the filter; VPS soft correction over N frames; 4×4 YAML covariances.ap_ngps_ros2: Publishesnav_msgs/Odometryonodometry/vps(local xy after first-fix origin).- Launches:
unified_localization*.launch.pyno longer remap IMU intofusion_ros.
iris_with_standoffs/model.sdf: collision mesh URI changed frompackage://ardupilot_gazebo/.../iris_collision.stltomodel://iris_with_standoffs/meshes/iris_collision.stlso plaingz sim(no ROS/ament) resolves assets viaGZ_SIM_RESOURCE_PATHinstead of failing with “uri could not be resolved”.- Restored
ardupilot_gazebo/models/iris_with_gimbal/model.sdfandmodels/gimbal_small_3d/model.sdffrom upstreamros2. Our branch had diverged: non-mergedmodel://includes and scoped link names (iris_with_standoffs::base_link) causedsdformat_urdfto fail with “Failed to find sdf canonical link [base_link]” when launchingiris_runway.launch.py. Theros2iris uses<include merge="true">,package://URIs, and flatbase_link/gimbal_linkjoint names; the gimbal model onros2names the root linkgimbal_link(notbase_link) to match that joint.
- Added setup for docker + distrobox for easy replication of sim and hardware tests
- Documentation files: CAMERA_IMU_CALIBRATION.md and NON_GPS_NAVIGATION.md
- Links to original Google Docs documentation
- Updated main README.md with improved documentation structure
- Complete NGPS ROS2 package (
ap_ngps_ros2)- ROS2 node for visual geo-localization using LightGlue/SuperPoint
- Launch files for NGPS localization and unified system
- Configuration files (ngps_config.yaml, unified_system_config.yaml)
- Installation scripts and dependencies
- Package metadata (CMakeLists.txt, package.xml)
- Test files for NGPS node and rotation detection
- Comprehensive README with usage instructions
- Integrated NGPS localization node with ROS2 ecosystem
- Added unified launch files for complete system integration
- Initial transformer-based feature matching implementation
- Jupyter notebook (
ap_ngps_2(3).ipynb) for experimentation and development
- Updated UKF README.md with additional documentation
-
UKF Package (
ap_ukf)- Unscented Kalman Filter implementation for sensor fusion
- Core state fusion logic (stateFuser.h, stateMath.h, stateTypes.h)
- ROS2 integration (fusionRos.h, fusionRos.cpp)
- Launch files and configuration
- Comprehensive test suite (localization_tests, ukf_tests, ukf_helpers_tests)
- README with state estimation documentation
-
VIO Package (
ap_vips)- Visual-Inertial Odometry system
- Camera models support
- Package structure and documentation
- Project structure expanded to support multi-sensor fusion architecture
- Initial project structure
- Basic README.md
- LICENSE file
- Foundation for NGPS flight system