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 |
|---|---|---|---|
| Gizlilik ve GDPR uyumlu anonimleştirme için AI yüz algılamayla görsellerdeki yüzleri otomatik algılayıp bulanıklaştırın. | 314e3e16a422 | human | bd0aa1e11901 |
Yüzleri ve Kişisel Bilgileri Bulanıklaştır
AI destekli yüz algılama (MediaPipe) kullanarak görsellerdeki yüzleri otomatik algılayın ve bulanıklaştırın.
API Uç Noktası
POST /api/v1/tools/image/blur-faces
İşleme: Eşzamansız (202 döndürür, durum için /api/v1/jobs/{jobId}/progress SSE üzerinden yoklanır)
Model paketi: face-detection (200-300 MB)
Parametreler
| Parametre | Tür | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|---|
| file | dosya | Evet | - | Görsel dosyası (multipart) |
| blurRadius | sayı | Hayır | 30 |
Algılanan yüzlere uygulanan bulanıklık yarıçapı (1-100) |
| sensitivity | sayı | Hayır | 0.5 |
Yüz algılama hassasiyeti (0-1). Daha düşük değerler daha yüksek güvenle daha az yüz algılar |
Örnek İstek
curl -X POST http://localhost:1349/api/v1/tools/image/blur-faces \
-F "file=@group-photo.jpg" \
-F 'settings={"blurRadius":40,"sensitivity":0.3}'
Yanıt
İlk Yanıt (202 Accepted)
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"async": true
}
İlerleme (/api/v1/jobs/{jobId}/progress adresinde SSE)
event: progress
data: {"phase":"processing","stage":"Detecting faces...","percent":40}
Nihai Sonuç (SSE üzerinden)
{
"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}
]
}
}
Yüz Algılanmadı
Hiç yüz bulunmazsa, sonuç bir uyarı içerir:
{
"phase": "complete",
"percent": 100,
"result": {
"facesDetected": 0,
"warning": "No faces detected in this image. Try increasing detection sensitivity."
}
}
Notlar
face-detectionmodel paketinin yüklü olmasını gerektirir (200-300 MB).- Çıktı biçimi giriş biçimiyle otomatik olarak eşleşir.
facesdizisi, algılanan her yüz için sınırlayıcı kutu koordinatlarını (x, y, genişlik, yükseklik) içerir.- Kısmen örtülü olanlar dahil daha fazla yüz algılamak için
sensitivitydeğerini artırın (1.0'a yaklaştırın). - Otomatik çözme yoluyla HEIC/HEIF, RAW, TGA, PSD, EXR ve HDR giriş biçimlerini destekler.