原文:无人驾驶汽车系统入门(二十六)——基于深度学习的实时激光雷达点云目标检测及ROS实现

1. 系统环境

  • Ubuntu16.04
  • ROS-Kinetic
  • Python 2.7

2. 安装

2.1 创建squeezeseg虚拟环境

conda create -n squeezeseg python=2.7
# 激活虚拟环境
source activate squeezeseg

注意:下面的操作都在虚拟环境中执行

2.2 安装依赖

pip install easydict==1.6
pip install joblib==0.10.3
pip install numpy==1.16.1
pip install Pillow==4.0.0
pip install tensorflow-gpu==1.0.0
pip install tensorflow==1.0.0
#因为我在后面运行的时候会报tensorflow出错,所以又安装了cpu版本的tensorflow

2.3 下载SqueezeSeg_Ros

SqueezeSeg_Ros源程序地址:https://github.com/AbangLZU/SqueezeSeg_Ros。
放在工作空间中编译。

2.4 运行:

由于直接执行:roslaunch squeezeseg_ros squeeze_seg_ros.launch
出现了下面两个错误:

第一个错误是
import tensorflow as tf
ImportError: No module named tensorflow
明明已经安装了tensorflow,却总是提醒不能导入tensorflow模块,导致节点不能正常启动。

第二个错误是
[ERROR] [1556797434.210039200]: PluginlibFactory: The plugin for class ‘rviz_plugin_selected_points_publisher/SelectedPointsPublisher’ failed to load. Error: According to the loaded plugin descriptions the class rviz_plugin_selected_points_publisher/SelectedPointsPublisher with base class type rviz::Tool does not exist. Declared types are jsk_rviz_plugin/CloseAll jsk_rviz_plugin/OpenAll jsk_rviz_plugin/OverlayPicker jsk_rviz_plugin/ScreenshotListener rviz/FocusCamera rviz/Interact rviz/Measure rviz/MoveCamera rviz/PublishPoint rviz/Select rviz/SetGoal rviz/SetInitialPose rviz_plugin_tutorials/PlantFlag
大概意思是Rviz的某个插件出现了问题,不能正常启动。

所以参考此博客先进行一些修改:

  1. 打开launch文件,将squeezeseg_ros节点以及Rviz的启动部分注释掉,然后执行:
roslaunch squeezeseg_ros squeeze_seg_ros.launch

此时数据的路径等配置会被写入。

  1. 进入srcipt文件夹,直接使用python2启动squeezeseg_ros_node.py文件:
cd ~/catkin_ws/src/SqueezeSeg_Ros/script
python squeezeseg_ros_node.py

得到如下图的情况,说明节点已经启动:

[INFO] [1614072451.492779]: Point cloud processed. Took 241.734000 ms.
[INFO] [1614072451.665434]: Point cloud processed. Took 172.866000 ms.
[INFO] [1614072451.840346]: Point cloud processed. Took 175.159000 ms.
[INFO] [1614072452.017152]: Point cloud processed. Took 177.005000 ms.
[INFO] [1614072452.194837]: Point cloud processed. Took 177.914000 ms.
[INFO] [1614072452.365629]: Point cloud processed. Took 171.038000 ms.
[INFO] [1614072452.559498]: Point cloud processed. Took 194.111000 ms.
[INFO] [1614072452.733044]: Point cloud processed. Took 173.809000 ms.
[INFO] [1614072452.904046]: Point cloud processed. Took 171.244000 ms.
[INFO] [1614072453.078510]: Point cloud processed. Took 174.690000 ms.
[INFO] [1614072453.254257]: Point cloud processed. Took 175.957000 ms.
[INFO] [1614072453.433785]: Point cloud processed. Took 179.744000 ms.
[INFO] [1614072453.621945]: Point cloud processed. Took 188.380000 ms.
[INFO] [1614072453.813024]: Point cloud processed. Took 191.308000 ms.
[INFO] [1614072453.986304]: Point cloud processed. Took 173.454000 ms.
[INFO] [1614072454.173566]: Point cloud processed. Took 187.464000 ms.
[INFO] [1614072454.356452]: Point cloud processed. Took 183.120000 ms.
[INFO] [1614072454.539483]: Point cloud processed. Took 183.268000 ms.
[INFO] [1614072454.728233]: Point cloud processed. Took 188.993000 ms.
[INFO] [1614072454.919899]: Point cloud processed. Took 191.853000 ms.
[INFO] [1614072455.140920]: Point cloud processed. Took 221.126000 ms.

2.5 打开Rviz进行查看:

使用add添加上述主题,类型为PointCloud2,固定坐标(Fixed Frame)设置为velodyne_link,讲Channel Name设置为label,即可得到识别分割图像:

参考:

  1. https://blog.csdn.net/AdamShan/article/details/83544089?spm=1001.2014.3001.5501#commentBox
  2. https://blog.csdn.net/weixin_44210881/article/details/89764881

Ubuntu16.04运行SqueezeSeg_Ros相关推荐

  1. Ubuntu16.04运行VoxelNetRos

    link 系统环境 Ubuntu16.04 ROS-Kinetic Python 3.5 安装 2.1 安装rviz插件 因为程序中使用了(BoundingBox, BoundingBoxArray) ...

  2. ubuntu16.04 运行SVO

    ####仅作为笔记 环境: ubuntu16.04 ROS 创建svo的工作空间 mkdir -p ~/svo_ws/src cd ~/svo_ws/src catkin_init_workspace ...

  3. ubuntu16.04 运行hdl_graph_slam

    ####仅作为笔记 环境: ubuntu16.04 OpenMP PCL 1.7 g2o suitesparse ##底下的是ros依赖 geodesy nmea_msgs pcl_ros ndt_o ...

  4. ubuntu16.04运行nite2的userviewer出错

    环境:ubuntu16.04+ros kinetic+kinect2.0 运行UserViewer出错: Failed to open device DeviceOpen using default: ...

  5. ubuntu16.04 运行dso问题梳理

    这个博客是唯一一个能够让我编译成功的博客,其他的博客,相同的问题,解决方案各不相同,非常繁杂: 前面的操作过程: cd ~/ros_ws/src/ git clone https://github.c ...

  6. Ubuntu16.04运行.run文件

    QT配置ROS环境,运行.run文件-参考链接: https://blog.csdn.net/have_fun_/article/details/88242536

  7. Ubuntu16.04运行ORB_SLAM2流程及出现问题总结

    一 配置ORB_SLAM2过程 先在官网上下载代码:https://github.com/raulmur/ORB_SLAM2 看readme 找個教程:https://blog.csdn.net/le ...

  8. ubuntu16.04运行PL-SVO

    ####仅作为笔记 安装的是不需要ROS的版本 环境: SVO MRPT Line descriptor(在第三方库里已包含,不需要单独安装) 照例贴出build.sh下内容: #其实就是对第三方库编 ...

  9. Ubuntu16.04系统运行VINS-Mono(安装、环境配置)

    Ubuntu16.04系统运行VINS-Mono 目录 一.Ubuntu16.04系统安装(基于VMware) 二.ROS Kinetic的安装 三.opencv3.3.1的安装 四.eigen3.3 ...

  10. python程序发布 ubuntu_在ubuntu16.04的虚拟环境中运行Python程序作为服务

    我正在尝试让一个Flask+SocketIO应用程序作为一个服务在ubuntu16.04上运行,在一个虚拟环境中.我的服务器每天凌晨3点重新启动(超出我的控制范围),所以我需要它在启动时自动启动.在 ...

最新文章

  1. python十八:尾调用与递归
  2. Bootstrap学习笔记-布局
  3. 关于vue中使用iconfont
  4. cv岗工作做什么_只会python能做什么工作
  5. Objective-C Fast Enumeration 的实现原理
  6. 在线JWT Token解析解码
  7. 力扣每日一刷 -两个数组的交集II
  8. .net学习笔记图片链接20060523
  9. Qgis 3.18 的安装步骤
  10. 目标检测的图像特征提取之(三)Haar特征
  11. 变分法,欧拉-拉格朗日方程推导
  12. word文档任意位置开始插入页码
  13. 关于网线水晶头的接法详解
  14. hive实现获取当前季度第一天
  15. 超好用的在线编程IDE——CS50
  16. python 如何匹配一撇字符_使用Python正则表达式解析斜杠和撇号
  17. 快乐星球计算机老师,《快乐星球Ⅴ》新电脑老师(下)
  18. http协议及apache配置
  19. 主力吸筹猛攻指标源码_主力吸筹猛攻指标源码_股市吸筹
  20. Word目录制作,添加目录自动跳转

热门文章

  1. [ERROR] [FATAL] InnoDB: Over 95 percent of the buffer pool is occupied by lock heaps or the adaptive
  2. ◮OpenGL-抗锯齿
  3. 机器学习的应用——关于正确应用机器学习
  4. jupyter notebook报错500 : Internal Server Error
  5. python中将一个numpy数组转为str,写入文件时会自动换行
  6. 常用html页面设计工具,网站前端开发常用工具大全-web设计师必备
  7. 计算机出现函数不正确的是,小编教你快速修复无法访问函数不正确的方法
  8. 网站服务器 80端口吗,你的服务器打开IIS80端口了吗?
  9. .NET的RulesEngine(规则引擎)使用
  10. shell while用法