В области сжатия видео видеокадр сжимается с использованием различных алгоритмов с различными достоинствами и недостатками, сосредоточенных в основном вокруг количества сжатия данных . Эти различные алгоритмы для видеокадров называются типами изображений или типами кадров . Три основных типа изображения , используемые в различных алгоритмах видео являются I , P и B . Они различаются по следующим характеристикам:
- I- кадры наименее сжимаемы, но для декодирования не требуются другие видеокадры.
- P- кадры могут использовать данные из предыдущих кадров для распаковки и являются более сжимаемыми, чем I-кадры.
- B- кадры могут использовать как предыдущие, так и прямые кадры для ссылки на данные, чтобы получить максимальное сжатие данных.
Резюме
При сжатии видео используются три типа изображений (или кадров) : I, P и B кадры.
I-кадр ( Intra-кодированное изображение ) представляет собой полное изображение, как JPG или BMP файл изображения.
Р-кадр (Прогнозируемая картина) имеет место только изменения в изображении из предыдущего кадра. Например, в сцене, где автомобиль движется по неподвижному фону, необходимо кодировать только движения автомобиля. Кодеру не нужно сохранять неизменные пиксели фона в P-кадре, что позволяет экономить место. P-кадры также известны как дельта-кадры .
В-кадра (Двунаправленный предсказывал изображение) сохраняет еще больше места, используя различия между текущим кадром и оба предыдущих и последующих кадров , чтобы указать его содержание.
Кадры P и B также называются промежуточными кадрами . Порядок расположения кадров I, P и B называется Группой изображений .
Картины / рамки
Хотя термины «рамка» и «изображение» часто используются взаимозаменяемо, термин « изображение» является более общим понятием, поскольку изображение может быть либо рамкой, либо полем . Кадр - это полное изображение, а поле - это набор строк развертки с нечетными или четными номерами, составляющих частичное изображение. Например, изображение HD 1080 имеет 1080 строк (строк) пикселей. Нечетное поле состоит из информации о пикселях для строк 1, 3, 5 ... 1079. Четное поле содержит информацию о пикселях для строк 2, 4, 6 ... 1080. Когда видео отправляется в формате чересстрочной развертки , каждый кадр отправляется в двух полях: поле строк с нечетными номерами, за которыми следует поле строк с четными номерами.
Кадр, используемый в качестве опорного для прогнозирования других кадров, называется опорным кадром.
Кадры, закодированные без информации из других кадров, называются I-кадрами. Кадры, в которых используется прогнозирование из одного предшествующего опорного кадра (или одного кадра для прогнозирования каждой области), называются P-кадрами. B-кадры используют прогнозирование на основе (возможно, взвешенного) среднего двух опорных кадров, одного предшествующего и одного последующего.
Ломтики
В стандарте H.264 / MPEG-4 AVC степень детализации типов предсказания снижена до «уровня среза». Срез - это пространственно отличная область кадра, которая кодируется отдельно от любой другой области в том же кадре. I-срезы, P-срезы и B-срезы занимают место I, P и B.
Макроблоки
Обычно изображения (кадры) сегментируются на макроблоки , и отдельные типы прогнозирования могут выбираться на основе макроблока, а не быть одинаковыми для всего изображения, как показано ниже:
- I-кадры могут содержать только внутренние макроблоки
- P-кадры могут содержать как внутренние макроблоки, так и предсказанные макроблоки.
- B-кадры могут содержать макроблоки с внутренним, предсказанием и двойным предсказанием.
Кроме того, в стандарте кодирования видео H.264 кадр может быть сегментирован на последовательности макроблоков, называемых срезами , и вместо использования выбора типа I, B и P-кадра кодер может выбирать стиль прогнозирования отдельно для каждого отдельного среза. Также в H.264 есть несколько дополнительных типов кадров / срезов:
- SI-кадры / слайсы (переключение I): облегчает переключение между кодированными потоками; содержит SI-макроблоки (особый тип макроблока с внутренним кодированием).
- SP-кадры / слайсы (Switching P): облегчает переключение между кодированными потоками; содержит P и / или I-макроблоки
- Оценка многокадрового движения (до 16 опорных кадров или 32 опорных поля)
Оценка многокадрового движения повышает качество видео при сохранении той же степени сжатия. Кадры SI и SP (определенные для расширенного профиля) улучшают исправление ошибок . Когда такие кадры используются вместе с интеллектуальным декодером, можно восстановить широковещательные потоки поврежденных DVD-дисков.
Внутрикодированные (I) кадры / срезы (ключевые кадры)
- I-кадры содержат все изображение. Они кодируются без ссылки на какой-либо другой фрейм, кроме (части) самих себя.
- Может генерироваться кодером для создания точки произвольного доступа (чтобы позволить декодеру правильно начать декодирование с нуля в этом месте изображения).
- Может также генерироваться, когда различение деталей изображения запрещает создание эффективных P- или B-кадров.
- Обычно для кодирования требуется больше битов, чем для других типов кадров.
Часто I-кадры используются для произвольного доступа и используются в качестве эталонов для декодирования других изображений. Периоды обновления в полсекунды распространены в таких приложениях, как цифровое телевещание и хранение DVD . В некоторых средах могут использоваться более длительные периоды обновления. Например, в системах видеоконференцсвязи I-кадры обычно отправляются очень редко.
Прогнозируемые (P) кадры / фрагменты
- Требовать предварительного декодирования некоторых других изображений для декодирования.
- Может содержать как данные изображения, так и смещения вектора движения и их комбинации.
- Может ссылаться на предыдущие изображения в порядке декодирования.
- Более старые стандартные конструкции (такие как MPEG-2 ) используют только одно ранее декодированное изображение в качестве эталона во время декодирования и требуют, чтобы это изображение также предшествовало P-изображению в порядке отображения.
- В H.264 можно использовать несколько ранее декодированных изображений в качестве ссылок во время декодирования и может иметь любую произвольную взаимосвязь порядка отображения относительно изображения (изображений), используемого для его предсказания.
- Обычно для кодирования требуется меньше бит, чем для изображений.
Двунаправленные предсказанные (B) кадры / срезы (макроблоки)
- Требовать предварительного декодирования последующих кадров для отображения.
- Может содержать данные изображения и / или смещения вектора движения. Старые стандарты допускают только один глобальный вектор компенсации движения для всего кадра или один вектор компенсации движения для каждого макроблока.
- Включите некоторые режимы прогнозирования, которые формируют прогноз области движения (например, макроблока или меньшей области) путем усреднения прогнозов, полученных с использованием двух различных ранее декодированных опорных областей. Некоторые стандарты допускают два вектора компенсации движения на макроблок (двойное предсказание).
- В более старых стандартах (таких как MPEG-2) B-кадры никогда не используются в качестве эталонов для предсказания других изображений. В результате для таких B-кадров может использоваться кодирование более низкого качества (требующее меньше места), поскольку потеря деталей не повредит качеству прогнозирования для последующих изображений.
- H.264 ослабляет это ограничение и позволяет использовать B-кадры в качестве ссылок для декодирования других кадров по усмотрению кодировщика.
- Более старые стандарты (такие как MPEG-2) используют ровно два ранее декодированных изображения в качестве эталонов во время декодирования и требуют, чтобы одно из этих изображений предшествовало B-кадру в порядке отображения, а другое - следовало за ним.
- H.264 допускает одно, два или более двух ранее декодированных изображений в качестве эталонов во время декодирования и может иметь любую произвольную взаимосвязь порядка отображения относительно изображения (изображений), используемого для его предсказания.
- Повышенная гибкость поиска информации означает, что B-кадры обычно требуют меньше битов для кодирования, чем I или P-кадры.
Смотрите также
- Термин ключевого кадра в анимации
- Сжатие видео
- Внутри кадра
- Межкадровый
- Применение групп изображений типов кадров
- Датамош
- видео