一种基于生成式对抗网络的数据集扩充方法在湿地,鸟类图像识别中的应用

【www.zhangdahai.com--其他范文】

熊聪聪,赵子健,曹鉴华,汤凌燕

(天津科技大学人工智能学院,天津 300457)

湿地是鸟类重要的栖息地,也是天然的物种基因库和人类的重要环境之一[1].将计算机视觉技术应用于湿地鸟类识别,利用目标检测算法对湿地鸟类进行识别,识别的速度更快、结果更准确.该技术能够有效地对湿地鸟类进行统计、跟踪,为科研工作者研究湿地鸟类的活动范围、生活习性以及种群繁衍等提供便利,进一步为湿地鸟类提供更具有针对性的保护措施,对保护湿地的生态平衡和物种多样性具有重要 意义.

基于深度学习的特征表达具有强大的分层自学能力,能深度挖掘隐含在数据内部的潜在关系,因此适合解决分类、目标检测、语义分割等计算机视觉问题.然而,深度学习依赖大量有标注数据的支持[2]. 与传统生物数据集相比,鸟类识别数据集具有不同类别间差距大、同类别内差距小、背景复杂等特点[3]. 与传统鸟类识别数据集相比,天津大黄堡湿地鸟类数据集存在鸟类样本数量少、样本分布不均衡等特点. 针对上述问题,本文提出一种基于生成式对抗网络(generative adversarial network,GAN)的湿地鸟类识别数据集扩充方法.首先对现有的湿地鸟类数据样本进行常规的仿射变换处理,如旋转、缩放、水平翻转、改变颜色通道、添加随机噪声等.在此基础上,采用生成式对抗网络样本扩充方法,将湿地鸟类图像输入生成式对抗网络进行迭代训练,获取更多的鸟类图像样本,缓解样本不均衡的问题,提高湿地保护区内鸟类识别检测的精度.

深度学习在许多场景和任务中已经取得了巨大成功,如图像分类检测、机器翻译、语音识别、视频处理等[4-7].相比于传统的有监督机器学习方法,深度学习不仅依赖复杂的网络模型结构和不断优化的网络算法,而且更需要足够的、大规模的甚至超大规模的训练样本,保证模型具有鲁棒性和泛化性.当样本数量少、样本分布不均衡时,深度网络模型的精度往往会大打折扣.如何提升样本数量、提高模型可靠性是亟待解决的问题[2].

近年来,数据扩充(data augmentation)已经成为一个重要的研究领域,它是指通过一定的方法创建额外的合成样本.在计算机视觉领域,当已有的图像数量过少时,可以使用传统的图像处理方法如平移、旋转、缩放、改变颜色通道等,增加样本的数量[8].如AlexNet模型[9]提出时就采用了两种数据扩充方法,一种是平移和水平翻转以及在图像的四角和中心区域进行剪裁;
另一种是调整图像的RGB通道,改变照明的强度和颜色.这两种方法使得AlexNet模型的准确率提升了1%.SPP-Net、Fast RCNN、Faster RCNN、YOLO等多种目标检测算法中同样提出多种仿射变换数据扩充策略[10].使用深度学习模型进行数据扩充的方法受到学术界的关注,例如使用人工神经网络生成用于文本识别的合成数据集[2]以及可变自动编码器[11].同时,一些研究者在计算机视觉图像分类、目标检测、语义分割领域的多种任务中,使用生成式对抗网络生成数据样本提升模型的精度和泛化性能[12-13].

生成式对抗网络的优势在于其具有强大的隐式建模能力,不需要真实样本数据的显式分布以及假设更多的数学条件,这些优势使得基于对抗网络的图像生成方法可以被应用于很多学术领域和工程领域. Qin等[14]针对医学皮肤病变图像数据集,提出基于皮肤病变图像风格的SL-StyleGAN模型,有效地合成高质量的皮肤病变图像,并且缓解了类别不平衡的问题.Liu等[15]针对行人检测数据集,提出属性保持生成式对抗网络APGAN模型,以模拟各种比例和遮挡的行人图像,同时使用风格转换增加图像的真实度,实现了数据集的扩充.王金娜等[16]针对输电线路绝缘子目标检测数据集,提出一种基于Cycle-GAN的绝缘子图像生成方法,生成高质量的绝缘子图像,扩充了数据集并提升了分类网络的性能.

深度学习作为鸟类识别领域的重要技术在理论和应用等方面已经取得较大进展[17],但目前使用的数据集主要是CUB-200-2011数据集.王光陛[18]提出基于Faster RCNN的语义检测细粒度识别方法,在CUB-200-2011数据集上取得81.56%的准确率.智绪晔[3]使用强监督目标检测模型单次多目标框检测器,实现鸟类目标和关键部位的检测定位,在CUB-200-2011数据集的验证集上取得89.7%的准确率.翁雨辰[19]选用VGG和ResNet作为特征提取网络,搭建基于区域建议网络和深度全卷积的网络结构实现鸟类图像分割任务,在CUB-200-2011数据集的训练集和测试集上取得97.7%的准确率.

天津大黄堡湿地的生境类型多样,有大面积的芦苇沼泽、浅滩、水塘、堤岸草丛及防护林带等,其独特的地理环境和优良的水质为多种鸟类提供了适宜的栖息环境[20].据调查,大黄堡湿地内有记录的鸟类有17目44科199种,其中国家一级保护鸟类4种,国家二级保护鸟类34种[20].天津大黄堡湿地内的4种国家一级保护鸟类如图1所示.

图1 天津大黄堡湿地内的4种国家一级保护鸟类 Fig. 1 Four species of national first-class protected birds in Dahuangbao wetland in Tianjin

受时间、环境等客观因素的影响,本次收集到湿地鸟类数据集的种类和样本均比较有限,基于细粒度方式统计,共包含鸟类121种、图像样本6045张,数据样本明显不够,同时各类样本之间不均衡的特征较为突出.

采用平衡系数Balance评价数据集的均衡程度.平衡系数Balance是一种基于香农熵(H)的平衡度量.当Balance为1时,表示数据集完全平衡,表明每个类别包含的样本数量相同;
当Balance为0时,表示数据集完全不平衡[2].Balance越小说明数据集越不平衡,其计算公式见式(1).

其中:n为数据集样本数量,K为类别数量,ic表示每个类别包含的样本数量.

按照上述计算方法计算原始数据集的平衡系数,结果仅为0.8.经过观察统计,本数据集中大量类别样本数量小于10,导致数据集严重不平衡,因此权衡后仅保留单个类别样本数量大于100的类别构成初始数据集,共计21类3048张样本(表1).

表1 湿地鸟类数据集概况 Tab. 1 Overview of wetland bird dataset

生成式对抗网络[21]自诞生以来,已经成为生成式深度学习技术最显著的突破之一.生成式对抗网络模型的基本架构由两个神经网络组成,分别称为生成器和判别器,它们在对抗的过程中同时训练.生成器的目的是生成一个新的合成样本,使判别器将之误判为真实样本.

为了学习生成器在数据x上的分布,定义输入噪声变量 pz(z),然后将数据空间的映射表示为G(z;θg).判别器的目的是判断输入样本是来自真实数据集 pdata还是合成数据集 pg.判别器 D(x;θd)的输出为一个标量,D(x)表示x来自真实数据集而不是合成数据集的概率.因此,生成器和判别器的过程是相反的,二者在相互竞争中不断优化函数,即

GAN的损失函数包含网络模型的两个相互关联的部分:一部分涉及真实样本的识别,其表达式为;
另一部分涉及合成样本的识别,其表达式为.在对抗训练的过程中最大化 logD(x),提升判别器的判别能力,同时最小化 log(1 − D( G(z ))),强化生成器模拟真实数据的能力.

如果向生成器和判别器输入额外的信息y,y作为附加输入层输入生成器和判别器,就将生成式对抗网络扩展为条件对抗网络[22],y可以是任何种类的辅助信息,例如类别标签等.在生成器中,输入噪声pz(z)和y被组合成联合隐藏表示,在判别器中,x和y被作为输入提供给判别函数,优化函数为

图2为一个简单的条件对抗网络结构示意图.

在深度生成网络模型中,通过学习一组样本的数据分布,进而使用学到的分布生成新的样本.GAN在两个网络之间产生对抗,一个网络(生成器)学习真实数据的分布并生成新的合成数据,试图欺骗另一个网络;
另一个网络(判别器)负责辨别其接收到的数据是来自真实的数据集还是生成器生成的合成数据. 两个网络在不断对抗学习中逐渐提升合成和鉴别的能力,最后能够生成可以使人类专家都无法分辨真伪的 合成图像[21].

4.1 仿射变换

首先,基于卷积神经网络的平移旋转不变性,对所有鸟类图像样本进行旋转变换.考虑到尽量不引起检测框长宽比的较大变化,旋转角度设定为-5°~5°.然后,进行缩放变换、水平翻转变换,考虑到尽量控制位于图像边缘附近的鸟类图像在放大后不越界,避免细节丢失,缩放尺度设定为90%~110%.最后,为了增加模型的鲁棒性,使用了添加高斯噪声的方法,其中μ=10、σ=1.将图像RGB的3个通道与三维高斯噪声相加,使用clamp函数处理越界的数值.

图3为仿射变换前后的效果对比.由图3可以观察到:经过仿射变换,鸟类图像得到初步扩充,并且对边界框的长宽比、鸟类图像的细节没有产生较大改变,对后续任务的精度不会产生较大影响.

图3 仿射变换前后的效果对比 Fig. 3 Comparison of effects before and after affine transformation

4.2 数据标注

条件对抗网络模型输入需要具有标注的样本,因此首先对数据集已有的样本进行标注处理.每个样本的标签由一个列表构成,包括5个元素c、x、y、w、h,其中:c为检测框内目标的类别,x、y分别为检测框中心的横坐标和纵坐标,w、h分别为检测框的宽度和高度.对于每个鸟类图像样本,可以根据标签信息提取目标检测框内的鸟类图像.为了避免拉伸造成的形变对模型分类精度的影响,以检测框的长边为边长绘制一个灰色的正方形,然后将目标放置在正方形的中心,将正方形压缩至128像素×128像素,最后保存每个目标的类别(图4).

图4 提取鸟类目标 Fig. 4 Extracting bird targets

4.3 条件对抗网络图像生成

将上述操作得到的鸟类图像输入条件对抗网络进行迭代训练.当条件对抗网络模型训练结束后,使用模型的生成器生成合成数据.

当数据集中每个类别所包含的样本数量不同甚至差距较大,即数据的分布不平衡时,将生成式对抗网络模型直接应用于合成数据的生成,会出现分类模型崩塌的现象.为了避免这种问题,针对具有不同数量样本的类别,采用不同扩充比例的扩充方法,让生成式对抗网络模型更好地适应所有类别的样本分布. 可以使用式(5)确定某类样本扩充后的总数量N.

其中:i为合成数据的类别,iN为第i类生成合成数据的个数,x为第i类所包含的样本数量占数据集中所有样本数量的比例,n为数据集中包含的类别数,N为希望生成的合成数据的总数.

基于初始数据集的特点,在条件对抗网络模型中设置参数.生成器的输入为256维的随机噪声,结构包括反卷积层、批处理归一化层、ReLU激活层.判别器的结构包括卷积层、批处理归一化层、ReLU激活层、λ=0.5的随机失活层以及全连接层,输出长度为21的向量.批处理大小设置为256,生成器和判别器的学习率为1×10-5,训练次数为10000次.判别器网络和生成器网络结构示意图如图5所示.

图5 判别器网络和生成器网络结构示意图 Fig. 5 Structure diagram of discriminator network and generator network

本实验平台的硬件为GPU-RTX3090,显存为24GB,算法基于Keras 2.4.3,编程语言为Python 3.8.5,总训练时间为31.2h.训练完成后,使用生成器进行各类别鸟类图像的生成并加入数据集.湿地鸟类原始图像和对抗网络生成图像的对比如图6所示,图6即为条件对抗网络生成样本效果.经过仿射变换和对抗网络生成图像的扩充,数据集平衡系数大幅提升,达到了0.99.

图6 湿地鸟类原始图像和对抗网络生成图像的对比(上图为原图,下图为生成图) Fig. 6 Comparison between the original image of wetland birds and the image generated by the adversarial network(the upper figure is the original image and the lower figure is the generated image)

针对初始数据集存在样本数量少的问题,综合使用仿射变换、对抗网络模型生成方法实现鸟类数据集的扩充,基本保证后续目标检测任务的效率和精度.

将仿射变换和对抗网络生成的图像加入数据集,并按8﹕2的比例划分训练集和测试集.数据集扩充前后不同算法评价指标的对比见表2.表2展示了原始数据集、仿射变换扩充数据集以及对抗网络扩充数据集分别在SSD、YOLOv3-SPP-Net、RetinaNet算法上训练100次的效果.3种算法均为单阶段目标检测的经典算法,且都可以进行多尺度训练以及接受任意大小的图片作为输入,评价指标为AP、mAP、AR,其中AP为将IoU设置为0.5或0.75时的平均精度,mAP为将IoU分别设置为[0.5,0.55,0.6,…,0.95]时AP的平均值,AR为将IoU分别设置为[0.5,0.55,0.6,…,0.95]时的平均召回率.

表2 数据集扩充前后不同算法评价指标的对比 Tab. 2 Comparison of evaluation indicators of different algorithms before and after data set expansion %

由表2可知,原始数据集的样本数量有限,导致SSD算法和RetinaNet算法并不能充分学习各类样本的特征,精度仅为20%左右,只有YOLOv3-SPP-Net算法的mAP达到了40%,但其AR不足50%.在仿射变换扩充后,3种算法的mAP均超过了55%.而在使用本文提出的数据集扩充方法之后,3种算法的mAP均超过了60%,AR也明显提升.这表明针对天津大黄堡湿地场景中的鸟类识别,基于对抗网络模型扩充样本的方法具有一定的有效性.

在扩充样本初始数据集时,已经将同类别内样本数量小于50的目标过滤.然而,在研究过程中尝试对所有类别的样本使用上述扩充方法,在经典目标检测算法中识别的精度并不是很理想,同时耗时更长,明显受到了不同类别间样本不均衡、扩充样本质量不高等因素的影响.

针对样本数量不足且类别分布不均衡的天津大黄堡湿地鸟类数据集,提出一种基于对抗网络的湿地鸟类数据集扩充方法,通过该方法将数据集规模进行扩充并且缓解了样本分布不均衡的问题.通过在SSD、YOLOv3-SPP-Net、RetinaNet目标检测算法上进行测试,使用扩充后的数据集,基于3种经典算法的精度均超过90%.由此可见,本文提出的扩充方法得到的数据集能够显著提升算法的精度,为后续更多的鸟类识别研究提供技术支持.当后续采集的鸟类数据集中种类变多时,样本分布不均衡的问题会更突出,如何获取更多质量更高的训练集样本是下一步需要研究的问题.同时,选择适合区内最佳的目标检测算法、适当改进现有经典算法满足目标精确识别要求,也是需要深入思考的方向.

猜你喜欢 类别鸟类样本 善于学习的鸟类学与玩(2022年9期)2022-10-31一起去图书馆吧少儿画王(3-6岁)(2020年4期)2020-09-13我的湿地鸟类朋友文苑(2020年12期)2020-04-13鸟类小太阳画报(2019年1期)2019-06-11规划·样本领导决策信息(2018年16期)2018-09-27简析基于概率预测的网络数学模型建构东方教育(2018年20期)2018-08-22人大专题询问之“方城样本”人大建设(2017年10期)2018-01-23随机微分方程的样本Lyapunov二次型估计数学学习与研究(2017年3期)2017-03-09“官员写作”的四个样本西南学林(2011年0期)2011-11-12选相纸 打照片微型计算机(2009年4期)2009-12-23

推荐访问:鸟类 湿地 扩充

本文来源:http://www.zhangdahai.com/shiyongfanwen/qitafanwen/2023/0430/591412.html

  • 相关内容
  • 热门专题
  • 网站地图- 手机版
  • Copyright @ www.zhangdahai.com 大海范文网 All Rights Reserved 黔ICP备2021006551号
  • 免责声明:大海范文网部分信息来自互联网,并不带表本站观点!若侵害了您的利益,请联系我们,我们将在48小时内删除!