计算远离和靠近相机的移动物体的速度

3

我正在开发一款可以告诉移动物体速度的Android应用程序。我已经得到了速度计算技术,但是我面临一个问题,如何计算从相机拍摄的远或近物体的速度。

目前我正在使用VelocityTracker: http://developer.android.com/training/gestures/movement.html#velocity

并使用以下示例: http://android-er.blogspot.jp/2013/12/velocitytracker-track-velocity-of-touch.html

然后在我的计算中将像素/秒转换为公里/小时。

但是对于远处的物体,即使物体以很高的速度移动,它在设备屏幕上看起来也移动得更慢。或者如果物体非常靠近,则计算应该有所不同。我计划根据这种情况进行校准。您有任何想法如何解决此问题吗?

谢谢


什么问题?你遇到了哪些计算困难? - Beta
嗨,我需要你的帮助。我也在开发同样的应用程序,你能帮我吗?请@user968677。 - Hassan ALi
老问题了,但这是我的两分钱。据我所知,Android相机本身无法在没有“校准”之前检测深度。即使您进行了校准,它也不会非常准确。这就是为什么测距仪使用激光来跟踪距离的原因。此外,您提到正在使用VelocityTracker - 这用于跟踪手指在设备上移动的速度。根据我的经验,VelocityTracker并不是非常准确。 - ClassA
1个回答

0

虽然这是一篇旧帖子,但对于遇到同样问题的人来说仍然有用:

你需要估算被跟踪物体的距离d,通过三角测量来计算速度。

接下来,如果你知道场景中任何物体的距离D和尺寸L,你可以使用塞勒斯定理来计算速度:

L/D=vT/d
=> v=Ld/DT

小总结方案


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接