我正在尝试从 Python 3 读取 rosbag 文件。
我安装了 ROS2 (Eloquent Elusor),它应该支持 Python 3。
当我跑步时
import rosbag
bag = rosbag.Bag('test.bag')
从 Python 2.7 开始,它可以工作。
当我在 Python 3 中尝试相同的操作时,我得到:
ModuleNotFoundError: No module named 'rosbag'
我也尝试过类似的东西: sudo apt install python-rosbag
, sudo apt install python3-rospkg
和 pip3 install rospkg
,但它们没有帮助。
我应该怎么做才能从 Python 3 打开 rosbag 文件?
[编辑]
这是调用 pip3 install rospkg
后的输出:
Requirement already satisfied: rospkg in ./rosbag-env/lib/python3.6/site-packages
Requirement already satisfied: catkin-pkg in ./rosbag-env/lib/python3.6/site-packages (from rospkg)
Requirement already satisfied: distro in ./rosbag-env/lib/python3.6/site-packages (from rospkg)
Requirement already satisfied: PyYAML in ./rosbag-env/lib/python3.6/site-packages (from rospkg)
Requirement already satisfied: pyparsing in ./rosbag-env/lib/python3.6/site-packages (from catkin-pkg->rospkg)
Requirement already satisfied: python-dateutil in ./rosbag-env/lib/python3.6/site-packages (from catkin-pkg->rospkg)
Requirement already satisfied: docutils in ./rosbag-env/lib/python3.6/site-packages (from catkin-pkg->rospkg)
Requirement already satisfied: six>=1.5 in ./rosbag-env/lib/python3.6/site-packages (from python-dateutil->catkin-pkg->rospkg)
原文由 Lovro 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用
bagpy
包在 Python 中读取 .bag 文件。可以使用pip安装简要文档位于 https://jmscslgroup.github.io/bagpy/
以下是示例代码片段: