我们先来使用cosmos transfer2.5来进行基本的功能推理。之前已经用过cosmos-transfer1的功能了,所以对一些基本内容还是比较熟悉了,这次我们主要解决cosmos2上遇到的一些问题。
首先还是先下载源码,通过git lfs来拉取。
bash
sudo apt install git-lfs
git lfs install
bash
git clone https://github.com/nvidia-cosmos/cosmos-transfer2.5.git
cd cosmos-transfer2.5
git lfs pull
bash
sudo apt update && sudo apt -y install curl ffmpeg libx11-dev tree wget
bash
curl -LsSf https://astral.sh/uv/install.sh | sh
uv --version
bash
uv python install # 注意版本,cosmos2不再限制python的3.12,只需要3.10即可
uv sync --extra=cu128
source .venv/bin/activate
以上下载是比较慢的,需要多等待。另外,如果是先要把环境安装到当前的conda环境,也是可以用命令uv sync --extra=cu128 --active --inexact实现的,但是比较麻烦,不太推荐了。这样我们就把运行的python环境都配置好了。
接下来我们测试相关的功能
bash
python examples/inference.py -i assets/robot_example/depth/robot_depth_spec.json -o outputs/depth
python examples/inference.py \
-i assets/robot_example/depth/robot_depth_spec.json \
-o outputs/depth2
python examples/inference.py -i assets/robot_example/edge/robot_edge_spec.json -o outputs/edge
python examples/inference.py -i assets/robot_example/seg/robot_seg_spec.json -o outputs/seg
python examples/inference.py -i assets/robot_example/vis/robot_vis_spec.json -o outputs/vis
python examples/inference.py -i assets/robot_example/multicontrol/robot_multicontrol_spec.json -o outputs/multicontrol
bash
# 汽车场景
# Depth 控制 - 汽车
python examples/inference.py -i assets/car_example/depth/car_depth_spec.json -o outputs/car_depth
# Edge 控制 - 汽车
python examples/inference.py -i assets/car_example/edge/car_edge_spec.json -o outputs/car_edge
# Segmentation 控制 - 汽车
python examples/inference.py -i assets/car_example/seg/car_seg_spec.json -o outputs/car_seg
# Blur 控制 - 汽车
python examples/inference.py -i assets/car_example/vis/car_vis_spec.json -o outputs/car_vis
# 多控制 - 汽车
python examples/inference.py -i assets/car_example/multicontrol/car_multicontrol_spec.json -o outputs/car_multicontrol
bash
# 8卡并行推理(单控制或多控制变体)
torchrun --nproc_per_node=8 --master_port=12341 \
examples/inference.py \
-i assets/robot_example/depth/robot_depth_spec.json \
-o outputs/depth_8gpu
# 自定义GPU数量
torchrun --nproc_per_node=4 --master_port=12341 \
examples/inference.py \
-i assets/robot_example/multicontrol/robot_multicontrol_spec.json \
-o outputs/multicontrol_4gpu
bash
# 图像推理
# 单帧图像转换
python examples/inference.py -i assets/image_example/image2image.json -o outputs/image2image
# 使用参考图像引导视频生成
python examples/inference.py -i assets/image_example/image_style.json -o outputs/image_style
# 多GPU版本
torchrun --nproc_per_node=8 --master_port=12341 \
examples/inference.py \
-i assets/image_example/image_style.json \
-o outputs/image_style
bash
# 生成多视角所需的视频
python scripts/generate_control_videos.py -i assets/multiview_example1/scene_annotations -o outputs/multiview_example1_world_scenario_videos
# 多相机视角同步生成(front_wide, rear_left, rear_right等7个视角)
torchrun --nproc_per_node=8 --master_port=12341 \
examples/multiview.py \
-i assets/multiview_example/multiview_spec.json \
-o outputs/multiview
# 自回归多视角生成长视频
torchrun --nproc_per_node=8 --master_port=12341 \
-m examples.multiview \
-i assets/multiview_example/multiview_autoregressive_spec.json \
-o outputs/multiview_autoregressive
bash
# 查看所有参数说明
python examples/inference.py --help
# 查看特定控制类型的参数
python examples/inference.py control:edge --help
python examples/inference.py control:depth --help
python examples/inference.py control:seg --help
python examples/inference.py control:vis --help
# 多视角帮助
python examples/multiview.py --help
python examples/multiview.py control:view-config --help
新版本的最重要的是可以生成更加合理的多视角视频了,这里我们资源不足,多模态的控制模式的生成是没有问题的。

单一模态


多模态
