我正在尝试计算镜头的焦距(我有4种不同的镜头,我称之为镜头1,2,3,4)。我知道我正在使用的相机的传感器尺寸(我正在使用2个不同的相机),我知道物体宽度,我知道工作距离。
我正在使用以下公式:
f =焦距=(工作距离*传感器宽度)/(对象 宽度+传感器宽度)
我也使用了相同的公式,稍加改动:
f' =焦距=(工作距离*传感器宽度)/对象 宽度
我的相机的传感器尺寸如下:
型号:134MCU - 1/3“ - 3,52 mm * 4.78 mm
型号:130CU - 1/4“ - 2,75 mm * 3,64 mm
问题是,我用已知工作距离的两个相机拍了几张照片,然后我测量了图像宽度(我在图像场景中放了一个标尺)。之后,我使用给定的公式计算了 f 和 f' 。在计算了他的焦距之后,我想出了几个观察结果,我认为这些观察结果是不一致的。观察结果如下:
我有8种不同的成像设置,因为我有4个镜头和2个相机。使用134MCU拍摄的图像计算的 f , f' 值与使用130CU拍摄的图像不同镜头1和镜头2.镜头3和镜头4的计算值相同。为什么会发生这种情况?
当我与镜头提供商交谈时,他们告诉我镜头1,2,3,4的焦距分别为2.1毫米,2.5毫米,2.8毫米和3.6毫米。那么,为什么我的计算值不符合这些?我的计算有什么问题吗?
我使用的图像可以在here中找到。如果有人能提供帮助,我将非常感激。
此致
GüneyKayım
答案 0 :(得分:2)
我刚下载了您发布的图片,答案就是盯着我们。
您使用的公式是假设每条光线从物体到传感器的直线传播。实际上,这些广角镜头具有相当复杂的多个表面,并且当光线穿过“堆叠”时,光线会多次改变方向。结果,朝向边缘存在显着的扭曲。标尺上的线条高度朝向边缘变小 - “完美的针孔相机”将使它们保持完全比例。
很难想出一个能够正确解释这种失真的方程 - 通常是摄像机的测量应用(人们真正关心这些东西)将在感兴趣的焦距处进行几何校准以校正它。
所以你的问题的答案“我的计算有什么问题吗?”是这样的:“是的,有一些错误 - 你的计算是一个理想的系统。你没有一个理想的系统。”
编辑我想到你可以通过使用“更小的传感器”来做得更好:
(number of pixels between markers / number of pixels across sensor) * sensor width
通过使用可变数量的像素(与标尺上的确切分割数匹配),您可以限制估算/插值的数量。我认为这将解决大部分失真问题,并为您提供与制造商数据一致的结果。
答案 1 :(得分:0)
你的计算假设一个理想的针孔系统,你显然没有这里。您的广角镜头表现出极端的扭曲。尽量将测量值限制在光学系统的中心,这似乎没有失真。您应该获得更符合制造商指定焦距的结果。
编辑: 弗洛里斯上面说的......