FSF: application form downloads
About Loans Equipment Lab Impact Resources


Post processing field spectroscopy data using SpecDal

We have put togther a walkthrough (in jupyter notebook form) for using SpecDal to read, graph and postprocess files from an SVC 1024i field spectrometer. Though it will work with ASD Field Specs also. You can download the walkthrough as a zip folder here.

Before you start, make sure you setup your computer according to the instructions as below:


This walkthrough will use Python, install Anaconda from the following link if you need to: https://www.anaconda.com/products/individual

  1. From Anaconda Navigator open Anaconda Prompt and create a Python environment called 'specdal' (instructions on environment installation can be found here: https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html

  2. Activate the environment and install the required packages using the following commands:
  3. conda install pandas matplotlib numpy scipy

    conda install jupyterlab

    conda install -c https://data.neodaas.ac.uk/files/conda/ specdal

    To start, open Anaconda Navigator, switch to your "specdal" Environment (default environment will be "root") and launch Jupyter Notebook. Navigate to the unzipped folder in Jupyter's file tree and open the "Field Spectroscopy Data Processing.ipynb" notebook. The rest of the instructions are in the notebook.

    Python scripts for 6S and ProSAIL

    Py6S is a Python interface to the respected 6S atmospheric Radiative Transfer Model which makes it significantly easier to use and adds useful new functionality. All of the functionality of the 6S model is supported, and various helper methods are provided to make common operations - such as running a simulation for a number of angles, or for all of the bands of a satellite sensor - very easy. Field spectroscopy data can also be imported and used to configure the ground reflectance of the model, allowing simulations of the at-sensor radiance that would be measured for a set of field spectral measurements. Py6S is fully integrated with the Python NumPy, pandas and Matplotlib modules to allow easy plotting of results and import/export of data. The code for Py6S can be accessed here.

    PyProSAIL is a very simple Python interface to the ProSAIL combined leaf and canopy reflectance model. In a similar manner to Py6S, it provides a far nicer interface to the model, and allows easy plotting of the results. PyProSAIL can also be integrated very easily with Py6S, for example, to simulate how changes in leaf properties, and thus the reflectance of the canopy, would be manifested in the radiance received at a satellite. The code for PyProSAIL can be accessed here.

    PML PySpectra

    PySpectra is a python tool developed by the PML Remote Sensing Group and is available on GitHub. It assists in the importation of Spectra in various formats, including Ocean Optics and SVC 1024i formats as well as handling ASCII files, you can also import data formatted for ENVI or USGS. See the GitHub for more information.

Privacy Notice   Accessibility Notice