IP Library Granted Patent US 9,734,424
Granted Patent B2
US 9,734,424 · App. 14/252,638 · Granted Aug 15, 2017

Sensor data filtering

Inventors: Sean Ryan Francesco Fanello (Genoa, IT); Cem Keskin (Cambridge, GB); Pushmeet Kohli (Cambridge, GB); Shahram Izadi (Cambridge, GB); Jamie Daniel Joseph Shotton (Cambridge, GB); Antonio Criminisi (Cambridge, GB)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06K9/52G06K9/0051G06K9/40G06K9/6268G06T5/002G06T5/20G06T2207/10028G06T2207/20081H04N5/217
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,734,424
App. No.
14/252,638
Granted
Aug 15, 2017
Kind
B2
Abstract

Filtering sensor data is described, for example, where filters conditioned on a local appearance of the signal are predicted by a machine learning system, and used to filter the sensor data. In various examples the sensor data is a stream of noisy video image data and the filtering process denoises the video stream. In various examples the sensor data is a depth image and the filtering process refines the depth image which may then be used for gesture recognition or other purposes. In various examples the sensor data is one dimensional measurement data from an electric motor and the filtering process denoises the measurements. In examples the machine learning system comprises a random decision forest where trees of the forest store filters at their leaves. In examples, the random decision forest is trained using a training objective with a data dependent regularization term.

Claims (28)

1. A computer-implemented method comprising:

receiving, at a processor, an input signal from a sensor;

predicting a plurality of filters using a trained machine learning system, the trained machine learning system comprising a random decision forest having individual filters stored at leaf nodes of trees of the random decision forest, individual ones of the filters being associated with individual elements of the signal and conditioned on local appearances of the signal associated with the individual elements;

computing a filtered version of the input signal by applying, using the processor, the individual ones of the filters to the associated individual elements of the signal.

2. The method of claim 1 wherein the filters are kernels of numerical values and wherein computing the filtered version of the input signal comprises applying the individual filters to the individual elements of the signal.

3. The method of claim 1 wherein the input signal is a depth image and the filtered version of the input signal is a refined version of the depth image.

4. The method of claim 1 wherein the input signal is a one dimensional signal comprising measurements of state of physical apparatus and the filtered version of the input signal is a denoised version of the one dimensional signal.

5. The method of claim 1 wherein the input signal is a color image or a video and the filtered version of the input signal is a denoised version of the color image or video.

6. The method of claim 1 wherein an individual filter of a leaf node has been computed from a plurality of training signal elements reaching the leaf node during a training phase.

7. The method of claim 1 wherein a leaf node of a tree stores only one filter.

8. The method of claim 1 wherein predicting the plurality of filters comprises computing decisions at split nodes of a random decision tree, the decisions being computed using features related to a local appearance of the signal.

9. The method of claim 8 wherein the features comprise variance of magnitude of elements of the signal.

10. The method of claim 8 wherein the features are at a plurality of scales.

11. The method of claim 8 wherein the features comprise responses of split node filters applied to parts of the signal.

12. The method of claim 8 wherein the features comprise differences in responses of pairs of split node filters applied to parts of the signal.

13. The method of claim 11 wherein the split node filters are selected from components of a principal component analysis of either: training data used to train the machine learning system, or a plurality of training signal elements reaching a split node.

14. The method of claim 1 wherein the machine learning system has been trained using a training objective having a regularization term which is data dependent.

15. A computer-implemented method comprising:

receiving, at a processor, training data comprising a sensor signal and associated ground truth data;

using the training data to train a machine learning system to predict a plurality of filters, the trained machine learning system comprising a random decision forest comprising at least one filter located at least on one split or leaf node, individual ones of the filters being associated with individual elements of the signal and conditioned on local appearances of the signal associated with the individual elements.

16. The method of claim 15 wherein using the training data to train the machine learning system comprises using a training objective, the training objective having a data dependent term.

17. The method of claim 16 wherein the data dependent term is arranged to prevent overfitting of the machine learning system.

18. A signal filtering device comprising:

a processor arranged to receive an input signal from a sensor;

a signal filtering logic arranged to predict a plurality of filters, the signal filtering logic comprising a random decision forest comprising at least one filter located at least on one split or leaf node, individual ones of the filters being associated with individual elements of the signal and conditioned on local appearances of the signal associated with the individual elements;

the processor arranged to compute a filtered version of the input signal by applying the individual ones of the filters to the associated individual elements of the signal.

19. The device of claim 18 the signal filtering logic being at least partially implemented using hardware logic selected from any one or more of: a field-programmable gate array, a program-specific integrated circuit, a program-specific standard product, a system-on-a-chip, a complex programmable logic device, a graphics processing unit.

20. The device of claim 18 wherein the sensor is associated with a DC motor.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2014
From: CRIMINISI, ANTONIO; FANELLO, SEAN RYAN FRANCESCO; IZADI, SHAHRAM; KESKIN, CEM; KOHLI, PUSHMEET; SHOTTON, JAMIE DANIEL JOESPH
To: MICROSOFT CORPORATION
Reel/Frame 033458/0322 →
Continuity (1)
Related Publication 20150296152A1 · Oct 15, 2015