CN105787867B - 基于神经网络算法的处理视频图像的方法和装置 - Google Patents
基于神经网络算法的处理视频图像的方法和装置 Download PDFInfo
- Publication number
- CN105787867B CN105787867B CN201610252056.5A CN201610252056A CN105787867B CN 105787867 B CN105787867 B CN 105787867B CN 201610252056 A CN201610252056 A CN 201610252056A CN 105787867 B CN105787867 B CN 105787867B
- Authority
- CN
- China
- Prior art keywords
- data
- image data
- image
- processing
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请提出了一种基于神经网络算法的处理视频图像的方法,包括:确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;对所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;根据所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理。因此,本发明实施例的处理视频图像的方法,通过在利用神经网络算法进行视频图像处理的过程中对每相邻两帧之间的数据进行差分处理,使得被处理的图像中的数据量减少,从而高效地完成视频图像输出。
Description
技术领域
本发明涉及通信领域,尤其涉及通信领域中的基于神经网络算法的处理视频图像的方法和装置。
背景技术
目前,神经网络和深度学习算法已经获得了非常成功的应用,并处于迅速发展的过程中,业界普遍预期新的计算方式有助于实现更为普遍、复杂的智能应用。特别是卷积神经网络(Convolutional Neural Network,简称“CNN”),近年来在图像识别应用领域取得了非常突出的成就,因此业界对CNN算法的优化及高效率实现开始关注并重视,诸如Facebook、Qualcomm、Baidu和Google等公司都投入了CNN优化算法的研究。
Qualcomm公司发布了在下一代芯片中集成神经网络处理模块的计划,提高CNN的处理效率,相关算法的改进,以及芯片实现的效率是其关注和研究的核心问题。
随着应用和实现能力的持续提高,神经网络在视频信息处理中的应用也成为非常普遍的期待。但视频处理带来了极大的计算量和实时计算要求,如何提高视频处理的有效性和效率变得非常重要。
发明内容
有鉴于此,本发明实施例提供了一种基于神经网络算法的处理视频图像的方法和装置,以解决神经网络在视频图像处理过程中的处理效率较低的问题。
第一方面,提供了一种基于神经网络算法的处理视频图像的方法,其特征在于,所述方法包括:
确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;
对所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;
根据所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;
根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理。
可选地,所述根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理,包括:
根据所述神经网络算法,对所述第一图像数据进行线性处理,并对所述线性处理后的所述第一图像数据进行非线性处理。
在第一方面的第一种可能的实现方式中,所述根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理,包括:
根据所述神经网络算法,对所述第一图像数据进行线性处理;
根据所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据;
根据所述神经网络算法,对所述第二图像数据进行非线性处理。
应理解,本发明实施例中的视频图像的处理过程中,可以根据所述线性处理后的第一图像数据和所述前一帧的图像数据确定第二图像数据,即确定当前帧的处理图像数据;也可以不确定所述当前帧的处理图像数据,而是直接输出线性处理后的第一图像数据给后级处理单元,以便于后续直接对图像特征进行提取。
可选地,所述根据所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,包括:
对所述线性处理后的所述第一图像数据和所述前一帧的图像数据进行累加运算,并根据所述累加运算的结果确定所述第二图像数据。
应理解,所述根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理,还可以包括:
根据所述神经网络算法,对所述第一图像数据进行线性处理;
对所述线性处理后的所述第一图像数据进行非线性处理;
根据所述非线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据。
结合第一方面的上述可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述差分数据确定第一图像数据,包括:
确定所述差分数据中绝对值大于差分阈值的数据为第一图像数据。
可选地,所述差分阈值为0。
也就是说,可以设置一个阈值,当该差分数据的绝对值小于该阈值时,认为图像变化不明显,而不对其进行重复处理;当该差分数据大于该阈值时,认为图像变化剧烈,需要对其进行处理。例如当差分阈值为0时,对差分数据为0的地方可以不再进行重复处理,只对差分数据不为0的地方进行数据处理。
结合第一方面的上述可能的实现方式,在第一方面的第三种可能的实现方式中,在所述根据所述神经网络算法,对所述第二图像数据进行非线性处理之前,所述方法还包括:
根据所述视频图像的目标直流分量和所述目标直流分量的误差范围,对所述第二图像数据中超过预设范围的数据进行调整。
可选地,所述对所述第二图像中超过预设范围的数据进行调整,包括:
确定第二图像数据中的与待调整数据相邻或相近的至少一个数据的调整量;
根据所述至少一个数据的调整量的平均值或者加权平均值,对所述待调整数据进行调整。
应理解,本发明实施例中的视频处理装置可以应用在CNN网络前级。这种情况下,对于相对静止、图像变化相对比较小的场景就特别有效。因为CNN网络前级对图像进行处理后图像较接近原始图像的数据信息,在相对静止或图像变化比较少的场景下,两帧图像数据或图像特征数据的变化比较小,相减后,不为0的数据就非常少,能够大大降低后级网络的处理量。
本发明实施例中的视频处理装置还可以应用在CNN网络后级,这种情况下,对于图像中的目标实体在运动但实体对象不变的情况下比较有效。因为到达CNN网络的后级时,对图像的处理主要侧重于图像特征的抽取,是对原始图像的高度抽象。对于运动物体来说,其物体特征基本不变,当到达CNN网络的后级时已经体现为物体的特征。所以即使图像阵列在剧烈变换,但其特征基本稳定。这样的处理可以显著降低全连接层的处理量。
这样,在对该视频图像利用神经网络算法进行处理的过程中,通过对每相邻两帧之间的数据进行差分处理,使得被处理的图像中的数据量大大减少,大大降低处理单元的处理量,从而降低了处理单元的能耗,提高了视频处理的效率和能效比,使得能够高效地完成视频图像的输出。
可选地,所述神经网络算法为卷积神经网络CNN算法。
第二方面,提供了一种基于神经网络算法的处理视频图像的装置,用于执行上述第一方面或第一方面的任意可能的实现方式中的方法。具体地,该装置包括:
确定模块,用于确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;
差分模块,用于对所述确定模块确定的所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;
所述确定模块还用于,根据所述差分模块计算的所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;
处理模块,用于根据所述神经网络算法,对所述确定模块确定的所述第一图像数据进行线性处理和非线性处理。
第三方面,提供了一种通信***,该通信***包括如第二方面或第二方面的任意一种可能的实现方式中的装置,该装置用于:确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;对所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;根据所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;根据神经网络算法,对所述第一图像数据进行线性处理和非线性处理。
第四方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
基于上述技术方案,本发明实施例的处理视频图像的方法和装置,在对该视频图像利用神经网络算法进行处理的过程中,通过对每相邻两帧之间的数据进行差分处理,使得被处理的图像中的数据量大大减少,大大降低处理单元的处理量,从而降低了处理单元的能耗,提高了视频处理的效率和能效比,使得能够高效地完成视频图像的输出。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是神经网络算法的正向计算过程的示意图。
图2是卷积神经网络的计算过程的示意图。
图3是现有技术中的视频图像处理***的示意性框图。
图4是本发明实施例的视频图像处理***的示意性框图。
图5是本发明实施例的基于神经网络算法的处理视频图像的方法的示意性流程图。
图6是本发明另一实施例的处理视频图像的方法的示意性流程图。
图7是本发明实施例的基于神经网络算法的处理视频图像的装置的示意性框图。
图8是本发明另一实施例的处理视频图像的装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是神经网络算法的正向计算过程的示意图。如图1所示,整个计算过程分为k个层次,根据第1层的输入计算出第2层的结果,根据第2层的结果计算出第3层的结果,依此类推,最后计算出第k层的结果,并将该最后结果作为输出。其中,第一层称为输入层,最后一层称为输出层,其他层通常被称为隐层。每一层有若干个节点,分别表示对应层向量的元素。层与层之间是全交叉连接,表示任何一个输出矢量的元素,是由上一层矢量的全部元素计算而成。其中,每个元素的计算公式为:
y=f(x1*w1+x2*w2+…+xn*wn+b) (1)
其中,x1,x2,x3,…xn代表输入矢量的各个元素,y代表输出矢量的其中一个元素。w1,w2,w3,…wn是对应的权矢量,b是偏置,f是一个非线性函数映射关系。
对于输出矢量来说,其中的每一个元素对应的权矢量是不同的,因此,输入矢量和输出矢量之间的数据关系是一种全交叉连接关系。
卷积神经网络CNN是以上通用全连接神经网络的特例,图2是卷积神经网络的计算过程的示意图。如图2所示,左侧是图像输入,右侧是图像输出。将该卷积神经网络应用到图像序列时,其基本做法就是用这个网络重复计算图像序列。由于图像数据的平面结构性特征,前后级的计算关系不需要实现全连接计算关系,而只需要实现卷积关系的连接计算,即输出图像特征的数据只和输入图像特征的一个局部有关,且表达相关性的权矢量可以在全图像平面重复使用。但是这带来了非常大的计算量,计算量和每秒要处理的图像数目成正比。
对于图像序列的处理,传统的视频图像编解码技术中的处理方法的核心特征是搜索图像序列之间图像块的相关性,对于相似的图像数据块,可以只传送运动矢量。这样就大大降低了数据码率,明显提高了视频图像的压缩,传送,重放的效率。
但是这种方法和CNN的处理流程和数据结构不匹配,无法和CNN算法相结合。由于图像小块结构及运动矢量的表示方法不能反映图像多维度,多层次的语义结构。在这种表示方法基础上发展序列图像识别的算法存在实质性的困难。
本发明即围绕神经网络算法在视频信息下的应用,提出一种新的处理方式和结构,通过利用图像序列之间的数据相关性对其进行处理,使得可以大幅度提高视频处理的效率,降低计算量,提高处理的能效比。
应理解,本发明实施例中的视频处理的方法,和现有处理静态图像的算法和硬件架构相容,和基本的通用神经网络算法和硬件架构相容。
基于图2所描述的应用场景,本发明实施例的基于神经网络算法的视频处理方法是对现有技术中的一个或多个缓存单元和处理单元进行改进,以使得处理序列图像的运算效率提高。图3是现有技术中的基于神经网络算法的视频处理装置的示意性框图,其中包括图像输入单元、至少一个缓存单元、至少一个处理单元和结果输出单元,该至少一个缓存单元和该至少一个处理单元对前级输入的图像序列中的所有数据都进行计算,处理量非常大。例如,处理单元0对保存在缓存单元0中的第一帧图像中的每一个像素点的数据进行处理,处理单元1对保存在缓存单元1中的第二帧图像中的每一个像素点的数据进行处理,依次类推,最终处理单元n对保存在缓存单元n中的第n帧图像中的每一个像素点的数据进行处理,最后将视频处理后的结果输出。
图4是本发明实施例的视频处理装置的示意性框图。图4中示出了任意的两帧图像之间的数据的处理过程。图3中的缓存单元和处理单元中的任意一组或多组缓存单元和处理单元可以被改变为如图4所示的结构。图4中包括前级输入单元10、缓存单元20、辅助缓存单元30、差分单元40、线性处理单元50、恢复单元60、恢复缓存单元70、非线性处理单元80和输出后级单元90。其中,缓存单元20和辅助缓存单元30分别用于保存当前帧的数据和前一帧的数据,差分单元40用于对数据进行差分处理,线性处理单元50用于对数据进行线性处理,该线性处理可以是正常神经网络计算中所需的线性处理部分,恢复缓存单元70用于保存恢复处理后的数据,非线性处理单元80用于对数据进行非线性变换,该非线性变换可以是正常神经网络计算中所需的非线性处理部分。下面结合图5具体描述本发明实施例的视频处理方法。
图5是本发明实施例的基于神经网络算法的视频处理方法的示意性流程图。如图5所示,该方法包括:
510,确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;
520,对所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;
530,根据所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;
540,根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理。
具体地说,从前级输入单元10来的数据被输入到缓存单元20和辅助缓存单元30中,缓存单元20用于保存当前帧的原始图像数据,辅助缓存单元30用于保存前一帧的图像数据。差分单元40分别从缓存单元20和辅助缓存单元30中读取当前帧的原始图像数据和前一帧的图像数据,并对当前帧的原始图像数据和前一帧的图像数据进行差分运算,即进行减法操作,并输出该差分运算的结果到线性处理单元50。线性处理单元50根据该差分运算获得的差分数据,确定当前帧的原始图像数据中需要进行数据处理的图像数据,从而只对该需要进行数据处理的当前帧的原始图像数据进行数据处理,例如在线性处理单元50中进行线性处理,并在进行线性处理后将线性处理后的结果输入非线性处理单元80进行非线性变换。最后输出后级单元90输出非线性处理后的视频图像数据,以用于后级处理单元进行特征提取。
其中,530中的第一图像数据指的是根据差分运算的结果在当前帧的原始图像数据中确定的需要进行处理的数据,该差分运算的结果可以表示当前帧图像相对于前一帧图像的变化程度,差分数据的绝对值越小表明当前帧图像相对于前一帧图像的变化程度越小,差分数据的绝对值越大表明当前帧图像相对于前一帧图像的变化程度越大。
这里的图像数据,指的是视频图像中每一个像素位置上的像素值,该像素值表示视频图像中每一个像素位置的灰度,对于彩色图像常用红、绿、蓝三原色分量表示。顺序地抽取每一个像素的信息就可以用一个离散的数据阵列来代表一幅连续的图像。另外,该图像的数据阵列可以是二维图像序列,也可以是在神经网络中经过特征提取后的一维图像特征序列,本发明对此不做限定。
如图6所示的本发明另一实施例的处理视频图像的方法的示意性流程图。在540中,所述根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理,包括:
541,根据所述神经网络算法,对所述第一图像数据进行线性处理;
542,根据所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据;
543,根据所述神经网络算法,对所述第二图像数据进行非线性处理。
具体地说,当根据当前帧的原始图像数据和前一帧的图像数据之间的差分数据获取第一图像数据后,线性处理单元50首先对该第一图像数据进行线性处理,该线性处理方式为神经网络算法中的线性处理方式,恢复单元60可以根据该处理后的第一图像数据以及前一帧的图像数据,确定第二图像数据,从而根据神经网络算法对该第二图像数据进行非线性处理,该非线性处理方式为神经网络算法中的非线性处理方式。
其中,恢复单元60根据该处理后的第一图像数据以及前一帧的图像数据确定第二图像数据,可以是通过对该处理后的第一图像数据以及前一帧的图像数据进行恢复处理而得到第二图像数据。也就是说,通过对当前帧的原始图像数据中的第一图像数据进行线性处理后,在前一帧的图像数据的基础上,将该第一图像数据恢复成当前帧的处理图像数据,即第二图像数据。该当前帧的处理图像数据中包括处理后的第一图像数据,以及当前帧的原始图像数据中相对于前一帧的图像数据没有发生变化从而没有进行线性处理的那一部分图像数据。
应理解,在本发明实施例中所述的视频图像的处理过程中,恢复单元60可以根据所述线性处理后的第一图像数据和所述前一帧的图像数据确定第二图像数据,即确定当前帧的处理图像数据;也可以不获取所述当前帧的处理图像数据,而是直接输出第一图像数据给非线性处理单元80,以便于后续过程中后级处理单元直接进行图像特征的提取。
也就是说,恢复单元60能够从差分信息中恢复原始信息,且由于偏置信息随时间变换是非常缓慢的,并且相邻特征间存在很强的相关性,因此恢复单元60经过恢复处理并通过自适应偏置调整,可以从差分运算的处理结果中恢复正常的特征数据,能够复原对应静态图像的特征。但由于很多应用场景下,基于运动特征的提取就能满足应用的需求,因此可以不对视频图像进行恢复处理,即不需要确定第二图像数据,当不做恢复处理时,能够简化处理过程,并直接聚焦运动特征。
处理后的恢复单元60,其意义在于恢复等价于原始算法的处理结果,例如通常可以是通过累加还原差分数据。这种恢复在一些情况下是需要的,但也不是必需的。这取决于应用对特征处理、识别的要求。其对应的意义在于是提取、识别静态特征,还是提取、识别随时间变化的特征。在很多应用场景下,恢复处理对于直接提取、识别随时间变化的特征是更加有效的。
可选地,作为另一个实施例,在542中,所述根据所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,可以包括:
对所述线性处理后的所述第一图像数据和所述前一帧的图像数据进行累加运算,并根据所述累加运算的结果确定所述第二图像数据。
应理解,在540中,所述根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理,还可以包括:
根据所述神经网络算法,对所述第一图像数据进行线性处理;
对所述线性处理后的所述第一图像数据进行非线性处理;
根据所述非线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据。
具体地,恢复单元60在根据所述第一图像数据和前一帧的图像数据,确定第二图像数据时,可以是根据线性处理后的第一图像数据和前一帧的图像数据确定第二图像数据,也可以是根据非线性处理后的所述第一图像数据和前一帧的图像数据确定第二图像数据。
换句话说,可以在线性处理单元50对第一图像数据进行线性处理后,恢复单元60先根据该线性处理后的第一图像数据确定第二图像数据,然后非线性处理单元80再对该第二图像数据进行非线性处理,之后输出;也可以是线性处理单元50对第一图像数据进行线性处理后,非线性处理单元80先对该线性处理后的第一图像数据进行非线性处理,恢复单元60再根据该非线性处理后的第一图像数据确定第二图像数据,然后输出第二图像数据。本发明对该步骤的顺序不做限定。其中,当恢复单元60在线性处理单元50对差分数据进行线性处理之后,根据线性处理后的第一图像数据和前一帧的图像数据对当前帧的原始图像数据进行恢复处理时,恢复单元60可以通过对该线性处理的结果和恢复后的前一帧的图像数据进行累加运算的方式,根据累加运算的结果对当前帧的原始图像数据进行恢复处理。恢复后的当前帧的图像数据即为累加运算后得到的数据。之后再对该恢复后的当前帧的图像数据进行非线性处理,以获得待输出的当前帧的数据。
另外,恢复单元60在对当前帧的原始图像数据进行恢复处理后,可以将获得的第二图像数据存入恢复缓存70,以供下一帧的处理过程使用。
应注意,当根据线性处理或非线性处理后的第一图像数据和所述前一帧的图像数据确定第二图像数据时,这里用到的前一帧的图像数据可为前一帧的原始图像数据;也可以为经过处理后的前一帧的图像数据,即前一帧的处理图像数据。在对前一帧的原始图像数据进行处理的过程中,缓存恢复单元70中就可以保存该前一帧的处理图像数据,以供当前帧的恢复处理使用。
可选地,作为另一个实施例,所述根据所述差分数据确定第一图像数据,包括:
确定所述差分数据中绝对值大于差分阈值的数据为第一图像数据。
可选地,所述差分阈值为0。
举例来说,进行该差分运算后,视频图像中某一个像素点的值为0,那么表示当前帧图像中的该像素点上的数据相对于前一帧图像的该像素点上的数据而言,没有发生变化。该差分运算后获得的该差分数据的值越大,说明这相邻的两帧之间在该像素点处的变化越剧烈。在一般的神经网络算法中,是对所有像素点的数据都进行数据处理,以获取处理后的视频图像。但由于图像序列或图像特征序列存在时间上的相关性,很多地方都是重复的,也就是差分运算所获得的差分数据为0的地方表示没有变化,对于这些重复的地方就不需要根据神经网络算法再重复处理,而仅对于有差别的地方进行处理。
应理解,这里可以确定差分数据为0的地方是重复的地方,从而可以不再进行重复处理,只对差分数据不为0的地方进行数据处理;也可以设置该差分阈值为其他值,当该差分数据的绝对值小于该差分阈值时,认为图像变化不明显,而不对其进行重复处理,当该差分数据的绝对值大于该差分阈值时,认为图像变化剧烈,需要对其进行处理。例如该差分阈值可以设置为2,当差分数据的绝对值小于或等于2时,认为相邻两帧的图像变化可以忽略,从而可以不对该点数据进行处理,当差分数据大于2时才认为该图像变化明显,需要对其进行处理,本发明对此不作限定。
因此,本发明实施例的处理视频图像的方法,在对该视频图像利用神经网络算法进行处理的过程中,通过对每相邻两帧之间的数据进行差分处理,使得被处理的图像中的数据量大大减少,大大降低处理单元的处理量,从而降低了处理单元的能耗,提高了视频处理的效率和能效比,使得能够高效地完成视频图像的输出。
恢复缓存单元70中保存的数据内容的初始值可以为0。由于累加运算并不一定能够完全准确地恢复当前帧数据的原始值,还可能存在基准偏差,也称为偏置。因此,可选地,在所述根据所述神经网络算法,对所述第二图像数据进行非线性处理之前,所述方法还包括:
根据所述视频图像的目标直流分量和所述目标直流分量的误差范围,对所述第二图像数据中超过预设范围的数据进行调整。
具体地,为了使视频图像中的数据的直流分量保持稳定,可以为视频图像中的数据预设一个范围,当数据超过该预设范围时,可以通过对该数据进行调整使该数据处于预设范围内,从而保证该数据的直流分量能够等于目标直流分量。但是,由于对第二图像数据中超过预设范围的数据进行调整后,该数据的直流分量不一定能够准确地等于已设定的目标直流分量,因此这里允许一个误差范围,以使得处于目标直流分量左右两侧的误差范围内的数据,都可以近似地认为满足调整后的直流分量的要求,该误差范围可以是根据视频图像处理的精度或最终需要达到的视频图像效果等因素确定的。
举例来说,假定预设范围为[T1,T2],视频图像的目标直流分量为t,允许目标直流分量存在误差,例如误差范围设为[0,Δt],那么可以允许调整后的数据的直流分量处于范围[t-Δt,t+Δt]内。在恢复处理后的第二图像数据中,如果待调整的数据为T3,且T3大于T2,可以将T3调整至T2或T2左右,以使得该待调整的数据的直流分量处于[t-Δt,t+Δt]范围内。理想情况下,待调整的数据的直流分量能够等于目标直流分量t。例如,假设T1=0,T2=256,t=128,Δt=10,即预设范围为[0,256],视频图像的目标直流分量为124,允许调整后的数据的直流分量处于[120,128]内。如果恢复后的当前帧图像中的某一个像素点的数据是300,这时为了保证数据的恢复质量,可以将该数据300设置为256,从而使当前帧的处理图像数据中的该像素点的数据的直流分量处于[120,128]的范围内,其中直流分量等于124时为最佳情况。
这样,通过对相邻帧之间的图像处理过程中的累加运算的结果进行调整,可以改善数据的恢复质量。
可选地,所述对所述第二图像数据中的每一个数据进行调整,包括:
在确定第二图像数据中的与待调整数据相邻或相近的至少一个数据的调整量;
根据所述至少一个数据的调整量的平均值或者加权平均值,对所述待调整数据进行调整。
具体地说,该调整量可以反映为恢复单元60对单个数据直流分量的正确估计,这种估计可以被相邻的数据利用,来形成更为全局、更为准确的直流分量估计。即实际的调整量,可以根据单个数据的调整量决定,可以参考相邻数据的调整量,还可以采用更灵活的策略来综合调整量,例如根据多个相邻或相近的数据的调整量的平均值或者加权平均值对所述待调整数据进行调整,还可以采用其他更复杂有效的方式来确定对该第二图像数据进行调整的调整量,本发明对此不作限定,可以灵活地选择策略来确定恢复后的当前帧的图像数据的调整量,从而对其进行综合调整。
举例来说,假设预设范围为[0,256],如果当前待调整的数据为286,那么将其调整到256时其对应的调整量为30。这时,可以确定其调整量为30,但是考虑到如果该点具有噪声等影响,这时可以参考其相邻或相近的一个或多个数据的调整量来确定该待调整数据的调整量。例如,如果与待调整数据相邻的某个数据的调整量为5,那么,可以根据30和5进行平均或加权平均,如果较信任当前帧的调整量,可以为该当前帧分配较大的权重,假设这里为当前待调整数据的调整量分配的权值为0.8,为相邻的该数据的调整量分配的权值为0.2,那么这时确定30×0.8+5×0.2=34为该待调整数据的调整量,从而将待调整的数据从276调整至242。
还应理解,上述的本发明实施例中的视频图像处理装置,可以用于CNN网络的前端,即替换现有技术中的CNN网络前端的缓存单元和处理单元,还可以放置在CNN网络的后端,即替换现有技术中的CNN网络后端的缓存单元和处理单元。实际应用***中可以根据具体情况进行设置。
当本发明实施例中的视频处理装置应用在CNN网络前级时,这种情况下,对于相对静止、图像变化相对比较小的场景就特别有效。因为CNN网络前级对图像进行处理后图像较接近原始图像的数据信息,在相对静止或图像变化比较少的场景下,两帧图像数据或图像特征数据的变化比较小,相减后,不为0的数据就非常少,能够大大降低后级网络的处理量。
举例来说,如果当前处于监控的情境下,进入视野的目标实体在不断改变,例如可以是人、车辆、小狗或小猫等,这些目标实体在整个实体对象中只占局部的小区域面积,两帧图像数据或图像特征数据的变化比较小,相减后不为0的数据就较少,只需要对该局部区域的像素点进行处理即可,能够大大降低后级网络的处理量。
当本发明实施例中的视频处理装置应用在CNN网络后级时,这种情况下,对于图像中的目标实体在运动但实体对象不变的情况下比较有效。因为到达CNN网络的后级时,对图像的处理主要侧重于图像特征的抽取,是对原始图像的高度抽象。对于运动物体来说,其物体特征基本不变,当到达CNN网络的后级,已经体现为物体的特征。所以即使图像阵列在剧烈变换,但其特征基本稳定。这样的处理可以显著降低全连接层的处理量。
举例来说,如果当前对一个运动员的运动过程进行拍摄,该运动员的特征基本不变,到达CNN网络的后级时,已经可以体现出该运动员的特征,例如该运动员的衣服颜色、性别等,即使该运动员在剧烈变化,但其特征基本稳定,因此可以不进行恢复处理,直接聚焦运动特征,以降低全连接层的处理量。
实际情况下,可以根据应用场景的不同、实际运动序列图像不变特征的提取和处理情况,在网络不同的层次下,按需要***调整和改进后的缓存单元和处理单元等,以取得最佳的效果。
还应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图7是本发明一个实施例的基于神经网络算法的处理视频图像的装置的结构框图。图7所示的装置700能够用于执行前述图5和图6的方法实施例中的各个过程。如图7所示,该处理视频图像的装置包括确定模块710、差分模块720和处理模块730。
确定模块710,用于确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;
差分模块720,用于对所述确定模块确定的所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;
确定模块710还用于,根据所述差分模块计算的所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;
处理模块730,用于根据所述神经网络算法,对所述确定模块确定的所述第一图像数据进行线性处理和非线性处理。
因此,本发明实施例的处理视频图像的装置,在对该视频图像利用神经网络算法进行处理的过程中,通过对每相邻两帧之间的数据进行差分处理,使得被处理的图像信息中的数据量大大减少,大大降低处理单元的处理量,从而降低了处理单元的能耗,提高了视频处理的效率和能效比,使得能够高效地完成视频图像的输出。
如图8所示的本发明另一实施例的处理视频图像的装置的示意性框图,所述处理模块730还包括:
线性处理单元731,用于根据所述神经网络算法,对所述第一图像数据进行线性处理;
确定单元732,用于根据所述线性处理单元进行所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据;
非线性处理单元733,用于根据所述神经网络算法,对所述确定单元确定的所述第二图像数据进行非线性处理。
可选地,作为另一个实施例,确定单元732具体用于:
对所述线性处理后的所述第一图像数据和所述前一帧的图像数据进行累加运算,并根据所述累加运算的结果确定所述第二图像数据。
可选地,作为另一个实施例,确定模块710具体用于:
确定所述差分数据中绝对值大于差分阈值的数据为第一图像数据。
可选地,作为另一个实施例,所述差分阈值为0。
可选地,在非线性处理单元733对确定单元732确定的所述第二图像数据进行非线性处理之前,所述处理模块730还包括调整单元734,用于:
根据所述视频图像的目标直流分量和所述目标直流分量的误差范围,对所述第二图像数据中超过预设范围的数据进行调整。
可选地,所述调整单元具体用于:
在确定第二图像数据中的与待调整数据相邻或相近的至少一个数据的调整量;
根据所述至少一个数据的调整量的平均值或者加权平均值,对所述待调整数据进行调整。
应理解,在本发明实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
还应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种基于神经网络算法的处理视频图像的方法,其特征在于,所述方法包括:
确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;
对所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;
根据所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;
根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理;
所述根据所述神经网络算法,对所述第一图像数据进行线性处理和非线性处理,包括:
根据所述神经网络算法,对所述第一图像数据进行线性处理;
根据所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据;
根据所述神经网络算法,对所述第二图像数据进行非线性处理。
2.如权利要求1所述的方法,其特征在于,所述根据所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,包括:
对所述线性处理后的所述第一图像数据和所述前一帧的图像数据进行累加运算,并根据所述累加运算的结果确定所述第二图像数据。
3.如权利要求1所述的方法,其特征在于,在所述根据所述神经网络算法,对所述第二图像数据进行非线性处理之前,所述方法还包括:
根据所述视频图像的目标直流分量和所述目标直流分量的误差范围,对所述第二图像数据中超过预设范围的数据进行调整。
4.如权利要求3所述的方法,其特征在于,所述对所述第二图像数据中超过预设范围的数据进行调整,包括:
确定第二图像数据中的与待调整数据相邻或相近的至少一个数据的调整量;
根据所述至少一个数据的调整量的平均值,对所述待调整数据进行调整。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述根据所述差分数据确定第一图像数据,包括:
确定所述差分数据中绝对值大于差分阈值的数据为第一图像数据。
6.如权利要求5中任一项所述的方法,其特征在于,所述差分阈值为0。
7.一种基于神经网络算法的处理视频图像的装置,其特征在于,所述装置包括:
确定模块,用于确定视频图像中的当前帧的原始图像数据和前一帧的图像数据;
差分模块,用于对所述确定模块确定的所述当前帧的原始图像数据和所述前一帧的图像数据进行差分运算得到差分数据,所述差分数据表示当前帧图像相对于前一帧图像的变化程度;
所述确定模块还用于,根据所述差分模块计算的所述差分数据确定第一图像数据,所述第一图像数据的数据量少于所述当前帧的原始图像数据的数据量;
处理模块,用于根据所述神经网络算法,对所述确定模块确定的所述第一图像数据进行线性处理和非线性处理;
所述处理模块包括:
线性处理单元,用于根据所述神经网络算法,对所述第一图像数据进行线性处理;
确定单元,用于根据所述线性处理单元进行所述线性处理后的所述第一图像数据和所述前一帧的图像数据,确定第二图像数据,所述第二图像数据为当前帧的处理图像数据;
非线性处理单元,用于根据所述神经网络算法,对所述确定单元确定的所述第二图像数据进行非线性处理。
8.如权利要求7所述的装置,其特征在于,所述确定单元具体用于:
对所述线性处理后的所述第一图像数据和所述前一帧的图像数据进行累加运算,并根据所述累加运算的结果确定所述第二图像数据。
9.如权利要求7所述的装置,其特征在于,在所述非线性处理单元对所述确定单元确定的所述第二图像数据进行非线性处理之前,所述处理模块还包括调整单元,用于:
根据所述视频图像的目标直流分量和所述目标直流分量的误差范围,对所述第二图像数据中超过预设范围的数据进行调整。
10.如权利要求9所述的装置,其特征在于,所述调整单元具体用于:
确定第二图像数据中的与待调整数据相邻或相近的至少一个数据的调整量;
根据所述至少一个数据的调整量的平均值,对所述待调整数据进行调整。
11.如权利要求7至10中任一项所述的装置,其特征在于,所述确定模块具体用于:
确定所述差分数据中绝对值大于差分阈值的数据为第一图像数据。
12.如权利要求11中任一项所述的装置,其特征在于,所述差分阈值为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610252056.5A CN105787867B (zh) | 2016-04-21 | 2016-04-21 | 基于神经网络算法的处理视频图像的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610252056.5A CN105787867B (zh) | 2016-04-21 | 2016-04-21 | 基于神经网络算法的处理视频图像的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105787867A CN105787867A (zh) | 2016-07-20 |
CN105787867B true CN105787867B (zh) | 2019-03-05 |
Family
ID=56397261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610252056.5A Active CN105787867B (zh) | 2016-04-21 | 2016-04-21 | 基于神经网络算法的处理视频图像的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105787867B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229268A (zh) * | 2016-12-31 | 2018-06-29 | 商汤集团有限公司 | 表情识别及卷积神经网络模型训练方法、装置和电子设备 |
WO2018169639A1 (en) * | 2017-03-17 | 2018-09-20 | Nec Laboratories America, Inc | Recognition in unlabeled videos with domain adversarial learning and knowledge distillation |
US10839259B2 (en) * | 2017-10-27 | 2020-11-17 | Google Llc | Attention-based image generation neural networks |
CN109833061B (zh) * | 2017-11-24 | 2020-08-04 | 无锡祥生医疗科技股份有限公司 | 基于深度学习的优化超声成像***参数的方法 |
CN110147702B (zh) * | 2018-07-13 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 一种实时视频的目标检测与识别方法和*** |
US10771698B2 (en) | 2018-08-31 | 2020-09-08 | Qualcomm Incorporated | Image stabilization using machine learning |
CN109740508B (zh) * | 2018-12-29 | 2021-07-23 | 北京灵汐科技有限公司 | 一种基于神经网络***的图像处理方法及神经网络*** |
CN109887006A (zh) * | 2019-01-29 | 2019-06-14 | 杭州国芯科技股份有限公司 | 一种基于帧差法加速神经网络运算的方法 |
CN110189242B (zh) * | 2019-05-06 | 2023-04-11 | 阿波罗智联(北京)科技有限公司 | 图像处理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6148101A (en) * | 1995-11-27 | 2000-11-14 | Canon Kabushiki Kaisha | Digital image processor |
CN102722982A (zh) * | 2012-03-30 | 2012-10-10 | 上海市金山区青少年活动中心 | 基于背景与帧间差分算法的车流及其运动状态检测方法 |
CN102867177A (zh) * | 2012-09-19 | 2013-01-09 | 无锡慧眼电子科技有限公司 | 一种基于图像灰度匹配的人数统计方法 |
-
2016
- 2016-04-21 CN CN201610252056.5A patent/CN105787867B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6148101A (en) * | 1995-11-27 | 2000-11-14 | Canon Kabushiki Kaisha | Digital image processor |
CN102722982A (zh) * | 2012-03-30 | 2012-10-10 | 上海市金山区青少年活动中心 | 基于背景与帧间差分算法的车流及其运动状态检测方法 |
CN102867177A (zh) * | 2012-09-19 | 2013-01-09 | 无锡慧眼电子科技有限公司 | 一种基于图像灰度匹配的人数统计方法 |
Non-Patent Citations (1)
Title |
---|
"一种基于脉冲耦合神经网络的运动目标提取方法";叶谷平等;《四川大学学报(自然科学版)》;20140112;第51卷(第1期);第69-75页 |
Also Published As
Publication number | Publication date |
---|---|
CN105787867A (zh) | 2016-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105787867B (zh) | 基于神经网络算法的处理视频图像的方法和装置 | |
CN111798400B (zh) | 基于生成对抗网络的无参考低光照图像增强方法及*** | |
Li et al. | A closed-form solution to photorealistic image stylization | |
CN107527337B (zh) | 一种基于深度学习的视频对象移除篡改检测方法 | |
CN104680510A (zh) | Radar视差图优化方法、立体匹配视差图优化方法及*** | |
CN111179187B (zh) | 基于循环生成对抗网络的单幅图像去雨方法 | |
TWI226193B (en) | Image segmentation method, image segmentation apparatus, image processing method, and image processing apparatus | |
CN110222760A (zh) | 一种基于winograd算法的快速图像处理方法 | |
CN109670491A (zh) | 鉴别人脸图像的方法、装置、设备和存储介质 | |
CN111179196B (zh) | 一种基于分而治之的多分辨率深度网络图像去高光方法 | |
CN110418139B (zh) | 一种视频超分辨修复方法、装置、设备及存储介质 | |
CN111951154A (zh) | 包含背景和介质的图片的生成方法及装置 | |
CN109685805A (zh) | 一种图像分割方法及装置 | |
Zheng et al. | T-net: Deep stacked scale-iteration network for image dehazing | |
Vašata et al. | Image inpainting using Wasserstein generative adversarial imputation network | |
Zhang et al. | Dynamic multi-scale network for dual-pixel images defocus deblurring with transformer | |
CN105898279B (zh) | 一种立体图像质量客观评价方法 | |
Liu et al. | Facial image inpainting using multi-level generative network | |
CN110533608A (zh) | 图像条带噪声抑制方法及其装置、电子设备、存储介质 | |
CN109978928B (zh) | 一种基于加权投票的双目视觉立体匹配方法及其*** | |
CN116823647A (zh) | 基于快速傅里叶变换和选择性注意力机制的图像补全方法 | |
Wang et al. | INSPIRATION: A reinforcement learning-based human visual perception-driven image enhancement paradigm for underwater scenes | |
CN112288748B (zh) | 一种语义分割网络训练、图像语义分割方法及装置 | |
Xu et al. | Weighted lp norm sparse error constraint based ADMM for image denoising | |
CN113298814A (zh) | 一种基于渐进指导融合互补网络的室内场景图像处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |