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

Smart Crop

Slim bijsnijden op basis van onderwerp, gezicht of trim. Gebruikt de attention/entropy-strategieën van Sharp en AI-gezichtsherkenning voor intelligente kadrering.

API Endpoint

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

Verwerking: Asynchroon (retourneert 202, poll /api/v1/jobs/{jobId}/progress voor de status via SSE)

Modelbundel: face-detection (200-300 MB) - alleen vereist voor de modus face

Parameters

ParameterTypeVereistStandaardBeschrijving
filefileJa-Afbeeldingsbestand (multipart)
modestringNee"subject"Bijsnijmodus: subject, face, trim. (De verouderde waarden attention en content verwijzen naar subject en trim)
strategystringNee"attention"Strategie voor de onderwerpmodus: attention of entropy
widthintegerNee-Doelbreedte in pixels
heightintegerNee-Doelhoogte in pixels
paddingintegerNee0Opvulpercentage rond het onderwerp (0-50)
facePresetstringNee"head-shoulders"Preset voor gezichtskadrering: closeup, head-shoulders, upper-body, half-body
sensitivitynumberNee0.5Gevoeligheid van gezichtsherkenning (0-1)
thresholdintegerNee30Trimmodusdrempel voor achtergronddetectie (0-255)
padToSquarebooleanNeefalseGetrimd resultaat opvullen tot een vierkant
padColorstringNee"#ffffff"Achtergrondkleur voor de opvulling
targetSizeintegerNee-Doelgrootte voor de opgevulde uitvoer (pixels)
qualityintegerNee-Uitvoerkwaliteit (1-100)

Voorbeeldverzoek

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"}'

Respons

Eerste respons (202 Accepted)

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

Voortgang (SSE op /api/v1/jobs/{jobId}/progress)

event: progress
data: {"phase":"processing","percent":50}

Eindresultaat (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
  }
}

Modi

Onderwerpmodus

Gebruikt de attention- of entropy-strategie van Sharp om het visueel meest interessante gebied te vinden en snijdt daaromheen bij.

Gezichtsmodus

Detecteert gezichten met AI en kadreert de uitsnede vervolgens rond de gevonden gezichten met de opgegeven facePreset. Valt terug op de onderwerpmodus (attention-strategie) als er geen gezichten worden gedetecteerd.

Trimmodus

Verwijdert uniforme randen/achtergrond uit de afbeelding. Vult het resultaat optioneel op tot een vierkant met een opgegeven achtergrondkleur en doelgrootte.

Opmerkingen

  • Dit gereedschap gebruikt de factory createToolRoute met executionHint: "long", dus het retourneert 202 met SSE-voortgang.
  • De gezichtsmodus vereist de modelbundel face-detection (200-300 MB).
  • De onderwerp- en trimmodi werken zonder enige AI-modelbundel.
  • De facePreset bepaalt hoe strak de uitsnede gedetecteerde gezichten kadreert: closeup is het strakst, half-body is het ruimst.
  • Als er geen breedte/hoogte is opgegeven, is de standaard 1080x1080.