CN110197524B - 立体显示方法、设备、装置和计算机可读存储介质 - Google Patents
立体显示方法、设备、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN110197524B CN110197524B CN201910504911.0A CN201910504911A CN110197524B CN 110197524 B CN110197524 B CN 110197524B CN 201910504911 A CN201910504911 A CN 201910504911A CN 110197524 B CN110197524 B CN 110197524B
- Authority
- CN
- China
- Prior art keywords
- projection window
- stereoscopic display
- projection
- viewpoint
- dimensional
- 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.)
- Active
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/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
Abstract
本公开提供了一种立体显示方法、设备、装置和计算机可读存储介质,所述方法包括:在三维场景中确定立体显示数据要投影到的投影视窗;基于视点位置将立体显示数据投影到所述投影视窗;以及显示投影到所述投影视窗的立体显示数据,其中,在所述三维场景中,相对于视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。在三维场景中确定立体显示数据要投影到的投影视窗包括:确定投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度;以及在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗。
Description
技术领域
本公开涉及立体显示领域,具体的涉及一种立体显示方法、设备、装置和计算机可读存储介质。
背景技术
立体显示技术是虚拟现实的一种实现方式,可以显示具有深度信息的三维图像。相较于传统的平面显示,立体显示的三维图像可以提高观看者的沉浸感和互动感,由此广泛应用于诸如娱乐、游戏等的应用场景中。目前,实现立体显示需要观看者使用额外的辅助设备,例如立体眼镜、狭缝式液晶光栅、柱状透镜等,这降低了立体显示的便携性,此外,在长期观看的情况下还会造成观看者的视觉疲劳,降低了用户体验。
发明内容
本公开提供一种立体显示方法、设备、装置和计算机可读存储介质,用于实现裸眼立体显示,并增加立体显示的沉浸感和互动感,从而提高观看者的观看体验。
根据本公开的一方面,提供了一种立体显示方法,包括:三维场景中确定立体显示数据要投影到的投影视窗;基于视点位置将立体显示数据投影到所述投影视窗;以及显示投影到所述投影视窗的立体显示数据,其中,在所述三维场景中,相对于所述视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。
根据本公开的一些实施例,在三维场景中确定立体显示数据要投影到的投影视窗包括:确定投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度;以及在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗。
根据本公开的一些实施例,在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗包括:
XA=X1-W1/2,YA=Y1+H1/2;
XB=X1+W1/2,YB=Y1+H1/2;
XC=X1-W1/2,YC=Y1-H1/2;
XD=X1+W1/2,YD=Y1-H1/2;
ZA=ZB=ZC=ZD=Z1
其中,W1表示投影视窗的宽度,H1表示投影视窗的长度,(X1,Y1,Z1)表示投影视窗中心点的三维坐标,(XA,YA,ZA)表示投影视窗的左上角点的三维坐标,(XB,YB,ZB)表示投影视窗的右上角点的三维坐标,(XC,YC,ZC)表示投影视窗的左下角点的三维坐标,(XD,YD,ZD)表示投影视窗的右下角点的三维坐标。
根据本公开的一些实施例,基于视点位置将三维场景中的立体显示数据投影到所述投影视窗包括:按照由所述视点位置确定的视差关系将所述立体显示数据投影到所述投影视窗。
根据本公开的一些实施例,所述立体显示方法还包括:更新视点位置,基于更新的所述视点位置将立体显示数据投影到所述投影视窗。
根据本公开的一些实施例,所述立体显示方法还包括:基于以下中的至少一种确定所述视点的横轴坐标和纵轴坐标:基于显示投影到所述投影视窗的立体显示数据的显示屏幕上的操作点确定所述视点的横轴坐标和纵轴坐标;基于显示投影到所述投影视窗的立体显示数据的显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标。
根据本公开的一些实施例,基于所述显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标包括:基于关于所述显示屏幕的陀螺仪数据确定所述显示屏幕的朝向,其中,所述陀螺仪数据包括所述显示屏幕沿横轴方向的旋转角度α、沿纵轴方向的旋转角度β和沿深度轴方向的旋转角度γ;以及基于所述旋转角度分别确定所述视点的横轴坐标和纵轴坐标,
Xview=W*sin(Δβ)*cos(Δγ)+W*sin(Δα)*sin(Δγ)
Yview=H*sin(Δα)*cos(Δγ)+H*sin(Δβ)*sin(Δγ)
其中,Xview表示视点的横轴坐标,Yview表示视点的纵轴坐标,W表示显示屏幕的宽度,H表示所述显示屏幕的长度,Δα表示显示屏幕沿横轴方向的旋转角度的改变值,Δβ表示显示屏幕沿纵轴方向的旋转角度的改变值,Δγ表示显示屏幕沿深度轴方向的旋转角度的改变值。
根据本公开的一些实施例,所述立体显示方法还包括:更新三维场景中的立体显示数据;基于视点位置将更新的立体显示数据投影到所述投影视窗。
根据本公开的另一方面,还提供了一种立体显示设备,包括:确定单元,配置成在三维场景中确定立体显示数据要投影到的投影视窗;投影单元,配置成基于视点位置将立体显示数据投影到所述投影视窗;以及显示单元,配置成显示投影到所述投影视窗的立体显示数据,其中,在所述三维场景中,相对于所述视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。
根据本公开的一些实施例,所述确定单元确定投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度;以及在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗,其中,按照以下公式确定所述投影视窗:
XA=X1-W1/2,YA=Y1+H1/2;
XB=X1+W1/2,YB=Y1+H1/2;
XC=X1-W1/2,YC=Y1-H1/2;
XD=X1+W1/2,YD=Y1-H1/2;
ZA=ZB=ZC=ZD=Z1
其中,W1表示投影视窗的宽度,H1表示投影视窗的长度,(X1,Y1,Z1)表示投影视窗中心点的三维坐标,(XA,YA,ZA)表示投影视窗的左上角点的三维坐标,(XB,YB,ZB)表示投影视窗的右上角点的三维坐标,(XC,YC,ZC)表示投影视窗的左下角点的三维坐标,(XD,YD,ZD)表示投影视窗的右下角点的三维坐标。
根据本公开的一些实施例,所述投影单元按照由所述视点位置确定的视差关系将所述立体显示数据投影到所述投影视窗。
根据本公开的一些实施例,所述立体显示设备还包括更新单元,配置成更新视点位置,所述投影单元还配置成基于更新的所述视点位置将立体显示数据投影到所述投影视窗。
根据本公开的一些实施例,所述确定单元还配置成基于所述显示单元的显示屏幕的操作点确定所述视点的横轴坐标和纵轴坐标。
根据本公开的一些实施例,所述确定单元还配置成基于所述显示单元的显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标。
根据本公开的一些实施例,所述确定单元基于关于所述显示屏幕的陀螺仪数据确定所述显示屏幕的朝向,其中,所述陀螺仪数据包括所述显示屏幕沿横轴方向的旋转角度α、沿纵轴方向的旋转角度β和沿深度轴方向的旋转角度γ;以及基于所述旋转角度分别确定所述视点的横轴坐标和纵轴坐标:
Xview=W*sin(Δβ)*cos(Δγ)+W*sin(Δα)*sin(Δγ)
Yview=H*sin(Δα)*cos(Δγ)+H*sin(Δβ)*sin(Δγ)
其中,Xview表示视点的横轴坐标,Yview表示视点的纵轴坐标,W表示显示屏幕的宽度,H表示所述显示屏幕的长度,Δα表示显示屏幕沿横轴方向的旋转角度的改变值,Δβ表示显示屏幕沿纵轴方向的旋转角度的改变值,Δγ表示显示屏幕沿深度轴方向的旋转角度的改变值。
根据本公开的一些实施例,所述立体显示设备还包括更新单元,配置成更新三维场景中的立体显示数据,所述投影单元还配置成基于视点位置将更新的立体显示数据投影到所述投影视窗。
根据本公开的又一方面,还提供了一种立体显示装置,包括:一个或多个处理器;和一个或多个存储器,其中,所述存储器中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器运行时,执行如上所述的立体显示方法。
根据本公开的又一方面,还提供了一种计算机可读存储介质,其上存储有指令,所述指令在被处理器执行时,使得所述处理器执行如上所述的立体显示方法。
通过本公开提供的立体显示方法、设备、装置和计算机可读存储介质,能实现裸眼立体显示,不需要观看者使用额外的辅助设备,此外,由于在所述三维场景中,相对于所述视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面,能使得在立体显示的过程中增加观看者的沉浸感和互动感,以提高观看者的观看体验。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本公开实施例的立体显示方法的流程图;
图2A示出了根据本公开实施例的视点与投影视窗的中心点的连线垂直于投影视窗的三维场景的示意图;
图2B示出了根据本公开实施例的视点与投影视窗的中心点的连线不垂直于投影视窗的三维场景的示意图;
图3示出了确定透视投影变换矩阵的示意图;
图4示出了根据本公开实施例的三维场景的另一示意图;
图5A示出了根据本公开的一个实施例的立体显示效果的示意图;
图5B示出了根据本公开的另一个实施例的立体显示效果的示意图;
图5C-5D示出了投影视窗随视点位置改变的显示效果的示意图;
图6A-6C分别示出了陀螺仪数据α,β,γ的示意图;
图7A-7B示出了根据本公开实施例的基于陀螺仪数据确定视点位置的示意图;
图8示出了根据本公开的一个实施例的流程图;
图9示出了根据本公开实施例的立体显示设备的示意性框图;
图10示出了根据本公开实施例的立体显示装置的示意图;
图11示出了根据本公开实施例的示例性计算设备的架构的示意图;
图12示出了根据本公开实施例的计算机可读存储介质的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
本公开中使用了流程图用来说明根据本公开的实施例的方法的步骤。应当理解的是,前面或后面的步骤不一定按照顺序来精确的进行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步。
平面显示方法可以使得观看者看到二维的显示效果,例如,在显示屏幕上显示的二维图片、视频等。然而,观看者在现实场景中直接观看到的均为三维物体。以现实场景中的一个足球作为所述三维物体的示例,观看者既可以观看到该足球的平面信息(或者称为二维信息),也可以观看到该足球的深度信息,即,所述三维物体包括平面信息以及深度信息。所述深度信息由视差产生,表示在现实场景中的三维物体与观看者之间的距离关系,表现为近大远小的视觉效果。由于在平面显示该足球的图像的过程中,观看者在显示屏幕上观看到的足球是仅具有平面信息的圆形,不具有深度信息。因此,在平面显示的基础上,发展有立体显示(或者称为三维显示)技术,以使得观看者可以在诸如显示屏幕上观看到类似于现实场景中的具有深度信息的三维物体的显示效果。
如上所述的,目前实现立体显示需要观看者使用额外的辅助设备,例如立体眼镜、狭缝式液晶光栅、柱状透镜等,这降低了立体显示的便携性,此外,在长期观看的情况下还会造成观看者的视觉疲劳,降低了用户体验。
本公开提供了一种立体显示方法,能实现裸眼立体显示,即,不需要观看者使用额外的辅助设备就可以观看到立体显示的效果。
图1示出了根据本公开实施例的立体显示方法的流程图,首先,在步骤S101,在三维场景中确定立体显示数据要投影到的投影视窗。所述三维场景可以理解成在诸如计算机的设备中创建的三维空间,在计算机中模拟上述现实场景。所述三维场景中包括要进行显示的立体显示数据(或者称为三维物体)。所述立体显示数据中的数据点既具有对应于平面信息的横轴坐标和纵轴坐标,还具有对应于深度信息的深度轴坐标。在本文中,可以建立对应于所述三维场景的三维坐标系,在所述三维坐标系中的坐标称为全局坐标。
在所述三维场景中,可以基于所述投影视窗的中心点坐标、长度和宽度确定一个矩形区域作为所述投影视窗。所述投影视窗(即,对应于三维场景中的一个矩形区域)用于确定所述立体显示要投影到的范围。从而使得,在显示投影到所述投影视窗的立体显示数据的情况下呈现立体显示效果。根据本公开实施例,在所述三维场景中,相对于视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面(也可以称为投影视窗固定)。所述固定表示所述投影视窗的中心点在三维场景中的全局坐标是固定的,并且,所述投影视窗所处的深度平面也是固定的,其中,所述深度平面由投影视窗的中心点的深度轴坐标确定。关于所述投影视窗固定将在下文中详细描述。
接着,在步骤S102,基于视点位置将三维场景中的立体显示数据投影到所述投影视窗,在步骤S103,显示投影到所述投影视窗的立体显示数据。在所述三维场景中,所述视点可以等效于观看者的观看点。所述视点位置表示所述视点在三维场景中的位置,也可以称为观看位置。以下将结合图2A和图2B来具体描述根据本公开实施例的三维场景、立体显示数据、视点位置以及投影视窗。
图2A和图2B中示出了如上所述的三维场景,并在图2A和图2B的右下方示意性地绘出了所述三维场景的三维坐标系的方向示意图。需要注意的是,图2A和图2B中的三维坐标系方向一致。并且,在图2A和图2B中示出的三维场景中,所述三维坐标系的原点(0,0,0)均位于投影视窗的中心点位置处。如上所述的,三维场景中的立体显示数据、视点位置以及投影视窗中心点在所述三维坐标系下的坐标为全局坐标。
在所述三维场景中,包括有要进行显示的立体显示数据,即,三维物体。在图2A和图2B中包括有一个球、位于该球下方的长方体以及位于该球后方的方形块。需要注意的是,图2A和图2B中示出的立体显示数据仅为示例性的,所述三维场景中可以包括其他的立体显示数据,即,要进行显示的三维物体,可以采用现有的三维物体创建算法来根据显示需求创建所述三维物体。
具体的,图2A示出了根据本公开实施例的视点与投影视窗的中心点的连线垂直于投影视窗的三维场景的示意图。在图2A示出的所述三维场景中,所述投影视窗是白色线框内的矩形部分ABCD,所述视点位于点O1处,并且,所述视点O1与所述投影视窗的中心点的连线垂直于所述投影视窗。换句话说,所述视点O1到所述投影视窗的垂线与所述投影视窗的中心点重合。相比较地,图2B示出了根据本公开实施例的视点与投影视窗的中心点的连线不垂直于投影视窗的三维场景的示意图。具体的,在图2B中示出的三维场景中,所述投影视窗是白色线框内的矩形部分ABCD,所述视点位于点O2处。并且,所述视点O2与所述投影视窗的中心点的连线不垂直于所述投影视窗。换句话说,所述视点O2到所述投影视窗的垂线与所述投影视窗的中心点不重合。
图2A和图2B中示出的三维场景中,从视点到矩形投影视窗的四个角点(即,点A、点B、点C以及点D)的连线,在三维场景中形成以视点为顶点的椎体,可以将此椎体称为视锥,所示视锥可以等效于现实场景中的观看者的视场范围,观看者不能观看到超出视场范围的物体。换句话说,在根据本公开的立体显示方法中,投影视窗的尺寸(诸如,长度和宽度)可以用于确定立体显示的视场范围。
如上所述的,在三维场景中,所述视点O1等效于观看点,可以理解为现实场景中观看者的眼睛。由此,对于图2A中示出的视点与立体显示数据之间的位置关系可以理解为:在三维物体的正后方的位置处观看所述三维物体。在图2A中示出的三维场景中,所述投影视窗的中心点的全局坐标是(0,0,0),位于三维坐标系的原点。所述视点的全局坐标可以是(0,0,-1),表征所述视点位置,即,在三维场景的全局坐标下,所述视点位于所述投影视窗的中心点的正后方。换句话说,图2A示出的三维场景还可以描述为从视点位置向其正前方观看立体显示数据。
如上所述的,在图2A示出的三维场景中,视点与投影视窗的中心点的连线垂直于所述投影视窗,可以等效于在所述视点位置处朝正前方观看三维场景中的立体显示数据。图2B示出的三维场景中,视点O2与投影视窗的中心点的连线不垂直于投影视窗。具体的,在图2B中示出的三维场景中,所述投影视窗是白色线框内的矩形部分,所述视点位于点O2处。换句话说,与图2A相比,图2B中的三维场景中只改变了视点位置,即,视点位置从点O1处沿X轴向下移动到了点O2处,而立体显示数据以及投影视窗均保持不变。视点位置的改变使得所述视点O2与投影视窗的中心点的连线不垂直于所述投影视窗,等效于在所述视点位置处向上前方观看所述立体显示数据。
在根据本公开实施例的立体显示方法中,确定立体显示数据要投影到的投影视窗包括:确定投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度;以及在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗。通过以上步骤可以在三维场景中唯一地确定所述投影视窗(诸如,图2A和图2B中示出的矩形区域ABCD),将在下文中详细描述。
在立体显示的过程中,基于视点位置将三维场景中的立体显示数据投影到所述投影视窗包括:将具有深度信息的立体显示数据,按照由视点位置确定的视差关系投影到所述投影视窗。换句话说,由于立体显示数据既具有平面信息又具有深度信息,所述视点位置可以决定所述立体显示数据的视差关系,从而使得从不同的视点位置观看立体显示数据时具有不同的透视效果。所述投影可以是用于实现在透视视窗处产生从视点位置观看所述立体显示数据时所呈现的近大远小的透视效果,从而使得在显示经过投影的投影视窗时可以呈现从视点位置观看立体显示数据的立体显示效果。例如,在图2A和图2B中示出的三维场景中,由于视点位置(即,观看位置)的改变,使得可以观看到具有不同透视效果的三维物体。
根据本公开实施例,上述投影的过程可以通过透视投影变换矩阵来实现,即,利用透视投影变换矩阵,按照由所述视点位置确定的视差关系将所述立体显示数据投影到所述投影视窗。具体的,图3示出了确定透视投影变换矩阵的示意图。在图3中示出的三维坐标系中,视点位置位于坐标系的原点,由near表示投影近点深度平面(即,深度轴坐标为near的深度平面),由far表示投影远点深度平面(即,深度轴坐标为far的深度平面),所述投影近点深度平面和所述投影远点深度平面用于确定投影变换深度范围Zx。在图3中示出的三维场景中,在由视点与投影视窗的四个角点确定的视锥内,可以确定对应于所述投影深度范围Zx的四棱台。可以通过将图3中示出的四棱台内的数据E映射到图3中右侧的立方体F内的数据,来确定所述透视投影变换矩阵。换句话说,上述四棱台是由视锥以及投影近点深度平面、投影远点深度平面确定的,所述视锥由视点位置和投影视窗确定。根据本公开实施例,可以采用诸如makePerspective投影变换矩阵来实现上述投影过程,在此不做限制。将上述确定的透视投影变换矩阵与待投影的立体显示数据相乘来实现上述投影的过程,从而使得在显示经过投影的投影视窗时,显示从视点位置观看立体显示数据的立体显示效果。
根据本公开实施例,在三维场景中确定立体显示数据要投影到的投影视窗包括:确定投影视窗参数,在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于投影视窗的长度和宽度确定所述投影视窗。具体的,所述投影视窗参数包括所述投影视窗的中心点在三维场景中的全局坐标(X1,Y1,Z1),以图2A中示出的三维场景为例,投影视窗的中心点的全局坐标为(0,0,0)。其中,深度轴坐标Z1表示所述投影视窗在所述三维场景中所处的深度平面,横轴坐标X1和纵轴坐标Y1表示所述投影视窗的中心点在所述深度平面内的二维坐标。所述投影视窗参数还包括所述投影视窗的长度(表示为H1)以及宽度(表示为W1)。根据以上投影视窗参数(X1,Y1,Z1)、H1和W1,可以按照以下公式分别确定所述投影视窗的四个角点A、B、C以及D在所述深度平面内的二维坐标:
XA=X1-W1/2,YA=Y1+H1/2;
XB=X1+W1/2,YB=Y1+H1/2;
XC=X1-W1/2,YC=Y1-H1/2;
XD=X1+W1/2,YD=Y1-H1/2;
角点A、B、C以及D处于由投影视窗的中心点的深度轴坐标确定的深度平面内,因此具有相同的深度轴坐标,即,ZA=ZB=ZC=ZD=Z1。由此,可以确定所述投影视窗的四个角点在三维场景中的全局坐标为A(XA,YA,ZA)、B(XB,YB,ZB)、C(XC,YC,ZC)和D(XD,YD,ZD)。需要注意的是,图2A中的示出的投影视窗为长方形(长度H1大于宽度W1)仅为示例性的,所述投影视窗还可以是诸如正方形等的其他形状,在此不做限制。
如上所述的,在所述三维场景中,相对于视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。换句话说,在根据本公开的三维场景中,视点位置是可变的(诸如从图2A中示出的点O1处移动到图2B中示出的点O2处),或者称为更新视点位置,而所述投影视窗的位置(即,全局坐标)在三维场景中是固定的。即,在所述三维场景中,所述投影视窗的中心点(图2A和图2B中位于三维坐标系的中心)的全局坐标保持不变。此外,由于所述投影视窗处于由所述中心点的深度轴坐标确定的深度平面内,因此,在所述中心点的全局坐标保持不变的情况下,所述投影视窗所处的深度平面也固定不变。图4示出了根据本公开实施例的三维场景的另一示意图,其中,在由类似于长方体的5个平面组成的三维场景中,包括有3个三维物体,即,球、长方体、正方块。如图4所示出的,在视点位置从O3移动到O4再移动到O5的过程中,三维场景中的投影视窗的位置保持不变。
根据本公开实施例,在进行投影的过程中,还可以进行投影范围缩放。上述缩放的过程为调整所述投影视窗的长度H1和宽度W1。例如,在按照如上所述的方法确定所述投影视窗的四个角点之后,可以按照缩放系数调整所述投影视窗的长度和宽度。示例性地,所述缩放可以表现为改变图3中示出的四棱台的上平面与下平面的尺寸。举例来说,所述缩放系数可以设置为0.1,所述缩放可以表示为H1′=H1*0.1,W1′=W1*0.1,然后基于缩放后的长度H1′和宽度W1′确定缩放后的投影视窗。需要注意的是,所述缩放仅调整所述投影视窗的长度和宽度,而并不改变投影视窗的中心点的全局坐标,因此,也并不改变所述投影视窗所处的深度平面。
图5A示出了根据本公开的一个实施例的立体显示效果的示意图,其中,视点位置与投影视窗中心点的连线垂直于所述投影视窗,等效于从视点位置O6处朝正前方观看立体显示数据的显示效果。图5B示出了根据本公开的另一个实施例的立体显示效果的示意图,其中,视点位置与投影视窗中心点的连线不垂直于所述投影视窗,等效于从视点位置O7处朝右上前方观看立体显示数据的显示效果。由于在三维场景中,相对于视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面,从而使得图5A和图5B示出的立体显示效果保持在相同的投影空间内,所述投影空间可以由图5A和图5B中三维物体周围的上、下、左、右、后5个平面组成。
图5C和图5D示出了投影视窗的位置随视点位置改变的显示效果的示意图。示例性地,所述投影视窗的位置随视点位置改变可以是:所述视点与投影视窗的中心点的连线始终垂直于所述投影视窗。如图5C和图5D所示,在投影视窗的位置随视点位置改变的情况下,显示的投影空间也随投影视窗的改变而改变,其中,图5C中的视点位置与图5A中示出的视点位置相同,图5D中的视点位置与图5B中示出的视点位置相同。对比参照图5A和图5C,由于在图5A中示出的是视点位置与投影视窗中心点的连线垂直于所述投影视窗的情况,使得图5A与图5C中显示的立体显示效果相同。接着,对比参照图5B和图5D,由于在图5B中示出的是视点与投影视窗中心点的连线不垂直于所述投影视窗的情况,而在图5D中,视点与投影视窗的中心点的连线始终垂直于所述投影视窗,从而使得,图5D中的投影空间由于投影视窗的位置的改变而改变,这降低了立体显示的沉浸感和观看体验。
在根据本公开的立体显示方法中,正是由于在三维场景中,相对于视点位置的变化,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面,即在视点位置改变时,投影视窗的中心点的全局坐标保持不变,并且始终处于由中心点的深度轴坐标确定的深度平面内,从而使得显示的投影空间保持不变,以实现具有更强的沉浸感与互动感的立体显示效果。
根据本公开实施例,所述立体显示方法还可以包括更新三维场景中的立体显示数据,基于视点位置将更新的立体显示数据投影到所述投影视窗。根据本公开实施例,所述立体显示方法还可以包括更新视点位置,基于更新的所述视点位置将立体显示数据投影到所述投影视窗。换句话说,在诸如图2A和图2B中的三维场景中,其中包括的立体显示数据是可变的,例如可以根据显示需求来改变要显示的立体显示数据。所述视点位置也是可变的,例如,视点从点O1移动到点O2。所述视点位置的改变可以等效于观看位置的变化,例如在XY平面内的不同位置处观看三维物体。
根据本公开实施例,所述视点位置可以由三维场景中的全局坐标表示,诸如O(Xview,Yview,Zview)。对于所述视点的深度轴坐标,作为一个示例,可以通过设置视点与投影视窗之间的垂直距离D来确定所述视点O的深度轴坐标Zview。举例来说,可以基于三维场景中的立体显示数据来设置所述垂直距离D。例如,图2A中示出的三维场景中,立体显示数据点中深度轴坐标的绝对值的最大值为10(诸如某一数据点的深度轴坐标为Z=10),在此种情况下,可以将所述垂直距离D设置成大于10的数值,从而使得该数据点位于所述视点的视场范围内。基于此,可以根据具体的三维场景来设置所述距离D,然后基于垂直距离D来确定所述视点O的深度轴坐标Zview。在设置了所述垂直距离D的情况下,可以确定所述视点O的深度轴坐标Zview=Z1-D。作为其他的示例,还可以直接地设置所述三维场景中的视点的深度轴坐标Zview,在此不作限制。
在确定了所述视点的深度轴坐标的基础上,根据本公开的一个实施例,所述立体显示方法还可以包括基于显示投影到所述投影视窗的立体显示数据的显示屏幕上的操作点确定所述视点的横轴坐标和纵轴坐标,或者称为二维坐标,即(Xview,Yview)。作为一个示例,所述操作点可以由显示屏幕上接收的指针操作来确定,例如,用户可以通过诸如鼠标的输入设备点击显示屏幕来形成所述操作点,将所述鼠标在显示屏幕上点击的点的横轴坐标和纵轴坐标作为所述视点的横轴坐标和纵轴坐标。作为另一示例,用户可以通过对显示屏幕的触摸操作来形成所述操作点,例如,可以将显示屏幕上的触摸点的横轴坐标和纵轴坐标作为所述视点的二维坐标(Xview,Yview)。
根据垂直距离D以及确定的视点的二维坐标(Xview,Yview),可以在诸如图2A中示出的三维场景中确定视点的全局坐标。在进行立体显示的过程中,可以固定所述垂直距离D,即,使得所述视点的深度轴坐标不变,然后,通过诸如上述触摸点来实时地更新视点的二维坐标(Xview,Yview),从而实现基于更新的所述视点位置将立体显示数据投影到所述投影视窗,即实现实时立体显示。
根据本公开的另一实施例,所述立体显示方法还可以包括基于显示投影到所述投影视窗的立体显示数据的显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标。其中,基于所述显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标可以包括:基于关于所述显示屏幕的陀螺仪数据确定所述显示屏幕的朝向,其中,所述陀螺仪数据包括所述显示屏幕分别沿横轴方向、纵轴方向和深度轴方向的旋转角度,图6A-6C分别示出了陀螺仪数据α,β,γ的示意图,其中,α表示所述显示屏幕沿横轴方向的旋转角度,β表示所述显示屏幕沿纵轴方向的旋转角度,γ表示所述显示屏幕沿深度轴方向的旋转角度。需要注意的是,图6A-6C示出的关于显示屏幕的陀螺仪数据的坐标系是相对于显示屏幕建立的陀螺仪坐标系,换句话说,这不同于诸如图2A中示出的三维场景中的三维坐标系。
基于所述旋转角度可以分别确定所述视点的横轴坐标和纵轴坐标(Xview,Yview)。具体的,可以按照以下公式来基于陀螺仪数据确定所述视点的横轴坐标和纵轴坐标:
Xview=W*sin(Δβ)*cos(Δγ)+W*sin(Δα)*sin(Δγ)
Yview=H*sin(Δα)*cos(Δγ)+H*sin(Δβ)*sin(Δγ)
其中,W表示所述显示屏幕的宽度,H表示所述显示屏幕的长度。Δα表示所述显示屏幕沿横轴方向的旋转角度的改变值,Δβ表示所述显示屏幕沿纵轴方向的旋转角度的改变值,Δγ表示所述显示屏幕沿深度轴方向的旋转角度的改变值。
图7A-7B示出了根据本公开实施例的基于陀螺仪数据确定视点的横轴坐标和纵轴坐标的示意图。具体的,在根据本公开的立体显示方法中,可以设置显示屏幕的陀螺仪数据初始值,例如,将图7A中701所示出的α=0,β=90,γ=0设置为陀螺仪数据初始值。在此种情况下,如702中所示出的,所述显示屏幕的朝向可以是竖直朝向正前方。如703所示出的,可以将具有此朝向的显示屏幕确定为视点与投影视窗的中心点的连线垂直于投影视窗,当前的立体显示效果可以如704中所示出的。接着,在用户转动显示屏幕的情况下,如图7B中711内所示出的,显示屏幕的陀螺仪数据变化为α=0,β=45,γ=0时,在此种情况下,如712中所示出的,所述显示屏幕的朝向沿y轴旋转45度。即,相比于图7A中示出的陀螺仪数据初始值,各个旋转角度的改变值分别为Δα=0,Δβ=-45,Δγ=0,基于以上公式可以得到图7B中713内示出的视点位置相比于图7A中的703中示出视点位置沿X轴向下移动了/>的距离,在进行投影后,显示的立体显示效果可以如714中所示出的。
图8示出了根据本公开的一个实施例的流程图。如图8所示,首先,在步骤S801,创建三维场景,所述三维场景可以是如图2A中所示出的,其中包括有要进行显示的立体显示数据,即三维物体。可以根据实际的应用需求来创建所述三维场景,例如游戏场景。接着,在步骤S802,确定投影视窗参数,包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度。例如,可以经由输入设备来获取所述参数。作为一个示例,在获取所述参数之后,还可以判断所述投影视窗参数是否合适,例如,在获取的投影视窗的长度为负数的情况下,可以确定所述投影视窗参数不合适,在此种情况下,可以显示参数错误提醒,以获取合适的所述投影视窗参数。
接着,在步骤S803,确定投影视窗的四个角点的全局坐标。如上所述的,在创建的三维场景中,可以由如图2A中所示的ABCD四个角点来表示所述投影视窗。基于上述投影视窗参数能所述三维场景中唯一地确定所述投影视窗的位置(即,投影视窗的中心点的全局坐标以及所处的深度平面)以及尺寸(投影视窗的长度和宽度)。
接着,在步骤S804,确定视点位置。可以设置所述视点与所述投影视窗的垂直距离,诸如D,然后基于所述距离D和所述投影视窗的深度轴坐标来确定所述视点的深度轴坐标。可以基于进行立体显示的显示屏幕上的操作点来获取所述视点的横轴坐标和纵轴坐标,或者,可以基于所述显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标。作为一个示例,还可以采用以上两种方式来确定视点位置,作为另一个示例,还可以直接经由输入设备来获取所述视点的坐标。
接着,在步骤S805,基于视点位置对三维场景中的立体显示数据进行投影变换。例如,可以利用透视投影变换矩阵(诸如,makeperspective矩阵)来基于确定的视点位置将立体显示数据投影变换到确定的投影视窗。然后,在步骤S806,进行立体显示,显示立体显示数据投影到的投影视窗,从而呈现立体显示效果。
在上述实施例中,所述立体显示方法还可以包括步骤S807,更新视点位置。例如,在进行步骤S806,即立体显示之后,用户可以通过显示屏幕上的触摸点来更新视点位置,或者,可以通过旋转显示屏幕的朝向来更新所述视点位置,从而可以基于所述触摸点或者朝向来确定更新后的视点位置。然后,可以进行步骤S805和S806,即,基于更新后的视点位置对三维场景中的立体显示数据进行投影变换,并进行立体显示。并且,在更新视点位置的过程中,固定三维场景中的投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面,使得对于更新前的视点位置和更新后的位置,投影到的投影视窗是固定的,保证两次投影的投影空间是一致的,从而实现如图5A和图5B中的立体显示效果。
在上述实施例中,所述立体显示方法还可以包括步骤S808,视窗缩放。可以通过设置的缩放系数来进行所述视窗缩放的步骤。例如,所述缩放系数可以是0.1,所述缩放可以表示为缩放投影视窗的长度和宽度,即H1′=H1*0.1,W1′=W1*0.1,然后基于缩放后的长度H1′和宽度W1′确定缩放后的投影视窗。需要注意的是,所述视窗缩放的过程仅调整所述投影视窗的长度和宽度,而并不改变投影视窗的中心点的全局坐标,因此,也并不改变所述投影视窗所处的深度平面。
本公开提供了一种立体显示方法,能实现裸眼立体显示,不需要观看者使用额外的辅助设备。所述立体显示方法包括,在三维场景中确定立体显示数据要投影到的投影视窗,基于视点位置将三维场景中的立体显示数据投影到所述投影视窗;以及显示投影到所述投影视窗的立体显示数,其中,在所述三维场景中,相对于视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。换句话说,在所述三维场景中的三维坐标系下,所述投影视窗的中心点的全局坐标不随视点位置的改变而变化。由于投影视窗的全局坐标以及所处的深度平面是固定的,可以使得在视点位置改变时,显示的投影空间保持不变,以实现具有更强的沉浸感与互动感的立体显示效果,提高了观看者的观看体验。
根据本公开的另一方面,还提供了一种立体显示设备。图9示出了根据本公开实施例的立体显示设备的示意性框图。
如图9所示,所述立体显示设备1000可以包括包括确定单元1010、投影单元1020以及显示单元1030。所述确定单元1010可以配置成在三维场景中确定立体显示数据要投影到的投影视窗,其中,所述投影视窗在所述三维场景中是固定的。所述投影单元1020可以配置成基于视点位置将三维场景中的立体显示数据投影到所述投影视窗。所述显示单元1030可以配置成显示投影到所述投影视窗的立体显示数据。
根据本公开的一些实施例,所述确定单元1010确定投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度。所述确定单元1010在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗,其中,按照以下公式确定所述投影视窗:
XA=X1-W1/2,YA=Y1+H1/2;
XB=X1+W1/2,YB=Y1+H1/2;
XC=X1-W1/2,YC=Y1-H1/2;
XD=X1+W1/2,YD=Y1-H1/2;
ZA=ZB=ZC=ZD=Z1
其中,W1表示投影视窗的宽度,H1表示投影视窗的长度,(X1,Y1,Z1)表示投影视窗中心点的三维坐标,(XA,YA,ZA)表示投影视窗的左上角点的三维坐标,(XB,YB,ZB)表示投影视窗的右上角点的三维坐标,(XC,YC,ZC)表示投影视窗的左下角点的三维坐标,(XD,YD,ZD)表示投影视窗的右下角点的三维坐标。
根据本公开的一些实施例,所述投影单元1020按照由所述视点位置确定的视差关系将所述立体显示数据投影到所述投影视窗。
根据本公开的一些实施例,所述立体显示设备还包括更新单元1040。所述更新单元1040可以配置成更新视点位置,所述投影单元1020还可以配置成基于更新的所述视点位置将立体显示数据投影到所述投影视窗。
根据本公开的一些实施例,所述确定单元1010还可以配置成基于所述显示单元的显示屏幕的操作点确定所述视点的横轴坐标和纵轴坐标。
根据本公开的一些实施例,所述确定单元1010还可以配置成基于所述显示单元的显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标。
根据本公开的一些实施例,所述确定单元1010基于关于所述显示屏幕的陀螺仪数据确定所述显示屏幕的朝向,其中,所述陀螺仪数据包括所述显示屏幕沿横轴方向的旋转角度α、沿纵轴方向的旋转角度β和沿深度轴方向的旋转角度γ;以及基于所述旋转角度分别确定所述视点的横轴坐标和纵轴坐标:
Xview=W*sin(Δβ)*cos(Δγ)+W*sin(Δα)*sin(Δγ)
Yview=H*sin(Δα)*cos(Δγ)+H*sin(Δβ)*sin(Δγ)
其中,Xview表示视点的横轴坐标,Yview表示视点的纵轴坐标,W表示显示屏幕的宽度,H表示所述显示屏幕的长度,Δα表示显示屏幕沿横轴方向的旋转角度的改变值,Δβ表示显示屏幕沿纵轴方向的旋转角度的改变值,Δγ表示显示屏幕沿深度轴方向的旋转角度的改变值。
根据本公开的一些实施例,所述立体显示设备的更新单元1040还可以配置成更新三维场景中的立体显示数据,所述投影单元1020还可以配置成基于视点位置将更新的立体显示数据投影到所述投影视窗。
根据本公开的所述立体显示设备1000可以应用于需要立体显示效果的应用场景中,诸如游戏、三维产品展示等,以使得使用者获得立体显示的沉浸感与互动感,并且无需佩戴附加的辅助设备。此外,根据本公开的立体显示方法、设备还可以配合人眼追踪技术应用于人工智能领域。例如,将基于人眼追踪技术获取的人眼位置用作根据本公开中的视点位置,从而实现根据获取的人眼位置进行立体显示等。
根据本公开的又一方面,还提供了一种立体显示装置。图10示出了根据本公开实施例的立体显示装置2000的示意图。
如图10所示,所述装置2000可以包括一个或多个处理器2010,和一个或多个存储器2020。其中,所述存储器2020中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器2010运行时,可以执行如上所述的立体显示方法。
根据本公开实施例的方法或装置也可以借助于图11所示的计算设备3000的架构来实现。如图11所示,计算设备3000可以包括总线3010、一个或多个CPU3020、只读存储器(ROM)3030、随机存取存储器(RAM)3040、连接到网络的通信端口3050、输入/输出组件3060、硬盘3070等。计算设备3000中的存储设备,例如ROM 3030或硬盘3070可以存储本公开提供的立体显示方法的处理和/或通信使用的各种数据或文件以及CPU所执行的程序指令。计算设备3000还可以包括用户界面3080。当然,图11所示的架构只是示例性的,在实现不同的设备时,根据实际需要,可以省略图11示出的计算设备中的一个或多个组件。
根据本公开的又一方面,还提供了一种计算机可读存储介质。图12示出了根据本公开的存储介质的示意图4000。
如图12所示,所述计算机存储介质4020上存储有计算机可读指令4010。当所述计算机可读指令4010由处理器运行时,可以执行参照以上附图描述的根据本公开实施例的立体显示方法。所述计算机可读存储介质包括但不限于例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
本领域技术人员能够理解,本公开所披露的内容可以出现多种变型和改进。例如,以上所描述的各种设备或组件可以通过硬件实现,也可以通过软件、固件、或者三者中的一些或全部的组合实现。
此外,虽然本公开对根据本公开的实施例的系统中的某些单元做出了各种引用,然而,任何数量的不同单元可以被使用并运行在客户端和/或服务器上。所述单元仅是说明性的,并且所述系统和方法的不同方面可以使用不同单元。
本领域普通技术人员可以理解上述方法中的全部或部分的步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本公开并不限制于任何特定形式的硬件和软件的结合。
除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
以上是对本公开的说明,而不应被认为是对其的限制。尽管描述了本公开的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本公开的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本公开范围内。应当理解,上面是对本公开的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本公开由权利要求书及其等效物限定。
Claims (14)
1.一种立体显示方法,包括:
确定三维场景中三维物体的立体显示数据要投影到的投影视窗的投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度;
在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗;
基于视点位置将所述立体显示数据投影到所述投影视窗;以及
显示投影到所述投影视窗的立体显示数据,其中,在所述三维场景中,相对于所述视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。
2.根据权利要求1所述的立体显示方法,其中,在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗包括按照以下公式确定所述投影视窗:
XA=X1-W1/2,YA=Y1+H1/2;
XB=X1+W1/2,YB=Y1+H1/2;
XC=X1-W1/2,YC=Y1-H1/2;
XD=X1+W1/2,YD=Y1-H1/2;
ZA=ZB=ZC=ZD=Z1
其中,W1表示投影视窗的宽度,H1表示投影视窗的长度,(X1,Y1,Z1)表示投影视窗中心点的三维坐标,(XA,YA,ZA)表示投影视窗的左上角点的三维坐标,(XB,YB,ZB)表示投影视窗的右上角点的三维坐标,(XC,YC,ZC)表示投影视窗的左下角点的三维坐标,(XD,YD,ZD)表示投影视窗的右下角点的三维坐标。
3.根据权利要求1所述的立体显示方法,其中,基于视点位置将三维场景中的所述立体显示数据投影到所述投影视窗包括:
按照由所述视点位置确定的视差关系将所述立体显示数据投影到所述投影视窗。
4.根据权利要求1所述的立体显示方法,还包括:
更新视点位置,基于更新的所述视点位置将立体显示数据投影到所述投影视窗。
5.根据权利要求1所述的立体显示方法,还包括:
基于显示屏幕上的操作点、显示屏幕的朝向中的至少一者确定所述视点的横轴坐标和纵轴坐标,
其中,所述显示屏幕用于显示投影到所述投影视窗的立体显示数据。
6.根据权利要求5所述的立体显示方法,其中,基于所述显示屏幕的朝向确定所述视点的横轴坐标和纵轴坐标包括:
基于关于所述显示屏幕的陀螺仪数据确定所述显示屏幕的朝向,其中,所述陀螺仪数据包括所述显示屏幕沿横轴方向的旋转角度α、沿纵轴方向的旋转角度β和沿深度轴方向的旋转角度γ;以及
基于所述旋转角度分别确定所述视点的横轴坐标和纵轴坐标:
Xview=W*sin(Δβ)*cos(Δγ)+W*sin(Δα)*sin(Δγ)
Yview=H*sin(Δα)*cos(Δγ)+H*sin(Δβ)*sin(Δγ)
其中,Xview表示视点的横轴坐标,Yview表示视点的纵轴坐标,W表示显示屏幕的宽度,H表示所述显示屏幕的长度,Δα表示显示屏幕沿横轴方向的旋转角度的改变值,Δβ表示显示屏幕沿纵轴方向的旋转角度的改变值,Δγ表示显示屏幕沿深度轴方向的旋转角度的改变值。
7.根据权利要求1所述的立体显示方法,还包括:
更新三维场景中的三维物体的立体显示数据;
基于视点位置将更新的立体显示数据投影到所述投影视窗。
8.一种立体显示设备,包括:
确定单元,配置成确定三维场景中三维物体的立体显示数据要投影到的投影视窗的投影视窗参数,其中,所述投影视窗参数包括表示所述投影视窗的中心点位置的横轴坐标和纵轴坐标,表示所述投影视窗在所述三维场景中所处的深度平面的深度轴坐标,以及所述投影视窗的长度和宽度;以及在所述深度轴坐标表示的深度平面内,以所述投影视窗的中心点为中心,基于所述长度和宽度确定所述投影视窗;
投影单元,配置成基于视点位置将所述立体显示数据投影到所述投影视窗;以及
显示单元,配置成显示投影到所述投影视窗的立体显示数据,其中,在所述三维场景中,相对于所述视点位置的改变,固定所述投影视窗的中心点的全局坐标以及所述投影视窗所处的深度平面。
9.根据权利要求8所述的立体显示设备,其中,所述确定单元按照以下公式确定所述投影视窗:
XA=X1-W1/2,YA=Y1+H1/2;
XB=X1+W1/2,YB=Y1+H1/2;
XC=X1-W1/2,YC=Y1-H1/2;
XD=X1+W1/2,YD=Y1-H1/2;
ZA=ZB=ZC=ZD=Z1
其中,W1表示投影视窗的宽度,H1表示投影视窗的长度,(X1,Y1,Z1)表示投影视窗中心点的三维坐标,(XA,YA,ZA)表示投影视窗的左上角点的三维坐标,(XB,YB,ZB)表示投影视窗的右上角点的三维坐标,(XC,YC,ZC)表示投影视窗的左下角点的三维坐标,(XD,YD,ZD)表示投影视窗的右下角点的三维坐标。
10.根据权利要求8所述的立体显示设备,其中,所述投影单元按照由所述视点位置确定的视差关系将所述立体显示数据投影到所述投影视窗。
11.根据权利要求8所述的立体显示设备,还包括更新单元,配置成更新视点位置,所述投影单元还配置成基于更新的所述视点位置将立体显示数据投影到所述投影视窗。
12.根据权利要求8所述的立体显示设备,所述确定单元还配置成基于所述显示单元的显示屏幕上的操作点、显示屏幕的朝向中的至少一者确定所述视点的横轴坐标和纵轴坐标,
其中,所述显示屏幕用于显示投影到所述投影视窗的立体显示数据。
13.一种立体显示的装置,包括:
一个或多个处理器;和
一个或多个存储器,其中,所述存储器中存储有计算机可读代码,所述计算机可读代码当由所述一个或多个处理器运行时,执行如权利要求1-7中任一项所述的立体显示方法。
14.一种计算机可读存储介质,其上存储有指令,所述指令在被处理器执行时,使得所述处理器执行如权利要求1-7中任一项所述的立体显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910504911.0A CN110197524B (zh) | 2019-06-12 | 2019-06-12 | 立体显示方法、设备、装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910504911.0A CN110197524B (zh) | 2019-06-12 | 2019-06-12 | 立体显示方法、设备、装置和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110197524A CN110197524A (zh) | 2019-09-03 |
CN110197524B true CN110197524B (zh) | 2023-08-22 |
Family
ID=67754417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910504911.0A Active CN110197524B (zh) | 2019-06-12 | 2019-06-12 | 立体显示方法、设备、装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110197524B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113438465A (zh) * | 2021-06-22 | 2021-09-24 | 纵深视觉科技(南京)有限责任公司 | 一种显示调节方法、装置、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08249500A (ja) * | 1995-03-13 | 1996-09-27 | Hitachi Ltd | 3次元図形の表示方法 |
CN1190235A (zh) * | 1997-02-04 | 1998-08-12 | 富士通株式会社 | 三维视窗显示设备及其方法 |
JP2000268198A (ja) * | 1999-03-15 | 2000-09-29 | Sony Corp | 立体画像処理装置及びその方法 |
CN1274439A (zh) * | 1997-08-12 | 2000-11-22 | 松下电器产业株式会社 | 窗口显示装置 |
JP2001091250A (ja) * | 1999-09-24 | 2001-04-06 | Nippon Telegr & Teleph Corp <Ntt> | 3次元構造獲得方法及び記録媒体並びに装置 |
CN102023708A (zh) * | 2010-12-17 | 2011-04-20 | 福州瑞芯微电子有限公司 | 一种手持设备用户界面视点可变的实现方法 |
CN102970498A (zh) * | 2012-11-30 | 2013-03-13 | 深圳Tcl新技术有限公司 | 菜单立体显示的显示方法及显示装置 |
CN107180406A (zh) * | 2016-03-09 | 2017-09-19 | 腾讯科技(深圳)有限公司 | 图像处理方法和设备 |
CN108182659A (zh) * | 2018-02-01 | 2018-06-19 | 周金润 | 一种基于视点跟踪、单视角立体画的裸眼3d显示技术 |
CN108541322A (zh) * | 2016-08-29 | 2018-09-14 | 北京清影机器视觉技术有限公司 | 三维视觉测量数据的处理方法和装置 |
-
2019
- 2019-06-12 CN CN201910504911.0A patent/CN110197524B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08249500A (ja) * | 1995-03-13 | 1996-09-27 | Hitachi Ltd | 3次元図形の表示方法 |
CN1190235A (zh) * | 1997-02-04 | 1998-08-12 | 富士通株式会社 | 三维视窗显示设备及其方法 |
CN1274439A (zh) * | 1997-08-12 | 2000-11-22 | 松下电器产业株式会社 | 窗口显示装置 |
US6577330B1 (en) * | 1997-08-12 | 2003-06-10 | Matsushita Electric Industrial Co., Ltd. | Window display device with a three-dimensional orientation of windows |
JP2000268198A (ja) * | 1999-03-15 | 2000-09-29 | Sony Corp | 立体画像処理装置及びその方法 |
JP2001091250A (ja) * | 1999-09-24 | 2001-04-06 | Nippon Telegr & Teleph Corp <Ntt> | 3次元構造獲得方法及び記録媒体並びに装置 |
CN102023708A (zh) * | 2010-12-17 | 2011-04-20 | 福州瑞芯微电子有限公司 | 一种手持设备用户界面视点可变的实现方法 |
CN102970498A (zh) * | 2012-11-30 | 2013-03-13 | 深圳Tcl新技术有限公司 | 菜单立体显示的显示方法及显示装置 |
CN107180406A (zh) * | 2016-03-09 | 2017-09-19 | 腾讯科技(深圳)有限公司 | 图像处理方法和设备 |
CN108541322A (zh) * | 2016-08-29 | 2018-09-14 | 北京清影机器视觉技术有限公司 | 三维视觉测量数据的处理方法和装置 |
CN108182659A (zh) * | 2018-02-01 | 2018-06-19 | 周金润 | 一种基于视点跟踪、单视角立体画的裸眼3d显示技术 |
Also Published As
Publication number | Publication date |
---|---|
CN110197524A (zh) | 2019-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230328220A1 (en) | System and method for creating a navigable, three-dimensional virtual reality environment having ultra-wide field of view | |
US11182958B2 (en) | Infinite far-field depth perception for near-field objects in virtual environments | |
US10096157B2 (en) | Generation of three-dimensional imagery from a two-dimensional image using a depth map | |
US20190355170A1 (en) | Virtual reality content display method and apparatus | |
US10606347B1 (en) | Parallax viewer system calibration | |
US10453268B2 (en) | Augmented reality with graphics rendering controlled by mobile device position | |
Mori et al. | Efficient use of textured 3D model for pre-observation-based diminished reality | |
CN111161398B (zh) | 一种图像生成方法、装置、设备及存储介质 | |
US20150065221A1 (en) | Method and device for operating 3d virtual chessboard | |
US9025007B1 (en) | Configuring stereo cameras | |
CN104134235A (zh) | 真实空间和虚拟空间的融合方法和融合系统 | |
WO2018187635A1 (en) | System, method and software for producing virtual three dimensional images that appear to project forward of or above an electronic display | |
KR20170091710A (ko) | 디지털 비디오 렌더링 | |
CN111095348A (zh) | 基于摄像头的透明显示器 | |
KR101818839B1 (ko) | 스테레오 삼차원 영상 콘텐츠 디스플레이 제작 및 재생 방법 | |
CN110197524B (zh) | 立体显示方法、设备、装置和计算机可读存储介质 | |
CN107483915B (zh) | 三维图像的控制方法及装置 | |
EP3542877A1 (en) | Optimized content sharing interaction using a mixed reality environment | |
CA3057507C (en) | Virtual reality system and method for displaying on a real-world display a viewable portion of a source file projected on an inverse spherical virtual screen | |
US10719124B2 (en) | Tracking system, tracking method for real-time rendering an image and non-transitory computer-readable medium | |
CN109949396A (zh) | 一种渲染方法、装置、设备和介质 | |
US10819952B2 (en) | Virtual reality telepresence | |
CN116168076A (zh) | 一种图像处理方法、装置、设备及存储介质 | |
US10701345B2 (en) | System and method for generating a stereo pair of images of virtual objects | |
US20160007014A1 (en) | Equidistant stereo lens shader |
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 |