/hypers

hypers: hyperspectral data structure, data analysis and machine learning

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

hypers

Build Status Documentation Status Python Version 3.5+ PyPI version

hypers provides a data structure in python for hyperspectral data. The data structure includes:

  • Tools for processing and exploratory analysis of hyperspectral data
  • Interactive hyperspectral viewer (using PyQt) that can be accessed as a method from the object
  • Allows for unsupervised machine learning directly on the object

The data structure is built on top of the numpy ndarray, and this package simply adds additional functionality that allows for quick analysis of hyperspectral data. Importantly, this means that the object can still be used as a normal numpy array.

Please note that this package is currently in pre-release. It can still be used, however there is likely to be significant changes to the API. The first public release will be v0.1.0.

Contents

  1. Installation
  2. Features
  3. Examples
  4. Documentation
  5. License

Installation

To install using pip:

pip install hypers

The following packages will also be installed:

  • numpy
  • scipy
  • PyQt5
  • pyqtgraph

Features

Features implemented in hypers include:

  • Hyperspectral viewer
  • Vertex component analysis
  • Abundance mapping

A full list of features can be found here.

Examples

Interactive viewer

The interactive viewer can be particularly helpful for exploring a completely new dataset for the first time to get a feel for the type of data you are working with. An example from a coherent anti-Stokes Raman (CARS) dataset is shown below:

Documentation

The docs are hosted here.

License

hypers is licensed under the OSI approved BSD 3-Clause License.

References

  1. VCA algorithm
    J. M. P. Nascimento and J. M. B. Dias, "Vertex component analysis: a fast algorithm to unmix hyperspectral data," in IEEE Transactions on Geoscience and Remote Sensing, 2005
    Adapted from repo.