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

Remove Background

การลบพื้นหลังด้วย AI พร้อมเอฟเฟกต์เสริม (เบลอ เงา ไล่ระดับสี พื้นหลังกำหนดเอง)

API Endpoint

POST /api/v1/tools/image/remove-background

Processing: แบบอะซิงโครนัส (คืนค่า 202, poll /api/v1/jobs/{jobId}/progress เพื่อดูสถานะผ่าน SSE)

Model bundle: background-removal (4-5 GB)

Parameters

ParameterTypeRequiredDefaultDescription
filefileYes-ไฟล์รูปภาพ (multipart)
modelstringNo-รุ่นโมเดล AI ที่จะใช้
backgroundTypestringNo"transparent"หนึ่งใน: transparent, color, gradient, blur, image
backgroundColorstringNo-สี hex สำหรับพื้นหลังสีทึบ
gradientColor1stringNo-สีไล่ระดับสีที่หนึ่ง
gradientColor2stringNo-สีไล่ระดับสีที่สอง
gradientAnglenumberNo-มุมไล่ระดับสีเป็นองศา
blurEnabledbooleanNo-เปิดใช้เอฟเฟกต์เบลอพื้นหลัง
blurIntensitynumberNo-ความเข้มของเบลอ (0-100)
shadowEnabledbooleanNo-เปิดใช้เงาตกกระทบบนวัตถุ
shadowOpacitynumberNo-ความทึบของเงา (0-100)
outputFormatstringNo-รูปแบบเอาต์พุต: png, webp หรือ avif
edgeRefineintegerNo-ระดับการปรับแต่งขอบ (0-3)
decontaminatebooleanNo-ลบสีที่เลอะจากขอบ

Example Request

bash
curl -X POST http://localhost:1349/api/v1/tools/image/remove-background \
  -F "[email protected]" \
  -F 'settings={"backgroundType":"transparent","edgeRefine":2,"outputFormat":"png"}'

Response

Initial Response (202 Accepted)

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

Progress (SSE at /api/v1/jobs/{jobId}/progress)

event: progress
data: {"phase":"processing","stage":"Removing background...","percent":50}

Final Result (via SSE)

json
{
  "phase": "complete",
  "percent": 100,
  "result": {
    "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "downloadUrl": "/api/v1/download/{jobId}/photo_mask.png",
    "maskUrl": "/api/v1/download/{jobId}/photo_mask.png",
    "originalUrl": "/api/v1/download/{jobId}/photo_original.png",
    "originalSize": 245000,
    "processedSize": 180000,
    "filename": "photo.jpg",
    "model": "rembg"
  }
}

Effects Endpoint (Phase 2)

POST /api/v1/tools/image/remove-background/effects

ใช้เอฟเฟกต์พื้นหลังซ้ำโดยไม่ต้องรันโมเดล AI ใหม่ ใช้มาสก์และต้นฉบับที่แคชไว้จาก Phase 1

Parameters

ParameterTypeRequiredDefaultDescription
settingsJSONYes-JSON พร้อมการตั้งค่าเอฟเฟกต์ (ดูด้านล่าง)
backgroundImagefileNo-รูปภาพพื้นหลังที่กำหนดเอง (เมื่อ backgroundType เป็น image)

Settings JSON fields

FieldTypeRequiredDescription
jobIdstringYesID งานจาก Phase 1
filenamestringYesชื่อไฟล์ต้นฉบับจาก Phase 1
backgroundTypestringNotransparent, color, gradient, blur, image
backgroundColorstringNoสี hex สำหรับพื้นหลังสีทึบ
gradientColor1stringNoสีไล่ระดับสีที่หนึ่ง
gradientColor2stringNoสีไล่ระดับสีที่สอง
gradientAnglenumberNoมุมไล่ระดับสีเป็นองศา
blurEnabledbooleanNoเปิดใช้เบลอพื้นหลัง
blurIntensitynumberNoความเข้มของเบลอ (0-100)
shadowEnabledbooleanNoเปิดใช้เงาตกกระทบ
shadowOpacitynumberNoความทึบของเงา (0-100)
outputFormatstringNopng, webp หรือ avif

Example Request

bash
curl -X POST http://localhost:1349/api/v1/tools/image/remove-background/effects \
  -F 'settings={"jobId":"a1b2c3d4-...","filename":"photo.jpg","backgroundType":"color","backgroundColor":"#FF5500","outputFormat":"png"}'

Response (200 OK)

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/{jobId}/photo_nobg.png",
  "processedSize": 195000
}

Notes

  • ต้องติดตั้ง model bundle background-removal (4-5 GB)
  • Phase 1 จะแคชมาสก์โปร่งใสและรูปภาพต้นฉบับไว้ เพื่อให้ Phase 2 (เอฟเฟกต์) ใช้พื้นหลังต่าง ๆ ซ้ำได้ทันทีโดยไม่ต้องรันโมเดล AI ใหม่
  • รองรับรูปแบบอินพุต HEIC/HEIF, RAW, TGA, PSD, EXR และ HDR ผ่านการถอดรหัสอัตโนมัติ
  • การหมุนตาม EXIF จะถูกแก้ไขอัตโนมัติก่อนการประมวลผล