RU2815092C2 - Широкоугольное внутрикадровое предсказание с подразделами - Google Patents

Широкоугольное внутрикадровое предсказание с подразделами Download PDF

Info

Publication number
RU2815092C2
RU2815092C2 RU2021129588A RU2021129588A RU2815092C2 RU 2815092 C2 RU2815092 C2 RU 2815092C2 RU 2021129588 A RU2021129588 A RU 2021129588A RU 2021129588 A RU2021129588 A RU 2021129588A RU 2815092 C2 RU2815092 C2 RU 2815092C2
Authority
RU
Russia
Prior art keywords
video block
subsection
reference samples
video
intra
Prior art date
Application number
RU2021129588A
Other languages
English (en)
Other versions
RU2021129588A (ru
Inventor
Фабьен РАКАП
Гаган РАТ
Фабрис УРБАН
Original Assignee
Интердиджитал Вс Холдингз, Инк.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Интердиджитал Вс Холдингз, Инк. filed Critical Интердиджитал Вс Холдингз, Инк.
Publication of RU2021129588A publication Critical patent/RU2021129588A/ru
Application granted granted Critical
Publication of RU2815092C2 publication Critical patent/RU2815092C2/ru

Links

Abstract

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

Description

Область техники, к которой относится настоящее изобретение
По меньшей мере один из настоящих вариантов осуществления в целом относится к способу или аппарату для кодирования или декодирования видео.
Предшествующий уровень техники настоящего изобретения
Для достижения высокой эффективности сжатия схемы кодирования изображений и видео обычно используют предсказание, включая пространственное предсказание и/или предсказание вектора движения, и преобразования, чтобы использовать пространственную и временную избыточность в видеосодержимом. В целом, внутрикадровое или межкадровое предсказание используется для применения внутри- или межкадровой корреляции, а затем разности между исходным изображением и предсказанным изображением, часто называемые ошибками предсказания или остатками предсказания, подвергаются преобразованию, квантованию и энтропийному кодированию. Для восстановления видео сжатые данные декодируются посредством обратных процессов, соответствующих энтропийному кодированию, квантованию, преобразованию и предсказанию.
Краткое раскрытие настоящего изобретения
Проблемы и недостатки предшествующего уровня техники могут быть устранены с помощью описанных в настоящем документе основных технических решений, которые направлены на направления адаптивного внутрикадрового предсказания на основании формы блока при кодировании и декодировании.
Согласно первому техническому решению предлагается способ. Способ предусматривает стадии определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров указанного подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров указанного подраздела находится за пределами указанного конкретного диапазона; отображения опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания указанного подраздела видеоблока; предсказания отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, причем количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока определяют на основе размеров прямоугольного подраздела; и кодирования прямоугольного подраздела видеоблока с использованием указанного предсказания в режиме внутрикадрового кодирования.
Согласно второму техническому решению предлагается способ. Способ предусматривает стадии определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров указанного подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров указанного подраздела находится за пределами указанного конкретного диапазона; отображения опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания указанного подраздела видеоблока; предсказания отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, причем количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока определяют на основе размеров прямоугольного подраздела; и декодирования прямоугольного подраздела видеоблока с использованием указанного предсказания в режиме внутрикадрового кодирования.
Согласно другому техническому решению предлагается аппарат. Аппарат содержит процессор. Процессор может быть выполнен с возможностью кодирования блока видео или декодирования битового потока путем исполнения любого из вышеупомянутых способов.
Согласно другому основному техническому решению по меньшей мере одного варианта осуществления предлагается устройство, содержащее аппарат согласно любому из вариантов осуществления декодирования и по меньшей мере одно из (i) антенны, выполненной с возможностью приема сигнала, причем сигнал содержит видеоблок, (ii) ограничителя полосы, выполненного с возможностью ограничения принятого сигнала полосой частот, которая содержит видеоблок, или (iii) дисплея, выполненного с возможностью отображения выходного сигнала, представляющего видеоблок.
Согласно другому основному техническому решению по меньшей мере одного варианта осуществления предлагается постоянный машиночитаемый носитель данных, содержащий информационное содержимое, сгенерированное в соответствии с любым из описанных вариантов осуществления или вариантов кодирования.
Согласно другому основному техническому решению по меньшей мере одного варианта осуществления предлагается сигнал, содержащий видеоданные, сгенерированные в соответствии с любым из описанных вариантов осуществления или вариантов кодирования.
Согласно другому основному техническому решению по меньшей мере одного варианта осуществления битовый поток форматируют так, чтобы он содержал информационное содержимое, сгенерированное в соответствии с любым из описанных вариантов осуществления или вариантов кодирования.
Согласно другому основному техническому решению по меньшей мере одного варианта осуществления предлагается компьютерный программный продукт, содержащий инструкции, которые, при исполнении программы компьютером, обеспечивают выполнение компьютером любого из описанных вариантов осуществления или вариантов декодирования.
Эти и другие решения, признаки и преимущества основных решений станут очевидными из следующего подробного описания иллюстративных вариантов осуществления, которое следует читать в связи с прилагаемыми чертежами.
Краткое описание фигур
На фиг. 1 показаны опорные отсчеты для внутрикадрового предсказания в VTM.
На фиг. 2 показано множество опорных линий для внутрикадрового предсказания в VTM.
На фиг. 3 показаны направления внутрикадрового предсказания в VTM для квадратного целевого блока.
На фиг. 4 показан пример разделения блоков 4x8 и 8x4.
На фиг. 5 показан пример разделения всех блоков, кроме 4x8, 8x4 и 4x4.
На фиг. 6 показано широкоугольное внутрикадровое предсказание для неквадратных блоков.
На фиг. 7 показано, что широкий угол ISP вычисляется из высоты и ширины CU.
На фиг. 8 показаны используемые опорные отсчеты в случае широкоугольного ISP с горизонтальным разделением.
На фиг. 9 показан пример предлагаемых массивов опорных отсчетов для предсказания подразделов.
На фиг. 10 показан один пример заполнения опорного массива в VTM для примера двух подразделов.
На фиг. 11 показано отображение опорных отсчетов из верхнего опорного элемента единицы кодирования в случае горизонтального разделения.
На фиг. 12 показано отображение опорных отсчетов из верхнего опорного элемента единицы кодирования в случае горизонтального разделения.
На фиг. 13 показана общая стандартная схема кодирования.
На фиг. 14 показана общая стандартная схема декодирования.
На фиг. 15 показана типичная схема процессора, в котором могут быть реализованы описанные варианты осуществления.
На фиг. 16 показана общая стандартная схема кодирования.
На фиг. 17 показана общая стандартная схема декодирования.
На фиг. 18 показана типичная схема процессора, в котором могут быть реализованы описанные варианты осуществления.
Подробное раскрытие настоящего изобретения
Описанные в настоящем документе варианты осуществления относятся к области сжатия видео и касаются сжатия видео, кодирования и декодирования видео.
Тестовая модель 4.0 (VTM) универсального кодирования видео (Versatile Video coding VVC) поддерживает внутрикадровое предсказание с подразделами (ISP), где целевой блок кодируется с возможностью горизонтального или вертикального подразбиения. Предсказание для каждого подраздела использует то же направление предсказания, что и для целевой единицы кодирования. Предсказания подраздела могут быть улучшены за счет использования широкоугольного предсказания, адаптированного к соотношению сторон каждого подраздела независимо от родительской единицы кодирования. Во-вторых, предсказание подраздела использует декодированные пиксели в предыдущем подразделе в качестве опорных отсчетов. В результате правый верхний или левый нижний опорные отсчеты для подраздела могут быть недоступны. Опорные отсчеты для родительской CU могут быть использованы для улучшения предсказаний по направлениям, нуждающимся в этих отсчетах.
В тестовой модели (VTM) универсального кодирования видео (VVC) любой целевой блок во внутрикадровом предсказании может иметь один из 67 режимов предсказания. Как и в HEVC, один из них плоский режим, один режим DC, а остальные 65 направленные режимы. 65 направленных режимов выбираются из 95 направлений, которые включают 65 обычных углов в диапазоне от 45 до -135 градусов, если целевой блок квадратный, и потенциально 28 широкоугольных направлений, если блок прямоугольный. VTM кодирует режим предсказания блока с помощью набора наиболее вероятных режимов (МРМ), который состоит из 6 режимов предсказания. Если режим предсказания не принадлежит к набору МРМ, он подвергается усеченному двоичному кодированию с 5 или 6 битами.
Внутрикадровое предсказание в сжатии видео относится к пространственному предсказанию блока пикселей с использованием информации от причинных соседних блоков, то есть соседних блоков в том же кадре, которые уже были декодированы. Это мощный инструмент кодирования, поскольку он позволяет добиться высокой эффективности сжатия внутри кадров, а также между кадрами, когда нет лучшего временного предсказания. Поэтому внутрикадровое предсказание было включено в качестве основного инструмента кодирования во все стандарты сжатия видео, включая H. 264/AVC, HEVC и т.д. Далее, для пояснения, мы будем ссылаться на внутрикадровое предсказание в программной тестовой модели (VTM) универсального кодирования видео (VVC).
В VTM кодирование кадра видеопоследовательности основано на блочной структуре квадродерева (QT)/многотипного дерева (МТТ). Кадр делится на непересекающиеся квадратные единицы дерева кодирования (CTU), которые подвергаются разделению на основе QT/MTT на несколько единиц кодирования (CU) по критериям скорости-искажения. Для удобства термины «CU» и «блок» будут использоваться в тексте как взаимозаменяемые.
При внутрикадровом предсказании CU пространственно предсказывается из причинных соседних CU, т.е. CU сверху и слева. Для этого VTM использует простые пространственные модели, называемые режимами предсказания. На основе декодированных значений пикселей в верхних левых CU, называемых опорными пикселями, кодер создает различные предсказания для целевого блока и выбирает тот, который приводит к наилучшим показателям RD. Из 95 определенных режимов один является плоским режимом (обозначен индексом как режим 0), один - режимом DC (обозначен индексом как режим 1), а остальные 93 (обозначены индексами как режим -14…-1, 2…80) угловые режимы. Из 93 угловых режимов только 65 смежных режимов выбираются для любой целевой CU в зависимости от ее формы. Угловые режимы направлены на моделирование направленных структур объектов в кадре. Поэтому декодированные значения пикселей в верхних левых CU просто повторяются вдоль определенных направлений, чтобы заполнить целевую CU. Некоторые режимы предсказания могут привести к разрывам вдоль верхней и левой опорных границ, поэтому эти режимы предсказания могут включать последующую постобработку, известную как позиционно-зависимая комбинация внутрикадрового предсказания (PDPC), которая направлена на сглаживание значений пикселей вдоль этих границ.
Процесс внутрикадрового предсказания в VTM состоит из трех стадий: (1) генерирование опорных отсчетов, (2) предсказание внутри отсчетов и (3) постобработка предсказанных отсчетов. Процесс генерирования опорных отсчетов показан на фиг. 1, где показаны опорные отсчеты для внутрикадрового предсказания в VTM. Н и W представляют собой высоту и ширину текущего блока соответственно. Для CU размером HxW строка из 2W декодированных отсчетов сверху формируется из ранее восстановленных верхнего и верхнего правого пикселей текущей CU. Аналогично, столбец из 2Н отсчетов слева формируется из восстановленных левого и нижнего левого пикселей. Угловой пиксель в верхнем левом положении также используется для заполнения промежутка между опорными элементами верхней строки и левого столбца. Если некоторые отсчеты сверху или слева недоступны из-за того, что соответствующие CU не находятся в одном слайсе, или текущая CU находится на границе кадра, или по какой-либо другой причине, то может быть выполнен метод, называемый заменой опорного отсчета.
VTM также поддерживает внутрикадровое предсказание с множеством опорных линий (MRL). Идея заключается в том, чтобы сделать предсказание на основе нескольких наборов опорных линий, как показано на фиг. 2, а затем выбрать опорную линию, дающую наилучшие показатели скорости-искажения. Используемая опорная линия сообщается декодеру кодом переменной длины.
Следующая стадия, предсказание внутри отсчета, состоит в предсказании пикселей целевой CU на основе опорных отсчетов. Как уже упоминалось, для эффективного предсказания различных видов содержимого VTM поддерживает ряд моделей предсказания. Плоский режим и режим DC предсказания используются для предсказания гладких и постепенно изменяющихся областей, в то время как угловые режимы предсказания используются для захвата различных направленных структур. VTM поддерживает 95 режимов направленного предсказания, которые обозначаются индексом от -14 до -1 и от 2 до 80. Для квадратной CU используются только режимы предсказания 2 66. Эти режимы предсказания соответствуют различным направлениям предсказания от 45 градусов до -135 градусов по часовой стрелке, как показано на фиг. 3, где показаны направления внутрикадрового предсказания в VTM для квадратного целевого блока. В целом, неквадратные блоки также могут быть использованы с расширенными направлениями предсказания, но на этой фигуре показан квадратный блок. Числа обозначают индекс режима предсказания, связанный с соответствующим направлением. Режимы с 2 по 33 обозначают горизонтальные предсказания, а режимы с 34 по 66 -вертикальные предсказания.
Режимы с индексами от -14 до -1 и от 67 до 80 - это широкоугольные режимы, которые используются для прямоугольных блоков различных форм. Режимы от -14 до -1 определены за пределами режима 2 (за пределами угла 45 градусов) и используются для высоких прямоугольных блоков (блоков, у которых высота больше ширины). Аналогично, режимы от 67 до 80 определены за пределами режима 66 (за пределами угла -135 градусов) и используются для плоских прямоугольных блоков (блоков, у которых ширина больше высоты). Количество широкоугольных режимов, используемых для прямоугольного блока, зависит от соотношения сторон блока. В любом случае, общее количество угловых режимов, используемых для любого блока, составляет 65, и режимы всегда смежны по направлению.
Общие технические решения, описанные в настоящем документе, направлены на улучшение эффективности предсказания при внутрикадровом предсказании с подразделами. Во-первых, предлагается предсказывать каждый подраздел, используя свои собственные широкоугольные режимы, а не широкоугольный режим родительской единицы кодирования. Во-вторых, предлагается использовать опорные отсчеты родительской CU для предсказания подраздела, когда эти отсчеты недоступны. Эти два предложения могут быть включены в текущий код VTM для улучшения производительности кодирования. Дополнительные сложности и требования к памяти для включения этих изменений минимальны, при этом возможен некоторый выигрыш в кодировании.
В тестовой модели (VTM) универсального кодирования видео (VVC) кодирование кадра видеопоследовательности основано на блочной структуре квадродерева (QT)/многотипного дерева (МТТ). Кадр делится на непересекающиеся квадратные единицы дерева кодирования (CTU), которые подвергаются разделению на основе QT/MTT на несколько единиц кодирования (CU) по критериям скорости-искажения. При внутрикадровом предсказании CU пространственно предсказывается из причинных соседних CU, т.е. CU сверху и слева. Для этого VTM использует простые пространственные модели, называемые режимами предсказания. На основе декодированных значений пикселей в верхних левых CU, называемых опорными пикселями, кодер создает различные предсказания для целевого блока и выбирает тот, который приводит к наилучшим показателям RD.
В VTM 4.0 целевой блок имеет возможность выбора между внутрикадровым предсказанием для всей CU и внутрикадровым предсказанием с подразделами (ISP) CU. В последнем предсказании целевая CU делится на два или четыре одинаковых по размеру подраздела, которые последовательно декодируются с помощью одного режима предсказания. То есть, каждый подраздел декодируется независимо. Таким образом, подраздел может воспользоваться доступностью декодированных отсчетов из соседнего подраздела, которые являются непосредственными соседями текущего подраздела. Это, в свою очередь, приводит к лучшему предсказанию и, следовательно, к более высокой эффективности сжатия.
VTM 4.0 также поддерживает широкоугольное внутрикадровое предсказание (WAIP), которое позволяет использовать широкоугольные направления предсказания для прямоугольных CU. В зависимости от соотношения сторон целевого блока, некоторые обычные направления предсказания заменяются соответствующими широкоугольными направлениями. Направления предсказания также были соответствующим образом изменены для адаптации к различным формам прямоугольных блоков таким образом, чтобы определенные направления предсказания были выровнены по вторичной диагонали блока. Эффективно, используя широкие углы вместо обычных углов, метод стремится обеспечить лучшее предсказание, что приводит к повышению эффективности сжатия.
В VTM 4.0 сочетание ISP с WAIP является простым. Для каждого подраздела в ISP направление предсказания совпадает с направлением предсказания родительской CU. Однако это не является обязательным. Поскольку подразделы декодируются независимо, направление предсказания каждого подраздела может быть независимо определено с помощью WAIP. Во-вторых, за исключением первого подраздела, остальные подразделы используют декодированные пиксели из предыдущего подраздела в качестве опорных отсчетов для предсказания. Это приводит к нежелательному эффекту: некоторые опорные отсчеты могут быть недоступны в зависимости от направления предсказания. Эта ситуация может быть исправлена путем использования опорных отсчетов из родительской CU. Перед описанием предлагаемых режимов далее будут кратко представлены ISP и WAIP в VTM 4.0. Для удобства термины «CU» и «блок» будут использоваться в тексте как взаимозаменяемые.
Инструмент ISP в VTM 4.0 делит подвергнутые внутрикадровому предсказанию блоки яркости по вертикали или горизонтали на 2 или 4 подраздела в зависимости от размера блока. Подраздел должен содержать не менее 16 отсчетов. Поэтому блоки размером 4x4 не делятся на подразделы, тогда как блоки размером 4x8 и 8x4 содержат только два подраздела. Блоки всех остальных размеров содержат только четыре подраздела. Подразделы могут быть как горизонтальными, так и вертикальными. Блок размером 4x8 может содержать только два вертикальных раздела размером 4x4 каждый, в то время как блок размером 8x4 может содержать только два горизонтальных раздела размером 4x4 каждый. Аналогично, блок размером 4x16, в качестве другого примера, может содержать четыре вертикальных подраздела размером 4x4 каждый или четыре горизонтальных подраздела размером 1x16 каждый. На фиг. 4 и 5 показаны примеры этих двух возможностей.
Для каждого из этих подразделов создается предсказание с использованием декодированного режима предсказания родительской CU. Этот сигнал предсказания добавляется к декодированному остаточному сигналу, который генерируется путем энтропийного декодирования коэффициентов, отправленных кодером, а затем обратного квантования и обратного преобразования, для восстановления пикселей в подразделе. За исключением первого подраздела, восстановленные значения каждого подраздела будут доступны для генерирования предсказания следующего подраздела.
Подразделы обрабатываются в обычном порядке, независимо от внутрикадрового режима и используемого разбиения, то есть первым обрабатывается подраздел, содержащий левый верхний отсчет CU, с последовательным продолжением вниз (горизонтальное разбиение) или вправо (вертикальное разбиение).
VTM 4.0 также поддерживает внутрикадровое предсказание с множеством опорных линий (MRL). Целевой блок может выбрать для использования из первой, второй и четвертой опорных линий в зависимости от того, какая из них обеспечивает наилучшие характеристики скорости-искажения. Выбранная опорная линия передается флагом из одного бита (0) или двух битов (10 или 11) для указания первой опорной линии или между второй и четвертой опорными линиями соответственно. В VTM 4.0 ISP применяется только к блокам, использующим первую опорную линию. Поэтому, если блок характеризуется индексом MRL, отличным от 0, то режим кодирования ISP будет считаться равным 0, и поэтому он не будет отправлен на декодер.
Метод ISP был испытан с внутрикадровыми режимами, входящими в список МРМ, который состоит из шести отдельных режимов из 67 режимов предсказания. Для любого блока, испытанного с помощью ISP, список МРМ модифицируется так, чтобы исключить режим DC и отдать приоритет горизонтальным внутрикадровым режимам для горизонтального разбиения и вертикальным внутрикадровым режимам для вертикального разбиения.
Основная идея широкоугольного предсказания заключается в адаптации направлений предсказания в соответствии с формой блока при сохранении общего числа режимов предсказания неизменным. Это осуществляется путем добавления некоторых направлений предсказания на большей стороне блока и уменьшения направлений предсказания на более короткой стороне. Общая цель заключается в повышении точности предсказания, что приводит к повышению эффективности сжатия. Поскольку вновь введенные направления выходят за пределы обычного диапазона 180 градусов от угла 45 градусов до угла -135 градусов, они называются широкоугольными направлениями.
Когда целевой блок квадратный, широкие углы не играют никакой роли, поскольку определенные режимы для блока остаются неизменными. Когда целевой блок плоский, то есть его ширина W больше высоты Н, некоторые режимы, близкие к 45 градусам, удаляются и добавляется равное количество широкоугольных режимов за пределами -135 градусов. Добавленные направления индексируются как режимы предсказания 67, 68, … и т.д. Аналогично, когда целевой блок высокий, некоторые режимы вблизи -135 градусов удаляются и добавляется равное количество широкоугольных режимов за пределами 45 градусов. Добавленные направления индексируются как режимы предсказания -1, -2, … и т.д, поскольку режимы предсказания 0 и 1 зарезервированы для плоского предсказания и предсказания DC.
Поскольку направление вторичной диагонали зависит от формы блока, общее количество используемых широких углов зависит от формы блока. В таблице 2 показано количество обычных режимов, замененных широкоугольными режимами для различных форм блока.
Для любого целевого блока отображение из замененного обычного режима в широкоугольный режим осуществляется следующим образом:
В случае с ISP отображение из обычного режима в широкоугольный режим выполняется с использованием высоты и ширины родительской CU, а не высоты и ширины подраздела. Независимо от того, является ли новый режим широкоугольным или обычным, для предсказания в каждом подразделе используется один и тот же режим. Это иллюстрируется примерами на фиг. 7.
Как было показано выше, текущий подход к ISP с WAIP заключается в определении угла предсказания по соотношению сторон родительской CU и использовании его для предсказания в каждом подразделе. Поскольку подразделы обрабатываются по порядку, но независимо друг от друга, это ограничение не является обязательным. Второй проблемой, возникающей при обработке отдельных подразделов, является недоступность некоторых опорных отсчетов, что может повлиять на предсказание в определенных направлениях. Далее предлагаются два решения этих проблем.
Для общности, в дальнейшем будем считать, что прямоугольные блоки обладают шириной W и высотой Н. Квадратные целевые блоки являются особыми случаями, где W=H.
WAIP для внутрикадровых подразделов
Для блока с ISP текущий код VTM (VTM 4.0) обрабатывает каждый подраздел отдельно в обычном порядке. В процессе предсказания инструмент предсказания сначала генерирует один опорный массив отсчетов сверху и один опорный массив отсчетов слева от раздела. Если разбиение ISP горизонтальное, то опорный массив сверху создается с использованием декодированных отсчетов в последней строке предыдущего подраздела. Аналогично, если разбиение ISP вертикальное, то опорный массив слева создается с использованием декодированных отсчетов в последнем столбце предыдущего подраздела. Это показано на фиг. 8.
Текущий код VTM определяет размеры опорных массивов для каждого раздела из тех, которые требуются для родительской CU. Предлагается определять направление предсказания из размеров подразделов. В качестве преимущества для реализации, предлагается определять длины опорных массивов для разделов также из размеров разделов.
Пусть Wp и Hp обозначают ширину и высоту каждого раздела. Тогда длины опорных массивов сверху и слева определяются как 2 * Wp и 2 * Нр соответственно, исключая левый верхний пиксель.
Для любого подраздела, как показано на фиг. 9, отображение из обычного режима в широкоугольный режим осуществляется следующим образом:
Приведенное выше отображение действительно до тех пор, пока соотношение сторон подразделов находится в допустимом диапазоне, как указано в таблице 2. Если Wp/Hp>16 или Wp/Hp<1/16, предлагается использовать размеры родительской CU для получения широкого угла, как это делается в VTM.
В простой вариации вышеописанного метода, если подраздел обладает квадратной формой, то есть, если Wp=Hp, применяется обычный режим предсказания, в противном случае получают широкий угол с использованием размеров CU. Это упрощение позволит избежать использования широкоугольных режимов предсказания (полученных из родительской прямоугольной CU) для квадратных подразделов. Другими словами, широкий угол получается из размеров подразделов только в том случае, если подразделы квадратные, в противном случае его получают из размеров CU. Поскольку для квадратной формы не существует широких углов, это эквивалентно отсутствию получения широких углов для квадратных подразделов и сохранению получения широких углов для прямоугольных подразделов. Это также представлено в варианте осуществления 1 ниже.
Поскольку все подразделы в ISP обладают одинаковыми размерами, широкоугольный режим, вычисленный для одного подраздела, одинаков для всех подразделов.
Замена отсутствующих опорных отсчетов
Второе усовершенствование ISP заключается в использовании опорных отсчетов сверху или слева от родительской CU. В данном случае предполагается, что подразделы обрабатываются в обычном порядке, как в VTM 4.0. Для горизонтального разбиения верхние опорные отсчеты подраздела 2 и далее используют декодированные пиксели из предыдущего подраздела. Поскольку предыдущий раздел обладает той же шириной, что и родительская CU, правые верхние опорные отсчеты просто недоступны. Текущий кодек VTM в этом случае использует заполнение, где последний доступный опорный пиксель будет повторен через правую верхнюю часть длиной W. Это показано на фиг. 10 для случая двух подразделов. Аналогичный случай применяется при вертикальном разбиении, когда левые нижние опорные отсчеты будут отсутствовать для подразделов 2 и далее. В этом случае текущий кодек VTM будет использовать заполнение, где последний доступный опорный пиксель будет повторяться через левую нижнюю часть длины Н.
Эти недостающие опорные отсчеты могут быть заменены из верхнего опорного элемента родительской CU, как показано на фиг. 11 для горизонтального разбиения на два подраздела. То есть, недостающие отсчеты отображаются из опорного массива соответствующей родительской CU, следуя направлению предсказания. Если некоторые опорные отсчеты все еще отсутствуют даже после процесса замещения, может быть применен обычный процесс заполнения, где последний опорный отсчет будет повторен для заполнения опорного массива.
Недостающие отсчеты, отображенные из опорного массива соответствующей родительской CU, следуя направлению предсказания, могут использовать тот же процесс интерполяции, что и при предсказании (линейный, 4-отводный…). Для уменьшения сложности можно также использовать ближайший соседний элемент (без интерполяции). В последнем случае это соответствует смещению опорных отсчетов на количество пикселей, соответствующее углу предсказания.
Этот процесс замены опорных отсчетов обладает нежелательным эффектом, который может привести к разрыву интенсивности в том месте, где пиксели копируются из верхнего опорного элемента родительской CU. Чтобы смягчить этот эффект, можно использовать простой фильтр нижних частот. Например, можно использовать 3-отводный фильтр [1 2 1] / 4.
На фиг. 8 отображенные отсчеты на верхнем опорном элементе расположены вдоль направления предсказания. Другой метод заключается в копировании всех правых верхних опорных отсчетов CU на правые верхние опорные отсчеты второго или последующих подразделов с последующей фильтрацией нижних частот в верхнем углу для смягчения разрыва. Это показано на фиг. 12.
Этот процесс замещения не зависит от того, применяется или нет модификация WAIP, описанная в предыдущем разделе. Он может быть применен без модификации WAIP для каждого подраздела или может быть применен вместе с ней.
Далее предполагается любой общий видеокодек, где применяются ISP и WAIP. Кодек VTM является одним из примеров такого кодека.
Вариант осуществления 1. В этом варианте осуществления, если целевой блок разбит в ISP, для любого режима предсказания мы определяем широкий угол с использованием размеров родительской CU, если только подразделы не обладают квадратной формой. Если подразделы обладают квадратной формой, к ним применяются обычные режимы предсказания без отображения в широкие углы. Все остальные параметры кодека, как в VTM 4, остаются неизменными.
Вариант осуществления 2. В этом варианте осуществления, если целевой блок разбит в ISP, для любого режима предсказания мы определяем широкий угол с использованием размеров родительской CU, как в VTM 4. Но, начиная со второго подраздела и далее, мы заменяем недостающие опорные отсчеты справа сверху (слева снизу) из верхнего (левого) опорного массива родительской CU для горизонтального (вертикального) разбиения. Опорные отсчеты в верхнем (левом) опорном массиве расположены вдоль направления предсказания, как показано на фиг. 11. Все остальные параметры кодека, как в VTM 4, остаются неизменными.
Вариант осуществления 3. В этом варианте осуществления, если целевой блок разбит в ISP, для любого режима предсказания мы определяем широкий угол с использованием размеров родительской CU, как в VTM 4. Но, начиная со второго подраздела и далее, мы заменяем недостающие опорные отсчеты справа сверху (слева снизу) из верхнего (левого) опорного массива родительской CU для горизонтального (вертикального) разбиения. Опорные отсчеты в верхнем (левом) опорном массиве непосредственно копируются в правую верхнюю (левую нижнюю) часть опорного массива для второго подраздела и далее, как показано на фиг. 12. Все остальные параметры кодека, как в VTM 4.0, остаются неизменными.
Вариант осуществления 4. В этом варианте осуществления, если целевой блок разбит в ISP, для любого режима предсказания мы определяем широкий угол с использованием размеров родительской CU, если только подразделы не обладают квадратной формой. Если подразделы обладают квадратной формой, к ним применяются обычные режимы предсказания без отображения в широкие углы. Кроме того, начиная со второго подраздела и далее, мы заменяем недостающие опорные отсчеты справа сверху (слева снизу) из верхнего (левого) опорного массива родительской CU для горизонтального (вертикального) разбиения. Отображение опорных отсчетов выполняется, как в варианте осуществления 2 или в варианте осуществления 3. Все остальные параметры кодека, как в VTM 4.0, остаются неизменными.
Вариант осуществления 5. В этом варианте осуществления, если целевой блок разбит в ISP, для любого режима предсказания, мы определяем широкий угол с использованием размеров подраздела, а не размеров родительской CU. Если отношение ширины к высоте (Wp/Hp) подраздела больше 16 или меньше 1/16, мы будем использовать отношение W/H родительской CU для вычисления широкого угла и использовать его для всех подразделов. Кроме того, начиная со второго подраздела и далее, мы заменяем недостающие опорные отсчеты справа сверху (слева снизу) из верхнего (левого) опорного массива родительской CU для горизонтального (вертикального) разбиения. Опорные отсчеты в верхнем (левом) опорном массиве расположены вдоль направления предсказания, как показано на фиг. 11. Все остальные параметры кодека, как в VTM 4.0, остаются неизменными. Чтобы ускорить стадию предсказания, для подразделов можно использовать опорные массивы, размеры которых в два раза больше, чем размеры родительской CU. При использовании размеров CU исходные длины опорных массивов могут быть сохранены.
Вариант осуществления 6. В этом варианте осуществления, если целевой блок разбит в ISP, для любого режима предсказания, мы определяем широкий угол с использованием размеров подраздела, а не размеров родительской CU. Если отношение ширины к высоте (Wp/Hp) подраздела больше 16 или меньше 1/16, мы будем использовать отношение W/H родительской CU для вычисления широкого угла и использовать его для всех подразделов. Кроме того, начиная со второго подраздела и далее, мы заменяем недостающие опорные отсчеты справа сверху (слева снизу) из верхнего (левого) опорного элемента родительской CU для горизонтального (вертикального) разбиения. Опорные отсчеты в верхнем (левом) опорном массиве непосредственно копируются в правую верхнюю (левую нижнюю) часть опорного массива для второго подраздела и далее, как показано на фиг. 12. Все остальные параметры кодека, как в VTM 4.0, остаются неизменными. Чтобы ускорить стадию предсказания, для подразделов можно использовать опорные массивы, размеры которых в два раза больше, чем размеры родительской CU. При использовании размеров CU исходные длины опорных массивов могут быть сохранены.
Вариант осуществления 7. VTM 4.0 использует ISP с 2 или 4 подразделами с условием, что каждый подраздел должен содержать минимум 16 пикселей. В данном варианте осуществления мы ослабляем эти ограничения и применяем ISP ко всем формам блоков с условием, что каждый подраздел может быть как минимум одной строкой или одним столбцом. В зависимости от размера CU, количество подразделов в CU может быть и больше, например, 8, 16 или 32. Все подразделы должны обладать одинаковой формой, независимо от горизонтального или вертикального разбиения. Если отношение ширины к высоте (Wp/Hp) подраздела больше 16 или меньше 1/16, мы будем использовать отношение W/H родительской CU для вычисления широкого угла и использовать его для всех подразделов. Начиная со второго подраздела и далее, мы заменяем недостающие опорные отсчеты справа сверху (слева снизу) из верхнего (левого) опорного элемента родительской CU для горизонтального (вертикального) разбиения. Отображение недостающих отсчетов выполняется как в варианте осуществления 2 или варианте осуществления 3.
Вариант осуществления 8. В этом варианте осуществления мы ослабляем ограничение, согласно которому все подразделы должны обладать идентичной формой. Подразделы могут обладать неодинаковой формой, но их высота и ширина должны быть равны степени 2. Таким образом, количество подразделов не обязательно должно быть равным степени двойки, как в вариантах осуществления 1-7. Например, блок 8x8 может быть разбит на три раздела размером 4x8, 2x8 и 2x8. Любой из вариантов осуществления 1-7 может быть изменен соответствующим образом.
Вариант осуществления 9. VTM 4.0 использует ISP над блоками, которые не используют MRL. В данном варианте осуществления мы ослабляем это ограничение. В общем случае ISP может быть применен, даже если CU использует множество опорных линий. В одной вариации, только первый подраздел может использовать MRL, если разбиение горизонтальное, а направление предсказания вертикальное, или если разбиение вертикальное, а направление предсказания горизонтальное. В другой вариации все подразделы могут использовать MRL независимо от типа разбиения и направления предсказания. Во всех этих вариациях можно использовать любой из вариантов осуществления 1-8 для вычисления широких углов для подразделов и/или для отображения недостающих опорных отсчетов, начиная со второго подраздела и далее.
Вариант осуществления 10. VTM 4.0 использует ISP только для компонента яркости. В данном варианте осуществления мы ослабляем это ограничение и применяем любой из вариантов осуществления 1-9 как к компонентам яркости, так и к компонентам цветности.
Предложенное получение широкоугольного режима с ISP было реализовано, как в варианте осуществления 1, путем включения изменений в эталонное программное обеспечение VTM 4.0. Испытание проводили с одним кадром из испытательных последовательностей JVET в конфигурации ALL-Intra (AI). Показатели BD-скорости испытанного метода по отношению к эталонным результатам VTM 4.0 показаны в таблице 3. Обратите внимание, что без дополнительной сложности кодера или декодера BD-скорость яркости улучшается на 0,04%. Улучшение для последовательностей класса С и класса Е составляет 0,11% для яркости.
Описанные основные технические решения направлены на улучшение эффективности внутрикадрового предсказания в ISP путем изменения широкоугольного получения и замены отсутствующих опорных отсчетов для некоторых подразделов отсчетами из опорных отсчетов родительской CU. Одним из преимуществ является более высокая эффективность сжатия без значительной дополнительной сложности.
Один вариант осуществления способа 1300 для кодирования блока видеоданных с использованием основных технических решений, описанных в настоящем документе, показан на фиг. 13. Способ начинается с начального блока 1301, и процесс переходит к функциональному блоку 1310 для определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров подраздела находится за пределами конкретного диапазона. Затем процесс переходит от блока 1310 к блоку 1320 для отображения опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания подраздела видеоблока. Процесс переходит от блока 1320 к блоку 1330 для предсказания отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, где количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока определяют на основе размеров прямоугольного подраздела. Процесс переходит от блока 1330 к блоку 1340 для кодирования видеоблока с использованием предсказания в режиме внутрикадрового кодирования.
Один вариант осуществления способа 1400 для декодирования блока видеоданных с использованием основных технических решений, описанных в настоящем документе, показан на фиг. 14. Способ начинается с начального блока 1401, и процесс переходит к функциональному блоку 1410 для определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров подраздела находится за пределами конкретного диапазона. Затем процесс переходит от блока 1410 к блоку 1420 для отображения опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания подраздела видеоблока. Процесс переходит от блока 1420 к блоку 1430 для предсказания отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, где количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока определяют на основе размеров прямоугольного подраздела. Процесс переходит от блока 1430 к блоку 1440 для кодирования видеоблока с использованием предсказания в режиме внутрикадрового кодирования.
На фиг. 15 показан один вариант осуществления аппарата 1500 для кодирования или декодирования блока видеоданных. Аппарат содержит процессор 1510 и может быть соединен с запоминающим устройством 1520 через по меньшей мере один порт. Процессор 1510 и запоминающее устройство 1520 могут также иметь одно или более дополнительных соединений с внешними соединениями.
Процессор 1510 выполнен с возможностью кодирования или декодирования видеоданных с использованием режима внутрикадрового предсказания с подразделами и, либо кодирования, либо декодирования блока видеоданных с использованием режима внутрикадрового предсказания с подразделами.
Основные технические решения, описанные в данном документе, направлены на повышение эффективности внутрикадрового предсказания за счет внутрикадрового предсказания с подразделами и необходимых изменений, требуемых для этих режимов. Преимуществом является более высокая эффективность сжатия без значительных дополнительных сложностей.
В настоящем изобретении описываются различные решения, в том числе средства, признаки, варианты осуществления, модели, подходы и т.д. Многие из этих решений описаны подробно и, по меньшей мере, чтобы показать отдельные характеристики, часто описаны таким образом, что кажутся ограниченными. Однако это сделано для ясности описания и не ограничивает применение или сущность этих технических решений. Фактически, все из различных решений могут быть скомбинированы и взаимозаменены для предоставления дополнительных решений. Более того, решения могут быть скомбинированы и взаимозаменены с решениями, описанными в ранее поданных документах.
Решения, описанные и предложенные в настоящей заявке, могут быть реализованы во множестве различных форм. На фиг. 16, 17 и 18 предоставлены некоторые варианты осуществления, но также предполагаются другие варианты осуществления, и описание фиг. 16, 17 и 18 не ограничивает сферу реализации. По меньшей мере одно из решений в целом относится к кодированию и декодированию видео, и по меньшей мере одно другое решение в целом относится к передаче сгенерированного или кодированного битового потока. Эти и другие решения могут быть реализованы как способ, устройство, машиночитаемый носитель данных, на котором хранятся инструкции для кодирования или декодирования видеоданных согласно любому из описанных способов, и/или машиночитаемый носитель данных, на котором хранится битовый поток, сгенерированных согласно любому из описанных способов.
В настоящем изобретении термины «восстановленный» и «декодированный» могут использоваться взаимозаменяемым образом, термины «пиксель» и «отсчет» могут использоваться взаимозаменяемым образом, термины «графическое изображение», «изображение» и «кадр» могут использоваться взаимозаменяемым образом. Обычно, но не обязательно, термин «восстановленный» используется на стороне кодера, «декодированный» используется на стороне декодера.
В настоящем документе описаны различные способы, и каждый из способов предусматривает одну или несколько стадий или этапов для выполнения описанного способа. Если конкретный порядок стадий или этапов не нужен для надлежащей реализации способа, порядок и/или использование конкретных стадий и/или этапов могут быть изменены или скомбинированы.
Различные способы и другие решения, описанные в настоящей заявке, могут использоваться для изменения модулей, например, модулей (160, 360, 145 и 330) внутрикадрового предсказания, энтропийного кодирования и/или декодирования видеокодера 100 и декодера 200, как показано на фиг. 16, 17 и 18. Более того, настоящие решения не ограничены VVC или HEVC, и могут применяться, например, к другим стандартам и рекомендациям, которые уже существуют или будут разработаны в будущем, и к расширениям любых таких стандартов и рекомендаций (включая VVC и HEVC). Если не указано иное, или если это технически возможно, решения, описанные в настоящей заявке, могут использоваться по отдельности или в комбинации.
В настоящем изобретении используются различные числовые значения. Конкретные значения являются, например, целями, и описанные решения не ограничены этими конкретными значениями.
На фиг. 16 изображен кодер 100. Возможны вариации этого кодера 100, но кодер 100 описан ниже для ясности без описания всех ожидаемых вариаций.
Перед кодированием видеопоследовательность может быть подвергнута обработке (101) перед кодированием, например, применению преобразования цвета к входному цветному изображению (например, преобразования из RGB 4:4:4 в YCbCr 4:2:0), или преобразованию со сжатием компонентов входного изображения для получения распределения сигнала, более устойчивого к сжатию (например, с использованием выравнивания гистограммы одного из компонентов цвета). Метаданные могут быть связаны с предварительной обработкой и прикреплены к битовому потоку.
В кодере 100 изображение кодируется посредством элементов кодера, как описано ниже. Изображение, подлежащее кодированию, разбивается (102) и обрабатывается в виде единиц, например, CU. Каждая единица кодируется, например, с помощью внутри- или межкадрового режима. Когда единица кодируется во внутрикадровом режиме, выполняется внутрикадровое предсказание (160). В межкадровом режиме выполняются оценка движения (175) и компенсация (170). Кодер решает (105), какой режим использовать для кодирования единицы - внутрикадровый или межкадровый, и указывает решение о выборе внутрикадрового/межкадрового режима, например, посредством флага режима предсказания. Остатки предсказания вычисляются, например, путем вычитания (110) предсказанного блока из исходного блока изображения.
Остатки предсказания затем подвергают преобразованию (125) и квантованию (130). Квантованные коэффициенты преобразования, а также векторы движения и другие элементы синтаксиса, подвергают энтропийному кодированию (145) для вывода битового потока. Кодер может пропускать преобразование и применять квантование непосредственно к не подвергнутому преобразованию остаточному сигналу. Кодер может обходить как преобразование, так и квантование, т.е. остаток кодируется непосредственно без применения процессов преобразования или квантования.
Кодер декодирует кодированный блок для обеспечения опорного блока для дальнейших предсказаний. Квантованные коэффициенты преобразования подвергаются деквантованию (140) и обратному преобразованию (150) для декодирования остатков предсказания. За счет комбинирования (155) декодированных остатков предсказания и спрогнозированного блока восстанавливают блок изображения. Фильтры внутри петли (165) применяются к восстановленному изображению для выполнения, например, удаления блочности/фильтрации SAO (адаптивного смещения отсчетов) для уменьшения артефактов кодирования. Подвергнутое фильтрации графическое изображение хранится в буфере (180) опорных изображений.
На фиг. 17 изображена принципиальная схема видеодекодера 200. В декодере 200 битовый поток декодируется посредством элементов декодера, как описано ниже. Видеодекодер 200 в целом выполняет операцию декодирования, обратную операции кодирования, как показано на фиг. 16. Кодер 100 также в целом выполняет декодирование видео как часть кодирования видеоданных.
В частности, входные данные декодера включают битовый поток видео, который может быть сгенерирован видеокодером 100. Битовый поток сначала подвергается энтропийному декодированию (230) для получения коэффициентов преобразования, векторов движения и другой кодированной информации. Информация о разбиении изображения указывает, как разбивается изображение. Декодер, таким образом, может разделять (235) изображение согласно информации о разбиении декодированного изображения. Коэффициенты преобразования подвергаются деквантованию (240) и обратному преобразованию (250) для декодирования остатков предсказания. За счет комбинирования (255) декодированных остатков предсказания и предсказанного блока восстанавливают блок изображения. Предсказанный блок может быть получен (270) на основании внутрикадрового предсказания (260) или предсказания с компенсацией движения (т.е. межкадрового предсказания) (275). Фильтры внутри петли (265) применяются к восстановленному графическому изображению. Подвергнутое фильтрации графическое изображение хранится в буфере (280) опорных изображений.
Декодированное изображение может быть дополнительно подвергнуто обработке (285) после декодирования, например, обратному преобразованию цвета (например, преобразованию из YCbCr 4:2:0 в RGB 4:4:4) или обратному преобразованию со сжатием, выполняющему действие, обратное процессу преобразования со сжатием, выполняемому при обработке (101) перед кодированием. Обработка после декодирования может использовать метаданные, полученные при обработке перед кодированием и переданные в битовом потоке.
На фиг. 18 изображена принципиальная схема примера системы, в которой реализованы различные решения и варианты осуществления. Система 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). Другие примеры, не показанные на фиг. 18, включают составное видео.
Согласно различным вариантам осуществления устройства ввода блока 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 может представлять собой любой тип, соответствующий технической среде, и может охватывать один или несколько из микропроцессоров, компьютеров общего назначения, компьютеров специального назначения и процессоров на основе многоядерной архитектуры, в качестве неограничивающих примеров.
Различные варианты реализации предусматривают декодирование. «Декодирование» в контексте настоящей заявки может охватывать все или часть процессов, выполняемых, например, в отношении принятой кодированной последовательности для получения конечного вывода, подходящего для отображения. Согласно различным вариантам осуществления такие процессы включают один или несколько из процессов, обычно выполняемых декодером, например, энтропийное декодирование, обратное квантование, обратное преобразование и дифференциальное декодирование. Согласно различным вариантам осуществления такие процессы также или альтернативно включают процессы, выполняемые декодером различных вариантов реализации, описанных в настоящей заявке.
В качестве дополнительных примеров, согласно одному варианту осуществления «декодирование» относится только к энтропийному декодированию, согласно другому варианту осуществления «декодирование» относится только к дифференциальному декодированию, и согласно другому варианту осуществления «декодирование» относится к комбинации энтропийного декодирования и дифференциального декодирования. То, относится ли фраза «процесс декодирования» конкретно к подмножеству операций или в целом к процессу декодирования в более широком смысле, будет ясно на основе контекста конкретных описаний и, как полагается, будет понятно специалистам в данной области техники.
Различные варианты реализации предусматривают кодирование. Аналогично вышеприведенному описанию «декодирования», «кодирование», используемое в настоящей заявке, может охватывать все или часть процессов, выполняемых, например, в отношении входной видеопоследовательности для создания кодированного битового потока. Согласно различным вариантам осуществления такие процессы включают один или несколько из процессов, обычно выполняемых кодером, например, разбиение, дифференциальное кодирование, преобразование, квантование и энтропийное кодирование. Согласно различным вариантам осуществления такие процессы также или альтернативно включают процессы, выполняемые кодером различных вариантов реализации, описанных в настоящей заявке.
В качестве дополнительных примеров, согласно одному варианту осуществления «кодирование» относится только к энтропийному кодированию, согласно другому варианту осуществления «кодирование» относится только к дифференциальному кодированию, и согласно другому варианту осуществления «кодирование» относится к комбинации дифференциального кодирования и энтропийного кодирования. То, относится ли фраза «процесс кодирования» конкретно к подмножеству операций или в целом к процессу кодирования в более широком смысле, будет ясно на основе контекста конкретных описаний и, как полагается, будет понятно специалистам в данной области техники.
Следует отметить, что используемые в настоящем документе элементы синтаксиса являются описательными терминами. Таким образом, они не препятствуют использованию других имен элементов синтаксиса.
Если фигура представлена в виде блок-схемы, следует понимать, что она также предоставляет структурную схему соответствующего устройства. Аналогично, когда фигура представлен в виде структурной схемы, следует понимать, что он также предоставляет блок-схему соответствующего способа/процесса.
Различные варианты осуществления могут относиться к параметрическим моделям оптимизации скорости-искажения. В частности, во время процесса кодирования обычно учитывается баланс или компромисс между скоростью и искажением, часто с учетом ограничения вычислительной сложности. Она может быть измерена посредством показателя оптимизации скорости-искажения (RDO), или посредством метода наименьших средних квадратов (LMS), средней абсолютной погрешности (МАЕ), или других подобных измерений. Оптимизация скорости-искажения обычно сформулирована как минимизация функции скорости-искажения, которая представляет собой взвешенную сумму скорости и искажения. Существуют разные подходы к решению проблемы оптимизации скорости-искажения. Например, подходы могут быть основаны на обширном тестировании всех параметров кодирования, включая все рассмотренные режимы или значения параметров кодирования, с полной оценкой их стоимости кодирования и связанного искажения восстановленного сигнала после кодирования и декодирования. Также могут быть использованы более быстрые подходы для снижения сложности кодирования, в частности с вычислением аппроксимированного искажения на основе предсказания или остаточного сигнала предсказания, а не восстановленного. Также может использоваться комбинация этих двух подходов, например, с использованием аппроксимированного искажения только для некоторых возможных вариантов кодирования и полного искажения для других вариантов кодирования. Другие подходы оценивают только подмножество возможных вариантов кодирования. В целом многие подходы используют любой из различных методов для выполнения оптимизации, но оптимизация не обязательно является полной оценкой стоимости кодирования и связанного искажения.
Варианты реализации и технические решения, описанные в настоящем документе, могут быть реализованы, например, в способе или процессе, устройстве, программно реализованной программе, потоке данных или сигнале. Даже если описание ведется только в контексте единственной формы реализации (например, описание только в качестве способа), реализация описанных признаков также может быть выполнена в других формах (например, как устройство или программа). Устройство может быть реализовано, например, в виде соответствующего аппаратного обеспечения, программного обеспечения и программно-аппаратного обеспечения. Способы могут быть реализованы, например, процессором, который относится к устройствам обработки в целом, включая, например, компьютер, микропроцессор, интегральную схему или программируемое логическое устройство. Процессоры также включают устройства связи, такие как, например, компьютеры, сотовые телефоны, портативные/персональные цифровые ассистенты («PDA») и другие устройства, которые облегчают обмен информацией между конечными пользователями.
Ссылка на «один вариант осуществления» или «вариант осуществления» или «один вариант реализации» или «вариант реализации», а также другие их вариации, означает, что конкретный признак, структура, характеристика и т.д., описанные в связи с вариантом осуществления, включены по меньшей мере в один вариант осуществления. Таким образом, фразы «согласно одному варианту осуществления» или «согласно варианту осуществления» или «согласно одному варианту реализации» или «согласно варианту реализации», а также любые другие вариации в различных местах в настоящей заявке не обязательно все относятся к одному и тому же варианту осуществления.
Кроме того, настоящая заявка может относиться к «определению» различных фрагментов информации. Определение информации может включать одно или несколько из, например, оценки информации, вычисления информации, предсказания информации или извлечения информации из запоминающего устройства.
Кроме того, настоящая заявка может относиться к «осуществлению доступа» к различным фрагментам информации. Осуществление доступа к информации может включать одно или несколько из, например, получения информации, извлечения информации (например, из запоминающего устройства), сохранения информации, перемещения информации, копирования информации, вычисления информации, определения информации, предсказания информации или оценки информации.
Кроме того, настоящая заявка может относиться к «получению» различных фрагментов информации. Получение, как и «осуществление доступа», является широким термином. Получение информации может включать один или несколько из, например, осуществления доступа к информации или извлечение информации (например, из запоминающего устройства). Кроме того, «получение» обычно участвует, так или иначе, во время таких операций, как, например, хранение информации, обработка информации, передача информации, перемещение информации, копирование информации, стирание информации, вычисление информации, определение информации, предсказание информации или оценка информации.
Следует понимать, что использование любого из следующего: «/», «и/или» и «по меньшей мере один из», например, в случаях «А/В», «А и/или В» и «по меньшей мере одно из А и В», предназначено для охвата выбора только первого перечисленного варианта (А), или выбора только второго перечисленного варианта (В), или выбора обоих вариантов (А и В). В качестве дополнительного примера в случаях «А, В и/или С» и «по меньшей мере одно из А, В и С», такая фраза охватывает выбор только первого перечисленного варианта (А), выбор только второго перечисленного варианта (В), или выбор только третьего перечисленного варианта (С), или выбор первого и второго перечисленных вариантов (А и В), или выбор только первого и третьего перечисленных вариантов (А и С), или выбор только второго и третьего перечисленных вариантов (В и С), или выбор всех трех вариантов (А, В и С). Это объяснение может быть расширено, так как является очевидным для специалиста в данной области техники, на столько объектов, сколько перечислено.
Также в контексте настоящего документа выражение «сигнализация» относится, среди прочего, к указанию чего-либо соответствующему декодеру. Например, в некоторых вариантах осуществления кодер сигнализирует о конкретном из множества преобразований, режимов кодирования или флагов. Таким образом, согласно одному варианту осуществления одинаковое преобразование, параметр или режим используется как на стороне кодера, так и на стороне декодера. Таким образом, например, кодер может передавать (явным образом сигнализировать) конкретный параметр на декодер, вследствие чего декодер может использовать этот же конкретный параметр. И наоборот, если декодер уже имеет конкретный параметр, а также другие, то сигнализация может использоваться без передачи (неявно сигнализировать), чтобы просто дать знать декодеру и выбрать конкретный параметр. За счет избегания передачи любых фактических функций, согласно различным вариантам осуществления обеспечивается экономия битов. Следует понимать, что сигнализация может быть осуществлена различными способами. Например, один или несколько элементов синтаксиса, флагов и т.д. используются для сигнализации информации на соответствующий декодер согласно различным вариантам осуществления. Хотя выше описана глагольная форма слова «сигнализация», слово «сигнал» также может использоваться в данном документе как существительное.
Как будет очевидно специалисту в данной области техники, варианты реализации могут создавать различные сигналы, отформатированные для переноса информации, которая может быть, например, сохранена или передаваться. Информация может включать, например, инструкции для выполнения способа, или данные, созданные в одном из описанных вариантов реализации. Например, сигнал может быть отформатирован для переноса битового потока описанного варианта осуществления. Такой сигнал может быть отформатирован, например, в качестве электромагнитной волны (например, с использованием радиочастотной части спектра) или в качестве сигнала основной полосы. Форматирование может включать, например, кодирование потока данных и модулирование несущей с кодированным потоком данных. Информация о том, что сигнал несет, может представлять собой, например, аналоговую или цифровую информацию. Сигнал может быть передан по различным проводным или беспроводным каналам, как известно. Сигнал может храниться на носителе, который читается процессором.
Мы описываем несколько вариантов осуществления, относящихся к различным категориям и типам формулы изобретения. Признаки этих вариантов осуществления могут быть предоставлены по отдельности или в любой комбинации. Кроме того, варианты осуществления могут включать одно или несколько из следующих признаков, устройств или технических решений, по отдельности или в любой комбинации, в различных категориях и типах пунктов формулы изобретения.
• Способ или устройство для выполнения внутрикадрового кодирования и декодирования с подразделами внутрикадрового кодирования.
• Способ или устройство для выполнения внутрикадрового кодирования и декодирования с подразделами внутрикадрового кодирования с использованием множества опорных линий.
• Способ или устройство для выполнения внутрикадрового кодирования и декодирования с подразделами внутрикадрового кодирования и заменой отсутствующих отсчетов.
• Способ или устройство для выполнения внутрикадрового кодирования и декодирования с подразделами внутрикадрового кодирования и отображением опорных пикселей над родительским видеоблоком.
• Способ или устройство для выполнения внутрикадрового кодирования и декодирования с подразделами внутрикадрового кодирования и неравными размерами подразделов.
• Битовый поток или сигнал, который содержит один или несколько из описанных элементов синтаксиса или их вариации.
• Битовый поток или сигнал, который содержит информацию, передающую синтаксис, сгенерированную согласно любому из описанных вариантов осуществления.
• Создание и/или передача, и/или прием и/или декодирование согласно любому из описанных вариантов осуществления.
• Способ, процесс, устройство, носитель, на котором хранятся инструкции, носитель, на котором хранятся данные, или сигнал согласно любому из описанных вариантов осуществления.
• Введение в передачу элементов синтаксиса, которые позволяют декодеру определять режим кодирования по принципу, соответствующему принципу, используемому кодером.
• Создание и/или передача и/или прием, и/или декодирование битового потока или сигнала, который содержит один или несколько из описанных элементов синтаксиса или их вариации.
• Телевизор, телевизионная приставка, сотовый телефон, планшет или другое электронное устройство, которое выполняет способ(ы) преобразования согласно любому из описанных вариантов осуществления.
• Телевизор, телевизионная приставка, сотовый телефон, планшет или другое электронное устройство, которое выполняет определение способа(-ов) преобразования согласно любому из описанных вариантов осуществления, и которое отображает (например, с помощью монитора, экрана или дисплея другого типа) полученное в результате графическое изображение.
• Телевизор, телевизионная приставка, сотовый телефон, планшет или другое электронное устройство, которое выбирает, ограничивает полосу или настраивает (например, с помощью блока настройки) канал для получения сигнала, содержащего кодированное графическое изображение, и выполняет способ(ы) преобразования согласно любому из описанных вариантов осуществления.
• Телевизор, телевизионная приставка, сотовый телефон, планшет или другое электронное устройство, которое получает (например, с помощью антенны) сигнал по беспроводной связи, который содержит кодированное графическое изображение, и выполняет способ(ы) преобразования.

Claims (33)

1. Способ кодирования видео, предусматривающий:
определение необходимости использования широкоугольного внутрикадрового предсказания для определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров указанного подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров указанного подраздела находится за пределами конкретного диапазона, причем видеоблок делят по вертикали или горизонтали на множество подразделов и отношение размеров указанного прямоугольного подраздела отличается от указанного видеоблока;
идентификация опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания указанного подраздела видеоблока;
предсказание отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, причем количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока, которые подлежат использованию в качестве опорных отсчетов, основаны на размерах прямоугольного подраздела; и
кодирование прямоугольного подраздела видеоблока с использованием указанного предсказания в режиме внутрикадрового кодирования.
2. Устройство кодирования видео, содержащее:
процессор, выполненный с возможностью:
определения необходимости использования широкоугольного внутрикадрового предсказания для определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров указанного подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров указанного подраздела находится за пределами конкретного диапазона, причем видеоблок выполнен с возможностью деления по вертикали или горизонтали на множество подразделов и отношение размеров указанного прямоугольного подраздела отличается от указанного видеоблока;
идентификации опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания указанного подраздела видеоблока;
предсказания отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, причем количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока, которые подлежат использованию в качестве опорных отсчетов, основаны на размерах прямоугольного подраздела; и
кодирования прямоугольного подраздела видеоблока с использованием указанного предсказания в режиме внутрикадрового кодирования.
3. Способ декодирования видео, предусматривающий:
определение необходимости использования широкоугольного внутрикадрового предсказания для определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров указанного подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров указанного подраздела находится за пределами конкретного диапазона, причем видеоблок делят по вертикали или горизонтали на множество подразделов и отношение размеров указанного прямоугольного подраздела отличается от указанного видеоблока;
идентификацию опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания указанного подраздела видеоблока;
предсказание отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, причем количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока, которые подлежат использованию в качестве опорных отсчетов, основаны на размерах прямоугольного подраздела; и
декодирование прямоугольного подраздела видеоблока с использованием указанного предсказания в режиме внутрикадрового кодирования.
4. Способ по п. 1 или 3, в котором неширокоугольные режимы предсказания применяются к подразделам, которые являются квадратными.
5. Способ по п. 1 или 3, в котором для подразделов, расположенных за пределами тех, которые находятся ближе всего к левому опорному массиву для вертикальных подразделов, или за пределами тех, которые находятся ближе всего к верхнему краю для горизонтальных подразделов, недостающие опорные отсчеты отображаются из видеоблока.
6. Способ или аппарат по п. 5, в которых направление внутрикадрового предсказания основано на размерах видеоблока для подраздела с отношением ширины к высоте больше 16 или меньше 1/16.
7. Способ по п. 1 или 3, в котором направление внутрикадрового предсказания основано на размерах видеоблока для подраздела с отношением ширины к высоте больше 16 или меньше 1/16, причем для подразделов, расположенных за пределами тех, которые находятся ближе всего к левому опорному массиву для вертикальных подразделов, или за пределами тех, которые находятся ближе всего к верхнему краю для горизонтальных подразделов, недостающие опорные отсчеты отображаются непосредственно горизонтально или вертикально из видеоблока.
8. Способ по п. 5, в котором подраздел представляет собой по меньшей мере одну строку или один столбец видеоблока.
9. Способ по п. 1 или 3, в котором подразделы обладают неравными формами, но характеризуются высотой и шириной, равными степени двойки.
10. Способ по п. 1 или 3, в котором подраздел может использовать множество опорных линий.
11. Устройство декодирования видео, содержащее:
процессор, выполненный с возможностью:
определения необходимости использования широкоугольного внутрикадрового предсказания для определения направления внутрикадрового предсказания для прямоугольного подраздела видеоблока на основе размеров подраздела, когда отношение размеров указанного подраздела находится в конкретном диапазоне, и на основе размеров видеоблока, когда отношение размеров указанного подраздела находится за пределами конкретного диапазона, причем видеоблок выполнен с возможностью деления по вертикали или горизонтали на множество подразделов и отношение размеров указанного прямоугольного подраздела отличается от указанного видеоблока;
идентификации опорных отсчетов сверху справа или снизу слева от видеоблока в качестве верхних правых или нижних левых опорных отсчетов для предсказания указанного подраздела видеоблока;
предсказания отсчета прямоугольного подраздела с использованием опорных отсчетов из строки выше видеоблока или опорных отсчетов из столбца слева от видеоблока, причем количество опорных отсчетов в строке выше видеоблока или столбце слева от видеоблока, которые подлежат использованию в качестве опорных отсчетов, основаны на размерах прямоугольного подраздела; и
декодирования прямоугольного подраздела видеоблока с использованием указанного предсказания в режиме внутрикадрового кодирования.
12. Устройство обработки видео, содержащее:
устройство по п. 11; и
по меньшей мере одно из (i) антенны, выполненной с возможностью приема сигнала, причем сигнал содержит видеоблок, (ii) ограничителя полосы, выполненного с возможностью ограничения принятого сигнала полосой частот, которая содержит видеоблок, и (iii) дисплея, выполненного с возможностью отображения выходного сигнала, представляющего видеоблок.
13. Постоянный машиночитаемый носитель данных, содержащий инструкции для осуществления способа по любому из пп. 1 и 4-10.
RU2021129588A 2019-04-12 2020-04-09 Широкоугольное внутрикадровое предсказание с подразделами RU2815092C2 (ru)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP19305478.0 2019-04-12

Publications (2)

Publication Number Publication Date
RU2021129588A RU2021129588A (ru) 2023-05-12
RU2815092C2 true RU2815092C2 (ru) 2024-03-11

Family

ID=

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2653299C2 (ru) * 2014-03-17 2018-05-07 Нокиа Текнолоджиз Ой Способ и устройство для кодирования и декодирования видеоданных
EP3457692A1 (en) * 2016-05-13 2019-03-20 Sony Corporation Image processing device and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2653299C2 (ru) * 2014-03-17 2018-05-07 Нокиа Текнолоджиз Ой Способ и устройство для кодирования и декодирования видеоданных
EP3457692A1 (en) * 2016-05-13 2019-03-20 Sony Corporation Image processing device and method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Jin Heo et al., Non-CE3: Harmonization between WAIP and ISP, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Geneva, CH, 19-27 March 2019 [Найдено 15.06.2023] в Интернет URL https://jvet-experts.org/doc_end_user/documents/14_Geneva/wg11/JVET-N0452-v2.zip, 18.03.2019, 3 с. Fabien Racap&eacute; et al., CE3-related: Wide-angle intra prediction for non-square blocks, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Geneva, CH, 19-27 March 2019, JVET-K0500_r4 [Найдено 16.06.2023] в Интернет URL https://jvet-experts.org/doc_end_user/documents/11_Ljubljana/wg11/JVET-K0500-v6.zip, 16.07.2018, 13 с. Santiago De-Lux&aacute;n-Hern&aacute;ndez et al., Non-CE3: ISP with independent sub-partitions for certain block sizes, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Geneva, CH, 19-27 Mar. 2019, Document: JVET-N0372-v1 [Найдено 06.07.2023] в Интернет URL *

Similar Documents

Publication Publication Date Title
US20220038684A1 (en) Multi-reference line intra prediction and most probable mode
US20220191474A1 (en) Wide angle intra prediction with sub-partitions
US20230336775A1 (en) Generalized bi-prediction and weighted prediction
EP3854098A1 (en) Method and device for picture encoding and decoding
US20240163423A1 (en) Intra prediction mode extension
US20220150485A1 (en) Intra prediction mode partitioning
US11956436B2 (en) Multiple reference intra prediction using variable weights
US20220124337A1 (en) Harmonization of intra transform coding and wide angle intra prediction
US20210297668A1 (en) Wide angle intra prediction and position dependent intra prediction combination
EP3668100A1 (en) Method and device for picture encoding and decoding
EP3654645A1 (en) Method and device for picture encoding and decoding
US20230023837A1 (en) Subblock merge candidates in triangle merge mode
RU2815092C2 (ru) Широкоугольное внутрикадровое предсказание с подразделами
EP4320866A1 (en) Spatial illumination compensation on large areas
WO2024083500A1 (en) Methods and apparatuses for padding reference samples
WO2024002699A1 (en) Intra sub-partition improvements
JP2022537173A (ja) 位置依存イントラ予測コンビネーションを用いたピクチャ符号化及び復号の方法及びデバイス
EP3991428A1 (en) Hmvc for affine and sbtmvp motion vector prediction modes