IP Library Granted Patent US 9,123,118
Granted Patent B2
US 9,123,118 · App. 14/526,377 · Granted Sep 1, 2015

System and methods for measuring depth using an array camera employing a bayer filter

Inventors: Florian Ciurea (San Jose, CA); Kartik Venkataraman (San Jose, CA); Gabriel Molina (Palo Alto, CA); Dan Lelescu (Morgan Hill, CA)
Assignee: Pelican Imaging Corporation
G06T7/0075G02B27/0075G06T7/002G06T7/0065G06T15/20H04N9/097H04N13/0022H04N13/0232H04N13/0242G06T2200/21G06T2207/10012G06T2207/10024G06T2207/10052
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,123,118
App. No.
14/526,377
Granted
Sep 1, 2015
Kind
B2
Abstract

Systems in accordance with embodiments of the invention can perform parallax detection and correction in images captured using array cameras. Due to the different viewpoints of the cameras, parallax results in variations in the position of objects within the captured images of the scene. Methods in accordance with embodiments of the invention provide an accurate account of the pixel disparity due to parallax between the different cameras in the array, so that appropriate scene-dependent geometric shifts can be applied to the pixels of the captured images when performing super-resolution processing. In a number of embodiments, generating depth estimates considers the similarity of pixels in multiple spectral channels. In certain embodiments, generating depth estimates involves generating a confidence map indicating the reliability of depth estimates.

Claims (292)

1. A camera array, comprising:

a plurality of cameras configured to capture images of a scene from different viewpoints, where at least one camera in the plurality of cameras includes a Bayer color filter pattern and captures image data in multiple color channels;

a processor; and

memory containing an image processing application;

wherein the image processing application stored in memory directs the processor to:

separately configure the imaging parameters for each of the plurality of cameras;

read out image data from the plurality of cameras including a set of images captured from different viewpoints;

store the image data in the memory;

select a reference viewpoint relative to the viewpoints of the set of images captured from different viewpoints;

normalize the set of images to increase the similarity of corresponding pixels within the set of images;

determine depth estimates for pixel locations in an image from the reference viewpoint using at least a subset of the set of images, where a depth estimate for a given pixel location in the image from the reference viewpoint is determined by:

identifying pixels in the at least a subset of the 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;

in each of a plurality of color channels selected from the multiple color channels, comparing the similarity of the pixels that are identified as corresponding in the selected color channel at each of the plurality of depths; and

selecting the depth from the plurality of depths at which the identified corresponding pixels in each of the plurality of color channels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint.

2. The camera array of claim 1 , wherein the image processing application further directs the processor to select the viewpoint of a camera in the plurality of cameras that includes a Bayer color filter pattern and captures image data in multiple color channels as the reference viewpoint.

3. The camera array of claim 2 , wherein the image processing application further directs the processor to utilize a cost function to determine the similarity of the pixels identified as corresponding in the plurality of color channels.

4. The camera array of claim 3 , wherein determining the similarity of corresponding pixels further comprises spatially filtering the calculated costs.

5. The camera array of claim 4 , wherein the spatial filtering of the calculated costs utilizes a filter selected from the group consisting of:

a fixed-coefficient filter; and

an edge-preserving filter.

6. The camera array of claim 4 , wherein selecting the depth from the plurality of depths at which the identified corresponding pixels in each of the plurality of color channels have the highest degree of similarity as the depth estimate for the given pixel location in the image from the reference viewpoint further comprises selecting the depth from the plurality of depths at which the spatially filtered cost function for the identified corresponding pixels in each of the plurality of color channels indicates the highest level of similarity.

7. The camera array of claim 3 , wherein the cost function is an aggregated cost function CV(x, y, d) over each image i within the images from the set of images, where the cost function includes the following term

i

Cost

i

,

Ref

(

x

,

y

,

d

)

×

V

i

,

Ref

(

x

,

y

)

number

of

images

in

which

(

x

,

y

)

is

visible

where

Cost i,Ref (x, y, d) is a similarity measure (i.e. the cost function) for a pixel location (x, y) in the image from the reference viewpoint,

d is depth of pixel location (x, y), and

V i,Ref (x, y) is the visibility of pixel location (x, y) in image i.

8. The camera array of claim 7 , wherein:

the reference viewpoint is the viewpoint of one of the plurality of cameras; and

the individual costs Cost i,Ref (x, y, d) are computed based on each disparity hypothesis d for the pixel location (x, y) in the image from the reference viewpoint (Ref) for the image i in the set of images in the same color channel as a reference image as follows:

Cost i,Ref ( x,y,d )= S{I i ( x,y,d ), I Ref ( x,y,d )}

where

S is a similarity measure, and

I i is the normalized image i from the set of images.

9. The camera array of claim 8 , wherein the aggregated cost function is spatially filtered using a filter so that the weighted aggregated cost function is as follows:

FilteredCV

(

x

,

y

,

d

)

=

1

Norm

(

x

1

,

y

1

)

N

(

x

,

y

)

CV

(

x

1

,

y

1

,

d

)

×

wd

(

x

,

y

,

x

1

,

y

1

)

×

wr

(

I

Ref

(

x

,

y

)

-

I

Ref

(

x

1

,

y

1

)

)

where

N(x, y) is the immediate neighborhood of the pixel location (x, y),

Norm is a normalization term,

wd is a weighting function based on pixel distance, and

wr is a weighting function based on intensity difference.

10. The camera array of claim 9 , wherein the filter is a box filter and wd and wr are constant coefficients.

11. The camera array of claim 9 , wherein the filter is a bilateral filter and wd and wr are both Gaussian weighting functions.

12. The camera array of claim 9 , wherein a depth estimate for a pixel location (x, y) in the image from the reference viewpoint is determined by selecting the depth that minimizes the filtered cost at each pixel location in the depth map as follows:

D ( x,y )=argmin{Filtered CV ( x,y,d )}

13. The camera array of claim 3 , wherein the cost function incorporates the L1 norm of pixels from the multiple color channels.

14. The camera array of claim 3 , wherein the cost function incorporates the L2 norm of pixels from the multiple color channels.

15. The camera array of claim 14 , wherein the weighting factors γ G , γ R , and γ B are fixed.

16. The camera array of claim 3 , wherein:

the multiple color channels in which image data is captured by the plurality of cameras include at least Red, Green and Blue color channels; and

the cost function Cost(x, y, d) for a pixel location (x, y) in the image from the reference viewpoint at a depth d is:

Cost

(

x

,

y

,

d

)

=

γ

G

(

x

,

y

)

·

Cost

G

(

x

,

y

,

d

)

+

γ

R

(

x

,

y

)

·

Cost

R

(

x

,

y

,

d

)

+

γ

B

(

x

,

y

)

·

Cost

B

(

x

,

y

,

d

)

where

Cost G (x, y, d) is the measure of the similarity of a pixel location (x, y) in the image from the reference viewpoint to corresponding pixels in locations within the Green color channel based upon the depth d,

Cost R (x, y, d) is the measure of the similarity of corresponding pixels in locations within the Red color channel determined based upon the depth d and the pixel location (x, y) in the image from the reference viewpoint,

Cost B (x, y, d) is the measure of the similarity of corresponding pixels in locations within the Blue color channel determined based upon the depth d and the pixel location (x, y) in the image from the reference viewpoint, and

γ G , γ R , and γ B are weighting factors for the Green, Red and Blue cost functions respectively.

17. The camera array of claim 16 , wherein the Cost G (x, y, d) uses a similarity measure selected from the group consisting of an L1 norm, an L2 norm, and variance across the pixels in the Green color channel.

18. The camera array of claim 1 , wherein each of the cameras in the plurality of cameras includes a Bayer color filter pattern and captures image data in multiple color channels.

19. The camera array of claim 1 , wherein at least one camera in the plurality of cameras is a monochrome camera.

20. The camera array of claim 1 , wherein a depth estimate for a given pixel location in the image from the reference viewpoint is further determined by:

determining an initial depth estimate for the pixel location in an image from the reference viewpoint based upon the disparity at which the identified corresponding pixels in each of the plurality of color channels have the highest degree of similarity;

comparing the similarity of the identified corresponding pixels to detect mismatched pixels in at least one of the plurality of color channels;

when an initial depth estimate does not result in the detection of a mismatch between the identified corresponding pixels, selecting the initial depth estimate as the depth estimate for the pixel location in the image from the reference viewpoint; and

when an initial depth estimate results in the detection of a mismatch between the identified corresponding pixels in at least one of the plurality of color channels, updating the depth estimate for the pixel location in the image from the reference viewpoint by:

determining a set of candidate depth estimates using a plurality of competing subsets of the set of images based upon the disparities at which corresponding pixels in at least one of the plurality of color channels have the highest degree of similarity in each of the plurality of competing subsets of images; and

selecting the candidate depth of the subset having the corresponding pixels in at least one of the plurality of color channels with the highest degree of similarity as the updated depth estimate for the pixel location in the image from the reference viewpoint.

21. The camera array of claim 1 , wherein the optics within each camera are configured so that the pixels of the camera sample the same object space with sub-pixel offsets.

22. The camera array of claim 21 , wherein the image processing application further directs the processor to:

determine the visibility of the pixels in the set of images from the reference viewpoint by:

identifying corresponding pixels in the set of images using the depth estimates; and

determining that a pixel in a given image is not visible in the reference viewpoint when the pixel fails a photometric similarity criterion determined based upon a comparison of corresponding pixels; and

fuse pixels from the set of images using the depth estimates to create a fused image having a resolution that is greater than the resolutions of the images in the set of images by:

identifying the pixels from the set of images that are visible in an image from the reference viewpoint using the visibility information; and

applying scene dependent geometric shifts to the pixels from the set of images that are visible in an image from the reference viewpoint to shift the pixels into the reference viewpoint, where the scene dependent geometric shifts are determined using the depth estimates; and

fusing the shifted pixels from the set of images to create a fused image from the reference viewpoint having a resolution that is greater than the resolutions of the images in the set of images.

23. The camera array of claim 22 , wherein the image processing application further directs the processor to synthesize an image from the reference viewpoint by performing a super-resolution process based upon the fused image from the reference viewpoint, the set of images captured from different viewpoints, the depth estimates, and the visibility information.

24. A camera array, comprising:

an array camera module comprising:

an imager array including an array of focal planes, where each focal plane includes a plurality of rows of pixels that also forms a plurality of columns of pixels, and each focal plane is contained within a region of the imager that does not contain pixels from another focal plane; and

an optic array including an array of lens stacks, where each lens stack creates an optical channel that forms an image of the scene on an array of pixels within a corresponding focal plane;

wherein the imager array and optic array form a plurality of cameras and at least one of the plurality of cameras includes a Bayer color filter pattern and captures image data in multiple color channels;

a processor; and

memory containing an image processing application;

wherein the image processing application stored in memory directs the processor to:

read out image data from the array camera module forming a set of images captured from different viewpoints;

store the image data in the memory;

select a reference viewpoint relative to the viewpoints of the set of images captured from different viewpoints;

normalize the set of images to increase the similarity of corresponding pixels within the set of images;

determine depth estimates for pixel locations in an image from the reference viewpoint using at least a subset of the set of images, where a depth estimate for a given pixel location in the image from the reference viewpoint is determined by:

identifying pixels in the at least a subset of the 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;

in each of a plurality of color channels selected from the multiple color channels, comparing the similarity of the pixels that are identified as corresponding in the selected color channel at each of the plurality of depths; and

selecting the depth from the plurality of depths at which the identified corresponding pixels in each of the plurality of color channels have the highest degree of similarity as a depth estimate for the given pixel location in the image from the reference viewpoint.

Assignments (13)
SECURITY INTEREST Recorded May 3, 2023
From: ADEIA GUIDES INC.; ADEIA IMAGING LLC; ADEIA MEDIA HOLDINGS LLC; ADEIA MEDIA SOLUTIONS INC.; ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR BONDING TECHNOLOGIES INC.; ADEIA SEMICONDUCTOR INC.; ADEIA SEMICONDUCTOR SOLUTIONS LLC; ADEIA SEMICONDUCTOR TECHNOLOGIES LLC; ADEIA SOLUTIONS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 063529/0272 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2018
From: FOTONATION CAYMAN LIMITED
To: FOTONATION LIMITED
Reel/Frame 046539/0815 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2016
From: PELICAN IMAGING CORPORATION
To: FOTONATION CAYMAN LIMITED
Reel/Frame 040675/0025 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2016
From: KIP PELI P1 LP
To: PELICAN IMAGING CORPORATION
Reel/Frame 040674/0677 →
CHANGE OF NAME Recorded Oct 19, 2016
From: DBD CREDIT FUNDING LLC
To: DRAWBRIDGE SPECIAL OPPORTUNITIES FUND LP
Reel/Frame 040494/0930 →
CHANGE OF NAME Recorded Oct 19, 2016
From: DBD CREDIT FUNDING LLC
To: DRAWBRIDGE SPECIAL OPPORTUNITIES FUND LP
Reel/Frame 040423/0725 →
SECURITY INTEREST Recorded Jun 13, 2016
From: DBD CREDIT FUNDING LLC
To: DRAWBRIDGE OPPORTUNITIES FUND LP
Reel/Frame 039117/0345 →
SECURITY INTEREST Recorded Jun 13, 2016
From: DBD CREDIT FUNDING LLC
To: DRAWBRIDGE OPPORTUNITIES FUND LP
Reel/Frame 038982/0151 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR AND ASSIGNEE PREVIOUSLY RECORDED AT REEL: 037565 FRAME: 0439. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jan 25, 2016
From: KIP PELI P1 LP
To: DBD CREDIT FUNDING LLC
Reel/Frame 037591/0377 →
SECURITY INTEREST Recorded Jan 22, 2016
From: PELICAN IMAGING CORPORATION
To: KIP PELI P1 LP
Reel/Frame 037565/0439 →
SECURITY INTEREST Recorded Jan 22, 2016
From: PELICAN IMAGING CORPORATION
To: DBD CREDIT FUNDING LLC
Reel/Frame 037565/0417 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2016
From: PELICAN IMAGING CORPORATION
To: KIP PELI P1 LP
Reel/Frame 037565/0385 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2015
From: CIUREA, FLORIAN; VENKATARAMAN, KARTIK; MOLINA, GABRIEL; LELESCU, DAN
To: PELICAN IMAGING CORPORATION
Reel/Frame 035196/0990 →
Continuity (6)
Continuation 14329754 · Jul 11, 2014
Continuation 14144458 · Dec 30, 2013
Continuation 13972881 · Aug 21, 2013
Provisional Application 61780906 · Mar 13, 2013
Provisional Application 61691666 · Aug 21, 2012
Related Publication 20150042766A1 · Feb 12, 2015