OpenCV Q&A Forum - RSS feedhttp://answers.opencv.org/questions/OpenCV answersenCopyright <a href="http://www.opencv.org">OpenCV foundation</a>, 2012-2018.Wed, 30 May 2018 03:52:52 -0500Improve accuracy about calculation of transformationhttp://answers.opencv.org/question/192592/improve-accuracy-about-calculation-of-transformation/ I'm trying to get a rigid transformation from a model body to a camera center(The model was binded on the camera.So the transformation between them is rigid.In fact,it's a OptiTrack model binded on a Kinect v1).The model body defined a coordinate system called `BODY`.The camera defined a coordinate system called `CAM`.The aruco marker defined a coordinate system called `MARKER`.
The OptiTrack SDK give me the high precision transformation from `BODY` to `MARKER`,marked as `tf_b2m`.I'm using opencv `solvePnP` to get the transformation from `MARKER` to `CAM`,marked as `tf_m2c`.So i could get the transformation from `BODY` to `CAM` `tf_b2c=tf_m2c*tf_b2m`.
Theoretically,the `tf_b2c` should be a constant transformation.But i get about `(+-10mm,+-5mm,+-2mm)` in translation vector,`(+-5 degree,+-1 degree,+-0.5 degree)` in rotation euler angle.
Now i think the such big error because of `solvePnP` or `camera calibration`.I'm using Kinect v1 with resolution `640x480`.And i'm using the opencv 3.4.0 to calibrate the Kinect several times and get stable intrinsic parameters.
Please give some help about improve accuracy of camera calibration or solvePnP.
And any idea is appreciated.
Thanks a lot!zdczdccWed, 30 May 2018 03:52:52 -0500http://answers.opencv.org/question/192592/