IP Library Granted Patent US 11,521,296
Granted Patent B2
US 11,521,296 · App. 17/140,921 · Granted Dec 6, 2022

Image size triggered clarification to maintain image sharpness

Inventors: Syed Idris Shah (Lauderhill, FL); Henricus Cabanier (Seattle, WA)
Assignee: Magic Leap, Inc.
G06T3/40G06T5/003G09G3/002G09G5/373G02B27/0101G02B2027/014G02B2027/0147G06T11/00G09G2340/045G09G2340/0414G09G2340/0421G09G2340/145G09G2360/18
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 11,521,296
App. No.
17/140,921
Granted
Dec 6, 2022
Kind
B2
Abstract

An application engine renders an image based on image data from a content source. A display engine displays the image to a user. The image is adjustable from a first size to a second size. A detection system detects the size adjustment. An application executes a clarification routine to maintain sharpness of the image.

Claims (49)

1. A viewing system comprising:

a content source to hold image data;

an application engine, forming part of an application, communicatively connected to the content source to receive the image data and render an image based on the image data;

a display engine communicatively connected to the application engine to display the image to a user, the image having a first size, the image being adjustable to a second size that is smaller than the first size, wherein the display engine displays the image to a user at a first virtual distance relative to the user and the image having the first size, the image being movable to a second virtual distance relative to the user and the image having the second size that is smaller than the first size; and

a movement detection system that detects movement of the image to the second virtual distance relative to the user as a measure indicative of adjustment of the image from the first size to the second size, wherein the application, in response to the detection, executes a clarification routine to maintain sharpness of the image.

2. The viewing system of claim 1 , wherein the image is adjustable from the first size to the second size by user interaction with the display engine.

3. The viewing system of claim 1 , wherein the application includes:

an application compositor that receives the select frame size from the frame size determinator and the image from the application engine and scales the image based on the frame size.

4. The viewing system of claim 3 , wherein the application includes:

an application buffer that receives the image from the application engine, wherein the application compositor draws a subset of the image in the application buffer, the subset having a sample interval based on the select frame size and includes fewer pixels than if the buffer is entirely written.

5. The viewing system of claim 4 , wherein fewer processing cycles are required, and less power is consumed, to sample the subset than if the buffer is entirely sampled.

6. The viewing system of claim 4 , wherein the application buffer has a size that remains unchanged when the image is moved from the first to the second virtual distance.

7. The viewing system of claim 6 , wherein the display engine executes a stretching operation wherein the image is progressively adjusted from the first size to the second size in a series of cycles and a smaller section of the buffer is drawn at for each cycle.

8. The viewing system of claim 1 , wherein the application enters the frame size into the application engine and the application engine performs, based on the frame size, a re-layout of a window area that maintains sharpness of the image.

9. The viewing system of claim 8 , further comprising:

a stereoscopic viewer connected to the display engine to display the image to the user.

10. The viewing system of claim 1 , wherein the image comprises text.

11. The viewing system of claim 1 , wherein the display engine provides a screen size to the application engine, a change in the screen size being the measure indicative of the adjustment of the image.

12. A method of viewing content comprising:

rendering, with an application engine, an image based on image data from a content source;

displaying, with a display engine, the image to a user, wherein the image has a first size, the image being adjustable to a second size that is smaller than the first size, wherein the display engine displays the image to a user at a first virtual distance relative to the user and the image having the first size, the image being movable to a second virtual distance relative to the user and the image having the second size that is smaller than the first size;

detecting, with a movement detection system, movement of the image to the second virtual distance relative to the user as a measure indicative of adjustment of the image from the first size to the second size; and

executing, with an application, in response to the detection, a clarification routine to maintain sharpness of the image.

13. The method of claim 12 , wherein the image is adjustable from the first size to the second size by user interaction with the display engine.

14. The method of claim 12 , wherein the application includes:

receiving, with an application compositor of the application, the select frame size from the frame size determinator; and

scaling, with the application compositor of the application, the image based on the frame size.

15. The method of claim 14 , further comprising:

receiving, with an application buffer of the application, the image from the application engine, wherein the application compositor draws a subset of the image in the application buffer, the subset having a sample interval based on the select frame size and includes fewer pixels than if the buffer is entirely written.

16. The method of claim 15 , wherein fewer processing cycles are required, and less power is consumed, to sample the subset than if the buffer is entirely sampled.

17. The method of claim 15 , wherein the application buffer has a size that remains unchanged when the image is moved from the first to the second virtual distance.

18. The method of claim 17 , wherein the display engine executes a stretching operation wherein the image is progressively adjusted from the first size to the second size in a series of cycles and a smaller section of the buffer is drawn at for each cycle.

19. The method of claim 12 , further comprising:

entering, with the application, the frame size into the application engine; and

performing with the application engine, based on the frame size, a re-layout of a window area that maintains sharpness of the image.

20. The method of claim 19 , further comprising:

displaying the image to the user with a stereoscopic viewer connected to the display engine.

21. The method of claim 12 , wherein the image comprises text.

22. The method of claim 12 , wherein the display engine provides a screen size to the application engine, a change in the screen size being the measure indicative of the adjustment of the image.

23. A viewing system comprising:

a content source to hold image data;

an application engine, forming part of an application, communicatively connected to the content source to receive the image data and render an image based on the image data;

a display engine communicatively connected to the application engine to display the image to a user, wherein the display engine provides a screen size to the application engine the image having a first size, the image being adjustable to a second size that is smaller than the first size, a change in the screen size being the measure indicative of the adjustment of the image; and

a detection system that detects a measure indicative of adjustment of the image from the first size to the second size, wherein the application, in response to the detection, executes a clarification routine to maintain sharpness of the image.

24. A method of viewing content comprising:

rendering, with an application engine, an image based on image data from a content source;

displaying, with a display engine, the image to a user, wherein the display engine provides a screen size to the application engine, wherein the image has a first size, the image being adjustable to a second size that is smaller than the first size;

detecting, with a detection system, a measure indicative of adjustment of the image from the first size to the second size, a change in the screen size being the measure indicative of the adjustment of the image; and

executing, with an application, in response to the detection, a clarification routine to maintain sharpness of the image.

Assignments (5)
SECURITY INTEREST Recorded Feb 7, 2023
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 062681/0065 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: SHAH, SYED IDRIS; CABANIER, HENRICUS
To: MAGIC LEAP, INC.
Reel/Frame 058353/0516 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: SHAH, SYED IDRIS; CABANIER, HENRICUS
To: MAGIC LEAP, INC.
Reel/Frame 058353/0567 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2021
From: IDRIS SHAH, SYED; CABANIER, HENRICUS
To: MAGIC LEAP, INC.
Reel/Frame 054803/0736 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2021
From: IDRIS SHAH, SYED; CABANIER, HENRICUS
To: MAGIC LEAP, INC.
Reel/Frame 054803/0753 →