ОЦЕНКА МЕТОДА МАСКИРОВАНИЯ ВИЗУАЛЬНЫХ ИСКАЖЕНИЙ НА СТОРОНЕ ДЕКОДЕРА ДЛЯ УМЕНЬШЕНИЯ ВЛИЯНИЯ ПОТЕРЬ ПРИ ПЕРЕДАЧЕ ВИДЕОДАННЫХ ПО СЕТИ


, ассистент кафедры инфокоммуникационных систем ГУАП, *****@

, студент кафедры безопасности информационных систем ГУАП,

victor. *****@

Аннотация

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

Введение

В настоящее время существует большое количество приложений, требующих обработку и передачу видеоданных в режиме реального времени. Примерами таких приложений являются видеоконференции, видео звонки, просмотр потокового видео и т. д. Типовая схема системы передачи видеоданных для обозначенных выше сценариев приведена на рисунке 1А. Исходное видео, являющееся последовательностью кадров, подвергается сжатию (кодированию), сжатые данные разбиваются на пакеты и передаются декодеру, который по мере получения пакетов восстанавливает кадры видеопоследовательности. В процессе передачи по сети могут возникать ошибки, которые отражаются в искажении или потере пакетов, что может приводить к существенному падению качества восстановленного видео (рисунок 3Б, рисунок 3Г). В данной статье предлагается метод маскирования визуальных искажений, позволяющий уменьшить влияние такого рода ошибок на качество восстановленных видеоданных. Производится оценка предложенного метода в рамках простой модели передачи данных.

НЕ нашли? Не то? Что вы ищете?

Описание рассматриваемой модели обработки и передачи видеоданных по сети

Введем в рассмотрение модель системы обработки и передачи видеоданных (рисунок 1А), построенную на основе следующих допущений. В качестве кодека видеоданных используется эталонная реализация кодека стандарта H.264/AVC [1] - JM 16.1 [2]. Кодер (передатчик) считается фиксированным, т. е. никакие модификации в него вносить нельзя. Сжатый поток формируется следующим образом. Первый кадр видеопоследовательности кодируется в режиме Intra (I кадр), все остальные кадры обрабатываются как Inter кадры (P кадры). Одному кадру ставится в соответствие один слайс (slice). Стандарт H.264/AVC предоставляет уровень абстракции между сжатыми данными и средой передачи (NAL, Network Abstraction Layer). На этом уровне сжатые данные упаковываются в блоки, называемые NALU (NAL Units). В рассматриваемой модели предполагается, что в один NALU попадают сжатые данные только от одного макроблока, и в одном пакете передается только один NALU. Вводится модель ошибок, возникающих при передаче NALU пакетов по сети, основанная на следующих допущениях:

·  Любые искажения в пакете будут обнаружены;

·  Обнаруженные искажения трактуются как полная потеря пакета;

·  При передаче I кадра возникают ошибки, которые приводят к потере только подряд идущих пакетов (соответствующих соседним в кадре макроблокам);

·  При передаче P кадров ошибки не возникают.

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

А

Б

Рисунок 1:

А) Модель кодека и модель ошибок

Б) Предложенная модификация декодера

Перед рассмотрением предложенного метода следует отметить, что стандарт H.264 AVC предлагает ряд способов борьбы с ошибками передачи:

·  Гибкий выбор порядка следования макроблоков;

·  Произвольный порядок выдачи слайсов;

·  Генерация избыточных слайсов.

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

Описание предложенного метода

Для решения поставленной задачи предлагается использовать подходы, основанные на методах восстановления изображений (image inpainting [3]). Эти подходы позволяют произвести интерполяцию поврежденной или недоступной части изображения. Предлагается модифицировать декодер видеоданных, добавив в него блок восстановления базового кадра (рисунок 1Б). Этот блок используется для детектирования потерянных макроблоков и их последующей интерполяции. Обобщенная схема предлагаемого алгоритма восстановления приведена на рисунке 2.

Рисунок 2: Схема работы алгоритма восстановления

Предложенный алгоритм восстановления базируется на статье [4]. Основное отличие состоит в том, что на каждом шаге изменению (интерполяции) подвергается только один пиксель, а не несколько пикселей сразу.

Введем понятия, которые будут использоваться для описания алгоритма. Исходная область – область на изображении, которая остается неизменной в ходе работы алгоритма. Целевая область – область на изображении, которую необходимо изменить (интерполировать).

В ходе работы алгоритма осуществляется замена каждого пикселя из целевой области наиболее похожим пикселем из исходной области изображения. Степень похожести определяется путем анализа апертуры (окружения) целевого и исходного пикселей с использованием критерия SAD (Sum of Absolute Differences, сумма абсолютных разностей). В случае если несколько исходных пикселей имеют равный минимальный SAD, то апертура каждого из них анализируется заново, уже с использованием критерия SSD (Sum of Squared Differences, сумма квадратов разностей). Более подробное описание алгоритма приведено в [5].

Следует отметить, что описанная ранее модель системы передачи данных обладает рядом существенных упрощений, не соответствующих реальности. Тем не менее, целесообразность применения метода маскирования искажений и потенциальный выигрыш от предложенного метода можно оценить и на такой простой модели. Также, следует сказать, что существуют работы, например [6] , в которых рассматриваются схожие подходы, основанные на пространственной интерполяции потерянных областей. Отличие данной статьи заключается в том, что в качестве метода интерполяции предлагается использовать подход, показавший хорошие результаты при решении схожей задачи – задачи восстановления поврежденных изображений. Сравнение с альтернативными методами интерполяции является предметом дальнейших исследований.

Оценка предложенного метода

Оценка предложенного метода была проведена на наборе стандартных тестовых видеопоследовательностей [7]. Результаты проведенных экспериментов для двух последовательностей (с медленным и быстрым движением) отображены на рис. 3.

А В

Б Г

Рисунок 3:

А) Покадровый график PSNR для последовательности Foreman CIF

Б) Результат декодирования Intra кадра c внесенными потерями (Foreman CIF)

В) Покадровый график PSNR для последовательности Football CIF

Г) Результат декодирования Intra кадра c внесенными потерями (Football CIF)

На протестированных последовательностях удалось получить существенный выигрыш по критерию PSNR (до 13 дБ). При этом на малодинамичной последовательности Foreman (Рис.3A) величина выигрыша слабо изменяется с ростом номера кадра. Это объясняется тем, что утерянный на базовом кадре фрагмент используется при обработке большого количества кадров, т. е. его влияние сильно распространено во времени. С другой стороны для динамичной последовательности (Рис.3В) после 20 кадра графики PSNR начинают сходиться. Это объясняется тем, что со временем из-за высокой динамики движения, влияние утерянного макроблока на предсказанные кадры сильно падает. Тем не менее, на этой последовательности до 20 кадра также наблюдается существенный прирост PSNR.

Заключение

В данной работе была рассмотрена задача уменьшения влияния потерь при передаче видеоданных по сети. Для решения этой задачи было предложено использовать метод, основанный на принципах восстановления изображений. Для оценки этого метода была введена в рассмотрение простая модель обработки и передачи видеоданных по сети. В рамках этой модели удалось продемонстрировать выигрыш до 13 дБ, по сравнению с декодированием без предложенной модификации. В дальнейшем планируется провести сравнение с альтернативными методами борьбы с потерями, например [6], рассмотрев при этом более сложные модели ошибок. Кроме того, необходимо проанализировать способы снижения сложности используемого алгоритма восстановления, т. к. текущая реализация не подходит для применения в режиме реального времени.

Литература

1.  H.264/MPEG-4 part 10 AVC ISO/IEC , Coding of Audio-Visual Objects - Part 10. Advanced Video Coding, 2003

2.  JM H.264/AVC codec: http://vqegstl. ugent. be/?q=node/14

3.  M. Bertalmio, G. Sapiro, V. Caselles, and C. Ballester, Image inpainting, Computer Graphics, SIGGRAPH 2000, July 2000

4.  A. Criminisi, P. Perez, K. Toyama. Region Filling and Object Removal by Exemplar-Based Image Inpainting. IEEE Transactions on Image Processing, vol.13, No9, Sep.2004

5.  , “Метод пространственной интерполяции изображений”, 65 международная студенческая конференция ГУАП: сб. докл.: В 2 Ч. Ч. I Технические науки // СПбГУАП. СПб., 2012, 516 с. ил.

6.  H. Gharavi, S. Gao, Spatial Interpolation Algorithm For Error Concealment, IEEE International Conference on Acoustics, Speech and Signal Processing, 2008. ICASSP 2008.

7.  Xiph. org Video Test Media [derf’s collection], http://media. xiph. org/video/derf/