一种基于神经网络系统的图像处理方法及神经网络系统与流程

文档序号:17624165发布日期:2019-05-10 23:28阅读:178来源:国知局
一种基于神经网络系统的图像处理方法及神经网络系统与流程

本发明涉及图像处理技术领域,特别是涉及一种基于神经网络系统的图像处理方法及神经网络系统。



背景技术:

当今时代,随着人工智能技术的澎湃发展,其不仅从各个方面影响着人们的生产和生活,同时也推动着世界的发展和进步。为了有效地利用从各个终端采集的信息,对于信息的实时处理要求也不断提高。特别是在安防领域,视频信息的输入量大,计算量大,导致功耗高。然而,多数情况下,视频信息的前后帧之间信息相差并不多,对于传统方案来讲,对视频帧进行处理时,无论帧间信息是否有变化,均会将每帧数据全部输入神经网络系统等算法进行处理,导致需要处理许多重复的数据。



技术实现要素:

鉴于上述问题,本发明提供了一种克服上述问题或至少部分地解决了上述问题的基于神经网络系统的图像处理方法及神经网络系统。

根据本发明的一个方面,提供了一种基于神经网络系统的图像处理方法,应用于视频分析,所述方法包括:

神经网络系统对当前输入的图像帧进行识别,判断当前输入的图像帧是否为基础图像帧;

如果所述当前输入的图像帧不是基础图像帧,则提取所述当前输入的图像帧中与所述基础图像帧不同的第一图像数据,将所述第一图像数据输出至所述神经网络系统;

所述神经网络系统的n-1层卷积层依次对所述第一图像数据进行计算处理,并将处理后的第二图像数据输出至第n层卷积层,所述n为大于等于2的整数;

所述神经网络系统的所述第n层卷积层使用所述第二图像数据替换所述第n层卷积层中存储的第一中间完备数据中与所述第二图像数据所在位置对应的数据,从而得到第三图像数据,所述第n卷积层对所述第三图像数据进行计算处理并输出;其中,所述第一中间完备数据为所述基础图像帧在所述第n层卷积层的计算结果。

可选地,所述神经网络系统的n-1层卷积层依次对所述第一图像数据进行计算处理,具体包括:

所述神经网络系统的第i层卷积层将输入的图像数据与所述第i层卷积层中存储的第二中间完备数据进行比较,提取所述输入的所述图像数据与所述第二中间完备数据不同的第四图像数据,对所述第四图像数据进行计算处理。

可选地,所述神经网络系统的n-1层卷积层依次对所述第一图像数据进行计算处理,具体包括:

所述神经网络系统的第k层卷积层对所述第一图像数据直接进行计算处理。

可选地,所述如果所述当前输入的图像帧不是基础图像帧,则提取所述当前输入的图像帧中与所述基础图像帧不同的第一图像数据,将所述第一图像数据输出至所述神经网络系统,具体包括:

如果所述当前输入的图像帧不是基础图像帧,则基于预设图像数据块划分规则将一帧图像划分为多个数据块;

比较所述当前输入的图像帧的各个数据块与所述基础图像帧对应位置的数据块是否相同,提取所述当前输入的图像帧中与所述基础图像帧对应位置的图像数据不同的数据块,将所述不同的数据块作为所述第一图像数据输出至所述神经网络系统。

可选地,所述神经网络系统的第i层卷积层将输入的图像数据与所述第i层卷积层中存储的第二中间完备数据进行比较,提取所述输入的所述图像数据与所述第二中间完备数据不同的第四图像数据,具体包括:

所述神经网络系统的第i层卷积层基于预设图像数据块划分规则将一帧图像划分为多个数据块;

比较所述输入的图像数据所在数据块与所述第二中间完备数据对应位置的数据块是否相同,提取所述输入的图像数据中与所述第二中间完备数据对应位置的图像数据不同的数据块,将所述不同的数据块作为所述第四图像数据。

可选地,所述如果所述当前输入的图像帧不是基础图像帧,则提取所述当前输入的图像帧中与所述基础图像帧不同的第一图像数据之后,将所述第一图像数据输出至所述神经网络系统之前,还包括:

标识所述第一图像数据所在的数据块的位置;

所述神经网络系统的第i层卷积层将输入的图像数据与第二中间完备数据进行比较,包括:

所述神经网络系统的第i层卷积层将输入的图像数据与所述第二中间完备数据中与所述标识对应的位置的图像数据进行比较。

可选地,所述标识包括:输入的图像数据所在的数据块在整幅图像中的起始地址,以及每个所述数据块的大小。

可选地,所述神经网络系统的所述第n层卷积层使用所述第二图像数据替换所述第n层卷积层中存储的第一中间完备数据中与所述第二图像数据所在位置对应的数据得到第三图像数据,包括:

所述神经网络系统的所述第n层卷积层使用所述第二图像数据替换所述第n层卷积层的所述第一中间完备数据中与所述标识对应的位置的图像数据。

可选地,所述神经网络系统的n-1层卷积层依次对所述第一图像数据进行计算处理,包括:

所述神经网络系统的第n层卷积层使用计算处理得到的图像数据替换所述第n层存储的中间完备数据中与所述标识对应的位置的图像数据,得到所述第n层的完整的图像数据,将所述完整的图像数据作为向下一次卷积层的输出数据。

可选地,所述神经网络系统对当前输入的图像帧进行识别,判断当前输入的图像帧是否为基础图像帧,包括:

所述神经网络系统判断所述当前输入的图像帧与上一个输入的基础图像帧间隔的数据帧的数量是否等于预设数量,如果是,则所述当前输入的图像帧为基础图像帧,如果否,则所述当前输入的图像帧为非基础图像帧;或

所述神经网络系统判断所述当前输入的图像帧的图像中是否包含有预定的文件标识,如果有,则所述当前输入的图像帧为基础图像帧,如果否,则所述当前输入的图像帧为非基础图像帧。

可选地,所述方法还包括:

如果所述当前输入的图像帧为基础图像帧,则将所述当前输入的图像帧的整幅图像数据全部输入到神经网络系统的n层卷积层,由n层所述卷积层对输入的图像数据依次进行计算处理,并在n层所述卷积层的每一层存储计算处理后得到的图像数据。

根据本发明的另一个方面,还提供了一种神经网络系统,包括:输入层和多层卷积层;

所述输入层,用于对当前输入的图像帧进行识别,判断当前输入的图像帧是否为基础图像帧;如果所述当前输入的图像帧不是基础图像帧,则提取所述当前输入的图像帧中与所述基础图像帧不同的第一图像数据,将所述第一图像数据输出至所述多层卷积层;

所述神经网络系统的n-1层卷积层,用于依次对所述第一图像数据进行计算处理,并将处理后的第二图像数据输出至第n层卷积层,所述n为大于等于2的整数;

所述神经网络系统的第n层卷积层,用于使用所述第二图像数据替换所述第n层卷积层中存储的第一中间完备数据中与所述第二图像数据所在位置对应的数据,从而得到第三图像数据,所述第n卷积层对所述第三图像数据进行计算处理并输出;其中,所述第一中间完备数据为所述基础图像帧在所述第n层卷积层的计算结果。

可选地,所述神经网络系统的第i层卷积层,还用于将输入的图像数据与所述第i层卷积层中存储的第二中间完备数据进行比较,提取所述输入的所述图像数据与所述第二中间完备数据不同的第四图像数据,对所述第四图像数据进行计算处理;其中,所述i为小于n的整数。

可选地,所述神经网络系统的第k层卷积,还用于对所述第一图像数据直接进行计算处理。

可选地,所述输入层,还用于判断所述当前输入的图像帧不是基础图像帧时,基于预设图像数据块划分规则将一帧图像划分为多个数据块;

比较所述当前输入的图像帧的各个数据块与所述基础图像帧对应位置的数据块是否相同,提取所述当前输入的图像帧中与所述基础图像帧对应位置的图像数据不同的数据块,将所述不同的数据块作为所述第一图像数据输出至所述神经网络系统。

可选地,所述神经网络系统的第i层卷积层,还用于基于预设图像数据块划分规则将一帧图像划分为多个数据块;

比较所述输入的图像数据所在数据块与所述第二中间完备数据对应位置的数据块是否相同,提取所述输入的图像数据中与所述第二中间完备数据对应位置的图像数据不同的数据块,将所述不同的数据块作为所述第四图像数据。

可选地,所述输入层,还用于标识所述第一图像数据所在的数据块的位置;

所述多层卷积层中的第i层卷积层,还用于将输入的图像数据与所述第二中间完备数据中与所述标识的位置的图像数据进行比较。

可选地,所述标识信息包括:输入的图像数据所在的数据块在整幅图像中的起始地址,以及所述每个数据块的大小。

可选地,所述多层卷积层中的第n层卷积层,还用于使用所述第二图像数据替换所述第n层卷积层的所述第一中间完备数据中与所述标识对应的位置的图像数据。

可选地,所述神经网络系统的第n层卷积层,还用于向下一层卷积层输出数据之前,使用计算处理得到的图像数据替换所述第n层存储的中间完备数据中与输入的标识信息对应的位置的图像数据,得到所述第n层的完整的图像数据,将所述完整的图像数据作为向下一次卷积层的输出数据。

可选地,所述输入层,还用于判断所述当前输入的图像帧与上一个输入的基础图像帧间隔的数据帧的数量是否等于预设数量,如果是,则所述当前输入的图像帧为基础图像帧,如果否,则述当前输入的图像帧为非基础图像帧;或

判断所述当前输入的图像帧的图像中是否包含有预定的文件标识,如果有,则所述当前输入的图像帧为基础图像帧,如果否,则所述当前输入的图像帧为非基础图像帧。

可选地,所述输入层,还用于判断所述当前输入的图像帧为基础图像帧时,将所述当前输入的图像帧的整幅图像数据全部输入到神经网络系统的n层卷积层,由n层卷积层对输入的图像数据依次进行计算处理,并在n层卷积层的每一层存储计算处理后得到的图像数据。

根据本发明的另一个方面,还提供了一种存储设备,其中存储有计算机程序,所述计算机程序在电子设备中运行时,由所述电子设备的处理器加载并执行上述任一项所述的基于神经网络系统的图像处理方法。

根据本发明的另一个方面,还提供了一种电子设备,包括:

处理器,用于运行计算机程序;以及

存储设备,用于存储计算机程序,所述计算机程序在所述电子设备中运行时由处理器加载并执行上述任一项所述的基于神经网络系统的图像处理方法。

本发明提供了一种基于神经网络系统的图像处理方法及神经网络系统,应用于视频分析,该系统通过比对当前帧和基础图像帧之间的变化,提取出差异数据,差异数据只保留变化了的数据信息,在图像处理时,只将差异数据中保留的变化信息输入神经网络系统进行数据分析处理;这样,在神经网络的每一层中,可以隐去前后帧中重复的信息,而只计算改变的信息,由此节省大量的计算资源,降低不必要的信息传输,加快处理速度。另外,还可以在神经网络系统的每层卷积层将保存一份完备的基础图像帧处理过程中产生的图像数据,利用该存储的图像数据,可在每一层处理后恢复为完整的整幅图像数据再次进行比对作为下一层的输入数据,从而保证神经网络系统对图像的处理精度。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了传统基于神经网络的图像处理过程示意图;

图2示出了根据本发明一个实施例的基于神经网络系统的图像处理方法流程示意;

图3示出了根据本发明实施例的数据块划分示意图;

图4示出了根据本发明另一个优选实施例的基于神经网络系统的图像处理过程示意图;

图5示出了根据本发明另一个优选实施例的基于神经网络系统的图像处理方法流程示意图;

图6示出了根据本发明实施例的电子设备的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

图1示出传统的基于神经网络的图像处理过程示意图,由图1可知,将基础图像帧数据输入神经网络后,对于具有l1、l2、l3三层卷积层的神经网络系统来讲,对于接收到的每一帧图像数据,不管各帧数据之间的信息是否有变化,每一层卷积均会对其整幅图像数据进行卷积计算,导致需要处理许多重复的数据,而且未有效发掘数据流本身的差分信息,处理效率低,能耗高,经济性差。

图2示出了根据本发明实施例的基于神经网络系统的图像处理方法的处理流程图,应用于视频的分析,参见图2,该方法至少包括步骤s201至步骤s206。

步骤s201,神经网络系统对当前输入的图像帧进行识别,判断当前输入的图像帧是否为基础图像帧;如果所述当前输入的图像帧为基础图像帧,则执行步骤s202;如果所述当前输入的图像帧不为基础图像帧,则执行步骤s203。

在本实施例中,基础图像帧例如可以通过两种方式进行判断,第一,由神经网络系统判断当前输入的图像帧与上一个输入的基础图像帧间隔的数据帧的数量是否等于预设数量,如果是,则当前输入的图像帧为基础图像帧,如果否,则当前输入的图像帧为非基础图像帧。所述预设数量例如为3-5帧,或是基于不同情况设定的其他数量帧。

可选地,对于基础图像帧的判断还可以采用另外一种判断方式,即神经网络系统判断当前输入的图像帧的图像中是否包含有预定的文件标识,如果有,则当前输入的图像帧为基础图像帧,如果否,则当前输入的图像帧为非基础图像帧。例如:以图像数据中没有人时的帧数据作为基础图像帧、或者以某一个具有固有物体的帧数据作为基础图像帧等等。

实际应用中,还可以根据其他方式对当前输入的图像帧是否为基础图像帧进行判断,本发明不做限定。

步骤s202,将当前输入的图像帧的整幅图像数据依次输入到神经网络系统的n层卷积层,由神经网络系统的n层所述卷积层对所述当前输入的图像数据依次进行计算处理,并在n层卷积层的每一层存储计算处理后的中间完备数据。需要说明的是,对视频进行分析过程中,当判断当前输入的图像帧为基础图像帧时,则将基础图像帧输入神经网络系统中,由各个卷积层依次对该基础图像帧数据进行计算处理并存储相应的处理结果。存储的方式例如可以为:将n层卷积层中指定卷积层的计算处理后的图像数据存储在预设存储设备中,或将所有卷积层的中间完备数据存储在预设存储设备。本发明实施例中的中间完备数据是指,基础图像帧在每个卷积层进行计算处理后的数据,即基础图像帧经由神经网络系统的任意一层卷积层计算处理后的数据可作为该层的中间完备数据进行存储。

本发明实施例的预设存储设备主要用来存储数据,包括神经网络系统中各卷积层的权重和计算的中间数据。预设的存储设备可以为众核系统中的各个处理器核的自用存储器,也可以为设置于承载各处理核的芯片上的公用存储器。其中,众核系统可以是神经网络系统中为每层卷积层分配一个处理器核,每个处理核具有自己的存储器,每层卷积层基于基础图像帧的计算处理后的中间完备数据可以直接存储在相应的核内存储上。存储设备包括但不限于:静态随机存取存储器,动态随机存取存储器,闪存,磁变存储器、阻变存储器、相变存储、忆阻器等非易失性存储器等。而对于神经网络系统中每层卷积层的计算处理可以包括:卷积、pooling、relu等计算操作中的一种或多种,本发明对此不做限定。

步骤s203,将当前输入的图像帧的图像数据与基础图像帧的图像数据进行比较,提取当前输入的图像帧中与基础图像帧不同的第一图像数据,将第一图像数据输入到神经网络系统中。

神经网络系统识别出当前输入的图像帧不是基础图像帧时,会将其与基础图像帧进行比较,将当前输入的图像帧不同于基础图像帧的图像数据作为第一图像数据。

具体进行比较时,例如可以采用预设图像数据块划分规则将当前输入的图像帧这一帧图像划分为多个数据块;比较当前输入的图像帧的各个数据块与基础图像帧对应位置的数据块是否相同,提取所述当前输入的图像帧中与基础图像帧对应位置的图像数据不同的数据块,将上述不同的数据块作为第一图像数据输出至神经网络系统。

对于同一待分析视频来讲,其每一帧数据的像素大小是相同的,因此,本发明实施例中的预设图像数据块可以基于待分析视频包含的帧数据的类型及像素大小等特征属性来划分,同时设定每一个数据块大小,进而将图像数据不同的数据块作为第一图像数据。

图3示意性地示出了输入神经网络系统的图像帧数据的分块示意图,参见图3可知,图像帧数据被等分为56个数据块,在图3中,当前输入的图像帧和基础图像帧的差异数据k1横跨三个数据块,此时将该三个数据块作为第一图像数据输入神经网络的第1层卷积层进行卷积处理。

步骤s204,神经网络系统的n-1层卷积层依次对第一图像数据进行计算处理,并将处理后的第二图像数据输出至第n层卷积层,n为大于等于2的整数,n为神经网络系统包含的卷积层的层数。另外,还可以由神经网络系统的第k层卷积层对第一图像数据直接进行计算处理。其中,第k层卷积层为神经网络系统中n-1层卷积层中的任意一层,其中,i,k均为小于n的整数。

除此之外,为了进一步提升当前输入的图像帧与基础图像帧的图像的差异数据的处理精度,可选的,还可以包括步骤s205,神经网络系统的n-1层卷积层中的至少一层将该层输入的图像数据与已保存的中间完备数据相比较,提取该层输入的图像数据与已保存的中间完备数据不同的差异数据,对该差异数据执行对应的卷积运算并输出之下一个卷积层。

也就是说,在神经网络系统的n-1层卷积层依次对第一图像数据进行计算处理时,n-1层卷积层中的第i层卷积层可以将输入的图像数据与所述第i层卷积层中存储的中间完备数据进行比较,提取输入的图像数据与存储的中间完备数据不同的第四图像数据,对第四图像数据进行计算处理。

上文介绍,可对输入神经网络系统的图像帧数据进行分块以确定与基础图像帧具备差异性的第一图像数据,对于神经网络系统的第i层卷积层,还可以基于预设图像数据块划分规则将一帧图像划分为多个数据块;比较输入的图像数据所在数据块与当前层对应存储的中间完备数据对应位置的数据块是否相同,提取输入的图像数据中与存储的中间完备数据对应位置的图像数据不同的数据块,将所述不同的数据块作为第四图像数据。进一步的,神经网络系统的n-1层卷积层均可以采用如步骤s203所示的预设图像数据块划分规则对该层输入的图像帧划分为多个数据块,进而通过对比数确定出当前输入的图像数据与该层存储的中间完备数据中对应位置图像数据不同的数据块,将所述数据块作为差异数据进行计算处理。

进一步的,神经网络系统的n-1层卷积层均可以采用如步骤s203所示的预设图像数据块划分规则来获取差异数据。

可选地,为了更加准确地对差异数据进行定位及计算,神经网络系统的还可以对第一图像数据所在的数据块的位置进行标识,进而由神经网络系统的n-1层卷积层,依据输入的具有标识的数据块与存储的中间完备数据中与该标识对应位置的图像数据进行比较。具体的,可通过神经网络系统的n-1层卷积层中的第i层卷积层将输入的图像数据与第i层存储的中间完备数据中与所述标识对应的位置的图像数据进行比较。

在本实施例中,数据块的标识优选为数据块的起始地址以及每个数据块的大小。对各数据块进行标识时,可先在整幅图像帧数据中选取起始点并设置起始坐标信息;结合起始坐标信息以及数据块的大小,确定差异数据所在数据块在整幅图像帧中的地址信息。也就是说,当确定了差异数据所在的数据块后,会将差异数据所在的数据块进行标识,进而确定数据块在待处理图像帧的地址,其中,选择的数据块包括所述差异数据,也即差异数据作为标识后的数据块的子集,从而可以提高计算准确性。

神经网络系统各卷积层对输入的图像数据的计算包括但不限于卷积操作、relu、sigmoid、pooling等运算。起始地址可以确定数据块在整幅图像的起始位置,而数据块大小决定了所进行计算处理的数据范围,上述信息可在确定数据块时给出,在进行数据计算处理的同时,一并计算出处理后的输入到下一层图像数据的地址信息,进而将地址信息与当前层的输出数据打包,共同传输至下一卷积层。

在计算地址信息时,由于数据块的长和宽为已知参数,当给定数据块起始点的坐标信息时,所有数据块的地址都可以被推算出来。在图3中差异数据k1,横跨三个数据块。三个数据块的起始地址信息也会随差异数据进入神经网络系统的卷积层,然后计算出对应的输出数据地址信息。

下一层卷积层接收到所输入的图像数据之后,就能获取到需要对比区域范围,进而快速将输入的图像数据的标识所在的数据块与该层存储的中间完备数据中与该标识对应位置的图像数据进行比较。最后由神经网络系统的第n层卷积层使用输入的图像数据替换所述中间完备完备数据中与所述标识对应的位置的图像数据。

在上述实施例中,当判断当前输入的图像帧为基础图像帧之后,会将其输入到神经网络系统中的每层卷积层进行计算处理,并对应存储各卷积层对基础图像帧处理后的中间完备数据,因此,对于神经网络系统的n-1层卷积层中的至少一层将该层输入的图像数据与已保存的中间完备数据相比较,获取差异数据后,对差异数据进行运算。

也就是说,除上文介绍的之外,对于神经网络系统的n-1层卷积层中的第n层卷积层在向下一层卷积层输出数据之前,还可以使用计算处理得到的图像数据替换存储的中间完备数据中与输入的标识对应的位置的图像数据,得到该卷积层的完整的中间数据并作为向下一次卷积层的输出数据,其中,n为小于n的整数。也就是说,对于神经网络系统除最后一层卷积层的任意一层卷积层,还可以将经过该层卷积层计算处理后的数据替换对应存储的中间完备数据中与输入的标识所在位置对应的图像数据,以基于计算处理后的差异数据恢复成完整的图像数据后输出至下一层,进而将完整的图像数据作为该层的输出数据,从而满足对图像精度的要求。

需要说明的是,本发明实施例可以仅包括步骤s204,或仅包括步骤s205,还可以在n-1层卷积层中的一些层执行步骤s204,一些层执行步骤s205,本发明对此不做限定,可以根据实际需要设定执行s204和/或s205。

最后,参见图2可知,本发明实施例提供的方法还可以包括:

步骤s206,神经网络系统的第n层卷积层使用所述第二图像数据替换所述第n层卷积层存储的中间完备数据中与所述第二图像数据位置对应的数据,从而得到第三图像数据,所述第三图像数据为一幅完整的图像数据,对所述第三图像数据进行计算处理并输出。

在最后一层卷积层,将当前输入的图像帧与基础图像帧中具有差异的数据替换最后一层卷积层中存储的中间完备数据,以恢复为一个完整的图像数据,对该图像数据进行最后的卷积运算,从而获得当前输入的图像帧的神经网络的数据处理的完整数据。同样地,对于神经网络系统的第n层卷积层在恢复完整数据时,可使用第二图像数据替换所述第n层卷积层存储的中间完备数据中与输入的标识对应的位置的图像数据,以快的得到完整的图像数据,进而对其计算处理后输出。

本发明实施例提供了一种更加高效地基于神经网络系统的图像处理方法,首先确定当前输入的图像帧是否为基础图像帧,如果是,则先通过神经网络系统进行卷积处理,如果否,则将其与基础图像帧进行比较,提取当前输入的图像帧与基础图像帧不同的第一图像数据,进而将第一图像数据输入神经网络的依次进行卷积层运算,在神经网络系统的最后一层卷积层,使用该层输入的图像数据替换该层存储的中间完备数据中对应位置处的数据,得到新的完整图像的图像数据,对该图像数据进行计算并输出。在本发明实施例中,对后续图像数据进行处理时,隐去前后帧中没有变化的信息,只处理变化的信息,可以节省大量的计算资源,降低不必要的信息传输,加快处理速度。

进一步的,由于在神经网络系统的中间任意层都可以将输入的图像数据与当前层存储的中间完备数据进行比较,提取差异数据,并对差异数据进行计算处理,因此,基于本发明实施例提供的图像处理方法可以更进一步的提升图像处理的精准度,进而满足不同的图像处理需求。

除上述介绍的之外,由于基于基础图像帧计算处理后的中间完备数据也会对应神经网络系统中各层卷积层进行存储,因此,在本实施例中,神经网络可以根据具体需求,在神经网络的任意层根据计算处理后的差异数据替换所存储的中间完备数据中对应位置的数据,并将替换后的整幅图像数据做为该层输出数据输出至下一层卷积层,从而不影响处理的精度。这样不仅可以提高效率、降低系统功耗,还能确保系统的处理精度。

图4、图5分别示出了根据本发明的基于神经网络系统的图像处理过程及方法流程示意图。结合图4、图5可知,本实施例中的神经网络系统包括l1、l2、l3、l4共四层卷积层,其中l1卷积层可同时作为输入层。基于本发明实施例的图像处理流程整体可以包括:

步骤1,输入层接收当前输入的图像帧,判断当前输入的图像帧为基础图像帧数据(即图4中t时刻对应的帧数据),则存储该基础图像帧,并将其依次输入l1-l4卷积层,在神经网络中逐层进行计算处理,并在每层存储计算处理后的中间完备数据;

步骤2,输入层接收当前输入的图像帧,判断当前输入的图像帧不是基础图像帧(即图4中的t+1时刻的帧数据),则将当前输入的图像帧与基础图像帧进行比较,提取当前输入的图像帧中与基础图像帧不同的差异数据,即图中方框中的数据,确定该差异数据所在的数据块,将差异数据块输出至l1卷积层进行计算处理;

步骤3,l1卷积层对差异数据块计算处理后,将计算处理后的数据输入l2卷积层;

步骤4,l2卷积层将l1卷积层输入的图像数据与l2存储的中间完备数据进行比较获得差异数据,并确定差异数据所在数据块,对差异数据块进行计算处理,并将计算处理后的数据作为l2的输出数据后输出至l3卷积层;

步骤4,l3卷积层将l2输入的图像数据与l3存储的中间完备数据进行比较获得差异数据,并确定差异数据所在数据块,对差异数据块进行计算处理,并将计算处理后的数据作为第三层的输出数据后输出至l4;l2、l3卷积层进行计算处理时,只有与之前基础图像帧数据保存的图像数据不同的相关数据才会被输入系统进行处理,这里所谓的相关数据,是指与变化数据有关联的数据,即属于同一数据块的数据;

步骤5,将l3输出的差异数据与l4的中间完备数据融合,用l3输出的差异数据替换l4的中间完备数据中相同位置处的数据,得到一幅新的完整图像的图像数据,对新的完整图像的图像数据进行计算处理,输出计算处理得到的图像数据。

另外,在上述步骤3或4中,l2或l3完成对差异数据块计算处理后,通过在相应层的图像数据中替换有变化的数据,则可以在该卷积层恢复成完整图像的图像数据并输入至下一层,进而在下一层可使用完整图像的图像数据作为输入数据,从而可以保证算法网络的精度。

基于同一发明构思,本发明实施例还提供了一种神经网络系统,可以包括:输入层和多层卷积层;

输入层,用于对当前输入的图像帧进行识别,判断当前输入的图像帧是否为基础图像帧;如果所述当前输入的图像帧不是基础图像帧,则提取所述当前输入的图像帧中与所述基础图像帧不同的第一图像数据,将所述第一图像数据输出至所述多层卷积层;

神经网络系统的n-1层卷积层,用于依次对所述第一图像数据进行计算处理,并将处理后的第二图像数据输出至第n层卷积层,所述n为大于等于2的整数;

神经网络系统的第n层卷积层,用于使用所述第二图像数据替换所述第n层卷积层中存储的第一中间完备数据中与所述第二图像数据所在位置对应的数据,从而得到第三图像数据,所述第n卷积层对所述第三图像数据进行计算处理并输出;其中,所述第一中间完备数据为所述基础图像帧在所述第n层卷积层的计算结果。

在本发明的一个可选实施例中,神经网络系统的第i层卷积层,还用于将输入的图像数据与所述第i层卷积层中存储的第二中间完备数据进行比较,提取所述输入的所述图像数据与所述第二中间完备数据不同的第四图像数据,对所述第四图像数据进行计算处理;其中,所述i为小于n的整数。

在本发明的一个可选实施例中,所述神经网络系统的第k层卷积,还用于对所述第一图像数据直接进行计算处理。

在本发明的一个可选实施例中,所述输入层,还用于判断所述当前输入的图像帧不是基础图像帧时,基于预设图像数据块划分规则将一帧图像划分为多个数据块;

比较所述当前输入的图像帧的各个数据块与所述基础图像帧对应位置的数据块是否相同,提取所述当前输入的图像帧中与所述基础图像帧对应位置的图像数据不同的数据块,将所述不同的数据块作为所述第一图像数据输出至所述神经网络系统。

在本发明的一个可选实施例中,所述神经网络系统的第i层卷积层,还用于基于预设图像数据块划分规则将一帧图像划分为多个数据块;

比较所述输入的图像数据所在数据块与所述第二中间完备数据对应位置的数据块是否相同,提取所述输入的图像数据中与所述第二中间完备数据对应位置的图像数据不同的数据块,将所述不同的数据块作为所述第四图像数据。

在本发明的一个可选实施例中,所述输入层,还用于标识所述第一图像数据所在的数据块的位置;

多层卷积层中的第i层卷积层,还用于将输入的图像数据与第二中间完备数据中与所述标识的位置的图像数据进行比较。

在本发明的一个可选实施例中,所述标识信息包括:输入的图像数据所在的数据块在整幅图像中的起始地址,以及每个数据块的大小。

在本发明的一个可选实施例中,多层卷积层中的第n层卷积层,还用于使用所述第二图像数据替换所述第n层卷积层的第一中间完备数据中与所述标识对应的位置的图像数据。

在本发明的一个可选实施例中,所述神经网络系统的第n层卷积层,还用于向下一层卷积层输出数据之前,使用计算处理得到的图像数据替换所述第n层存储的中间完备数据中与输入的标识信息对应的位置的图像数据,得到所述第n层的完整的图像数据,将所述完整的图像数据作为向下一次卷积层的输出数据。

在本发明的一个可选实施例中,输入层,还用于判断当前输入的图像帧与上一个输入的基础图像帧间隔的数据帧的数量是否等于预设数量,如果是,则当前输入的图像帧为基础图像帧,如果否,则当前输入的图像帧为非基础图像帧;或

判断当前输入的图像帧的图像中是否包含有预定的文件标识,如果有,则当前输入的图像帧为基础图像帧,如果否,则当前输入的图像帧为非基础图像帧。

在本发明的一个可选实施例中,输入层,还用于判断所述当前输入的图像帧为基础图像帧时,将所述当前输入的图像帧的整幅图像数据全部输入到神经网络系统的n层卷积层,由n层卷积层对输入的图像数据依次进行计算处理,并在n层卷积层的每一层存储计算处理后得到的图像数据。

基于同一发明构思,本发明实施例还提供了一种存储设备,其中存储有计算机程序,所述计算机程序在电子设备中运行时,由所述电子设备的处理器加载并执行上述任一实施例所述的基于神经网络系统的图像处理方法。

基于同一发明构思,本发明实施例还提供了一种电子设备,包括:

处理器,用于运行计算机程序;以及

存储设备,用于存储计算机程序,所述计算机程序在所述电子设备中运行时由处理器加载并执行上述任一实施例所述的基于神经网络系统的图像处理方法。

图6是本发明实施例的电子设备的示意图。如图所示,本实施例的电子设备包括处理核111、112-11n以及片上网络121。其中,卷积神经网络中的卷积层分别映射到处理核111-11n。应理解,可以将一个卷积层映射到多个处理核,也可以将多个卷积层映射到一个处理核。

处理核111-11n均与片上网络121连接。片上网络121用于交互所述n个处理核间的数据和外部数据。所述n个处理核中的至少一个处理核执行上述任一实施例所述的基于神经网络系统的图像处理方法。

另外,继续参见图6可知,处理核111还可以包括存储器111a,运算器111b和控制器111c。存储器111a可用于存储程序代码,运算器111b用于电子设备中的程序代码进行多种计算,控制器111c与存储器111a和运算器111b耦合,分别控制存储器111a的数据存储和运算器111b对存储器111a中的数据根据不同的运算逻辑进行数据运算。

根据上述任意一个可选实施例或多个可选实施例的组合,本发明实施例能够达到如下有益效果:

本发明实施例提供了一种基于神经网络系统的图像处理方法及神经网络系统,应用于视频分析,该系统通过比对当前帧和基础图像帧之间的变化,提取出差异数据,差异数据只保留变化了的数据信息,在图像处理时,只将差异数据中保留的变化信息输入神经网络系统进行数据分析处理;同时,为维持系统的处理精度,将保存一份完备的基础图像帧处理过程中产生的中间完备数据,利用该中间完备数据在每一层处理后,再次进行比对,并将受影响而变化了的中间数据再提取出来,作为下一层的输入数据。这样,不仅在神经网络的每一层中,可以隐去前后帧中重复的信息,只计算改变的信息,由此节省大量的计算资源,降低不必要的信息传输,加快处理速度。另一方面,还可以根据具体需求,在神经网络的任意一层恢复成完整的图像数据,将这些完整的图像数据输入后续层进行处理分析,从而保证神经网络系统对图像的处理精度。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的神经网络系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1