rosbag遍历数据时出现(unicode错误)该如何解决?
- 内容介绍
- 文章标签
- 相关推荐
本文共计498个文字,预计阅读时间需要2分钟。
主题:使用Python的rosbag包提取ROS系统记录的bag文件
前言:针对ROS系统记录的bag文件,可以使用Python的rosbag包进行提取和分析。以下是如何根据不同的起始时间和topic提取bag文件内容的简要步骤。
步骤:
1.导入rosbag包。
2.根据指定的起始时间和topic,使用rosbag命令行工具提取数据。
3.解析提取的数据,进行进一步分析或处理。
注意:
- 确保已安装rosbag包。- 提取过程中可能存在解码错误,需检查解码设置。原因:存在解码错误的原因可能是解码器配置不正确或数据损坏。应确保解码器与数据格式兼容,并检查数据文件完整性。
主题:
前言
针对ros系统记录的bag文件,可以使用python的rosbag包,按照不同起止时间和topic进行提取。
然而,有的topic可以使用rosbag读取,但是不能遍历,存在解码错误。原因应该是存在中文字符的注释, 这个可以在函数生成的temp.py中看到。
python提取bag文件时发生解码错误:
unicode error) 'utf-8' codec can't decode byte 0xcd in position 31: invalid continuation byte
编译环境:windows visual studio2019,pycharm也有如此问题,即使将file encoding 改成其它编码方式,如GB2312也不行
解决方法:使用linux环境下的python提取,即可避免此解码问题
本人使用ubuntu下的pycharm进行提取,即可正常进行。两种系统下pycharm的界面、用法完全一致。安装rosbag:
本人使用pip包管理器,直接安装rosbag是不行的,在网上搜了好久才看到一个靠谱的方法,安装命令如下:
·pip install rosbag --extra-index-url rospypi.github.io/simple/参考链接: python3 安装rosbag等package
其实主要是手动添加网址
注意有时国内网打不开这个网址,如下图所示。可以等一段时间,好使了再安装
本文共计498个文字,预计阅读时间需要2分钟。
主题:使用Python的rosbag包提取ROS系统记录的bag文件
前言:针对ROS系统记录的bag文件,可以使用Python的rosbag包进行提取和分析。以下是如何根据不同的起始时间和topic提取bag文件内容的简要步骤。
步骤:
1.导入rosbag包。
2.根据指定的起始时间和topic,使用rosbag命令行工具提取数据。
3.解析提取的数据,进行进一步分析或处理。
注意:
- 确保已安装rosbag包。- 提取过程中可能存在解码错误,需检查解码设置。原因:存在解码错误的原因可能是解码器配置不正确或数据损坏。应确保解码器与数据格式兼容,并检查数据文件完整性。
主题:
前言
针对ros系统记录的bag文件,可以使用python的rosbag包,按照不同起止时间和topic进行提取。
然而,有的topic可以使用rosbag读取,但是不能遍历,存在解码错误。原因应该是存在中文字符的注释, 这个可以在函数生成的temp.py中看到。
python提取bag文件时发生解码错误:
unicode error) 'utf-8' codec can't decode byte 0xcd in position 31: invalid continuation byte
编译环境:windows visual studio2019,pycharm也有如此问题,即使将file encoding 改成其它编码方式,如GB2312也不行
解决方法:使用linux环境下的python提取,即可避免此解码问题
本人使用ubuntu下的pycharm进行提取,即可正常进行。两种系统下pycharm的界面、用法完全一致。安装rosbag:
本人使用pip包管理器,直接安装rosbag是不行的,在网上搜了好久才看到一个靠谱的方法,安装命令如下:
·pip install rosbag --extra-index-url rospypi.github.io/simple/参考链接: python3 安装rosbag等package
其实主要是手动添加网址
注意有时国内网打不开这个网址,如下图所示。可以等一段时间,好使了再安装

