Способ энтропийного кодирования сегмента слайса и устройство для него, и способ энтропийного декодирования сегмента слайса и устройство для него
Иллюстрации
Показать всеИзобретение относится к технологиям энтропийного кодирования и декодирования для кодирования и декодирования видеосигнала. Техническим результатом является повышение эффективности кодирования/декодирования видеосигнала. Предложен способ видеодекодирования. Способ содержит этап, на котором осуществляют получение из битового потока информации о максимальном размере единицы кодирования. Далее, согласно способу получают из битового потока первую информацию, указывающую, разрешено ли включить зависимый сегмент слайса в видеокадр. А также, согласно способу определяют одну или более максимальных единиц кодирования, включенных в первый сегмент слайса, основываясь на максимальном размере единицы кодирования, который определяется посредством использования информации о максимальном размере. 3 з.п. ф-лы, 30 ил., 1 табл.
Реферат
Перекрестная ссылка на родственные заявки
[1] Данная заявка представляет собой национальную фазу международной заявки № PCT/KR2014/000093, поданной 6 января 2014 г., претендующей на приоритет предварительной заявки США № 61/748 964, поданной 4 января 2013 г., содержимое которой включено в данный документ по ссылке во всей своей полноте.
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
[2] Способы и устройства, совместимые с примерными вариантами осуществления, относятся к энтропийному кодированию и энтропийному декодированию для видеокодирования и видеодекодирования.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
[3] Так как были разработаны и поставляются аппаратные средства для воспроизведения и хранения видеоконтента с высоким разрешением или высоким качеством, увеличилась потребность в видеокодеке, который эффективно кодирует или декодирует видеоконтент с высоким разрешением или высоким качеством. Обычно, видео кодируется в соответствии со способом ограниченного кодирования, основанным на макроблоке, имеющим заданный размер.
[4] Данные изображения пространственной области преобразуются в коэффициенты частотной области посредством использования преобразования частоты. Видеокодек разбивает изображение на блоки, причем каждый имеет заранее заданный размер, чтобы быстро выполнять преобразование частоты, выполняет преобразование DCT (дискретное косинусное преобразование) каждого блока и кодирует частотные коэффициенты в единицах блоков. Коэффициенты частотной области могут сжиматься легче, чем данные изображения пространственной области. В частности, так как значение пикселя изображения пространственной области выражается в виде ошибки предсказания посредством внешнего предсказания или внутреннего предсказания видеокодека, то когда выполняется преобразование частоты ошибки предсказания, большие количества данных могут преобразовываться в нуль (0). Видеокодек уменьшает количество данных посредством замены данных, которые постоянно и повторно генерируются, на данные, имеющие меньший размер.
[5] Выполняется энтропийное кодирование, чтобы сжать строку битов символа, генерируемого видеокодированием. Недавно широко использовалось энтропийное кодирование на основе арифметического кодирования. Чтобы выполнять энтропийное кодирование на основе арифметического кодирования, символы оцифровываются в строку битов, и выполняется контекстное арифметическое кодирование строки битов.
Сущность изобретения
[6] Примерные варианты осуществления обеспечивают способы энтропийного кодирования и декодирования, использующие контекстную информацию близлежащих данных, учитывая атрибут сегмента слайса, для видеокодирования и видеодекодирования.
[7] Согласно аспекту примерного варианта осуществления способ энтропийного видеодекодирования включает в себя: определение строки бинов («контейнеров») и индекса бина для максимальной единицы кодирования, которая получается из битового потока; определение значения синтаксического элемента посредством сравнения определенной строки бинов со строками бинов, которые могут быть назначены синтаксическому элементу в индексе бина; когда синтаксический элемент является последним синтаксическим элементом в максимальной единице кодирования, зависимый сегмент слайса может быть включен в видеокадр, в который включена максимальная единица кодирования, и максимальной единицей кодирования является последняя максимальная единица кодирования в сегменте слайса, сохранение контекстных переменных для максимальной единицы кодирования; и восстановление символов максимальной единицы кодирования посредством использования определенного значения синтаксического элемента.
[8] Согласно аспекту примерного варианта осуществления способ энтропийного видеодекодирования включает в себя: определение строки бинов и индекса бина для максимальной единицы кодирования, которая получается из битового потока; определение значения синтаксического элемента посредством сравнения определенной строки бинов со строками бинов, которые являются назначаемыми синтаксическому элементу в индексе бина; сохранение контекстных переменных для максимальной единицы кодирования, когда синтаксический элемент является последним синтаксическим элементом в максимальной единице кодирования, зависимый сегмент слайса является включаемым в видеокадр, в который включена максимальная единица кодирования, и максимальная единица кодирования является последней максимальной единицей кодирования в сегменте слайса; и восстановление символов максимальной единицы кодирования посредством использования определенного значения синтаксического элемента.
[9] Сохранение контекстных переменных согласно различным примерным вариантам осуществления может включать в себя сохранение контекстных переменных для максимальной единицы кодирования, когда зависимый сегмент слайса является включаемым в видеокадр, независимо от того, является ли сегмент слайса независимым сегментом слайса или зависимым сегментом слайса.
[10] Способ энтропийного видеодекодирования согласно различным примерным вариантам осуществления может дополнительно включать в себя использование сохраненных контекстных переменных для энтропийного декодирования контекстной переменной первой максимальной единицы кодирования зависимого сегмента слайса, причем зависимый сегмент слайса находится среди сегментов слайса, включенных в видеокадр, и располагается после сегмента слайса.
[11] Способ энтропийного видеодекодирования согласно различным примерным вариантам осуществления может дополнительно включать в себя: определение, является ли зависимый сегмент слайса включаемым в видеокадр, основываясь на первой информации, которая получается из набора параметров видеокадра битового потока; определение, является ли максимальная единица кодирования последней максимальной единицей кодирования в сегменте слайса, основываясь на второй информации, которая получается из данных о максимальной единице кодирования, причем данные о максимальной единице кодирования включены в число данных, соответствующих сегментам слайса битового потока; и получение строки бинов из данных о максимальной единице кодирования.
[12] Способ энтропийного видеодекодирования согласно различным примерным вариантам осуществления может дополнительно включать в себя: определение числа точек входа поднаборов, которые включены в сегмент слайса, основываясь на третьей информации, которая получается из заголовка сегмента слайса битового потока; определение положения каждой точки входа посредством использования смещения и числа, указанного четвертой информацией, причем смещение представляет собой число, которое больше числа, указанного четвертой информацией на 1, и четвертая информация получается из заголовка сегмента слайса битового потока и указывает смещение в соответствии с каждой точкой входа; и число точек входа и положения точек входа определяются тогда, когда тайл является включаемым в сегмент слайса, который включен в видеокадр, или операция синхронизации является выполняемой для контекстных переменных максимальной единицы кодирования, которая включена в видеокадр.
[13] Согласно аспекту примерного варианта осуществления способ энтропийного видеокодирования включает в себя: генерирование строки битов символов, которые определяются посредством кодирования максимальной единицы кодирования; определение контекстной переменной в соответствии с каждым индексом бина значения синтаксического элемента, соответствующего символам; определение строки бинов, указывающей значение синтаксического элемента, основываясь на контекстном значении синтаксического элемента; и сохранение контекстных переменных для максимальной единицы кодирования, когда синтаксический элемент является последним синтаксическим элементом в максимальной единице кодирования, зависимый сегмент слайса является включаемым в видеокадр, в который включена максимальная единица кодирования, и максимальная единица кодирования является последней максимальной единицей кодирования в сегменте слайса.
[14] Сохранение контекстных переменных согласно различным примерным вариантам осуществления может включать в себя сохранение контекстных переменных для максимальной единицы кодирования, когда зависимый сегмент слайса является включаемым в видеокадр, независимо от того, является ли сегмент слайса независимым сегментом слайса или зависимым сегментом слайса.
[15] Согласно аспекту примерного варианта осуществления устройство энтропийного видеодекодирования включает в себя: инициализатор контекста, который определяет строку бинов и индекс бина для максимальной единицы кодирования, которая получается из битового потока, и определяет значение синтаксического элемента посредством сравнения определенной строки бинов со строками бинов, которые являются назначаемыми синтаксическому элементу в индексе бина; блок сохранения контекста, который сохраняет контекстные переменные для максимальной единицы кодирования, когда синтаксический элемент является последним синтаксическим элементом в максимальной единице кодирования, зависимый сегмент слайса является включаемым в видеокадр, в который включена максимальная единица кодирования, и максимальная единица кодирования является последней максимальной единицей кодирования в сегменте слайса; и блок восстановления символа, который восстанавливает символы максимальной единицы кодирования посредством использования определенного значения синтаксического элемента.
[16] Согласно аспекту примерного варианта осуществления устройство энтропийного видеокодирования включает в себя: бинаризатор, который генерирует строку битов символов, которые определяются посредством выполнения кодирования максимальной единицы кодирования; определитель строки бинов, который определяет значение контекста в соответствии с каждым индексом бина значения синтаксического элемента, соответствующего символам, и определяет строку бинов, указывающую значение синтаксического элемента, основываясь на контекстной переменной синтаксического элемента; и блок сохранения контекста, который сохраняет контекстные переменные для максимальной единицы кодирования, когда синтаксический элемент является последним синтаксическим элементом в максимальной единице кодирования, зависимый сегмент слайса является включаемым в видеокадр, в который включена максимальная единица кодирования, и максимальная единица кодирования является последней максимальной единицей кодирования в сегменте слайса.
[17] Согласно аспекту примерного варианта осуществления обеспечивается считываемая компьютером среда записи, имеющая внедренную на ней инструкциями программу, которая при исполнении компьютером выполняет способ энтропийного видеодекодирования.
[18] Согласно аспекту примерного варианта осуществления обеспечивается считываемая компьютером среда записи, имеющая внедренную на ней инструкциями программу, которая при исполнении компьютером выполняет способ энтропийного видеокодирования.
[19] Таким образом, если зависимый сегмент слайса может использоваться в текущем видеокадре, основанном на энтропийном кодировании/декодировании, контекстная переменная может сохраняться после того, как будет завершено энтропийное кодирование (декодирование) последней максимальной единицы кодирования (LCU) каждого сегмента слайса. Следовательно, хотя предыдущий сегмент слайса является независимым сегментом слайса, начальная переменная контекстной переменной, которая необходима для следующего зависимого сегмента слайса, может быть получена из контекстной переменной последней LCU независимого сегмента слайса, который кодировался ранее.
[20] Так как информация, указывающая число, которое меньше на 1 смещения поднабора, обеспечивается посредством сегмента слайса, чтобы эффективно информировать о точке синхронизации контекстной переменной для энтропийного кодирования/декодирования, может быть уменьшен размер данных сегмента слайса.
Краткое описание чертежей
[21] Фиг. 1A представляет собой блок-схему, иллюстрирующую устройство энтропийного видеокодирования согласно одному или нескольким примерным вариантам осуществления.
[22] Фиг. 1B представляет собой блок-схему последовательности операций способа энтропийного видеокодирования согласно одному или нескольким примерным вариантам осуществления.
[23] Фиг. 2A представляет собой блок-схему, иллюстрирующую устройство энтропийного видеодекодирования согласно одному или нескольким примерным вариантам осуществления.
[24] Фиг. 2B представляет собой блок-схему последовательности операций способа энтропийного видеодекодирования согласно одному или нескольким примерным вариантам осуществления.
[25] Фиг. 3 представляет собой чертеж, иллюстрирующий тайлы и максимальные единицы кодирования (LCU) в видеокадре.
[26] Фиг. 4 представляет собой чертеж, иллюстрирующий сегмент слайса и LCU в видеокадре.
[27] Фиг. 5 представляет собой блок-схему последовательности действий операции синтаксического анализа контекстно-адаптивного двоичного арифметического кодирования (CABAC) согласно примерному варианту осуществления.
[28] Фиг. 6A представляет собой чертеж для объяснения энтропийного декодирования с использованием сохраненной контекстной переменной.
[29] Фиг. 6B представляет собой подробную блок-схему последовательности действий операции сохранения контекстной переменной в операции синтаксического анализа CABAC согласно примерному варианту осуществления.
[30] Фиг. 7 представляет собой чертеж, иллюстрирующий синтаксис заголовка сегмента слайса согласно примерному варианту осуществления.
[31] Фиг. 8 представляет собой блок-схему устройства видеокодирования, основанного на единицах кодирования, имеющих древовидную структуру, согласно примерному варианту осуществления.
[32] Фиг. 9 представляет собой блок-схему устройства видеодекодирования, основанного на единицах кодирования, имеющих древовидную структуру, согласно примерному варианту осуществления.
[33] Фиг. 10 представляет собой чертеж для объяснения понятия единиц кодирования согласно примерному варианту осуществления.
[34] Фиг. 11 представляет собой блок-схему кодера изображений, основанного на единицах кодирования, согласно примерному варианту осуществления.
[35] Фиг. 12 представляет собой блок-схему декодера изображений, основанного на единицах кодирования, согласно примерному варианту осуществления.
[36] Фиг. 13 представляет собой чертеж, иллюстрирующий более глубокие единицы кодирования в соответствии с глубинами и разделами согласно примерному варианту осуществления.
[37] Фиг. 14 представляет собой чертеж для объяснения взаимосвязи между единицей кодирования и единицами преобразования согласно примерному варианту осуществления.
[38] Фиг. 15 представляет собой чертеж для объяснения информации кодирования единиц кодирования, соответствующих кодированной глубине, согласно примерному варианту осуществления.
[39] Фиг. 16 представляет собой чертеж, иллюстрирующий более глубокие единицы кодирования в соответствии с глубинами согласно примерному варианту осуществления.
[40] Фиг. 17-19 представляют собой чертежи для объяснения взаимосвязи между единицами кодирования, единицами предсказания и единицами преобразования, согласно примерному варианту осуществления.
[41] Фиг. 20 представляет собой чертеж для объяснения взаимосвязи между единицей кодирования, единицей предсказания и единицей преобразования в соответствии с информацией о режиме кодирования таблицы 1.
[42] Фиг. 21 представляет собой чертеж, иллюстрирующий физическую структуру диска, на котором сохраняется программа согласно примерному варианту осуществления.
[43] Фиг. 22 представляет собой чертеж, иллюстрирующий дисковод для записи и считывания программы посредством использования диска.
[44] Фиг. 23 представляет собой чертеж, иллюстрирующий общую структуру системы подачи контента для предоставления услуги распределения контента.
[45] Фиг. 24 и 25 представляют собой чертежи, иллюстрирующие внешнюю конструкцию и внутреннюю конструкцию мобильного телефона, в котором применяются способ видеокодирования и способ видеодекодирования согласно примерному варианту осуществления, согласно примерному варианту осуществления.
[46] Фиг. 26 представляет собой чертеж, иллюстрирующий систему цифрового вещания, в которой применяется система связи согласно примерному варианту осуществления.
[47] Фиг. 27 представляет собой чертеж, иллюстрирующий сетевую структуру системы облачных вычислений, использующей устройство видеокодирования и устройство видеодекодирования согласно примерному варианту осуществления.
ПОДРОБНОЕ ОПИСАНИЕ ПРИМЕРНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
[48] Способ энтропийного кодирования в сегменте слайса и способ энтропийного декодирования в сегменте слайса согласно различным примерным вариантам осуществления объясняется с ссылкой на фиг. 1A-7. Способ видеокодирования и способ видеодекодирования, основанные на единицах кодирования, имеющих древовидную структуру согласно различным примерным вариантам осуществления, в которых может применяться способ энтропийного кодирования и способ энтропийного декодирования, объясняются с ссылкой на фиг. 8-20. Кроме того, различные примерные варианты осуществления, в которых может применяться способ видеокодирования и способ видеодекодирования, объясняются с ссылкой на фиг. 21-27. Ниже в данном документе термин «изображение» может ссылаться на неподвижное изображение или движущееся изображение, т.е. само видео.
[49] Фиг. 1A представляет собой блок-схему устройства 10 энтропийного видеокодирования согласно различным примерным вариантам осуществления.
[50] Устройство 10 энтропийного видеокодирования согласно различным примерным вариантам осуществления включает в себя бинаризатор 12, определитель 14 строки бинов и блок 16 сохранения контекста.
[51] Устройство 10 энтропийного видеокодирования может выполнять энтропийное кодирование символов, которые кодируются в соответствии с максимальными единицами кодирования (LCU). Устройство 10 энтропийного видеокодирования может сохранять видеокодер (не показан), который выполняет кодирование LCU.
[52] Для удобства объяснения ниже подробно объясняется процесс, используемый устройством 10 энтропийного видеокодирования, включающий в себя видеокодер (не показан), для выполнения кодирования LCU и генерирования символов. Однако понятно, что устройство 10 энтропийного видеокодирования не ограничивается конструкцией, непосредственно включающей в себя видеокодер (не показан), и устройство 10 энтропийного видеокодирования может принимать символы, которые кодируются внешним устройством кодирования.
[53] Процесс видеокодирования согласно примерному варианту осуществления может быть разделен на процесс кодирования источника, который минимизирует избыточные данные вследствие пространственно-временного сходства данных изображения, и процесс энтропийного кодирования, который минимизирует избыточность снова в строке битов данных, которые генерируются посредством процесса кодирования источника. Устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления выполняет кодирование источника каждого из видеокадров, которые составляют видео, в соответствии с блоками, и генерирует кодированные символы. Кодирование источника включает в себя процесс выполнения внутреннего предсказания/внешнего предсказания, преобразования и квантования видеоданных в пространственной области в единицах блоков. В результате кодирования источника могут генерироваться кодированные символы в соответствии с блоками. Примеры кодированных символов могут включать в себя квантованный коэффициент преобразования составляющей остатка, вектор движения, атрибут внутреннего режима, атрибут внешнего режима и параметр квантования.
[54] Энтропийное кодирование согласно примерному варианту осуществления может быть разделено на процесс бинаризации, который преобразует символы в строку битов, и процесс арифметического кодирования, который выполняет контекстное арифметическое кодирование строки битов. Контекстно-адаптивное двоичное арифметическое кодирование (CABAC) широко используется в качестве способа кодирования, который выполняет контекстное арифметическое кодирование. Согласно контекстному арифметическому кодированию/декодированию каждым битом строки битов символов может быть каждый бин, и положение каждого бита может отображаться на индекс бина. Длина строки битов, т.е. длина бинов, может изменяться в соответствии со значением символа. Для контекстного арифметического кодирования/декодирования является необходимым контекстное моделирование, которое определяет контекст символа.
[55] Для контекстного моделирования контексту необходимо заново обновляться для положения каждого бита строки битов символов, т.е. для каждого индекса бина. Термин «контекстное моделирование» ссылается на процесс анализа вероятности, что каждый бин равен 0 или 1. Процесс обновления контекста посредством отражения результата, полученного посредством анализа вероятности каждого из символов нового блока в соответствии с битами текущего контекста может выполняться неоднократно в единицах блоков. Таблица вероятности, в которой вероятность сопоставляется с каждым бином, может обеспечиваться как информация, содержащая результат такого контекстного моделирования. Информация вероятности энтропийного кодирования согласно примерному варианту осуществления может представлять собой информацию, содержащую результат контекстного моделирования.
[55] Следовательно, если получена информация контекстного моделирования, т.е. информация вероятности энтропийного кодирования, энтропийное кодирование может выполняться посредством назначения кода каждому из битов бинаризованной строки битов блочных символов, основываясь на контексте информации вероятности энтропийного кодирования.
[57] Так как энтропийное кодирование включает в себя контекстное арифметическое кодирование/декодирование, контекстная информация кода символа может обновляться в единицах блоков, и, так как энтропийное кодирование выполняется посредством использования обновленной контекстной информации кода символа, может повышаться коэффициент сжатия.
[58] Способ видеокодирования согласно различным примерным вариантам осуществления не должен толковаться как ограниченный только способом видеокодирования, выполняемым над «блоком», т.е. единицей данных, и может применяться к различным единицам данных.
[59] Для эффективного кодирования изображения изображение разбивается на блоки, причем каждый имеет заданный размер, и затем кодируется. Блок может иметь совершенную квадратную или прямоугольную форму или произвольную геометрическую форму. Настоящий примерный вариант осуществления не ограничивается единицей данных, имеющей заданный размер. Блоком согласно примерному варианту осуществления может быть LCU, единица кодирования, единица предсказания или единица преобразования, из числа единиц кодирования, имеющих древовидную структуру. Способ видеокодирования/видеодекодирования, основанный на единицах кодирования в соответствии с древовидной структурой, объясняются ниже с ссылкой на фиг. 8-20.
[60] Блоки видеокадра кодируются в направлении растрового сканирования.
[61] Устройство 10 энтропийного видеокодирования может разбивать видеокадр на один или несколько тайлов, и каждый из тайлов может включать в себя блоки, которые располагаются по направлению растра, из числа блоков видеокадра. Видеокадр может разбиваться на тайлы, которые разбиваются на один или несколько столбцов, тайлы, которые разбиваются на одну или несколько строк, или тайлы, которые разбиваются на один или несколько столбцов и одну или несколько строк. Каждый из тайлов может разбивать пространственную область на подобласти. Чтобы индивидуально кодировать каждую из подобластей, устройство 10 энтропийного видеокодирования может индивидуально выполнять кодирование в единицах тайлов.
[62] Так как каждый сегмент слайса включает в себя блоки, которые располагаются по направлению растра, устройство 10 энтропийного видеокодирования может генерировать сегмент слайса посредством разбиения видеокадра в горизонтальном направлении. Видеокадр может разбиваться на один или несколько сегментов слайса. Данные каждого сегмента слайса могут передаваться посредством одной единицы уровня сетевой абстракции (NAL).
[63] Устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может выполнять кодирование сегментов слайса. Устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может генерировать кодированные символы согласно блокам посредством последовательного выполнения кодирования блоков, которые включены в каждый сегмент слайса. Кодированные данные блоков в каждом сегменте слайса могут включаться в и могут передаваться посредством одной единицы NAL. Каждый тайл может включать в себя по меньшей мере один сегмент слайса. Если необходимо, каждый сегмент слайса может включать в себя по меньшей мере один тайл.
[64] Сегмент слайса может классифицироваться на зависимый сегмент слайса и независимый сегмент слайса.
[65] Если текущий сегмент слайса является зависимым сегментом слайса, может выполняться предсказание в видеокадре, которое ссылается на кодированные символы предыдущего сегмента слайса, который кодируется раньше текущего сегмента слайса. Когда текущий сегмент слайса является зависимым сегментом слайса, может выполняться зависимое энтропийное кодирование, которое ссылается на энтропийную информацию предыдущего сегмента слайса, который кодируется раньше текущего сегмента слайса.
[66] Если текущий сегмент слайса является независимым сегментом слайса, не выполняется предсказание в видеокадре, которое ссылается на предыдущий сегмент слайса, и не выполняется ссылка на энтропийную информацию предыдущего сегмента слайса.
[67] Один видеокадр согласно примерному варианту осуществления может включать в себя один независимый сегмент слайса и по меньшей мере один зависимый сегмент слайса, который является последующим независимому сегменту слайса в порядке растрового сканирования. Один независимый сегмент слайса может представлять собой один слайс.
[68] Устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может индивидуально выполнять кодирование каждого тайла, отдельно от других тайлов. Устройство 10 энтропийного видеокодирования может последовательно кодировать LCU, которые включены в текущий тайл, в соответствии с тайлами.
[69] Устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может кодировать LCU текущего сегмента слайса согласно сегментам слайса. LCU, которые включены в заданный тайл из числа LCU, которые включены в текущий сегмент слайса, могут кодироваться в порядке кодирования текущего тайла.
[70] Если все LCU текущего сегмента слайса принадлежат текущему тайлу, устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может кодировать множество LCU, которые включены в текущий сегмент слайса в порядке растрового сканирования в текущем тайле. В данном случае, так как текущий сегмент слайса не располагается через границу текущего тайла, LCU текущего сегмента слайса не пересекают границу текущего тайла. В данном случае, устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может последовательно выполнять кодирование по меньшей мере одного сегмента слайса, который включен в каждый тайл, и может кодировать множество блоков, которые включены в каждый сегмент слайса в порядке растрового сканирования.
[71] Даже когда текущий сегмент слайса включает в себя по меньшей мере один тайл, устройство 10 энтропийного видеокодирования может выполнять кодирование, в порядке растрового сканирования LCU текущего тайла, LCU, которые принадлежат текущему тайлу, из числа LCU, которые включены в текущий сегмент слайса. Устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может последовательно выполнять кодирование сегментов слайса. Следовательно, устройство 10 энтропийного видеокодирования согласно примерному варианту осуществления может генерировать кодированные символы в соответствии с блоками посредством последовательного выполнения кодирования сегментов слайса и последовательного выполнения кодирования блоков, которые включены в каждый сегмент слайса. Устройство 10 энтропийного видеокодирования может выполнять внутреннее предсказание, внешнее предсказание, преобразование, петлевую фильтрацию, компенсацию адаптивного смещения отсчетов (SAO) и квантование в единицах блоков каждого сегмента слайса.
[72] Чтобы выполнять кодирование с предсказанием кодированных символов, которые генерируются во время процесса кодирования источника, например, внутреннего отсчета, вектора движения и информации о режиме кодирования, может выполняться предсказание в видеокадре. Когда выполняется предсказание в видеокадре, может кодироваться разностное значение между текущим кодированным символом и предыдущим кодированным символом, вместо текущего кодированного символа. Может кодироваться разностное значение между текущим отсчетом и соседним отсчетом, вместо текущего отсчета.
[73] Чтобы выполнить кодирование с предсказанием энтропийной контекстной информации или контекстной информации кода, которая генерируется во время процесса энтропийного кодирования, может выполняться зависимое энтропийное кодирование. Когда выполняется зависимое энтропийное кодирование, и текущая энтропийная информация и предыдущая энтропийная информация одинаковые, может опускаться кодирование текущей энтропийной информации.
[74] Однако, так как устройство 10 энтропийного видеокодирования индивидуально кодирует каждый тайл, может не выполняться предсказание в видеокадре или зависимое энтропийное кодирование между LCU, которые принадлежат к разным тайлам.
[75] Устройство 10 энтропийного видеокодирования может записывать информацию, указывающую доступность сегмента слайса или атрибут сегмента слайса, о заголовках различных единиц кодирования, такую как набор параметров последовательности (SPS), набор параметров видеокадра (PPS) и заголовок сегмента слайса.
[76] Например, устройство 10 энтропийного видеокодирования может генерировать заголовок сегмента слайса, включающий в себя информацию, указывающую, является ли текущий сегмент слайса начальным сегмент слайса в текущем видеокадре.
[77] Различная основная информация о текущем видеокадре, к которому принадлежит текущий сегмент слайса, может содержаться в PPS и может передаваться посредством его. В частности, PPS может включать в себя информацию о том, может ли текущий видеокадр включать в себя зависимый сегмент слайса. Следовательно, когда информация, указывающая, что зависимый сегмент слайса используется в текущем видеокадре, содержится в PPS, устройство 10 энтропийного видеокодирования может включать в себя, в заголовке текущего сегмента слайса, информацию, указывающую, является ли текущий сегмент слайса зависимым сегментом слайса, используя информацию заголовка слайса о предыдущем сегменте слайса.
[78] И наоборот, когда информация, указывающая, что зависимый сегмент слайса не используется в текущем видеокадре, включена в PPS текущего видеокадра, информация, указывающая, является ли текущий сегмент слайса зависимым сегментом слайса, не включается в заголовок текущего сегмента слайса.
[79] Когда текущий сегмент слайса не является начальным сегментом слайса, устройство 10 энтропийного видеокодирования может добавлять информацию, указывающую, является ли текущий сегмент слайса зависимым сегментом слайса, в заголовок сегмента слайса.
[80] Т.е., когда информация, указывающая, что зависимый сегмент слайса используется в текущем видеокадре, включена в PPS текущего видеокадра, и информация, указывающая, что текущий сегмент слайса не является начальным сегментом слайса, включена в заголовок текущего сегмента слайса, информация, указывающая, является ли текущий сегмент слайса зависимым сегментом слайса, может дополнительно добавляться в заголовок текущего сегмента слайса. Начальный сегмент слайса согласно примерному варианту осуществления должен быть независимым сегментом слайса. Следовательно, когда текущий сегмент слайса является начальным сегментом слайса, может опускаться информация, указывающая, является ли текущий сегмент слайса зависимым сегментом слайса. Следовательно, устройство 10 энтропийного видеокодирования может добавлять информацию, указывающую, является ли текущий сегмент слайса начальным сегментом слайса, в заголовок сегмента слайса для начального сегмента слайса и затем может добавлять основную информацию о текущем сегменте слайса в заголовок сегмента слайса и может передавать результирующую информацию.
[81] Соответственно, когда зависимый сегмент слайса может использоваться в текущем видеокадре, и текущий сегмент слайса не является начальным сегментом слайса, информация, указывающая, является ли текущий сегмент слайса зависимым сегментом слайса, может дополнительно добавляться в заголовок текущего сегмента слайса.
[82] Однако, когда текущий сегмент слайса является зависимым сегментом слайса, а не начальным сегментом слайса, основная информация о сегменте слайса может быть такой же, что и информация заголовка предыдущего сегмента слайса. Следовательно, заголовок текущего сегмента слайса может передаваться, когда включает информацию, указывающую, является ли текущий сегмент слайса начальным сегментом слайса, и информацию, указывающую, является ли текущий сегмент слайса зависимым сегментом слайса, но опуская информацию, которая такая же, что и информация заголовка предыдущего сегмента слайса.
[83] Когда текущий сегмент слайса согласно примерному варианту осуществления не является зависимым сегментом слайса, заголовок текущего сегмента слайса может включать в себя информацию, указывающую, является ли текущий сегмент слайса зависимым сегментом слайса, и может дополнительно включать в себя различную информацию заголовка для текущего сегмента слайса.
[84] Устройство 10 энтропийного видеокодирования может содержать, в заголовке сегмента слайса, параметр квантования и начальную контекстную информацию контекста для энтропийного кодирования и может передавать результирующую информацию.
[85] Однако, когда текущий сегмент слайса является зависимым сегментом слайса, устройство 10 энтропийного видеокодирования может выполнять предсказание в видеокадре, которое ссылается на кодированные символы предыдущего сегмента слайса, который кодируется раньше текущего сегмента слайса. Когда текущий сегмент слайса является зависимым сегментом слайса, устройство 10 энтропийного видеокодирования может выполнять зависимое энтропийное кодирование, которое ссылается на энтропийную информацию предыдущего сегмента слайса, который кодируется раньше текущего сегмента слайса.
[86] Соответственно, когда текущий сегмент слайса является зависимым сегментом слайса, устройство 10 энтропийного видеокодирования не содержит параметр квантования и начальную контекстную информацию в заголовке сегмента слайса текущего сегмента слайса. Это потому, что параметр квантования и начальная контекстная информация зависимого сегмента слайса могут инициализироваться в параметр квантования и начальную контекстную информацию, которые содержатся в информации заголовка независимого сегмента слайса, который кодируется раньше.
[87] Когда текущий сегмент слайса является независимым сегментом слайса, так как не выполняется предсказание в видеокадре, устройство 10 энтропийного видеокодирования может выводить строку битов