On 06/11/18 13:38, Markus Neteler wrote:
Hi,

On Tue, Nov 6, 2018 at 11:24 AM Giuseppe Cillis <[email protected]> wrote:

Dear all,
I would like to classify in a semi-automatic way, an old scanned thematic map 
of land use.
The different classes of land use are represented by polygons of different 
colors.
Which module can I use to identify the different land use classes?

In this case it might make sense to apply OBIA techniques:

https://grasswiki.osgeo.org/wiki/Image_classification#Object-based_classification_and_image_segmentation

After segmentation, classification methods can be applied.
Of course there may be other approaches as well.

Next to the info given by Markus, you could also try i.superpixels.slic to segment the map.

If the colors of the different classes are very homogeneous internally and you do not have to many land use classes, you could also do a simple manual reclassification using r.mapcalc (assuming here that your scanned map is imported as three bands red, green and blue):

if(map.red > 10 && map.res < 15 && map.green > 55 && map.green < 70 [etc],
        1, # classify as class 1
        if([add rules], # else
                2,
                if([add rules] # else
etc.

To homogenize your objects, you could also try to regroup very similar (but not strictly identical) adjacent pixels into objects using r.clump with the threshold parameter and then recreate homogenized red, green and blue bands by calculating the mean of each band in each clump using r.stats.zonal and then use some rule system as above, or some supervised technique such as r.learn.ml or its OBIA equivalents to classify.

Moritz


_______________________________________________
grass-user mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to