1. Field of the Invention
This disclosure relates generally to multi-aperture imaging and, more particularly, to generating depth maps using multi-aperture imaging.
2. Description of Related Art
The integration and miniaturization of digital camera technology put serious constraints onto the design of the optical system and the image sensor, thereby negatively influencing the image quality produced by the imaging system. Spacious mechanical focus and aperture setting mechanisms are not suitable for use in such integrated camera applications. Hence, various digital camera capturing and processing techniques are developed in order to enhance the imaging quality of imaging systems based on fixed focus lenses.
Although the use of a multi-aperture imaging system provides substantial advantages over known digital imaging systems, such system may not yet provide same functionality as provided in single-lens reflex cameras. In particular, it would be desirable to have a fixed-lens multi-aperture imaging system which allows adjustment of camera parameters such as adjustable depth of field and/or adjustment of the focus distance. Moreover, it would be desirable to provide such multi-aperture imaging systems with 3D imaging functionality similar to known 3D digital cameras. Additionally, as it can be computationally expensive to generate a large number of depth maps for a particular scene, the depth maps are often not available in real time using conventional 3D digital cameras. Hence, there is need in the art for methods and systems allowing which may provide multi-aperture imaging systems enhanced functionality.
A multi-aperture imaging system for calculating depth information from imaged scenes. The multi-aperture imaging system captures a series of image frames of a scene. The image frames including a normal image frame and at least one structured image frame. The normal image frame is an image frame of the scene that includes red-green-blue (RGB) channel information as well as infrared (IR) channel information, and the structured image frame is an image frame that includes structured IR light (e.g., a normal image frame that includes structured IR light). The multi-aperture imaging system determines edge information of an object in the scene using a deblur technique and the normal image frame. The multi-aperture imaging system determines fill depth information for the object based in part on the at least one structured image frame. The multi-aperture imaging system generates a depth map of the scene using the edge depth information and the fill depth information.
The multi-aperture system includes an illumination source (e.g., IR Flash of structured light, an IR Flash, etc.) that is configured to send pulses of light at specific times. Additionally, in some embodiments, the multi-aperture imaging system includes an augmented sensor assembly of the multi-aperture imaging system includes a plurality of blocks, where each block includes an IR pixel, and one or more color pixels. In some or all of the blocks, the IR pixel is coupled to a color pixel in the block such that charge may be distributed across a storage capacitor in the IR pixel and a storage capacitor in the color pixel depending on how far objects in the scene are far from the multi-aperture system. For a give exposure, the multi-aperture imaging system generates an augmented IR image frame using the charge data for each of the blocks. The multi-aperture imaging system determines depth information for the augmented image frame using the charge data and a time of flight analysis.
Moreover, in some embodiments, the multi-aperture imaging system includes a sensor assembly that includes different subsets of infrared pixels and activation (e.g., opening an electronic shutter associated with a subset of pixels) of each subset of infrared pixels are independent from one another. For example, the multi-aperture imaging system may activate a first subset of IR pixels in a sensor assembly, and activate a second subset of IR pixels (different from the first subset) in the sensor assembly to capture structured light (or more generally IR light) reflected from the object in the scene, and the activation of the second subset of the IR pixels is offset (e.g., 30 ns delay) relative to the activation of the first subset of the IR pixels. The data collected from the first subset and the second subset of IR pixels is assembled to generate a composite image frame.
The multi-aperture imaging system determines edge depth information for the identified edges. In some embodiments, the multi-aperture imaging system uses a bank of blur kernels and the identified edges to determine the edge depth information. A blur kernel is representative of an amount of blur that a point source undergoes at a particular band of wavelengths for a given distance to the multi-aperture imaging system. The band of wavelengths can range from a sub-band of a single color to the full spectrum of visible and invisible light (e.g., infrared). In some embodiments, a blur kernel may also represent an approximation of the blur through using a synthetic blur kernel (i.e., an idealized representation of the blur) as well as a measured blur kernel. The bank of blur kernels includes blur kernels over a range of distances and over a range of wavelengths (e.g., Red, Green, Blue, and Infrared). Edge depth information describes a distance from an edge of an object in the imaged scene to the multi-aperture imaging system. The multi-aperture imaging system then determines the depth information for the areas by determining which set of blur kernels results in a minimum difference for each of the areas on the identified edges. For a given area, the distance associated with the determined set of blur kernels is the edge depth information for the given area.
In some embodiments, the multi-aperture imaging system determines the fill depth information using the at least one structured image frame. Time of flight analysis and/or structured light analysis are performed on the at least one structured image frame. Structured light analysis may be performed on the structured image frame to determine fill depth information. In some embodiments, the at least one structured image frame is a composite image frame. In these cases, time of flight analysis may be performed on the composite image frame, using the offset in time between the data collected by first subset of IR pixels and the second subset of IR pixels. In other embodiments, there is an additional structured image frame that is captured with a different timing relationship between the IR flash of structured light and the image capture. The shift in timing between the IR frame capture and the IR flash is such that the intensity of the IR image due to the flash is dependent on the distance of the object from the camera. The multi-aperture imaging system determines the fill depth information using fill depth information from the structured light analysis, the time of flight analysis, or some combination thereof. Additionally, in some embodiments, different charge values associated with different portions of the frame may be used to perform time of flight analysis.
The multi-aperture imaging system generates a depth map of the scene using the edge depth information and the fill depth information. For example, the multi-aperture imaging system combines the edge depth information and the fill depth information to determine depth information for the imaged scene.
Other aspects include components, devices, systems, improvements, methods, processes, applications, computer readable mediums, and other technologies related to any of the above.
The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawing(s) will be provided by the Office upon request and payment of the necessary fee.
Embodiments of the disclosure have other advantages and features which will be more readily apparent from the following detailed description and the appended claims, when taken in conjunction with the accompanying drawings, in which:
The figures depict various embodiments for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.
The multi-aperture system 120 includes at least two apertures, shown in
The sensor 130 detects both the visible image corresponding to aperture 122 and the infrared image corresponding to aperture 124. In effect, there are two imaging systems that share a single sensor array 130: a visible imaging system using optics 110, aperture 122 and sensor 130; and an infrared imaging system using optics 110, aperture 124 and sensor 130. The imaging optics 110 in this example is fully shared by the two imaging systems, but this is not required. In addition, the two imaging systems do not have to be visible and infrared. They could be other spectral combinations: red and green, or infrared and white (i.e., visible but without color), for example.
The exposure of the image sensor 130 to electromagnetic radiation is typically controlled by a shutter 170 and the apertures of the multi-aperture system 120. When the shutter 170 is opened, the aperture system controls the amount of light and the degree of collimation of the light exposing the image sensor 130. The shutter 170 may be a mechanical shutter or, alternatively, the shutter may be an electronic shutter integrated in the image sensor. The image sensor 130 typically includes rows and columns of photosensitive sites (pixels) forming a two dimensional pixel array. The image sensor may be a CMOS (complementary metal oxide semiconductor) active pixel sensor or a CCD (charge coupled device) image sensor. Alternatively, the image sensor may relate to other Si (e.g. a-Si), III-V (e.g. GaAs) or conductive polymer based image sensor structures.
When the light is projected by the imaging optics 110 onto the image sensor 130, each pixel produces an electrical signal, which is indicative of the electromagnetic radiation (energy) incident on that pixel. In order to obtain color information and to separate the color components of an image which is projected onto the imaging plane of the image sensor, typically a color filter array 132 is interposed between the imaging optics 110 and the image sensor 130. The color filter array 132 may be integrated with the image sensor 130 such that each pixel of the image sensor has a corresponding pixel filter. Each color filter is adapted to pass light of a predetermined color band onto the pixel. Usually a combination of red, green and blue (RGB) filters is used. However other filter schemes are also possible, e.g. CYGM (cyan, yellow, green, magenta), RGBE (red, green, blue, emerald), etc. Alternately, the image sensor may have a stacked design where red, green and blue sensor elements are stacked on top of each other rather than relying on individual pixel filters.
Each pixel of the exposed image sensor 130 produces an electrical signal proportional to the electromagnetic radiation passed through the color filter 132 associated with the pixel. The array of pixels thus generates image data (a frame) representing the spatial distribution of the electromagnetic energy (radiation) passed through the color filter array 132. The signals received from the pixels may be amplified using one or more on-chip amplifiers. In one embodiment, each color channel of the image sensor may be amplified using a separate amplifier, thereby allowing to separately control the ISO speed for different colors.
Further, pixel signals may be sampled, quantized and transformed into words of a digital format using one or more analog to digital (A/D) converters 140, which may be integrated on the chip of the image sensor 130. The digitized image data are processed by a processor 180, such as a digital signal processor (DSP) coupled to the image sensor, which is configured to perform well known signal processing functions such as interpolation, filtering, white balance, brightness correction, and/or data compression techniques (e.g. MPEG or JPEG type techniques).
Additionally, in some embodiments, the image sensor 130 may include a plurality of IR pixels that are able to be exposed at different times relative to each other. For example, a first IR pixel may be activated and after a period of time a second IR pixel may be activated. Additional details regarding this embodiment of the image sensor 130 is discussed in detail below with regard to
The processor 180 may include signal processing functions 184 for obtaining depth information associated with an image captured by the multi-aperture imaging system. These signal processing functions may provide a multi-aperture imaging system with extended imaging functionality including variable depth of focus, focus control and stereoscopic 3D image viewing capabilities. The details and the advantages associated with these signal processing functions will be discussed hereunder in more detail.
The processor 180 may also be coupled to additional compute resources, such as additional processors, storage memory for storing captured images and program memory for storing software programs. A controller 190 may also be used to control and coordinate operation of the components in imaging system 100. For example, the controller 190 may be configured to cause the multi-aperture imaging system 100 to perform the processes described below with regard to
As described above, the sensitivity of the multi-aperture imaging system 100 is extended by using infrared imaging functionality. To that end, the imaging optics 110 may be configured to allow both visible light and infrared light or at least part of the infrared spectrum to enter the imaging system. Filters located at the entrance aperture of the imaging optics 110 are configured to allow at least part of the infrared spectrum to enter the imaging system. In particular, imaging system 100 typically would not use infrared blocking filters, usually referred to as hot-mirror filters, which are used in conventional color imaging cameras for blocking infrared light from entering the camera. Hence, the light entering the multi-aperture imaging system may include both visible light and infrared light, thereby allowing extension of the photo-response of the image sensor to the infrared spectrum. In cases where the multi-aperture imaging system is based on spectral combinations other than visible and infrared, corresponding wavelength filters would be used.
In some embodiments, the multi-aperture imaging system 100 may also include one or more illumination sources (not shown). An illumination source is an IR light source that is used to illuminate a scene to assist the multi-aperture imaging system 100 in determining depth information for areas of low frequency (e.g., flat space on a wall). The illumination source may be, e.g., a structured light source, an IR flash, or some combination thereof.
A structured light source is configured, for a particular frame, to illuminate a scene with structured light. Structured light is light projected onto a scene that increases the spatial frequency of the illuminated surface. Structured light may be, e.g., dots, grids, horizontal bars, etc., or some combination thereof, that is projected out into the imaged scene. The structured light source includes an IR light source and a structured light element. The IR light source (e.g., laser diode, light emitting diode, etc.) emits IR light (e.g., 740 nm) toward the structured light element, which transforms the IR light into structured IR light. The structured light element is an optical element that when illuminated by a light source outputs structured light. The structured light element may be, e.g., a mask, a diffractive element, some other optical element that when illuminated by a light source outputs structured light, or some combination thereof. The multi-aperture imaging system 100 then projects (e.g., via one or more lenses) the structured IR light onto the scene. In some embodiments, structured light may differ from frame to frame (e.g., a pattern associated with the structure light may differ for adjacent image frames).
An IR flash is configured for use in time-of-flight analysis as discussed in detail below with regard to
The IR flash and/or the structured IR light are output at a specific narrow wavelength (e.g., 740 nm). In embodiments, the multi-aperture imaging system 100 includes a filter that has wide aperture in the visible portion of the electromagnetic spectrum (e.g., 400 nm to 700 nm) and a wide aperture that bounds the IR flash and/or structured IR light source wavelength (e.g., 730 nm-750 nm), but has a narrow aperture at other wavelengths (e.g., between 700 and 730 nm and over 750 nm). Moreover, in some embodiments, the IR flash and structured IR light may be at different wavelengths, and the filter may be configured to have wide apertures that bound each of those respective wavelengths.
The above discussed techniques for determining depth information may be combined using a multi-aperture imaging system 100. For example, in some embodiments, the multi-aperture imaging system 100 is configured to capture a series of image frames of raw image data. The series of image frames are processed for edge information and/or fill depth information using different techniques. For example, the multi-aperture imaging system 100 may process the first frame using deblur, the second frame using structured light, and the third frame (in combination with the second frame) using time of flight. Such combinations are discussed in detail below with regard to
In order to take advantage of the spectral sensitivity provided by the image sensor as illustrated by
An infrared pixel may be realized by covering a pixel with a filter material, which substantially blocks visible light and substantially transmits infrared light, preferably infrared light within the range of approximately 700 through 1100 nm. The infrared transmissive pixel filter may be provided in an infrared/color filter array (ICFA) may be realized using well known filter materials having a high transmittance for wavelengths in the infrared band of the spectrum, for example a black polyimide material sold by Brewer Science under the trademark “DARC 400”.
Such filters are described in more detail in US2009/0159799, “Color infrared light sensor, camera and method for capturing images,” which is incorporated herein by reference. In one design, an ICFA contain blocks of pixels, e.g. a block of 2×2 pixels, where each block comprises a red, green, blue and infrared pixel. When exposed, such an ICFA image sensor produces a raw mosaic image that includes both RGB color information and infrared information. After processing the raw mosaic image, a RGB color image and an infrared image may be obtained. The sensitivity of such an ICFA image sensor to infrared light may be increased by increasing the number of infrared pixels in a block. In one configuration (not shown), the image sensor filter array uses blocks of sixteen pixels, with four color pixels (RGGB) and twelve infrared pixels.
Instead of an ICFA image sensor (where color pixels are implemented by using color filters for individual sensor pixels), in a different approach, the image sensor 130 may use an architecture where each photo-site includes a number of stacked photodiodes. Preferably, the stack contains four stacked photodiodes responsive to the primary colors RGB and infrared, respectively. These stacked photodiodes may be integrated into the silicon substrate of the image sensor.
The multi-aperture system, e.g. a multi-aperture diaphragm, may be used to improve the depth of field (DOF) or other depth aspects of the camera. The DOF determines the range of distances from the camera that are in focus when the image is captured. Within this range the object is acceptably sharp. For moderate to large distances and a given image format, DOF is determined by the focal length of the imaging optics N, the f-number associated with the lens opening (the aperture), and/or the object-to-camera distance s. The wider the aperture (the more light received) the more limited the DOF. DOF aspects of a multi-aperture imaging system are illustrated in
Consider first
The pixels of the image sensor may thus receive a wider-aperture optical image signal 352B for visible light, overlaying a second narrower-aperture optical image signal 354B for infrared light. The wider-aperture visible image signal 352B will have a shorter DOF, while the narrower-aperture infrared image signal 354 will have a longer DOF. In
Objects 150 close to the plane of focus N of the lens are projected onto the image sensor plane 330 with relatively small defocus blur. Objects away from the plane of focus N are projected onto image planes that are in front of or behind the image sensor 330. Thus, the image captured by the image sensor 330 is blurred. Because the visible light 352B has a faster f-number than the infrared light 354B, the visible image will blur more quickly than the infrared image as the object 150 moves away from the plane of focus N. This is shown by
Most of
The DSP 180 may be configured to process the captured color and infrared images.
In
The red color signal is passed through a high-pass filter 430 in order to extract the high-frequency components (i.e. the sharpness information) associated with the infrared image signal.
As the relatively small size of the infrared aperture produces a relatively small infrared image signal, the filtered high-frequency components are amplified 440 accordingly, for example in proportion to the ratio of the visible light aperture relative to the infrared aperture.
The effect of the relatively small size of the infrared aperture is partly compensated by the fact that the band of infrared light captured by the red pixel is approximately four times wider than the band of red light. Typically, a digital infrared camera is four times more sensitive than a visible light camera. After amplification, the amplified high-frequency components derived from the infrared image signal are added 450 to (or otherwise blended with) each color component of the Bayer filtered raw image data. This way, the sharpness information of the infrared image data is added to the color image. Thereafter, the combined image data may be transformed 460 into a full RGB color image using a demosaicking algorithm.
In a variant, the Bayer filtered raw image data are first demosaicked into a RGB color image and subsequently combined with the amplified high frequency components by addition or other blending.
The method shown in
The multi-aperture imaging system thus allows a simple mobile phone camera with a typical f-number of 2 (e.g. focal length of 3.5 mm and a diameter of 1.5 mm) to improve its DOF via a second aperture with a f-number varying e.g. between 6 for a diameter of 0.5 mm up to 15 or more for diameters equal to or less than 0.2 mm. The f-number is defined as the ratio of the focal length f and the effective diameter of the aperture. Preferable implementations include optical systems with an f-number for the visible aperture of approximately 2 to 4 for increasing the sharpness of near objects, in combination with an f-number for the infrared aperture of approximately 16 to 22 for increasing the sharpness of distance objects.
The improvements in the DOF and the ISO speed provided by a multi-aperture imaging system are described in more detail in U.S. application Ser. No. 13/144,499, “Improving the depth of field in an imaging system”; U.S. application Ser. No. 13/392,101, “Reducing noise in a color image”; U.S. application Ser. No. 13/579,568, “Processing multi-aperture image data”; U.S. application Ser. No. 13/579,569, “Processing multi-aperture image data”; and U.S. application Ser. No. 13/810,227, “Flash system for multi-aperture imaging.” All of the foregoing are incorporated by reference herein in their entirety.
The multi-aperture imaging system may also be used for generating depth information for the captured image. The DSP 180 of the multi-aperture imaging system may include at least one depth function, which typically depends on the parameters of the optical system and which in one embodiment may be determined in advance by the manufacturer and stored in the memory of the camera for use in digital image processing functions.
If the multi-aperture imaging system is adjustable (e.g., a zoom lens), then the depth function typically will also include the dependence on the adjustment. For example, a fixed lens camera may implement the depth function as a lookup table, and a zoom lens camera may have multiple lookup tables corresponding to different focal lengths, possibly interpolating between the lookup tables for intermediate focal lengths. Alternately, it may store a single lookup table for a specific focal length but use an algorithm to scale the lookup table for different focal lengths. A similar approach may be used for other types of adjustments, such as an adjustable aperture. In various embodiments, when determining the distance or change of distance of an object from the camera, a lookup table or a formula provides an estimate of the distance based on one or more of the following parameters: the blur kernel providing the best match between IR and RGB image data; the f-number or aperture size for the IR imaging; the f-number or aperture size for the RGB imaging; and the focal length. In some imaging systems, the physical aperture is constrained in size, so that as the focal length of the lens changes, the f-number changes. In this case, the diameter of the aperture remains unchanged but the f-number changes. The formula or lookup table could also take this effect into account.
In certain situations, it is desirable to control the relative size of the IR aperture and the RGB aperture. This may be desirable for various reasons. For example, adjusting the relative size of the two apertures may be used to compensate for different lighting conditions. In some cases, it may be desirable to turn off the multi-aperture aspect. As another example, different ratios may be preferable for different object depths, or focal lengths or accuracy requirements. Having the ability to adjust the ratio of IR to RGB provides an additional degree of freedom in these situations.
As described above in
In a first embodiment, a depth function R is defined by the ratio of the sharpness information in the color image to the sharpness information in the infrared image. Here, the sharpness parameter may relate to the circle of confusion, which corresponds to the blur spot diameter measured by the image sensor. As described above in
Hence, in a multi-aperture imaging system, the increase or decrease in sharpness of the RGB components of a color image relative to the sharpness of the IR components in the infrared image is a function of the distance to the object. For example, if the lens is focused at 3 meters, the sharpness of both the RGB components and the IR components may be the same. In contrast, due to the small aperture used for the infrared image for objects at a distance of 1 meter, the sharpness of the RGB components may be significantly less than those of the infrared components. This dependence may be used to estimate the distances of objects from the camera.
In one approach, the imaging system is set to a large (“infinite”) focus point. That is, the imaging system is designed so that objects at infinity are in focus. This point is referred to as the hyperfocal distance H of the multi-aperture imaging system. The system may then determine the points in an image where the color and the infrared components are equally sharp. These points in the image correspond to objects that are in focus, which in this example means that they are located at a relatively large distance (typically the background) from the camera. For objects located away from the hyperfocal distance H (i.e., closer to the camera), the relative difference in sharpness between the infrared components and the color components will change as a function of the distance s between the object and the lens. The ratio between the sharpness information in the color image and the sharpness information in the infrared image, for an object at distance s, will hereafter be referred to as the sharpness ratio R(s).
The sharpness ratio R(s) may be obtained empirically by measuring the sharpness ratio for one or more test objects at different distances s from the camera lens. It may also be calculated based on models of the imaging system. In one embodiment, R(s) may be defined as the ratio between the absolute value of the high-frequency infrared components Dir and the absolute value of the high-frequency color components Dcol, for an object located at distance s. In another embodiment, the depth function R(s) may be based on the difference between the infrared and color components.
One example of post-processing is to generate a depth map for an image captured by the multi-aperture imaging system.
Examples of post-processing functions, including other variations for calculating sharpness and/or depth, are described in U.S. application Ser. No. 13/144,499, “Improving the depth of field in an imaging system”; U.S. application Ser. No. 13/392,101, “Reducing noise in a color image”; U.S. application Ser. No. 13/579,568, “Processing multi-aperture image data”; U.S. application Ser. No. 13/579,569, “Processing multi-aperture image data”; and U.S. application Ser. No. 13/810,227, “Flash system for multi-aperture imaging”; all of which are incorporated herein in their entirety. For example, in
In some embodiments, depth information may be determined using a bank of blur kernels. A blur kernel is representative of an amount of blur that a point source undergoes at a particular band of wavelengths for a given distance to the multi-aperture imaging system 100. The band of wavelengths can range from a sub-band of a single color to the full spectrum of visible and invisible light (e.g., infrared). In some embodiments, a blur kernel may also represent an approximation of the blur through using a synthetic blur kernel (i.e., an idealized representation of the blur) as well as a measured blur kernel. The multi-aperture imaging system 100 includes a first imaging system and a second imaging system. For example, the first imaging system may correspond to the portion of the multi-aperture imaging system 100 that captures visible light, and the second imaging system may correspond to the portion of the multi-aperture imaging system 100 that captures IR light. The first imaging system is characterized by a first point spread function and the second imaging system is characterized by a second point spread function that varies as a function of depth differently than the first point spread function. The first imaging system captures first raw image data associated with a first image of a scene, and the second imaging system captures second raw image data associated with a second image of the scene.
The bank of blur kernels includes blur kernels over a range of distances and over a range of wavelengths for both the first and second imaging system. Blur kernels associated with the first imaging system are referred to as first blur kernels, and blur kernels associated with the second imaging system are referred to as second blur kernels. For example, assuming the first imaging system images light in the visible spectrum and the second imaging system images light in the IR spectrum, the first blur kernels include for each distance value a blur kernel for the blue channel, the red channel, the green channel, or some combination thereof. And the second blur kernels include for each of the distance values IR blur kernels. Accordingly, for a given distance value there is a set of blur kernels—at least one associated with the first imaging system and a second associated with the second imaging system. Additional information describing depth computations using blur kernels are described in U.S. application Ser. No. 14/832,062, titled “Multi-Aperture Depth Map Using Blur Kernels and Down Sampling,” filed on Aug. 21, 2015 and is hereby incorporated by reference in its entirety.
As discussed in detail below with regard to
The multi-aperture imaging system 100 captures 710 raw image data of a scene, the raw image data including a normal image frame. The normal image frame is an image frame of the scene that includes visible (e.g., RGB) channel information as well as IR channel information. The multi-aperture imaging system 100 may include two separate imaging pathways, specifically, a first imaging system characterized by a first point spread function and a second imaging system characterized by a second point spread function that varies as a function of depth differently than the first point spread function. The first imaging system captures first raw image data associated with a first image of a scene, and the second imaging system captures a second raw image data associated with a second image of the scene. For example, the first imaging system may capture an RGB image of the scene, and the second imaging system may capture an IR image of the scene. In some embodiments, the RGB image (e.g., the first image) and the IR image (e.g., the second image) are captured at the same time using the same sensor. The multi-aperture imaging system 100 separates the color and infrared pixel signals in the captured raw mosaic image using e.g. a known demosaicking algorithm.
The multi-aperture imaging system 100 generates 720 high-frequency image data using the raw image data. The multi-aperture imaging system 100 applies a high pass filter to the first image and the second image to generate high-frequency image data. In embodiments where the first image is a color image, and the second image is an IR image, high-frequency color image data is generated by applying a high pass filter to one or more of the color channels (e.g., red, green, or blue) of the first image, and the high-frequency IR image data is generated by applying a high pass filter to the IR channel information. An example of a high pass filter is discussed above with regard to
The multi-aperture imaging system 100 identifies 730 edges (i.e., transitions in color) using normalized derivative values of the high-frequency image data. In some embodiments, the multi-aperture imaging system 100 calculates the derivative of adjacent pixel values for pixels located in the high-frequency image data (e.g., high frequency color image data and the high-frequency IR data). Additionally, in alternate embodiments, the multi-aperture imaging system 110 calculates the derivative of the of adjacent pixel values for pixels outside of the high-frequency color image data and the high-frequency IR data. For example, the multi-aperture imaging system 110 may calculate derivative values for all of the pixels.
The multi-aperture imaging system 100 then normalizes the magnitude and polarity of the calculated derivatives to identify edges. For example, the multi-aperture imaging system 100 adjusts all of the calculated values such that they have the same sign and are greater than or equal to some threshold magnitude. As each of the values are associated with a particular location in the imaged scene, by adjusting the calculated values such that they all are greater than or equal to some threshold magnitude and have the same polarity allows the multi-aperture imaging system 100 to better distinguish the location of the edges that were roughly identified by the high pass filter. The use of the normalized derivative values allows for precise location of transitions in color and the normalization helps the multi-aperture imaging system 100 identify amplitude changes that would otherwise be minimal and difficult to detect (e.g., yellow to gray in the IR).
The multi-aperture imaging system 100 determines 740 edge depth information for the identified edges. In some embodiments, the multi-aperture imaging system 100 determines the edge depth information for each of the identified edges using a bank of blur kernels. The bank of blur kernels includes first blur kernels associated with the first imaging system and corresponding second blur kernels associated with the second imaging system. Edge depth information describes a distance from an edge of an object in the imaged scene to the multi-aperture imaging system. Each of the identified edges corresponds to groups of pixels, also referred to as edge pixels. The groups of edge pixels represent edges of objects in the scene. A fill area is an area composed of non-edge pixels. For example, an edge of a blank wall may be represented by edge pixels, the fill area is the remaining portion of the wall.
The multi-aperture imaging system 100 retrieves a first set of blur kernels and the corresponding set of second blur kernels for a given distance value. The multi-aperture imaging system 100 applies the retrieved blur kernels to blur a group of edge pixels. For example, the multi-aperture imaging system 100 may apply the retrieved blur kernels to an entire frame and a comparison is made in a window around a pixel of interest of the group of edge pixels, and a similar process is applied each of the edge pixels as the pixel of interest changes. In other embodiments, the multi-aperture imaging system 100 applies a retrieved IR blur kernel to the IR high frequency data (which is generally sharper than the visible images). The multi-aperture imaging system 100 then determines an error value for the blurred group of pixels by e.g., determining a magnitude of a difference between the group of pixels blurred by a first blur kernel and the group of pixels blurred by a second blur kernel. The multi-aperture imaging system 100 repeats the above process on the same group of edge pixels for different sets of first and second blur kernels until a minimum error value is determined. The depth value corresponding to the set of blur kernels used to generate the minimum error value is then mapped to that group of edge pixels, and the multi-aperture imaging system 100 moves to a second group of edge pixels and repeats the above process to identify a depth for the second group of edge pixels, moves to a third group of edge pixels and repeats the above process to identify a depth for the third group of edge pixels, and so on. In this manner, the multi-aperture imaging system 100 determines depth information for the edges in the scene.
In embodiments where the first blur kernels correspond to red, green, or blue blur kernels and the second blur kernels correspond to IR blur kernels, the multi-aperture imaging system may perform the above process for one or more of the color channels in the first blur kernels (i.e., red blur kernels, green blur kernels, and blue kernels). The multi-aperture imaging system 100 performs the above process using a one or more of the colors in the first kernel and the IR blur kernels. In some embodiments, a single color of the first blur kernels may be used with the IR blur kernels. The multi-aperture imaging system 100 may determine which color of the first blur kernels is used by, e.g., selecting the channel with the highest contrast. For example, the multi-aperture imaging system 100 measures the contrast over an entire frame for each channel, and then select the channel having the highest contrast. Alternatively, the multi-aperture imaging system 100 measures contrast within a specific window for each of the channels, and selects the channel having the highest contrast within the specific window. In some embodiments, the multi-aperture imaging system 100 performs the above process with each of the channels separately to identify edges. In some embodiments, a weighting can be used based on the contrast in the channel (higher contrast higher weighting) either locally or across the entire image. to make the edges all look the same with the blur being the main difference.
In some embodiments, the aperture imaging system 100 determines edge depth information for the identified edges in substantially the same manner as described above with regard to steps 540-560 in
The multi-aperture imaging system 100 determines 750 fill depth information for image components other than the identified edges. For example, the multi-aperture imaging system 100 may determine the fill depth information for spaces between identified edges and/or other low frequency (frequency lower than the high-pass filter applied in step 720) portions of the imaged scene. Fill depth information may be determined using regularization, color based regularization, structured light, time of flight, or some combination thereof. The use of structured light to determine fill depth information is described in detail below with regard to
Regularization is one process of determining fill depth information. In some embodiments, regularization is based on edge information, but not color information. For example, an estimate of depth for a pixel of interest is based on taking a weighted average of depth values associated with edge pixels near the pixel of interest. The distance of an edge pixel to the pixel of interest is used to weight the edge pixel's contribution. Accordingly, the closer the edge pixel's position is to the pixel of interest, the greater the contribution it makes to the depth calculation. Accordingly, depth values may be calculated for pixels that are not associated with edges. The calculated depth values are referred to as fill depth information.
In other embodiments, color-based regularization is used to generate the fill depth information. Color-based regularization determines the fill depth information based on colors associated with the identified edge pixels. The multi-aperture imaging system 100 identifies edge pixels with relatively constant color values (e.g., color values of adjacent pixels are within a threshold range of values from each other). The identified edge pixels have known depth values (determined in step 740). The multi-aperture imaging system 100 then identifies non-edge pixels adjacent to the identified edge pixels that have corresponding color values to the identified edge pixels. The multi-aperture imaging system 100 then assigns the depth information associated with the identified edge pixels to the identified non-edge pixels. The multi-aperture imaging system 100 then iteratively identifies adjacent non-edge pixels that have corresponding color information and are adjacent to the previously identified non-edge pixels, and assigns the depth value to the identified pixels. In this manner, the multi-aperture imaging system 100 determines depth information for non-edge pixels by extrapolating a depth value for an edge across a surface with color that corresponds to the edge. Examples of regularization are discussed below with regard to
The multi-aperture imaging system 100 generates 760 a depth map of the imaged scene using the edge depth information and the fill depth information. The edge depth information provides depth information for edges in the scene, and the fill depth information provides depth information for other portions of the scene (e.g., between identified edges, wall surfaces, etc.). The multi-aperture imaging system 100 combines the edge depth information and fill depth information into a single depth map for the imaged scene. In some embodiments, the multi-aperture imaging system 100 stores the depth map for later use and/or generates an image for presentation to the user of the multi-aperture imaging system 100.
Note that the above steps 720, 730, and 740 together describe a deblur technique for determining edge information using a normal image frame. Deblur may be used in combination with other techniques for determining depth information, as described below with regard to
Turning now to an embodiment of how fill depth information is generated in step 750, and specifically how it is generated using structured IR light,
The system 100 illuminates 810 a scene with structured IR light using the multi-aperture imaging system 100. The structured IR light increases the spatial frequency associated with the illuminated portion of the scene. Accordingly, in performing step 720, high frequency image data is generated in areas illuminated by the structured IR light that otherwise might be filtered out by the high pass filter in step 720. In alternate embodiments, the structured IR light is a specific pattern that changes with distance from the multi-aperture imaging system 100 in a predictable manner. A structured depth model describes how the pattern changes with distance from the multi-aperture imaging system 100. An example of a scene illuminated with structured IR light is discussed below with regard to
The multi-aperture imaging system 100 captures 820 one or more structured image frames. A structured image frame is an image frame that includes structured IR light (e.g., a normal image frame that includes structured IR light). In some embodiments, a single structured IR frame is captured. Alternatively, one or more normal image frames are captured for each structured IR frame. The ratio of normal image frames to structured IR frames may be adjusted for particular applications. For example, for an application where fine detail (i.e., depth varies relatively rapidly from pixel to pixel versus a situation where the depth is relatively constant across a surface) is essential, multiple normal image frames may be captured to track fine detail, while relatively few structured IR frames are captured to generate fill depth information for surfaces of relatively low resolution. While steps 810 and 820 are illustrated as occurring after step 740, in alternate embodiments, steps 810 and 820 occur in conjunction with step 710 or prior to step 710.
The multi-aperture imaging system 100 determines 830 fill depth information using the one or more structured image frames. In some embodiments, the multi-aperture imaging system 100 determines the fill depth information for portions of the imaged scene illuminated with the structured IR light using the same methodology described above for identifying edge depth information. For example, step 830 may include steps 720, 730, and 740. As the structured IR light increases the spatial resolution of the illuminated area, portions of the scene illuminated with the structured IR light are also included in the high frequency image data, and they can be considered pseudo edges—that edge depth information may be determined for in the same manner as described above in steps 730 and 740.
In alternate embodiments, the structured IR light is a known pattern that depth may be determined from by looking at changes in the pattern with distance from the multi-aperture imaging system 100. For each structured IR frame, the multi-aperture imaging system 100 identifies changes in the structured IR patterns within the structured IR image frame. For the identified changes in the structured IR patterns, the multi-aperture imaging system 100 determines a distance to the pattern using the structured depth model. For example, the multi-aperture imaging system 100 matches an identified structured IR pattern in the imaged scene to altered structured IR patterns in the structured depth model, where each of the known altered structured IR patterns are associated with different distance values from the multi-aperture imaging system 100. Accordingly, the multi-aperture imaging system 100 is able to determine fill depth information for the identified structured IR patterns in the structured IR image frame. In alternate embodiments, the multi-aperture imaging system 100 calculates the depth information for the structured IR light using some other methodology. The process flow then proceeds to step 760 as described above.
Turning now to another embodiment of how fill depth information is generated in step 750, and specifically how it is generated using time of flight analysis.
The multi-aperture imaging system 100 captures 910 a first raw image data of a scene illuminated using a first pulse of IR light. Continuing the above example, the capturing of the first raw image is done by the second imaging system. The multi-aperture imaging system 100 controls the timing of the capture relative to the emission of the first pulse of IR light. The timing of the capture is controlled by an electronic shutter which may turn on/off the image sensor (e.g., image sensor 130) at specific times relative to sending a pulse of IR light. The pulse of IR light is of a fixed duration (Tpulse) and starts at time, Tinitial. The resulting IR light pulse illuminates the scene and some the IR light is reflected back toward the multi-aperture imaging system 100 by objects in the scene. Depending on the distance from the multi-aperture imaging system 100, the incoming light experiences a delay from Tinitial. For example, an object 2.5 meters away will delay the light by 16.66 ns (=2*2.5 m/3*10̂6 m/s). In step 910 the electronic shutter opens at the same time the first pulse of IR light is sent, and stays open for a calibration period. The calibration period is a period of time sufficient to capture a threshold percentage of reflected IR pulse light. The calibration period is typically 2Tpulse. In other embodiments, the calibration period may be some other value. Additionally, the calibration period may be configured to always be less than some threshold value. In alternate embodiments, in step 910 the electronic shutter opens at a time offset from a time the first pulse of IR light is sent.
The multi-aperture imaging system 100 captures 920 a second raw image data of the scene using a second pulse of IR light and an offset exposure. Continuing the above example, the capturing of the second raw image is done by the second imaging system. An offset exposure is when the IR pulse starts prior to the electronic shutter being open. For example, assuming an IR pulse starts at time 0, and lasts till time T, an offset exposure may start any time after time 0.
In some embodiments, the multi-aperture imaging system 100 or user selects the offset value based in part on a distance from an object within a zone of interest in the scene to the camera. Distance from the multi-aperture imaging system 100 may be divided up into a plurality of zones. Each zone corresponds to a different range of distances from the multi-aperture imaging system 100. For example, less than a meter from the multi-aperture imaging system 100, 1-3 meters from the multi-aperture imaging system 100, 3-6 meters from the multi-aperture imaging system 100, 6-10 meters from the multi-aperture imaging system 100, and greater than 10 meters from the multi-aperture imaging system 100 all may correspond to different zones. A zone of interest is a particular zone that is selected as being of interest. The offsets are different for objects in different zones of interest.
The multi-aperture imaging system 100 determines 930 fill depth information for the scene using the first raw image data and the second raw image data. The multi-aperture imaging system 100 matches the first frame of raw image data to the second frame of raw image data. The multi-aperture imaging system 100 uses the captured intensities between corresponding portions of the matched raw image data frames to calculate depth information. In some embodiments, the multi-aperture imaging system 100 determines the depth information for each corresponding pixel. In other embodiments, the multi-aperture imaging system 100 determines the depth information for pixels or groups of pixels that are not edges (e.g., as calculated in steps 720 and 730). The multi-aperture imaging system 100 determines the depth information for a particular portion of the first raw image data and corresponding portion of the second raw image data using the following relation:
where c is the speed of light, Tpulse is the IR pulse length, Q1 is the accumulated charge from a pixel associated with the first raw image data, and Q2 is the accumulated charge from a corresponding pixel associated with the second raw image data.
As the determined depth information includes depth information for non-edges—the process 900 is able to determine fill depth information. The process flow then proceeds to step 760 as described above.
In embodiments, using an IR illumination source, the multi-aperture imaging system 100 can interleave normal image frames with other image frames (e.g., structured image frame, IR flash, etc.). As the sensor frame rate increases, typically 30-60 frames per second to 120-240 frames per second, different lighting conditions can be applied to interleaved frames. In one example, (i) frames #1, #5, #9 . . . use normal lights; (ii) frames #2, #6, #10 . . . use normal lights and IR flash with specific spectrum (e.g. 650 nm-800 nm) to boost NIR exposure for IR diode particularly; (iii) frames #3, #7, #11 . . . use structured IR flash; and frames #4, #8, #12 . . . use visual flash to boost visual lights on RGB diodes. The first and fourth sets of frames are used for color image restoration and optimization; the second set of frames be used for estimating depth; and the third set of frames can be used for depth using structured lights (e.g., structured IR light). In other examples, other combinations of interleaved frames are used. Accordingly, interleaving normal image frames with other images frames may improve image quality and/or depth map estimation may be obtained.
Turning now to a discussion of ways to improve computation speed of the multi-aperture imaging system 100. In some embodiments, the multi-aperture imaging system 100 (via, e.g., the controller 190) limits determining depth information to specific portions of the imaged scene instead of the entire scene. This selective determination of depth maps reduces the time it takes to ultimately generate a depth map for the imaged scene. In addition to standard imaging, this is also useful for gesture tracking applications.
In some embodiments, the multi-aperture imaging system 100 identifies pixels of interest from a plurality of sequential image frames. The image frames may be normal image frames (i.e., no structured light) or structured image frames. The multi-aperture imaging system 100 identifies the pixels of interest by identifying what regions are moving in the image frames. The multi-aperture imaging system 100 then generates a depth map for the identified regions using, e.g., steps 720-760 of
In some embodiments, the multi-aperture imaging system 100 may also reduce possible delays in generation of depth maps by processing a depth map at certain intervals, such as every five frames, instead of every frame. The raw image data may be used directly to a gesture tracking module that provides gesture tracking functionality to the multi-aperture imaging system 100.
Turning now to a discussion of multi-stage depth resolution, the accuracy of depth measurement for the dual aperture camera may be dependent on (1) noise and (2) effective pixel size and resolution. As noise increases, the depth map becomes less accurate, however, with binning noise can be reduced. Effective pixel size and resolution is determined by the size of the pixel, the spacing between pixels and the amount of binning for the pixel. For example, the smaller the pixel size generally the more accurate the depth measurement. If pixels are skipped this has the effect of reducing the resolution of depth. For example, if every second pixel is skipped, the effective accuracy becomes restricted to the effective size of the actual and skipped pixel—i.e. reduced by a factor of 2. If the pixels are binned, the effective size of the pixel becomes the total size of the binned pixels.
This multi-stage approach has several benefits. The first benefit is that the number of filter comparisons is significantly reduced, and determining depth resolution takes less time. An additional benefit is that the better noise of the down-sampled version of the algorithm is used to constrain the algorithm as the images are up-sampled to ensure that the depth measurements are within the range determined by the lower noise image.
In some embodiments, once a depth map has been generated for an image scene, the depth map is used to filter out pixels in the imaged scene that are further away from the multi-aperture imaging system 100 and are not associated with the desired gesture. When the depth map is available, the multi-aperture imaging system 100 matches the depth map with the image frame to which it corresponds. The multi-aperture imaging system 100 analyzes the image frame to identify which objects are of interest. The optical flow is then used to track how these objects have moved through the subsequent frames to the current frame for which there is either no depth map available yet. The filtering is applied on the current frame.
Additionally, in some embodiments, the multi-aperture imaging system 100 may take a sequence of image frames utilize different techniques to determine edge information and/or fill depth information. In some embodiments, the multi-aperture imaging system 100 may use e.g., the process of
The sensor assembly 1200 includes a plurality of columns, and some of the columns include IR pixels 1240. In this embodiment, the IR pixels 1240 are found in odd numbered columns, however, in alternate embodiments, the IR pixels 1240 may be found in even number columns or both in even numbered and odd numbered columns.
Blocks that are within columns 1 and 2 have different exposure control than blocks within column 3 and 4. The sensor assembly 1200 is able to start and/or stop exposure for blocks within columns 1 and 2 independently from blocks within columns 3 and 4. In this manner, the multi-aperture imaging system 100 is able to delay exposure of certain blocks (e.g., block 1250) in the system relative to other blocks (e.g., block 1205). An image frame including columns with delayed exposure relative to each other is referred to as a composite frame. If the frame captures a pulse of IR light (e.g., from an IR flash, IR structured light, etc.) using the sensor assembly 1200, the frame is referred to as a composite image frame.
Alternatively, in some embodiments the IR pixels 1240 are able to be activated independent from one or more of the red pixels 1210, the green pixels 1220, and the blue pixels 1230. Accordingly, the sensor assembly 1200 is able to start and/or stop exposure for IR pixels 1240 within column 1 independently from IR pixels 1240 within column 3. In this manner, the multi-aperture imaging system 100 is able to delay exposure of certain IR pixels 1240 (e.g., in column 1) in the system relative to other IR pixels 1240 (e.g., in column 3).
The method described above with regard to
For example, a pulse of IR light is of a fixed duration (Tpulse) and starts at time, Tinitial. The resulting IR light pulse illuminates the scene and some the IR light is reflected back toward the multi-aperture imaging system 100 by objects in the scene. Depending on the distance from the multi-aperture imaging system 100, the incoming light experiences a delay from Tinitial. Blocks within rows 1 and 2 are activated (i.e., electronic shutter opens) at the same time the first pulse of IR light is sent, and stays open for a calibration period (e.g., the period of time sufficient to capture a threshold percentage of reflected IR pulse light). The multi-aperture imaging system 100 begins an offset exposure (i.e., when the IR pulse starts prior to the electronic shutter being open) for the blocks within rows 3 and 4 sometime during the duration of the IR pulse. Thus, the raw image data collected from the single pulse of IR light includes data from two exposures. The first exposure is specific to blocks in columns 1 and 2 and starts prior to the second exposure at, e.g., a time when the IR pulse begins. The second exposure is specific to blocks in columns 3 and 4 and starts after the first exposure and occurs sometime during the IR pulse. The multi-aperture imaging system 100 then determines depth information using the collected data in a manner similar to that described above in
Typical time of flight sensor assemblies have a larger number of transistors for each pixel than conventional imaging sensors. For example, a pixel in a typical time of flight sensor may include 9 transistors, whereas a pixel in a conventional imaging sensor may include 5 transistors. The increased number of transistors are used for time of flight determination. However, space on a sensor assembly is limited, and for a given pixel, larger numbers of transistors in a pixel correspondingly reduce a size of a photodetector associated with the pixel and thereby reduce a sensitivity of the pixel. In this embodiment, during an IR image frame the color pixels are not being used. Accordingly, one way to address the above problem is to include IR pixels in a conventional imaging sensor and allow the IR pixels to leverage circuitry of color pixels for time of flight determination. Such a structure allows the augmented sensor assembly 1300 to maintain a larger IR photodiode than is typical in a time of flight sensor. The image frames captured by the augmented sensor assembly 1300 may be normal image frames, IR image frames, or augmented IR image frames. An IR image frame is simply an image frame that only has information in the IR channel. An augmented image frame includes information in the IR channel as well as at least one color channel. However, the information in the color channel in an augmented IR frame corresponds to charge data collected from photodiodes in the IR pixels (e.g., via a bridge transistor as discussed in detail below with regard to
In this embodiment the IR pixel 1340 and the blue pixel 1330 are 5 transistor pixels. In alternate embodiments, the IR pixel 1340 and/or the blue pixel 1330 are some other type of pixel. The IR pixel 1340 includes a photodiode 1352a, a source reset transistor 1354a, a transfer transistor 1356a, a storage capacitor 1358a, a storage reset transistor 1360a, a source transistor 1362a, and an output transistor 1364a. The photodiode 1352a is a photodiode that is sensitive in the IR band. The source reset transistor 1354a, the transfer transistor 1356a, the storage reset transistor 1360a, the source transistor 1362a, and the output transistor 1364a may be, e.g., CMOS transistors, JFETS, some other transistor, or some combination thereof. The source reset transistor 1345a controls reset of the photodiode 1352a. The transfer transistor 1356a controls charge flow to the storage capacitor 1358a. The storage capacitor 1358a stores charge output from the photodiode 1352a that corresponds to an amount of IR light incident on the photodiode 1352a. The storage reset transistor 1360a resets the storage capacitor 1358a such that it is ready to receive charge from the photodiode 1352a. The source transistor 1362a and the output transistor 1364a are used to read out the accumulated charge from the storage capacitor 1358a.
The blue pixel 1330 includes a photodiode 1352b, a source reset transistor 1354b, a transfer transistor 1356b, a storage capacitor 1358b, a storage reset transistor 1360b, and a source transistor 1362b, and an output transistor 1364b. The photodiode 1352b is a photodiode that is sensitive to blue light. The source reset transistor 1354b, the transfer transistor 1356b, the storage capacitor 1358b, the storage reset transistor 1360b, the source transistor 1362b, and the output transistor 1364b are substantially similar to the source reset transistor 1354a, the transfer transistor 1356a, the storage capacitor 1358a, the storage reset transistor 1360a, the source transistor 1362a, and the output transistor 1364a, respectively.
The IR pixel 1340 is coupled to the blue pixel 1330 via a bridge transistor 1370. The bridge transistor 1370 enables the multi-aperture system 100 to utilize circuitry of color pixels that would otherwise not be used during an IR image frame. The bridge transistor 1370 is used to switch where accumulated charge from the photodiode 1352a is stored. For example, if the bridge transistor 1370 is in an “open” state, charge accumulated by the photodiode 1352a is passed via the transfer transistor 1356a to the storage capacitor 1358a. In contrast, if the bridge transistor 1370 is in a “closed” state, charge accumulated by the photodiode 1352a is passed to the storage capacitor 1358a in the adjacent color pixel (e.g., the blue pixel 1330). A state of the bridge transistor 1370 is determined by a bridge signal that controls whether the bridge transistor 1370 is in an open or a closed state. Accordingly, charge is passed to either the photodiode 1352a or the photodiode 1352b based on the state of the bridge transistor 1370.
During time of flight operation, the multi-aperture system 100 emits an IR pulse. The pulse of IR light is of a fixed duration (Tpulse) and starts at time, Tinitial. Tpulse may be, e.g., 100 ns. The resulting IR light pulse illuminates the scene and some the IR light is reflected back toward the multi-aperture imaging system 100 by objects in the scene. The bridge signal is such that the bridge transistor 1370 is open from Tinitial to an intermediate time, Tint. In some embodiments, Tint minus Tinitial may be ˜100 ns. After Tint the bridge signal changes such that the bridge transistor 1370 is closed, accordingly, additional charge produced by the photodetector 1352a is transmitted across the bridge transistor 1370 to the storage capacitor 1358b. Therefore, charge accumulated in the storage capacitor 1358a corresponds to IR light reflected from objects within a first distance from the multi-aperture system 100, and charge accumulated in the storage capacitor 1358b corresponds to IR light reflected from objects outside of the first distance from the multi-aperture system 100. Accordingly, for a single IR pulse, charge may be distributed across the storage capacitor 1358a and the storage capacitor 1358b depending on how far objects in the scene are far from the multi-aperture system 100.
In some embodiments, during time of flight operation the multi-aperture system 100 emits IR pulses a threshold number of times and accumulates corresponding charge across the storage capacitor 1358a and the storage capacitor 1358b. In some embodiments, the threshold number is fixed (e.g., 1000). Alternatively, the threshold number is determined based on an exposure of the scene. For example, the threshold number may be the exposure time divided by a pulse width of the bridge signal. For example, an exposure time of 1 ms and a bridge signal has a pulse width of 100 ns results in a threshold number of 10,000. Once the threshold number is reached, the multi-aperture imaging system 100 reads out the accumulated charge on the storage capacitor 1358a and the storage capacitor 1358b. The multi-aperture imaging system 100 then resets the photodiode 1352a, storage capacitor 1358a, the photodiode 1352b, and the storage capacitor 1358b, and prepares for another image frame.
Note that the portion 1350 is part of a block 1305 of the augmented sensor assembly 1300, and that there are a plurality of blocks that make up the augmented sensor assembly 1300. Some or all of the blocks in the augmented sensor assembly 1300 include portions similar to the portion 1350 (i.e., they include an IR pixel that is coupled to at least one adjacent color pixel via a bridge transistor). The multi-aperture imaging system 100 generates an augmented IR image frame by reading out the accumulated charge (also referred to as charge data) from respective IR storage capacitors and respective color storage capacitors in some or all of the blocks in the augmented sensor assembly 1300 are read out.
Depending on the distance from the multi-aperture imaging system 100, the incoming light experiences a delay from when an IR pulse is emitted. Time of flight analysis uses the charge date in the augmented IR image frame to determine depth information. Each of the blocks are located at a position in ‘x’ and ‘y’ in the augmented sensor assembly 1300, where ‘x’ and ‘y’ are integers. For each of these blocks, the multi-aperture imaging system 100 determines the depth information using, e.g., the following relation:
where c is the speed of light, Tpulse is the IR pulse length, q1,x,y is the accumulated charge from a storage capacitor of an IR pixel (e.g., storage capacitor 1358a) that is part of a blockx,y in the augmented sensor assembly 1300, and q2,x y is the accumulated charge from a storage capacitor (e.g., the storage capacitor 1358b) in a color pixel that is coupled to the IR pixel via a bridge transistor that is part of the blockx,y. In other embodiments, other equations may be used to determine depth information for the blocks. Accordingly, a single augmented IR image frame results in a 2D map of depth information for the scene.
Additionally, in some embodiments, IR pixels in a block may be coupled to a plurality of adjacent color pixels via corresponding bridge transistors. In this manner, charge may be distributed across multiple color pixels. This may help prevent saturation of pixels when there are a lot of objects and/or highly reflective objects in particular areas of the scene.
In alternate embodiments (not shown), the IR pixel may have less control circuitry than the color pixels. For example, the IR pixel may not include a photodiode and a source reset transistor, and be coupled to adjacent color pixels via respective bridge transistors. In this embodiment, the IR pixel would utilize some of the circuitry in the adjacent color pixels (e.g., the transfer transistors, the storage capacitors, the storage reset transistors, the source transistors, and the output transistors). In this manner, the footprint of the IR pixel in each block is further reduced.
Turning now to a discussion of combinations of the above discussed techniques for determining depth information using a multi-aperture imaging system 100. In some embodiments, the multi-aperture imaging system 100 is capable of capturing 120 frames per second or more. Thus, the multi-aperture imaging system 100 is able to captures a series of raw image data, where one or more of the frames in the series are captured and analyzed for depth information using different techniques. For example, a frame may be captured using no IR flash (and possibly with a visible flash), captured using an IR flash, captured using an IR flash of structured light, or captured using an IR flash of structured light that is delayed relative to the exposure (e.g., generates an offset exposure useful for time of flight analysis). Accordingly, the multi-aperture imaging system 100 may capture a sequence of different frames of image data.
For example,
The multi-aperture imaging system 100 captures 1510 a series of image frames of a scene. In some embodiments, the series of image frames are consecutive and are taken in a burst like mode (e.g., a single trigger causes the multi-aperture imaging system 100 to capture the series of images). The frames include a normal image frame and at least one structured image frame. In some embodiments, the series of frames include a plurality of structured image frames, including a first structured image frame and a second structured image frame captured with an offset exposure relative to the first structured image frame. For example, the series of image frames may be the series 1400 of image frames in
The normal image frame is an image frame of the scene that includes RGB channel information as well as IR channel information. A structured image frame is an image frame that includes structured IR light (e.g., a normal image frame that includes structured IR light). The multi-aperture imaging system 100 may include two separate imaging pathways, specifically, a first imaging system characterized by a first point spread function and a second imaging system characterized by a second point spread function that varies as a function of depth differently than the first point spread function. The first imaging system captures first raw image data associated with a first image of a scene, and the second imaging system captures a second raw image data associated with a second image of the scene. For example, the first imaging system may capture an RGB image of the scene, and the second imaging system may capture an IR image of the scene. In some embodiments, the RGB image (e.g., the first image) and the IR image (e.g., the second image) are captured at the same time using the same sensor. The multi-aperture imaging system 100 separates the color and infrared pixel signals in the captured raw mosaic image using e.g. a known demosaicking algorithm.
The multi-aperture imaging system 100 determines 1520 edge information using a deblur technique and the normal image frame. The deblur technique is discussed above with reference to steps 720, 730, and 740 of
The multi-aperture imaging system 100 determines 1530 fill depth information for image components based in part on the at least one structured image frame. The multi-aperture imaging system 100 determines fill depth information using either of structured light analysis and time of flight analysis. Structured light analysis uses the at least one structured image frame, where fill depth information is determined for the structured image frame as discussed above with reference to step 830 of
Additionally, the multi-aperture imaging system 100 determines fill depth information using time of flight analysis and the at least one structured image frame. For example, in embodiments, where the at least one structured image frame is a composite image frame, the multi-aperture imaging system 100 determines fill depth information as discussed above with reference to
The multi-aperture imaging system 100 generates 1540 a depth map of the scene using the edge depth information and the fill depth information. The edge depth information provides depth information for edges in the scene, and the fill depth information provides depth information for other portions of the scene (e.g., between identified edges, wall surfaces, etc.). The multi-aperture imaging system 100 combines the edge depth information and fill depth information into a single depth map for the imaged scene. In some embodiments, the multi-aperture imaging system 100 stores the depth map for later use and/or generates an image for presentation to the user of the multi-aperture imaging system 100.
It is to be understood that the above descriptions are only illustrative only, and numerous other embodiments can be devised without departing the spirit and scope of the embodiments.
Embodiments of the disclosure may be implemented as a program product for use with a computer system. The program(s) of the program product define functions of the embodiments (including the methods described herein) and can be contained on a variety of computer-readable storage media. Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, flash memory, ROM chips or any type of solid-state non-volatile semiconductor memory) on which information is permanently stored; and (ii) writable storage media (e.g., floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored.
It is to be understood that any feature described in relation to any one embodiment may be used alone, or in combination with other features described, and may also be used in combination with one or more features of any other of the embodiments, or any combination of any other of the embodiments. Moreover, the disclosure is not limited to the embodiments described above, which may be varied within the scope of the accompanying claims. For example, aspects of this technology have been described with respect to different f-number images captured by a multi-aperture imaging system. However, these approaches are not limited to multi-aperture imaging systems. They can also be used in other systems that estimate depth based on differences in blurring, regardless of whether a multi-aperture imaging system is used to capture the images. For example, two images may be captured in time sequence, but at different f-number settings. Another method is to capture two or more images of the same scene but with different focus settings, or to rely on differences in aberrations (e.g., chromatic aberrations) or other phenomenon that cause the blurring of the two or more images to vary differently as a function of depth so that these variations can be used to estimate the depth.
This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application Ser. No. 62/242,699, “Depth Measurement Techniques for a Multi-Aperture Imaging System,” filed on Oct. 16, 2015. This application is a continuation-in-part of pending U.S. patent application Ser. No. 14/949,736, “Generating An Improved Depth Map Using a Multi-Aperture Imaging System,” filed on Nov. 23, 2015, which claims priority to U.S. Provisional Patent Application Ser. No. 62/121,182, “Depth Map For Dual-Aperture Camera,” filed on Feb. 26, 2015. The subject matter of all of the foregoing is incorporated herein by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
62242699 | Oct 2015 | US | |
62121182 | Feb 2015 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14949736 | Nov 2015 | US |
Child | 15292872 | US |