CN111949173B - 一种全景vr画面切换方法、装置、终端设备及存储介质 - Google Patents
一种全景vr画面切换方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111949173B CN111949173B CN202010764824.1A CN202010764824A CN111949173B CN 111949173 B CN111949173 B CN 111949173B CN 202010764824 A CN202010764824 A CN 202010764824A CN 111949173 B CN111949173 B CN 111949173B
- Authority
- CN
- China
- Prior art keywords
- click
- site
- vector
- norm
- calculating
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
-
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种全景VR画面切换方法、装置、终端设备及存储介质,方法包括确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;将当前画面切换至与所述前进的目标位置相对应的画面。本发明实施例提供的全景VR画面切换方法,无需借助指定跳转标识,用户通过点击空间中任意位置即可实现画面切换,有利于提高全景VR逛街的用户体验。
Description
技术领域
本发明涉及虚拟现实技术领域,尤其是涉及一种全景VR画面切换方法、装置、装置、终端设备及存储介质。
背景技术
全景VR逛街是720°全景影像展示,通过拍摄现实场景或虚拟场景的画面,将全景影像融合链接成一个整体,达到VR逛街的效果。
现有技术实现的VR逛街,是基于用户点击指定的跳转标识来切换全景VR画面,而且在制作VR逛街的过程中,需要给每个位置的VR图片添加相应的跳转标识并指定其跳转的图像,无法点击空间中的任意位置来实现VR画面跳转,例如用户在VR逛街中想往前走,必须点击到指定标识的位置,不能点击空间中的任意位置来达到朝指定方向前进的效果,导致用户使用VR逛街的交互体验较差。
发明内容
本发明提供一种全景VR画面切换方法,以解决现有的全景VR逛街需点击指定标识才能切换画面的技术问题,通过用户点击位置和站点数据获取目标点方向,无需借助指定跳转标识,用户通过点击空间中任意位置即可实现画面切换,有利于提高全景VR逛街的用户体验。
为了解决上述技术问题,第一方面,本发明实施例提供了一种全景VR画面切换方法,包括以下步骤:
确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;
响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;其中,所述响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置,包括:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置;
将当前画面切换至与所述前进的目标位置相对应的画面。
在本发明的其中一种实施例中,所述响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置,包括:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述方法还包括:
当所述站点向量与所述点击向量之间的点乘结果小于等于0时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述方法还包括:
当所述余弦角大于等于所述预先设定的视角范围时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述站点向量为:
norm_i(x,y,z)=(norm_i.x/norm_i.length,norm_i.y/norm_i.length,norm_i.z/norm_i.length);
所述点击向量为:
norm_click(x,y,z)=(norm_click.x/norm_click.length,norm_click.y/norm_click.length,norm_click.z/norm_click.length);
所述站点向量与所述点击向量之间的点乘结果为:
norm_i.*norm_click=norm_i.x*norm_click.x+norm_i.y*norm_click.y+norm_i.z*norm_click.z;
其中,所述站点数据集表示为Ai{x,y,z}。
第二方面,本发明提供一种全景VR画面切换装置,包括:
站点数据获取模块,用于确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;
目标位置计算模块,用于响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;其中,所述响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置,包括:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置;
画面切换模块,用于将当前画面切换至与所述前进的目标位置相对应的画面。
在本发明的其中一种实施例中,所述目标位置计算模块,用于:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述目标位置计算模块,用于:
当所述站点向量与所述点击向量之间的点乘结果小于等于0时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述目标位置计算模块,用于:
当所述余弦角大于等于所述预先设定的视角范围时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述站点向量为:
norm_i(x,y,z)=(norm_i.x/norm_i.length,norm_i.y/norm_i.length,norm_i.z/norm_i.length);
所述点击向量为:
norm_click(x,y,z)=(norm_click.x/norm_click.length,norm_click.y/norm_click.length,norm_click.z/norm_click.length);
所述站点向量与所述点击向量之间的点乘结果为:
norm_i.*norm_click=norm_i.x*norm_click.x+norm_i.y*norm_click.y+norm_i.z*norm_click.z;
其中,所述站点数据集表示为Ai{x,y,z}。
第三方面,本发明还提供一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述的全景VR画面切换方法。
第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述的全景VR画面切换方法。
综上,本发明实施例提供了一种全景VR画面切换方法、装置、终端设备及存储介质,其任一实施例具有有益效果在于,通过确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;将当前画面切换至与所述前进的目标位置相对应的画面。本发明实施例利用中心点位置,点击位置,视角范围三个数据来实现任意点击后的前进目标位置计算,使得用户可以自由在VR中进行点击前进并切换场景,无需借助特定的跳转标识来切换场景,从而有利于提高用户使用VR时的交互体验。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的全景VR画面切换方法的流程步骤图;
图2是本发明实施例中的全景VR画面切换方法的算法原理图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例针对于现有技术存在的缺陷,实现用户能够通过任意点击屏幕的位置,当应用于全景VR逛街时,用户无需点击指定的位置去跳转画面,提高用户使用的交互体验。基于此,如图1所示,本发明实施例提供了一种全景VR画面切换方法,包括以下步骤:
S1、确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;
在本实施例中,通过建立笛卡尔坐标系,获得每个全景点位在笛卡尔坐标系中的位置,得到场景中的所有站点数据集Ai{x,y,z},其中,XYZ分别代表站点在X轴Y轴Z轴上的坐标点。
S2、响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;
作为示例性的,如图2所示,设当前所处的位置为所述中心点位置为centerPos(x,y,z),用户点击的位置为clickPos(x,y,z)。所示屏幕点击位置指用户在屏幕上点击位置,以所述屏幕点击位置为方向,从所述中心点位置centerPos(x,y,z)发出的射线与VR球面相交的交点。所述预先设定的视角范围viewAngle为经验值,一般设置为Pi/3(可根据实际情况灵活调整),index和mindis为中间辅助变量。
基于以上数据,对所述前进目标位置进行计算,计算流程如图2所示。具体包括以下子步骤:
S21、获得站点数据集Ai{x,y,z};
S22、设定中心点位置为centerPos(x,y,z),用户点击的位置为clickPos(x,y,z),预先设定的视角范围为viewAngle;
S23、令辅助变量i=0;index=0;mindis=9999,mindis设置为9999是根据经验值设置的一个远大于整体场景半径的参数,可根据实际情况调整更大;
S24、基于所述中心点位置,计算所述站点数据集中站点的站点向量,通过站点Ai坐标减去中心点Pos坐标,得到所述站点向量为:
norm_i(x,y,z)=(A_i.x-centerPos.x,A_i.y-centerPos.y,A_i.z-centerPos.z);
S25、计算所述站点向量的模长:
norm_i.length=(norm_i.x^2+norm_i.y^2+norm_i.z^2)^0.5;
S26、为便于计算,将所述站点向量进行标准化:
norm_i(x,y,z)=(norm_i.x/norm_i.length,norm_i.y/norm_i.length,norm_i.z/norm_i.length);
S27、基于所述中心点位置,计算所述点击位置的点击向量,通过所述屏幕点击位置的坐标减去中心点Pos坐标,得到所述点击向量为:
norm_click(x,y,z)=(clickPos.x-centerPos.x,clickPos.y-centerPos.y,clickPos.z-centerPos.z);
S28、计算所述点击向量的模长:
norm_click.length=(norm_click.x^2+norm_click.y^2+norm_click.z^2)^0.5;
S29、为便于计算,将所述点击向量进行标准化:
norm_i(x,y,z)=(A_i.x-centerPos.x,A_i.y-centerPos.y,A_i.z-centerPos.z);
S210、计算所述站点向量与所述点击向量之间的点乘结果:
norm_i.*norm_click=norm_i.x*norm_click.x+norm_i.y*norm_click.y+norm_i.z*norm_click.z;
当所述站点向量与所述点击向量之间的点乘结果norm_i.*norm_click大于0时,则进入步骤S211;若点乘结果norm_i.*norm_click小于等于0,则进入步骤S216;
S211、计算所述站点向量和所述点击向量之间的余弦角:
theta=(norm_i.x*norm_click.x+norm_i.y*norm_click.y+norm_i.z*norm_click.z)
判断所述站点向量和所述点击向量之间的余弦角theta是否小于所述预先设定的视角范围viewAngle;
S212、当所述余弦角theta小于所述预先设定的视角范围viewAngle时,计算所述站点Ai与所述中心点位置centerPos(x,y,z)之间的站点距离,记为:
DisOnWorld=((Ai.x-centerPos.x)^2+(Ai.y-centerPos.y)^2+(Ai.z-centerPos.z)^2^0.5;
S213、当所述站点距离DisOnWorld小于预设的最小场景半径mindis时,令所述预设的最小场景半径等于所述站点距离,也即mindis=DisOnWorld,同时目标站点序号为index=i;
S214、循环变量i++;
S215、判断循环是否已经结束,若结束,则进入步骤S218;若否,则进入步骤S24;
S216、判断index是否大于等于0,若是,则说明有目标前进位置,其在站点集Ai中的序号为Index;若否,则说明前方没有目标站点集。
S3、将当前画面切换至与所述前进的目标位置相对应的画面。
本发明实施例利用中心点位置,点击位置,视角范围三个数据来实现任意点击后的前进目标位置计算,使得用户可以自由在VR中进行点击前进并切换场景,无需借助特定的跳转标识来切换场景,从而有利于提高用户使用VR时的交互体验。
本发明提供一种全景VR画面切换装置,包括:
站点数据获取模块,用于确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;
目标位置计算模块,用于响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;
画面切换模块,用于将当前画面切换至与所述前进的目标位置相对应的画面。
在本发明的其中一种实施例中,所述目标位置计算模块,用于:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述目标位置计算模块,用于:
当所述站点向量与所述点击向量之间的点乘结果小于等于0时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述目标位置计算模块,用于:
当所述余弦角大于等于所述预先设定的视角范围时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
在本发明的其中一种实施例中,所述站点向量为:
norm_i(x,y,z)=(norm_i.x/norm_i.length,norm_i.y/norm_i.length,norm_i.z/norm_i.length);
所述点击向量为:
norm_click(x,y,z)=(norm_click.x/norm_click.length,norm_click.y/norm_click.length,norm_click.z/norm_click.length);
所述站点向量与所述点击向量之间的点乘结果为:
norm_i.*norm_click=norm_i.x*norm_click.x+norm_i.y*norm_click.y+norm_i.z*norm_click.z;
其中,所述站点数据集表示为Ai{x,y,z}。
本发明还提供一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的全景VR画面切换方法。
示例性的,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及智能平板等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,上述部件仅仅是终端设备的示例,并不构成对终端设备的限定,可以包括比上述更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (9)
1.一种全景VR画面切换方法,其特征在于,包括以下步骤:
确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;
响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;其中,所述响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置,包括:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置;
将当前画面切换至与所述前进的目标位置相对应的画面。
2.如权利要求1所述的全景VR画面切换方法,其特征在于,所述方法还包括:
当所述站点向量与所述点击向量之间的点乘结果小于等于0时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
3.如权利要求1所述的全景VR画面切换方法,其特征在于,所述方法还包括:
当所述余弦角大于等于所述预先设定的视角范围时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
4.如权利要求1所述的全景VR画面切换方法,其特征在于,所述站点向量为:
norm_i(x,y,z)=(norm_i.x/norm_i.length,norm_i.y/norm_i.length,norm_i.z/norm_i.length);
所述点击向量为:
norm_click(x,y,z)=(norm_click.x/norm_click.length,norm_click.y/no rm_click.length,norm_click.z/norm_click.length);
所述站点向量与所述点击向量之间的点乘结果为:
norm_i.*norm_click=norm_i.x*norm_click.x+norm_i.y*norm_click.y+norm_i.z*norm_click.z;
其中,所述站点数据集表示为Ai{x,y,z}。
5.一种全景VR画面切换装置,其特征在于,包括:
站点数据获取模块,用于确定每一全景点在笛卡尔坐标系中的位置,获得站点数据集;
目标位置计算模块,用于响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置;其中,所述响应于用户在屏幕中的点击操作,基于所述站点数据集并根据当前所处的中心点位置、屏幕点击位置以及预先设定的视角范围,计算得到与所述屏幕点击位置对应的前进目标位置,包括:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置;
画面切换模块,用于将当前画面切换至与所述前进的目标位置相对应的画面。
6.如权利要求5所述的全景VR画面切换装置,其特征在于,所述目标位置计算模块,用于:
基于所述中心点位置,计算所述站点数据集中站点的站点向量和所述站点向量的模长;
基于所述中心点位置,计算所述点击位置的点击向量和所述点击向量的模长;
当所述站点向量与所述点击向量之间的点乘结果大于0时,则判断所述站点向量和所述点击向量之间的余弦角是否小于所述预先设定的视角范围;
当所述余弦角小于所述预先设定的视角范围时,计算所述站点与所述中心点位置之间的站点距离;
当所述站点距离小于预设的最小场景半径时,令所述预设的最小场景半径等于所述站点距离、目标站点序号为index=i,以循环变量i++进行循环;其中,辅助变量i=0;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
7.如权利要求6所述的全景VR画面切换装置,其特征在于,所述目标位置计算模块,用于:
当所述站点向量与所述点击向量之间的点乘结果小于等于0时,以循环变量i++进行循环;
当循环结束且判断index大于等于0时,计算得到与所述屏幕点击位置对应的前进目标位置。
8.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至4中任意一项所述的全景VR画面切换方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至4中任意一项所述的全景VR画面切换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010764824.1A CN111949173B (zh) | 2020-07-31 | 2020-07-31 | 一种全景vr画面切换方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010764824.1A CN111949173B (zh) | 2020-07-31 | 2020-07-31 | 一种全景vr画面切换方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111949173A CN111949173A (zh) | 2020-11-17 |
CN111949173B true CN111949173B (zh) | 2022-02-15 |
Family
ID=73338905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010764824.1A Active CN111949173B (zh) | 2020-07-31 | 2020-07-31 | 一种全景vr画面切换方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111949173B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102414697A (zh) * | 2009-02-24 | 2012-04-11 | 谷歌公司 | 指示在街道级图像之间转换的系统和方法 |
CN105302860A (zh) * | 2008-11-19 | 2016-02-03 | 苹果公司 | 用于操纵全景的技术 |
CN105719343A (zh) * | 2016-01-19 | 2016-06-29 | 上海杰图天下网络科技有限公司 | 一种构建虚拟街景地图的方法 |
CN107817895A (zh) * | 2017-09-26 | 2018-03-20 | 微幻科技(北京)有限公司 | 场景切换方法及装置 |
CN110636263A (zh) * | 2019-09-20 | 2019-12-31 | 黑芝麻智能科技(上海)有限公司 | 全景环视图生成方法、车载设备及车载系统 |
CN110838178A (zh) * | 2019-11-26 | 2020-02-25 | 北京世纪高通科技有限公司 | 道路场景模型的确定方法及装置 |
CN111133365A (zh) * | 2017-05-01 | 2020-05-08 | 奇跃公司 | 内容到空间3d环境的匹配 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9454834B2 (en) * | 2008-09-26 | 2016-09-27 | Nintendo Co., Ltd. | Storage medium storing image processing program for implementing controlled image display according to input coordinate, and information processing device |
CN102519478B (zh) * | 2011-11-16 | 2016-01-13 | 深圳市凯立德科技股份有限公司 | 一种街景目的地引导方法及装置 |
CN107957772B (zh) * | 2016-10-17 | 2021-09-21 | 阿里巴巴集团控股有限公司 | 现实场景中采集vr图像的处理方法以及实现vr体验的方法 |
CN108833877B (zh) * | 2018-06-12 | 2020-02-18 | 重庆虚拟实境科技有限公司 | 图像处理方法及装置、计算机装置及可读存储介质 |
-
2020
- 2020-07-31 CN CN202010764824.1A patent/CN111949173B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105302860A (zh) * | 2008-11-19 | 2016-02-03 | 苹果公司 | 用于操纵全景的技术 |
CN102414697A (zh) * | 2009-02-24 | 2012-04-11 | 谷歌公司 | 指示在街道级图像之间转换的系统和方法 |
CN105719343A (zh) * | 2016-01-19 | 2016-06-29 | 上海杰图天下网络科技有限公司 | 一种构建虚拟街景地图的方法 |
CN111133365A (zh) * | 2017-05-01 | 2020-05-08 | 奇跃公司 | 内容到空间3d环境的匹配 |
CN107817895A (zh) * | 2017-09-26 | 2018-03-20 | 微幻科技(北京)有限公司 | 场景切换方法及装置 |
CN110636263A (zh) * | 2019-09-20 | 2019-12-31 | 黑芝麻智能科技(上海)有限公司 | 全景环视图生成方法、车载设备及车载系统 |
CN110838178A (zh) * | 2019-11-26 | 2020-02-25 | 北京世纪高通科技有限公司 | 道路场景模型的确定方法及装置 |
Non-Patent Citations (1)
Title |
---|
全景三维虚拟系统构建方法研究;吴勇等;《计算机工程与设计》;20140531;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111949173A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110062176B (zh) | 生成视频的方法、装置、电子设备和计算机可读存储介质 | |
CN112714255B (zh) | 拍摄方法、装置、电子设备及可读存储介质 | |
US20220103743A1 (en) | Picture focusing method, apparatus, terminal, and corresponding storage medium | |
JP7182689B2 (ja) | ビデオフレーム処理方法及び装置 | |
CN110120087B (zh) | 三维虚拟沙盘的标签标注方法、装置及终端设备 | |
CN111949173B (zh) | 一种全景vr画面切换方法、装置、终端设备及存储介质 | |
CN113115108A (zh) | 一种视频处理方法及计算设备 | |
CN113269781A (zh) | 数据生成方法、装置及电子设备 | |
CN111833459A (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN112367487B (zh) | 视频录制方法和电子设备 | |
CN113271494B (zh) | 视频帧处理方法、装置和电子设备 | |
CN114782611A (zh) | 图像处理方法、装置、存储介质和电子设备 | |
CN112887606A (zh) | 拍摄方法、装置和电子设备 | |
CN109472873B (zh) | 三维模型的生成方法、装置、硬件装置 | |
CN110877332B (zh) | 机器人舞蹈文件生成方法、装置、终端设备及存储介质 | |
CN114520898B (zh) | 投影设备控制方法和装置、投影设备及存储介质 | |
CN114900679B (zh) | 一种三维模型展示方法、装置、电子设备及可读存储介质 | |
CN116129085B (zh) | 虚拟物体处理方法、设备、存储介质及程序产品 | |
CN113489901B (zh) | 拍摄方法及其装置 | |
CN112866286B (zh) | 一种数据传输的方法、装置、终端设备及存储介质 | |
CN114419286A (zh) | 一种全景漫游方法、装置、电子设备及存储介质 | |
CN117294894A (zh) | 一种视频目标编辑方法、终端设备及存储介质 | |
CN117205557A (zh) | 游戏视角的切换方法、装置、电子设备及计算机可读介质 | |
CN116228952A (zh) | 一种虚拟对象挂载方法、装置、设备及介质 | |
CN116801041A (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 |