RU2781240C1 - Способ и устройство предсказания для декодирования и компьютерный носитель данных - Google Patents

Способ и устройство предсказания для декодирования и компьютерный носитель данных Download PDF

Info

Publication number
RU2781240C1
RU2781240C1 RU2021110172A RU2021110172A RU2781240C1 RU 2781240 C1 RU2781240 C1 RU 2781240C1 RU 2021110172 A RU2021110172 A RU 2021110172A RU 2021110172 A RU2021110172 A RU 2021110172A RU 2781240 C1 RU2781240 C1 RU 2781240C1
Authority
RU
Russia
Prior art keywords
samples
sample
determining
positions
decoding
Prior art date
Application number
RU2021110172A
Other languages
English (en)
Inventor
Цзюньянь ХО
Яньчжоу МА
Шуай ВАНЬ
Фучжэн ЯН
Синьвэй ЛИ
Original Assignee
Гуандун Оппо Мобайл Телекоммьюникейшнс Корп., Лтд.
Filing date
Publication date
Application filed by Гуандун Оппо Мобайл Телекоммьюникейшнс Корп., Лтд. filed Critical Гуандун Оппо Мобайл Телекоммьюникейшнс Корп., Лтд.
Application granted granted Critical
Publication of RU2781240C1 publication Critical patent/RU2781240C1/ru

Links

Images

Abstract

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

Description

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Варианты осуществления настоящего изобретения относятся к области техники кодирования и декодирования видео и, в частности, к способу и устройству предсказания для декодирования и компьютерному носителю данных.
ПРЕДПОСЫЛКИ ИЗОБРЕТЕНИЯ
С повышением требований к качеству отображения видео появились новые форматы видеоприложений, такие как видео высокой четкости и сверхвысокой четкости. H.265/высокоэффективное кодирование видеоизображений (HEVC) – это новейший международный стандарт сжатия видео в настоящее время. По сравнению с эффективностью сжатия стандарта кодирования видео H.264/усовершенствованного кодирования видео (AVC) предыдущего поколения эффективность сжатия H.265/HEVC улучшена на приблизительно 50 %, но все еще не может соответствовать требованию быстрой разработки видеоприложений, особенно новых видеоприложений, таких как видео сверхвысокой четкости и виртуальной реальности (VR).
Группа экспертов по видеокодированию Сектора стандартизации электросвязи Международного союза электросвязи (ITU-T) и группа экспертов по кинофильмам Международной организации по стандартизации (ISO) / Международной электротехнической комиссии (IEC) создали Совместную команду по исследованию видео (JVET) в 2015 г., чтобы разработать стандарт кодирования видео следующего поколения. Тестовая модель совместного исследования (JEM) – это универсальная эталонная программная платформа, и на этой платформе осуществляют проверку разных инструментов кодирования. Стандарт кодирования видео следующего поколения формально был назван JVET как Универсальное кодирование видео (VVC) в апреле 2018 г., и соответствующая тестовая модель представляет собой модель преобразования представления (VTM). Способ предсказания для кодирования и декодирования на основе линейной модели был интегрирован в эталонное программное обеспечение JEM и VTM, и посредством линейной модели компонент цветности текущего блока декодирования предсказывается в соответствии с его компонентом яркости. Однако при построении линейной модели подмножество соседних эталонных выборок, образованное соседними эталонными выборками, не является столь целесообразным, что делает сложность поиска относительно высокой и снижает эффективность предсказания для декодирования видеоизображения.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Ввиду этого в вариантах осуществления изобретения предложены способ и устройство предсказания для декодирования, а также компьютерный носитель данных. Как важность, так и дисперсия учитываются для соседних эталонных выборок в подмножестве соседних эталонных выборок, и подмножество соседних эталонных выборок включает небольшое количество выборок с тем, чтобы снизилась сложность поиска, улучшилась эффективность предсказания для декодирования видеоизображений и еще больше снизилась скорость передачи.
Технические решения вариантов осуществления настоящего изобретения могут быть реализованы следующим образом.
Согласно первому аспекту в вариантах осуществления изобретения предложен способ предсказания для декодирования, который может включать следующие операции.
Эталонные выборки, смежные с по меньшей мере одной стороной блока декодирования, получают для получения первого набора соседних эталонных выборок.
Эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок.
Эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положений эталонных выборок, подлежащих выбору, и выбранные эталонные выборки образуют подмножество соседних эталонных выборок.
Декодирование на основании предсказания выполняют в отношении блока декодирования на основании подмножества соседних эталонных выборок.
Согласно второму аспекту в вариантах осуществления изобретения предложено устройство предсказания для декодирования, которое может содержать узел получения, узел определения, узел выбора и узел декодирования.
Узел получения может быть выполнен с возможностью получения эталонных выборок, смежных с по меньшей мере одной стороной блока декодирования, чтобы получить первый набор соседних эталонных выборок.
Узел определения может быть выполнен с возможностью определения эталонной точки из по меньшей мере одной стороны и определения положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок.
Узел выбора может быть выполнен с возможностью выбора эталонных выборок, соответствующих положениям эталонных выборок, подлежащим выбору из первого набора соседних эталонных выборок, на основании положений эталонных выборок, подлежащих выбору, и образования подмножества соседних эталонных выборок с использованием выбранных эталонных выборок.
Узел декодирования может быть выполнен с возможностью выполнения декодирования на основании предсказания в отношении блока декодирования на основании подмножества соседних эталонных выборок.
Согласно третьему аспекту в вариантах осуществления изобретения предложено устройство предсказания для декодирования, которое может содержать запоминающее устройство и процессор.
Запоминающее устройство может быть выполнено с возможностью хранения компьютерной программы, которая может запускаться на процессоре.
Процессор может быть выполнен с возможностью запуска компьютерной программы для исполнения операций способа, как описано в первом аспекте.
Согласно четвертому аспекту в вариантах осуществления изобретения предусмотрен компьютерный носитель данных, на котором может храниться программа предсказания для декодирования. Программа для предсказания для декодирования может исполняться по меньшей мере одним процессором для реализации операций способа, как описано в первом аспекте.
В вариантах осуществления изобретения предложены способ и устройство предсказания для декодирования, а также компьютерный носитель данных. Эталонные выборки, смежные с по меньшей мере одной стороной блока декодирования, получают сначала для получения первого набора соседних эталонных выборок. Затем эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок. Далее эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положений эталонных выборок, подлежащих выбору, и выбранные эталонные выборки образуют подмножество соседних эталонных выборок. Наконец, декодирование на основании предсказания выполняется в отношении блока декодирования на основании подмножества соседних эталонных выборок. При выборе соседних эталонных выборок в подмножестве соседних эталонных выборок учитываются как важность, так и дисперсия с тем, чтобы параметры модели, построенные на основании подмножества соседних эталонных выборок, были относительно точными и эффективность предсказания для декодирования видеоизображений могла быть улучшена. Кроме того, подмножество соседних эталонных выборок включает небольшое количество выборок с тем, чтобы также снизилась сложность поиска, улучшилась эффективность предсказания для декодирования видеоизображений и еще больше снизилась скорость передачи.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
На фиг. 1A–1C представлены структурные схемы форматов выборок видеоизображений в соответствующем техническом решении соответственно.
На фиг. 2A и фиг. 2B представлены схематические изображения выборки для соседних эталонных значений первого компонента цвета и соседних эталонных значений второго компонента цвета блока декодирования в соответствующем техническом решении соответственно.
На фиг. 3 представлена структурная схема построения модели предсказания на основании максимумов и минимумов блока декодирования в соответствующем техническом решении.
На фиг. 4A и фиг. 4B представлены структурные схемы выбора соседних эталонных выборок для квадратного блока декодирования и неквадратного блока декодирования согласно соответствующему техническому решению соответственно.
На фиг. 5A и фиг. 5B представлены структурные схемы выбора соседних эталонных выборок согласно традиционному техническому решению и предложению L0138 в соответствующем техническом решении соответственно.
На фиг. 6 представлена блок-схема системы кодирования видео согласно варианту осуществления настоящего изобретения.
На фиг. 7 представлена блок-схема системы декодирования видео согласно варианту осуществления настоящего изобретения.
На фиг. 8 представлена схема последовательности способа предсказания для декодирования согласно варианту осуществления настоящего изобретения.
На фиг. 9 представлена структурная схема выбора подмножества соседних эталонных выборок, соответствующих верхней стороне блока декодирования, согласно варианту осуществления настоящего изобретения.
На фиг. 10 представлена структурная схема выбора подмножества соседних эталонных выборок, соответствующих левой стороне блока декодирования, согласно варианту осуществления настоящего изобретения.
На фиг. 11 представлена другая структурная схема выбора подмножества соседних эталонных выборок, соответствующих верхней стороне блока декодирования, согласно варианту осуществления настоящего изобретения.
На фиг. 12 представлена другая структурная схема выбора подмножества соседних эталонных выборок, соответствующих верхней стороне блока декодирования, согласно варианту осуществления настоящего изобретения.
На фиг. 13 представлена другая структурная схема выбора подмножества соседних эталонных выборок, соответствующих верхней стороне блока декодирования, согласно варианту осуществления настоящего изобретения.
На фиг. 14 представлена другая структурная схема выбора подмножества соседних эталонных выборок, соответствующих верхней стороне блока декодирования, согласно варианту осуществления настоящего изобретения.
На фиг. 15 представлена структурная схема устройства предсказания для декодирования согласно варианту осуществления настоящего изобретения.
На фиг. 16 представлена структурная схема аппаратного обеспечения устройства предсказания для декодирования согласно варианту осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
Для облегчения понимания характеристик и технического содержания вариантов осуществления изобретения ниже будет подробно описана реализация вариантов осуществления изобретения в комбинации с графическими материалами. Прилагаемые графические материалы применяются только для описания в качестве ссылок и не предназначены для ограничения вариантов осуществления настоящего изобретения.
В видеоизображении для представления блоков декодирования обычно используются первый компонент цвета, второй компонент цвета и третий компонент цвета. Три компонента цвета представляют собой компонент яркости, синий компонент цветности и красный компонент цветности соответственно. В частности, компонент яркости обычно представлен знаком Y, синий компонент цветности обычно представлен знаком Cb, а красный компонент цветности обычно представлен знаком Cr.
В вариантах осуществления настоящего изобретения первый компонент цвета может представлять собой компонент яркости Y, второй компонент цвета может представлять собой синий компонент цветности Cb, а третий компонент цвета может представлять собой красный компонент цветности Cr. Тем не менее, никаких конкретных ограничений не предусмотрено для этого в вариантах осуществления настоящего изобретения. В настоящее время распространенным форматом выборки является формат YCbCr. Формат YCbCr включает форматы, показанные на фиг. 1A– 1C соответственно. На фигурах крестик (X) представляет точку выборки первого компонента цвета, а кружочек (O) представляет точку выборки второго компонента цвета или третьего компонента цвета. Формат YCbCr включает следующие форматы.
Формат 4:4:4: как показано на фиг. 1A, второй компонент цвета или третий компонент цвета не подвергнут понижающей выборке. Четыре выборки первого компонента цвета, четыре выборки второго компонента цвета и четыре выборки третьего компонента цвета извлекаются из каждых четырех непрерывных выборок в каждой строке развертки.
Формат 4:2:2: как показано на фиг. 1B, горизонтальная выборка 2:1 выполняется на первом компоненте цвета относительно второго компонента цвета или третьего компонента цвета, а вертикальная понижающая выборка не выполняется. Четыре выборки первого компонента цвета, две выборки второго компонента цвета и две выборки третьего компонента цвета извлекаются из каждых четырех непрерывных выборок в каждой строке развертки.
Формат 4:2:0: как показано на фиг. 1C, горизонтальная понижающая выборка 2:1 и вертикальная понижающая выборка 2:1 выполняются для первого компонента цвета относительно второго компонента цвета или третьего компонента цвета. Две выборки первого компонента цвета, одна выборка второго компонента цвета и одна выборка третьего компонента цвета извлекаются из каждых двух непрерывных выборок в строке горизонтальной развертки и строке вертикальной развертки.
При условии, что формат YCbCr 4:2:0 используется для видеоизображения, если первый компонент цвета видеоизображения представляет собой блок декодирования с размером 2N×2N, соответствующий второй компонент цвета или третий компонент цвета представляет собой блок декодирования с размером N×N, где N представляет собой боковую длину блока декодирования. В вариантах осуществления настоящего изобретения следующие описания сделаны с форматом 4:2:0 в качестве примера. Однако технические решения вариантов осуществления настоящего изобретения также применяются к другим форматам выборки.
В стандарте кодирования видео следующего поколения H.266 для дальнейшего повышения эффективности кодирования и декодирования расширено и улучшено межкомпонентное предсказывание (CCP), и предлагается межкомпонентное предсказывание линейной модели (CCLM). В H.266 CCLM осуществляет предсказывание от первого компонента цвета до второго компонента цвета, от первого компонента цвета до третьего компонента цвета и между вторым компонентом цвета и третьим компонентом цвета. Выполнены следующие описания предсказывания от первого компонента цвета до второго компонента цвета в качестве примера, но технические решения вариантов осуществления настоящего изобретения также могут применяться для предсказывания других компонентов цвета.
Можно понять, что для уменьшения избыточности между первым компонентом цвета и вторым компонентом цвета для VTM принят режим предсказания CCLM. В таком случае первый компонент цвета и второй компонент цвета являются одним и тем же блоком декодирования, а второй компонент цвета предсказывается на основании восстановленного значения первого компонента цвета одного и того же блока декодирования. Например, принята модель предсказывания в формуле (1):
Figure 00000001
(1).
Figure 00000002
представляет собой координату положения выборки в блоке декодирования, i представляет собой горизонтальное направление, а j представляет собой вертикальное направление,
Figure 00000003
представляет собой предсказанное значение второго компонента цвета, соответствующее выборке с координатой положения
Figure 00000004
в блоке декодирования,
Figure 00000005
представляет собой восстановленное значение первого компонента цвета, соответствующее выборке с координатой положения
Figure 00000006
в таком же блоке декодирования (после понижающей выборки), и
Figure 00000007
и
Figure 00000008
представляют собой параметры модели, относящиеся к модели предсказания.
Существует много способов построения параметров модели
Figure 00000007
и
Figure 00000008
. Может быть принят метод построения регрессии на основе оценки наименьших квадратов, или может быть принят метод построения на основе максимума и минимума, или даже может быть принят другой метод построения. Никаких конкретных ограничений не предусмотрено для этого в вариантах осуществления настоящего изобретения. Следующие ниже описания сделаны с использованием метода построения регрессии на основе оценки наименьших квадратов и метода построения на основе максимума и минимума в качестве примеров соответственно.
В VVC изначально принят способ выведения параметров модели для построения регрессии на основе наименьших квадратов. В частности,
Figure 00000007
и
Figure 00000008
в следующей формуле (2) могут быть выведены путем минимизации ошибок регрессии соседних эталонных значений первого компонента цвета и соседних эталонных значений второго компонента цвета вокруг блока декодирования:
Figure 00000009
(2).
Figure 00000010
представляет собой соседнее эталонное значение первого компонента цвета, соответствующее левой стороне и правой стороне после понижающей выборки,
Figure 00000011
представляет собой соседнее эталонное значение второго компонента цвета, соответствующее левой стороне и верхней стороне, N представляет собой боковую длину второго компонента цвета блока декодирования, и
Figure 00000012
. На фиг. 2A и фиг. 2B показаны схемы выборки соседних эталонных значений первого компонента цвета и соседних эталонных значений второго компонента цвета блока декодирования в соответствующем техническом решении соответственно. На фиг. 2A большой блок жирным шрифтом используется для выделения первого компонента цвета блока 21 декодирования, и серый сплошной кружок используется для указания соседнего эталонного значения
Figure 00000013
первого компонента цвета блока 21 декодирования. На фиг. 2B большой узел жирным шрифтом используется для выделения второго компонента цвета блока 22 декодирования, и серый сплошной кружок используется для указания соседнего эталонного значения
Figure 00000014
второго компонента цвета блока 22 декодирования. На фиг. 2A показан блок 21 декодирования первого компонента цвета с размером 2N×2N. Для видеоизображения в формате 4:2:0 размер второго компонента цвета, соответствующего первому компоненту цвета с размером 2N×2N, составляет N×N, как показано ссылочной позицией 22 на фиг. 2B. То есть на фиг. 2A и фиг. 2B представлены схематические изображения блоков декодирования, полученных путем выполнения выборки первого компонента цвета и выборки второго компонента цвета в одном и том же блоке декодирования.
В VVC недавно был принят упрощенный способ выведения параметров модели. В частности, максимальное соседнее эталонное значение первого компонента цвета и минимальное соседнее эталонное значение первого компонента цвета могут быть найдены, чтобы вывести параметры модели
Figure 00000007
и
Figure 00000008
в следующей формуле (3) в соответствии с принципом, что «две точки определяют линию»:
Figure 00000015
(3).
Figure 00000016
и
Figure 00000017
представляют собой максимальное и минимальное значения, полученные поиском соседних эталонных значений первого компонента цвета, соответствующих левой стороне и верхней стороне после понижающей выборки, и
Figure 00000018
и
Figure 00000019
представляют собой соседние эталонные значения второго компонента цвета, соответствующие эталонным выборкам в положениях, соответствующих
Figure 00000016
и
Figure 00000017
. На фиг. 3 показана структурная схема построения модели предсказания на основании максимумов и минимумов блока декодирования в соответствующем техническом решении. Абсцисса представляет собой соседние эталонные значения первого компонента цвета блока декодирования, а ордината представляет собой соседние эталонные значения второго компонента цвета блока декодирования. Параметры модели
Figure 00000007
и
Figure 00000008
могут быть вычислены с помощью формулы (3) в соответствии с
Figure 00000020
,
Figure 00000021
,
Figure 00000022
и
Figure 00000023
, а построенная модель предсказания представляет собой
Figure 00000024
. В данном документе L представляет собой восстановленное значение первого компонента цвета, соответствующее выборке в блоке декодирования, и C представляет собой предсказанное значение второго компонента цвета, соответствующее выборке в блоке декодирования.
Для построения набора соседних эталонных выборок в CCLM существует много условий в традиционном уровне техники, которые будут описаны ниже соответственно.
(a) Отличие от формы блока декодирования
На фиг. 4A показана структурная схема выбора соседних эталонных выборок для квадратного блока декодирования согласно соответствующему техническому решению. Как показано на фиг. 4A, блок декодирования представляет собой квадратный блок декодирования, и все соседние выборки, соответствующие левой стороне и верхней стороне блока декодирования, могут быть определены как эталонные выборки. Для первого компонента цвета сначала требуется выполнить понижающую выборку так, чтобы первый компонент цвета, подвергнутый понижающей выборке, имел такое же разрешение, что и второй компонент цвета. На фиг. 4A серый жирный кружок используется для представления соседних эталонных выборок, выбранных для квадратного блока декодирования.
На фиг. 4B показана структурная схема выбора соседних эталонных выборок для неквадратного блока декодирования согласно соответствующему техническому решению. Как изображено на фиг. 4B, блок декодирования представляет собой неквадратный блок декодирования, и ширина и высота блока декодирования не равны. С другой стороны, понижающую выборку для первого компонента цвета сначала требуется выполнить так, чтобы первый компонент цвета, подвергнутый понижающей выборке, имел такое же разрешение, что и второй компонент цвета. С другой стороны, требуется, чтобы соседние выборки, соответствующие длинной стороне блока декодирования, подвергались дальнейшей понижающей выборке, чтобы количество соседних эталонных выборок, полученных для длинной стороны, было равно количеству соседних эталонных выборок, соответствующих короткой стороне. На фиг. 4B серый жирный кружок представляет соседнюю эталонную выборку, выбранную для неквадратного блока декодирования.
(b) Отличие от наличия соседних выборок, соответствующих левой стороне или верхней стороне блока декодирования.
Когда доступны соседние выборки, соответствующие левой стороне и верхней стороне блока декодирования, все выборки в строке, смежной с верхней стороной, и соседние выборки в столбце, смежном с левой стороной, могут быть определены как соседние эталонные выборки.
Когда доступны соседние выборки, соответствующие только одной из левой стороны и верхней стороны блока декодирования, соседние выборки, соответствующие доступной стороне, определяются как соседние эталонные выборки.
Когда все соседние выборки, соответствующие левой стороне и верхней стороне блока декодирования, недоступны, соседняя эталонная выборка отсутствует, параметр модели
Figure 00000025
устанавливается на 0, а параметр модели
Figure 00000026
устанавливается на промежуточное значение 512 второго компонента цвета, а именно предсказанные значения второго компонента цвета, соответствующие всем выборкам в блоке декодирования, составляют 512.
Следует отметить, что если N определяется как длина короткой стороны блока декодирования второго компонента цвета, когда доступны все соседние выборки, соответствующие левой стороне и верхней стороне блока декодирования, всего присутствуют 2N соседних эталонных выборок, доступных для CCLM. Кроме того, если не указано иное, следующие описания сделаны с условием, что все соседние выборки, соответствующие левой стороне и верхней стороне блока декодирования, доступны в качестве примера.
(c) Схема подмножества соседних эталонных выборок (выборки уменьшены)
В процессе вычисления параметра модели для CCLM требуемая сложность операции прямо пропорциональна количеству соседних эталонных выборок для CCLM. Следовательно, для уменьшения сложности операции в предложении L0138 на двенадцатом совещании JVET предлагается техническая схема уменьшения количества соседних эталонных выборок для CCLM на основании размера блока второго компонента цвета, соответствующего блоку декодирования. В таблице 1 изображена таблица соотношений между размером блока второго компонента цвета, соответствующего блоку декодирования, и количеством соседних эталонных выборок согласно соответствующему техническому решению. В таблице 1 N1 представляет собой количество соседних эталонных выборок для CCLM в традиционном техническом решении, а N2 представляет собой количество соседних эталонных выборок для CCLM после уменьшения выборки в соответствии с предложением L0138. В частности, способ уменьшения выборки в предложении L0138 заключается в выполнении понижающей выборки на соседних эталонных выборках после того, как соседние эталонные выборки получены с помощью традиционного технического решения.
Таблица 1
Размер блока второго компонента цвета N1 N2
2×2 4 2
2×n/n×2(n>2) 4 4
4×4/4×n/n×4(n>4) 8 8
8×8/8×n/n×8(n>8) 16 8
16×16/16×n/n×16(n>16) 32 8
32×32 64 8
(d) Схема понижающей выборки соседней эталонной выборки
Для неквадратного блока декодирования схема понижающей выборки для длинной стороны (изображена на фиг. 4B) предусмотрена в VTM. Как и в вышеупомянутом предложении L0138, в предложении предлагается набор с пониженной выборкой, полученный путем дополнительного уменьшения выборки.
В предложении L0138 выбор соседних эталонных выборок в процессе понижающей выборки может влиять на эффективность предсказания для декодирования, а эффективность предсказания для декодирования, соответствующая подмножеству соседних эталонных выборок, полученных с помощью решения с понижающей выборкой по умолчанию в VTM, не является такой идеальной. Следовательно, в предложении L0138 предлагается, чтобы во время понижающей выборки может быть принято другое решение для выбора подмножества соседних эталонных выборок. В частности, в традиционном техническом решении, принятом в VTM, когда длинная сторона неквадратного блока декодирования подвергается понижающей выборке, выбор выборки начинается с самого левого края для выборок в смежной строке, соответствующей верхней стороне блока декодирования, и выбор выборки начинается с самого верхнего края для выборок в смежном столбце, соответствующем левой стороне. В предложении L0138 предлагается решение начать выбор выборки с краев, противоположных краям в традиционном техническом решении, и может конкретно относиться к примерам структуры выбора выборки, показанным на фиг. 5A и фиг. 5B.
На фиг. 5A показана структурная схема выбора соседних эталонных выборок согласно традиционной технической схеме в соответствующем техническом решении. Как показано на фиг. 5A, выбор выборки для выполнения выборки начинается с выборок крайнего левого края для выборок в смежной строке, соответствующих длинной стороне блока декодирования. На фиг. 5B показана структурная схема выбора соседних эталонных выборок согласно предложению L0138 в соответствующем техническом решении. Как показано на фиг. 5B, выбор выборки для выполнения выборки начинается с выборок крайнего правого края для выборок в смежной строке, соответствующих длинной стороне блока декодирования. В данном документе интервал выборки такой же, как и в традиционном техническом решении, и не будет уточняться в варианте осуществления изобретения. При использовании схемы выбора выборки в предложении L0138 диапазон значений всех соседних эталонных выборок может быть полностью охвачен во время вычисления параметров модели CCLM. Однако важность каждой соседней эталонной выборки не рассматривается, и, следовательно, общая характеристика длинной стороны все еще может не быть максимально представлена исходя из ограниченного количества.
В соответствующем техническом решении, с одной стороны, учитывается сложность операции. Поиск 2N точек для максимального соседнего эталонного значения первого компонента цвета и минимального соседнего эталонного значения первого компонента цвета для вывода параметров модели в соответствии с принципом, согласно которому «две точки определяют линию» (со ссылкой на формулу (3)), допускается в VTM. В решении используются только две соседние эталонные выборки так, что сложность операции значительно снижается по сравнению со сложностью параметров модели при построении регрессии на основе наименьших квадратов. Однако решение по-прежнему имеет высокую сложность, главным образом потому что требуется определить максимум и минимум в наборе соседних эталонных выборок и необходимо выполнить 4N операций сравнения для определения максимума и минимума. Более того, если длина блока декодирования больше, количество соседних эталонных выборок для CCLM больше, что приводит к тому, что количество случаев поиска для определения максимума и минимума будет больше, чтобы сложность операции решения все еще была высокой. С другой стороны, учитывается точность предсказания. Если корреляция между выборкой, полученной путем поиска, и текущим блоком декодирования является низкой в процессе поиска максимума и минимума, может быть определено, что выборка является дефектной выборкой. В таком случае, если две выборки, полученные путем поиска, включают дефектную выборку, модель предсказания может иметь относительно большую ошибку модели. Следовательно, способ построения параметров модели, основанный на максимуме и минимуме, имеет относительно невысокую сложность, но низкую надежность, и эффективность предсказания для декодирования снижается в некоторой мере.
На основе этого в последнем предложении L0138 предлагается концепция подмножества соседних эталонных выборок. Вышеупомянутые недостатки в определенной степени устранены, а именно, не только снижено количество соседних эталонных выборок для дальнейшего снижения сложности операции, но и выбираются выборки в надлежащих положениях (как показано на фиг. 5B), чтобы немного улучшить эффективность предсказания для декодирования. Однако еще имеются возможности для улучшения решения.
Для улучшения эффективности кодирования и предсказания для декодирования в вариантах осуществления изобретения предлагается способ предсказания для декодирования. Средняя точка по меньшей мере одной стороны блока, подлежащего декодированию, принимается как эталонная точка, положения эталонной выборки, подлежащие выбору, определяются в соответствии с предварительно заданным количеством выборок, соседние эталонные выборки, выбранные с учетом как важности, так и дисперсии, помещаются в подмножестве соседних эталонных выборок, и декодирование на основании предсказания выполняется в отношении блока, подлежащем декодированию, на основании подмножества соседних эталонных выборок. Таким образом, параметры модели, построенные на основании подмножества соседних эталонных выборок, являются относительно точными, так что эффективность предсказания для декодирования может быть улучшена. Более того, подмножество соседних эталонных выборок включает небольшое количество выборок с тем, чтобы также снизилась сложность поиска и еще больше снизилась скорость передачи битов. Варианты осуществления изобретения будут подробно описаны ниже в сочетании с графическими материалами.
На фиг. 6 показан пример блок-схемы состава системы кодирования видео согласно варианту осуществления изобретения. Как показано на фиг. 6, система 600 кодирования видео содержит такие компоненты, как компонент 601 преобразования и квантования, компонент 602 внутренней оценки, компонент 603 внутреннего предсказания, компонент 604 компенсации движения, компонент 605 оценки движения, компонент 606 обратного преобразования и обратного квантования, компонент 607 анализа управления фильтром, компонент 608 фильтрации для удаления блочности и фильтрации для регулируемого смещения выборки (SAO), компонент 609 кодирования информации заголовка и регулируемого двоичного арифметического кодирования на основе контекста (CABAC) и буфер 610 для декодированного изображения. Для входного исходного видеосигнала блок кодирования видео может быть получен путем деления узла кодового дерева (CTU), а затем остаточная информация о выборке, полученная посредством внутреннего предсказания или предсказания, осуществляемого между изображениями, обрабатывается посредством компонента 601 преобразования и квантования, чтобы преобразовать блок кодирования видео, включая преобразование остаточной информации из области выборки в область преобразования и квантование полученного коэффициента преобразования дальнейшего уменьшения скорости битового потока. Компонент 602 внутренней оценки и компонент 603 внутреннего предсказания выполнены с возможностью осуществления внутреннего предсказания в отношении блока кодирования видео. Таким образом, компонент 602 внутренней оценки и компонент 603 внутреннего предсказания выполнены с возможностью определения режима внутреннего предсказания, который будет использован для кодирования блока кодирования видео. Компонент 604 компенсации движения и компонент 605 оценки движения выполнены с возможностью исполнения кодирования внутреннего предсказания в отношении блока кодирования принятого видео относительно одного или более блоков в одном или более опорных кадрах, чтобы предоставлять информацию временного предсказания. Оценка движения, исполняемая компонентом 605 оценки движения, представляет собой процесс генерирования вектора движения. Вектор движения может использоваться для оценки движения блока кодирования видео, и затем компонент 604 компенсации движения выполняет компенсацию движения на основании вектора движения, определенного посредством компонента 605 оценки движения. После определения режима внутреннего предсказания компонент 603 внутреннего предсказания дополнительно выполнен с возможностью предоставления выбранных данных внутреннего предсказания для компонента 609 кодирования информации заголовка и CABAC, и компонент 605 оценки движения также отправляет данные вектора движения, определенные вычислением, компоненту 609 кодирования информации заголовка и CABAC. Кроме того, компонент 606 обратного преобразования и обратного квантования выполнен с возможностью восстановления блока кодирования видео, а именно, остаточный блок восстанавливается в области выборки. Артефакт с эффектом блочности в восстановленном остаточном блоке удаляют посредством компонента 607 анализа управления фильтром и компонента 608 фильтрации для удаления блочности и фильтрации для SAO, и затем восстановленный остаточный блок добавляют к блоку предсказания в кадре буфера 610 для декодированного изображения, чтобы сгенерировать восстановленный блок кодирования видео. Компонент 609 кодирования информации заголовка и CABAC выполнен с возможностью кодирования различных параметров кодирования и коэффициентов квантования преобразования. В алгоритме кодирования, основанном на CABAC, содержимое контекста может кодировать информацию, указывающую определенный режим внутреннего предсказания, на основании смежных блоков кодирования для вывода кодового потока видеосигнала. Буфер 610 для декодированного изображения выполнен с возможностью хранения восстановленного блока кодирования видео для указания предсказания. По мере кодирования видеоизображений могут непрерывно генерироваться новые восстановленные блоки кодирования видео, и эти восстановленные блоки кодирования видео могут храниться в буфере 610 для декодированного изображения.
На фиг. 7 показан пример блок-схемы состава системы декодирования видео согласно варианту осуществления изобретения. Как показано на фиг. 7, система 700 декодирования видео содержит такие компоненты, как компонент 701 декодирования информации заголовка и декодирования CABAC, компонент 702 обратного преобразования и обратного квантования, компонент 703 внутреннего предсказания, компонент 704 компенсации движения, компонент 705 фильтрации для удаления блочности и фильтрации для SAO и буфер 706 для декодированного изображения. После того, как обработка кодированием, показанная на фиг. 6, была выполнена в отношении входного видеосигнала, выводят кодовый поток видеосигнала. Кодовый поток вводится в систему 700 декодирования видео и сначала обрабатывается компонентом 701 декодирования информации заголовка и декодирования CABAC для получения декодированного коэффициента преобразования. Коэффициент преобразования обрабатывается компонентом 702 обратного преобразования и обратного квантования, чтобы генерировать остаточный блок в области выборки. Компонент 703 внутреннего предсказания может быть выполнен с возможностью генерирования данных предсказания текущего блока декодирования видео на основании определенного режима внутреннего предсказания и данных предыдущего декодированного блока из текущего кадра или изображения. Компонент 704 компенсации движения анализирует вектор движения и другой связанный синтаксический элемент для определения информации предсказания для блока декодирования видео и генерирует посредством использования информации предсказания блок предсказания блока декодирования видео, который в настоящее время декодируют. Остаточный блок из компонента 702 обратного преобразования и обратного квантования и соответствующий блок предсказания, сгенерированный компонентом 703 внутреннего предсказания или компонентом 704 компенсации движения, суммируют для формирования блока с декодированным видео. Артефакт с эффектом блочности в декодированном видеосигнале может быть удален через компонент 705 фильтрации для удаления блочности и фильтрации SAO для улучшения качества видео. Затем блок с декодированным видео хранится в буфере 706 для декодированного изображения. Буфер 706 для декодированного изображения хранит эталонное изображение для последующего внутреннего предсказания или компенсации движения, а также выводит видеосигнал, а именно получают восстановленный исходный видеосигнал.
Варианты осуществления изобретения в основном применяются к компоненту 603 внутреннего предсказания, показанному на фиг. 6, и компоненту 703 внутреннего предсказания, показанному на фиг. 7. Другими словами, варианты осуществления изобретения могут применяться к системе кодирования, а также могут применяться к системе декодирования. Тем не менее, никаких конкретных ограничений не предусмотрено для этого в вариантах осуществления настоящего изобретения.
На основе примера сценария применения, показанного на фиг. 6 или фиг. 7, на фиг. 8 показана схема последовательности способа предсказания для декодирования согласно варианту осуществления настоящего изобретения. Способ может включать следующие операции.
На этапе S801 эталонные выборки, смежные с по меньшей мере одной стороной блока декодирования, получают для получения первого набора соседних эталонных выборок.
На этапе S802 эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок.
На этапе S803 эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положений эталонных выборок, подлежащих выбору, и выбранные эталонные выборки образуют подмножество соседних эталонных выборок.
На этапе S804 декодирование на основании предсказания выполняется в отношении блока декодирования на основании подмножества соседних эталонных выборок.
Следует отметить, что блок декодирования (блок, подлежащий декодированию) представляет собой блок декодирования, в отношении которого в настоящее время требуется выполнение предсказания второго компонента цвета или третьего компонента цвета. По меньшей мере одна сторона блока декодирования может относиться к верхней стороне блока декодирования, может также относиться к левой стороне блока декодирования и даже может относиться к верхней стороне и левой стороне блока декодирования. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
Также следует отметить, что эталонная точка может быть средней точкой по меньшей мере одной стороны, также может быть первым положением эталонной выборки слева от средней точки по меньшей мере одной стороны, также может быть первым положением эталонной выборки справа от средней точки по меньшей мере одной стороны и может быть даже другим положением эталонной выборки по меньшей мере одной стороны. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
В варианте осуществления изобретения способ предсказания для декодирования варианта осуществления изобретения также может применяться к системе кодирования. Подмножество соседних эталонных выборок может быть построено в системе кодирования для улучшения эффективности предсказания для кодирования видеоизображения и улучшения эффективности сжатия кодирования для снижения скорости кодирования. Следующие ниже описания сделаны только на примере построения подмножества соседних эталонных выборок в системе декодирования.
В варианте осуществления изобретения эталонные выборки, смежные с по меньшей мере одной стороной блока декодирования, получают сначала для получения первого набора соседних эталонных выборок. Затем эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок. Далее эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положения эталонных выборок, подлежащего выбору, и выбранные эталонные выборки образуют подмножество соседних эталонных выборок. Наконец, декодирование на основании предсказания выполняется в отношении блока декодирования на основании подмножества соседних эталонных выборок. В варианте осуществления изобретения не все эталонные выборки, смежные с верхней стороной или левой стороной блока декодирования, участвуют в операции поиска для предсказания для декодирования, и вместо этого соседние эталонные выборки в надлежащих положениях выбираются с учетом как важности, так и дисперсии, с образованием подмножества соседних эталонных выборок. Таким образом, подмножество соседних эталонных выборок включает небольшое количество выборок, сложность поиска может быть снижена, эффективность предсказания для декодирования также может быть улучшена, а скорость передачи битов дополнительно снижена.
В некоторых вариантах осуществления операция, при которой эталонная точка определяется из по меньшей мере одной стороны, включает следующую операцию.
Средняя точка по меньшей мере одной стороны определяется на основании длины по меньшей мере одной стороны, а средняя точка по меньшей мере одной стороны определяется как эталонная точка.
В некоторых вариантах осуществления, когда эталонная точка является средней точкой по меньшей мере одной стороны, операция, при которой эталонная точка определяется из по меньшей мере одной стороны, включает следующую операцию.
На основании длины по меньшей мере одной стороны, если средняя точка по меньшей мере одной стороны находится в среднем положении между двумя эталонными выборками, первое положение эталонной выборки справа от среднего положения определяется как эталонная точка по меньшей мере одной стороны, или первое положение эталонной выборки слева от среднего положения определяется как эталонная точка по меньшей мере одной стороны.
Следует отметить, что, учитывая, что важность эталонной выборки, смежной с по меньшей мере одной стороной блока декодирования, коррелирует с ее соответствующим положением, чтобы эталонная выборка в подмножестве соседних эталонных выборок представляла собой характеристику всей смежной стороны, необходимо выбрать эталонную выборку максимально в центральном положении стороны, чтобы удалить выборку с относительно низкой важностью (например, эталонные выборки на двух краях стороны). В варианте осуществления изобретения, если описания сделаны относительно верхней стороны блока декодирования в качестве примера, первое положение эталонной выборки справа или слева от среднего положения может быть определено как эталонная точка стороны.
Например, со ссылкой на фиг. 9 показана структурная схема выбора подмножества соседних эталонных выборок, соответствующих верхней стороне блока декодирования, согласно варианту осуществления настоящего изобретения. Как показано на фиг. 9, для всех эталонных выборок, распределенных на верхней стороне блока декодирования, средняя точка стороны выбирается как центр (положение пунктирной линией, показанное на фиг. 9), и эталонные выборки выбирают, принимая центр как эталонную точку. Если длина верхней стороны блока декодирования равна 16 и предварительно заданное количество выборок равно 4, можно получить интервал выборки Δ равным 16/4=4. В таком случае, поскольку длина верхней стороны равна 16, можно определить, что средняя точка находится между 7 и 8, то есть 7 или 8 могут быть выбраны в качестве средней точки. На фиг. 9, например, 8 выбрано как эталонная точка. Поскольку предварительно заданное количество выборок равно 4, может быть определено, что положениями эталонной выборки, подлежащими выбору (как показано серыми точками на фиг. 9), являются 2, 6, 10 и 14. Соответствующие эталонные выборки могут быть выбраны в соответствии с этими положениями эталонных выборок с образованием подмножества соседних эталонных выборок.
В некоторых вариантах осуществления, когда эталонная точка является средней точкой по меньшей мере одной стороны, операция, при которой эталонная точка определяется из по меньшей мере одной стороны, включает следующую операцию.
На основании длины по меньшей мере одной стороны, если средняя точка по меньшей мере одной стороны находится в среднем положении между двумя эталонными выборками, первое положение эталонной выборки, расположенное ниже среднего положения, определяется как эталонная точка по меньшей мере одной стороны, или первое положение эталонной выборки, расположенное выше среднего положения, определяется как эталонная точка по меньшей мере одной стороны.
Следует отметить, что, учитывая, что важность эталонной выборки, смежной с по меньшей мере одной стороной блока декодирования, коррелирует с ее соответствующим положением, чтобы эталонная выборка в подмножестве соседних эталонных выборок представляла собой характеристику всей смежной стороны, необходимо выбрать эталонную выборку максимально в центральном положении стороны, чтобы удалить выборку с относительно низкой важностью (например, эталонные выборки на двух краях стороны). В варианте осуществления изобретения, если описания сделаны относительно левой стороны блока декодирования в качестве примера, первое положение эталонной выборки ниже или выше среднего положения может быть определено как эталонная точка стороны.
Например, со ссылкой на фиг. 10 показана структурная схема выбора подмножества соседних эталонных выборок, соответствующих левой стороне блока, подлежащего декодированию, согласно варианту осуществления настоящего изобретения. Как показано на фиг. 10, для всех эталонных выборок, распределенных на левой стороне блока, подлежащего декодированию, средняя точка стороны выбирается как центр (положение пунктирной линией, показанное на фиг. 10), и эталонные выборки выбирают, принимая центр как эталонную точку. Если длина верхней стороны блока декодирования равна 8 и предварительно заданное количество выборок равно 2, можно получить интервал выборки Δ равным 8/2=4. В таком случае, поскольку длина левой стороны равна 8, можно определить, что средняя точка находится между 3 и 4, то есть 3 или 4 могут быть выбраны в качестве средней точки. На фиг. 10, например, 4 выбрано как эталонная точка. Поскольку предварительно заданное количество выборок равно 2, может быть определено, что положениями эталонной выборки, подлежащими выбору (как показано серыми точками на фиг. 10), являются 2 и 6. Соответствующие эталонные выборки могут быть выбраны в соответствии с этими положениями эталонных выборок с образованием подмножества соседних эталонных выборок.
Во время практического применения, поскольку длина левой стороны или верхней стороны блока декодирования является целым числом, кратным 2, среднее положение левой стороны или верхней стороны блока декодирования находится между двумя точками. В примере, показанном на фиг. 9, первая выборка справа от среднего положения определяется как средняя точка стороны. Однако первая выборка слева от среднего положения также может быть определена как средняя точка стороны в варианте осуществления изобретения, как показано в примере структуры на фиг. 11. На фиг. 11 первая выборка (например, 3 на фиг. 11) слева от среднего положения определяется как средняя точка стороны. Поскольку предварительно заданное количество выборок равно 2, может быть определено, что положениями эталонной выборки, подлежащими выбору (как показано серыми точками на фиг. 11), являются 1 и 5. Соответствующие эталонные выборки также могут быть выбраны в соответствии с этими положениями эталонных выборок с образованием подмножества соседних эталонных выборок. Следовательно, в варианте осуществления изобретения для верхней стороны блока декодирования первая выборка справа от среднего положения может быть определена как средняя точка стороны, а первая выборка слева от среднего положения также может быть определена как средняя точка стороны. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения. Кроме того, для левой стороны блока декодирования первая выборка ниже среднего положения может быть определена как средняя точка стороны, а первая выборка выше среднего положения также может быть определена как средняя точка стороны. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
Если не указано другое, следующие описания сделаны в отношении верхней стороны блока декодирования в качестве примера. Однако способ предсказания в варианте осуществления изобретения также применяется к левой стороне блока декодирования и даже к другой стороне блока декодирования.
Следует понимать, что без учета существования эталонных выборок, смежных с левой стороной или верхней стороной блока декодирования, подмножество соседних эталонных выборок также может быть построено в соответствии с формулой (4) и формулой (5):
Figure 00000027
(4).
Figure 00000028
(5).
Δ представляет собой интервал выборки, длина представляет собой количество эталонных выборок в строке, смежной с верхней стороной блока декодирования, или количество эталонных выборок в столбце, смежном с левой стороной блока декодирования, N2 представляет собой ожидаемое количество (как правило, 1/2 для каждой из левой стороны и верхней стороны, но никаких конкретных ограничений не предусмотрено в варианте осуществления изобретения) соседних эталонных выборок, образующее подмножество соседних эталонных выборок, блока декодирования, и сдвиг представляет собой положение исходной точки для выбора эталонных выборок. В данном документе, когда среднее положение левой стороны или верхней стороны блока декодирования находится между двумя точками, если первая выборка справа от среднего положения определяется как средняя точка стороны, то положение исходной точки представляет собой
Figure 00000028
, а если первая выборка слева от среднего положения определяется как средняя точка стороны, положение исходной точки представляет собой
Figure 00000029
.
Например, принимая верхнюю сторону, показанную на фиг. 9, как пример, длина равна 16 и N2 равно 8, из расчета 1/2 для каждой из левой стороны и верхней стороны, а именно предварительно заданное количество выборок верхней стороны равно 4,
Figure 00000030
и
Figure 00000031
вычислены согласно формуле (4) и формуле (5) соответственно, а именно положение исходной точки составляет 2 и интервал выборки составляет 4. Положения эталонной выборки, подлежащие выбору, например 2, 6, 10 и 14, могут быть определены сначала, и, кроме того, соответствующие эталонные выборки могут быть выбраны для образования подмножества соседних эталонных выборок. Следует отметить, что предварительно заданное количество выборок, соответствующих левой стороне, и предварительно заданное количество выборок, соответствующих верхней стороне, может быть одинаковым или отличаться, и никаких конкретных ограничений не предусмотрено в варианте осуществления изобретения.
Кроме того, в варианте осуществления изобретения также предлагается схема определения предварительно заданного количества выборок, как показано в таблице 2. В таком случае, в варианте осуществления изобретения, N2 в таблице 2 также может быть вставлен в формулу (4) и формулу (5) вместо N2 для расчета, чтобы образованное подмножество соседних эталонных выборок было более точным, тем самым улучшая эффективность предсказания для декодирования.
В таблице 2 показана таблица соотношений между размером блока второго компонента цвета, соответствующего блоку декодирования, и количеством соседних эталонных выборок согласно варианту осуществления изобретения. В таблице 2 N представляет собой длину короткой стороны блока декодирования, N1 представляет собой количество соседних эталонных выборок в традиционном техническом решении, N2 представляет собой количество соседних эталонных выборок в предложении L0138, и N2 представляет собой количество соседних эталонных выборок в варианте осуществления изобретения. Из таблицы 2 можно увидеть, что, когда длина короткой стороны блока декодирования меньше или равна 4, подмножество соседних эталонных выборок включает четыре эталонные выборки, а когда длина короткой стороны блока декодирования больше 4, подмножество соседних эталонных выборок может включать восемь эталонных выборок.
Таблица 2
Размер блока второго компонента цвета Длина короткой стороны N1 N2 N2
2×n/n×2(n≥2) 2 4 2 4
4×n/n×4(n≥4) 4 8 4 4
8×n/n×8(n≥8) 8 16 8 8
16×n/n×16(n≥16) 16 32 8 8
32×32 32 64 8 8
В некоторых вариантах осуществления операция, при которой эталонная точка определяется из по меньшей мере одной стороны и положения эталонной выборки, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяются согласно предварительно заданному количеству выборок, включает следующие операции.
Первый интервал выборки вычисляют на основании предварительно заданного количества выборок и длины по меньшей мере одной стороны.
Средняя точка по меньшей мере одной стороны определяется как эталонная точка, и положения эталонных выборок, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяются в соответствии с первым интервалом выборки.
В по меньшей мере одном варианте осуществления операция, при которой среднюю точку по меньшей мере одной стороны определяют как эталонную точку, и положения эталонных выборок, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с первым интервалом выборки, включает следующие операции.
Значение средней точки по меньшей мере одной стороны вычисляется на основании длины по меньшей мере одной стороны.
Положения эталонной выборки вычисляют согласно значению средней точки и первому интервалу выборки.
Когда значение средней точки не является целым, положение эталонной выборки с левой стороны от значения средней точки округляют в меньшую сторону, округленное положение эталонной выборки определяют как положение эталонной выборки, подлежащее выбору, и положение эталонной выборки с правой стороны от значения средней точки округляют в большую сторону, и округленное положение эталонной выборки определяют как положение эталонной выборки, подлежащее выбору.
В по меньшей мере одном варианте осуществления операция, при которой среднюю точку по меньшей мере одной стороны определяют как эталонную точку, и положения эталонных выборок, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с первым интервалом выборки, включает следующие операции.
Значение средней точки по меньшей мере одной стороны вычисляется на основании длины по меньшей мере одной стороны.
Положения эталонной выборки вычисляют согласно значению средней точки и первому интервалу выборки.
Когда значение средней точки не является целым, положение эталонной выборки с левой стороны от значения средней точки округляют в большую сторону и округленное положение эталонной выборки определяют как положение эталонной выборки, подлежащее выбору, и положение эталонной выборки с правой стороны от значения средней точки округляют в меньшую сторону, и округленное положение эталонной выборки определяют как положение эталонной выборки, подлежащее выбору.
Следует отметить, что согласно предварительно заданному количеству выборок и длине стороны блока декодирования, может быть вычислен первый интервал выборки, соответствующий стороне. Кроме того, поскольку длина левой стороны или верхней стороны блока декодирования является целым числом, кратным 2, среднее положение левой стороны или верхней стороны блока декодирования находится между двумя точками, и в таком случае вычисленное значение средней точки не является целым, и вычисленное положение эталонной выборки также не является целым. Однако, если длина левой стороны или верхней стороны блока декодирования не является целым числом, кратным 2, среднее положение левой стороны или верхней стороны блока декодирования может не находиться между двумя точками, и в таком случае вычисленное значение средней точки является целым, и вычисленное положение эталонной выборки также является целым. Другими словами, вычисленное значение средней точки может быть целым, а также может быть нецелым, и, соответственно, вычисленное положение эталонной выборки может быть целым, а также может быть нецелым. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
Следовательно, когда вычисленное значение средней точки является целым, вычисленное положение эталонной выборки является соответственно целым, и в таком случае вычисленное положение эталонной выборки может быть непосредственно определено как положение эталонной выборки, подлежащее выбору. Когда вычисленная средняя точка не является целой, вычисленное положение эталонной выборки, соответственно, не является целым, и в таком случае положение эталонной выборки, подлежащее выбору, может быть определено путем округления в большую или округления в меньшую сторону.
Например, принимая верхнюю сторону, показанную на фиг. 11, как пример, если предварительно заданное количество выборок равно 2 и длина верхней стороны равна 8, может быть определено, что первый интервал выборки составляет 4. Длина верхней стороны 8, то есть среднее положение верхней стороны находится между двумя точками. Поскольку расположение эталонных выборок начинается с 0 и заканчивается на 7, путем вычисления может быть получено практическое положение средней точки верхней стороны, которое составляет 3,5. Поскольку первый интервал выборки равен 4, положения 1,5 и 5,5 эталонной выборки могут быть получены путем смещения 4/2 точек на левой и правой сторонах от средней точки соответственно. В таком случае положение эталонной выборки на левой стороне от значения средней точки может быть округлено в меньшую сторону, чтобы получить одно положение 1 эталонной выборки, подлежащее выбору, и положение эталонной выборки на правой стороне от значения средней точки может быть округлено в большую сторону, чтобы получить другое положение 6 эталонной выборки, подлежащее выбору. Этот способ также можно назвать схемой округления, как показано на фиг. 12. В таком случае эталонные выборки, соответствующие положениям 1 и 6, могут образовывать подмножество соседних эталонных выборок. Кроме того, когда вычисляются положения 1,5 и 5,5 эталонной выборки, положение эталонной выборки на левой стороне от значения средней точки также может быть округлено в большую сторону, чтобы получить одно положение 2 эталонной выборки, подлежащее выбору, и положение эталонной выборки на правой стороне от значения средней точки может быть округлено в меньшую сторону, чтобы получить другое положение 5 эталонной выборки, подлежащее выбору. Этот способ также можно назвать схемой округления, как показано на фиг. 13. В таком случае эталонные выборки, соответствующие положениям 2 и 5, могут образовывать подмножество соседних эталонных выборок.
В некоторых вариантах осуществления после операции, при которой вычисляют первый интервал выборки, способ дополнительно включает следующие операции.
Первый интервал выборки регулируется с получением второго интервала выборки.
Средняя точка по меньшей мере одной стороны определяется как эталонная точка, и положения эталонных выборок, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяются в соответствии со вторым интервалом выборки.
В некоторых вариантах осуществления после операции, при которой получают второй интервал выборки, способ дополнительно включает следующую операцию.
Средняя точка по меньшей мере одной стороны определяется как эталонная точка, положение эталонной выборки, подлежащее выбору, соответствующее левой стороне эталонной точки, определяется в соответствии с первым интервалом выборки, и положение эталонной выборки, подлежащее выбору, соответствующее правой стороне эталонной точки, определяется в соответствии со вторым интервалом выборки.
Следует отметить, что после вычисления первого интервала выборки первый интервал выборки может дополнительно точно регулироваться, например, к первому интервалу выборки добавляют или из него вычитают 1, чтобы получить второй интервал выборки. Например, если первый интервал выборки равен 4, второй интервал выборки, полученный путем регулирования, может быть равен 3 или 5. В варианте осуществления изобретения регулирование первого интервала выборки может быть незначительным (например, добавлением 1 или вычитанием 1) регулированием, но конкретная установка амплитуды регулирования конкретно не ограничивается в варианте осуществления изобретения.
Кроме того, после определения эталонной точки по меньшей мере одной стороны блока декодирования может выполняться равномерная выборка в соответствии с первым интервалом выборки или вторым интервалом выборки, либо неравномерная выборка может выполняться в соответствии с первым интервалом выборки и вторым интервалом выборки. Положения эталонной выборки, подлежащие выбору, определенные после выборки, могут быть распределены симметрично по двум сторонам эталонной точки, а также могут быть распределены асимметрично по двум сторонам эталонной точки. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
В некоторых вариантах осуществления операция, при которой эталонная точка определяется из по меньшей мере одной стороны и положения эталонной выборки, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяются согласно предварительно заданному количеству выборок, включает следующую операцию.
Средняя точка по меньшей мере одной стороны определяется как эталонная точка, а положения непрерывной эталонной выборки рядом с эталонной точкой определяются как положения эталонной выборки, подлежащие выбору, в соответствии с предварительно заданным количеством выборок. Эталонная точка находится в среднем положении из положений эталонной выборки, подлежащих выбору.
Следует отметить, что, поскольку эталонная выборка в среднем положении больше коррелируется с восстановленным значением первого компонента цвета блока декодирования в соседних эталонных выборках, непрерывные положения эталонной выборки, имеющие предварительно заданное количество выборок возле среднего положения, могут быть определены как положения эталонной выборки, подлежащие выбору. Этот способ можно назвать схемой непрерывного выбора выборки на основе среднего положения, как показано на фиг. 14. В таком случае эталонные выборки, соответствующие положениям 2, 3 и 4, могут образовывать подмножество соседних эталонных выборок.
Может быть понятно, что, если положения эталонной выборки в строке/столбце, смежном с верхней стороной или левой стороной блока декодирования, пронумерованы от 0, количество соседних эталонных выборок в образованном подмножестве соседних эталонных выборок и соответствующих положений эталонных выборок, подлежащих выбору, в варианте осуществления, показаны в таблице 3.
Таблица 3
Длина левой стороны или верхней стороны блока декодирования Положения эталонной выборки, подлежащие выбору Предварительно заданное количество выборок
2 0, 1 2
4 1, 2 2
8 2, 3, 4 (или 3, 4, 5) 3
16 6, 7, 8, 9 4
32 13, 14, 15, 16, 17, 18, 19, 20 8
В варианте осуществления непрерывные положения эталонной выборки, имеющие предварительно заданное количество выборок рядом со средним положением, определяются как положения эталонной выборки, подлежащие выбору, чтобы образовать подмножество соседних эталонных выборок. Декодирование на основании предсказания выполняется в соответствии с подмножеством соседних эталонных выборок, которые могут все еще снижать скорость передачи битов и улучшать эффект от декодирования на основании предложения L0138, тем самым улучшая эффективность предсказания для декодирования.
В некоторых вариантах осуществления блок декодирования включает квадратный блок декодирования или неквадратный блок декодирования.
Кроме того, в некоторых вариантах осуществления, когда блок декодирования представляет собой неквадратный блок декодирования, способ дополнительно включает следующие операции.
Длинная сторона блока декодирования и третий интервал выборки, соответствующий длинной стороне, определяются на основании длины по меньшей мере одной стороны блока декодирования.
Эталонная выборка, соответствующая конечному положению длинной стороны, удаляется, начальное смещение выполняется согласно предварительно заданному смещению на длинной стороне, с которой удаляется эталонная выборка, положение смещения эталонной выборки определяется как исходная точка, а длинная сторона, с которой удалена эталонная выборка, отбирается в соответствии с третьим интервалом выборки для определения положений эталонной выборки, подлежащих выбору, соответствующих длинной стороне.
Следует отметить, что вариант осуществления изобретения может применяться к квадратному блоку декодирования, а также может применяться к неквадратному блоку декодирования. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
Также следует отметить, что, когда блок декодирования является неквадратным блоком декодирования, одна из левой стороны и верхней стороны блока декодирования является длинной стороной, а другая – короткой стороной. Третий интервал выборки, соответствующий длинной стороне, может быть получен в соответствии с отношением длинной стороны к короткой стороне. Перед выборкой длинной стороны эталонная выборка, соответствующая конечному положению длинной стороны, может быть сначала удалена, затем начальное смещение выполняется на длинной стороне, с которой удаляется эталонная выборка в соответствии с предварительно заданным смещением, положение смещения эталонной выборки берется в качестве исходной точки, а затем отбирается длинная сторона, с которой удаляется эталонная выборка, для определения положений эталонной выборки, подлежащих выбору, соответствующих длинной стороне. В варианте осуществления изобретения предварительно заданное смещение может составлять 1/2 третьего интервала выборки, а также может иметь другое значение. Никаких конкретных ограничений не предусмотрено в варианте осуществления настоящего изобретения.
Например, в соответствующем техническом решении эталонная выборка для длинной стороны неквадратного блока декодирования показана на фиг. 4B. На фиг. 4B в соответствии с соотношением длинной стороны и короткой стороны может быть определено, что третий интервал выборки равен 4. Первое положение эталонной выборки слева от длинной стороны определяется как исходная точка, а затем эталонные выборки в том же количестве, что и соседние эталонные выборки короткой стороны, выбираются в соответствии с третьим интервалом выборки. В таком случае отобранные эталонные выборки находятся слева и могут не охватывать характеристику всей длинной стороны. Следовательно, в варианте осуществления первоначальное смещение сначала выполняется на длинной стороне неквадратного блока декодирования, чтобы гарантировать, что выбранные эталонные выборки могут охватывать характеристику всей длинной стороны. Например, предварительно заданное смещение составляет 1/2 третьего интервала выборки, а именно предварительно заданное смещение равно 2, то есть в варианте осуществления выборка начинается с 2. В таком случае образованное подмножество соседних эталонных выборок может лучше охватывать характеристику всей длинной стороны.
В некоторых вариантах осуществления операция, при которой эталонная точка определяется из по меньшей мере одной стороны и положения эталонной выборки, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяются согласно предварительно заданному количеству выборок, включает следующие операции.
Эталонные выборки, соответствующие исходному положению и конечному положению по меньшей мере одной стороны, удаляются, чтобы получить второй набор соседних эталонных выборок.
Средняя точка по меньшей мере одной стороны определяется как эталонная точка, а положения эталонной выборки, подлежащие выбору, определяются на основании второго набора соседних эталонных выборок и предварительно заданного количества выборок.
Следует отметить, что в варианте осуществления настоящего изобретения эталонные выборки могут быть непосредственно выбраны на основании средней точки левой стороны или верхней стороны блока декодирования в качестве эталонной точки для образования подмножества соседних эталонных выборок. В варианте осуществления настоящего изобретения эталонные выборки, соответственно, соответствующие исходному положению и конечному положению (например, для верхней стороны исходным положением является положение левого края, а конечным положением является положение правого края; а для левой стороны исходным положением является положение верхнего края, а конечным положением является положение нижнего края), соответствующие левой стороне/верхней стороне блока декодирования, могут быть сначала удалены, причем эталонные выборки средней части сохраняют, а затем выбранные эталонные выборки образуют подмножество соседних эталонных выборок.
Также следует отметить, что предварительно заданное количество выборок может иметь любое значение. Как правило, предварительно заданное количество выборок меньше чем N1 в таблице 2. Тем не менее, вариант осуществления настоящего изобретения не ограничен тем, что предварительно заданное количество выборок равно N2 или N2 . Предварительно заданное количество выборок меньше N1 в таблице 2, так что сложность поиска эталонных выборок может быть снижена для улучшения эффективности предсказания для декодирования. В частности, значения Δ и сдвига в формуле (4) и формуле (5) могут быть изменены для определения положений эталонной выборки, подлежащих выбору, на основании разных исходных точек и интервалов выборки и дополнительного выбора соответствующих эталонных выборок с образованием подмножества соседних эталонных выборок.
В некоторых вариантах осуществления операция, при которой декодирование на основании предсказания выполняют в отношении блока декодирования на основании подмножества соседних эталонных выборок, включает следующие операции.
Параметры модели определяют на основании подмножества соседних эталонных выборок.
Модель предсказания устанавливают в соответствии с параметрами модели. Модель предсказания представляет соотношение предсказания между первым компонентом цвета и вторым компонентом цвета, соответствующим каждой выборке в блоке декодирования.
Декодирование на основании предсказания выполняется в отношении блока декодирования на основании модели предсказания.
Следует отметить, что после получения подмножества соседних эталонных выборок параметры модели
Figure 00000032
и
Figure 00000033
могут быть построены, затем модель предсказания может быть установлена в соответствии с формулой (1), и декодирование на основании предсказания может быть выполнено в отношении блока декодирования согласно модели предсказания. Учитываются как важность, так и дисперсия для соседних эталонных выборок, включенных в подмножество соседних эталонных выборок с тем, чтобы построенный параметр модели был более точным, тем самым улучшая эффективность предсказания для декодирования и дополнительно снижая скорость передачи битов.
В указанных выше вариантах осуществления предусмотрен способ предсказания для декодирования. Эталонные выборки, соседние по меньшей мере с одной стороной блока декодирования, получают для получения первого набора соседних эталонных выборок. Эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок. Эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положений эталонных выборок, подлежащих выбору, и выбранные эталонные выборки образуют подмножество соседних эталонных выборок. Декодирование на основании предсказания выполняется в отношении блока декодирования на основании подмножества соседних эталонных выборок. Как важность, так и дисперсия учитываются для соседних эталонных выборок в подмножестве соседних эталонных выборок, и подмножество соседних эталонных выборок включает небольшое количество выборок с тем, чтобы снизилась сложность поиска, улучшилась эффективность предсказания для декодирования видеоизображений и еще больше снизилась скорость передачи.
На основе той же самой концепции технического решения изобретения, которое показано на фиг. 8, на фиг. 15 показана структурная схема устройства 150 предсказания для декодирования согласно варианту осуществления настоящего изобретения. Устройство 150 предсказания для декодирования может содержать узел 1501 получения, узел 1502 определения, узел 1503 выбора и узел 1504 декодирования.
Узел 1501 получения выполнен с возможностью получения эталонных выборок, смежных с по меньшей мере одной стороной блока декодирования, чтобы получить первый набор соседних эталонных выборок.
Узел 1502 определения выполнен с возможностью определения эталонной точки из по меньшей мере одной стороны и определения положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок.
Узел 1503 выбора выполнен с возможностью выбора эталонных выборок, соответствующих положениям эталонных выборок, подлежащим выбору из первого набора соседних эталонных выборок, на основании положений эталонных выборок, подлежащих выбору, и образования подмножества соседних эталонных выборок с использованием выбранных эталонных выборок.
Узел 1504 декодирования выполнен с возможностью выполнения декодирования на основании предсказания в отношении блока декодирования на основании подмножества соседних эталонных выборок.
В решении узел 1502 определения конкретно выполнен с возможностью, на основании длины по меньшей мере одной стороны, если средняя точка по меньшей мере одной стороны находится в среднем положении между двумя эталонными выборками, определения первого положения эталонной выборки справа от среднего положения как эталонной точки по меньшей мере одной стороны или определения первого положения эталонной выборки слева от среднего положения как эталонной точки по меньшей мере одной стороны.
В решении узел 1502 определения конкретно выполнен с возможностью, на основании длины по меньшей мере одной стороны, если средняя точка по меньшей мере одной стороны находится в среднем положении между двумя эталонными выборками, определения первого положения эталонной выборки ниже среднего положения как эталонной точки по меньшей мере одной стороны или определения первого положения эталонной выборки выше среднего положения как эталонной точки по меньшей мере одной стороны.
В решении со ссылкой на фиг. 15 устройство 150 предсказания для декодирования дополнительно содержит узел 1505 вычисления, выполненный с возможностью вычисления первого интервала выборки на основании предварительно заданного количества выборок и длины по меньшей мере одной стороны.
Узел 1502 определения конкретно выполнен с возможностью определения средней точки по меньшей мере одной стороны как эталонной точки и определения положений эталонных выборок, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с первым интервалом выборки.
В решении узел 1505 вычисления дополнительно выполнен с возможностью вычисления значения средней точки по меньшей мере одной стороны на основании длины по меньшей мере одной стороны и вычисления положений эталонной выборки согласно значению средней точки и первому интервалу выборки.
Узел 1502 определения конкретно выполнен с возможностью, когда значение средней точки не является целым, округления в меньшую сторону положения эталонной выборки с левой стороны от значения средней точки и определения округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору, округления в большую сторону положения эталонной выборки с правой стороны от значения средней точки и определения округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору.
В решении узел 1505 вычисления дополнительно выполнен с возможностью вычисления значения средней точки по меньшей мере одной стороны на основании длины по меньшей мере одной стороны и вычисления положений эталонной выборки согласно значению средней точки и первому интервалу выборки.
Узел 1502 определения конкретно выполнен с возможностью, когда значение средней точки не является целым, округления в большую сторону положения эталонной выборки с левой стороны от значения средней точки и определения округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору, округления в меньшую сторону положения эталонной выборки с правой стороны от значения средней точки и определения округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору.
В решении со ссылкой на фиг. 15 устройство 150 предсказания для декодирования дополнительно содержит узел 1506 регулирования, выполненный с возможностью регулирования первого интервала выборки для получения второго интервала выборки.
Узел 1502 определения дополнительно выполнен с возможностью определения средней точки по меньшей мере одной стороны как эталонной точки и определения положений эталонных выборок, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии со вторым интервалом выборки.
В решении узел 1502 определения дополнительно выполнен с возможностью определения средней точки по меньшей мере одной стороны как эталонной точки, определения положения эталонной выборки, подлежащего выбору, соответствующего левой стороне эталонной точки, в соответствии с первым интервалом выборки и определения положения эталонной выборки, подлежащего выбору, соответствующего правой стороне эталонной точки, в соответствии со вторым интервалом выборки.
В решении узел 1502 определения дополнительно выполнен с возможностью определения средней точки по меньшей мере одной стороны как эталонной точки и определения непрерывных положений эталонной выборки рядом с эталонной точкой как положений эталонной выборки, подлежащих выбору, согласно предварительно заданному количеству выборок. Эталонная точка находится в среднем положении из положений эталонной выборки, подлежащих выбору.
В решении блок декодирования включает квадратный блок декодирования или неквадратный блок декодирования.
В решении узел 1501 получения дополнительно выполнен с возможностью удаления эталонных выборок, соответствующих исходному положению и конечному положению по меньшей мере одной стороны, чтобы получить второй набор соседних эталонных выборок.
Узел 1502 определения дополнительно выполнен с возможностью определения средней точки по меньшей мере одной стороны как эталонной точки и определения положений эталонной выборки, подлежащих выбору, на основании второго набора соседних эталонных выборок и предварительно заданного количества выборок.
В решении со ссылкой на фиг. 15 устройство 150 предсказания для декодирования дополнительно содержит узел 1507 установления, выполненный с возможностью определения параметров модели на основании подмножества соседних эталонных выборок и установления модели предсказания согласно параметрам модели. Модель предсказания представляет соотношение предсказания между первым компонентом цвета и вторым компонентом цвета, соответствующим каждой выборке в блоке декодирования.
Узел 1504 декодирования конкретно выполнен с возможностью выполнения декодирования на основании предсказания в отношении блока декодирования на основе модели предсказания.
Следует понимать, что в варианте осуществления «узел» может быть частью схемы, частью процессора, частью программы или программного обеспечения и т. п., разумеется, он также может быть модульным и также может быть немодульным. В дополнение к этому каждый компонент в варианте осуществления может быть интегрирован в узел обработки, каждый узел также может существовать независимо, и два или более двух узлов также могут быть интегрированы в узел. Интегрированный узел может быть реализован в форме аппаратного обеспечения, а также может быть реализован в форме функционального модуля программного обеспечения.
При реализации в форме функционального модуля программного обеспечения и продаже или использовании в качестве самостоятельного продукта интегрированный узел может храниться на машиночитаемом носителе данных. Исходя из такого понимания, техническое решение варианта осуществления по существу или части, вносящие вклад в известный уровень техники, или все или часть технического решения могут быть воплощены в форме программного продукта, и компьютерный программный продукт хранится на носителе данных, включающем множество команд, предназначенных для обеспечения исполнения компьютерным устройством (которое может представлять собой персональный компьютер, сервер, сетевое устройство и т. п.) или процессором всех или части операций способа в варианте осуществления. Носитель данных включает: различные носители, способные хранить программные коды, такие как U-диск, мобильный жесткий диск, постоянное запоминающее устройство (ROM), оперативное запоминающее устройство (RAM), магнитный диск или оптический диск.
Следовательно, в варианте осуществления предусмотрен компьютерный носитель данных, на котором хранится программа для предсказания для декодирования. Программа для предсказания для декодирования исполняется по меньшей мере одним процессором для реализации операций способа в техническом решении, показанном на фиг. 8.
На основе состава устройства 150 предсказания для декодирования и компьютерного носителя данных на фиг. 16 показан конкретный пример структуры аппаратных средств устройства 150 предсказания для декодирования, предусмотренного в варианте осуществления изобретения, которое может содержать сетевой интерфейс 1601, запоминающее устройство 1602 и процессор 1603. Каждый компонент взаимосвязан посредством системы 1604 шин. Можно понять, что система 1604 шин выполнена с возможностью реализации соединения связи между этими компонентами. Система 1604 шин содержит шину данных и дополнительно содержит шину питания, шину управления и шину сигнала состояния. Однако для наглядного описания различные шины на фиг. 16 обозначены как система 1604 шин. Сетевой интерфейс 1601 приспособлен для приема и отправки сигнала в процессе приема и отправки информации посредством другого внешнего сетевого элемента.
Запоминающее устройство 1602 выполнено с возможностью хранения компьютерной программы, которая может запускаться на процессоре 1603.
Процессор 1603 выполнен с возможностью запуска компьютерной программы для исполнения следующих операций.
Эталонные выборки, смежные с по меньшей мере одной стороной блока декодирования, получают для получения первого набора соседних эталонных выборок.
Эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок.
Эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положений эталонных выборок, подлежащих выбору, и выбранная эталонная выборка образует подмножество соседних эталонных выборок.
Декодирование на основании предсказания выполняется в отношении блока декодирования на основании подмножества соседних эталонных выборок.
Можно понять, что запоминающее устройство 1602 в варианте осуществления настоящего изобретения может представлять собой энергозависимое запоминающее устройство или энергонезависимое запоминающее устройство или может содержать как энергозависимое, так и энергонезависимое запоминающие устройства. Энергонезависимое запоминающее устройство может представлять собой ROM, программируемое ROM (PROM), стираемое PROM (EPROM), электрическое EPROM (EEPROM) или флеш-память. Энергозависимое запоминающее устройство может представлять собой RAM и используется в качестве внешней высокоскоростной кеш-памяти. В качестве иллюстративного примера, но не ограничения, описано, что могут применяться RAM в различных формах, например, статическое RAM (SRAM), динамическое RAM (DRAM), синхронное DRAM (SDRAM), SDRAM с двукратной скоростью передачи данных (DDRSDRAM), усовершенствованное SDRAM (ESDRAM), DRAM с синхронным каналом (SLDRAM) и RAM с шиной прямого резидентного доступа (DRRAM). Следует отметить, что предполагается, что запоминающее устройство 1602 системы и способа, описанных в настоящем изобретении, включает, но без ограничения, запоминающие устройства этих и любых других подходящих типов.
Процессор 1603 может представлять собой кристалл с интегральными микросхемами с функциональной возможностью обработки сигналов. В процессе реализации каждая операция способа может быть совершена интегральной логической схемой аппаратного обеспечения в процессоре 1603 или инструкцией в форме программного обеспечения. Процессор 1603 может представлять собой универсальный процессор, процессор цифровой обработки сигналов (DSP), интегральную схему специального назначения (ASIC), программируемую пользователем вентильную матрицу (FPGA) или другое программируемое логическое устройство (PLD), дискретный логический элемент или транзисторное логическое устройство и дискретный аппаратный компонент. Каждый способ, этап и логическая блок-схема, раскрытые в вариантах осуществления настоящего изобретения, могут быть реализованы или исполнены. Универсальный процессор может представлять собой микропроцессор, или процессор также может представлять собой любой традиционный процессор и т. п. Операции способа, раскрытые в сочетании с вариантами осуществления настоящего изобретения, могут быть непосредственно осуществлены для исполнения и выполнения аппаратным декодирующим процессором или исполнения и выполнения посредством сочетания аппаратных и программных модулей в декодирующем процессоре. Программный модуль может быть расположен на хорошо известном в данной области техники носителе данных, таком как RAM, флеш-память, ROM, PROM или EEPROM и регистр. Носитель данных расположен в запоминающем устройстве 1602. Процессор 1603 считывает информацию в запоминающем устройстве 1602 и совершает операции способа в комбинации с аппаратным обеспечением.
Можно понять, что эти варианты осуществления, описанные в настоящем изобретении, могут быть реализованы посредством аппаратного обеспечения, программного обеспечения, программно-аппаратного обеспечения, межплатформенного программного обеспечения, микрокода или их комбинации. В случае реализации с аппаратным обеспечением узел обработки может быть реализован в одном или нескольких ASIC, DSP, устройствах DSP (DSPD), PLD, FPGA, универсальных процессорах, контроллерах, микроконтроллерах, микропроцессорах, других электронных блоках, выполненных с возможностью исполнения функций в настоящем изобретении, или их комбинациях.
В случае реализации с программным обеспечением технология настоящего изобретения может быть реализована посредством модулей (например, процессов и функций), исполняющих функции в настоящем изобретении. Программный код может храниться в запоминающем устройстве и исполняться процессором. Запоминающее устройство может быть реализовано внутри процессора или вне процессора.
В по меньшей мере одном варианте осуществления в качестве другого варианта осуществления процессор 1603 дополнительно выполнен с возможностью запуска компьютерной программы для выполнения операций способа в техническом решении, показанном на фиг. 8.
Следует отметить, что технические решения в вариантах осуществления настоящего изобретения можно свободно объединять без конфликта.
Выше приведен лишь конкретный режим реализации настоящего изобретения, и он не предназначен для ограничения объема правовой охраны настоящего изобретения. Любые изменения или замены, очевидные специалистам в данной области техники, в рамках технического объема, раскрытого в настоящем изобретении, входят в объем правовой охраны настоящего изобретения. Следовательно, объем правовой охраны настоящего изобретения будет зависеть от объема правовой охраны формулы изобретения.
ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ
В вариантах осуществления изобретения эталонные выборки, смежные с по меньшей мере одной стороной блока декодирования, получают сначала для получения первого набора соседних эталонных выборок. Затем эталонную точку определяют из по меньшей мере одной стороны, а положения эталонных точек, подлежащие выбору, соответствующие по меньшей мере одной стороне, определяют в соответствии с предварительно заданным количеством выборок. Эталонные выборки, соответствующие положениям эталонных выборок, подлежащим выбору, выбирают из первого набора соседних эталонных выборок на основании положений эталонных выборок, подлежащих выбору, и выбранные эталонные выборки образуют подмножество соседних эталонных выборок. Наконец, декодирование на основании предсказания выполняется в отношении блока декодирования на основании подмножества соседних эталонных выборок. При выборе соседних эталонных выборок в подмножестве соседних эталонных выборок учитываются как важность, так и дисперсия с тем, чтобы параметры модели, построенные на основании подмножества соседних эталонных выборок, были относительно точными и эффективность предсказания для декодирования видеоизображений могла быть улучшена. Кроме того, подмножество соседних эталонных выборок включает небольшое количество выборок с тем, чтобы также снизилась сложность поиска, улучшилась эффективность предсказания декодирования видеоизображений и еще больше снизилась скорость передачи.

Claims (63)

1. Способ предсказания для декодирования, включающий:
получение эталонных выборок, смежных с по меньшей мере одной стороной блока декодирования;
определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок, при этом определение эталонной точки включает:
вычисление первого интервала выборки на основании предварительно заданного количества выборок и длины по меньшей мере одной стороны; и
определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с первым интервалом выборки;
выбор эталонных выборок, соответствующих положениям эталонной выборки, подлежащим выбору из эталонных выборок на основании положений эталонной выборки, подлежащих выбору; и
выполнение декодирования на основании предсказания в отношении блока декодирования на основании выбранных эталонных выборок.
2. Способ по п. 1, отличающийся тем, что по меньшей мере одна сторона включает по меньшей мере одну из левой стороны или верхней стороны блока декодирования.
3. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны включает:
на основании длины по меньшей мере одной стороны с учетом того, что средняя точка по меньшей мере одной стороны находится в среднем положении между двумя эталонными выборками, определение первого положения эталонной выборки справа от среднего положения как эталонной точки по меньшей мере одной стороны или определение первого положения эталонной выборки слева от среднего положения как эталонной точки по меньшей мере одной стороны.
4. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны включает:
на основании длины по меньшей мере одной стороны с учетом того, что средняя точка по меньшей мере одной стороны находится в среднем положении между двумя эталонными выборками, определение первого положения эталонной выборки ниже среднего положения как эталонной точки по меньшей мере одной стороны или определение первого положения эталонной выборки выше среднего положения как эталонной точки по меньшей мере одной стороны.
5. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с первым интервалом выборки включают:
вычисление значения средней точки по меньшей мере одной стороны на основании длины по меньшей мере одной стороны;
вычисление положений эталонной выборки согласно значению средней точки и первому интервалу выборки; и,
когда значение средней точки не является целым, округление в меньшую сторону положения эталонной выборки с левой стороны от значения средней точки и определение округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору, округление в большую сторону положения эталонной выборки с правой стороны от значения средней точки и определение округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору.
6. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с первым интервалом выборки включают:
вычисление значения средней точки по меньшей мере одной стороны на основании длины по меньшей мере одной стороны;
вычисление положений эталонной выборки согласно значению средней точки и первому интервалу выборки; и,
когда значение средней точки не является целым, округление в большую сторону положения эталонной выборки с левой стороны от значения средней точки и определение округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору, округление в меньшую сторону положения эталонной выборки с правой стороны от значения средней точки и определение округленного положения эталонной выборки как положения эталонной выборки, подлежащего выбору.
7. Способ по п. 1, отличающийся тем, что дополнительно включает:
регулирование первого интервала выборки с получением второго интервала выборки; и
определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии со вторым интервалом выборки.
8. Способ по п. 7, отличающийся тем, что дополнительно включает:
определение эталонной точки из по меньшей мере одной стороны, определение положения эталонной выборки, подлежащего выбору, соответствующего левой стороне эталонной точки, в соответствии с первым интервалом выборки и определение положения эталонной выборки, подлежащего выбору, соответствующего правой стороне эталонной точки, в соответствии со вторым интервалом выборки.
9. Способ по п. 1, отличающийся тем, что вычисление первого интервала выборки на основании предварительно заданного количества выборок и длины по меньшей мере одной стороны включает:
вычисление первого интервала выборки на основании предварительно заданного количества выборок и длины по меньшей мере одной стороны с использованием формулы (1):
Figure 00000034
(1)
где Δ обозначает первый интервал выборки, длина обозначает длину по меньшей мере одной стороны, и N2 обозначает предварительно заданное количество выборок;
определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с первым интервалом выборки включают:
вычисление исходного положения эталонных выборок, подлежащего выбору, в соответствии с первым интервалом выборки с использованием формулы (2);
Figure 00000035
(2)
где сдвиг обозначает исходное положение эталонных выборок, подлежащих выбору; и
определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с исходным положением эталонных выборок, подлежащим выбору, и первым интервалом выборки.
10. Способ по п. 9, отличающийся тем, что определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с исходным положением эталонных выборок, подлежащим выбору, и первым интервалом выборки включает:
определение того, что положения эталонной выборки, подлежащие выбору, соответствующие по меньшей мере одной стороне, составляют 2, 6, 10 и 14, когда исходное положение эталонных выборок, подлежащее выбору, составляет 2, и интервал выборки составляет 4.
11. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок включают:
определение того, что положения эталонной выборки, подлежащие выбору, соответствующие по меньшей мере одной стороне, составляют 2 и 6, или 1 и 5, или 1 и 6, или 2 и 5, когда длина по меньшей мере одной стороны составляет 8 и предварительно заданное количество выборок составляет 2.
12. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок включают:
определение эталонной точки из по меньшей мере одной стороны и определение непрерывных положений эталонной выборки рядом с эталонной точкой как положений эталонной выборки, подлежащих выбору, согласно предварительно заданному количеству выборок, причем эталонная точка находится в среднем положении из положений эталонной выборки, подлежащих выбору.
13. Способ по п. 12, отличающийся тем, что дополнительно включает:
определение того, что положения эталонной выборки, подлежащие выбору, соответствующие по меньшей мере одной стороне, составляют 2, 3 и 4, или 3, 4 и 5, когда длина по меньшей мере одной стороны составляет 8 и предварительно заданное количество выборок составляет 3.
14. Способ по любому из пп. 1–13, отличающийся тем, что блок декодирования включает квадратный блок декодирования или неквадратный блок декодирования.
15. Способ по п. 1, отличающийся тем, что определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок включают:
получение из эталонных выборок оставшихся эталонных выборок, за исключением эталонных выборок, соответствующих исходному положению и конечному положению по меньшей мере одной стороны; и
определение эталонной точки из по меньшей мере одной стороны и определение положений эталонной выборки, подлежащих выбору, на основании оставшихся эталонных выборок и предварительно заданного количества выборок.
16. Способ по любому из пп. 1–15, отличающийся тем, что выполнение декодирования на основании предсказания в отношении блока декодирования на основании выбранных эталонных выборок включает:
определение параметров модели на основании выбранных эталонных выборок;
установление модели предсказания согласно параметрам модели, причем модель предсказания выполнена с возможностью представления соотношения предсказания между первым компонентом цвета и вторым компонентом цвета, соответствующим каждой выборке в блоке декодирования; и
выполнение декодирования на основании предсказания в отношении блока декодирования на основании модели предсказания.
17. Способ по п. 16, отличающийся тем, что определение параметров модели на основании выбранных эталонных выборок включает:
определение из выбранных эталонных выборок максимального
Figure 00000036
и минимального
Figure 00000037
соседних эталонных значений первого компонента цвета и соседних эталонных значений второго компонента цвета
Figure 00000038
и
Figure 00000039
, соответствующих эталонным выборкам в положениях, соответствующих
Figure 00000040
и
Figure 00000041
; и
вычисление параметров модели согласно
Figure 00000040
,
Figure 00000041
,
Figure 00000038
и
Figure 00000039
с использованием формулы (3):
Figure 00000042
(3)
где
Figure 00000043
и
Figure 00000044
обозначают параметры модели.
18. Устройство предсказания для декодирования, содержащее:
узел получения, выполненный с возможностью получения эталонных выборок, смежных с по меньшей мере одной стороной блока декодирования;
узел определения, выполненный с возможностью определения эталонной точки из по меньшей мере одной стороны и определения положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с предварительно заданным количеством выборок;
узел выбора, выполненный с возможностью выбора эталонных выборок, соответствующих положениям эталонной выборки, подлежащим выбору из эталонных выборок на основании положений эталонной выборки, подлежащих выбору; и
узел декодирования, выполненный с возможностью выполнения декодирования на основании предсказания в отношении блока декодирования на основании выбранных соседних эталонных выборок;
при этом устройство предсказания для декодирования дополнительно содержит: узел вычисления, выполненный с возможностью вычисления первого интервала выборки на основании предварительно заданного количества выборок и длины по меньшей мере одной стороны, при этом
узел определения выполнен с возможностью определения эталонной точки из по меньшей мере одной стороны и определения положений эталонной выборки, подлежащих выбору, соответствующих по меньшей мере одной стороне, в соответствии с первым интервалом выборки.
19. Компьютерный носитель данных, который хранит программу для предсказания для декодирования, при этом программа для предсказания для декодирования исполняется по меньшей мере одним процессором для реализации операций способа по любому из пп. 1–17.
RU2021110172A 2018-12-25 Способ и устройство предсказания для декодирования и компьютерный носитель данных RU2781240C1 (ru)

Publications (1)

Publication Number Publication Date
RU2781240C1 true RU2781240C1 (ru) 2022-10-10

Family

ID=

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611885B (zh) * 2011-01-20 2014-04-30 华为技术有限公司 一种编解码方法和装置
US20160044329A1 (en) * 2013-04-26 2016-02-11 Huawei Technologies Co., Ltd. Image Predictive Coding Method and Image Encoder
RU2595592C2 (ru) * 2010-12-28 2016-08-27 Сан Пэтент Траст Способ декодирования движущегося изображения, способ кодирования движущегося изображения, устройство декодирования движущегося изображения, устройство кодирования движущегося изображения и устройство кодирования и декодирования движущегося изображения
US20170318305A1 (en) * 2014-10-31 2017-11-02 Nec Corporation Prediction-image generation device and prediction-image generation method
US20180176592A1 (en) * 2015-06-16 2018-06-21 Lg Electronics Inc. Method and device for predicting block on basis of illumination compensation in image coding system
US10129542B2 (en) * 2013-10-17 2018-11-13 Futurewei Technologies, Inc. Reference pixel selection and filtering for intra coding of depth map

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2595592C2 (ru) * 2010-12-28 2016-08-27 Сан Пэтент Траст Способ декодирования движущегося изображения, способ кодирования движущегося изображения, устройство декодирования движущегося изображения, устройство кодирования движущегося изображения и устройство кодирования и декодирования движущегося изображения
CN102611885B (zh) * 2011-01-20 2014-04-30 华为技术有限公司 一种编解码方法和装置
US20160044329A1 (en) * 2013-04-26 2016-02-11 Huawei Technologies Co., Ltd. Image Predictive Coding Method and Image Encoder
US10129542B2 (en) * 2013-10-17 2018-11-13 Futurewei Technologies, Inc. Reference pixel selection and filtering for intra coding of depth map
US20170318305A1 (en) * 2014-10-31 2017-11-02 Nec Corporation Prediction-image generation device and prediction-image generation method
US20180176592A1 (en) * 2015-06-16 2018-06-21 Lg Electronics Inc. Method and device for predicting block on basis of illumination compensation in image coding system

Similar Documents

Publication Publication Date Title
RU2683165C1 (ru) Внутреннее предсказание блочного копирования с асимметричными разделами и схемами поиска на стороне кодера, диапазоны поиска и подходы к разделению
US11297313B2 (en) Prediction method for decoding and apparatus, and computer storage medium
CN118368417A (zh) 编码和解码图像帧的编码树单元的编码块的方法和设备
JP2023113908A (ja) 予測デコーディング方法、装置及びコンピュータ記憶媒体
RU2781240C1 (ru) Способ и устройство предсказания для декодирования и компьютерный носитель данных
CN112313950B (zh) 视频图像分量的预测方法、装置及计算机存储介质
RU2775833C1 (ru) Способ и устройство декодирования на основании предсказывания и компьютерный носитель данных
WO2023193253A1 (zh) 解码方法、编码方法、解码器以及编码器