Cog3DHandEyeCalibrationValidator ClassCognex VisionPro 9.5
This class is for validating an existing 3D hand-eye calibration for one camera. The validation step accepts as inputs the original hand-eye calibration, a set of robot poses, and a corresponding set of feature positions. The output of the validation is a hand-eye validation result object. the hand-eye validation result object contains a camera calibration validation result and residuals for the hand-eye calibration validation. These characterize the accuracy of the hand-eye system. The accuracy can be compared to "baseline" accuracy estimates from calibration time in order to determine if the hand-eye system is still in calibration.
Inheritance Hierarchy

System Object
  System MarshalByRefObject
    Cognex.VisionPro.Implementation CogObjectBase
      Cognex.VisionPro.Implementation CogSerializableObjectBase
        Cognex.VisionPro3D Cog3DHandEyeCalibrationValidator

Namespace: Cognex.VisionPro3D
Assembly: Cognex.VisionPro3D (in Cognex.VisionPro3D.dll) Version: 69.0.0.0
Syntax

[SerializableAttribute]
public class Cog3DHandEyeCalibrationValidator : CogSerializableObjectBase, 
	IDisposable

The Cog3DHandEyeCalibrationValidator type exposes the following members.

Constructors

  NameDescription
Public methodCog3DHandEyeCalibrationValidator 
Construct this default Cog3DHandEyeCalibrationValidator.
Public methodCog3DHandEyeCalibrationValidator(Cog3DHandEyeCalibrationValidator)
Protected methodCog3DHandEyeCalibrationValidator(SerializationInfo, StreamingContext)
Top
Methods

  NameDescription
Public methodCreateObjRef
Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.
(Inherited from MarshalByRefObject.)
Public methodDispose 
Protected methodDispose(Boolean)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodExecute
Validate the specified hand-eye calibration result using the specified calibration features and robot poses, and then return the hand-eye calibration validation result.
Protected methodFinalize (Overrides Object Finalize .)
Protected methodGetAttributes
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetClassName
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetComponentName
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetConverter
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetDefaultEvent
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetDefaultProperty
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetEditor
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetEvents 
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetEvents( Attribute )
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetLifetimeService
Retrieves the current lifetime service object that controls the lifetime policy for this instance.
(Inherited from MarshalByRefObject.)
Protected methodGetObjectData
Implements the GetObjectData method of the ISerializable interface.
(Inherited from CogSerializableObjectBase.)
Protected methodGetProperties 
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetProperties( Attribute )
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Protected methodGetPropertyOwner
Implements the corresponding member of the ICustomTypeDescriptor interface. May be overridden in derived classes to provide custom type information.
(Inherited from CogObjectBase.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInitializeLifetimeService
Obtains a lifetime service object to control the lifetime policy for this instance.
(Inherited from MarshalByRefObject.)
Protected methodMemberwiseClone 
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodMemberwiseClone(Boolean)
Creates a shallow copy of the current MarshalByRefObject object.
(Inherited from MarshalByRefObject.)
Public methodToString
Returns a String that represents the current Object.
(Inherited from Object.)
Top
Remarks

A "baseline" validation should be performed immediately after hand-eye calibration. That baseline validation step should involve multiple view sets so that one can estimate the distribution of residuals. The "baseline" validation measurements are stored for future comparison.

Then, at some arbitrary time (usually after the system performed vision tasks for a period of time), the user acquires images of the same calibration plate in some set of (preferrably, the same) robot poses and executes hand-eye calibration validation to get the "current" measurements. Finally, the user compares the "current" validation measurements with the "baseline".

If the "current" measurements agree with the "baseline" measurements to a satisfactory degree, then the system is in calibration and the user does not need to perform any recalibration. If the measurements inside the camera calibration validation results satisfactorily agree, but the measurements of hand-eye validation residuals do not satisfactorily agree, then the user can use the baseline camera intrinsics to re-perform hand-eye calibration. If camera calibration validation results do not agree and the hand-eye calibration validation results do not agree, then camera calibration and hand-eye calibration both need to be performed again.

See Also