This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

オブジェクト消去

AIインペインティング(LaMaモデル)を使って画像から不要なオブジェクトを削除します。画像と、消去する領域を示すマスクを受け付けます。

API エンドポイント

POST /api/v1/tools/image/erase-object

処理: 非同期(202を返し、SSE経由でステータスを取得するには /api/v1/jobs/{jobId}/progress をポーリング)

モデルバンドル: object-eraser-colorize(1〜2 GB)

パラメータ

パラメータ必須デフォルト説明
filefileはい-ソース画像ファイル(multipart)
maskfileはい-マスク画像(白 = 消去する領域、黒 = 保持)。フィールド名 mask でアップロードする必要があります
formatstringいいえ"auto"出力形式: autopngjpgjpegwebptiffgifavifheicheifjxl
qualityintegerいいえ95出力品質(1〜100)

リクエスト例

bash
curl -X POST http://localhost:1349/api/v1/tools/image/erase-object \
  -F "[email protected]" \
  -F "[email protected]" \
  -F "format=png" \
  -F "quality=95"

レスポンス

初回レスポンス(202 Accepted)

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "async": true
}

進捗(/api/v1/jobs/{jobId}/progress でのSSE)

event: progress
data: {"phase":"processing","stage":"Inpainting...","percent":70}

最終結果(SSE経由)

json
{
  "phase": "complete",
  "percent": 100,
  "result": {
    "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "downloadUrl": "/api/v1/download/{jobId}/photo_erased.png",
    "previewUrl": "/api/v1/download/{jobId}/preview.webp",
    "originalSize": 245000,
    "processedSize": 230000
  }
}

補足

  • object-eraser-colorize モデルバンドル(1〜2 GB)のインストールが必要です。
  • マスクはソース画像と同じ寸法でなければなりません。白いピクセルは消去する領域を示し、AIがそれらをもっともらしい内容で埋めます。
  • 高品質なオブジェクト削除にLaMa(Large Mask Inpainting)を使用します。
  • ブラウザでプレビューできない出力形式の場合、メイン出力と併せてWebPプレビューが生成されます。
  • HEIC/HEIF、RAW、TGA、PSD、EXR、HDR の入力形式に自動デコードで対応します。