APP下载

基于改进Cascade R-CNN的雪豹物种水平的自动检测方法

2022-05-16高雅月常峰源谢将剑张军国

野生动物学报 2022年2期
关键词:级联置信度检测器

张 毓 高雅月 常峰源 谢将剑* 张军国*

(1.青海省祁连山自然保护区管理局,海北藏族自治州,810400;2.祁连山国家公园国家长期科研基地,海北藏族自治州,810400;3.北京林业大学工学院,北京,100083)

雪豹(Pantherauncia)是一种重要的大型猫科(Felidae)动物,位于高原生态系统食物链顶端,对维护高原生态系统的平衡和稳定具有重要的作用。2017年,雪豹被世界自然保护联盟(IUCN)认定为易危(VU)物种,是我国一级重点保护野生动物,当前全球雪豹的数量为4 678~8 745只[1]。雪豹的监测可以为其保护提供数据基础,但由于雪豹的栖息环境特殊,警觉性较高[2],通常在夜间活动,行踪飘忽不定[3],人工监测雪豹较为困难。

在野生动物调查技术中,红外相机技术通过红外感应靠近的野生动物,并自动拍摄野生动物的照片或影像,得到了广泛应用[4]。红外相机可以在野外长时间独立工作,对动物干扰小[5],非常适用于雪豹的探测和记录,成为当前监测雪豹的最有效手段之一,可以用于雪豹种群的动态监测[6]。长时间的监测可以获取海量的监测图像,需要从中筛选出雪豹图像,以便开展下一步的研究。但由于雪豹数量稀少,其监测图像也相对较少。新疆雪豹研究小组在新疆北塔山、阿尔泰山、昆仑山、天山东部和托木尔峰等20多个地区布设了36台红外相机,监测2 094 d只采集到32张清晰的雪豹图像,平均捕获率只有1.53%[7]。依靠传统的人工识别方法,从大量的监测图像中识别筛选出雪豹图像,工作量大、效率低。利用图像识别技术快速、自动地识别和筛选雪豹图像,可以克服人工识别的多种缺点。

近年来,基于深度学习的图像识别方法在野生动物识别中得到广泛应用。在图像分类方面,Timm等[8]首先对输入图像的有效性进行判定,然后利用Inception V3模型对有野生动物的图像识别,在自建的数据集中得到了75%的识别准确率;王柯力等[9]提出一种水产动物识别方法,先使用数据增强对水产动物图像进行预处理,最终得到97.4%的准确率;Willi等[10]采用人工分类与深度学习相结合,制作了4种红外相机图像数据集,基于不同的数据集训练分类模型,识别准确率为88.7%~92.7%;李安琪等[11]提出一种基于SE注意力机制改进的ResNeXt网络模型,对塞伦盖蒂公开数据集的26个物种进行识别,SE-ResNeXt101的识别准确率最优,达到 93.5%。基于分类的图像识别方法,在同一图像中存在多种或者多只动物时,无法充分获取野生动物信息。目标检测的方法可以实现图像中所有动物的定位,同时输出动物类别,更适合于野生动物的识别。程浙安[12]提出一种注意力机制改进的Faster R-CNN架构用于野生动物的自动检测,平均准确率达到92.2%;陈建促[13]利用YOLOv3模型对野生动物检测,融合视频前后帧特征图提升检测的准确率,平均准确率达到80.41%;房永峰[14]对层次特征自上而下的融合,以增强底层特征图的语义性,改进了SSD检测算法,提高了小尺度羊的检测效果。上述文献表明,合理的目标检测网络可以实现野生动物的准确检测,而且不受图中野生动物数量的影响,比较适合实际场景下野生动物的识别。

雪豹主要生活在2 000~3 000 m的高海拔地区,银灰色的皮毛有利于隐蔽,导致监测图像中雪豹与背景的相似度高。此外,雪豹被抓拍时距相机的距离远近不一,从监测图像中学习雪豹的特征较为困难。利用两阶段目标检测模型检测野生动物时,通过候选区域网络提取可能存在动物的候选框,再用分类器与检测器进行分类预测与回归预测,最终实现动物的定位。但由于雪豹监测图像数量少,采用单检测器的网络结构,在选择较高IoU(Intersection over Union)阈值下,正样本可能被判定为负样本,导致训练容易发生过拟合现象,模型泛化能力低。Cascade R-CNN[15]通过级联多个R-CNN检测模型,每经过一个检测器,候选区的IoU都更高。当下一个检测器阈值设置得比较高时,也不会出现过多的样本被判为负样本,从而避免过拟合问题。本研究改进Cascade R-CNN模型构建雪豹的检测方法,通过级联过程中不断提高的IoU阈值,分阶段界定雪豹正负样本,能在样本数量少的情况下训练出高精度的雪豹目标检测器,提高雪豹图像筛选的效果。

1 研究方法

1.1 数据集建立

本项目组在祁连山国家公园雪豹经常出没的区域布设了多台红外相机,采集的监测图像均为24位RGB真彩色图像,分辨率包含4 000×3 000和4 608×2 592两种。对2016—2019年采集的监测图像经过初步筛选,剔除大量重复的误触发图像,最终获得1 434张雪豹图像,作为训练目标检测模型的数据集。利用目标检测实现雪豹的自动定位,需要对数据集标注:将监测图像中的雪豹进行矩形框标注,并使用VOC格式保存标注信息。

典型的雪豹图像及其标注框如图1所示。监测图像中,图1A所示的理想状况较少,受雪豹行为以及拍摄环境的影响,经常存在图1B的遮挡、图1C的曝光过度以及图1D的光照过暗等复杂情况。这些情况使得监测图像中雪豹的关键特征不明显甚至缺失,给雪豹自动检测带来困难。

图1 雪豹监测图像的常见情形Fig.1 Snow leopard monitoring images under common situations 注:A.理想情况;B.雪豹被遮挡;C.曝光过度;D.雪豹颜色与背景难区分 Note:A,Ideal condition.B,The snow leopard is shaded.C,The image is overexposed.D,The snow leopard’s color is indistinguishable from the background

1.2 基于改进Cascade R-CNN的雪豹检测方法

R-CNN是两阶段目标检测模型[16],通过3个步骤实现目标检测:(1)利用区域生成网络(Region Proposal Network,RPN),基于滑窗法产生类别独立的候选区域;(2)对每个候选区域提取特征向量;(3)使用分类器分类预测,并基于回归器进行位置预测。IoU为预测框和真实标记框的交集与它们并集的比值,用于描述2个区域的交叠率,越接近于1说明检测定位越准确。训练模型时,计算候选区域和真实标记框之间的IoU,大于设定的IoU阈值,则认为是正样本,反之则认为是负样本。应用于雪豹的检测时,IoU大于阈值才会被认为是雪豹,当阈值设置偏低时,容易将非雪豹识别成雪豹;当设置偏高时,使得筛选出来的正样本数量急剧减少,容易导致训练过拟合,降低检测的效果。阈值的选择非常重要,Cascade R-CNN是在R-CNN基础上改进形成,由一系列的检测器级联组成,每个检测器都根据不同IoU阈值训练得到。前一个检测器的输出作为后一个检测器的输入,级联的方式能够让每个检测器都专注于检测IoU在某一范围内的候选区域。由于输出IoU普遍大于输入IoU,因此通过级联的方式可以使检测效果越来越好。

检测器级联的数量越大,其他物体被误识别为雪豹的可能性就越低。但是检测器级联的数量过多会使模型复杂度过高,增加训练成本,容易导致过拟合。考虑到雪豹监测图像的数量有限,本研究选择3个检测器级联,提出改进Cascade R-CNN的具体结构(图2)。该模型以监测图像为输入(Input)。原始监测图像像素点数较多,将输入图像的尺寸变换成1 000×600,以减小计算量。特征提取部分采用ResneXt101作为骨干网络,引入特征金字塔网络(Feature Pyramid Network,FPN)提升不同尺寸特征的提取能力。第1级基于RPN网络B0生成初始候选区域,对候选框采用池化层(Pooling)进行下采样,输入到头网络H(Network Head),用于生成分类概率和不同尺度的目标框,最后经过分类C1和框回归B1(Bounding Box Regression)分别输出检测的类别和位置。不同级之间的串联主要发生在框回归部分,将上一级的回归结果输入到下一级的池化层,最终在C3和B3得到模型的输出。

图2 改进的Cascade R-CNN结构Fig.2 Improved structure of Cascade R-CNN

经过多次试验,将3个检测器的IoU阈值设定为递进的0.5、0.6和0.7,每经过一个检测器,候选区的IoU都更高,候选区域更准确,不易出现雪豹样本被误判为非雪豹样本的情况,从而避免过拟合问题。

1.3 试验设置

硬件平台为Intel XeonE5-2620 CPU,2块GTX 2080Ti的工作站,软件为Windows 10操作系统、Python 3.7编程环境和PyTorch 1.5.1的深度学习框架。

数据集按照4∶2∶2划分为训练集、验证集和测试集。训练时,优化器选用SGD,学习率为0.02,momentum为0.9,权值衰减为0.000 1。测试时,IoU阈值为0.5,类别置信度阈值为0.5。

1.4 评价指标

利用精确率(precision,P)、召回率(recall,R)、平均准确率(average precision,AP)和F1分数对模型的测试结果进行评价。模型分类器C3会输出雪豹目标的类别置信度,置信度越高表示该目标为雪豹的概率越大。在类别置信度大于类别置信度阈值(0.5)的目标框中,实际计算的IoU大于IoU阈值则认为该目标框中的物体为雪豹。依据判断的结果,计算得到精确率(P)与召回率(R):

(1)

(2)

式中:PT是测试集里将雪豹正确识别为雪豹的数量,PF是将非雪豹识别为雪豹的数量,NF是将雪豹识别为非雪豹的数量。

通常精确率与召回率无法同时最优,往往精确率高,召回率低,反之,召回率高,精确率就低。平均准确率和F1分数是评级模型综合性能的2个常用指标。在计算平均准确率时,需要在测试阶段分别取[0,0.1,0.2,…,1]作为预设置信度阈值得到不同的P、R值,进而绘制出PR曲线,PR曲线下的面积即为平均准确率。F1分数的计算式为:

(3)

2 结果

为了验证本研究提出的雪豹目标检测方法的优越性,选择同为两阶段的目标检测模型Faster R-CNN与一阶段的目标检测模型SSD-300,进行雪豹检测的对比实验,结果见表1。

从表1可以看出,改进的Cascade R-CNN在雪豹数据集上的精确率、召回率、平均准确率和F1分数均最高,更高的F1分数说明改进模型减少了雪豹的误检与漏检的发生。SSD-300本质上属于密集采样的检测方法,相对于Faster R-CNN得到的检测效果更好。同时改进的Cascade R-CNN模型训练得到最优参数时需要的迭代次数最少,说明该模型在雪豹样本数量有限的情况下,能更快、更好地学习到雪豹特征。

表1 3种不同模型在雪豹数据集上训练的检测结果

表1列出了在测试集上雪豹检测的每秒帧率,Cascade R-CNN相较于Faster R-CNN检测速度略有下降,这是因为Cascade R-CNN方法在R-CNN的基础上进行了检测器的级联,需要耗费更多时间。而一阶段的SSD省去了R-CNN的选择性搜索阶段,并且舍弃了全连接层,因此检测速度最快。但是三者之间检测速度相差较小,Cascade R-CNN通过牺牲少量的检测速度,获得了最高的检测效果,平均准确率、F1分数均最高。在野外监测图像中雪豹尺寸变化较大的情况下,具有一定的优势,可以提高检测的准确率,减少人工复审的工作量。

3 讨论

本研究提出了改进Cascade R-CNN的雪豹自动检测方法,在测试集上得到的平均准确率为93.0%,达到了较好的检测效果。模型的输出结果中,红色框为输出雪豹位置,框的左上角为类别信息和类别置信度,类别为1表示框中的动物是雪豹。图3所示为雪豹靠近红外相机时的监测图像,此时雪豹在图像中所占的比例较大,雪豹的特征比较明显,提出的模型可以很好地定位雪豹所在的位置,并且类别置信度普遍较高,接近100%。

图3 大尺寸雪豹的检测效果Fig.3 Detection results of snow leopard occupying large area of images

图4为黑夜中雪豹的检测效果,在夜色下雪豹的花纹并不明显,提出的模型还是能准确地给出雪豹的位置,检测结果的类别置信度均达到98%以上,稍低于大尺寸情况下的类别置信度。黑夜时,监测图像中雪豹花纹的颜色信息基本丢失,说明模型在对雪豹检测时,并不只是关注花纹的颜色信息,而是融合了多种特征信息综合分析得到最终的检测结果。

图4 黑夜中雪豹图像的检测效果Fig.4 Detection results of snow leopard at night

图5所示为雪豹在较远时红外相机拍摄的图像,其中雪豹的尺寸相对较小。人眼确定图中雪豹的位置都具有一定的困难,但提出的模型仍能较好地定位雪豹的位置,只是输出的类别置信度相对前两种情况有所降低,都能正确地检测出雪豹。主要原因在于Cascade R-CNN采用3个检测器的级联,小IoU阈值提升小尺寸目标的检测能力。

图5 小尺寸雪豹图像的检测效果Fig.5 Detection results of snow leopard occupying small area of images

图6所示为红外相机中存在3只雪豹的检测结果,无论是靠近的1只雪豹,还是远离的2只雪豹,提出模型均能实现正确地识别和定位。提出的模型中3个检测器的IoU阈值设定为递进的0.5、0.6和0.7,有利于生成不同尺寸的候选检测框,同时加入的特征金字塔网络结构可以提升不同大小目标的特征提取能力,综合提升了在不同尺寸下雪豹的检测效果。

图6 多只雪豹的检测效果Fig.6 Detection result of numerous snow leopards

4 结论

本研究基于改进Cascade R-CNN的目标检测方法实现了雪豹监测图像的自动检测,该方法通过3个检测器级联方式并引入特征金字塔网络结构,提高不同尺度目标的检测效果,在测试集上平均准确率高达93.0%,对于多只不同尺寸的雪豹也能准确地检测,将该方法用于海量监测图像中雪豹图像的筛选,可以极大地改善人工筛选带来的工作量大、效率低等问题,提升雪豹监测的时效性。在后续的研究中,将进一步探索利用雪豹的关键特征实现雪豹个体识别的方法,自动评估栖息地中雪豹的数量,实现种群的调查。此外,本研究提出的方法通过检测器级联,有效提升样本有限时图像中不同尺度关键特征的提取能力,同样可以推广到其他物种的自动检测,提升监测图像数量少、动物尺度大小不一时的检测性能。

猜你喜欢

级联置信度检测器
基于数据置信度衰减的多传感器区间估计融合方法
一种中间电容谐振型级联双向DC-DC变换器
铀浓缩厂级联系统核安全分析
实现级联形状回归方法对视线追踪
一种基于定位置信度预测的二阶段目标检测方法
基于高速公路事故黑点的检测器优化布设
用于录井专用气相色谱仪的FID检测器
校核、验证与确认在红外辐射特性测量中的应用
一种新型的级联型多电平逆变器研究