前言

博主本来是想自己将生成的激光数据和ros中的地图构建工具生成地图的,结果搜了一下github发现这项工作已经被大牛们写好并且打包上传了,可以只利用激光数据不需要里程计数据来构建地图,不过还是把过程写一下,mark一下。

准备

  1.  ros,openni的准备就参考前文吧~
  2.  安装hector_slam,最简单的方式是直接apt-get  
     sudo apt-get install ros-indigo-hector-slam
     当然你可以从github上下载源码编译一下:hector_slam github.网站上还有ros wiki的介绍链接大家可以去学习一下
  3.  下载hector_slam_example:下载地址,编译好之后,记住需要将这个文件加入ros包中  
     ROS_PACKAGE_PATH=/home/cxz/projects/hector_slam_example:$ROS_PACKAGE_PATH 
     当然路径改成你自己的路径。
  4.  Install the dependency packages:
     rosdep install hector_slam_example 
  5.  然后就是喜闻乐见的roslaunch了:
     roslaunch hector_slam_example hector_openni.launch

结果

只需要移动摄像头就可以去构建地图了,当然这里面用的生成模拟极光的方法是depthimage_to_laserscan并不是博主前文提到的pointcloud_to_laserscan,代码的方法速度更快但是要求摄像头要相对稳定,并且尽量水平放置,大家最好固定好再去生成地图。
无图无真相~

ps:这种方法没有使用里程计来矫正激光数据,所以误差会比较大,而且稳定性也不强,可以作为一种测试方法,不过真正用到机器人上还是要跟其他数据融合一下才能更精准。


后面会有更精准的地图构建的敬请期待

利用深度摄像头生成仿激光数据并构建地图相关推荐

  1. 深度学习数据驱动_利用深度学习实现手绘数据可视化的生成

    前一段时间,我开发了Sketchify, 该工具可以把任何以SVG为渲染技术的可视化转化为手绘风格.(参考手绘风格的数据可视化实现 Sketchify) 那么问题来了,很多的chart是以Canvas ...

  2. 利用深度学习实现手绘数据可视化的生成

    个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 前一段时间,我开发了Sketchify, 该工具可以把任何以SVG为渲染技术的可视化转化为手绘风格.(参考手绘风格的数据可视化实现 ...

  3. 实战技术:利用深度学习实现手绘数据可视化的生成

    个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈 前一段时间,我开发了Sketchify, 该工具可以把任何以SVG为渲染技术的可视化转化为手绘风格.(参考手绘风格的数据可视化实现 ...

  4. 【干货】Entity Embeddings : 利用深度学习训练结构化数据的实体嵌入

    [导读]本文是数据科学家Rutger Ruizendaal撰写的一篇技术博客,文章提出深度学习在非结构数据中有不错的表现,当前通过实体嵌入也可以使之在结构化数据中大放异彩.具体讲解了如何利用深度学习训 ...

  5. MySQL利用存储过程自动生成千万条数据

    文章目录 ​前言 ​一.实现思路 ​二.实现步骤 ​1.创建数据库 ​2.创建存储表和内存表 ​3.创建所需函数 ​4.创建存储过程 ​5.调用存储过程插入数据 ​6.统计数据库 ​ 拓展 ​总结 前 ...

  6. 利用深度学习生成数据的时间序列预测(Matlab代码实现)

         目录

  7. python 转换深度摄像头获取的字节流数据为16bitPNG图像

    import numpy as np import struct import matplotlib.pyplot as pltfile = open(r"二进制文件目录", &q ...

  8. 激光点云构建地图(二)手动标注点云地图

    主要依据教程 Autoware 矢量地图标注(Autoware Maptool插件) 环境配置 Unity3d + Autoware Map Toolbox插件 1.下载安装Unity 2.安装Aut ...

  9. GAN(生成对抗网络)在合成时间序列数据中的应用(第一部分——利用GAN生成合成(synthetic)数据)

    (本文基本是对Jasen 的<Machine Learning for Algorithmic Trading>第二版的第21章进行翻译.改写和复现,并用于我们的实际情况) 1. 准备阶段 ...

最新文章

  1. mysql为什么用索引_MySql为什么使用B+树做索引
  2. C#的static,interface,virtual,abstract,override的区别用法
  3. python实现redis分布式锁
  4. C++11 —— 简易的旋转锁类
  5. python complex函数def_【Python3】Python函数
  6. c语言饿结构_C语言的四种程序结构
  7. 数据库原理及应用(索引为什么快,数据在磁盘上如何存储)
  8. [LeetCode]Unique Binary Search Trees
  9. (1)数据结构-绪论
  10. 【对讲机的那点事】对讲机数字语音加密,保障通信安全
  11. Socket网络编程进阶与实战
  12. 埋藏式心脏复律除颤器的原理及参数设置
  13. Docker入门学习
  14. java超市运行程序源代码_Java课程设计超市库存管理系统附源代码可以直接运行...
  15. 数据分析大厂面试真题汇总
  16. mysql判断字符串长度 超出用省略号_divcss超出长度文字自动隐藏或用省略号表示...
  17. parallel scavenge 与parnew 区别:
  18. halcon机器视觉实例1--表面划痕检测
  19. 如何从阿里云官方镜像站下载ubuntu并安装
  20. 开源项目学习:cJSON库的学习和使用(上)---以天气JSON数据为例

热门文章

  1. dedecms出现你所选择的栏目与当前模型不相符,请选择白色的选项怎么办
  2. React,Angular和Vue的15种绝佳替代品
  3. 惯性导航之四元数与欧垃角互转(五)
  4. 【AI折腾录】stable web ui基础【sd安装、lora vae embedding hyperwork等基础概念】
  5. 【Blender】摄像机-动画
  6. 《图机器学习》-Message Passing and Node Classification
  7. 85人教版高中英语第一册第十四课 WATCHING ANTS
  8. 驾校计算机岗位管理制度,驾校计算机管理制度范本
  9. 菌群16S测序引物的选择
  10. 基于JSP会议管理系统毕业设计