tan(a / 2) = w / (2 * L) (a—水平视场角)
tan(b / 2) = h / (2 * L) (b—垂直视场角)
一般只用到水平视场角,其中,a:水平视场角 w:水平图像尺寸 L: 焦距
公式推导:
tan(a / 2) = w / (2 * L)
L = w / (2 * tan(a / 2))
a / 2 = arctan(w / (2 * L))
a = 2 * arctan(w / (2 * L))
举例:
通常查询sensor的datasheet可得到pixel size 及sensor输出的最大size;
如sensor gc5035: pixel size 1.12um, 输出最大size 2592x1944.
查询模组安装图,可以查到水平fov焦距 84.4,那么可以计算出焦距L为1.600f。
计算过程如下:
w = 2592 * 1.12 / 1000 = 2.903f
h = 1944 * 1.12 / 1000 = 2.177f
L = w / (2 * tan(a / 2)) = 2.903f / (2 * tan (84.4 / 2)) = 1.600f
以上3个数值,算法可能会用到。
注:如果是scale的分辨率,视场角不会变;如果是crop的分辨率,视场角就会变小。
网友评论