mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
Renames 18 ambiguous or hard-to-search tool names so image tools self-qualify like the other modalities ("Compress" becomes "Compress Image"), and cleans up a few awkward names. Propagated across search (constants.ts), display (en.ts + 20 locales), the OpenAPI base spec + 20 locale specs, and the docs tool-page headings in 21 languages. Removes the duplicate "Normalize Audio" summary shared by the video and audio endpoints. Tool ids and routes are unchanged, so no API paths or bookmarks break.
2.9 KiB
2.9 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Rileva e sfoca automaticamente i volti nelle immagini con il rilevamento facciale basato su IA per la privacy e l'anonimizzazione conforme al GDPR. | 314e3e16a422 | human | d32c51859f58 |
Sfoca volti e dati sensibili
Rileva e sfoca automaticamente i volti nelle immagini usando il rilevamento facciale basato su IA (MediaPipe).
Endpoint API
POST /api/v1/tools/image/blur-faces
Elaborazione: asincrona (restituisce 202, interroga /api/v1/jobs/{jobId}/progress per lo stato tramite SSE)
Bundle del modello: face-detection (200-300 MB)
Parametri
| Parametro | Tipo | Obbligatorio | Predefinito | Descrizione |
|---|---|---|---|---|
| file | file | Sì | - | File immagine (multipart) |
| blurRadius | number | No | 30 |
Raggio di sfocatura applicato ai volti rilevati (1-100) |
| sensitivity | number | No | 0.5 |
Sensibilità del rilevamento facciale (0-1). Valori più bassi rilevano meno volti con maggiore confidenza |
Esempio di richiesta
curl -X POST http://localhost:1349/api/v1/tools/image/blur-faces \
-F "file=@group-photo.jpg" \
-F 'settings={"blurRadius":40,"sensitivity":0.3}'
Risposta
Risposta iniziale (202 Accepted)
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
Avanzamento (SSE su /api/v1/jobs/{jobId}/progress)
event: progress
data: {"phase":"processing","stage":"Detecting faces...","percent":40}
Risultato finale (tramite SSE)
{
"phase": "complete",
"percent": 100,
"result": {
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/{jobId}/group-photo_blurred.jpg",
"originalSize": 450000,
"processedSize": 420000,
"facesDetected": 3,
"faces": [
{"x": 100, "y": 50, "w": 80, "h": 80},
{"x": 300, "y": 60, "w": 75, "h": 75},
{"x": 500, "y": 55, "w": 85, "h": 85}
]
}
}
Nessun volto rilevato
Se non viene trovato alcun volto, il risultato include un avviso:
{
"phase": "complete",
"percent": 100,
"result": {
"facesDetected": 0,
"warning": "No faces detected in this image. Try increasing detection sensitivity."
}
}
Note
- Richiede l'installazione del bundle del modello
face-detection(200-300 MB). - Il formato di output corrisponde automaticamente a quello di input.
- L'array
facescontiene le coordinate del riquadro delimitante (x, y, width, height) per ogni volto rilevato. - Aumenta
sensitivity(più vicino a 1.0) per rilevare più volti, inclusi quelli parzialmente occlusi. - Supporta i formati di input HEIC/HEIF, RAW, TGA, PSD, EXR e HDR tramite decodifica automatica.