mcpField
G
generate-image

generate-image

github.com/dojocodinglabs创意与媒体16664 次安装2 周前更新
代码仓库

关于 generate-image

为 Remotion 视频项目生成定制图像的技能,帮助编写提示词并选择 remotion-media 或 Replicate,还介绍如何将生成图像加入项目并迭代调整。

主要功能

  1. 01图像提示词规划
  2. 02通过 remotion-media 生成
  3. 03Replicate 模型搜索与运行
  4. 04参考图像使用指引
  5. 05将图像加入 Remotion

适用场景

  1. 01制作场景背景或缩略图
  2. 02生成风格一致的一组场景图
  3. 03使用指定的 Replicate 图像模型

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/dojocodinglabs/remotion-superpowers --skill generate-image

安装后在 Claude Code 中输入/generate-image确认已加载。

详细介绍

生成图像 — AI 图像创作

帮助用户为其 Remotion 视频项目生成自定义图像。

工作流

1. 了解需求

如果尚不明确,请询问用户:

  • 图像用途是什么? — 场景背景、缩略图、角色、产品图、抽象艺术、图表?
  • 风格 — 照片级真实感、插画、3D 渲染、扁平设计、水彩、像素艺术?
  • 尺寸 — 横向(1920x1080)、纵向(1080x1920)、正方形(1080x1080)?
  • 情绪/色彩 — 明亮、暗色、暖色、冷色、霓虹、柔和色?
2. 编写提示词

使用完整句子编写提示词,并按照 Replicate 官方的 prompt-images skill 中的技巧进行创作(该技巧与模型无关,因此也适用于 KIE)。按以下顺序涵盖:主体、风格、光照、相机角度、色彩方案、背景细节。

良好的提示词示例:

  • “从上方俯瞰一间现代科技初创公司办公室,设计简洁极简,白色办公桌搭配蓝色点缀,大窗户透入明亮的自然光,照片级真实感。”
  • “深色背景上的抽象几何图案,由发光的霓虹紫色和蓝色线条构成,未来主义 3D 渲染。”
  • “一只挥手的友善机器人吉祥物,卡通插画,柔和色彩,纯白背景,适合作为徽标。”
  • “市中心的天际线剪影映衬在暖橙色和粉色的黄金时段天空下,无人机航拍镜头,电影感。”

对于视频,还需:

  • 留出负空间,供 Remotion 放置标题或字幕,并要求“无文字、无水印”;文字由 Remotion 渲染。
  • **保持场景一致:**在视频的每张图像中逐字复用同一段风格描述,并将第一张效果良好的图像作为参考。参见 skills/remotion-production/rules/image-generation.md。
3. 通过 remotion-media 生成(默认)
Use remotion-media generate_image:
- prompt: [crafted prompt]
- output_name: img-hero
- aspect_ratio: 16:9  # always pass it (default is 1:1); 9:16 for shorts
- resolution: 2K      # default 1K; use 2K+ for 1080p compositions
- image_urls: [optional reference images, up to 8, public URLs only]

图像会保存到启动 Agent 所在目录中的 public/img-hero.png,因此请从 Remotion 项目根目录启动 Agent(Claude Code、Codex、Gemini CLI…)。image_urls 中的参考图像必须是 KIE 可以获取的公开 URL,而不能是 public/ 中的文件。

4. 通过 Replicate 生成(特定模型)

当用户需要特定模型(文字排版、多张参考图、特定外观)或 KIE 失败时,使用 Replicate。这需要本地的 replicate-mcp 服务以及 REPLICATE_API_TOKEN。遵循 Replicate 官方的 find-models 和 run-models skills:

  1. 先搜索,再读取架构。 使用 search_models 并设置 body: "<task>",然后调用 get_models(model_owner、model_name)和 list_models_examples。只能使用架构中存在的输入;宽高比输入的名称因模型而异。
  2. 创建预测。 官方模型:使用 model_owner、model_name 和 input 调用 create_models_predictions。社区模型:使用 version: "owner/name:<version_id>" 调用 create_predictions。快速图像模型可以使用 Prefer: "wait"(最多阻塞 60 秒)。
  3. 轮询 get_predictions,并传入 prediction_id,直到 status 为 succeeded、failed 或 canceled。
  4. 立即下载 output 中的 URL(1 小时后会过期):
mkdir -p public/images
curl -L -o public/images/img-[descriptive-name].png "<output URL>"

截至 2026 年 10 月的入门选择(调用前先搜索并读取架构):

  • FLUX.2 Pro / Max(black-forest-labs/flux-2-pro、-max):照片级真实感,可通过 input_images 使用多张参考图像
  • Nano Banana Pro(google/nano-banana-pro):带文字的图像、编辑
  • GPT Image 2(openai/gpt-image-2)
  • Ideogram v3 Quality / Turbo(所有者为 ideogram-ai,每个档位对应一个 ID;搜索 ideogram):文字排版、徽标
  • FLUX Kontext Pro(black-forest-labs/flux-kontext-pro):根据单张参考图像进行编辑(input_image)

完整流程见 skills/remotion-production/rules/replicate-models.md,关于提供方选择和一致性的指导见 rules/image-generation.md。

5. 在 Remotion 中展示用法

使用 remotion 中的 <CanvasImage> 添加图片,官方的 remotion-markup 技能也是这样做的(<Img> 仍可使用;两者都接受 effects)。尺寸和动画遵循其 images.md 和 timing.md。路径取决于提供方:generate_image 会保存到 public/<output_name>.png,Replicate 会下载到 public/images/。

import { CanvasImage, Easing, interpolate, staticFile, useCurrentFrame, useVideoConfig } from "remotion";

const frame = useCurrentFrame();
const { fps } = useVideoConfig();

// As a background (remotion-media output)
<CanvasImage
  src={staticFile("img-hero.png")}
  style={{ width: "100%", height: "100%", objectFit: "cover" }}
/>

// As an element that pops in (Replicate download)
<CanvasImage
  src={staticFile("images/img-product.png")}
  style={{
    scale: interpolate(frame, [0, 0.6 * fps], [0, 1], {
      extrapolateLeft: "clamp", extrapolateRight: "clamp",
      easing: Easing.spring({ damping: 200 }),
      output: "perceptual-scale",
    }),
  }}
/>

如需为静态图像添加缓慢的 Ken Burns 运镜效果,请参阅 skills/remotion-production/rules/image-generation.md。

6. 迭代

如果图像不理想:

  • 调整提示词——更具体地说明问题所在(有关编辑和常见问题,请参阅 prompt-images)
  • 生成多个变体,让用户挑选
  • 仅在模型支持时使用排除项(“无文字,无水印”);有些模型使用负面提示词后效果会变差
  • 每次只改一处,以确保图像仍与其他场景匹配

评论

支持 Markdown