使用4D视频数据张量的2D卷积进行计算机视觉的方法、系统和介质与流程

    专利2026-02-23  16


    本发明涉及人工神经网络,包括用于根据多帧视频数据执行计算机视觉任务的卷积神经网络。


    背景技术:

    1、人工神经网络是用于创建和应用模型以执行推理任务的计算结构。神经网络通常包括多层神经元,每个神经元接收来自上一层的输入,对输入应用一组权重,并组合这些加权输入以生成输出,该输出反过来作为输入提供给后续层的一个或多个神经元。

    2、一层神经元使用滤波器来定义上一层神经元的输出和当前层神经元的输出之间的关系。神经网络的一层接收数据输入,通常以已知维度的数据数组的形式输入,通常称为张量。张量是一个数学对象,类似于向量,但比向量更通用,由作为空间坐标函数的分量数组表示。因此,张量可以是包含沿单个维度定位的一组元素的一维数组、包含具有由二维定义的位置的一组元素的2d矩阵、包含具有由三维定义的位置的一组元素的3d结构,等等。

    3、在神经网络在图像数据(由两个空间维度、水平像素位置x和垂直像素位置y以及第三通道维度c定义,例如红/绿/蓝颜色通道)等3d数据上操作的情况下,神经网络的输入层接收3d图像数据作为3d输入张量,神经网络中的每个后续层通常接收数据输入,作为由一组多个2d输入激活映射(也称为输入特征映射或输入通道)组成的3d张量。通过将一组滤波器应用于一组输入激活映射,所述层生成数据输出,所述数据输出通常是具有已知维度的数据阵列:同样,在神经网络在3d数据上操作的情况下,网络的一层的数据张量通常是由一组多个2d输出激活映射(也称为输出特征映射或输出通道)组成的3d张量。每个输出激活映射包括空间维度x和y,所述多个2d输出激活映射沿着输出通道维度s排列。在一些实现方式中,所述输出激活映射的所述空间维度可以具有与所述输入张量的所述空间维度相同的大小(即沿所述维度排列的元素数量相同);在其它实现方式中,所述输出激活映射可以通过所述卷积运算调整大小,以具有与所述输入张量的空间维度不同的空间维度。所述输出通道维度s的大小等于层中滤波器的数量。

    4、滤波器包括一组权重(也称为可学习参数,或简称参数)。在一些神经网络中,如卷积神经网络(convolutional neural network,cnn),滤波器的权重被安排成卷积核,如2d卷积核,用于对一组2d输入激活映射(即3d输入张量)执行2d卷积。在图像处理的上下文中,滤波器的每个核对应于所述输入张量的通道(即单个2d输入激活映射)。将单个滤波器应用于所述输入张量(例如,通过将所述滤波器的所述核与所述数据输入的所述对应输入激活映射卷积)生成单个2d输出激活映射。由所述卷积层的一组滤波器生成的一组2d输出激活映射是所述卷积层的数据输出(即,所述3d输出张量)。

    5、因此,在对3d输入张量执行2d卷积的上下文中,滤波器是排列成多个2d核的3d权重数组。

    6、一些神经网络被配置和训练以处理视频数据(即,多个视频帧,每个帧由对应于不同时间点的多通道图像数据组成)。视频处理神经网络可以被训练以执行计算机视觉任务,例如识别视频中的人正在执行的活动、提高视频质量等。视频处理神经网络倾向于在具有大于三维的张量上运行。一些被配置为一次处理单个视频数据样本(即视频剪辑),视频数据样本被表示为由水平位置、垂直位置、通道和帧的维度定义的4d输入张量。因此,单个帧对应于如上所述的图像数据的3d张量,并且所述视频数据样本包括沿着对应于不同时间点的多个帧的第四维度布置的多个这样的3d帧。因此,视频数据样本的帧维度可以被视为时间维度t。

    7、许多当代视频处理神经网络一次对多个视频剪辑(即多个视频数据样本)进行批量操作,从而产生5d输入张量。这样的神经网络的每个5d输入张量包括沿着第五维度布置的如上所述的多个4d视频数据张量,所述第五维度对应于正在处理的视频数据批中的每个不同视频数据样本的索引值。所述维度可以称为批索引维度b。

    8、许多特定于视频的计算机视觉任务需要沿着视频数据的时间维度分析视频数据。例如,处理视频数据样本以识别用户随着时间的推移正在执行的手势,要求所述视频数据样本的多个帧一起处理,而不是单独处理。因此,现有的视频处理cnn通常对5d输入张量执行3d卷积操作,以便在所述视频数据样本的两个空间维度以及时间维度上卷积3d核。3d卷积使用4d滤波器,每个4d滤波器包括多个3d核,在4d(或5d)输入张量的三个维度上遍历(即卷积)4d(或5d)输入张量(与2d卷积中的滤波器在两个维度上卷积相反)。通常,具有维度[b,t,x,y,c]的5d视频数据张量的3d卷积应用大小(t,d,d)的3d核来遍历5d输入张量的第2、3和4维,即时间维度和两个空间维度。3d卷积的计算成本通常比2d卷积更高:相对于2d核,3d核中包括的权重数量要多得多,导致神经网络更大,内存需求大大增加,3d卷积运算的计算成本比类似的2d卷积运算更高,从而对处理器提出了更高的要求。3d卷积视频处理cnn的内存和处理器要求更高,使得许多实时计算机视觉任务无法在手机等边缘设备上执行;在一些情况下,边缘设备中使用的硬件甚至不支持4d或5d张量的3d卷积,即使计算资源限制被克服,这些任务也不可能。

    9、因此,需要解决上述现有方法的一个或多个限制的视频处理cnn技术。


    技术实现思路

    1、在各种示例中,本发明描述了使用4d视频数据张量的2d卷积用于计算机视觉的方法、系统和计算机可读介质。

    2、各种方法试图解决使用上述3d卷积的视频处理cnn的局限性。这些方法包括级联方法、并行方法、混合方法和秩1方法。

    3、级联方法,如r(2+1)d、s3d和p3d-a,通过在其中一个维度中使用大小为1的3d核,将每个3d卷积运算拆分为连续的空间和时间3d卷积运算。一种这样的方法是由tran,du等人2018年在ieee计算机视觉和模式识别会议记录“动作识别的时空卷积的更仔细研究(acloser look at spatiotemporal convolutions for action recognition)”中描述。所述方法使用级联方法,首先应用空间处理(使用时间维度中大小为1的核),然后应用时间处理(使用空间维度中大小为1的核)。所述方法在其实现方式中仍然将3d卷积运算应用于5d输入张量(即,每个4d滤波器在三维中遍历5d张量)。级联方法通常需要大量的处理时间,因为空间处理必须在将结果提供给时间处理阶段之前完成。

    4、p3d-b等并行方法应用空间和时间分析的并行流。qiu、zhaofan、ting yao和taomei在2017年ieee计算机视觉国际会议记录“通过伪-3d残差网络学习时空表示(learningspatio-temporal representation with pseudo-3d residual networks)”中描述了一种这样的方法。所述方法引入了空间处理和时间处理的不同组合,这些组合被实现为在5d输入张量上执行的3d卷积运算。还执行额外的处理,以使每个并行分支(即空间分析分支和时间分析分支)的输出具有相同的形状,这增加了处理时间。因此,即使并行实现理论上可以比级联方法更快,但在实践中并行方法往往比级联方法更慢。

    5、p3d-c等混合方法使用空间分析和时间分析的并行和串行流的混合。xie、saining等人在arxiv preprint arxiv:1712.04851 1.2(2017):5“重新思考时空特征学习以实现视频理解(rethinking spatiotemporal feature learning for video understanding)”中描述了一种这样的方法。他们在实现方式中仍然使用具有5d张量的conv3d。本文研究了在cnn的早期层中空间分析和在最后层中时间分析是否更好,反之亦然。zolfaghari、mohammadreza、kamaljeet singh和thomas brox在2018年欧洲计算机视觉会议(europeanconference on computer vision,eccv)记录“生态:在线视频理解的高效卷积网络(eco:efficient convolutional network for online video understanding)”中描述了另一种这种方法。本文解决了一个与上面xie参考文献类似的问题,研究了在cnn的起始层执行空间处理和在最后层执行3d卷积的有效性。zolfaghari参考文献提出的方法中的3d卷积运算并不分为空间和时间分析;相反,效率的任何提高通常是限制执行3d卷积的层数的结果。

    6、秩1方法将3d卷积中使用的每个3d核分解为三个秩1向量,分别用于水平位置、垂直位置和时间处理。kim、hyein等人在arxiv preprint arxiv:1808.04303(2018)的“秩1卷积神经网络(rank-1convolutional neural network)”中描述了一种这样的方法。这些方法是将3d卷积层分解为3个级联层的不同方式,用于执行卷积以分析x、y和t维度。滤波器使用张量分解技术分解,三个分解层使用秩1滤波器。这种方法依赖于一个强大的数学假设,即每个3d卷积滤波器可以表示为三个秩1向量,这在实际中可能无效。在这种假设无效的情况下,这种方法可能会导致准确性的重大损失。

    7、因此,在视频处理cnn中简化5d输入张量的3d卷积的每种现有方法继续依赖于cnn的至少一些层中的3d卷积运算,从而显示出至少一些与传统3d cnn相同的缺点,有时也引入其它缺点。此外,尽管一些现有的方法使用并行路径进行空间和时间处理,目的是提高效率,但这种并行方法的效率往往会降低,因为并行空间和时间分支的输出张量可能不具有相同的维度。例如,空间分支的输出张量可以是五个维度中每个维度中大小为[8,16,128,128,64]的5d张量,但时间分支的输出张量可以具有不同的大小[8,8,256,256,64]。为了组合这两个输出张量,它们在每个维度中的大小必须匹配。因此,在通过加法或级联组合它们之前,需要进行更多的后处理。

    8、本发明描述了方法、系统和计算机可读介质,这些方法、系统和计算机可读介质可以解决传统3d卷积技术的一个或多个限制,并且还可以解决用于克服传统技术的限制的级联、并行、混合和秩1方法的一个或多个限制。在所描述的实施例中,通过执行4d张量的2d卷积来模拟在现有方法(例如,空间分析和时间分析)中对5d输入张量执行的各种类型的3d卷积运算。在一些实施例中,cnn的卷积块执行两个并行操作:空间处理分支使用2d卷积对4d张量执行空间特征提取,而时间处理分支使用2d卷积对不同的4d张量执行时间特征提取。空间处理分支和时间处理分支的输出张量被组合以生成卷积块的输出张量,所述卷积块可以被cnn的其它卷积块处理,也可以被后处理以生成cnn的对数输出。在一些实施例中,空间处理分支和/或时间处理分支可以包括附加操作,如再成形和/或进一步的卷积运算,以为每个分支生成相同大小的输出张量,从而消除了在组合分支输出张量之前对它们进行后处理的需要。

    9、本文描述的示例性实施例可以表现出与上述现有方法相比的一个或多个优点。使用2d卷积和4d张量可以在不支持使用具有5d张量的3d卷积运算的各种边缘设备上执行所描述的示例。本文描述的用于并行空间和时间处理(例如空间和时间特征提取)的示例性并行结构,借助于张量的适当再成形和使用每个分支(例如空间处理分支和时间处理分支)中使用的卷积步长的适当值进行下采样,可以允许本文描述的示例比现有方法更高效地实现,而不降低准确性。此外,将3d核拆分为较小的2d核可以显著减少本文描述的示例cnn的参数数量,可以使内存效率更高。

    10、本文描述的方法可以用于计算机视觉任务,例如对视频剪辑中可见的行为或人或物体进行分类,或提高视频剪辑的视频帧的视频质量,这些任务可以应用于自动驾驶、智能交通系统、暴力检测和高速生产线中的缺陷检测等领域。这些方法可以在计算受限的设备上部署经过训练的卷积神经网络,这些设备如手机、嵌入式设备、机器人、无人机、相机、物联网(internet of thing,iot)传感器和iot设备。

    11、在一些方面,本发明描述了一种用于处理输入张量以生成输出张量的方法。所述方法包括多个步骤。获取所述输入张量。所述输入张量包括所述输入张量包括五维(five-dimensional,5d)张量,所述5d张量具有:批索引维度,指示一批视频数据样本中的单个视频数据样本;时间维度;第一空间维度;第二空间维度;输入通道维度。根据所述输入张量,通过将所述输入张量的所述批索引维度和时间维度组合成组合的批索引时间维度来生成四维(four-dimensional,4d)空间输入张量。对所述4d空间输入张量进行二维(two-dimensional,2d)卷积,生成4d空间特征张量。根据所述输入张量生成具有基于所述输入张量的所述第一空间维度和所述第二空间维度的组合空间维度的4d时间输入张量。对所述4d时间输入张量执行2d卷积,生成4d时间特征张量。处理所述4d空间特征张量和所述4d时间特征张量,生成所述输出张量。

    12、在一些方面,本发明描述了一种用于处理输入张量以生成输出张量的系统。所述系统包括处理器设备和存储机器可执行指令的存储器,当由处理器设备执行所述机器可读指令时,使所述系统执行多个步骤。获取所述输入张量。所述输入张量包括所述输入张量包括五维(five-dimensional,5d)张量,所述5d张量具有:批索引维度,指示一批视频数据样本中的单个视频数据样本;时间维度;第一空间维度;第二空间维度;输入通道维度。根据所述输入张量,通过将所述输入张量的所述批索引维度和时间维度组合成组合的批索引时间维度来生成四维(four-dimensional,4d)空间输入张量。对所述4d空间输入张量进行二维(two-dimensional,2d)卷积,生成4d空间特征张量。根据所述输入张量生成具有基于所述输入张量的所述第一空间维度和所述第二空间维度的组合空间维度的4d时间输入张量。对所述4d时间输入张量执行2d卷积,生成4d时间特征张量。处理所述4d空间特征张量和所述4d时间特征张量,生成所述输出张量。

    13、使用2d卷积和4d张量可以在不支持使用具有5d张量的3d卷积运算的各种边缘设备上执行所描述的示例。相对于现有方法,将3d核拆分为较小的2d核可以显著减少本文描述的示例cnn的参数数量,可以使内存效率更高。

    14、在一些示例中,所述将所述输入张量的所述批索引维度和时间维度组合包括将由所述第一空间维度、第二空间维度和输入通道维度定义的多个三维(three-dimensional,3d)张量级联起来,形成所述四维空间输入张量。所述组合的批索引时间维度的大小等于所述输入张量的所述批索引维度的大小乘以所述输入张量的所述时间维度的大小。

    15、在一些示例中,生成所述4d时间输入张量包括将所述输入张量的所述批索引维度、时间维度和输入通道维度定义的多个3d张量级联起来,形成所述四维时间输入张量。所述组合的空间维度的大小等于所述输入张量的所述第一空间维度的大小乘以所述输入张量的所述第二空间维度的大小。

    16、在一些示例中,所述对所述4d空间输入张量执行2d卷积,生成所述4d空间特征张量包括:以相对于所述第一空间维度和所述第二空间维度等于第二数量的步长,将第一数量的2d卷积滤波器应用于所述4d空间输入张量,生成所述4d空间特征张量,其中,所述4d空间特征张量具有:组合的批处理索引时间输出维度;第一空间输出维度,大小等于所述输入张量的所述第一空间维度除以所述第二数量;第二空间输出维度,大小等于所述输入张量的所述第二空间维度除以所述第二数量;输出通道维度,指示空间特征映射的数量等于所述第一数量。

    17、在一些示例中,所述对所述4d时间输入张量执行2d卷积,生成所述4d时间特征张量包括:以相对于所述时间维度等于第四数量的步长和相对于所述组合的空间维度等于所述第二数量的平方的步长,将第三数量的2d卷积滤波器应用于所述4d时间输入张量,生成所述4d时间特征张量,其中,所述4d时间特征张量具有:批索引输出维度;时间维度,大小等于所述输入张量的所述时间维度除以所述第四数量;组合的空间输出维度,大小等于所述输入张量的所述第一空间维度除以所述第二数量,乘以所述输入张量的所述第二空间维度,再除以所述第二数量;输出通道维度,指示时间特征映射的数量等于所述第三数量。

    18、在一些示例中,所述处理所述4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:再成形所述4d空间特征张量以生成再成形的4d空间特征张量,其中,所述再成形的4d空间特征张量具有:批索引维度,大小等于所述输入张量的所述批索引维度的大小;时间维度,大小等于所述输入张量的所述时间维度的大小;组合的空间输出维度,大小等于:所述输入张量的所述第一空间维度除以所述第二数量,乘以所述输入张量的所述第二空间维度,再除以所述第二数量;输出通道维度,指示空间特征映射的数量等于所述第一数量。处理所述再成形的4d空间特征张量和所述4d时间特征张量,生成所述输出张量。

    19、在一些实例中,所述处理所述再成形的4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:以相对于所述时间维度等于所述第四数量的时间维度步长,将等于所述第一数量的多个单元素卷积滤波器应用于所述再成形的4d空间特征张量,生成时间下采样的4d空间特征张量。处理所述时间下采样的4d空间特征张量和所述4d时间特征张量,生成所述输出张量。

    20、在一些示例中,所述处理所述时间下采样的4d空间特征张量和所述4d时间特征张量以生成所述输出张量包括将所述时间下采样的4d空间特征张量的元素添加到所述4d时间特征张量的相应元素中,生成所述输出张量。

    21、通过使用并行空间和时间处理,在张量的适当再成形和使用空间处理分支和时间处理分支中使用的卷积步长的适当值进行下采样的辅助下,可以在不降低准确性的情况下比现有方法更高效地实现本文描述的示例。

    22、在一些示例中,所述将所述输入张量的所述批索引维度和时间维度组合包括将由所述第一空间维度、第二空间维度和输入通道维度定义的多个三维(three-dimensional,3d)张量级联起来,形成所述四维空间输入张量。所述组合的批索引时间维度的大小等于所述输入张量的所述批索引维度的大小乘以所述输入张量的所述时间维度的大小。生成所述4d时间输入张量包括将所述输入张量的所述批索引维度、时间维度和输入通道维度定义的多个3d张量级联起来,形成所述四维时间输入张量。所述组合的空间维度的大小等于所述输入张量的所述第一空间维度的大小乘以所述输入张量的所述第二空间维度的大小。所述对所述4d空间输入张量执行2d卷积,生成所述4d空间特征张量包括:以相对于所述第一空间维度和所述第二空间维度等于第二数量的步长,将第一数量的2d卷积滤波器应用于所述4d空间输入张量,生成所述4d空间特征张量,其中,所述4d空间特征张量具有:组合的批处理索引时间输出维度;第一空间输出维度,大小等于所述输入张量的所述第一空间维度除以所述第二数量;第二空间输出维度,大小等于所述输入张量的所述第二空间维度除以所述第二数量;输出通道维度,指示空间特征映射的数量等于所述第一数量。所述对所述4d时间输入张量执行2d卷积,生成所述4d时间特征张量包括:以相对于所述时间维度等于第四数量的步长和相对于所述组合的空间维度等于所述第四数量的平方的步长,将第三数量的2d卷积滤波器应用于所述4d时间输入张量,生成所述4d时间特征张量,其中,所述4d时间特征张量具有:批索引输出维度;时间维度,大小等于所述输入张量的所述时间维度除以所述第四数量;组合的空间输出维度,大小等于所述输入张量的所述第一空间维度除以所述第四数量,乘以所述输入张量的所述第二空间维度,再除以所述第四数量;输出通道维度,指示时间特征映射的数量等于所述第三数量。所述处理所述4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:再成形所述4d空间特征张量以生成再成形的4d空间特征张量,其中,所述再成形的4d空间特征张量具有:批索引维度,大小等于所述输入张量的所述批索引维度的大小;时间维度,大小等于所述输入张量的所述时间维度的大小;组合的空间输出维度,大小等于:所述输入张量的所述第一空间维度除以所述第二数量,乘以所述输入张量的所述第二空间维度,再除以所述第二数量;输出通道维度,指示空间特征映射的数量等于所述第一数量。以相对于所述时间维度等于所述第四数量的时间维度步长,将等于所述第一数量的多个单元素卷积滤波器应用于所述再成形的4d空间特征张量,生成时间下采样的4d空间特征张量。将所述时间下采样的4d空间特征张量的元素添加到所述4d时间特征张量的相应元素中,生成所述输出张量。所述第一数量等于所述第三数量。

    23、在一些方面,本发明描述了一种非瞬时性处理器可读介质,所述非瞬时性处理器可读介质上存储有根据上述方法中的一个或多个方法生成的输出张量。

    24、在一些方面,本发明描述了一种非瞬时性处理器可读介质,所述非瞬时性处理器可读介质上存储有机器可执行指令,当由设备的处理器执行时,使所述设备执行上述方法中的一个或多个的步骤。


    技术特征:

    1.一种用于处理输入张量以生成输出张量的方法,其特征在于,包括:

    2.根据权利要求1所述的方法,其特征在于,

    3.根据权利要求1所述的方法,其特征在于,

    4.根据权利要求1所述的方法,其特征在于,所述对所述4d空间输入张量执行2d卷积,生成所述4d空间特征张量包括:

    5.根据权利要求4所述的方法,其特征在于,所述对所述4d时间输入张量执行2d卷积,生成所述4d时间特征张量包括:

    6.根据权利要求4所述的方法,其特征在于,所述处理所述4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:

    7.根据权利要求6所述的方法,其特征在于,所述处理所述再成形的4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:

    8.根据权利要求7所述的方法,其特征在于,所述处理所述时间下采样的4d空间特征张量和所述4d时间特征张量以生成所述输出张量包括将所述时间下采样的4d空间特征张量的元素添加到所述4d时间特征张量的相应元素中,生成所述输出张量。

    9.根据权利要求1所述的方法,其特征在于,

    10.一种用于处理输入张量以生成输出张量的系统,其特征在于,所述系统包括:

    11.根据权利要求10所述的系统,其特征在于,

    12.根据权利要求10所述的系统,其特征在于,

    13.根据权利要求10所述的系统,其特征在于,所述对所述4d空间输入张量执行2d卷积,生成所述4d空间特征张量包括:

    14.根据权利要求13所述的系统,其特征在于,所述对所述4d时间输入张量执行2d卷积,生成所述4d时间特征张量包括:

    15.根据权利要求13所述的系统,其特征在于,所述处理所述4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:

    16.根据权利要求15所述的系统,其特征在于,所述处理所述再成形的4d空间特征张量和所述4d时间特征张量,生成所述输出张量包括:

    17.根据权利要求16所述的系统,其特征在于,所述处理所述时间下采样的4d空间特征张量和所述4d时间特征张量以生成所述输出张量包括将所述时间下采样的4d空间特征张量的元素添加到所述4d时间特征张量的相应元素中,生成所述输出张量。

    18.根据权利要求10所述的系统,其特征在于,

    19.一种非瞬时性处理器可读介质,其特征在于,所述非瞬时性处理器可读介质上存储有根据权利要求1所述的方法生成的输出张量。

    20.一种非瞬时性处理器可读介质,其特征在于,所述非瞬时性处理器可读介质上存储有机器可执行指令,当由设备的处理器执行时,使所述设备执行权利要求1所述方法的步骤。


    技术总结
    描述了使用4D视频数据张量的2D卷积进行计算机视觉的方法、系统和介质。通过对4D张量执行2D卷积来模拟对5D输入张量执行的3D卷积运算。CNN的卷积块执行两个并行操作:空间处理分支使用2D卷积对4D张量执行空间特征提取,而时间处理分支使用2D卷积对不同的4D张量执行时间特征提取。将所述空间处理分支和所述时间处理分支的输出张量组合以生成所述卷积块的输出张量。所述卷积块可以包括附加操作,如再成形和/或进一步的卷积运算,以为每个分支生成相同大小的输出张量,从而消除了在组合分支输出张量之前对它们进行后处理的需要。

    技术研发人员:哈比卜·哈吉莫拉霍西尼,考沙尔·库马尔,戈登·邓
    受保护的技术使用者:华为技术有限公司
    技术研发日:
    技术公布日:2024/4/29
    转载请注明原文地址:https://wp.8miu.com/read-95602.html

    最新回复(0)