i.maxlik(1)

NAME
i.maxlik - Classifies the cell spectral reflectances in imagery data.
Classification is based on the spectral signature information generated by either i.cluster, g.gui.iclass, or i.gensig.

KEYWORDS
imagery, classification, Maximum Likelihood Classification, MLC

SYNOPSIS
i.maxlik
i.maxlik --help
i.maxlik group=name subgroup=name signaturefile=name output=name [reject=name] [--overwrite] [--help] [--verbose] [--quiet] [--ui]

  Flags:

--overwrite
    Allow output files to overwrite existing files

--help
    Print usage summary

--verbose
    Verbose module output

--quiet
    Quiet module output

--ui
    Force launching GUI dialog

  Parameters:

group=name [required]
    Name of input imagery group

subgroup=name [required]
    Name of input imagery subgroup

signaturefile=name [required]
    Name of input file containing signatures
    Generated by either i.cluster, g.gui.iclass, or i.gensig

output=name [required]
    Name for output raster map holding classification results

reject=name
    Name for output raster map holding reject threshold results

DESCRIPTION
i.maxlik is a maximum-likelihood discriminant analysis classifier. It can be used to perform the second step in either an unsupervised or a supervised image classification.

Either image classification methods are performed in two steps. The first step in an unsupervised image classification is performed by i.cluster; the first step in a supervised classification is executed by the GRASS program g.gui.iclass (or by providing any other raster map with already existing training areas). In both cases, the second step in the image classification procedure is performed by i.maxlik.

In an unsupervised classification, the maximum-likelihood classifier uses the cluster means and covariance matrices from the i.cluster signature file to determine to which category (spectral class) each cell in the image has the highest probability of belonging. In a supervised image classification, the maximum-likelihood classifier uses the region means and covariance matrices from the spectral signature file generated by g.gui.iclass, based on regions (groups of image pixels) chosen by the user, to determine to which category each cell in the image has the highest probability of belonging.

In either case, the raster map output by i.maxlik is a classified image in which each cell has been assigned to a spectral class (i.e., a category). The spectral classes (categories) can be related to specific land cover types on the ground.

NOTES
The maximum-likelihood classifier assumes that the spectral signatures for each class (category) in each band file are normally distributed (i.e., Gaussian in nature). Algorithms, such as i.cluster, g.gui.iclass, or i.gensig, however, can create signatures that are not valid distributed (more likely with g.gui.iclass). If this occurs, i.maxlik will reject them and display a warning message.

The signature file (signaturefile) contains the cluster and covariance matrices that were calculated by the GRASS program i.cluster (or the region means and covariance matrices generated by g.gui.iclass, if the user runs a supervised classification). These spectral signatures are what determine the categories (classes) to which image pixels will be assigned during the classification process.

The optional name of a reject raster map holds the reject threshold results. This is the result of a chi square test on each discriminant result at various threshold levels of confidence to determine at what confidence level each cell classified (categorized). It is the reject threshold map layer, and contains the index to one calculated confidence level for each classified cell in the classified image. 16 confidence intervals are predefined, and the reject map is to be interpreted as 1 = keep and 16 = reject. One of the possible uses for this map layer is as a mask, to identify cells in the classified image that have a low probability (high reject index) of being assigned to the correct class.

EXAMPLE
Second part of the unsupervised classification of a LANDSAT subscene (VIZ, NIR, MIR channels) in North Carolina (see i.cluster manual page for the first part of the example):

# using here the signaturefile created by i.cluster
i.maxlik group=lsat7_2002 subgroup=res_30m \
  signaturefile=cluster_lsat2002 \
  output=lsat7_2002_cluster_classes reject=lsat7_2002_cluster_reject
# visually check result
d.mon wx0
d.rast.leg lsat7_2002_cluster_classes
d.rast.leg lsat7_2002_cluster_reject
# see how many pixels were rejected at given levels
r.report lsat7_2002_cluster_reject units=k,p
# optionally, filter out pixels with high level of rejection
# here we remove pixels of at least 90% of rejection probability, i.e. categories 12-16
r.mapcalc "lsat7_2002_cluster_classes_filtered = \
           if(lsat7_2002_cluster_reject <= 12, lsat7_2002_cluster_classes, null())"

RGB composite of input data

Output raster map with pixels classified (10 classes)

Output raster map with rejection probability values (pixel classification confidence levels)

SEE ALSO
Image processing and Image classification wiki pages and for historical reference also the GRASS GIS 4 Image Processing manual

g.gui.iclass, i.cluster, i.gensig, i.group, i.segment, i.smap, r.kappa

AUTHORS
Michael Shapiro, U.S.Army Construction Engineering Research Laboratory
Tao Wen, University of Illinois at Urbana-Champaign, Illinois
Semantic label support: Maris Nartiss, University of Latvia

SOURCE CODE

Available at: i.maxlik source code (history)

Latest change: Monday Feb 09 18:47:00 2026 in commit: 8cec756bc3c21c1086ba7c09dfda94b6a0e82f04

Main index | Imagery index | Topics index | Keywords index | Graphical index | Full index

© 2003-2026 GRASS Development Team, GRASS 8.5.1dev Reference Manual