CN114862657A - 一种双显卡渲染方法及装置 - Google Patents
一种双显卡渲染方法及装置 Download PDFInfo
- Publication number
- CN114862657A CN114862657A CN202210628538.1A CN202210628538A CN114862657A CN 114862657 A CN114862657 A CN 114862657A CN 202210628538 A CN202210628538 A CN 202210628538A CN 114862657 A CN114862657 A CN 114862657A
- Authority
- CN
- China
- Prior art keywords
- display card
- rendering
- rendered
- image
- target display
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 80
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000009977 dual effect Effects 0.000 claims description 21
- 230000015572 biosynthetic process Effects 0.000 claims description 5
- 238000003786 synthesis reaction Methods 0.000 claims description 5
- 210000001747 pupil Anatomy 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 2
- 230000010287 polarization Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种双显卡渲染方法及装置,所述方法包括:初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面;基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;所述目标显卡将所述合并图像发送VR设备。本申请通过双显卡分别对左右眼图像进行渲染,提高渲染效率。
Description
技术领域
本申请请求保护一种图像处理技术,尤其涉及一种双显卡渲染方法。本申请还涉及一种双显卡渲染装置。
背景技术
目前VR的画面生成主要有两种方式:一、VR一体机生成,一体机包含独立操作系统,一般是基于安卓的系统,不依赖于电脑;二、VR头盔链接电脑,由电脑生成画面输出给VR头盔,这种VR机器不负责生成画面,只负责显示和交互。第一种方式的好处是上手就可以体验,不依赖电脑,使用简单,缺点是体积大,重量大,硬件配置普遍比电脑低,并且硬件配置越高重量越重,长期佩戴不舒服,因此目前市面的一体机整体性能有限;第二种方式好处是把画面生成的功能分配给电脑,减轻了头盔重量,性能得到了提升,缺点是使用麻烦,不方便携带和使用,需要依赖电脑。
当前,现有技术中无论哪一种技术,都最多只利用到了一张显卡,渲染出来的画面的质量局限在了一张显卡的能力范围内,使得VR图像渲染需求的设备配置较高。
发明内容
为了解决上述背景技术中提到的技术问题,本申请提供一种双显卡渲染方法。本申请还涉及一种双显卡渲染装置。
本申请提供一种双显卡渲染方法,包括:
初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面;
基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;
将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;
所述目标显卡将所述合并图像发送VR设备。
可选的,所述将所述源显卡中的渲染图像发送到所述目标显卡中包括:
判断所述源显卡和目标显卡是否支持Directx12的资源共享;
若是,则通过PCIe通道将所述渲染图像发送到所述目标显卡;
若否,则所述源显卡将所述渲染图像发送到主机内存,所述目标显卡从所述主机内存中调取所述渲染图像。
可选的,所述将所述合并图像发送AR设备包括:通过无限或者有线的方式将所述合并图像发送VR设备。
可选的,所述VR设备为单屏设备。
可选的,所述创建并计算左右眼要渲染的待渲染画面之前,包括:从计算设备的内存中调取创建所述待渲染画面的数据。
本申请提供一种双显卡渲染装置,包括:
初始化模块,用于初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面;
渲染模块,用于基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;
合成模块,用于将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;
显示模块,用于所述目标显卡将所述合并图像发送VR设备。
可选的,所述将所述源显卡中的渲染图像发送到所述目标显卡中包括:
判断所述源显卡和目标显卡是否支持Directx12的资源共享;
若是,则通过PCIe通道将所述渲染图像发送到所述目标显卡;
若否,则所述源显卡将所述渲染图像发送到主机内存,所述目标显卡从所述主机内存中调取所述渲染图像。
可选的,所述将所述合并图像发送AR设备包括:通过无限或者有线的方式将所述合并图像发送VR设备。
可选的,所述VR设备为单屏设备。
可选的,所述创建并计算左右眼要渲染的待渲染画面之前,包括:从计算设备的内存中调取创建所述待渲染画面的数据。
本申请相较于现有技术的优点是:
本申请提供一种双显卡渲染方法,包括:初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面;基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;所述目标显卡将所述合并图像发送VR设备。本申请通过双显卡分别对左右眼图像进行渲染,提高渲染效率。
附图说明
图1是本申请中双显卡渲染示意图。
图2是本申请中左右眼像素移动流程图。
图3是本申请中双显卡渲染装置示意图。
具体实施方式
以下内容均是为了详细说明本申请要保护的技术方案所提供的具体实施过程的示例,但是本申请还可以采用不同于此的描述的其他方式实施,本领域技术人员可以在本申请构思的指引下,采用不同的技术手段实现本申请,因此本申请不受下面具体实施例的限制。
本申请提供一种双显卡渲染方法,包括:初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面;基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;所述目标显卡将所述合并图像发送VR设备。本申请通过双显卡分别对左右眼图像进行渲染,提高渲染效率。
图1是本申请中双显卡渲染示意图。
请参照图1所示,S101初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面。
本申请所述Directx12是微软在2014年的GDC上正式发布了新一代对媒体编程接口,该接口可以实现两个显卡并行作业。
所述Directx12安装在计算机设备上,所述计算机设备连接有VR设备,该VR设备从所述计算机获取渲染画面,并显示。
首先初始化所述Directx12接口,并从所述计算机设备的内存中调取画面数据,创建待渲染画面,所述待渲染画面是VR设备中可以看到的全部元素的组合。所述待渲染画面是以数据的方式存储在设备内存中,可以根据应用程序的需求随时调用。
所述待渲染画面创建后,计算左右眼分别可以看到的待渲染画面,既左右眼可视画面,该左右眼要渲染的待渲染画面,在VR设备中分别只对应于左右眼显示。
一种优选的实施方式是,左右眼分别对应的待渲染画面是通过双摄像机摄取的,所述双摄像机的每个摄像机对应一只眼睛。另一种优选的方法是,将一张图片通过处理像素块颜色参数,获得左右眼对应的待渲染画面,其步骤如下:
第一步,读取待渲染画面的数据;
第二步,基于所述待渲染画面数据,在画面中间位置设置平面坐标远点,并设置横向X轴和纵向Y轴的坐标系;
第三步,基于所述坐标系,在对称与所述Y轴,且重合与X轴的位置设置双瞳孔,所述双瞳孔之间的瞳距是预先设置的。
第四步,设置VR设备的画面到眼睛的视距,以该视距为半径,以左右眼为圆心设置球状面相切与所述待渲染画面;
第五步,以所述球状面展开时,每个位置的畸变量与预先设置的0~1之间的系数的积为所述待渲染画面的畸变量,进行画面畸变。其中,所述球面以所述相切点为中心进行球状面展开,展开后,所述球状面与待渲染画面重合处的畸变量为所述带渲染画面的对应畸变量。需要清楚的是,该畸变是以球面展开放大的系数进行待渲染画面缩小。所述待渲染画面创建并计算生成对应左右眼要渲染的待渲染画面后,基于所述初始化完成的Directx12接口调取,并分析发送到两个显卡中。
请参照图1所示,S102基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染。
所述Directx12接口将左眼对应的待渲染画面发送到所述目标显卡,将右眼对应的待渲染画面发送到所述源显卡中,然后由所述目标显卡和源显卡分别对各自接收到的待渲染画面进行渲染。
所述左右眼对应的画面具有内容差异,该差异是根据左右眼视角的不同形成的。本申请中,根据视角差异进行左右眼对应的待渲染画面进行渲染。
具体的,根据左右眼的视锥中心的位置,分别进行画面像素移动,实现左眼画面的视锥中心对应的画面图像与右眼视锥中心对应的画面图像相同。
图2是本申请中左右眼像素移动流程图。
请参照图2所示,S201建立总坐标系,所述总坐标系以瞳孔距离中心为原点,以所述瞳孔连线为x轴,以垂直所述瞳距连线中心的竖线为y轴,以垂直xy平面,且经过所述原点的直线为z轴。
S202计算移动距离,所述像素移动的表达式如下:
其中,所述C是画面应当移动的距离,其中左眼是和右眼分别向相反的方向移动。所述J是图像显示的宽度,所述L是图像到眼睛的垂直距离,所述A、B是所述图像宽度方向上左右边缘在x轴上的坐标,所述λ是所述图像在眼睛中的视角。
S203进行像素移动,基于上述表达式,分别计算左右眼像素移动的距离,将左右眼在渲染时进行像素的移动。
请参照图1所示,S103将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像。
生成所述左右眼渲染图像后,所述源显卡将渲染完成的图像发送到目标显卡中进行渲染图像合成。
具体的,判断所述源显卡和目标显卡是否支持Directx12的资源共享;
若是,则通过PCIe通道将所述渲染图像发送到所述目标显卡;
若否,则所述源显卡将所述渲染图像发送到主机内存,所述目标显卡从所述主机内存中调取所述渲染图像。
将所述源显卡中渲染的图像传输到所述目标显卡中后,所述目标显卡将所述源显卡中的渲染完成的图像与所述目标显卡中渲染完成的图像进行合成,包括:将每个显卡的图像显示到相同的显示面上,并以光线的不同偏振方向将两幅渲染画面同时播放;以不同颜色比重将两幅图在同一显示面上播放。
请参照图1所示,S104所述目标显卡将所述合并图像发送VR设备。
最后,所述将所述合并图像发送AR设备包括:通过无限或者有线的方式将所述合并图像发送VR设备,其中所述VR设备为单屏设备。
本申请还提供一种双显卡渲染装置,包括:初始化模块、渲染模块、合成模块和显示模块。
图3是本申请中双显卡渲染装置示意图。
请参照图3所示,初始化模块301,用于初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面。
本申请所述Directx12是微软在2014年的GDC上正式发布了新一代对媒体编程接口,该接口可以实现两个显卡并行作业。
首先初始化所述Directx12接口,创建待渲染画面,所述待渲染画面是VR设备中可以看到的全部元素的组合,所述待渲染画面是以数据的方式存储在设备内存中,可以根据应用程序的需求随时调用。
所述待渲染画面创建后,计算左右眼分别可以看到的待渲染画面,既左右眼可视画面,该左右眼要渲染的待渲染画面,在VR设备中分别只对应于左右眼显示。
一种优选的实施方式是,左右眼分别对应的待渲染画面是通过双摄像机摄取的,所述双摄像机的每个摄像机对应一只眼睛。另一种优选的方法是,将一张图片通过处理像素块颜色参数,获得左右眼对应的待渲染画面,其步骤如下:
第一步,读取待渲染画面的数据;
第二步,基于所述待渲染画面数据,在画面中间位置设置平面坐标远点,并设置横向X轴和纵向Y轴的坐标系;
第三步,基于所述坐标系,在对称与所述Y轴,且重合与X轴的位置设置双瞳孔,所述双瞳孔之间的瞳距是预先设置的。
第四步,设置VR设备的画面到眼睛的视距,以该视距为半径,以左右眼为圆心设置球状面相切与所述待渲染画面;
第五步,以所述球状面展开时,每个位置的畸变量与预先设置的0~1之间的系数的积为所述待渲染画面的畸变量,进行画面畸变。其中,所述球面以所述相切点为中心进行球状面展开,展开后,所述球状面与待渲染画面重合处的畸变量为所述带渲染画面的对应畸变量。需要清楚的是,该畸变是以球面展开放大的系数进行待渲染画面缩小。
所述待渲染画面创建并计算生成对应左右眼要渲染的待渲染画面后,基于所述初始化完成的Directx12接口调取,并分析发送到两个显卡中。
请参照图3所示,渲染模块302,用于基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染。
所述Directx12接口将左眼对应的待渲染画面发送到所述目标显卡,将右眼对应的待渲染画面发送到所述源显卡中,然后由所述目标显卡和源显卡分别对各自接收到的待渲染画面进行渲染。
所述左右眼对应的画面具有内容差异,该差异是根据左右眼视角的不同形成的。本申请中,根据视角差异进行左右眼对应的待渲染画面进行渲染。
具体的,根据左右眼的视锥中心的位置,分别进行画面像素移动,实现左眼画面的视锥中心对应的画面图像与右眼视锥中心对应的画面图像相同。
首先建立总坐标系,所述总坐标系以瞳孔距离中心为原点,以所述瞳孔连线为x轴,以垂直所述瞳距连线中心的竖线为y轴,以垂直xy平面,且经过所述原点的直线为z轴。
所述像素移动的表达式如下:
其中,所述C是画面应当移动的距离,其中左眼是和右眼分别向相反的方向移动。所述J是图像显示的宽度,所述L是图像到眼睛的垂直距离,所述A、B是所述图像宽度方向上左右边缘在x轴上的坐标,所述λ是所述图像在眼睛中的视角。
基于上述表达式,分别计算左右眼像素移动的距离,将左右眼在渲染时进行像素的移动。
请参照图3所示,合成模块303,用于将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像。
生成所述左右眼渲染图像后,所述源显卡将渲染完成的图像发送到目标显卡中进行渲染图像合成。
具体的,判断所述源显卡和目标显卡是否支持Directx12的资源共享;
若是,则通过PCIe通道将所述渲染图像发送到所述目标显卡;
若否,则所述源显卡将所述渲染图像发送到主机内存,所述目标显卡从所述主机内存中调取所述渲染图像。
将所述源显卡中渲染的图像传输到所述目标显卡中后,所述目标显卡将所述源线中的渲染完成的图像与所述目标显卡中渲染完成的图像进行合成,包括:将每个显卡的图像显示到相同的显示面上,并以光线的不同偏振方向将两幅渲染画面同时播放;以不同颜色比重将两幅图在同一显示面上播放。
请参照图3所示,显示模块304,用于所述目标显卡将所述合并图像发送VR设备。
最后,所述将所述合并图像发送AR设备包括:通过无限或者有线的方式将所述合并图像发送VR设备,其中所述VR设备为单屏设备。
Claims (10)
1.一种双显卡渲染方法,其特征在于,包括:
初始化Directx12接口,创建并计算左右眼要渲染的待渲染图像;
基于所述Directx12接口将所述待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;
将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;
所述目标显卡将所述合并图像发送VR设备。
2.根据权利要求1所述双显卡渲染方法,其特征在于,所述将所述源显卡中的渲染图像发送到所述目标显卡中包括:
判断所述源显卡和目标显卡是否支持Directx12的资源共享;
若是,则通过PCIe通道将所述渲染图像发送到所述目标显卡;
若否,则所述源显卡将所述渲染图像发送到主机内存,所述目标显卡从所述主机内存中调取所述渲染图像。
3.根据权利要求1所述双显卡渲染方法,其特征在于,所述将所述合并图像发送AR设备包括:通过无限或者有线的方式将所述合并图像发送VR设备。
4.根据权利要求3所述双显卡渲染方法,其特征在于,所述VR设备为单屏设备。
5.根据权利要求1所述双显卡渲染方法,其特征在于,所述创建并计算左右眼要渲染的待渲染画面之前,包括:从计算设备的内存中调取创建所述待渲染画面的数据。
6.一种双显卡渲染装置,其特征在于,包括:
初始化模块,用于初始化Directx12接口,创建并计算左右眼要渲染的待渲染画面;
渲染模块,用于基于所述Directx12接口将待渲染图像分别发送到目标显卡和源显卡,分别对所述待渲染图像渲染;
合成模块,用于将所述源显卡中的渲染图像发送到所述目标显卡中,所述目标显卡将所述源显卡和所述目标显卡中完成的渲染图像合并,生成合并图像;
显示模块,用于所述目标显卡将所述合并图像发送VR设备。
7.根据权利要求6所述双显卡渲染装置,其特征在于,所述将所述源显卡中的渲染图像发送到所述目标显卡中包括:
判断所述源显卡和目标显卡是否支持Directx12的资源共享;
若是,则通过PCIe通道将所述渲染图像发送到所述目标显卡;
若否,则所述源显卡将所述渲染图像发送到主机内存,所述目标显卡从所述主机内存中调取所述渲染图像。
8.根据权利要求6所述双显卡渲染装置,其特征在于,所述将所述合并图像发送AR设备包括:通过无限或者有线的方式将所述合并图像发送VR设备。
9.根据权利要求8所述双显卡渲染装置,其特征在于,所述VR设备为单屏设备。
10.根据权利要求6所述双显卡渲染装置,其特征在于,所述创建并计算左右眼要渲染的待渲染画面之前,包括:从计算设备的内存中调取创建所述待渲染画面的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210628538.1A CN114862657A (zh) | 2022-06-02 | 2022-06-02 | 一种双显卡渲染方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210628538.1A CN114862657A (zh) | 2022-06-02 | 2022-06-02 | 一种双显卡渲染方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114862657A true CN114862657A (zh) | 2022-08-05 |
Family
ID=82625003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210628538.1A Pending CN114862657A (zh) | 2022-06-02 | 2022-06-02 | 一种双显卡渲染方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114862657A (zh) |
-
2022
- 2022-06-02 CN CN202210628538.1A patent/CN114862657A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11592668B2 (en) | Image generation apparatus and image generation method using frequency lower than display frame rate | |
US11321906B2 (en) | Asynchronous time and space warp with determination of region of interest | |
US11294535B2 (en) | Virtual reality VR interface generation method and apparatus | |
US20160267720A1 (en) | Pleasant and Realistic Virtual/Augmented/Mixed Reality Experience | |
US20100110069A1 (en) | System for rendering virtual see-through scenes | |
US9325960B2 (en) | Maintenance of three dimensional stereoscopic effect through compensation for parallax setting | |
WO2018126922A1 (zh) | 全景视频渲染方法、装置及电子设备 | |
TW202019167A (zh) | 產生和修改擴增實境或虛擬實境場景中的物件的表示方式 | |
WO2020003860A1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP2006285609A (ja) | 画像処理方法、画像処理装置 | |
US6559844B1 (en) | Method and apparatus for generating multiple views using a graphics engine | |
WO2018134946A1 (ja) | 画像生成装置、及び画像表示制御装置 | |
US11748918B1 (en) | Synthesized camera arrays for rendering novel viewpoints | |
CN114862657A (zh) | 一种双显卡渲染方法及装置 | |
TWM630947U (zh) | 立體影像播放裝置 | |
CN114513646A (zh) | 一种三维虚拟场景中全景视频的生成方法及设备 | |
US11187914B2 (en) | Mirror-based scene cameras | |
JP6791991B2 (ja) | 画像配信装置 | |
WO2024004134A1 (ja) | 画像送信装置および画像送信方法 | |
US12039632B2 (en) | Synthesized camera arrays for rendering novel viewpoints | |
TWI817335B (zh) | 立體影像播放裝置及其立體影像產生方法 | |
CN116708737A (zh) | 立体影像播放装置及其立体影像产生方法 | |
CN114827569A (zh) | 画面显示方法、装置、虚拟现实设备及存储介质 | |
JP2009533893A (ja) | ビデオ装置及びその映像処理方法 |
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 |