【发布时间】:2013-08-14 12:46:23
【问题描述】:
我正在尝试计算镜头的焦距(我有 4 个不同的镜头,我将它们称为镜头 1、2、3、4)。我知道我正在使用的相机的传感器尺寸(我正在使用 2 个不同的相机),我知道对象的宽度,并且我知道工作距离。
我正在使用以下公式:
f = 焦距宽度=(工作距离*传感器宽度)/(物体 宽度 + 传感器宽度)
我也使用了相同的公式,稍作改动:
f' = 焦距宽度 =(工作距离 * 传感器宽度)/物体 宽度
我的相机的传感器尺寸如下:
型号:134MCU - 1/3" - 3,52 mm * 4,78 mm
型号:130CU - 1/4" - 2,75 毫米 * 3,64 毫米
这就是问题所在,我用两个相机从已知的工作距离拍摄了几张照片,并测量了图像宽度(我在图像场景中放置了一把尺子)。之后,我使用给定的公式计算了 f 和 f'。在计算焦距后,我提出了几个观察结果,我认为这些观察结果不一致。观察结果如下:
- 随着工作距离的增加,每个镜头的计算焦距会收敛到某个值。我期望为每个工作距离计算相同的 f、f' 值。为什么会这样?是否对工作距离有任何依赖性,或对工作距离有任何限制(例如,对于焦距 f mm 工作距离不能小于 n 的镜头)?
-
我有 8 种不同的成像设置,因为我有 4 个镜头和 2 个相机。使用 134MCU 拍摄的图像计算的 f、f' 值与使用 130CU 拍摄的图像不同镜头 1 和镜头 2。镜头 3 和 4 的计算值相同。为什么会发生这种情况?
- 使用 130CU 计算的 lens 1 值约为 1.6 mm。
- 使用 130CU 计算的 lens 2 值约为 2.4 mm。
- 使用 130CU 计算的 lens 3 值约为 2.8 mm。
- 使用130CU计算出的lens 4值约为3.6 mm。
- 使用 134MCU 计算出的 lens 1 值约为 1.4 mm。
- 使用 134MCU 计算的 lens 2 值约为 2.2 mm。
- 使用134MCU计算出的lens 3值约为2.8 mm。
- 使用134MCU计算出的lens 4值约为3.6 mm。
当我与镜头供应商交谈时,他们告诉我镜头 1、2、3、4 的焦距分别为 2.1 毫米、2.5 毫米、2.8 毫米和 3.6 毫米。那么,为什么我的计算值与这些不匹配?我的计算有什么问题吗?
我使用的图片可以在here 中找到。如果有人能提供帮助,我将不胜感激。
问候,
居内·凯伊姆
【问题讨论】:
-
什么叫“工作距离”?到传感器表面,还是到镜头中心?很难相信您可以在 1/3" 传感器上获得 1.6 mm 的焦距 - 您会在边缘获得巨大的失真。请记住,“现实世界的光学”并不完全遵循“近轴公式” "。光不会直线穿过光学元件。
-
“工作距离”是指物体和镜头之间的距离。实际上,边缘的扭曲是巨大的。我相信我的提供者告诉我的焦距值是正确的,但我不知道为什么我不能计算它。可能是因为镜头(2.1 毫米和 2.5 毫米)格式不适合 1/3" 和 1/4" 传感器吗?
-
我认为你完全正确。请参阅我的更新答案。
-
我的供应商说他们现在有更好的镜头。当我查看他发送的图像时,我可以看到大部分失真都消失了,但图像宽度相同。我猜这与您的想法不符?还是我错了? dl.dropboxusercontent.com/u/14588321/distortion.zip
-
distortion和focus之间存在差异。原始图像在边缘附近既失真又失焦。在您发布的新图像中,图像的边缘显然更加清晰,但失真是相同的(直线变为弯曲)。理想的(“针孔”)投影会使直线保持直线 - 这就是您的公式所期望的。朝向中心,这是“更真实的”。
标签: camera