IP Library › Granted Patent US 9,747,527
Granted Patent B2
US 9,747,527 · App. 14/029,633 · Granted Aug 29, 2017

Performing object detection operations via random forest classifier

Inventors: Mateusz Jerzy Baranowski (Reda, PL); Shalini Gupta (San Francisco, CA); Elif Albuz (Sunnyvale, CA)
Assignee: NVIDIA Corporation
G06K9/6285G06K9/00986G06K9/6256G06K9/6282
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,747,527
App. No.
14/029,633
Granted
Aug 29, 2017
Kind
B2
Abstract

In one embodiment of the present invention, a graphics processing unit (GPU) is configured to detect an object in an image using a random forest classifier that includes multiple, identically structured decision trees. Notably, the application of each of the decision trees is independent of the application of the other decision trees. In operation, the GPU partitions the image into subsets of pixels, and associates an execution thread with each of the pixels in the subset of pixels. The GPU then causes each of the execution threads to apply the random forest classifier to the associated pixel, thereby determining a likelihood that the pixel corresponds to the object. Advantageously, such a distributed approach to object detection more fully leverages the parallel architecture of the PPU than conventional approaches. In particular, the PPU performs object detection more efficiently using the random forest classifier than using a cascaded classifier.

Claims (66)

1. A computer-implemented method for training a random forest classifier for object detection, the method comprising:

selecting an initial set of features;

training at least one decision tree included in the random forest classifier based on the initial set of features;

determining a reduced set of features based on the random forest classifier, wherein the features included in the reduced set of features comprise a subset of the features included in the initial set of features that distinguish between objects of interest and objects not of interest more accurately than other features included in the initial set of features;

resetting the at least one decision tree included in the random forest classifier to an untrained state; and

retraining the at least one decision tree included in the random forest classifier from the untrained state based on the reduced set of features.

2. The method of claim 1 , wherein the random forest classifier comprises a plurality of decision trees that are structurally identical, and each decision tree includes a plurality of splits.

3. The method of claim 2 , wherein training the random forest classifier based on the initial set of features comprises:

selecting a first subset of features, wherein the features included in the first subset of features comprise a random subset of the initial set of features;

training a first decision tree included in the plurality of decision trees based on the first subset of features;

determining a second subset of features, wherein the features included in the second subset of features comprise a random subset of the initial set of features;

training a second decision tree included in the plurality of decision trees based on the second subset of features.

4. The method of claim 3 , wherein training the first decision tree comprises:

determining that a first feature included in the first subset of features more accurately distinguishes between one or more objects of interest and one or more objects not of interest than any other feature included in the first subset of features; and

associating the first feature with a first split included in the plurality of splits included in the first decision tree.

5. The method of claim 2 , wherein determining the reduced set of features comprises:

calculating a first number of times a first feature included in the initial set of features is associated with the plurality of splits included in each decision tree;

calculating a second number of times a second feature included in the initial set of features is associated with the plurality of splits included in each decision tree;

determining that the first number of times is greater than a threshold, and adding the first feature to the reduced set of features; and

determining that the second number of times is not greater than the threshold, and excluding the second feature from the reduced set of features.

6. The method of claim 2 , wherein training the random forest classifier based on the reduced set of features comprises:

selecting a first subset of features, wherein the features included in the first subset of features comprise a random subset of the reduced set of features;

training a first decision tree included in the plurality of decision trees based on the first subset of features;

selecting a second subset of features, wherein the features included in the second subset of features comprise a random subset of the reduced set of features; and

training a second decision tree included in the plurality of decision trees based on the second subset of features.

7. The method of claim 2 , wherein at least one of a depth across each of the decision trees included in the random forest classifier and a number of decision trees included in the random forest classifier are selected based on a desired accuracy.

8. The method of claim 1 , wherein the features comprise multi-block local binary pattern (MB-LBP) features.

9. The method of claim 8 , wherein the plurality of features includes multiple instances of a first MB-LBP feature.

10. The method of claim 1 , wherein resetting the random forest classifier to the untrained state comprises reducing a number of decision trees included in the random forest classifier.

11. A non-transitory computer-readable storage medium including instructions that, when executed by a processor, cause the processor to train a random forest classifier for object detection by performing the steps of:

selecting an initial set of features;

training at least one decision tree included in the random forest classifier based on the initial set of features;

determining a reduced set of features based on the random forest classifier, wherein the features included in the reduced set of features comprise a subset of the features included in the initial set of features that distinguish between objects of interest and objects not of interest more accurately than other features included in the initial set of features;

resetting the at least one decision tree included in the random forest classifier to an untrained state; and

retraining the at least one decision tree included in the random forest classifier from the untrained state based on the reduced set of features.

12. The non-transitory computer-readable storage medium of claim 11 , wherein the random forest classifier comprises a plurality of decision trees that are structurally identical, and each decision tree includes a plurality of splits.

13. The non-transitory computer-readable storage medium of claim 12 , wherein training the random forest classifier based on the initial set of features comprises:

selecting a first subset of features, wherein the features included in the first subset of features comprise a random subset of the initial set of features;

training a first decision tree included in the plurality of decision trees based on the first subset of features;

determining a second subset of features, wherein the features included in the second subset of features comprise a random subset of the initial set of features;

training a second decision tree included in the plurality of decision trees based on the second subset of features.

14. The non-transitory computer-readable storage medium of claim 13 , wherein training the first decision tree comprises:

determining that a first feature included in the first subset of features more accurately distinguishes between one or more objects of interest and one or more objects not of interest than any other feature included in the first subset of features; and

associating the first feature with a first split included in the plurality of splits included in the first decision tree.

15. The non-transitory computer-readable storage medium of claim 12 , wherein determining the reduced set of features comprises:

calculating a first number of times a first feature included in the initial set of features is associated with the plurality of splits included in each decision tree;

calculating a second number of times a second feature included in the initial set of features is associated with the plurality of splits included in each decision tree;

determining that the first number of times is greater than a threshold, and adding the first feature to the reduced set of features; and

determining that the second number of times is not greater than the threshold, and excluding the second feature from the reduced set of features.

16. The non-transitory computer-readable storage medium of claim 12 , wherein training the random forest classifier based on the reduced set of features comprises:

selecting a first subset of features, wherein the features included in the first subset of features comprise a random subset of the reduced set of features;

training a first decision tree included in the plurality of decision trees based on the first subset of features;

selecting a second subset of features, wherein the features included in the second subset of features comprise a random subset of the reduced set of features; and

training a second decision tree included in the plurality of decision trees based on the second subset of features.

17. The non-transitory computer-readable storage medium of claim 12 , wherein at least one of a depth across each of the decision trees included in the random forest classifier and a number of decision trees included in the random forest classifier are selected based on a desired accuracy.

18. The non-transitory computer-readable storage medium of claim 11 , wherein the features comprise multi-block local binary pattern (MB-LBP) features.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the plurality of features includes multiple instances of a first MB-LBP feature.

20. A computing device configured to train random forest classifiers for object detection, the system comprising:

a memory that includes a random forest classifier that includes a plurality of decision trees that are structurally identical; and

a processing unit coupled to the memory and configured to:

select an initial set of features;

train at least one decision tree included in the random forest classifier based on the initial set of features;

determine a reduced set of features based on the random forest classifier, wherein the features included in the reduced set of features comprise a subset of the features included in the initial set of features that distinguish between objects of interest and objects not of interest more accurately than other features included in the initial set of features;

reset the at least one decision tree included in the random forest classifier to an untrained state; and

retrain the at least one decision tree included in the random forest classifier from the untrained state based on the reduced set of features.

21. The computing device of claim 20 , wherein the features comprise multi-block local binary pattern (MB-LBP) features.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2013
From: BARANOWSKI, MATEUSZ JERZY; GUPTA, SHALINI; ALBUZ, ELIF
To: NVIDIA CORPORATION
Reel/Frame 031265/0986 →
Continuity (2)
Provisional Application 61794702 · Mar 15, 2013
Related Publication 20140270364A1 · Sep 18, 2014