一种图像处理和直播方法、装置、设备和存储介质与流程

文档序号:18544203发布日期:2019-08-27 21:30阅读:227来源:国知局
一种图像处理和直播方法、装置、设备和存储介质与流程

本发明实施例涉及图像处理技术,尤其涉及一种图像处理和直播方法、装置、设备和存储介质。



背景技术:

随着美颜的流行,越来越多的用户希望能通过美颜工具对图片或者视频中的人物进行美颜处理。

尤其是在手机拍照和直播领域,对美颜的需求越来越凸显。目前,一般采用通过识别人脸来控制手机的曝光时长、来调整视频图像的亮度的方法,来实现对灯光的调节。这样的调节方法通过局部信息来控制图像前处理,从而实现调节视频图像的亮度。这样的调节方法存在局部无法反应全局的问题,如:例如识别脸部控制亮度对脸部适用并不适用脸部以外的图像亮度。从而导致用户在照片或者视频中亮度过曝以及脸部肤色不均匀的问题。



技术实现要素:

本发明提供一种图像处理和直播方法、装置、设备和存储介质,以解决用户在照片或者视频中亮度过曝以及脸部肤色不均匀的问题。

第一方面,本发明实施例提供了一种图像处理方法,包括:

获取原始图像数据;

确定所述原始图像数据中每个像素点的纹理坐标;

从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

根据所述纹理坐标显示所述目标图像数据。

在此基础上,所述纹理坐标包括第一方向;

所述从所述像素点中确定第一目标点以及至少两个第二目标点,包括:

沿第一方向依次将所述像素点设置为第一目标点;

以所述第一目标点在所述第一方向上的坐标为中心,在所述原始图像数据中确定第一目标范围;

若所述像素点在所述第一方向上的坐标位于所述第一目标范围内,则将所述像素点设置为第二目标点。

在此基础上,所述根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据,包括:

确定所述第二目标点相对于所述第一目标点的第一权重;

对所述第二目标点在所述第一方向上的亮度值配置第一权重,获得第一候选亮度值;

计算所述第一候选亮度值之间的平均值,作为所述第一目标点在所述第一方向上的亮度值。

在此基础上,所述确定所述第二目标点相对于所述第一目标点的第一权重,包括:

确定所述第二目标点与所述第一目标点之间的距离;

确定所述第二目标点的第一权重,所述第一权重与所述距离正相关。

在此基础上,所述纹理坐标包括第二方向;所述从所述像素点中确定第一目标点以及至少两个第二目标点,包括

沿第二方向依次将所述像素点设置为第一目标点;

以所述第一目标点在所述第二方向上的坐标为中心,在所述原始图像数据中确定第二目标范围;

若所述像素点在所述第二方向上的坐标位于所述第二目标范围内,则将所述像素点设置为第二目标点。

在此基础上,所述根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据,包括:

确定所述第二目标点相对于所述第一目标点的第二权重;

对所述第二目标点在所述第二方向上的亮度值配置第二权重,获得第二候选亮度值;

计算所述第二候选亮度值之间的平均值,作为所述第一目标点在所述第二方向上的亮度值。

第二方面,本发明实施例还提供了一种直播方法,包括:

请求直播服务器创建直播间;

采集原始直播视频数据,所述原始直播视频数据包括原始图像数据,所述原始图像数据中每个像素点具有纹理坐标;

接收美颜操作;

响应于所述美颜操作,从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

根据所述纹理坐标显示所述目标图像数据;

根据所述目标图像数据生成目标直播视频数据,并发送至所述直播服务器,以在所述直播间中播放。

第三方面,本发明实施例还提供了一种图像处理装置,包括:

数据获取模块,用于获取原始图像数据;

坐标确定模块,用于确定所述原始图像数据中每个像素点的纹理坐标;

目标点确定模块,用于从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

亮度调节模块,用于根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

数据显示模块,用于根据所述纹理坐标显示所述目标图像数据。

第四方面,本发明实施例还提供了一种直播装置,包括:

直播间创建模块,用于请求直播服务器创建直播间;

数据采集模块,用于采集原始直播视频数据,所述原始直播视频数据包括原始图像数据,所述原始图像数据中每个像素点具有纹理坐标;

操作接收模块,用于接收美颜操作;

操作响应模块,用于响应于所述美颜操作,从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

数据获得模块,用于根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

图像显示模块,用于根据所述纹理坐标显示所述目标图像数据;

视频播放模块,用于根据所述目标图像数据生成目标直播视频数据,并发送至所述直播服务器,以在所述直播间中播放。

第五方面,本发明实施例还提供了一种电子设备,包括:

一个或多个处理器;

存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的一种图像处理方法;

或,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第二方面所述的一种直播方法。

第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的一种图像处理方法;

或,

该程序被处理器执行时实现如第二方面所述的一种直播方法。

在本发明实施例中,获取原始图像数据;确定原始图像数据中每个像素点的纹理坐标;从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据。通过确定第一目标点,根据第一目标点周围的第二目标点的亮度来对第一目标点的亮度进行调节,使得第一目标点与第二目标点的亮度差异变小,以实现亮度的平衡过度。使用纹理坐标简化了运算的难度,提高了运算速度。

在本发明实施例中,请求直播服务器创建直播间;采集原始直播视频数据,原始直播视频数据包括原始图像数据,原始图像数据中每个像素点具有纹理坐标;接收美颜操作;响应于美颜操作,从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据;根据目标图像数据生成目标直播视频数据,并发送至直播服务器,以在直播间中播放。在实现亮度的平衡过度的,提高运算速度的基础上,使得电子设备(尤其是使用电池的移动设备)用于支持该方式的电量减少,减少设备发热,提高电子设备的续航能力,进而延长直播的时间。

附图说明

图1a为本发明实施例一提供的一种图像处理方法的流程图;

图1b为本发明实施例一提供的一种可能的第二目标点的示意图;

图2a为本发明实施例二提供的一种图像处理方法的流程图;

图2b为本发明实施例二提供的一种对像素点处理的示意图;

图2c为本发明实施例二提供的一种图像处理方法的流程图;

图2d为本发明实施例二提供的一种图像处理方法的结构图;

图3为本发明实施例三提供的一种直播方法的流程图;

图4为本发明实施例四提供的一种图像处理装置;

图5为本发明实施例五提供的一种直播装置;

图6为本发明实施例六提供的一种电子设备的构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1a为本发明实施例一提供的一种图像处理方法的流程图。本实施例适用于通过像素点的纹理坐标对图像数据的亮度进行亮度值调节的场景。该方法可以由一种图像处理装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可配置在电子设备中,例如,手机、平板电脑、可穿戴设备(如智能眼镜、智能手表)等,该电子设备配置有屏幕、中央处理器(cpu)和图形处理器(gpu)。参考图1a,该方法具体包括:

s101、获取原始图像数据。

原始图像数据是指用数值表示的各像素(pixel)的值的集合。获取图像数据的方式可以是指通过摄像设备采集主播用户上传的直播的画面,也可以是接收用户输入的图像。一般的,原始图像数据包括人。即原始图像数据可以分为人体部分与背景部分。

原始图像数据可能有对应多种色彩模型的表达形式,如:rgb色彩模式、cmyk色彩模式和lab色彩模式。

rgb色彩模式是工业界的一种颜色标准,是通过对红(r)、绿(g)、蓝(b)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,rgb即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。

cmyk色彩模式是当阳光照射到一个物体上时,这个物体将吸收一部分光线,并将剩下的光线进行反射,反射的光线就是我们所看见的物体颜色。这是一种减色色彩模式。cmyk代表印刷上用的四种颜色,c代表青色(cyan),m代表洋红色(magenta),y代表黄色(yellow),k代表黑色(black)。

lab色彩模式中的数值描述正常视力的人能够看到的所有颜色。因为lab描述的是颜色的显示方式,而不是设备(如显示器、桌面打印机或数码相机)生成颜色所需的特定色料的数量,所以lab被视为与设备无关的颜色模型。l表示明度(luminosity),a表示从洋红色至绿色的范围,b表示从黄色至蓝色的范围。l的值域由0到100,l=50时,就相当于50%的黑;a和b的值域都是由+127至-128,其中+127a就是红色,渐渐过渡到-128a的时候就变成绿色;同样原理,+127b是黄色,-128b是蓝色。

当获取原始图像数据后,确定该原始图像数据使用的色彩模型。

在一可行的实现方式中,图像处理装置获取图像数据,作为原始图像数据。

s102、确定所述原始图像数据中每个像素点的纹理坐标。

当确定该原始图像数据使用的色彩模型后,将原始图像数据统一使用lab色彩模型进行表示。

一般的,原始图像数据采用rgb色彩模式表示。为了后续处理的一致,将rgb转化为lab。rgb不能直接转换为lab,需要借助xyz颜色空间,把rgb转换到xyz颜色空间,之后再把xyz颜色空间转换到lab。rgb与xyz颜色空间有如下关系:

其中x=0.412453×r+0.412453×g+0.412453×b各系数相加之和为0.950456,非常接近于1,我们知道r/g/b的取值范围为[0,255],如果系数和等于1,则x的取值范围也必然在[0,255]之间,因此我们可以考虑等比修改各系数,使其之和等于1,这样就做到了xyz和rgb在同等范围的映射。

基于上述公式(1)与公式(2)就可以实现rgb与lab之间的转化。后续提到的lab转化为rgb也采用同样的方式。

纹理实际上是一个二维数组,它的元素是一些颜色值。单个颜色值被称为纹理元素或纹理像素(也就是像素点的另一种称呼)。每个纹理元素在纹理中都有一个唯一的地址。这个地址由一个行和列组成,分别用u,v表示。纹理中的每一个纹理像素可以通过它的坐标来声明。对于所有纹理的所有纹理像素,direct3d等软件要求一个统一的地址范围。这个范围可以使0.0~1.0,包含0.0和1.0,用u,v标识。纹理坐标位于纹理空间中,也就是说,它和纹理的(0,0)位置相对应。

对于每个像素点而言,关联有亮度值和纹理坐标。

在一可行的实现方式中,将使用lab色彩模型进行表示的原始图像数据加载到开放图形库(opengraphicslibrary,opengl)中,确定原始图形数据中每个像素点的亮度值和纹理坐标信息。

s103、从所述像素点中确定第一目标点以及至少两个第二目标点。

在原始图像数据中确定出第一目标点,第一目标点是当前需要调整亮度的像素点。第一目标点的确定是通过顺序遍历的方式确定的,一般按照从上往下、从左到右或者反方向进行遍历。

第二目标点是与第一目标点关联的像素点,关联是指第二目标点与所述第一目标点在所述纹理坐标相邻。当第二目标点的数量为奇数个时,可以预先设定往某一方向多取一个像素点。当第二目标点的数量为偶数个时,可以以第一目标点为中心,向对称的两边确定第二目标点。

图1b为本发明实施例一提供的一种可能的第二目标点的示意图。参考图1b,当第一目标点10确定后,若确定第二目标点的数量为4个时。以第一目标点10为圆心,两个像素点为半径确定圆形区域11,圆形区域11中的像素点均可认为是与第一目标点关联的像素点,即第二目标点。

s104、根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据。

亮度值是lab中l的值,每个第二目标点对应有一个亮度值,根据第二目标点的亮度值对第一目标点的亮度值进行调整,以获得目标图像数据。

由于只对lab中的l进行调整,因此a、b的数值不发生变化。根据原始图像数据对应的色彩模型的表达形式,将lab色彩模型转化为该原始图像数据使用的色彩模型的表现形式。

s105、根据所述纹理坐标显示所述目标图像数据。

通过opengl,将目标图像数据渲染至显示设备,以根据纹理坐标显示目标图像数据。

opengl(opengraphicslibrary,开放图形库)是用于渲染2d、3d矢量图形的跨语言、跨平台的应用程序编程接口(api)。这个接口由近350个不同的函数调用组成,用来绘制从简单的图形比特到复杂的三维景象。而另一种程序接口系统是仅用于microsoftwindows上的direct3d。opengl常用于cad、虚拟现实、科学可视化程序和电子游戏开发。

使用opengl从获取原始图像数据到根据纹理坐标显示所述目标图像数据的实现方式如下:

一、顶点变换:

在这里,一个顶点的属性,如在空间的位置,以及它的颜色,法线,纹理坐标,其中包括一组。这个阶段的输入的各个顶点的属性。由固定的功能所执行的操作,主要完成一下工作:顶点位置变换;计算顶点观照;纹理坐标变换。

二、图元装配:

这个阶段的输入的变换后的顶点,以及连通性信息。这后者的一块数据告诉顶点如何连接,以形成一种原始的绘制数据,这个阶段还负责对视锥裁剪操作,背面剔除。光栅扫描确定的片段,和原始的像素位置。

在此上下文中的片段是一块的数据,将用于更新的像素在帧缓冲区中,在特定的位置。片段包含不仅是颜色,也法线和纹理坐标,其中包括可能的属性,被用来计算新像素的颜色。上面的顶点变换阶段,计算出的值与顶点连接信息相结合,允许当前阶段来计算相应的属性的片段。比如,每个顶点的变换位置。当考虑到顶点,使一个原语,是可以计算的原始片段的位置。另一个例子是,使用的颜色。如果一个三角形,然后用不同的颜色有其顶点的颜色的三角形内的片段的相对的顶点的距离加权的三角形的顶点的颜色插值的方式获得。

三、纹理映射,着色:

插值片段信息是这一阶段的输入。彩色已经在前一阶段的计算是通过内插法,在这里,它可以结合例如一个纹理像素(纹理元素)。

纹理坐标也已经在前一阶段内插。雾也适用于在这个阶段。每个片段的本阶段的共同的最终结果是一个颜色值和深度的片段。

四、最后阶段的管道上的片段,进行了一系列的测试,如:裁减测试;alpha(透明度)测试;模板测试;深度测试。

在本发明实施例中,获取原始图像数据;确定原始图像数据中每个像素点的纹理坐标;从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据。通过确定第一目标点,根据第一目标点周围的第二目标点的亮度来对第一目标点的亮度进行调节,使得第一目标点与第二目标点的亮度差异变小,以实现亮度的平衡过度。使用纹理坐标简化了运算的难度,提高了运算速度。

使用中央处理器进行图像处理采用直方图均衡处理运算方式,以原始图像数据中像素总数为m为例,使用中央处理器进行图像处理的运算复杂度为m×m。本发明实施例通过在图形处理器中通过纹理坐标对原始图像数据的亮度进行处理,降低了复杂度,降低了对中央处理器的占用,提高了设备储存空间的利用效率。

实施例二

图2a为本发明实施例二提供的一种图像处理方法的流程图。本实施例是在实施例一的基础上进行了细化,详细描述了“从所述像素点中确定第一目标点以及至少两个第二目标点”和“根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据”的具体过程。参考图2a,该方法具体包括:

s201、获取原始图像数据。

s202、确定所述原始图像数据中每个像素点的纹理坐标。

s203、沿第一方向依次将所述像素点设置为第一目标点。

通常的约定是使用u和v作为纹理空间中的轴线,u对应于2d坐标系的x轴,v对应于y轴。在opengl中对uv轴上的值的处理方式为:在u轴上从左往右递增,v轴上从下往上递增(原点在左下角)。

一般的,可以将沿x轴方向确定为第一方向、可以将沿y轴方向确定为第一方向,也可以是x轴y轴的角平分线方向确定为第一方向。

在一可行的实现方式中,以沿x轴方向为第一方向。图2b为本发明实施例二提供的一种对像素点处理的示意图。则可以确定像素点(1,1)为第一目标点,当对像素点(1,1)的亮度值进行调节后,将像素点(1,2)确定为第一目标点,当第一行像素点的亮度值都进行调节后,开始在第二行确定第一目标点,在第二行确定第一目标点时,可以按照从左往右的方式将像素点(2,1)确定为第一目标点,也可以按照蛇形方式将素点(2,7)确定为第一目标点。

s204、以所述第一目标点在所述第一方向上的坐标为中心,在所述原始图像数据中确定第一目标范围。

参考图2b,以像素点(4,4)为第一目标点,以沿x轴方向为第一方向进行描述。

第一目标范围即圈定第二目标点的范围区域,一般的,可以将第一目标范围确定为2个像素点,即以第一目标点在第一方向上的坐标为中心,以2个像素点为半径确定第一目标范围21。

s205、若所述像素点在所述第一方向上的坐标位于所述第一目标范围内,则将所述像素点设置为第二目标点。

确定作为第一目标点的像素点(4,4)在第一方向上的位于第一目标范围21的像素点,即将像素点(4,2)、像素点(4,3)、像素点(4,5)和像素点(4,6)作为第二目标点。

s206、确定所述第二目标点相对于所述第一目标点的第一权重。

第一权重用于体现第二目标点的亮度对第一目标点的亮度的影响的大小。可以对第二目标点设置相同的权重,也可以对第二目标点设置相同的权重。可以将第一目标点的亮度加入权重的设定中,也可以不加入权重的设定中。本实施例对此不作限定。

在一可行的实现方式中,可以根据第二目标点距离第一目标点的距离来确定第二目标点的权重。第二目标点距离第一目标点的距离越近,说明与第一目标点的关系越紧密,应该对第一目标点造成的影响越大。确定第二目标点与第一目标点之间的距离;确定第二目标点的第一权重,所述第一权重与距离正相关。为了便于计算,将所有权重的和设定为1。参考图2b,可以将作为第一目标点的像素点(4,4)的第一权重设置为0.4,将第二目标点中像素点(4,2)的第一权重设置为0.1、像素点(4,3)的第一权重设置为0.2、像素点(4,5)的第一权重设置为0.2和像素点(4,6)的第一权重设置为0.1。

s207、对所述第二目标点在所述第一方向上的亮度值配置第一权重,获得第一候选亮度值。

按照第二目标点的亮度值与第二目标点的第一权重,确定每个第二目标点的第一候选亮度值。确定像素点(4,4)的亮度值为60,像素点(4,2)的亮度值为58、像素点(4,3)的亮度值为57、像素点(4,5)的亮度值为61和像素点(4,6)的亮度值为62。

则像素点(4,4)的第一候选亮度值为24,像素点(4,2)的第一候选亮度值为5.8、像素点(4,3)的第一候选亮度值为11.4、像素点(4,5)的第一候选亮度值为12.2和像素点(4,6)的第一候选亮度值为6.2。

s208、计算所述第一候选亮度值之间的平均值,作为所述第一目标点在所述第一方向上的亮度值。

当第一权重没有做归一化处理时,需要按照像素点的数量,对第一候选亮度值的和做平均。当第一权重做归一化处理后,可以直接将第一候选亮度值的和作为第一目标点在第一方向上的亮度值。

即将像素点(4,4)的第一候选亮度值为24,像素点(4,2)的第一候选亮度值为5.8、像素点(4,3)的第一候选亮度值为11.4、像素点(4,5)的第一候选亮度值为12.2和像素点(4,6)的第一候选亮度值为6.2的和值:59.6作为第一目标点在第一方向上的亮度值。

s209、根据所述纹理坐标显示所述目标图像数据。

图2c为本发明实施例二提供的一种图像处理方法的流程图。与图2a相比,图2c提供了沿第二方向调整第一目标点亮度值的方式。参考图2c,该方法具体包括:

s211、沿第二方向依次将所述像素点设置为第一目标点。

s212、以所述第一目标点在所述第二方向上的坐标为中心,在所述原始图像数据中确定第二目标范围。

s213、若所述像素点在所述第二方向上的坐标位于所述第二目标范围内,则将所述像素点设置为第二目标点。

s214、确定所述第二目标点相对于所述第一目标点的第二权重。

s215、对所述第二目标点在所述第一向上的亮度值配置第二权重,获得第二候选亮度值。

s216、计算所述第二候选亮度值之间的平均值,作为所述第一目标点在所述第二方向上的亮度值。

s217、根据所述纹理坐标显示所述目标图像数据。

步骤s211-s217描述如何沿第二方向对亮度值进行调节。一般的,将沿x轴方向确定为第一方向时,可以将沿y轴方向确定为第二方向;将沿y轴方向确定为第一方向时,可以将沿x轴方向确定为第二方向,也可以是x轴y轴的角平分线方向确定为第一方向。

以沿y轴方向为第二方向时。参考图2b,则可以确定像素点(1,1)为第一目标点,当对像素点(1,1)的亮度值进行调节后,将像素点(2,1)确定为第一目标点,当第一列像素点的亮度值都进行调节后,开始在第二列确定第一目标点,在第二行确定第一目标点时,可以按照从上往下的方式将像素点(1,2)确定为第一目标点,也可以按照蛇形方式将素点(7,2)确定为第一目标点。

以像素点(4,4)为第一目标点,以沿x轴方向为第一方向、将沿y轴方向确定为第二方向进行描述。

第一目标范围即圈定第二目标点的范围区域,一般的,可以将第二目标范围与第一目标范围一样,确定为2个像素点,即以第一目标点在第二方向上的坐标为中心,以2个像素点为半径确定第二目标范围,由于都是以2个像素点为半径,因此第二目标范围与第一目标范围21重合。

确定作为第一目标点的像素点(4,4)在第一方向上的位于第二目标范围的像素点,即将像素点(2,4)、像素点(3,4)、像素点(5,4)和像素点(6,4)作为第二目标点。

可以将作为第一目标点的像素点(4,4)的第二权重设置为0.4,将第二目标点中像素点(2,4)的第二权重设置为0.1、像素点(3,4)的第二权重设置为0.2、像素点(5,4)的第二权重设置为0.2和像素点(6,4)的第二权重设置为0.1。

按照第二目标点的亮度值与第二目标点的第二权重,确定每个第二目标点的第二候选亮度值。确定像素点(4,4)的亮度值为59.6,像素点(4,2)的亮度值为58、像素点(4,3)的亮度值为57、像素点(4,5)的亮度值为61和像素点(4,6)的亮度值为62。

则像素点(4,4)的第二候选亮度值为23.84,像素点(4,2)的第二候选亮度值为5.8、像素点(4,3)的第二候选亮度值为11.4、像素点(4,5)的第二候选亮度值为12.2和像素点(4,6)的第二候选亮度值为6.2。

将第二候选亮度值的和59.44作为第一目标点在第二方向上的亮度值。

在上述实施例的基础上,图2d为本发明实施例二提供的一种图像处理方法的结构图。图2d描述了图形处理器在本实施例中的工作过程。

获取原始图像数据,通常的原始图像数据采用rgb色彩模型,将原始图像数据放入图形处理器创建的第一纹理中,并在此纹理的片着色器中进行rgb转lab的操作,最后将计算得到的lab三个分量替换rgb三分量储存在第一纹理中,针对第一纹理中的l分量(亮度值)进行第一方向(x轴方向)的加权平均处理,并储存在第一纹理中。创建第二纹理储存第一纹理处理完后的数据,针对第二纹理中的片着色器中对l(亮度值)分量进行第一方向(y轴方向)的加权平均处理,并储存在第二纹理中。进行lab转rgb的操作,最后将计算得到的rgb三个分量替换lab三分量储存在第二纹理中。通过opengl将第二纹理渲染到显示设备上。

由于在第一方向上进行亮度调节时,只依赖于第一方向上的像素点,因此在图形处理器允许的情况下,可以同时对图2b中像素点(1,1)、像素点(2,1)、像素点(3,1)、像素点(4,1)、像素点(5,1)、像素点(6,1)和像素点(7,1)所在的行,采用从左往右的方式,同时进行第一方向上的像素点的亮度调节。当所有像素点在第一方向上亮度值的调节完毕后,同时对像素点(1,1)、像素点(1,2)、像素点(1,3)、像素点(1,4)、像素点(1,5)、像素点(1,6)和像素点(1,7)所在的列,采用从上往下的方式,同时进行第二方向上的像素点的亮度调节。以最大限度的节约亮度值调节的时间。

在本发明实施例中,请求直播服务器创建直播间;采集原始直播视频数据,原始直播视频数据包括原始图像数据,原始图像数据中每个像素点具有纹理坐标;接收美颜操作;响应于美颜操作,从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据;根据目标图像数据生成目标直播视频数据,并发送至直播服务器,以在直播间中播放。在实现亮度的平衡过度的,提高运算速度的基础上,使得电子设备(尤其是使用电池的移动设备)用于支持该方式的电量减少,减少设备发热,提高电子设备的续航能力,进而延长直播的时间。

实施例三

图3为本发明实施例三提供的一种直播方法的流程图。本实施例适用于对主播客户端上传到直播间的视频数据进行亮度值调节的场景。该方法可以由一种直播装置来执行,尤其是主播客户端所使用的手机、计算机等。该装置可以由软件和/或硬件的方式实现。参考图3,该方法具体包括:

s301、请求直播服务器创建直播间。

主播客户端向直播服务器请求创建直播间,直播服务器响应主播客户端的请求为该主播用户创建一直播间。

s302、采集原始直播视频数据。

原始直播视频数据包括原始图像数据,所述原始图像数据中每个像素点具有纹理坐标。应当理解的是,由于本实施例适用于主播进行直播的场景,因此在采集原始直播视频数据的同时,应当采集音频数据。

在一可行的实现方式中,当主播用户启动直播间的直播功能时,直播装置通过摄像设备采集主播用户的直播画面,以采集原始直播视频数据,并从中获得原始图像数据。对原始图像数据进行处理以获得原始图像数据中每个像素点的纹理坐标。

s303、接收美颜操作。

主播用户点击美颜操作。该美颜操作包括但不限于进行亮度值调节的操作,还可以包括瘦脸、磨皮等常规的美颜操作。

美颜操作可以通过接收主播用户点击某一功能按键产生、可通过识别主播用户的语言产生、可通过识别主播用户的动作产生,也可以是根据主播用户的默认选项产生。

s304、响应于所述美颜操作,从所述像素点中确定第一目标点以及至少两个第二目标点。

响应该美颜操作,从主播用户上传的原始直播视频数据中截取原始图像数据,在该原始图像数据中确定第一目标点以及至少两个第二目标点。

如响应于瘦脸的美颜操作,对于原始直播视频数据的人脸图像进行面部调节,以使得人脸图像的下颚拉伸、颧骨内收或者减低颧骨位置,以到达瘦脸的效果。又如响应于磨皮的美颜操作,通过一些具有保留边缘的能力的滤波器,来将图像磨平,达到皮肤平滑的目的。

在此基础上,纹理坐标包括第一方向;从像素点中确定第一目标点以及至少两个第二目标点,包括:沿第一方向依次将像素点设置为第一目标点;以第一目标点在第一方向上的坐标为中心,在原始图像数据中确定第一目标范围;若像素点在第一方向上的坐标位于第一目标范围内,则将像素点设置为第二目标点。

在此基础上,纹理坐标包括第二方向;从像素点中确定第一目标点以及至少两个第二目标点,包括:沿第二方向依次将像素点设置为第一目标点;以第一目标点在第二方向上的坐标为中心,在原始图像数据中确定第二目标范围;若像素点在第二方向上的坐标位于第二目标范围内,则将像素点设置为第二目标点。

s305、根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据。

在此基础上,确定第二目标点相对于第一目标点的第一权重;对第二目标点在第一方向上的亮度值配置第一权重,获得第一候选亮度值;计算第一候选亮度值之间的平均值,作为第一目标点在第一方向上的亮度值。

在此基础上,确定第二目标点相对于第一目标点的第二权重;对第二目标点在第二方向上的亮度值配置第二权重,获得第二候选亮度值;计算第二候选亮度值之间的平均值,作为第一目标点在第二方向上的亮度值。

在此基础上,确定第二目标点与第一目标点之间的距离;确定第二目标点的第一权重,第一权重与距离正相关。

s306、根据所述纹理坐标显示所述目标图像数据。

步骤s304-s306可以参考实施例一和实施例二中相关步骤的说明,在此不再赘述。

s307、根据所述目标图像数据生成目标直播视频数据,并发送至所述直播服务器,以在所述直播间中播放。

将目标图像数据拼接渲染成为目标直播视频数据,将该直播视频数据发送至直播服务器,以在主播客户端创建的直播间中进行播放。

其中,直播间中登入有观众用户,直播服务器将该直播视频数据向登入该直播间的观众用户进行分发。

其中,直播视频数据包括用于本地回显的数据流和用于传递到观众用户客户端的数据流。同时,将音视频打包为视频文件,采用流的方式上传给直播服务器,直播服务器可提供给观众。

本发明实施例通过请求直播服务器创建直播间;采集原始直播视频数据,原始直播视频数据包括原始图像数据,原始图像数据中每个像素点具有纹理坐标;接收美颜操作;响应于美颜操作,从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据;根据目标图像数据生成目标直播视频数据,并发送至直播服务器,以在直播间中播放。实现了背景中的亮度的平衡过渡和主播用户的脸部高光区域和脸部其他区域的平衡过渡。

实施例四

图4为本发明实施例四提供的一种图像处理装置,其特征在于,包括:数据获取模块41、坐标确定模块42、目标点确定模块43、亮度调节模块44和数据显示模块45。其中:

数据获取模块41,用于获取原始图像数据;

坐标确定模块42,用于确定所述原始图像数据中每个像素点的纹理坐标;

目标点确定模块43,用于从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

亮度调节模块44,用于根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

数据显示模块45,用于根据所述纹理坐标显示所述目标图像数据。

本发明实施例体现了如下方案:获取原始图像数据;确定原始图像数据中每个像素点的纹理坐标;从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据。通过确定第一目标点,根据第一目标点周围的第二目标点的亮度来对第一目标点的亮度进行调节,实现了背景中的亮度的平衡过渡和主播用户的脸部高光区域和脸部其他区域的平衡过渡。

在上述实施例的基础上,目标点确定模块43还用于:

沿第一方向依次将所述像素点设置为第一目标点;

以所述第一目标点在所述第一方向上的坐标为中心,在所述原始图像数据中确定第一目标范围;

若所述像素点在所述第一方向上的坐标位于所述第一目标范围内,则将所述像素点设置为第二目标点。

在上述实施例的基础上,亮度调节模块44还用于:

确定所述第二目标点相对于所述第一目标点的第一权重;

对所述第二目标点在所述第一方向上的亮度值配置第一权重,获得第一候选亮度值;

计算所述第一候选亮度值之间的平均值,作为所述第一目标点在所述第一方向上的亮度值。

在上述实施例的基础上,所述确定所述第二目标点相对于所述第一目标点的第一权重,包括:

确定所述第二目标点与所述第一目标点之间的距离;

确定所述第二目标点的第一权重,所述第一权重与所述距离正相关。

在上述实施例的基础上,目标点确定模块43还用于:

沿第二方向依次将所述像素点设置为第一目标点;

以所述第一目标点在所述第二方向上的坐标为中心,在所述原始图像数据中确定第二目标范围;

若所述像素点在所述第二方向上的坐标位于所述第二目标范围内,则将所述像素点设置为第二目标点。

在上述实施例的基础上,亮度调节模块44还用于:

确定所述第二目标点相对于所述第一目标点的第二权重;

对所述第二目标点在所述第二方向上的亮度值配置第二权重,获得第二候选亮度值;

计算所述第二候选亮度值之间的平均值,作为所述第一目标点在所述第二方向上的亮度值。

本实施例提供的一种图像处理装置可用于执行实施例一、实施例二提供的一种图像处理方法,具有相应的功能和有益效果。

实施例五

图5为本发明实施例五提供的一种直播装置,包括:直播间创建模块51、数据采集模块52、操作接收模块53、操作响应模块54、数据获得模块55、图像显示模块56和视频播放模块57。其中:

直播间创建模块51,用于请求直播服务器创建直播间;

数据采集模块52,用于采集原始直播视频数据,所述原始直播视频数据包括原始图像数据,所述原始图像数据中每个像素点具有纹理坐标;

操作接收模块53,用于接收美颜操作;

操作响应模块54,用于响应于所述美颜操作,从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

数据获得模块55,用于根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

图像显示模块56,用于根据所述纹理坐标显示所述目标图像数据;

视频播放模块57,用于根据所述目标图像数据生成目标直播视频数据,并发送至所述直播服务器,以在所述直播间中播放。

本发明实施例通过请求直播服务器创建直播间;采集原始直播视频数据,原始直播视频数据包括原始图像数据,原始图像数据中每个像素点具有纹理坐标;接收美颜操作;响应于美颜操作,从像素点中确定第一目标点以及至少两个第二目标点,第二目标点与第一目标点在纹理坐标相邻;根据第二目标点在纹理坐标上的亮度值对第一目标点在纹理坐标上的亮度值进行调整,获得目标图像数据;根据纹理坐标显示目标图像数据;根据目标图像数据生成目标直播视频数据,并发送至直播服务器,以在直播间中播放。实现了背景中的亮度的平衡过渡和主播用户的脸部高光区域和脸部其他区域的平衡过渡。

本实施例提供的一种直播装置可用于执行实施例三提供的一种直播方法,具有相应的功能和有益效果。

实施例六

图6为本发明实施例六提供的一种电子设备的结构示意图。如图6所示,该电子设备包括处理器60、存储器61、通信模块62、输入装置63和输出装置64;电子设备中处理器60的数量可以是一个或多个,图6中以一个处理器60为例;电子设备中的处理器60、存储器61、通信模块62、输入装置63和输出装置64可以通过总线或其他方式连接,图6中以通过总线连接为例。

存储器61作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本实施例中的一种图像处理方法对应的模块(例如,一种图像处理装置中的:数据获取模块41、坐标确定模块42、目标点确定模块43、亮度调节模块44和数据显示模块45)。或者,如本实施例中的一种直播方法对应的模块(例如,一种直播装置中的:直播间创建模块51、数据采集模块52、操作接收模块53、操作响应模块54、数据获得模块55、图像显示模块56和视频播放模块57)。

处理器60包括中央处理器和图形处理器,处理器60通过运行存储在存储器61中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的一种图像处理方法,或者,一种图像处理方法。

存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器61可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器61可进一步包括相对于处理器60远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

通信模块62,用于与显示屏建立连接,并实现与显示屏的数据交互。输入装置63可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。

本实施例提供的一种电子设备,可执行本发明实施例一、实施例二提供的一种图像处理方法,或者,实施例三提供的一种图像处理方法,具体相应的功能和有益效果。

实施例七

本发明实施例七还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种图像处理方法,该方法包括

获取原始图像数据;

确定所述原始图像数据中每个像素点的纹理坐标;

从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

根据所述纹理坐标显示所述目标图像数据。

或者,一种图像处理方法,该方法包括:

请求直播服务器创建直播间;

采集原始直播视频数据,所述原始直播视频数据包括原始图像数据,所述原始图像数据中每个像素点具有纹理坐标;

接收美颜操作;

响应于所述美颜操作,从所述像素点中确定第一目标点以及至少两个第二目标点,所述第二目标点与所述第一目标点在所述纹理坐标相邻;

根据所述第二目标点在所述纹理坐标上的亮度值对所述第一目标点在所述纹理坐标上的亮度值进行调整,获得目标图像数据;

根据所述纹理坐标显示所述目标图像数据;

根据所述目标图像数据生成目标直播视频数据,并发送至所述直播服务器,以在所述直播间中播放。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明实施例一、实施例二提供的一种图像处理方法,或者,实施例三提供的一种图像处理方法中的相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络电子设备等)执行本发明各个实施例所述的方法。

值得注意的是,上述一种图像处理装置,或者,一种直播装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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