读取 TIF 文件错误 "Geographical CRS given to non-conformant data"
Read TIF file error "Geographical CRS given to non-conformant data"
我正尝试按如下方式读入 TIF 文件:
d = readGDAL('F182013.v4c.stable_lights.avg_vis.tif')
Error in validityMethod(as(object, superClass)) :
Geographical CRS given to non-conformant data: -180.004166667
该文件来自美国国家海洋和大气管理局 night light data,因此它应该是一个有效文件。可能问题涉及数值浮点数问题。
感谢任何解决方法的建议。
readGDAL
调用错误检查函数 validityMethod
,检查 WGS84 的经度是否在 +/- 180 度范围内。可以通过以下方式抑制非致命错误和消息:
d = readGDAL('F182013.v4c.stable_lights.avg_vis.tif', silent = TRUE)
这样文件至少可以作为 SpatialGridDataFrame 读入。物体对应的地理范围还是超出了+/-180度,但误差可能在你愿意接受的范围内。
bbox(d)
min max
x -180.00417 180.00417
y -65.00417 75.00417
解决方法是:
require(tiff)
r = raster(readTIFF(filepath, as.is = T))
extent(r) = extent(-180,180,-65,75)
crs(r) = CRS("+proj=longlat +datum=WGS84")
我正尝试按如下方式读入 TIF 文件:
d = readGDAL('F182013.v4c.stable_lights.avg_vis.tif')
Error in validityMethod(as(object, superClass)) :
Geographical CRS given to non-conformant data: -180.004166667
该文件来自美国国家海洋和大气管理局 night light data,因此它应该是一个有效文件。可能问题涉及数值浮点数问题。
感谢任何解决方法的建议。
readGDAL
调用错误检查函数 validityMethod
,检查 WGS84 的经度是否在 +/- 180 度范围内。可以通过以下方式抑制非致命错误和消息:
d = readGDAL('F182013.v4c.stable_lights.avg_vis.tif', silent = TRUE)
这样文件至少可以作为 SpatialGridDataFrame 读入。物体对应的地理范围还是超出了+/-180度,但误差可能在你愿意接受的范围内。
bbox(d)
min max
x -180.00417 180.00417
y -65.00417 75.00417
解决方法是:
require(tiff)
r = raster(readTIFF(filepath, as.is = T))
extent(r) = extent(-180,180,-65,75)
crs(r) = CRS("+proj=longlat +datum=WGS84")