Dokumen ini menjelaskan parameter model penyelesaian penghapusan gambar, yang menghapus satu atau beberapa elemen—seperti orang, hewan peliharaan, objek, teks, atau watermark—dari gambar sambil mempertahankan latar belakangnya. Anda dapat menentukan area yang akan dihapus menggunakan gambar mask.
Panduan terkait: Image erase completion
Penting
- Dokumen ini hanya berlaku untuk wilayah China (Beijing). Untuk menggunakan model ini, Anda harus menggunakan API key dari wilayah China (Beijing).
- Model image-erase-completion saat ini hanya tersedia sebagai free trial. Setelah kuota gratis Anda habis, Anda tidak dapat lagi memanggil model ini karena opsi berbayar tidak didukung. Sebagai alternatif, kami merekomendasikan penggunaan Image editing - Qwen atau Image editing - Wan2.1.
Prasyarat
Buat API key dan ekspor API key sebagai variabel lingkungan.
Panggilan HTTP
Untuk mengurangi waktu tunggu dan mencegah timeout permintaan, layanan memproses permintaan secara asinkron. Anda perlu membuat dua permintaan:
- Create a task: Kirim permintaan untuk membuat task pembuatan gambar. Permintaan ini mengembalikan ID task.
- Query the result by task ID: Gunakan ID task yang dikembalikan untuk mengambil hasilnya.
Langkah 1: Membuat Tugas
POST https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis
Request headers Content-TypestringRequired Tipe konten permintaan. Nilainya harus application/json. AuthorizationstringRequired Kami merekomendasikan penggunaan Kunci API Model Studio Anda. Anda juga dapat menggunakan Kunci API DashScope. Contoh: Bearer d1xxx2a. X-DashScope-AsyncstringRequired Menentukan apakah pemrosesan asinkron diaktifkan. Anda harus mengatur parameter ini ke enable. Request body modelstringRequired Model yang akan dipanggil. inputobjectRequired Detail gambar input, seperti URL gambar. Properties image_urlstringRequired URL atau data yang dienkripsi Base64 dari gambar input. URL harus dapat diakses publik dan menggunakan HTTP atau HTTPS. Persyaratan gambar:
- Format: JPEG, PNG, JPG, BMP, WEBP.
- Resolusi: Minimal 512×512 piksel dan maksimal 4.096×4.096 piksel.
- Rentang panjang sisi: [512, 4.096] piksel.
- Ukuran file: Tidak boleh melebihi 10 MB.
- URL tidak boleh mengandung karakter Tionghoa.
mask_urlstringRequired URL atau data yang dienkripsi Base64 dari gambar mask yang menentukan area yang akan dihapus. URL harus dapat diakses publik dan menggunakan HTTP atau HTTPS. Persyaratan gambar:
- Format: JPG, JPEG, PNG, HEIF, WEBP.
- Resolusi: Minimal 512×512 piksel dan maksimal 4.096×4.096 piksel.
- Rentang panjang sisi: [512, 4.096] piksel.
- Ukuran file: Tidak boleh melebihi 10 MB.
Untuk membuat mask, lukis pada kanvas kosong dengan ukuran yang sama dengan gambar input. Area dengan nilai piksel bukan nol berfungsi sebagai mask penghapusan. Atau, gunakan human instance segmentation untuk langsung menghasilkan hasil segmentasi sebagai mask penghapusan. foreground_urlstring Optional URL atau data yang dienkripsi Base64 dari gambar mask yang menentukan area yang akan dipertahankan. URL harus dapat diakses publik dan menggunakan HTTP atau HTTPS. Persyaratan gambar:
- Format: JPG, JPEG, PNG, HEIF, WEBP.
- Resolusi: Minimal 512×512 piksel dan maksimal 4.096×4.096 piksel.
- Rentang panjang sisi: [512, 4.096] piksel.
- Ukuran file: Tidak boleh melebihi 10 MB.
Untuk membuat mask pertahanan, lukis pada kanvas kosong dengan ukuran yang sama dengan gambar input. Area dengan nilai piksel bukan nol berfungsi sebagai mask pertahanan. Atau, gunakan human instance segmentation untuk menentukan ID orang, yang mengisolasi area mask orang tersebut agar tidak dihapus. parametersobject Optional Parameter untuk pemrosesan gambar. Properties fast_modeboolOptional Menentukan apakah mode cepat diaktifkan. Nilai default adalah false. Dalam mode cepat, inferensi membutuhkan waktu sekitar seperempat dari mode standar. Mode ini cocok untuk skenario yang tidak memerlukan detail tinggi. dilate_flagboolOptional Nilai default adalah true. Kami merekomendasikan mengatur nilai ini ke true jika mask penghapusan dihasilkan oleh algoritma, dan ke false jika Anda melukis mask penghapusan secara manual. add_watermark booleanOptional Menambahkan watermark Generated by AI. Nilai default adalah true, yang menambahkan watermark di pojok kiri bawah gambar output. | Image erase completioncurl --location --request POST 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image2image/image-synthesis' \
--header 'X-DashScope-Async: enable' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "image-erase-completion",
"input": {
"image_url": "http://xxx/input.png",
"mask_url": "http://xxx/mask.png",
"foreground_url": "http://xxx/foreground.png"
},
"parameters":{
"dilate_flag":true
}
}'
|
Response outputobject Detail output task. Properties task_idstring Identifikasi unik task. task_statusstring Status task.
- PENDING: Task sedang dalam antrian.
- RUNNING: Task sedang diproses.
- SUSPENDED: Task ditangguhkan.
- SUCCEEDED: Task berhasil diselesaikan.
- FAILED: Task gagal.
codestring Kode kesalahan. Parameter ini tidak dikembalikan jika permintaan berhasil. messagestring Pesan kesalahan. Parameter ini tidak dikembalikan jika permintaan berhasil. request_idstring ID permintaan unik. Gunakan ID ini untuk melacak dan memecahkan masalah. | |
Langkah 2: Kueri hasilnya
GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}
Request headers AuthorizationstringRequired Kunci API Anda. Contoh: Bearer d1**2a. Path parameters task_idstringRequired ID task. | Task resultcurl -X GET \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
https://dashscope.aliyuncs.com/api/v1/tasks/53950fb7-281a-4e60-b543-xxxxxxxxxxxx
|
Response outputobject Detail output task. Properties task_id string ID task. task_status string Status task.
- PENDING: Task sedang dalam antrian.
- RUNNING: Task sedang diproses.
- SUSPENDED: Task ditangguhkan.
- SUCCEEDED: Task berhasil diselesaikan.
- FAILED: Task gagal.
task_metrics object Statistik task. Properties TOTAL integer Jumlah total task. SUCCEEDED integer Jumlah task yang berhasil. FAILED integer Jumlah task yang gagal. submit_time string Waktu task diajukan. scheduled_time string Waktu task mulai dijalankan. end_time string Waktu penyelesaian tugas. output_image_url string URL gambar output. codestring Kode kesalahan. Parameter ini tidak dikembalikan jika permintaan berhasil. messagestring Pesan kesalahan. Parameter ini tidak dikembalikan jika permintaan berhasil. usageobject Statistik penggunaan. Properties image_countinteger Jumlah gambar yang dihasilkan. request_idstring ID permintaan unik. Gunakan ID ini untuk melacak dan memecahkan masalah. | Completed taskHasil task yang telah selesai tersedia selama 24 jam. Setelah periode ini, sistem akan menghapus task beserta hasilnya. URL gambar yang dihasilkan juga kedaluwarsa setelah 24 jam, sehingga Anda harus menyimpan gambar tersebut setelah mengambil hasil task. {
"request_id": "b67df059-ca6a-9d51-afcd-9b3c4456b1e2",
"output": {
"task_id": "53950fb7-281a-4e60-b543-xxxxxxxxxxxx",
"task_status": "SUCCEEDED",
"submit_time": "2024-05-16 13:50:01.247",
"scheduled_time": "2024-05-16 13:50:01.354",
"end_time": "2024-05-16 13:50:27.795",
"output_image_url": "http://xxx/result.png"
},
"usage": {
"image_count": 1
}
}
In-progress task{
"request_id":"7574ee8f-38a3-4b1e-9280-11c33ab46e51",
"output":{
"task_id":"53950fb7-281a-4e60-b543-xxxxxxxxxxxx",
"task_status":"RUNNING",
"task_metrics":{
"TOTAL":1,
"SUCCEEDED":1,
"FAILED":0
}
}
}
Failed task{
"request_id":"4246a1de-2aab-9b49-ba87-e0d12e221a06",
"output":{
"task_id":"53950fb7-281a-4e60-b543-xxxxxxxxxxxx",
"task_status":"FAILED",
"submit_time":"2024-03-22 12:07:07.183",
"scheduled_time":"2024-03-22 12:07:07.253",
"end_time":"2024-03-22 12:07:07.604",
"code":"InternalError.Algo",
"message":"video generation error"
}
}
|
Status codes
Untuk kode status umum layanan Model Studio, lihat Error messages.
API ini juga mengembalikan kode status spesifik berikut:
HTTP status code | Error code | Error message | Description |
|---|
400 | InvalidParameter.JsonPhrase | input json error | JSON dalam permintaan tidak valid. |
400 | InvalidParameter.FileDownload | oss download error | Gagal mengunduh gambar input. |
400 | InvalidParameter.ImageFormat | read image error | Gagal membaca gambar. |
400 | InvalidParameter.ImageContent | The image content is not compliant. | Konten gambar tidak sesuai. |
400 | InvalidParameter | An input parameter value is out of range: xxx | Nilai parameter input berada di luar rentang. |
400 | InvalidParameter.ImageResolution | The input image size is too small or too large. | Ukuran gambar input terlalu kecil atau terlalu besar. |
500 | InternalError.Algo | algorithm process error | Kesalahan algoritma. |
500 | InternalError.FileUpload | oss upload error | Gagal mengunggah file. |