30
An Introduction to Open Source GIS An Introduction to Open Source GIS Gavin Jackson Gavin Jackson An Introduction To Open Source GIS Gavin Jackson Atlas of Living Australia CSIRO Open Source Developers Conference 2011 Canberra, Australia

An Introduction To Open Source GIS

  • Upload
    gavz

  • View
    1.366

  • Download
    4

Embed Size (px)

DESCRIPTION

Open Source software has come a long way in recent years for storing, manipulating and presenting spatial data. The Openstreetmap (www.openstreetmap.org) project is a great example of what can be achieved using open software and open data.This presentation will look at using a combination of postgis, geoserver and openlayers to process, store and present vector and raster map data.The presentation will also demonstrate OGC web mapping protocols, map projections, spatial toolkits (including uDig, gdal and ogr) and sources of free geospatial data.Gavin Jackson is a software engineer working in the Spatial Team on the Atlas of Living Australia project (www.ala.org.au).Bio: A software engineer with 10 years experience (BInfTech ANU, Msc UNSW), he has worked in a variety of environments, including Department of Defence (IT Security), CPT Global (Stress and Volume Testing), Les Mills (Software Engineer) and, currently, CSIRO (Spatial Software Engineer).He has long been an advocate for the use and implementation of Open Source technologies, and is a Redhat Certified Engineer (RHCE).

Citation preview

Page 1: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

1

An Introduction To Open Source GIS

Gavin JacksonAtlas of Living Australia

CSIRO

Open Source Developers Conference 2011Canberra, Australia

Page 2: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

2

Page 3: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

3

Introduction

• Not the best practice

• Coding in Perl too multidimensional for a unique maximum

• Coders of Perl too diverse for a unique maximum

• But a best practice

• Suitable for most applications

Page 4: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

4

Introduction

• Standards

• Architecture

• Databases

• Clients

• Geospatial Services

• Data / ALA Demonstration

Page 5: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

5

Standards

• Not the best practice

• Coding in Perl too multidimensional for a unique maximum

• Coders of Perl too diverse for a unique maximum

• But a best practice

• Suitable for most applications

Page 6: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

6

OGC

• WMS – Web mapping service

• WFS – Web feature service

• WCS – Web coverage service

Page 7: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

7

Projections

• http://xkcd.com/977

• Maps a spherical surface to a 2D plane

• Area

• Shape

• Direction

• Distance/Scale

Page 8: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

8

Common Projections

• EPSG:4326 (WGS 84) lon/lat (km)

• EPSG:900913 lon/lat (m)

• GDA94/NSW Lambert EPSG:3308 (NSW)

Page 9: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

9

Formats

• ESRI Shapefile

• WKT

• KML

• GeoJSON/GeoRSS

• Raster (geotiff), ESRI Grid, ASCII Grid

Page 10: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

10

NetCDF

• Scientific Community

• Multi-Dimensional Spatial Data

– Temporal (time based)– Depth based data

• OpenDAP, THREDDS (NetCDF servers)

• THREDDS supports WMC and WCS services

• Panoply (client)

Page 11: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

11

Architecture

• Not the best practice

• Coding in Perl too multidimensional for a unique maximum

• Coders of Perl too diverse for a unique maximum

• But a best practice

• Suitable for most applications

Page 12: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

12

Spatial Server

• OGC Services (WMS, WFS, WCS)

• CQL

• Styling

• Legend Generation

• On Click Event

• Geoserver Demo

Page 13: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

13

Thick Clients

• uDig (demo)

• World Wind (NASA)

• Google Earth

Page 14: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

14

Web Based Clients

• OpenLayers

• Google Maps (+ WMS extension)

Page 15: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

15

Thick Clients

• uDig

• World Wind (NASA)

• Google Earth

Page 16: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

16

Spatial Databases

• Capabilities

• PostGIS (demo)

• Commercial Offerings

Page 17: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

17

Spatial Services

• Not the best practice

• Coding in Perl too multidimensional for a unique maximum

• Coders of Perl too diverse for a unique maximum

• But a best practice

• Suitable for most applications

Page 18: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

18

Geotools

• Java API

• Used by Geoserver and uDig

• Excellent workshop presented on Tuesday by Jody Garnett on Tuesday

Page 19: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

19

OGR – Simple Feature Library

• OGR is used to manipulate and work with vector based data – changing projections, converting to different types, merging shapefiles

• ogrinfo, ogr2ogr

Page 20: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

20

GDAL

• Geospatial Data Abstraction Library

• Used to manipulate and work with raster spatial data– changing projection, converting to different type, changing grid size

• gdalinfo, gdal_translate, gdalwarp …

• gdal_rasterize – convert a shapefile to a raster

• gdal_polygonize – convert a raster to a shapefile

Page 21: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

21

Geocoding

• Forward/Reverse

• Google geocoding service

• OSM (nominatim.openstreetmap.org) demo

Page 22: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

22

Spatial Metadata

• Geonetwork (OGC Client Services for the CSW implementation)

Page 23: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

23

Putting it all together (demos)

• Not the best practice

• Coding in Perl too multidimensional for a unique maximum

• Coders of Perl too diverse for a unique maximum

• But a best practice

• Suitable for most applications

Page 24: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

24

Shapefile to web

• Quick demonstration to demonstrate:

• Shapefiles

• uDig

• PostGIS

• Geoserver

• Openlayers

Page 25: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

25

Use case – spatial.ala.org.au

• Developed by CSIRO in conjunction with a large number of data providers (Government departments, Universities, Museums, Herbaria)

• Spatial portal marries up species occurrence data with environmental layers

• Allows users to specify analysis areas and perform advanced spatial analysis functions

Page 26: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

26

Example

• Add species

• Add layer

• Add area

• Analysis tools

Page 27: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

27

Further Reading

• GIS for Web Developers - Adding where to your applications, Scott Davis, The Pragmatic Programmers LLC, 2007    

• PostGIS in Action, Regina O. Obe and Leo S. Hsu, Manning, 2011    

• Geoserver Tutorial (www.geoserver.org)    

• UDig Tutorial (udig.refractions.net)

Page 28: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

28

Page 29: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

29

Page 30: An Introduction To Open Source GIS

An Introduction to Open Source GISAn Introduction to Open Source GIS Gavin JacksonGavin Jackson

30

URLs Visited During Talk

• http://www.openstreetmap.org/

• http://xkcd.com/977/

• http://www.gadm.org/

• http://www.naturalearthdata.com/

• http://spatial.ala.org.au