optimal_features_SFS: Function performing optimal feature selection based on...

View source: R/Lib_PROSPECT_Inversion.R

optimal_features_SFSR Documentation

Function performing optimal feature selection based on sequential forward feature slection

Description

Function performing optimal feature selection based on sequential forward feature slection

Usage

optimal_features_SFS(
  Refl = NULL,
  Tran = NULL,
  lambda,
  BiochTruth,
  Target,
  Parms2Estimate = "ALL",
  InitValues = data.frame(CHL = 40, CAR = 10, ANT = 0.1, BROWN = 0.01, EWT = 0.01, LMA =
    0.01, PROT = 0.001, CBC = 0.009, N = 1.5, alpha = 40),
  xlub = data.frame(CHL = c(1e-04, 150), CAR = c(1e-04, 25), ANT = c(0, 50), BROWN = c(0,
    4), EWT = c(1e-08, 0.1), LMA = c(1e-06, 0.06), PROT = c(1e-07, 0.006), CBC = c(1e-06,
    0.054), N = c(0.5, 4), alpha = c(10, 90)),
  SpecPROSPECT,
  spectral_domain,
  spectral_width,
  number_features,
  PROSPECT_version = "D",
  MeritFunction = "Merit_PROSPECT_RMSE",
  Est_alpha = FALSE,
  verbose = FALSE,
  nbCPU = 1,
  Continue = FALSE,
  AlreadyDone = NULL
)

Arguments

Refl

numeric. matrix of reflectances (n spectral bands x p samples)

Tran

numeric. matrix of transmittances (n spectral bands x p samples)

lambda

numeric. spectral bands corresponding to reflectance and transmittance measurements

BiochTruth

numeric. value of biophysical/biochemical parameter to estimate for each sample

Target

character. name of the parameter. Should be picked between "CHL", "CAR", "ANT", "BROWN", "EWT", "PROT", "CBC", "N"

Parms2Estimate

character vector. Parameters to estimate (can be 'ALL')

InitValues

data.frame. Default values of PROSPECT parameters. During optimization, they are used either as initialization values for parameters to estimate, or as fix values for other parameters. Parameters not compatible with PROSPECT_version are not taken into account.

xlub

data.frame. Boundaries of the parameters to estimate. The data.frame must have columns corresponding to Parms2Estimate first line being the lower boundaries and second line the upper boundaries.

SpecPROSPECT

list. Optical constants for a spectral domain broader than spectral_domain

spectral_domain

vector. defines minimum and maximum wavelengths of the spectral domain (in nm). Assumes 1nm spectral sampling

spectral_width

vector. width of individual spectral features (in nm)

number_features

vector. number of features to be identified

PROSPECT_version

character. Version of prospect model used for the inversion: 'D', 'PRO'

MeritFunction

character. name of the function to be used as merit function with given criterion to minimize (default = RMSE)

Est_alpha

boolean. should alpha be estimated or not?

verbose

boolean. set to TRUE to display sample number to be inverted

nbCPU

numeric. defines number of CPU for multithread processing

Continue

boolean. set to TRUE if the function has already been run for a lower value of number_features

AlreadyDone

list. contains output of function optimal_features_SFS previouly run with lower value of number_features

Value

list containing :

  • SpectralFeatures = the Spectral Features identified as most relevant for estimation of Target (vector)

  • SpectralFeatures_List = the Spectral Features identified as most relevant for estimation of Target (list)

  • EstimatedParm = the estimated Target parameter for each additional spectral feature

  • RMSE = the minimum RMSE corresponding to the estimation of Target for each asditional spectral feature


jbferet/prospect documentation built on Feb. 10, 2025, 9:35 a.m.