Типы изображений для сжатия видео
-
Основы сжатия видео
- Видеокадры сжимаются с использованием различных алгоритмов, каждый со своими преимуществами и недостатками.
- Типы изображений (или кадров) различаются по степени сжатия и способу использования предыдущих кадров.
-
Типы изображений
- I-кадры: наименее сжимаемые, не требуют декодирования другими кадрами.
- P-кадры: используют данные из предыдущих кадров, более сжимаемы, чем I-кадры.
- B-кадры: используют данные из предыдущих и прямых кадров, обеспечивают максимальную степень сжатия.
-
Структура видео
- Порядок расположения кадров I, P и B называется группой изображений.
- Рамка — это законченное изображение, поле — это набор линий сканирования, составляющих частичное изображение.
- Кадры P и B также известны как промежуточные кадры.
-
Прогнозирование и кодирование
- P-кадры содержат изменения в изображении по сравнению с предыдущим кадром, экономят место.
- B-кадры используют различия между текущим кадром и предыдущими и последующими для определения содержимого.
- В стандарте H.264 степень детализации типов прогнозирования снижена до «уровня фрагмента».
-
Макроблоки и фрагменты
- Изображения разбиваются на макроблоки, типы прогнозирования могут быть выбраны для каждого макроблока.
- В H.264 возможно четкое выделение стиля прогнозирования для каждого фрагмента.
-
Дополнительные типы кадров
- SI-кадры/фрагменты облегчают переключение между кодированными потоками.
- SP-кадры/фрагменты также облегчают переключение между кодированными потоками.
- Многокадровая оценка движения улучшает качество видео при сохранении степени сжатия.
- Рамки SI и SP улучшают коррекцию ошибок.
-
Внутрикодированные кадры
- I-кадры содержат все изображение целиком, кодируются без привязки к другим кадрам.
- Могут генерироваться для создания произвольной точки доступа.
-
Предсказанные кадры
- P-кадры требуют предварительного декодирования другого изображения для расшифровки.
- Могут содержать данные изображения, смещения вектора движения и их комбинации.
-
Двунаправленные предсказанные кадры
- B-кадры требуют предварительного декодирования последующих кадров.
- Могут содержать данные изображения и/или смещения вектора движения.
- В старых стандартах B-кадры использовались только для одного глобального вектора компенсации движения.
- H.264 позволяет использовать B-кадры в качестве ориентиров для декодирования других кадров.
Полный текст статьи: