基于改进慢快网络的猕猴多行为识别方法

  现代药物研发可分为临床前和临床试验两个阶段[]。药物安全性评估是临床前研究新药潜在风险和有效性的基础[]。猕猴与人同属灵长类动物,遗传关系接近。猕猴在药物的安全性评估中常被作为模式动物[],其行为在用药前后的变化往往会警示药物的相关副作用[]。因此,猕猴行为的准确识别对药物安全性评估至关重要。

  目前,行为识别方法大致可分为两类:基于手工特征提取的方法和基于深度学习的方法[]。手工特征提取方法中的方向梯度直方图(histogram of oriented gradients,HOG)、方向光流直方图(histogram of oriented optical flow,HOF)和运动边界直方图(motion boundary histogram,MBH)等能够对时空兴趣点的特征进行表示而识别不同行为[-]。另外,通过对特征点的轨迹追踪来对运动状态进行描述,也属于基于手工特征提取方法,例如Messing等[]提出了密集轨迹法(dense trajectories,DT),Wang等[]提出了改进的密集轨迹法(improved dense trajectories,IDT)。然而,基于手工特征提取的方法局限性较大,难以全面地提取视频的特征信息,近年来深度学习的兴起,为行为识别提供了新的思路[]。深度学习中行为识别网络大致可分为三类:双流卷积神经网络(two-stream convolution neural networks,Two-Stream CNN)、三维卷积神经网络(three dimensional convolution neural networks,3D-CNN)和长短时记忆(long short-term memory,LSTM)网络。Simonyan等[]提出的双流卷积神经网络中空间流输入的是红绿蓝(red,green,blue,RGB)色彩模式的视频帧,时间流中的输入的是光流图像,随后两条支路的信息融合而获得视频的时空信息特征[]。相较于双流卷积神经网络中用两条支路分别获得视频的时空信息,三维卷积神经结构能够同时提取时空特征,使得网络结构更加直观和高效。Tran等[]提出了一种卷积三维(convolutional three dimensional,C3D)网络,其输入是连续的视频帧,可以同时提取空间和时间维度的信息。Christoph等[]把残差网络(residual networks, Resnet)用到视频领域,当与三维卷积结合后,提出了三维Resnet(three dimensional Resnet,R3D)[]。此外,在LSTM的发展中,Donahue等[]把卷积神经网络和LSTM结合起来提出了长时循环神经网络(long-term recurrent convolutional networks,LRCN)。LRCN将从卷积神经网络中得到的特征输入到LSTM网络中,利用卷积神经网络和LSTM网络两种结构全面地对视频特征进行提取。

  受到时间分辨率与时空信息关系的启发,Feichtenhofer等[]提出了慢快网络(slowfast networks,SlowFast)。它是一种类双流卷积神经网络,分为慢支路和快支路。慢支路中时间采样率低,卷积核通道数多,主要获取视频中的语义信息。快支路中时间采样率高,卷积核通道数少,主要获取视频中的行为信息。在两条支路相对应的残差块(residual block)之后进行侧向连接将信息融合[, ]。SlowFast的上述特征,使得该网络是目前行为识别效果最好的网络之一[-]。为了获得视频中的帧与帧之间的关系,近几年已将变换器(Transformer)应用于行为识别中[-]。Transformer采用的是自注意力机制,可以有效地对时序关系进行建模[]。除了网络结构的变化外,Tao等[]提出将残差帧(residual frames)作为网络中时间流的输入,用于更有效地获得运动信息。残差帧只保留了相邻帧之间的变化信息,使得时间流网络避免了背景等信息的干扰。

  上述行为识别方法在区分人类行为时得到了广泛应用,然而面向猕猴行为的识别方法却少之又少。现有的猕猴行为识别方法是在姿态估计的基础上将关节点坐标化并进行聚类[]。此方法的中间步骤较多,不属于端到端的识别方法。由于猕猴的体型小和行为特征复杂,其行为识别面临以下三个难点:① 猕猴姿态丰富,毛发较多,拍摄难度大;② 猕猴的关节灵活,且某些行为类型差异较小;③ 不同行为完成时间差异较大,如:猕猴的跳跃行为起止时间可能短至1~2 s,而蹲坐可长达几十分钟。针对难点 ① 和 ②,本文采用三视角的拍摄方法,从正视、侧视和俯视三个角度来拍摄猕猴,在数据采集阶段保证行为片段的准确性和完整性。针对难点 ③,在视频帧输入到网络之前根据视频的时间长短进行不同帧间隔地均匀采样,使输入数据尽可能包含长时间的信息。鉴于SlowFast的有效性和Transformer捕获长时间内帧与帧之间关系的能力,本文提出一种将SlowFast和Transformer结合的网络结构,用以识别猕猴在视频中的行为。该网络命名为Transformer增强的用于猕猴行为识别的SlowFast(Transformer augmented SlowFast for macaque behavior recognition,TAS-MBR)网络。

  本文创建了一个包含九类猕猴行为的视频数据集(a nine kinds of macaque behaviors video dataset,MBVD-9),并提出了TAS-MBR网络来进行猕猴行为自动识别。TAS-MBR网络为猕猴行为的自动识别提供了新方法,是人工智能和猕猴行为监测的有效结合。最终,期望本文方法能够实现猕猴行为的远程监测和识别,为药物安全性评估智能化助力。

  卷积神经网络的训练需要大量的数据,因此本研究首先需要得到一个可供药物安全性评估的猕猴行为数据集。数据集的生成可分为六个步骤:拍摄环境的选择、摄像机的选择及其固定装置设计、双视角或三视角拍摄、实验动物挑选、视频数据清洗和行为片段裁剪。

  本文中猕猴视频数据采集地点是位于北京市的北京协尔鑫生物资源研究所有限责任公司和昭衍新药研究中心股份有限公司。实验动物来源于北京协尔鑫生物资源研究所有限责任公司和昭衍新药研究中心股份有限公司培育和饲养的猕猴。本文研究通过了中国科学院自动化研究所的动物伦理委员会审核(实验动物许可证号IA-202042)。拍摄场景是在长 × 宽 × 高分别为74 cm × 69 cm × 89 cm和110 cm × 140 cm × 220 cm的铁制猴笼中进行拍摄。这两种规格的猴笼分别是单只猕猴和群体猕猴(5只)的成长和实验环境。单只猕猴数据采集时间是从2020年8月13日—2020年11月23日,历时92 d。群体猕猴数据采集时间是2021年6月21日—2021年6月24日,历时4 d。

  拍摄猕猴视频选择的是霸天安摄像头(旗舰版,深圳市霸天安科技有限公司,中国),形状是正方体,长、宽、高均为3.8 cm。摄像头的分辨率为960 × 1 280,帧率设置为15 帧/s或60 帧/s,镜头视角为155°。

  数据采集过程中,由于猕猴生性好动,若将摄像头暴露于猴笼表面进行拍摄,将出现啃咬摄像头和抓挠充电线的情况。因此,本课题组专门制作了摄像头固定装置来安放摄像头,以利于数据采集。

  单只猕猴由于饲养场地限制,只能进行双视角拍摄。群体猕猴是从正视、侧视和俯视三个角度同时拍摄。摄像头视角为155°,若是只取特定视角对猕猴进行拍摄,会出现视野盲区,可能丢失某类行为。相较于文献[]中实验所需的62台摄像机,本研究仅需两台或三台摄像机便可全面、有效地记录猕猴的行为,因此本研究从设备层面上更加经济、实用。视频采集的装置可分为三部分:猴笼、摄像机和固定装置。整体结构及效果如所示。固定装置位于各表面中间位置,其高度为50 cm,以防止猕猴将手臂伸出猴笼后抓挠到摄像头电线。

  本研究的实验对象是恒河猴和食蟹猴。恒河猴和食蟹猴均是实验用猕猴,是药物安全性评估中的代表动物[]。为了尽可能涵盖药物安全性评估中实验对象的生长时期和性别,本研究分别拍摄了幼年、成年和老年时期不同性别的恒河猴和食蟹猴。本研究拍摄时的状态环境划分为单只猴场景和群体猴场景,共设置9只猴笼,依序编号。实验动物信息如所示,其中群体猴视频场景中猕猴均处于幼年期且性别不统一。

  在拍摄视频时,不可避免地出现了“脏数据”,指难以被人眼识别猕猴行为的视频数据。因此拍摄完成后需要进行数据清洗,剔除掉质量不佳的视频。猕猴行为类别确定的标准是行为完整可见且明确定义的。本研究中将猕猴的行为分成九类,分别是卧倒、蹲坐、行走、向上移动、向下移动、悬挂、直立、攀附和进食。本文采用的是视频播放软件PotPlayer(1.7.21564,Daum Inc.,韩国),播放时在文本文档中记录视频名称、行为开始时间、行为结束时间和行为类别。若是群体猕猴的视频还需要利用标注软件VoTT(v2.2,Microsoft Inc.,美国)标注行为时间段内活动区域的范围,以区分同一时间段内其它猕猴。然后编写脚本批量裁剪猕猴行为片段。如所示,为单只猴和群体猴中随机提取具有代表性的各行为关键帧的展示,其中单只猴视频共808条,包括卧倒(47条)、蹲坐(250条)、行走(66条)、向上移动(101条)、向下移动(99条)、悬挂(100条)、直立(111条)、攀附(34条);群体猴视频共3 041条,卧倒(107条)、蹲坐(17条)、行走(995条)、向上移动(445条)、向下移动(484条)、进食(497条)、直立(84条)、攀附(412条)。行为段的视频格式为.mp4,帧率为15 帧/s或60 帧/s。卧倒、蹲坐、行走、向上移动、向下移动、悬挂、直立、攀附和进食九类行为段的数目分别为154、267、1 061、546、583、100、195、446和497,共计3 849条行为段,总时长为7.03 h,平均视频时长为6.58 s。这九类猕猴行为片段构成了猕猴行为数据集MBVD-9。

  TAS-MBR网络的基础架构是SlowFast。SlowFast分为慢支路、快支路及侧向连接三部分。其中,慢支路是为了获取视频中的语义信息,采样间隔较大,输入的视频帧个数少。快支路为了获取视频中的行为信息,采样间隔较小,输入的视频帧个数多。侧向连接是将快支路中得到的信息融合到慢支路中,以得到视频的完整信息。TAS-MBR网络的思想是通过引入残差帧和Transformer编码的操作让快支路更准确地提取视频中的行为信息,进而提升整个网络的效果。

  TAS-MBR网络结构如所示。从整体上看,TAS-MBR网络属于双支路结构,与原始的SlowFast相比骨干网络由三层残差结构卷积块改成两层的,类似于34层的R3D。不同之处在于,所有残差块的第二层为1 × 3 × 3卷积,并且慢支路的残差块2和残差块3的第一层也为1 × 3 × 3卷积。

  在开始的数据层,慢支路和快支路分别采用不同的帧采样间隔来对输入的视频进行采样。其采样间隔大小比例为4。慢支路为了提取视频帧的表征信息,对应层数的卷积核较多,比例为8。在快支路中对于视频帧额外进行了帧间差和Transformer编码操作。在两条支路获得各自的信息之后通过侧向连接进行信息的融合。侧向连接是一种卷积操作,将快支路在残差块2~残差块5得到的信息融合到慢支路中对应的残差块2~残差块5中,以此获取视频的时空信息。最后,时空信息是经过池化层和全连接层,使用归一化指数函数(Softmax)对特征信息进行分类。

  慢支路中对原始视频的采样间隔大,输入视频帧较少。在TAS-MBR网络中,初始视频帧个数为32,慢支路的采样间隔为8,输入的视频帧个数为4,残差块2~残差块5卷积核个数依次为128、256、512、1 024。慢支路主要目的是为了获得视频的空间表征信息。

  快支路对原始视频的采样间隔小,输入视频帧个数为16,残差块2~残差块5卷积核个数依次为16、32、512和1 024。快支路主要目的是为了获得视频的时间信息。残差帧,通过前后两帧相减来获得帧之间的运动信息,去除了静止的物体和背景。这与快支路的目标一致,即尽可能多关注运动信息。残差帧(以符号ResFrame表示)的计算公式如式(1)所示:

  其中,Framei 指的是第i帧,ResFramei为第i + 1帧减去第i帧得到的第i个残差帧。在TAS-MBR网络中,初始视频帧个数为32,将输入帧转化为残差帧,快支路的采样间隔为2,输入的残差帧个数为16。在残差块5后面加入了Transformer编码结构,寻找帧之间的运动关系。

  为了能够将快支路得到的运动信息和慢支路得到的语义信息进行融合,提出了侧向连接的概念[]。侧向连接出现在残差块2~残差块5之后,将快支路得到的时间信息与慢支路对应残差块得到的语义信息融合之后,通过三维卷积操作来实现特征图尺寸的匹配和相加。整体上,本网络的主要结构是基于SlowFast的双支路结构。与文献[]提出的SlowFast不同之处在于:① 残差块2~残差块5从原网络的三层卷积变成了两层卷积,卷积的个数也不同,慢、快支路卷积核的比例为8:1;② 在快支路中输入帧之间进行相减处理,使之成为残差帧;③ 快支路在经过残差块5之后,使用Transformer编码结构对特征图进行处理,使其获得更多的时间信息。

  本文在MBVD-9上评估所提出的网络架构。MBVD-9数据集中是由不同性别、不同年龄段、不同视角的恒河猴和食蟹猴视频行为片段组成。该数据集共有9类猕猴行为,分别是卧倒、蹲坐、行走、向上移动、向下移动、悬挂、直立、攀附和进食。视频格式为.mp4,帧率为15 帧/s或60 帧/s,数量共计3 849条,总时长为7.03 h,平均视频时长为6.58 s,视频帧数不小于30帧。为保证数据分布大体一致,每类行为随机抽取1/4作为测试集数据,剩余数据作为训练集数据。其中训练集2 874条,验证集975条,划分比例为3:1。

  实验计算机显存大小为24 GB,硬盘大小为12 T。CPU核心个数为64,显卡个数为4。网络训练采用小批量随机梯度下降法,动量为0.9,初始学习率为0.001,随后动态更新学习率,当准确率不再上升,学习率就缩小为原来的1/10,批大小为16,训练轮数为100。

  在数据处理方面,将视频帧随机裁剪为112 × 112。依据视频长短采用不同的帧采样间隔(以符号frameinterval表示)进行采样,具体如式(2)所示:

  视频的总帧数与帧采样间隔之间的关系如式(2)所示,帧采样间隔的大小随着视频总帧数升高而递增,可以更加全面地获得视频信息。采样帧有50%的概率进行水平翻转,输入到网络中个数为32。网络的慢、快支路中输入帧个数分别为4和16。

  如所示,SlowFast的骨干结构对识别准确率影响较大。相对于骨干网络使用101层的Resnet和50层的Resnet,TAS-MBR网络较为轻量的骨干网络更适合处理MBVD-9数据集。以TAS-MBR-1、TAS-MBR-2、TAS-MBR-3分别代表:未使用残差帧和Transformer操作的TAS-MBR网络、未使用Transformer操作的TAS-MBR网络和未使用残差帧操作的TAS-MBR网络。如所示,残差帧和Transformer对分类准确率均有提升,证明了残差帧和Transformer对于本网络的有效性。TAS-MBR网络相较于使用50层Resnet为骨干网络的SlowFast,识别准确率有明显提升。

  为了验证TAS-MBR网络的性能,将TAS-MBR网络与其它行为识别网络在MBVD-9数据集上进行了实验。本次实验的网络有C3D、双流膨胀三维卷积网络(inflated three dimensional convnet,I3D)[]、时空分离的R3D(R(2+1)D)[]、时间分段网络(temporal segment networks,TSN)[]、双流卷积神经网络、时空Transformer(time-space transformer,Timesformer)网络[]和TAS-MBR网络。各网络的平均分类准确率如所示,其中C3D和Timesformer网络在采用了大数据集预训练的情况下与TAS-MBR网络不采用大数据集预训练效果接近。如所示,在其他网络均采用了大数据集预训练的情况下TAS-MBR网络仍达到了最优效果。

  在验证了TAS-MBR网络的有效性之后,本实验给出了TAS-MBR网络在MBVD-9数据集上对猕猴各类行为的分类准确率。卧倒、蹲坐、行走、向上移动、向下移动、悬挂、直立、攀附和进食的准确率分别为90.86%、91.37%、96.54%、93.87%、93.94%、99.46%、93.03%、94.35%和93.77%。TAS-MBR网络对于猕猴九类行为的分类准确率都在90%以上,分类效果良好。其中悬挂的准确率最高,达到了99.46%,可能是由于动作较为舒展,易于网络识别。卧倒的准确率最低,为90.86%,可能是由于动作较为隐蔽,较难识别。如所示,卧倒与蹲坐容易互相干扰,可能是动作姿势相近,导致这两类动作准确率较低。

  本文从实际场景出发拍摄、记录猕猴的行为,并提出TAS-MBR卷积神经网络,进而准确、快速地识别猕猴的行为。本文的主要贡献在于:① 提出了可供研究的猕猴行为数据集MBVD-9,包含三个视角共九类猕猴的行为视频;② 利用残差帧和Transformer模块改进了原有的SlowFast的快支路,提高了分类准确率;③ 提出了TAS-MBR网络,并在猕猴行为数据集上达到了最优效果。通过实验证明了残差帧和Transformer对于SlowFast快支路中时间信息获取的有效性和TAS-MBR网络对猕猴行为分类的准确性。

  重要声明

  利益冲突声明:本文全体作者均声明不存在利益冲突。

  作者贡献声明:仲伟峰主要负责提供数据分析指导以及论文审阅修订;徐哲主要负责论文撰写、数据处理、算法设计和实验设计与分析;朱翔昱主要负责提供实验指导和算法设计指导;马喜波主要负责项目主持、数据收集及整理、论文撰写指导。

  伦理声明:本研究通过了中国科学院自动化研究所的动物伦理委员会审核(批文编号:IA-202042)。