Hyperspectral Calibration Software

Open Source Software for the Cultural Heritage Community

This is a suite of open source tools to enable researchers in the field of cultural heritage to more easily calibrate and process data from hyperspectral imaging. We aim to provide a full pipeline of calibration software for radiometric as well as geometric calibration. And in addition provide tools for high quality mosaic assembly and color rendering. The initial release of the software consists of two parts. The first performs radiometric calibration to generate accurate spectral reflectance data. And the second provides a tool for export of spectral data to calibrated color. Both tools are command line tools that allow processing to be carried on a series of scans and are designed to efficiently handle multi-gigabyte size data sets.

Summaries of the command line arguments are provided below and more extensive documentation will be added later.

spectral_calibrate: Calibrate to Reflectance Factor and Correct Sensor Geometry

  Perform radiometric calibration (lighting correction, scaling to absolute reflectance)
  and geometric calibration (sensor geometry correction) on hyperspectral data from Hyspex cameras

  eg: calibrate_hyspex -r radiomatric_calibration.mat -g sensor_model.txt -i data.hyspex -o data_calibrated.hyspex

  Options:

   --input,       -i:  input image
   --output,      -o:  output image
   --radiometric, -r:  radiometric calibration file
   --geometry,    -g:  geometric calibration file
   --dark,        -d:  dark current file (optional)
   --width,       -x:  image width
   --height,      -y:  image height
   --bands,       -b:  number of bands in image
   --help,        -h:  this help message
   --verbose,     -v:  verbose output

hyper2color: Spectral Reflectance Image to True Color

hyper2color is a tool for generating true colorimetric images from hyperspectral reflectance data

The source code can be found here:
https://github.com/hyperspectral-calibration/hyper2color

Usage

  Generate a true color CIE L*a*b*, sRGB or AdobeRGB image from a hyperspectral cube
  using a given illuminant.

  Generate colorimetric rendering of hyperspectral reflectance data with 
  requested illuminant or color temperature in sRGB, AdobeRGB or CIE L*a*b* color 
  output space. Output is in TIFF format using requested compression.

  Requested color temperature can be a standard temperature (D65, D50, D75, D93, A)
  or a temperature in degrees Kelvin (eg: 5000 for a temperature of 5000K)
  Alternatively, an artibrary illuminant power spectrum can be provided 
  containing a list of wavelengths and power values

  Output bits per channel can be 8, 16 or 32 bits, where 8 and 16 are encoded
  as unsigned integer and 32 is encoded as floating point

  eg: hyper2color -i data.img -o calibrated_color.tif -t D65 

  Options:

   --input,       -i:  input hyperspectral cube
   --output,      -o:  output TIFF image
   --temperature, -t:  output color temperature: D65 (default), D50 or temperature in K)
   --colorspace,  -s:  output color space: CIELAB, sRGB (default) or AdobeRGB
   --power,       -p:  illuminant power spectrum file
   --bits,        -b:  output bits per channel: 8 (default), 16 or 32 bits
   --width,       -x:  hyperspectral image width
   --height,      -y:  hyperspectral image height
   --channels,    -c:  number of bands in hyperspectral cube
   --compression  -m:  TIFF output compression: none (default), deflate, lzw or jpeg
   --help,        -h:  this help message
   --verbose,     -v:  verbose output