Generate a color signature for each soil profile in a collection.
Arguments
- spc
a
SoilProfileCollection
object- r
horizon level attribute containing soil color (sRGB) red values
- g
horizon level attribute containing soil color (sRGB) green values
- b
horizon level attribute containing soil color (sRGB) blue values
- method
algorithm used to compute color signature,
colorBucket
,depthSlices
, orpam
- pam.k
number of classes to request from
cluster::pam()
- RescaleLightnessBy
rescaling factor for CIE LAB L-coordinate
- useProportions
use proportions or quantities, see details
- pigmentNames
names for resulting pigment proportions or quantities
- apply.fun
function passed to
aqp::profileApply(APPLY.FUN)
argument, can be used to add progress bars viapbapply::pblapply
, or parallel processing withfurrr::future_map
Value
For the colorBucket
method, a data.frame
object containing:
id column: set according to
idname(spc)
.white.pigment
: proportion or quantity of CIE LAB L-values.red.pigment
: proportion or quantity of CIE LAB positive A-values.green.pigment
: proportion or quantity of CIE LAB negative A-values.yellow.pigment
: proportion or quantity of CIE LAB positive B-values.blue.pigment
: proportion or quantity of CIE LAB negative B-values
Column names can be adjusted with the pigmentNames
argument.
For the depthSlices
method ...
For the pam
method ...
Details
See the related tutorial.
Examples
# trivial example, not very interesting
data(sp1)
depths(sp1) <- id ~ top + bottom
# convert Munsell -> sRGB triplets
rgb.data <- munsell2rgb(sp1$hue, sp1$value, sp1$chroma, return_triplets = TRUE)
sp1$r <- rgb.data$r
sp1$g <- rgb.data$g
sp1$b <- rgb.data$b
# extract color signature
pig <- soilColorSignature(sp1)