Top Banner
Imagery driven applications with Geomatica, ArcGIS and Python Kevin Jones - Vision Géomatique Nov 13, 2014
49

Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Jul 18, 2015

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Imagery driven applications with

Geomatica, ArcGIS and Python

Kevin Jones - Vision Géomatique

Nov 13, 2014

Page 2: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Outline

• Imagery is more than a basemap

• The Geomatica Platform

• Advantages of working with Python

• Geomatica and ArcGIS Python APIs

• Sample Script/Demonstration

Page 3: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Background

PCI Geomatics has been a leader in developing

software for processing and analyzing remotely

sensed data for over 30 years!

Page 4: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Get More From Imagery

What are we best known for?

Software for ortho/mosaic of remotely sensed images

We make it possible for users to “get the geometry right”

Making “basemaps”

Page 5: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Typical image/basemap

Page 6: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Get More From Imagery

Is there more being done with imagery?

Yes!

Imagery CAN BE more than a basemap.

How can PCI and partners can leverage this, and

Get More From Imagery?

Page 7: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Agricultural Information

Page 8: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Elevation Information

Page 9: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Forestry Information

Page 10: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

3D City Information

Page 11: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Maritime Information

Page 12: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

What Does PCI Provide?

• We provide a solid environment to make it

possible to get this information• Proven science, algorithms (550+)

• Desktop / Server / Cloud

• Development Platform based on Python

Page 13: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

What Can You Do?

• Understand customer challenges and leverage the

platform

• Develop Purpose Built Solutions (apps) that address

these challenges

• Replicate the solutions by vertical market, in different

geographies

• Create different vertical market apps

Page 14: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica Platform

Automation

Integration

Customization

Extension

$?X

Page 15: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

A Purpose-Built Solution

DEM Extraction

Ingest Datasets

Cacl Diff DSM

Extract Stockpiles

CalcVol.

Map

Stereo

Imagery

AutomationIntegration

Create new user interface?: Customization

Page 16: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

The script that made this possible

Page 17: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Increasing Revenue Together

Needs a solution Imagery Software

+ Custom

solutionOne time deal,

limited revenue

=

Many need the

same solutionImagery Software

+Build a

repeatable

SolutionIncreased revenue

potential

=

Page 18: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Multiplier Effects of The Platform

Revenue potential ‘x’

Replicate in

other geographies

Innovative solutions (apps)

Partnerships

Revenue potential

‘x times n’

Page 19: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

PCI Geomatics

Geomatica 2014 release includes a new

Python API for our more than 550 geospatial

processing and analysis algorithms

Platform

Page 20: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap as Platforms

Page 21: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap Platforms

PCI’s geoprocessing algorithms can now be

inserted directly into your ArcGIS workflows

Page 22: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

22Private and Confidential

Geomatica – Powerful image and raster

processing and analysis tools

ArcGIS - Powerful vector and raster

processing and analysis tools

Geomatica & ArcMap Platforms

Page 23: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

PCI Pluggable Framework (PPFs) – PCI

Geomatica’s geoprocessing functions that can be

accessed by python

ArcToolBox - esri’s ArcGIS geoprocessing functions

that can be accessed by python

Geomatica & ArcMap Platforms

Page 24: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Using libraries from Geomatica and

ArcGIS increases the capability and

power of your automated workflows

ArcGIS

FunctionGeomatica

Function

ArcGIS

Function

Geomatica

Function

Python Script

Geomatica & ArcMap Platforms

Page 25: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Python acts as the glue that connects

ArcGIS and Geomatica functions

together

ArcGIS

FunctionGeomatica

Function

ArcGIS

Function

Geomatica

Function

Python Script

Geomatica & ArcMap Platforms

Page 26: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

The Python Advantage

Page 27: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

The Python Advantage

• Easy to learn, high level scripting

• Growing community, body of knowledge

• Easy to create top down, logical and linear

scripts

• Also can be used to create complex

workflows

• Python serves as the glue to connect

functions between different software

packages

Page 28: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

The Python Advantage

Python is one of the most popular scripting languages in the

Geo-spatial industry; supported by commercial and open

source packages

Page 29: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcGIS APIs for Python

Page 30: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap APIs

API – The API (Application Programming Interface)

provides users with instructions of how to access

objects, their attributes and call functions

Page 31: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap APIs

PCI and esri have both developed python APIs for

Geomatica and ArcMap, respectively.

These APIs make it simple for users to pass

parameters and launch algorithms within a python

script

Page 32: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap APIs

ArcPy – Important to note that the ArcGIS x64 background

processes must be installed and used if you want to

incorporate PCI’s python library in your script - PCI’s library is based on 64bit code

- Must use the same bit-depth in the same script

Page 33: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap APIs

ArcPy - esri’s ArcGIS python API used to import ArcGIS’s

python library

Page 34: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Geomatica & ArcMap APIs

pciPy– PCI Geomatica’s python API used to call PCI

Pluggable Functions (PPFs) that can be accessed by python

Page 35: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Python Script Demo

Page 36: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

ArcMapGeomatica

Custom Script Demo

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 37: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 38: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 39: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 40: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

Extracted From Stereo Pair

1

Stereo Pair

2

Stereo Pair

3

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 41: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

Mosaicked

DSM

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 42: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 43: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

Possible Billboard Locations

DSM used to determine visibilelocations from each point

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 44: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 45: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 46: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 47: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Custom Script Demo

ArcMapGeomatica

Generate

Epipolar PairsExtract

DSMs

Visibility

Analysis

Intersect

AnalysisMapping

Page 48: Developing imagery driven application workflows with Geomatica, ArcGIS and Python

Available Resources

GitHub – Sample code

• http://github.com/PCIGeomatics

Cookbook – Code snippets• http://pcigeomatics.github.io/PCI-Geomatics-Cookbook/

Tutorials – PCI Website• http://www.pcigeomatics.com/resources-support/geomatica/tutorials