51 #include <visp3/core/vpDebug.h>
52 #include <visp3/core/vpExponentialMap.h>
53 #include <visp3/core/vpIoTools.h>
54 #include <visp3/io/vpParseArgv.h>
55 #include <visp3/vision/vpHandEyeCalibration.h>
62 const unsigned int N = 6;
64 std::vector<vpHomogeneousMatrix> cMo(N);
68 std::vector<vpHomogeneousMatrix> wMe(N);
81 std::cout <<
"Simulated hand-eye transformation: eMc " << std::endl;
82 std::cout << eMc << std::endl;
87 for (
unsigned int i = 0; i < N; i++) {
92 wMe[0].buildFrom(0, 0, 0, 0, 0, 0);
110 cMo[i] = cMc.
inverse() * cMo[i - 1];
111 wMe[i] = wMe[i - 1] * eMc * cMc * eMc.
inverse();
117 for (
unsigned int i = 0; i < N; i++) {
119 wMo = wMe[i] * eMc * cMo[i];
120 std::cout << std::endl <<
"wMo[" << i <<
"] " << std::endl;
121 std::cout << wMo << std::endl;
122 std::cout <<
"cMo[" << i <<
"] " << std::endl;
123 std::cout << cMo[i] << std::endl;
124 std::cout <<
"wMe[" << i <<
"] " << std::endl;
125 std::cout << wMe[i] << std::endl;
138 std::cout << std::endl <<
"Output: hand-eye calibration result: eMc estimated " << std::endl;
139 std::cout << eMc << std::endl;
145 std::cout <<
"Catch an exception: " << e << std::endl;