Systems and methods for removing a background of an image

US9679390B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9679390-B2
Application numberUS-201314143879-A
CountryUS
Kind codeB2
Filing dateDec 30, 2013
Priority dateOct 7, 2009
Publication dateJun 13, 2017
Grant dateJun 13, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An image such as a depth image of a scene may be received, observed, or captured by a device. A grid of voxels may then be generated based on the depth image such that the depth image may be downsampled. A background included in the grid of voxels may then be discarded to isolate one or more voxels associated with a foreground object such as a human target and the isolated voxels associated with the foreground object may be processed.

First claim

Opening claim text (preview).

What is claimed: 1. A computer-readable storage device having stored thereon computer executable instructions for processing depth information of a scene, the computer executable instructions comprising instructions for: receiving a depth image of the scene, wherein the depth image comprises one or more objects; determining that at least one object of the one or more objects in the depth image is moving, wherein determining that the at least one object of the one or more objects in the depth image is moving comprises: comparing a value associated with each voxel in the one or more objects with a corresponding value of a reference voxel included in a reference plate; identifying each voxel in the one or more objects as moving when a difference between the value and the corresponding value exceeds a motion threshold; calculating a foreground score based on a percentage of moving voxels associated with the at least one object; and identifying the at least one object as moving when the foreground score exceeds a score threshold; isolating the at least one object that is moving; and processing the at least one isolated object. 2. The computer-readable storage device of claim 1 , the computer executable instructions further comprising instructions for determining whether to merge an object in the one or more objects with a nearby object in the one or more objects. 3. The computer-readable storage device of claim 2 , wherein determining whether to merge the object in the one or more objects with the nearby object in the one or more objects comprises: comparing X-values, Y-values, or depth values associated with voxels in the object with X-values, Y-values, or depth values associated with voxels of the nearby object; and merging the object with the nearby object if, based on the comparison, the X-values, Y-values, or the depth values associated with the voxels in the object overlap the X-values, Y-values, or depth values associated with the voxels of the nearby object. 4. The computer-readable storage device of claim 1 , the computer executable instructions further comprising instructions for determining that at least one object of the one or more objects is non-moving. 5. The computer-readable storage device of claim 4 , the computer executable instructions further comprising instructions for discarding the at least one non-moving object of the one or more objects. 6. A system for processing depth information of a scene, the system comprising: a capture device, wherein the capture device comprises a camera configured to capture a depth image of the scene; and a computing device communicatively coupled to the capture device, wherein the computing device comprises a processor and memory storing thereon computer-readable instructions that, when executed by the processor, cause the computing device to perform operations comprising: generating a downsampled depth image comprising one or more objects based on one or more pixels in the depth image received from the capture device; determining that at least one object of the one or more objects in the downsampled depth image is moving, wherein determining that the at least one object of the one or more objects in the downsampled depth image is moving comprises: comparing a value associated with each voxel in the one or more objects with a corresponding value of a reference voxel included in a reference plate; identifying each voxel in the one or more objects as moving when a difference between the value and the corresponding value exceeds a motion threshold; calculating a foreground score based on a percentage of moving voxels associated with the at least one object; and identifying the at least one object as moving when the foreground score exceeds a score threshold; isolating the at least one object that is moving; and processing the at least one isolated object. 7. The system of claim 6 , further comprising computer-readable instructions that, when executed by the processor, cause the computing device to perform operations comprising determining whether to merge an object in the one or more objects with a nearby object in the one or more objects. 8. The system of claim 7 , further comprising computer-readable instructions that, when executed by the processor, cause the computing device to perform operations comprising: determining whether merge an object in the one or more objects with a nearby object in the one or more objects: comparing X-values or depth values associated with voxels in one of the object with X-values or depth values associated with voxels of a nearby object; and merging the object with the nearby object if, based on the comparison, the X-values or the depth values associated with the voxels in the object overlap the X-values or depth values associated with the voxels of the nearby object. 9. The system of claim 6 , further comprising computer-readable instructions that, when executed by the processor, cause the computing device to perform operations comprising discarding at least one non-moving object of the one or more objects. 10. A method for processing depth information of a scene, the method comprising: receiving a depth image of the scene, wherein the depth image comprises one or more objects; determining that at least one object of the one or more objects in the depth image is moving; wherein determining that the at least one object of the one or more objects in the depth image is moving comprises: comparing a value associated with each voxel in the one or more objects with a corresponding value of a reference voxel included in a reference plate; identifying each voxel in the one or more objects as moving when a difference between the value and the corresponding value exceeds a motion threshold; calculating a foreground score based on a percentage of moving voxels associated with the at least one object; and identifying the at least one object as moving when the foreground score exceeds a score threshold; isolating the at least one object that is moving; and processing the at least one isolated object. 11. The method of claim 10 , further comprising determining whether to merge an object in the one or more objects with a nearby object in the one or more objects. 12. The method of claim 11 , wherein determining whether to merge the object in the one or more objects with the nearby object in the one or more objects comprises: comparing X-values, Y-values, or depth values associated with voxels in the object with X-values, Y-values, or depth values associated with voxels of the nearby object; and merging the object with the nearby object if, based on the comparison, the X-values, Y-values, or the depth values associated with the voxels in the object overlap the X-values, Y-values, or depth values associated with the voxels of the nearby object. 13. The method of claim 10 , further comprising determining that at least one object of the one or more objects is non-moving. 14. The method of claim 13 , further comprising discarding at least one non-moving object of the one or more objects.

Assignees

Inventors

Classifications

  • G06T7/194Primary

    involving foreground-background segmentation · CPC title

  • Region-based segmentation · CPC title

  • Motion-based segmentation · CPC title

  • Range image; Depth image; 3D point clouds · CPC title

  • Three-dimensional [3D] image rendering · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9679390B2 cover?
An image such as a depth image of a scene may be received, observed, or captured by a device. A grid of voxels may then be generated based on the depth image such that the depth image may be downsampled. A background included in the grid of voxels may then be discarded to isolate one or more voxels associated with a foreground object such as a human target and the isolated voxels associated wit…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06T7/194. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 13 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).