Fusion Module

Classes

struct  SynchronizationParameter
 Configuration parameters for data synchronization. More...
 
struct  InitFusionParameters
 Holds the options used to initialize the Fusion object. More...
 
struct  CommunicationParameters
 Holds the communication parameter to configure the connection between senders and receiver More...
 
struct  FusionConfiguration
 Stores the Fusion configuration, can be read from /write to a Json file. More...
 
struct  BodyTrackingFusionParameters
 Holds the options used to initialize the body tracking module of the Fusion. More...
 
struct  BodyTrackingFusionRuntimeParameters
 Holds the options used to change the behavior of the body tracking module at runtime. More...
 
struct  CameraIdentifier
 Used to identify a specific camera in the Fusion API More...
 
struct  CameraMetrics
 Holds the metrics of a sender in the fusion process. More...
 
struct  FusionMetrics
 Holds the metrics of the fusion process. More...
 
struct  GNSSData
 Structure containing GNSS data to be used for positional tracking as prior. More...
 
struct  GeoPose
 Holds Geo reference position. More...
 
struct  ECEF
 Represents a world position in ECEF format. More...
 
struct  ENU
 Represents a world position in ENU format. More...
 
struct  LatLng
 Represents a world position in LatLng format. More...
 
struct  UTM
 Represents a world position in UTM format. More...
 
class  GNSSCalibrationParameters
 Holds the options used for calibrating GNSS / VIO. More...
 
class  PositionalTrackingFusionParameters
 Holds the options used for initializing the positional tracking fusion module. More...
 
class  Fusion
 Holds Fusion process data and functions More...
 

Enumerations

enum class  POSITION_TYPE
 Lists the types of possible position outputs. More...
 
enum class  FUSION_ERROR_CODE
 Lists the types of error that can be raised by the Fusion. More...
 
enum class  SENDER_ERROR_CODE
 Lists the types of error that can be raised during the Fusion by senders. More...
 
enum class  COMM_TYPE
 Lists the different types of communications available for Fusion module. More...
 
enum class  GNSS_FUSION_STATUS
 Lists the different states of the GNSS fusion. More...
 
enum class  FUSION_REFERENCE_FRAME
 Reference frame used for the positional tracking. More...
 

Enumeration Type Documentation

◆ POSITION_TYPE

enum POSITION_TYPE
strong

Lists the types of possible position outputs.

Enumerator
RAW 

The output position will be the raw position data.

FUSION 

The output position will be the fused position projected into the requested camera repository.

◆ FUSION_ERROR_CODE

enum FUSION_ERROR_CODE
strong

Lists the types of error that can be raised by the Fusion.

Enumerator
FUSION_INCONSISTENT_FPS 

Significant differences observed between sender's FPS. Fusion quality will be affected.

FUSION_FPS_TOO_LOW 

Fusion FPS is too low because at least one sender has an FPS lower than 10 FPS. Fusion quality will be affected.

INVALID_TIMESTAMP 

You have attempted to ingest GNSSData into the Fusion system with an invalid timestamp. It is essential to ensure that the timestamp of your GNSSData is set correctly. This issue may arise from a unit error in the ingested timestamp, such as providing the timestamp in microseconds instead of nanoseconds.

INVALID_COVARIANCE 

This is a warning message notifying you about an issue encountered while ingesting GNSSData into the Fusion system. The problem lies in the very low covariance value provided. To ensure stability and prevent potential issues, the system will automatically clamp this covariance value.

NO_NEW_DATA_AVAILABLE 

All data from all sources has been consumed. No new data is available for processing.

SUCCESS 

Standard code for successful behavior.

GNSS_DATA_NEED_FIX 

This is a warning message indicating an issue with the ingestGNSSData function call. The problem lies in the gnss_status field of
the GNSSData parameter, which is currently set to UNKNOWN. To enhance the accuracy of the VPS (Visual Positioning System), it is essential to provide an appropriate value for this field. To rectify this issue, please consider setting the gnss_status field to a valid value that reflects the status of your GNSS sensor. If your GNSS sensor is unable to output a status, it is recommended to set the gnss_status field to sl::GNSS_STATUS::SINGLE.

GNSS_DATA_COVARIANCE_MUST_VARY 

to prevent users from repeatedly ingesting a fixed or manually crafted covariance.

BODY_FORMAT_MISMATCH 

Senders are using different body formats. Please use the same body format.

MODULE_NOT_ENABLED 

The following module was not enabled. Please enable it to proceed.

SOURCE_MISMATCH 

Some sources are provided by SVO and others by LIVE stream.

CONNECTION_TIMED_OUT 

Connection timed out. Unable to reach the sender.
Verify the sender's IP/port.

MEMORY_ALREADY_USED 

Intra-process shared memory allocation issue.
Multiple connections to the same data. Check memory usage.

INVALID_IP_ADDRESS 

The provided IP address format is incorrect.
Please provide the IP in the format 'a.b.c.d', where (a, b, c, d) are numbers between 0 and 255.

FAILURE 

Standard code for unsuccessful behavior.

◆ SENDER_ERROR_CODE

enum SENDER_ERROR_CODE
strong

Lists the types of error that can be raised during the Fusion by senders.

Enumerator
GRAB_ERROR 

The sender encountered a grab error.

INCONSISTENT_FPS 

The sender does not run with a constant frame rate.

FPS_TOO_LOW 

The frame rate of the sender is lower than 10 FPS.

SUCCESS 

Standard code for successful behavior.

DISCONNECTED 

The sender has been disconnected.

◆ COMM_TYPE

enum COMM_TYPE
strong

Lists the different types of communications available for Fusion module.

Enumerator
LOCAL_NETWORK 

The sender and receiver are on the same local network and communicate by RTP.
The communication can be affected by the local network load.

INTRA_PROCESS 

Both sender and receiver are declared by the same process and can be in different threads.
This type of communication is optimized.

◆ GNSS_FUSION_STATUS

enum GNSS_FUSION_STATUS
strong

Lists the different states of the GNSS fusion.

Enumerator
OK 

The GNSS fusion module is calibrated and working successfully.

OFF 

The GNSS fusion module is not enabled.

CALIBRATION_IN_PROGRESS 

Calibration of the GNSS/VIO fusion module is in progress.

RECALIBRATION_IN_PROGRESS 

Re-alignment of GNSS/VIO data is in progress, leading to potentially inaccurate global position

◆ FUSION_REFERENCE_FRAME

Reference frame used for the positional tracking.

Enumerator
WORLD 

The world frame is the reference frame of the world according to the fused positional Tracking

BASELINK 

The base link frame is the reference frame where camera calibration is given