Skip to main content

Hyperspectral Image Formats

Hyperspectral imagery is similar to most other forms of geospatial imagery, commonly called rasters. The main difference between images generated by satellites like Landsat & Sentinel, and hyperspectral imagery is the number of bands within an image. The below table shows common sources of imagery and their bands. You can see our satellites will have a ton more bands than common multi-spectral satellites. Take note, this also means larger file sizes!

SatelliteSatellite Type# of BandsCommon Format
Sentinel-2Multi-spectral13JPEG2000, GeoTIFF
LandsatMulti-spectal11GeoTIFF (.tiff)
Sentinel-1SAR~4GeoTIFF (.tiff)
Wyvern DragonnetteHyperspectral23 - 31GeoTIFF (.tiff)

Background

Raster imagery can be visualized as a data "cube", with 3 axis: X (longitude), Y (latitude), and Z (bands). When we take a "slice" across the cube by selecting a single band, we get a greyscale image. Taking three "slices" and assigning each slice to a color channel (red, green, blue) would net us a color image!

A 3-D cube showing three sides, the top is a normal RGB image. The two sides show a colorful example of each band's response for that band

Three dimensional hyperspectral data "cube" [1]

Regardless of file format, a raster is a raster. Once loaded into your software of choice, every raster is a multi-dimensional array of pixel values. When in doubt, try to load it using GDAL. Chances are it will be able to read the file.

Common Formats

We'll only cover the most common formats, however there is truly a ludicrous amount of image formats out there. For more details on formats (and a set of tools that can do it all!) check out GDAL's documentation on raster drivers.

GeoTIFF .tiff

GeoTIFF is a public domain standard developed by Dr. Niles Ritter at NASA JPL. It is extremely popular, and has many different options and variants designed to optimize use of rasters in different settings (BigTIFF, Cloud Optimized GeoTIFF). A single GeoTIFF file contains all the necessary geospatial metadata to link the raster image data to it's location in the world.

Wikipedia article on the GeoTIFF standard

Open Geospatial Consortium GeoTIFF standard

GDAL GeoTIFF raster driver

ENVI .img & .hdr

ENVI is a file format developed by NV5 for their software ENVI, and is popular with hyperspectral files. It consists of two parts: the actual image file, and an accompaning ASCII text header file (usually with the .hdr extension). GDAL (and thus rasterio and many other tools) is able to read and write ENVI files.

NV5 ENVI Documentation

GDAL ENVI raster driver

HDF5 .h5

HDF5 is a popular format in scientific computing and is maintained by the non-profit HDF Group. HDF5 files are structured in a filesystem-like format, where named groups can contain datasets, or more groups. Metadata is attached to individual datasets and groups. HDF5 files can be read using a wide variety of packages and programming languages. NetCDF4 is also based off of HDF5, and deserves a special mention since it can be processed using the powerful xarray library in python.

Wikipedia article on the HDF standard

GDAL HDF5 raster driver

More Resources

Ultimate list of GIS formats

GDAL raster driver list

References

[1] Pizzolante, Raffaele & Carpentieri, Bruno. (2012). Visualization, Band Ordering and Compression of Hyperspectral Images. Algorithms. 5. 10.3390/a5010076.