基于图像超分辨率的遥感图像树冠目标检测

2021-06-27 01:42赵亚凤张志超
黄冈职业技术学院学报 2021年3期
关键词:树冠分辨率卷积

陈 振,赵亚凤,张志超

基于图像超分辨率的遥感图像树冠目标检测

陈 振,赵亚凤,张志超

(东北林业大学 信息与计算机工程学院,黑龙江 哈尔滨 150040)

针对目前遥感图像质量较差导致对其中物体检测效果低下的问题,本文提出一种基于生成式对抗网络(GAN)的图像超分辨率方法来提升遥感图像整体质量,并对现有常用目标检测算法YOLO进行研究。针对遥感图像中树冠不容易检测的特点,将超分辨率运用于检测遥感图像中的树冠,对特定区域内树冠数量及定位进行统计。实验结果表明超分辨率方法对目标检测起到积极作用,检测精度提升约为8%,有利于对特定地区树木种植数量的统计工作。

生成式对抗网络;超分辨率;目标检测;树冠;遥感图像

由于拍摄因素的影响,遥感图像往往质量不佳,需要通过预处理后投入研究使用,传统预处理包括校正、配准、去噪等步骤,耗时耗力且需要较高的专业知识。因此,如何高效获取高质量的遥感图像成为一项研究内容。随着超分辨率生成式对抗网络的问世,可以在原有低分辨率遥感图像基础上训练出高分辨率遥感图像。另外,目标检测技术是一项重要的研究,如对遥感图像中树冠进行目标检测,有利于土地规划、植树造林工作的统计。

利用图像超分辨率技术可以获取图像中目标的深度信息,目标检测技术可以识别图像中关键目标的类别和位置。在本文研究应用中,将两者相结合,实现对树冠的精准检测,继而评估林业资源、植树造林程度,为林业智能化提供新的思路。

1 超分辨率理论基础

作为目前在图像生成和图像复原领域最为优秀的深度学习算法,生成对抗网络作为一个极其高效的框架,能够生成具有欺诈性的图像以模拟真实图像,将这类算法应用在图像超分辨领域是一个值得一试的想法,本节主要对一种基于感知损失的生成对抗网络(GAN)图像超分辨率方法进行研究,首先介绍生成对抗网络的基本原理,继而定义感知损失函数,最后研究生成器网络和判别器网络的详细构造。

1.1 生成式对抗网络基本原理

GAN框架中包含两个主要神经网络模块:生成器网络和判别器网络。生成器网络的基本思想是输入一个训练集数据,训练网络来对这些样本的概率分布进行推理,最终实现输入一个随机的噪声信号,如均匀分布或高斯分布来输出一个与输入样本极其相似的结果;而判别器网络的作用则是区分自然样本和生成器网络生成的样本,判断生成器网络生成的样本图像是否是真实图像,该网络最后会输出一个概率以表示样本的真实度。在训练过程中,两个网络相互促进竞争,同时参与训练,生成器网络的目的是生成足够真实的图像以使判别器网络认为它是真实图像,而判别器网络的目标是尽量区分真实样本与生成样本,二者构成了一个纳什均衡,最终希望生成图像达到以假乱真的目的。GAN网络的具体结构如图1所示:

图1 GAN网络原理图

1.2 感知损失函数

该公式旨在同时训练生成器G来欺骗判别器D;训练判别器D的作用是判断输入的虚假图像是否是真实的图像。并不断迭代训练,反作用于生成器,使其不断优化生成的虚假图像,最终使判别器难以辨别。

因此本文在其基础上结合上文的分析对将损失函数改为如下公式:

1.3 网络整体结构

(1)生成器网络

生成器网络G的总体框架基于Resnet网络,主要采用多个相同的残差块组成,每个块的结构具体如图2所示,每个卷积层的卷积核大小为3*3,每个残差块输出的特征图维度都是64,并且在卷积过程中通过填充等操方式来保证特征图的尺寸分辨率不变。在网络的输出部分,使用两个步长为0.5的反卷积层来提升输出图像的分辨率。

图2 生成器网络G

(2)判别器网络

判别器网络D的主体结构为VGG网络,并在卷积神经网络的每一层的最后加上一个LeakyReLU层以进行激活,在特征图输出之前用BN层进行归一化操作。网络整体采用多个相同的卷积块组成,每个卷积块的结构具体如图3 所示,卷积核步长和滤波器个数随层次的升高而不断增加,特征图的分辨率不断降低而其维数不断增大,最后一个卷积层输出一个维度为512的低分辨率特征图。在网络最终输出部分,使用两个全连接层将特征图输出成一个概率,该值代表判别器能否能鉴别出超分辨率图像和真实图像的置信度得分,分数越高表示判别器认为输入图像是真实图像的可能性越大。

图3 判别器网络D

生成器网络G和鉴别器网络D具有不同的网络结构,但二者实质上属于同一个网络结构。因此在反向传播梯度时,二者的参数是互相共享的,并且共同进行训练和更新。

1.4 模型复杂度与小批次处理

在硬件设备上进行深度学习算法运算时,需要考虑硬件设备是否满足算法所需要的内存及计算机算力的要求,我们可以采用模型复杂度分析的方法来估量。主要的衡量指标是模型计算量(floating point operations)和参数(parameters)数量。

其中,深度学习的模型主要计算量是在卷积层,卷积层的计算方式为滑动窗口计算,每层计算量为:

为卷积核的大小。主要的参数量则位于全连接层中,其计算公式为:

和分别为输入和输出的特征向量大小。最终,结合自身实验硬件内存及计算机算力得出能否运行该算法,当不满足条件时需要采取方法减少模型复杂度。在本文中,由于直接采用原始遥感图像进行超分辨率实验时出现内存不足的情况,这是由于单次卷积运算复杂度太大而造成的,因此提出了一种“小批量处理”的方法,先将一张图像切分成若干张小图像进行超分辨率,超分辨率完成后再将它们合并得到一张完整的超分辨率图像,这种方法能够大幅降低单次运算时的模型复杂度。

如一张512*512的图像经过1*1大小卷积核后的单层卷积计算量为=2*512*512*4*3 =6291456,而一张128*128的图像在同样大小卷积核中的作用下单层卷积计算量缩小16倍变为=393216。因此将一张512*512的图像分割成16张128*128的图像能够大幅减少模型单次运算时的算法复杂度。通过实验验证,这种“小批量处理”的方法能避免内存不足的情况,在当前实验硬件条件下亦可完成实验。

2 遥感图像超分辨率

2.1 数据集构建

本文超分辨率及后续目标检测实验所用数据集为NWPU VHR-10 dataset。包含800张光学遥感图像,作为原始未处理数据集。由于遥感图像中往往包含较多的树冠,如图4所示。我们将其中包含树冠的图像挑选出来作为一个树冠图像数据集,挑选出包含独立树冠的遥感图像233张。针对树冠在遥感图像中尺寸小、特征不明显、易与草地混淆以及易成群造成标注困难的特点采用超分辨率方法缓解问题,继而采用目前主流的目标检测YOLO算法[5]进行实验检测独立树冠,证明对于一些如树冠这样直接检测难以取得较好效果的目标,可以结合超分辨率方法实现检测精度提升。

图4 包含独立树冠的遥感图像

对其中的独立树冠进行像素上的精确定位,检测其数量及方位,便能对统计特定地区绿化程度,树木种植数量的统计工作上提供一定程度的便利,并结合相应绿化指标如特定面积应该种植多少树木,得出该地区是否达到绿化标准。因此,如何能准确的对遥感图像中的独立树冠进行精确的目标检测具有其实际效用。

本文将采用基于生成式对抗网络的图像超分辨率方法,并基于NWPU VHR-10 dataset数据集构建自己的树冠遥感图像数据集,提高树冠数据集的分辨率并采用YOLO目标检测算法分别对分辨率提升前后数据集进行测试,对比树冠的检测精度,以期实现通过超分辨率来提高对树冠的检测精度。

2.2 超分辨率实验

本节将基于前文理论搭建出一个超分辨率生成式对抗网络(SRGAN)模型。对基于NWPU VHR-10 dataset构建的树冠遥感图像数据集进行超分辨率实验。首先,需要构建一个图像分辨率相同的待超分辨率数据集(即低分辨率数据集)。因此首先需要将所有图像统一下采样(subsampled)到128*128的尺寸大小,即得到了低分辨率数据集,随后通过迁移学习的思想引入预训练权重训练出一个实现分辨率提升4倍的超分辨率模型。

其具体步骤如下所示:

(1)首先将树冠遥感数据集中的图像进行裁剪处理得到一个长宽相同的图像后进行缩放使其所有图像尺寸大小为512*512,在这个过程中需要尽可能的保留所有待检测树冠,剔除一些不必要的背景信息。将这个处理后的数据集作为真实的高分辨率图像数据集(HR数据集)。其对应的低分辨率图像(LR图像)由其下采样获得:当HR数据集进入超分辨率网络时,算法首先会将其随机切割为16个尺寸为128*128大小的LR图像,如下图5所示。

图5 小批量处理前后的图像

(3)训练时设置上采样因子为4(即将低分辨率输入图像的分辨率提高四倍),则切割后的每一个128*128的图像分辨率提高到512*512。即实现一张512*512图像扩充为16张512*512图像。若将这16个图像再拼到一起就能得到一个2048*2048大小的超分辨率图像,也就实现了4倍的分辨率提升。

将这233张包含独立树冠的图像按上述方法处理,最终得到图像数量为3728的超分辨率独立树冠遥感图像。作为对比,将每张图像切割后得到的128*128图像不进行任何处理得到3728张普通独立树冠遥感图像。其中切割后的部分图像不再包含树冠,这些图像中总计包含独立树冠数为5489棵。

对数据集中3728张独立树冠图像进行4倍分辨率提升。训练测试集比例9:1。可以看出,超分辨率图像的质量较原始图像有较大提升,如下图所示:

图6 独立树冠图像超分辨率

3 遥感图像目标检测

3.1 YOLO目标检测网络

YOLO算法(you only look once),是标准的one-stage算法,即同时完成对待检测物体的位置检测和类别检测,具有运算精度高以及运算速度快等优势。从2016年提出YOLO V1至今通过原作者的不断完善,已经成为目标检测领域综合性能最强的算法之一。其最新一代YOLO V4目标检测的整体框架如下图7所示:

图7 YOLO V4整体框架图

YOLO算法能直接在输出层预测出目标类别与位置,从而实现单步检测。通过这种方法提高运算速度,达到实时性要求[3]。图中BackBone为YOLO V4的主干特征提取网络,其重要特点是使用了残差网络resblock_body模块并结合CSPnet结构,该主干网络由resblock_body模块组合而成,这样做的好处是利于网络优化,且极大程度上增加了模型深度,提高检测精度。此外,YOLO V4中采用跳跃连接的方法以解决梯度消失或梯度爆炸。

3.2目标检测评价指标

下述指标为一些常用于衡量图像目标检测质量的指标:交并比(intersection over union,IOU)[1]、精度、总体的平均精度(mean average precision,mAP)[3]以及召回率[5]。IOU是模型生成的预测边界框和真实边界框的重叠率。如下图8所示,图中绿色框为人工标注的真实框,红色框为预测框。

图8 交并比计算示意图

IOU的计算公式如下:

精度和召回率的计算公式如下:

其中 TP(True Positive)表示正确检测到的目标数量;FN(False Positive)表示未被发现或错过的目标数量;FP(假阳性或假警报)代表错误检测的目标数量。

对于目标检测,类的平均精度(mAP)可以定义为:

3.3 目标检测实验

本文中,我们采用多组超参数设置来对比超分辨率前后效果。每组实验中采用的超参数设置如下表所示。其中主要的影响因素为学习率,选择三种常用的学习率大小:0.01、0.001和0.0001:设定不同的训练epochs数进行实验,如下表所示:

表1 参数设置

该实验分别对超分辨率前后数据集进行目标检测,数据集分别包含3728张图像,含待检测独立树冠数为5489,图像分辨率分别为128*128和512*512。其中训练测试集比例为9:1。分别按照表1的参数设置,经过30、50及100个epochs后,网络对测试集的检测效果展示如图9所示:

其中超分辨率前后分辨率分别为128*128和512*512。如图9所示,其中图(a)表示标注的树冠数量及坐标,树冠数量为6。从(b)、(d)、(f)中我们发现,使用超分辨率前数据集时,无论训练多少个epochs都没能检测出图中最左边的两颗独立树冠;作为对比,(c)、(e)、(g)中即使训练30个epochs,超分辨率后数据集也能检测出这两颗独立树冠。

此外,分别对比图(b)、(c);(d)、(e)以及(f)、(g)可以发现无论训练多少个epochs,超分辨率后数据集对于每棵独立树冠的检测IOU值均大于或等于超分辨率前数据集。测试集其他图像中,超分辨率后数据集检测效果也均优于超分辨率前数据集。此外,绘制每次实验的mAP图以量化检测结果:

如图10所示,随着三种实验中epochs数的不断增加,超分辨率前数据集检测mAP值不断上升,为0.751、0.763和0.774;这种mAP增长的趋势同样体现在超分辨率后数据集,分别为0.832、0.843和0.850。实验结果表明,采用4倍超分辨率提升的方法进行独立树冠目标检测,能够使检测精度提升约8%。

最后进行的是整幅遥感图像的目标检测,代入目标检测实验中模型训练得到的最优检测权重best.pt,分别对整张超分辨率前遥感图像和“小批量处理”中合并后的整张超分辨率遥感图像进行测试,检测效果展示如下图11所示:

图11 整图测试

如上图11(a)所示,超分辨率前图像中将田径场中的草地误判为树冠(左上角),且没有检测出最右下角的树冠;而在图(b)中,不仅IOU值更高,并且没有出现误检、漏检的情况。对比11(c)和(d)也能发现超分辨率后图像检测出更多的树冠,尤其是(d)图检测出更多的小树冠,如中间部分在草地上零散的小树冠。但是超分辨率前后的图像中都没能检测出图中左上角和底部的树冠群。实验结果表明,使用图像超分辨率对模型训练以及最终的检测均有正面效果,但目标检测效果还有提升空间,主要体现在超分辨率图像与原始。

4 结论

本文结合超分辨率与目标检测两种方法,对遥感图像内的树冠进行检测统计,可推广到林业智能化用于统计特定地区植树造林程度。通过实验对比,在保证其他实验环境一致的情况下超分辨率后的树冠检测精度相较于超分辨率前分别从0.751、0.763和0.774增长到0.832、0.843和0.850,提升幅度约为8%,已具有极高的检测效果,能够实现本文林业智能化的研究目的。本文方法仍具有提升空间,比如针对YOLO目标检测网络缺陷可以提出进一步的优化方案以提升检测精度。

[1]Cheng G,Han J. A survey on object detection in optical remote sensing images[J].ISPRS Journal of Photogrammetry and Remote Sensing, 2016(117): 11-28.

[2]郑远攀,李广阳,李晔.深度学习在图像识别中的应用研究综述[J].计算机工程与应用,2019, 55(12):20-36.

[3]Ship detection based on fused features and rebuilt YOLOv3 networks in optical remote-sensing images[J]. International Journal of Remote Sensing, 2021,42(2).

[4]张宗军.基于深度学习的遥感图像地面目标检测算法研究[D].中北大学,2020.

[5]Gong Cheng, Junwei Han. A survey on object detection in optical remote sensing images. ISPRS Journal of Photogrammetry and Remote Sensing, 2016(117): 11-28.

Tree Crown Detection in Remote Sensing Image based on Image Super Resolution

Chen Zhen, Zhao Yafeng, Zhang Zhichao

(Northeast Forestry University, Harbin 150040 Heilongjiang)

Aiming at the problem that the poor quality of remote sensing image leads to the low effect of object detection, this paper proposes an image super-resolution method based on generative countermeasure network (GAN) to improve the overall quality of remote sensing image, and studies the existing common target detection algorithm Yolo. In view of the characteristics that it is not easy to detect the crown in remote sensing image, super-resolution is applied to detect the crown in remote sensing image, and the number and location of crown in a specific area are counted. The experimental results show that the super-resolution method plays a positive role in target detection, and the detection accuracy is improved by about 8%, which is conducive to the statistical work of the number of trees planted in specific areas.

Generative countermeasure network; Super resolution; Target detection; Tree crown; Remote sensing image

2021-05-02

陈振,男,湖北黄州人,电子与通信工程硕士研究生。研究方向:计算机视觉。

TP757

A

1672-1047(2021)03-0085-09

10.3969/j.issn.1672-1047.2021.03.23

[责任编辑:宋武]

猜你喜欢
树冠分辨率卷积
基于生成对抗网络的无监督图像超分辨率算法
基于3D-Winograd的快速卷积算法设计及FPGA实现
树冠羞避是什么原理?
卷积神经网络的分析与设计
榕树
从滤波器理解卷积
树冠
原生VS最大那些混淆视听的“分辨率”概念
基于傅里叶域卷积表示的目标跟踪算法
一个早晨