多传感器融合定位 第一章 概述

2023-05-16

多传感器融合定位 第一章 概述

本记录深蓝学院多传感器定位融合第四期学习笔记,官方推荐使用docker进行开发,为了方便之后移植部署,故本次在次在本地环境进行开发。

代码下载 : https://github.com/kahowang/sensor-fusion-for-localization-and-mapping

环境安装

1. Ubuntu 18.04

  • 包括VScode VIM cmake 等常用工具

2. Ros Melodic

  • rosdep init 及 rosdep update 不成功的 可参考网址

  • https://blog.csdn.net/leida_wt/article/details/115120940?utm_source=app&app_version=4.5.8

. g2o

// 从github上下载源码
$ https://github.com/RainerKuemmerle/g2o/tree/20170730_git

// 安装依赖
$ sudo apt-get install cmake libeigen3-dev libsuitesparse-dev qtdeclarative5-dev qt5-qmake libqglviewer-dev


// 编译
$ cd g2o
$ mkdir build
$ cd build
$ sudo ldconfig
$ cmake ..
$ make -j4

//安装
$ sudo make install

注: 一定要在编译前进入build,进行sudo ldconfig

4. Ceres

// 需要自己下载源码
下载地址: https://github.com/ceres-solver/ceres-solver/releases

// 修改 sources.list
$ sudo gedit /etc/apt/sources.list
// 将此地址添加到source.list上
$ deb http://cz.archive.ubuntu.com/ubuntu trusty main universe 

// 更新源
$ sudo apt-get update

// 安装依赖
$ sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3 libgflags-dev libgoogle-glog-dev libgtest-dev

// 解压并进入文件夹
$ cd ceres-solver-1.14.0

// 编译及安装
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
$ sudo make install

5. Geographic

// 需要自己下载源码
下载地址: https://sourceforge.net/projects/geographiclib/

// 解压并进入文件夹
$ cd GeographicLib-1.52

// 编译及安装
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
$ sudo make install

6. gflags

// 克隆源码
$ git clone https://github.com/gflags/gflags

// 解压并进入文件夹
$ cd gflags

// 编译及安装
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
$ sudo make install

7. glog

// 克隆源码
$ git clone https://github.com/boboxxd/glog.git

// 解压并进入文件夹
$ cd glog

// 安装依赖
$ sudo apt-get install autoconf automake libtool

// 配置
$ ./autogen.sh
$ ./configure

// 编译及安装
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
$ sudo make install

注意: 出现如下问题时,是glog缺少gflag的依赖

logging.cc:(.text+0x6961):对‘google::FlagRegisterer::FlagRegisterer<bool>(char const*, char const*, char const*, bool*, bool*)’未定义的引用

解决办法: 打开glog.cmake , 末尾改为

list(APPEND ALL_TARGET_LIBRARIES ${GLOG_LIBRARIES} libgflags.a libglog.a)

8. Sophus

// 克隆源码
$ git clone https://github.com/strasdat/Sophus.git

// 解压并进入文件夹
$ cd Sophus
$ git checkout a621ff

// 编译及安装
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
$ sudo make install

注: make编译时如果有报错

解决方式如下:

$ cd Sophus/sophus/
$ sudo geidt so2.cpp

9. GTSAM

// 克隆源码&自行下载
$ https://github.com/borglab/gtsam/archive/4.0.2.zip

// 解压并进入文件夹
$ unzip gtsam-4.0.2.zip
$ cd gtsam-4.0.2

// 编译及安装
$ mkdir build
$ cd build
$ cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
$ sudo make install

10. Protobuf

// 克隆源码&自行下载 - V3.13
$ https://github.com/protocolbuffers/protobuf/tree/3.13.x

// 解压并进入文件夹
$ unzip protobuf-3.13.x.zip
$ cd protobuf-3.13.x

// 编译及安装
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install

代码编译、运行

1.编译

lidar_localization 拷贝到catkin_ws 中,进行 catkin_make -j8 编译

2.数据集下载

数据集百度网盘链接:
链接:https://pan.baidu.com/s/1gpO2Ssa12GoQTbYAseSFNA
提取码:cau9
微云文件分享:kitti_lidar_only_2011_10_03_drive_0027_synced.zip
下载地址:https://share.weiyun.com/QacEDADm
文件大小:4.8G

3.运行代码,播放数据集

roslaunch lidar_localization hello_kitti.launch
rosbag  play kitti_lidar_only_2011_10_03_drive_0027_synced.bag

在这里插入图片描述

​ edited by kaho 2021.8.11

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多传感器融合定位 第一章 概述 的相关文章

  • Matlab神经网络(一)

    一 xff1a 从生物角度开始 几乎地球上每一种动物都有其特定的神经系统 xff0c 都是由简单的神经元组合成神经网络 xff0c 然后完成其特定的功能 比如 xff0c 简单的低等动物 xff0c 就像蚂蚁 可能只有几十万个神经元 但可以
  • 2019 年经典Python 面试 100 问

    0 遇到过得反爬虫策略以及解决方法 1 通过headers反爬虫 2 基于用户行为的发爬虫 xff1a 同一IP短时间内访问的频率 3 动态网页反爬虫 通过ajax请求数据 xff0c 或者通过JavaScript生成 4 对部分数据进行加
  • 数模常用算法——图论算法简介&代码实现

    图与网络优化概述 目录 1 求 两个指定顶点之间的最短路径 xff08 Dijkstra算法 xff09 2 求每对顶点之间的最短距离 xff08 Floyd算法 xff09 3 最小代价生成树 3 1 prim算法模板 xff0c 当前测
  • 华为的鸿蒙系统与谷歌的Android系统,究竟还有多大差距?

    摘要 xff1a 近期 xff0c 美国商务部宣布正式把华为列入 实体名单 xff0c 华为不能在未经美国政府批准下与美国公司有业务往来 随后迫于压力 xff0c 谷歌已暂停与华为部分业务往来 xff0c 最要命的是使用Android系统的
  • npm设置代理

    npm设置仓库 1 npm config set registry https registry npm taobao org npm config list 查看npm当前配置 2 命令行指定 每次执行命令前加入 registry指定仓库
  • CSDN 博客添加无水印图片的方法

    文章目录 前言Markdown编辑器方法一 xff1a 删除水印相关代码Markdown编辑器方法二 xff1a 修改水印相关代码中的参数富文本编辑器类似方法 前言 湛蓝的湖水 xff0c 远处隐约可见的雪山 xff0c 这就是人们梦中的神
  • RT-Thread(1)简介_笔记

    RT Thread 愿景和目标 做世界级的 OS xff0c 让万物互联 xff0c 信息畅通无阻 成为未来 AIoT 领域最为主流的操作系统平台 主要特点为RT Thread是一个组件完善丰富 高度可伸缩 简易开发 xff0c 超低功耗
  • vscode保存后代码自动格式化配置

    1 最近接手第二个项目 xff0c 之前的项目是基于vue 43 element 43 admin这个优秀的后台管理平台搭建的 xff0c 由公司大佬直接搭建 xff0c 接手的时候只是做一些简单的业务开发 最近接手了一个外包公司帮忙写的系
  • 安装laravel

    安装laravel之前首先应该设置好安装好php xff0c 配置好环境变量 之后安装好compser 1 安装php环境变量 我使用的php环境安装包是upupw xff0c xff08 php环境安装包有很多 xff0c 例如phpst
  • git关联远程仓库(本地库被其他远程库占用解决方案)

    关联远程库两种方式 1 你现在文件夹里有项目 xff0c 远程库还没建 xff0c 这个情况 先在远程库新建项目 xff0c 然后git clone git 64 github com xxxx lzzz git 到本地文件夹空文件夹内 然
  • 无人机坐标系定义与转换

    x 作者简介 xff1a 热爱科研的无人机 xff08 机器人 xff09 导航 制导 控制开发者 如有错误 xff0c 请指正 xff0c 不吝感谢 xff01 1 前言 我们在研究无人机 机器人 无人车等相关领域的导航 制导与控制算法时
  • PX4 EKF模块解读含matlab代码

    这里主要介绍px4里面的定位模块 xff0c 即EKF库 1 状态向量与协方差的预测 1 Px4的状态向量为24维 xff0c 其如下所示 xff1a x 61
  • Cent OS 7 关闭防火墙

    临时关闭 systemctl stop firewalld service 禁止开机启动 systemctl disable firewalld service Removed symlink etc systemd system mult
  • (解决)flink 单机部署,启动后进程没有StandaloneSessionClusterEntrypoint,web无法访问8081端口

    以下为解决 原因 xff1a 一般都是8081端口被占用 报错日志 xff1a 仔细阅读可以看到8081端口被占用 2021 06 17 15 47 11 069 INFO org apache flink runtime entrypoi
  • centos7 更新内核

    1 查看当前内核版本 uname r 3 10 0 514 el7 x86 64 uname a Linux k8s master 3 10 0 514 el7 x86 64 1 SMP Tue Nov 22 16 42 41 UTC 20
  • 使用npm link关联自己的node modules(项目)

    在进行自己的模块开发时 xff0c 一般我们至少会创建2个项目 xff0c 一个项目进行自己的modules开发 xff08 项目aaa xff09 另一个项目引入自己开发的modules xff0c 进行测试并使用 xff08 项目bbb
  • 正点原子STM32F407+ESP8266开发上篇

    说起机智云 xff0c 真是对物联网技术小白来说太人性化了 xff0c 对物联网感兴趣的的小白 xff0c 只需会学会看懂代码中的接口 xff0c 可以先不用学会网络协议 xff08 当然这个肯定要学的 xff09 xff0c 即可轻松将数
  • ubuntu下安装cmake及cmake简单使用,CmakeList的编写和参数详解

    安装过程 首先去官网下载安装包 选择 XX tar gz 源码安装包 输入如下命令 tar zxvf xx tar gz bootstrap make make install 输入以上命令后就已经可以在ubuntu上安装好cmake 编写
  • ROS中两个电脑之间ssh通信(ROS多机通信计算机网络配置)

    ROS中两个电脑之间ssh通信 PC 即个人电脑 xff0c ip是202 204 53 186 图一 xff1a PC bashrc 图二 xff1a PC hosts pc上终端启动 xff1a ssh robot 64 202 204
  • rosdep init

    本文之后 xff0c 世上再无rosdep更新失败问题 xff01 如果有 小鱼就

随机推荐

  • Hadoop中查看HDFS中的一个文件的位置信息

    指令 hadoop fsck user hadoop filename files blocks locations racks files 文件分块信息 xff0c blocks 在带 files参数后才显示block信息 locatio
  • ROS 安装与测试& RVIZ 运行仿真机械臂

    本文用于学习记录 文章目录 前言一 ROS 安装1 1 设置安装源1 2 设置 key1 3 更新 apt1 4 安装 ros 二 ROS 环境配置2 1 配置环境变量2 2 安装构建依赖相关工具2 3 初始化 rosdep2 4 替换 2
  • 自抗扰控制器-1.跟踪微分器 TD

    传统控制方法大都基于设定值与系统输出的残差的生成控制量 xff0c 这就是让有惯性输出信号跟踪存在跳变的设定值信号 xff0c 最初阶段残差过大 xff0c 容易导致超调 为了克服这个缺陷 xff0c 研究人员采用微分器来获得信号的微分信号
  • 自抗扰控制器-3.状态观测器(一)

    状态观测器 ESO 状态观测器 Extended State Observer ESO 定义 xff1a 根据外部变量的观测来确定系统内部状态变量的装置叫做状态观测器 xff0c 即根据测量到的系统输入 xff08 控制量 xff09 和系
  • 自抗扰控制器-6线性自抗扰控制器LADRC

    二阶线性自抗扰控制器结构图如下图所示 xff1a xff08 1 xff09 线性扩张状态观测器 LESO 依然属于 LADRC 的中枢核心环节 xff0c 而且 LESO 和 ESO 的功能基本 一致 xff0c 都是针对系统 总扰动 进
  • 无人机学习Pix4

    pix4学习 IMU xff08 惯性测量单元 xff09 IMU用来检测当前飞机的姿态 xff0c 飞控根据当前姿态做出调整 xff0c 保证飞机飞行稳定 俯仰角 pitch xff08 前后翻滚 xff09 横滚角 roll xff08
  • 修改Mysql root密码

    最近新装好的mysql在进入mysql工具时 xff0c 总是有错误提示 mysql uroot p Enter password ERROR 1045 28000 Access denied for user 39 root 39 64
  • 示例:PX4——添加msg、uORB

    git clone https github com PX4 Firmware cd Firmware git submodule update init recursive git checkout v1 11 0 beta1 make
  • PX4飞控读取UART串口信息通过Mavlink传给QGC地面站显示

    详细代码地址 xff1a https github com XXXUUUXXX PX4 2 QGC 目的 xff1a 通过UART串口给PX4飞控发送信息 xff0c 通过Mavlink协议在QGC界面上显示出来 显示信息包括 xff1a
  • QGC地面站连接多机飞控PX4

    环境 xff1a QGC4 1飞控1飞控2 首先 xff0c 连接飞控1 xff0c 修改参数MAV SYS ID 61 1 然后 xff0c 断开飞控1 xff0c 连接飞控2 xff0c 修改参数MAV SYS ID 61 2 关闭自动
  • PX4 mavros可以切换的模式

    catkin ws src mavros mavros src lib uas stringify cpp PX4 custom mode gt string static const cmode map px4 cmode map px4
  • Jetson的mavros使用offboard模式,终端按键控制无人机飞行

    基于Promethues根据wiki配置好之后可以实现使用终端控制 xff0c 起飞 xff1b 降落 xff1b 前后左右飞行 xff1b 上升下降左转右转 xff1b 开始我基于仿真测试实机不成功 xff0c 是因为某个运行节点没有打开
  • 安装Mavros——二进制方法

    sudo apt get install ros melodic mavros ros melodic mavros extras wget https raw githubusercontent com mavlink mavros ma
  • 【LADRC】线性自抗扰控制

    目录 LADRC算法 LADRC算法推导二阶线性系统为例 LADRC算法n阶 LADRC离散化 零阶保持法 一阶系统 二阶系统 LADRC参数整定方法 参考文献 LADRC算法 自抗扰控制 xff08 ADRC xff0c Active D
  • 控制笔记(自控+现控)

    目录 主流控制方法优缺点 干扰观测器 水床效应 PID 积分分离 饱和区 积分饱和 微分使用条件 死区 中性区 不作用区 动态性能指标 主流控制方法优缺点 PID 优点 xff1a 实现简单 不依赖模型缺点 xff1a 在系统平衡点附近设计
  • MapReduce系列-eclipse运行MapReduce

    1 eclipse安装hadoop的插件 下载 hadoop eclipse plugin 2 6 0 jar xff0c 将其放入 eclipse 的 plugins 目录 xff0c 并重启 eclipse xff0c 项目视图 xff
  • python爬取淘宝网

    from selenium import webdriver import re from bs4 import BeautifulSoup import time def url open driver content 爬取源代码 ele
  • SUMO仿真数据输出的配置方法

    1 概述 1 1 目的 说明SUMO仿真结束后可以输出的数据及其设置方法 1 2 参考文档 http sumo dlr de wiki Simulation Output 2 SUMO的输出数据概述 SUMO可以输出的数据概述如下表 xff
  • LQR 控制学习-LQR控制 MATLAB官方教程-LQR 控制器_状态空间系统Matlab/Simulink建模分析

    LQR 控制 本blog主要记录LQR 线性二次调制系统的 xff0c 学习教程为两个B站的教学视频 状态空间4 LQR控制 MATLAB官方教程 视频链接 xff1a 原创翻译 状态空间4 LQR控制 MATLAB官方教程 原创翻译 状态
  • 多传感器融合定位 第一章 概述

    多传感器融合定位 第一章 概述 本记录深蓝学院多传感器定位融合第四期学习笔记 xff0c 官方推荐使用docker进行开发 xff0c 为了方便之后移植部署 xff0c 故本次在次在本地环境进行开发 代码下载 xff1a https git