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:
i.group group=group subgroup=sub_group input=2013_03_05_toar4@PERMANENT,2013_03_05_toar5@PERMANENT,2013_03_05_toar3@PERMANENT
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 <superv_class>
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...
Signature X not invertible means?
Any idea? Thanks for your help!