[发明专利]一种虚拟相机控制方法有效
申请号: | 202010854276.1 | 申请日: | 2020-08-24 |
公开(公告)号: | CN112087575B | 公开(公告)日: | 2022-03-08 |
发明(设计)人: | 邹朝军 | 申请(专利权)人: | 广州启量信息科技有限公司 |
主分类号: | H04N5/232 | 分类号: | H04N5/232 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郭浩辉;麦小婵 |
地址: | 510000 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 相机 控制 方法 | ||
为了解决基于现有全景漫游不顺畅平滑,易导致体验者眩晕的问题,本公开提供了一种虚拟相机控制方法及装置,使全景漫游更顺畅平滑,体验者在体验全景漫游时不易晕眩。本公开一种虚拟相机控制方法,包括:获取当前相机参数;获取目标相机参数;根据所述当前相机参数、所述目标相机参数和预设的半衰期,计算目标帧相机参数;根据所述目标帧相机参数调节虚拟相机的水平朝向、竖直朝向和视角。本申请还公开了相应的虚拟相机调节装置,本公开的装置和方法,基于预设的半衰期,确定目标帧相机参数,并基于目标帧相机参数调节虚拟相机的水平朝向、竖直朝向和视角,使得全景漫游的相机旋转和视角调节更顺畅平滑。
技术领域
本公开涉及计算机领域,尤其涉及一种虚拟相机控制方法及装置。
背景技术
目前全景漫游技术应用于各行各业,用于展示现场效果,使人有一种身临其境的感觉。在Web端或者嵌入Webview网页的应用中,大多基于Three.js库,构建全景漫游体验场景。而Three.js库是基于WebGL技术,WebGL底层使用OpenGL图形API。
通常,会事先使用专业的全景拍摄设备拍摄出场景中若干张全景图片,全景图片的长宽比一般为2:1。使用HTML、CSS、JavaScript等web技术,结合Three.js库,在世界空间中构建一个虚拟的场景。对于每一张全景图片建立一个正六面体mesh或者球体mesh,将拍摄好的全景图片作为纹理贴图映射到mesh上,需要设置纹理贴图在mesh的内部,而不是外部。同时,在mesh内部构建一个虚拟相机,此虚拟相机一般为透视相机。一般虚拟相机会固定放置在几何体mesh的中心,通过鼠标或触屏控制相机的旋转和视角达到漫游的效果。
在全景漫游的操作手感上,对于虚拟相机的位置、旋转、视角等参数的控制,一般会采用第一人称视角的方式进行。而目前的全景漫游技术,对于虚拟相机的控制手感都不是很平滑顺畅,会有一定的僵硬感觉。例如在用鼠标在全景中进行旋转时,有些会直接严格控制虚拟相机的朝向角度跟随鼠标的移动;有些用鼠标滚轮缩放全景时,直接将缩放系数作用于虚拟相机的视角,会导致虚拟相机的视角缩放看起来很不自然。以上两个方面的虚拟相机控制手段都会让全景漫游不顺畅平滑,导致体验者会晕眩的问题。
发明内容
为了解决上述技术问题中的至少一个,本公开提供了一种虚拟相机控制方法及装置,使全景漫游更顺畅平滑,体验者在体验全景漫游时不易晕眩。
本公开的一方面,一种虚拟相机控制方法,包括:
获取当前相机参数,所述当前相机参数包括虚拟相机的当前水平朝向角度、当前竖直朝向角度和当前视角;
获取目标相机参数,所述目标相机参数包括虚拟相机的目标水平朝向角度、目标竖直朝向角度和目标视角;
根据所述当前相机参数、所述目标相机参数和预设的半衰期,计算目标帧相机参数,所述目标帧相机参数包括虚拟相机的目标帧水平朝向角度、目标帧竖直朝向角度和目标帧视角;
根据所述目标帧相机参数调节虚拟相机的水平朝向、竖直朝向和视角。
可选的,所述获取目标相机参数包括:
获取相机变化参数,所述相机变化参数包括虚拟相机的水平方向变化目标、竖直方向变化目标和视角变化目标;
根据所述当前相机参数和所述相机变化参数,计算获得目标相机参数。
可选的,所述获取相机变化参数,包括:
根据对所述虚拟相机的,获取虚拟相机的水平方向变化目标和竖直方向变化目标;
获取对所述虚拟相机的,获取虚拟相机的视角变化目标。
可选的,所述根据所述当前相机参数、所述目标相机参数和预设的半衰期,计算目标帧相机参数,包括:
根据如下函数计算目标帧相机参数:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州启量信息科技有限公司,未经广州启量信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010854276.1/2.html,转载请声明来源钻瓜专利网。