[发明专利]一种全景直播的渲染实现方法有效
申请号: | 201611146565.6 | 申请日: | 2016-12-13 |
公开(公告)号: | CN106604087B | 公开(公告)日: | 2019-09-10 |
发明(设计)人: | 陈立勇;陈爱青;黄立瑶 | 申请(专利权)人: | 杭州映墨科技有限公司 |
主分类号: | H04N21/414 | 分类号: | H04N21/414;H04N21/44;G06T15/00 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 林超 |
地址: | 310000 浙江省杭州市余杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 全景 直播 渲染 实现 方法 | ||
1.一种全景直播的渲染实现方法,其特征在于针对已获得的全景拍摄视频数据采用以下步骤进行处理:
1)获取当前手机屏幕的渲染像素,并控制手机屏幕上显示的渲染区域大小和位置;
2)创建一个球体模型,球体模型用于后续步骤的纹理贴图;
3)实时获取手机内部陀螺仪的旋转矩阵数据,用获得的旋转矩阵转换生成一个4×4的新矩阵,新矩阵作为OpenGL中的ModelView矩阵,以使得手机上渲染的图像能实时响应手机位置状态的改变;
4)全景拍摄视频的YUV数据通过计算转换成RGB数据,将RGB数据传到手机的GPU中,由GPU进行渲染,将RGB数据作为纹理贴到球体模型上,虚拟摄像机置于球体的中心,从虚拟摄像机视角进行全景播放,从而实现全景直播。
2.根据权利要求1所述的一种全景直播的渲染实现方法,其特征在于:所述步骤1)具体为通过手机中软件系统的API获得原始数据,计算后获得屏幕的渲染像素。
3.根据权利要求1所述的一种全景直播的渲染实现方法,其特征在于:所述步骤2)具体为:创建一个球体模型用来做纹理贴图,当进行纹理贴图时需要将纹理贴到球体上,这时摄像机的位置在球体的中心,从而实现全景播放的效果。
4.根据权利要求1所述的一种全景直播的渲染实现方法,其特征在于:所述步骤3)具体为:用CMRotationMatrix的数据生成一个新的矩阵b,矩阵b用以下形式表示:
m11,m21,m31,0,
m12,m22,m32,0,
m13,m23,m33,0,
0,0,0,1
其中,m11,m12,m13表示旋转矩阵CMRotationMatrix中X轴的三个数据,m21,m22,m23表示旋转矩阵CMRotationMatrix中Y轴的三个数据;m31,m32,m33表示旋转矩阵CMRotationMatrix中Z轴的三个数据;
X轴是沿平行于屏幕的水平方向,Y轴是沿平行于屏幕的竖直方向,Z轴是沿人眼视线方向,屏幕垂直于人眼视线方向;
对生成的矩阵b按照以下方式进行处理:先将矩阵b绕x轴根据右手定则旋转负90度得到矩阵B,接着将矩阵b绕z轴根据右手定则旋转正90度的矩阵A,然后将矩阵A和矩阵B相乘得到矩阵modelViewMatrix,以得到的矩阵modelViewMatrix作为OpenGL中的ModelView矩阵,利用ModelView矩阵和Projection Matrix矩阵相乘得到全新矩阵,将全新矩阵传到Vertex Shader中,并将全新矩阵数据与顶点数据相乘后最后传到GPU中,以使得手机上渲染的图像能实时响应手机位置状态的变化。
5.根据权利要求1所述的一种全景直播的渲染实现方法,其特征在于:所述步骤4)具体为:将最终获取到的数据通过OpenGL中的Shading Language传到GPU中,将YUV数据通过计算得到RGB数据,最后由GPU进行渲染显示画面。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州映墨科技有限公司,未经杭州映墨科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611146565.6/1.html,转载请声明来源钻瓜专利网。