有没有将全景图转换为小行星的直接公式(立体投影)

Posted

技术标签:

【中文标题】有没有将全景图转换为小行星的直接公式(立体投影)【英文标题】:Is there any direct formula for converting panorama to Tiny planet(StereoGraphic projection) 【发布时间】:2014-11-28 13:07:48 【问题描述】:

我正在尝试使用 Opencv 将普通全景图转换为立体投影。 生成的图像就是此链接中显示的图像。

http://www.photographymad.com/pages/view/little-planet-photos-5-simple-steps-to-making-panorama-worlds

在创建这个的步骤中,有一个步骤是在photoshop中从矩形转换为极坐标。可以解释一下d转换背后的逻辑

【问题讨论】:

请出示您的代码 我正在尝试使用opencv中的一些映射公式来编辑每个像素。 【参考方案1】:

是的,有。 http://mathworld.wolfram.com/StereographicProjection.html

查看此 wiki 链接:https://en.wikipedia.org/wiki/Equirectangular_projection

将您的 360 全景图想象成球体的等角投影。也就是说,x 对应于经度,范围从左侧的 -180 到中心的 0,然后到右侧的 180 度。 y对应的纬度范围从顶部-90度到中部0度到底部90度。

按照第一个链接中的逆映射公式为每个像素构建一个 map_x、map_y,然后使用 cv2.remap 函数获取图像的立体投影,也就是一个小行星。

由于上面提到的经纬度范围,如果您的图像具有宽度 = 2 * 高度,结果会更好。

我从这篇很棒的博文http://www.semifluid.com/2014/04/20/equirectangular-to-stereographic-projections-little-planets-in-matlab/中学到了所有这些知识

【讨论】:

以上是关于有没有将全景图转换为小行星的直接公式(立体投影)的主要内容,如果未能解决你的问题,请参考以下文章

全景图转局部平面视图原理详解

极地立体投影中的Python点密度图

arcgis里的曲率为啥计算出来全部为-1

怎么制作全景主题?

使用全景创建 360° x 180° 球面投影

将 2:1 equirectangular 全景图转换为立方体贴图