Provided by: grass-doc_6.4.3-3_all 

NAME
r.thin - Thins non-zero cells that denote linear features in a raster map.
KEYWORDS
raster, thin
SYNOPSIS
r.thin
r.thin help
r.thin input=name output=name [iterations=integer] [--overwrite] [--verbose] [--quiet]
Flags:
--overwrite
Allow output files to overwrite existing files
--verbose
Verbose module output
--quiet
Quiet module output
Parameters:
input=name
Name of input raster map
output=name
Name for output raster map
iterations=integer
Maximal number of iterations
Default: 200
DESCRIPTION
r.thin scans the named input raster map layer and thins non-zero cells that denote linear features into
linear features having a single cell width.
r.thin will thin only the non-zero cells of the named input raster map layer within the current
geographic region settings. The cell width of the thinned output raster map layer will be equal to the
cell resolution of the currently set geographic region. All of the thinned linear features will have the
width of a single cell.
r.thin will create a new output raster data file containing the thinned linear features. r.thin assumes
that linear features are encoded with positive values on a background of 0's in the input raster data
file.
NOTE
r.thin only creates raster map layers. You will need to run r.to.vect on the resultant raster map to
create a vector (v.digit) map layer.
r.thin may create small spurs or "dangling lines" during the thinning process. These spurs may be
removed (after creating a vector map layer) by v.clean.
r.thin creates a 0/1 output map.
NOTE
This code implements the thinning algorithm described in "Analysis of Thinning Algorithms Using
Mathematical Morphology" by Ben-Kwei Jang and Ronlad T. Chin in Transactions on Pattern Analysis and
Machine Intelligence, vol. 12, No. 6, June 1990. The definition Jang and Chin give of the thinning
process is "successive removal of outer layers of pixels from an object while retaining any pixels whose
removal would alter the connectivity or shorten the legs of the sceleton."
The sceleton is finally thinned when the thinning process converges; i.e., "no further pixels can be
removed without altering the connectivity or shortening the sceleton legs" (p. 541). The authors prove
that the thinning process described always converges and produces one-pixel thick sceletons. The number
of iterations depends on the original thickness of the object. Each iteration peels off the outside
pixels from the object. Therefore, if the object is <= n pixels thick, the algorithm should converge in
<= iterations.
SEE ALSO
g.region, r.to.vect, v.clean, v.digit, v.build
AUTHOR
Olga Waupotitsch, U.S.Army Construction Engineering Research Laboratory
The code for finding the bounding box as well as input/output code was written by Mike Baba (DBA Systems,
1990) and Jean Ezell (USACERL, 1988).
Last changed: $Date: 2008-05-16 12:09:06 -0700 (Fri, 16 May 2008) $
Full index
© 2003-2013 GRASS Development Team
GRASS 6.4.3 r.thin(1grass)