СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ ВИДЕОПОСЛЕДОВАТЕЛЬНОСТИ И ОКОНЕЧНОЕ УСТРОЙСТВО Российский патент 2022 года по МПК H04N19/51 H04N19/56 H04N19/21 H04N19/176 H04N19/182 

Описание патента на изобретение RU2770423C1

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

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

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

В широком диапазоне цифровых видео приложений используется кодирование видео (кодирование и декодирование видео), например, широковещательное цифровое телевидение, передачи видео через интернет и мобильные сети, чат-приложения в реальном времени, такие как видео чат, видеоконференция, DVD и Blu-ray диски, системы получения контента и редактирование видео и приложения для камер безопасности.

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

Было предложено несколько способов выполнения уточнения вектора движения на стороне декодера (DMVR, для краткости) или деривации (DMVD для краткости), так что вектор движения может быть дополнительно уточнен. В ходе выполнения как DMVR процесса, так и DMVD процесса требуется реализовать сложный и трудоемкий поиск вокруг стартовых точек, которые могут быть точными векторами движения суб-пикселя.

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

Раскрытие сущности изобретения

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

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

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

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

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

, если

, иначе

где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) шаблона, является средним значением выборок ограниченного кандидата блока опорного изображения, является средним значением выборок шаблона, d является заданной битовой глубиной.

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

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

, если

, иначе

Где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) первого ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) второго ограниченного кандидата блока опорного изображения, является средним значением выборок первого ограниченного кандидата блока опорного изображения, является средним значением выборок второго ограниченного кандидата блока опорного изображения, d является заданной битовой глубиной.

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

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

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

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

, если

, иначе

где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) шаблона, является средним значением выборок ограниченного кандидата блока опорного изображения, является средним значением выборок шаблона, d является заданной битовой глубиной.

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

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

, если

, иначе

где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) первого ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) второго ограниченного кандидата блока опорного изображения, является средним значением выборок первого ограниченного кандидата блока опорного изображения, является средним значением выборок второго ограниченного кандидата блока опорного изображения, d является заданной битовой глубиной.

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

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

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

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

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

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

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

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

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

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

Фиг.1 представляет собой схематический вид сопоставления с шаблоном (ТМ), основанного на получении вектора движения на стороне декодера (DMVD);

Фиг.2 является схематическим видом двустороннего сопоставления (BM), основанного на DMVD;

Фиг.3 представляет собой схематический вид двустороннего сопоставления с шаблоном на основании уточнения вектора движения на стороне декодера (DMVR);

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

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

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

Осуществление изобретения

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

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

Кодирование видео обычно относится к обработке последовательности изображений, которые образуют видео или видео последовательность. В области кодирования видео в качестве синонимов вместо термина «изображение» может использоваться термин «кадр» или «изображение». Кодирование видео, используемое в настоящем раскрытии (или настоящее раскрытие) указывает на кодировку видео или декодирование видео. Кодирование видео выполняется на стороне источника, обычно содержащее обработку (например, сжатие) оригинальных видеоизображений для уменьшения объема данных, необходимых для представления видеоизображений (для более эффективного хранения и/или передачи). На стороне назначения выполняется декодирование видео и обычно содержит обратную обработку по сравнению с кодером для восстановления видеоизображений. Варианты осуществления, относящиеся к «кодированию» видеоизображений (или изображений в целом, как будет объяснено позже), следует понимать, как относящееся к «кодированию», либо «декодированию» для видеопоследовательности. Комбинация части кодирования и части декодирования также называется CODEC (кодирование и декодирование).

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

Несколько стандартов кодирования видео, поскольку H.261 принадлежат к группе «гибридных видеокодеков с потерями» (то есть, сочетает в себе пространственное и временное предсказание в области выборки и 2D-преобразования кодирования для применения квантования в области преобразования). Каждое изображение видеопоследовательности обычно разделяется на набор неперекрывающихся блоков и обычно выполняется кодирование на уровне блока. Другими словами, видео обычно обрабатывается в кодере, то есть, кодируется на уровне блока (видеоблок), например, используя пространственное предсказание (intra picture) и временное предсказание (inter picture) для генерирования блока предсказания, вычитая блок предсказания из текущего блока (в данный момент блок обрабатывается/подлежит обработке) для получения остаточного блока, преобразование остаточного блока и квантование остаточного блока в области преобразования для уменьшения объема передаваемых данных (сжатие), тогда как в декодере выполняется обратная обработка по сравнению с кодером, которая частично применяется к кодированному или сжатому блоку для восстановления текущего блока для представления. Кроме того, кодер дублирует цикл обработки декодера так, что оба будут генерировать одинаковые предсказания (например, внутреннее и внешнее предсказания) и/или восстановления для обработки, то есть, кодирование последующих блоков.

Используемый в настоящем описании термин «блок» может быть частью изображения или кадра. Для удобства описания варианты осуществления изобретения описаны в данном документе со ссылкой на высокоэффективное кодирование видео (HEVC) или эталонное программное обеспечение универсального кодирования видео (VVC), разработанное объединенной группой сотрудничества по кодированию видео (JCT-VC) Группа экспертов ITU-T по кодированию видео (VCEG) и Группа экспертов ISO/IEC по движущимся изображениям (MPEG). Для специалиста в данной области техники очевидно, что варианты осуществления изобретения не ограничиваются HEVC или VVC. Может относиться к CU, PU и TU (блокам преобразования). В HEVC CTU разделяется на CUs с использованием структуры дерева квадрантов, обозначаемой как дерево кодирования. Решение о том, кодировать ли область изображения с использованием внешнего (временного) или внутреннего (пространственного) предсказания, принимается на уровне CU. Каждый CU может быть дополнительно разделен на один, два или четыре PUs в соответствии с типом разделения PU. Внутри одного PU применяется тот же процесс предсказания и в декодер передается соответствующая информация на основании PU. После получения остаточного блока путем применения процесса предсказания на основании типа разделения PU, CU может быть разделен на блоки преобразования (TUs) в соответствии с другой структурой дерева квадрантов, аналогичной дереву кодирования для CU. В новейшей разработке технологии сжатия видео для разделения блока кодирования используется кадр разделения дерева квадрантов и двоичного дерева (QTBT). В QTBT блочной структуре CU может иметь квадратную или прямоугольную форму. Например, блок дерева кодирования (CTU) сначала разделяется структурой дерева квадрантов. Листовые узлы дерева квадрантов дополнительно разделяются структурой двоичного дерева. Листовые узлы двоичного дерева называются блоками кодирования (CUs), и эта сегментация используется для предсказания и обработки преобразования без какого-либо дополнительного разделения. Это означает, что CU, PU и TU имеют одинаковый размер блока в QTBT структуре блока кодирования. Параллельно с QTBT блочной структурой было предложено использовать множественность разделов, например, был предложен раздел троичного дерева (TT) для совместного использования с QTBT структурой блока.

Ради ясности, в первую очередь будет объяснено несколько терминов, используемых в настоящем раскрытии.

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

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

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

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

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

Термин «вектор движения (MV)» в настоящем описании обозначает смещение позиции блока опорного изображения относительно текущего блока изображения.

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

Термин «значение выборки» блока изображения относится к значению пикселя на точке выборки блока изображения.

Оконечное устройство может быть любым из следующих устройств: смартфон, мобильный телефон, сотовый телефон, беспроводной телефон, телефон инициации сеанса (SIP), телефон беспроводной локальной петли (WLL), личный цифровой помощник (PDA), портативное устройство, выполненное с возможностью обеспечивать беспроводную связь, бортовое оборудование, носимое устройство, вычислительное устройство или другие устройства обработки, соединенные с беспроводным модемом.

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

Дополнительно, было предложено несколько способов для выполнения DMVD процесса или DMVR процесса, так что могут быть дополнительно сокращены биты кодирования остатка вектора движения.

Один класс способов, называемый способами сопоставления с шаблоном (TM), использует L-образную область, прилегающий к текущему блоку (как показано на фиг.1), который уже был восстановлен, что называется шаблоном, и идентифицирует наилучшее сопоставление L-образной области, используя функцию стоимости, такую как сумма абсолютных разностей (SAD) или сумма абсолютных разностей без среднего значения (MR-SAD), в каждом опорном изображении (обозначается как REF0 на фиг.1) с использованием множества подходящих масштабированных пространственных и временных кандидатов вектора движения. Затем, на выбранном в качестве центрального с наилучшим сопоставлением кандидате выполняется дополнительное уточнение в пределах конкретного расстояния уточнения вокруг этого центра. На стороне кодера вычисляется оптимизированная стоимость искаженная для принятия решений между однонаправленным предсказанием (т.е предсказание с использованием наилучшего сопоставления с опорным изображением) и двунаправленным предсказанием (т.е предсказание, полученное путем усреднения двух наилучших сопоставленных опорных изображений).

Другой класс способов, называемых BM способами. Как показано на фиг.2, информация движения текущего CU получена путем нахождения ближайшего совпадения между двумя блоками вдоль траектории движения текущего CU в двух разных опорных изображениях (обозначается как REF0 и REF1 на фиг.2). Предполагая, что траектория движения является непрерывной, векторы MV0 и MV1 движения соответственно указывают на два опорных блока REF0 и REF1, которые должны быть пропорциональны временным расстояниям, т.е. TD0 и TD1 между текущим изображением и двумя опорными изображениями. Когда текущее изображение между двумя опорными изображениями и временное расстояние от текущего изображения до двух опорных изображений одинаково во времени, двустороннее соответствие становится зеркальным на основании двунаправленного MV.

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

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

В варианте двустороннего режима сопоставления, то есть, вышеупомянутый DMVR способ, как показано на фиг.3, в первую очередь, формируется двусторонний усредненный шаблон, используя блоки предсказания, со ссылкой на исходные MV0 и MV1 (обозначены как этап 1 на фиг.3) в первом списке L0 кандидатов блоков опорных изображений и втором списке L1 кандидатов начальных блоков опорных изображений, полученные из явно сигнализированного индекса слияния, и BM выполняется с учетом шаблона для нахождения наилучших сопоставленных блоков, упомянутых обновленными MV0' и MV1' (обозначены как этап 2 на фиг.3). При наличии какого-либо движения шаблон обновляется. Дополнительно, в некоторых вариантах осуществления выполняется уточнение в одном опорном изображении и вектор движения в другом опорном изображении получают с помощью зеркального отображения этого уточненного вектора движения. Уточнение между двумя опорными изображениями осуществляется, до тех пор, пока либо центральная позиция будет иметь наименьшую ошибку, либо будет достигнуто максимальное количество итераций.

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

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

Учитывая неявно заданный DMVD или DMVR процесс, кодер должен выполнять эти этапы точно так же, как декодер для согласования операций восстановления на стороне кодера и на стороне декодера.

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

Всякий раз, когда явно сигнализируется индекс слияния, DMVR начинается с векторов движения и опорных индексов, которые обычно получают из сигнализированного индекса слияния. Когда явный индекс режима слияния не сигнализируется, то есть, DMVD случай, в декодере оценивается набор кандидатов начального вектора движения, используя функцию стоимости, и в качестве стартовой точки для уточнения выбирается кандидат с наименьшей стоимостью. Таким образом, независимо от того, основан ли DMVD способ на TM или основан на BM, посредством минимизации разности между равными и противоположно перемещенными блоками в первом списке L0 кандидатов блока опорного изображения и втором списке L1 кандидатов блока опорного изображения (обычно называемый BM стоимостью ) или на основании разницы между усредненной версией соответствующих патчей в первом списке L0 кандидатов блока опорного изображения и втором списке L1 кандидатов блока опорного изображения и смещения в L0/L1 (обычно называемой DMVR стоимостью), осуществляется поиск уточнения, который необходимо выполнить вокруг стартовой точки, которая может быть точными векторами движения суб-пикселя.

Для оценки функции стоимости иногда необходимо выполнить интерполяцию для получения значений выборки в точных центрах суб-пикселей на основании значений выборки опорных изображений на целочисленных позициях. Интерполирующий фильтр может быть таким же простым, как билинейный интерполяционный фильтр или может быть более длинный фильтр, такой как 2-D, на основании разделимых интерполяционных фильтров, основанные на DCT. Для снижения сложности получения кандидата блока опорного изображения для текущего блока изображений на каждой позиции, рассмотренной во время уточнения, в другом изобретении была предложена сетка расстояния целочисленного пикселя точек уточнения, центрированная на точной позиции (позициях) суб-пикселя в первом списке L0 кандидатов блока опорного изображения и/или втором списке L1 кандидатов блока опорного изображения. При этом следует рассмотреть только инкрементные интерполяции в качестве новой позиции, близкой к текущей наилучшей позиции стоимости. После выполнения уточнения сетки расстояния целочисленного пикселя получают наилучшую целочисленную дельту MVs по отношению к MVs слияния.

В целях дополнительного повышения коэффициента сжатия может быть выполнена операция уточнения расстояния в суб-пикселе. Для выполнения операции уточнения расстояния полпикселя необходимо обеспечить наличие кандидата блоков опорного изображения на расстоянии полпикселя находится от позиции (позиций) лучшего целочисленного расстояния MV. Точное уточнение суб-пикселя выполняется с использованием BM стоимости или DMVR стоимости. При использовании расстояния в четверть пикселя и более меньших значений точности суб-пикселя, интерполяционный фильтр, требуемый на каждой позиции, отличается поскольку фазы позиций суб-пикселей не совпадают. В другой реализации выполняются вычисления с использованием оцененных на целочисленных позициях расстояния стоимостях, сосредоточенных на позиции с наименьшей стоимостью и устанавливаются ошибки параметрической поверхности и вычисляются точные смещения суб-пикселя с наименьшей стоимостью.

Однако техническая задача снижения сложности и сокращения времени обработки все еще окончательно не решена. Известно, что битовые глубины опорного изображения обычно варьируются от 8 битов до 12 битов. Таким образом, во время итераций уточнения целочисленных расстояний, описанных выше, и во время оценки стоимости вычисления параметров поверхности ошибки, в буферах поддерживаются кандидат блоков опорного изображения L0 и L1. Общее требование к хранению для этих буферов будет зависеть от битовых глубин кандидата блоков опорных изображений. Например, в программном обеспечении 10-битное значение занимает 16-битное хранилище, чтобы избежать ненужной упаковки (в поддерживаемые типы данных) и соответствующие операции распаковки. Кроме того, вычисления стоимости уточнения обычно проводятся с использованием SAD или вариации, такого как MR-SAD, где сумма абсолютных разностей вычисляется после корректировки средней разности между двумя блоками (на уровне выборки). Сложность вычисления стоимости и пропускная способность в векторной операции (однократная инструкция множество данных (SIMD)) будет зависеть от битовых глубин кандидата блоков опорных изображений. Например, в программном обеспечении 8-битные SADs могут выполняться почти в половине циклов от требуемых для выполнения 9-16-битных SADs. Дополнительно, многие наборы микросхем смартфонов содержат аппаратные модули для кодирования, а также для декодирования. Часть аппаратных модулей кодера они имеют тенденцию вычислять 8-битные SAD компоновочных блоков.

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

Далее будет приведено подробное описание вариантов осуществления настоящего изобретения.

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

Способ включает в себя следующие этапы:

S401: получить начальную информацию движения текущего блока изображений.

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

В DMVD процессе, как упомянуто выше, поскольку индекс слияния отсутствует, поэтому может быть составлен список кандидатов слияния на основании информации смежных блоков текущего блока изображения. Затем можно использовать первую функцию стоимости для определения информации движения с наименьшей стоимостью из списка кандидатов слияния в качестве начальной информации движения. Здесь список кандидатов слияния может быть составлен с использованием существующих способов, которые здесь не будут проиллюстрированы. Первая функция стоимости может быть одним из следующих: SAD, MR-SAD или сумма квадратных разностей (SSD).

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

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

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

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

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

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

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

S403: ограничить битовую глубину значений выборок каждого кандидата блока опорного изображения до заданной битовой глубины.

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

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

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

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

(1)

Где является нормализованным значением выборки кандидата блока опорного изображения, является нормализованным значением выборки кандидата блока опорного изображения, является коэффициентом нормализации интерполяционного фильтра.

Допустим, что b является битовой глубиной значений выборки первого кандидата блока опорного изображения и d является заданной битовой глубиной (меньше, чем b), то битовая глубина ограниченного значения выбора равна:

(2)

Где является ограниченным значением выборки кандидата блока опорного изображения. Любое смещение вправо, требуемое процессом интерполяции (от увеличенной внутренней битовой глубины, требуемой в течение 2-D интерполяции), можно сочетать с этим смещением вправо.

Тогда процесс ограничения битовой глубины может быть объединен как,

(3)

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

Например, если b равно 10 битов d равно 8 бит, то после ограничения битовой глубины до 8 битов, размер буфера для 10-битных данных уменьшается на 2x, когда 10-бит хранится в 16-битных типах данных. Даже требование размера буферного размера снижается на 20%. Используя побайтовые операции SIMD на программных платформах, количество циклов для оценки функций стоимости может быть уменьшено вдвое. На аппаратных платформах операция оценки стоимости может использовать 20% менее битовые плоскости, которые приводит к снижению количество транзисторных элементов и занимаемое пространство.

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

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

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

В TM на основании DMVD процесса вторая функция стоимости может указывать разницу между шаблоном ограниченного кандидата блока опорного изображения (L-образной области REF0, показанной на фиг.1) и шаблоном текущего блока изображения (L-образной области текущего изображения, показанного на фиг.1). Здесь шаблон фактически служит сравнительными ссылками.

В BM на основании DMVD процесса шаблон отсутствует, вторая функция стоимости может указывать разницу между двумя кандидатами блоков опорного изображения.

В следующей части может быть приведено подробное описание DMVR случая.

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

S405: определить блок изображения предсказания текущего блока изображения в соответствии с уточненной информацией движения.

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

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

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

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

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

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

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

S501: получить начальную информацию движения текущего блока изображения.

Может быть сделана ссылка на описание S401.

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

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

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

S503: получить шаблон для текущего блока изображения.

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

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

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

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

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

Далее будет кратко описан пример реализации интерполяции.

При условии, что позиция текущего блока изображений представляет собой (x, y) с измерением W * h, где W является шириной текущего блока изображения и H является высотой текущего блока изображения. Первое опорное изображение обозначается как L0 и второе опорное изображение обозначается как L1. Первый начальный вектор движения и второй начальный вектор движения соответственно обозначается как MV0 и MV1, где MV0 и MV1 представляют собой точными векторами движения суб-пикселя.

Во-первых, могут быть получены смещения FMV0 и FMV1 суб-пикселя и целочисленные части IMV0 и IMV1 из первого и второго начального вектора движения. FMV0 и FMV1 являются соответствующими дробными частями первого и второго начальных векторов движения, в то время как IMV0 и IMV1 являются соответствующими целочисленными частями первого и второго начальных векторов движения.

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

S505: ограничить битовую глубину значений выборки каждого первого кандидата блока опорного изображения до заданной битовой глубины и ограничить битовую глубину значений выборок каждого второго кандидата блока опорного изображения до заданной битовой глубины.

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

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

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

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

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

Здесь стоимость может быть рассчитана следующим образом:

, если

, иначе (4)

Где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) первого ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) шаблона, является средним значением выборок первого ограниченного кандидата блока опорного изображения, является средним значением выборок шаблона, d является заданной битовой глубиной.

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

S507: использовать вторую функцию стоимости для определения второй позиции второго ограниченного кандидата блока опорного изображения.

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

Примечательно, что S506 и S507 могут быть выполнены одновременно или в произвольном порядке, что в настоящем раскрытии не ограничено.

S508: определить блок предсказания изображения текущего блока изображения в соответствии с уточненной информацией движения.

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

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

Также возможно оценить BM стоимость вместо DMVR стоимости. В этом случае S503 будет опущен. В S507 и S508, поскольку вторая функция стоимости указывает на разницу между первым ограниченным кандидатом блока опорного изображения и вторым ограниченным кандидатом блока опорного изображения, поэтому стоимость может быть рассчитана как:

, если

, иначе (5)

Где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) первого ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) второго ограниченного кандидата блока опорного изображения, соответствующей первому ограниченному кандидату блока опорного изображения, является средним значением выборок первого ограниченного кандидата блока опорного изображения, является средним значением выборок второго ограниченного кандидата блока опорного изображения, b является битовой глубиной значений выборок первого и второго кандидата блока опорного изображения, d является заданной битовой глубиной и b больше d. Специалистам в данной области техники должно быть очевидно, что значение d может быть выбрано исходя из фактических требований.

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

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

Даже после ограничения битовой глубины каждого кандидата блока опорного изображения до заданной битовой глубины d, как показано в варианте осуществления на фиг.4, абсолютное значение может превышать d при использовании MR-SAD. Это потребует дополнительного 1 бита при реализации оборудования, но может иметь 2-х кратную пропускную способность программного обеспечения SIMD (например, 9-битная абсолютная разность, будет иметь половину пропускной способности, как при 8-битной абсолютной разностью). Также, учитывая, что весь процесс является нормативным, в MR-SAD случае также должна быть четко указана битовая глубина для предотвращения отклонений в реализациях кодера и декодера.

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

Фиг.6 является видом структуры устройства для кодирования изображения видеопоследовательности в соответствии с вариантом осуществления настоящего изобретения. Если изображение содержит текущий блок изображения, устройство включает в себя: модуль 601 получения, модуль 602 ограничения и модуль 603 определения.

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

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

Модуль 602 ограничения выполнен с возможностью ограничивать битовую глубину значений выборок каждого кандидата блока опорного изображения до заданной битовой глубины;

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

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

В варианте осуществления модуль 602 ограничения специально выполнен с возможностью: выполнять сдвиг вправо битовую глубину значений выборки каждого кандидата блока опорного изображения на величину (b-d), где b является битовой глубиной значений выборки каждого кандидата блока опорного изображения, d является заданной битовой глубиной и b больше d.

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

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

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

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

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

В варианте осуществления стоимость рассчитывается как:

, если

, иначе (6)

Где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) шаблона, является средним значением выборок ограниченного кандидата блока опорного изображения, является средним значением выборок шаблона, d является заданной битовой глубиной.

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

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

В варианте осуществления стоимость рассчитывается как:

, если

, иначе (7)

Где H является высотой текущего блока изображения, W является шириной текущего блока изображения, I0(i, j) является значением выборки на позиции (i, j) первого ограниченного кандидата блока опорного изображения, I1(i, j) является значением выборки на позиции (i, j) второго ограниченного кандидата блока опорного изображения, является средним значением выборок первого ограниченного кандидата блока опорного изображения, является средним значением выборок второго ограниченного кандидата блока опорного изображения, d является заданной битовой глубиной.

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

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

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

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

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

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

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

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

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

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

Термин «a» или «an» не предназначен для определения одного или единственного элемента, вместо этого может использоваться для представления множества элементов, где это уместно.

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

В одном или более примерах могут быть реализованы описанные функции в аппаратном, программном обеспечении, встроенном программном обеспечении или любой их комбинации. При реализации в программном обеспечении функции могут храниться или передаваться как одна или более инструкций или код на машиночитаемом носителе информации и выполняется аппаратным устройством обработки. Машиночитаемый носитель информации может включать в себя мультимедийный носитель, который соответствует материальному носителю, такому как носитель данных, или носитель данных, включающий в себя любой носитель, которая облегчает передачу компьютерной программы из одного места в другое, например, в соответствии с протоколом связи. Таким образом, машиночитаемый носитель информации, как правило, может соответствовать (1) материальному машиночитаемому носителю информации, который является постоянным, или (2) среда связи, такая как сигнал или волна несущей. Хранилища данных могут быть любыми доступными носителями, которые могут быть доступны для одного или более компьютеров или одного или более процессоров для получения инструкций, кода и/или структур данных для реализации способов, описанных в настоящем раскрытии. Компьютерный программный продукт может включать в себя машиночитаемый носитель информации.

В качестве примера, а не ограничения, такие машиночитаемые носители информации могут содержать оперативную память, ROM, EEPROM, CD-ROM или другое хранилище оптического диска, хранение магнитного диска или другие устройства магнитного хранения, флэш-память или любую другую среду, которая может использоваться для хранения нужного программного кода в виде инструкций или структур данных, и которые могут быть доступны компьютером. Кроме того, любое соединение называется машиночитаемым носителем информации. Например, если инструкции передаются с веб-сайта, сервера или другого удаленного источника с использованием коаксиального кабеля, волоконно-оптического кабеля, витой пары, цифровой абонентской линией (DSL) или беспроводных технологий, таких как инфракрасная, радио и микроволновая сигнализация, то коаксиальный кабель, волоконно-оптический кабель, витая пара, DSL или беспроводные технологии, такие как инфракрасные, радио, и микроволновые технологии следует рассматривать в качестве носителя. Однако следует понимать, что машиночитаемые носители информации и носители хранения данных не включают в себя соединения, несущие, сигналы или другие переходные носители, но вместо этого представляют собой постоянный материальный носитель информации. Диск, как используется в данном документе, включает в себя компактный диск (CD), лазерный диск, оптический диск, цифровой универсальный диск (DVD), гибкий диск, и диск Blu-ray, где диски обычно воспроизводят данные, в то время как диски воспроизводят данные оптически лазерами. Комбинации вышеуказанного следует также рассматривать в качестве машиночитаемых носителей информации.

Инструкции могут быть выполнены одним или более процессорами, такими как один или более цифровых сигнальных процессоров (DSPs), микропроцессоры общего назначения, специализированные интегрированные схемы (ASICs), программируемые пользователем вентильные матрицы (FPGAs) или другие эквивалентные интегральные или дискретные логические схемы. Соответственно, термин «процессор», как используется в данном документе, может относиться к любой из вышеупомянутой структуре или любой другой структуре, подходящей для реализации описанных в настоящем документе способов. Дополнительно, в некоторых аспектах функциональные возможности, описанные в данном документе, могут быть предусмотрены в пределах специализированных аппаратных и/или программных модулей, выполненных с возможностью кодировать и декодировать или содержаться в комбинированном кодеке. Кроме того, способы могут быть полностью реализованы в одной или более схемах или логических элементах.

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

Похожие патенты RU2770423C1

название год авторы номер документа
СПОСОБ ПРОПУСКА УТОЧНЕНИЯ НА ОСНОВАНИИ ПОДОБИЯ ВСТАВКИ ПРИ УТОЧНЕНИИ ВЕКТОРА ДВИЖЕНИЯ НА СТОРОНЕ ДЕКОДЕРА НА ОСНОВАНИИ БИЛИНЕЙНОЙ ИНТЕРПОЛЯЦИИ 2019
  • Сетхураман, Срирам
  • А, Джива Радж
RU2786383C2
ИНТЕРПОЛЯЦИЯ ДЛЯ ВНЕШНЕГО ПРЕДСКАЗАНИЯ С УТОЧНЕНИЕМ 2019
  • Чжан, Кай
  • Чжан, Ли
  • Лю, Хунбинь
  • Ван, Юэ
RU2808586C2
ВЫВЕДЕНИЕ ВЕКТОРА ДВИЖЕНИЯ ПРИ ВИДЕОКОДИРОВАНИИ 2016
  • Ли, Сян
  • Чэнь, Ин
  • Чжан, Ли
  • Лю, Хонгбинь
  • Чэнь, Цзяньлэ
  • Карчевич, Марта
RU2742298C2
ОПРЕДЕЛЕНИЕ РЕЖИМА ВЫВОДА ИНФОРМАЦИИ ДВИЖЕНИЯ ПРИ ВИДЕОКОДИРОВАНИИ 2016
  • Ли Сян
  • Чэнь Ин
  • Чжан Ли
  • Лю Хонгбинь
  • Чэнь Цзяньлэ
  • Карчевич Марта
RU2719296C2
ВЫВОД ИНФОРМАЦИИ ДВИЖЕНИЯ ДЛЯ ПОДБЛОКОВ ПРИ ВИДЕОКОДИРОВАНИИ 2016
  • Ли Сян
  • Чэнь Ин
  • Чжан Ли
  • Лю Хонгбинь
  • Чэнь Цзяньлэ
  • Карчевич Марта
RU2705428C2
УСТРОЙСТВО И СПОСОБ ВНЕШНЕГО ПРЕДСКАЗАНИЯ 2019
  • Сюй, Вэйвэй
  • Ян, Хайтао
  • Чжао, Инь
RU2785725C2
ОКНО ДОСТУПА К ПАМЯТИ И ЗАПОЛНЕНИЕ ДЛЯ ДЕТАЛИЗАЦИИ ВЕКТОРА ДВИЖЕНИЯ И КОМПЕНСАЦИИ ДВИЖЕНИЯ 2019
  • Есенлик, Семих
  • Краснов, Иван
  • Чжао, Чжицзе
  • Чэнь, Цзяньлэ
RU2783331C2
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ВИДЕО 2020
  • Ли Гуйчунь
  • Ли Сян
  • Сюй Сяочжун
  • Лю Шань
RU2777498C1
ВЕДЕНИЕ ТАБЛИЦ ДЛЯ ХРАНЕНИЯ КАНДИДАТОВ ПРЕДСКАЗАНИЯ ВЕКТОРА ДВИЖЕНИЯ НА ОСНОВЕ ИСТОРИИ 2019
  • Чжан, Ли
  • Чжан, Кай
  • Лю, Хунбинь
  • Ван, Юэ
RU2808631C2
РАННЕЕ ПРЕКРАЩЕНИЕ УТОЧНЕНИЯ ОПТИЧЕСКОГО ПОТОКА 2020
  • Эсенлик, Семих
  • Сетураман, Срирам
  • А, Джива Радж
  • Котеча, Сагар
RU2808608C2

Иллюстрации к изобретению RU 2 770 423 C1

Реферат патента 2022 года СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ ВИДЕОПОСЛЕДОВАТЕЛЬНОСТИ И ОКОНЕЧНОЕ УСТРОЙСТВО

Изобретение относится к средствам для кодирования изображения видеопоследовательности. Технический результат заключается в повышении эффективности кодирования. Получают начальную информацию движения текущего блока изображения. Получают значения выборки по меньшей мере двух кандидатов блоков опорного изображения, соответствующих текущему блоку изображения в соответствии с начальной информацией движения. Ограничивают битовую глубину значений выборки каждого кандидата блока опорного изображения до заданной битовой глубины. Получают уточненную информацию движения на основании ограниченных значений выборки по меньшей мере двух блоков опорного изобретения. Определяют блок изображения предсказания текущего блока изображения в соответствии с уточненной информацией движения. Этап ограничения битовой глубины значений выборки каждого блока опорного изображения до заданной глубины содержит подэтап, на котором выполняют сдвиг вправо на величину (b-d) битовой глубины значений выборки каждого блока опорного изображения, причем b является битовой глубиной значений выборки каждого блока опорного изображения, d является заданной битовой глубиной и b больше d. 5 н. и 12 з.п. ф-лы, 6 ил.

Формула изобретения RU 2 770 423 C1

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

получают начальную информацию движения текущего блока изображения;

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

ограниченные значения выборки получены посредством ограничения битовой глубины значений выборок каждого блока опорного изображения до заданной битовой глубины;

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

определяют блок изображения предсказания текущего блока изображения в соответствии с уточненной информацией движения; причем

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

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

2. Способ по п.1, в котором этап получения начальной информации движения текущего блока изображения содержит подэтап, на котором:

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

3. Способ по п.1, в котором этап получения начальной информации движения текущего блока изображения содержит подэтап, на котором:

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

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

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

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

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

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

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

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

7. Способ по п.6, в котором по меньшей мере два блока опорного изображения содержат набор первого блока опорного изображения и набор второго блока опорного изображения; при этом

начальная информация движения содержит первую начальную информацию движения и вторую начальную информацию движения, а способ дополнительно содержит этапы, на которых:

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

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

вычисляют взвешенную комбинацию первого начального блока опорного изображения и второго начального блока опорного изображения в качестве шаблона; при этом

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

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

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

этап получения уточненной информации движения в соответствии с позицией блока опорного изображения содержит подэтап, на котором:

получают уточненную информацию движения в соответствии с первой позицией и второй позицией.

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

9. Способ по любому из пп.1-8, в котором уточненная информация движения содержит уточненный вектор движения текущего блока изображения; при этом

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

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

10. Способ по любому из пп.1-8, в котором уточненная информация движения содержит уточненный вектор движения текущего блока изображения и указание опорного изображения; при этом

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

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

11. Способ по п.2, в котором первая функция стоимости является одной из суммы абсолютной разности (SAD), суммы абсолютной разности без среднего значения (MR-SAD) или суммы квадратных разностей (SSD).

12. Способ по любому из пп.5-8, в котором вторая функция стоимости является одной из суммы абсолютной разности (SAD), суммы абсолютной разности без среднего значения (MR-SAD) или суммы квадратных разностей (SSD).

13. Способ по любому из пп.1-12, в котором блок опорного изображения относится к кандидату блока опорного изображения с ограниченными значениями выборки.

14. Устройство кодирования изображения видеопоследовательности, причем изображение содержит текущий блок изображения, содержащее:

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

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

ограниченные значения выборок получены посредством ограничения битовой глубины значений выборки каждого блока опорного изображения до заданной битовой глубины; при этом

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

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

модуль ограничения дополнительно выполнен с возможностью:

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

15. Энергонезависимый машиночитаемый носитель, хранящий программы, выполняемые схемой обработки, причем программы, при выполнении схемой обработки, вызывают выполнение, схемой обработки, способа по любому из пп.1-13.

16. Кодер, содержащий:

один или более процессоров; и

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

17. Устройство кодирования, содержащее схему, выполненную с возможностью реализации способа по любому из пп.1-13.

Документы, цитированные в отчете о поиске Патент 2022 года RU2770423C1

Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами 1924
  • Ф.А. Клейн
SU2017A1
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз 1924
  • Подольский Л.П.
SU2014A1
CN 102215387 B, 07.08.2013
RU 2011120192 A, 27.10.2013
Приспособление для суммирования отрезков прямых линий 1923
  • Иванцов Г.П.
SU2010A1
Способ получения цианистых соединений 1924
  • Климов Б.К.
SU2018A1

RU 2 770 423 C1

Авторы

Сетхураман, Срирам

А, Джива Радж

Котеча, Сагар

Ма, Сян

Даты

2022-04-18Публикация

2018-09-05Подача