Pull-Push и Polyblur: алгоритмы Google улучшения фотографий

Google представила новые алгоритмы шумоподавления Pull-Push и устранения размытости фотографий Polyblur. Оба алгоритма являются высокопроизводительными, позволяя повысить качество изображений на мобильных устройствах за несколько миллисекунд.

На первом этапе Pull-Push разделяет изображение на несколько областей, из которых удаляются основные объекты и определяется уровень шума по яркости пикселей. Этот процесс повторяется несколько раз: на каждой итерации размер областей изменяется, что позволяет надежно построить тепловую карту шумов, как показано на изображении ниже.

После этого выполняется построение пирамиды изображения, т. е. набора его копий с различным разрешением. Для каждой из копий выполняется операция усреднения пикселей в соответствии с картой шумов, полученной на предыдущем этапе (Pull). Затем выполняется объединение этих копий в новое изображение (Push). Пример работы алгоритма:

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

Новые алгоритмы уже интегрированы в фоторедактор Google Photos и доступны пользователям.

Подписаться
Уведомить о
guest

0 Comments
Межтекстовые Отзывы
Посмотреть все комментарии

gogpt