Web-Based Visualization of Very Large Scientific Astronomy Imagery

IIPImage has been adopted by a number of users in the astronomy community due to it’s ability to handle both very large images and scientific-grade quantitative data. See, for example, this post from the Wide Field Astronomy Unit about putting online a massive image of our galaxy containing 1 billion stars. Although the image in that example is very large (the TIFF is over 150GB in size), the original scientific data has been reduced to 8 bits per channel for visualization purposes.

However, much astronomy data (and indeed scientific data in general), is in quantitative linear floating point format, requiring 32 bits per channel. Having access to such quantitative image data at this level of precision and dynamic range is important for carrying out scientific data analysis. And there are major benefits from having remote access to very large floating point data in a number of tasks in astronomy, astrophysics and planetary science.

VisiOmatic client with 1TB floating point image, vector layers and image profile visualization.
IIPImage and VisiOmatic: 1TB floating point image, vector layers and image profile visualization

New Server Features

IIPImage already handled 8 and 16 bit per channel data and full 32 bit support for both integer and floating point has now been added in association with the Institute of Astrophysics and the Geosciences Laboratory of the University of Paris Sud. Much of the core image processing within iipsrv is now carried out using 32 bits of dynamic range, enabling real-time access to and the real-time processing of extremely large scientific data sets.

The speed and scalability of the IIPImage server is one of its most important features. The use and processing of floating point data is far more memory and computationally expensive than for standard 8 bit data and could have had an impact on server performance. iipsrv has, therefore, been heavily optimized to minimize this, which has also significantly improved speeds for all types of image. Improvements have also been made to iipsrv’s handling of extremely large images and it is now able to comfortably and efficiently handle terabyte size images of any bit depth.

In addition, a number of other important new features have been added to the IIPImage server, that although aimed at astronomy applications, are useful in a wide range of disciplines:

  • Gamma correction (GAM parameter)
  • Minimum and maximum cuts (MINMAX parameter)
  • Full resolution data profiles (PFL parameter)
  • Dynamic color-mapping (CMP parameter)

These features are available in the latest server code on GitHub and will form part of the forthcoming 1.0 server release. For more details on the syntax for the new parameters, see the IIP protocol documentation.

In terms of file formats for floating point data, TIFF is not only able to store 8 bits per channel images, but also 16 bit and both 32 bit integer and 32 bit floating point data, meaning that all the standard TIFF imaging software pipeline can continue to be used with IIPImage. See the image documentation for more details on image formats and the software STIFF for generating TIFF files suitable for IIPImage from FITS data.

Clients

In addition to the server-side development, a set of new clients has been developed for astronomy applications. These include VisiOmatic, a Leaflet-based javascript client and a couple of IIPMooviewer-based extensions.

VisiOmatic

VisiomaticVisiOmatic is a Leaflet-based javascript client that has been developed to handle celestial images and that is capable of handling WCS celestial coordinates, vector layers (overlays) and can query iipsrv’s new profile feature to display full-resolution line profiles. WCS coordinate data is transmitted directly by iipsrv as metadata and makes it possible to easily synchronize maps that do not use the same projection, such as orientation maps, “smart” magnifiers, or multi-band monitoring.

Demos

  • Terabyte-Scale Visualization: 1TB TIFF containing a 256 gigapixel 32 bit per channel floating point image. The interface allows you to not only instantly zoom and navigate within the 1TB of data, but also to dynamically generate color maps, modify the gamma, invert the data and set minimum and maximum cuts. The data is an image stack of SDSS release 9 i-band exposures centered on NGC4565 (α=12h36m21s, δ=+25°59’22”) and covering about 2500 square degrees.
  • Multi-Modal Synchronization: Real-time synchronization between views with different pixel grids. Data consists of a set of three g,r, and z-band image stacks of DECam exposures centered on IC2391 (α=08h39m07s, δ=+52°50’35”) obtained for the DANCe project.
  • Overlays and Multiple Image Sources: Custom path overlays featuring r, i and Ks-band image stacks of Megacam and WFCam exposures covering about 100 square degrees around the Pleiades star cluster (α=03h48m19s, δ=+24°24’15”) with the brightest Pleiades members amongst those identified by Sarro et al. (2014) as part of the DANCe project. The small (clickable) lines represent the apparent paths that the stars will cover during the next 1000 years.

VisiOmatic is hosted at http://visiomatic.org and the code is available from the VisiOmatic github repository.

IIPMooviewer

Extensions to iipmooviewer were also developed to handle planetary science data, which is often largely heterogeneous with respect to the physical quantities they describe (chemical abundances, atmospheric composition, magnetic and gravitational fields, reflectance, surface composition etc). These extensions enable the generation of and interaction with full-resolution Digital Elevation Map (DEM) data through colormapping and hill-shading. In addition, a <canvas> based extension was also developed to perform dynamic client-side color compositing.

Terrain Maps – Hillshading

High resolution 3D data is not easy to efficiently stream or to make multi-resolution. IIPImage, however, can use a 2D image-centric approach in order to efficiently visualize topographic data. This can be done using one of two methods: colormaps and hill-shading.

IIPMooViewer interface for floating point DEM data showing a dynamically generated colormap with user-adjustable cuts and a hill-shading layer with user-adjustable azimuth incidence angle. Data: Mars HiRISE – Crater in Western Arabia Terra with Stair-Stepped Hills and Dark Dunes

3D topographic data can be packed into a TIFF file by storing the height data values as a floating point monochrome TIFF image. To complement this, the XYZ normal vectors can also be used by packing them into a 3 channel “color” TIFF. These can, therefore, both be tiled, compressed and structured into a multi-resolution pyramid for streaming with IIPImage.

See both dynamic colormapping and the hill-shading of high resolution floating point DEM data in action in this IIPMooViewer based image interface for Nasa’s Mars HiRISE data. The DEM of 2 ortho images is displayed using a dynamically generated JET colormap with cuts set by the user from the control panel and the ability to individually set opacity and contrast. Superimposed is a dynamic hill-shading layer computed from the DEM where the azimuth incidence angle can be adjusted from the control panel. Clicking on a point in the image displays the floating point height value for that pixel.

Color Compositing

Canvas-based IIPMooViewer prototype with user-adjustable dynamic color compositing. HRSC Mars images (ESA/DLR/FU Berlin/G. Neukum).

Color compositing is an essential feature in planetary science, as well as in both GIS and remote sensing applications and is used to point out differences in surface composition through on-demand composition of specific color bands. Interactive color composition on the Web can be achieved using the HTML5 <canvas> element which allows directly access pixel values.

For an example of this in action, see this demo of a HRSC image from the Mars Express probe, where the resulting color rendering is a linear combination of the input channels and the mixing matrix is defined by a user-adjustable combination of red, green and blue and a contrast factor for each input channel.

Published Article

A paper entitled Web-Based Visualization of Very Large Scientific Astronomy Imagery giving more details of this work has been published in the peer-reviewed journal Astronomy and Computing and an open access pre-print version of the article is available from arXiv: http://arxiv.org/abs/1403.6025.

Citation:

E. Bertin, R. Pillay, and C. Marmo, ‘Web-based visualization of very large scientific astronomy imagery’, Astronomy and Computing, vol. 10, pp. 43–53, Apr. 2015.

Bibtex

@article{bertin_web-based_2015,
        title = {Web-based visualization of very large scientific astronomy imagery},
        volume = {10},
        issn = {2213-1337},
        doi = {10.1016/j.ascom.2014.12.006},
        journal = {Astronomy and Computing},
        author = {Bertin, Emmanuel and Pillay, Ruven and Marmo, Chiara},
        month = apr,
        year = {2015},
        keywords = {High resolution, HTML5, Scientific data, Visualization, Web application},
        pages = {43--53} 
}