Introduction

Since the beginning of the new century a dramatic change has characterized the evolution of GeoWeb, defined as the collection of services and data supporting the use of geographic information over the Internet (Scharl and Tochtermann 2007). While the delivery of geospatial data over the Web began in the early 1990s (Putz 1994), it was not until 2005 that—following the success of Web 2.0 (O’Reilly 2005)—a new wave of geospatial Web applications has marked the birth of the so-called GeoWeb 2.0 (Maguire 2007). During the last two decades Web mapping applications have gradually evolved from being mostly static, poorly interactive and with limited functionality (few data accessible and few functions available on them) to dynamic, interactive and resembling the traditional desktop counterparts (Plewe 2007). Many factors have contributed to this success such as the increase of computational power of computers and broadband Internet communication, the introduction of technologies such as AJAX (Asynchronous JavaScript and XML) and mapping APIs (Application Programming Interfaces) as well as the OGC (Open Geospatial Consortium) standards for Web mapping interoperability (Peng and Tsou 2003).

Almost 10 years ago a new boost to the exploitation of Web-served geospatial data was given by the birth of virtual globes, and more in general multidimensional clients offering spatio-temporal visualization of geographic contents. Beyond their successful impact on the general public (Butler 2006), virtual globes introduced powerful ways not only to visualize but also to explore, analyse and process the heterogeneous and complex data generated by scientific disciplines (Blower et al. 2007).

Another big shift in the history of GIS began at almost the same time. Summarized by the term Volunteered Geographic Information or VGI (Goodchild 2007), a new era started where users have become active providers of geospatial contents. Social networking, digital photography, online mapping and mobile devices are currently fruitful sources of VGI, with OpenStreetMap (Arsanjani et al. 2015) being the most popular example of a collaborative spatial data collection project. Citizen science, outlining volunteers’ participation in the development of scientific activities (Cohn 2008), relies in many cases on VGI. This citizen-centred paradigm takes advantage of the individual augmented capability of sensing the world, which thanks to the sensors we wear can also produce vast quantities of unconsciously geo-crowdsourced data—termed by Harvey (2013) as CGI or Contributed GI (as opposed to VGI). One such example being the amount of data which is daily collected by smart phone users almost without any user control.

How mature is the bridge between virtual globes and VGI? The purpose of this chapter is to contribute to the discussion by investigating two innovative ways virtual globes can be exploited, namely as: (a) collaboration platforms for visualizing, exploring and collecting VGI; and (b) multidimensional intelligent geo-viewers providing advanced spatio-temporal visualization of citizen-sensed data. These topics are deepened through the description of two specific applications which have been recently (early 2016) developed by the authors.

The remainder of the chapter is structured as follows. Section on “Virtual Globes as the New Generation Visualization Platforms” provides a background on virtual globes which outlines their historical development, primary features and main software implementations. Next, a review is provided on virtual globe-based applications focused on the exploration of crowdsourced geo-data. The two original applications developed by the authors are then presented in section on “Applications”: a collaborative platform for managing citizen-sensed information and an intelligent geo-viewer of telecommunication data. Section on “Conclusions” concludes with the summary of the work’s contributions and directions for future research.

Virtual Globes as the New Generation Visualization Platforms

As mentioned above, virtual globes have ushered in a historical change in the way geospatial information is delivered over the Internet. This era was identified by Plewe (2007) as the fourth generation of Web Mapping applications, coming to the forefront after three different stages of 2D applications featuring an increasing level of interaction and usability. Virtual globes are software providing a 3D representation of the Earth and allowing users to explore it in a virtual environment while streaming satellite imagery, Digital Elevation Models (DEMs) and other geographic data from the Internet (Schultz et al. 2008). Unlike traditional GIS they offer users a “magic carpet ride” above the Earth surface. Users can also interact with the information represented on or above the surface, as well as manage geographic layers and optionally add their own data to create 3D mash-ups.

Key factors which enabled the birth of virtual globes include the development of high-performance graphics cards for 3D visualization (mainly driven by the video game industry), the evolution of Internet bandwidth, the increased availability of high-resolution satellite imagery (Yu and Gong 2012) and the advancements in the field of global spatial grids (Sahr et al. 2003). The success of virtual globes must be certainly attributed to Google Earth,Footnote 1 which since its release in 2005 has gained an astonishing popularity among the general public. Goodchild reasonably claimed that “Just as the PC democratized computing, so systems like Google Earth will democratize GIS” (Butler 2006). In response to Google Earth ESRI released ArcGIS ExplorerFootnote 2 and Microsoft launched its Bing Maps PlatformFootnote 3 (previously Microsoft Virtual Earth), while an open source alternative—World WindFootnote 4 released by NASA—has been available since 2003.

Many features of virtual globes contributed to their popularity. Virtual globes are multi-scale, multipurpose and multidimensional, i.e. they can even provide a 4D visualization if time component is considered (Brovelli et al. 2013). Virtual globes offer high context capability while at the same time providing ease and intuitiveness of use. In turn this translates into a richer and more realistic user experience. What is more, the chance of visualizing, locating and interacting with different kinds of geospatial contents within a single 3D virtual environment has opened many possibilities for using virtual globes in a number of geo-related disciplines, including scientific ones (Brovelli and Zamboni 2012).

In addition to those mentioned above, several other virtual globe platforms have been released over the last decade. Examples are ESRI ArcGlobe,Footnote 5 SkylineGlobe,Footnote 6 CitySurf Globe,Footnote 7 SuperMap GIS,Footnote 8 EarthBrowser,Footnote 9 ossimPlanet,Footnote 10 QGIS Globe,Footnote 11 gvSIG3DFootnote 12 (based on NASA World Wind), osgEarth,Footnote 13 Marble,Footnote 14 Norkart Virtual GlobeFootnote 15 and Earth3DFootnote 16. Standards like HTML5 and WebGLFootnote 17 have recently made it possible to render interactive 3D graphics within Web browsers without the need of specific proprietary applications, run-time environments (e.g. Java Virtual Machine) or plugins. A new wave of WebGL-based virtual globes has thus emerged including Cesium,Footnote 18 WebGL Earth,Footnote 19 WebGL Globe,Footnote 20 OpenWebGlobeFootnote 21 (Loesch et al. 2012) and the Web-based version of World WindFootnote 22. It is out of the scope of this chapter to provide a rigorous and detailed description of the characteristics and differences between the virtual globes listed above. However, some useful classifications of virtual globes according to a number of criteria (platform-dependence, license type, type of application, geographic layers available by default, functionalities and freedom of customization) are provided by Brovelli et al. (2014). Keysers (2015) proposes a categorization of virtual globes into platforms and visualization applications: open and closed source; public and restricted access.

An emerging concept related to virtual globes is Digital Earth (DE). It was envisioned by Gore (1998) as a multi-resolution, 3D representation of the planet allowing scientists, policy-makers, students and all societal sectors to manage georeferenced information and navigate them in space and time (Brovelli et al. 2015). Though DE and virtual globes are often used as synonyms, according to Harvey (2009) DE refers to the experiences and knowledge people have, and continue to make of the world, while virtual globes represent the most viable term for discussions of DE software environment. In other words, virtual globes are not DE, but rather a point of access to DE. This is why in the growing literature on DE virtual globes are also named geobrowsers (see for example Goodchild 2008; Annoni et al. 2011; Craglia et al. 2012), thus underlining their correspondence to traditional Web browsers in searching, retrieving and organizing information, whose nature is however spatial (Jones 2007).

Virtual Globes for the Exploration of Crowdsourced Geo-Data

Despite having democratized access to geospatial information, due to their primarily commercial orientation (driven by Google Earth), virtual globes were initially considered poorly suited for scientific purposes (Craglia et al. 2008). Some years later Goodchild et al. (2012) identified some limits of the existing virtual globes compared to Gore’s vision, e.g. the inability to explore the Earth both backward and forward in time, the limited set of available data, and the user interaction which often resembled an access to a searchable catalogue rather than a real exploitation. Nonetheless, the capabilities of virtual globes described in section on “Virtual Globes as the New Generation Visualization Platforms” have made them increasingly used in a variety of scientific disciplines. At the time of writing (early 2016), examples include geology (Blenkinsop 2012; Martínez-Graña et al. 2013; Zhu et al. 2014), ecology (Guralnick et al. 2007), history and cultural heritage (Brovelli et al. 2013; Valentini et al. 2014), cartographic heritage (Brovelli et al. 2012; Gede et al. 2013), natural disasters and disaster management (Webley 2011; Tomaszewski 2011), environmental analyses and modelling (Chien and Tan 2011; Brovelli and Zamboni 2012), weather forecast (Smith and Lakshmanan 2011), instruction and education (Lindner-Fally and Zwartjes 2012; Bodzin et al. 2014), health (Stensgaard et al. 2009), landscape planning (Schroth et al. 2011) and urban studies (Nebiker et al. 2010). User functions typically include data visualization, collection, exploration, integration, validation, communication and dissemination, modelling, and decision support (Yu and Gong 2012).

In line with the main content of this chapter, the following discussion provides an overview of virtual globe applications focused on geo-data volunteered or crowdsourced by users. It is worth noting that VGI has been recognized as a key opportunity for the development of DE (Craglia et al. 2008; Annoni et al. 2011) and that even OpenStreetMap has been shown to be well-positioned within DE’s goals (Mooney and Corcoran 2014).

Elvidge and Tuttle (2008) predict the power of virtual globes in democratizing content contributions by users. Examples related to Google Earth are described such as the Maplandia gazetteer and the geotagged photos from Panoramio. Using virtual globes as pure visualization platforms to display geotagged contents from media sharing sites is still a common practice. As an example, Kisilevich et al. (2010) exploit Google Earth to produce interactive visualizations of tourist sites based on geotagged photos from Panoramio and Flickr. Similarly, Vu et al. (2015) make use of Google Earth to visualize Flickr photos for exploring tourists’ travel behaviour. Both examples lack time filtering of data.

Cooper et al. (2010) draft a questionnaire to explore the perceptions held by geographical information professionals from Africa on the use of VGI in virtual globes. Results reveal a number of pros and cons, these latter including the fact that digital divide (Norris 2001) is still a strong barrier to the democratization promoted by VGI and virtual globes. Gede et al. (2013) created a virtual museum where a WebGL-based virtual globe environment allows users to navigate digitized paper globes. Upon registration, the users can add/edit both data and descriptions, thus adding a participative nature to the collection. Wu et al. (2010) describe a 3D urban planning interoperable environment based on GeoGlobe, a virtual globe prototype developed by the authors. Both urban planning designers and the public can visualize, manipulate and discuss urban planning projects. Participation happens through the upload of urban models as well as online tools such as forums, e-mails and instant messaging. Some spatial analysis tools are also available within the platform (e.g. to compute distances and calculate/simulate sunlight and sunshade). Beltran et al. (2013) present the VisioMIMEXT application built on top of NASA World Wind which allows the user to spatially search, visualize and retrieve georeferenced media resources from diverse social networks (Twitter, OpenStreetMap, YouTube, Flickr, Geonames and Wikipedia). Time filtering of data is planned as a future extension. The authors stress the role of virtual globes as data fusion tools for both experts and the public.

Virtual globes are also recognized as useful Web-based tools for collaborative mapping. The collaborative geospatial environment described by Nebiker et al. (2007) allows integrating observations from real-world mobile geo sensors (e.g. GPS logs and UAV video streams) into a three-dimensional viewer (i3D) developed by the authors. Additional communication channels between users such as chat, video or voice are also available. Similarly, Yovcheva et al. (2010) describe the development of a geo-collaborative web-based virtual globe prototype, based on Google Earth and designed for distributed teams of environmental researchers working with spatio-temporal data.

Virtual globes are also used in remote sensing as platforms for collecting, comparing and validating land use/land cover (LULC) data. The main example is Geo-WikiFootnote 23 (Fritz et al. 2009; Fritz et al. 2012), an online Google Earth-based crowdsourcing platform where volunteers exploit high-resolution imagery to perform spatial validation of existing LULC maps. A recent paper (See et al. 2015) offers an overview of the main features of the platform together with examples on how the crowdsourced data collected through Geo-Wiki has been used to improve information on LULC. A similar system is VIEW-IT (Virtual Interpretation of Earth Web-Interface Tool), a crowdsourcing platform based on Google Earth, which allows users to collect LULC data from high-resolution imagery (Clark and Aide 2011). Another tool designed for experts to assess LULC change and validate global LULC maps is developed by Bastin et al. (2013). The platform is mainly 2D but makes also use of Google Earth to increase context capability. Depending on the area, users can visualize images at different dates using a time slider.

Applications

In contrast to the picture emerging from the literature review outlined in section on “Virtual Globes as the New Generation Visualization Platforms”, two virtual globe-based applications are presented in the following which constitute promising examples of new generation 3D/4D platforms to explore volunteered and crowdsourced data. The first, described in section on “PoliCrowd”, provides a general-purpose collaboration platform for managing observations collected from mobile devices. A multidimensional viewer of telecommunication data, based on a high-level platform for scientific data analysis, is then presented in section on “Telecommunication Data Viewer”.

PoliCrowd

The first application, named PoliCrowdFootnote 24 (current version 2.0), implements a multidimensional and multi-thematic collaboration platform based on NASA World Wind virtual globe. PoliCrowd is a Web-based system able to: (a) allow citizens to perform field surveys using common mobile devices, compiling and submitting ad hoc questionnaires together with multimedia contents (images, videos, etc.), which are registered through the device sensors and georeferenced through the device positioning services (e.g. the GPS); (b) store and manage field-captured data into a spatial database and provide Web publication using standard protocols; and (c) provide a Web-based collaboration platform offering not just a 3D/4D visualization interface, but also an overall framework allowing users to manage data and create customized maps.

PoliCrowd is fully built upon existing open source software and is in turn released as open source. The two main software products exploited for the development are the Open Data KitFootnote 25 (ODK) suite for managing citizen-sensed data, and the World Wind virtual globe on which the platform is built. After a detailed description of these components, the system architecture and its main functionalities are presented in the following.

Open Data Kit (ODK)

The ODK suite is composed of three main modules providing complementary functions to perform and manage data collection, i.e. ODK Build, ODK Aggregate and ODK Collect. ODK BuildFootnote 26 enables design of the form (i.e. the questionnaire) that users will complete in the field. It is an HTML5 Web application offering a drag-and-drop interface, which works well for designing simple forms. When complex forms need to be designed, XLSFormFootnote 27 can be used instead. The form is then loaded into ODK Aggregate, which can be deployed on Google App Engine (enabling users to quickly get running without facing the complexities of setting up their own scalable Web service) or locally on a TomcatFootnote 28 server backed with a MySQLFootnote 29 or PostgreSQLFootnote 30 database. ODK Aggregate is the server-side component of the ODK suite and it is also responsible for user administration. It provides blank forms to, and accepts compiled forms from ODK Collect, which is the client-side component, which runs on Android mobile devices. ODK Collect allows users to perform point-wise surveys including different data types (text, number, location, multimedia, barcodes) and works well without a network connection. An example of ODK Collect form to report cultural Points of Interest (POIs) is shown in Fig. 1.

Fig. 1
figure 1

Example of ODK Collect form to report cultural POIs

NASA World Wind Java SDK

Used by space agencies (e.g. the ESA—European Space Agency), local and national government agencies (e.g. the US FAA—Federal Aviation Administration), commercial industry and scientific communities, NASA World Wind is based on open standards and can be configured to load and visualize the most popular spatial data formats. It is conceived to work with large amounts of data and information, all of which can be stored on local disks or remote data servers. Many satellite images are available by default including BlueMarble (BMNG 500 m), i3-Landsat (15 m), USGS Orthophoto (1 m US only), USGS Urban Area Orthophoto (0.5–0.25 m selected US cities), and MS Virtual Earth Aerial Imagery, as well as some Digital Terrain Models (DTMs) including SRTM30Plus (30 arc-sec, ~900 m), SRTM3 v2 v4.1 (3 arc-sec, ~90 m), ASTER (~30 m), and USGS NED (~30 m, ~10 m US only). Both images and DTMs are dynamically served by NASAFootnote 31 and USGSFootnote 32 WMSs (Web Mapping Services). Moreover, it is possible to access any OGC compliant WMS server and specific servers providing DEMs that can be superimposed onto the geoid model implemented within the platform. Finally, it is possible to locate on the globe, and in its surrounding space, both 2D objects (lines, polygons, markers, callouts and multimedia viewers) and 3D objects built up from geometric primitives (parallelepipeds, spheres, extruded polygons, etc.). The platform is suitable for any geospatial application thanks to the possibility of controlling the structure, quality and accuracy of the surface horizontal and vertical components (by varying the textures and the DTMs, respectively) and the full three-dimensional component of the virtual globe (the 2D and 3D objects that can be created for specific application scenarios).

The openness of World Wind code ensures a complete control of both the customization and the extensions required for creating the 3D model and all functionalities needed to interact with the model itself. Moreover, a platform-independent viewer can be implemented which is directly executable on different operating systems and potentially accessible by a simple Web browser. As mentioned in section on “Virtual Globes as the New Generation Visualization Platforms”, currently there are two versions of World Wind: the first one, simply named NASA World Wind, is written in Java and uses the JOGL libraryFootnote 33; the second one, named Web World Wind, is written in HTML5 and JavaScript (JS) and makes use of WebGL. Both platforms are available as a Software Development Kit (SDK) and provide the infrastructure to create spatial applications based on virtual globe technology. Currently the Java version provides a number of advanced features, which are not yet implemented in the JS version, and for this reason we chose to use the NASA World Wind Java SDK. Being written in Java, it is both platform-independent and usable as both a desktop application or accessible by simple Web browsers as an applet or via Java Web Start (JWS) technology.

System Architecture

A technical overview of the PoliCrowd 2.0 platform is shown in Fig. 2. The platform consists of two main components: the PoliCrowd client and the PoliCrowd server. The former, available as a JWS application, is based on World Wind and developed by taking advantage of its SDK. It provides a 3D visualization of the available geospatial contents and interacts with the PoliCrowd server through a Restful Web Service. The server is deployed on the GlassFishFootnote 34 J2EE (Java 2 Enterprise Edition) application server backed with a PostgreSQL relational database to store all of the data related to the platform (system data and data uploaded by the users). The PoliCrowd client can connect to and retrieve data from any WMS and ODK server, thus allowing visualization and interaction on the globe with contents created through ODK Collect mobile clients.

Fig. 2
figure 2

System architecture of the PoliCrowd 2.0 platform

Overview of Functionalities

After a first prototypal stage in which PoliCrowd was customized for tourism and cultural topics (Brovelli et al. 2014), the current version, PoliCrowd 2.0, represents its natural evolution with the purpose of being a completely general-purpose and multi-thematic social platform. Using a simple and intuitive graphical user interface (GUI) users can create, populate, customize and share projects, which refer to one or more specific topics integrated and displayed simultaneously within the same scenario.

The 3D viewer allows users to interact with two kinds of geo-data. First, the application can connect to any WMS compliant server. A first level of information is provided by several base layers such as OSM, the aerial orthophotos and satellite imagery, and the thematic maps made available as standard geoservices by the geoportals of institutional administrations (e.g. INSPIRE and national geoportals) or by any other dedicated WMS server specifically chosen for the customization of the platform. A second level of information is provided by the crowdsourced data collected by users through the ODK Collect mobile app. More in detail, the platform has an innovative capability to connect with any ODK server and publish the related point-wise data through a user-customizable marker-based representation (see Fig. 3).

Fig. 3
figure 3

3D visualization of markers corresponding to POIs collected by users through ODK Collect

The markers are then open to collaborative contribution: any PoliCrowd user can add comments and upload multimedia contents (images, video and audio files) in order to enrich and share the information on each POI. When clicking on a POI marker, the related details collected through ODK Collect are displayed (see Fig. 4) and a dedicated section provides access to the textual and multimedia contents (comments, images, audios and videos). All multimedia contents are managed by the PoliCrowd client: images are displayed into a picture viewer whereas, for videos and audios, the application relies on a customizable external player depending on the user’s preference.

Fig. 4
figure 4

Examples of data visualization of POIs collected by citizens: bike parking in Osaka city, Japan (left) and panoramic view on hiking trails in Como city, Italy (right)

POIs visualization is fully customizable thanks to a suitable layer management interface. The attributes to be displayed can be filtered out and the marker icons can be customized either by choosing them from a default collection or by uploading them manually. The application can manage different projects populated with different WMS and ODK layers. All the projects created by users are publicly accessible by design in order to promote community participation. Finally, the introduction of the fourth dimension (time) provides a more in-depth navigation through the content. The time bar enables temporal filtering of all the POIs just by picking a given date or setting a range of dates. The same capability is also available for multimedia contents, which can be independently filtered according to the date of upload or (if provided) the actual date they were created.

The PoliCrowd functionalities briefly described so far will be presented with abundance of details in the following.

PoliCrowd can display a wide variety of data types since it can be connected to any WMS and ODK server available on the Internet. More in detail the ODK API, which is integrated into the virtual globe Java code, enables the PoliCrowd client to retrieve all the information required to connect to any ODK Aggregate server, i.e. the list of available forms and the corresponding submitted data, which are then visualized on the platform. From a logical perspective, the connection to an ODK server is treated in the same way as to a standard WMS server: the user has to select the type of server, enter its URL and then pick up the layer(s) of interest (see Fig. 5). The only difference is that, while WMS servers provide raster map layers, ODK servers provide marker layers.

Fig. 5
figure 5

Form to transparently connect to any WMS or ODK server available on the Internet (left) and form to select the layer(s) published by an ODK server (right)

Any server (both WMS and ODK) a user connects to is saved into a persistent library which is available to all PoliCrowd users in order to facilitate its reuse. Once users have created customized collections of layers, they can save their projects in a catalogue which is available for the whole community. The users’ credentials, the list of available servers and projects, and the projects themselves (i.e. the available layers and their on/off status, the location and the camera orientation of the point of view over the globe) are stored in the PostgreSQL database on the PoliCrowd server.

Consistent with its multi-thematic nature, PoliCrowd allows to dynamically customize marker icons on the platform client-side according to the specific project the user is working on. Unlike WMS layers, where the graphic layout is predefined on server side (WMS layer style), the PoliCrowd client provides an intuitive graphical interface to define the styles for the point-wise marker layers derived from ODK servers. When adding an ODK layer to a project, users can select the point attribute to use for styling layer markers among those available, e.g. the type of point. Automatically, as it happens for the typical styling tools in GIS, all the values assumed by the markers for the selected attribute are displayed and for each of them, users can either pick up an icon from a rich library of icons available within the platform, or they can provide an icon by manually uploading the file (see Fig. 6). In the same way of servers and projects, styles are also shareable, so that users adding the same layer in their projects can save time by opting for a ready-made icon set defined by another user.

Fig. 6
figure 6

Marker icons for bike parking (left) and for environmental POIs (right)

The social nature of PoliCrowd allows any user to add comments and multimedia (images, audios and videos) to any ODK layer. This is possible thanks to a built-in interface on the client-side available when clicking on a marker. Besides showing all the information related to that marker, the interface displays the available multimedia contents and allows users to add new ones (see Fig. 7). PoliCrowd integrates all these functionalities in the same client-side graphics environment, thus making visualization and data upload easy and intuitive. Moreover, a dedicated Web application based on the Java Server FacesFootnote 35 technology was designed and implemented to facilitate the remote administration of the platform contents, enabling all the CRUD (create, read, update and delete) basic functions on the database.

Fig. 7
figure 7

New multimedia contents can be added by users and managed by the platform administrator using a dedicated Web application

PoliCrowd 2.0 introduces the fourth dimension in data visualization. A temporal slider available on the bottom side of the interface (see Fig. 7) allows time filtering of both the ODK marker layers and their multimedia contents. While markers are filtered according to their submission date (i.e. the date they were created from ODK Collect), multimedia contents can be filtered either by the date they were uploaded on the platform or, if available, by the actual date the content was created (i.e. the picture was taken, the video was shot, the audio was recorded). Users can optionally add the date of creation, together with a brief description of the multimedia content, as a metadata during the upload. Time filtering capability makes PoliCrowd particularly suited for historical projects and, more in general, projects where temporal information plays a key role.

Any user (authenticated or anonymous) can access, view and explore all the projects created within the platform and automatically shared with the community. Each project is maintained by its creator (owner). This means that the metadata (project name, project description, etc.), the list of layers used (both WMS and ODK) and the marker styles can be only edited by the project owner. Authenticated users can create and share new projects by adding WMS and ODK layers, uploading new POIs through ODK Collect, and adding comments and multimedia contents to both their own POIs and to preexisting POIs uploaded by other users. The authorization policies ensure that only the owners of the context (projects, POIs, comments, and multimedia contents) can perform editing operations on it.

Telecommunication Data Viewer

Geo-crowdsourced data can be typically visualized and analyzed in two different ways. In the first case, each contribution is treated as a single, self-consistent information and managed as such (e.g. the POIs collected and published in the PoliCrowd application). In the second case, all contributions are pre-processed in order to derive thematic maps describing a widespread phenomenon in a global view. Using this second methodology, starting from data collected by the “citizen sensors” a spatial distributions of the related variables of interest (social, economic, environmental, etc.) is modelled through a geographical grid where each cell value is derived through interpolation functions, sampling and statistical aggregations (Brovelli and Zamboni 2012).

The netCDF Data Format

One of the most widely used storage formats to handle grid-based data in science is netCDF (Network Common Data Form), a machine-independent data format supporting the creation, access and sharing of array-oriented data (Rew et al. 2010). NetCDF is used for storing n-dimensional rectangular structures containing many kinds of scientific data in various fields of observation (climate, ocean, atmospheric, pollution, chemistry, medical imaging, etc.). It is a self-describing, portable, scalable, appendable, shareable and archivable format. In details, a netCDF file includes information about the data it contains (self-describing); it can be accessed by computers with different ways of storing integers, characters and floating-point numbers (portable); a small subset of a large dataset may be accessed efficiently (scalable); data may be appended to a properly structured netCDF file without copying the dataset or redefining its structure (appendable); one writer and multiple readers may simultaneously access the same netCDF file (shareable); access to all earlier forms of netCDF data will be supported by current and future versions of the software (archivable).

NetCDF is not only a machine-independent data format for representing data, but also a set of software interfaces and libraries which support the creation, access and sharing of scientific data. The netCDF software implements an abstract data type, which means that all operations to access and manipulate data in a netCDF dataset must use only the set of functions provided by the interface. The representation of the data is hidden from applications using the interface, so that the way data are stored could be changed without affecting existing programs. The physical representation of netCDF data is designed to be independent of the computer on which the data were written.

EST-WA: A Multidimensional Data Viewer

In the open source domain, a number of applications and libraries are available to visualize and manage netCDF data. Almost all of them rely on a bidimensional approach to visualize and analyse the data, while the third-dimension information (e.g. the height of the data above the ground level) is indirectly represented by means of contour lines, slide sections, graduated colour ramps or numerical values acquired by querying the geometries shown in the 2D visualization. The fourth dimension information (i.e. the time) is instead managed by providing a static “snapshot” of the data at a specific selected point in time. On the opposite EST-WAFootnote 36 (Environment Space and Time Web Analyzer) is a tool based on netCDF format able to visualize spatio-temporal variable distributions (e.g. sea temperature or soil permeability at different depths, air pollution, temperature, and humidity at different heights) in a multidimensional interface where both space (the 3D scenario) and time are simultaneously shown (Brovelli and Zamboni 2014).

In its general architecture written in Java, EST-WA uses the netCDF Java library, which extends the netCDF core data model and adds functionality implementing Unidata’s Common Data Model (CDM), an abstract data model designed for scientific datasets. The Common Data Model has three layers, which are built on top of each other to add increasingly richer semantics. The “data access layer” (also known as the syntactic layer) handles data reading and writing; the “coordinate system layer” identifies the coordinates of the data arrays; and the “scientific feature type layer” identifies specific types of data such as grids, radial, and point data, and adds specialized methods for each of them. In detail, the “scientific feature type layer” adds functionality for data that is common in earth sciences and in particular provides a GeoGrid and a Grid Coordinate System. The GeoGrid is a specialized variable that explicitly handles X, Y, Z and time (T) dimensions while the Grid Coordinate System (on which the GeoGrid is based) provides a location in real physical space and time for the variables (usually with reference to the Earth). The Grid Coordinate System used by EST-WA at a minimum has a latitude (Lat) and longitude (Lon) coordinate axes, and optionally a time coordinate axis (T) and/or a vertical coordinate axis (Z).

The system is composed of two tools (see Fig. 8). The first one (EST-WA2D) allows to pre-view and pre-filter netCDF data through a 2D GUI (see Fig. 9 left). The second one (EST-WA3D) is instead the main module of the application. It is developed using the NASA World Wind Java SDK and allows visualization and analysis of data in a multidimensional scenario (see Fig. 9 right). A detailed description of EST-WA2D and EST-WA3D is provided in the following.

Fig. 8
figure 8

EST-WA architecture

Fig. 9
figure 9

EST-WA: the 2D viewer EST-WA2D (left) and the 3D viewer EST-WA3D (right)

EST-WA2D allows the user to open any netCDF format file and read all of the data and metadata stored within it. Files can be loaded from local storage (e.g. the local file system of the computer where the application runs) or from remote Web servers accessed through the HTTP protocol. The HTTP access is viable thanks to a feature of netCDF files which makes them accessible over the network by exploiting a simple Web server allowing for a range of requests for a resource. In this way the server must not return the data as “chunked” transfer-coding but allows a client to request only the data of interest.

For each variable stored in the netCDF file, the EST-WA2D GUI displays the data type, the measurement unit, the description, the rank, and the axes defining the variable domain. According to the variable type different information is shown. On each axis the measurement unit, the dimension, the step and the minimum/maximum values are reported. For each GeoGrid variable, the grid coordinate system information (i.e. the corresponding axes) is also given. Selecting each single element (variable, domain, grid or axis) it is possible to access the second level of metadata (attribute) and to get the complete overview of the information stored in the netCDF file. After the selection of the variable of interest, it is possible to activate the 2D map pre-viewer (see Fig. 9 left). Besides the usual browsing functionalities (pan, zoom-in and zoom-out), the dynamic map allows to interact with the content of the multidimensional structure by filtering data in both the spatial and the time domain.

For each axis (Lat, Lon, Z, and T) the GUI provides two sliders to select the minimum and maximum values (i.e. the range of the axis) in order to pre-filter the area of interest and select a spatio-temporal sub-domain. When the cursor of each slider is moved, the representation of the data is automatically updated in the viewer providing an immediate visual feedback of the selection. The sub-domain selection is a very useful feature when the spatio-temporal size of the data stored in the netCDF file is wide and the region of interest to be visualized is limited to a specific restricted area. Moreover, this functionality can be used to generate new netCDF files containing sub-sets of the original one, since EST-WA2D allows to export the filtering results.

EST-WA3D is a fully multidimensional netCDF file viewer which uses an innovative “doxel-based” modelling solution specially designed and implemented inside the platform. By extending the existing NASA World Wind Java classes to visualize the geometric primitives, new geometric figures were created. The basic 3D structure of the geometric model used by EST-WA is the voxel, which represents a cell of a regular grid in the three-dimensional space. The voxel is the 3D generalization of the rectangular pixel used in the 2D visualization and it is represented as a parallelepiped. The composition of all the geo-referenced voxels in a regular-grid frame forms the 3D model of the data stored in a netCDF file at a certain time. Each voxel is displayed with graduated colours (based on a colour ramp) depending on the value the variable takes at that position (see Fig. 9 right). When the volume occupied by the whole set of data does not correspond to a full parallelepiped (e.g. the 3D shape of the water filling an irregular natural basin) the voxels are not created in correspondence of the grid cells with “missing value” in order to obtain a full match of data with their representation.

The extension of the 3D static model to a 4D dynamic model, where time is also considered, was realized implementing a new geometric primitive called dynamic voxel, or simply doxel. A doxel is a voxel with the replacement of its static value with an array containing all the values the variable assumes at the different times. Compared to the static representation of a voxel (having a fixed colour), a doxel is displayed with different colours depending on the value the variable takes at that specific position at a certain time (dynamic representation). In order to also analyse the inner doxels of the multidimensional model, the volume can be sectioned with planes orthogonal to each other (see Fig. 10). For every axis (latitude, longitude and height) it is possible to define a minimum and a maximum cutting plane in order to visualize a slice of the original volume.

Fig. 10
figure 10

Voxel structure and the cutting planes

The viewer rendering is optimized by partitioning the 3D model into two logic sub-models: the inner part and the external layer, which is the shell of the model itself. Taking into account the selected cutting planes, the system sends to the rendering engine only the filtered shell doxels (the shell doxels included in the domain delimited by the cutting planes) and the doxels which close the volume at locations corresponding to the cutting planes themselves. Compared to a basic solution where all the doxels are represented, the performance is greatly improved. Just to give an example, considering a cube of 100 × 100 × 100 doxels, in the optimized case only 58,808 values are rendered instead of 1,000,000: the decrease of computation is equal to 94%. A local caching system finally increases the efficiency in accessing and handling the data using a separate management of the whole dataset (static dataset) and the current visible dataset (dynamic dataset) obtained from the insertion/removal of doxels depending on the cutting planes.

The environment is similar to the default NASA World Wind interface (on which it is based) but new tools for browsing data in time, analyzing the temporal evolution of the variable and slicing the data model to see the inner doxels have been implemented (see Fig. 11). Data can be sectioned along a constant longitude, latitude or height and, in order to increase the visual analysis of the Z (height) dimension, a vertical shift and a vertical exaggeration can be applied to the model. Moreover, a legend with the colour ramp corresponding to the variable values allows the quantitative analysis of the phenomenon (see Fig. 11 left). The value of a single voxel at a certain time and location or the values of all the voxels along a profile are readable thanks to an implemented 2D viewer appearing over the main map (see Fig. 11 right). Inside this semi-transparent window the graphic of the variable along the selected profile and the single values are dynamically synchronized with any movement of the scene and the consequent displacement of the profile along the 3D model. The user has full control of the profile, i.e. both translation and rotation in all directions are possible.

Fig. 11
figure 11

EST-WA3D: sectioned model (left) and section profile graphic (right)

Finally, to completely customize the environment and to improve the spatio-temporal contextualization of the variable represented, functionalities for accessing WMS layers are also available. Through a dedicated GUI that can be activated from the menu bar, users can connect to any OGC compliant WMS server and select layers to be displayed on the virtual globe as background and/or auxiliary thematic maps.

Application of EST-WA to Explore Geo-Crowdsourced Data

Geo-crowdsourced data, which are constantly and often unconsciously contributed by users through wearable sensors, are to all effects comparable to the kinds of scientific variables mentioned above whose spatio-temporal analysis is suited for EST-WA exploitation. A specific application is hereafter presented which concerns citizen-sensed telecommunication data.

These data refer to mobile call data records in Milan, Italy, and were made available as open data by the Italian Telecom Italia mobile operator in the frame of the Telecom Italia Big Data Challenge.Footnote 37 Data have a temporal resolution of 10 min for a total of 2 months (November and December 2013) and a spatial resolution of 235 m × 235 m for a total of 100 × 100 cells covering Milan city. Five different phone activities are recorded: incoming and outcoming calls, incoming and outcoming SMSs (Short Message Services) and Internet connections. In the case of calls and SMSs, a Call Detail Record (CDR) is generated each time a user receives/issues a call or receives/sends an SMS. Regarding the Internet, a CDR is generated each time a user starts or ends a connection or, during the same connection, when there have been more than 15 min or 5 MB from the last generated CDR.

The available data, which include about 100M records, are stored in the NoSQL MongoDBFootnote 38 database from which, thanks to an ad hoc Python script, netCDF files can be generated on the fly.

These netCDF files are organized as four-dimensional regular grids, where the Z component is represented by the day (at most 61 slices corresponding to the 61 days) and the time component is represented by the 10 min interval (at most 144, corresponding to the count of 10 min timeslots in a day). The dimension of each doxel is therefore 235 m × 235 m × 1 d × 10 min.

The Python script to generate netCDF data is run through a Web application with a form that users have to fill.Footnote 39 Referring to time there are two main choices. In the first case, users can select either all subsequent days or only Mondays, only Tuesdays, etc. from a starting date to an ending date; in the second case, users can select multiple dates from a calendar. Users have then to select the phone activity they are interested in (calls in, calls out, SMSs in, SMSs out, and Internet connections), submit the request and receive the file. Once the file has been sent to the user, it is deleted from the server filesystem to avoid its overload.

Generated netCDF files can be then spatio-temporally explored through the EST-WA interface. As an example, Fig. 12 shows the visualization of the SMSs out at two different hours of December 31, 2013: 12 pm (noon) and 11 pm. The colour ramp varies from blue (lowest counts of SMSs out) to red (highest counts). From the spatial perspective, the number of SMSs is in both cases higher in Milan city centre than in the suburbs. From the temporal point of view, the number of SMSs sent by people clearly shows a significant increase when midnight approaches, as this is typically the timeslot to send relatives and friends wishes for the new year. It is worth noting that the use of an intelligent multidimensional geo-viewer like EST-WA provides a much more meaningful and comprehensive understanding of the data compared to those achievable with traditional 2D or static 3D solutions.

Fig. 12
figure 12

EST-WA visualization of SMSs sent in Milan city on December 31, 2013 at 12 pm (left) and 11 pm (right)

Conclusions

This chapter has investigated the technological-scientific interaction between multidimensional visualization and the universe of VGI and citizen science. Although virtual globes applications and volunteered/contributed GI have both appeared almost a decade ago, their mutual interconnection is still a largely unexplored topic. Virtual globes have had the merit of democratizing GIS (Butler 2006); however 10 years later they remain strongly under-exploited for a number of scientific needs.

As shown in the literature review, VGI-related exploitation of virtual globes is often limited to the pure access and visualization of user-produced datasets (e.g. geotagged photos), with Google Earth—a primarily commercial product—still being the most popular alternative. User interaction is usually restricted to few, simple operations, the amount of accessible data is limited and the use of time dimension to navigate data is almost absent. Thus, validating what Goodchild et al. (2012) stated, still in 2016 we recognize how far the Digital Earth idea envisioned by Gore (1998) is.

In contrast to the current scenario, two advanced applications have been presented which prove the key role multidimensional applications can play when dealing with citizen-sensed data. The first application meets the need of exploiting virtual globes as general-purpose, VGI-based collaboration platforms. Besides retrieving and displaying user-collected data, the platform allows scientific communities to create and manage their own projects. The second application addresses the problem of spatio-temporally exploring complex datasets contributed by citizen sensors. Based on a scientific data format like netCDF, the platform acts as an intelligent geo-viewer able to easily spot macroscopic phenomena and eventually—at a more detailed level—even less evident patterns, which are more complex to study. In contrast to Google Earth, the use of an open source, scientifically oriented virtual globe like NASA World Wind has allowed to deeply customize and enrich the applications according to the needs.

The example of telecommunication data presented above shifts the discussion to the broad theme of big data, which recent literature has shown to be well-connected to VGI (see e.g. Fischer 2012). Despite statistical and processing techniques are required to perform full data analytics (e.g. to correlate telecommunication data to specific weekdays and/or weather/environmental conditions), a thorough visualization represents the first crucial step when dealing with big data.

Finally, it is worth mentioning the difficulties users sometime experience in exploiting complex multidimensional applications such as those described. While a true realization of DE—including robust handling of real-time data streams—would be desirable and beneficial for many scientific and societal needs, digital divide is still preventing a large portion of humankind from access and/or real exploitation. Therefore, there are at least two challenges to face: to reduce the complexity of such applications on one side and to educate people in using them on the other side. On both of them we are strongly working.