控制完全指南:生成 npz 軌跡文件,精準(zhǔn)駕馭視頻鏡頭運(yùn)動(dòng))
人工智能媒體生成視頻多模態(tài)計(jì)算機(jī)視覺(jué)深度學(xué)習(xí)模型量化LoRA【免費(fèi)下載鏈接】Hy-Nomas項(xiàng)目地址https://ai.gitcode.com/tencent_hunyuan/Hy-Nomas點(diǎn)擊查看免費(fèi)下載想給 Hy-Nomas 視頻生成模型加上運(yùn)鏡嗎Hy-Nomas 的相機(jī)控制功能允許你通過(guò)一個(gè)npz 軌跡文件逐幀定義虛擬相機(jī)的位置與朝向從而精準(zhǔn)控制生成視頻中的鏡頭運(yùn)動(dòng)——推鏡頭、橫移、環(huán)繞都可以做到分幀級(jí)別的把控。這篇完整指南將帶你用幾步簡(jiǎn)單操作搞定 npz 軌跡文件的制作、參數(shù)調(diào)優(yōu)與常見(jiàn)問(wèn)題排查。 先了解 Hy-Nomas騰訊混元開(kāi)源的自由交互視頻世界生成模型支持多輪文本指令 相機(jī)控制逐段生成連續(xù)視頻蒸餾推理每片段僅 8 步去噪默認(rèn)輸出720 × 1280、24 FPS。Hy-Nomas 相機(jī)控制把虛擬相機(jī)交給你的運(yùn)鏡腳本Hy-Nomas 的生成條件一共有三路信號(hào)條件作用你提供的形式 文本描述世界里有什么、發(fā)生什么結(jié)構(gòu)化 JSON 提示詞相機(jī)軌跡規(guī)定鏡頭怎么動(dòng)npz 軌跡文件本文主角 KV cache記住已生成的歷史片段讓世界保持連貫?zāi)P妥詣?dòng)維護(hù)可以這樣理解npz 文件就是一段給虛擬攝影師的運(yùn)鏡腳本逐幀告訴模型——這一幀相機(jī)站在哪、朝哪個(gè)方向看、用什么焦距。模型內(nèi)部把每 4 個(gè)視頻幀的歸一化相機(jī)外參矩陣展平為 64 維向量通過(guò)交叉注意力注入視頻生成過(guò)程實(shí)現(xiàn)鏡頭運(yùn)動(dòng)與畫面內(nèi)容的同步控制。 不傳軌跡文件也完全可以鏡頭會(huì)按模型默認(rèn)行為自然運(yùn)動(dòng)。想要精確到每一幀的電影感運(yùn)鏡才需要 npz 軌跡。npz 軌跡文件要求幀數(shù)、形狀與兩個(gè)必備字段Hy-Nomas 官方推理代碼支持npzNumPy 壓縮歸檔格式的軌跡文件由代碼倉(cāng)庫(kù)內(nèi)置的相機(jī)軌跡工具h(yuǎn)ymm/models/camera/geometry/generate_npz_trajectories.py生成或按相同格式自制。文件里只需要兩個(gè)數(shù)組字段形狀含義關(guān)鍵點(diǎn)c2ws[N, 4, 4]每幀的camera-to-world相機(jī)到世界矩陣左上 3×3 是朝向最后一列是相機(jī)在世界中的位置方向別寫反必須是相機(jī)→世界intrinsics[N, 3, 3]每幀的相機(jī)內(nèi)參焦距像素與主點(diǎn)N 幀每幀一份內(nèi)參相同就復(fù)制其中N 必須與視頻總幀數(shù)嚴(yán)格相等N 視頻時(shí)長(zhǎng)秒× 幀率。默認(rèn) 24 FPS 下10 秒視頻就是240 幀若改幀率N 同步修改。內(nèi)參矩陣是標(biāo)準(zhǔn)的 3×3 形式單位像素intrinsics [[fx, 0, cx], [ 0, fy, cy], [ 0, 0, 1]]fx/fy是焦距cx/cy是畫面中心點(diǎn)。對(duì)默認(rèn)的 720 × 1280 輸出可直接參考下面示例中intrinsics()的取值按實(shí)際輸出分辨率等比換算。三步生成鏡頭軌跡推鏡頭、橫移與環(huán)繞示例下面給出一個(gè)零依賴的純 numpy 腳本一次生成三種經(jīng)典運(yùn)鏡。保存為make_camera_npz.py后執(zhí)行python make_camera_npz.py即可import numpy as np def intrinsics(N, width1280, height720): 每幀一份相機(jī)內(nèi)參 [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改幀率或時(shí)長(zhǎng)時(shí)同步調(diào)整 # ① 推鏡頭沿 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()) # ③ 環(huán)繞鏡頭繞場(chǎng)景中心畫圓弧相機(jī)始終面向中心 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)三點(diǎn)使用說(shuō)明方向約定腳本采用常見(jiàn)的鏡頭朝前坐標(biāo)系——x 向右、y 向下、z 為鏡頭朝向。所以推鏡頭沿 z 前進(jìn)橫移沿 x 滑動(dòng)。數(shù)值是世界單位沒(méi)有嚴(yán)格物理意義你只需保證相機(jī)不穿入場(chǎng)景中心、運(yùn)動(dòng)平滑即可。腳本產(chǎn)物只是起步模板方向、速度曲線把線性t換成緩動(dòng)函數(shù)更自然、環(huán)繞角度都可以按你的故事板自由改。?? 多片段視頻注意示例提示詞中每個(gè)segment約 5 秒120 幀 24 FPS。軌跡要覆蓋哪段視頻N 就取哪段的幀數(shù)。在推理命令中掛載 npz 軌跡并生成視頻在標(biāo)準(zhǔn)推理命令的末尾追加一個(gè)參數(shù)即可啟用相機(jī)控制inference.camera_trajectory/path/to/camera.npz完整示例代碼倉(cāng)庫(kù)根目錄執(zhí)行模型權(quán)重路徑由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 提示權(quán)重文件按倉(cāng)庫(kù)目錄結(jié)構(gòu)存放——蒸餾 DiT 在DiT/distilled/解碼器在VAE/PixelUMM_FT/提示詞模板在 examples/prompts.json。 硬件要求標(biāo)準(zhǔn)配置默認(rèn) 8 路序列并行需要 8 張 GPU顯存緊張時(shí)可改用單卡低顯存配置RTX 4090 INT8 DiT FP8 解碼器相機(jī)控制的用法完全一致。微調(diào)鏡頭運(yùn)動(dòng)強(qiáng)度3 個(gè)關(guān)鍵參數(shù)軌跡文件定義了運(yùn)動(dòng)形狀參數(shù)決定運(yùn)動(dòng)幅度與跟隨力度。官方推理預(yù)設(shè)configs/experiment/inference.yaml中與相機(jī)相關(guān)的關(guān)鍵項(xiàng)參數(shù)默認(rèn)值作用調(diào)參直覺(jué)inference.trajectory_translation_scale1.0相機(jī)平移強(qiáng)度的縮放系數(shù)鏡頭走得太慢/太慢不動(dòng)→ 調(diào)大inference.trajectory_rotation_scale2.5相機(jī)旋轉(zhuǎn)強(qiáng)度的縮放系數(shù)轉(zhuǎn)向不明顯 → 調(diào)大inference.camera_cfg_scale1.0相機(jī)條件的引導(dǎo)強(qiáng)度guidance生成結(jié)果不跟軌跡走→ 適當(dāng)調(diào)大inference.video_fps24輸出幀率改動(dòng)后 npz 幀數(shù) N 必須同步三條實(shí)用建議先跑默認(rèn)值拿到基線視頻后再動(dòng)參數(shù)每次只改一個(gè)參數(shù)、每次只微調(diào) 20%~50%避免一次調(diào)飛軌跡幅度與兩個(gè) scale 是相乘關(guān)系——軌跡本身寫得大scale 再大容易過(guò)沖二選一放大即可。常見(jiàn)問(wèn)題排查鏡頭不動(dòng)、抖動(dòng)、錯(cuò)位怎么辦癥狀可能原因解決辦法鏡頭幾乎不動(dòng)軌跡幅度太小或camera_cfg_scale不足調(diào)大軌跡坐標(biāo)范圍或把camera_cfg_scale提到 1.2~2.0鏡頭亂晃、畫面抖動(dòng)逐幀矩陣不平滑角度跳變軌跡用平滑曲線生成檢查是否誤用了 world-to-camera 矩陣運(yùn)動(dòng)方向反了c2ws寫成了 w2c確認(rèn)是camera-to-worldw2c 記得求逆再傳入軌跡不生效N 幀數(shù)與視頻幀數(shù)不一致核對(duì) N 時(shí)長(zhǎng) ×video_fps改幀率同步改 N畫面畸變奇怪內(nèi)參單位/主點(diǎn)與分辨率不匹配按實(shí)際輸出分辨率重算fx, fy, cx, cy生成前最后檢查清單?N 與目標(biāo)時(shí)長(zhǎng) × 幀率嚴(yán)格相等c2ws形狀[N,4,4]、intrinsics形狀[N,3,3]且為相機(jī)→世界方向軌跡曲線平滑、相機(jī)不穿入主體內(nèi)參與實(shí)際輸出分辨率一致強(qiáng)度參數(shù)從默認(rèn)值起步微調(diào)快速參考一張表記住 Hy-Nomas 相機(jī)控制項(xiàng)目結(jié)論軌跡格式npz 文件含c2ws [N,4,4]intrinsics [N,3,3]幀數(shù)對(duì)齊N 時(shí)長(zhǎng)秒× 幀率默認(rèn) 24 FPS啟用方式推理命令追加inference.camera_trajectoryxxx.npz強(qiáng)度三參數(shù)平移1.0/ 旋轉(zhuǎn)2.5/ 相機(jī)引導(dǎo)1.0參考實(shí)現(xiàn)代碼倉(cāng)庫(kù)hymm/models/camera/geometry/generate_npz_trajectories.py一句話總結(jié)把軌跡按幀數(shù)對(duì)齊、格式正確、曲線平滑三條做對(duì)再用三個(gè) scale 參數(shù)微調(diào)幅度你就能像真正的攝影師一樣指揮 Hy-Nomas 的鏡頭走位。贊分享人工智能媒體生成視頻多模態(tài)計(jì)算機(jī)視覺(jué)深度學(xué)習(xí)模型量化LoRA【免費(fèi)下載鏈接】Hy-Nomas項(xiàng)目地址https://ai.gitcode.com/tencent_hunyuan/Hy-Nomas點(diǎn)擊查看免費(fèi)下載相關(guān)推薦深度解析Wan2.1 ATI軌跡控制ComfyUI視頻生成全流程指南深度解析Wan2.1 ATI軌跡控制ComfyUI視頻生成全流程指南 在AI視頻生成領(lǐng)域精確控制動(dòng)態(tài)元素的運(yùn)動(dòng)軌跡一直是行業(yè)難題。字節(jié)跳動(dòng)團(tuán)隊(duì)最新推出的AT大模型AnimateDiff終極動(dòng)畫控制指南8種相機(jī)軌跡與MotionLoRA完全解析AnimateDiff終極動(dòng)畫控制指南8種相機(jī)軌跡與MotionLoRA完全解析 想要?jiǎng)?chuàng)建專業(yè)級(jí)的AI動(dòng)畫效果嗎AnimateDiff作為官方實(shí)現(xiàn)的動(dòng)畫生成人工智能大模型媒體生成深度學(xué)習(xí)計(jì)算機(jī)視覺(jué)視頻Hy-Nomas完全指南騰訊混元免費(fèi)交互式視頻世界生成模型深度解析Hy Nomas完全指南騰訊混元免費(fèi)交互式視頻世界生成模型深度解析 Hy Nomas 是騰訊混元開(kāi)源的免費(fèi)交互式視頻世界生成模型你用文本指令和相機(jī)軌跡引導(dǎo)人工智能媒體生成視頻多模態(tài)計(jì)算機(jī)視覺(jué)深度學(xué)習(xí)模型量化LoRA創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考