ENGLISH

VirtualDub MSU Deblocking Filter v2.2

MSU Graphics & Media Lab (Video Group)

Алгоритм: Дмитрий Ватолин
Реализация: Сергей Гришин

Фильтр предназначен для восстановления качества видео, взятого с DVD (например, когда туда записано 4 часа видео), VideoCD или после видеокодеков H.261, H.263, DivX 3, DivX 4, XviD.

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

Основным достоинством фильтра является то, что он поднимает интегральное качество в наиболее распространенной PSNR метрике по сравнению с оригинальным фильмом! Т.е. фильм после декомпрессии при сравнении с оригиналом показывает меньшее качество, чем фильм после декомпрессии и деблокинга. (При этом оригинал, естественно, никак не используется, только распакованное видео).


Что нового в версии 2.0?


  • Ускорение по сравнению с версией 1.2 составляет 2.1 раза в режиме "High Quality", и 2.4 раза - в режиме "High speed".
    • Ускорено преобразование цветовых пространств (SSE).
    • Ускорен горизонтальный деблокинг (ММХ).
    • Реализована возможность изменения параметра скорость/качество (прирост скорости 25%).
  • Поднято качество.
    • Доработан алгоритм автоматического определения степени блочности (сохраняется больше деталей).
    • Значительно улучшена обработка цветовых компонент.
    • Изменены все базовые методы деблокинга. Теперь после обработки отсутствуют неоднородности вдоль границ блоков, изображение выглядит более "естественно".

Что нового в версии 2.1?


  • Использования SSE-инструкций только в случае если процессор поддерживает SSE
  • Устранен баг: теперь не создается лог-файл
  • Устранен баг: теперь фильтр не "падает" при обработке последовательностей высокого разрешения

Что нового в версии 2.2?


  • Устранен баг: теперь автоматическое определение поддержки SSE инструкций работает правильно
  • Добавлена возможность отключения SSE инструкций, в случае если SSE поддерживается


Настройки


Интерфейс позволяет настраивать качество и скорость работы фильтра. В режиме "High speed" работает ускоренный (MMX) горизонтальный деблокинг, качество которого по сравнению с режимом "High quality" немного ниже. В режиме "High speed" фильтр работает в среднем на 25% быстрее. При помощи параметров U-deblock и V-deblock можно включать/отключать обработку цветовых компонент (включение заметно повышает визуальное качество). Используя параметр "SSE instructions" возможно вручную отключать использование SSE в случае, если SSE поддерживается.

Фильтр поддерживает Job Control, что позволяет использовать его в AviSynth. Пример использования:

LoadVirtualDubPlugin("...\VirtualDub\plugins\MSU_DeBlock.vdf","Deblock", 0)
clip=AVISource("...\clip_input.avi", false, "RGB24")
clip.ConvertToRGB32.Deblock(1, 1, 1, 1)

Первый параметр фильтра - деблокинг цветовой компоненты U
Второй параметр фильтра - деблокинг цветовой компоненты V
Третий параметр фильтра - режим работы на высоком качестве
Четвертый параметр фильтра - использование SSE инструкций

Внешний вид фильтра


Примеры работы фильтра


Рассмотрим работу данного фильтра на тестовом ролике "Battle" (фрагмент из фильма Терминатор-2). Случай очень низкого битрейта:

Фрагмент из фильма
кадр до обработки
После воздействия фильтра v1.2
тот же кадр после обработки версией 1.2
После воздействия фильтра v2.0
тот же кадр после обработки версией 2.0

На следующем примере рассмотрен случай обработки последовательности "foreman" (152 кадр, сжат при помощи Xvid с указанием битрейта 50kbs):

Фрагмент из фильма
кадр до обработки
После воздействия фильтра v1.2
тот же кадр после обработки версией 1.2
После воздействия фильтра v2.0
тот же кадр после обработки версией 2.0

Примеры работы фильтра на последовательности "battle" в порядке возрастания битрейта (кадр 65, Xvid с указанием битрейта 100, 300, 500kbs):

Фрагмент из фильма
кадр до обработки
После воздействия фильтра v2.0
тот же кадр после обработки
Фрагмент из фильма
кадр до обработки
После воздействия фильтра v2.0
тот же кадр после обработки
Фрагмент из фильма
кадр до обработки
После воздействия фильтра v2.0
тот же кадр после обработки

Ниже рассмотрены примеры работы на последовательности "foreman"(кадр 155, Xvid 50, 75, 100 kbs):

Фрагмент из фильма
кадр до обработки
После воздействия фильтра
тот же кадр после обработки
Фрагмент из фильма
кадр до обработки
После воздействия фильтра
тот же кадр после обработки
Фрагмент из фильма
кадр до обработки
После воздействия фильтра
тот же кадр после обработки

На графике изображены две ветви: первая (Blocked) соответствует фильму после декомпрессии, вторая (MSU Deblocking) - после декомпрессии и деблокинга. По оси ординат отложена формальная метрика качества PSNR фильмов по сравнению с оригинальным - несжатым роликом (чем она выше, тем выше качество), по оси абсцисс - битрейт. Таким образом, легко видеть, что качество фильма после фильтра заметно выше, причем выигрыш тем больше, чем меньше битрейт:

График изменения качества в зависимости от битрейта
Изменение качества после деблокинга

График изменения качества в зависимости от битрейта
Изменение качества после деблокинга


Download



Смотрите также


По вопросам о работе фильтра пожалуйста обращайтесь по адресу:  
Связаться с нами можно по адресу:  


Другие материалы


Материалы по видео


Смотрите также материалы:
- По цветовым пространствам
- По JPEG
- По JPEG-2000