Способ и устройство для энтропийного кодирования с использованием иерархической единицы данных и способ и устройство для декодирования

Иллюстрации

Показать все

Группа изобретений относится к кодированию и декодированию видео и, в частности, к энтропийному кодированию и энтропийному декодированию синтаксических элементов, формирующих видеоданные. Техническим результатом является снижение количества обращений к памяти и объема памяти для сохранения синтаксических элементов за счет выбора контекстной модели для энтропийного кодирования первого синтаксического элемента, используя второй синтаксический элемент, используемый в текущей единице кодирования. Способ кодирования видео включает в себя: кодирование видео на основании единиц данных, имеющих иерархическую структуру; определение контекстной модели, используемой для энтропийного кодирования синтаксического элемента единицы данных, на основании второго синтаксического элемента; и энтропийное кодирование синтаксического элемента посредством использования определенной контекстной модели. 4 н. и 11 з.п. ф-лы, 26 ил., 1 табл.

Реферат

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

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

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

В способах сжатия изображения, таких как MPEG-1, MPEG-2 и MPEG-4 H.264/MPEG-4 расширенное кодирование видео (advanced video coding (AVC)), изображение разделяется на множество блоков, имеющих заранее заданные размеры, и затем остаточные данные блоков получаются с помощью внешнего (inter) предсказания или внутреннего (intra) предсказания. Остаточные данные сжимаются с помощью преобразования, квантования, сканирования, кодирования длин серий и энтропийного кодирования. Во время энтропийного кодирования поток битов формируется в результате энтропийного кодирования синтаксических элементов, таких как коэффициенты дискретного косинусного преобразования (DCT) или вектора движения. В отношении декодера, синтаксические элементы извлекаются из потока битов и декодирование выполняется на основании извлеченных синтаксических элементов.

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

ТЕХНИЧЕСКАЯ ЗАДАЧА

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

ТЕХНИЧЕСКОЕ РЕШЕНИЕ

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

ПРЕИМУЩЕСТВЕННЫЕ ЭФФЕКТЫ

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

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

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

На ФИГ. 2 представлена блок-схема устройства декодирования видео, согласно варианту осуществления настоящего изобретения.

На ФИГ. 3 представлена схема для описания принципа единиц кодирования, согласно варианту осуществления настоящего изобретения.

На ФИГ. 4 представлена подробная блок-схема кодера изображения, основанного на единицах кодирования, имеющих иерархическую структуру, согласно варианту осуществления настоящего изобретения.

На ФИГ. 5 представлена подробная блок-схема декодера изображения, основанного на единицах кодирования, имеющих иерархическую структуру, согласно варианту осуществления настоящего изобретения.

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

На ФИГ. 7 представлена схема для описания отношения между единицей кодирования и единицами преобразования, согласно варианту осуществления настоящего изобретения.

На ФИГ. 8 представлена схема для описания информации кодирования единиц кодирования, соответствующих кодируемой глубине, согласно варианту осуществления настоящего изобретения.

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

На ФИГ. с 10 по 12 представлены схемы для описания отношения между единицами кодирования, единицами предсказания и единицами преобразования, согласно варианту осуществления настоящего изобретения.

На ФИГ. 13 представлена схема для описания отношения между единицей кодирования, единицей предсказания или разделом, и единицей преобразования, согласно информации режима кодирования, указанной в Таблице 1.

На ФИГ. 14 представлена блок-схема устройства энтропийного кодирования, согласно варианту осуществления настоящего изобретения.

На ФИГ. 15 представлена блок-схема модуля определения контекстной модели, показанного на ФИГ. 14.

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

На ФИГ. 17A и 17B представлены ссылочные схемы, описывающие символы, указывающие иерархическую структуру единиц данных, согласно вариантам осуществления настоящего изобретения.

На ФИГ. 18A и 18B представлены схемы индексов контекста для определения контекстной модели, в соответствии с комбинацией дополнительной информации, согласно вариантам осуществления настоящего изобретения.

На ФИГ. 19 представлена ссылочная схема контекстной модели, согласно варианту осуществления настоящего изобретения.

На ФИГ. 20 представлен график значения вероятности наиболее вероятного символа (MPS), согласно варианту осуществления настоящего изобретения.

На ФИГ. 21 представлена схема для описания операции двоичного арифметического кодирования, выполняемой обычным механизмом кодирования, показанным на ФИГ. 14.

На ФИГ. 22 представлена блок-схема, иллюстрирующая способ энтропийного кодирования, согласно варианту осуществления настоящего изобретения.

На ФИГ. 23 представлена блок-схема устройства энтропийного декодирования, согласно варианту осуществления настоящего изобретения.

На ФИГ. 24 представлена блок-схема, иллюстрирующая способ энтропийного декодирования, согласно варианту осуществления настоящего изобретения.

ЛУЧШИЕ ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ

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

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

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

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

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

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

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

Далее в настоящем документе способы кодирования и декодирования видео и устройства кодирования и декодирования синтаксических элементов, имеющих древовидную структуру, основанную на единицах кодирования, соответствующих иерархической древовидной структуре, согласно варианту осуществления настоящего изобретения, описываются со ссылкой на ФИГ. с 1 по 13. Кроме того, процессы энтропийного кодирования и декодирования, используемые в способах кодирования и декодирования видео, показанных на ФИГ. с 1 по 14, подробно описывается со ссылкой на ФИГ. с 14 по 24.

На ФИГ. 1 представлена блок-схема устройства 100 кодирования видео согласно варианту осуществления настоящего изобретения.

Устройство 100 кодирования видео включает иерархический кодер 110 и энтропийный кодер 120.

Иерархический кодер 110 разделяет текущее изображение, которое должно быть кодировано, на единицы данных, имеющие заданные размеры, и кодирует единицы данных. Подробнее, иерархический кодер 110 может разделять текущее изображение на основании максимальной единицы кодирования. Максимальная единица кодирования согласно варианту осуществления настоящего изобретения может представлять собой единицу данных, имеющую размер, равный 32×32, 64×64, 128×128, 256×256 и т.д., где форма единицы данных представляет собой квадрат, имеющий ширину и высоту кратные 2 и превышающие 8.

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

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

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

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

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

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

Таким образом, иерархический кодер 110 может определять единицы кодирования, имеющие древовидную структуру, включенные в максимальную единицу кодирования. ′Единицы кодирования, имеющие древовидную структуру′ согласно варианту осуществления настоящего изобретения включают в себя единицы кодирования, соответствующие глубине, определенной как кодируемая глубина, среди всех более глубоких единиц кодирования, включенных в максимальную единицу кодирования. Единица кодирования кодируемой глубины может иерархически определяться согласно глубинам в одной той же области максимальной единицы кодирования, и может независимо определяться в различных областях. Аналогично, кодируемая глубина в текущей области может определяться независимо от кодируемой глубины в другой области.

Максимальная глубина согласно варианту осуществления настоящего изобретения представляет собой индекс, относящийся к числу раз разделения от максимальной единицы кодирования до минимальной единицы кодирования. Первая максимальная глубина согласно варианту осуществления настоящего изобретения может обозначать итоговое число раз разделения от максимальной единицы кодирования до минимальной единицы кодирования. Вторая максимальная глубина согласно варианту осуществления настоящего изобретения может обозначать общее количество уровней глубины от максимальной единицы кодирования до минимальной единицы кодирования. Например, когда глубина максимальной единицы кодирования равняется 0, глубина единицы кодирования, при которой максимальная единица кодирования разделена один раз, может устанавливаться равной 1, и глубина единицы кодирования, при которой максимальная единица кодирования разделена дважды, может устанавливаться равной 2. Здесь, если минимальная единица кодирования представляет собой единицу кодирования, при которой максимальная единица кодирования разделена четыре раза, то существует 5 уровней глубины 0, 1, 2, 3 и 4, и, таким образом, первая максимальная глубина может устанавливаться равной 4 и вторая максимальная глубина может устанавливаться равной 5.

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

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

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

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

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

Например, когда единица кодирования размера 2Nx2N (где N представляет собой положительное целое число) более не разделяется и становится единицей предсказания размера 2Nx2N, то размер раздела может равняться 2Nx2N, 2NxN, Nx2N или NxN. Примеры типов раздела включают в себя симметричные разделы, получаемые посредством симметричного разделения высоты или ширины единицы предсказания, разделы, получаемые посредством асимметричного разделения высоты или ширины единицы предсказания, таком как 1:n или n:1, разделы, получаемые посредством геометрического разделения единицы предсказания, и разделы, имеющие произвольные формы.

Режим предсказания единицы предсказания может представлять собой по меньшей мере один режим из таких как внутренний режим, внешний режим и режим пропуска. Например, внутренний режим или внешний режим могут выполняться в отношении раздела 2Nx2N, 2NxN, Nx2N или NxN. При этом, режим пропуска может выполняться только в отношении раздела 2Nx2N. Кодирование независимо выполняется в отношении одной единицы предсказания в единице кодирования, тем самым выбирается режим предсказания, дающий наименьшую ошибку кодирования.

Устройство 100 кодирования видео может также выполнять преобразование в отношении данных изображения в единице кодирования, основываясь не только на единице кодирования для кодирования данных изображения, но также основываясь на единице данных, отличной от единицы кодирования.

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

Единица данных, используемая в качестве основы преобразования, будет обозначаться как ′единица преобразования′. Глубина преобразования, указывающая число раз разделения для достижения единицы преобразования посредством разделения высоты и ширины единицы кодирования, может также задаваться в единице преобразования. Например, в текущей единице кодирования 2Nx2N, глубина преобразования может равняться 0, когда размер единицы преобразования также равняется 2Nx2N, может равняться 1, когда каждое из высоты и ширины текущей единицы кодирования разделено на две равные части с итоговым разделением на 4^1 единицы преобразования, и размер единицы преобразования таким образом равняется NxN, и может равняться 2, когда каждое из высоты и ширины текущей единицы кодирования разделено на четыре равные части, с итоговым разделением на 4^2 единицы преобразования, и размер единицы преобразования таким образом равняется N/2xN/2. Например, единица преобразования может устанавливаться в соответствии с иерархической древовидной структурой, в которой единица преобразования меньшей глубины преобразования разделяется на четыре единицы преобразования большей глубины преобразования в соответствии с иерархическими характеристиками глубины преобразования.

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

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

Единицы кодирования согласно древовидной структуре в максимальной единице кодирования, и способ определения разделения согласно вариантам осуществления настоящего изобретения подробно описываются далее со ссылками на ФИГ. с 3 по 12.

Иерархический кодер 110 может измерять ошибку кодирования более глубоких единиц кодирования согласно глубинам, используя оптимизацию искажения в зависимости от скорости передачи (Rate-Distortion Optimization), основанную на множителях Лагранжа.

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

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

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

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

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

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

Например, информация кодирования, выводимая через энтропийный кодер 120, может классифицироваться на информацию кодирования согласно единицам кодирования, и информацию кодирования согласно единицам предсказания. Информация кодирования согласно единицам кодирования, может включать в себя информацию о режиме предсказания и о размере разделов. Информация кодирования согласно единицам предсказания, может включать в себя информацию об оцененном направлении внешнего режима, об индексе опорного изображения внешнего режима, о векторе движения, о компоненте цветности внутреннего режима, и о способе интерполяции внутреннего режима. Кроме того, информация о максимальном размере единицы кодирования, определенном согласно изображениям, слайсам, или GOP, и информация о максимальной глубине могут вставляться в заголовок потока битов.

В устройстве 100 кодирования видео более глубокая единица кодирования может представлять собой единицу кодирования, полученную посредством разделения на два высоты и ширины единицы кодирования более верхней глубины, находящейся на один уровень выше. Другими словами, когда размер единицы кодирования текущей глубины равен 2Nx2N, размер единицы кодирования меньшей глубины равен NxN. Кроме того, единица кодирования текущей глубины, имеющая размер, равный 2Nx2N, может включать в себя максимум 4 единицы кодирования меньшей глубины.

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

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

На ФИГ. 2 представлена блок-схема устройства 200 декодирования видео, согласно варианту осуществления настоящего изобретения.

Устройство 200 декодирования видео включает в себя модуль 210 извлечения синтаксических элементов, энтропийный декодер 220 и иерархический декодер 230. Определения различных терминов, таких как единица кодирования, глубина, единица предсказания, единица преобразования и информация о различных режимах кодирования, для различных операций устройства 200 декодирования видео идентичны определениям, описанным со ссылками на ФИГ. 1 и устройство 100 кодирования видео.

Модуль 210 извлечения синтаксических элементов принимает и выполняет синтаксический анализ потока битов кодированного видео. Энтропийный декодер 220 извлекает кодированные данные изображения для каждой единицы кодирования из проанализированного потока битов, где единицы кодирования имеют древовидную структуру согласно каждой максимальной единице кодирования, и выводит извлеченные данные изображения на иерархический декодер 230.

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

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

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

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

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

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