Users Manual

7 Optional software components
The rc_visard offers optional software components that can be activated by purchasing a separate license (Section
9.6).
The rc_visards optional software consists of the following components:
SLAM (rc
_
slam, Section 7.1) performs simultaneous localization and mapping for correcting accumu-
lated poses. The rc_visards covered trajectory is offered via the REST-API interface (Section 8.2).
IO and Projector Control (rc
_
iocontrol, Section 7.2) provides control over the general purpose inputs
and outputs with special modes for controlling an external random dot projector.
TagDetect (rc
_
april
_
tag
_
detect and rc
_
qr
_
code
_
detect, Section 7.3) allows the detection of April-
Tags and QR codes, as well as the estimation of their poses.
ItemPick and BoxPick (rc
_
itempick and rc
_
boxpick, Section 7.4) provides an out-of-the-box percep-
tion solution for robotic pick-and-place applications of unknown objects or boxes.
SilhouetteMatch (rc
_
silhouettematch, Section 7.5) provides an object detection solution for objects
placed on a plane.
7.1 SLAM
The SLAM component is part of the sensor dynamics component. It provides additional accuracy for the pose
estimate of the stereo INS. When the rc_visard moves through the world, the pose estimate slowly accumulates
errors over time. The SLAM component can correct these pose errors by recognizing previously visited places.
The acronym SLAM stands for Simultaneous Localization and Mapping. The SLAM component creates a map
consisting of the image features as used in the visual odometry component. The map is later used to correct
accumulated pose errors. This is most apparent in applications where, e.g., a robot returns to a previously visited
place after covering a large distance (this is called a loop closure). In this case, the robot can re-detect image
features that are already stored in its map and can use this information to correct the drift in the pose estimate that
accumulated since the last visit.
When closing a loop, not only the current pose, but also the past pose estimates (the trajectory of the rc_visard),
are corrected. Continuous trajectory correction leads to a more accurate map. On the other hand, the accuracy of
the full trajectory is important when it is used to build an integrated world model, e.g., by projecting the 3D point
clouds obtained (see Computing depth images and point clouds, Section 6.2.2) into a common coordinate frame.
The full trajectory can be requested from the SLAM component for this purpose.
Note: The SLAM component is optionally available for the rc_visard and will run on board the sensor. If a
SLAM license is stored on the rc_visard, then the SLAM component is shown as Available on the Web GUIs
Overview page and in the License section of the System page.
7.1.1 Usage
The SLAM component can be activated at any time, either via the rc_dynamics interface (see the documentation
of the respective Services, Section 6.3.3) or from the Dynamics page of the Web GUI.
67