Эта статья требует дополнительных ссылок для проверки . ( сентябрь 2008 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) |
Глобальная компенсация движения (GMC) - этометод компенсации движения , используемый при сжатии видео для снижения скорости передачи данных, необходимой для кодирования видео . Чаще всего он используется в MPEG-4 ASP , например, с кодеками DivX и Xvid .
Операция [ править ]
Глобальная компенсация движения описывает движение в сцене на основе одной инструкции аффинного преобразования . Контрольный кадр панорамируется, вращается и масштабируется в соответствии с точками деформации GMC, чтобы создать прогноз того, как будет выглядеть следующий кадр. Поскольку эта операция работает с отдельными пикселями (а не с блоками), она позволяет создавать прогнозы, которые невозможны при использовании блочных подходов.
Каждый макроблок в таком кадре может быть скомпенсирован с использованием глобального движения (тогда никакая дополнительная информация о движении не передается) или, альтернативно, локального движения (как если бы GMC был выключен). Этот выбор, требующий дополнительного бита на макроблок , может улучшить качество предсказания и, следовательно, уменьшить остаток .
Поскольку преобразования, используемые в глобальной компенсации движения, добавляются к потоку кодирования только при использовании, они не имеют постоянных накладных расходов битрейта. Предсказанный кадр, в котором используется GMC, называется S-кадром (кадром спрайта), в то время как прогнозируемый кадр, закодированный без GMC, называется либо P-кадром , если он был спрогнозирован исключительно предыдущими (прошлыми) кадрами, либо B-кадром, если он был спрогнозирован совместно с прошлыми и будущими кадрами (непредсказуемый кадр, закодированный как целое изображение, называется I-кадром ).
Реализации [ править ]
DivX предлагает кодирование GMC с 1 точкой искривления: это упрощает поддержку оборудования в сертифицированных и несертифицированных DivX устройствах. Но поскольку GMC с одной точкой деформации ограничивает глобальное преобразование только операцией панорамирования (поскольку панорамирование можно описать с помощью блоков), эта реализация редко улучшает качество видео.
Xvid предлагает кодирование GMC с тремя точками искривления: в результате у него в настоящее время нет аппаратной поддержки.
Критика [ править ]
GMC не оправдал ожиданий по поводу значительных улучшений компенсации движения, и в результате он был исключен из спецификации H.264 / MPEG-4 AVC, разработанной как преемник MPEG-4 ASP. Большинство преимуществ GMC можно получить за счет лучшего предсказания вектора движения. [1] GMC также требует больших вычислительных затрат во время кодирования, что дает относительно незначительные улучшения качества.
Из-за дополнительных затрат ЦП на декодирование глобальной компенсации движения большинство аппаратных плееров не поддерживают глобальную компенсацию движения.