Трилатеральная постфильтрация карт глубины



Дата17.09.2018
Размер3.88 Mb.
#49215

Д. С. Ватолин (к.ф.-м.н.)1, А. А. Воронов (студент)1, М. А. Смирнов (к.т.н.)2



ТРИЛАТЕРАЛЬНАЯ ПОСТФИЛЬТРАЦИЯ КАРТ ГЛУБИНЫ 1

1МГУ им. Ломоносова,
факультет Вычислительной Математики и Кибернетики,

Лаборатория Компьютерной Графики и Мультимедиа;



2ЗАО «ЮВсофт»

Аннотация


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

Введение


Одним из распространённых способов создания трёхмерного видео является изменение параллакса изображения с использованием карты глубины. Для этих целей необходима информация о расстоянии от камеры до объектов в сцене. Карта глубины – это визуализация расстояния до объектов в каждой точке изображения: чем дальше объект, тем более тёмным цветом он отображается. Создание карт глубины – достаточно трудоёмкий процесс. В общем случае задача создания карты глубины по изображению алгоритмически неразрешима, и до недавнего времени на практике активно использовался подход ручного построения карт глубины с привлечением специально обученных художников, что достаточно долго и неоправданно дорого с финансовой точки зрения. Однако для некоторых случаев возможно создание карт глубины по информации из сцены. Есть работы с применением методов машинного обучения, где эта информация извлекается из достаточно большой базы тестовых изображений в разном масштабе [1]. Также в [2] был предложен метод, использующий то свойство, что объекты переднего плана обычно находятся в фокусе и имеют чёткие границы, а с удалением от камеры границы объектов становятся всё менее резкими. Хорошо известен также подход, предложенный в [3], согласно которому можно строить глубину на основе геометрических свойств сцены, например, с учётом точки схождения перспективы, положения линии горизонта и т. п. Кроме того, для сцен, в которых есть движение камеры, можно построить карту глубины, исходя из перемещения объектов в сцене, используя построение оптического потока сцены. В случае панорамной съёмки смещение объекта в одном кадре относительно другого зависит от того, насколько близко этот объект находился к камере. Данный поход достаточно детально описан в [4] и [5].

Описание решаемой проблемы


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

Для фильтрации применяют как простое гауссово сглаживание [6] с разными вариациями, так и более сложные методы фильтрации, например, билатеральный [7]. Также активно развиваются подходы, которые сводятся к оптимизации энергии по всему изображению кадра, что является достаточно затратным по времени обработки, однако позволяет повысить качество итоговых результатов алгоритма [8].


Предложенный метод


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

Элементы матрицы вычисляются на основании суммы по всем цветовым компонентам пикселя модуля разности между текущим пикселям и его соседями, и линейно зависят от полученного значения.



,

где


r, g и b здесь – это значения по каждой цветовой компоненте, а значение порога thresholdcolor выбирается в завимости от обрабатываемых данных.

Для вычисления элементов этой матрицы мы использовали зависимость, основанную на логистической функции:



, где

,

t – величина, которая отвечает за силу влияния разности по глубине на итоговый вклад пикселя и которая выбирается в зависимости от обрабатываемых данных, z(x,y) – значения с исходной карты глубины.

Затем вычисляется итоговое ядро свёртки K(x,y)для пикселя с координатами (x,y), элементы которого являются поэлементным произведением G, I(x,y) и D(x,y):



.

И вычисляется итоговое значение пикселя r(x,y), которое записывается в результат:



.

Далее в результатах приведен пример работы трилатеральной фильтрации и её сравнение с разными вариантами билатеральной фильтрации: в одном случае мы исключаем составляющую I(x,y), в другом – D(x,y). Как видно, при исключении из построения ядра карты глубины, мы получаем «затекания» глубины на соседние объекты, похожие по цвету. А если не брать в расчёт исходное изображение, то качество краёв объектов заметно уступает.


Дальнейшая работа


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

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

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

Результаты


Приведены результаты работы алгоритма в сравнении с исходной картой глубины, а также результатами билатеральной фильтрации по глубине и по исходному изображению.

(a)

(b) (c)

(d) (e)


Рис. 1. Приведен кадр последовательности olymp (a), исходная карта глубины (b), результат билатеральной фильтрации по глубине (c), результат билатеральной фильтрации по изображению (d), результат трилатеральной фильтрации (e).

(a)


(b)


(c)


(d)


Рис. 2. Приведен кадр последовательности carousel (a), исходная карта глубины (b), результат билатеральной фильтрации по изображению (c), результат трилатеральной фильтрации (d).



  1. (b)

(c) (d)


Рис. 3. Трёмерная визуализация кадра из последовательности olymp с исходной картой глубины (a, c) и с отфильтрованной предложенным методом (b, d)

Итоги


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

Список литературы.


1. Ashutosh Saxena, Sung H. Chung, Learning Depth from Single Monocular Images, Advances in Neural Information Processing Systems 18, p. 1161-1168, MIT Press, 2006.

2. Shaojie Zhuo, Terence Sim, On the Recovery of Depth from a Single Defocused Image, In proceedings of International Conference on Computer Analysis of Images and Patterns (CAIP), vol. 5702/2009, p. 889-897, 2009

3. S. Battiatoa, S. Curtib, M. La Casciac, M. Tortorac, Depth-Map Generation by Image Classification, in proceedings of SPIE, vol. 5302, 95, 2004

4. Mahsa T. Pourazad, Panos Nasiopoulos, Rabab K.Ward, Generating the DepthMap from the Motion Information of H.264-Encoded 2D Video Sequence, EURASIP Journal on Image and Video Processing Volume 2010

5. Donghyun Kim, Dongbo Min, Kwanghoon Sohn, Stereoscopic Video Generation Method Using Motion Analysis, In Proc. of the 3DTV Conference, p. 1-4, 2007

6. Zhang, L., Tam, W. J., Stereoscopic Image Generation Based on Depth Images for 3D TV, IEEE Trans. on Broadcasting, vol. 51, pp. 191-199, Jun. 2005.

7. Chao-Chung Cheng, Chung-Te Li, Po-Sen Huang, Tsung-Kai Lin, Yi-Min Tsai, and Liang-Gee Chen, A Block-based 2D-to-3D Conversion System with Bilateral Filter, International Conference on Consumer Electronics (ICCE), p. 1-2, 2009

8. Zhang, G., Jia, J., Wong, T., Bao, H., Recovering Consistent Video Depth Maps via Bundle Optimization, Proceeding of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), p. 1-8, 2008




1 Данная работа поддержана грантом РФФИ 10-01-00697-а.



Поделитесь с Вашими друзьями:




База данных защищена авторским правом ©vossta.ru 2022
обратиться к администрации

    Главная страница