Method for generating depth maps from monocular images and systems using the same
First Claim
1. A method for generating depth maps, comprising of the following steps:
- obtaining image comprising a plurality of pixels;
obtaining an initial depth map, wherein the initial depth map defines initial depth values for a plurality of pixels;
mapping each of the pixels of the image to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values; and
subdividing an image data space of the image into a plurality of sub-image spaces, and filtering the initial depth value of each of the pixels of the image according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels,wherein the step of subdividing the image data space, and filtering the initial depth value of each of the pixels of the image data comprises the steps of;
mapping each of the pixels of the image data to one or a plurality of 3D grids based on pixel intensity;
calculating an average depth value for each cell of said one or plurality of grids according to the initial depth values of the respective pixels in the cells; and
replacing the initial depth values of each of the pixels of the image data by the average depth value of the grid where the pixel is located, in order to obtain the depth information for the pixels.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods for generating depth maps from monocular still image or monocular video and systems using the same are provided. First, an initial depth map is estimated or arbitrary defined. For video inputs, motion information can be used, for still image the initial background can be arbitrary set by default, chosen by the user or can be estimated. Estimation of the initial depth map can be based on a contrast map or a blur map. The initial depth map defines initial depth values for the respective pixels of the monocular image or monocular motion picture frames. The respective pixels of the original image or video frame data are mapped to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values. An image data space of the image is subdivided into a plurality of sub-image spaces, and the initial depth value of each of the pixels of the image is filtered according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels.
-
Citations
26 Claims
-
1. A method for generating depth maps, comprising of the following steps:
-
obtaining image comprising a plurality of pixels; obtaining an initial depth map, wherein the initial depth map defines initial depth values for a plurality of pixels; mapping each of the pixels of the image to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values; and subdividing an image data space of the image into a plurality of sub-image spaces, and filtering the initial depth value of each of the pixels of the image according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels, wherein the step of subdividing the image data space, and filtering the initial depth value of each of the pixels of the image data comprises the steps of; mapping each of the pixels of the image data to one or a plurality of 3D grids based on pixel intensity; calculating an average depth value for each cell of said one or plurality of grids according to the initial depth values of the respective pixels in the cells; and replacing the initial depth values of each of the pixels of the image data by the average depth value of the grid where the pixel is located, in order to obtain the depth information for the pixels. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for generating depth maps, comprising:
-
obtaining an initial depth map, wherein the initial depth map defines initial depth values for a plurality of pixels; obtaining image comprising a plurality of pixels; mapping each of the pixels of the image to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values; filtering the initial depth values of each of the pixels of the image using a bilateral filter, in order to obtain depth information for the pixels; and subdividing an image data space of the image into a plurality of sub-image spaces, and filtering the initial depth value of each of the pixels of the image according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels, wherein the step of subdividing the image data space, and filtering the initial depth value of each of the pixels of the image data comprises the steps of; mapping each of the pixels of the image data to one or a plurality of 3D grids based on pixel intensity; calculating an average depth value for each cell of said one or plurality of grids according to the initial depth values of the respective pixels in the cells; and replacing the initial depth values of each of the pixels of the image data by the average depth value of the grid where the pixel is located, in order to obtain the depth information for the pixels. - View Dependent Claims (12, 13)
-
-
14. A depth map generation system, comprising:
-
a storage unit comprising one or a plurality of images comprising a plurality of pixels, and one or a plurality of initial depth maps defining initial depth values for the respective pixels of said one or a plurality of images, said one or plurality of images is obtained from video data; and a processing unit mapping each of the pixels of the image to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values, subdividing an image data space of the image and filtering the initial depth value of each of the pixels of the image according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels, wherein the processing unit further maps each of the pixels of the image data to one or a plurality of 3D cells based on pixel intensity, calculates an average depth value for each cell according to the initial depth values of the respective pixels in the cell, and replaces the initial depth value of each of the pixels of the image data by the average depth value of the cell where the pixel is located, in order to obtain the depth information for the pixels. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
-
-
22. A depth map generation system, comprising:
-
a storage unit comprising an image comprising a plurality of pixels, and a initial depth map defining initial depth values for the respective pixels; a processing unit mapping each of the pixels of the image to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values, and filtering the initial depth values of each of the pixels of the image data using a bilateral filter, in order to obtain depth information for the pixels, wherein the processing unit further subdivides an image data space of the image and filtering the initial depth value of each of the pixels of the image according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels, wherein the processing unit further maps each of the pixels of the image data to one or a plurality of 3D cells based on pixel intensity, calculates an average depth value for each cell according to the initial depth values of the respective pixels in the cell, and replaces the initial depth value of each of the pixels of the image data by the average depth value of the cell where the pixel is located, in order to obtain the depth information for the pixels. - View Dependent Claims (23, 24)
-
-
25. A non-transitory machine-readable storage medium comprising a computer program, which, when executed, causes a device to perform a method for generating depth maps, wherein the method comprises:
-
obtaining an initial depth map, wherein the initial depth map defines initial depth values for a plurality of pixels; obtaining image comprising a plurality of pixels; mapping each of the pixels of the image data to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values; and subdividing an image data space of the image into a plurality of sub-image spaces, and filtering the initial depth value of each of the pixels of the image data according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels, wherein the step of subdividing the image data space, and filtering the initial depth value of each of the pixels of the image data comprises the steps of; mapping each of the pixels of the image data to one or a plurality of 3D grids based on pixel intensity; calculating an average depth value for each cell of said one or plurality of grids according to the initial depth values of the respective pixels in the cells; and replacing the initial depth values of each of the pixels of the image data by the average depth value of the grid where the pixel is located, in order to obtain the depth information for the pixels.
-
-
26. A non-transitory machine-readable storage medium comprising a computer program, which, when executed, causes a device to perform a method for generating depth maps, wherein the method comprises:
-
obtaining an initial depth map, wherein the initial depth map defines initial depth values for a plurality of pixels; obtaining image comprising a plurality of pixels; mapping each of the pixels of the image data to the initial depth map according to positions of the pixels, in order to obtain corresponding initial depth values; filtering the initial depth values of each of the pixels of the image data using a bilateral filter, in order to obtain depth information for the pixels; and subdividing an image data space of the image into a plurality of sub-image spaces, and filtering the initial depth value of each of the pixels of the image according to the initial depth values of the pixels located in the same sub-image space, in order to obtain depth information for the pixels, wherein the step of subdividing the image data space, and filtering the initial depth value of each of the pixels of the image data comprises the steps of; mapping each of the pixels of the image data to one or a plurality of 3D grids based on pixel intensity; calculating an average depth value for each cell of said one or plurality of grids according to the initial depth values of the respective pixels in the cells; and replacing the initial depth values of each of the pixels of the image data by the average depth value of the grid where the pixel is located, in order to obtain the depth information for the pixels.
-
Specification