CN105869214A - 一种基于虚拟现实设备的视锥体裁剪方法及装置 - Google Patents
一种基于虚拟现实设备的视锥体裁剪方法及装置 Download PDFInfo
- Publication number
- CN105869214A CN105869214A CN201510844979.5A CN201510844979A CN105869214A CN 105869214 A CN105869214 A CN 105869214A CN 201510844979 A CN201510844979 A CN 201510844979A CN 105869214 A CN105869214 A CN 105869214A
- Authority
- CN
- China
- Prior art keywords
- cutting
- human body
- angle
- visual field
- view frustums
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/30—Clipping
-
- 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
-
- 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
- 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
- G06F3/012—Head tracking input arrangements
-
- 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
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- 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
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
- H04N13/279—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals the virtual viewpoint locations being selected by the viewers or determined by tracking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/366—Image reproducers using viewer tracking
- H04N13/383—Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Geometry (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Architecture (AREA)
- Computing Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例提供一种基于虚拟现实设备的视锥体裁剪方法、装置、显示方法及虚拟现实设备,该基于虚拟现实设备的视锥体裁剪方法包括:确定人体左眼的第一视场角和右眼的第二视场角;获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。本发明实施例提供的基于虚拟现实设备的视锥体裁剪方法、装置、显示方法及虚拟现实设备,有效地减少了视锥体裁剪过程中的计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
Description
技术领域
本发明实施例涉及计算机图形技术领域,尤其涉及一种基于虚拟现实设备的视锥体裁剪方法、装置、显示方法及虚拟现实设备。
背景技术
虚拟现实技术(VR)是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,该模拟环境是一种多源信息融合的交互式的3D场景和实体行为的系统仿真,能够使用户沉浸到该环境中。
视锥体,是指场景中摄像机的一个可见锥体范围。由于透视变换的缘故,计算机应用的视锥体是一个四棱台观测金字塔,由上底、下底、左、右、前、后共6个面围成。在视锥体内的景物可见,反之则不可见。当人眼观察一个场景时,在视锥体之外的物体是看不见的,因此可以在显示前,将不可见的场景剔除掉,且不会对场景渲染造成影响。这样,渲染场景过程中,在视锥体中的所有顶点数据都是可见的,而在视锥体之外的场景数据是不可见的。视锥体裁剪就是在顶点数据送至渲染管线之前,将这些不可见的场景数据剔除掉。
当前在基于手机的虚拟现实(VR)方案中,采用根据头部的移动计算出的左、右两只眼的视场角分别对3D场景进行视锥体裁剪的方式,实现虚拟现实设备的视锥体裁剪。
但是,在实现本发明过程中,发明人发现现有技术至少存在以下问题:
现有技术中,需要根据头部的移动计算出左右两只眼的视场角,并根据左右两只眼的视场角分别对3D场景进行视锥体裁剪,因此,需要进行两次裁剪计算,不仅裁剪复杂,而且两次视锥体裁剪后的几何体进行渲染时,存在渲染延迟,进而带来显示延迟问题。
发明内容
本发明实施例提供一种基于虚拟现实设备的视锥体裁剪方法、装置、显示方法及虚拟现实设备,以解决现有技术中对3D场景进行视锥体裁剪过程中,需要进行两次裁剪计算带来的延迟问题,快速而方便地实现对VR 3D场景的剪裁。
本发明实施例提供一种基于虚拟现实设备的视锥体裁剪方法,包括:
确定人体左眼的第一视场角和右眼的第二视场角;
获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;
根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。
本发明实施例提供一种基于虚拟现实设备的显示方法,包括:
获取由上述所述的基于虚拟现实设备的视锥体裁剪方法裁剪后的待呈现的3D场景中的几何体;
对所述裁剪后的待呈现的3D场景中几何体进行渲染绘制;
显示渲染绘制后的待呈现的3D场景中几何体。
本发明实施例提供一种基于虚拟现实设备的视锥体裁剪装置,包括:
确定模块,用于确定人体左眼的第一视场角和右眼的第二视场角;
获取模块,用于获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;
处理模块,用于根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。
本发明实施例提供一种虚拟现实设备,所述虚拟现实设备包括获取单元、渲染单元、显示单元以及如上所述的基于虚拟现实设备的视锥体裁剪装置;
所述获取单元,用于获取由所述基于虚拟现实设备的视锥体裁剪装置裁剪后的待呈现的3D场景中的几何体;
所述渲染单元,用于对所述获取单元获取的裁剪后的待呈现的3D场景中几何体进行渲染绘制;
所述显示单元,用于显示所述渲染单元渲染绘制后的待呈现的3D场景中几何体。
本发明实施例提供的基于虚拟现实设备的视锥体裁剪方法、装置、显示方法及虚拟现实设备,通过将人体左、右眼视场角的并集区域作为人体的真实视锥体,根据该真实视锥体做视锥体剪裁,大幅减少绘制几何体数据量,进而减少视锥体裁剪过程中的计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图:
图1为本发明基于虚拟现实设备的视锥体裁剪方法实施例流程图;
图2为本发明基于虚拟现实设备的显示方法实施例流程图;
图3为本发明基于虚拟现实设备的视锥体裁剪装置实施例结构示意图;
图4为本发明虚拟现实设备实施例结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。
图1示出了本发明实施例的一种基于虚拟现实设备的视锥体裁剪方法的流程图。
参照图1,本发明实施例提出的基于虚拟现实设备的视锥体裁剪方法,具体包括以下步骤:
S11、确定人体左眼的第一视场角和右眼的第二视场角;
在实际应用中,采用虚拟现实设备进行VR体验时,人体的左右眼的视场角是不同的,为了实现VR3D场景的视锥体裁剪,需要预先得到人体左眼的第一视场角和右眼的第二视场角。
需要说明的是,本实施例中的虚拟现实设备为具有虚拟现实功能的智能设备,如VR头盔以及VR眼镜等,本发明对此不做具体限定。
S12、获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;
具体的,根据步骤S11中确定的人体左眼的第一视场角和人体右眼的第二视场角,对左右眼两个视场角求并集,得到的并集区域即为左右眼的可视区域的合并部分,因此,可将得到的并集区域作为人体真实的视锥体。
S13、根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。
本步骤中,通过根据已得到的人体真实的视锥体,对虚拟现实设备当前待呈现的3D场景中的几何体进行裁剪,解决了现有技术中对3D场景进行视锥体裁剪过程中,需要根据左右眼的视锥体分别进行两次裁剪计算带来的延迟问题,快速而方便地实现对VR 3D场景的剪裁。
本发明实施例,通过将人体左、右眼视场角的并集区域作为人体的真实视锥体,根据该真实视锥体做视锥体剪裁,大幅减少绘制几何体数据量,进而减少视锥体裁剪过程中的计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
进一步地,所述步骤S11中确定人体左眼的第一视场角和右眼的第二视场角,具体包括以下图中未示出的步骤:
S111、获取人体头部的空间状态信息以及当前虚拟现实设备的系统设置参数;
具体的,所述获取人体头部的空间状态信息,包括:
接收体感装置上传的人体头部的体感数据;
根据所述体感数据确定人体头部的空间状态信息。
其中,本实施例中的人体头部的空间状态信息,具体包括当前人体头部移动的方位信息、速度信息和位置信息。虚拟现实设备的系统设置参数包括:虚拟现实设备左右眼镜片之间的距离、左右眼镜片距离屏幕的距离、虚拟现实设备和左右眼镜片的尺寸与规格等参数信息。
需要说明的是,人体头部对应的方位信息可包括:头部在空间中三个维度的位移,即包括前后位移,上下位移、左右位移,或者是这些位移的组合等。
其中,本实施例中的体感装置包括指南针、陀螺仪、无线信号模块以及至少一个传感器以用于探测人体头部的体感数据。其中,所述传感器包括加速度传感器、方向传感器、磁力传感器、重力传感器、旋转矢量传感器、线性加速度传感器中的一种或多种。
S112、根据所述系统设置参数以及所述人体头部的空间状态信息确定人体左眼的第一视场角和右眼的第二视场角。
具体的,根据人体头部移动的方位信息、速度信息和位置信息,结合虚拟现实设备的系统设置参数确定出人体左眼的第一视场角和人体右眼的第二视场角。
进一步地,所述步骤S13中根据所述视锥体对3D场景中的几何体进行裁剪,具体包括以下图中未示出的步骤:
S131、确定所述视锥体的六个平面对应的空间平面方程;
S132、根据所述空间平面方程判定所述3D场景中的几何体的每一点坐标与每一平面的位置关系;
S133、根据所述位置关系确定所述视锥体的裁剪平面;
S134、根据所述裁剪平面对所述视锥体进行裁剪。
实际应用中,通过计算出视锥体六个平面对应的空间平面方程,将3D场景中的几何体的每一点坐标分别代入六个面的平面方程做比较,则可以判断点是否在视锥体内。
下面对本发明实施例中的视锥体裁剪的具体实现方法进行详细的说明。
已知的,空间平面方程可表示为:Ax+By+Cz=0
相应的,对于点(x1,y1,z1),有
若Ax1+By1+Cz1=0,则点在平面上;
若Ax1+By1+Cz1<0,则点在平面的一侧;
若Ax1+By1+Cz1=0,则点在平面的另一侧;
首先,求视锥平面系数,确定视锥体的六个平面对应的空间平面方程。
本算法从世界、观察以及投影矩阵中计算出Viewing Frustum的六个面。它快速,准确,并且允许我们在相机空间(camera space)、世界空间(world space)或物体空间(object space)快速确定视景平面(Frustum planes)。
从投影矩阵(project)开始,假设世界矩阵(world)和观察矩阵(view)都是单位化了的矩阵。这就意味着相机位于世界坐标系下的原点,并且朝向Z轴的正方向。
定义一个顶点v(xyzw=1)和一个4*4的投影矩阵M=m(i,j),然后使用该矩阵M对顶点v进行转换,转换后的顶点为v'=(x'y'z'w')。转换后,viewing frustum实际上就变成了一个与轴平行的盒子,如果顶点v'在这个盒子里,那么转换前的顶点v就在转换前的viewing frustum里。在3D程序接口OpenGL下,如果下面的几个不等式都成立的话,那么v'就在这个盒子里。
-w'<x'<w'
-w'<y'<w'
-w'<z'<w'
假设现在想测试x'是否在左半边空间,只需判断
-w<x'
用上面的信息,等式可以写成:
-(v·row4)<(v·row1)
0<(v·row4)+(v·row1)
0<v·(row4+row1)
得到转换前的viewing frustum的左裁剪面的平面方程:
x(m41+m11)+y(m42+m12)+z(m43+m13)+w(m44+m14)=0
当W=1,该左裁剪面的平面方程可简单成如下形式:
x(m41+m11)+y(m42+m12)+z(m43+m13)+(m44+m14)=0
得到一个基本平面方程:
ax+by+cz+d=0
其中,a=(m41+m11),b=(m42+m12),c=(m43+m13),d=(m44+m14)
即得到了左裁剪面。
重复以上几步,可推导出到其他的几个裁剪面。
进一步地,可得到以下结论:
1.如果矩阵M等于投影矩阵P(M=P),那么算法给出的裁剪面是在相机空间;
2.如果矩阵M等于观察矩阵V和投影矩阵P的组合(M=V*P),那么算法给出的裁剪面是在世界空间;
3.如果矩阵M等于世界矩阵W,观察矩阵V和投影矩阵P的组合(M=W*V*P),那么算法给出的裁剪面是在物体空间;
进一步地,判断节点是否在视锥内的步骤如下:
通过各种包围体方法求出近似包围体,对包围体上的各个点对视锥六个面作判断,存在以下三种情况:
如果所有顶点都在视锥范围内,则待判区域一定在视锥范围内;
如果只有部分顶点在视锥范围内,则待判区域与视锥体相交,我们同样视为可见;
如果所有顶点都不在视锥范围内,那么待判区域很可能不可见了,但有一种情况例外,就是视锥体在长方体以内,这种情况我们要加以区分。
图2示出了本发明实施例的一种基于虚拟现实设备的显示方法的流程图。
参照图2,本发明实施例提出的基于虚拟现实设备的显示方法,具体包括以下步骤:
S21、获取由上述任一实施例所述的基于虚拟现实设备的视锥体裁剪方法裁剪后的待呈现的3D场景中的几何体;
S22、对所述裁剪后的待呈现的3D场景中几何体进行渲染绘制;
具体的,渲染绘制时只对与真实视锥体有交集的几何体进行绘制,对3D场景中裁剪后的几何体进行渲染绘制,渲染后进行反畸变和反色散处理并显示。
S23、显示渲染绘制后的待呈现的3D场景中几何体。
本发明实施例中,根据由人体左、右眼视场角的并集区域确定的真实视锥体对当前待呈现的3D场景中的几何体进行视锥体裁剪后,通过对裁剪后的待呈现的3D场景中几何体进行渲染绘制,并显示渲染绘制后的待呈现的3D场景中几何体,实现虚拟现实设备的显示。
本发明实施例提供的基于虚拟现实设备的显示方法,通过对左右眼视锥体统一处理后做视锥体剪裁,大幅减少绘制几何体数据量,减少了计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
另外,对于上述方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明所必须的。
基于与方法同样的发明构思,本发明实施例还提供一种基于虚拟现实设备的视锥体裁剪装置,图3示出了本发明实施例的一种基于虚拟现实设备的视锥体裁剪装置的结构示意图。
参照图3,本发明实施例提出的基于虚拟现实设备的视锥体裁剪装置,具体包括确定模块201、获取模块202以及处理模块203,其中:
所述的确定模块201,用于确定人体左眼的第一视场角和右眼的第二视场角;
在实际应用中,采用虚拟现实设备进行VR体验时,人体的左右眼的视场角是不同的,为了实现VR3D场景的视锥体裁剪,需要预先得到人体左眼的第一视场角和右眼的第二视场角。
需要说明的是,本实施例中的虚拟现实设备为具有虚拟现实功能的智能设备,如VR头盔以及VR眼镜等,本发明对此不做具体限定。
所述的获取模块202,用于获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;
获取模块,根据确定模块201确定的人体左眼的第一视场角和人体右眼的第二视场角,对左右眼两个视场角求并集,得到的并集区域即为左右眼的可视区域的合并部分,因此,可将得到的并集区域作为人体真实的视锥体。
所述的处理模块203,用于根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。
本实施例中,处理模块通过根据已得到的人体真实的视锥体,对虚拟现实设备当前待呈现的3D场景中的几何体进行裁剪,解决了现有技术中对3D场景进行视锥体裁剪过程中,需要根据左右眼的视锥体分别进行两次裁剪计算带来的延迟问题,快速而方便地实现对VR 3D场景的剪裁。
本发明实施例,通过将人体左、右眼视场角的并集区域作为人体的真实视锥体,根据该真实视锥体做视锥体剪裁,大幅减少绘制几何体数据量,进而减少视锥体裁剪过程中的计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
进一步地,所述确定模块201,包括获取单元和第一确定单元,其中:
所述的获取单元,用于获取人体头部的空间状态信息以及当前虚拟现实设备的系统设置参数;
所述的第一确定单元,用于根据所述系统设置参数以及所述人体头部的空间状态信息确定人体左眼的第一视场角和右眼的第二视场角。
其中,所述获取单元,进一步包括接收子单元和确定子单元,其中:
所述的接收子单元,用于接收体感装置上传的人体头部的体感数据;
所述的确定子单元,用于根据所述接收子单元接收到的体感数据确定人体头部的空间状态信息。
进一步地,所述处理模块203,包括第二确定单元、判定单元、第三确定单元以及裁剪单元,其中:
第二确定单元,用于确定所述视锥体的六个平面对应的空间平面方程;
判定单元,用于根据所述空间平面方程判定所述3D场景中的几何体的每一点坐标与每一平面的位置关系;
第三确定单元,用于根据所述位置关系确定所述视锥体的裁剪平面;
裁剪单元,用于根据所述裁剪平面对所述视锥体进行裁剪。
此外,本发明实施例还提供一种虚拟现实设备,如图4所示,所述虚拟现实设备具体包括:获取单元10、渲染单元30、显示单元40以及如上述任一实施例所述的基于虚拟现实设备的视锥体裁剪装置20,其中;
所述获取单元10,用于获取所述基于虚拟现实设备的视锥体裁剪装置20裁剪后的待呈现的3D场景中的几何体。
所述渲染单元30,用于对所述获取单元获取10的裁剪后的待呈现的3D场景中几何体进行渲染绘制。
具体的,渲染单元30在渲染绘制时只对与真实视锥体有交集的几何体进行绘制,对3D场景中裁剪后的几何体进行渲染绘制,渲染后进行反畸变和反色散处理并显示。
所述显示单元40,用于显示所述渲染单元20渲染绘制后的待呈现的3D场景中几何体。
本发明实施例提供的虚拟现实设备,通过对左右眼视锥体统一处理后做视锥体剪裁,大幅减少绘制几何体数据量,减少了计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
具体的,渲染绘制时只对与真实视锥体有交集的几何体进行绘制,对3D场景中裁剪后的几何体进行渲染绘制,渲染后进行反畸变和反色散处理并显示。
对于装置实施例而言,由于其与对应的方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
综上所述,本发明实施例提供的基于虚拟现实设备的视锥体裁剪方法、装置、显示方法及虚拟现实设备,通过将人体左、右眼视场角的并集区域作为人体的真实视锥体,根据该真实视锥体做视锥体剪裁,大幅减少绘制几何体数据量,进而减少视锥体裁剪过程中的计算量,提高了渲染效率,减少了采用传统视锥体剪裁造成的渲染延迟。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于虚拟现实设备的视锥体裁剪方法,其特征在于,所述方法包括:
确定人体左眼的第一视场角和右眼的第二视场角;
获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;
根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。
2.根据权利要求1所述的方法,其特征在于,所述确定人体左眼的第一视场角和右眼的第二视场角,包括:
获取人体头部的空间状态信息以及当前虚拟现实设备的系统设置参数;
根据所述系统设置参数以及所述人体头部的空间状态信息确定人体左眼的第一视场角和右眼的第二视场角。
3.根据权利要求2所述的方法,其特征在于,所述获取人体头部的空间状态信息,包括:
接收体感装置上传的人体头部的体感数据;
根据所述体感数据确定人体头部的空间状态信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述视锥体对3D场景中的几何体进行裁剪,包括:
确定所述视锥体的六个平面对应的空间平面方程;
根据所述空间平面方程判定所述3D场景中的几何体的每一点坐标与每一平面的位置关系;
根据所述位置关系确定所述视锥体的裁剪平面;
根据所述裁剪平面对所述视锥体进行裁剪。
5.一种基于虚拟现实设备的显示方法,其特征在于,所述方法包括:
获取由权利要求1~4中任一项所述的基于虚拟现实设备的视锥体裁剪方法裁剪后的待呈现的3D场景中的几何体;
对所述裁剪后的待呈现的3D场景中几何体进行渲染绘制;
显示渲染绘制后的待呈现的3D场景中几何体。
6.一种基于虚拟现实设备的视锥体裁剪装置,其特征在于,所述装置包括:
确定模块,用于确定人体左眼的第一视场角和右眼的第二视场角;
获取模块,用于获取所述第一视场角和第二视场角的并集区域,将所述并集区域作为人体的视锥体;
处理模块,用于根据所述视锥体对当前待呈现的3D场景中的几何体进行裁剪。
7.根据权利要求6所述的装置,其特征在于,所述确定模块,包括:
获取单元,用于获取人体头部的空间状态信息以及当前虚拟现实设备的系统设置参数;
第一确定单元,用于根据所述系统设置参数以及所述人体头部的空间状态信息确定人体左眼的第一视场角和右眼的第二视场角。
8.根据权利要求7所述的装置,其特征在于,所述获取单元,包括:
接收子单元,用于接收体感装置上传的人体头部的体感数据;
确定子单元,用于根据所述接收子单元接收到的体感数据确定人体头部的空间状态信息。
9.根据权利要求6所述的装置,其特征在于,所述处理模块,包括:
第二确定单元,用于确定所述视锥体的六个平面对应的空间平面方程;
判定单元,用于根据所述空间平面方程判定所述3D场景中的几何体的每一点坐标与每一平面的位置关系;
第三确定单元,用于根据所述位置关系确定所述视锥体的裁剪平面;
裁剪单元,用于根据所述裁剪平面对所述视锥体进行裁剪。
10.一种虚拟现实设备,其特征在于,所述虚拟现实设备包括获取单元、渲染单元、显示单元以及如权利要求6~9任一项所述的基于虚拟现实设备的视锥体裁剪装置;
所述获取单元,用于获取由所述基于虚拟现实设备的视锥体裁剪装置裁剪后的待呈现的3D场景中的几何体;
所述渲染单元,用于对所述获取单元获取的裁剪后的待呈现的3D场景中几何体进行渲染绘制;
所述显示单元,用于显示所述渲染单元渲染绘制后的待呈现的3D场景中几何体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510844979.5A CN105869214A (zh) | 2015-11-26 | 2015-11-26 | 一种基于虚拟现实设备的视锥体裁剪方法及装置 |
PCT/CN2016/082511 WO2017088361A1 (zh) | 2015-11-26 | 2016-05-18 | 一种基于虚拟现实设备的视锥体裁剪方法及装置 |
US15/242,522 US20170154460A1 (en) | 2015-11-26 | 2016-08-20 | Viewing frustum culling method and device based on virtual reality equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510844979.5A CN105869214A (zh) | 2015-11-26 | 2015-11-26 | 一种基于虚拟现实设备的视锥体裁剪方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105869214A true CN105869214A (zh) | 2016-08-17 |
Family
ID=56623781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510844979.5A Pending CN105869214A (zh) | 2015-11-26 | 2015-11-26 | 一种基于虚拟现实设备的视锥体裁剪方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170154460A1 (zh) |
CN (1) | CN105869214A (zh) |
WO (1) | WO2017088361A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780313A (zh) * | 2016-12-28 | 2017-05-31 | 网易(杭州)网络有限公司 | 图像处理方法及装置 |
CN108470368A (zh) * | 2018-03-14 | 2018-08-31 | 北京奇艺世纪科技有限公司 | 一种虚拟场景中渲染对象的确定方法、装置及电子设备 |
CN109725956A (zh) * | 2017-10-26 | 2019-05-07 | 腾讯科技(深圳)有限公司 | 一种场景渲染的方法以及相关装置 |
CN110264393A (zh) * | 2019-05-15 | 2019-09-20 | 联想(上海)信息技术有限公司 | 一种信息处理方法、终端和存储介质 |
CN110930307A (zh) * | 2019-10-31 | 2020-03-27 | 北京视博云科技有限公司 | 图像处理方法和装置 |
WO2022000260A1 (zh) * | 2020-06-30 | 2022-01-06 | 深圳市大疆创新科技有限公司 | 地图的更新方法、装置、可移动平台及存储介质 |
CN116880723A (zh) * | 2023-09-08 | 2023-10-13 | 江西格如灵科技股份有限公司 | 一种3d场景显示方法及系统 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10089788B2 (en) * | 2016-05-25 | 2018-10-02 | Google Llc | Light-field viewpoint and pixel culling for a head mounted display device |
US10969740B2 (en) | 2017-06-27 | 2021-04-06 | Nvidia Corporation | System and method for near-eye light field rendering for wide field of view interactive three-dimensional computer graphics |
GB2569176B (en) * | 2017-12-08 | 2022-04-13 | Displaylink Uk Ltd | Processing visual information for display on a screen |
US10535180B2 (en) | 2018-03-28 | 2020-01-14 | Robert Bosch Gmbh | Method and system for efficient rendering of cloud weather effect graphics in three-dimensional maps |
US10901119B2 (en) | 2018-03-28 | 2021-01-26 | Robert Bosch Gmbh | Method and system for efficient rendering of accumulated precipitation for weather effects |
US11373356B2 (en) | 2018-03-28 | 2022-06-28 | Robert Bosch Gmbh | Method and system for efficient rendering of 3D particle systems for weather effects |
CN112785530B (zh) * | 2021-02-05 | 2024-05-24 | 广东九联科技股份有限公司 | 用于虚拟现实的图像渲染方法、装置、设备及vr设备 |
CN113345060A (zh) * | 2021-06-01 | 2021-09-03 | 温州大学 | 数字孪生模型的渲染方法、视锥体剔除方法及系统 |
CN115423707A (zh) * | 2022-08-31 | 2022-12-02 | 深圳前海瑞集科技有限公司 | 基于视锥体的点云滤波方法、机器人及机器人作业方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000460A (zh) * | 2006-01-10 | 2007-07-18 | 钟明 | 一种环幕立体电影图像的制作方法 |
US20110029903A1 (en) * | 2008-04-16 | 2011-02-03 | Virtual Proteins B.V. | Interactive virtual reality image generating system |
US20140327613A1 (en) * | 2011-12-14 | 2014-11-06 | Universita' Degli Studidi Genova | Improved three-dimensional stereoscopic rendering of virtual objects for a moving observer |
CN104881870A (zh) * | 2015-05-18 | 2015-09-02 | 浙江宇视科技有限公司 | 面向待观察点的监控实况启动方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060080072A1 (en) * | 2003-03-12 | 2006-04-13 | Computer Associates Think, Inc. | Optimized rendering of dynamic moving bodies |
CN201210356Y (zh) * | 2008-05-07 | 2009-03-18 | 上海海事大学 | 基于立体全景的虚拟船舶驾驶系统 |
US20100328428A1 (en) * | 2009-06-26 | 2010-12-30 | Booth Jr Lawrence A | Optimized stereoscopic visualization |
US8611015B2 (en) * | 2011-11-22 | 2013-12-17 | Google Inc. | User interface |
CN102663805B (zh) * | 2012-04-18 | 2014-05-28 | 东华大学 | 一种基于投影的视锥体裁剪的方法 |
-
2015
- 2015-11-26 CN CN201510844979.5A patent/CN105869214A/zh active Pending
-
2016
- 2016-05-18 WO PCT/CN2016/082511 patent/WO2017088361A1/zh active Application Filing
- 2016-08-20 US US15/242,522 patent/US20170154460A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000460A (zh) * | 2006-01-10 | 2007-07-18 | 钟明 | 一种环幕立体电影图像的制作方法 |
US20110029903A1 (en) * | 2008-04-16 | 2011-02-03 | Virtual Proteins B.V. | Interactive virtual reality image generating system |
US20140327613A1 (en) * | 2011-12-14 | 2014-11-06 | Universita' Degli Studidi Genova | Improved three-dimensional stereoscopic rendering of virtual objects for a moving observer |
CN104881870A (zh) * | 2015-05-18 | 2015-09-02 | 浙江宇视科技有限公司 | 面向待观察点的监控实况启动方法及装置 |
Non-Patent Citations (1)
Title |
---|
MICHAEL VINCENT CAPPS: "Shared-Frustum Stereo Rendering", 《MASSACHUSETTS INSTITUTE OF TECHNOLOGY》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780313A (zh) * | 2016-12-28 | 2017-05-31 | 网易(杭州)网络有限公司 | 图像处理方法及装置 |
CN109725956A (zh) * | 2017-10-26 | 2019-05-07 | 腾讯科技(深圳)有限公司 | 一种场景渲染的方法以及相关装置 |
CN108470368A (zh) * | 2018-03-14 | 2018-08-31 | 北京奇艺世纪科技有限公司 | 一种虚拟场景中渲染对象的确定方法、装置及电子设备 |
CN110264393A (zh) * | 2019-05-15 | 2019-09-20 | 联想(上海)信息技术有限公司 | 一种信息处理方法、终端和存储介质 |
CN110264393B (zh) * | 2019-05-15 | 2023-06-23 | 联想(上海)信息技术有限公司 | 一种信息处理方法、终端和存储介质 |
CN110930307A (zh) * | 2019-10-31 | 2020-03-27 | 北京视博云科技有限公司 | 图像处理方法和装置 |
WO2022000260A1 (zh) * | 2020-06-30 | 2022-01-06 | 深圳市大疆创新科技有限公司 | 地图的更新方法、装置、可移动平台及存储介质 |
CN116880723A (zh) * | 2023-09-08 | 2023-10-13 | 江西格如灵科技股份有限公司 | 一种3d场景显示方法及系统 |
CN116880723B (zh) * | 2023-09-08 | 2023-11-17 | 江西格如灵科技股份有限公司 | 一种3d场景显示方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2017088361A1 (zh) | 2017-06-01 |
US20170154460A1 (en) | 2017-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105869214A (zh) | 一种基于虚拟现实设备的视锥体裁剪方法及装置 | |
CN102902355B (zh) | 移动设备的空间交互方法 | |
CN106826833A (zh) | 基于3d立体感知技术的自主导航机器人系统 | |
Koh et al. | A simple physics model to animate human hair modeled in 2D strips in real time | |
Maurus et al. | Realistic heatmap visualization for interactive analysis of 3D gaze data | |
WO2013101167A1 (en) | Five-dimensional rasterization with conservative bounds | |
US11302023B2 (en) | Planar surface detection | |
US9165393B1 (en) | Measuring stereoscopic quality in a three-dimensional computer-generated scene | |
CN104157000A (zh) | 模型表面法线的计算方法 | |
CN106204703A (zh) | 三维场景模型渲染方法和装置 | |
CN108734772A (zh) | 基于Kinect fusion的高精度深度图像获取方法 | |
EP3832606A1 (en) | Image generation system and method | |
JP5400802B2 (ja) | 階層化深さ画像を使用する接触シミュレーション方法及び装置 | |
Li et al. | 3D reconstruction based on stereovision and texture mapping | |
CN101931825B (zh) | 一种自由视角视频流中3d目标显示方法 | |
Zhigang et al. | Efficient collision detection using a dual k-dop-sphere bounding volume hierarchy | |
CN110738719A (zh) | 一种基于视距分层优化的Web3D模型渲染方法 | |
Kolivand et al. | Real-time volume shadow using visible-non visible algorithm | |
Vassilev | Collision Detection for Cloth Simulation using Ray-tracing on the GPU | |
CN111625093B (zh) | 一种海量数字点云数据在mr眼镜中的动态调度显示方法 | |
US20240137481A1 (en) | Method And Apparatus For Generating Stereoscopic Display Contents | |
CN101877142A (zh) | 一种基于多尺度层次细节的仿真方法 | |
Chu et al. | Real-time 3D scene modeling using dynamic billboard for remote robot control systems | |
Liu et al. | 3D interactive virtual reality system based on Wiimote stereo structure | |
GB2604744A (en) | Image generation system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160817 |
|
WD01 | Invention patent application deemed withdrawn after publication |