[GRASS-user] OBIA image segmentation with GRASS, i.segment(.uspo)

Moritz Lennert mlennert at club.worldonline.be
Mon Jan 7 01:43:02 PST 2019


Dear Helmuth,

Please note that in general it is considered bad netiquette to address
such a mail to individual developers instead of the project mailing list
[1] (in CC). I, therefore, invite you to use that channel for communication.

On 5/01/19 13:36, Helmuth Wiesinger wrote:
> Dear Mr. Lennert,
> 
> I’m working on a topic of image segmentation for my agricultural
> areas. I’m from Austria, and involved in both industries - farming
> and also IT/software development. I’m trying to solve the issue to
> estimate the size of wild boar damaged areas in my fields, for the
> beginning starting with corn fields [1].
> 
> I’ve read an article you were involved with regarding the
> semi-automated process chain with GRASS and R, using i.segment.uspo
> add-on [2]. I also watched the video 
> <https://ftp.gwdg.de/pub/misc/openstreetmap/FOSS4G-2016/foss4g-2016-1533-building_applications_with_foss4g_bricks_two_examples_of_the_use_of_grass_gis_modules_as_a_high-level_language_for_the_analyses_of_continuous_space_data_in_economic_geography-hd.mp4>
>  of your speech about it @Bonn FOSS4G conference 2016. I’m completely
> new to image segmentation and after I’ve tried now for two weeks to
> make progress I just wanted to ask you for a brief answer if you
> think I’m heading into the right direction – trying to solve this
> issue, using drone-created GEOTIFFs with ODM (DpenDroneMap), and
> subsequently trying to segment/classify them with GRASS.
> 
> What I did so far:
> 
> * installed GRASS 7.4.2 on Windows 10, but got stuck at a described 
> bug in i.segment function 
> <http://osgeo-org.1560.x6.nabble.com/GRASS-GIS-3705-i-segment-produces-empty-output-td5388643.html#a5388649>.

This should be solved with the imminent 7.4.4 release.

> * installed GRASS 7.4.0 on Ubuntu using Oracle Virtualbox, where 
> i.segment works * did some try&error with i.segment with different
> thresholds and different minsize parameters for an rgb image (made
> from the example tiff [2] using r.composite)

i.segment will certainly work better if you provide it as input a group
of three different r, g, b maps, instead of one single r.composite
output, because then it will have three variables on which to determine
similarity between pixels instead of only one.

> * installed add-on’s i.segment.stats and i.segment.uspo, 
> r.neighborhoodmatrix * gave i.segment.uspo a trial run, but the
> result wasn’t really what I was looking for. I assume more tuning is
> needed.

Without more explanation of what you are looking for and in what ways
the results diverged from that expectation, it is difficult to help you
on this.

> 
> Do you think that this is an efficient approach to solve the
> question, how many square meters are damaged by wild boar in a
> specific field?

I don't really know how such damage manifests itself spectrally and how 
important "objects" are for detection, compared to pixel-by-pixel 
information. It might be that for this particular question a pixel-based 
approach might be more relevant. If you want to try machine learning 
algorithms on this, you can look at the r.learn.ml addon.


> I’d really appreciate if you could spare the time for a short
> answer.
> 
> [1] an example image made with ODM can be found here: 
> https://www.dropbox.com/s/zo8gihoa9bmunl4/test_orthophoto_try3.zip?dl=0
>
>  [2] article “*An Open-Source Semi-Automated Processing Chain for
> Urban Object-Based Classification*”
> 

Moritz

[1] https://lists.osgeo.org/mailman/listinfo/grass-user



More information about the grass-user mailing list