Введение
Интерфрейм – это кадр в потоке сжатого видео, который описывается на основе одного или нескольких соседних кадров. Приставка "интер" в этом термине указывает на использование интерполяционного прогнозирования. Этот тип прогнозирования стремится использовать временную избыточность между соседними кадрами, что позволяет достичь более высокой степени сжатия.
Типы рамок
Разница между P-кадрами и B-кадрами заключается в том, какие опорные кадры им разрешено использовать.
П-каркас
P-кадр – термин, используемый для обозначения предсказанных кадров. Предсказание выполняется на основе предыдущего кадра, как правило, I-кадра или P-кадра, что требует меньшего объема данных для кодирования (примерно 50% по сравнению с размером I-кадра). Объем данных, необходимый для выполнения этого предсказания, состоит из векторов движения и коэффициентов преобразования, описывающих поправки к предсказанию. В этом используется компенсация движения.
B-кадр
B-кадр – это термин, обозначающий двунаправленно предсказанные изображения. Этот метод предсказания обычно занимает меньше данных для кодирования, чем P-кадры (≈25% по сравнению с размером I-кадра), поскольку предсказание выполняется на основе предыдущего кадра, последующего кадра или обоих сразу. (В некоторых случаях B-кадры могут быть менее эффективными, чем P-кадры, например, при кодировании без потерь.)
Как и P-кадры, B-кадры представляются векторами движения и коэффициентами преобразования. Чтобы избежать нарастающей ошибки распространения, в большинстве стандартов кодирования B-кадры обычно не используются в качестве опорных для дальнейшего предсказания. Однако в новых методах кодирования (таких как H.264/MPEG 4 AVC и HEVC) B-кадры могут использоваться в качестве опорных для более эффективного использования временной избыточности.
Более гибкая блочная перегородка
Разделение блоков яркости 16×16 (MPEG 2), 16×8, 8×16 и 8×8. В последнем случае блок может быть дополнительно разделен на блоки размером 4×8, 8×4 или 4×4. Кодируемый кадр разделяется на блоки одинакового размера, как показано на изображении выше. Прогнозирование каждого блока осуществляется блоками того же размера, что и в опорных кадрах, со сдвигом на небольшое расстояние.
Многочисленные ссылки
Многочисленные ссылки на оценку движения позволяют найти наилучшую опорную картину в двух возможных буферах (Список 0 – к предыдущим кадрам, Список 1 – к последующим кадрам), которые могут содержать до 16 кадров в общей сложности. Предсказание блока осуществляется путем взвешенного суммирования блоков из опорной картины. Это обеспечивает улучшенное качество изображения в сценах с изменением перспективы, масштабированием или появлением новых объектов.
Дополнительная информация
Хотя термин "кадр" часто используется в неформальной речи, во многих случаях (например, в международных стандартах видеокодирования MPEG и VCEG) применяется более общее понятие, используя слово "изображение" вместо "кадра", где изображение может представлять собой как полный кадр, так и одно полукадровое поле. Видеокодеки, такие как MPEG 2, H.264 или Ogg Theora, уменьшают объем данных в потоке, следуя за ключевыми кадрами одним или несколькими межкадровыми кадрами. Эти кадры обычно могут быть закодированы с более низкой битовой скоростью, чем ключевые кадры, поскольку большая часть изображения обычно остается неизменной, поэтому кодированию подлежат только изменяющиеся области.