Evaluation routine for NURBS encoded spectra

Contents

Syntax

 [R, WAVE_NEW] = eval_nurbs(KNOTS, WAVES, CP_REF, CP_WAVE, DEGREE)

Description

 This function evaluates the spectra encoded as a spline (NURBS)

Input:

     KNOTS: Knot vector - row column.
     CP_REF: Control point coordinates in the form of a 3D array of size height x width x ctrl_pts.
     CP_WAVE: Control point coordinates in the wavelength domain as given by a row vector of size 1 x ctrl_pts.
     WAVES: Wavelength vector for the image.
     DEGREE: Degree of the basis (polynominal) functions for the spline. By default, the degree is set to 3;

Output:

     R: Spectral image cube, stored as a 3D array of size height x width x bands.
     WAVE_NEW: The actual wavelengths where the NURBS have been evaluated.

Example

 Encode the spectra on the field HSZ.S.Elements using NURBS of order 2 and
 evaluate them afterwards over the same wavelength vector.
 [KNOTS, CP_REF, CP_WAVE] = get_nurbs(HSZ.S.Elements, HSZ.HDR.wavelength, 2);
 [R, WAVE_NEW] = eval_nurbs(KNOTS, HSZ.HDR.wavelength, CP_REF, CP_WAVE, 2)