EasyManuals Logo

Velodyne HDL-64E S3 User Manual

Velodyne HDL-64E S3
54 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #43 background imageLoading...
Page #43 background image
HDL-64E S3
High Definition LiDAR Sensor
Page 43
Velodyne LiDAR, Inc.
©
2019
63-HDL64ES3 REV K
Appendix F: Dual Two Point Calibration Methodology &
Code Samples
Velodyne uses a dual point calibration methodology to calculate the values in the .xml file. This section
describes this calibration methodology. The steps for the calibration are as follows:
1. Perform far point calibration at 25.04m
2. Perform near point X calibration at 2.4m
3. Perform near point Y calibration at 1.93m
4. Perform linear interpolation to get distance correction for X and Y (Nearer than 25.00m only)
D
x
= D
1x
+ (D
2x
D
1x
)
( x x
1
)
( x
2
x
1
)
Where:
x
1
= 2.4 m
x
2
= 25.04 m
y
1
= 1.93 m
D
y
= D
1
y
+
(
D
2x
D
1
y
)
( y
y
1
)
( y
2
y
1
)
D
1x
= distance corrected in X direction for near point
D
1 y
= distance corrected Y direction for near point
D
2 x
= D
2 y
= distance correction for far point
Coordinate Calculation Algorithm Sample Code
firingData::computeCoords(guintl6 laserNum, boost::shared_ptr<CalibrationDB> db, GLpos_t
&pos)
{
guintl6 idx = laserNum % VLS_LASER_PER_FIRING;
boost::shared_ptr<CalibrationPoint> cal = db->getCalibration(laserNum);
if (data->points[idx].distance == 0) {
coords[idx].setX(0.0);
coords[idx].setY(0.0);
coords[idx].setZ(0.0);
return;
}
float distancel = db->getDistLSB() * (float)data->points[idx].distance;
float distance = distancel+ cal->getDistCorrection();
float cosVertAngle = cal->getCosVertCorrection();
float sinVertAngle = cal->getSinVertCorrection();
float cosRotCorrection = cal->getCosRotCorrection();
float sinRotCorrection = cal->getSinRotCorrection();
//g_assert(data->position < 36000);
float cosRotAngle = rotCosTable[data->position]*cosRotCorrection + rotSinTable[data-
>position]*sinRotCorrection;
float sinRotAngle = rotSinTable[data->position]*cosRotCorrection - rotCosTable[data-
>position]*sinRotCorrection;
//distancel /= VLS_DIM_SCALE;
//distance /= VLS_DIM_SCALE;
float hOffsetCorr = cal->getHorizOffsetCorrection()/VLS_DIM_SCALE;
float vOffsetCorr = cal->getVertOffsetCorrection()/VLS_DIM_SCALE;

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Velodyne HDL-64E S3 and is the answer not in the manual?

Velodyne HDL-64E S3 Specifications

General IconGeneral
BrandVelodyne
ModelHDL-64E S3
CategoryAccessories
LanguageEnglish

Related product manuals