❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- DimensionX 是香港科技大学、清华大学和生数科技共同推出的框架,可以从单张图片生成高逼真度的 3D 和 4D 场景。
- 基于 ST-Director 技术,实现对视频扩散过程中空间和时间因素的解耦和精确控制。
- 包含轨迹感知机制和身份保持去噪策略,增强场景的一致性和真实感。
正文(附运行示例)
DimensionX 是什么
DimensionX 是香港科技大学、清华大学和生数科技共同推出的一个框架,旨在从单张图片生成高逼真度的 3D 和 4D 场景。该框架基于视频扩散技术,实现了对空间和时间维度的精确控制。通过 ST-Director 技术,DimensionX 解耦了空间和时间因素,支持独立或组合控制,生成具有动态变化的复杂场景。此外,DimensionX 还包含轨迹感知机制和身份保持去噪策略,以增强场景的一致性和真实感。
DimensionX 的主要功能
- 3D 场景生成:从单张图片生成新的视角渲染图,构建 3D 场景。
- 4D 场景生成:从单张图片生成包含时间和空间变化的动态场景。
- 视频扩散控制:基于 ST-Director 技术,实现对视频扩散过程中空间和时间因素的解耦和精确控制。
- 轨迹感知机制:为 3D 生成设计,处理复杂的现实世界场景和相机运动。
- 身份保持去噪策略:为 4D 生成设计,增强场景的一致性,特别是在动态对象和背景之间。
DimensionX 的技术原理
- ST-Director(空间和时间导演):
- 维度感知 LoRAs:学习从维度变化数据中得到的低秩适应(LoRAs),实现对视频扩散中空间和时间因素的解耦。
- S-Director(空间导演):负责生成与空间变化相关的视频帧,控制相机视角和位置。
- T-Director(时间导演):负责生成与时间变化相关的视频帧,控制场景中对象的动态。
- 维度感知分解:定义空间和时间等价关系,创建 S-Quotient Space 和 T-Quotient Space,分别捕获视频中的空间轨迹和时间运动轨迹。
- 无需训练的维度感知组合:基于视频扩散过程中的去噪机制,开发无需训练的方法实现混合维度控制,用在去噪过程的不同阶段切换 S-Director 和 T-Director 生成包含空间和时间变化的视频。
- 3D 场景生成:
- 轨迹感知机制:根据不同的相机运动轨迹训练多种 S-Director,覆盖广泛的相机运动模式。
- 视频插值模型:生成高质量的插值视频,平滑和一致地过渡稀疏视图。
- 4D 场景生成:
- 参考视频 latent 共享:基于选择参考帧并共享其 latent 代码增强所有空间变体视频之间的一致性。
- 外观细化:对每个视点的动态视频进行细化,增强多视图视频之间的稳定性和一致性。
如何运行 DimensionX
安装依赖
确保你的 Python 版本介于 3.10 到 3.12 之间。
pip install diffusers
推理代码示例
import torch
from diffusers import CogVideoXImageToVideoPipeline
from diffusers.utils import export_to_video, load_imagepipe = CogVideoXImageToVideoPipeline.from_pretrained("THUDM/CogVideoX-5b-I2V", torch_dtype=torch.bfloat16)
lora_path = "your_lora_path"
lora_rank = 256
pipe.load_lora_weights(lora_path, weight_name="pytorch_lora_weights.safetensors", adapter_name="test_1")
pipe.fuse_lora(lora_scale=1 / lora_rank)
pipe.to("cuda")prompt = "An astronaut hatching from an egg, on the surface of the moon, the darkness and depth of space realised in the background. High quality, ultrarealistic detail and breath-taking movie-like camera shot."
image = load_image("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/astronaut.jpg")
video = pipe(image, prompt, use_dynamic_cfg=True)
export_to_video(video.frames[0], "output.mp4", fps=8)
资源
- 项目官网:https://chenshuo20.github.io/DimensionX/
- GitHub 仓库:https://github.com/wenqsun/DimensionX
- arXiv 技术论文:https://arxiv.org/pdf/2411.04928
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦