我需要计算摄像机的传感器宽度。我知道视角和焦距。以下是维基百科的公式:
angle of view = 2 x arctan(sensor width/(2xfocal length))
所以,让我们举一个例子:
70° = 2 x arctan(sensor width/7.2mm)
如何计算传感器宽度?
我需要这个用于自动计算此信息的应用程序。
谢谢!
答案 0 :(得分:0)
tan
与arctan
as described here相反。
所以你可以这样做:
X = a * arctan(Y / b)
X / a = arctan(Y / b)
tan(X / a) = Y / b
b * tan(X / a) = Y
因此,您的公式变为(a = 2
和b= 2 x focal
):
sensor width = 2 * focal * tan(angle / 2)
请注意,tan
的大多数实现都希望角度以弧度而不是度数表示。 (rad = deg * Pi / 180
,180度= Pi弧度)所以你的例子是:
sensor width = 2 * 7.2 * tan(70. * Pi / 180 / 2)
在Python中:
>>> 2 * 7.2 * math.tan(70. * 3.1415 / 360.)
10.082601928930876
您的传感器宽度为10.1mm