You are on page 1of 29

Free GIS

an intro to open-source spatial software

Paul Bartsch UCSB
paul.bartsch@dcs.ucsb.edu

Joe Larson Cal Fire
gisfireguy@gmail.com – until I get an official Cal Fire email

Be sure to examine the links and notes with these slides…there may be some not so obvious gems*

FREE* GIS

*seriously

FOSS4G: Free and Open Source Software for Geospatial OSGEO: The Open Source Geospatial Foundation

All of the products we'll talk about today are both free and open-source

Why Use Open Source GIS?
1. Marketable skills In this ever-changing job market it is a huge benefit to be able to bring a total GIS package to the table 2. Supported by huge development & support community Community is very passionate about helping each other but and continually improving software 3. Low start-up costs It is now possible to install a complete GIS stack without paying a cent - LEGALLY 4. Security Arguably more secure than proprietary software Backed by large development community Bugs are found and fixed quickly

Why Use Open Source GIS? (cont’d)
5. Works on all major platforms (Mac, Linux, Windows) 6. Complimentary business model vs linear (see next two slides) 7. There's nothing missing Desktop GIS, Spatial Database Storage, Server... Tons of analysis tools (No licensing worries) Community developed add-ons 8. Works with existing GIS data Import .shp files, most major formats Export to most major formats ArcSDE now connects to PostGIS (OS Database) 9. No file format lock-in 10. Did we mention FREE? Potentially save enough money on software to save jobs

Closed Source Software Dev
Organization 1

$$$ Softwa re Softwa re Softwa re

Organization 2

$$$

Organization 3

$$$

$$$$$$$ $$$$ 0110 0110

Credit: http://wiki.osgeo.org/wiki/Library Holmes_2006a

Open Source Dev. Model
Org. 2:
New feature funders
01 10 10 0 01 1 11 10 00

$$$

Org. 1:
Code in 1011 0001 1 0110 0 110

Org. 3:
Documentation in, code out
DOCUMENTATIO N

Org. 4:

Communityfunded Developers

01 01110 1100 0

OS Community $$$$$$$ 0110 0110

0110 1100 0110

Org. 5:
Customer of contributor Org.6

0110 110 $$$

Org. 6:
Consultant / Contributor

0110 1 1 010 010 0110 1100 0100
$ $$

$$$

Org. 7:
Ideas and money in, code out
Credit: http://wiki.osgeo.org/wiki/Library Holmes_2006a

0110 1100 S A DE I

0110

Org. 8:
Code and money in, code and money out

Who uses Open Source GIS?
A few examples… • • • ArcGIS 9.2 uses GDAL United Nations UCSB Marine Map http://www.marinemap.org/marinemap/

Many case studies here: http://postgis.refractions.net/documentation/casestudies/ More case studies: http://wiki.osgeo.org/wiki/Case_Studies Big projects like Linux, Apache, Mozilla Firefox and OpenOffice are supported by Fortune 500 companies like IBM and Sun. OSGeo is supported by Autodesk.

Why Teach Open Source GIS?
1. Teach fundamentals of spatial data management and analysis rather than button memorization 2. Becoming an increasingly necessary job skill Companies with existing GIS are using this software Makes GIS marketable to smaller firms and nonprofits 3. Drives innovation Through sharing of knowledge & source code 4. Code is open and human-readable

The Stack
Free Alternatives For Your GIS Needs
PostgreSQL/ PostGIS - Spatial Database http://www.postgresql.org/ http://postgis.refractions.net/ GeoServer - Server for Online Publishing/ Data Sharing http://geoserver.org/display/GEOS/Welcome OpenLayers - Web Application Programming Interface (API) http://openlayers.org/ GRASS - (Geographic Resources Analysis Support System) http://grass.osgeo.org/ OSSIM - Advanced remote sensing & image processing http://www.ossim.org/OSSIM/OSSIMHome.html Quantum GIS - Desktop GIS http://www.qgis.org/ GDAL, OGR - Translator library for geospatial data formats http://www.gdal.org/ There are many more options, but these are our favorites so far.

The Stack
..in another form..

Credit: http://opengeo.org/publications/opengeo-architecture/

PostgreSQL + PostGIS
PostgreSQL is a powerful, open source object-relational database system A true spatial database Conforms to Open Geospatial Consortium standards* ArcSDE can connect to it New to ArcGIS Server 9.3 Secure storage for both spatial and non spatial data Column level permissions granularity PostGIS "spatially enables" the PostgreSQL server, allowing it to be used as a backend spatial database for (GIS), much like ESRI's SDE
*The Open Geospatial Consortium, Inc.® (OGC) is a non-profit, international, voluntary consensus standards organization that is leading the development of standards for geospatial and location based services.

GeoServer
Outputs: WMS, WFS, KML, GeoJSON, GeoRSS, more.. Share and edit geospatial data Open standards allow publishing from any major spatial data source including: shapefiles, SQL Server, PostGIS, DB2, Oracle, WFS, TIFF Images, MySQL Integrates with existing API's (Google, yahoo, etc.) Connects to ArcGIS Server WMS can be easily added into existing ArcMap .mxd's
http://geoserver.org/display/GEOS/Welcome GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. Designed for interoperability, it publishes data from any major spatial data source using open standards…GeoServer is the reference implementation of the Open Geospatial Consortium (OGC) Web Feature Service (WFS) and Web Coverage Service (WCS) standards, as well as a high performance certified compliant Web Map Service (WMS). GeoServer forms a core component of the Geospatial Web.

GeoServer

Credit: http://opengeo.org/publications/opengeo-architecture/

OpenLayers
JavaScript Library, including API Similar to Google Maps API Makes building dynamic mapping webpages VERY easy Provides the tools needed to easily add a map to a webpage Allows overlaying your own data Can display map tiles and markers loaded from any source

http://openlayers.org/ OpenLayers: http://www.openlayers.org/ OpenLayers makes it easy to put a dynamic map in any web page. It can display map tiles and markers loaded from any source…OpenLayers is a pure JavaScript library for displaying map data in most modern web browsers, with no serverside dependencies. OpenLayers implements a (still-developing) JavaScript API for building rich web-based geographic applications, similar to the Google Maps and MSN Virtual Earth APIs, with one important difference -- OpenLayers is Free Software, developed for and by the Open Source software community.

GRASS
Geographic Resources Analysis Support System
Geospatial data management Analysis Image processing Graphics/maps production Spatial modeling Visualization Tons of tools + functions = Very complex analysis Now there's a simple user interface through QGIS
Commonly referred to as GRASS, this is a Geographic Information System (GIS) used for geospatial data management and analysis, image processing, graphics/maps production, spatial modeling, and visualization. GRASS is currently used in academic and commercial settings around the world, as well as by many governmental agencies and environmental consulting companies. GRASS is an official project of the Open Source Geospatial Foundation. http://grass.osgeo.org/

OSSIM
Open Source Software Image Map

C++ software library that provides advanced remote sensing, image processing, and geo-spatial functionality Includes orthorectification, precision terrain correction, rigorous sensor models, very large mosaics, and cross sensor fusions, a wide range of map projections and datums, and a large range of commercial and government data formats OSSIM Planet - an accurate 3D global geo-spatial viewer that is built on top of OSSIM

Quantum GIS (QGIS)
Desktop application – very user friendly Can work directly with .shp file, WMS, too many to list Any Platform – Windows, Mac, Linux FREE Plugins available (Similar to Firefox add-ons) Allow spatial analysis, 3-D analysis, statistical analysis... User interface for GRASS tools. OGR interface allows use of TONS of formats PostGIS interface MapServer export

www.qgis.org

GDAL, OGR
GDAL is a translator library for raster geospatial data formats...It also comes with a variety of useful commandline utilities for data translation and processing. The OGR Simple Features Library is a C++ open source library (and commandline tools) providing read (and sometimes write) access to a variety of vector file formats including ESRI Shapefiles, S57, SDTS, PostGIS, Oracle Spatial, and Mapinfo mid/mif and TAB formats.

With GDAL tools you can:

Report information about a file. Copy a raster file, with control of output format. Warp an image into a new coordinate system. Build a MapServer raster tileindex. Convert nearly black/white borders to exact value.

Possible OGR Sources in QGIS: AVCBin, BNA, CSV, DGN, ESRI Shapefile, GML, GMT, GPX, GRASS, GeoJSON, Interlis, KML, MapInfo FIle, Memory, MySQL, ODBC, OGDI, PGeo, PostgreSQL, REC, S57, SDTS, SQLite, TIGER, UK.NTF, VRT

Contours from DEM. Create a TMS tile structure, KML and simple web viewer.

Tools to analyze and visualize DEMs. Build a quick mosaic from a set of images. Rasterize vectors into raster file. Transform coordinates.

And much more…

Possible OGR Targets in QGIS: BNA, CSV, DGN, ESRI Shapefile, GML, GMT, GPX, GeoJSON, Interlis 1, Interlis 2, KML, MapInfo FIle, Memory, MySQL, ODBC, PostgreSQL, S57, SQLite, TIGER

Looks Cool, Now What?
Quantum GIS is a great place to start… If you've ever used a GIS, you'll feel right at home! http://qgis.org/ Windows users start with OSGeo4W http://trac.osgeo.org/osgeo4w/ Windows XP, Vista, etc. Includes GDAL/OGR, GRASS, MapServer, QGIS as well as many other packages (about 70 as of summer 2008) Mac Users: http://www.kyngchaos.com/software:unixport Linux Ubuntu Users: contact Paul or Joe

Tutorials / User Guides
QGIS: http://qgis.org/en/documentation/manuals.html PostGIS, OpenLayers, and more:
http://www.bostongis.com/

PostGIS:
http://postgis.refractions.net/documentation/manual-1.3/

GeoServer: http://docs.geoserver.org/1.7.x/user/ GRASS: http://grass.osgeo.org/wiki/GRASS_Help

Tutorials / User Guides
**OpenGeo Workshops**
Quite recent, http://blog.opengeo.org/2009/05/22/opengeo-where/ Looks really interesting ! ! !

• •

OpenLayers intro http://workshops.opengeo.org/openlayers/intro/ PostGIS workshop http://workshops.opengeo.org/postgis/contents.html OpenGeo Workshop: Installing GeoServer, Geoserver Basics, Working With PostGIS, Creating a Base Map, Working with OpenLayers, Google Earth http://workshops.opengeo.org/stack/

Want to get involved with Open Source GIS?

• Join the local California Chapter of OSGeo http://wiki.osgeo.org/wiki/California • For general help on getting started with OSGeo see http://www.osgeo.org/content/faq/getting_start • Contact Paul or Joe

Acknowledgements

http://www.gdal.org/gdal_utilities.html http://www.gdal.org/ogr/ogr_formats.html http://freegeographytools.com/2009/gis-related-software-for-the-

http://opengeo.org/publications/opensource-as-vertical/ http://apb.directionsmag.com/archives/1937-ArcGIS-9.2-uses-GD http://wiki.osgeo.org/wiki/Library Ticheler_2005.ppt http://www.redhat.com/about/whyopensource/ Defense Dept. committee has open-source leaning http://news.cnet.com/8301-13505_3-10037544-16.html

Final Thoughts
• In the spirit of Open Source – this presentation should really be viewed in OpenOffice.org Impress http://www.openoffice.org/ More about PostGIS http://opengeo.org/community/postgis/ . There’s also a book coming out http://www.manning.com/obe/ More about QGIS http://www.qgis.org/en/about-qgis/features.html More about GeoServer http://opengeo.org/community/geoserver/ , http:// geoserver.org/display/GEOS/What+is+GeoServer More about OpenLayers http://opengeo.org/community/openlayers/ Interesting discussion on PostgreSQL/PostGIS and ArcGIS Server 9.3: http://www.nabble.com/PostgreSQL-PostGIS-and-ArcGIS-Server-9.3-td17419730.html Very important white papers:
– – ‘The OpenGeo Architecture’ http://opengeo.org/publications/opengeo-architecture/ ‘open source as a disruptive technology’ WARNING: 25MB http://s3.cleverelephant.ca/2008-kansas-keynote.pdf

• • • • •

Final Thoughts (cont’d)
zigGIS: http://pub.obtusesoft.com/ zigGIS is an ArcGIS Desktop extension that allows you to
connect directly to spatial data stored in PostGIS. It is a lightweight option allowing you to centralize your spatial data into the leading open source spatially-enabled relational database. Using zigGIS, you are able to take advantage of the advanced analysis and cartographic tools of ArcMap while leveraging the superior spatial data storage and management capabilities of PostGIS. zigGIS enables you to view, analyze and edit your PostGIS spatial data from within ArcMap. The most exciting new feature of zigGIS is the introduction of multi-user editing of PostGIS data from within ArcMap. zigGIS now includes tools enabling you to check out your data and make edits with the native ArcMap tools. Best of all, zigGIS enables all of this capability for users of ArcView on up without the need for additional middleware.

http://www.spatiallyadjusted.com/2008/01/07/ziggis-20-view-edit-postgis-and-sql-server-2008-from-arcgis-des

An after-thought..
An after thought I had: Portable GIS was a really good introduction for myself (Joe), to one version of an Open Source GIS stack. Jo Cook will be releasing a new version of Portable GIS very soon in fact! I encourage you to look at it here:

http://www.archaeogeek.com/blog/portable-gis/

The philosophy behind this idea was to provide beginners with a ready-installed and configured stack of open source GIS tools that would run in windows without the need for emulation or a live cd. By taking out the often difficult installation and configuration, I hope to make it easier for beginners to get started with open source GIS, so they are not put off before it gets interesting and fun. Not only that, but having a fully self-contained GIS system may prove useful in a number of real-life situations. The current set of software includes: * Desktop GIS packages GRASS (windows native version 6.3: does not need cygwin), QGIS (version 0.10 with GRASS plugin) and gvSIG (version 1.1), * FWTools (GDAL and OGR toolkit, version 2.10) * XAMPPlite (Apache2/MySQL5/Php5), * PostgreSQL (version 8.2)/Postgis (version 1.1), * Mapserver, OpenLayers, Tilecache, Featureserver, and Geoserver web applications. If you don’t know about portable apps, well, they’re really cool. They run from a USB drive or folder without effecting or leaving behind any files/information into your computer registry/system. Explore them further at http://portableapps.com/