Error: GTSAM was built against a different version of Eigen这个问题是GTSAM自带的eigen库和之前安装的eigen库的版本不同导致的。解决办法:修改gtsam下的CMakeLists.txt文件中的内容,在if(GTSAM_USE_SYSTEM_EIGEN)前面加上set(GTSAM_USE_SYSTEM_EIGEN ON),使得gtsam使用自己安装的eigen而不是它自带的eigen。然后重新编译gtsam,之后再编译LIO-S
版本 2020-11-19
什么是 SC-
LIO
-
SAM
?
SC-
LIO
-
SAM
是一种实时激光雷达惯性 SLAM 封装。 LiDAR 惯性 SLAM:扫描上下文 +
LIO
-
SAM
该存储库是一个示例用例,它是一种快速而强大的 LiDAR 位置识别方法。
有关每种算法的更多详细信息,请参阅扫描上下文
LIO
-
SAM
您还可以使用该项目的 LiDAR-only 版本,名为 。
扫描上下文:快速而强大的位置识别
轻量级:名为“Scancontext.h”和“Scancontext.cpp”的单个标题和cpp文件
我们的模块有 KDtree ,我们使用 。 nanoflann 也是一个单头程序,该文件在我们的目录中。
易于使用:用户只需记住和使用两个API函数; makeAndSaveScancontextAndKeys和detectLoopClosureID
1.问题描述:最近在下载
编译
BLAM代码的时候,运行命令./update后出现了下面问题:
/usr/local/include/
gtsam
/base/Vector.h:72:1:
error
: static assertion failed:
Error
:
GTSAM
was
buil
t against a
diff
erent
version
of
Eigen
static_assert(
2.原因:原因是
GTSAM
自带的
eigen
和我系统安装的
eigen
之间有冲突。
GTSAM
编译
的时候默认使用了自.
修改脚本
run
all_ntuviral.sh以通过变量EPOC_DIR声明输出目录,并通过DATASET_LOCATION变量声明数据集的路径。
请注意,bag
文件的组织方式应如下图所示:
运行bash
run
all_ntuviral.sh自动将算法与包文件一一启动。
日志文件将以
格式创建,您可以使用
matlab
python
根据这些日志的真实情况计算定位误差。
可以在
LIO
-
SAM
/analysis/ntuviral_
lio
sam
文件夹中找到
LIO
-
SAM
/analysis/ntuviral_
lio
sam
MATLAB
脚本checkall_parallel.m
,结果就会被打印出来。
如果您在工作中使用
VIRAL
数据集,请在数据集的
另请在下面引用
LIO
-
SAM
的出版物。
LIO
-
SAM
实时激光雷达惯性里程计包。
LIO
-
SAM
-DetailedNote
LIO
-
SAM
源码详细注释,3D SLAM融合激光、IMU、GPS,因子图优化。
LIO
-
SAM
的代码十分轻量,只有四个cpp文件,很值得读一读呢。
关于
LIO
-
SAM
的论文解读,网上已经有很多文章啦,同系列的LOAM、A-LOAM、LEGO-LOAM等,在网上都可以找到相关的解读文章。所以本文旨在对源代码进行阅读学习,积累一些工程上的经验。这里记录下来,希望可以帮到有需要的同学,如有错误的地方,请您批评指正。
:) 如果对您有帮助,帮我点个star呦~
目录(知乎)
代码结构图
1、激光运动畸变校正。利用当前帧起止时刻之间的IMU数据、IMU里程计数据计算预积分,得到每一时刻的激光点位姿,从而变换到初始时刻激光点坐标系下,实现校正。
2、提取特征。对经过运动畸变校正之后的当前帧激光点云,计算每个点的曲率,进而提取角点、平面点特征
在catkin_make时出现/usr/local/include/
gtsam
/base/Vector.h:72:1:
error
: static assertion failed:
Error
:
GTSAM
was
buil
t against a
diff
erent
version
of
Eigen
,如下图:
刚开始在
GTSAM
的
eigen
部分加上:
set(
GTSAM
_USE_SYSTEM_
EIGEN
ON)
重新
编译
GTSAM
然后
编译
LVI-
SAM
还是会出错,于是看到这个博客: https://blo
error
: static assertion failed:
Error
:
GTSAM
was
buil
t against a
diff
erent
version
of
Eigen
In file included from /usr/local/include/
gtsam
/base/Matrix.h:28:0,
from /usr/local/include/
gtsam
/base/Manifold.h:22,
from /usr
Sam
e issue when upgrading ROS Melodic code from 4.0.2 to 4.0.3 on Ubuntu 18.04. ROS code compiled correctly however at
run
time gave
error
:
error
while loading shared libraries: libmetis-
gtsam
.so: cannot open shared object file: No such file or directo
我们设计了一个系统,该系统维护两个图形,并且运行速度比实时速度快10倍。
“ mapOptimization.cpp”中的因子图可优化激光雷达测距因子和GPS因子。在整个测试过程中,该因子图始终保持不变。
“ imuPreintegration.cpp”中的因子图可优化IMU和激光雷达测距因子,并估算IMU偏差。该因子图会定期重置,并确保在IMU频率下进行实时里程计估算。
(经过动力学和旋律测试) sudo apt-get install -y ros-kinetic-navigation
sudo apt-get install -y ros-kinetic-robot-localiz
1、代码下载github链接https://github.com/TixiaoShan/
LIO
-
SAM
2、安装依赖项
sudo apt-get install -y ros-kinetic-navigation
sudo apt-get install -y ros-kinetic-robot-localization
sudo apt-get install -y ros-kinetic-robot-state-publisher
gtsam
:
下载源文件安装https://github.com/bo
sudo apt-get update
sudo apt-get install
buil
d-essential cmake libboost-all-dev libssl-dev libprotobuf-dev protobuf-compiler libcurl4-openssl-dev liblog4cxx-dev libjsoncpp-dev libgtest-dev libgflags-dev libzookeeper-mt-dev libhiredis-dev librdkafka-dev
2. 下载
lio
-
sam
源代码:
git clone https://github.com/iotexproject/
lio
-
sam
.git
3. 进入
lio
-
sam
目录,使用以下命令
编译
:
cd
lio
-
sam
mkdir
buil
d
cd
buil
d
cmake ..
4.
编译
完成后,您可以使用以下命令运行
lio
-
sam
:
./
sam
-c ../config/config.yaml
注意:在运行之前,请确保您已经配置好了config.yaml文件。
希望这些步骤能够帮助您成功运行
lio
-
sam
。如果您有任何问题,请随时联系我。
编译时遇到CMake Error at /usr/lib/x86_64-linux-gnu/cmake/pcl/PCLConfig.cmake:45 (message):common is re