IP Library Granted Patent US 10,325,184
Granted Patent B2
US 10,325,184 · App. 15/486,218 · Granted Jun 18, 2019

Depth-value classification using forests

Inventors: Ralph Brunner (Los Gatos, CA); Yichen Pan (Mountain View, CA)
Assignee: YouSpace, Inc.
G06K9/6282G06F3/017G06K9/00355G06K9/6255G06K9/6256G06K9/6262G06K9/6269G06K2209/40
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 10,325,184
App. No.
15/486,218
Granted
Jun 18, 2019
Kind
B2
Abstract

Human Computer Interfaces (HCI) may allow a user to interact with a computer via a variety of mechanisms, such as hand, head, and body gestures. Various of the disclosed embodiments allow information captured from a depth camera on an HCI system to be used to recognize such gestures. Particularly, by training a classifier using vectors having both base and extended components, more accurate classification results may be subsequently obtained. The base vector may include a leaf-based assessment of the classification results from a forest for a given depth value candidate pixel. The extended vector may include additional information, such as the leaf-based assessment of the classification results for one or more pixels related to the candidate pixel. Various embodiments employ this improved structure with various optimization methods and structure to provide more efficient in-situ operation.

Claims (69)

1. A computer system configured to generate a depth-value classifier comprising:

at least one processor;

at least one memory comprising instructions configured to cause the at least one processor to perform a method comprising:

receiving a candidate depth pixel associated with a class;

generating a base vector by applying the candidate depth pixel to one or more trees;

generating an extended vector;

providing the base vector and the extended vector to a machine learning system to generate a classifier;

wherein generating an extended vector comprises:

determining classification probabilities for nodes in trees of the one or more trees for a related pixel; and

generating a vector based on the classification probabilities for the nodes, wherein the number of entries in the extended vector is less than the number of entries in the base vector.

2. The computer system of claim 1 , wherein generating an extended vector comprises concatenating base vectors of one or more pixels neighboring the candidate depth pixel.

3. The computer system of claim 1 , wherein generating an extended vector comprises summing base vectors of one or more pixels neighboring the candidate depth pixel.

4. The computer system of claim 3 , wherein

the machine learning system is a support vector machine, wherein

generating an extended vector comprises performing a second pass after generating the base vector, and wherein

providing the base vector and the extended vector comprises providing a combined vector, the combined vector comprising the extended vector appended to the base vector.

5. The computer system of claim 4 , the method further comprising:

determining that a classification with the classifier was successful;

generating new training data in association with the successful classification; and

generating a new classifier using the new training data.

6. The computer system of claim 1 ,

wherein the machine learning system is a support vector machine and wherein the method further comprises determining that the number of entries in the extended vector will include less than the number of entries in the base vector based, at least in part, on a determination that the system is still engaged in a classification session.

7. The computer system of claim 1 , wherein

the machine learning system is a support vector machine, and wherein

providing the base vector and the extended vector comprises providing a combined vector, the combined vector comprising the extended vector appended to the base vector.

8. A computer-implemented method comprising:

receiving a candidate depth pixel associated with a class;

generating a base vector by applying the candidate depth pixel to one or more trees;

generating an extended vector;

providing the base vector and the extended vector to a machine learning system to generate a classifier;

wherein generating an extended vector comprises:

determining classification probabilities for nodes in trees of the one or more trees for a related pixel; and

generating a vector based on the classification probabilities for the nodes, wherein the number of entries in the extended vector is less than the number of entries in the base vector.

9. The computer-implemented method of claim 8 , wherein generating an extended vector comprises concatenating base vectors of one or more pixels neighboring the candidate depth pixel.

10. The computer-implemented method of claim 8 , wherein generating an extended vector comprises summing base vectors of one or more pixels neighboring the candidate depth pixel.

11. The computer-implemented method of claim 10 , wherein

the machine learning system is a support vector machine, wherein

generating an extended vector comprises performing a second pass after generating the base vector, and wherein

providing the base vector and the extended vector comprises providing a combined vector, the combined vector comprising the extended vector appended to the base vector.

12. The computer-implemented method of claim 11 , the method further comprising:

determining that a classification with the classifier was successful;

generating new training data in association with the successful classification; and

generating a new classifier using the new training data.

13. The computer-implemented method of claim 8 , wherein the machine learning system is a support vector machine and wherein the method further comprises determining that the number of entries in the extended vector will include less than the number of entries in the base vector based, at least in part, on a determination that the system is still engaged in a classification session.

14. The computer-implemented method of claim 8 , wherein

the machine learning system is a support vector machine, and wherein

providing the base vector and the extended vector comprises providing a combined vector, the combined vector comprising the extended vector appended to the base vector.

15. A non-transitory computer-readable medium comprising instructions configured to cause a computer system to perform a method comprising:

receiving a candidate depth pixel associated with a class;

generating a base vector by applying the candidate depth pixel to one or more trees;

generating an extended vector;

providing the base vector and the extended vector to a machine learning system to generate a classifier;

wherein generating an extended vector comprises:

determining classification probabilities for nodes in trees of the one or more trees for a related pixel; and

generating a vector based on the classification probabilities for the nodes, wherein the number of entries in the extended vector is less than the number of entries in the base vector.

16. The non-transitory computer-readable medium of claim 15 , wherein generating an extended vector comprises concatenating base vectors of one or more pixels neighboring the candidate depth pixel.

17. The non-transitory computer-readable medium of claim 15 , wherein generating an extended vector comprises summing base vectors of one or more pixels neighboring the candidate depth pixel.

18. The non-transitory computer-readable medium of claim 17 , wherein

the machine learning system is a support vector machine, wherein

generating an extended vector comprises performing a second pass after generating the base vector, and wherein

providing the base vector and the extended vector comprises providing a combined vector, the combined vector comprising the extended vector appended to the base vector.

19. The non-transitory computer-readable medium of claim 18 , the method further comprising:

determining that a classification with the classifier was successful;

generating new training data in association with the successful classification; and

generating a new classifier using the new training data.

20. The non-transitory computer-readable medium of claim 15 , wherein the machine learning system is a support vector machine and wherein the method further comprises determining that the number of entries in the extended vector will include less than the number of entries in the base vector based, at least in part, on a determination that the system is still engaged in a classification session.

21. The non-transitory computer-readable medium of claim 15 , wherein

the machine learning system is a support vector machine, and wherein

providing the base vector and the extended vector comprises providing a combined vector, the combined vector comprising the extended vector appended to the base vector.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE MISTAKEN IDENTIFICATION OF US PATENT NUMBER 10,347,342 (10,437,342 WAS INTENDED) PREVIOUSLY RECORDED ON REEL 053892 FRAME 0124. ASSIGNOR(S) HEREBY CONFIRMS THE SALE, TRANSFER AND ASSIGNMENT OF ASSIGNOR'S ENTIRE INTEREST IN THE PATENT RIGHTS.. Recorded Oct 6, 2020
From: YOUSPACE, INC.
To: HASIVISION, LLC
Reel/Frame 054448/0045 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2020
From: YOUSPACE, INC.
To: HASIVISION, LLC
Reel/Frame 053892/0124 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2017
From: BRUNNER, RALPH; PAN, YICHEN
To: YOUSPACE, INC.
Reel/Frame 041987/0989 →
Continuity (1)
Related Publication 20180300591A1 · Oct 18, 2018
Cited By (2)
US 12,468,379 US 12,663,874