联系工作人员获取附件
在本示例中,我们将向您展示如何基于Speos中创建的动画场景生成视频。本文将首先介绍搭建动画场景所需的全部要求;随后,将讲解如何借助一套基于Python自动化的专用工作流,轻松快速地完成视频生成。该工作流的设计目标是无需用户直接操作脚本,因此无需任何Python/编程基础。本文的内容基于以下文章中介绍的 Timeline(时间轴)功能:《Speos时间轴最佳实践——ANSYS光学》

image.png
注意事项:软件运行前置条件
了解仿真工作流及关键结果

本文提出一个汽车领域用例,演示交通信号灯频闪对车载前摄的影响。若您对脉冲宽度调制(PWM)用例感兴趣,请参考本文,了解如何从仿真结果生成视频。
搭建场景与静态元素
设置运动元素及其运动轨迹
设置交通信号灯光源及其光通量变化文件
设置时间轴仿真
运行基于Python的流程,生成输出短视频
模型运行说明及关键结果分析
本示例采用极简场景,所有三维对象均通过Lightbox格式导入。采用该方案的原因有三点:
本用例的文件/文件夹结构如下图所示:

图片
END文件夹中的特殊目录结构与本文最后一节描述的视频生成工作流相关联。
打开START.scdocx或END.scdocx文件后,3D视图中应显示以下元素:

如果未正常显示,请按以下步骤操作:
三个Lightbox模型将按顺序完成计算,随后 3D 视图中会显示以下三维对象:

START模型由以下Speos元素构成:

END模型由以下Speos元素构成:

START工程中提供了两类可设置运动的对象:车身(Lightbox格式)和相机模型。我们已在SPEOS输入文件文件夹中提供了预定义的运动轨迹文件。如需了解轨迹文件的创建方法,建议参考《Speos Timeline Best Practices–Ansys Optics》一文。
要为Speos元素设置运动属性,请按以下步骤操作:
针对运动几何模型:

针对运动相机:

START工程中包含3个待编辑的面光源:红灯(RED_LED)、黄灯(ORANGE_LED)和绿灯(GREEN_LED)。每个光源都需配置对应的光通量变化文件。本示例的目标是模拟交通信号灯从绿灯→黄灯(短暂过渡)→红灯的LED频闪效果。如需了解时间轴与面光源的配合方式,建议参考《Speos Timeline Best Practices–Ansys Optics》一文的最后一节。
如何为面光源应用光通量变化文件:
要实现交通信号灯的灯光切换效果,红、黄、绿灯的光通量变化文件必须采用统一的时间基准,且结束时间需与驾驶场景的结束时间同步。

当光源信号处于非激活状态时,场景起始时刻(此处为 0 秒)与光源信号开始激活时刻之间的时间戳和信号值,可通过直接归零的方式省略处理。

要执行基于相机传感器的时间轴仿真,需启用逆向仿真(Inverse simulation),并将「Timeline(时间轴)」参数设置为True,如下图所示:

启用时间轴模式后,仿真定义界面底部会弹出一个新的参数选项。

动态仿真参数选项位于仿真定义界面的底部。

动态仿真参数可启用时间轴关联参数与时间步长参数。
现在模型已配置完成,可以保存并关闭项目,也可直接关闭 Speos 软件。本文介绍的视频生成工作流基于以下原理:

该工作流可在Ansys Optical-automation的GitHub库中获取,也可在本文的示例数据集中,名为Video_Workflow_Template的文件夹内找到。
整个流程分为两大模块:
用户无需打开或编辑.py脚本文件。该流程已适配各类用户,即使不熟悉Python也能直接使用。
如前文架构图所示,该流程依赖多个文件,并遵循特定的文件夹结构,其结构如下图所示:

image.png
为确保流程正常运行,需遵循以下规则:
用户需遵循模板格式填写参数。该工作流包含错误处理机制,若参数设置不当,流程可能无法正常运行,甚至生成错误结果。
用例1和例2的END文件夹中已包含可直接用于视频自动化工作流的正确文件模板。
本部分介绍本模型中关键对象与设置的说明
最重要的一点:运行仿真前,必须确保逆向仿真(Inverse simulation)中已启用时间轴模式(Timeline mode),否则轨迹文件和/或光通量变化文件将不会被识别生效。
如果你的公司默认未授予你电脑管理员权限,请在首次运行本工作流时确保拥有管理员权限,原因如下:
根据设备参数更新模型的操作说明
对于两个示例场景,如果你想创建自定义轨迹文件或光通量变化文件,最佳方式是复制示例中的文件,在保持文件结构不变的前提下修改参数值。如果需要从零创建文件,建议参考《Speos Timeline Best Practices》一文。
为希望进一步自定义模型的用户提供的信息与建议
在深入此部分内容前,建议你具备SSS Exporter的使用经验。
SSS Exporter支持特定的视频输出模式。我们提供了额外的Python脚本Timeline_To_SSS.py”,它与其他Python脚本一同位于Video_Workflow_Template>SCRIPTS目录下。
该流程需要以下两项输入:
可通过将Animation_Inputs.yml中的Keep XMP参数设为Yes,来启用XMP格式输出。
Inputs.yaml文件需设置为Given Files模式,否则无法使用SSS Exporter的视频模式。
脚本最终会输出一个新的YAML文件,其中列出了所有视频帧路径。

完成此步骤后,你只需使用生成的新Inputs.yaml文件运行 SSS Exporter,视频文件就会输出到Output文件夹中。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删