为什么在立体应用中要并联安装两个摄像头?

Why are two cameras mounted in paralle in stereo application?

市面上的立体摄像头,都是两个摄像头并排安装,有一定的位移 垂直于相机的光轴。我认为这个设置是理所当然的。我想到了一个主意 介意这是否有必要?如果两个相机不平行且焦距不同,相机校准 可以纠正差异。为什么要平行安装两个摄像头?我的猜测是两个相机可以有很大的重叠 地区。我说得对吗?

编辑: 在《学习 OpenCV》一书中,函数 cvStereoRectify 有一个名为 flags 的参数。书中对flag做了一些解释。

两个并排的摄像头似乎是人类视觉的合乎逻辑的交叉。复制我们的两只眼睛会得到最好的结果。这种方法的局限性在于镜头之间的距离有多近。

话虽这么说,但还有其他一些立体相机配置。詹姆斯卡梅隆(阿凡达的导演)很好地解释了这一点。 Avatar's Cameron-Pace 3D Camera Rig

编辑:在构思《阿凡达》时(~1994 年),ToF 和结构光技术尚不可用。

"Why are two cameras mounted in parallel?".

两个摄像头水平安装,并以'average human interocular distance'(瞳孔距离(PD)或瞳孔间距(IPD))为61至64mm,拍摄两张可同时拍摄的图像分别喂给每只眼睛并由大脑处理以重现相同的视图,就好像场景是由一个人而不是两个摄像机观察的一样。

将相机间隔得更远(巨人视觉)可以让您在远距离时获得更好的深度感,而在近距离时由于物体只能用一只眼睛完全可见而失去立体视觉。

同样,将相机间隔得非常近(Bug 的视觉)让您在很远的距离上没有深度感,但在非常近的距离上却有非常好的立体视觉。

当图像远远超出个人大脑习得的眼间距时,人脑处理图像的难度会降低,因此放置不正确的两幅图像可能会导致某些人眼睛疲劳和头痛。

三个或更多摄像头更好(使用适当的附加软件将数据处理成可以呈现给两只眼睛的东西)。

并排设置三个摄像头的成本相对较低,并且如果您只需将两个间距较近的摄像头之间的视频交换到两个间距最大的摄像头之间的视频,则不需要复杂的处理,从而在特写镜头和更多镜头之间切换时减少眼睛疲劳远处的镜头。

正在使用 4 个摄像头和图像处理完成工作,以提供具有更高深度分辨率的更好的 3D 图像:https://blog.elphel.com/2017/09/long-range-multi-view-stereo-camera-with-4-sensors/comment-page-1

通常使用两个摄像头,因为它是最便宜和最快的方法,使用大脑进行计算和由此产生的(预期的)人为缺陷,以简单地同时记录每只(平均 IPD)眼睛会看到什么。这不是最好的方法或结果,但它大约等于普通人的视力,因此对大多数(但不是全部)人来说已经足够了。

请注意,也可以使用具有旋转孔径的单个相机来欺骗大脑接受用一只眼睛观看的单个图像作为具有深度的图像。参见:Patent US 20040155975 A1 and Vision III Imaging.

查看 Parallax Scanning 的解释。

遮住一只眼睛观看这些视频:

https://www.youtube.com/watch?v=nlh-RYpnIMo

https://www.youtube.com/watch?v=IpbuX1KX2G0