虚拟会议方法、系统、装置、计算机装置及存储介质
技术领域
本发明涉及电子技术领域,具体涉及一种虚拟会议方法、系统、装置、计算机装置及存储介质。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
传统的视频会议是通过双方进行视频通话来进行会议。传统的视频会议注重的是视频图像以及语言的交流,会议者没有坐在一起进行会议的真实感受,因此体验度并不高。
发明内容
鉴于此,有必要提供一种虚拟会议方法、系统、装置、计算机装置及计算机可读存储介质,有利于提升会议的交互体验。
本发明的第一方面提供一种虚拟会议方法,所述方法包括:
接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户;
对所述图像进行抠像处理得到包括所述目标用户的人物图像;
将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;
将所述声音合成到所述虚拟融合图像中得到虚拟视频。
进一步的,所述第一交互端的数量为多个;所述将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;将所述声音合成到所述虚拟融合图像中得到虚拟视频,包括:
将每一所述第一交互端的人物图像融合到一预设虚拟场景中,得到包括所有所述第一交互端的人物图像的虚拟融合图像;其中,每一所述第一交互端的人物图像在所述虚拟融合图像中的相应位置;
将每一所述第一交互端发送的声音合成到所述虚拟融合图像中得到虚拟视频。
进一步的,在所述对所述图像进行抠像处理之后,所述方法还包括:
对所述人物图像进行边缘处理;
将边缘处理后的所述人物图像进行渲染。
进一步的,在所述接收第一交互端发送的实时获取的图像以及声音之前,所述方法还包括:
所述第一交互端将所述图像的RGBA颜色数据转化为YUV422平面格式的数据;
设定所述YUV422平面格式的数据中的各分量的值,使得所述YUV422平面格式的数据中存放的是YUVA420平面格式的数据;
将alpha通道数据存储在所述YUV422平面格式的数据中多余的位置,得到编码的图像;
所述第一交互端发送所述编码的图像以及所述声音。
进一步的,所述对所述图像进行抠像处理,包括:
利用抠像参数对彩色图像进行抠像算法运算获取初始alpha通道图像,所述初始alpha通道图像包括初始背景图像与初始前景图像;
根据所述初始alpha通道图像与所述彩色图像合成三通道RGB图像并根据所述彩色图像计算六通道数据;
根据模糊半径计算彩色图像、一通道图像、六通道数据与三通道RGB图像的周围像素平均值;
根据所述周围像素平均值计算三通道RGB图像的协方差与六通道数据的方差;
根据所述三通道RGB图像的协方差与所述六通道数据的方差计算所述三通道RGB图像与一通道图像的相关系数;
根据所述模糊半径计算所述相关系数的模糊值;
根据所述相关系数的模糊值获取最终Alpha通道图像,所述最终Alpha通道图像包括待合成的背景图像与经处理的前景图像。
进一步的,所述将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像,包括:
通过深度学习的视觉算法计算人物骨骼的位置以及大小,以对人物进行识别和追踪;
计算人物相对的视角偏移值以及人物所占虚拟场景的比例偏移值;
根据所述视角偏移值以及所述比例偏移值,控制所述人物图像进行相应的偏移和/或缩放处理后与所述预设虚拟场景进行融合。
本发明第二方面提供一种虚拟会议系统,所述系统包括第一交互端、第二交互端、和/或服务器:
所述第二交互端用于接收所述第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户;
所述第二交互端和/或所述服务器用于对所述图像进行抠像处理得到包括所述目标用户的人物图像;
所述第二交互端和/或所述服务器用于将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;
所述第二交互端和/或所述服务器用于将所述声音合成到所述虚拟融合图像中得到虚拟视频;
本发明第三方面提供一种虚拟会议装置,所述装置包括:
接收模块,用于接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户;
抠像处理模块,用于对所述图像进行抠像处理得到包括所述目标用户的人物图像;
虚拟融合模块,用于将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;
合成模块,用于将所述声音合成到所述虚拟融合图像中得到虚拟视频。
本发明第三方面提供一种计算机装置,所述计算机装置包括处理器,所述处理器用于执行存储装置中存储的计算机程序时实现所述的虚拟会议方法的步骤。
本发明第四方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的虚拟会议方法的步骤。
本发明提供的虚拟会议方法、系统、装置、计算机装置及计算机可读存储介质,接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户;对所述图像进行抠像处理得到包括所述目标用户的人物图像;将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;将所述声音合成到所述虚拟融合图像中得到虚拟视频。本发明的目标用户能够在虚拟场景中看到参与会议的其他人,提高目标用户的视觉感受,有利于提升会议的交互体验。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施方式提供的虚拟会议系统的结构图;
图2是本发明第二实施方式提供的虚拟会议系统的结构图;
图3是本发明第一实施方式提供的虚拟会议方法的流程图;
图4是图3中步骤S102的具体流程图;
图5是图3中步骤S103的具体流程图;
图6是本发明第二实施方式提供的虚拟会议方法的流程图;
图7是本发明的终端装置的示例性的结构图;
图8是本发明的虚拟会议装置的示例性的功能模块图。
主要元件符号说明
终端装置 |
1 |
处理器 |
10 |
存储装置 |
20 |
虚拟会议装置 |
100 |
接收模块 |
11 |
抠像处理模块 |
12 |
虚拟融合模块 |
13 |
合成模块 |
14 |
边缘处理模块 |
15 |
渲染模块 |
16 |
转化模块 |
17 |
设定模块 |
18 |
存储模块 |
19 |
发送模块 |
20 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
本发明第一实施方式提供的虚拟会议方法可应用于虚拟会议系统中。在一可能的实施方式中,如图1所示,所述虚拟会议系统可以包括多个交互端,每个交互端可以为会议的一方,每个交互端可以在不同的地理位置,例如,有十个会议方分布在不同的地方,则本虚拟会议系统包括十个交互端。
每个交互端为一个单独的系统,交互端系统可以包括至少一图像采集装置(如RGB高清镜头、IR红外镜头以及TOF深度镜头等)、至少一声音采集装置、图像处理装置(如PC电脑、笔记本电脑等具有图像处理功能的设备)、虚拟现实显示设备等,所述虚拟显示显示设备可以是能够显示虚拟视频的电脑、移动终端、虚拟头显设备(如VR一体机、AR一体机等)。每个交互端之间可以通过网络发送和接收所有任何其他交互端的数据信息。
在另一个可能的实施方式中,如图2所示,所述虚拟会议系统可以包括多个交互端以及服务器,所述服务器可以是云端服务器,所述服务器可以用于处理图像数据,例如抠像、虚拟融合等。每个交互端可以通过网络发送和接收所述服务器的数据信息。
以一个交互端作为接收方(或者虚拟呈现方)、其他的交互端作为发送方为例进行说明,该发送方为第一交互端,该接收方(或者虚拟呈现方)为第二交互端,应当理解的是,所有交互端都可以作为发送方、接收方(或者虚拟呈现方)。
如图3所示,本实施方式的虚拟会议方法可包括以下步骤:
S101:接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户。
第一交互端的图像采集装置能够采集包括该第一交互端的当前目标用户的图像信息,所述图像可以是彩色图像。通过第一交互端的连续获取的图像信息可以形成图像流,第一交互端可以将包括该第一交互端的目标用户的图像发送出去,例如发送给第二交互端或者发送给服务器进行后续的处理。
在虚拟会议系统中,所述第一交互端用于发送实时获取的图像以及声音,所述第二交互端和/或服务器接收第一交互端发送的实时获取的图像以及声音,具体地,可以通过所述第一交互端的图像处理装置发送实时获取的图像以及声音,可以通过所述第二交互端的图像处理装置来接收第一交互端发送的实时获取的图像以及声音。
第一交互端的目标用户可以带上虚拟头显设备,处在单色背景环境中(如为环境铺上单色布幕),通过图像采集装置采集带有单色背景的图像。单色背景图像更加方便于后续的抠图处理。
第一交互端的声音采集装置能够采集包括该第一交互端的当前目标用户声音的声音信息,通过第一交互端的连续获取的声音信息可以形成音频流,第一交互端可以将该音频流与图像流一起发送出去。
第一交互端可以有多个。当包括有多个第一交互端时,每一第一交互端的图像采集装置都能够采集包括该第一交互端的当前目标用户的图像信息,每一交互端的声音采集装置能够采集包括该第一交互端的当前目标用户声音的声音信息,所有的第一交互端可以将其图像信息和声音信息发送出去,第二交互端可以接收所述第一交互端发送的图像信息和声音信息。
S102:对所述图像进行抠像处理得到包括所述目标用户的人物图像。
本实施方式中,可以通过第二交互端进行抠图处理(如通过第二交互端的图像处理装置),也可以通过服务器进行抠图处理,抠图处理的目的是将第一交互端发送的图像分离出人物图像。
在虚拟会议系统中,所述第二交互端和/或所述服务器用于对接收到的所述图像进行抠像处理得到包括所述目标用户的人物图像,具体地,可以通过所述第二交互端的图像处理装置接收实时获取的图像以及声音。
抠图处理可以采用基于色键、亮度键、差分键等技术进行抠图,或者可以采用生物识别技术进行抠图,通过抠图处理能够将前景图像以及背景图像进行分离,前景图像包括人物图像,该人物图像在后续中可融入到预设虚拟场景中。
可以理解的是,为了保证人物图像的清晰度、真实度,提高人物图像的优化效果,可以对抠图后得到的人物图像进行后续处理。所述后续处理可以包括对所述人物图像进行边缘处理以及将边缘处理后的所述人物图像进行渲染。
针对边缘存在比较严重马赛克进行边缘软化处理,而针对多余的边缘部分可以进行缩边处理,对边缘软化造成的图像内容缺失的部分进行修补,通过以上处理,能够提高人物的清晰度,能够达到发丝级的效果。将边缘处理后的所述人物图像进行渲染时,可以对人物图像进行引擎美术效果的渲染,例如打光、着色等。
为了提高优化在实时情况下对图像进行抠图,得到更为优质的人物图像,本实施方式中,还可以通过以下步骤来对所述图像进行抠像处理,如图4所示。
S1021:利用抠像参数对彩色图像进行抠像算法运算获取初始alpha通道图像,所述初始alpha通道图像包括初始背景图像与初始前景图像。
所述抠像参数可以包括抠像范围参数、抠像强度参数,利用抠像参数可以控制抠像效果。所述图像包括r、g、b三种颜色通道。可以通过公式P.a=clamp(((((1-clamp((I.g-(I.b+I.r),0,1)))-k)*(tan((45+44*j)/180*3.1459))+k),0,1)来获取初始alpha通道图像,其中,该公式中的k、j表示抠像参数,I.r、I.g、I.b分别表示所述图像的r通道、g通道、b通道图像,P.a表示所述初始alpha通道图像,函数Clamp(int_X,int_Min,int_Max)中,参数X表示要限制的值,Min表示限制范围的下限,Max表示限制范围的上限。
S1022:根据所述初始alpha通道图像与所述彩色图像合成三通道RGB图像并根据所述彩色图像计算六通道数据。
本步骤中,可以通过以下公式1来所述图像的r通道I.r、g通道I.g、b通道I.b的图像与初始alpha通道图像P.a合成形成IP.r、IP.g、IP.b。
其中,IP.r、IP.g、IP.b分别表示三通道RGB图像的r、g、b通道图像。
可以通过以下公式2,利用图像的r通道I.r、g通道I.g、b通道I.b的图像计算出六通道数据。
其中,II.rr、II.gg、II.bb、II.rg、II.rb、II.gb分别表示所述六通道数据中的rr、gg、bb、rg、rb、gb通道的数据。
S1023:根据模糊半径计算彩色图像、一通道图像、六通道数据与三通道RGB图像的周围像素平均值。
所述模糊半径包括某个像素点向外拓展值,即模糊程度。利用公式3计算彩色图像、一通道图像、六通道数据与三通道RGB图像的周围r像素平均值;
其中,Y=fblur(X)=(X[uv-r]+…+X[uv-2]+X[uv-1]+X[uv]+X[uv+1]+X[uv+2]+…+X[uv+r])/(2r+1);uv表示当前计算像素的纹理坐标;I、P、II、IP分别表示彩色图像、一通道图像、六通道数据以及三通道RGB图像,r表示模糊半径。
S1024:根据所述周围像素平均值计算三通道RGB图像的协方差与六通道数据的方差。
根据一通道图像的模糊图像、彩色图像的模糊图像、三通道RGB图像的模糊图像以及六通道数据的模糊数据计算三通道RGB图像的协方差与六通道数据的方差。利用公式4计算所述三通道RGB图像的协方差;
其中,covIP.r、covIP.g、covIP.b分别表示三通道RGB图像的r通道、g通道、b通道的协方差,BlurIP.rr表示六通道数据的rr通道的周围像素平均值,BlurI.r表示彩色图像的r通道的周围像素平均值,BlurP.r表示一通道图像的r通道的周围像素平均值;
利用公式5计算所述六通道数据的方差;
其中,varI.rr、varI.gg、varI.bb、varI.rg、varI.rb、varI.gb分别表示六通道数据的rr通道、gg通道、bb通道、rg通道、rb通道、gb通道的方差,BlurIP.rr、BlurIP.gg、BlurIP.bb、BlurIP.rg、BlurIP.rb、BlurIP.gb分别表示六通道数据rr通道、gg通道、bb通道、rg通道、rb通道、gb通道的周围像素平均值,BlurI.r、BlurI.g、BlurI.b表示彩色图像的r通道、g通道、b通道的周围像素平均值。
S1025:根据所述三通道RGB图像的协方差与所述六通道数据的方差计算所述三通道RGB图像与一通道图像的相关系数。
利用所述六通道数据的方差组合sigma矩阵,并计算sigma矩阵的逆矩阵。所述sigma矩阵如下所示:
varI.rr,varI.rg,varI.rb
sigma=varI.rg,varI.gg,varI.gb
varI.rb,varI.gb,varI.bb
分别利用公式6、公式8计算所述三通道RGB图像与初始alpha通道图像的相关系数;
a=covIP.*invI 公式6
其中,invI表示sigma矩阵的逆矩阵,covIP表示三通道RGB图像的协方差。
利用公式6可分别推导出三通道RGB图像中的r、g、b通道图像的相关系数,如公式7所示:
其中,covIP.r、covIP.g、covIP.b分别表示三通道RGB图像中的r、g、b通道图像的协方差,invI.rr、invI.rg、invI.rb、invI.gg、invI.gb、invI.bb组成sigma矩阵的逆矩阵。
b=BlurP-a.*BlurI 公式8
其中,BlurP表示一通道图像的周围像素平均值,BlurI表示彩色图像的周围像素平均值。
利用公式9可进一步的推导出一通道图像的相关系数,如公式9所示:
b=BlurP-a.r*BlurI.r-a.g*BlurI.g-a.b*BlurI.b 公式9
S1026:根据所述模糊半径计算所述相关系数的模糊值。
本实施方式中,利用公式10计算所述相关系数的模糊值;
Blura=fblur(a,r)
Blurb=fblur(b,r) 公式10
其中,Y=fblur(X)=(X[uv-r]+…+uv-2]+X[uv-1]+X[uv]+X[uv+1]+X[uv+2]+…+X[uv+r])/(2r+1);uv表示当前计算像素的纹理坐标。
S1027:根据所述相关系数的模糊值获取最终Alpha通道图像,所述最终Alpha通道图像包括待合成的背景图像与经处理的前景图像。
本实施方式中,根据输入的三通道RGB图像的相关系数a的模糊值、一通道图像的相关系数b的模糊值以及彩色图像,输出四通道RGBA图像Q,如公式11所示:
Q=Blura.*I+Blurb 公式11
其中,Q.r=I.r;Q.g=I.g;Q.b=I.b。
利用公式12获取最终Alpha通道图像;
Q.a=clamp((Blura.r*I.r+Blura.g*I.g+Blura.b*I.b+Blurb),0,1) 公式12
其中,Blura.r、Blura.g、Blura.b分别表示三通道RGB图像的r通道、g通道、b通道的相关系数的模糊值。
可以理解的是,以上步骤S1021-S1027可以在第二交互端和/或服务器进行。
通过以上步骤,本步骤在普通实时抠像的算法上叠加了像素平均值计算方差结果导向更加精确的alpha通道,使得结果更加精确,能够还原普通抠像算法所造成的像素损失,能够还原细节,让图像更加真实、人物图像的轮廓更加准确,能够将人物轮廓还原出毛发细节。
S103:将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像。
在虚拟会议系统中,所述第二交互端和/或所述服务器可以用于将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像。例如,当步骤S102是在第二交互端进行抠图时,相应地,本步骤可以通过第二交互端将人物图像与预设虚拟场景进行融合;当步骤S102是在服务器进行抠图处理时,相应地,本步骤可以通过服务器将人物图像与预设虚拟场景进行融合,或者,服务器将抠图后得到的人物图像发送至第二交互端将人物图像与预设虚拟场景进行融合,在此不作限制。
在本实施方式中,可以配备多个预设虚拟场景,每个预设虚拟场景的主题可以不一样,在虚拟会议中,预设虚拟场景例如可以是不同风格和形式的会议室场景,通过选择不同的预设虚拟场景与人物图像进行融合,能够得到不同的虚拟现实感受。
当仅有一个第一交互端时,仅将该第一交互端的人物图像与虚拟场景进行融合,当有多个第一交互端时,将所有第一交互端的人物图像与虚拟场景进行融合,每一第一交互端的人物图像在所述虚拟融合图像中的相应位置。
本步骤中,可以通过以下方式来将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像,如图5所示。
S1031:通过深度学习的视觉算法计算人物骨骼的位置以及大小,以对人物进行识别和追踪。
本步骤可以基于图片骨骼卷积神经网络算法进行深度学习和训练,通过学习和训练好后的神经网络计算骨骼信息,例如计算人体头部、手部、脚部、身体部分等各处的骨骼信息,通过计算得到这些信息,锁定感兴趣的人物,来对人物进行识别以及追踪。
通过对采集到的人物实时动态图像进行识别和追踪,可以预测出后续的人物动作趋势以及可能发生的交互行为,能够得到该人物实时动态图像之后0.5毫秒-5毫秒之后的动态预测图像;当网络延迟时,虚拟现实设备低帧运行,本实施方式还可以基于异步时间线(ATW,Asynchronous Timewarp)技术生成中间帧,通过帧间插值的方法,能够在网络延迟的情况下,保证虚拟融合的质量,提高虚实效果以及目标用户的沉浸感,能够有效降低网络延迟导致的实时交互性问题,避免接收端所看到的人物画面滞后的问题。
S1032:计算人物相对的视角偏移值以及人物所占虚拟场景的比例偏移值。
当第一交互端的目标用户相对于第一交互端的图像采集装置发生偏移时(包括左移、右移、前进、后退、转动角度等),通过深度学习的视觉算法,能够计算人物相对的视角偏移值(包括位移值以及转动角度值)以及人物所占虚拟场景的比例偏移值,具体地,可以根据人物骨骼信息得到视角偏移值以及比例偏移值。当第一交互端的人物有实际偏移时,在虚拟场景中可能会发生视角的偏移或者占虚拟场景的面积有所改变(比如前进时,占据面积会偏大,后退时,占据面积会偏小)。
S1033:根据所述视角偏移值以及所述比例偏移值,控制所述人物图像进行相应的偏移和/或缩放处理后与所述预设虚拟场景进行融合。
通过改变所述人物图像的偏移角度和/或缩放处理,能够第二交互端看到的人物大小比例正常,提高目标用户的会议交互体验。
可以理解的是,以上步骤S1031-S1032可以在第二交互端和/或服务器进行。
S104:将所述声音合成到所述虚拟融合图像中得到虚拟视频。
所述声音与融合到预设虚拟场景的人物图像相匹配,当有个第二交互端时,将每一所述第一交互端发送的声音合成到所述虚拟融合图像中得到虚拟视频,得到的虚拟视频包括所有第一交互端的混合的声音。
在虚拟会议系统中,所述第二交互端和/或所述服务器可以用于将所述声音合成到所述虚拟融合图像中得到虚拟视频。
虚拟视频形成后,可以通过所述第二交互端播放所述虚拟视频。所述虚拟视频可以通过第二交互端的虚拟现实显示设备进行显示。当第二交互端的目标用户头戴虚拟现实显示设备进行会议时,能够沉浸在包括所有第二交互端的目标用户以及声音的虚拟场景中,能够观看到第二交互端的目标用户以及听到该目标用户的会议发言等。
本实施方式所提供的虚拟会议方法,接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户;对所述图像进行抠像处理得到包括所述目标用户的人物图像;将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;将所述声音合成到所述虚拟融合图像中得到虚拟视频,目标用户能够在虚拟场景中看到参与会议的其他人,提高目标用户的视觉感受,有利于提升会议的交互体验。
图6是本发明第二实施方式的虚拟场景交互方法的流程图,本实施方式与第一实施方式的主要区别在于,第二实施方式中包括编码的等步骤。需要说明的是,在本发明的精神或基本特征的范围内,适用于第一实施方式中的各具体方案也可以相应的适用于第二实施方式中,为节省篇幅及避免重复起见,在此就不再赘述。
如图6所示,所述虚拟场景交互方法可以包括如下步骤:
S201:第一交互端将图像的RGBA颜色数据转化为YUV422平面格式的数据。
可以先获取图像的R、G、B、A的分量地址,然后根据分量地址获取图像的RGBA颜色数据,然后可以采用如下矩阵公式将RGBA颜色数据转化为YUV422平面格式(planar)的数据。
不同于RGB数据需要三个独立的视频信号同时传输带来传输占用的频宽较大的问题,利用YUV平面格式数据进行传输所占用的频宽更小。
采用YUV422平面格式的数据,可以降低传输图像数据的频宽,方便于图像数据在网络中的传输,能够很好的解决各地互联网传输节点的稳定访问能力低的问题、以及大数据流传输情况下的网络传输延迟问题。在目前的互联网环境下,可以实现在1080p级别的视频传输下地狱100ms延迟,而基于全球的互联网环境下,平均延迟低于280ms,网络稳定性以及可通达率达到98%以上。
S202:设定所述YUV422平面格式的数据中的各分量的值,使得所述YUV422平面格式的数据中存放的是YUVA420平面格式的数据。
所述YUV422平面格式的数据为色度在水平方向上的采样率减半的一种编码数据形式,即每行相邻的2个Y(亮度信息)共用一个UV(色度信息)二通道信息。所述YUV420平面格式的数据是四个Y共用一个UV二通道信息,因而YUV422平面格式的数据比YUV420平面格式的数据多了一个UV二通道信息。
S203:将alpha通道数据存储在所述YUV422平面格式的数据中多余的位置,得到编码的图像。
所述YUV422平面格式的数据以及YUVA420平面格式的数据本身都没有存储alpha通道信息,当所述YUV422平面格式的数据中存放的是YUVA420平面格式的数据时,能够将多出的部分用来存储RGBA颜色数据里面的alpha通道信息,不需要增加和改变YUV422以及YUVA420的编码方式就能够存储alpha通道信息,alpha通道信息能够用于向图像中的像素指定透明度,拥有alpha通道信息的图像数据,可以使得图像数据所传达的图像内容信息更加丰富,而且有利于后续的图像融合操作,例如在抠像后与预设虚拟场景进行融合时能够更加平滑。
所述编码的图像可以包括H.264视频编码数据,功能层可包括视频编码层和网络提取层。所述视频编码层包括YUV422平面格式数据,而所述网络提取层可包括预设字节和/或预设字符串的文件头信息。
可以理解的是,所述文件头信息的NAL帧类型取值区间为[26,31],该取值区间可避免与软件开发包(Software Development Kit,SDK)的打包类型相冲突。所述NAL帧类型的数据长度可为1字节。而在所述NAL帧类型数据之前还可包括数据长度为4字节的LEN。
S204:所述第一交互端发送所述编码的图像以及所述声音。
S205:对所述图像进行抠像处理得到包括所述目标用户的人物图像。
可以理解的是,本步骤可以先对所述编码的图像进行解码,然后在对解码后所述图像进行抠像处理得到包括所述目标用户的人物图像。解码时,可以是步骤S201-S203中的一个或多个步骤中的反向过程。
S206:将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像。
S207:将所述声音合成到所述虚拟融合图像中得到虚拟视频。
本实施方式除了具有第一实施方式的有益效果之外,包括图像编码的步骤,第一交互端将图像的RGBA颜色数据转化为YUV422平面格式的数据,设定所述YUV422平面格式的数据中的各分量的值,使得所述YUV422平面格式的数据中存放的是YUVA420平面格式的数据,将alpha通道数据存储在所述YUV422平面格式的数据中多余的位置,得到编码的图像,对所述图像进行抠像处理得到包括所述目标用户的人物图像,将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像,将所述声音合成到所述虚拟融合图像中得到虚拟视频,本实施方式有利用YUV422平面格式数据占用频宽小的特性可降低传输所述目标图像所需的频宽,且有利于降低视频流传输的延迟,而且在YUV422平面格式数据中具有alpha通道数据,可以使得图像数据所传达的图像内容信息更加丰富,而且有利于后续的图像融合操作。
图7为本发明提供的终端装置1的一种实施例的结构图,如图7所示,所述终端装置1可应用上述各实施方式,下面对本发明所提供的终端装置1进行描述,所述终端装置1可以包括虚拟会议装置100,终端装置1还可包括处理器10和存储装置20,以及存储在所述存储装置20中并可向所述处理器10上运行的计算机程序(指令),例如虚拟会议程序等,当然还可以包括其他的硬件部分在此不再赘述。
所述处理器10可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述虚拟会议的控制中心,利用各种接口和线路连接整个终端装置1的各个部分。
所述存储装置20可用于存储所述计算机程序和/或模块,所述处理器10通过运行或执行存储在所述存储装置20内的计算机程序和/或模块,以及调用存储在存储装置20内的数据,实现所述服务器的各种功能。所述存储装置20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储装置20可以包括高速随机存取存储装置,还可以包括非易失性存储装置,例如硬盘、内存、插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储装置件、闪存器件、或其他易失性固态存储装置件。
所述虚拟会议装置100,可用于接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户;对所述图像进行抠像处理得到包括所述目标用户的人物图像;将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像;将所述声音合成到所述虚拟融合图像中得到虚拟视频,通过所述虚拟会议装置100,目标用户能够在虚拟场景中看到参与会议的其他人,提高目标用户的视觉感受,有利于提升会议的交互体验。
所述虚拟会议装置100,还可用于使第一交互端将图像的RGBA颜色数据转化为YUV422平面格式的数据,设定所述YUV422平面格式的数据中的各分量的值,使得所述YUV422平面格式的数据中存放的是YUVA420平面格式的数据,将alpha通道数据存储在所述YUV422平面格式的数据中多余的位置,得到编码的图像,对所述图像进行抠像处理得到包括所述目标用户的人物图像,将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像,将所述声音合成到所述虚拟融合图像中得到虚拟视频,通过所述虚拟会议装置100,有利用YUV422平面格式数据占用频宽小的特性可降低传输所述目标图像所需的频宽,且有利于降低视频流传输的延迟,而且在YUV422平面格式数据中具有alpha通道数据,可以使得图像数据所传达的图像内容信息更加丰富,而且有利于后续的图像融合操作。
所述处理器10执行所述计算机程序时实现上述各个实施例中虚拟会议方法中的步骤。或者,所述处理器10执行所述计算机程序时实现各模块/单元的功能。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储装置20中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端装置1中的执行过程。例如,所述虚拟会议装置100可以包括接收模块11、抠像处理模块12、虚拟融合模块13、合成模块14,如图8所示,各模块具体功能如下:
所述接收模块11,可用于接收第一交互端发送的实时获取的图像以及声音;其中,所述图像的内容包括所述第一交互端的目标用户。
所述抠像处理模块12,可用于对所述图像进行抠像处理得到包括所述目标用户的人物图像。
所述虚拟融合模块13,可用于将所述人物图像与预设虚拟场景进行融合得到虚拟融合图像。
所述合成模块14,可用于将所述声音合成到所述虚拟融合图像中得到虚拟视频。
进一步的,所述第一交互端的数量为多个,所述虚拟融合模块13,具体还可用于:将每一所述第一交互端的人物图像融合到一预设虚拟场景中,得到包括所有所述第一交互端的人物图像的虚拟融合图像,其中,每一所述第一交互端的人物图像在所述虚拟融合图像中的相应位置。
所述合成模块14,具体还可用于将每一所述第一交互端发送的声音合成到所述虚拟融合图像中得到虚拟视频。
进一步的,所述虚拟会议装置100还可以包括边缘处理模块15和渲染模块16。
所述边缘处理模块15,可用于在对所述像进行抠像处理之后,对所述人物图像进行边缘处理。
所述渲染模块16,可用于将边缘处理后的所述人物图像进行渲染。
进一步的,所述虚拟会议装置100,还可以包括转化模块17、设定模块18、存储模块19和发送模块20:
所述转化模块17,可用于是所述第一交互端将所述图像的RGBA颜色数据转化为YUV422平面格式的数据;
所述设定模块18,可用于设定所述YUV422平面格式的数据中的各分量的值,使得所述YUV422平面格式的数据中存放的是YUVA420平面格式的数据;
所述存储模块19,可用于将alpha通道数据存储在所述YUV422平面格式的数据中多余的位置,得到编码的图像;
所述发送模块20,可用于使所述第一交互端发送所述编码的图像以及所述声音。
进一步的,所述抠像处理模块12,具体可用于:
利用抠像参数对彩色图像进行抠像算法运算获取初始alpha通道图像,所述初始alpha通道图像包括初始背景图像与初始前景图像;
根据所述初始alpha通道图像与所述彩色图像合成三通道RGB图像并根据所述彩色图像计算六通道数据;
根据模糊半径计算彩色图像、一通道图像、六通道数据与三通道RGB图像的周围像素平均值;
根据所述周围像素平均值计算三通道RGB图像的协方差与六通道数据的方差;
根据所述三通道RGB图像的协方差与所述六通道数据的方差计算所述三通道RGB图像与一通道图像的相关系数;
根据所述模糊半径计算所述相关系数的模糊值;
根据所述相关系数的模糊值获取最终Alpha通道图像,所述最终Alpha通道图像包括待合成的背景图像与经处理的前景图像。
进一步的,所述虚拟融合模块13,具体可用于:
通过深度学习的视觉算法计算人物骨骼的位置以及大小,以对人物进行识别和追踪;
计算人物相对的视角偏移值以及人物所占虚拟场景的比例偏移值;
根据所述视角偏移值以及所述比例偏移值,控制所述人物图像进行相应的偏移和/或缩放处理后与所述预设虚拟场景进行融合。
所述终端装置1可以是PC服务器及云端服务器等计算设备。本领域技术人员可以理解,所述示意图仅仅是终端装置1的示例,并不构成对终端装置1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端装置1还可以包括输入输出设备、网络接入设备、总线等。
所述终端装置1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在本发明所提供的几个实施例中,应当理解的是,所述的方法和装置,也可以通过其他的方式来实现,以上所描述的装置实施例仅是示意性的,所述模块的划分,仅仅是一种逻辑功能划分,实现时可以有另外的划分方式。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个装置也可以由同一个装置或系统通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。