首页 / 专利库 / 专利权 / 国籍 / 一种独立于三维场景空间的目标标签表现方法

一种独立于三维场景空间的目标标签表现方法

阅读:459发布:2020-05-17

专利汇可以提供一种独立于三维场景空间的目标标签表现方法专利检索,专利查询,专利分析的服务。并且本 发明 一种独立于三维场景空间的目标标签表现方法:将目标的名称、类别、 国籍 、 位置 等 属性信息 ,通过独立于三维场景空间的二维表层(overlay)显示在场景中。优点是:基于二维表层(overlay)的标签独立于三维场景,是 叠加 在三维场景空间之上的一个层,与三维场景空间不属于同一个 坐标系 ,不随三维场景中摄像机的拖动或旋转而发生任何变换,对于观察者来说,基于overlay的标签显示始终面向观察者,而且当目标模型随场景摄像机远近移动而放大缩小时,标签大小始终保持不变,方便用户的观察。,下面是一种独立于三维场景空间的目标标签表现方法专利的具体信息内容。

1.一种独立于三维场景空间的目标标签表现方法,其特征是将目标的名称、类别、国籍位置属性信息通过独立于三维场景空间的二维表层显示在场景中,并通过坐标转换函数将相关场景节点的三维场景坐标转换为屏幕象素点投影坐标后对标签进行定位,在场景刷新的同时,不断更新标签的屏幕象素点坐标,使其始终随场景节点的移动而移动,另外,加入碰撞检测技术,当标签即将发生重叠时,重新对目标标签进行排列定位。
2.根据权利要求1所述的独立于三维场景空间的目标标签表现方法,其特征是,该方法实现步骤方法如下:
(1)标签类的定义
标签类基于二维表层,在标签类的构造函数中完成二维表层的创建,层容器OverlayContainer在表层框架中的排列及定位,以及元素OverlayElement在层容器中的排列及定位,另外,类的构造中还包括了表层的材质纹理设置,标签文字的字体、颜色、大小的设定;
(2)目标标签的场景节点挂载
创建标签类的同时,得到当前相关场景节点指针,通过坐标投影转换函数将当前相关场景节点的三维场景坐标转换为屏幕像素坐标,然后对标签进行定位,此方法在每一次场景渲染帧刷新时执行;
(3)目标标签的碰撞检测实现
如场景中目标过多,不可避免会发生标签重叠现象,本发明中加入了AABB包围盒Axis Aligned Bounding Box碰撞检测机制,为每个标签创建了几何特性简单的包围盒来近似地进行描述,通过包围盒重叠的部分进行相交测试,当发生重叠现象时,重新对即将发生重叠现象的标签进行有序排列。

说明书全文

一种独立于三维场景空间的目标标签表现方法

技术领域

[0001] 本发明涉及计算机图形学技术领域,主要涉及三维空间中利用独立于三维场景的二维表层(overlay)来实现目标标签显示,并加入碰撞检测技术,实现目标标签有序排列的方法。

背景技术

[0002] 三维场景中的二维表层(overlay)被放置在称为“表层(Overlay)”的渲染队列中。这个渲染队列与其他唯一不同之处在于:“表层(Overlay)”的渲染队列的渲染操作在所有其他渲染队列渲染之后进行(换句话说,它在整个三维场景的“最上面”)。表层的定位基于屏幕,是二维坐标系统,与三维场景空间属于不同的坐标系,所谓表层就是:一个“覆盖在”场景中所有其他物体上面的二维层。表层(Overlays)允许你在一般的场景内容上绘制二维或三维元素,例如:提示信息(heads-up displays(HUDs))、菜单系统、状态栏等。
[0003] 表层中主要的对象是容器(OverlayContainer)和元素(OverlayElement),容器可以被互相嵌套,也可以包含其他元素,子容器相对于父容器定位,其定位方式有绝对坐标(pixel)定位和相对坐标(relative)定位两种方式。另外,表层中的每个组件都有一个相应的“深度”。在二维概念中,我们把这个深度称之为z-order,其意义在于:较深(z-order值较小)的组件会被绘制在底层,而后会被较浅(z-order值较大)的组件覆盖。
[0004] 碰撞检测的基本原理就是利用相交检测的方法判断空间物体是否相交,其基本思想是用体积略大而几何特性简单的包围盒来近似地描述几何对象,进而通过构造树状层次结构可以越来越逼近对象地几何模型,直到几乎完全获得对象的几何特性,从而可以通过包围盒重叠的部分进行相交测试。本方法中所采用的AABB包围盒(Axis Aligned Bounding Box)碰撞检测方法是利用AABB构建的层次结构二叉树,将目标标签对象定义为包含该对象的且平行与坐标轴的最小六面体,AABB包围盒碰撞检测方法是一种在碰撞检测的研究历史中使用最久最广的碰撞检测方法。

发明内容

[0005] 本发明所要解决的主要技术问题是:
[0006] (1)如何使目标标签不随摄像机的移动旋转而放大缩小,其可视面始终面向用户。
[0007] (2)如何将通过屏幕象素点定位的表层(overlay)挂载在场景中移动的目标节点上。
[0008] (3)当前视口如果目标标签数量过多,如何让标签有序排列,避免目标标签重叠现象的发生。
[0009] 本发明一种独立于三维场景空间的目标标签表现方法的技术方案是:
[0010] (1)三维场景中的实体会随着观察者的远近而相应的放大和缩小,会随着观察者观察度的旋转自身相应的旋转,作为目标标签来说,观察者需要从标签中了解目标的属性信息,需要以二维的方式表现出来,不能放大缩小旋转,需要始终面向观察者,随时为观察者提供准确的信息,本方法中目标标签基于独立于三维场景空间的二维表层(overlay)来展现,将目标的各项属性信息以容器为单位排列在二维表层上,并挂载在相应的目标节点上,随目标一同移动更新,为观察者提供实时准确的信息。
[0011] (2)三维场景中的二维表层(overlay)被放置在称为“表层(Overlay)”的渲染队列中。一般用来显示提示信息(heads-up displays(HUDs))、菜单系统、状态栏等,表层独立于三维场景,也就是说,和三维空间中的实体属于不同的坐标系,表层定位是通过屏幕象素点定位的,而场景中的节点是通过三维空间坐标定位的,在本发明中,所使用的方法是,在创建标签类的同时,得到当前相关场景节点的指针,编写坐标转换函数,实现场景坐标到屏幕象素点的转换,然后刷新场景的同时,更新定位目标标签的位置,实际效果看起来就像是目标标签跟随场景节点一同移动和更新。
[0012] (3)由于目标标签不随场景摄像机的变换而变换,始终保持着一定的大小,如果场景中目标过多,不可避免的会发生目标标签重叠的现象,在本发明中,为了防止这种现象的发生,加入了AABB包围盒(Axis Aligned Bounding Box)碰撞检测机制,就是说为每个标签创建了几何特性简单的包围盒来近似地进行描述,通过包围盒重叠的部分进行相交测试,当发生重叠现象时,重新对即将发生重叠现象的标签进行有序排列。
[0013] 本发明一种独立于三维场景空间的目标标签表现方法的优点是:
[0014] 第一,二维表层(overlay)支持纹理填充,可以使标签的表现形式更加的丰富,例如可以加入各种定制的图片。较以前的单独用文字来描述目标信息的方法更加直观。
[0015] 第二,基于二维表层(overlay)的目标标签,独立于三维场景空间,其可视面始终面向摄像机,且不随摄像机的变换而发生任何变换。以前的标签大多数都是基于场景实体来实现的,将标签作为实体挂载在场景节点上随目标模型一同移动更新,与场景节点属于同一个场景空间,共用一个坐标系,当摄像机发生变换时再通过一系列的复杂的运算来控制节点上的标签变换。
[0016] 第三,加入AABB包围盒(Axis Aligned Bounding Box)碰撞检测机制可以有效的避免标签重叠现象的发生,当发生重叠现象时,通过场景侦的实时刷新对当前的标签进行有序排列,方便观察者得到更多准确的信息。附图说明
[0017] 图1为一种独立于三维场景空间的目标标签表现方法示意图。
[0018] 图2为目标标签场景节点挂载及碰撞检测实现流程示意图。

具体实施方式

[0019] 本发明提出了一种独立于三维场景空间的目标标签表现方法,具体为:将目标的名称、类别、国籍、位置等属性信息通过独立于三维场景空间的二维表层(overlay)显示在场景中,并通过坐标转换函数将相关场景节点的三维场景坐标转换为屏幕象素点投影坐标后对标签进行定位,在场景帧刷新的同时,不断更新标签的屏幕象素点坐标,使其始终随场景节点的移动而移动。如果当前视口中目标标签的数量较多,利用AABB包围盒(Axis Aligned Bounding Box)碰撞检测机制,随场景帧刷新的同时检测目标标签碰撞,当目标标签发生碰撞(重叠),重新对目标标签进行定位,让目标标签有序排列显示。
[0020] 其具体的实施分为以下两个步骤方法:
[0021] 1、目标标签类的定义
[0022] 单独为目标标签定义一个类,方便调用和管理,下面就类的一些主要成员函数作以下介绍:
[0023] (1)构造函数的定义,在构造函数中完成对目标标签所需要用到材质纹理,字体,字体大小,字体颜色,目标属性信息等进行初始化,定义一个指针,指向创建当前标签类的相关节点指针。
[0024] (2)目标标签表层创建函数,在此函数中创建表层(overlay),及表层容器(OverlayContainer)和元素(OverlayElement),并对其进行定位。
[0025] (3)场景坐标到屏幕投影坐标转换函数,此函数通过当前场景节点的指针得到当前场景节点的三维空间场景坐标,然后转换为屏幕投影象素点坐标。
[0026] (4)AABB包围盒(Axis Aligned Bounding Box)碰撞检测函数,为目标标签构建AABB包围盒,得到平行于视口平面的包围盒平面,并转换其四个顶点坐标为屏幕象素点坐标,得到最大最小屏幕象素点XY值。
[0027] 2、目标标签的场景节点挂载及碰撞检测实现
[0028] 三维场景中的二维表层(overlay)与三维空间中的实体属于不同的坐标系,独立于三维场景,三维场景节点不支持二维表层挂载,为了在效果上实现目标标签随场景节点移动,需在每一次场景渲染的同时,即每次渲染场景帧开始时,重新定位二维表层的屏幕象素点坐标,使之视觉效果上呈现目标标签随节点同时移动的效果,其具体的流程步骤如下:
[0029] (1)遍历所有目标标签对象,得到当前与标签相关的场景节点指针,通过摄像机指针得到当前视口。
[0030] (2)判断所有的场景节点有哪些是在当前的视口中,如果不在,则不做处理,如果在则调用坐标转换函数将场景节点的三维空间坐标转换为屏幕投影坐标。
[0031] (3)通过转换后的屏幕象素点坐标定位与其场景节点相关的目标标签到当前视口中。
[0032] (4)对当前视口中的目标标签作碰撞检测,对有相交碰撞的标签进行有序排列显示。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈