首页> 中国专利> 一种基于VR技术的多用户虚实协同系统

一种基于VR技术的多用户虚实协同系统

摘要

本发明涉及一种基于VR技术的虚实协同系统,包括多个用户端和一个中心管理服务端;每个用户端与参与虚实协同的一个用户对应,用于产生基于用户实际动作与虚拟场景相结合的虚实结合数据,发送到中心管理服务端;所述中心管理服务端与所有的用户端建立通信连接,接收每个用户发送的虚实结合数据流,进行数据适配、存储和转换生成协同空间数据,分发到每个参与虚实协同的用户端;所述用户端将接收的所述协同空间数据动态镜像到仿真协同空间,进行多用户动作协同,动作姿态与虚拟环境的融合,构造得到多人共同面对同一个虚拟空间的场景。本发明实现了面向会议组织提供管理功能,使参会各方共同可在同一虚拟场景中实现虚实协同。

著录项

  • 公开/公告号CN112947758A

    专利类型发明专利

  • 公开/公告日2021-06-11

    原文格式PDF

  • 申请/专利权人 北京京航计算通讯研究所;

    申请/专利号CN202110240021.0

  • 发明设计人 崔斌;王学勇;邹蕾;徐明月;李婷;

    申请日2021-03-04

  • 分类号G06F3/01(20060101);G06F3/14(20060101);G06T15/00(20110101);G06T19/00(20110101);

  • 代理机构11386 北京天达知识产权代理事务所(普通合伙);

  • 代理人李明里

  • 地址 100074 北京市丰台区云岗北里西区1号院

  • 入库时间 2023-06-19 11:22:42

说明书

技术领域

本发明涉及虚拟现实技术领域,具体指一种基于VR技术的虚实协同系统。

背景技术

传统的研讨会通过会议室物理空间座谈,需要与会人员通过交通差旅到场参加,费时费力;视频会议和电话会议只能展示二维的画面,不能实现置身三维仿真场景的效果,使交流受到限制,比如在检察机关进行案件研讨过程中,对3D还原的案发现场,不能做到与会者身临其境勘查的体验。

虚拟现实(Virtual Reality,缩写为VR),该技术是利用计算机模拟产生一个三维空间的虚拟世界,提供用户关于视觉、听觉、触觉等感官的模拟,让用户感觉仿佛身临其境,可以观察三维空间内的事物。用户进行位置移动时,计算机可以立即进行复杂的运算,将精确的三维世界视频传回产生临场感。该技术集成了计算机图形、计算机仿真、人工智能、传感感应、显示及网络并行处理等技术的最新发展成果,是一种由计算机技术辅助生成的高技术模拟系统。而现在已经有将虚拟现实技术应用于多人远程协同,创建一个多人自由参与的虚拟空间,在虚拟空间中实现仿真真实世界的环境,参会人进入到虚拟空间进行三维位置移动、姿态变更、语音沟通,实现了参会人头部、手部的动作仿真和多人互动,有的能够结合对眼球、面部、嘴型等部位的识别,实现表情以及口型的动作采集和仿真还原。

目前,基于虚拟现实的网络会议,采用的是通过由一人向其他人共享当前身处的虚拟现实空间的方式,实现基于虚拟现实的网络会议,使参会人之间能够展示自己在虚拟场景中的形象,选择的虚拟的服装、体态、姿势、表情等,分享会议记录、幻灯片等等的工作资料。目前方法中没有提供面向会议组织提供管理功能,如对参会人进行座位预留、统一的桌牌标识的摆放等。另外,也不具备参会各方共同可在同一场景中并发协同的机制。

发明内容

鉴于上述的分析,本发明旨在提供一种基于VR技术的虚实协同系统,实现多人协同的虚拟与现实结合。

本发明提供的技术方案是:

本发明公开了一种基于VR技术的虚实协同系统,包括,多个用户端和一个中心管理服务端;

每个用户端与参与虚实协同的一个用户对应,用于产生基于用户实际动作与虚拟场景相结合的虚实结合数据,发送到中心管理服务端;

所述中心管理服务端与所有的用户端建立通信连接,接收每个用户发送的虚实结合数据流,进行数据适配、存储和转换生成协同空间数据,分发到每个参与虚实协同的用户端;

所述用户端将接收的所述协同空间数据动态镜像到仿真协同空间,进行多用户动作协同,动作姿态与虚拟环境的融合,构造得到多人共同面对同一个虚拟空间的场景。

进一步地,所述用户端包括虚实结合模块和协同空间模块;

所述虚实结合模块用于产生基于用户的虚实结合数据;所述虚实结合数据包括实时捕获的用户姿态数据和针对用户的虚拟场景仿真数据;

所述协同空间模块,用于接收中心管理服务端输出的协同空间数据,通过动态镜像构建仿真协同空间,在仿真协同空间中将多用户的动作姿态与虚拟环境进行融合,构造出一个多人共同面对的同一场景,使每个在线用户在仿真协同空间中能够看到其他用户和虚拟现实空间中的物,并与其他用户进行动作协同。

进一步地,所述虚实结合模块包括真实场景捕捉子模块和虚拟场景仿真子模块;

所述真实场景捕捉子模块,用于实时捕捉、识别用户的姿态生成用户姿态数据流;

虚拟场景仿真子模块,基于虚拟现实三维角色的创建和配置,产生包括用户操作数据、音视频数据、角色数据和内容数据在内的虚拟场景的数据。

进一步地,所述用户姿态数据根据人体各部位划分识别定义出来23个节点,所述节点及节点之间建立父子关联关系,

其中,顶层根节点为Hips,子节点分别为:Spine、RightUpLeg、LeftUpLeg;

Spine的子节点为:Chest,Chest子节点分别为Neck、LeftShoulder、RightShoulder;

Neck子节点为Head;

LeftShoulder子节点关系依次为LeftArm、LeftForeArm、LeftHand;

RightShoulder子节点关系依次为RightArm、RightForeArm、RightHand;

RightUpLeg子节点关系依次为RightLeg、RightFoot、RightToes、LToeBase。

LeftUpLeg子节点关系依次为LeftLeg、LeftFoot、LeftToes、LToeBase。

进一步地,所述用户姿态数据以一个姿态对应以上23个节点的一条数据,称作一帧,多个帧连续起来,表示用户的动作;姿态数据的每帧各节点均采用位置坐标和旋转角度共同的方式进行记录,其中根节点的数据包括位置坐标和旋转角度;所有子节点的数据为相对父节点的旋转角度数据。

进一步地,所述中心管理服务端包括适配器、存储器、转换器、混流器和分发器;

适配器,用于接收虚实结合模块发送过来的数据,针对包括姿态数据流数据、用户操作数据、音视频流数据、角色数据和内容数据在内的数据类型,分别进行解析整理、标记和打包处理,输出数据包;

所述存储器用于为每个参与协同的用户对应的虚实协同模块在内存中创建一个数据存储空间,每个存储空间中创建多个队列存储空间,每个队列用于存储适配器输出的一个类型数据;

所述转换器用于对存储器中所有的数据进行时间戳对齐转换;

混流器用于对存储器中的所有数据进行整合生成完整的协协同空间数据;所述混流器以时间戳为进行数据整合,不区分参与用户,把所有参与用户的数据整合成完整的协同空间数据;

所述分发器用于维护一个所有的协同空间模块的列表,接收混流器推送的流式数据并对每个在线的协同空间模块进行拷贝推送。

进一步地,适配器对持续接收的姿态数据流数据的打包过程包括:

对每一帧姿态数据增加序号,按固定时间间隔进行打包,在数据包中增加包括参与用户、类型、起始时间戳、结束时间戳和数据包序号在内的打包特征数据;其中,类型取值为“动作数据”,起始时间戳和结束时间戳为长整型数字,为中心管理服务端所在的服务器的时间。

进一步地,适配器对随机事件数据,按照数据包打包的时间间隔,进行中间缺失数据的补齐后形成随机事件数据包。

进一步地,所述中心管理服务端还包括规则配置模块,所述规则配置模块内置包括存储规则、转换规则、混流规则和分发规则在内的规则配置文件;

所述存储规则,用于设置存储器创建的数据存储空间的大小,以及存储数据丢弃的规则;

所述转换规则,用于设置转换器对数据转换的时间戳间隔;

所述混流规则,用于设置混流器是否从存储器中删除数据;

所述分发规则,用于设置分发器缓存的大小。

进一步地,所述协同空间模块包括模型导入模块、图像渲染模块、动作解析模块和姿态渲染模块;

所述模型导入模块,用于导入空间协同所需的预制好的3D模型数据文件;

所述图像渲染模块,用于对3D模型数据文件进行图形渲染,将模型文件信息还原为仿真的视觉图像;

所述动作解析模块,用于从协同空间数据中解析出,每个用户的动作数据,进行解析得到每个人物骨骼对应的23个关节点的空间的位置坐标和旋转角度数据;

所述姿态渲染模块,用于把解析处理的每个人物骨骼对应的23个关节点的空间的位置坐标和旋转角度数据一一对应到每个人物3D模型中,并重新渲染改变视觉图像中模型的位置和姿态。

本发明至少可实现以下有益效果之一:

本发明提出来在多人虚实协同研讨系统中设计中心管理服务端,通过中心管理服务端进行所有参与人的动作姿态、操作、分享内容的实时的同步共享,过程中通过中心管理服务端的数据的处理,保证了多个端数据的时间对齐同步,并对多种不同形式的数据格式进行了统一,同时能够通过配置和管理功能,对协同空间数据同步效果进行干预。进一步可以在该中心管理服务端上增加应用层面的管理功能,如研讨会议的组织管理,流程管理,用户管理等。

附图说明

附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。

图1为本实施例中的基于VR技术的虚实协同系统组成连接示意图;

图2为本实施例中的人体各部位节点及节点之间的父子关联关系图。

具体实施方式

下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。

本实施例公开了一种基于VR技术的虚实协同系统,如图1所示,多个用户端和一个中心管理服务端;

每个用户端与参与虚实协同的用户对应,用于产生基于用户实际动作与虚拟场景相结合的虚实结合数据,发送到中心管理服务端;

所述中心管理服务端与所有的用户端建立通信连接,接收用户发送的虚实结合数据,进行数据适配、存储和转换生成协同空间数据,分发到每个参与虚实协同的用户端;

所述用户端将接收的所述协同空间数据动态镜像到仿真协同空间,进行多用户动作协同,动作姿态与虚拟环境的融合,构造出多人共同面对同一个虚拟空间的场景。

具体的,每一个用户端中均包括虚实结合模块和协同空间模块;

所述虚实结合模块用于产生基于用户的虚实结合数据;所述虚实结合数据包括实时捕获的用户姿态数据和针对用户的虚拟场景仿真数据;

所述协同空间模块,用于接收中心管理服务端输出的协同空间数据,通过动态镜像构建仿真协同空间,在仿真协同空间中将多用户的动作姿态与虚拟环境进行融合,构造出一个多人能够共同面对同一个场景,使每个在线用户在仿真协同空间中能够看到其他用户和虚拟现实空间中的物,并与其他用户进行动作协同。

更具体的,所述虚实结合模块包括真实场景捕捉子模块和虚拟场景仿真子模块;

其中,真实场景捕捉子模块,用于实时捕捉、识别用户的姿态生成用户姿态数据流,实时发送到中心管理服务端;

优选的,真实场景捕捉子模块包括姿态识别设备、电脑设备和用于姿态捕获识别的相关软件。

虚拟场景仿真子模块,基于虚拟现实三维角色的创建和配置,产生包括用户操作数据、音视频数据、角色数据和内容数据在内的虚拟场景的数据。

虚拟场景仿真子模块,支持虚拟现实三维角色的创建和配置,多角色在高逼真、高沉浸感的虚拟环境中进行虚实协同研讨,实现视觉、听觉、多感知信息高度融合,产生包括用户操作数据、音视频数据、角色数据和内容数据在内的虚拟场景的数据。具体的,虚拟场景仿真子模块包括虚拟现实头戴设备、空间定位设备、电脑设备和用于虚拟场景仿真的相关软件。

本实施例,同时身处不同地方参与协同的多个用户通过用户端参与到同一个协同空间中,多个用户端的虚实结合模块实时采集真实和虚拟场景的数据,通过计算机网络技术,发送给中心管理服务端,由中心管理服务端向所有参与者的协同空间模块发送,进行协同同步。

更具体,真实场景捕捉子模块中对用户的姿态和动作的采集,可以通过视频分析或穿戴传感器等方式实现。采集之后姿态数据根据人体各部位划分识别定义出来23个节点,这些节点及节点之间的父子关联关系设计如下图2所示,包括:

顶层根节点为Hips,子节点分别为:Spine、RightUpLeg、LeftUpLeg。

Spine的子节点为:Chest,Chest子节点分别为Neck、LeftShoulder、RightShoulder。

Neck子节点为Head。

LeftShoulder子节点关系依次为LeftArm、LeftForeArm、LeftHand。

RightShoulder子节点关系依次为RightArm、RightForeArm、RightHand。

RightUpLeg子节点关系依次为RightLeg、RightFoot、RightToes、LToeBase。

LeftUpLeg子节点关系依次为LeftLeg、LeftFoot、LeftToes、LToeBase。

每个姿态对应以上23个节点的生成一条数据,称作一帧,多个帧连续起来,生成用户姿态数据流,形成了用户的动作数据。

姿态数据流的每帧各节点均采用位置坐标和旋转角度共同的方式进行记录,其中根节点(Hips)的位置坐标(X,Y,Z)及旋转角度(x,y,z),采用世界坐标系,及在真实环境中的坐标值,而所有子节点的位置坐标,则是其相对父节点的旋转角(x,y,z),为相对坐标。

采用Json语法定义动作数据格式。数据在名称/值对中,骨骼关节点为名称,位置坐标和旋转角为值;值中的数据使用数组[]格式,根节点为六个数据,1-3分别代表位置坐标X,Y,Z,4-5分别代表旋转角度x,y,z;其余的子节点3个数据代表相对父物体的旋转角度(x,y,z)。每一帧数据的开头都增加一个“id”属性,用于区分不同的参与用户,id其值为一个整数,每个参与用户的id取值相同。

例如:{"id":1000,"body":[{"Hips":[1,2,3,4,5,6]},{"Spine":[1,2,3]},{"Chest":[1,2,3]},{"Neck":[1,2,3]},{"Head":[1,2,3]},{"LeftShoulder":[1,2,3]},{"LeftArm":[1,2,3]},{"LeftForeArm":[1,2,3]},{"LeftHand":[1,2,3]},{"RightShoulder":[1,2,3]},{"RightArm":[1,2,3]},{"RightForeArm":[1,2,3]},{"RightHand":[1,2,3]},{"RightUpLeg":[1,2,3]},{"RightShoulder":[1,2,3]},{"RightLeg":[1,2,3]},{"RightFoot":[1,2,3]},{"RightToes":[1,2,3]},{"LToeBase":[1,2,3]},{"LeftUpLeg":[1,2,3]},{"LeftLeg":[1,2,3]},{"LeftFoot":[1,2,3]},{"LeftToes":[1,2,3]},{"LToeBase":[1,2,3]}]}。

所述中心管理服务端,用于对接收的所有参与协同用户的虚实结合数据进行数据适配、存储和转换生成协同空间数据,并将协同空间数据分发到每一个在线的用户端的协同空间模块;所述协同空间数据包括参与协同用户的实时姿态、动作、语音、神态在内的数据。

具体的,所述中心管理服务端包括适配器、存储器、转换器、混流器、分发器,规则配置和规则配置文件。

其中,适配器,用于接收虚实结合模块发送过来的数据,针对包括姿态数据流数据、用户操作数据、音视频流数据、角色数据和内容数据在内的数据类型,分别进行解析整理、标记和打包处理,输出数据包。

具体的,适配器对持续接收的姿态数据流数据的打包过程包括:

对每一帧姿态数据增加序号,按固定时间间隔(如1秒)进行打包,在数据包中增加包括参与用户、类型、起始时间戳、结束时间戳和数据包序号在内的打包特征数据;其中,类型取值为“动作数据”,起始时间戳和结束时间戳为长整型数字,为中心管理服务端所在的服务器的时间。每打出来一个数据包,适配器会将它发送给存储器。

适配器对于用户操作数据、音视频流数据、角色数据和内容数据的打包采用与姿态数据流数据相同的方式。

同时,适配器可以通过扩展的方式,支持除以上五种之外的其他数据。

对于不是连续的数据流,而是随机的事件数据,适配器接收到数据的时间间隔是不固定的,这个时候,适配器按照数据包打包的时间间隔,采用复制已有数据的方式进行中间缺失数据的补齐。

适配器需要是多线程或者多进程并发的形式,每一个虚实结合模块,需要适配器运行多个线程或进程,来接收数据和处理,每一个适配器对应一个虚实结合模块。

具体的,所述存储器用于为每个参与协同的用户对应的虚实协同模块在内存中创建一个数据存储空间,每个存储空间中创建多个队列存储空间,每个队列用于存储适配器输出的一个类型数据。

存储器创建的存储空间大小是固定的,当存储空间写满时,缺省按照先进先出的原则丢弃先存进来的数据。当有新的参与者加入协同系统时,会启动新的虚实结合模块进程,存储器会为他动态的创建存储空间,当参与者退出时,存储器会释放相应的存储空间。存储器创建的存储空间的大小、数据的丢弃原则可以通过规则配置进行设置。数据的丢弃原则分为丢弃最早数据、丢弃最新数据。

具体的,转换器用于对存储器中所有的数据进行时间戳对齐转换,使所有的数据的时间戳都对齐到每一帧开始的时间戳。这样保证多个参与人的数据,由于从多个不同的网络路由、完全异步并发的方式接收到之后,能够按照时间顺序把同一个数据帧时间窗口的数据帧划分到一起。通过转换器的处理,所有的数据都统一成以时间戳为标记的帧结构数据。

具体的,混流器用于对存储器中的所有数据进行整合生成完整的协同空间数据。

更具体的,所述混流器以时间戳进行数据整合,不区分参与用户,把所有参与用户的数据整合成完整的协同空间数据,并组合成连续的数据包,形成一个帧数据包流,推送给分发器。同时根据设置的规则从存储器中删除掉该数据,释放相应的存储空间。

具体的,所述分发器用于维护一个所有的用户端的协同空间模块的列表,接收混流器推送的流式数据并对每个在线的协同空间模块进行拷贝推送。

所述中心管理服务端还包括规则配置模块,所述规则配置模块内置包括存储规则、转换规则、混流规则和分发规则在内的规则配置文件;

所述存储规则,用于设置存储器创建的数据存储空间的大小,以及存储数据丢弃的规则;

所述转换规则,用于设置转换器对数据转换的时间戳间隔;

所述混流规则,用于设置混流器是否从存储器中删除数据;

所述分发规则,用于设置分发器缓存的大小。

所述中心管理服务端还包括规则配置接口,所述规则配置接口与规则配置模块连接,用于对所述规则配置模块内置的包括存储规则、转换规则、混流规则和分发规则在内的规则配置文件的配置提供外部接口。

更具体的,每个用户端的协同空间模块:用于接收中心管理服务端输出的协同空间数据动态镜像到仿真协同空间,将多用户的实际姿态在虚拟现实空间中与虚拟环境进行融合,构造出一个多人能够共同面对同一个场景,使每个在线用户能够看到其他用户和虚拟现实空间中的物,并在虚拟现实空间中与其他用户进行动作协同。

协同空间模块运行于虚拟现实设备中,包括模型导入模块、图像渲染模块、动作解析模块和姿态渲染模块;

所述模型导入模块,用于导入空间协同所需的预制好的3D模型数据文件;

所述3D模型数据文件事先存储于协同空间的存储目录中,一般情况下模型采用预先通过3D制作软件(如3DMax)或3D扫描装置制作的协同空间环境模型、可操控的道具模型、人物的3D模型。

所述图像渲染模块,用于对3D模型数据文件进行图形渲染,将模型文件信息还原为仿真的视觉图像;

所述动作解析模块,用于从协同空间数据中解析出,每个用户的动作数据,进行解析得到每个人物骨骼对应的23个关节点的空间的位置坐标和旋转角度数据;

所述姿态渲染模块,用于把解析处理的每个人物骨骼对应的23个关节点的空间的位置坐标和旋转角度数据一一对应到每个人物3D模型中,并重新渲染改变视觉图像中模型的位置和姿态。

更具体的,所述姿态渲染模块每0.033秒执行一次,重新渲染改变视觉图像中模型的位置和姿态。这样协同空间模块将每一个身处不同地方参与用户的实时的真实姿态、动作、语音、神态等动态地在这个仿真的协同空间中建立镜像。

例如:当用户戴上头戴设备,进入到由协同空间模块构造的协同空间之中,首先进入到一个沉浸式的VR环境中,这个环境包括场地环境如会议室、设施如桌椅和投影、人物角色等。这些内容都是独立的3D模型,根据研讨会议场景设计,进入会议的人物角色,加载相应的模型并进行渲染展示。协同空间模块构造了一个多人能够共同面对同一个场景,一人能够看到其他人和物并能与其他人进行协同动作的虚拟现实空间,并能够将人物模型根据实际姿态在虚拟现实空间中与虚拟环境进行融合。根据实际姿态在虚拟现实空间中与虚拟环境进行融合的方法包括:

1)建立姿态识别模型识别用户的当前姿态;

根据用户动作数据的姿态数据流,建立姿态识别模型;将姿态数据流的每帧数据中23个节点位置坐标和旋转角数据之间的相对距离和角度,进行当前姿态的识别;确定用户当前的动作;

例如,左大腿LeftUpLeg和右大腿RightUpLeg平行且与臀Hips夹角接近90°则可以判断为坐姿。此处只是举例,实际模型有多种参数情况,通过训练学习进行优化。

2)在虚拟场景中,根据识别的当前姿态关联场景中与人物位置邻近的道具3D模型进行关联;

所述关联为查找并确定哪一个道具3D模型是其最邻近的道具,并且该道具与当前的姿态可以匹配;

例如,人物变为坐姿状态的时候,其临近的座椅应该就是其坐的位置,所谓关联就是查找并确定哪一个物体是其最邻近的座椅。

3)建立关联后,在虚拟场景中人物模型以当前姿态与道具3D模型进行融合,融合指两者绑定为一个三维物体单元;

两者的模型进行了交叉和遮挡,移动的时候两者同步同向同幅度的进行移动。

并且在两者之间发生相互作用关系时,模拟由于相互作用产生的声音和效果,增加虚拟场景的真实感;

例如,用户拍击桌子,用户与桌子之间发生相关作用关系,系统则会播放拍击桌子的声音并根据拍击力度使桌子的3D模型产生轻微震动变形。

当用户姿态改变时,重新进行上述步骤在虚拟现实空间中与虚拟环境进行融合。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号