Image Processing

In the field of image processing we are concerned with:

  • images (the types of images, discretization of images, interpolation of images, color images),

  • processing images resulting in new images (e.g. for geometrical transformations—like image warping—, enhancement, locating points of interest etc) and

  • rendering images on the screen or on paper.

In image processing we stay at the level of images without interpreting the image in semantic terms. In image processing we are concerned with the syntax of visual information (images and video).

An image operator \(\Psi\) transforms an input \(f\) into output image \(g\), i.e. \(g = \Psi f\). The image processing operators can be classified to belong to one of 4 categories:

Point Operators

A point operator acts on individual pixels, i.e. \(g(\v x)=\Psi(f(\v x))\). A simple example is to add a constant to all pixels in an image. Or to add two images: \(g(\v x) = f_1(\v x)+f_2(\v x)\). For such an arithmetic operator we simply write: \(g = f_1 + f_2\).

Geometrical Operators

Whereas a point operator changes the value of all pixels a geometrical operator doesn’t change the value but instead it ‘moves’ a pixel to a new position.

Local Operators

A local operator calculates the pixel value \(g(\v x)\) based not only on the value at the same position in the input image, i.e. \(f(\v x)\), but it uses several values in nearby points \(f(\v x+\v y)\). Local operators are at the heart of almost all image processing tasks.

The ‘rediscovery’ of local operators for neural nets used to process images lead to convolutional neural network that nowadays are state of the art in image feature extraction for learning.

Global Operators

A global operator (potentially) needs al pixel values in the input image to calculate the value for just one pixel in the output image.