Skip to main content

PySptools is a python module that implements spectral and hyperspectral algorithms. Specializations of the library are the endmembers extraction, unmixing process, supervised classification, target detection, noise reduction, convex hull removal, features extraction at spectrum level and a scikit-learn bridge. Version 0.15.0 introduce an experimental machine learning functionality based on XGBoost and LightGBM.

The library is designed to be easy to use and almost all functionality has a plot function to save you time with the data analysis process. The actual sources of the algorithms are the Matlab Hyperspectral Toolbox of Isaac Gerg, the pwctools of M. A. Little, the Endmember Induction Algorithms toolbox (EIA), the HySime Matlab module by José Bioucas-Dias and José Nascimento and science papers.

Functionalities

The functions and classes are organized by topics:

  • abundance maps: FCLS, NNLS, UCLS

  • classification: AbundanceClassification, NormXCorr, SAM, SID

  • detection: ACE, CEM, GLRT, MatchedFilter, OSP

  • distance: chebychev, NormXCorr, SAM, SID

  • endmembers extraction: ATGP, FIPPI, NFINDR, PPI

  • machine learning: XGBoost, LightGBM

  • material count: HfcVd, HySime

  • noise: Savitzky Golay, MNF, whiten

  • sigproc: bilateral

  • scikit learn: HyperEstimatorCrossVal, HyperSVC, HyperGradientBoostingClassifier, HyperRandomForestClassifier, HyperKNeighborsClassifier, HyperLogisticRegression and others

  • spectro: convex hull quotient, features extraction (tetracorder style), USGS06 lib interface

  • util: load_ENVI_file, load_ENVI_spec_lib, corr, cov, plot_linear_stretch, display_linear_stretch, convert2D, convert3D, normalize, InputValidation, ROIs and others

The library do an extensive use of the numpy numeric library and can achieve good speed for some functions. The library is mature enough and is very usable even if the development is at a beta stage (and some at alpha).

Installation

For installation, I refer you to the web site https://pysptools.sourceforge.io/installation.html

Dependencies

  • Python 2.7 or 3.5, 3.6

  • numpy, required

  • scipy, required

  • scikit-learn, required, version >= 0.18

  • spectral, required, version >= 0.17

  • matplotlib, required, [note: pytsptools >= 0.14.2 now execute on matplotlib 2.0.x and stay back compatible]

  • CVXOPT, optional, version >= 1.1.7, [note: to run FCLS]

  • jupyter, optional, version >= 1.0.0, [note: if you want to use the notebook display functionality]

  • tabulate, optional, [note: use by ml module]

  • pandas, optional, [note: use by ml module]

  • plotnine, optional, [note: use by ml module, a ggplot2]

  • lightgbm, optional, version 2.1.2 ONLY, [note: use by ml module]

  • xgboost, optional, version 0.72.1 ONLY, [note: use by ml module]

PySptools version 0.15.0 is developed on the linux platform with anaconda version 5.1.0 for both python 2.7 and 3.6.

Metadata

Release files for pysptools 0.15.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pysptools 0.15.0
File Size Uploaded
pysptools-0.15.0.tar.gz 8.1 MB Details

Release files / pysptools-0.15.0.tar.gz

Download URL pysptools-0.15.0.tar.gz
Size 8.1 MB
Tags Source
SHA-256 checksum
How to use checksums
923c4e1af97c490d7d9ad86d04fdf8918b63106023493e6a4cf54323e244b05e
BLAKE2b-256 checksum
How to use checksums
9b20cef48129eff2bdcb282279138c09e6f04770a8fdcb3c1bb9a98fe4086d2d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/38.4.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.4

Release history Release notifications | RSS feed

This release

0.15.0 This release

1 release file

0.14.2

1 release file

0.14.1

1 release file

0.14.0

1 release file

0.13.5

1 release file

0.13.4

1 release file

0.13.3

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page