[GRASS-user] Re: algorithm used in i.cluster

Georg Kaspar georg at muenster.de
Thu Apr 22 07:59:06 EDT 2010


Markus Neteler wrote:
> Luckily it is open source :)

and also quite well documented (at least it is possible to understand 
what's going on without being a C-guru)

>> does anybody know which exact algorithm is used (k-means probably...)?
> 
> I'm afraid that you need to compare it to a k-means algorithm. Please let
> us know your findings.

the steps described in

http://download.osgeo.org/grass/grass6_progman/c__exec_8c_source.html

seem to fit the migrating means algorithm described in richards and jia 
(2006) and based on the isodata algorithm in ball and hall (1965):

1. set C initial cluster centers (at random)
2. assign each pixel to the nearest center
3. compute a new set of means
4. repeat until no further changes occur. (shapiro also implemented a 
maximum number of iterations)

empty clusters can also be deleted and similar clusters can be merged as 
implemented in i.cluster.

best regards,
Georg



More information about the grass-user mailing list