神经网络训练及图像处理方法、装置和电子设备与流程

文档序号:14796923发布日期:2018-06-29 19:26阅读:311来源:国知局

本发明实施例涉及人工智能技术领域,尤其涉及一种神经网络训练方法、装置和电子设备,以及,一种图像处理方法、装置和电子设备。



背景技术:

神经网络是用于计算机视觉和模式识别的一个重要的研究领域,它通过计算机仿照生物大脑思维启发进行类似人类对特定对象的信息处理。通过神经网络,能够有效地对图像(包括静态图像和视频图像)中的对象进行检测和识别。随着互联网技术的发展,信息量的急剧增加,神经网络被越来越广泛地应用于图像检测和识别领域,以从大量的信息中寻找出实际所需的信息。其中,人脸特征点定位就是神经网络的一种重要应用。

当在某些电子设备,如移动终端中使用神经网络进行人脸定位时,因移动终端自身硬件性能的局限或者神经网络模型设置的原因,使得神经网络模型的规模较小,人脸定位精度受限。尤其是在视频图像中,因卷积神经网络模型规模受限,人脸定位精度不高,视频播放时相邻帧间抖动的情况会尤其严重。



技术实现要素:

本发明实施例提供了一种卷积神经网络训练方案,以及,一种图像处理方案。

根据本发明实施例的第一方面,提供了一种神经网络训练方法,包括:通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息;基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息;确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异;根据所述第一差异和所述第三差异调整所述神经网络的网络参数。

可选地,所述对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,包括:对包含有人脸特征点标注信息的原始样本图像进行信息保持加扰处理和信息非保持加扰处理。

可选地,确定所述第一预测信息和所述标注信息之间的第一差异包括:使用第一损失函数确定第一预测信息和原始样本图像中人脸特征点标注信息之间的第一差异,其中,所述第一损失函数用于度量对原始样本图像中的人脸特征点预测结果的准确度。

可选地,确定所述第一预测信息和所述第二预测信息之间的第二差异包括:使用第二损失函数确定第一预测信息和第二预测信息之间的第二差异;其中,所述第二损失函数用于度量对原始样本图像中的人脸特征点预测结果和对加扰样本图像中的人脸特征点预测结果的差异。

可选地,使用第二损失函数确定第一预测信息和第二预测信息之间的第二差异包括:通过第一距离计算函数获得所述第一预测信息和所述第二预测信息之间的距离,所述距离为所述第二差异。

可选地,确定所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异包括:通过第二距离计算函数,获得所述第二差异与所述信息保持加扰处理所处理的图像信息之间的距离,所述距离为所述第三差异。

可选地,所述信息保持加扰处理包括以下至少之一:仿射变换处理、平移处理、缩放处理、旋转处理。

可选地,所述非保持加扰处理包括以下至少之一:逐像素增加噪声处理、对比度调整处理。

根据本发明实施例的第二方面,提供了一种图像处理方法,包括:获取待检测的人脸图像;采用如第一方面任一所述的方法训练而得的神经网络检测所述人脸图像,获得人脸特征点。

可选地,所述方法还包括:根据获得的人脸特征点,对所述人脸图像进行人脸虚化或替换或变形操作。

可选地,根据获得的人脸特征点,对所述人脸图像进行变形操作,包括:按照变形指令中的变形参数,对人脸特征点进行位置调整;根据进行了位置调整后的人脸特征点,对所述人脸图像进行变形操作。

可选地,根据获得的人脸特征点,对所述人脸图像进行变形操作,包括:根据获得的人脸特征点对所述人脸图像进行正脸校正。

可选地,所述方法还包括:根据获得的人脸特征点,使用计算机绘图方式,在所述人脸图像中的预定位置绘制待展示的业务对象。

可选地,所述业务对象包括以下至少一种形式的特效:二维贴纸特效、三维特效、粒子特效。

可选地,所述业务对象包括以下至少之一:包含广告信息的所述特效、包含娱乐信息的所述特效、包含教育信息的所述特效。

可选地,所述方法还包括:在所述人脸图像上显示所述人脸特征点。

可选地,所述人脸图像为视频帧人脸图像。

可选地,所述视频帧人脸图像包括直播中的视频帧人脸图像。

根据本发明实施例的第三方面,提供了一种神经网络训练装置,包括:加扰模块,用于通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息;检测模块,用于基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息;确定模块,用于确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异;调整模块,用于根据所述第一差异和所述第三差异调整所述神经网络的网络参数。

可选地,所述加扰模块,用于通过对包含有人脸特征点标注信息的原始样本图像进行信息保持加扰处理和信息非保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息。

可选地,所述确定模块包括:第一差异确定模块,用于使用第一损失函数确定第一预测信息和原始样本图像中人脸特征点标注信息之间的第一差异,其中,所述第一损失函数用于度量对原始样本图像中的人脸特征点预测结果的准确度。

可选地,所述确定模块包括:第二差异确定模块,用于使用第二损失函数确定第一预测信息和第二预测信息之间的第二差异;其中,所述第二损失函数用于度量对原始样本图像中的人脸特征点预测结果和对加扰样本图像中的人脸特征点预测结果的差异。

可选地,所述第二差异确定模块,用于通过第一距离计算函数获得所述第一预测信息和所述第二预测信息之间的距离,所述距离为所述第二差异。

可选地,所述确定模块包括:第三差异确定模块,用于通过第二距离计算函数,获得所述第二差异与所述信息保持加扰处理所处理的图像信息之间的距离,所述距离为所述第三差异。

可选地,所述信息保持加扰处理包括以下至少之一:仿射变换处理、平移处理、缩放处理、旋转处理。

可选地,所述非保持加扰处理包括以下至少之一:逐像素增加噪声处理、对比度调整处理。

根据本发明实施例的第四方面,提供了一种图像处理装置,包括:第一获取模块,用于获取待检测的人脸图像;第二获取模块,用于采用如第三方面任一所述的装置训练而得的神经网络检测所述人脸图像,获得人脸特征点。

可选地,所述装置还包括:第一处理模块,用于根据获得的人脸特征点,对所述人脸图像进行人脸虚化或替换或变形操作。

可选地,所述第一处理模块包括:第一变形模块,用于按照变形指令中的变形参数,对人脸特征点进行位置调整;根据进行了位置调整后的人脸特征点,对所述人脸图像进行变形操作。

可选地,所述第一处理模块包括:第二变形模块,用于根据获得的人脸特征点对所述人脸图像进行正脸校正。

可选地,所述装置还包括:第二处理模块,用于根据获得的人脸特征点,使用计算机绘图方式,在所述人脸图像中的预定位置绘制待展示的业务对象。

可选地,所述业务对象包括以下至少一种形式的特效:二维贴纸特效、三维特效、粒子特效。

可选地,所述业务对象包括以下至少之一:包含广告信息的所述特效、包含娱乐信息的所述特效、包含教育信息的所述特效。

可选地,所述装置还包括:第三处理模块,用于在所述人脸图像上显示所述人脸特征点。

可选地,所述人脸图像为视频帧人脸图像。

可选地,所述视频帧人脸图像包括直播中的视频帧人脸图像。

根据本发明实施例的第五方面,提供了一种电子设备,包括:处理器、存储器、通信元件和通信总线,所述处理器、所述存储器和所述通信元件通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面任一项所述的神经网络训练方法对应的操作,或者,执行如第二方面任一项所述的图像处理方法对应的操作。

根据本发明实施例的第六方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有:用于通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息的可执行指令;用于基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息的可执行指令;用于确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异的可执行指令;用于根据所述第一差异和所述第三差异调整所述神经网络的网络参数的可执行指令。

根据本发明实施例的第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有:用于获取待检测的人脸图像的可执行指令;用于采用如第一方面任一所述的方法训练而得的神经网络检测所述人脸图像,获得人脸特征点的可执行指令。

根据本发明实施例提供的技术方案,根据原始样本图像中的人脸特征点和加扰后的样本图像中的人脸样本特征点,训练神经网络,其中,通过对原始样本图像加扰形成加扰后的样本图像,尤其是进行信息保持加扰处理后的样本图像,可以模拟相邻或时序间隔较近的视频帧图像,尤其是视频帧图像中人脸位置发生微小变动的视频帧图像;在分别获得针对原始样本图像进行人脸特征点检测后的第一预测信息和针对加扰后的样本图像进行人脸特征点检测后的第二预测信息的基础上,确定第一预测信息与原始样本图像中的人脸特征点标注信息之间的第一差异,以及第一预测信息和第二预测信息之间的第二差异;再确定第二差异与信息保持加扰处理所处理的图像信息之间的第三差异;进而,根据第一差异和第三差异对神经网络进行训练。其中,根据第一差异对神经网络进行训练可以使得神经网络具有人脸定位的功能;第二差异可以反映第一预测信息和第二预测信息之间的差异,而第三差异则可以反映信息保持加扰处理所做的处理是否被有效地约束,将这些差异作为更新神经网络的参数的依据,一定程度上相当于以模拟的帧间人脸的差异为网络训练的依据,该差异能够约束只有细微差异的两帧图像的神经网络预测信息,迫使神经网络最终应用在视频帧处理时,两帧图像之间的预测信息差异变小。在神经网络训练过程中,使用第一差异和第三差异调整神经网络的网络参数,可以大大提高训练后的神经网络的人脸定位精准度,有效降低检测过程中视频帧图像的帧间抖动,提升用户视频使用和观看体验。

附图说明

图1是根据本发明实施例一的一种神经网络训练方法的步骤流程图;

图2是根据本发明实施例二的一种神经网络训练方法的步骤流程图;

图3是根据本发明实施例三的一种神经网络训练方法的步骤流程图;

图4是根据本发明实施例四的一种图像处理方法的步骤流程图;

图5是根据本发明实施例五的一种神经网络训练装置的结构框图;

图6是根据本发明实施例六的一种神经网络训练装置的结构框图;

图7是根据本发明实施例七的一种图像处理装置的结构框图;

图8是根据本发明实施例八的一种图像处理装置的结构框图;

图9是根据本发明实施例九的一种电子设备的结构示意图。

具体实施方式

下面结合附图(若干附图中相同的标号表示相同的元素)和实施例,对本发明实施例的具体实施方式作进一步详细说明。以下实施例用于说明本发明,但不用来限制本发明的范围。

本领域技术人员可以理解,本发明实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。

实施例一

参照图1,示出了根据本发明实施例一的一种神经网络训练方法的步骤流程图。

本实施例的神经网络训练方法包括以下步骤:

步骤S100:通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息。

本发明实施例中,将加扰处理分为信息保持加扰处理和信息非保持加扰处理。

其中,信息保持加扰处理是指对原始样本图像进行的加扰处理,其加扰处理的结果对后续神经网络的输出,如对人脸特征点的预测定位,将产生影响。例如,对原始样本图像进行了人脸平移这一局部平移操作,该平移导致人脸特征点的坐标发生变化,在神经网络的训练过程中,神经网络输出的对原始样本图像中的人脸特征点的预测结果,与,神经网络输出的对进行了平移后的样本图像的人脸特征点的预测结果,将不会相同,也即,该平移操作对人脸特征点的预测产生了影响。

而信息非保持加扰处理是指对原始样本图像进行的加扰处理,其加扰处理的结果不会对后续神经网络的输出产生影响。例如,对原始样本图像进行了增加噪声处理,但该处理不会使人脸特征点的坐标发生变化,在神经网络的训练过程中,神经网络输出的对原始样本图像中的人脸特征点的预测结果,与,神经网络输出的对进行了噪声处理后的样本图像的人脸特征点的预测结果是相同的,也即,该噪声处理没有对人脸特征点的预测产生影响。

信息保持加扰处理所处理的图像信息包括原图像信息和加扰处理后的图像信息之间的差异的信息,例如,原始样本图像中某一人脸特征点的坐标为(X1,Y1),加扰后的样本图像中该人脸特征点的坐标为(X2,Y2),则二者差异可以为二者之间的距离。可见,通过该图像信息,可以获得加扰所造成的差异。

此外,本发明实施例中,如无特殊说明,人脸特征点采用常规的人脸特征点定义,适用于任何数量的人脸特征点检测,包括但不限于21个人脸特征点、68个人脸特征点、106个人脸特征点的应用场景等。

步骤S200:基于神经网络对原始样本图像以及与原始样本图像对应的加扰样本图像进行检测,得到针对原始样本图像中人脸特征点的第一预测信息以及针对加扰样本图像中人脸特征点的第二预测信息。

本实施例中,对原始样本图像进行信息保持加扰处理,生成加扰样本图像,通过对原始样本图像加扰形成加扰后的样本图像,可以模拟相邻两帧视频帧图像。

本实施例使用原始样本图像和进行了信息保持加扰处理的加扰样本图像对神经网络进行训练,其中,通过对原始样本图像的训练,可以得到原始样本图像中人脸特征点的第一预测信息;通过对加扰后的样本图像的训练,可以得到加扰样本图像中人脸特征点的第二预测信息。

步骤S300:确定第一预测信息和人脸特征点标注信息之间的第一差异、第一预测信息和第二预测信息之间的第二差异、以及第二差异与信息保持加扰处理所处理的图像信息之间的第三差异。

通过确定第一预测信息和原始样本图像中人脸特征点的标注信息的差异,可以对当前的训练结果进行评估,以作为神经网络后续训练的依据;而通过确定第一预测信息和第二预测信息之间的差异,可以对相邻的两帧中的同一人脸的人脸特征点的预测进行评估,约束只有细微差异的两帧图像的神经网络预测信息,迫使神经网络最终应用在视频帧处理时,两帧图像之间的预测信息差异变小;第三差异反映了经神经网络处理后,原始样本处理和加扰样本图像二者形成的差异,与神经网络对二者进行检测输出的预测信息之间的差异,之间的一致性,该一致性越小,则对加扰处理形成的差异的训练效果越好。

步骤S400:根据第一差异和第三差异调整神经网络的网络参数。

神经网络的训练是一个迭代的过程,本发明实施例仅对其中的一次训练过程进行了说明,但本领域技术人员应当明了,对神经网络的每次训练都可采用该训练方式,直至完成神经网络的训练。

对神经网络的训练是一个迭代过程,需要有一个训练终止条件,该条件可以如迭代训练次数,也可以如收敛条件。因此,可以判断对神经网络的训练是否满足预定的训练终止条件;若不满足,则根据第一差异和第三差异调整神经网络的网络参数,使用调整后的网络参数继续训练神经网络,直至满足预定的训练终止条件;若满足,则完成对神经网络的训练。

根据本实施例提供的方案,根据原始样本图像中的人脸特征点和加扰后的样本图像中的人脸样本特征点,训练神经网络,其中,通过对原始样本图像加扰形成加扰后的样本图像,尤其是进行信息保持加扰处理后的样本图像,可以模拟相邻或时序间隔较近的视频帧图像,尤其是视频帧图像中人脸位置发生微小变动的视频帧图像;在分别获得针对原始样本图像进行人脸特征点检测后的第一预测信息和针对加扰后的样本图像进行人脸特征点检测后的第二预测信息的基础上,确定第一预测信息与原始样本图像中的人脸特征点标注信息之间的第一差异,以及第一预测信息和第二预测信息之间的第二差异;再确定第二差异与信息保持加扰处理所处理的图像信息之间的第三差异;进而,根据第一差异和第三差异对神经网络进行训练。其中,根据第一差异对神经网络进行训练可以使得神经网络具有人脸定位的功能;第二差异可以反映第一预测信息和第二预测信息之间的差异,而第三差异则可以反映信息保持加扰处理所做的处理是否被有效地约束,将这些差异作为更新神经网络的参数的依据,一定程度上相当于以模拟的帧间人脸的差异为网络训练的依据,该差异能够约束只有细微差异的两帧图像的神经网络预测信息,迫使神经网络最终应用在视频帧处理时,两帧图像之间的预测信息差异变小。在神经网络训练过程中,使用第一差异和第三差异调整神经网络的网络参数,可以大大提高训练后的神经网络的人脸定位精准度,有效降低检测过程中视频帧图像的帧间抖动,提升用户视频使用和观看体验。

实施例二

参照图2,示出了根据本发明实施例二的一种神经网络训练方法的步骤流程图。

本实施例以对卷积神经网络的训练为例对本发明的方案进行说明,但本领域技术人员应当明了,其它类似的神经网络也可参考本实施例实现本发明的神经网络训练方案。

本实施例的神经网络训练方法包括以下步骤:

步骤S102:获取待训练的原始样本图像。

其中,原始样本图像中包含有人脸特征点的标注信息,也即,预先对待训练的原始样本图像进行人脸特征点的标注,以进行卷积神经网络的人脸特征点检测训练。

步骤S104:对原始样本图像进行加扰处理,获取加扰后的样本图像,以及信息保持加扰处理所处理的图像信息。

本实施例中,对每一个待训练的原始样本图像进行加扰处理,生成新的图像,即加扰后的样本图像。原始样本图像和加扰后的样本图像都将输入卷积神经网络,进行卷积神经网络训练。同时,记录信息保持加扰处理所处理的图像信息,包括原图像信息和加扰处理后的图像信息之间的差异的信息。

本实施例中,对原始样本图像进行的加扰处理,即包括信息保持加扰处理,也包括信息非保持加扰处理。在针对防抖动的卷积神经网络训练中,仅使用信息保持加扰处理对原始样本图像进行加扰,进而训练卷积神经网络,可以使得训练更有针对性;而既使用信息保持加扰处理又使用信息非保持加扰处理对原始样本图像进行加扰,进而训练卷积神经网络,既可以训练卷积神经网络的防抖动性能,又可以使得卷积神经网络能够对不同的图像进行鉴别和进一步的检测处理,提升卷积神经网络的检测性能。但是,因信息非保持加扰处理不会影响卷积神经网络对人脸特征点的输出,因此仅对信息保持加扰处理所处理的图像信息进行记录即可。

其中,对原始样本图像的信息保持加扰处理和信息非保持加扰处理均可以由本领域技术人员采用任意适当的方式进行,如通过对比度调整或者高斯噪声函数进行信息非保持加扰处理,通过旋转拉伸或者位移变换函数或者仿射变换函数进行信息保持加扰处理,等等。但不限于此,其他的加扰处理也同样适用。

步骤S106:将原始样本图像和加扰后的样本图像输入卷积神经网络进行检测训练,获得针对原始样本图像中人脸特征点的第一预测信息和针对加扰样本图像中人脸特征点的第二预测信息。

将原始样本图像和加扰样本图像输入卷积神经网络进行检测训练,分别获得对应的预测信息。其中,卷积神经网络中的卷积层部分可以采用常规的卷积层部分,包括但不限于卷积层、非线性响应单元(非线性响应单元包括但不限于ReLU层)、特征提取层、计算层等,对原始样本图像和加扰样本图像的处理可以参照相关的卷积神经网络的处理进行,在此不再赘述。经卷积神经网络的检测训练后,获得相应的预测信息,对于原始样本图像,该预测信息为对原始样本图像中人脸特征点的检测结果;对于加扰样本图像,该预测信息为对加扰样本图像中的人脸特征点的检测结果(某次的预测信息可以理解为卷积神经网络在某次训练过程中的输出结果)。

步骤S108:确定第一预测信息和原始样本图像中人脸特征点的标注信息之间的第一差异、以及第一预测信息和第二预测信息之间的第二差异。

本实施例中,使用第一损失函数确定第一预测信息和原始样本图像中人脸特征点的标注信息之间的第一差异;使用第二损失函数确定第一预测信息和第二预测信息之间的第二差异。

其中,第一损失函数用于度量对原始样本图像中的人脸特征点检测结果的准确度,第二损失函数用于度量对原始样本图像中的人脸特征点检测结果和对加扰样本图像中的人脸特征点检测结果的差异。第一损失函数可以为常规的卷积神经网络中的损失函数,如EuclideanLoss函数、SmoothL1Loss函数等,通过第一损失函数获得的损失值为第一损失值。第二损失函数可以为适当的度量两个检测结果差异的函数。一种可行方案中,可以使用适当的距离计算函数(为与后续的距离计算函数相区分,将该距离计算函数记为第一距离计算函数)作为第二损失函数,在此情况下,先获得第一预测信息和第二预测信息;使用第一距离计算函数计算第一预测信息和第二预测信息之间的距离;将所述距离确定为第二损失值,该损失值即为第二差异。其中,第一距离计算函数可以为任意适当的函数,如欧式距离计算函数、马式距离计算函数等等。

需要说明的是,获得第一差异和获得第二差异的执行可以不分先后顺序,也可以并行执行。

步骤S110:根据第二差异与信息保持加扰处理所处理的图像信息,获得第三差异。

在一种可行方式中,可以通过第二距离计算函数,获得第二差异与信息保持加扰处理所处理的图像信息之间的距离,所述距离为第三差异。其中,第二距离计算函数可以为任意适当的函数,如欧式距离计算函数、马式距离计算函数等等。

步骤S112:根据第一差异和第三差异调整卷积神经网络的网络参数。

将第一差异和第三差异均作为更新卷积神经网络的依据,以使参数更新更为有效,训练出的卷积神经网络除了能够精准地进行人脸定位外,还能够有效减弱视频中相邻两帧的人脸抖动。

对卷积神经网络的训练是一个迭代过程,需要有一个训练终止条件,该条件可以如迭代训练次数,也可以如收敛条件。因此,可以判断对卷积神经网络的训练是否满足预定的训练终止条件;若不满足,则根据第一差异和第三差异调整卷积神经网络的网络参数,使用调整后的网络参数继续训练卷积神经网络,直至满足预定的训练终止条件;若满足,则完成对卷积神经网络的训练。

在传统的用于人脸定位的卷积神经网络训练过程中,由于卷积神经网络的拟合能力极强,往往需要通过大量训练数据来避免过拟合问题,但又会导致拟合出的函数在目标函数附近小范围内剧烈震荡,即从微观上看,卷积神经网络是过拟合的,函数大起大落,但从宏观上看,卷积神经网络却拟合得很好。基于卷积神经网络的这种特性,传统的基于卷积神经网络的方法通常会导致输出的结果受输入的微小扰动影响较大,反映在视频中的人脸特征点定位结果中时,会使得相邻两帧视频图像输出的人脸特征点会在某个平均位置附近以一定幅度抖动,从而影响后续基于人脸特征点定位结果的特效如人脸替换、人脸贴纸等的视觉效果。而通过本发明实施例提供的方案,根据原始样本图像中的人脸特征点和加扰后的样本图像中的人脸样本特征点,训练卷积神经网络,其中,通过对原始样本图像加扰形成加扰后的样本图像,尤其是进行信息保持加扰处理后的样本图像,可以模拟视频播放中相邻或时序间隔较近的两帧视频帧图像,尤其是视频图像中人脸位置发生微小变动的两帧视频帧图像;在分别获得针对原始样本图像进行人脸特征点检测后的第一预测信息和针对加扰后的样本图像进行人脸特征点检测后的第二预测信息的基础上,确定第一预测信息与原始样本图像中的人脸特征点标注信息之间的第一差异,以及第一预测信息和第二预测信息之间的第二差异;再确定第二差异与信息保持加扰处理所处理的图像信息之间的第三差异;进而,根据第一差异和第三差异对卷积神经网络进行训练。其中,根据第一差异对卷积神经网络进行训练可以使得卷积神经网络具有人脸定位的功能;第二差异可以反映第一预测信息和第二预测信息之间的差异,而第三差异则可以反映信息保持加扰处理所做的处理是否被有效地约束,将这些差异作为更新卷积神经网络的参数的依据,一定程度上相当于以模拟的帧间人脸的差异为网络训练的依据,该差异能够约束只有细微差异的两帧图像的卷积神经网络预测信息,迫使卷积神经网络最终应用在视频帧处理时,两帧图像之间的预测信息差异变小。在卷积神经网络训练过程中,使用第一差异和第三差异调整卷积神经网络的网络参数,可以大大提高训练后的卷积神经网络的人脸定位精准度,有效降低检测过程中视频帧图像的帧间抖动,提升用户视频使用和观看体验。

本实施例的卷积神经网络训练方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:移动终端、PC机等。

实施例三

参照图3,示出了根据本发明实施例三的一种神经网络训练方法的步骤流程图。

本实施例仍以对卷积神经网络的训练为例,本实施例的卷积神经网络训练方法包括以下步骤:

步骤S202:获取待训练的原始样本图像I。

其中,原始样本图像为进行了人脸特征点标注的样本图像,也即,原始样本图像中包含有人脸特征点的标注信息。

步骤S204:对原始样本图像I,做图像变换T得到新的样本图像It。

也即,对原始样本图像I进行加扰处理(本实施例中为图像变换T),获得加扰后的样本图像即It。

本实施例中,随机选取图像变换T进行原始样本图像的加扰处理,该变换T包括但不限于几何变换(如仿射变换、平移、缩放、旋转等)和逐像素添加噪音等。

其中,对原始样本图像进行的变换T中包含需要被卷积神经网络保持的部分如几何变换的部分,也包含不需要被保持的部分如添加噪音的部分。将需要被卷积神经网络保持的部分记为Tk(即信息保持加扰处理所处理的图像信息)。

步骤S206:将I与It输入卷积神经网络,经卷积层处理,得到对应的输出O与Ot。

步骤S208:将输出O与原始样本图像I的人脸特征点标注计算,得到损失函数的原有部分L。

步骤S210:通过Ot和O计算被卷积神经网络保留的图像变换To。

例如,Tk仅包含平移时,可通过Ot-O得到保留的平移To;又例如,生成It时仅采用仿射变换,该变换为需要保持的变换,在已知Ot和O的时候通过最小二乘法计算6个仿射变换参数等。

步骤S212:将To与Tk计算得到损失函数的变换部分Lt。

例如,

步骤S214:将Lt+L作为整体的损失函数,根据其结果,对卷积神经网络进行训练。

如,通过传统的卷积神经网络训练方法进行反向传播和参数更新。

其中,更新的卷积神经网络的网络参数包括但不限于:层间输出线性变化的权重、卷积核的值,等等。

通过本实施例,对于每一张用于训练的原始样本图像,通过一定的图像变换生成另一张训练样本图像。该图像变换的变换结果可能是需要被输出保持的或是不需要保持的,或是两者的综合。针对每一个原始样本图像,该图像变换的选取是在一定范围内随机选取的。原始样本图像的输出和图像变换生成的样本图像的输出对比后可以推导出一个变换,对于变换结果中需要被保持的部分,推导出的变换应当与之相等;对于变换结果中不需要被保持的部分,推导出的变换应当为一单位变换。损失函数即需要同时限定原始样本图像的输出和标注一致,也需要限定推导出的变换与图像变换生成的样本图像的变换中应当保持的部分一致。为此,本实施例通过在训练用于人脸特征点定位的卷积神经网络时,引入一个新的损失函数Lt,显式地加入了卷积神经网络对变换保持性的约束,使得两帧输出的结果必须尽量满足这一约束,从而有效抑制了不符合这一约束的抖动,在不改变原有训练过程的输入数据、输出数据和训练过程的情况下,可以大幅降低卷积神经网络输出的人脸特征点定位结果的抖动问题。

实施例四

参照图4,示出了根据本发明实施例四的一种图像处理方法的步骤流程图。

本实施例中,采用实施例一、二或三中示出的经过训练的神经网络对视频图像进行人脸特征点检测,实现视频帧图像中人脸定位的防抖动处理。

本实施例的图像处理方法包括以下步骤:

步骤S302:获取待检测的人脸图像。

其中,人脸图像可以是静态人脸图像,也可以是视频帧人脸图像。在一种可选方案中,视频帧人脸图像包括直播视频中的人脸图像。

在某些场景中如直播视频中,往往有较高的防抖需要。以通过增强现实AR技术为主播增添头面部装饰素材为例,若相邻或时序间隔较近的视频图像间,主播图像抖动较严重,则该素材无法准确增添,影响视频效果和用户观感。需要通过防抖动手段在保证准确进行主播的人脸定位的同时,避免帧间抖动。

步骤S304:采用具有防抖动功能的神经网络检测人脸图像,获得人脸特征点。

本实施例中,采用如实施例一、二或三中所示的方法训练而得的神经网络,通过该网络可以快速准确地获得视频帧图像中的人脸特征点,而且能够有效避免人脸的帧间抖动。

步骤S306:基于获得的人脸特征点,对人脸图像进行处理。

其中,对人脸图像的处理包括但不限于以下方式:

方式1:根据获得的人脸特征点,对人脸图像进行人脸替换操作、或者虚化操作、或者变形操作。

例如,在获得了人脸特征点后,一方面可以将当前人脸替换为其他人脸;另一方面,也可以保留当前人脸,而对除人脸之外的其他部分进行替换,如进行服装或场景替换等。

再例如,在获得了人脸特征点后,根据人脸特征点确定需要虚化处理的至少部分区域,对确定的区域进行虚化处理,如通过调整该区域的像素值使其变模糊或者打马赛克等等。

其中,在进行变形操作时,按照变形指令中的变形参数,对人脸特征点进行位置调整;根据进行了位置调整后的人脸特征点,对人脸图像进行变形操作。变形参数可以指示对人脸拉伸一定程度或者将人脸特征点调整一定程度等等。

此外,变形操作还可以包括对人脸进行正脸,如将侧脸转为正脸。此种情况可以根据获得的人脸特征点对人脸图像进行正脸校正即可。具体的校正方式可以由本领域技术人员根据实际需要采用任意适当的方式实现,本发明实施例对此不作限制。

方式2:根据获得的人脸特征点,使用计算机绘图方式,在人脸图像中的预定位置,绘制待展示的业务对象。

其中,业务对象包括以下至少一种形式的特效:二维贴纸特效、三维特效、粒子特效。在具体应用场景中,业务对象可以展现为以下至少之一:包含广告信息的特效、包含娱乐信息的特效、包含教育信息的特效。

例如,针对人脸所在区域,预先设定业务对象展示位置,如额头区域、脸颊区域、鼻子区域、唇部区域等,并设定相应的可展示的业务对象。在获得了人脸特征点后,可以根据用户选择的待展示的业务对象,在相应特征点对应的位置展示业务对象,如在额头部位进行头饰、发饰贴纸装饰等等。

对业务对象的绘制可以通过适当的计算机绘图方式,如计算机图形图像绘制或渲染等方式实现,包括但不限于:基于OpenGL图形绘制引擎进行绘制等。OpenGL定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口,其与硬件无关,可以方便地进行2D或3D图形图像的绘制。通过OpenGL,不仅可以实现2D效果如2D贴纸的绘制,还可以实现3D特效的绘制及粒子特效的绘制等等。但不限于OpenGL,其它方式,如Unity或OpenCL等也同样适用。

方式3:根据获得的人脸特征点,在人脸图像上显示人脸特征点。

需要说明的是,在实际应用中,本领域技术人员可以根据上述对人脸图像的处理实现对人脸图像的其它处理,本发明实施例对此不作限制。

本实施例的图像处理方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:移动终端、PC机、服务器等。

在实际应用中,需要对视频帧图像中的人脸进行防抖处理,例如,需要检测出视频帧图像中的人脸,然后根据检测结果进行相应处理,如在人脸相应位置进行贴纸操作,如在额头上进行装饰贴纸,传统方式在这种情况下会因出现人脸的抖动,无法将装饰贴纸贴在适当的位置,而通过本发明实施例提供的方案,有效减小了帧间人脸抖动,进而进行较为准确的处理。

可见,通过本实施例的图像处理方法,可以准确有效地对视频帧图像进行人脸特征点检测,并有效降低视频帧间的抖动现象,提升用户视频观看体验。

实施例五

参照图5,示出了根据本发明实施例五的一种神经网络训练装置的结构框图。

本实施例的神经网络训练装置包括:加扰模块502,用于通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息;检测模块504,用于基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息;确定模块506,用于确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异;调整模块508,用于根据所述第一差异和所述第三差异调整所述神经网络的网络参数。

本实施例的神经网络训练装置用于实现前述多个方法实施例中相应的神经网络训练方法,并具有相应的方法实施例的有益效果,在此不再赘述。

实施例六

参照图6,示出了根据本发明实施例六的一种神经网络训练装置的结构框图。

本实施例的神经网络训练装置包括:加扰模块602,用于通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息;检测模块604,用于基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息;确定模块606,用于确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异;调整模块608,用于根据所述第一差异和所述第三差异调整所述神经网络的网络参数。

可选地,所述加扰模块602用于通过对包含有人脸特征点标注信息的原始样本图像进行信息保持加扰处理和信息非保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息。

可选地,所述确定模块606包括:第一差异确定模块6062,用于使用第一损失函数确定第一预测信息和原始样本图像中人脸特征点标注信息之间的第一差异,其中,所述第一损失函数用于度量对原始样本图像中的人脸特征点预测结果的准确度。

可选地,所述确定模块606包括:第二差异确定模块6064,用于使用第二损失函数确定第一预测信息和第二预测信息之间的第二差异;其中,所述第二损失函数用于度量对原始样本图像中的人脸特征点预测结果和对加扰样本图像中的人脸特征点预测结果的差异。

可选地,所述第二差异确定模块6064用于通过第一距离计算函数获得所述第一预测信息和所述第二预测信息之间的距离,所述距离为所述第二差异。

可选地,所述确定模块606包括:第三差异确定模块6066,用于通过第二距离计算函数,获得所述第二差异与所述信息保持加扰处理所处理的图像信息之间的距离,所述距离为所述第三差异。

可选地,所述信息保持加扰处理包括以下至少之一:仿射变换处理、平移处理、缩放处理、旋转处理。

可选地,所述非保持加扰处理包括以下至少之一:逐像素增加噪声处理、对比度调整处理。

本实施例的神经网络训练装置用于实现前述多个方法实施例中相应的神经网络训练方法,并具有相应的方法实施例的有益效果,在此不再赘述。

实施例七

参照图7,示出了根据本发明实施例七的一种图像处理装置的结构框图。

本实施例的图像处理装置包括:第一获取模块702,用于获取待检测的人脸图像;第二获取模块704,用于采用如实施例五或六中所述的装置训练而得的神经网络检测所述人脸图像,获得人脸特征点。

本实施例的图像处理装置用于实现前述多个方法实施例中相应的图像处理方法,并具有相应的方法实施例的有益效果,在此不再赘述。

实施例八

参照图8,示出了根据本发明实施例八的一种图像处理装置的结构框图。

本实施例的图像处理装置包括:第一获取模块802,用于获取待检测的人脸图像;第二获取模块804,用于采用如实施例五或六所述的装置训练而得的神经网络检测所述人脸图像,获得人脸特征点。

可选地,所述装置还包括:第一处理模块806,用于根据获得的人脸特征点,对所述人脸图像进行人脸虚化或替换或变形操作。

可选地,所述第一处理模块806包括:第一变形模块8062,用于按照变形指令中的变形参数,对人脸特征点进行位置调整;根据进行了位置调整后的人脸特征点,对所述人脸图像进行变形操作。

可选地,所述第一处理模块806包括:第二变形模块8064,用于根据获得的人脸特征点对所述人脸图像进行正脸校正。

可选地,所述装置还包括:第二处理模块808,用于根据获得的人脸特征点,使用计算机绘图方式,在所述人脸图像中的预定位置绘制待展示的业务对象。

可选地,所述业务对象包括以下至少一种形式的特效:二维贴纸特效、三维特效、粒子特效。

可选地,所述业务对象包括以下至少之一:包含广告信息的所述特效、包含娱乐信息的所述特效、包含教育信息的所述特效。

可选地,所述装置还包括:第三处理模块810,用于在所述人脸图像上显示所述人脸特征点。

可选地,所述人脸图像为视频帧人脸图像。

可选地,所述视频帧人脸图像包括直播中的视频帧人脸图像。

本实施例的图像处理装置用于实现前述多个方法实施例中相应的图像处理方法,并具有相应的方法实施例的有益效果,在此不再赘述。

实施例九

本发明实施例九提供了一种电子设备,例如可以是移动终端、个人计算机(PC)、平板电脑、服务器等。下面参考图9,其示出了适于用来实现本发明实施例的终端设备或服务器的电子设备900的结构示意图:如图9所示,电子设备900包括一个或多个处理器、通信元件等,所述一个或多个处理器例如:一个或多个中央处理单元(CPU)901,和/或一个或多个图像处理器(GPU)913等,处理器可以根据存储在只读存储器(ROM)902中的可执行指令或者从存储部分908加载到随机访问存储器(RAM)903中的可执行指令而执行各种适当的动作和处理。通信元件包括通信组件912和/或通信接口909。其中,通信组件912可包括但不限于网卡,所述网卡可包括但不限于IB(Infiniband)网卡,通信接口909包括诸如LAN卡、调制解调器等的网络接口卡的通信接口,通信接口909经由诸如因特网的网络执行通信处理。

处理器可与只读存储器902和/或随机访问存储器903中通信以执行可执行指令,通过通信总线904与通信组件912相连、并经通信组件912与其他目标设备通信,从而完成本发明实施例提供的任一项业务统计方法对应的操作,例如,通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息;基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息;确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异;根据所述第一差异和所述第三差异调整所述神经网络的网络参数。或者,例如,获取待检测的人脸图像;采用上一例如中所述的方法训练而得的神经网络检测所述人脸图像,获得人脸特征点。

此外,在RAM 903中,还可存储有装置操作所需的各种程序和数据。CPU901或GPU913、ROM902以及RAM903通过通信总线904彼此相连。在有RAM903的情况下,ROM902为可选模块。RAM903存储可执行指令,或在运行时向ROM902中写入可执行指令,可执行指令使处理器执行上述通信方法对应的操作。输入/输出(I/O)接口905也连接至通信总线904。通信组件912可以集成设置,也可以设置为具有多个子模块(例如多个IB网卡),并在通信总线链接上。

以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信接口909。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。

需要说明的,如图9所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图9的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如GPU和CPU可分离设置或者可将GPU集成在CPU上,通信元件可分离设置,也可集成设置在CPU或GPU上,等等。这些可替换的实施方式均落入本发明的保护范围。

特别地,根据本发明实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本发明实施例提供的方法步骤对应的指令,例如,通过对包含有人脸特征点标注信息的原始样本图像至少进行信息保持加扰处理,获得加扰样本图像以及信息保持加扰处理所处理的图像信息;基于神经网络对所述原始样本图像以及所述加扰样本图像进行检测,得到针对所述原始样本图像中人脸特征点的第一预测信息以及针对所述加扰样本图像中人脸特征点的第二预测信息;确定所述第一预测信息和所述标注信息之间的第一差异、所述第一预测信息和所述第二预测信息之间的第二差异、以及所述第二差异与所述信息保持加扰处理所处理的图像信息之间的第三差异;根据所述第一差异和所述第三差异调整所述神经网络的网络参数。或者,例如,获取待检测的人脸图像;采用上一例如中所述的方法训练而得的神经网络检测所述人脸图像,获得人脸特征点。在这样的实施例中,该计算机程序可以通过通信元件从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被处理器执行时,执行本发明实施例的方法中限定的上述功能。

需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。

上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的处理方法。此外,当通用计算机访问用于实现在此示出的处理的代码时,代码的执行将通用计算机转换为用于执行在此示出的处理的专用计算机。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。

以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。

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