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

Иллюстрации

Показать все

Изобретение относится к кодированию и декодированию видео. Техническими результатами являются уменьшение числа передаваемых битов и упрощение операции синтаксического анализа данных. В устройстве компенсации движения видео с помощью процессора принимают информацию типа сегмента текущей единицы кодирования и определяют размер текущей единицы прогнозирования. Определяют L0-список опорных изображений, содержащий прямое опорное изображение и обратное опорное изображение, и L1-список, содержащий обратное опорное изображение и прямое опорное изображение. Получают бит, указывающий одно из L0-прогнозирования, L1-прогнозирования и бипрогнозирования для текущей единицы прогнозирования посредством выполнения контекстного, энтропийного декодирования над потоком битов с использованием индекса первой или второй контекстной модели для первого и/или второго элемента выборки, и выполняют L0-прогнозирование, L1-прогнозирование или бипрогнозирование согласно упомянутому биту. При этом L0-прогнозирование обращается к L0-списку, L1-прогнозирование обращается к L1-списку и бипрогнозирование обращается к L0-списку и к L1-списку. 2 з.п. ф-лы, 27 ил., 1 табл.

Реферат

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

Настоящее раскрытие сущности относится к кодированию и декодированию видео с применением внешнего прогнозирования.

Уровень техники

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

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

Сущность изобретения

Техническая задача

Настоящее раскрытие сущности предоставляет способ определения списка опорных изображений для внешнего прогнозирования и способ внешнего прогнозирования согласно способу.

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

Техническое решение

Согласно аспекту настоящего раскрытия сущности, предусмотрен способ прогнозирования движения, причем способ прогнозирования движения включает в себя в себя: определение, когда текущий слайс представляет собой B-слайс, списка опорных изображений, используемого посредством текущей единицы прогнозирования из единиц прогнозирования, включенных в единицу кодирования; и вывод, когда размер текущей единицы прогнозирования составляет 4x8 или 8x4, информации индекса внешнего прогнозирования для текущей единицы прогнозирования, указывающей список опорных изображений из L0-списка и L1-списка, а когда размер текущей единицы прогнозирования не составляет 4x8 или 8x4, информации индекса внешнего прогнозирования текущей единицы прогнозирования, указывающей список опорных изображений из L0-списка, L1-списка и списка бипрогнозирования.

Преимущества изобретения

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

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

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

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

Фиг. 1B является блок-схемой последовательности операций, иллюстрирующей способ определения опорного изображения согласно одному или более вариантов осуществления;

Фиг. 2A является блок-схемой, иллюстрирующей устройство прогнозирования движения, включающее в себя устройство определения опорных изображений согласно одному или более вариантов осуществления;

Фиг. 2B является блок-схемой последовательности операций, иллюстрирующей способ прогнозирования движения согласно одному или более вариантов осуществления;

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

Фиг. 3B является блок-схемой последовательности операций, иллюстрирующей способ компенсации движения согласно одному или более вариантов осуществления;

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

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

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

Фиг. 7 является схемой для описания принципа единиц кодирования согласно одному или более вариантов осуществления;

Фиг. 8 является блок-схемой кодера изображений на основе единиц кодирования согласно одному или более вариантов осуществления;

Фиг. 9 является блок-схемой декодера изображений на основе единиц кодирования согласно одному или более вариантов осуществления;

Фиг. 10 является схемой, иллюстрирующей более глубокие единицы кодирования согласно глубинам и сегментам согласно одному или более вариантов осуществления;

Фиг. 11 является схемой для описания взаимосвязи между единицей кодирования и единицами преобразования, согласно одному или более вариантов осуществления;

Фиг. 12 является схемой для описания информации кодирования единиц кодирования, соответствующих кодированной глубине, согласно одному или более вариантов осуществления;

Фиг. 13 является схемой более глубоких единиц кодирования согласно глубинам, согласно одному или более вариантов осуществления;

Фиг. 14-16 являются схемами для описания взаимосвязи между единицами кодирования, единицами прогнозирования и единицами преобразования, согласно одному или более вариантов осуществления;

Фиг. 17 является схемой для описания взаимосвязи между единицей кодирования, единицей прогнозирования и единицей преобразования, согласно информации режима кодирования по таблице 1;

Фиг. 18 иллюстрирует физическую структуру диска, на котором сохраняется программа, согласно одному или более вариантов осуществления;

Фиг. 19 иллюстрирует накопитель на дисках для записи и считывания программы посредством использования диска;

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

Фиг. 21 и 22 иллюстрируют внешнюю конструкцию и внутреннюю конструкцию мобильного телефона, к которому применяются способ кодирования видео и способ декодирования видео согласно вариантам осуществления настоящего раскрытия сущности;

Фиг. 23 иллюстрирует цифровую широковещательную систему, в которой применяется система связи согласно одному или более вариантов осуществления, согласно одному или более вариантов осуществления; и

Фиг. 24 иллюстрирует сетевую структуру облачной вычислительной системы с использованием устройства кодирования видео и устройства декодирования видео согласно одному или более вариантов осуществления.

Оптимальный режим осуществления изобретения

Согласно аспекту настоящего раскрытия сущности, предусмотрен способ прогнозирования движения, причем способ прогнозирования движения включает в себя в себя: определение, когда текущий слайс представляет собой B-слайс, списка опорных изображений, используемого посредством текущей единицы прогнозирования из единиц прогнозирования, включенных в единицу кодирования; и вывод, когда размер текущей единицы прогнозирования составляет 4x8 или 8x4, информации индекса внешнего прогнозирования для текущей единицы прогнозирования, указывающей список опорных изображений из L0-списка и L1-списка, а когда размер текущей единицы прогнозирования не составляет 4x8 или 8x4, информации индекса внешнего прогнозирования текущей единицы прогнозирования, указывающей список опорных изображений из L0-списка, L1-списка и списка бипрогнозирования.

Способ прогнозирования движения дополнительно может включать в себя: определение того, разрешается или нет внешнее прогнозирование, при котором список бипрогнозирования, включающий в себя L0-список и L1-список, используется для текущей единицы прогнозирования, относительно единицы прогнозирования размера 4x8 или 8x4 в текущем слайсе; и включение информации ограничения бипрогнозирования, указывающей то, что внешнее прогнозирование, при котором список бипрогнозирования используется для текущей единицы прогнозирования, не разрешается относительно единицы прогнозирования размера 4x8 или 8x4, в заголовок слайса текущего слайса.

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

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

Согласно другому аспекту настоящего раскрытия сущности, предусмотрен способ компенсации движения, причем способ компенсации движения включает в себя: получение, когда текущий слайс представляет собой B-слайс, информации индекса внешнего прогнозирования, указываемой согласно типу списка опорных изображений, который должен быть использован посредством текущей единицы прогнозирования из единиц прогнозирования, включенных в единицу кодирования; и определение, когда размер текущей единицы прогнозирования составляет 4x8 или 8x4, списка опорных изображений текущей единицы прогнозирования на основе информации индекса внешнего прогнозирования, указывающей то, что список опорных изображений представляет собой один из L0-списка и L1-списка, а когда размер текущей единицы прогнозирования не составляет 4x8 или 8x4, определение списка опорных изображений текущей единицы прогнозирования на основе информации индекса внешнего прогнозирования, указывающей то, что список опорных изображений представляет собой один из L0-списка, L1-списка и списка бипрогнозирования.

Способ компенсации движения дополнительно может включать в себя: синтаксический анализ информации ограничения бипрогнозирования, указывающей то, разрешается или нет внешнее прогнозирование относительно единицы прогнозирования размера 4x8 или 8x4, из заголовка слайса текущего слайса; и определение того, разрешается или нет внешнее прогнозирование, при котором список бипрогнозирования, включающий в себя L0-список и L1-список, используется для текущей единицы прогнозирования, относительно единицы прогнозирования размера 4x8 или 8x4 в текущем слайсе на основе синтаксически проанализированной информации ограничения бипрогнозирования.

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

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

Согласно другому аспекту настоящего раскрытия сущности, предусмотрено устройство прогнозирования движения, включающее в себя: модуль прогнозирования движения для определения, когда текущий слайс представляет собой B-слайс, списка опорных изображений, который должен быть использован посредством текущей единицы прогнозирования из единиц прогнозирования, включенных в единицу кодирования, и опорного блока для текущей единицы прогнозирования из восстановленных изображений, принадлежащих списку опорных изображений; и модуль вывода информации внешнего прогнозирования для вывода, когда размер текущей единицы прогнозирования составляет 4x8 или 8x4, информации индекса внешнего прогнозирования для текущей единицы прогнозирования, указывающей то, что список опорных изображений представляет собой один из L0-списка и L1-списка, а когда размер текущей единицы прогнозирования не составляет 4x8 или 8x4, информации индекса внешнего прогнозирования текущей единицы прогнозирования, указывающей список опорных изображений, который представляет собой один из L0-списка, L1-списка и списка бипрогнозирования.

Согласно другому аспекту настоящего раскрытия сущности, предусмотрено устройство компенсации движения, включающее в себя: модуль получения информации внешнего прогнозирования для получения, когда текущий слайс представляет собой B-слайс, информации индекса внешнего прогнозирования, указывающей список опорных изображений согласно типу списка опорных изображений, который должен быть использован посредством текущей единицы прогнозирования из единиц прогнозирования, включенных в единицу кодирования; и модуль компенсации движения для определения, когда размер текущей единицы прогнозирования составляет 4x8 или 8x4, списка опорных изображений текущей единицы прогнозирования на основе информации индекса внешнего прогнозирования текущей единицы прогнозирования, указывающей то, что список опорных изображений представляет собой один из L0-списка и L1-списка, и определения, когда размер текущей единицы прогнозирования не составляет 4x8 или 8x4, списка опорных изображений текущей единицы прогнозирования на основе информации индекса внешнего прогнозирования текущей единицы прогнозирования, указывающей то, что список опорных изображений представляет собой один из L0-списка, L1-списка и списка бипрогнозирования, и выполнения компенсации движения над текущей единицей прогнозирования посредством использования определенного списка опорных изображений.

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

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

Оптимальный режим осуществления изобретения

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

В дальнейшем в этом документе, описываются способ и устройство для определения опорного изображения, для которого является возможным однонаправленное прогнозирование или двунаправленное прогнозирование согласно одному или более вариантов осуществления, а также способ и устройство для прогнозирования движения согласно способу и устройству для определения и способ и устройств для компенсации движения, со ссылкой на фиг. 1A-4. Кроме того, описываются устройство кодирования видео и устройство декодирования видео согласно одному или более вариантов осуществления на основе единицы кодирования, имеющей древовидную структуру, согласно одному или более вариантов осуществления, а также способ кодирования видео и способ декодирования видео согласно одному или более вариантов осуществления, со ссылкой на фиг. 5-17. Кроме того, описываются варианты осуществления, в которых способ кодирования видео и способ декодирования видео согласно вариантам осуществления, со ссылкой на фиг. 18-24. В дальнейшем в этом документе, "изображение" может означать неподвижное изображение видео или движущегося изображения, т.е. само видео.

Фиг. 1A является блок-схемой, иллюстрирующей устройство 10 определения опорных изображений согласно одному или более вариантов осуществления. Фиг. 1B является блок-схемой последовательности операций, иллюстрирующей способ определения опорного изображения согласно одному или более вариантов осуществления.

Устройство 10 определения опорных изображений включает в себя модуль 12 определения списков опорных изображений и модуль 14 определения опорных индексов.

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

Устройство 10 определения опорных изображений может включать в себя, по меньшей мере, один модуль хранения данных (не показан), в котором сохраняются входные и выходные данные модуля 12 определения списков опорных изображений и модуля 14 определения опорных индексов. Устройство 10 определения опорных изображений может включать в себя модуль управления запоминающим устройством (не показан), который отвечает за ввод и вывод данных модуля хранения данных (не показан).

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

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

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

Внешнее прогнозирование для изображения на основе B-слайсов может включать в себя прямое прогнозирование и обратное прогнозирование. При прямом прогнозировании можно обращаться к изображениям, имеющим номера POC (номера в последовательности изображений), которые предшествуют текущему изображению, для того чтобы выполнять внешнее прогнозирование текущего изображения. Напротив, при обратном прогнозировании можно обращаться к изображениям, имеющим POC-номера, которые находятся после POC-номера текущего изображения, для того чтобы выполнять внешнее прогнозирование текущего изображения.

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

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

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

Для внешнего прогнозирования текущего изображения опорное изображение может определяться, по меньшей мере, из одного из списков опорных изображений в виде L0-списка и L1-списка. Модуль 12 определения списков опорных изображений может определять то, какой список опорных изображений использовать для внешнего прогнозирования текущего изображения, на основе B-слайсов.

Например, может определяться то, использует текущий слайс L0-список или L1-список. Кроме того, для текущего слайса может выполняться бипрогнозирование, при котором используется список бипрогнозирования, включающий в себя как L0-список, так и L1-список.

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

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

Когда слайс представляет собой тип B-слайса, для которого является возможным унипрогнозирование или бипрогнозирование, модуль 12 определения списков опорных изображений может определять список опорных изображений блока в качестве одного из L0-списка, L1-списка и списка бипрогнозирования. Модуль 12 определения списков опорных изображений может определять список опорных изображений, используемый при внешнем прогнозировании слайса. Список опорных изображений может определяться в качестве одного из L0-списка, L1-списка и списка бипрогнозирования.

Согласно одному или более вариантов осуществления, типы списков опорных изображений, которые могут использоваться при внешнем прогнозировании, могут быть ограничены согласно размеру блока. Например, когда размер блока в типе B-слайса составляет 4x8 или 8x4, может разрешаться внешнее прогнозирование, которое использует один список опорных изображений из L0-списка и L1-списка. Внешнее прогнозирование, которое использует список бипрогнозирования, может не разрешаться для блока в типе B-слайса.

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

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

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

На этапе 11, модуль 12 определения списков опорных изображений может проверять тип слайса для слайса, которая включает в себя блок. На этапе 13, модуль 12 определения списков опорных изображений может определять список опорных изображений блока в качестве одного из L0-списка, L1-списка и списка бипрогнозирования, если тип текущего слайса представляет собой тип B-слайса.

На этапе 15, если список опорных изображений, определенный посредством модуля 12 определения списков опорных изображений, не представляет собой L1-список, модуль 14 определения опорных индексов может определять в качестве опорного индекса для блока, опорный L0-индекс из L0-списка. Иными словами, когда список опорных изображений представляет собой L0-список или список бипрогнозирования, по меньшей мере, один опорный индекс может выбираться из L0-списка.

Если список опорных изображений, определенный посредством модуля 12 определения списков опорных изображений, представляет собой L1-список, опорный L0-индекс не определяется, а способ переходит к этапу 17.

На этапе 17, когда список опорных изображений, определенный посредством модуля 12 определения списков опорных изображений, не представляет собой L0-список, модуль 14 определения опорных индексов может определять опорный L1-индекс из L1-списка в качестве опорного индекса для блока. Иными словами, когда список опорных изображений представляет собой L1-список или список бипрогнозирования, по меньшей мере, один опорный индекс может выбираться из L1-списка.

Соответственно, когда список опорных изображений представляет собой список бипрогнозирования, по меньшей мере, один опорный L0-индекс может определяться из L0-списка, и, по меньшей мере, один опорный L1-индекс может определяться из L1-списка.

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

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

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

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

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

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

Согласно одному или более вариантов осуществления, когда сумма размеров по горизонтали и вертикали блока в типе B-слайса равна 12, как и в случае размера блока 4x8 или 8x4, не разрешается внешнее прогнозирование, при котором используется список бипрогнозирования. Таким образом, информация индекса внешнего прогнозирования блока может указывать L0-список или L1-список. Только список опорных изображений, за исключением списка бипрогнозирования, может определяться в качестве информации индекса внешнего прогнозирования. Соответственно, в качестве информации индекса внешнего прогнозирования блока, определяется битовая строка, указывающая прогнозирование из L0-списка или прогнозирование из L1-списка, и может не определяться битовая строка, указывающая бипрогнозирование.

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

В дальнейшем в этом документе, описывается операция выполнения прогнозирования движения посредством использования опорного изображения, определенного посредством использования устройства 10 определения опорных изображений, со ссылкой на фиг. 2A и 2B. Кроме того, описывается операция выполнения компенсации движения посредством использования опорного изображения, определенного посредством использования устройства 10 определения опорных изображений, со ссылкой на фиг. 3A и 3B.

Фиг. 2A является блок-схемой, иллюстрирующей устройство 20 прогнозирования движения, включающее в себя устройство 10 определения опорных изображений согласно одному или более вариантов осуществления. Фиг. 2B является блок-схемой последовательности операций, иллюстрирующей способ прогнозирования движения согласно одному или более вариантов осуществления.

Устройство 20 прогнозирования движения включает в себя модуль 22 прогнозирования движения и модуль 24 вывода информации внешнего прогнозирования.

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

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

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

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

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

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

Текущий блок, в котором выполняется внешнее прогнозирование, может упоминаться в качестве единицы прогнозирования. На этапе 21, модуль 22 прогнозирования движения может определять опорный список, используемый посредством текущей единицы прогнозирования из единиц прогнозирования, когда текущий слайс, в который включена единица кодирования, представляет собой B-слайс. В качестве опорного списка может определяться L0-список, L1-список или список бипрогнозирования.

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

Когда размер текущего блока составляет 4x8 или 8x4, индекс внешнего прогнозирования текущего блока может указывать список опорных изображений, который представляет собой один из L0-списка и L1-списка. Когда размер текущего блока не составляет 4x8 или 8x4, индекс внешнего прогнозирования текущего блока может указывать список опорных изображений, который представляет собой один из L0-списка, L1-списка и списка бипрогнозирования.

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

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

Кроме того, если информация индекса внешнего прогнозирования не представляет L1-прогнозирование, модуль 24 вывода информации ин