Hello everyone,
I’m currently working on a drone-based project using ROS 2 on a Jetson Orin NX (8 GB). My intended workflow is as follows:
-
Mapping phase: Record a map with cuVSLAM + NVBlox using an Intel Realsense D435i camera.
-
Localization phase: In a later session, load the previously recorded map on the Jetson and run cuVSLAM in localization-only mode (no new mapping). Use the map to localize the drone within that known environment.
My questions:
-
Is this workflow (cuVSLAM + NVBlox for mapping, then cuVSLAM localization-only) the correct and supported approach for what I’m trying to achieve?
Or would the Isaac ROS Mapping and Localization / Isaac Perceptor stack be more suitable for this use case? Does it only output a 2D occupancy map for mobile robots? -
If I were to use the full Mapping and Localization stack (which includes Visual Global Localization and other modules), would it be too computationally heavy for the Jetson Orin NX 8 GB when running onboard on a drone?
My goal is to keep localization and navigation running in real-time onboard and make it as effficient as possible, therefore i thought to pre-record a map and then just do localization on a known map. -
For navigation and path planning, what are the recommended options for drones?
Most common frameworks like Nav2 rely on 2D occupancy maps,
but since drones operate in 3D, what are the options there? Could I use the map from NVBlox to extract specific geometries/objects?.
Are there existing examples or suggested approaches for integrating NVBlox maps into a 3D navigation stack?
Any recommendations would be greatly appreciated, particularly regarding which combination of these packages is best suited for onboard deployment on Jetson and how to handle 3D path planning for drones.
Thank you!