图像处理方法和装置与流程

文档序号:15616309发布日期:2018-10-09 21:28阅读:117来源:国知局

本申请涉及图像处理技术领域,尤其涉及一种图像处理方法和装置。



背景技术:

现如今的日常生活中,用户可以利用某些图像处理软件,对自己或他人的脸部照片进行虚拟美妆并展示美妆效果,或者也可以选择实时展示虚拟美妆效果。这样,用户无需进行实际的美妆操作,也可以查看某种美妆效果,为用户的美妆选择提供参考。但通常,这些图像处理软件都需要用户先自行下载并安装在手机、pc等终端设备上,才可以在终端设备上使用这些软件,用户操作较为复杂,影响用户体验。另一方面,由于不同型号的终端设备所使用的系统可能不同,因此技术人员需要针对不同的系统进行软件开发,技术人员的工作量较大,软件开发与维护的成本较高。



技术实现要素:

有鉴于此,本申请提供一种图像处理方法和装置,以解决相关技术中用户体验较差、软件开发与维护成本较高的问题。

具体地,本申请是通过如下技术方案实现的:

第一方面,本申请提供一种图像处理方法,所述方法应用于web客户端,包括:

在接收到用户的图像渲染请求时,获取摄像头拍摄到的视频图像帧;所述图像渲染请求中包括图像渲染方案;所述视频图像帧中包括人脸区域;

将所述视频图像帧和所述图像渲染方案发送至服务端,以使所述服务端在基于预设的人脸检测算法获取所述视频图像帧中人脸区域的人脸特征点后,基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染,并将图像渲染后的视频图像帧返回给所述web客户端;

在接收到所述服务端返回的图像渲染后的视频图像帧时,将所述图像渲染后的视频图像帧展示给用户。

第二方面,本申请提供一种图像处理方法,所述方法应用于服务端,包括:

在接收到web客户端发送的视频图像帧和图像渲染方案时,基于预设的人脸检测算法对所述视频图像帧进行人脸检测,以获取所述视频图像帧中人脸区域的人脸特征点;

基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染;

将图像渲染后的视频图像帧返回给所述web客户端,以使所述web客户端将所述图像渲染后的视频图像帧展示给用户。

第三方面,本申请提供一种图像处理装置,所述装置应用于web客户端,包括:

获取单元,用于在接收到用户的图像渲染请求时,获取摄像头拍摄到的视频图像帧;所述图像渲染请求中包括图像渲染方案;所述视频图像帧中包括人脸区域;

发送单元,用于将所述视频图像帧和所述图像渲染方案发送至服务端,以使所述服务端在基于预设的人脸检测算法获取所述视频图像帧中人脸区域的人脸特征点后,基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染,并将图像渲染后的视频图像帧返回给所述web客户端;

展示单元,用于在接收到所述服务端返回的图像渲染后的视频图像帧时,将所述图像渲染后的视频图像帧展示给用户。

第四方面,本申请提供一种图像处理装置,所述装置应用于服务端,包括:

检测单元,用于在接收到web客户端发送的视频图像帧和图像渲染方案时,基于预设的人脸检测算法对所述视频图像帧进行人脸检测,以获取所述视频图像帧中人脸区域的人脸特征点;

渲染单元,用于基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染;

返回单元,用于将图像渲染后的视频图像帧返回给所述web客户端,以使所述web客户端将所述图像渲染后的视频图像帧展示给用户。

分析上述技术方案可知,在本申请技术方案中,用户可以直接通过web客户端实现对照片或视频的渲染,例如:对照片进行虚拟美妆并展示美妆效果,或者实时展示虚拟美妆效果等。采用这样的方式,用户无需自行下载安装图像处理软件,仅需通过浏览器输入web客户端的网址,以进入web客户端即可,简化了用户操作,提升了用户体验。另一方面,由于web客户端可以适配多种不同的系统,即可以应用于多种不同型号的终端设备,技术人员在进行软件开发时,无需针对不同的系统进行软件开发,减少了技术人员的工作量,降低了软件开发与维护的成本。

附图说明

图1是本申请一示例性实施例示出的一种图像处理方法的流程图;

图2是本申请一示例性实施例示出的另一种图像处理方法的流程图;

图3是一种人脸区域及其人脸特征点的位置示意图;

图4是本申请一示例性实施例示出的一种图像处理装置所在设备的硬件结构图;

图5是本申请一示例性实施例示出的另一种图像处理装置所在设备的硬件结构图;

图6是本申请一示例性实施例示出的一种图像处理装置的框图;

图7是本申请一示例性实施例示出的另一种图像处理装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

相关技术中,用户可以利用某些图像处理软件,对自己或他人的脸部照片进行虚拟美妆并展示美妆效果,或者也可以选择实时展示虚拟美妆效果。这样,用户无需进行实际的美妆操作,也可以查看某种美妆效果,为用户的美妆选择提供参考。但通常,这些图像处理软件都需要用户先自行下载并安装在手机、pc等终端设备上,才可以在终端设备上使用这些软件,用户操作较为复杂,影响用户体验。

另一方面,由于不同型号的终端设备所使用的系统可能不同,例如:windows、linux、android、ios等,因此技术人员需要针对不同的系统进行软件开发,技术人员的工作量较大,软件开发与维护的成本较高。

为了解决上述问题,本申请提供一种图像处理方法和装置,以提升用户体验,并降低软件开发与维护的成本。

请参考图1,为本申请一示例性实施例示出的一种图像处理方法的流程图。该图像处理方法可以应用在web客户端中,web客户端可以位于手机、pc等终端设备中。该图像处理方法可以包括如下步骤:

步骤101:在接收到用户的图像渲染请求时,获取摄像头拍摄到的视频图像帧;所述图像渲染请求中包括图像渲染方案;所述视频图像帧中包括人脸区域。

步骤102:将所述视频图像帧和所述图像渲染方案发送至服务端,以使所述服务端在基于预设的人脸检测算法获取所述视频图像帧中人脸区域的人脸特征点后,基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染,并将图像渲染后的视频图像帧返回给所述web客户端。

步骤103:在接收到所述服务端返回的图像渲染后的视频图像帧时,将所述图像渲染后的视频图像帧展示给用户。

与图1所示的实施例相应地,请参考图2,为本申请一示例性实施例示出的另一种图像处理方法的流程图。该图像处理方法可以应用在服务端中,服务端可以位于服务器等设备中。该图像处理方法可以包括如下步骤:

步骤201:在接收到web客户端发送的视频图像帧和图像渲染方案时,基于预设的人脸检测算法对所述视频图像帧进行人脸检测,以获取所述视频图像帧中人脸区域的人脸特征点。

步骤202:基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染。

步骤203:将图像渲染后的视频图像帧返回给所述web客户端,以使所述web客户端将所述图像渲染后的视频图像帧展示给用户。

在本实施例中,用户可以直接通过手机、个人电脑等终端设备进入web客户端。具体地,用户可以在终端设备中开启浏览器,进而可以在浏览器中输入web客户端的网址并确认,以进入web客户端。由于终端设备所使用的系统中通常已包括有浏览器,因此用户无需自行在终端设备上下载并安装浏览器。

用户在进入web客户端后,可以选择想要使用的图像渲染方案,并点击展示在web客户端的网页中的图像渲染按钮。web客户端在检测到用户点击图像渲染按钮的动作后,可以视为接收到用户的图像渲染请求,并确定用户选择的图像渲染方案。后续,web客户端可以调用其所在的终端设备中的摄像头进行视频拍摄,并获取摄像头拍摄到的在拍摄时间上连续的多幅视频图像帧。在实际应用中,web客户端可以基于webrtc(webreal-timecommunication,网页实时通信)技术,获取摄像头拍摄到的在拍摄时间上连续的多幅视频图像帧。

需要说明的是,可以由用户调节摄像头的拍摄方向,或者根据摄像头在终端设备中的位置选择用于拍摄的摄像头(例如:前置摄像头、后置摄像头等),使摄像头可以拍摄到包括人脸区域的视频图像帧,即使web客户端可以获取到摄像头拍摄的包括人脸区域的视频图像帧。

web客户端在获取到摄像头拍摄到的视频图像帧后,可以将这些视频图像帧以及上述用户选择的图像渲染方案发送至服务端,由服务端基于该图像渲染方案对这些视频图像帧进行进一步的图像渲染。

在另一个例子中,用户在进入web客户端后,可以先点击展示在web客户端的网页中的拍摄按钮。web客户端在检测到用户点击拍摄按钮的动作后,可以视为接收到用户的拍摄请求,从而可以调用其所在的终端设备中的摄像头进行视频拍摄,并获取摄像头拍摄到的在拍摄时间上连续的多幅视频图像帧。此时,由于用户尚未选择想要使用的图像渲染方案,因此web客户端无需将这些视频图像帧发送至服务端,而可以将这些视频图像帧按照拍摄时间顺序整合为视频展示给用户,以将摄像头拍摄到的视频实时展示给用户。

后续,用户可以点击展示在web客户端的网页中的图像渲染按钮。web客户端在检测到用户点击图像渲染按钮的动作后,可以视为接收到用户的图像渲染请求,并确定用户选择的图像渲染方案。此时,web客户端可以将从当前时刻开始获取到的摄像头拍摄到的视频图像帧,以及用户选择的图像渲染方案发送至服务端,由服务端基于该图像渲染方案对这些视频图像帧进行进一步的图像渲染。

在本实施例中,服务端在接收到web客户端发送的视频图像帧时,首先可以基于预设的人脸检测算法,对每幅视频图像帧进行人脸检测,以获取该视频图像帧中人脸区域的人脸特征点。其中,人脸检测算法可以是dlib库提供的68点人脸检测算法。

具体地,服务端可以先获取上述视频图像帧中人脸区域的人脸边界,再基于预先训练好的人脸模型,以及该人脸模型中68个人脸特征点的位置(可用坐标表示),对该视频图像帧进行检测,从而可以确定该视频图像帧中68个人脸特征点的位置,即可以获取该视频图像帧中68个人脸特征点。

请参考图3,为一种人脸区域及其人脸特征点的位置示意图。服务端在接收到web客户端发送的视频图像帧时,可以基于上述人脸检测算法对该视频图像帧进行人脸检测,从而可以获取该视频图像帧中人脸区域的68个人脸特征点,这68个人脸特征点在人脸区域中的位置即如图3所示。

在本实施例中,服务端在获取到上述视频图像帧中人脸区域的人脸特征点后,可以基于这些人脸特征点以及上述由web客户端发送的渲染方案(即用户选择的渲染方案),对该视频图像帧进行图像渲染。

具体地,服务端在获取到上述视频图像帧中人脸区域的人脸特征点后,首先可以基于这些人脸特征点对该视频图像帧进行人脸分割,以从该视频图像帧中分割出该人脸区域,再对该人脸区域进行三角化处理。

以图3所示的人脸区域及其人脸特征点为例,服务端可以基于特征点1至特征点17以及其他特征,将该人脸区域从其所在的视频图像帧中分割出来,便于后续对该人脸区域进行图像渲染。后续,服务端可以对该人脸区域进行三角化处理,即将该人脸区域划分为多个大小相同且位置不重合的三角形子区域,三角形子区域的大小可以由技术人员自行设置。服务端在对该人脸区域进行三角化处理后,可以基于这68个特征点确定该人脸区域中各人脸部分所在位置。举例来说,特征点18至特征点27分别所在的三角形子区域构成眉毛部分,其中,至特征点22分别所在的三角形子区域构成右眉毛部分,特征点22至特征点27分别所在的三角形子区域构成左眉毛部分;特征点49至特征点68分别所在的三角形子区域构成嘴唇部分,其中,特征点49至特征点61分别所在的三角形子区域构成上嘴唇部分,特征点62至特征点68分别所在的三角形子区域构成下嘴唇部分。

服务端在对上述人脸区域进行区域分割后,可以基于上述由web客户端发送的图像渲染方案对区域分割后的人脸区域进行图像渲染。其中,图像渲染方案可以包括对人脸区域进行锐化、模糊、着色、高光等。

继续以图3所示的人脸区域及其人脸特征点为例,假设上述用户选择的图像渲染方案包括将嘴唇部分染成红色,则服务端可以对特征点49至特征点68分别所在的三角形子区域进行着色处理,以将其着色为红色。

在实际应用中,服务端可以将一幅包括人脸区域的图像作为模板图像,并获取该模板图像中人脸区域的人脸特征点。后续,服务端可以基于这些人脸特征点,以及由技术人员预先设置的多种不同的图像渲染方案,对该模板图像进行图像渲染,从而可以得到多幅图像渲染后的模板图像作为效果图像,这些效果图像彼此之间具有不同的图像渲染效果。

服务端可以将这些效果图像通过web客户端提供给用户,用户可以根据这些效果图像所呈现的图像渲染效果选择想要使用的图像渲染方案。具体来说,用户可以选择一幅效果图像并点击图像渲染按钮,web客户端在检测到用户点击图像渲染按钮的动作后,可以获取摄像头拍摄到的视频图像帧,并将这些视频图像帧以及该效果图像发送至服务端。服务端在接收到该效果图像时,可以确定通过上述模板图像得到该效果图像所使用的图像渲染方案,并将该图像渲染方案作为用户选择的图像渲染方案。后续,服务端可以基于该图像渲染方案对web客户端发送的视频图像帧进行进一步的图像渲染。

服务端在完成对上述视频图像帧的图像渲染后,可以将图像渲染后的视频图像帧发送回web客户端。web客户端在接收到服务端返回的图像渲染后的视频图像帧时,可以将这些图像渲染后的视频图像帧展示给用户。

具体地,web客户端可以将多幅上述图像渲染后的视频图像帧按照拍摄时间顺序整合为视频展示给用户。在实际应用中,通常服务端对web客户端发送的视频图像帧进行图像渲染所需要耗费的时间较短,因此可以视为用户可以通过web客户端,实时查看摄像头拍摄到的视频经过图像渲染后的效果。在本申请技术方案应用于虚拟美妆时,即用户可以通过web客户端,进行虚拟美妆并实时查看虚拟美妆的效果。

在另一个例子中,用户也可以选择已拍摄到的照片作为想要进行图像渲染的图像,并由web客户端将该图像和用户选择的图像渲染方案发送至服务端。服务端可以基于该图像渲染方案对该图像进行进一步的图像渲染,并将图像渲染后的图像返回至web客户端。web客户端在接收到服务端返回的图像渲染后的图像后,可以将该图像渲染后的图像展示给用户,从而使用户可以查看所选择的照片经过图像渲染后的效果。

综合上述实施例来看,在本申请技术方案中,用户可以直接通过web客户端实现对照片或视频的渲染,例如:对照片进行虚拟美妆并展示美妆效果,或者实时展示虚拟美妆效果等。采用这样的方式,用户无需自行下载安装图像处理软件,仅需通过浏览器输入web客户端的网址,以进入web客户端即可,简化了用户操作,提升了用户体验。另一方面,由于web客户端可以适配多种不同的系统,即可以应用于多种不同型号的终端设备,技术人员在进行软件开发时,无需针对不同的系统进行软件开发,减少了技术人员的工作量,降低了软件开发与维护的成本。

与前述图像处理方法的实施例相对应,本申请还提供了图像处理装置的实施例。

本申请图像处理装置的实施例可以分别应用在web客户端和服务端上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在web客户端或服务端的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请图像处理装置所在web客户端的一种硬件结构图;如图5所示,为本申请图像处理装置所在服务端的一种硬件结构图,除了图4和图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的web客户端和服务端通常根据该图像处理的实际功能,还可以包括其他硬件,对此不再赘述。

请参考图6,为本申请一示例性实施例示出的一种图像处理装置的框图。该图像处理装置600可以应用在图4所示的web客户端上,包括:

获取单元601,用于在接收到用户的图像渲染请求时,获取摄像头拍摄到的视频图像帧;所述图像渲染请求中包括图像渲染方案;所述视频图像帧中包括人脸区域;

发送单元602,用于将所述视频图像帧和所述图像渲染方案发送至服务端,以使所述服务端在基于预设的人脸检测算法获取所述视频图像帧中人脸区域的人脸特征点后,基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染,并将图像渲染后的视频图像帧返回给所述web客户端;

展示单元603,用于在接收到所述服务端返回的图像渲染后的视频图像帧时,将所述图像渲染后的视频图像帧展示给用户。

在一个可选的实施例中,所述展示单元603可以包括:

展示子单元6031,用于将多幅所述图像渲染后的视频图像帧按照拍摄时间顺序整合为视频展示给用户。

请参考图7,为本申请一示例性实施例示出的一种图像处理装置的框图。该图像处理装置700可以应用在图5所示的服务端上,包括:

检测单元701,用于在接收到web客户端发送的视频图像帧和图像渲染方案时,基于预设的人脸检测算法对所述视频图像帧进行人脸检测,以获取所述视频图像帧中人脸区域的人脸特征点;

渲染单元702,用于基于所述人脸特征点以及所述图像渲染方案对所述视频图像帧进行图像渲染;

返回单元703,用于将图像渲染后的视频图像帧返回给所述web客户端,以使所述web客户端将所述图像渲染后的视频图像帧展示给用户。

在一个可选的实施例中,所述渲染单元702可以包括:

分割子单元7021,用于基于所述人脸特征点对所述视频图像帧进行人脸分割以分割出所述人脸区域,并对所述人脸区域进行三角化处理;

渲染子单元7022,用于基于所述图像渲染方案对三角化处理后的人脸区域进行图像渲染。

在另一个可选的实施例中,所述图像渲染方案可以包括:

对人脸区域进行锐化、模糊、着色、高光。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

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