我正在为rrt(快速探索随机树)编写代码,这是一种基于采样的运动规划算法。我在MATLAB中编写代码,但现在我用c ++编写代码。 我想知道如何用所有障碍物实时绘制机器人路径。 我想要的是:我想看到我的机器人穿越空间。所以基本上它是关于图形的。我正在尝试使用sfml但我遇到了问题。有些人建议使用opencv或opengl,但我认为它们不是易于使用。我正在寻找一个简单易用的库。 如果opencv或opengl是答案,那么请告诉我具体我需要在这些库中使用。我正在使用linux(ubuntu 11.10)
答案 0 :(得分:1)
您可能也希望使用内部matlab编译器直接从M代码生成独立应用程序。这样你就不必从头开始重写所有内容。
我曾多次使用以下链接来刷新我的记忆 http://technologyinterface.nmsu.edu/5_1/5_1f/5_1f.html
例如,如果您使用以下内容制作了M功能(链接示例):
function y=PolyValue(poly,x)
poly=[1 2 -1 4 -5];
x=[5, 6];
y=polyval(poly, x)
您可以使用命令
mcc -m PolyValue
编译程序。
然后,此命令将为您提供在更大的c ++程序中实现所需的文件。
它甚至应该支持Gui元素和图形。
答案 1 :(得分:1)
像http://www.ros.org/news/2011/01/open-motion-planning-library-ompl-released.html之类的东西 可能就是你要找的东西。
我曾在OpenCV中为一些图像识别项目工作,OpenGL用于渲染显示,以及您是否使用上面的库或自己渲染它实际上取决于显示需要多么复杂。问自己一些关于你正在考虑多少种不同障碍物情景的问题。障碍物和机器人是否有大量可能的形状?这个问题是否具有确定性(就机器人的运动和环境而言)?
就OpenGL和OpenCV而言,对于刚接触它们的人来说不容易使用,这种情况非常多,但选择使用C ++会使初学者的问题变得更加困难。正如另一位用户所提到的,包装Matlab代码而不是丢弃它可能是一个可行的选择。如果速度不是关键因素,即使在后台运行matlab引擎以通过C ++运行脚本也是可行的。有关详细信息,请参阅http://au.mathworks.com/help/matlab/matlab_external/introducing-matlab-engine.html。