一种视场画面图像生成方法及装置与流程

文档序号:11437364阅读:161来源:国知局
一种视场画面图像生成方法及装置与流程

本发明涉及数字视频处理领域,具体涉及一种视场画面图像生成方法及装置。



背景技术:

全景变换是一个将输入的全景视频图像,根据视角姿态参数,生成用户主观视场画面的过程,主要应用于vr设备。全景视频图像是一类包含了水平360度垂直180度全景信息的视频图像,目前主要有球形全景和立方体全景格式。通过vr设备以主观视角观看全景视频图像,可以为使用者提供身临其境的沉浸式体验。同时该类应用也对vr设备的图像渲染质量、帧率以及显示延迟提出了更高的要求。

现有的全景变换基本采用软件调用gpu渲染的解决方案,其处理流程如图1所示。全景视频图像由视频解码单元录入存储器中,gpu读取存储器中全景视频图像数据进行处理。在gpu内部处理流程中,先根据输入视频图像的格式选择三维模型的类型(三维建模);并将全景视频图像作为纹理与三维模型几何网格一一对应(纹理化);再根据惯性测量单元提供的视角姿态参数对模型进行三维旋转变换以及二维投影变换(矩阵变换);最后通过插值、渲染输出用户视场图像(光栅化)。gpu输出的视频图像将写回存储器,由视频显示单元读取并输出到显示设备上,完成视场图像的显示。

全景视频图像分辨率一般较高,对图像显示质量和速度有较高要求。现有技术中,gpu利用三维建模将视频图像分解为多个几何网格进行处理,建模的精细程度决定着图像质量和运算量。建模不够精细将导致图像质量下降、拼接痕迹明显等问题,而更精细的建模又会使运算量和功耗成倍增加,影响vr设备整体的性能。而且gpu作为通用的图像处理器,其工作方式决定了其不能将直接将结果输出到显示设备,而必须先将结果写回存储器,由图像显示单元读取并输出到显示设备上,不但消耗了带宽资源,而且增加了显示时延。



技术实现要素:

本发明针对现有技术的上述缺陷,提供一种视场画面图像生成方法,克服现有技术建模不够精细导致图像质量下降、带宽消耗大,显示时延的缺陷。

本发明解决其技术问题所采用的技术方案是:提供一种视场画面图像生成方法,包括:步骤一,接收视场画面的分辨率、当前视角姿态参数和全景视频图像,根据所示视场画面的分辨率、所述当前视角姿态参数和所述全景视频图像的格式,计算视场画面中每个像素点对应的在所述全景视频图像中的坐标;步骤二,根据所述全景视频图像中的坐标提取视场画面图像像素点所需要的插值点的值进行插值计算,以生成视场画面图像。

所述步骤一中的计算视场画面中每个像素对应的在所述全景视频图像中的坐标包括:

根据所述视场画面的分辨率将所述视场画面的坐标转换为空间直角坐标;

根据所述当前视角姿态参数计算旋转矩阵;

根据所述空间直角坐标和所述旋转矩阵计算旋转后的空间直角坐标;

根据所述旋转后的空间直角坐标和所述全景视频图像的格式计算所述视场画面中每个像素点对应的在所述全景视频图像中的坐标。

所述当前视角姿态参数是四元数、欧拉角或旋转矩阵。

所述全景视频图像的格式是球形全景和立方体全景。

所述步骤二包括:根据双线性插值或双三次插值算法对所述全景视频图像中的插值点的值进行插值计算,以生成所述视场画面图像。

本发明还提供一种全景变换方法,采用如权利要求1至5任一项所述的视场画面图像生成方法完成全景变换。

本发明还提供一种视场画面图像生成装置,包括坐标转换模块和插值计算模块:坐标转换模块根据视场画面的分辨率、当前视角姿态参数和全景视频图像的格式,计算视场画面中每个像素点对应的在所述全景视频图像中的坐标;插值计算模块根据所述全景视频图像中的坐标提取视场画面图像像素点所需要的插值点的值进行插值计算,生成视场画面图像。

所述坐标转换模块包括旋转矩阵计算器、直角坐标计算器和图像坐标生成器:旋转矩阵计算器根据所述当前视角姿态参数计算旋转矩阵;直角坐标计算器根据所述视场画面的分辨率将所述视场画面的坐标转换为空间直角坐标;图像坐标生成器根据所述空间直角坐标和所述旋转矩阵计算旋转后的空间直角坐标,并根据所述旋转后的空间直角坐标和所述全景视频图像的格式计算所述视场画面图像中每个像素点对应的在所述全景视频图像中的坐标。

所述旋转矩阵计算器或直角坐标计算器或图像坐标生成器由硬件电路实现。

所述当前视角姿态参数是四元数、欧拉角或旋转矩阵。

所述全景视频图像的格式是球形全景和立方体全景。

所述插值计算模块包括数据提取器和插值运算器:所述数据提取器根据所述坐标转换模块计算出的全景视频图像的坐标提取视场画面图像像素点所需要的插值点的值;所述插值运算器根据所述数据提取器提取的插值点的值进行插值计算,以生成视场画面图像。

所述数据提取器或插值运算器由硬件电路实现。

所述插值运算器包括双线性插值计算器或双三次插值计算器,用于根据所述数据提取器提取的插值点的值进行双线性或双三次插值计算。

本发明还提供一种全景变换装置,采用如权利要求7至14任一项所述的视场画面图像生成装置完成全景变换。

所述全景变换装置输出的视场画面图像直接在显示设备上显示。

本发明的有益效果在于,提供了一种全新的视场画面图像生成方法,根据当前视角姿态参数和全景视频图像的格式计算相应的坐标信息,并根据所述坐标信息和全景视频图像的数据信息进行插值计算,以生成视场画面图像。不需要现有技术中的三维建模、纹理化和光栅化等处理,极大程度降低了处理器运算的负荷及功耗,同时也可以节省带宽资源。

同时,本发明还提供的视场画面图像生成装置,不需要三维建模和划分网格,直接使用硬件电路对每个像素点进行坐标转换、插值计算,在保证低功耗的同时能实现高图像质量和低显示延迟。同时由于硬件实现的视场画面图像生成装置不依赖于gpu算法库,可独立实现多种效果更好的插值算法,提供更高质量的画面效果。另外,硬件实现的视场画面图像生成装置能够直接将视场画面图像输出到显示设备,省去了一次读存储和一次写存储的过程,能够有效节省带宽资源和降低显示延迟。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是现有技术的全景变换流程框图;

图2是本发明一实施例的视场画面图像生成方法200的流程框图;

图3是本发明一实施例的坐标转换方法300的流程框图;

图4是本发明一实施例的视场坐标和空间直角坐标转换示意图;

图5是本发明一实施例的视场画面图像生成装置500的框图;

图6是本发明一实施例的坐标转换模块600的电路框图;

图7是本发明一实施例的插值计算模块700的电路框图;

图8是本发明一实施例的全景变换装置800的框图;

具体实施方式

现结合附图,对本发明的较佳实施例作详细说明。

如图2所示,是本发明一实施例的视场画面图像生成方法200的流程框图。步骤201首先接收视场画面的分辨率、全景视频图像和当前视角姿态参数,并根据视场画面的分辨率、当前视角姿态参数和全景视频图像的格式,计算视场画面图像中每个像素点所对应的在全景视频图像中的坐标;其中,所述全景视频图像可包括全景视频图像的数据信息和格式。在具体实施方式中,视场画面的分辨率可以是视场画面屏幕的硬件属性,可直接读取该固定分辨率值。步骤203根据步骤201计算出的全景视频图像中的坐标提取视场画面图像像素点所需要的插值点的值进行插值计算,以生成视场画面图像。在具体实施方式中,可插值计算出所述像素点的灰度值,以生成视场画面图像。本发明的视场画面图像生成方法在计算时不需要三维建模、纹理化和光栅化等处理,而利用坐标转换方法将视场画面的像素点一一对应到全景视频图像的坐标,并使用插值方式计算出视场画面图像,极大程度降低了处理器运算的负荷及功耗,同时也可以节省带宽资源。

需要说明的是,本专利中的视场画面图像指的是:在当前姿态下,用户通过vr屏幕所看见的全景画面图像。类似的也有命名为对应视点的全景视频、显示画面、显示屏等。

在一实施方式中,可采用如图3所示的坐标转换算法。首先,步骤301根据视场画面的分辨率将视场画面坐标转换为空间直角坐标,所述空间直角坐标可以是在人头没有转动,正对视场画面图像的坐标原点情况下的,以人眼为中心的坐标。在具体实施方式中,视场画面的坐标可以是视场画面平面的坐标。步骤303根据接收的当前视角姿态参数计算旋转矩阵。步骤305根据所述空间直角坐标和所述旋转矩阵计算旋转后的空间直角坐标,即人头转动之后的,以人眼为中心的空间直角坐标。步骤307根据旋转后的空间直角坐标和全景视频图像的格式计算视场画面图像中每个像素点对应的在全景视频图像中的坐标。

在一实施方式中,当前视角姿态参数可以是四元数、欧拉角或者直接是旋转矩阵。在具体实施方式中,如果当前视角姿态参数是旋转矩阵,则不需要再重新计算旋转矩阵,可直接用于后续计算。

在一实施方式中,全景视频图像的格式可以是球形全景和立方体全景。如果输入的全景视频图像的格式为菱形、圆柱或180度球形等其他格式时,只需在坐标转换方法中加入对应的坐标转换公式即可将本发明的视场画面图像生成方法用于新的全景类型。

在一实施方式中,为了得到更高质量的画面效果,根据所述全景视频图像中的坐标提取视场画面图像像素点所需要的插值点的值进行插值计算时,可采用不同的插值算法。在具体实施方式中,可采用双线性插值算法或者双三次插值算法。

图4是本发明一实施例的视场画面坐标和空间直角坐标转换示意图。用户主观视角的视场画面中,即视场画面平面的左上角为(0,0)起始像素点,坐标(i,j)表示第i行j列的像素点,设视场图像宽高均为m个像素,则右下角的像素点坐标为(m-1,m-1)。坐标转换模块将计算出(i,j)所对应的全景视频图像的(u,v)坐标点。

首先,根据视场画面的分辨率将视场画面坐标转换为以人眼为中心的空间直角坐标,所述空间直角坐标是在人头没有转动,正对坐标原点情况下的坐标。设水平和垂直的视场角(fov,fieldofview)均为θ。则视场画面图像中的像素点(i,j)的空间直角坐标(x,y,z)可为:

输入的当前视角姿态参数可为四元数:q=q0+i·q1+j·q2+k·q3,则旋转矩阵r为:

则旋转后的空间直角坐标为(x’,y’,z’):

根据旋转后的空间直角坐标(x’,y’,z’)计算在全景视频图像中的坐标(u,v)。目前主流的全景视频图像的格式主要为球形全景和立方体全景。球型全景就是把场景设置为一个球体空间,将球形的经度和纬度坐标,对应到全景视频图像的水平和垂直坐标来进行记录。立方体全景把场景设置为是立方体空间,立方体全景输出的是前后左右上下的六个面的图像。

对球形全景的计算方法可为:

设输入的球形全景视频高为h个像素,宽为w个像素,左上角为(0,0)起始像素点,坐标(u,v)表示第u行v列的点,右下角的像素点坐标为(h-1,w-1)。旋转后的空间直角坐标(x’,y’,z’)对应的球面经度α,纬度β的值为:

其中atan()返回-π/2~π/2范围,atan2()返回-π~π范围。对应球形全景视频中的坐标(u,v)为:

对立方体全景的计算方法可为:

输入的立方体全景视频图片分割为前后左右上下的六个宽高均为n像素的平面图片,每个平面均有自己的坐标系。对于每一个平面,左上角为(0,0)起始像素点,坐标(u,v)表示第u行v列的像素点,则右下角的像素点坐标为(n-1,n-1)。对应立方体全景视频坐标(u,v)为:

经坐标转换处理后,得到(u,v)坐标后,根据该坐标提取视场画面图像像素点所需要的插值点的值进行插值计算。对于视频源为菱形、圆柱或180度球形等其他格式全景视频时,只需在坐标转换中加入对应的坐标转换公式即可。

根据坐标(u,v)提取视场画面图像像素点所需要的插值点的值进行插值计算,得到视场画面图像的像素点值。由于视场画面图像生成方法不依赖于gpu的算法库,可根据应用需求选择如双线性插值或双三次插值等多种不同的插值算法。

对于双线性插值,可令:

k=floor(u)l=floor(v)

(k,l)为(u,v)向下取整的坐标值,可得到最终输出的灰度值i(i,j)可为

i(i,j)=(v-l)·[(u-k)·i(k,l+1)+(1+k-u)·i(k,l+1)]+(1+l-v)·[(u-k)·i(k,l)+(1+k-u)·i(k,l)]

对于rgb图像,可对三个通道分别进行插值计算,可得到对应的rgb灰度值。计算出视场画面图像的每一个像素点的灰度值后,即可生成视场画面图像。

图5是本发明一实施例的视场画面图像生成装置500的框图。坐标转换模块501根据视场画面的分辨率、当前视角姿态参数和全景视频图像的格式计算视场画面图像中每个像素点所对应的在全景视频图像中的坐标;所述全景视频图像可包括全景视屏图像的数据信息和格式。在具体实施方式中,视场画面的分辨率可以是视场画面屏幕的硬件属性,可直接读取该固定分辨率值。插值计算模块503根据坐标转换模块501计算出的坐标提取视场画面图像像素点所需要的插值点的值进行插值计算,以生成视场画面图像。在具体实施方式中,可插值计算出所述像素点的灰度值,以生成视场画面图像。本发明的视场画面图像生成装置采用硬件电路实现,不需要三维建模和划分网格,直接使用硬件电路对每个像素点进行坐标转换、插值计算,在保证低功耗的同时能实现高图像质量和低显示延迟的效果。同时由于视场画面图像生成装置不依赖于gpu算法库,可独立实现多种效果更好的插值算法,提供更高质量的画面效果。视场画面图像生成装置能够直接将图像输出到显示设备,省去了一次读存储和一次写存储的过程,能够有效节省带宽资源和降低显示延迟。

在一实施方式中,如图6所示,坐标转换模块可包括旋转矩阵计算器601、直角坐标计算器603和图像坐标生成器605。

旋转矩阵计算器601根据当前视角姿态参数计算出旋转矩阵。直角坐标计算器603首先根据所述视场画面的分辨率将视场画面图像坐标转换为空间直角坐标,所述空间直角坐标可以是在人头没有转动,正对坐标原点情况下的,以人眼为中心的坐标。图像坐标生成器605根据旋转矩阵计算器601计算出的旋转矩阵和直角坐标计算器603计算出的空间直角坐标计算旋转后的空间直角坐标,即人头转动之后的,以人眼为中心的空间直角坐标,再根据旋转后的空间直角坐标和全景视频图像的格式计算视场画面图像中每个像素点对应的在全景视频图像中的坐标。

在具体实施方式中,旋转矩阵计算器601、直角坐标计算器603和图像坐标生成器605可根据算法由硬件电路直接实现。直接使用硬件电路对每个像素点进行坐标转换,在保证低功耗的同时能实现高图像质量和低显示延迟的效果。

在一实施方式中,当前视角姿态参数可以是通过惯性测量器件测得的四元数或欧拉角,也可以直接是旋转矩阵。在具体实施方式中,当接收的当前视角姿态参数是旋转矩阵时,则不需要重复计算旋转矩阵,可直接用于后续计算。

在一实施方式中,全景视频图像的格式可以是球形全景和立方体全景。如果输入的全景视频图像的格式为菱形、圆柱或180度球形等其他格式时,只需在坐标转换模块中加入对应的坐标转换公式即可将本发明的视场画面图像生成装置用于新的全景类型。

在一实施方式中,如图7所示,插值计算模块可包括数据提取器701和插值运算器703。数据提取器701根据坐标转换模块计算出的坐标信息在全景视频图像中提取视场画面图像像素点所需要的插值点的值;插值运算器703根据所述插值点的值进行插值计算得到视场画面图像。

在具体实施方式中,数据提取器701和插值运算器703可根据算法由硬件电路直接实现。直接使用硬件电路进行插值计算,在保证低功耗的同时能实现高图像质量和低显示延迟的效果。同时,由于硬件电路计算不依赖于gpu算法库,可独立实现多种效果更好的插值算法,提供更高质量的画面效果。另外,使用硬件设计的插值计算模块能够直接将图像输出到显示设备,省去了一次读存储和一次写存储的过程,能够有效节省带宽资源和降低显示延迟。

在一实施方式中,为了得到更高质量的画面效果,插值运算器703可采用不同的插值算法进行插值计算,以生成视场画面图像。在具体实施方式中,插值运算器可以是双线性插值计算器或者双三次插值计算器。

图8是本发明一实施例的全景变换装置800框图,其采用本发明的视场画面图像生成装置完成视场画面的生成,包括惯性测量器801、视频解码器803、存储器805、视场画面图像生成装置807。

全景视频源通过视频解码器803处理之后得到全景视频图像的格式及数据信息,并保存至存储器805中;惯性测量器801测得当前视角姿态参数,并将所述姿态参数保存至存储器805中;视场画面图像生成装置807中的坐标转换模块读取存储器805中的当前视角姿态参数和图像格式信息,并读取视场画面的分辨率,由旋转矩阵计算器根据当前视角姿态参数来计算旋转矩阵,由直角坐标计算器根据视场画面的分辨率将视场画面的坐标转换为以人眼为中心的空间直角坐标,所述空间直角坐标是在人头没有转动,正对坐标原点情况下的坐标;再由图像坐标生成器根据空间直角坐标和旋转矩阵计算旋转后的空间直角坐标,并根据旋转后的空间直角坐标和全景视频图像的格式计算视场画面图像中每个像素点对应的在所述全景视频图像中的坐标;视场画面图像生成装置807中的插值计算模块根据坐标转换模块计算出的坐标信息,由数据提取器在存储器中提取视场画面图像像素点所需要的插值点的值,再由插值运算器进行插值计算,输出视场画面图像像素点的像素值,最终输出视场画面图像。采用本发明的视场画面图像生成装置进行全景变换,在保证低功耗的同时能实现高图像质量和低显示延迟,可提供更高质量的画面效果。同时,由于视场画面图像生成装置由硬件电路实现,使得全景变换装置800生成的视场画面图像可不写入存储器,直接通过显示设备显示,省去了一次读存储和一次写存储的过程,能够有效节省带宽资源和降低显示延迟。

应当理解的是,以上实施例仅用以说明本发明的技术方案,而非对其限制,对本领域技术人员来说,可以对上述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而所有这些修改和替换,都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1