Open Source GIS Technology overview Presented by Aaron Racicot – GIS Programmer February 8, 2006
Outline Introduction Benefits/Limitations of Open Source Technology Overview - Platforms Desktop Server Embedded devices Workflows of interest Cartography - Desktop “paper map” publishing Cartography - Web map publishing Modeling - Web-Based real-time decision support Where is it all going? Where to go for more info
Who am I… B.S. Computer Science Split Personality Environmental advocate Telemark/BC Skier Rafting Guide Portland Mountain Rescue M.S. Environmental Science Open Source advocate Open Source User/Developer Embedded systems developer GIS Programmer
Ecotrust - Salmon Nation
Why Open Source? “Free software” is a matter of liberty, not price. Free Software!
Freedom
Benefits/Limitations of Open Source Benefits Software cost = $0 Source code is available and modifiable User and development communities flourish Development cycles are VERY fast Limitations Total cost is NOT = $0 Many applications are not as polished as the proprietary counterparts Compatibility with proprietary software can be an issue
Software Stacks… Desktop Generic StackFOSS4G StackGrouping ApplicationQGis, Grass, OSSIM, JUMP, UDig User Interface Application Dev. Environment Eclipse, QT, OpenGL High Level UtilitiesGeoTools, PostGISData Serving High Level Scripting Languages PHP, PERL, Python Low Level UtilitiesShplib, GEOS, OGR/GDAL, PostGIS, R-Statistics, GMT Data Processing Low Level Languages C, C++, Java, FortranSystem Software Operating System Linux, Darwin, Cygwin Hardware Drivers bit processor drivers Desktop Software Stack
OS GIS – Desktop Applications GRASS GIS
Software Stacks... Server Server Software Stack Generic StackFOSS4G StackGrouping Client Side BrowserFirefox, Safari, NetscapeUser Interface Client Side Scripting Java Script, Java Applets ~~~~~~~~~~~WEB~~~~~~~~~~~ Server Side Scripting PHP, Python, PERLData Serving High Level UtilitiesMapserver, PCO, Grass Low Level UtilitiesShplib, GEOS, OGR/GDAL, PostGIS, R-Statistics, GMT Data Processing High Level Scripting Languages PHP, PERL, Python Low Level Languages C, C++, Java, FortranSystem Software Operating System/Drivers Linux, Darwin, Cygwin Hardware Drivers32-64 bit processor drivers
OS GIS - Server Tools GRASS GIS GDAL/OGR R-Statistics
OS GIS Important considerations Platform support (i.e. UNIX, Linux, Windows, Mac OS) Speed and efficiency Data format support Standards for interoperability (OGC specs) Areas for improvement Separate packages all with their own strengths Linking them together is often hard Write support is often not supported for proprietary formats Ability to integrate into proprietary systems is limited (i.e. can not link PostGIS database to ArcMap…yet) Requires multiple installs and maintenance User interfaces are often the last part of development Harder to produce traditional “paper maps”
Alternatives! ArcReader ArcMap/ArcGIS ArcINFO/ArcGRID ArcPad ArcSDE ArcIMS ArcGIS Server VB, Python UDig,Jump,GRASS,QGis,OSSI M GRASS, OSSIM ???? PostGIS Mapserver GRASS PHP, Python, Perl, C#.net, etc… Viewing Cartography Analysis Devices Database Web Spatial Server Scripting
Workflows of Interest Most GIS applications have a similar work flow pattern… Gather spatially explicit data Process that data to suit the user needs Produce outputs useful to the end user
Work Flow – Paper Map Publishing Data Gathering Data Formatting Data Processing Map Formatting Map Production User Request User Response
Work Flow – What OSGIS is good at Data Gathering Data Formatting Data Processing Map Formatting Map Production User Request User Response Great at data processing but poor at formatting and creating paper maps Paper Map Publishing
Example – Paper Map Publishing QGISArcMap
Work Flow – Web Map Publishing Map Formatting Map Production Web User Request Web User Response Static Data Storage Web Services
Work Flow – What OSGIS is good at Map Formatting Map Production Web User Request Web User Response Static Data Storage Web Services Great at all aspects of traditional web-based mapping Web Map Publishing
Examples – Web Map Publishing Custom DHTML/JavaScript Chameleon
Examples – Web Map Publishing Ka-Map DM Solutions Cartoweb3 CampToCamp
Work Flow – Real-Time Web DST Web User Request Web User Response Static Data Storage Web Services Data Gathering Data Formatting Data Processing Map Formatting Map Production Real-Time Web Decision Support Tools
Work Flow – What OSGIS is good at Web User Request Web User Response Static Data Storage Web Services Data Gathering Data Formatting Data Processing Map Formatting Map Production The Problem Is The Arrows! Connecting a web request to server side GIS analysis is tricky Real-Time Web Decision Support Tools
Example – Real-Time Web DST Siuslaw Watershed Restoration Initiative
Work Flow – Real-Time Web DST Data Gathering Data Formatting Data Processing GRASS Mapserver Mapserver on the front end… GRASS on the back end…
Example – OSGIS in use… QGIS and GRASS as a desktop supplement QT as an desktop application framework PostGIS to store vector data layers Mapserver as a web-based front end Chameleon Interface as a client side web interface GRASS as a server side GIS for DST development OGR/GDAL to pre-process vector and raster data R-Statistics and GMT for graphing and statistics
Example - OCEANSystem Chameleon Mapserver R-Statistics User driven… Web interactive tools… GIS analytical computing… PostGISGRASS
Ecotrust Example - OCEANSystem QGIS/GRASS
Where is it all going? Integration of OS software across organizations “Google” type interfaces (smooth user experience) –AJAX driven –Streaming media –Seamless datasets Large datasets require more pre-processing Pressure on large private companies to become more responsive to end user needs Integration of OSGIS with proprietary software – required for migration path… Start of services based business…
The Future of OSGIS QGIS/GRASS GIS Web-Based Mapserver R-Statistics GMT Fully Integrated Open-Source GIS QGIS/GRASS GIS – Fully functional server GIS doing the heavy lifting. UMN Mapserver – Making data accessible via the web. Geo- spatial server viewed through a web browser. Taking our vision to a growing audience. Adding the analytical glue to make smart decisions based upon sound GIS analysis. Making GIS analysis accessible and affordable
Where to go for more info OSGIS Maptools - FreeGIS - Open Source GIS - Standards OGC - Desktop GRASS - QGIS - UDIG - JUMP – OpenEV - Server/Web Mapserver - GRASS - PostGIS - Tools Remote Sensing - GDAL/OGR - PROJ.4 -
The End Tool Screen Shots Follow
Backup - GRASS
Backup - QGIS
Backup - OSSIM
Backup - UDIG
Backup - JUMP
Backup – R-Statistics
Backup – PostGIS Geometry WKT Geometry