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

Изменение размера с учётом содержимого

Изменение размера методом вырезания швов, которое интеллектуально удаляет или добавляет пиксели вдоль путей наименьшей визуальной значимости, сохраняя важное содержимое и опционально защищая лица.

Конечная точка API

POST /api/v1/tools/image/content-aware-resize

Обработка: Синхронная (возвращает результат напрямую)

Пакет модели: Не требуется для базовой работы. Защита лиц использует пакет face-detection (200-300 МБ), если включена.

Параметры

ПараметрТипОбязательныйПо умолчаниюОписание
filefileДа-Файл изображения (multipart)
widthnumberНет-Целевая ширина в пикселях
heightnumberНет-Целевая высота в пикселях
protectFacesbooleanНетfalseОбнаруживать и защищать лица от удаления швов
blurRadiusnumberНет4Радиус предварительного размытия для расчёта энергии (0-20)
sobelThresholdnumberНет2Порог обнаружения границ Собеля (1-20). Более высокие значения делают алгоритм более агрессивным
squarebooleanНетfalseИзменить размер до квадрата (использует меньший размер)

Должен быть указан хотя бы один из width, height или square.

Пример запроса

bash
curl -X POST http://localhost:1349/api/v1/tools/image/content-aware-resize \
  -F "[email protected]" \
  -F 'settings={"width":800,"protectFaces":true}'

Ответ (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
}

Примечания

  • Этот пользовательский маршрут в настоящее время возвращает синхронный ответ 200.
  • Использует библиотеку вырезания швов caire для изменения размера с учётом содержимого.
  • Только уменьшает размеры (удаляет швы). Не может увеличить изображение сверх его исходного размера.
  • Опция protectFaces использует ИИ-обнаружение лиц, чтобы отметить области лиц как высокоэнергетические, предотвращая прохождение швов через лица.
  • blurRadius управляет сглаживанием перед расчётом карты энергии. Более высокие значения делают карту энергии более однородной, что может помочь с зашумлёнными изображениями.
  • sobelThreshold влияет на то, насколько агрессивно обнаруживаются границы. Меньшие значения сохраняют больше слабых границ.
  • Вывод всегда в формате PNG.
  • Поддерживает входные форматы HEIC/HEIF, RAW, TGA, PSD, EXR и HDR через автоматическое декодирование.