欢迎光临散文网 会员登陆 & 注册

教程 | UE4摄像机镜头校准

2022-11-08 09:47 作者:剪辑师大露  | 我要投稿

1.必要设置

创建新的虚幻引擎项目。选择电影、电视和现场活动(Film, Television, and Lived Events) 类别,然后点击 下一步(Next) 按钮。




选择虚拟制片(Virtual Production) 模板,然后点击 下一步(Next) 按钮




输入文件位置和项目名称,然后点击创建项目(Create Project) 按钮。




编辑器加载之后,点击设置(Settings)> 插件(Plugins),打开 插件菜单(Plugins Menu)




选择虚拟制片(Virtual Production) 类别,然后 启用摄像机校准(Camera Calibration)LiveLinkXR 插件。在弹出框上选择 是(Yes),然后点击 立即重启(Restart Now) 按钮,以重启编辑器。





你启用了"摄像机校准"和LiveLinkXR插件,并重启了编辑器。现在你已准备好校准摄像机。


2.设置场景

转到放置Actor(Place Actors) 面板,然后搜索 电影摄像机(CineCamera)Actor。将Actor拖入关卡中。


放置Actor(Place Actors) 面板中,搜索 摄像机校准棋盘格(Camera Calibration Checkerboard)。将Actor拖入关卡中。


内容浏览器(Content Browser) 中,点击 查看选项(View Options) 按钮,然后选择 显示引擎内容(Show Engine Content)显示插件内容(Show Plugin Content) 选项。


内容浏览器(Content Browser) 中,找到 摄像机校准内容(CameraCalibration Content)> 设备(Devices)> 追踪器(Tracker)。将 BP_UE_Tracker3 蓝图拖入关卡中。


选择关卡中的 电影摄像机Actor(CineCamera Actor),然后找到 细节(Details) 面板。向下滚动到 成像区域尺寸(Filmback) 分段,然后为你的物理摄像机输入匹配的 传感器宽度(Sensor Width)传感器高度(Sensor Height) 值。


选择电影摄像机Actor(CineCamera Actor) 后,转到 细节(Details) 面板,然后点击 添加组件(Add Component) 按钮。搜索并选择 Live Link控制器(Live Link Controller)


转至窗口(Window) > Live Link 以打开 Live Link 窗口。


转到源(Source)> LiveLinkXR源(LiveLinkXR Source),然后点击 添加(Add) 按钮以添加连接的Vive追踪器。现在你应该会看到正在使用Live Link连接的追踪器。



由于我们不会使用实际的FIZ源,因此需要使用LiveLink蓝图虚拟主题(LiveLink Blueprint Virtual Subjects) 创建虚拟源。右键点击 内容浏览器(Content Browser),然后选择 LiveLink > 蓝图虚拟主题(Blueprint Virtual Subject)。点击下拉菜单,选择 LiveLinkCameraRole,然后点击 确定(OK) 按钮。将蓝图命名为 VirtualPrestonFIZ



双击打开VirtualPrestonFIZ 蓝图。点击 + 变量(+ Variable) 按钮以添加新变量。将变量命名为 Focus。转到 细节(Details) 面板,将 变量类型(Variable Type) 设置为 浮点(Float)启用实例可编辑(Instance Editable) 复选框。



重复上述步骤,创建名为 ZoomIris 的两个额外的浮点变量。


右键点击事件图表(Event Graph),然后搜索并选择 Update Virtual Subject Static Data。将 Update Virtual Subject Static Data 节点连接到 Event On Initialize 节点。右键点击 Update Virtual Subject Static Data 节点中的 静态数据(Static Data) 引脚,然后选择 分割结构体引脚(Split Struct Pin)



启用焦距(Focal Length)光圈(Aperture)对焦距离(Focus Distance) 复选框如下所示。


右键点击事件图表(Event Graph),然后搜索并选择 更新虚拟主题帧数据(Update Virtual Subject Frame Data)。将 Update Virtual Subject Frame Data 节点连接到 Event On Update 节点。右键点击 Update Virtual Subject Frame Data 节点中的 帧数据(Frame Data) 引脚,然后选择 分割结构体引脚(Split Struct Pin)。此事件将在每个更新函数上触发,并且将用于更新可用于每个帧的FIZ数据。



Zoom 变量连接到 焦距(Focal Length) 引脚。将 Iris 变量连接到 光圈(Aperture) 引脚。将 Focus 变量连接到 对焦距离(Focus Distance) 引脚。编译(Compile)保存(Save) 蓝图。


转到源(Source)> 添加虚拟主题(Add Virtual Subject),以打开 虚拟主题(Virtual Subject) 窗口。选择 VirtualPrestonFIZ 主题,然后点击 添加(Add) 按钮。




右键点击内容浏览器(Content Browser),然后选择 杂项(Miscellaneous)> 镜头文件(Lens File),以创建"镜头文件"资产。将资产命名为 LumixLens


选择电影摄像机Actor(CineCamera Actor),然后转到 细节(Details) 面板。向下滚动到 Live Link 分段,然后点击 主题表示(Subject Representation) 旁边的 下拉菜单。从列表中选择追踪器。


选择电影摄像机Actor(CineCamera Actor) 后,转到 细节(Details) 面板,然后点击 添加组件(Add Component) 按钮。搜索并选择 Live Link控制器(Live Link Controller),以添加另一个组件。向下滚动到 Live Link 分段,然后点击 主题表示(Subject Representation) 旁边的 下拉菜单。从列表中选择虚拟主题。


细节(Details) 面板中,向下滚动到 摄像机角色(Camera Role) 分段,然后点击 镜头文件(Lens File) 旁边的下拉菜单。搜索并选择 LumixLens


选择BP_UE_Tracker3 蓝图,然后转到 细节(Details) 面板。选择 LiveLink组件控制器(LiveLink Component Controller),然后向下滚动到 Live Link 分段。点击 主题表示(Subject Representation) 旁边的下拉菜单,然后选择你的追踪器。


选择 CameraCalibrationCheckerboard Actor,然后转到 细节(Details) 面板。向下滚动到 校准(Calibration) 分段,然后输入 的数量以及 正方形边长(Square Side Length)。在本示例中,我们使用下图进行测量。



将材质添加到奇数立方体材质(Odd Cube Material)偶数立方体材质(Even Cube Material) 插槽,以提高可视性。



阶段成果

在本分段中,你已将电影摄像机(CineCamera) Actor、摄像机校准棋盘格(Camera Calibration Checkerboard) Actor和 BP_UE_Tracker3 蓝图添加到关卡中。你使用Live Link连接了追踪器,并正确配置了Actor。现在你已准备好校准镜头。


3.校准镜头


内容浏览器(Content Browser) 中,双击打开 LumixLens 资产。点击 校准步骤(Calibration Steps) 面板,然后选择 镜头信息(Lens Information) 选项卡。转到 镜头信息(Lens Info) 分段,输入镜头信息,然后点击 保存镜头信息(Save Lens Information) 按钮。



点击镜头文件面板(Lens File Panel),然后选择 聚焦(Focus)


点击+ 按钮,然后为 输入聚焦(Input Focus) 输入值0。为 编码器映射(Encoder Mapping) 输入值100。点击 添加(Add) 按钮,将此数据点添加到图表。重复此步骤,为 编码器映射(Encoder Mapping) 输入值1000,为 输入聚焦(Input Focus) 输入值1。


选择Iris 并为 编码器映射(Encoder Mapping) 输入值1.8,为 输入聚焦(Input Focus) 输入值0。点击 添加(Add) 按钮,将该数据点添加到图表。重复此步骤,为 编码器映射(Encoder Mapping) 输入值4.5,为 输入光圈(Input Iris) 输入值1。


返回校准步骤(Calibration Steps) 面板,然后选择 镜头失真(Lens Distortion) 选项卡。全屏打开棋盘格图像,并将摄像机对准该图像。在看得到棋盘格整体的情况下,点击视口以捕获图像。重复此步骤多次以捕获多个图像。


从不同的角度拍摄多个图像后,点击添加到镜头失真校准(Add To Lens Distortion Calibration) 按钮。点击弹出窗口上的 确定(OK),以接受校准数据。


选择节点偏移(Nodal Offset) 选项卡,然后在 节点偏移(Nodal Offset) 分段下点击 节点偏移算法(Nodal Offset Algo) 下拉菜单。选择 节点偏移棋盘格(Nodal Offset Checkerboard)


将摄像机再次对准屏幕上的棋盘格,然后点击视口。这将检测到图像的各个边角。点击应用于校准器(Apply to Calibrator) 按钮,将 摄像机校准棋盘格(Camera Calibration Checkerboard) Actor与屏幕上的棋盘格对齐:



现在你可以校准虚拟摄像机的节点偏移。将节点偏移算法(Nodal Offset Algo) 设置为 节点偏移点方法(Nodal Offset Points Method)*,并将 校准器(Calibrator) 设置为你的追踪器。将 校准点(Calibration Point) 设置为 PointLed**

使追踪器的光源朝向摄像机,然后在视口中点击该光源。重复此步骤多次以创建多个数据点。点击添加到节点偏移校准(Add To Nodal Offset Calibration) 按钮

关闭"镜头文件(Lens File)"窗口,并验证电影摄像机Actor现在是否在你移动追踪器时正确地移动。

教程 | UE4摄像机镜头校准的评论 (共 条)

分享到微博请遵守国家法律