martin davis, technical architect mbdavis@vividsolutions

Post on 02-Feb-2016

51 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Automated and Human-Assisted Conflation Using the JCS Conflation Suite Presented at GeoTec 2003 Vancouver, BC. Martin Davis, Technical Architect mbdavis@vividsolutions.com. Overview of Conflation. “ Conflation ” is a very broad term - PowerPoint PPT Presentation

TRANSCRIPT

Conflation with JCS

Automated and Human-Assisted Conflation Using the JCS Conflation Suite

Presented at GeoTec 2003Vancouver, BC

Martin Davis, Technical Architect

mbdavis@vividsolutions.com

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

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

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

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

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

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

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)

Conflation with JCS

JCS Architecture

• JCS provides:APIGUI

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

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

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.

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

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

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

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

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”

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

Conflation with JCS

Coverage CleaningError Detection

Conflation with JCS

Coverage CleaningAutomated Alignment

Conflation with JCS

Coverage Cleaning QA of Automated Process

Conflation with JCS

Coverage CleaningManual Tools – Vertex Snapping

Conflation with JCS

Boundary AlignmentError Detection

Conflation with JCS

Boundary AlignmentAutomated Conflation

Conflation with JCS

General Coverage AlignmentError Detection

Conflation with JCS

General Coverage Alignment Automated Conflation

Conflation with JCS

Road Network MatchingProblem Example

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

Conflation with JCS

Road Network MatchingMatching & Visualization

Conflation with JCS

Road Network MatchingWarping based on Matching

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

top related