【技术实现步骤摘要】
虚拟3D对象的立体渲染
本公开总体涉及用于创建和使用立体渲染的系统、方法和设备,并且具体地讲,涉及考虑到轴间和会聚角视点差异的立体360°渲染。
技术介绍
360°虚拟现实(VR)视频通常使用等量矩形投影以2:1纵横比矩形格式化并存储为视频文件。该文件对于该视频的每一帧包含一个等量矩形投影。立体360°VR视频对于每一帧包含两个等量矩形投影。它对于每只眼睛的视角/视点包括一个投影。由于立体视觉(立体深度感知)基于场景中的点的水平视差移位而起作用,因此左视图和右视图提供稍微不同的视点是重要的。通过简单地在相机的局部x轴上将两个虚拟相机彼此分开,这很容易在直线计算机成像(CGI)场景的立体渲染中实现。这种间隔被称为轴间距离,并且轴间距离越大,场景中的表观立体深度越大。如果两个虚拟相机略微朝向中间中心线倾斜,则它们在一定距离处“会聚”,并且所选的角度可用于感知地定位场景中的处于不同立体深度的对象。渲染完整的360°立体CGI场景要困难得多,因为场景中心的虚拟“相机”不能简单地在单个轴上复制和分离。另外,与将两个虚拟相机链接到头戴式耳机佩戴者的眼睛位置并渲染当前位置/取向的视口的实时VR渲染不同,360°立体视频文件需要在所有视频帧上包含整个CGI场景的完整渲染。此外,最高点和最低点不应包含立体视差。如果包含立体视差,那么当佩戴头戴式耳机的用户向正上方或向正下方看然后旋转她的头部(Y轴旋转)时,立体视差将产生眼睛的垂直差异并且不可避免地导致眼睛疲劳、疼痛或潜在的恶心。一种360°立体渲染技术涉及将六个90°×90°视图拼接在一起,然后偏移赤道上的四个视图(+X,+ ...
【技术保护点】
1.一种立体360°渲染三维(3D)对象的方法,所述方法包括:在具有一个或多个处理器和计算机可读存储介质的设备处:通过识别具有3D位置的顶点来将所述3D对象的表面网格化,其中所述顶点定义多边形,每个所述多边形近似所述3D对象的所述表面的相应部分;将所述顶点的所述3D位置变换为用于左眼视点的第一基于球体的投影的位置以及用于右眼视点的第二基于球体的投影的位置,其中变换所述顶点的所述3D位置包括基于用户取向变换所述顶点并基于所述左眼视点和所述右眼视点之间的轴间距离平移所述顶点;以及基于用于所述左眼视点的所述第一基于球体的投影和用于所述右眼视点的所述第二基于球体的投影来渲染所述3D对象的立体360°渲染。
【技术特征摘要】
2017.12.13 US 62/598,1561.一种立体360°渲染三维(3D)对象的方法,所述方法包括:在具有一个或多个处理器和计算机可读存储介质的设备处:通过识别具有3D位置的顶点来将所述3D对象的表面网格化,其中所述顶点定义多边形,每个所述多边形近似所述3D对象的所述表面的相应部分;将所述顶点的所述3D位置变换为用于左眼视点的第一基于球体的投影的位置以及用于右眼视点的第二基于球体的投影的位置,其中变换所述顶点的所述3D位置包括基于用户取向变换所述顶点并基于所述左眼视点和所述右眼视点之间的轴间距离平移所述顶点;以及基于用于所述左眼视点的所述第一基于球体的投影和用于所述右眼视点的所述第二基于球体的投影来渲染所述3D对象的立体360°渲染。2.根据权利要求1所述的方法,其中变换所述顶点的所述3D位置包括在垂直于从投影球体的中心处的相机位置到所述顶点的经线方向的方向上平移所述顶点的所述3D位置,其中所述相应顶点的平移随着所述相应顶点的纬度增大而减小。3.根据权利要求1至2中任一项所述的方法,其中变换所述顶点的所述3D位置还包括基于所述左眼视点和所述右眼视点的会聚角来旋转所述顶点。4.根据权利要求3所述的方法,其中所述相应顶点的旋转随着所述相应顶点的纬度增大而减小。5.根据权利要求1至4中任一项所述的方法,其中变换所述顶点的所述3D位置还包括:变换所述3D位置以形成表示所述第一基于球体的投影的第一等量矩形投影;以及变换所述3D位置以形成表示所述第二基于球体的投影的第二等量矩形投影,其中所述3D对象的所述立体360°渲染包括所述第一等量矩形投影和所述第二等量矩形投影。6.根据权利要求1至5中任一项所述的方法,其中变换所述3D位置还包括:变换针对所述左眼视点调节的顶点的所述3D位置以形成用于投影球体的前半部分的前半部分等量矩形投影和用于所述投影球体的后半部分的后半部分等量矩形投影,并且将所述前半部分等量矩形投影和所述后半部分等量矩形投影组合以形成表示所述第一基于球体的投影的第一组合等量矩形投影;以及变换针对所述右眼视点调节的顶点的所述3D位置以形成用于所述投影球体的后半部分的前半部分等量矩形投影和用于所述投影球体的所述后半部分的后半部分等量矩形投影,并且将所述前半部分等量矩形投影和所述后半部分等量矩形投影组合以形成表示所述第二基于球体的投影的第二组合等量矩形投影。7.根据权利要求1至6中任一项所述的方法,其中将所述3D对象的所述表面网格化包括将表示所述3D对象的所述表面的网格化对象存储在图形处理单元(GPU)中,其中所述GPU使用所述网格化对象来渲染所述3D对象的所述立体360°渲染。8.根据权利要求7所述的方法,还包括将所述3D对象的纹理数据存储在所述GPU中,其中所述GPU使用所述纹理数据来渲染所述3D对象的所述立体360°渲染。9.根据权利要求1至8中任一项所述的方法,其中将所述3D对象的所述表面网格化包括自适应网格化。10.根据权利要求1至9中任一项所述的方法,还包括在图像或视频创建应用程序的用户界面中显示所述3D对象的所述立体360°渲染,其中所述3D对象的所述360°渲染包括所述第一基于球体的投影和所述第二基于球体的投影的等量矩形表示。11.根据权利要求10所述的方法,还包括:接收改变所述3D对象的位置的输入数据;基于接收到所述输入数据,实时更新所述3D对象的所述渲染以创建所述3D对象的更新的渲染,所述更新的渲染包括所述第一基于球体的投影和所述第二基于球体的投影的更新的等量...
【专利技术属性】
技术研发人员:S·M·波米兰茨,T·K·达什伍德,
申请(专利权)人:苹果公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。