Calculates the c-factor proposed by Roy et al. (2016) which can be used to normalize surface reflectance data to nadir BRDF adjusted reflectance (NBAR), or to convert NBAR observations to off-nadir surface reflectance. The c-factor is calculated based on a spectral kernel-based BRDF model. The mathematical formulation of the kernels is presented in Wanner et al. (1995), Lucht et al. (2000) and Carlsen et al. (2020) .
Arguments
- SAA
SpatRaster or numeric. Solar azimuth angle in degrees.
- SZA
SpatRaster or numeric. Solar zenith angle in degrees.
- VAA
SpatRaster or numeric. Satellite sensor azimuth angle in degrees.
- VZA
SpatRaster or numeric. Satellite sensor zenith angle in degrees.
- NSZ
numeric. NBAR solar zenith angle. This prescribed
NSZ
is obtained from the satellite product metadata or calculated using the algorithm and code provided by Li et al. (2019) .- br
numeric. Crown relative height parameter. Defaults to 1.0.
- hb
numeric. Shape parameter. Defaults to 2.0.
- band
character. Spectral band to be processed. There are six bands that can be considered: "blue (0.43-0.45 um)", "green (0.53-0.59 u)", "red (0.64-0.67 um)", "NIR" (near-infrared, 0.85-0.88 um), "SWIR" (shortwave-infrared, 1.57-1.65 um), and "SWIR2 (shortwave-infrared, 2.11-2.29 um)".
References
Carlsen T, Birnbaum G, Ehrlich A, Helm V, Jäkel E, Schäfer M, Wendisch M (2020).
“Parameterizing anisotropic reflectance of snow surfaces from airborne digital camera observations in Antarctica.”
The Cryosphere, 14(11), 3959–3978.
doi:10.5194/tc-14-3959-2020
.
Li Z, Zhang HK, Roy DP (2019).
“Investigation of Sentinel-2 Bidirectional Reflectance Hot-Spot Sensing Conditions.”
IEEE Transactions on Geoscience and Remote Sensing, 57(6), 3591–3598.
doi:10.1109/TGRS.2018.2885967
.
Lucht W, Schaaf CB, Strahler AH (2000).
“An algorithm for the retrieval of albedo from space using semiempirical BRDF models.”
IEEE Transactions on Geoscience and Remote Sensing, 38(2), 977–998.
doi:10.1109/36.841980
.
Roy DP, Zhang HK, Ju J, Gomez-Dans JL, Lewis PE, Schaaf CB, Sun Q, Li J, Huang H, Kovalskyy V (2016).
“A general method to normalize Landsat reflectance data to nadir BRDF adjusted reflectance.”
Remote Sensing of Environment, 176, 255–271.
doi:10.1016/j.rse.2016.01.023
.
Wanner W, Li X, Strahler AH (1995).
“On the derivation of kernels for kernel-driven models of bidirectional reflectance.”
Journal of Geophysical Research, 100(D10), 21077.
doi:10.1029/95JD02371
.
Examples
# Using data with numeric format
cfactor_BRDF(SAA = 56.58, SZA = 35.6, VAA = 236.4, VZA = 1.00, NSZ = 34.97, band = "NIR")
#> [1] 0.9966411
# Using SpatRaster data
library(terra)
m1 <- matrix(seq(from = 56.54, to = 56.67, length.out = 9), nrow = 3, ncol = 3)
m2 <- matrix(seq(from = 35.54, to = 35.65, length.out = 9), nrow = 3, ncol = 3)
m3 <- matrix(seq(from = 221.05, to = 259.06, length.out = 9), nrow = 3, ncol = 3)
m4 <- matrix(seq(from = 0.53, to = 1.12, length.out = 9), nrow = 3, ncol = 3)
SAA <- terra::rast(m1)
SZA <- terra::rast(m2)
VAA <- terra::rast(m3)
VZA <- terra::rast(m4)
cfactor_BRDF(SAA, SZA, VAA, VZA, NSZ = 34.97, band = "NIR")
#> class : SpatRaster
#> size : 3, 3, 1 (nrow, ncol, nlyr)
#> resolution : 1, 1 (x, y)
#> extent : 0, 3, 0, 3 (xmin, xmax, ymin, ymax)
#> coord. ref. :
#> source(s) : memory
#> name : lyr.1
#> min value : 0.9966314
#> max value : 0.9992424