将全景图转换为 VR(等距柱状图或立方体贴图)
Convert panorama to VR (equirectangular or cubemap)
我的图像是 360 度全景照片 (example). I'd like to convert it to a format that fits in VR - either equirectangular (example) 或立方体贴图。
我见过的唯一解决方案是 http://ggnome.com/pano2vr,但它似乎对我不起作用。我可以采取其他方法吗?
我继续写了一个 C++ 应用程序,(希望)做你想做的事 posted it on GitHub。
给定圆柱 x^2 + y^2 = 1 刻在一个 2x2x2 立方体中
以原点为中心,我们可以将圆柱形全景图投影到相应的
立方体的四个面如下。
对于输出图像中的每个像素,我们从立方体的中心 (0,0,0) 投射一条射线
通过立方体其中一个面上的对应点并确定
射线与圆柱相交。然后我们将圆柱上的这个点映射到相应的
输入图像中的点并(双线性)在该点对输入图像进行采样。
生成的像素颜色分配给当前输出像素。
您可以在 associated docs 中阅读血淋淋的详细信息。
以下是您建议的输入和输出图像的一些缩略图:
我的图像是 360 度全景照片 (example). I'd like to convert it to a format that fits in VR - either equirectangular (example) 或立方体贴图。
我见过的唯一解决方案是 http://ggnome.com/pano2vr,但它似乎对我不起作用。我可以采取其他方法吗?
我继续写了一个 C++ 应用程序,(希望)做你想做的事 posted it on GitHub。
给定圆柱 x^2 + y^2 = 1 刻在一个 2x2x2 立方体中 以原点为中心,我们可以将圆柱形全景图投影到相应的 立方体的四个面如下。 对于输出图像中的每个像素,我们从立方体的中心 (0,0,0) 投射一条射线 通过立方体其中一个面上的对应点并确定 射线与圆柱相交。然后我们将圆柱上的这个点映射到相应的 输入图像中的点并(双线性)在该点对输入图像进行采样。 生成的像素颜色分配给当前输出像素。
您可以在 associated docs 中阅读血淋淋的详细信息。
以下是您建议的输入和输出图像的一些缩略图: