MATLAB Simulate 3D Camera: why is there no focal length (world units) attribute in the sensor model?

11 views (last 30 days)
In the 3D camera simulation ( - there is no specific focal length (mm) for the camera intrinsics. I'm working on feature tracking using the camera feed and I cannot estimate the 3D location of a point without knowing the focal length or the scaling factor (w) in (
It would also be great if MATLAB provides a DEM of the UAV scenarios - ground truth for many applications.
Please advise.

Answers (1)

Qu Cao
Qu Cao on 1 Jun 2022
Please take a look at this page:
If you know the size of the pixel in world units, you can convert focal length in world units (usually mm) to focal length in pixels.
Ram Bhaskara
Ram Bhaskara on 2 Jun 2022
Edited: Ram Bhaskara on 2 Jun 2022
Thanks for the reply, Qu!
For my analysis, I don't have depth info directly - but I'm computing the depth (approximately) from knowing my UAV altitude (say from GPS). If I have my feature's pixel coordinates [u, v] - I am aiming to compute the same feature coordinates in scene units. That's all I need - a vector from the optical center (not frame center) to the feature coordinates. The z-component of this vector is the focal length in mm.
P{camera frame} = [ (cx - u) * f / fx (cy - v) * f / fy f ]
From the intrinsics I devise in MATLAB simulate 3D camera, how do I get to this P (in the camera's reference frame)?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!