Scyllarus: C++ Hyperspectral Processing Library
Hyperspectral Image Processing Pipeline
|
#include <armadillo>
#include <opencv2/opencv.hpp>
#include <iso646.h>
#include "utility_imp.h"
#include "ocv_tools.h"
#include "logger.h"
#include "nurbs.h"
Go to the source code of this file.
Namespaces | |
scyl | |
Functions | |
template<class T > | |
void | scyl::nan_to_zero (T &in) |
nan_to_zero removes NaN values from a Armadillo data structure, replacing them with 0. More... | |
template<class T > | |
void | scyl::zero_to_one (T &in) |
zero_to_one replaces 0's in an Armadillo data structure with 1's. More... | |
template<class T > | |
bool | scyl::arma_cmp (const T &a, const T &b, const bool verbose=false, float eps=arma::Datum< float >::eps) |
arma_cmp compares two Armadillo objects for equality +- epsilon. More... | |
template<class T > | |
int | scyl::arma_cmp_num (const T &a, const T &b, float eps) |
template<class T > | |
float | scyl::arma_cmp_sig_figs (const T &a, const T &b, int num_sig_figs=6) |
arma_cmp compares two Armadillo objects for equality. Instead of using a tolerance, test number of significant figures. More... | |
arma::fvec | scyl::non_negative_least_squares_2 (arma::fmat a, arma::fvec b) |
non_negative_least_squares_2() gives a non negative solution for x to the problem of Ax = b. More... | |
void | scyl::remove_bands (arma::fcube &in, arma::fvec &waves, arma::uvec remove) |
remove_bands() removes image bands from the given image cube. More... | |
void | scyl::scale_cube (arma::fcube &in, int height, int width, int cv_interpolate_flag=cv::INTER_LINEAR) |
scale_cube() resamples a cube spatially using OpenCV resize methods. More... | |
float | scyl::angle (const arma::fvec &a, const arma::fvec &b) |
angle returns the angle between two vectors in degrees. More... | |
void | scyl::image_gradient (const arma::fmat &in, arma::fmat &gx, arma::fmat &gy) |
Calculates the gradients in the x and y directions for a given image. More... | |
arma::fmat | scyl::arma_slice_mean (const arma::fcube &in) |
arma_slice_mean() takes an image cube and returns a mat which is the mean image of all the slices. More... | |
void | scyl::register_image_bands (const arma::fcube &in, arma::fvec &coloff, arma::fvec &rowoff, int debug=0) |
register_image_bands() takes a image cube and attempts to automatically find the alignment of the bands in the image. More... | |
void | scyl::align_image_bands (arma::fcube &in, arma::fvec &coloff, arma::fvec &rowoff, int debug=0) |
align_image_bands() aligns bands in an image according to the input row and column offsets. More... | |
void | scyl::sort_bands (arma::fcube &I, arma::fvec &wavelengths) |
sort_bands() manipulates a Image cube and wavelengths vector. More... | |
arma::fmat | scyl::resample_endmembers (const arma::fmat &in_endmembers, const arma::fvec &in_waves, const arma::fvec &in_waves_new) |
resample_endmembers() is used to change the number of bands an endmember matrix has using NURBS. More... | |