[GRASSLIST:7024] Re: failure when running i.gensigset

Daniel Gavin Daniel.Gavin at uvm.edu
Mon Jun 6 08:43:11 EDT 2005

Dear Knut,

I have had correspondence with Charlie Bouman, the author of 
i.gensigset, about this issue.  There is a problem with the code. As 
I understand it, for certain large data sets, it can't solve the 
fitting of the variance-covariance matrix.  i.gensigset is prone to 
result in singular matrices..this is where I show my ignorance on 
exactly how it works....but as the dimensionality of the data 
increases there is a greater chance this will occur.  On Charlie's 
website (http://dynamo.ecn.purdue.edu/~bouman/ ) is a new version, 
called CLUSTER, which has an algorithm that detects and deals with 
singularities.  You must compile this code on your computer (there is 
a makefile; I am sure others on this list can recommend the best way 
to compile if this is new to you). There is also a user's manual and 
some example files.  I dump the data out of grass using r.stats -1n 
input=grid1,grid2,grid3 output=cluster_input.txt
where grid1, grid2, grid3  etc are the 'bands' in the imagery 
subgroup that you wish to use.
The above r.stats command must be run for each class (I use a mask to 
subset the map into classes).  CLUSTER takes the above text file and 
an information file (stating the file names for each class.) as 
input.  The file created by CLUSTER can be put into the correct 
folder (in the proper group, subgroup, sigset folder) and be used 
with i.smap.  You will need to edit this file, however.  It requires 
different numbers at the end of the lines that start with
Otherwise i.smap will classify everything as the same class.  You 
also need to be sure that the file named REF in the subgroup lists 
your rasters in the same order they are used in CLUSTER.

Charlie Bouman also said he has made minor improvements to i.smap 
(called smap in the version on his website), but the changes to 
i.gensigset were substantial.  I think it would be nice if someone 
who knows how can update i.gensigset using CLUSTER, assuming Dr. 
Bouman agrees.


At 1:45 PM +0200 6/6/05, knut.langeland at nina.no wrote:
>Dear list
>I'm doing some analysis of orthophotos with i.gensigset and i.smap, 
>but suddenly when running i.gensigset i get this:
>GRASS 6.1.cvs (ortho35):~ > i.gensigset trainingmap=2616trening 
>group=2616 subgroup=2616 signature=2616sign1  
>Finding training classes ... 100%
>ERROR: G_calloc: out of memory
>GRASS 6.1.cvs (ortho35):~ >
>I'm running it on cygwin with 6.0.0., and I have tried to reinstall 
>both cygwin and GRASS 3 times but the same thing happens again. 
>In my prosesses window of the windows task manager the i.gensigset 
>appears two times counting different amounts of memory when runnig 
>the module. I'm in short of time so if anyone has an answer I'll 
>be very happy!!!!
><mailto:d at nina.no>

Dan Gavin
Research Associate
University of Vermont
Botany and Agricultural Biochemistry
120B Marsh Life Science
109 Carrigan Dr.
Burlington, VT 05405-0086

More information about the grass-user mailing list