README.md 3.97 KB
Newer Older
Moritz Schott's avatar
Moritz Schott committed
1
# ![](doc/img/osm-element-vectorisation.png) OSM Element Vectorisation
Moritz Schott's avatar
Moritz Schott committed
2

3
4
[![status: active](https://github.com/GIScience/badges/raw/master/status/active.svg)](https://github.com/GIScience/badges#active)

Moritz Schott's avatar
Moritz Schott committed
5
## TL;DR
6

Moritz Schott's avatar
Moritz Schott committed
7
Run `sudo ./vectorisation_docker.sh repex`. _Something_ will happen!
8

Moritz Schott's avatar
Moritz Schott committed
9
10
![](doc/asciinema/oev_asciinema.gif)

Moritz Schott's avatar
Moritz Schott committed
11
## Description
12

Moritz Schott's avatar
Moritz Schott committed
13
This tool transforms single OSM elements into feature vectors for attribute investigation and machine learning. It does that by calculating indicators for the OSM elements. These characterise the OSM object, e.g. based on its edit history, properties of the OSM user who created or modified the object or by OSM objects in the surrounding of the OSM object. The indicators provide new data insights but can also serve as feature vectors/predictors/explanatory variables in machine learning applications - e.g. to estimate data quality.
14

Moritz Schott's avatar
Moritz Schott committed
15
Calculating (quality) **indicators** for [OSM](https://www.openstreetmap.org) can be a complex task combining multiple sources and analyses platforms. We therefore introduce an automated workflow to make data analyses as easy as possible. By providing a minimum amount of configuration, any user will be able to download OSM data, calculate indicators and predict quality using a pretrained ML-model.
16

17
The workflow is a result of the [IDEAL-VGI](https://www.geog.uni-heidelberg.de/gis/ideal_en.html) project funded by [DFG](https://gepris.dfg.de/gepris/projekt/424966858). The project focuses on land-use and land-cover (LULC) data. The workflow is therefore specifically useful for LULC data, especially polygons. _Use with caution outside this domain!_ The workflow targets single OSM objects, yet the results can mostly be aggregated to a courser resolution. Not all indicators may though be suitable. The same applies for other object types like Nodes and Ways where the indicator calculation may need adaption or rethinking.
Moritz Schott's avatar
Moritz Schott committed
18

Moritz Schott's avatar
Moritz Schott committed
19
For information on installing and running the tool as well as the workflows' documentation see:
20

Moritz Schott's avatar
Moritz Schott committed
21
22
23
24
25
26
- [Workflow](doc/workflow.md)
  - [Indicators](doc/indicators.md)
- [How to install and run](doc/installation_run.md)
  - [Configuration](doc/config.md)
    - [Data](doc/data.md)
- [Benchmarking](doc/benchmark.md)
27
28
29

# Contribution Guidelines

Moritz Schott's avatar
Moritz Schott committed
30
You are welcome to contribute to this tool. The easiest way would be filing a concise [issue](https://gitlab.gistools.geog.uni-heidelberg.de/giscience/ideal-vgi/osm-element-vectorisation/-/issues). Yet direct code collaboration is also very welcome. In that case please install the dependency manager [poetry](https://python-poetry.org/) and run `poetry install` to create a local development environment. Before committing any edits, make sure you activate the [pre-commit hooks](https://pre-commit.com/) for cleaner code using `poetry run pre-commit install`. Commit your edits to a [fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) and create a [pull-request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork). A _dev_-mode is available for the docker workflow described above to test your changes.
Moritz Schott's avatar
Moritz Schott committed
31
32
33
34

# Licence

See [LICENCE](LICENCE) and the [comments](Licensing.md).
Moritz Schott's avatar
Moritz Schott committed
35
36
37
38
39
40


[<img src="https://avatars.githubusercontent.com/u/4661504?s=200&v=4" alt="GIScience Logo" width="32%"/>](https://www.geog.uni-heidelberg.de/gis/ideal_en.html)[<img src="http://k1z.blog.uni-heidelberg.de/files/2017/08/heigit_logo_only-300x115.png" alt="HeiGIT Logo" width="32%"/>](https://heigit.org/)
[<img src="https://www.geog.uni-heidelberg.de/md/chemgeo/geog/gis/ideal-vgi_transparent.png" alt="IDEAL-VGI Logo" width="32%"/>](https://www.geog.uni-heidelberg.de/gis/ideal_en.html)

[<img src="https://www.buk.uni-wuppertal.de/fileadmin/site/buk/Logos/vgi.science_logo_online.png" alt="VGISCience Logo" width="30%"/>](https://www.vgiscience.org/projects/ideal-vgi.html)[<img src="doc/img/dfg_logo_schriftzug_blau_foerderung_en.gif" alt="DFG Logo" width="30%"/>](https://gepris.dfg.de/gepris/projekt/273827070)