注册栅格 (Data Management)
摘要
此工具基于参考图像自动计算出的控制点或通过使用一组预定义控制点来注册图像。根据控制点计算出的几何变换将被写入至输入数据集中。如果输入数据集为镶嵌数据集,此工具将应用于每个镶嵌数据集项。
要自动注册图像,输入栅格和参考栅格必须位于相对较近的地理区域内。您可能需要创建一个包含若干链接的链接文件,才能将输入栅格置于同一地图空间内。可使用地理配准工具条创建链接表。
用法
-
输入栅格会更新其地理配准信息。
利用关键字 RESET 可以移除使用此工具所应用的任何地理变换。
此工具可用于注册镶嵌数据集中的所有项目、项目子集或镶嵌数据集中的单个项目。如果只希望注册某个特定项目,则需要输入镶嵌数据集的完整路径以及针对待更新项目的唯一查询。
以下是一些有关如何将镶嵌数据集中的某个项目选为输入栅格的示例:
- \\Myserver\MyFolder\MyMosaicDataset\OBJECTID=1
- \\Myserver\MyFolder\MyMosaicDataset\NAME='tileName01'
如果希望选择项目的子集,则可以在镶嵌数据集图层上进行选择。
当输入栅格是含全色锐化项目的镶嵌数据集时,通过将参考栅格和输入链接文件参数留空,此工具可以自动将多光谱栅格注册到全色栅格。
语法
参数 | 说明 | 数据类型 |
in_raster |
输入栅格数据集。工具运行完毕后,输入栅格会更新其地理变换。 注册镶嵌数据集项目只会更新该镶嵌数据集中的特定项目。镶嵌数据集项目的路径将为镶嵌数据集路径,后跟该项目的对象 ID。例如,镶嵌数据集中第一个项目的路径将如下所示:.\mosaicDataset\objectid=1。 对于镶嵌数据集输入,将基于控制点和参考栅格注册各个镶嵌数据集项目。 | Mosaic Layer; Raster Dataset; Raster Layer |
register_mode |
选择注册模式。既可以注册含变换的栅格,也可以重置变换。
| String |
reference_raster (可选) |
选择要与输入栅格匹配的参考栅格。 如果要将多光谱镶嵌数据集项目注册到与之关联的全色栅格,请将此参数留空。 | Image Service; Internet Tiled Layer; Map Server Layer; MapServer; Mosaic Layer; Raster Dataset; Raster Layer; WMS Map |
input_link_file (可选) |
链接文件,用于将输入栅格放置在与参考栅格相同的地图空间中。 输入链接文件中的各行均可为以下值中的任意一个,之间均使用 Tab 键进行分隔:
输入链接表可处理镶嵌图层中的单个镶嵌项目。输入必须指定要处理的项目,指定方式为:选择项目或在输入中指定 ObjectID。 如果要将多光谱镶嵌数据集项目注册到与之关联的全色栅格,请将此参数留空。 | Text File |
transformation_type (可选) | 几何变换类型。
| String |
output_cpt_link_file (可选) | 输出链接文件,其中包含此工具创建的注册链接。输出链接表可用于根据文件扭曲工具。 输出链接文件中的各行均具有以下值,之间均使用 Tab 键进行分隔:
输出链接表可处理镶嵌图层中的单个镶嵌数据集项目。输入必须指定要处理的项目,指定方式为:选择项目或在输入中指定 ObjectID。 | Text File |
maximum_rms_value (可选) |
最大均方根误差 (RMSE) 是输出变换所允许的最大建模误差。设置最大均方根误差能够消除较大的残差,从而减少变换的误差。默认情况下,最大均方根误差设置为输入栅格像元大小的 0.5 倍。最大均方根误差不应小于输入栅格像元大小的 0.3 倍。 | Double |
代码实例
以下是 RegisterRaster(注册栅格)工具的 Python 示例。
import arcpy
arcpy.RegisterRaster_management(
"\\cpu\data\nonref.tif", "REGISTER", "\\cpu\data\yesref.tif",
"\\cpu\data\links.txt", "POLYORDER1", "#")
以下是 RegisterRaster(注册栅格)工具的 Python 脚本示例。
# Register raster using only control points
import arcpy
arcpy.env.workspace = "C:/Workspace"
rdname = "irs_ps.img"
mode = "REGISTER"
refrd = ""
linkfile = "C:/Workspace/irs_controls_13.txt"
order = "POLYORDER2"
arcpy.RegisterRaster_management(
rdname, mode, refrd, linkfile, order)