Page 110 -
P. 110
3.1 Point operators 89
Now that we have seen how images are formed through the interaction of 3D scene elements,
lighting, and camera optics and sensors, let us look at the first stage in most computer vision
applications, namely the use of image processing to preprocess the image and convert it into
a form suitable for further analysis. Examples of such operations include exposure correction
and color balancing, the reduction of image noise, increasing sharpness, or straightening the
image by rotating it (Figure 3.1). While some may consider image processing to be outside
the purview of computer vision, most computer vision applications, such as computational
photography and even recognition, require care in designing the image processing stages in
order to achieve acceptable results.
In this chapter, we review standard image processing operators that map pixel values from
one image to another. Image processing is often taught in electrical engineering departments
as a follow-on course to an introductory course in signal processing (Oppenheim and Schafer
1996; Oppenheim, Schafer, and Buck 1999). There are several popular textbooks for image
processing (Crane 1997; Gomes and Velho 1997; J¨ ahne 1997; Pratt 2007; Russ 2007; Burger
and Burge 2008; Gonzales and Woods 2008).
We begin this chapter with the simplest kind of image transforms, namely those that
manipulate each pixel independently of its neighbors (Section 3.1). Such transforms are of-
ten called point operators or point processes. Next, we examine neighborhood (area-based)
operators, where each new pixel’s value depends on a small number of neighboring input
values (Sections 3.2 and 3.3). A convenient tool to analyze (and sometimes accelerate) such
neighborhood operations is the Fourier Transform, which we cover in Section 3.4. Neighbor-
hood operators can be cascaded to form image pyramids and wavelets, which are useful for
analyzing images at a variety of resolutions (scales) and for accelerating certain operations
(Section 3.5). Another important class of global operators are geometric transformations,
such as rotations, shears, and perspective deformations (Section 3.6). Finally, we introduce
global optimization approaches to image processing, which involve the minimization of an
energy functional or, equivalently, optimal estimation using Bayesian Markov random field
models (Section 3.7).
3.1 Point operators
The simplest kinds of image processing transforms are point operators, where each output
pixel’s value depends on only the corresponding input pixel value (plus, potentially, some
globally collected information or parameters). Examples of such operators include brightness
and contrast adjustments (Figure 3.2) as well as color correction and transformations. In the
image processing literature, such operations are also known as point processes (Crane 1997).
We begin this section with a quick review of simple point operators such as brightness
scaling and image addition. Next, we discuss how colors in images can be manipulated.
We then present image compositing and matting operations, which play an important role
in computational photography (Chapter 10) and computer graphics applications. Finally, we
describe the more global process of histogram equalization. We close with an example appli-
cation that manipulates tonal values (exposure and contrast) to improve image appearance.