This application claims the benefit of priority from Japanese Patent Application No. 2007-212403 filed on Aug. 16, 2007, the entire contents of which are incorporated herein by reference.
1. Field of the Invention
Aspects of the present application relate to a shading correction circuit which is used for correcting unevenness in luminance occurring in an image pickup element of a digital still camera or the like.
2. Description of Related Art
Generally, limb darkening occurs in a periphery of an image pickup frame in an image processing apparatus using an image pickup element including a CCD sensor, a COME sensor or the like. To correct such limb darkening, the image processing apparatus is equipped with a shading correction circuit. It is necessary not only to improve accuracy in correction of the shading correction circuit, but also to reduce the shading correction circuit size. For example, Japanese Patent Laid-Open Publication No. 2002-10122, Japanese Patent Laid-Open Publication No. 2002-218298, Japanese Patent Laid-Open Publication No. 2005-341033 and so on disclose the shading correction technique.
Japanese Patent Laid-Open Publication No. 2002-10122 discloses a shading correction system. In this system, an image of a uniform light source is taken to produce reference shading correction data and this reference shading correction data is stored in a memory. Next, when the shading correction is performed on a read out image, the reference shading correction data undergoes an appropriate correction according to image pickup magnification to perform the shading correction. However, it is difficult to achieve sufficient reduction in the memory capacity used for storing the reference shading correction data, in the above-described shading correction system.
Japanese Patent Laid-Open Publication No. 2002-218298 discloses an image pickup apparatus. In this apparatus, a shading correction coefficient corresponding to luminance data taken from respective pixels of the image pickup element is extracted from the shading correction coefficients stored in a memory. However, the above-described image pickup element requires a large capacity memory in order to store the shading correction coefficients corresponding to the respective pixels, in the memory.
Japanese Patent Laid-Open Publication No. 2005-341033 discloses another image pickup apparatus. In this apparatus, the shading correction is performed on a picked-up image with the use of a dedicated correction table with respect to each color component. This apparatus is, also, equipped with a shading correction table for a lens system and a shading correction table for a sensor system. However, this image pickup element also requires a large capacity memory in order to store the shading correction tables.
Aspects in accordance with the present invention include providing a correction circuit which corrects an image data in a piece of a frame, the correction circuit comprising: a weight processing unit which performs weighting on position data corresponding to a relative position in response to the relative position between a position of a pixel in the image data and a certain position in the frame; and a correction processing unit which corrects the image data based on a correction value corresponding to the weighted position data.
Additional advantages and novel features of the invention will be set forth in part in the description that follows, and in part will become more apparent to those skilled in the art upon examination of the following or upon learning by practice of the invention.
As, at this stage of the image pickup operation, an incident angle of the light that is incident on the image pickup element 3 through the lens 2 becomes greater as the light is brought closer to a periphery of the image pickup area 4, luminance (brightness) in the periphery of the image pickup area 4 reduces more than the luminance in a central portion of the image pickup area 4. As a result, unevenness in luminance, which is more reduced in the periphery of the image pickup area 4, occurs in the image data picked up in the image pickup area 4.
An image processing apparatus that digitizes one-frame image data taken by an image pickup element to store the image data in record media is equipped with a shading correction circuit used for correcting such luminance unevenness. In addition, in a digital video camera, the image data having multiple frames undergoes shading correction and then the shading-corrected image data is stored in the record media.
For the above reason, the shading correction circuit is equipped with at least one of a horizontal direction correction table 5 and a vertical direction correction table 6. The horizontal direction correction table 5 stores correction coefficients used for correcting the luminance of the pixel data PD with respect to each row in the horizontal direction. The vertical direction correction table 6 stores correction coefficients used for correcting the luminance of the pixel data PD with respect to each column in the vertical direction.
As shown in
Adding the correction coefficient Adh shown in
In some cases, adding the correction coefficients stored in the vertical direction correction table 6 to the pixel data PD of each column in the vertical direction allows generation of the corrected image data FD. In addition, in some cases, use of the correction coefficients stored in the horizontal direction correction table 5 and the vertical direction correction table 6 allows two-dimensional correction.
The above-described shading correction circuit requires at least one of the horizontal direction correction table 5 or the vertical direction correction table 6 in order to correct limb darkening of the pixel data PD. In consequence, it is necessary that the correction coefficients corresponding to all of the pixel data PD forming the piece of frame be stored in each of the correction tables 5 and 6.
As, for the above reason, a large capacity memory is necessary in order to include at least one of the correction tables 5 and 6, an image processing IC including the shading correction circuit problematically becomes larger in scale. Moreover, the luminance unevenness of the one-frame pixel data PD occurs in a concentric manner from a center C of the frame to the periphery thereof. Furthermore, it is difficult to precisely correct the luminance unevenness in a concentric fashion by one-dimensional or two-dimensional correction using each of the correction tables 5 and 6.
The digital back end 14 includes a noise correction circuit 15, a shading correction circuit 16 and a compression circuit 17. The noise correction circuit 15 performs noise correction on the pixel data PD. The shading correction circuit 16 performs shading correction on the noise-corrected pixel data PD. The compression circuit 17 compresses the shading-corrected pixel data PD into JPEG data.
The JPEG data generated in the compression circuit 17 is output to storage media 18 and the storage media 18 stores the JPEG data. A timing generator 19 generates a pixel clock PCLK, a vertical synchronization signal VD and a horizontal synchronization signal HD and outputs the above signals to the CCD sensor 12, the analog front end 13 and the digital back end 14.
When the vertical synchronization signal VD rises to an H level from an L level while the pixel clock PCLK is being input, the read operation of the pixel data PDa of one frame picked up by the CCD sensor 12 is started. In this state, the pixel data PDa is sequentially read out with respect to each row, each time the horizontal synchronization signal HD rises to an H level from an L level.
In
As shown in
The shading correction circuit 16 in the digital back end 14 includes a vertical counter Vcnt and a horizontal counter Hcnt. The vertical counter Vcnt and the horizontal counter Hcnt count the pixel clock PCLK in response to rising of the horizontal synchronization signal HD While the pixel data PDa is being read out.
The vertical counter Vcnt generates a row number of the pixel data PD that is input, by counting up each time the vertical counter Vcnt starts counting in response to the rising of the horizontal synchronization signal HD and counts to eight pulses of the pixel clock PCLK. The horizontal counter Hcnt starts counting up the pixel clock PCLK in response to the rising of the horizontal synchronization signal HD, and resets the counted value and outputs a pixel number each time the horizontal counter Hcnt counts to eight pulses of the pixel clock PCLK.
That is to say, when the vertical synchronization signal VD and the horizontal synchronization signal HD are input to the shading correction circuit 16, with the pixel data PD, the correction frame detection unit 20 counts the vertical synchronization signal VD and the horizontal synchronization signal HD and then generates the coordinates data (x0, y0) of the pixel data PD.
The coordinate data (x0,y0) generated in the correction frame detection unit 20 is input to a relative coordinates calculation unit 21. The center coordinates (xc,yc) of the pixel data PD of one frame, which is output from the correction frame detection unit 20, is input to the relative coordinates calculation unit 21. The relative coordinates calculation unit 21 uses the center coordinates (xc,yc) as the origin (0,0) to convert the supplied coordinates data (x0,y0) into relative coordinates (x1,y1) and outputs the relative coordinates (x1,y1).
Note that conversion into the relative coordinates (x1,y1) according to this implementation in accordance with aspects of the present invention is not limited to cases where the center coordinates (xc,yc) are used, and it is capable of using any coordinates in the frame. The relative coordinates (x1,y1) generated in the relative coordinates calculation unit 21 are input to a rotation processing unit 22. The rotation processing unit 22 rotates the relative coordinates (x1,y1) in units of forty five (45) degrees relative to the origin thereof, as necessary.
The multipliers 25 and 26 multiply each of the results of the addition and the subtraction by √{square root over (2)} (i.e., 0.7071) respectively and outputs coordinates (x2,y2). As a result, as shown in
The coordinates (x2,y2) output from the rotation processing unit 22 in
The coordinates (x3,y3) output from the mirror processing unit 27 in
The quadrant determination unit 29 determines to which quadrant (i.e., first, second, third and fourth quadrants) shown in
A Right-hand side weighting coefficient kRI and a left-hand side weighting coefficient kLE are input to the X coefficient selection unit 32 It is possible to set any right-hand side weighting coefficients kRI and any left-hand side weighting coefficients kLE in advance before shipping the digital still camera. In some cases, the right-hand side weighting coefficient kRI and the left-hand side weighting coefficient kLE are set by a user of the digital still camera.
An upper base weighting coefficient kUP and a lower base weighting coefficient kDN are input to the Y coefficient selection unit 33. It is possible to set any upper base weighting coefficients kUP and lower base weighting coefficients kDN before shipping the digital still camera or when the digital still camera is used.
The X coefficient selection unit 32 sets the right-hand coefficient kRI and the left-hand coefficient kLE for each of the determination signals m1 through m4 respectively and outputs them to the X-axis weight multiplier 30. The Y-axis selection unit 33 sets the upper base coefficient kUP and the lower base coefficient kDN for each of the determination signals m1 through m4 respectively and outputs them to the Y-axis weight multiplier 31.
The X-axis weight multiplier 30 multiplies the input coordinates (x3) by the coefficient which is supplied from the X coefficient selection unit 32 and the X-axis weight multiplier 30 outputs the multiplied result as the coordinate (x4). On the other hand, the Y-axis weight multiplier 31 multiplies the input coordinates (y3) by the coefficient which is supplied from the Y coefficient selection unit 33 and the Y-axis weight multiplier 31 outputs the multiplied result as the coordinate (y4).
The coordinates (x4,y4) supplied from the weight processing unit 28 in
The direct distance r0 supplied from the direct distance calculation unit 34 in
Generally, the luminance unevenness does not occur in the pixel data around the origin (0,0) of the one-frame pixel data. Therefore, when the shading correction is not performed on the pixel data around the origin but the shading correction is performed on certain pixel data at a distance from the origin equal to or more than a certain distance, the beginning correction distance setting unit 35 calculates a direct distance r1 that is obtained by subtracting the direct distance for starting the shading correction from the direct distance r0 and outputs the direct distance r1.
As shown in
As shown in
In the above example, setting the direct distance offset value (offs) allows the shading correction to not be performed on the certain pixel data having the direct distance r0 of which from the origin is equal to and less than the distance corresponding to the one thousand and twenty fourth (1024th) pixel.
The distance data r1 supplied from the beginning correction distance setting unit 35 in
As shown in
For example, the correction range compression unit 39 in
The selector 37 in
The second correction value generation unit 41 generates a correction value r5 in response to the distance data r1. The second correction value generation unit 41 includes a color correction unit 42, an offset calculation unit 43 and correction restriction unit 44. The color correction unit 42 calculates a luminance correction value with respect to each color of the pixel data. The offset calculation unit 43 calculates an offset value necessary for calculating the luminance correction value with respect to each color of the pixel data. The correction restriction unit 44 restricts the luminance correction value with respect to each color of the pixel data so that the luminance correction value is equal to or lower than an upper limit value that is set in advance. Note that, for example, it is possible to form the second correction value generation circuit 41 with known art techniques.
Receiving the distance data r1 from the selector 37 in
The pixel data PD is input to the correction processing unit 45 in
Aspects of the shading correction circuit include the following advantages:
1. The shading correction value of the pixel data PD is generated based on the direct distance from the center of the frame of the pixel data PD.
2. The selector 37 selects either an operation for generating shading correction value by reading from the correction table 40 in
3. When the selector 37 selects the operation for generating a shading correction value by reading from the correction table 40 in
4. When the selector 37 selects the operation for generating shading correction value through calculation using the second correction value generation circuit 41 in
5. The beginning correction distance setting unit 35 in
6. The correction range compression unit 39 in
7. Combined use of the correction start distance setting unit 35 and the correction range compression unit 39 in
8. The weight processing unit 28 in
9. The rotation processing unit 22 and the mirror processing unit 27 in
10. Since the rotation processing unit 22 rotates the coordinates in units of forty five (45) degrees, this allows a simple circuit. As described above, the exemplary implementation in accordance with aspects of the present invention can provide the shading correction circuit not only capable of improving its accuracy in the shading correction but also capable of reducing the circuit size.
Aspects of the present invention can achieved by additional implementations in accordance with aspects of the present invention. For example, both the correction value r3 and the distance data r1 supplied to the selector 37 may be input to the second correction value generation circuit 41. This allows the correction value r5 generated by the second correction value generation unit 41 to be added to the correction value r3. Moreover, the shading correction circuit 16 can be applied to an interlace operation in which the pixel data PD is input in alternate rows.
Example implementations in accordance with aspects of the present invention of the present invention have now been described in accordance with the above advantages. It will be appreciated that these examples are merely illustrative of the invention. Many variations and modifications will be apparent to those skilled in the art.
Number | Date | Country | Kind |
---|---|---|---|
2007-212403 | Aug 2007 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
6937777 | Shirakawa | Aug 2005 | B2 |
7317482 | Sato et al. | Jan 2008 | B2 |
7570837 | Hori | Aug 2009 | B2 |
7656443 | Ikeda | Feb 2010 | B2 |
20020008760 | Nakamura | Jan 2002 | A1 |
20030156190 | Sato et al. | Aug 2003 | A1 |
20040174445 | Kawakami et al. | Sep 2004 | A1 |
20050219404 | Kobayashi | Oct 2005 | A1 |
20050275904 | Kido et al. | Dec 2005 | A1 |
20060274170 | Azuma | Dec 2006 | A1 |
20080273812 | Fujita et al. | Nov 2008 | A1 |
Number | Date | Country |
---|---|---|
2002-010122 | Jan 2002 | JP |
2002-218298 | Aug 2002 | JP |
2005-341033 | Dec 2005 | JP |
Number | Date | Country | |
---|---|---|---|
20090046178 A1 | Feb 2009 | US |