Масштабируемое кодирование и декодирование изображений

Изобретение относится к декодированию изображений. Технический результат заключается в улучшении декодирования изображения, закодированного в масштабируемом битовом потоке. Способ декодирования изображения, закодированного в масштабируемом битовом потоке, в котором принимают масштабируемый битовый поток, содержащий многократно сканируемые блочные битовые потоки, представляющие блоки разделенного изображения, причем каждый из блоков закодирован в соответствии с одним из множества различных режимов кодирования и содержит один или больше типов данных, представляющих упомянутый один режим кодирования, и включающие в себя флаги, указывающие типы данных; восстанавливают упомянутые блочные битовые потоки в соответствии с упомянутым одним или более типами данных, указанных флагами, включенными в блочные битовые потоки; и декодируют каждый из восстановленных блоков в соответствии с одним из множества различных режимов кодирования. 2 н. и 8 з.п. ф-лы, 5 ил., 3 табл.

 

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

Изобретение относится к способу и устройству для кодирования изображений в масштабируемый битовый поток. Изобретение также относится к соответствующему способу и устройству для декодирования такого масштабируемого битового потока, сигнала изображения, закодированного в виде такого (возможно усеченного) масштабируемого битового потока, и к носителю информации, содержащему записанный на нем такой закодированный сигнал изображения. Изобретение, в частности, полезно для кодирования видеоизображений сигнала телевидения высокой четкости (HDTV).

Описание предшествующего уровня техники

Масштабируемое видеокодирование предусматривается для беспроводной передачи сигналов телевидения высокой четкости (WirelessHD), в частности, в целях невидимого подсоединения вмонтированного в стену HDTV монитора с плоским экраном к внешнему источнику HDTV сигнала. Термин «масштабируемый» означает то, что битовый поток, производимый кодером, может быть усеченным.

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

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

Задача и сущность изобретения

Задачей изобретения является дополнительное улучшение способа предшествующего уровня техники.

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

Изобретение предоставляет масштабируемый формат битового потока, который позволяет очень гибко комбинировать различные блочные битовые потоки, что создает возможность для оптимизированного битового распределения. Множественные режимы кодирования обладают различной значимостью/приоритетами по отношению к качеству отображения декодированных данных изображения. Изобретение позволяет сделать то, что масштабируемый битовый видеопоток может организовываться таким образом, что в первую очередь достигаются самые большие улучшения качества, за которыми затем следуют последовательно все более тонкие усовершенствования качества, по мере дальнейшего приема битового потока. Действуя таким образом, достигается оптимальный компромисс между скоростью передачи и искажением. Поскольку режимы обладают различной значимостью по отношению к объективному/субъективному качеству, формат битового потока создает возможность для кодера очень гибко выбирать, какие биты отправлять в первую очередь.

По аналогии с известными способами видеокодирования, видеоизображения предпочтительно разделяются на фрагменты, и каждый фрагмент разделяется на блоки 8×8 пикселей. Блоки 8×8 пикселей кодируются внутрикадровым образом, что означает, что не используется никакая информация из других кадров.

Каждый из блоков кодируется в соответствии с одним из трех режимов кодирования:

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

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

- При режиме пропуска, блок представляется посредством флага в 1 бит, указывающего, что он, как это было обнаружено, является идентичным предыдущему блоку.

Формат битового потока, в соответствии с настоящим изобретением, состоит из большого количества сканирований/итераций через масштабируемый битовый поток индивидуальных блоков. При каждом сканировании кодер принимает решение, вкладывает ли он в битовый поток биты для естественных/DCT блоков, или для синтетических/графических блоков, или как для того, так и для другого. Для блоков с DCT, кодер может дополнительно сделать выбор между битами DC коэффициентов и битами AC коэффициентов. Например, кодер может сделать выбор отправить в первую очередь несколько сканирований DC битов с DCT, затем отправить несколько сканирований графических битов, и затем отправить некоторые AC биты с DCT. Сканирования могут представлять собой смесь битов различных режимов или последовательные сканирования битов при одном и том же режиме. Решения, которые принимает кодер, сигнализируются в приемник в виде флагов, которые предшествуют каждой блочной части (например, закодированной битовой плоскости) и/или множеству блоков (например, фрагменту).

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

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

Дополнительно кодер имеет возможность выбора, для каждого сканирования, использовать ли или нет арифметическое кодирование, с целью более эффективного сжатия определенных данных DCT-AC коэффициентов.

Способ может дополнительно содержать этап разделения каждого изображения на фрагменты изображения и вкладывать в каждый фрагмент флаги, указывающие режимы кодирования, применяющиеся к упомянутому фрагменту. Указание, в начале битового потока, на режимы, которые осуществляются во время сжатия фрагмента изображения (8 строк изображения), оптимизирует кодирование с блочными типами режимов (то есть минимизирует число битов, требуемых для кодирования).

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

На Фиг. 1 показывается структурная схема, иллюстрирующая способ кодирования видеосигнала в соответствии с изобретением.

На Фиг. 2 схематически показываются масштабируемые блочные битовые потоки, получаемые при режиме графического кодирования и при режиме кодирования с DCT.

На Фиг. 3 показывается пример, иллюстрирующий процесс сканирования в соответствии с изобретением.

На Фиг. 4 показывается структурная схема, иллюстрирующая способ декодирования видеосигнала битового потока в соответствии с изобретением.

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

Описание предпочтительных вариантов осуществления

На Фиг. 1 показывается структурная схема, иллюстрирующая способ кодирования видеосигнала в соответствии с изобретением. На этапе 11, видеоизображение разделяется на фрагменты с высотой в 8 строк, и каждый фрагмент разделяется на блоки 8×8 пикселей.

На этапе 12, каждый из блоков текущего фрагмента кодируется посредством либо дискретного косинусного преобразования (DCT), либо посредством способа графического сжатия, в зависимости от того, обнаруживается ли, что блок содержит естественный контент или графический контент. Может также определяться режим пропуска, указывающий на то, что блок является идентичным предыдущему блоку. Выбираются алгоритмы кодирования для блоков, таким образом, чтобы они вырабатывали масштабируемые блочные битовые потоки. Такой масштабируемый битовый поток может быть усечен в любой позиции. Чем меньшим является усечение, тем меньшей является остаточная погрешность, когда блок восстанавливается.

На Фиг.2, под буквой А, схематически показывается масштабируемый блочный битовый поток, получаемый при режиме графического кодирования. При этом режиме графический кодер применяет алгоритм сжатия, по возможности без потерь, к каждой индивидуальной 8×8 битовой плоскости блока изображения. Блочный битовый поток, получаемый таким образом, содержит последовательность из восьми (битовая глубина пикселей) частей 21 графических данных с изменяющейся длиной, каждая из которых представляет битовую плоскость пиксельных значений, в порядке убывания значимости.

На Фиг.2, под буквой B, схематически показывается масштабируемый блочный битовый поток, получаемый при режиме естественного кодирования. При этом режиме блок 8×8 пикселей подвергается дискретному косинусному преобразованию (DCT), и затем конвертируется в масштабируемый блочный битовый поток, посредством индивидуального сжатия каждой битовой плоскости коэффициентов, как это раскрывается в международной заявке на патент WO 2005/112467, принадлежащей настоящему заявителю. Блочный битовый поток теперь содержит одиннадцать (битовая глубина коэффициентов) битовых плоскостей значений коэффициентов, в порядке убывания значимости. Как показывается на Фиг.2, каждая битовая плоскость содержит dc-бит 22 и часть 23 ac данных с изменяющейся длиной.

Возвращаясь теперь к Фиг.1, осуществляется программа, в которой формируется битовый видеопоток, представляющий текущий фрагмент. В первую очередь, на этапе 13, генерируется массив режимы_блоков() для того, чтобы идентифицировать, для каждого из блоков во фрагменте, какой режим кодирования блоков должен использоваться для кодирования каждого из блоков. Программа затем продолжается посредством многократного сканирования (этап 14) блочных битовых потоков, которые были сгенерированы на этапе 12. При каждом сканировании 14, процесс кодирования выбирает некоторую часть графических блочных битовых потоков и/или естественных блочных битовых потоков. По отношению к естественному блочному битовому потоку, процесс выбирает dc-бит и/или часть ас данных соответствующей битовой плоскости коэффициентов. Каждая выбираемая часть блочного битового потока представляет заданное усовершенствование качества изображения. Упомянутый выбор частей является таким, что, в процессе продолжения процесса сканирования, последовательно все более тонкие усовершенствования добавляются к битовому видеопотоку.

При каждом сканировании 14, перед текущими частями данных усовершенствования (этап 142) к битовому потоку добавляются флаги (этап 141), указывающие то, какие типы закодированных данных (графика, dc-бит, ac-данные) выбирались, и, таким образом, идентифицирующие соответствующие режимы кодирования. Таким образом, в приемник сигнализируется выбор, сделанный кодером. Процесс сканирования продолжается до тех пор, пока все блочные битовые потоки фрагмента не будут полностью обработаны (этапы 15, 16). Вышеупомянутый процесс затем осуществляется для следующего фрагмента (этап 17).

На Фиг.3 показывается пример, иллюстрирующий процесс сканирования, в соответствии с изобретением. На фигуре показываются четыре блочных битовых потока BS0,..., BS3 первых четырех блоков изображений (B0, …, B3) фрагмента. Было обнаружено, что первый и четвертый блоки представляют собой графические блоки. Соответствующие блочные битовые потоки BS0 и BS3 имеют восемь графических закодированных битовых плоскостей 21 в порядке убывания значимости, некоторые из которых показываются на Фиг. 3. Второй и третий блоки представляют собой естественные блоки. Соответствующие блочные битовые потоки BS1 и BS2 имеют одиннадцать dc-битов 22 и одиннадцать закодированных ac битовых плоскостей 23, некоторые из которых показываются на Фиг. 3.

Как определяется посредством жирных точек вдоль стрелки 31, первое сканирование через блочные потоки переносит самую важную битовую плоскость коэффициентов DCT естественных блоков (B1, B2), то есть, соответствующие биты DC коэффициента, а также AC коэффициенты. Второе сканирование 32 определяет следующий (то есть второй) бит DC коэффициента естественных блоков. Третье сканирование 33 предоставляет графические данные, а также данные AC коэффициентов естественных блоков, то есть, первые графические битовые плоскости графических блоков (B0, B3) и следующие (то есть вторые) битовые плоскости AC коэффициентов естественных блоков (B1, B2). При четвертом сканировании 34, переносятся вторые графические битовые плоскости, и т.д.

В следующей Таблице 1 показывается получающийся битовый видеопоток для упомянутого фрагмента. Флаги, указывающие, при каждом сканировании, типы данных, которые последуют далее, обозначаются как dc_данные_dct, ac_данные_dct и графические_данные. Правый столбец показывает на текущие данные битового потока, где "1" и "0" обозначают значения флагов, "b" представляет один бит данных, и "d" обозначает (возможно, изменяющееся) количество битов данных.

Таблица 1.
режимы_блоков() d
dc_данные_dct
ac_данные_dct
графические_данные
1-й dc бит для BS1
1-я ac битовая плоскость для BS1
1-й dc бит для BS2
1-я ac битовая плоскость для BS2
конец_потока
1
1
0
b
d
b
d
0
dc_данные_dct
ac_данные_dct
графические_данные
2-й dc бит для BS1
2-й dc бит для BS2
конец_потока
1
0
0
b
b
0
dc_данные_dct
ac_данные_dct
графические_данные
1-я битовая плоскость для BS0
2-я ac битовая плоскость для BS1
2-я ac битовая плоскость для BS2
1-я битовая плоскость для BS3
конец_потока
0
1
1
d
d
d
d
0
dc_данные_dct
ac_данные_dct
графические_данные
2-я битовая плоскость для BS0
2-я битовая плоскость для BS3
конец_потока
0
0
1
d
d
0

конец_потока
1

На Фиг. 4 показывается структурная схема, иллюстрирующая способ декодирования (возможно, усеченного) видеосигнала битового потока и восстановление фрагмента изображения. Этап 41 представляет собой этап инициализации, на котором:

- Считываются и сохраняются режимы кодирования блоков. Например, по отношению к потоку битов, показанному в Таблице 1, приемник теперь знает, что блоки B0, B3 представляют собой графические блоки, а блоки B1, B2 представляют собой естественные блоки.

- Создаются соответствующие массивы памяти блоков.

- Для каждого из блоков инициализируется счетчик битовых плоскостей (или переменная “блок завершен”). Естественные блоки имеют отдельные счетчики битовых плоскостей для dc данных и ac данных.

На этапе 42, приемник идентифицирует, на основе флагов для типов данных и на основе знания режимов кодирования, к каким блокам применять части данных усовершенствования, при текущем сканировании. Например, к первому сканированию в битовом потоке Таблицы 1 приписан флаг, показывающий, что оно имеет dc данные и ac данные. Поскольку эти типы данных применяются к естественным блокам, приемник знает, что первое сканирование будет содержать dc и ac данные для блоков B1 и B2.

На этапе 43, берется часть данных из битового потока. Упомянутые данные хранятся в текущей битовой плоскости подходящего блока, и ассоциированный счетчик битовой плоскости последовательно приращивается. Эта процедура повторяется (этапы 44, 45) для всех блоков, к которым обращались при текущем сканировании. В настоящем примере первая (наиболее важная) битовая плоскость коэффициентов блоков B1 и B2 с DCT, таким образом, восстанавливается при первом сканировании.

На этапе 46 проверяется флаг конец_потока, который завершает каждое сканирование (см. Таблицу 1). При условии, что его значение составляет “0”, далее последует и будет обрабатываться другое сканирование (этап 47). Значение флага конец_потока, равное "1", является признаком конца битового видеопотока для текущего фрагмента. Затем все блоки фрагмента могут декодироваться и отображаться (этап 48).

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

Таблица 2
фрагмент (число блоков, битовая глубина, формат_цвета) {
версия_кодека/* фиксировано для 0001 */ 4
использован_естественный_режим 1
использован_графический_режим 1
использован_режим_пропуска 1
порядок_блоков_для_каждого_сканирования_битов 1
если (порядок_блоков_для_каждого_сканирования_битов==0) {
порядок_пространственного_сканирования 1
порядок_сканирования_для_сжатия 1
}
порядок_сканирования()
режимы_блоков() x
если (использован_естественный_режим ==1) {
инициирование_естественного_режима()
}
если (использован_графический_режим ==1) {
инициирование_графического_режима()
}
для (i=0; i<числа блоков; i++) {
блок_завершен_dct_dc[i]=0
блок_завершен_dct_ac[i]=0
блок_завершен_графич[i]=0
}
выполнять {
сканирование_битов_блока() x
конец_потока 1
} до тех пор, пока (конец_потока != 1)
если (использован_естественный_режим ==1) {
размещение записи_естественного_режима()
}
если (использован_графический_режим ==1) {
размещение записи_графического_режима()
}
если (использован_режим_пропуска ==1) {
размещение записи_режима_пропуска()
}
}
Таблица 3
сканирование_битов_блока() {
если (использован_естественный_режим) {
dc_данные_dct 1
ac_данные_dct 1
} иначе {
dc_данные_dct=0
ac_данные_dct=0
}
если (dc_данные_dct==1) {
арифмкод 1
} иначе {
арифмкод=0
}
если (использован_графический_режим) {
графические_данные 1
} иначе {
графические_данные=0
}
данные_каждого_блока 1
если (порядок_блоков_для_каждого_сканирования_битов==1) {
порядок_пространственного_сканирования 1
порядок_сканирования_для_сжатия 1
порядок_сканирования()
}
если (арифмкод==1) {
число байтов_арифмкода 9
для (i=0; i<числа байтов_арифмкода; i++) {
буфер_арифмкода[i] 8
}
}
для (i=0; i<числа блоков; i++) {
если (режим_блока[сканирование_блока[i]]==0) {/*DCT блок*/
если (((dc_данные_dct==1) &&
(блок_завершен_dct_dc[сканирование_блока[i]]==0)) | |
((ac_данные_dct==1) &&
(блок_завершен_dct_ac[сканирование_блока[i]]==0))) {
если (данные_каждого_блока==0) {
данные_этого_блока 1
} иначе {
данные_этого_блока=1
}
если (данные_этого_блока==1) {
если ((dc_данные_dct==1) &&
(блок_завершен_dct_dc[сканирование_блока[i]]==0)) {
сканирование_dc_данных_dct() x
}
если ((ac_данные_dct==1) &&
(блок_завершен_dct_ac[сканирование_блока[i]]==0)) {
сканирование_ac_данных_dct() x
}
}
}
}
если (режим_блока[сканирование_блока[i]]==1) { /* графический блок */
если ((графические_данные==1) &&
(блок_завершен_графич[сканирование_блока[i]]==0)) {
если (данные_каждого_блока==0) {
данные_этого_блока 1
} иначе {
данные_этого_блока=1
}
если (данные_этого_блока==1) {
сканирование_графических_данных() x
}
}
}
}
}

Таблица 2 определяет синтаксис на уровне фрагментов. Таблица упоминает, среди прочего, присутствие в битовом потоке массива режимы_блоков(), описанного выше в связи с этапом 13 на Фиг. 1. Многократные сканирования, описанные выше, в связи с этапом 14 на Фиг. 1, обозначаются как сканирование_битов_блока().

Таблица 3 более детально определяет синтаксис сканирования_битов_блока(). Флаги dc_данные_dct, ac_данные_dct, и графические_данные в этой таблице соответствуют флагам, описанным ранее, в связи с этапом 14 на Фиг. 1. Текущие данные изображения в таблице обозначаются как сканирование_dc_данных_dct(),сканирование_ac_данных_dct() и сканирование_графических_данных().

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

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

- Подпрограмма порядок_сканирования() в Таблице 2 определяет порядок, в котором сканируются блоки фрагмента, посредством присвоения к пространственному порядковому индексу i некоторого порядкового индекса сканирования сканирование_блока[i]. Это позволяет кодеру в первую очередь сканировать блоки в центре изображения.

- Флаг порядок_блоков_для_каждого_сканирования_битов (Таблица 2) обозначает, является ли порядок блоков при сканировании одним и тем же для всех сканирований.

- Флаг данные_каждого_блока (Таблица 3) обозначает, содержит ли соответствующее сканирование данные для каждого блока.

- Флаг арифмкод в Таблице 3 указывает, для каждого сканирования, используется ли более эффективное арифметическое кодирование для того, чтобы сжимать битовую плоскость AC коэффициентов.

На Фиг. 5 показывается блок-схема развлекательной системы, содержащей устройство кодера и устройство декодера, в соответствии с изобретением. Развлекательная система содержит проигрыватель 52 дисков Blu-ray и плоский ТВ монитор 54. Проигрыватель 52 проигрывает диск 51 Blu-ray и отправляет к монитору HD сигнал с помощью беспроводного HD канала 53. Проигрыватель 52 содержит модуль 521 воспроизведения, видеокодер 522, и блок 523 беспроводной передачи. Монитор содержит блок 541 беспроводного приема, видеодекодер 542, и дисплей 543. Видеокодер 522 кодирует каждое видеоизображение в масштабируемый битовый поток в соответствии со способом кодирования, описанным выше в настоящем документе со ссылкой на Фиг. 1. Видеодекодер 542 декодирует принимаемый битовый поток в соответствии со способом декодирования, описанным выше в настоящем документе со ссылкой на Фиг. 4.

Суммируя сказанное, представляется гибкий и эффективный формат битового потока для многорежимного масштабируемого кодека для изображений/видео. Термин «масштабируемый» означает то, что битовый поток содержит последовательно все более тонкие усовершенствования качества, и что битовый поток может быть усечен. Видеоизображения разделяются на фрагменты, и каждый фрагмент разделяется на блоки 8x8 пикселей. Для каждого из блоков выбирается оптимальный способ кодирования. В зависимости от того, обнаружилось ли, что блок содержит либо контент с естественными изображениями, либо контент с синтетическими изображениями, применяется кодирование с преобразованием (DCT) или графическое кодирование. Поскольку различные режимы кодирования обладают различными свойствами по отношению к качеству отображения, формат битового потока должен создавать возможность для кодера очень гибко выбирать, какие биты отправлять в первую очередь.

Формат битового потока, в соответствии с изобретением, состоит из множества сканирований (31-34) через кодируемые данные последовательности индивидуальных блоков, например, фрагмента. При каждом сканировании кодер принимает решение, будет ли он вкладывать данные для естественных блоков (BS1, BS2), для синтетических блоков (BS0, BS3), или как одно, так и другое. Для блоков с DCT кодер может дополнительно делать выбор между битами (22) DC коэффициентов и битами (23) AC коэффициентов. Например, кодер может сделать выбор в первую очередь отправить несколько сканирований DC битов DCT, затем отправить несколько сканирований графических битов, и затем отправить некоторые AC биты DCT. Решения, которые принимает кодер, сигнализируются в декодер в виде флагов, которые предшествуют каждой части блока (например, закодированной битовой плоскости) и/или множеству блоков (например, фрагменту).

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

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

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

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

4. Способ по п. 2, в котором каждый блочный битовый поток дополнительно содержит указатель, применяется ли арифметическое кодирование к упомянутым DC и АС коэффициентам.

5. Способ по п. 1, в котором один из упомянутого множества различных режимов кодирования представляет собой режим графического кодирования.

6. Способ по п. 1, в котором один из упомянутого множества различных режимов кодирования представляет собой режим пропуска, при котором блок изображения представлен посредством указателя, что он является идентичным предыдущему блоку изображения.

7. Способ по п. 1, в котором битовый поток содержит порядок сканируемых блоков изображения.

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

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

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



 

Похожие патенты:

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности преобразования за счет выборочного выполнения преобразования.

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

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

Изобретение относится к технологиям кодирования/декодирования видеоданных. Техническим результатом является сокращение полосы частот обращения к памяти во время кодирования изображений за счет ограничения размера блока.

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

Изобретение относится к вычислительной технике. Технический результат заключается в улучшении характеристик предсказания.

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

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

Изобретение относится к кодированию с предсказанием с использованием компенсации движения. Техническим результатом является более точное предсказание на основе эффективной интерполяции изображений.

Изобретение относится к области кодирования и декодирования движущегося изображения. Технический результат - повышение эффективности кодирования. Способ декодирования движущегося изображения в соответствии с настоящим изобретением включает в себя: выполнение внутреннего предсказания над целевым блоком, чтобы вычислить значения предсказанных выборок целевого блока (S403); и вычисление восстановленных выборок целевого блока путем суммирования разностных данных и значений предсказанных выборок целевого блока (S404), где при выполнении внутреннего предсказания определяется допустимость каждой из эталонных выборок, которые располагаются либо непосредственно выше, либо непосредственно слева от целевого блока, и когда эталонные выборки включают в себя допустимую эталонную выборку и недопустимую эталонную выборку, внутреннее предсказание выполняется с использованием допустимой эталонной выборки, и эталонная выборка с внутренним предсказанием определяется в качестве допустимой эталонной выборки, а эталонная выборка с внешним предсказанием определяется в качестве недопустимой эталонной выборки. 5 н. и 11 з.п. ф-лы, 49 ил.

Изобретение относится к кодированию и декодированию видео. Техническим результатом является обеспечение возможности настройки блока кодирования с учетом размера изображения при увеличении максимального размера блока кодирования. Способ для декодирования видео включает в себя: прием и синтаксический анализ битового потока кодированного видео; и декодирование кодированных данных изображения для максимального блока кодирования на основании информации о глубине кодирования и режиме кодирования для максимального блока кодирования с учетом растрового порядка сканирования для максимального блока кодирования и зигзагообразного порядка сканирования для блоков кодирования максимального блока кодирования по глубинам. 2 з.п. ф-лы, 29 ил., 1 табл.

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности декодирования. Способ декодирования изображения, в котором извлекают из битового потока информацию, которая показывает режим внутрикадрового предсказания, примененный к текущему блоку, который должен быть декодирован; определяют одни из соседних пикселей, смежных с текущим блоком, и отфильтрованных соседних пикселей, отфильтрованных из упомянутых соседних пикселей, в качестве опорных пикселей на основе по меньшей мере одного из размера текущего блока и режима внутрикадрового предсказания текущего блока; выполняют внутрикадровое предсказание в отношении текущего блока, используя упомянутую извлеченную информацию и упомянутые определенные опорные пиксели, при этом когда размер текущего блока составляет N × N, где N - целое число, упомянутые соседние пиксели включают в себя 2N соседних пикселей, смежных с верхней стороной и верхней правой стороной текущего блока, и 2N соседних пикселей, смежных с левой стороной и нижней левой стороной текущего блока, изображение разбито на множество максимальных единиц кодирования согласно информации о максимальном размере единицы кодирования. 26 ил., 3 табл.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности декодирования видеоконтента высокого разрешения или высокого качества. Способ декодирования видео, в котором принимают битовый поток кодированного видео; получают из битового потока информацию об иерархической структуре блоков кодирования в максимальном блоке кодирования; определяют множество максимальных блоков кодирования, на которые разбито изображение, в соответствии с размером максимального блока кодирования и декодируют множество максимальных блоков кодирования согласно растровому порядку сканирования; определяют один или более блоков кодирования, на которые иерархически разбит максимальный блок кодирования, согласно информации об иерархической структуре блоков кодирования; декодируют один или более блоков кодирования в максимальном блоке кодирования согласно зигзагообразному порядку сканирования; и декодируют четыре квадратных блока, на которые разбит один блок кодирования, из одного или более блоков кодирования, согласно зигзагообразному порядку сканирования. 3 з.п. ф-лы, 29 ил., 1 табл.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности декодирования видеоконтента высокого разрешения или высокого качества. Устройство для декодирования видео содержит приемник, который принимает битовый поток кодированного видео и получает из битового потока информацию о размере максимального блока кодирования в изображении и информацию об иерархической структуре блоков кодирования в максимальном блоке кодирования; и декодер, который определяет множество максимальных блоков кодирования, на которые разбито изображение, согласно информации о размере максимального блока кодирования и декодирует множество максимальных блоков кодирования согласно растровому порядку сканирования, определяет один или более блоков кодирования, на которые иерархически разбит максимальный блок кодирования, согласно информации об иерархической структуре блоков кодирования, декодирует один или более блоков кодирования в максимальном блоке кодирования согласно зигзагообразному порядку сканирования и декодирует четыре квадратных блока из блока кодирования, из одного или более блоков кодирования, согласно зигзагообразному порядку сканирования. 3 з.п. ф-лы, 29 ил., 1 табл.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности декодирования информации путем использования индекса преобразования. Способ декодирования кодированного видео, в котором принимают битовый поток кодированного видео; определяют по меньшей мере одну из единиц кодирования посредством использования информации разделения, извлеченной из битового потока; извлекают из битового потока информацию об индексе преобразования, указывающую, разделена ли единица преобразования текущего уровня, включенная в единицу кодирования среди по меньшей мере одной из единиц кодирования; когда информация об индексе преобразования указывает разделение единицы преобразования текущего уровня, разделяют единицу преобразования текущего уровня на единицы преобразования более низкого уровня; и когда информация об индексе преобразования указывает отсутствие разделения единицы преобразования текущего уровня, выполняют обратное преобразование над единицей преобразования текущего уровня для формирования остаточных данных, соответствующих единице преобразования текущего уровня. 3 з.п. ф-лы, 23 ил., 1 табл.

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

Изобретение относится к обработке изображений. Техническим результатом является повышение эффективности кодирования изображений за счет уменьшения количества кодов параметров матрицы квантования. Устройство обработки изображения содержит блок установки, блок квантования и блок кодирования. Блок установки выполнен с возможностью установки первой матрицы квантования и второй матрицы квантования в качестве матриц квантования, используемых в случае квантования. Блок квантования выполнен с возможностью квантования данных изображения с использованием матриц квантования, установленных блоком установки, для генерирования квантованных данных. Блок кодирования выполнен с возможностью кодирования квантованных данных для генерирования кодированного потока, включающего в себя параметр, указывающий, следует ли использовать в качестве второй матрицы квантования, соответствующей второму идентификатору, ту же матрицу квантования, что и первая матрица квантования, соответствующая первому идентификатору. 2 н. и 12 з.п. ф-лы, 38 ил.

Изобретение относится к области кодирования и декодирования изображений. Технический результат - обеспечение одновременного повышения качества изображения и эффективности кодирования. Способ декодирования изображений для декодирования кодированного потока, сгенерированного посредством кодирования, включающего в себя ортогональное преобразование и квантование, который включает в себя множество блоков обработки и заголовок для этих блоков обработки, причем кодированный поток формируется путем кодирования движущегося изображения, по меньшей мере один из упомянутых блоков обработки является разбитым на один или более иерархических уровней, каждый из которых включает в себя один или более субблоков, размеры которых меньше размера упомянутого блока обработки, при этом способ содержит этапы, на которых: запрашивают внешнюю систему послать упомянутый кодированный поток; принимают запрошенный кодированный поток от внешней системы; разбирают информацию о глубине, сохраненную в заголовке; декодируют блок обработки посредством выполнения обратного квантования. 8 н. и 4 з.п. ф-лы, 54 ил.
Наверх