[英]Using ROS message classes outside of ROS
我有一个用Python编写的ROS节点,它捕获消息并将它们写入磁盘(例如使用pickle
)。 我想稍后在ROS之外的另一个Python脚本中使用这些文件,但我需要导入消息类。
那可能吗?
谢谢!
不幸的是,我认为只能在任何ROS依赖项之外导入消息文件。 例如,如果查看其中一个生成的消息类文件:
---/your_catkin_ws/devel/lib/python2.7/dist-packages/your_package/msg/_Message.py
您将看到它至少取决于您的消息中包含的genpy和其他消息类型。 基本消息是相同的(在/opt/ros/indigo/lib/python2.7/dist-packages/std_msgs/msg
)。
虽然你可以尝试复制最小数量的依赖项,直到它最终工作(!),它有点不优雅,可能会是一个脆弱的解决方案。
我相信最好的解决方案是将您的消息转换为通用的非ROS类型,然后将其存储在您的pickle中(基本上就是您已经在做的事情)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.