I’ve setup the isaac ros slam and it is subscribing to my images from gazebo simulation and publishing all the topics. However, the visual_slam/vis/observations_cloud topic is empty resulting the /visual_slam/vis/slam_odometry to be not moving even though my drone is moving as shown in the videos. My environment have enough objects, hence I assume finding features is not an issue
This is my launch file
# SPDX-FileCopyrightText: NVIDIA CORPORATION & AFFILIATES
# Copyright (c) 2021-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
import launch
from launch_ros.actions import ComposableNodeContainer
from launch_ros.descriptions import ComposableNode
def generate_launch_description():
"""Launch file which brings up visual slam node configured for Isaac Sim."""
visual_slam_node = ComposableNode(
name='visual_slam_node',
package='isaac_ros_visual_slam',
plugin='nvidia::isaac_ros::visual_slam::VisualSlamNode',
remappings=[('visual_slam/image_0', '/camera_left/image'),
('visual_slam/camera_info_0', '/camera_left/info'),
('visual_slam/image_1', '/camera_right/image'),
('visual_slam/camera_info_1', '/camera_right/info'),
('visual_slam/imu', '/imu')],
parameters=[{
'use_sim_time': True,
'denoise_input_images': False,
'rectified_images': False,
'enable_slam_visualization': True,
'enable_observations_view': True,
'enable_landmarks_view': True,
'enable_imu_fusion': True,
'enable_debug_mode': True,
'enable_verbosity': True,
'debug_dump_path': '/tmp/cuvslam',
'base_frame': 'base_link',
'map_frame': 'map',
'odom_frame': 'odom',
'verbosity': 1,
'input_imu_frame': 'base_link',
'image_jitter_threshold_ms': 50.0
}]
)
visual_slam_launch_container = ComposableNodeContainer(
name='visual_slam_launch_container',
namespace='',
package='rclcpp_components',
executable='component_container',
composable_node_descriptions=[
visual_slam_node,
],
output='screen',
)
return launch.LaunchDescription([visual_slam_launch_container])
