XRUST.ru » Как » Искусственный интеллект » Нейросети для улучшения качества фото: как работает апскейл, где он помогает и где придумывает лишнее
Искусственный интеллект

Нейросети для улучшения качества фото: как работает апскейл, где он помогает и где придумывает лишнее

Сегодня, 09:23 1 0 1

Апскейл давно стал невидимой частью техники. Телефон дотягивает цифровой зум, телевизор растягивает старое кино на 4K-панель, онлайн-сервисы обещают сделать из размытой аватарки портрет для печати. Слово одно, а за ним прячутся очень разные технологии. Одни аккуратно проявляют то, что в снимке уже было. Другие уверенно дорисовывают то, чего там не было никогда.

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


Заказчик в копицентре сравнивает крошечную карточку три на четыре с метровым отпечатком, после того как удалось увеличить разрешение фото

Старый способ: интерполяция

До нейросетей увеличение работало как арифметика. Нужно сделать из 1000 пикселей по ширине 4000, значит, между каждой парой известных точек надо вставить три новые. Значения для них считаются по соседям.

  • Ближайший сосед просто копирует ближайшую точку. Картинка становится крупнее и ступенчатой. Для пиксель-арта это как раз правильно, для фотографии нет.
  • Билинейная и бикубическая интерполяция усредняют несколько соседей с весами. Ступенек нет, но всё становится мягким, как через запотевшее стекло.
  • Фильтр Ланцоша и похожие на него дают чуть больше резкости, зато вокруг контрастных краёв появляются светлые и тёмные ореолы.

Общее у всех этих методов одно: новой информации они не создают. Если на исходнике ресница занимала полпикселя, после увеличения её всё равно не будет. Поэтому растягивание в обычном редакторе превращает маленькое фото в большое мутное.

Как учится нейросеть для апскейла

Нейросетевой подход переворачивает задачу. Вместо того чтобы считать новые пиксели по формуле, модель учат угадывать их по опыту. Для обучения берут огромное количество чётких фотографий, искусственно уменьшают и портят их: сжимают, добавляют шум, размывают. Получаются пары «плохая копия и хороший оригинал». Сеть раз за разом пытается из плохой копии восстановить оригинал, и её поправляют, пока ошибка не станет маленькой.

Дальше всё зависит от того, как измерять ошибку.

  • Попиксельная ошибка. Первые сети середины 2010-х учили приближаться к оригиналу в каждой точке. Результат точный в среднем и всё равно мягкий: когда модель не уверена, где проходит волосок, она рисует усреднённое серое пятно, потому что за него штраф меньше.
  • Состязательное обучение. К сети добавляют вторую, которая пытается отличить настоящую фотографию от восстановленной. Первая учится её обманывать и начинает рисовать резкую фактуру кожи, волос и ткани. Выглядит гораздо убедительнее, но часть этой фактуры придумана.
  • Диффузионные модели. Самое свежее поколение. Модель шаг за шагом превращает шум в изображение, сверяясь с маленьким исходником. Детали выходят очень правдоподобными, и как раз поэтому ошибки в них труднее заметить.

Точность против правдоподобия

У исследователей есть известное наблюдение: нельзя одновременно максимально приблизиться к оригиналу по точкам и сделать картинку максимально похожей на настоящую фотографию. Чем реалистичнее выглядит результат, тем больше в нём догадок.

Проще всего это увидеть на кирпичной стене. Нечёткая стена на исходнике после аккуратного апскейла станет просто чётче. После агрессивного генеративного у неё появятся ровные швы и фактура кирпича, которые выглядят прекрасно, но не совпадут с настоящей стеной ни по одному кирпичу. Для обоев на рабочий стол это неважно. Для семейного портрета важно: морщинка, родинка, форма брови, достроенные «как обычно бывает», делают человека немного другим.

Поэтому хороший способ улучшить фото не тот, что дорисовывает больше всех, а тот, что дорисовывает ровно столько, сколько нужно, и вовремя останавливается.

Где апскейл действительно помогает

  • Мягкий фокус и лёгкая смазанность. Черты читаются, но нечётко. Сделать фото чётче в таком случае удаётся почти всегда.
  • Шум и следы сжатия. Квадраты JPEG и цветная зернистость после ночной съёмки убираются хорошо.
  • Печать. Кадр, который на экране выглядит нормально, а на бумаге рассыпается. На фотобумаге норма 300 точек на дюйм, это около 2500×3500 пикселей для A4 и 3500×5000 для A3. Плакату, который смотрят с пары шагов, хватает 150, уличному баннеру 75.
  • Большие экраны. Снимок, который нужно вывести на телевизор 4K или 8K.

Порядок цифр хорошо виден на практике. Файл 747×1000 точек, это 0,7 мегапикселя и печать примерно до A6, после увеличения становится 5737×7680, то есть 44 мегапикселя: этого хватает на плакат A1. Вес растёт с 0,2 до 6,1 мегабайта, и это нормально, вес и есть запас деталей. Такой пример с замерами разобран на странице art.umnetix.ru/uluchshit-kachestvo-foto, где задачи разведены по отдельным инструментам: восстановить старое, подтянуть мягкое и просто увеличить разрешение фото для печати. На увеличение там уходит около тридцати секунд, а если исходник и так достаточно крупный, сервис об этом скажет и денег не возьмёт.

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

Где он придумывает лишнее

  • Текст. Буквы на вывесках, подписи, номера при перерисовке становятся узором, который только притворяется текстом. Модель знает, как выглядят буквы вообще, но не знает, какие именно стояли на вашем снимке.
  • Мелкие лица. Если лицо на исходнике меньше двухсот точек по ширине, информации о чертах почти нет. Сеть нарисует правдоподобное лицо, и оно может оказаться чужим.
  • Повторяющиеся узоры. Вязка, кирпич, черепица, плетёная мебель. Модель охотно наводит порядок и рисует узор ровнее и правильнее, чем он был.
  • Мелкие символы. Значки, эмблемы, награды достраиваются по общему виду.
  • Доказательства. Номер машины на записи регистратора или лицо на кадре с камеры наблюдения после генеративного апскейла станут читаемыми, но перед вами будет догадка модели, а не факт. Использовать такие кадры как доказательство нельзя.

Отдельная ловушка: повторное увеличение. Логика «увеличу дважды, будет вдвое лучше» не работает. В одном замере файл довели до 5737×7680 двумя путями, за один проход и за два. Размер вышел одинаковый, а качество нет: второму проходу нечего доставать, и он усредняет то, что дорисовал первый. Кожа затягивается, волоски истончаются, нити ткани теряют ворс. Поэтому некоторые сервисы распознают свой же увеличенный файл и предлагают вернуться к оригиналу.

Как проверить результат и не обмануться

  1. Смотрите в масштабе сто процентов, а не на превью. На маленькой картинке любой апскейл выглядит хорошо.
  2. Переключайтесь между исходником и результатом в одном и том же месте кадра. Глаза, зубы, линия волос, край уха выдают выдумку быстрее всего.
  3. Ищите пластиковую кожу и перешарп: светлые ореолы вокруг тёмных контуров, неестественно ровные поры.
  4. Сверяйте с реальностью всё, что можно: узор на свитере, форму серёжки, количество пуговиц.
  5. Соблюдайте порядок: сначала исправить качество, потом увеличивать. Увеличение честно размножит мягкость, если её не убрать заранее.
  6. Берите оригинальный файл, а не пересланный через мессенджер. Сжатие при пересылке уничтожает как раз мелкие детали.

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

Апскейл стал одним из самых полезных применений нейросетей в фотографии, если помнить, что он делает. Он не достаёт из файла утраченное, он делает обоснованную догадку. Чем меньше в исходнике информации, тем смелее догадка и тем внимательнее стоит смотреть на результат.

Частые вопросы

Можно ли улучшить качество фото онлайн без установки программ?

Да, многие такие инструменты работают прямо в браузере. Улучшение обычно занимает около минуты, простое увеличение быстрее.

Почему после улучшения кожа выглядит как пластик?

Модель сгладила шум вместе с настоящей фактурой. Чаще всего так бывает на тёмных и сильно сжатых снимках или после повторного увеличения. Помогают оригинальный файл и один проход вместо двух.

Станет ли читаемой надпись на размытом фото?

Нет. Мелкий текст не восстанавливается: модель нарисует похожие на буквы знаки, но не те, что были.

Сколько стоит увеличение в упомянутом сервисе?

Цена зависит от целевого размера: 20 кредитов, если хватит формата A4 или экрана 4K, 40 за A2 и 8K, 60 за файлы для уличной печати шириной до трёх метров.

Xrust: Нейросети для улучшения качества фото: как работает апскейл, где он помогает и где придумывает лишнее



Поделится
1 0

Комментарии


Хилари Суонк беременна в 52 года: третий ребенок к декабрю
Двукратная обладательница «Оскара» Хилари Суонк объявила, что ждет третьего ребенка. Новость она подала как премьеру нового проекта: в Instagram появилось видео со светящимися палочками и крошечным младенцем на ее животе. Видео снято в темноте, пишет xrust. Муж актрисы Филип Шнайдер и трехлетние близнецы танцуют, а на телах у них закреплены светящиеся палочки. Затем в кадре появляется сама Суонк. На ее округлившемся животе устроился крошечный «младенец» в такой же светящейся одежде. Подпись к ролику звучит как анонс для прессы: многие спрашивали, над каким проектом она работает дальше, и этот выйдет в декабре. Намек понятен без пояснений: роды ожидаются зимой. Что известно о новости Суонк 52 года. Сейчас зрители знают ее по сериалу «Желтые жакеты», а мировую известность ей принесли «Парни не плачут» (1999) и «Малышка на миллион долларов» (2004). За обе роли она получила «Оскар». Ребенка актриса ждет от мужа, предпринимателя Филипа Шнайдера. Они поженились в августе 2018 года. Первыми
305 14