题目:动物需要在不同的森林公园之间迁徙交流,在经过不同的地表时,动物迁徙的困难程度是不一样的,如经过草地林地比较容易,而经过水域和道路时则比较困难。需要我们在不同的公园之间构建生态廊道,保护动物的迁徙。
01数据说明:
研究区分类影像.tif:监督分类后的研究区影像数据。
高速公路.shp:高速公路线数据。
市区道路.shp:市区道路线数据。
铁路.shp:铁路线数据。
河流.shp:河流面数据。
森林公园.shp:两个森林公园点数据。
02项目要求:
找出从辰山植物园到阳山森林公园之间动物迁徙所花费成本最低的路线,规划部门将在这个路径上修建生态廊道,以保护动物在两个森林公园之间迁徙。动物在迁徙过程中,在经过不同的地表时,困难程度是不一样的,经过不同地物的成本值见下表。
注:道路线数据的影响范围见下表缓冲距离。
03技术路线:
- 分别对道路、高速公路、铁路设置缓冲区,并添加字段分别设置阻力值,得到交通用地的阻力图层;
- 对监督分类后的研究区土地利用栅格图像进行单值重分级(因每个地类对应一个值),分别设置阻力值,同时,为河流图层设置阻力面;
- 对设置完阻力值后的数据进行矢量栅格化,方便后续对各图层进行加权总和生成项目所需的成本面;
- 最后,规划成本路径,使用工具最小耗费路径,输入项目待分析的地点位置XY坐标,按照3生成的成本面进行路径规划。
注:
- 导入监督分类后的tif时,需按照未编码的栅格格式进行导入。
- 为解决进行生态廊道规划时,目标点可能处于0权重(空白区域)的情况,我在加权结束后通过修改无值工具将结果数据集的无值区域全部更改为无穷小(-9999),随后利用代数运算工具(表达式):Con([修改无值-结果数据集] ==-9999,0,[修改无值-结果数据集])将结果栅格数据集属性范围内的-9999栅格值改为0,属性外的无值区域不变,这样即解决了研究区范围内无值问题影响耗费路径规划的问题。
- 因成本面为栅格数据,存在无值(即-9999)的栅格值干扰路径耗费计算,为解决进行生态廊道规划时,潜在路径超越研究区域的问题。我在步骤2后对结果数据集进行了栅格裁剪操作,范围数据选取栅格矢量化后的研究区域(需要特别注意的是,在进行此栅格转矢量操作时,需提前在文件-选项-环境-分析内存模式:选择大内存模式,避免图层对象数量较多时,电脑运行出错的问题)。利用研究区域面裁剪的成本面,即得到研究区域内的成本面,规避了路径规划时超越研究区域的问题。
- PA每次运行结束,添加字段工具需要重新命名才能得以再次运行(命名被占用的问题),同时,后续的矢量转栅格字段不能对应,需手动调整;我们尝试通过引入字符串(行内变化替换),尝试固定,同时巧妙借用删除字段以唯一添加字段名称。
04教学视频:
接下来就让我们一起看看解题过程吧:
SuperMap-处理自动化-构建生态廊道
戳我获取数据和模型
链接:百度网盘 请输入提取码
提取码:moje