Способ и устройство для прогнозирования вектора движения для кодирования видео или декодирования видео
Иллюстрации
Показать всеИзобретение относится к области кодирования и декодирования видео. Технический результат – повышение эффективности предсказания вектора движения. Способ предсказания вектора движения текущего блока содержит этапы, на которых: определяют совместно размещенное изображение; когда одно из опорного изображения совместно размещенного блока и опорного изображения текущего блока представляет собой долговременное опорное изображение, определяют, что вектор движения совместно размещенного блока недоступен; когда опорное изображение совместно размещенного блока и опорное изображение текущего блока представляют собой долговременные опорные изображения, получают возможный вариант предсказания временного вектора движения без масштабирования вектора движения совместно размещенного блока; принимают информацию прогнозирования возможного варианта блока, который объединяется с текущим блоком; определяют предиктор вектора движения текущего блока из числа возможных вариантов предсказания вектора движения; формируют вектор движения текущего блока с использованием предиктора вектора движения. 1 з.п. ф-лы, 29 ил., 1 табл.
Реферат
Область техники, к которой относится изобретение
Настоящее раскрытие сущности относится к кодированию и декодированию видео, а более конкретно, к кодированию и декодированию видео посредством выполнения внешнего прогнозирования и/или компенсации движения.
Уровень техники
По мере того, как разрабатываются и предоставляются аппаратные средства для воспроизведения и сохранения высококачественного видеоконтента высокого разрешения, растет потребность в видеокодеке для эффективного кодирования или декодирования высококачественного видеоконтента высокого разрешения. В традиционном видеокодеке видео кодируется согласно ограниченному способу кодирования на основе макроблока, имеющего предварительно определенный размер.
Данные изображений в пространственной области преобразуются в коэффициенты в частотной области посредством использования преобразования частоты. В видеокодеке, изображение разбивается на блоки, имеющие предварительно определенный размер, и дискретное косинусное преобразование (DCT) выполняется для каждого блока для того, чтобы кодировать частотные коэффициенты в единицах блоков, с тем чтобы быстро выполнять преобразование частоты. Коэффициенты в частотной области легко просто по сравнению с данными изображений в пространственной области. В частности, поскольку пиксельное значение изображения в пространственной области выражается в ошибке прогнозирования через внешнее прогнозирование или внутреннее прогнозирование видеокодека, большой объем данных может быть преобразован в 0, когда преобразование частоты выполняется в отношении ошибки прогнозирования. Видеокодек заменяет данные, которые возникают непрерывно и многократно, на данные, имеющие небольшой размер, за счет этого уменьшая объем данных.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ЗАДАЧА
Настоящее раскрытие сущности предоставляет способ и устройство для определения вектора движения через прогнозирование векторов движения и предоставляет способ и устройство для кодирования видео, дополняемого посредством внешнего прогнозирования и компенсации движения через прогнозирование векторов движения, а также способ и устройство для декодирования видео, дополняемого посредством компенсации движения через прогнозирование векторов движения.
ТЕХНИЧЕСКОЕ РЕШЕНИЕ
Согласно одному или более вариантов осуществления настоящего раскрытия сущности, предусмотрен способ прогнозирования векторов движения для внешнего прогнозирования, причем способ прогнозирования векторов движения включает в себя: определение множества возможных вариантов блоков, к которым обращаются с тем, чтобы прогнозировать вектор движения текущего блока, из соседних блоков относительно текущего блока; определение возможного варианта вектора движения первого возможного варианта блока во множестве возможных вариантов блоков на основе того, представляют или нет каждое из опорного изображения первого возможного варианта блока и опорного изображения текущего блока собой долговременное опорное изображение; и определение вектора движения текущего блока посредством использования списка возможных вариантов векторов движения, включающего в себя определенный возможный вариант вектора движения первого возможного варианта блока и возможные варианты векторов движения из оставшихся возможных вариантов блоков.
ПРЕИМУЩЕСТВА ИЗОБРЕТЕНИЯ
Согласно одному или более вариантов осуществления, раскрытых в данном документе, когда по меньшей мере одно из текущего блока и опорных изображений текущего блока представляют собой долговременное опорное изображение, опускается операция регулирования размера вектора движения возможного варианта блока или операция обращения к вектору движения возможного варианта блока, и текущий блок может быть прогнозирован посредством обращения к вектору движения другого возможного варианта блока, имеющего относительно высокую точность прогнозирования. Соответственно, может повышаться эффективность операций прогнозирования вектора движения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 является блок-схемой устройства прогнозирования векторов движения согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 2 является блок-схемой устройства прогнозирования векторов движения согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 3 иллюстрирует соседние блоки, пространственно смежные с текущим блоком, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 4A является схемой для описания случая, когда возможный вариант блока представляет собой совместно размещенный блок другого изображения, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 4B является схемой для описания случая, когда возможный вариант блока представляет собой соседний блок идентичного изображения, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 5 является блок-схемой последовательности операций, иллюстрирующей способ кодирования видео, дополняемый посредством способа прогнозирования векторов движения, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 6 является блок-схемой последовательности операций, иллюстрирующей способ декодирования видео, дополняемый посредством способа прогнозирования векторов движения, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 7 является блок-схемой видеокодера, включающего в себя устройство прогнозирования векторов движения, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 8 является блок-схемой видеодекодера, включающего в себя устройство прогнозирования векторов движения, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 9 является блок-схемой устройства кодирования видео на основе единиц кодирования согласно древовидной структуре, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 10 является блок-схемой устройства декодирования видео на основе единиц кодирования согласно древовидной структуре, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 11 является схемой для описания принципа единиц кодирования согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 12 является блок-схемой кодера изображений на основе единиц кодирования согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 13 является блок-схемой декодера изображений на основе единиц кодирования согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 14 является схемой, иллюстрирующей более глубокие единицы кодирования согласно глубинам и сегменты согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 15 является схемой для описания взаимосвязи между единицей кодирования и единицами преобразования, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 16 является схемой для описания информации кодирования единиц кодирования, соответствующих кодированной глубине, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 17 является схемой более глубоких единиц кодирования согласно глубинам, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 18-20 являются схемами для описания взаимосвязи между единицами кодирования, единицами прогнозирования и единицами преобразования, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 21 является схемой для описания взаимосвязи между единицей кодирования, единицей прогнозирования и единицей преобразования, согласно информации режима кодирования по таблице 1;
Фиг. 22 является схемой физической структуры диска, на котором сохраняется программа, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 23 является схемой накопителя на дисках для записи и считывания программы посредством использования диска;
Фиг. 24 является схемой общей структуры системы предоставления контента для предоставления услуг распространения контента;
Фиг. 25 и 26 являются схемами, соответственно, внешней конструкции и внутренней конструкции мобильного телефона, к которому применяются способ кодирования видео и способ декодирования видео, согласно вариантам осуществления настоящего раскрытия сущности;
Фиг. 27 является схемой цифровой широковещательной системы, к которой применяется система связи, согласно вариантам осуществления настоящего раскрытия сущности; и
Фиг. 28 является схемой, иллюстрирующей сетевую структуру облачной вычислительной системы с использованием устройства кодирования видео и устройства декодирования видео, согласно вариантам осуществления настоящего раскрытия сущности.
ОПТИМАЛЬНЫЙ РЕЖИМ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
Согласно вариантам осуществления, раскрытым в данном документе, предусмотрен способ прогнозирования векторов движения для внешнего прогнозирования, причем способ прогнозирования векторов движения включает в себя: определение множества возможных вариантов блоков, к которым обращаются с тем, чтобы прогнозировать вектор движения текущего блока, из соседних блоков относительно текущего блока; определение возможного варианта вектора движения первого возможного варианта блока во множестве возможных вариантов блоков на основе того, представляют или нет каждое из опорного изображения первого возможного варианта блока и опорного изображения текущего блока собой долговременное опорное изображение; и определение вектора движения текущего блока посредством использования списка возможных вариантов векторов движения, включающего в себя определенный возможный вариант вектора движения первого возможного варианта блока и возможные варианты векторов движения из оставшихся возможных вариантов блоков.
Определение возможного варианта вектора движения первого возможного варианта блока может включать в себя, когда как опорное изображение текущего блока, так и опорное изображение первого возможного варианта блока представляют собой долговременные опорные изображения, определение текущего вектора движения первого возможного варианта блока в качестве возможного варианта вектора движения первого возможного варианта блока.
Определение возможного варианта вектора движения первого возможного варианта блока может включать в себя, когда как опорное изображение текущего блока, так и опорное изображение первого возможного варианта блока представляют собой кратковременные опорные изображения, изменение текущего вектора движения первого возможного варианта блока на основе отношения расстояния между текущим изображением и опорным изображением текущего блока и расстояния между изображением первого возможного варианта блока и опорным изображением первого возможного варианта блока и определение измененного текущего вектора движения в качестве возможного варианта вектора движения первого возможного варианта блока.
Первый возможный вариант блока может представлять собой соседний блок относительно текущего блока в текущем изображении, включающем в себя текущий блок, или совместно размещенный блок в том же местоположении, что местоположение текущего блока в изображении, восстановленном до текущего изображения.
Согласно вариантам осуществления, раскрытым в данном документе, предусмотрено устройство прогнозирования векторов движения для внешнего прогнозирования, причем устройство прогнозирования векторов движения включает в себя: модуль определения возможных вариантов блоков для определения множества возможных вариантов блоков, к которым обращаются с тем, чтобы прогнозировать вектор движения текущего блока, из соседних блоков относительно текущего блока, и определения возможного варианта вектора движения первого возможного варианта блока во множестве возможных вариантов блоков на основе того, представляют или нет каждое из опорного изображения первого возможного варианта блока и опорного изображения текущего блока собой долговременное опорное изображение; и модуль определения векторов движения для определения вектора движения текущего блока посредством использования списка возможных вариантов векторов движения, включающего в себя определенный возможный вариант вектора движения первого возможного варианта блока и возможные варианты векторов движения из оставшихся возможных вариантов блоков.
Согласно вариантам осуществления, раскрытым в данном документе, предусмотрен машиночитаемый носитель записи, имеющий записанную программу для осуществления способа прогнозирования векторов движения.
НАИЛУЧШИЙ РЕЖИМ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
Ниже в этом документе описываются устройство прогнозирования векторов движения и способ определения векторов движения согласно вариантам осуществления настоящего раскрытия сущности со ссылкой на фиг. 1-4B. Кроме того, способы кодирования и декодирования видео и устройства кодирования и декодирования видео, дополняемые посредством способа прогнозирования векторов движения, согласно вариантам осуществления настоящего раскрытия сущности, описываются со ссылкой на фиг. 5 и 8. Кроме того, операции кодирования видео и операции декодирования видео, дополняемые посредством операций прогнозирования векторов движения и на основе единиц кодирования, имеющих древовидную структуру, согласно вариантам осуществления настоящего раскрытия сущности, описываются со ссылкой на фиг. 9-21. В дальнейшем в этом документе, "изображение" может обозначать неподвижное изображение или движущееся изображение видео либо само видео.
Сначала описываются устройство прогнозирования векторов движения и способ определения векторов движения согласно вариантам осуществления, раскрытым в данном документе, со ссылкой на фиг. 1-4B. Далее описываются способы кодирования и декодирования видео и устройства кодирования и декодирования видео, которые дополняются посредством способа прогнозирования векторов движения, согласно вариантам осуществления, раскрытым в данном документе, со ссылкой на фиг. 5 и 8.
Фиг. 1 является блок-схемой устройства 10 прогнозирования векторов движения согласно вариантам осуществления настоящего раскрытия сущности.
Устройство 10 прогнозирования векторов движения включает в себя модуль 12 определения возможных вариантов блоков и модуль 14 определения векторов движения.
Внешнее прогнозирование использует подобие между текущим изображением и другим изображением. Опорная область, аналогичная текущей области текущего изображения, обнаруживается из опорного изображения, восстановленного до текущего изображения. Расстояние между текущей областью и опорной областью в координатах выражается в векторе движения, а разность между пиксельными значениями текущей области и опорной области выражается как остаточные данные. Соответственно, вместо прямого вывода информации изображений текущей области, индекс, указывающий опорное изображение, вектор движения и остаточные данные, может выводиться через внешнее прогнозирование текущей области.
Устройство 10 прогнозирования векторов движения согласно варианту осуществления может выполнять внешнее прогнозирование согласно блокам каждого изображения видео. Блок может иметь квадратную форму, прямоугольную форму или произвольную геометрическую форму и не ограничивается единицей данных, имеющей предварительно определенный размер. Блок согласно варианту осуществления может представлять собой максимальную единицу кодирования, единицу кодирования, единицу прогнозирования или единицу преобразования, из единиц кодирования согласно древовидной структуре. Далее описываются операции кодирования и декодирования видео на основе единиц кодирования согласно древовидной структуре, со ссылкой на фиг. 9-21.
Опорное изображение, используемое для внешнего прогнозирования текущего изображения, должно декодироваться до текущего изображения. Опорное изображение для внешнего прогнозирования согласно варианту осуществления может классифицироваться на кратковременное опорное изображение и долговременное опорное изображение. Декодированный буфер изображений сохраняет восстановленные изображения, сформированные через компенсацию движения предыдущих изображений. Сформированные восстановленные изображения могут быть использованы в качестве опорных изображений для внешнего прогнозирования других изображений. Соответственно по меньшей мере одно кратковременное опорное изображение или по меньшей мере одно долговременное опорное изображение для внешнего прогнозирования текущего изображения могут быть выбраны из числа восстановленных изображений, сохраненных в декодированном буфере изображений. Кратковременное опорное изображение может представлять собой изображение, декодированное непосредственно или недавно перед текущим изображением согласно порядку декодирования, тогда как долговременное опорное изображение может представлять собой изображение, декодированное задолго до текущего изображения, но выбирается и сохраняется в декодированном буфере изображений для использования в качестве опорного изображения для внешнего прогнозирования других изображений.
Вектор движения текущего блока может быть определен посредством обращения к вектору движения другого блока для прогнозирования векторов движения, объединения единиц прогнозирования (PU) или усовершенствованного прогнозирования векторов движения (AMVP).
Устройство 10 прогнозирования векторов движения может определять вектор движения текущего блока посредством обращения к вектору движения другого блока, пространственно смежного или смежного во времени с текущим блоком. Устройство 10 прогнозирования векторов движения может определять список возможных вариантов векторов движения, включающий в себя множество векторов движения возможных вариантов блоков, к которым можно обращаться. Устройство 10 прогнозирования векторов движения может определять вектор движения текущего блока посредством обращения к одному вектору движения, выбранному из списка возможных вариантов векторов движения.
Модуль 12 определения возможных вариантов блоков может определять множество возможных вариантов блоков, к которым можно обращаться с тем, чтобы прогнозировать вектор движения текущего блока, из числа соседних блоков, окружающих текущий блок.
Возможный вариант блока согласно вариантам осуществления настоящего раскрытия сущности может представлять собой соседний блок, смежный с текущим блоком в текущем изображении текущего блока, или совместно размещенный блок в местоположении, идентичном местоположению текущего блока в изображении, восстановленном до текущего изображения.
Модуль 14 определения векторов движения может формировать список возможных вариантов векторов движения, включающий в себя возможные варианты векторов движения множества возможных вариантов блоков, к которым обращаются с тем, чтобы прогнозировать вектор движения текущего блока.
Модуль 14 определения векторов движения может определять вектор движения возможного варианта блока из множества возможных вариантов блоков в качестве возможного варианта вектора движения, как один в списке возможных вариантов векторов движения, на основе того, представляют или нет опорное изображение возможного варианта блока и опорное изображение текущего блока собой долговременное опорное изображение. Модуль 14 определения векторов движения может выбирать текущий вектор движения возможного варианта блока в качестве возможного варианта вектора движения или масштабировать текущий вектор движения и затем выбирать масштабированный текущий вектор движения в качестве возможного варианта вектора движения. Определенный возможный вариант вектора движения может быть включен в список возможных вариантов векторов движения.
Когда опорное изображение возможного варианта блока отличается от опорного изображения текущего блока, модуль 14 определения векторов движения может определять то, представляют или нет опорное изображение текущего блока и опорное изображение возможного варианта блока собой долговременное опорное изображение. Модуль 14 определения векторов движения может определять то, как использовать вектор движения возможного варианта блока, на основе того, представляют опорные изображения текущего блока и возможного варианта блока собой кратковременное опорное изображение или долговременное опорное изображение.
Когда опорное изображение текущего блока и опорное изображение возможного варианта блока представляют собой долговременные опорные изображения, модуль 14 определения векторов движения может определять текущий вектор движения возможного варианта блока в качестве возможного варианта вектора движения. Здесь, текущий вектор движения возможного варианта блока включается в список возможных вариантов векторов движения без масштабирования.
Когда опорное изображение текущего блока и опорное изображение возможного варианта блока представляют собой кратковременное опорное изображение, модуль 14 определения векторов движения может масштабировать текущий вектор движения возможного варианта блока. Здесь, модуль 12 определения возможных вариантов блоков может масштабировать текущий вектор движения возможного варианта блока на основе отношения расстояния между текущим изображением и опорным изображением текущего блока и расстояния между изображением возможного варианта блока и опорным изображением возможного варианта блока. Модуль 14 определения векторов движения может включать масштабированный текущий вектор движения возможного варианта блока в список возможных вариантов векторов движения.
Когда одно из опорного изображения текущего блока и опорного изображения возможного варианта блока представляет собой кратковременное опорное изображение, а другое представляет собой долговременное опорное изображение, модуль 14 определения векторов движения может определять не использовать вектор движения возможного варианта блока в качестве возможного варианта вектора движения списка возможных вариантов векторов движения. Информация вероятности опорного изображения возможного варианта блока может задаваться как деактивированное состояние.
Альтернативно, когда одно из опорного изображения текущего блока и опорного изображения возможного варианта блока представляет собой кратковременное опорное изображение, а другое представляет собой долговременное опорное изображение, возможный вариант вектора движения первого возможного варианта блока может задаваться равным 0.
Модуль 14 определения векторов движения может определять по меньшей мере один возможный вариант вектора движения из списка возможных вариантов векторов движения и определять вектор движения текущего блока посредством использования выбранного по меньшей мере одного возможного варианта вектора движения. Модуль 14 определения векторов движения может копировать, комбинировать или модифицировать по меньшей мере один возможный вариант вектора движения, чтобы определять вектор движения текущего блока.
Фиг. 2 является блок-схемой последовательности операций, иллюстрирующей способ прогнозирования векторов движения согласно вариантам осуществления настоящего раскрытия сущности.
Вектор движения текущего блока может быть прогнозирован посредством использования вектора движения блока, временно или пространственно смежного с текущим блоком, посредством использования устройства 10 прогнозирования векторов движения согласно вариантам осуществления настоящего раскрытия сущности. Альтернативно, может определяться множество возможных вариантов блоков, допускающих прогнозирование вектора движения, может выбираться один из возможных вариантов блоков, и вектор движения текущего блока может определяться посредством обращения к вектору движения выбранного возможного варианта блока.
Когда опорное изображение, указываемое посредством опорного индекса предварительно определенного возможного варианта блока из числа возможных вариантов блоков, отличается от опорного изображения текущего блока, и устройство 10 прогнозирования векторов движения прогнозирует вектор движения текущего блока посредством обращения к вектору движения предварительно определенного возможного варианта блока, точность прогнозного вектора движения может быть низкой, даже когда вектор движения предварительно определенного возможного варианта блока масштабируется. Соответственно, когда опорное изображение текущего блока и опорное изображение предварительно определенного возможного варианта блока отличаются друг от друга, устройство 10 прогнозирования векторов движения может определять то, следует или нет масштабировать и обращаться к вектору движения предварительно определенного возможного варианта блока, либо то, следует или нет не обращаться к соответствующему вектору движения.
Ниже описывается способ прогнозирования векторов движения, в котором вектор движения текущего блока прогнозируется из вектора движения возможного варианта блока посредством устройства 10 прогнозирования векторов движения, со ссылкой на этапы 21, 23 и 25 по фиг. 2.
На этапе 21, устройство 10 прогнозирования векторов движения может определять возможные варианты блоков, к которым следует обращаться, из соседних блоков, пространственно смежных с текущим блоком, или из блоков в местоположении, идентичном местоположению текущего блока, из числа изображений во времени до или рядом с текущим изображением.
На этапе 23, устройство 10 прогнозирования векторов движения может определять вектор движения первого возможного варианта блока в качестве возможного варианта вектора движения текущего блока на основе того, представляют или нет опорное изображение текущего блока и опорное изображение первого возможного варианта блока собой долговременное опорное изображение.
На этапе 25, устройство 10 прогнозирования векторов движения может определять список возможных вариантов векторов движения, включающий в себя возможный вариант вектора движения первого возможного варианта блока и возможные варианты векторов движения из оставшихся возможных вариантов блоков. Устройство 10 прогнозирования векторов движения может определять вектор движения текущего блока посредством использования по меньшей мере одного возможного варианта вектора движения в списке возможных вариантов векторов движения.
Когда опорное изображение первого возможного варианта блока отличается от опорного изображения текущего блока, устройство 10 прогнозирования векторов движения может определять то, следует или нет использовать вектор движения первого возможного варианта блока в качестве возможного варианта вектора движения в списке возможных вариантов векторов движения, на основе того, представляют или нет опорное изображение текущего блока и опорное изображение первого возможного варианта блока собой кратковременное опорное изображение или долговременное опорное изображение.
Устройство 10 прогнозирования векторов движения может определять то, представляет или нет опорное изображение текущего блока собой долговременное опорное изображение, посредством использования долговременного опорного индекса, указывающего то, представляет или нет опорное изображение текущего блока собой долговременное опорное изображение. Аналогично, определяется то, представляет или нет опорное изображение первого возможного варианта блока собой долговременное опорное изображение, посредством использования долговременного опорного индекса первого возможного варианта блока.
На этапе 25, когда опорные изображения текущего блока и первого возможного варианта блока представляют собой долговременные опорные изображения, устройство 10 прогнозирования векторов движения может включать текущий вектор движения первого возможного варианта блока в список возможных вариантов векторов движения без масштабирования текущего вектора движения первого возможного варианта блока.
На этапе 25, когда одно из опорных изображений представляет собой кратковременное опорное изображение, а другое представляет собой долговременное опорное изображение, может быть определено то, что вектор движения первого возможного варианта блока не используется в списке возможных вариантов векторов движения.
На этапе 25, когда оба опорных изображения представляют собой кратковременные опорные изображения, текущий вектор движения первого возможного варианта блока может масштабироваться согласно отношению расстояния между опорными изображениями текущего изображения и текущего блока и расстояния между изображением первого возможного варианта блока и опорным изображением первого возможного варианта блока. Масштабированный текущий вектор движения может быть включен в список возможных вариантов векторов движения.
Устройство 10 прогнозирования векторов движения может определять список возможных вариантов векторов движения через этапы 21, 23 и 25. Когда только одно из опорных изображений представляет собой долговременное опорное изображение, устройство 10 прогнозирования векторов движения исключает вектор движения первого возможного варианта блока из списка возможных вариантов векторов движения, и в силу этого к нему не обращаются. Соответственно, устройство 10 прогнозирования векторов движения может определять вектор движения текущего блока посредством обращения к оставшимся векторам движения в списке возможных вариантов векторов движения.
Когда оба опорных изображения представляют собой долговременные опорные изображения, устройство 10 прогнозирования векторов движения включает вектор движения первого возможного варианта блока в список возможных вариантов векторов движения без масштабирования. Соответственно, устройство 10 прогнозирования векторов движения может выбирать оптимальный опорный вектор движения из числа вектора движения первого возможного варианта блока и оставшегося возможного варианта вектора движения и определять вектор движения текущего блока на основе выбранного оптимального опорного вектора движения.
Когда оба опорных изображения представляют собой кратковременные опорные изображения, устройство 10 прогнозирования векторов движения масштабирует текущий вектор движения первого возможного варианта блока и включает масштабированный текущий вектор движения в список возможных вариантов векторов движения, в качестве возможного варианта вектора движения. Соответственно, устройство 10 прогнозирования векторов движения может выбирать оптимальный опорный вектор движения из числа возможного варианта вектора движения первого возможного варианта блока и оставшихся возможных вариантов векторов движения и определять вектор движения текущего блока посредством использования выбранного оптимального опорного вектора движения.
Как описано выше, согласно устройству 10 прогнозирования векторов движения и способу прогнозирования векторов движения, описанным выше со ссылкой на фиг. 1 и 2, когда по меньшей мере одно из опорных изображений представляет собой долговременное опорное изображение, может опускаться операция масштабирования вектора движения возможного варианта блока или операция обращения к вектору движения возможного варианта блока.
Другими словами, если вектор движения текущего блока прогнозируется посредством обращения к вектору движения возможного варианта блока, когда опорное изображение текущего блока и опорное изображение возможного варианта блока отличаются друг от друга, и по меньшей мере одно из опорных изображений представляет собой долговременное опорное изображение, точность прогнозного вектора движения может быть низкой. Таким образом, может опускаться операция обращения к вектору движения возможного варианта блока, точность прогнозирования которого является низкой, и текущий блок может быть прогнозирован посредством обращения к вектору движения другого возможного варианта блока, точность прогнозирования которого является относительно высокой. Соответственно, может повышаться эффективность прогнозирования вектора движения.
Фиг. 3 иллюстрирует соседние блоки, пространственно смежные с текущим блоком 20, согласно вариантам осуществления настоящего раскрытия сущности.
Чтобы прогнозировать информацию кодирования текущего блока 20, можно обращаться к информации кодирования по меньшей мере одного из блока A0 21, блока A1 22, блока B0 23, блока B1 24 и блока B2 25 из числа соседних блоков, пространственно смежных с текущим блоком 20. На фиг. 3, размеры блока A0 21, блока A1 22, блока B0 23, блока B1 24 и блока B2 25 не показывают фактические размеры соседних блоков. Здесь, блок A0 21, блок A1 22, блок B0 23, блок B1 24 и блок B2 25 показывают блоки, расположенные в относительных направлениях относительно текущего блока 20.
Координата X блока увеличивается слева направо, и координата Y блока увеличивается сверху вниз. Блок A0 21 может представлять собой блок, включающий в себя выборку, координаты X и Y которой меньше нижней левой выборки. Блок A1 22 может представлять собой блок, включающий в себя выборки, координата X которых меньше, но координата Y является идентичной нижней левой выборке. Блок B0 23 может представлять собой блок, включающий в себя выборку, координаты X и Y которой больше верхней правой выборки. B1 24 может представлять собой блок, включающий в себя выборку, координата Y которой меньше, но координата X является идентичной верхней правой выборке. Блок B2 25 может представлять собой блок, включающий в себя выборку, координаты X и Y которой меньше верхней левой выборки.
Устройство 10 прогнозирования векторов движения может использовать блок A0 21, блок A1 22, блок B0 23, блок B1 24 и блок B2 25 в качестве возможных вариантов блоков, чтобы прогнозировать вектор движения текущего блока 20. Соответственно, устройство 10 прогнозирования векторов движения может обращаться к информации кодирования блока A0 21, блока A1 22, блока B0 23, блока B1 24 и блока B2 25 из числа соседних блоков, окружающих текущий блок 20.
Устройство 10 прогнозирования векторов движения может определять возможный вариант блока, который должен представлять собой опорный блок для текущего блока, и информация прогнозирования которого должна быть объединена с информацией прогнозирования текущего блока 20 посредством использования возможных вариантов векторов движения, включенных в список возможных вариантов векторов движения. Информация прогнозирования определенного возможного варианта блока может быть кодирована как информация прогнозирования текущего блока.
Например, когда информация кодирования блока A0 21 из числа блока A0 21, блока A1 22, блока B0 23, блока B1 24 и блока B2 25 является идентичной информации кодирования текущего блока 20, текущий блок 20 может быть объединен и кодирован с блоком A0 21. Посредством объединения текущего блока 20 и блока A0 21, не кодируется многократно перекрывающаяся часть информации кодирования блока A0 21 и текущего блока 20. Соответственно, когда кодер выводит информацию кодирования блока A0 21, информация кодирования текущего блока 20 может не выводиться снова. Даже когда информация кодирования текущего блока 20 не анализируется синтаксически, в то время как приемное устройство синтаксически анализирует информацию кодирования для блоков, включающих в себя текущий блок 20 и блок A0 21, которые взаимно объединяются, декодер может декодировать текущий блок 20 посредством использования информации кодирования, синтаксически проанализированной заранее для блока A0 21.
Устройство 10 прогнозирования векторов движения может прогнозировать вектор движения текущего блока 20 посредством комбинирования по меньшей мере одного из возможных вариантов векторов движения в списке воз