# Handeye Calibrator

The HandEye Calibrator block does the work of computing hand eye calibration. This block is a Cognex Designer wrapper for the VisionPro CogHandEyeCalibrator operator and it implements most of its functionality. This block can be configured to perform hand-eye calibration on multiple cameras using the Number Of Cameras property.

The VisionPro CogHandEyeCalibrator has two overloads for the execute function:

- The first overload computes hand-eye calibration results using the corresponding point pairs and stage poses.

- The second overload recomputes the hand-eye calibration results using corresponding point pairs and stage poses, and reusing each camera’s Raw2DFromCamera2D from a previous hand-eye calibration result.

This block implements functionality to support only the first overload.

## General Information

Class name: MotionStageValidatorBlock

Namespace: Cognex.Designer.AlignPlus.Calibration

Assembly: Cognex.Designer.AlignPlus.Calibration.dll

## Inputs

Name | Type | Description
--- | --- | ---
Calibration Image PelRects | Rectangle[] | The pelrects used to extract the correspondence point pairs. These pelrects are used to define the camera coordinate system (i.e. Camera2D) to be at the center of the pelrect. There should be one pelrect for each camera. There is no relationship between the pelrects of two separate cameras.
Calibration Results | CogHandEyeCalibrationResults | Contains a list of CogHandEyeCalibrationResult objects, one for each camera.
FeatureCrspsMCamerasNPoses | CogFeatureCrspsMCamerasNPoses | The correspondence point pairs to be used for calibration.
Stage Pose Collection | CogTransform2DRigid[] | The sequence of UncorrectedHome2DFromStage2D poses that were used to move the stage when the images that provided the correspondence point pairs were acquired.

## Outputs

Name | Type | Description
--- | --- | ---
Calibration Timed Out | Booleon | This output will be true if the calibration operator times out.
Calibration Results | CogHandEyeCalibrationResults | Handeye Calibration results which contains all spaces transforms and stage validation information
Stage Rotation Compensation Coeffs | CogTransform2DRigid[] |
Calibration Result Cam0 | CogHandEyeCalibration | Contains the calibration result for camera 0. Additional pins of this type will be available based on the Number Of Cameras property.

## Properties

These properties are described as below in two groups:

- Calibration Parameters

Name | Type | Description
--- | --- | ---
Theta Scaling Compensation | Boolean |
Home2D Unit Length Reference | Cognex.VisionPro.CalibFix. CogHandEyeHome2DUnitLengthReferenceConstants | Specifies how unit length in Home2D is established. Refer to the VisionPro CogHandEyeCalibrator documentation for more details
Is Moving Camera | Boolean | Indicates if the cameras are moving or stationary. Refer to the VisionPro CogHandEyeCalibrator documentation for more details.
Lens Distortion Mode | Cognex.VisionPro. CogLensDistortionModelConstants | The optical distortion model to be used in computing Raw2DFromCamera2D. Refer to the VisionPro CogHandEyeCalibrator documentation for more details.
Minimum Rotation Span | Double | The minimum required rotation angle span in degrees among all input motion-x-y-theta poses for motion capabilities that allow rotation. When executed, this block will throw an exception if the rotation angle span among all input motion-x-y-theta poses is less than this minimum requirement. Refer to the VisionPro CogHandEyeCalibrator documentation for more details.
Motion Capability | Cognex.VisionPro.CalibFix. CogHandEyeMotionCapabilityConstants | The capability of the motion rendering device to render the motion of the calibration target. Refer to the VisionPro CogHandEyeCalibrator documentation for more details.

- Parameters

Name | Type | Description
--- | --- | ---
Number of Cameras | Int32 | Sets/Gets the number of cameras supplying images to the feature extractor. This property has a minimum value of MinNumberOfCameras and a maximum value of MaxNumberOfCameras. The total number of Calibration Result CamN pins is equal to the Number Of Cameras property. The number of pins changes immediately upon a change to this property. Throws System.ArgumentOutOfRangeException: If the setter value is less than MinNumberOfCameras or more than MaxNumberOfCameras
Timeout Enabled | Boolean | Enable or disable timeout for calibration. Refer to the VisionPro CogHandEyeCalibrator documentation for more details.
Timeout Value | Double | The calibration time out value in milliseconds. Refer to the VisionPro CogHandEyeCalibrator documentation for more details.
Calibration Target Type |  |
Recalibrate | Boolean | The target that is used to generate the features needed to perform hand-eye calibration.

## Published Methods

Void ResetBlock()

This method resets this block to a default state.