我想更改光栅的分辨率。例如,我们以
此 Landsat 7 图像分辨率约为 30m。
library(terra)
#> terra 1.5.21
f <- system.file("tif/L7_ETMs.tif", package = "stars")
r <- rast(f)
# 30m x 30m resolution
res(r)
#> [1] 28.5 28.5
plot(r, 1)
我可以用aggregate()
具有整数因子,例如:
# 10 * 28.5
r2 <- aggregate(r, fact = 10)
res(r2)
#> [1] 285 285
plot(r2, 1)
我的问题是,我如何指定精确分辨率。例如,我会
希望像素分辨率为 1.234 km (1234 m)。
fact <- 1234 / 28.5
fact
#> [1] 43.29825
r3 <- aggregate(r, fact = fact)
res(r3)
#> [1] 1225.5 1225.5
plot(r3, 1)
文档说fact
应该是一个整数,所以这里是
地板fact
to 43.
res(aggregate(r, 43))
#> [1] 1225.5 1225.5
有什么办法可以得到1234 m的精确分辨率吗?
Created on 2022-04-28 by the reprex package https://reprex.tidyverse.org (v2.0.1)