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 | 添付するもの |
|---|---|---|
| 1つの領域を変更し、ほかは正確に保つ | 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>)。無人で処理を進める場合は、ツールのスキーマに従い、スキルが不足していることを明記してください。
最後の編集ではなく、元の画像から編集する
編集のたびに画像全体を再レンダリングして新たに生成するため、毎回少しずつずれが生じます。色が変わったり、顔の似ている度合いが下がったり、ロゴが崩れたりします。3回の編集を重ねると、3つの変更を一度に行う編集よりも、目に見えて品質が低下します。
そのため、編集結果が意図と異なる場合は、元の画像に戻って指示を書き直してください。修正をさらに修正してはいけません。出力アセットには file_id が付いているため、元の画像は引数を1つ指定するだけで使えます。
例外は、互いに独立した領域です。左側のランプにマスクを適用した後、右側のランプにもマスクを適用する場合、変更対象の画素が重ならないため、きれいに編集を重ねられます。
マスク
マスクは、変更してよい範囲を示します。アップロードした file_id を指定するか、画像自体のアルファチャンネルですでに範囲が定義されている場合は for_transparency フラグと for_nontransparency フラグを使用してください。すでに切り抜かれているアセットなら、マスクを手作業で作成する手間を省けます。
マスクの境界は重要です。輪郭の柔らかい被写体に境界の硬いマスクを使うと、ハローが残ります。境界が髪や煙、ガラスの場合は、マスクではなく指示による編集を優先してください。モデルのほうが、四角形のマスクよりも境界を適切に処理できます。
変更せずに保つもの
指示の中で明示してください。モデルは、指示に書かれたことには忠実ですが、書かれていないことには無頓着です。そのため、「バナーを赤に変更し、ポーズ、照明、鎧はそのまま正確に保つ」という指示は、「バナーを赤にする」とは実質的に異なります。わずか6語の追加で、再生成を避けられます。
角度の指定はプロンプトの小技ではありません
テキストから画像を生成するプロンプトに「背後から見た同じキャラクター」と付け加えても、別のキャラクターが生成されます。既存のアセットを別の視点から再レンダリングするには、multi_angle と、機能として camera_transform を報告するモデルが必要です。視点は構造化された camera パラメーターで指定し、横、背面、上方からの視点に回転させたり、ズームしたりします。モデルが受け付けるガイダンスタイプで元の画像を添付してください。
アップスケーリング
アップスケーリングは、画像の描写内容を変えずに解像度を上げます。生成モデルを経由させてはいけません。大きなサイズで再レンダリングすると、承認済みの画像に似ているだけの新しい画像になってしまいます。承認済みのアートは、この工程でも変更せずに保つ必要があります。filter.use_case: "upscaling" を使用してください。
レイヤー
split_into_layers は、リギング、視差、またはコンポジットに使える、本当に独立した編集可能な要素を生成します。使用する前に、ユーザーが実際に何を求めているのか確認してください。「PSDをください」という要望は、たいてい「背景を透過したアートをください」という意味であり、その場合は background_removal を使う方がはるかに低コストです。どちらを意味しているのか曖昧な場合は、確認してください。
実例
「この承認済みのヒーローのポートレートを、ストア向けに9:16バージョンにしてください。」
- これは
reframingであり、ポートレートを再生成することではありません。再生成すると、承認済みの画像が失われます。 filter.use_case: "reframing"を指定してlist_base_modelsを実行し、最初の結果を選びます。- ポートレートは以前の実行で生成されたものなので、すでに
file_idがあります。アップロードは不要です。 - そのファイルを
init_imageに指定し、目標の比率と、変更してはならないものを明記した指示を添えてestimate_forge_priceを実行します。「シーンを上下に広げ、キャラクター、トリミング、ライティングは変更しないでください。」20 CUsを超える場合は、表を提示して明示的な承認を待ちます。 - まったく同じ引数で
execute_forgeを実行し、その後poll_interval_secondsの間隔でget_forge_runをポーリングします。 - 被写体が維持されていることをユーザーが確認できるよう、結果を元の画像と並べて提示します。
よくある間違い
- 元の画像に戻らず、編集の上に編集を重ねる。
- 変更する領域が1つだけなのに
image_editingを使い、その後、他の部分に生じた影響を説明する。 - 維持すべき要素を明記しない。
cameraを指定したmulti_angleを使わず、プロンプトに「後ろから」を追加する。- 画像を大きくするために、承認済みのアセットを生成モデルで再レンダリングする。
- ユーザーが背景透過だけを望んでいるのに、
split_into_layersを使う。 - すでに
file_idが付与されている、Asset Layer が生成済みのアセットをアップロードする。