蓝雨凌

  • 大家好,最近恰巧在做VR项目,基本接近完成,在这过程中把原先的技术流程都归结了一遍。上一篇文章中我们讲解了拼合VR的流程以及常规故障修复方法,拼接好VR视频后接下来要做的事情就是擦除脚架(支架),添加Logo、字幕,或者合成三维元素,去除抖动等操作。 这篇教程里我们主要学习:将2D、3D元素合成到VR场景中。

    VR全景合成原理:将VR视频按照一定的算法,将全景画面展平为2D画面,并在2D画面中合成好画面,最后再将2D画面扭曲到VR的球体空间中去,这个过程中最重要的节点是C_SphericalTransform

    下面我们来学习VR全景的合成流程:(以Nuke为例,所有软件中VR合成的原理都是一致的)

  • 第八步、使用C_GlobalWarp解决接缝变形流程。(如果拼接质量好,这步可忽略)

    C_GlobalWarp使用类似于C_CameraSolver所采用的特征点检测来定位相邻相机重叠区域中的特征。然后通过扭曲画面,来减少重影。

    1、将C_GlobalWarp节点连接到C_CameraSolver节点的输出。

    2、CaraVR会在当前帧自动添加单个关键帧,也可手动添加关键帧:
    •在Viewer中,单击 Add Key()以在当前帧添加关键帧。

    默认情况下也会导入C_CameraSolver中的匹配项。若不需要解算器中的匹配项,可以禁用“ 导入可用匹配项”。

    3、单击“ Match(匹配)”比较关键帧上摄像机的重叠。

    4、单击“Camera M…[查看更多]

  • 第七步、匹配不同摄影机之间的曝光、色彩。(C_ColourMatche)

    在所有摄像机上进行颜色校正流程:

    1、将C_ColourMatcher节点添加到节点图并将其连接到C_CameraSolver节点的输出。

    2、CaraVR会在当前帧自动添加单个关键帧,但您可以通过以下任一方式手动添加关键帧:
    •在Viewer中,单击 Add Key()以在当前帧添加关键帧。

    在多个帧上添加关键帧,可尝试匹配多个帧之间的颜色。

    提示:C_ColourMatcher无法计算时间变化产生的色彩变化。例如:由于相机移动导致…

    [查看更多]

  • 第六步、添加C_Stitcher来进一步修正画面之间的融合度。包括去除重影,接缝边缘小错位等。

    C_Stitcher使用Ocula类型的视差矢量来排列重叠相机之间的重叠区域中的匹配特征,然后将结果混合以生成球形latlong。

    查看之前和之后的图像,可以启用或者禁用Warps。


    扭曲前
    启用warp

    缝合序列:

    1、将C_Stitcher节点连接到C_CameraSolver节点的输出。

    2、CaraVR会在当前帧自动添加单个关键帧,也可以手动添加关键帧(以下任意方法都可):

    •在Viewer中擦除,然后单击 Add Key)以在当前帧添加关键帧,

    •单击 Key All在整个序列的间隔中添加关键帧。
    视频中有大量移动,将“ 步进间隔”设置为较低的值,计算…[查看更多]

  • 第五步、调整VR全景视频的水平线,使其看起来平整对齐

    大多时候,解算完毕的相机,CaraVR不会自动将图像放置在正确的方向,需要手工调整位置才能使地平线正确。

    CaraVR提供了两种对齐水平线的方法:“ Setting(设置)”选项卡上的“ Transform(变换)”控件和“Viewer(查看器)”左上角的工具栏。

    •转换控件:打开“C_CameraSolver属性”面板,单击“Setting(设置)”选项卡。调整的x, y和 z,使摄像机在框架中间或画面中间对齐为水平线。

    •查看器工具栏:启用 Horizo​​n工具,然后按住 Ctrl / Cmd + Alt并在Viewer中拖动以调整水平线。

    提示: 可以通过选择相机工具来以这种方式调整单个相机。

  • 第四步、检测解算结果,并对解算结果进行优化。

    在查看器工具中切换到摄像机模式()显示叠加,会显示重叠摄像机特征点以及求解它们计算的RMS(均方根)误差。

    绿色叠加表示低于错误阈值的 RMS错误,红色覆盖超过阈值的红色叠加。

    提示: 仅当播放头位于关键帧上时才会显示叠加层。

    在该示例中,摄像机4和6的重叠内的匹配记录了10.2的RMS误差,这非常高。

    1、通过属性面板对解算的摄影机参数做优化。

    [查看更多]

  • 第三步、设置好参数后,点击C_CameraSolver的Solve(解算)按钮,解算完成后即可看到相机重新对位后的结果。

    Freedom360拼合
    H3PRO14机位拼合

    C_CameraSolver提供拍摄装备的原始源图像元数据给下游节点,比如缝合位置矫正C_Stitcher和多机位色彩匹配C_ColourMatcher,这两个节点都需要元数据来更精确的计算结果。

  • 第二步、单击“ Match(匹配)”来对设置的关键帧部分重叠画面进行比对计算。(CaraVR仅在默认情况下重叠的摄像机中查找匹配的画面像素)

    注意: 匹配的同时会计算设备中所有摄像机的特征点进行匹配,因此VR立体拍摄的左右眼图像,无需单独计算它们。

    启动相机匹配功能后,特征点查看器中相互叠加。

  • 第一步、导入VR Rig拍摄的多机位素材后,添加C_CameraSolver节点,并将素材都连接到C_CameraSolver,并在操作面板上选择支架类型,镜头焦距等重要参数。

    C_CameraSolver基础参数设置:
    C_CameraSolver可以计算出VR Rig上各个摄影机的位置,并将画面拼合起来。它包含拍摄设备预设列表,例如6台摄像机拍摄的VR视频;Freedom360;14台机位的Gpro等。

    CaraVR还支持导入PTGui和Autopano中手动校准的.pts和.pano格式文件。

    提示: CaraVR在工具架CaraVR 2.1>工具集>中包含一个VR全景视频工作流程。

  • 大家晚上好🤝,VR貌似是很神奇的存在:戴头盔观看,沉浸式视频空间体验,也在2017年让资本界为之疯狂并定义为“VR元年”,小雨非常有幸加入‘Nunasi’并追随追光@light 参与了大量的VR制作项目。VR视频对于前期,后期的要求都极端苛刻,需要的硬件成本非常高,所以除了一些高端且多金的行业在使用,如:汽车,游戏,地产等。2017年VR并没有带来大规模落地的应用场景。

    近年,随着计算机硬件的高速发展,CPU,GPU,固态硬盘,4K显示设备的平民化,普及化,VR应用场景在无形中再度蔓延开来。VR视频制作本是一项收费较贵的培训,很多机构都处于收费教学状态。Nunasi团队一直秉承“技术开源、共享互助”的基础理念,经一番考量后,决定发布到社区👏。

    VR视频:由多个机位…[查看更多]

  • ParticleWind 模拟风力

    1、将ParticleWind节点连接到粒子流。查看器中会出现一个箭头,使用该箭头确定风的方向和速度。箭头越大越长,风效越强。

    也可以在属性面板中使用from和to控件调整,得到更加精细的控制效果。

    2、在ParticleWind控件面板上,调整空气阻力以启用风力吹动的效果。

    3、调整Drag(拖动)滑块可以模拟增加或减少空气阻力。

    好啦,今天小雨的更贴就到这里啦,如有疑问,可以跟帖留言,会尽快回复你的。点击Nuke影视合成制作并订阅可以查看更多精彩教程哦。

    如果喜欢NewVFX社区的帖子,请关注NewVFX社区公众号,并将本帖推荐给你的朋友哦~

    本帖未经允许不得转载,转载请注明出处并保留在本站的完整链接,谢谢^_^

  • 向粒子添加螺旋运动
    ParticleVortex节点对粒子施加圆周力并将粒子吸引到虚线,从而产生粒子的漩涡。

    1、将ParticleVortex节点连接到粒子流。

    2、查看器中会出现一个箭头,可以拖动该箭头以确定涡旋效果的方向和速度,箭头越大越长,效果越强

    也可以在属性面板中使用from和to控件,达到同样的控制目的。

    3、在ParticleVortex属性面板中,使用控件修改效果。

    粒子沿假想的涡旋中心线方向加速。如果将此值设置为0,则不应用平行力,正值和负值用于确定力的方向。

    4、切向滑块:可以强制粒子在涡旋中心线上循环。调整切线用来衰减切向力的强度。

    5、径向滑块:调整从中心线吸引粒子的力(正值)或排斥(负值)。

    提示: 调高平行值和切线值,会产生螺旋形状的粒子涡旋。

  • 在粒子上添加湍流运动
    ParticleTurbulence节点将Perlin噪声应用于x,y和/或z方向上的粒子运动。

    1、将ParticleTurbulence节点连接到粒子流。

    2、调整ParticleTurbulence控件:

    •强度:设置 x, y和 z轴上湍流效应的强度。

    •scale:在 x, y和 z轴上设置效果的比例或受影响区域的大小。

    •offset:在 x, y和 z轴上设置应用于效果的偏移或受影响区域的偏移。

  • 添加Drag(拖拽力)到粒子
    使用ParticleDrag节点,可以对粒子应用拖拽。随时间的推移,逐渐减慢粒子运动。

    1、将ParticleDrag节点连接到粒子流。

    2、调整ParticleDrag控件:
    •拖动 : 向粒子添加拖拽力大小。

    •旋转拖拽 :向粒子旋转添加拖拽效果,减慢和停止旋转。

    提示: 还可以输入负值以应用反向拖动效果并加快粒子速度。

  • 粒子遇到物体后力的交互方式(反弹,穿透、消亡等)
    使用ParticleBounce节点,可以使粒子与从3D对象进行力学交互(比如反弹)。将节点连接到粒子节点,并调整ParticleBounce控制面板:

    1、粒子碰撞到对象物体后产生反弹,当然也可以从外部/内部反弹模式下拉列表中选择一种模式:a 无应用:无外部反弹效果;b 反弹:用以反弹粒子;c Kill:(杀死)以终止粒子生命。

    2、在通道下拉列表中选择作用于粒子反弹的通道。将此设置为none,则不分配任何通道。

    3、在弹跳区域中,设定弹跳效果的强度,并调整摩擦力来控制弹跳效果。

    7、在对象下拉列表中选择要用于反弹效果的对象:
    • plane, sphere或 cylinder : 添加三维物体用作粒子系统的反弹表面。可以使用Nuk…[查看更多]

  • 吸引/排斥粒子到特定点
    使用ParticlePointForce,可从3D空间中的某个点吸引粒子或排斥粒子。

    1、将节点连接到粒子流。

    2、调整ParticlePointForce:
    •力量:设定吸引或排斥粒子的力的强度。负值导致吸引力,正值排斥。

    •衰减:选择吸引力的强度如何衰减的类型。

    •radius:设置影响半径。在该半径之外,粒子不受到(引力)点力的影响。

    •position:设置吸引或排斥粒子的点的位置。(可以使用链接到这些字段的动画或Axis节点表达式,也可以手动输入位置值。)

  • 对齐粒子
    对齐粒子的运动,方向和方向,可以使用两个节点:

    •在粒子流中添加ParticleMotionAlign节点,可以沿着它们的运动方向重新排列所有粒子。如果粒子运动看起来过于僵硬,这将非常有用。

    •添加ParticleLookAt节点以确定所有粒子朝向3D空间中的某一点,可以调整 X, ÿ和 ž坐标位置控制指定此点。

    控制粒子速度
    ParticleSpeedLimit节点将粒子限制为指定的最小和最大速度。

    1。 将其连接到粒子流。
    2。 在属性面板中,调整:
    • minimum : 每个粒子可以移动的最小速度。

    •最大值 : 每个粒子可以行进的最大速度。

  • 将重力应用于粒子
    当将重力应用于粒子时,Nuke不会限制重力固定在某个方向,而是可以在x,y和z方向中的任何一个或全部方向上工作。通过以下方式添加重力:

    •使用ParticleDirectionalForce应用方向力。只需将其连接到粒子流,然后通过在力度字段中输入 x, y和 z值来调整x,y和z方向上的力的强度。

    •使用ParticleGravity节点。将ParticleGravity节点连接到粒子流时,Viewer中会出现一个箭头,可以使用该箭头设定重力的方向和速度。箭头越大越长,效果越强。也可以使用属性面板中的控件来代替调整箭头:

    from…[查看更多]

  • 发射粒子控制面板控制参数

    粒子发射器是粒子系统中最重要,最基础的节点,其决定了粒子的大小,方向,形状,质量,生命周期,等粒子特性,其控制参数比较多,但也是粒子中最核心的节点,非常有必要掌握噢。

    调整ParticleEmitter显示下拉菜单可以更改粒子的显示方式

    1、设置发射粒子的通道。(在这里可以指定仅某个特定的通道,才会对粒子产生影响)

    2、使用start at(发射起始帧设置)可以提前/延迟发射第一个粒子的发射点。例如:模仿下雪时候,可以提前发射雪花,使视频第一帧就处于下雪状态。

    3、选择粒子的发射顺序和速率
    •发射 :可以从点、边、面或 BBOX(边界框)来指定发射位置。

    [查看更多]

  • 连接粒子节点基础流程
    至少需要一个ParticleEmitter节点,才能创建粒子。

    1、单击工具栏中的“ Particle(粒子)”菜单,然后选择“ParticleEmitter(粒子发射器)”节点。

    2、将其连接到Viewer节点。

    3、默认情况下粒子从原点沿y轴发射;可以将3D几何模型或PositionToPoints点云连接到ParticleEmitter 的emit输入,则从模型上发射。

    4、要指定粒子的形状,可以在ParticleEmitter 的粒子输入中连接图像或几何体。

    小技巧:ParticleEmitter支持同时发射多种元素(2D图像或3D模型),可以同时将其他图像或几何图形连接到粒子输入,每个粒子会随机选取其中一个输入源。

    5、如果有两…[查看更多]

  • 查看更多