IP Library › Granted Patent US 9,015,638
Granted Patent B2
US 9,015,638 · App. 12/434,553 · Granted Apr 21, 2015

Binding users to a gesture based system and providing feedback to the users

Inventors: Alex Kipman (Redmond, WA); Kathryn Stone Perez (Shoreline, WA); R. Stephen Polzin (San Jose, CA); William Guo (Sammamish, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F3/011A63F13/12G06F3/04883A63F13/06G06F3/017G06F3/0304A63F2300/1093A63F2300/6045
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,015,638
App. No.
12/434,553
Granted
Apr 21, 2015
Kind
B2
Abstract

Techniques for managing a set of states associated with a capture device are disclosed herein. The capture device may detect and bind to users, and may provide feedback about whether the capture device is bound to, or detecting a user. Techniques are also disclosed wherein virtual ports may be associated with users bound to a capture device and feedback about the state of virtual ports may be provided.

Claims (47)

1. A method for managing a set of states associated with users of a gesture-based system, comprising:

setting a state of the gesture-based system to an unbound and detected state in which a first user is not bound to a first virtual port of the gesture-based system based on determining that the first user is present in a first depth image;

after setting the state for the first user to an unbound and detected state, binding the first user to the first virtual port and setting the state for the first user to a bound and detected state;

processing a motion or pose of the first user captured in a second depth image to invoke a command to the gesture-based system after setting the state for the first user to the bound and detected state; and

reassigning a second user from a second virtual port to the first virtual port after the first user becomes unbound from the first virtual port, based at least on input received at least at one of the first virtual port or the second virtual port.

2. The method of claim 1 , further comprising:

before determining that the first user is present in the first depth image, setting the state of the gesture-based system to an unbound and undetected state in which the first user is not bound to the first virtual port based on determining that the first user is not present in a third depth image.

3. The method of claim 1 , further comprising:

after binding the first user to the first virtual port and setting the state for the first user to the bound and detected state, setting the state for the first user to a bound and undetected state, where the first user is still bound to the first virtual port, but is not in a capture area of a depth image capture device, based on determining that the first user is no longer present in a third depth image.

4. The method of claim 3 , further comprising:

after setting the state for the first user to the bound and undetected state, again setting the state for the first user to the bound and detected state where the first user is still bound to the first virtual port, based on determining that the first user is again present.

5. The method of claim 3 , further comprising:

changing the state for the first user from bound and undetected to unbound and undetected based on determining that the first user has not been present for at least a threshold amount of time.

6. The method of claim 1 , further comprising:

unbinding the first user from the first virtual port and changing the state for the first user to unbound and detected based on determining that the first user has made an exit gesture while being present.

7. The method of claim 1 , further comprising:

providing visual or aural feedback in response to changing the state for the first user.

8. The method of claim 1 , wherein reassigning a second user from a second virtual port to the first virtual port after the first user becomes unbound from the first virtual port comprises:

unbinding the first user from the first virtual port, unbinding the second user from the second virtual port, binding the first user to the second virtual port, and binding the second user to the first virtual port, based on determining that the first user has made a handoff gesture.

9. The method of claim 1 , wherein reassigning a second user from a second virtual port to the first virtual port after the first user becomes unbound from the first virtual port comprises:

unbinding the user from the first virtual port, unbinding the second user from the second virtual port, binding the first user to the second virtual port, and binding the second user to the first virtual port based on determining that the first user and the second user have together made a handoff gesture.

10. A system for managing a set of states associated with a first user of a gesture-based system, comprising:

a processor; and

a memory communicatively-coupled to the memory when the system is operational, the memory bearing processor-executable instructions that, when executed on the processor, cause the system at least to:

set a state of the gesture-based system to an unbound and detected state in which the first user is not bound to a virtual port of the gesture based system based on determining that the first user is present in a first depth image;

after setting the state for the first user to an unbound and detected state, bind the first user to the first virtual port and setting the state for the first user to a bound and detected state;

in response to determining that the first user is in a bound and detected state where the first user is bound to the first virtual port, process a motion or pose of the first user captured in a second depth image to invoke a command to the gesture-based system; and

reassigning a second user from a second virtual port to the first virtual port after the first user changes from bound to unbound from the virtual port, based at least on input received at least at one of the first virtual port or the second virtual port.

11. The system of claim 10 , wherein the memory further bears computer-executable instructions that, when executed on the processor, cause the system at least to:

before determining that the first user is present in the first depth image, set the state of the gesture-based system to an unbound and undetected state in which the first user is not bound to the first virtual port based on determining that the first user is not present in a third depth image.

12. The system of claim 10 , wherein the memory further bears computer-executable instructions that, when executed on the processor, cause the system at least to:

after binding the first user to the first virtual port and setting the state for the first user to the bound and detected state, set the state for the first user to a bound and undetected state, where the first user is still bound to the first virtual port, but is not in a capture area of a depth image capture device, based on determining that the first user is no longer present in a third depth image.

13. The system of claim 12 , wherein the memory further bears computer-executable instructions that, when executed on the processor, cause the system at least to:

after setting the state for the first user to the bound and undetected state, again set the state for the first user to the bound and detected state where the first user is still bound to the first virtual port, based on determining that the first user is again present in a fourth depth image.

14. The system of claim 12 , wherein the memory further bears computer-executable instructions that, when executed on the processor, cause the system at least to:

change the state for the first user from bound and undetected to unbound and undetected based on determining that the first user has not been present for at least a threshold amount of time.

15. A computer-readable storage device that is not a propagating signal for managing a set of states associated with a first user of a gesture-based system, the computer-readable storage device bearing computer-readable instructions that, when executed on a computer, cause the computer to perform operations comprising:

setting a state of the gesture-based system to an unbound and detected state in which the first user is not bound to a first virtual port of the gesture based system, based on determining that the first user is present in a first depth image;

after setting the state for the first user to an unbound and detected state, binding the first user to the first virtual port and setting the state for the first user to a bound and detected state;

in response to determining that the first user is in a bound and detected state where the first user is bound to the first virtual port, processing a motion or pose of the first user captured in a second depth image to invoke a command to the gesture-based system; and

changing a binding of a second user from a second virtual port to the first virtual port after the first user becomes unbound from the first virtual port, based at least on input from at least one of the first virtual port or the second virtual port.

16. The computer-readable storage device of claim 15 , further bearing computer-readable instructions that, when executed on the computer, cause the computer to perform operations comprising:

unbinding the first user from the virtual port and changing the state for the first user to unbound and detected, based on determining that the first user has made an exit gesture while being present in a third depth image.

17. The computer-readable storage device of claim 15 , further bearing computer-readable instructions that, when executed on the computer, cause the computer to perform operations comprising:

providing visual or aural feedback in response to changing the state for the first user.

18. The computer-readable storage device of claim 15 , wherein changing a binding of a second user from a second virtual port to the first virtual port after the first user becomes unbound from the virtual port comprises:

unbinding the first user from the first virtual port, unbinding the second user from the second virtual port, binding the first user to the second virtual port, and binding the second user to the first virtual port, based on determining that the first user has made a handoff gesture.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034564/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2009
From: KIPMAN, ALEX; PEREZ, KATHRYN STONE; POLZIN, R STEPHEN; GUO, WEI
To: MICROSOFT CORPORATION
Reel/Frame 022992/0267 →
Continuity (1)
Related Publication 20100281436A1 · Nov 4, 2010