You’re reading an older version of the Slamcore SDK documenation. The latest one is 23.04.
FAQs
How can I turn on/off the D435i/D455 depth stream?
The D435i/D455 camera is a depth camera that SLAMcore software can use for SLAM. We are able to provide a depth output alongside our pose information.
On x64 platforms the depth stream is turned on by default, and can be optionally turned off using the following command at startup:
# Turn depth OFF on SLAMcore Visualiser, Dataset Recorder, Dataset Recorder CLI or Dataset Processor
$ slamcore_* --no-depth
# Turn depth OFF on ROS1 Wrapper
$ roslaunch slamcore_slam run_slam.launch \ # for run_slam.launch OR
override_realsense_depth:=true \
realsense_depth_override_value:=false
$ roslaunch slamcore_slam run_dataset_recorder.launch \ # for run_dataset_recorder.launch OR
override_realsense_depth:=true \
realsense_depth_override_value:=false
# Turn depth OFF on ROS2 Wrapper
$ ros2 launch slamcore_slam slam_publisher.launch.py \ # for slam_publisher.launch.py OR
override_realsense_depth:=true \
realsense_depth_override_value:=false
$ ros2 launch slamcore_slam run_dataset_recorder.launch.py \ # for run_dataset_recorder.launch.py
override_realsense_depth:=true \
realsense_depth_override_value:=false
Due to lower system bandwidth on NVIDIA platforms, the depth stream is turned off by default, and can be optionally turned on using the following command at startup:
# Turn depth ON on SLAMcore Visualiser, Dataset Recorder, Dataset Recorder CLI or Dataset Processor
$ slamcore_* --depth
# Turn depth ON on ROS1 Wrapper
$ roslaunch slamcore_slam run_slam.launch \ # for run_slam.launch OR
override_realsense_depth:=true \
realsense_depth_override_value:=true
$ roslaunch slamcore_slam run_dataset_recorder.launch \ # for run_dataset_recorder.launch OR
override_realsense_depth:=true \
realsense_depth_override_value:=true
# Turn depth ON on ROS2 Wrapper
$ ros2 launch slamcore_slam slam_publisher.launch.py \ # for slam_publisher.launch.py OR
override_realsense_depth:=true \
realsense_depth_override_value:=true
$ ros2 launch slamcore_slam run_dataset_recorder.launch.py \ # for run_dataset_recorder.launch.py
override_realsense_depth:=true \
realsense_depth_override_value:=true
Streaming depth alongside pose can possibly lead to some of the following:
Degradation of positioning performance in low light conditions due to a known issue with RealSense cameras (IR leak into grayscale frames)
Issues with lower quality USB connectors
Higher disk usage when saving datasets, whereby at 848x480 resolution:
x64 |
NVIDIA Jetson Platforms |
|
---|---|---|
Default depth setting |
ON |
OFF |
Disk usage with |
Up to 1.4 GB/minute |
Up to 0.7 GB/minute |
Disk usage with |
Up to 5.4 GB/minute |
Up to 2.7 GB/minute |
How can I change frame rate?
Note
The option to change the frame rate is currently only available on SLAMcore Tools - SLAMcore Visualiser, Dataset Recorder, Dataset Recorder CLI and Dataset Processor.
It is not available in the ROS and C++ APIs yet.
When using SLAMcore Tools, the frame rate can be overwritten with the --fps
flag.
x64 |
NVIDIA Jetson Platforms |
|
---|---|---|
Default frame rate |
30 fps |
15 fps |
RealSense Cameras
Please note that both the --fps
flag and --depth
/--no-depth
flag affect the
framerate of SLAM. With --depth
the effective framerate for both depth
and IR is halved.
Datasets are recorded at the full framerate for IR and Depth.
–fps |
–depth |
IR FPS (SLAM) |
Depth FPS (SLAM) |
IR FPS (Recording) |
Depth FPS (Recording) |
---|---|---|---|---|---|
15 |
0 |
15 |
0 |
15 |
0 |
15 |
1 |
7.5 |
7.5 |
15 |
15 |
30 |
0 |
30 |
0 |
30 |
0 |
30 |
1 |
15 |
15 |
30 |
30 |
60 |
0 |
60 |
0 |
60 |
0 |
60 |
1 |
30 |
30 |
60 |
60 |
MyntEye2 Cameras
The following framerates are supported on the MyntEye2. SLAM and dataset recording are both at the nominal framerate.
–fps |
---|
10 |
15 |
20 |
25 |
30 |
35 |
40 |
45 |
50 |
55 |
What are the /slamcore
parameters for?
Some read-only properties are exposed as parameters in the ROS Parameters Server
within the /slamcore
namespace. They are reserved for future use.
What should I do if my test results are poor?
Try a more suitable configuration for your use case, see SLAM Configuration for more information.
Does your software work in low light conditions?
The IR illumination module on the RealSense D435i camera is not compatible with our visual features, so we do not use it as an illumination source. The module is purely for depth information used in features such as 2.5D height mapping (see Height Mapping Mode for more information).
As such, our visual features rely on the stereo imagers and are designed to be robust to illumination changes, although it does depend on the light levels in the night time environment. Note that with lower light levels the exposure time typically increases which is more likely to lead to motion blur, which can have a detrimental effect on our algorithms.
Can I run the SLAMcore software without internet connection?
An internet connection is required at the start of each session to access the SLAMcore software license and for telemetry collection. This requirement can be discussed as part of a negotiation for commercial deployment.
Can you recommend a suitable x64 laptop?
Any recent mid-range laptop (Core i5, i7) with AVX2 should work. If you
plan to run ROS1 rviz
on the machine you may need higher specifications.
A popular alternative to laptops are Intel NUCs.