Как правильно осуществить понижающую конверсию в системах монтажа?

30 марта 2011, 14:37

Вопрос:

Когда я ковертирую видео системе нелинейного монтажа, снятое в формате 1080i в формат стандартной четкости 576i, постоянно получаю эффект дрожащих линий и “гребенку” на диагоналях элементов изображения. Возможно ли избавиться от данной проблемы?

Ответ:

Данная проблема связана с некорректным алгоритмом понижающей конверсии из HD в SD. Чаще всего такая проблема возникает именно при работе с системами нелинейного монтажа, так как конверсия в данном случае осуществляется “напрямую”, с минимальной степенью обработки и, как следствие, с минимальной загрузкой вычислительных ресурсов, т.е. довольно грубо. Можно смело назвать это draft-конверсией.

Однако для начала предлагаю разобраться в деталях самого принципа понижающей конверсии, чтобы в дальнейшем четко понимать методы ее реализации и выбирать наиболее правильные алгоритмы.
Итак, допустим, что мы сняли видео в режиме 1080i, т.е. имеем 1080 строк, выводящихся на экран в виде полуполей. В стандартной четкости мы имеем 576 строк, также отображающихся на экране в чересстрочном режиме. Если разделить 1080 на 576, получим значение 1,875. То есть одной строке в формате стандартной четкости соответствует не целое значение количества строк HD. Поэтому при понижающей конверсии возникает проблема некорректного соотвествия строк между форматами HD и SD: в одном случае одна строка SD формируется из двух строк HD, в другом — из одной. При этом не стоит забывать и особенности чересстрочного типа развертки, связанные в обновлением кадра посредством полуполей. В упрощенном варианте (с учетом соответствия кличества строк между HD и SD как 2 к 1) это будет выглядеть так: при понижающей конверсии полуполе 1 видео SD будет формироваться из полуполей 1 и 2 изображения HD, а полуполе 2 — уже из полуполей 2 и 3, таким образом, один полный кадр SD будет формироваться из трех полуполей HD, а уже три полуполя SD — из четырех полей HD. В результате нецелого соотвествия строк формата высокой честкости формату стандартной честкости и чередованием нечетных и четных полуполей в процессе смены кадров воникают артефакты — путаница в полуполях (см. рисунок ниже), формирующая на границах объектов паразитные явления в виде подрагивающих (стробящих) линий или дискретной структуры кривых линий в кадре (эффект “лесенки”/“расчески”).

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

Давайте поразмышляем, какой алгоритм следует взять за основу.

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

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

Меня часто спрашивают: но ведь прогрессивное изображение будет «стробить» на экране? Однако это заблуждение, ибо, во-первых, в данной ситуации прогрессивное изображение формируется из полукадров, поэтому пластика кадра практически не изменяется, и во-вторых, после осуществления понижающей конверсии прогрессивный кадр снова раскладывается на два полуполя и выводится на системы отображения именно в таком виде.
Итак, подытоживая вышенаписанное, хочется сформулировать финальный «рецепт» грамотной понижающей конверсии:
HD interlaced -> HD progressive -> SD progressive -> SD interlaced.
Для российского вещания это выглядит так:
1080/50i -> 1080/25p -> 576/25p -> 576/50i.

Андрей Василенко
---

Комментировать

  1. Вы щедрый волшебник! Уважаемый, огромнейшее Вам Спасибо за труд и откровение!
    Мы Вам благодарны!!!

    — Сергей · 19.10.2012 20:47 · #

  2. Спасибо громадное!!! Какое везение, что я нашел Ваш блог!!! Этот алгоритм лучше выполнять аппаратными или программными средствами? что порекомендуете? Спасибо, Андрей!

    — Всеволод · 03.02.2013 00:07 · #

Поля, помеченные звездочкой *, обязательны для заполнения

 

---

---