IP Library › Granted Patent US 9,400,553
Granted Patent B2
US 9,400,553 · App. 14/051,890 · Granted Jul 26, 2016

User interface programmatic scaling

Inventors: Bernard James Kerr (Sausalito, CA); Edward Elliott (San Francisco, CA); Morgan Kolya Venable (San Francisco, CA)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F3/013G06F3/0481G06F3/0488G06F3/04812G06F2203/04101G06F2203/04805G06F2203/04806
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 9,400,553
App. No.
14/051,890
Granted
Jul 26, 2016
Kind
B2
Abstract

Embodiments that relate to scaling a visual element displayed via a display device are disclosed. In one embodiment a method includes receiving and using gaze tracking data to determine gaze locations at which a user is gazing on the display device. Depth tracking data is received and used to determine that a user's pointer is at a predetermined location. In response, a locked gaze location on the screen is locked, where the locked gaze location includes at least a portion of the visual element. In response to locking the locked gaze location, the visual element is programmatically scaled by a predetermined amount to an enlarged size. A user input selecting the visual element is then received.

Claims (66)

1. A user interface system for scaling a visual element displayed via a display device, the user interface system comprising:

a computing device operatively connected to the display device, wherein the display device includes a gaze tracking system and a display system for presenting the visual element; and

a scaling module executed by a processor of the computing device, the scaling module configured to:

receive gaze tracking data from the gaze tracking system;

using the gaze tracking data, determine a plurality of gaze locations at which a user is gazing on a screen of the display device;

receive depth tracking data from a depth tracking system;

using the depth tracking data, determine that a user's pointer is at a predetermined location;

in response to determining that the user's pointer is at the predetermined location using the depth tracking data, lock a locked gaze location on the screen, wherein the locked gaze location includes at least a portion of the visual element;

in response to locking the locked gaze location, programmatically scale the visual element by a predetermined amount to an enlarged size;

receive a user input selecting the visual element at the enlarged size;

subsequently monitor the user's use of the user interface system over time;

based on the user's use over time, modify the predetermined amount to a user-specific amount; and

programmatically scale the visual element by the user-specific amount to a user-specific size.

2. The user interface system of claim 1 , wherein the scaling module is further configured to, in response to determining that the user's pointer is at the predetermined location, cease receiving the gaze tracking data from the gaze tracking system.

3. The user interface system of claim 1 , wherein the scaling module is further configured to programmatically scale the visual element by animating the visual element to grow to the enlarged size independent of a distance of the user's pointer from the screen.

4. The user interface system of claim 1 , wherein the scaling module is further configured to programmatically scale the visual element either by a single step to the enlarged size or by progressive enlargements of the visual element through one or more increasing sizes that are each proportional to a distance of the user's pointer from the screen.

5. The user interface system of claim 1 , wherein the scaling module is further configured to determine the user-specific amount by averaging a plurality of user adjustments to the enlarged size.

6. The user interface system of claim 1 , wherein the scaling module is further configured to:

define a plane between the user and the screen of the display device;

using the depth tracking data, determine that the user's pointer crosses the plane; and

in response to determining that the user's pointer crosses the plane, lock the locked gaze location on the screen and programmatically scale the visual element.

7. The user interface system of claim 1 , wherein the scaling module is further configured to:

define a first plane between the user and the screen of the display device;

define a second plane between the first plane and the screen of the display device;

using the depth tracking data, determine that the user's pointer crosses the first plane;

in response to determining that the user's pointer crosses the first plane, lock the locked gaze location on the screen;

using the depth tracking data, determine that the user's pointer subsequently crosses the second plane; and

in response to determining that the user's pointer crosses the second plane, select the visual element.

8. The user interface system of claim 1 , wherein the scaling module is further configured to provide feedback to the user via the display device comprising gaze lock feedback when the locked gaze location is locked and progressive feedback indicating a position of the user's pointer relative to the display device.

9. A method for scaling a visual element displayed via a display device, the method comprising:

receiving gaze tracking data;

using the gaze tracking data, determining a plurality of gaze locations at which a user is gazing on a screen of the display device;

receiving depth tracking data;

using the depth tracking data, determining that a user's pointer is at a predetermined location;

in response to determining that the user's pointer is at the predetermined location using the depth tracking data, locking a locked gaze location on the screen, wherein the locked gaze location includes at least a portion of the visual element;

in response to locking the locked gaze location, programmatically scaling the visual element by a predetermined amount to an enlarged size;

receiving a user input selecting the visual element at the enlarged size;

subsequently monitoring the user's use of the user interface system over time;

based on the user's use over time, modifying the predetermined amount to a user-specific amount; and

programmatically scaling the visual element by the user-specific amount to a user-specific size.

10. The method of claim 9 , further comprising, in response to determining that the user's pointer is at the predetermined location, ceasing to receive the gaze tracking data from the gaze tracking system.

11. The method of claim 9 , wherein programmatically scaling the visual element further comprises either scaling the visual element by a single step to the enlarged size or scaling the visual element by progressive enlargements through one or more increasing sizes that are each proportional to a distance of the user's pointer from the screen.

12. The method of claim 9 , further comprising determining the user-specific amount by averaging a plurality of user adjustments to the enlarged size.

13. The method of claim 9 , further comprising:

determining an identity of the user;

based on the user identity, modifying the predetermined amount to a user-specific amount; and

programmatically scaling the visual element by the user-specific amount to a user-specific size.

14. The method of claim 13 , wherein determining the identity of the user is performed via user input of log in data or via user biometrics selected from the group consisting of eye information received from the gaze tracking system, voice recognition information and facial recognition information.

15. The method of claim 9 , further comprising:

defining a plane between the user and the screen of the display device;

using the depth tracking data, determining that the user's pointer crosses the plane; and

in response to determining that the user's pointer crosses the plane, locking the locked gaze location on the screen and programmatically scaling the visual element.

16. The method of claim 9 , further comprising providing feedback to the user via the display device comprising gaze lock feedback when the locked gaze location is locked and progressive feedback indicating a position of the user's pointer relative to the display device.

17. A method for scaling a visual element displayed via a display device, the method comprising:

receiving gaze tracking data;

using the gaze tracking data, determining a plurality of gaze locations at which a user is gazing on a screen of the display device;

receiving depth tracking data;

using the depth tracking data, determining that a user's pointer is at a predetermined location;

in response to determining that the user's pointer is at the predetermined location using the depth tracking data, locking a locked gaze location on the screen, wherein the locked gaze location includes at least a portion of the visual element;

in response to locking the locked gaze location, programmatically scaling the visual element by a predetermined amount to an enlarged size;

receiving a first user input selecting the visual element at the enlarged size;

monitoring the user's subsequent use of the user interface system;

based on the user's subsequent use, modifying the predetermined amount to a user-specific amount;

programmatically scaling the visual element by the user-specific amount to a user-specific size; and

receiving a second user input selecting the visual element at the user-specific size.

18. The method of claim 17 , further comprising determining the user-specific amount by averaging a plurality of user adjustments to the enlarged size.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2016
From: KERR, BERNARD JAMES; ELLIOTT, EDWARD; VENABLE, MORGAN KOLYA
To: MICROSOFT CORPORATION
Reel/Frame 037467/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
Continuity (1)
Related Publication 20150103003A1 · Apr 16, 2015