GithubHelp home page GithubHelp logo

isabella232 / geoint-in-motion Goto Github PK

View Code? Open in Web Editor NEW

This project forked from esri/geoint-in-motion

0.0 0.0 0.0 88 KB

Data change comparison tools for OpenStreetMap and any data

License: MIT License

Python 100.00%

geoint-in-motion's Introduction

geoint-in-motion

Has your data changed? If so, how? Has the attribution been enriched? Have geometries been added, removed or modified? The GEOINT in Motion toolbox enables analysts to quickly understand where feature in their database have changed, either due to attribution changes or geometry changes, and what those changes were.

These tools have broad applications. They can be used to analyze changes to authoritative topographic features. They can similarly be used to identify how roads have changed in OpenStreetMap since the last time you downloaded OSM.

Toolbox and Scripts

GEOINT in Motion tools were written in Python and turned into an ArcGIS Toolbox that can be used in ArcGIS Pro 1.2+ or ArcGIS Desktop 10.4+. The toolbox contains the tools listed below. Each tool has a coresponding Python script that can be run as a stand-alone script.

Attribute Change Ranking

Compares tables with the same name in a given polygon. The tool will examin the total rows and compare the field's total differences and generate a set of rankings in that polygon grid for the fields. This tool should be used with feature data that does not contain unique object IDs.

Basic Data Comparison

Compares two datasets that have the same schema based on a list of features within feature classes. Features and attributes that are being compared are taken from an excel spreadsheet.

Compare Geometry By Unique ID

Takes two features classes as inputs and determines what features have been added, removed, or had their geometries modified. The input feature classes need to have a unique ID field in order to determine the additions, removals, and deletions.

Compare Table Attributes By Unique ID

Takes two features classes as inputs and determines what features have had attributes modified in any way. The input feature classes need:

  • A unique ID field in order to determine feature attribute changes.
  • To be in the same schema (attribute fields must be identical).

Sanitize Fields

Replaces a specific value within an attribute field with a user defined value.

Spatial Change Ranking

Compares corresponding feature classes within different geodatabase. This is intended to compare snapshots of the same database taken at two different times. This tool should be used with feature data that does not contain unique object IDs.

Installation and Use

The GEOINT in Motion tools use Python and Esri's arcpy library. In order for the tools to run, ArcGIS Desktop verision 10.4+ or ArcGIS Pro 1.2+ must be installed. If that condition is met, you should be able to clone this repo and run the tools as ArcGIS geoprocessing tools through ArcMap or ArcGIS Pro or as stand alone scripts.

Points of Contact

Developers

In aphabetical orther by last name:

Contributing

This tool was developed at the National Geospatial-Intelligence Agency (NGA) in collaboration with ESRI. The government has "unlimited rights" and is releasing this software to increase the impact of government investments by providing developers with the opportunity to take things in new directions. The software use, modification, and distribution rights are stipulated within the MIT license.

All pull request contributions to this project will be released under the MIT or compatible license. Software source code previously released under an open source license and then modified by NGA staff is considered a "joint work" (see 17 USC § 101); it is partially copyrighted, partially public domain, and as a whole is protected by the copyrights of the non-government authors and must be released according to the terms of the original open source license.

geoint-in-motion's People

Contributors

ckras34 avatar gbrunner avatar

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.