Dear Pietro,
On 07/01/14 18:33, Pietro Zambelli wrote:
Dear all,
Some news about the machine learning classification of image segments.
Thanks for the great work !!!
Just a few questions/comments:
3. v.stats [r58637] => Extract statistics from a vector map
(statistics about shape and about raster maps).
v.stats internally use (in grass-addons):
- v.area.stats [r58636] => extract some statistics about
the shape (in grass-addons);
Looking at the code of v.area.stats, I don't understand what it does
differently than v.to.db, except that it outputs all indicators in one
go. I think it would be better to avoid module inflation and maybe
either make v.area.stats into a script that calls v.to.db several times
to collect the different variables, or modify v.to.db to allow
upload/output of several variables at once (see [1]).
- v.to.rast => re-convert the vector to a raster map using the
vector categories to be sure that there is a correspondence
between vector and raster categories (zones).
- r.univar2 [r58439] => extract some general statistics from
raster using the zones (consume much less memory than
r.univar, and compute more general statistics like:
skewness, kurtosis, and mode (in grass-addons);
What is the difference between your r.univar2 and the original r.univar
? Couldn't your modifications be merged directly into r.univar ?
4. v.class.ml [r58638] => classify a vector map, at the moment
only a supervisionate classification is tested/supported.
To select the segment that must use for training the different
machine-learning techniques you can define a training
map using the g.gui.iclass.
The v.class.ml module can:
- extract the training,
- balance and scale the training set;
- optimize the training set;
- test several machine learning techniques;
- explore the SVC domain;
- export the accuracy of different ML to a csv file;
- find and export the optimum training set,
- classify the vector map using several ML techniques and
export to a new layer of the vector map with the results
of the classification;
- export the classification results to several raster maps,
the vector map coming from a segment raster map is too
big to be exported to a shape file (the limit for a shape file
is 4Gb [0]).
Wow, this looks great ! I'll test this as soon as possible.
The module accept as input a python file with a list of custom
classifiers defined by the user, and support both:
scikit-learn[1] and mlpy[2] libraries.
Known Issues:
* not all the classifiers are working (but I hope to be able to fix this
during the next weeks);
* so far, only a supervised classification is supported.
What would be needed to make unsupervised classification work ?
Moritz
[1] https://trac.osgeo.org/grass/ticket/2123
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev