基于目标检测的东北虎个体自动识别

2021-08-02 10:35史春妹谢佳君顾佳音姜广顺
生态学报 2021年12期
关键词:东北虎池化脸部

史春妹,谢佳君,顾佳音,刘 丹,姜广顺,*

1 东北林业大学 理学院, 哈尔滨 150040 2 国家林业和草原局猫科动物研究中心;东北林业大学 野生动物与自然保护地学院, 哈尔滨 150040 3 东北虎林园, 哈尔滨 150028

东北虎(Pantheratigrisaltaica)种群数量的有效评估和监测已成为保护生物学以及相关领域研究人员关注的重要课题[1-3]。由于虎种群密度低,具有领域性,夜行性及隐蔽性等行为特点,在监测过程中很难发现其实体,红外触发相机陷阱技术[2-3]作为一种无损伤性方法在国内外野生动物调查中应用越来用广泛,技术较为成熟,操作方便,可以获得大批量(百万张图片)的野生动物影像资料。但是,这些影像图片或视频需要专业人员进行人工分类和个体识别,耗费大量的时间和人力。因此,对虎的图像进行自动、准确、批量的个体识别研究非常有意义。

东北虎个体识别是指通过个体之间的特征差异来进行区分,现在常用的个体识别方法有足迹识别、DNA识别、气味识别以及条纹识别[1]。Riordan等[4]利用自组织映射和贝叶斯方法对虎和雪豹(Pantherauncia)采集的脚印进行个体辨别和评估,获得了较高的准确率。DNA识别方法主要从虎的粪便、毛发、唾液等提取DNA进行识别[5]。Mills等[6]通过非损伤性取样分析DNA样本,对东北虎的个体数量、性别以及亲缘关系进行鉴别。气味识别[7]主要依靠经过特殊训练的狗辨认老虎粪便气味来识别老虎个体。条纹识别是通过相机拍摄的条纹特征来识别, Hiby等[8]通过计算图像样本之间的相似性得分,对虎的三维表面模型图像进行搜索匹配实现个体识别。虎的条纹和人类指纹一样具有唯一性特点,且不随生长而变化,所以通过其身体不同区域(躯干、前腿、后腿、尾部等)条纹的对比进行个体识别,是目前区分东北虎个体的主要方法。但是,此方法以经验丰富的专业人士人工识别为主,需要耗费大量人力与时间,并且人工识别依赖操作者的经验,主观性大。个体数目较多的话,人工进行条纹个体识别可行性较低。

红外照相技术在物种监测中被广泛应用,通过红外触发相机可以获得大量的动物形体特征图像[9]。在小种群或种群高度分化的地方,人工对新旧照片的比较可以确定个体,但是如果图像样本数目较多或者种群数量较大,人工比较的方法可行性较低[10]。以往的研究中,无论是采用神经网络识别东北虎[11],还是基于Cifar10识别金钱豹(Pantherapardus)[12],都是人工截取条纹,难以应用于图像数目较多的大数据场景当中。

近年来,深度卷积神经网络(Convolutional Neural Network,CNN)[13-18]在计算机视觉以及目标检测领域[19-25]表现较为出色,在大数据场景[26-31]中的动物物种分类方面也得到广泛应用,具有代表性的网络模型有ZFNet[14]、VGG[15]、GoogLeNet[16]、ResNet[17]、DenseNet[18]等。2012 年,AlexNet对ImageNet数据集进行分类识别,准确率为84%[13],远超过非深度学习方法的75%。2017 年,Thom等[26]创建了一个物种检测数据集,其中包含8000 个图像,涵盖9 种不同物种,并运用SSD以每秒21 帧的速度自动检测北极苔原地区动物,准确率为94.1%。2017 年,Cheema 等[27]使用Faster-RCNN可以自动从图片中提取出虎、斑马(Equusburchelli),并且用AlexNet结合逻辑回归能够较好地实现物种分类。2019 年,Willi 等[20]采用深度学习对四种不同的相机陷阱数据集进行分类识别,得到识别准确率介于88.7%和92.7%之间。Norouzzadeh等[30]基于非洲塞伦盖蒂野生动物数据库应用深度卷积神经网络实现了物种的自动分类、数目检测、行为描述等,并且分类精确度较高,达到92%。

到目前为止,深度学习方法大多用在物种分类研究当中,对物种的个体识别较少,特别是东北虎的个体识别。非深度学习的方法在识别阶段工作量都较大,数据的预处理阶段依赖人工截图,所以本文采用SSD目标自动检测方法来替换人工截图,节省更多时间。由于卷积神经网络对图片的尺度、光照、视角、形变等因素变化都有较好的处理能力,拥有自动适应虎形态变化的特征表达能力,所以本文采用多种深度卷积神经网路模型对不同姿态的个体实现自动识别。由于虎的身体两侧条纹信息无对称性,本文提出依据不同的体侧部位如左侧躯干条纹区域,右侧躯干条纹区域以及脸部的自动检测分割方法,然后对不同部位的图片信息分别运用LeNet、AlexNet、ZFNet、VGG16、ResNet34卷积神经网络模型进行个体自动识别,从而提高识别准确率,以实现东北虎个体的自动识别。

1 材料与方法

实验数据来自2019 年东北虎林园以及怪坡虎园的影像图片,其中东北虎林园(东经126°36′,北纬45°49′)位于黑龙江省哈尔滨市松北区,面积约为144 万m2,有700 多只人工饲养繁育的纯种东北虎,怪坡虎园(东经123°37′,北纬42°4′)位于辽宁省沈阳市沈北新区,面积约为17 万m2,大约100 余只纯种东北虎。实验影像图片由相机对38 只虎在不同角度、不同环境下拍摄取样,共得到13579 张图像样本,其中4/5作为训练集,1/5作为测试集。不同虎个体之间的图片数量有所差异,姿态丰富,如果采用人工识别,费时费力,且准确度较低。主要方法分为两大部分:第一部分目标检测,主要通过SSD目标检测方法自动截取分割获得东北虎左右侧躯干条纹以及脸部图像;第二部分个体识别,在目标部位检测分割图片的基础之上,采用多种深度卷积神经网络模型实现虎个体的自动识别。

主要技术路线(图1)为:首先在目标检测部分,本文采用SSD目标检测方法对每张图片中的东北虎个体检测其左侧、右侧或者头部在图像中的具体位置,用参考框分割裁剪得到左侧、右侧或者头部对应区域图片,并去掉背景等无关图像信息。对于卷积神经网络来说,虎的样本数目较少,小样本可能出现过拟合现象,所以在图片预处理部分通过适当平移变换增加样本数目,以实现数据增强。具体的平移方式是将每张图片沿上、下、左、右四个方向进行平移变换(图1),使样本图片数目扩大为原来的5倍。在目标部位检测分割的基础之上,针对不同部位图像分别使用LeNet、AlexNet、ZFNet、VGG以及ResNet34卷积神经网络模型进行个体自动识别,并计算个体识别准确率。在准确率较高的网络基础之上考虑平均值池化和最大值池化等组合方案,并在全连接层引入不同概率的丢弃操作来防止过拟合,进一步提高识别准确率。

图1 东北虎不同部位检测分割技术路线图(以脸部为例)Fig.1 Illustration of detection and segmentation process for different parts of amur tiger (face)

1.1 防止过拟合的方法

神经网络在实际训练时,可能会在训练集上损失率较低,但却在测试集上存着着较高损失,这是神经网络过拟合于训练集的表现,本文采用数据增强和引入不同丢弃概率来防止过拟合。数据增强的方式有平移变换、旋转变换、尺度变换和反射变换等。合适的平移变换能够在一定程度上模拟拍摄东北虎的位置角度变化,增强有限的数据集。

引入适当的丢弃概率也能有效防止过拟合,其输出为:y=r×a(WTx),其中x=[x1,x2,...,xn]T是全连接层的输入,W∈Rd×n是权重矩阵,r服从参数为P的伯努利分布。本文将参数P设置不同的值分别为0.1、0.2、0.3、0.4,有效防止过拟合现象。

1.2 单次多盒检测 (Single Shot MultiBox Detector,SSD)方法

1.2.1确定参考框

SSD目标检测方法与Fast-RCNN[24]的候选区域网络技术类似,由大小不同的参考框(滑动窗口)来检测定位图片中的目标位置以及大小。SSD主要在特征图的像素点生成多种不同长宽比的参考框来检测不同尺度大小的目标。初始参考框包含三种面积(128×128, 256×256, 512×512),每种面积又包含三种长宽比(1∶1, 1∶2, 2∶1)。 其次计算每个参考框和真实目标框中重叠的面积与总面积的比值(并交比)。最后参考框匹配,如果参考框的并交比大于设置的阈值(如0.5),那么参考框会被标记为正例,否则会被标记为负例。

1.2.2计算损失函数

目标损失函数为定位损失与置信损失的加权和:

L(x,c,l,g)=h(x,c)+αg(x,l,g)

通过交叉验证,权重项α设置为0.06,其中定位损失为预测框与真实目标框之间的损失:

置信损失可以是逻辑损失函数:

1.2.3预测

先根据置信度大小淘汰一部分置信度较低的预测框,再通过非极大值抑制算法,淘汰掉重叠度较大的预测框,最终留下的预测框就是虎的两侧或者头部在原始图像中的具体位置和大小的检测结果。

2 结果与分析

2.1 目标检测

本文采取基于SSD目标检测方法,对不同部位的图像信息进行检测和分割。首先挑选120 张包含完整脸部、左侧条纹以及右侧条纹的图像(每种40 张),利用labelImg标记程序从图片中标出脸部、左侧条纹以及右侧条纹部位。然后按1∶1∶1将其分为训练集、验证集、测试集。最后用SSD和VGG16做迁移学习,从而得到专门提取老虎脸部、左右侧条纹的目标检测模型。实验结果发现,目标检测模型在测试集上准确率达到97.4%,能较好地检测并分割出脸部、左右侧条纹等不同部位的图像(图2,其中彩色框部分是左侧和头部检测结果)。

图2 东北虎不同部位检测结果图 Fig.2 Detection results of different parts of the amur tiger

最后将训练好的目标检测模型应用于全部图像样本中,进行左右侧躯干条纹以及脸部的检测,每张图片只保留概率最大的老虎部位检测结果,并自动进行分割裁剪,部分结果如图3所示,由于虎的姿态多变以及拍摄角度不同,所以自动裁剪之后的图片大小并不相同。从图2和图3可以发现,不同姿态下的目标部位都能正确识别并分割,说明SSD目标检测算法对图片的尺度、光照、视角、形变等因素变化都有较好的处理能力。

图3 虎左侧躯干、右侧躯干以及脸部部位自动分割裁剪结果图 Fig.3 Segmentation results of the left and right body and the face of amur tiger

2.2 个体识别

2.2.1数据预处理

在自动检测算法截取分割得到的不同部位图片基础之上,通过平移变换来进行数据增强。这样可以模拟拍摄位置的平移变化,增强模型的泛化能力,从而达到数据增强的目的。对数据增强后不同部位如左侧、右侧以及头部图像,分别应用LeNet、AlexNet、ZFNet、VGG、ResNet34深度卷积神经网络模型在Keras上进行个体识别实验。通过Reshape操作将所有输入图像调整为224×224 像素,激活函数修改为ReLU函数;使用Keras生成器进行加载,采用随机梯度下降算法,类别数量为38(38 只虎个体)。最后获得不同网络模型的识别准确率(图4)。从图4可以看出无论左侧、右侧,还是脸部,ResNet34模型表现最佳,其他网络模型的准确率低于ResNet34。

图4 东北虎不同网络模型的左侧、右侧以及脸部图像个体识别准确率变化图Fig.4 Individual identification accuracy results of different networks for left, right and face images of amur tiger

2.2.2不同池化方式的实验

本文将最大值池化和平均值池化进行多种组合,评估比较各个组合方案的性能,以获得最佳的池化组合方式。通过上一步实验可以分析出ResNet34性能最佳,利用最大值和平均值不同池化操作算子,对ResNet34进行如下修改,将第一个池化层和最后一个池化层分别修改为:最大值平均值池化(Maximum Average,MA)、平均值平均值池化(Average Average,AA)、平均值最大值池化(Average Maximum,AM)、最大值最大值池化(Maximum Maximum,MM)组合方式,得到四个实验组分别为MA、AA、AM和MM,不同池化方案的准确率变化如下图(图5)所示:

图5 东北虎左侧、右侧以及头部图像在ResNet34网络框架下不同池化方案的准确率结果Fig.5 Accuracy results of different pooling schemes under the ResNet34 network for left, right and face images of amur tiger

从图5可以发现,对于脸部图像,AA的准确率明显优于其他模型。而左、右侧条纹,各个模型性能差异较小。最终,对于虎的左侧条纹和脸部样本,AA表现总体略优于其他网络模型,对于虎的右侧条纹样本,MA 的准确率略高于其他模型。对于左侧和脸部,我们选取AA网络,对于右侧选取MA网络,进行不同丢弃概率的实验。

2.2.3不同丢弃概率实验

引入丢弃操作也是防止过拟合的方式之一,本实验考虑不同丢弃概率对准确率的影响,选出准确率较高的丢弃概率。基于表现较好的池化组合,在全连接层网络之前引入丢弃 操作,其概率分别为P=0.1、P=0.2、P=0.3、P=0.4。对于左侧和脸部,我们选取AA网络,对于右侧选取MA网络,在每个网络的全连接层网络之前引入丢弃操作,其概率分别为P=0.1、P=0.2、P=0.3、P=0.4,最终的准确率如表1所示:

表1 不同丢弃概率下的准确率结果

从表1能够发现,无论左侧、右侧还是脸部,不同丢弃概率的神经网络都能达到较高的准确度,并且引入不同概率丢弃操作能够进一步提升识别准确率。对于左侧样本,P=0.1的网络准确率都优于其他概率下的网络,对于右侧和脸部样本,P=0.2的网络准确率都优于其他概率下的网络。最终,在最佳丢弃概率下,左侧躯干条纹识别准确率为93.75%,右侧躯干条纹识别准确率为97.01%,脸部识别准确率为86.28%。

3 讨论

本论文以东北虎林园 以及怪坡虎园38 只圈养东北虎影像数据作为研究对象,首先以SSD目标检测方法为基础,从虎的图片样本中检测出不同部位,分别为左侧躯干条纹、右侧躯干条纹以及脸部部位,并提取分割出不同部位图片。在分割出的老虎不同部位图片基础上,运用上、下、左、右四个方向的平移变换进行数据增强,使得图片样本数目扩大为原来的5倍。其次,对于不同的深度卷积神经网络算法如LeNet、AlexNet、ZFNet、VGG、ResNet34,利用网络模型自动地学习从输入到输出的复杂映射方程以及特征的高层表达模式,进行东北虎的个体识别。并对网络中的平均值池化和最大值池化不同的组合方案进行优化,引入概率分别为0.1、0.2、0.3、0.4的丢弃操作来防止过拟合。最终实现对东北虎个体的自动识别,建立较为完整的东北虎个体信息数据库和个体自动识别框架。

目前利用卷积神经网络实现物种的自动分类研究较多,Yu等[28]使用了稀疏编码空间金字塔匹配来识别18 种动物,达到82%的准确率。Gomez等[29]采用深度CNN对非洲塞伦盖蒂野生动物数据库的26 个野生物种进行分类研究。准确度达到57%。Norouzzadeh等[30]基于同样的非洲塞伦盖蒂野生动物数据库应用深度学习实现了物种的自动分类、数目检测、行为描述等,并且分类精确度达到92%。但是应用卷积神经网络进行动物个体的自动识别研究相对较少,特别是东北虎的个体自动识别。

以往的基于条纹的个体识别算法,条纹截取常常是人工进行[11],耗费大量的时间,人工手动截取速度约为10 s/张。而本研究的目标检测模型耗时较少,截取分割老虎不同部位条纹能达到0.6 s/张,远快于人工截取速度,并且在测试集上准确率能达到97.4%。不同姿态下的目标部位都能正确识别并分割,说明SSD目标检测算法对图片的尺度、光照、视角、形变等因素变化都有较好的处理能力。

由于虎的条纹具有唯一性特点,且不随生长而变化,而虎的左右侧身体条纹不具有对称性[1,11],所以本文考虑了三个部位左侧躯干条纹、右侧躯干条纹以及脸部的识别,从不同部位的识别准确率来看,识别准确率为93.75%,右侧条纹识别准确率为97.01%,脸部识别准确率为86.28%,说明右侧条纹的识别准确率最高,其次是左侧条纹,最后是脸部。由于大多数虎的脸部正面拍摄图像较少,且距离较远有一定程度模糊,故脸部识别准确率较低。事实上,也可以通过虎的后背图像特征进行个体识别,但是由于背部图像拍摄难度较大,需要将照相机放置于虎舍顶部,而虎会对相机扑咬损坏,难以获得背部图像,没有对背部进行个体识别。

对于不同的池化方式,最大值与平均值池化计算量相差不大,但是它们选取的特征会有很大的不同,才会导致有的神经网络能收敛到较高的准确率而有的却不能。另一方面,引入不同的丢弃概率,在训练过程中动态调整权值的丢弃概率,使得特征提取能力高的神经元有更大的概率被激活,提高网络的特征提取能力,进一步提高了识别准确率。

本次研究缺点在于所选取的样本数量较少,如果对东北虎个体数目进行扩充,选取更多影像数据进行训练,可以使训练网络具有更强的适应性,从而实现更准确的个体识别。

由于SSD目标检测和卷积神经网络模型对图片的尺度、光照、视角、形变等因素变化都有较好的处理能力,拥有自动适应条纹或者斑点等形态变化的特征表达能力,因此,这一方法能够应用于身体有明显条纹或者斑点信息的物种个体识别,如虎、豹或者斑马等。

4 结论

本研究提出了基于目标检测的东北虎个体识别方法,应用单次多盒目标检测算法将虎按照左侧躯干条纹、右侧躯干条纹以及脸部进行分割提取,其次在不同部位上分别采用不同卷积神经网络来实现虎的个体识别。在未来的模型训练中, 将东北虎个体数目以及单个个体的图像数目进行扩充,通过扩大数据集以及图像数目防止过拟合,进一步提高模型的准确率和稳定性。另外,本研究在未来野生虎的红外相机影像的自动识别方面也具有一定的应用潜力,为野生动物个体自动识别研究提供新的技术手段和研究思路。

猜你喜欢
东北虎池化脸部
脸部美容须知
基于高斯函数的池化算法
保护野生东北虎,我们一直在行动
威风凛凛的东北虎
卷积神经网络中的自适应加权池化
东北虎,请你回家
基于卷积神经网络和池化算法的表情识别研究
用于手写汉字识别的文本分割方法
老虎
做脸部运动让你显得更年轻