CogHandEyeCalibratorRemoteCameras Execute Method (CogFeaturePositionsMCamerasNPoses,  Rectangle ,  CogTransform2DRigid )Cognex VisionPro
Compute the CogHandEyeCalibrationRemoteCamerasResults for the remote cameras based on the supplied tracked feature points on a part from the remote station, pelrects of the remote cameras, and uncorrectedHome2DFromStage2D poses. This overload performs a full hand eye calibration on the remote station so that it doesn't require that the remote cameras and primary cameras to have overlapped tracked features in their FOVs when moving the part between primary station and remote station (via the highly repeatable motions).

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

public CogHandEyeCalibrationRemoteCameraResults Execute(
	CogFeaturePositionsMCamerasNPoses remoteCamerasTrackedRaw2DFeatures,
	Rectangle[] remoteCamerasPelRects,
	CogTransform2DRigid[] uncorrectedHome2DFromStage2Ds
)

Parameters

remoteCamerasTrackedRaw2DFeatures
Type: Cognex.VisionPro CogFeaturePositionsMCamerasNPoses
The tracked Raw2D feature positions from the images acquired by the remote cameras. Each tracked Raw2D feature includes x,y coordinates and a validation value. For different poseID of i, remoteCamerasTrackedRaw2DFeatures[i][cameraID][featureID] (with the same cameraID and featureID) should always correspond to the same physical feature. The validation value indicates whether this feature is visible in current camera under current pose.
remoteCamerasPelRects
Type:  System.Drawing Rectangle 
The pelrects of the remote cameras. There should be one pelrect for each camera. There is no relationship between the pelrects of two separate cameras. It is used to define the camera coordinate system (i.e. Camera2D) to be at the center of the pelrect.
uncorrectedHome2DFromStage2Ds
Type:  Cognex.VisionPro CogTransform2DRigid 
The sequence of UncorrectedHome2DFromStage2D poses that were used to move the stage before the remote cameras acquired the images that provided the tracked Raw2D features.

Return Value

Type: CogHandEyeCalibrationRemoteCameraResults
A CogHandEyeCalibrationRemoteCamerasResults containing the results of the calibration, i.e. a CogHandEyeCalibrationRemoteCameraResult object for each remote camera.
Exceptions

ExceptionCondition
ArgumentNullException If the remoteCamerasTrackedRaw2DFeatures argument is null.
ArgumentNullException If the remoteCamerasPelRects argument is null.
ArgumentNullException If the uncorrectedHome2DFromStage2Ds argument is null.
CogTimeoutExpiredException If TimeoutEnabled is true and this method does not complete within Timeout milliseconds.
ArgumentException If any of the following is true:
  • Any of the input arguments is empty.
  • remoteCamerasTrackedRaw2DFeatures.Count != uncorrectedHome2DFromStage2Ds.Count
  • remoteCamerasTrackedRaw2DFeatures[i].Count != remoteCamerasPelRects.Count for any pose i
  • remoteCamerasTrackedRaw2DFeatures[i1][j].Count != remoteCamerasTrackedRaw2DFeatures[i2][j].Count for any j.
  • Inconsistent handedness flip identified in different poses for the same camera.
ArgumentException If any of the following is true:
  • The uncorrectedHome2DFromStage2Ds parameter has fewer than 4 elements.
  • All elements of the uncorrectedHome2DFromStage2Ds parameter have exactly the same translation component.
  • The rotation span among all elements of uncorrectedHome2DFromStage2Ds is less than 1.0 degree.
ArgumentException If any Raw2D feature position in the remoteCamerasTrackedRaw2DFeatures parameter argument falls outside its corresponding pelrect.
ArgumentException If the input data is degenerate.
Remarks

Currently, The only supported stage MotionCapability MotionCapability is RotationAndTranslation. Any other stage MotionCapability will cause exception.

See Also