- 博客(15)
- 收藏
- 关注
原创 LIO-SAM论文阅读笔记
如果是第一帧,就用IMU的初始姿态,如果不是第一帧,则用IMU的旋转信息更新或者odom信息更新(计算delta pose,然后乘以上一帧的最佳位姿)(3)与 LOAM 一样寻找当前关键帧与局部地图的匹配关系,并进行优化求解(利用 IMU 预积分作为初始值),从而获得与上一个关键帧的相对位姿。对于面特征,找局部地图里面距离最近的5个面特征,判断这5个点是否构成面,然后计算点到面的距离以及雅克比方向,对于线特征,找局部地图里面距离最近的5个线特征,判断这5个点是否构成线,然后计算点到线的距离以及雅克比方向。
2024-04-13 12:31:20 734
原创 Lego-LOAM论文阅读笔记
Lego-LOAM 的大部分改进算法主要针对于 UGV,所以局限性比较大。但是对点云进行聚类后再提取特征的思想值得借鉴。
2024-03-01 20:32:39 324 1
原创 模板函数的声明和定义为何不能分开放在两个文件中?
对于普通函数来说,声明放在头文件,定义放在源文件,其它地方要使用该函数时,仅需要包含头文件即可。因为编译器编译时是以一个源文件作为单元编译的,当它遇到不在本文件中定义的函数时,若能够找到其声明,则会将此符号放在本编译单元的外部符号表中,链接的时候自然就可以找到该符号的定义。而对于模板函数来说(在编译器遇到使用模板函数的代码时才会将模板函数实例化),若将模板函数声明放在tem.h,模板定义放在tem.cpp,然后在main.cpp中包含该头文件,调用add函数,此时仅有声明,找不到定义,因此编译器只能实例化
2021-09-22 15:25:08 904
原创 指针变量的加减运算
指针变量可以加减,但是只能与整型数据加减。此时加减的含义并不是其地址值进行了加减,而是与指针指向的数据类型相关联。如果指针变量 p 的值是0x20000000,那么 p=p+2 的值并不是 0x20000002,如果在 32 位的操作系统上,p 是指向整型数据的指针变量,那么 p=p+2 之后,p 的地址值变成 0x20000008,也就说地址值加了: sizeof(int)*2。加减的数字是以指针指向的数据类型为量度的,p+2 表示 p 在内存中前移两个int的距离,如果 p 不是 int 类型,其他..
2021-09-09 15:45:00 7681
原创 Eigen
http://eigen.tuxfamily.org/dox-devel/group__TopicStructHavingEigenMembers.html
2021-09-04 16:02:28 173
原创 联想拯救者2020 Y7000安装Ubuntu16.04
因为要适配以前的工作,要在新电脑上安装Ubuntu16.04,所以在这里记录踩坑过程。我的电脑配置是拯救者2020 Y7000,i5的cpu,显卡是RTX2060。 装系统过程基本按照常规操作就行,但是在装完系统后电脑会出现一些问题,下面罗列我遇到的问题:没有wifi列表(通病),蓝牙也没有。系统挂起后不能唤醒。亮度不能调节。外接显示器不能输出。触摸板不能使用。一. 装机过程因为装系统过程跟以前的没有多大的区别,所以这里不再过多赘述。需要注意的就是在bios里面关闭secure boot
2020-07-08 11:12:12 5772 11
原创 编译ORB_SLAM2出现libopencv_imgcodecs3.so.3.3.1: 对`TIFFReadDirectory@LIBTIFF_4.0未定义的引用
环境:Ubuntu16.04, ros-kinetic, opencv3.4.2问题:编译ORB_SLAM2时候出现对`TIFFReadDirectory@LIBTIFF_4.0‘未定义的引用解决办法:1.查找libopencv_imgcodecs3.so.3.3.1依赖的库:ldd /opt/ros/kinetic/lib/x86_64-linux-gnu/libopencv_imgcodecs3.so.3.3.1 | grep tiff结果:2.将该路径添加到CMakelist.txt
2020-05-23 11:26:22 1406 4
原创 编译ORB_SLAM2出现libapr-1.so.0:对‘uuid_generate@UUID_1.0’未定义的引用
环境:Ubuntu16.04, ros-kinetic, opencv3.4.2, Anaconda3问题:编译ROS版本的ORB_SLAM2时候出现对‘uuid_generate@UUID_1.0’未定义的引用://usr/lib/x86_64-linux-gnu/libapr-1.so.0:对‘uuid_generate@UUID_1.0’未定义的引用解决办法:1.使用locate命令查看libapr-1.so.0的位置locate libapr-1.so.0结果:2. 使用ldd查
2020-05-23 11:04:22 831
原创 Ubuntu使用Xtion
环境:Ubuntu16.04, ROS-Kinetic安装依赖项sudo apt-get install ros-kinetic-rgbd-launch ros-kinetic-openni2-camera ros-kinetic-openni2-launch测试在两个终端输入以下命令roscoreroslaunch openni2_launch openni2.launch显示打开RVIZ,添加点云CloudPoint2进行显示。配置如下图:以上为学习过程记录,如有错误,请多多.
2020-05-19 16:03:21 205
原创 3D Point Clouds-1
概述表示注:d11,d12,…可以是法向量,颜色信息数据来源激光雷达,RGB-D, CAD models, SFM, 深度图应用Robotics, Autonomous driving,Face detection / reconstruction – FaceID Hand pose – Hololens Human pose – Kinect优点• 3D informa...
2020-04-16 21:40:25 283
原创 树莓派4B编译,运行ORB_SLAM2
1.安装相关依赖终端输入以下命令进行安装。sudo apt-get install libboost -all-dev libblas-dev liblapack-dev以上博客内容纯属学习过程记录,如有错误,请各位指正。...
2019-11-17 22:28:58 1897 6
原创 VIO学习笔记一
1. IMU(Inertial Measurement Unit,惯性测量单元) 典型6轴IMU以较高频率(≥100Hz)返回被测量物体的角速度与加速度。受自身温度、零偏、振动等因素干扰,积分得到的平移和旋转容易漂移。IMU本身由一个陀螺仪和一个加速度计组成,分别测量自身的角速度和加速度。常用的6轴惯性测量单元类型为MEMS IMU,例如MPU 6050。2. Visual Od...
2019-11-17 22:16:15 453
原创 IMU(LPMS-B2)分析随机误差
LPMS-B2基本信息http://www.alubi.cn/lpms-b2/windows下标定确定性误差1.在windows平台下登录官网,下载openMAT最新版和用户手册。按照用户手册安装LpmsControl注:LpmsControl 软件是 OpenMAT 软件包里面的一个子软件。2.打开电脑蓝牙,按照用户手册连接LPMS-B2。3.按照视屏标定磁力计和陀螺仪。Linux...
2019-11-04 16:05:42 702 1
原创 Ubuntu16.04编译,运行ORB_SLAM2
1.安装相关依赖(1)安装相关依赖包sudo apt-get install libboost -all-dev libblas-dev liblapack-dev(2)安装数学运算库-eigen登录eigen的官网下载eigen3.2源码(eigen官网)。下载完成、解压源码后,在终端中进入源码目录,输入以下命令完成eigen库的编译,安装。mkdir buildcd build ...
2019-07-30 15:54:28 703 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人