如何查看machisplin集成算法中选中的卫星图像降尺度模型?
如何查看machisplin包降尺度所使用的算法?
我正在使用非CRAN的R包machisplin进行卫星图像降尺度。该包的machisplin.mltps函数说明如下:
该函数会同时评估6种算法的不同组合以预测输入数据。在模型调优期间,每种算法会被系统地赋予0-1的权重,并评估集成模型的拟合效果。通过10折交叉验证确定最优模型,选择测试数据残差平方和最低的模型。确定最优模型的算法和权重后,使用全训练数据集创建最终模型。
我现在的问题是:如何查看这6种算法中,最终是哪一种(或哪些组合)被选中用于降尺度?也就是导出降尺度后的图像时,我想明确知道最终使用的算法信息。
我的代码如下:
library(MACHISPLIN) library(raster) library(gbm) evi = raster("path/evi.tif") # 协变量栅格 ntl = raster("path/ntl_1600.tif") # 待降尺度的栅格 ## 将其中一个栅格转换为点数据框用于采样,可使用任意输入栅格 ntl.points <- rasterToPoints(ntl, fun = NULL, spatial = FALSE) ## 仅保留x和y坐标数据 ntl.points <- ntl.points[,1:2] ## 从栅格中提取点对应的数值 RAST_VAL <- data.frame(extract(ntl, ntl.points)) ## 合并采样数据与输入坐标 InInterp <- cbind(ntl.points, RAST_VAL) # 运行集成机器学习薄板样条插值 interp.rast <- machisplin.mltps(int.values = InInterp, covar.ras = evi, smooth.outputs.only = T, tps = T, n.cores = 4) # 将负值设为0 interp.rast[[1]]$final[interp.rast[[1]]$final <= 0] <- 0 writeRaster(interp.rast[[1]]$final, filename = "path/ntl_splines.tif")
我已经查看了该包的所有输出参数(包括包描述中的示例2),但没有找到相关的算法信息。也已在GitHub提交了相关问题,相关测试图像可获取。
内容的提问来源于stack exchange,提问作者Nikos
相关产品推荐
相关产品推荐

