ethz的多传感器融合算法msf编译与安装
ethz的多传感器融合算法msf编译与安装
- 1、建立工作空间
- 2、下载安装所有依赖
- 2.1 下载依赖库
- 2.2 安装Google的glog
- 2.3 安装GeographicLib
- 2.4 编译
- 3、报错
阅读论文 A Robust and Modular Multi-Sensor Fusion Approach Applied to MAV Navigation后想复现该篇论文,因此在Ubuntu16.04/ROS Kinect系统下编译苏黎世大学ethz的多传感器融合算法msf,该项目地址为https://github.com/ethz-asl/ethzasl_msf。按照[这篇博客]编译,发现很多报错,因此把具体过程记录,详细的介绍msf的编译过程。
python使用ros自带2.7版本,opencv同样也是ros自带版本。**注意:**不要安装anaconda,因为anaconda下的opencv和Python环境与ros本地的版本会产生大量冲突,有很多bug。另外不要在这个工作空间下安装Pangolin库。
正式开始编译:
1、建立工作空间
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ..
catkin_make
source devel/setup.bash
执行echo $ROS_PACKAGE_PATH
可以查看当前环境变量是否正确。正常应该输出
/home/你的用户名/你的工作空间名/src:/opt/ros/kinetic/share
2、下载安装所有依赖
cd src/
2.1 下载依赖库
git clone https://github.com/ethz-asl/glog_catkin.git
git clone https://github.com/catkin/catkin_simple.git
git clone https://github.com/ethz-asl/asctec_mav_framework.git
git clone https://github.com/ethz-asl/mav_comm.git
2.2 安装Google的glog
glog是一个c++库。
git clone https://github.com/google/glog.git
cd glog
./autogen.sh && ./configure && make
sudo make install
如果报错./autogen.sh: 5: ./autogen.sh: autoreconf: not found
,执行
sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install libtool
2.3 安装GeographicLib
第一种方案
下载在geographiclib的zip文件,这里选择1.50版本,下载完成后解压到工作空间的src目录
cd src/GeographicLib-1.50.1/
mkdir build
cd build
../configure
make -j4
sudo make install
若第一种不可行,则使用第二种方案
sudo pip install geographiclib
2.4 编译
回到工作空间(catkin_ws)
source devel/setup.bash
catkin_make
完成编译
3、报错
一、
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by
“sensor_fusion_comm” with any of the following names:
sensor_fusion_commConfig.cmake
sensor_fusion_comm-config.cmake
解决方案:
cd src/
git clone https://github.com/ethz-asl/ethzasl_sensor_fusion.git
二、
CMake Error at /home/hgh/catkin_ws/devel/share/glog_catkin/cmake/glog_catkinConfig.cmake:173 (message):
Project ‘msf_core’ tried to find library ‘glog’. The library is neither a
target nor built/installed properly. Did you compile project
‘glog_catkin’? Did you find_package() it before the subdirectory containing
its code is included?
Call Stack (most recent call first):
/opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package)
ethzasl_msf-master/msf_core/CMakeLists.txt:17 (find_package)
未安装glog导致,执行步骤2的glog安装
三、
catkin_ws/src/asctec_mav_framework/asctec_hl_interface/src/hl_interface.h:51:45: fatal error: mav_msgs/RollPitchYawrateThrust.h: No such file or directory
compilation terminated.
asctec_mav_framework/asctec_hl_interface/CMakeFiles/hl_node.dir/build.make:86: recipe for target ‘asctec_mav_framework/asctec_hl_interface/CMakeFiles/hl_node.dir/src/hl_interface.cpp.o’ failed
make[2]: *** [asctec_mav_framework/asctec_hl_interface/CMakeFiles/hl_node.dir/src/hl_interface.cpp.o] Error 1
CMakeFiles/Makefile2:4304: recipe for target ‘asctec_mav_framework/asctec_hl_interface/CMakeFiles/hl_node.dir/all’ failed
make[1]: *** [asctec_mav_framework/asctec_hl_interface/CMakeFiles/hl_node.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs…
缺少 mav_comm库,执行步骤2的git clone https://github.com/ethz-asl/mav_comm.git
四、
/home/hgh/catkin_ws/src/MSF_developed-master/src/read_dataset/main.cpp:19:38: fatal error: GeographicLib/Geodesic.hpp: No such file or directory
compilation terminated.
MSF_developed-master/CMakeFiles/read_node.dir/build.make:62: recipe for target ‘MSF_developed-master/CMakeFiles/read_node.dir/src/read_dataset/main.cpp.o’ failed
make[2]: *** [MSF_developed-master/CMakeFiles/read_node.dir/src/read_dataset/main.cpp.o] Error 1
CMakeFiles/Makefile2:9608: recipe for target ‘MSF_developed-master/CMakeFiles/read_node.dir/all’ failed
make[1]: *** [MSF_developed-master/CMakeFiles/read_node.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs…
未安装GeographicLib,执行步骤2的GeographicLib安装
ethz的多传感器融合算法msf编译与安装相关推荐
- 自动驾驶中的9种传感器融合算法
来源丨AI 修炼之路 在自动驾驶汽车中,传感器融合是融合来自多个传感器数据的过程.该步骤在机器人技术中是强制性的,因为它提供了更高的可靠性.冗余性以及最终的安全性. 为了更好地理解,让我们考虑一个简单 ...
- SLAM 03.多传感器融合算法
传感器标定是自动驾驶的基本需求,一个车上装了多个/多种传感器,而它们之间的时间和空间关系需要统一,传感器数据的标定主要为了定位的准确性. 1.传感器分类 机器人有多种传感器,每种数据类型不一样,数据精 ...
- 组合导航+多传感器融合算法
1.INS/GPS的组合导航系统可以输出高频率的导航参数信息(位置.速度.姿态),并且在长.短期的导航过程中均能具备较高精度.(输出数据的意义什么,PDR是步长+航向) 2.误差反馈系统 (1)在开环 ...
- 9种自动驾驶传感器融合算法你都知道吗?
作者 | Alan 编辑 | 汽车人 原文链接:https://zhuanlan.zhihu.com/p/430323552 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨 ...
- 聊一聊SLAM核心算法之ESKF多传感器融合算法
作者 | 应知 编辑 | 汽车人 原文链接:https://zhuanlan.zhihu.com/p/628074965? 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷 ...
- 多传感器融合算法,雷视融合算法
0: 设备选型 Camera选型: 如何选择视场角和焦距: Radar选型 lidar选型 1: Radar毫米波雷达和Camera视觉融合 算法要求: 图像目标检测 Radar目标检测 radar和 ...
- 多传感器融合算法,单目测距、基于双目,长焦短焦,图像拼接,环视等
标定:已知世界坐标系平面内的三维坐标和像素坐标,求解内参和外参: 本质矩阵和基本矩阵:已知内参和两幅图像中对应点的坐标,通过对极约束(八点法,尺度等价性,齐次坐标)求解相机的运动R和t(用到RANSA ...
- 【黑马Android】(11)音乐播放器/视频播放器/照相机/常见对话框/notification通知/样式和主题/帧动画/传感器/应用程序反编译与安装
音乐播放器api <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns: ...
- 解读基于多传感器融合的卡尔曼滤波算法
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|3D视觉工坊 卡尔曼滤波器是传感器融合工程师用于自动驾驶 ...
最新文章
- Node.js项目实践:构建可扩展的Web应用
- 您如何确定以编程方式发送的电子邮件不会自动标记为垃圾邮件?
- 阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第1节 继承_2_继承的格式
- tp5.1的安装与运行流程
- React之总结Ref
- 计算机电子琴音乐,电脑电子琴软件
- 利用组策略进行软件分发
- spring配置redis(xml+java方式)(最底层)
- 如何设置操作系统处于最佳性能?此方法可以取消系统自带的界面渲染及其它多余的辅助功能.
- Layui在表格中无法显示进度条(layui-progress)的值
- ERROR 1010 (HY000): Error dropping database (can't rmdir './bolgdb/', errno: 17)
- VC++中视频采集系统(摄像头的制作,串口通信的应用)
- iOS 获取通讯录权限和权限提示弹框
- SCI收录的文献类型与认证的文献类型
- 心知天气数据API 产品的高并发实践
- 苹果官方mfi认证名单_【大型推销配件现场】苹果回应iPhone12消磁,这波操作太6了 - 社会...
- [abc] Placing Rectangles
- 下载Nvidia显卡以前的驱动
- js实现纯前端截屏(可以对iframe的内容进行截取)
- BAPI上传物料主数据
热门文章
- python壁纸高清图片_详解Python静态网页爬取获取高清壁纸
- 什么是基本的逻辑运算?
- ins的更新带来的一系列问题
- 用一个小故事模拟Spring-Aop(三)--Advice适配器
- 【Spring】AOP(二)自定义来实现AOP
- 宣传python的顺口溜-Python3内置函数——reversed() = 翻转我的世界
- bootstrap使用及解析
- mysql的interval()引出的
- 四种连接类型:inner(内连接),left[outer](左外连接),right[outer](右外连接),full[outer](完全外连接)
- 学习LSSVM以及区别LSSVM和SVM看的几篇博文