[GRASS5] filtering vector areas
michael.barton at asu.edu
Sat Jun 19 13:43:37 EDT 2004
On Jun 19, 2004, at 3:01 AM, grass5-request at grass.itc.it wrote:
> Dear list,
> Currently I try to classify aerial images (30cm resolution) in order
> to get a generalized vector landcover map. Since the SMAP results
> contain lots of small areas. I use r.neighbour (again and again) to
> filter those areas and then convert the results into vector format.
> unfortunately those map still contains about 60000 polygons and most
> of them are smaller than maybe 50sqm. How is it possible to delete
> those polygons with different category values? I don't need them on
> the map?
> I would like to dissolve them according to their area size and/or
> maybe their category value for example and put them to one of the
> larger neighbour areas. I tried already the -d parameter in the
> v.extract module established by Radim and Hamish (my last test was on
> 17.June from CVS) - thanks a lot for this help! - but this problem
> probably can't be solved with it.
Your subject talks about vector areas and you mention polygons.
However, if you are using r.neighbors and SMAP, you are dealing with
raster files. Perhaps you initially worked with raster files and then
converted them to areas??
Anyway, prior to conversion to vectors, you could run r.reclass.area to
set to null() all the values below a specified size. Then run
r.fill.nulls to fill these areas from surrounding values. Or you can
use the map calculator or r.nulls to set the nulls to a specified
After conversion to vector, you can use v.to.db to add an area field to
your vector attribute table and use this to filter all areas below or
above a set value.
C. Michael Barton, Professor & Curator
School of Human Origins, Cultures, & Societies
Arizona State University
Tempe, AZ 85287-2402
WWW - http://www.public.asu.edu/~cmbarton
More information about the grass-dev