US9270960B1 - System and method for green imbalance compensation in images - Google Patents
System and method for green imbalance compensation in images Download PDFInfo
- Publication number
- US9270960B1 US9270960B1 US14/330,416 US201414330416A US9270960B1 US 9270960 B1 US9270960 B1 US 9270960B1 US 201414330416 A US201414330416 A US 201414330416A US 9270960 B1 US9270960 B1 US 9270960B1
- Authority
- US
- United States
- Prior art keywords
- pixel
- green
- pixels
- group
- output signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/646—Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters
-
- H04N9/735—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
- H04N23/88—Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
-
- H04N9/045—
Definitions
- the technology described in this document relates generally to image signal processing (ISP) methods and more particularly to green imbalance compensation in imaging devices.
- ISP image signal processing
- CMOS image sensors are used to sense radiation that includes, for example, visible light.
- CCD image sensors charge-coupled device (CCD) sensors are widely used in digital cameras and mobile phone cameras. These sensors utilize an array of pixels located in a substrate, where the pixels include photodiodes and transistors. The pixels absorb radiation projected toward the substrate and convert the absorbed radiation into electrical signals.
- the present disclosure is directed to an imaging device and a method of compensating for green pixel imbalance in an image captured by a pixel array.
- a pixel output signal is obtained for each green pixel in a group of pixels of the image captured by the pixel array.
- the group of pixels includes a plurality of pixel arrays, where each pixel array of the plurality of pixel arrays includes (i) a first green pixel in a row that includes a red pixel, and (ii) a second green pixel in a row that includes a blue pixel.
- a green imbalance value is determined for the group of pixels based on the obtained pixel output signals.
- a difference between the pixel output signal for the first green pixel and the pixel output signal for the second green pixel is calculated.
- An average of the calculated differences is determined, where the green imbalance value is equal to the average.
- the pixel output signal of at least one of the green pixels in the group of pixels is adjusted based on the green imbalance value.
- a pixel output signal for each green pixel in a group of pixels of the image captured by the pixel array is obtained.
- the group of pixels includes a plurality of non-overlapping pixel arrays.
- Each pixel array of the plurality of pixel arrays includes (i) a first green pixel in a row that includes a red pixel, and (ii) a second green pixel in a row that includes a blue pixel.
- a green imbalance value for the group of pixels is determined based on the obtained pixel output signals.
- a difference between the pixel output signal for the first green pixel and the pixel output signal for the second green pixel is calculated. For each of the calculated differences, it is determined if the calculated difference is a result of image edge pixels in the group of pixels.
- the pixel output signal of at least one of the green pixels in the group of pixels is adjusted based on the green imbalance value.
- an imaging device in another example, includes a pixel array and a processor for processing pixel output signals received from the pixel array.
- the processor is configured to obtain a pixel output signal for each green pixel in a group of pixels of an image captured by the pixel array.
- the group of pixels includes a plurality of pixel arrays, where each pixel array of the plurality of pixel arrays includes (i) a first green pixel in a row that includes a red pixel, and (ii) a second green pixel in a row that includes a blue pixel.
- the processor is also configured to, for each pixel array of the plurality of pixel arrays, calculate a difference between the pixel output signal for the first green pixel and the pixel output signal for the second green pixel. An average of the calculated differences is determined, where the average is equal to a green imbalance value for the group of pixels.
- the processor is further configured to adjust the pixel output signal of at least one of the green pixels in the group of pixels based on the green imbalance value
- FIG. 1 depicts an array of pixels using a Bayer pattern color filter.
- FIG. 2 depicts an array of pixels including a group of pixels, where the group of pixels includes a 2 ⁇ 2 pixel array.
- FIG. 3 is a flowchart of a process for compensating for green-green imbalance in an image captured by a pixel array.
- FIG. 4 is a flowchart illustrating an example method for determining positive and negative thresholds used in compensating for green pixel imbalance in an image captured by a pixel array.
- FIG. 5 is a flowchart illustrating an example method for compensating for green-green imbalance in an image captured by a pixel array.
- FIG. 6 is a block diagram of an example imaging device that includes an image processing unit configured to compensate for green pixel imbalance in an image captured by a pixel array.
- FIG. 7 is a flowchart illustrating an example method of compensating for green pixel imbalance in an image captured by a pixel array.
- FIG. 1 depicts an array of pixels 100 using a Bayer pattern color filter.
- the array of pixels 100 is part of a CMOS or CCD imaging device.
- each pixel of the array 100 produces a signal that indicates an intensity of light impinging on the pixel, and a magnitude of the signal produced by each pixel is proportional to the intensity of the light impinging on the pixel.
- the signals produced by the pixels of the array 100 are digitized and stored in order to display a corresponding image on a monitor or to otherwise provide information about the captured image.
- the array of pixels 100 utilizes a Bayer pattern.
- the Bayer pattern includes red, green, and blue pixels, where each pixel is sensitive to only one color or spectral band. Thus, photons having a wavelength corresponding to a red, green, or blue color are detected by respective red, green, or blue pixels of the array of pixels 100 .
- a color filter array is placed in front of the pixel array 100 so that each pixel receives light of the color of its associated filter. The color filter array is arranged in the specific pattern depicted in FIG. 1 .
- the Bayer pattern shown in FIG. 1 includes an array of repeating red, green, and blue filters.
- Red pixels of the array 100 are associated with red filters of the Bayer pattern
- green pixels are associated with green filters
- blue pixels are associated with blue filters.
- the red, green, and blue pixels are arranged so that alternating red and blue pixels are included in rows 102 of the pixel array 100 , and alternating red and green pixels are included in rows 104 of the pixel array 100 .
- the rows 102 , 104 including such alternating pixels are repeated throughout the pixel array 100 .
- FIG. 1 depicts the pixel array 100 having M rows and M columns, where M is equal to “8,” in other examples, the pixel array 100 includes any number of different rows and columns. Typically, the pixel array 100 includes hundreds or thousands of such rows and columns.
- the use of the Bayer pattern color filter is intended to limit the color of light that is received by each pixel of the array 100 .
- the Bayer pattern color filter is intended to cause each pixel to receive light of a single color that is defined by a wavelength range of the pixel's associated filter (e.g., a red filter, a green filter, or a blue filter).
- a pixel often receives light of a color that is different from that of the intended color defined by the pixel's associated filter.
- cross-talk causes i) green pixels positioned next to red pixels to receive an amount of red-filtered light, and ii) green pixels positioned next to blue pixels to receive an amount of blue-filtered light.
- the pixel array 100 has two different detection levels for the color green.
- the signal produced by the green pixels that are included in the rows 102 with the blue pixels is not the same as the signal produced by the green pixels that are included in the rows 104 with the red pixels. Ideally, there is uniformity in the detection level for the color green across the array 100 .
- green-green imbalance The different detection levels for the color green is known as “green-green imbalance” or “green imbalance” and causes unwanted effects and degraded image quality in captured images. Because the green imbalance is caused at least in part by the angle of incident light impinging on the pixel array 100 , green imbalance is location dependent, such that portions of the pixel array 100 experience a green imbalance that differs from that of other portions of the pixel array 100 . With smaller pixel sizes and higher sensor resolution, the undesirable effects of green imbalance increase.
- green imbalance is corrected by i) determining a green imbalance value for a portion of the pixel array 100 (e.g., determining a green imbalance value for a local neighborhood of pixels included in the pixel array 100 ), and ii) digitally correcting an image captured by the pixel array 100 based on the determined green imbalance.
- the portion of the pixel array 100 comprises, in an example, a 4 pixel ⁇ 4 pixel group of pixels. Examples described herein further describe the consideration of image edge pixels in correcting green imbalance.
- different detection levels for the color green i.e., as between green pixels on rows with blue pixels and green pixels on rows with red pixels, as described above
- both the green imbalance and the image edge pixels are considered in the green imbalance correction methods described herein.
- the examples described herein are applicable to CMOS imaging devices, CCD imaging devices, and other imaging devices.
- FIG. 2 depicts an array of pixels 200 including a group of pixels 202 , where the group of pixels 202 includes a 2 ⁇ 2 pixel array 204 .
- the pixel array 200 is used to capture an image, with each of the pixels in the array 200 producing a pixel output signal that indicates an intensity of light impinging on the pixel.
- a green imbalance value for the group of pixels 202 is determined, and the green imbalance value is used to adjust a pixel output signal of at least one green pixel within the group of pixels 202 , thereby compensating for the green pixel imbalance in the group 202 .
- the compensation procedure is configured to cause minimum degradation to edges and features of the captured image.
- the group of pixels 202 is a subset of pixels included in the pixel array 200 .
- the group of pixels 202 is illustrated as a 4 pixel ⁇ 4 pixel group of pixels for illustrative purposes only, and in other examples, the group of pixels 202 is of various other sizes and shapes.
- the group of pixels 202 includes a plurality of 2 ⁇ 2 pixel arrays, and an example 2 ⁇ 2 pixel array 204 is illustrated in FIG. 2 .
- Each 2 ⁇ 2 pixel array of the plurality of 2 ⁇ 2 pixel arrays includes (i) a first green pixel in a row that includes a red pixel (e.g., the “Gr3” pixel of the example 2 ⁇ 2 pixel array 204 ), and (ii) a second green pixel in a row that includes a blue pixel (e.g., the “Gb3” pixel of the example 2 ⁇ 2 pixel array 204 ).
- the first green pixels are referred to as “green-red” pixels or as “Gr” pixels.
- the second green pixels are referred to as “green-blue” pixels or as “Gb” pixels.
- the group of pixels 202 limits a sampling of pixel output signals to a selection of local values, such that the compensation procedure described herein is a local neighborhood operation.
- the use of such a local neighborhood operation involving the group of pixels 202 is in contrast to alternative green balance procedures that consider only two pixel values (e.g., Gr3 and Gb3, or other combinations of green pixels within a single 2 ⁇ 2 pixel array).
- a green imbalance value for the group of pixels 202 is determined based on the pixel output signals produced by the green pixels of the group 202 , and the green imbalance value is used to correct at least one green pixel output signal from the group of pixels 202 .
- a difference between the pixel output signal for the first green pixel (i.e., the green-red or Gr pixel) and the pixel output signal for the second green pixel (i.e., the green-blue or Gb pixel) is calculated.
- an average difference is determined by summing the differences and then dividing by a number of differences calculated.
- the green imbalance value for the group 202 is set equal to the average difference, and a pixel output signal of at least one of the green pixels in the group of pixels 202 is adjusted based on the green imbalance value.
- FIG. 3 illustrates additional aspects of the green balance procedure, including the determination of whether a calculated green imbalance is a result of image edge pixels in the captured image.
- FIG. 3 is a flowchart 300 of a process for compensating for green-green imbalance in an image captured by a pixel array.
- an image is acquired by the pixel array, and a group of pixels (i.e., a “kernel” of pixels) is defined within the image.
- the array of pixels 200 represents the captured image, where the captured image results from pixel output signals for each of the pixels located within the array 200 .
- the group of pixels 202 comprising a subset of the pixels included in the array 200 , is defined within the captured image as illustrated in FIG. 2 .
- the group of pixels 202 includes a plurality of 2 ⁇ 2 pixel arrays, where each of the 2 ⁇ 2 pixel arrays includes (i) a first green pixel in a row that includes a red pixel (i.e., a green-red pixel), and (ii) a second green pixel in a row that includes a blue (i.e., a green-blue pixel).
- each of the 2 ⁇ 2 pixel arrays includes (i) a first green pixel in a row that includes a red pixel (i.e., a green-red pixel), and (ii) a second green pixel in a row that includes a blue (i.e., a green-blue pixel).
- the group of pixels 202 includes four 2 ⁇ 2 pixel arrays, where a first 2 ⁇ 2 pixel array includes green pixels Gr0 and Gb0, a second 2 ⁇ 2 pixel array includes green pixels Gr1 and Gb1, a third 2 ⁇ 2 pixel array includes green pixels Gr2 and Gb2, and a fourth 2 ⁇ 2 pixel array includes green pixels Gr3 and Gb3.
- the first green pixels are the pixels Gr0, Gr1, Gr2, and Gr3
- the second green pixels are the pixels Gb0, Gb1, Gb2, and Gb3.
- the group of pixels 202 is defined here as including four 2 ⁇ 2 pixel arrays, such that none of the 2 ⁇ 2 pixel arrays overlap one another, various other methods for defining 2 ⁇ 2 pixel arrays within a group of pixels are used in other examples.
- the defined 2 ⁇ 2 pixel arrays are allowed to overlap one another, such that a single pixel is included in multiple 2 ⁇ 2 pixel arrays, and a 4 ⁇ 4 pixel array similar to the array 200 of FIG. 2 includes more than four 2 ⁇ 2 pixel arrays.
- the green pixels of interest are the green pixels Gb0 and Gr3 located in a center area of the group 202 .
- a green imbalance existing between the green pixels Gb0 and Gr3 is corrected according to the procedure described below, where a green imbalance value for the entire group 202 is determined and thereafter used in correcting the green imbalance between the pixels Gb0 and Gr3.
- differences are calculated between pixel output signals for green pixels in each of the 2 ⁇ 2 pixel arrays of the group.
- a difference is taken between the output signals for the first green pixel and the second green pixel.
- the following differences between pixel output signals (Delta0, Delta1, Delta2, and Delta3) are calculated:
- Delta0 Gr 0 ⁇ Gb 0 (Eqn. 1)
- Delta1 Gr 1 ⁇ Gb 1 (Eqn. 2)
- Delta2 Gr 2 ⁇ Gb 2 (Eqn. 3)
- Delta3 Gr 3 ⁇ Gb 3 (Eqn.
- the calculated difference is caused by edges in the group of pixels. With reference to the example of FIG. 2 , this determination is used to improve the accuracy of the estimated green imbalance value, Delta_est.
- the Delta_est value may lack accuracy because the calculated differences between the pixel output signals (Delta0, Delta1, Delta2, and Delta3) may be caused largely by edges in the group of pixels 202 , rather than a true green imbalance within the group 202 .
- the upper and lower limit values defined by the positive and negative thresholds are predetermined values that are set via a calibration procedure that is described in greater detail below with reference to FIG. 4 .
- the use of the comparisons to the positive and negative thresholds reflects the fact that calculated differences Gr_i ⁇ Gb_i with unusually high values that exceed the threshold values are generally caused by edges within the group of pixels, rather than an actual green imbalance. Comparing the calculated differences to the thresholds and clamping the calculated differences, if necessary, reduces the error in the calculated differences.
- the positive threshold value is a positive number
- the negative threshold value is a negative number.
- the calculated difference Gr_i ⁇ Gb_i is a positive value
- the calculated difference Gr_i ⁇ Gb_i is a negative value
- the calculated difference is compared to the negative threshold value.
- the calculated difference is adjusted by setting the calculated difference equal to the threshold value. As described in further detail below, this adjusting of the calculated differences occurs prior to determining an average of the calculated differences.
- an average of the calculated differences (after comparing the calculated differences to the threshold values and clamping the calculated differences, as necessary) is calculated to determine the green imbalance between the pixels of interest.
- the pixels of interest are the green pixels Gb0 and Gr3 located in a center area of the group 202 .
- Green_imbalance (Delta0+Delta1+Delta2+Delta3)/4 (Eqn. 7)
- the calculated differences Delta0, Delta1, Delta2, and Delta3 have been adjusted, as necessary, based on the comparisons to the positive and negative thresholds.
- the Green_imbalance value of Equation 7 may differ from the Delta_est value of Equation 5.
- the green imbalance between the pixels of interest within the group of pixels is corrected using the calculated green imbalance value.
- Gb 0_adjusted Gb 0+(Green_imbalance/2) (Eqn. 9)
- pixel output signals of two green pixels (i.e., Gr3 and Gb0) within the group of pixels 202 are adjusted based on the green imbalance value.
- the pixel output signals for the first green pixel (i.e., the green-red pixel) and the second green pixel (i.e., the green-blue pixel) of a single 2 ⁇ 2 pixel array of the group 202 is adjusted based on the green imbalance value, and the pixel output signals for other green pixels included in the group of pixels 202 are not adjusted.
- the single 2 ⁇ 2 pixel array including the adjusted pixel output signals is located at a center of the group of pixels 202 , as is evident from FIG. 2 .
- the process described above with reference to FIG. 3 is repeated by moving the group of pixels 202 throughout the captured image until all green pixels in the captured image have been adjusted as necessary.
- green pixels are corrected more than one time.
- FIG. 4 is a flowchart 400 illustrating an example method for determining positive and negative thresholds used in compensating for green pixel imbalance in an image captured by a pixel array.
- positive and negative threshold values are used in determining whether a calculated difference between pixel output signals is a result of image edge pixels in a group of pixels.
- a calibration procedure is performed.
- a flat field image is acquired using the pixel array.
- the flat field image is a response of the pixel array to a source of uniform radiation, and the acquisition of the flat field image is performed to remove pixel-to-pixel sensitivity variations across the pixel array.
- lens shading correction is performed on the flat field image to generate a corrected image.
- the acquisition of the image via the pixel array leads to situations where the image exhibits significant shading across the image.
- the image is bright in the center of the image, and the brightness decreases towards the edge of the image.
- the image is darker on the left side and lighter on the right side.
- the shading is caused by non-uniform illumination, non-uniform camera sensitivity, or dirt and dust on a lens surface.
- Lens shading correction is used to remove such effects from the image after the image has been acquired. After the lens shading correction, in the corrected image, the green-red, green-blue, red, and blue channels are at an equal, flat level.
- the corrected image is divided into a plurality of locations.
- the corrected image is divided into a matrix of 64 locations ⁇ 64 locations.
- the green imbalance in the corrected image is measured and recorded.
- green imbalance is location dependent, such that the measured green imbalance values vary over the plurality of locations in the corrected image.
- the positive and negative threshold values are set equal to the measured green imbalance values plus or minus a margin value.
- the positive and negative threshold values are location dependent and vary across the different locations of the image, resulting in an array of local green imbalance thresholds (i.e., a positive and negative threshold for each location of the plurality of locations). If the Gr_i ⁇ Gb_i difference value exceeds the threshold, then the difference value is determined to be caused by an edge in the image, and the difference value is clamped to a particular local green imbalance threshold that is dependent on the portion of the image under consideration.
- FIG. 5 is a flowchart 500 illustrating an example method for compensating for green-green imbalance in an image captured by a pixel array.
- the image is captured using the pixel array.
- a group of pixels i.e., a kernel of pixels
- the group of pixels is of different sizes and shapes and does not comprise a square shape.
- a calibration process for determining the positive and negative thresholds is detailed at steps 512 , 514 , and 516 of FIG. 5 .
- a flat field image is obtained using the pixel array.
- lens shading correction is performed on the flat field image to generate a corrected image.
- calibration is performed to obtain an array of positive and negative threshold values.
- the calibration performed at 516 involves determining green imbalance values at various locations of the corrected image.
- the array of positive and negative threshold values are determined using the green imbalance values, thus causing a plurality of positive and negative threshold values to be defined across the pixel array.
- the array of positive and negative threshold values are set equal to the green imbalance values at the various locations of the corrected image plus some margin value, as described above with reference to FIG. 4 .
- the green imbalance value for the group of pixels is equal to the computed average.
- at least one pixel output signal for the captured image is adjusted based on the green imbalance value for the group of pixels.
- the pixels of interest to be adjusted within the group of pixels are located at a center area of the group of pixels. With reference to FIG. 2 , the pixels of interest at the center of the group of pixels 202 are the green pixels Gr3 and Gb0. As illustrated in FIG.
- FIG. 6 is a block diagram of an example imaging device 600 that includes an image processing unit 604 configured to compensate for green pixel imbalance in an image captured by a pixel array.
- Embodiments of the example imaging device shown in FIG. 6 are included in stand-alone digital cameras and in digital cameras embedded in other electronic devices, such as cellular phones, laptop computers, and hand-held personal computing devices.
- example imaging device 600 includes an optical sensing unit 602 , the image processing unit 604 , a data storage unit 606 , and an input/output interface 608 .
- the example imaging device 600 further includes memory (e.g., as part of the data storage unit 606 , the input/output interface 608 , or as a standalone component) and a bus that connects one or more of the components 602 , 604 , 606 , 608 .
- memory e.g., as part of the data storage unit 606 , the input/output interface 608 , or as a standalone component
- bus that connects one or more of the components 602 , 604 , 606 , 608 .
- the components of the imaging device 600 are configured to provide image acquisition and green imbalance correction as described herein.
- the optical sensing unit 602 includes a pixel array or other components used to form a complementary metal-oxide-semiconductor (CMOS) image sensor or charge-coupled device (CCD) image sensor.
- CMOS complementary metal-oxide-semiconductor
- CCD charge-coupled device
- the image processing unit 604 includes one or more processors for processing image pixel output signals that are generated by the optical sensing unit 602 .
- the one or more processors of the image processing unit 604 obtain the pixel output signals and perform procedures to adjust the pixel output signals as necessary for the green imbalance correction.
- the data storage unit 606 and memory are configured to hold persistent and non-persistent copies of computer code and data.
- the computer code includes instructions that when accessed by the image processing unit 604 result in the imaging device 600 performing green imbalance correction operations as described above.
- the data includes data to be acted upon by the instructions of the code, and in an example, the data includes stored pixel output signals.
- the processing unit 604 includes one or more single-core processors, multiple-core processors, controllers, or application-specific integrated circuits (ASICs), among other types of processing components.
- the memory includes random access memory (RAM), dynamic RAM (DRAM), static RAM (SRAM), synchronous DRAM (SDRAM), or dual-data rate RAM (DDRRAM), among other types of memory.
- the data storage unit 606 includes integrated or peripheral storage devices, such as, but not limited to, disks and associated drives (e.g., magnetic, optical), USB storage devices and associated ports, flash memory, read-only memory (ROM), or non-volatile semiconductor devices, among others.
- data storage unit 606 is a storage resource physically part of the imaging device 600 , and in another example, the data storage unit 606 is accessible by, but not a part of, the imaging device 600 .
- the input/output interface 608 includes interfaces designed to communicate with peripheral hardware (e.g., remote optical imaging sensors or other remote devices). In various embodiments, imaging device 600 has more or less elements or a different architecture.
- FIG. 7 is a flowchart 700 illustrating an example method of compensating for green pixel imbalance in an image captured by a pixel array.
- a pixel output signal is obtained for each green pixel in a group of pixels of the image captured by the pixel array.
- the group of pixels includes a plurality of pixel arrays, where each pixel array of the plurality of pixel arrays includes (i) a first green pixel in a row that includes a red pixel, and (ii) a second green pixel in a row that includes a blue pixel.
- a green imbalance value is determined for the group of pixels based on the obtained pixel output signals.
- a difference between the pixel output signal for the first green pixel and the pixel output signal for the second green pixel is calculated.
- an average of the calculated differences is determined, where the green imbalance value is equal to the average.
- the pixel output signal of at least one of the green pixels in the group of pixels is adjusted based on the green imbalance value.
- the systems' and methods' data may be stored and implemented in one or more different types of computer-implemented data stores, such as different types of storage devices and programming constructs (e.g., RAM, ROM, Flash memory, flat files, databases, programming data structures, programming variables, IF-THEN (or similar type) statement constructs, etc.).
- storage devices and programming constructs e.g., RAM, ROM, Flash memory, flat files, databases, programming data structures, programming variables, IF-THEN (or similar type) statement constructs, etc.
- data structures describe formats for use in organizing and storing data in databases, programs, memory, or other computer-readable media for use by a computer program.
- a module or processor includes but is not limited to a unit of code that performs a software operation, and can be implemented for example as a subroutine unit of code, or as a software function unit of code, or as an object (as in an object-oriented paradigm), or as an applet, or in a computer script language, or as another type of computer code.
- the software components and/or functionality may be located on a single computer or distributed across multiple computers depending upon the situation at hand.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Color Television Image Signal Generators (AREA)
Abstract
Description
Delta0=Gr0−Gb0 (Eqn. 1)
Delta1=Gr1−Gb1 (Eqn. 2)
Delta2=Gr2−Gb2 (Eqn. 3)
Delta3=Gr3−Gb3 (Eqn. 4)
In an example, an estimated green imbalance value (Delta_est) between the pixels of interest, Gb0 and Gr3, is determined by taking an average of the calculated differences according to an equation:
Delta_est=(Delta0+Delta1+Delta2+Delta3)/4 (Eqn. 5)
Delta— i=Gr — i−Gb — i(i=0,1,2,3)
if Gr — i−Gb — i>Pos_threshold, then Delta— i=Pos_threshold
if Gr — i−Gb — i<Neg_threshold, then Delta— i=Neg_threshold (Eqn. 6)
Green_imbalance=(Delta0+Delta1+Delta2+Delta3)/4 (Eqn. 7)
As explained above, in Equation 7, the calculated differences Delta0, Delta1, Delta2, and Delta3 have been adjusted, as necessary, based on the comparisons to the positive and negative thresholds. Thus, the Green_imbalance value of Equation 7 may differ from the Delta_est value of Equation 5.
Gr3_adjusted=Gr3−(Green_imbalance/2) (Eqn. 8)
Gb0_adjusted=Gb0+(Green_imbalance/2) (Eqn. 9)
In the example of
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/330,416 US9270960B1 (en) | 2013-07-25 | 2014-07-14 | System and method for green imbalance compensation in images |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361858455P | 2013-07-25 | 2013-07-25 | |
US14/330,416 US9270960B1 (en) | 2013-07-25 | 2014-07-14 | System and method for green imbalance compensation in images |
Publications (1)
Publication Number | Publication Date |
---|---|
US9270960B1 true US9270960B1 (en) | 2016-02-23 |
Family
ID=55314824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/330,416 Expired - Fee Related US9270960B1 (en) | 2013-07-25 | 2014-07-14 | System and method for green imbalance compensation in images |
Country Status (1)
Country | Link |
---|---|
US (1) | US9270960B1 (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714239B2 (en) | 1997-10-29 | 2004-03-30 | Eastman Kodak Company | Active pixel sensor with programmable color balance |
US20080231735A1 (en) * | 2007-03-20 | 2008-09-25 | Texas Instruments Incorporated | Activity-Based System and Method for Reducing Gain Imbalance in a Bayer Pattern and Digital Camera Employing the Same |
US20080252759A1 (en) * | 2007-04-12 | 2008-10-16 | Micron Technology, Inc. | Method, apparatus and system providing green-green imbalance compensation |
US7561194B1 (en) * | 2003-10-17 | 2009-07-14 | Eastman Kodak Company | Charge diffusion crosstalk reduction for image sensors |
US7876363B2 (en) | 2007-04-19 | 2011-01-25 | Aptina Imaging Corporation | Methods, systems and apparatuses for high-quality green imbalance compensation in images |
US8005297B2 (en) | 2006-01-18 | 2011-08-23 | Qualcomm Incorporated | Method and apparatus for adaptive and self-calibrated sensor green channel gain balancing |
US8297858B1 (en) | 2007-03-02 | 2012-10-30 | Marvell International Ltd. | Managing project information with a hand-propelled device |
US8471921B1 (en) | 2008-06-23 | 2013-06-25 | Marvell International Ltd. | Reducing optical crosstalk and radial fall-off in imaging sensors |
US20140375668A1 (en) * | 2013-06-21 | 2014-12-25 | Himax Imaging Limited | Lookup-table-based green imbalance correction system and method |
-
2014
- 2014-07-14 US US14/330,416 patent/US9270960B1/en not_active Expired - Fee Related
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714239B2 (en) | 1997-10-29 | 2004-03-30 | Eastman Kodak Company | Active pixel sensor with programmable color balance |
US7561194B1 (en) * | 2003-10-17 | 2009-07-14 | Eastman Kodak Company | Charge diffusion crosstalk reduction for image sensors |
US8005297B2 (en) | 2006-01-18 | 2011-08-23 | Qualcomm Incorporated | Method and apparatus for adaptive and self-calibrated sensor green channel gain balancing |
US8297858B1 (en) | 2007-03-02 | 2012-10-30 | Marvell International Ltd. | Managing project information with a hand-propelled device |
US20080231735A1 (en) * | 2007-03-20 | 2008-09-25 | Texas Instruments Incorporated | Activity-Based System and Method for Reducing Gain Imbalance in a Bayer Pattern and Digital Camera Employing the Same |
US20080252759A1 (en) * | 2007-04-12 | 2008-10-16 | Micron Technology, Inc. | Method, apparatus and system providing green-green imbalance compensation |
US7830428B2 (en) | 2007-04-12 | 2010-11-09 | Aptina Imaging Corporation | Method, apparatus and system providing green-green imbalance compensation |
US7876363B2 (en) | 2007-04-19 | 2011-01-25 | Aptina Imaging Corporation | Methods, systems and apparatuses for high-quality green imbalance compensation in images |
US8471921B1 (en) | 2008-06-23 | 2013-06-25 | Marvell International Ltd. | Reducing optical crosstalk and radial fall-off in imaging sensors |
US20140375668A1 (en) * | 2013-06-21 | 2014-12-25 | Himax Imaging Limited | Lookup-table-based green imbalance correction system and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9224782B2 (en) | Imaging systems with reference pixels for image flare mitigation | |
US10043290B2 (en) | Image processing to enhance distance calculation accuracy | |
US9787911B2 (en) | Systems and methods for photometric normalization in array cameras | |
US10397465B2 (en) | Extended or full-density phase-detection autofocus control | |
US7876363B2 (en) | Methods, systems and apparatuses for high-quality green imbalance compensation in images | |
KR102088401B1 (en) | Image sensor and imaging device including the same | |
US9883152B2 (en) | Imaging apparatus, imaging system, and signal processing method | |
US9497397B1 (en) | Image sensor with auto-focus and color ratio cross-talk comparison | |
WO2014065056A1 (en) | Imaging device, image processing method, and program | |
US10638072B2 (en) | Control apparatus, image pickup apparatus, and control method for performing noise correction of imaging signal | |
CN110944126B (en) | Imaging system and method for performing black level correction on image sensor | |
US10027907B2 (en) | Image pickup device having unit pixels arranged in two-dimensional matrix form each of which has pixels of different sensitivities, control method therefor, storage medium storing control program therefor, and signal processing device for image pickup device | |
US20080179490A1 (en) | Solid-state image pickup device | |
US11356616B2 (en) | Image processing device, image capturing device, control method of image processing device, control method of image capturing device, and storage medium | |
JP2016126592A5 (en) | ||
US10313617B2 (en) | Image capturing apparatus, control method for the same, and storage medium | |
US9373158B2 (en) | Method for reducing image artifacts produced by a CMOS camera | |
US9270960B1 (en) | System and method for green imbalance compensation in images | |
US11431924B2 (en) | Image capturing apparatus and control method thereof | |
US20170310877A1 (en) | Image capturing apparatus and control method thereof | |
JP6033972B2 (en) | Method and apparatus for gain correction and level correction of a multi-tap CCD camera | |
JP6704611B2 (en) | Imaging device and imaging method | |
US20080165262A1 (en) | Method for capturing image data | |
JP6961477B2 (en) | Imaging device and its control method | |
US10142571B2 (en) | Image capturing apparatus, method for controlling the same, image processing apparatus, and image processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MARVELL INTERNATIONAL LTD., BERMUDA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MARVELL SEMICONDUCTOR, INC.;REEL/FRAME:036974/0183 Effective date: 20140714 Owner name: MARVELL SEMICONDUCTOR, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HUANG, SAMSON;REEL/FRAME:036974/0169 Effective date: 20140711 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: CAVIUM INTERNATIONAL, CAYMAN ISLANDS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MARVELL INTERNATIONAL LTD.;REEL/FRAME:052918/0001 Effective date: 20191231 |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20200223 |
|
AS | Assignment |
Owner name: MARVELL ASIA PTE, LTD., SINGAPORE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CAVIUM INTERNATIONAL;REEL/FRAME:053475/0001 Effective date: 20191231 |