Analysis of three-dimensional scenes
AssigneePrimesense Ltd.
InventorsAmiad Gurman, Tomer Yanir, Michael Brand, Eran Guendelman
Life of this patent
Estimating the term…
Abstract
A method for processing data includes receiving a depth map of a scene containing a humanoid form. The depth map is processed so as to identify three-dimensional (3D) connected components in the scene, each connected component including a set of the pixels that are mutually adjacent and have mutually-adjacent depth values. Separate, first and second connected components are identified as both belonging to the humanoid form, and a representation of the humanoid form is generated including both of the first and second connected components.
Claims42
A method for processing data, comprising:
- receiving a temporal sequence of depth maps of a scene containing a stationary background and one or more moving foreground objects that conceal a part of the background, the depth maps comprising a matrix of pixels, at least some of which have respective pixel depth values and correspond to respective locations in the scene;
- and
- using a digital processor, constructing a background model representing the stationary background of the scene by saving, at each pixel, a maximum depth value found at the pixel over the sequence of the depth maps, such that at least a portion of the stationary background that is concealed by the moving foreground objects in a first map in the sequence is added to the background model by finding greater depth values at the corresponding pixels in at least a second depth map in the sequence in which the portion of the stationary background is no longer concealed due to motion of at least one of the foreground objects over the sequence.
A method for processing data, comprising:
- receiving a temporal sequence of depth maps of a scene containing a stationary background and one or more moving foreground objects that conceal a part of the background, the depth maps comprising a matrix of pixels, at least some of which have respective pixel depth values and correspond to respective locations in the scene;
- using a digital processor, processing a first depth map in the sequence so as to identify a first portion of the stationary background that is not concealed by the moving foreground objects in the first map;
- processing at least a second depth map in the sequence so as to identify at least a second portion of the stationary background, which is different from the first portion due to motion of at least one of the foreground objects over the sequence;
- and
- constructing a background model of the scene by combining at least the first and second portions of the stationary background,
- wherein constructing the background model comprises updating the background model responsively to changes that appear in the background over the sequence of the depth maps, and
- wherein the depth maps are captured by an imaging assembly, and wherein the method comprises assessing an extent of the changes in the background model between the depth maps in the sequence, and detecting that the imaging assembly has moved when the extent of the changes exceeds a predetermined threshold.
Apparatus for processing data, comprising:
- an imaging assembly, which is configured to produce a temporal sequence of depth maps of a scene containing a stationary background and one or more moving foreground objects that conceal a part of the background, the depth maps comprising a matrix of pixels, at least some of which have respective pixel depth values and correspond to respective locations in the scene;
- and
- a processor, which is configured to process the depth maps in the sequence so as to construct a background model representing the stationary background of the scene by saving, at each pixel, a maximum depth value found at the pixel over the sequence of the depth maps, such that at least a portion of the stationary background that is concealed by the moving foreground objects in a first map in the sequence is added to the background model by finding greater depth values at the corresponding pixels in at least a second depth map in the sequence in which the portion of the stationary background is no longer concealed due to motion of at least one of the foreground objects over the sequence.
Apparatus for processing data, comprising:
- an imaging assembly, which is configured to produce a temporal sequence of depth maps of a scene containing a stationary background and one or more moving foreground objects that conceal a part of the background, the depth maps comprising a matrix of pixels, at least some of which have respective pixel depth values and correspond to respective locations in the scene;
- and
- a processor, which is configured to process a first depth map in the sequence so as to identify a first portion of the stationary background that is not concealed by the moving foreground objects in the first map, and to process at least a second depth map in the sequence so as to identify at least a second portion of the stationary background, which is different from the first portion due to motion of at least one of the foreground objects over the sequence, and to construct a background model of the scene by combining at least the first and second portions of the stationary background,
- wherein the processor is configured to update the background model responsively to changes that appear in the background over the sequence of the depth maps, and
- wherein the processor is configured to assess an extent of the changes in the background model between the depth maps in the sequence, and to detect that the imaging assembly has moved when the extent of the changes exceeds a predetermined threshold.
A computer software product, comprising a tangible, non-transitory computer-readable medium in which program instructions are stored, which instructions, when read by a computer, cause the computer to receive a temporal sequence of depth maps of a scene containing a stationary background and one or more moving foreground objects that conceal a part of the background, the depth maps comprising a matrix of pixels, at least some of which have respective pixel depth values and correspond to respective locations in the scene,
- wherein the instructions cause the computer to process the depth maps in the sequence so as to construct a background model representing the stationary background of the scene by saving, at each pixel, a maximum depth value found at the pixel over the sequence of the depth maps, such that at least a portion of the stationary background that is concealed by the moving foreground objects in a first map in the sequence is added to the background model by finding greater depth values at the corresponding pixels in at least a second depth map in the sequence in which the portion of the stationary background is no longer concealed due to motion of at least one of the foreground objects over the sequence.
A computer software product, comprising a tangible, non-transitory computer-readable medium in which program instructions are stored, which instructions, when read by a computer, cause the computer to receive a temporal sequence of depth maps of a scene containing a stationary background and one or more moving foreground objects that conceal a part of the background, the depth maps comprising a matrix of pixels, at least some of which have respective pixel depth values and correspond to respective locations in the scene,
- wherein the instructions cause the computer to process a first depth map in the sequence so as to identify a first portion of the stationary background that is not concealed by the moving foreground objects in the first map, and to process at least a second depth map in the sequence so as to identify at least a second portion of the stationary background, which is different from the first portion due to motion of at least one of the foreground objects over the sequence, and to construct a background model of the scene by combining at least the first and second portions of the stationary background, and
- wherein the instructions cause the computer to update the background model responsively to changes that appear in the background over the sequence of the depth maps, and
- wherein the instructions cause the computer to assess an extent of the changes in the background model between the depth maps in the sequence, and to detect that the imaging assembly has moved when the extent of the changes exceeds a predetermined threshold.
Dependencies are inferred from the claim text.