- PVSM.RU - https://www.pvsm.ru -

Всем привет, эта статья является краткой выжимкой другой статьи: Guertin, Jean-Philippe & McGuire, M. & Nowrouzezahrai, D.. (2014). A fast and stable feature-aware motion blur filter. High-Performance Graphics 2014, HPG 2014 - Proceedings. 51-60.
В ней описан алгоритм Motion blur эффекта, который был предложен авторами оригинальной статьи.
Итак, сам алгоритм:
Изображение разбивается на тайлов для максимального радиуса размытия пространства изображения
, что обеспечивает влияние на каждый пиксель не более чем его
окрестности тайла.
У каждого пикселя вычисляется своя скорость:
где , а
— время экспозиции в секундах.
Каждому тайлу присваивается одна доминирующая скорость окрестности
Пиксельная () и доминантная (
) скорости пикселя p обрабатываются следующим образом: размещается ряд сэмплов вдоль центрального направления, интерполируя между нормированными направлениями
и перпендикуляром к доминанте
по мере уменьшения скорости пикселя до минимального порога пользователя :
На каждом тайле вычисляется угловая разница между максимальными скоростями тайла и ее соседей:
где — множество
) соседних тайлов вокруг (и включая) тайла
.
Задается изначальный вес центра:
где - пользовательский параметр для изменения его важности.
Вычисляется цвет центра:
где — цвет пикселя.
Для каждого нового сэмпла S выполняются следующие шаги:
8.1 Задается значение , которое равно
если номер сэмпла
нечетный или
если нечетный.
8.2 Стохастически смещается поиск текстуры с максимальной скоростью соседства для пикселей, расположенных у края плитки, используя простой линейный спад с управляемым наклоном
.
8.3 Рассчитываются параметры точки :
8.4 Рассчитываются классификаторы для переднего и заднего плана:
где — значение глубины пикселя, а
имеет следующий вид:
8.5 Вычисляется вес данного сэмпла:
где функциязадается следующим образом:
а функцияимеет следующий вид:
8.6 К изначальному весу центраприбавляется вес сэмпла
8.7 Рассчитывается цвет сэмпла учитывающий его вес:
8.8 К цвету центраприбавляется цвет сэмпла
Рассчитывается результат:
Вот и все, это весь алгоритм. Надеюсь, эта статья поможет разработчикам компьютерной графики или тем, кто только начинает свой путь в этом ремесле. Всем спасибо за внимание!
Автор: ainurdada
Источник [1]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/razrabotka-igr/398825
Ссылки в тексте:
[1] Источник: https://habr.com/ru/articles/848978/?utm_source=habrahabr&utm_medium=rss&utm_campaign=848978
Нажмите здесь для печати.