Patent ID: 6791609
Filing Date: 2004-09-14
Classification: C01B,G06T,H04N

Abstract:
A method of interpolation for a Bayer color-filtered array, comprising the steps of:(a) provide a Bayer color-filtered array of pixel values with red pixel values R(j,k) for the pixels located at the jth row and kth column when j and k are even integers, blue pixel values B(j,k) for pixels located at jth row and kth column when j and k are odd integers, and green pixel values G(j,k) for the pixels located at the jth row and kth column when one of j and k is an even integer and the other an odd integer; (b) when j is even horizontally interpolate rows of pixel values to yield rows of red values R(j,k) and green values G(j,k) for all k; (c) when j is odd horizontally interpolate rows of pixel values to yield green values G(j,k) and blue values B(j,k) for all k; (d) when j is an even integer for each k vertically interpolate the horizontal interpolated red rows from step (b) to yield the red values R(jâˆ’1, k); (e) when j is an odd integer for each k vertically interpolate the horizontal interpolated blue from step (c) to yield the blue values B(jâˆ’1, k); (f) vertically filter the horizontal interpolated green pixel rows from step (c) to yield filtered green output values Gâ€³(j,k); (g) define the difference values D(j,k) between the green values G(j,k) and the filtered green values Gâ€³(j,k); (h) when j is even for each k subtract D(j,k) from R(j,k) to yield red output value Râ€³(j,k) (i) when j is odd for each k add D(j,k) to R(j,k) to yield red output values Râ€³(j,k); (j) when j is even for each k add D(j,k) to the blue values B(j,k) to yield blue output values Bâ€³(j,k); and (k) when j is odd for each k subtract D(j,k) from B(j,k) to yield blue output values Bâ€³(j,k); (l) wherein Gâ€³(j,k), Râ€³(j,k), Bâ€³(j,k) form an output image.