这是我在这里的第一篇文章,大家好。
我正在从事一个项目,该项目涉及用 c++ 或 python 编写一个程序,该程序将检测障碍物并将用于 AR.Drone 2.0。但是,我不知道我应该采取哪种方法。
最初,我被建议使用 opencv 和光流。我找到了一些关于它的视频和论文,一种方法是:将 AR.Drone 相机的每一帧划分为 2(左/右侧)或 4(另外是上下),并计算每个部分的光流。然后,向光流较少的方向飞行。
但是我对此有一些疑问:
1)我应该使用哪种光流计算方法?我知道在 opencv 中提供了计算密集或稀疏光流的方法。在这个应用程序中我应该选择哪一个?密集的光流会不会太慢而无法满足实时要求?
2)我猜当无人机左右或上下移动时,我会得到一些由无人机移动引起的“假”矢量,而不是因为迫在眉睫的障碍物。如何防止这种情况?
另一个解决方案告诉我这里显示的一种方法(描述中的论文链接)和实现它的人github 链接但是作者承认他“从来没有让障碍物检测在无人机上正常工作”。
有人告诉我的另一个选择是将实感摄像头连接到无人机上,并以某种方式使用它提取有关障碍物的信息。
所以,我的问题是——我应该走哪条路?或者是否有其他方法可以适用于我描述的应用程序并且相对容易实现?
提前感谢您的每一个回复。