Table of Contents

Rastreamento de plano combinado com rastreamento de movimento

Este artigo explica como integrar o rastreamento de imagem planar com o rastreamento de movimento do dispositivo para melhorar a estabilidade de rastreamento e a experiência do usuário em cenários complexos. Aborda princípios fundamentais, resultados esperados e análise de problemas potenciais.

Princípios básicos

Fusão de movimento (Motion Fusion) combina dados de pose (posição e rotação) do rastreamento visual planar com dados de pose do rastreamento de movimento do dispositivo, alcançando estimativas de pose mais robustas. Fluxo principal:

Sincronização e complementaridade de dados

  • Rastreamento visual: Calcula a pose do frame atual através do casamento de pontos característicos da imagem, mas é vulnerável a oclusão, desfoque ou movimento rápido.
  • Rastreamento de movimento: Utiliza sensores IMU com alta frequência de saída combinados com dados visuais para obter o movimento do dispositivo, mas acumula erro de deriva.
  • Mecanismo de fusão:
    • Alinha os sistemas de coordenadas das poses do rastreamento visual e do rastreamento de movimento.
    • Com imagem-alvo visível e movimento estável: prioriza o rastreamento visual. Envia continuamente poses visuais para o módulo de fusão para correção, reduzindo deriva acumulada.
    • Quando a imagem-alvo é perdida, ocupa área muito pequena ou há movimento rápido: rastreamento visual falha, prioriza rastreamento de movimento. Prediz poses fundidas baseadas na pose atual de rastreamento de movimento.

Pontos técnicos-chave

  • Alinhamento de timestamp: Sincroniza timestamps de frames visuais com dados de rastreamento de movimento para evitar tremores por latência.
  • Alinhamento de sistemas de coordenadas: Alinha trajetórias do rastreamento visual e de movimento.
  • Relocalização: Ao reaparecer a imagem, o rastreamento visual retoma rapidamente corrigindo erros acumulados, "puxando" o objeto virtual para a posição correta.

Cenários aplicáveis e limitações

A fusão de movimento não é adequada para todos os cenários. Não é aplicável se:

Em outros cenários, a fusão de movimento melhora significativamente a experiência de rastreamento planar, incluindo:

  • Movimento rápido: Movimento brusco do dispositivo causa desfoque e falha no rastreamento visual.
  • Oclusão temporária: Mantém objetos virtuais estáveis mesmo quando o alvo sai do campo de visão ou é ocultado (ex: por pessoas).
  • Distância do alvo: Rastreamento contínuo mesmo com imagem-alvo ocupando área mínima na tela.
  • Baixa luminosidade: Sustenta a experiência quando desempenho visual degrada.

Resultados e expectativas

Em cenários adequados, fusão de movimento oferece experiência mais estável e suave que rastreamento planar isolado.

Efeitos ideais

  • Rastreamento estável: Objetos virtuais sem tremores ou saltos.
  • Transição suave: Mudança contínua e natural de poses durante falha visual.
  • Resiliência: Objetos virtuais permanecem sincronizados durante oclusão, movimento rápido ou perda do alvo.

Casos problemáticos e soluções

Fenômeno Causa Percepção do usuário Solução
Não ativação inicial Inicialização do rastreamento de movimento requer tempo Conteúdo desaparece inicialmente UI indicando inicialização em andamento
Deriva acentuada Acúmulo de erro sistêmico sem correção visual prolongada Objeto virtual desvia da posição Reduzir tempo de oclusão ou adicionar dicas de relocalização
Queda de desempenho Execução prolongada de ambos os módulos Queda de FPS ou travamentos Comportamento esperado; desative via API se necessário

Método de validação

Teste em cenário real com dispositivo compatível:

  1. Aponte para a imagem, confirme objeto estável.
  2. Oculte a imagem por 2s movendo o dispositivo; observe movimento suave do objeto virtual.
  3. Remova a oclusão; verifique correção rápida sem saltos.

Conclusão e melhores práticas

A fusão de movimento aumenta significativamente a robustez do rastreamento planar, mas requer suporte de hardware e desempenho adequado. Desenvolvedores devem ativar seletivamente conforme dispositivos-alvo e oferecer fallback para dispositivos limitados.

APIs para ativar/desativar fusão em tempo real: