返回工作笔记
NOTE ARCHIVE现场记录无人机2026-07-08
GIS

面状航线自动拼接-需求说明

面状航线自动拼接-需求说明

Clark 更新于 2026-08-31 阅读约 6 分钟 阅读 2
阅读导航

面状航线自动拼接需求说明

背景与目标

当前在建工程项目详情原型中,正射成果处理已经支持巡飞完成后的人工处理流程:下载照片数据、上传数据、开启切片服务、发布服务。结合面状航线的飞行参数配置,需要在创建或查看面状航线任务时新增“是否自动拼接”开关,用于决定巡飞完成后系统是否自动进入拼接处理。

本需求目标是:

  • 在“面状航线飞行参数”中展示并保存“是否自动拼接”配置。
  • 当“是否自动拼接”为“是”时,巡飞完成后沿用原自动拼接逻辑。
  • 当“是否自动拼接”为“否”时,巡飞完成后进入人工处理流程,由用户下载照片数据、上传数据后再开启切片服务。
  • 正射成果流程需要能追踪巡飞任务、照片数据、拼接数据、切片服务与发布状态。

当前流程

当前 HTML 原型文件为 [ID已隐藏].html,其中正射成果页已包含以下人工处理状态和动作:

  • 状态字段:
    • photosDownloaded:是否已下载照片数据。
    • dataUploaded:是否已上传拼接数据。
    • progress = 50:巡飞数据处理阶段;完成照片数据下载和拼接数据上传后进入待切片状态。
    • progress = 75:切片服务已开启。
    • progress = 100:服务发布完成。
  • 页面动作:
    • download-photos:下载照片数据。
    • upload-data:上传数据。
    • start-slice:开启切片服务。
    • publish-service:发布服务。
    • export-pdf:导出正射成果处理报告 PDF。

当前人工流程约束为:未下载照片数据前不能上传数据,未上传数据前不能开启切片服务。

新增需求范围

本次新增范围限定为“面状航线”的飞行参数配置与正射成果后续处理分支。

新增字段:

字段字段名类型默认值说明
是否自动拼接autoStitchBooleantrue控制巡飞完成后是否自动进入拼接流程

展示位置:

  • 在“飞行参数”卡片底部展示。
  • 位于“航向重叠率”“旁向重叠率”之后。
  • 展示形式为开关按钮,右侧显示“是/否”。

飞行参数卡片应完整展示以下字段:

参数示例值说明
航线总长1.92km面状航线规划后的总飞行长度
飞行时长6.49min预计任务飞行时间
拍摄照片66张预计或实际采集照片数量
覆盖面积84.75亩面状航线覆盖范围面积
GSD地面分辨率7 cm/px影像地面分辨率
飞行高度100 m航线飞行高度
飞行速度10 m/s航线飞行速度
主航线角度面状航线主方向角度
航向重叠率75%航向照片重叠率
旁向重叠率65%旁向照片重叠率
是否自动拼接是/否新增配置项

功能设计

1. 飞行参数配置

  • 用户在配置面状航线时,可设置“是否自动拼接”。
  • 默认值为“是”,保持现有自动拼接逻辑不受影响。
  • 开关状态需要随任务保存,任务详情回显时显示保存后的值。
  • 仅面状航线展示该配置;其他航线类型是否展示待确认。

2. 自动拼接为“是”

autoStitch = true

  • 巡飞任务完成后,系统自动触发照片拼接处理。
  • 正射成果页不要求用户手动下载照片数据和上传拼接数据。
  • 系统自动生成正射成果记录,并进入后续切片服务、服务发布流程。
  • 如自动拼接失败,需要展示失败状态与失败原因,并允许人工介入处理。

3. 自动拼接为“否”

autoStitch = false

  • 巡飞任务完成后,系统在正射成果页生成待处理记录。
  • 页面展示“巡飞数据处理”区域,包含:
    • 已完成巡飞。
    • 下载照片数据。
    • 上传拼接数据。
    • 开启切片服务。
  • 用户点击“下载照片数据”后,photosDownloaded = true
  • 用户完成上传后,dataUploaded = true
  • 只有 photosDownloaded = truedataUploaded = true 时,才允许点击“开启切片服务”。
  • 开启切片服务后,状态进入 progress = 75
  • 服务发布完成后,状态进入 progress = 100

业务流程

自动拼接流程

  1. 用户创建面状航线任务,并保持“是否自动拼接 = 是”。
  2. 无人机按面状航线执行巡飞任务。
  3. 巡飞完成后,系统接收照片数据。
  4. 系统自动进入正射拼接处理。
  5. 拼接完成后,生成正射成果记录。
  6. 系统或用户继续开启切片服务。
  7. 切片服务完成后发布成果服务。
  8. 项目详情页正射成果状态更新为已完成或进行中。

人工拼接流程

  1. 用户创建面状航线任务,并设置“是否自动拼接 = 否”。
  2. 无人机按面状航线执行巡飞任务。
  3. 巡飞完成后,系统生成正射成果待处理记录。
  4. 用户进入项目详情页的“正射成果”页签。
  5. 用户点击“下载照片数据”,下载巡飞照片包。
  6. 用户在外部完成拼接或数据处理。
  7. 用户点击“上传数据”,上传拼接后的成果数据。
  8. 上传完成后,系统允许用户点击“开启切片服务”。
  9. 用户开启切片服务,状态更新为 progress = 75
  10. 用户发布服务,状态更新为 progress = 100
  11. 用户可在正射成果记录中点击“导出PDF”,导出当前成果处理报告,用于留档、汇报或线下流转。

数据字段建议

面状航线任务字段

字段名类型必填说明
routeIdString航线任务ID
routeTypeString航线类型,面状航线建议为 polygon
autoStitchBoolean是否自动拼接
flightLengthNumber航线总长,单位建议为米
flightDurationNumber飞行时长,单位建议为秒
photoCountNumber预计或实际照片数量
coverageAreaNumber覆盖面积,单位建议为平方米,前端可换算为亩
gsdNumberGSD地面分辨率,单位 cm/px
flightHeightNumber飞行高度,单位米
flightSpeedNumber飞行速度,单位 m/s
mainRouteAngleNumber主航线角度,单位度
forwardOverlapNumber航向重叠率,百分比
sideOverlapNumber旁向重叠率,百分比

正射成果处理字段

字段名类型说明
orthoResultIdString正射成果记录ID
routeIdString关联航线任务ID
autoStitchBoolean继承航线任务的自动拼接配置
photosDownloadedBoolean人工流程中是否已下载照片数据
dataUploadedBoolean人工流程中是否已上传拼接数据
progressNumber处理进度,建议使用 25/50/75/100
statusString待处理、进行中、已完成、失败
photoPackageUrlString巡飞照片包下载地址
uploadedDataIdString上传后的成果数据ID
sliceServiceIdString切片服务ID
publishedServiceUrlString发布后的服务地址
pdfReportUrlString已生成的 PDF 报告地址,未生成时为空
pdfExportedAtDateTime最近一次导出 PDF 的时间

PDF 报告内容

导出的 PDF 应至少包含以下内容:

  • 项目名称、项目位置、土地用途、占地面积等基础信息。
  • 面状航线任务信息,包括航线总长、飞行时长、拍摄照片、覆盖面积、GSD、飞行高度、飞行速度、主航线角度、航向重叠率、旁向重叠率、是否自动拼接。
  • 正射成果处理信息,包括自动/人工拼接方式、处理进度、当前状态、巡飞完成时间、巡飞数据处理完成时间、切片服务状态、发布服务状态。
  • 人工流程下需包含照片数据下载状态、上传数据状态、上传文件名称或数据ID。
  • 成果预览图或缩略图,至少展示一张正射成果预览或巡飞照片缩略图。
  • 导出时间和导出人。

PDF 文件命名建议:

{项目名称}-{成果日期}-正射成果报告.pdf

页面展示规则

  • “是否自动拼接”开关默认开启,显示“是”。
  • 开关关闭时显示“否”,需要在保存任务后生效。
  • 任务详情页需要回显保存后的开关状态。
  • 正射成果页根据 autoStitch 决定展示分支:
    • autoStitch = true:展示自动拼接状态,不展示人工下载/上传阻塞按钮。
    • autoStitch = false:展示人工处理步骤和按钮。
  • 人工处理流程中:
    • 未下载照片数据时,“上传数据”置灰不可用。
    • 未上传数据时,“开启切片服务”置灰不可用。
    • 下载、上传、开启切片、发布服务每一步都应有明确状态反馈。
  • 正射成果记录中展示“导出PDF”按钮。
    • 当记录已进入正射成果处理阶段后允许导出。
    • 若成果仍无任何照片、预览图或处理信息,应提示“暂无可导出的成果数据”。
    • PDF 生成成功后应给出下载反馈,并记录最近导出时间。
  • 自动拼接失败时,应显示失败原因,并提供人工处理入口,具体交互待确认。

验收标准

  • 面状航线飞行参数卡片中新增“是否自动拼接”开关,位置在重叠率字段之后。
  • 新建面状航线任务时,autoStitch 默认值为 true
  • 用户修改开关并保存后,任务详情能正确回显“是/否”。
  • autoStitch = true 时,巡飞完成后系统自动进入拼接流程,不要求用户下载照片并上传数据。
  • autoStitch = false 时,巡飞完成后正射成果页显示人工处理步骤。
  • 人工流程中,未下载照片数据前不能上传数据。
  • 人工流程中,未上传数据前不能开启切片服务。
  • 点击“开启切片服务”后,正射成果进度更新为 75
  • 点击“发布服务”后,正射成果进度更新为 100
  • 正射成果记录可以追溯到对应面状航线任务、巡飞照片数据、上传成果数据和服务发布结果。
  • 点击“导出PDF”后,系统能生成并下载正射成果报告 PDF。
  • PDF 内容应包含项目基础信息、飞行参数、是否自动拼接、处理进度、成果预览、导出时间和导出人。
  • 当成果数据不足以生成 PDF 时,系统应给出明确提示,不生成空白或缺关键内容的 PDF。

待确认事项

  • “是否自动拼接”是否只对面状航线生效,还是所有航线类型都需要支持。
  • 自动拼接失败后的人工介入入口,是回到同一条正射成果记录,还是新建人工处理记录。
  • 自动拼接完成后是否自动开启切片服务,还是仍由用户手动点击“开启切片服务”。
  • 照片数据包和上传成果数据的文件格式、大小限制、校验规则待接口确认。
  • progress = 25/50/75/100 是否沿用为正式状态编码,还是仅作为原型展示进度。
  • PDF 报告是否需要固定模板、盖章页、二维码、防篡改水印或审批签字信息。