Python 栅格函数允许您创建自定义栅格函数。可将影像处理算法写入 Python,并将其应用至镶嵌数据集和栅格数据集。Python 栅格函数可像任何其他函数一样插入到函数链中。其接受以下两种输入之一:.py 文件或 .pyd(经过编译的 Cython)文件。该函数的参数将在 Python 脚本中进行指定。指定一个脚本时,表将以可用参数填充。
右键单击函数对话框中的一个现有函数,可将 Python 栅格函数插入到函数链中。与即用型函数不同,右键单击现有函数,函数便会位于第一个快捷菜单中。
此函数内有三个输入:
- Python 模块
- 类名称
- 参数
Python 模块
Python 模型是 Python 脚本的路径。输入可以采用 Python 文件 (.py) 或经过编译的 Cython 文件 (.pyd) 形式。在 Python 代码内,将会有一些用于描述函数、参数和输出相关信息的方法。在指定此参数后,类名称和参数部分将被填充。
有关 Python 栅格函数的详细信息,请参阅 GitHub 上的 Python 栅格函数。
类名称
类名称是为 Python 脚本中使用的代码块提供的名称。一个 Python 输入通常只有一个类,但 Python 脚本可具有多个类。指定类名称时,参数将自动以可用参数填充。
参数
指定类名称后,参数表将以 Python 脚本中定义的参数名称和值进行填充。您可编辑 Value 字段以自定义您的输出。
有五种可用作参数的数据类型:数值、字符串、单个栅格、多个栅格和布尔。可在 Python 脚本内为参数创建域,以便限制用户可从中进行选择的输入值的列表。在此情况下,单击该值后,便会出现一个下拉菜单。Python 脚本内的 getParameterInfo() 方法将控制所设置的输入参数。有关 getParameterInfo() 方法的详细信息将在 GitHub 上提供。
如果该参数类型设为多个栅格,可单击该参数的 Value 部分,随即打开一个窗口。此窗口允许您从多个来源添加栅格。从该对话框添加栅格时,将提供以下选项。
- 从磁盘添加栅格 - 添加位于磁盘上的栅格。可添加栅格数据集、镶嵌数据集和栅格产品。
- 添加函数链 - 添加函数链作为输入。
- 添加标量 - 添加标量值。标量值必须为数值。
- 添加所选输入的引用 - 添加所选栅格或所选函数链输入的引用副本。所引用栅格或函数链的更改将反映在该引用副本中。创建多个可能使用相同引用输入的函数时,这将十分有用。
- 添加所选输入的副本 - 添加所选函数链输入的静态副本。函数链副本的更改不会反映此静态副本。创建函数链中存在微小变化的多个相似函数时,这将十分有用。