【发布时间】:2015-05-08 14:11:55
【问题描述】:
我想使用提到的两个包“rgdal”和“raster”来裁剪 GeoTiff 光栅文件。一切正常,除了生成的输出 tif 的质量非常差并且是灰度而不是彩色。原始数据是来自瑞士联邦地形局的高质量栅格地图,示例文件可以下载here。
这是我的代码:
## install.packages("rgdal")
## install.packages("raster")
library("rgdal")
library("raster")
tobecroped <- raster("C:/files/krel_1129_2012_254dpi_LZW.tif")
ex <- raster(xmn=648000, xmx=649000, ymn=224000, ymx=225000)
projection(ex) <- proj4string(tobecroped)
output <- "c:/files/output.tif"
crop(x = tobecroped, y = ex, filename = output)
为了重现此示例,请下载 the sample data 并将其解压缩到文件夹“c:/files/”。奇怪的是,使用样本数据,裁剪图像的质量还不错,但仍然是灰度。
我尝试使用“数据类型”、“格式”选项,但没有得到任何结果。有人可以指出解决方案吗?我应该提供输入数据的更多信息吗?
编辑: Josh 的示例与样本数据 2 配合得非常好。不幸的是,我拥有的数据似乎更旧并且有些不同。如果您阅读以下 GDALinfo,您能告诉我我选择了什么选项吗:
# packages same as above
OldInFile = "C:/files/krel1111.tif"
dataType(raster(OldInFile)
[1] "INT1U"
GDALinfo(OldInFile)
rows 4800
columns 7000
bands 1
lower left origin.x 672500
lower left origin.y 230000
res.x 2.5
res.y 2.5
ysign -1
oblique.x 0
oblique.y 0
driver GTiff
projection +proj=somerc +lat_0=46.95240555555556 +lon_0=7.439583333333333+k_0=1 +x_0=600000+y_0=200000 +ellps=bessel +units=m+no_defs
file C:/files/krel1111.tif
apparent band summary:
GDType hasNoDataValue NoDataValue blockSize1 blockSize2
1 Byte FALSE 0 1 7000
apparent band statistics:
Bmin Bmax Bmean Bsd
1 0 255 NA NA
Metadata:
AREA_OR_POINT=Area
TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
TIFFTAG_XRESOLUTION=254
TIFFTAG_YRESOLUTION=254
Warning message:
statistics not supported by this driver
【问题讨论】:
-
package(rgdal,raster)给出错误。完全不清楚我们应该在链接站点的哪个位置找到crop.tiff,也不清楚在哪里可以找到krel1152.tiff。请让您的示例真正可重现!我的猜测是,当您写出裁剪结果时,您正在丢失颜色表。 ([参见此处]((stackoverflow.com/questions/19186050/r-slot-unreachable)) 以获取涉及光栅对象颜色表的示例)。也许没有crop()直接将其输出写入文件。相反,请检查输出并确保在将其写入磁盘之前保留颜色表。 -
对不起,这个例子真的很糟糕。我重写了它..你仍然坚持你的假设吗?
标签: r crop raster rgdal r-raster