利用ros3djs接收pointcloud2在web端显示

因项目需要,要将道路实时的点云流在经过算法处理后在web端显示出来。其中用到点云检测算法,然后发布相应的处理后的点云topic。在web端相应位置创建3Dview接收显示。
主要是用到 ros3djsrosbridge_servertf2_web_republisher

效果如下:(左侧为rviz显示效果,右侧为web端接收效果)

web端接收实时点云流并显示

视频地址:web端接收实时点云流并显示

1 创建工作空间

参考:ROS学习——1创建工作空间

2 依赖包下载

分别进这三者的github上下载相应的代码,ros3djstf2_web_republisher。对于rosbridge_server,只需要sudo apt-get install ros-melodic-rosbridge-suite
将上述文件夹解压至上面创建好的工作空间里的src文件夹下:

在这里插入图片描述

返回至catkin_ws,然后catkin_make

3 更改点云信息

打开pointcloud2.html进行修改:
在这里插入图片描述主要修改fixedFrame和topic(改为自己发布的点云参数):
在这里插入图片描述

4 启动

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
发布自己的点云topic:
在这里插入图片描述

5 显示效果

在这里插入图片描述

6 官网文档

http://robotwebtools.org/jsdoc/ros3djs/current/ROS3D.PointCloud2.html
http://wiki.ros.org/ros3djs

报错解决:

在这里插入图片描述打开该文件:/opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake

将96行set(_include_dirs "include;/usr/include;/usr/include/opencv")改为:set(_include_dirs "include;/usr/include;/usr/local/include/opencv")

在这里插入图片描述

在这里插入图片描述重新catkin_make

猜你喜欢

转载自blog.csdn.net/weixin_48994268/article/details/120478508