使用SphericalTransform进行变换和投影

SphericalTransform可在不同的投影之间转换图像,包括360度投影,并利用Blink GPU加速功能。这些视图预测可以分为两大类:

全画幅,例如Latlong,涵盖单个点周围的整个360世界,以及

部分框架,例如Rectilinear认为Nuke专为工作而设计。

SphericalTransform节点可用于通用Nuke对360素材进行操作,例如旋转,合成和跟踪。SphericalTransform允许您为所需的转换配置输入和输出投影。对于部分帧投影,将在屏幕上启用其他投影空间参数。 InputOutput标签以获取特定的相机参数,例如focal lengthsensor size , 等等。

使用旋转控件来调整InputOutput从单点治理Look位置两分From/ToPan/Tilt/Roll , 要么Full Rotation角度,可控制旋转顺序。

Output旋转也可以使用查看器内控制系统进行控制。按住Ctrl/Cmd+Alt然后左键单击并拖动以移动图像,设置平移和倾斜设置。加Shift锁定在单一尺寸的机芯中。在局部帧投影中,使用鼠标右键设置focal length,实质上是放大和缩小。

SphericalTransform可以在以下投影模式之间转换:

投影名称

描述

拉特隆

Latlong或等矩形投影是最常见的完整360帧投影。由于其简单性和广泛的用途,许多VR管道都将它们用于摄取和导出。

在latlong空间中工作可能会出现问题,这是由于其不熟悉的映射,许多压缩技术并未设计来处理的,以及对极点的低效率,极点上的许多像素代表输出中的单个像素。

立方体贴图

Cubemap投影是另一个完整的360度投影。六个面中的每个面基本上都是直线的,因此可以更熟悉地处理数据。面可以通过多种方式打包:

Image -所有脸部都放置在单个图像中,并根据Packing控制。默认是LL-Cross如示例所示。

Views -每个面孔都会在信息流中创建一个视图。该视图使用以下约定命名:

cubemap_<direction><axis>

哪里<direction>pos要么neg,对于正面和负面,以及<axis>xy , 要么z

Faces -每个人脸都放置在单独的图像流中,但是由于Nuke的限制,在此模式下只能有一个人脸输出。您可以使用Face控制。

在输入模式下,您将获得六个单独的输入,并根据它们代表的面孔进行标记。

直线型

Rectilinear投影是您最可能熟悉的局部框架,标准投影。

小费:  请记住,当您要去直线时,您只能覆盖框架的一部分(几乎达到180度)。

作为部分帧投影,这可以在InputOutput标签(取决于您是否将其选择为输入或输出投影)。这些控制相机参数,例如focal lengthsensor size ,等等不适用于全帧投影。

鱼眼

Fisheye涵盖了许多投影,所有这些投影都模拟了鱼眼镜头中使用的常见光学模型。这些都是部分帧投影,因此请启用与Rectilinear投影类型。此外,您可以选择要使用的特定模型:

Stereographic在光学领域没有得到广泛使用,三养光学公司是少数使用它的公司之一。的Stereographic模型构成了基础little planet投影,投影的中心是最低点。

SphericalTransform附带LittlePlanet属性预设,它将这种外观应用于水平线垂直居中的latlong。

Equidistant是默认设置,并且与CaraVR的C_CameraSolver节点采用的鱼眼失真估计中采用的归零模型匹配。

Equidistant通常认为它是理想模型,因为它的响应是各种模型的曲线之间的平衡。没有这种控制级别的其他工具最有可能采用此模型。

Equisolid是实用光学中最常发现的模型。

Orthographic是经典的“完美”响应模型,在实际光学中几乎没有用。但是,它确实与Nuke

镜球

Mirrorball会生成反射球的图像,并按比例放大以使图像的±XY在格式的边缘。