Halaman ini diterjemahkan secara otomatis. Menemukan kesalahan?Bantu perbaiki.
Skip to content

Perluas Kanvas AI ​

Perluas kanvas gambar dengan pengisian bertenaga AI (outpainting). Memperluas gambar ke segala arah dan mengisi area baru dengan konten yang dihasilkan AI yang cocok dengan gambar yang ada.

API Endpoint ​

POST /api/v1/tools/image/ai-canvas-expand

Pemrosesan: Asinkron (mengembalikan 202, polling /api/v1/jobs/{jobId}/progress untuk status melalui SSE)

Bundel model: object-eraser-colorize (1-2 GB)

Parameter ​

ParameterTipeWajibBawaanDeskripsi
filefileYa-Berkas gambar (multipart)
extendTopintegerTidak0Piksel untuk memperluas di bagian atas
extendRightintegerTidak0Piksel untuk memperluas di bagian kanan
extendBottomintegerTidak0Piksel untuk memperluas di bagian bawah
extendLeftintegerTidak0Piksel untuk memperluas di bagian kiri
tierstringTidak"balanced"Tingkat kualitas: fast, balanced, high
formatstringTidak"auto"Format keluaran: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
qualityintegerTidak95Kualitas keluaran (1-100)

Setidaknya satu arah perluasan harus lebih besar dari 0.

Contoh Permintaan ​

bash
curl -X POST http://localhost:1349/api/v1/tools/image/ai-canvas-expand \
  -F "[email protected]" \
  -F 'settings={"extendTop":200,"extendBottom":200,"extendLeft":100,"extendRight":100,"tier":"balanced"}'

Respons ​

Respons Awal (202 Accepted) ​

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

Progres (SSE di /api/v1/jobs/{jobId}/progress) ​

event: progress
data: {"phase":"processing","stage":"Expanding canvas...","percent":50}

Hasil Akhir (melalui SSE) ​

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

Catatan ​

  • Memerlukan bundel model object-eraser-colorize untuk dipasang (1-2 GB).
  • Menggunakan outpainting berbasis LaMa untuk menghasilkan konten bagi wilayah yang diperluas.
  • Parameter tier menukar kecepatan dengan kualitas: fast menghasilkan hasil dengan cepat dengan kemungkinan artefak, high membutuhkan waktu lebih lama tetapi menghasilkan pengisian yang lebih halus dan koheren.
  • Nilai perluasan dalam piksel. Dimensi gambar akhir akan menjadi: lebar asli + extendLeft + extendRight kali tinggi asli + extendTop + extendBottom.
  • Untuk format keluaran yang tidak dapat dipratinjau di peramban (HEIC, JXL, TIFF), pratinjau WebP dihasilkan bersama keluaran utama.
  • Mendukung format input HEIC/HEIF, RAW, TGA, PSD, EXR, dan HDR melalui dekode otomatis.