Группирование элементов синтаксиса с кодированием в режиме обхода в кодировании видео

Иллюстрации

Показать все

Изобретение относится к технологиям кодирования/декодирования видео. Техническим результатом является повышение эффективности кодирования/декодирования видеоданных за счет оптимизации очередности, в которой обрабатываются элементы синтаксиса. Предложен способ декодирования видеоданных. Способ содержит этап, на котором принимают энтропийно закодированный битовый поток, который включает в себя первую группу элементов синтаксиса, содержащих множество флагов, и вторую группу элементов синтаксиса для единиц предсказания (PU) единицы кодирования (CU). Элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса, и при этом флаг из множества флагов первой группы элементов синтаксиса указывает, является ли режим внутреннего предсказания отсчетов яркости соответствующей PU в CU основанным на индексе в список наиболее вероятных режимов. В режиме внутреннего предсказания, внутреннее предсказание отсчетов яркости осуществляют с помощью отсчетов яркости в том же самом изображении. 6 н. и 12 з.п. ф-лы, 8 ил., 18 табл.

Реферат

СВЯЗАННЫЕ ЗАЯВКИ

[0001] По данной заявке испрашивается приоритет:

Предварительной Заявки США № 61/623,004, поданной 11 апреля 2012 г.; и

Предварительной Заявки США № 61/639,836, поданной 27 апреля 2012 г., каждая из которых во всей своей полноте включена в настоящее описание посредством ссылки.

ОБЛАСТЬ ТЕХНИКИ

[0002] Данное изобретение относится к кодированию видео и в частности к методикам кодирования элементов синтаксиса в кодировании видео.

УРОВЕНЬ ТЕХНИКИ

[0003] Возможности цифрового видео могут быть включены в широкий диапазон устройств, включая цифровые телевизоры, системы цифрового непосредственного вещания, системы беспроводного вещания, цифровые персональные помощники (PDA), настольные компьютеры или компьютеры класса лэптоп, цифровые камеры, цифровые записывающие устройства, цифровые мультимедийные проигрыватели, видеоигровые устройства, видеоигровые консоли, сотовые или спутниковые радиотелефоны, так называемые «интеллектуальные» телефоны, планшетные компьютеры, устройства для видеоконференции, и подобное. Стандарты кодирования видео включают в себя ITU-T H.261, ISO/IEC MPEG-1 Визуальный, ITU-T H.262 или ISO/IEC MPEG-2 Визуальный, ITU-T H.263, ISO/IEC MPEG-4 Визуальный и ITU-T H.264 (также известный как ISO/IEC MPEG-4 AVC), включая его расширения: Масштабируемое Кодирование Видео (SVC) и Многопроекционное Кодирование Видео (MVC). В дополнение, стандарт Высокоэффективного Кодирования Видео (HEVC) является стандартом кодирования видео, который разрабатывается Объединенной Группой по Совместной деятельности в области Кодирования Видео (JCT-VC) Экспертной Группы по Кодированию Видео ITU-T (VCEG) и Экспертной Группой по Кинематографии ISO/IEC (MPEG).

[0004] Методики сжатия видео выполняют пространственное предсказание и/или временное предсказания для сокращения или удаления избыточности присущей видеопоследовательностям. Применительно к основанному на блоке предсказывающему кодированию видео, видео кадр или слайс (slice, вырезка) видео кадра может быть разбита на видео блоки, которые могут именоваться макроблоками или единицами кодирования. Каждый видео блок может быть дополнительно разбит. Видео блоки во внутренне кодированном (intra-coded) (I) кадре или слайсе кодируются при помощи пространственного предсказания по отношению к соседним видео блокам. Видео блоки во внешне кодированном (inter-coded) (P или B) кадре или слайсе могут использовать пространственное предсказание по отношению к соседним видео блокам в том же самом кадре или слайсе или временное предсказание по отношению к другим опорным кадрам.

[0005] Внешне кодированный блок может быть кодирован при помощи вектора движения, который указывает группу опорных отсчетов, использованных для формирования предсказывающего блока. Внутренне кодированный блок может быть кодирован при помощи внутреннего (intra) режима, который указывает на блок опорных отсчетов, использованных для формирования предсказывающего блока. Разность между видео блоком и предсказывающим блоком может именоваться остаточными данными. Для дальнейшего сжатия, остаточные данные могут быть преобразованы из пиксельной области в область преобразования, что приводит к остаточным коэффициентам преобразования, которые затем могут быть квантованы. Кроме того, квантованные коэффициенты преобразования и предсказывающая информация могут быть энтропийно кодированы для дальнейшего сжатия.

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

[0006] В целом, данное изобретение описывает различные методики для компоновки элементов для видео кодирования с предсказанием. Эти методики могут сократить потери конвейерной обработки, которые могут оказывать влияние на пропускную способность энтропийного кодирования. В одном примере, очередность, в которой элементы синтаксиса кодируются либо в режиме CABAC (Контекстно-Адаптивное Двоичное Арифметическое Кодирование), либо в режиме обхода, может быть оптимизирована. Кодирование в режиме обхода может относиться к арифметическому кодированию бинов (bin), без использования адаптивного контекста. В одном примере, элементы синтаксиса, которые указывают режимы внутреннего предсказания предсказывающих единиц (PU) в пределах единицы кодирования (CU) могут быть сгруппированы вместе на основании того, должны ли они кодироваться в режиме обхода или в режиме CABAC. Данное группирование может сократить общее количество циклов, требуемых для энтропийного кодирования элементов синтаксиса.

[0007] В одном примере, изобретение описывает способ декодирования видеоданных, при этом способ содержит этапы, на которых: принимают энтропийно закодированный битовый поток, который включает в себя первую группу элементов синтаксиса и вторую группу элементов синтаксиса для единиц предсказания (PU) единицы кодирования (CU), при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса, и при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей PU в CU на индексе в список наиболее вероятных режимов; декодируют в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первую группу элементов синтаксиса; вслед за этапом, на котором декодируют в режиме CABAC первую группу элементов синтаксиса, декодируют в режиме обхода вторую группу элементов синтаксиса; и восстанавливают видеоданные на основании декодированной первой группы элементов синтаксиса и декодированной второй группы элементов синтаксиса.

[0008] В другом примере, изобретение описывает аппарат для декодирования видеоданных, причем аппарат содержит декодер видео, выполненный с возможностью: приема энтропийно закодированного битового потока, который включает в себя первую группу элементов синтаксиса и вторую группу элементов синтаксиса для единиц предсказания (PU) единицы кодирования (CU), при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса, и при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей PU в CU на индексе в список наиболее вероятных режимов; декодирования в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первой группы элементов синтаксиса; вслед за декодированием в режиме CABAC первой группы элементов синтаксиса, декодирования в режиме обхода второй группы элементов синтаксиса; и восстановления видеоданных на основании декодированной первой группы элементов синтаксиса и декодированной второй группы элементов синтаксиса.

[0009] В другом примере, изобретение описывает считываемый компьютером носитель данных с хранящимися на нем инструкциями, которые при исполнении, предписывают одному или более процессорам устройства для декодирования видеоданных: принять энтропийно закодированный битовый поток, который включает в себя первую группу элементов синтаксиса и вторую группу элементов синтаксиса для единиц предсказания (PU) единицы кодирования (CU), при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса, и при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей PU в CU на индексе в список наиболее вероятных режимов; декодировать в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первую группу элементов синтаксиса; вслед за декодированием в режиме CABAC первой группы элементов синтаксиса, декодировать в режиме обхода вторую группу элементов синтаксиса; и восстановить видеоданные на основании декодированной первой группы элементов синтаксиса и декодированной второй группы элементов синтаксиса.

[0010] В другом примере, изобретение описывает аппарат для декодирования видеоданных, причем аппарат содержит: средство для приема энтропийно закодированного битового потока, который включает в себя первую группу элементов синтаксиса и вторую группу элементов синтаксиса для единиц предсказания (PU) единицы кодирования (CU), при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса, и при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей PU в CU на индексе в список наиболее вероятных режимов; средство для декодирования в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первой группы элементов синтаксиса; средство для декодирования в режиме обхода второй группы элементов синтаксиса, вслед за декодированием в режиме CABAC первой группы элементов синтаксиса; и средство для восстановления видеоданных на основании декодированной первой группы элементов синтаксиса и декодированной второй группы элементов синтаксиса.

[0011] В другом примере, изобретение описывает способ кодирования видеоданных, причем способ содержит этапы, на которых: генерируют первую группу элементов синтаксиса, при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей единицы предсказания (PU) в единице кодирования (CU) на индексе в список наиболее вероятных режимов; генерируют вторую группу элементов синтаксиса, при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса; кодируют в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первую группу элементов синтаксиса; вслед за этапом, на котором кодируют в режиме CABAC первую группу элементов синтаксиса, кодируют в режиме обхода вторую группу элементов синтаксиса; и выводят видеоданные, которые включают в себя закодированную первую группу элементов синтаксиса и закодированную вторую группу элементов синтаксиса.

[0012] В другом примере, изобретение описывает аппарат для кодирования видеоданных, причем аппарат содержит кодер видео, выполненный с возможностью: генерирования первой группы элементов синтаксиса, при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей единицы предсказания (PU) в единице кодирования (CU) на индексе в список наиболее вероятных режимов; генерирования второй группы элементов синтаксиса, при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса; кодирования в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первой группы элементов синтаксиса; вслед за кодированием в режиме CABAC первой группы элементов синтаксиса, кодирования в режиме обхода второй группы элементов синтаксиса; и вывода видеоданных, которые включают в себя закодированную первую группу элементов синтаксиса и закодированную вторую группу элементов синтаксиса.

[0013] В другом примере, изобретение описывает считываемый компьютером носитель данных с хранящимися на нем инструкциями, которые при исполнении, предписывают одному или более процессорам устройства для кодирования видеоданных: сгенерировать первую группу элементов синтаксиса, при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей единицы предсказания (PU) в единице кодирования (CU) на индексе в список наиболее вероятных режимов; сгенерировать вторую группу элементов синтаксиса, при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса; закодировать в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первую группу элементов синтаксиса; вслед за кодированием в режиме CABAC первой группы элементов синтаксиса, закодировать в режиме обхода вторую группу элементов синтаксиса; и вывести видеоданные, которые включают в себя закодированную первую группу элементов синтаксиса и закодированную вторую группу элементов синтаксиса.

[0014] В другом примере, изобретение описывает устройство для кодирования видеоданных, причем устройство содержит: средство для генерирования первой группы элементов синтаксиса, при этом элемент синтаксиса из первой группы элементов синтаксиса указывает, основан ли режим внутреннего предсказания соответствующей единицы предсказания (PU) в единице кодирования (CU) на индексе в список наиболее вероятных режимов; средство для генерирования второй группы элементов синтаксиса, при этом элементы синтаксиса из второй группы элементов синтаксиса соответствуют соответствующим элементам синтаксиса из первой группы элементов синтаксиса; средство для кодирования в режиме контекстно-адаптивного двоичного арифметического кодирования (CABAC) первой группы элементов синтаксиса; средство для кодирования в режиме обхода второй группы элементов синтаксиса, вслед за кодированием в режиме CABAC первой группы элементов синтаксиса; и средство для вывода видеоданных, которые включают в себя закодированную первую группу элементов синтаксиса и закодированную вторую группу элементов синтаксиса.

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0016] Фиг. 1 является концептуальной схемой, иллюстрирующей примеры структур единицы предсказания и связанных режимов кодирования с внутренним предсказанием.

[0017] Фиг. 2 является структурной схемой, иллюстрирующей примерную систему кодирования и декодирования видео, которая может быть выполнена с возможностью использования методик в соответствии с данным изобретением.

[0018] Фиг. 3 является структурной схемой, иллюстрирующей пример кодера видео, который может реализовывать методики для кодирования предсказывающих элементов синтаксиса, в соответствии с данным изобретением.

[0019] Фиг. 4 является структурной схемой, иллюстрирующей пример энтропийного кодера, который может реализовывать методики для энтропийного кодирования предсказывающих элементов синтаксиса в соответствии с данным изобретением.

[0020] Фиг. 5 является блок-схемой, иллюстрирующей кодирование предсказывающих элементов синтаксиса в соответствии с методиками данного изобретения.

[0021] Фиг. 6 является структурной схемой, иллюстрирующей пример декодера видео, который может реализовывать методики для декодирования закодированной видеопоследовательности, включающей в себя предсказывающие элементы синтаксиса, в соответствии с данным изобретением.

[0022] Фиг. 7 является структурной схемой, иллюстрирующей пример энтропийного декодера, который может реализовывать методики для энтропийного декодирования предсказывающих элементов синтаксиса, в соответствии с данным изобретением.

[0023] Фиг. 8 является блок-схемой, иллюстрирующей декодирование предсказывающих элементов синтаксиса в соответствии с методиками данного изобретения.

ПОДРОБНОЕ ОПИСАНИЕ

[0024] Предсказывающие элементы синтаксиса в группе элементов синтаксиса, такие как элементы синтаксиса, которые могут указывать режим внутреннего предсказания для одной или более единиц предсказания, могут быть либо с кодированием в режиме нормального контекстно-адаптивного двоичного арифметического кодирования (CABAC), либо с кодированием в режиме обхода. Очередность, в которой эти предсказывающие элементы синтаксиса принимаются кодером CABAC, может оказывать влияние на общее количество циклов обработки, требуемое для энтропийного кодирования группы элементов синтаксиса. Это может происходить из-за потерь на настройку, которая требуется для перезапуска механизма кодирования в режиме CABAC по мере того как кодирование переходит между кодированием в режиме обхода и кодированием в режиме CABAC. В методиках, описываемых в данном изобретении, эти элементы синтаксиса могут быть скомпонованы таким образом, что общее количество циклов обработки, требуемое для энтропийного кодирования группы элементов синтаксиса, сокращается.

[0025] Например, в некоторых других методиках, применительно к внутреннему предсказанию, кодер видео сигнализирует элементы синтаксиса, которые указывают режим внутреннего предсказания отсчетов яркости и сигнализирует элементы синтаксиса для отсчетов цветности. Некоторые из элементов синтаксиса для отсчетов яркости и некоторые из элементов синтаксиса для отсчетов цветности являются с кодированием в режиме CABAC, а другие элементы синтаксиса для отсчетов яркости и отсчетов цветности являются с кодированием в режиме обхода. В некоторых случаях, элементы синтаксиса с кодированием в режиме CABAC и с кодированием в режиме обхода чередуются, что приводит к неоптимальной пропускной способности энтропийного кодирования из-за потерь конвейерной обработки.

[0026] Например, режим обхода, как правило, обладает много более высокой пропускной способностью, чем режим CABAC. В качестве одного примера, режим обхода может обрабатывать 6 бинов в одном цикле, не внося значительного усложнения в сравнении с режимом обхода, который обрабатывает 1 бин за цикл, тогда как режим CABAC может обрабатывать только 2 бина за цикл при много более сложном исполнении, чем режим CABAC, который обрабатывает 1 бин за цикл. Это происходит из-за природы переключения контекста в режиме CABAC.

[0027] Для увеличения пропускной способности энтропийного кодирования, может быть полезным группировать вместе элементы синтаксиса с кодированием в режиме CABAC и группировать вместе элементы синтаксиса с кодированием в режиме обхода. В качестве одного примера, элементы синтаксиса с кодированием в режиме CABAC и элементы синтаксиса с кодированием в режиме обхода не чередуются друг с другом. Как описывается более подробно, методики, описываемые в данном изобретении, предоставляют различные примерные методики группирования вместе элементов синтаксиса с кодированием в режиме CABAC и вместе элементов синтаксиса с кодированием в режиме обхода, что дает возможность увеличения пропускной способности энтропийного кодирования.

[0028] В качестве одного примера, кодер видео кодирует и сигнализирует в кодированном битовом потоке, а декодер видео принимает и декодирует из кодированного битового потока все бины с кодированием в режиме CABAC внутреннего (интра-) режима яркости и внутреннего режима цветности вместе и все бины с кодированием в режиме обхода внутреннего режима яркости и внутреннего режима цветности вместе. В качестве другого примера, кодер видео кодирует и сигнализирует в кодированном битовом потоке, а декодер видео принимает и декодирует из кодированного битового потока все бины с кодированием в режиме CABAC внутреннего режима для всех блоков в единице кодирования, и все бины с кодированием в режиме обхода внутреннего режима вместе. В качестве другого примера, кодер видео кодирует и сигнализирует в кодированном битовом потоке, а декодер видео принимает и декодирует из кодированного битового потока все бины с кодированием в режиме CABAC внутреннего режима как яркости, так и цветности для всех блоков в единице кодирования, и все бины с кодированием в режиме обхода внутреннего режима яркости и цветности вместе. В некоторых случаях, некоторое количество дополнительной памяти потребуется для хранения частично декодированного синтаксиса для декодера видео.

[0029] Цифровые видео устройства реализуют методики сжатия видео для более эффективного кодирования и декодирования информации цифрового видео. Методики сжатия видео могут быть определены в соответствии со стандартом кодирования видео. Усилия в области стандартизации HEVC основаны на модели устройства кодирования видео, именуемой Тестовая Модель HEVC (HM). HM предполагает улучшения возможностей современных устройств кодирования видео по отношению к устройствам кодирования видео, которые были доступны во время разработки прочих предыдущих стандартов кодирования видео, например, ITU-T H.264/AVC. Например, тогда как стандарт H.264 предоставляет девять режимов кодирования с внутренним предсказанием, HEVC предоставляет целых тридцать пять режимов кодирования с внутренним предсказанием. Последний рабочий Проект (WD) стандарта HEVC, именуемый «HEVC Working Draft 6» или «WD6», описывается в документе JCTVC-H1003, за авторством Бросса и др., «WD6: Working Draft 6 of High-Efficiency Video Coding (HEVC)», Объединенная Группа по Совместной деятельности в области Кодирования Видео (JCT-VC) от ITU-T SG16 WP3 и ISO/IEC JTC1/SC29/WG11, 8-е Заседание: Сан-Хосе, Калифорния, США, Февраль, 2011.

[0030] Кроме того, другой последний рабочий проект стандарта HEVC, Working Draft 8, описывается в документе HCTVC-J1003_d7, за авторством Бросса и др., «High Efficiency Video Coding (HEVC)

Text Specification Draft 8», Объединенная Группа по Совместной деятельности в области Кодирования Видео (JCT-VC) от ITU-T SG16 WP3 и ISO/IEC JTC1/SC29/WG11, 10-е Заседание: Стокгольм, Швеция, Июль, 2012. Самый последний рабочий проект стандарта HEVC, Working Draft 9, доступен, по состоянию на 06 марта 2013 г., по ссылке http://phenix.int-evry.fr/jct/doc_end_user/documents/11_Shanghai/wg11/JCTVC-K1003-v10.zip. Стандарт HEVC также может именоваться ISO/IEC 23008-HEVC, который предназначен в качестве номера стандарта для доставляемой версии HEVC. Несмотря на то, что методики данного изобретения описываются в отношении стандарта ITU-T H.264 и стандарта HEVC, методики данного изобретения в целом применимы к любому стандарту кодирования видео.

[0031] Видеопоследовательность, как правило, включает в себя ряд видео кадров, также именуемых картинками. Группа картинок (GOP), в целом, содержит ряд из одного или более видео кадров. GOP может включать в себя данные синтаксиса в заголовке GOP, заголовке одного или более кадров GOP, или где-то в другом месте, которые описывают количество кадров, включенных в GOP. Каждый кадр может включать в себя данные синтаксиса кадра, которые описывают режим кодирования для соответствующего кадра. Каждый видео кадр может включать в себя множество слайсов. Каждый слайс может включать в себя множество видео блоков. Кодер видео, как правило, оперирует над видео блоками в отдельных видео кадрах для того, чтобы закодировать видеоданные. Видео блоки могут иметь фиксированные или варьирующиеся размеры, и могут отличаться по размеру в соответствии с указанным стандартом кодирования.

[0032] В качестве примера, стандарт 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 для составляющих яркости и соответствующим образом отмасштабированные размеры для составляющих цветности. В данном изобретении, обозначения «N×N» и «N на N» могут быть использованы взаимозаменяемо для обозначения размеров в пикселях блока в плане вертикального и горизонтального размеров, например, 16×16 пикселей или 16 на 16 пикселей. В целом, 16×16 блок будет иметь 16 пикселей в вертикальном направлении (y=16) и 16 пикселей в горизонтальном направлении (x=16). Пиксели также могут именоваться отсчетами. Подобно, N×N блок в целом имеет N пикселей в вертикальном направлении и N пикселей в горизонтальном направлении, где N представляет собой не отрицательное целое значение. Пиксели в блоке могут быть скомпонованы в строках и столбцах. Более того, не требуется, чтобы блок обязательно имел такое же количество пикселей в горизонтальном направлении, что и в вертикальном направлении. Например, блок может содержать N×M пикселей, где M не обязательно равно N.

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

[0034] Более мелкие видео блоки могут обеспечивать более хорошее разрешение, и могут быть использованы для местоположений видео кадра, которые включают в себя высокие уровни детализации. В целом, блоки и различные элементы разбиения, иногда именуемые суб-блоками, могут рассматриваться в качестве видео блоков. В дополнение, слайс может рассматриваться как множество видео блоков, таких как блоки и/или суб-блоки. Каждый слайс может быть независимо декодируемой единицей видео кадра. В качестве альтернативы, сами кадры могут быть декодируемыми единицами, или иные элементы разбиения кадра могут быть определены в качестве декодируемых единиц. Понятие «кодированная единица» может относиться к любой независимо декодируемой единице видео кадра, такой как весь кадр или слайс кадра, группа картинок (GOP) также именуемая последовательностью, или другая независимо декодируемая единица, которая определена в соответствии с применяемыми методиками кодирования.

[0035] Вслед за кодированием с внутренним предсказанием или внешним предсказанием для создания предсказывающих данных и остаточных данных, и вслед за любыми преобразованиями (такими как 4×4 или 8×8 целочисленное преобразование, используемое в H.264/AVC, или дискретное косинусное преобразование DCT) для создания коэффициентов преобразования, может быть выполнено квантование коэффициентов преобразования. Квантование, в целом, относится к процессу, при котором коэффициенты преобразования квантуются с тем, чтобы возможно сократить объем данных, используемых для представления коэффициентов. Процесс квантования может уменьшать битовую глубину, связанную с некоторыми или всеми из коэффициентов. Например, n-битное значение, может быть округлено в меньшую сторону до m-битного значения во время квантования, где n больше m.

[0036] Вслед за квантованием, может быть выполнено энтропийное кодирование квантованных данных, например, в соответствии с контекстно-адаптивным кодированием с переменной длиной кодового слова (CAVLC), контекстно-адаптивным двоичным арифметическим кодированием (CABAC), энтропийным кодированием с разбиением интервала вероятности (PIPE), или другой методологией энтропийного кодирования. Также может быть выполнено энтропийное кодирование элементов синтаксиса, такого как элемент синтаксиса, определяющий режим предсказания. Модуль обработки, выполненный с возможностью энтропийного кодирования, или другой модуль обработки, может выполнять другие функции обработки, такие как кодирование длины серий нулей квантованных коэффициентов и/или генерирование информации синтаксиса, такой как значения структуры кодированного блока (CBP), тип макроблока, режим кодирования, максимальный размер макроблока для кодированной единицы (такой как кадр, слайс, макроблок, или последовательность), или подобное.

[0037] HEVC относится к блоку видеоданных как к единице кодирования (CU). В целом, методики данного изобретения относятся к преобразованию, квантованию, сканированию, и энтропийному кодированию данных CU. CU может включать в себя одну или более единицы предсказания (PU) и/или одну или более единицы преобразования (TU). PU также могут именоваться «элементами разбиения предсказания». Данные синтаксиса в битовом потоке могут определять наибольшую единицу кодирования (LCU), которая является наибольшей единицей кодирования в плане количества пикселей. В целом, LCU имеет аналогичное назначение, что макроблок в H.264. Тем не менее, LCU не обязательно ограничивается конкретным размером и может включать в себя одну или более CU. LCU, как правило, включает в себя 64×64 пикселей. CU в LCU, как правило, включают в себя 32×32, 16×16, или 8×8 пикселей. Таким образом, LCU может быть расщеплена на суб-CU и каждая суб-CU может быть дополнительно расщеплена на суб-CU. Каждый пиксель в CU может включать в себя составляющую яркости (Y), составляющую цветности U (U), и составляющую цветности V (V). В некоторых примерах, составляющие цветности могут именоваться составляющими Cr и Cb. В целом, ссылки в данном изобретении на CU могут относиться к наибольшей единице кодирования (LCU) картинки или суб-CU LCU. Данные синтаксиса для битового потока могут определять максимальное количество раз, которое может быть расщеплена LCU, именуемое глубиной CU. Соответственно, данные синтаксиса также могут определять наименьшую единицу кодирования (SCU). Данное изобретение также использует понятие «блок» для обозначения любой из CU, PU, или TU.

[0038] LCU может быть связана со структурой данных квадродерева. В целом, структура данных квадродерева включает в себя один узел из расчета на CU, где корневой узел соответствует LCU. Если CU расщеплена на четыре суб-CU, то узел, соответствующий CU, включает в себя четыре листовых узла, каждый из которых соответствует одной суб-CU. Каждый узел структуры данных квадродерева может предоставлять данные синтаксиса для соответствующей CU. Например, узел в квадродереве может включать в себя флаг расщепления, указывающий на то, расщепляется ли CU, соответствующая узлу, на суб-CU. Элементы синтаксиса для CU могут быть определены рекурсивно, и могут зависеть от того, расщепляется ли CU на суб-CU. Если CU более не расщепляется, она именуется листовой-CU. В данном изобретении, четыре суб-CU листовой-CU также будут именоваться листовыми-CU, несмотря на то, что отсутствует явное расщепление исходной листовой-CU. Например, если CU размера 16×16 далее не расщепляется, то четыре 8×8 суб-CU также будут именоваться листовыми-CU, несмотря на то, что 16×16 CU никогда не расщеплялась.

[0039] Более того, TU листовых-CU также могут быть связаны с соответствующими структурами данных квадродерева. Т.е. листовая-CU может включать в себя квадродерево, указывающее на то, каким образом листовая-CU разбита на TU. Данное изобретение обозначает квадродерево, указывающее на то, каким образом разбита LCU, как CU квадродерево, а квадродерево, указывающее на то, каким образом листовая-CU разбита на TU, как TU квадродерево. Корневой узел TU квадродерева, в целом, соответствует листовой-CU, тогда как корневой узел CU квадродерева, в целом, соответствует LCU. TU соответственно TU квадродерева, которые не расщеплены, именуются листовыми-TU.

[0040] Листовая-CU может включать в себя одну или более единицы предсказания (PU). В целом, PU представляет собой всю или часть соответствующей CU, и может включать в себя данные для извлечения опорного отсчета для PU. Например, когда PU является закодированной во внешнем режиме, PU может включать в себя данные, определяющие вектор движения для PU. Данные, определяющие вектор движения, могут описывать, например, горизонтальную составляющую вектора движения, вертикальную составляющую вектора движения, разрешение для вектора движения (например, точность в одну четвертую пикселя или точность в одну восьмую пикселя), направление предсказания, которое идентифицирует список опорных картинок (например, список 0 или список 1) для вектора движения, и/или значение индекса опорной картинки, которое указывает опорный кадр в списке опорных картинок, на который указывает вектор движения. Аналогичным образом, когда CU является кодированной в режиме внутреннего предсказания, PU может включать в себя данные, определяющие режим внутреннего предсказания (например, угловое предсказание, DC предсказание, или Планарное предсказание, …, и т.д.).

[0041] Данные для листовой-CU, определяющей PU, могут также описывать, например, разбиение CU на одну или более PU. Разбиение CU на одну или более PU может именоваться режимом разбиения. Режимы разбиения, которые доступны для CU, могут отличаться в зависимости от того, является ли CU незакодированной, закодированной в режиме внутреннего предсказания, или закодированной в режиме внешнего предсказания. Применительно к внутреннему кодированию, PU может рассматриваться так же, как листовая единица преобразования, описываемая ниже.

[0042] Листовая-CU может включать в себя одну или более единицы преобразования (TU). В целом, данное изобретение использует понятие CU и TU для обозначения листовой-CU и листовой-TU, соответственно, до тех пор, пока не упоминается обратное. Единицы преобразования могут быть указаны при помощи структуры TU квадродерева, как рассмотрено выше. Т.е. флаг расщепления может указывать на то, расщепляется ли листовая-CU на четыре единицы преобразования. Затем, каждая единица преобразования может быть дополнительно расщеплена на четыре суб-TU. Когда TU более не расщепляется, она может именоваться листовой-TU. В целом, флаг расщепления может указывать на то, что листовая-TU расщеплена на TU квадратной формы. Для того чтобы указать, что TU расщеплена на TU неквадратной формы, могут быть включены другие данные синтаксиса, например, данные синтаксиса, которые указывают на то, что TU должны быть разбиты в соответствии с NSQT.

[0043] В целом, применительно к внутреннему кодированию, все из листовых-TU, принадлежащих к листовой-CU, могут совместно использовать одинаковый режим внутреннего предсказания. Т.е. одинаковый режим внутреннего предсказания может быть применен для вычисления предсказанных значений для всех TU листовой-CU. Применительно к внутреннему кодированию, кодер видео может вычислять остаточное значение для каждой листовой-TU, использующей режим внутреннего предсказания, как разность между частью предсказывающих значений, соответствующих TU, и исходным блоком. Остаточное значение может быть преобразовано, квантовано, и просканировано, как описано выше. Применительно к внешнему кодированию, кодер видео может выполнять предсказание на уровне PU и может вычислять остаток для каждой PU. Остаточные значения, соответствующие листовой-CU, могут быть преобразованы, квантованы, и просканированы. Применительно к внешнему кодированию, листовая-TU может быть больше или меньше PU. Применительно к внутреннему кодированию, PU может быть соотнесена с соответствующей листовой-TU. В некоторых примерах, максимальный размер листовой-TU может быть размером соответствующей листовой-CU.

[0044] В стандарте HEVC, количество режимов внутреннего предсказания, используемых для генерирования предсказывающего блока для CU, определяется посредством структуры PU. Структура PU INTRA_2N×2N указывает, что CU включает в себя лишь одну PU. Структура PU INTRA_N×N указывает, что CU включает в себя четыре PU. Кроме того, каждая PU в CU может иметь один режим внутреннего предсказания яркости и PU в CU могут совместно использовать один режим предсказания цветности. Например, CU со структурой PU INTRA_2N×2N может иметь один режим внутреннего предсказания яркости и один режим внутреннего предсказания цветности. Кроме того, CU со структурой PU INTRA_N×N может иметь четыре режима внутреннего предсказания яркости (т.е. один для каждой PU) и один режим внутреннего предсказания цветности для всей CU (т.е. четыре PU совместно используют режим предсказания цветности). Элементы синтаксиса могут быть сгенерированы для сигнализации режимов внутреннего предсказания.

[0045] Фиг. 1 является концептуальной схемой, иллюстрирующей примеры структур единицы предсказания и связанные режимы кодирования с внутренним предсказанием. Как иллюстрируется на Фиг. 1, структура единицы предсказания (PU) INTRA_2N×2N включает в себя только одну PU, а структура PU INTRA_N×N включает в себя четыре PU. Как иллюстрируется на Фиг. 1, структура PU INTRA_N×N является симметричной и включает в себя четыре квадратных PU одинакового размера. Как описано выше, каждая из четырех PU, проиллюстрированных на Фиг. 1, может иметь внутреннее предсказание яркости и совместно использовать внутреннее предсказание цветности. Следует отметить, что стандарт HEVC определяет другие структуры PU для использования с предсказаниями внешнего режима. Некоторые из этих PU являются несимметричными и/или включают в себя прямоугольные PU. Несмотря на то, что методики данного изобретения описываются в отношении структуры PU INTRA_2N×2N и структуры PU INTRA_N×N, методики, в целом, применимы к до