Ask Your Question

Solvepnp for fisheye

asked 2019-02-10 19:22:19 -0600

sverma gravatar image

updated 2019-02-10 20:02:18 -0600


I was following a page to use solvepnp with a fisheye model. However, the answer suggests using the same camera matrix for the last input of undistortPoints function. This last input corresponds to the camera matrix in the new or rectified frame. How can we consider this matrix to be the same as the original camera matrix? Also, how can we use the rvec and tvec would correspond to undistorted corner points. Will this be the same as the rvec and tvec for the originally distorted image?


edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2019-08-14 01:24:21 -0600

V gravatar image

undistortPoints unapplies the first camera matrix and applies the second camera matrix. If the same camera matrix is used, that means the camera view is the same, except distortion is removed at that view. rvec and tvec relate the undistorted 2D camera coordinates to 3D world coordinates. You can't use rvec and tvec for a distorted image, but the rvec/tvec solution you get from solvePnP on rectified coordinates is meant to be the same as the solution from calibrateCamera, at least under ideal conditions.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2019-02-10 19:22:19 -0600

Seen: 887 times

Last updated: Aug 14 '19