R栅格合并更改值

时间:2016-07-28 08:56:47

标签: r raster r-raster

我有一系列GTiff图像,我试图合并到一个更大的范围。需要组合6个小瓷砖以产生更大的范围。我原来的6个图块的值范围为0到255.

例如:

> tiff.list[[1]]
class       : RasterLayer 
dimensions  : 1200, 1200, 1440000  (nrow, ncol, ncell)
resolution  : 926.6254, 926.6254  (x, y)
extent      : -10007555, -8895604, 2223901, 3335852  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.181 +units=m +no_defs 
data source : D:\Scratch\Data\MOD15A2.A2016153.h09v06.005.2016166083754.tif 
names       : MOD15A2.A2016153.h09v06.005.2016166083754 
values      : 0, 255  (min, max)

但是,when merging the tiles using the code detailed here,我收到了一个新的图片文件并且值已更改:

> xx
class       : RasterLayer 
dimensions  : 2400, 3600, 8640000  (nrow, ncol, ncell)
resolution  : 926.6254, 926.6254  (x, y)
extent      : -10007555, -6671703, 1111951, 3335852  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.181 +units=m +no_defs 
data source : D:\Scratch\Modis\A2016161.tif 
names       : A2016161 
values      : 0, 25  (min, max)

有谁知道为什么会这样?我已经尝试更改文件格式和dataType('INT1U'),但它一直在发生。重要的是,值不会从0变为255,因为原始数据来自NASAs MODIS卫星,并且某些值(即248-255)具有与其相关的特定填充值(例如,分配为水或雪的土地覆盖)。从最大值255更改为25将从原始文件中删除重要信息。

欢迎提供任何帮助。

1 个答案:

答案 0 :(得分:0)

这表明原始文件中不存在这些值。报告的原始文件的最小值和最大值基于其中提供的元数据。元数据可能是错误的(显示可能的范围,而不是实际值)。调查做

setMinMax(tiff.list[[1]])

tiff.list[[1]] * 1