Back to All
Developer Blog

GPU Motion Estimation: Improved Handling of Repeating Patterns

Qualcomm-image

Estimating Motion in Images

Image based motion estimation is a class of techniques which analyze sequential image frames and determine how each region of an image moves from one frame to the next. Being able to track object movement between image frames has a broad range of applications and use cases, including SpaceWarp-style frame extrapolation, used in gaming and spatial computing devices to improve the smoothness of the digital experience. Our Adreno Motion Engine support, powered by the Qualcomm Adreno GPU, has been previously covered here .

Aperture issue

One common challenge motion estimation can face is a phenomenon known as the aperture issue. As the tracking of motion relies on matching corresponding features between two images. If the content in a local region is dominated by strong or bold lines, the line feature tends to dominate the scoring of feature matches. This is problematic as the line is often nearly identical at any point along its length, causing it to be challenging for algorithms to determine exactly which point along the line is the true motion match and which points are simply very similar. The dominant nature of the line feature makes it difficult for fainter features and texture to provide a strong enough indication of the true motion to compete with the line content.

When this issue arises incorrect motion vectors can be produced, and when those incorrect motion vectors are used to perform frame extrapolation, there are jittery or jumpy artifacts where parts of the image along these lines moves in sporadic ways unrelated to the true motion in the scene.

Detect and Correct

Our Adreno Motion Engine has been improved to specifically target these aperture issues. During the process of performing motion estimation, we have interwoven algorithms which are able to detect these problematic areas and correct the erroneous motion. This interlocked solution eliminates the issue early, preventing the incorrect vectors from impacting the overall motion estimation during later stages of the pipeline and resolving the issue without needing applications or platforms to perform any additional post-processing passes over the data. The detection and correction is highly efficient, requiring only 5% additional cycles compared to the original solution.

GPU Motion Estimation

Mar 19, 2024 | 0:08

Video Player is loading.
Current Time 0:00
Duration 0:08
Loaded: 76.67%
Stream Type LIVE
Remaining Time 0:08
 
1x
  • Chapters
  • descriptions off, selected
  • captions off, selected
  • default, selected

Left: Note the jittery motions along the dark lines. Right: Extrapolated frames are stable and track the true motion using Qualcomm’s improved motion estimation.

GPU Motion Estimation

Mar 19, 2024 | 0:12

Video Player is loading.
Current Time 0:00
Duration 0:12
Loaded: 50.67%
Stream Type LIVE
Remaining Time 0:12
 
1x
  • Chapters
  • descriptions off, selected
  • captions off, selected
  • default, selected

Visualization of the improvements.

Conclusion

The enhancements made to Qualcomm’s Adreno Motion Engine bring a significant improvement in the quality of motion vectors and the visual quality of solutions such as frame extrapolation which are driven by them. Our customers in fields ranging from gaming to spatial computing and XR now benefit from the improvements, providing higher quality experiences to their users.

For a showcase example of the Adreno Motion Engine enabling high-quality frame extrapolation check out Virtual Desktop’s Synchronous Spacewarp feature, which includes these enhancements from v1.30.3 at https://vrdesktop.net

Interested in learning more about the Snapdragon XR2? Be sure to check out the Snapdragon XR2 HMD Reference Design.

For additional reading, check out our VR and Gaming Graphics blogs on Developer blog. You can also join our Developer Community on Discord to connect with fellow developers.

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries ("Qualcomm"). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.

About the Author
Sam Holmes
Sam Holmes
Qualcomm relentlessly innovates to deliver intelligent computing everywhere, helping the world tackle some of its most important challenges. Our leading-edge AI, high performance, low-power computing, and unrivaled connectivity deliver proven solutions that transform major industries. At Qualcomm, we are engineering human progress.

Stay connected

Get the latest Qualcomm and industry information delivered to your inbox.

Subscribe
Manage your subscription

© Qualcomm Technologies, Inc. and/or its affiliated companies.

Snapdragon and Qualcomm branded products are products of Qualcomm Technologies, Inc. and/or its subsidiaries. Qualcomm patented technologies are licensed by Qualcomm Incorporated.

Note: Certain services and materials may require you to accept additional terms and conditions before accessing or using those items.

References to "Qualcomm" may mean Qualcomm Incorporated, or subsidiaries or business units within the Qualcomm corporate structure, as applicable.

Qualcomm Incorporated includes our licensing business, QTL, and the vast majority of our patent portfolio. Qualcomm Technologies, Inc., a subsidiary of Qualcomm Incorporated, operates, along with its subsidiaries, substantially all of our engineering, research and development functions, and substantially all of our products and services businesses, including our QCT semiconductor business.

Materials that are as of a specific date, including but not limited to press releases, presentations, blog posts and webcasts, may have been superseded by subsequent events or disclosures.

Nothing in these materials is an offer to sell or license any of the services or materials referenced herein.