Способ и устройство для преобразования с повышением частоты кадров с помощью кодера (ea-fruc) для сжатия видеоизображения

Иллюстрации

Показать все

Изобретение относится к сжатию цифрового видеоизображения, в частности к преобразованию с повышением частоты кадров с помощью кодера (EA-FRUC) для сжатия видеоизображения. Техническим результатом является обеспечение высокого качества интерполированных кадров в декодере при уменьшении величины полосы частот, необходимой для передачи информации для выполнения интерполяции, и также уменьшении объема вычислений. Предложена система сжатия с преобразованием EA-FRUC, которая использует кодирование видеоизображения и операции предварительной обработки в видеокодере для использования обработки FRUC, которая будет происходить в декодере, при этом этапы обработки включают в себя определение, кодировать ли кадр в последовательности кадров содержимого видеоизображения посредством определения пространственной активности в кадре последовательности кадров; определение временной активности в кадре; определение пространственно-временной активности в кадре на основе определенной пространственной активности и определенной временной активности; определение уровня избыточности в исходном кадре на основе, по меньшей мере, одной определенной активности из определенной пространственной активности, определенной временной активности и определенной пространственно-временной активности и кодирование неизбыточной информации в кадре, если определенная избыточность находится внутри заданных порогов. 3 н. и 18 з.п. ф-лы, 5 ил.

Реферат

Область техники, к которой относится изобретение

Описанные здесь варианты осуществления, в основном, относятся к сжатию цифрового видеоизображения, более конкретно к способу и устройству для Преобразования с Повышением Частоты Кадров с Помощью Кодера (EA-FRUC) для сжатия видеоизображения.

Уровень техники

В настоящее время существуют форматы видеоизображения, поддерживающие различные частоты кадров. В настоящее время наиболее распространены следующие форматы, перечисленные в порядке поддерживаемых ими кадров в секунду (fps): 24 (традиционный), 25 (PAL, телевизионный стандарт ПАЛ), 30 (обычное чересстрочное видеоизображение) и 60 (Высокое Разрешение (HD), например, 72Op). Хотя указанные частоты кадров подходят для большинства приложений, для достижения малой полосы частот, требуемой для передачи видеоизображения для мобильной телефонной трубки, частоты кадров иногда понижают до столь низких частот, как 15; 10; 7,5 или 3 кадров/сек. Хотя эти низкие частоты позволяют недорогим устройствам с более низкими вычислительными возможностями отображать некоторое видеоизображение, результирующее качество видеоизображения скорее страдает от видеоэффекта, такого как "замедленная съемка" (то есть существует эффект слайд-шоу), чем является сглаженным в движении. Также из-за частого пропускания кадров не правильно отслеживается количество движения в видеоизображении. Например, в фрагментах содержимого видеоизображения "быстрого движения", таких которые возникают в спортивных событиях, должно быть пропущено меньшее количество кадров, в то время как в фрагментах содержимого видеоизображения "медленного движения", таких которые возникают в ток-шоу, может быть пропущено большее количество кадров. Сжатие видеоизображения должно зависеть от содержимого, и чтобы повысить эффективность сжатия видеоизображения, должно быть предпочтительно наличие возможности анализа и объединения характеристик движения и текстуры в последовательности, которая должна быть кодирована.

Преобразование с Повышением Частоты Кадров (FRUC, ППЧК) является процессом использования интерполяции видеоизображения в видеодекодере для увеличения частоты кадров восстановленного видеоизображения. При FRUC интерполированные кадры создают с использованием принятых кадров в качестве опорных. В настоящее время системы, осуществляющие интерполяцию кадров FRUC, содержат подходы, основанные на интерполяции с компенсацией движения и обработке переданных векторов движения. Также FRUC используют при преобразовании между различными форматами видеоизображения. Например, в приложениях Телекинодатчика и Обратного - Телекинодатчика, которые являются способом передачи фильм-магнитная лента с записью изображения со звуковым сопровождением, который корректирует соответствующие частоты цветных кадров между фильмом и видеоизображением, прогрессивное видеоизображение (24 кадра/секунду) преобразуется в чересстрочное видеоизображение NTSC (29,97 кадра/сек).

Другой подход FRUC использует адаптивную взвешенную интерполяцию с компенсацией движения (WAMCI, АВИКД) для уменьшения искажений изображения блока, вызванных неточностями оценки движения и обработки на основе блока. Этот подход основан на интерполяции посредством взвешенных сумм многочисленных изображений интерполяции с компенсацией движения (MCI, ИКД). В предложенном способе также уменьшаются искажения изображения блока на границах блока посредством применения способа, подобного компенсации движения перекрывающихся блоков (OBMC, КДПМ). Для уменьшения размывания границ при обработке перекрывающихся областей способ, в частности, использует анализ движения для определения типа движения блока и адаптивно применяет OBMC. Экспериментальные результаты указывают, что предложенный подход достигает улучшенных результатов с существенным уменьшением искажений изображения блока.

Еще один подход FRUC использует анализ надежности вектора для уменьшения искажений изображения, вызванных использованием векторов движения, которые неточно переданы из кодирующего устройства. При этом подходе используют оценку движения для создания векторов движения, которые сравнивают с переданными векторами движения для определения наиболее предпочтительного подхода для интерпретации кадра. В обычных алгоритмах преобразования с повышением (частоты кадров), использующих оценку движения, процесс оценки выполняют с использованием двух смежных декодированных кадров для создания векторов движения, что обеспечивает возможность интерполяции кадра. Однако эти алгоритмы пытаются усовершенствовать использование полосы частот передачи, не принимая во внимание количество вычислений, требуемых для операции оценки движения. Для сравнения, в алгоритмах преобразования с повышением (частоты кадров), использующих переданные векторы движения, качество интерполированных кадров в существенной степени зависит от векторов движения, которые получены кодирующим устройством. Используя комбинацию двух подходов, переданные векторы движения сначала анализируют для принятия решения, пригодны ли они для создания кадров интерполяции. Затем способ, используемый для интерполяции, адаптивно выбирают из трех способов: локальной интерполяции с компенсацией движения, глобальной интерполяции с компенсацией движения и интерполяции с повторением кадра.

Хотя способы FRUC, в основном, осуществляются как функции постобработки в видеодекодере, соответственно в эту операцию обычно не вовлечен видеокодер. Однако при подходе, определенном как FRUC с помощью кодера (EA-FRUC), кодер может определять, можно ли устранить передачу некоторой информации, относящейся к векторам движения или опорным кадрам (например, остаточные данные), при этом обеспечивая возможность автономного восстановления декодером главных частей кадров без устраненных векторов или остаточных данных. Например, в MPEG-2 был введен способ кодирования видеоизображения с предсказанием в двух направлениях, как усовершенствование кодирования В-кадра. В этом способе предложено использование критерия ошибки для обеспечения возможности применения истинных векторов движения при кодировании с предсказанием с компенсацией движения. Показатель искажения основан на сумме абсолютных разностей (SAD, САР), но этот показатель искажения, как известно, является недостаточным для обеспечения показателя истинного искажения, особенно там, где должно быть определено количественно количество движения между двумя кадрами в последовательности. Дополнительно, разновидности порогов классифицированы с использованием фиксированных порогов, тогда как, оптимально, эти пороги должны быть переменными, поскольку классификации предпочтительно зависят от содержимого.

Область изучения EA-FRUC является развивающейся областью. Имеется повышенный интерес к этой области видеосжатия, в частности в отношении приложений с низкой скоростью передачи битов, подобных потоковому видеоизображению и видеотелефонии, и особенно в сценариях, где отправителем является узел сети, который имеет возможность поддерживать приложения высокой сложности, и приемник является портативным, ограниченной сложности и мощности. EA-FRUC также находит приложение в открытых системах, где декодер соответствует любому стандартному или популярному способу кодирования видеоизображения и в закрытых системах, где могут быть приняты собственные способы декодирования.

Требуется подход, который обеспечивает интерполированные кадры высокого качества в декодере при уменьшении величины полосы частот, необходимой для передачи информации, необходимой для выполнения интерполяции, и также уменьшении объема вычислений, необходимых для создания этих кадров, чтобы он хорошо подходил для мультимедийных мобильных устройств, которые зависят от обработки малой мощности.

Соответственно, существует потребность в преодолении отмеченных выше проблем.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

Варианты осуществления обеспечивают систему Преобразования с Повышением Частоты Кадров с Помощью Кодера (EA-FRUC), которая использует кодирование видеоизображения и операции предварительной обработки в видеокодере для использования обработки FRUC, которая должна происходить в декодере, для улучшения эффективности сжатия и качества восстановленного видеоизображения.

В одном варианте осуществления способ заключается в том, что определяют, кодировать ли кадр в последовательности кадров содержимого видеоизображения посредством определения пространственной активности в кадре последовательности кадров; определяют временную активность в кадре; определяют избыточность по меньшей мере в одной определенной активности из определенной пространственной активности, определенной временной активности и определенной пространственно-временной активности и кодируют кадр, если определенная избыточность ниже заданного порога.

В другом варианте осуществления способ заключается в том, что определяют, кодировать ли набор из одного или большего количества кадров в последовательности кадров содержимого видеоизображения посредством определения пространственной активности в наборе кадров последовательности кадров; определяют временную активность в наборе кадров; определяют избыточность по меньшей мере в одной определенной активности из определенной пространственной активности, определенной временной активности и определенной пространственно-временной активности и кодируют один или большее количество набора кадров, если определенная избыточность находится в пределах заданных порогов.

В другом варианте осуществления раскрыт носитель информации, считываемый компьютером, содержащий сохраненные на ней инструкции, которые предписывают выполнение компьютером способа составления последовательности видеоизображения, содержащей последовательность кадров. Способ заключается в том, что определяют пространственную активность в кадре последовательности кадров; определяют временную активность в кадре; определяют избыточность по меньшей мере в одной определенной активности из определенной пространственной активности и определенной временной активности и кодируют кадр, если определенная избыточность ниже заданного порога.

Еще в одном варианте осуществления раскрыто устройство для составления последовательности видеоизображений, содержащей последовательность кадров. Устройство содержит средство для определения пространственной активности в кадре последовательности кадров; средство для определения временной активности в кадре; средство для определения избыточности по меньшей мере в одной определенной активности из определенной пространственной активности и определенной временной активности и средство для кодирования кадра, если определенная избыточность ниже заданного порога.

В еще одном варианте осуществления раскрыт по меньшей мере один процессор, сконфигурированный с возможностью осуществления способа составления последовательности видеоизображения, содержащей последовательность кадров. Способ заключается в том, что определяют пространственную активность в кадре последовательности кадров; определяют временную активность в кадре; определяют избыточность по меньшей мере в одной определенной активности из определенной пространственной активности и определенной временной активности и кодируют кадр, если определенная избыточность ниже заданного порога.

Из последующего подробного описания специалистам в данной области техники станут очевидны другие задачи, признаки и преимущества. Однако должно быть понятно, что подробное описание и определенные примеры, указывающие типичные варианты осуществления, приведены для иллюстрации, а не ограничения. Не отступая от сущности изобретения, могут быть сделаны многие изменения и модификации внутри последующего описания и должно быть понято, что описание включает в себя все такие модификации.

Краткое описание чертежей

Изобретение может стать более понятым согласно приложенным чертежам.

Фиг.1 является блок-схемой системы кодирования видеоизображения, осуществляющей систему Преобразования с Повышением Частоты Кадров с Помощью Кодера (EA-FRUC), в соответствии с одним вариантом осуществлениям.

Фиг.2 является блок-схемой, иллюстрирующей функционирование системы EA-FRUC фиг.1.

Фиг.3 является блок-схемой, иллюстрирующей однопроходное кодирование, в соответствии с одним вариантом осуществления системы EA-FRUC фиг.1.

Фиг.4 является блок-схемой, иллюстрирующей двухпроходное кодирование, в соответствии с одним вариантом осуществлениям системы EA-FRUC фиг.1, и

Фиг.5 является блок-схемой, иллюстрирующей приложение системы 100 EA-FRUC для системы радиосвязи.

В чертежах используется сквозная нумерация.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

Преобразование с Повышением Частоты Кадров (FRUC) является способом увеличения частоты кадров в декодере при передаче видеоизображения с низкой скоростью передачи битов. Как правило, это является операцией декодера. Однако, предусматривая потребности FRUC алгоритма в декодере, видеокодер может принимать интеллектуальные решения относительно того, какой кадр или какие кадры в последовательности видеоизображения могут быть пропущены (то есть не переданы в декодер) для обеспечения увеличения полной скорости передачи битов сжатых данных, соответственно улучшая эффективность сжатия. В одном варианте осуществления системы FRUC(EA-FRUC) с помощью кодера, как здесь описано, кодер имеет доступ к исходным кадрам, а также к априорной информации относительно алгоритма FRUC, используемого в декодере, и с использованием сформированного с их помощью интерполированного кадра передает дополнительную информацию, чтобы способствовать выполнению декодером FRUC для улучшения решений, сделанных при интерполяции. Используя преимущество наличия информации относительно того, что в декодере будет выполняться FRUC, система EA-FRUC использует в видеокодере кодирование видеоизображения и операции предварительной обработки для улучшения эффективности сжатия (вследствие этого улучшая использование полосы частот передачи) и качества восстановленного видеоизображения. В частности, в декодер обеспечивают информацию из кодера, которая может быть дополнительной или заменять информацию, обычно передаваемую кодером, которая должна использоваться при обычном FRUC, или FRUC с помощью кодера.

В одном варианте осуществления информация, обеспечиваемая кодером, содержит такие параметры, как пространственные (например, детализации, решения по режиму, характеристики окрестности) и временные (например, решения по вектору(ам) движения) характеристики изображения, которые должны интерполироваться в декодере, а также информацию различий, в отношении обычного кодирования с предсказанием (B или P) кадра и интерполированного кадра, сформированного процессом FRUC. Кадры, интерполированные процессом FRUC, будут определены здесь как "F-Кадры".

Обзор FRUC с помощью кодера

Фиг.1 иллюстрирует систему 100 кодирования/декодирования ("кодирования") видеоизображения, сконфигурированную в соответствии с одним вариантом осуществления. Система 100 кодирования содержит видеокодер 104, который обрабатывает цифровые видеоданные так, чтобы оптимизировать эти данные для передачи и декодирования одним или большим количеством декодеров. Более конкретно, в одном варианте осуществления видеокодер 104 использует алгоритм кодирования видеоизображения для кодирования и сжатия входного исходного видеоизображения 102 для уменьшения полосы частот, требуемой для передачи видеоизображения 102 в декодер 154. Эффективность сжатия видеокодера 104 может быть улучшена различными способами, один из которых состоит в сокращении частоты передаваемых кадров (то есть в сокращении количества кадров, которые должны быть переданы). Тогда в декодере 154 используют механизмы FRUC для увеличения частоты кадров декодированного потока видеоизображения и уточнения количества движения. Более конкретно, декодер 154 создает интерполированные кадры, используя опорные кадры в кодированном потоке видеоизображения, который принимают из кодера 104. Как здесь дополнительно описано, видеокодер 104 "знает" о том, что видеодекодер 154 может выполнять FRUC при операции кодирования, и использует эту возможность для уменьшения количества и размера передаваемых кадров.

Анализ F кадров

В одном варианте осуществления кодер 104 системы 100 кодирования содержит модуль 106 классификации содержимого для определения пространственного и временного коэффициента сложности: (i) в каждом кадре последовательности видеоизображения и (ii) между кадрами в последовательности видеоизображения. Кодер 104 использует результат этой операции для определения: (i) какой кадр в последовательности кадров, также известной как Группа Изображений (GOP, ГИ), может быть пропущен; и (ii) сколько последовательных кадров могут быть пропущены между двумя кодированными кадрами. Каждая GOP, по определению, состоит из компоновки одного I-изображения (кадра) P-изображения (кадра) и одного или большего количества B-изображений (кадров). GOP служит в качестве основного элемента доступа, (при этом) I-кадр служит в качестве точки доступа для облегчения произвольного доступа. Следует отметить, что GOP может состоять из переменного количества кадров. Предполагается, что любые пропущенные кадры, по мере необходимости, будут соответственно восстановлены в декодере 154 с использованием известных способов FRUC. В одном варианте осуществления для анализа может быть принят один из следующих способов:

1. Ранг значимости каждого кадра в последовательности зависит от активности в последовательности (например, медленное движение относительно быстрого движения, ровные области против заполненных текстур), и затем пропускают все кадры с высокой корреляцией в последовательности.

2. Для создания ожидаемого FRUC-кадра в кодере 104 используют доступный в декодере 154 алгоритм FRUC. Если корреляция между исходным кадром и его интерполированной версией высока, то исходный кадр пропускают. Альтернативно, если исходный кадр кодирован как B-кадр и восстановленный B-кадр имеет высокую корреляцию со своей интерполированной версией, то этот B-кадр с высокой корреляцией пропускается. Если нет, исходный кадр кодируют и передают. Если корреляция между исходным кадром и интерполированным кадром, или B-кадром и интерполированным кадром является умеренной, то не избыточную часть кадра кодируют как вспомогательную информацию, которая используется для улучшения качества интерполированного кадра относительно соответствующего ему исходного кадра.

Фиг.2 иллюстрирует один вариант осуществления процесса, используемого системой 100 кодирования для классификации исходного содержимого. В одном варианте осуществления на этапе 208 определяют, существуют ли какие-либо ограничения времени ожидания для выполнения кодирования исходного содержимого. Например, поточные приложения в реальном времени или кодеры, ограниченные в соответствии с требованиями на время ожидания (например, потоки, несущие диалоговое видео, например видеотелефония), обычно должны заканчивать все операции кодирования за один проход. В этом случае, операция продолжается на этапе 208, где выполняют процесс кодирования в один проход. Напротив, не-диалоговое видео, такое как видео по запросу (VOD, ВЗ) и приложения для цифровой камеры и (записывающей) видеокамеры, где кодированное видео сохраняют и, соответственно, никакие ограничения не распространяются на операцию кодирования с точки зрения синхронизации ресурсов, могут быть обработаны с использованием кодирования в два прохода, как на этапе 216. Как здесь описано, из-за указанных различий степень и качество классификации содержимого, выполняемой системами 100 кодирования, для этих двух режимов различны.

Пространственная Активность

Согласно фиг.2 и фиг.1 пространственная активность определяется модулем 106 классификации содержимого на этапе 210. Более конкретно, модуль 106 классификации содержимого определяет величину пространственной активности в источнике 102 видеоизображения. В одном варианте осуществления пространственная активность относится к количеству информации текстуры, такой как контур, цвет без примесей и объекты высокого контраста, в кадрах изображения последовательности видеоизображения. В основном, чем больше количество информации текстуры в последовательности видеоизображения, тем больше пространственная активность. В одном варианте осуществления информация текстуры может быть определена количественно с использованием следующих показателей:

a. Среднее значение: При кодировании на основе блока, среднее значение каждого блока по сравнения со средним значением: (i) кадра или (ii) окрестности блоков различных размеров.

b. Дисперсия: величина дисперсии пикселя в каждом макроблоке может сравниваться с заданным зависимым-от-данных порогом для определения пространственной активности. Альтернативно, блоки могут быть классифицированы на основе показателей среднего значения и дисперсии, в этом случае для различных диапазонов средних значений могут использоваться различные пороги.

c. Дисперсия и Среднее значение Переменного Размера/Формы Блока: показатели среднего значения и дисперсии могут быть расширены на переменные размеры блока и на объекты, охватывающие области произвольного размера (и формы) в изображении или кадре.

d. Степень Контрастности: отношение: (i) стандартного отклонения блока, области или объекта к (ii) среднему значению области или окрестности блоков (например, блок 3x3), может использоваться для обеспечения показателя контрастности внутри окрестности элементов. Дополнительно степень контрастности может быть взвешена на основе величин средних значений. Более конкретно, степень контрастности данного блока или макроблока выражается как сумма разностей среднего значения текущего блока и среднего значения окрестных блоков (8 окрестных блоков в окрестности 3x3 из 9 блоков), нормализованная по среднему значению всех блоков в окрестности. Этот показатель обеспечивает существенную степень детализации в пространственной информации текстуры, которая преобразуется в пространственную активность и успешно использовалась как алгоритм разделения блоков, для дискретного косинусного преобразования блока переменного размера (также известный как ABSDCT, АРБДКП).

e. Поле Вектора Движения: В предсказанных кадрах (например, P или B кадрах) векторы движения макроблоков (и векторы движения подблоков) предсказанного кадра могут быть отображены для формирования поля вектора движения. Такие поля используются для обработки вектора движения для сглаживания выделяющихся векторов движения и, в основном, указывают: (i) полное движение в последовательности; (ii) активность движения различных объектов в кадрах (например, на основе интенсивности, плотности и/или величины поля вектора движения); и (iii) количество движущихся объектов в кадре. Уровень активности движения также обеспечивает индикацию относительно пространственной активности определенной последовательности вследствие потребности в обнаружении процессом обнаружения активности движения обоих объектов (для которых требуется обнаружить контуры) и изменчивости (что требует обнаружения различий между областями) по последовательности.

f. Обнаружение Контура: алгоритмы обнаружения контура при обработке изображения обычно применяют фильтр верхней частоты, такой как фильтр Sobel, для пикселей в изображении по определенному окну (например, области 3x3 или 5x5) и затем фильтрованные выходные данные сравнивают с порогом для определения существования контура. Карта обнаруженных контуров и количество контуров обеспечивают индикацию пространственной активности.

g. Как известно специалистам в области обработки изображения, существуют другие различные индикаторы пространственной активности, и любой такой показатель может применяться для процесса, который изображен на фиг.2.

Временная Активность

На этапе 212 модулем 106 классификации содержимого определяется временная активность. Количество движения в последовательности видеоизображения определяет величину временной корреляции и избыточности в кадрах последовательности видеоизображения, которые могут использоваться для сжатия последовательности видеоизображения. В одном варианте осуществления квантификация временной активности определяется посредством одного из следующих подходов:

a. Поле Вектора Движения: этот показатель использует подход, идентичный описанному выше при описании создания модулем 210 пространственной активности поля вектора движения для интерполированного кадра и затем анализа поля вектора движения.

b. Размер Предсказанного Кадра: Размер предсказанного кадра является индикатором его энтропии, потому что для предсказанного кадра размер предсказанного кадра зависит от количества битов, требуемых для кодирования векторов движения и остатков предсказания. В основном, чем больше количество движения (или временной активности), тем большая энтропия будет кодирована в предсказанных кадрах.

c. Дескриптор MPEG-7: дескриптор активности движения (MAD, ДАД) MPEG-7 пытается "фиксировать" человеческое восприятие " интенсивности действия " или "темпа" последовательности видеоизображения. Например, момент выигрышного гола при игре в футбол должен восприниматься большинством зрителей как последовательность "быстрых действий". Для сравнения, последовательность "голова и плечи" говорящего человека, конечно, должна рассматриваться теми же самыми зрителями как последовательность "медленных действий". Было обнаружено, что MAD MPEG-7 точно фиксирует весь диапазон интенсивности действия в обычном видеоизображении. Он использует квантованное стандартное отклонение векторов движения для классификации сегментов видеоизображения на пять классов в пределах от очень низкой до очень высокой интенсивности.

d. Активность Движения: дескриптор активности движения направлен на проблему эффективного анализа содержимого, индексации, просмотра и запроса активности движения видеоданных, которая определяется как количество движения в последовательности видеоизображения, и был включен как дескриптор в стандарте MPEG-7. Предложенный способ пытается автоматически измерять активность движения с использованием накопления разностей квантованных пикселей по кадрам данного сегмента видеоизображения. В результате накопленное движение каждой сцены представляют в виде двумерной матрицы. Также обеспечен масштабируемый способ для сравнения этих матриц и формирования дескрипторов MAD, которые эффективно представляют различные движения каждой сцены. Степени величины, а также местоположения движения вычисляются и представляются.

Все вышеперечисленные показатели пространственной и временной активности являются только примерами. В других вариантах осуществлениях любой и все такие алгоритмы могут использоваться с простым выбором порога для оценки и классификации уровня пространственной и временной активности в кадре и между кадрами.

Пространственно-временная активность

На этапе 214 определяют количественно абсолютную пространственную активность между соседними кадрами или набором кадров, таким как GOP, и дисперсию абсолютной пространственной активности по кадрам, используя простые разности (различия) кадров и/или статистику более высокого порядка, такую как дисперсия и эксцесс для определения корреляции между кадрами.

Альтернативно, принципы степени контрастности расширяются на временную область для обеспечения показателей временно-пространственной активности.

Определение Избыточности

Показатели пространственной активности, определенные на этапе 210 совместно с показателями временной активности или активности движения, определенными на этапе 212, используют для определения полной пространственно-временной активности для данной последовательности. Например, при гибридном сжатии видеоизображения первый кадр в последовательности (например, первый кадр после произвольной точки доступа или изменения сцены) кодируют, обычно, независимо от любого временного предсказания. Этот первый кадр определен как I-кадр. Последующие кадры в последовательности предпочтительно предсказываются из I или другого предыдущего кадра(ов), которые, как ранее отмечено, определены как P или B кадры. В одном варианте осуществления избыточность между опорным кадром и предсказанным кадром в исходной последовательности видеоизображения может быть определена с использованием перечисленных ниже подходов:

a. Корреляция: Для определения избыточности может быть выполнена корреляция двух элементов: (1) пикселей (i) одного или большего количества макроблоков; (ii) других основных элементов кадра; или (iii) полностью предсказанного кадра, относительно (2) эквивалентно соотнесенных элементов в опорном кадре. В вычислительном отношении этот подход обработки является дорогостоящей операцией, но точно оценивает избыточность.

b. Вектор Движения: Между опорным кадром и предсказанным кадром сравнивают величину и корреляцию векторов движения в окрестностях макроблоков и по полному кадру. Затем может применяться сглаживание векторов движения или другая обработка вектора движения для определения дисперсии вектора движения или для классификации полей движения на основе активности.

c. Значимость: каждый макроблок или окно макроблоков затем оценивают на основе уровня избыточности как низкий, средний или высокий. Блоки низкой избыточности кодируются как B-кадры с использованием двунаправленного предсказания, блоки средней избыточности обеспечивают в декодер один элемент или большее количество элементов их следующей информации: вектор движения для усовершенствования результатов обработки векторов движения в декодере FRUC, информацию остатка для усовершенствования различия в текстуре, информацию сдвига яркости в форме смещений DC и т.д. Блоками высокой избыточности являются те, которые хорошо коррелируют с соответствующими блоками в интерполированном кадре, и их пропускают.

Все описанные выше части информации относительно макроблока или окна, 3x3, макроблоков определены как способствующая информация.

Выбор Кадров для FRUC

После того как была определена величина избыточности в исходном видеоизображении, как описано выше, оно классифицируется на основе содержимого. В одном варианте осуществления используется ряд выборочных исходных данных для установления параметров классификации для определенного приложения, и таким образом система 100 кодирования может быть настроена для определенного содержимого, которое, ожидается, должно поддерживаться данной реализацией. Механизм классификации использует размер предсказанных кадров при нормальном гибридном кодировании. В одном варианте осуществления чем меньше размер и больше коэффициент избыточности предсказанного кадра, тем выше вероятность того, что интерполированный кадр будет пропущен при процессе кодирования. Соответственно, эти кадры не будут включены в передаваемую последовательность видеоизображения, но, следовательно, будут преобразованы с повышением (частоты) при процессе декодирования/FRUC.

Описанный выше механизм применяют к кодированию в один проход и кодированию низкой сложности в два прохода, как изображено на фиг.3, которые исполняют для таких приложений, как приложения мобильной (записывающей) видеокамеры; где время ожидания и возможности процессора ограничивают возможностью выполнения устройством полного или частичного кодирования первого прохода сопровождающегося полным кодированием второго прохода. Однако когда сложность кодера не существенна, как при осуществлениях Интернет или беспроводного мультимедийного сервера, нормальное гибридное кодирование может быть выполнено в первом проходе и затем могут быть определены пространственная активность, временная активность, временно-пространственная активность во втором проходе, как иллюстрировано на фиг.4. В одном варианте осуществления, основанном на размерах предсказанных кадров последовательности видеоизображения (например, размерах P-кадров и B-кадров в последовательности видеоизображения) и характеристиках кадра (например, доли битов для Векторов Движения относительно данных коэффициента), низкая стоимость (например, кадры низкой стоимости передачи) может быть пропущена в кодере 104 и восстановлена в декодере 154 с использованием декодированных опорных кадров. В другом варианте осуществления малая энтропия может быть кодирована кодером 104 и передана в декодер 154, чтобы "содействовать" процессу преобразования с повышением (частоты кадров) в декодере 154, как описано ниже. Хотя задача содействия, прежде всего, состоит в увеличении качества восстановленного видеоизображения, это может также использоваться для снижения вычислительной нагрузки на декодер 154, способствуя созданию правильных решений механизмом 158 FRUC в декодере 154 при процессе принятия решения по режиму.

Кодирование энтропии между исходными кадрами и кадрами, интерполированными FRUC

Как здесь отмечено, одно из первичных преимуществ EA-FRUC состоит в том, что в кодере является доступным исходный кадр для кадра, который должен быть интерполирован. Следовательно, решения FRUC могут быть направлены на минимизацию ошибки между исходным и восстановленным кадром. Например, описанные здесь подходы обработки, предлагаемые FRUC, зависят от обработки вектора движения, идентификации и назначения содержимого. В этих процессах интерполяция смычек и перекрывающихся областей является сложной задачей. Однако при использовании статистического кодирования модулем 108 определения энтропии на фиг.1 такие области идентифицируют и в декодер 154 передают соответствующую дополнительную информацию, чтобы способствовать процессу FRUC. Другие приложения такого статистического кодирования имеются в приложениях кодирования масштабируемого видеоизображения процессов FRUC, как описано в находящейся в процессе одновременного рассмотрения заявке на патент за номером No 11/173.121, называемой "Method and Apparatus for Using Frame Rate up Conversion Techniques in Scalable Video Coding”. В одном варианте осуществления модуль определения энтропии 108 может использовать следующие показатели для статистического кодирования:

1. Данные Различия Пикселей: остаток для пикселя между кадром, восстановленным FRUC, и исходным кадром преобразуют, квантуют и статистически кодируют для передачи. Этот подход прост. Однако любой остаток, оставшийся от процесса кодирования, содержит высокую энергию и не сжимается хорошо.

2. Выбор Порога: Пороги основаны на показателях активности (пространственной и временной), или на маскировании и чувствительности системы визуализации для человека, вместо того, чтобы основываться на SAD. Система визуализации для человека (HVS, СВЧ) является эмпирической моделью, которая описывает чувствительность человеческого глаза к различным визуальным эффектам, таким как цвет, яркость, контраст и т.д., SAD, как известно, минимизирует ошибку средне-квадратичного показателя и предпочтительнее, чем качественный визуальный показатель.

3. Вектор Движения: Правильные данные вектора движения для областей с большими отличиями от исходного кадра кодируют и передают. Этот вектор движения оценивают с использованием исходных кадров и восстановленных опорных кадров в причинно-следственном и не причинно-следственном режимах. Причинно-следственное кодирование является прогнозирующим кодированием, которое использует информацию, доступную на момент кодирования/декодирования (например, информацию из предыдущих макроблоков в виде порядка декодирования), при этом не причинно-следственное кодирование является интерполяционным кодированием, которое использует информацию интерполяции (например, информацию из следующего макроблока).

4. Кодирование B-Кадра: В находящейся в процессе одновременной обработки заявке на патент за номером [040442] называемой "Method and Apparatus for Using Frame Rate up Conversion Techniques in Scalable Video Coding" описано использование к