Table of Contents

Diagnose and fix: content jitter

This article addresses jitter, drifting, or jumping of virtual content in planar image tracking. It helps developers distinguish normal jitter from abnormal jitter and provides systematic troubleshooting and improvement methods.

Distinguish "normal jitter"

Understanding the following cases helps avoid over-optimization or misjudgment:

Slight displacement (normal)

  • Behavior: virtual content has slight floating of a few pixels or slow rotation.
  • Scenarios:
    • Uneven lighting, such as indoor light and shadow changes
    • Camera auto focus or exposure adjustment
    • Slight hand shake of the device, without tripod fixation
  • Expectation: this type of scenario is hard to avoid and does not require special handling.

Short jitter (normal)

  • Behavior: when moving the device or target image quickly, virtual content jitters for 0.5-1 seconds and then stabilizes.
  • Scenarios:
    • The transition from static to dynamic
    • The initial recognition stage when the target image enters the field of view
  • Expectation: this belongs to the algorithm convergence process and is normal if it recovers within a short time.

Edge jitter (normal)

  • Behavior: when the image is at the edge of the camera field of view or close to being lost, virtual content jumps slightly.
  • Scenarios:
    • The image is partially occluded, such as when a finger covers the edge
    • The camera field of view moves away from the image
  • Expectation: this is an algorithm boundary caused by partial loss of tracking information. It is recommended to guide users to keep the image in the center of the field of view.

Common causes and improvements for abnormal jitter

The following jitter is a problem and needs targeted resolution:

Poor target image quality

Symptom: virtual content continuously jitters at high frequency, jumps irregularly, or disappears frequently. Troubleshooting:

Improvement suggestions:

  • Optimize the image:
    • Increase local contrast.
    • Avoid solid-color areas and add subtle texture.
    • Avoid repetitive textures.

Insufficient hardware performance

Symptom: jitter is more obvious on low-end devices than on mid- to high-end devices, or tracking is easier to lose. Troubleshooting:

  • Check CPU usage: use Profiler tools to monitor the application's CPU usage.

Improvement suggestions:

  • Enable performance mode: set ImageTrackerMode to PreferPerformance, sacrificing a small amount of accuracy for smoothness.
  • Reduce the number of tracked targets: if simultaneous multi-target tracking is enabled, reduce Simultaneous Number appropriately.
  • Adapt by platform: provide simplified scenes for low-end devices.

Environmental interference

Symptom: jitter occurs under specific lighting or background conditions and becomes normal after changing the environment. Troubleshooting:

  • Lighting test: test separately under uniform lighting, such as cloudy weather, and under strong light/shadow contrast.
  • Background interference: check whether the camera background is too cluttered, such as with people walking around.
  • Reflection interference: check whether the physical surface of the target image is reflective, such as glass or metal.

Improvement suggestions:

  • Control lighting: advise users to use the application in an environment with uniform lighting and avoid direct light or strong shadows.
  • Physical optimization: if the image is on a reflective surface, cover it with a matte film or make it into a physical object by printing.

Obvious local jitter of content

Symptom: the virtual content scene is large. Jitter is smaller for virtual content near the physical target image, but obvious for virtual content far away from the target entity. Troubleshooting:

  • Reduce content size: uniformly reduce the Scale of virtual content in the scene, then test again in the same environment and conditions.

Improvement suggestions:

  • Adjust content appropriately: overly large virtual content amplifies angular error in the direction away from the target entity. For example, an angular error of 0.1° appears as a 0.1cm virtual-real alignment error nearby, but is amplified to 10cm in the distance. When designing virtual content, adjust the physical size of the virtual content relative to the target image appropriately.

Summary and best practices

Content jitter needs to be divided into normal jitter and abnormal jitter. Normal jitter, such as slight displacement or quick recovery, does not require special handling. Abnormal jitter, such as high-frequency jumps or frequent loss, requires extra attention because it affects user experience. Troubleshooting is recommended in the following order:

  1. Check target image quality;
  2. Confirm whether it is a unique phenomenon caused by the performance of a specific device;
  3. Eliminate environmental interference, such as lighting, dynamic scenes, reflective surfaces, and so on;
  4. Check whether the virtual content itself is too large.

If the problem persists, provide log files, screen recordings, and other materials through the EasyAR official forum or technical support for further analysis.