假设有一个相机的focal length 为fx1 在z1高度拍照 图片宽为w1
假设另一个相机的focal length 为fx2 在z2高度拍照 图片宽为w2
如何把他们拍的图片resize到同一个尺度下面呢,根据小孔成像原理
u
=
f
x
∗
(
x
/
z
)
u = f_x *(x / z)
u=fx∗(x/z)
我们实际是想两张图片,1m对应的pixel相同$ 即希望
f
x
1
/
z
1
=
f
x
2
/
z
2
(
p
i
x
e
l
/
m
)
fx1/z1 = fx2/z2 (pixel/m)
fx1/z1=fx2/z2(pixel/m)
原则上我们选择改变的是需要缩小的那个相机(放大会损失精度),所以判断 fx/z谁大,谁大就resize谁(缩小)。假设第一个相机的大。故求出第一个相机的
f
x
1
′
=
f
x
2
∗
z
1
/
z
2
fx1^{'} = fx2 * z1/z2
fx1′=fx2∗z1/z2
对应的width也需要改变,因为相机实际最大拍摄范围没有改变,即
u
m
a
x
=
f
x
1
∗
x
m
a
x
/
z
u
m
a
x
′
=
f
x
1
′
∗
x
m
a
x
/
z
w
i
d
t
h
′
=
u
m
a
x
′
=
f
x
1
/
f
x
1
′
∗
u
m
a
x
=
f
x
1
/
f
x
1
′
∗
w
i
d
t
h
u_{max } =fx1 * x_{max} / z \\ u_{max }^{'} =fx1^{'} * x_{max} / z \\ width^{'} = u_{max}^{'}= fx1/fx1^{'} * u_{max } = fx1/fx1^{'} * width
umax=fx1∗xmax/zumax′=fx1′∗xmax/zwidth′=umax′=fx1/fx1′∗umax=fx1/fx1′∗width