Тест SSIM 2026: насколько сильно портят фото 8 хостингов?
Сразу к цифрам: загружаете на бесплатный хостинг 4.2 МБ фото, скачиваете — и у вас 890 КБ. Минус 79% веса. Вопрос: сколько качества вы потеряли? На глаз не видно — это не значит, что качество не упало.
Честно говоря, я прогнал 8 основных бесплатных image hosting'ов через SSIM (Structural Similarity Index) и измерил потери количественно. Не «вроде бы немного просело», а с конкретными цифрами. По результатам: SSIM падает с 0.998 (практически без потерь) до 0.871 (видно невооружённым глазом) — разница реально больше, чем кажется на старте.
Что такое SSIM и зачем он
SSIM (индекс структурного сходства) — один из самых используемых объективных показателей качества изображений, предложен Ван и др. в 2004 году. Он моделирует восприятие структуры зрительной системой человека, гораздо ближе к реальному ощущению, чем простой PSNR по пикселям.
Диапазон SSIM — от 0 до 1:
- 1.000 — идентично, ноль потерь
- 0.95+ — глазу почти неотличимо, высококачественное сжатие
- 0.90–0.95 — при внимательном сравнении заметны нюансы (градиенты кожи, небо)
- < 0.90 — различия очевидны, особенно на тексте, тонких линиях, контрастах
Проще говоря, SSIM особо чувствителен к структурным нарушениям — те самые «блочные» артефакты JPEG отлично им ловятся.
Методика
Чтобы данные были сопоставимыми, жёстко контролируемый процесс.
Оригинал: JPEG 4928×3264 (экспорт с максимальным качеством из несжатого TIFF), включает пейзаж, портрет и фрагменты текста. Вес 4.2 МБ.
Процесс:
- Заливаю оригинал на каждый хостинг
- Сразу скачиваю обратно
- Через ImageMagick
compare -metric SSIMсчитаю сходство с оригиналом - Записываю вес и формат
Команда:
magick compare -metric SSIM original.jpg downloaded.jpg null: 2>&1
Каждый сервис — 3 прогона, результат усреднён. Ниже — таблица.
Результаты теста качества
| Хостинг | Исходный вес | Вес после | Δ веса | SSIM | Категория |
|---|---|---|---|---|---|
| Catbox | 4.2 МБ | 4.2 МБ | 0% | 1.0000 | Lossless |
| Flickr | 4.2 МБ | 4.2 МБ | 0% | 1.0000 | Lossless |
| lpic.cc | 4.2 МБ | 3.9 МБ | −7.1% | 0.9921 | Очень высокое |
| Cloudinary (free) | 4.2 МБ | 3.8 МБ | −9.5% | 0.9897 | Очень высокое |
| ImgBB | 4.2 МБ | 3.6 МБ | −14.3% | 0.9834 | Высокое |
| Postimages | 4.2 МБ | 3.4 МБ | −19.0% | 0.9756 | Высокое |
| Imgur | 4.2 МБ | 1.8 МБ | −57.1% | 0.9512 | Приемлемое |
| Freeimage.host | 4.2 МБ | 1.5 МБ | −64.3% | 0.9423 | Приемлемое |
| Google Photos | 4.2 МБ | 1.1 МБ | −73.8% | 0.9287 | Заметно на глаз |
| Imgbox | 4.2 МБ | 890 КБ | −79.3% | 0.9134 | Заметно на глаз |
Разница цифр важнее, чем кажется. Разберём.
Анализ по группам
Lossless: Catbox и Flickr
Catbox и Flickr вообще не трогают файл — SSIM ровно 1.0, скачанный файл побайтово равен загруженному. Для фотографов и дизайнеров, которым нужна гарантия оригинала, это принципиально. Минус — больше расходов хостинга на хранение и трафик.
Очень высокое качество: lpic.cc и Cloudinary
lpic.cc и Cloudinary мягко жмут, но оба выдают SSIM > 0.98. У lpic.cc сжатие ~7%, SSIM 0.9921 — разница неотличима даже при 200% кропе. Cloudinary чуть агрессивнее, но через API можно тонко настраивать quality.
Высокое качество: ImgBB и Postimages
ImgBB и Postimages жмут на 14–19%, SSIM 0.97–0.98. Повседневный шаринг — хватает с запасом. На участках с плавными градиентами (небо, кожа) при внимательном сравнении можно увидеть тонкий бэндинг.
Заметные потери: Imgur, Freeimage.host, Google Photos, Imgbox
Эти четыре режут агрессивно. Imgur превращает 4.2 МБ в 1.8 МБ (SSIM 0.9512), Google Photos — в 1.1 МБ (SSIM 0.9287).
Конкретно: при SSIM < 0.95 становятся видны:
- Края текста — снижение резкости, мелкий шрифт размывается
- Контрастные границы — ringing-артефакт
- Цветовые градиенты — бэндинг и блочность
- Мелкая текстура — ткани, волосы «замыливаются»
Imgbox с SSIM 0.9134 — самый жёсткий. На тесте видно блочность в текстовых участках невооружённым глазом.
Зависимость от типа картинки
Потери сильно зависят от содержимого. Прогнал три типа дополнительно.
Скриншоты с текстом (UI, код): самая чувствительная категория. Imgur на чистом тексте провалился до SSIM 0.9318 — JPEG-сжатие хуже всего работает на резких границах контрастных плашек.
Пейзажи: наоборот, самая толерантная. Даже Imgbox на пейзаже выдал SSIM 0.9347 — естественные текстуры сами по себе шумны, и потери замаскированы.
Графика с градиентами: посередине — большие плашки с плавными переходами ловят бэндинг быстро.
Что из этого брать в работу
По итогу тестов — рекомендации под сценарий.
Техдокументация, скриншоты кода: только lossless или минимальное сжатие (Catbox, Flickr, lpic.cc). Размытие текста убивает читаемость.
Обычный шаринг фото: ImgBB, Postimages — SSIM > 0.97 в соцсетях, чатах и постах не различим.
Авторская фотография: только lossless (Catbox, Flickr). Но Catbox известен нестабильностью — держите бэкапы.
Просто «кинуть картинку»: если качество вообще не важно (мем, отсылка), агрессивное сжатие Imgur/Google Photos — плюс: меньше вес, быстрее рендер.
Российский контекст: с чего лучше начать
Для русскоязычных пользователей Imgur периодически недоступен без VPN. Практика: ImgBB как основной, lpic.cc для качественных проектов, Telegra.ph для публикации длинных постов с картинками. Catbox — для случаев, когда принципиально нужен lossless.
Отдельно — если делаете UGC-ресурс на своём сайте (интернет-магазин с фото отзывами, паблик с фотоотчётами), стоит сделать собственное сжатие через Sharp/libvips до заливки на сервер. Контроль качества — ваш, не хостинга.
Частые вопросы
Разница между SSIM 0.95 и 0.99 — она реальна?
Численно разница 0.04, на глаз — заметная. 0.99 — реально неотличимо от оригинала. 0.95 — при внимательном сравнении найдёте отличия на тексте и градиентах. 0.95 примерно соответствует JPEG quality 75–80.
Зачем хостинги жмут картинки?
Экономия хранения и трафика. 4 МБ → 1 МБ — это 1/4 затрат на storage и 1/4 расхода CDN-канала. Для бесплатных сервисов — ключевой экономический фактор.
Превращают ли PNG в JPEG?
Некоторые — да. Imgur конвертирует большие PNG в JPEG автоматически, что необратимо теряет качество. Catbox, Flickr, lpic.cc сохраняют формат. Если у вас прозрачность или требование lossless — сначала уточните политику хостинга.
Деградирует ли качество при многократном перезаливе?
Да, это «generation loss». Каждое lossy-пересохранение добавляет артефакты. Скачивать с одного хостинга и заливать на другой — качество падает накопительно. Всегда работайте с оригиналом, не с копией, полученной с хостинга.
Можно ли контролировать сжатие до загрузки?
Да. ImageMagick, Squoosh, TinyPNG — задавайте нужный quality локально, заливайте в «lossless»-хостинг (Catbox). Так вы сами управляете балансом размер/качество.