The present invention relates to image processing techniques for suppressing noise components in image signals, more particularly to image processing techniques that suppress noise components and correct distortion in image signals that display distorted images.
Low pass filters are widely used to extract spatial components other than noise components from image signals in order to suppress the noise components in the image signals, but low pass filters have the drawback of also suppressing edge components of subject images in the image signals. Japanese Patent Application Publication No. 2007-188346 (Patent Reference 1), for example, discloses an image processor that can suppress noise components in an image signal while preserving edge components in the subject image.
Curvature distortion (also simply ‘distortion’) can occur due to distortion aberration of the lenses etc. in the imaging optics of digital cameras. Curvature distortion occurs in the image formed by the imaging optics because the image magnification factor (especially the horizontal magnification factor) differs between the vicinity of the central axis of the field angle and the surrounding area. When distortion aberration occurs, there is a tendency for the amount of distortion in the captured image to increase from the image center (the pixel corresponding to the central axis of the field angle of the imaging optics) toward the peripheral regions. It is therefore possible to perform a distortion correction by locally stretching or shrinking the captured image by a factor responsive to the amount of distortion.
If such a distortion correction is performed when the image is contaminated by noise, however, noise stretching becomes a problem that degrades image quality. For example, when a fisheye lens (ultra-wide-angle lens) is used as the imaging optics, it is possible to correct distortion due to the distortion aberration of the fisheye lens by magnifying the peripheral regions of the image more than the central part. In this case, the magnification factor is set so as to increase from the image center toward the peripheral regions. Here, the amount of distortion in the radiant direction (radial direction) differs from the amount of distortion in the concentric direction (circumferential direction), causing a discrepancy between the radial magnification factor and the concentric magnification factor. Therefore, if the image is contaminated with noise, the noise is stretched in a particular direction by the distortion correction, generating a visually unnatural corrected image in which the background of the subject image appears to drift.
In the image processor 100 in Patent Reference 1 as well, when a distortion correction is executed on the output image signal, it may stretch superimposed noise and degrade the image quality.
In view of the above, an object of the present invention is to provide an image processing device, an imaging device, an image processing method, a computer program, and a computer-readable medium that can reduce image quality degradation due to distortion corrections that stretch noise superimposed on a distorted image.
An image processing device according to a first aspect of the invention has a noise suppression unit that executes spatial filtering on a plurality of pixels in a reference range including a pixel of interest in an input image, thereby generating a noise-reduced image; a distortion correction processor that locally deforms the noise-reduced image with a magnification factor responsive to a local amount of distortion in the noise-reduced image, thereby correcting distortion of the noise-reduced image; and a filtering control unit that dynamically changes the size of the reference range responsive to the magnification factor. The filtering control unit narrows the reference range as the magnification factor increases.
An image capturing device according to a second aspect of the invention includes the image processing device according to the first aspect.
An image processing method according to a third aspect of the invention includes the steps of executing spatial filtering on a plurality of pixels in a reference range including a pixel of interest in an input image and generating a noise-reduced image, locally deforming the noise-reduced image with a magnification factor responsive to a local amount of distortion in the noise-reduced image, thereby correcting distortion of the noise-reduced image, and dynamically changing the size of the reference range responsive to the magnification factor. In the step of dynamically changing the reference range, the reference range is dynamically changed by narrowing the reference range as the magnification factor increases.
A computer program according to a fourth aspect of the invention is read from a memory and causes a processor to execute the steps of the image processing method according to the third aspect.
A computer-readable recording medium according to a fifth aspect of the invention stores the computer program according to the fourth aspect.
According to the first to fifth aspects of the invention, the reference range is changed so as to narrow as the amount of distortion increases, so it is possible to reduce image quality degradation caused when the correction of distortion of a distorted image stretches noise superimposed on the image.
Embodiments of the invention will be described below with reference to the drawings.
The noise suppression processor 23 has the functions of executing a spatial filtering process, a clip process, and a noise suppression strength adjustment process on an input image Is by using noise suppression parameters R, s, and t, thereby reducing noise components in the input image Is. The parameter calculation processor 22 calculates the noise suppression parameters R, s, and t on the basis of the coordinate positional information of pixels constituting the input image Is.
The distortion correction processor 24 receives a noise-reduced image NRs from the noise suppression processor 23. The distortion correction processor 24 has the function of locally deforming (stretching or shrinking) the noise-reduced image NRs with a magnification factor R responsive to the local amount of distortion α of the noise-reduced image NRs, thereby correcting distortion of the noise-reduced image NRs. The magnification factor R is one of the noise suppression parameters. As described later, s and t denote the values (direction parameters) of a vector (s, t) indicating the direction of application of the magnification factor R.
In this embodiment, the input image Is is a digital image obtained when a solid-state image sensor performs photoelectric conversion on an optical image formed by the imaging optics of an imaging device. The distortion α occurs due to distortion aberration in the imaging optics and is measured ahead of time according to the image height from the field angle center of the imaging optics and the imaging conditions. Data giving the amount of distortion α are stored in a nonvolatile memory (not shown) in or external to the distortion correction processor 24, which can obtain the amount of distortion α corresponding to the position of the coordinates of a pixel of interest by reference to the nonvolatile memory.
The distortion correction processor 24 first takes each pixel of an output image DRs, which is an ideal image after distortion is corrected, as the pixel of interest and, as shown in
L=√{square root over ((x−XC)2+(y−YC)2)}{square root over ((x−XC)2+(y−YC)2)} (1)
Next, the distortion correction processor 24 obtains the amount of distortion α corresponding to the calculated distance L as the amount of distortion of the pixel of interest.
In the above equation (2), Δ is the distance between the point at distance L and the point at distance Lk, and n−Δ is the distance between the point at distance L and the point at distance Lk+1 (
Next, the distortion correction processor 24 calculates the reference coordinates (x0, y0) of the pixel to be referenced in the noise-reduced image NRs in order to calculate the pixel value of the pixel of interest. Because of the distortion correction, there is a discrepancy between the coordinates (x, y) on the output image DRs in which distortion is corrected and the reference coordinates (x0, y0) in the noise-reduced image NRs that was actually captured. In this embodiment, distortion aberration is assumed to depend only on the distance (image height) from the field angle center of the imaging optics. The reference coordinates (x0, y0) are calculated by use of the amount of distortion α corresponding to the coordinates (x, y) according to the following equation (3).
The reference coordinate values x0 and y0 do not always match the coordinate values of a pixel present in the noise-reduced image NRs. Specifically, the reference coordinate values x0 and y0 are not always integer values. Accordingly, the distortion correction processor 24 can calculate the pixel value G(x, y) of the pixel of interest in the output image DRs by sampling the pixel value of the reference pixel or the pixel values of its neighboring pixels and performing an interpolation process using the sampled pixel values.
G(x,y)=g(x0,y0)=g(i,j)·(1−δx)·(1−δy)+g(i+1,j)·δx·(1−δy)++g(i,j+1)·(1−δx)·δy+g(i+1,j+1)·δx·y (4)
As described above, the distortion correction processor 24 can correct distortion in the noise-reduced image NRs by locally deforming (stretching or shrinking) the noise-reduced image NRs with a magnification factor responsive to the amount of distortion α. Here, if the distance of the pixel of interest from the field center in the noise-reduced image NRs is denoted H, the distance H indicates an amount corresponding to the actual image height, which is given by the product of the distance L corresponding to the ideal image height and the corresponding amount of distortion α (i.e., H=α×L). As mentioned above, this embodiment assumes that distortion aberration depends only on the distance (image height) from the field angle center of the imaging optics, so the distance H can be represented by a function H=f(L) with the distance L as an independent variable. Therefore, if the magnification of the local deformation (stretching or shrinking) for correcting distortion is denoted R, the magnification factor R can be expressed as the reciprocal of the first derivative of H with respect to L. The magnification factor R is then given by the following equation (5).
Here, R=1 means identical size; that is, no stretching or shrinking is performed. A value of R greater than 1 means that a local pixel region centered on the pixel of interest is stretched by the distortion correction process; a value of R less than 1 means that a local pixel region centered on the pixel of interest is shrunk by the distortion correction process.
The operation of the parameter calculation processor 22 will now be described.
The parameter calculation processor 22 first calculates the distance Li between the pixel of interest and the field center of the input image Is, as shown in
Li=√{square root over ((xi−XC)2+(yi−YC)2)}{square root over ((xi−XC)2+(yi−YC)2)} (6)
Next, the parameter calculation processor 22 calculates the magnification factor R on the basis of the calculated distance Li and also calculates the vector values s and t of the vector (s, t) representing the direction of application of the magnification factor R (the direction in which stretching or shrinking takes place).
The magnification factor R can also be represented by the following equation (7), which is similar to equation (5) above.
Accordingly, if the distance Li can be given as a function Li=f(L), such as a polynomial function, using the distance L as an independent variable, the first derivative of that function can be used to calculate the magnification factor R. Alternatively, it is possible to calculate the magnification factor R by using an approximation to the above equation (7). When the amount of distortion α is given as discrete values α0, α1, α2, . . . as illustrated in
Hence the following approximation (7a) can be derived.
The parameter calculation processor 22 can also calculate the vector values s and t of the vector (s, t) representing the direction of application of the magnification factor R (the direction in which stretching or shrinking takes place).
The order of calculation of the magnification factor R and vector values s and t may be reversed. The parameter calculation processor 22 supplies the calculated magnification factor R and vector (s, t) to the noise suppression processor 23.
Next, the operation of the noise suppression processor 23 will be described.
The noise suppression unit 30 includes a spatial filter unit 31 consisting of low pass filters 311 to 31Q (where Q is an integer equal to or greater than 3), difference calculators 321 to 32Q, base noise clip processors 331 to 33Q, high clip processors 341 to 34Q, and noise suppression strength adjustment units 351 to 35Q+1.
Each of the low pass filters 311 to 31Q executes spatial filtering on multiple pixels in a reference range (sampling range) including the pixel of interest in the input image Is. In this embodiment, smoothing spatial filtering (low pass filtering) is executed. The low pass filters 311 to 31Q have standard set ranges with mutually differing sizes; the filtering control unit 29 can set variable reference ranges by using the standard set ranges as standards.
Here, the values of the weighting coefficients K(i, j) are all positive values and the sum of the weighting coefficients K(i, j) is 1. The weighting coefficient K(0, 0) by which the pixel value g(x, y) of the pixel of interest Pc(x, y) is multiplied is selected so as to have a greater value than the other weighting coefficients.
The filtering control unit 29 can change the reference ranges for the low pass filters 311 to 31Q by changing the settings of the weighting coefficients K(i, j). For example, if the values of the weighting coefficients K(i, j) are all non-zero, it is possible to make the reference range narrower than the standard reference range SA by setting the values of some of the weighting coefficients K(i, j) to zero. The reference ranges of the low pass filters 311 to 31Q have mutually differing sizes. In this embodiment, the reference ranges of the low pass filters 311 to 31Q are set so that their areas increase as the filter number q of the low pass filter 31q increases. In other words, in terms of two arbitrary low pass filters 31r and 31s (r<s), the reference range of the low pass filter 31, with the larger filter number is larger than the reference range of the low pass filter 31, with the smaller filter number. Accordingly, the spatial frequency components of the outputs (filtered images) of the low pass filters 311 to 31Q are not necessarily identical.
The difference calculator 321 removes the spatial frequency components of the filtered image output by low pass filter 311 from the input image Is, thereby generating a difference image D1, and supplies the difference image D1 to the base noise clip processor 331. The other difference calculators 322 to 31Q respectively remove the spatial frequency components of the filtered images output from low pass filters 312 to 31Q from the filtered images output from low pass filters 311 to 31Q−1, thereby generating difference images D2 to DQ. The difference images D2 to DQ are respectively supplied to the base noise clip processors 332 to 33Q. Specifically, the m-th difference calculator 32m (where m is a positive integer equal to or greater than 2 and equal to or less than Q) removes the spatial frequency components of the filtered image output by the m-th low pass filter 31m from the filtered image output by the (m−1)-th low pass filter 31m−1, thereby generating a difference image Dm, and supplies the difference image Dm to the m-th base noise clip processor 33m.
Each of the base noise clip processors 331 to 33Q has a clip function that converts input signal levels in an amplitude range equal to or lower than a positive threshold value THb to an output signal level with an amplitude lower than the threshold value THb. This enables low-amplitude signal components in the signals separated into frequency bands by the low pass filters 311 to 31Q and difference calculators 321 to 32Q to be rejected to suppress noise components.
The high clip processors 341 to 34Q respectively receive the outputs of the base noise clip processors 331 to 33Q as inputs, and have a clip processing function that converts input signal levels in an amplitude range equal to or greater than a threshold value THh which is greater than the threshold value THb to an output signal level with a constant amplitude. By clipping signals with a certain amplitude or higher, high intensity noise can be suppressed in a certain frequency band.
Noise suppression strength adjustment units 351 to 35Q respectively receive the outputs of the high clip processors 331 to 33Q as inputs and have the function of individually multiplying the outputs of the high clip processors 331 to 33Q by a correction coefficient. Noise suppression strength adjustment unit 35Q+1 has the function of multiplying the output of low pass filter 31Q by a correction coefficient. By separately applying a correction coefficient to the signals separated into frequency bands by the low pass filters 311 to 31Q and difference calculators 321 to 32Q in this way, very strong noise suppression can be performed. An adder 36 adds the (Q+1) outputs of the noise suppression strength adjustment units 351 to 35Q, thereby generating the noise-reduced image NRs.
The filtering control unit 29 has the function of, as the above magnification factor R increases, separately narrowing the reference ranges (sampling ranges) of the low pass filters 311 to 31Q by narrowing them in the direction parallel to the direction of application (s, t) of the magnification range R. By deforming (stretching or shrinking) the pixel range corresponding to the reference range in the noise-reduced image NRs, the distortion correction processor 24 in
The filtering control unit 29 has a lookup table indicating a correspondence relationship between sets of values of the noise suppression parameters R, s, and t and the candidate reference ranges of the low pass filters 311 to 31Q, which can be referenced to dynamically select a reference range corresponding to the current values of the noise suppression parameters R, s, and t, from among multiple candidate reference ranges.
The configuration of the noise suppression processor 23 when the number of low pass filters 311 to 31Q is three will now be described.
The filtering control unit 29 in
Next, the effects of the first embodiment will be described.
As described above, in the image processing device 21 in this embodiment, the filtering control unit 29 dynamically changes the size of the reference ranges (sampling ranges) of the spatial filter unit 31 responsive to the magnification factor R, narrowing the reference ranges as the magnification factor R increases. This enables the strength of noise suppression processing to be locally increased in parts of the image with a high magnification factor R, which makes noise tend to stand out. Accordingly, even when distortion correction processing is performed in the distortion correction processor 24 in
When the distortion correction processor 24 in
A second embodiment of the invention will now be described. The configuration of the image processing device in this embodiment is the same as the configuration of the image processing device 21 in the first embodiment except for part of the operation of the filtering control unit 29 in
The filtering control unit 29 converts the coordinates (a, b) (where a is an integer in the range from −M to +M, and b is an integer in the range from −N to +N) of all the pixels in the standard reference range for each of the low pass filters 311 to 31Q to coordinates (p, q) according to the following conversion equation (10).
In equation (10), R(θ) is a rotation matrix that rotates the coordinates so that the direction of stretching or shrinking matches the X-axis; S(1/R) is a matrix for changing the coordinate positions in the X-axis direction by the reciprocal ratio 1/R of the magnification 1/R; R(−θ) is the inverse matrix of R(θ).
By rearranging the above equation (10), the following equation (10a) can be obtained.
The filtering control unit 29 specifies a range defined by the set {(p, q)} of coordinates calculated by use of the above equation (10a) as the reference range. This enables the filtering control unit 29 to dynamically change the size of the reference range (sampling range) of the spatial filter unit 31 responsive to the magnification factor R and direction parameters s and t and narrow the reference range as the magnification factor R increases.
The filtering control unit 29 can narrow the reference range in the direction parallel to the direction of application of the magnification factor R (the direction of the vector (s, t)) without deforming the reference range in the direction orthogonal to the deformation direction in the distortion correction processor 24. Furthermore, for each of the low pass filters 311 to 31Q, the filtering control unit 29 can define the reference range that corresponds to the reference range in the noise-reduced image NRs so that when the distortion correction processor 24 in
Accordingly, like the first embodiment, the second embodiment can mitigate the image quality degradation that occurs when noise superimposed on an image with distortion is stretched by distortion correction processing.
Since the reference range is determined dynamically by use of a conversion equation (10a), an additional advantage is that there is no need to prepare data for lookup tables as in the first embodiment.
Next, a third embodiment of the invention will be described.
As shown in
As described above, the fourth embodiment changes the noise suppression processing parameters responsive to the current value of the magnification factor R, thereby locally increasing the strength of noise suppression processing in parts of the image with a high magnification factor R, which makes noise tend to stand out, and can thereby improve the image quality of the output image DRs after distortion correction processing.
A fourth embodiment will now be described.
The imaging optics 11 include a front lens 110, an aperture stop 111, and a rear lens 112. The CCD image sensor 12 is a single CCD solid state imaging element having a single color filter array 121 and a single CCD element 122. The color filter array 121 may be any array of N types of color filters transmitting light of colors in N mutually differing wavelength regions, arranged periodically in a plane (N being a positive integer equal to or greater than 2). In this embodiment, a Bayer array of primary colors can be used as the color filter arrangement of the color filter array 121, but this is not a limitation; a Bayer array of complementary colors may be used instead. In place of the CCD image sensor, a CMOS image sensor or another type of solid state imaging element may be used.
A timing generator 16 generates a driving timing signal and supplies it to a drive circuit 15. Responsive to the driving timing signal output from the timing generator 16, the drive circuit 15 generates drive signals for driving the CCD image sensor 12. The CCD image sensor 12 performs photoelectric conversion and charge transfer according to the driving signals.
The imaging optics 11 focus an optical image of a subject onto the image plane of the CCD image sensor 12. An image signal obtained by photoelectric conversion in the CCD image sensor 12 is transferred to the front end unit (analog processor) 13. The front end unit 13 executes a correlated double sampling (CDS) process and programmable gain amplification (PGA) and outputs the resulting analog signal to the ADC 14. Here, the CDS process eliminates unwanted components such as noise from the imaging signal output from the CCD image sensor 12. The ADC 14 converts the output signal from the front end unit 13 to a digital signal, and supplies the digital signal to the signal processing unit 20 in the control circuit 2.
The signal processing unit 20 outputs to the bus 43 a video signal obtained by carrying out color synchronization processing, gradation correction processing, noise reduction processing, contour correction processing, white balance adjustment processing, signal amplitude adjustment processing, color correction processing, and so on. Under the control of the control unit 40, the bus 43 transfers the video signal to a RAM (Random Access Memory) 41B in the memory 41. By reading the video signal from the RAM 41B, the image processing unit 21B can execute the spatial filtering, clip processing, and noise suppression strength adjustment processing described above.
Some or all of the functions of the image processing unit 21B may be implemented either in hardware or by a computer program executed by a microprocessor. For example, the microprocessor-equipped MPU 40 can implement the functions of the image processing unit 21B by loading and executing a computer program from a ROM (Read Only Memory) 41A, which is a nonvolatile memory.
Various illustrative embodiments of the invention have been described above with reference to the drawings, but various embodiments other than the above may be employed. For example, lookup table circuits may be used in place of the base noise clip processors 331 to 33Q and high clip processors 341 to 34Q.
In the first to third embodiments the amount of distortion α is given as a value corresponding to a distance L, as shown in
1 image capturing device, 2 control circuit, 11 imaging optics, 12 CCD image sensor, 13 front end unit (analog signal processing unit), 14 A/D converter (ADC), 15 drive circuit, 16 timing generator, 20 signal processing unit, 21, 21B image processing device, 22 parameter calculation processor, 23 noise suppression processor, 24 distortion correction processor, 29 filtering control unit, 30 noise suppression unit, 31 spatial filter unit, 311-31Q low pass filters, 321-32Q difference calculators, 331-33Q base noise clip processors, 341-34Q high clip processors, 351-35Q+1 noise suppression strength adjustment units, 36 adder, 37 noise suppression control unit.
Number | Date | Country | Kind |
---|---|---|---|
2011-234950 | Oct 2011 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2012/053791 | 2/17/2012 | WO | 00 | 3/21/2014 |