IP Library Patent Application 16550881
Patent Application
App. No. 16/550,881

LATENCY MASKING SYSTEMS AND METHODS

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 None
App. No.
16/550,881
Abstract

Systems and methods provide for removing and/or hiding the negative effects of at least some of the latency between, e.g., detection of motion of a device such as a three-dimensional (3D) pointing device and corresponding redrawing of the cursor on a display. A method for masking latency associated with displaying a cursor on a display includes: receiving data associated with motion of an input device at a first time; using the data to determine a cursor position associated with the first time; determining a predicted cursor position at a future time relative to the first time using the determined cursor position; and displaying the cursor on the display at a position based on the predicted cursor position.

Claims (86)

1 . A method for masking latency associated with displaying a cursor on a display, the method comprising:

receiving data associated with motion of an input device at a first time;

using the data to determine a cursor position associated with the first time;

determining a predicted cursor position at a future time relative to the first time using the determined cursor position; and

displaying the cursor on the display screen at a position based on the predicted cursor position.

2 . The method of claim 1 , wherein determining the predicted cursor position further comprises:

using a double exponential smoothing algorithm which includes a data smoothing factor and a trend smoothing factor.

3 . The method of claim 1 , wherein determining the predicted cursor position further comprises:

processing raw sensor data into three-dimensional (3D) quaternion position information;

predicting a future quaternion; and

mapping 3D data to two-dimensional (2D) cursor data.

4 . The method of claim 3 , wherein mapping 3D data to 2D cursor data further comprises:

mapping 3D angular velocity data to 2D cursor velocity data;

processing the 2D cursor velocity data with non-linear ballistics mapping to produce an output of velocity information; and

mapping the output of velocity information to a cursor location.

5 . The method of claim 4 , further comprising:

processing with a double exponential prediction algorithm the 2D cursor velocity data and the cursor location with a double exponential prediction algorithm to generate predicted cursor information for display.

6 . The method of claim 3 , wherein mapping 3D data to 2D cursor data further comprises:

mapping 3D angular velocity data to 2D cursor velocity data;

processing the 2D cursor velocity data with a double exponential delta prediction process which produces a predicted cursor velocity data;

processing the predicted cursor velocity data with non-linear ballistic mapping to produce a modified velocity data; and

mapping the modified velocity data to cursor information for display.

7 . The method of claim 1 , further comprising:

visually masking a start of motion for the cursor on the display by at least one of modulating and vibrating the cursor on the display in a plurality of directions.

8 . The method of claim 1 , further comprising:

masking cursor motion associated with motion stoppage of the input device on the display.

9 . The method of claim 8 , wherein masking cursor motion associated with motion stoppage of the input device on the display further comprises:

predictively capturing an ending position of the cursor.

10 . The method of claim 1 , further comprising:

reducing an overshoot distance wherein the overshoot distance is a distance the cursor moves on the display after the input device stops moving by using a prediction equation which includes a scaling function.

11 . The method of claim 1 , wherein the input device is a 3D pointing device.

12 . The method of claim 1 , wherein the device is at least one of a set-top box, a gaming console, a system controller, a personal controller and the input device.

13 . A system for masking latency associated with displaying a cursor on a display, the system comprising:

a device configured to receive data associated with motion of an input device at a first time;

the device configured to use the data to determine a cursor position associated with the first time;

the device configured to determine a predicted cursor position at a future time relative to the first time using the determined cursor position; and

the display configured to display the cursor at a position based on the predicted cursor position.

14 . The system of claim 13 , further comprising:

the device configured to use a double exponential smoothing algorithm which includes a data smoothing factor and a trend smoothing factor when determining the predicted cursor position.

15 . The system of claim 13 , further comprises:

the device configured to process raw sensor data into three-dimensional (3D) quaternion position information;

the device configured to predict a future quaternion; and

the device configured to map 3D data to two-dimensional (2D) cursor data when determining the predicted cursor position.

16 . The system of claim 15 , further comprising:

the device configured, when mapping 3D data to 2D cursor data, to map 3D angular velocity data to 2D cursor velocity data;

the device configured to process the 2D cursor velocity data with non-linear ballistics mapping to produce an output of velocity information; and

the device configured to map the output of velocity information to a cursor location.

17 . The system of claim 16 , further comprising:

the device configured to process with a double exponential prediction algorithm the 2D cursor velocity data and the cursor location with a double exponential prediction algorithm to generate predicted cursor information for display.

18 . The system of claim 15 , further comprising:

the device configured, when mapping 3D data to 2D cursor data, to map 3D angular velocity data to 2D cursor velocity data;

the device configured to process the 2D cursor velocity data with a double exponential delta prediction process which produces a predicted cursor velocity data;

the device configured to process the predicted cursor velocity data with non-linear ballistic mapping to produce a modified velocity data; and

the device configured to map the modified velocity data to cursor information for display.

19 . The system of claim 13 , further comprising:

the device configured to visually mask a start of motion for the cursor on the display by at least one of modulating and vibrating the cursor on the display in a plurality of directions.

20 . The system of claim 13 , further comprising:

the device configured to mask cursor motion associated with motion stoppage of the input device on the display.

21 . The system of claim 20 , wherein masking cursor motion associated with motion stoppage of the input device on a display further comprises:

the device further configured to predictively capture an ending position of the cursor when masking cursor motion associated with motion stoppage of the input device on the display.

22 . The system of claim 13 , further comprising:

the device configured to reduce an overshoot distance wherein the overshoot distance is a distance the cursor moves on the display after the input device stops moving by using a prediction equation which includes a scaling function.

23 . The system of claim 13 , wherein the input device is a 3D pointing device.

24 . The system of claim 13 , wherein the device is at least one of a set-top box, a gaming console, a system controller, a personal controller and the input device.

25 . A method for masking latency associated with displaying a graphic on a display, the method comprising:

receiving data associated with motion of at least one object at a first time;

using the data to determine a position associated with the first time;

determining a predicted position at a future time relative to the first time using the determined position; and

displaying the graphic on the display screen at a position based on the predicted position.

26 . The method of claim 25 , wherein determining the predicted position further comprises:

using a double exponential smoothing algorithm which includes a data smoothing factor and a trend smoothing factor.

27 . The method of claim 25 , wherein the at least one object is a head mounted display used in at least one of an augmented reality system and a virtual reality system.

28 . The method of claim 27 , wherein a point of view is a 2D point of view.

29 . The method of claim 28 , further comprising:

displaying a marker which indicates a center of the point of view.

30 . The method of claim 28 , further comprising:

displaying an independent cursor, wherein a displayed position of the cursor is based on a predicted cursor position.

31 . The method of claim 27 , wherein a point of view is a 3D point of view.

32 . The method of claim 31 , further comprising:

displaying a marker which indicates a center of the point of view.

33 . The method of claim 31 , further comprising:

displaying an independent cursor, wherein a displayed position of the cursor is based on a predicted cursor position.

34 . The method of claim 25 , wherein determining the predicted position further comprises:

processing raw sensor data into three-dimensional (3D) quaternion position information;

predicting a future quaternion; and

mapping 3D data to two dimensional (2D) data.