LibMultiSense
LibMultiSense Documentation
crl::multisense::lidar::Calibration Class Reference

Class used to store a laser calibration. More...

#include <MultiSenseTypes.hh>

Public Attributes

float laserToSpindle [4][4]
 A 4x4 homogeneous transform matrix corresponding to the transform from the laser origin coordinate frame to the rotating spindle frame
More...
 
float cameraToSpindleFixed [4][4]
 A 4x4 homogeneous transform matrix corresponding to the transform from the static spindle frame to the left camera optical frame. More...
 

Detailed Description

Class used to store a laser calibration.

Calibrations can be queried or set for a specific sensor

Example code to query the current laser calibration from a sensor:

//
// Instantiate a channel connecting to a sensor at the factory default
// IP address
channel = crl::multisense::Channel::Create("10.66.171.21");
channel->setMtu(7200);
//
// Create a lidarCalibration instance to store the queried laser calibration
//
// Query the laser calibration from the current Channel instance
crl::multisense::Status status = channel->getLidarCalibration(lidarCalibration);
//
// Check to see if the laser calibration query succeeded
throw std::runtime_error("Unable to query laser calibration");
}
//
// Use the laser calibration...
//
// Destroy the channel instance

Example code to set a laser calibration:

//
// Instantiate a channel connecting to a sensor at the factory default
// IP address
channel = crl::multisense::Channel::Create("10.66.171.21");
channel->setMtu(7200);
//
// Create a lidarCalibration instance to store the new laser calibration
//
// Populate the laser calibration. Here we populate the calibration
// with identity matrices. All MultiSense SL sensors ship pre-calibrated
// making this unnecessary.
lidarCalibration.laserToSpindle = { {1, 0, 0, 0},
{0, 1, 0, 0},
{0, 0, 1, 0},
{0, 0, 0, 1} };
lidarCalibration.cameraToSpindleFixed = { {1, 0, 0, 0},
{0, 1, 0, 0},
{0, 0, 1, 0},
{0, 0, 0, 1} };
//
// Send the new laser calibration to the sensor
crl::multisense::Status status = channel->setLidarCalibration(lidarCalibration);
//
// Check to see if the new laser calibration was successfully received by
// the sensor
throw std::runtime_error("Unable to set lidar calibration");
}
//
// Destroy the channel instance

Definition at line 2152 of file MultiSenseTypes.hh.

Member Data Documentation

◆ cameraToSpindleFixed

float crl::multisense::lidar::Calibration::cameraToSpindleFixed[4][4]

A 4x4 homogeneous transform matrix corresponding to the transform from the static spindle frame to the left camera optical frame.

Definition at line 2160 of file MultiSenseTypes.hh.

◆ laserToSpindle

float crl::multisense::lidar::Calibration::laserToSpindle[4][4]

A 4x4 homogeneous transform matrix corresponding to the transform from the laser origin coordinate frame to the rotating spindle frame

Definition at line 2157 of file MultiSenseTypes.hh.


The documentation for this class was generated from the following file:
crl::multisense::Channel
Class which manages all communications with a MultiSense device.
Definition: MultiSenseChannel.hh:69
crl::multisense::Status_Ok
static CRL_CONSTEXPR Status Status_Ok
Definition: MultiSenseTypes.hh:98
crl::multisense::lidar::Calibration::laserToSpindle
float laserToSpindle[4][4]
A 4x4 homogeneous transform matrix corresponding to the transform from the laser origin coordinate fr...
Definition: MultiSenseTypes.hh:2157
crl::multisense::lidar::Calibration
Class used to store a laser calibration.
Definition: MultiSenseTypes.hh:2152
crl::multisense::Channel::Destroy
static void Destroy(Channel *instanceP)
Destroy a channel instance that was created using the static member function Channel::Create().
crl::multisense::lidar::Calibration::cameraToSpindleFixed
float cameraToSpindleFixed[4][4]
A 4x4 homogeneous transform matrix corresponding to the transform from the static spindle frame to th...
Definition: MultiSenseTypes.hh:2160
crl::multisense::Status
int32_t Status
General status typdef used as a return value for get/set crl::multisense::Channel methods.
Definition: MultiSenseTypes.hh:93
crl::multisense::Channel::setMtu
virtual Status setMtu(int32_t mtu)=0
Set the current sensor's MTU.
crl::multisense::Channel::setLidarCalibration
virtual Status setLidarCalibration(const lidar::Calibration &c)=0
Set the current laser calibration.
crl::multisense::Channel::getLidarCalibration
virtual Status getLidarCalibration(lidar::Calibration &c)=0
Query the current laser calibration.
crl::multisense::Channel::Create
static Channel * Create(const std::string &sensorAddress)
Create a Channel instance, used to manage all communications with a sensor.