用于虚拟现实的图像渲染方法、装置、设备及VR设备制造方法及图纸

技术编号:28423698 阅读:28 留言:0更新日期:2021-05-11 18:31
本发明专利技术实施方式涉及图像处理技术领域,特别涉及一种用于虚拟现实的图像渲染方法、装置、设备及VR设备。其中,一种用于虚拟现实的图像渲染方法,基于开放图形库,该图像渲染方法包括:响应于垂直同步信号,反畸变线程获取经3D渲染线程渲染后的图像以及所述3D渲染线程的第一姿态变换矩阵;根据获取的虚拟现实设备的姿态参数对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵;将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示。本发明专利技术的实施方式降低画面渲染时间,提升显示帧率。

【技术实现步骤摘要】
用于虚拟现实的图像渲染方法、装置、设备及VR设备
本专利技术涉及图像处理
,特别涉及一种用于虚拟现实的图像渲染方法、一种用于虚拟现实的图像渲染装置、一种用于虚拟现实的图像渲染设备以及一种VR设备。
技术介绍
虚拟现实(缩写为VR)技术,是一项计算机模拟虚拟环境的实用技术。其中,VR眼镜是一种头戴式虚拟现实设备,其工作要求显示设备清晰度高、帧率高和极低的动显延迟(人体动作姿态变化到引起画面变化的时间延迟)。所以,解决上述问题的渲染技术是VR技术的核心。目前主流移动端GPU的渲染能力难以满足上述要求,市面上已有一些异步扭曲等技术来优化上述问题,但大多数的渲染帧率都难以控制。OpenGL:(OpenGraphicsLibrary)开放图形库,是用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。
技术实现思路
有鉴于此,本专利技术旨在提出用于虚拟现实的图像渲染方法、装置、设备及VR设备,能够在清晰度不变的情况下,稳定提升VR设备渲染画面的帧率并有效减小动显延迟。为达到上述目的,本专利技术的第一方面提供了一种用于虚拟现实的图像渲染方法,基于开放图形库,所述图像渲染方法包括:响应于垂直同步信号,反畸变线程获取经3D渲染线程渲染后的图像以及所述3D渲染线程的第一姿态变换矩阵;根据获取的虚拟现实设备的姿态参数对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵;将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示。优选的,所述反畸变线程通过所述3D渲染线程共享的所述渲染后的图像的纹理ID,实现对所述渲染后的图像的获取。优选的,所述根据获取的虚拟现实设备的状态参数对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵,包括:获取所述虚拟现实设备的姿态参数;基于所述姿态参数设置第二姿态变换矩阵;根据所述第一姿态变换矩阵和所述第二姿态变换矩阵计算得到所述第三姿态变换矩阵。优选的,所述图像渲染方法还包括:设置渲染缓冲区,所述渲染缓冲区用于缓存所述经3D渲染线程渲染后的图像。优选的,所述设置渲染缓冲区,包括:设置所述渲染缓冲区的以下参数:颜色缓冲区位数、深度缓冲区位数、模板缓冲区缓冲区位数、多重采样缓冲区位数和每个像素点的采样个数。优选的,将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示,包括:将所述第三姿态变换矩阵分解为多个子变换矩阵;所述多个子变换矩阵分别用于对所述渲染后的图像进行对应的变换操作;所述渲染后的图像经所述多个子变换矩阵反畸变处理后,将处理结果输出至屏幕进行显示。优选的,所述多个子变换矩阵包括:缩放变换矩阵、平移变换矩阵、旋转变换矩阵和姿态矩阵。在本专利技术的第二方面,还提供了一种用于虚拟现实的图像渲染装置,所述图像渲染装置包括:获取模块,用于响应于垂直同步信号,反畸变线程获取经3D渲染线程渲染后的图像以及所述3D渲染线程的第一姿态变换矩阵;矩阵姿态确定模块,用于根据获取的虚拟现实设备的参数状态对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵;以及变换渲染模块,用于将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示。在本专利技术的第三方面,还提供了一种用于虚拟现实的图像渲染设备,所述图像渲染设备包括:至少一个处理器;存储器,与所述至少一个处理器连接;其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现前述的用于虚拟现实的图像渲染方法。在本专利技术的第四方面,还提供了一种VR设备,所述VR设备包括显示装置,以及前述的图像渲染设备。本专利技术实施方式提供的技术方案,具有以下有益效果:本专利技术提供的实施方式通过将扭曲变换矩阵实时用到反畸变线程上,显著降低图像的渲染耗时,从而提升显示帧率,保证了画面流畅度。本专利技术的其它特征和优点将在随后的具体实施方式部分予以详细说明。附图说明构成本专利技术的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施方式及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为本专利技术一实施方式中的用于虚拟现实的图像渲染方法的步骤示意图;图2为本专利技术一实施方式中的用于虚拟现实的图像渲染方法的实施步骤图;图3为本专利技术一实施方式中的用于虚拟现实的图像渲染装置的模块结构图。具体实施方式以下结合附图对本专利技术实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本专利技术实施例,并不用于限制本专利技术实施例。图1为本专利技术一实施方式中的用于虚拟现实的图像渲染方法的步骤示意图,如图1所示,一种用于虚拟现实的图像渲染方法,基于开放图形库,该图像渲染方法包括:S01、响应于垂直同步信号,反畸变线程获取经3D渲染线程渲染后的图像以及所述3D渲染线程的第一姿态变换矩阵;3D渲染线程为OpenGL的3D主渲染线程,由App触发画面刷新时进入3D渲染流程。3D渲染流程包括四元数Q0相关的姿态参数的获取、渲染双眼纹理到渲染缓冲区、设置时间姿态Q0(第一姿态变换矩阵)、切换反畸变线程纹理ID、切换自身下一帧渲染纹理ID等功能。反畸变线程为OpenGL的2D渲染线程,为VR眼镜正常显示需要对画面进行反畸变处理的必要线程。该线程可以设置为由3D主渲染线程启动,反畸变线程的渲染流程包括等待垂直同步信号、计算扭曲变换矩阵、执行反畸变和时间扭曲,提交画面到屏幕等功能。S02、根据获取的虚拟现实设备的参数状态对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵;反畸变线程由应用时创建并指定渲染缓冲区类型,初始化时设置共享3D渲染线程的上下文及纹理ID。自身创建离屏渲染缓冲区并由来自显示屏的vsync触发渲染动作,开始渲染时,获取当前姿态四元数Q1。反畸变线程通过Q0和Q1计算第三姿态变换矩阵(即扭曲变换矩阵),该第三姿态变换矩阵用于通过执行反畸变时达到实时时间扭曲的效果。S03、将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示。反畸变线程将四元数Q0与Q1分别转换成2个4x4变换矩阵,由这2个矩阵计算出前述的第三姿态变换矩阵,左右眼(显示屏)共用同一个第三姿态变换矩阵进行反畸变渲染,最后把渲染画面提交到屏幕显示。通过以上实施方式,通过反畸变线程执行2D的渲染操,运算量仅为3D渲染的十分之一左右,所以将扭曲变换矩阵实时用到反畸变线程上,能把原来3D渲染的耗时所需的40~50毫秒降低到2D渲染耗时所需的5~6毫秒。由于反畸变线程渲染信号直接来自vsync(垂直同步信号),而且2D渲染时间远远小于屏幕刷新间隔(60hz时屏幕刷新间隔为16.7毫秒),所以送显的频率一直能和屏幕硬件刷新率保持一致,从而保证了画面流畅度。在本专利技术提供的一种实施方式中,所述反畸变线程通过所述3D渲染线程共享的所述渲染后的图像的纹理ID,实现对所述渲染后的图像的获取。3D渲染线程执行初始化后,需要检测反畸变线程实例运行本文档来自技高网...

【技术保护点】
1.一种用于虚拟现实的图像渲染方法,基于开放图形库,其特征在于,所述图像渲染方法包括:/n响应于垂直同步信号,反畸变线程获取经3D渲染线程渲染后的图像以及所述3D渲染线程的第一姿态变换矩阵;/n根据获取的虚拟现实设备的姿态参数对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵;/n将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示。/n

【技术特征摘要】
1.一种用于虚拟现实的图像渲染方法,基于开放图形库,其特征在于,所述图像渲染方法包括:
响应于垂直同步信号,反畸变线程获取经3D渲染线程渲染后的图像以及所述3D渲染线程的第一姿态变换矩阵;
根据获取的虚拟现实设备的姿态参数对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵;
将所述渲染后的图像经所述第三姿态变换矩阵反畸变处理后输出显示。


2.根据权利要求1所述的图像渲染方法,其特征在于,所述反畸变线程通过所述3D渲染线程共享的渲染后的图像的纹理ID,实现对经所述3D渲染线程渲染后的图像的获取。


3.根据权利要求1所述的图像渲染方法,其特征在于,所述根据获取的虚拟现实设备的状态参数对所述第一姿态变换矩阵进行变化后得到第三姿态变换矩阵,包括:
获取所述虚拟现实设备的姿态参数;
基于所述姿态参数设置第二姿态变换矩阵;
根据所述第一姿态变换矩阵和所述第二姿态变换矩阵计算得到所述第三姿态变换矩阵。


4.根据权利要求1所述的图像渲染方法,其特征在于,所述图像渲染方法还包括:设置渲染缓冲区,所述渲染缓冲区用于缓存所述经3D渲染线程渲染后的图像。


5.根据权利要求4所述的图像渲染方法,其特征在于,所述设置渲染缓冲区,包括:设置所述渲染缓冲区的以下参数:颜色缓冲区位数、深度缓冲区位数、模板缓冲区缓冲区位数、多重采样缓冲区位数和每个像素点的采样个数。


6.根据权利要求1所述的图...

【专利技术属性】
技术研发人员:李朝庭林榕郑广平吴开钢
申请(专利权)人:广东九联科技股份有限公司
类型:发明
国别省市:广东;44

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

1