AI Film Workflow Skill
从一张图片到完整电影的系统化创作技能
🎯 Skill Purpose
这个skill帮助你使用AI工具(如Midjourney、Kling AI等)从单张图片创建完整的电影短片。基于"One Image to Movie"方法论,提供结构化的工作流程。
📋 When to Use This Skill
当用户请求以下任务时自动激活:
- •"帮我用AI制作一个短片"
- •"从这张图片生成电影"
- •"创建分镜故事板"
- •"设计AI视频工作流"
- •"生成电影分镜网格"
- •任何涉及"AI电影"、"图片转视频"、"分镜设计"的请求
🚀 Core Workflow
Phase 1: 项目初始化
yaml
步骤1: 收集需求 - 询问用户的创作主题 - 确定目标时长(1-5分钟 / 5-15分钟) - 了解风格偏好(现实主义 / 艺术化 / 科幻等) - 确认是否有起点图片 步骤2: 规划网格规模 - 1-2分钟:推荐3×3 = 9格 - 2-5分钟:推荐4×5 = 20格 - 5-15分钟:推荐6×10 = 60格 步骤3: 选择叙事结构 - 史诗衰败:时间流逝主题 - 英雄旅程:冒险成长故事 - 双线叙事:平行对比 - 循环叙事:首尾呼应
Phase 2: 提示词生成
使用三层架构生成完整提示词:
python
def generate_prompt(project_config):
"""
生成完整的分镜网格提示词
"""
prompt = f"""
# 第一层:全局约束
创建一个 {project_config['rows']}×{project_config['cols']} 的电影分镜网格
视觉风格:{project_config['visual_style']}
色彩调色板:{project_config['color_palette']}
光照系统:{project_config['lighting']}
禁止事项:
❌ {', '.join(project_config['forbidden_items'])}
# 第二层:面板结构
{generate_panel_structure(project_config)}
# 第三层:单元描述
{generate_panel_details(project_config)}
"""
return prompt
关键原则:
- •每个面板必须包含:镜头类型 + 叙事情境 + 具体动作 + 视觉构图 + 情感氛围
- •重复核心视觉元素确保一致性
- •使用具体的色彩代码(如#D4A574)而非模糊描述
Phase 3: 分镜生成与质量检查
markdown
生成后立即执行检查清单: □ 视觉一致性检查 □ 色调统一? □ 核心对象外观一致? □ 光照方向合理? □ 叙事连贯性检查 □ 故事能讲通? □ 时间流逝标记清晰? □ 无逻辑跳跃? □ 技术规范检查 □ 无多余文字? □ 分辨率统一? □ 无AI瑕疵?
Phase 4: 图生视频
markdown
Kling AI 最佳实践: - 时长:5秒(最佳平衡点) - 运动强度:3-5/10 - 使用起始帧锁定 - 单个动作而非多个复杂动作 生成策略: 1. 先生成关键面板(第1、10、20格) 2. 验证质量和一致性 3. 批量生成其余面板 4. 记录每个片段的参数以便重新生成
Phase 5: 剪辑与导出
markdown
剪辑流程: 1. 先剪辑无声版本 2. 确定视觉节奏 3. 添加音频层: - 环境音(-30dB到-20dB) - 音效(-15dB到-5dB) - 音乐(-20dB到-10dB) - 细节音(-25dB到-18dB) 4. 色彩校正统一 5. 最终输出(1080p+, H.264, 10Mbps+)
🎨 Interactive Template Generator
当用户请求创建项目时,使用AskUserQuestion工具收集信息:
yaml
Question 1: 选择项目规模 - "小试牛刀(9格,1-2分钟)" - "标准短片(20格,2-5分钟)(推荐)" - "中篇作品(60格,5-15分钟)" Question 2: 选择叙事类型 - "史诗衰败(时间流逝主题)" - "英雄旅程(冒险成长)" - "双线叙事(平行对比)" - "自定义" Question 3: 视觉风格 - "照片级现实主义" - "艺术插画风格" - "概念设计风格" - "自定义" Question 4: 是否有起点图片? - "是,我会提供" - "否,需要AI生成"
📤 GitHub Auto-Upload Feature
自动保存到GitHub仓库
当用户完成一个项目后,询问是否保存到GitHub:
python
def save_to_github(project_data):
"""
自动将项目保存到 github.com/yanglele2/ai-film-workflow
"""
# 1. 创建项目文件夹
project_name = project_data['name']
project_path = f"examples/projects/{project_name}"
# 2. 生成项目文档
create_project_readme(project_data)
save_prompts(project_data['prompts'])
save_metadata(project_data['config'])
# 3. Git提交
git_commit_message = f"""
Add project: {project_name}
- Project type: {project_data['type']}
- Grid size: {project_data['grid_size']}
- Created with AI Film Workflow Skill
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
"""
# 4. 推送到GitHub
git_push_to_remote()
return f"✅ 项目已保存到: https://github.com/yanglele2/ai-film-workflow/tree/main/{project_path}"
保存内容:
- •
README.md- 项目概述和配置 - •
prompt.md- 完整的生成提示词 - •
metadata.json- 技术参数和配置 - •
storyboard.png- 分镜网格图(如果有) - •
notes.md- 制作笔记和经验总结
🛠️ Helper Functions
1. 提示词质量评估
python
def evaluate_prompt_quality(prompt):
"""
评估提示词质量并给出改进建议
"""
checks = {
"全局约束": check_global_constraints(prompt),
"视觉一致性": check_visual_consistency(prompt),
"细节层次": check_detail_levels(prompt),
"禁止事项": check_forbidden_items(prompt)
}
score = calculate_score(checks)
suggestions = generate_suggestions(checks)
return {
"score": score,
"passed": score >= 80,
"suggestions": suggestions
}
2. 网格布局优化器
python
def optimize_grid_layout(story_structure, target_duration):
"""
根据故事结构和目标时长优化网格布局
"""
# 三幕式分配
act1_panels = int(0.3 * total_panels) # 设定
act2_panels = int(0.5 * total_panels) # 对抗
act3_panels = int(0.2 * total_panels) # 解决
return {
"act1": f"面板 1-{act1_panels}",
"act2": f"面板 {act1_panels+1}-{act1_panels+act2_panels}",
"act3": f"面板 {act1_panels+act2_panels+1}-{total_panels}"
}
3. 时间线生成器
python
def generate_timeline(narrative_type, panel_count):
"""
生成时间线策略
"""
if narrative_type == "epic_decay":
return {
"1-10": "秒到分钟(快节奏)",
"11-15": "小时到天(过渡)",
"16-18": "年到十年(时间跳跃)",
"19-20": "数十年到世纪(终章)"
}
elif narrative_type == "hero_journey":
return {
"1-3": "平凡世界",
"4-5": "冒险召唤",
"6-12": "试炼之路",
"13-15": "深渊历险",
"16-20": "凯旋归来"
}
# ... 其他类型
📚 Knowledge Base Reference
当需要详细信息时,引用仓库中的文档:
yaml
提示词工程: /docs/WORKFLOW_GUIDE.md#part-1-提示词工程框架 网格规划: /docs/WORKFLOW_GUIDE.md#part-2-结构化规划方法 模板库: /prompts/ 案例研究: /examples/case_studies/abandon_ship/ 问题解决: /docs/WORKFLOW_GUIDE.md#part-9-常见问题与解决方案
🎯 Success Criteria
一个成功的AI电影项目应该:
✅ 视觉一致性 - 所有面板色调、风格统一 ✅ 叙事清晰 - 故事能被理解,情感弧线明确 ✅ 技术质量 - 无明显AI瑕疵,分辨率统一 ✅ 节奏感 - 镜头切换流畅,不枯燥不过载 ✅ 可复现性 - 提示词和参数完整记录
🔄 Iterative Workflow
mermaid
用户请求 → 收集需求 → 生成提示词 → 质量评估
↓
评分 < 80?
↓
优化建议 → 修改提示词
↓
评分 ≥ 80
↓
生成分镜 → 质量检查 → 图生视频
↓
剪辑导出 → 保存到GitHub
💡 Pro Tips
- •从小开始 - 第一次使用先做9格测试
- •保存参数 - 记录每个成功生成的参数配置
- •批量生成 - 先生成关键帧验证质量
- •迭代优化 - 不要期待一次完美,允许重新生成
- •社区分享 - 将成功案例保存到GitHub供他人学习
🚨 Common Pitfalls to Avoid
❌ 过度复杂 - 不要在单个面板中描述多个复杂动作 ❌ 忽略一致性 - 每个面板必须重复核心视觉元素 ❌ 模糊描述 - 用具体参数(色码、镜头类型)而非形容词 ❌ 跳过检查 - 生成后必须执行质量检查清单 ❌ 忘记保存 - 及时保存提示词和参数配置
📖 Example Invocations
Example 1: 快速开始
code
User: "帮我用AI做个关于孤独宇航员的短片" Claude: 我来帮你创建这个项目!基于"孤独宇航员"主题,我推荐: [使用AskUserQuestion收集更多信息] - 时长偏好?(推荐2-5分钟的20格) - 叙事重点?(时间流逝/内心挣扎/探索发现) - 视觉风格?(推荐照片级现实主义科幻) [生成完整提示词] [执行质量评估] [提供分步指导]
Example 2: 保存项目
code
User: "把这个项目保存到GitHub" Claude: [检查项目完整性] [生成项目文档] [Git commit和push] ✅ 项目已保存到: https://github.com/yanglele2/ai-film-workflow/tree/main/examples/projects/lonely-astronaut 包含内容: - README.md(项目概述) - prompt.md(完整提示词) - metadata.json(技术配置) - notes.md(制作经验)
🔗 Integration with Claude Code
这个skill自动集成到Claude Code中:
bash
# 激活方式1: 直接请求 "帮我创建AI电影" # 激活方式2: 使用skill命令 /ai-film-workflow # 查看skill状态 claude skills list | grep ai-film
📊 Metrics & Tracking
每个项目自动记录:
- •创建日期
- •网格规模
- •生成时间
- •迭代次数
- •最终评分
- •用户反馈
这些数据用于持续改进workflow。
🎓 Learning Path for Users
- •初学者 - 从9格开始,使用预设模板
- •中级 - 尝试20格,自定义提示词
- •高级 - 创建60格+,混合多种技巧
- •专家 - 贡献新模板到GitHub仓库
Remember: 这个skill的目标是让AI电影创作变得系统化、可复现、高质量。始终优先考虑用户体验和成品质量。