操作方法

操作方法:在 ArcGIS Flight 中更正地理空间视频日志 (GVL) 文件中的无人机飞行高度数据

Last Published: February 3, 2025

描述

背景

众所周知,许多型号的无人机报告的高度值不正确。 本文档将重点介绍对 Geospatial Video Logs 中的值应用高度校正。

Note:
This correction is recommended for working with video in ArcGIS Pro Full Motion Video (FMV) tools, unless the altitude error is very small (for example, less than 5 meters vertical error). 

Note that if you are working with still frame images, for photogrammetric processing in Drone2Map, Site Scan, or ArcGIS Pro, you may also find incorrect altitude values that create problems with processing. Refer to the appropriate product documentation for best practices for compensating for altitude errors.

如下图所示,照相机轨迹在地面上的外观尺寸取决于 H(传感器在地面上方的高度)的准确值。  如果报告的高度过高,则 ArcGIS Pro 显示的覆盖区将显得过大。  如果报告的高度较低,则轨迹将过小。  在极端情况下,无人机可能会报告自己低于地面高程,在这种情况下,ArcGIS Pro 中将不会显示任何轨迹。

  • 还必须已知视域(基于镜头焦距和传感器尺寸),才能计算地面上图像轨迹的尺寸。
  • 高度误差也会影响在图像中进行测量的精度,例如观察到的要素的长度或面积。

HeightDiagram_20250128.png

Note:
Height above ground (H) must be calculated within the software, and the altitude data from most drones
is reported as height above sea level (ASL, also known as orthometric height).

The exception would be if you have a drone configured for RTK (real time kinematic) GPS, in which case the altitude values are normally referenced to height above ellipsoid. These RTK heights are highly accurate, and the procedure outlined in this KB article should not be required.

说明

对于使用 ArcGIS Flight 捕获的所有视频飞行,将记录地理空间视频日志 (GVL) 文件。 用户可以将 GVL 文件和飞行中视频组合在一起,用于:

  • ArcGIS Pro(含 Image Analyst 扩展模块)中的全动态视频工作流:用户可以使用视频多路复用器地理处理工具 将视频文件和相应的地理空间视频日志文件组合在一起,以创建启用地理功能的视频。

可以在地理空间视频日志文件中使用正高或椭球高度,ArcGIS 将使用其以及世界地形图层来计算 H,并在地图上创建视频轨迹。 如果高度值不正确,则用户可能会遇到以下错误:

  • 视频中的要素或视频轨迹尺寸与 2D 地图/3D 场景视图之间可能存在明显的比例误差
  • 视频轨迹可能根本不会显示在 2D 地图上,或者无人机在 3D 场景中可能看起来位于地面以下。
    • 要看到这一点,可能需要关闭内容列表中的 World Elevation 图层,如下图所示,从而暂时从场景中移除地面。  如果无人机正在报告其在地面以下的高程,则其现在应该可见。
取消选择 TOC 中的 World Elevation 图层

解决方案或解决方法

以下工作流介绍了如何识别和解决地理空间视频日志文件中的高度错误。

Note:
For clarity: if an altitude error is present, it is unrelated to changes in the terrain. Changes in project terrain are automatically addressed by FMV based on a world elevation dataset, presuming the sensor height above sea level is correct.  Therefore, we are seeking one fixed value for the error - a height offset.  If we can determine the proper offset to compensate for the altitude error, it will be applied to all records in the GVL file, regardless of the instantaneous height above ground.
  1. 创建地理空间视频日志文件的副本。 请勿编辑原始文件。
  2. 可以使用 ArcGIS Online Sample Heights for World Terrain 地图来查找项目现场地形的高程值。

    此地图将访问 Esri World Elevation,任何拥有 Esri 帐户的用户均可免费使用该地图,但该地图不公开。 用户必须使用 ArcGIS Online 或授权用户帐户进行登录。

    可以通过视觉导航来导航到项目现场和无人机发射点,或者(如果使用 Site Scan Flight v4.2 或更高版本)打开 GV 日志文件并复制 TakeoffLocationLongitudeTakeoffLocationLatitude 字段中的两个值,然后将其粘贴到地图上的搜索栏中 - 必须先输入经度,然后输入纬度,用逗号分隔,如下图所示。


  1. 通过单击地图,可以确定无人机发射点处的地面高程。  目标是确定无人机在地面上时应该报告的内容。
    • 记录报告的正高值 (ASL)。  如果此值与 TakeoffLocationAltitude 中报告的值不匹配,则需要调整日志文件中的高度值。
  2. 您也可以读取地面的椭球体高度 (HAE) 以供参考 - 如果您的组织希望所有数据都参考 HAE,而非 ASL,请参阅以下“校正椭球体上方高度”部分。  由于我们正在应用校正,您可以选择任一垂直参考。

  1. 在 Microsoft Excel(或其他电子表格编辑器)中打开地理空间视频日志文件副本,然后将从地图中采样的高程与 TakeoffLocationAltitude 中的值进行比较。 如果这些值的差异小于约 3 米(或地面以上高度的约 2%),则可能无需应用校正。

应用校正

  1. 将复制的地理空间视频日志文件另存为“filename_corrected.xslx”,格式为电子表格,而非 *.csv 文件。
Note:
This is necessary because Microsoft Excel changes UnixTimeStamp to scientific notation (shown below), and if not set to Number before saving, the timestamp values will be corrupted.  (See the blog Video Multiplexer Tips and Tricks for full doc on using the Video Multiplexer and editing the files in MS Excel.

  1. 选择 UnixTimeStamp 列。
  2. 使用下拉菜单将列格式更改为数字。 请注意,这些值显示为浮点数,如下图所示。

  1. 使用减少小数位数工具转换为整数值。

  1. 添加标注为 ActualLaunchAltitudeHeightCorrection 和 CorrectedAltitude 的新列。
  2. 在标注为 ActualLaunchAltitude 的列中输入从地图获取的发射高度值,并将该值复制到 GV 日志文件中的所有记录。
  3. HeightCorrection 中插入公式以计算为:HeightCorrection = (ActualLaunchAltitude minus TakeoffLocationAltitude),然后将此值复制到 GV 日志文件中的所有记录。
  4. CorrectedAltitude 中插入公式以计算为:CorrectedAltitude = (SensorTrueAltitude plus HeightCorrection),然后将此值复制到 GV 日志文件中的所有记录。
  5. 以 *.xlsx 格式保存编辑后的地理空间视频日志文件以记录您的计算,然后使用另存为 CSVfilename_corrected.csv 保存副本。
  6. 选择 CorrectedAltitude 列中的数值(字段名称下方),全部复制,选择 SensorTrueAltitude 下的值行,然后使用 Excel 函数选择性粘贴来粘贴。  这是必要的,因为最终输出文件必须为 *.csv 格式,并且不能包含 MS Excel 公式。 SensorTrueAltitude 列中的值现在应与 CorrectedAltitudeColumn 中的值相匹配。
  7. 作为最后一步,请重命名已校正高度值的列。
    • 如果参考正高,请将此列命名为 SensorAltitude
    • 如果参考椭球体高度,请将此列命名为 SensorEllipsoidHeight
  8. 保存更正后的文件,确保该文件为 CSV 格式。
  9. 在返回 ArcGIS Pro 之前,确保在 Excel 中关闭该文件。  如果输入 filename_corrected.csv 文件在 Excel 中打开,则 ArcGIS Pro 地理处理工具可能会失败。
  10. 如果在 ArcGIS Pro 中使用 FMV,请使用编辑后的 filename_corrected.csv 运行视频多路复用器以处理原始视频文件。

其他注意事项
ArcGIS Online Sample Heights for World Terrain 地图中的所有高程值均表示地面高程。 如果无人机从建筑物顶部发射,则必须补偿此额外高度偏移,因为它不会正确地包含在 TakeoffLocationAltitude 的值中。

水平视域可能需要额外校正。 由于许多无人机为视频分辨率提供可选配置,例如 4:3 横纵比与 16:9 横纵比,以及不同的像素分辨率,ArcGIS Flight 的图像大小值可能错误,因此 GV 日志文件中的 HorizontalFOV 可能错误。 这取决于如何为此飞行配置视频分辨率,但请注意,这只会引入一个小误差。  如果您已完成本文档中描述的高度校正,但仍发现百分之几的比例误差,请联系 Esri 技术支持以讨论视频纵横比和 HorizontalFOV 的校正。

文章 ID: 000027161

接收通知并查找新问题或常见问题的解决方案

从我们全新的 AI 聊天机器人中获得简明答案和视频解决方案。

下载 Esri 支持应用程序

相关信息

发现关于本主题的更多内容

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项
Esri Support AI Chatbot