Sigmoidal
  • Home
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
Sem Resultado
Ver Todos Resultados
  • English
  • Home
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
Sem Resultado
Ver Todos Resultados
Sigmoidal
Sem Resultado
Ver Todos Resultados

Aplicação do SLAM para criação de mapas 3D: do conceito ao ORB-SLAM3

Carlos Melo por Carlos Melo
agosto 13, 2026
em Tutoriais, Visão Computacional
0
11
VIEWS
Publicar no LinkedInCompartilhar no FacebookCompartilhar no Whatsapp

Como um robô pode construir um mapa de um lugar que ainda não conhece se, ao mesmo tempo, não sabe com precisão onde está? Essa dependência circular é o problema que o Simultaneous Localization and Mapping — SLAM — procura resolver. Em um sistema de SLAM para mapas 3D, cada nova observação atualiza duas estimativas: a trajetória do sensor e uma representação geométrica do ambiente.

O problema aparece quando um drone inspeciona uma estrutura, um robô percorre um galpão ou um dispositivo de realidade aumentada precisa manter objetos virtuais ancorados no mundo físico. Em todos esses casos, a posição do sensor dá sentido ao mapa; o mapa, por sua vez, fornece as referências para localizar o sensor no próximo instante.

Neste artigo, você vai entender a formulação do SLAM, o papel dos pontos de interesse e por que o ORB-SLAM3 se tornou uma referência aberta para SLAM visual e visual-inercial. O foco é conceitual: separar aquilo que o sistema efetivamente estima daquilo que, em outro estágio do pipeline, pode se transformar em uma reconstrução densa ou uma malha 3D.

💻

Código do Artigo

Acesse o código-fonte deste artigo gratuitamente.

Informe seu email para acessar o código:

✓ Seu código está pronto!

Abrir no Google Colab →

SLAM para mapas 3D: o que significa localizar e mapear?

Considere uma câmera em movimento dentro de uma sala. Em cada instante, ela registra uma projeção bidimensional da cena. O SLAM precisa inferir a pose da câmera — posição e orientação — e associar observações repetidas a pontos do mundo. Esses pontos, chamados de landmarks ou pontos de mapa, formam uma referência compartilhada entre os quadros.

Se a pose estivesse conhecida, reconstruir pontos 3D a partir de várias vistas seria um problema de geometria multivista. Se o mapa estivesse pronto e confiável, localizar a câmera seria um problema de correspondência entre a imagem atual e essa referência. No SLAM, nenhuma das duas informações é dada: ambas precisam ser refinadas juntas.

Essa é a mesma razão pela qual a geometria de câmera é central para visão computacional. A projeção transforma uma cena 3D em uma imagem 2D e perde informação de profundidade. Ao observar a cena de posições diferentes e encontrar correspondências consistentes, o sistema recupera restrições suficientes para estimar movimento e estrutura. Vale revisar os fundamentos da formação de imagens antes de avançar para a implementação.

Do vídeo ao mapa: quais são as etapas fundamentais?

Um sistema visual de SLAM não trata todos os pixels como evidência igualmente útil. Ele procura regiões que possam ser reconhecidas novamente: cantos, texturas e detalhes locais. No caso do ORB-SLAM3, essas regiões são descritas por features ORB (Oriented FAST and Rotated BRIEF), escolhidas por serem eficientes e robustas a rotações no plano da imagem.

O fluxo pode ser resumido em quatro movimentos interdependentes:

  1. Extrair e associar features: o sistema detecta pontos de interesse e procura correspondências entre a imagem atual, os keyframes e o mapa existente.
  2. Estimar a pose: com essas correspondências, calcula a posição e a orientação mais coerentes para a câmera naquele instante.
  3. Atualizar o mapa local: novos keyframes permitem triangular novos pontos e refinar, por otimização, as poses e os landmarks que compartilham observações.
  4. Reconhecer revisitas: quando o sensor retorna a uma região já observada, o fechamento de loop corrige o acúmulo de erro e torna o mapa globalmente mais consistente.

Os keyframes são decisivos porque não é necessário guardar cada quadro de um vídeo com o mesmo peso. Eles são imagens selecionadas para preservar observações geometricamente úteis. A triangulação de features vistos de posições distintas produz pontos 3D; a otimização conjunta das poses e desses pontos é conhecida como bundle adjustment.

Diagrama do fluxo do ORB-SLAM3, de câmera e IMU às features ORB, à estimativa de pose por keyframes e ao mapa 3D esparso com fechamento de loop

Fluxo ilustrado de uma configuração visual-inercial. O ORB-SLAM3 também suporta configurações somente visuais; em ambos os casos, o resultado central é a estimativa conjunta de trajetória e mapa esparso.

O que o ORB-SLAM3 acrescenta a esse fluxo?

O artigo original do ORB-SLAM3 apresenta uma biblioteca aberta baseada em features para SLAM visual, visual-inercial e com múltiplos mapas. A implementação oficial suporta câmeras monoculares, estéreo e RGB-D; nas configurações visual-inerciais, incorpora também medições de uma IMU. Há suporte a modelos de lente pinhole e fisheye.

Essa variedade importa porque cada sensor resolve e introduz ambiguidades diferentes. Uma câmera monocular em movimento explora paralaxe, mas não recupera escala métrica absoluta sem informação adicional. Uma configuração estéreo ou RGB-D fornece pistas diretas de profundidade. Nos modos monocular-inercial e estéreo-inercial, a IMU acrescenta acelerações e velocidades angulares, mas exige boa calibração entre câmera e sensor inercial, sincronização temporal e movimento suficiente para a inicialização.

Outro componente característico é o Atlas, a estrutura de múltiplos mapas. Quando a informação visual se degrada por tempo suficiente e o rastreamento se perde, o sistema pode iniciar um novo mapa. Ao reconhecer depois uma área já mapeada, ele busca relacionar e fundir essas representações. Não é uma garantia contra qualquer falha; é um mecanismo para preservar e reutilizar informação ao longo de sessões e revisitas.

É importante também corrigir uma simplificação comum: ORB-SLAM3 é um método baseado em features, não uma combinação de método direto com método baseado em features. A biblioteca estima geometria a partir de pontos ORB, associações, modelos de câmera e otimização. Essa escolha ajuda a entender tanto sua eficiência quanto suas limitações em cenas com pouca textura ou repetição visual.

Por que o mapa do ORB-SLAM3 é esparso — e por que isso não é um defeito?

Quando se fala em “mapa 3D”, é fácil imaginar uma superfície contínua, com paredes, móveis e texturas prontas para visualização. O mapa de um sistema como ORB-SLAM3 normalmente tem outra finalidade: apoiar a localização robusta e manter restrições geométricas consistentes. Ele é composto, sobretudo, por poses de câmera, keyframes e pontos de mapa observados em várias imagens.

Essa representação esparsa é suficiente para muitas tarefas de robótica e realidade aumentada. Para medir cada superfície, gerar uma malha ou criar novas vistas fotorrealistas, é preciso acrescentar etapas e representações diferentes, como fotogrametria densa, Multi-View Stereo, NeRF ou Gaussian Splatting. A reconstrução 3D com Gaussian Splatting é um bom contraponto: ela procura uma representação para renderização de alta qualidade, enquanto o SLAM prioriza localizar o sensor e construir uma estrutura geométrica útil para esse objetivo.

Na prática, os dois mundos podem se encontrar. Um sistema de SLAM pode fornecer poses iniciais ou uma trajetória para um pipeline de reconstrução; um pipeline de reconstrução densa pode aproveitar a coleta organizada por uma plataforma robótica. Mas não convém tratá-los como sinônimos: localização, mapa esparso, nuvem densa, malha e representação neural respondem a requisitos distintos.

Quais condições mais afetam um sistema de SLAM?

O desempenho não depende apenas do algoritmo. A qualidade das observações e do protocolo de aquisição define se as correspondências geométricas serão confiáveis. Alguns fatores merecem atenção desde o planejamento:

  • Textura e iluminação: paredes uniformes, reflexos, pouca luz e variações bruscas de exposição reduzem a estabilidade das features.
  • Movimento e desfoque: rotações rápidas e motion blur diminuem a quantidade de pontos correspondentes entre quadros.
  • Estruturas repetitivas: corredores, janelas semelhantes e prateleiras podem induzir associações equivocadas.
  • Objetos dinâmicos: pessoas, veículos e elementos móveis não pertencem a um mapa estático e podem contaminar a estimativa.
  • Calibração e sincronização: em sistemas visual-inerciais, parâmetros intrínsecos e extrínsecos, além do alinhamento temporal, têm efeito direto sobre a estimativa de pose.

Por isso, a preparação de dados não começa no treinamento de uma rede neural. Ela começa na compreensão do sensor, da geometria e das hipóteses do algoritmo. A detecção e a associação de pontos repetíveis formam a etapa que antecede essas correspondências geométricas — tema que será aprofundado em um artigo complementar quando ele estiver publicado.

Como avançar da teoria para a primeira execução?

O melhor próximo passo não é adaptar um repositório ao acaso, mas estabelecer um ambiente reprodutível, uma calibração válida e um conjunto de dados compatível com a configuração escolhida. O tutorial de instalação e execução do ORB-SLAM3 reúne esse percurso e aponta para o notebook de apoio.

Ao estudar o código, use uma pergunta simples para orientar cada componente: ele está ajudando a localizar o sensor, a mapear a cena ou a corrigir a consistência do que já foi estimado? Essa distinção evita que o SLAM seja percebido como uma caixa-preta e aproxima o leitor da lógica geométrica que sustenta os sistemas de navegação e visão espacial.

Para uma leitura direta da implementação, o repositório oficial do ORB-SLAM3 documenta as configurações de sensores, dependências e exemplos de execução. Antes de usar a biblioteca em um produto, atenção: o projeto é distribuído sob licença GPLv3, e usos fechados exigem avaliar cuidadosamente a licença e as alternativas disponíveis.

Takeaways

  • SLAM estima duas coisas de forma acoplada: a pose do sensor e um mapa do ambiente são refinados a partir das mesmas observações.
  • ORB-SLAM3 é baseado em features: pontos ORB, keyframes, geometria multivista e otimização sustentam o rastreamento e o mapeamento.
  • O mapa é predominantemente esparso: ele representa trajetórias e pontos de referência, não uma malha densa pronta para visualização.
  • Sensores e aquisição importam: textura, movimento, objetos dinâmicos, calibração e sincronização definem a qualidade das estimativas.
  • SLAM e reconstrução densa se complementam: podem fazer parte do mesmo sistema, mas atendem a objetivos técnicos diferentes.

Referências

  • Campos, C.; Elvira, R.; Gómez Rodríguez, J. J.; Montiel, J. M. M.; Tardós, J. D. ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM. IEEE Transactions on Robotics, 2021.
  • Repositório oficial UZ-SLAMLab/ORB_SLAM3.
CompartilharCompartilharEnviar
Post Anterior

Modelos de Árvore em Machine Learning: Guia Completo

Próximo Post

Data Science para Drones

Carlos Melo

Carlos Melo

Engenheiro de Visão Computacional graduado em Ciências Aeronáuticas pela Academia da Força Aérea (AFA) e Mestre em Engenharia Aeroespacial pelo Instituto Tecnológico de Aeronáutica (ITA).

Relacionado Artigos

Data Science

Data Science para Drones

por Carlos Melo
agosto 13, 2026
Machine Learning

Modelos de Árvore em Machine Learning: Guia Completo

por Carlos Melo
julho 16, 2026
Data Science

Imputação de Dados Ausentes com Scikit-Learn

por Carlos Melo
julho 9, 2026
Machine Learning

Pipelines no Scikit-Learn: Transformações sem Data Leakage

por Carlos Melo
julho 6, 2026
Data Science

Binary Cross-Entropy e Regressão Logística do Zero

por Carlos Melo
junho 1, 2026

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Últimos dias para o Curso de Inteligência Artificial para Drones Últimos dias para o Curso de Inteligência Artificial para Drones Últimos dias para o Curso de Inteligência Artificial para Drones

Mais Populares

  • Cientista de Dados: Salário em 2026 (Júnior, Pleno e Sênior)

    99 compartilhamentos
    Compartilhar 40 Tweet 25
  • Geometria da Formação de Imagens: Matrizes, Transformações e Sistemas de Coordenadas

    445 compartilhamentos
    Compartilhar 178 Tweet 111
  • Fundamentos da Formação da Imagem

    213 compartilhamentos
    Compartilhar 85 Tweet 53
  • Introdução ao MediaPipe e Pose Estimation

    575 compartilhamentos
    Compartilhar 230 Tweet 144
  • ORB-SLAM 3: Tutorial Completo para Mapeamento 3D e Localização em Tempo Real

    484 compartilhamentos
    Compartilhar 194 Tweet 121
  • Em Alta
  • Comentários
  • Mais Recente
Como Tratar Dados Ausentes com Pandas

Como Tratar Dados Ausentes com Pandas

agosto 13, 2019
Introdução ao MediaPipe e Pose Estimation

Introdução ao MediaPipe e Pose Estimation

julho 15, 2023
Como usar o DALL-E 2 para gerar imagens a partir de textos

Como usar o DALL-E 2 para gerar imagens a partir de textos

dezembro 25, 2022

ORB-SLAM 3: Tutorial Completo para Mapeamento 3D e Localização em Tempo Real

abril 10, 2023
Como Analisar Ações da Bolsa com Python

Como Analisar Ações da Bolsa com Python

15
Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

Setembro Amarelo: Análise do Suicídio no Brasil, com Data Science

13
Como Aprender Data Science?

Como Aprender Data Science?

9
Qual o Cenário de Data Science no Brasil hoje?

Qual o Cenário de Data Science no Brasil hoje?

8

Aplicação do SLAM para criação de mapas 3D: do conceito ao ORB-SLAM3

agosto 13, 2026

Data Science para Drones

agosto 13, 2026

Modelos de Árvore em Machine Learning: Guia Completo

julho 16, 2026

Análise de ECG com Python: do sinal ao diagnóstico automático

julho 13, 2026
Instagram Youtube LinkedIn Twitter
Sigmoidal

O melhor conteúdo técnico de Data Science, com projetos práticos e exemplos do mundo real.

Seguir no Instagram

Categorias

  • Aeroespacial
  • Artigos
  • Blog
  • Carreira
  • Cursos
  • Data Science
  • Deep Learning
  • Destaques
  • Entrevistas
  • IA Generativa
  • Livros
  • Machine Learning
  • Notícias
  • Python
  • Sinais Biomédicos
  • Teoria
  • Tutoriais
  • Visão Computacional
  • Youtube

Navegar por Tags

algebra-linear camera calibration carreira chatgpt cientista de dados cnn computer vision Cursos dados desbalanceados data science data science na prática decision tree deep learning deploy detecção de objetos gradient descent IA generativa inteligência artificial jupyter kaggle keras livros machine learning matplotlib openai opencv pandas profissão python pytorch random forest reconstrução 3d redes neurais redes neurais convolucionais regressão linear regressão logística salário scikit-learn sklearn tensorflow tutorial visão computacional vídeo youtube árvore de decisão

© 2024 Sigmoidal - Aprenda Data Science, Visão Computacional e Python na prática.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In

Add New Playlist

Sem Resultado
Ver Todos Resultados
  • Home
  • Pós-Graduação
  • Blog
  • Sobre Mim
  • Contato
  • English

© 2024 Sigmoidal - Aprenda Data Science, Visão Computacional e Python na prática.