Math 从可视大小指定速度
[问题] Q1:如何根据对象的视觉尺寸从摄像机图像序列中确定对象(平面)的速度Math 从可视大小指定速度,math,physics,Math,Physics,[问题] Q1:如何根据对象的视觉尺寸从摄像机图像序列中确定对象(平面)的速度 很少有相机图像 摄像机的高度和角度是已知的 [附注] 这是一个有趣但写得不好的问题(目前搁置)的重写,所以我可以回答它 原来的问题是 还有很多其他的方法,比如模糊分析等等 这个问题非常宽泛,所以我将只关注后面的数学/物理 垂直于摄影机轴的速度 图像显示了对象视觉尺寸h与视图距离l的相关性。距离越远的对象,其视觉尺寸越小。在两倍距离处有一半大小,因此我们可以这样写: l0=(h1/h0)*l1 l0=(h2/h
- 很少有相机图像
- 摄像机的高度和角度是已知的
- 这是一个有趣但写得不好的问题(目前搁置)的重写,所以我可以回答它
- 原来的问题是
- 还有很多其他的方法,比如模糊分析等等
h
与视图距离l
的相关性。距离越远的对象,其视觉尺寸越小。在两倍距离处有一半大小,因此我们可以这样写:
l0=(h1/h0)*l1
l0=(h2/h0)*l2
l1=(h0/h1)*l0
l1=(h2/h1)*l2
l2=(h0/h2)*l0
l2=(h1/h2)*l1
现在我们知道图像不是在同一时间拍摄的,所以如果我们假设速度是恒定的(对于我们测量的时间),那么图像0,1,2
是在t0,t1,t2
的时间拍摄的,所以对于恒定速度v
我们知道:
v=(l1-l0)/(t1-t0)
v=(l2-l1)/(t2-t1)
v=(l2-l0)/(t2-t0)
是相机和物体之间的相对速度v
t0、t1、t2是拍摄照片的时间
是相机和物体在时间l0、l1、l2
t0、t1、t2
是对象在时间h0、h1、h2
t0、t1、t2
t1-t0=1
t2-t1=1
t2-t0=2
这稍微简化了一些事情:
v=(l1-l0)
v=(l2-l1)
v=(l2-l0)/2
现在的问题是我们不知道物体的距离。上面的方程式并没有给出答案(至少我没有看到任何答案)。。。对于此任务,我们必须在场景中找到一些已知对象(etalone),并根据视觉距离h0
和对象已知大小h1
计算其实际距离z1
。注意这些h0,h1
不是上面的h0,h1
。。。这只是对这幅画的尊重
z1 = (h1/h0)*z0
这样我们可以在时间(l0,l1,l2)
中找到物体的真实距离,两个就足够了,速度也就简单了
v = (l1-l0)/(t1-t0)
这是垂直于相机轴的速度,所以如果你想要某个方向上的速度,那么只需通过向量的标量乘或sin将其投影到它上即可
俯仰
和滚转
也会对其产生很大影响,需要进行纠正
这个想法很简单,在场景中找到任何不同的物体,测量它随时间移动的视觉距离。应用相机透视图和已知的高度、俯仰
和滚动
将像素转换为地面单位[m]。透视图的方程和特性与前面的项目符号相同
v = dpos/dtime
你应该一次检查更多的物体,并将所有以不同方向/速度移动的物体排除在大多数物体之外,以避免测量相对于某些移动物体(如汽车)的速度对于相机,
Zfar
是无限大的,Znear
取决于相机光学元件和芯片。你们可以通过在已知距离拍摄已知物体的图像来校准它,并根据它计算你们所需要的一切当然,如果你没有固定的焦点,那么你就有麻烦了这个问题非常广泛,所以我将只关注后面的数学/物理
h
与视图距离l
的相关性。距离越远的对象,其视觉尺寸越小。在两倍距离处有一半大小,因此我们可以这样写:
l0=(h1/h0)*l1
l0=(h2/h0)*l2
l1=(h0/h1)*l0
l1=(h2/h1)*l2
l2=(h0/h2)*l0
l2=(h1/h2)*l1
现在我们知道图像不是在同一时间拍摄的,所以如果我们假设速度是恒定的(对于我们测量的时间),那么图像0,1,2
是在t0,t1,t2
的时间拍摄的,所以对于恒定速度v
我们知道:
v=(l1-l0)/(t1-t0)
v=(l2-l1)/(t2-t1)
v=(l2-l0)/(t2-t0)
是相机和物体之间的相对速度v
t0、t1、t2是拍摄照片的时间
是相机和物体在时间l0、l1、l2
t0、t1、t2
是对象在时间h0、h1、h2
t0、t1、t2
t1-t0=1
t2-t1=1
t2-t0=2
这稍微简化了一些事情:
v=(l1-l0)
v=(l2-l1)
v=(l2-l0)/2
现在的问题是我们不知道物体的距离。上面的方程式并没有给出答案(至少我没有看到任何答案)。。。对于此任务,我们必须在场景中找到一些已知对象(etalone),并根据视觉距离h0
和对象已知大小h1
计算其实际距离z1
。注意这些h0,h1
不是上面的h0,h1
。。。这只是对这幅画的尊重
z1 = (h1/h0)*z0
这样我们可以在时间(l0,l1,l2)
中找到物体的真实距离,两个就足够了,速度也就简单了
v = (l1-l0)/(t1-t0)
这是垂直于相机轴的速度,所以如果你想要某个方向上的速度,那么只需通过向量的标量乘或sin将其投影到它上即可
俯仰
和滚转
也会对其产生很大影响,需要进行纠正
这个想法很简单,在场景中找到任何不同的物体,测量它随时间移动的视觉距离。应用摄影机透视图和已知图像