Устройство и способ кодирования видео и устройство и способ декодирования видео, основанные на иерархической информации о структуре кодированного блока
Иллюстрации
Показать всеИзобретение относится к области вычислительной техники для декодирования видео. Технический результат заключается в повышении эффективности декодирования информации о структуре единицы кодирования. Технический результат достигается за счет определения единицы кодирования при помощи информации разбиения, извлеченной из битового потока, извлечения из битового потока информации об индексе преобразования, указывающей, разбита ли единица преобразования текущего уровня, включенного в единицу кодирования из единицы кодирования, когда информация об индексе преобразования указывает разбиение единицы преобразования текущего уровня, разбиение единицы преобразования текущего уровня на единицы преобразования нижнего уровня и когда информация об индексе преобразования указывает неразбиение единицы преобразования текущего уровня, получение информации о структуре для единицы преобразования текущего уровня, при этом информация о структуре указывает, содержит ли единица преобразования текущего уровня один или более коэффициентов преобразования, отличных от 0. 3 з.п. ф-лы, 29 ил., 1 табл.
Реферат
Область техники, к которой относится изобретение
[1] Примерные варианты осуществления относятся к кодированию и декодированию видео.
Уровень техники
[2] По мере того как разрабатывается и предлагается аппаратное обеспечение для воспроизведения и хранения видео контента с высоким разрешением или высоким качеством, растет потребность в видео кодеке для эффективного кодирования или декодирования видео контента с высоким разрешением или высоким качеством. В видео кодеке известного уровня техники, видео кодируется в соответствии с ограниченным способом кодирования, основанным на макроблоке, заранее определенного размера. Также в видео кодеке известного уровня техники информация о структуре кодированного блока кодируется в единицах макроблоков.
Раскрытие изобретения
Техническая задача
[3] Согласующиеся с примерными вариантами осуществления устройства и способы предоставляют кодирование и декодирование видео при помощи информации, указывающей на то, закодирована ли информация о текстуре единицы кодирования и принимая во внимание иерархическую глубину.
Решение задачи
[4] В соответствии с аспектом примерного варианта осуществления, предоставлен способ декодирования видео, причем способ включает в себя прием и анализ битового потока закодированного видео; извлечение, из битового потока, закодированных данных изображения текущей картины (т.е. текущей «картинки» в декодируемом видеосигнале), назначенных максимальной единице кодирования текущей картины, информации, относящейся к кодируемой глубине максимальной единицы кодирования, информации, относящейся к режиму кодирования, и информации о структуре единицы кодирования, указывающей на то, закодирована ли информация о текстуре максимальной единицы кодирования; и декодирование закодированных данных изображения для максимальной единицы кодирования, на основании информации относящейся к кодируемой глубине максимальной единицы кодирования, информации, относящейся к режиму кодирования, и информации о структуре единицы кодирования.
Полезные результаты изобретения
[5] Используется информация о структуре единицы кодирования, основанная на иерархически структурированных единице кодирования и единице преобразования. Таким образом, информация о структуре единицы кодирования может кодироваться в единице кодирования, которая больше макроблока или является единицей данных другого размера. Также информация о структуре единицы кодирования может кодироваться в единице кодирования, которая включает в себя множество иерархически структурированных единиц преобразования согласно древовидной структуре, интегрированным образом. Соответственно может быть повышена эффективность кодирования/декодирования и передачи информации о структуре единицы кодирования.
Краткое описание чертежей
[6] Вышеприведенные и/или прочие аспекты станут более очевидны посредством подробного описания их примерных вариантов осуществления со ссылкой на прилагаемые чертежи, в которых:
[7] Фиг. 1 является структурной схемой устройства кодирования видео в соответствии с примерным вариантом осуществления;
[8] Фиг. 2 является структурной схемой устройства декодирования видео в соответствии с примерным вариантом осуществления;
[9] Фиг. 3 является схемой для описания концепции единиц кодирования в соответствии с примерным вариантом осуществления;
[10] Фиг. 4 является структурной схемой кодера изображений, основанного на единицах кодирования, в соответствии с примерным вариантом осуществления;
[11] Фиг. 5 является структурной схемой декодера изображений, основанного на единицах кодирования, в соответствии с примерным вариантом осуществления;
[12] Фиг. 6 является схемой, иллюстрирующей более глубокие единицы кодирования согласно глубинам и элементы разбиения в соответствии с примерным вариантом осуществления;
[13] Фиг. 7 является схемой для описания взаимосвязи единицы кодирования с единицами преобразования в соответствии с примерным вариантом осуществления;
[14] Фиг. 8 является схемой для описания информации кодирования единиц кодирования соответствующих кодируемой глубине в соответствии с примерным вариантом осуществления;
[15] Фиг. 9 является схемой более глубоких единиц кодирования согласно глубинам в соответствии с примерным вариантом осуществления;
[16] Фиг. 10-12 являются схемами для описания взаимосвязи между единицами кодирования, единицами предсказания и единицами преобразования в соответствии с примерным вариантом осуществления;
[17] Фиг. 13 является схемой для описания взаимосвязи между единицей кодирования, единицей предсказания или элементом разбиения и единицей преобразования, согласно информации о режиме кодирования, в соответствии с примерным вариантом осуществления;
[18] Фиг. 14 является блок-схемой последовательности операций, иллюстрирующей способ кодирования видео, в соответствии с примерным вариантом осуществления;
[19] Фиг. 15 является блок-схемой последовательности операций, иллюстрирующей способ декодирования видео, в соответствии с примерным вариантом осуществления;
[20] Фиг. 16 является структурной схемой устройства кодирования видео, использующего информацию о структуре единицы кодирования, в соответствии с примерным вариантом осуществления;
[21] Фиг. 17 является структурной схемой устройства декодирования видео, использующего информацию о структуре единицы кодирования, в соответствии с примерным вариантом осуществления;
[22] Фиг. 18-20 являются структурными схемами, иллюстрирующими информацию о структуре единицы кодирования, соответствующую кодируемой глубине, когда единица кодирования, соответствующая кодируемой глубине, включает в себя одну единицу преобразования, в соответствии с примерным вариантом осуществления;
[23] Фиг. 21-23 иллюстрируют информацию о структуре единицы кодирования, соответствующую кодируемой глубине, когда единица кодирования, соответствующая кодируемой глубине, включает в себя четыре единицы преобразования, в соответствии с примерным вариантом осуществления;
[24] Фиг. 24-26 иллюстрируют информацию о структуре единицы кодирования, соответствующую кодируемой глубине, когда единица кодирования, соответствующая кодируемой глубине, включает в себя множество единиц преобразования в соответствии с примерным вариантом осуществления;
[25] Фиг. 27 является схемой, иллюстрирующей иерархическую информацию о структуре единицы кодирования, в соответствии с примерным вариантом осуществления;
[26] Фиг. 28 является блок-схемой последовательности операций, иллюстрирующей способ кодирования видео при помощи информации о структуре единицы кодирования, в соответствии с примерным вариантом осуществления; и
[27] Фиг. 29 является блок-схемой последовательности операций, иллюстрирующей способ декодирования видео при помощи информации о структуре единицы кодирования, в соответствии с примерным вариантом осуществления.
Осуществление изобретения
[28] В соответствии с аспектом примерного варианта осуществления, предоставлен способ декодирования видео, при этом способ включает в себя прием и анализ битового потока закодированного видео; извлечение, из битового потока, закодированных данных изображения текущей картины, назначенных максимальной единице кодирования текущей картины, информации, относящейся к кодируемой глубине максимальной единицы кодирования, информации, относящейся к режиму кодирования, и информации о структуре единицы кодирования, указывающей на то, закодирована ли информация о текстуре максимальной единицы кодирования; и декодирование закодированных данных изображения для максимальной единицы кодирования на основании информации, относящейся к кодируемой глубине максимальной единицы кодирования, информации, относящейся к режиму кодирования, и информации о структуре единицы кодирования.
[29] Единица кодирования может характеризоваться максимальным размером и глубиной.
[30] Глубина может обозначать количество раз, на которое была иерархически разбита единица кодирования, и по мере увеличения глубины, более глубокие единицы кодирования, согласно глубинам, могут быть получены путем разбиения максимальной единицы кодирования, чтобы получить минимальные единицы кодирования.
[31] Глубина может увеличиваться от верхней глубины до нижней глубины.
[32] По мере увеличения глубины, количество раз, на которое разбивается максимальная единица кодирования, увеличивается, и суммарное количество раз, на которое может быть разбита максимальная единица кодирования, может соответствовать максимальной глубине.
[33] Максимальный размер и максимальная глубина единицы кодирования могут быть определены заранее.
[34] Информация о структуре единицы кодирования, относящаяся к максимальной единице кодирования, может включать в себя, по меньшей мере, одно из информации о структуре единицы кодирования, соответствующей кодируемой глубине, которая установлена для единицы кодирования, соответствующей кодируемой глубине, или иерархической информации о структуре единицы кодирования согласно глубинам преобразования, которая указывает на то, закодирована ли иерархическая информация о структуре единицы кодирования, относящаяся к нижней глубине.
[35] Если информация о структуре единицы кодирования, относящаяся к единицам кодирования, согласно кодируемым глубинам, указывает, что информация о текстуре максимальных единиц кодирования закодирована, то декодирование закодированных данных изображения может включать в себя извлечение информации о структуре единицы преобразования, указывающей, закодирована ли информация о текстуре, по меньшей мере, одной единицы преобразования, включенной в единицу кодирования, соответствующую кодируемой глубине.
[36] Если информация о структуре единицы преобразования указывает, что информация о текстуре единицы преобразования закодирована, то декодирование закодированных данных изображения может включать в себя декодирование закодированной информации о текстуре.
[37] Если информация о структуре единицы преобразования указывает, что информация о текстуре единицы преобразования не закодирована, то декодирование закодированных данных изображения может включать в себя декодирование единицы преобразования при помощи информации, относящейся к единицам преобразования соседним к единице преобразования.
[38] Информация о структуре единицы кодирования, соответствующая кодируемой глубине, может извлекаться в соответствии с цветовыми составляющими данных изображения.
[39] Если единица кодирования, соответствующая кодируемой глубине, включает в себя, по меньшей мере, четыре единицы преобразования, то первая группа может быть разделена на четыре более низкие группы, и в дальнейшем для каждой из четырех более низких групп может извлекаться информация о структуре единицы кодирования заранее определенного количества битов, соответствующая кодируемой глубине.
[40] В соответствии с аспектом другого примерного варианта осуществления предоставлен способ кодирования видео, причем способ, включает в себя разбиение текущей картины видео на максимальные единицы кодирования; определение кодируемой глубины для вывода итогового результата кодирования в соответствии с, по меньшей мере, одной областью разбиения, которая получается посредством разбиения области максимальной единицы кодирования согласно глубинам, посредством кодирования, по меньшей мере, одной области разбиения, основанной на глубине, которая увеличивается пропорционально количеству раз, на которое разбивается область максимальной единицы кодирования; и выдачу данных изображения, которые являются итоговым результатом кодирования, в соответствии с, по меньшей мере, одной областью разбиения, и кодирование и выдачу информации о кодируемой глубине и режиме предсказания и информации о структуре единицы кодирования одной из максимальной единицы кодирования, при этом информация о структуре единицы кодирования указывает, закодирована ли информация о текстуре максимальной единицы кодирования.
[41] Вывод данных изображения может включать установку и кодирование информации о структуре единицы кодирования, на основании того, являются ли все коэффициенты преобразования информации о текстуре максимальной единицы кодирования равными 0.
[42] Вывод данных изображения может включать в себя установку и кодирование информации о структуре единицы кодирования соответствующей кодируемой глубине, в соответствии с кодируемой глубиной максимальной единицы кодирования, на основании того, являются ли все коэффициенты преобразования единицы кодирования, соответствующей кодируемой глубине, равными 0.
[43] Если иерархическая информация о структуре единицы кодирования и информация о текстуре, относящиеся к единице кодирования, соответствующей верхней глубине текущей глубины не закодированы, то затем вывод данных изображения может включать в себя установку и кодирование иерархической информации о структуре единицы кодирования от самой верхней глубины к текущей глубине.
[44] Способ может дополнительно включать в себя определение, должна ли использоваться применительно к, по меньшей мере, одному из текущей картины, последовательности макроблоков или максимальной единицы кодирования, по меньшей мере, одно из информации о структуре единицы кодирования, соответствующей кодируемой глубине, или иерархической информации о структуре единицы кодирования для каждой из, по меньшей мере, одной глубины преобразования.
[45] Вывод информации о структуре единицы кодирования может включать в себя определение, должна ли устанавливаться информация о структуре единицы преобразования для единицы преобразования, включенной в единицу кодирования, соответствующую кодируемой глубине, на основании информации о структуре единицы кодирования, относящейся к максимальной единице кодирования, при этом информация о структуре единицы преобразования указывает, закодирована ли информация о текстуре единицы преобразования.
[46] В соответствии с аспектом другого примерного варианта осуществления, предоставлено устройство для декодирования видео, при этом устройство включает в себя приемник, который принимает и анализирует битовый поток закодированного видео; модуль извлечения, который извлекает из битового потока закодированные данные изображения текущей картины, назначенные максимальной единице кодирования, информацию, относящуюся к кодируемой глубине, максимальной единицы кодирования, информацию, относящуюся к режиму кодирования, и информацию о структуре единицы кодирования, указывающую, закодирована ли информация о текстуре максимальной единицы кодирования; и декодер данных изображения, который декодирует закодированные данные изображения в максимальной единице кодирования, на основании информации, относящейся к кодируемой глубине максимальной единицы кодирования, информации, относящейся к режиму кодирования, и информации о структуре единицы кодирования.
[47] В соответствии с аспектом другого примерного варианта осуществления, предоставлено устройство для кодирования видео, при этом устройство включает в себя модуль разбиения на максимальные единицы кодирования, который разбивает текущую картину на максимальные единицы кодирования; модуль определения единицы кодирования, который определяет кодируемую глубину для вывода итогового результата кодирования в соответствии с, по меньше мере, одной областью разбиения, которая получается посредством разбиения области каждой максимальной единицы кодирования согласно глубинам, посредством кодирования, по меньшей мере, одной области разбиения, основанной на глубине, которая увеличивается пропорционально количеству раз, на которое разбивается область максимальной единицы кодирования; и модуль вывода, который выводит данные изображения, которые являются итоговым результатом кодирования, в соответствии с, по меньшей мере, одной областью разбиения, и который кодирует и выдает информацию о кодируемой глубине и режиме кодирования и информацию о структуре единицы кодирования максимальной единицы кодирования, при этом информация о структуре единицы кодирования указывает, закодирована ли информация о текстуре каждой из, по меньшей мере, одной максимальной единицы кодирования.
[48] В соответствии с аспектом другого примерного варианта осуществления, предоставлен машиночитаемый носитель записи, содержащий записанную на нем компьютерную программу для выполнения описанного выше способа декодирования видео.
[49] В соответствии с аспектом другого примерного варианта осуществления, предоставлен машиночитаемый носитель записи, содержащий записанную на нем компьютерную программу для выполнения описанного выше способа кодирования видео.
[50] В соответствии с аспектом другого примерного варианта осуществления, предоставлен способ декодирования видео, при этом способ, включает в себя извлечение, из битового потока закодированного видео, закодированных данных изображения текущей картины, назначенных максимальной единице кодирования текущей картины, информации, относящейся к кодируемой глубине максимальной единицы кодирования, и информации о структуре единицы кодирования, указывающей, закодирована ли информация о текстуре максимальной единицы кодирования; и декодирование закодированных данных изображения применительно к максимальной единице кодирования на основании извлеченной информации, относящейся к кодируемой глубине максимальной единицы кодирования, и информации о структуре единицы кодирования.
Вариант осуществления изобретения
[51] Здесь и далее со ссылкой на сопроводительные чертежи будут описаны способ и устройство для кодирования видео и способ и устройство дл декодирования видео в соответствии с одним или более примерными вариантами осуществления. В частности, со ссылкой на Фиг. 1-15 будут описаны кодирование и декодирование видео, выполняемое на основании единиц кодирования согласно древовидной структуре, включающей в себя пространственно независимые, иерархические единицы данных, в соответствии с одним или более примерными вариантами осуществления. Также со ссылкой на Фиг. 16-29 будут подробно описаны кодирование и декодирование видео, выполняемое с использованием информации о структуре единицы кодирования, относящейся к единице кодирования, согласно такой древовидной структуре, в соответствии с одним или более примерными вариантами осуществления. Должно быть понятно, что в настоящем техническом описании выражение «по меньшей мере, одно из», предшествующее перечню элементов, определяет полный перечень элементов и не определяет отдельные элементы перечня.
[52] В настоящем техническом описании единица кодирования является единицей кодирования данных, в которой кодируются данные изображения на стороне кодера, и единицей закодированных данных, из которой декодируются закодированные данные изображения на стороне декодера, в соответствии с примерными вариантами осуществления. Так же, кодируемая глубина означает глубину, на которой кодируется единица кодирования.
[53] В настоящем техническом описании, «изображение» может обозначать неподвижное изображение применительно к видео, или подвижное изображение, то есть само видео.
[54] Способ и устройство для кодирования видео и способ и устройство для декодирования видео, в соответствии с одним или более примерными вариантами осуществления, будут описаны со ссылкой на Фиг. 1-15.
[55] Фиг. 1 является структурной схемой устройства 100 кодирования видео, в соответствии с примерным вариантом осуществления. Согласно Фиг. 1 устройство 100 кодирования видео включает в себя модуль 110 разбиения на максимальные единицы кодирования, модуль 120 определения единицы кодирования, и модуль 130 вывода.
[56] Модуль 110 разбиения на максимальные единицы кодирования может разбивать текущую картину, на основании максимальной единицы кодирования для текущей картины изображения. Если текущая картина больше максимальной единицы кодирования, то данные изображения текущей картины могут быть разбиты на, по меньшей мере, одну максимальную единицу кодирования. Максимальная единица кодирования, в соответствии с примерным вариантом осуществления, может быть единицей данных размером 32×32, 64×64, 128×128, 256×256 и т.д., при этом форма единицы данных является квадратом с шириной и высотой в квадратах 2. Данные изображения могут выдаваться модулю 120 определения единицы кодирования в соответствии с, по меньшей мере, одной максимальной единицей кодирования.
[57] Единица кодирования в соответствии с примерным вариантом осуществления может характеризоваться максимальным размером и глубиной. Глубина обозначает количество раз, на которое была разбита максимальная единица кодирования в пространственном отношении, чтобы получить единицу кодирования. Соответственно по мере увеличения глубины, более глубокие единицы кодирования, согласно глубинам, могут разбиваться от максимальной единицы кодирования до минимальной единицы кодирования. Глубина максимальной единицы кодирования является самой верхней глубиной, а глубина минимальной единицы кодирования является самой низкой глубиной. Так как размер единицы кодирования, соответствующий каждой глубине, уменьшается по мере углубления от максимальной единицы кодирования, то единица кодирования, соответствующая верхней глубине, может включать в себя множество единиц кодирования, соответствующих нижним глубинам.
[58] Как описано выше, данные изображения текущей картины разбиты на одну или более максимальные единицы кодирования в соответствии с максимальным размером единицы кодирования, и каждая из максимальных единиц кодирования может включать в себя более глубокие единицы кодирования, которые разбиты в соответствии с глубинами. Поскольку максимальная единица кодирования в соответствии с примерным вариантом осуществления разбивается согласно глубинам, то данные изображения пространственной области, включенные в максимальную единицу кодирования, могут иерархически классифицироваться согласно глубинам.
[59] Максимальная глубина и максимальный размер единицы кодирования, которые ограничивают суммарное количество раз, на которое высота и ширина максимальной единицы кодирования иерархически разбивается, могут быть определены заранее.
[60] Модуль 120 определения единицы кодирования кодирует, по меньшей мере, одну область разбиения, полученную посредством разбиения области максимальной единицы кодирования согласно глубинам, и определяет глубину для вывода итоговых закодированных данных изображения в соответствии с, по меньшей мере, одной областью разбиения. Например, модуль 120 определения единицы кодирования определяет кодируемую глубину посредством кодирования данных изображения в более глубоких единицах кодирования согласно глубинам, в соответствии с максимальной единицей кодирования текущей картины, и выбирает глубину с минимальными ошибками кодирования. Таким образом, модуль 120 определения единицы кодирования выдает закодированные данные изображения единицы кодирования, соответствующей определенной кодируемой глубине. Так же, единицы кодирования соответствующие кодируемой глубине могут рассматриваться как закодированные единицы кодирования.
[61] Определенная кодируемая глубина и закодированные данные изображения в соответствии с определенной кодируемой глубиной выдаются модулю 130 вывода.
[62] Данные изображения в максимальной единице кодирования кодируются на основании более глубоких единиц кодирования, соответствующих, по меньшей мере, либо эквивалентной глубине, либо глубине ниже максимальной глубины, а результаты кодирования данных изображения сравниваются на основании каждой из более глубоких единиц кодирования. После сравнения ошибок кодирования более глубоких единиц кодирования может выбираться глубина кодирования с минимальной ошибкой кодирования. Для каждой максимальной единицы кодирования может выбираться, по меньшей мере, одна кодируемая глубина.
[63] Размер максимальной единицы кодирования разбивается по мере того как иерархически разбиваются единицы кодирования согласно глубинам, и по мере того как растет количество единиц кодирования. Так же, если даже в одной максимальной единице кодирования присутствуют единицы кодирования соответствующие одной и той же глубине, то определяют, разбить ли каждую из единиц кодирования, соответствующих одной и той же глубине, на более низкую глубину посредством измерения ошибки кодирования данных изображения каждой единицы кодирования, по отдельности. Соответственно, даже когда данные изображения включены в одну максимальную единицу кодирования, данные изображения разбиваются на области, согласно глубинам, и ошибки кодирования могут различаться по областям в одной максимальной единице кодирования. Таким образом, кодируемые глубины могут отличаться по областям в данных изображения. Вследствие этого, в одной максимальной единице кодирования могут быть определены одна или более кодируемые глубины, и данные изображения максимальной единицы кодирования могут быть разделены в соответствии с единицами кодирования, по меньшей мере, одной кодируемой глубины.
[64] Соответственно, модуль 120 определения единицы кодирования может определять единицы кодирования с древовидной структурой, включенные в максимальную единицу кодирования. Единицы кодирования с древовидной структурой, в соответствии с примерным вариантом осуществления, включают в себя единицы кодирования, соответствующие глубине, определенной как кодируемая глубина, из числа всех более глубоких единиц кодирования, включенных в максимальную единицу кодирования. Единица кодирования кодируемой глубины может иерархически определяться согласно глубинам в той же области максимальной единицы кодирования, и может независимо определяться в других областях. Аналогично, кодируемая глубина в текущей области может независимо определяться от кодируемой глубины в другой области.
[65] Максимальная глубина в соответствии с примерным вариантом осуществления является индексом, относящимся к количеству разбиений от максимальной единицы кодирования до минимальной единицы кодирования. Первая максимальная глубина в соответствии с примерным вариантом осуществления может обозначать суммарное количество разбиений от максимальной единицы кодирования до минимальной единицы кодирования. Вторая максимальная глубина в соответствии с вариантом осуществления настоящего изобретения может обозначать суммарное количество уровней глубин от максимальной единицы кодирования до минимальной единицы кодирования. Например, когда глубина максимальной единицы кодирования равна 0, глубина единицы кодирования, при которой максимальная единица кодирования разбивается один раз, может быть установлена как 1, а глубина единицы кодирования, при которой максимальная единица кодирования разбивается дважды, может быть установлена как 2. В данном случае, если минимальная единица кодирования является единицей кодирования, при которой максимальная единица кодирования разбивается четыре раза, то существует 5 уровней глубины из уровней 0, 1, 2, 3 и 4, и, таким образом, первая максимальная глубина может быть установлена как 4, а вторая максимальная глубина может быть установлена как 5.
[66] Кодирование с предсказанием и преобразование могут выполняться в соответствии с максимальной единицей кодирования. Кодирование с предсказанием и преобразование так же могут выполняться на основании более глубоким единицам кодирования в соответствии с глубиной равной или глубинами меньшими, чем максимальная глубина, в соответствии с максимальной единицей кодирования. Преобразование может выполняться в соответствии со способом ортогонального преобразования или способом целочисленного преобразования.
[67] Поскольку количество более глубоких единиц кодирования растет всякий раз, когда максимальная единица кодирования разбивается согласно глубинам, то кодирование, включающее в себя кодирование с предсказанием и преобразование, производится по всем более глубоким единицам кодирования, формируемым по мере увеличения глубины. Для удобства описания, кодирование с предсказанием и преобразование далее будут описаны на основании единицы кодирования текущей глубины, в максимальной единице кодирования.
[68] Устройство 100 кодирования видео может гибко выбирать размер и форму единицы данных для кодирования данных изображения. Чтобы закодировать данные изображения, выполняются операции, такие как: кодирование с предсказанием, преобразование и энтропийное кодирование, и на данном этапе одна и та же единица данных может использоваться для всех операций, или для каждой операции могут использоваться разные единицы данных.
[69] Например, устройство 100 кодирования видео может выбрать не только единицу кодирования для кодирования данных изображения, но также единицу данных, отличную от единицы кодирования, чтобы выполнить кодирование с предсказанием данных изображения в единице кодирования.
[70] Чтобы выполнить кодирование с предсказанием в максимальной единице кодирования, кодирование с предсказанием может выполняться на основании единицы кодирования соответствующей кодируемой глубине, т.е. на основании единицы кодирования, которая далее не разбивается на единицы кодирования, соответствующие более низкой глубине. Здесь и далее, единица кодирования, которая далее не разбивается и становится базовой единицей для кодирования с предсказанием, будет именоваться как единица предсказания. Элемент разбиения, получаемый посредством разбиения единицы предсказания, может включать в себя единицу предсказания или единицу данных получаемые посредством разбиения, по меньшей мере, одного из высоты или ширины единицы предсказания.
[71] Например, когда единица кодирования размером 2N×2N (где N является положительным целым числом) далее не разбивается и становится единицей предсказания размером 2N×2N, то размер элемента разбиения может быть 2N×2N, 2N×N, N×2N или N×N. Примеры типов разбиения включают в себя: симметричное разбиение, которое получается посредством симметричного разбиения высоты или ширины единицы предсказания; элементы разбиения, получаемые посредством ассиметричного разбиения высоты или ширины единицы предсказания (такое, как 1:n или n:1); разбиение, получаемое посредством геометрического разбиения единицы предсказания; и элементы разбиения произвольной формы.
[72] Режим предсказания единицы предсказания может быть, по меньшей мере, одним из режима «внутри», режима «между» и режима с пропуском. Например, режим «внутри» или режим «между» могут выполняться над элементами разбиения размером 2N×2N, 2N×N, N×2N или N×N. Так же режим с пропуском может выполняться только над элементами разбиения 2N×2N. Кодирование независимо выполняется над одной единицей предсказания в единице кодирования, тем самым выбирая режим предсказания, с минимальной ошибкой кодирования.
[73] Устройство 100 кодирования видео также может выполнять преобразование над данными изображения в единице кодирования на основании не только единицы кодирования применительно к кодированию данных изображения, но и на основании единицы данных, которая отличается от единицы кодирования.
[74] Для того чтобы выполнять преобразование в единице кодирования, преобразование может выполняться на основании единицы данных, размером меньше, либо равным единице кодирования. Например, единица данных для преобразования может включать в себя единицу данных для режима «внутри» и единицу данных для режима «между».
[75] Единица данных, используемая в качестве базового элемента преобразования, далее будет именоваться как единица преобразования. Глубина преобразования, указывающая количество разбиений, чтобы получить единицу преобразования посредством разбиения высоты и ширины единицы кодирования, также может быть установлена в единице преобразования. Например, в текущей единице кодирования размером 2N×2N глубина преобразования может быть 0, когда размер единицы преобразования также составляет 2N×2N, может быть 1, когда как высота, так и ширина текущей единицы кодирования разбиты на две равные части, суммарно разбивая на 4^1 единицы преобразования, и таким образом размер единицы преобразования составляет N×N, и может быть 2, когда как высота, так и ширина текущей единицы кодирования разбиты на четыре равные части, суммарно разбивая на 4^2 единицы преобразования, и таким образом размер единицы преобразования составляет N/2×N/2. Например, единица преобразования может быть установлена в соответствии с иерархической древовидной структурой, в которой единица преобразования верхней глубины преобразования разбита на четыре единицы преобразования нижней глубины преобразования в соответствии с иерархическими характеристиками глубины преобразования.
[76] Аналогично единице кодирования, единица преобразования в единице кодирования может быть рекурсивно разбита на области более мелкого размера, чтобы единица преобразования могла определяться независимо в единицах областей. Таким образом, данные остатка в единице кодирования могут разделяться в соответствии с преобразованием с древовидной структурой, согласно глубинам преобразования.
[77] Кодирование информации согласно единицам кодирования, соответствующим кодируемой глубине, использует не только информацию о кодируемой глубине, но также и информацию, связанную с кодированием с предсказанием и преобразованием. Соответственно модуль 120 определения единицы кодирования не только определяет кодируемую глубину с минимальной ошибкой кодирования, но также определяет и тип разбиения в единице предсказания, режим предсказания в соответствии с единицами предсказания и размер единицы преобразования для преобразования.
[78] Единицы кодирования в соответствии с древовидной структурой в максимальной единице кодирования и способ определения элемента разбиения, в соответствии с одним или более примерными вариантами осуществления, будут описаны подробнее далее со ссылкой на Фиг. 3-12.
[79] Модуль 120 определения единицы кодирования может измерять ошибку кодирования более глубоких единиц кодирования согласно глубинам при помощи оптимизации скорости-искажения на основе множителей Лагранжа.
[80] Модуль 130 вывода выдает данные изображения максимальной единицы кодирования, которые закодированы на основании, по меньшей мере, одной кодируемой глубины, определенной модулем 120 определения единицы кодирования, и информации о режиме кодирования, в соответствии с кодируемой глубиной, в битовых потоках. Закодированные данные изображения могут быть получены посредством кодирования данных остатка изображения. Информация о режиме кодирования в соответствии с кодируемой глубине может включать в себя, по меньшей мере, одно из информации о кодируемой глубине, информации о типе разбиения в единице предсказания, режиме предсказания и размере единицы преобразования.
[81] Информация о кодируемой глубине может определяться при помощи информации разбиения согласно глубинам, которая указывает на то, выполняется ли кодирование по единицам кодирования более низкой глубины, чем текущая глубина. Если текущая глубина текущей единицы кодирования является кодируемой глубиной, то кодируются и выдаются данные изображения в текущей единице кодирования, и таким образом информация разбиения может быть определена как показывающая, что не следует разбивать текущую единицу кодирования на более низкую глубину. В качестве альтернативы, если текущая глубина текущей единицы кодирования не является кодируемой глубиной, то кодирование выполняется над единицей кодирования более низкой глубины. Таким образом, информация разбиения может быть определена, как показывающая на необходимость разбить текущую единицу кодирования для получения единиц кодирования более низкой глубины.
[82] Если текущая глубина не является кодируемой глубиной, то кодирование выполняется над единицей кодирования, кот