Гибридное мелкозернистое масштабируемое видеокодирование с зависящим от времени отношением сигнал/шум
Иллюстрации
Показать всеИзобретение относится к видеокодированию, в частности к методу мелкозернистого кодирования, который включает в себя как качественное, так и временное масштабирование. Техническим результатом является улучшение видеокачества или отношения сигнал/шум каждого кадра или картинки, переданных в базовом слое. Технический результат достигается использованием гибридной временно-сигнал/шум (С/Ш) масштабируемой структуры, которая сразу пригодна для методов мелкозернистого кодирования. В одном примере этой структуры временные модернизированные кадры и модернизированные кадры мелкозернистого масштабирования (МЗМ) включают в единый модернизированный слой. В другом приеме используются два раздельных модернизированных слоя для достижения гибридного временного-С/Ш масштабирования. Эти два слоя включают в себя временной масштабируемый слой для достижения временной модернизации для базового слоя (т.е. лучшего движения), тогда как МЗМ слой используется для улучшения качества С/Ш базового слоя и/или временного масштабируемого модернизированного слоя. 4 н. и 6 з.п. ф-лы, 12 ил.
Реферат
Настоящее изобретение относится к видеокодированию, а конкретнее к методу мелкозернистого видеокодирования, который включает в себя как качественное, так и временное масштабирование.
Мелкозернистое масштабирование (МЗМ) (FGS) используется для сжатия видеосигнала для передачи по сетям, которые имеют меняющуюся полосу пропускания, таким как Интернет. Примеры таких МЗМ структур показаны на фиг.1А-1В и 2А-2В. Как можно видеть, эти структуры состоят из базового слоя, кодированного с разрядной скоростью RBL и единственного мелкозернистого модернизированного слоя, кодированного со скоростью REL. Однако на фиг.1А-1В базовый слой закодирован для включения только кадров I и Р, тогда как на фиг.2А-2В базовый слой закодирован для включения кадров I, P и В.
Из-за мелкозернистости модернизированного слоя МЗМ видеопоток может быть передан в любом сетевом сеансе с доступной полосой пропускания в диапазоне от Bmin=RBL до Вmax=RBL+REL. К примеру, если доступная полоса пропускания между передатчиком и приемником равна В=R, то передатчик посылает базовый слой со скоростью RBL и только часть модернизированного слоя со скоростью Re=R-RBL. Как видно из фиг.1В и 2В, части модернизированного слоя могут выбираться для передачи в мелкозернистом виде. Поэтому, общая разрядная скорость передачи составляет R=RBL+Rе.
Вследствие гибкости в поддержке широкого диапазона полосы пропускания передачи с единственным модернизированным слоем, МЗМ кадр принят в качестве стандарта ISO MPEG-4. Пример системы, использующей кодер, основанный на МЗМ, показан на фиг.3. Эта система включает в себя сеть 6 с переменной доступной полосой пропускания в диапазоне (Bmin=Rmin, Bmax=Rmax). Вычислительный блок 4 также включен для оценивания или измерения текущей доступной полосы пропускания (R). Видеокодер 8 базового слоя (БС) (BL) сжимает сигнал от видеоисточника 2 используя разрядную скорость (RBL) в диапазоне (Rmin, R). Обычно кодер 8 базового слоя сжимает сигнал, используя минимальную разрядную скорость (Rmin). Это особенно верно в том случае, когда имеет место кодирование БС в автономном режиме до времени передачи видеосигнала. Как можно видеть, блок 10 также включен для вычисления остаточных изображений 12. Далее, кодер 14 модернизированного слоя (МС) (EL) сжимает остаточный сигнал с разрядной скоростью REL, которая может быть в диапазоне от RBL до Rmax-RBL. Важно отметить, что кодирование видеосигнала (как модернизированного, так и базового слоев) может происходить либо в реальном времени (как подразумевается на чертеже), либо в автономном режиме до времени передачи. В последнем случае видеосигнал может сохраняться, а затем передаваться (или течь) позднее с помощью контроллера 16 скорости в реальном времени, как показано. Этот контроллер 16 скорости в реальном времени выбирает наиболее качественный сигнал модернизированного слоя, учитывая текущую (в реальном времени) доступную полосу R пропускания. Поэтому выходная разрядная скорость сигнала МС из контроллера скорости равна R-RBL.
Настоящее изобретение направлено на метод мелкозернистого масштабируемого кодирования, который включает в себя как качественное, так и временное масштабирование. В одном примере кодирования видеоданных согласно настоящему изобретению часть видеоданных кодируется для получения кадров базового слоя. Остаточные изображения со скомпенсированным движением вырабатываются из видеоданных и кадров базового слоя. Эти остаточные изображения со скомпенсированным движением кодируются с помощью метода мелкозернистого кодирования для получения временных модифицированных кадров. Далее остаточные изображения генерируются из видеоданных и кадров базового слоя. Остаточные изображения затем кодируются также с помощью метода мелкозернистого кодирования для получения качественных модернизированных кадров. Временные модернизированные кадры и качественные модернизированные кадры могут также объединяться в модернизированный слой.
В другом примере кодирования видеоданных согласно настоящему изобретению часть видеоданных кодируется для получения кадров базового слоя. Остаточные изображения со скомпенсированным движением генерируются из видеоданных и кадров базового слоя. Остаточные изображения со скомпенсированным движением кодируются для получения временных модернизированных кадров. Остаточные изображения генерируются из видеоданных, кадров базового слоя и временных модернизированных кадров. Остаточные изображения затем кодируются с помощью метода мелкозернистого кодирования для получения качественных модернизированных кадров. Далее временные модернизированные кадры образуют временной модернизированный слой, а качественные модернизированные кадры образуют качественный модернизированный слой.
В одном примере декодирования видеосигнала, включающего базовый слой и модернизированный слой, согласно настоящему изобретению базовый слой декодируется для получения видеокадров. Модернизированный слой также декодируется для получения векторов движения. Затем выполняется компенсация движения на видеокадрах согласно векторам движения для получения дополнительных видеокадров. Видеокадры и дополнительные видеокадры объединяются в видеопоследовательность. Далее модернизированный слой декодируется для получения улучшенных видеокадров. Каждый из этих улучшенных видеокадров добавляется к одному из видеокадров и дополнительных видеокадров.
На чертежах одинаковые позиционные обозначения везде представляют соответствующие части.
На Фиг.1А-1В представлена одна масштабируемая структура из известного уровня техники.
На Фиг.2А-2В представлена другая масштабируемая структура из известного уровня техники.
На Фиг.3 представлена система, использующая масштабируемую структуру из известного уровня техники.
На Фиг.4А-4Е представлены примеры гибридной масштабируемой структуры согласно настоящему изобретению.
На Фиг.5А-5С представлены другие примеры гибридной масштабируемой структуры согласно настоящему изобретению.
На Фиг.6 представлена одна система, использующая гибридную масштабируемую структуру согласно настоящему изобретению.
На Фиг.7 представлен пример функциональной архитектуры для видеокодеров по фиг.6.
На Фиг.8A-8D представлен другой пример гибридной масштабируемой структуры согласно настоящему изобретению.
На Фиг.9 представлена другая система, использующая гибридную масштабируемую структуру согласно настоящему изобретению.
На Фиг.10 представлен один пример декодера для гибридной масштабируемой структуры согласно настоящему изобретению.
На Фиг.11 представлен другой пример декодера для гибридной масштабируемой структуры согласно настоящему изобретению.
На Фиг.12 представлен один пример системы для воплощения настоящего изобретения.
Мелкозернистое масштабирование (МЗМ) кодирование воплощается для улучшения видеокачества или отношения сигнал/шум (С/Ш) (SNR) каждого кадра или картинки, переданных в базовом слое. Это достигается вычислением остаточного изображения (ОИ) (RI), которое является разностью между декодированным изображением базового слоя и исходной картинкой. Остаточное изображение затем кодируется с помощью способа встроенного или мелкозернистого видеокодирования. Для данного рассмотрения изображение, появляющееся из процесса кодирования, будет обозначаться МЗМ остаточным изображением (FR).
В качестве альтернативы повышению видеокачества (или меры С/Ш) каждого видеокадра базового слоя желательно в некоторых случаях повышать кадровую скорость передаваемой видеопоследовательности. Этого можно достичь посылкой дополнительных кадров. Например, предположим, что видеосигнал состоит из последовательности с 10 кадрами в секунду (кадр/сек). В базовом слое кодируется и передается только 5 кадр/сек этой видеопоследовательности (т.е. с помощью кадров 1, 3, 5, ... и т.д.). Модернизированный слой добавляет затем оставшуюся подпоследовательность с 5 кадр/сек (т.е. кодируя кадры 2, 4, 6, ... и т.п.). Этот вид масштабирования известен как временное масштабирование, когда модернизированный слой улучшает временное представление видеопоследовательности путем введения лишних кадров, которые не закодированы в базовом слое. Это в целом улучшает гладкость движения масштабированной видеопоследовательности.
Однако имеющееся решение МЗМ не поддерживает временного масштабирования. На основании существующей кадровой МЗМ структуры (исходно предложенной для стандарта MPEG-4 и служащей ныне в качестве проекта эталонного стандарта) базовый слой сжимается с использованием кадровой скорости fBL при разрядной скорости RBL. Затем, безотносительно к диапазону полосы пропускания (т.е. от Bmin=RBL до Вmax=RBL+REL), покрываемому основанном на МЗМ кодеком, масштабируемая видеопоследовательность должна поддерживать кадровую скорость базового слоя (т.е. fBL по всему диапазону полосы пропускания (Bmin, Bmax). Иными словами, единственным улучшением, которого можно достичь, является повышение видеокачества последовательности с тем же самым числом кадров в секунду (fBL), как пояснено выше.
Ввиду вышеизложенного, настоящее изобретение направлено на обеспечение как качественного, так и временного масштабирования на основании МЗМ кодирования. Согласно настоящему изобретению, один способ достичь этого состоит в использовании гибридной временно-качественной (т.е. временно-С/Ш) масштабируемой структуры на основании МЗМ видеокодирования, которая будет подробно пояснена ниже.
Один пример гибридной временно-С/Ш МЗМ масштабируемой структуры согласно настоящему изобретению показан на фиг.4А. Как можно видеть, эта структура включает в себя базовый слой, содержащий кадры I и Р. Однако модернизированный слой включает в себя как остаточные МЗМ кадры (FR), так и двунаправленные МЗМ (BDF) кадры. Использование кадров FR и BDF позволяет настоящему изобретению поддерживать соответственно и качественное, и временное мелкозернистое масштабирование.
Согласно настоящему изобретению кадры BDF предсказываются из двух временных соседних кадров базового слоя. Появляющийся из этого предсказания остаток кодируется затем с помощью способа мелкозернистого кодирования. Далее кадры базового слоя кодируются также с помощью мелкозернистого способа для получения кадров FR. Важно отметить, что основанный на МЗМ способ, используемый для кодирования кадров BDF, может быть тем же самым или отличаться от основанного на МЗМ способа, используемого для кодирования картинок FR.
Вышеописанная масштабируемая структура обеспечивает гибкость в поддержании мелкозернистого качественного масштабирования (т.е. С/Ш) с сохранением временного масштабирования с той же самой кадровой скоростью (т.е. увеличением только кадровой скорости), либо и мелкозернистое качественное, и временное масштабирование. Примеры этих различных режимов масштабирования, поддерживаемого данным изобретением, показаны на фиг.4С-4Е.
На фиг.4С достигается временное масштабирование, поскольку в модернизированном слое передаются только кадры BDF. На фиг.4D достигается качественное масштабирование (т.е. С/Ш), поскольку передаются только кадры FR. На фиг.4Е достигается и качественное, и временное масштабирование, поскольку передаются кадры и BDF, и FR.
На основании настоящего изобретения кадровая скорость МЗМ модернизированного слоя ((fBL) может быть той же самой или отличной от кадровой скорости базового слоя ((fBL). Общая кадровая скорость ((fBL) последовательности объединенных базового и модернизированного слоев зависит от числа FR картинок (NFR), используемых в МЗМ модернизированном слое по отношению к общему числу (NEL) картинок в этом слое, следующим образом:
Для примера, показанного на фиг.4А, общая кадровая скорость (fT) равна удвоенной кадровой скорости базового слоя, fT=2fBL=fEL. В общем случае предложенная масштабируемая структура поддерживает сценарии с переменной кадровой скоростью, когда кадровые скорости базового слоя и/или модернизированного слоя могут изменяться во времени. Кроме того, важно отметить, что в то время, как генерируемый сжатый поток имеет полную кадровую скорость fT, передаваемый поток может иметь отличную кадровую скорость ft. В частности, в примерах на фиг.4С и 4Е передаваемый поток имеет кадровую скорость ft=fT, тогда как в примере на фиг.4D кадровая скорость равна ft=0,5fT=fBL.
Другой пример гибридной временно-С/Ш МЗМ масштабируемой структуры согласно настоящему изобретению показан на фиг.4В. Как можно видеть, эта структура включает в себя тот же самый модернизированный слой, что и пример на фиг.4А. Однако данная структура отличается тем, что базовый слой кодируется для включения кадров I, P и В.
Масштабированная структура согласно настоящему изобретению способна также поддерживать различные изменения режимов предсказания из базового слоя. Эти примеры, показанные на фиг.4А-4В, представляют один класс режимов предсказания, тогда как другие режимы показаны на фиг.5А-5В.
На фиг.5А поддерживается только режим предсказания вперед, что приводит к простому воплощению видеокодека с низкой сложностью. Этот режим генерирует вид кадра с прямым МЗМ (FWF) в модернизированном слое, как показано. Фиг.5В включает в себя режим предсказания назад для генерирования кадров с обратным МЗМ (BWF) в слое МЗМ. На фиг.5С показана комбинация режимов предсказания вперед и назад. Следует отметить, что согласно настоящему изобретению предполагаются также и комбинации этих различных, основанных на МЗМ, видов картинок с разными видами картинок базового слоя.
Один пример системы, применяющей гибридную масштабированную структуру согласно настоящему изобретению, показан на фиг.6. Как можно видеть, эта система в основном включает в себя видеоисточник 2, сеть 6 с переменной полосой пропускания, кодер 8 базового слоя (БС) (BL) и гибридный временно-С/Ш МЗМ видеокодер 20. Согласно настоящему изобретению этот гибридный временно-С/Ш МЗМ видеокодер 20 может конфигурироваться для генерирования любого из модернизированных слоев, показанных на фиг.4А-4Е и 5А-5С. Далее видеоисточник 2 может быть воплощен любым устройством фиксации изображения, таким как цифровая видеокамера.
Как можно видеть из фиг.6, некодированные видеоданные от видеоисточника 2 вводятся как в кодер 8 БС, так и в гибридный временно-С/Ш МЗМ видеокодер 20. Кодер 8 БС кодирует часть исходных видеоданных с помощью стандартного метода кодирования с кадровым предсказанием. В предпочтительном выполнении изобретения кодер 8 БС может быть воплощен с помощью кодеров MPEG-1, MPEG-2 или MPEG-4.
Кодер 8 БС сжимает видеоданные с заранее заданной разрядной скоростью RBL. В предпочтительном выполнении изобретения RBL определяется вычислительным блоком 4 на основании текущей полосы пропускания сети 6. Конкретнее, вычислительный блок 4 измеряет минимальную разрядную скорость (RMIN), максимальную разрядную скорость (RMAX) и текущую доступную полосу пропускания (R) сети 6. Вычислительный блок 4 устанавливает затем значение RBL между RMIN и R.
В большинстве случаев вычислительный блок 4 устанавливает RBL на RMIN, чтобы гарантировать, что даже при самых низких полосах пропускания сеть 43 будет способна принять видеоданные, кодированные по настоящему изобретению. Это особенно справедливо в случаях, когда кодирование базового слоя имеет место в автономном режиме.
Исходные видеоданные от источника 2 и кодированные видеоданные (т.е. базовый слой), выданные кодером 8 БС, подаются как на вычислительный блок 10 остаточного изображения (ОИ) (RI), так и на вычислительный блок 24 остаточного изображения со скомпенсированным движением (ОИСД) (MCRI) в гибридном кодере 20. Вычислительный блок 10 ОИ и вычислительный блок 24 ОИСД используют исходные видеоданные и кодированные видеоданные для генерирования остаточных изображений 12 и остаточных изображений 22 со скомпенсированным движением (СД) соответственно, как описано ниже.
В процессе работы вычислительный блок ОИ принимает кодированные видеоданные от кодера 8 БС и затем декодирует эти кодированные видеоданные. Поэтому остаточные изображения 12 генерируются на основании разности между пикселами в этих декодированных видеоданных и пикселами в исходных видеоданных. Говоря в общем, остаточные изображения соответствуют разности между кадрами в базовом слое (который содержит минимальное число кадров и/или минимальный объем данных, требуемых декодером для декодирования видеосигнала) и кадрами в исходных видеоданных.
Вычислительный блок 10 ОИ может использовать один или более из множества различных способов для генерирования остаточных изображений 12. Например, простое попиксельное вычитание может выполняться между кадрами базового слоя и кадрами исходных видеоданных. Результирующая разность между этими двумя наборами кадров (т.е. остаточные изображения) включает в себя разности в кадровых разрешениях. В случаях, когда базовый слой не включает в себя всех кадров исходных видеоданных, остаточные изображения включают в себя эти пропущенные кадры.
Остаточные изображения (ОИ) 12 могут также генерироваться сначала фильтрацией декодированных видеоданных, а затем определением разности между отфильтрованными видеоданными и исходными видеоданными. Этот метод имеет преимущество в том, что из декодированных видеоданных удаляется нежелательный шум и тому подобное, вызванные, к примеру, процессами кодирования и декодирования. В предпочтительных выполнениях изобретения для фильтрации декодированных видеоданных используется деблокирущий фильтр, хотя изобретение и не ограничено использованием этого вида фильтра.
Другой метод генерирования остаточных изображений 12 включает в себя фильтрацию как декодированных видеоданных, так и исходных видеоданных, а затем определения разности между обоими этими видами отфильтрованных данных. В этом методе тот же самый вид фильтра (например, деблокирующий фильтр) может применяться как к исходным видеоданным, так и к декодированным видеоданным. Альтернативно, к исходным видеоданным и к декодированным видеоданным могут применяться разные виды фильтров.
Как описано выше, остаточные изображения 12 вычисляются в пиксельной области. К примеру, если кодер базового слоя использует кодирование, основанное на дискретном косинусном преобразовании (ДКП) (DCT), а кодер модернизированного слоя использует кодирование, основанное на преобразовании колебаний, то картинка базового слоя должна вычитаться из исходного изображения (пиксел за пикселом) в исходной (т.е. не преобразованной) пиксельной области. Это требует, чтобы сжатый разрядный поток картинок базового слоя декодировался для генерации представления его пиксельной области до вычислений остаточного сигнала. Этот процесс декодирования обычно имеет место в декодере базового слоя (для целей оценки и компенсации движения в базовом слое), а следовательно, декодер модернизированного слоя может иметь преимущество от этого. Результирующий остаток пиксельной области должен затем преобразовываться в область желательного преобразования (например, колебания) до выполнения МЗМ кодирования этого остатка.
Однако, если кодеры и базового слоя, и модернизированного слоя используют одно и то же преобразование, остаточные изображения 12 могут вычисляться и в области преобразования (к примеру, в области ДКП или колебаний). В этом случае МЗМ кодер кодирует результирующее преобразование непосредственно (т.е. без необходимости в выполнении какой-либо операции преобразования над остаточным сигналом, поскольку он уже находится в области желательного преобразования).
В ходе той же работы вычислительный блок 24 ОИСД принимает кодированные видеоданные от кодера 8 БС, а затем декодирует эти кодированные видеоданные. После этого остаточные изображения 22 СД генерируются на основании подхода к скомпенсированному движению из декодированных видеоданных. Этого можно достичь, к примеру, с помощью основанных на компенсации движения подходов для вычисления картинки со скомпенсированным движением. Эта картинка со скомпенсированным движением вычитается затем из соответствующей исходной картинки в пиксельной области. Результирующий остаток в пиксельной области преобразуется затем перед кодированием в мелкозернистом кодере.
Важно отметить, что, хотя остаточные изображения 12 могут вычисляться непосредственно в области преобразования (например, когда и базовый слой, и модернизированный слой используют одно и то же преобразование), остаточные изображения 22 СД вычисляются в пиксельной области. Поэтому остаточные изображения 22 СД (пиксельная область) должны быть преобразованы (например, ДКП) до кодирования, основанного на мелкозернистости).
Гибридный кодер 20 также включает в себя МЗМ кодер 26 модернизированного слоя (МС) ОИСД и МЗМ кодер 14 остаточных изображений МС. В процессе работы МЗМ кодер 26 МС ОИСД и МЗМ кодер 14 остаточных изображений МС соответственно кодируют остаточные изображения 22 СД и остаточные изображения 12 с помощью воплощенного метода мелкозернистого кодирования.
Следует отметить, что согласно настоящему изобретению любой метод мелкозернистого кодирования может использоваться вместе с предложенной масштабируемой структурой для кодирования остаточных изображений 22 СД или остаточных изображений 12. Основными кандидатами для кодирования любого вида из остаточных картинок являются внедренные основанные на ДКП механизмы (например, внедренные механизмы в разрядной плоскости, основанные на ДКП) и семейство внедренных механизмов колебаний с нулевым деревом. Могут применяться и другие способы мелкозернистого кодирования, такие как поиск масштабируемого сопряжения на основании переполненного набора функций преобразования, и т.п. Далее следует отметить, что для кодирования остаточных изображений 22 СД и остаточных изображений 12 может быть использован как тот же самый, так и отличный метод.
В результате вышеописанного кодирования вырабатываются два потока кадров модернизированного слоя, в том числе временной модернизированный поток 32 и МЗМ модернизированный поток 31. Временной модернизированный поток 32 включает в себя сжатые МЗМ временные кадры (например, ОИСД) из кодера 26 МС ОИСД, а МЗМ модернизированный поток 31 включает в себя кадры С/Ш (т.е. стандартного МЗМ остатка) из кодера 14 остаточных изображений БС. Эти два потока 31, 32 могут объединяться для получения единственного МЗМ потока модернизированного слоя или могут оставаться в качестве двух отдельных потоков. В любом случае результирующий МЗМ поток(и) может сохраняться или передаваться в реальном времени.
Иными словами - и аналогично случаю стандартного МЗМ - при гибридной структуре согласно настоящему изобретению кодирование видеосигнала (и модернизированного, и базового слоев) может иметь место либо в реальном времени (как подразумевается чертежом), так и в автономном режиме до времени передачи. Во втором случае видеосигнал может храниться, а затем передаваться (или посылаться) позднее.
Однако при любом сценарии (т.е. кодирование в реальном времени или кодирование в автономном режиме не в реальном времени) присутствует контроллер 18 скорости масштабируемых видеоданных в реальном времени для определения в реальном времени разрядных скоростей, которые должны быть выделены для передачи кадров модернизированного слоя. Это выделение выполняется на основании входов с вычислительного блока 4, МЗМ контроллера 28 скорости и пользовательского входа 30. При выполнении этого выделения контроллер 18 скорости видеоданных использует входы R, RBL и RMAX вычислительного блока 4 для определения доступной полосы пропускания, оставленной для передачи кадров модернизированного слоя (R-RBL). Далее МЗМ контроллер 28 скорости принимает также решение о выделении разрядной скорости между двумя потоками 31, 32 модернизированных слоев на основании входов R, RBL RMAX. Далее пользовательский вход 30 разрешит пользователю отдать предпочтение качественному и/или временному масштабированию.
После того как выбрана разрядная скорость для передачи кадров модернизированного слоя, контроллер 18 скорости масштабированных видеоданных в реальном времени выбирает части подлежащих передаче кадров модернизированного слоя. Эти выбранные части кадров модернизированного слоя могут быть кадрами либо одного, либо обоих из двух потоков 31, 32 модернизированного слоя. Как описано выше, этот выбор также может управляться пользовательским входом 30. К примеру, если пользователь предпочитает только качественное масштабирование, контроллер 18 скорости масштабированных видеоданных в реальном времени будет выбирать только кадры из МЗМ модернизированного потока 31. После этого выбора контроллер 18 скорости масштабированных видеоданных в реальном времени выдает изображения в сеть 43 с переменной полосой пропускания в качестве потока БС и потока МС.
Фиг.7 показывает один пример функциональной архитектуры для кодера 8 базового слоя и гибридного временно-С/Ш МЗМ видеокодера 20 по фиг.6. Хотя фиг.7 показывает операцию кодирования на основании ДКП, могут использоваться и другие преобразования (например, волновые). Эта архитектура показывает, что, несмотря на дополнительные вычисления, необходимые для кодирования временных модернизированных кадров по сравнению со стандартным МЗМ кодированием картинок, эти дополнительные вычисления могут быть реализованы без чрезмерного усложнения.
Как можно видеть на фиг.7, кодер 8 базового слоя включает в себя блок 88 ДКП, блок 90 квантования и энтропийный кодер 92, который генерирует часть потока БС из исходных видеоданных. Далее базовый кодер 8 включает в себя также блок 94 оценки движения, который вырабатывает два набора векторов движения из исходных видеоданных. Один набор векторов движения соответствует картинкам базового слоя, тогда как другой набор соответствует временным модернизированным кадрам. Мультиплексор 104 включен для мультиплексирования векторов движения базового слоя с потоком БС. Другой мультиплексор 106 также включен для мультиплексирования соответствующих векторов движения с временным модернизированным потоком. Кроме того, эти два потока модернизированного слоя могут либо мультиплексироваться опционным третьим мультиплексором 108 для генерирования единственного потока (который состоит как из С/Ш, так и временных МЗМ картинок), либо храниться/передаваться двумя раздельными потоками.
Как будет видно дальше, кодер 8 базового слоя включает в себя также блок 100 инверсного квантования, блок 102 инверсного ДКП, блок 98 компенсации движения и кадровую память 96. Все эти функциональные блоки из кодера 8 базового слоя используются при вычислении остаточных изображений СД модернизированного слоя. Как можно видеть, это достигается посредством нового (и к тому же простого) управления потоком данных в архитектуре всего кодека. Тот факт, что кодер никогда на сжимает кадр базового слоя, и временной кадр модернизированного слоя в один и тот же момент времени делает такое совместное использование ресурсов возможным.
Это управление потоком данных достигается посредством функциональных блоков 122, 124, 126, 128. Например, один функциональный блок 122 управляет выходом блока 88 ДКП, направляя его выход либо на блок 90 квантования, если кодируется кадр базового слоя, либо на другой функциональный блок 124, если кодируется остаточное изображение СД модернизированного слоя.
Как можно видеть, гибридный временно-С/Ш МЗМ кодер 20 включает в себя блок 110 остаточного изображения с ДКП для хранения остаточных изображений и остаточных изображений СД. Остаточное изображение генерируется вычитателем 130, который вычитает выход из входа блока 90 квантования. Далее остаточное изображение СД генерируется непосредственно на верхнем выходе функционального блока 122.
Гибридный кодер 20 включает в себя также кодирующие средства 112 адаптивного квантования (АК) (AQ), которые могут применяться как к остаточным изображениям, так и к остаточным изображениям СД. Хорошим кандидатом для средств 112 АК являются средства, определенные стандартом МЗМ MPEG-4, в том числе сдвиг разрядной плоскости посредством выборочной модернизации и/или частотного взвешивания.
МЗМ энтропийный кодирующий блок 114 включен для кодирования остаточных изображений и остаточных изображений СД для получения временного модернизированного потока и МЗМ модернизированного потока. Это кодирование может выполняться согласно тем же методам, которые описаны в связи с фиг.6. Как можно видеть, кодирующий блок 114 используется как для МЗМ, так и для временных модернизированных кадров, поскольку обе картинки этих видов никогда не сжимаются в один и тот же момент времени.
Другой пример гибридной временно-С/Ш МЗМ масштабируемой структуры согласно настоящему изобретению показан на фиг.8А. Как можно видеть, два модернизированных слоя используются для достижения гибридного временно-С/Ш масштабирования в этом примере. В этом случае временной слой используется для достижения временной модернизации для базового слоя (т.е. лучшего движения), тогда как МЗМ слой используется для улучшения качественного С/Ш базового слоя и/или масштабируемого по времени модернизированного слоя.
Масштабируемая структура по фиг.8А обеспечивает также способность выполнять только временную модернизацию, только модернизацию С/Ш или обе временную и С/Ш модернизации, как показано на фиг.8B-8D. На фиг.8В достигается только временное масштабирование, т.к. передаются только кадры временного слоя. На фиг.8С достигается качественное (т.е. С/Ш) масштабирование, т.к. передаются только МЗМ кадры, соответствующие кадрам базового слоя. На фиг.8D достигаются и временное, и С/Ш масштабирование, т.к. передаются и временные кадры, и кадры МЗМ слоя.
В отношении гибридной временно-С/Ш МЗМ масштабируемой структуры по фиг.8А следует отметить, что подразумеваются и иные модификации. К примеру, кадры временного слоя не ограничиваются кадрами двунаправленного предсказания. Согласно настоящему изобретению кадры временного слоя могут также предсказываться только вперед или только назад, либо в любой комбинации.
Другой пример системы, применяющей гибридную масштабируемую структуру согласно настоящему изобретению, показан на фиг.9. Этот пример аналогичен примеру фиг.6 за исключением гибридного временно-С/Ш МЗМ видеокодера 34. В этом примере гибридный видеокодер 34 построен для получения масштабируемой структуры, показанной на фиг.8А. Как можно видеть, этот гибридный кодер 34 включает в себя временной видеокодер 36 МС и МЗМ видеокодер 38 МС.
Согласно этому примеру, временной видеокодер 36 МС генерирует кадры временного слоя, показанные на фиг.8А. Как можно видеть из фиг.9, временной видеокодер 36 МС включает в себя вычислительный блок 24 остаточного изображения со скомпенсированным движением и кодер 40 МС остаточных изображений со скомпенсированным движением (ОИСД). В процессе работы вычислительный блок 24 остаточного изображения со скомпенсированным движением принимает некодированные видеоданные от видеоисточника 2 и кодированные видеоданные от кодера 8 БС для получения остаточных изображений 22 СД. В этом примере остаточные изображения 22 СД могут быть получены согласно тем же методам, которые описаны в отношении примера по фиг.6.
На фиг.9 временной кодер 40 МС ОИСД кодирует остаточные изображения 22 СД для получения кадров 42 временного слоя с разрядной скоростью RTL. Разрядная скорость RTL определяется на основании входов от вычислительного блока 4. Далее остаточные изображения 22 СД могут кодироваться посредством любой кодирующей схемы, используемой для кодирования остатков со скомпенсированным движением. Этот кодер содержит кодирующие схемы, используемые стандартами MPEG-2, MPEG-4 и аналогичными стандартами и кодирующими алгоритмами. В частности, кодирующие схемы, используемые для традиционных временных масштабирований (такие как поддерживаемые временными масштабируемыми видеокодирующими средствами MPEG-2 и MPEG-4), являются хорошими кандидатами.
Согласно этому примеру, МЗМ видеокодер 38 МС генерирует кадры МЗМ слоя, показанные на фиг.8А. Как можно увидеть из фиг.9, этот МЗМ видеокодер 38 МС включает в себя вычислительный блок 24 и МЗМ кодер МС 14 остаточных изображений. В процессе работы вычислительный блок 24 остаточных изображений принимает некодированные видеоданные от источника 2, кодированные данные от кодера 8 БС и кадры 42 временного слоя для получения остаточных изображений 12. Эти остаточные изображения получают согласно методам, описанным в отношении примера по фиг.6.
МЗМ кодер 14 МС остаточного изображения кодирует остаточные изображения 12 для получения МЗМ кадров 44 модифицированного слоя. Этого можно достичь методом мелкозернистого кодирования, таким как внедренные механизмы основанной на ДКП разрядной плоскости (с переменными/внедренными квантованием и передачей), внедренными способами колебаний с нулевым деревом или поиска масштабируемого сопряжения, основанным на избыточном наборе функций преобразования, и т.п.
Как можно видеть далее на фиг.9, введен также контроллер 18 скорости видеоданных в реальном времени. В процессе работы этот контроллер 18 скорости видеоданных принимает поток БС, временной поток 42 МС и МЗМ поток 44 МС в реальном времени. Как и в предыдущем примере, контроллер 18 скорости видеоданных определяет разрядные скорости, которые следует выделить для передачи кадров модернизированного слоя. Например, в случае, когда передаются кадры и из БС, и из временного МС потоков, выделение выполняется на основании доступной полосы пропускания, оставленной для передачи кадров из МЗМ потока 44 МС (R-RBL-RTL), которая определяется на основании входов из вычислительного блока 4.
Далее контроллер 18 скорости видеоданных определяет также один или оба потока 42, 44 МС подлежат передаче. Это определение также можно сделать на основании доступной полосы пропускания и/или пользовательского входа 30. После того как выполнено это определение, контроллер 18 скорости видеоданных выводит изображения в сеть 43 с переменной полосой пропускания в качестве потока БС, временного потока МС и МЗМ потока МС. Однако, если не требуется временное масштабирование, выводится только поток БС и соответствующие кадры из МЗМ потока МС.
Один пример декодера, применяющего гибридную масштабируемую структуру согласно настоящему изобретению, показан на фиг.10. Декодер по этому примеру соответствует кодеру по фиг.6. В этом примере декодер включает в себя декодер 46 базового слоя для декодирования поступающего потока БС и декодер 64 модернизированного слоя для декодирования потока МС.
Как можно видеть, декодер 46 базового слоя включает в себя две параллельные ветви. Нижняя ветвь включает в себя декодер 48 с переменной длиной (ДПЛ) (VLD), блок 50 инверсного квантования и блок 52 инверсного ДКП. В процессе работы эти элементы 48, 50 и 52 соответственно выполняют декодирование с переменной длиной, инверсное квантование и инверсное дискретное косинусное преобразование на потоке БС для получения видеокадров на входе сумматора 58.
Верхняя ветвь декодера 46 базового слоя включает в себя также декодер 48 переменной длины и вычислительный блок 54 движения базового слоя. В процессе работы вычислительный блок 54 движения базового слоя принимает векторы движения, декодированные ДПЛ 48. Векторы движения используются для выполнения компенсации движения на кадрах, хранящихся в кадровой памяти 56 базового слоя, для получения дополнительных кадров на других входах сумматора 58.
Далее в процессе работы сумматор 58 объединяет видеокадры из нижней ветви и верхней ветви для получения видеоданных БС на выходах сумматора 58, как показано. Далее один из выходов сумматора 58 соединен с памятью 56 базового слоя для временного хранения каждого из объединенных видеокадров БС. Это позволит кадрам, полученным с помощью вычислительного блока 54 движе