ArcGIS教程:模糊隶属

原创 2015年07月10日 13:27:01

  摘要

  根据指定的模糊化算法,将输入栅格转换为 0 到 1 数值范围以指示其对某一集合的隶属度。

  值 1 表示完全隶属于模糊集,而当值降为 0 时,则表示不是模糊集的成员。

  

  用法

  · 此工具无法对分类数据进行度量。要将分类数据用于模糊叠加分析,需要执行预处理操作。您可以创建一个模型或运行下列地理处理工具。首先,使用重分类工具获得一个新的值域范围(例如,1 到 100)。然后,将重分类结果除以某个因子(例如 100),以便将输出值归一化为介于 0.0 和 1.0 之间的值。

  · 散度 (Spread) 可确定模糊隶属度从 1 下降到 0 的速度。其值越大,中点周围的模糊化就越陡。换言之,随着散度(spread) 的减小,模糊隶属度接近 0 的速度也将随之降低。选择合适的散度 (spread) 值是一个主观过程,它取决于明确值的数值范围。对于高斯函数和近邻 (Near) 函数,使用默认值 0.1 是一个很好的出发点。通常,值分别在 [0.01–1] 或 [0.001-1] 的区间内变化。对于小值 (Small) 函数和大值 (Large) 函数,使用默认值 5 是一个很好的出发点,通常,值在 1 和 10 之间变化。

  · 您有时可能会遇到没有任何一个输入值可以保证 100% 属于指定集合的情况。也就是说,没有任何一个输入值的模糊隶属度为 1。这种情况下,可能需要重新调整模糊隶属度的大小以反映出新的范围。例如,如果输入值的最大隶属度为 0.75,则可以通过将每个模糊隶属度乘以 0.75 来获得新的范围。

  · 执行的模糊限制语是 Very 和 Somewhat。Very 也称为浓缩,被定义为模糊隶属函数的平方。Somewhat 也称为膨胀或More or Less,是模糊隶属函数的平方根。very 和 somewhat 模糊限制语可分别减小和增大模糊隶属函数。

  · 小值 (Small) 和大值 (Large) 隶属函数不接受负值。

  · 对于线性 (Linear) 隶属函数,输入栅格必须为序列化的数据。最小值可以小于最大值以创建正斜率的函数,也可以大于最大值以创建负斜率的函数来适应这种变换。

  如果最小值小于最大值,则使用正斜率函数进行变换;如果最小值大于最大值,则会使用负斜率函数。

  语法

  FuzzyMembership (in_raster, {fuzzy_function}, {hedge})

  代码实例

  模糊隶属 (FuzzyMembership) 示例 1(Python 窗口)

  该示例通过高斯函数创建了一个模糊隶属度栅格,其中,距离中点 (1,200 ft) 较近的高程值的隶属度值较大。

  import arcpy

  from arcpy.sa import *

  from arcpy import env

  env.workspace = "c:/sapyexamples/data"

  outFzyMember = FuzzyMembership("elevation", FuzzyGaussian(1200, 0.06))

  outFzyMember.save("c:/sapyexamples/fzymemb")

  模糊隶属 (FuzzyMembership) 示例 2(独立脚本)

  该示例通过高斯函数和值为 0.4 的散度创建了一个模糊隶属度栅格,其中,距离中点 (1,000 ft) 较近的高程值的隶属度较大。

  # Name: FuzzyMembership_Ex_02.py

  # Description: Scales input raster data into values ranging from zero to one

  # indicating the strength of a membership in a set.

  # Requirements: Spatial Analyst Extension

  # Import system modules

  import arcpy

  from arcpy import env

  from arcpy.sa import *

  # Set environment settings

  env.workspace = "C:/sapyexamples/data"

  # Set local variables

  inRaster = "elevation"

  # Create the FuzzyGaussian algorithm object

  midpoint = 1000

  spread = 0.4

  myFuzzyAlgorithm = FuzzyGaussian(midpoint, spread)

  # Check out the ArcGIS Spatial Analyst extension license

  arcpy.CheckOutExtension("Spatial")

  # Execute FuzzyMembership

  outFuzzyMember = FuzzyMembership(inRaster, myFuzzyAlgorithm)

  # Save the output

  outFuzzyMember.save("c:/sapyexamples/fzymemb2")

相关文章推荐

ArcGIS教程:模糊隶属

  • 2015年03月19日 09:27
  • 42KB
  • 下载

ArcGIS教程:模糊叠加的工作原理

模糊叠加工具可以对多准则叠加分析过程中某个现象属于多个集合的可能性进行分析。模糊叠加不仅可以确定某个现象可能属于哪个集合,还可以分析多个集合的成员之间的关系。   叠加类型列出了适用于根据集合理论分...

ArcGIS教程:将模糊逻辑应用于叠加栅格(一)

模糊逻辑可用作叠加分析方法,来求解诸如地点选择和适宜性模型等传统的叠加分析应用。   模糊逻辑的基本前提是空间数据的属性和几何中存在误差。模糊逻辑提供了用于解决两种类型的误差的方法,但由于模糊逻辑与...

ArcGIS教程:将模糊逻辑应用于叠加栅格(二)

模糊分类   模糊化过程针对没有明确定义的边界的现象表征类的不精确性。   模糊化会将现象的原始值转换为属于某个定义集合的可能性。定义的集合可由适宜的、在适合的距离范围内或具有查找特定矿物的可能性...

ArcGIS教程:模糊叠加

  • 2015年03月17日 13:42
  • 21KB
  • 下载

ArcGIS教程:模糊叠加的工作原理

  • 2015年02月28日 17:35
  • 34KB
  • 下载

oracle sql语言模糊查询--通配符like的使用教程

oracle在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像...”的数据记录,以下是可使用的通配符: %   零或者多个字符 ...
  • lqh4188
  • lqh4188
  • 2013年08月20日 09:22
  • 758

ArcGIS教程:模糊分类的工作原理

  • 2015年03月03日 09:43
  • 131KB
  • 下载

07--MySQL自学教程:DQL(Data Query Language:数据库查询语言)简介、基础查询、条件查询、模糊查询以及排序(一)

1. DQL(Data Query Language:数据库查询语言) 基础查询 条件查询 模糊查询 排序...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ArcGIS教程:模糊隶属
举报原因:
原因补充:

(最多只允许输入30个字)