Git Product home page Git Product logo

semi_automated_obia_processing_with_local_uspo's Introduction

Semi-automated OBIA processing with local USPO

This repository contains all the jupyter notebooks used for processing Ouagadougou case study for MAUPP project [1].

Rationale

Mapping large heterogeneous urban areas using object-based image analysis (OBIA) remains challenging, especially with respect to the segmentation process. This could be explained both by the complex arrangement of heterogeneous land-cover classes and by the high diversity of urban patterns which can be encountered throughout the scene. In this context, using a single segmentation parameter to obtain satisfying segmentation results for the whole scene can be impossible. Nonetheless, it is possible to subdivide the whole city into smaller local zones, rather homogeneous according to their urban pattern. These zones can then be used to optimize the segmentation parameter locally, instead of using the whole image or a single representative spatial subset.

The code presented here is an adaptation of an Opensource OBIA processing chain previously published. The code allow to adapt the optimize the segmentation parameters on a local basis instead of using one single parameter to process a whole scene. The method prooved to overperform traditional 'global' approach in case of very large and heterogeneous urban areas. Results were published in [2] and [3]. The code proposed here require that the user provide a partition of the scene. This partition can be easily and automatically performed using the GRASS GIS add-on 'i.cutlines', as described in [3].

The Segmentation folder contains the code used for implementing local USPO approach (here, with user-provided morphological zones).

The Segment stats folder contains the code used for computing segment statistics and save of them in a postGis database.

The Classification folder contains the code used for the classification step. Most of it is performed using R magicell. A feature selection (VSURF) procedure is implemented. The classification is performed using Random Forest (Caret R package). In this repo, different tests were perfomed (A: optical only; B: optical nDSM; C: SAR only; D: Optical SAR; E: Optical nDSM NDVI - class 'shadow included')

The Postclassification folder contains the code for the computation of neighborhood matrix at the segment level. Importing of neighborhood matrix, segment labels and segment statistics in PostGis database. Computing for each segment the percentage of borders shared with different classes. Reclassification rules according the neighborhing and segment statistics/informations.

Cite this code

Please use the following DOI for citing this code: DOI

References

[1] Grippa, Tais, and Stefanos Georganos. “Ouagadougou Very-High Resolution Land Cover Map (Version V1.0) [Data Set].” Zenodo, June 15, 2018. https://zenodo.org/record/1290654.

[2] Grippa, Tais, Stefanos Georganos, Sabine Vanhuysse, Moritz Lennert, and Eléonore Wolff. 2017. “A Local Segmentation Parameter Optimization Approach for Mapping Heterogeneous Urban Environments Using VHR Imagery.” In Proceedings Volume 10431, Remote Sensing Technologies and Applications in Urban Environments II. IEEE. https://doi.org/10.1117/12.2278422.

[3] Georganos, Stefanos, Tais Grippa, Moritz Lennert, Sabine Vanhuysse, Brian Johnson, and Eléonore Wolff. 2018. “Scale Matters: Spatially Partitioned Unsupervised Segmentation Parameter Optimization for Large and Heterogeneous Satellite Images.” Remote Sensing 10 (9): 1440. https://doi.org/10.3390/rs10091440.

semi_automated_obia_processing_with_local_uspo's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.