Spe*_*d87 6 opencv computer-vision stereoscopy
我试图用两个摄像头估计立体声系统的深度.我使用的简单方程是:
Baseline*Focal
Depth = ----------------------
Disparity
Run Code Online (Sandbox Code Playgroud)
两个摄像头的视野不会改变允许的最大深度?它只改变可测量的最小深度?
在最高端,可测量的深度受到您使用的相机的分辨率的限制,这反映在视差中.随着深度变得越大,差异趋于零.具有更大的视野,在较低深度处有效地为零.因此,更大的视野会降低可测量的最大深度,但您可以通过使用更高分辨率的相机进行一定程度的补偿.
澄清一下:你应该注意(如果你做的正确),你可以测量像素差异,然后将其转换为米(或下面的毫米).完整的公式是:
Baseline * Focal length
Depth = ----------------------------
Pixel disparity * Pixel size
Run Code Online (Sandbox Code Playgroud)
假设您有以下设置:
Baseline (b) = 8 cm (80 mm)
Focal length (f) = 6.3 mm
Pixel size (p) = 14 um (0.014 mm)
Run Code Online (Sandbox Code Playgroud)
您可以测量的最小差异是1像素.使用已知数字,这意味着:
Depth = (80*6.3)/(1*0.014) = 36,000 mm = 36 m
Run Code Online (Sandbox Code Playgroud)
所以在这种情况下,这将是你的上限.请注意,在此范围内,您的测量结果非常不准确.下一个可能的差异(2个像素)发生在18米的深度,下一个(3个像素)发生在12米,等等.加倍你的基线会使范围加倍到72米.加倍你的焦距也会使你的射程增加一倍,但请注意,两者都会对短距离产生负面影响.您还可以通过减小像素大小来增加最大深度.
像素尺寸为0.014毫米时,你可能正在谈论CCD的水平分辨率为1024像素,CCD的宽度约为14.3毫米.如果你将同一区域的像素数加倍,你可以将最大范围加倍,而不会在近端失去任何东西(因为这些限制由基线和焦距决定,保持不变).
这是对立体视觉中深度测量的权衡的非常好的概述.而这篇文章在维基百科上对像素尺寸,CCD尺寸,焦距和视场之间的关系,一些好的信息.
| 归档时间: |
|
| 查看次数: |
3577 次 |
| 最近记录: |