全景图转水晶球视图原理详解

懵懂的女人 提交于 2020-02-10 04:54:11

前一篇博客中讲到怎么由全景图转到小行星,这次换一种投影方式说下由全景图转到水晶球模式。

首先,还是要有一副全景图,风景秀丽是不是:

 

1. 将其按照经纬展开法,贴到单位球面上。图像第一行聚集在一起成为球体的北极点;图像的最后一行像素聚集在一起成为球的南极点。

2. 设定投影平面为与南极点相切的平面,观察者视点可以视为在无穷远处,我们要做的就是讲下半球面垂直投影到该平面上。

3. 根据球面坐标(theta, fi),根据球面坐标theta值可以判断像素点是不是在需要投影的南半球面,而根据fi值可以解算出球面坐标系下的(x,y)坐标。

4. 将符合南半球面的像素点(x,y)坐标转换到具体的图像坐标系,得到图像坐标(u,v)。

当然,具体球面坐标系三个轴的朝向可以根据自己的习惯设定,符合右手坐标系准则即可。

 

同理,当你转动球体的时候,球面不同位置半球的像素点将会投影到图像平面上,从而实现仿佛在转动水晶球的效果。

 下图是不同视角下观看到的水晶球效果图:

 

 

我向右拨动水晶球,gif效果如下:

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!