在本教程中,我会演示如何在 Blender 中使用 Motion Tracking 替换真实视频中的平面区域,而且不需要执行 Solving 步骤。


本教程不提供中文配音。您可以在下方观看英语配音的视频,并选择中文、英文或其他语言的字幕。视频下方提供了翻译成中文的文字稿。


视频文字稿

大家好!在本教程中,我会演示如何在 Blender 中使用 Motion Tracking 替换真实视频中的平面区域,而且不需要执行 Solving 步骤。我只会使用 4 个 Track Points 和 Plane Track 工具。这个工具专门用于平面表面,非常适合替换或修改墙面、画作或其他平面物体的外观,也可以配合半透明图像使用。

在开始之前,我需要先说明两点,这能帮助你判断本教程中的工具是否适合你的需求。Plane Track 不是一个 3D 对象,因此你无法对这个 Plane 应用 UV Mapping 来映射你想叠加的图片或视频。这意味着图片或视频素材必须与 Plane Track 拥有相同的宽高比例,否则会产生变形。其次,由于 Plane Track 不是 3D 对象,它没有 Material,因此替换后的内容不会显示高光反射或其他着色效果。不过,你依然可以在 Compositing 中添加 Color Grading、Motion Blur 以及其他效果。如果这些限制会影响你的项目,那么更适合的方法是执行完整的 Track 和 Solving,并使用真正的 Plane 对象及其 Material。如果这些限制对你来说没问题,那我们就开始教程吧!

首先,我打开一个新的 Blender 项目,这里使用的是 4.3 版本,然后将 Workspace 切换到 Motion Tracking。你可以在 Workspace 列表中的 VFX 分类下找到它。

在 Movie Clip Editor 中,我加载已经保存在磁盘中的视频素材。我想替换画中的图像,而图像的四个角非常适合放置 Track Points,因为这些位置对比度高,跟踪算法可以在整个片段中轻松识别它们。

接下来,我点击左侧的 Add Marker 添加 4 个 Track Points,并在图像上点击以定义每个 Track Point 的初始位置。我会在右侧面板的 Track 标签页中使用缩放窗口微调它们的位置。完成后,我将鼠标放在图像上方并按下 A 键,选中所有 Track Points。

我点击 Track Clip 标签页中的 Set Scene Frames,让 Blender 的时间长度与视频片段的时长一致。然后点击 Track Markers 按钮,让 Blender 尝试在整个视频中跟踪这 4 个 Track Points。

现在我打开左侧的 Solve 标签页,并展开顶部的 Plane Track 区域。在选中这四个 Track Points 的情况下,我点击 Create Plane Track,为场景创建一个 Plane Track 对象。这个对象拥有四个顶点,并会与原始的四个 Track Points 关联。匹配并不总是完全准确,但你可以通过左键拖动 Plane 的每个顶点来手动修正。在这个例子中,跟踪结果非常准确,所以 Plane 顶点与 Control Points 之间没有明显偏差,不过我还是会说明如何修复,以防你遇到这种情况。

在右侧 Track 标签页的 Plane Track 区域中,有一个名为 Auto Keyframe 的按钮。启用后,当我们在时间轴的某一帧移动 Plane 顶点时,该顶点的新位置会被自动保存。当你需要手动修正时,这个功能非常有用。

现在我们可以在 Plane Track 区域点击 Open 来加载要叠加的图片。这个图片也可以是半透明的,例如当你只是想在原始内容上添加 Logo 或文字,而不是完全替换它时。

Plane Track 标签页中的 Opacity 区域可以降低新图片的不透明度。这个参数不能制作动画。不过,这里看到的只是效果预览,因为要真正完成替换并渲染最终视频,我们还需要进入 Compositor。

在 Compositing 编辑器中,我将默认的 Render Layers 节点替换为 Movie Clip 节点,并在其中加载原始视频素材。然后我将 Movie Clip 节点连接到一个 Reroute 节点。接着,Reroute 节点同时连接到 Composite 节点和 Viewer 节点。Viewer 节点可以让我们在编辑器背景中预览结果,只需要启用右上角的 Backdrop 选项即可。

在编辑器中,我还添加了一个 Image 输入节点,并加载想要覆盖到原始视频上的图片。随后,我将这个 Image 节点连接到一个 Plane Track Deform 节点。如果把这个节点连接到 Viewer,我们可以预览新图片,但此时还没有发生变形,因为我们还没有配置节点参数。

首先,我将原始视频加载到 Plane Track Deform 节点中。然后设置节点中的另外两个字段:视频中使用的 Camera 和 Plane Track。你可以在同一个项目中包含多个这样的 Plane。需要注意的是,这里的 Camera 和 Plane 都来自 Movie Clip Editor,而不是 Blender 场景中的 3D 对象。

为了将图片叠加到原始视频上,我使用了 Alpha Over 节点,具体来说是将图片连接到该节点的第二个 Image 输入端口。现在我们已经可以在编辑器的 Backdrop 中清楚地看到预览效果。接下来,我将输出分辨率设置为与原始视频一致,并配置其他输出文件参数,然后通过 Render 菜单开始渲染动画。

这里就是最终生成的视频结果。

如果你想为应用的图片制作透明度动画,例如在原始视频与修改后的视频之间创建淡入淡出效果,你可以为 Alpha Over 节点的 Factor 值制作动画。先在动画第一帧将该值设为 0,然后把鼠标悬停在参数上按下 I 键,或者右键选择 Insert Keyframes。接着移动到最后一帧,将 Factor 值改为 1,并再次为该参数插入关键帧。

这里是添加淡入淡出效果后的最终视频。

在进入下一个示例之前,这里还有一个额外的小技巧。如果你点击 Plane Track 标签页中的下拉菜单并选择 New Image From Plane Marker,Blender 会根据 Plane Track 包围的区域生成一个新的临时图像,并以 Plane Track 的名字命名。你可以直接在 Blender 中编辑这个图像,或者保存到磁盘后使用外部软件修改。这样,你就能编辑原始视频中显示的图像,再加载修改后的版本,并用它替换原始内容。

你也可以将视频片段加载到 Plane Track 中,并在 Compositor 中使用另一个 Movie 节点进行处理。不过,这些视频片段的尺寸必须与 Plane Track 的比例一致,所以请记住这一点。

这里是使用动画纹理后的片段效果。本教程到这里就结束了!希望对你有所帮助!下次见!

搜索教程

输入短语,或输入多个用逗号分隔的关键词进行搜索。

本站提供 Francesco Milanese 制作的 3D 模型、教程及计算机图形相关资源。3D 模型的使用许可可通过各模型页面上的链接前往第三方商店购买,并须遵守适用的许可条款。 Francesco Milanese — 意大利增值税号:06321250877。 联系方式:info@francescomilanese.com


高级隐私策略信息和cookie文件的使用