mcpField
S
scenario-image-editing

scenario-image-editing

github.com/scenario-labs创意与媒体1.2k483 次安装1 天前更新
代码仓库

关于 scenario-image-editing

scenario-image-editing 是围绕 Scenario 工具模型编辑现有图像的技能,面向需要后期处理、放大或扩展画布的创作者。它按任务区分专用模型,并说明参数发现、成本估算与处理顺序。

主要功能

  1. 01通过工具模型编辑现有图像
  2. 02提供模糊、调色、锐化等效果
  3. 03比较不同图像放大模型
  4. 04区分扩展画布与调整尺寸
  5. 05指导成本估算和效果串联

适用场景

  1. 01为交付尺寸调整图像并进行调色
  2. 02放大图像并比较细节保真度
  3. 03为图像添加颗粒或锐化效果

MCP 相关

该技能指导通过 Scenario 的 MCP 工具调用工具模型,以 model_run 执行图像处理,并使用相关工具发现参数、估价及查看输出。

安装

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

$npx skills add https://github.com/scenario-labs/skills --skill scenario-image-editing

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

详细介绍

场景图像编辑

概述

编辑现有图像时,只需在工具模型上执行一次 model_run:输入一个文件,调整几个数值参数,即可输出一个或多个资源,大多数情况下无需输入提示词。生成新图像、由提示词驱动的编辑和蒙版修补属于 scenario-image;对视频素材进行相同处理则属于 scenario-video-editing;堆叠图层属于 scenario-video-assembly(Image Studio)。连接和核心流程:scenario。如果当前可用技能中缺少此处提到的同类技能,请让用户安装(npx skills add scenario-labs/skills --skill <name>);若无人值守,则根据工具架构继续操作,并标明这一缺口。

快速参考

有两种发现路径。按标签使用 search(target="models",public=true)浏览某个类别。单个实用工具属于一项能力,因此应使用 recommend,设置 capability="img2img",并用用户自己的话描述需求。这样可以找到专用工具,并将其价格与通用编辑器进行比较;如果它只针对实用工具任务推荐通用编辑器,则按名称使用 search 并设置 filters={"tags": ["tool"]} 查找工具,如水印一行所示:

需求路径
效果类别search,filters={"tags": ["Post Processing"]}(40 个结果,涵盖图像和视频)
放大或增强search,filters={"tags": ["image-upscale"]}
抠图、重新打光、图层、矢量recommend:在撰写本文时,每条路径都返回了专用工具,并根据测得的成本和延迟与通用编辑器进行排序;而 search 返回了相同的工具,却没有提供排序依据
水印、嵌入文字search,query="text remover",按名称查找:在撰写本文时,recommend 将水印移除任务推荐给了通用指令编辑器,漏掉了专用的 Photoroom Text Remover
图块、图表无:model_scenario-image-slicer、model_scenario-grid-maker(固定的第一方 ID;每个 Scenario 都有一个用于该任务的确定性工具)

下方的 Reframe ID 是撰写本文时找到的结果:请重新发现。

效果系列

18 种效果共用一种形态:必需的 image 文件,加上 1 到 3 个调节项:模糊、色差、色彩校正、晶化、立体派、去饱和、溶解、减淡和加深、发光和泛光、颗粒、3D 色彩 LUT、油画、抛物线化、色调分离、锐化、曝光过度、着色、晕影。

各工具的取值范围各不相同,且无法凭直觉推断。posterizeThreshold 的范围是 0 到 1(默认值为 0.5),而 Color Correction 的 temperature、contrast 和 saturation 范围是 -100 到 100,gamma 范围是 0.2 到 2.2;这些信息都来自 model_schema_get。并非每个调节项都是数字:Grain 使用包含 22 个值的配置文件枚举、一个色温值和一个布尔值,完全没有强度控制。这些配置文件代表外观,而非强度;其中一些会柔化图像,而不是添加纹理,因此要与输入图像对比,不要想当然地认为颗粒效果已生效。Grain 的 grainColorTemp(2000 到 10000)还暗藏着一个更棘手的问题:默认值 6500 并非中性;它会让画面变暖、提亮黑色,其程度超过轻微的 LUT 处理,因此纹理步骤会悄然重新调整色彩,而色彩校正步骤刚刚设定的效果也会被改变。请谨慎设置,并将结果与已调色的输入图像对比,而不是与原图对比;尚未验证哪个方向能使其趋于中性,因此批量处理前,请分别比较 6500 两侧的各一帧。默认值也不一致:Color Correction 的默认值不会产生效果(不设置任何值会原样返回输入图像,但仍会收费),而 LUT 和 Posterize 则自带可见的默认效果。

lutStyle 包含 140 多个精确字符串,其中有一个带空格(cgc_look_teal and orange),因此请从架构中复制,不要重新输入。前缀用于分组:cgc_film_emulation_* 和 rec709_* 模拟胶片类型,cgc_log_to_rec709_* 适用于 log 素材,用在普通渲染图上会导致对比度过高;列表中的大部分(cgc_look_*、pond5_*、distant_land_*、shutterstock_*)则是外观包。还有 5 个不带前缀的预设,其中一个 teal_orange 是模型的默认值:如果不设置 lutStyle,最终调色效果会是青橙色,而非中性。

这些效果会在 model_run 内完成,并返回附带资源的 status: "success",因此无需调用 jobs_wait。它们采用固定价格:撰写本文时,无论输入尺寸如何,每种效果的 dry-run 费用都是 1 CU(Resize Image 为 2),因此只需对该系列中的一种工具调用 dry_run 即可;而放大工具的价格会随输出像素数量变化。串联使用时,将一次运行返回的 asset_id 传给下一次运行。本技能的处理流程顺序是:先调整形状并放大(见下一节),再调色,最后添加纹理。颗粒和锐化属于高频效果,之后进行的任何缩放都会将其插值抹去,因此应最后应用,并在交付分辨率下处理;LUT 对分辨率不敏感,可放在缩放前后任一位置。

放大是一类模型,而非一个调节项

放大模型属于 img2img 模型,其中许多完全不需要提示词:通过 filters={"tags": ["image-upscale"]} 发现(撰写本文时有 13 个结果)。保真型放大模型(Topaz、Recraft Crisp)会锐化并放大现有内容,适用于输出必须忠于原图的情况;创意型模型(Magnific Creative、Clarity 系列)带有创意调节项,会生成细节,也可能重绘细微特征,因此要与源图对比。尺寸设置只能从 model_schema_get 获取,且因模型而异:可能是放大倍数、目标分辨率或百万像素数,也可能只有 image、没有调节项(2x 到 16x 和 4K 到 8K 是常见上限,但并非硬性界限)。费用取决于输出像素数量:在批量处理前,使用 dry_run=true 预估精确尺寸的价格;它应放在 model_run 的顶层,绝不能放在 parameters 内。与上述效果不同,放大任务可能超出 model_run 的等待时限:适度放大仍会内联返回 status: "success";更大规模的放大会返回 status: "in_progress" 和一个 job id,此时需调用 jobs_wait,并将返回的任何 pending_job_ids 作为 job_ids 再次传入。专用变体可保护可平铺纹理的接缝,以及 360 度全景图的连续性:参见 scenario-textures 和 scenario-skyboxes。

扩展画布有四种不同的工具

  • Reframe(model_scenario-gemini-reframe):包含一个 aspectRatio 枚举和一个 resolution 档位(1K、 2K、4K),因此无法指定精确像素;prompt 为可选项。该枚举只是近似值:4:5 返回的结果为 1856x2304(29:36),所以若要得到真正的比例,需要在之后执行 Resize Image(fit: "cover",这样会裁掉边缘的一小条,而不是挤压图像)。
  • Smart Reframe(model_scenario-smart-reframe):必须指定精确的 width 和 height,并会保护图像上的文字、品牌标识和调色板。textDensity: "DENSE" 的成本会高得多。
  • Photoroom Expand:可精确指定最高为 4096 的 outputWidth 和 outputHeight,并可设置 seed。
  • Photoroom Uncrop:重建被画面边缘截断的主体。

Resize Image(model_scenario-resize-image,固定的一方工具 ID:Scenario 唯一的精确尺寸调整工具,因此发现工具只会重新得出同一结果)不属于上述任何一种:它会将像素缩放到 width 和 height(只指定其中一个时会保持比例),绝不会扩展画布;fit 决定如何处理比例不匹配的尺寸框(默认的 contain 可能会让图像小于尺寸框,stretch 会拉伸变形,cover 会居中裁切到精确尺寸)。

这两种 Reframe 都会通过生成式重构画面,而不是填充画布;其价格是效果工具的数十倍,因此是整个流程中最昂贵的一步:请对它们执行 dry_run。它们会重新渲染图像,因此应先进行重构,再做色彩处理:若提前进行色彩处理或加颗粒,效果会有一部分被重新诠释。

数量

效果工具接收标量 image。Resize Image(images,最多 10 张)和 Grid Maker(images,最多 100 张)支持 array: true;若传入单个 ID,该 ID 会被静默丢弃,运行仍会成功,但实际上会忽略它。

操作示例:为主视觉调色,然后按指定尺寸导出

  1. 对文件执行 upload_asset,然后执行 upload_asset_complete,除非文件以小于约 100KB 的大小内联上传。
  2. 先调整形状:使用 Resize Image 调整到交付尺寸,即使只有一个文件,也要将 images 作为数组传入。
  3. 对 model_scenario-postprocessing-lut 执行 model_schema_get(固定的一方工具 ID:Scenario 唯一的确定性 LUT 工具,因此发现工具只会重新得出同一结果),从其枚举中选择 lutStyle,使用 model_run 和 dry_run=true 估算价格,然后运行工具,并将 lutIntensity 设为接近 0.6,以获得克制的调色效果。
  4. 最后对该输出添加颗粒,这样纹理大小就能匹配最终画面。
  5. 使用 asset_display 检查效果,再用 asset_download 保存。

常见错误

  • 使用 image_edit MCP 工具,或本地的 ImageMagick 或 Pillow:此处的接口是对工具模型调用 model_run。
  • 为效果工具编写提示词(例如“增加海报化效果”):它们只读取数值。Reframe 和图层提取器可以读取文本。
  • 调色前就切片或提取图层:两者都会为每个部分返回一个资源,因此之后每个部分都需要单独运行一次。
  • 使用 asset_download 保存描摹出的 SVG:下载结果会被栅格化,因此请使用 curl -L 从 asset_get 的 url 获取存储的文件。

评论

支持 Markdown