Fusion Module

Classes

class  CommunicationParameters
 Holds the communication parameter to configure the connection between senders and receiver. More...
 
class  FusionConfiguration
 Useful struct to store the Fusion configuration, can be read from /write to a JSON file. More...
 
class  InitFusionParameters
 Holds the options used to initialize the Fusion object. More...
 
class  CameraIdentifier
 Used to identify a specific camera in the Fusion API. More...
 
class  BodyTrackingFusionParameters
 Holds the options used to initialize the body tracking module of the Fusion. More...
 
class  BodyTrackingFusionRuntimeParameters
 Holds the options used to change the behavior of the body tracking module at runtime. More...
 
class  ObjectDetectionFusionParameters
 Holds the options used to initialize the object detection module of the Fusion. 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  SpatialMappingFusionParameters
 Sets the spatial mapping parameters. More...
 
class  CameraMetrics
 Holds the metrics of a sender in the fusion process. More...
 
class  FusionMetrics
 Holds the metrics of the fusion process. More...
 
class  ECEF
 Represents a world position in ECEF format. More...
 
class  LatLng
 Represents a world position in LatLng format. More...
 
class  UTM
 Represents a world position in UTM format. More...
 
class  GeoConverter
 Purely static class for Geo functions. More...
 
class  GeoPose
 Holds geographic reference position information. More...
 
class  Fusion
 Holds Fusion process data and functions. More...
 

Enumerations

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  POSITION_TYPE
 Lists the types of possible position outputs. More...
 

Functions

FusionConfiguration readFusionConfigurationFile (std::string json_config_filename, int serial_number, sl::COORDINATE_SYSTEM coord_sys, sl::UNIT unit)
 Read a configuration JSON file to configure a fusion process. More...
 
std::vector< FusionConfigurationreadFusionConfigurationFile (std::string json_config_filename, sl::COORDINATE_SYSTEM coord_sys, sl::UNIT unit)
 Read a Configuration JSON file to configure a fusion process. More...
 
void writeConfigurationFile (std::string json_config_filename, std::vector< FusionConfiguration > &configuration, sl::COORDINATE_SYSTEM coord_sys, sl::UNIT unit)
 Write a Configuration JSON file to configure a fusion process. More...
 

Fusion

ERROR_CODE stopPublishing ()
 Set this camera as normal camera (without data providing).
Stop to send camera data to fusion. More...
 
CommunicationParameters getCommunicationParameters ()
 Returns the CommunicationParameters used.
It corresponds to the structure given as argument to the startPublishing() method. More...
 

Enumeration Type Documentation

◆ FUSION_ERROR_CODE

enum FUSION_ERROR_CODE
strong

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

Enumerator
GNSS_DATA_NEED_FIX 
GNSS_DATA_COVARIANCE_MUST_VARY 
BODY_FORMAT_MISMATCH 
MODULE_NOT_ENABLED 
SOURCE_MISMATCH 

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

CONNECTION_TIMED_OUT 
MEMORY_ALREADY_USED 
INVALID_IP_ADDRESS 
FAILURE 
SUCCESS 
FUSION_INCONSISTENT_FPS 
FUSION_FPS_TOO_LOW 
INVALID_TIMESTAMP 
INVALID_COVARIANCE 
NO_NEW_DATA_AVAILABLE 

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

◆ SENDER_ERROR_CODE

enum SENDER_ERROR_CODE
strong

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

Enumerator
DISCONNECTED 
SUCCESS 
GRAB_ERROR 
INCONSISTENT_FPS 
FPS_TOO_LOW 

The frame rate of the sender is lower than 10 FPS. Check sender's settings and performance.

◆ 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.

Function Documentation

◆ stopPublishing()

ERROR_CODE stopPublishing ( )

Set this camera as normal camera (without data providing).
Stop to send camera data to fusion.

Returns
SUCCESS if everything went fine, ERROR_CODE::FAILURE otherwise

◆ getCommunicationParameters()

CommunicationParameters getCommunicationParameters ( )

Returns the CommunicationParameters used.
It corresponds to the structure given as argument to the startPublishing() method.

Returns
CommunicationParameters containing the parameters used to initialize communication with the Fusion Module.

◆ readFusionConfigurationFile() [1/2]

FusionConfiguration sl::readFusionConfigurationFile ( std::string  json_config_filename,
int  serial_number,
sl::COORDINATE_SYSTEM  coord_sys,
sl::UNIT  unit 
)

Read a configuration JSON file to configure a fusion process.

Parameters
json_config_filename: The name of the JSON file containing the configuration.
serial_number: The serial number of the ZED Camera you want to retrieve.
coord_sys: The COORDINATE_SYSTEM in which you want the World Pose to be in.
unit: The UNIT in which you want the World Pose to be in.
Returns
A FusionConfiguration for the requested camera.
Note
Empty if no data were found for the requested camera.

◆ readFusionConfigurationFile() [2/2]

std::vector<FusionConfiguration> sl::readFusionConfigurationFile ( std::string  json_config_filename,
sl::COORDINATE_SYSTEM  coord_sys,
sl::UNIT  unit 
)

Read a Configuration JSON file to configure a fusion process.

Parameters
json_config_filename: The name of the JSON file containing the configuration.
coord_sys: The COORDINATE_SYSTEM in which you want the World Pose to be in.
unit: The UNIT in which you want the World Pose to be in.
Returns
A vector of FusionConfiguration for all the camera present in the file.
Note
Empty if no data were found for the requested camera.

◆ writeConfigurationFile()

void sl::writeConfigurationFile ( std::string  json_config_filename,
std::vector< FusionConfiguration > &  configuration,
sl::COORDINATE_SYSTEM  coord_sys,
sl::UNIT  unit 
)

Write a Configuration JSON file to configure a fusion process.

Parameters
json_config_filename: The name of the JSON that will contain the information.
confA vector of FusionConfiguration listing all the camera configurations.
coord_sys: The COORDINATE_SYSTEM in which the World Pose is.
unit: The UNIT in which the World Pose is.