16 #include <opencv2/opencv.hpp>
17 #include <opencv2/core/core.hpp>
18 #include <opencv2/highgui/highgui.hpp>
19 #include <opencv2/ml/ml.hpp>
31 const arma::fvec & end_members,
35 const arma::fvec & bounds);
38 void pca(
const arma::fcube &
I,
39 arma::fcube & principal_components,
40 arma::fvec & eigenvalues,
41 int num_components=10,
42 float threshold=0.001);
47 const arma::fvec & wavelengths,
48 const arma::fmat & spectra,
49 const arma::fvec & spectra_waves,
50 arma::fcube & abundances,
51 arma::ucube & indices,
54 void sam(
const arma::fcube &
I,
55 const arma::fvec & wavelengths,
56 const arma::fmat & spectra,
57 const arma::fvec & spectra_waves,
59 arma::ucube & indices,
62 void svm(
const arma::fcube &
I,
63 const arma::fvec & wavelengths,
64 const arma::fmat & spectra,
65 const arma::fvec & spectra_waves,
66 const arma::uvec & spectra_labels,
67 arma::umat & indices);
70 const arma::fvec & wavelengths);
72 arma::fmat
band_maths(std::vector<const arma::fcube *> images, std::string expression);
arma::fmat mix_spectra_vec(const arma::fvec &abundances, const arma::fvec &end_members, bool normalise=true)
mix_spectra_vec() seems to merely replicate abundances across endmembers many bands.
Definition: processing.cpp:26
arma::fvec wavelength_subset(const arma::fvec &set, const arma::fvec &bounds)
wavelength_subset() removes elements from set that are outside of the range of elements in bounds...
Definition: processing.cpp:66
I.
Definition: scyllarus_types.h:114
void svm(const arma::fcube &I, const arma::fvec &wavelengths, const arma::fmat &spectra, const arma::fvec &spectra_waves, const arma::uvec &spectra_labels, arma::umat &indices)
svm() takes an input data structure and a list of spectra and classifies each pixel as one of the giv...
Definition: processing.cpp:720
arma::fmat band_maths(std::vector< const arma::fcube * > images, std::string expression)
Definition: processing.cpp:1196
arma::fcube spectral_derivative(const arma::fcube &I, const arma::fvec &wavelengths)
Definition: processing.cpp:907
void sam(const arma::fcube &I, const arma::fvec &wavelengths, const arma::fmat &spectra, const arma::fvec &spectra_waves, arma::fcube &angles, arma::ucube &indices, int num_materials=5)
sam() takes an input data structure and a list of spectra and calculates angles for each pixel to eac...
Definition: processing.cpp:503
void pca(const arma::fcube &I, arma::fcube &principal_components, arma::fvec &eigenvalues, int num_components=10, float threshold=0.001)
Definition: processing.cpp:365
void unmix_by_spectra(const arma::fcube &I, const arma::fvec &wavelengths, const arma::fmat &spectra, const arma::fvec &spectra_waves, arma::fcube &abundances, arma::ucube &indices, int num_materials=5)
unmix_by_spectra() takes an input data structure and a list of spectra and calculates abundances for ...
Definition: processing.cpp:115