基于着色器的图形内容的观看定向的立体转换制造技术

技术编号:12031959 阅读:120 留言:0更新日期:2015-09-10 19:15
本发明专利技术的实例技术是针对从经设计以产生单视图的应用程序产生立体视图。举例来说,所述技术可基于观看角度修改用于顶点着色器的指令。当执行所述经修改顶点着色器时,所述经修改顶点着色器可基于所述观看角度产生立体视图的顶点的坐标。

【技术实现步骤摘要】
【国外来华专利技术】基于着色器的图形内容的观看定向的立体转换
本专利技术涉及图形数据处理,且更具体地说,涉及用于立体视图的图形数据处理。
技术介绍
立体视图指代表现为涵盖3维(3D)体积的所感知图像。为了产生立体视图,装置在显示器的2维(2D)区域上显示两个图像。这两个图像包含大体上类似的内容,但沿着所述两个图像中的一或多个对应像素的水平轴线具有稍微的位移。在2D区域上这两个图像的同时观看致使观看者感知到被弹出或推入正显示所述两个图像的2D显示的图像。以此方式,虽然所述两个图像显示于显示器的2D区域上,但观看者感知到表现为涵盖3D体积的图像。立体视图的所述两个图像分别称为左眼图像和右眼图像。左眼图像可由观看者的左眼观看,且右眼图像不可由观看者的左眼观看。类似地,右眼图像可由观看者的右眼观看,且左眼图像不可由观看者的右眼观看。举例来说,观看者可佩戴专用眼镜,其中所述眼镜的左镜片阻挡右眼图像且通过左眼图像,且所述眼镜的右镜片阻挡左眼图像且通过右眼图像。因为左眼和右眼图像包含沿着水平轴线具有稍微位移的大体上类似的内容,但不可由观看者的双眼同时观看(例如,由于所述专用眼镜),所以观看者的大脑通过混合所述两个图像来解析对应像素之间的稍微位移。所述混合致使观看者将所述两个图像感知为具有3D体积的图像。
技术实现思路
一般来说,本专利技术的技术是针对修改产生单视图的指令以致使图形处理单元(GPU)产生立体视图。GPU的着色器程序可经设计以产生单视图。本专利技术中描述的技术至少基于观看角度修改此着色器程序的指令以产生立体视图。举例来说,所述技术修改着色器程序的指令以针对立体视图的视图中的一者沿一个方向移位像素的位置,且针对立体视图的另一视图沿另一方向移位所述像素的位置。经修改着色器程序使像素的位置移位的方向是基于观看角度。在一个实例中,本专利技术描述用于图形处理的方法。所述方法包含:以处理器确定相对于显示器的观看角度;以所述处理器接收用于经配置以对单视图的图像操作的顶点着色器的指令;以及以所述处理器基于所述观看角度将用于所述顶点着色器的所述指令修改为包含一或多个指令以产生经修改顶点着色器。在此实例中,所述经修改顶点着色器当经执行时产生立体视图的顶点的顶点坐标。所述方法还包含以所述处理器指示图形处理单元(GPU)执行所述经修改顶点着色器。在一个实例中,本专利技术描述一种设备。所述设备包含图形处理单元(GPU)和处理器。所述处理器经配置以确定相对于显示器的观看角度,且基于所述观看角度将用于顶点着色器的指令修改为包含一或多个指令以产生经修改顶点着色器。在此实例中,所述经修改顶点着色器当经执行时产生立体视图的顶点的顶点坐标。所述处理器还经配置以指示所述GPU执行所述经修改顶点着色器。在一个实例中,本专利技术描述一种处理器。所述处理器经配置以确定相对于显示器的观看角度,接收用于经配置以对单视图的图像操作的顶点着色器的指令,以及基于所述观看角度将用于所述顶点着色器的所述指令修改为包含一或多个指令以产生经修改顶点着色器。在此实例中,所述经修改顶点着色器当经执行时产生立体视图的顶点的顶点坐标。所述处理器还经配置以指示图形处理单元GPU执行所述经修改顶点着色器。在一个实例中,本专利技术描述一种设备,其包含:图形处理单元(GPU);用于确定相对于显示器的观看角度的装置;用于接收用于经配置以对单视图的图像操作的顶点着色器的指令的装置;以及用于基于所述观看角度将用于所述顶点着色器的所述指令修改为包含一或多个指令以产生经修改顶点着色器的装置。在此实例中,所述经修改顶点着色器当经执行时产生立体视图的顶点的顶点坐标。所述设备还包含用于指示所述GPU执行所述经修改顶点着色器的装置。在一个实例中,本专利技术描述一种其上存储有指令的计算机可读存储媒体,所述指令在被执行时致使一或多个处理器:确定相对于显示器的观看角度;接收用于经配置以对单视图的图像操作的顶点着色器的指令;以及基于所述观看角度将用于所述顶点着色器的所述指令修改为包含一或多个指令以产生经修改顶点着色器。在此实例中,所述经修改顶点着色器当经执行时产生立体视图的顶点的顶点坐标。所述指令进一步致使所述一或多个处理器指示图形处理单元(GPU)执行所述经修改顶点着色器。在随附图式及以下描述中阐述本专利技术的一或多个方面的细节。本专利技术的其它特征、目标和优点将从所述描述和图式以及权利要求书而显而易见。附图说明图1是说明根据本专利技术中所描述的一或多个实例的显示立体视图的显示器的概念图。图2是说明不同观看角度的概念图。图3是说明观看者的眼睛和头定向的检测的概念图。图4是说明观看角度的实例的概念图。图5是说明可实施本专利技术中描述的一或多个实例技术的装置的实例的框图。图6是说明零视差平面的位置的概念图。图7是说明根据本专利技术中描述的一或多个实例技术的左眼图像与右眼图像之间的水平视差的概念图。图8是说明可实施本专利技术中描述的一或多个实例技术的图形处理单元(GPU)的实例的框图。图9是说明可实施本专利技术中描述的一或多个实例技术的图形处理单元(GPU)的另一实例的框图。图10A-10C是说明根据本专利技术中描述的一或多种技术的实例结果的概念图。图11是进一步详细说明图5的实例装置的框图。图12是说明根据本专利技术中所描述的一或多个实例技术的实例操作的流程图。具体实施方式本专利技术中描述的实例技术是针对在执行或运行时间期间再现立体3维(S3D)图形。举例来说,应用程序可产生将由用于显示的图形处理单元(GPU)再现的单视图图像。本专利技术中描述的技术可在应用程序的执行期间(即,在运行时间期间)将单视图图像转换为立体视图图像。在一些实例中,所述技术可再现S3D图形而不需要对产生图形的应用程序或GPU的任何修改。在一些实例中,本专利技术中描述的技术可由应用程序处理器实施,所述应用程序处理器执行到图形驱动器的包装器。到图形驱动器的包装器可视为根据本专利技术中描述的技术修改对先前产生的图形驱动器的输入或修改先前产生的图形驱动器的输出的程序。以此方式,本专利技术中描述的技术可提供GPU来产生S3D图形而不需要修改在应用程序处理器上执行的图形驱动器。然而,产生新图形驱动器或修改先前产生的图形驱动器以使得应用程序处理器响应于图形驱动器的执行而实施本专利技术中描述的实例技术可为可能的。出于说明的目的,将所述技术描述为由执行图形驱动器包装器的应用程序处理器执行。从应用程序的角度,执行应用程序的应用程序处理器可输出用于GPU的常规3D图形再现的应用程序的图形数据和命令。在应用程序处理器上执行的图形驱动器包装器可修改所述命令以及由GPU执行的指令以使得GPU在S3D显示器上再现S3D图形。在本专利技术中,术语“命令”和“指令”可互换地使用。以此方式,GPU可再现S3D图形而无需对产生图形的应用程序或GPU的任何改变。因此,本专利技术中描述的技术可允许观看者体验由未经设计以产生S3D图形的应用程序产生的图像内容的S3D图形。此外,本专利技术中描述的技术可考虑观看角度(即,观看者观看显示器所处的角度)以确定应用程序处理器经由图形驱动器包装器修改由GPU执行的指令的方式。通过考虑观看角度,即使显示器倾斜或观看者的头倾斜,观看者也可体验高质量S3D图形。在常规3D图形再现中,GPU从单个视点(例如,单视图)产生3D图形。此单个视点可意味着可由观看者的本文档来自技高网...
基于着色器的图形内容的观看定向的立体转换

【技术保护点】
一种用于图形处理的方法,所述方法包括:以处理器确定相对于显示器的观看角度;以所述处理器接收用于经配置以对单视图的图像操作的顶点着色器的指令;以所述处理器基于所述观看角度将用于所述顶点着色器的所述指令修改为包含一或多个指令以产生经修改顶点着色器,其中所述经修改顶点着色器当经执行时产生立体视图的顶点的顶点坐标;以所述处理器指示图形处理单元GPU执行所述经修改顶点着色器。

【技术特征摘要】
【国外来华专利技术】2013.01.10 US 13/738,5141.一种用于图形处理的方法,所述方法包括:确定观看者定向或显示器定向中的至少一者;以及使用处理器基于所确定的观看者定向或所确定显示器定向中的至少一者确定相对于显示器的观看角度;使用所述处理器接收用于经配置以对单视图的图像操作的顶点着色器的指令;使用所述处理器基于所述观看角度将用于所述顶点着色器的所述指令修改为包含一或多个指令以产生经修改顶点着色器,其中对所述经修改顶点着色器的第一实例的执行基于所述观看角度在一个方向上移位所述单视图的图像的基元的顶点且其中对所述经修改顶点着色器的第二实例的执行基于所述观看角度在另一个方向上移位所述单视图的图像的所述基元的顶点以产生立体视图的顶点的顶点坐标;使用所述处理器指示图形处理单元GPU执行所述经修改顶点着色器的所述第一实例以产生所述立体视图的第一图像;以及使用所述处理器指示所述GPU执行所述经修改顶点着色器的所述第二实例以产生所述立体视图的第二图像。2.根据权利要求1所述的方法,其中修改所述指令包括:将第一指令添加到所述顶点着色器中,所述第一指令基于所述观看角度修改所述单视图的所述图像的顶点的第一裁剪坐标;以及将第二指令添加到所述顶点着色器中,所述第二指令基于所述观看角度修改所述单视图的所述图像的所述顶点的第二裁剪坐标。3.根据权利要求1所述的方法,其中修改所述指令包括:在所述顶点着色器中添加第一指令,所述第一指令基于所述观看角度和零视差平面的位置修改所述单视图的所述图像的顶点的第一裁剪坐标;以及将第二指令添加到所述顶点着色器中,所述第二指令基于所述观看角度和所述零视差平面的所述位置修改所述单视图的所述图像的所述顶点的第二裁剪坐标。4.根据权利要求1所述的方法,其进一步包括:将界定所述单视图的所述图像的检视区的指令修改为界定所述立体视图的第一图像的检视区的指令和界定所述立体视图的第二图像的检视区的指令。5.根据权利要求4所述的方法,其中修改界定所述单视图的所述图像的所述检视区的所述指令包括调整所述立体视图的所述第一图像与所述立体视图的所述第二图像之间的水平视差。6.根据权利要求5所述的方法,其中调整所述水平视差包括调整所述立体视图的所述第一图像与所述立体视图的所述第二图像之间的所述水平视差以调整零视差平面的位置。7.根据权利要求1所述的方法,其进一步包括:以所述处理器执行应用程序以产生所述单视图的所述图像,其中修改用于所述顶点着色器的所述指令包括在所述应用程序的执行期间修改用于所述顶点着色器的所述指令。8.根据权利要求1所述的方法,其中确定所述观看角度包括在所述立体视图的每次产生时确定所述观看角度一次。9.根据权利要求1所述的方法,其中接收指令包括以在所述处理器上执行的图形驱动器包装器接收用于所述顶点着色器的所述指令,且其中修改所述指令包括以所述处理器上的所述图形驱动器包装器执行来修改所述顶点着色器的所述指令。10.一种用于图形处理的设备,其包括:图形处理单元GPU;以及处理器,其经配置以:确定观看者定向或显示器定向中的至少一者;以及基于所确定的观看者定向或所确定显示器定向中的至少一者确定相对于显示器的观看角度;基于所述观看角度将经配置以对单视图的图像操作的顶点着色器的指令修改为包含一或多个指令以产生经修改顶点着色器,其中对所述经修改顶点着色器的第一实例的执行基于所述观看角度在一个方向上移位所述单视图的图像的基元的顶点且其中对所述经修改顶点着色器的第二实例的执行基于所述观看角度在另一个方向上移位所述单视图的图像的所述基元的顶点以产生立体视图的顶点的顶点坐标;指示所述GPU执行所述经修改顶点着色器的所述第一实例以产生所述立体视图的第一图像;以及指示所述GPU执行所述经修改顶点着色器的所述第二实例以产生所述立体视图的第二图像。11.根据权利要求10所述的设备,其中为了修改所述指令,所述处理器经配置以:将第一指令添加到所述顶点着色器中,所述第一指令基于所述观看角度修改单视图的图像的顶点的第一裁剪坐标;以及将第二指令添加到所述顶点着色器中,所述第二指令基于所述观看角度修改所述单视图的所述图像的所述顶点的第二裁剪坐标。12.根据权利要求10所述的设备,其中为了修改所述指令,所述处理器经配置以:在所述顶点着色器中添加第一指令,所述第一指令基于所述观看角度和零视差平面的位置修改单视图的图像的顶点的第一裁剪坐标;以及将第二指令添加到所述顶点着色器中,所述第二指令基于所述观看角度和所述零视差平面的所述位置修改所述单视图的所述图像的所述顶点的第二裁剪坐标。13.根据权利要求10所述的设备,其中所述处理器经配置以:将界定单视图的图像的检视区的指令修改为界定所述立体视图的第一图像的检视区的指令和界定所述立体视图的第二图像的检视区的指令。14.根据权利要求13所述的设备,其中为了修改界定所述单视图的所述图像的所述检视区的所述指令,所述处理器经配置以调整所述立体视图的所述第一图像与所述立体视图的所述第二图像之间的水平视差。15.根据权利要求14所述的设备,其中为了调整所述水平...

【专利技术属性】
技术研发人员:毕宁张雪瑞
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1