模拟景深模糊
ZDefocus节点根据深度图通道模糊图像。这使您可以模拟景深(DOF)模糊。
|
原始图像。 |
|
使用ZDefocus模拟更窄的景深。 在这种情况下,绿色标志下方的区域仍会保持焦点, 而其前后的区域则模糊不清。 图像中任何散焦的高光都会以形状绽放 滤镜图像的效果,从而产生散景效果。 |
为了使图像散焦,ZDefocus将图像分成多个层,每个层在各处均分配有相同的深度值,并使用单个模糊大小进行处理。ZDefocus处理完所有图层后,它将从图像的背面到正面将它们融合在一起,每个新图层都位于先前图层的顶部。这使它可以保留图像中对象的顺序。
快速开始
以下是工作流程的快速概述:
1. | 创建一个ZDefocus节点并将其连接到脚本。 |
看到连接ZDefocus。
2. | 调整模糊设置。 |
看到调整模糊设定。
3. | 调整任何离焦高光的形状。 |
看到调整焦点突出的形状。
4. | 如有必要,增强高光以使镜片形状效果更明显。 |
看到增强焦外聚焦。
5. | 如有必要,遮盖模糊效果。 |
看到遮罩模糊效果。
小费: 你可以检查一下Use GPU if available使节点运行在图形处理单元(GPU)而不是中央处理器(CPU)上。
有关最低要求的更多信息,请参见Windows, Mac OS X和macOS , 要么的Linux或参考Nuke发行说明可在Help > Release Notes。
您可以在首选项中选择要使用的GPU。按Shift+S打开Preferences对话框,请确保您正在查看Preferences > Performance > Hardware标签,并设置default blink device到您要使用的设备。您必须重新启动Nuke使更改生效。
如果您使用的渲染许可证为Nuke,您需要添加--gpu在命令行上。
连接ZDefocus
要连接ZDefocus:
1. | 通过单击创建ZDefocus节点Filter > ZDefocus。 |
2. | 连接ZDefocus节点的image输入要模糊的图像。 |
注意: 该图像还需要包含一个深度图通道。如果深度通道和rgba通道存在于两个不同的文件中,则可以使用Shuffle节点将它们组合在一起。
3. | 使用channels下拉菜单,选择要模糊的通道。 |
4. | 组depth channel到image包含深度图的输入。默认情况下,深度信息取自depth.Z。 |
请注意,深度图不应反走样。如果是这样,则可以为两个对象之间的边缘上的像素分配一个介于前对象和后对象之间的深度。这看起来是错误的,因为这表明这些边缘像素漂浮在对象之间的某个位置。
5. | 如果您要使用自己的滤镜图片(而不是预定义的disc要么bladed图片),将其连接到ZDefocus节点的filter输入并设置filter type至image在节点的属性中。 |
滤镜图像代表用于拍摄输入素材的相机光圈的形状和大小。作为剪辑中的image输入模糊,剪辑中的任何高光都将以filter图像,创建散景效果。
注意: 从预加载脚本Nuke 8.0v7启用legacy resize mode复选框会自动向后兼容,并使用filter bounds下拉列表,以确定如何调整用于过滤的图像的大小。
添加新的ZDefocus节点将隐藏legacy resize mode复选框,并允许您使用image filter下拉菜单,以在计算模糊时提供更大的灵活性。
看到使用自定义过滤器图像了解更多信息。
您可以使用Roto节点(Draw > Roto)或Flare节点( Draw > Flare ), 例如。
请注意,您不必将滤镜图像裁剪为较小的尺寸,因为使用快速傅立叶变换可加快与大滤镜图像的卷积。
6. | 将查看器附加到ZDefocus节点。 |
|
ZDefocus脚本。 |
7. | 继续调整焦点突出的形状下面。 |
调整模糊设定
调整模糊设置:
1. | 采用math指定您要如何使用depthchannel计算相机和物体之间的距离。例如,某些程序使用较高的值表示更远的距离,而在另一些程序中则表示离摄像机更近: |
• direct -的Z值depth channel直接控制模糊。例如,如果Z为0.5,则模糊大小是该值的0.5倍。 size控制(除非这个大于maximum,在这种情况下,它被夹在maximum)。
• depth -的Z值depth channel是相机与该像素处图像中任何内容之间的距离。
• far = 0 -的Z值depth channel等于1 /距离。期望值从接近相机的大正值减小到无穷远处的零。这与通过生成的深度图兼容Nuke和RenderMan。
• far = 1 -近平面= 0,远平面= 1。这与OpenGL生成的深度图兼容。
• -direct -与direct模式下, depth channel直接控制模糊。换句话说,每个图层的模糊程度与direct模式。但是,在这种模式下,图层被解释为相反的顺序,因此较高的深度值会将图层放置在另一个图层的前面而不是后面。
• -depth -的Z值depth channel在镜头前是-距离。这和depth,但开始时的距离为负数。
• far = -0 -的Z值depth channel等于-1 /距离。这与Maya生成的深度图兼容。
• far = -1 -近平面= 0,远平面= -1。
2. | 在查看器中,将focal point您想要完全关注的区域顶部的窗口小部件。 |
这会自动更新focal point坐标在ZDefocus属性中并设置focus plane控制这些坐标处的Z深度值。带有此Z的任何层 深度值保持焦点。您还可以围绕聚焦的聚焦平面设置深度切片(如步骤4中所述),但是图像的任何其他区域都会根据深度图而模糊。
|
绿色标志下的焦点小部件。 |
焦点小部件在汽车附近的距离内。 |
小费: 的fill foreground默认情况下启用的Control控件尝试通过填充前景中的区域来补偿丢失的信息,这些区域会在前景失去焦点时显示出来。但是,由于这些区域不提供真实的图像信息, fill foreground有时会通过添加不存在的东西而引入不良的伪像。
如果您在前景中看到模糊的伪影,而不是锐利的边缘伪影,请尝试禁用此控件。
为了更好地查看更改的效果,您还可以设置output至focal plane setup。ZDefocus现在可以在屏幕上显示景深(DOF)信息rgb渠道:
• red -小于自由度(在焦点区域的前面)。
• green -内部自由度(焦点对准)。请注意,如果depth of field设定为0,没有任何显示为绿色。
• blue -大于自由度(在焦点区域的后面)。
什么时候show image如果启用,则此信息将覆盖在输入图像上。
|
|
下的焦点小部件 绿色标志。 |
焦点小部件附近 远处的汽车。 |
3. | 要扩大完全关注的领域,请增加depth of field。这将围绕聚焦平面设置一个完全聚焦的深度切片(并在任何时候以绿色显示output设定为focal plane setup)。真实的理论景深会将其设置为零。 |
|
|
Depth of field设置为0。 | Depth of field设置为1。 |
4. | 要将少量模糊应用于对焦区域,请确保blur inside已启用。这使聚焦区域和聚焦区域周围的非聚焦区域之间的过渡更加平滑。 |
5. | 组output回到result并通过设置size值。请注意,比对焦平面更靠近相机的模糊量可能更大。 |
如果已经设定math至direct,大小乘以深度即可得出该深度的模糊大小。设置size设为1时,您可以直接使用深度图中的值作为模糊大小。
6. | 如果增加size第5步的值,最好增加maximum值。无论对象相对于相机在哪里,都不会产生大于此值的模糊。 |
为了获得最大的处理速度,您可能希望将此值保持尽可能低的值。
7. | 默认情况下, automatic layer spacing启用,这意味着ZDefocus根据最大模糊大小自动计算要使用的深度层数(maximum)。在这种模式下,各层在焦平面附近靠得更近,其中模糊量的细微变化更加明显,而在远处越来越宽(这相当于设置layer curve手动控制图层时,值为1;请参阅步骤8)。 |
要可视化图层,可以设置output至layer setup。就像focal plane setup,但在将深度分为几层后显示景深(DOF)信息。
|
Output调成layer setup。 |
在0和之间使用的最大模糊大小数maximum是256。这意味着焦平面后面最多可以有256层,焦平面前面最多也可以有256层。
8. | 如果您取消选中automatic layer间距,您可以使用depth layers。请注意,使用的图层越多,处理模糊所花费的时间就越长。 |
|
|
Depth layers设置为10。 | Depth layers设置为50。 |
如有必要,还可以增加layer curve将图层集中在焦平面周围。默认值0产生均匀间隔的图层。
|
|
Layer curve设置为0。 这样产生的间隔均匀 层。 |
增加layer curve 价值集中各层 围绕焦平面。 |
9. | 继续调整焦点突出的形状。 |
调整焦点突出的形状
作为剪辑中的image输入是模糊的,剪辑中任何离焦的高光(散景)都将采用filter图片(的filter type已选中)。
|
|
原始图像。 | 离焦亮点 (散景)的形状 的filter图片。 |
如何创建过滤器图像取决于您。您可以:
• 使用预定义的光盘形状作为过滤器图像。看到使用预定义的光盘映像。
• 使用预定义的刀片图像(多边形)作为过滤器图像。看到使用预定义的刀片图像。
• 在filter输入作为过滤器图像。看到使用自定义过滤器图像。
使用预定义的光盘映像
1. | 要查看更改的效果,请设置output在ZDefocus控件中filter shape setup。 |
2. | 组filter type至disc。 |
3. | 使用 filter shape控制以溶解0的高斯和1的圆盘之间的滤波器形状。 |
|
|
Filter shape组 到0(高斯)。 |
Filter shape组 到1(光盘)。这是 默认值。 |
4. | 使用aspect ratio控件以设置滤镜宽高比,默认情况下为1:1。小于1的值在x轴上挤压过滤器,大于1的值在y轴上挤压过滤器。 |
这使您可以模拟某些镜头设计中固有的渐晕引起的猫眼效果。
|
|
Aspect ratio组 到0.5。 |
Aspect ratio组 至1.5。 |
5. | 继续增强焦外聚焦。 |
使用预定义的刀片图像
1. | 要查看更改的效果,请设置output在ZDefocus控件中filter shape setup。 |
2. | 组filter type至bladed。 |
3. | 使用blades控件设置组成相机光圈的光圈叶片的数量。值3产生一个三角形,4个正方形,5个五边形,6个六边形,依此类推。 |
该字段仅接受大于1的整数。
|
|
Blades设置为5。 这是默认值 值。 |
Blades设置为8。 |
4. | 调整roundness控制滤镜多边形侧面的圆角。值0等于不舍入。 |
|
|
Roundness组 到0。 |
Roundness组 至8。 |
5. | 采用rotation以度旋转滤镜图像。正值产生逆时针旋转,反之亦然。 |
6. | 使用aspect ratio控件以设置滤镜宽高比,默认情况下为1:1。小于1的值在x轴上挤压滤镜,大于1的值在y轴上挤压滤镜。 |
这使您可以模拟某些镜头设计中固有的渐晕引起的猫眼效果。
|
|
Aspect ratio组 到0。 |
Aspect ratio组 至2。 |
7. | 调整散焦高光内部的光线分布: |
• 调整inner size控制内部多边形的大小,以外部多边形的百分比表示。
|
|
Inner size组 至0.2。 |
Inner size组 至0.8。 |
• 采用inner feather在内部多边形周围添加向外或向内的羽化。值大于0.5时,羽毛效果是向外的;如果值小于0.5,则羽毛效果是向内的。值为0.5不会产生羽化。
|
|
Inner feather组 至0.2。 |
Inner feather组 至0.8。 |
• 调整内部亮度以控制内部多边形的亮度,其中0等于黑色,而1等于白色。
|
|
Inner brightness 设置为0.3。 |
Inner brightness 设置为0.7。 |
• 如果要模拟折反射镜头,请检查catadioptric。当使用折反射镜头时,图像的散焦区域是环形的,从而产生甜甜圈状的散景。您可以使用catadioptric size调整滤镜中折反射孔的大小。
|
|
Catadioptric size 设置为0.3。 |
Catadioptric size 设置为0.7。 |
8. | 继续增强焦外聚焦。 |
使用自定义过滤器图像
1. | 组filter type在ZDefocus控件中image。 |
这告诉ZDefocus使用filter输入而不是预定义的形状作为过滤器图像。
请注意filter图像可以是彩色图像。例如,如果要在散焦高光上添加色带以模拟色差,这可能很有用。
|
的filter图片。 |
2. | 如果要显示filter在查看器中设置图像output至filter shape setup。 |
注意: 从预加载脚本Nuke 9.0v2启用legacy resize mode复选框会自动向后兼容,并使用filter bounds下拉列表,以确定如何调整用于过滤的图像的大小。
添加新的ZDefocus节点将隐藏legacy resize mode复选框,并允许您使用image filter下拉菜单,以在计算模糊时提供更大的灵活性。
3. | 从中选择要使用的频道filter输入,请执行以下操作之一: |
• 设置filter channel 下拉菜单转到您要使用的频道。默认情况下,此菜单设置为rgba.alpha。
• 要使用来自filter输入为image输入(即任何channels设置为),检查use input channels。
4. | 在较新的Nuke脚本,请使用image filter下拉菜单以选择所需的过滤器。看到选择过滤算法有关可用过滤器的更多信息。 |
注意: 当使用采用锐化的滤镜时,例如Rifman和Lanczos,您可能会看到光环效应。如有必要,请检查clamp image filter解决此问题。
在老Nuke与脚本legacy resize mode已启用,请使用filter bounds下拉列表以选择是否要将过滤器图像限制为:
• shape -的filter输入的边界框。在这种情况下,ZDefocus仅使用边界框区域,并且滤镜的中心是边界框的中心。这是默认值。您可能要使用它,例如,如果您的filter输入是带有小边框的roto形状,该边框不会填充整个格式区域。
• format -的filter输入的格式。在这种情况下,ZDefocus使用整个格式区域,允许您在格式内偏移滤镜图像。
5. | 继续增强焦外聚焦。 |
增强焦外聚焦
要增强焦外聚焦:
1. | 要使散景镜头的形状效果更温暖,更明显,请检查gamma correction。 |
这意味着在模糊之前应用了2.2的伽马查找曲线,然后反转以得到最终输出。
|
|
不带gamma correction。 | 用gamma correction。 |
2. | 您还可以通过启用以下选项使镜头形状效果更明显bloom。 |
上方的任何亮点bloom threshold值乘以bloom gain值。下面的重点bloom threshold不受影响。
这样一来,与gamma correction;然而, gamma correction可能会更好地展现一些亮点。
|
|
不带bloom。 | 用bloom。 |
3. | 继续遮罩模糊效果。 |
遮罩模糊效果
要掩盖模糊效果:
1. | 做一以下的: |
• 确保ZDefocus节点的image输入,没有任何连接到mask输入。
• 将面罩连接到mask ZDefocus节点的输入。如果看不到mask输入,打开节点的控件并确保mask设定为none。
如果您想从面具mask输入复制到预定义mask.a频道,还要检查inject。这样,您可以使用mask再次向下游输入。
2. | 如果您不想将Alpha通道用作遮罩,请从菜单中选择要使用的通道。 mask下拉式菜单。 |
默认情况下,模糊仅限于此通道的非黑色区域。
3. | 如有必要,请检查invert反转遮罩,使模糊仅限于遮罩的非白色区域。 |
4. | 要仅模糊蒙版的边缘,请检查fringe。 |
5. | 要在原始图像(为0)和完整的ZDefocus效果(为1)之间溶解,请调整mix滑块。节点图中的节点上会出现一个浅灰色的小方块,表示未使用完整效果。 |