CVB.Net 14.1
Metric Class Reference

Metric calibration routines. More...

Static Public Member Functions

static LaserPlaneHomographyCalibrator3D CalibratorFromAqs12Piece (ImagePlane rangeMapPlane, AQS12RangeMapSegmentor segmentor, CalibrationConfiguration config, out Point3Dd[] residuals)
 Creates an intrinsic calibrator from the given rangeMapPlane of an AQS12 calibration piece. More...
 
static LaserPlaneHomographyCalibrator3D CalibratorFromAqs12Piece (ImagePlane rangeMapPlane, AQS12RangeMapSegmentor segmentor, CalibrationConfiguration config, out Point3Dd[] residuals, Rect aoi)
 Creates an intrinsic calibrator from the given rangeMapPlane of an AQS12 calibration piece. More...
 
static AffineMatrix3D CalculateCorrectionOfLaserPlaneInclinationFromAqs12Piece (DensePointCloud cloud, AQS12DensePointCloudSegmentor segmentor, CalibrationConfiguration config, out Point3Dd[] residuals)
 Calculates the affine transformation from the given cloud of an AQS12 calibration piece. This transformation corrects errors induced by an inclined laser plane. More...
 
static AffineMatrix3D CalculateCorrectionOfLaserPlaneInclinationFromAqs12Piece (DensePointCloud cloud, AQS12DensePointCloudSegmentor segmentor, CalibrationConfiguration config, out Point3Dd[] residuals, Rect aoi)
 Calculates the affine transformation from the given cloud of an AQS12 calibration piece. This transformation corrects errors induced by an inclined laser plane. More...
 
static AffineMatrix3D CalculateRigidBodyTransformationFromAqs12Piece (DensePointCloud cloud, AQS12DensePointCloudSegmentor segmentor, AQS12Piece piece, out Point3Dd[] residuals)
 Calculates the rigid body transformation from the given cloud of an AQS12 calibration piece. The transformation is estimated by the Nelder-Mead method. The rigid body transformation is part of the extrinsic calibration. More...
 
static AffineMatrix3D CalculateRigidBodyTransformationFromAqs12Piece (DensePointCloud cloud, AQS12DensePointCloudSegmentor segmentor, AQS12Piece piece, out Point3Dd[] residuals, Rect aoi)
 Calculates the rigid body transformation from the given cloud of an AQS12 calibration piece. The transformation is estimated by the Nelder-Mead method. The rigid body transformation is part of the extrinsic calibration. More...
 
static unsafe AffineMatrix3D CalculateRigidBodyTransformation (Point3Dd[] referencePoints, Point3Dd[] measuredPoints)
 Calculates a rigid body transformation (rotation matrix and translation) from given referencePoints and measuredPoints . The transformation is estimated by the Nelder-Mead method. More...
 
static unsafe AffineMatrix3D CalculateAffineTransformation (Point3Dd[] referencePoints, Point3Dd[] measuredPoints)
 Calculates an affine transformation from the given referencePoints and measuredPoints . The transformation is calculated by a singular value decomposition. More...
 

Detailed Description

Metric calibration routines.

Member Function Documentation

◆ CalculateAffineTransformation()

static unsafe AffineMatrix3D CalculateAffineTransformation ( Point3Dd[]  referencePoints,
Point3Dd[]  measuredPoints 
)
static

Calculates an affine transformation from the given referencePoints and measuredPoints . The transformation is calculated by a singular value decomposition.

Parameters
referencePointsReference points of the body. (At least 4)
measuredPointsCorresponding measured points of the body. (At least 4)
Returns
Affine matrix containing the rotation matrix elements and translation.
Exceptions
ArgumentNullExceptionWhen measuredPoints or referencePoints is null.
CvbExceptionWhen an error during rigid body calculation occurs.
ArgumentExceptionWhen measuredPoints or referencePoints have less than 4 points, or not the same amount of points.

◆ CalculateCorrectionOfLaserPlaneInclinationFromAqs12Piece() [1/2]

static AffineMatrix3D CalculateCorrectionOfLaserPlaneInclinationFromAqs12Piece ( DensePointCloud  cloud,
AQS12DensePointCloudSegmentor  segmentor,
CalibrationConfiguration  config,
out Point3Dd[]  residuals 
)
static

Calculates the affine transformation from the given cloud of an AQS12 calibration piece. This transformation corrects errors induced by an inclined laser plane.

Parameters
cloudThe point cloud.
segmentorThe segmentor.
configThe calibration configuration.
residualsDifference between the reference points and the result.
Returns
Affine transformation, which corrects errors induced by an inclined laser plane.
Exceptions
ArgumentNullExceptionWhen cloud is null.

◆ CalculateCorrectionOfLaserPlaneInclinationFromAqs12Piece() [2/2]

static AffineMatrix3D CalculateCorrectionOfLaserPlaneInclinationFromAqs12Piece ( DensePointCloud  cloud,
AQS12DensePointCloudSegmentor  segmentor,
CalibrationConfiguration  config,
out Point3Dd[]  residuals,
Rect  aoi 
)
static

Calculates the affine transformation from the given cloud of an AQS12 calibration piece. This transformation corrects errors induced by an inclined laser plane.

Parameters
cloudThe point cloud.
segmentorThe segmentor.
configThe calibration configuration.
residualsDifference between the reference points and the result.
aoiThe area of interest in the cloud .
Returns
Affine transformation, which corrects errors induced by an inclined laser plane.
Exceptions
ArgumentNullExceptionWhen cloud , segmentor or config is null.
CvbExceptionWhen an error during calculation of laser plane inclination occurs.

Note, that the area of interest must be selected on the grid of the dense point cloud. Left, top, right and bottom are indices for row and column.

◆ CalculateRigidBodyTransformation()

static unsafe AffineMatrix3D CalculateRigidBodyTransformation ( Point3Dd[]  referencePoints,
Point3Dd[]  measuredPoints 
)
static

Calculates a rigid body transformation (rotation matrix and translation) from given referencePoints and measuredPoints . The transformation is estimated by the Nelder-Mead method.

Parameters
referencePointsReference points of the body. (At least 4)
measuredPointsCorresponding measured points of the body. (At least 4)
Returns
Affine matrix containing the rotation matrix elements and translation.
Exceptions
ArgumentNullExceptionWhen measuredPoints or referencePoints is null.
CvbExceptionWhen an error during rigid body calculation occurs.
ArgumentExceptionWhen measuredPoints or referencePoints have less than 3 points, or not the same amount of points.

◆ CalculateRigidBodyTransformationFromAqs12Piece() [1/2]

static AffineMatrix3D CalculateRigidBodyTransformationFromAqs12Piece ( DensePointCloud  cloud,
AQS12DensePointCloudSegmentor  segmentor,
AQS12Piece  piece,
out Point3Dd[]  residuals 
)
static

Calculates the rigid body transformation from the given cloud of an AQS12 calibration piece. The transformation is estimated by the Nelder-Mead method. The rigid body transformation is part of the extrinsic calibration.

Parameters
cloudThe point cloud.
segmentorThe segmentor.
pieceThe AQS12 piece to use.
residualsDifference between the reference points and the result.
Returns
The rigid body transformation.
Exceptions
ArgumentNullExceptionWhen cloud is null.

◆ CalculateRigidBodyTransformationFromAqs12Piece() [2/2]

static AffineMatrix3D CalculateRigidBodyTransformationFromAqs12Piece ( DensePointCloud  cloud,
AQS12DensePointCloudSegmentor  segmentor,
AQS12Piece  piece,
out Point3Dd[]  residuals,
Rect  aoi 
)
static

Calculates the rigid body transformation from the given cloud of an AQS12 calibration piece. The transformation is estimated by the Nelder-Mead method. The rigid body transformation is part of the extrinsic calibration.

Parameters
cloudThe point cloud.
segmentorThe segmentor.
pieceThe AQS12 piece to use.
residuals
aoiArea of interest in the cloud .
Returns
The rigid body transformation.
Exceptions
ArgumentNullExceptionWhen cloud , segmentor or piece is null.
CvbExceptionWhen an error during rigid body transformation calculation occurs.

Note, that the area of interest must be selected on the grid of the dense point cloud. Left, top, right and bottom are indices for row and column.

◆ CalibratorFromAqs12Piece() [1/2]

static LaserPlaneHomographyCalibrator3D CalibratorFromAqs12Piece ( ImagePlane  rangeMapPlane,
AQS12RangeMapSegmentor  segmentor,
CalibrationConfiguration  config,
out Point3Dd[]  residuals 
)
static

Creates an intrinsic calibrator from the given rangeMapPlane of an AQS12 calibration piece.

Parameters
rangeMapPlanePlane of the range map image to work with.
segmentorThe segmentor.
configThe calibration config.
residualsDifference between the reference points and the result.
Returns
The created calibrator.

◆ CalibratorFromAqs12Piece() [2/2]

static LaserPlaneHomographyCalibrator3D CalibratorFromAqs12Piece ( ImagePlane  rangeMapPlane,
AQS12RangeMapSegmentor  segmentor,
CalibrationConfiguration  config,
out Point3Dd[]  residuals,
Rect  aoi 
)
static

Creates an intrinsic calibrator from the given rangeMapPlane of an AQS12 calibration piece.

Parameters
rangeMapPlanePlane of the range map image to work with.
segmentorThe segmentor.
configThe calibration config.
residualsDifference between the reference points and the result.
aoiThe area of interest.
Returns
The created calibrator.
Exceptions
ArgumentNullExceptionWhen segmentor or config is null.