Tout d'abord, reportez-vous à l'URL du projet d'A-LOAM
https://github.com/HKUST-Aerial-Robotics/A-LOAM
A-LOAM
est une implémentation avancée de LOAM
A-LOAM est une implémentation avancée de LOAM (J. Zhang et S. Singh. LOAM : Lidar Odometry and Mapping in Real-time), qui utilise Eigen et Ceres Solver pour simplifier la structure du code . Ce code est modifié à partir de LOAM et LOAM_NOTED. Ce code est concis et clair, sans dérivation mathématique complexe ni opérations redondantes. C'est un bon matériel d'apprentissage pour les débutants en SLAM.
1. Prérequis
1.1 Ubuntu et ROS
Installation d'Ubuntu 64 bits 20.04
ROS
Suivez les étapes du tutoriel d'installation Linux du site officiel pour installer
Installez d'abord toutes les dépendances.
# CMake
sudo apt-get install cmake
# google-glog + gflags
sudo apt-get install libgoogle-glog-dev libgflags-dev
# Use ATLAS for BLAS & LAPACK
sudo apt-get install libatlas-base-dev
# Eigen3
sudo apt-get install libeigen3-dev
# SuiteSparse and CXSparse (optional)
sudo apt-get install libsuitesparse-dev
1.2. Solveur Cérès
Ensuite, construisez, testez et installez Ceres
(Le fichier ceres-solver-2.1.0.tar.gz ici , vous devrez peut-être télécharger manuellement
la dernière adresse de version stable donnée par le site officiel
http://ceres-solver.org/ceres-solver-2.1.0. tar.gz
Mais ce qui est nécessaire ici devrait être la version 2.0.0
http:ceres-solver.org/ceres-solver-2.0.0.tar.gz
peut être téléchargé en utilisant wget
)
tar zxf ceres-solver-2.1.0.tar.gz
mkdir ceres-bin
cd ceres-bin
cmake ../ceres-solver-2.1.0
make -j3
make test
# Optionally install Ceres, it can also be exported using CMake which
# allows Ceres to be used without requiring installation, see the documentation
# for the EXPORT_BUILD_DIR option for more information.
make install
make test
Vous pouvez tester si make réussit
1.3. PCL
Parce que l'URL PCL donnée par github a expiré, vous devez trouver un tutoriel par vous-même
Tutoriel de la bibliothèque PCL d'installation d'Ubuntu20.04
Voici les étapes d'installation de l'auteur
Tout d'abord, laissez-moi vous expliquer que le ros installé devrait être livré avec une version de pcl.Maintenant, il est nécessaire d'installer une autre version de PCL en même temps.
1.3.1 Installer les dépendances
sudo apt-get update
sudo apt-get install git build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.9 libflann-dev
sudo apt-get install libeigen3-dev #这个需要自己下载正确版本安装,我的是3.3.7
sudo apt-get install libboost-all-dev
sudo apt-get install libvtk7.1p-qt
sudo apt-get install libvtk7.1p
sudo apt-get install libvtk7-qt-dev #(按照错误提示一步一步安装所需要的东西)
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
sudo apt-get install openjdk-8-jdk openjdk-8-jre
L'auteur a installé selon le code ci-dessus et n'a rencontré aucune erreur
Insérez la différence entre l'installation d'UBuntu trouvée sur Internet et la version précédente, vous pouvez vous référer à :
sudo apt-get install libflann1.9 libflann-dev 版本不同
sudo apt-get install libvtk7.1p-qt
sudo apt-get install libvtk7.1p
sudo apt-get install libvtk7-qt-dev
sudo apt-get install qt-sdk UBuntu18.04 该命令已省略
1.3.2 Télécharger PCL
- Téléchargez la dernière version de PCL :
git clone https://github.com/PointCloudLibrary/pcl.git
L'auteur utilise directement git pour cloner la dernière version du répertoire de code
- Si vous souhaitez télécharger la version précédente du fichier PCL, connectez-vous au site Web ci-dessous, recherchez le fichier correspondant et décompressez-le :
https://github.com/PointCloudLibrary/pcl/releases
1.3.3 Compiler
cd pcl
mkdir release
cd release
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_GPU=ON-DBUILD_apps=ON -DBUILD_examples=ON \ -DCMAKE_INSTALL_PREFIX=/usr ..
make #(如果速度太慢用 make -j8 ;默认使用单核make,-j8启用8核)
sudo make install
1.3.4 Tester si PCL est installé
1. Entrez la commande
et appuyez sur tab pour afficher les résultats d'achèvement, vous devriez pouvoir voir la sortie de pcl_vfh_estimation, pcl_viewer, etc.
pcl_v
2. Afficher les fichiers
Dans /usr/include, /usr/lib, /usr/bin d et d'autres répertoires, vous pouvez voir les fichiers d'en-tête, les bibliothèques et les programmes exécutables liés à pcl.
- Essai de code :
Reportez-vous au code de test ubuntu20.04 du blog ci-dessous
pour installer pcl
2. Construire A-LOAM
Clonez le dépôt et catkin_make :
cd ~/catkin_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash
3. Exemple de Velodyne VLP-16
Téléchargez NSH indoor outdoor dans YOUR_DATASET_FOLDER.
roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
rosbag play
YOUR_DATASET_FOLDER/nsh_indoor_outdoor.bag
4. Exemple KITTI (Velodyne HDL-64)
Téléchargez le jeu de données KITTI Odometry dans YOUR_DATASET_FOLDER et définissez les paramètres dataset_folder et sequence_number dans le fichier kitti_helper.launch. Notez que vous convertissez également l'ensemble de données KITTI en fichier bag pour une utilisation facile en définissant les paramètres appropriés dans kitti_helper.launch.
roslaunch aloam_velodyne aloam_velodyne_HDL_64.launch
roslaunch aloam_velodyne kitti_helper.launch
5. Prise en charge de Docker
L'auteur n'a pas réellement opéré cette pièce, et je l'ajouterai plus tard.