A arquitetura do ORB-SLAM3 processa informações visuais através de múltiplos estágios: identificação e rastreamento de pontos característicos, reconstrução de profundidade esparsa, cálculo de poses de câmera e refinamento iterativo do mapa tridimensional. Esta combinação permite equilibrar velocidade de processamento com precisão de localização.
Preparação do Ambiente
O sistema operacional Ubuntu 20.04 apresenta vantagens consideráveis para configuração do ORB-SLAM3. Várias bibliotecas necessárias já estão disponíveis nativamente, reduzindo a necessidade de compilações alternativas e minimizando conflitos de dependências.
Configurações utilizadas nesta implementação:
- Sistema: Ubuntu 20.04 LTS
- ROS: Noetic
- OpenCV: 4.2.0
- Pangolin: 0.6
- Boost: 1.77.0
- Eigen: 3.7
Recomenda-se organizar o ambiente de desenvolvimento criando um diretório de trabalho dedicado. Para integrações com ROS, a estrutura deve seguir o padrão de espaços de trabalho Catkin, com os fontes posicionados no diretório src.
Obtenção do Código Fonte
O repositório oficial encontra-se disponível no GitHub. Para esta implementação, utiliza-se a versão disponível no branch master, especificamente atag 1.0. Utilizadores com conexões mais lentas podem considerar mirror em plataformas alternativas para acelerar o download.
URL do repositório: https://github.com/UZ-SLAMLab/ORB_SLAM3
Instalação de Dependências Fundamentais
O primeiro passo consiste em garantir a presença das ferramentas essenciais de compilação no sistema:
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt-get install git
Configuração do Pangolin
Dependências do Sistema
O Pangolin requer múltiplas bibliotecas de desenvolvimento para funcionamento adequado:
sudo apt install libgl1-mesa-dev
sudo apt install libglew-dev
sudo apt install libpython2.7-dev
sudo apt install pkg-config
sudo apt install libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols
Seleção de Versão
Para esta configuração, utiliza-se a versão 0.6 do Pangolin. A utilização de versões mais recentes pode resultar em erros durante a compilação de módulos ROS, exigindo modificações extensivas no código fonte. Em caso de problemas com versões posteriores, recomenda-se desinstalar completamente e reinstalar a versão epsecificada.
Compilação e Instalação
Após obtener o código fonte do repositório oficial:
git clone https://github.com/stevenlovegrove/Pangolin
cd Pangolin
mkdir build
cd build
cmake ..
make -j4
sudo make install
Verificação da Instalação
Para confirmar instalação bem-scuedida:
cd ../examples/HelloPangolin
./HelloPangolin
A exibição de um cubo tridimensional indica configuração correta do Pangolin.
Configuração do OpenCV
O Ubuntu 20.04 inclui suporte nativo para OpenCV, simplificando consideravelmente este etapa. Para verificar a versão disponível:
pkg-config --modversion opencv4
Caso seja necessária versão específica, a compilação manual permite maior controlo sobre configurações de otimização.
Compilação do ORB-SLAM3
Estrutura de Diretórios
Após extração do código fonte, a estrutura de diretórios apresenta organização específica para módulos principais e exemplos.
Build Padrão
Para compilação sem integração ROS:
cd ORB_SLAM3
chmod +x build.sh
./build.sh
Build com Suporte ROS
Para integração com ROS Noetic:
chmod +x build_ros.sh
./build_ros.sh
Este processo pode requerer ajustes no arquivo de ambiente ROSsetup.bash para reconhecimento correto dos executáveis.
Execução de Testes
Após compilação bem-sucedida, executáveis disponíveis embuild permitem verificação funcional com datasets de teste.
A presente configuração proporciona base sólida para desenvolvimento de aplicações envolvendo localização visual em tempo real, servindo como fundação para projetos de robótica e sistemas autônomos.