Revisiting Pixel-Wise Supervision for Face Anti-Spoofing

人脸像素级监控反欺骗的再探讨

作者:
Zitong Yu, Student Member, IEEE, Xiaobai Li, Member, IEEE, Jingang Shi, Zhaoqiang Xia, Member, IEEE and Guoying Zhao, Senior Member, IEEE

摘要

人脸反欺骗(FAS)技术在防止人脸识别系统遭受表示攻击(PAs)中起着至关重要的作用。随着越来越多具有新颖类型的真实PAs的出现,有必要开发健壮的算法来检测未知攻击,即使是在看不见的场景中。然而,传统的二进制丢失监控的深度模型(例如,对于真实的“0”和对于PAs的“1”)在描述内在的和有区别的欺骗模式方面很弱。最近,针对FAS任务提出了像素级的监控,旨在提供更细粒度的像素/补丁级线索。本文首先对现有的FAS像素级监控方法进行了全面的回顾和分析。在此基础上,提出了一种新的金字塔监督机制,指导深度模型从多尺度空间背景中学习局部细节和全局语义。在五个FAS基准数据集上进行了大量的实验,结果表明,在没有钟声和哨声的情况下,所提出的金字塔监督不仅可以提高现有像素级监督框架的性能,而且可以提高模型的可解释性(即更合理地定位PAs的补丁级位置)。此外,本文还对两种像素级监控(二值掩模监控和深度图监控)的不同体系结构配置的有效性进行了详细的研究,为未来的体系结构/监控设计提供了有益的启示。
关键词:人脸反欺骗,像素级监控,金字塔级监控

1 引言

人脸识别技术[1]以其方便性和显著的准确性,已经应用于一些交互式智能应用中,如签到、移动支付等。然而,大多数现有的人脸识别系统都容易受到来自打印、重放、化妆和3D掩码攻击的呈现攻击[2]。因此,为了保证人脸识别系统的安全,人脸防欺骗技术的发展受到了学术界和工业界的广泛关注。

在过去的二十年中,传统的[3]、[4]、[5]、[6]、[7]和基于深度学习的[8]、[9]、[10]、[11]、[12]、[13]、[14]方法都证明了它们在呈现攻击检测(PAD)中的有效性。传统的算法大多关注人类的活动线索和手工特征,需要丰富的任务感知先验知识。在基于活性线索的方法中,眨眼[3]、[15]、[16]、面部和头部运动[17]、[18](如点头和微笑)、注视跟踪[19]、[20]和远程生理信号(如rPPG[4]、[10]、[21]、[22])被探索为动态辨别。然而,这些生理活性线索通常是从长时间的交互式人脸视频中捕捉到的,并且很容易从视频攻击中模仿出来,因此不太可靠,不便于实际部署。另一方面,经典的手工描述符(例如,LBP[5]、[23]、SIFT[7]、HOG[6]和DoG[24])设计用于从各种颜色空间(RGB、HSV和YCbCr)中提取有效的欺骗模式。尽管这些手工制作的特征可以与训练好的分类器(例如SVM[25])有效地级联,但是它们仍然受到表示能力的限制,并且在看不见的场景下容易受到攻击以及未知的PAs。

相比之下,一些基于深度学习的方法被提出用于帧级和视频级的人脸活性检测。大多数著作[26]、[31]、[32]、[33]、[34]、[35]、[36]将FAS视为一个二进制分类问题(例如,“0”表示live,而“1”表示欺骗faces),因此由一个简单的二进制交叉熵损失来监督。然而,具有二进制丢失的卷积神经网络(CNNs)可能会发现能够分离这两类(如屏幕挡板)的任意线索,但不会发现忠实的欺骗模式。

近年来,像素级监控[9]、[10]、[12]、[26]、[29]、[37]由于提供了更细粒度的上下文感知监控信号而备受关注,这有利于深层模型学习内在欺骗线索。从图1可以看出,伪深度标签[10]、[12]、反射贴图[9]、[29]、二进制掩码标签[26]、[27]、[28]和三维点云贴图[30]是典型的像素级监控信号,在像素/补丁级别描述了本地实时/欺骗线索。现有的像素级监控虽然取得了较好的性能,但仍然存在局部上下文和全局语义之间的表示差距,容易受到局部扰动的影响。
在这里插入图片描述

从评估协议的角度来看,大多数现有的FAS方法由预定义的场景和PAs进行监控。因此,训练后的模型在某些特定的域和攻击上可能过拟合,这些域和攻击易受域转移和不可见攻击的影响。由于FAS在实际中是一个开放集问题,因此训练条件和测试条件之间的不确定差距(如环境和攻击类型)应予以考虑。一方面,利用对抗学习[38]、细粒度元学习[39]和多域分离学习[40]来学习FAS中用于领域泛化的鲁棒特征。另一方面,为了成功地检测不可见的攻击,开发了一类支持向量机[41]、深树网络[27]和自适应内更新元学习[42]。尽管通过学习策略[38]、[39]、[40]、[42]增强了泛化能力,但它们仍然很难用粗监督信号明确地学习详细的内在欺骗模式。此外,探索和理解像素级监控如何影响主流体系结构对各种FAS评估协议的影响并非易事。

基于以上的讨论,我们首先对现有的基于像素的监控方法进行了研究,旨在帮助FAS研究人员方便地比较和理解基于像素的监控技术的现状。此外,我们还提出了一种新的金字塔监督机制,该机制能够灵活地插入到现有的像素监督框架中,并提供多尺度的补丁/全局信号。综上所述,本文的主要贡献如下:

•我们全面回顾了FAS任务中现有的像素级监督方法。
•我们提出了一种新的插入和播放金字塔监督,它能够为细粒度学习提供更丰富的多尺度空间上下文。提出的金字塔监督不仅可以提高现有像素监督框架的性能,而且可以提高模型的可解释性。
•我们进行了详细的研究,探索不同体系结构配置与像素级监控的有效性,这为未来的体系结构/监控设计提供了见解。

在本文的其余部分,第2节回顾了FAS的像素级监控。第3节介绍了用于多种像素级监控(如二进制掩模图和伪深度图)的金字塔监控。第4节提供了严格的消融研究,并在五个基准数据集上评估了拟议金字塔监管的绩效。最后,在第五部分给出了结论和未来的工作。

2 像素级监管综述

在本节中,我们将回顾现有的具有像素级监控的FAS方法,包括深度图、二进制掩模等。有关摘要见表1。由深度图监控。根据人类对FAS的先验知识,大多数PAs(如普通印刷纸和电子屏幕)没有真实的面部深度信息,可以作为识别性的监控信号。因此,最近的一些著作[8]、[12]、[43]、[44]采用像素级的伪深度标签(图1中的第四列)来指导深度模型,强制它们预测实时样本的真实深度,而零映射用于欺骗样本。Atoum等人[12]首先利用伪深度标签来指导多尺度完全卷积网络(为了简单起见,本文称之为“深度网”)。因此,训练有素的深度网能够预测整体深度图作为决策证据。基于生成的伪深度标签,Wang等人[44]设计了一种对比深度损失(CDL)方法来利用细粒度的局部深度线索,并将其应用于训练中心差分卷积网络(CDCN)[8]。类似地,Peng等人[43]将深度监督流与另一种颜色(RGB、HSV、YCbCr)流融合以获得更健壮的表示。

尽管与传统的二值标签相比,像素深度标签具有更好的解释性和性能,但仍然存在两个问题:1)每个训练样本的三维形状合成成本高且不够精确;2)对于某些具有真实深度的PAs(如3D掩模和人体模型)来说缺乏合理性。

由二进制掩码监控。与伪深度图相比,二值掩模标签[26]、[27]、[46]、[47]、[48]、[49]、[50]更易于生成,且更易于推广到所有PA。具体而言,将为每个空间位置中的深嵌入特征提供二进制监督(图1中的第二列)。也就是说,通过二值掩码标签,我们可以发现PAs是否出现在相应的patches中,这是攻击类型不可知的,并且在空间上是可解释的。George和Marcel[26]是第一个引入深度像素级二进制监督(PixBis)的人,这有助于预测级联最终二进制分类的中间置信度图。类似地,Liu等人[27]使用二值分类和像素掩模回归来约束叶节点。Hossaind等人[46]提出在计算深层像素级二进制损失之前,添加一个注意模块用于特征细化。Yu等人[47]搜索了具有像素级二进制监控的轻量级FAS架构。Liu等人[49]利用早期欺骗回归器和像素级二进制监督来增强生成器的辨别能力。Ma等人[48]提出了一种多区域CNN,将局部二值分类丢失到局部斑块。Yu等人[13]利用像素级二进制标签来监督多模式CDCN,并在ChaLearn多模式人脸反欺骗攻击检测挑战赛@CVPR2020中获得第一名[54]。
在这里插入图片描述
在空间位置知识的帮助下,二值掩模标签不仅提高了模型的识别率,而且有利于神经结构的搜索。由于PAs的类型可以定义为细粒度的多类,因此将二元映射扩展到多类映射是否有助于监控PAs检测器也是一个值得探讨的问题。

其他监督。除了主流的深度图和二进制掩模标签外,还有一些信息性的像素级监控(例如,伪反射图[9]、[29]、[52]、三维点云图[30]和三值图[28])。根据真实皮肤和欺骗介质之间与面部材料相关的反照率的差异,Kim等人[29]提出用深度和反射标签来监督深度模型。此外,Yu等人[9]同时训练了具有多个像素级监控(二值掩模、反射图和深度图)的双边卷积网络。同样,Zhang等人[52]采用伪反射和深度标签来引导网络学习丰富的语义特征。与考虑所有空间位置的二元掩模标签不同,Sun等人[28]去除了面部不相关的部分,并将整个面部区域作为一个称为“三元映射”的精细二元掩模,消除了面部外部的噪声。为了减少密集深度图的冗余,Li等人[30]使用了稀疏的3D点云图来有效地监控轻量级模型。此外,在Fourier映射[34]、LBP纹理映射[51]、live零映射[53]和原始RGB输入[45]的监督下,编码器-解码器网络也显示了其出色的详细表示能力。

在细粒度的局部信息中,仍然存在两个局限性:1)像素监督(局部细节特征)和二值分类(语义特征)之间的特征表示差距;2)训练/测试样本之间的人脸分辨率和PAs大小不同,这就需要严格的像素级标注标签来保证质量。本文提出了金字塔监管的概念,并将其应用到现有的像素级监管中,以缓解上述缺陷。

3 方法

从表1可以看出,基于像素级监督的FAS的主流主干可分为两类:1)具有二进制掩码监督的经典分类网络(如ResNet[55]和DenseNet[56]);2)具有伪深度监督的多尺度全卷积网络(如DepthNet[10])。在本节中,我们将介绍一种新颖的金字塔监管,它能够灵活地插入这两个类别。这里我们分别采用著名的ResNet50[55]和CDCN[8]作为这两类的基线。其他建筑的烧蚀研究将在第4.3节中进行。

3.1 金字塔二进制掩码监控

与二进制标量标签相比,二进制掩码标签[26]、[27]、[46]、[47]、[48]、[49]、[50]包含了丰富的空间上下文,有利于模型对欺骗攻击位置的认知。为了从二值掩模标签中提取多尺度空间信息,提出了金字塔监督的概念,将原始的像素级标签分解为多个空间尺度来监督多尺度特征。金字塔监督有三个主要优点:1)在金字塔标签的观察和引导下,模型能够同时从多个角度(从局部细节到全局语义)学习特征;2)决策依赖于多尺度预测结果,而不是任何特定的空间层次,更具鲁棒性该模型能够动态预测多尺度二值映射,提高了模型的可解释性,并对不同粒度的欺骗攻击进行了定位。
在这里插入图片描述

如图2所示,给定检测到的大小为3×256×256(通道×高度×宽度)的RGB人脸图像作为输入,可以通过转发主干网(例如ResNet50)来提取大小为×8×8的深度特征F8。然后对F8执行不同核大小和步长的平均池算子,分别生成多尺度特征F4、F2和F1。随后,在多尺度特征(F8、F4、F2和F1)上分别进行具有1x1卷积的特征到掩模映射(Θ8、Θ4、Θ2和Θ1),以预测相应的二元掩模(M8、M4、M2和M1),然后将这些二元掩模串联以进行最终的二元分类。多尺度二值掩模预测的过程可表述为:
在这里插入图片描述
损失函数。在像素级的真值方面,我们可以直接使用已注释的二元掩模标签或生成的粗二元掩模。然后根据以下准则将原始掩码标签分解为多尺度掩码标签:当对多尺度标签进行子采样时,位置值由相应的局部感受野是否存在欺骗攻击来确定(如图2)。由于预测的多尺度掩模和地面真值具有相同的大小,金字塔损失 L p y r a m i d L_{pyramid} Lpyramid可通过累积每个标度内每个位置的二进制交叉熵损失(BCE)来计算:
在这里插入图片描述
在训练阶段, L o v e r a l l L_{overall} Loverall的总损失可表示为 L o v e r a l l = L p y r a m i d + L b i n a r y L_{overall}=L_{pyramid}+L_{binary} Loverall=Lpyramid+Lbinary,后者为BCE损失,用于最终分类。在评估阶段,为了简单起见,只使用最终的二进制分数进行决策。

与空间金字塔池的关系[57]。在这里,我们讨论了金字塔监督和空间金字塔池(SPP)之间的关系[57],它们有着相似的设计理念,但重点不同。一方面,SPP直接将深层多尺度特征串联起来进行分类,特征维数大,容易在小尺度数据集的FAS任务中过度拟合。相反,在金字塔监督的框架下,将预测的多尺度紧映射串联起来进行最终决策。另一方面,SPP只在尾部提供标量级的监督信号,而该方法可以在最终分类前进行多尺度的像素级监督。消融研究见第4.3节,以显示FAS金字塔监督的优越性能。

3.2 金字塔深度图监督

在这里插入图片描述

除了用金字塔二元掩码监控组装深度模型外,我们还展示了一个在最近的CDCN中应用金字塔深度图监控的例子。如图3所示,CDCN从大小为3×256×256的人脸输入中提取多级特征,并预测大小为32×32的灰度人脸深度。与金字塔二元掩模监控类似,预测深度图D32和生成的伪深度标签都被下采样并调整到相同的比例(32×32、16×16等)。在这里,我们采用两个量表(即32×32和16×16)作为默认设置的金字塔监督,因为我们发现更多的量表对性能改进没有贡献(见第4.3节的烧蚀研究)。根据损失函数,金字塔深度损失 L p y r a m i d d e p t h L_{pyramid}^{depth} Lpyramiddepth可表示为:
在这里插入图片描述在这里插入图片描述

4 实验

在这一部分中,通过大量的实验来验证所提出的金字塔监管的有效性。在下文中,我们依次描述了采用的数据集和度量(第。4.1),实施细节(第。4.2),结果(第。4.3-4.6)和可视化(第。4.7).

4.1 数据库和指标

数据集。我们的实验使用了五个数据集,包括OULU-NPU[58]、CASIA-MFSD[59]、重放攻击[60]、MSU-MFSD[61]和SiW-M[27]。OULU-NPU是一个高分辨率数据库,包含四个子协议,用于验证模型的泛化(例如,不可见光照和攻击介质),用于数据集内测试。CASIA-MFSD、Replay Attack、MSUMFSD和OULU-NPU中的视频是在不同的场景下录制的,使用不同的摄像机和主题,用于跨数据集域综合协议。由于SiW-M数据集具有丰富的(13)种攻击类型,因此我们遵循SiW-M数据集内原始的跨类型协议来评估对不可见攻击类型的泛化能力。图4显示了来自这五个数据集的一些典型的真实样本和PAs样本。
在这里插入图片描述

评估指标。在OULU-NPU数据集中,我们遵循原始的子协议和度量,即攻击表示分类错误率(APCER)、真实表示分类错误率(BPCER)和ACER[62]进行公平比较。在CASIA-MFSD、REPLAYATSTACK、MSU-MFSD和OULU-NPU上,采用曲线下面积(AUC)和半总错误率(HTER)作为跨数据集域综合协议。对于SiW-M上的数据集内跨类型协议,采用了ACER和等错误率(EER)。

4.2 实施细则

地面真相生成。伪面部深度图标签由现成的3D面部模型生成[63]。除了SIW-M(已经注释的标签)之外,二进制掩码标签只需用其他四个数据集的相应二进制标签填充每个位置即可生成。然后将生成的二进制和深度图降采样为多分辨率(32×32、16×16、8×8等)。实时深度图在[0,1]范围内归一化,而欺骗深度图在训练阶段均为0,这有利于学习FAS任务的判别模式。

实验装置。我们提出的方法是用Pytorch实现的。使用SGD优化器对基于ImageNet预训练分类的模型(如ResNet和DenseNet)进行FAS任务训练,初始学习率(lr)、动量和权重衰减(wd)分别为1e-3、0.9和5e-5。我们在单个nvidiav100gpu上训练最多80个时代和批大小为32的模型。对于多尺度FCN模型(如CDCN=0.7和DepthNet),使用了初始lr=1e-4和wd=5e-5的Adam优化器。这些模型用batchsize 8进行训练,最多训练800个历元,而lr在第500个历元训练一半。

4.3 烧蚀研究

在本小节中,所有消融研究都是在最具挑战性的协议-4(不同的光照条件、位置、摄像机以及训练集和测试集之间的攻击)上进行的,目的是探索像素级监控的特性以及我们提出的金字塔监控的细节。

像素级监控对深度模型的影响。

在这里,我们全面评估了两个模型(ResNet50和CDCN)在不同监控信号下的性能,如表2所示。从第1、第3和第4行可以看出,二进制掩码监控通过二进制分数或深度图监控显著提高了ResNet50的性能。令人惊讶的是,带有深度图标签的监控性能最差。这可能是由于语义表征学习和细粒度深度指导之间的矛盾造成的。一个更有趣的发现是,当用多类掩码标签替换二进制掩码时(在OULU-NPU中使用3类,即实时、打印和重播),没有获得性能提升。随着更详细的欺骗线索,多类像素级标签的监管是值得反思和探索的未来。从CDCN的角度来看,使用深度映射的监控比使用二值掩码的监控性能更好,这是合理的。在接下来的实验中,我们采用了四尺度(8x8、4x4、2x2、1x1)二进制掩模监控的ResNet50和两尺度(32x32、16x16)深度图监控的CDCN配置。

传销监管规模的影响。从表2中可以看出,1)具有四个刻度(8x8、4x4、2x2、1x1)的金字塔二元掩模监控与香草单刻度(仅8x8)设置相比,ResNet50具有最大增益(1.9±1.0%ACER);以及2)具有两个刻度(32x32,16x16)显著提高了普通CDCN仅32x32深度监督2.1±1.1%ACER。因此,这两种比例分别用作金字塔二值遮罩和深度贴图监控的默认设置。有趣的是发现更多的尺度总是有利于金字塔二值掩码监督的ResNet,而不是金字塔深度图监督的CDCN。这可能是因为1)金字塔二进制掩码监督可能会为ResNet50提供多尺度细粒度信号,以学习合理的语义;2)较低分辨率的深度图标签可能会干扰CDCN学习局部细节表示。
在这里插入图片描述
金字塔监督与空间金字塔池(SPP)[57]。由于金字塔监督和SPP具有相似的多尺度特征,本文还研究了SPP的性能,具体来说,SPP模块与ResNet50的深层特征级联,然后使用二进制分数标签进行监督。尽管SPP在一般的目标检测和分类任务中取得了较好的性能,但它不能使FAS任务受益,甚至比没有SPP的任务的ACER性能差1.8±1.1%,这可能是由于SPP模块对高维特征的过度拟合造成的。相反,提出的的采用“8x8、4x4、2x2、1x1”标度的金字塔二元掩模监控比采用SPP的ResNet50有很大的优势(4.5±1.8%ACER),表明金字塔监控对于预测的紧凑多尺度二元掩模的效率。

对体系结构的概括。除了ResNet50和CDCN之外,我们还研究了在更多体系结构上的泛化能力。如图5所示,金字塔二元掩码监督一致地改进了大模型(VGG16[64]和DenseNet121[56])和移动模型(ShuffleNetV2[65]和MobileNetV2[66]),表明所提出的金字塔监督在进一步的视觉模型中的有希望的应用。此外,采用金字塔深度图监督,深度网的均值和标准差ACER都有所降低,说明金字塔监督具有很好的泛化能力。

4.4 OULU-NPU的数据集内类型测试

我们严格按照OULU-NPU的四个协议进行评估。如表3所示,我们建议的金字塔监督,四种方案的ACER分别为ResNet50(-0.4%、-0.6%、-0.5%和1.9%)和CDCN(-0.2%、-0.1%、-0.2%和-2.1%)。结果表明,金字塔监督在外部环境的泛化、攻击媒介的泛化和输入摄像机的变异等方面表现良好。
在这里插入图片描述
在体系结构方面,“CDCN-PS”在所有四种协议中的性能都优于或等同于最先进的方法。至于ResNet50-PS,尽管前三个协议的性能很差,但在最具挑战性的协议-4中,它意外地获得了比CDCN-PS更好的性能,这表明即使在训练样本有限的情况下,金字塔二元掩码监控仍然有效。在未来,它有望将金字塔监管插入到更先进的体系结构以及像素级标签中。
在这里插入图片描述

4.5 跨数据集类型内测试

这里使用了四个数据集OULU-NPU(O)、CASIA-MFSD(C)、Idiap重放攻击(I)和MSU-MFSD(M)。具体来说,随机选择三个数据集进行训练,剩下的一个用于测试。从表4可以看出,采用金字塔二进制掩码监督,在O&C&I to M协议和I&C&M to O协议上,ResNet50 PS的性能分别显著提高了-4.48%和-5.03%。同样,在“O&C&I to M”、“O&M&I to C”和“I&C&M to O”协议上,采用金字塔深度图监督的CDCN比普通CDCN分别高出-2.48%、-4.21%和-1.16%。实验结果表明,所提出的金字塔监督方法也有助于在多个源域上提供丰富的多尺度制导。

在这里插入图片描述

4.6 基于SiW-M的数据集内交叉类型测试

在SiW-M上遵循相同的交叉类型测试协议(13个攻击中有一个被忽略),我们将我们提出的方法与最近的几种FAS方法[9]、[10]、[27]、[49]、[58]进行了比较,以验证不可见攻击的泛化能力。如表5所示,与香草像素监督相比,“ResNet50-PS”和“CDCN-PS”的EER总体上更好,分别提高了17%和12%。具体来说,受益于金字塔监督,我们的方法可以在两个具有挑战性的攻击(“透明掩码”和“部分纸张”)中执行更稳健,而香草监督在这两个攻击中执行较差。注意,仅使用一个特定像素标签的所提出的方法与由三种像素标签(即二值掩模、深度图和反射图)监督的最新方法BCN[9]实现了相当的性能。在未来,将金字塔监督扩展到多个像素标签上,同时利用更丰富和更细粒度的线索是有利的。

4.7 可视化与分析

图6示出了在交叉类型测试协议下SiW-M数据集上的实时和欺骗人脸的预测二进制映射。一方面,在“直播”、“重播”和“透明蒙版”的预测中,“resnet508x8”和“resnet50ps”都表现良好,并保持了较高的识别信心。另一方面,当输入看不见的和具有挑战性的攻击类型(例如,“部分打印”和“半掩模”)时,预测变得不那么可靠和混乱。具体而言,从第3行第2列中的“ResNet50 8x8”结果可以看出,除了眼睛区域中的打印部分之外,其他面部区域被预测为低活跃度。类似的结果也出现在掩模区域中具有高活性置信度的第3行第2列中。相比之下,在金字塔监督的配合下,欺骗定位的可解释性显著提高。从预测的8x8和4x4地图中,我们可以发现高分(活跃度)和低激活(欺骗)分别位于面部皮肤区域和欺骗介质中。随着欺骗攻击的发展,我们认为网络的可解释性在欺骗定位和理解中变得越来越重要。

5 结论

本文对像素级监控下的人脸消噪技术进行了详细的综述,并进行了大量的实验研究。此外,本文还提出了一种新的金字塔监督机制,旨在为细粒度监督提供更丰富的多尺度空间背景。实验结果表明,我们提出的金字塔监督在提高性能和解释能力两方面都是有效的。

未来可能的发展方向包括:1)用合适的监控策略(如金字塔监控)自动发现最优的像素级标签值得探索;2)建立具有细粒度(如多类)像素/补丁级标注标签的大规模FAS基准,这也有助于定量评估可解释性。

### Skeleton-Based Action Recognition Research and Techniques In the field of skeleton-based action recognition, researchers have developed various methods to interpret human actions from skeletal data. These approaches leverage deep learning models that can effectively capture spatial-temporal features inherent in sequences of joint positions over time. One prominent technique involves utilizing recurrent neural networks (RNNs), particularly long short-term memory (LSTM) units or gated recurrent units (GRUs). Such architectures are adept at handling sequential information due to their ability to maintain a form of memory across timesteps[^1]. This characteristic makes them suitable for modeling temporal dependencies present within motion capture datasets. Convolutional Neural Networks (CNNs) also play an essential role when applied on graphs representing skeletons as nodes connected by edges denoting limb segments between joints. Graph Convolutional Networks (GCNs) extend traditional CNN operations onto non-Euclidean domains like point clouds or meshes formed around articulated bodies during movement execution phases[^2]. Furthermore, some studies integrate both RNN variants with GCN layers into hybrid frameworks designed specifically for this task domain; these combined structures aim to simultaneously exploit local appearance cues alongside global structural patterns exhibited throughout entire pose configurations captured frame-by-frame via sensors such as Microsoft Kinect devices or other depth cameras capable of tracking multiple individuals performing diverse activities indoors under varying lighting conditions without requiring any wearable markers attached directly onto participants' limbs/skin surfaces. ```python import torch.nn.functional as F from torch_geometric.nn import GCNConv class ST_GCN(torch.nn.Module): def __init__(self, num_features, hidden_channels, class_num): super(ST_GCN, self).__init__() self.conv1 = GCNConv(num_features, hidden_channels) self.fc1 = Linear(hidden_channels, class_num) def forward(self, x, edge_index): h = self.conv1(x, edge_index) h = F.relu(h) h = F.dropout(h, training=self.training) z = self.fc1(h) return F.log_softmax(z, dim=1) ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值