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

文档序号:17245482发布日期:2019-03-30 08:47阅读:204来源:国知局
图像处理方法、装置、电子设备及计算机存储介质与流程

本公开涉及图像处理技术领域,具体而言,本公开涉及一种图像处理方法、装置、电子设备及计算机存储介质。



背景技术:

在美颜类工具中,用户可对图像进行美颜特效处理,以提升图像的美感。但是,在使用现有的美颜类工具时,用户需要对图像中人脸的各个部位进行手动调整,才可得到所需图像。

比如,用户想要调整鼻子形状,用户就需要对鼻子区域进行手动调整,才能得到调整后的鼻子形状对应的图像。通常对于手动调整图像不熟练的用户,通过手动调整的方式进行图像的美颜处理,不但很难达到美颜的目的,并且美颜处理耗时时间长,降低了用户的使用体验。



技术实现要素:

本公开的目的旨在至少能解决上述的技术缺陷之一,提升用户的使用体验。本公开采用的技术方案如下:

第一方面,本公开提供了一种图像处理方法,包括:

获取待处理人脸图像;

接收对待处理人脸图像的鼻子调整指令,鼻子调整指令中包括基于待处理人脸图像是鼻部区域的参数修改信息;

响应于参数修改信息,检测待处理人脸图像的鼻部区域中的鼻部特征点;

根据鼻部特征点获取移动后的鼻部特征点;

根据移动后的鼻部特征点,确定出调整后的鼻部区域,并对调整后的鼻部区域进行渲染,得到调整后的待处理人脸图像;

显示调整后的待处理人脸图像。

本公开的实施例中,根据鼻部特征点获取移动后的鼻部特征点,包括:

根据参数修改信息,确定鼻部特征点的当前移动矢量;

根据当前移动矢量,控制鼻部特征点的移动,得到移动后的鼻部特征点。

本公开的实施例中,检测待处理人脸图像的鼻部区域中与的鼻部特征点之后,还包括:

对鼻部特征点进行插值处理,得到待处理人脸图像的鼻部区域内的插值特征点,鼻部特征点还包括插值特征点。

本公开的实施例中,当前移动矢量包括当前移动距离和当前移动方向,鼻子调整指令中还包括参数修改信息的调整指标,调整指标用于标识参数修改信息的调整强度,调整强度包括当前移动距离;

确定鼻部特征点的当前移动矢量,包括:

依据调整指标,以及预配置的调整指标与特征点移动距离的对应关系,确定当前移动距离。

本公开的实施例中,确定鼻部特征点的当前移动矢量,包括:

根据预配置的参数修改信息与移动方向的对应关系,确定与鼻子特效对应的移动方向,与参数修改信息对应的移动方向为当前移动方向。

本公开的实施例中,鼻部区域的参数修改信息包括鼻子调长参数修改信息和鼻子调短参数修改信息中的一个,和/或,鼻子调宽参数修改信息和鼻子调窄参数修改信息中的一个;

若鼻部区域的参数修改信息包括鼻子调长参数修改信息,当前移动方向为沿鼻子中线方向向下移动的方向;

若鼻部区域的参数修改信息包括鼻子调短参数修改信息,当前移动方向为沿鼻子中线方向向上移动的方向;

若鼻部区域的参数修改信息为鼻子调宽参数修改信息,移动方向为远离鼻子中线的方向;

若鼻部区域的参数修改信息为鼻子调窄参数修改信息,移动方向为靠近鼻子中线的方向。

本公开的实施例中,接收对待处理人脸图像的鼻子调整指令,包括:

接收对待处理人脸图像的鼻子调整触发指令;

响应于鼻子调整触发指令,显示鼻子调整界面,鼻子调整界面中显示有鼻子参数修改信息选项和待处理人脸图像;

通过鼻子调整界面,接收鼻子调整指令。

第二方面,本公开提供了一种图像处理装置,该装置包括:

图像获取模块,用于获取待处理人脸图像;

指令接收模块,用于接收对待处理人脸图像的鼻子调整指令,鼻子调整指令中包括基于待处理人脸图像是鼻部区域的参数修改信息;

特征点获取模块,用于响应于参数修改信息,检测待处理人脸图像的鼻部区域中的鼻部特征点,以及根据鼻部特征点获取移动后的鼻部特征点;

图像处理模块,用于根据移动后的鼻部特征点,确定出调整后的鼻部区域,并对调整后的鼻部区域进行渲染,得到调整后的待处理人脸图像;

图像显示模块,用于显示调整后的待处理人脸图像。

本公开的实施例中,特征点获取模块在根据鼻部特征点获取移动后的鼻部特征点时,具体用于:

根据参数修改信息,确定鼻部特征点的当前移动矢量;

根据当前移动矢量,控制鼻部特征点的移动,得到移动后的鼻部特征点。

本公开的实施例中,特征点获取模块在检测待处理人脸图像的鼻部区域中与的鼻部特征点之后,还用于:

对鼻部特征点进行插值处理,得到待处理人脸图像的鼻部区域内的插值特征点,鼻部特征点还包括插值特征点。

本公开的实施例中,当前移动矢量包括当前移动距离和当前移动方向,鼻子调整指令中还包括参数修改信息的调整指标,调整指标用于标识参数修改信息的调整强度,调整强度包括当前移动距离;

特征点获取模块在确定鼻部特征点的当前移动矢量时,具体用于:

依据调整指标,以及预配置的调整指标与特征点移动距离的对应关系,确定当前移动距离。

本公开的实施例中,特征点获取模块在根据鼻部特征点获取移动后的鼻部特征点时,具体用于:

根据预配置的参数修改信息与移动方向的对应关系,确定与鼻子特效对应的移动方向,与参数修改信息对应的移动方向为当前移动方向。

本公开的实施例中,鼻部区域的参数修改信息包括鼻子调长参数修改信息和鼻子调短参数修改信息中的一个,和/或,鼻子调宽参数修改信息和鼻子调窄参数修改信息中的一个;

若鼻部区域的参数修改信息包括鼻子调长参数修改信息,当前移动方向为沿鼻子中线方向向下移动的方向;

若鼻部区域的参数修改信息包括鼻子调短参数修改信息,当前移动方向为沿鼻子中线方向向上移动的方向;

若鼻部区域的参数修改信息为鼻子调宽参数修改信息,移动方向为远离鼻子中线的方向;

若鼻部区域的参数修改信息为鼻子调窄参数修改信息,移动方向为靠近鼻子中线的方向。

本公开的实施例中,指令接收模块在接收对待处理人脸图像的鼻子调整指令时,具体用于:

接收对待处理人脸图像的鼻子调整触发指令;

响应于鼻子调整触发指令,显示鼻子调整界面,鼻子调整界面中显示有鼻子参数修改信息选项和待处理人脸图像;

通过鼻子调整界面,接收鼻子调整指令。

第三方面,本公开提供了一种电子设备,该设备包括:

处理器和存储器;

存储器,用于存储计算机操作指令;

处理器,用于通过调用计算机操作指令,执行如本公开的第一方面的任一实施例中所示的方法。

第四方面,本公开提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令用于使计算机执行本公开的第一方面的任一实施例中所示的方法。

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

本公开实施例中,接收到鼻子调整指令后即根据鼻子调整指令中的参数修改信息对待处理人脸图像的鼻部区域进行调整中,实现了一键调整图像中用户的鼻部区域的功能,而不需要手动对人脸图像的鼻部区域进行编辑,减少了处理的时间,提升了用户的交互体验。

附图说明

为了更清楚地说明本公开实施例中的技术方案,下面将对本公开实施例描述中所需要使用的附图作简单地介绍。

图1为本公开实施例提供的一种图像处理方法的流程示意图;

图2a为本公开实施例中一种显示界面的示意图;

图2b为本公开实施例中一种鼻子调整触发界面的示意图;

图3a为本公开实施例中一种鼻部特征点的示意图;

图3b为本公开实施例中另一种鼻部特征点的示意图;

图4为本公开实施例中一种调整指标调整界面的示意图;

图5a为本公开实施例中一种鼻子调窄参数修改信息的处理效果示意图;

图5b为本公开实施例中一种鼻子调长参数修改信息的示意图;

图6为本公开实施例中一种图像处理装置的结构示意图;

图7为本公开实施例中一种图像处理的电子设备的结构示意图。

具体实施方式

下面详细描述本公开的实施例,该实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开的技术方案,而不能解释为对本公开的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本公开的说明书中使用的措辞“包括”是指存在该特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。

本公开的实施例提供了一种图像处理方法,如图1所示,该方法可以包括:

步骤s110,获取待处理人脸图像。

其中,待处理人脸图像为实时获取的人脸图像,或用户从本地图像库中选取的人脸图像。

步骤s120,接收对待处理人脸图像的鼻子调整指令,鼻子调整指令中包括基于待处理人脸图像是鼻部区域的参数修改信息。

其中,鼻部区域的参数修改信息表示对处理人脸图像中的鼻子区域中进行处理的处理策略,即具体需要对哪些参数或哪个参数进行修改,子啊本公开实施例中,不同的参数修改信息可以表示不同的鼻子特效,根据不同的参数修改信息对待处理人脸图像进行处理就可以得到不同鼻子特效的效果图。

本公开的实施例中,鼻子特效可以包括鼻子调长特效、鼻子调短特效、鼻子调宽特效和鼻子调窄特效等,在实际的应用中,还可以对鼻子调长特效、鼻子调短特效、鼻子调宽特效和鼻子调窄特效进行分类,得到不同类型的鼻子特效类型,如将鼻子调长特效、鼻子调短特效、鼻子调宽特效和鼻子调窄特效分为两类,一类是鼻子调大特效类型,一类是鼻子调小特效类型,其中,鼻子调大特效类型下可以包括鼻子调长特效和鼻子调宽特效,鼻子调小特效类型下可以包括鼻子调短特效和鼻子调窄特效。

其中,由于不同的参数修改信息可以表示不同的鼻子特效,也就是说,鼻子调短参数修改信息可以表示为上述中的鼻子调短特效,鼻子调长参数修改信息可以表示为本公开实施例中的鼻子调长特效,鼻子调宽参数修改信息可以表示为本公开实施例中的鼻子调宽特效,鼻子调窄参数修改信息可以表示为本公开实施例中的鼻子调窄特效。

在本公开实施例中,鼻子调整指令表示通过显示界面发送鼻子特效选择操作的指令,其中,鼻子特效选择操作是表示用户选择添加至待处理人脸图像的鼻子特效,即用户用于选择鼻子特效添加的动作,该操作的具体形式根据需要配置,例如,该选择操作可以是用户在客户端的应用程序的显示界面上对鼻子特效所对应的指定操作位置的点击动作。该方案中,在检测到该鼻子特效选择操作后,即可基于用户的该操作,得知用户所想要添加的鼻子特效。

在实际应用中,可通过客户端的相关特效选择标识接收用户的鼻子特效选择操作,其中,特效选择标识的具体形式可以根据实际需要配置,比如,可以是客户端界面上的指定触发按钮或输入框,还可以是用户的语音指令。具体的,例如,可以是在客户端的显示界面上显示的各种鼻子特效的虚拟按钮,用户点击其中任一按钮的操作即为用户的鼻子特效选择操作,如用户点击鼻子调长特效所对应的虚拟按钮的动作即为用户的鼻子特效选择操作,该操作中包含用户所选择的鼻子特效即鼻子调长特效,该操作表示用户想要添加至将待处理人脸图像中的鼻子特效为鼻子调长特效。

步骤s130,响应于参数修改信息,检测待处理人脸图像的鼻部区域中的鼻部特征点。

其中,检测待人脸图像的鼻部区域的鼻部特征点的具体方法,以及具体需要检测哪些部位的特征点,可以根据实际需要预先配置,本公开的实施例不做具体限定,比如,该方案中,可以基于不同的参数修改信息,配置需要检测待人脸图像的哪个部位的哪些特征点。

例如,在一示例中,当鼻子特效为鼻子调长特效时,需要检测的鼻子特征可以包括上鼻翼的左侧特征点和右侧特征点、左鼻孔的上顶点特征点、左顶点特征点和下顶点特征点、右鼻孔的上顶点特征点、右顶点特征点和下顶点特征点,以及鼻尖位置的特征点;当鼻子特效为鼻子调窄特效时,此时需要检测的鼻子特征可以包括上鼻翼的左侧特征点和右侧特征点,左鼻孔的上顶点特征点、左顶点特征点和下顶点特征点、右鼻孔的上顶点特征点、右顶点特征点和下顶点特征点。

步骤s140,根据鼻部特征点获取移动后的鼻部特征点。

在本公开实施例中,根鼻部特征点获取移动后的鼻部特征点,包括:

根据参数修改信息,确定鼻部特征点的当前移动矢量;

根据当前移动矢量,控制鼻部特征点的移动,得到移动后的鼻部特征点。

其中,在对鼻部特征点进行调整时,需要知道各鼻部特征点的当前移动矢量,即知道该鼻部特征点的移动方向和移动距离。其中,每个鼻部特征点的当前移动矢量可以为预配置的移动矢量,也就是说,每个鼻部特征点的当前移动距离配置为默认的移动距离,每个鼻部特征点的当前移动方向配置为默认的移动方向。具体的,当每个鼻部特征点的当前移动矢量为预配置的移动矢量时,无论检测到的鼻部特征点的当前位置是什么,该鼻部特征点所对应的当前移动矢量都是与预配置的移动矢量相一致的,也就是说,基于预配置的移动矢量,在对任何一个鼻部特征点进行调整时,该鼻部特征点的移动距离和移动方向与该鼻部特征点的默认的移动距离和默认的移动方向是相同的。对于不同的鼻部特征点,默认配置的移动矢量可以相同,也可以不同。

步骤s150,根据移动后的鼻部特征点,确定出调整后的鼻部区域,并对调整后的鼻部区域进行渲染,得到调整后的待处理人脸图像。

也就是说,在得到移动后的鼻部特征点后,就可以根据移动后的鼻部特征点确定出调整后的鼻部区域,然后基于调整后的鼻部区域进行渲染,就可以得到调整后的待处理人脸图像。

步骤s160,显示调整后的待处理人脸图像。

本公开实施例中,接收到鼻子调整指令后即根据鼻子调整指令中的参数修改信息对待处理人脸图像的鼻部区域进行调整中,实现了一键调整图像中用户的鼻部区域的功能,而不需要手动对人脸图像的鼻部区域进行编辑,减少了处理的时间,提升了用户的交互体验。

本公开的实施例中,步骤s120中,接收对待处理人脸图像的鼻子调整指令,可以包括:

接收对待处理人脸图像的鼻子调整触发指令;

响应于鼻子调整触发指令,显示鼻子调整界面,鼻子调整界面中显示有鼻子参数修改信息选项和待处理人脸图像;

通过鼻子调整界面,接收鼻子调整指令。

其中,在本公开实施例中,鼻子调整触发指令可以表示为通过显示界面发送鼻子特效触发操作的指令,其中,鼻子特效触发操作表示用户想要对待处理人脸图像添加鼻子特效即用户用于触发开始进行鼻子特效添加的动作,该操作的具体形式可以根据需要配置,例如,可以是用户在客户端的显示界面上特定操作位置的触发动作,也可以是特定的虚拟按钮等。该方案中,在检测到该鼻子特效触发操作后,即可基于用户的该操作,将鼻子特效选择界面进行显示,以使用户能够在该界面进行鼻子特效选择操作。

在实际应用中,用户可通过客户端的相关触发标识触发该鼻子特效触发操作,比如客户端显示界面上的指定触发按钮或输入框,还可以是用户的语音指令等。例如,在一可选方式中,可以是在客户端的显示界面上显示的“鼻子调整”的虚拟按钮,用户点击该按钮的操作即为用户的鼻子特效触发操作。

其中,鼻子调整界面用于电子设备与用户之间的交互,通过该界面可以接收用户在待处理人脸图像的鼻子特效添加过程中的相关操作。

作为一个示例,图2a中示出了一种电子设备中客户端的一种鼻子调整触发界面即用户交互界面的示意图,该界面中显示有待处理的人脸图像(图中所示的人脸图像),界面上显示的“鼻子调整”的虚拟按钮即为鼻子特效触发按钮,用户点击该显示界面上显示的“鼻子调整”的虚拟按钮,即为用户的鼻子特效触发操作,接收到该触发操作后,可以显示鼻子调整界面。

作为一个示例,图2b中示出了又一种鼻子调整界面的示意图,图中所示的a、b、c、d、e分别为不同的参数修改信息所对应的虚拟按钮,用户可以通过点击其中一个虚拟按钮确定参数修改信息,比如点击虚拟按钮a,则用户的选中的参数修改信息即为虚拟按钮a所对应的参数修改信息,在接收到该操作后,即可基于该操作中的参数修改信息,对人脸图像进行相应的特效处理。

其中,鼻子调整触发界面和鼻子调整界面可以为同一用户界面,也可以是不同的用户界面。

在实际应用中,用户还可以按照相同的操作方式,通过更改所选择的虚拟按钮,改变参数修改信息,为了为用户提供更好的使用体验,在用户每完成一次鼻子特效选择操作后,可以将该操作所对应的图像处理结果显示给用户,以使用户能够根据显示结果确定是否需要重新进行参数修改信息的选择。例如,在用户选择虚拟按钮a之后,根据虚拟按钮a所对应的参数修改信息对待处理人脸图像进行相应处理后,将处理结果显示给用户,此时用户如果不满意调整结果,可再重新选择虚拟按钮b、c、d、e中的任一参数修改信息,再次对待处理人脸图像进行相应处理。

在实际的应用中,由于各个鼻部特征点之间通常是不连续的点,进而在图像处理的过程中,可能会导致图像的显示效果不平滑。因此,在本公开实施例中,检测待处理人脸图像的鼻部区域中与的鼻部特征点之后,还包括:

对鼻部特征点进行插值处理,得到待处理人脸图像的鼻部区域内的插值特征点,鼻部特征点还包括插值特征点。

在本公开实施例中,由于会对用户的鼻部特征点进行插值处理,得到用户的鼻部区域内的插值特征点,因此会使处理后的图像看上去会比较平滑、自然。其中,对鼻部特征点进行插值处理的具体方法,本公开实施例不做具体限定,如在实际应用中可以参考埃尔米特、多样式或三角函数等方法进行插值处理,本公开实施例在此就不再赘述。

在鼻部特征点包括检测到的鼻部特征点和插值得到的鼻部特征点时,在根据用户所选择的参数修改信息,对待处理图像进行相应的处理时,则可以同时对鼻部特征点和插值得到的鼻部特征点进行处理。在实际应用中,由于插值算法一般都是预配置的,对于同一鼻子特效而言,基于所检测出的该参数修改信息所对应的鼻部特征点进行插值运算得到的插值特征点也是固定的,因此,插值特征点的当前移动矢量也同样是可以是预配置的。

在一示例中,如图3a所示,鼻部特征点可以包括上鼻翼的左侧特征点a和右侧特征点b、左鼻孔的上顶点特征点c、左顶点特征点d和下顶点特征点e、右鼻孔的上顶点特征点f、右顶点特征点g和下顶点特征点h,如图3b所示,对鼻部特征点进行插值,得到插值特征点包括k1、k2。

在本公开实施例中,当前移动矢量包括当前移动距离和当前移动方向,鼻子调整指令中还包括参数修改信息的调整指标,调整指标用于标识参数修改信息的调整强度,调整强度包括当前移动距离;

确定鼻部特征点的当前移动矢量,包括:

依据调整指标,以及预配置的调整指标与特征点移动距离的对应关系,确定当前移动距离。

其中,调整指标可以为依据实际调整需求配置的数值或数值范围,也可以是其它的能够用于标识参数修改信息的调整强度的指标,本公开实施例中对调整指标的具体实现方式不做限定。

不同的调整指标可以对应不同的调整强度,也就是说,对于同一参数修改信息,当用户选择不同的调整指标时,可以基于该参数修改信息,对待处理人脸图像的鼻部区域进行不同调整强度的处理。本公开实施例中,可以通过鼻部特征点的移动距离来表示调整强度,不同移动距离表征不同的调整强度,对应不同的处理效果。

在一可选方案中,可将调整指标以数值范围列表的形式呈现给用户,数值范围列表中的不同数值可以代表不同的调整强度,用户可以通过客户端的显示界面上的滑动按钮来实现调整指标的选择,如图4所示的一种客户端显示界面,其中,图像预览区可以用于显示人脸图像(可以是待处理人脸图像,也可以是处理过程中的人脸图像,也可以是处理后的人脸图像),调整指标对应的数值范围列表可以为0至100,用户可通过滑动特整指标按钮来选择不同的调整指标。

由于调整指标中不同的数值可以对应不同的调整强度,为了使用户清楚自己选择的调整指标对应的调整强度效果,还可以提供预览功能,在用户选择了0至100中的任一个调整指标时,比如15时,基于调整指标15,得到与该调整指标对应的当前移动距离后,即可基于当前移动距离和当前移动方向对待处理人脸图像进行相应的处理,即控制鼻部特征点的移动,将对应的调整后人脸图像的显示在图像预览区。

其中,调整指标与特征点移动距离的对应关系,可以根据实际需要进行预先配置。在实际应用中,由于参数修改信息通常都会有多种,不同参数修改信息的调整指标与特征点移动距离的对应关系可以是不同的。比如,当参数修改信息为鼻子调窄参数修改信息时,调整指标与特征点移动方向的对应关系为预先配置的对应关系集合中的对应关系2,当参数修改信息为鼻子调短参数修改信息时,调整指标与特征点移动方向的对应关系为可以为预先配置的对应关系集合中的对应关系3。也就是说,可以针对不同的参数修改信息,分别配置不同的调整指标与特征点移动距离的对应关系。当然在实际的应用中,也可以将不同的参数修改信息的调整指标与特征点移动距离的对应关系均设置为相同的,如无论参数修改信息为鼻子调窄参数修改信息还是鼻子调短参数修改信息,调整指标与特征点移动距离的对应关系都是预先配置的对应关系集合中的对应关系3。

在实际应用中,对于同一参数修改信息,在配置调整指标与特征点移动距离的对应关系时,可以针对每一个鼻部特征点,分别配置一个对应关系,即每个鼻部特征点对应各自的对应关系,也可以选择将部分鼻部特征点配置相同的调整指标与特征点移动距离的对应关系,或者将全部鼻部特征点配置相同的调整指标与特征点移动距离的对应关系。也就是说,针对同一参数修改信息,可以对鼻部特征点分别配置不同的调整指标与特征点移动距离的对应关系。

在一示例中,当鼻子参数修改信息为鼻子调短参数修改信息时,可以将全部鼻部特征点的调整指标与特征点移动距离的对应关系均配置为对应关系3;或者也可以选择将鼻部特征点中的插值特征点的调整指标与特征点移动距离的对应关系配置为对应关系2,将鼻部特征点中的鼻子特征点的调整指标与特征点移动距离的对应关系配置为对应关系3,如将图3b中所示的鼻部特征点中的左鼻孔的上顶点特征点c、左顶点特征点d、下顶点特征点e、右鼻孔的上顶点特征点f、右顶点特征点g、下顶点特征点h的调整指标与特征点移动距离的对应关系配置为对应关系3,将插值特征点k1和k2的调整指标与特征点移动距离的对应关系配置为对应关系2。

进一步的,由于当前移动矢量包括当前移动距离和当前移动方向,所以在除了确定鼻部特征点的当前移动距离,还需要确定鼻部特征点的当前移动方向,因此在本公开实施例中,确定鼻部特征点的当前移动矢量,包括:

根据预配置的参数修改信息与移动方向的对应关系,确定与鼻子特效对应的移动方向,与参数修改信息对应的移动方向为当前移动方向。

其中,参数修改信息与移动方向的对应关系,可以根据实际需要进行预先配置。如鼻子调短参数修改信息与移动方向的对应关系沿竖直方向向上移动的方向,此时就将沿竖直方向向上移动的方向作为鼻子调短参数修改信息的当前移动方向。

进一步的,在配置参数修改信息与移动方向的对应关系时,可以选择将参数修改信息对应的全部鼻部特征点配置相同的移动方向,也可以将参数修改信息对应的部分鼻部特征点配置相同的移动方向。当然,在实际的应用中,对于同一个参数修改信息还可以选择将鼻部特征点的调整指标与移动距离的对应关系配置为相同的,将移动方向配置为不相同的。

在一示例中,当参数修改信息为鼻子调窄参数修改信息时,可以选择将图3a中所示的左鼻孔的上顶点特征点c、左顶点特征点d、下顶点特征点e、右鼻孔的上顶点特征点f、右顶点特征点g、下顶点特征点h的调整指标与特征点移动距离的对应关系均配置为对应关系3,具体的,将左鼻孔的上顶点特征点c、左顶点特征点d、下顶点特征点e的移动方向为配置为向右移动,将右鼻孔的上顶点特征点f、右顶点特征点g、下顶点特征点h的移动方向为配置为向左移动,(即将左鼻孔的上顶点特征点c、左顶点特征点d、下顶点特征点e、右鼻孔的上顶点特征点f、右顶点特征点g、下顶点特征点h的移动方向配置为靠近鼻子中线的方向)。

进一步的,当确定出鼻部特征点的当前移动方向和当前移动距离后,就可以根据确定的当前移动方向和当前移动距离移动鼻部特征点,得到移动后的鼻部特征点,并根据移动后的鼻部特征点确定出调整后的鼻子区域。

在本公开实施例中,鼻部区域的参数修改信息包括鼻子调长参数修改信息和鼻子调短参数修改信息中的一个,和/或,鼻子调宽参数修改信息和鼻子调窄参数修改信息中的一个;

若鼻部区域的参数修改信息包括鼻子调长参数修改信息,当前移动方向为沿鼻子中线方向向下移动的方向;

若鼻部区域的参数修改信息包括鼻子调短参数修改信息,当前移动方向为沿鼻子中线方向向上移动的方向;

若鼻部区域的参数修改信息为鼻子调宽参数修改信息,移动方向为远离鼻子中线的方向;

若鼻部区域的参数修改信息为鼻子调窄参数修改信息,移动方向为靠近鼻子中线的方向

其中,鼻部区域的参数修改信息具体包括哪些参数修改信息是由实际的配置情况决定的,例如,在一可选方案中,假设配置的可选的参数修改信息(即提供给用户的特效选项)为鼻子调长参数修改信息、鼻子调短参数修改信息、鼻子调宽参数修改信息和鼻子调窄参数修改信息,则用户的鼻子调整指令中只包括四种参数修改信息的一个,也就是,用户选择的参数修改信息为其中一种;在另一可选方案中,假设配置的可选的参数修改信息为鼻子调大参数修改信息和鼻子调小参数修改信息,而鼻子调大参数修改信息同时包括鼻子调长参数修改信息和鼻子调宽参数修改信息,当用户选择鼻子调大时,此时则用户选择的鼻子特效中则同时包括鼻子调长参数修改信息和鼻子调宽参数修改信息。

其中,鼻子调宽参数修改信息和鼻子调窄参数修改信息指的是对鼻子的鼻根(眼睛下方的鼻根部分,但不包括眼睛中间部分的鼻根)和鼻翼部分的宽度进行调整,即将鼻部特征点向靠近鼻子中线的方向移动或者向远离鼻子中线的方向移动,以达到鼻子扩大或瘦鼻的效果;鼻子调长参数修改信息和鼻子调短参数修改信息就是对鼻子的长度调整,不对鼻子的宽度进行调整,指的是对待处理人脸图像中的鼻子进行拉长或缩短处理,即控制鼻部特征点沿鼻子中线向上移动或向下移动,以达到将鼻子拉长或缩短的效果。可以理解的是,上述中的鼻子中线指的是在待处理人脸图像中鼻子垂直方向的中线,且鼻子的中线可以根据鼻部特征点计算得出,如图5a与5b中的虚线部分所示。

需要说明的是,上述中参数修改信息只是举例说明,在实际的应用中参数修改信息并不局限于这四种,本公开实施例对具体的参数修改信息不做限定。

在一示例中,假如用户选择的调整指标为8,检测出的鼻子特征点包括如图3b中所示的特征点a、b、c、d、e、f、g、h,以及对鼻子特征点进行插值处理后得到的插值特征点k1和k2。

1、如图5a所示,当鼻子特效为鼻子调窄参数修改信息时,根据预配置的调整指标与特征点移动距离的对应关系,以及预配置的参数修改信息与移动方向的对应关系,确定出鼻子特征点a、b、c、d、e、f、g、h和插值特征点k1、k2的当前移动距离和当前移动方向,如6a图中所示的鼻部特征点d的移动矢量为矢量该矢量的方向即为鼻部特征点d的当前移动方向,该矢量的长度即为鼻部特征点d的当前移动距离,然后根据确定的每个鼻部特征点的当前移动距离和当前移动方向对鼻部特征点a、b、c、d、e、f、g、h和插值特征点为k1、k2进行移动,得到移动后的鼻部特征点c′、d′、e′、f′、g′、h′、k1′和k2′,根据移动后的鼻部特征点确定调整后的鼻子区域,进而得到调整后的待处理人脸图像。由图中可以看出,在本示例中,鼻部特征点a、b的移动矢量为0;特征点c、d、e、f、g、h和插值特征点为k1、k2根据预配置的调整指标与特征点移动距离的对应关系,确定出当前移动距离为x,根据预配置的鼻子调窄参数修改信息与移动方向的对应关系,确定当前移动方向为靠近垂直方向的鼻子中线的方向(如图5a中所示的鼻部特征点d的移动矢量的当前移动方向和当前移动距离)。

2、如图5b所示,当鼻子特效为鼻子调长参数修改信息时,根据预配置的调整指标与特征点移动距离的对应关系,以及预配置的参数修改信息与移动方向的对应关系,确定出鼻子特征点a、b、c、d、e、f、g、h和插值特征点k1、k2的当前移动距离和当前移动方向,如6b图中所示的鼻部特征点d的移动矢量为矢量该矢量的当前方向即为鼻部特征点d的当前移动方向,该矢量的当前长度即为鼻部特征点d的当前移动距离,然后根据确定的当前移动距离和当前移动方向对鼻部特征点a、b、c、d、e、f、g、h和插值特征点k1、k2进行移动,得到移动后的鼻部特征点c′、d′、e′、f′、g′、h′、k1′和k2′,根据调整后的鼻部特征点确定调整后的鼻子区域,进而得到调整后的待处理人脸图像。由图中可以看出,在本示例中鼻部特征点a、b的移动矢量;而特征点c、d、e、f、g、h和插值特征点k1、k2根据预配置的调整指标与特征点移动距离的对应关系,确定的当前移动距离为x,根据预配置的鼻子调长参数修改信息与移动方向的对应关系,确定的当前移动方向为沿鼻子中线方向向下移动的方向(如5a图中所示的鼻部特征点d的移动矢量的当前移动方向和前移动距离)。

在实际的应用中,为了使调整后的待处理人脸图像更加的真实自然,还可以在调整鼻部特征点的同时,根据预配置的处理方式对鼻部区域关联的其它人脸区域进行相应的调整,比如,可以对鼻部区域周围的一些区域(如嘴部和鼻部之间的区域)进行平滑处理,或者将其它部位的特征点做相应的平移处理,比如,根据鼻部调长参数修改信息处理后,可以将唇部部分的特征点进行相应的上移处理,使得调整后的鼻子更加真实自然。

另外,在实际的应用中在本公开的实施例中,还会对调整后的待处理人脸图像进行渲染,得到与鼻子特效对应的效果图,其中,对渲染的具体实现方式不做限定。

其中,一种可选的渲染实施方式为:预先设置每个鼻部特征点与纹理坐标的对应关系,在得到鼻部特征点后,可以根据鼻部特征点、对应的纹理坐标计算得出插值特征点的纹理坐标。当对鼻部特征点进行调整后,可以根据调整后的鼻部特征点确定出调整后的鼻部区域的目标顶点坐标,然后基于预先配置的每个鼻部特征点与纹理坐标的对应关系,以及鼻部特征点对应的纹理坐标,确定出目标顶点坐标所对应的纹理坐标,之后将得到的纹理坐标对应的纹理贴到调整后的鼻部区域相对应的位置上,得到与参数修改信息对应的效果图。

当然,在实际的应用中,也可不预先设置每个鼻部特征点与纹理坐标的对应关系,在确定出目标顶点坐标后,可以通过预配置的计算方式实时计算得出目标顶点坐标对应的纹理坐标,然后将计算得出的纹理坐标对应的纹理贴到调整后鼻部区域相对应的位置上,得到与鼻部特效对应的效果图。

需要说明的是,上述中对待处理人脸图像的渲染实施方式只是举例说明,在实际的应用中具体实现的方式可以根据实际的需要设定。

进一步的,在对待处理人脸图像进行相应的鼻部处理,得到与述参数修改信息对应的效果图后,若接收到用户的图片保存操作,此时可以根据预先配置好的存储路径,将处理后得到的效果图存储在相应的存储空间。其中,预先配置好的存储路径可以为本地图库的存储空间,也可以是云端服务器,本公开实施例对次不做限定。

基于与图1所示方法的相同原理,本公开的实施例中还提供了一种人脸图像编辑装置20,如图6所示,该装置20可以包括:图像获取模块210、指令接收模块220、特征点获取模块230、图像处理模块240和图像显示模块250,其中,

图像获取模块210,用于获取待处理人脸图像;

指令接收模块220,用于接收对待处理人脸图像的鼻子调整指令,鼻子调整指令中包括基于待处理人脸图像是鼻部区域的参数修改信息;

特征点获取模块230,用于响应于参数修改信息,检测待处理人脸图像的鼻部区域中的鼻部特征点,以及根据鼻部特征点获取移动后的鼻部特征点;

图像处理模块240,用于根据移动后的鼻部特征点,确定出调整后的鼻部区域,并对调整后的鼻部区域进行渲染,得到调整后的待处理人脸图像;

图像显示模块250,用于显示调整后的待处理人脸图像。

本公开的实施例中,特征点获取模块在根据鼻部特征点获取移动后的鼻部特征点时,具体用于:

根据参数修改信息,确定鼻部特征点的当前移动矢量;

根据当前移动矢量,控制鼻部特征点的移动,得到移动后的鼻部特征点。

本公开的实施例中,特征点获取模块在检测待处理人脸图像的鼻部区域中与的鼻部特征点之后,还用于:

对鼻部特征点进行插值处理,得到待处理人脸图像的鼻部区域内的插值特征点,鼻部特征点还包括插值特征点。

本公开的实施例中,当前移动矢量包括当前移动距离和当前移动方向,鼻子调整指令中还包括参数修改信息的调整指标,调整指标用于标识参数修改信息的调整强度,调整强度包括当前移动距离;

特征点获取模块在确定鼻部特征点的当前移动矢量时,具体用于:

依据调整指标,以及预配置的调整指标与特征点移动距离的对应关系,确定当前移动距离。

本公开的实施例中,特征点获取模块在根据鼻部特征点获取移动后的鼻部特征点时,具体用于:

根据预配置的参数修改信息与移动方向的对应关系,确定与鼻子特效对应的移动方向,与参数修改信息对应的移动方向为当前移动方向。

本公开的实施例中,鼻部区域的参数修改信息包括鼻子调长参数修改信息和鼻子调短参数修改信息中的一个,和/或,鼻子调宽参数修改信息和鼻子调窄参数修改信息中的一个;

若鼻部区域的参数修改信息包括鼻子调长参数修改信息,当前移动方向为沿鼻子中线方向向下移动的方向;

若鼻部区域的参数修改信息包括鼻子调短参数修改信息,当前移动方向为沿鼻子中线方向向上移动的方向;

若鼻部区域的参数修改信息为鼻子调宽参数修改信息,移动方向为远离鼻子中线的方向;

若鼻部区域的参数修改信息为鼻子调窄参数修改信息,移动方向为靠近鼻子中线的方向。

本公开的实施例中,指令接收模块在接收对待处理人脸图像的鼻子调整指令时,具体用于:

接收对待处理人脸图像的鼻子调整触发指令;

响应于鼻子调整触发指令,显示鼻子调整界面,鼻子调整界面中显示有鼻子参数修改信息选项和待处理人脸图像;

通过鼻子调整界面,接收鼻子调整指令。

本公开实施例中,接收到鼻子调整指令后即根据鼻子调整指令中的参数修改信息对待处理人脸图像的鼻部区域进行调整中,实现了一键调整图像中用户鼻部区域的功能,而不需要手动对人脸图像的鼻部区域进行编辑,减少了处理的时间,提升了用户的交互体验。

基于与本公开的实施例中的图像处理方法相同的原理,本公开的实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机操作指令;处理器,用于通过调用计算机操作指令执行实施例所示的方法。

基于与本公开的实施例中的图像处理方法相同的原理,本公开提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令用于使计算机实现上述实施例所示的方法,在此不再赘述。

本公开的实施例与现有技术相比,

本公开实施例中,接收到鼻子调整指令后即根据鼻子调整指令中的参数修改信息对待处理人脸图像的鼻部区域进行调整中,实现了一键调整图像中用户鼻部区域的功能,而不需要手动对人脸图像的鼻部区域进行编辑,减少了处理的时间,提升了用户的交互体验。

下面参考图7,其示出了适于用来实现本公开实施例的电子设备700的结构示意图,该电子设备700可以为终端设备或服务器。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(rom)702中的程序或者从存储装置708加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、rom702以及ram703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。

通常,以下装置可以连接至i/o接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置708;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从rom702被安装。在该计算机程序被处理装置701执行时,执行本公开实施例的方法中限定的上述功能。

需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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