Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations.
I am currently working on the visualization of the 3D map point cloud in real time (for reference about my project: #1134).
I want to publish two point clouds:
dynamic. Current mapping
static. Initial 3D map read from .pbstream file (if available).
In order to complete this task, I would like to ask you more about the data organization and in particular about the "trajectories".
1) When a trajectory is finished calling the service "/finish_trajectory", how do I start a new trajectory? I tried to use the "/start_trajectory" service call but it gives me always errors.
such as:
a)
Check failed: options.num_subdivisions_per_laser_scan >= 1 (0 vs. 1)
expected <'block end'>, but found '<'scalar'>'
in "<'string'>", line 1, column 516:
... ory_builder_options_proto: 'a'} topics: {laser_scan_topic: 'a', ...
Every new trajectory has its own origin or there is a "global origin" where all the trajectories refer to (maybe: 0,0,0 in trajectory 0)?
Does Trajectory 1 use the information in Trajectory 0 for loop closure detection and optimization?
When is it necessary to finish a trajectory? Any suggestions?
These are some of the doubts that I have in my mind at the moment and I didn't find any specific information regarding trajectories in the documentation (https://media.readthedocs.org/pdf/google-cartographer/latest/google-cartographer.pdf). I read Chapter 2 and it explains the evaluation between multiple trajectories but it did not solve my doubts.
I am currently working on the visualization of the 3D map point cloud in real time (for reference about my project: #1134).
I want to publish two point clouds:
In order to complete this task, I would like to ask you more about the data organization and in particular about the "trajectories".
1) When a trajectory is finished calling the service "/finish_trajectory", how do I start a new trajectory? I tried to use the "/start_trajectory" service call but it gives me always errors. such as: a)
service message:
b)
service message:
Every new trajectory has its own origin or there is a "global origin" where all the trajectories refer to (maybe: 0,0,0 in trajectory 0)?
Does Trajectory 1 use the information in Trajectory 0 for loop closure detection and optimization?
When is it necessary to finish a trajectory? Any suggestions?
These are some of the doubts that I have in my mind at the moment and I didn't find any specific information regarding trajectories in the documentation (https://media.readthedocs.org/pdf/google-cartographer/latest/google-cartographer.pdf). I read Chapter 2 and it explains the evaluation between multiple trajectories but it did not solve my doubts.