GSoC/GCI Archive
Google Summer of Code 2013

OSGeo - Open Source Geospatial Foundation

Web Page:

Mailing List:


 OSGeo is a non-profit organization serving as an umbrella organization for the Open Source Geospatial community in general and 30 code projects in particular:

Web Mapping: deegree, geomajas, GeoMoose, GeoServer, Mapbender, MapBuilder, MapFish, MapGuide Open Source, MapServer, OpenLayers, ZOO-Project

Desktop Applications: GRASS GIS, Quantum GIS, gvSIG, Opticks, OSSIM

Geospatial Libraries: FDO, GDAL/OGR, GEOS, GeoTools, MetaCRS, PostGIS, rasdaman

The following are sub-projects of MetaCRS: CS-Map, GeoTIFF/libgeotiff, PROJ.4, Proj4J, Proj4js,

Metadata Catalogs: GeoNetwork, pycsw

Other (non-code) Projects: Public Geospatial Data, Education and Curriculum, and a Live Demo DVD where you can try out all of the above and see what you like.

We are also hosting a number of other geospatial projects under our GSoC umbrella this year: OpenStreetMap, Mapnik, istSOS, pgRouting, uDig

Happy Mapping!


  • A partitioned approach to on demand increment graph assembly for pgRouting. pgRouting has been working towards providing routing functionality on a PostGis/PostgreSql Geo spatial database. It already has support for shortest path algorithm like astar ,dijkstra , tdsp and trsp .But for a very large network, routing becomes time consuming. Network partitioning is one such way which can prove to be helpful in improving the overall time efficiency of routing querries. The main idea here is to first partition the whole network using a Quad tree approach and when the shortest path is computed these partitions are loaded on demand. hence , there is an on demand incremental graph generation while the shortest path is being computed.
  • Add Raster Format to scripting in gvSIG The project aim is to implement support for GIS raster data formats in gvSIG 2.0 scripting framework. The scripting extension will be able to let users perform several raster analysis functions (geoprocessing, filters, flow direction analysis etc). By the time of completion of this project, one can work on a wide range of GIS raster data formats in gvSIG 2.0 scripting framework.
  • Adding Voronoi Diagrams to GEOS JTS is an API of spatial predicates written in java that has function/methods and algorithm implemented for processing geometry. GEOS is a port for JTS apis from Java to C++. The project is to provide the functionality of constructing Voronoi diagrams by porting it from JTS to GEOS.
  • Create a title block from the library in the Layout of gvSIG GvSIG as GIS desktop thick client, it seems a viable and free, but limited in terms of Layout, so I plan to improve the use of the Layout of this application to extend the functionality of gvSIG Layouts, add to a library of configurable title blocks (this functionality is required through the mailing list of users of gvSIG). The aim is to reduce repetitive and tedious work of creating title blocks in the designs, which is so limited in the current version of gvSIG. It will be possible to configure the text, images, divisions, size, font ... and save them with a owner format (GVB) for storage and use in any other Layout in gvSIG.
  • Creating a stable and improved OpenTripPlanner Android client for walk, bike, and transit routing based on OpenStreetMap and GTFS data The project will create a stable and improved version of the OpenTripPlanner (OTP) Android client, since the current client version crashes frequently. The client should allow walk, bike and transit routing. Improvements of the client will extend current basic capabilities by accessing OTP server functions such as bike routing parameter setting, and selection of different route types (fastest, shortest, fewest transfers, flattest). Also functions that allow to explore stops (using OSM data) and transit network information, such as the display of complete routes, are new features that should be worked on.
  • Design and implement an API for tiled vectorial support of POIProxy for gvSIG Mini The idea consists in creating a brand new POIProxy client based on gvSIG Mini that will provide access to a set of geo-location services. Technically this project pretends to provide gvSIG Mini with a simple API to support POIProxy services. The API will offer transparent support to load a geo-located service, make requests as the user navigates the map, cache data (into memory and disk in standard GeoJSON) to speed up the data-load, and build the user interfaces to show extra data, such as additional info, media (images, video), etc. The user will have the chance to load one or more POIProxy layers that will make requests to geo-location services as the user navigates the map. That functionality will offer social and contextual information related to the location of the user. On the other hand, gvSIG Mini don’t provide any geocoding nor reverse-geocoding service. POIProxy is a good candidate to provide those services.
  • Enhancements to the DebianGIS and UbuntuGIS packages and repositories Providing update and enhancement to the UbuntuGIS package repositories (stable and unstable) and creating a new Debian repository containing the latest version of the OSGeo softwares (the same concept as what is done by UbuntuGIS, but for the next debian stable release).
  • Extend OSGeo4W Installer Main goal for this project is develop functionalities in order to ask to the end users by an EULA license for proprietary libraries and building the majority of OSGeo components to x86-64 bits on Windows as well as improve the current OSGeo4W installer.
  • GRASS GIS Interactive Scatter Plot Tool Goal of the project is development of interactive scatter plot tool, which will be integrated into wxGUI. The tool will improve GRASS GIS supervised classification workflow. Also it will be useful for raster data analysis in general. Additional goal is extension of GRASS GIS plotting capability by integration of Matplotlib plotting library into wxGUI.
  • Hydrologically controlled shallow landslides - a statistical forecasting algorithm for the uDig Spatial Toolbox The goal of the project is developing an algorithm to compute likelihood of occurrence of a specific kind of landslides, relying on the facilities offered by the uDig Spatial Toolbox. The deliverable will so be an highly usable, scientifically up-to-date tool, available in a standard spatial processing environment: a great value for the target end user.
  • Implementation of VRP Solution in pgRouting Vehicle Routing Problem (VRP) involves making use of a fleet of vehicles to visit a set of locations. This problem displays considerable commercial relevance and is particularly pertinent to distribution, collection and courier operations. In this project I will implement a TABU search based algorithm for solving VRP in the pgRouting framework. It will solve VRP instances involving one depot, multiple vehicle with capacity and cost and multiple customer with different location and demand.
  • Java Surface Model Library/API For GeoTools As part of this project a Java module will be developed for GeoTools that will provide a convenient API for the creation and analysis of TIN surface data. The TIN models will be constructed in memory from input JTS geometries. Breaklines will be supported. If time allows, basic analysis such as the definition of watersheds and the creation of hillshades will be supported.
  • Object based Image Fusion and Change Detection tools for Opticks. I want to implement applications of the Object based Image Analysis approach. I will implement an object based approach for Image fusion, Change detection and missing data filling.
  • Oceanography Circulatory model using PyOSSIM and PlanetSasha for OSSIM The main idea is to develop an intuitive tool to read-process-display online data sources, available from geo-data portal. The tool will be able to decode the get capabilities and execute spatio temporal queries on netcdf resources. All processing will be done in python using PyOSSIM, while PlanetSasha will be used as a frontend.
  • OSM: Cached API proxy A proxy which can be used instead of the main API, but which will answer read-only queries locally when possible, taking load off of the main API servers and improving response times while allowing for horizontal scaling.
  • Profile dataset support for istSOS Short description: Sensor Web Enablement (SWE) aim is to define a unique environment where specialists and users can search, access, and process data observed by a multitude of heterogeneous sensor networks. In Oceanography common environmental measurements (e.i. current, temperature, chlorophyll, pH, dissolved oxygen, and depth) are usually taken with a CTD profiler or with a GLIDER (AUV - Autonomous Underwater Vehicle). I propose the istSOS implementation of a “profile” data structure to manage all data profile ideal from fixed or mobile sensor.
  • Repository and Tool for Resource Sharing in Quantum-GIS The project aims to implement a web application to act as a central repository for sharing Quantum GIS resources like symbols, scripts, composer templates and models and integrate the application with QGIS through a plugin for easy sharing.
  • ScribeUI: A GUI and tools for MapServer mapfile editing Scribe is a tool making the edition of large mapfiles easier by helping with the management of zoom levels and letting you define and use variables, two features that greatly simplify mapfile management A GUI currently exists to interact with Scribe, but it is not finished, it still has bugs and does not fully support basemaps or regular mapfiles. This project is to finish the UI for Scribe, by fully supporting mapfile and basemaps filetypes, refining the GUI, test and fix bugs, clean the code behind and then package and publish the project as an open source utility accessible to all MapServer users, and user-friendly enough to appeal to both newbies and experienced mapfile developers looking for a productivity tool.
  • Support for UTFGrid output in MapServer The goal of this project is to enable MapServer to produce UTFGrid output.
  • Surveying mobile application for OpenStreetMap mappers (Field Papers-like) The idea is to create an Android application, designed specifically for gathering OSM-related data. It will be something like modern Field Papers map, without the need to print and scan anything and with ability to draw anything by hand, place markers, photos, and to upload the data to remote server for further incorporation into osm database. Also an ability to work without GPS is proposed, just saving notes with high-precision timestamps.
  • Temporal GIS Algebra for raster and vector data in GRASS Using the TGRASS GIS API to create spatio-temporal vector and raster algebra to process massive vector and raster datasets based on their spatio-temporal relationships.