CogCalibNPointToNPoint Calibrate Method Cognex VisionPro 9.8
Computes the calibrated space using the current point sets. If successful, sets the Calibrated property to True, updates the computed transforms, and updates the ComputedRMSError property.

Namespace: Cognex.VisionPro.CalibFix
Assembly: Cognex.VisionPro.CalibFix (in Cognex.VisionPro.CalibFix.dll) Version: 75.1.0.0
Syntax

public void Calibrate()
Events

Exceptions

ExceptionCondition
CogCalibFixNPointTooFewPointsException

There are too few points for the requested DOFs.

CogCalibFixNPointUnstableException

The points are in a configuration that is numerically unstable or ambiguous. For example, all the points lie along the x-axis and the DOFs need to measure y-axis scaling.

Remarks

Computes the calibrated space using the current point sets. If successful, this method sets the Calibrated property to True and updates the computed transforms (GetComputedUncalibratedFromCalibratedTransform , GetComputedUncalibratedFromRawCalibratedTransform ) and the ComputedRMSError value.

The Calibrate  method computes the calibration in two steps. First, using the allowed degrees of freedom, it computes the minimum-squared-error UncalibratedFromRawCalibrated transformation that best maps the current set of raw calibrated points onto the set of uncalibrated points. Second, it computes the final UncalibratedFromCalibrated transform by determining and then applying the origin adjustment transformation:

UncalibratedFromCalibrated = UncalibratedFromRawCalibrated * RawCalibratedFromCalibrated

The RawCalibratedFromCalibrated transform is calculated by converting the CalibratedOriginX, CalibratedOriginY, and CalibratedXAxisRotation properties into raw calibrated space, and then placing those values in the RawCalibratedFromCalibrated transform. If the SwapCalibratedHandedness property is True, the adjustment transform has a skew of 180 degrees.

The Calibrate  method does not try to optimize. It always performs the two-step calculation described previously, even if the object is already calibrated or if the UncalibratedFromRawCalibrated transform is valid.

See Also