Monday 29 October 2018

classification - Empty signature file after i.gensig in GRASS


I'm trying to make a supervised classification in Grass 6.4.3 under Linuxmint 16.


After digitizing the training areas, I transformed them from vector to raster. Then I've done the following: just in case: g.region rast=train_area_2013_03_05_raster@PERMANENT,2013_03_05_toar4@PERMANENT


then


i.group group=group subgroup=sub_group input=2013_03_05_toar4@PERMANENT,2013_03_05_toar5@PERMANENT,2013_03_05_toar3@PERMANENT


and


i.gensig trainingmap=train_area_2013_03_05_raster@PERMANENT group=group@PERMANENT subgroup=sub_group signaturefile=superv_class



but the resulting signature file, only contains one character: "#".


The output of i.gensig in the console is the following:


Finding training classes...
3 classes found
Calculating class means...
Calculating class covariance matrices...
Signature 1 not invertible
Signature 2 not invertible
Signature 3 not invertible
i.gensig complete.


Obviously if I try: i.maxlik group=group@PERMANENT subgroup=sub_group sigfile=superv_class class=results_class


I obtain the following error message:


ERROR: Unable to read signature file


I've been searching, but I couldn't find the solution.


I've tried: this Problem running i.gensigset in Grass. Any ideas?


My problem is similar to this: i.maxlik cannot read i.class output signature file. But here, there's no solution suggested. As in this case, I also used i.cluster to generate an unsupervised signature file and i.maxlik reads this perfectly well.


Here there's another similar question, but again, with no solution...


What does Signature X not invertible means?


Any idea? Thanks for your help!





No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...