6.7 Image Stretching, Normalization, Equalization, Histogram Matching, and Dodging

The color and contrast of images can be enhanced to improve their visual quality. The SDO_GEOR_IP package (“IP” for image processing) provides a set of subprograms for image enhancement, including performing image stretching, image normalization, image equalization, histogram matching, and image dodging.

Linear stretching and piecewise stretching can stretch the image cell values linearly for all cells values based on the minimum and maximum cell values or at specified value range, to achieve better color and contrast. To perform image stretching, you can use the following procedures:

  • SDO_GEOR_IP.stretch stretches GeoRaster objects in any supported cell depth (1BIT to 64BIT_REAL) to cell depth of 8BIT_U for display purposes.

  • SDO_GEOR_IP.piecewiseStretch stretches GeoRaster objects of any supported cell depth to the GeoRaster objects in higher or lower cell depth, not limited to 8BIT_U.

Image normalization linearly stretches the image based on the statistics (mean and standard deviation) of the image cell values. To perform image normalization, use the SDO_GEOR_IP.normalize.

Image equalization enhances image contrast by equalizaing its histogram. To perform equalization, use the SDO_GEOR_IP.equalize procedure.

Image histogram matching stretches the image to match the specified histogram or the histogram of a reference image. To perform image histogram matching, use the SDO_GEOR_IP.histogramMatch procedure.

Image dodging balances image color by stretching the contrast of the image locally instead of globally. To perform image dodging, use the SDO_GEOR_IP.dodge procedure.