US10147194B2ActiveUtilityA1

Systems and methods for removing a background of an image

57
Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Oct 7, 2009Filed: May 8, 2017Granted: Dec 4, 2018
Est. expiryOct 7, 2029(~3.2 yrs left)· nominal 20-yr term from priority
G06T 7/215G06T 15/00G06T 7/11G06T 7/194G06T 7/254G06T 19/00G06T 2207/10028
57
PatentIndex Score
0
Cited by
55
References
17
Claims

Abstract

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.

Claims

exact text as granted — not AI-modified
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; 
 comparing a value associated with voxels in one or more objects in the depth image with a corresponding value of a reference voxel; 
 identifying voxels as moving when a difference between the value and the corresponding value exceeds a motion threshold; 
 identifying other voxels as non-moving; 
 calculating a foreground score based on a percentage of moving voxels associated with one object; and 
 identifying the one object as moving when the foreground score exceeds a score threshold. 
 
     
     
       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:
 isolating the one object associated with the voxels identified to be moving; and 
 processing the one object isolated. 
 
     
     
       5. 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. 
     
     
       6. The computer-readable storage device of  claim 5 , the computer executable instructions further comprising instructions for discarding the at least one non-moving object of the one or more objects. 
     
     
       7. A system for processing depth information of a scene, the system comprising:
 a capture device comprising an image camera component 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:
 receiving a depth image of the scene, wherein the depth image comprises one or more objects; 
 comparing a value associated with voxels in one or more objects in the depth image with a corresponding value of a reference voxel; 
 identifying voxels as moving when a difference between the value and the corresponding value exceeds a motion threshold; 
 identifying other voxels as non-moving; 
 calculating a foreground score based on a percentage of moving voxels associated with one object; and 
 identifying the one object as moving when the foreground score exceeds a score threshold. 
 
 
     
     
       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 to merge an object in the one or more objects with a nearby object in the one or more objects. 
     
     
       9. The system of  claim 8 , 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. 
 
     
     
       10. The system of  claim 7 , further comprising computer-readable instructions that, when executed by the processor, cause the computing device to perform operations comprising:
 isolating the one object associated with the voxels identified to be moving; and 
 processing the one object isolated. 
 
     
     
       11. The system of  claim 7 , 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. 
     
     
       12. 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; 
 comparing a value associated with voxels in one or more objects in the depth image with a corresponding value of a reference voxel; 
 identifying voxels as moving when a difference between the value and the corresponding value exceeds a motion threshold; 
 identifying other voxels as non-moving; 
 calculating a foreground score based on a percentage of moving voxels associated with at least one object; and 
 identifying the at least one object as moving when the foreground score exceeds a score threshold. 
 
     
     
       13. The method of  claim 12 , further comprising determining whether to merge an object in the one or more objects with a nearby object in the one or more objects. 
     
     
       14. The method of  claim 13 , 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. 
     
     
       15. The method of  claim 12 , further comprising:
 isolating the at least one object associated with the voxels identified to be moving; and 
 processing the at least one object isolated. 
 
     
     
       16. The method of  claim 12 , further comprising determining that at least one object of the one or more objects is non-moving. 
     
     
       17. The method of  claim 16 , further comprising discarding at least one non-moving object of the one or more objects.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.