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.
3.1 KiB
3.1 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Détecte et floute automatiquement les visages dans les images grâce à la détection de visages par IA, pour la confidentialité et une anonymisation conforme au RGPD. | 314e3e16a422 | human | db97c8556891 |
Flouter les visages et données sensibles
Détecte et floute automatiquement les visages dans les images grâce à la détection de visages assistée par IA (MediaPipe).
Point de terminaison de l'API
POST /api/v1/tools/image/blur-faces
Traitement : asynchrone (renvoie 202, interrogez /api/v1/jobs/{jobId}/progress pour connaître le statut via SSE)
Bundle de modèles : face-detection (200 à 300 Mo)
Paramètres
| Paramètre | Type | Requis | Par défaut | Description |
|---|---|---|---|---|
| file | fichier | Oui | - | Fichier image (multipart) |
| blurRadius | nombre | Non | 30 |
Rayon de flou appliqué aux visages détectés (1 à 100) |
| sensitivity | nombre | Non | 0.5 |
Sensibilité de la détection de visages (0 à 1). Des valeurs plus faibles détectent moins de visages avec une confiance plus élevée |
Exemple de requête
curl -X POST http://localhost:1349/api/v1/tools/image/blur-faces \
-F "file=@group-photo.jpg" \
-F 'settings={"blurRadius":40,"sensitivity":0.3}'
Réponse
Réponse initiale (202 Accepted)
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
Progression (SSE sur /api/v1/jobs/{jobId}/progress)
event: progress
data: {"phase":"processing","stage":"Detecting faces...","percent":40}
Résultat final (via 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}
]
}
}
Aucun visage détecté
Si aucun visage n'est trouvé, le résultat inclut un avertissement :
{
"phase": "complete",
"percent": 100,
"result": {
"facesDetected": 0,
"warning": "No faces detected in this image. Try increasing detection sensitivity."
}
}
Remarques
- Nécessite l'installation du bundle de modèles
face-detection(200 à 300 Mo). - Le format de sortie correspond automatiquement au format d'entrée.
- Le tableau
facescontient les coordonnées du cadre de délimitation (x, y, largeur, hauteur) de chaque visage détecté. - Augmentez
sensitivity(proche de 1.0) pour détecter davantage de visages, y compris ceux partiellement masqués. - Prend en charge les formats d'entrée HEIC/HEIF, RAW, TGA, PSD, EXR et HDR via un décodage automatique.