Table of Contents

EasyAR plane detection

EasyAR plane detection é uma funcionalidade que, enquanto o EasyAR motion tracker está em execução, detecta automaticamente superfícies horizontais ou verticais no ambiente, fornecendo recursos como colocação de objetos virtuais.

Princípios da detecção de planos do EasyAR

A detecção de planos (Plane Detection) do EasyAR é uma capacidade simples de compreensão ambiental realizada automaticamente durante a execução do motion tracker do EasyAR. O sistema modela continuamente o ambiente real usando informações espaciais e temporais obtidas da câmera do dispositivo e sensores inerciais, identificando e rastreando superfícies horizontais e verticais para fornecer suporte básico ao posicionamento de objetos virtuais, alinhamento interativo e compreensão espacial.

planedetection

O fluxo específico é:

  1. Rastreamento de movimento

    Durante a execução do motion tracker, o EasyAR obtém continuamente dois tipos de dados principais: frames de imagem consecutivos da câmera RGB e dados do acelerômetro e giroscópio. Através de algoritmos de fusão visual-inercial, o sistema estima a posição e orientação contínuas de seis graus de liberdade (6DoF) do dispositivo no sistema de coordenadas mundial, fornecendo uma trajetória de câmera estável e de baixa deriva para modelagem espacial e análise de planos subsequentes.

  2. Detecção de pontos característicos e triangulação

    Baseando-se na estimativa de pose, o EasyAR extrai e rastreia pontos característicos visuais estáveis (como cantos ou regiões de textura proeminente) da sequência de imagens. Através de métodos de geometria multivista, esses pontos são triangulados para recuperar suas posições no espaço 3D, formando uma nuvem de pontos local representando o ambiente 3D.

  3. Geração de regiões candidatas a planos

    Após obter a nuvem de pontos 3D, o sistema realiza análise geométrica para descobrir conjuntos de pontos que provavelmente pertencem ao mesmo plano. Relacionando-se com a direção da gravidade, o sistema pode distinguir diferentes tipos de candidatos a plano:

    • Plano horizontal: vetor normal aproximadamente paralelo à direção da gravidade (ex: chão, mesa);
    • Plano vertical: vetor normal aproximadamente perpendicular à direção da gravidade (ex: parede, pilar).
  4. Rastreamento e detecção de planos

    O EasyAR valida e atualiza os planos detectados em frames consecutivos:

    • Avalia se novos pontos 3D observados suportam o modelo de plano existente;
    • Ajusta dinamicamente a extensão, limites e confiança do plano com base na consistência das observações;
    • Descarta candidatos a planos temporários ou instáveis. Um resultado só é considerado um "plano disponível" quando a consistência geométrica e a estabilidade temporal atendem aos requisitos.
  5. Sistema de coordenadas do plano e alinhamento de conteúdo virtual

    Uma vez confirmado um plano, você pode implementar efeitos AR mais realistas:

    • Colocar objetos virtuais no plano, garantindo alinhamento de escala e orientação real;
    • Realizar testes de interseção (Hit Test), mapeando toques na tela para posições no plano real;
    • Implementar lógicas de interação baseadas em planos, como adesão de objetos, movimentação e verificação de oclusão.

Como os planos compartilham o mesmo sistema de coordenadas mundial do motion tracker, os objetos virtuais mantêm consistência espacial estável e contínua mesmo quando o usuário move o dispositivo.

A detecção de planos depende da pose estável e da estrutura espacial fornecidas pelo motion tracker. Por sua vez, os resultados da detecção de planos podem melhorar a capacidade de compreensão ambiental, auxiliando no posicionamento de conteúdo e design de interações. Juntos, eles formam a base central da percepção espacial do EasyAR, mas são arquitetonicamente desacoplados: a detecção de planos não altera os resultados de estimativa de pose do motion tracker.

Melhores práticas

Para garantir a eficácia da detecção de planos, siga estas práticas para melhorar a experiência do usuário:

  • Oriente o usuário a se mover lentamente, evitando ficar parado, mover-se rapidamente ou girar no mesmo lugar.
  • Evite superfícies sem textura, monocromáticas, espelhadas ou outras superfícies visualmente difíceis de identificar.
Nota

A detecção de planos é a funcionalidade do EasyAR para identificar superfícies horizontais ou verticais no ambiente. O surface tracking não detecta nem reconhece estruturas planas na cena, sendo necessário diferenciá-los.

Leitura adicional