I need to reclassify raster areas smaller than 100m2 (0.01 ha) to new ones.

r.reclass. area from GRASS GIS does the job for some raster sizes, but simply stucks/doesn't work on bigger ones (54000 x 36000, CELL, 18 classes). It stucks on "attaching islands" and in the system monitor I see always the process r.to.vect stuck on 6,5 GB of RAM memory and a disk write of 1,1 GB (GRASS GIS 7.6, Linux and Windows).

I tried with different approaches:

  1. did it with and without clumped input,
  2. did it for lesser+rmarea than 0,01 directly and broke it into two steps (0,00125 ha and then 0.01 ha),
  3. a colleague tried it in ERDAS IMAGINE with eliminate and it worked.

Is there any function in GRASS, SAGA QGIS, OTB, R, Python or other open source solutions that can reclassify the pixel values of a defined area (eg. smaller than 100 m2) into the value of the areas/clumps that are neighboring? GDAL sieve does removes all the areas lesser than but doesn't take of their reclassification based on clumps - it assigns just the value of the neighboring pixels. That's why i find the answer on this thread unuseful. SAGA's Sieve classes also works the same way, but you can define the pixel value that you want to Sieve.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.