Skip to content
This repository has been archived by the owner on Jun 24, 2019. It is now read-only.
/ osm-changes Public archive

Estimatimate the quality of OSM features based on their changes

License

Notifications You must be signed in to change notification settings

fitodic/osm-changes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

osm-changes


##Estimate the quality of OSM features based on their changes

OpenStreetMap (OSM) features experience changes which can span from adding or removing certain tags to updating existing tags or geometries. These changes can increase the overall quality of the OSM dataset, but they can also indicate features affected by significant changes. This Python tool is designed to analyze and determine the quality of OSM features.


###Overview The following operations are currently available:

  1. Count tag inserts, deletions, updates and geometric changes
  • Detect the locations of certain types of changes
  1. Evaluate changes using string matching techniques
  • Use the Jaro-Winkler distance or the Levenshtein distance to analyze the changes in certain types of tags (e.g. name, operator, etc.)
  • The similarity between strings can be indicative of the type of changes, such as correction of typographical errors or changes in ownership.
  1. Determine the currency of spatial objects
  • Distinguishes between up-to-date and out-of-date features by calculating the difference between the feature's timestamp and the median timestamp of the analyzed group
  • Inapplicable to long-standing features (e.g. castles, highways, etc.)
  1. Estimate geometric changes
  • Movements of points, increases/reductions of lengths/areas in (Multi)LineStrings/(Multi)Polygons

###Requirements

  1. PostgreSQL 9.3
  2. PostGIS 2.1
  3. Python 2.7
  4. GDAL/OGR
  5. SQLAlchemy
  6. GeoAlchemy2
  7. Shapely
  8. Jellyfish
  9. ArgParse

###OSM data extraction

$ python osm-changes/extract.py osm-changes/data/INPUTFILE.osm.pbf

Warning: The name of the input file should contain its creation date (the rest of the name is optional): YYYYMMDD-name.osm.pbf

###OSM data processing

  • Output format: GeoJSON
  • Location of the output files (and several examples): ./osm-changes/output
  • Usage:
$ python osm-changes/main.py "job_name" "feature_key" "feature_value" osm_version -ogj -optional_arguments
  • For more info type:
$ python osm-changes/main.py -h

###Examples See ./osm-changes/output

About

Estimatimate the quality of OSM features based on their changes

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages