当前位置: 首页 > 专利查询>南京大学专利>正文

一种基于区域近似映射的360度视频硬件渲染方法技术

技术编号:37770076 阅读:11 留言:0更新日期:2023-06-06 13:33
本发明专利技术提供了一种基于区域近似映射的360度视频硬件渲染方法,根据单帧图像空间上映射关系相似性,对输入帧按滑窗区域进行像素点的读取与映射关系的计算。通过将复杂的非线性映射关系简化为线性映射关系来简化映射计算,只需计算中心点的映射关系,滑窗区域内的其余像素点映射关系只需通过简单的移位和加法操作,即可完成滑窗区域内输入帧到输出帧的坐标映射。同时利用线性映射关系的逆运算,完成输入帧和输出帧多对多的映射关系,重构输出帧。基于输入帧和输出帧的映射方案,本发明专利技术通过对运算顺序的改变和输出帧的重排,减少输出访存的次数来减少访存的开销。次数来减少访存的开销。次数来减少访存的开销。

【技术实现步骤摘要】
一种基于区域近似映射的360度视频硬件渲染方法


[0001]本专利技术涉及一种基于区域近似映射的360度视频硬件渲染方法。

技术介绍

[0002]目前,VR(Virtual Reality)技术在医学、教育、航天等领域都有着重要的应用场景,与传统的视频渲染不同,360
°
视频需要根据实时头部运动参数对输入帧进行渲染,显示用户当前头部对应的场景。这种独有的操作需要消耗大量的硬件资源和计算周期,带来巨大的计算开销,超过整体过程的50%,且难以用硬件实现。
[0003]为了能让用户能有更好地身临其境地体验,360度视频的渲染、显示对视频的分辨率和帧率有着很高的要求,对于呈现的分辨率要求将超过4K,而输入帧的分辨率远远超过输出帧的分辨率,因此将带来更多的计算开销、访存开销和能耗。渲染720p 360
°
每秒30帧(FPS,Frames Per Second)的视频消耗将超过4W的功率,超过典型移动设备的热设计点(TDP,Th ermal Design Point)设备。同时由于360
°
视频的特点,输入帧和平面视频帧难以同时满足同时顺序读写,在具体的硬件实现过程中,也将造成访存的额外开销,带来更大的功耗开销。
[0004]现有的硬件渲染方案主要有两种,一种对输出帧坐标进行映射,找到输入帧的对应像素点,对输入帧的像素点进行传输,重构整体输出帧。这种方式带来的问题除了复杂的映射关系外,由于输入帧与输出帧的映射关系,使图像的命中率降低,影响渲染的传输效率,降低帧率。另一种直接顺序读取输入帧像素点,并映射到输出帧,同时传输像素点,完成输出帧的重构,这种方式将同样带来复杂的映射关系,同时带来更大的存储和写入访存开销。
[0005]现有的技术方案主要有以下两方面优化方式,首先第一点是减少需要映射的像素点,减少渲染过程所需的计算量。因此,目前的渲染方案中,利用输出帧边缘像素点映射到输出帧中,确定360度视频输入帧需要进行渲染操作的范围,该范围约占输入帧图像的30%

60%之间,减少了需要映射的像素点数量。此外,通过焦点渲染的算法,对用户视角焦点以外的区域进行模糊处理,减少需要渲染计算的像素点数量。
[0006]此外,还可以利用帧间图像的相关性,来减少某些帧的渲染计算,由于相邻的几帧图像的头部旋转的角度偏差比较小,相邻的输入帧图像映射具有很高的线性关系,因此,采用多帧图像只计算并保存其中一帧的映射关系,同时根据头部旋转角度的变化量计算帧图像映射关系的线性关系,来重构其他帧的输出帧图像,降低了多帧渲染计算的计算量。
[0007]而对于单帧的渲染计算,当前的方案为将映射过程的几个步骤进行流水线设计,基于GPU(graphics processing unit)的SIMD(Single Instruction Multiple Data)指令,对映射过程进行像素级并行渲染。

技术实现思路

[0008]专利技术目的:本专利技术所要解决的技术问题是针对现有技术的不足,提供一种基于区
域近似映射的360度视频硬件渲染方法,包括以下步骤:
[0009]步骤1,对360度视频输入帧图像进行滑窗操作,按当前的分辨率确定滑窗的大小,滑窗的步长为滑窗的大小,将滑窗区域内的输入帧图像二维坐标映射到输出帧坐标中,通过比较确定对应的输出帧范围;
[0010]步骤2,根据步骤1确定的输出帧范围,逆转第一部分过程,获得对应的输入帧坐标偏移值,通过阈值比较来获取输入帧和输出帧的映射关系;
[0011]步骤3,完成图像数据的读取与写回,重构完整的输出帧图像。
[0012]步骤1包括:
[0013]步骤1

1,将输入帧坐标相对于中心点的二维偏移(定义输入帧滑窗区域的中心点偏移坐标是(0,0),滑窗区域相对于中心点的二维偏移坐标就是将(

d/2,d/2)的范围内,d为滑窗区域的大小)坐标dx,dy映射到极坐标dφ,dθ,采用缩放矩阵I2P进行计算,所述I2P矩阵为对角矩阵,转换公式为:
[0014]dφ=dx*base_width/(2*pi),
[0015]dθ=dy*base_height/(pi),
[0016]将转换过程用矩阵来实现,得到:I2P=diag([base_width/(2*pi),base_height/pi,1]);
[0017]其中,base_width和base_height分别为输入帧的宽和长,pi是常数,pi=3.1415926;diag表示对角矩阵函数;
[0018]步骤1

2,极坐标映射到三维坐标,以滑窗对坐标进行映射;
[0019]步骤1

3,根据当前头部参数进行旋转操作,采用旋转矩阵ROT进行计算;
[0020]步骤1

4,将旋转后的三维矩阵映射到显示参数三维坐标域,利用映射矩阵TRANS进行计算,公式如下:
[0021][0022]其中,width和height分别为输出帧的宽度和高度,fov_h和fov_v分别为水平视场角和垂直视场角,该参数都是预先确定的,因此该矩阵TRANS也是一个固定的矩阵;
[0023]步骤1

5,将三维球面坐标映射到平面坐标,利用除法完成操作,获得输入帧中心点映射坐标;
[0024]步骤1

6,利用步骤1

1~步骤1

5,完成输入帧滑窗范围内四个角的映射,比较并获得输出帧范围。
[0025]步骤1

2中,采用如下公式将极坐标映射到三维坐标:
[0026]x=sinφ
·
cosθ≈sinφ0·
cosθ0+cosφ0·
cosθ0·


sinφ0·
sinθ0·

ꢀꢀ
(2)
[0027]y=sinθ≈sinθ0+cosθ0·

ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0028]z=cosφ
·
cosθ≈cosφ0·
cosθ0‑
sinφ0·
cosθ0·


cosφ0·
sinθ0·

ꢀꢀ
(4)
[0029]x,y,z为三维坐标,即输入帧为平面保存,但是反映的是空间中的三维图像,根据
对应的极坐标,可以推算出对应的三维坐标;
[0030]其中,φ和θ为输入帧对应的极坐标,φ0和θ0为对应输入帧区域的中心点坐标,dφ和dθ为矩形区域内相对于中心点极坐标的偏移;将公式(2)~(4)转换成矩阵形式,得到矩阵TL:
[0031][0032]步骤1...

【技术保护点】

【技术特征摘要】
1.一种基于区域近似映射的360度视频硬件渲染方法,其特征在于,包括以下步骤:步骤1,对360度视频输入帧图像进行滑窗操作,按当前的分辨率确定滑窗的大小,滑窗的步长为滑窗的大小,将滑窗区域内的输入帧图像二维坐标映射到输出帧坐标中,通过比较确定对应的输出帧范围;步骤2,根据步骤1确定的输出帧范围,逆转第一部分过程,获得对应的输入帧坐标偏移值,通过阈值比较来获取输入帧和输出帧的映射关系;步骤3,完成图像数据的读取与写回,重构完整的输出帧图像。2.根据权利要求1所述的方法,其特征在于,步骤1包括:步骤1

1,将输入帧坐标相对于中心点的二维偏移坐标dx,dy映射到极坐标dφ,dθ,采用缩放矩阵I2P进行计算,所述I2P矩阵为对角矩阵,转换公式为:dφ=dx*base_width/(2*pi),dθ=dy*base_height/(pi),将转换过程用矩阵来实现,得到:I2P=diag([base_width/(2*pi),base_height/pi,1]);其中,base_width和base_height分别为输入帧的宽和长,pi是常数;diag表示对角矩阵函数;步骤1

2,极坐标映射到三维坐标,以滑窗对坐标进行映射;步骤1

3,根据当前头部参数进行旋转操作,采用旋转矩阵ROT进行计算;步骤1

4,将旋转后的三维矩阵映射到显示参数三维坐标域,利用映射矩阵TRANS进行计算,公式如下:其中,width和height分别为输出帧的宽度和高度,fov_h和fov_v分别为水平视场角和垂直视场角;步骤1

5,将三维球面坐标映射到平面坐标,利用除法完成操作,获得输入帧中心点映射坐标;步骤1

6,利用步骤1

1~步骤1

5,完成输入帧滑窗范围内四个角的映射,比较并获得输出帧范围。3.根据权利要求2所述的方法,其特征在于,步骤1

2中,采用如下公式将极坐标映射到三维坐标:x=sinφ
·
cosθ≈sinφ0·
cosθ0+cosφ0·
cosθ0·


sinφ0·
sinθ0·

ꢀꢀꢀ
(2)y=sinθ≈sinθ0+cosθ0·

ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)z=cosφ
·
cosθ≈cosφ0·
cosθ0‑
sinφ0·
cosθ0·


cosφ0·
sinθ0·

ꢀꢀꢀ
(4)x,y,z为三维坐标,即输入帧为平面保存,反映的是空间中的三维图像,根据对应的极坐标,推算出对应的三维坐标;
其中,φ和θ为输入帧对应的极坐标,φ0和θ0为对应输入帧区域的中心点坐标,dφ和dθ为矩形区域内相对于中心点极坐标的偏移;将公式(2)~(4)转换成矩阵形式,得到矩阵TL:4.根据权利要求3所述的方法,其特征在于,步骤1

3中,所述旋转矩阵ROT如下所示:其中,yaw和pitch分别为头部朝向的偏航角和俯仰角。5.根据权利要求4所述的方法,其特征在于,步骤1

5中,采用如下公式将三维坐标映射到平面坐标:其中sx,sy,sz为三维球面坐标。6.根据权利要求5所述的方法,其特征在于,步骤1

6包括:在进行公式(2)~(4)的计算后,将步骤1

1~步骤1

4中的I2P、TL、ROT和TRANS四个3*3的矩阵进行卷积,得到矩阵T来实现步骤1

1~步骤1

4的坐标转换,同时将步骤1

5也融入矩阵T中,得到最终的输入帧到输出帧的映射,转换矩阵TR如下公式表示:其中,T
...

【专利技术属性】
技术研发人员:林军罗锦伟王中风
申请(专利权)人:南京大学
类型:发明
国别省市:

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

1