conflation with jcs automated and human-assisted conflation using the jcs conflation suite presented...

30
Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical Architect mbdavis @vividsolutions.com

Upload: leanna-peterson

Post on 16-Dec-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Automated and Human-Assisted Conflation Using the JCS Conflation Suite

Presented at GeoTec 2003Vancouver, BC

Martin Davis, Technical Architect

[email protected]

Page 2: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Overview of Conflation

• “Conflation” is a very broad term• Conflation problems need to be precisely

defined in order to be automated• Conflation algorithms difficult to generalize• Still awaiting “Grand Unifying Theory” of

conflation

Page 3: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Overview of ConflationTerminology

• Matching – identifying features or data elements which represent the same real-world entity

• Alignment – whether two features or data elements have coincident geometry

• Adjustment – altering geometry or attributes of matched features to make them align

• Reference –dataset to be conflated to (usually of greater spatial accuracy)

• Subject – dataset to be matched or adjusted

Page 4: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Overview of ConflationProblem Categorization

• Horizontal – conflation between adjacent datasets e.g. Boundary Alignment

• Vertical – conflation between datasets covering the same area e.g. Coverage Alignment, Road Network Matching

• Internal – conflation between items in a single dataset e.g. Coverage Cleaning

Page 5: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Overview of ConflationAutomated VS Human-Assisted

• Automated uses algorithm(s) to match and adjust features

automatically. May not be able to fix 100% of problems

• Human-Assisted use manual editing tools to adjust features Assisted by automated tools to detect

problems, perform precise adjustment

Page 6: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Overview of Conflation Workflow

• Acquire Datasets• Data Preparation & Validation (QA)• Problem Detection and Visualization• Automated Conflation• Human-assisted Conflation (if

necessary)

• Persist Updated Data

Page 7: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

The JCS Conflation Suite Project

• Project sponsor: Dr. Mark Sondheim - Base Mapping and

Geomatic Services Branch, MSRM

• With support from:GeoConnectionsMinistry of Sustainable Resource

Management, Province of BC

• Project Timeline Initiated: March 2002Finish: ~March 2003

Page 8: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

The JCS Conflation Suite

• Goals:Address real-world conflation problemsLeverage existing spatial tools and modern

software development techniquesOpen development philosophy Build toolbox for performing conflation

• JCS written in 100% pure Java• JCS is Open Source (GPL license)

Page 9: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

JCS Architecture

• JCS provides:APIGUI

• Built using: Java Topology Suite (JTS)Unified Mapping Platform (JUMP)

Page 10: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

JTS Topology Suite

• Implementation of OpenGIS Consortium Simple Features Specification

• Open-Source, 100% Java• Goals:

Fast, production quality Robust Explicit precision model

Page 11: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

JTS Topology SuiteGeometry Model and Operations

• Geometry model: Points, LineStrings, Polygons, collections

• Spatial predicates (using Dimensionally Extended 9-Intersection Model)

• Boolean operations, buffer, convex hull, centroid, etc.

Page 12: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

JUMP Unified Mapping Platform

• 100% pure Java• Open Source (GPL license)• Both API and GUI

• Goals: Rich GUI environment for developing spatial algorithms,

visualizing data and output Interactive environment for supporting human-assisted spatial

processes Leverage capabilities of Java platform for spatial processing Easily extensible

Page 13: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

JUMP - API

• Features with attributes and geometry• Feature Collections• Spatial Access Methods

Quadtree, STR-Tree, Binary Interval Tree

• Warping Affine Transform Bilateral Interpolated Triangulation

• Dataset I/O Well Known Text, GML, ESRI Shapefile

Page 14: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

JUMP Workbench• Multi-Window GUI• Supports multiple layers of spatial data; rich styling

options• Provides GUI for JUMP API functions• Geometry & Attribute editing• Easily extensible via Plugin framework

Page 15: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Conflation in JCS Overview

• Provides tools for:Dataset QAProblem detectionAutomated ConflationHuman-assisted conflation (manual edits)

• Kinds of conflation algorithmsCoverage AlignmentRoad Network Matching

Page 16: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Coverage AlignmentProblem Subtypes

• Boundary Alignment e.g. Municipal Parcels “Horizontal Conflation”

• Coverage Cleaning “Internal Conflation”

• General Coverage Alignment e.g. aligning suburb boundaries to

parcels “Vertical Conflation”

Page 17: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Coverage AlignmentAlgorithm

• Key idea: Lines that are “close” should be identical

• Match Line segments Hausdorff distance < tolerance Relative angle < tolerance

• Adjust Vertices Snap close vertices Add or merge vertices if necessary

• Heuristics: Do not break topology Minimize change to existing vertices

Page 18: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Coverage CleaningError Detection

Page 19: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Coverage CleaningAutomated Alignment

Page 20: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Coverage Cleaning QA of Automated Process

Page 21: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Coverage CleaningManual Tools – Vertex Snapping

Page 22: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Boundary AlignmentError Detection

Page 23: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Boundary AlignmentAutomated Conflation

Page 24: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

General Coverage AlignmentError Detection

Page 25: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

General Coverage Alignment Automated Conflation

Page 26: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Road Network MatchingProblem Example

Page 27: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Road Network MatchingAlgorithm

• Match Nodes and Edges based on weighting

• Node Match weight Distance between nodes Topology match between incident edges

• Edge Match weight Hausdorff distance between edges Relative length of edges For “straight edges”, relative angle

Page 28: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Road Network MatchingMatching & Visualization

Page 29: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Road Network MatchingWarping based on Matching

Page 30: Conflation with JCS Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC Martin Davis, Technical

Conflation with JCS

Further Development

• New / improved conflation algorithms Complete Road Network Matching tools Improve Coverage Alignment algorithm Alignment to natural boundaries

E.g. Admin Boundary / Heights-of-land Stream Network matching (Refractions Research)

• Additional JUMP functionality Colour-theming by attribute More flexible GML support

• JTS improvements Robustness of spatial functions, buffer