Files
SnapOtter/apps/docs/ru/tools/image/compare.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

69 lines
4.2 KiB
Markdown

---
description: "Сравнение двух изображений бок о бок с попиксельной визуализацией различий и оценкой схожести."
i18n_source_hash: cc0a02bd75c6
i18n_provenance: human
i18n_output_hash: 37164c55b935
---
# Сравнение изображений {#image-compare}
Загрузите два изображения, чтобы вычислить попиксельную карту различий и числовой процент схожести. Результат представляет собой изображение различий, выделяющее изменённые области красным цветом.
## Конечная точка API {#api-endpoint}
`POST /api/v1/tools/image/compare`
Принимает multipart-данные формы с **двумя** файлами изображений. Поле настроек не требуется.
## Параметры {#parameters}
Этот инструмент не имеет настраиваемых параметров. Загрузите ровно два файла изображений.
| Поле | Тип | Обязательный | Описание |
|-------|------|----------|-------------|
| file (первое) | file | Да | Первое изображение |
| file (второе) | file | Да | Второе изображение |
## Пример запроса {#example-request}
```bash
curl -X POST http://localhost:1349/api/v1/tools/image/compare \
-H "Authorization: Bearer si_your-api-key" \
-F "file=@original.jpg" \
-F "file=@modified.jpg"
```
## Пример ответа {#example-response}
```json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"similarity": 94.52,
"dimensions": { "width": 1920, "height": 1080 },
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/diff.png",
"originalSize": 4900000,
"processedSize": 280000
}
```
## Поля ответа {#response-fields}
| Поле | Тип | Описание |
|-------|------|-------------|
| jobId | string | Идентификатор задания для загрузки изображения различий |
| similarity | number | Процент схожести двух изображений (от 0 до 100) |
| dimensions | object | Ширина и высота, использованные для сравнения |
| downloadUrl | string | URL для загрузки сгенерированного изображения различий |
| originalSize | number | Суммарный размер обоих входных изображений в байтах |
| processedSize | number | Размер выходного изображения различий в байтах |
## Примечания {#notes}
- Оба изображения приводятся к одинаковым размерам (максимум по каждой оси) перед сравнением.
- Изображение различий выделяет отличия красным цветом с непрозрачностью, пропорциональной величине изменения. Идентичные или почти идентичные пиксели (различие < 10) отображаются как полупрозрачные версии оригинала.
- Схожесть вычисляется как обратная величина среднего попиксельного различия по всем пикселям, выраженная в процентах.
- Схожесть 100% означает, что изображения попиксельно идентичны (при разрешении сравнения).
- Вывод различий всегда в формате PNG независимо от входных форматов.
- Оба изображения проверяются и декодируются (поддерживаются HEIC, RAW, PSD, SVG) перед сравнением.
- Ориентация EXIF автоматически применяется к обоим изображениям перед обработкой.