平均累积成本面/最短路径[R][G距离]

平均累积成本面/最短路径[R][G距离],r,gis,R,Gis,我试图找到一种方法来平均两个累计成本面,这样我就可以找到从a到B和B到a的最佳路线。虽然成本面的差异是由旅行方向造成的,但出发点和目标点的旅行路线是相同的,因此我需要平均这些 从图中可以看出,累积成本面因行程是从A到B还是从B到A而不同。因此,计算的最佳路线不同 有没有办法平均两个累计成本面,以创建基于两次差旅的新成本面 可复制代码: library(gdistance) r <- raster(system.file("external/maungawhau.grd", package

我试图找到一种方法来平均两个累计成本面,这样我就可以找到从a到B和B到a的最佳路线。虽然成本面的差异是由旅行方向造成的,但出发点和目标点的旅行路线是相同的,因此我需要平均这些

从图中可以看出,累积成本面因行程是从A到B还是从B到A而不同。因此,计算的最佳路线不同

有没有办法平均两个累计成本面,以创建基于两次差旅的新成本面

可复制代码:

library(gdistance)
r <- raster(system.file("external/maungawhau.grd", package="gdistance"))

altDiff <- function(x){x[2] - x[1]}
hd <- transition(r, altDiff, 8, symm=FALSE)

slope <- geoCorrection(hd)

adj <- adjacent(r, cells=1:ncell(r), pairs=TRUE, directions=8)
speed <- slope
speed[adj] <- 6 * exp(-3.5 * abs(slope[adj] + 0.05))

Conductance <- geoCorrection(speed)

A <- c(2667670, 6479000)
B <- c(2667800, 6479400)
AtoB <- shortestPath(Conductance, A, B, output="SpatialLines")
BtoA <- shortestPath(Conductance, B, A, output="SpatialLines")

AtoBacc <- accCost(Conductance, A)
BtoAacc <- accCost(Conductance, B)

par(mfrow=c(1,3))
plot(AtoBacc, main="A to B")
plot(BtoAacc, main="B to A")

plot(r, xlab="x coordinate (m)", ylab="y coordinate (m)", legend.lab="Altitude (masl)", main="Both")
lines(AtoB, col="red")
lines(BtoA, col="blue")
text(A[1] - 10, A[2] - 10, "A")
text(B[1] + 10, B[2] + 10, "B")
库(gdistance)

r您会使用累计成本表作为输入来计算另一条路线吗?这有什么意义呢?这比我试图平均A到B和B到A旅程所用的累计成本面要多。我的理解是,由此产生的LCP将是A到B LCP和B到A LCP空间位置的“平均值”。从本质上说,我试图创建一个累积成本面,从而为A到B和B到A的旅程产生“最佳”LCP。