超高分辨率地形场景纹理图像生成方法研究
2021-06-17于子豪龚光红
于子豪,龚光红,李 妮
(北京航空航天大学 自动化科学与电气工程学院,北京 100191)
0 引言
以增强现实技术和虚拟现实技术为代表的技术的发展,使得对三维重建中模型纹理贴图分辨率的要求不断提高。使用航空倾斜摄影技术获得的图像进行三维模型重建时,图像的空间分辨率直接受限于飞机的飞行高度和图像传感器的精度。在拍摄条件不变的情况下,如何获得高分辨率的模型贴图成了一个待解决的问题。本文基于这一问题,开展了对单帧超分辨率重建算法的研究,探索超分辨率方法应用到航空倾斜摄影数据中及三维重建中的可行性。
对大地形场景进行三维重建,首先需要获取目标区域的三维点云数据和纹理图像[1]。近几年来,兴起的航空倾斜摄影对地观测技术在城市建模中发挥着很大的作用[2],利用航空倾斜摄影可以相对较低的成本获取较高质量的目标区域的纹理图像。
图像空间分辨率是传感器能够分辨的最小物体的度量,即每个像素表示的地面线性尺寸[3]。航空倾斜摄影相机在进行成像时与目标场景做高速相对运动,真实世界场景经过大气湍流扰动进入相机镜头,图像难免会被运动模糊、大气模糊以及光学模糊所影响。在感光耦合元件处受到量化下采样的影响后形成低质量的含有系统噪声的图像。可以通过提高获得的航空图像空间分辨率的方法来提高三维重建时的模型贴图的空间分辨率。利用搭载航空倾斜相机的无人机对北京市门头沟区的潭墅苑小区进行拍摄。图1为拍摄的航空图像,对其中22号楼的楼牌号进行放大可以看出所拍摄的航空图像空间分辨率较低,“潭墅苑”三个字并不能被清晰辨认。
图1 潭墅苑小区无人机航拍图
可以通过提高图像传感器密度和增大镜头焦距等方法提高成像系统的性能进而提高图像空间分辨率,但是增大镜头焦距会使相机重量增加,提高传感器密度会导致噪声影响加剧,并且提高成像系统的性能会大大增加拍摄的成本。在大地形场景三维重建时,降低无人机的飞行高度也会增加无人机航路规划的成本。
通过图像处理的技术,利用软件算法将低分辨率(Low Resolution, LR)图像重建为高分辨率(High Resolution, HR)图像[4]的方法被称为超分辨率重建技术。超分辨率重建技术能够在一定程度上突破航空倾斜摄影成像系统的硬件限制,削弱噪声等降质因素给图像空间分辨率带来的负面影响。在三维建模前,使用超分辨率重建技术对获取的倾斜摄影航拍图进行处理,可获得高质量高空间分辨率的图像。从而在三维重建时,提高模型贴图的空间分辨率(图2)。
图2 超分辨率重建与三维重建流程
单帧超分辨率重建的主要方法为基于学习的超分辨率方法,基于分块的方法[4]占了基于学习的超分辨率方法的很大比例。这种方法可以找到高、低分辨率图像块之间复杂的映射关系,指导LR图像重建为HR图像[5],可以还原输入图像中没有的纹理细节。
单帧超分辨率算法为最近几年的研究热点,Yang Jianchao 等[6]根据压缩感知理论提出了一种基于稀疏表达的方法。通过字典的训练来得到先验信息,在放大倍数为8时,生成HR图像的质量也很高。稀疏表达的引入与通过完备字典的学习降低了计算量,并且使得图像的表达更为简洁。
基于卷积神经网络和生成对抗网络的单帧分辨率算法是最近几年的热点研究方向。2017年,Ledig等[7]提出的超分辨率生成对抗网络(SRGAN)可以在人眼视觉感知层面达到state-of-the-art的结果。Lai Weisheng等[8]提出的深度拉普拉斯金字塔超分辨率网络(Deep laplacian pyramid networks,LapSRN)可以在峰值信噪比(Peak signal-to-noise ratio, PSNR)和结构相似度度量(Structural similarity, SSIM)层面达到state-of-the-art的结果。
1 网络结构与系统流程
1.1 LapSRN网络结构
图3所示为8倍LapSRN网络结构,该网络由特征提取部分和图像重建部分组成。8倍的LapSRN网络有三级,其中每一级都会将上一级的输入图像分辨率放大2倍。特征提取部分在每个金字塔等级上使用级联卷积层从输入LR图像中提取非线性特征映射。特征映射经过转置卷积层上采样,再经过卷积层预测子带残差。图像重建部分对LR图像进行上采样并根据特征提取部分获取的子带残差值,通过逐个像素相加有效地重建HR图像。该网络架构以深度监督的方式(即可以在金字塔每个等级上同时进行监督学习)完成高分辨率图像的重建任务。
图3 LapSRN网络结构[9]
1.2 系统流程
图2所示为系统的数据处理流程,首先由搭载倾斜摄影相机的无人机进行倾斜摄影航拍,获得倾斜摄影航拍图;使用LapSRN对获得的倾斜摄影航拍图进行超分辨率重建;将获得的高分辨率图像输入到ContextCapture中进行三维重建;最终获得具有超高分辨率纹理的地形场景三维模型。
2 实验数据与参数设置
2.1 实验数据
本文使用的训练集为从Berkeley Segmentation Dataset[10]选取的200张图像,还有Yang等[6]使用的91张训练图像。本文使用的测试集为Tanzhesi461、Tanzhesi5、Bluehouse5和Urban100数据集[11]。其中,tanzhesi461数据集为倾斜摄影航拍数据集,包含461张分辨率为 7360×4912 的倾斜摄影航拍图,并可用于三维重建。Tanzhesi5数据集与Bluehouse5数据集均为tanzhesi461数据集的子集,各包含5张图像。Tanzhesi461数据集的部分图像如图4所示。
图4 Tanzhesi461数据集中的部分图像
Urban100数据集包括100张城镇区域的图像,是用于超分辨率算法性能评估的通用数据集,其中部分图像如图5所示。
图5 Urban100数据集中的部分图像
2.2 数据处理
由于超分辨率重建算法占用内存较大,因此在对Tanzhesi461数据集与Tanzhesi5数据集进行超分辨率重建时,需要首先对图像进行分割处理。为了定量计算峰值信噪比(Peek Signal-to-Noise Ratio, PSNR)、结构相似性(Structural Similarity, SSIM)以及感知度量(Learned Perceptual Image Patch Similarity, LPIPS),需要下采样图像从而获得LR图像和真值(Ground Truth, GT)图像。
在进行定量实验时,首先将Tanzhesi5和Urban100作为测试集。对Tanzhesi5数据集中5张分辨率为 7360×4912 的航拍图进行分割,每张可分割出36张分辨率为 1226×818 的图片,共得到180张图片。由于Tanzhesi461数据集所覆盖的场景主体为建筑物及地形,去除30张仅含植被的图像后最终得到包含150张图像的数据集Divided150。使用双三次插值算法将Divided150数据集和Urban100数据集下采样。在下采样系数为2、4、8时,可以获得一系列LR图像和GT图像。
使用双三次插值算法将Bluehouse5数据集直接下采样,下采样系数为4和16。其中下采样系数为4的数据作为GT图像,下采样系数为16的数据作为LR图像。
在进行定性实验时,将Tanzhesi461数据集中461张图像分割,每张可分割出121张分辨率为 668×446 的图像。最终得到包含55 781张图像的数据集Divided55781。
2.3 LapSRN网络训练
首先使用Wang Zhihao等[9]在他们的论文中提到的数据集及训练方法训练LapSRN网络。
卷积层由大小为 3×3 的64个滤波器组成。使用He等的方法初始化卷积滤波器[12]。转置卷积滤波器的大小为 4×4,从双线性滤波器开始初始化其权重。所有的卷积和转置卷积层(重建层除外)之后都为斜率为-0.3的泄漏整流线性单元(LReLU)。在执行卷积之前,在图像边界周围填充零,以使所有特征映射的大小与每个级别的输入图像大小相同。
训练集为从Berkeley Segmentation Dataset[10]选取的200张图像,还有Yang等[6]使用的91张训练图像。每个训练批次中,随机抽取64个大小为128×128的图像块。一个epoch有1000次反向传播迭代。使用三种方式增加训练数据:①缩放:在[0.5,1.0]之间随机缩小;②旋转:将图像随机旋转90°、180°或270°;③翻转:在水平或垂直方向翻转图像,概率为0.5。根据现有方法的规则[13],用双三次插值法将每一批训练数据下采样。使用MatConvNet工具箱中的随机梯度下降求解器训练模型。此外,将动量参数设置为0.8,权重衰减为 1×10-4。所有层的初始学习率为 1×10-5,并且每经过50次迭代后降低为原来的1/2。
3 实验结果与分析
为了验证LapSRN网络模型在三维重建任务中的有效性。首先,在Tanzhesi461数据集上进行定性实验获得超分辨率倾斜摄影图像。并利用ContextCapture处理超高分辨率的倾斜摄影图像,获得具有超高分辨率场景纹理的三维模型。然后,在倾斜摄影航拍数据集Tanzhesi5、Bluehouse5与通用数据集Urban100上进行定量对比实验。
3.1 定性实验结果
图6与图7分别是Tanzhesi461数据集中的一张图像的二倍双三次插值和二倍超分辨率重建的结果。可以看出,二倍超分辨率重建的结果中的纹理更加清晰。
图6 二倍双三次插值结果
图7 二倍超分辨率重建结果
用ContextCapture对LapSRN二倍超分辨率的Tanzhesi461数据集进行三维重建。得到的结果如图8所示。由于ContextCapture重建出的三维模型具有多个细节层次,在视点靠近模型时模型细节层次逐渐提高,模型多边形的数目逐渐增加。由于生成的模型具有多细节层次,只有在视点比较靠近模型时才可以观察到超分辨率算法的作用。由于在视点较远时,模型细节层次较低,模型多边形数目较少,因此不能直观地观察到超分辨率重建前后生成模型的模型贴图纹理细节的不同。随着视点靠近模型,模型的多边形数目增加,细节层次提高,超分辨率的作用才体现出来。在图8中,随着视角的变化,在距离模型较近的视角下,可以看到使用二倍超分辨率重建图像进行三维重建得到的模型贴图分辨率更高,更加清晰。
图8 使用二倍超分辨率重建的图像进行三维重建的结果与使用原图进行三维重建的结果对比
3.2 定量实验结果
表1呈现的是LapSRN在Tanzhesi5数据集和Urban100数据集上的PSNR及SSIM实验结果。PSNR和SSIM是超分辨率重建领域常用的两个指标。从表1中可以看出,在Tanzhesi5和Urban100上,超分辨率倍数为2时,LapSRN可以获得最好的结果。这说明超分辨率重建倍数越低,越容易获得高质量的图像。在2、4、8倍的重建倍数下,在PSNR和SSIM意义上使用LapSRN模型均可以获得较好的重建结果。
表1 LapSRN在Tanzhesi5数据集和Urban100数据集上的PSNR及SSIM实验结果
表2呈现的是LapSRN与双三次插值算法在Tanzhesi5数据集上的PSNR及SSIM对比实验结果。可以看出,超分辨率重建在Tanzhesi5数据集上的表现在PSNR和SSIM意义上要明显优于双三次插值算法。
表2 LapSRN与双三次插值算法在Tanzhesi 5数据集上的PSRN及SSIM对比实验结果
表3是LapSRN与双三次插值算法在Bluehouse5数据集上的PSNR及LPIPS的对比实验结果,其重建倍数为4。其中,LPIPS更加符合人眼的感知标准,LPIPS越小,说明图像的人眼感知质量越接近真值图像。可以看出,LapSRN重建结果的PSNR和LPIPS均优于双三次插值算法。为了方便定性对比,将Bluehouse5中的一张图像中的蓝色房屋截出,如图6所示。对比结果如图7所示,可以直观看出,使用LapSRN处理的LR图像比使用双三次插值算法处理的LR图像更加接近GT图像。
表3 LapSRN与双三次插值算法在Bluehouse5数据集上的PSNR及LPIPS对比试验结果
图9 截出Bluehouse5中图像的一栋房子所在的区域
图10 Bluehouse5定量及定性对比结果
4 结论
本文主要对超高分辨率地形场景纹理图像生成方法开展了相关研究,探索超分辨率重建算法LapSRN应用到倾斜摄影和三维重建中的可行性。首先验证了LapSRN可以提高航空倾斜摄影数据集中图像的质量和空间分辨率。并将LapSRN超分辨率重建模型应用于倾斜摄影和三维重建中。实验表明,在拍摄条件不变的情况下,提高了倾斜摄影图像和三维模型贴图的空间分辨率。