Para aprender slam, debes mencionar el marco clásico orbslam2. Comprender su funcionamiento es nuestro primer paso.
Este tutorial es una colección de operaciones durante el proceso de descarga e instalación de orbslam2.
Tabla de contenido
error: 'usleep' no fue declarado en este ámbito
2. Descarga y uso del conjunto de datos EuRoC
1. Descargue el conjunto de datos
2. Ejecute el conjunto de datos
1. Descarga de Orbslam2
Hay una introducción escrita por otra persona: Introducción al Blog-CSDN Blog_euroc Dataset de EuRoC Dataset_Keji
Usamos la línea de comando para ingresar a la carpeta preparada previamente. La coloqué en la carpeta /home/username/slam/:
cd /home/用户名/slam
Descargar código fuente:
git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
Si el nombre de la carpeta es incorrecto, puede cambiarlo a ORB_SLAM2. De esta forma, el código fuente se descarga en la carpeta /home/username/slam/ORB_SLAM2.
Después de eso, siga la rutina del sitio web oficial. Compilar:
cd ORB_SLAM2
chmod +x build.sh
./build.sh
Los problemas que encontré en el medio fueron:
error: 'usleep' no fue declarado en este ámbito
La solución es: agregar una línea de referencia al archivo .cc correspondiente
#include <unistd.h>
Muchos archivos informan errores. Esta función de biblioteca debe hacer referencia a la mayoría de los archivos .cc en la carpeta src básica y en la carpeta de ejemplos. Básicamente, no se informará ningún error después de cotizar. El resultado de ejecución es:
En este punto, se completa la instalación y compilación. Posteriormente necesitamos descargar el conjunto de datos para su verificación.
2. Descarga y uso del conjunto de datos EuRoC
Aquí nos referimos principalmente a ORB-SLAM y ORB-SLAM2 ejecutándose, ejecutando el conjunto de datos EuRoC y usando EVO para evaluar_Llámame blog-CSDN de Huan Shao y
Ejecute el conjunto de datos EuRoC con orb-slam2 y evalúelo con evo (detalles)_Blog-CSDN de Xiao Wang de Zhazha Blog_orbslam2 Conjunto de datos
Dos artículos. La idea principal es descargar el conjunto de datos y ejecutarlo. El código de ejecución necesita cambiar ligeramente la dirección. La otra instalación básica es la misma que la del sitio web oficial de orbslam2. El pedido en el sitio web oficial es:
./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml PATH_TO_SEQUENCE_FOLDER/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/SEQUENCE.txt
El punto central es que la ruta de los penúltimos datos debe cambiarse por la nuestra.
1. Descargue el conjunto de datos
La dirección del sitio web oficial del conjunto de datos es:
kmavvisualinertialdatasets - Conjuntos de datos ASL
Su interfaz de descarga es:
Simplemente elija uno para descargar. Descargué Machine Hall 05 y 04. Los archivos descomprimidos después de la descarga están todos en una carpeta mav0. Para una fácil identificación, puede crear una carpeta EuRoC y colocarla en ella. La ruta de datos es:/home/nombre de usuario/slam/EuRoC
Nota: La descarga está en formato de conjunto de datos ASL (es posible que necesite el formato de bolsa ros cuando utilice ros más adelante)
En consecuencia, mi camino es:
/home/qianmengyu11/slam/EuRoC/mav0
2. Ejecute el conjunto de datos
Como se mencionó anteriormente, el comando del sitio web oficial es:
./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml PATH_TO_SEQUENCE_FOLDER/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/SEQUENCE.txt
Lo que hay que cambiar son los dos últimos ítems, el penúltimo ítem hay que rellenarlo con nuestra dirección de datos que es:
/home/qianmengyu11/slam/EuRoC/mav0/cam0/data
Dependiendo del paquete de datos que estemos descargando, cambiamos el penúltimo elemento a:
Examples/Monocular/EuRoC_TimeStamps/MH05.txt
Si es la Sala de Máquinas 05, escriba MH05.txt, y si es la Sala de Máquinas 04, escriba MH04.txt.
Para resumir, el comando a ejecutar en la terminal es (aún ubicado en /home/nombredeusuario/slam):
./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml /home/qianmengyu11/slam/EuRoC/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/MH05.txt
3. Resultados de ejecución
El resultado de ejecución es: