CN110427227B - 虚拟场景的生成方法、装置、电子设备及存储介质 - Google Patents
虚拟场景的生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110427227B CN110427227B CN201910578450.1A CN201910578450A CN110427227B CN 110427227 B CN110427227 B CN 110427227B CN 201910578450 A CN201910578450 A CN 201910578450A CN 110427227 B CN110427227 B CN 110427227B
- Authority
- CN
- China
- Prior art keywords
- virtual
- scene
- session
- terminal device
- virtual object
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
- H04N7/157—Conference systems defining a virtual conference space and using avatars or agents
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种虚拟场景的生成方法、装置、电子设备及存储介质。该虚拟场景的生成方法包括:获取远程会话中一个或者多个终端设备的参与数据;根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;根据位置排布的结果,获取所述虚拟会话场景中每个所述虚拟对象的位置;基于所述虚拟对象的位置,生成包含所述虚拟对象的虚拟会话场景。本方法可以生成远程会话的虚拟会话场景,提升远程会话的效果。
Description
技术领域
本申请涉及显示技术领域,更具体地,涉及一种虚拟场景的生成方法、装置、电子设备及存储介质。
背景技术
近年来,随着网络技术和科技技术的快速发展,越来越多的人们使用电子设备进行远程会话(例如聊天、会议等)。通常的远程会话中,是将用户输入的语音、摄像头采集的图像进行传递,但是难以给用户身临其境的感觉,导致会话效果不佳。
发明内容
本申请实施例提出了一种虚拟场景的生成方法、装置、***、终端设备及存储介质,能提升远程会话的效果。
第一方面,本申请实施例提供了一种虚拟场景的生成方法,所述方法包括:获取远程会话中一个或者多个终端设备的参与数据;根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;根据位置排布的结果,获取所述虚拟会话场景中每个所述虚拟对象的位置;基于所述虚拟对象的位置,生成包含所述虚拟对象的虚拟会话场景。
第二方面,本申请实施例提供了一种虚拟会议场景的生成装置,所述装置包括:数据获取模块、位置排布模块、位置获取模块以及场景生成模块,其中,所述数据获取模块用于获取远程会话中一个或者多个终端设备的参与数据;所述位置排布模块用于根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;所述位置获取模块用于根据位置排布的结果,获取所述虚拟会话场景中每个所述虚拟对象的位置;所述场景生成模块用于基于所述虚拟对象的位置,生成包含所述虚拟对象的虚拟会话场景。
第三方面,本申请实施例提供了一种电子设备,一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的虚拟场景的生成方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的虚拟场景的生成方法。
本申请提供的方案,通过获取远程会话中一个或者多个终端设备的参与数据,根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布,根据位置排布结果,获取虚拟会话场景中每个虚拟对象的位置,基于虚拟对象的位置,生成包含虚拟对象的虚拟会话场景。因此,可以根据用户的终端设备的参与数据,对参与远程会话的终端设备的虚拟对象进行位置排布,使虚拟对象加入到远程会话场景中的相应位置,得到用于进行显示的虚拟会话场景,给用户较为真实的感受,提升远程会话的效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种适用于本申请实施例的应用场景的一种示意图。
图2示出了一种适用于本申请实施例的应用场景的另一种示意图。
图3示出了根据本申请一个实施例的虚拟场景的生成方法流程图。
图4示出了根据本申请一个实施例提供的一种显示效果示意图。
图5示出了根据本申请另一个实施例的虚拟场景的生成方法流程图。
图6示出了根据本申请另一个实施例的虚拟场景的生成方法中步骤S220的流程图。
图7示出了根据本申请一个实施例提供的一种显示效果示意图。
图8示出了根据本申请一个实施例提供的另一种显示效果示意图。
图9示出了根据本申请再一个实施例的虚拟场景的生成方法流程图。
图10示出了根据本申请一个实施例提供的一种显示效果示意图。
图11示出了根据本申请再一个实施例的虚拟场景的生成方法流程图。
图12示出了本申请实施例提供的虚拟场景的生成装置的结构框图。
图13是本申请实施例的用于执行根据本申请实施例的虚拟场景的生成方法的终端设备的框图。
图14是本申请实施例的用于执行根据本申请实施例的虚拟场景的生成方法的服务器的框图。
图15是本申请实施例的用于保存或者携带实现根据本申请实施例的虚拟场景的生成方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
下面对本申请实施例提供的虚拟场景的生成方法的应用场景进行介绍。
请参见图1,示出了本申请实施例提供的虚拟场景的生成方法的应用场景的示意图,该应用场景包括交互***10,该交互***10可以应用于远程会话。该交互*** 10包括:多个终端设备100以及服务器200,其中,终端设备100与服务器200连接。
在一些实施方式中,终端设备100通过网络与服务器200通信连接,从而终端设备100与服务器200之间可以进行数据交互。其中,终端设备100可以通过接入路由器所在网络,而通过路由器所在网络与服务器200之间进行通信,当然,终端设备100 也可以通过数据网络与服务器200之间进行通信。
在一些实施方式中,终端设备100可以是头戴显示装置,也可以是手机、平板等移动设备。终端设备100为头戴显示装置时,头戴显示装置可以为一体式头戴显示装置。终端设备100也可以是与外接式/接入式头戴显示装置连接的手机等智能终端,即终端设备100可作为头戴显示装置的处理和存储设备,***或者接入外接式头戴显示装置,在头戴显示装置中对虚拟内容进行显示。在远程会话中,终端设备100可用于对远程会话的虚拟会话场景进行显示,实现将虚拟会话场景的场景画面进行AR (Augmented Reality,增强现实技术)显示或者VR(Virtual Reality,虚拟现实技术) 显示,提升远程会话中场景画面的显示效果。在其他实施方式中,终端设备100也可以是电脑、平板电脑、电视等显示设备,终端设备100可以将虚拟会话场景对应的2D (2Dimensions,二维)画面进行显示。
在一些实施方式中,终端设备100可以采集远程会话中的信息数据(例如,采集用户的脸部信息、声音数据等),以根据该信息数据构建三维模型。在另一些实施方式中,终端设备100也可以根据预先存储的脸部信息、声音数据、身体模型等信息数据进行建模,也可以结合预先存储的信息数据以及采集到的信息数据进行建模。例如,终端设备100可以实时采集人脸信息建立脸部模型,其中,人脸信息可以包括表情信息以及形态动作信息(如偏头、点头等),然后再将脸部模型与预先设定的身体模型进行整合,节省了建模、渲染的时间的同时,也能实时获取用户的表情、形态动作。在一些实施方式中,终端设备100可以将上述采集的信息数据传输至服务器200或者其他终端设备100。
在一些实施方式中,请参见图2,交互***100也还可以包括信息采集装置300,信息采集装置300用于采集上述信息数据(例如,采集用户的脸部信息、声音数据等),并将采集的信息数据传输至终端设备100或者服务器200。在一些实施方式中,信息采集装置300可包括摄像头、音频模块等,也可包括光传感器、声传感器等各类传感器。作为一种具体的实施方式,信息采集装置300可以是具有普通彩色相机(RGB) 和深度相机(Depth)功能的拍摄设备(如RGB-D深度相机),以获取被拍摄的用户的深度数据,从而得到用户对应的三维结构。在一种具体实施方式中,信息采集装置 300与终端设备100可以处于同一现场环境,以便采集终端设备100对应的用户的信息,信息采集装置300与终端设备100之间可以连接,也可以不连接,在此不作限定。
在一些实施方式中,上述服务器200可以是本地服务器,也可以是云服务器,具体服务器200的类型在本申请实施例中可以不作为限定。在远程会话中,服务器200 可用于实现多个终端设备100/信息采集装置300之间的数据交互,从而保证多个终端设备100/信息采集装置300之间的数据传输和同步,实现远程会话中虚拟会话场景、音视频数据的同步、终端设备100/信息采集装置300之间的数据传输等。
在一些实施方式中,当远程会话中的多个终端设备100中存在至少两个终端设备100处于同一现场环境(例如,处于同一室内)时,处于同一现场环境的至少两个终端设备100之间也可以通过蓝牙、WiFi(Wireless-Fidelity,无线保真)、ZigBee(紫峰技术)等通信方式连接,也可以通过数据线等有线通信方式进行连接,从而实现处于同一现场环境的至少两个终端设备100之间数据的交互。当然,处于同一现场环境的至少两个终端设备100之间的连接方式在本申请实施例中可以不作为限定。
下面结合附图在实施例中对具体的虚拟场景的生成方法进行介绍。
请参阅图3,本申请实施例提供了一种虚拟场景的生成方法,该虚拟场景的生成方法可以包括:
步骤S110:获取远程会话中一个或者多个终端设备的参与数据。
远程会话指的是通过数据通信建立的多端进行远程交互、通讯的过程。参与数据可以为终端设备参与远程会话时,获取的用于参与远程会话的数据。参与远程会话的各个终端设备可以将参与数据发送至服务器,以便服务器根据远程会话中各个终端设备的参与数据构建虚拟会话场景。参与数据可以包括终端设备对应用户的身份信息、终端设备加入远程会话的时间、终端设备于现实场景中的空间位置、终端设备的姿态、以及终端设备的所处地点中的一种或者多种数据。其中,用户的身份信息可以包括用户的姓名、编号、工作职位、性别等。具体的参与数据在本申请实施例中可以不作为限定,例如参与数据也可以包括终端设备的设备ID(IDentity,身份标识号码)、用户之间的社会关系、用户在远程会话中的角色等。
在一些实施方式中,终端设备可以对参与数据进行采集,然后再将参与数据发送至服务器。在另一些实施方式中,也可以通过处于现场的信息采集装置采集参与数据,然后信息采集装置将参与数据发送至服务器。
在一些实施方式中,服务器(或是远程会话中的任一终端设备)可以获取参与该远程会话的终端设备的参与数据,以根据参与会话的各个终端设备的参与数据生成虚拟会话场景。
步骤S120:根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布。
在本申请实施例中,服务器在获取到远程会话中的终端设备的参与数据后,则可以根据参与数据,进行远程会话对应的虚拟会话场景中各个虚拟对象的位置排布。其中,虚拟对象为各个终端设备所对应的虚拟对象。虚拟会话场景为虚拟空间中的3D(3Dimensions,三维)场景,虚拟会话场景可以至少包括虚拟对象,虚拟会话场景中各虚拟对象的位置可相对虚拟空间中的世界坐标原点固定。当然,虚拟会话场景中的具体内容可以不作为限定,例如,虚拟会话场景中也还可以包括虚拟会议桌、虚拟桌布、虚拟摆件等。
在一些实施方式中,虚拟对象可以包括用户对应的虚拟人物模型、虚拟人物头像等,具体的虚拟对象在本申请实施例中可以不作为限定。
在一些实施方式中,服务器可以根据预先存储的排布规则,以及参与数据,对每个终端设备对应的虚拟对象进行位置排布。排布规则可以是根据身份信息进行位置排布的规则,也可以是根据终端设备在现实场景中的空间位置进行位置排布的规则,还可以是根据终端设备的姿态进行位置排布的规则,还可以是根据终端设备加入远程会话的时间进行位置排布的规则。例如,远程会话场景中包括围绕会议桌的多个不同的位置,可以从多个不同的位置中的指定位置开始,按照参与数据中用户的年龄从大到小的顺序,依次将每个终端设备对应的虚拟对象排布于多个不同的位置。当然,排布规则也可以是根据多种参与数据进行排布的规则,具体的排布规则在本申请实施例中可以不作为限定。另外,还可以根据不同的远程会话,确定不同的排布规则,例如,可以根据远程会话的类型,确定使用的排布规则。
在一些实施方式中,远程会话场景中不同终端设备对应的虚拟对象,处于不同的位置。服务器通过根据每个终端设备对应的参与数据,对终端设备对应的虚拟对象进行位置排布,可以将虚拟会话场景中不同终端设备对应的虚拟对象的位置区别开,并且每个终端设备对应的虚拟对象与参与数据对应,提升虚拟会话的真实感。
步骤S130:根据位置排布的结果,获取虚拟会话场景中每个虚拟对象的位置。
在一些实施方式中,服务器在根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布之后,则可以根据对虚拟对象的位置排布的结果,获取虚拟会话场景中每个虚拟对象的位置。其中,虚拟会话场景中虚拟对象的位置可以为虚拟对象可以为虚拟空间的世界坐标系中的位置(即相对世界坐标系中世界坐标原点的位置)。
步骤S140:基于虚拟对象的位置,生成包含虚拟对象的虚拟会话场景。
服务器在获取到虚拟会话场景中每个虚拟对象的位置之后,则可以根据每个虚拟对象的位置,生成虚拟会话场景。
在一些实施方式中,服务器可以获取虚拟对象的内容数据,根据虚拟对象的内容数据以及虚拟对象在虚拟空间中的位置,生成至少包含虚拟对象的虚拟会话场景。其中,虚拟对象的内容数据可以是虚拟对象的三维模型数据,三维模型数据可以包括用于构建三维模型对应的模型的颜色、模型顶点坐标、模型轮廓数据等。
作为一种实施方式,虚拟对象的内容数据可以预先存储于本地,服务器可以从本地获取每个终端设备对应的虚拟对象的内容数据。作为另一种实施方式,虚拟对象的内容数据可以预先存储于终端设备,服务器可以从终端设备对应的虚拟对象的内容数据。
在一些实施方式中,服务器可以根据虚拟会话场景中每个虚拟对象的位置,确定每个虚拟对象在虚拟空间中的渲染坐标,即得到了每个虚拟对象的渲染位置。其中,该渲染位置可用作虚拟对象的渲染坐标,以实现虚拟对象渲染于渲染位置处。其中,渲染坐标指的是虚拟对象在虚拟空间中以虚拟摄像头为原点(可看作是以人眼为原点) 的三维空间坐标。
其中,服务器在得到用于虚拟空间中渲染每个虚拟对象的渲染坐标之后,服务器可以根据每个虚拟对象的内容数据构建每个虚拟对象,以及根据每个虚拟对象的渲染坐标渲染每个虚拟对象,其中,渲染虚拟对象可以得到虚拟对象中各个顶点的顶点坐标以及颜色值等。由于内容数据可以包括三维模型数据,因此渲染得到的虚拟对象可以为三维的虚拟内容。
从而,在根据虚拟对象的位置以及内容数据,生成虚拟对象后,可以得到至少包含每个终端设备对应的虚拟对象的虚拟会话场景。当然,当虚拟会话场景包括其他虚拟内容时,在生成虚拟会话场景时,还可以获取其他虚拟内容的位置以及内容数据,生成其他虚拟内容,使虚拟会话场景中包括其他虚拟内容。例如,当虚拟会话场景中包括虚拟椅子时,除根据虚拟对象的位置和虚拟对象的内容数据,生成虚拟对象外,还需要根据虚拟椅子在虚拟空间中的位置以及虚拟椅子的内容数据,生成虚拟椅子,从而使生成的虚拟会话场景包括终端设备对应的虚拟对象以及虚拟椅子。
在本申请实施例中,生成的虚拟会话场景可以用于生成虚拟会话场景的场景画面,并且终端设备可以将场景画面进行显示,使用户可以观察到3D的虚拟会话场景,并且可以观察到处于不同位置的虚拟对象,使用户感受到较强的真实感。例如,请参阅图4,图4示出了远程会议场景的场景图,其中,终端设备100可以为头戴显示装置,用户 601处于真实场景中物理桌体周围的位置,用户601可以通过头戴显示装置观察到虚拟会话场景的场景画面,虚拟会话场景的场景画面可以包括其他参与远程会议的用户的虚拟人物701。
在一些实施例中,对远程会话中终端设备的参与数据的获取、对终端设备对应的虚拟对象的位置排布、虚拟对象的位置获取以及虚拟会话场景的生成等操作,也可以由终端设备完成。
本申请实施例提供的虚拟场景的生成方法,根据用户的终端设备的参与数据,对参与远程会话的终端设备的虚拟对象进行位置排布,使虚拟对象位于远程会话场景中的相应位置,得到用于进行显示的虚拟会话场景,给用户较为真实的感受,提升远程会话的效果。
请参阅图5,本申请另一实施例提供了虚拟场景的生成方法,该虚拟场景的生成方法可以包括:
步骤S210:获取远程会话中一个或者多个终端设备的参与数据。
在本申请实施例中,步骤S210可以参阅前述实施例的内容,在此不再赘述。
步骤S220:根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布。
终端设备参与远程会话的参与数据可以包括:用户的身份信息、加入远程会话的时间、终端设备于现实场景中的空间位置、终端设备的姿态、以及终端设备的所处地点中的一种或者多种数据。具体的参与数据在本申请实施例中可以不作为限定。
在一些实施方式中,请参见图6,服务器根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布,可以包括:
步骤S221:根据参与数据,确定每个终端设备对应的虚拟对象在虚拟会话场景中的优先级。
其中,在远程会话的虚拟会话场景中,不同终端设备对应的虚拟对象的优先级不同。该优先级用于作为位置排序时的优先级,虚拟对象的优先级越高,则虚拟对象越先被排布于虚拟会话场景。
进一步的,终端设备对应的虚拟对象在虚拟会话场景中的优先级,可以由终端设备的参与数据确定。
在一些实施方式中,参与数据至少包括终端设备参与远程会话的参与时间。其中,参与时间可以为终端设备通过网络加入到远程会话时的时间。根据参与数据,确定每个终端设备对应的虚拟对象在虚拟会话场景中的优先级,可以包括:
按照各个终端设备参与时间的先后顺序,对各个终端设备对应的虚拟对象在虚拟会话场景中的优先级进行从高到低的排序,得到各个终端设备对应的虚拟对象的优先级。
其中,服务器可以根据每个终端设备对应的参与数据中的参与时间,按照参与时间的先后顺序,对每个终端设备对应的参与时间进行排序,得到的排序结果可以确定为,虚拟对象在虚拟会话场景中的优先级从高到低的排序,从而得到各个终端设备对应的虚拟对象的优先级。例如,每个终端设备的参与时间与每个终端设备对应的虚拟对象的优先级的对应关系,如表1所示,
表1
终端设备 | 参与时间 | 优先级 |
设备4 | 时间点4 | 1 |
设备2 | 时间点2 | 2 |
设备3 | 时间点3 | 3 |
设备1 | 时间点1 | 4 |
如上表所示,终端设备的参与时间的先后顺序为表2中从上到下的顺序,即时间点4早于时间点2,时间点2早于时间点3,时间点3早于时间点1。终端设备对应的虚拟对象的优先级由表2中从上到下的顺序依次降低,即设备4对应的虚拟对象的优先级、设备2对应的虚拟对象的优先级、设备1对应的虚拟对象的优先级、及设备1 对应的虚拟对象的优先级依次降低。
在一些实施方式中,参与数据至少包括终端设备对应的身份信息,终端设备对应的身份信息可以包括用户的身份信息及终端的身份信息等。用户的身份信息可以包括用户的姓名(ID)、工作职位、年龄、性别、用户在远程会话中的角色(例如,主讲者、听众)等。终端的身份信息可以包括终端设备的设备ID等。当然,具体的身份信息可以不作为限定。
进一步的,根据参与数据,确定每个终端设备对应的虚拟对象在虚拟会话场景中的优先级,可以包括:根据各个终端设备的身份信息获取各个终端设备对应的身份级别;按照各个终端设备对应的身份级别的从高到低的顺序,对各个终端设备对应的虚拟对象在虚拟会话场景中的优先级进行从高到低的排序,得到各个终端设备对应的虚拟对象的优先级。
其中,服务器可以根据身份信息中工作职位、年龄、性别、远程会话中的角色等,确定终端设备对应的身份级别,并且身份级别高低不同。例如,可以根据工作职位的级别,确定终端设备对应的身份级别,身份级别的高低顺序由工作职位的级别的高低顺序决定。又例如,可以根据年龄,确定终端设备对应的身份级别,身份级别的高低顺序可以按照年龄从大到下排布,当然也可以按照年龄从小到大排布。再例如,可以根据远程会话中的角色的级别,确定终端设备对应的身份级别,身份级别的高低顺序由角色的级别的高低顺序决定。还例如,可以根据用户的性别为男,或者性别为女,确定身份级别,女性的身份级别可高于男性的身份级别,也可以是男性的身份基本高于女性的身份级别。当然,具体确定终端设备的身份级别的方式可以不作为限定。
服务器在得到远程会话中每个终端设备对应的身份级别后,则可以按照身份级别从高到低的顺序,对每个终端设备对应的身份级别进行排序,得到的排序结果可以确定为,虚拟对象在虚拟会话场景中的优先级从高到低的排序,从而得到各个终端设备对应的虚拟对象的优先级。例如,每个终端设备的身份基本与每个终端设备对应的虚拟对象的优先级的对应关系,如表2所示,
表2
终端设备 | 身份级别 | 优先级 |
设备3 | 级别3 | 1 |
设备1 | 级别2 | 2 |
设备2 | 级别1 | 3 |
如上表所示,终端设备对应的身份级别从高到低的顺序为表2 中从上到下的顺序,即设备3对应的身份级别、设备2对应的身份级别以及设备1对应的身份级别依次降低。终端设备对应的虚拟对象的优先级由表2 中从上到下的顺序依次降低,即设备3 对应的虚拟对象的优先级、设备2对应的虚拟对象的优先级以及设备1对应的虚拟对象的优先级依次降低。
步骤S222:根据每个虚拟对象的优先级,对每个虚拟对象进行虚拟会话场景中的位置排布。
服务器在获取到远程会话中每个终端设备对应的虚拟对象的优先级之后,则可以根据每个虚拟对象的优先级,对每个虚拟对象进行虚拟会话场景中的位置排布。
在一些实施方式中,虚拟会话场景中有多个设定位置,设定位置与虚拟对象的优先级对应。其中,设定位置不同,则设定位置处排布的虚拟对象的优先级不同。
在一种具体实施方式中,虚拟会话场景的多个设定位置中第一位置处排布的虚拟对象的优先级最高,与第一位置相邻的其他设定位置的虚拟对象的优先级依次降低,因此可以按照虚拟对象的优先级从高到低的顺序,依次将虚拟对象排布于设定位置。例如,请参见图7,虚拟会话场景中包括虚拟会议桌801,虚拟会议桌801周围可以分布有多个虚拟座位:虚拟座位P0、虚拟座位P7、虚拟座位P6、虚拟座位P5、虚拟座位P1、虚拟座位P2、虚拟座位P3、以及虚拟座位P4。虚拟座位P0(目标位置)排布的虚拟对象的优先级最高,虚拟座位P7、虚拟座位P6、虚拟座位P5、虚拟座位P1、虚拟座位P2、虚拟座位P3、以及虚拟座位P4排布的虚拟对象的优先级依次降低,可以按照虚拟对象的优先级从高到低的顺序,将每个虚拟对象排布依次排布于虚拟座位 P0、虚拟座位P7、虚拟座位P6、虚拟座位P5、虚拟座位P1、虚拟座位P2、虚拟座位 P3、以及虚拟座位P4。
在一种具体实施方式中,虚拟会话场景中的多个设定位置需排布的虚拟对象的优先级为不规则分布,该情况下,可以直接根据每个虚拟对象的优先级,以及各个设定位置的虚拟对象的优先级,对虚拟对象的位置进行排布。例如,在图7中,虚拟座位 P0、虚拟座位P7、虚拟座位P6、虚拟座位P5、虚拟座位P1、虚拟座位P2、虚拟座位 P3、以及虚拟座位P4的虚拟对象的优先级,分别为8、1、2、3、7、4、5以及6,终端设备可以直接根据虚拟对象的优先级将虚拟对象排布于多个虚拟座位。
在一些实施方式中,服务器可获取远程会话中各个终端设备的身份信息,并根据身份信息确定对应的身份类别,该身份类别可用于表示终端设备所属的组织单位,可将属于相同身份类别的终端设备对应的虚拟对象的位置设置在虚拟空间中属于同一侧的设定位置。进一步地,服务器还可按照属于同一身份类别中各个终端设备分别对应的身份级别,确定设置在同一侧设定位置的各个虚拟对象的优先级,并按照该优先级安排各个虚拟对象在同一侧中对应的设定位置。
举例说明,参与远程会话的用户包括公司A的员工1、公司A的员工2、公司A 的员工3、公司B的员工4、公司B的员工5以及公司C的员工6,其中,公司B以及公司C为相对公司A的甲方,公司A为相对公司B以及公司C的乙方,则作为乙方的员工1、员工2及员工3分别对应的虚拟对象可以排布于同一侧的位置,作为甲方的员工4、员工5以及员工6排布于同一侧的位置,并且,作为公司B的员工与公司C的员工可存在不同的身份级别,可以根据不同的身份级别排布于同一侧的不同位置。例如,请参见图7,作为乙方的公司A的员工1、员工2及员工3可排布于同一侧的虚拟座位P7、虚拟座位P6及虚拟座位P5,作为乙方的公司B的员工4、公司B的员工5 以及公司C的员工6可排布于同一侧的虚拟座位P4、虚拟座位P3及虚拟座位P2。
步骤S230:根据位置排布的结果,获取虚拟会话场景中每个虚拟对象的位置。
在本申请实施例中,步骤S230可以参阅前述实施例的内容,在此不再赘述。
步骤S240:获取远程会话中目标设备的姿态信息及位置信息。
服务器在获取到虚拟会话场景中每个终端设备对应的虚拟对象的位置后,可以根据虚拟对象的位置,获得每个虚拟对象在虚拟空间的世界坐标系中的位置(即相对世界坐标系中世界坐标原点的位置),根据每个虚拟对象在虚拟空间中的位置生成虚拟会话场景。
在一些实施方式中,服务器在根据每个虚拟对象的位置,生成虚拟会话场景时,可以获取远程会话中目标设备的姿态信息及位置信息。其中,目标设备可以为待显示虚拟会话场景的画面的终端设备,例如,可以为上述获取参与数据,根据参与数据对虚拟对象进行位置排布以及获取虚拟对象的位置的终端设备。其中,目标设备的姿态信息可以为目标设备的朝向及旋转角度,目标设备的位置信息可以为目标设备在现实场景中的位置。
步骤S250:根据位置信息及虚拟对象的位置,获取其他虚拟对象与目标设备之间的第一相对位置关系,其他虚拟对象为除目标设备外的其他终端设备对应的虚拟对象。
服务器在获取到目标设备的位置信息及姿态信息后,可以根据目标设备的位置信息以及虚拟对象的位置,确定虚拟空间中目标设备需要显示的虚拟对象与目标设备之间的第一相对位置关系。其中,目标设备需要显示的虚拟对象可以为,远程会话的终端设备中除目标设备以外的其他至少部分终端设备对应的虚拟对象。
在一些实施方式中,服务器可以根据其他虚拟对象需要在现实场景中叠加的位置与目标设备的相对位置关系、目标设备的位置信息以及虚拟会话场景中虚拟对象的位置,确定出其他虚拟对象与目标设备之间的第一相对位置关系。
步骤S260:获取其他虚拟对象的第一内容数据。
在一些实施方式中,服务器可以获取目标设备需要显示的虚拟对象的内容数据,即获取其他虚拟对象的第一内容数据。具体服务器获取内容数据的方式可以参阅前述实施例的内容,在此不再赘述。
步骤S270:基于第一相对位置关系及第一内容数据,生成包括其他虚拟对象的虚拟会话场景。
在一些实施方式中,服务器在获取到虚拟空间中其他虚拟对象与目标设备之间的第一相对位置关系,以及其他虚拟对象的第一内容数据之后,则可以根据第一相对位置关系,确定出其他虚拟对象在虚拟空间中的位置,根据其他虚拟对象在虚拟空间中的位置以及第一内容数据,生成包括其他虚拟对象的虚拟会话场景。其中,终端设备根据其他虚拟对象在虚拟空间中的位置以及第一内容数据,生成虚拟会话场景的方式可以参阅前述实施例的内容,在此不再赘述。
当然,虚拟会话场景中也还可以包括其他虚拟内容,例如虚拟桌体、虚拟椅子等,终端设备也可以生成其他虚拟内容,使生成的虚拟会话场景中包括虚拟对象以及其他虚拟内容。
步骤S280:根据姿态信息及虚拟会话场景生成用于在目标设备中显示的虚拟场景画面。
在本申请实施例中,服务器在生成虚拟会话场景之后,在生成用于目标设备显示的虚拟会话场景的虚拟场景画面时,可以根据目标设备的姿态信息以及虚拟会话场景生成。其中,虚拟会话场景为3D的虚拟场景,当目标设备的姿态信息不同时,则用户需看到的虚拟场景画面也不同,因此,服务器可以根据目标设备的姿态信息,从虚拟会话场景中确定与姿态信息对应的虚拟场景画面,并获取该虚拟场景画面的数据,根据虚拟场景画面的数据生成虚拟场景画面,因此获得了用于在目标设备中显示的虚拟场景画面,即目标设备待显示的虚拟场景画面。由于虚拟场景画面与目标设备的姿态信息对应,从而目标设备对应的用户可以通过改变目标终端的姿态,而查看不同视角方向的虚拟画面。请参见图8,图8示出了远程会议场景的场景图,用户H通过佩戴的头戴显示装置,在当前佩戴的头戴显示装置的姿态下,可以察看到用户B、用户C、用户D以及用户E对应的虚拟对象,用户H可以通过转动头部使头戴显示装置的姿态变化,从而察看到其他用户对应的虚拟对象,例如,当用户H用户向左转动头部时,也可以看见用户A等其他用户对应的虚拟对象。
在一些实施方式中,虚拟会话场景中虚拟对象的位置,也可以根据需求进行调整。因此,该虚拟场景的生成方法还可以包括:
获取终端设备发送的位置更换请求;响应位置更换请求,对发送位置更换请求的终端设备对应的虚拟对象在虚拟会话场景中的位置进行调整。
其中,位置更换请求中可以携带有需要调整至的目标位置,从而服务器可以根据位置更换请求,将发送位置更换请求的终端设备对应的虚拟对象在虚拟会话场景中的位置,调整至目标位置,以满足用户的需求。
进一步的,在虚拟会话场景中,多个终端设备对应的虚拟对象的多个位置里,可以包括远程会话中主讲者的终端设备所对应的虚拟对象的位置,主讲者的终端设备所对应的虚拟对象的位置可以作为主讲位置。主讲位置可以预先设定,该主讲位置也可以由用户通过终端设备发起位置更换请求,该位置更换请求用于指示将该用户的终端设备对应的虚拟对象在虚拟会话场景中的位置调整至主讲位置,从而实现在虚拟会话场景中,将发起位置获取请求的终端设备所对应的虚拟对象的位置,调整至主讲位置。例如,在一种远程会议的场景中,参与远程会议的参会者,可以通过终端设备发起主讲位置的位置更换请求,以使参会者的终端设备对应的虚拟对象处于远程会议中的主讲位置。
在一些实施例中,上述各个步骤的实施也可以由终端设备完成。
本申请实施例提供的虚拟场景的生成方法,根据用户的终端设备的参与数据,根据参与数据确定各个终端设备对应的虚拟对象的优先级,然后根据优先级对终端设备的虚拟对象进行位置排布,使虚拟对象位于远程会话场景中的相应位置,得到用于进行显示的虚拟会话场景,并根据终端设备的姿态信息生成虚拟会话场景的虚拟场景画面,使用户看到的虚拟场景画面与终端设备的姿态信息对应,给用户较为真实的感受,提升远程会话的效果。
请参阅图9,本申请又一实施例提供了虚拟场景的生成方法,该虚拟场景的生成方法可以包括:
步骤S310:获取远程会话中一个或者多个终端设备的参与数据。
在本申请实施例中,步骤S310可以参阅前述实施例的内容,在此不再赘述。
步骤S320:获取远程会话中处于第一现实场景中的第一终端设备,以及远程会话中处于第二现实场景的第二终端设备,第一现实场景为包括物理桌体的现场场景,第二现实场景为相对现场场景的远程场景。
该远程会话中的多个终端设备,可以有部分第一终端设备处于同一第一现实场景,并且第一现实场景中包括物理桌体,其他第二终端设备不处于第一现实场景,处于不包括物理桌体的第二现实场景,其中,其他一个或多个第二终端设备可处于同一现实场景,也可处于多个不同的现实场景。服务器在对虚拟对象的位置进行排布时,可以优先对第一现实场景中终端设备的位置进行排布,再对第二现实场景中的终端设备的位置进行排布。第二现实场景为相对现场场景的远程场景,即远程会话中没有处于第一现实场景的其他现实场景,第二现实场景可以包括多个现实场景,也可以包括一个现实场景。
在一些实施方式中,参与数据可以包括终端设备的定位位置。服务器可以根据每个终端设备的参与数据中的定位位置,确定处于第一现实场景的第一终端设备,以及处于第二现实场景的第二终端设备。
步骤S330:从第一终端设备的参与数据中获取第一终端设备与物理桌体之间的相对空间位置信息,并根据相对空间位置信息,对第一终端设备对应的虚拟对象进行虚拟会话场景中的位置排布。
在一些实施方式中,第一终端设备的参与数据还可以包括第一终端设备与物理桌体的相对空间位置信息。相对空间位置信息可以包括第一终端设备与物理桌体之间的相对位置信息以及姿态信息等,姿态信息可以为物理桌体相对第一终端设备的朝向及旋转角度等。服务器可以根据第一终端设备的参与数据,从第一终端的参与数据中,获取第一终端设备与物理桌体之间的相对空间位置信息。
进一步的,虚拟会话场景中包括多个设定位置,并且多个设定位置与物理桌体周围的多个座位分别一一对应。作为一种实施方式,服务器可根据第一终端设备与物理桌体的相对空间位置信息,获得第一终端设备相对物理桌体的位置关系,并根据第一终端设备相对物理桌体的位置关系,确定各个第一终端设备在虚拟会话场景中对应的设定位置,从而对第一终端设备对应的虚拟对象进行排布。
步骤S340:根据第一终端设备对应的虚拟对象的位置排布结果获取虚拟会话场景中的剩余排布位置。
在将第一终端设备对应的虚拟对象的位置进行排布后,服务器可以获取虚拟会话场景中的未排布的位置,并将未排布的位置确定为虚拟会话场景中的剩余排布位置,其中,未排布的位置可指的是没有对应第一终端设备的设定位置。
步骤S350:根据第二终端设备的参与数据,对第二终端设备对应的虚拟对象在剩余排布位置中进行位置排布。
服务器在获取到虚拟会话场景中的剩余排布位置后,则可以根据第二现实场景中第二终端设备的参与数据,对第二终端设备对应的虚拟对象进行位置排布。服务器根据第二终端设备的参与数据,对第二终端设备对应的虚拟对象在剩余排布位置中进行位置排布的方式可以参与前述实施例中,根据参与数据进行虚拟对象的位置排布的方式,例如根据身份信息、参与数据等进行位置排布的方式,在此不再赘述。
步骤S360:根据位置排布的结果,获取虚拟会话场景中每个虚拟对象的位置。
步骤S370:基于虚拟对象的位置,生成包含虚拟对象的虚拟会话场景。
在本申请实施例中,步骤S360以及步骤S370可以参阅前述实施例的内容,在此不再赘述。
请参见图10,图10示出了远程会议场景的场景图,用户B、用户D以及用户H 处于第一现实场景,用户A、用户F、用户G、用户C以及用户E处于第二现实场景,在进行位置排布时,可以在将用户B、用户D以及用户H的位置排布后,再将户A、用户F、用户G、用户C以及用户E排布于剩余排布位置。用户H通过佩戴的头戴显示装置,在头戴显示装置当前的姿态下,可以察看到现实场景中的部分物理桌体、用户B、及用户D,并且可以看到用户C以及用户E对应的虚拟对象。
在一些实施方式中,上述步骤的实施也可以由终端设备完成。
本申请实施例提供的虚拟场景的生成方法,根据第一现实场景中第一终端设备相对物理桌体的相对空间位置信息,对第一终端设备对应的虚拟对象在虚拟会话场景中的位置进行排布,再根据第二现实场景中第二终端设备的参与数据,对第二终端设备对应的虚拟对象在虚拟会话场景中的位置进行排布,使虚拟对象位于远程会话场景中的相应位置,得到用于进行显示的虚拟会话场景,使部分虚拟会话场景中虚拟对象的位置与现实场景中相对物理桌体的位置对应,给用户较为真实的感受,提升远程会话的效果。
请参阅图11,本申请再一实施例提供了虚拟场景的生成方法,该虚拟场景的生成方法可以包括:
步骤S410:获取远程会话中一个或者多个终端设备的参与数据。
步骤S420:根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布。
步骤S430:根据位置排布的结果,获取虚拟会话场景中每个虚拟对象的位置。
在本申请实施例中,步骤S410、步骤S420以及步骤S430可以参阅前述实施例的内容,在此不再赘述。
步骤S440:根据参与远程会话的终端设备的数量,确定与数量对应的虚拟桌体。
在一些实施方式中,虚拟会话场景中可以包括虚拟桌体。终端设备还可以参与远程会话的终端设备的数量,确定与数量对应的虚拟桌体。例如,参与远程会话的终端设备的数量在6个时,虚拟桌体对应的位置数量为6。又例如,虚拟圆桌对应的位置数量为至少4个,虚拟方桌对应的位置数量为4个以上,则参与远程会话的终端设备的数量在4个及以下时,虚拟桌体为虚拟圆桌,参与远程会话的终端设备的数量在4个以上时,虚拟桌体为虚拟方桌。
在一些实施方式中,当参与远程会话的用户包括甲方以及乙方的角色时,还可以根据甲方数量确定虚拟桌体的形状。例如,甲方有2家,则虚拟桌体可以为长方形,如果为5家,则虚拟桌体可以为六边形、七边形等。
步骤S450:获取远程会话中目标设备的姿态信息及位置信息。
在本申请实施例中,步骤S450可以参阅前述实施例的内容,在此不再赘述。
步骤S460:根据位置信息及其他虚拟对象相对虚拟桌体的位置,获取其他虚拟对象与目标设备之间的第二相对位置关系,并获取虚拟桌体与目标设备之间的第三相对位置关系,其他虚拟对象为除目标设备外的其他终端设备对应的虚拟对象。
服务器在获取到目标设备的位置信息及姿态信息后,可以根据目标设备的位置信息以及其他虚拟对象相对虚拟桌体的位置,确定虚拟空间中目标设备需要显示的虚拟对象与目标设备之间的第二相对位置关系,以及虚拟桌体与目标设备之间的第三相对位置关系。其中,目标设备需要显示的虚拟对象可以为,远程会话的终端设备中除目标设备以外的其他至少部分终端设备对应的虚拟对象。也就是说,目标设备在显示虚拟会话场景的画面时,仅需要显示其他终端设备所对应的虚拟对象,以提升虚拟会话场景显示时的真实感。
在一些实施方式中,获取虚拟空间中其他虚拟对象与目标设备之间的第二相对位置关系可以参阅前述实施例的内容,在此不再赘述。
在一些实施方式中,虚拟会话场景中虚拟桌体与目标设备之间的第三相对位置关系,可以与目标设备的位置信息及姿态信息对应。作为一种具体实施方式,服务器可以根据目标设备的位置信息及姿态信息,确定一个现实场景中的参考平面,虚拟桌体需要叠加显示的位置与参考平面对应,根据参考平面在目标设备所在现实场景中的位置,可以确定出虚拟空间中虚拟桌体与目标设备之间的第三相对位置关系。上述参考平面可以为现实场景中实物的平面,例如实体桌面、标记物所在平面等。从而,虚拟桌体在虚拟会话场景中的位置与目标设备的位置信息及姿态信息对应,可以提升虚拟会话场景的真实感。
另外,还可以根据目标设备的姿态信息,获得目标设备的姿态角,当目标设备的姿态角达到设定角度时,服务器才能得到虚拟桌体与目标设备之间的第三相对位置关系。也就是说,目标设备的姿态角达到设定角度时,目标设备才可以显示虚拟会话场景中的虚拟桌体。
步骤S470:获取其他虚拟对象的第一内容数据以及虚拟桌体的第二内容数据。
在一些实施方式中,服务器可以获取其他虚拟对象的第一内容数据以及虚拟桌体的第二内容数据。具体服务器获取内容数据的方式可以参阅前述实施例的内容,在此不再赘述。
步骤S480:基于第二相对位置关系、第三相对位置关系、第一内容数据以及第二内容数据,生成包括虚拟桌体以及其他虚拟对象的虚拟会话场景。
在本申请实施例中,服务器根据第二相对位置关系、第三相对位置关系、第一内容数据以及第二内容数据,生成虚拟会话场景的方式可以参阅前述实施例的内容,在此不再赘述。
步骤S490:根据姿态信息及虚拟会话场景生成用于在目标设备中显示的虚拟场景画面。
在本申请实施例中,步骤S490可以参阅前述实施例的内容,在此不再赘述。
在一些实施方式中,对于后续加入远程会话的终端设备,可以是在当前参与远程会话的终端设备对应的虚拟对象的位置基础上增加位置,此时可以根据情况确定是否需要扩充虚拟桌体,也可以是根据新加入远程会话的终端设备的参与数据(例如身份信息、远程会话中的角色等)增加到适当位置,之前参与远程会话的终端设备对应的虚拟对象的位置适应性调整。
在一些实施方式中,上述步骤也可以由终端设备完成。
本申请实施例提供的虚拟场景的生成方法,可以获得用于在目标设备中显示的虚拟场景画面,由于虚拟场景画面与目标设备的姿态信息对应,从而目标设备对应的用户可以通过改变目标终端的姿态,而查看不同视角方向的虚拟画面。另外,虚拟场景画面中包括了虚拟桌体,可以给用户更加真实的远程会话体验。
在前述实施例中,终端设备可以为外接式/接入式的头戴显示装置,头戴显示装置与服务器连接。其中,头戴显示装置可以仅完成虚拟画面的显示,上述关于虚拟场景的生成的执行,均可由服务器完成,服务器在生成虚拟会话场景后,将虚拟会话场景的虚拟场景画面传输至头戴显示装置,头戴显示装置即可完成虚拟场景画面的显示。
请参见图12,其示出了本申请提供的一种虚拟场景的生成装置400的结构框图。该虚拟场景的生成装置400包括:数据获取模块410、位置排布模块420、位置获取模块430以及场景生成模块440。其中,数据获取模块410用于获取远程会话中一个或者多个终端设备的参与数据;位置排布模块420用于根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;位置获取模块430用于根据位置排布的结果,获取虚拟会话场景中每个虚拟对象的位置;场景生成模块440用于基于虚拟对象的位置,生成包含虚拟对象的虚拟会话场景。
在一些实施方式中,位置排布模块420可以具体用于:根据参与数据,确定每个终端设备对应的虚拟对象在虚拟会话场景中的优先级;根据每个虚拟对象的优先级,对每个虚拟对象进行虚拟会话场景中的位置排布。
在一些实施方式中,参与数据包括终端设备参与远程会话的参与时间。位置排布模块420根据参与数据,确定每个终端设备对应的虚拟对象在虚拟会话场景中的优先级,可以包括:按照各个终端设备参与时间的先后顺序,对各个终端设备对应的虚拟对象在虚拟会话场景中的优先级进行从高到低的排序,得到各个终端设备对应的虚拟对象的优先级。
在一些实施方式中,参与数据包括终端设备对应的身份信息。位置排布模块420根据参与数据,确定每个终端设备对应的虚拟对象在虚拟会话场景中的优先级,包括:根据各个终端设备的身份信息获取各个终端设备对应的身份级别;按照各个终端设备对应的身份级别的从高到低的顺序,对各个终端设备对应的虚拟对象在虚拟会话场景中的优先级进行从高到低的排序,得到各个终端设备对应的虚拟对象的优先级。
在一些实施方式中,位置排布模块420可以具体用于:获取远程会话中处于第一现实场景中的第一终端设备,以及远程会话中处于第二现实场景的第二终端设备,第一现实场景为包括物理桌体的现场场景,第二现实场景为相对现场场景的远程场景;从第一终端设备的参与数据中获取第一终端设备与物理桌体之间的相对空间位置信息,并根据相对空间位置信息,对第一终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;根据第一终端设备对应的虚拟对象的位置排布结果获取虚拟会话场景中的剩余排布位置;根据第二终端设备的参与数据,对第二终端设备对应的虚拟对象在剩余排布位置中进行位置排布。
在一些实施方式中,场景生成模块440可以具体用于:获取远程会话中目标设备的姿态信息及位置信息;根据位置信息及虚拟对象的位置,获取其他虚拟对象与目标设备之间的第一相对位置关系,其他虚拟对象为除目标设备外的其他终端设备对应的虚拟对象;获取其他虚拟对象的第一内容数据;基于第一相对位置关系及第一内容数据,生成包括其他虚拟对象的虚拟会话场景;根据姿态信息及虚拟会话场景生成用于在目标设备中显示的虚拟场景画面。
在一些实施方式中,虚拟会话场景还包括虚拟桌体,虚拟对象的位置包括虚拟对象相对虚拟桌体的位置。场景生成模块440可以具体用于:基于虚拟对象的位置,生成包含虚拟对象的虚拟会话场景,包括:根据参与远程会话的终端设备的数量,确定与数量对应的虚拟桌体;获取远程会话中目标设备的姿态信息及位置信息;根据位置信息、姿态信息及其他虚拟对象相对虚拟桌体的位置,获取其他虚拟对象与目标设备之间的第二相对位置关系,并获取虚拟桌体与目标设备之间的第三相对位置关系,其他虚拟对象为除目标设备外的其他终端设备对应的虚拟对象;获取其他虚拟对象的第一内容数据以及虚拟桌体的第二内容数据;基于第二相对位置关系、第三相对位置关系、第一内容数据以及第二内容数据,生成包括虚拟桌体以及其他虚拟对象的虚拟会话场景;根据姿态信息及虚拟会话场景生成用于在目标设备中显示的虚拟场景画面。
在一些实施方式中,虚拟场景的生成装置400还可以包括:请求获取模块以及场景调整模块。请求获取模块可以用于获取终端设备发送的位置更换请求;场景调整模块可以用于响应位置更换请求,对发送位置更换请求的终端设备对应的虚拟对象在虚拟会话场景中的位置进行调整。
综上,本申请提供的方案,通过获取远程会话中一个或者多个终端设备的参与数据,根据参与数据,对每个终端设备对应的虚拟对象进行虚拟会话场景中的位置排布,根据位置排布结果,获取虚拟会话场景中每个虚拟对象的位置,基于虚拟对象的位置,生成包含虚拟对象的虚拟会话场景。因此,可以根据用户的终端设备的参与数据,对参与远程会话的终端设备的虚拟对象进行位置排布,使虚拟对象加入到远程会话场景中的相应位置,得到用于进行显示的虚拟会话场景,给用户更加真实的感受,提升远程会话的效果。
在本申请实施例中,执行上述实施例提供的虚拟场景的生成方法的电子设备可以是服务器,也可以是终端设备。
请参考图13,其示出了本申请实施例提供的一种终端设备的结构框图。该终端设备100可以是智能手机、平板电脑、头戴显示装置等能够运行应用程序的终端设备。本申请中的终端设备100可以包括一个或多个如下部件:处理器110、存储器120以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个终端设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行终端设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing, DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器110 可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作***、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作***的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端设备100在使用中所创建的数据等。
在一些实施例中,终端设备100还可以包括图像传感器130,用于采集现实物体的图像以及采集目标场景的场景图像。图像传感器130可以为红外相机,也可以是可见光相机,具体类型在本申请实施例中并不作为限定。
在一个实施例中,终端设备为头戴显示装置,除了包括上述的处理器、存储器及图像传感器外,还可包括如下一个或多个部件:显示模组、光学模组、通信模块以及电源。
显示模组可包括显示控制单元。显示控制单元用于接收处理器渲染后的虚拟内容的显示图像,然后将该显示图像显示并投射至光学模组上,使用户能够通过光学模组观看到虚拟内容。其中,显示装置可以是显示屏或投射装置等,可用于显示图像。
光学模组可采用离轴光学***或波导光学***,显示装置显示的显示图像经光学模组后,能够被投射至用户的眼睛。用户在通过光学模组看到显示装置投射的显示图像的同时。在一些实施方式中,用户还能够透过光学模组观察到现实环境,感受虚拟内容与现实环境叠加后的增强现实效果。
通信模块可以是蓝牙、WiFi(Wireless-Fidelity,无线保真)、ZigBee(紫峰技术)等模块,头戴显示装置可通过通信模块与终端设备建立通信连接。与终端设备通信连接的头戴显示装置,可以与终端设备进行信息以及指令的交互。例如,头戴显示装置可以通过通信模块接收终端设备的发送的图像数据,根据所接收的图像数据生成虚拟世界的虚拟内容进行显示。
电源可为整个头戴显示装置进行供电,保证头戴显示装置各个部件的正常运行。
请参见图14,其示出了本申请实施例提供的一种服务器的结构框图。该服务器200可以为云服务器、本地服务器等,服务器200可以包括一个或多个如下部件:处理器 210、存储器220以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器220中并被配置为由一个或多个处理器210执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
请参考图15,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读存储介质800中存储有程序代码,程序代码可被处理器调用执行上述方法实施例中所描述的方法。
该计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800 包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (9)
1.一种虚拟场景的生成方法,其特征在于,所述方法包括:
获取远程会话中一个或者多个终端设备的参与数据,所述参与数据包括所述终端设备对应用户的身份信息、所述终端设备加入远程会话的时间、所述终端设备于现实场景中的空间位置、所述终端设备的姿态、以及所述终端设备的所处地点中的一种或者多种数据;
根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;
根据位置排布的结果,获取所述虚拟会话场景中每个所述虚拟对象的位置;
基于所述虚拟对象的位置,生成包含所述虚拟对象的虚拟会话场景,所述虚拟会话场景包括目标设备中显示的虚拟场景画面,所述虚拟场景画面根据所述虚拟对象的位置、其他虚拟对象的第一内容数据、所述目标设备的姿态信息及位置信息生成,所述其他虚拟对象为除所述目标设备外的其他终端设备对应的虚拟对象;
所述根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布,包括:
获取所述远程会话中处于第一现实场景中的第一终端设备,以及所述远程会话中处于第二现实场景的第二终端设备,所述第一现实场景为包括物理桌体的现场场景,所述第二现实场景为相对所述现场场景的远程场景;
从所述第一终端设备的参与数据中获取所述第一终端设备与所述物理桌体之间的相对空间位置信息,并根据所述相对空间位置信息,对所述第一终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;
根据所述第一终端设备对应的虚拟对象的位置排布结果获取所述虚拟会话场景中的剩余排布位置;
根据所述第二终端设备的参与数据,对所述第二终端设备对应的虚拟对象在所述剩余排布位置中进行位置排布。
2.根据权利要求1所述的方法,其特征在于,所述根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布,包括:
根据所述参与数据,确定每个所述终端设备对应的虚拟对象在虚拟会话场景中的优先级;
根据每个所述虚拟对象的优先级,对每个所述虚拟对象进行所述虚拟会话场景中的位置排布。
3.根据权利要求2所述的方法,其特征在于,所述参与数据包括终端设备参与所述远程会话的参与时间,所述根据所述参与数据,确定每个所述终端设备对应的虚拟对象在虚拟会话场景中的优先级,包括:
按照各个终端设备参与时间的先后顺序,对所述各个终端设备对应的虚拟对象在虚拟会话场景中的优先级进行从高到低的排序,得到所述各个终端设备对应的虚拟对象的优先级。
4.根据权利要求2所述的方法,其特征在于,所述参与数据包括终端设备对应的身份信息,所述根据所述参与数据,确定所述每个所述终端设备对应的虚拟对象在虚拟会话场景中的优先级,包括:
根据各个终端设备的身份信息获取所述各个终端设备对应的身份级别;
按照所述各个终端设备对应的所述身份级别的从高到低的顺序,对所述各个终端设备对应的虚拟对象在虚拟会话场景中的优先级进行从高到低的排序,得到所述各个终端设备对应的虚拟对象的优先级。
5.根据权利要求1所述的方法,其特征在于,所述基于所述虚拟对象的位置,生成所述虚拟会话场景,包括:
获取所述远程会话中目标设备的姿态信息及位置信息;
根据所述位置信息及所述虚拟对象的位置,获取其他虚拟对象与所述目标设备之间的第一相对位置关系,所述其他虚拟对象为除所述目标设备外的其他终端设备对应的虚拟对象;
获取所述其他虚拟对象的第一内容数据;
基于所述第一相对位置关系及所述第一内容数据,生成包括所述其他虚拟对象的所述虚拟会话场景;
根据所述姿态信息及所述虚拟会话场景生成用于在所述目标设备中显示的虚拟场景画面。
6.根据权利要求1所述的方法,其特征在于,所述虚拟会话场景还包括虚拟桌体,所述虚拟对象的位置包括虚拟对象相对所述虚拟桌体的位置;
所述基于所述虚拟对象的位置,生成包含所述虚拟对象的虚拟会话场景,包括:
根据参与所述远程会话的终端设备的数量,确定与所述数量对应的所述虚拟桌体;
获取所述远程会话中目标设备的姿态信息及位置信息;
根据所述位置信息、姿态信息及其他虚拟对象相对所述虚拟桌体的位置,获取所述其他虚拟对象与所述目标设备之间的第二相对位置关系,并获取所述虚拟桌体与所述目标设备之间的第三相对位置关系,所述其他虚拟对象为除所述目标设备外的其他终端设备对应的虚拟对象;
获取所述其他虚拟对象的第一内容数据以及所述虚拟桌体的第二内容数据;
基于所述第二相对位置关系、第三相对位置关系、第一内容数据以及第二内容数据,生成包括所述虚拟桌体以及所述其他虚拟对象的所述虚拟会话场景;
根据所述姿态信息及所述虚拟会话场景生成用于在所述目标设备中显示的虚拟场景画面。
7.一种虚拟会议场景的生成装置,其特征在于,所述装置包括:数据获取模块、位置排布模块、位置获取模块以及场景生成模块,其中,
所述数据获取模块用于获取远程会话中一个或者多个终端设备的参与数据,所述参与数据包括所述终端设备对应用户的身份信息、所述终端设备加入远程会话的时间、所述终端设备于现实场景中的空间位置、所述终端设备的姿态、以及所述终端设备的所处地点中的一种或者多种数据;
所述位置排布模块用于根据所述参与数据,对每个所述终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;
所述位置获取模块用于根据位置排布的结果,获取所述虚拟会话场景中每个所述虚拟对象的位置;
所述场景生成模块用于基于所述虚拟对象的位置,生成包含所述虚拟对象的虚拟会话场景,所述虚拟会话场景包括目标设备中显示的虚拟场景画面,所述虚拟场景画面根据所述虚拟对象的位置、其他虚拟对象的第一内容数据、所述目标设备的姿态信息及位置信息生成,所述其他虚拟对象为除所述目标设备外的其他终端设备对应的虚拟对象;
所述位置获取模块还用于获取所述远程会话中处于第一现实场景中的第一终端设备,以及所述远程会话中处于第二现实场景的第二终端设备,所述第一现实场景为包括物理桌体的现场场景,所述第二现实场景为相对所述现场场景的远程场景;从所述第一终端设备的参与数据中获取所述第一终端设备与所述物理桌体之间的相对空间位置信息,并根据所述相对空间位置信息,对所述第一终端设备对应的虚拟对象进行虚拟会话场景中的位置排布;根据所述第一终端设备对应的虚拟对象的位置排布结果获取所述虚拟会话场景中的剩余排布位置;根据所述第二终端设备的参与数据,对所述第二终端设备对应的虚拟对象在所述剩余排布位置中进行位置排布。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-6任一项所述的方法。
9.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910578450.1A CN110427227B (zh) | 2019-06-28 | 2019-06-28 | 虚拟场景的生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910578450.1A CN110427227B (zh) | 2019-06-28 | 2019-06-28 | 虚拟场景的生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110427227A CN110427227A (zh) | 2019-11-08 |
CN110427227B true CN110427227B (zh) | 2023-01-06 |
Family
ID=68408861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910578450.1A Active CN110427227B (zh) | 2019-06-28 | 2019-06-28 | 虚拟场景的生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110427227B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835531B (zh) * | 2020-07-30 | 2023-08-25 | 腾讯科技(深圳)有限公司 | 会话处理方法、装置、计算机设备及存储介质 |
CN111966222A (zh) * | 2020-08-12 | 2020-11-20 | 徐雪峰 | 一种高安全性vr虚拟现实装置、***及方法 |
CN112601047B (zh) * | 2021-02-22 | 2021-06-22 | 深圳平安智汇企业信息管理有限公司 | 基于虚拟会议场景终端的投影方法、装置以及计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101303773A (zh) * | 2008-06-10 | 2008-11-12 | 中国科学院计算技术研究所 | 一种虚拟场景生成方法及*** |
CN102170361A (zh) * | 2011-03-16 | 2011-08-31 | 西安电子科技大学 | 基于虚拟现实的网络会议方法 |
CN107071334A (zh) * | 2016-12-24 | 2017-08-18 | 深圳市虚拟现实技术有限公司 | 基于虚拟现实技术的3d视频会议方法和设备 |
CN108881784A (zh) * | 2017-05-12 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 虚拟场景实现方法、装置、终端及服务器 |
CN108961421A (zh) * | 2018-06-27 | 2018-12-07 | 深圳中兴网信科技有限公司 | 虚拟空间的控制方法、控制***和计算机可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9058693B2 (en) * | 2012-12-21 | 2015-06-16 | Dassault Systemes Americas Corp. | Location correction of virtual objects |
US20170154468A1 (en) * | 2015-12-01 | 2017-06-01 | Le Holdings (Beijing) Co., Ltd. | Method and electronic apparatus for constructing virtual reality scene model |
-
2019
- 2019-06-28 CN CN201910578450.1A patent/CN110427227B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101303773A (zh) * | 2008-06-10 | 2008-11-12 | 中国科学院计算技术研究所 | 一种虚拟场景生成方法及*** |
CN102170361A (zh) * | 2011-03-16 | 2011-08-31 | 西安电子科技大学 | 基于虚拟现实的网络会议方法 |
CN107071334A (zh) * | 2016-12-24 | 2017-08-18 | 深圳市虚拟现实技术有限公司 | 基于虚拟现实技术的3d视频会议方法和设备 |
CN108881784A (zh) * | 2017-05-12 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 虚拟场景实现方法、装置、终端及服务器 |
CN108961421A (zh) * | 2018-06-27 | 2018-12-07 | 深圳中兴网信科技有限公司 | 虚拟空间的控制方法、控制***和计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
虚拟现实技术在环境艺术设计中的应用分析;万国;《现代信息科技》;20180425(第04期);第96-98页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110427227A (zh) | 2019-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI650675B (zh) | 群組視頻會話的方法及系統、終端、虛擬現實設備及網路設備 | |
US10952006B1 (en) | Adjusting relative left-right sound to provide sense of an avatar's position in a virtual space, and applications thereof | |
US11140361B1 (en) | Emotes for non-verbal communication in a videoconferencing system | |
US11765318B2 (en) | Placement of virtual content in environments with a plurality of physical participants | |
EP3954111A1 (en) | Multiuser asymmetric immersive teleconferencing | |
CN110413108B (zh) | 虚拟画面的处理方法、装置、***、电子设备及存储介质 | |
CN111527525A (zh) | 混合现实服务提供方法及*** | |
CN110427227B (zh) | 虚拟场景的生成方法、装置、电子设备及存储介质 | |
CN110418095B (zh) | 虚拟场景的处理方法、装置、电子设备及存储介质 | |
CN110401810B (zh) | 虚拟画面的处理方法、装置、***、电子设备及存储介质 | |
US11457178B2 (en) | Three-dimensional modeling inside a virtual video conferencing environment with a navigable avatar, and applications thereof | |
CN111064919A (zh) | 一种vr远程会议方法及装置 | |
CN110610546B (zh) | 视频画面显示方法、装置、终端及存储介质 | |
CN110536095A (zh) | 通话方法、装置、终端及存储介质 | |
US20230236713A1 (en) | Established perspective user interface and user experience for video meetings | |
CN114549744A (zh) | 一种构建虚拟三维会议场景的方法、服务器和ar设备 | |
US20240087236A1 (en) | Navigating a virtual camera to a video avatar in a three-dimensional virtual environment, and applications thereof | |
US11928774B2 (en) | Multi-screen presentation in a virtual videoconferencing environment | |
CN110413109A (zh) | 虚拟内容的生成方法、装置、***、电子设备及存储介质 | |
CN116420351A (zh) | 提供虚拟会议中的发送参与者的3d表示 | |
US11776227B1 (en) | Avatar background alteration | |
US11741652B1 (en) | Volumetric avatar rendering | |
US11748939B1 (en) | Selecting a point to navigate video avatars in a three-dimensional environment | |
US12028651B1 (en) | Integrating two-dimensional video conference platforms into a three-dimensional virtual environment | |
US20240007593A1 (en) | Session transfer in a virtual videoconferencing environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |