SpectralUnmixing
Spectral unmixing, oriented towards imaging spectroscopy data. Lots of flavors included.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.1%) to scientific vocabulary
Repository
Spectral unmixing, oriented towards imaging spectroscopy data. Lots of flavors included.
Basic Info
- Host: GitHub
- Owner: emit-sds
- License: apache-2.0
- Language: Julia
- Default Branch: dev
- Homepage: https://emit-sds.github.io/SpectralUnmixing.jl/
- Size: 10.2 MB
Statistics
- Stars: 16
- Watchers: 3
- Forks: 12
- Open Issues: 10
- Releases: 8
Metadata Files
README.md
SpectralUnmixing.jl
A general, fast, flexible, and including spectral unmixing package. Oriented towards VSWIR imaging spectroscopy data but applicable for different sensor types. Includes options for different treatments of endmember library assemblages, including MESMA and bootstrapping (aka monte carlo) strategies.
Installation
This package is registered and can be added using the Julia package manager.
1. Install Julia
2. Install the package from the Julia Pkg REPL:
julia
julia> ]
pkg> add SpectralUnmixing
or equivalently,
julia 'using Pkg; Pkg.add("SpectralUnmixing")'
Remember to activate the appropriate environment via the Pkg REPL or by using the --project flag or setting the JULIA_PROJECT environment variable.
3. Install the CLI script
julia> using SpectralUnmixing
julia> CLI.install()
If you would like to install a local version of the repository, first clone a local copy and navigate into the base SpectralUnmixing directory. Then run:
julia --project='.' -e 'using Pkg; Pkg.activate(".");'
export JULIA_PROJECT=${PWD}
Using the CLI script
Currently the package supports reading and writing ENVI raster data.
Basic:
julia unmix.jl REFLECTANCE_IMAGE ENDMEMBER_LIBRARY ENDMEMBER_COLUMN OUTPUT_BASE --mode sma
Parallel implementation (with 10 cores):
julia -p 10 unmix.jl REFLECTANCE_IMAGE ENDMEMBER_LIBRARY ENDMEMBER_COLUMN OUTPUT_BASE --mode sma
Bootstrapping uncertainty:
julia -p 10 unmix.jl REFLECTANCE_IMAGE ENDMEMBER_LIBRARY ENDMEMBER_COLUMN OUTPUT_BASE --mode sma --n_mc 50
Normalization:
julia -p 10 unmix.jl REFLECTANCE_IMAGE ENDMEMBER_LIBRARY ENDMEMBER_COLUMN OUTPUT_BASE --mode sma --n_mc 50 --normalization brightness
Preset maximum number of endmembers used for unmixing:
julia -p 10 unmix.jl REFLECTANCE_IMAGE ENDMEMBER_LIBRARY ENDMEMBER_COLUMN OUTPUT_BASE --mode sma --n_mc 50 --normalization brightness --num_endmembers 10
EMIT-style Runs
Following Ochoa et al., to run SpectralUnmixing in the same manner as EMIT, use:
julia -p 64 unmix.jl REFLECTANCE_IMAGE ENDMEMBER_LIBRARY ENDMEMBER_COLUMN OUTPUT_BASE --mode sma-best --normalization brightness --num_endmember 30 --n_mc 20 --reflectance_uncertainty_file REFLECTANCE_UNCERTAINTY_IMAGE
Owner
- Name: emit-sds
- Login: emit-sds
- Kind: organization
- Repositories: 11
- Profile: https://github.com/emit-sds
JOSS Publication
SpectralUnmixing: A general Julia package for unmixing spectroscopy data
Authors
Jet Propulsion Laboratory, California Institute of Technology, United States of America
Jet Propulsion Laboratory, California Institute of Technology, United States of America
Jet Propulsion Laboratory, California Institute of Technology, United States of America
Jet Propulsion Laboratory, California Institute of Technology, United States of America
Tags
imaging spectroscopy EMIT remote sensing Earth scienceCitation (CITATION.cff)
cff-version: 1.2.0
title: SpectralUnmixing
message: >-
If you use this software for research we would appreciate
appropriate citation. This may be prepared using the
bibliographic metadata contained in our DOI, accessible
through the DOI system and at
https://doi.org/10.5281/zenodo.15098652.
type: software
authors:
- given-names: Philip G Brodrick
affiliation: >-
Jet Propulsion Laboratory, California Institute of
Technology
orcid: 'https://orcid.org/0000-0001-9497-7661'
- given-names: Francisco Ochoa
affiliation: >-
University of California, Los Angeles
orcid: 'https://orcid.org/0000-0003-3363-2496'
- given-names: Vatsal Jhalani
affiliation: >-
Jet Propulsion Laboratory, California Institute of
Technology
orcid: 'https://orcid.org/0000-0003-0866-0858'
- given-names: Winston Olson-Duvall
affiliation: >-
Jet Propulsion Laboratory, California Institute of
Technology
orcid: 'https://orcid.org/0000-0002-4210-0283'
identifiers:
- type: doi
value: 10.5281/zenodo.15098652
license: Apache-2.0
GitHub Events
Total
- Create event: 1
- Release event: 1
- Issues event: 8
- Watch event: 1
- Issue comment event: 8
- Push event: 12
- Pull request event: 11
- Fork event: 1
Last Year
- Create event: 1
- Release event: 1
- Issues event: 8
- Watch event: 1
- Issue comment event: 8
- Push event: 12
- Pull request event: 11
- Fork event: 1
Packages
- Total packages: 1
-
Total downloads:
- julia 1 total
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 1
juliahub.com: SpectralUnmixing
Spectral unmixing, oriented towards imaging spectroscopy data. Lots of flavors included.
- Homepage: https://emit-sds.github.io/SpectralUnmixing.jl/
- Documentation: https://docs.juliahub.com/General/SpectralUnmixing/stable/
- License: Apache-2.0
-
Latest release: 0.2.6
published 9 months ago
Rankings
Dependencies
- actions/checkout v2.2.0 composite
- julia-actions/setup-julia v1 composite