Table of Contents

Diagnóstico e correção: jitter de conteúdo

Este artigo trata de jitter, drifting ou saltos de conteúdo virtual no planar image tracking. Ele ajuda desenvolvedores a distinguir jitter normal de jitter anormal e fornece métodos sistemáticos de troubleshooting e melhoria.

Distinguir "jitter normal"

Entender os casos a seguir ajuda a evitar otimização excessiva ou avaliação incorreta:

Deslocamento leve (normal)

  • Comportamento: o conteúdo virtual flutua levemente alguns pixels ou gira lentamente.
  • Cenários:
    • Iluminação desigual, como mudanças de luz e sombra em ambientes internos
    • Auto focus da câmera ou ajuste de exposure
    • Leve tremor da mão segurando o dispositivo, sem fixação por tripé
  • Expectativa: esse tipo de cenário é difícil de evitar e não requer tratamento especial.

Jitter breve (normal)

  • Comportamento: ao mover rapidamente o dispositivo ou a target image, o conteúdo virtual apresenta jitter por 0,5-1 segundos e depois estabiliza.
  • Cenários:
    • Processo de transição de estático para dinâmico
    • Estágio inicial de reconhecimento quando a target image entra no campo de visão
  • Expectativa: pertence ao processo de convergência do algoritmo e é normal se recuperar em pouco tempo.

Jitter de borda (normal)

  • Comportamento: quando a image está na borda do campo de visão da câmera ou próxima de ser perdida, o conteúdo virtual salta levemente.
  • Cenários:
    • A image está parcialmente ocluída, como quando um dedo cobre a borda
    • O campo de visão da câmera se afasta da image
  • Expectativa: é um limite do algoritmo causado pela perda parcial de tracking information. Recomenda-se orientar o usuário a manter a image no centro do campo de visão.

Causas comuns e melhorias para jitter anormal

O jitter a seguir é um problema e precisa de solução direcionada:

Qualidade ruim da target image

Sintoma: o conteúdo virtual apresenta jitter contínuo de alta frequência, salta irregularmente ou desaparece com frequência. Método de troubleshooting:

Sugestões de melhoria:

  • Otimizar a image:
    • Aumentar o contraste local.
    • Evitar áreas de cor sólida e adicionar textura sutil.
    • Evitar texturas repetitivas.

Desempenho insuficiente de hardware

Sintoma: o jitter é mais evidente em dispositivos de baixo desempenho do que em dispositivos médios ou altos, ou o tracking é perdido com mais facilidade. Método de troubleshooting:

  • Verificar uso de CPU: use ferramentas Profiler para monitorar o uso de CPU da aplicação.

Sugestões de melhoria:

  • Ativar performance mode: defina ImageTrackerMode como PreferPerformance, sacrificando pequena precisão em troca de fluidez.
  • Reduzir o número de tracking: se multi-target tracking simultâneo estiver ativado, reduza adequadamente Simultaneous Number.
  • Adaptação por plataforma: forneça scenes simplificadas para dispositivos de baixo desempenho.

Interferência ambiental

Sintoma: jitter ocorre sob iluminação ou background específicos e volta ao normal após trocar o ambiente. Método de troubleshooting:

  • Teste de iluminação: teste separadamente sob iluminação uniforme, como em dia nublado, e em ambiente com forte contraste de luz/sombra.
  • Interferência de background: verifique se o fundo da câmera está muito confuso, como muitas pessoas andando.
  • Interferência de reflexão: verifique se a superfície física da target image reflete luz, como vidro ou metal.

Sugestões de melhoria:

  • Controlar iluminação: recomende que usuários usem em ambiente com iluminação uniforme e evitem luz direta ou sombras fortes.
  • Otimização física: se a image estiver em superfície refletiva, cubra com filme fosco ou faça um objeto físico por impressão.

Jitter local evidente do conteúdo

Sintoma: a scene de conteúdo virtual é grande. O jitter do conteúdo virtual próximo à entidade física da target image é menor, mas o jitter do conteúdo virtual longe da target entity é evidente. Método de troubleshooting:

  • Reduzir conteúdo: reduza uniformemente o Scale do conteúdo virtual na scene e teste novamente no mesmo ambiente e condições.

Sugestões de melhoria:

  • Ajustar o conteúdo adequadamente: conteúdo virtual grande demais amplifica o erro angular na direção distante da target entity. Por exemplo, um erro angular de 0,1° aparece perto como erro de alinhamento virtual-real de 0,1cm, mas é ampliado para 10cm à distância. Ao projetar conteúdo virtual, ajuste adequadamente o tamanho físico do conteúdo virtual em relação à target image.

Resumo e práticas recomendadas

Jitter de conteúdo precisa ser distinguido entre jitter normal e jitter anormal. Jitter normal, como deslocamento leve ou recuperação breve, não requer tratamento especial. Jitter anormal, como saltos de alta frequência ou perda frequente, exige atenção extra porque afeta a experiência do usuário. Recomenda-se troubleshooting nesta ordem:

  1. Verificar a qualidade da target image;
  2. Confirmar se é um fenômeno exclusivo causado pelo desempenho de um dispositivo específico;
  3. Eliminar interferências ambientais, como iluminação, scenes dinâmicas, superfícies refletivas etc.;
  4. Verificar se o próprio conteúdo virtual é grande demais.

Se o problema persistir, forneça log files, gravações de tela e outros materiais pelo fórum oficial EasyAR ou suporte técnico para análise adicional.