CN109448050A - 一种目标点的位置的确定方法及终端 - Google Patents
一种目标点的位置的确定方法及终端 Download PDFInfo
- Publication number
- CN109448050A CN109448050A CN201811402212.7A CN201811402212A CN109448050A CN 109448050 A CN109448050 A CN 109448050A CN 201811402212 A CN201811402212 A CN 201811402212A CN 109448050 A CN109448050 A CN 109448050A
- Authority
- CN
- China
- Prior art keywords
- plane
- ray
- point
- camera
- terminal
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种目标点的位置的确定方法及终端,方法包括:根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线;判断所述第一射线与所述AR平面是否相交;如果相交,确定出所述第一射线与所述AR平面的交点的位置;所述交点为所述目标点。采用本申请,可迅速根据获取到的AR平面的锚点,完成对AR平面中目标点所占据像素的渲染。
Description
技术领域
本申请涉及增强现实(Augmented Reality,AR)技术领域,尤其涉及一种目标点的位置的确定方法及终端。
背景技术
目前,终端通过AR kit从终端配置的ios设备摄像头中读取视频帧,对每一帧图片进行处理并获取特征点,并对确定出的特征点进行处理,获取到AR平面的锚点,在获取到AR平面的锚点之后,需要用户手动地对确定出的AR平面的锚点进行确认,操作比较麻烦。另外,在获取到锚点之前,该方案要求手持终端的用户在对AR平面进行拍摄时,要求用户长时间手持终端且不能抖动终端,然而,用户持续手持终端进行拍摄,容易致使用户产生疲倦感,用户体验差。
发明内容
本申请提供一种目标点的位置的确定方法及终端,可迅速根据获取到的AR平面的锚点,完成对AR平面中目标点所占据像素的渲染,用户体验高。
第一方面,本申请提供了一种目标点的位置的确定方法,该方法包括:
根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线;
判断所述第一射线与所述AR平面是否相交;如果相交,确定出所述第一射线与所述AR平面的交点的位置;所述交点为所述目标点。
结合第一方面,在一些可能的实施例中,所述AR平面的任意一点的位置满足以下关系:
其中,为所述AR平面的法向量。
结合第一方面,在一些可能的实施例中,
根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线,具体包括:
根据获取到的AR平面的锚点的位置(0,0,0)、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向生成第一射线
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量。
结合第一方面,在一些可能的实施例中,判断所述第一射线与所述AR平面是否相交,具体包括:
判断方程组是否有解,如果所述方程组有解,则判断出所述第一射线与所述AR平面相交;如果所述方程组无解,则所述终端判断出所述第一射线与所述AR平面不相交;其中,所述方程组为:
结合第一方面,在一些可能的实施例中,所述如果相交,确定出所述第一射线与所述AR平面的交点的位置,具体包括:
所述如果相交,确定出所述第一射线与所述AR平面的交点的位置表示为:
结合第一方面,在一些可能的实施例中,确定出所述第一射线与所述AR平面的交点的位置之后,还包括:
对所述交点的位置所占据的像素进行渲染。
第二方面,本申请提供了一种终端,该终端包括:
生成单元,用于根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线;
判断单元,用于判断所述第一射线与所述AR平面是否相交;
确定单元,用于如果相交,确定出所述第一射线与所述AR平面的交点的位置;所述交点为所述目标点。
结合第三方面,在一些可能的实施例中,
所述生成单元,具体用于:
根据获取到的AR平面的锚点的位置(0,0,0)、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向生成第一射线
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量。
结合第二方面,在一些可能的实施例中,
判断单元,具体可用于:判断方程组是否有解,如果所述方程组有解,则判断出所述第一射线与所述AR平面相交;如果所述方程组无解,则判断出所述第一射线与所述AR平面不相交;其中,所述方程组为:
确定单元,具体可用于:
所述如果相交,确定出所述第一射线与所述AR平面的交点的位置,具体包括:
所述如果相交,确定出所述第一射线与所述AR平面的交点的位置为:
结合第二方面,在一些可能的实施例中,
还包括:渲染单元,具体用于:
对所述交点的位置所占据的像素进行渲染。
第三方面,本申请提供了另一种终端,包括:显示装置、存储器以及耦合于所述存储器的处理器,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述程序代码执行上述第一方面的目标点的位置的确定方法。
第四方面,本申请提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的目标点的位置的确定方法。
第五方面,本申请提供了一种计算机程序,该计算机程序包括法线贴图的处理指令,当该计算机程序在计算机上执行时,上述图形处理指令用于执行上述第一方面的目标点的位置的确定方法。
本申请提供了一种目标点的位置的确定方法及终端。首先,终端可根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。然后,终端判断第一射线与AR平面是否相交。最后,如果相交,终端确定出第一射线与AR平面的交点的位置;交点为目标点。另外,终端可对上述交点的位置所占据的像素进行渲染。通过采用本申请,可迅速根据获取到AR平面的锚点,完成对AR平面中目标点所占据像素的渲染,用户体验高。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种AR系统的示意图;
图2是本申请提供的一种目标点的位置的确定方法的示意流程图;
图3是本申请提供的一种AR场景的示意图;
图4是本申请提供的另一种AR场景的示意图;
图5是本申请提供的又一种AR场景的示意图;
图6是本申请提供的一种终端的示意性框图;
图7是本申请提供的另一种终端的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
具体实现中,本申请中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端。然而,应当理解的是,终端可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。
终端支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。
可以在终端上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及终端上显示的相应信息。这样,终端的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
参见图1,是本申请提供的一种AR系统的示意图。
如图1所示,AR系统100可包括终端102,终端102可为移动装置(如智能手机),但本申请实施例中所描述的终端不限于智能手机。举例来说,终端102还可为任何便携式或移动装置,如数码相机、可携带式摄像机、平板计算机、个人数字助理、视频游戏控制台、头戴式显示器(HMD)或其它可穿戴显示器、投影仪、头盔、其它头戴式设备或其它装置。另外,作为移动装置的替代,可使用例如个人计算机(如桌上型计算机)等装置或其他非手持式装置或通常不被标记为移动装置的装置。终端102还可包含用于拍摄(俘获)现实世界物理环境中的物理对象的相机。
终端102可拍摄有(俘获)包含物理环境的图像(此处俘获放置有罐子的桌台的图像)且在补充有一个或多个虚拟对象的透明或半透明显示器上显示额外图像来扩增现实。如图1所示,三维角色106叠加在包含桌台104的物理环境的视图上。应当说明的,三维角色106可以是任何形式的虚拟对象,并不限于拟人角色。可准许三维角色106在以构建于桌台104的表面上的AR平面移动到各处位置。
参见图2,是本申请提供的一种目标点的位置的确定方法的示意流程图。如图2所示,该方法可以至少包括以下几个步骤:
S201、根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。
本申请实施例中,AR平面的锚点可用于连接在该锚点(锚定一个或多个物件)的一个或多个物件看起来会待在它们在现实世界中的放置位置。随着锚点姿态在由上述摄像头拍摄的每个帧中进行调整,以适应现实世界更新,锚点将相应地更新物件的姿态。应当说明的,AR场景中的锚点,应靠近锚定的物体。
图3示例性示出了一种AR场景的示意图。
如图3所示,AR场景为三维场景,AR平面S的锚点的位置为T,其中,位置T的坐标为(0,0,0),用于拍摄AR平面的摄像头的位置为摄像头的拍摄区域的中心线R的方向为其中,角度∠β1、∠β2所共同对应区域为摄像头的拍摄区域,∠β1=∠β2。
应当说明的,第一射线可表示为:
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量,α为变量。
应当说明的,终端在根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线之前,还包括以下步骤:
步骤1:终端可从摄像头中获取多帧拍摄(俘获)有AR平面的图片。
举例来说,终端可从摄像头中获取至少60帧拍摄(俘获)有AR平面的图片(例如:2s时长的视频)。
步骤2:终端可根据获取到多帧图片,可通过AR kit开发工具并利用尺度不变特征变换技术分别对多帧图片中的每一帧图片中确定出可在多个帧中都能被追踪到的特征。
步骤3:终端可根据上述多个帧中都能被追踪到的特征实时地估计出每一帧图片对应的摄像头的位置、摄像头的拍摄区域的中心线的方向以及AR平面的锚点的位置。
举例来说,终端可通过AR kit开发工具并利用尺度不变特征变换技术从每一帧图片中确定出N个特征,终端通过在N个特征中任意选择3个特征,即可确定出一个AR平面(或一帧图片);进而,终端可根据上述特征确定出C3N个AR平面;然后,终端可对确定出的多个AR平面的锚点的和法线等参数进行平均,从多个AR平面中确定出一个优选的目标AR平面,最后,终端可实时地获得目标AR平面的锚点的位置、摄像头的位置以及摄像头的拍摄区域的中心线的方向。
图4示例性示出了另一种AR场景的示意图。
如图4所示,该AR场景400可包含:桌台410的一部分(如:平坦表面),一些放置在桌台410上的物件415(如:书、杯子、玩具等等)。
应当说明的,终端402可俘获一帧或多帧图片,并根据上述步骤2所述的多个特征确定出的一帧目标图片,上述确定出的目标图片可通过终端402的显示器430上进行实时显示。另外,显示器430还可显示覆叠在上述目标图片上的AR图形或其他信息。终端402可包括但不限于:数码相机、可携带式摄像机、平板计算机、个人数字助理、视频游戏控制台、头戴式显示器(HMD)或其它可穿戴显示器、投影仪、头盔、其它头戴式设备或其它装置。
S202、判断第一射线与AR平面是否相交;如果相交,确定出第一射线与AR平面的交点的位置;交点为目标点。
本申请实施例中,AR平面的任意一点的位置满足以下关系:
其中,为AR平面的法向量。
举例来说,为(0,1,0)。
终端判断第一射线与AR平面是否相交,具体包括:
终端可判断方程组是否有解,如果方程组有解,则终端可判断出第一射线与AR平面相交。如果方程组无解,则终端可判断出第一射线与AR平面不相交。其中,方程组具体可为:
将方程代入方程中可得:
(或者,令则)
进而,可得
其中,为常数。也即是说,当时,第一射线与AR平面相交,此时,第一射线与AR平面的交点的位置可表示为:
终端确定出第一射线与AR平面的交点的位置之后,还包括:
对交点的位置所占据的像素进行渲染。
具体的,结合图3,第一射线与AR平面的交点的位置可为图3所示的
进而,终端可对该交点的位置所占据的像素进行渲染,使得在该交点位置处呈现AR图形。
本申请实施例中,下面列举以下5个对上述交点的位置所占据的像素进行渲染的应用场景。
场景1:打开导航地图,导航地图中的用于导航的小箭头的不定摆动让用户不能确定该往什么方向走。
在场景1下,通过本申请实施例提供的方案,可将导航地图结合AR技术来引导用户按照正确的方向前进。
图5示例性示出了又一种AR场景示意图。
如图5所示,在导航模式的AR场景下,终端通过对上述交点的位置所占据的像素进行渲染,渲染出小企鹅替代箭头来引导用户按照正确的方向前进。应当说明的,渲染出的用于给用户指路的小企鹅可使用户放松心情,可使得漫长的路途充满快乐,用户体验较高。
场景2:当用户来到一个陌生的城市旅游,面对众多的景点、美食店或名胜古迹等兴趣点,对于一些具有选择恐惧症的用户来说,往往为选择一个合适的兴趣点而纠结。在场景2下,通过本申请实施例提供的方案,如果用户的终端的旅游APP包含有AR功能,则当用户利用终端通过安装在该终端上的旅游APP的信息识别接口来扫描包含某个兴趣点(如:景点或美食店)的二维码,则终端可获取到上述景点的美食店、建筑物等立体图信息,并将该立体图信息通过终端的显示屏进行显示。因而,用户可通过终端的显示屏提前欣赏或了解待去的通过AR技术处理过的兴趣点,来决定将去参观的兴趣点。
场景3:手持终端的用户在运动过程中,无法实时地确知自身的生命体征数据(如:心率)、体能数据(如:跑步的前进速度)、与目的地的距离、与出发地的距离、跑步行进的实时路线、该跑步行进的实时路线的天气信息等等。
用户可从通过安装有AR系统的终端的显示屏,观察到通过AR技术显示或生成的用户的生命体征数据(如:心率)、体能数据(如:跑步的前进速度)、与目的地的距离、与出发地的距离、跑步行进的实时路线、该跑步行进的实时路线的天气信息以及当前的海拔高度等等。
场景4:高速公路的岔路口,经常会出现驾驶汽车的司机在岔路口走错路,导致发生严重车祸。
通过将AR系统搭载在汽车上,并将汽车的行进路线的环境中的物件(如:路标指示牌)叠加虚拟标记(进行高亮),形成可以层叠在行进路线的道路上的导航指示,并通过汽车的显示屏将导航指示进行显示。这样,驾驶汽车的司机可从汽车的显示屏上,观察到通过AR计算生成的叠加的虚拟标记,及时作出警觉且采取措施。
场景5:用户在购买衣服的过程中,需要不断地对相同款式、相同尺码的不同颜色的衣服通过试衣镜进行试穿,不停地试穿衣服,浪费时间,也十分麻烦。
试衣镜结合AR技术,用户只需要在试衣镜前更换成某件新衣服,用户可触摸通过AR技术生成或显示出的显示屏上的提示选项,来选择衣服的其他颜色,试衣镜可投射出该用户身着与相同款式、相同尺码的不同颜色的衣服的影像。这样,用户可节省大量的时间即可选择出自己喜爱的衣服。
综上所述,首先,终端可根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。然后,终端可判断第一射线与AR平面是否相交。最后,如果相交,终端可确定出第一射线与AR平面的交点的位置;交点为目标点。通过采用本申请实施例,可迅速根据获取到AR平面的锚点,并完成对AR平面中目标点所占据像素的渲染,用户体验高。
应当说明的,图3~图5仅仅用于解释本申请实施例,不应对本申请做出限制。
为了便于实施本申请实施例,本申请提供了一种终端,用于实现图2实施例所述的方法。图6所示的终端可以用于执行上述全部内容所述的分别对应的实施例中的描述。如图6所示,终端600可包括:生成单元601、判断单元602以及确定单元603,其中:
生成单元601,可用于根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。
判断单元602,可用于判断第一射线与AR平面是否相交。
确定单元603,可用于如果相交,确定出第一射线与上述AR平面的交点的位置;交点为目标点。
生成单元602,具体可用于:
根据获取到的AR平面的锚点的位置(0,0,0)、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向生成第一射线
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量。
应当说明的,AR平面的任意一点的位置满足以下关系:
其中,为AR平面的法向量。
判断单元602,具体可用于:
判断方程组是否有解,如果方程组有解,则判断出第一射线与AR平面相交;如果方程组无解,则判断出第一射线与所述AR平面不相交;其中,方程组为:
确定单元603,具体可用于:
如果相交,确定出第一射线与所述AR平面的交点的位置可表示为:
其中,为常数。也即是说,当时,第一射线与AR平面相交。
应当说明的,终端600可包括:生成单元601、判断单元602以及确定单元603之外,还包括:渲染单元。
渲染单元,可用于对交点的位置所占据的像素进行渲染。
综上所述,首先,终端600可通过生成单元601根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。然后,终端600可通过判断单元602判断第一射线与AR平面是否相交。最后,如果相交,终端600可通过确定单元603确定出第一射线与AR平面的交点的位置;交点为目标点。通过采用本申请实施例,可迅速根据获取到AR平面的锚点,完成对AR平面中目标点所占据像素的渲染,用户体验高。
应当理解,终端600仅为本申请实施例提供的一个例子,并且,终端600可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
可理解的,关于图6的终端600包括的功能块的具体实现方式,可参考前述图2所述的方法实施例,这里不再赘述。
图7是本申请提供的另一种终端的结构示意图。本申请实施例中,终端可以包括移动手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、移动互联网设备(Mobile Internet Device,MID)、智能穿戴设备(如智能手表、智能手环)等各种设备,本申请实施例不作限定。如图7所示,终端700可包括:基带芯片701、存储器702(一个或多个计算机可读存储介质)、外围系统703。这些部件可在一个或多个通信总线704上通信。
基带芯片701可包括:一个或多个处理器(CPU)705、一个或多个图形处理器(GPU)706。其中,图形处理器706可用于对第一射线与AR平面的交点的位置所占据的像素进行渲染。
处理器705,具体可用于以下步骤:
步骤1:根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。
更具体的,根据获取到的AR平面的锚点的位置(0,0,0)、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向生成第一射线
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量。
其中,AR平面的任意一点的位置满足以下关系:
其中,为AR平面的法向量。
步骤2:判断第一射线与AR平面是否相交;如果相交,确定出第一射线与AR平面的交点的位置;交点为目标点。
具体的,判断方程组是否有解,如果方程组有解,则判断出第一射线与AR平面相交;如果方程组无解,则判断出第一射线与AR平面不相交;其中,方程组为:
所述如果相交,确定出第一射线与AR平面的交点的位置为:
其中,为常数。也即是说,当时,第一射线与AR平面相交。
存储器702与处理器705耦合,可用于存储各种软件程序和/或多组指令。具体实现中,存储器702可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器702可以存储操作系统(下述简称系统),例如ANDROID,IOS,WINDOWS,或者LINUX等嵌入式操作系统。存储器702还可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个终端设备,一个或多个网络设备进行通信。存储器702还可以存储用户接口程序,该用户接口程序可以通过图形化的操作界面将应用程序的内容形象逼真的显示出来,并通过菜单、对话框以及按键等输入控件接收用户对应用程序的控制操作。
可理解的,存储器702可用于存储实现目标点的位置的确定方法的实现代码。
存储器702还可以存储一个或多个应用程序。如图7所示,这些应用程序可包括:社交应用程序(例如Facebook),图像管理应用程序(例如相册),地图类应用程序(例如谷歌地图),浏览器(例如Safari,Google Chrome)等等。
外围系统703主要用于实现终端700和用户/外部环境之间的交互功能,主要包括终端700的输入输出装置。具体实现中,外围系统703可包括:显示屏控制器707、摄像头控制器708以及音频控制器709。其中,各个控制器可与各自对应的外围设备(如显示屏710、摄像头711以及音频电路712)耦合。在一些实施例中,显示屏可以配置有自电容式的悬浮触控面板的显示屏,也可以是配置有红外线式的悬浮触控面板的显示屏。在一些实施例中,摄像头711可以是3D摄像头。需要说明的,外围系统703还可以包括其他I/O外设。
综上所述,首先,终端700可通过处理器705根据获取到的AR平面的锚点的位置、用于拍摄AR平面的摄像头的位置以及摄像头的拍摄区域的中心线的方向,生成第一射线。进而,终端700可通过处理器705判断第一射线与AR平面是否相交。如果相交,然后,终端700可通过处理器705确定出第一射线与AR平面的交点的位置;交点为目标点。最后,,终端700可通过图形处理器706对上述交点的位置所占据的像素进行渲染,可极大地提高用户体验。通过采用本申请实施例,可迅速根据获取到AR平面的锚点,完成对AR平面中目标点所占据像素的渲染,用户体验高。
应当理解,终端700仅为本申请实施例提供的一个例子,并且,终端700可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
可理解的,关于图7的终端700包括的功能模块的具体实现方式,可参考图2的方法实施例,此处不再赘述。
本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现。
该计算机可读存储介质可以是前述任一实施例所述的终端的内部存储单元,例如终端的硬盘或内存。该计算机可读存储介质也可以是终端的外部存储设备,例如终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步的,该计算机可读存储介质还可以既包括终端的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储计算机程序以及终端所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请还提供一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,该计算机包括电子装置。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
上述描述的终端实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、终端或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种目标点的位置的确定方法,其特征在于,包括:
根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线;
判断所述第一射线与所述AR平面是否相交;如果相交,确定出所述第一射线与所述AR平面的交点的位置;所述交点为所述目标点。
2.如权利要求1所述的方法,其特征在于,
所述AR平面的任意一点的位置满足以下关系:
其中,为所述AR平面的法向量。
3.如权利要求1所述的方法,其特征在于,所述根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线,具体包括:
根据获取到的AR平面的锚点的位置(0,0,0)、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向生成第一射线
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量,α为变量。
4.如权利要求1-3任一项所述的方法,其特征在于,所述判断所述第一射线与所述AR平面是否相交,具体包括:
判断方程组是否有解,如果所述方程组有解,则判断出所述第一射线与所述AR平面相交;如果所述方程组无解,则判断出所述第一射线与所述AR平面不相交;其中,所述方程组为:
5.如权利要求4所述的方法,其特征在于,所述如果相交,确定出所述第一射线与所述AR平面的交点的位置,具体包括:
所述如果相交,确定出所述第一射线与所述AR平面的交点的位置表示为:
6.如权利要求1所述的方法,其特征在于,所述确定出所述第一射线与所述AR平面的交点的位置之后,还包括:
对所述交点的位置所占据的像素进行渲染。
7.一种终端,其特征在于,包括:
生成单元,用于根据获取到的AR平面的锚点的位置、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向,生成第一射线;
判断单元,用于判断所述第一射线与所述AR平面是否相交;
确定单元,用于如果相交,确定出所述第一射线与所述AR平面的交点的位置;所述交点为所述目标点。
8.如权利要求7所述的终端,其特征在于,
所述生成单元,具体用于:
根据获取到的AR平面的锚点的位置(0,0,0)、用于拍摄所述AR平面的摄像头的位置以及所述摄像头的拍摄区域的中心线的方向生成第一射线
其中,表示一个行数为1列数为3的向量,表示一个行数为1列数为3的向量。
9.一种终端,其特征在于,包括:显示装置、存储器以及耦合于所述存储器的处理器,其中,所述存储器用于存储应用程序代码,所述处理器被配置用于调用所述程序代码,执行如权利要求1-6任一项所述目标点的位置的确定方法。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6任一项所述目标点的位置的确定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811402212.7A CN109448050B (zh) | 2018-11-21 | 2018-11-21 | 一种目标点的位置的确定方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811402212.7A CN109448050B (zh) | 2018-11-21 | 2018-11-21 | 一种目标点的位置的确定方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109448050A true CN109448050A (zh) | 2019-03-08 |
CN109448050B CN109448050B (zh) | 2022-04-29 |
Family
ID=65554069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811402212.7A Active CN109448050B (zh) | 2018-11-21 | 2018-11-21 | 一种目标点的位置的确定方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109448050B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110470315A (zh) * | 2019-06-27 | 2019-11-19 | 安徽四创电子股份有限公司 | 一种景点游客导航方法 |
CN111930240A (zh) * | 2020-09-17 | 2020-11-13 | 平安国际智慧城市科技股份有限公司 | 基于ar交互的运动视频采集方法、装置、电子设备及介质 |
CN112672057A (zh) * | 2020-12-25 | 2021-04-16 | 维沃移动通信有限公司 | 拍摄方法及装置 |
CN113409385A (zh) * | 2020-03-16 | 2021-09-17 | 上海哔哩哔哩科技有限公司 | 特征图像识别定位方法及系统 |
WO2022127479A1 (en) * | 2020-12-18 | 2022-06-23 | Huawei Technologies Co.,Ltd. | Methods and systems for selection of objects |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140184496A1 (en) * | 2013-01-03 | 2014-07-03 | Meta Company | Extramissive spatial imaging digital eye glass apparatuses, methods and systems for virtual or augmediated vision, manipulation, creation, or interaction with objects, materials, or other entities |
CN106327584A (zh) * | 2016-08-24 | 2017-01-11 | 上海与德通讯技术有限公司 | 一种用于虚拟现实设备的图像处理方法及装置 |
US9646201B1 (en) * | 2014-06-05 | 2017-05-09 | Leap Motion, Inc. | Three dimensional (3D) modeling of a complex control object |
CN106780610A (zh) * | 2016-12-06 | 2017-05-31 | 浙江大华技术股份有限公司 | 一种位置定位方法及装置 |
-
2018
- 2018-11-21 CN CN201811402212.7A patent/CN109448050B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140184496A1 (en) * | 2013-01-03 | 2014-07-03 | Meta Company | Extramissive spatial imaging digital eye glass apparatuses, methods and systems for virtual or augmediated vision, manipulation, creation, or interaction with objects, materials, or other entities |
US9646201B1 (en) * | 2014-06-05 | 2017-05-09 | Leap Motion, Inc. | Three dimensional (3D) modeling of a complex control object |
CN106327584A (zh) * | 2016-08-24 | 2017-01-11 | 上海与德通讯技术有限公司 | 一种用于虚拟现实设备的图像处理方法及装置 |
CN106780610A (zh) * | 2016-12-06 | 2017-05-31 | 浙江大华技术股份有限公司 | 一种位置定位方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110470315A (zh) * | 2019-06-27 | 2019-11-19 | 安徽四创电子股份有限公司 | 一种景点游客导航方法 |
CN113409385A (zh) * | 2020-03-16 | 2021-09-17 | 上海哔哩哔哩科技有限公司 | 特征图像识别定位方法及系统 |
CN113409385B (zh) * | 2020-03-16 | 2023-02-24 | 上海哔哩哔哩科技有限公司 | 特征图像识别定位方法及系统 |
CN111930240A (zh) * | 2020-09-17 | 2020-11-13 | 平安国际智慧城市科技股份有限公司 | 基于ar交互的运动视频采集方法、装置、电子设备及介质 |
WO2022127479A1 (en) * | 2020-12-18 | 2022-06-23 | Huawei Technologies Co.,Ltd. | Methods and systems for selection of objects |
US11475642B2 (en) | 2020-12-18 | 2022-10-18 | Huawei Technologies Co., Ltd. | Methods and systems for selection of objects |
US11688148B2 (en) | 2020-12-18 | 2023-06-27 | Huawei Technologies Co., Ltd. | Methods and systems for selection of objects |
CN112672057A (zh) * | 2020-12-25 | 2021-04-16 | 维沃移动通信有限公司 | 拍摄方法及装置 |
CN112672057B (zh) * | 2020-12-25 | 2022-07-15 | 维沃移动通信有限公司 | 拍摄方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109448050B (zh) | 2022-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109448050A (zh) | 一种目标点的位置的确定方法及终端 | |
US11003307B1 (en) | Artificial reality systems with drawer simulation gesture for gating user interface elements | |
JP2022540315A (ja) | 人工現実環境において周辺デバイスを使用する仮想ユーザインターフェース | |
KR101574099B1 (ko) | 다수의 장치에 걸친 증강 현실 표현 | |
JP7008730B2 (ja) | 画像に挿入される画像コンテンツについての影生成 | |
US20170287215A1 (en) | Pass-through camera user interface elements for virtual reality | |
JP2020513625A (ja) | 拡張現実および/または仮想現実環境におけるジェスチャーによる仮想注記面の生成 | |
US20200387286A1 (en) | Arm gaze-driven user interface element gating for artificial reality systems | |
JP2013141207A (ja) | ハンドヘルドプロジェクタを用いたマルチユーザインタラクション | |
US11086475B1 (en) | Artificial reality systems with hand gesture-contained content window | |
JP2022537614A (ja) | マルチ仮想キャラクターの制御方法、装置、およびコンピュータプログラム | |
JP2019197519A (ja) | クリエイティブカメラ | |
US10921879B2 (en) | Artificial reality systems with personal assistant element for gating user interface elements | |
KR20140005141A (ko) | 동작의 속성을 이용한 디스플레이 상의 3차원 사용자 인터페이스 효과 | |
US11043192B2 (en) | Corner-identifiying gesture-driven user interface element gating for artificial reality systems | |
TWI758869B (zh) | 互動對象的驅動方法、裝置、設備以及電腦可讀儲存介質 | |
EP3814876B1 (en) | Placement and manipulation of objects in augmented reality environment | |
JP2022534639A (ja) | 指マッピング自己触覚型入力方法を有する人工現実システム | |
US10853651B2 (en) | Virtual reality interaction method, apparatus and system | |
US10852839B1 (en) | Artificial reality systems with detachable personal assistant for gating user interface elements | |
US11449196B2 (en) | Menu processing method, device and storage medium in virtual scene | |
CN112581571B (zh) | 虚拟形象模型的控制方法、装置、电子设备及存储介质 | |
CN111971714A (zh) | 增强现实环境中的加载指示器 | |
TWI653546B (zh) | 具有外置追蹤及內置追蹤之虛擬實境系統及其控制方法 | |
WO2021254113A1 (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 |