CN113608613B - 虚拟现实互动方法、装置、电子设备及计算机可读介质 - Google Patents
虚拟现实互动方法、装置、电子设备及计算机可读介质 Download PDFInfo
- Publication number
- CN113608613B CN113608613B CN202110872357.9A CN202110872357A CN113608613B CN 113608613 B CN113608613 B CN 113608613B CN 202110872357 A CN202110872357 A CN 202110872357A CN 113608613 B CN113608613 B CN 113608613B
- Authority
- CN
- China
- Prior art keywords
- scene
- target
- user
- coordinate
- preset
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9554—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL] by using bar codes
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/024—Multi-user, collaborative environment
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了虚拟现实互动方法、装置、电子设备及计算机可读介质,涉及计算机技术领域,具体涉及移动互联技术领域,该方法包括:接收虚拟现实互动请求,生成分享标识;响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,确定用户在预设虚拟场景中所选择的目标视角场景;响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值;基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。通过分享标识向其他用户分享VR场景,可以适配电脑,手机等不同终端,可以线上无限制分享,无硬件限制,降低成本,无地理位置和数量上的限制,应用范围更广,并可以实时同步用户视角场景,实现VR场景的多用户互动分享。
Description
技术领域
本申请涉及计算机技术领域,具体涉及移动互联技术领域,尤其涉及一种虚拟现实互动方法、装置、电子设备及计算机可读介质。
背景技术
目前,实现虚拟现实(Virtual Reality,VR)场景时,VR场景的交互多是服务器-客户机Client-Server(C/S)结构,通过大量硬件设备满足用户的VR效果需求,多用户的互动也局限在硬件设备上。需要先保证设备之间的数据传送,或将VR的画面扩展到其他硬件设备上,极大限制了VR体验效果的多用户分享和传播。
在实现本申请过程中,发明用户发现现有技术中至少存在如下问题:
需要数量较多的硬件设备来支持VR场景中的多用户互动效果,设备成本较高。
发明内容
有鉴于此,本申请实施例提供一种虚拟现实互动方法、装置、电子设备及计算机可读介质,能够解决现有的需要数量多的硬件设备来支持VR场景中的多用户互动效果,设备成本较高的问题。
为实现上述目的,根据本申请实施例的一个方面,提供了一种虚拟现实互动方法,包括:
接收虚拟现实互动请求,进而生成分享标识;
响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景;
响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值;
基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。
可选地,在接收虚拟现实互动请求之前,方法还包括:
获取目标全景图片,进而利用深度映射算法,以基于目标全景图片创建深度图;
根据深度图创建目标全景图片对应的预设虚拟场景。
可选地,在接收虚拟现实互动请求之前,方法还包括:
响应于确定用户选中目标全景图片,根据目标全景图片对应的预设虚拟场景生成对应的虚拟现实互动请求。
可选地,基于预设的场景同步插值参数确定变化值,包括:
获取预设虚拟场景对应的场景相机的第一位置坐标和第一旋转坐标;
获取目标视角场景对应的场景相机的第二位置坐标和第二旋转坐标;
确定第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值;
根据第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值和预设的场景同步插值参数确定变化值。
可选地,根据第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值和预设的场景同步插值参数确定变化值,包括:
计算第一位置坐标和第二位置坐标的差值与预设的场景同步插值参数的乘积,进而确定为位置坐标变化值;
计算第一旋转坐标和第二旋转坐标的差值与预设的场景同步插值参数的乘积,进而确定为旋转坐标变化值。
可选地,基于变化值,更新目标视角场景,包括:
基于位置坐标变化值和第二位置坐标,确定目标位置坐标;
基于旋转坐标变化值和第二旋转坐标,确定目标旋转坐标;
根据目标位置坐标和目标旋转坐标调整目标视角场景,以对目标视角场景进行更新。
可选地,根据目标位置坐标和目标旋转坐标调整目标视角场景,包括:
根据目标位置坐标和目标旋转坐标调整目标视角场景对应的场景相机的位置坐标和旋转坐标,以调整目标视角场景。
另外,本申请还提供了一种虚拟现实互动装置,包括:
接收单元,被配置成接收虚拟现实互动请求,进而生成分享标识;
目标视角场景确定单元,被配置成响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景;
变化值确定单元,被配置成响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值;
更新单元,被配置成基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。
可选地,虚拟现实互动装置还包括虚拟场景创建单元,被配置成:
获取目标全景图片,进而利用深度映射算法,以基于目标全景图片创建深度图;
根据深度图创建目标全景图片对应的预设虚拟场景。
可选地,虚拟现实互动装置还包括请求生成单元,被配置成:
响应于确定用户选中目标全景图片,根据目标全景图片对应的预设虚拟场景生成对应的虚拟现实互动请求。
可选地,变化值确定单元进一步被配置成:
获取预设虚拟场景对应的场景相机的第一位置坐标和第一旋转坐标;
获取目标视角场景对应的场景相机的第二位置坐标和第二旋转坐标;
确定第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值;
根据第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值和预设的场景同步插值参数确定变化值。
可选地,变化值确定单元进一步被配置成:
计算第一位置坐标和第二位置坐标的差值与预设的场景同步插值参数的乘积,进而确定为位置坐标变化值;
计算第一旋转坐标和第二旋转坐标的差值与预设的场景同步插值参数的乘积,进而确定为旋转坐标变化值。
可选地,更新单元进一步被配置成:
基于位置坐标变化值和第二位置坐标,确定目标位置坐标;
基于旋转坐标变化值和第二旋转坐标,确定目标旋转坐标;
根据目标位置坐标和目标旋转坐标调整目标视角场景,以对目标视角场景进行更新。
可选地,更新单元进一步被配置成:
根据目标位置坐标和目标旋转坐标调整目标视角场景对应的场景相机的位置坐标和旋转坐标,以调整目标视角场景。
另外,本申请还提供了一种虚拟现实互动电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述的虚拟现实互动方法。
另外,本申请还提供了一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现如上述的虚拟现实互动方法。
上述发明中的一个实施例具有如下优点或有益效果:本申请通过接收虚拟现实互动请求,进而生成分享标识;响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景;响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值;基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。通过分享标识(即可以是分享链接或分享二维码)向其他用户分享VR场景,可以适配电脑,手机等不同终端,降低硬件设备门槛,可以线上无限制分享,没有硬件上的限制,成本大大降低,也没有地理位置和数量上的限制,应用范围更广,并可以实时同步用户视角场景,实现VR场景的多用户互动分享。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本申请,不构成对本申请的不当限定。其中:
图1是根据本申请第一实施例的虚拟现实互动方法的主要流程的示意图;
图2是根据本申请第二实施例的虚拟现实互动方法的主要流程的示意图;
图3是根据本申请第三实施例的虚拟现实互动方法的应用场景示意图;
图4是根据本申请实施例的虚拟现实互动装置的主要单元的示意图;
图5是本申请实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术用户员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本申请第一实施例的虚拟现实互动方法的主要流程的示意图,如图1所示,虚拟现实互动方法包括:
步骤S101,接收虚拟现实互动请求,进而生成分享标识。
本实施例中,虚拟现实互动方法的执行主体(例如,可以是服务器或者是浏览器中的处理器)可以通过有线连接或无线连接的方式,接收一个或多个虚拟现实互动请求。执行主体可以在接收到虚拟现实互动请求后,生成该虚拟现实互动请求对应的用户要参与互动的预设虚拟场景的分享标识。
分享标识可以包括预设虚拟场景的分享链接或者分享二维码。用户可以通过点击分享链接或者扫描分享二维码进入预设虚拟场景与多用户进行互动。
示例的,执行主体可以首先在显示屏上展示多个预设虚拟场景图片,以供用户选择多个预设虚拟场景图片中的目标虚拟场景图片,也就是用户想要参与互动的虚拟场景对应的虚拟场景图片。其中,多个预设虚拟场景图片已经关联有各自对应的预设虚拟场景。用户只要点击想要参与互动的预设虚拟场景图片,即目标虚拟场景图片,则执行主体可以检测到用户对目标虚拟场景图片的选择操作,进而调用请求生成单元基于目标虚拟场景图片生成虚拟现实互动请求。可以由执行主体中的接收单元接收虚拟现实互动请求,进而生成分享标识。
步骤S102,响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景。
具体地,确认操作可以包括用户对分享链接的点击操作或者是用户对分享二维码的扫描操作。执行主体检测到用户对分享标识的点击操作或者对分享标识的扫描操作,可以添加发送虚拟现实互动请求的用户至预设虚拟场景中,例如可以对用户对应的用户端开放虚拟场景共享权限,以便于用户可以在预设虚拟场景中进行互动。并接收用户对应的用户端(例如可以是用户的手机)发送的对于预设虚拟场景的配置信息,在该配置信息中包含了用户所选择的在预设虚拟场景中的目标视角,从而用户可以基于在预设虚拟场景中的目标视角,查看目标视角场景。进而执行主体可以根据用户发送的配置信息中的目标视角信息确定用户在预设虚拟场景中所选择的目标视角场景。
示例的,目标视角信息可以包括目标视角场景相机相对于预设虚拟场景相机的三维坐标以及目标视角场景相机拍摄预设虚拟场景的角度。其中,目标视角场景相机即用于拍摄目标视角场景图片进而生成目标视角场景的相机。例如在用户所处的预设虚拟场景中的位置处摆放一相机,用于拍摄用户想要的目标视角场景的图片,该拍摄的图片用于生成用户在预设虚拟场景所处位置处的目标视角场景。预设虚拟场景相机即用于拍摄目标全景图片进而生成预设虚拟场景的相机。预设虚拟场景相机的具体摆放位置可以预先设定。本申请对此不做具体限定。
步骤S103,响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值。
具体地,基于预设的场景同步插值参数确定变化值,包括:
获取预设虚拟场景对应的场景相机的第一位置坐标,例如P(px,py,pz)和第一旋转坐标,例如R(rx,ry,rz);
获取目标视角场景对应的场景相机的第二位置坐标,例如,P1(px1,py1,pz1)和第二旋转坐标R1(rx1,ry1,rz1),即被分享用户所看到的场景的初始位置和角度。
具体地,执行主体通过监听VR场景的变化,场景变化前执行主体可以获取分享用户和各被分享用户的用户位置、用户视角,以调节所有VR场景观览位置和角度实时保持一致。即初始的时候,分享用户和各被分享用户位于同一预设虚拟场景中时,所有场景的相机(包括预设虚拟场景的相机和各目标视角场景的相机)的三维坐标和三维旋转坐标一致。可以避免在互动过程中的画面卡顿。示例的,被分享用户(在本申请各实施例中,也就是请求参与互动的用户)与分享用户(在本申请各实施例中,也就是分享预设虚拟场景的用户)匹配后,在预设虚拟场景中的初始位置和角度是相同的,也就是分享用户和各个被分享用户在初始时同步画面,在初始时看到的画面是一致的。同步画面后,被分享用户可以自选在预设虚拟场景中的视角,但是无法移动预设虚拟场景相机的坐标位置;只有分享用户可以移动预设虚拟场景相机的坐标位置,当分享用户移动预设虚拟场景相机的坐标位置后,此时被分享用户的位置也会跟随变化。
确定第一位置坐标和第二位置坐标的差值,例如,可以是(px-px1,py-py1,pz-pz1)、第一旋转坐标和第二旋转坐标的差值,例如,可以是(rx-rx1,ry-ry1,rz-rz1);
根据第一位置坐标和第二位置坐标的差值,例如(px-px1,py-py1,pz-pz1)、第一旋转坐标和第二旋转坐标的差值,例如(rx-rx1,ry-ry1,rz-rz1)和预设的场景同步插值参数(例如可以是t,t的取值区间[0,1],t越接近1同步效率越高),确定变化值,例如可以是(px-px1)t、(py-py1)t、(pz-pz1)t,例如(rx-rx1)t、(ry-ry1)t、(rz-rz1)t。
本实施例中的场景同步插值参数t是为了控制虚拟场景同步的效果。具体地,使用场景同步插值参数t的原因可以是:在进行虚拟现实互动过程中,网络无法达到完全同步,使用场景同步插值参数t进行计算可以模拟预设虚拟场景分享用户的动态,弥补因网络空缺造成的画面卡顿。具体地,场景同步插值参数t可以根据同步虚拟场景的每一帧的执行时间来确定。
示例的,本申请实施例中,t=deltaTime*speed。
t:插值参数;deltaTime:程序执行的帧率,帧率的值与手机或电脑的cpu有关,平均值为0.02,真实数值一般在0.02上下浮动;speed:程序控制的速度,默认为10,一般取值为1~10,speed越大,相机同步效率越快,speed越小,相机跟随会有拖尾或者延迟的效果。
具体地,根据第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值和预设的场景同步插值参数确定变化值,包括:
计算第一位置坐标和第二位置坐标的差值与预设的场景同步插值参数的乘积,进而确定为位置坐标变化值。位置坐标变化值,例如可以是(px-px1)t、(py-py1)t、(pz-pz1)t。
计算第一旋转坐标和第二旋转坐标的差值与预设的场景同步插值参数的乘积,进而确定为旋转坐标变化值。旋转坐标变化值,例如可以是(rx-rx1)t、(ry-ry1)t、(rz-rz1)t。
步骤S104,基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。
本实施例中,基于变化值,更新目标视角场景,包括:
基于位置坐标变化值和第二位置坐标,确定目标位置坐标(px2,py2,pz2)。示例的,px2=(px-px1)t+px1;py2=(py-py1)t+py1;pz2=(pz-pz1)t+pz1。
基于旋转坐标变化值和第二旋转坐标,确定目标旋转坐标(rx2,ry2,rz2)。示例的,rx2=(rx-rx1)t+rx1;ry2=(ry-ry1)t+ry1;rz2=(rz-rz1)t+rz1。t的取值区间[0,1],t越接近1同步效率越高,本申请对t的取值不做具体限定,t的取值具体可根据实际情况而定。以上示例中的各字母在步骤S103中均有说明,在此不再赘述。
根据目标位置坐标(px2,py2,pz2)和目标旋转坐标(rx2,ry2,rz2)调整被分享用户的目标视角场景,以对目标视角场景进行更新。即将目标位置坐标(px2,py2,pz2)和目标旋转坐标(rx2,ry2,rz2)应用到目标视角场景的相机里面,从而目标视角场景的位置和视角发生变化,实时与预设虚拟场景观览效果保持一致。
具体地,本实施例中,根据目标位置坐标和目标旋转坐标调整目标视角场景,包括:
根据目标位置坐标和目标旋转坐标调整目标视角场景对应的场景相机的位置坐标和旋转坐标,以调整目标视角场景。
也就是,将被分享用户的目标视角场景的相机的位置调整到目标位置坐标,将被分享用户的目标视角场景的相机的拍摄角度调整到目标旋转坐标。本实施例通过基于场景同步插值参数t来确定目标位置坐标和目标旋转坐标,从而可以保证被分享用户的目标视角场景的观览效果跟随分享用户的预设虚拟场景的变化而进行流畅的变化,不会出现卡顿现象。
图2是根据本申请第二实施例的虚拟现实互动方法的主要流程示意图,如图2所示,虚拟现实互动方法包括:
步骤S201,获取目标全景图片,进而利用深度映射算法,以基于目标全景图片创建深度图。
执行主体可以获取目标全景图片,进而调用虚拟场景创建单元中的线上VR场景模块,通过深度映射技术Krpano Depthmep,为获取的目标全景图片创建深度图depthmap。
步骤S202,根据深度图创建目标全景图片对应的预设虚拟场景。
执行主体可以根据创建的深度图创建3D立体的渲染效果,发布至互联网服务端,以构造线上VR场景即预设虚拟场景。
然后执行主体可以调用分享接口快速生成多人互动链接和二维码,支持微信、浏览器等各渠道体验VR场景内容。分享用户(即虚拟现实互动发起人)可以自由转发线上VR场景对应的链接、二维码和构造的线上VR场景。VR场景可实现多人互动,共享VR体验。
步骤S203,接收虚拟现实互动请求,进而生成分享标识。
具体地,在接收虚拟现实互动请求之前,虚拟现实互动方法还包括:
响应于确定用户选中目标全景图片,根据目标全景图片对应的预设虚拟场景生成对应的虚拟现实互动请求。
示例的,执行主体可以提供给被分享用户多个全景图片以供被分享用户选择想要进入的VR互动场景。当执行主体检测到用户选中了一个全景图片,则表明用户想要进入该全景图片对应的预设虚拟场景进行多人互动。则执行主体可以调用请求生成单元,以基于用户选中的全景图片(即目标全景图片)生成对应的虚拟现实互动请求。
步骤S204,响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景。
步骤S205,响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值。
具体地,执行主体可以对预设虚拟场景的相机进行对象劫持,以监听预设虚拟场景的视角位置变化。对相机进行对象劫持,可以是在相机之前加一层“拦截”,外界对该相机的访问,都必须先通过这层拦截。对此,执行主体提供了一种机制,可以对外界的访问进行过滤和改写,这种机制就称对象劫持。如预设虚拟场景的视角位置发生变化,被分享用户先要访问相机对象,遇到对象劫持的“拦截”,从而能实时监听当前预设虚拟场景的视角和位置的变化信息。外界访问是指任何能改变相机的操作或程序。比如正常没有对象劫持前position.x=0就相当对外界执行的一段程序,增加对预设虚拟场景的相机的对象劫持后变成position{set{this=value+(改写内容)}},这样在外界访问到position的时候就必须经过this=value这段拦截,后面还可以继续增加外界改成的内容。当执行主体通过对预设虚拟场景的相机进行对象劫持后,确定预设虚拟场景的相机的位置和角度发生变化,则确定检测到预设虚拟场景发生变化,当有被分享用户访问该相机对应的预设虚拟场景时,就可以基于预设的场景同步插值参数确定被分享用户的目标视角场景的相机的位置和角度的变化值。确定变化值的步骤与步骤S103的原理类似,此处不再赘述。
步骤S206,基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。
步骤S203~步骤S206的原理与步骤S101~步骤S104的原理类似,此处不再赘述。
图3是根据本申请第三实施例的虚拟现实互动方法的应用场景示意图。本申请的虚拟现实互动方法,可以应用于线上VR场景的多用户互动。如图3所示,服务器302接收虚拟现实互动请求301,进而生成分享标识303(分享标识可以包括分享标识1,例如地址链接,也可以包括分享标识2,例如二维码)。服务器302响应于用户309对分享标识303的确认操作304(例如点击分享标识1对应的地址链接或者扫描分享标识2对应的二维码),添加用户309至预设虚拟场景305,进而确定用户309在预设虚拟场景305中所选择的目标视角场景306。服务器302响应于检测到预设虚拟场景305发生变化,基于预设的场景同步插值参数308确定变化值307。服务器302基于变化值307,更新目标视角场景306,并向用户309展示更新的目标视角场景306。
示例的,在本实施例中,执行主体在确定被分享用户想要进入的预设虚拟场景后,可以调用内置的分享接口,自动生成对应该预设虚拟场景的一个房间,并生成分享链接或二维码,分享链接和二维码附带生成的房间ID和房主信息。其他的被分享用户均可以通过该分享链接或二维码,共享房主(即分享用户)VR场景的视角和语音,实现一人带领,多人观看和互动的VR体验。执行主体可以调用VR场景多人互动模块,利用前端websockect机制,将房主当前观览的位置和视角实时广播到房间内其他被分享用户。如果执行主体监测到房主发生位置和视角变化,可以调用计算模块,根据房主位置和视角变化对应的目标位置数据以及旋转度,计算出目标位置坐标和目标旋转坐标,通过websocket协议发送给服务器,服务器监听到变化消息,将目标位置坐标和目标旋转坐标广播给对应的被分享用户。
本申请实施例的虚拟现实互动方法,通过提供一种基于线上VR场景的多人互动技术,以线上VR场景为基础,分享用户通过链接或二维码分享到各被分享用户的终端设备,各被分享用户均可通过链接进入VR场景,自由选择分享用户分享的预设虚拟场景的视角和独立观览方式,共享分享用户的观览视角和语音,实现多人共享VR体验。通过krpano构造平面3D虚拟现实效果,叠加特定算法共享VR场景效果和内容、同步分享语音,让VR场景体验系统更具有沉浸感,分享更加便捷。本申请采用Browser/Server Architecture,B/S架构,即浏览器和服务器架构模式,将VR场景发布到服务器,通过生成链接或二维码方式分享,兼容手机和电脑,实现VR体验效果的多人互动技术。本申请实施例可以实现线上无限制分享,没有硬件上的限制,成本大大减低,也没有地理位置和数量上的耗时耗力,应用范围更广;无需屏幕投屏,通过浏览器或微信等都可以实时共享VR的用户体验和声音,降低多人分享的体验门槛;通过浏览器实时获取VR的体验效果,获取的并非静态的视频内容,也可以实时语音交互,完美的还原VR的效果和沉浸式的体验。
图4是根据本申请实施例的虚拟现实互动装置的主要单元的示意图。如图4所示,虚拟现实互动装置400包括接收单元401、目标视角场景确定单元402、变化值确定单元403和更新单元404。
接收单元401,被配置成接收虚拟现实互动请求,进而生成分享标识。
目标视角场景确定单元402,被配置成响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景。
变化值确定单元403,被配置成响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值。
更新单元404,被配置成基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。
在一些实施例中,虚拟现实互动装置还包括图4中未示出的虚拟场景创建单元,被配置成:获取目标全景图片,进而利用深度映射算法,以基于目标全景图片创建深度图;根据深度图创建目标全景图片对应的预设虚拟场景。虚拟场景创建单元中可以包括线上VR场景模块。
在一些实施例中,虚拟现实互动装置还包括图4中未示出的请求生成单元,被配置成:响应于确定用户选中目标全景图片,根据目标全景图片对应的预设虚拟场景生成对应的虚拟现实互动请求。
在一些实施例中,变化值确定单元403进一步被配置成:获取预设虚拟场景对应的场景相机的第一位置坐标和第一旋转坐标;获取目标视角场景对应的场景相机的第二位置坐标和第二旋转坐标;确定第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值;根据第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值和预设的场景同步插值参数确定变化值。
在一些实施例中,变化值确定单元403进一步被配置成:计算第一位置坐标和第二位置坐标的差值与预设的场景同步插值参数的乘积,进而确定为位置坐标变化值;计算第一旋转坐标和第二旋转坐标的差值与预设的场景同步插值参数的乘积,进而确定为旋转坐标变化值。
在一些实施例中,更新单元404进一步被配置成:基于位置坐标变化值和第二位置坐标,确定目标位置坐标;基于旋转坐标变化值和第二旋转坐标,确定目标旋转坐标;根据目标位置坐标和目标旋转坐标调整目标视角场景,以对目标视角场景进行更新。
在一些实施例中,更新单元404进一步被配置成:根据目标位置坐标和目标旋转坐标调整目标视角场景对应的场景相机的位置坐标和旋转坐标,以调整目标视角场景。
需要说明的是,在本申请虚拟现实互动方法和虚拟现实互动装置在具体实施内容上具有相应关系,故重复内容不再说明。
图5示出了可以应用本申请实施例的虚拟现实互动方法或虚拟现实互动装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备501、502、503可以是具有虚拟现实互动屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所提交的虚拟现实互动请求提供支持的后台管理服务器(仅为示例)。后台管理服务器可以接收虚拟现实互动请求,进而生成分享标识;响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景;响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值;基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。通过分享标识(即可以是分享链接或分享二维码)向其他用户分享VR场景,可以适配电脑,手机等不同终端,降低硬件设备门槛,可以线上无限制分享,没有硬件上的限制,成本大大降低,也没有地理位置和数量上的限制,应用范围更广,并可以实时同步用户视角场景,实现VR场景的多用户互动分享。
需要说明的是,本申请实施例所提供的虚拟现实互动方法一般由服务器505执行,相应地,虚拟现实互动装置一般设置于服务器505中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本申请实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM603中,还存储有计算机系统600操作所需的各种程序和数据。CPU601、ROM602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶征信授权查询处理器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本申请公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、目标视角场景确定单元和更新单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备接收虚拟现实互动请求,进而生成分享标识;响应于用户对分享标识的确认操作,添加用户至预设虚拟场景,进而确定用户在预设虚拟场景中所选择的目标视角场景;响应于检测到预设虚拟场景发生变化,基于预设的场景同步插值参数确定变化值;基于变化值,更新目标视角场景,并向用户展示更新的目标视角场景。
根据本申请实施例的技术方案,通过分享标识(即可以是分享链接或分享二维码)向其他用户分享VR场景,可以适配电脑,手机等不同终端,降低硬件设备门槛,可以线上无限制分享,没有硬件上的限制,成本大大降低,也没有地理位置和数量上的限制,应用范围更广,并可以实时同步用户视角场景,实现VR场景的多用户互动分享。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术用户员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (10)
1.一种虚拟现实互动方法,其特征在于,包括:
接收虚拟现实互动请求,进而生成分享标识;
响应于用户对所述分享标识的确认操作,添加所述用户至预设虚拟场景,进而确定所述用户在所述预设虚拟场景中所选择的目标视角场景;
响应于检测到所述预设虚拟场景发生变化,获取预设虚拟场景对应的场景相机的第一位置坐标和第一旋转坐标;获取目标视角场景对应的场景相机的第二位置坐标和第二旋转坐标;确定所述第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值;计算所述第一位置坐标和第二位置坐标的差值与预设的场景同步插值参数t的乘积,进而确定为位置坐标变化值;计算第一旋转坐标和第二旋转坐标的差值与预设的场景同步插值参数的乘积,进而确定为旋转坐标变化值,所述场景同步插值参数t根据同步所述预设虚拟场景的每一帧的执行时间来确定,t=deltaTime*speed,其中,deltaTime为程序执行的帧率,speed为程序控制的速度;
基于所述位置坐标变化值和所述旋转坐标变化值,更新所述目标视角场景,并向用户展示更新的目标视角场景。
2.根据权利要求1所述的方法,其特征在于,在所述接收虚拟现实互动请求之前,所述方法还包括:
获取目标全景图片,进而利用深度映射算法,以基于所述目标全景图片创建深度图;
根据所述深度图创建所述目标全景图片对应的预设虚拟场景。
3.根据权利要求2所述的方法,其特征在于,在所述接收虚拟现实互动请求之前,所述方法还包括:
响应于确定用户选中目标全景图片,根据所述目标全景图片对应的预设虚拟场景生成对应的虚拟现实互动请求。
4.根据权利要求1所述的方法,其特征在于,所述基于所述位置坐标变化值和所述旋转坐标变化值,更新所述目标视角场景,包括:
基于所述位置坐标变化值和所述第二位置坐标,确定目标位置坐标;
基于所述旋转坐标变化值和所述第二旋转坐标,确定目标旋转坐标;
根据所述目标位置坐标和所述目标旋转坐标调整所述目标视角场景,以对所述目标视角场景进行更新。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标位置坐标和所述目标旋转坐标调整所述目标视角场景,包括:
根据所述目标位置坐标和所述目标旋转坐标调整所述目标视角场景对应的场景相机的位置坐标和旋转坐标,以调整所述目标视角场景。
6.一种虚拟现实互动装置,其特征在于,包括:
接收单元,被配置成接收虚拟现实互动请求,进而生成分享标识;
目标视角场景确定单元,被配置成响应于用户对所述分享标识的确认操作,添加所述用户至预设虚拟场景,进而确定所述用户在所述预设虚拟场景中所选择的目标视角场景;
变化值确定单元,被配置成响应于检测到所述预设虚拟场景发生变化,获取预设虚拟场景对应的场景相机的第一位置坐标和第一旋转坐标;获取目标视角场景对应的场景相机的第二位置坐标和第二旋转坐标;确定所述第一位置坐标和第二位置坐标的差值、第一旋转坐标和第二旋转坐标的差值;计算所述第一位置坐标和第二位置坐标的差值与预设的场景同步插值参数t的乘积,进而确定为位置坐标变化值;计算第一旋转坐标和第二旋转坐标的差值与预设的场景同步插值参数的乘积,进而确定为旋转坐标变化值,所述场景同步插值参数t根据同步所述预设虚拟场景的每一帧的执行时间来确定,t=deltaTime*speed,其中,deltaTime为程序执行的帧率,speed为程序控制的速度;
更新单元,被配置成基于所述位置坐标变化值和所述旋转坐标变化值,更新所述目标视角场景,并向用户展示更新的目标视角场景。
7.根据权利要求6所述的装置,其特征在于,所述虚拟现实互动装置还包括虚拟场景创建单元,被配置成:
获取目标全景图片,进而利用深度映射算法,以基于所述目标全景图片创建深度图;
根据所述深度图创建所述目标全景图片对应的预设虚拟场景。
8.根据权利要求7所述的装置,其特征在于,所述虚拟现实互动装置还包括请求生成单元,被配置成:
响应于确定用户选中目标全景图片,根据所述目标全景图片对应的预设虚拟场景生成对应的虚拟现实互动请求。
9.一种虚拟现实互动电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110872357.9A CN113608613B (zh) | 2021-07-30 | 2021-07-30 | 虚拟现实互动方法、装置、电子设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110872357.9A CN113608613B (zh) | 2021-07-30 | 2021-07-30 | 虚拟现实互动方法、装置、电子设备及计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113608613A CN113608613A (zh) | 2021-11-05 |
CN113608613B true CN113608613B (zh) | 2023-06-23 |
Family
ID=78338725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110872357.9A Active CN113608613B (zh) | 2021-07-30 | 2021-07-30 | 虚拟现实互动方法、装置、电子设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113608613B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116700500B (zh) * | 2023-08-07 | 2024-05-24 | 江西科技学院 | 多场景vr互动方法、系统及存储介质 |
CN117115400A (zh) * | 2023-09-15 | 2023-11-24 | 深圳市红箭头科技有限公司 | 实时显示全身人体动作的方法、装置、计算机设备及存储介质 |
CN117170504B (zh) * | 2023-11-01 | 2024-01-19 | 南京维赛客网络科技有限公司 | 在虚拟人物交互场景中带人观看的方法、系统及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106598229A (zh) * | 2016-11-11 | 2017-04-26 | 歌尔科技有限公司 | 一种虚拟现实场景的生成方法、设备及虚拟现实系统 |
WO2017092335A1 (zh) * | 2015-12-01 | 2017-06-08 | 乐视控股(北京)有限公司 | 一种显示立体图像的处理方法和装置 |
CN107678715A (zh) * | 2016-08-02 | 2018-02-09 | 北京康得新创科技股份有限公司 | 虚拟信息的共享方法,装置和系统 |
CN108307182A (zh) * | 2017-08-04 | 2018-07-20 | 东北大学 | 一种基于虚拟现实技术的网络交互共享体验系统和方法 |
CN109388245A (zh) * | 2018-11-06 | 2019-02-26 | 杭州炽橙文创科技有限公司 | 一种虚拟现实应用的共享资源实时交互系统 |
CN110609622A (zh) * | 2019-09-18 | 2019-12-24 | 深圳市瑞立视多媒体科技有限公司 | 结合3d与虚拟现实技术实现多人交互方法、系统及介质 |
-
2021
- 2021-07-30 CN CN202110872357.9A patent/CN113608613B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017092335A1 (zh) * | 2015-12-01 | 2017-06-08 | 乐视控股(北京)有限公司 | 一种显示立体图像的处理方法和装置 |
CN107678715A (zh) * | 2016-08-02 | 2018-02-09 | 北京康得新创科技股份有限公司 | 虚拟信息的共享方法,装置和系统 |
CN106598229A (zh) * | 2016-11-11 | 2017-04-26 | 歌尔科技有限公司 | 一种虚拟现实场景的生成方法、设备及虚拟现实系统 |
CN108307182A (zh) * | 2017-08-04 | 2018-07-20 | 东北大学 | 一种基于虚拟现实技术的网络交互共享体验系统和方法 |
CN109388245A (zh) * | 2018-11-06 | 2019-02-26 | 杭州炽橙文创科技有限公司 | 一种虚拟现实应用的共享资源实时交互系统 |
CN110609622A (zh) * | 2019-09-18 | 2019-12-24 | 深圳市瑞立视多媒体科技有限公司 | 结合3d与虚拟现实技术实现多人交互方法、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113608613A (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113608613B (zh) | 虚拟现实互动方法、装置、电子设备及计算机可读介质 | |
KR102375307B1 (ko) | 가상 현실 뷰포트를 공유하기 위한 방법, 장치, 및 시스템 | |
JP2020507136A (ja) | Vrオブジェクトの合成方法、装置、プログラム及び記録媒体 | |
CN112312111A (zh) | 虚拟图像的显示方法、装置、电子设备及存储介质 | |
CN108765536A (zh) | 一种虚拟三维空间的同步处理方法及装置 | |
WO2023207963A1 (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN108765084B (zh) | 一种虚拟三维空间的同步处理方法及装置 | |
CN108880983A (zh) | 一种虚拟三维空间的语音实时处理方法及装置 | |
CN116301530A (zh) | 虚拟场景处理方法、装置、电子设备及存储介质 | |
CN116091672A (zh) | 图像渲染方法、计算机设备及其介质 | |
CN108898680B (zh) | 一种在虚拟三维空间中自动校正截取图片的方法及装置 | |
CN111833459A (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
US9699123B2 (en) | Methods, systems, and non-transitory machine-readable medium for incorporating a series of images resident on a user device into an existing web browser session | |
CN115098099A (zh) | 媒体内容的生成方法、装置、电子设备和存储介质 | |
CN112887695A (zh) | 一种全景图共享处理方法、系统以及终端 | |
CN114202617A (zh) | 视频图像处理方法、装置、电子设备及存储介质 | |
CN107181670B (zh) | 图片处理方法、装置及存储介质 | |
CN114092362A (zh) | 一种全景图片加载方法和装置 | |
CN112463089A (zh) | 跨终端的图片同步缩放方法、装置、电子介质及存储介质 | |
CN112070903A (zh) | 虚拟对象的展示方法、装置、电子设备及计算机存储介质 | |
CN111802894A (zh) | 一种全息虚拟数字3d立体佛龛、控制方法及计算机设备 | |
CN113542846B (zh) | Ar弹幕显示方法及装置 | |
CN108156501A (zh) | 用于对视频数据进行动态合成的方法、系统以及移动终端 | |
CN115103148A (zh) | 一种视频实现方法、装置、电子设备及可读存储介质 | |
CN116016838A (zh) | 实时视频显示方法、电子白板及可读介质 |
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 |