Адаптивное повышение дискретизации для масштабируемого кодирования видео
Иллюстрации
Показать всеИзобретение относится к кодированию цифрового видео, а более конкретно к технологиям масштабируемого кодирования видео (SVC), которые предоставляют пространственную масштабируемость. Техническим результатом является создание адаптивной технологии для повышения дискретизации видеоданных базового слоя, чтобы кодировать видеоданные улучшающего слоя для пространственной масштабируемости. Указанный технический результат достигается тем, что осуществляют повышение дискретизации остаточных видеоданных базового слоя до пространственного разрешения остаточных видеоданных улучшающего слоя и кодирование остаточных видеоданных улучшающего слоя на основе остаточных видеоданных базового слоя после повышающей дискретизации. Повышение дискретизации остаточных видеоданных базового слоя включает в себя интерполяцию значений для одной или более позиций пикселов остаточных видеоданных базового слоя после повышающей дискретизации, которые соответствуют позициям между различными блоками остаточных видеоданных базового слоя. 4 н. и 24 з.п ф-лы, 9 ил.
Реферат
Данная заявка притязает на приоритет предварительной заявки на патент (США) номер 60/884099, поданной 9 января 2007 года, и предварительной заявки на патент (США) номер 60/888912, поданной 8 февраля 2007 года. Все содержимое обеих предварительных заявок содержится в данном документе по ссылке.
Область техники, к которой относится изобретение
Данное раскрытие сущности относится к кодированию цифрового видео, а более конкретно к технологиям масштабируемого кодирования видео (SVC), которые предоставляют пространственную масштабируемость.
Уровень техники
Возможности цифрового видео могут быть встроены в широкий диапазон устройств, включая цифровые телевизоры, системы цифрового прямого вещания, устройства беспроводной связи, беспроводные широковещательные системы, персональные цифровые устройства (PDA), дорожные или настольные компьютеры, цифровые камеры, цифровые записывающие устройства, устройства видеоигр, консоли видеоигр, сотовые или спутниковые радиотелефоны и т.п. Цифровые видеоустройства могут реализовывать технологии сжатия видео на основе блоков, такие как задаваемые посредством стандартов MPEG-2, MPEG-4, ITU-T H.261, H.263 или H.264/MPEG-4, часть 10, усовершенствованное кодирование видео (AVC), для того чтобы более эффективно передавать и принимать цифровое видео. Технологии сжатия видеоизображений выполняют пространственное и временное прогнозирование для того, чтобы уменьшать или удалять избыточность, присутствующую в видеопоследовательностях.
Пространственное прогнозирование уменьшает избыточность между соседними видеоблоками в рамках данного видеокадра. Временное прогнозирование, также известное как оценка и компенсация движения, уменьшает временную избыточность между видеоблоками в предшествующих и/или последующих видеокадрах видеопоследовательности. Для временного прогнозирования видеокодер выполняет оценку движения для того, чтобы отслеживать перемещение совпадающих видеоблоков между двумя или более смежными кадрами. Векторы движения указывают смещение видеоблоков относительно соответствующих прогнозных видеоблоков в одном или более опорных кадров. Компенсация движения использует вектор движения для того, чтобы формировать прогнозный видеоблок из опорного кадра. Остаточный видеоблок формируется посредством вычитания прогнозного видеоблока из исходного видеоблока, который должен быть кодирован. Остаточный видеоблок может быть отправлен в видеодекодер наряду с вектором движения, и декодер может использовать эту информацию для того, чтобы восстанавливать исходный видеоблок или приближение исходного видеоблока. Видеокодер может применять процессы преобразования, квантования и энтропийного кодирования для того, чтобы дополнительно уменьшать скорость передачи битов, связанную с остаточным блоком.
Определенное кодирование видео использует технологии масштабируемого кодирования, которые могут быть особенно желательными для беспроводной передачи видеоданных. В общем, масштабируемое кодирование видео (SVC) упоминается как кодирование видео, при котором видеоданные представляются посредством базового слоя и одного или более улучшающих слоев. Для SVC, базовый слой типично переносит видеоданные с базовым пространственным, временным уровнем и/или уровнем отношения "сигнал-шум" (SNR). Один или более улучшающих слоев переносят дополнительные видеоданные, чтобы поддерживать более высокие пространственные, временные уровни и/или уровни SNR.
Для пространственной масштабируемости улучшающие слои добавляют пространственное разрешение в кадры базового слоя. В системах SVC, которые поддерживают пространственную масштабируемость, межслойное прогнозирование может использоваться для того, чтобы уменьшать объем данных, требуемых для того, чтобы передавать улучшающий слой. В межслойном прогнозировании видеоблоки улучшающего слоя могут быть кодированы с использованием прогнозирующих технологий, которые аналогичны оценке движения и компенсации движения. В частности, остаточные блоки видеоданных улучшающего слоя могут быть кодированы с использованием опорных блоков в базовом слое. Тем не менее, базовые и улучшающие слои имеют различные пространственные разрешения. Следовательно, видеоданные базового слоя могут быть подвергнуты повышению дискретизации до пространственного разрешения видеоданных улучшающего слоя, к примеру, чтобы формировать опорные блоки для формирования остаточных данных улучшающего слоя.
Раскрытие изобретения
В общем, это раскрытие сущности описывает адаптивные технологии для повышения дискретизации видеоданных базового слоя, чтобы кодировать видеоданные улучшающего слоя для пространственной масштабируемости. Например, видеоданные базового слоя (к примеру, остаточные видеоблоки базового слоя) могут быть подвергнуты повышению дискретизации до более высокого разрешения, и данные после повышающей дискретизации могут использоваться для того, чтобы кодировать видеоданные улучшающего слоя. Как часть процесса повышения дискретизации технологии этого раскрытия сущности идентифицируют условия, при которых повышение дискретизации посредством интерполяции может быть предпочтительно, и другие ситуации, при которых повышение дискретизации посредством так называемых технологий копирования ближайшего соседа может быть предпочтительно. Следовательно, чтобы кодировать данные улучшающего слоя, технологии интерполяции и копирования ближайшего соседа могут использоваться для повышения дискретизации данных базового слоя на адаптивной основе.
Согласно определенным аспектам этого раскрытия сущности либо интерполяция, либо копирование ближайшего соседа могут использоваться для того, чтобы задавать данные после повышающей дискретизации, которые могут использоваться как опорные блоки при кодировании видеоданных улучшающего слоя. В частности, решение о том, следует выполнять интерполяцию или копирование ближайшего соседа, может быть основано на том, соответствует или нет пиксел после повышающей дискретизации граничной позиции пиксела в улучшающем слое. Вместо учета только позиций пикселов базового слоя при определении того, следует интерполировать или использовать копирование ближайшего соседа для повышения дискретизации, технологии, описанные в этом раскрытии сущности, могут учитывать позиции пикселов после повышающей дискретизации относительно границ блоков в улучшающем слое. Границы блоков в улучшающем слое могут отличаться от границ блоков базового слоя.
В одном примере это раскрытие сущности предоставляет способ для кодирования видеоданных с пространственной масштабируемостью. Способ содержит формирование видеоданных после повышающей дискретизации на основе видеоданных базового слоя, причем видеоданные после повышающей дискретизации соответствуют пространственному разрешению видеоданных улучшающего слоя, и кодирование видеоданных улучшающего слоя на основе видеоданных после повышающей дискретизации, при этом формирование видеоданных после повышающей дискретизации включает в себя интерполяцию значений для одной или более позиций пикселов видеоданных после повышающей дискретизации, которые соответствуют позициям между различными видеоблоками базового слоя, заданными в видеоданных базового слоя.
В другом примере это раскрытие сущности предоставляет устройство, которое кодирует видеоданные с пространственной масштабируемостью, причем устройство выполнено с возможностью формировать видеоданные после повышающей дискретизации на основе видеоданных базового слоя, причем видеоданные после повышающей дискретизации соответствуют пространственному разрешению видеоданных улучшающего слоя, и кодировать видеоданные улучшающего слоя на основе видеоданных после повышающей дискретизации, при этом устройство интерполирует значения для одной или более позиций пикселов видеоданных после повышающей дискретизации, которые соответствуют позициям между различными видеоблоками базового слоя, заданными в видеоданных базового слоя.
В другом примере это раскрытие сущности предоставляет устройство для кодирования видеоданных с пространственной масштабируемостью, причем устройство содержит средство формирования видеоданных после повышающей дискретизации на основе видеоданных базового слоя, причем видеоданные после повышающей дискретизации соответствуют пространственному разрешению видеоданных улучшающего слоя, и средство кодирования видеоданных улучшающего слоя на основе видеоданных после повышающей дискретизации, при этом средство формирования видеоданных после повышающей дискретизации включает в себя средство интерполяции значений для одной или более позиций пикселов видеоданных после повышающей дискретизации, которые соответствуют позициям между различными видеоблоками базового слоя, заданными в видеоданных базового слоя.
Технологии, описанные в данном раскрытии сущности, могут быть реализованы в аппаратных средствах, программном обеспечении, микропрограммном обеспечении или в любой их комбинации. Если реализованы в программном обеспечении, программное обеспечение может выполняться в процессоре, таком как микропроцессор, специализированная интегральная схема (ASIC), программируемая пользователем вентильная матрица (FPGA) или процессор цифровых сигналов (DSP). Программное обеспечение, которое выполняет технологии, может быть первоначально сохранено на машиночитаемом носителе и загружено и приведено в исполнение в процессоре.
Соответственно, это раскрытие сущности также рассматривает машиночитаемый носитель, содержащий инструкции, которые при выполнении в процессоре инструктируют процессору кодировать видеоданные с пространственной масштабируемостью, причем инструкции инструктируют процессору формировать видеоданные после повышающей дискретизации на основе видеоданных базового слоя, при этом видеоданные после повышающей дискретизации соответствуют пространственному разрешению видеоданных улучшающего слоя, и кодировать видеоданные улучшающего слоя на основе видеоданных после повышающей дискретизации, при этом формирование видеоданных после повышающей дискретизации включает в себя интерполяцию значений для одной или более позиций пикселов видеоданных после повышающей дискретизации, которые соответствуют позициям между различными видеоблоками базового слоя, заданными в видеоданных базового слоя.
В других случаях это раскрытие сущности может быть направлено на схему, такую как интегральная схема, набор микросхем, специализированная интегральная схема (ASIC), программируемая пользователем вентильная матрица (FPGA), логика или различные комбинации вышеозначенного, выполненную с возможностью выполнять одну или более технологий, описанных в данном документе.
Подробности одного или более вариантов осуществления данного раскрытия сущности изложены на прилагаемых чертежах и в нижеприведенном описании. Другие признаки, цели и преимущества технологий, описанных в данном раскрытии сущности, должны стать очевидными из описания и чертежей, а также из формулы изобретения.
Краткое описание чертежей
Фиг. 1 является примерной блок-схемой, иллюстрирующей систему кодирования и декодирования видео, которая может реализовывать технологии кодирования, описанные в данном документе, как часть процесса кодирования и/или декодирования.
Фиг. 2 является блок-схемой, иллюстрирующей пример видеокодера в соответствии с этим раскрытием сущности.
Фиг. 3 является блок-схемой, иллюстрирующей пример видеодекодера в соответствии с этим раскрытием сущности.
Фиг. 4 и 5 являются концептуальными схемами, иллюстрирующими повышение дискретизации от базового слоя к улучшающему слою.
Фиг. 6-8 являются концептуальными схемами, иллюстрирующими технологии повышения дискретизации, которые могут использоваться согласно этому раскрытию сущности.
Фиг. 9 является блок-схемой последовательности операций, иллюстрирующей технологию в соответствии с этим раскрытием сущности.
Подробное описание изобретения
Это раскрытие сущности описывает технологии повышения дискретизации, применимые при кодировании (т.е. при кодировании или декодировании) видеоблоков улучшающего слоя в схеме масштабируемого кодирования видео (SVC). В схемах SVC, которые поддерживают пространственную масштабируемость, видеоданные базового слоя (к примеру, остаточные видеоблоки базового слоя) могут быть подвергнуты повышению дискретизации до более высокого разрешения, и данные после повышающей дискретизации с более высоким разрешением могут использоваться для того, чтобы кодировать видеоданные улучшающего слоя (к примеру, остаточные видеоблоки улучшающего слоя). В частности, данные после повышающей дискретизации используются в качестве эталонных данных при кодировании видеоданных улучшающего слоя относительно базового слоя. Другими словами, видеоданные базового слоя подвергаются повышению дискретизации до пространственного разрешения видеоданных улучшающего слоя, и результирующие данные после повышающей дискретизации используются для того, чтобы кодировать видеоданные улучшающего слоя.
Как часть этого процесса повышения дискретизации технологии этого раскрытия сущности идентифицируют условия, при которых повышение дискретизации посредством интерполяции является предпочтительной, и другие условия, при которых повышение дискретизации посредством так называемых технологий копирования ближайшего соседа является предпочтительной. Интерполяция может заключать в себе формирование среднего взвешенного для значения после повышающей дискретизации, при этом среднее взвешенное задается между двумя или более значениями пикселов базового слоя. Для технологий ближайшего соседа значение после повышающей дискретизации задается как значение позиции пиксела в базовом слое, которая находится в непосредственной пространственной близости к позиции пиксела после повышающей дискретизации. Согласно этому раскрытию сущности посредством использования интерполяции для некоторых конкретных условий повышения дискретизации и копирования ближайшего соседа для других условий кодирование видеоблоков улучшающего слоя может быть усовершенствовано.
Интерполяция или копирование ближайшего соседа могут использоваться для того, чтобы задавать данные после повышающей дискретизации при пространственном разрешении улучшающего слоя. Данные после повышающей дискретизации могут быть подвергнуты повышению дискретизации из данных базового слоя (к примеру, из остаточных видеоблоков, кодированных в базовом слое). Данные после повышающей дискретизации могут формировать блоки, которые могут использоваться как опорные при кодировании данных улучшающего слоя (к примеру, при кодировании остаточных видеоблоков улучшающего слоя). Решение о том, следует выполнять интерполяцию или копирование ближайшего соседа в ходе процесса повышения дискретизации, может быть основано на том, соответствует ли позиция значения пиксела после повышающей дискретизации граничной позиции пиксела в улучшающем слое. Это контрастирует с традиционными технологиями повышения дискретизации, которые, в общем, рассматривают только позиции пикселов базового слоя при определении того, следует выполнять интерполяцию или использовать копирование ближайшего соседа.
Например, традиционные технологии повышения дискретизации могут выполнять интерполяцию пиксела после повышающей дискретизации только тогда, когда два пиксела базового слоя, используемые для интерполяции, не соответствуют границе видеоблока базового слоя. В этом раскрытии сущности термин "граница" упоминается как позиции пикселов, которые соответствуют границе видеоблока, а термин "внутренний" упоминается как позиции пикселов, которые не соответствуют границе видеоблока. Видеоблок может относиться к блочному преобразованию, используемому в видеокодере-декодере (кодеке). В качестве примеров в H.264/AVC видеоблок может иметь размер 4x4 или 8x8. Границы блоков в улучшающем слое, тем не менее, могут отличаться от границ блоков базового слоя. Согласно этому раскрытию сущности решение о том, выполнять ли интерполяцию, может зависеть от того, соответствует ли значение пиксела, который должен быть подвергнут повышению дискретизации, граничной позиции пиксела в улучшающем слое.
Если два пиксела базового слоя, используемые для интерполяции, соответствуют границам двух смежных видеоблоков базового слоя, значение после повышающей дискретизации может попадать между двумя смежными видеоблоками базового слоя. В этом случае традиционные технологии используют технологии копирования ближайшего соседа для выполнения повышения дискретизации. Интерполяция традиционно исключается в этом случае, поскольку различные видеоблоки базового слоя, возможно, кодированы с различными уровнями квантования. Для копирования ближайшего соседа значение после повышающей дискретизации может быть задано как значение позиции пиксела базового слоя в непосредственной пространственной близости к позиции пиксела после повышающей дискретизации.
Согласно этому раскрытию сущности интерполяция может быть выполнена в нескольких контекстах, где значение слоя после повышающей дискретизации попадает между двумя видеоблоками базового слоя. Если значение после повышающей дискретизации не связано с граничной позицией пиксела в улучшающем слое, интерполяция может быть предпочтительна копированию ближайшего соседа. В этом случае фильтрация удаления блочности улучшающего слоя вряд ли сможет разрешать какие-либо артефакты блочности при воспроизведении видеокадра. Следовательно, интерполяция может быть предпочтительна даже при том, что различные видеоблоки базового слоя, возможно, кодированы с различными уровнями квантования. Если значение после повышающей дискретизации само связано с граничной позицией пиксела в улучшающем слое и значение после повышающей дискретизации попадает между этими двумя видеоблоками базового слоя, то копирование ближайшего соседа может использоваться в соответствии с этим раскрытием сущности. В этом случае фильтрация удаления блочности улучшающего слоя разрешает артефакты блочности в улучшающем слое, и риск плохой интерполяции вследствие различных уровней квантования в видеоблоках базового слоя может перевешивать потенциальные преимущества интерполяции в этом контексте. Помимо этого решение о том, следует ли выполнять интерполяцию или использовать копирование ближайшего соседа, также может зависеть о того, кодированы ли два видеоблока базового слоя через различные режимы кодирования (к примеру, режимы внутреннего и взаимного кодирования). Например, копирование ближайшего соседа может использоваться, а интерполяция исключаться, если эти два видеоблока базового слоя кодированы через различные режимы кодирования. Кроме того, необязательные адаптивные фильтры нижних частот могут быть применены до или после повышающей дискретизации, чтобы дополнительно смягчать проблему неоднородности сигнала на границах блоков кодирования базового слоя.
Для простоты и легкости иллюстрации, в этом раскрытии сущности, технологии интерполяции и копирования ближайшего соседа, в общем, описываются в одной размерности, хотя такие технологии должны типично применяться как к вертикальным, так и к горизонтальным измерениям. Для технологий двумерной интерполяции или двумерного ближайшего соседа интерполяция или копирование ближайшего соседа должны сначала применяться в одной размерности, а затем должны применяться в другой размерности.
Фиг. 1 является блок-схемой, иллюстрирующей систему 10 кодирования и декодирования видео. Как показано на фиг. 1, система 10 включает в себя исходное устройство 12, которое передает кодированное видео в приемное устройство 16 через канал 15 связи. Исходное устройство 12 может включать в себя видеоисточник 20, видеокодер 22 и модулятор/передающее устройство 24. Приемное устройство 16 может включать в себя приемное устройство/демодулятор 26, видеодекодер 28 и устройство 30 отображения. Система 10 может быть выполнена с возможностью применять адаптивные технологии повышения дискретизации, как описано в данном документе, в ходе кодирования и декодирования видеоинформации улучшающего слоя для схемы SVC. Кодирование и декодирование, в общем, упоминаются в данном документе как кодирование.
В примере по фиг. 1 канал 15 связи может содержать любую беспроводную и проводную среду связи, такую как радиочастотный (RF) спектр или одна или более физических линий передачи, либо любую комбинацию беспроводных и проводных сред. Канал 15 связи может формировать часть сети с коммутацией пакетов, такой как локальная вычислительная сеть, глобальная вычислительная сеть либо глобальная сеть, такая как Интернет. Канал 15 связи, в общем, представляет любую надлежащую среду связи или набор различных сред связи для передачи видеоданных из исходного устройства 12 в приемное устройство 16.
Исходное устройство 12 формирует видео для передачи в приемное устройство 16. В некоторых случаях, тем не менее, устройства 12, 16 могут работать практически симметричным способом. Например, каждое из устройств 12, 16 может включать в себя компоненты кодирования и декодирования видео. Следовательно, система 10 может поддерживать одностороннюю и двухстороннюю передачу видео между видеоустройствами 12, 16, к примеру, для потоковой передачи видео, широковещательной передачи видео или видеотелефонии.
Видеоисточник 20 исходного устройства 12 может включать в себя устройство видеозахвата, такое как видеокамера, видеоархив, содержащий ранее захваченное видео, или видеопередачу от поставщика видеосодержимого. В качестве дополнительной альтернативы видеоисточник 20 может формировать основанные на компьютерной графике данные в качестве исходного видео или комбинацию живого видео и сформированного компьютером видео. В некоторых случаях, если видеоисточником 20 является видеокамера, исходное устройство 12 и приемное устройство 16 могут формировать так называемые камерофоны или видеофоны. В каждом случае захваченное, предварительно захваченное или создаваемое компьютером видео может быть кодировано посредством видеокодера 22 для передачи от устройства 12 видеоисточника в видеодекодер 28 устройства 16 приема видео через модулятор/передающее устройство 22, канал связи 15 и приемное устройство/демодулятор 26.
Процессы кодирования и декодирования видео могут реализовывать адаптивные технологии повышения дискретизации, используя интерполяцию и копирование ближайшего соседа, как описано в данном документе, для того чтобы усовершенствовать процесс кодирования улучшающего слоя. Устройство 30 отображения отображает декодированные видеоданные пользователю и может содержать любое из множества устройств отображения, таких как электронно-лучевая трубка, жидкокристаллический дисплей (LCD), плазменный дисплей, дисплей на органических светодиодах (OLED) или другой тип устройства отображения. Пространственная масштабируемость дает возможность видеодекодеру восстанавливать и отображать видеосигнал более высокого пространственного разрешения, к примеру CIF (общий промежуточный формат, разрешение изображений 352×288) в отличие от QCIF (четверть от общего промежуточного формата, разрешение изображений 176×144)), посредством декодирования потока битов улучшающего слоя из потока битов SVC.
Видеокодер 22 и видеодекодер 28 могут быть выполнены с возможностью поддерживать масштабируемое кодирование видео (SVC) для пространственной масштабируемости. Помимо этого временная масштабируемость и/или масштабируемость отношения "сигнал-шум" (SNR) также может поддерживаться, хотя технологии этого раскрытия сущности не ограничены в этом отношении. В некоторых аспектах видеокодер 22 и видеодекодер 28 могут быть выполнены с возможностью поддерживать кодирование с масштабированием SNR с высокой степенью детализации (FGS) для SVC. Кодер 22 и декодер 28 могут поддерживать различные степени масштабирования посредством поддержки кодирования, передачи и декодирования базового слоя и одного или более масштабируемых улучшающих слоев. Для масштабируемого кодирования видео базовый слой переносит видеоданные с базовым пространственным, временным уровнем или уровнем SNR. Один или более улучшающих слоев переносят дополнительные данные, чтобы поддерживать более высокие пространственные, временные уровни и/или уровни SNR. Базовый слой может быть передан способом, который является более надежным, чем передача улучшающих слоев. Например, самые надежные части модулированного сигнала могут использоваться для того, чтобы передавать базовый слой, тогда как менее надежные части модулированного сигнала могут использоваться для того, чтобы передавать улучшающие слои.
Чтобы поддерживать SVC, видеокодер 22 может включать в себя кодер 32 базового слоя и кодер 34 улучшающего слоя, чтобы выполнять кодирование базового слоя и улучшающего слоя соответственно. В некоторых случаях несколько улучшающих слоев могут поддерживаться, и при этом несколько кодеров улучшающего слоя могут быть предоставлены для того, чтобы кодировать постепенно детализируемые уровни улучшения видео. Технологии этого раскрытия сущности, которые влекут за собой повышение дискретизации данных базового слоя до пространственного разрешения видеоданных улучшающего слоя, с тем чтобы данные после повышающей дискретизации могли использоваться для того, чтобы кодировать данные улучшающего слоя, могут выполняться посредством кодера 34 улучшающего слоя.
Видеодекодер 28 может содержать комбинированный базовый/улучшающий декодер, который декодирует видеоблоки, связанные как с базовыми, так и с улучшающими слоями, и комбинирует декодированное видео, чтобы восстанавливать кадры видеопоследовательности. На стороне декодирования технологии этого раскрытия сущности, которые влекут за собой повышение дискретизации данных базового слоя до пространственного разрешения видеоданных улучшающего слоя, с тем чтобы данные после повышающей дискретизации могли использоваться для того, чтобы кодировать данные улучшающего слоя, могут быть выполнены посредством видеодекодера 28. Устройство 30 отображения принимает декодированную видеопоследовательность и представляет видеопоследовательность пользователю.
Видеокодер 22 и видеодекодер 28 могут работать согласно такому стандарту видеосжатия, как MPEG-2, MPEG-4, ITU-T H.263 или ITU-T H.264/MPEG-4, часть 10, усовершенствованное кодирование видео (AVC). Хотя не показано на фиг. 1, в некоторых аспектах видеокодер 22 и видеодекодер 28 могут быть интегрированы с аудиокодером и декодером соответственно и могут включать в себя соответствующие модули MUX-DEMUX либо другие аппаратные средства и программное обеспечение, чтобы обрабатывать кодирование как аудио, так и видео в общем потоке данных или в отдельных потоках данных. Если применимо, модули MUX-DEMUX могут соответствовать протоколу мультиплексора ITU H.223 или другим протоколам, таким как протокол пользовательских дейтаграмм (UDP).
Стандарт H.264/MPEG-4 (AVC) сформулирован Экспертной группой в области кодирования видео (VCEG) ITU-T совместно с Экспертной группой по киноизображению (MPEG) ISO/IEC как продукт коллективного партнерского проекта, известного как Объединенная группа по видеостандартам (JVT). В некоторых аспектах технологии, описанные в этом раскрытии сущности, могут быть применены к устройствам, которые, в общем, соответствуют стандарту H.264. Стандарт H.264 описан в ITU-T Recommendation H.264 "Advanced Video Coding for Generic Audiovisual Services" от Исследовательской группы ITU-T и датирован мартом 2005 года, который может упоминаться в данном документе как стандарт H.264 или спецификация H.264 либо стандарт или спецификация H.264/AVC.
Объединенная группа по видеостандартам (JVT) продолжает работать над дополнениями по масштабируемому кодированию видео (SVC) в H.264/MPEG-4 AVC. Например, объединенная модель масштабируемого видео (JSVM), созданная в JVT, реализует средства для использования в масштабируемом видео, которые могут быть использованы в системе 10 для различных задач кодирования, описанных в данном раскрытии сущности. Подробную информацию, касающуюся кодирования с масштабированием SNR с высокой степенью детализации (FGS), можно найти в документах совместного проекта и, в частности, в Совместном проекте 8 (JD8) по внесению поправок в SVC (редакция 2), Thomas Wiegand, Gary Sullivan, Julien Reichel, Heiko Schwarz и Mathias Wien, "Joint Draft 8 of SVC Amendment (revision 2)", JVT-U201, октябрь 2006 года, Hangzhou, China. Кроме того, дополнительные подробности одной реализации технологий, описанных в данном документе, можно найти в документе предложения JVT-W117, представленном в объединенную группу по видеостандартам (JVT) ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 и ITU-T SG16 Q.6), авторы Yan Ye и Yiliang Bao, в апреле 2007 года на 23-м собрании в Сан-Хосе, Калифорния, США, и в документе предложения JVT-V115, представленном в JVT, авторы Yan Ye и Yiliang Bao, в январе 2007 года на 22-м собрании в Марракеше, Марокко.
В некоторых аспектах для широковещательной передачи видео технологии, описанные в данном раскрытии, могут быть применены к улучшенному кодированию видео H.264 для доставки видеоуслуг реального времени в системах наземной многоадресной передачи мобильного мультимедиа (TM3), использующих спецификацию радиоинтерфейса только прямой линии связи (FLO), "Forward Link Only Air Interface Specification for Terrestrial Mobile Multimedia Multicast", которая должна быть опубликована как Технический стандарт TIA-1099 ("FLO Specification"). Другими словами, канал 15 связи может содержать беспроводной информационный канал, используемый для того, чтобы выполнять широковещательную передачу беспроводной видеоинформации согласно спецификации FLO, и т.п. Спецификация FLO включает в себя примеры, задающие синтаксис и семантику потока битов, а также процессы декодирования, подходящие для радиоинтерфейса FLO. Альтернативно, видео может передаваться в широковещательном режиме согласно другим стандартам, таким как DVB-H (цифровая широковещательная передача видео для карманных устройств), ISDB-T (комплексные службы цифровой наземной широковещательной передачи) или DMB (цифровая широковещательная передача мультимедиа).
Следовательно, исходным устройством 12 может быть мобильный беспроводной терминал, сервер потоковой передачи видео и сервер широковещательной передачи видео. Тем не менее, технологии, описанные в данном документе, не ограничены каким-либо конкретным типом системы широковещательной передачи, многоадресной передачи или передачи "точка-точка". В случае широковещательной передачи исходное устройство 12 может передавать в широковещательном режиме несколько каналов видеоданных в несколько приемных устройств, каждое из которых может быть аналогичным приемному устройству 16 по фиг. 1. В качестве примера приемное устройство 16 может содержать устройство беспроводной связи, такое как мобильный телефон, обычно упоминаемый как сотовый радиотелефон.
Видеокодер 22 и видеодекодер 28 могут быть реализованы как один или более микропроцессоров, процессоров цифровых сигналов (DSP), специализированных интегральных схем (ASIC), программируемых пользователем вентильных матриц (FPGA), дискретная логика, программное обеспечение, аппаратные средства, микропрограммное обеспечение или любые комбинации вышеозначенного. Каждый из видеокодера 22 и видеодекодера 28 может быть включен в один или более кодеров или декодеров, любой из которых может быть интегрирован как часть комбинированного кодера/декодера (кодека) в соответствующем мобильном устройстве, абонентском устройстве, широковещательном устройстве, сервере и т.п. Помимо этого исходное устройство 12 и приемное устройство 16 могут включать в себя соответствующие компоненты модуляции, демодуляции, частотного преобразования, фильтрации и усилителя для передачи и приема кодированного видео, в зависимости от необходимости, включая радиочастотные (RF) беспроводные компоненты и антенны, достаточные для того, чтобы поддерживать беспроводную связь. Для простоты иллюстрации, тем не менее, такие компоненты обобщены как модулятор/передающие устройство 24 исходного устройства 12 и приемное устройство/демодулятор 26 приемного устройства 16 на фиг. 1.
Видеопоследовательность включает в себя серии видеокадров. Видеокодер 22 оперирует с блоками пикселов в рамках отдельных видеокадров, чтобы кодировать видеоданные. Видеоблоки могут иметь фиксированный или изменяющийся размер и могут отличаться по размеру согласно заданному стандарту кодирования. Каждый видеокадр может быть разделен на последовательность серий последовательных макроблоков. Каждая серия последовательных макроблоков может включать в себя серии макроблоков, которые могут быть скомпонованы в субблоки. В качестве примера стандарт ITU-T H.264 поддерживает внутреннее прогнозирование для различных размеров блоков, таких как 16 × 16, 8 × 8, 4 × 4 для компонентов сигнала яркости и 8×8 для компонентов сигнала цветности, а также взаимное прогнозирование для различных размеров блоков, таких как 16 × 16, 16 × 8, 8 × 16, 8 × 8, 8 × 4, 4 × 8 и 4 × 4 для компонентов сигнала яркости и соответствующие масштабированные размеры для компонентов сигнала цветности.
Меньшие видеоблоки могут предоставлять лучшее разрешение и могут быть использованы для позиций видеокадра, которые включают в себя более высокий уровень детальности. В общем, макроблоки (MB) и различные субблоки могут обобщенно упоминаться как видеоблоки. Помимо этого серия последовательных макроблоков может считаться серией видеоблоков, таких как MB и/или субблоки. Каждая серия последовательных макроблоков может быть независимо декодируемой единицей. После прогнозирования преобразование может быть выполнено для остаточного блока 8×8 или остаточного блока 4×4, и дополнительное преобразование может быть применено к DC-коэффициентам блоков 4×4 для компонентов сигнала цветности или компонентов сигнала яркости, если режим прогнозирования intra_16×16 используется.
Следуя технологиям кодирования с внутренним и взаимным прогнозированием, дополнительные технологии кодирования могут быть применены к передаваемому потоку битов. Эти дополнительные технологии кодирования могут включать в себя технологии преобразования, такие как целочисленное преобразование 4×4 или 8×8, используемое в H.264/AVC, или дискретное косинусное преобразование DCT, и энтропийного кодирования, такие как кодирование переменной длины (VLC), кодирование Хаффмана и/или кодирование по длинам серий.
Согласно технологиям этого раскрытия сущности технологии повышения дискретизации используются для того, чтобы формировать видеоданные после повышающей дискретизации для использования при кодировании (т.е. при кодировании или декодировании) видеоданных улучшающего слоя. Видеоданные базового слоя могут быть подвергнуты повышению дискретизации до пространственного разрешения соответствующих видеоблоков улучшающего слоя, и данные после повышающей дискретизации могут использоваться в качестве эталонных при кодировании видеоданных улучшающего слоя. Как часть этого процесса повышения дискретизации технологии этого раскрытия сущности идентифицируют ситуации, в которых технологии интерполяции являются предпочтительными, и другие ситуации, в которых так называемые технологии копирования ближайшего соседа являются предпочтительными. С другой стороны, интерполяция может заключать в себе формирование среднего взвешенного для значения после повышающей дискретизации, при этом среднее взвешенное задается между двумя или более значениями базового слоя. Для копирования ближайшего соседа значение уровня после повышающей дискретизации задается как значение позиции пиксела базового слоя в непосредственной пространственной близости к позиции пиксела после повышающей дискретизации. Используя интерполяцию в конкретных сценариях повышения дискретизации и копирование ближайшего соседа в других сценариях, кодирование видеоблоков улучшающего слоя может быть усовершенствовано.
Повышение дискретизации может изменять границы блоков. Например, если базовый слой и улучшающий слой каждый задают видеоблоки 4 × 4 пиксела, повышение дискретизации базового сл