r.to.vect - Converts a raster map into a vector map.
Contents
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.
Pointconversion
The r.to.vect program extracts data from a GRASS raster map layer and stores output in a new GRASS vector
file.
Lineconversionr.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.
Areaconversionr.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:
Conversionofrasterpointstovectorpoints:
Random sampling of points:
g.region raster=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 type=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
Conversionofrasterlinestovectorlines:
Vectorization of streams in watershed basins map:
g.region raster=elevation -p
r.watershed elev=elevation stream=elev.streams thresh=50000
r.to.vect -s input=elev.streams output=elev_streams type=line
# drop "label" column which is superfluous in this example
v.db.dropcolumn map=elev_streams column=label
v.db.renamecolumn map=elev_streams column=value,basin_id
# report length per basin ID
v.report map=elev_streams option=length units=meters sort=asc
Conversionofrasterpolygonstovectorpolygons:
Vectorization of simplified landuse class map:
g.region raster=landclass96 -p
# we smooth corners of area features
r.to.vect -s input=landclass96 output=my_landclass96 type=area
v.colors my_landclass96 color=random
Keywords
raster, conversion, geometry, vectorization
Known Issues
For type=line the input raster map MUST be thinned by r.thin; if not, r.to.vect may crash.
Name
r.to.vect - Converts a raster map into a vector map.
See Also
g.region,r.thin,v.clean
Source Code
Available at: r.to.vect source code (history)
Accessed: Friday Apr 04 01:19:44 2025
Main index | Raster index | Topics index | Keywords index | Graphical index | Full index
© 2003-2025 GRASS Development Team, GRASS GIS 8.4.1 Reference Manual
GRASS 8.4.1 r.to.vect(1grass)
Synopsis
r.to.vectr.to.vect--helpr.to.vect [-svzbt] input=nameoutput=nametype=string [column=name] [--overwrite] [--help]
[--verbose] [--quiet] [--ui]
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
Recommended for massive point conversion
-t
Do not create attribute table
--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:input=name[required]
Name of input raster map
output=name[required]
Name for output vector map
type=string[required]
Output feature type
Options: point,line,areacolumn=name
Name of attribute column to store value
Name must be SQL compliant
Default: value