BINNING COMPENSATION FILTERING TECHNIQUES FOR IMAGE SIGNAL PROCESSING
First Claim
1. A method for processing raw image data comprising:
- using a binning compensation filter of an image signal processor;
using a position value stored by a position register to determine a plurality of output pixel locations, wherein each of the plurality of output pixel locations is determined by incrementing the position value using a step value;
for each output pixel location corresponding to a current position value stored in the position register;
using the current position value to select a center input pixel from the raw image data and to select an index value, wherein the index value represents a fractional position of a current output pixel at the current position value between two input pixels of the same color, and wherein the raw image data comprises multiple color components in a single plane and corresponds to an image scene captured by a digital image sensor;
selecting a set of input pixels adjacent to the center input pixel, wherein the adjacent input pixels and the center input pixel form a set of source input pixels;
selecting a set of filtering coefficients from a filter coefficient lookup table using the index value;
filtering the set of source input pixels using scaling logic to apply a respective one of the set of filtering coefficients to each of the set of source input pixels to determine an output value for the current output pixel at the current position value; and
processing the output pixels provided by the binning compensation filter to display a visual representation of the image scene on a display device.
1 Assignment
0 Petitions
Accused Products
Abstract
Various techniques for applying binning compensation filtering to binned raw image data acquired by an image sensor are provided. In one embodiment, a binning compensation filter (BCF) includes separate digital differential analyzers (DDA) for vertical and horizontal scaling. A current position of an output pixel is determined by incrementing the DDA based upon a step size. Using the known output pixel position, a center source input pixel and an index corresponding to the between-pixel fractional position of the output pixel position relative to the input pixels may be selected for filtering. Using the selected center input pixel, one or more same-colored neighboring source pixels may be selected. The number of selected source pixels may depend on the number of taps used by the scaling logic, and may depend on whether horizontal or vertical scaling is being applied. Using the selected index, a set of filter coefficients may be selected from a filter coefficient lookup table, applied to the selected source pixels, and the results may be summed to determine a value for an output pixel having a position corresponding to the current position of the DDA. This process may be repeated for each input pixel and may be performed in both vertical and horizontal directions, thus ultimately producing a re-sampled set of image data that is spatially evenly distributed.
-
Citations
30 Claims
-
1. A method for processing raw image data comprising:
-
using a binning compensation filter of an image signal processor; using a position value stored by a position register to determine a plurality of output pixel locations, wherein each of the plurality of output pixel locations is determined by incrementing the position value using a step value; for each output pixel location corresponding to a current position value stored in the position register; using the current position value to select a center input pixel from the raw image data and to select an index value, wherein the index value represents a fractional position of a current output pixel at the current position value between two input pixels of the same color, and wherein the raw image data comprises multiple color components in a single plane and corresponds to an image scene captured by a digital image sensor; selecting a set of input pixels adjacent to the center input pixel, wherein the adjacent input pixels and the center input pixel form a set of source input pixels; selecting a set of filtering coefficients from a filter coefficient lookup table using the index value; filtering the set of source input pixels using scaling logic to apply a respective one of the set of filtering coefficients to each of the set of source input pixels to determine an output value for the current output pixel at the current position value; and processing the output pixels provided by the binning compensation filter to display a visual representation of the image scene on a display device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An image signal processing system comprising:
a binning compensation filter comprising; an input configured to receive raw image data acquired by a digital image sensor; a digital differential analyzer configured to indicate a position of a current output pixel based upon a step size; binning compensation logic configured to select a center input pixel and an index value using the position of the current output pixel; and scaling logic configured to apply multi-tap polyphase filtering to a set of source input pixels selected from the raw image data based upon a set of filtering coefficients selected using the index value, and to determine an output value for the current output pixel based upon the filtering, wherein the center input pixel is positioned at the center of the source input pixels. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
17. One or more tangible computer-readable storage media having instructions encoded thereon for execution by a processor, the instructions comprising:
-
code to determine a position of a current output pixel based upon a current position value stored in a digital differential analyzer; code to select a center input pixel from a set of raw image data received by a binning compensation filter using the position of the current output pixel; code to select an index value using the position of the current output pixel relative to two input pixels of the same color from the set of raw image data, the position of the current output pixel being located spatially between the positions of the two input pixels; code to select a set of input pixels having the same color and being adjacent to the selected center input pixel; code to select a set of filtering coefficients using the index value; and code to apply scaling to each of the center input pixel and the adjacent input pixels to determine an output value for the position of the current output pixel by applying a respective one of the filtering coefficients to each of the center input pixel and the adjacent input pixels. - View Dependent Claims (18, 19, 20, 21)
-
-
22. An electronic device, comprising:
-
at least one digital image sensor; an interface configured to communicate with the at least one digital image sensor; a memory device; a display device configured to display a visual representation of one or more image scenes corresponding to raw image data acquired by the at least one digital image sensor; and an imaging signal processing sub-system comprising; a binning compensation filter comprising; a digital differential analyzer configured to indicate a position of a current output pixel based upon a step size; an input configured to receive raw image data acquired by a digital image sensor; binning compensation logic configured to select a center input pixel and an index value using the position of the current output pixel; and scaling logic configured to apply multi-tap polyphase filtering to a set of source input pixels comprising an even number of adjacent input pixels distributed about the center input pixel and having the same color as the center input pixel using a set of filtering coefficients selected using the index value, and to determine an output value for the current output pixel based upon the filtering. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30)
-
Specification