ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

Hy-Nomas 相机控制完全指南:生成 npz 轨迹文件,精准驾驭视频镜头运动

Hy-Nomas 相机控制完全指南:生成 npz 轨迹文件,精准驾驭视频镜头运动 人工智能媒体生成视频多模态计算机视觉深度学习模型量化LoRA【免费下载链接】Hy-Nomas项目地址https://ai.gitcode.com/tencent_hunyuan/Hy-Nomas点击查看免费下载想给 Hy-Nomas 视频生成模型加上运镜吗Hy-Nomas 的相机控制功能允许你通过一个npz 轨迹文件逐帧定义虚拟相机的位置与朝向从而精准控制生成视频中的镜头运动——推镜头、横移、环绕都可以做到分帧级别的把控。这篇完整指南将带你用几步简单操作搞定 npz 轨迹文件的制作、参数调优与常见问题排查。 先了解 Hy-Nomas腾讯混元开源的自由交互视频世界生成模型支持多轮文本指令 相机控制逐段生成连续视频蒸馏推理每片段仅 8 步去噪默认输出720 × 1280、24 FPS。Hy-Nomas 相机控制把虚拟相机交给你的运镜脚本Hy-Nomas 的生成条件一共有三路信号条件作用你提供的形式 文本描述世界里有什么、发生什么结构化 JSON 提示词相机轨迹规定镜头怎么动npz 轨迹文件本文主角 KV cache记住已生成的历史片段让世界保持连贯模型自动维护可以这样理解npz 文件就是一段给虚拟摄影师的运镜脚本逐帧告诉模型——这一帧相机站在哪、朝哪个方向看、用什么焦距。模型内部把每 4 个视频帧的归一化相机外参矩阵展平为 64 维向量通过交叉注意力注入视频生成过程实现镜头运动与画面内容的同步控制。 不传轨迹文件也完全可以镜头会按模型默认行为自然运动。想要精确到每一帧的电影感运镜才需要 npz 轨迹。npz 轨迹文件要求帧数、形状与两个必备字段Hy-Nomas 官方推理代码支持npzNumPy 压缩归档格式的轨迹文件由代码仓库内置的相机轨迹工具hymm/models/camera/geometry/generate_npz_trajectories.py生成或按相同格式自制。文件里只需要两个数组字段形状含义关键点c2ws[N, 4, 4]每帧的camera-to-world相机到世界矩阵左上 3×3 是朝向最后一列是相机在世界中的位置方向别写反必须是相机→世界intrinsics[N, 3, 3]每帧的相机内参焦距像素与主点N 帧每帧一份内参相同就复制其中N 必须与视频总帧数严格相等N 视频时长秒× 帧率。默认 24 FPS 下10 秒视频就是240 帧若改帧率N 同步修改。内参矩阵是标准的 3×3 形式单位像素intrinsics [[fx, 0, cx], [ 0, fy, cy], [ 0, 0, 1]]fx/fy是焦距cx/cy是画面中心点。对默认的 720 × 1280 输出可直接参考下面示例中intrinsics()的取值按实际输出分辨率等比换算。三步生成镜头轨迹推镜头、横移与环绕示例下面给出一个零依赖的纯 numpy 脚本一次生成三种经典运镜。保存为make_camera_npz.py后执行python make_camera_npz.py即可import numpy as np def intrinsics(N, width1280, height720): 每帧一份相机内参 [N, 3, 3]单位像素 fx fy width * 0.6 # 焦距 ≈ 画面宽度 × 0.6 K np.array([[fx, 0, width / 2], [0, fy, height / 2], [0, 0, 1.0]]) return np.repeat(K[None], N, axis0) def make_npz(N, path, positions, rotations): 把逐帧位置/朝向组装成 camera-to-world 矩阵并保存 c2ws np.zeros((N, 4, 4)) c2ws[:, :3, :3] rotations c2ws[:, :3, 3] positions c2ws[:, 3, 3] 1.0 np.savez(path, c2wsc2ws, intrinsicsintrinsics(N)) N 240 # 10 秒 × 24 FPS改帧率或时长时同步调整 # ① 推镜头沿 z 轴匀速前推z 轴为镜头朝向 t np.linspace(0, 1, N) make_npz(N, push_in.npz, np.stack([np.zeros(N), np.zeros(N), 6.0 - 3.0 * t], axis-1), np.broadcast_to(np.eye(3), (N, 3, 3)).copy()) # ② 横移镜头沿 x 轴横向平移 make_npz(N, truck_right.npz, np.stack([-4.0 8.0 * t, np.zeros(N), 4.0], axis-1), np.broadcast_to(np.eye(3), (N, 3, 3)).copy()) # ③ 环绕镜头绕场景中心画圆弧相机始终面向中心 ang np.linspace(0, np.pi / 2, N) R np.stack([np.stack( [[np.cos(a), 0, -np.sin(a)], [0, 1, 0], [np.sin(a), 0, np.cos(a)]] for a in ang), axis0) make_npz(N, orbit.npz, np.stack([6.0 * np.sin(ang), np.zeros(N), 6.0 * np.cos(ang)], axis-1), R)三点使用说明方向约定脚本采用常见的镜头朝前坐标系——x 向右、y 向下、z 为镜头朝向。所以推镜头沿 z 前进横移沿 x 滑动。数值是世界单位没有严格物理意义你只需保证相机不穿入场景中心、运动平滑即可。脚本产物只是起步模板方向、速度曲线把线性t换成缓动函数更自然、环绕角度都可以按你的故事板自由改。⚠️ 多片段视频注意示例提示词中每个segment约 5 秒120 帧 24 FPS。轨迹要覆盖哪段视频N 就取哪段的帧数。在推理命令中挂载 npz 轨迹并生成视频在标准推理命令的末尾追加一个参数即可启用相机控制inference.camera_trajectory/path/to/camera.npz完整示例代码仓库根目录执行模型权重路径由HY_NOMAS_MODEL_DIR指定bash scripts/inference/inference_from_config.sh configs/experiment/inference.yaml \ dit_weight$HY_NOMAS_MODEL_DIR/DiT/distilled/diffusion_pytorch_model_ema_0_995.safetensors \ model.vae.checkpoint$HY_NOMAS_MODEL_DIR/VAE/PixelUMM_FT/diffusion_pytorch_model.safetensors \ inference.prompt$HY_NOMAS_MODEL_DIR/examples/prompts.json \ inference.save_path./outputs/distill \ inference.camera_trajectory/path/to/camera.npz 提示权重文件按仓库目录结构存放——蒸馏 DiT 在DiT/distilled/解码器在VAE/PixelUMM_FT/提示词模板在 examples/prompts.json。 硬件要求标准配置默认 8 路序列并行需要 8 张 GPU显存紧张时可改用单卡低显存配置RTX 4090 INT8 DiT FP8 解码器相机控制的用法完全一致。微调镜头运动强度3 个关键参数轨迹文件定义了运动形状参数决定运动幅度与跟随力度。官方推理预设configs/experiment/inference.yaml中与相机相关的关键项参数默认值作用调参直觉inference.trajectory_translation_scale1.0相机平移强度的缩放系数镜头走得太慢/太慢不动→ 调大inference.trajectory_rotation_scale2.5相机旋转强度的缩放系数转向不明显 → 调大inference.camera_cfg_scale1.0相机条件的引导强度guidance生成结果不跟轨迹走→ 适当调大inference.video_fps24输出帧率改动后 npz 帧数 N 必须同步三条实用建议先跑默认值拿到基线视频后再动参数每次只改一个参数、每次只微调 20%~50%避免一次调飞轨迹幅度与两个 scale 是相乘关系——轨迹本身写得大scale 再大容易过冲二选一放大即可。常见问题排查镜头不动、抖动、错位怎么办症状可能原因解决办法镜头几乎不动轨迹幅度太小或camera_cfg_scale不足调大轨迹坐标范围或把camera_cfg_scale提到 1.2~2.0镜头乱晃、画面抖动逐帧矩阵不平滑角度跳变轨迹用平滑曲线生成检查是否误用了 world-to-camera 矩阵运动方向反了c2ws写成了 w2c确认是camera-to-worldw2c 记得求逆再传入轨迹不生效N 帧数与视频帧数不一致核对 N 时长 ×video_fps改帧率同步改 N画面畸变奇怪内参单位/主点与分辨率不匹配按实际输出分辨率重算fx, fy, cx, cy生成前最后检查清单✅N 与目标时长 × 帧率严格相等c2ws形状[N,4,4]、intrinsics形状[N,3,3]且为相机→世界方向轨迹曲线平滑、相机不穿入主体内参与实际输出分辨率一致强度参数从默认值起步微调快速参考一张表记住 Hy-Nomas 相机控制项目结论轨迹格式npz 文件含c2ws [N,4,4]intrinsics [N,3,3]帧数对齐N 时长秒× 帧率默认 24 FPS启用方式推理命令追加inference.camera_trajectoryxxx.npz强度三参数平移1.0/ 旋转2.5/ 相机引导1.0参考实现代码仓库hymm/models/camera/geometry/generate_npz_trajectories.py一句话总结把轨迹按帧数对齐、格式正确、曲线平滑三条做对再用三个 scale 参数微调幅度你就能像真正的摄影师一样指挥 Hy-Nomas 的镜头走位。赞分享人工智能媒体生成视频多模态计算机视觉深度学习模型量化LoRA【免费下载链接】Hy-Nomas项目地址https://ai.gitcode.com/tencent_hunyuan/Hy-Nomas点击查看免费下载相关推荐深度解析Wan2.1 ATI轨迹控制ComfyUI视频生成全流程指南深度解析Wan2.1 ATI轨迹控制ComfyUI视频生成全流程指南 在AI视频生成领域精确控制动态元素的运动轨迹一直是行业难题。字节跳动团队最新推出的AT大模型AnimateDiff终极动画控制指南8种相机轨迹与MotionLoRA完全解析AnimateDiff终极动画控制指南8种相机轨迹与MotionLoRA完全解析 想要创建专业级的AI动画效果吗AnimateDiff作为官方实现的动画生成人工智能大模型媒体生成深度学习计算机视觉视频Hy-Nomas完全指南腾讯混元免费交互式视频世界生成模型深度解析Hy Nomas完全指南腾讯混元免费交互式视频世界生成模型深度解析 Hy Nomas 是腾讯混元开源的免费交互式视频世界生成模型你用文本指令和相机轨迹引导人工智能媒体生成视频多模态计算机视觉深度学习模型量化LoRA创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表