我正在过滤超光谱数据。我有204个光谱带。我尝试使用以下代码对标准正态变量(SNV)和多重散射校正(MSC)进行R。对于SNV:
spectra <- data[, 1:204]
means <- apply(spectra, 2, mean)
sds <- apply(spectra, 2, sd)
data_snv <- scale(spectra, center = means, scale = sds)
对于MSC:
average_spectrum <- apply(spectra, 2, mean)
corrected_spectra <- sweep(spectra, 2, average_spectrum, FUN = "-")
想确认这些是否正确?
尝试使用这些代码,但不确定。
1条答案
按热度按时间iezvtpos1#
您可以使用
prospectr
包来执行所有这些操作,如