СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ Российский патент 2024 года по МПК H04N19/105 H04N19/176 H04N19/159 H04N19/577 

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

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

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

2. Предшествующий уровень техники настоящего изобретения

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

3. Краткое раскрытие настоящего изобретения

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

- декодирование параметров для текущего блока;

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

- в ином случае, активацию для указанного текущего блока указанного средства кодирования; и

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

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

- получение параметров для текущего блока;

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

- в ином случае, активацию для указанного текущего блока указанного средства кодирования; и

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

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

- декодирования параметров для текущего блока;

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

- в ином случае, активации для указанного текущего блока указанного средства кодирования; и

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

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

- получение параметров для текущего блока;

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

- в ином случае, активацию для указанного текущего блока указанного средства кодирования; и

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

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

- получения параметров для текущего блока;

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

- в ином случае, активации для указанного текущего блока указанного средства кодирования; и

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

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

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

4. Краткое описание фигур

На фиг. 1а показана общая схема декодирования, на фиг. 1b и фиг.1с показаны другие общие схемы декодирования, на фиг. 1d показана общая схема декодирования согласно одному варианту осуществления.

На фиг. 2 изображены принципы отклонения параметров компенсации локальной освещенности;

на фиг. 3 изображены принципы компенсации движения с перекрытием блоков;

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

на фиг. 5 изображено непрямоугольное разбиение блока и связанное диагональное взвешивание ОВМС;

на фиг. 6 показана блок-схема способа декодирования согласно одному варианту осуществления;

на фиг. 7 показана блок-схема способа кодирования согласно одному варианту осуществления;

на фиг. 8 показаны блок-схемы процессов декодирования согласно различным вариантам осуществления;

на фиг. 9 показана блок-схема процесса многогипотезного предсказания;

на фиг. 10 показана блок-схема процесса многогипотезного предсказания согласно одному варианту осуществления;

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

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

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

на фиг. 14 изображен принцип многогипотезной схемы;

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

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

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

5. Подробное раскрытие настоящего изобретения

При кодировании HEVC изображение разбивается на CTU квадратной формы с настраиваемым размером, как правило, 64×64. Размер может быть 128×128 или 256×256 в других стандартах кодирования видео. CTU представляет собой корень разбиения методом квадродерева на 4 квадратных единицы кодирования (CU) равного размера, т.е. половину размера родительского блока в ширину и в высоту. Квадродерево - это дерево, в котором родительский узел может быть разделен на четыре узла-потомка, каждый из которых может стать родительским узлом для другого разделения на четыре узла-потомка. При HEVC блок кодирования (СВ) содержит отсчеты одного компонента цвета, соответствующего одному CU. Он разбивается на один или несколько блоков предсказания (РВ) и образует корень разбиения методом квадродерева на блоки преобразования (ТВ). В соответствии с блоком кодирования, блоком предсказания и блоком преобразования, единица кодирования (CU) содержит единицы предсказания (PU) и набор с древовидной структурой из единиц преобразования (TU), PU содержит информацию о предсказании для всех компонентов цвета, и TU содержит структуру синтаксиса кодирования остатков для каждого компонента цвета. Размер СВ, РВ и ТВ компонента яркости применяется к соответствующим CU, PU и TU.

В более современных системах кодирования CTU представляет собой корень разбиения на основе дерева кодирования на единицы кодирования (CU). Дерево кодирования - это дерево, в котором родительский узел (обычно соответствующий блоку) может быть разделен на узлы-потомки (например, на 2, 3 или 4 узла-потомка), каждый из которых может стать родительским узлом другого разделения на узлы-потомки. В дополнение к режиму разделения методом квадродерева также определены новые режимы разделения (режимы симметричного разделения методом двоичного дерева, режимы асимметричного разделения методом двоичного дерева и режимы разделения методом троичного дерева), которые увеличивают общее количество возможных режимов разделения. Дерево кодирования имеет уникальный корневой узел, например, CTU. Лист дерева кодирования представляет собой терминальный узел дерева. Каждый узел дерева кодирования представляет блок, который может быть дополнительно разделен на меньшие блоки, также называемые подблоками. После определения разбиения CTU на CU, CU соответствующие, листья дерева кодирования, кодируются. Разбиение CTU на CU и параметры кодирования, используемые для кодирования каждого CU (соответствующего листу дерева кодирования), могут быть определены на стороне кодера посредством процедуры оптимизации скорости-искажения.

В настоящем изобретении термин «блок» или «блок изображения» может использоваться для обозначения любого из CTU, CU, PU, TU, СВ, РВ и ТВ. Кроме того, термин «блок» или «блок изображения» может использоваться для обозначения макроблока, раздела и подблока, как указано в H.264/AVC или в других стандартах кодирования видео, и в более общем смысле обозначает массив отсчетов различных размеров.

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

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

В настоящем изобретении термины «средство кодирования» и «процесс кодирования» могут использоваться взаимозаменяемым образом.

В современных системах кодирования, например, в эталонном программном обеспечении (известном как VTM) универсального кодирования видео (VVC), схема декодирования предусматривает несколько расположенных каскадом средств. Схема декодирования для VVC показана на фиг. 1а. Процесс декодирования осуществляется на уровне единиц кодирования (CU). CU содержит С квадратных или прямоугольных блоков (например, С=3 для формата цветности YUV или RGB). В формате 4:2:0 два блока цветности уменьшены относительно блок яркости в соотношении, равном двум, как в горизонтальном, так и в вертикальном направлениях.

Процесс «энтропийного декодирования» осуществляет синтаксический анализ битового потока и декодирует элементы синтаксиса, такие как режимы кодирования (например, режим межкадрового/внутрикадрового кодирования) и связанные параметры (например, направление внутри кадра, векторы движения MV между кадрами и эталонные индексы).

Компенсация движения (МС) интерполирует отсчеты одного или двух (в случае двунаправленного предсказания) прямоугольных блоков (такого же размера, как и текущая CU) в опорном изображении с использованием фильтров МС, со смещением, равным MV (mvX, mvY) в опорном изображении относительно положения текущего блока.

Компенсация локальной освещенности (LIC) направлена на компенсацию изменения освещенности, которая возникает между спрогнозированным блоком и его опорным блоком, используемым во временном предсказании с компенсацией движения (МС). Это, как правило, осуществляется с использованием линейной модели IC (а, b):

где: Sref - значение опорного отсчета с компенсацией движения и SIC - значение спрогнозированного отсчета, параметры LIC (а, b) вычисляют для каждого блока, где активировано LIC.

Существует несколько способов для вычисления параметров LIC (а, b). В одном способе декодер вычисляет параметры LIC на основании некоторых восстановленных отсчетов изображения, например, на основании восстановленных отсчетов «у», расположенных слева и/или сверху текущего блока, и опорных отсчетов изображения «х», расположенных слева и/или сверху блока с компенсацией движения (фиг. 2а). В другом способе параметры LIC вычисляют на основании восстановленных отсчетов «у», расположенных слева и/или сверху текущего блока, и соответствующих отсчетов предсказания «х», используемых для восстановления «у» (фиг. 2b). Для этих двух способов параметры LIC могут быть вычислены и сохранены после каждого восстановления блока. Параметры IC (а, b) сводят к минимуму разницу (например, метод наименьших квадратов) между отсчетами «у» и «а.х+b»:

Эти два способа называются «традиционной LIC» далее. LIC вводит зависимость с соседними CU, поскольку она использует восстановленные отсчеты соседних CU. Следовательно, текущая CU должна ожидать полного восстановления соседних блоков (см. «восстановленный отсчет обратной связи» на фиг. 1а) перед тем, как параметры LIC для текущего блока могут быть вычислены и, таким образом, перед тем, как текущий блок может быть восстановлен.

В случае двунаправленного предсказания вариант LIC (называемый «двунаправленной IC») получает параметры IC (а0, b0) и (a1, b1) непосредственно из двух блоков с компенсацией движения (блок-0 и блок-1), используемых в двунаправленном предсказании. Он предусматривает оценку изменения освещенности между двумя опорными изображениями для получения параметров IC (а0,b0) и (a1, b1) для текущего блока. Например, вычисляют параметры IC (а, b) для LIC между блоком-1 с компенсацией движения и блоком-0 с компенсацией движения. Затем получают (а0, b0) и (a1, b1) из значений (а, b) и счетчики очередности изображений (РОС) текущего изображения, опорного изображения 0 и опорного изображения 1. Предполагается, что значения a0, a1, b0, b1 представляют собой линейные функции временного расстояния между текущим кадром и опорными изображениями. Преимущество этого варианта заключается в том, что он не вводит никакой зависимости с соседними CU.

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

где:

I0, I1 - предсказания с компенсацией движения (блок-0 и блок-1),

И - горизонтальный и вертикальный градиенты для iго опорного (k={0, 1}),

(vx, vy) - вектор движения между блоком-1 и блоком-0,

σ - временная разность (POC1-РОС0).

В случае двунаправленного предсказания уточнение вектора движения на стороне декодера (DMVR) направлено на уточнение движение путем проверки некоторых смещений вокруг декодированных MV значений (MVinitial). Проверяется набор из нескольких пар MV кандидатов (MVtested(L0), MVtested(L1)). Как в BIO, проверенные значения MV симметричны относительно начальных значений MV, т.е. (MVtested(L0)-MVinitial(L0)=MVtested(L1)-MVinitial(L1)), где MVtested(L0) - вектор движения, проверенный в отношении списка L0, и MVtested(L1) вектор движения, проверенный в отношении списка L1. Выбранная пара MV представляет собой ту, которая минимизирует разность MC(ref0, MVtested(L0))-MC(ref1, MVtested(L1)), например, с использованием суммы абсолютных разностей (MRSAD).

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

где Р0, Р1 - предсказания с компенсацией движения (блок-0 и блок-1).

В VTM используемые весовые коэффициенты кодируются по CU с «индексом gbi», который может принимать значения, упомянутые в таблице 1.

Таблица 1. Бинаризация индекса GBi и связанные весовые коэффициенты.

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

На фиг. 1а процесс LIC применяется перед усреднением с двунаправленным предсказанием к каждому из однонаправленных предсказаний с компенсацией движения. В одном варианте процесс LIC (720) применяется после усреднения с двунаправленным предсказанием (710), как показано на фиг. 1b.

Согласно средству компенсации движения с перекрытием блоков (ОВМС) (далее называемому «процесс ОВМС»), движение соседних блоков используется для продления предсказания соседних блоков PN(N=A или L) и выполнения постепенного взвешивания с текущим блоком предсказание РС (фиг. 3). Например, обозначим PA(х, у) вышеуказанные отсчеты предсказания (х={0,…W-1}, у={0,…НА-1}) вышеуказанного блока. Эти отсчеты продлеваются с дополнительными строками В внизу: PA(х, у) (х={0,…W-1}, y={НА,…НА+В-1}, вычисленными с помощью того же процесса (МС) и той же информации о движении, что и другие отсчеты предсказания РА. Обозначим РС(х, у) отсчеты РОВМС текущего предсказания (х={0,…W-1}, у={0,…НС-1}), тогда предсказание для верхних строк В отсчетов текущего блока, в заключение, вычисляется следующим образом:

Тот же процесс применяется для отсчетов предсказания левых столбцов В на основании отсчетов PL(х, у), построенных из данных левого блока.

В случае если соседние блоки N используют LIC и/или BIO для своего предсказания, дополнительные отсчеты PN (далее называемый «процесс ОВМС») также могут быть получены путем применения LIC и BIO.

Например, обычные постепенные весовые коэффициенты от границы к центру текущего блока представляют собой wC(y)={1/4, 1/8, 1/16, 1/32} и wN(y)={3/4, 7/8, 15/16, 31/32} для PN и РС соответственно.

Общая многогипотезная концепция предусматривает комбинацию межкадрового предсказания, выполняемого в режиме слияния, с режимом внутрикадрового предсказания или с другим межкадровым режимом (например, однонаправленное предсказание AMVP, пропуск и слияние), как показано на фиг. 4. В режиме слияния создают список кандидатов на слияние (опорный индекс, значения движения) и передают индекс слияния, идентифицирующий одного кандидата. Информацию о движении блока в режиме слияния затем получают из кандидата, идентифицированного посредством индекса слияния и используемого для предсказания с компенсацией движения. Конечное предсказание представляет собой средневзвешенное значение предсказания с индексом слияния и предсказания, сгенерированного посредством режима внутрикадрового предсказания, где разные весовые коэффициенты применяются в зависимости от комбинаций. Режим внутрикадрового предсказания передают в битовом потоке. В конкретном варианте осуществления режим внутрикадрового предсказания выбирают из поднабора всех классических режимов предсказания (например, размер поднабора, равный 4). Текущий блок разделяется на 4 участка равной площади. Весовые коэффициенты постепенно уменьшаются по мере удаления участка от внутрикадровых опорных отсчетов. Каждый набор весовых коэффициентов, обозначенный как (w_intrai, w_interi), где i составляет от 1 до 4, и (w_intra1, w_inter1)=(6, 2), (w_intra2, w_inter2)=(5, 3), (w_intra3, w_inter3)=(3, 5), и (w_intra4, w_inter4)=(2, 6), будет применяться к соответствующему участку, как показано в примере на фиг. 4 и 14 для внутрикадрового предсказания в вертикальном направлении. Когда DC или планарный режим выбран или ширина или высота CU меньше 4, идентичные весовые коэффициенты применяются ко всему CU.

Геометрические (например, треугольные) режимы обеспечивают большую гибкость для разбиения изображения на блоки перед кодированием. Примеры такого разбиения показаны сверху фиг. 5. Дополнительная производительность кодирования может быть получена путем выполнения взвешивания двух предикторов на границах (серая область на фиг. 5), как изображено внизу фиг. 5. Процесс взвешивания может осуществляться каскадом с другими взвешиваниями, такими как GBI или LIC, и увеличивать сложность реализации.

Фильтры, «применяемые после восстановления» (730), позволяют отфильтровать восстановленные отсчеты текущей CU в кольцевом восстановлении CU, вследствие чего подвергнутые фильтрации отсчеты могут использоваться для внутрикадрового предсказания для получения параметров LIC для последующих CU в том же изображении (или том же слайсе или том же тайле). В это время «другие постфильтры» (740) (например, деблочный фильтр, фильтр SAO или фильтр ALF) осуществляет фильтрацию восстановленных отсчетов после восстановления всего изображения (или слайса, или тайла). Примеры фильтров, «применяемых после восстановления», представляют собой двусторонние фильтры (J. Strom et al., «СЕН: Reduced latency, LUT-free bilateral filter», document JVET-L0172, 12th Meeting: Macao, CN, 3-12 Oct. 2018), фильтры Адамара (S. Ikonen et al., «Non-СЕ: Hadamard transform domain filter», document JVET-M0468, 13th Meeting: Marrakech, MA, 9-18 Jan. 2019) или диффузионные фильтры (J. Rash et al. «СЕ10: Uniform Directional Diffusion Filters For Video Coding», document JVET-M0042, 13th Meeting: Marrakech, MA, 9-18 Jan. 2019).

В одном варианте фильтры, «применяемые после восстановления», применяются к CU, кодированной только в межкадровом режиме, но не к CUK), кодированной во внутрикадровом или комбинированном внутри- и межкадровом предсказаниях, как показано на фиг. 1с. В другом варианте фильтры, «применяемые после восстановления», применяются к CU, кодированной только во внутрикадровом, а не в межкадровом режиме. Применение фильтров, «применяемых после восстановления», может быть приспособлено к другим параметрам, таким как размер текущей CU, значение QP или тип компонента (например фильтры, «применяемые после восстановления», не применяются к компоненту цветности, как показано пунктирным прямоугольником «цветность» в 730).

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

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

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

Для уменьшения зависимости схемы модифицируется схема «межкадрового» декодирования.

На фиг. 6 показана блок-схема способа декодирования согласно одному варианту осуществления.

Параметры декодируют для текущего блока (S100). Средство кодирования (например, LIC) для текущего блока деактивируют (S110), в случае если проверяются одно или несколько из следующих условий: первое средство кодирования используется (например, GBI используется с весовыми коэффициентами, которые не являются весовыми коэффициентами по умолчанию) для указанного текущего блока и проверяется заданное условие в отношении декодированных параметров (размер блока меньше значения). В ином случае, средство кодирования активируют для указанного текущего блока. Текущий блок декодируют (S120) с учетом того, активировано или нет средство кодирования. Если средство кодирования активировано, текущий блок декодируют с использованием средства кодирования. В ином случае, текущий блок декодируют без использования средства кодирования.

На фиг. 7 показана блок-схема способа кодирования согласно одному варианту осуществления. Параметры получают для текущего блока (S200). Средство кодирования (например, LIC) для текущего блока деактивируют (S110), в случае если проверяются одно или несколько из следующих условий: первое средство кодирования используется (например, GBI используется с весовыми коэффициентами, которые не являются весовыми коэффициентами по умолчанию) для указанного текущего блока и проверяется заданное условие в отношении декодированных параметров (размер блока меньше значения). В ином случае, средство кодирования активируют для указанного текущего блока. Текущий блок кодируют (S220) с учетом того, активировано или нет средство кодирования. Если средство кодирования активировано, текущий блок кодируют с использованием средства кодирования. В ином случае, текущий блок кодируют без использования средства кодирования.

Деактивация средства кодирования может быть приспособлена к некоторым свойствам текущей единицы кодирования (CU) и/или к тому, используется ли другое средство кодирования «X» (406, 408), как изображено на фиг. 8А-8С.

На фиг. 8А параметры CU декодируют (400). В случае если условие в отношении параметров CU проверяют (410), например, в случае если размер CU ниже значения, средство кодирования/процесс «Y» (420) деактивируют.

На фиг. 8В параметры CU декодируют (400). В случае если первое средство кодирования «X» используют для текущей CU (406), применяют первое средство кодирования (408). В случае если условие в отношении параметров CU дополнительно проверяют (410), например, в случае если размер CU ниже значения, второе средство кодирования/процесс деактивируют. В ином случае, используют второе средство кодирования (420).

В одном варианте, в случае если первое средство кодирования «X» используют для текущей CU (406), применяют первое средство кодирования (408) и второе средство кодирования «Y» деактивируют. В этом варианте условие в отношении CU не проверяют.

На фиг. 8С параметры CU декодируют (400). В случае если используют первое средство кодирования «X» для текущей CU (406) и условие в отношении параметров CU проверяют (410), второе средство кодирования «Y» деактивируют. В ином случае, используют второе средство кодирования (420). Пунктирная линия обозначает, что применение средства кодирования «X» приспособлено посредством 406.

Варианты созданы исходя из выражения «условие (CU)» и порядка выполнения процесса средств «X» и «Y» (фиг. 8В или С). «Условие (CU)» получают из ранее декодированных данных (400) и оно может быть комбинацией следующих правил:

- деактивация инструмента «X» для небольших блоков (размер CU ниже значения),

- деактивация инструмента «X» для цветности (компонент CU представляет собой цветность),

- деактивация инструмента «X», если текущий слайс имеет временной идентификатор (TiD), который выше значения,

- деактивация инструмента «X», если он требует информацию (например, восстановленные отсчеты) от другого восстановленного блока, расположенного в другой CTU или за пределами текущей VPDU (единицы данных виртуальной схемы).

Уменьшение зависимости схемы для многогипотезного режима

На фиг. 9 показан процесс схемы межкадрового предсказания посредством программного обеспечения VVC для МН, в случае если входная битовая глубина или внутренняя битовая глубина равна 10 битам, в случае если также используются двунаправленное предсказание, BIO и GBI. Сначала применяют компенсацию движения для построения двух опорных блоков предсказания (500). Результат сохраняют в N битах, где N>10 (510), чтобы поддержать большую точность в дальнейших процессах (например, N=14 бит), а именно BIO (520) и взвешивание GBI (530). Затем значения отсчетов сохраняют (например, сдвиг вправо) (540) и обрезают (550) во внутренней битовой глубине (например, 10 битов), вследствие чего последующий процесс МН (560) выполняют с внутренней битовой глубиной (например, 10 битов).

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

Согласно одному варианту осуществления LIC деактивируют для одного или всех межкадровых режимов, в случае если используют МН. Это означает, что, если текущий межкадровый режим представляет собой «слияние», и LIC деактивируют, поскольку используют МН, флаг IC не подвергают слиянию, а предполагают равным нулю. Флаг IC представляет собой параметр, указывающий для блока, используется ли LIC.

Согласно одному варианту осуществления межкадровое двунаправленное предсказание деактивируют, в случае если используют МН, как показано на фиг. 10. BIO также активируют (по определению), поскольку оно применяется только к двунаправленному предсказанию.

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

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

Уменьшение зависимости схемы для LIC

На фиг. 11 показан процесс схемы межкадрового предсказания посредством программного обеспечения VVC для LIC, в случае если входная битовая глубина или внутренняя битовая глубина равна 10 битам, в случае если также используется двунаправленное предсказание. Сначала применяют компенсацию движения для построения двух опорных блоков предсказания (600). Результат сохраняют в точности внутренней битовой глубины (например, 10 битов) (610). Затем параметры LIC оценивают или извлекают из ранее сохраненных данных и применяют компенсацию освещенности (670). Она предусматривает взвешивание, сложение и смещение. Затем применяют сдвиг вправо к внутренней битовой глубине (10 битов) (640) и обрезание (650). Отсчеты затем преобразуют в N-битовую точность (680) перед применением весовых коэффициентов GBI (630).

где: (а; b) - параметры LIC,

Р - отсчет блока с компенсацией движения,

shiftLC - сдвиг вправо, вследствие чего PLIC представляет собой 10 битов,

PLIC - отсчеты предсказания с LIC.

Затем значения отсчетов сохраняют (например, сдвиг вправо) (640) и обрезают (650) во внутренней битовой глубине (например 10 битов).

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

Согласно одному варианту осуществления LIC деактивируют для компонента цветности и/или небольших блоков (размер CU ниже значения).

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

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

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

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

Пример синтаксиса представлен в таблице 2.

Согласно одному варианту осуществления, в случае если весовые коэффициенты GBI не представляют собой весовые коэффициенты по умолчанию, флаг IC кодируется, даже если текущая CU кодируется в режиме «слияния».

Согласно одному варианту осуществления LIC деактивируют, в случае если восстановленные отсчеты «recN» принадлежат к одной соседней CU (называемой N), которая может быть кодирована с помощью весовых коэффициентов GBI не по умолчанию.

Единицы данных виртуальной схемы (VPDU) определяются как неперекрывающиеся единицы М×М-яркость(L)/N×N-цветность(С) в изображении. В аппаратных декодерах последовательные VPDU обрабатываются на нескольких стадиях схемы одновременно. На разных стадиях разные VPDU обрабатываются одновременно. Как правило, VPDU представляет собой блок 64×64-яркости/32×32-цветности. Должны быть проверены три следующих условия:

- для каждой VPDU, содержащей одну или несколько CU, CU полностью содержатся в VPDU;

- Для каждой CU, содержащей одну или несколько VPDU, VPDU полностью содержатся в CU;

- Порядок обработки CU должен не покидать VPDU с последующим возвратом к ней позже.

Зависимость восстановления блоков, вводимая с LIC, может быть приемлемой для данных в кэш-памяти, которая соответствует, как правило, одной CTU или одной VPDU, которая связана с аппаратным обеспечением и/или требованием/ограничением кэш-памяти реализации для декодирования элементарной CU, и которая дополнительно связана с максимальным размером участка отсчетов, который может быть обработан аппаратным обеспечением по принципу «все в одном».

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

Согласно одному варианту осуществления, в случае если: режим кодирования текущего блока представляет собой «слияние», индекс слияния указывает, что соседний N используется для слияния, этот блок имеет флаг IC, равный истинному (параметры IC обозначены как ICN), и отсчеты «recN» находятся за пределами CTU или VPDU, то флаг IC является истинным для текущего блока, и ICN (параметры LIC, используемые соседним блоком N) повторно используются для построения предсказания текущего блока вместо использования отсчетов «recN» для получения текущих параметров LIC.

Согласно одному варианту осуществления LIC вычисляется с увеличенной точностью (670), т.е. shiftLIC (уравнение 6) устанавливают таким образом, что точность отсчета представляет N битов после процесса LIC, и отсчеты обрезаются только в конце процесса предсказания, как показано на фиг. 12.

Уменьшение зависимости схемы для фильтров, «применяемых после восстановления»

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

Если обработка «после восстановления» не применяется к одному компоненту (например, цветности), то, если LIC деактивируют для текущей CU (например, флаг LIC является ложным), то обработка «после восстановления» может применяться только к другому компоненту (например, яркости).

Например, если LIC активируют и/или применяют к текущей CU (например, флаг LIC является истинным согласно предположению или кодированию), применяемую после восстановления фильтрацию деактивируют, как показано на фиг. 1d„ для всех компонентов.

В другом примере, если процесс LIC может быть активирован для каждого компонента (например, один флаг LIC, предполагаемый или кодируемый для яркости, и другой флаг LIC, предполагаемый или кодируемый для цветности), процесс фильтрации «после восстановления» деактивируют для одного компонента, если флаг LIC активируют для этого компонента.

Уменьшение схемы для ОВМС

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

Согласно одному варианту осуществления ОВМС деактивируют (т.е. не используют) для небольших блоков (например, 4×4). Согласно одному варианту осуществления ОВМС не выполняют для блоков цветности. Согласно одному варианту осуществления ОВМС деактивируют (т.е. не используют), в случае если текущий блок использует LIC. Согласно одному варианту осуществления LIC не используют в процессе ОВМС. Согласно одному варианту осуществления BIO не используют в процессе ОВМС.

Уменьшение схемы для BIO

Согласно одному варианту осуществления BIO деактивируют, если весовые коэффициенты GBI не являются весовыми коэффициентами по умолчанию.

BIO и DMVR представляют собой две методики с одинаковой целью, состоящей в уточнении MV. Таким образом, BIO деактивируют, в случае если DMVR используют для текущего блока, и наоборот (взаимное исключение).

Уменьшение схемы для DMVR

В уровне техники LIC деактивируют с DMVR. Фактически, активация LIC, которая предусматривает вычисление параметров LIC для каждого MV, подлежащего проверке, существенно увеличивает объем вычисления. Было предложено выполнять DMVR без LIC и активировать процесс LIC после стадии DMVR, как показано на фиг. 1. Однако, поскольку DMVR не содержит LIC, точность уточнения MV существенно уменьшается. Для преодоления этого ограничения предлагается выполнять вычисление параметров LIC с значениями MVinitial (перед уточнением MV с DMVR) и без уточнения параметров LIC в процессе DMVR, т.е. параметры LIC не вычисляются в процессе DMVR или после него, как показано на фиг. 13.

Уменьшение схемы для деблочного фильтра

Согласно одному варианту осуществления эффективность DBF уменьшается на одном краю, если ОВМС применяются к этому краю, и/или в случае если этот край принадлежит к одному блоку, в котором активирована LIC или BIO.

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

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

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

Различные способы и другие аспекты, описанные в настоящей заявке, могут использоваться для изменения различных модулей, например, модулей (170, 275) компенсации движения, модулей (190, 290) уточнения движения, модулей (195, 295) LIC, нескольких модулей (105, 270) комбинации предсказаний видеокодера 100 и декодера 200, как показано на фиг. 15 и 16. Более того, настоящие аспекты не ограничены VVC или HEVC, и могут применяться, например, к другим стандартам и рекомендациям, которые уже существуют или будут разработаны в будущем, и к расширениям любых таких стандартов и рекомендаций (включая VVC и HEVC). Если не указано иное, или если это технически возможно, аспекты, описанные в настоящей заявке, могут использоваться по отдельности или в комбинации.

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

На фиг. 15 изображен кодер 100. Возможны вариации этого кодера 100, но кодер 100 описан ниже для ясности без описания всех ожидаемых вариаций.

Перед кодированием видеопоследовательность может быть подвергнута обработке (101) перед кодированием, например, применению преобразования цвета к входному цветному изображению (например, преобразования из RGB 4:4:4 в YCbCr 4:2:0), или преобразованию со сжатием компонентов входного изображения для получения распределения сигнала, более устойчивого к сжатию (например, с использованием выравнивания гистограммы одного из компонентов цвета). Метаданные могут быть связаны с предварительной обработкой и прикреплены к битовому потоку.

В кодере 100 изображение кодируется посредством элементов кодера, как описано ниже. Изображение, подлежащее кодированию, разбивается (102) и обрабатывается в виде единиц, например, CU. Каждая единица кодируется, например, с помощью внутри- или межкадрового режима. Когда единица кодируется во внутрикадровом режиме, выполняется внутрикадровое предсказание (160). В межкадровом режиме выполняется оценка (175) движения, возможно уточнение (190) движения, компенсация (170) движения и возможно компенсация (195) освещенности. Уточнение движения может использовать DMVR или BIO. Кодер решает (105), какой режим использовать для кодирования единицы внутрикадровый или межкадровый, и указывает решение о выборе внутрикадрового/межкадрового режима, например, посредством флага режима предсказания. Кодер также может комбинировать (105) несколько предсказаний, например, в режиме МН или в режиме двунаправленного предсказания. Остатки предсказания вычисляются, например, путем вычитания (110) спрогнозированного блока из исходного блока изображения.

Остатки предсказания затем подвергают преобразованию (125) и квантованию (130). Квантованные коэффициенты преобразования, а также векторы движения и другие элементы синтаксиса, подвергают энтропийному кодированию (145) для вывода битового потока. Кодер может пропускать преобразование и применять квантование непосредственно к не подвергнутому преобразованию остаточному сигналу. Кодер может обходить как преобразование, так и квантование, т.е. остаток кодируется непосредственно без применения процессов преобразования или квантования.

Кодер декодирует кодированный блок для обеспечения опорного блока для дальнейших предсказаний. Квантованные коэффициенты преобразования подвергаются деквантованию (140) и обратному преобразованию (150) для декодирования остатков предсказания. За счет комбинирования (155) декодированных остатков предсказания и спрогнозированного блока восстанавливают блок изображения. Фильтры внутри петли (165) применяются к восстановленному изображению для выполнения, например, удаления блочности/фильтрации SAO (адаптивного смещения отсчетов) для уменьшения артефактов кодирования. Подвергнутое фильтрации графическое изображение хранится в буфере (180) опорных изображений.

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

В частности, входные данные декодера включают битовый поток видео, который может быть сгенерирован видеокодером 100. Битовый поток сначала подвергается энтропийному декодированию (230) для получения коэффициентов преобразования, векторов движения и другой кодированной информации. Информация о разбиении изображения указывает, как разбивается изображение. Декодер, таким образом, может разделять (235) изображение согласно информации о разбиении декодированного изображения. Коэффициенты преобразования подвергаются деквантованию (240) и обратному преобразованию (250) для декодирования остатков предсказания. За счет комбинирования (255) декодированных остатков предсказания и спрогнозированного блока восстанавливают блок изображения. Спрогнозированный блок может быть получен из внутрикадрового предсказания (260), предсказания с компенсацией движения (т.е. межкадрового предсказания) (275) или из комбинации (270) нескольких предсказаний (например, в режиме МН или в двунаправленном режиме). Предсказание с компенсацией движения может быть дополнительно подвергнуто компенсации освещенности (295). Как и кодер, декодер также может содержать модуль, выполненный с возможностью уточнения (например, с помощью DMVR или BIO) декодированных векторов движения (290). Фильтры внутри петли (265) применяются к восстановленному графическому изображению. Подвергнутое фильтрации графическое изображение хранится в буфере (280) опорных изображений.

Декодированное изображение может быть дополнительно подвергнуто обработке (285) после декодирования, например, обратному преобразованию цвета (например, преобразованию из YCbCr 4:2:0 в RGB 4:4:4) или обратному преобразованию со сжатием, выполняющему действие, обратное процессу преобразования со сжатием, выполняемому при обработке (101) перед кодированием. Обработка после декодирования может использовать метаданные, полученные при обработке перед кодированием и переданные в битовом потоке.

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

Система 1000 содержит по меньшей мере один процессор 1010, выполненный с возможностью исполнения инструкций, загруженных на него, для реализации, например, различных аспектов, описанных в настоящем документе. Процессор 1010 может содержать встроенное запоминающее устройство, интерфейс ввода/вывода и различные другие схемы, известные в уровне техники. Система 1000 содержит по меньшей мере одно запоминающее устройство 1020 (например, энергозависимое запоминающее устройство и/или энергонезависимое запоминающее устройство). Система 1000 содержит устройство 1040 хранения данных, которое может содержать энергонезависимое запоминающее устройство и/или энергозависимое запоминающее устройство, включая без ограничения, электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), постоянное запоминающее устройство (ROM), программируемое постоянное запоминающее устройство (PROM), оперативное запоминающее устройство (RAM), динамическое оперативное запоминающее устройство (DRAM), статическое оперативное запоминающее устройство (SRAM), флэш-память, накопитель на магнитных дисках и/или накопитель на оптических дисках. Устройство 1040 хранения данных может включать внутреннее устройство хранения данных, подключаемое устройство хранения данных (включая съемные и несъемные устройства хранения данных) и/или устройство хранения данных с доступом через сеть, в качестве неограничивающих примеров.

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

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

Согласно некоторым вариантам осуществления запоминающее устройство внутри процессора 1010 и/или модуля 1030 кодера/декодера используется для хранения инструкций и обеспечения работающего запоминающего устройства для обработки, которая необходима во время кодирования или декодирования. Однако согласно другим вариантам осуществления запоминающее устройство, внешнее по отношению к обрабатывающему устройству (например, обрабатывающее устройство может быть либо процессором 1010, либо модулем 1030 кодера/декодера), используется для одной или нескольких из этих функций. Внешнее запоминающее устройство может представлять собой запоминающее устройство 1020 и/или устройство 1040 хранения данных, например, динамическое энергозависимое запоминающее устройство и/или энергонезависимую флэш-память. Согласно некоторым вариантам осуществления внешняя энергонезависимая флэш-память используется для хранения операционной системы, например, телевизора. Согласно по меньшей мере одному варианту осуществления быстрое внешнее динамическое энергозависимое запоминающее устройство, такое как RAM, используется как работающее запоминающее устройство для операций кодирования и декодирования видео, например, для MPEG-2 (MPEG относится к Экспертной группе по движущимся изображениям, MPEG-2 также называется ISO/IEC 13818, и 13818-1 также известно как Н.222, и 13818-2 также известно как Н.262), HEVC (HEVC относится к высокоэффективному видеокодированию, также известному как Н.265 и MPEG-H часть 2), или VVC (универсальное кодирование видео, новый стандарт, разработанный JVET, объединенной командой видео-экспертов).

Ввод в элементы системы 1000 может быть обеспечен посредством различных устройств ввода, как указано в блоке 1130. Такие устройства ввода включают, без ограничения, (i) радиочастотную (RF) часть, которая принимает RF сигнал, переданный, например, по беспроводной связи радиостанцией, (ii) входной разъем компонента (СОМР) (или набор входных разъемов СОМР), (iii) входной разъем универсальной последовательной шины (USB), и/или (iv) входной разъем мультимедийного интерфейса высокой четкости (HDMI). Другие примеры, не показанные на фиг. 10, включают составное видео.

Согласно различным вариантам осуществления устройства ввода блока 1130 содержат связанные соответствующие элементы обработки ввода, как известно в данной области техники. Например, RF часть может быть связана с элементами, подходящими для (i) выбора желаемой частоты (также называемой выбором сигнала, или ограничением сигнала полосой частот), (ii) преобразования с понижением частоты выбранного сигнала, (iii) повторное ограничение более узкой полосой частот для выбора (например) полосы частот сигнала, которая может считаться каналом согласно некоторым вариантам осуществления, (iv) демодуляции сигнала, подвергнутого преобразованию с понижением частоты и ограничению полосы, (v) выполнения исправления ошибок и (vi) демультиплексирования для выбора желаемого потока пакетов данных. RF часть различных вариантов осуществления содержит один или несколько элементов для выполнения этих функций, например, частотные селекторы, селекторы сигналов, ограничители полосы, селекторы каналов, фильтры, преобразователи с понижением частоты, демодуляторы, блоки исправления ошибок и демультиплексоры. RF часть может содержать блок настройки, который выполняет некоторые из этих функций, включая, например, преобразование с понижением частоты принятого сигнала до более низкой частоты (например, промежуточной частоты или частоты около основной полосы) или основной полосы. Согласно одному варианту осуществления с телевизионной приставкой RF часть и ее связанный элемент обработки ввода принимает RF сигнал, переданный по проводной среде (например, кабелю), и выполняет выбор частоты путем фильтрации, преобразования с понижением частоты и повторной фильтрации до желаемой полосы частот. Согласно различным вариантам осуществления порядок вышеописанных (и других) элементов изменен, некоторые из этих элементов удалены и/или добавлены другие элементы, выполняющие аналогичные или другие функции. Добавление элементов может включать вставку элементов между существующими элементами, например, вставку усилителей и аналого-цифрового преобразователя. Согласно различным вариантам осуществления RF часть содержит антенну.

Дополнительно разъемы USB и/или HDMI могут содержать соответствующие процессоры интерфейса для соединения системы 1000 с другими электронными устройствами посредством соединений USB и/или HDMI. Следует понимать, что различные аспекты обработки ввода, например, исправления ошибок Рида Соломона, могут быть реализованы, например, в пределах отдельной IC обработки ввода или внутри процессора 1010 при необходимости. Аналогично, аспекты обработки интерфейса USB или HDMI могут быть реализованы в отдельных IC интерфейса или в процессоре 1010 по мере необходимости. Демодулированный, с исправленными ошибками и демультиплексированный поток предоставляется в различные элементы обработки, в том числе, например, процессор 1010 и кодер/декодер 1030, которые работают в сочетании с запоминающим устройством элементами хранения для обработки потока данных по мере необходимости для представления на устройства вывода.

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

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

Данные передаются в потоковом режиме или иным образом передаются в систему 1000 в различных вариантах осуществления с помощью беспроводной сети, такой как сеть Wi-Fi, например IEEE 802.11 (IEEE обозначает Институт инженеров по электротехнике и радиоэлектронике). Сигнал Wi-Fi этих вариантов осуществления получен по каналу 1060 связи и интерфейсу 1050 связи, которые адаптированы для передач по Wi-Fi. Канал 1060 связи этих вариантов осуществления обычно соединен с точкой доступа или маршрутизатором, которые обеспечивают доступ к внешним сетям, включая Интернет, для обеспечения потоковой передачи и другой передачи по технологии Over-the-top.Согласно другим вариантам осуществления потоковые данные передаются в систему 1000 с использованием телевизионной приставки, которая доставляет данные по подключению HDMI входного блока 1130. Согласно другим вариантам осуществления потоковые данные передаются в систему 1000 с помощью RF соединения с входным блоком 1130. Как указано выше, согласно различным вариантам осуществления данные передаются не в потоковом режиме. Дополнительно, согласно различным вариантам осуществления используются беспроводные сети, отличающиеся от Wi-Fi, например, сотовая сеть или сеть Bluetooth.

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

Согласно различным вариантам осуществления управляющие сигналы передаются между системой 1000 и дисплеем 1100, громкоговорителями 1110 или другими периферийными устройствами 1120 с помощью такой сигнальной информации, как AV.Link, Consumer Electronics Control (CEC), или других протоколов связи, которые обеспечивают управление между устройствами с вмешательством пользователя или без него. Устройства вывода могут быть соединены с возможностью связи с системой 1000 посредством выделенных соединений через соответствующие интерфейсы 1070, 1080 и 1090. Альтернативно устройства вывода могут быть соединены с системой 1000 с помощью канала 1060 связи посредством интерфейса 1050 связи. Дисплей 1100 и громкоговорители 1110 могут быть встроены в один блок с другим компонентами системы 1000 в электронном устройстве, таком как, например, телевизор. Согласно различным вариантам осуществления интерфейс 1070 дисплея содержит драйвер дисплея, такой как, например, микросхема контроллера синхронизации (Т Con).

Дисплей 1100 и громкоговоритель 1110 могут альтернативно быть отделены от одного или нескольких из других компонентов, например, если RF часть ввода 1130 является частью отдельной телевизионной приставки. Согласно различным вариантам осуществления, в которых дисплей 1100 и громкоговорители 1110 являются внешними компонентами, выходной сигнал может передаваться посредством выделенных выходных соединений, включая, например, порты HDMI, порты USB или выводы СОМР.

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

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

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

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

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

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

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

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

Варианты реализации и аспекты, описанные в настоящем документе, могут быть реализованы, например, в способе или процессе, устройстве, программно реализованной программе, потоке данных или сигнале. Даже если описание ведется только в контексте единственной формы реализации (например, описание только в качестве способа), реализация описанных признаков также может быть выполнена в других формах (например, как устройство или программа). Устройство может быть реализовано, например, в виде соответствующего аппаратного обеспечения, программного обеспечения и программно-аппаратного обеспечения. Способы могут быть реализованы, например, процессором, который относится к устройствам обработки в целом, включая, например, компьютер, микропроцессор, интегральную схему или программируемое логическое устройство. Процессоры также включают устройства связи, такие как, например, компьютеры, сотовые телефоны, портативные/персональные цифровые ассистенты («PDA») и другие устройства, которые облегчают обмен информацией между конечными пользователями.

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

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

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

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

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

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

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

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

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

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

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

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

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

- декодирование параметров для текущего блока;

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

- в ином случае, активацию для указанного текущего блока указанного средства кодирования; и

- декодирование указанного текущего блока в соответствии с указанным средством кодирования.

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

- получение параметров для текущего блока;

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

- в ином случае, активацию для указанного текущего блока указанного средства кодирования; и

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

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

- декодирования параметров для текущего блока;

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

- в ином случае, активации для указанного текущего блока указанного средства кодирования; и

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

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

- получения параметров для текущего блока;

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

- в ином случае, активации для указанного текущего блока указанного средства кодирования; и

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

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

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

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

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

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

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

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

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

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

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

название год авторы номер документа
УСОВЕРШЕНСТВОВАННАЯ ОБРАБОТКА ВЕСОВЫХ КОЭФФИЦИЕНТОВ ПРИ ИСПОЛЬЗОВАНИИ КОМБИНИРОВАННОГО РЕЖИМА С ВНУТРИКАДРОВЫМ И МЕЖКАДРОВЫМ ПРОГНОЗИРОВАНИЕМ 2020
  • Лю, Хунбинь
  • Чжан, Ли
  • Чжан, Кай
  • Сюй, Цзичжэн
  • Ван, Юэ
  • Цханг, На
RU2802175C2
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ ВИДЕО 2020
  • Ли Гуйчунь
  • Ли Сян
  • Сюй Сяочжун
  • Лю Шань
RU2777498C1
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЙ 2020
  • Франсуа, Эдуард
  • Лелеаннек, Фабрис
  • Пуарье, Танги
RU2789112C1
СПОСОБЫ УМЕНЬШЕНИЯ МЕЖКОМПОНЕНТНОЙ ЗАВИСИМОСТИ 2020
  • Дэн, Чжипинь
  • Чжан, Ли
  • Лю, Хунбинь
  • Чжан, Кай
  • Сюй, Цзичжэн
RU2815434C2
ИНТЕРПОЛЯЦИЯ ДЛЯ ВНЕШНЕГО ПРЕДСКАЗАНИЯ С УТОЧНЕНИЕМ 2019
  • Чжан, Кай
  • Чжан, Ли
  • Лю, Хунбинь
  • Ван, Юэ
RU2808586C2
СПОСОБ И УСТРОЙСТВО ДЛЯ ОБРАБОТКИ ДАННЫХ ВИДЕО И НОСИТЕЛЬ ДЛЯ ХРАНЕНИЯ ИНФОРМАЦИИ 2020
  • Чжан, Кай
  • Чжан, Ли
  • Лю, Хунбинь
  • Ван, Юэ
RU2812648C2
ВЗАИМОДЕЙСТВИЕ МЕЖДУ ВНУТРИКОНТУРНЫМ ПЕРЕФОРМИРОВАНИЕМ И ИНСТРУМЕНТАМИ ДЛЯ МЕЖКАДРОВОГО КОДИРОВАНИЯ 2020
  • Чжан, Ли
  • Чжан, Кай
  • Лю, Хунбинь
  • Сюй, Цзичжэн
  • Ван, Юэ
RU2806282C2
ПЕРЕДАЧА СИГНАЛИЗАЦИИ С ИНФОРМАЦИЕЙ О ВНУТРИКОНТУРНОМ ПЕРЕФОРМИРОВАНИИ С ИСПОЛЬЗОВАНИЕМ НАБОРА ПАРАМЕТРОВ 2020
  • Чжан, Ли
  • Чжан, Кай
  • Лю, Хунбинь
  • Сюй, Цзичжэн
  • Ван, Юэ
RU2808682C2
ВИДЕОКОДЕР, ВИДЕОДЕКОДЕР И СООТВЕТСТВУЮЩИЙ СПОСОБ 2020
  • Чэнь, Сюй
  • Ян, Хайтао
  • Чжан, Лян
RU2819065C2
СПОСОБ ИСПОЛЬЗОВАНИЯ ИНТЕРПОЛЯЦИОННЫХ ФИЛЬТРОВ ДЛЯ ПРОГНОЗИРОВАНИЯ ВЕКТОРА ДВИЖЕНИЯ НА ОСНОВЕ ПРЕДЫСТОРИИ 2020
  • Лю, Хунбинь
  • Чжан, Ли
  • Чжан, Кай
  • Сюй, Цзичжэн
  • Ван, Юэ
RU2812698C2

Иллюстрации к изобретению RU 2 824 658 C2

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

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

Формула изобретения RU 2 824 658 C2

1. Способ декодирования, предусматривающий:

- декодирование параметров для текущего блока;

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

- декодирование указанного текущего блока с использованием указанного первого средства кодирования, если указанное первое средство кодирования активировано,

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

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

2. Способ кодирования, предусматривающий:

- получение параметров для текущего блока;

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

- кодирование указанного текущего блока с использованием первого средства кодирования, если первое средство кодирования активировано;

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

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

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

- декодирования параметров для текущего блока;

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

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

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

- получения параметров для текущего блока;

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

и кодирования указанного текущего блока с использованием первого средства кодирования, если первое средство кодирования активировано;

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

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

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

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

Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз 1924
  • Подольский Л.П.
SU2014A1
Abe K
et al
Очаг для массовой варки пищи, выпечки хлеба и кипячения воды 1921
  • Богач Б.И.
SU4A1
Способ получения цианистых соединений 1924
  • Климов Б.К.
SU2018A1
Chih-Wei Hsu et al
"Description of SDR video coding technology proposal by MediaTek", San Diego, Apr
Способ получения цианистых соединений 1924
  • Климов Б.К.
SU2018A1
Способ получения цианистых соединений 1924
  • Климов Б.К.
SU2018A1
Автомобиль-сани, движущиеся на полозьях посредством устанавливающихся по высоте колес с шинами 1924
  • Ф.А. Клейн
SU2017A1
Токарный резец 1924
  • Г. Клопшток
SU2016A1
Устройство для закрепления лыж на раме мотоциклов и велосипедов взамен переднего колеса 1924
  • Шапошников Н.П.
SU2015A1
RU

RU 2 824 658 C2

Авторы

Борд, Филипп

Пуарье, Танжи

Чэнь, Я

Даты

2024-08-12Публикация

2019-11-15Подача