【技术实现步骤摘要】
一种基于区域近似映射的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]现有的硬件渲染方案主要有两种,一种对输出帧坐标进行映射,找到输入帧的对应像素点,对输入帧的像素点进行传输,重构整体输出帧。这种方式带来的问题除了复杂的映射关系外,由于输入帧与输出帧的映射关系,使图像的命中率降低,影响渲染的传输效率,降低帧
【技术保护点】
【技术特征摘要】
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·
dφ
‑
sinφ0·
sinθ0·
dθ
ꢀꢀꢀ
(2)y=sinθ≈sinθ0+cosθ0·
dθ
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)z=cosφ
·
cosθ≈cosφ0·
cosθ0‑
sinφ0·
cosθ0·
dφ
‑
cosφ0·
sinθ0·
dθ
ꢀꢀꢀ
(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
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。