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.
5.2 KiB
5.2 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Повышение резкости изображений с помощью адаптивного метода, нерезкого маскирования или высокочастотного фильтра с опциональным шумоподавлением. | 66dce4068899 | human | 3ff0b5d91439 |
Повышение резкости изображения
Продвинутый инструмент повышения резкости с тремя методами: адаптивный (умный, с учётом границ), нерезкое маскирование (классические радиус/степень) и высокочастотный фильтр (усиление текстуры). Включает встроенное шумоподавление для предотвращения артефактов резкости.
Конечная точка API
POST /api/v1/tools/image/sharpening
Принимает multipart form data с файлом изображения и JSON-полем settings.
Параметры
| Параметр | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|
| method | string | Нет | "adaptive" |
Алгоритм повышения резкости: adaptive, unsharp-mask, high-pass |
| sigma | number | Нет | 1.0 |
Адаптивный: сигма Гаусса (от 0.5 до 10) |
| m1 | number | Нет | 1.0 |
Адаптивный: повышение резкости в ровных областях (от 0 до 10) |
| m2 | number | Нет | 3.0 |
Адаптивный: повышение резкости в зубчатых областях (от 0 до 20) |
| x1 | number | Нет | 2.0 |
Адаптивный: порог ровных/зубчатых областей (от 0 до 10) |
| y2 | number | Нет | 12 |
Адаптивный: максимальное повышение резкости в ровных областях (от 0 до 50) |
| y3 | number | Нет | 20 |
Адаптивный: максимальное повышение резкости в зубчатых областях (от 0 до 50) |
| amount | number | Нет | 100 |
Нерезкое маскирование: степень повышения резкости (от 0 до 1000) |
| radius | number | Нет | 1.0 |
Нерезкое маскирование: радиус размытия в пикселях (от 0.1 до 5) |
| threshold | number | Нет | 0 |
Нерезкое маскирование: минимальная разница яркости для повышения резкости (от 0 до 255) |
| strength | number | Нет | 50 |
Высокочастотный: сила фильтра (от 0 до 100) |
| kernelSize | number | Нет | 3 |
Высокочастотный: размер ядра свёртки (3 или 5) |
| denoise | string | Нет | "off" |
Шумоподавление перед повышением резкости: off, light, medium, strong |
Пример запроса
curl -X POST http://localhost:1349/api/v1/tools/image/sharpening \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"method": "adaptive", "sigma": 1.5}'
Нерезкое маскирование с порогом для защиты плавных областей:
curl -X POST http://localhost:1349/api/v1/tools/image/sharpening \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@photo.jpg" \
-F 'settings={"method": "unsharp-mask", "amount": 150, "radius": 1.5, "threshold": 10}'
Пример ответа
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 2510000
}
Примечания
- Используются только те параметры, которые относятся к выбранному методу. Например,
amount,radiusиthresholdигнорируются, когдаmethodравноadaptive. - Адаптивный метод использует встроенное адаптивное повышение резкости Sharp с настраиваемым поведением для ровных/зубчатых областей.
- Опция
denoiseприменяет шумоподавление перед повышением резкости, чтобы предотвратить усиление шума/зерна. - Высокочастотное повышение резкости извлекает мелкие детали, вычитая размытую версию из оригинала, а затем смешивая обратно.
- Формат вывода соответствует формату ввода. Входные данные HEIC, RAW, PSD и SVG автоматически декодируются перед обработкой.