HISTEX

Histogram-based texture analysis


EnvironmentsPYTHON :: EASI :: MODELER
Batch ModeYes
Quick linksDescription :: Parameters :: Parameter descriptions :: Details :: Algorithm :: References :: Related

Back to top

Description


HISTEX creates a set of texture images from a single channel in an input image. The measures are based on histogram statistics in a window surrounding each pixel. If necessary, you can use the extracted texture measures as input features with CATALYST Professional classification algorithms.
Back to top

Parameters


Name Type Length Value range
Input: Input channel * Raster port 1 - 1  
Mean Boolean 0 - 1 ON, OFF
Default: ON
Median Boolean 0 - 1 ON, OFF
Default: OFF
Mean Deviation from Mean Boolean 0 - 1 ON, OFF
Default: OFF
Mean Deviation from Median Boolean 0 - 1 ON, OFF
Default: OFF
Mean Euclidian Distance Boolean 0 - 1 ON, OFF
Default: OFF
Variance Boolean 0 - 1 ON, OFF
Default: OFF
Coefficient of Variation Boolean 0 - 1 ON, OFF
Default: OFF
Skewness Boolean 0 - 1 ON, OFF
Default: OFF
Kurtosis Boolean 0 - 1 ON, OFF
Default: OFF
Energy Boolean 0 - 1 ON, OFF
Default: OFF
Entropy Boolean 0 - 1 ON, OFF
Default: OFF
Weighted-rank Fill Ratio Boolean 0 - 1 ON, OFF
Default: OFF
Output: Texture-measure channels * Raster port 1 - 12  
FiltPixels Integer 0 - 2 3 - 101
Default: 3
Vertical window size (pixels) Integer 0 - 2 3 - 101
Default: 3
Mask: Area mask Bitmap port 0 - 4  
FillPct Float 0 - 1 100
Default: 5

* Required parameter
Back to top

Parameter descriptions

Input: Input channel

The channel in the input file to analyze.

Mean

To calculate the arithmetic mean of all values in the texture window, make sure this check box is selected.

For more information about the measure, see Algorithm.

Median

To calculate the median value, select this check box.

The median is middle value in the texture window. Half the values in the window are less than or equal to it, and half are greater than or equal to it. With an odd number of values, the median is determined uniquely, although other values may be equal to it.

For more information about the measure, see Algorithm.

Mean Deviation from Mean

To calculate the mean deviation from the mean value, select this check box.

The mean deviation from mean is the arithmetic mean of absolute differences between pixel values in the window and the mean. This is a measure of dispersion of values in the window.

For more information about the measure, see Algorithm.

Mean Deviation from Median

To calculate the mean deviation from the median value, select this check box.

This is an arithmetic mean of absolute differences between pixel values in the window and the median. It is also a measure of dispersion of values in the window: it is less than or equal to Mean Deviation from Mean.

For more information about the measure, see Algorithm.

Mean Euclidian Distance

To calculate the mean Euclidean distance from the central pixel value, select this check box.

This is a measure of the scatter of pixel values in the texture window about the central pixel value.

For more information about the measure, see Algorithm.

Variance

To calculate an unbiased estimate of sample variance of values in the texture window, select this check box.

For more information about the measure, see Algorithm.

Coefficient of Variation

To calculate the normalized coefficient of variation, select this check box.

This is a measure of variability of window values normalized by their mean. This measure is well suited to analyzing synthetic-aperture radar (SAR) images, because it models statistical properties of SAR speckle.

For more information about the measure, see Algorithm.

Skewness

To calculate the skewness value, select this check box.

Skewness describes the degree of asymmetry of a distribution. If the distribution has a longer-left tail, the skewness is negative. Symmetric distributions, including Gaussian and constant, have skewness equal to zero (0); otherwise, the skewness is positive.

For more information about the measure, see Algorithm.

Kurtosis

To calculate the kurtosis value, select this check box.

Kurtosis describes the degree of peakedness of a distribution. If the distribution has a high-and-narrow peak, its kurtosis is greater than three (3). Gaussian distribution has kurtosis equal to three. If the peak is broad and flat, the kurtosis is less than three. Constant-valued windows have kurtosis equal to zero.

For more information about the measure, see Algorithm.

Energy

To calculate the energy value, select this check box.

This measure represents the total magnitude of the signal in the window. Due to its large value, this measure may be not suitable for SAR images.

For more information about the measure, see Algorithm.

Entropy

To calculate the entropy value, select this check box.

Entropy is a measure of disorder of the values within the window. It is large for windows with Gaussian (highly disordered) distribution of values, and small for windows with values concentrated tightly around one or several values.

For more information about the measure, see Algorithm.

Weighted-rank Fill Ratio

To calculate the weighted-rank fill ratio, select this check box.

This measure indicates how much the brightest pixels in the window dominate other pixels. It may be a useful measure to detect forward or layover slopes in SAR images.

For more information about the measure, see Algorithm.

Output: Texture-measure channels

The output channels to which to write the texture measures. Output channels must be 32-bit real.

The total number of output channels must equal the number of texture measures you specify.

Do not use the input channel as an output channel.

Do not specify duplicate channels.

FiltPixels

The width of the window, in pixels (x), to use in extracting the texture measures for each input pixel.

The window size must be odd so that the pixel to process is centered in the window. The value must be an odd integer between 3 and 101. The default value is 3.

Vertical window size (pixels)

The height of the window, in lines (y), to use in extracting the texture measures for each input pixel.

The window size must be odd so that the pixel being processed is centered in the window. The value must be an odd integer between 3 and 101. The default value is 3.

Mask: Area mask

The window or bitmap that defines the area of the input raster to process.

If you do not specify a value, the entire channel is processed.

FillPct

The percentage of brightest pixels to compute the weighted-rank fill-ratio measure. The value must be greater than zero (0) and less than or equal to 100.

The percentage value specified is converted to the number of pixel values (depending on the size of window), rounded to the nearest-integer value.

Back to top

Details

HISTEX creates a set of texture images from a single channel in an input image. The measures are based on histogram statistics in a window surrounding each pixel. If necessary, you can use the extracted texture measures as input features with CATALYST Professional classification algorithms.

Texture is an important characteristic used to identify objects or regions of interest in an image. Unlike spectral features, which describe the average tonal variation in the various bands of an image, textural features contain information about the spatial distribution of tonal variations within a band.

It is essential that filtering has not been applied previously on the input channel, because filtering smoothes out an image, and eliminates or alters its textural properties.

For each selected texture measure, HISTEX creates an image in which gray levels represent the value of the measure in the input image. The textural measures are derived from a histogram of pixel values in a rectangular window you specify. The window slides over the input image, and computed texture measures are assigned to the central pixel of the consecutive positions of the window.

The output images contain the raw texture measures, which may vary in ranges of values. To avoid loss of important information, always save in 32-bit real channels. After assessing the distribution of texture-measure values by running the HIS algorithm, you can scale the images to the range you want by running the SCALE algorithm.

With the Area mask parameter, you specify the area within the input channel to process.

Only the pixels under the bitmap are processed. The rest of the image remains unchanged.

If you do not specify a value, the entire channel is processed. If the specified bitmap is empty (all pixels set to zero), a warning is displayed and processing does not occur.

HISTEX cannot process pixels on or near the edges of the image, because all the required pixels are not within it. Therefore, when an entire image is processed with a rectangular window that is x-pixels by y-lines, the first and last (X+1)/2 pixels per line will be the same and the first and last (Y+1)/2 lines in the output image will be the same. Each will contain a replicated value of the closest processed pixel. Avoid these regions when selecting training data for supervised classification. If a partial image is processed, the input image buffers are extended towards the margins as far as possible, so that all pixels in the selected area receive computed textures; however, pixels closer than a half-window to the image edge will contain replicated values.

The texture measures extracted by HISTEX are based on statistics of pixel values in the window. They complement measures extracted by running the TEX algorithm, based on a gray-level co-occurrence matrix (GLCM), and with the HISTEX algorithm, based on the histogram of pixel values in a window. To conduct additional analysis, such as standard segmentation and classification of the image, you can combine the three types of measures.

Back to top

Algorithm

In the description of images, pixel color and brightness are parameters used commonly. A parameter used less often is the texture (graininess). As opposed to color and brightness, which are associated with one pixel, texture describes relationships between values of different pixels. Textures can be derived from global statistics of pixel values in a window, or from statistics of differences between pixel values.

HISTEX derives the measures derived from global statistics or a histogram of pixel values. The TEX algorithm derives measures from the statistics of differences or a global co-occurrence matrix.

Most of the texture measures HISTEX computes are based on the paper by Dekker cited in References.

The measures are extracted in a window with pixels (K) and lines (L), sliding over successive pixels of the image.

The supported texture measures are defined as follows:
The supported measures are as follows:

The preceding textural measures describe general characteristics of pixel values in the window. Each measure by itself contains little specific information. When combined with other information, however, the results of classification or segmentation of the underlying image may be improved. If necessary, you can combine these textural measures with those extracted by running the TEX algorithm. The best and most effective combination depends on the sensor type (optical, SAR) and the land-cover type. Some experimentation may be required to produce satisfactory results.

Back to top

References

Dekker, R.J. (2003). Texture Analysis and Classification of ERS SAR Images for Map Updating of Urban Areas in The Nederlands. IEEE Trans. Geosci. Remote Sensing, Vol. 41, No. 9, 1950-1958.

Beyer, W.H., editor (1984). CRC Standard Mathematical Tables, 27th Edition. CRC Press, Inc. Boca Raton, Florida.

© PCI Geomatics Enterprises, Inc.®, 2026. All rights reserved.