具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了减少神经网络的计算量,降低数据带宽和功耗,实现实时计算,本发明实施例提供的一种视频数据的处理方法、装置和电子系统,该技术可以应用于服务器、计算机、相机、手机、平板电脑、车辆中控设备等多种设备中,该技术可采用相应的软件和硬件实现,以下对本发明实施例进行详细介绍。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种视频数据的处理方法进行详细介绍。
实施例一:
首先,参照图1来描述用于实现本发明实施例的基于图像统计目标对象的方法、装置和电子系统的示例电子系统100。
如图1所示的一种电子系统的结构示意图,电子系统100包括一个或多个处理设备102、一个或多个存储装置104、输入装置106、输出装置108以及一个或多个视频采集设备110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1所示的电子系统100的组件和结构只是示例性的,而非限制性的,根据需要,电子系统也可以具有其他组件和结构。
处理设备102可以为智能终端,或者是包含中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对电子系统100中的其它组件的数据进行处理,还可以控制电子系统100中的其它组件以执行目标对象统计的功能。
存储装置104可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理设备102可以运行程序指令,以实现下文的本发明实施例中(由处理设备实现)的客户端功能以及/或者其它期望的功能。在计算机可读存储介质中还可以存储各种应用程序和各种数据,例如应用程序使用和/或产生的各种数据等。
输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
视频采集设备110可以采集目标视频,并且将采集到的目标视频存储在存储装置104中以供其它组件使用。
示例性地,用于实现根据本发明实施例的基于图像统计目标对象的方法、装置和电子系统中的各器件可以集成设置,也可以分散设置,诸如将处理设备102、存储装置104、输入装置106和输出装置108集成设置于一体,而将视频采集设备110设置于可以采集到图片的指定位置。当上述电子系统中的各器件集成设置时,该电子系统可以被实现为诸如相机、智能手机、平板电脑、计算机、车载终端等智能终端。
实施例二:
本实施例提供了一种视频数据的处理方法,该方法对传统的进行卷积计算的任务模型进行了改进,如图2所示的一种视频数据的处理方法的流程图,该视频数据的处理方法包括如下步骤:
步骤S202,将目标视频划分为关键帧和普通帧。
目标视频是指用于进行卷积计算的视频,目标视频的格式没有限制,只要能从目标视频中提取不同的视频帧即可。目标视频包括了若干的图像,每一个图像都是一个视频帧,将这些视频帧划分为关键帧和普通帧。
首先,将目标视频的初始视频帧划分为关键帧,而后确定其余的关键帧。每一个关键帧都要与上一个关键帧存在一定的不同,即每一个关键帧都需要续前一个关键帧的之间具有差异的区域的比例大于预设阈值。例如,预设阈值为70%,则需要第N个关键帧,与第N-1个关键帧的之间具有差异的区域的比例大于70%。然后将目标视频中除关键帧之外的视频帧划分为普通帧。
划分后的目标视频,第一个关键帧为初始视频帧,其余关键帧为与相邻的前一个关键帧的具有差异的区域的比例大于预设阈值的视频帧,除关键帧之外的视频帧为普通帧。
步骤S204,对于关键帧,将关键帧输入任务模型,输出关键帧的计算结果。
将目标视频划分为关键帧和普通帧后,对于关键帧和普通帧采用不同的方式输入任务模型。如果一个视频帧为关键帧,需要将该视频帧直接输入任务模型中,由任务模型对该关键帧进行卷积运算,得到该关键帧的计算结果。
步骤S206,对于普通帧,获取普通帧与参考关键帧之间的掩膜,其中,掩膜具有前景运动区域和背景静止区域;参考关键帧为与普通帧最近的关键帧。
如果一个视频帧为普通帧,则不需要讲过该普通帧全部输入任务模型中。首先,获得与该普通帧最近的关键帧(即参考关键帧),确定参考关键帧和普通帧之间的掩膜,掩膜为一个二值化的矩阵,该掩膜中为1的区域则表示普通帧在该区域与其对应的参考关键帧不同,该掩膜中为0的区域则表示普通帧在该区域与其对应的参考关键帧相同。掩膜中为1的区域就是前景运动区域,掩膜中为0的区域就是背景静止区域。关于参考关键帧,对于在线(online)检测,可以只获取是普通帧的前一个关键帧作为参考关键帧;对于对实现要求不高的场景,参考关键帧可以是普通帧的前一个关键帧,也可以是普通帧的后一个关键帧。
步骤S208,根据掩膜的前景运动区域确定普通帧对应的特征区域。
获得掩膜后,就可以确定普通帧对应的特征区域,特征区域是指普通帧中,与掩膜的前景运动区域相对应的区域,该区域相当于存在运动变化的区域。
步骤S210,根据参考关键帧、特征区域和任务模型,获取普通帧的计算结果。
将特征区域输入任务模型进行卷积计算,普通帧中除了特征区域以外的其余区域不输入任务模型进行计算,可以节约卷积神经网络的计算量。将特征区域输入任务模型的计算结果与参考关键帧结合,就可以得到普通帧的计算结果。
本发明实施例提供了一种视频数据的处理方法,将目标视频划分为关键帧和普通帧;其中,对于关键帧直接输入任务模型,输出关键帧的计算结果,对于普通帧,则根据掩膜确定普通帧对应的特征区域,根据参考关键帧、特征区域和任务模型,获取普通帧的计算结果。该方式中,没有将普通特征全部输入任务模型,而只是将与前景运动区域对应的特征区域输入任务模型,针对发生变化的差异区域进行处理;可以在保持卷积计算效果不下降的基础上,减少神经网络的计算量,降低数据带宽和功耗,实现实时计算。
实施例三:
本实施例提供了另一种视频数据的处理方法,该方法对传统的进行卷积计算的任务模型进行了改进,实施例重点描述第L+1层卷积层进行卷积的具体过程。在本实施例中,任务模型包括多个卷积层,通过卷积层对视频数据进行卷积计算,如图3所示的一种第L+1层卷积层进行卷积的流程图,该对于第L+1层卷积层进行卷积的方法包括如下步骤:
步骤S302,获取输入信息;输入信息包括:第L层卷积层输出的关键帧对应的关键特征和普通帧对应的普通特征;其中,第一层卷积层的输入信息中的关键特征为关键帧,普通特征为普通帧。
将目标视频划分为关键帧和普通帧后,按照时间顺序将目标视频的视频帧(关键帧和普通帧)输入任务模型,由任务模型中的卷积层依次进行卷积计算。根据关键帧、特征区域和任务模型进行卷积处理包括:对于任务模型中的第L+1层卷积层,执行如下的卷积运算:
由卷积层进行卷积计算前,需要首先获取输入信息,输入信息包括:第L层卷积层输出关键特征和普通特征;关键特征是指关键帧进行卷积计算后由第L层卷积层输出的特征;普通特征是指普通帧进行卷积计算后由第L层卷积层输出的特征。然而,如果第一层卷积层为第L+1层卷积层,就不存在上一层卷积层(即第L层卷积层),输入信息为关键帧和普通帧。
步骤S304,对第L层卷积层对应的关键特征进行卷积,输出第L+1层卷积层对应的关键特征。
将第L层卷积层输出的关键特征由当前卷积层进行卷积,得到当前卷积层对应的关键特征,输出当前卷积层对应的关键特征作为第L层卷积层的输入信息,由下一卷积层继续进行卷积,直到卷积完毕计算输出计算结果。需要说明的是,每一层卷积层可以仅对关键特征卷积一次,得到的当前卷积层对应的关键特征可以保存在内存中,这样,后续普通帧进行卷积时就可以复用当前卷积层对应的关键特征。
步骤S306,对第L层卷积层对应的普通特征的特征区域进行卷积操作,得到第L+1层卷积层对应的局部特征;特征区域通过掩膜选取。
普通特征的特征区域是指普通特征中与关键特征具有差异的区域,可以无需对全部普通特征进行卷积计算,只需要对普通特征的特征区域卷积计算即可。
这里需要说明的是,掩膜中为1的区域为前景运动区域,掩膜中为0的区域为背景静止区域;可以通过下述步骤选择特征区域:将普通帧中差异区域对应的特征作为特征区域;其中,差异区域为掩膜中为1的区域。
关键特征、普通特征与二者对应的掩膜的大小相同,而掩膜中为1的区域为关键特征和普通特征不同的区域。可以将普通特征中与掩膜中为1的区域相同位置的区域中的特征作为差异特征。需要注意的是,关键特征不需要实时进行计算得到,只需在处理关键帧时将其特征保存在DDR(Double Data Rate SDRAM,DDR内存)中,后续使用时可以随时读取。该方式中,通过掩膜的确定差异特征,可以保证差异特征是普通特征中与关键特征与不同的区域的特征。
将特征区域由第L+1层卷积层进行卷积,得到第L+1层卷积层对应的局部特征;局部特征是指对于普通帧中与特征区域相对应的区域的特征。
步骤S308,将第L+1层卷积层对应的局部特征和第L+1层卷积层对应的关键特征进行融合,输出第L+1层卷积层对应的普通特征。
将局部特征和第L+1层卷积层对应的关键特征进行融合,即可确定第L+1层卷积层对应的普通特征,输出第L+1层卷积层对应的普通特征作为第L+2层卷积层的输入信息,由第L+2层卷积层继续进行卷积,直到卷积完毕计算输出计算结果。
可以通过下述步骤融合关键特征和局部特征:将第L+1层卷积层对应的关键特征中的局部区域对应的特征替换为第L+1层卷积层对应的局部特征;其中,局部区域为第L+1层卷积层对应的局部特征对应的区域。
也就是说,将第L+1层卷积层对应的关键特征中与局部特征对应的区域的特征替换为局部特征即可得到当前卷积层对应的普通特征。参见图4所示的一种第L+1层卷积层进行卷积的示意图,图4中的掩膜为普通帧与参考关键帧之间的掩膜,由第L层卷积层对应的普通特征和关键特征确定,掩膜中的虚线框区域是指掩膜中为1的区域,掩膜对普通特征进行区域选择,将选择后的普通特征的虚线框区域中的特征进行卷积,得到局部特征,局部特征的位置为虚线框区域,而后将局部特征和第L+1层卷积层对应的关键特征融合,即可得到第L+1层卷积层对应的普通特征。
任务模型的计算结果是指对于按时序排列的每一个视频帧,通过任务模型的卷积层进行卷积计算得到的计算结果。对于目标视频的每一个视频帧,都会输出一个对应的计算结果。
该方式中,没有将普通特征全部进行卷积运算,而是部分进行卷积运算,可以在保持卷积计算效果不下降的基础上,减少神经网络的计算量,降低数据带宽和功耗,实现实时计算。
实施例四:
本实施例提供了另一种视频数据的处理方法,该方法在上述实施例的基础上实现;本实施例重点描述将目标视频划分为关键帧和普通帧的具体过程。如图5所示的另一种视频数据的处理方法的流程图,本实施例中的视频数据的处理方法包括如下步骤:
步骤S502,将目标视频的初始视频帧作为关键帧。
对于目标视频来说具有很大的时间空间冗余性,主要体现在,视频中前景运动区域可能很小,而背景通常是静止的,那么目标视频的视频帧很可能连续几帧的变化都不大,可以将这些变化不大的视频帧作为普通帧,将变化很大的视频帧作为关键帧。首先需要确定第一个关键帧作为其他关键帧的判定依据,因此,将目标视频的初始视频帧作为第一个关键帧。
步骤S504,基于目标视频的时序确定目标视频的每一视频帧与前一个关键帧的掩膜;掩膜为二值化矩阵;掩膜中为1的区域为视频帧与前一个关键帧不同的区域,掩膜中为0的区域为视频帧与前一个关键帧相同的区域。
本实施例采用计算掩膜的方法确定目标视频的某一个视频帧与其对应的上一个关键帧的不同区域的位置,也就是说,对一个视频帧和其对应的关键帧计算一个掩膜,掩膜为一个二值化的矩阵,该掩膜中为1的区域则表示视频帧在该区域与其对应的关键帧不同,该掩膜中为0的区域则表示视频帧在该区域与其对应的关键帧相同。
掩膜可以通过两种方法确定,分别是帧差法和网络预测法,帧差法直接通过计算得到视频帧和关键帧对应的掩膜,而网络预测发需要预先训练一个掩膜预测网络,通过掩膜预测网络计算得到视频帧和关键帧对应的掩膜。
首先说明帧差法,上述基于目标视频的时序确定目标视频的每一视频帧与参考关键帧的掩膜的步骤,可以通过步骤A1-步骤A5执行:
步骤A1,获取普通帧和与普通帧对应的参考关键帧。
将待确定掩膜的普通帧称作普通帧t,普通帧t之前的与普通帧t最接近的参考关键帧称为参考关键帧k,根据普通帧t和参考关键帧k确定一个掩膜,这里需要说明的是,t、k和掩膜的大小相同。
步骤A2,将普通帧分为多个窗口。
首先,可以将普通帧t分为多个大小相同或者不同的窗口。举例来说,对于相同窗口的情况,如果t的大小为1280×1280,可以将其分为多个32×32,或者64×64的窗口。
步骤A3,对于每个窗口,计算窗口中各个区域与参考关键帧的对应区域的残差的和。
本步骤中的参考关键帧k可以为普通帧t的前一个关键帧,对于每一个窗口需要计算窗口内每一个像素区域内与k的对应区域残差,残差可以通过下述公式计算:r=|t1-k1|,其中r为一个像素区域的残差,t1为该一个像素区域,k1为k与t1对应的像素区域。将一个窗口的所有的像素区的残差确定后求和,得到该窗口的残差的和。
步骤A4,如果残差的和大于预设的残差阈值,将窗口的每个区域置为1。
如果窗口的残差的和大于预设的残差阈值,则说明该窗口对应的区域在t和k上存在较大差别,则将该窗口的每个区域置为1。其中,残差阈值是人工预先设定的,对于普通的RGB(Red Green Blue,红绿蓝)图像的普通帧,残差阈值的取值范围可以是10-25。
步骤A5,如果残差的和不大于残差阈值,将窗口的每个区域置为0。
如果窗口的残差的和不大于预设的残差阈值,则说明该窗口对应的区域在t和k上的差别较小,因为可以忽视该差别,则将该窗口的每个区域置为0。
该方式中,通过残差法确定普通帧t和参考关键帧k对应的掩膜,残差法计算方法简单,并且可以很好地捕获物体的运动区域。然而,残差法对噪声等微小误差敏感,在噪声较多的场景下会导致窗口的残差的和较高,可能会出现所有窗口均置为1的情况,因此除了残差法之外,还可以通过网络预测法确定掩膜。对于网络预测法,上述基于目标视频的时序确定目标视频的每一视频帧与前一个关键帧的掩膜的步骤,可以通过步骤B1-步骤B3执行:
步骤B1,获取普通帧和与普通帧对应的参考关键帧。
与步骤A1相同,首先需要获取普通帧t和在普通帧之前的参考关键帧k,根据t和k计算对应的掩膜。
步骤B2,将普通帧和参考关键帧输入预先设定的掩膜预测网络,输出普通帧和参考关键帧对应的掩膜值。
掩膜预测网络可以根据输入的两个视频帧计算二者对应的掩膜,我们需要输出的掩膜是二值化的,因此需要掩膜预测网络的最后一层卷积层通过sigmoid函数进行激活,sigmoid函数可以将掩膜预测网络的输出值约束为0-1之间的连续值。
另外,掩膜预测网络的目标是使用时空稀疏性后任务模型的表现尽可能不变差的前提下,使掩膜尽可能稀疏。时空稀疏性是指对于视频数据大部分内容是相同的(冗余的),则有效信息是稀疏的将这种有效信息系数的特性称之为时空稀疏性。掩膜预测网络的损失函数可以包含两部分,一是使用掩膜后任务模型的损失函数,二是对掩膜稀疏性的约束。我们需要掩膜预测网络能够学会预测一种能尽可能稀疏,同时保证任务模型不掉点的掩膜。具体的掩膜预测网络的损失函数可以为下述函数:
Lmask net=Ltask+λ*‖mask‖1;
其中,Lmask net为掩膜预测网络的损失值;Ltask为使用掩膜后任务模型的损失值;‖mask‖1表示对掩膜的L1反函数约束L1范数可以约束mask具有稀疏性,即部分位置被约束为0。λ表示稀疏性约束的权重,通过调节λ的大小可以达到使任务模型表现不变差的同时mask尽可能稀疏的效果,λ由人为设定,可以设定在0.1-0.2之间。
步骤B3,将掩膜预测网络输出的普通帧和参考关键帧对应的掩膜值中,大于预设的掩膜阈值的区域置为1,不大于掩膜阈值的区域置为0。
掩膜预测网络的最后一层卷积层通过sigmoid函数进行激活可以将输出值约束为0-1之间的连续值。之后需要将输出值二值化,也就是将大于预设的掩膜阈值的区域置为1,不大于掩膜阈值的区域置为0。一般来说,掩膜阈值可以0.5。
该方式中,通过预先设定的掩膜预测网络计算普通帧和参考关键帧对应的掩膜,对噪声等微小误差不敏感,可以在任务模型的表现不变差的基础上,得到较为稀疏的掩膜。
另外,在掩膜预测网络计算掩膜的过程中,需要保证掩膜中为1的区域具有一定的连通性,也就是掩膜中为1的区域尽可能是相连的,可以通过先对普通帧和参考关键帧下采样,然后对掩膜预测网络输出的掩膜上采样实现,具体通过步骤C1-步骤C3执行:
步骤C1,下采样普通帧和参考关键帧。
下采样是指将视频帧缩小,假设对M×M大小的视频帧下采样N倍,下采样后的视频帧的大小为(M/N)×(M/N)。
步骤C2,将下采样后的普通帧和参考关键帧输入掩膜预测网络,输出下采样掩膜值。
将下采样N倍后的普通帧和关键目标帧输入掩膜预测网络,输出的掩膜值同样下采样N倍,即如果对普通帧和关键目标的大小为M×M下采样N倍,输出的下采样掩膜值大小为(M/N)×(M/N)。
步骤C3,上采样下采样掩膜值,得到普通帧和参考关键帧对应的掩膜值;其中,下采样和上采样的倍数相同。
输出下采样掩膜值之后对该下采样掩膜值上采样,其中,下采样和上采样的倍数相同,可以得到M×M大小的掩膜值。参见用图6所示的一种掩膜预测网络输出掩膜的方法示意图;如图6所示,将普通帧和参考关键帧下采样N后输入掩膜预测网络,对掩膜预测网络的输出的掩膜值上采样N倍,就可以获得与普通帧和参考关键帧大小相同的掩膜值,之后再将掩膜输入到任务模型进行下一步的计算。如果上采样前的下采样掩膜值的一个像素为1,则上采样后的掩膜值的大小N×N的区域均为1,可以保证掩膜中为1的区域具有一定的连通性。
步骤S506,如果视频帧中掩膜为1的区域的比例大于预设的比例阈值,将视频帧作为关键帧。
比例阈值由人工设定,可以设定在0.7-0.8之间。如果视频帧中掩膜为1的区域的比例大于比例阈值,则说明该视频帧与前一个关键帧存在较大的不同,该视频帧可以作为一个关键帧。
步骤S508,如果视频帧中掩膜为1的区域的比例不大于比例阈值,将视频帧作为普通帧。
如果视频帧中掩膜为1的区域的比例不大于比例阈值,则说明该视频帧与前一个关键帧存在的不同较小,该视频帧可以作为一个普通帧。该方式中,通过计算掩膜,根据掩膜为1的区域的比例划分视频帧,可以合理地将目标视频的初始视频帧作为关键帧。
步骤S510,对于关键帧,将关键帧输入任务模型,输出关键帧的计算结果。
步骤S512,对于普通帧,获取普通帧与参考关键帧之间的掩膜,其中,掩膜具有前景运动区域和背景静止区域;参考关键帧为与普通帧最近的关键帧。
步骤S514,根据掩膜的前景运动区域确定普通帧对应的特征区域。
步骤S516,根据参考关键帧、特征区域和任务模型,获取普通帧的计算结果。
该方式中,通过掩膜的方法将视频帧分为关键帧和普通帧,对于关键帧需要将其输入神经网络进行计算,并保存计算结果。针对普通帧需要计算其和最近的上一个关键帧之间的掩膜,该掩膜为二值化矩阵,其大小和图像一致。通过掩膜的方法划分关键帧和普通帧,可以保证划分后的关键帧与前一个关键帧存在较大的差别。
本发明实施例提供的一种视频数据的处理方法,鉴于视频数据具有很高的时间空间稀疏性,可以利用这一特性来加速神经网络在视频数据上的计算,以达到节省数据带宽、降低功耗、提升视频数据处理速率的目的,同时保证相应任务的表现与逐帧处理的方式的表现相当。
实施例五:
本实施例提供了一种视频数据的处理装置,对应于上述方法实施例,参见图7所示的一种视频数据的处理装置的结构示意图,该装置中的任务模型包括多个卷积层,该装置包括:
目标视频划分模块71,用于将目标视频划分为关键帧和普通帧;
关键帧计算模块72,用于对于关键帧,将关键帧输入任务模型,输出关键帧的计算结果;
掩膜获取模块73,用于对于普通帧,获取普通帧与参考关键帧之间的掩膜,其中,掩膜具有前景运动区域和背景静止区域;参考关键帧为与普通帧最近的关键帧;
特征区域确定模块74,用于根据掩膜的前景运动区域确定普通帧对应的特征区域;
普通帧计算模块75,用于根据参考关键帧、特征区域和任务模型,获取普通帧的计算结果。
进一步地,上述任务模型包括多个卷积层,上述装置还包括卷积层计算模块,用于获取输入信息;输入信息包括:第L层卷积层输出的关键帧对应的关键特征和普通帧对应的普通特征;其中,第一层卷积层的输入信息中的关键特征为关键帧,普通特征为普通帧;对第L层卷积层对应的关键特征进行卷积,输出第L+1层卷积层对应的关键特征;对第L层卷积层对应的普通特征的特征区域进行卷积操作,得到第L+1层卷积层对应的局部特征;特征区域通过掩膜选取;将第L+1层卷积层对应的局部特征和第L+1层卷积层对应的关键特征进行融合,输出第L+1层卷积层对应的普通特征。
进一步地,上述掩膜中为1的区域为前景运动区域,上述掩膜中为0的区域为背景静止区域;上述卷积层计算模块,用于将普通帧中差异区域对应的特征作为特征区域;其中,差异区域为掩膜中为1的区域。
进一步地,上述卷积层计算模块,用于将第L+1层卷积层对应的关键特征中的局部区域对应的特征替换为第L+1层卷积层对应的局部特征;其中,局部区域为第L+1层卷积层对应的局部特征对应的区域。
进一步地,上述目标视频的第一个关键帧为初始视频帧,其余关键帧为与相邻的前一个关键帧的具有差异的区域的比例大于预设阈值的视频帧,除关键帧之外的视频帧为普通帧。
进一步地,上述掩膜获取模块,用于获取普通帧和与普通帧对应的参考关键帧;将普通帧分为多个窗口;对于每个窗口,计算窗口中各个区域与参考关键帧的对应区域的残差的和;如果残差的和大于预设的残差阈值,将窗口的每个区域置为1;如果残差的和不大于残差阈值,将窗口的每个区域置为0。
进一步地,上述掩膜获取模块,用于获取普通帧和与普通帧对应的参考关键帧;将普通帧和参考关键帧输入预先设定的掩膜预测网络,输出普通帧和参考关键帧对应的掩膜值;将掩膜预测网络输出的普通帧和参考关键帧对应的掩膜值中,大于预设的掩膜阈值的区域置为1,不大于掩膜阈值的区域置为0,得到掩膜。
进一步地,上述掩膜获取模块,用于下采样普通帧和参考关键帧;将下采样后的普通帧和参考关键帧输入掩膜预测网络,输出下采样掩膜值;上采样下采样掩膜值,得到普通帧和参考关键帧对应的掩膜值;其中,下采样和上采样的倍数相同。
本发明实施例提供了一种视频数据的处理装置,将目标视频划分为关键帧和普通帧;其中,对于关键帧直接输入任务模型,输出关键帧的计算结果,对于普通帧,则根据掩膜确定普通帧对应的特征区域,根据参考关键帧、特征区域和任务模型,获取普通帧的计算结果。该方式中,没有将普通特征全部输入任务模型,而只是将特征区域输入任务模型,可以在保持卷积计算效果不下降的基础上,减少神经网络的计算量,降低数据带宽和功耗,实现实时计算。
实施例五:
本发明实施例提供了一种电子系统,该电子系统包括:视频采集设备、处理设备和存储装置;视频采集设备,用于获取目标视频;存储装置上存储有计算机程序,计算机程序在被处理设备运行时执行如上述视频数据的处理方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的电子系统的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理设备运行时执行如上述视频数据的处理方法的步骤。
本发明实施例所提供的视频数据的处理方法、装置和电子系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。