Difference between revisions of "FOSS4G Software List"

From stgo
Jump to: navigation, search
(Complete SDI Packages)
 
(63 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
----
 
----
  
This an overview of major free GIS software projects. It is a personal selection aiming at listing only those projects that seem to have a stable user community or have potential to establish a wider user base. The content of this page is part of a manuscript that we submit end of January 2012: S. Steiniger and A.J.S. Hunter: ''"The 2012 Free and Open Source GIS Software Map  – A Guide to facilitate Research, Development and Adoption"''.
+
This is an overview of major free GIS software projects. It is a personal selection aiming at listing only those projects that seem to have a stable user community or have potential to establish a wider user base. The content of this page (until 2012) is part of a paper published in Computers Environment and Urban Systems: S. Steiniger and A.J.S. Hunter: ''"The 2012 Free and Open Source GIS Software Map  – A Guide to facilitate Research, Development and Adoption"'' ([http://sourceforge.net/projects/mentaer.u/files/pubs/fosgismap_sstein_v9_web.pdf/download download pdf] - ver. 3.Oct.2012).
  
The categories of software used are based on that presented in Steiniger and Weibel (2010): "GIS software" [http://www.sage-ereference.com/geography/Article_n518.html].
+
The categories of software used are based on those presented in Steiniger and Weibel (2010): "GIS software" [http://www.sage-ereference.com/geography/Article_n518.html].
  
To test some of the software below we recommend the OSGeo Live DVD (http://live.osgeo.org).
+
To test some of the software below we recommend the '''OSGeo Live DVD''' (http://live.osgeo.org).
 +
 
 +
For updates to the list you can send an email to sstein=.at.=geo.uzh.ch.
 +
However, I '''keep myself informed''' by reading the [http://tinyletter.com/jamesfee/letters SpatialTau Newsletter] by James Fee.  
  
last update to this page was made on 13. Jan. 2012
 
 
[[File:Projectsmap_v1_150dpi_grey.jpg|300px|thumb|right|A selection of FOS GIS Software Projects 2011]]  
 
[[File:Projectsmap_v1_150dpi_grey.jpg|300px|thumb|right|A selection of FOS GIS Software Projects 2011]]  
  
Line 16: Line 18:
 
* OpenJUMP  - http://www.openjump.org
 
* OpenJUMP  - http://www.openjump.org
 
* Quantum GIS - http://www.qgis.org
 
* Quantum GIS - http://www.qgis.org
* ILWIS Open - http://www.ilwis.org (see also the page by [https://52north.org/communities/ilwis/ 52 North] for latest releases)  
+
* ILWIS Open - http://www.ilwis.org (see also the page of [https//52north.org/communities/ilwis/ 52 North] for latest releases)  
 
* uDig - http://udig.refractions.net  
 
* uDig - http://udig.refractions.net  
 
* SAGA - http://www.saga-gis.org
 
* SAGA - http://www.saga-gis.org
Line 30: Line 32:
 
* Kalypso - http://kalypso.bjoernsen.de
 
* Kalypso - http://kalypso.bjoernsen.de
 
* GearScape - http://gearscape.fergonco.es/
 
* GearScape - http://gearscape.fergonco.es/
* Spring GIS - (not yet open source) http://www.dpi.inpe.br/spring/  
+
* Spring GIS - (not yet open source) http://www.dpi.inpe.br/spring/
  
 
== Spatial Data Base Managment Systems ==
 
== Spatial Data Base Managment Systems ==
mayor:
+
major:
 
* PostGIS for PostgreSQL - http://postgis.refractions.net
 
* PostGIS for PostgreSQL - http://postgis.refractions.net
 
* MySQL - http://forge.mysql.com/wiki/GIS_Functions
 
* MySQL - http://forge.mysql.com/wiki/GIS_Functions
 
* SpatiaLite for SQLite - http://gaia-gis.it/spatialite/
 
* SpatiaLite for SQLite - http://gaia-gis.it/spatialite/
  
other:
+
others:
 
* JASPA for PostgreSQL and(!) H2 - http://jaspa.upv.es/blog/)
 
* JASPA for PostgreSQL and(!) H2 - http://jaspa.upv.es/blog/)
 
* Hatbox for H2 - http://hatbox.sourceforge.net
 
* Hatbox for H2 - http://hatbox.sourceforge.net
 
* Hibernate Spatial for Hibernate - http://hibernatespatial.org
 
* Hibernate Spatial for Hibernate - http://hibernatespatial.org
 
* INGRES - http://community.ingres.com/wiki/IngresGeospatial  
 
* INGRES - http://community.ingres.com/wiki/IngresGeospatial  
 +
* Rasdaman (for multi-dimensional rasters) - http://rasdaman.com/
  
 
NoSQL (see http://nosql-database.org/):
 
NoSQL (see http://nosql-database.org/):
Line 54: Line 57:
 
* Zoo - http://www.zoo-project.org
 
* Zoo - http://www.zoo-project.org
 
* GeoServer - http://www.geoserver.or
 
* GeoServer - http://www.geoserver.or
* WebGEN - http://aci.ign.fr/web_service.php
+
* WebGEN - new: http://github.com/TUD-IfC/WebGen-WPS - old: http://aci.ign.fr/web_service.php
  
== Mobile GIS ==
+
== Mobile GIS and Survey Tools ==
 
* gvSIG Mobile - http://gvsig.org/web/projects/gvsig-mobile
 
* gvSIG Mobile - http://gvsig.org/web/projects/gvsig-mobile
 
* Geopaparazzi - see Android Market and http://code.google.com/p/geopaparazzi/
 
* Geopaparazzi - see Android Market and http://code.google.com/p/geopaparazzi/
Line 64: Line 67:
 
* tangoGPS - http://www.tangogps.org
 
* tangoGPS - http://www.tangogps.org
 
* FoxtrotGPS - http://www.foxtrotgps.org
 
* FoxtrotGPS - http://www.foxtrotgps.org
 +
 +
further (mobile phone) survey applications:
 +
* Kobo Toolbox - http://www.kobotoolbox.org/
 +
* OpenDataKit - http://opendatakit.org/
 +
* EpiCollect - http://www.epicollect.net/
  
 
== Exploratory Spatial Data Analysis Software ==
 
== Exploratory Spatial Data Analysis Software ==
Line 71: Line 79:
 
* R - http://www.r-project.org
 
* R - http://www.r-project.org
 
* GeoVista Studio - http://geovistastudio.psu.edu
 
* GeoVista Studio - http://geovistastudio.psu.edu
 +
* HiDE - Hierarchical Data Explorer - http://www.gicentre.org/hide/
 +
 +
not integrated tools:
 +
* [http://github.com/geopandas/geopandas GeoPandas] + [http://ipython.org/notebook.html iPython Notebook]
 +
*: => see also use of GeoPandas and Leaflet together with [http://github.com/synthicity/urbansim UrbanSim] (a video: http://www.youtube.com/watch?feature=player_embedded&v=KzTtCvSmUxY )
  
 
== Remote Sensing Software ==
 
== Remote Sensing Software ==
Line 76: Line 89:
 
* InterImage - http://www.lvc.ele.puc-rio.br/projects/interimage/
 
* InterImage - http://www.lvc.ele.puc-rio.br/projects/interimage/
 
* Opticks - http://www.opticks.org
 
* Opticks - http://www.opticks.org
* GDL for IDL - http://gnudatalanguage.sourceforge.net/
+
* GDL (free IDL) - http://gnudatalanguage.sourceforge.net/
* ILWIS - http://52north.org/communities/ilwis/  
+
* ILWIS - http://52north.org/communities/ilwis/
 +
* e-Foto - http://sourceforge.net/projects/e-foto/
 +
* GeoDMA - http://sourceforge.net/apps/mediawiki/geodma/index.php?title=Main_Page
 +
* leoworks - http://leoworks.asrc.ro/
  
 
== Software Libraries and Extensions ==
 
== Software Libraries and Extensions ==
 
=== Data input/output and conversion libraries ===
 
=== Data input/output and conversion libraries ===
 +
* GDAL & OGR - http://www.gdal.org
 +
* FDO - http://fdo.osgeo.org
 +
* GDMS - http://trac.orbisgis.org/t/wiki/devs/GDMS
 +
* GeoTools - http://www.geotools.org
 +
* SharpMap - http://codeplex.com/SharpMap/
 +
* LibLAS - for Lidar data, http://www.liblas.org
 +
* JEQL - an ETL tool, http://tsusiatsoftware.net/jeql/main.html
 +
* GeoKettle - an ETL tool, http://www.geokettle.org
  
 
=== Geometry libraries ===
 
=== Geometry libraries ===
 +
* JTS Topology Suite and its ports
 +
** JTS (JAVA) - http://tsusiatsoftware.net
 +
** GEOS (C++) - http://geos.refractions.net
 +
** NetTopologySuite (.NET) - http://code.google.com/p/nettopologysuite/
 +
* CGAL - http://www.cgal.org
 +
* CGL / Boost -  http://geometrylibrary.geodan.nl
  
 
=== Projection libraries ===
 
=== Projection libraries ===
 +
* Proj.4 (C/C++) - http://trac.osgeo.org/proj/
 +
* Proj4J (Java) - http://trac.osgeo.org/proj4j/
 +
* deegree 3 - http://wiki.deegree.org/deegreeWiki/deegree3/CRSSubsystemDevelopment
 +
* Proj.Net - http://codeplex.com/ProjNET/
 +
* Generic Mapping Tools (GMT) -  also for beautiful maps, http://gmt.soest.hawaii.edu
  
 
=== Geographic data processing and analysis libraries ===
 
=== Geographic data processing and analysis libraries ===
 +
* Sextante - known to work with gvSIG, OpenJUMP, GRASS and ArcGIS, http://www.sextantegis.com - and since Summer 2012 available as plugin for Quantum GIS
 +
* ImageJ - http://rsbweb.nih.gov/ij/
 +
* Orfeo Toolbox - http://www.orfeo-toolbox.org
 +
* TerraLib - a spatial DBMS and more, http://www.terralib.org
 +
* R - http://www.r-project.org
 +
* PAL - cartographic label placement, http://pal.heig-vd.ch
 +
* for Synthetic Aperture Radar (SAR) image tools see Simonetto and Follin (2012). Note, I can send a copy of the manuscript.
 +
* CartoPy - http://scitools.org.uk/cartopy/
  
 
=== Other useful libraries ===
 
=== Other useful libraries ===
Line 96: Line 139:
 
* Boost (C/C++) - http://www.boost.org
 
* Boost (C/C++) - http://www.boost.org
  
=== General Frameworks for own GIS Development ==
+
=== General Frameworks for own GIS Development ===
 
* GeoTools for Java - http://www.geotools.org
 
* GeoTools for Java - http://www.geotools.org
 
* OpenMap for Java - http://openmap.bbn.com
 
* OpenMap for Java - http://openmap.bbn.com
Line 103: Line 146:
 
* DotSpatial for C++/.NET - by the MapWindow GIS developers, http://dotspatial.codeplex.com
 
* DotSpatial for C++/.NET - by the MapWindow GIS developers, http://dotspatial.codeplex.com
 
* QGIS for C++ & Python - http://www.gqis.org
 
* QGIS for C++ & Python - http://www.gqis.org
 +
* Fiona and Rasterio for Python development - http://pypi.python.org/pypi/Fiona/, http://github.com/mapbox/rasterio
 +
* CartoPy for Python development- http://scitools.org.uk/cartopy/
  
 
== Web Map Server (OGC WMS, WFS etc.) ==
 
== Web Map Server (OGC WMS, WFS etc.) ==
 +
 +
see also the OSGeo server benchmarking docs: http://wiki.osgeo.org/wiki/Benchmarking_2011
 +
 +
major:
 +
* MapServer - http://www.mapserver.org
 +
* GeoServer - http://www.geoserver.org
 +
* deegree - http://wiki.deegree.org
 +
* MapGuide OpenSource - http://mapguide.osgeo.org
 +
* QGIS mapserver - http://karlinapp.ethz.ch/qgis_wms
 +
 +
other:
 +
* Mapnik - more or less a renderer, http://www.mapnik.org
 +
* TinyOWS -  http://www.tinyows.org
 +
 +
Rest-based:
 +
* GeoServer - http://www.geoserver.org
 +
* FeatureServer - http://www.drupal.org/project/fserver
 +
* GeoRest - http://code.google.com/p/georest
 +
 +
== MetaData and Registry ==
 +
* GeoNetwork - http://geonetwork-opensource.org
 +
* deegree - http://wiki.deegree.org
 +
* MDweb - http://www.mdweb-project.org
 +
 +
editor:
 +
* CADMEdit - http://catmdedit.sourceforge.net
  
 
== Web Map Application Development Frameworks ==
 
== Web Map Application Development Frameworks ==
 
=== Map Viewer ===
 
=== Map Viewer ===
 
major:
 
major:
 +
* OpenLayers - http://www.openlayers.org
 +
* Leaflet - http://leaflet.cloudmade.com (by the OpenStreetMap founders)
 +
* OpenScales - http://www.openscales.org
 +
* ModestMaps - http://modestmaps.com (used by MapBox)
  
 
others:
 
others:
* ModestMaps
+
* SLMapViewer - SilverLight map viewer for MapServer, http://slmapviewer.codeplex.com/
* OpenZoom (image viewer for very large images)
+
* OpenZoom - image viewer for very large images, http://www.openzoom.org/
 +
 
 +
3D:
 +
* ReadyMap - http://readymap.com/
 +
* OpenWebGlobe - http://wiki.openwebglobe.org/
 +
* NASA WorldWind - http://www.goworldwind.org/
 +
* Cesium - http://cesium.agi.com/
 +
 
 +
=== General Map Application Development Frameworks (Packages) ===
 +
* MapFish - includes OpenLayers and GeoExt, http://www.mapfish.org
 +
* GeoMoose - http://www.geomoose.org
 +
* GeoMajas - http://www.geomajas.org
 +
* MapBender - http://www.mapbender.org
 +
* MapStraction - allows switching between mapping frameworks (e.g. Google, OpenStreetMap, Yahoo, Bing etc.), http://www.mapstraction.com
 +
* GeoExt - http://www.geoext.org
 +
* SharpMap for .NET - http://codeplex.com/SharpMap
 +
* i3Geo - http://gvsig.org/web/projects/i3Geo
 +
* GeoNode - a full web-publishing Stack by OpenGeo that  includes OpenLayers, GeoEx, GeoServer, GeoNetwork, etc - http://geonode.org/
 +
 
 +
=== Web Map Rendering & Tiling ===
 +
* Mapnik - http://mapnik.org/
 +
* TileMill - http://mapbox.com/tilemill/
 +
** TileMill 1 - raster tiles
 +
** TileMill 2 - vector tiles
 +
serving tiles:
 +
* TileCache - http://www.tilecache.org
 +
* TileServer - http://github.com/klokantech/tileserver-php/
 +
* TileStream - http://github.com/mapbox/tilestream
 +
 
 +
== Complete SDI Packages ==
 +
* GeoNode - http://www.geonode.org (base: GeoServer, Postgis, pycsw, OpenLayers, web framework: python: Django, Angular)
 +
* Deegree - http://www.degree.org (base: degree websever)
 +
* IGO - Infrastructure Géomatique Ouverte - http://igouverte.org/english/ (base: MapServer, Postgis, Zoo Project , OpenLayers, web framework: php: Phalcon)
 +
* perhaps: Mapbender (http://www.mapbender.org)
 +
 
 +
== GIS 2.0 a.k.a GIS on the web ==
 +
 
 +
=== GIS 2.0 Tools and Services ===
 +
* MapBox Turf - javascript GIS library - http://turfjs.org/ & http://www.mapbox.com/blog/turf-gis-for-web-maps/
 +
* MapBox/OpenStreetMap iD - web editor - http://github.com/openstreetmap/iD
 +
* CartoDB - creating thematic maps online - http://www.cartodb.com
 +
 
 +
=== Other useful tools for GIS 2.0 development ===
 +
 
 +
libraries:
 +
* [http://www.d3js.org D3.js] - a powerful diagramming/visualisazion lib
 +
* [http://angularjs.org Angular.js] or Backbone.js - to develop Single Page Applications (SPAs)
 +
* [http://facebook.github.io/react/ React] - the V(iew) in MVC develpment?
 +
* and [http://nodejs.org/ node.js] ... of course
 +
 
 +
development tools:
 +
* Coffee script  for object-oriented javascript programming - coffeescript.org
 +
* Sublime text editor - www.sublimetext.com
 +
* GitLab - storing code on a local Git server.
  
=== General Map Application Development Frameworks ===
+
== Geospatial web data formats ==
 +
* GeoJSON spec - http://geojson.org
 +
* [http://github.com/mbostock/topojson/wiki TopoJSON] - an extension of [http://geojson.org GeoJSON] that encodes topology
 +
* [http://github.com/jywarren/cartagen/wiki CartaGen] - a vector-based, client-side framework for rendering maps in native HTML 5.
 +
* Vector Tiles:
 +
** MapBox VectorTiles - http://github.com/mapbox/mapnik-vector-tile (Dane Springmeier)
 +
** see also Thunderforest Lightning VectorTiles presentation using tilelive.js by MapBox: https://www.youtube.com/watch?v=NoLJHgqDCzc (http://www.thunderforest.com/lightning/)
 +
** 2014/2015: looking at Apple Maps App (on iPad) vector data are transferred as well, not sure though if it is "tiled".
 +
* GeoRSS spec - www.georss.org
 +
* check the [http://www.opengeospatial.org/standards/ Open GeoSpatial Consortium] webpages for further web format standards
 +
** GML
 +
** KML
 +
** CityGML
 +
** NetCDF
 +
* and related OGC services
 +
** WMS
 +
** WFS
 +
** WCS
 +
** SOS
 +
** WPS
  
=== Tiling ===
+
== Spatial Analysis and Processing in Python ==
* TileMill - XXX
+
A lot of desktop GIS allow to custom functions with Python: notably QGIS, gvSIG (in Jython), OpenJUMP (in Jython). However, there are couple of tools/toolboxes to look at. Maybe start with [http://www.talyarkoni.org/blog/2013/11/18/the-homogenization-of-scientific-computing-or-why-python-is-steadily-eating-other-languages-lunch/ this blog entry by TalYarkoni] and the comments on this blog entry when searching for some analysis tools.
 +
* [http://store.continuum.io/cshop/anaconda/ Anaconda] - a distribution of python tools, including:
 +
** [http://ipython.org/ iPython] a nice web-based interface to program and comment data analysis in python
 +
** NumPy
 +
** SciPy
 +
** Pandas - to read data from files, subset and analyse them
 +
** MatplotLib
 +
** Bokeh
 +
* on the '''geodata''' side of things exist:
 +
** [http://toblerity.org/fiona/ Fiona] ([https://github.com/Toblerity/Fiona github]) - vector data processing
 +
** [http://sgillies.net/blog/2013/11/24/introducing-rasterio.html Rasterio] ([https://github.com/mapbox/rasterio github]) - raster data processing
 +
** [http://toblerity.org/shapely/project.html Shapely] - for manipulation and analysis of geometric objects in the Cartesian plane
 +
** [http://geoscript.org/py/ GeoScript]
 +
** [http://scitools.org.uk/cartopy/ Cartopy] by the UK Met Office - which handles projections, shapefile reading, etc.
 +
** [http://scitools.org.uk/iris/index.html Iris] by the UK Met Office - for analysis and viz of meteorological and oceanographic data (e.g. netCDF)
 +
* other toolboxes:
 +
** [http://scikit-learn.org scikit-learn] - a machine learning toolbox with algorithms for classification, regression, clustering, etc.
 +
** [http://scrapy.org/ Scrapy] and [http://www.crummy.com/software/BeautifulSoup/ BeautifulSoup] - for (web) document parsing and crawling

Latest revision as of 11:56, 17 August 2015

>> return to Open Source GIS Software


This is an overview of major free GIS software projects. It is a personal selection aiming at listing only those projects that seem to have a stable user community or have potential to establish a wider user base. The content of this page (until 2012) is part of a paper published in Computers Environment and Urban Systems: S. Steiniger and A.J.S. Hunter: "The 2012 Free and Open Source GIS Software Map – A Guide to facilitate Research, Development and Adoption" (download pdf - ver. 3.Oct.2012).

The categories of software used are based on those presented in Steiniger and Weibel (2010): "GIS software" [1].

To test some of the software below we recommend the OSGeo Live DVD (http://live.osgeo.org).

For updates to the list you can send an email to sstein=.at.=geo.uzh.ch. However, I keep myself informed by reading the SpatialTau Newsletter by James Fee.

A selection of FOS GIS Software Projects 2011

Desktop GIS

major:

others:

Spatial Data Base Managment Systems

major:

others:

NoSQL (see http://nosql-database.org/):

Server GIS (OGC WPS)

Mobile GIS and Survey Tools

viewers for smart phones:

further (mobile phone) survey applications:

Exploratory Spatial Data Analysis Software

not integrated tools:

Remote Sensing Software

Software Libraries and Extensions

Data input/output and conversion libraries

Geometry libraries

Projection libraries

Geographic data processing and analysis libraries

Other useful libraries

General Frameworks for own GIS Development

Web Map Server (OGC WMS, WFS etc.)

see also the OSGeo server benchmarking docs: http://wiki.osgeo.org/wiki/Benchmarking_2011

major:

other:

Rest-based:

MetaData and Registry

editor:

Web Map Application Development Frameworks

Map Viewer

major:

others:

3D:

General Map Application Development Frameworks (Packages)

Web Map Rendering & Tiling

serving tiles:

Complete SDI Packages

GIS 2.0 a.k.a GIS on the web

GIS 2.0 Tools and Services

Other useful tools for GIS 2.0 development

libraries:

  • D3.js - a powerful diagramming/visualisazion lib
  • Angular.js or Backbone.js - to develop Single Page Applications (SPAs)
  • React - the V(iew) in MVC develpment?
  • and node.js ... of course

development tools:

  • Coffee script for object-oriented javascript programming - coffeescript.org
  • Sublime text editor - www.sublimetext.com
  • GitLab - storing code on a local Git server.

Geospatial web data formats

Spatial Analysis and Processing in Python

A lot of desktop GIS allow to custom functions with Python: notably QGIS, gvSIG (in Jython), OpenJUMP (in Jython). However, there are couple of tools/toolboxes to look at. Maybe start with this blog entry by TalYarkoni and the comments on this blog entry when searching for some analysis tools.

  • Anaconda - a distribution of python tools, including:
    • iPython a nice web-based interface to program and comment data analysis in python
    • NumPy
    • SciPy
    • Pandas - to read data from files, subset and analyse them
    • MatplotLib
    • Bokeh
  • on the geodata side of things exist:
    • Fiona (github) - vector data processing
    • Rasterio (github) - raster data processing
    • Shapely - for manipulation and analysis of geometric objects in the Cartesian plane
    • GeoScript
    • Cartopy by the UK Met Office - which handles projections, shapefile reading, etc.
    • Iris by the UK Met Office - for analysis and viz of meteorological and oceanographic data (e.g. netCDF)
  • other toolboxes:
    • scikit-learn - a machine learning toolbox with algorithms for classification, regression, clustering, etc.
    • Scrapy and BeautifulSoup - for (web) document parsing and crawling