FAST-LIVO2 icon indicating copy to clipboard operation
FAST-LIVO2 copied to clipboard

[Feat/Refactor] MID360-Fisheye Support + Core Module Refactor (Params/Storage/Image) for FAST-LIVO2 ROS2 Humble

Open Rhymer-Lcy opened this issue 7 months ago • 2 comments

Key Improvements

Based on the FAST-LIVO2-ROS2-HUMBLE implementation:

  1. Parameter System Refactor
    Implemented safe parameter declaration with override support, removed global parameter server node, and adopted direct parameter injection to resolve camera parameter loading issues with the open-source rpg_vikit.

  2. New Hardware Configuration
    Added dedicated launch script mapping_aviz_metacamedu.launch.py and parameter file avia_metacamedu.yaml for full MID360-Fisheye dataset compatibility.

  3. MID360-Specific Enhancements
    Enabled per-point hardware timestamp synchronization (nanosecond precision) by storing relative time offsets in curvature for motion compensation; maintained standard blind zone filtering x²+y²+z² > blind².

  4. Fisheye Camera Correction
    Implemented real-time fisheye distortion correction via equidistant_cam->undistortImage.

  5. Image Processing Pipeline
    Added direct JPEG decompression with enable_image_processing toggle and timestamp validation, replacing failed republish nodes.

  6. Storage System Upgrade
    Introduced Boost.Filesystem for automated multi-level directory management, fixing Colmap/PCD data saving failures.

  7. Documentation Expansion
    Added MID360-Fisheye configuration guides, specified Sophus 1.22.10 installation, and optimized Vikit integration documentation.

Rhymer-Lcy avatar Jun 25 '25 09:06 Rhymer-Lcy

Looks awesome!

I was looking at the code and reading the statement: "Integrated MID360 point cloud processing with nanosecond-precision timestamp synchronization" - what does "nanosecond-precision timestamp synchronization" mean exactly?

mkarklins avatar Jun 26 '25 05:06 mkarklins

Looks awesome!

I was looking at the code and reading the statement: "Integrated MID360 point cloud processing with nanosecond-precision timestamp synchronization" - what does "nanosecond-precision timestamp synchronization" mean exactly?

The term means we leverage MID360’s unique per-point hardware timestamps (measured in nanoseconds). We convert them into precise time offsets relative to the ROS message header, store these offsets (in milliseconds) in each point’s curvature field. This enables sub-millisecond motion compensation per point during sensor fusion.

Rhymer-Lcy avatar Jun 26 '25 14:06 Rhymer-Lcy