Способ и устройство для реализации внутрикадрового предсказания

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

 

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

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

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

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

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

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

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

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

Целью еще одного аспекта настоящего изобретения является предложение способа формирования опорного пиксела, в котором при использовании ограниченного внутрикадрового предсказания (CIP, constrained intra prediction) опорный пиксел формируют на основании прилегающего блока с внутрикадровым режимом предсказания, находящегося в положении прилегающего пиксела с межкадровым режимом предсказания, и используют опорный пиксел для внутрикадрового предсказания.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Технический результат

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

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

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

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

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

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

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

На фиг. 4 схематично показан способ предсказания по плоскости.

На фиг. 5 схематично показан еще один способ предсказания по плоскости.

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

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

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

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

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

На фиг. 11 схематично показан способ ограниченного внутрикадрового предсказания (CIP).

На фиг. 12 схематично показан еще один способ CIP.

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

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

На фиг. 15 показано направление предсказания в режиме внутрикадрового предсказания.

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

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

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

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

На фиг. 1 показана функциональная схема конфигурации видеокодера в соответствии с примерным вариантом осуществления настоящего изобретения. Как показано на фиг. 1, видеокодер содержит модуль 110 разбиения изображения, модуль 120 межкадрового предсказания, модуль 125 внутрикадрового предсказания, модуль 130 преобразования, модуль 135 квантования (квантизации), модуль 140 деквантования (деквантизации), модуль 145 обратного преобразования, фильтр 150 подавления блочности, запоминающее устройство (память) 160, модуль 165 переупорядочения и модуль 170 энтропийного кодирования.

Модуль 110 разбиения изображения выполнен с возможностью принимать текущее изображение и выполнять разбиение указанного изображения на по меньшей мере один элемент кодирования. Элементом кодирования (coding unit, CU, ЭК) называют элемент изображения, над которым видеокодер выполняет операцию кодирования. Элемент кодирования может быть рекурсивно разделен на более мелкие элементы кодирования до некоторой глубины в соответствии со структурой дерева квадрантов. Элемент кодирования с наибольшим размером называется наибольшим элементом кодирования (largest coding unit, LCU), а элемент кодирования с наименьшим размером называется наименьшим элементом кодирования (smallest coding unit, SCU). Элемент кодирования может иметь размер 8×8, 16×16, 32×32 или 64×64. Модуль 110 разбиения изображения может выполнять разбиение (деление) элемента кодирования с целью формирования элемента предсказания и элемента преобразования. Элемент предсказания может обозначаться как PU (prediction unit), а элемент преобразования может обозначаться как TU (transform unit).

В режиме межкадрового предсказания используется модуль 120 межкадрового предсказания, выполненный с возможностью выполнять оценку перемещения (motion estimation, ME) и выполнять компенсацию перемещения (motion compensation, МС). Модуль 120 межкадрового предсказания формирует блок предсказания на основании информации о по меньшей мере одном из предшествующих и последующих кадров текущего изображения; такое предсказание может называться межкадровым предсказанием.

В модуль 120 межкадрового предсказания передаются полученный разбиением целевой блок предсказания и по меньшей мере один опорный блок, хранимый в запоминающем устройстве (памяти) 160. Используя указанные целевой блок предсказания и опорный блок, модуль 120 межкадрового предсказания выполняет оценку перемещения. В результате оценки перемещения модуль 120 межкадрового предсказания формирует информацию о перемещении, содержащую вектор перемещения (motion vector, MV), индекс опорного блока и режим предсказания.

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

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

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

На фиг. 2 представлена обобщенная функциональная схема конфигурации модуля внутрикадрового предсказания в соответствии с примерным вариантом осуществления настоящего изобретения. Как показано на фиг. 2, модуль внутрикадрового предсказания содержит модуль 210 выбора опорных пикселов, модуль 220 выбора режима внутрикадрового предсказания и модуль 230 формирования блока предсказания.

Модуль 210 выбора опорных пикселов формирует опорный пиксел, требующийся для внутрикадрового предсказания. Для формирования опорного пиксела используются пикселы в крайней правой вертикальной линии левого блока, прилегающего к целевому блоку предсказания, и пикселы в крайней нижней горизонтальной линии верхнего блока, прилегающего к целевому блоку предсказания. Например, если целевой блок предсказания имеет размер N, то в качестве опорных пикселов используются 2N пикселов в каждом из направлений влево и вверх. Опорный пиксел может использоваться как непосредственно, так и с применением фильтра адаптивного внутрикадрового сглаживания (adaptive intra smoothing, AIS). Если опорный пиксел подвергается фильтрации AIS, то сообщается информация о применении фильтрации AIS.

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

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

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

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

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

Модуль 135 квантования (квантизации) выполнен с возможностью квантования значений, преобразованных модулем 130 преобразования. Коэффициент квантования может меняться соответственно конкретному блоку или значимости изображения. Прошедший квантование коэффициент преобразования может передаваться в модуль 165 переупорядочения и в модуль 140 деквантования.

Модуль 165 переупорядочения выполнен с возможностью с целью повышения эффективности энтропийного кодирования переупорядочивать путем сканирования двумерный (2D) блок коэффициентов преобразования в одномерный (1D) вектор коэффициентов преобразования. С целью повышения эффективности энтропийного кодирования модуль 165 переупорядочения может менять порядок сканирования на основании стохастической статистики.

Модуль 170 энтропийного кодирования выполняет энтропийное кодирование значений, выдаваемых из модуля 165 переупорядочения, и из полученных кодированных значений формируется сжатый битовый поток, который сохраняется либо передается через абстрактный уровень сети (network abstraction layer, NAL).

Модуль 140 деквантования (деквантизации) принимает и деквантует коэффициенты преобразования, прошедшие квантование в модуле 135 квантования, а модуль 145 обратного преобразования выполняет обратное преобразование указанных коэффициентов преобразования, в результате чего формируется восстановленный разностный блок. Указанный восстановленный разностный блок объединяется с блоком предсказания, сформированным модулем 120 межкадрового предсказания или модулем 125 внутрикадрового предсказания, в результате чего формируется восстановленный блок. Указанный восстановленный блок передается в модуль 125 внутрикадрового предсказания и в фильтр 150 подавления блочности.

Фильтр 150 подавления блочности фильтрует восстановленный блок с целью устранения искажений на границе между блоками, внесенных в операциях кодирования и декодирования, и передает результат, полученный в результате фильтрации, в адаптивный петлевой фильтр (adaptive loop filter, ALF) 155.

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

Запоминающее устройство (память) 160 может хранить окончательный восстановленный блок, полученный путем использования ALF 155, и указанный сохраненный (окончательный) восстановленный блок может передаваться в модуль 120 межкадрового предсказания для выполнения межкадрового предсказания.

На фиг. 3 показана функциональная схема конфигурации видеодекодера в соответствии с примерным вариантом осуществления настоящего изобретения. Как показано на фиг. 3, видеодекодер включает модуль 310 энтропийного декодирования, модуль 315 переупорядочения, модуль 320 деквантования, модуль 325 обратного преобразования, модуль 330 межкадрового предсказания, модуль 335 внутрикадрового предсказания, фильтр 340 подавления блочности, фильтр ALF 345 и запоминающее устройство (память) 350.

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

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

Указанный разностный блок может объединяться с блоком предсказания, сформированным модулем 330 межкадрового предсказания или модулем 335 внутрикадрового предсказания, в результате чего формируется восстановленный блок. Восстановленный блок передается в модуль 335 внутрикадрового предсказания и в фильтр 340 подавления блочности. Модуль 330 межкадрового предсказания и модуль 335 внутрикадрового предсказания выполнены с возможностью выполнять операции, аналогичные операциям, выполняемым модулем 120 межкадрового предсказания и модулем 125 внутрикадрового предсказания видеокодера.

Фильтр 340 подавления блочности фильтрует восстановленный блок с целью устранения искажений на границе между блоками, внесенных в операциях кодирования и декодирования, и передает результат, полученный в результате фильтрации, в фильтр ALF 345. Фильтр ALF 345 выполняет фильтрацию таким образом, чтобы минимизировать ошибку между целевым блоком предсказания и окончательным восстановленным блоком. Запоминающее устройство (память) 350 может хранить окончательный восстановленный блок, полученный путем использования фильтра ALF 345, и указанный сохраненный (окончательный) восстановленный блок может передаваться в модуль 330 межкадрового предсказания для выполнения межкадрового предсказания.

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

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

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

На фиг. 4 схематично показан способ предсказания по плоскости.

Как показано на фиг. 4(A), сначала предсказывают значение пиксела 425, расположенного в нижнем правом углу текущего блока. Значение пиксела 425 в нижнем правом углу текущего блока может быть предсказано по постоянной составляющей.

Как показано на фиг. 4(B), предсказывают значения пикселов, расположенных на правой границе текущего блока, и значения пикселов, расположенных на нижней границе текущего блока. Например, значение пиксела 445, расположенного на правой границе текущего блока, может быть предсказано путем линейной интерполяции значения пиксела 450 верхнего блока и предсказанного по постоянной составляющей значения пиксела 425. Значение пиксела 435, расположенного на нижней границе текущего блока, может быть предсказано путем линейной интерполяции значения пиксела 430 левого блока и предсказанного по постоянной составляющей значения пиксела 425.

Как показано на фиг. 4(C), путем билинейной интерполяции с использованием значений пикселов верхнего и левого блоков и уже предсказанных значений пикселов текущего блока могут быть предсказаны значения остальных пикселов, отличных от пиксела в нижнем правом углу, пикселов на правой границе и пикселов на нижней границе в текущем блоке. Например, значение пиксела 475 в текущем блоке может быть предсказано путем интерполяции с использованием значения пиксела 460 верхнего блока, значения пиксела 455 левого блока, уже предсказанного значения пиксела 445, расположенного на правой границе текущего блока, и уже предсказанного значения пиксела 435, расположенного на нижней границе текущего блока.

Как показано на фиг. 4(D), может быть выполнено уточнение образцов предсказаний (предсказанных образцов), предсказанных посредством вышеописанной операции. Например, значение X пиксела 485 в текущем блоке может быть уточнено с использованием значения Т верхнего образца 480 и значения L левого образца 490. Конкретно, уточненное значение X′ для значения X может быть получено с использованием формулы X′={(X<<+1)+L+T+1}>>2. Здесь выражение x<<y означает арифметический сдвиг целочисленного представления как дополнения до двух x влево на y двоичных разрядов, а выражение x>>y означает арифметический сдвиг целочисленного представления как дополнения до двух x вправо на y двоичных разрядов.

На фиг. 5 схематично показан еще один способ предсказания по плоскости.

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

Как показано на фиг. 5(A), значения диагональных пикселов 540 текущего блока 510 предсказывают с использованием значения пиксела 520 верхнего опорного блока и значения пиксела 530 левого опорного блока. Например, значение диагонального пиксела P в текущем блоке может быть получено с использованием значения пиксела AboveRef из числа пикселов верхнего блока, расположенного на границе между текущим блоком и верхним блоком, и значения пиксела LeftRef из числа пикселов левого блока, расположенного на границе между текущим блоком и левым блоком по формуле P=(LeftRef+AboveRef+1)>>1.

Как показано на фиг. 5(B), значения пикселов 510 в текущем блоке, отличных от диагональных пикселов 540, могут быть получены путем линейной интерполяции с использованием значений пикселов, полученных в соответствии с фиг. 5(А), и значений пикселов, расположенных на границах верхнего и левого блоков. Например, пиксел P1 может быть предсказан с использованием значения пиксела AboveRef из верхнего блока и предсказанного значения диагонального пиксела P по формуле P1=(AboveRef*d2+P*d1)/(d1+d2). Пиксел P2 может быть предсказан по формуле Р2=(LeftRef*d3+P*d4)/(d3+d4).

Хотя способы предсказания по плоскости, показанные на фиг. 4 и 5, эффективны для однородных текстур без анизотропии (без выделенного направления), данные способы могут быть менее эффективны для предсказания в случае анизотропных текстур, например, если значения пикселов яркостного канала (luma) в одном направлении, например, в горизонтальном направлении, значительно изменяются, но мало изменяются в другом направлении, например, в вертикальном направлении.

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

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

Пример 1

На фиг. 6 схематично показано, что вначале предсказывают диагональный пиксел Pii текущего блока предсказания. Хотя на фиг. 6 для удобства описания показан блок предсказания размером 8×8, настоящее изобретение не ограничено указанным размером и может быть применено к блоку предсказания размера N×N.

В примере 1, показанном на фиг. 6, вначале предсказывают диагональные пикселы текущего блока предсказания, используя опорный пиксел (Ri0 и/или R0j, 0≤i, j≤8 в случае блока предсказания размером 8×8) опорного блока, прилегающего к текущему блоку предсказания.

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

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

В настоящем изобретении предсказание по плоскости выполняется с учетом изменения значений пикселов. Например, как показано на фиг. 7(A), если значения опорных пикселов возрастают как в направлении x (вправо), так и в направлении y (вниз), то более вероятно, что значения пикселов в блоке предсказания увеличиваются в направлении вниз вправо. В этом случае первым может предсказываться значение пиксела Р88 в нижнем правом углу блока предсказания, а затем на основании значения пиксела Р88 могут предсказываться другие пикселы.

Для предсказания значения Р88 можно в качестве значения базового пиксела взять значение опорного пиксела R00 в верхнем левом углу текущего блока предсказания и применить к значению базового пиксела вариацию от указанного базового пиксела к целевому пикселу Р88 предсказания в блоке предсказания. Например, значение целевого пиксела Р88 может быть получено по формуле 1. Для удобства изложения значения Rij и Pij, показанные на чертежах и в описании, в формулах представлены как Ri,j и Ri,j.

[формула 1]

.

После нахождения Р88 значения других диагональных пикселов Pii могут быть получены по формуле 2.

[формула 2]

.

Поскольку настоящий пример иллюстрирует случай с размером блока предсказания 8×8, i может принимать значения 1, 2, …, 8. Хотя для удобства описания в примере 1 используется блок предсказания размером 8×8, в блоке предсказания размером N×N значение Pii может быть получено по формуле Pii=R00+(i/N)P88.

Как показано на фиг. 7(B), даже если значение опорного пиксела уменьшается как в направлении x (вправо), так и в направлении y (вниз), значение пиксела Р88 в нижнем правом углу блока предсказания может быть определено с учетом вариаций уменьшающихся значений пикселов, а значения остальных пикселов могут быть предсказаны на основании значения пиксела Р88. В этом случае значение Р88 может быть определено по формуле 3.

[формула 3]

.

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

[формула 4]

.

Здесь i может принимать значения 1, 2, …, 8.

Как показано на фиг. 7(C), если значения опорных пикселов возрастают в направлении вверх вправо, то, в отличие от случаев на фиг. 7(A) и 7(B), вначале на основании вариаций значений пикселов определяют диагональные пикселы, расположенные в блоке предсказания от нижнего левого угла до верхнего правого угла. Например, определяют значение пиксела Р81, расположенного в нижнем левом углу блока предсказания, а значения остальных пикселов могут быть предсказаны на основании значения пиксела Р81. В этом случае значение Р81 может быть определено по формуле 5.

[формула 5]

.

Когда значение Р81 получено, остальные диагональные пикселы (от левого нижнего до верхнего правого) в указанном блоке предсказания могут быть определены по формуле 6.

[формула 6]

.

Здесь i может принимать значения 1, 2, …, 8.

Кроме того, как показано на фиг. 7(D), когда значения опорного пиксела возрастают в направлении вниз влево, то вначале на основании вариаций значений пикселов определяют диагональные пикселы, расположенные в блоке предсказания от нижнего левого угла до верхнего правого угла. Например, определяют значение пиксела Р81, расположенного в нижнем левом углу блока предсказания, а значения остальных пикселов могут быть предсказаны на основании значения пиксела Р81. В этом случае значение Р81 может быть определено по формуле 7.

[формула 7]

.

Когда значение Р81 определено, остальные диагональные пикселы (от левого нижнего до верхнего правого) в блоке предсказания могут быть определены по формуле 8.

[формула 8]

.

Здесь i может принимать значения 1, 2, …, 8.

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

[формула 9]

.

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

Пикселы Pij в блоке предсказания на фиг. 7(A) и 7(B) могут быть определены путем интерполяции с использованием диагональных пикселов Pii и опорных пикселов R прилегающего блока. Здесь может использоваться интерполяция по формуле 10.

[формула 10]

или .

Здесь d1 представляет собой расстояние от пиксела R0j или Rj0 прилегающего блока, используемого для интерполяции, до целевого пиксела Pij предсказания, a d2 представляет собой расстояние от диагонального пиксела Pii, используемого для интерполяции, до целевого пиксела Pij предсказания.

Значение пиксела Pi на фиг. 7(C) и 7(D), получаемое интерполяцией по пикселам указанного блока предсказания, может быть определено по формуле 11.

[формула 11]

или .

Здесь i+j<9, a d1 представляет собой расстояние от пиксела R0j или Rj0 прилегающего блока, используемого для интерполяции, до целевого пиксела Pij предсказания, a d2 представляет собой расстояние от диагонального пиксела Pii, используемого для интерполяции, до целевого пиксела Pij предсказания. Хотя здесь при определении пикселов Pij блока предсказания для интерполяции использована формула 11, без ограничения настоящего изобретения могут быть использованы и иные способы интерполяции.

Значение пиксела Pe, показанного на фиг. 7(C) и 7(D), определяют экстраполяцией по пикселам блока предсказания. Здесь для определения пиксела в блоке предсказания может использоваться экстраполяция по формуле 12.

[формула 12]

или .

В этом случае i+j>9, а P представляет собой значение диагонального пиксела, используемого для экстраполяции. Как указано выше, d1 и d2 представляют собой расстояние от опорного пиксела до целевого пиксела Pij предсказания и расстояние от пиксела Pii до целевого пиксела Pij предсказания соответственно.

Пример 2

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

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

Например, целевой пиксел Pij определяют по формуле 13.

[формула 13]

.

Здесь Δy=Ri0-R00, Δx=R0j-R00 и при размере блока предсказания 8×8 1≤i, j≤8.

Например, пиксел P33 на фиг. 8 вычисляется в соответствии с формулой 13 как P33=R00+Δx+Δy. Здесь Δx и Δy представляют собой вариации значений в направлении x и в направлении y от значения базового пиксела R00 до Р33.

В то же время пиксел Р76 на фиг. 8 определяется в соответствии с формулой 13 как P76=R00+Δx′+Δy′. Здесь Δx′ и Δy′ представляют собой вариации значений пикселов в направлении x и в направлении y от базового пиксела R00 до Р76.

Пример 3

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

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

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

[формула 14]

или .

Например, как показано на фиг. 9(A), в соответствии с формулой 14 значение Р33 может быть предсказано как P33=R03+Δy или P33=R30+Δx. Δx и Δy представляют собой вариации значений пиксела в направлении x от базового пиксела R30 до Р33 и в направлении y от базового пиксела R03 до Р33 соответственно.

Как показано на фиг. 9(B), остальные пикселы Pij текущего блока, отличные от диагональных пикселов, могут быть предсказаны путем линейной интерполяции с использованием предсказанных значений диагональных пикселов и опорных пикселов R00, R10-R80 и R01-R08 прилегающих блоков на верхней и левой границах текущего блока.

Например, значение пиксела Pij может быть предсказано по формуле 15.

[формула 15]

или .

Здесь d1 представляет собой расстояние от пиксела R0j или Ri0 прилегающих блоков, используемых для интерполяции, до целевого пиксела Pij предсказания, a d2 представляет собой расстояние от диагонального пиксела Pii, используемого для интерполяции, до целевого пиксела Pij предсказания.

Пример 4

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

Диагональные пикселы на фиг. 10 могут быть предсказаны таким же образом, как показано на фиг. 9. Таким образом, как показано на фиг. 10(A), диагональный пиксел P33 текущего блока предсказания может быть предсказан по формуле P33=R03+Δy или P33=R30+Δx.

Затем остальные пикселы Pij текущего блока, отличные от диагональных пикселов, могут быть предсказаны путем линейной интерполяции с использованием предсказанных значений диагональных пикселов и опорных пикселов R00, R10-R80 и R01-R08 прилегающих блоков на верхней и левой границах текущего блока.

При этом может быть использован такой же способ, который использовался для определения диагональных пикселов. Например, пиксел Pij может быть предсказан по формуле 16.

[формула 16]

или .

Здесь Δy=Ri0-R00, Δx=R0j-R00 и при размере блока предсказания 8×8 1≤i, j≤8.

Например, как показано на фиг. 10, значение Р37 в соответствии с формулой 16 может быть определено как P37=R07+Δy или P37=R70+Δx.

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

На фиг. 11 схематично показан способ CIP.

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

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

На фиг. 12 схематично показан еще один способ CIP.

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

Как показано на фиг. 12, в блоках, прилегающих к текущему блоку Т предсказания, значения пикселов 1210, 1220 и 1230 из блоков A, B, D, E, F, H и I, предсказываемых в режиме межкадрового предсказания, определяют, используя пикселы из блоков, предсказанные в режиме внутрикадрового предсказания.

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

[формула 17]

.

Здесь, PT представляет собой целевой образец с внутрикадровым предсказанием, PLB представляет собой левый или нижний образец с внутрикадровым предсказанием, a PRA представляет собой правый или верхний образец с внутрикадровым предсказанием. Если образец с внутрикадровым предсказанием имеется только с одной стороны целевого образца с межкадровым предсказанием, то значение пиксела PT блока, предсказываемое в режиме межкадрового предсказания, определяют по формуле 18.

[формула 18]

или .

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

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

Пример 5

На фиг. 13 схематично показано, что система в соответствии с настоящим изобретением осуществляет способ CIP с учетом вариаций значений пикселов.

Способ, иллюстрируемый фиг. 13, используя вариации значений обоих пикселов, используемых для интерполяции, дает более точное предсказание значения целевого пиксела, чем способ, иллюстрируемый фиг. 12, где в качестве определяемого значения пиксела используется среднее значений данных пикселов. Например, целевой пиксел PT из числа значений пикселов 1310, 1320 и 1330, подлежащих определению, может быть определен по формуле 19.

[формула 19]

.

Здесь PT представляет собой целевой образец предсказания, PLB представляет собой левый или нижний образец с внутрикадровым предсказанием, а PRA представляет собой правый или верхний образец с внутрикадровым предсказанием. Как показано на фиг. 13, d1 представляет собой расстояние от PLB до PT, a d2 представляет собой расстояние от PRA до PT.

Например, как показано на фиг. 13, значение PT1 может быть определено как (PLB1*d21+PRA1*d11)/(d11+d21), а значение PT2 может быть определено как (PLB2*d22+PRA2*d12)/(d12+d22).

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

В качестве значений PLB и PRA может использоваться среднее значение пикселов с внутрикадровым режимом, расположенных на границе. Например, на фиг. 13, когда PT находится в нижней строке 1320 пикселов блока E или блока D, в качестве PRA может использоваться среднее значение четырех крайних нижних пикселов блока C с режимом внутрикадрового предсказания, а в качестве PLB может использоваться среднее значение восьми крайних правых пикселов блока G. В этом случае опорной точкой d1 является верхний пиксел из числа крайних правых пикселов блока G, а опорной точкой d2 является крайний левый пиксел из числа крайних нижних пикселов блока C.

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

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

Как показано на фиг. 14, вводится новый элемент предсказания текущего изображения (S1410). Указанный элемент предсказания (ЭП) может быть базовым элементом для внутрикадрового предсказания и для межкадрового предсказания. Элемент предсказания может быть блоком, меньшим, чем элемент кодирования (ЭК), и может иметь прямоугольную форму, а не обязательно квадратную форму. Внутрикадровое предсказание для элемента предсказания выполняется, как правило, в блоке 2N×2N или N×N.

Затем определяют опорный пиксел, требующийся для внутрикадрового предсказания (S1420). Для формирования опорного пиксела используются пикселы в крайней справа вертикальной линии левого блока, прилегающего к текущему блоку предсказания, и пикселы в крайней нижней горизонтальной линии верхнего блока, прилегающего к текущему блоку предсказания. Если блок предсказания имеет размер N, то всего в качестве опорных пикселов используется 2N пикселов левого и верхнего блоков.

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

Если используется сглаживание, в декодер дополнительно может передаваться информация о сглаживании. Например, если используется сглаживание, то может применяться фильтр AIS, в котором могут быть заданы коэффициенты фильтра [1, 2, 1] или [1, 1, 4, 1, 1]. Последний из двух указанных коэффициентов фильтра может обеспечивать более высокую резкость границы. Как указано выше, в декодер может передаваться информация, содержащая сведения о факте использования фильтра, о типе использованного фильтра и о коэффициентах фильтра.

Если для формирования опорных пикселов используется CIP, то значение флага CIP_flag задают равным 1. При использовании CIP в качестве опорных пикселов используют только пикселы прилегающих блоков, кодированных в режиме внутрикадрового предсказания, а пикселы прилегающих блоков, кодированных в режиме межкадрового предсказания, в качестве опорных пикселов не используют. В этом случае, как показано на фиг. 13, пикселы (целевые образцы предсказания), соответствующие положениям пикселов прилегающих блоков, кодированных в режиме межкадрового предсказания, формируются в качестве опорных пикселов путем интерполяции прилегающих опорных пикселов, кодированных в режиме внутрикадрового предсказания, либо прилегающие опорные пикселы, кодированные в режиме внутрикадрового предсказания, копируют и используют в качестве опорных пикселов, соответствующих положениям пикселов прилегающих блоков, кодированных в режиме межкадрового предсказания.

Например, при наличии пикселов, предсказанных в режиме внутрикадрового предсказания, на правой и на левой сторонах и на верхней и на нижней сторонах целевого образца с межкадровым предсказанием целевой образец PT предсказания, расположенный в блоке, предсказываемом в режиме межкадрового предсказания, может быть определен по формуле 11. Далее, если образец с внутрикадровым предсказанием имеется только на какой-либо одной из сторон целевого образца предсказания, то целевой образец PT предсказания, расположенный в местоположении блока, предсказанного в режиме межкадрового предсказания, может быть определен по формуле 12. В формуле 11 и/или в формуле 12 в качестве значений PLB и PRA могут использоваться средние значения соответствующих пикселов режима внутрикадрового предсказания. При отсутствии прилегающего блока, предсказанного в режиме внутрикадрового предсказания, для использования в качестве значения опорного пиксела может быть скопировано значение пиксела, находящегося в таком же положении, как в предыдущем изображении.

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

Затем определяют режим внутрикадрового предсказания (S1430).

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

Например, если включена оптимизация соотношения между скоростью и искажениями (rate-distortion optimization, RDO), то может быть выбран режим, в котором минимизируется функция стоимости J=R+rD (R представляет собой скорость битового потока (битрейт), D представляет собой величину искажения, а r представляет собой переменную Лагранжа). В данном случает требуется местное декодирование с высокой точностью, в результате чего может возрасти сложность операции.

При выключенной оптимизации RDO может быть выбран режим предсказания, в котором путем применения преобразования Адамара к ошибке предсказания минимизируют средний модуль разности (mean absolute difference, MAD).

В таблице 1 представлено количество режимов предсказания в зависимости от размера блока элемента предсказания для яркостной компоненты (luma).

[Таблица 1]
Размер блока Количество режимов предсказания
4×4 17
8×8 34
16×16 34
32×32 34
64×64 3

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

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

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

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

Что касается опорного пиксела цветоразностной компоненты (chroma), то в режиме номер 4, который называется режимом DM, может в неизменном виде использоваться унифицированное направленное внутрикадровое предсказание (unified directional intra, UDI) яркостного блока. В режиме номер 0, называемом режимом линейной модели (linear model, LM), блок предсказания формируется с использованием линейной связи между яркостной и цветоразностной компонентами. Режим номер 1 представляет собой вертикальный режим, в котором предсказание выполняется в вертикальном направлении и соответствует режиму номер 0 яркостного канала. Режим номер 2 представляет собой горизонтальный режим, в котором предсказание выполняется в горизонтальном направлении, и соответствует режиму номер 1 яркостного канала. Режим номер 3 представляет собой режим предсказания по постоянной составляющей, в котором блок предсказания формируется с использованием среднего значения цветоразностностной компоненты текущего целевого блока предсказания, и соответствует режиму номер 2 яркостного канала.

Как показано на фиг. 14, далее кодер кодирует режим предсказания текущего блока (S1440). Кодер кодирует режим предсказания для блока яркостной компоненты и блока цветоразностной компоненты текущего блока предсказания. При этом, поскольку режим предсказания текущего целевого блока предсказания в значительной мере коррелирует с режимом предсказания прилегающего блока, текущий целевой блок предсказания кодируют с использованием режима предсказания прилегающего блока, в результате чего уменьшается количество битов. Затем определяют наиболее вероятный режим (most probable mode, МРМ) текущего целевого блока предсказания, и, соответственно, режим предсказания текущего целевого блока предсказания может быть кодирован с использованием указанного наиболее вероятного режима.

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

Указанный сформированный остаточный сигнал преобразуют и кодируют (S1460). Остаточный сигнал может кодироваться с использованием ядра преобразования, в котором ядро преобразования кодирования имеет размер 2×2, 4×4, 8×8, 16×16, 32×32 или 64×64.

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

[формула 20]

C(n,n)=T(n,n)×B(n,n)×T(n,n)T.

Здесь C(n,n) представляет собой матрицу размером n×n коэффициентов преобразования, Т(n,n) представляет собой матрицу размером n×n ядра преобразования, а В(n,n) представляет собой матрицу размером n×n для целевого блока предсказания.

Если m=hN, n=2N и h=1/2, то коэффициент С преобразования для разностного блока размером m×n или n×m может быть получен двумя способами. Сначала разностный блок размером m×n или n×m делят на четыре блока размером m×m и к каждому блоку применяют ядро преобразования, в результате чего получают коэффициент преобразования. Как вариант, ядро преобразования применяют к разностному блоку размером m×n или n×m, в результате чего получают коэффициент преобразования.

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

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

Затем кодер сканирует коэффициент преобразования (S1480). Путем сканирования прошедший квантование двумерный блок коэффициентов преобразования может быть преобразован в одномерный вектор коэффициентов преобразования.

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

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

Как показано на фиг. 16, декодер выполняет энтропийное декодирование принятого битового потока (S1610). При этом тип блока может быть определен по таблице переменной длины кодирования (variable length coding, VLC), и может быть определен режим предсказания текущего целевого блока декодирования. Если принятый битовый поток может включать стороннюю информацию, необходимую для декодирования, например, информацию об элементе кодирования, элементе предсказания и элементе преобразования, информацию о фильтрации AIS, информацию об ограничении количества режимов предсказания, информацию о неиспользуемых режимах предсказания, информацию о переупорядочении режимов предсказания, информацию о способах преобразования и информацию о способах сканирования, то указанная сторонняя информация подвергается энтропийному декодированию вместе с указанным битовым потоком.

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

Затем декодер формирует остаточный блок (S1620).

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

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

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

Если значение принятого декодером флага CIP_flag равно 1, что означает, что кодером для целевого изображения использован способ CIP, то декодер формирует опорный пиксел соответствующим образом. Например, в качестве опорных пикселов используют только пикселы прилегающих блоков, кодированных в режиме внутрикадрового предсказания, а пикселы прилегающих блоков, кодированных в режиме межкадрового предсказания, в качестве опорных пикселов не используют. В этом случае, как показано на фиг. 6, пикселы (целевые образцы предсказания), соответствующие положениям пикселов прилегающих блоков, кодированных в режиме межкадрового предсказания, формируют в качестве опорных пикселов путем интерполяции соседних опорных пикселов, кодированных в режиме внутрикадрового предсказания, либо прилегающие опорные пикселы, кодированные в режиме внутрикадрового предсказания, могут быть скопированы и использованы в качестве опорных пикселов, соответствующих положениям пикселов прилегающих блоков, кодированных в режиме межкадрового предсказания.

Например, при наличии пикселов, предсказанных в режиме внутрикадрового предсказания, на правой и на левой сторонах и на верхней и на нижней сторонах целевого образца с межкадровым предсказанием целевой образец PT предсказания, расположенный в блоке, предсказываемом в режиме межкадрового предсказания, определяется по формуле 17. Далее, если образец с внутрикадровым предсказанием имеется только на какой-либо одной из сторон целевого образца предсказания, то целевой образец PT предсказания, расположенный в местоположении блока, предсказанного в режиме межкадрового предсказания, может быть определен по формуле 18. В формуле 17 и/или в формуле 18 в качестве значений PLB или PRA могут использоваться средние значения соответствующих пикселов режима внутрикадрового предсказания. При отсутствии прилегающего блока, предсказанного в режиме внутрикадрового предсказания, для использования в качестве значения опорного пиксела может быть скопировано значение пиксела, находящегося в таком же положении, как в предыдущем изображении.

Если кодер использует фильтрацию AIS, то есть если используется сглаживание и поэтому AIS включена, то декодер при формировании опорного пиксела в соответствии со способом формирования опорных пикселов, использованным кодером, также выполняет фильтрацию AIS. Декодер может определять коэффициент фильтра на основании информации о типе фильтра, содержащейся в принятой информации. Например, при наличии двух коэффициентов фильтра [1, 2, 1] или [1, 1, 4, 1, 1] может использоваться коэффициент фильтра из числа двух коэффициентов фильтра, указанный в информации о типе фильтра.

Затем с использованием опорного пиксела и прошедшего энтропийное декодирование режима предсказания текущего целевого блока декодирования формируют блок предсказания для целевого блока декодирования (S1640).

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

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

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

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

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

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



 

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

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

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

Изобретение относится к средствам кодирования и декодирования видео посредством использования слияния блоков. Технический результат заключается в обеспечении возможности кодирования и декодирования видео посредством использования слияния блоков.

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

Изобретение относится к средствам кодирования и декодирования видео посредством использования слияния блоков. Технический результат заключается в обеспечении возможности кодирования и декодирования видео посредством использования слияния блоков.

Изобретение относится к средствам кодирования и декодирования видео посредством использования слияния блоков. Технический результат заключается в обеспечении возможности кодирования и декодирования видео посредством использования слияния блоков.

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

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

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

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

Изобретение относится к устройству формирования и воспроизведения данных движущегося изображения. Техническим результатом является обеспечение обработки изображений, позволяющей воспроизводить на экране движущиеся изображения высокой четкости с высоким быстродействием изменений при вводе пользователем операции по воспроизведению области изображения, ограничивая объем обрабатываемых данных. Предложено кадры движущегося изображения конфигурировать в виде иерархической структуры, где каждый кадр представлен с множеством уровней разрешения, при этом разрешение становится выше в порядке следования нулевого слоя 30, первого слоя 32, второго слоя 34, третьего слоя 36, нулевой слой 30 и второй слой 34 задаются в качестве слоя исходного изображения, а первый слой 32 и третий слой 36 задаются в качестве слоя разностного изображения в иерархических данных, представляющих кадр в момент времени t1. В случае когда область 124а, которая должна воспроизводиться с разрешением третьего слоя 36, к значениям соответствующих пикселей разностного изображения области 124а, хранимой третьим слоем 36, добавляются значения соответствующих пикселей изображения соответствующей области 126а, хранимой вторым слоем 34, для получения изображения, увеличенного до разрешения третьего слоя 36. Блок формирования сжатых данных, сжимает и кодирует иерархические данные движущегося изображения и записывает сжатые и кодированные иерархические данные движущегося изображения в запоминающем устройстве. 6 н. и 13 з.п. ф-лы, 17 ил.

Изобретение относится к области контекстно-адаптивного энтропийного кодирования видеоданных. Технический результат - обеспечение инициализации контекстов процесса кодирования посредством определения значений индексов параметров инициализации. Способ инициализации контекста, используемого для того, чтобы кодировать видеоданные в процессе контекстно-адаптивного энтропийного кодирования, содержит этапы, на которых: определяют первое значение индекса параметра инициализации в качестве x>>4, где x является 8-битовым параметром; определяют второе значение индекса параметра инициализации в качестве x&15, где x является идентичным 8-битовым параметром; определяют один или более параметров инициализации для процесса контекстно-адаптивного энтропийного кодирования на основе первого и второго значений индексов параметров инициализации и инициализируют на основе одного или более параметров инициализации состояние контекста, используемого для того, чтобы кодировать видеоданные в процессе контекстно-адаптивного энтропийного кодирования. 4 н. и 41 з.п. ф-лы, 8 ил.

Изобретение относится к вычислительной технике. Технический результат заключается в получении индикатора последнего значимого коэффициента (LSC) на основе сканирования для использования при декодировании карты значимости для блока коэффициентов преобразования. Способ декодирования видеоданных, в котором получают индикатор LSC на основе сканирования из индикатора LSC на основе блоков, причем индикатор LSC на основе блоков указывает координаты последнего значимого коэффициента блока коэффициентов преобразования согласно порядку сканирования подблоков, причем блок коэффициентов преобразования разделен на множество подблоков, причем индикатор LSC на основе сканирования указывает порядковую позицию LSC согласно порядку сканирования подблоков, причем при получении индикатора LSC на основе сканирования: определяют координаты х и y верхнего левого коэффициента преобразования подблока из множества подблоков, который содержит последний значимый коэффициент; определяют значение первой переменной посредством суммирования координаты х и y верхнего левого коэффициента преобразования подблока; и декодируют на основании индикатора LSC на основе сканирования карту значимости для блока. 3 н. и 9 з.п. ф-лы, 13 ил.

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

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

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

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

Изобретение относится к области кодирования/декодирования изображений для кодирования движущегося изображения с высокой степенью эффективности. Техническим результатом является повышение качества изображений. Указанный технический результат достигается тем, что модуль 11 контурного фильтра выполняет классификацию по классам локального декодированного изображения, сформированного посредством модуля 9 суммирования, на один класс для каждого блока кодирования, имеющего наибольший размер, определенный посредством модуля 2 управления кодированием, а также рассчитывает фильтр, который компенсирует искажение, наложенное для каждого локального декодированного изображения, принадлежащего каждому классу, а также выполняет процесс фильтрации для вышеуказанного локального декодированного изображения посредством использования фильтра. Модуль 13 кодирования с переменной длиной слова кодирует, в качестве параметров фильтра, фильтр, рассчитанный посредством модуля 11 контурного фильтра и используемый для локального декодированного изображения, принадлежащего каждому классу, и номер класса каждого наибольшего блока кодирования. 5 н. и 8 з.п. ф-лы, 23 ил.

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

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