Анализ парапетров кодеков

76
Обзор методов анализа параметров видеокодеков и систем обработки видео Кира Рагулина Video Group CS MSU Graphics & Media Lab

Upload: msu-gml-videogroup

Post on 23-Dec-2014

776 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Анализ парапетров кодеков

Обзор методов анализа параметров видеокодеков и

систем обработки видео

Кира Рагулина

Video GroupCS MSU Graphics & Media Lab

Page 2: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

2/85

Содержание

Введение Введение

Основные понятия

Постановка задачи

Общие проблемы

Область применения

Классификация алгоритмов

Поиск оптимальных пресетов

Анализ различных значений параметров

Результаты

Планы

Page 3: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

3/85

Введение

Значения параметров

Видео

Битрейт

Закодированное видео с заданным

битрейтом

Максимальное качество!

?

Видеокодек

Page 4: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

4/85

Основные понятия

Параметры видеокодека настраивают некую часть работы видеокодека. Их значения влияют на качество и скорость кодирования

Пресет – набор значений параметров видеокодека

Качество пресета для нас характеризуется:

Временем кодирования

Качеством закодированного видео

Page 5: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

5/85

Постановка задачи

1. Проанализировать влияние различных параметров на время кодирования и качество закодированного видео

2. Найти оптимальные пресеты

Page 6: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

6/85

Общие проблемы

Способ оценки качества пресета

Большая размерность и мощность пространства возможных пресетов

Отсутствие метрики в пространстве пресетов

Сложные и неизвестные зависимости между параметрами

Оценка качества и верификация рассматриваемых алгоритмов

Page 7: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

7/85

Область применения

Подбор наилучших настроек кодека

Проверка эффективности реализации параметров

Выявление зависимостей между параметрами

Нагрузочное тестирование кодека

Выбор настроек с заданными характеристиками

Page 8: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

8/85

Поиск оптимальных пресетов Качество пресета

Способ неполного перебора

Сложность

Полнота

Точность

Стабильность

Анализ различных значений параметров Качество пресета

Неполные данные

Оценка значений параметров

Выявление зависимостей

Верификация

Стабильность

Проблемы алгоритмов

Page 9: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

9/85

Классификация алгоритмов

Анализ различных значений параметров

Подсчет средних характеристик по параметрам*

Разноцветные облака точек

Лямбда анализ

Анализ с помощью выкидывания огибающих

Поиск оптимальных пресетов

Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Алгоритм, основанный на симплекс-методе

Итеративный градиентный спуск*

Разработанные методы

Существующие методы

Page 10: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

10/85

Содержание

Введение Поиск оптимальных пресетов

Основные понятия Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Базовый алгоритм GBFOS Итеративный алгоритм GBFOS

Алгоритм, основанный на симплекс-методе Симплекс-метод Алгоритм на основе симплекс-метода

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам Разноцветные облака точек Лямбда анализ Анализ с помощью выкидывания огибающих

Результаты Планы

Page 11: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

11/85

Оптимальные пресеты

Оптимальные по Парето пресеты

Метод свертки критериев

Свертка критериев – любая числовая функция критериев

Наиболее важные свертки критериев

Линейная свертка

Свертка Гермейера

Свертка на основе отклика от идеальной точки

}pp′),p(Q≤)p′(Q),p(T≤)p′(T:p′/|p{ ≠∃

)y,...,y(=y n1

n,1=i,0c,yc>=y,c< i

n

1=iii ≥∑

n,1=i,0>a,a

ymin i

i

i

n,1=i

)y,y(ρ *

Лотов А.В., Поспелова И.И. Конспект лекций по теории и методам многокритериальной оптимизации. МГУ, 2008

Page 12: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

12/85

Свертки критериев

Линейная свертка <c,y>

Порождает подмножество оптимальных точек (огибающую)(случай невыпуклой границы)

Линии уровня – прямые

Свертка Гермейера min(yi/ai)

Порождает все множество оптимальных точек Линии уровня – конусы

Свертка на основе отклика от идеальной точки –ρ(y*,y)

Требует явного введения метрики в пространстве критериев

Лотов А.В., Поспелова И.И. Конспект лекций по теории и методам многокритериальной оптимизации. МГУ, 2008

Ка

че

ств

о

Время

Page 13: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

13/85

Определение лямбды

Сформулируем нашу задачу следующим образом:

Найти оптимальные пресеты при заданных ограничениях

на качество Qc (битрейт)

M(p) - линейная свертка для 2-х критериев

λ – задает желаемое соотношение между качеством и временем кодирования

)p(Tminarg=pcQ≤)p(Q:p

*

min)Q*)p(Q(λ+*)p(T c →

λ

1=λ′),p(Q+)p(Tλ′=)p(M),p(Mminarg=p*

Page 14: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

14/85

Интерпретация новой

постановки задачи

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,

0,85

0,9

0,95

1,

1,05

1,1

1,15

1,2

Physical Interpretation of the Convex Hull Presets

Time, T

Qu

alit

y, Q

Faster

All presets

Convex hull presets

Presets with thefixed quality

Best preset with thefixed quality

Page 15: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

15/85

Интерпретация лямбды

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,

0,85

0,9

0,95

1,

1,05

1,1

1,15

1,2

10% Best Presets for Chosen = 0,25

Time, T

Qu

alit

y, Q

Faster

Bett

er

Qualit

y

All presets

Line M=*T+Q with smallest M

Line M=*T+Q with highest M

10% Best Presets for Chosen

One best preset for chosen

Better Common Quality

Page 16: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

16/85

Содержание Введение Поиск оптимальных пресетов

Основные понятия Алгоритм, основанный на методе отсечения ветвей

дерева (GBFOS) Базовый алгоритм GBFOS Итеративный алгоритм GBFOS

Алгоритм, основанный на симплекс-методе Симплекс-метод Алгоритм на основе симплекс-метода

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам Разноцветные облака точек Лямбда анализ Анализ с помощью выкидывания огибающих

Результаты Планы

Page 17: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

17/85

Обозначения

Пусть имеется M параметров

Параметр i имеет значения 1,…,ni, которые упорядочены по улучшению качества (ухудшению времени)

Значит, пресет – набор a=(a1,…,aM), где ai {1,…,ni}

Каждому пресету a соответствует T(a), Q(a) – его время кодирования и качество закодированного видео

Построим график зависимости Q от T

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Page 18: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

18/85

Огибающая линия

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Вы

ше

ка

че

ств

о

0 2 4 6 8 10 120.8

0.85

0.9

0.95

1

1.05

1.1

1.15

1.2

1.25

Qu

alit

y, Q

Time, T

Presets Lying on Convex Hull

Data points

Convex hull points

Меньше время кодирования

Page 19: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

19/85

Базовый алгоритм GBFOS

Алгоритм предполагает, что параметры независимы и аддитивны

Замеряются пресеты вида

mi,j=(n1,…ni-1,j,ni+1,…,nM), где j=1,…,ni

Алгоритм работает итеративно, в конце каждой итерации получается очередной оптимальный пресет

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Page 20: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

20/85

Базовый алгоритм GBFOS

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Время

Ка

че

ств

о

Параметр 1

Время

Ка

че

ств

о

Параметр 2

Время

Ка

че

ств

о

Параметр 3Выбор первого оптимального

пресета

Вычисление углов наклона

Находим наименьший угол наклона

4

7

4

Получаем очередной оптимальный пресет

2

Итерация 1Итерация 2

Обновляем углы наклона

3

Итерация N

Повторяем, пока не получим последний оптимальный пресет

1 2

1

Page 21: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

22/85

Итеративный алгоритм GBFOS

Усовершенствованный базовый алгоритм GBFOS

Отличается от базового алгоритма тем, что в конце каждой итерации обновляет точки, делая дополнительные замеры

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Page 22: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

23/85

Итеративный алгоритм GBFOS

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Время

Ка

че

ств

о

Параметр 1

Время

Ка

че

ств

о

Параметр 2

Время

Ка

че

ств

о

Параметр3 Выбор первого

оптимального пресета

Вычисление углов наклона

Находим наименьший угол наклона

4

7

4

Получаем очередной оптимальный пресет

2

Итерация 1Итерация 2

Вычисляем углы наклона

и т.д.

Обновляем точки, используя значение

2 параметра 16

Page 23: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

24/85

Условия тестирования

Для тестирования использовались:

кодек x264 (Март 26, 2006 версия)

значения параметров: ref = 1,…,16

partitions = 10 значений

subme = 1,…,7

trellis = 0, 1, 2

3 набора данных: ASL-1 (10 QCIF последовательностей)

ASL-2 (10 320x240 последовательностей)

Standart (15 QCIF последовательностей)

3 битрейта: 30, 150 и 300 Кбит/с

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Page 24: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

25/85

Результаты: сложность

Пусть имеется M параметров

Параметр i имеет значения 1,…,ni

Значит, пресет – набор a=(a1,…,aM), где ai {1,…,ni}

Количество замеров:

Полный перебор:

Базовый алгоритм GBFOS:

Итеративный алгоритм GBFOS:

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

3360=nM

1=ii∏

%1≈33=1+Mn∑M

1=ii

%8≈268

Page 25: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

26/85

Результаты: точность

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Максимальная разница PSNR между огибающей линией и Базовым алгоритмом

GBFOS: 0.707 dB

Итеративным алгоритмом GBFOS: 0.575 dB

Page 26: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

27/85

Результаты: стабильность

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Максимальная разница PSNR между огибающей линией иобоими алгоритмами:

< 0.55 dB

Page 27: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

28/85

Результаты: стабильность

R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Opti-mization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proc. IEEE, 2007.

Максимальная разница PSNR для обоих алгоритмов

для одинакового тестового и тренировочного набора данных: < 0.71 dB

для разных: < 0.55 dB

Page 28: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

32/85

Содержание

Введение Поиск оптимальных пресетов

Основные понятия Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Базовый алгоритм GBFOS Итеративный алгоритм GBFOS

Алгоритм, основанный на симплекс-методе Симплекс-метод Алгоритм на основе симплекс метода

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам Разноцветные облака точек Лямбда анализ Анализ с помощью выкидывания огибающих

Результаты Планы

Page 29: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

33/85

Симплекс-метод

Другие названия: метод Нелдера — Мида

метод деформируемого многогранника

Задача:

Суть метода: последовательное перемещение и деформирование

симплекса вокруг точки экстремума

Характеристики: + не использует градиентов функции

+ применим к негладким функциям

− находит локальный минимум

− f – скалярная функция

min)x,...,x(f n1 →

Page 30: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

34/85

Симплекс-метод

Симплекс - многогранник, имеющий n+1 вершину, где n - число факторов, влияющих на процесс (параметров)

Примитивы:

Параметры метода: коэффициент отражения α > 0 (обычно α=1) коэффициент сжатия β > 0 (обычно β=0,5)

коэффициент растяжения γ > 0 (обычно γ=2)

симплекс отражение (α)отражение и

растяжение (γ)сжатие (β)

глобальное

сжатие (0.5)

maxmaxmax max

minmin

Page 31: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

35/85

Симплекс-метод

1. Инициализация: x1,…,xn+1 - симплекс n-мерного пространств

2. Вычисляем f(xi), i=1,…,n+1

3. Выбираем

4. Вычисляем

5. Проводим оптимизацию шага в направлении от xm к xc

(отражение и растяжение или сжатие)

6. Переходим на шаг 3, пока оптимизация изменяет положения вершин

7. Выбираем вершину с наименьшим значением f и вокруг нее строим симплекс меньшего размера (сжатие)

8. Переходим на шаг 2, пока размер очередного симплекса больше требуемой точности

)x(fmax=)x(f:m i1+n,1=i

m

∑m≠iic x

n

1=x

Page 32: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

36/85

Симплекс-метод

Page 33: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

38/85

Алгоритм на основе симплекс-метода

Optimizer O контролирует выход из цикла

Trial generator G генерирует очередной набор значений параметров с помощью симплекс-метода

Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 34: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

39/85

Алгоритм на основе симплекс-метода

Алгоритм на основе симплекс-метода был применен авторами статьи для решения следующих задач:

+ Выбор адаптивного параметра квантования макроблоков

− Выбор матрицы квантования

Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 35: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

43/85

Процесс квантования при кодировании

Макроблок после применения DCT преобразования:

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

Квантование – деление величины на некоторое целое число, называемое квантом

Операция квантования применяется дважды

Page 36: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

44/85

Процесс квантования при кодировании

1. С помощью матрицы квантования:

Xafter_QM = Xbefore_QM ./ QM

Xafter_QM – макроблок до 1 квантования

Xbefore_QM – макроблок после 1 квантования

QM - матрица квантования (параметр видео)

2. С помощью порога квантования

Xafter_QP = round (Xafter_QM / Qstep)

Xafter_QP – макроблок до 1 квантования

Qstep – шаг квантования, стандарт задает 52 возможных значения которые проиндексированы параметром квантования QP (параметр макроблока)

Чем больше QP, тем выше степень сжатия и ниже качество

Page 37: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

46/85

Адаптивный параметр квантования макроблоков

Система визуализации для человека (HVS) менее чувствительна к областям:

с большим движением

с высокими частотами

где DC коэффициент (несущая частота) сильно отличается от DCкоэффициента всего кадра

Qstep_MB=Qstep_PICfmotfhffdc

Qstep_MB, Qstep_PIC – шаги квантования макроблока и всего кадра

fmot, fhf, fdc – модифицирующие коэффициенты движения, высоких частот и DC коэффициента

PQMB=PQPIC+round (6 log2 (fmotfhffdc))

PQMB, PQPIC – параметры квантования макроблока и всего кадраZhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 38: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

47/85

Модификационные коэффициенты

Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 39: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

48/85

Алгоритм на основе симплекс-метода

Симплекс-метод был применен для нахождения оптимальных коэффициентов αmot, αhf, αdc для 4-х последовательностей одновременно

Начальные значения: (αmot, αhf, αdc)=(1, 1, 1)

Условие останова: VQM уменьшается менее чем на 0.001

Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 40: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

49/85

Результаты

high profile H.264 видеокодек

2-х уровневая B GOP структура длины 16

Битрейт: 1.5Mbps для определения оптимальных значений

1.0, 1.5, 2.0, 3.0, 5.0 Mbps для сравнения

Метрика качества – VQM

4 последовательности 480P (720x480 progressive), 30fps, 450 кадров Chromakey

Driving

Opening Ceremony

Whale Show Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 41: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

50/85

Результаты

Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proc. SPIE, 2008.

Page 42: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

51/85

Содержание

Введение Поиск оптимальных пресетов

Основные понятия Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Базовый алгоритм GBFOS Итеративный алгоритм GBFOS

Алгоритм, основанный на симплекс-методе Симплекс-метод Алгоритм на основе симплекс метода

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам Разноцветные облака точек Лямбда анализ Анализ с помощью выкидывания огибающих

Результаты Планы

Page 43: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

52/85

Итеративный градиентный спуск

p – текущий пресетpi – соседние пресеты для pS – множество оптимальных пресетовλ – текущее значение лямбдыλi – кандидаты на новое значение лямбды

M(p)=T(p)+λQ(p)

????? M(p)

????? M(pi)

i∀)p(M≤)p(M i

p=pi

}p{S=S ∪?????)p(Q)p(Q

)p(T)p(T=λ

i

ii

λλi ≥∃

iλ≥λ:i

λmin=λi

???

??

Найти M(p)

Найти M(pi)

i∀)p(M≤)p(M i

p=pi

Найти

iλ≥λ:i

λmin=λi

нет

данет

да

}p{∪S=S)p(Q)p(Q

)p(T)p(T=λ

i

ii

λλi ≥∃F

λ=λ0

p=p0

S=[]

Page 44: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

54/85

Результаты

1 2 3 4 5 6 7 8 9 10

0.85

0.9

0.95

1

1.05

1.1

1.15

1.2

Time, T

Qu

alit

y, Q

Gradient Search vs Full Search ("bus")

All presets

Auxiliary presets used by gradient search

Optimal presets found by full search only

Not optimal presets found by gradient search

Optimal presets found by gradient search

Page 45: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

55/85

Содержание Введение

Поиск оптимальных пресетов Основные понятия

Алгоритм, основанный на методе отсечения ветвей дерева(GBFOS)

Алгоритм, основанный на симплекс-методе

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам

Разноцветные облака точек

Лямбда анализ

Анализ с помощью выкидывания огибающих

Результаты

Планы

Page 46: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

56/85

Подсчет средних характеристик по параметрам

В результате полного перебора пресетов, каждое значение параметра присутствует в замерах одинаковое количество раз

Считается среднее значение и дисперсия По PSNR По битрейту

Время кодирования не учитывается

Для ускорения перебора используются ортогональные массивы

56

n

i

iPSNRn

Q1

21log101

n

i

ibpsn

Q1

21log102

Sangyoun Lee; Madisetti, V.K. Parameter optimization of robust low-bit-rate video coders. IEEE,1999

Page 47: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

57/85

Результаты

57Sangyoun Lee; Madisetti, V.K. Parameter optimization of robust low-bit-rate video coders. IEEE,1999

Page 48: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

58/85

Результаты

Обучение: ―foreman‖

Тестирование: ―carphone‖, ―mother-daughter‖, ―suzie‖, ―salesman‖, ―trevor‖

По сравнению с рекомендациями TMN5 (H.263) получено +0.2 dB в среднем (по PSNR)

58Sangyoun Lee; Madisetti, V.K. Parameter optimization of robust low-bit-rate video coders. IEEE,1999

Page 49: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

59/85

Содержание Введение

Поиск оптимальных пресетов Основные понятия

Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Алгоритм, основанный на симплекс-методе

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам

Разноцветные облака точек

Лямбда анализ

Анализ с помощью выкидывания огибающих

Результаты

Планы

Page 50: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

60/85

Анализ раскрашенных

облаков точек

Графики строятся для каждого рассматриваемого параметра

Точки, соответствующие одному значению выбранного параметра, раскрашены в один цвет

Точки раскрашиваются в произвольном порядке

Анализируют расположения облаков точек одного цвета:

Чем больше точек одного цвета лежит рядом с огибающей линией, тем лучше соответствующее этому цвету значение параметра

Page 51: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

61/85

Анализ раскрашенных

облаков точек

Page 52: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

62/85

Анализ раскрашенных

облаков точек

Характеристики:

+ Простота и наглядность метода

− Выводы совершаются на основе субъективного визуального анализа расположения облаков точек одного цвета

Page 53: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

63/85

Содержание Введение

Поиск оптимальных пресетов Основные понятия

Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Алгоритм, основанный на симплекс-методе

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам

Разноцветные облака точек

Лямбда анализ

Анализ с помощью выкидывания огибающих

Результаты

Планы

Page 54: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

64/85

Лямбда анализ

Page 55: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

65/85

Выбор лямбд

Выбираем набор значений λ так, чтобы количество новых лучших пресетов для соседних λ было постоянным

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,

0,85

0,9

0,95

1,

1,05

1,1

1,15

1,2

10% Best Presets for Chosen

Time, T

Qu

alit

y, Q

Faster

Bett

er

Qualit

y

other presets

= 0,01 (Time = 2,28, Quality = 0,84)

= 0,03 (Time = 2,28, Quality = 0,84)

= 0,06 (Time = 1,31, Quality = 0,87)

= 0,11 (Time = 1,15, Quality = 0,88)

= 0,21 (Time = 0,88, Quality = 0,92)

= 0,26 (Time = 0,88, Quality = 0,92)

= 0,33 (Time = 0,84, Quality = 0,93)

= 0,50 (Time = 0,55, Quality = 1,06)

= 1,12 (Time = 0,46, Quality = 1,14)

Page 56: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

66/85

Выбор лучших пресетов

Для каждого значения λ рассматривается величина:

Лучшими считаются 10% пресетов с минимальным значением M(p)

)p(Qλ+)p(T=)p(M

Page 57: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

67/85

Интерпретация лямбды

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,

0,85

0,9

0,95

1,

1,05

1,1

1,15

1,2

10% Best Presets for Chosen = 0,25

Time, T

Qu

alit

y, Q

Faster

Bett

er

Qualit

y

All presets

Line M=*T+Q with smallest M

Line M=*T+Q with highest M

10% Best Presets for Chosen

One best preset for chosen

Better Common Quality

Page 58: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

68/85

Вычисление плотности

пресетов

- плотность в % пресетов со значением параметра равным k для заданной λ

- количество пресетов со значением параметра равным k среди 10% лучших пресетов для заданной λ

- количество пресетов со значением параметра равным k среди всех пресетов

k

λk

N

N=)k,λ(N

kN

λkN

∑m

% )m,λ(N

)k,λ(N100=)k,λ(N

)k,λ(N%

Для каждого параметра строится график зависимости плотности пресетов с каждым возможным значением k от λ:

Page 59: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

69/85

Лямбда анализ

T = 2,28 1,651,311,15 0,88 0,84 0,55 0,46 0,42 T = 0,420,

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,8

0,9

1,

Time, T

Q = 0,84 0,860,870,88 0,92 0,93 1,06 1,14 1,19 Q = 1,19

0,

10,

20,

30,

40,

50,

60,

Nu

mb

er

of B

est P

rese

ts, in

%

Motion Estimation Method

Greater Ratio of Time to Quality

Gre

ate

r R

ela

tive Q

uantity

of

Poin

ts

dia

hex

umh

tesa

Page 60: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

70/85

Лямбда анализ

Анализируют линии на графике соответствующие разным значениям заданного параметра:

Чем выше линия, тем лучше значение параметра

Если у линии есть максимум при каком-то λ, значит это значение λ оптимально, если мы хотим использовать это значение параметра

Page 61: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

71/85

Лямбда анализ

1 2 3 4 5 6 7 8 9 10 11

0.85

0.9

0.95

1

1.05

1.1

1.15

1.2

Lambda Analysis vs Convex Hull Presets

Time, T

Qu

alit

y, Q

All presets

Convex hull presets

Lambda analysis best presets

Lambda analysis predicted best presets

Page 62: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

72/85

Лямбда анализ

Характеристики:

+ Позволяет оценивать эффективность кодирования при различном качестве кодирования

+ Позволяет находить оптимальное соотношение времени и качества для конкретного значения параметра (точка максимума на графике)

− Выбор набора значений λ

− Информация о параметрах, лучших в экстремальных случаях может потеряться

− Выводы анализа зависят от выбора значений параметров*

Page 63: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

73/85

Содержание

Введение Поиск оптимальных пресетов

Основные понятия Алгоритм, основанный на методе отсечения ветвей

дерева (GBFOS) Алгоритм, основанный на симплекс-методе Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам Разноцветные облака точек Лямбда анализ Анализ с помощью выкидывания огибающих

Результаты Планы

Page 64: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

74/85

Анализ с помощью

выкидывания огибающих

Page 65: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

75/85

Ранжирование пресетов

S – текущее множество пресетовpi – пресеты, лежащие на огибающей линии для SR(p) – ранг пресета

Находим пресеты p1,…,pn, лежащие на огибающей

Исключаем p1,…,pn

ПрисваиваемR(p1)=…=R(pn)=k

k=k+1S пусто?да

нет

F

k=1S=все пресеты

Page 66: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

76/85

Разбиение пресетов на

классы

Разбиваем все пресеты на классы по рангу R:

0≥n]},n11,n10+1[∈)p(R|p{=classn

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,

0,85

0,9

0,95

1,

1,05

1,1

1,15

1,2

Distance from Convex Hull

Time, T

Qu

alit

y, Q

Faster

Bett

er

Qualit

y

other presets

convex hulls ## 1 - 10

convex hulls ## 11 - 20

convex hulls ## 21 - 30

convex hulls ## 31 - 40

convex hulls ## 41 - 50

convex hulls ## 51 - 60

convex hulls ## 61 - 70

convex hulls ## 71 - 80

convex hulls ## 81 - 90

convex hulls ## 91 - 100

convex hulls ## 101 - 110

convex hulls ## 111 - 120

Page 67: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

77/85

Вычисление плотности

пресетов

- плотность в % пресетов со значением параметра равным k в классе n

- количество пресетов со значением параметра равным k среди 10% лучших пресетов в классе n

- количество пресетов со значением параметра равным k среди всех пресетов

k

nk

N

N=)k,n(N

kN

nkN

∑m

% )m,n(N

)k,n(N100=)k,n(N

)k,n(N%

Для каждого параметра строится график зависимости плотности пресетов с каждым возможным значением k от номера класса n:

Page 68: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

78/85

Анализ с помощью

выкидывания огибающих

0, 2, 4, 6, 8, 10, 12, 14, 16,

10,

20,

30,

40,

50,

60,

70,

Numbers of Convex Hulls

Nu

mb

er

of B

est P

rese

ts, in

%B-frames

Closer to the Really Convex Hull (Better Common Quality)

Gre

ate

r R

ela

tive Q

uantity

of

Poin

ts

0

2

4

Be

tte

rGood presets

Be

tter

Bad presets

Page 69: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

79/85

Анализ с помощью

выкидывания огибающих

Анализируют линии на графике соответствующие разным значениям заданного параметра:

Чем выше линия для маленьких номеров классов, тем лучше значение параметра

Чем ниже линия для больших номеров классов, тем лучше значение параметра

Если две линии пересекаются, то можно сказать, что одно значение параметра лучше другого

Page 70: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

80/85

Анализ с помощью

выкидывания огибающих

Характеристики:

+ Позволяет находить оптимальные значения параметров, когда нет априорных знаний о желаемом соотношении между скоростью кодирования и качеством закодированного видео

− Выводы анализа зависят от выбора значений параметров*

Page 71: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

81/85

Содержание

Введение Поиск оптимальных пресетов

Основные понятия Алгоритм, основанный на методе отсечения ветвей

дерева (GBFOS) Алгоритм, основанный на симплекс-методе Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам Разноцветные облака точек Лямбда анализ Анализ с помощью выкидывания огибающих

Результаты Планы

Page 72: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

82/85

Результаты

(вместе с Володей)

Разработана система для массовых замеров параметров видеокодека

Разработан метод поиска оптимальных пресетов, требующий запуска около 15% пресетов

Разработаны среда для анализа параметров 2-х критериальной задачи: Анализ раскрашенных облаков Лямбда анализ (Анализ с помощью выкидывания огибающих)

Проведен анализ параметров видеокодеков с помощью среды Проведен анализ стабильности методов анализа

относительно: Выбора последовательностей Ошибок замеров

Page 73: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

83/85

Содержание Введение

Поиск оптимальных пресетов Основные понятия

Алгоритм, основанный на методе отсечения ветвей дерева (GBFOS)

Алгоритм, основанный на симплекс-методе

Итеративный градиентный спуск

Анализ различных значений параметров Подсчет средних характеристик по параметрам

Разноцветные облака точек

Лямбда анализ

Анализ с помощью выкидывания огибающих

Результаты

Планы

Page 74: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

84/85

Планы

Верификация методов анализа Анализ стабильности методов анализа относительно:

выбора последовательностей выбора значений параметров ошибок замеров выбора метрики качества

Объединение выводов нескольких методов анализа Анализ зависимостей параметров Возможность анализа параметров по неполным

данным Разработка других методов анализа

Page 75: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

85/85

Вопросы

Page 76: Анализ парапетров кодеков

CS MSU Graphics & Media Lab (Video Group)

Only for Maxus

86/85

Литература

1. R. Vanam, E. Riskin, S. Hemami, R. Ladner. Distortion-Complexity Optimization of the H.264/MPEG-4 AVC Encoder using the GBFOS Algorithm. Proceedings of the IEEE Data Compression Conference, Snowbird, UT, March 2007.

2. Zhang, Huipin; Cote, Guy. Determining optimal configuration of video encoding parameters using numerical search algorithms. Proceedings of the SPIE, Volume 6822, pp. 682211-682211-7 (2008).

3. Лотов А.В., Поспелова И.И. Конспект лекций по теории и методам многокритериальной оптимизации. – М.: МГУ, 2008.

4. Sangyoun Lee; Madisetti, V.K. Parameter optimization of robust low-bit-rate video coders. IEEE,1999.

5. D.Saupe, M.Ruhl, R.Hamzaoui, L.Grandi, D.Marini. Optimal hierarchical partitions for fractal image compression. IEEE,1998.