Search K
Content-Aware Resize
Зміна розміру методом швів, що інтелектуально видаляє або додає пікселі вздовж шляхів найменшої візуальної значущості, зберігаючи важливий вміст і за бажанням захищаючи обличчя.
API Endpoint
POST /api/v1/tools/image/content-aware-resize
Processing: Синхронна (повертає результат напряму)
Model bundle: Не потрібен для базової роботи. Захист облич використовує пакет face-detection (200-300 MB), якщо увімкнено.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| file | file | Yes | - | Файл зображення (multipart) |
| width | number | No | - | Цільова ширина в пікселях |
| height | number | No | - | Цільова висота в пікселях |
| protectFaces | boolean | No | false | Виявляти та захищати обличчя від видалення швів |
| blurRadius | number | No | 4 | Радіус попереднього розмиття для розрахунку енергії (0-20) |
| sobelThreshold | number | No | 2 | Поріг виявлення країв за методом Собеля (1-20). Вищі значення роблять алгоритм агресивнішим |
| square | boolean | No | false | Змінити розмір до квадрата (використовує меншу сторону) |
Потрібно вказати принаймні один із width, height або square.
Example Request
bash
curl -X POST http://localhost:1349/api/v1/tools/image/content-aware-resize \
-F "[email protected]" \
-F 'settings={"width":800,"protectFaces":true}'Response (200 OK)
json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/{jobId}/landscape_seam.png",
"originalSize": 450000,
"processedSize": 380000,
"width": 800,
"height": 600
}Notes
- Цей власний маршрут наразі повертає синхронну відповідь 200.
- Використовує бібліотеку швів
caireдля зміни розміру з урахуванням вмісту. - Лише зменшує розміри (видаляє шви). Не може розширити зображення понад його оригінальний розмір.
- Параметр
protectFacesвикористовує AI-виявлення облич, щоб позначити області облич як високоенергетичні, запобігаючи проходженню швів через обличчя. blurRadiusкерує згладжуванням перед розрахунком мапи енергії. Вищі значення роблять мапу енергії одноріднішою, що може допомогти із зашумленими зображеннями.sobelThresholdвпливає на те, наскільки агресивно виявляються краї. Нижчі значення зберігають більше тонких країв.- Вивід завжди у форматі PNG.
- Підтримує вхідні формати HEIC/HEIF, RAW, TGA, PSD, EXR та HDR через автоматичне декодування.
