# Good Line Cutting Version of PL-SLAM
Good line cutting is an enhancement module that is designed for line-assisted VSLAM, such as PL-SLAM. The primary objective of good line cutting is to pre-condition line-assisted pose optimization, therefore improving the robustness of optimization under 3D line triangulation error.
[![Example Run of GF-PL-SLAM](https://img.youtube.com/vi/YAq5uzDtSXE/0.jpg)]
## Build & Run
This repo is an integration of good line cutting to stereo PL-SLAM. When tested on multiple challenging scenarios that point feature may fail, GF-PL-SLAM has better performance than PL-SLAM baseline and other state-of-the-art stereo SLAM systems.
To build GF-PL-SLAM, first download the repo
Build dependencies for GF-PL-SLAM with
./build_dep.sh
Build the GF-PL-SLAM itself
./build.sh
To run GF-PL-SLAM, please refer to some example batch evaluation scripts at folder
batch_script
## 1. Prerequisites and dependencies
### OpenCV 3.x.x
It can be easily found at http://opencv.org.
### Eigen3 (tested with 3.2.92)
http://eigen.tuxfamily.org
### Boost
Installation on Ubuntu:
```
sudo apt-get install libboost-dev
```
### g2o - General Graph Optimization
It can be found at:
```
https://github.com/RainerKuemmerle/g2o.git
```
### YAML (tested with 0.5.2)
Installation on Ubuntu:
```
sudo apt-get install libyaml-cpp-dev
```
### stvo-pl
It can be found at:
```
https://github.com/rubengooj/stvo-pl
```
### MRPT
In case of using the provided representation class.
Download and install instructions can be found at: http://www.mrpt.org/
#### Known Issues:
If working with the most recent versions of the MRPT library you might find some issues due to hard refactoring, for which we recommend to use this version instead (the last one we tested):
```
https://github.com/MRPT/mrpt/tree/0c3d605c3cbf5f2ffb8137089e43ebdae5a55de3
```
### Line Descriptor
We have modified the [*line_descriptor*](https://github.com/opencv/opencv_contrib/tree/master/modules/line_descriptor) module from the [OpenCV/contrib](https://github.com/opencv/opencv_contrib) library (both BSD) which is included in the *3rdparty* folder.
## 2. Configuration and generation
Executing the file *build.sh* will configure and generate the *line_descriptor* and *DBoW2* modules, uncompress the vocabulary files, and then will configure and generate the *PL-SLAM* library for which we generate: **libplslam.so** in the lib folder, and the application **plslam_dataset** that works with our dataset format (explained in the next section).
## 3. Usage
### Datasets configuration
We employ an environment variable, *${DATASETS_DIR}*, pointing the directory that contains our datasets. Each sequence from each dataset must contain in its root folder a file named *dataset_params.yaml*, that indicates at least the camera model and the subfolders with the left and right images. We provide dataset parameters files for several datasets and cameras with the format *xxxx_params.yaml*.
### Configuration files
For running SLAM we can load the default parameters file or employ the *config_xxxx.yaml* files provided for every dataset.
### SLAM Application
Usage: ./plslam_dataset <dataset_name> [options]
Options:
-c Config file
-o Offset (number of frames to skip in the dataset directory
-n Number of frames to process the sequence
-s Parameter to skip s-1 frames (default 1)
A full command would be:
./plslam_dataset kitti/00 -c ../config/config_kitti.yaml -o 100 -s 2 -n 1000
where we are processing the sequence 00 from the KITTI dataset (in our dataset folders) with the custom config file, with an offset *-c* allowing to skip the first 100 images, a parameter *-s* to consider only one every 2 images, and a parameter *-n* to only consider 1000 input pairs.
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
SLAM-良好线切割-转为PL-SLAM等线辅助VSLAM设计的增强模块-辅助姿态优化-优质项目实战.zip (119个子文件)
ORBextractor.cc 43KB
FindEigen3.cmake 3KB
FindG2O.cmake 3KB
FindCholmod.cmake 2KB
mapHandler.cpp 209KB
stereoFrameHandler.cpp 114KB
binary_descriptor_custom.cpp 103KB
stereoFrame.cpp 73KB
voScene.cpp 34KB
slamScene.cpp 30KB
binary_descriptor_matcher.cpp 27KB
plslam_mod.cpp 23KB
linespec.cpp 21KB
simulate_pl_loss.cpp 18KB
auxiliar.cpp 17KB
plslam_dataset.cpp 14KB
plstvo_mod.cpp 14KB
plstvo_dataset.cpp 14KB
simulate_line_cut.cpp 12KB
LSDDetector_custom.cpp 12KB
testCut_1.cpp 8KB
pinholeStereoCamera.cpp 8KB
ScoringObject.cpp 8KB
config.cpp 8KB
draw_custom.cpp 7KB
Timestamp.cpp 5KB
mapFeatures.cpp 5KB
stereoFeatures.cpp 5KB
FORB.cpp 4KB
keyFrame.cpp 3KB
Random.cpp 3KB
BowVector.cpp 3KB
test_line_matching.cpp 2KB
FeatureVector.cpp 2KB
main.cpp 153B
TemplatedVocabulary.h 41KB
config.h 11KB
stereoFrame.h 9KB
stereoFrameHandler.h 6KB
mapHandler.h 6KB
auxiliar.h 5KB
pinholeStereoCamera.h 5KB
voScene.h 5KB
Timestamp.h 4KB
stereoFeatures.h 4KB
slamScene.h 4KB
mapFeatures.h 4KB
Random.h 4KB
ORBextractor.h 3KB
linespec.h 3KB
ScoringObject.h 2KB
keyFrame.h 2KB
BowVector.h 2KB
FORB.h 2KB
FClass.h 2KB
FeatureVector.h 1KB
descriptor_custom.hpp 49KB
line_descriptor_custom.hpp 7KB
bitops_custom.hpp 5KB
bitarray_custom.hpp 3KB
precomp_custom.hpp 3KB
types_custom.hpp 3KB
scene_config.ini 278B
scene_config_indoor.ini 263B
simulate_line_vol.log 120KB
README.md 4KB
README.md 105B
intuition.png 80KB
stereo_error_assessment.py 8KB
simu_point_line_loss.py 5KB
project_error_assessment.py 4KB
simu_line_vol_assessment.py 3KB
line_match_assessment.py 3KB
line_merge_assessment.py 3KB
line_debug.py 2KB
line_stereo_assessment.py 2KB
line_detect_assessment.py 2KB
Run_EuRoC.py 2KB
Run_KITTI.py 2KB
Run_Gazebo.py 2KB
build_dep.sh 3KB
build.sh 456B
clean.sh 79B
groundtruth.txt 480KB
groundtruth.txt 397KB
groundtruth.txt 379KB
groundtruth.txt 302KB
groundtruth.txt 277KB
groundtruth.txt 267KB
groundtruth.txt 260KB
groundtruth.txt 260KB
groundtruth.txt 255KB
groundtruth.txt 220KB
groundtruth.txt 218KB
associations.txt 57KB
associations.txt 47KB
associations.txt 45KB
associations.txt 36KB
associations.txt 33KB
associations.txt 32KB
共 119 条
- 1
- 2
资源评论
__AtYou__
- 粉丝: 3515
- 资源: 2177
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 海底捞员工培训——03选用育.pdf
- 华润雪花啤酒(中国)有限公司 -内审及相关人员风险管理与内部控制培训(二).pdf
- 华润雪花啤酒(中国)有限公司 -内审及相关人员风险管理与内部控制培训(一).pdf
- 2025最新防震减灾应知应会知识题库与答案.doc
- 2025最新高级电工证考试题及答案.doc
- 2025最新汉字听写大会竞赛试题题库及答案.pptx
- 2025最新焊工理论知识考试题及答案.doc
- 2025最新基本公共卫生知识竞赛考试题及答案.doc
- 2025最新工程材料学期末考试题及答案.doc
- 2025最新垃圾分类知识竞赛题库及答案.doc
- 2025最新设计心理学题库及答案.doc
- 2025最新体育知识题库与答案.doc
- 2025最新土建质检员考试题及答案.doc
- 2025最新卫生应急知识竞赛题及答案.doc
- 2025最新消防法考试题库及答案.doc
- 2025最新小学生古诗词知识竞赛题(附答案).doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功