What should be the distance between the two cameras?

28 次查看(过去 30 天)
HI
I have 2 separate cameras
What should be the distance between the two cameras for stereo vision?
  1 个评论
Julius Muschaweck
Julius Muschaweck 2021-9-12
At what distance from the camera are the objects you want to view in 3D?
And what is the field size of the cameras (the angle between the optical axis and the corner of the field of view?

请先登录,再进行评论。

回答(2 个)

Julius Muschaweck
Julius Muschaweck 2021-9-13
With a stereo vision camera pair, intended to create pairs of images for 3D vision, the key quantity is the "stereo angle": The angle between the two cameras as seen from the object you're imaging. Taking @Dave B's number of 63 mm, that angle would be 100 mrad = 5.7° when the object is 630mm away from the cameras. With the same camera separation, a more distant object is seen with a smaller stereo angle, and the 3D impression is less strong.
So, if you take a picture of a scene, and you want to present the result to a human using a 3D monitor, aiming for a realistic result, 63 mm is an excellent starting point. Larger camera separation creates a stronger 3D impression, which may look unnatural. For professional video (like shooting a movie), the cameras and lenses are way too big to put them 63 mm apart, and the two big cameras are then mounted on a beam splitter to make smaller camera separation possible.
However, when magnification comes into play, things change. Typical binoculars have a lateral shift of the (parallel) optical axes of eye and viewing line. Binocular makers choose to set the viewing lines further apart, precisely to create good 3D impression when looking at distant objects. If you use cameras with very long focal length tele lenses, do it like the binocular makers. On the other hand, if you look at small objects with small cameras (e.g. cell phone camera modules) from a very short distance, then the cameras must be much closer to each other. This is what 3D stereo digital surgery microscopes do: They look at the human tissue from about 200 mm, with a distance of about 30 mm between the lens apertures, which corresponds to looking with your eyes at an object about 450 mm away, like you would when you work with your hands without optics in between.
In my experience, a viewing angle af 5° to 8° is a good starting point for such 3D images.
However, when stereo cameras are used for technical purposes (3D measurements), I agree with @Walter Roberson : The separation may be much larger.

Dave B
Dave B 2021-9-12
This isn't a very MATLAB-y answer, but the lenses in stereo cameras typically try to replicate the distance between the eyes (according to wikipedia).
The average interocular distance for an adult is about 63mm: https://www.allaboutvision.com/eye-care/measure-pupillary-distance.
  2 个评论
Walter Roberson
Walter Roberson 2021-9-12
There are some situations where you want a significantly greater separation, especially for tasks that involve reconstructing volumes or surface features from stereo.
Walter Roberson
Walter Roberson 2021-9-13
For example, if you wanted to be able to see how the right face of the top of the two blocks is cut, you would need a wider separation than normal (and you might need extra cameras if you wanted to be able to reconstruct the objects without ambiguity.)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Camera Calibration 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by