一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种皮肤处理、直播方法、计算机设备和存储介质与流程

2022-03-22 20:07:01 来源:中国专利 TAG:


1.本发明实施例涉及计算机视觉的技术领域,尤其涉及一种皮肤处理、直播方法、计算机设备和存储介质。


背景技术:

2.随着社会的发展,诸如手机、平板电脑等计算机设备已经广泛应用在学习、娱乐、工作等方面,扮演着越来越重要的角色。
3.在很多计算机设备中配置有摄像头,可用于拍照、录像、直播等操作。
4.用户的皮肤会分泌油脂,由于拍照、录像、直播等操作的环境较为复杂,在光线较差的情况下,会使得用户的皮肤凸显油光。
5.为了去除油光,通常对具有油光的区域进行多个层级的处理,如加深、叠加、双边滤波、羽化等,操作较为复杂,占用的资源较多,耗时较多。


技术实现要素:

6.本发明实施例提出了一种皮肤处理、直播方法、计算机设备和存储介质,以解决如何降低去除油光的复杂度的问题。
7.第一方面,本发明实施例提供了一种皮肤处理方法,包括:
8.采集图像数据,所述图像数据中具有人物形象;
9.在所述图像数据中识别所述人物形象的皮肤、作为皮肤区域;
10.在所述皮肤区域中识别具有油光的区域、作为原始油光区域;
11.沿至少两个方向对所述原始油光区域进行卷积处理,获得目标油光区域;
12.以所述目标油光区域的亮度值作为参考、调节所述皮肤区域的颜色。
13.第二方面,本发明实施例还提供了一种直播方法,包括:
14.采集视频数据,所述视频数据中包括多帧图像数据,所述图像数据中具有主播用户;
15.接收表示去除油光的操作;
16.响应于所述操作,在所述图像数据中识别所述主播用户的皮肤、作为皮肤区域;
17.在所述皮肤区域中识别具有油光的区域、作为原始油光区域;
18.沿至少两个方向对所述原始油光区域进行卷积处理,获得目标油光区域;
19.以所述目标油光区域的亮度值作为参考、调节所述皮肤区域的颜色;
20.在所述主播用户开设的直播间中发布去除油光之后的视频数据。
21.第三方面,本发明实施例还提供了一种皮肤处理装置,包括:
22.图像数据采集模块,用于采集图像数据,所述图像数据中具有人物形象;
23.皮肤区域识别模块,用于在所述图像数据中识别所述人物形象的皮肤、作为皮肤区域;
24.原始油光区域识别模块,用于在所述皮肤区域中识别具有油光的区域、作为原始
油光区域;
25.目标油光区域生成模块,用于沿至少两个方向对所述原始油光区域进行卷积处理,获得目标油光区域;
26.皮肤颜色调节模块,用于以所述目标油光区域的亮度值作为参考、调节所述皮肤区域的颜色。
27.第四方面,本发明实施例还提供了一种直播装置,包括:
28.视频数据采集模块,用于采集视频数据,所述视频数据中包括多帧图像数据,所述图像数据中具有主播用户;
29.用户操作接收模块,用于接收表示去除油光的操作;
30.皮肤区域识别模块,用于响应于所述操作,在所述图像数据中识别所述主播用户的皮肤、作为皮肤区域;
31.原始油光区域识别模块,用于在所述皮肤区域中识别具有油光的区域、作为原始油光区域;
32.目标油光区域生成模块,用于沿至少两个方向对所述原始油光区域进行卷积处理,获得目标油光区域;
33.皮肤颜色调节模块,用于以所述目标油光区域的亮度值作为参考、调节所述皮肤区域的颜色;
34.视频数据发布模块,用于在所述主播用户开设的直播间中发布去除油光之后的视频数据。
35.第五方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:
36.一个或多个处理器;
37.存储器,用于存储一个或多个程序,
38.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的皮肤处理或者如第二方面所述的直播方法。
39.第六方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如第一方中任一项所述的皮肤处理或者如第二方面所述的直播方法。
40.在本实施例中,采集图像数据,图像数据中具有人物形象,在图像数据中识别人物形象的皮肤、作为皮肤区域,在皮肤区域中识别具有油光的区域、作为原始油光区域,沿至少两个方向对原始油光区域进行卷积处理,获得目标油光区域,以目标油光区域的亮度值作为参考、调节皮肤区域的颜色,一方面,通过卷积处理对油光进行平滑,并以此作为依据调节皮肤区域的颜色,使得皮肤区域更加柔和,可去除油光,贴近肌肤光泽的皮肤纹理,另一方面,卷积处理、调节皮肤区域的颜色等操作较为简便,可降低占用的资源,降低耗时,适用于直播等对实时性要求较高的任务。
附图说明
41.图1为本发明实施例一提供的一种皮肤处理方法的流程图;
42.图2a至图2f为本发明实施例一提供的一种识别皮肤区域的示例图;
43.图3a至图3b为本发明实施例一提供的一种卷积操作的示例图;
44.图4是本发明实施例二提供的一种直播方法的流程图;
45.图5为本发明实施例三提供的一种皮肤处理装置的结构示意图;
46.图6为本发明实施例四提供的一种直播装置的结构示意图;
47.图7为本发明实施例五提供的一种计算机设备的结构示意图。
具体实施方式
48.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
49.实施例一
50.图1为本发明实施例一提供的一种皮肤处理、直播方法的流程图,本实施例可适用于通过油光的亮度去调节肤色的颜色的情况,该方法可以由皮肤处理、直播装置来执行,该皮肤处理装置可以由软件和/或硬件实现,可配置在计算机设备中,例如,移动终端(如手机、平板灯、pda(personal digital assistant,个人数字助理)等)、智能穿戴设备(如智能眼镜、智能手表等)、个人电脑,等等,具体包括如下步骤:
51.步骤101、采集图像数据。
52.在具体实现中,计算机设备的操作系统可以包括android(安卓)、ios、windows等等,在这些操作系统中支持运行可进行图像处理的应用,如直播应用、图像编辑应用、相机应用、即时通讯工具、图库应用,等等。
53.诸如图像编辑应用、即时通讯工具、图库应用等应用,其ui(user interface,用户界面)可提供导入的控件,用户可通过触控或鼠标等外设操作该导入的控件,选择本地存储的图像数据(以缩略图或路径表示),也可以选择网络存储的图像数据(以url(uniform resource locators,统一资源定位器)表示),使得应用采集到该图像数据。
54.诸如直播应用、图像编辑应用、相机应用、即时通讯工具等应用,其ui可提供拍照、录像的控件,用户可通过触控或鼠标等外设操作该拍照、录像的控件,通知应用调用摄像头采集图像数据。
55.步骤102、在图像数据中识别人物形象的皮肤、作为皮肤区域。
56.在本实施例中,图像数据中具有人物形象,所谓人物形象,可以指图像数据中用于表示人物的像素点。
57.进一步而言,该人物形象至少包括用于表示人脸的人脸数据(像素点),除此之外,还可以包括用于表示头发的头发数据(像素点)、用于表示躯体的躯体数据(像素点)、用于表示四肢的四肢数据(像素点),等等,本发明实施例对此不加以限制。
58.对于人物形象,可以进行肤色检测,从而在人脸数据、躯体数据、四肢数据等区域中识别表示皮肤的皮肤区域face
mask
(像素点)。
59.在本发明的一个实施例中,可识别人物形象中人脸的皮肤、作为皮肤区域face
mask
,则在本实施例中,步骤102可以包括如下步骤:
60.步骤1021、识别图像数据中表征人物形象人脸的特征点、作为人脸关键点。
61.在本发明实施例中,可对图像数据进行人脸检测,识别该人脸数据中包含的人脸关键点,该人脸关键点用于表征人物形象人脸的特征点。
62.其中,人脸检测也称为人脸关键点检测、定位或者人脸对齐,是指给定人脸数据,定位出人脸面部的关键区域位置,包括眉毛、眼睛、鼻子、嘴巴、脸部轮廓等等。
63.在具体实现中,可通过如下方式对图像数据进行人脸检测:
64.1、利用人工提取特征,如haar特征,使用特征训练分类器,使用分类器进行人脸检测。
65.2、从通用的目标检测算法中继承人脸检测,例如,利用faster r-cnn来检测人脸。
66.3、使用级联结构的卷积神经网络,例如,cascade cnn(级联卷积神经网络),mtcnn(multi-task cascaded convolutional networks,多任务卷积神经网络)。
67.这些实现人脸检测的方法可以集成在应用的模块中,应用可直接调用该模块检测图像数据中的人脸关键点,这些实现人脸检测的方法也可以集成在sdk(software development kit,软件开发工具包),该sdk作为应用的组装数据,应用可请求sdk对图像数据进行人脸检测,sdk检测到图像数据中的人脸关键点,并将人脸关键点返回应用。
68.需要说明的是,人脸关键点的数量,可以由本领域技术人员根据实际情况设置,对于静态的图像处理,实时性要求较低,可以检测较为稠密的人脸关键点,如1000个,除了能定位人脸重要的特征点之外,还能准确的描述出五官的轮廓;对于直播等,实时性要求较高,可以检测较为稀疏的人脸关键点,如68、81、106个,定位人脸上比较明显且重要的特征点(如眼睛关键点、眉毛关键点、鼻子关键点、嘴巴关键点、轮廓关键点等),以降低处理量、减少处理时间,等等,本发明实施例对此不加以限制。
69.为使本领域技术人员更好地理解本发明实施例,在本发明实施例中,以较为稀疏的人脸关键点作为一种示例进行说明。
70.例如,对图2a所示的图像数据进行人脸检测,可以输出如图2b的68个人脸关键点,也可以输出如图2c所示的106个人脸关键点。
71.在输出人脸关键点时,可对人脸关键点配置编号,例如,如图2e所示,人脸关键点共68个,编号如下:
72.轮廓关键点共17个,编号分别为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15、16、17。
73.眉毛关键点共10个,编号分别为18、19、20、21、22、23、24、25、26、27。
74.鼻子关键点共9个,分别为28、29、30、31、32、33、34、35、36。
75.眼睛关键点共12个,编号分别为37、38、39、40、41、42、43、44、45、46、47、48。
76.嘴巴关键点共20个,编号分别为49、50、51、52、53、54、55、56、57、58、59、60、61、62、63、64、65、66、67、68。
77.一般情况下,在额头的区域并不检测人脸关键点,但是,额头的区域属于人脸皮肤的组成部分,因此,在本实施例中,可识别表示额头的额头关键点,作为人脸关键点,从而保证在人脸中肤色区域的完整性,保证去除油光的效果。
78.在具体实现中,可从人脸关键点中读取表示眼睛的眼睛关键点、表示眉心的眉心关键点,其中,眼睛关键点可以为任一检测到的特征点(如图2e所示编号为37、38、39、40、41、42、43、44、45、46、47、48中的任一特征点,或者表示瞳孔的特征点),也可以为参考检测到的眼睛关键点生成的特征点(如中点),眉心关键点可以为直接检测到的特征点,也可以为参考检测到的眉毛关键点生成的特征点(如任一对匹配的眉毛关键点(如图2e所示编号为22与23的眉毛关键点、编号为21与24的眉毛关键点、编号为20与25的眉毛关键点、编号为
19与26的眉毛关键点、编号为18与27的眉毛关键点)的中点)。
79.需要说明的是,眼睛关键点与人物形象的眼睛是一一对应的关系,即针对一个眼睛挑选一个眼睛关键点。
80.如图2d所示,若选定眉毛关键点201、眼睛关键点202,则可以沿线条指示,将眼睛关键点202沿眉心关键201进行映射,获得额头关键点203。
81.一般情况下,眼睛关键点202与额头关键点203关于眉毛关键点201对称,即眼睛关键点202与眉毛关键点201之间的距离,与,额头关键点203关与眉毛关键点201之间的距离一般是相等的。
82.此外,为了防止额头关键点稀疏的情况,可在原有额头关键点203之间通过插值的方式,插入一个或多个特征点,作为新的额头关键点204。
83.针对额头关键点,可配置编号,例如,如图2e所示,针对额头关键点,可配置编号为69、70、71。
84.步骤1022、依次连接处于人脸边缘的人脸关键点,获得人脸的皮肤、作为皮肤区域。
85.在本实施例中,可筛选出处于人脸边缘的人脸关键点,按照顺序依次连接这些人脸关键点,形成一个封闭的区域,该封闭的区域表示人脸的皮肤、可作为皮肤区域face
mask

86.在一个示例中,轮廓关键点、额头关键点等人脸关键点处于人脸边缘,则可以按照编号依次连接轮廓关键点、额头关键点等人脸关键点,获得人脸的皮肤、作为皮肤区域face
mask

87.例如,如图2f所示,依次连接编号为1、2、3、4、5、6、7、8、9、10、11、12、13、14、15、16、17的轮廓关键点,以及,编号为69、70、71的额头关键点,从而获得皮肤区域face
mask

88.当然,除了人脸的皮肤之外,还可以识别人物形象中其他部位(如颈部、手部、腿部等)的皮肤、作为皮肤区域face
mask
,本实施例对此不加以限制。
89.步骤103、在皮肤区域中识别具有油光的区域、作为原始油光区域。
90.若人物形象的皮肤上具有油光,则在皮肤区域face
mask
中,该油光所在的区域在亮度、颜色分量等特征上存在一些特性,因此,可通过亮度值划分、聚类(如模糊聚类)等方式,在皮肤区域中识别具有油光的区域、作为原始油光区域light
mask

91.在本发明的一个实施例中,步骤103可以包括如下步骤:
92.步骤1031、增强皮肤区域的对比度。
93.在本实施例中,可从图像数据中提取皮肤区域face
mask
,可以通过幂函数、直方图均衡化(histogram equalization)、拉普拉斯算子、对数(log)变换、伽玛(gamma)变换等方式增强皮肤区域face
mask
的对比度,可以增加高灰度值的区域的细节,强调高灰度值的区域,从而增强高光的区域与肤色之间的对比,由于油光通常为高光的区域,因此,通过增强对比度可降低识别油光的难度,保证识别油光的准确性。
94.以幂函数为作为示例,可调用api(application programming interface,应用程序编程接口),如sensor_reference_illuminant1_iso_studio_tungsten等,检测计算机设备在采集图像数据时的进光量r。
95.基于进光量r确定目标值p,其中,目标值p与进光量r正相关,即,进光量r越多,目标值p越大,反之,进光量r越少,目标值p越小。
96.在一个示例中,目标值p与进光量r的关系如下:
97.p=k*r
98.其中,k为调节系数,属于常量。
99.针对皮肤区域face
mask
中指定的颜色分量,以目标值作为颜色分量的指数,对颜色分量进行幂函数转换,从而增强皮肤区域face
mask
的对比度,由于目标值与采集图像数据时的进光量相关,可优化对比度的增强幅度,从而提高识别油光所在区域的准确性。
100.一般情况下,图像数据处于rgb(红绿蓝)颜色空间,即图像数据的颜色分量包括r(红色)分量、g(绿色)分量、b(蓝色)分量,在b分量下,高光的区域与肤色之间的对比会更加明显,因此,可在b分量下以目标值作为颜色分量的指数,对颜色分量进行幂函数转换,从而增强皮肤区域face
mask
的对比度,此时,皮肤区域face
mask
可表示为:
101.b'=b
p
102.其中,b'为增强对比度之后的b分量,p为目标值。
103.步骤1032、在目标皮肤区域中滤除非油光的区域,获得原始油光区域。
104.在具体实现中,可以设置一阈值,该阈值与计算机设备所处的环境(如直播环境)相关,在该环境中进行统计生成。
105.将皮肤区域face
mask
中各个像素点的亮度值与预设的阈值进行比较。
106.若亮度值大于或等于阈值,则保持像素点,即维持该像素点的颜色分量(如b分量)的数值不变,从而保留油光的区域。
107.若亮度值小于阈值,则将该像素点的颜色分量(如b分量)设置为0,滤除像素点,从而滤除非油光的区域。
108.步骤104、沿至少两个方向对原始油光区域进行卷积处理,获得目标油光区域。
109.在本实施例中,可以设置至少两个独立的方向,即每个方向均不相同,分离至少两个方向对原始油光区域light
mask
进行卷积处理,从而平滑油光,获得目标油光区域light
mask
'。
110.在本发明的一个实施例中,步骤104可以包括如下步骤:
111.步骤1041、沿第一方向对原始油光区域进行卷积处理,获得候选油光区域。
112.步骤1042、沿第二方向对候选油光区域进行卷积处理,获得目标油光区域。
113.在本实施例中,设置两个方向对原始油光区域进行卷积处理,这两个方向分别为第一方向、第二方向。
114.其中,第一方向与第二方向相互垂直,例如,若第一方向为x轴方向,则第二方向为y轴方向,若第一方向为y轴方向,则第二方向为x轴方向。
115.在具体实现中,首先,沿第一方向对原始油光区域进行卷积处理,获得候选油光区域,然后,沿第二方向对候选油光区域进行卷积处理,获得目标油光区域。
116.在一个示例中,卷积处理为加权平均处理,则在本示例中,第一方向上的卷积处理、第二方向上的卷积处理如下:
117.1、第一方向上的卷积处理:
118.依次遍历原始油光区域中的每个像素点,从而依次以原始油光区域中的每个像素点作为第一目标点。
119.以第一目标点作为基点,沿第一方向确定第一范围,一般情况下,为提高平滑的效
果,第一目标点位于第一范围的中心位置。
120.例如,如图3a所示,在x轴上,针对第一目标点301,可以在第一目标点301之前纳入n(n为正整数)个像素点,在第一目标点301之后纳入n个像素点,使得第一范围中的像素点为2n 1。
121.对第一范围内的各个像素点配置第一权重,该第一权重可以相同,也可以与距离第一目标点的程度负相关,等等,本实施例对此不加以限制。
122.计算像素点的亮度值与第一权重之间的第一乘积,计算所有第一乘积之间的和值、作为第一目标点的亮度值。
123.此时,第一目标点的亮度值表示如下:
[0124][0125][0126]
其中,i、k为第一方向(如x轴)上的坐标,l(i)为第i个像素点(即第一目标点)的亮度值,s(i)为第一范围,f(k)为第k个像素点的亮度值,m(k)为第一权重。
[0127]
2、第二方向上的卷积处理
[0128]
依次遍历候选油光区域中的每个像素点,从而依次以候选油光区域中的每个像素点作为第二目标点;
[0129]
以第二目标点作为基点,沿第二方向确定第二范围,一般情况下,为提高平滑的效果,第一目标点位于第一范围的中心位置。
[0130]
例如,如图3b所示,在y轴上,针对第二目标点302,可以在第二目标点302之前纳入n个像素点,在第二目标点302之后纳入n个像素点,使得第二范围中的像素点为2n 1。
[0131]
对第二范围内的各个像素点配置第二权重,该第一权重可以相同,也可以与距离第二目标点的程度负相关,等等,本实施例对此不加以限制。
[0132]
计算像素点的亮度值与第二权重之间的第二乘积,计算所有第二乘积之间的和值、作为第二目标点的亮度值。
[0133]
此时,第二目标点的亮度值表示如下:
[0134][0135][0136]
其中,j、l为第二方向(如y轴)上的坐标,l(j)为第j个像素点(即第二目标点)的亮度值,s(j)为第二范围,f(l)为第l个像素点的亮度值,m(l)为第二权重。
[0137]
当然,上述加权平均只是作为卷积处理的示例,在实施本发明实施例时,可以根据实际情况设置其他卷积处理,本发明实施例对此不加以限制。另外,除了上述卷积处理外,本领域技术人员还可以根据实际需要采用其它卷积处理,本发明实施例对此也不加以限
制。
[0138]
步骤105、以目标油光区域的亮度值作为参考、调节皮肤区域的颜色。
[0139]
在本实施例中,以平滑油光之后的目标油光区域light
mask
'的亮度值作为参考,综合调整皮肤区域face
mask
的颜色,使得调整皮肤区域face
mask
的颜色更加柔和,贴近肌肤光泽的皮肤纹理。
[0140]
在本发明的一个实施例中,步骤105可以包括如下步骤:
[0141]
步骤1051、统计皮肤区域中颜色分量的平均值、作为特征颜色分量。
[0142]
在本实施例中,可以对皮肤区域face
mask
中各个像素点在各个颜色分量下的值进行累加,再除以像素点的数量,从而得到皮肤区域face
mask
中颜色分量的平均值、作为特征颜色分量。
[0143]
以rgb颜色空间为例,对皮肤区域face
mask
中各个像素点在r分量下的值进行累加,再除以像素点的数量,从而得到皮肤区域face
mask
中r分量的平均值;对皮肤区域face
mask
中各个像素点在g分量下的值进行累加,再除以像素点的数量,从而得到皮肤区域face
mask
中g分量的平均值;对皮肤区域face
mask
中各个像素点在b分量下的值进行累加,再除以像素点的数量,从而得到皮肤区域face
mask
中b分量的平均值,此时,特征颜色分量可表示为skin
rgb

[0144]
步骤1052、基于目标油光区域的亮度值叠加皮肤区域的颜色分量与特征颜色分量。
[0145]
在本实施例中,可以以目标油光区域light
mask
'的亮度值作为系数,对皮肤区域face
mask
的颜色分量与特征颜色分量进行线性融合,从而叠加皮肤区域face
mask
的颜色分量与特征颜色分量,由于叠加的两个颜色分量均属于肤色区域,因此,叠加之后的颜色分量更加柔和、更加贴近肤色真实的纹理。
[0146]
在具体实现中,可将目标油光区域light
mask
'的亮度值设置为第三权重,以及,基于第三权重计算第四权重,例如,将一减去第三权重,获得第四权重。
[0147]
计算特征颜色分量与第三权重之间的第三乘积,计算皮肤区域face
mask
中的颜色分量与第四权重之间的第四乘积。
[0148]
计算第三乘积与第四乘积之间的和值、作为皮肤区域新的颜色分量。
[0149]
此时,叠加的过程可以如下表示:
[0150]
t=a*skin
rgb
(1-a)*face
mask
[0151]
其中,a为目标油光区域light
mask
'的亮度值(即第三权重),1-a为第四权重,skin
rgb
为特征色彩分量,face
mask
为皮肤区域face
mask
中的颜色分量。
[0152]
在本实施例中,采集图像数据,图像数据中具有人物形象,在图像数据中识别人物形象的皮肤、作为皮肤区域,在皮肤区域中识别具有油光的区域、作为原始油光区域,沿至少两个方向对原始油光区域进行卷积处理,获得目标油光区域,以目标油光区域的亮度值作为参考、调节皮肤区域的颜色,一方面,通过卷积处理对油光进行平滑,并以此作为依据调节皮肤区域的颜色,使得皮肤区域更加柔和,可去除油光,贴近肌肤光泽的皮肤纹理,另一方面,卷积处理、调节皮肤区域的颜色等操作较为简便,可降低占用的资源,降低耗时,适用于直播等对实时性要求较高的任务。
[0153]
实施例二
[0154]
图4为本发明实施例二提供的一种直播方法的流程图,本实施例可适用于在直播的过程中通过油光的亮度去调节肤色的颜色的情况,该方法可以由直播装置来执行,该直播装置可以由软件和/或硬件实现,可配置在计算机设备中,例如,移动终端(如手机、平板灯、pda(personal digital assistant,个人数字助理)等)、智能穿戴设备(如智能眼镜、智能手表等)、个人电脑,等等,具体包括如下步骤:
[0155]
步骤401、采集视频数据。
[0156]
在具体实现中,计算机设备的操作系统可以包括android(安卓)、ios、windows等等,在这些操作系统中支持运行直播应用,该直播应用可进行图像处理。
[0157]
需要说明的是,该直播应用可以为独立的应用,也可以为其他应用(如社交应用、即时通讯工具等)中的一个组件,如sdk,本发明实施例对此不加以限制。
[0158]
主播用户在直播应用中向直播平台登录用户账号,并向直播平台发送直播标题,以按照该直播标题对该用户账号生成直播间。
[0159]
此后,该直播应用可调用计算机设备的摄像头采集视频数据,该视频数据中包括多帧图像数据,至少部分图像数据中具有主播用户。
[0160]
当然,图像数据中的主播用户,可以指用于表示主播用户的像素点,一般情况下,该主播至少包括用于表示人脸的人脸数据(像素点),除此之外,还可以包括用于表示头发的头发数据(像素点)、用于表示躯体的躯体数据(像素点)、用于表示四肢的四肢数据(像素点),等等,本发明实施例对此不加以限制。
[0161]
步骤402、接收表示去除油光的操作。
[0162]
在具体实现中,直播应用的ui可提供美颜的控件,其中,该控件关联多个子控件,部分子控件可用于去除油光,主播用户可通过触控或鼠标等外设操作该子控件,从而触发去除油光的操作。
[0163]
步骤403、响应于操作,在图像数据中识别主播用户的皮肤、作为皮肤区域。
[0164]
针对主播用户触发的、去除油光的操作,可在图像数据中对主播用户进行肤色检测,从而在人脸数据、躯体数据、四肢数据等区域中识别表示皮肤的皮肤区域(像素点)。
[0165]
在本发明的一个实施例中,可识别人物形象中人脸的皮肤、作为皮肤区域,则在本实施例中,步骤403可以包括如下步骤:
[0166]
步骤4031、识别图像数据中表征主播用户人脸的特征点、作为人脸关键点。
[0167]
在具体实现中,人脸关键点包括表示额头的额头关键点、表示眼睛的眼睛关键点、表示眉心的眉心关键点,而额头关键点处于人脸边缘。
[0168]
则在步骤4031中,将眼睛关键点沿眉心关键点进行映射,获得额头关键点;在额头关键点之间插入新的额头关键点。
[0169]
步骤4032、依次连接处于人脸边缘的人脸关键点,获得人脸的皮肤、作为皮肤区域。
[0170]
步骤404、在皮肤区域中识别具有油光的区域、作为原始油光区域。
[0171]
若主播用户的皮肤上具有油光,则在皮肤区域中,该油光所在的区域在亮度、颜色分量等特征上存在一些特性,因此,可通过亮度值划分、聚类(如模糊聚类)等方式,在皮肤区域中识别具有油光的区域、作为原始油光区域。
[0172]
在本发明的一个实施例中,步骤404可以包括如下步骤:
[0173]
步骤4041、增强皮肤区域的对比度。
[0174]
示例性地,检测采集图像数据时的进光量;基于进光量确定目标值,其中,目标值与进光量正相关。
[0175]
针对皮肤区域中指定的颜色分量,以目标值作为颜色分量的指数,对颜色分量进行幂函数转换。
[0176]
步骤4042、若增强对比度完成,则滤除非油光的区域,获得原始油光区域。
[0177]
在具体实现中,可将皮肤区域中各个像素点的亮度值与预设的阈值进行比较;若亮度值大于或等于阈值,则保持像素点;若亮度值小于阈值,则滤除像素点。
[0178]
步骤405、沿至少两个方向对原始油光区域进行卷积处理,获得目标油光区域。
[0179]
在本实施例中,可以设置至少两个独立的方向,即每个方向均不相同,分离至少两个方向对原始油光区域进行卷积处理,从而平滑油光,获得目标油光区域。
[0180]
在本发明的一个实施例中,步骤405可以包括如下步骤:
[0181]
步骤4051、沿第一方向对原始油光区域进行卷积处理,获得候选油光区域。
[0182]
示例性地,依次以原始油光区域中的像素点、作为第一目标点;以第一目标点作为基点,沿第一方向确定第一范围;对第一范围内的各个像素点配置第一权重;计算像素点的亮度值与第一权重之间的第一乘积;计算所有第一乘积之间的和值、作为第一目标点的亮度值。
[0183]
步骤4052、沿第二方向对候选油光区域进行卷积处理,获得目标油光区域。
[0184]
其中,第一方向与第二方向相互垂直。
[0185]
示例性地,依次以候选油光区域中的像素点、作为第二目标点;以第二目标点作为基点,沿第二方向确定第二范围;对第二范围内的各个像素点配置第二权重;计算像素点的亮度值与第二权重之间的第二乘积;计算所有第二乘积之间的和值、作为第二目标点的亮度值。
[0186]
步骤406、以目标油光区域的亮度值作为参考、调节皮肤区域的颜色。
[0187]
在本实施例中,以平滑油光之后的目标油光区域的亮度值作为参考,综合调整皮肤区域的颜色,使得调整皮肤区域的颜色更加柔和,贴近肌肤光泽的皮肤纹理。
[0188]
在本发明的一个实施例中,步骤406可以包括如下步骤:
[0189]
步骤4061、统计皮肤区域中颜色分量的平均值、作为特征颜色分量。
[0190]
步骤4062、基于目标油光区域的亮度值叠加皮肤区域的颜色分量与特征颜色分量。
[0191]
示例性地,将目标油光区域的亮度值设置为第三权重,以及,基于第三权重计算第四权重。
[0192]
计算特征颜色分量与第三权重之间的第三乘积,计算皮肤区域中的颜色分量与第四权重之间的第四乘积。
[0193]
计算第三乘积与第四乘积之间的和值、作为皮肤区域新的颜色分量。
[0194]
步骤407、在主播用户开设的直播间中发布去除油光之后的视频数据。
[0195]
在具体实现中,若去除了视频数据中主播用户的油光,则直播应用可通过rtsp(real time streaming protocol,实时流传输协议)、rtmp(real time messaging protocol,实时消息传输协议)、hls(http live streaming,动态码率自适应技术)等协议,
将视频数据发送至直播平台(直播服务器),直播平台(直播服务器)公开该主播用户(以id等标识表示)开设的直播间,使得观众用户可以在客户端中打开直播间,接收该视频数据并进行播放。
[0196]
在本发明实施例中,由于去除油光的操作与实施例一的应用基本相似,所以描述的比较简单,相关之处参见实施例一的部分说明即可,本发明实施例在此不加以详述。
[0197]
在本实施例中,采集视频数据,视频数据中包括多帧图像数据,图像数据中具有主播用户;接收表示去除油光的操作;响应于操作,在图像数据中识别主播用户的皮肤、作为皮肤区域;在皮肤区域中识别具有油光的区域、作为原始油光区域;沿至少两个方向对原始油光区域进行卷积处理,获得目标油光区域;以目标油光区域的亮度值作为参考、调节皮肤区域的颜色;在主播用户开设的直播间中发布去除油光之后的视频数据,一方面,通过卷积处理对油光进行平滑,并以此作为依据调节皮肤区域的颜色,使得皮肤区域更加柔和,可去除油光,贴近肌肤光泽的皮肤纹理,另一方面,卷积处理、调节皮肤区域的颜色等操作较为简便,可降低占用的资源,降低耗时,从而减少传输时的延时,可保证实时性,适用于直播。
[0198]
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0199]
实施例三
[0200]
图5为本发明实施例三提供的一种皮肤处理装置的结构框图,具体可以包括如下模块:
[0201]
图像数据采集模块501,用于采集图像数据,所述图像数据中具有人物形象;
[0202]
皮肤区域识别模块502,用于在所述图像数据中识别所述人物形象的皮肤、作为皮肤区域;
[0203]
原始油光区域识别模块503,用于在所述皮肤区域中识别具有油光的区域、作为原始油光区域;
[0204]
目标油光区域生成模块504,用于沿至少两个方向对所述原始油光区域进行卷积处理,获得目标油光区域;
[0205]
皮肤颜色调节模块505,用于以所述目标油光区域的亮度值作为参考、调节所述皮肤区域的颜色。
[0206]
在本发明的一个实施例中,所述皮肤区域识别模块502包括:
[0207]
人脸关键点识别子模块,用于识别所述图像数据中表征所述人物形象人脸的特征点、作为人脸关键点;
[0208]
人脸关键点连接子模块,用于依次连接处于人脸边缘的所述人脸关键点,获得人脸的皮肤、作为皮肤区域。
[0209]
在本发明的一个实施例中,所述人脸关键点包括表示额头的额头关键点、表示眼睛的眼睛关键点、表示眉心的眉心关键点,所述额头关键点处于人脸边缘;
[0210]
所述人脸关键点识别子模块包括:
[0211]
额头关键点映射单元,用于将所述眼睛关键点沿所述眉心关键点进行映射,获得
额头关键点;
[0212]
额头关键点插入单元,用于在所述额头关键点之间插入新的额头关键点。
[0213]
在本发明的一个实施例中,所述原始油光区域识别模块503包括:
[0214]
对比度增强子模块,用于增强所述皮肤区域的对比度;
[0215]
非油光滤除子模块,用于若增强对比度完成,则滤除非油光的区域,获得原始油光区域。
[0216]
在本发明的一个实施例中,所述对比度增强子模块包括:
[0217]
进光量监测单元,用于检测采集所述图像数据时的进光量;
[0218]
目标值确定单元,用于基于所述进光量确定目标值,所述目标值与所述进光量正相关;
[0219]
幂函数转换单元,用于针对所述皮肤区域中指定的颜色分量,以所述目标值作为所述颜色分量的指数,对所述颜色分量进行幂函数转换。
[0220]
在本发明的一个实施例中,所述非油光滤除子模块包括:
[0221]
亮度比较单元,用于将所述皮肤区域中各个像素点的亮度值与预设的阈值进行比较;
[0222]
像素点保持单元,用于若所述亮度值大于或等于所述阈值,则保持所述像素点;
[0223]
像素点滤除单元,用于若所述亮度值小于所述阈值,则滤除所述像素点。
[0224]
在本发明的一个实施例中,所述目标油光区域生成模块504包括:
[0225]
第一卷积子模块,用于沿第一方向对所述原始油光区域进行卷积处理,获得候选油光区域;
[0226]
第二卷积子模块,用于沿第二方向对所述候选油光区域进行卷积处理,获得目标油光区域,所述第一方向与所述第二方向相互垂直。
[0227]
在本发明的一个实施例中,所述第一卷积子模块包括:
[0228]
第一目标点确定单元,用于依次以所述原始油光区域中的像素点、作为第一目标点;
[0229]
第一范围确定单元,用于以所述第一目标点作为基点,沿第一方向确定第一范围;
[0230]
第一权重配置单元,用于对所述第一范围内的各个像素点配置第一权重;
[0231]
第一乘积计算单元,用于计算所述像素点的亮度值与所述第一权重之间的第一乘积;
[0232]
第一亮度值计算单元,用于计算所有所述第一乘积之间的和值、作为所述第一目标点的亮度值。
[0233]
在本发明的一个实施例中,所述第二卷积子模块包括:
[0234]
第二目标点确定单元,用于依次以所述候选油光区域中的像素点、作为第二目标点;
[0235]
第二范围确定单元,用于以所述第二目标点作为基点,沿第二方向确定第二范围;
[0236]
第二权重配置单元,用于对所述第二范围内的各个像素点配置第二权重;
[0237]
第二乘积计算单元,用于计算所述像素点的亮度值与所述第二权重之间的第二乘积;
[0238]
第二亮度值计算单元,用于计算所有所述第二乘积之间的和值、作为所述第二目
标点的亮度值。
[0239]
在本发明的一个实施例中,所述皮肤颜色调节模块505包括:
[0240]
特征颜色分量统计子模块,用于统计所述皮肤区域中颜色分量的平均值、作为特征颜色分量;
[0241]
颜色分量叠加子模块,用于基于所述目标油光区域的亮度值叠加所述皮肤区域的颜色分量与所述特征颜色分量。
[0242]
在本发明的一个实施例中,所述颜色分量叠加子模块包括:
[0243]
第三权重设置单元,用于将所述目标油光区域的亮度值设置为第三权重;
[0244]
第四权重计算单元,用于基于所述第三权重计算第四权重;
[0245]
第三乘积计算单元,用于计算所述特征颜色分量与所述第三权重之间的第三乘积;
[0246]
第四权重计算单元,用于计算所述皮肤区域中的颜色分量与所述第四权重之间的第四乘积;
[0247]
新颜色分量计算单元,用于计算所述第三乘积与所述第四乘积之间的和值、作为所述皮肤区域新的颜色分量。
[0248]
本发明实施例所提供的皮肤处理装置可执行本发明任意实施例所提供的皮肤处理方法,具备执行方法相应的功能模块和有益效果。
[0249]
实施例四
[0250]
图6为本发明实施例四提供的一种直播装置的结构框图,具体可以包括如下模块:
[0251]
视频数据采集模块601,用于采集视频数据,所述视频数据中包括多帧图像数据,所述图像数据中具有主播用户;
[0252]
用户操作接收模块602,用于接收表示去除油光的操作;
[0253]
皮肤区域识别模块603,用于响应于所述操作,在所述图像数据中识别所述主播用户的皮肤、作为皮肤区域;
[0254]
原始油光区域识别模块604,用于在所述皮肤区域中识别具有油光的区域、作为原始油光区域;
[0255]
目标油光区域生成模块605,用于沿至少两个方向对所述原始油光区域进行卷积处理,获得目标油光区域;
[0256]
皮肤颜色调节模块606,用于以所述目标油光区域的亮度值作为参考、调节所述皮肤区域的颜色;
[0257]
视频数据发布模块607,用于在所述主播用户开设的直播间中发布去除油光之后的视频数据。
[0258]
在本发明的一个实施例中,所述皮肤区域识别模块603包括:
[0259]
人脸关键点识别子模块,用于识别所述图像数据中表征所述主播用户人脸的特征点、作为人脸关键点;
[0260]
人脸关键点连接子模块,用于依次连接处于人脸边缘的所述人脸关键点,获得人脸的皮肤、作为皮肤区域。
[0261]
在本发明的一个实施例中,所述人脸关键点包括表示额头的额头关键点、表示眼睛的眼睛关键点、表示眉心的眉心关键点,所述额头关键点处于人脸边缘;
[0262]
所述人脸关键点识别子模块包括:
[0263]
额头关键点映射单元,用于将所述眼睛关键点沿所述眉心关键点进行映射,获得额头关键点;
[0264]
额头关键点插入单元,用于在所述额头关键点之间插入新的额头关键点。
[0265]
在本发明的一个实施例中,所述原始油光区域识别模块604包括:
[0266]
对比度增强子模块,用于增强所述皮肤区域的对比度;
[0267]
非油光滤除子模块,用于若增强对比度完成,则滤除非油光的区域,获得原始油光区域。
[0268]
在本发明的一个实施例中,所述对比度增强子模块包括:
[0269]
进光量监测单元,用于检测采集所述图像数据时的进光量;
[0270]
目标值确定单元,用于基于所述进光量确定目标值,所述目标值与所述进光量正相关;
[0271]
幂函数转换单元,用于针对所述皮肤区域中指定的颜色分量,以所述目标值作为所述颜色分量的指数,对所述颜色分量进行幂函数转换。
[0272]
在本发明的一个实施例中,所述非油光滤除子模块包括:
[0273]
亮度比较单元,用于将所述皮肤区域中各个像素点的亮度值与预设的阈值进行比较;
[0274]
像素点保持单元,用于若所述亮度值大于或等于所述阈值,则保持所述像素点;
[0275]
像素点滤除单元,用于若所述亮度值小于所述阈值,则滤除所述像素点。
[0276]
在本发明的一个实施例中,所述目标油光区域生成模块605包括:
[0277]
第一卷积子模块,用于沿第一方向对所述原始油光区域进行卷积处理,获得候选油光区域;
[0278]
第二卷积子模块,用于沿第二方向对所述候选油光区域进行卷积处理,获得目标油光区域,所述第一方向与所述第二方向相互垂直。
[0279]
在本发明的一个实施例中,所述第一卷积子模块包括:
[0280]
第一目标点确定单元,用于依次以所述原始油光区域中的像素点、作为第一目标点;
[0281]
第一范围确定单元,用于以所述第一目标点作为基点,沿第一方向确定第一范围;
[0282]
第一权重配置单元,用于对所述第一范围内的各个像素点配置第一权重;
[0283]
第一乘积计算单元,用于计算所述像素点的亮度值与所述第一权重之间的第一乘积;
[0284]
第一亮度值计算单元,用于计算所有所述第一乘积之间的和值、作为所述第一目标点的亮度值。
[0285]
在本发明的一个实施例中,所述第二卷积子模块包括:
[0286]
第二目标点确定单元,用于依次以所述候选油光区域中的像素点、作为第二目标点;
[0287]
第二范围确定单元,用于以所述第二目标点作为基点,沿第二方向确定第二范围;
[0288]
第二权重配置单元,用于对所述第二范围内的各个像素点配置第二权重;
[0289]
第二乘积计算单元,用于计算所述像素点的亮度值与所述第二权重之间的第二乘
积;
[0290]
第二亮度值计算单元,用于计算所有所述第二乘积之间的和值、作为所述第二目标点的亮度值。
[0291]
在本发明的一个实施例中,所述皮肤颜色调节模块606包括:
[0292]
特征颜色分量统计子模块,用于统计所述皮肤区域中颜色分量的平均值、作为特征颜色分量;
[0293]
颜色分量叠加子模块,用于基于所述目标油光区域的亮度值叠加所述皮肤区域的颜色分量与所述特征颜色分量。
[0294]
在本发明的一个实施例中,所述颜色分量叠加子模块包括:
[0295]
第三权重设置单元,用于将所述目标油光区域的亮度值设置为第三权重;
[0296]
第四权重计算单元,用于基于所述第三权重计算第四权重;
[0297]
第三乘积计算单元,用于计算所述特征颜色分量与所述第三权重之间的第三乘积;
[0298]
第四权重计算单元,用于计算所述皮肤区域中的颜色分量与所述第四权重之间的第四乘积;
[0299]
新颜色分量计算单元,用于计算所述第三乘积与所述第四乘积之间的和值、作为所述皮肤区域新的颜色分量。
[0300]
本发明实施例所提供的直播装置可执行本发明任意实施例所提供的直播方法,具备执行方法相应的功能模块和有益效果。
[0301]
实施例五
[0302]
图7为本发明实施例五提供的一种计算机设备的结构示意图。图7示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图7显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0303]
如图7所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
[0304]
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
[0305]
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0306]
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产
品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0307]
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
[0308]
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0309]
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的皮肤处理方法或直播方法。
[0310]
实施例六
[0311]
本发明实施例六还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述皮肤处理方法或直播方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0312]
其中,计算机可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0313]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献