我在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像素来填充r1中丢失的数据:
r3 <- cover(r1, r2)
plot(r3)从plot(r3)的结果来看,所谓的“剥离效应”也如图2所示,在这里是显而易见的。推荐的解决方案之一是在进行空白填充之前,通过匹配它们的直方图对这两个图像进行规范化。该技术基于候选图像(如将在草场做的事7 )的累积分布函数。
我怎样才能在R中实现这一点呢?谢谢!
发布于 2014-12-22 17:09:11
在进一步谷歌搜索之后,我偶然发现了cran包landsat。它有histmatch()和relnorm()函数来完成这个任务。?histmatch()用例子完美地解释了这一切。
https://stackoverflow.com/questions/27604166
复制相似问题