NAME¶
r.to.vect - Converts a raster map into a vector map.
KEYWORDS¶
raster, conversion, vectorization
SYNOPSIS¶
r.to.vect
r.to.vect help
r.to.vect [-
svzbq]
input=
name
output=
name feature=
string [--
overwrite]
[--
verbose] [--
quiet]
Flags:¶
- -s
-
Smooth corners of area features
- -v
-
Use raster values as categories instead of unique sequence (CELL only)
- -z
-
Write raster values as z coordinate. Table is not created. Currently
supported only for points.
- -b
-
Do not build vector topology (use with care for massive point export)
- -q
-
Quiet - Do not show progress
- --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 vector map
- feature=string
-
Feature type
Options: point,line,area
Default: line
DESCRIPTION¶
r.to.vect scans the named
input raster map layer, extracts points,
lines or area edge features from it, converts data to GRASS vector format.
Point conversion¶
The
r.to.vect program extracts data from a GRASS raster map layer and
stores output in a new GRASS
vector file.
Line conversion¶
r.to.vect assumes that the
input map has been thinned using
r.thin.
r.to.vect extracts vectors (aka, "arcs") from a raster map.
These arcs may represent linear features (like roads or streams), or may
represent area edge features (like political boundaries, or soil mapping
units).
r.thin and
r.to.vect may create excessive nodes at every junction,
and may create small spurs or "dangling lines" during the thinning
and vectorization process. These excessive nodes and spurs may be removed
using
v.clean.
Area conversion¶
r.to.vect first traces the perimeter of each unique area in the raster
map layer and creates vector data to represent it. The cell category values
for the raster map layer will be used to create attribute information for the
resultant vector area edge data.
A true vector tracing of the area edges might appear blocky, since the vectors
outline the edges of raster data that are stored in rectangular cells. To
produce a better-looking vector map,
r.to.vect smoothes the corners of
the vector data as they are being extracted. At each change in direction
(i.e., each corner), the two midpoints of the corner cell (half the cell's
height and width) are taken, and the line segment connecting them is used to
outline this corner in the resultant vector map. (The cell's cornermost node
is ignored.) Because vectors are smoothed by this program, the resulting
vector map will not be "true" to the raster map from which it was
created. The user should check the resolution of the geographic region (and
the original data) to estimate the possible error introduced by smoothing.
r.to.vect extracts only area edges from the named raster input file. If
the raster map contains other data (i.e., line edges, or point data) the
output may be wrong.
EXAMPLES¶
The examples are based on the North Carolina sample dataset:
Conversion of raster points to vector points:
Random sampling of points:
g.region rast=elevation -p
# random sampling of points (note that r.random also writes vector points)
r.random elevation raster_output=elevrand1000 n=1000
r.to.vect input=elevrand1000 output=elevrand1000 feature=point
# univariate statistics of sample points
v.univar elevrand1000 column=value type=point
# compare to univariate statistics on original full raster map
r.univar elevation
Conversion of raster lines to vector lines:
Vectorization of streams in watershed basins map:
g.region rast=elevation -p
r.watershed elev=elevation stream=elev.streams thresh=50000
r.to.vect -s input=elev.streams output=elev_streams feature=line
# drop "label" column which is superfluous in this example
v.db.dropcol map=elev_streams column=label
v.db.renamecol map=elev_streams column=value,basin_id
# report length per basin ID
v.report map=elev_streams option=length units=meters
Conversion of raster polygons to vector polygons:
Vectorization of simplified landuse class map:
g.region rast=landclass96 -p
# we smooth corners of area features
r.to.vect -s input=landclass96 output=my_landclass96 feature=area
v.colors my_landclass96 color=random
# show colorized vector map
d.mon x0
d.vect my_landclass96 -a
BUGS¶
For feature=line the input raster map MUST be thinned by
r.thin; if not,
r.to.vect may crash.
SEE ALSO¶
g.region, r.thin, v.clean
AUTHORS¶
Point support
Bill Brown
Line support
Mike Baba
DBA Systems, Inc.
10560 Arrowhead Drive
Fairfax, Virginia 22030
Area support
Original version of
r.poly:
Jean Ezell and Andrew Heekin,
U.S. Army Construction Engineering Research Laboratory
Modified program for smoothed lines:
David Satnik, Central Washington University
Updated 2001 by Andrea Aime, Modena, Italy
Update
Original r.to.sites, r.line and r.poly merged and updated to 5.7 by Radim Blazek
Last changed: $Date: 2014-01-03 19:40:22 +0100 (Fri, 03 Jan 2014) $
Full index
© 2003-2014 GRASS Development Team