你可以生成高质量的变速运动,如放慢或加快输入画面。OFlow分析画面中的每一个像素运动,并基于此分析生成运动矢量,然后沿运动方向生成新的插值图像。你也可以使用OFlow添加运动模糊或增强图像中存在的运动模糊。
注意:我们建议使用NukeX的Kronos节点代替,因为它包含了一种改进的运动估计算法。更多信息,查看 Kronos。
另请参阅 Retime 和 Kronos。
使用OFlow重定时
1. 选择Time > OFlow,在要调整速度的图像序列后插入OFlow节点。
第一次创建节点时, Input Range 由源剪辑自动设置。之后,你需要点击Input Range更新它。
2. 如果你想用 Output Speed 或Frame 定时,将OFlow节点的输出连接到Viewer上,
或
如果你想用 Input Speed时,将Viewer连接到OFlow节点之前。
3. 默认情况下,OFlow将使用 Timing > Output Speed 执行线性半速减速(即将速度变为原来的50%)。
4. 如果支持,请启用Local GPU 上的 Use GPU if available 渲染输出,而不使用CPU。在NVIDIA GPU上,GPU和CPU的输出是相同的,但是使用GPU可以显著提升处理性能。
注意:如果你的电脑进入休眠模式,CUDA驱动程序无法恢复,你必须重新启动Nuke使用GPU加速。
在Nuke 10.0 中,我们添加了AMD GPU支持,在2013年底的Mac Pro 6.1(运行OS X 10.9.3 ‘Mavericks’),或更高版本上。虽然在某些情况下,GPU和CPU拥有同样的位元(bit-wise),但有些运算在这个配置下可能对准确性有所限制。
查看更多最低配置的信息,另请参阅Requirements for GPU Acceleration 或参考Help > Release Notes中的Nuke 发行说明。
5. 在通道下拉菜单中选择你想要变速的通道。默认情况下OFlow会对所有通道变速。
6. 要调整减速或加速,Output 或Input Speed控制中输入一个新的数值。数值小于1,片段会减速;数值大于1,片段加速。默认值是0.5,将片段速度减慢一半。四分之一速度则为0.25。
7. 或者,你可以这样表述变速:我想在输出剪辑的第100帧看到原剪辑的第50帧。
8. 如果你想在变速素材上添加运动模糊,可以继续添加运动模糊。
小提示:一些用户可能还记得 OpticalFlow 和 OptiFlow 节点,现在他们被OFlow取代了。OFLow可以对素材变速并添加运动模糊,但是不能输出运动矢量。你可以使用VectorGenerator(仅在NukeX 和Nuke中有)输出运动矢量。
重新定时和运动模糊,我们推荐使用Kronos节点代替OFlow。更多信息,另请参阅 Kronos。
优化结果
要优化结果:
1. 要在视窗上显示运动矢量,请展开高级(Advanced)控制并开启Overlay Vectors,向前运动矢量为红色,向后运动矢量为蓝色。
注意:在渲染前应关闭Overlay Vectors,否则运动矢量会被渲染到输出上。
2. 若要设置视窗中显示的运动矢量之间的间距,请调整Vector Spacing。默认值为20,表示每20的倍数画一个运动矢量。值得注意的是,矢量间距仅影响视窗显示,不影响变速的结果。
Vector Spacing 值为40 | Vector Spacing 值为4 |
3. 调整Vector Detail以改变矢量场的密度。向量细节越多,处理时间越长,但向量细节应该尽可能多点。值为1时,在每个像素处产生一个向量;值为0.5时每隔一个像素生成一个向量。对于有些序列,Vector Detail值接近1时,高矢量细节会生成太多的不必要的局部运动细节,往往较低的值更合适。
不想要的局部运动细节区域 | 在此案例中低平滑度更合适 |
4. 矢量场通常有两个重要的特性:它们应该精确地将一个图像中的相似像素与另一个图像相匹配,它们应该是平滑的而不是像噪点一样。通常,有必要把这些质量与其他性能进行平衡。高Smoothness值会丢失很多局部细节,但不太可能生成奇怪而杂乱的矢量。而低平滑度集中在细节匹配上,可能结果会产生锯齿。大多数序列的默认值为1.5。
低平滑值有锯齿 | 高平滑度锯齿小 |
5. 重定时时设置重采样的类型:
•Bilinear双线性-默认滤波器。处理速度最快,但对高缩放级别的结果较差。你可以在使用其他重采样类型产生输出前,用双线性预览变速效果。
•Lanczos4和Llanczos6 -这些滤波器对缩小画面效果较好,而且可以提供一些图像锐化,但处理时间较长。
6. 如果源画面的整体亮度在帧与帧之间有变化,请开启Flicker Compensation(闪烁补偿)。OFlow会在亮度和闪烁变化之间进行补偿,否则可能导致你的输出有问题。
可变亮度的例子包括金属表面上的高光,如车身,或以不可预知的方式反射光线的水体。
请注意,使用闪烁补偿会增加渲染时间。
7. 为了减少处理时间,大部分的运动估计只在亮度上进行,也就是使用单色图像。在大多数情况下,这是完全可以接受的,但通过添加偏置到个别颜色,容差组中的参数允许您集中在图像中的特定的物体上。例如,你可以增加红色权重,以牺牲镜头中的其他物体为代价,让算法集中在正确获取一个主体为红色的物体的运动上。