Digital cameras capture images by using a single sensor with a color filter array. Thus in the captured image, each pixel contains only one of the three primary colors. This Color Filter Array Interpolation core interpolates the missing color components for every pixel. The Color Filter Array Interpolation core produces the high quality images that the non-real time soft-ware interpolation methods can achieve. Despite of the high quality image, the smaller size logic gates are used than other interpolation methods.
Today, most consumer digital cameras capture an image with a single image sensor chip to minimize cost and size of the camera. Today the most commonly used CFA pattern is Bayer pattern, a schematic of which is shown in Fig. 1. To retain color information, a color filter array (CFA) is placed before the image sensor. As a result, there is only one color (red, green or blue) available at each spatial location. But for viewing, editing and printing, three colors per pixel (red, green, and blue) are necessary. The Color Filter Array Interpolation or Demosaicing refers to the algorithms that allow recreating a three-color per pixel image from a one color per pixel image. The simplest way for demosaicing is the bilinear interpolation. But the interpolated image shows artifacts inherent to demosaicing: blurring and the generation of false color also called color aliasing. Several algorithms have been developed to improve these artifacts. A variety of simple interpolation methods, such as Pixel Replication, Nearest Neighbor Interpolation, Bilinear Interpolation and Bi-cubic Interpolation have been widely used for CFA demosaicing. But these simple algorithms produce low quality images. More complicated algorithms like the edge-directed interpolation have generated better quality image than simple interpolation methods. But these algorithms still generate the artifacts. Some algorithms have been developed to improve these problems. These algorithms often require huge computation power, so it is impossible to be implemented in real time system. Our Color Filter Array Interpolation core produces high quality images that the non-real time software interpolation methods can achieve. Despite of the high quality image, the smaller size logic gates are used than other interpolation method. The Color Filter Array Interpolation core uses 5*5 pixels. A Bayer CFA image consists of 50% green, 25% red, and 25% blue samples. The G pixels interpolation is more important in generating high quality images than the others signal. High quality R or B signals are interpolated using these G signals. More computations are used to interpolate the G signals than R or B signals. Prior to interpolation of R or B, interpolation of G is performed first. Interpolation of the G signal is performed by considering the signal level of G-R or G-B and the change of signal edges. And G-R or G-B signals are interpolated by a simple operation. A total of seven line memories are used to perform the Color Filter Array Interpolation. Although relatively a small number of line memories are used, interpolated image of high quality is achieved.