Skip to main content

A package for conflation of GeoJSON features with OSM data

Project description

OSM Conflator

OSM Conflator is a Python package that allows you to conflate GeoJSON features with OpenStreetMap (OSM) data. It helps you identify and modify features in a GeoJSON dataset that intersect with OSM data, providing a convenient way to update properties or perform other actions based on the conflation results.

Installation

You can install OSM Conflator using pip:

pip install osmconflator

Usage

Here's an example of how to use OSM Conflator in your Python code:

from osmconflator import conflate_geojson

geojson_str = '{"type": "FeatureCollection", "features": ... }'

conflated_geojson = conflate_geojson(geojson_str)

print(conflated_geojson)

This output will have input features with conflated properties of duplicate and intersect (boolean) .

In the above example, conflate_geojson is the main function provided by OSM Conflator. It takes a GeoJSON string as input, performs conflation with OSM data, and returns an GeoJSON string with problems of duplicate and overlapping.

Options :

  • Pass remove_conflated=True argument to conflate_geojson function to get clean geojson without duplicate or overlap problem.
my_cleaned_geojson = conflate_geojson(geojson_str,remove_conflated=True)

Features Supported :

Currently conflation for following osm features are supported :

  • Buildings

Example :

from osmconflator import conflate_geojson

my_geojson = {
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "properties": {},
            "geometry": {
                "coordinates": [
                    [
                        [83.98097353206458, 28.203326601546905],
                        [83.98097353206458, 28.203239142020323],
                        [83.98110284724493, 28.203239142020323],
                        [83.98110284724493, 28.203326601546905],
                        [83.98097353206458, 28.203326601546905],
                    ]
                ],
                "type": "Polygon",
            },
        },
        {
            "type": "Feature",
            "properties": {},
            "geometry": {
                "coordinates": [
                    [
                        [83.97980503615179, 28.20407835951059],
                        [83.97980503615179, 28.204017832398932],
                        [83.97987683972957, 28.204017832398932],
                        [83.97987683972957, 28.20407835951059],
                        [83.97980503615179, 28.20407835951059],
                    ]
                ],
                "type": "Polygon",
            },
        },
    ],
}

conflated_geojson = conflate_geojson(my_geojson)
print(conflated_geojson)

Output :

{"type": "FeatureCollection", "features": [{"type": "Feature", "properties": {"duplicate": false, "intersect": false}, "geometry": {"coordinates": [[[83.98097353206458, 28.203326601546905], [83.98097353206458, 28.203239142020323], [83.98110284724493, 28.203239142020323], [83.98110284724493, 28.203326601546905], [83.98097353206458, 28.203326601546905]]], "type": "Polygon"}}, {"type": "Feature", "properties": {"duplicate": false, "intersect": true}, "geometry": {"coordinates": [[[83.97980503615179, 28.20407835951059], [83.97980503615179, 28.204017832398932], [83.97987683972957, 28.204017832398932], [83.97987683972957, 28.20407835951059], [83.97980503615179, 28.20407835951059]]], "type": "Polygon"}}]}

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvements, please feel free to open an issue or submit a pull request. When contributing to this project, please follow the Contributing Guidelines.

License

This project is licensed under the MIT License. See the LICENSE file for more information.

Work in Place :::: Development is Going on

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

osmconflator-0.0.6.tar.gz (5.7 kB view details)

Uploaded Source

File details

Details for the file osmconflator-0.0.6.tar.gz.

File metadata

  • Download URL: osmconflator-0.0.6.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for osmconflator-0.0.6.tar.gz
Algorithm Hash digest
SHA256 29a73baeb51e3c168499f85d589ec5390862b5cf8abfc3eef734f34c3b7fc05a
MD5 4197a62c9a40b8345148ca241a8d6bd4
BLAKE2b-256 4369d6978cda8118445ab8f528389111af94764ba83ec61322a343c6df835575

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page