This post is continuing from Biomedical Image Processing – III. Enjoy 🙂
Basic Image Modification
While image processing operations can be performed in hardware (e.g., in cases where speed is paramount), many image processing operations are performed in software. This section discusses some of the basic processing operations performed on different types of images, including image arithmetic, point operations, and geometric operations. Many of these operations are driven by the need to isolate regions of an image or to improve the appearance of an image.
Like more advanced image modification techniques, these basic operations are rarely used alone. Rather, the individual operations are cascaded together to produce an overall desired effect.
Image arithmetic represents a broad category of algorithms that use pixel-based processes for combining or extracting image information. For example, if images P1 and P2 contain pixels that are referenced by a row integer i and column integer j, Table 1
illustrates some arithmetic operations that can be performed on these images. In the table, the symbol C represents a constant value by which an image can be adjusted or scaled. Note that both images must be the same size for these operations to apply. These operations are primarily used as sub-steps in more complex image processing operations, rather than being useful on their own.
Table 1. Expressions for some common pixel-based image arithmetic algorithms.
Figure 13. Example of an image that has been brightened by simple pixel-based addition
Boolean operations are pixel-based, logical operations performed on sets of images (see Figure 14). Note that these operations are usually applied to two-color images (the pixel values are either “0” or “1”). A common example of a boolean operation is the use of NAND to identify objects that have moved between images (AND will yield the intersection of two images, denoting the stationary objects).
Figure 14. Boolean operations performed on images
Point operations, like image arithmetic, are pixel-based. However, these operations perform a mapping between image pixel intensity values and their representations on the new image. The most common point operations are thresholding, contrast stretching, and histogram equalization.
When an algorithm thresholds an image, the pixels whose intensities are above and below the threshold are assigned binary values. This technique is often used as an image preprocessing step before the image is passed to other processing algorithms. An example of thresholding is shown in Figure 15. In this figure, a slice of brain tissue (containing nervous cells and glia cells) is thresholded and then connected-component labeled so that the number of cells in the image can be counted.
Figure 15. Illustration of how thresholding and connected-component labeling can be used for cell counting applications [http://www.dai.ed.ac.uk/HIPR2/threshld.htm].
Histogram equalization reassigns the intensity values of pixels in the input image so that the output image contains a uniform distribution of intensities (i.e., a flat histogram). This is illustrated in Figure 16 (compare this figure to the image/histogram in Figure 10).
Figure 16. An example of histogram equalization for magnifying the level of detail inportions of a gray-scale image.
The next post, Biomedical Image Processing – V, will discuss contrast stretching, Image Denoising and Enhancement, and digital filters for noise reduction. References for this post are listed in Biomedical Image Processing – I.