R中两个栅格(Landsat slc-off图像)的线性直方图匹配

时间:2014-12-22 13:58:55

标签: r gis histogram raster ecdf

我在R中有两个栅格(Landsat slc-off图像)。两个都缺少一些数据,但间隙位置完全偏移。例如,我在下面创建了两个栅格r1r2

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中实现这一目标吗?谢谢!

1 个答案:

答案 0 :(得分:1)

进一步谷歌搜索后,我遇到了包landsat。它具有histmatch()relnorm()功能。 ?histmatch()通过示例完美地解释了这一点。