The present invention relates to depth-based imaging and, more particularly, to trilateral filters including a depth filter component to control the appearance of the depth of field.
Shallow focus techniques are typically used by photographers to create images in which a portion of the scene is in focus and a remainder of the scene is out of focus. For example, shallow focus techniques may bring an object in the scene into sharp focus and the more distant background out of focus. This is sometimes referred to as the bokeh effect.
To create the bokeh effect, a main object to be highlighted is positioned within the depth of field while the background is positioned out of the depth of field. The depth of field depends on a number of factors, including the aperture size and the focal length of the camera. In general, the larger the aperture of the camera, the shallower the depth of field.
Shallow depth of field may be achieved with professional cameras, such as digital single-lens reflex (DSLR) cameras. Less expensive cameras (such as cellphone cameras and small point and shoot cameras) typically have small lens apertures that cannot achieve a shallow depth of field, and may not be capable of creating the same artistic defocus effect that may be achieved with professional DSLR cameras.
First and second lens units 102, 104 may gather light from an object and form images on respective regions of first image sensor 106 and second image sensor 108. As described further below with respect to
Image processing unit 110 may process the first and second images 124, 126 input from respective first and second image sensors 106, 108 to produce output image 128, which may be displayed on display unit 112. As described further below, image processing unit 110 may extract a depth map from first and second images 124, 126 and may control blurring of output image 128 provided to display unit 112.
Image processing unit 110 includes depth map extractor 118, depth-based blurring unit 120 and controller 122. As described further below with respect to
Depth-based blurring unit 120 may also create a trilateral filter including the depth filter component, as well as spatial and range filter components. The trilateral filter may be applied to input image 124 to produce output image 128 having a depth-based blur. The depth-based blur may blur output image 128 outside of the focal area, to create a defocused effect (i.e., a bokeh effect) similar to conventional large aperture lens cameras.
Image processing unit 110 may use software or dedicated hardware to generate output image 128 with depth-based blur. Controller 122 can control depth map extractor 118 and depth-based blurring unit 120 for generating output image 128. Controller 122 may also receive information, for example, from user interface 114, first image sensor 106, second image sensor 108, first lens unit 102 and/or second lens unit 104, to adjust one or more settings of depth map extractor 118 and/or depth-based blurring unit 120. In addition, controller 122 may perform at least some of the functions of one or more of depth map extractor 118 and depth-based blurring unit 120.
Display unit 112 may include any suitable display capable of displaying output image 128. Display unit 112 may also display input image 124, for example, to select the focal area of input image 124 and/or to refocus the selected focal area and defocus the rest of the scene.
User interface 114 may be used to control operation of stereo imager 100 in accordance with a user command. User interface 114 may be used, for example, to select the focal area of input image 124 and/or to refocus the scene to the selected focal area.
Storage unit 116 may be used to store first and second images 124, 126, the depth map, the trilateral filter for each pixel and output image 128. Storage unit 116 may be an internal memory or an external memory on a remote device. Storage unit 116 may be a non-volatile memory, a hard disc, a flash memory, etc.
In an example embodiment, image processing unit 110 may use a two-dimensional (2D) red-green-blue (RGB) image (i.e., captured from a pixel array, such as pixel array 902 of
Referring to
At step 202, first and second images are received, for example, first and second images 124, 126 (
In general, a depth map is an image where each pixel value represents a color (for example a shade of gray) that is characteristic of a distance of an object to the image sensor (such as first image sensor 106). A depth (Z) at a pixel position (sometimes also referred to as a distance of the object to the imaging lens along the image sensor Z axis) may be represented as:
where f represents a focal length of the image sensor (such as first image sensor 106 (
The extracted depth map and first image 124 (
For example, the focal area may be determined from first lens unit 102 (
At step 208, a depth filter component of a trilateral filter may be determined, for each pixel, from the depth map (step 204) based on the focal area (step 206). In general, the kernel size for the depth filter component may be adaptive according to the depth map (i.e., proportional to disparity or diopter).
At step 210, a trilateral filter may be constructed for each pixel using the depth filter component (step 208), a spatial filter component and a range filter component, for example, by depth-based blurring unit 120 (
As discussed above, depth maps may include some errors and are typically post-processed. Even with an accurate depth map, a pure depth-based blurring may not yield appealing results, for example, such as a blur across an edge. An example trilateral filter of the present invention extends a bilateral filter with an additional component, a depth function component.
A conventional bilateral filter is typically an edge-preserving smoothing filter. The weighted smoothing value is not only controlled by the Euclidean spatial distance but also by the range of pixel intensities to preserve edges. A typical conventional bilateral filter (BF) may be represented as:
BF=G(space)*G(range) (2)
where G(•) represents a filter function, space represents a spatial region of the input image and range represents a range of pixel intensities.
According to an example embodiment, a depth-based trilateral filter (TF) may be represented as:
TF=G(space)*G(range)*G(depth) (3)
where in addition to spatial and range filter components, a depth filter component is also included. An example depth-based trilateral filter may be represented as:
where p represents the current pixel position, S represents the defined neighborhood of current pixel position p, and q represents a pixel position within neighborhood S. Ip and Iq are the pixel intensity values at pixel positions p and q. Zp, Zq are depth values at pixel positions p and q. The term σs represents the space control parameter, σr is the range control parameter and σd represents the depth control parameter (also referred to herein as the kernel size). The variable Wp represents a normalization factor to ensure unity. In eq. (3), the depth filter component (G(depth)) may be used to control the kernel formation and size for blurring (outside of the focal area) or sharpening (inside the focal area).
Referring to
When performing blurring at current pixel position p, only pixels within a certain space (i.e., neighborhood S) (controlled by spatial filter component 302), which are close in pixel intensity range (controlled by the range filter component 304), and similar in depth (controlled by depth filter component 306, so that blur will not occur across a different depth of field) are used for the weighted output TFp (eq. (4)). As shown in eq. (4), the absolute value of depth (Z) may be used to control the depth filter component G(depth). By using the absolute value of depth (Z), the trilateral filter TFp may produce more blur with an increase in depth, which may be performed by setting σd (a depth control parameter) as a function of depth.
In an example embodiment, the trilateral filter structure shown in Eq. (4) may include a different filter function for at least one of the spatial, range and depth filter components. For example, a Gaussian function may be used for the depth filter component and range filter component, while a box filter may be used for the spatial filter component. Kernel sizes of the spatial and range filter components are controlled by control parameters and may be adaptive to different scenes. Kernel sizes of the depth filter component for pixels within the image are adaptive and dynamically determined by the refocus position and depth values as shown in
In an example embodiment, each filter component (i.e., G(space), G(range), G(depth)) may be equally weighted, or at least one of the filter components may have a different weight. For example, one of the filter components may have a higher weight than the remaining filter components. For example, in the far field of depth, the depth filter component G(depth) may have a highest weight (i.e., may be the dominant component) so that it blurs broadly to produce a good bokeh effect.
Referring back to
In step 212, the trilateral filter may apply a low-pass spatial filter to blur the first image outside of the focal area to create a defocus effect without blurring the focal area. The trilateral filter may be represented as:
where δ(•) represents a Dirac delta function, Zf represents the focal area center and Δ represents a focal area range.
In general, the depth filter component G(depth) may be controlled by the depth information (i.e., from the depth map). The kernel size of the depth filter component is proportional to diopter, which is the inverse of the distance or depth, and the direction of the depth change. Because disparity is proportional to the inverse of the distance or depth, the diopter is linearly proportional to the disparity of the stereo matching used to extract the depth map (step 204). Accordingly, as shown in
The depth of field may be determined, for example, from a distance between the image sensor (such as image sensors 106, 108 (
According to an example embodiment, the focal plane depth Zf may be automatically determined from the imaging geometry. For example, an automatic control of blur may be set according to a piecewise linear function (such as piecewise linear function 402 shown in
Referring back to
Referring next to
Referring to
The row lines are selectively activated by row driver 904 in response to row address decoder 906. CMOS image device 900 is operated by timing and control circuit 912, which controls address decoders 906, 910 for selecting the appropriate pixels for pixel readout, and row and column driver circuitry, which apply driving voltages to drive transistors of the selected pixels.
Each column of the array contains sample and hold circuitry (S/H), designated generally as 914, including sample and hold capacitors and switches associated with the column driver that read and store a pixel reset signal (Vrst) and a pixel image signal (Vsig) for selected pixels. A differential signal (reset-signal) is produced by programmable gain amplifier (PGA) circuit 916 for each pixel, which is digitized by analog-to-digital converter (ADC) 918. ADC 918 supplied the digital pixel signals to image processor 920, which forms and outputs a digital image.
Although the invention has been described in terms of systems and methods for depth-based blurring of an image, it is contemplated that one or more steps and/or components may be implemented in software for use with microprocessor/general purpose computers (not shown). In this embodiment, one or more of the functions of the various components and/or steps described above may be implemented in software that controls a computer. The software may be embodied in non-transitory tangible computer readable media for execution by the computer.
Although the invention is illustrated and described herein with reference to specific embodiments, the invention is not intended to be limited to the details shown. Rather, various modifications may be made in the details within the scope and range of equivalence of the claims and without departing from the invention.
This application claims priority of U.S. Provisional Patent Application Ser. No. 61/515,069, filed Aug. 4, 2011, which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
8629868 | Gardiner et al. | Jan 2014 | B1 |
20110080464 | Alessandrini | Apr 2011 | A1 |
20110123183 | Adelsberger | May 2011 | A1 |
20110128282 | Wang | Jun 2011 | A1 |
20110148868 | Chang | Jun 2011 | A1 |
20110169921 | Lee et al. | Jul 2011 | A1 |
20120189208 | Inaba et al. | Jul 2012 | A1 |
20120200669 | Lai et al. | Aug 2012 | A1 |
Entry |
---|
Lu, Yue, “Multidimensional Directional Filter Banks and Surfacelets”, Image Processing, IEEE Transactions (Apr. 2007), 1-14. |
Malassiotis, S., “A Face and Gesture Recognition System Based on an Active Stereo Sensor”, Image Processing, International Conference (Oct. 7-10, 2001), 955-958. |
Vaudrey, Tobi, “Fast Trilateral Filtering”, Multimedia Imaging Report 40 (2009), 8 pgs. |
Wong, Wilbur C.K., “Trilateral Filtering for Biomedical Images”, Biomedical Imaging: Nano to Macro 2004, IEEE International Symposium (Apr. 15-18, 2004), 820-823. |
Number | Date | Country | |
---|---|---|---|
20130033582 A1 | Feb 2013 | US |
Number | Date | Country | |
---|---|---|---|
61515069 | Aug 2011 | US |