NAME¶
i.smap - Performs contextual image classification using sequential
maximum a posteriori (SMAP) estimation.
KEYWORDS¶
imagery, classification, supervised, SMAP
SYNOPSIS¶
i.smap
i.smap help
i.smap [-
mq]
group=
name subgroup=
name
signaturefile=
name output=
name
[
blocksize=
integer] [--
overwrite] [--
verbose]
[--
quiet]
Flags:¶
- -m
-
Use maximum likelihood estimation (instead of smap)
- -q
-
Run quietly
- --overwrite
-
Allow output files to overwrite existing files
- --verbose
-
Verbose module output
- --quiet
-
Quiet module output
Parameters:¶
- group=name
-
Name of input imagery group
- subgroup=name
-
Name of input imagery subgroup
- signaturefile=name
-
Name of file containing signatures
Generated by i.gensigset
- output=name
-
Name for output raster map
- blocksize=integer
-
Size of submatrix to process at one time
Default: 128
DESCRIPTION¶
The
i.smap program is used to segment multispectral images using a
spectral class model known as a Gaussian mixture distribution. Since Gaussian
mixture distributions include conventional multivariate Gaussian
distributions, this program may also be used to segment multispectral images
based on simple spectral mean and covariance parameters.
i.smap has two modes of operation. The first mode is the sequential
maximum a posteriori (SMAP) mode [2]. The SMAP segmentation algorithm attempts
to improve segmentation accuracy by segmenting the image into regions rather
than segmenting each pixel separately (see NOTES).
The second mode is the more conventional maximum likelihood (ML) classification
which classifies each pixel separately, but requires somewhat less
computation. This mode is selected with the
-m flag (see below).
OPTIONS¶
Flags:¶
- -m
-
Use maximum likelihood estimation (instead of smap). Normal operation is to
use SMAP estimation (see NOTES).
- -q
-
Run quietly, without printing messages about program progress. Without this
flag, messages will be printed (to stderr) as the program progresses.
Parameters:¶
- group=name
-
imagery group
The imagery group that defines the image to be classified.
- subgroup=name
-
imagery subgroup
The subgroup within the group specified that specifies the subset of the
band files that are to be used as image data to be classified.
- signaturefile=name
-
imagery signaturefile
The signature file that contains the spectral signatures (i.e., the
statistics) for the classes to be identified in the image. This signature
file is produced by the program i.gensigset (see NOTES).
- blocksize=value
-
size of submatrix to process at one time
default: 128
This option specifies the size of the "window" to be used when
reading the image data.
This program was written to be nice about memory usage without influencing the
resultant classification. This option allows the user to control how much
memory is used. More memory may mean faster (or slower) operation depending on
how much real memory your machine has and how much virtual memory the program
uses.
The size of the submatrix used in segmenting the image has a principle function
of controlling memory usage; however, it also can have a subtle effect on the
quality of the segmentation in the smap mode. The smoothing parameters for the
smap segmentation are estimated separately for each submatrix. Therefore, if
the image has regions with qualitatively different behavior, (e.g., natural
woodlands and man-made agricultural fields) it may be useful to use a
submatrix small enough so that different smoothing parameters may be used for
each distinctive region of the image.
The submatrix size has no effect on the performance of the ML segmentation
method.
- output=name
-
output raster map.
The name of a raster map that will contain the classification results. This
new raster map layer will contain categories that can be related to
landcover categories on the ground.
INTERACTIVE MODE¶
If none of the arguments are specified on the command line,
i.smap will
interactively prompt for the names of the maps and files.
NOTES¶
The SMAP algorithm exploits the fact that nearby pixels in an image are likely
to have the same class. It works by segmenting the image at various scales or
resolutions and using the coarse scale segmentations to guide the finer scale
segmentations. In addition to reducing the number of misclassifications, the
SMAP algorithm generally produces segmentations with larger connected regions
of a fixed class which may be useful in some applications.
The amount of smoothing that is performed in the segmentation is dependent of
the behavior of the data in the image. If the data suggests that the nearby
pixels often change class, then the algorithm will adaptively reduce the
amount of smoothing. This ensures that excessively large regions are not
formed.
The module i.smap does not support MASKed or NULL cells. Therefore it might be
necessary to create a copy of the classification results using e.g. r.mapcalc.
r.mapcalc MASKed_map=classification results
REFERENCES¶
- C. Bouman and M. Shapiro, "Multispectral Image
Segmentation using a Multiscale Image Model", Proc. of IEEE Int'l
Conf. on Acoust., Speech and Sig. Proc., pp. III-565 - III-568, San
Francisco, California, March 23-26, 1992.
- C. Bouman and M. Shapiro 1994, "A Multiscale Random
Field Model for Bayesian Image Segmentation", IEEE Trans. on Image
Processing., 3(2), 162-177" (PDF)
- McCauley, J.D. and B.A. Engel 1995, "Comparison of
Scene Segmentations: SMAP, ECHO and Maximum Likelyhood", IEEE
Trans. on Geoscience and Remote Sensing, 33(6): 1313-1316.
SEE ALSO¶
i.group for creating groups and subgroups
r.mapcalc to copy classification result in order to cut out MASKed
subareas
i.gensigset to generate the signature file required by this program
AUTHORS¶
Charles Bouman, School of Electrical Engineering, Purdue University
Michael Shapiro, U.S.Army Construction Engineering Research Laboratory
Last changed: $Date: 2009-05-31 21:01:01 +0200 (Sun, 31 May 2009) $
Full index
© 2003-2011 GRASS Development Team