AutoVFX自然语言驱动的视频特效编辑框架

Written by 30115776@qq.com

AutoVFX自然语言驱动的视频特效编辑框架。

🚀 快速阅读

功能:根据自然语言指令自动创建真实感和动态的视觉特效视频。
技术:集成了神经场景建模、基于LLM的代码生成和物理模拟技术。
应用:广泛应用于电影、广告、游戏开发、虚拟现实和教育培训等领域。

正文(附运行示例)

AutoVFX 是什么

AutoVFX是由伊利诺伊大学香槟分校研究团队推出的先进物理特效框架,能够根据自然语言指令自动创建真实感和动态的视觉特效(VFX)视频。该框架集成了神经场景建模、基于大型语言模型(LLM)的代码生成和物理模拟技术,实现照片级逼真且物理上合理的视频编辑效果。用户可以直接用自然语言指令控制视频内容的修改和创作。

AutoVFX的主要功能包括3D场景建模、程序生成、VFX模块、物理模拟和渲染与合成。通过这些功能,用户可以轻松创建复杂的特效场景,如模拟爆炸、天气效果、物体变形等。

AutoVFX 的主要功能

  • 3D场景建模:从输入视频中提取关键场景属性,包括几何、外观、语义和照明信息。
  • 程序生成:用大型语言模型(LLMs)将自然语言编辑指令转换为可执行的程序代码。
  • VFX模块:包含预定义的专门函数,用于执行各种编辑任务,如对象插入、移除、材质编辑和物理模拟。
  • 物理模拟:支持刚体物理和粒子效果,如烟雾和火焰,实现逼真的动态交互。
  • 渲染与合成:用物理基础的渲染引擎(如Blender)生成最终的视频,包括前景对象、背景网格和合成。

AutoVFX 的技术原理

  • 神经场景建模:用3D重建和场景理解模型来建立全面的场景模型,编码输入视频中的丰富几何、外观和语义信息。
  • LLM-based代码生成:基于大型语言模型(LLMs),如GPT-4,将简单的语言编辑指令转换成程序。
  • 物理模拟集成:将场景模型与物理模拟引擎(如Blender)集成,实现物理上合理的交互和动态效果。
  • 模块化函数封装:将编辑模块封装成可调用的函数,函数组合形成全面的程序,便于Python解释器执行。
  • 渲染技术:用Cycles渲染器进行高质量的物理基础渲染,模拟光的相互作用,包括反射、折射和全局照明。
  • 合成管道:提取前景和背景遮罩及基于alpha阈值和遮挡推理的前景内容,计算阴影强度,将阴影和前景内容混合到原始图像中,以产生最终的合成视频。

如何运行 AutoVFX

环境设置

首先,克隆AutoVFX的GitHub仓库并创建环境:

git clone https://github.com/haoyuhsu/autovfx.git
cd autovfx/
conda create -n autovfx python=3.10
conda activate autovfx

安装PyTorch和cudatoolkit:

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.8 -c pytorch -c nvidia

安装其他必要的模块和包:

# 安装Gaussian Splatting子模块
cd sugar/gaussian_splatting/
pip install submodules/diff-gaussian-rasterization
pip install submodules/simple-knn

# 安装分割和跟踪模块
cd ../../tracking
pip install -e .

# 安装其他包
pip install openai objaverse kornia wandb open3d plyfile imageio-ffmpeg einops e3nn pygltflib lpips scann geffnetopen_clip_torch sentence-transformers==2.7.0 geffnet mmcv vedo

下载预训练模型和数据

下载预训练模型和数据:

# 下载预处理数据
cd retrieval
gdown --folder https://drive.google.com/drive/folders/1Lw87MstzbQgEX0iacTm9GpLYK2UE3gNm

# 下载Blender
cd third_parties/Blender
wget https://download.blender.org/release//Blender3.6/blender-3.6.11-linux-x64.tar.xz
tar -xvf blender-3.6.11-linux-x64.tar.xz
rm blender-3.6.11-linux-x64.tar.xz

运行示例

下载预处理的Garden场景数据和预训练模型:

mkdir datasets && cd datasets
gdown --folder https://drive.google.com/drive/folders/1eRdSAqDloGXk04JK60v3io6GHWdomy2N
cd ../
mkdir output && cd output
gdown --folder https://drive.google.com/drive/folders/1KE8LSA_r-3f2LVlTLJ5k4SHENvbwdAfN

运行示例:

export OPENAI_API_KEY=/your/openai_api_key/
export MESHY_API_KEY=/your/meshy_api_key/

SCENE_NAME=garden_large
CUSTOM_TRAJ_NAME=transforms_001
SCENE_SCALE=2.67
BLENDER_CONFIG_NAME=blender_cfg_rigid_body_simulation

python edit_scene.py \\
    --source_path datasets/${SCENE_NAME} \\
    --model_path output/${SCENE_NAME}/ \\
    --gaussians_ckpt_path output/${SCENE_NAME}/coarse/sugarcoarse_3Dgs15000_densityestim02_sdfnorm02/22000.pt \\
    --custom_traj_name ${CUSTOM_TRAJ_NAME} \\
    --anchor_frame_idx 0 \\
    --scene_scale ${SCENE_SCALE} \\
    --edit_text \"Drop 5 basketballs on the table.\" \\
    --scene_mesh_path datasets/${SCENE_NAME}/mesh/mesh.obj \\
    --blender_config_name ${BLENDER_CONFIG_NAME}.json \\
    --blender_output_dir_name ${BLENDER_CONFIG_NAME} \\
    --render_type MULTI_VIEW \\
    --deva_dino_threshold 0.45 \\
    --is_uv_mesh

资源

30115776@qq.com

Pretium lorem primis lectus donec tortor fusce morbi risus curae. Dignissim lacus massa mauris enim mattis magnis senectus montes mollis taciti accumsan semper nullam dapibus netus blandit nibh aliquam metus morbi cras magna vivamus per risus.

OmniBooth华为诺亚方舟联合港科大推出的图像生成框架

DeepClaude高性能的开源 AI 应用开发平台,深度集成了 DeepSeek R1 和 Claude 模型

发表评论