An Efficient Compression Scheme for Colour Filter Array Images Using Estimated Colour Differences
Most consumer digital cameras capture colour images using a single light sensor and a colour filter array (CFA). The CFA allows only one colour of light (red, green, or blue) to reach the sensor at each pixel location. This results in a mosaic image being captured, where either a red, green or blue sample is captured at each location. The two missing colours must be interpolated from the surrounding samples in a process called demosaicking. The conventional approach to performing compression in these cameras is to first perform demosaicking and then compress the resulting full colour image with standard methods. However, recent work has attempted to compress the raw data captured by the sensor, with demosaicking being performed later. One challenge with this method (compression before demosaicking) is exploiting the correlation between the red, green and blue colour planes. Existing methods have used a modified YCbCr colour space conversion which is applied to groups of RGB samples captured at adjacent pixel locations. This results in poor performance around edges, where there is much lower correlation between the RGB samples. In this paper, we propose a new method of exploiting correlation between RGB samples when compressing CFA images. We use a 2D 5times5 linear filter to estimate the green value at each location where a red or blue sample is captured. We then compress the captured green samples, and two "chrominance" planes, which are obtained by taking the difference between the captured red and blue samples and the estimated green value at the same location. This results in much smoother chrominance signals than the modified YCbCr conversion used in previous work. Simulation results show that for different images, the proposed method results in bit rate reductions between 12-25% relative to the previous modified YCbCr conversion when compressing CFA images with JPEG.