我在R中有两个栅格(Landsat slc-off图像)。两个都缺少一些数据,但间隙位置完全偏移。例如,我在下面创建了两个栅格r1
和r2
。
r1 <- raster(system.file("external/test.grd", package="raster"))
r1_mat <- as.matrix(r1)
r1[which(!is.na(as.matrix(r1)))[1:600]] <- NA
par(mfrow=c(3,1))
plot(r1)
r2 <- raster(system.file("external/test.grd", package="raster"))
r2[which(!is.na(as.matrix(r2)))[900:1400]] <- NA
plot(r2)
然而,第二张图像是在不同的大气条件下拍摄的,例如,太阳能照明更好。为了模拟这种效果(非常简单):
r2 <- r2 + 200
现在我想在r1中填充缺失的数据,r2像素与间隙重叠,这很简单:
r3 <- cover(r1, r2)
plot(r3)
查看plot(r3)
的结果,所谓的“剥离效应”also shown in Figure 2 on this page here显而易见。建议的解决方案之一是在填充间隙之前将{2}图像标准化为matching their histograms 。该技术基于候选图像的累积分布函数,例如, as will be done in Grass 7
我究竟能在R中实现这一目标吗?谢谢!
答案 0 :(得分:1)
进一步谷歌搜索后,我遇到了包landsat
。它具有histmatch()
和relnorm()
功能。 ?histmatch()
通过示例完美地解释了这一点。