3. Point OperatorsΒΆ

Consider two images \(f\) and \(g\) defined on the same domain. Then their pixelwise addition is denoted as \(f+g\). Or consider a poitive valued image \(f\) and a the image \(\log(1+f)\) that we got by taking the logarithm of all pixel values in the image.

These two operations are examples of point operators. For every point (pixel) in the image we apply the same operator. More formally we may define. Let \(f:\set D\rightarrow \set R\) be a mapping from domain \(\set D\) to range \(\set R\). A point operator \(\Psi\) transforms image \(f\) into a new image \(g=\Psi f\) as:

\[\forall \v x\in \set D: \quad g(\v x) = \psi( f(\v x) )\]

Where \(\psi\) is a function working on values in the range of \(f\). Note that the range of \(\psi\) might different then its domain. In such cases the resulting image will have a new range. This is the case for instance in case we convert a color image to a grayscale image.

Also note that the formal definition only considers the univariate case (i.e. one image in, and one image out). Point operators are not restricted to that type only, you could easily have operators that take many images as input and even those that produce more then output image.

In this chapter we will consider image arithmetic (adding images, subtracting images etc) and histogram based pointoperations like stretching to use the available range completely.