Autoware 跑 Demo(踩坑指南)
网上的博客和官方的教程,几乎都是一样的,但实际上跑不起来
Autoware 1.12学习整理–01–运行rosbag示例
Autoware入门学习(三)——Autoware软件功能使用介绍(1/3)及demo演示
ROSBAG Demo
网上的指导一般都是加载进 bag 后就可以直接跑
实际上遇到了很多问题,简要记录如下
UnicodeDecodeError
启动 runtime_manager
后疯狂报如下错误
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/wx-3.0-gtk3/wx/_core.py", line 16765, in <lambda>
lambda event: event.callable(*event.args, **event.kw) )
File "/usr/lib/python2.7/dist-packages/wx-3.0-gtk3/wx/_core.py", line 9207, in SetLabel
return _core_.Window_SetLabel(*args, **kwargs)
File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 1253-1254: invalid continuation byte
可以看到是 Python 的编码问题,直接将系统语言更改为英语解决
花屏问题
没错,就是下面这样的花屏,像是老式电视机
参考下面的博客解决
autoware 解决花屏重叠问题
解决autoware1.12出现花屏问题
Autoware1.12花屏问题解决方法
通过安装 wxPython 4.0.7
解决
下载wxPython-4.0.7.post2-cp27-cp27mu-linux_x86_64.whl
,ununtu18.04版本wxPython下载链接
安装wxPython-4.0.7.post2-cp27-cp27mu-linux_x86_64.whl
python2.7 -m pip install wxPython-4.0.7.post2-cp27-cp27mu-linux_x86_64.whl
修改runtime_manager_dialog.py
文件
在文件中添加import wx.adv
把文件中所有的wx.HyperlinkCtrl
替换成wx.adv.HyperlinkCtrl
(有5处)
把文件中所有的wx.EVT_HYPERLINK
替换成wx.adv.EVT_HYPERLINK
(有3处)
然后重新编译即可
Bag 包问题
首先是无法如下显示 bag 包的相关信息
其次终端提示如下错误
Exception in thread Thread-13:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/redwall/autoware/install/runtime_manager/lib/runtime_manager/runtime_manager_dialog.py", line 1342, in rosbag_info_hook_th
s = subprocess.check_output([ 'rosbag', 'info', v ], stderr=err).strip()
File "/usr/lib/python2.7/subprocess.py", line 223, in check_output
raise CalledProcessError(retcode, cmd, output=output)
CalledProcessError: Command '['rosbag', 'info', '/home/redwall/.autoware/sample_moriyama_150324.bag']' returned non-zero exit status 1
ChatGPT 是这样说的
OK,rosbag info
验证一下,提示如下,说明包可能本身有问题
redwall@redwall-G3-3500:~$ rosbag info .autoware/sample_moriyama_150324.bag
No handlers could be found for logger "rosout"
ERROR bag unindexed: .autoware/sample_moriyama_150324.bag. Run rosbag reindex.
尝试 play 一下,提示没有 librosbag.so 这个动态库,实际上是有的
redwall@redwall-G3-3500:~$ rosbag play Datasets/kitti_2011_09_26_drive_0084_synced.bag
No handlers could be found for logger "rosout"
/opt/ros/melodic/lib/rosbag/play: error while loading shared libraries: librosbag.so: cannot open shared object file: No such file or directory
参考解决
ROS问题——加载共享库/动态链接库文件出错(libroscpp.so), exit code 127
.bashrc 中有很多 export LD_LIBRARY_PATH=xxxx
这样的语句,后面的内容可能会覆盖前面的内容
echo $LD_LIBRARY_PATH
显示并没有添加到 /opt/ros/melodic/lib 这个 ROS 库
最好的方法是将所有的库添加到一个LD_LIBRARY_PATH
后面,用:分隔,表示附加的意思,如下
export LD_LIBRARY_PATH=/usr/local/lib:/opt/ros/melodic/lib:/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}:/usr/local/opencv-3.4.16/lib
同时包在用下述语句解压缩时没有正确解压,用系统自带的解压工具解压即可
tar zxfv sample_moriyama_150324.tar.gz
Points Map/TF 问题
按照博客中的操作,就是只有车辆模型,啥也没有,还有各种报错
主要是坐标系间的错误
No transform from [base_link] to [world]
No transform from [gps] to [world]
No transform from [velodyne] to [world]
参考解决
【Autoware】Autoware.ai配置和demo运行教程
Autoware自动驾驶平台(第二章):Autoware官方demo运行_ros2怎么运行autoware基本demo_waterfeeling的博客-程序员宅基地
https://github.com/autowarefoundation/autoware_ai/issues/884
按照下面的顺序去配置
效果如下,能够看到点云地图、矢量地图(车道线)、汽车模型、多线雷达信息和TF树