Skip to content

clarte53/hand-eye-calibration

Repository files navigation

Hand-eye calibration

Compute offset from tracker 1 to tracker 2 given sequences of matrices of every tracker. Depends on module and Math.Net Numerics.

See "Hand-eye calibration", Horaud et Dornaika, Intl. Journal of Robotics Research, Vol. 14, No 3, pp 195-210, 1995 for details.

Usage

Call the following static method:

static public bool HandEyeCalibration.Compute(List<Matrix4x4> a, List<Matrix4x4> b, out Matrix4x4 origin_offset, out Matrix4x4 tracker_offset)

with:

a: Sequence of tracker A matrices (For example a robot 'hand' coordinate system). Size has to be > 3

b: Sequence of tracker B matrices (For example a robot 'eye' coordinate system). Size has to be > 3

outpout parms:

origin_offset: Transformation from A origin to B origin, expressed in A

tracker_offset: Transformation from tracker A to tracker B, expressed in A

It is advised to feed the method with 10+ couples of matrices, depending on the quality of the measurements.

Tested on Win10, Unity 2019, Math.Net v4.5.

About

Generic hand eye calibration for Unity

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages