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:
- Verificação de recognition score: use a target image detection tool para verificar o recognition score.
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
ImageTrackerModecomoPreferPerformance, 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
Scaledo 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:
- Verificar a qualidade da target image;
- Confirmar se é um fenômeno exclusivo causado pelo desempenho de um dispositivo específico;
- Eliminar interferências ambientais, como iluminação, scenes dinâmicas, superfícies refletivas etc.;
- 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.