栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

基于VoxelNet的激光雷达点云车辆检测及ROS实现复现时遇到的问题及对应解决方法

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

基于VoxelNet的激光雷达点云车辆检测及ROS实现复现时遇到的问题及对应解决方法

基于VoxelNet的激光雷达点云车辆检测及ROS实现复现时遇到的问题及对应解决方法

前言

问题1:提示未安装shapely、numba、easydict、jsk package等依赖项问题2:Ubuntu18报错ValueError: list.remove(x): x not in list问题3:报错ModuleNotFoundError: No module named 'utils.box_overlaps'问题4:选择by display type添加BoundBoxArray之后没有3D框显示

前言

这里记录一下在阅读站内文章《无人驾驶汽车系统入门(二十八)——基于VoxelNet的激光雷达点云车辆检测及ROS实现》时遇到的问题及对应的解决方法。
  值得一提的是,本文在复现过程中使用anaconda3预先安装python3.7.3、cuda10.0、cudnn7.5.4、TensorFlow1.8.0以及opencv3.如果不使用anaconda安装python3或者使用python2的话,本文记录的错误解决方案可能不适用。本文默认TensorFlow、OpenCV和ROS已安装好。

问题1:提示未安装shapely、numba、easydict、jsk package等依赖项

对于Ubuntu18版本,运行以下程序进行安装:

sudo pip install shapely
sudo pip install numba
sudo pip install easydict
sudo apt-get install ros-melodic-jsk-recognition-msgs 
sudo apt-get install ros-melodic-jsk-rqt-plugins 
sudo apt-get install ros-melodic-jsk-visualization

对于Ubuntu16版本,运行以下程序进行安装:

sudo pip install shapely
sudo pip install numba
sudo pip install easydict
sudo apt-get install ros-kinetic-jsk-recognition-msgs 
sudo apt-get install ros-kinetic-jsk-rqt-plugins 
sudo apt-get install ros-kinetic-jsk-visualization
问题2:Ubuntu18报错ValueError: list.remove(x): x not in list

错误代码为

Traceback (most recent call last):
  File "/home/voxelnet_ws/src/voxelnetros/script/voxelnet_ros.py", line 20, in 
    from model import RPN3D
  File "/home/voxelnet_ws/src/voxelnetrosscript/../voxelnet/model/__init__.py", line 12, in 
    from model.model import *
  File "/home/voxelnet_ws/src/voxelnetros/script/../voxelnet/model/model.py", line 6, in 
    sys.path.remove('/opt/ros/knitic/lib/python2.7/dist-packages')
ValueError: list.remove(x): x not in list

问题主要出在上文代码倒数第二行

sys.path.remove('/opt/ros/knitic/lib/python2.7/dist-packages')

在使用Ubuntu18时,提到的路径应为

/opt/ros/melodic/lib/python2.7/dist-packages

原因在于ros目录里面Ubuntu16对应knitic,Ubuntu18对应melodic。Ubuntu20对应noetic可能也会存在类似问题,但本文没有验证。
修改方法为修改VoxelNetRos/voxelnet/model/model.py的代码,第8行

sys.path.remove('/opt/ros/knitic/lib/python2.7/dist-packages')

改为

sys.path.remove('/opt/ros/melodic/lib/python2.7/dist-packages')
问题3:报错ModuleNotFoundError: No module named ‘utils.box_overlaps’

错误代码为

Traceback (most recent call last):
  File "voxelnet_ros.py", line 19, in 
    from model import RPN3D
  File "../voxelnet/model/__init__.py", line 12, in 
    from model.model import *
  File "../voxelnet/model/model.py", line 11, in 
    from utils import *
  File "../voxelnet/utils/__init__.py", line 10, in 
    from utils.box_overlaps import *
ModuleNotFoundError: No module named 'utils.box_overlaps'

问题出在程序无法导入pyc文件,解决方法为修改VoxelNetRos/script/voxelnet_ros.py的代码,在开头import部分加入两行代码

import pyximport
pyximport.install()

重新运行

python3 voxelnet_ros.py & python3 pub_kitti_point_cloud.py

问题解决。

问题4:选择by display type添加BoundBoxArray之后没有3D框显示

解决方法:在BoundBoxArray下拉菜单里,关联对应的topic名称

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/754255.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号