IP Library Granted Patent US 12,367,648
Granted Patent B2
US 12,367,648 · App. 18/313,042 · Granted Jul 22, 2025

Optimizing image offloading in edge-assisted augmented reality

Inventors: Dell Lawrence Wolfensparger (Seaview, WA); Viviane Espinoza McLandrich (Denver, CO); Christopher Glen Turner (Aurora, CO); Yu Charlie Hu (West Lafayette, IN); Zhaoning Kong (West Lafayette, IN); Pranab Dash (West Lafayette, IN)
Assignee: Charter Communications Operating, LLC
G06T19/006G06V10/761
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,367,648
App. No.
18/313,042
Granted
Jul 22, 2025
Kind
B2
Abstract

An offloading schedule for offloading image frames that are to be generated by an AR device in a subsequent time period is determined, the offloading schedule identifying certain image frames generated in the subsequent time period that are to be offloaded and certain image frames generated in the subsequent time period that are not to be offloaded, the offloading schedule being selected from a plurality of offloading schedules based on a tracking stride of the offloading schedule. The AR device sends to a computing device at least some of the image frames generated in the subsequent time period in accordance with the offloading schedule.

Claims (50)

1. A method comprising:

determining, by an augmented reality (AR) device, a first offloading schedule for offloading image frames that are to be generated by the AR device in a first subsequent time period, the first offloading schedule identifying certain image frames generated in the first subsequent time period that are to be offloaded and certain image frames generated in the first subsequent time period that are not to be offloaded, the first offloading schedule being selected from a first plurality of offloading schedules based on a tracking stride of the first offloading schedule; and

sending, by the AR device to a computing device, at least some of the image frames generated in the first subsequent time period in accordance with the first offloading schedule.

2. The method of claim 1 wherein the tracking stride identifies a frame difference between a most recently generated image frame and a most recent previous image frame for which the AR device has received image processing results from the computing device.

3. The method of claim 1 further comprising:

determining, by the AR device, the first offloading schedule based on an uplink transfer time (UTT) for an image frame to be communicated from the AR device to the computing device, a downlink transfer time (DTT) for image processing results generated by the computing device based on the image frame to be communicated from the computing device to the AR device, an image processing time for the computing device to process the image frame to generate the image processing results, and a camera frame rate of the AR device.

4. The method of claim 3 further comprising:

sending, by the AR device to the computing device, a first image frame for image processing;

storing, by the AR device, a send timestamp that identifies a time at which the first image frame was sent to the computing device;

receiving, by the AR device, image processing results from the computing device based on the first image frame, the image processing results comprising a start processing timestamp that identifies a start time of image processing by the computing device, a finish processing timestamp that identifies a finish time of the image processing by the computing device;

determining, by the AR device, a receive timestamp that identifies a time that the image processing results were received by the AR device; and

determining the UTT, the DTT, and the image processing time of the first image frame based on the send timestamp, the start processing timestamp, the finish processing timestamp, and the receive timestamp.

5. The method of claim 4 further comprising:

determining, by the AR device, the UTT, the DTT, and the image processing time of the first image frame periodically during a continuous AR session.

6. The method of claim 4 further comprising:

determining, by the AR device, the UTT, the DTT, and the image processing time each time the AR device sends an image frame to the computing device for image processing.

7. The method of claim 4 further comprising:

determining, by the AR device, the UTT, the DTT, and the image processing time based on corresponding moving window averages of consecutively determined UTTs, DTTs, and image processing times.

8. The method of claim 1 further comprising:

wherein determining the first offloading schedule further comprises:

determining, based on an uplink transfer time (UTT) for an image frame to be communicated from the AR device to the computing device, a downlink transfer time (DTT) for image processing results generated by the computing device based on the image frame to be communicated from the computing device to the AR device, an image processing time for the computing device to process the image frame to generate the image processing results, and a camera frame rate of the AR device, a plurality of offloading schedules; and

selecting the first offloading schedule from the plurality of offloading schedules based on the tracking stride of the first offloading schedule.

9. The method of claim 8 wherein selecting the first offloading schedule from the plurality of offloading schedules based on the tracking stride of the first offloading schedule further comprises:

analyzing a subset of the plurality of offloading schedules;

determining a tracking stride of each offloading schedule in the subset of the plurality of offloading schedules; and

selecting the first offloading schedule in response to the first offloading schedule having a lowest tracking stride of each offloading schedule in the subset of the plurality of offloading schedules.

10. The method of claim 9 wherein the plurality of offloading schedules is greater than 250,000 offloading schedules.

11. The method of claim 9 wherein analyzing the subset of the plurality of offloading schedules comprises randomly selecting the subset of the plurality of offloading schedules from the plurality of offloading schedules.

12. The method of claim 8 wherein T-inf equals the image processing time of the computing device divided by an image frame interval of the AR device, and wherein prior to selecting the first offloading schedule from the first plurality of offloading schedules based on the tracking stride of the first offloading schedule, pruning the first plurality of offloading schedules to remove each offloading schedule that offloads two image frames that are less than T-inf frames apart at any point in the offloading schedule, and pruning the first plurality of offloading schedules to remove each offloading schedule that offloads two image frames that are more than T-inf frames apart at any point in the offloading schedule.

13. The method of claim 8 further comprising:

generating, by the AR device based on the image processing results, AR imagery comprising real-world imagery depicting a real-world scene within a field of view of a camera of the AR device, and computer-generated imagery depicting an object not in the real-world scene.

14. The method of claim 1 wherein sending, by the AR device to the computing device, the at least some of the image frames generated in the first subsequent time period in accordance with the first offloading schedule comprises sending, by the AR device to the computing device, the at least some of the image frames generated in the first subsequent time period in accordance with the first offloading schedule via a cellular network.

15. The method of claim 1 further comprising:

prior to generation of each image frame in the first subsequent time period, determining, by the AR device, a second offloading schedule for offloading image frames that are to be generated by the AR device in a second subsequent time period, the second subsequent time period overlapping the first subsequent time period, the second offloading schedule identifying certain image frames generated in the second subsequent time period that are to be offloaded and certain image frames generated in the second subsequent time period that are not to be offloaded, the second offloading schedule being selected from a second plurality of offloading schedules based on a tracking stride of the second offloading schedule; and

sending, by the AR device to the computing device, at least some of the image frames generated in the second subsequent time period in accordance with the second offloading schedule.

16. An augmented reality (AR) device, comprising:

a camera;

a memory; and

a processor device coupled to the memory and the camera and being operable to:

determine a first offloading schedule for offloading image frames that are to be generated by the AR device in a first subsequent time period, the first offloading schedule identifying certain image frames generated in the first subsequent time period that are to be offloaded and certain image frames generated in the first subsequent time period that are not to be offloaded, the first offloading schedule being selected from a first plurality of offloading schedules based on a tracking stride of the first offloading schedule; and

send, to a computing device, at least some of the image frames generated in the first subsequent time period in accordance with the first offloading schedule.

17. The AR device of claim 16 wherein the tracking stride identifies a frame difference between a most recently generated image frame and a most recent previous earlier image frame for which the AR device has received image processing results from the computing device.

18. The AR device of claim 16 wherein the processor device is further operable to:

determine the first offloading schedule based on an uplink transfer time (UTT) for an image frame to be communicated from the AR device to the computing device, a downlink transfer time (DTT) for image processing results generated by the computing device based on the image frame to be communicated from the computing device to the AR device, an image processing time for the computing device to process the image frame to generate the image processing results, and a camera frame rate of the AR device.

19. The AR device of claim 16 wherein to determine the first offloading schedule, the processor device is further operable to:

determine, based on an uplink transfer time (UTT) for an image frame to be communicated from the AR device to the computing device, a downlink transfer time (DTT) for image processing results generated by the computing device based on the image frame to be communicated from the computing device to the AR device, an image processing time for the computing device to process the image frame to generate the image processing results, and a camera frame rate of the AR device, a plurality of offloading schedules; and

select the first offloading schedule from the plurality of offloading schedules based on the tracking stride of the first offloading schedule.

20. A non-transitory computer-readable storage medium that includes executable instructions configured to cause a processor device of an augmented reality (AR) device to:

determine a first offloading schedule for offloading image frames that are to be generated by the AR device in a first subsequent time period, the first offloading schedule identifying certain image frames generated in the first subsequent time period that are to be offloaded and certain image frames generated in the first subsequent time period that are not to be offloaded, the first offloading schedule being selected from a first plurality of offloading schedules based on a tracking stride of the first offloading schedule; and

send, to a computing device, at least some of the image frames generated in the first subsequent time period in accordance with the first offloading schedule.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2023
From: WOLFENSPARGER, DELL LAWRENCE; MCLANDRICH, VIVIANE ESPINOZA; TURNER, CHRISTOPHER GLEN; HU, YU CHARLIE; KONG, ZHAONING; DASH, PRANAB
To: CHARTER COMMUNICATIONS OPERATING, LLC
Reel/Frame 063554/0730 →
Continuity (1)
Related Publication 20240371111A1 · Nov 7, 2024
References Cited (15)
US 11800404B1 · Yang · 2023 [cited by examiner]
US 20090097764A1 · Sung · 2009 [cited by applicant]
US 20190356905A1 · Godard et al. · 2019 [cited by applicant]
US 20210110191A1 · Gruteser · 2021 [cited by examiner]
US 20230326204A1 · Meng · 2023 [cited by examiner]
Author Unknown, “Fundamental concepts,” ARCore, https://developers.google.com/ar/develop/fundamentals, 2022, 5 pages. [cited by applicant]
Author Unknown, “Mobile AR market revenue worldwide 2021-2026”, Retrieved from internet: /https://www.statista.com/statistics/282453/mobile-augmented realitymarket-size/, Aug. 18, 2022, 3 pages. [cited by applicant]
Barron et al., “Performance of optical flow techniques,” International Journal of Computer Vision 12, 1 (1994), https://doi.org/10.1007/BF01420984, pp. 43-77. [cited by applicant]
Chen et al., “Glimpse: Continuous, Real-Time Object Recognition on Mobile Devices,” Proceedings of the 13th ACM Conference on Embedded Networked Sensor Systems, 2015, pp. 155-168. [cited by applicant]
Liu et. al., “Edge Assisted Real-time Object Detection for Mobile Augmented Reality,” The 25th Annual International Conference on Mobile Computing and Networking, https://doi.org/10.1145/3300061.3300116, Aug. 2019, pp. … [cited by applicant]
Meng et al., “Edge-assisted AR Design Made Simple: Video Encoding and Local Tracking are Enough,” https://www.winlab.rutgers.edu/˜gruteser/papers/mobicom19_augmented_reality.pdf, Purdue University, 2019, pp. 1-6. [cited by applicant]
Narayanan et al., “Lumos5G: Mapping and Predicting Commercial mmWave 5G Throughput,” Proceedings of the ACM Internet Measurement Conference, Oct. 2020, 18 pages. [cited by applicant]
Zhu et al., “Deep Feature Flow for Video Recognition”, Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017, pp. 2349-2358. [cited by applicant]
Office Action from U.S. Appl. No. 17/703,674, mailed on Jun. 6, 2024, 20 pages. [cited by applicant]
Notice of Allowance and Notice of Allowability for U.S. Appl. No. 17/703,674, dated Feb. 24, 2025, 11 pages. [cited by applicant]