Blender 3D:菜鸟到专业/使用 Icarus 进行动作跟踪
动作跟踪,也称为匹配移动,是在将 3D 元素与实拍素材整合时必不可少的元素。动作跟踪软件通常非常昂贵,但 Icarus 应用程序(Windows 和 Mac)可免费用于教育用途。Icarus 已经有一段时间没有更新了,后来被商业应用程序 PFTrack 取代。其他流行的动作跟踪应用程序包括 PFMatchit 和 PFHoe(两者均来自 The Pixel Farm)、Voodoo(适用于 Windows/Linux;非商业用途免费)、SynthEyes、Boujou 和 3D-Equalizer(商业版)。
出色的 CG 奇才 Colin Levy 主持 Icarus(经 The Pixel Farm Ltd 许可)、用于 Blender 的 Icarus 导入脚本,以及精彩的视频教程(参见 下载 Icarus 和视频教程)。然而,我缺少一个关于动作跟踪的简短文本教程,因此我决定自己写一个。本教程极其简短且高级,需要具备一些视频编辑、3D 和 Blender 的先验知识。
注意:本教程是在 Mac OS X 10.5 Leopard、Blender 2.46、Icarus 2.09 和 用于 Blender 的 Icarus 导入脚本 v1.07e(适用于 Blender 2.41,由 Alfredo de Greef 编写)下创建的。
注意:本教程解释了 Icarus 中的自动特征跟踪模式。还有其他选项可以提供更多用户控制 - 有关更多信息,请参见 Icarus UserGuide.pdf。
- 录制您的视频素材。将相机放在三脚架上(从而仅限于平移/旋转)可以简化跟踪,但 Icarus 也可以处理手持式相机。拍摄具有正交线(可以与 X/Y/Z 维度对齐)的背景,例如房间,也有助于跟踪。
- 将您的视频素材捕获/导入到您的计算机中。Icarus 处理高达 DV 分辨率(720*576 像素)的视频。
- 启动 Icarus 校准应用程序(还有一个失真和重建应用程序)。
- 创建一个新项目(项目->新建)。
- 导入您的视频素材(项目->导入电影)。
- 在弹出的窗口中填写相机参数信息 - 尤其要关注相机运动和像素纵横比选项。
- 在左侧面板中,展开名为坐标系的组。您应该看到 X 轴、Y 轴等。
- 单击 Z 轴工具(蓝色),并在您的视频素材中标记垂直线。使用 X 轴(红色)和 Y 轴(绿色)工具标记水平线(由您决定哪个应该是 X 和 Y)。
- 估计焦距(相机->估计焦距)。
- 使用时间滑块(位于视频图像下方)在您的视频素材中按时间导航。在几个关键帧上添加更多 X/Y/Z 标记线,尤其是在相机移动时显示背景的新部分时。
- 保存您的项目(项目->保存)。
- 开始跟踪过程(相机->跟踪和校准)。这将需要一些时间。
- 以人类可读的形式导出结果(项目->导出 3D 运动,选择人类可读 (*.txt) 作为文件类型)。
- 启动 Blender 并打开文本编辑器视图。
- 打开 Icarus 导入脚本 ICARUS_import241.py(文件->打开)。
- 启动脚本(文件->运行 Python 脚本)。您现在应该看到 Icarus 导入屏幕。
- 按下FSEL 按钮,打开您从 Icarus 导出的结果。
- 按下创建曲线按钮。这会从 Icarus 数据中导入相机运动并将其应用于 Blender 默认相机。
- 按下特征点网格按钮。这会从 Icarus 数据中导入 3D 形状点,这有助于您在将自己的 3D 元素与视频素材对齐时作为参考。
您现在可以将自己的 3D 元素添加到 Blender 场景中了。
如果您希望轻松地在图像上合成 3D 元素,您可以将图像作为渲染后缓冲区添加到 Blender 中(按钮视图中的场景选项卡)。但是,这对于视频无效,因此我们需要另一种解决方案。
- 在 Blender 中,切换到屏幕顶部的布局下拉菜单中的SR:4 - 序列。
- 在视频序列编辑器视图(屏幕中间)中,添加您的视频文件(添加->电影)。将新的片段移动到图层 1,帧 1。
- 将当前场景添加到序列中(添加->场景,场景)。将新的片段移动到图层 2,帧 1。
- 选择第二层上的场景片段(右键单击)。
- 在按钮视图中打开场景面板,然后打开序列编辑器子面板。
- 将混合模式下拉菜单从替换更改为Alpha 叠加。您的 3D 元素现在应该在右上角的预览屏幕中渲染到背景视频之上。
- 在渲染面板中,在 ANIM 按钮下方启用执行序列。这将启用渲染时的背景视频。
- 如果导入的特征点网格看起来有点球形,则需要使用 Icarus 失真应用程序生成相机失真数据。