LidarCalibration Struct Reference

Structure containing beam geometry calibration data for raw data processing. More...

Attributes

std::vector< double > beam_altitude_angles
 Vertical angle of each beam in degrees. More...
 
std::vector< double > beam_azimuth_angles
 Horizontal angle offset of each beam in degrees. More...
 
std::vector< int > pixel_shift_by_row
 Per-row pixel shift for destaggering raw data. More...
 
double lidar_origin_to_beam_origin_mm = 0.0
 Distance from lidar origin to beam origin in millimeters. More...
 
sl::Matrix4f beam_to_lidar_transform
 4x4 transform from beam frame to lidar frame. More...
 

Detailed Description

Structure containing beam geometry calibration data for raw data processing.

This calibration data is required for:

  • Destaggering raw sensor data (using pixel_shift_by_row)
  • Custom XYZ projection from range data (using beam angles)
  • Advanced point cloud processing pipelines
Note
This structure is meant to be used as a read-only container.

Variables

◆ beam_altitude_angles

std::vector<double> beam_altitude_angles

Vertical angle of each beam in degrees.

Note
Size equals vertical_resolution (number of channels).
Used with beam_azimuth_angles to compute XYZ from range.

◆ beam_azimuth_angles

std::vector<double> beam_azimuth_angles

Horizontal angle offset of each beam in degrees.

Note
Size equals vertical_resolution (number of channels).
Accounts for beam stagger pattern in the azimuth direction.

◆ pixel_shift_by_row

std::vector<int> pixel_shift_by_row

Per-row pixel shift for destaggering raw data.

Note
Size equals vertical_resolution (number of channels).
Apply this shift to align columns in staggered raw data.

◆ lidar_origin_to_beam_origin_mm

double lidar_origin_to_beam_origin_mm = 0.0

Distance from lidar origin to beam origin in millimeters.

Note
Used for accurate near-field range correction.

◆ beam_to_lidar_transform

sl::Matrix4f beam_to_lidar_transform

4x4 transform from beam frame to lidar frame.

Note
Row-major order.