360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

时间:2024-03-27 19:25:10

Equi-Rectangular Projection (ERP)

投影方式

等距柱状投影是目前应用最为广泛的一种VR视频投影方式,最初是公元前100 年古希腊航海家Marînos o Týrios 为了绘制地图而发明的。这种投影方式把地球的经线映射成间距相等的垂直线,把地球的纬线映射成间距相等的水平线,则可生成一幅横纵比为2:1的地图。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

投影公式

在全景图像及视频中,等距柱状投影的实现思路是用相同数量的采样点保存每条纬线上的数据,从而得到对应的二维平面上的矩形视频。如上图为该投影格式的展开示意图,在归一化后的平面坐标系上,u、v 的取值可以是[0, 1]内的任意值。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

其中,经纬度坐标系与三维笛卡尔坐标系转换公式如下:

(1){X=cosθcosϕY=sinθZ=cosθsinϕ

该面上某一点从平面点转换到三维空间中的对应点首先使用公式(2)对采样点(m, n)进行一个位移变换。

(2){u=m+0.5W,mϵ[0,W)v=n+0.5H,nϵ[0,H)

再使用平面点坐标(u, v)通过下列得出球面上的经纬度点(θ,Φ)。

(3){ϕ=2π(u0.5)θ=2π(0.5v)

然后再利用公式(1)即可计算得出三维点坐标(X, Y, Z)。

反过来,从三维空间点转换为二维平面点,对于三维空间内某一点(X, Y, Z), 可利用公式(4)得出经纬度值(θ,Φ),再通过公式(3)得出平面点(u, v)即可。

(4){ϕ=arctan(ZX)θ=arcsin(YX2+Y2+Z2)

投影效果

下图为ERP投影的两幅实际效果图,其平面图像横纵比为2:1。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

显然,这种投影方式映射关系简单,即使是投影后的二维平面视频也很直观,方便用户观察。但对球形视频每条纬线上都用相同数量的采样点,导致越靠近两极的纬线其冗余采样点数量就越多。例如在两极处,本来只需要一个采样点,但却用了和赤道处同样多的采样点,冗余数据量最大。这种方法增大了视频所占空间,给视频传输过程带来很大问题;像素密度分布极度不均匀的同时还引入了相当严重的图像拉伸,导致了非常高的失真。因为最终视频画质是由原始素材画质和拉伸后视频画质共同决定的,所以采用这种方法得到的视频画质较差。

Equal-Area Projection (EAP)

投影方式

Equal-area Projection(EAP)指的是Cylindrical Equal-area Projection,是一系列的圆柱等面积投影,将经线映射为等间隔的垂直线,纬线映射为水平线(非等间距)。可以想象为,将球面映射到一个圆柱面上并将圆柱面展开。Cylindrical Equal-area Projection,由赤道向两极水平拉伸不断增大,在Standard parallels标准纬线处是无拉伸失真的。不同Cylindrical Equal-area Projection的区别就是水平轴与垂直轴的比例(拉伸因子),这个比例决定了Cylindrical Equal-area Projection的Standard parallels。

投影公式

与ERP相同,EAP只有一个面,EAP的面索引始终设为0。在uv平面上,u和v的范围均为[0, 1]。
对于2D到3D的坐标转换,给定采样位置(m, n),我们可以首先用公式(2)计算(u, v)。 然后,球体上的经度和纬度(φ, θ)可以从(u, v)计算得到:

(5){θ=arcsin(1.02v)ϕ=2π(u0.5)

最后,使用(1)公式可以计算出三维笛卡尔坐标系下的坐标(X, Y, Z)。

对于3D到2D坐标转换,给定(X, Y, Z),使用公式(1)求解(Φ,θ)。然后,通过求解方程(5)来计算(u,v)。 最后,通过求解方程(2),就可以得到采样点(m, n)的坐标。

投影效果

在360视频中,连续投影主要为ERP和EAP,很明显,他们两者主要区别于平面坐标y与球面坐标φ的映射关系。ERP的纬线被投影为等间隔的水平线,而EAP不是,因为EAP保证了投影的等面积。但两者都存在拉伸问题,引入了较大的冗余。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

在360视频中采用的EAP,即Lambert cylindrical equal-area projection,是一种Cylindrical Equal-area Projection圆柱等面积投影,这个投影在赤道处无失真,即赤道为标准纬线,失真向两极迅速递增。像任何圆柱投影一样,远离赤道拉伸越严重。两极将一点拉伸为一条线,产生了无限的失真。

Adjusted Equal-area Projection (AEP)

投影方式

Adjusted EAP是在JVET-G0051会议上制定的针对EAP投影方式的改进,在360Lib-4.0版本中直接替代了原有的EAP方式。事实上,EAP是AEP的在投影参数β=1时的一种特定情形。

投影公式

在EAP中,使用如下的公式进行3D到2D的坐标转换:

(6){u=ϕ2π+0.5v=0.5sinθ+0.5

而在AEP中,使用如下公式进行3D到2D的坐标转换:

(7){u=ϕ2π+0.5v=0.5sin(βθ)sin(0.5πβ)+0.5

可以看出,EAP是AEP的在参数β=1时的一种特殊情形,而在JVET-G0051会议提案中,建议将β设置为1/1.4,来得到最优的PSNR评分。

投影效果

下图是AEP在不同β值下的 E2E PSNR-NN 评分。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

在下图中,通过对比左图(a)与右图(b),可以看出在北半球的区域(房屋屋顶),AEP(β=1/1.4)的图形扭曲程度远远小于EAP,进一步提高了EAP的投影质量。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

Equatorial Cylindrical Projection(ECP)

这部分是由实验室老肖撰写的。

投影方式

赤道圆柱投影(ECP)和等距圆柱投影(ERP)的投影方式相同,同样是将地球的经线映射成间距相等的垂直线,把地球的纬线映射成间距相等的水平线,详情可见ERP投影方式。在ECP的投影方式中,将投影获得的ERP二维平面划分为6个面积相等的区域,划分及其效果图如下图所示:

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

默认情况下,下图中显示的3x2布局格式为ECP的布局方式。编号为0和1的投影面分别跨度30纬度和360个经度值360经度,编号为2,3,4,5的投影面分别跨度120纬度和90经度。

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

投影公式

同ERP一样,对于从二维平面采样点(m,n)转换为三维空间点(X, Y, Z), (φ, θ)可由点(m,n)通过公式(2)与(3)得到, 然后再利用公式(1)即可计算得出三维点坐标(X, Y, Z)。

反向从三维空间点转换为二维平面点,对于三维空间内某一点(X, Y, Z), 可利用公式(4)得出经纬度值(θ,Φ), 再由公式(2)和(3)得出平面点(u, v)和(m,n)即可。

投影效果

赤道圆柱投影方式的效果图如下图所示:

360lib投影格式介绍(一) - 伪圆柱投影(ERP / EAP / AEP / ECP)

ECP的3x2框架中编号为2,3,4,5的投影面内的图像展示效果较好,他们显示的是球面赤道附近的曲面区域,若球面赤道附近的曲面为重要的图像区域,则使用ECP的投影方式十分合适,但是在编号为0,1的投影平面内,ECP投影将ERP两极区域的平面进行了压缩与拉伸,使得平面分布不均匀,并且上下两个片面间存在一条不连续的直线。

参考

原文戳这里,转载请声明。