导入室内图像 (Indoors)

适用于 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps 扩展模块。

摘要

将 360 度全景图像从 .e57 文件导入 Indoors 工作空间。 该工具的输出可集成至 ArcGIS Pro 中的楼层感知型地图和场景。

使用情况

  • 此工具支持 .e57 文件中包含的 360 度全景 JPEG 图像。 图像必须采用等距(球面)制图表达。

  • 借助此工具,结合所选或已定义的输入楼层要素,用户能够将图像分配至特定楼层。

  • 目标定向影像图层参数需为已启用 Z 值的定向影像图层。 可使用创建定向影像数据集工具生成定向影像。

  • 输入坐标系参数用于指定输入数据的水平和垂直坐标系。

    • 如输入 .e57 文件未指定或定义坐标系,系统默认输入数据采用与输入楼层要素相同的坐标系。
    • 如输入数据与输入楼层要素的坐标系不一致,工具会对导入图像的位置进行坐标重投影。
  • 为了支持楼层感知,工具会向目标定向影像数据集添加 LEVEL_ID 字段(如尚不存在)。

  • 工具将基于图像与楼层要素的 Z 值对比,为图像分配级别 ID。

    • 例如,图像会被分配至垂直位置在其上或正下方的楼层要素的级别 ID。
    • 如图像 Z 值低于最底层或高出最高层超过 15 米,图像将被赋予 Null 级别 ID。
    • 如图像落在所有楼层要素之外(基于 X,Y 坐标),则同样被赋予 Null 级别 ID。
  • 如果输入数据与输入 Levels 图层要素的 Z 原点不同,可通过高程调整参数来补偿这一差异。 工具将在完成必要的图像位置重投影之后,应用高程调整。

    例如,如果输入数据的 Z 值是相对于海平面的,而输入 Levels 要素的 Z 值是相对于地面水平的,则应使用负的高程调整参数值来补偿差异(如下图所示)。

    高程调整参数效果的逻辑示意图
    应用了值为 -400m 的负高程调整参数,以将图像与 Levels 要素垂直对齐。
  • 工具的定向影像要素属性设置如下:

    • Shape- x、y 和 z 坐标值基于输入数据文件中的图像位置信息。
    • Name- 输入数据文件元数据中的图像名称。 如果没有元数据,则采用输入文件名并追加数字编号。
      注:

      此值可能与 ImagePath 字段中的图像文件名不同。

    • LEVEL_ID- 关联楼层要素的级别 ID。 如果没有确定关联级别,则分配一个 Null 值。
    • ImagePath- 与要素关联的图像文件的路径。
    • AcquisitionDate- 来自输入文件元数据的获取日期和时间。 如果没有可用的元数据,则使用输入数据文件的最后修改日期和时间值。
    • CameraHeading- 基于输入数据文件中的图像旋转信息的相机朝向。 值以度为单位。
      • 朝向值沿正顺时针方向测量,其中北向定义为 0 度。
      • 此工具不填充定向影像的 CameraPitchCameraRoll 属性。
        注:

        相机朝向信息的存储方式可能因使用的软件而异。 检查工具输出以验证 CameraHeading 值是否正确,并在需要时使用计算字段工具调整 CameraHeading 值。

    • HorizontalFieldOfView- 相机在水平方向上的视野范围,以度为单位。
      • 有效值的范围为 0 到 360。
      • 此工具分配的默认值为 360。 使用水平视域参数调整此值。
    • VerticalFieldOfView- 相机在垂直方向上的视野范围,以度为单位。
      • 有效值介于 0 到 180 之间。
      • 此工具分配的默认值为 180。 使用垂直视域参数调整此值。
    • OrientedImageryType- 定向影像的类型。 此工具分配的值为 360,表示图像提供球面或全景的周围视图。
  • 此工具输出的定向影像可以与楼层感知地图配置使用,以配合楼层过滤器使用。

  • 导入的图像以本地文件形式存储。 使用根据定向影像数据集生成服务工具发布带有导入影像的托管要素服务。

  • 导入期间保留目标定向影像数据集中的现有要素。

参数

标注说明数据类型
输入数据

包含要导入的目标定向影像文件的 .e57 文件。

File
输入楼层要素

与目标影像图层位于同一工作空间的 ArcGIS Indoors 信息模型中的关联 Levels 图层。

Feature Layer
目标图像文件夹

将写入影像文件的现有文件夹。

Folder
目标定向影像

Indoors 工作空间中将通过导入图像更新的目标定向影像数据集。

Oriented Imagery Layer
输入坐标系
(可选)

输入图像文件的空间参考。 如果输入数据文件中没有指定坐标系,则可以选择一个坐标系。

Spatial Reference
高程调整
(可选)

将用于导入图像 z 值的调整值。 如果导入的图像被重新投影,则在投影后应用调整。 默认值是 0 米。

  • 如果值为 -300 英尺,则导入图像的 z 值降低 300 英尺。
  • 如果值为 25 0米,则导入图像的 z 值增加 250 米。
Double
水平视域
(可选)

导入图像的视域有效宽度,以度为单位。 有效值的范围为 0 到 360。 默认值为 360。

Double
垂直视域
(可选)

导入图像的视域有效高度,以度为单位。 有效值介于 0 到 180 之间。 默认值为 180。

Double

派生输出

标注说明数据类型
更新目标定向影像

Indoors 工作空间中更新的定向影像数据集。 导入期间保留现有的定向影像数据。 为输入数据中的每个图像追加一个新的点要素,并将关联的图像作为附件添加。 根据输入图像文件的属性设置新添加点要素的属性。

Oriented imagery Layer

arcpy.indoors.ImportIndoorImages(in_data, in_level_features, target_image_folder, target_oriented_imagery, {in_coordinate_system}, {elevation_adjustment}, {horizontal_field_of_view}, {vertical_field_of_view})
名称说明数据类型
in_data

包含要导入的目标定向影像文件的 .e57 文件。

File
in_level_features

与目标影像图层位于同一工作空间的 ArcGIS Indoors 信息模型中的关联 Levels 图层。

Feature Layer
target_image_folder

将写入影像文件的现有文件夹。

Folder
target_oriented_imagery

Indoors 工作空间中将通过导入图像更新的目标定向影像数据集。

Oriented Imagery Layer
in_coordinate_system
(可选)

输入图像文件的空间参考。 如果输入数据文件中没有指定坐标系,则可以选择一个坐标系。

Spatial Reference
elevation_adjustment
(可选)

将用于导入图像 z 值的调整值。 如果导入的图像被重新投影,则在投影后应用调整。 默认值是 0 米。

  • 如果值为 -300 英尺,则导入图像的 z 值降低 300 英尺。
  • 如果值为 25 0米,则导入图像的 z 值增加 250 米。
Double
horizontal_field_of_view
(可选)

导入图像的视域有效宽度,以度为单位。 有效值的范围为 0 到 360。 默认值为 360。

Double
vertical_field_of_view
(可选)

导入图像的视域有效高度,以度为单位。 有效值介于 0 到 180 之间。 默认值为 180。

Double

派生输出

名称说明数据类型
updated_target_oriented_imagery

Indoors 工作空间中更新的定向影像数据集。 导入期间保留现有的定向影像数据。 为输入数据中的每个图像追加一个新的点要素,并将关联的图像作为附件添加。 根据输入图像文件的属性设置新添加点要素的属性。

Oriented imagery Layer

代码示例

ImportIndoorImages 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 ImportIndoorImages 函数。

arcpy.indoors.ImportIndoorImages(r"C:\BuildingScans\BuildingA.e57",
                                 r"C:\IndoorsModel.gdb\Indoors\Levels",
                                 r"C:\indoorsphotos\photos",
                                 r"C:\IndoorsModel.gdb\OIDataset",
                                 '', '', '')
ImportIndoorImages 示例 2(Python 窗口)

以下独立脚本演示了如何使用 ImportIndoorImages 函数。

# Import system modules 
import arcpy

#Set parameter values
    in_data=r"C:\BuildingScans\BuildingA.e57"
    in_level_features=r"C:\IndoorsModel.gdb\Indoors\Levels"
    target_image_folder=r"C:\indoorsphotos\photos"
    target_oriented_imagery=r"C:\IndoorsModel.gdb\Indoors\OIDataset"
    in_coordinate_system='PROJCS["NAD_1983_2011_StatePlane_California_VI_FIPS_0406",GEOGCS["GCS_NAD_1983_2011",' \
                           'DATUM["D_NAD_1983_2011",SPHEROID["GRS_1980",6378137.0,298.257222101]],' \
                           'PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],' \
                           'PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",2000000.0],' \
                           'PARAMETER["False_Northing",500000.0],PARAMETER["Central_Meridian",-116.25],' \
                           'PARAMETER["Standard_Parallel_1",32.78333333333333],' \
                           'PARAMETER["Standard_Parallel_2",33.88333333333333],' \
                           'PARAMETER["Latitude_Of_Origin",32.16666666666666],' \
                           'UNIT["Meter",1.0],AUTHORITY["EPSG",6425]]'
    elevation_adjustment="-396 Meters"
    horizontal_field_of_view=360
    vertical_field_of_view=180
    
#Run the tool
ImportIndoorImages_Indoors(in_level_features, target_image_folder, target_oriented_imagery, in_coordinate_system,
                           elevation_adjustment, horizontal_field_of_view, vertical_field_of_view)

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 否
  • Standard: 需要 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps
  • Advanced: 需要 ArcGIS Indoors Pro 或 ArcGIS Indoors Maps

相关主题