基于单视图的非合作航天器三维体素重构算法
2023-01-03郭鹏宇胡庆雷欧阳真超
郭鹏宇,胡庆雷,,欧阳真超
(1. 北京航空航天大学自动化科学与电气工程学院,北京 100190;2. 北京航空航天大学杭州创新研究院(余杭),杭州 310023)
0 引言
随着航天工程的持续推进,太空合作共赢与竞争对抗并存的趋势日益明显。为维护空间在轨安全,非合作航天器的在轨监测日益重要,具体任务包括快速逼近、绕飞监视以及运动捕获甚至打击对抗等[1-2]。由于目标的强非合作特性,服务航天器无法提前获知目标特征及在轨运动信息,这给目标的精准、快速感知带来了巨大的挑战[3-4]。针对上述任务需求,空间非合作航天器的三维模型快速构建技术备受关注,目标的模型结构可以为空间博弈对抗提供丰富的感知信息。因此,目标三维模型精确快速重构是未来目标监视、对抗制胜率的重要技术保障之一[5]。
现有的目标三维模型表征方式总体可以划分为显式模型表征和隐式模型表征。其中,显式模型表征包括点云(Point Cloud)、体素(Voxelization)和网格(Meshgrid)[6]。三维点云表征可以更好地保留精确的模型位置、几何特征和拓扑结构[7]。然而,真实采样的点云相对稀疏、无序和噪声,其索引计算会带来巨大的计算开销,同时空间结构上的多样性也会导致计算上的歧义。而模型的体素表征可以看作是对三维无序点云的正则化处理,基于均匀体素的模型表征更适合航天器的特征提取与恢复,规则化的结构表示大大减少了数据规模和处理的计算量[8]。网格表示下目标的三维表面结构最光滑,但生成的曲面网格都具有较强的随机性,这通常需要额外的对齐框架设计[9]。由于点云和网格表征均具有较强的随机性,针对非合作航天器的模型体素表征唯一性最佳。隐式的三维模型恢复是由目前最为颠覆性的神经辐射场(Neural Rad-iance Fields, NeRF)模型[10]首次引出,以相机视角和位置作为神经网络输入,利用隐式的三维模型高质量地恢复不同视角下的目标视图。虽然基于目标隐式模型可以高质量地恢复目标不同视角下的图片,但在航天器三维感知的任务中,显式模型表征能够为后续导航任务提供更有利的支撑。
针对空间非合作航天器的三维重构任务,目前现有方法包括基于几何的算法和基于神经网络建模的方法。其中,传统基于几何计算的三维模型构建是目前的主流方案,通常需要对目标进行多角度的连续采样和复杂的迭代计算,计算时间过长极大地限制了传统方法在航天器实时感知任务中的应用。调研发现,基于人工智能的三维场景重构和目标三维结构恢复已取得大量的研究进展。但神经网络依赖大规模标注数据进行有监督训练,数据饥饿问题(Data Hungry Problem)是所有基于端到端(End-to-End)学习的研究中普遍存在的问题。虽然有少数利用人工智能算法进行航天器数据特征的提取及处理研究,如基于图像的目标检测和分割[11],但缺少对应目标的三维结构基准。数据集的缺乏使得面向非合作航天器的三维模型智能重构研究暂时处于空白状态。
在航天器显式模型表征中,体素化的模型结构更加规则且具有唯一性,基于这种规则化的表示方式进行网络建模,能够降低非线性拟合的复杂度,且重建结果更加易于进行姿态配准、朝向检测等后续任务处理。对于三维体素模型重建结果的量化指标,地面物体通常使用体素交叉联合(intersection-over-union)[12]评估算法性能。基于地面目标三维模型智能恢复算法研究,本文提出了“编码-解码-细化”网络架构,以解决空间非合作航天器三维体素模型重构问题,建立航天器三维模型数据样本,并利用人工智能方法深入学习航天器模型与输入图片之间的映射关系。具体来说,本文的贡献可以总结如下:
1)基于公开航天器三维模型和开源渲染软件,针对单视图三维体素重建任务,构建了面向航天器三维模型重建任务的数据集,包括多个航天器的三维模型文件、对应多尺度体素正则化文件以及多视角相机采样模拟的渲染图像,为后续深度学习建模任务提供数据基础和量化评估方案。
2)设计了基于单一视图输入的航天器三维体素模型神经网络框架,整个模型主干网络主要包含3个子模块,图像2D卷积编码模块、基于3D卷积的解码模块和基于U-Net架构的3D卷积调优模块,能够针对单帧目标图像数据进行卷积编解码,然后恢复航天器的三维空间正则化的体素表征,并利用MIoU指标对网络性能进行评估。
本文各部分组织如下:第1章介绍了航天器三维模型智能重构算法的总体框架;第2章介绍了航天器三维模型数据样本集的构建方案;第3章介绍了所设计的重建模型的神经网络架构细节,以及与所构建数据集的训练方案;第4章介绍了航天器三维模型恢复的评估指标,并基于本地数据对训练好的模型进行评估和分析,证明了所提方法的有效性;最后一章讨论了所提方法的优缺点,并给出结论及未来研究方向。
1 航天器三维模型智能重构算法
针对基于人工智能的航天器三维体素重建问题,网络的输入为包含目标的多种采样视角下的图像,输出为目标的三维体素结构。与常规三维重建问题不同,航天器结构复杂、体积庞大,仅存在于太空环境和近地轨道附近,相关数据难以获取。因此,针对不同的航天器采用渲染的方式分别生成正则化的三维体素结构,并利用相机模型渲染生成固定尺寸的航天器图像数据。其中,三维体素表征采用以目标为中心的方法,图像则通过固定小孔成像模型,保证采样图像尺寸的情况下,在不同视角下对航天器进行渲染成像,增加样本的丰富度。通过对大量航天器模型进行批处理的数据生成,构建了一对多的“体素-图像”数据集,并在此基础上,设计了对应的神经网络模型架构,用于接收单视图图像数据,通过数据集训练模型构建“图像-体素”之间非线性关系,实现目标的三维体素重建。最后,通过量化评估和测试,验证了航天器三维重构网络的有效性。总体流程如图1所示,包括以下三个部分:
1)航天器三维模型数据样本集合生成。一方面,基于已知航天器三维模型文件生成对应的三维体素数据,并构造航天器结构三维模型的规范方向,实现航天器模型数据各部分的刚性对齐;另一方面,为恢复目标完整的模型结构,对目标进行全覆盖的球采样,实现全方位、全视角下的航天器图片渲染,为后续的网络模型训练和评估提供数据支持。
图1 航天器三维模型智能重构算法架构Fig.1 Architecture of intelligent 3D model reconstruction algorithm for spacecraft
2)航天器三维模型重构网络框架设计。该部分基于所生成的航天器三维模型及对应的渲染图片数据对,设计适配的航天器三维模型数据恢复网络框架。利用生成的航天器三维体素表征作为真实值 (Ground Truth),渲染的航天器图片作为探测数据,设计网络训练框架,确保神经网络模型能够处理对应的数据结构并生成目标尺寸的三维体素。
3)航天器模型恢复性能评估与分析。利用训练好的网络参数和所设计的网络架构测试航天器的体素结构恢复效果,定量对比分析模型的重建效果,构建模型恢复对应的评估体系。从不同的角度评估网络架构的性能,对比不同网络框架下航天器三维模型的恢复结果,确保航天器三维模型重构网络框架能够满足目标感知需求。
2 三维模型数据样本生成
航天器三维模型数据样本集是航天器三维模型智能重构的数据基础,也是航天领域神经网络建模研究发展的制约因素。目前,被公开使用的USRO、SPARK及SPEED等航天器数据集是为了目标识别、位姿估计和语义分析任务开发的,均不涉及航天器三维模型的组织和注释,难以为航天器三维重构提供有效的数据支撑。因此,本文通过分析日常目标三维重构数据集ShapeNet[13]的处理方案,对航天器结构、类型等因素进行归约,并构建航天器三维模型数据样本集合。首先,利用Blender软件对不同视角下的航天器成像结果进行渲染,然后,生成对应的航天器三维体素模型作为网络训练的模型真值。数据样本集合生成的过程是一个双向映射的过程,图片与体素模型的样本数据链接是后续网络框架训练的基础。
2.1 数据必要性分析
航天器三维模型数据集的构建将包含丰富的注释,为航天模型恢复任务提供基础数据激励。通过收集公开航天器模型用于构建航天器三维重建数据集,可以实现以下任务:
1)帮助开展航天器三维结构分析工作;
2)支持需要航天器模型数据的航天任务;
3)对涉及航天器结构几何的基本任务(分割、对齐等)进行算法评估;
4)为航天器语义分析提供模型数据库。
为满足以上航天任务需求,首先需要将所构建的航天器三维模型数据集覆盖现实世界中的多种航天对象,包括不同的空间非合作航天器类别,如卫星、运载火箭及空间站等结构;其次,航天器三维模型需要与其对应的2D视角图像、结构语义信息等特征相互关联;最后,为航天器的三维体素模型建立一致的规范方向(目标中心表征),实现体素表征的唯一性,保证后续航天器识别、结构分类和语义分割等不同感知任务的展开。
2.2 三维模型生成
如图2所示,基于航天器三维模型,将其栅格化为二进制3D体素网络,可以生成不同分辨率下的binary-voxel (binvox) 体素格式文件;考虑网络模型的计算效率、模型的复杂性和下游感知任务所需模型的精度,目前以分辨率大小为643进行航天器三维体素模型生成。
图2 航天器三维体素模型生成样例Fig.2 A sample of spacecraft 3D voxel model
虽然目前生成的模型文件表征粗略,但所生成的目标三维体素能够尽可能地保持原模型的关键形状结构。后续为确保航天器三维模型结构的精细化表示、语义分割及三维姿态检测任务,可针对性地调整航天器体素生成分辨率。
2.3 关联图片渲染
考虑太空环境下非合作航天器的运动自由度较高,传感器可能从不同的方位进行观测,为了提升生成模型的鲁棒性和泛化能力,采用球形采样策略进行目标航天器的图像渲染。具体地,以目标航天器为中心,在固定半径构成的球面摆放相机模型,并进行渲染采样生成航天器图像数据。例如,航天器的圆形对接环、喷嘴及太阳能帆板支架等结构至少需要保证观察到一个视图才能覆盖到细节形状架构。本文构建球形采样方式,从各个视点捕捉航天器图片,如图3所示。对于单个航天器模型,从40个不同视角进行渲染采样。
图3 航天器RGB图片渲染样例Fig.3 Spacecraft RGB image rendering example
为了模拟中远距离下传感器采样视场能够包含完整的航天器结构,本文采用的相机模型将输出512×512分辨率的图像数据,并保证目标的关键细节清晰,作为后续网络的输入。
3 航天器模型重构网络框架设计
本文的航天器三维模型智能重构算法使用“编码-解码-细化 (Encoder-Decoder-Refiner)”网络来训练恢复航天器三维体素模型。其中,编码器用于拆分2D图像中的有效纹理卷积特征;解码器用于从高维卷积特征中重建目标三维体素;最后,一个基于U-Net架构的三维卷积模块对重建的粗糙结果进行精细化调优。图4所示为所提出的模型架构,该架构以二维航天器图片作为输入,三维模型作为网络输出,重建航天器三维体素结构。
图4 航天器三维重构网络结构Fig.4 Spacecraft 3D model reconstruction network
3.1 编码
编码器的目的是对输入的RGB图片进行深度特征提取,作为后续解码任务的输入,以恢复航天器的3D形状。将RGB图片输入连续的6组2D卷积 (2D Convolution) 层、批归一化层和ReLU层,将语义信息嵌入到特征图中。6个卷积层均采用大小为32的卷积核,步长为2,填充为1,每个模块将特征图缩小1/2(单个维度),对应的输出通道分别为64、128、192、256、384和512。最终,编码阶段输出大小为512×82的高维局部特征图组,为之后的解码恢复提供深层次特征。
3.2 解码
为了生成分辨率大小为643的航天器体素模型,解码阶段以编码得到的高维特征作为输入,先将特征图数据重组为4096×23维,为3维体素生成提供基础。整个解码阶段包含6组3D逆卷积 (3D Deconvolution) 层,与编码阶段类似,每个逆卷积层后都有批归一化层和ReLU层,最后使用sigmoid激活函数。6个逆卷积层的内核大小为43,步长为2,填充为1,每次将生成体素(单个维度)的分辨率提升1倍,对应的输出通道分别为512、128、32、16、8和1。最终,解码阶段输出大小为643的数据架构;但由于网络较浅,此时所恢复的三维体素细节较差,一些结构恢复不全,为重建更加精确的航天器模型结构,需要对生成的粗略模型进行进一步处理。
3.3 细化
参考3D U-Net架构,构建航天器三维模型细化模块,在不改变生成模型分辨率的情况下,采用3D卷积和逆卷积进行特征重组,将编码阶段生成的特征引入到解码阶段,进一步将粗略的航天器模型精细化。为了生成分辨率大小为643的三维精确模型,细化阶段的编码器具有4组3D卷积层、批归一化层、ReLU层和内核大小为23的最大池化层,每个卷积层的内核大小为43,填充为2。对应卷积层的输出通道分别编号为16、32、64和128。编码器后面是2个全连接层,大小分别为2048和8192。解码器由4组3D逆卷积层组成,每个逆卷积层后都有批归一化层和ReLU层,最后一个逆卷积层之后接sigmoid函数。4个逆卷积层的内核大小为43,步长为2,填充为1,对应的输出通道分别为128、64、32和2,最终生成细化后的航天器三维模型。
3.4 损失函数
训练过程中,网络的损失函数定义为重建的航天器三维模型与真实值之间的体素交叉熵,具体公式为
(1)
其中,N表示总体体素数目;Gi表示真实模型在对应位置的体素占用情况;Pi表示所重构的航天器模型在对应位置的体素占用情况,该指标独立地衡量每个体素栅格位置的存在情况。损失函数越小,表示航天器三维模型重构效果越好。
4 航天器三维模型恢复结果及分析
在本章中,首先对航天器三维模型重构的性能评估进行了介绍,然后展示了所提网络框架的实现细节,最后与目前基于人工智能算法的目标重构结果进行对比,说明所提网络框架在航天器三维模型重构方面的优势。
4.1 评估方式
为了评估所提方法对航天器三维体素模型的重构质量,本文在阈值t=0.2时对恢复的航天器模型数据进行二值化处理,使用联合交集(Intersec-tion over Union, IoU)作为预测的模型和真实的模型之间的相似性度量指标,具体来说,其数学模型可以表示为
(2)
其中,P(i,j,k)与G(i,j,k)分别表征航天器三维体素模型重构结果及训练过程中使用的真实体素模型;t表示训练过程中所设置的阈值。IoU值越高,表示所生成的航天器三维体素模型精确度及质量越高。
针对整个网络模型的体素结构预测性能,本文使用平均联合交集(Mean Intersection over Union, MIoU)作为评估指标,其数学模型可以表示为
(3)
其中,Nmodels表示测试的航天器三维模型数量;IoUi表示第i个生成的航天器模型与真实模型之间的相似性度量指标。
4.2 航天器三维模型恢复结果
本文使用分辨率为512×512的RGB图像作为网络模型的训练输入,输出体素化航天器三维模型重建的大小为643。使用Adam优化器训练航天器三维重构网络模型,对应的参数β1=0.9,β2=0.999。初始学习率设置为0.001,共训练250个epoch的网络。
针对不同结构的航天器模型,本文提出的网络架构最终可以良好地恢复其三维结构,如图5所示,列出了9种不同结构航天器的恢复结果。其中,每列图片的左侧为目标航天器真实体素(GT),右侧为训练后模型基于单视图输入生成的航天器三维体素模型(Predicted)可视化结果。通过分析对比不同结构的航天器恢复结果,发现本文所提网络可以良好地恢复大部分的航天器三维模型结构,但对于少数航天器,可能由于其输入的图片信息缺乏足够的RGB特征,生成的模型存在一定的噪声,但主要结构基本与原模型体素一致。
4.3 性能分析
为了评估所提方法在航天器三维模型恢复方面的性能,本文将所提方法与目前最先进的体素模型生成方法进行比较。对比Pix2Vox[14]和Pix2Vox++[15]网络模型,其三维模型重建结果定量对比如表1所示,各网络架构的模型重构性能指标均是在装有NVIDIA GTX 3080Ti GPU的同一台电脑上训练获取。目前所构建的网络在航天器结构恢复方面取得了0.895的MIoU值,相同条件下目前最优越的Pix2Vox++三维模型恢复网络框架通过相同的数据训练在航天器三维模型恢复任务中取得了0.7504的MIoU值。本文所提的网络框架训练恢复结果在航天器三维模型恢复效能方面要优于现有网络,并且具备更低的网络超参数量,但由于整个测试过程中将输入数据的分辨率提升,导致最终重建时间高于其余网络。同时,与传统算法相比,基于人工智能的航天器三维模型重构方法表现出更强的时效性。
表1 航天器三维模型恢复性能对比
5 结论
针对传统空间非合作航天器三维模型重构算法复杂、绕飞观测实时性差及计算过程数据量庞大等问题,本文突破传统算法的限制,提出了一种基于单视图的航天器三维体素模型重构方法。首先,通过类比地面大规模目标三维模型数据集,分析航天器结构、背景、形状等特性,建立航天器三维模型数据样本集合,并将其链接到对应的RGB图片,构建完备的“模型-图片”信息交互;其次,设计适用于航天器三维模型重构的网络框架,以图片为输入,三维体素模型为输出,对网络模型参数进行训练,最终得到最优的网络模型;最后,通过仿真实验对比说明了所提方法的有效性。总体来说,该方法仍存在一些不足,数据集规模不够庞大且完备性不足,仅引入光照元素对航天器进行数据生成,缺乏噪声、背景等其他干扰因素下的数据补充;同时,目前生成的航天器模型比较粗糙,因此需要对航天器模型进一步提高分辨率,使其能够更好地表征真实航天器三维模型,这也是本文后续的研究方向。