What is the units of the coordinates in camera frame by using matlab's camera calibration toolbox? Say I transform some points in pixels to camera's frame, what are the units? Is there some possible way of knowing?
I found this similar question , but no definite answer.
Can you please clarify how exactly you are transforming those points?
The pin-hole camera model looks like this:
w*[x,y,1] = [X,Y,Z,1]*[R;t]*K
[X,Y,Z]
are the world coordinates in world units (eg millimeters), and [x,y]
are the image coordinates in pixels. K
is the matrix of camera intrinsics, and R
and t
are the camera extrinsics. w
is an arbitrary scale factor.
If you take a world point [X,Y,Z,1]
and multiply it by [R;t]
, then you get a point in a "camera's coordinate system", where the origin is at the focal point, and the units are the same as in your world coordinates (eg millimeters).
If you take a point in the image [x,y,1]
and multiply it by the inverse of K
, then you get a point in "normalized image coordinates", where the origin is at the optical center, and the axis have no units. This happens because you are dividing x
and y
in pixels by the focal length fx
and fy
, which is also in pixels. So pixels cancel out.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.