r.costgrass - 云端在线

这是 r.costgrass 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


成本 - 创建一个光栅图,显示在不同区域之间移动的累积成本
输入栅格地图上的地理位置,其像元类别值表示成本。

关键词


光栅、成本面、累积成本、成本分配

概要


成本
成本 - 帮帮我
成本 [-克利] 输入=姓名 产量=姓名 [最近的=姓名[外向=姓名]
[起点=姓名[停止点=姓名[起始栅格=姓名]
[开始坐标=东,北[,东,北,...]]
[停止坐标=东,北[,东,北,...]] [最大成本=折扣值[零成本=折扣值]
[记忆=折扣值] [--覆盖] [--帮助] [--详细] [--安静] [--ui]

标志:
-k
使用“骑士之举”; 更慢,但更准确

-n
在输出栅格地图中保留空值

-r
从栅格地图中的值开始

-i
打印有关磁盘空间和内存要求的信息并退出

--覆盖
允许输出文件覆盖现有文件

- 帮帮我
打印使用摘要

--详细
详细模块输出

- 安静的
静音模块输出

--用户界面
强制启动 GUI 对话框

参数:
输入=姓名 [必需的]
包含网格单元成本信息的输入栅格地图的名称

产量=姓名 [必需的]
输出栅格地图的名称

最近的=姓名
具有最近起点的输出栅格地图的名称

外向=姓名
包含移动方向的输出栅格地图的名称

起点=姓名
起始矢量点地图的名称
或用于直接 OGR 访问的数据源

停止点=姓名
停止向量点图的名称
或用于直接 OGR 访问的数据源

起始栅格=姓名
起始栅格点地图的名称

开始坐标=东,北[,东,北……]
起点坐标 (E,N)

停止坐标=东,北[,东,北……]
停止点坐标 (E,N)

最大成本=折扣值
最大累积成本
默认: 0

零成本=折扣值
分配给空单元格的成本。 默认情况下,排除空单元格

记忆=折扣值
要使用的最大内存(以 MB 为单位)
默认: 300

商品描述


成本 确定移动到每个单元格上的累积成本 成本 表面输入
栅格地图)来自其他用户指定的单元格,其位置由其指定
地理坐标。 原始成本表面图中的每个单元格将包含一个
类别值,表示遍历该单元格的成本。 成本 将产生 1)
an 产量 栅格地图,其中每个像元都包含最低的遍历总成本
每个像元和用户指定点之间的空间(对角线成本乘以一个
取决于单元格尺寸的因素)和 2)第二个栅格地图层
显示返回起点的路径上下一个单元格的移动方向(请参阅
运动方向)。 该模块使用当前的地理区域设置。 这 产量
地图的数据格式将与 输入 映射、整数或浮点数。

配置


这个 输入 姓名 是栅格地图的名称,其类别值表示表面
成本。 这 产量 姓名 是累积成本的结果栅格地图的名称。 这
外向 姓名 是运动方向的结果栅格地图的名称(请参阅运动
方向)。

成本 可以使用三种不同的方法来识别起点。 一
或更多点(地理坐标对)可以按规定提供
开始坐标 在命令行上,从矢量点文件,或从栅格地图。
所有非 NULL 单元格都被视为起点。

x,y 开始坐标 pair 给出了一个点的地理位置
应该计算运输成本。 可以输入任意数量的点
用户。 这些起点也可以从矢量点文件中通过
起点 选项或从栅格地图通过 起始栅格 选项。

成本 将在以下任一情况下停止累积成本 最大成本 到达,或停止之一
给出的分数 停止坐标 到达了。 或者,可以读取停止点
来自矢量点文件 停止点 选项。 在执行过程中,一旦
已确定所有停止点的累积成本,处理停止。
从矢量点文件中读取的两个站点和命令行上给出的站点都将是
处理。

中的空单元格 输入 可以为地图分配(正浮点)成本
零成本 选项。
当输入地图空单元格被赋予一个成本 零成本 选项,对应的
输出图中的单元格不再是空单元格。 通过使用 -n 标志,空单元格
输入映射在输出映射中保留为空单元格。

As 成本 可以运行很长时间,使用 --v 详细标志
跟踪进度。

骑士的举动(-k 标志)可用于提高输出的准确性。 在里面
下图,中心位置 (O) 代表一个网格单元,从中累积
计算距离。 那些标有 X 的邻居总是被考虑
累积成本更新。 随着 -k 选项,标有 K 的邻居也是
考虑过的。
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. . . 克。 . 克。 . .
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. . 克。 X 。 X 。 X 。 克。 .
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. . . X 。 哦。 X 。 . .
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. . 克。 X 。 X 。 X 。 克。 .
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. . . 克。 . 克。 . .
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。

骑士的移动示例:

平面 成本 表面 也完全不需要 (剩下 窗格) - 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 骑士的
移动 (正确的 窗格)。 这个 默认 is 增长 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 成本 向外
in 8 方向。 运用 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 骑士的 移动 成长 it 向外
in 16 方向。

如果 最近的 指定输出参数,模块将为每个单元格计算其
移动成本时基于最小累积成本的最近起点
地图。

细胞


默认情况下,输入栅格图中的空单元被排除在算法之外,因此
保留在输出映射中。

如果一个人想要 成本 透明地穿过空单元的任何区域, 零成本= 0.0
应该使用选项。 然后空单元格只会传播相邻的成本。 这些细胞可以
通过使用 -n 旗。

附注


有时,当整数单元格类别值之间的差异 成本
累计成本面产量小,这个累计成本产量不能准确
用作输入 排水管 (排水管 会输出不好的结果)。 这个问题可以
通过在累积成本中产生单元格类别值之间的差异来规避
输出更大。 建议,如果输出来自 成本 将用作输入
排水管,用户将输入成本表面图乘以 成本 根据地图的价值
细胞分辨率,运行前 成本. 这可以使用 地图计算器. 地图
分辨率可以使用 区域. 浮点不会出现这个问题
地图。

算法 笔记
计算最低旅行成本的基本方法如下:

用户生成一个栅格地图,指示遍历每个单元格的成本
南北和东西方向。 这张地图,连同一组起点是
提交给 成本. 起点被放入一个列表单元格中,从这些单元格到
计算相邻单元格。 列表中累积成本最低的单元格
被选择用于计算相邻单元格的成本。 计算成本和那些
单元格被放在列表中,原始单元格被最终确定。 这个选择过程
最低累积成本单元,计算邻居的成本,把邻居
在列表上并从列表中删除原始单元格继续直到列表
空的。

该算法最耗时的方面是单元格列表的管理
至少已经初步计算了累积成本。 成本 使用二进制
树中每个节点都有一个链表,用于有效地保存单元格
相同的累积成本。

成本,像大多数 GRASS 光栅程序一样,也可以在更大的地图上运行
可以放入可用的计算机内存中。 由于算法通过动态列表工作
细胞几乎可以在整个区域内随机移动。 成本 划分整个区域
成多个部分,并将这些部分交换进和出内存(到磁盘和从磁盘)作为
需要。 这提供了一种为二维栅格地图优化设计的虚拟内存方法。
要使用的内存量 成本 可以控制 记忆 选项,
默认为 300 MB。 对于内存较少的系统,此值必须设置为较低
计算值。

示例


考虑以下示例:
输入:
成本表
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. 2. 2. 1. 1. 5. 5. 5.
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. 2. 2. 8. 8. 5. 2. 1.
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. 7. 1. 1. 8. 2. 2. 2.
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
. 8. 7. 8. 8. 8. 8. 5.
. . . . . . . . . . _____。 .
. 8. 8. 1. 1. 5 | 3 | 9.
。 。 。 。 。 。 。 。 。 。 |___| 。 。
. 8. 1. 1. 2. 5. 3. 9.
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。
输出(使用 -k):输出(不使用 -k):
累积成本面 累积成本面
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 * * * * * 。 。 。 。 。 。
. 21. 21. 20. 19. 17. 15. 14.. 22. 21* 21 * 20 * 17。 15。 14。
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 * * * * * 。 。 。 。 。 。
. 20. 19. 22. 19. 15. 12. 11.. 20. 19. 22* 20 * 15。 12。 11。
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 * * * * * 。 。 。 。
. 22. 18. 17. 17. 12. 11. 9.. 22. 18. 17* 18 * 13 * 11。 9。
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 * * * * * 。 。 。 。
. 21. 14. 13. 12. 8. 6. 6.. 21. 14. 13. 12. 8. 6. 6.
. . . . . . . . . . _____。 . . . . . . . . . . . . . . . .
。 16 | 0 | 6.. 16. 13. 8. 7 . 4. 0. 6.
. . . . . . . . . . |___|。 . . . . . . . . . . . . . . . .
. 14. 9. 8. 9. 6. 3. 8.. 14. 9. 8. 9 。 6. 3. 8.
。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。

上例中用户提供的起始位置是盒装的 3 在上面的输入中
地图。 输出图中的成本表示从每个框(“单元”)移动的总成本
到一个或多个(这里只有一个)起始位置。 被星号包围的单元格是
那些使用和不使用骑士移动的操作之间的不同(-k)
选项。

输出 分析
例如,可以将输出地图视为高程模型,其中起始
位置是最低点。 输出来自 成本 可以用作输入
排水管 带方向旗 -d,为了追踪由此给出的最低成本路径
任何给定单元格和 成本 起始位置。 这两个程序,当
一起使用,在任何两个地图位置之间生成成本最低的路径或走廊
(细胞)。

最短 距离
这个 成本 模块允许计算每个像素与栅格的最短距离
线,例如确定家庭到附近道路的最短距离。 为了
使用成本值为 1 的成本面。 计算是用 成本 as
如下(以矛鱼地区为例):
g.region 栅格=道路 -p
r.mapcalc "area.one = 1"
r.cost -k input=area.one output=距离 start_raster=roads
d. 距离
d.rast.num 距离
#使用栅格分辨率从像元距离转换为公制距离:
r.mapcalc "dist_meters = distance * (ewres()+nsres())/2。"
d. 距离米

机芯 方向性


运动方向面是用来记录运动的顺序的
成本累积面。 没有它 排水管 不会正确地从
一个终点回到起点。 每个单元格的方向指向下一个
细胞。 方向记录为从东开始的逆时针度数:
112.5 67.5 即值为 135 的单元格
157.5 135 90 45 22.5 表示下一个单元格在西北
180 x 360
202.5 225 270 315 337.5
247.5 292.5

成本 分配
示例:计算成本分配图“costalloc”和累积成本图
给定起点(地图“源”)和给定成本栅格地图“成本”的“成本冲浪”:
r.cost input=costs start_raster=sources output=costsurf最近=costalloc

找到最适合您的地方 这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 最低限度 成本
一旦 成本 计算累积成本图, 排水管 可用于寻找最低成本
小路。 确保使用 -d 运行时的标志和运动方向光栅图
r.drain 以确保根据正确的移动方向计算路径。

使用 onworks.net 服务在线使用 r.costgrass



最新的 Linux 和 Windows 在线程序