Squish - One Hand Only! - Wan2.2 i2v 14b
详情
下载文件
模型描述
Squish - 仅用一只手!- Wan2.2 i2v 14b
这个 LoRA 让你不仅能将物体拉近摄像头时挤压,即使在远处也能实现!与原始 Squish 不同,你只需使用一只手即可,无需大量提示!
提示格式与简要说明
提示:
在视频中,一个 [物体] 被展示出来。一个人的长右臂从侧面出现,伸展至 [物体] 并抓住它。[物体] 被握在远处的右手中。随后,该人按压 [物体],引发 sq41sh 挤压效果。人物持续下压 [物体],进一步展现 sq41sh 挤压效果。
我的使用设置非常简单:CFG 3.5,shift 8.0(默认),dpm++-sde 调度器,25 步(13+12)。未使用任何加速或其他额外 LoRA。使用 Kijai 的封装器制作。
我使用了第 10 层的无条件跳过(SLG),以略微提升视频质量。画廊生成中未应用其他增强。该模型在 512x512、640p 和 720p 下表现极佳。
详情请参见视频元数据中的工作流或 GitHub 上的副本。
现在简要说明:以下是我创建此 LoRA 的艰难历程。我认为这对其他 LoRA 训练者和技术用户可能有所帮助。
问题
我为何要创建这个 LoRA?
原始的 Squish LoRA 及其合成蒸馏版本存在一个显著偏差:总是出现两只手,连同手指从两侧包裹物体。此外,物体被从其原空间位置撕离并移近摄像头,严重破坏沉浸感。我认为更酷的想法是:不只是吸引物体,而是先用一只手臂伸出去触及它!
仅让“一只手”出现是提示工程、LoRA 强度和 Comfy 中条件控制计算的噩梦——至少对我而言是如此——这正是我决定制作这个微调版本的原因。
方法
由于存在上述偏差,从原始物体中无法直接构建“修复”数据集。于是我将起始帧改为手部位于物体附近,成功率有所提升。我以为成功了,但没有,左手频繁介入,将物体拉向摄像头,彻底推翻了所有进展。经过数小时反复重写提示、调整 LoRA 强度、用 ComfyUI 的系数平均条件后,我才找到一个合适的预设。
为构建修正数据集,我收集了大量手部触摸不同物体在不同位置的图像,然后提取最后一帧,使用校准后的 Wan2.2 图像到视频模型和 Squish LoRA 继续生成。
在拼接前,“真实”片段会经过 Wan 的 VAE 处理,以增强可信度。在该分辨率下,画面右侧边缘会出现一条细薄的彩虹条纹,我用自研的“vibe-coded”程序手动裁剪,确保所有视频使用相同预设分辨率,避免创建过多宽高比桶。
数据集由以下部分组成:
- 10 个手工制作的 Squish 场景(两部分视频:首先手伸向物体,然后手挤压物体);2 个合成 Squish 场景:手仅触碰物体(懒惰的图生视频,未生成“伸展”部分)。
- 正则化:从 Omni-VFX 数据集中精选的 18 个高质量 RemadeAI 合成样本。
如前所述,成功率极低,数据集规模极小。
每个 epoch 的数据混合比例为:手动数据集重复 4 次 + 正则化样本 1 次。
Squish LoRA 的微调训练:高噪声下 6 个 epoch,低噪声下 4 个 epoch,使用双 GPU(5090 + 4090)一晚上完成(数据并行,diffusion-pipe)。
训练使用 Prodigy 作为优化器,损失函数采用 伪 Huber 损失,Huber 常数设为 0.5,以尝试这一新设置。
使用设置
使用设置非常简单:CFG 3.5,shift 8.0(默认),dpm++-sde 调度器,25 步(13+12)。未使用任何加速或其他额外 LoRA。
我使用了第 10 层的无条件跳过(SLG)以略微提升视频质量。画廊生成中未应用其他增强。
训练分辨率低于 512 像素(宽/高),但因已消除偏差,现在你可以尝试更长尺寸。512 和 640 均可正常工作,甚至 720p 也能获得良好结果!(因为这个 LoRA 训练得太充分了,哈哈!)画廊示例均使用 720p 展示 :0
训练帧数为 81 帧(16fps 约 5 秒,24fps 约 3 秒),此数值为推荐值,但 65 帧也可行,其他帧数未测试。
我使用了 Kijai 的 ComfyUI 封装器,原生工作流可能需要轻微调整。工作流已作为视频元数据附上。如难以获取,可在以下 GitHub Gist 链接 找到 JSON 格式版本。
画廊起始图像是用 Qwen、SDXL 和 Flux 生成的——包含 Edit 和 Kontext 模型。
局限性
为更快消除偏差,训练专门针对右手,因此如果你是左撇子,可能不适用 :)
由于主要基于合成数据训练,你可能会在画面右侧边缘看到一条细薄的彩虹条纹。我在准备数据集时尽最大努力裁剪了它,但仍会残留些许痕迹。(若仔细观察,即使不使用 LoRA,由于 Wan2.2 的固有特性,该痕迹也可能出现。)在更高分辨率下,该痕迹会消失。
在构建数据集时,即便使用上述所有技巧,也几乎无法在高分辨率下让提示准确匹配,因此我不得不将训练限制在低分辨率(<512 像素)。这可能导致轻微模糊。
与原始 Squish 一样,偶尔会出现角色腿部消失的现象。尽管我尽力从正则化数据集中剔除此类情况,该问题仍会发生,我也不知原因 :( 或许是 Wan 训练的限制。(可尝试在提示中明确描述腿部和鞋履)
如果物体过于靠近摄像头,可能触发默认行为并生成第二只手,因此最好使用明显处于远处的物体。
结语
此 LoRA 的目标是消除 Squish 的双手偏差,实现远程挤压物体,从而增强真实感和冲击力。我希望它能为用户带来乐趣与实用价值。
你对我最大的支持,就是在画廊中分享你使用它的成果示例,无论质量如何 :)
当然,如果你遇到任何问题,请留言评论。
感谢 RemadeAI 提供初始创意 :3
