MATLAB Answers

Vision Toolbox Question: Is there a way to access the z-coordinate from the camera calibration process?

11 views (last 30 days)
Is there a way to access the z-coordinate from the camera calibration process? I wish to perform 3D vector math between calibration planes (i.e., the checkerboard planes shown when using showExtrinsics with plotCamera). The Calibration App shows a 3D plot of all the calibration checkerboards relative to the camera frame of reference (i.e., relative to the camera origin x,y,z = 0,0,0). Clearly, the Calibration App uses a z-coordinate to produce the plot. I would like to access the z-coordinate if available, or calculate it. Thanks for help with this question.

Accepted Answer

Dima Lisin
Dima Lisin on 2 Mar 2016
Hi Thomas,
In the checkerboard's coordinate system the points on the checkerboard all have z=0. If you want the checkerboard points in the camera's coordinate system, then you have to transform them. Let [Xb, Yb, 0] be a point on the checkerboard in the checkerboard's coordinates. The same point in the camera's coordinates would be
[Xc, Yc, Zc] = [Xb, Yb, 0] * R + t
where R and t are the extrinsics associated with that checkerboard. Note that we are using row vectors here.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!