CN107239333A - 应用切换处理方法和装置 - Google Patents

应用切换处理方法和装置 Download PDF

Info

Publication number
CN107239333A
CN107239333A CN201710375428.8A CN201710375428A CN107239333A CN 107239333 A CN107239333 A CN 107239333A CN 201710375428 A CN201710375428 A CN 201710375428A CN 107239333 A CN107239333 A CN 107239333A
Authority
CN
China
Prior art keywords
angle
coordinate system
camera
application program
place
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.)
Granted
Application number
CN201710375428.8A
Other languages
English (en)
Other versions
CN107239333B (zh
Inventor
申志兴
秦文东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Goertek Techology Co Ltd
Original Assignee
Goertek Techology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Goertek Techology Co Ltd filed Critical Goertek Techology Co Ltd
Priority to CN201710375428.8A priority Critical patent/CN107239333B/zh
Publication of CN107239333A publication Critical patent/CN107239333A/zh
Application granted granted Critical
Publication of CN107239333B publication Critical patent/CN107239333B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明提供一种应用切换处理方法和装置,该方法包括:在切换出支持虚拟现实功能的应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度;在切换回应用程序时,根据第一位置和第一角度建立第二坐标系;获取在第二坐标系中摄像头当前的第二位置和第二角度;将第二位置从第二坐标系变换到第一坐标系以获得第三位置;以第一位置和第一角度为基准,根据第三位置和第二角度确定摄像头当前在第一坐标系中对应的位置和角度,从而保证用户当前能够接续切出该应用程序时所观看到的场景画面继续使用该应用程序,提高用户的沉浸体验以及该应用程序的智能性。

Description

应用切换处理方法和装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种应用切换处理方法和装置。
背景技术
虚拟现实(Virtual Reality,简称VR)技术是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的交互式的三维动态视景和实体行为的系统仿真,使用户沉浸到该环境中。目前,虚拟现实技术已经在很多应用领域中被使用。
实际应用中,往往会有这样的体验:用户在使用支持虚拟现实功能的游戏应用的过程中,因为某种原因需要切换到另一个应用程序中,比如接收到一封重要邮件需要处理,这时,需要临时退出该游戏应用。而当用户再次切换回该游戏应用时,在现有技术中,所有的视角信息,即摄像头在虚拟现实场景中的位置、角度信息都将被初始化,用户此时看到的场景画面将会对应于初始化时的场景画面,无法接续切换出该游戏应用时的场景画面,使得用户的沉浸体验严重损失,也使得该游戏应用的智能性降低。
发明内容
有鉴于此,本发明提供一种应用切换处理方法和装置,用以实现在支持虚拟现实功能的应用程序再次被切换回使用时,接续退出时的视角,提高用户的沉浸体验以及应用程序的智能性。
第一方面,本发明实施例提供一种应用切换处理方法,包括:
在切换出应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度,所述应用程序支持虚拟现实功能;
在切换回所述应用程序时,根据所述第一位置和所述第一角度建立第二坐标系;
获取摄像头当前的第二位置和第二角度,所述第二位置和所述第二角度对应于所述第二坐标系;
将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置;
以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度。
可选地,所述第一角度包括:第一俯仰角、第一航向角、第一翻滚角,其中,第一俯仰角和第一翻滚角被置为0;
所述根据所述第一位置和所述第一角度建立第二坐标系,包括:
将所述第一坐标系的坐标原点平移到所述第一位置处,对所述第一坐标系的Z轴进行所述第一航向角的旋转,以建立所述第二坐标系。
可选地,所述将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置,包括:
对所述第二位置根据如下公式进行坐标变换:
x3=x2cos(α)+z2sin(α)
y3=y2
z3=-x2sin(α)+z2cos(α)
其中,x2、y2和z2分别为所述第二位置的三轴方向的坐标,α为所述第一航向角,x3、y3和z3分别为所述第三位置的三轴方向的坐标。
可选地,所述以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度,包括:
确定所述摄像头当前在所述第一坐标系中对应的位置和角度分别为:所述第三位置对应叠加到所述第一位置后的位置,所述第二角度对应叠加到所述第一角度后的角度。
可选地,所述以所述第一角度为基准,根据所述第二角度确定所述摄像头当前在所述第一坐标系中对应的角度,包括:
确定所述摄像头当前在所述第一坐标系中对应的角度为:所述第二角度对应叠加到所述第一角度后的角度与角航向角误差的差值;
其中,所述航向角误差为切换回所述应用程序后以预设时间间隔首次获得的摄像头的航向角。
第二方面,本发明实施例提供一种应用切换处理装置,包括:
记录模块,用于在切换出应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度,所述应用程序支持虚拟现实功能;
建立模块,用于在切换回所述应用程序时,根据所述第一位置和所述第一角度建立第二坐标系;
获取模块,用于获取摄像头当前的第二位置和第二角度,所述第二位置和所述第二角度对应于所述第二坐标系;
变换模块,用于将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置;
确定模块,用于以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度。
本发明提供的应用切换处理方法和装置,在用户使用某个支持虚拟现实功能的应用程序的过程中,当切换出该应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度。该第一坐标系为该应用程序中的虚拟现实场景建立时所采用的坐标系。当后续再次切换回该应用程序时,首先根据记录的切出时所对应的第一位置和第一角度来建立第二坐标系;之后,在从传感器获得摄像头当前在第二坐标系中的第二位置和第二角度后,将第二位置从第二坐标系变换到第一坐标系以获得第三位置;进而,以切出时对应的第一位置和第一角度为基准,根据变换后的第三位置以及第二角度确定摄像头当前在第一坐标系中对应的位置和角度,从而保证用户当前能够接续切出该应用程序时所观看到的场景画面继续使用该应用程序,提高用户的沉浸体验以及该应用程序的智能性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的应用切换处理方法实施例一的流程图;
图2为6自由度的示意图;
图3为坐标变换示意图;
图4为本发明实施例提供的应用切换处理装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述XXX,但这些XXX不应限于这些术语。这些术语仅用来将XXX区分开。例如,在不脱离本发明实施例范围的情况下,第一XXX也可以被称为第二XXX,类似地,第二XXX也可以被称为第一XXX。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
进一步值得说明的是,本发明各实施例中各步骤之间的顺序是可以调整的,不是必须按照以下举例的顺序执行。
图1为本发明实施例提供的应用切换处理方法实施例一的流程图,本实施例提供的该应用切换处理方法可以由一应用切换处理装置来执行,该应用切换处理装置可以实现为软件,或者实现为软件和硬件的组合,比如,该应用切换处理装置可以实现为支持虚拟现实功能的某应用程序中的功能模块。如图1所示,该方法包括如下步骤:
101、在切换出支持虚拟现实功能的应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度。
102、在切换回应用程序时,根据第一位置和第一角度建立第二坐标系。
103、获取摄像头当前的第二位置和第二角度,第二位置和第二角度对应于第二坐标系。
104、将第二位置从第二坐标系变换到第一坐标系以获得第三位置。
105、以第一位置和第一角度为基准,根据第三位置和第二角度确定摄像头当前在第一坐标系中对应的位置和角度。
本实施例的核心思想为:当采用具有6自由度的VR设备比如摄像头在使用某个支持虚拟现实功能的应用程序时,当该应用程序被切出置于后台后,再度切换回该应用程序时先前切出的位置和角度信息若丢失,将导致切换回该应用程序时,用户将不能接续使用该应用程序。举例来说,假设用户初始使用该应用程序时,看到的场景画面为一个电视机,切换出该应用程序时看到的场景画面为咖啡机,那么,如果切换出该应用程序时的位置和角度信息丢失,再次切换回时,用户将还是看到初始使用该应用程序对应的电视机场景画面,对用户沉浸体验影响严重。
其中,上述6自由度如图2所示,具体是指3轴方向的旋转和3轴方向上的平移。以三维空间笛卡尔右手坐标系为例,3轴方向上的旋转分别对应俯仰角(绕X轴)、航向角(绕Y轴)和翻滚角(绕Z轴),3轴方向上的平移分别对应前后(Z轴正向和负向)、右左(X轴正向和负向)和上下(Y轴正向和负向)。
本实施例中,上述应用程序在运行的过程中,当被切换出以及当被再次切换回时,都会运行应用程序中相应的函数,因此,可以基于该函数的运行获知应用程序是否被用户执行切换出的操作或者被用户执行切换回的操作。比如,当应用程序被执行切换出操作时,会触发OnPause()函数,当应用程序被执行切换回操作时,会触发OnResume()函数。
因此,当OnPause()函数被执行时,确定应用程序被切换出,从而记录在切换出时,摄像头在第一坐标系中的第一位置和第一角度。
其中,第一坐标系为构建应用程序中的虚拟现实场景时所采用的坐标系。第一位置包括3轴方向上的坐标值,第一角度包括第一俯仰角、第一航向角、第一翻滚角。可以理解的是,上述第一位置、第一角度的确定可以通过设置在VR设备比如摄像头中的传感器来采集相应的数据而计算获得。
当OnResume()函数被执行时,确定应用程序被切换回再次使用,此时,为了实现能够接续切换出时的视角,首先,根据切换出时对应的第一位置和第一角度建立第二坐标系。在建立第二坐标系时,其实是对第一坐标系基于第一位置和第一角度进行了一定的平移、旋转,得到第二坐标系。界定一个坐标系可以基于坐标原点的位置以及坐标轴的方向实现,因此,可以将第一坐标系的坐标原点平移到第一位置处,并对第一坐标系的Z轴进行第一航向角的旋转,从而得到第二坐标系。
其中,之所以仅考虑第一航向角的对视角接续的影响,而不考虑第一俯仰角、第一翻滚角,是因为:一般地,第一坐标系建立时,遵循右手定则,将正常观看时视线的水平方向即平视方向作为Z轴方向,其右手方向为X轴方向,竖直的方向即头顶上方为Y轴方向。那么,当用户再次切换回之前切出的应用程序时,应用程序中虚拟现实场景的坐标系不会因为切换而发生改变,只是用户当前进入该虚拟现实场景的姿势可能发生改变,而该改变一般体现为看向的方向发生改变,而看向方向发生改变主要是由第一航向角引起的,因此,在建立第二坐标系时,可以仅考虑第一航向角对第一坐标系中与视线看向方向对应的Z轴方向的旋转影响。
由于不考虑第一俯仰角和第一翻滚角的接续,因此,可以将第一俯仰角和第一翻滚角置为0。因此,记录第一角度时,可以将第一俯仰角和第一翻滚角置为0,仅保留第一航向角。不考虑第一俯仰角和第一翻滚角的接续,意味着当应用程序切换回后,对于摄像头的角度信息的确定,第一俯仰角和第一翻滚角不会产生影响。
从而,假设切换出应用程序是摄像头在第一坐标系中对应的位置为(a,b,c),角度为(d,α,f),则记录的第一位置为(a,b,c),第一角度为(0,α,0),从而,第二坐标系与第一坐标系的对应关系如图3所示,图出仅示意了第一坐标系的XOZ平面以及第二坐标系的X’ O’Z’平面,第二坐标系的坐标原点O’为(a,b,c)。
切换回应用程序时,可以先对摄像头中的传感器进行初始化处理,此时,传感器的计数将从0开始,此时,初始化后,摄像头在第二坐标系中的基准位置和基准角度为:(a,b,c)和(0,α,0)。
在切换回应用程序后,随着用户的不断移动,改变姿势,应用程序可以以预设时间间隔不断获取用户即摄像头的位置和角度信息,此时,获得的位置和角度信息是在第二坐标系下获得的。而对摄像头在不同位置和角度下应该显示什么场景画面是基于第一坐标系来控制的,也即是说,场景画面是在第一坐标系下建立的,因此,需要将从第二坐标系下获得的位置和角度变换到第一坐标系下。
假设当前获得的摄像头在第二坐标系中的角度和位置为第二角度和第二位置,为了确定摄像头当前在第一坐标系中对应的位置和角度,具体可以包括:针对角度来说,可以以第一角度为基准,将当前在第二坐标系中获得的第二角度对应叠加到第一角度后即可获得摄像头当前在第一坐标系中对应的角度。比如,假设第二角度为(d1,e1,f1),则叠加到第一角度(0,α,0)后为(d1,α+e1,f1),此时假设第一角度和第二角度均以欧拉角来表示。
而针对位置来说,摄像头当前在第一坐标系中对应的位置需要通过对摄像头在第二坐标系中的第二位置进行坐标变换处理才能得到。
具体地,假设第二位置为(x2,y2,z2),第一航向角为α,则将第二位置从第二坐标系变换到第一坐标系可以采用如下公式:
x3=x2cos(α)+z2sin(α)
y3=y2
z3=-x2sin(α)+z2cos(α)
其中,x2、y2和z2分别为第二位置的三轴方向的坐标,α为第一航向角,x3、y3和z3分别为第二位置变换后得到的第三位置中三轴方向的坐标。
进而,以第一位置为基准,第三位置对应叠加到第一位置后的位置即为摄像头当前在第一坐标系中对应的位置。假设第一位置为(a,b,c),则摄像头当前在第一坐标系中对应的位置为(a+x3,b+y3,c+z3)。
基于此,在确定出摄像头当前在第一坐标系中对应的位置和角度后,应用程序可以将对应的场景画面展示给用户观看,以实现用户接续切换出应用程序时的场景画面继续使用该应用程序。
另外,值得说明的是,摄像头当前在第一坐标系中对应的位置可以通过将第三位置对应叠加到第一位置上确定,但是,摄像头当前在第一坐标系中对应的角度,除了可以简单地通过将第二角度对应叠加到第一角度上确定外,还可以考虑航向角误差。之所以仅考虑航向角误差是因为针对角度接续来说,仅考虑了航向角接续,而之所以仅考虑航向角接续,前面已经做出说明。
具体来说,该航线角误差的产生是由于应用程序更新摄像头的角度信息的时间间隔与摄像头中传感器采集数据的时间间隔往往是不匹配的,一般地,应用程序更新摄像头的角度信息的时间间隔大于摄像头中传感器采集数据的时间间隔。因此,当应用程序在被再次切换回使用后,应用程序首次获取到的摄像头在第二坐标系中的航向角已经是传感器经过多个采集时间间隔累计采集到的航向角信息,并非是初始化的航向角,因此,可以将切换回应用程序后首次在第二坐标系中获得的航向角作为航向角误差,在首次以及后续每隔一定时间间隔更新摄像头在第一坐标系下对应的角度时,针对航向角的更新时,都将该航向角误差去除。
举例来说,假设上述第二角度即为首次获得的角度信息,并假设第二角度中的航向角为A,则此时确定的摄像头在第一坐标系下对应的角度中的航向角为:A+α-A,α为已经记录的第一航向角。假设首次之后,第二次获得的摄像头在第二坐标系下对应的角度中的航向角为B,则此时确定的摄像头在第一坐标系下对应的角度中的航向角为:B+α-A,以此类推。
综上,基于本实施例,在用户使用某个支持虚拟现实功能的应用程序的过程中,当切换出该应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度。该第一坐标系为该应用程序中的虚拟现实场景建立时所采用的坐标系。当后续再次切换回该应用程序时,首先根据记录的切出时所对应的第一位置和第一角度来建立第二坐标系;之后,在从传感器获得摄像头当前在第二坐标系中的第二位置和第二角度后,将第二位置从第二坐标系变换到第一坐标系以获得第三位置;进而,以切出时对应的第一位置和第一角度为基准,根据变换后的第三位置以及第二角度确定摄像头当前在第一坐标系中对应的位置和角度,从而保证用户当前能够接续切出该应用程序时所观看到的场景画面继续使用该应用程序,提高用户的沉浸体验以及该应用程序的智能性。
图4为本发明实施例提供的应用切换处理装置的结构示意图,如图4所示,该装置包括:记录模块11、建立模块12、获取模块13、变换模块14、确定模块15。
记录模块11,用于在切换出应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度,所述应用程序支持虚拟现实功能。
建立模块12,用于在切换回所述应用程序时,根据所述第一位置和所述第一角度建立第二坐标系。
获取模块13,用于获取摄像头当前的第二位置和第二角度,所述第二位置和所述第二角度对应于所述第二坐标系。
变换模块14,用于将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置。
确定模块15,用于以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度。
可选地,所述第一角度包括:第一俯仰角、第一航向角、第一翻滚角,其中,第一俯仰角和第一翻滚角被置为0;从而,所述建立模块12具体用于:
将所述第一坐标系的坐标原点平移到所述第一位置处,对所述第一坐标系的Z轴进行所述第一航向角的旋转,以建立所述第二坐标系。
可选地,所述变换模块14具体用于:
对所述第二位置根据如下公式进行坐标变换:
x3=x2cos(α)+z2sin(α)
y3=y2
z3=-x2sin(α)+z2cos(α)
其中,x2、y2和z2分别为所述第二位置的三轴方向的坐标,α为所述第一航向角,x3、y3和z3分别为所述第三位置的三轴方向的坐标。
可选地,所述确定模块15具体用于:
确定所述摄像头当前在所述第一坐标系中对应的位置和角度分别为:所述第三位置对应叠加到所述第一位置后的位置,所述第二角度对应叠加到所述第一角度后的角度。
可选地,所述确定模块15具体用于:
确定所述摄像头当前在所述第一坐标系中对应的位置为:所述第三位置对应叠加到所述第一位置后的位置;
确定所述摄像头当前在所述第一坐标系中对应的角度为:所述第二角度对应叠加到所述第一角度后的角度与航向角误差的差值;
其中,所述航向角误差为切换回所述应用程序后以预设时间间隔首次获得的摄像头的航向角。
图4所示装置可以执行图1所示实施例的方法,本实施例未详细描述的部分,可参考对图1所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1所示实施例中的描述,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种应用切换处理方法,其特征在于,包括:
在切换出应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度,所述应用程序支持虚拟现实功能;
在切换回所述应用程序时,根据所述第一位置和所述第一角度建立第二坐标系;
获取摄像头当前的第二位置和第二角度,所述第二位置和所述第二角度对应于所述第二坐标系;
将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置;
以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度。
2.根据权利要求1所述的方法,其特征在于,所述第一角度包括:第一俯仰角、第一航向角、第一翻滚角,其中,第一俯仰角和第一翻滚角被置为0;
所述根据所述第一位置和所述第一角度建立第二坐标系,包括:
将所述第一坐标系的坐标原点平移到所述第一位置处,对所述第一坐标系的Z轴进行所述第一航向角的旋转,以建立所述第二坐标系。
3.根据权利要求2所述的方法,其特征在于,所述将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置,包括:
对所述第二位置根据如下公式进行坐标变换:
x3=x2cos(α)+z2sin(α)
y3=y2
z3=-x2sin(α)+z2cos(α)
其中,x2、y2和z2分别为所述第二位置的三轴方向的坐标,α为所述第一航向角,x3、y3和z3分别为所述第三位置的三轴方向的坐标。
4.根据权利要求3所述的方法,其特征在于,所述以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度,包括:
确定所述摄像头当前在所述第一坐标系中对应的位置和角度分别为:所述第三位置对应叠加到所述第一位置后的位置,所述第二角度对应叠加到所述第一角度后的角度。
5.根据权利要求3所述的方法,其特征在于,所述以所述第一角度为基准,根据所述第二角度确定所述摄像头当前在所述第一坐标系中对应的角度,包括:
确定所述摄像头当前在所述第一坐标系中对应的角度为:所述第二角度对应叠加到所述第一角度后的角度与航向角误差的差值;
其中,所述航向角误差为切换回所述应用程序后以预设时间间隔首次获得的摄像头的航向角。
6.一种应用切换处理装置,其特征在于,包括:
记录模块,用于在切换出应用程序时,记录摄像头在第一坐标系中的第一位置和第一角度,所述应用程序支持虚拟现实功能;
建立模块,用于在切换回所述应用程序时,根据所述第一位置和所述第一角度建立第二坐标系;
获取模块,用于获取摄像头当前的第二位置和第二角度,所述第二位置和所述第二角度对应于所述第二坐标系;
变换模块,用于将所述第二位置从所述第二坐标系变换到所述第一坐标系,以获得第三位置;
确定模块,用于以所述第一位置和所述第一角度为基准,根据所述第三位置和所述第二角度确定所述摄像头当前在所述第一坐标系中对应的位置和角度。
7.根据权利要求6所述的装置,其特征在于,所述第一角度包括:第一俯仰角、第一航向角、第一翻滚角,其中,第一俯仰角和第一翻滚角被置为0;
所述建立模块具体用于:
将所述第一坐标系的坐标原点平移到所述第一位置处,对所述第一坐标系的Z轴进行所述第一航向角的旋转,以建立所述第二坐标系。
8.根据权利要求7所述的装置,其特征在于,所述变换模块具体用于:
对所述第二位置根据如下公式进行坐标变换:
x3=x2cos(α)+z2sin(α)
y3=y2
z3=-x2sin(α)+z2cos(α)
其中,x2、y2和z2分别为所述第二位置的三轴方向的坐标,α为所述第一航向角,x3、y3和z3分别为所述第三位置的三轴方向的坐标。
9.根据权利要求8所述的装置,其特征在于,所述确定模块具体用于:
确定所述摄像头当前在所述第一坐标系中对应的位置和角度分别为:所述第三位置对应叠加到所述第一位置后的位置,所述第二角度对应叠加到所述第一角度后的角度。
10.根据权利要求8所述的装置,其特征在于,所述确定模块具体用于:
确定所述摄像头当前在所述第一坐标系中对应的角度为:所述第二角度对应叠加到所述第一角度后的角度与航向角误差的差值;
其中,所述航向角误差为切换回所述应用程序后以预设时间间隔首次获得的摄像头的航向角。
CN201710375428.8A 2017-05-24 2017-05-24 应用切换处理方法和装置 Active CN107239333B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710375428.8A CN107239333B (zh) 2017-05-24 2017-05-24 应用切换处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710375428.8A CN107239333B (zh) 2017-05-24 2017-05-24 应用切换处理方法和装置

Publications (2)

Publication Number Publication Date
CN107239333A true CN107239333A (zh) 2017-10-10
CN107239333B CN107239333B (zh) 2020-10-09

Family

ID=59984458

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710375428.8A Active CN107239333B (zh) 2017-05-24 2017-05-24 应用切换处理方法和装置

Country Status (1)

Country Link
CN (1) CN107239333B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107908447A (zh) * 2017-10-31 2018-04-13 北京小鸟看看科技有限公司 应用切换方法、设备及虚拟现实设备
CN109271025A (zh) * 2018-08-31 2019-01-25 青岛小鸟看看科技有限公司 虚拟现实自由度模式切换方法、装置、设备及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000105813A (ja) * 1998-09-28 2000-04-11 Nikon Corp 画像連接システム、および画像連接プログラムを記録した記録媒体
CN104081433A (zh) * 2011-12-22 2014-10-01 派尔高公司 图像坐标和地图坐标之间的转换
CN105354820A (zh) * 2015-09-30 2016-02-24 深圳多新哆技术有限责任公司 调整虚拟现实图像的方法及装置
CN106095102A (zh) * 2016-06-16 2016-11-09 深圳市金立通信设备有限公司 一种虚拟现实显示界面处理的方法及终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000105813A (ja) * 1998-09-28 2000-04-11 Nikon Corp 画像連接システム、および画像連接プログラムを記録した記録媒体
CN104081433A (zh) * 2011-12-22 2014-10-01 派尔高公司 图像坐标和地图坐标之间的转换
CN105354820A (zh) * 2015-09-30 2016-02-24 深圳多新哆技术有限责任公司 调整虚拟现实图像的方法及装置
CN106095102A (zh) * 2016-06-16 2016-11-09 深圳市金立通信设备有限公司 一种虚拟现实显示界面处理的方法及终端

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107908447A (zh) * 2017-10-31 2018-04-13 北京小鸟看看科技有限公司 应用切换方法、设备及虚拟现实设备
CN109271025A (zh) * 2018-08-31 2019-01-25 青岛小鸟看看科技有限公司 虚拟现实自由度模式切换方法、装置、设备及系统
CN109271025B (zh) * 2018-08-31 2021-11-30 青岛小鸟看看科技有限公司 虚拟现实自由度模式切换方法、装置、设备及系统

Also Published As

Publication number Publication date
CN107239333B (zh) 2020-10-09

Similar Documents

Publication Publication Date Title
JP5869177B1 (ja) 仮想現実空間映像表示方法、及び、プログラム
US9436369B2 (en) Touch interface for precise rotation of an object
WO2017116570A1 (en) Real-time automatic vehicle camera calibration
US10860092B2 (en) Interface interaction apparatus and method
CN107562201B (zh) 定向交互方法、装置、电子设备及存储介质
CN112150551A (zh) 物体位姿的获取方法、装置和电子设备
US11054896B1 (en) Displaying virtual interaction objects to a user on a reference plane
CN105979360A (zh) 一种渲染图像的处理方法及装置
US20220237818A1 (en) Image Processing Method and Apparatus for Electronic Dvice, and Electronic Device
US11532138B2 (en) Augmented reality (AR) imprinting methods and systems
CN110969687A (zh) 一种碰撞检测方法、装置、设备和介质
CN107239333A (zh) 应用切换处理方法和装置
CN110465085A (zh) 弹幕处理方法、终端设备、电子设备及介质
CN110192169B (zh) 虚拟场景中菜单处理方法、装置及存储介质
CN104699249A (zh) 一种信息处理方法及电子设备
CN111880652A (zh) 用于移动ar对象位置的方法、装置及存储介质
CN114529691A (zh) 一种窗口控制方法、电子设备及计算机可读存储介质
CN113835352B (zh) 一种智能设备控制方法、系统、电子设备及存储介质
WO2015009188A1 (en) Systems and methods for automated generation of graphical user interfaces
CN105301778A (zh) 三维操控装置、头戴式装置及三维操控方法
CN106681506A (zh) 一种终端设备中非vr应用的交互方法及终端设备
CN106803856A (zh) 视频播放控制方法和装置
CN109718554A (zh) 一种实时渲染方法、装置及终端
JP2017059196A (ja) 仮想現実空間映像表示方法、及び、プログラム
WO2023240999A1 (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201015

Address after: 261031 north of Yuqing street, east of Dongming Road, high tech Zone, Weifang City, Shandong Province (Room 502, Geer electronic office building)

Patentee after: GoerTek Optical Technology Co.,Ltd.

Address before: 266104 Laoshan Qingdao District North House Street investment service center room, Room 308, Shandong

Patentee before: GOERTEK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221117

Address after: 266104 No. 500, Songling Road, Laoshan District, Qingdao, Shandong

Patentee after: GOERTEK TECHNOLOGY Co.,Ltd.

Address before: 261031 north of Yuqing street, east of Dongming Road, high tech Zone, Weifang City, Shandong Province (Room 502, Geer electronics office building)

Patentee before: GoerTek Optical Technology Co.,Ltd.