Systems and methods for estimating depth using ad hoc stereo array cameras
First Claim
1. An array camera, comprising:
- a camera array comprising a plurality of cameras that capture images of a scene from different viewpoints;
a gyroscope and accelerometers;
a processor; and
memory in communication with the processor;
wherein software directs the processor to;
obtain a first set of images captured from different viewpoints at a first time using the camera array at a first location;
obtain a second set of images captured from different viewpoints at a second time using the camera array at a second location distant from the first location;
estimate extrinsic parameters for the camera array at the first time and at the second time based upon a combination of matching features in the first and second set of images and information from the gyroscope and accelerometers;
select a reference viewpoint;
determine depth estimates for pixel locations in an image from the reference viewpoint using the first set of images, wherein generating a depth estimate for a given pixel location in the image from the reference viewpoint comprises;
identifying pixels in the first set of images that correspond to the given pixel location in the image from the reference viewpoint based upon expected disparity at a plurality of depths;
comparing the similarity of the corresponding pixels identified at each of the plurality of depths; and
selecting the depth from the plurality of depths at which the identified corresponding pixels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint;
determine whether a depth estimate for pixel locations in an image from the reference viewpoint determined using the first set of images corresponds to an observed disparity below a threshold; and
when the depth estimate corresponds to an observed disparity below the threshold, refining the depth estimate using images in the second set of images by;
identifying pixels in the first and second sets of images that correspond to the given pixel location in the image from the reference viewpoint based upon expected disparity at a plurality of depths;
comparing the similarity of the corresponding pixels form the first and second sets of images identified at each of the plurality of depths; and
selecting the depth from the plurality of depths at which the identified corresponding pixels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint.
13 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for stereo imaging with camera arrays in accordance with embodiments of the invention are disclosed. In one embodiment, a method of generating depth information for an object using two or more array cameras that each include a plurality of imagers includes obtaining a first set of image data captured from a first set of viewpoints, identifying an object in the first set of image data, determining a first depth measurement, determining whether the first depth measurement is above a threshold, and when the depth is above the threshold: obtaining a second set of image data of the same scene from a second set of viewpoints located known distances from one viewpoint in the first set of viewpoints, identifying the object in the second set of image data, and determining a second depth measurement using the first set of image data and the second set of image data.
497 Citations
20 Claims
-
1. An array camera, comprising:
-
a camera array comprising a plurality of cameras that capture images of a scene from different viewpoints; a gyroscope and accelerometers; a processor; and memory in communication with the processor; wherein software directs the processor to; obtain a first set of images captured from different viewpoints at a first time using the camera array at a first location; obtain a second set of images captured from different viewpoints at a second time using the camera array at a second location distant from the first location; estimate extrinsic parameters for the camera array at the first time and at the second time based upon a combination of matching features in the first and second set of images and information from the gyroscope and accelerometers; select a reference viewpoint; determine depth estimates for pixel locations in an image from the reference viewpoint using the first set of images, wherein generating a depth estimate for a given pixel location in the image from the reference viewpoint comprises; identifying pixels in the first set of images that correspond to the given pixel location in the image from the reference viewpoint based upon expected disparity at a plurality of depths; comparing the similarity of the corresponding pixels identified at each of the plurality of depths; and selecting the depth from the plurality of depths at which the identified corresponding pixels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint; determine whether a depth estimate for pixel locations in an image from the reference viewpoint determined using the first set of images corresponds to an observed disparity below a threshold; and when the depth estimate corresponds to an observed disparity below the threshold, refining the depth estimate using images in the second set of images by; identifying pixels in the first and second sets of images that correspond to the given pixel location in the image from the reference viewpoint based upon expected disparity at a plurality of depths; comparing the similarity of the corresponding pixels form the first and second sets of images identified at each of the plurality of depths; and selecting the depth from the plurality of depths at which the identified corresponding pixels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of estimating depth using an ad hoc stereo array camera, comprising:
-
obtaining a first set of images captured from different viewpoints at a first time using a camera array; moving the camera array and obtaining a second set of images captured from different viewpoints at a second time using the camera array; obtaining gyroscope and accelerometer measurements between the first time and the second time; estimating extrinsic parameters for the camera array at the first time and at the second time based upon a combination of matching features in the first and second set of images and the gyroscope and accelerometers measurements; using software to direct a processor to; select a reference viewpoint; determine depth estimates for pixel locations in an image from the reference viewpoint using the first set of images, wherein generating a depth estimate for a given pixel location in the image from the reference viewpoint comprises; identifying pixels in the first set of images that correspond to the given pixel location in the image from the reference viewpoint based upon expected disparity at a plurality of depths; comparing the similarity of the corresponding pixels identified at each of the plurality of depths; and selecting the depth from the plurality of depths at which the identified corresponding pixels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint; determine whether a depth estimate for pixel locations in an image from the reference viewpoint determined using the first set of images corresponds to an observed disparity below a threshold; and when the depth estimate corresponds to an observed disparity below the threshold, refining the depth estimate using images in the second set of images by; identifying pixels in the first and second sets of images that correspond to the given pixel location in the image from the reference viewpoint based upon expected disparity at a plurality of depths; comparing the similarity of the corresponding pixels from the first and second sets of images identified at each of the plurality of depths; and selecting the depth from the plurality of depths at which the identified corresponding pixels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification