关于 layer-image-editing
layer-image-editing 是 Layer 的图像编辑技能,涵盖局部修改、重新构图和放大等操作。它面向需要保留已批准内容并减少意外变化的图像编辑流程。
主要功能
- 01按编辑目标匹配用途
- 02说明使用蒙版进行局部修改
- 03指导重新构图和多角度编辑
- 04涵盖图层拆分与背景移除
- 05建议从源图开始迭代
- 06区分图像放大与重新生成
适用场景
- 01只修改图像一处并保留其余部分
- 02调整图像以适配新宽高比
- 03创建可用于合成的独立元素
- 04在不改变画面内容时提高分辨率
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ layerai/ skills --skill layer-image-editing安装后在 Claude Code 中输入/layer-image-editing确认已加载。
详细介绍
图层图像编辑
概述
编辑不是附带图像的生成。每种意图都对应自己的 use_case,选错通常会导致编辑改动本不该触碰的内容。
| 用户想要 | filter.use_case | 附加 |
|---|---|---|
| 更改一个区域,其余部分保持原样 | inpainting | init_image 和 mask |
| 根据指令更改整张图像 | image_editing | init_image |
| 扩展当前画框以外的内容 | reframing | init_image |
| 调整为另一种宽高比 | reframing | init_image |
| 同一主体的另一个角度 | multi_angle | init_image 或 reference_image |
| 可单独编辑的多个图层 | split_into_layers | init_image |
| 抠出主体 | background_removal | init_image |
| 增加像素,保持画面不变 | upscaling | init_image |
| 将干净的线稿转为完成的作品 | image_editing | lineart 或 scribble |
| 从栅格图生成清晰的 SVG | vectorization | init_image |
循环流程和费用门槛见 layer 技能。如果这里提到的同级技能不在可用技能中,请让用户安装(npx skills add layerai/skills --skill <name>);若需无人值守地继续,请根据工具架构进行操作,并指出这一缺失。
基于原图编辑,而不是基于上一次编辑
每轮编辑都是一次全新的生成,会重新渲染整张图像,因此每次都会有少许偏差:颜色发生变化,面部失去相似度,徽标变形。叠加三轮编辑,效果会明显不如一轮完成这三项修改。
因此,编辑结果不理想时,请回到原图,重新编写更好的指令。不要再去修正修正结果。输出资源带有 file_id,因此只需一个参数就能重新使用原图。
例外情况是真正彼此独立的区域:先遮罩左边的灯,再遮罩右边的灯,两者修改的是不重叠的像素,叠加起来效果良好。
蒙版
蒙版标记允许修改的区域。可以提供已上传文件的 file_id,也可以在图像自身的 alpha 通道已标明该区域时使用 for_transparency 和 for_nontransparency 标志;对于已经抠出的资源,这样可以省去手动制作蒙版。
蒙版边缘很重要。边缘生硬的蒙版用于边缘柔和的主体时,会留下光晕。当边界涉及头发、烟雾或玻璃时,优先使用指令编辑而不是蒙版,因为模型处理边界的效果比你的矩形蒙版更好。
保持哪些内容不变
在指令中明确说明。模型会严格处理你提到的内容,却可能忽略你没提到的内容,因此“把横幅改成红色,同时保持姿势、光线和盔甲完全不变”,与“把横幅改成红色”有实质区别。多写这几个词,就能少重试一次。
角度不是提示词技巧
在文生图提示词后面追加“同一角色的背面视图”,生成的会是另一个角色。要从另一个视角重新渲染已有资源,需要使用 multi_angle、能力报告中包含 camera_transform 的模型,以及通过结构化 camera 参数指定视角;该参数可绕转到侧面、背面或顶部,也可进行缩放。使用该模型支持的引导类型附加原图。
放大
放大只增加分辨率,不改变画面内容。绝不能通过生成模型处理:以更大尺寸重新渲染会生成一张仅仅看起来相似的新图像,而已批准的作品必须在此步骤中保持不变。请使用 filter.use_case: "upscaling"。
图层
split_into_layers 会生成真正分离、可独立编辑的元素,适用于骨骼绑定、视差效果或合成。使用前,先确认用户的实际需求:“给我一个 PSD”通常是指“给我一张透明背景的图片”,这种情况应使用 background_removal,成本也低得多。如果请求含糊不清,请询问用户指的是哪一种。
示例
“把这张已确认的英雄角色肖像改成 9:16 版本,用于商店。”
- 这是
reframing,不是重新生成肖像。重新生成会失去已确认的版本。 - 使用
list_base_models,并设置filter.use_case: "reframing",选择第一个结果。 - 这张肖像来自之前的一次运行,因此已有
file_id。无需上传。 - 使用该文件作为
init_image,指定目标宽高比,并在指令中说明哪些内容不得改变,从而调用estimate_forge_price:“向上和向下扩展场景,保持角色、裁切和光照不变。”如果价格超过 20 CUs,请展示价格表并等待用户明确同意。 - 使用完全相同的参数调用
execute_forge,然后按poll_interval_seconds轮询get_forge_run。 - 将结果与原图并排展示,让用户确认主体保持不变。
常见错误
- 在编辑结果上继续叠加编辑,而不是回到源图。
- 只想修改一个区域,却使用
image_editing,然后再解释附带损坏。 - 未说明哪些内容必须保持不变。
- 在提示词中追加“从背后”,而不是使用带有
camera参数的multi_angle。 - 为了放大已确认的素材,通过生成模型重新渲染。
- 用户只想要透明背景时,却使用
split_into_layers。 - 上传已经生成、且已有
file_id的素材 Layer。