图像风格化处理方法、装置、设备及存储介质与流程

文档序号:24398304发布日期:2021-03-26 23:37阅读:259来源:国知局
图像风格化处理方法、装置、设备及存储介质与流程

1.本公开实施例涉及神经网络技术,尤其涉及一种图像风格化处理方法、装置、设备及存储介质。


背景技术:

2.随着电子设备拍照功能的不断发展,电子设备可以在用户拍摄图像后,对用户拍摄的图像进行风格化处理,从而提高拍照的趣味性。当前,在对拍摄的图像进行风格化处理时,通常需要先对拍摄图像进行图像分割,然后基于分割结果进行图像的风格化处理。


技术实现要素:

3.本公开提供一种图像风格化处理方法、装置、设备及存储介质,以降低神经网络模型在进行图像分割时的计算量和存储量,进而降低对运行该神经网络模型的电子设备的性能要求。
4.第一方面,本公开实施例提供了一种图像风格化处理方法,该方法包括:
5.获取摄像头采集到的图像数据,输入神经网络模型;
6.获取所述神经网络模型输出的所述图像数据的分割结果;
7.根据所述分割结果,对所述图像数据进行风格化处理;
8.其中,所述神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的;所述训练好的初始网络模型中包括至少一个三层数据处理块,所述至少一个三层数据处理块中包含三个数据处理层,且所述三个数据处理层的中间数据处理层为组合数据处理层,所述组合数据处理层输入通道数和输出通道数维度相同。
9.第二方面,本公开实施例还提供了一种图像风格化处理装置,该装置包括:
10.图像数据获取模块,用于获取摄像头采集到的图像数据,输入神经网络模型;
11.分割结果获取模块,用于获取所述神经网络模型输出的所述图像数据的分割结果;
12.风格化处理模块,用于根据所述分割结果,对所述图像数据进行风格化处理;
13.其中,所述神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的;所述训练好的初始网络模型中包括至少一个三层数据处理块,所述至少一个三层数据处理块中包含三个数据处理层,且所述三个数据处理层的中间数据处理层为组合数据处理层,所述组合数据处理层输入通道数和输出通道数维度相同。
14.第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:
15.一个或多个处理器;
16.存储器,用于存储一个或多个程序;
17.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理
是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
31.需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
32.需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。本公开实施方式中的多方之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
33.随着电子设备拍照功能的不断发展,电子设备可以在用户拍摄图像后,对用户拍摄的图像进行风格化处理,从而提高拍照的趣味性。当前,在对拍摄的图像进行风格化处理时,通常需要先对拍摄图像进行图像分割,然后基于分割结果进行图像的风格化处理。
34.现有技术在对拍摄图像分割时,常用的方法是基于大量样本图像数据训练神经网络模型,由训练好的神经网络模型直接来进行图像分割操作。但是,训练好的神经网络模型内部参数通常比较复杂,其在进行图像分割处理时需要占用一定的计算量和存储量。此时若采用训练好的神经网络模型对复杂图像数据进行图像分割时,会导致该神经网络模型的计算量和存储量急剧增大,进而对运行该神经网络模型的电子设备的性能要求较高,而一般的电子设备很难达到这么高的性能要求,在运行该神经网络模型的过程中容易出现死机或卡顿的情况。
35.下面针对本发明实施例中提供的图像风格化处理方法、装置、设备及存储介质进行详细阐述。
36.图1a示出了本公开实施例提供的一种图像风格化处理方法的流程图,图 1b示出了本公开实施例提供的神经网络模型的内部构造的结构示意图。本实施例可适用于对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的神经网络模型来对摄像头采集到的图像数据进行分割处理,进而实现对采集到的图像进行风格化处理的情况,该方法可以由本公开实施例提供的图像风格化处理装置或电子设备来执行,该装置可以通过软件和/或硬件的方式来实现。该装置可以配置在电子设备中,具体可以由电子设备中的图像处理进程来执行。
37.可选的,如图1a-1b所示,本实施例中的方法可以包括如下步骤:
38.s101,获取摄像头采集到的图像数据,输入神经网络模型。
39.其中,本公开实施例中的卷积神经网络模型并不是现有技术中常规的通过样本图像数据对初始网络模型训练得到的模型,而是现有技术通过样本图像数据对初始网络模型进行训练后,对训练好的初始网络模型内部的每一个三层数据处理块中的各数据处理层的通道数,进行降维调整后所得到的模型。
40.可选的,本公开实施例中,训练好的初始网络模型的内部的数据处理层的层数比较深,可以根据各数据处理层之间的关联性,将每三个关联性较强的数据处理层构成一个三层数据处理块,从而将训练好的初始网络模型内部分为至少一个三层数据处理块。在一个可选的实施例中,可以是将功能接近的三个数据处理层构成一个三层数据处理块。针对每一个三层数据处理块,其内部的第一数据处理层和第三数据处理层可以是普通的输入通
道数和输出通道数维度不同的数据处理层,在一个可选的实施例中,第一数据处理层和第三数据处理层可以是常规的卷积层;中间数据处理层则是输入通道数和输出通道数维度相同的组合数据处理层。其中,组合数据处理层可以是由多个数据处理层组合而成的数据处理层,该组合数据处理层中的各数据处理层可以是独立并行运行的。在一个可选的实施例中,可以是由n个卷积层组合而成的组卷积层。
41.示例性的,如图1b所示,可以将训练好的初始网络模型10内部划分为多个三层数据块,如图1b中的第一个三层数据处理块101和第二个三层数据处理块102等,针对每一个三层数据处理块,如第一个三层数据处理块101,其内部可以包含第一数据处理层1011,中间数据处理层1012和第三数据处理层 1013,其中,该第一数据处理层1011的输入通道数维度为c,输出通道数维度为n;该中间数据处理层1012的输入通道数维度和输出通道数的维度都为n;该第三数据处理层1013的输入通道数维度为n,输出通道数维度为m。可选的,第一数据处理层1011和第三数据处理层1013可以为1
×
1的常规卷积层,中间数据处理层1012可以为3
×
3的组卷积层。
42.可选的,本公开实施例在对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整时,可以是在满足初始网络模型整体分割精度的前提下,按照预设降维比例,对各数据处理层内的中间通道(即第一数据处理层的输出通道数、中间数据处理层的输入通道数和输出通道数、以及第三数据处理层的输入通道数)进行降维调整。其中,对于各中间通道,其又是由多个通道构成,例如,图1b中的第一数据处理层1011的输出通道是由n个通道构成。所以本公开实施例在对各中间通道进行降维调整的过程是依据预设降维比例减少构成该中间通道的通道数的过程。优选实施例,按照50%的降维比例,对图1b中的第一数据处理层1011的输出通道进行降维调整时,可以是将第一数据处理层1011的输出通道数n降低预设比例,如从n降低到0.5n。
43.可选的,由于神经网络中,上一个数据处理层的输出通道数要与下一个数据处理层的输入通道数维度相同才可以准确将上一数据处理层的输出数据传入下一数据处理层,且中间数据处理层的输入通道数和输出通道数的维度又相同,所以本实施例中的各数据处理层内的各中间通道的通道数维度都是相同的。即本公开实施例只需要确定其中一个中间通道的降维调整方案,其他各中间通道就可以按照该降维调整方案进行适应性的调整。例如,若图1b所示的三层数据处理块101的各中间通道的通道数都为n,且确定对第三层数据处理层1013的输入通道进行降维调整的方案是保留通道1到通道0.5n,则可以按照同样的调整方案,将第一数据处理层1011的输出通道、中间数据处理层1012的输入通道和输出通道都保留通道1到通道0.5n,从而实现对三层数据处理块101内的各数据处理层的通道数的降维调整。具体的,如何确定一个三层数据处理块的中间层的通道维度调整方法,将在后续实施例进行详细说明。
44.需要说明的是,本公开实施例对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整,主要是为了降低各数据处理层的计算量,由于神经网络模型的计算量主要是卷积层的计算量引起的,对于其他数据处理层(如输入层、输出层以及池化层等)来说,其计算量相对来说比较小,可以忽略,所以本公开实施例为了提高对初始网络模型内的各数据处理层的通道数降维调整效率,可以是基于训练好的初始网络模型中各卷积层,构建至少一个三层卷积块,每一个三层卷积块中包括三个卷积层,且三个卷积
层中第一卷积层和第三卷积层的输入通道数和输出通道数维度不同(如可以是常规的卷积层);中间卷积层为组卷积层,所述组卷积层的输入通道数与所述组卷积层的组数相同,从而使得所述组卷积层的输入通道数和输出通道数维度相同。此时可以根据预设降维比例,只对各三层卷积块的各数据处理层的通道数进行降维调整,具体的,只对各卷积块的中间通道(即第一卷积层的输出通道、组卷积层的输入通道和输出通道,以及第三卷积层的输入通道)进行通道降维调整。且后续实施例对各三层数据处理块内的各数据处理层通道的降维调整过程,也同样适用于对三层卷积块内的各数据处理层通道的降维调整过程。
45.可选的,在本步骤中,获取摄像头采集到的图像数据,输入神经网络模型的过程可以是电子设备的图像处理进程在用户通过摄像头拍摄照片时,获取摄像头采集到的图像数据输入预先训练好的神经网络模型的输入层中,例如,可以是检测到用户在电子设备上点击拍照按键后,获取摄像头实时采集到的图像,输入预先训练好的神经网络模型的输入层中。还可以是电子设备的图像处理进程获取电子设备中存储的摄像头历史采集的图像数据输入神经网络模型的输入层中,例如,可以是检测到用户触发的对相册中历史拍摄的某一图像进行处理的指令时,获取相册中存储的该图像数据输入神经网络模型的输入层中。需要说明的是,本公开实施例的方案除了可以获取摄像头采集到的图像数据输入神经网络模型中,还可适用于获取从互联网上下载的图像数据输入神经网络模型中。可选的,本步骤获取的图像数据可以包括图像的像素数据、图像的格式、拍摄时间、拍摄地点等数据。
46.s102,获取神经网络模型输出的图像数据的分割结果。
47.其中,图像数据的分割结果可以是对图像中的目标物体进行区域分割或识别的结果,例如,可以是分割出图像中的人脸区域、背景区域等;也可以是对图像数据中的目标物体进行分类识别等,例如,可以是对拍摄到的图像进行食品、建筑或人物等种类的识别。
48.可选的,电子设备的图像处理进程将图像数据输入通道数降维处理后的神经网络模型中,该神经网络模型内的各数据处理层会基于降维后的通道数,按照该神经网络模型训练时的相关算法和训练的样本图像数据,对输入的图像数据进行图像分割处理,并输出本次对输入图像数据的分割结果,此时电子设备的图像处理进程会监听并获取神经网络模型输出的图像数据的分割结果。
49.由于本公开实施例执行图像分割的神经网络模型是通过通道降维调整后的神经网络模型,降维后数据处理层的通道数减小,占用的存储量就会相应的降低,各数据处理层在基于降维处理后的通道进行图像分割处理时,也会极大的降低计算量,进而降低对电子设备的性能要求,同时也提高了获取神经网络模型输出的图像数据的分割结果的效率。
50.s103,根据分割结果,对图像数据进行风格化处理。
51.其中,风格化处理可以是对图像进行某一种风格的处理,例如可以包括但不限于:漫画风格、滤镜风格、制作动图风格、虚化风格等等。
52.可选的,在本公开实施例中,根据分割结果,对图像数据进行风格化处理的过程可以是,电子设备的图像处理进程先根据神经网络模型输出的分割结果,确定出待进行风格化处理的区域或者是待进行风格化处理的类型,然后对该区域进行相关的风格化处理操作。具体的,可以包括但不限于以下几种处理方式:
53.方式一、根据分割结果,识别图像数据中的人物区域;对图像数据中的人物区域进行漫画风格处理。具体的,分割结果可以是图像中的人物区域,此时可以获取图像数据中人
物所在的区域作为待进行漫画风格处理的区域,然后对该区域内的图像数据进行漫画风格处理的操作。
54.方式二、根据分割结果,识别图像数据的背景区域;对图像数据的背景区域进行背景虚化处理。具体的,分割结果可以是图像中的背景区域,此时可以获取图像数据中背景所在的区域作为待进行虚化处理的区域,然后对该区域内的图像数据进行背景虚化处理的操作。
55.方式三、根据分割结果,确定待进行风格化处理的滤镜类型;基于所述滤镜类型,对图像数据进行所述滤镜类型对应的风格化处理操作。例如,分割结果可以为图像数据是食品类型图像,此时,可以根据预先设置的图像类型与滤镜类型的对应关系,确定食品类型图像对应的滤镜类型为美食滤镜,进而对获取的图像数据添加美食滤镜,完成对该图像数据的风格化处理操作。
56.方式四、根据分割结果,获取图像数据中的人脸区域数据;根据人脸区域数据和动态模板,生成动态表情包。其中,动态模板可以是预先设置好的生成动态表情所需要的模板,该动态模板中设置有预设区域,用于添加神经网络模型识别到的图像数据中的人脸区域。具体的,可以是电子设备的图像处理进程在获取分割结果后,获取图像数据中分割结果对应的人脸区域数据,然后将该人脸区域数据添加到动态模板中的预设区域,生成包含人脸区域的动态表情包。例如,s102中获取到的分割结果可能是图像数据中的人脸轮廓,此时可以获取人脸轮廓内的图像数据作为人脸区域数据,然后将获取到的人脸区域数据加载到动态模板中的预设区域,从而生成包含人脸区域的动态表情包。
57.需要说明的是,对于任何一个神经网络模型,其都会存在一定的计算量和存储量,由其是包含卷积层的卷积神经网络模型,所以为了降低神经网络模型的运算量和存储量,本公开实施例中构建的神经网络模型还可以用到其他功能的神经网络模型中,例如可以适用于对图像数据进行的其他处理功能的神经网络模型中;还可以适用于对于其他输入数据(如音频数据、视频数据、文字数据等)进行处理的神经网络模型中,对此本公开实施例不进行限定。
58.本公开实施例提供了一种图像风格化处理方法,通过获取摄像头采集到的图像数据输入神经网络模型进行分割处理,并根据分割处理结果对图像数据进行风格化处理,其中,本公开实施例的神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的,且本公开实施例中的训练好的神经网络内部是由至少一个三层数据处理块构成,各三层数据处理块中包括三个数据处理层,三个数据处理层的中间层为输入通道数和输出通道数维度相同的组合数据处理层。本方案在对初始网络模型训练好后,减少了其内部各三层数据处理块的各数据处理层的通道数,从而减少了各数据处理层在进行图像分割处理时的计算量和存储量,进而降低了整个神经网络模型在进行图像分割时的计算量和存储量。相应的,也就降低了对运行该神经网络模型的电子设备的性能要求,从而避免了一般的电子设备在运行该神经网络模型的过程中容易出现死机或卡顿的情况,保证了电子设备正常完成对图像风格化处理的过程。
59.图2示出了本公开实施例提供的另一种基于神经网络模型的数据处理方法的流程图;本实施例在上述实施例提供的各可选方案的基础上进行了优化,具体给出了如何对本公开实施例中的训练好的初始网络模型的三层数据处理块的各数据处理层的通道数进行
降维调整,得到神经网络模型的详细介绍。
60.可选的,如图2所示,本实施例中的方法可以包括如下步骤:
61.s201,采用样本图像数据集对初始网络模型进行训练,得到训练好的初始网络模型。
62.可选的,本步骤与现有技术采集样本图像数据集对初始网络模型进行训练的过程类似。如可以是先采集样本图像数据集,所述样本图像数据集中包括大量的图像数据和所述图像数据对应的分割结果,其中,每个图像数据及其对应的分割结果作为一个样本图像数据。将采集到样图像数据集输入到初始网络模型中,对初始网络模型中各数据处理层的相关参数进行训练,在训练的过程中,采用验证图像数据对训练的初始网络模型进行图像分割精度验证,若训练的初始网络模型的图像分割精度满足预设要求,则说明此时该初始网络模型已经训练好。
63.s202,依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整,得到降维调整后的初始网络模型。
64.其中,所述中间通道包括所述三层数据处理块中第一数据处理层的输出通道、中间数据处理层的输入通道和输出通道,以及第三数据处理层的输入通道。且本实施例中的各数据处理层内的各中间通道的通道数维度都是相同的,且通道数维度不至一个。预设降维比例可以是预先设置好的,对各三层数据处理块的中间通道进行降维调整时所依据的降维比例。例如,若预设降维比例为50%,则按照该预设降维比例,对各中间通道进行降维调整后,各中间通道的通道数就会在原有基础上减少50%。
65.可选的,为了保证尽可能多的降低神经网络的计算量,本公开实施例中,可以预先设置多个预设降维比例(如,50%、30%、20%和10%等);还可以是设置一个最大的预设降维比例(如50%)和一个预设比例递减值(如10%)。在对训练好的初始网络模型内各三层数据处理块的中间通道进行降维调整时,首先选择最大的预设降维比例进行首次降维调整;如果依据该降维比例进行降维调整后的神经网络模型的分割精度不满足要求时,再依据预设的多个预设比例值或预先设置的比例递减值,逐级降低预设降维比例对各中间通道进行降维调整,直到降维调整后的神经网络模型的分割精度满足预设要求。
66.可选的,在本公开实施例中,依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理层的中间通道进行降维调整时,由于对于一个三层数据处理块的各数据处理层来说,输入通道对数据处理层的影响程度,大于输出通道对该数据处理层的影响程度,而对与需要进行输入通道数维度调整的中间数据处理层和第三数据处理层,由于中间数据处理层是组合数据处理层,该层的各输入通道和输出通道是一一对应的,无法准确评估各输入通道对于中间数据处理层的影响程度,所以本实施例可以分析第三数据处理层的各输入通道对第三数据处理层的影响程度,从第三数据处理层的各输入通道中,选出对第三数据处理层影响程度较小的预设降维比例的各输入通道作为目标通道,然后对于每一个中间通道,都删除目标通道,对剩余的通道进行保留,从而实现对一个三层数据处理块的各中间通道的进行降维调整。需要说明的是,具体如何分析第三数据处理层的各输入通道对第三数据处理层的影响程度,从第三数据处理层的各输入通道中,选出目标通道来实现对该数据处理块的各中间通道进行降维调整的过程,将在后续实施例进行详细介绍。
67.s203,判断降维调整后的初始网络模型的分割精度是否满足精度要求,若否,则执
行s204,若是,则执行s205。
68.可选的,s202已经对训练好的初始网络模型的各三层数据处理块的中间通道进行了降维调整,减少了各中间通道的通道数,此时就必定会影响到训练好的初始网络模型对图像数据进行分割处理时的分割精度,导致精度降低,所以为了保证s202进行通道数降维调整后的初始网络模型在减少计算量和存储量的基础上,仍然可以保证满足图像分割的要求,所以本步骤需要再对训练好的初始网络模型进行通道数调整后,判断调整后的模型是否能够满足精度要求。
69.具体的,可以是采用至少一组验证样本数据来对s202对通道数进行降维调整后的初始网络模型进行分割精度分析,若分割精度满足预设要求,则说明对通道降维调整后的该初始网络模型仍然可以满足分割精度的要求,所以此时执行s205,将s202对通道降维调整后的初始网络模型作为得到的可以进行后续图像分割的神经网络模型。若分割精度不满足预设要求,则说明本次对训练好的初始网络模型的三层数据处理块的中间通道数降维调后,虽然初始网络模型的计算量和存储量降低了,但是分割精度损失严重,无法满足分割精度要求,此时执行s204,降低预设降维比例后重新返回执行s202。
70.可选的,在本步骤中,判断降维调整后的初始网络模型的分割精度是否满足精度要求的方法有很多,对此本步骤进行限定。可以是判断降维调整后的初始网络模型的分割精度是否能够达到预设精度阈值;具体的,可以是预先设置一个能够保证图像分割准确性的前提下,对进行图像分割的神经网络模型所要求的最低分割精度,作为预设精度阈值,然后采用至少一组验证样本数据计算出降维调整后的初始网络模型的精度值,判断是否每一组验证样本数据算出的分割精度值都满足预设精度阈值。还可以是判断降维调整后的初始网络模型的分割精度与降维调整前的初始网络模型的分割精度的差值是否在预设范围内。具体的,可以是预先设置一个能够接受的神经网络模型的精度差值范围作为预设范围,然后采用至少一组验证样本数据计算出降维调整前后的初始网络模型的精度差值,判断是否每一组验证样本数据算出的精度差值都在预设范围内。也可以是判断降维调整后的初始网络模型的分割精度是否达到预设精度阈值,且与降维调整前的初始网络模型的分割精度的差值在预设范围内。
71.s204,若降维调整后的初始网络模型的分割精度不满足精度要求,则降低预设降维比例,依据降低后的预设降维比例,返回执行s202。
72.可选的,若s203判断降维调整后的初始网络模型的分割精度不满足精度要求,则说明本次对训练好的初始网络模型的各三层数据处理块的中间通道数降维调后,虽然初始网络模型的计算量和存储量降低了,但是分割精度损失严重,无法满足分割精度要求,此时说明本次对各中间通道降维调整时,对通道数降维力度过大,减少的通道数维度多过,此时需要降低预设降维比例后返回重新执行s202对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整。
73.可选的,本公开实施例可以是预先设置多个预设降维比例,此时在降低预设降维比例时,可以是从多个预设降维比例中,选择小于本次使用的预设降维比例且与本次预设降维比例最为接近的预设降维比例,作为本步骤重新设置的降低后的预设降维比例。例如,预先设置多个预设降维比例:50%、30%、20%和10%,本次使用的预设降维比例为50%,则此时本步骤降低预设降维比例后重新确定的预设降维比例可以为30%。还可以是设置一个
最大的预设降维比例(如 50%)和一个预设比例递减值(如10%)。此时在降低预设降维比例时,可以是在本次使用的预设降维比例的基础上,减去预设比例递减值,得到降低调整后的预设降维比例。例如,若本次使用的预设降维比例为预先设置的最大的预设降维比例50%,预设比例递减值为10%,则此时本步骤降低预设降维比后重新确定的预设降维比例为40%。
74.s205,若降维调整后的初始网络模型的分割精度满足精度要求,则得到神经网络模型。
75.可选的,若s203判断降维调整后的初始网络模型的分割精度满足精度要求,则说明本次对训练好的初始网络模型中各三层数据处理块的中间通道的降维调整完成,此时得到的神经网络模型就是后续可以使用少的计算量和存储量完成图像分割的神经网络模型。
76.s206,获取摄像头采集到的图像数据,输入神经网络模型。
77.s207,获取神经网络模型输出的图像数据的分割结果。
78.s208,根据分割结果,对图像数据进行风格化处理。
79.本公开实施例提供的图像风格化处理方法,在采用样本图像数据集对初始网络模型训练完成后,依据预设降维比例,对训练好的初始网络模型的每一个三层数据处理块的中间通道进行降维调整,若降维调整后的初始网络模型的分割精度不满足精度要求,需要降低预设降维比例重新对训练好的初始网络模型的各三层数据处理块的中间通道进行降维调整,得到最终的神经网络模型;否则此时降维调整后的初始网络模型即为最终的神经网络模型,可以获取摄像头采集到的图像数据输入该神经网络模型进行图像分割处理,并根据分割处理结果对图像数据进行风格化处理。本公开实施例的方案对采用样本图数据训练好的神经网络模型,在满足神经网络模型分割精度的前提下,对神经网络模型内各三层数据处理块的中间通道进行降维调整,使得调整后的神经网络模型在满足分割精度要求的同时,极大的降低了其计算量和存储量,进而也就降低了对运行该神经网络模型的电子设备的性能要求。实现了性能一般的电子设备也可以正常、无卡顿的完成对图像的风格化处理的过程。
80.图3a示出了本公开实施例提供的一种对训练好的初始网络模型的通道降维方法的流程图;图3b示出了本公开实施例提供的第三数据处理层的输入通道和输出通道的关联关系示意图。本实施例在上述各实施例提供的各可选方案的基础上进行了优化,具体给出了如何依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整的详细介绍。
81.需要说明的是上述实施例已经介绍了本公开实施例可以分析训练好的初始网络模型的各三层数据处理块的第三数据处理层的各输入通道对第三数据处理层的影响程度,来确定对该数据处理块的各中间通道进行降维调整的整体思路,接下来本实施例就具体介绍,针对训练好的初始网络模型的每一个三层数据处模块,如何分析第三数据处理层的各输入通道对第三数据处理层的影响程度,进而实现对该数据处理块的中间通道进行降维调整的方法。
82.具体的,如图3a-3b所示,所述方法包括:
83.s301,针对训练好的初始网络模型中的每个三层数据处理块,将样本数据同时输入三层数据处理块的第三数据处理层的各输入通道中,计算第三数据处理层所有输入通道
对每个输出通道的原始输出值。
84.其中,样本图像数据是分析第三数据处理层的各输入通道对该第三数据处理层重要程度的依据。该样本数据为待进行通道数调整的三层数据处理块接收到的输入数据由第一数据处理层和中间数据处理层关联处理后输出的数据。由于本公开实施例中训练好的初始网络模型的相邻数据处理块的输入数据和输出数据具有一定的关联关系,所以为了保证本实施例准确判断出各三层数据处理块的第三数据处理层的各输入通道对第三数据处理层的影响程度,各三层数据处理块接收到的输入数据为其上一三层数据处理块的输出数据。若该三层数据处理块为初始网络模型的第一个三层数据处理块,则该三层数据处理块接收到的输入数据为输入到初始网络模型中用于进行通道数降维调整的图像数据。可选的,用于进行通道数降维调整的图像数据可以验证训练好的初始网络模型分割精确度的验证样本数据,其可以与训练初始网络模型的样本图像数据类似。
85.可选的,对于每一个三层数据处理块,将该三层数据处理块的第一数据处理层对输入该三层数据处理块的输入数据进行处理,通过第一数据处理层的输出通道传输给中间数据处理层的输入通道,由中间数据处理层对接收到的数据进行处理后通过中间数据处理层输出,得到样本数据,并将该样本数据传输给第三数据处理层的所有输入通道,此时第三数据处理层就会对各通道的数据进行计算处理,得到第三数据处理层的所有输入通道对每个输出通道的原始输出值。
86.其中,每个输出通道的原始输出值可以是指在该输出通道所属的数据处理层上的所有输入通道都有输入数据时,该数据处理层进行计算后得到的该输出通道对应的输出值。
87.可选的,对于第三数据处理层,其每一个输出通道的原始输出值都是依据该第三数据处理层训练初始网络时训练得到的该层的所有输入通道的通道参数、所有输入通道对应该输出通道的权重值以及输入到各输入通道的样本数据等按照一定的算法关联计算得到的。例如,如图3b所示,第三数据处理层有n 个输入通道和m个输出通道,则对于任一个输出通道,其原始输出值与所有的输入通道都具有一定的关联关系,此时对于第j个输出通道,其原始输出值可以按照公式计算得到,其中,y
j
为第j个输出通道的原始输出值,a
i
为输入第i个通道的样本数据,x
i
为第i个输入通道的通道参数,w
ij
为第i个输入通道对应第j个输出通道的权重值。
88.s302,依次将样本数据输入三层数据处理块的第三数据处理层的各输入通道,计算第三数据处理层各输入通道对每个输出通道的实际输出值。
89.其中,每个输出通道的实际输出值可以是指在该输出通道所属的数据处理层上的只有某一个输入通道有输入数据时,该数据处理层进行计算后得到的该输出通道对应的输出值。
90.可选的,本实施例为了判断出第三数据处理层的各输入通道对该第数据处理层的影响程序,可以依次将获取的样本数据输入到第三数据处理层的每一个输入通道中,分别计算出该输入通道对应每一个输出通道的实际输出值。具体的,针对第三数据处理层的每个输入通道,第三数据处理层都可以根据输入到所述输入通道的样本数据、所述输入通道的通道参数和所述输入通道对应各输出通道的权重值,计算所述输入通道对应每个输出通
道的实际输出值。如可以是基于每个输入通道的通道参数、输入到该输入通道的样本数据和该输入通道对应各输出通道的权重值,按照一定的算法关联计算得到该输入通道对应每一个输出通道的实际输出值。例如,如图3b所示,第三数据处理层有n个输入通道和m个输出通道,则其中的第i个输入通道对应第j个输出通道的实际输出值可以按照公式z
ij
=a
i
×
x
i
×
w
ij
计算得到,其中,z
ij
为第i个输入通道对应第j个输出通道的实际输出值,a
i
为输入第i个通道的样本数据,x
i
为第i个输入通道的通道参数,w
ij
为第i个输入通道对应第j个输出通道的权重值。
91.s303,根据第三数据处理层所有输入通道对每个输出通道的原始输出值,以及第三数据处理层各输入通道对每个输出通道的实际输出值,对三层数据处理块的中间通道进行降维调整。
92.具体的,本步骤对三层数据处理块的中间通道进行降维调整可以包括如下几个子步骤:
93.s3031,根据第三数据处理层所有输入通道对每个输出通道的原始输出值和各输入通道对每个输出通道的实际输出值,计算各输入通道对第三数据处理层的影响程度。
94.可选的,本步骤中,可以以所有输入通道对每个输出通道的原始输出值为基准,依据各输入通道对每个输出通道的实际输出值与该输出通道的原始输出值,来计算各输出通道对第三数据处理层的影响程度。具体的,可以是针对每一个输入通道,判断该输入通道对各个输出通道的实际输出值与各个输出通道的原始输出值之间的接近程度,越接近,说明该输入通道对第三数据处理层的影响程度越大。可选的,在计算每个输入通道对各个输出通道的实际输出值与各个输出通道的原始输出值之间的接近程度时,可以是针对第三数据处理层的每个输入通道,对所述输入通道对应各输出通道的实际输出值与各输出通道的原始输出值进行误差求和,得到所述输入通道对第三数据处理层的影响程度。将所有的输入通道对应的误差求和的结果进行比较,误差求和结果越大的输入通道对第三数据处理层的影响程度越小。例如,如图3b所示,第三数据处理层有n个输入通道和m个输出通道,则第i个输入通道对第三数据处理层的影响程度可以按照公式计算得到,其中,δ
i
为第i个输入通道对应第三数据处理层的影响程度;z
ij
为第i个输入通道对应第j个输出通道的实际输出值, y
j
为第j个输出通道的原始输出值。
95.s3032,根据各输入通道对第三数据处理层的影响程度,从各输入通道中需选择预设降维比例的输入通道作为目标通道。
96.其中,目标通道可以是指从第三输出处理层的各输出通道中选出的,对第三数据处理层影响程度较小的,可以进行降维删除的通道。
97.需要说明的是,对于第三数据处理层的任一输入通道来说,其对第三数据处理层的影响程度越大,说明其对第三数据处理层进行图像分割时起到的作用越大,所以,对第三数据处理层影响程度大的输入通道,应该保留,将对第三数据处理层影响程度小的各输入通道作为待删除的目标通道。
98.可选的,s3031计算的各输入通道对第三数据处理层的影响程度是计算各个输出通道的原始输出值与该输入通道对各个输出通道的实际输出值之间的误差值,所以此时可以是按照误差值从大到小的顺序对各误差值对应的输入通道排序。排序靠前的输入通道就
是对第三数据处理层影响程度较小的输入通道,此时可以按照预设降维比例,将排序靠前的预设降维比例的输入通道作为目标输入通道。
99.s3033,根据目标通道,对三层数据处理块的中间通道进行降维调整。
100.可选的,由于神经网络中,上一个数据处理层的输出通道数要与下一个数据处理层的输入通道数维度相同才可以准确将上一数据处理层的输出数据传入下一数据处理层,且中间数据处理层的输入通道数和输出通道数的维度又相同,所以本实施例中的各数据处理层内的各中间通道的通道数维度都是相同,也就是说,s3032确定出的第三数据处理层的目标通道,在本次进行通道降维调整的三层数据处理块的各中间通道中都存在,即在本次进行通道降维调整的三层数据处理块中,第一数据处理层的输出通道、中间数据处理层的输入通道和输出通道,以及第三数据处理层的输入通道中都存在s3032确定出的目标通道。所以在根据目标通道,对三层数据处理块的中间通道进行降维调整时,可以是依次从该三层数据处理块的第一数据处理层的输出通道、中间数据处理层的输入通道和输出通道,以及第三数据处理层的输入通道中查找目标通道,并将查找到的目标通道删除,从而实现对三层数据处理块的中间通道进行降维调整。
101.需要说明的是,本公开实施例提供的依据预设降维比例,对每一个三层数据处理块的中间通道进行降维调整的可实施方式,可以适用于对上述对训练好的初始网络内的每一个三层数据处理块的各数据处理层的通道进行降维调整过程,进而得到计算量和存储量都大大减少的神经网络模型,并基于该模型实现上述各实施例所述的对摄像头采集到的图像数据进行分割处理,进而实现对采集到的图像进行风格化处理的过程。
102.本公开实施例提供的对训练好的初始网络模型的通道降维方法,通过对训练好的初始网络模型的每一个三次数据处理块,将样本数据输入所有的输入通道计算出各输出通道的原始输出值;再将样本数据依次输入到每一个输入通道,计算每一个输入通道对应各输出通道的实际输出值;进而基于每个输出通道的原始输出值和各输入通道对每个输出通道的实际输出值,确定各输入通道对第三数据处理层的影响程度,将影响程度小的预设降维比例值的输入通道作为目标通道,对各中间层进行通道降维调整。本方案在确定中间层需要降维的目标通道时,通过判断第三数据处理层的各输入通道对第三数据处理层的影响程度,将影响程度小的预设降维比例的目标通道进行删除,使得删除的通道对数据处理层的影响程度较低,从而保证在降低计算量和存储量的同时,尽可能的减少对各数据处理层处理结果的影响,保证降维处理后的神经网络模型的分割精度。
103.图4示出了本公开实施例提供的一种图像风格化处理装置的结构示意图,本公开实施例可适用于图像风格化处理方法的情况,例如,可适用于对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的神经网络模型来对摄像头采集到的图像数据进行分割处理,进而实现对采集到的图像进行风格化处理的情况。该装置可以通过软件和/或硬件来实现,并集成在执行本方法的电子设备中,如图4所示,该装置可以包括:
104.图像数据获取模块401,用于获取摄像头采集到的图像数据,输入神经网络模型;
105.分割结果获取模块402,用于获取所述神经网络模型输出的所述图像数据的分割结果;
106.风格化处理模块403,用于根据所述分割结果,对所述图像数据进行风格化处理;
107.其中,所述神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的;所述训练好的初始网络模型中包括至少一个三层数据处理块,所述至少一个三层数据处理块中包含三个数据处理层,且所述三个数据处理层的中间数据处理层为组合数据处理层,所述组合数据处理层输入通道数和输出通道数维度相同。
108.本公开实施例提供了一种图像风格化处理装置,通过获取摄像头采集到的图像数据输入神经网络模型进行分割处理,并根据分割处理结果对图像数据进行风格化处理,其中,本公开实施例的神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的,且本公开实施例中的训练好的神经网络内部是由至少一个三层数据处理块构成,各三层数据处理块中包括三个数据处理层,三个数据处理层的中间层为输入通道数和输出通道数维度相同的组合数据处理层。本方案在对初始网络模型训练好后,减少了其内部各三层数据处理块的各数据处理层的通道数,从而减少了各数据处理层在进行图像分割处理时的计算量和存储量,进而降低了整个神经网络模型在进行图像分割时的计算量和存储量。相应的,也就降低了对运行该神经网络模型的电子设备的性能要求,从而避免了一般的电子设备在运行该神经网络模型的过程中容易出现死机或卡顿的情况,保证了电子设备正常完成对图像风格化处理的过程。
109.进一步的,所述三层数据处理块包含的三个数据处理层中,第一数据处理层和第三数据处理层的输入通道数和输出通道数维度不同。
110.进一步的,上述装置还包括:
111.通道降维调整模块,用于依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整,得到降维调整后的初始网络模型;其中,所述中间通道包括所述三层数据处理块中第一数据处理层的输出通道、中间数据处理层的输入通道和输出通道,以及第三数据处理层的输入通道;
112.分割精度判断模块,用于判断所述降维调整后的初始网络模型的分割精度是否满足精度要求;若降维调整后的初始网络模型的分割精度满足精度要求,则得到所述神经网络模型。
113.进一步的,上述通道降维调整模块具体包括:
114.原始输出计算单元,用于针对训练好的初始网络模型中的每个三层数据处理块,将样本数据同时输入所述三层数据处理块的第三数据处理层的各输入通道中,计算所述第三数据处理层所有输入通道对每个输出通道的原始输出值;
115.实际输出计算单元,用于依次将所述样本数据输入所述三层数据处理块的第三数据处理层的各输入通道,计算所述第三数据处理层各输入通道对每个输出通道的实际输出值;
116.通道降维调整单元,用于根据所述第三数据处理层所有输入通道对每个输出通道的原始输出值,以及所述第三数据处理层各输入通道对每个输出通道的实际输出值,对所述三层数据处理块的中间通道进行降维调整;
117.其中,所述样本数据为所述三层数据处理块接收到的输入数据由第一数据处理层和中间数据处理层关联处理后输出的数据;所述三层数据处理块接收到的输入数据为上一三层数据处理块的输出数据。
118.进一步的,上述通道降维调整单元具体又包括:
119.影响程度计算子单元,用于根据所述第三数据处理层所有输入通道对每个输出通道的原始输出值和各输入通道对每个输出通道的实际输出值,计算各输入通道对所述第三数据处理层的影响程度;
120.目标通道确定子单元,用于根据所述各输入通道对第三数据处理层的影响程度,从各输入通道中需选择预设降维比例的输入通道作为目标通道;
121.通道降维调整子单元,用于根据所述目标通道,对所述三层数据处理块的中间通道进行降维调整。
122.进一步的,若所述三层数据处理块为初始网络模型的第一个三层数据处理块,则所述三层数据处理块接收到的输入数据为输入到初始网络模型中用于进行通道数降维调整的图像数据。
123.进一步的,上述实际输出计算单元具体用于:
124.针对第三数据处理层的每个输入通道,根据输入到所述输入通道的样本数据、所述输入通道的通道参数和所述输入通道对应各输出通道的权重值,计算所述输入通道对应每个输出通道的实际输出值。
125.进一步的,上述影响程度计算子单元具有用于:
126.针对第三数据处理层的每个输入通道,对所述输入通道对应各输出通道的实际输出值与各输出通道的原始输出值进行误差求和,得到所述输入通道对所述第三数据处理层的影响程度。
127.进一步的,上述分割精度判断模块具体用于:
128.判断所述降维调整后的初始网络模型的分割精度与降维调整前的初始网络模型的分割精度的差值是否在预设范围内。
129.进一步的,上述装置还包括:
130.降维比例调整模块,用于若所述降维调整后的初始网络模型的分割精度不满足精度要求,则降低预设降维比例,依据降低后的预设降维比例,返回控制通道降维调整模块重新对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整。
131.进一步的,所述三层数据处理块为三层卷积块,所述三层卷积块中包括三个卷积层,且三个卷积层中第一卷积层和第三卷积层的输入通道数和输出通道数维度不同;中间卷积层为组卷积层,所述组卷积层的输入通道数和输出通道数维度相同。
132.进一步的,所述组卷积层的输入通道数与所述组卷积层的组数相同。
133.进一步的,上述风格化处理模块403具体用于:
134.根据所述分割结果,获取所述图像数据中的人脸区域数据;
135.根据所述人脸区域数据和动态模板,生成动态表情包。
136.本公开实施例提供的图像风格化处理装置,与上述各实施例提供的图像风格化处理方法属于同一发明构思,未在本公开实施例中详尽描述的技术细节可参见上述各实施例,并且本公开实施例与上述各实施例具有相同的有益效果。
137.下面参考图5,其示出了适于用来实现本公开实施例的电子设备500的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车
载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图5示出的电子设备500仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
138.如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(rom)502中的程序或者从存储装置508加载到随机访问存储器(ram)503中的程序而执行各种适当的动作和处理。在ram 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、rom 502以及ram 503通过总线504彼此相连。输入/输出(i/o) 接口505也连接至总线504。
139.通常,以下装置可以连接至i/o接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
140.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从rom 502 被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。
141.需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom 或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、 rf(射频)等等,或者上述的任意合适的组合。
142.在一些实施方式中,电子设备可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
143.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
144.上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备内部进程执行:获取摄像头采集到的图像数据,输入神经网络模型;获取所述神经网络模型输出的所述图像数据的分割结果;根据所述分割结果,对所述图像数据进行风格化处理;其中,所述神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的;所述训练好的初始网络模型中包括至少一个三层数据处理块,所述至少一个三层数据处理块中包含三个数据处理层,且所述三个数据处理层的中间数据处理层为组合数据处理层,所述组合数据处理层输入通道数和输出通道数维度相同。
145.可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
146.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
147.描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
148.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
149.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom
或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
150.根据本公开的一个或多个实施例提供的一种图像风格化处理方法,该方法包括:
151.获取摄像头采集到的图像数据,输入神经网络模型;
152.获取所述神经网络模型输出的所述图像数据的分割结果;
153.根据所述分割结果,对所述图像数据进行风格化处理;
154.其中,所述神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的;所述训练好的初始网络模型中包括至少一个三层数据处理块,所述至少一个三层数据处理块中包含三个数据处理层,且所述三个数据处理层的中间数据处理层为组合数据处理层,所述组合数据处理层输入通道数和输出通道数维度相同。
155.根据本公开的一个或多个实施例,上述方法中,所述三层数据处理块包含的三个数据处理层中,第一数据处理层和第三数据处理层的输入通道数和输出通道数维度不同。
156.根据本公开的一个或多个实施例,上述方法中,对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整,得到神经网络模型,包括:
157.依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整,得到降维调整后的初始网络模型;其中,所述中间通道包括所述三层数据处理块中第一数据处理层的输出通道、中间数据处理层的输入通道和输出通道,以及第三数据处理层的输入通道;
158.判断所述降维调整后的初始网络模型的分割精度是否满足精度要求;
159.若所述降维调整后的初始网络模型的分割精度满足精度要求,则得到所述神经网络模型。
160.根据本公开的一个或多个实施例,上述方法中,依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整,包括:
161.针对训练好的初始网络模型中的每个三层数据处理块,将样本数据同时输入所述三层数据处理块的第三数据处理层的各输入通道中,计算第三数据处理层所有输入通道对每个输出通道的原始输出值;
162.依次将所述样本数据输入所述三层数据处理块的第三数据处理层的各输入通道,计算第三数据处理层各输入通道对每个输出通道的实际输出值;
163.根据所述第三数据处理层所有输入通道对每个输出通道的原始输出值,以及所述第三数据处理层各输入通道对每个输出通道的实际输出值,对所述三层数据处理块的中间通道进行降维调整;
164.其中,所述样本数据为所述三层数据处理块接收到的输入数据由第一数据处理层和中间数据处理层关联处理后输出的数据;所述三层数据处理块接收到的输入数据为上一三层数据处理块的输出数据。
165.根据本公开的一个或多个实施例,上述方法中,根据所述第三数据处理层所有输入通道对每个输出通道的原始输出值,以及所述第三数据处理层各输入通道对每个输出通道的实际输出值,对所述三层数据处理块的中间通道进行降维调整,包括:
166.根据所述第三数据处理层所有输入通道对每个输出通道的原始输出值和各输入
通道对每个输出通道的实际输出值,计算各输入通道对所述第三数据处理层的影响程度;
167.根据各输入通道对第三数据处理层的影响程度,从各输入通道中需选择预设降维比例的输入通道作为目标通道;
168.根据所述目标通道,对所述三层数据处理块的中间通道进行降维调整;
169.根据本公开的一个或多个实施例,上述方法中,若所述三层数据处理块为初始网络模型的第一个三层数据处理块,则所述三层数据处理块接收到的输入数据为输入到初始网络模型中用于进行通道数降维调整的图像数据。
170.根据本公开的一个或多个实施例,上述方法中,计算第三数据处理层各输入通道对每个输出通道的实际输出值,包括:
171.针对第三数据处理层的每个输入通道,根据输入到所述输入通道的样本数据、所述输入通道的通道参数和所述输入通道对应各输出通道的权重值,计算所述输入通道对应每个输出通道的实际输出值。
172.根据本公开的一个或多个实施例,上述方法中,根据第三数据处理层所有输入通道对每个输出通道的原始输出值和各输入通道对每个输出通道的实际输出值,计算各输入通道对第三数据处理层的影响程度,包括:
173.针对第三数据处理层的每个输入通道,对所述输入通道对应各输出通道的实际输出值与各输出通道的原始输出值进行误差求和,得到所述输入通道对第三数据处理层的影响程度。
174.根据本公开的一个或多个实施例,上述方法中,判断所述降维调整后的初始网络模型的分割精度是否满足精度要求,包括:
175.判断所述降维调整后的初始网络模型的分割精度与降维调整前的初始网络模型的分割精度的差值是否在预设范围内。
176.根据本公开的一个或多个实施例,上述方法中,判断所述降维调整后的初始网络模型的分割精度是否满足精度要求之后,还包括:
177.若所述降维调整后的初始网络模型的分割精度不满足精度要求,则降低预设降维比例,依据降低后的预设降维比例,返回重新对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整。
178.根据本公开的一个或多个实施例,上述方法中,其特征在于,所述三层数据处理块为三层卷积块,所述三层卷积块中包括三个卷积层,且三个卷积层中第一卷积层和第三卷积层的输入通道数和输出通道数维度不同;中间卷积层为组卷积层,所述组卷积层的输入通道数和输出通道数维度相同。
179.根据本公开的一个或多个实施例,上述方法中,所述组卷积层的输入通道数与所述组卷积层的组数相同。
180.根据本公开的一个或多个实施例,上述方法中,根据所述分割结果,对所述图像数据进行风格化处理,包括:
181.根据所述分割结果,获取所述图像数据中的人脸区域数据;
182.根据所述人脸区域数据和动态模板,生成动态表情包。
183.根据本公开的一个或多个实施例提供的一种图像风格化处理装置,该装置包括:
184.图像数据获取模块,用于获取摄像头采集到的图像数据,输入神经网络模型;
185.分割结果获取模块,用于获取所述神经网络模型输出的所述图像数据的分割结果;
186.风格化处理模块,用于根据所述分割结果,对所述图像数据进行风格化处理;
187.其中,所述神经网络模型是对训练好的初始网络模型内的三层数据处理块的各数据处理层的通道数进行降维调整后得到的;所述训练好的初始网络模型中包括至少一个三层数据处理块,所述至少一个三层数据处理块中包含三个数据处理层,且所述三个数据处理层的中间数据处理层为组合数据处理层,所述组合数据处理层输入通道数和输出通道数维度相同。
188.根据本公开的一个或多个实施例,上述装置中的所述三层数据处理块包含的三个数据处理层中,第一数据处理层和第三数据处理层的输入通道数和输出通道数维度不同。
189.根据本公开的一个或多个实施例,上述装置中的还包括:
190.通道降维调整模块,用于依据预设降维比例,对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整,得到降维调整后的初始网络模型;其中,所述中间通道包括所述三层数据处理块中第一数据处理层的输出通道、中间数据处理层的输入通道和输出通道,以及第三数据处理层的输入通道;
191.分割精度判断模块,用于判断所述降维调整后的初始网络模型的分割精度是否满足精度要求;若降维调整后的初始网络模型的分割精度满足精度要求,则得到所述神经网络模型。
192.根据本公开的一个或多个实施例,上述装置中的通道降维调整模块具体包括:
193.原始输出计算单元,用于针对训练好的初始网络模型中的每个三层数据处理块,将样本数据同时输入所述三层数据处理块的第三数据处理层的各输入通道中,计算第三数据处理层所有输入通道对每个输出通道的原始输出值;
194.实际输出计算单元,用于依次将所述样本数据输入所述三层数据处理块的第三数据处理层的各输入通道,计算所述第三数据处理层各输入通道对每个输出通道的实际输出值;
195.通道降维调整单元,用于根据所述第三数据处理层所有输入通道对每个输出通道的原始输出值,以及所述第三数据处理层各输入通道对每个输出通道的实际输出值,对所述三层数据处理块的中间通道进行降维调整;
196.根据本公开的一个或多个实施例,上述装置中的通道降维调整单元具体又包括:
197.影响程度计算子单元,用于根据第三数据处理层所有输入通道对每个输出通道的原始输出值和各输入通道对每个输出通道的实际输出值,计算各输入通道对第三数据处理层的影响程度;
198.目标通道确定子单元,用于根据各输入通道对第三数据处理层的影响程度,从各输入通道中需选择预设降维比例的输入通道作为目标通道;
199.通道降维调整子单元,用于根据所述目标通道,对所述三层数据处理块的中间通道进行降维调整。
200.根据本公开的一个或多个实施例,上述装置中若所述三层数据处理块为初始网络模型的第一个三层数据处理块,则所述三层数据处理块接收到的输入数据为输入到初始网络模型中用于进行通道数降维调整的图像数据。
201.根据本公开的一个或多个实施例,上述装置中的实际输出计算单元具体用于:
202.针对第三数据处理层的每个输入通道,根据输入到所述输入通道的样本数据、所述输入通道的通道参数和所述输入通道对应各输出通道的权重值,计算所述输入通道对应每个输出通道的实际输出值。
203.根据本公开的一个或多个实施例,上述装置中的影响程度计算子单元具有用于:
204.针对第三数据处理层的每个输入通道,对所述输入通道对应各输出通道的实际输出值与各输出通道的原始输出值进行误差求和,得到所述输入通道对第三数据处理层的影响程度。
205.根据本公开的一个或多个实施例,上述装置中的分割精度判断模块具体用于:
206.判断所述降维调整后的初始网络模型的分割精度与降维调整前的初始网络模型的分割精度的差值是否在预设范围内。
207.根据本公开的一个或多个实施例,上述装置中的还包括:
208.降维比例调整模块,用于若所述降维调整后的初始网络模型的分割精度不满足精度要求,则降低预设降维比例,依据降低后的预设降维比例,返回控制通道降维调整模块重新对训练好的初始网络模型中的每个三层数据处理块的中间通道进行降维调整。
209.根据本公开的一个或多个实施例,上述装置中的所述三层数据处理块为三层卷积块,所述三层卷积块中包括三个卷积层,且三个卷积层中第一卷积层和第三卷积层的输入通道数和输出通道数维度不同;中间卷积层为组卷积层,所述组卷积层的输入通道数和输出通道数维度相同。
210.根据本公开的一个或多个实施例,上述装置中的所述组卷积层的输入通道数与所述组卷积层的组数相同。
211.根据本公开的一个或多个实施例,上述装置中的风格化处理模块403具体用于:
212.根据所述分割结果,获取所述图像数据中的人脸区域数据;
213.根据所述人脸区域数据和动态模板,生成动态表情包。
214.根据本公开的一个或多个实施例提供的一种电子设备,该电子设备包括:
215.一个或多个处理器;
216.存储器,用于存储一个或多个程序;
217.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本公开任意实施例所述的图像风格化处理方法。
218.根据本公开的一个或多个实施例提供的一种可读介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开任意实施例所述的图像风格化处理方法。
219.以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
220.此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公
开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
221.尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1