基于计算特征的分布式空三计算任务调度研究

2024-12-31 00:00:00颜丽玲沙晋明
科技创新与应用 2024年21期
关键词:倾斜摄影测量任务调度分布式

基金项目:“地理信息科学(闽台合作项目)专业”闽台高等教育融合发展示范项目(202209)

第一作者简介:颜丽玲(1995-),女,助理工程师。研究方向为摄影测量分布式与信息地理。

*通信作者:沙晋明(1964-),男,博士,教授。研究方向为遥感技术与信息地理。

DOI:10.19981/j.CN23-1581/G3.2024.21.015

摘" 要:该文从倾斜摄影测量的现状出发,整理主流空三算法的计算流程,通过分析其算法特性,结合计算过程中使用的硬件资源,为提升计算过程中的任务调度效率,设计基于计算特征的分布式空三计算任务调度规则。并针对设计的调度规则开展一系列对比实验。实验结果表明,在梯度分布的计算节点上,使用基于计算特征的分布式空三计算任务调度规则的调度方式与不使用调度规则的方式相比,由于高性能主机在任务派送的优先级较高,因而任务包的周转度更高,使用调度规则的分布式集群在计算时长的表现上更好,在空三计算效率的提升方向及提升手段上具有一定的参考意义。

关键词:分布式;任务调度;空三计算;倾斜摄影测量;优先级

中图分类号:P231" " " 文献标志码:A" " " " " 文章编号:2095-2945(2024)21-0061-05

Abstract: Starting with the present situation of oblique photo grammetry, this paper sorts out the calculation flow of the mainstream spatial three algorithms, through the analysis of its algorithm characteristics, based on the hardware resources used in the computing process, in order to improve the efficiency of task scheduling in the computing process, a distributed spatial three computing task scheduling rule based on computing features is designed. A series of comparative experiments are carried out according to the designed scheduling rules. The experimental results show that on the computing nodes with gradient distribution, the scheduling method using distributed spatial three computing task scheduling rules based on computing features is compared with that without scheduling rules. Since the high-performance host has a higher priority in task delivery, hence the higher turnover of the task package. The distributed cluster using scheduling rules performs better in computing time, and has a certain reference significance in the direction and means of improving the efficiency of empty three computing.

Keywords: distributed; task scheduling; empty three computing; oblique photo grammetry; priority

随着科技进步与测绘学科的不断发展,无人飞行设备与计算机的跨界融合催生了倾斜摄影测量学科的兴起。倾斜摄影测量(Oblique Photogrammetry)是一种利用倾斜摄影影像进行测量的技术,这给传统测绘领域带来了测绘生产方式上的变革。将大量的实测倾斜摄影影像转换成测绘成果需要通过三维建模方式实现,常规倾斜摄影建模的计算流程通常分为空中三角计算(简称“空三计算”)、三维建模与精度评价。随着“数字孪生”“实景中国”建设的不断推进,倾斜测量成果将在城市规划建设[1]、文化遗产保护[2]、自然资源管理[3]与应急响应中发挥重大作用。

常规实测倾斜摄影影像的空中三角计算包含“数据分块、特征提取、特征匹配、分块平差与融合平差”5个计算步骤,本文将从5个计算步骤的不同计算特征出发,结合实测数据,研究空三计算的分布式调度的效率提升方法。通过对不同数据规模的空三计算过程的量化分析,总结基于计算特征的分布式空三计算任务调度方法的优势,为倾斜摄影建模流程中空三计算的提速提效提供有效的数据支撑。

1" 空中三角测量

1.1" 空中三角测量概述

空中三角测量(Aerial Triangulation)指在摄影测量过程中,利用航摄像片与所摄目标之间的空间几何关系,根据少量像片控制点,通过相机几何、摄影测量方程和影像的空间几何关系建立模型,计算加密点的平面位置、高程和像片外方位元素的一种测量方法。本文采用的空中三角测量算法为光束法区域网平差,光束法区域网平差以每张像片组成的一束光线作为平差的基本单元,利用共线方程进行平差。通过对各个光束在空中的旋转和平移进行调整,实现模型之间公共点的光线最佳交会[4]。整个区域最终纳入已知的控制点的地面坐标系中,通过建立全区域统一的误差方程,整体解求全区域内每张像片的6个外方位元素以及所有待求点的地面坐标[5]。

1.2" 空中三角测量计算过程及当前可优化方向

常规较大场景的倾斜摄影影像建模很难在图形工作站中一次性计算完成,通常需要采用数据分包形式,将大场景的倾斜摄影影像按照区域关联度分成小场景的数据块,并对数据块进行分步骤的计算,进而求解出倾斜摄影影像的地面坐标。本文所用算法采用的计算步骤为先对倾斜摄影影像进行影像特征点提取,即识别图像的点特征,并按照建模精度要求,设定提取特征点密度;之后对提取的特征点进行特征分类,将特征提取的结果数据集根据图像中的特征点划分到不同的类别;并在此基础上进行特征匹配计算,即将不同影像或同一影像的不同时间、不同视角的特征点进行关联,建立其之间的对应关系,最后,使用光束法区域网平差对该数据块的影像进行空三解算。

面对多数据包、多步骤计算的场景,通常采用分布式机组对数据进行解算。常规不同性能的机组有着不同的解算效率,且通常分布式计算机组的配置变动可能性不高,因此,可以进一步分析空中三角测量的计算特性,研究整体提升分布式机组计算效率的方法,进而使单次倾斜影像的空三计算时长达到最短。

1.3" 空中三角测量计算特征及优化思路

本文使用的特征提取算法为SIFT[6](尺度不变特征变换),采用CUDA编程,使用GPU进行计算,GPU在SIFT这类需要大量并行计算的算法具有天然的优势,因而特征提取的计算效率较高。本文采用的特征分类算法为朴素贝叶斯算法[7](Naive Bayes),在大规模数据集中有较好的性能表现,经过实测检验,每个数据包的计算时长在秒级,因此,任务调度时将其合并在特征提取算法结束后进行计算,计算时长纳入特征提取中合并统计。本文采用的特征匹配算法为基于SIFT描述子的特征点比较方法,采用多线程方式进行匹配计算,效率高且稳定性强。本文采用的平差算法为光束法区域网平差,利用多线程方式数据读取,单线程方式进行回归计算,直到数据收敛到阈值范围。所有数据包计算完成后,需要根据每个数据包的平差计算结果,再一次进行整体融合平差,使整体空三计算数据精度进一步提升。

鉴于空三计算过程中每个任务包的计算内容与上一步骤计算成果强关联,且每个任务包都可以拆分到不同的计算节点机上运算,故而主流的空三计算流程常拆分小任务包不加选择的提交到各个计算节点上运行。通过分析空三测量的计算特征及计算逻辑可以发现,每个阶段任务使用的系统资源不尽相同且对不同的硬件指标各有侧重,因此,尝试使用规则化的任务调度方式探索空三计算过程的任务调度优化可能。

2" 基于空中三角测量计算特征的分布式任务调度

2.1" 分布式任务调度规则介绍

鉴于1.2中论述的空中三角测量的计算特征,并根据不同计算阶段的计算特征设计主机评分机制,通过对常规平均性能的服务器进行基础评分,并对实际使用的服务器分硬件进行打分,进而确定任务包的最佳派送节点机。通过设计的空三计算任务的分布式调度规则,优化空三计算的整体流程效率。

采用的基准评分类别及分值见表1。

此处选取的CPU核心数、CPU睿频、内存大小、GPU流处理器数与GPU显存大小均是影响计算效率的关键指标,对应的指标值越大,代表主机算力越强。此处选取的基准值均是在广泛的倾斜影像模型生产实践中得出的能较大程度满足计算要求的指标值。

鉴于实际空中三角测量计算过程中,每个计算步骤需要用到的性能指标各不相同,因此,需要主机的性能指标进行评分后,针对任务类型的不同,选取不同的计算指标对进行节点排序,选取性能最高的节点进行任务计算,以求任务在主机上的计算进程能稳定高效(表2)。

在空三测量计算任务运行过程中,主要的评分指标为“核心组件得分×对应指标闲置率”。具体分计算步骤的性能要求与评分指标信息见表3。分数越高,则代表该节点计算数据的效率越高,计算任务该优先派送到此节点。但实际运算过程中,除了主要用到的计算机资源组件,还需要公用的组件如CPU配合系统调度,内存/显存配合过程数据存储等,因此,在任务派送时,还需要进一步归纳任务派送的最低限制。本文根据广泛的倾斜影像模型生产实践中得出的计算限制条件见表3。

2.2" 分布式任务调度系统介绍

鉴于常规较大场景的空三计算流程通常采用分布式机组方式进行数据集运算,为实验论证本文设想的规则化分布式空三计算任务调度规则,在开源监控服务、数据库服务与缓存服务的支持下,设计的分布式空三计算任务调度系统架构如图1所示。

系统通过浏览器进行任务提交,经由业务服务与调度服务,将任务推送到计算节点上运行。监控服务将定时采集各计算节点的核心资源指标。中心化的调度服务依赖消息/缓存组件、资源监控组件与数据库组件。接收到业务服务的任务计算指令后,调度服务先对任务进行分块,并从监控中拉取各计算节点的实时硬件状态信息,根据任务包类型及各计算节点的资源条件,优先选取性能优越的节点进行派送。计算节点接收到任务包计算指令时,开始启动计算,当计算节点上的任务包计算完成后,将计算完成的消息通过消息/缓存组件上报到调度服务,调度服务根据任务包类型及任务包运行情况判定是开启下一流程任务包计算还是全流程任务计算完成;不断循环此任务调度方式直到该任务全部计算完成。

2.3" 分布式任务调度实验对比分析

在2.1论述的调度规则及2.2采取的调度框架基础上,构建分布式空三计算任务调度系统,并对此展开对比实验。

2.3.1" 常规单节点计算与分布式单节点计算对比

由于分布式计算需要用到网络服务用以保证消息通信及数据共享,需要开线程唤醒任务计算,这些操作过程不可避免地会影响任务的计算过程。因此,选择在同一性能配置的服务器主机上,使用脚本式运行的单节点任务计算流程与分布式平台使用单节点计算同一个任务进行对比,验证分布式是否在任务运行的性能上有损耗。考虑到光束法区域平差收敛到阈值的计算时长具备不稳定性,采取多次实验取中位数方式,实验结果如图2所示。

实验结果表明,采用脚本式单节点与分布式单节点的计算时长相差无几,由此可见,使用设计的分布式框架进行任务计算能够保证算法计算效率与常规单节点一致。

2.3.2" 均匀分配的分布式多节点与规则化分配的分布式多节点计算对比

在2.3.1实验的基础上,已经验证了分布式运行时,并不损耗每个步骤的算法运行效率,由此可以进行下一步的验证:规则化的分布式调度方式与非规则化的节点调度方式在任务运行效率上的不同表现的对比实验。其中,规则化的分布式调度方式指的是针对空三算法计算特征,有选择地对任务包进行任务派送;非规则化的节点调度方式指的是,当集群中有待定的计算任务时,不加选择地对任务进行派送。为模拟实际建模的工作集群条件并验证采用规则化调度的效率,实验采用不同梯度硬件指标的工作站进行测试。采用的测试节点机性能情况见表4。

为比较规则化任务调度与非规则化任务调度在计算效率上的区别,在相同配置的集群环境上分别部署非规则化分布式节点与规则化的分布式节点,采用相同的计算参数进行同一份摄影测量像片数据的空三计算,采用任务运行的时间长短比较分布式调度方法的运行效率。

鉴于分布式运行过程中是并行计算的,采取的时间指标为提交开始的时间与最后一个任务包运行成功的时间。鉴于光束法局域网平差计算至收敛的时间不一定,故采用多测实验取中位数的方法,实验结果如图3所示。

其中,条纹状柱形为非规则化分布式节点计算时长,纯色柱形为规则化分布式节点计算时长,折线表示规则化分布式较非规则化分布式节点的提升效率。实验结果表明,在保证测试环境及测试任务相同的情况下,在空三计算上使用规则化的分布式比使用非规则化的分布式运行效率要高出10%左右,且运行效率提高程度与照片数量呈现一定的正相关性。从逻辑及实验结果上分析主要的原因有如下几点。

1)性能占优的主机在执行计算时的效率较高,同一个任务包在高性能主机上运行的时长要短于性能较弱的主机,通过调度规则优先选择性能较高的节点进行派送,提高了任务的周转效率,进而缩短了整体的运行时长。

2)鉴于空三计算过程中流程化的特性:即需要特征提取计算完成后计算特征分类及特征匹配,特征匹配计算完成后计算分块平差;等所有平差任务结束后才能计算融合平差。非规则化的调度方法在节点运行选择上不具备自主性,运行过程中会由于主机性能影响了单任务包的计算时长,引发了后面关联计算流程等待时间过长,进而导致整体运行时长偏高。

3)照片数量与整体运行效率提升有一定正向关联的主要原因是照片数量与拆分的任务包数有正相关性,拆分的任务包越多则高性能主机的任务周转度越高,总体任务在计算效率上有更好的表现。

3" 结论

本文从倾斜摄影测量的现状入手,通过分析空三计算过程中的算法特性,探索了分布式空三任务调度效率优化的可行性。实践证明如下。

通过自动化单节点计算与分布式单节点的对比实验表明,采用了本文的分布式架构进行调度计算并没有影响计算任务的运行效率,表明使用的分布式设计方案并不损耗空三计算任务的整体计算效率,本实验为后续的进阶实验提供了基准的参照。

通过非规则化分布式任务调度方案与规则化的分布式任务调度方案对比实验表明,采用了规则化的调度策略后,倾斜影像的空三计算时长较未采用规则化的任务计算时长要短。且不同倾斜像片量级在采用了规则化调度策略后的计算效率提升幅度与倾斜像片数量有一定的正相关性。

综上所述,实验表明,使用了分布式空三计算调度规则的调度方式与不使用调度规则的计算方式相比,提高了整体的计算效率,在空三计算效率的提升方向及提升手段上具有一定的参考意义。

参考文献:

[1] 赵斓.基于倾斜摄影测量的三维模型在城市规划中的应用[J].智能城市,2022,8(2):16-18.

[2] 王瑶瑶.基于LiDAR遥感的古建筑文化遗产三维重建与数字化保护研究[D].济南:山东建筑大学,2019.

[3] 华秀兵,顾杰.基于无人机倾斜摄影的自然资源调查监测成果质量检查研究[J].测绘与空间地理信息.2023,46(1)86-89,93.

[4] 孙明霞,魏文斌,黄莉萍,等.摄影测量方法制作数字化线描图在麦积山石窟的应用[J].敦煌学辑刊,2014(4):127-140.

[5] 王亚男,马燕燕,万保峰,等.无人机航摄1∶2 000立体测图关键技术探讨[J].地矿测绘,2016,32(1):30-33.

[6] LOWE D G. Distinctive image features from scale-invariant keypoints[J].lnternational Jounal of Computer Vision,2004,60(2):91-110.

[7] LI J, WU W, XUE D. Transfer naive bayes algorithm with group probabilities[J].Applied lntelligence,2020,50(2):61-73.

猜你喜欢
倾斜摄影测量任务调度分布式
基于改进NSGA-Ⅱ算法的协同制造任务调度研究
基于时间负载均衡蚁群算法的云任务调度优化
测控技术(2018年7期)2018-12-09 08:58:00
分布式光伏热钱汹涌
能源(2017年10期)2017-12-20 05:54:07
基于无人机倾斜摄影的城市三维建模方法研究
面向城市规划的倾斜摄影三维建模技术探讨
科技资讯(2017年18期)2017-07-19 17:56:16
倾斜摄影测量在城市三维建模中的应用
分布式光伏:爆发还是徘徊
能源(2017年5期)2017-07-06 09:25:54
基于无人机倾斜摄影技术测绘大比例尺地形图的可行性研究
价值工程(2017年8期)2017-03-25 10:33:26
云计算环境中任务调度策略
基于DDS的分布式三维协同仿真研究
雷达与对抗(2015年3期)2015-12-09 02:38:50