Psy 221 Project Report
Introduction
Digital cameras use an array of Charge Coupled Devices (CCDs)
to collect information about an image scene. A CCD is essentially a
silicon integrated circuit of the MOS type, comprising of an oxide
(SiO2) covered silicon substrate upon which is formed an array of
closely spaced electrodes. Signal information in each CCD is carried
in the form of electric charges, usually electrons, stored in a
"potential well." Hence, inherently each CCD in the digital camera
can store only one-dimensional information, i.e., the number of
photoelectrons on the CCD created from an image falling on the CCD
array. To obtain full-color images, we need, at each pixel (the
location of each CCD), more than the charge information alone. In
fact, because of the trichromatic nature of the human visual system,
we need at least (and only) three pieces of data, from which we
can deduce the intensity of three independent colors (e.g., red,
green, and blue).
Color encoding in digital cameras relies on the use of color filters,
which are placed somewhere between the incoming light and the CCD
arrays. So, each CCD now records the local intensity information of a
particular color (that of the filter) present in the incoming light.
The trichromatic information at each pixel can be acquired in several
ways.
First, we can obtain full-color information with three exposures,
using a different kind of color filter for each one. This approach
produced very high qualify images, but is slower and cannot be used to
acquire fast-changing images.
Second, we can optically split the exposing light into the three
primary colors, and then use three sets of CCD arrays to acquire the
intensity information for each color. This approach requires only
one exposure, but has some drawbacks. It "wastes" many incoming
photons (absorbed by the color filters) and hence creates problems
when the
scene is not well illuminated or illuminating. More importantly, this
design incurs very high production cost because of the extra optics
and CCD arrays required.
Third, we can use a color filter array (CFA), so that each CCD (or
pixel) is covered by only one kind of filter. Certainly we have only
information of one color at each pixel. But we can make the CFA in
such a way that the missing intensity information at each pixel can be
inferred (to a reasonable degree of accuracy) from the intensity
information around that pixel. Such inference is of course not
perfect, but either is our visual system*s ability to see small
discrepancies. So with some care, we may still be able to produce
high-quality (to our eyes) full-color images.
This third approach is the most common in digital camera design, and
the most commonly used CFA is known as the Bayer pattern, part of
which is as shown here. Notice that there are twice as many green
filters as red or blue ones. The reason for such a design is that the
human visual system is more sensitive to green patterns than blue or
red ones.
To display the acquired image in full color, we need to up-sample the
image, a process that is often referred to as demosaicking or color
interpolation. Two commonly used color interpolation algorithms for
Bayer pattern CFAs are the median method and the bilinear methods.
These two are very easy to implement in digital camera design, and are
very computationally efficient. In a recent paper, Acharya and Tsai
(1999) proposed a new block matching algorithm. The goal of this
paper is to examine this new algorithm and to compare its performance
with the commonly used algorithms.
