最近短视频平台上有一类内容特别容易刷屏博物馆里的唐代仕女忽然“活”了过来跟着音乐节奏跳舞、转圈、拂袖古画里的簪花少女变成动画人物神态动作都非常自然。很多读者在后台问这种视频到底怎么做的是真三维动画还是某种视频特效先说结论这通常不是传统动画师一帧一帧画的而是用 AI 图像生成和视频生成工具组合出来的“图生视频”流程。换句话说只需要一张高质量的仕女图再配合舞蹈动作引导AI 就能帮你生成一段连续、流畅的动态视频。本文就把这套玩法完整拆开从唐代仕女图的生成、舞蹈姿态控制、图生视频动画化到最终的剪辑出片一个环节一个环节讲清楚。内容覆盖在线工具和本地部署两条路线重点以本地可控方案为主方便你跟着实操、排查问题也能理解背后的技术原理。1. 背景与核心概念1.1 什么是“AI 让唐代仕女跳舞”唐代仕女画是中国古代人物画的经典题材代表作品包括《簪花仕女图》《挥扇仕女图》《唐人宫乐图》等。传统欣赏方式是静态观看但 AI 视频生成技术改变了这一点它可以直接从二维绘画中推断出人物的运动状态生成符合画面风格的动作视频。从技术上讲一个“仕女跳舞”视频并不是单纯按一个按钮生成的它通常由三部分能力组合而成文生图通过自然语言描述生成一张唐代仕女风格的静态图。图生视频以该静态图为首帧生成几秒钟连续动作画面。姿态控制通过骨骼姿态数据引导视频中人物的动作方向比如挥手、旋转、拂袖。把这个流程拆开理解排查问题时就会清晰很多。视频动作崩坏、人物变形往往不是某一个工具“不够聪明”而是你在姿态控制或运动一致性上没做对。1.2 为什么这套玩法能火核心原因有三个。第一唐代仕女这类古画人物辨识度高自带文化符号属性。观众一眼就能看出来源容易形成话题传播。第二生成门槛低。相比真人拍摄或三维动画建模AI 图生视频几乎没有专业门槛学会提示词和工具操作就能出片。第三技术成熟度已经足够。当前的 ControlNet 姿态控制和 AnimateDiff 运动模块已经可以生成相对稳定的短视频质量达到发朋友圈、发短视频平台的水平。对开发者来说这也是一个非常好的 AI 应用落地练手项目它涵盖了提示词工程、图像生成、模型选择、后处理管线等一整套工程化流程不只是“玩玩而已”。1.3 两条技术路线对比路线代表工具优点缺点在线工具即梦 AI、可灵 AI、Runway、Pika不需要显卡操作简单出片快可控性弱运动幅度受限按量付费本地部署Stable Diffusion WebUI、ComfyUI AnimateDiff免费可控能精细调整可批量生产需要 NVIDIA GPU配置较复杂混合方案在线生成图 本地动画化平衡画质与可控性需要同时掌握两类工具本文的实战部分选择本地部署路线原因是它最能体现工程化思路。在线工具操作相对简单我会在方案选型中简要说明重点是让没有高端显卡的读者也能知道该选什么。2. 环境准备与版本说明2.1 硬件与系统要求本地跑图生视频的核心是显卡显存。AnimateDiff 这类运动模块对显存要求不低以下是常见情况生成 512x768 分辨率的短视频建议 NVIDIA 显卡显存 8GB 以上。输出 576x1024 或更高分辨率时建议 12GB 以上否则容易爆显存。系统方面Windows 11 / Ubuntu 20.04 以上均可。Windows 下更推荐直接使用整合包Linux 下适合自己搭建环境。如果你没有独立显卡请直接使用在线工具方案不要强行在 CPU 上跑速度会慢到无法接受。2.2 软件环境清单本文核心依赖如下Python 3.10 或 3.11 版本。PyTorch 2.x 的 CUDA 版本。Stable Diffusion WebUI 或 ComfyUI。AnimateDiff 扩展或 ComfyUI-AnimateDiff 节点。ControlNet 扩展及其 OpenPose 模型。FFmpeg用于视频帧合成与格式转换。这里要强调一点这些组件的版本更新很快。不同版本的 WebUI、AnimateDiff 对 Python 和 PyTorch 的要求可能不同下面案例以常见环境为例重点是演示配置思路和排查方法不要死板照抄版本号。2.3 安装 Stable Diffusion WebUI以 Windows 为例如果你使用整合包如秋叶整合包通常解压后运行启动脚本即可它会自动处理 Python 环境和依赖。如果是手动安装可以参考以下命令git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git cd stable-diffusion-webui python -m venv venv venv\Scripts\activate pip install -r requirements.txt启动时加入显存优化参数set COMMANDLINE_ARGS--xformers --no-half-vae python launch.py--xformers可以降低显存占用并加速生成--no-half-vae可以避免部分显卡在 VAE 解码时出现黑图问题。首次启动需要下载模型网络环境不同耗时也不一样。2.4 安装 ComfyUI如果你更倾向于节点式工作流ComfyUI 是更现代的选择。安装步骤git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI pip install -r requirements.txt python main.pyComfyUI 默认运行在 8188 端口浏览器访问http://127.0.0.1:8188即可进入操作界面。AnimateDiff、ControlNet 等能力通过 ComfyUI Manager 安装对应节点实现。这里补充一个判断新手可以从 WebUI 入手界面直观有一定经验、需要精细调整控制管线的读者建议认真学 ComfyUI因为 AnimateDiff 在 ComfyUI 里控制粒度更细。3. 核心工作流拆解3.1 第一步生成一张高质量的唐代仕女图仕女跳舞视频的“底子”是一张好图。如果原图人物五官扭曲、服装细节低劣后面所有环节都会被放大缺陷。生成仕女图时提示词要把握以下几个维度人物主体唐代仕女、古代发型、高髻、抹胸襦裙、披帛。画风传统工笔重彩、国画风格、绢本设色、古画质感。画质高分辨率、细节丰富、五官清晰。负面词模糊、低清、变形、多余手指、水印、现代元素等。一个基础示例提示词如下Positive prompt: A Tang Dynasty Chinese palace lady, chubby face, high bun hairstyle, wearing traditional ruqun, flowing shawl, holding a round fan, standing gracefully, traditional Chinese painting style, Gongbi style, delicate brushwork, antique texture, high detail, masterpiece, best quality Negative prompt: blurry, low quality, deformed, bad anatomy, extra fingers, watermark, modern clothing, text, logo如果你希望得到更贴近《簪花仕女图》等名画的风格可以搭配对应的 LoRA 模型。LoRA 是轻量微调模型相当于给生成器注入特定画风或人物风格的“记忆”。3.2 第二步控制舞蹈姿态只靠文生图无法控制人物动作此时需要 ControlNet 的 OpenPose 姿态模型。原理是先在参考视频中提取人体骨骼关键点生成一张“火柴人”姿态图然后图像生成模型根据这张姿态图把仕女形象“贴”到对应动作上。这样可以让画中人物摆出指定的站姿、抬手、转圈等动作。具体流程是找到一段合适的舞蹈视频截取关键帧。使用 OpenPose 从每帧提取骨骼姿态图。将仕女原图和姿态图一起送入图生视频管线。生成结果中人物动作跟随姿态图运动。实际运行时要注意唐代仕女服装宽大骨骼姿态只能约束身体主干服装飘动、披帛飞舞等情况需要模型自己脑补这也是画面会崩坏的主要来源。3.3 第三步图生视频动画化图生视频是整个流程中最核心、也最容易出问题的环节。目前常用的手段包括AnimateDiff把过拟合的运动模块作用于普通 Stable Diffusion 生成过程使每帧之间保持动作连续性。SVDStable Video Diffusion单独的视频扩散模型输入一张图输出一段短视频。在线视频生成工具可灵、即梦、Runway 等直接上传图片等待生成。AnimateDiff 是目前本地方案里最常用的选择因为它能叠加 ControlNet 姿态控制精确度更高。AnimateDiff 本质上是一个通用运动模块训练时见过大量动态视频因此生成时能从静态图中“想象”出连续动作。3.4 第四步剪辑与后期生成出来的视频片段通常只有几秒钟分辨率不高需要后期处理用剪映、Premiere 等剪辑工具拼接多个片段。添加背景音乐卡点处理。可以用插帧工具提高流畅度。用 Topaz Video AI 之类工具提升分辨率可选。这一步相对简单但决定了最终视频的质感。4. 完整实战用 AnimateDiff 让唐代仕女跳舞4.1 案例目标我们做一个完整的案例生成一张唐代仕女图然后让它执行一个简单的“甩袖转身”动作最后输出一段 2 秒左右的短视频。完整跑通后你可以替换成任意舞蹈动作。4.2 项目目录结构建议在工作目录下建立如下结构tang_lady_dance/ ├── checkpoint/ # 大模型存放在这里 ├── lora/ # LoRA 模型 ├── controlnet/ # OpenPose 姿态模型 ├── input_frames/ # 待处理的原始帧 ├── pose_frames/ # 姿态图 ├── output_frames/ # 生成结果帧 └── output_video/ # 最终视频4.3 生成仕女图这一步在 WebUI 中操作在左上角选择目标大模型推荐偏国风审美的模型这里不做具体推荐避免版本差异导致误导。复制上一节的正向提示词与负向提示词。采样步数设为 28 到 32 步。分辨率设为 512x768开启高分辨率修复放大 1.5 倍到 768x1152。点击生成挑选五官、服装都满意的一张保存到input_frames/source.png。目的是让仕女单独站立周围留白方便后续动作生成时保持构图稳定。4.4 准备姿态图在 WebUI 的 ControlNet 面板中ControlNet Unit 0: - Enable: true - Type: OpenPose - Preprocessor: openpose_full - Model: control_v11p_sd15_openpose 或对应新版本模型 - Control Mode: Balanced - Guidance Start: 0.0 - Guidance End: 0.8用法是上传一张参考舞蹈姿态图自己用舞蹈视频抽帧得到ControlNet 会自动提取骨骼姿态并用于引导生成。动作幅度越大Guidance End 建议越大避免动作在中途跑偏。在 ComfyUI 中你需要加载三个核心节点ControlNetLoader加载 OpenPose 模型OpenposePreprocessor处理姿态图ControlNetApplyAdvanced接入采样器。节点连接顺序可以参考官方示例图本文不再展开完整 JSON。4.5 配置 AnimateDiff 生成视频这里以 ComfyUI 环境下的核心节点逻辑做一个“最小示意”。完整工作流文件建议从 AnimateDiff 官方仓库下载模板后修改因为节点名和参数随版本变动较大。{ checkpoint_loader: { node_type: CheckpointLoaderSimple, ckpt_name: your_tang_style_model.safetensors }, positive_prompt: { node_type: CLIPTextEncode, text: a Tang Dynasty lady turning around, waving sleeves, dancing, cohesive motion, stable character }, negative_prompt: { node_type: CLIPTextEncode, text: blurry, deformed, flickering, inconsistent face, extra limbs }, motion_loader: { node_type: AnimateDiffLoaderV1, model_name: mm_sd_v15_v2.ckpt, beta_schedule: sqrt_linear }, sampler: { node_type: KSampler, steps: 25, cfg: 7.5, sampler_name: euler, scheduler: normal, seed: 20240901 } }请注意上方的 JSON 不是可以直接导入的完整工作流只是节点逻辑的核心参数示意。实际使用时请以 ComfyUI Manager 安装的 AnimateDiff 节点版本为准参数名称有小概率差异。关键参数说明mm_sd_v15_v2.ckptAnimateDiff 的运动模块文件需要提前下载到 ComfyUI 的模型目录。beta_schedule采样调度方式一般来说sqrt_linear效果比较稳定。seed固定种子可以复现结果调动作时建议锁定种子作为基线。4.6 用 FFmpeg 把帧序列合成视频AnimateDiff 生成结果可能是一组帧序列也可能是视频节点直接输出。如果用帧序列可以用 FFmpeg 合成ffmpeg -framerate 8 -i output_frames/frame_%05d.png -c:v libx264 -pix_fmt yuv420p output_video/tang_lady_dance.mp4这里选择 8 帧每秒是因为 AnimateDiff 裸输出通常只有 16 帧左右如果按 30 帧每秒播放会显得过快。后续可以用剪映对视频进行变速和补帧处理。4.7 运行验证在 ComfyUI 中点击执行后你会在预览窗口看到一帧帧生成。完成后的结果是一段连续动作。如果出现以下情况说明参数需要调整人物每帧五官突变说明运动一致性没锁住可以降低 CFG 值。动作幅度不足可以加大引导步数或者提高 ControlNet 权重。画面出现闪烁这是 AnimateDiff 常见问题可以尝试固定种子、降低分辨率和提高采样步数。5. 在线工具快速方案如果你没有 NVIDIA 显卡或者只是想做一次内容尝试可以用在线工具完成。流程如下5.1 用文生图工具生成仕女图可使用即梦 AI、通义万相、文心一格等国内工具生成仕女图。注意在提示词中写清楚“古画风格、工笔重彩、类似《簪花仕女图》”等描述避免生成出现过多现代元素。5.2 用图生视频工具让仕女动起来操作时上传刚才生成的仕女图然后输入动作描述例如这位唐代仕女缓慢转身双手抬起衣袖飘动整个过程镜头稳定。在线工具中可灵 AI、即梦 AI 等平台的图生视频能力比较适合这类创意视频。选择视频时长、运动幅度等待生成即可。5.3 在线方案的缺点在线方案的优势是零配置、零门槛。缺点也很明显第一同一张图不能反复精确控制动作往往需要多次生成抽签第二生成结果分辨率较低需要后期修复第三如果要做批量内容成本会迅速上升。所以在线方案适合尝鲜本地方案适合认真做工程化内容。6. 常见问题与排查思路6.1 人物脸型每帧都变问题现象常见原因解决思路五官位置不稳定运动一致性参数不够降低 CFG 到 5-6固定种子减少采样步数波动人物服装变形宽大服饰细节超出模型能力使用 LoRA 强化服装风格或参考视频选动作幅度偏小的人脸闪烁底图分辨率不够先用高分辨率修复生成清晰底图再送入 AnimateDiff动作幅度太小姿态控制权重低提高 ControlNet 权重到 0.9 左右或增大 Guidance End爆显存分辨率或帧数过大降到 512x768减少视频帧数开启 xformers6.2 异常排查步骤如果视频完全崩坏按以下顺序排查检查底图是否清晰。模糊底图会放大模糊。检查姿态图是否正常。如果姿态本身摆得别扭生成结果必然奇怪。单独测试 ControlNet在不开启 AnimateDiff 的情况下生成一张静态图确认姿势是否正确。单独测试 AnimateDiff把 ControlNet 关闭生成一段自由动作视频确认运动模块是否正常。两者都正常再组合使用逐步调整权重。这个方法非常建议记下来复杂管线出问题时要把变量拆开一次只测一个模块。6.3 安装环境常见问题问题现象常见原因解决思路pip 安装失败Python 版本不匹配使用 3.10 或 3.11 创建虚拟环境启动报 CUDA 错误PyTorch 与显卡驱动版本不匹配检查 CUDA 版本并重新安装对应 PyTorch界面打开白屏WebUI 依赖未安装完整删除 venv 重新安装 requirements.txtAnimateDiff 节点不显示ComfyUI Manager 未安装在 ComfyUI Manager 中搜索安装 AnimateDiff 节点7. 最佳实践与工程建议7.1 固定种子与版本AI 生成结果有随机性。当你调好一套满意的参数后第一件事是固定 seed并在文件名中记录参数情况。这样后续需要生成同风格内容时可以快速复制也让结果可复现。建议用如下格式命名输出目录style_tangdynasty_lora_v2_seed20240901_cfg7/7.2 批量生产要建好数据管线如果你想做“小合集”一次性生成多个仕女跳舞视频一定不要全部依赖手动操作。建议把流程固化为若干脚本第一步使用固定提示词模板生成多张仕女底图。第二步准备多种姿态参考图建立姿态库。第三步逐批送入 ComfyUI 工作流自动输出视频。第四步脚本检查输出文件大小和非空帧。一个简单的 Python 脚本可以帮你在生成后整理文件import os import shutil from pathlib import Path source_dir Path(output_frames) video_dir Path(output_video) video_dir.mkdir(exist_okTrue) for frame_dir in sorted(source_dir.iterdir()): if not frame_dir.is_dir(): continue frames sorted(frame_dir.glob(*.png)) if len(frames) 8: print(f[WARN] {frame_dir.name} 帧数不足: {len(frames)}) continue print(f[INFO] {frame_dir.name} 有效帧数: {len(frames)})这个脚本的作用是检查每个生成批次是否包含足够帧避免坏数据混入后续视频合成。你可以把它集成到自己的批处理流程中。7.3 注意素材版权与内容规范使用古画素材时要注意唐代古画大多已进入公有领域可以作为创作基础。但如果你用了某博物馆的数字化扫描图、现代复刻画或摄影师拍摄的文物图片需要确认版权归属。发布平台对 AI 生成内容通常有标识要求建议按平台规则如实标注“AI 生成”或“AI 辅助创作”避免误判。另外做这类文化题材时尽量以展示传统服饰、传世古画之美为主不要做恶搞或猎奇改编避免涉及历史人物的不当演绎。7.4 显存与性能优化建议生成视频时先把分辨率降到 512 级别验证完效果再放大。使用--xformers或--force-upcast-attn等参数降低显存占用。关掉浏览器多余标签页ComfyUI 的实时预览本身就占用显存。如果想让视频更长不要直接加大帧数建议分段生成后用剪辑软件拼接保持单次生成不超过 32 帧。8. 总结与进阶学习路线这篇文章从零讲解了一套“让唐代仕女跳舞”的完整 AI 工作流重点包括文生图生成仕女风格图像、ControlNet 姿态控制、AnimateDiff 图生视频以及最后的视频合成与排查方法。读完你应该能做到用提示词稳定生成唐代仕女风格的图片。用 ControlNet 让生成的仕女人物匹配指定舞蹈姿态。用 AnimateDiff 把静态图变成短视频。搭建自己的批处理管线把单条视频扩展成“小合集”。遇到视频崩坏、闪烁、爆显存等问题时能按模块拆解排查。如果你希望继续深入可以从这几个方向展开学习深入学习 ComfyUI掌握自定义节点和工作流复用。研究 LoRA 训练训练一个你专属的“仕女画风”模型。尝试 SVDStable Video Diffusion体验不同视频生成模型在古画动画上的差异。研究音频驱动技术让仕女不仅能跳舞还能对口型、唱歌。把这套流程试验几遍之后你就会发现真正难的不是“让 AI 跳一次舞”而是让 AI 每次都能稳定地跳出你想要的那一支舞。这也是 AI 工程化与传统“抽卡式创作”的核心区别。建议先复现本文的案例再考虑批量化和风格化毕竟只有把每一个环节都掌握了你才能在生成结果不稳定时知道问题出在哪里。
企业数字化 ERP 产品动态
相关推荐
从提示词到产线:多智能体代码审查的工程化落地实践 1. 从提示词到产线:为什么代码审查需要多智能体 代码审查这件事,写过几年代码的人都有体会。它表面上是一个“看代码”的动作,实际上背后牵扯的东西特别多:风格一致性、潜在缺陷、安全边界、可维护性、团队规范、上下文理解&#… · 2026/9/26 14:37:56
TeamAI-CLI:腾讯开源的团队级AI Agent中间层,让AI能力成为团队资产 1. 为什么团队需要一个 AI Agent 中间层1.1 从个人效率工具到团队能力资产过去一年多,我身边几乎每个开发者都在用 AI 编程助手。有人用 Claude CLI,有人用 Codex CLI,有人用各种 IDE 插件,每个人都在自己的终端里攒了一堆 prompt… · 2026/9/26 14:37:56
前端开发环境搭建:Node.js、npm、VSCode 配 TaoToken 统一 Key 通道 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 14:37:50
Kimi K3 登顶开源第一!用 TaoToken 统一 Key 打通 MoE Agent 调用链 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 15:13:20
5G核心网四类关键信令流程实战解析:注册、去注册、切换与EPC-5GC互通 1. 这不是教科书里的流程图,而是基站侧工程师每天盯着屏幕调试的真实信令流你打开Wireshark抓包时看到的那堆密密麻麻的NAS、S1AP、NGAP消息,不是抽象协议栈里的符号,而是5G网络里真实发生的“对话”。注册请求从UE发出,经过gNB、… · 2026/9/26 15:13:20
实时控制与工业Agent:伪命题背后的务实落地路径 从入行到现在的十多年里,我经手过不少控制系统项目,从PLC到DCS,从伺服到运动控制卡,从ISA-95金字塔底层的传感器校准到顶层的MES对接都摸过一遍。这几年AI概念大热,尤其是大语言模型带火“Agent”这个词之后࿰… · 2026/9/26 15:13:20
Codex + CC Switch 配置踩坑 最近在 Mac mini 上用 Codex CC Switch 接第三方 OpenAI 兼容 API,遇到两个问题:CC Switch 提示缺少 baseurl;配置后报 401,请求发到了 api.openai.com。记录一下解决过程。一、问题1. CC Switch 提示缺少 baseurl,要… · 2026/9/26 15:13:20
生死存亡之数字炸弹(2.1):用 kbhit 实现无阻塞按键检测的 TaoToken 配置骨架 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 15:13:13
Agent 接数据库的正确姿势:连接池、Text2SQL 校验与生产避坑指南 我见过太多团队在 Agent 接数据库这一步栽跟头。最常见的做法是把数据库连接串写进 system prompt,让大模型自己生成 SQL 直接执行,结果周五晚上被运维电话叫醒:“你的 Agent 把线上订单表扫了一遍”“连接数被打满了”“它删了一条不该删的数… · 2026/9/26 15:13:13
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46