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

Smart Crop ​

Pemangkasan cerdas yang sadar-subjek, sadar-wajah, atau berbasis trim. Menggunakan strategi attention/entropy dari Sharp dan deteksi wajah AI untuk pembingkaian yang cerdas.

API Endpoint ​

POST /api/v1/tools/image/smart-crop

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

Model bundle: face-detection (200-300 MB) - hanya diperlukan untuk mode face

Parameters ​

ParameterTypeRequiredDefaultDescription
filefileYes-File gambar (multipart)
modestringNo"subject"Mode pemangkasan: subject, face, trim. (Nilai lama attention dan content dipetakan ke subject dan trim)
strategystringNo"attention"Strategi untuk mode subject: attention atau entropy
widthintegerNo-Lebar target dalam piksel
heightintegerNo-Tinggi target dalam piksel
paddingintegerNo0Persentase padding di sekitar subjek (0-50)
facePresetstringNo"head-shoulders"Preset pembingkaian wajah: closeup, head-shoulders, upper-body, half-body
sensitivitynumberNo0.5Sensitivitas deteksi wajah (0-1)
thresholdintegerNo30Ambang mode trim untuk deteksi latar belakang (0-255)
padToSquarebooleanNofalseMelapisi hasil yang di-trim menjadi persegi
padColorstringNo"#ffffff"Warna latar belakang untuk padding
targetSizeintegerNo-Ukuran target untuk keluaran yang dipadding (piksel)
qualityintegerNo-Kualitas keluaran (1-100)

Example Request ​

bash
curl -X POST http://localhost:1349/api/v1/tools/image/smart-crop \
  -F "[email protected]" \
  -F 'settings={"mode":"face","width":1080,"height":1080,"facePreset":"head-shoulders"}'

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","percent":50}

Final Result (via SSE) ​

json
{
  "phase": "complete",
  "percent": 100,
  "result": {
    "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "downloadUrl": "/api/v1/download/{jobId}/portrait_smartcrop.jpg",
    "originalSize": 500000,
    "processedSize": 320000
  }
}

Modes ​

Subject Mode ​

Menggunakan strategi attention atau entropy dari Sharp untuk menemukan area yang paling menarik secara visual dan memangkas di sekitarnya.

Face Mode ​

Mendeteksi wajah menggunakan AI, lalu membingkai pemangkasan di sekitar wajah yang terdeteksi menggunakan facePreset yang ditentukan. Kembali ke mode subject (strategi attention) jika tidak ada wajah yang terdeteksi.

Trim Mode ​

Menghapus tepi/latar belakang yang seragam dari gambar. Secara opsional melapisi hasil menjadi persegi dengan warna latar belakang dan ukuran target yang ditentukan.

Notes ​

  • Alat ini menggunakan factory createToolRoute dengan executionHint: "long", sehingga mengembalikan 202 dengan progres SSE.
  • Mode face memerlukan model bundle face-detection (200-300 MB).
  • Mode subject dan trim bekerja tanpa model bundle AI apa pun.
  • facePreset menentukan seberapa ketat pemangkasan membingkai wajah yang terdeteksi: closeup adalah yang paling ketat, half-body adalah yang paling luas.
  • Jika tidak ada width/height yang ditentukan, default ke 1080x1080.