图像处理方法、装置、电子设备及存储介质与流程

文档序号:21276209发布日期:2020-06-26 23:17阅读:198来源:国知局
图像处理方法、装置、电子设备及存储介质与流程

本公开涉及图像处理技术,尤其涉及一种图像处理方法、装置、电子设备及存储介质。



背景技术:

随着图像处理技术的发展,出现了对图像进行变型处理的技术,该技术可以将待处理图像当中包含的如脸部、手臂等目标对象进行变型处理,以达到对图像的目标对象进行优化显示的效果。

相关技术中,主要是通过识别如人脸等目标对象的关键点,对目标对象进行变型处理,从而实现如瘦脸等变型效果。然而,这种技术依赖于识别目标对象的关键点,当关键点不准或丢失,针对于目标对象的变型效果便会直接丢失,而在显示界面上直接展示出未经处理的目标对象的图像;当目标对象又重新出现时,会再针对当前的目标对象识别关键点做变型处理,而最终的变型效果也是直接在显示界面上再次生效,从而会造成画面闪动,以瘦脸为例,这种技术表现为人脸在显示界面上会由于关键点的丢失或重新出现而突然还原或者变瘦,影响瘦脸效果。由此,这种技术存在对图像中目标对象的变型处理效果较差的问题。



技术实现要素:

本公开提供一种图像处理方法、装置、电子设备及存储介质,以至少解决相关技术中对图像中目标对象的变型处理效果较差的问题。本公开的技术方案如下:

根据本公开实施例的第一方面,提供一种图像处理方法,包括:

当针对于图像中的目标对象的对象识别结果发生变化时,获取所述变化发生前所述目标对象的最后变型形态,作为所述目标对象的起始变型形态;所述目标对象为变型处理的对象;

获取所述目标对象的与所述变化对应的目标变型形态;

将所述起始变型形态、所述目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示所述目标对象。

在一示例性实施例中,所述将所述起始变型形态、所述目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示所述目标对象,包括:

根据所述起始变型形态和目标变型形态,得到所述目标对象的变型幅度;所述变型幅度为所述目标对象的变型形态的变化幅度;按照与所述变型幅度相适应的渐变速度,展示所述目标对象。

在一示例性实施例中,所述根据所述起始变型形态和目标变型形态,得到所述目标对象的变型幅度,包括:

根据所述起始变型形态和所述目标变型形态,分别得到所述目标对象的关键点在所述图像上的起始位置和目标位置;所述关键点为所述图像上,用于对所述目标对象进行变型处理的像素点;根据所述起始位置和目标位置之间的距离,得到所述变型幅度。

在一示例性实施例中,所述按照与所述变型幅度相适应的渐变速度,展示所述目标对象之前,还包括:

获取预设的所述目标对象的变型时长阈值;根据所述变型幅度和变型时长阈值,得到变型速度阈值;获取不大于所述变型速度阈值的渐变速度,作为所述与所述变型幅度相适应的渐变速度。

在一示例性实施例中,所述渐变速度为不大于所述变型速度阈值的恒定值。

在一示例性实施例中,所述按照与所述变型幅度相适应的渐变速度,展示所述目标对象,包括:

按照所述渐变速度,将所述目标对象的关键点,从所述关键点在所述图像上的起始位置逐渐向所述关键点在所述图像上的目标位置移动,以展示所述目标对象从所述起始形态向所述结束形态渐变;其中,所述关键点在所述图像上的所述起始位置和所述目标位置,分别根据所述起始变型形态和所述目标变型形态得到。

在一示例性实施例中,所述当针对于图像中的目标对象的对象识别结果发生变化时,获取所述变化发生前所述目标对象的最后变型形态,作为所述目标对象的起始变型形态之前,还包括:

获取针对于所述图像中的目标对象的对象识别结果;所述对象识别结果包括:在图像中识别到目标对象或者在图像中未识别到目标对象;当所述对象识别结果从所述在图像中识别到目标对象,变化为所述在图像中未识别到目标对象时,或者,当所述对象识别结果从所述在图像中未识别到目标对象,变化为所述在图像中识别到目标对象时,判断所述对象识别结果发生变化。

在一示例性实施例中,所述目标变型形态为所述对象识别结果的变化所触发的对所述目标对象进行变型处理的最终变型形态。

在一示例性实施例中,当所述对象识别结果的变化为从在所述图像中识别到所述目标对象,变化为在所述图像中未识别到所述目标对象时,所述目标变型形态为所述目标对象未经变型处理的形态;当所述对象识别结果的变化为从在所述图像中未识别到所述目标对象,变化为在所述图像中识别到所述目标对象时,所述目标变型形态为所述目标对象经过完整变型处理的形态。

根据本公开实施例的第二方面,提供一种图像处理装置,包括:

起始形态获取模块,用于当针对于图像中的目标对象的对象识别结果发生变化时,获取所述变化发生前所述目标对象的最后变型形态,作为所述目标对象的起始变型形态;所述目标对象为变型处理的对象;

目标形态获取模块,用于获取所述目标对象的与所述变化对应的目标变型形态;

对象展示模块,用于将所述起始变型形态、所述目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示所述目标对象。

在一示例性实施例中,所述对象展示模块,包括:

幅度获取单元,用于根据所述起始变型形态和目标变型形态,得到所述目标对象的变型幅度;所述变型幅度为所述目标对象的变型形态的变化幅度;对象展示单元,用于按照与所述变型幅度相适应的渐变速度,展示所述目标对象。

在一示例性实施例中,所述幅度获取单元,进一步用于根据所述起始变型形态和所述目标变型形态,分别得到所述目标对象的关键点在所述图像上的起始位置和目标位置;所述关键点为所述图像上,用于对所述目标对象进行变型处理的像素点;根据所述起始位置和目标位置之间的距离,得到所述变型幅度。

在一示例性实施例中,所述对象展示单元,还用于在所述按照与所述变型幅度相适应的渐变速度,展示所述目标对象之前,获取预设的所述目标对象的变型时长阈值;根据所述变型幅度和变型时长阈值,得到变型速度阈值;获取不大于所述变型速度阈值的渐变速度,作为所述与所述变型幅度相适应的渐变速度。

在一示例性实施例中,所述渐变速度为不大于所述变型速度阈值的恒定值。

在一示例性实施例中,所述对象展示单元,进一步用于按照所述渐变速度,将所述目标对象的关键点,从所述图像上的起始位置逐渐向目标位置移动,以展示所述目标对象从所述起始形态向所述结束形态渐变;其中,所述关键点在所述图像上的所述起始位置和所述目标位置,分别根据所述起始变型形态和所述目标变型形态得到。

在一示例性实施例中,所述图像处理装置,还包括:

结果获取单元,用于获取针对于所述图像中的目标对象的对象识别结果;所述对象识别结果包括:在图像中识别到目标对象或者在图像中未识别到目标对象;变化判断单元,用于当所述对象识别结果从所述在图像中识别到目标对象,变化为所述在图像中未识别到目标对象时,或者,当所述对象识别结果从所述在图像中未识别到目标对象,变化为所述在图像中识别到目标对象时,判断所述对象识别结果发生变化。

在一示例性实施例中,所述目标变型形态为所述对象识别结果的变化所触发的对所述目标对象进行变型处理的最终变型形态。

在一示例性实施例中,当所述对象识别结果的变化为从在所述图像中识别到所述目标对象,变化为在所述图像中未识别到所述目标对象时,所述目标变型形态为所述目标对象未经变型处理的形态;当所述对象识别结果的变化为从在所述图像中未识别到所述目标对象,变化为在所述图像中识别到所述目标对象时,所述目标变型形态为所述目标对象经过完整变型处理的形态。

根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上所述的图像处理方法。

根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上所述的图像处理方法。

根据本公开实施例的第五方面,提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行第一方面的任一项实施例中所述的图像处理方法。

本公开的实施例提供的技术方案至少带来以下有益效果:

当检测到针对于图像中的目标对象的对象识别结果发生变化的时候,获取该变化发生之前该目标对象的最后变型形态,作为该目标对象的起始变型形态,并获取该目标对象的与上述变化相对应的目标变型形态,从而将起始变型形态和目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示目标对象。该方案能够根据对象识别结果的动态变化为目标对象进行动态适配的变型处理,通过从目标对象的起始变型形态向目标变型形态渐变的渐变过程,使得在显示界面上所展示的目标对象从起始变型形态逐渐地向目标变型形态过渡,避免由于目标对象在图像中突然出现或丢失等原因引起变型效果突变而造成画面闪动,优化目标对象的变型处理效果。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。

图1是根据一示例性实施例示出的一种图像处理方法的应用环境图。

图2是根据一示例性实施例示出的一种图像处理方法的流程图。

图3是根据一示例性实施例示出的一种图像处理方法的效果示意图。

图4是根据一示例性实施例示出的一种展示目标对象的方法的流程图。

图5是根据一示例性实施例示出的一种获取变型幅度的方法的流程图。

图6是根据一示例性实施例示出的一种获取渐变速度的方法的流程图。

图7是根据一示例性实施例示出的一种图像处理方法的流程图。

图8是根据一示例性实施例示出的一种图像处理装置的框图。

图9是根据一示例性实施例示出的一种电子设备的内部结构图。

具体实施方式

为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

本公开所提供的图像处理方法,可以应用于如图1所示的应用环境中,图1是根据一示例性实施例示出的一种图像处理方法的应用环境图,该应用环境中可以包括终端100,该终端100可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。

终端100可以通过其上配置的摄像头采集的用户10的图像,基于该图像对用户10的脸部11进行变型处理,例如可以以采集的图像中的人脸的关键点为基础,采用液化变型处理的方式对用户10的脸部11对应的图像进行瘦脸处理,以使得终端100在其显示界面上展示出经过瘦脸处理的图像。

具体的,终端100可以实时采集用户10的图像,以脸部作为变型处理的目标对象,并具体对脸部进行瘦脸处理,终端100可以显示出经过瘦脸处理的第一图像111,该第一图像111当中可以包括经瘦脸处理的脸部12,而当该第一图像111当中出现遮挡物20时,如第二图像112所示,遮挡物20对目标对象即脸部12形成一定程度的遮挡而使得终端100的脸部识别模型无法识别出脸部12,在这种情况下,相关技术中对脸部12的瘦脸效果失效,而会直接在显示界面上显示出第三图像113,第三图像113中的脸部13为未经瘦脸处理的脸部,另外,当遮挡物20从第三图像113移除时,如第四图像114所示,终端100可在该第四图像114中重新识别出脸部13,在这种情况下,相关技术中会重新对该脸部13进行瘦脸处理,并在其显示界面直接显示出第五图像115,该第五图像115的脸部12未经过瘦脸处理的脸部。这样,相关技术中在如人脸等目标对象从图像上丢失、或者又重新出现时,会造成画面闪动,对目标对象进行美型处理的效果较差。

本公开的提供的图像处理方法,终端100可先判断图像中的目标对象的对象识别结果是否发生变化,当针对于图像中的目标对象的对象识别结果发生变化时,获取该变化发生前目标对象的最后变型形态作为目标对象的起始变型形态,还获取该目标对象的与该变化对应的目标变型形态,然后,终端100可以在其显示界面上,将起始变型形态、目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示目标对象。

具体结合图1进行说明,本公开的提供的图像处理方法,终端100第二图像112中的脸部12被遮挡物20遮挡时判断对象识别结果发生变化,即从能在图像上识别到脸部变化成不能再图像上识别到脸部,如第二图像112所示,由此终端100可以将发生变化前的脸部12在第一图像111的变型形态作为该脸部12的起始变型形态,该起始变型形态可以是瘦脸的最终形态,而可以将瘦脸处理前的脸部12的原始形态作为目标变型形态,该目标变型形态对应于第三图像113的脸部13的变型形态,在这种情况下,终端100可以将起始变型形态、目标变型形态分别作为渐变的起始形态和结束形态,在其显示界面上以渐变方式展示脸部,即展示从第二图像112的脸部12的变型形态向第三图像113的脸部13的变型形态的渐变过程。

相应的,当第三图像113中的遮挡物20被移除时,终端100从不能在图像上识别到脸部变化成能在图像上识别到脸部,如第四图像114所示,由此终端100可以将发生变化前的脸部13在第三图像113的变型形态作为该脸部13的起始变型形态,该起始变型形态可以为瘦脸处理前的脸部的原始形态,而可以将瘦脸的最终形态作为目标变型状态,该目标变型状态对应于第五图像115的脸部12的变型形态,在这种情况下,终端100可以将起始变型形态、目标变型形态分别作为渐变的起始形态和结束形态,在其显示界面上以渐变方式展示脸部,即展示从第四图像114的脸部13的变型形态向第五图像115的脸部12的变型形态的渐变过程,从而可以避免由于人脸等目标对象在图像中突然出现或丢失等原因引起变型效果突变而造成画面闪动,优化目标对象的变型处理效果。

下面通过示例性实施例对本公开的图像处理方法进行说明。

图2是根据一示例性实施例示出的一种图像处理方法的流程图,如图2所示,该图像处理方法可以应用于如图1所示的终端100,该图像处理方法,可以包括以下步骤。

步骤s201,当针对于图像中的目标对象的对象识别结果发生变化时,获取变化发生前目标对象的最后变型形态,作为目标对象的起始变型形态。

本步骤中,终端100可以在实时拍摄视频或者直播时,获取每一帧的图像并识别图像中的目标对象。其中,图像中的目标对象是指变型处理的对象,示例性的,该目标对象可以是人的脸部、手臂、眼睛或者下巴等。

当终端100检测到图像中的目标对象的对象识别结果发生变化时,获取变化发生前该目标对象的最后变型形态,作为该目标对象的起始变型形态。其中,该起始变型形态可以是该目标对象未经过变型处理的原始形态,也可以是该目标对象经过完整变型处理的最终形态,还可以是处于原始形态和最终形态之间的中间形态。具体的,若变化发生前,该目标对象的最后变型形态如果是原始形态,则终端100将原始形态作为该目标对象的起始变型形态,而若变化发生前,该目标对象的最后变型形态如果是最终形态,则终端100将最终形态作为目标对象的起始变型形态。

在一示例性实施例中,在上述步骤s201之前,还可以通过如下步骤判断对象识别结果是否发生变化,具体包括:

首先,终端100可以实时获取针对于图像中的目标对象的对象识别结果;该对象识别结果可以包括在图像中识别到目标对象或者在图像中未识别到目标对象。示例性的,终端100可以通过如人脸识别模型等对象识别模型对相应的如图像中的脸部等目标对象进行识别并得到对象识别结果,例如在图像中识别到目标对象或者在图像中未识别到目标对象。

接着,当终端100检测到对象识别结果从在图像中识别到目标对象,变化为在图像中未识别到目标对象时,或者,当对象识别结果从在图像中未识别到目标对象,变化为在图像中识别到目标对象时,终端100可以判断出对象识别结果发生变化。

其中,如果终端100检测到对象识别结果是从在图像中识别到目标对象变化为在图像中未识别到目标对象,则说明原本终端100能够识别到目标对象位于图像当中,而后可能由于遮挡等因素造成终端100未能在图像中识别到目标对象,此时终端100判断对象识别结果发生变化。另外,如果终端100检测到对象识别结果是从图像中未识别到目标对象变化为在图像中识别到目标对象,则说明可能由于遮挡等因素造成终端100原本未能在图像中识别到目标对象,而后可能由于遮挡物被移除等因素,终端100又能重新在能够识别到目标对象位于图像当中,此时终端100也可以判断对象识别结果发生变化。

以人脸作为终端100实时拍摄的图像中的目标为例,终端100可以在其屏幕上实时显示其拍摄的人脸,终端100可以追踪每一帧的人脸位置,标记人脸关键点进行美型处理。其中,当人移动比较快、或者突然转头、或者突然移到屏幕外面、或者被物体遮挡到人脸时,相应的帧图像其实都已经丢失了人脸关键点,即终端100在相应的帧图像上无法识别出人脸关键点,从而得到的对象识别结果为在图像上未识别到人脸,而当例如人脸从屏幕外面移回屏幕内时,终端100又可以重新在图像中检测到人脸,则终端100得到的对象识别结果为在图像上识别到人脸,并可以判断出对象识别结果发生了变化。

步骤s202,获取目标对象的与变化对应的目标变型形态。

本步骤中,终端100可以获取目标对象的与变化对应的目标变型形态。

示例性的,如果变化之前目标对象的变型形态为该目标对象未经过变型处理的原始形态,则与变化对应的目标变型形态为该目标对象经过完整变型处理的最终形态;如果变化之前目标对象的变型形态为该目标对象经过完整变型处理的最终形态,则目标变型形态为该目标对象未经过变型处理的原始形态;如果变化之前目标对象的变型形态为原始形态与最终形态的中间形态,则可以将中间形态在发生上述变化之前所对应的还原形态作为目标变型形态,具体来说,如果在变化之前目标对象的变型形态从原始形态变化至中间形态,该中间形态在发生上述变化之前所对应的还原形态为原始形态,即将原始形态作为目标变型形态,同理,如果在变化之前目标对象的变型形态从最终形态变化至中间形态,则该中间形态在发生上述变化之前所对应的还原形态为最终形态,即将最终形态作为目标变型形态。

步骤s203,将起始变型形态、目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示目标对象。

本步骤,终端100可以在其显示界面上,以渐变的形式展示目标对象。其中,渐变具有起始形态和结束形态,终端100在获取到起始变型形态和目标变型形态后,可将起始变型形态作为渐变的起始形态,以及将目标变型形态作为结束形态,将目标对象展示为从该起始形态向目标变型形态渐变。

如图3所示,图3是根据一示例性实施例示出的一种图像处理方法的效果示意图,第六图像311中的脸部30作为目标对象,该脸部30被遮挡物40遮挡,此时终端100以渐变方式展示该脸部30。具体的,设该脸部30在该第六图像311的起始变型形态为第一变型形态31所示,该第一变型形态31可以是该脸部30的经过完整变型处理的最终形态,当该第一变型形态31下的脸部30被遮挡物40遮挡时,终端100将第四变型形态34作为目标变型形态,该目标变型形态为该脸部30未经过变型处理的原始形态,而如第二变型形态32、第三变型形态33为示例性的处于原始形态和最终形态之间的其中两种可能的中间形态,终端100展示目标对象时,具体的渐变方式为,将脸部30从第一变型形态31依次通过中间形态即第二变型形态32和第三变型形态33,逐步过渡至第四变型形态34,反之亦然。

在渐变过程中,遮挡物40被移除,终端100可以将人脸30的变型形态进行恢复,示例性的,当渐变过程为终端100将脸部30从第一变型形态31依次中间形态即第二变型形态32和第三变型形态33,逐步过渡至第四变型形态34,假设当脸部30渐变至第三变型形态33时,遮挡物40被移除,此时终端100可以将移除前该第三变型形态33对应的还原形态即第一变型形态31作为目标变型形态,而第三变型形态33本身作为起始变型形态,展示脸部30从第三变型形态33渐变至第一变型形态31。通过这种方式,可以实现人脸从图像中丢失又重新在图像中出现等情况下,进行渐变瘦脸,而该过程可以控制为一个连续并且变化比较缓慢轻微的过程,以使得终端100的用户观察不到明显变化,从而根据人脸等目标对象在图像中的动态变化做变型效果的动态适配而避免画面发生闪动,避免由于目标对象在图像中突然出现或丢失等原因引起变型效果突变而造成画面闪动,对于对人脸进行美型处理的场景之下,能够避免人脸在图像上从无到有或者从有到无时进行美型处理时产生露馅现象,优化变型处理效果。

上述图像处理方法中,当终端100检测到针对于图像中的目标对象的对象识别结果发生变化的时候,终端100获取该变化发生之前该目标对象的最后变型形态,作为该目标对象的起始变型形态,并获取该目标对象的与上述变化相对应的目标变型形态,从而终端100将起始变型形态和目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示目标对象。该方案能够根据对象识别结果的动态变化为目标对象进行动态适配的变型处理,通过从目标对象的起始变型形态向目标变型形态渐变的渐变过程,使得在终端100的显示界面上所展示的目标对象从起始变型形态逐渐地向目标变型形态过渡,避免由于目标对象在图像中突然出现或丢失等原因引起变型效果突变而造成画面闪动,优化目标对象的变型处理效果。

在一示例性实施例中,步骤s202中的目标变型形态,可以是对象识别结果的变化所触发的对目标对象进行变型处理的最终变型形态。进一步的,当该对象识别结果的变化为从在图像中识别到目标对象,变化为在图像中未识别到目标对象时,目标变型形态为目标对象未经变型处理的形态;当对象识别结果的变化为从在图像中未识别到目标对象,变化为在图像中识别到目标对象时,目标变型形态为目标对象经过完整变型处理的形态。

以人脸作为目标对象为例,当人脸识别结果的变化为从在图像中识别到人脸,变化为在图像中未识别到人脸时,目标变型形态可以为无瘦脸效果状态;当人脸识别结果的变化为从在图像中未识别到人脸,变化为在图像中识别到人脸时,目标变型形态可以为人脸的最终瘦脸效果。

在一示例性实施例中,如图4所示,图4是根据一示例性实施例示出的一种展示目标对象的方法的流程图,步骤s203中的将起始变型形态、目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示所述目标对象,可以通过如下方式实现,具体步骤包括:

步骤s401,根据起始变型形态和目标变型形态,得到目标对象的变型幅度。

其中,终端100可以根据目标对象的起始变型形态和目标变型形态,获取该目标对象的变型幅度;该变型幅度是指该目标对象的变型形态的变化幅度。

步骤s402,按照与变型幅度相适应的渐变速度,展示目标对象。

本步骤中,终端100可以根据变化幅度的大小,确定合适的渐变速度。一般来说,变化幅度越大,则渐变速度相应也越大,而变化幅度越小,渐变速度则越小。其中,变化幅度的大小与起始变型形态和目标变型形态有关。

结合图3进行说明,对其中两种情况进行分析,第一种情况为:起始变型形态为第一变型形态31、目标变型形态为第四变型形态34,第二种情况为:起始变型形态为第三变型形态33、目标变型形态为第一变型形态31。对此,第一种情况所对应的变型幅度,比第二种情况所对应的变型幅度要大,因为其要从最终形态变型至原始形态,而第二种情况则只需要从中间形态变化至最终形态。这样,终端100可以为这两种变型幅度分别设置对应的渐变速度,而第一种情况下设置的渐变速度比第二种情况下设置的渐变速度要稍微快一点些,从而实现当目标对象处于不同的起始变型形态时,能够根据其对应的变型幅度灵活适配相应的渐变速度以展示目标对象的渐变过程。

在一示例性实施例中,如图5所示,图5是根据一示例性实施例示出的一种获取变型幅度的方法的流程图,步骤s401中的根据起始变型形态和目标变型形态,得到目标对象的变型幅度,具体可以包括:

步骤s501,根据起始变型形态和目标变型形态,分别得到目标对象的关键点在图像上的起始位置和目标位置。

其中,目标对象的关键点为图像上,用于对目标对象进行变型处理的像素点。在具体的应用场景中,终端100可以在图像上识别并且标记出如人脸等目标对象的关键点,通过关键点对目标对象进行如液化变型等变型处理,达到如对人脸进行美型等变型效果。

本步骤中,终端100可以根据目标对象的起始变型形态,获取该目标对象的关键点在图像上的起始位置,根据该目标对象的目标变型形态,获取该目标对象的关键点在图像上的目标位置。

步骤s502,根据起始位置和目标位置之间的距离,得到变型幅度。

本步骤主要是终端100可以将目标对象的关键点在图像上的起始位置与目标位置之间的距离,作为该目标对象的变型幅度。其中,如果起始位置与目标位置之间的距离越大,则目标对象的变型幅度越大,终端100需要对目标对象进行比较大幅度的渐变变型,如果起始位置与目标位置之间的距离越小,则目标对象的变型幅度越小,即终端100只需要对目标对象进行比较小幅度的渐变变型。

通过本实施例的方案,可以根据关键点的起始位置和目标位置之间的距离对变型幅度进行量化,而且目标对象的关键点通常比较固定且去数量相对图像整体的像素点的数量较少,所以可以准确且高效地确定出目标对象的变型幅度,以此优化目标对象的变型处理效果。

在一示例性实施例中,如图6所示,图6是根据一示例性实施例示出的一种获取渐变速度的方法的流程图,在上述步骤s502的按照与变型幅度相适应的渐变速度,展示目标对象之前,还可以包括如下步骤:

步骤s601,获取预设的目标对象的变型时长阈值;

步骤s602,根据变型幅度和变型时长阈值,得到变型速度阈值;

步骤s603,获取不大于变型速度阈值的渐变速度,作为与变型幅度相适应的渐变速度。

本实施例中,终端100可以获取预先设置好的针对于目标对象的变型时长阈值。其中,该变型时长阈值可以是目标对象的渐变过程的最长时间,可以用于限制目标对象的渐变速度,以使得目标对象的渐变过程比较连续且变化缓慢轻微地进行,在一些实施例当中,该变型速度阈值可以设为2秒。然后,终端100可以根据变型幅度和变型时长阈值,得到变型速度阈值。具体的,终端100可以将变型幅度与变型时长阈值的比值作为变型速度阈值。示例性的,变型幅度可以是目标对象的关键点在图像上的起始位置与目标位置之间的距离,用该距离与变型速度阈值的比值作为变型速度阈值。

在得到变型速度阈值后,终端100可以根据该变型速度阈值,获取合适的渐变速度。本实施例中,为了使得目标对象可以以较缓慢的速度从起始变型形态向目标变型形态渐变,终端100可将不大于变型速度阈值的渐变速度,作为与变型幅度相适应的渐变速度。进一步的,在一些实施例当中,渐变速度可以是一个不大于上述变型速度阈值的恒定值,以使目标对象匀速地从起始变型形态向目标变型形态渐变,进一步使得渐变过程更连续而轻微,为便于渐变速度的设定,终端100也可以直接将变型速度阈值作为渐变速度。

上述实施例的技术方案,通过设置合理的变型时长阈值结合型幅度来确定出与变型幅度相适应的渐变速度,从而使得基于该渐变速度以渐变的方式展示目标对象的过程,是一个连续并且变化比较缓慢轻微的过程,以使得该渐变过程难以被明显观察,避免在终端的显示界面上引起画面闪动,从而优化该目标对象的变型效果。

在一示例性实施例中,步骤s402中的按照与变型幅度相适应的渐变速度,展示目标对象,包括:

按照上述渐变速度,将目标对象的关键点,从该关键点在图像上的起始位置逐渐向该关键点在该图像上的目标位置移动,以展示目标对象从起始形态向结束形态渐变。

本实施例主要是终端100通过将目标对象的关键点在图像上的位置移动,实现目标对象从起始形态向结束形态的渐变过程。该目标对象的关键点在图像上的位置包括起始位置和目标位置,这两个位置可以分别根据起始变型形态和目标变型形态得到,其中,根据起始变型形态可以得到起始位置,根据目标变型形态可以得到目标位置。

本实施例的方案,可以根据目标对象的关键点在图像上的起始位置与目标位置之间的距离,为关键点从图像上的起始位置逐渐向目标位置移动的逐渐移动过程设置合适的渐变速度,终端100可以获取预设的目标对象的变型时长阈值,将距离与该变型时长阈值的比值作为渐变速度,按照该渐变速度将目标对象的关键点从图像上的起始位置逐渐向目标位置移动,从而实现目标对象从起始形态向结束形态渐变过程。

在一示例性实施例中,还提供了一种图像处理方法,如图7所示,图7是根据一示例性实施例示出的一种图像处理方法的流程图,以该方法应用于如图1所示的终端100进行说明,该方法包括如下步骤:

步骤s701,终端100获取针对于图像中的目标对象的对象识别结果。

本步骤中,目标对象是指变型处理的对象,对象识别结果包括:在图像中识别到目标对象或者在图像中未识别到目标对象。

步骤s702,当对象识别结果从在图像中识别到目标对象,变化为在图像中未识别到目标对象时,或者,当对象识别结果从在图像中未识别到目标对象,变化为在图像中识别到目标对象时,终端100判断对象识别结果发生变化。

步骤s703,当针对于图像中的目标对象的对象识别结果发生变化时,终端100获取变化发生前目标对象的最后变型形态,作为目标对象的起始变型形态。

步骤s704,终端100获取目标对象的与变化对应的目标变型形态。

步骤s705,终端100根据起始变型形态和目标变型形态,分别得到目标对象的关键点在图像上的起始位置和目标位置。

本步骤中,关键点为图像上,用于对目标对象进行变型处理的像素点。

步骤s706,终端100根据起始位置和目标位置之间的距离,得到变型幅度。

其中,终端100可以将起始位置和目标位置之间的距离作为变型幅度。

步骤s707,终端100获取预设的目标对象的变型时长阈值。

步骤s708,终端100根据变型幅度和变型时长阈值,得到变型速度阈值。

本步骤,终端100可以将变型幅度与变型时长阈值的比值作为变型速度阈值。

步骤s709,获取不大于变型速度阈值的渐变速度,作为与变型幅度相适应的渐变速度。

其中,终端100可以将变型速度阈值作为渐变速度。

步骤s710,终端100按照渐变速度,将目标对象的关键点,从该关键点在图像上的起始位置逐渐向该关键点在该图像上的目标位置移动,以展示目标对象从起始形态向结束形态渐变。

上述图像处理方法,可基于目标对象的关键点,根据对象识别结果的动态变化为目标对象进行动态适配的变型处理,优化目标对象的变型处理效果。

为了更清晰阐述本公开提供的图像处理方法,以该方法应用于对人脸图像进行美型处理进行说明。

总体来说,通过终端100进行实时拍摄视频或者直播时,终端100可取得每一帧图像,识别并且标记出图像中人脸的关键点,通过关键点对人脸进行液化美型处理,达到瘦脸等美型效果。其中,当人移动比较快、或者突然转头、或者突然出到屏幕外面再进来时、或者被物体遮挡到人脸时,相应的帧图像其实都已经丢失了人脸的关键点,如果按照常规方式进行处理的话,对人脸的瘦脸效果已经失效,当图像中再出现脸时会再突然瘦脸,视频会录制上变脸抖动的一瞬间,而对于直播间里面,观众则会直接看到这个瘦脸突变过程,对人脸进行美型的效果比较差,也影响用户体验。

本公开提供的图像处理方法,可通过如下方式对图像中的人脸进行美型处理,完整的流程包括:

图像上人脸的关键点从有到无,再从无到有的过程:

(1)首先,在图像上有人脸的阶段:人脸识别与跟踪:追踪每一帧的人脸位置,标记人脸的关键点做美型处理;

(2)然后,人脸丢失时进行:

a、丢失时记录关键点位置:丢失时记录下最后一帧有人脸的关键点位置,保留下该最后一帧的瘦脸效果;

b、渐变处理,包括:

首先,定义渐变的起始点为有人脸的最后一帧的瘦脸效果,定义渐变的最终点是人脸的原始形态即完全去掉瘦脸美型效果时的形态,然后,可以从起始点到最终点做一个2秒的匀速渐变恢复,渐变效果实现为起始点的人脸的关键点到最终点的人脸的关键点的像素移动。其中,2秒为从最终瘦脸效果渐变到人脸原始形态的预设最长时间,该时间可以根据实际场景需要进行设定。由此,可以得到人脸的渐变的平均速度为v=人脸的关键点的变化幅度即人脸关键点像素之间的距离/预设最长时间2秒。其中,因为人脸的关键点从起始点到最终点的变化比较缓慢,用户一般无法察觉这个过程,并且用户一般会在这个时间内又出现人脸,又开始从无到有的瘦脸,所以实际拍摄中人脸忽有忽无时,便不会再有抖动现象。

(3)再次检测到人脸的关键点时:

首先,定义起始点为人脸目前的状态,其中,该状态可能是无瘦脸效果的人脸,也可能是步骤b中瘦脸效果缓慢消失的中间态;获取人脸关键点目前的位置;定义最终点是瘦脸最终态,该最终态可以基于人脸目前的状态和关键点的位置计算瘦脸效果得到,从起始点到最终点做一个速度为v的匀速渐变变化。

由此,用户从画面丢失人脸到又出现人脸,开始渐变瘦脸,是一个连续并且变化比较缓慢轻微的过程,用户也难以观察到明显变化,从而通过这个美型渐变逻辑处理,能有效避免人脸的关键点从无到有或者从有到无时的瘦脸效果露馅现象。上述方案可以基于识别人脸的关键点的动态变化做美型效果的动态适配,通过调整渐变的时间范围以达到最有的美型渐变效果,支持视频和直播场景,让用户拍摄中,人脸丢失再次出现时不会再发生脸型的突变抖动,大大提高美型产品的用户体验。

应该理解的是,虽然图2、图4至图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图4至图7中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

图8是根据一示例性实施例示出的一种图像处理装置的框图。参照图8,该图像处理装置800包括起始形态获取模块801、目标形态获取模块802和对象展示模块803。

起始形态获取模块801,用于当针对于图像中的目标对象的对象识别结果发生变化时,获取变化发生前目标对象的最后变型形态,作为目标对象的起始变型形态;目标对象为变型处理的对象;

目标形态获取模块802,用于获取目标对象的与变化对应的目标变型形态;

对象展示模块803,用于将起始变型形态、目标变型形态分别作为渐变的起始形态和结束形态,以渐变方式展示目标对象。

在一示例性实施例中,对象展示模块803,包括:

幅度获取单元,用于根据起始变型形态和目标变型形态,得到目标对象的变型幅度;变型幅度为目标对象的变型形态的变化幅度;

对象展示单元,用于按照与变型幅度相适应的渐变速度,展示目标对象。

在一示例性实施例中,幅度获取单元,进一步用于根据起始变型形态和目标变型形态,分别得到目标对象的关键点在图像上的起始位置和目标位置;关键点为图像上,用于对目标对象进行变型处理的像素点;根据起始位置和目标位置之间的距离,得到变型幅度。

在一示例性实施例中,对象展示单元,还用于在按照与变型幅度相适应的渐变速度,展示目标对象之前,获取预设的目标对象的变型时长阈值;根据变型幅度和变型时长阈值,得到变型速度阈值;获取不大于变型速度阈值的渐变速度,作为与变型幅度相适应的渐变速度。

在一示例性实施例中,渐变速度为不大于变型速度阈值的恒定值。

在一示例性实施例中,对象展示单元,进一步用于按照渐变速度,将目标对象的关键点,从关键点在图像上的起始位置逐渐向关键点在图像上的目标位置移动,以展示目标对象从起始形态向结束形态渐变;其中,关键点在图像上的起始位置和目标位置,分别根据起始变型形态和目标变型形态得到。

在一示例性实施例中,图像处理装置800,还包括:

结果获取单元,用于获取针对于图像中的目标对象的对象识别结果;对象识别结果包括:在图像中识别到目标对象或者在图像中未识别到目标对象;

变化判断单元,用于当对象识别结果从在图像中识别到目标对象,变化为在图像中未识别到目标对象时,或者,当对象识别结果从在图像中未识别到目标对象,变化为在图像中识别到目标对象时,判断对象识别结果发生变化。

在一示例性实施例中,目标变型形态为对象识别结果的变化所触发的对目标对象进行变型处理的最终变型形态。

在一示例性实施例中,当对象识别结果的变化为从在图像中识别到目标对象,变化为在图像中未识别到目标对象时,目标变型形态为目标对象未经变型处理的形态;当对象识别结果的变化为从在图像中未识别到目标对象,变化为在图像中识别到目标对象时,目标变型形态为目标对象经过完整变型处理的形态。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图9是根据一示例性实施例示出的一种电子设备的内部结构图。例如,电子设备900可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。

参照图9,电子设备900可以包括以下一个或多个组件:处理组件902、存储器904、电力组件906、多媒体组件908、音频组件910、输入/输出(i/o)的接口912、传感器组件914以及通信组件916。

处理组件902通常控制电子设备900的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件902可以包括一个或多个处理器920来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块,便于处理组件902和其他组件之间的交互。例如,处理组件902可以包括多媒体模块,以方便多媒体组件908和处理组件902之间的交互。

存储器904被配置为存储各种类型的数据以支持在电子设备900的操作。这些数据的示例包括用于在电子设备900上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram)、电可擦除可编程只读存储器(eeprom)、可擦除可编程只读存储器(eprom)、可编程只读存储器(prom)、只读存储器(rom)、磁存储器、快闪存储器、磁盘或光盘。

电源组件906为电子设备900的各种组件提供电力。电源组件906可以包括电源管理系统,一个或多个电源,及其他与为电子设备900生成、管理和分配电力相关联的组件。

多媒体组件908包括在所述电子设备900和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件908包括一个前置摄像头和/或后置摄像头。当电子设备900处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括一个麦克风(mic),当电子设备900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通信组件916发送。在一些实施例中,音频组件910还包括一个扬声器,用于输出音频信号。

i/o接口912为处理组件902和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件914包括一个或多个传感器,用于为电子设备900提供各个方面的状态评估。例如,传感器组件914可以检测到电子设备900的打开/关闭状态,组件的相对定位,例如所述组件为电子设备900的显示器和小键盘,传感器组件914还可以检测电子设备900或电子设备900一个组件的位置改变,用户与电子设备900接触的存在或不存在,电子设备900方位或加速/减速和电子设备900的温度变化。传感器组件914可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件914还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件914还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。

通信组件916被配置为便于电子设备900和其他设备之间有线或无线方式的通信。电子设备900可以接入基于通信标准的无线网络,如wifi,运营商网络(如2g、3g、4g或5g),或它们的组合。在一个示例性实施例中,通信组件916经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件916还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在一示例性实施例中,电子设备900可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述图像处理方法。

在一示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器904,上述指令可由电子设备900的处理器920执行以完成上述图像处理方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

在一示例性实施例中,还提供了一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行如上实施例所述的图像处理方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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