7、octomap_sever安装及demo、自己的pcd点云数据测试,基于八叉树的三维的栅格地图构建

本文主要是介绍7、octomap_sever安装及demo、自己的pcd点云数据测试,基于八叉树的三维的栅格地图构建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

octomap_sever安装及demo、自己的pcd点云数据测试

基于八叉树的三维的栅格地图构建

文章开头先贴一下:高博关于八叉树的博客

1.编译octomap

新建一个目录用于拷贝octomap代码。 如果没有git请安装git,然后拷贝代码:

sudo apt-get install gitgit clone https://github.com/OctoMap/octomap

上述的git会把代码拷贝到当前目录/octomap下。进入该目录,参照README.md进行安装。编译方式和普通的cmake程序一样:

  mkdir buildcd buildcmake ..make 

octomap的代码主要含两个模块:本身的octomap和可视化工具octovis。octovis依赖于qt4和qglviewer,所以如果你没有装这两个依赖,请安装它们:

sudo apt-get install libqt4-dev qt4-qmake libqglviewer-dev

2、使用octovis查看示例地图

在下载的代码中有一个demo地图,我们可以一起看一下,在octomap下打开终端:

bin/octovis octomap/share/data/geb079.bt

octovis会打开这个地图并显示,可以在图上放大缩小,旋转,右面的数字可以调整分辨率的大小。它的UI是长这样的,应该能看出这是一层楼的扫描图。会有如图点结果:
在这里插入图片描述
demo结束。

3、建立自己的pcd的地图,octovis显示:

下载高博源码:

https://github.com/gaoxiang12/octomap_tutor

在data目录下将sample.pcd 删掉,把自己的pcd文件改名字为sample.pcd防止到这里来代替它。
在下载的octomap_tutor文件下(也可能是octomap_tutor——master)编译:

  mkdir buildcd buildcmake ..make 

在编译之后,它会产生一个可执行文件,叫做pcd2octomap,放在代码根目录的bin/文件夹下。你可以在代码根目录下这样调:

bin/pcd2octomap data/sample.pcd data/sample.bt
//不会直接出现地图,需要调用,继续往下看

这句命令的意思是将data/sample.pcd转化为data/sample.bt地图,在data下可能会生成一个.bt 或者是.ot文件,也可能都有。
你可以采用下面点命令比较下pcd点云与octomap的区别:

pcl_viewer data/sample.pcd
//使用PCL原始点云的可视化
octovis data/sample.bt
//使用octovis实现构建的sample.ot(.bt)地图的可视化。

pcl_viewer data/sample.pcd结果:
在这里插入图片描述
octovis data/sample.bt结果:
在这里插入图片描述

至此,成功!如果还需要加入颜色玩花活,可以跟着高博继续操作下去!
欢迎关注私信一起学习,加油!

这篇关于7、octomap_sever安装及demo、自己的pcd点云数据测试,基于八叉树的三维的栅格地图构建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761077

相关文章

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Python利用PySpark和Kafka实现流处理引擎构建指南

《Python利用PySpark和Kafka实现流处理引擎构建指南》本文将深入解剖基于Python的实时处理黄金组合:Kafka(分布式消息队列)与PySpark(分布式计算引擎)的化学反应,并构建一... 目录引言:数据洪流时代的生存法则第一章 Kafka:数据世界的中央神经系统消息引擎核心设计哲学高吞吐

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

Python利用GeoPandas打造一个交互式中国地图选择器

《Python利用GeoPandas打造一个交互式中国地图选择器》在数据分析和可视化领域,地图是展示地理信息的强大工具,被将使用Python、wxPython和GeoPandas构建的交互式中国地图行... 目录技术栈概览代码结构分析1. __init__ 方法:初始化与状态管理2. init_ui 方法:

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据