СПОСОБ И УСТРОЙСТВО КОДИРОВАНИЯ/ДЕКОДИРОВАНИЯ ВИДЕО НА ОСНОВЕ ИНТРА-ПРЕДСКАЗАНИЯ Российский патент 2023 года по МПК H04N19/11 

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

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

[0001] Настоящее изобретение относится к способу и устройству кодирования/декодирования видео.

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

[0002] В последнее время, растет спрос на высококачественные изображения высокого разрешения, к примеру, на изображения изображений высокой четкости (HD) и сверхвысокой четкости (UHD), в различных областях применения, и, соответственно, обсуждаются технологии высокоэффективного сжатия изображений.

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

Сущность изобретения

Техническая задача

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

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

[0006] Цель настоящего изобретения заключается в том, чтобы предоставлять способ и устройство для определения опорной области для интра-предсказания.

[0007] Цель настоящего изобретения заключается в том, чтобы предоставлять способ и устройство интра-предсказания согласно типу компонента.

Техническое решение

[0008] Способ и устройство кодирования/декодирования изображения настоящего изобретения могут определять опорную область для интра-предсказания текущего блока, извлекать режим интра-предсказания текущего блока и декодировать текущий блок на основе опорной области и режима интра-предсказания.

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

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

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

[0012] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, режим по умолчанию может представлять собой по меньшей мере одно из планарного режима, DC-режима, вертикального режима, горизонтального режима, вертикального режима или диагонального режима.

[0013] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, множество потенциально подходящих MPM-вариантов могут включать в себя по меньшей мере одно из режима интра-предсказания соседнего блока, режима, полученного посредством вычитания значения n из режима интра-предсказания соседнего блока, либо режима, полученного посредством суммирования значения n с режимом интра-предсказания соседнего блока. В данном документе, n может означать натуральное число, представляющее собой 1, 2 или больше.

[0014] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, множество потенциально подходящих MPM-вариантов могут включать в себя по меньшей мере одно из DC-режима, вертикального режима, горизонтального режима, режима, полученного посредством вычитания или суммирования значения m из/с, вертикальным режимом, либо режима, полученного посредством вычитания или суммирования значения m из/с горизонтальным режимом. В данном документе, m может быть натуральным числом, представляющим собой 1, 2, 3, 4 или больше.

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

[0016] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, извлеченный режим интра-предсказания может изменяться посредством применения предварительно определенного смещения к извлеченному режиму интра-предсказания.

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

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

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

Преимущества изобретения

[0020] Настоящее изобретение может повышать эффективность кодирования/декодирования интра-предсказания через адаптивное разделение на блоки.

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

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

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

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

Описание чертежей

[0025] Фиг. 1 является блок-схемой, показывающей устройство кодирования изображений согласно варианту осуществления настоящего изобретения.

[0026] Фиг. 2 является блок-схемой, показывающей устройство декодирования изображений согласно варианту осуществления настоящего изобретения.

[0027] Фиг. 3 иллюстрирует способ разделения кадра на множество фрагментарных областей в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0028] Фиг. 4 является примерной схемой, иллюстрирующей режим интра-предсказания, предварительно заданный в устройстве кодирования/декодирования изображений в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0029] Фиг. 5 иллюстрирует способ декодирования текущего блока на основе интра-предсказания в качестве варианта осуществления, к которому применяется настоящее изобретение.

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

[0031] Фиг. 7 иллюстрирует способ изменения/коррекции режима интра-предсказания в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0032] Фиг. 8 иллюстрирует способ предсказания на основе межкомпонентных ссылок в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0033] Фиг. 9 иллюстрирует способ конфигурирования опорной области в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0034] Фиг. 10 является примерной схемой для конфигурирования режима интра-предсказания, заданного поэтапно, в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0035] Фиг. 11 иллюстрирует способ классификации режимов интра-предсказания на множество групп потенциально подходящих вариантов в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0036] Фиг. 12 является примерной схемой, иллюстрирующей текущий блок и пиксел, смежный с ним, в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0037] Фиг. 13 иллюстрирует способ выполнения интра-предсказания поэтапно в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0038] Фиг. 14 является примерной схемой для произвольного пиксела для интра-предсказания в качестве варианта осуществления, к которому применяется настоящее изобретение.

[0039] Фиг. 15 является примерной схемой разделения на множество подобластей на основе произвольного пиксела в качестве варианта осуществления, к которому применяется настоящее изобретение.

Оптимальный режим для изобретения

[0040] Способ и устройство кодирования/декодирования изображения настоящего изобретения могут определять опорную область для интра-предсказания текущего блока, извлекать режим интра-предсказания текущего блока и декодировать текущий блок на основе опорной области и режима интра-предсказания.

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

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

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

[0044] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, режим по умолчанию может представлять собой по меньшей мере одно из планарного режима, DC-режима, вертикального режима, горизонтального режима, вертикального режима или диагонального режима.

[0045] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, множество потенциально подходящих MPM-вариантов могут включать в себя по меньшей мере одно из режима интра-предсказания соседнего блока, режима, полученного посредством вычитания значения n из режима интра-предсказания соседнего блока, либо режима, полученного посредством суммирования значения n с режимом интра-предсказания соседнего блока. В данном документе, n может означать натуральное число, представляющее собой 1, 2 или больше.

[0046] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, множество потенциально подходящих MPM-вариантов могут включать в себя по меньшей мере одно из DC-режима, вертикального режима, горизонтального режима, режима, полученного посредством вычитания или суммирования значения m из/с, вертикальным режимом, либо режима, полученного посредством вычитания или суммирования значения m из/с горизонтальным режимом. В данном документе, m может быть натуральным числом, представляющим собой 1, 2, 3, 4 или больше.

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

[0048] В способе и устройстве кодирования/декодирования изображения настоящего изобретения, извлеченный режим интра-предсказания может изменяться посредством применения предварительно определенного смещения к извлеченному режиму интра-предсказания.

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

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

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

Режим для осуществления изобретения

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

[0053] Хотя термины "первый", "второй" и т.д. могут использоваться для того, чтобы описывать различные элементы, данные элементы не должны быть ограничены посредством этих терминов. Эти термины используются только для того, чтобы отличать один элемент от другого элемента. Например, первый элемент может называться "вторым элементом", и второй элемент аналогично может называться "первым элементом" без отступления от идей настоящего изобретения. Термин "и/или" включает в себя все без исключения комбинации множества ассоциированных перечисленных элементов.

[0054] Следует понимать, что, когда элемент упоминается как "соединенный с" или "подключенный к" другому элементу, элемент может непосредственно соединяться с или подключаться к другому элементу или промежуточным элементам. Напротив, когда элемент упоминается как "непосредственно соединенный с" или "непосредственно подключенный к" другому элементу, отсутствуют промежуточные элементы.

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

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

[0057] [0058] Фиг. 1 является блок-схемой, иллюстрирующей устройство кодирования согласно одному варианту осуществления настоящего изобретения.

[0059] Ссылаясь на фиг. 1, устройство 100 кодирования изображений включает в себя модуль 110 разделения кадров, модули 120 и 125 предсказания, модуль 130 преобразования, модуль 135 квантования, модуль 160 переупорядочения, модуль 165 энтропийного кодирования, модуль 140 обратного квантования, модуль 145 обратного преобразования, модуль 150 фильтрации и запоминающее устройство 155.

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

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

[0062] Модуль 110 разделения кадров может разделять входной кадр, по меньшей мере, на одну единицу обработки. В этом случае, единица обработки может представлять собой единицу предсказания (PU), единицу преобразования (TU) или единицу кодирования (CU). Модуль 110 разделения кадров может разделять один кадр на множество комбинаций из единицы кодирования, единицы предсказания и единицы преобразования и выбирать одну комбинацию из единицы кодирования, единицы предсказания и единицы преобразования на основе предварительно определенного критерия (например, функции затрат), с тем чтобы кодировать кадр.

[0063] Например, одно изображение может разделяться на множество единиц кодирования. Чтобы разделять кадр на единицы кодирования, может использоваться рекурсивная древовидная структура, такая как структура в виде дерева квадрантов. Одно изображение, максимальный блок кодирования (наибольшая единица кодирования) или единица дерева кодирования (CTU) в качестве корня может разделяться на другие единицы кодирования и может разделяться с числом дочерних узлов вплоть до числа разделенных единиц кодирования. Единица кодирования, которые более не разделяются согласно определенным ограничениям, становится узлом-листом. Таким образом, когда предполагается, что только квадратное разделение является возможным для одной единицы кодирования, одна единица кодирования может разделяться максимум на четыре различных единицы кодирования.

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

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

[0066] Когда единица предсказания, которая выполняет интра-предсказание на основе единицы кодирования, не представляет собой минимальную единицу кодирования, интра-предсказание может выполняться без разделения на множество единиц предсказания в NxN.

[0067] Модули 120 и 125 предсказания могут включать в себя модуль 120 интер-предсказания для того, чтобы выполнять интер-предсказание, и модуль 125 интра-предсказания для того, чтобы выполнять интра-предсказание. Модули 120 и 125 предсказания могут определять то, какое из интер-предсказания и интра-предсказания выполняется для PU, и могут определять конкретную информацию (например, режим интра-предсказания, вектор движения и опорный кадр) определенного способа предсказания. Здесь, единица обработки, для которой выполняется предсказание, может отличаться от единицы обработки, для которой определяются способ предсказания и конкретная информация. Например, способ предсказания и режим предсказания могут определяться для каждой PU, в то время как предсказание может выполняться для каждой TU. Остаточное значение (остаточный блок) между сформированным предсказанным блоком и исходным блоком может вводиться в модуль 130 преобразования. Дополнительно, информация режима предсказания, информация вектора движения и т.п., используемая для предсказания, может кодироваться вместе с остаточным значением посредством модуля 165 энтропийного кодирования и передаваться в устройство декодирования. Когда используется конкретный режим кодирования, исходный блок может кодироваться и передаваться в устройство декодирования без формирования блока предсказания посредством модулей 120 и 125 предсказания.

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

[0069] Модуль интерполяции опорных кадров может снабжаться информацией опорных кадров из запоминающего устройства 155 и формировать пиксельную информацию, меньшую или равную целочисленному пикселу, для опорного кадра. В случае пикселов яркости, 8-отводный интерполяционный фильтр на основе DCT с переменным коэффициентом фильтрации может использоваться для того, чтобы формировать пиксельную информацию, меньшую или равную целочисленному пикселу, в единице в 1/4 пиксела. В случае пикселов цветности, 4-отводный интерполяционный фильтр на основе DCT с переменным коэффициентом фильтрации может использоваться для того, чтобы формировать пиксельную информацию, меньшую или равную целочисленному пикселу, в единице в 1/8 пиксела.

[0070] Модуль предсказания движения может выполнять предсказание движения на основе опорного кадра, интерполированного посредством модуля интерполяции опорных кадров. Различные способы, такие как алгоритм поблочного сопоставления на основе полного поиска (FBMA), алгоритм трехэтапного поиска (TSS) и алгоритм обновленного трехэтапного поиска (NTS), могут использоваться для того, чтобы вычислять вектор движения. Вектор движения имеет значение вектора движения в единице в 1/2 или 1/4 пиксела на основе интерполированного пиксела. Модуль предсказания движения может предсказывать текущую PU с использованием различных способов предсказания движения. Различные способы, такие как режим пропуска, режим объединения, режим усовершенствованного предсказания векторов движения (AMVP) и режим внутриблочного копирования и т.д., могут использоваться в качестве способа предсказания движения.

[0071] Модуль 125 интра-предсказания может формировать PU на основе информации относительно опорного пиксела, соседнего с текущим блоком. Когда опорный пиксел представляет собой пиксел, для которого выполнено интер-предсказание, поскольку блок, соседний с текущей PU, представляет собой блок, для которого выполнено интер-предсказание, информация относительно опорного пиксела в блоке, для которого выполнено интер-предсказание, может заменяться информацией относительно опорного пиксела в блоке, для которого выполнено интра-предсказание. Иными словами, когда опорный пиксел недоступен, информация относительно недоступного опорного пиксела может заменяться информацией, по меньшей мере, относительно одного опорного пиксела из доступных опорных пикселов.

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

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

[0074] В способе интра-предсказания, предсказанный блок может формироваться посредством применения адаптивного фильтра (AIS) интра-сглаживания к опорным пикселам согласно режиму предсказания. Различные типы AIS-фильтров могут применяться к опорным пикселам. В способе интра-предсказания, режим интра-предсказания текущей PU может предсказываться из режима интра-предсказания PU, соседней с текущей PU. При предсказании режима предсказания текущей PU с использованием информации режима, предсказанной из соседней PU, когда текущая PU и соседняя PU имеют идентичный режим интра-предсказания, информация, указывающая то, что текущая PU и соседняя PU имеют идентичный режим предсказания, может передаваться с использованием предварительно определенной информации флага. Когда текущая PU и соседняя PU имеют различные режимы предсказания, информация относительно режима предсказания текущего блока может кодироваться посредством энтропийного кодирования.

[0075] Остаточный блок, включающий в себя остаточную информацию, может формироваться. Остаточная информация представляет собой разность между предсказанной единицей, сформированной посредством модулей 120 и 125 предсказания, и исходным блоком единицы предсказания. Сформированный остаточный блок может вводиться в модуль 130 преобразования.

[0076] Модуль 130 преобразования может преобразовывать остаточный блок, включающий в себя остаточную информацию, между предсказанной единицей, сформированной посредством модулей 120 и 125 предсказания, и исходным блоком посредством использования такого типа преобразования, как DCT (дискретное косинусное преобразование), DST (дискретное синусное преобразование) или KLT. То, следует или нет применять DCT, DST или KLT для того, чтобы преобразовывать остаточный блок, может определяться на основе информации режима интра-предсказания единицы предсказания, используемой для того, чтобы формировать остаточный блок.

[0077] Модуль 135 квантования может квантовать значения, преобразованные в частотную область посредством модуля 130 преобразования. Коэффициент квантования может изменяться в зависимости от блока или значимости изображения. Значения, выводимые из модуля 135 квантования, могут предоставляться в модуль 140 обратного квантования и модуль 160 перекомпоновки.

[0078] Модуль 160 перекомпоновки может выполнять перекомпоновку значений коэффициентов для квантованного остатка.

[0079] Модуль 160 перекомпоновки может изменять коэффициенты из двумерного блока коэффициентов на коэффициенты из одномерного вектора коэффициентов через способ сканирования коэффициентов. Например, модуль 160 перекомпоновки может сканировать DC-коэффициент в коэффициент в высокочастотной области с использованием предварительно способа зигзагообразного сканирования и изменять его на одномерную векторную форму. В зависимости от размера единицы преобразования и режима интра-предсказания, вместо зигзагообразного сканирования, может использоваться вертикальное сканирование, которое сканирует коэффициент формы двумерного блока в направлении столбцов, и горизонтальное сканирование, которое сканирует коэффициент формы двумерного блока в направлении строк. Таким образом, согласно размеру единицы преобразования и режима интра-предсказания, можно определять то, какое из зигзагообразного сканирования, сканирования в вертикальном направлении и сканирования в горизонтальном направлении должно использоваться.

[0080] Модуль 165 энтропийного кодирования может выполнять энтропийное кодирование на основе значений, полученных посредством модуля 160 перекомпоновки. Различные способы кодирования, такие как экспоненциальное кодирование кодом Голомба, контекстно-адаптивное кодирование переменной длины (CAVLC) и контекстно-адаптивное двоичное арифметическое кодирование (CABAC), могут использоваться для энтропийного кодирования.

[0081] Модуль 165 энтропийного кодирования может кодировать различную информацию, к примеру, информацию остаточных коэффициентов и информацию типа блока для единицы кодирования, информацию режима предсказания, информацию единицы разделения, информацию единицы предсказания, информацию единицы передачи, информацию вектора движения, информацию опорного кинокадра, информацию интерполяции блоков и информацию фильтрации, из модуля 160 перекомпоновки и модулей 120 и 125 предсказания.

[0082] Модуль 165 энтропийного кодирования может энтропийно кодировать коэффициенты CU, вводимые из модуля 160 перекомпоновки.

[0083] Модуль 140 обратного квантования и модуль 145 обратного преобразования деквантуют значения, которые квантуются посредством модуля 135 квантования, и обратно преобразуют значения, которые преобразуются посредством модуля 130 преобразования. Восстановленный блок может формироваться посредством суммирования остаточных значений с предсказанной PU. Остаточные значения могут формироваться посредством модуля 140 обратного квантования и модуля 145 обратного преобразования. Предсказанная PU может предсказываться посредством модуля предсказания векторов движения, модуля компенсации движения и модуля интра-предсказания модулей 120 и 125 предсказания.

[0084] Модуль 150 фильтрации может включать в себя по меньшей мере одно из фильтра удаления блочности, модуля вычисления смещения и адаптивного контурного фильтра (ALF).

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

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

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

[0088] Запоминающее устройство 155 может сохранять восстановленный блок или кадр, выводимый из модуля 150 фильтрации, и сохраненный восстановленный блок или кадр может предоставляться в модули 120 и 125 предсказания при выполнении интер-предсказания.

[0089] [0090] Фиг. 2 является блок-схемой, иллюстрирующей устройство декодирования изображений согласно примерному варианту осуществления настоящего изобретения.

[0091] Ссылаясь на фиг. 2, устройство 200 декодирования изображений может включать в себя модуль 210 энтропийного декодирования, модуль 215 перекомпоновки, модуль 220 деквантования, модуль 225 обратного преобразования, модули 230 и 235 предсказания, модуль 240 фильтрации и запоминающее устройство 245.

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

[0093] Модуль 210 энтропийного декодирования может выполнять энтропийное декодирование в процедуре, противоположной относительно процедуры для выполнения энтропийного кодирования в модуле энтропийного кодирования устройства кодирования изображений. Например, различные способы, такие как кодирование экспоненциальным кодом Голомба, CAVLC или CABAC, могут применяться согласно способу, осуществляемому посредством устройства кодирования изображений.

[0094] Модуль 210 энтропийного декодирования может декодировать информацию, ассоциированную с интра-предсказанием и интер-предсказанием, выполняемым посредством устройства кодирования.

[0095] Модуль 215 перекомпоновки может выполнять перекомпоновку для потока битов, энтропийно декодированного посредством модуля 210 энтропийного декодирования, на основе способа перекомпоновки устройства кодирования. Модуль 215 перекомпоновки может восстанавливать и перекомпоновывать коэффициенты одномерного вектора в коэффициенты двумерного блока. Модуль 215 перекомпоновки может снабжаться информацией относительно сканирования коэффициентов, выполняемого посредством устройства кодирования, и может выполнять перекомпоновку с использованием способа обратного сканирования коэффициентов, на основе порядка сканирования, выполняемого посредством устройства кодирования.

[0096] Модуль 220 деквантования может выполнять деквантование на основе параметра квантования, предоставленного посредством устройства кодирования, и перекомпонованных коэффициентов блока.

[0097] Модуль 225 обратного преобразования может выполнять обратное преобразование, т.е. обратное DCT, обратное DST и обратное KLT, относительно преобразования, выполняемого посредством единицы преобразования, т.е. DCT, DST и KLT, для результата квантования, выполняемого посредством устройства кодирования изображений. Обратное преобразование может выполняться на основе единицы передачи, определенной посредством устройства кодирования изображений. Модуль 225 обратного преобразования устройства декодирования изображений может избирательно выполнять технологию преобразования (например, DCT, DST, KLT) согласно множеству фрагментов информации, такой как способ предсказания, размер текущего блока и направление предсказания.

[0098] Модули 230 и 235 предсказания могут формировать блок предсказания на основе предоставленной информации для формирования блока предсказания и информации относительно ранее декодированного блока или кадра. Информация для формирования блока предсказания может предоставляться из модуля 210 энтропийного декодирования. Информация относительно ранее декодированного блока или кадра может предоставляться из запоминающего устройства 245.

[0099] Как описано выше, когда размер единицы предсказания и размер единицы преобразования являются идентичными, когда интра-предсказание выполняется идентично работе устройства кодирования изображений, интра-предсказание для единицы предсказания может выполняться на основе пиксела слева, пиксела сверху слева и пиксела сверху относительно единицы предсказания. Тем не менее, когда размер единицы предсказания и размер единицы преобразования отличаются друг от друга при выполнении интра-предсказания, интра-предсказание для единицы предсказания может выполняться с использованием опорного пиксела, определенного на основе единицы преобразования. Помимо этого, интра-предсказание с использованием разделения NxN может использоваться только для минимальной единицы кодирования.

[00100] Модули 230 и 235 предсказания могут включать в себя модуль определения единиц предсказания, модуль интер-предсказания и модуль интра-предсказания. Модуль определения единиц предсказания может принимать различную информацию, такую как информация единицы предсказания, информация режима предсказания способа интра-предсказания и связанная с предсказанием движения информация способа интер-предсказания и т.д., из модуля 210 энтропийного декодирования, может определять единицу предсказания для текущей единицы кодирования. Модуль определения единиц предсказания может определять то, какое из интер-предсказания и интра-предсказания выполняется для единицы предсказания. Модуль 230 интер-предсказания может выполнять интер-предсказание для текущей единицы предсказания на основе информации, по меньшей мере, относительно одного кадра из числа предыдущего кадра и последующего кадра относительно текущего кадра, включающего в себя текущую единицу предсказания. В данном документе, модуль 230 интер-предсказания может использовать информацию, необходимую для интер-предсказания для текущей единицы предсказания, предоставленную из устройства кодирования изображений. Интер-предсказание может выполняться на основе информации предварительно восстановленной частичной области в текущем кадре, включающем в себя текущую единицу предсказания.

[00101] Чтобы выполнять интер-предсказание, может определяться, в единице единицы кодирования, то, представляет способ предсказания движения для единицы предсказания, включенной в единицу кодирования, собой режим пропуска, режим объединения, AMVP-режим или режим внутриблочного копирования.

[00102] Модуль 235 интра-предсказания может формировать блок предсказания на основе пиксельной информации в текущем кадре. Когда единица предсказания представляет собой единицу предсказания, для которой выполняется интра-предсказание, интра-предсказание может быть выполнено на основе информации режима интра-предсказания относительно единицы предсказания, предоставленной из устройства кодирования изображений. Модуль 235 интра-предсказания может включать в себя AIS-(адаптивный фильтр интра-сглаживания) фильтр, модуль интерполяции опорных пикселов и DC-фильтр. AIS-фильтр выполняет фильтрацию для опорных пикселов текущего блока. AIS-фильтр может определять то, следует применять фильтр или нет, в зависимости от режима предсказания для текущей единицы предсказания. AIS-фильтрация может выполняться для опорных пикселов текущего блока с использованием режима предсказания для единицы предсказания и информации относительно AIS-фильтра, предоставленной из устройства кодирования изображений. Когда режим предсказания для текущего блока представляет собой режим, не выполняющий AIS-фильтрацию, AIS-фильтр может не применяться.

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

[00104] Восстановленный блок или кадр может предоставляться в модуль 240 фильтрации. Модуль 240 фильтрации включает в себя фильтр удаления блочности, модуль вычисления смещения и ALF.

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

[00106] Модуль вычисления смещения может применять смещение к восстановленному кадру на основе информации относительно типа смещения и значения смещения, применяемой к кадру в процессе кодирования.

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

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

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

[00110] [00111] Фиг. 3 иллюстрирует способ разделения кадра на множество фрагментарных областей в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00112] Один кадр может разделяться на предварительно определенную фрагментарную область. Фрагментарная область согласно настоящему изобретению может включать в себя по меньшей мере одно из субкадра, среза, плитки, единицы дерева кодирования (CTU) или единицы кодирования (CU).

[00113] Ссылаясь на фиг 3, кадр 300 может включать в себя один или более субкадров. Таким образом, кадр может состоять из одного субкадра или может разделяться на множество субкадров, как показано на фиг. 3.

[00114] В случае субкадра, информация разделения может быть конфигурироваться по-разному согласно настройке кодирования. (1) Например, субкадр может получаться в способе пакетного разделения на основе вертикальной или горизонтальной линии, пересекающей кадр. (2) Альтернативно, субкадр может получаться посредством частичного способа разделения на основе информации признаков (позиции, размера, формы и т.д., что касается формы, описанной позднее, при условии прямоугольного угла) каждого субкадра.

[00115] (1) В первом случае, информация разделения субкадра может быть сконфигурирована на основе вертикальной или горизонтальной линии, которая разделяет субкадр.

[00116] Разделение на основе линий может использовать равномерное или неравномерное разделение. Когда равномерный способ используется, информация относительно числа разделений каждой линии может формироваться, и когда неравномерный способ используется, информация расстояния (ширина или высота) между линиями может формироваться. Способ равномерного или неравномерного разделения может использоваться в зависимости от настройки кодирования, либо информация выбора способа может явно формироваться. Способ равномерного или неравномерного разделения может применяться совместно к вертикальной и горизонтальной линиям. Альтернативно, способы, применяемые к вертикальной и горизонтальной линиям, отличается друг от друга. Информация относительно числа субкадров может извлекаться на основе информации разделения.

[00117] Информация расстояния между линиями может кодироваться в таких единицах, как единицы в n дискретных отсчетов, CTU-размер, (2 * CTU-размер), (4 * CTU-размер) и т.п. Здесь, n может быть натуральным числом, представляющим собой 4, 8, 16, 32, 64, 128, 256 или больше. Сформированная информация может сигнализироваться, по меньшей мере, для одного уровня из набора параметров видео (VPS), набора параметров последовательности (SPS), набора параметров кадра (PPS) и заголовка кадра (PH).

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

[00119] Информация, указывающая число субкадров (в дальнейшем в этом документе, информация по числу), может кодироваться посредством устройства кодирования, и устройство декодирования может определять число субкадров, конфигурирующих один кадр, на основе кодированной информации по числу. Информация по числу может сигнализироваться, по меньшей мере, для одного уровня из VPS, SPS, PPS и PH. Альтернативно, информация по числу субкадров может неявно извлекаться на основе информации разделения (информации позиции, размера и т.д.) субкадра.

[00120] Информация, указывающая позицию каждого субкадра (в дальнейшем в этом документе, информация позиции), может включать в себя координату X или координату Y заранее зафиксированной позиции соответствующего субкадра. Заранее зафиксированная позиция может определяться из числа слева сверху, справа сверху, слева снизу и справа снизу относительно субкадра. Информация позиции может кодироваться посредством устройства кодирования, и устройство декодирования может определять позицию каждого субкадра на основе кодированной информации позиции. Здесь, координата X/координата Y может выражаться в таких единицах, как единицы в n дискретных отсчетов, CTU-размер, (2 * CTU-размер), (4 * CTU-размер) и т.п. Здесь, n может быть натуральным числом, представляющим собой 1, 2, 4, 8, 16, 32, 64, 128, 256 или больше. Например, в случае если информация позиции кодируется с использованием координаты X и координаты Y левой верхней CTU субкадра, если ширина и высота равны 2 и 3, соответственно, в единицах CTU (CtbSize), позиция (левая верхняя) субкадра может определяться в качестве (2 * CtbSize, 3 * CtbSize).

[00121] Информация, указывающая размер каждого субкадра (в дальнейшем в этом документе, информация размера), может включать в себя по меньшей мере одно из информации ширины и информации высоты соответствующего субкадра. Здесь, информация ширины/высоты может кодироваться в таких единицах, как единицы в n дискретных отсчетов, CTU-размер, (2 * CTU-размер), (4 * CTU-размер) и т.п. Здесь, n может быть натуральным числом, представляющим собой 4, 8, 16, 32, 64, 128, 256 или больше. Например, в случае если информация ширины кодируется в единицах CTU-размера (CtbSize), если информация ширины равна 6, ширина субкадра может определяться в качестве (6 * CtbSize).

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

[00123] Ссылаясь на фиг 3, один субкадр может включать в себя один или более срезов. Таким образом, один субкадр может состоять из одного среза или может разделяться на множество срезов. Субкадр может состоять из множества срезов, разделенных в горизонтальном направлении, или может состоять из множества срезов, разделенных в вертикальном направлении.

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

[00125] Информация, указывающая размер каждого среза (в дальнейшем в этом документе, информация размера), может включать в себя по меньшей мере одно из информации ширины и информации высоты соответствующего среза. Здесь, информация ширины/высоты может кодироваться в единицах плиток или CTU.

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

[00127] Ссылаясь на фиг 3, один субкадр или срез 310 может включать в себя одну или более плиток. Таким образом, один срез может состоять из одной плитки или может состоять из множества плиток. Тем не менее, настоящее изобретение не ограничено этим, и множество срезов могут включаться в одну плитку. В качестве примера, один срез может состоять из поднабора множества CTU-строк, принадлежащих одной плитке. В этом случае, информация, указывающая число срезов, принадлежащих одной плитке (в дальнейшем в этом документе, информация по числу), кодируется посредством устройства кодирования, и устройство декодирования может определять число срезов, составляющих одну плитку, на основе кодированной информации по числу. Информация, указывающая размер каждого среза (в дальнейшем в этом документе, информация размера), может включать в себя по меньшей мере одно из информации ширины и информации высоты соответствующего среза. Здесь, информация ширины/высоты может кодироваться в единице CTU-размера. Тем не менее, когда один срез состоит из поднабора множества CTU-строк, только информация высоты соответствующего среза может сигнализироваться, и информация ширины может не сигнализироваться. Информация по числу/размеру может сигнализироваться, по меньшей мере, для одного уровня из VPS, SPS, PPS или PH.

[00128] По меньшей мере одна из вышеописанной информации относительно числа, позиции и размера запрашивается только тогда, когда кадр разделяется на предварительно определенные фрагментарные области. Например, информация может сигнализироваться только тогда, когда кадр разделяется на множество срезов или плиток. С этой целью, может использоваться отдельный флаг, указывающий то, разделяется или нет текущий кадр на множество срезов или плиток. Флаг может сигнализироваться, по меньшей мере, для одного уровня из VPS, SPS, PPS и PH.

[00129] Ссылаясь на фиг 3, одна плитка может состоять из множества CTU, и одна CTU 320 (в дальнейшем в этом документе, первый блок) может разделяться на множество субблоков (в дальнейшем в этом документе, второй блок), по меньшей мере, посредством одной из вертикальной линии или горизонтальной линии. Число вертикальных линий и горизонтальных линий может составлять одну, две или больше. В дальнейшем в этом документе, первый блок не ограничен CTU и может представлять собой блок кодирования (CU), разделенный из CTU, блок предсказания (PU), который представляет собой базовую единицу предсказывающего кодирования/декодирования, или блок преобразования (TU), который представляет собой базовую единицу кодирования/декодирования с преобразованием. Первый блок может представлять собой квадратный блок или неквадратный блок.

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

[00131] В частности, разделение на дерево квадрантов (QT) представляет собой тип разделения, в котором первый блок разделяется на четырехсекундные блоки. Например, когда первый блок 2Nx2N разделяется посредством QT, первый блок может разделяться на четыре вторых блока, имеющих размер NxN. QT может быть ограничено применением только к квадратному блоку, но оно также является применимым к неквадратному блоку.

[00132] Разделение двоичного дерева (BT) представляет собой тип разделения, в котором первый блок разделяется на два вторых блока. BT может включать в себя горизонтальное двоичное дерево (в дальнейшем в этом документе, горизонтальное BT) и вертикальное двоичное дерево (в дальнейшем в этом документе, вертикальное BT). Горизонтальное BT представляет собой тип разделения, в котором первый блок разделяется на два вторых блока посредством одной горизонтальной линии. Это разделение может выполняться симметрично или асимметрично. Например, когда первый блок 2Nx2N разделяется на основе горизонтального BT, первый блок может разделяться на два вторых блока с отношением высоты в (a:b). Здесь, a и b могут быть идентичным значением, и a может быть больше или меньше b. Вертикальное BT представляет собой тип разделения, в котором первый блок разделяется на два вторых блока посредством одной вертикальной линии. Это разделение может выполняться симметрично или асимметрично. Например, когда первый блок 2Nx2N разделяется на основе вертикального BT, первый блок может разделяться на два вторых блока с отношением ширины в (a:b). Здесь, a и b могут быть идентичным значением, и a может быть больше или меньше b.

[00133] Разделение на основе троичного дерева (TT) представляет собой тип разделения, в котором первый блок разделяется на три вторых блока. Аналогично, TT может включать в себя горизонтальное троичное дерево (в дальнейшем в этом документе, горизонтальное TT) и вертикальное троичное дерево (в дальнейшем в этом документе, вертикальное TT). Горизонтальное TT представляет собой тип разделения, в котором первый блок разделяется на три вторых блока посредством двух горизонтальных линий. Например, когда первый блок 2Nx2N разделяется на основе горизонтального TT, первый блок может разделяться на три вторых блока с отношением высоты в (a:b:c). Здесь, a, b и c могут быть идентичным значением. Альтернативно, a и c могут быть идентичными, и b может быть больше или меньше a. Например, a и c может быть равным 2, и b может быть равным 1. Вертикальное TT представляет собой тип разделения, в котором первый блок разделяется на три вторых блока посредством двух вертикальных линий. Например, когда первый блок 2Nx2N разделяется на основе вертикального TT, первый блок может разделяться на три вторых блока с отношением ширины в (a:b:c). Здесь, a, b и c могут быть идентичным значением или различными значениями. Альтернативно, a и c могут быть идентичными, в то время как b может быть больше или меньше a. Альтернативно, a и b могут быть идентичными, в то время как c может быть больше или меньше a. Альтернативно, b и c являются идентичными, в то время как a может быть больше или меньше b. Например, a и c могут быть равными 2, и b может быть равным 1.

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

[00135] Информация типа разделения может указывать любой из типов разделения, которые предварительно задаются в устройстве кодирования/декодирования. Предварительно заданный тип разделения может включать в себя по меньшей мере одно из QT, горизонтального BT, вертикального BT, горизонтального TT, вертикального TT или режима без разделения (без разбиения). Альтернативно, информация типа разделения может означать информацию относительно того, применяется QT, BT или TT, и может кодироваться в форме флага или индекса. В качестве примера, информация типа разделения может включать в себя по меньшей мере одно из первого флага, указывающего то, применяется или нет QT, либо второго флага, указывающего то, применяется либо нет BT или TT. BT или TT может избирательно использоваться согласно второму флагу. Тем не менее, первый флаг может сигнализироваться только тогда, когда размер первого блока меньше или равен предварительно определенному пороговому размеру. Пороговый размер может быть натуральным числом, представляющим собой 64, 128 или больше. Когда размер первого блока превышает пороговый размер, первый блок может принудительно разделяться только с использованием QT. Помимо этого, второй флаг может сигнализироваться только тогда, когда QT не применяется согласно первому флагу.

[00136] В случае BT или TT, информация направления разделения может указывать то, разделяется она горизонтально или вертикально. В случае BT или TT, информация отношения разделения может указывать отношение ширины и/или высоты второго блока.

[00137] Блок 320, проиллюстрированный на фиг. 3, предположительно представляет собой квадратный блок (в дальнейшем в этом документе, первый блок), имеющий размер в 8Nx8N и глубину разделения в k. Когда информация разделения первого блока указывает QT-разделение, первый блок может разделяться на четыре субблока (в дальнейшем в этом документе, второй блок). Второй блок может иметь размер в 4Nx4N и может иметь глубину разделения в (k+1).

[00138] Четыре вторых блока могут разделяться снова на основе QT, BT, TT либо на основе режима без разделения. Например, когда информация разделения второго блока указывает горизонтальное BT, второй блок разделяется на два субблока (в дальнейшем в этом документе, третий блок). В этом случае, третий блок может иметь размер 4Nx2N и может иметь глубину разделения в (k+2).

[00139] Третий блок также может разделяться снова или на основе QT, BT, TT или на основе режима без разделения. Например, когда информация разделения третьего блока указывает вертикальное BT, третий блок разделяется на два субблока 321 и 322. В этом случае, субблоки 321 и 322 могут иметь размер в 2Nx2N и глубину разделения в (k+3). Альтернативно, когда информация разделения третьего блока указывает горизонтальное BT, третий блок может разделяться на два субблока 323 и 324. В этом случае, субблоки 323 и 324 могут иметь размер в 4NxN и глубину разделения в (k+3).

[00140] Разделение может выполняться независимо или параллельно с соседним блоком либо может выполняться последовательно согласно предварительно определенному порядку приоритетов.

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

[00142] Верхний блок может означать блок, имеющий меньшую глубину разделения, чем глубина разделения текущего блока. Например, когда глубина разделения текущего блока составляет (k+2), глубина разделения верхнего блока может составлять (k+1). Соседний блок может представлять собой блок, смежный с верхней или левой стороной текущего блока. Соседний блок может представлять собой блок, имеющий глубину разделения, идентичную глубине разделения текущего блока.

[00143] Вышеописанное разделение может многократно выполняться вплоть до минимальной единицы кодирования/декодирования. При разделении на минимальную единицу, информация разделения для блока более не сигнализируется из устройства кодирования. Информация относительно минимальной единицы может включать в себя по меньшей мере одно из размера или формы минимальной единицы. Размер минимальной единицы может выражаться посредством ширины, высоты, минимального или максимального значения ширины и высоты, суммы ширины и высоты, числа пикселов или глубины разделения. Информация относительно минимальной единицы может сигнализироваться, по меньшей мере, в одном из единицы видеопоследовательности, кадра, среза или блока. Альтернативно, информация относительно минимальной единицы может быть значением, предварительно заданным в устройстве кодирования/декодирования. Информация относительно минимальной единицы может сигнализироваться для каждой из CU, PU и TU. Информация относительно одной минимальной единицы может применяться к CU, PU и TU одинаково. Блоки в вариантах осуществления, описанных ниже, могут получаться через вышеописанное разделение на блоки.

[00144] Разделение на блоки согласно варианту осуществления настоящего изобретения может получаться в поддерживаемом диапазоне, и информация настроек разделения на блоки для этого может поддерживаться. Например, информация настроек разделения на блоки может включать в себя размер mxn, связанный с максимальным блоком кодирования (CTU), минимальным блоком кодирования, максимальным блоком преобразования и минимальным блоком преобразования (например, m и n являются натуральными числами, к примеру, 2, 4, 8, 16, 32, 64, 128 и т.д.) и максимальной глубиной разделения в k для каждого блока (например, кодирование/преобразование x Интра/Интер x QT/BT/TT и т.д.; k равно 0, 1, 2 или больше). Так же, она может сигнализироваться, по меньшей мере, для одного уровня из VPS, SPS, PPS, PH или заголовка среза.

[00145] В случае некоторых вышеописанных фрагментарных областей (субкадра, среза, плитки и т.д.), чтобы сегментировать/разделять каждую фрагментарную область (например, чтобы извлекать информацию позиции и размера фрагментарной области), может запрашиваться предварительно определенная базовая информация (например, информация относительно нижней или базовой единицы соответствующей фрагментарной области, такой как CTU или плитка). В этом случае, VPS-SPS-PPS может последовательно проходиться, но для одновременного кодирования/декодирования, может быть необходимым предоставлять базовую информацию на уровне, который поддерживает сегментацию/разделение каждой фрагментарной области.

[00146] Например, CTU-информация может формироваться (фиксированно формироваться) в SPS, и CTU-информация может использоваться (при разделении) согласно тому, следует или нет разделять на субкадры (при условии обработки в SPS). Альтернативно, CTU-информация может формироваться (при разделении, дополнительно формироваться) согласно тому, следует или нет разделять на срезы или плитки (при условии обработки в PPS), и она может разделяться на срезы и плитки на основе этого.

[00147] В общих словах, базовая информация, используемая для сегментации/разделения фрагментарного изображения, может формироваться на одном уровне. Альтернативно, базовая информация, используемая для сегментации/разделения, может формироваться на двух или более уровней согласно типу фрагментарного изображения.

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

[00149] [00150] Фиг. 4 является примерной схемой, иллюстрирующей режим интра-предсказания, предварительно заданный в устройстве кодирования/декодирования изображений в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00151] Ссылаясь на фиг 4, предварительно заданные режимы интра-предсказания могут задаваться как группа потенциально подходящих вариантов режимов предсказания, состоящая из 67 режимов, и конкретно могут включать в себя 65 направленных режимов (№ 2-66) и два (DC-, планарный) ненаправленных режима. В этом случае, направленный режим может идентифицироваться на основе информации наклона (например, dy/dx) или угла (градусы). Все или некоторые режимы интра-предсказания, описанные в вышеприведенном примере, могут включаться в группу потенциально подходящих вариантов режимов предсказания компонента яркости или компонента цветности, и другие дополнительные режимы могут включаться в группу потенциально подходящих вариантов режимов предсказания.

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

[00153] Группа потенциально подходящих вариантов режимов предсказания может адаптивно определяться согласно настройке кодирования/декодирования. Число групп потенциально подходящих вариантов может увеличиваться для целей повышения точности предсказания, и число групп потенциально подходящих вариантов может снижаться для целей уменьшения числа битов согласно режиму предсказания.

[00154] Например, одна из группы A потенциально подходящих вариантов (67, 65 направленных режимов и 2 ненаправленных режима), группа B потенциально подходящих вариантов (35, 33 направленных режима и 2 ненаправленных режима) или группа C потенциально подходящих вариантов (18, 17 направленных режимов и один ненаправленный режим) может выбираться, и группа потенциально подходящих вариантов может адаптивно выбираться или определяться на основе размера и формы блока.

[00155] Помимо этого, можно иметь различные конфигурации группы потенциально подходящих вариантов режимов предсказания согласно настройке кодирования/декодирования. Например, как показано на фиг. 4, группа потенциально подходящих вариантов режимов предсказания может иметь такую конфигурацию, в которой интервал между режимами является четным, или группа потенциально подходящих вариантов режимов предсказания может иметь такую конфигурацию, в которой число режимов между режимами 18 и 34 на фиг. 4 превышает число режимов между режимами 2 и 18. Противоположный случай может быть возможным. Группа потенциально подходящих вариантов может адаптивно конфигурироваться согласно форме блока (т.е. квадратной, неквадратной с шириной, большей высоты, неквадратной с высотой, больше ширины, и т.д.).

[00156] Например, когда ширина текущего блока превышает высоту, все или некоторые режимы интра-предсказания, принадлежащие режимам 2-18, могут не использоваться и могут заменяться всеми или некоторыми режимами интра-предсказания, принадлежащими режимам 67-80. С другой стороны, когда ширина текущего блока меньше высоты, все или некоторые режимы интра-предсказания, принадлежащие режимам 50-66, могут не использоваться и могут заменяться всеми или некоторыми режимами интра-предсказания, принадлежащими режимам от -14 до -1.

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

[00158] [00159] Фиг. 5 иллюстрирует способ декодирования текущего блока на основе интра-предсказания в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00160] Ссылаясь на фиг 5, опорная область для интра-предсказания текущего блока может определяться (S500).

[00161] Опорная область согласно настоящему изобретению может представлять собой область, смежную, по меньшей мере, с одним из слева, сверху, слева сверху, слева снизу или справа сверху относительно текущего блока. Помимо этого, хотя не показано на фиг. 5, опорная область дополнительно может включать в себя область, смежную, по меньшей мере, с одним из справа, справа снизу или снизу относительно текущего блока, и может избирательно использоваться на основе режима интра-предсказания текущего блока, порядка кодирования/декодирования, порядка сканирования и т.д.

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

[00163] Например, в зависимости от настройки кодирования/декодирования, множество пиксельных линий могут включать в себя все из первой-четвертой пиксельных линий либо могут включать в себя только оставшиеся пиксельные линии за исключением третьей пиксельной линии. Альтернативно, множество пиксельных линий могут включать в себя только первую пиксельную линию и четвертую пиксельную линию либо могут включать в себя только первую-третью пиксельные линии.

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

[00165] Например, когда режим интра-предсказания представляет собой планарный режим или DC-режим, использование может быть ограничено только первой пиксельной линией. Альтернативно, когда размер текущего блока меньше или равен предварительно определенному пороговому значению, использование может быть ограничено только первой пиксельной линией. Здесь, размер может выражаться как любое из ширины или высоты текущего блока (например, максимального значения, минимального значения и т.д.), суммы ширины и высоты или числа дискретных отсчетов, принадлежащего текущему блоку. Альтернативно, когда режим интра-предсказания имеет угол, больший предварительно определенного порогового угла (или меньший предварительно определенного порогового угла), может использоваться только первая пиксельная линия. Пороговый угол может представлять собой угол режима интра-предсказания, соответствующего режиму 2 или режиму 66 в вышеуказанной группе потенциально подходящих вариантов режимов предсказания.

[00166] Между тем, может возникать случай, когда, по меньшей мере, один из пикселов опорной области не доступен, и в этом случае, недоступный пиксел может заменяться предварительно определенным значением по умолчанию или доступным пикселом. В дальнейшем это подробно описывается со ссылкой на фиг. 6.

[00167] Ссылаясь на фиг 5, режим интра-предсказания текущего блока может извлекаться (S510).

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

[00169] 1. В случае блока яркости

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

[00171] В частности, когда первый флаг имеет первое значение, режим интра-предсказания текущего блока может определяться на основе группы (candModeList) потенциально подходящих MPM-вариантов, включающей в себя, по меньшей мере, один потенциально подходящий MPM-вариант и MPM-индекс. MPM-индекс может представлять собой информацию, указывающую любой из потенциально подходящих MPM-вариантов, принадлежащих группе потенциально подходящих MPM-вариантов. MPM-индекс может сигнализироваться только тогда, когда множество потенциально подходящих MPM-вариантов принадлежат группе потенциально подходящих MPM-вариантов.

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

[00173] В дальнейшем в этом документе, описывается способ определения группы потенциально подходящих MPM-вариантов.

[00174] (Вариант 1 осуществления) Группа потенциально подходящих MPM-вариантов может включать в себя по меньшей мере одно из режима интра-предсказания соседнего блока (режима A), режима A-n, режима A+n или режима по умолчанию. Значение n может быть целым числом, представляющим собой 1, 2, 3, 4 или больше. Соседний блок может означать блок, смежный слева и/или сверху относительно текущего блока. Тем не менее, настоящее изобретение не ограничено этим, и соседний блок может включать в себя по меньшей мере одно из левого верхнего соседнего блока, левого нижнего соседнего блока или правого верхнего соседнего блока. Режим по умолчанию может представлять собой по меньшей мере одно из планарного режима, DC-режима или предварительно определенного направленного режима. Предварительно определенный направленный режим может включать в себя по меньшей мере одно из горизонтального режима (режима V), вертикального режима (режима H), режима V-k, режима V+k, режима H-k или режима H+k. Здесь, k может быть целым числом, представляющим собой 1, 2, 3, 4, 5 или больше.

[00175] MPM-индекс может указывать MPM, идентичный MPM режима интра-предсказания текущего блока из числа MPM группы потенциально подходящих MPM-вариантов. Таким образом, MPM, указываемый посредством MPM-индекса, может задаваться в качестве режима интра-предсказания текущего блока.

[00176] (Вариант 2 осуществления) Группа потенциально подходящих MPM-вариантов может разделяться на группы потенциально подходящих вариантов m; m может быть целым числом, представляющим собой 2, 3, 4 или больше. В дальнейшем в этом документе, для удобства описания, предполагается, что группа потенциально подходящих MPM-вариантов разделяется на первую группу потенциально подходящих вариантов и вторую группу потенциально подходящих вариантов.

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

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

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

[00180] Между тем, второй флаг может сигнализироваться только тогда, когда вышеописанный первый флаг имеет первое значение (условие 1). Кроме того, второй флаг может сигнализироваться только тогда, когда опорная область текущего блока определяется в качестве первой пиксельной линии. Когда текущий блок ссылается на несмежные пиксельные линии, потенциально подходящие MPM-варианты первой группы потенциально подходящих вариантов могут ограничиваться таким образом, что они не используются. Альтернативно, с другой стороны, когда режим интра-предсказания текущего блока извлекается из первой группы потенциально подходящих вариантов согласно второму флагу, текущий блок может ограничиваться таким образом, что он ссылается только на первую пиксельную линию.

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

[00182] Когда любое из вышеописанных условий 1 или 2 удовлетворяется, второй флаг может сигнализироваться, либо когда оба условия 1 и 2 удовлетворяются, второй флаг может сигнализироваться.

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

[00184] Первая группа потенциально подходящих вариантов может состоять из только r ненаправленных режимов или направленных режимов; r может быть целым числом, представляющим собой 1, 2, 3, 4, 5 или больше; r может составлять фиксированное значение, заранее зафиксированное в устройстве кодирования/декодирования, либо может переменно определяться на основе предварительно определенного параметра кодирования.

[00185] Вторая группа потенциально подходящих вариантов может включать в себя множество потенциально подходящих MPM-вариантов. Тем не менее, вторая группа потенциально подходящих вариантов может быть ограничена таким образом, что она не включает в себя режим по умолчанию, принадлежащий первой группе потенциально подходящих вариантов. Число потенциально подходящих MPM-вариантов может быть равным 2, 3, 4, 5, 6 или больше. Число потенциально подходящих MPM-вариантов может составлять фиксированное значение, заранее зафиксированное в устройстве кодирования/декодирования, либо может переменно определяться на основе параметра кодирования. Потенциально подходящий MPM-вариант может извлекаться на основе режима интра-предсказания соседнего блока, смежного с текущим блоком. Соседний блок может представлять собой блок, смежный, по меньшей мере, с одним из слева, сверху, слева сверху, слева снизу или справа сверху относительно текущего блока.

[00186] В частности, потенциально подходящий MPM-вариант может определяться с учетом того, являются или нет режим (candIntraPredModeA) интра-предсказания левого блока и режим (candIntraPredModeB) интра-предсказания верхнего блока идентичными, и того, представляют candIntraPredModeA и candIntraPredModeB собой или нет ненаправленные режимы.

[00187] [Случай 1]. Например, когда candIntraPredModeA и candIntraPredModeB являются идентичными, и candIntraPredModeA не представляет собой ненаправленный режим, потенциально подходящий MPM-вариант текущего блока может включать в себя по меньшей мере одно из candIntraPredModeA, (candIntraPredModeA-n), (candIntraPredModeA+n) или ненаправленного режима. Здесь, n может быть целым числом, представляющим собой 1, 2 или больше. Ненаправленный режим может включать в себя по меньшей мере одно из планарного режима или DC-режима. В качестве примера, потенциально подходящий MPM-вариант текущего блока может определяться так, как показано нижеприведенной таблице 1. Индекс таблицы 1 указывает позицию или приоритет потенциально подходящего MPM-варианта, но не ограничен этим.

[00188] Табл. 1

Индекс Потенциально подходящий MPM-вариант 0 candIntraPredModeA 1 2+((candIntraPredModeA+61)%64) 2 2+((candIntraPredModeA-1)%64) 3 2+((candIntraPredModeA+60)%64) 4 2+((candIntraPredModeA%64)

[00189] [Случай 2] Альтернативно, когда candIntraPredModeA и candIntraPredModeB не являются идентичными, и как candIntraPredModeA, так и candIntraPredModeB не представляют собой ненаправленный режим, потенциально подходящие MPM-варианты текущего блока могут включать в себя по меньшей мере одно из candIntraPredModeA, candIntraPredModeB, (maxAB-n), (maxAB+n), (minAB-n), (minAB+n) или ненаправленного режима. Здесь, maxAB и minAB означают максимальное значение и минимальное значение candIntraPredModeA и candIntraPredModeB, соответственно, и n может быть целым числом, представляющим собой 1, 2 или больше. Ненаправленный режим может включать в себя по меньшей мере одно из планарного режима или DC-режима. В качестве примера, на основе разностного значения D между candIntraPredModeA и candIntraPredModeB, потенциально подходящий вариант режима второй группы потенциально подходящих вариантов может определяться так, как показано нижеприведенной таблице 2. Индекс таблицы 2 указывает позицию или приоритет потенциально подходящего MPM-варианта, но не ограничен этим.

[00190] Табл. 2

Индекс Потенциально подходящий вариант режима
(D=1)
Потенциально подходящий вариант режима
(D=2)
Потенциально подходящий вариант режима
(D>=62)
Потенциально подходящий вариант режима
(Другой)
0 candIntraPredModeA candIntraPredModeA candIntraPredModeA candIntraPredModeA 1 candIntraPredModeB candIntraPredModeB candIntraPredModeB candIntraPredModeB 2 2+((minAB+61)%64) 2+((minAB-1)%64) 2+((minAB-1)%64) 2+((minAB+61)%64) 3 2+((maxAB-1)%64) 2+((minAB+61)%64) 2+((maxAB+61)%64) 2+((minAB-1)%64) 4 2+((minAB+60)%64) 2+((maxAB-1)%64) 2+(minAB%64) 2+((maxAB+61)%64)

[00191] В вышеприведенной таблице 2, один из потенциально подходящих MPM-вариантов извлекается на основе minAB, и другой извлекается на основе maxAB. Тем не менее, настоящее изобретение не ограничено этим, и потенциально подходящий MPM-вариант может извлекаться на основе maxAB независимо от minAB, и с другой стороны, может извлекаться на основе minAB независимо от maxAB.

[00192] [Случай 3]. Когда candIntraPredModeA и candIntraPredModeB не являются идентичными, и только один из candIntraPredModeA и candIntraPredModeB представляет собой ненаправленный режим, потенциально подходящий MPM-вариант текущего блока может включать в себя по меньшей мере одно из maxAB, (maxAB-n), (maxAB+n) или ненаправленного режима. Здесь, maxAB обозначает максимальное значение candIntraPredModeA и candIntraPredModeB, и n может быть целым числом, представляющим собой 1, 2 или больше. Ненаправленный режим может включать в себя по меньшей мере одно из планарного режима или DC-режима. В качестве примера, потенциально подходящий MPM-вариант текущего блока может определяться так, как показано нижеприведенной таблице 3. Индекс таблицы 3 указывает позицию или приоритет потенциально подходящего MPM-варианта, но не ограничен этим.

[00193] Табл. 3

Индекс Потенциально подходящий MPM-вариант 0 maxAB 1 2+((maxAB+61)%64) 2 2+((maxAB-1)%64) 3 2+((maxAB+60)%64) 4 2+(maxAB%64)

[00194] [Случай 4] Когда candIntraPredModeA и candIntraPredModeB не являются идентичными, и как candIntraPredModeA, так и candIntraPredModeB представляют собой ненаправленные режимы, потенциально подходящие MPM-варианты текущего блока могут включать в себя ненаправленный режим, вертикальный режим, горизонтальный режим, (вертикальный режим - m), (вертикальный режим+m), (горизонтальный режим - m) или (горизонтальный режим+m). Здесь, m может быть целым числом, представляющим собой 1, 2, 3, 4 или больше. Ненаправленный режим может включать в себя по меньшей мере одно из планарного режима или DC-режима. В качестве примера, потенциально подходящий MPM-вариант текущего блока может определяться так, как показано в нижеприведенной таблице 4. Индекс таблицы 4 указывает позицию или приоритет потенциально подходящего MPM-варианта, но не ограничен этим. Например, индекс 1 может назначаться горизонтальному режиму, или наибольший индекс может назначаться ему. Дополнительно, потенциально подходящий MPM-вариант может включать в себя по меньшей мере одно из диагонального режима (например, режима 2, режима 34, режима 66), (диагонального режима - m) или (диагонального режима+m).

[00195] Табл. 4

Индекс Потенциально подходящий MPM-вариант 0 INTRA_DC 1 Вертикальный режим 2 Горизонтальный режим 3 (Вертикальный режим - 4) 4 (Вертикальный режим+4)

[00196] Режим (IntraPredMode) интра-предсказания, декодированный посредством вышеописанного процесса, может изменяться/корректироваться на основе предварительно определенного смещения, что подробно описывается со ссылкой на фиг. 7.

2. В случае блоков цветности

[00197] Предварительно заданные режимы интра-предсказания для блока цветности могут разделяться на первую группу и вторую группу. Здесь, первая группа может быть сконфигурирована с режимами предсказания на основе межкомпонентных ссылок, и вторая группа может быть сконфигурирована со всеми или некоторыми вышеописанными предварительно заданными режимами интра-предсказания.

[00198] Режим интра-предсказания блока цветности может извлекаться избирательно с использованием либо первой группы, либо второй группы. Выбор может выполняться на основе предварительно определенного третьего флага. Третий флаг может указывать то, извлекается режим интра-предсказания блока цветности на основе первой группы или второй группы.

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

[00200] С другой стороны, когда третий флаг имеет второе значение, режим интра-предсказания блока цветности может определяться в качестве одного из множества режимов интра-предсказания, принадлежащих второй группе. В качестве примера, вторая группа может задаваться так, как показано в таблице 5, и режим интра-предсказания блока цветности может извлекаться на основе информации (intra_chroma_pred_mode), сигнализируемой посредством устройства кодирования, и режима (IntraPredModeY) интра-предсказания блока яркости.

[00201] Табл. 5

intra_chroma_pred_mode[xB][yB] IntraPredModeY[xCb+cbWidth/2][yCb+cbHeight/2] 0 50 18 1 X (0<=X<34) 0 66 0 0 0 0 1 50 66 50 50 50 2 18 18 66 18 18 3 1 1 1 66 1 4 0 50 18 1 X

[00202] Согласно таблице 5, режим интра-предсказания блока цветности может определяться на основе сигнализируемой информации и режима интра-предсказания блока яркости. Номера режимов, перечисленные в таблице 5, соответствуют номерам режимов на фиг. 4. Например, когда значение сигнализируемой информации intra_chroma_pred_mode равно 0, режим интра-предсказания блока цветности может определяться в качестве диагонального режима 66 или планарного режима (0) согласно режиму интра-предсказания блока яркости. Альтернативно, когда значение сигнализируемой информации intra_chroma_pred_mode равно 4, режим интра-предсказания блока цветности может задаваться идентичным режиму интра-предсказания блока яркости. Между тем, режим (IntraPredModeY) интра-предсказания блока яркости может представлять собой режим интра-предсказания субблока, включающий в себя конкретную позицию в блоке яркости. Здесь, конкретная позиция в блоке яркости может соответствовать центральной позиции в блоке цветности.

[00203] Тем не менее, может иметь место то, что субблок в блоке яркости, соответствующем центральной позиции в блоке цветности, не доступен. Здесь, "не доступен" может представлять собой случай, в котором соответствующий субблок не кодируется в интра-режиме. Например, когда субблок не имеет режима интра-предсказания, к примеру, когда соответствующий субблок кодируется в интер-режиме или опорном режиме на основе текущих кадров, может определяться то, что соответствующий субблок не доступен. В этом случае, режим (IntraPredModeY) интра-предсказания блока яркости может задаваться равным режиму, заранее зафиксированному в устройстве кодирования/декодирования. Здесь, заранее зафиксированный режим может представлять собой любое из планарного режима, DC-режима, вертикального режима или горизонтального режима.

[00204] Ссылаясь на фиг 5, текущий блок может декодироваться на основе опорной области для интра-предсказания и режима интра-предсказания (S520).

[00205] Декодирование текущего блока может выполняться в единицах субблоков текущего блока. С этой целью, текущий блок может разделяться на множество субблоков. Здесь, текущий блок может соответствовать узлу-листу. Узел-лист может означать блок кодирования, который более не разделяется на меньшие блоки кодирования. Таким образом, узел-лист может означать блок, который более не разделяется через разделение на блоки на основе дерева, описанное выше.

[00206] Разделение может выполняться на основе размера текущего блока (вариант 1 осуществления).

[00207] Например, когда размер текущего блока меньше предварительно определенного порогового размера, текущий блок может разделяться на два вертикально или горизонтально. С другой стороны, когда размер текущего блока превышает или равен пороговому размеру, текущий блок может разделяться на четыре вертикально или горизонтально. Пороговый размер может сигнализироваться посредством устройства кодирования или может составлять фиксированное значение, предварительно заданное в устройстве декодирования. Например, пороговый размер выражается как NxM, и N и M могут быть равными 4, 8, 16 или больше. N и M могут быть идентичными либо могут задаваться друг отлично друг от друга.

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

[00209] Разделение может выполняться на основе формы текущего блока (вариант 2 осуществления).

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

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

[00212] Разделение может выполняться посредством избирательного применения любого из вышеописанного варианта 1 или 2 осуществления, или разделение может выполняться на основе комбинации вариантов 1 и 2 осуществления.

[00213] Разделение на два означает разделение на два в вертикальном или горизонтальном направлении, и разделение на четыре может включать в себя разделение на четыре в вертикальном или горизонтальном направлении либо в разделение на четыре в вертикальном и горизонтальном направлениях.

[00214] В вышеприведенном варианте осуществления, разделение на два или на четыре описывается, но настоящее изобретение не ограничено этим, и текущий блок может разделяться на три в вертикальном или горизонтальном направлении. В этом случае, отношение ширины или высоты может составлять (1:1:2), (1:2:1) или (2:1:1).

[00215] Информация относительно того, следует или нет разделять на единицы субблоков, следует или нет разделять на четыре, направления разделения и числа разделений, может сигнализироваться из устройства кодирования или переменно определяться посредством устройства декодирования на основе предварительно определенного параметра кодирования. Здесь, параметр кодирования может означать размер/форму блока, тип разделения (разделение на четыре, разделение на два, разделение на три), режим интра-предсказания, диапазон/позицию соседнего пиксела для интра-предсказания, тип компонента (например, сигнал яркости и сигнал цветности), максимальный/минимальный размер блока преобразования, тип преобразования (например, пропуск преобразования, DCT2, DST7, DCT8) и т.п.

[00216] Субблоки относительно текущего блока могут последовательно предсказываться/восстанавливаться согласно предварительно определенному приоритету. В этом случае, первый субблок относительно текущего блока может предсказываться/восстанавливаться, и второй субблок может предсказываться/восстанавливаться со ссылкой на предварительно декодированный первый субблок. Относительно приоритета он предсказывается/восстанавливается в порядке сверху->вниз, но каждый субблок сверху и снизу может предсказываться/восстанавливаться в порядке слева->направо. Альтернативно, он предсказывается/восстанавливается в порядке сверху->вниз, но каждый субблок сверху и снизу может предсказываться/восстанавливаться в порядке справа->налево. Альтернативно, он предсказывается/восстанавливается в порядке снизу->вверх, но каждый субблок снизу и сверху может предсказываться/восстанавливаться в порядке слева->направо. Альтернативно, он предсказывается/восстанавливается в порядке снизу->вверх, но каждый субблок снизу и сверху может предсказываться/восстанавливаться в порядке справа->вверх. Альтернативно, он предсказывается/восстанавливается в порядке слева->направо, но каждый субблок слева и справа может предсказываться/восстанавливаться в порядке сверху->вниз. Альтернативно, он предсказывается/восстанавливается в порядке слева->направо, но каждый субблок слева и справа может предсказываться/восстанавливаться в порядке снизу->вверх. Альтернативно, он предсказывается/восстанавливается в порядке справа->налево, но каждый субблок справа и слева может предсказываться/восстанавливаться в порядке сверху->вниз. Альтернативно, он предсказывается/восстанавливается в порядке справа->налево, но каждый субблок справа и слева может предсказываться/восстанавливаться в порядке снизу->вверх.

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

[00218] [00219] Фиг. 6 иллюстрирует способ замены недоступного пиксела в опорной области в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00220] Как описано выше, опорная область может определяться в качестве одной из первой-четвертой пиксельных линий. Тем не менее, в настоящем варианте осуществления, для удобства описания, предполагается, что опорная область представляет собой первую пиксельную линию. Настоящий вариант осуществления может применяться идентично или аналогично ко второй-четвертой пиксельным линиям.

[00221] Когда все пикселы в опорной области не доступны, соответствующий пиксел может заменяться одним из диапазона пиксельных значений, выражаемых посредством битовой глубины, или диапазона фактических пиксельных значений изображения. Например, максимальное значение, минимальное значение, срединное значение, среднее значение и т.д. диапазона пиксельных значений может соответствовать значению, которое должно заменяться. Когда битовая глубина равна 8, все пикселы опорной области могут заполняться 128 при замене срединным значением битовой глубины.

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

[00223] (Этап 1) Определяется то, не доступен или доступен левый верхний пиксел TL, смежный с текущим блоком (блоком предсказания). Если левый верхний пиксел TL не доступен, пиксел может заменяться срединным значением битовой глубины.

[00224] (Этап 2) Можно последовательно осуществлять поиск касательно того, существует или нет недоступный пиксел в верхней опорной области. Здесь, верхняя опорная область может включать в себя пиксельную линию, смежную, по меньшей мере, с одним из сверху или справа сверху относительно текущего блока. Длина верхней опорной области может быть равной ширине текущего блока (nW), (2*nW) или сумме (nW+nH) ширины и высоты.

[00225] Здесь, направление поиска может выполняться слева направо. В этом случае, когда определяется то, что пиксел p[x][-1] не доступен, пиксел p[x][-1] может заменяться соседним пикселом p[x-1][-1]. Альтернативно, направление поиска может выполняться справа налево. В этом случае, когда определяется то, что пиксел p[x][-1] не доступен, пиксел p[x][-1] может заменяться соседним пикселом p[x+1][-1].

[00226] (Этап 3) Можно последовательно осуществлять поиск касательно того, существует или нет недоступный пиксел в левой опорной области. Здесь, левая опорная область может включать в себя пиксельную линию, смежную, по меньшей мере, с одним из слева или слева снизу относительно текущего блока. Длина левой опорной области может быть равной высоте (nH) текущего блока, (2*nH) или сумме (nW+nH) ширины и высоты.

[00227] Здесь, направление поиска может выполняться сверху вниз. В этом случае, когда определяется то, что пиксел p[-1][y] не доступен, пиксел p[-1][y] может заменяться соседним пикселом p[-1][y-1]. Альтернативно, направление поиска может выполняться снизу вверх. В этом случае, когда определяется то, что пиксел p[-1][y] не доступен, пиксел p[-1][y] может заменяться соседним пикселом p[-1][y+1].

[00228] (Этап 4) Можно последовательно осуществлять поиск касательно того, существует или нет недоступный пиксел в правой опорной области. Здесь, правая опорная область может включать в себя пиксельную линию, смежную справа от текущего блока. Длина правой опорной области может быть идентичной высоте (nH) текущего блока.

[00229] Здесь, направление поиска может выполняться сверху вниз. В этом случае, когда определяется то, что пиксел p[nW][y] не доступен, пиксел p[nW][y] может заменяться соседним пикселом p[nW][y-1]. Альтернативно, направление поиска может выполняться снизу вверх. В этом случае, когда определяется то, что пиксел p[nW][y] не доступен, пиксел p[nW][y] может заменяться соседним пикселом p[nW][y+1].

[00230] Альтернативно, отдельный процесс поиска может опускаться для правой опорной области. Вместо этого, недоступный пиксел в правой опорной области может заполняться срединным значением битовой глубины. Альтернативно, недоступный пиксел в правой опорной области может заменяться одним из правого верхнего пиксела TR или правого нижнего пиксела BR, смежного с текущим блоком, или может заменяться его репрезентативным значением. Здесь, репрезентативное значение может выражаться как среднее значение, максимальное значение, минимальное значение, значение режима, срединное значение и т.п. Альтернативно, недоступный пиксел в правой опорной области может извлекаться посредством применения предварительно определенного весового коэффициента к каждому из правого верхнего пиксела TR и правого нижнего пиксела BR. В этом случае, весовой коэффициент может определяться с учетом первого расстояния между недоступным пикселом в правой опорной области и правым верхним пикселом TR и второго расстояния между недоступным пикселом в правой опорной области и правым нижним пикселом BR. Правый нижний пиксел BR может заполняться одним из левого верхнего пиксела TL, правого верхнего пиксела TR или левого нижнего пиксела BL, смежного с текущим блоком, или может заменяться репрезентативным значением, по меньшей мере, двух из левого верхнего пиксела TL, правого верхнего пиксела TR или левого нижнего пиксела BL. Здесь, репрезентативное значение является таким, как описано выше. Альтернативно, правый нижний пиксел BR может извлекаться посредством применения предварительно определенного весового коэффициента, по меньшей мере, к двум из левого верхнего пиксела TL, правого верхнего пиксела TR или левого нижнего пиксела BL, соответственно. Здесь, весовой коэффициент может определяться с учетом расстояния от правого нижнего пиксела BR.

[00231] Между тем, вышеописанный процесс замены не ограничен выполнением в приоритете сверху->слева->направо. Например, процесс замены может выполняться в приоритете слева->вверх->вправо. Альтернативно, процесс замены может выполняться параллельно для верхней и левой опорных областей и затем может выполняться для правой опорной области. Помимо этого, процесс этапа 1 может опускаться, когда процесс замены выполняется в приоритете слева->вверх->вправо.

[00232] [00233] Фиг. 7 иллюстрирует способ изменения/коррекции режима интра-предсказания в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00234] Декодированный режим (IntraPredMode) интра-предсказания может изменяться на основе предварительно определенного смещения. Применение смещения может избирательно выполняться на основе по меньшей мере одного из свойства блока, т.е. размера, формы, информации разделения, глубины разделения, значения режима интра-предсказания или типа компонента. Здесь, блок может означать текущий блок и/или соседний блок относительно текущего блока.

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

[00236] Например, если первая информация имеет первое значение, текущий блок разделяется на множество субблоков, иначе, текущий блок может не разделяться на множество субблоков (NO_SPLIT). Когда текущий блок разделяется на множество субблоков, текущий блок может горизонтально разделяться (HOR_SPLIT) или вертикально разделяться (VER_SPLIT) на основе второй информации. В этом случае, текущий блок может разделяться на k субблоков. Значение k может быть целым числом, представляющим собой 2, 3, 4 или более. Альтернативно, k может быть ограничен степенью 2, к примеру, 1, 2, 4 и т.д. Альтернативно, в случае блока, в котором по меньшей мере одно из ширины или высоты текущего блока равно 4 (например, 4×8, 8×4), k задается равным 2, иначе, k задается равным 4, 8 или 16. Когда текущий блок не разделяется (NO_SPLIT), k может задаваться равным 1.

[00237] Текущий блок может разделяться на субблоки, имеющие идентичную ширину и высоту, или может разделяться на субблоки, имеющие различные ширины и высоты. Текущий блок может разделяться на единицы блоков NxM (например, 2×2, 2×4, 4×4, 8×4, 8×8 и т.д.), заранее зафиксированные в устройстве кодирования/декодирования, независимо от свойства вышеописанного блока.

[00238] Смещение может применяться только тогда, когда размер текущего блока меньше или равен предварительно определенному пороговому значению T1. Здесь, пороговое значение T1 может означать максимальный размер блока, к которому применяется смещение. Альтернативно, оно может применяться только тогда, когда размер текущего блока превышает или равен предварительно определенному пороговому значению T2. В этом случае, пороговое значение T2 может означать минимальный размер блока, к которому применяется смещение. Пороговое значение может сигнализироваться через поток битов. Альтернативно, оно может переменно определяться посредством устройства декодирования на основе по меньшей мере одного из вышеописанных свойств блока либо может составлять фиксированное значение, заранее зафиксированное в устройстве кодирования/декодирования.

[00239] Альтернативно, смещение может применяться только тогда, когда форма текущего блока является неквадратной. Например, когда следующие условия удовлетворяются, предварительно определенное смещение (например, 65) может суммироваться с IntraPredMode текущего блока.

[00240] - nW превышает nH

[00241] - IntraPredMode превышает или равен 2

[00242] - IntraPredMode меньше (whRatio>1)? (8+2*whRatio): 8

[00243] Здесь, nW и nH обозначают ширину и высоту текущего блока, соответственно, и whRatio может задаваться равным Abs (Log2(nW/nH)).

[00244] Альтернативно, когда следующие условия удовлетворяются, предварительно определенное смещение (например, 67) может вычитаться из IntraPredMode текущего блока.

[00245] - nH превышает nW

[00246] - IntraPredMode меньше или равен 66

[00247] - IntraPredMode превышает (whRatio>1)? (60-2*whRatio): 60

[00248] Как описано выше, конечный режим интра-предсказания может определяться посредством суммирования/вычитания смещения с/из режима (IntraPredMode) интра-предсказания текущего блока с учетом свойства текущего блока. Тем не менее, настоящее изобретение не ограничено этим, и применение смещения может выполняться идентичным/аналогичным способом с учетом свойств (например, размера, формы) субблока вместо текущего блока.

[00249] [00250] Фиг. 8 иллюстрирует способ предсказания на основе межкомпонентных ссылок в варианте осуществления, к которому применяется настоящее раскрытие.

[00251] Текущий блок может разделяться на блок яркости и блок цветности согласно типу компонента. Блок цветности может предсказываться с использованием пиксела восстановленного блока яркости. Это упоминается как межкомпонентная ссылка. В этом варианте осуществления, предполагается, что блок цветности имеет размер (nTbW x nTbH), и блок яркости, соответствующий блоку цветности, имеет размер (2*nTbW x 2*nTbH).

[00252] Ссылаясь на фиг 8, режим интра-предсказания блока цветности может определяться (S800).

[00253] Как описано на фиг. 5, режим интра-предсказания блока цветности может определяться в качестве одного из одного или более режимов предсказания на основе межкомпонентных ссылок, принадлежащих первой группе согласно третьему флагу. Первая группа может состоять только из режимов предсказания на основе межкомпонентных ссылок. Устройство кодирования/декодирования может задавать, по меньшей мере, один из INTRA_LT_CCLM, INTRA_L_CCLM или INTRA_T_CCLM в качестве режима предсказания на основе межкомпонентных ссылок. INTRA_LT_CCLM представляет собой режим, который ссылается на левую и верхнюю области, смежные с сигналом яркости/блоками цветности, INTRA_L_CCLM представляет собой режим, который ссылается на левую область, смежную с сигналом яркости/блоками цветности, и INTRA_T_CCLM представляет собой режим, который ссылается на верхнюю область, смежную с сигналом яркости/блоками цветности.

[00254] Предварительно определенный индекс может использоваться для того, чтобы выбирать любой из режимов предсказания на основе межкомпонентных ссылок. Индекс может представлять собой информацию, указывающую любой из INTRA_LT_CCLM, INTRA_L_CCLM или INTRA_T_CCLM. Индекс может сигнализироваться только тогда, когда третий флаг имеет первое значение. Режимы предсказания на основе межкомпонентных ссылок, принадлежащие первой группе, и индексы, назначенные каждому режиму предсказания, показаны в нижеприведенной таблице 6.

[00255] Табл. 6

Idx Режим предсказания на основе межкомпонентных ссылок 0 INTRA_LT_CCLM 1 INTRA_L_CCLM 2 INTRA_T_CCLM

[00256] Таблица 6 представляет собой только пример индекса, назначенного каждому режиму предсказания, но не ограничена этим. Таким образом, как показано в таблице 6, индексы могут назначаться в порядке приоритетов в INTRA_LT_CCLM, INTRA_L_CCLM, INTRA_T_CCLM либо индексы могут назначаться в порядке приоритетов в INTRA_LT_CCLM, INTRA_T_CCLM, INTRA_L_CCLM. Альтернативно, INTRA_LT_CCLM может иметь более низкую очередность по приоритету, чем INTRA_T_CCLM или INTRA_L_CCLM. Третий флаг может избирательно сигнализироваться на основе информации, указывающей то, разрешается или нет межкомпонентная ссылка. Например, если значение информации равно 1, третий флаг может сигнализироваться, иначе, третий флаг может не сигнализироваться. Здесь, информация может определяться в качестве 0 или 1 на основе предварительно определенного условия, описанного позднее.

[00257] (Условие 1) Когда четвертый флаг, указывающий то, разрешается или нет предсказание на основе межкомпонентных ссылок, равен 0, информация может задаваться равной 0. Четвертый флаг может сигнализироваться, по меньшей мере, в одном из VPS, SPS, PPS, PH и заголовка среза.

[00258] (Условие 2) Когда по меньшей мере одно из следующих подусловий удовлетворяется, информация может задаваться равной 1.

[00259] - qtbtt_dual_tree_intra_flag равен 0

[00260] - тип среза не представляет собой I-срез

[00261] - размер блока дерева кодирования меньше 64×64

[00262] В условии 2, qtbtt_dual_tree_intra_flag может указывать то, разделяется или нет блок дерева кодирования неявно на блок кодирования 64×64, и то, разделяется или нет блок кодирования 64×64 на основе сдвоенного дерева. Сдвоенное дерево может означать способ, в котором компонент яркости и компонент цветности разделяются с независимой структурой разделения. Размер блока дерева кодирования (CtbLog2Size) может представлять собой размер (например, 64×64, 128×128, 256×256), предварительно заданный в устройстве кодирования/декодирования, либо может кодироваться и сигнализироваться посредством устройства кодирования.

[00263] (Условие 3) Когда по меньшей мере одно из следующих подусловий удовлетворяется, информация может задаваться равной 1.

[00264] - ширина и высота первого верхнего блока равны 64

[00265] - глубина первого верхнего блока является идентичной (CtbLog2Size-6), первый верхний блок разделяется на основе горизонтального BT, и второй верхний блок составляет 64×32

[00266] - глубина первого верхнего блока превышает (CtbLog2Size-6)

[00267] - глубина первого верхнего блока является идентичной (CtbLog2Size-6), первый верхний блок разделяется на основе горизонтального BT, и второй верхний блок разделяется на основе вертикального BT

[00268] В условии 3, первый верхний блок может представлять собой блок, включающий в себя текущий блок цветности в качестве нижнего блока. Например, когда глубина текущего блока цветности составляет k, глубина первого верхнего блока составляет (k-n), и n может составлять 1, 2, 3, 4 или более. Глубина первого верхнего блока может означать только глубину согласно разделению на основе дерева квадрантов или может означать глубину согласно разделению по меньшей мере одного из дерева квадрантов, двоичного дерева или троичного дерева. Второй верхний блок представляет собой нижний блок, принадлежащий первому верхнему блоку, и может иметь глубину, меньшую текущего блока цветности, и глубину, большую первого верхнего блока. Например, когда глубина текущего блока цветности составляет k, глубина второго верхнего блока составляет (k-m), и m может быть натуральным числом, меньшим n.

[00269] Когда ни одно из вышеописанных условий 1-3 не удовлетворяется, информация может задаваться равной 0.

[00270] Тем не менее, даже когда по меньшей мере одно из условий 1-3 удовлетворяется, когда по меньшей мере одно из следующих подусловий удовлетворяется, информация может сбрасываться до 0.

[00271] - первый верхний блок составляет 64×64, и вышеописанное предсказание на основе субблоков выполняется

[00272] - по меньшей мере одно из ширины или высоты первого верхнего блока меньше 64, и глубина первого верхнего блока равна (CtbLog2Size-6)

[00273] Ссылаясь на фиг 8, область яркости для межкомпонентной ссылки блока цветности может указываться (S810).

[00274] Область яркости может включать в себя по меньшей мере одно из блока яркости или соседней области, смежной с блоком яркости. Здесь, блок яркости может задаваться как область, включающая в себя пикселы pY[x][y] (x=0...nTbW*2-1, y=0...nTbH*2-1). Пикселы могут означать восстановленные значения до того, как применяется внутриконтурный фильтр.

[00275] Соседняя область может включать в себя по меньшей мере одно из левой соседней области, верхней соседней области или левой верхней соседней области. Левая соседняя область может задаваться в качестве области, включающей в себя пикселы pY[x][y] (x=-1...-3, y=0...2*numSampL-1). Настройка может выполняться только тогда, когда значение numSampL превышает 0. Верхняя соседняя область может задаваться в качестве области, включающей в себя пикселы pY[x][y] (x=0...2*numSampT-1, y=-1...-3). Настройка может выполняться только тогда, когда значение numSampT превышает 0. Левая верхняя соседняя область может задаваться в качестве области, включающей в себя пикселы pY[x][y] (x=-1, y=-1,-2). Настройка может выполняться только тогда, когда левая верхняя область блока яркости доступна.

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

[00277] Например, когда режим интра-предсказания текущего блока представляет собой INTRA_LT_CCLM, он может извлекаться на основе уравнения 9. Здесь, INTRA_LT_CCLM может означать режим, в котором межкомпонентная ссылка выполняется на основе левой и верхней соседних областей по отношению к текущему блоку.

[00278] уравнение 1

[00279] numSampT=availT? nTbW: 0

[00280] numSampL=availL? nTbH: 0

[00281] Согласно уравнению 1, numSampT извлекается в качестве nTbW, когда верхняя соседняя область по отношению к текущему блоку доступна. В противном случае, numSampT может извлекаться в качестве 0. Аналогично, numSampL извлекается в качестве nTbH, когда левая соседняя область по отношению к текущему блоку доступна. В противном случае, numSampL может извлекаться в качестве 0.

[00282] Наоборот, когда режим интра-предсказания текущего блока не представляет собой INTRA_LT_CCLM, он может извлекаться на основе нижеприведенного уравнения 2.

[00283] уравнение 2

[00284] numSampT=(availT && predModeIntra==INTRA_T_CCLM)? (nTbW+numTopRight): 0

[00285] numSampL=(availL && predModeIntra==INTRA_L_CCLM)? (nTbH+numLeftBelow): 0

[00286] В уравнении 2, INTRA_T_CCLM может означать режим, в котором межкомпонентная ссылка выполняется на основе верхней соседней области по отношению к текущему блоку. INTRA_L_CCLM может означать режим, в котором межкомпонентная ссылка выполняется на основе левой соседней области по отношению к текущему блоку. numTopRight может означать число всех или некоторых пикселов, принадлежащих правой верхней соседней области по отношению к блоку цветности. Некоторые пикселы могут означать доступные пикселы из пикселов, принадлежащих самой нижней строке пикселов соответствующей области. При определении доступности, то, доступны или нет пикселы, может определяться последовательно в направлении слева направо. Этот процесс может выполняться до тех пор, пока недоступный пиксел не находится; numLeftBelow может означать число всех или некоторых пикселов, принадлежащих левой нижней соседней области по отношению к блоку цветности. Некоторые пикселы могут означать доступные пикселы из пикселов, принадлежащих самой правой пиксельной линии (столбцу) соответствующей области. При определении доступности, то, доступны или нет пикселы, может определяться последовательно в направлении сверху вниз. Этот процесс может выполняться до тех пор, пока недоступный пиксел не находится.

[00287] Ссылаясь на фиг 8, понижающая дискретизация может выполняться для области яркости, указываемой на S810 (S820).

[00288] Понижающая дискретизация может включать в себя по меньшей мере одно из: 1. понижающей дискретизации блока яркости, 2. понижающей дискретизации левой соседней области по отношению к блоку яркости, или 3Из понижающей дискретизации верхней соседней области по отношению к блоку яркости. Это подробнее описывается ниже.

[00289] 1. Понижающая дискретизация блока яркости

[00290] Первый вариант осуществления

[00291] Пиксел pDsY[x][y] (x=0...nTbW-1, y=0...nTbH-1) понижающе дискретизированного блока яркости может извлекаться на основе соответствующего пиксела pY[2*x][2*y] блока яркости и соседнего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела, правого соседнего пиксела, верхнего соседнего пиксела или нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pDsY[x][y] может извлекаться на основе нижеприведенного уравнения 3.

[00292] уравнение 3

[00293] pDsY[x][y]=(pY[2 * x][2 * y-1]+pY[2 * x-1][2 * y]+4 * pY[2 * x][2 * y]+pY[2 * x+1][2 * y]+pY[2 * x][2 * y+1]+4)>>3

[00294] Тем не менее, может иметь место то, что левая/верхняя соседняя область по отношению к текущему блоку не доступны. Когда левая соседняя область по отношению к текущему блоку не доступна, пиксел pDsY[0][y] (y=1...nTbH-1) понижающе дискретизированного блока яркости может извлекаться на основе соответствующего пиксела pY[0[2*y] блока яркости и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из верхнего соседнего пиксела или нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pDsY[0][y] (y=1...nTbH-1) может извлекаться на основе нижеприведенного уравнения 4.

[00295] уравнение 4

[00296] pDsY[0][y]=(pY[0][2 * y-1]+2 * pY[0][2 * y]+pY[0][2 * y+1]+2)>>2

[00297] Когда верхняя соседняя область по отношению к текущему блоку не доступна, пиксел pDsY[x][0] (x=1...nTbW-1) понижающе дискретизированного блока яркости может извлекаться на основе соответствующего пиксела pY[2*x][0] блока яркости и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела или правого соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pDsY[x][0] (x=1...nTbW-1), может извлекаться на основе нижеприведенного уравнения 5.

[00298] уравнение 5

[00299] pDsY[x][0]=(pY[2 * x-1][0+2 * pY[2 * x][0+pY[2 * x+1][0+2)>>2

[00300] Пиксел pDsY[0][0] понижающе дискретизированного блока яркости может извлекаться на основе соответствующего пиксела pY[0[0] блока яркости и/или соседнего пиксела относительно соответствующего пиксела. Позиция соседнего пиксела может варьироваться в зависимости от того, доступны или нет левая/верхняя соседние области по отношению к текущему блоку.

[00301] Например, когда левая соседняя область доступна, но верхняя соседняя область не доступна, pDsY[0][0] может извлекаться на основе нижеприведенного уравнения 6.

[00302] уравнение 6

[00303] pDsY[0][0]=(pY[0][-1]+2 * pY[0][0]+pY[0][1]+2)>>2

[00304] Наоборот, когда левая соседняя область не доступна, но верхняя соседняя область доступна, pDsY[0][0] может извлекаться на основе нижеприведенного уравнения 7.

[00305] уравнение 7

[00306] pDsY[0][0]=(pY[0][-1]+2 * pY[0][0]+pY[0][1]+2)>>2

[00307] В другом примере, когда левая и верхняя соседние области не доступны, pDsY[0][0] может задаваться в качестве соответствующего пиксела pY[0[0] блока яркости.

[00308] Второй вариант осуществления

[00309] Пиксел pDsY[x][y] (x=0...nTbW-1, y=0...nTbH-1) понижающе дискретизированного блока яркости может извлекаться на основе соответствующего пиксела pY[2*x][2*y] блока яркости и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из нижнего соседнего пиксела, левого соседнего пиксела, правого соседнего пиксела, левого нижнего соседнего пиксела или правого нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pDsY[x][y] может извлекаться на основе нижеприведенного уравнения 8.

[00310] уравнение 8

[00311] pDsY[x][y]=(pY[2 * x-1][2 * y]+pY[2 * x-1][2 * y+1]+2* pY[2 * x][2 * y]+2*pY[2 * x][2 * y+1]+pY[2 * x+1][2 * y]+pY[2 * x+1][2 * y+1]+4)>>3

[00312] Тем не менее, когда левая соседняя область по отношению к текущему блоку не доступна, пиксел pDsY[0][y] (y=0...nTbH-1) понижающе дискретизированного блока яркости может извлекаться на основе соответствующего пиксела pY[0[2*y] блока яркости и нижнего соседнего пиксела по отношению к нему. Например, пиксел pDsY[0][y] (y=0...nTbH-1), может извлекаться на основе нижеприведенного уравнения 9.

[00313] уравнение 9

[00314] pDsY[0][y]=(pY[0][2 * y]+pY[0][2 * y+1]+1)>>1

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

[00316] [00317] 2. Понижающая дискретизация левой соседней области по отношению к блоку яркости

[00318] Первый вариант осуществления

[00319] Пиксел pLeftDsY[y] (y=0...numSampL-1) понижающе дискретизированной левой соседней области может извлекаться на основе соответствующего пиксела pY[-2][2*y] левой соседней области и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела, правого соседнего пиксела, верхнего соседнего пиксела или нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pLeftDsY[y] может извлекаться на основе нижеприведенного уравнения 10.

[00320] уравнение 10

[00321] pLeftDsY[y]=(pY[-2][2 * y-1]+pY[-3][2 * y]+4 * pY[-2][2 * y]+pY[-1][2 * y]+pY[-2][2 * y+1]+4)>>3

[00322] Тем не менее, когда левая верхняя соседняя область по отношению к текущему блоку не доступна, пиксел pLeftDsY[0] понижающе дискретизированной левой соседней области может извлекаться на основе соответствующего пиксела pY[-2][0] левой соседней области и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела или правого соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pLeftDsY[0] может извлекаться на основе нижеприведенного уравнения 11.

[00323] уравнение 11

[00324] pLeftDsY[0]=(pY[-3][0]+2 * pY[-2][0]+pY[-1][0]+2)>>2

[00325] Второй вариант осуществления

[00326] Пиксел pLeftDsY[y] (y=0...numSampL-1) понижающе дискретизированной левой соседней области может извлекаться на основе соответствующего пиксела pY[-2][2*y] левой соседней области и соседнего пиксела около соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из нижнего соседнего пиксела, левого соседнего пиксела, правого соседнего пиксела, левого нижнего соседнего пиксела или правого нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pLeftDsY[y] может извлекаться на основе следующего уравнения 12.

[00327] уравнение 12

[00328] pLeftDsY[y]=(pY[-1][2 * y]+pY[-1][2 * y+1]+2* pY[-2][2 * y]+2*pY[-2][2 * y+1]+pY[-3][2 * y]+pY[-3][2 * y+1]+4)>>3

[00329] Аналогично, понижающая дискретизация левой соседней области может выполняться на основе одного из вариантов 1 и 2 осуществления, как описано выше. Здесь, один из вариантов 1 и 2 осуществления может выбираться на основе предварительно определенного флага. Флаг указывает то, имеет или нет понижающе дискретизированный пиксел яркости позицию, идентичную позиции исходного пиксела яркости. Это является идентичным тому, что описано выше.

[00330] Понижающая дискретизация левой соседней области может выполняться только тогда, когда значение numSampL превышает 0. Когда значение numSampL превышает 0, это может означать то, что левая соседняя область по отношению к текущему блоку доступна, и режим интра-предсказания текущего блока представляет собой INTRA_LT_CCLM или INTRA_L_CCLM.

[00331] [00332] 3. Понижающая дискретизация верхней соседней области по отношению к блоку яркости

[00333] Первый вариант осуществления

[00334] Пиксел pTopDsY[x] (x=0...numSampT-1) понижающе дискретизированной верхней соседней области может извлекаться с учетом того, принадлежит или нет верхняя соседняя область CTU, отличающейся от CTU, которой принадлежит блок яркости.

[00335] Когда верхняя соседняя область принадлежит CTU, идентичной CTU блока яркости, пиксел pTopDsY[x] понижающе дискретизированной верхней соседней области может извлекаться на основе соответствующего пиксела pY[2*x][-2] верхней соседней области и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела, правого соседнего пиксела, верхнего соседнего пиксела или нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pTopDsY[x] может извлекаться на основе нижеприведенного уравнения 13.

[00336] уравнение 13

[00337] pTopDsY[x]=(pY[2 * x][-3]+pY[2 * x-1][-2]+4 * pY[2 * x][-2]+pY[2 * x+1][-2]+pY[2 * x][-1]+4)>>3

[00338] Наоборот, когда верхняя соседняя область принадлежит CTU, отличающейся от блока яркости, пиксел pTopDsY[x] понижающе дискретизированной верхней соседней области может извлекаться на основе соответствующего пиксела pY[2*x][-1] верхней соседней области и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела или правого соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pTopDsY[x] может извлекаться на основе нижеприведенного уравнения 14.

[00339] уравнение 14

[00340] pTopDsY[x]=(pY[2 * x-1][-1]+2* pY[2 * x][-1]+pY[2 * x+1][-1]+2)>>2

[00341] Альтернативно, когда левая верхняя соседняя область по отношению к текущему блоку не доступна, соседний пиксел может означать, по меньшей мере, один из верхнего соседнего пиксела или нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pTopDsY[0] может извлекаться на основе нижеприведенного уравнения 15.

[00342] уравнение 15

[00343] pTopDsY[0]=(pY[0][-3]+2 * pY[0][-2]+pY[0][-1]+2)>>2

[00344] Альтернативно, когда левая верхняя соседняя область по отношению к текущему блоку является недоступной, и верхняя соседняя область принадлежит CTU, отличающейся от блока яркости, пиксел pTopDsY[0] может задаваться в качестве пиксела pY[0][-1] верхней соседней области.

[00345] Второй вариант осуществления

[00346] Пиксел pTopDsY[x] (x=0...numSampT-1) понижающе дискретизированной верхней соседней области может извлекаться с учетом того, принадлежит или нет верхняя соседняя область CTU, отличающейся от блока яркости.

[00347] Когда верхняя соседняя область принадлежит CTU, идентичной CTU блока яркости, пиксел pTopDsY[x] понижающе дискретизированной верхней соседней области может извлекаться на основе соответствующего пиксела pY[2*x][-2] верхней соседней области и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из нижнего соседнего пиксела, левого соседнего пиксела, правого соседнего пиксела, левого нижнего соседнего пиксела или правого нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pTopDsY[x] может извлекаться на основе нижеприведенного уравнения 16.

[00348] уравнение 16

[00349] pTopDsY[x]=(pY[2 * x-1][-2]+pY[2 * x-1][-1]+2* pY[2 * x][-2]+2*pY[2 * x][-1]+pY[2 * x+1][-2]+pY[2 * x+1][-1]+4)>>3

[00350] Наоборот, когда верхняя соседняя область принадлежит CTU, отличающейся от блока яркости, пиксел pTopDsY[x] понижающе дискретизированной верхней соседней области может извлекаться на основе соответствующего пиксела pY[2*x][-1] верхней соседней области и соседнего пиксела относительно соответствующего пиксела. Соседний пиксел может означать, по меньшей мере, один из левого соседнего пиксела или правого соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pTopDsY[x] может извлекаться на основе нижеприведенного уравнения 17.

[00351] уравнение 17

[00352] pTopDsY[x]=(pY[2 * x-1][-1]+2* pY[2 * x][-1]+pY[2 * x+1][-1]+2)>>2

[00353] Альтернативно, когда левая верхняя соседняя область по отношению к текущему блоку не доступна, соседний пиксел может означать, по меньшей мере, один из верхнего соседнего пиксела или нижнего соседнего пиксела по отношению к соответствующему пикселу. Например, пиксел pTopDsY[0] может извлекаться на основе нижеприведенного уравнения 18.

[00354] уравнение 18

[00355] pTopDsY[0]=(pY[0][-2]+pY[0][-1]+1)>>1

[00356] Альтернативно, когда левая верхняя соседняя область по отношению к текущему блоку является недоступной, и верхняя соседняя область принадлежит CTU, отличающейся от блока яркости, пиксел pTopDsY[0] может задаваться в качестве пиксела pY[0][-1] верхней соседней области.

[00357] Аналогичным образом, понижающая дискретизация верхней соседней области может выполняться на основе одного из вариантов 1 и 2 осуществления, как описано выше. Здесь, один из вариантов 1 и 2 осуществления может выбираться на основе предварительно определенного флага. Флаг указывает то, имеет или нет понижающе дискретизированный пиксел яркости позицию, идентичную позиции исходного пиксела яркости. Это является идентичным тому, что описано выше.

[00358] Между тем, понижающая дискретизация верхней соседней области может выполняться только тогда, когда значение numSampT превышает 0. Когда значение numSampT превышает 0, это может означать то, что верхняя соседняя область по отношению к текущему блоку доступна, и режим интра-предсказания текущего блока представляет собой INTRA_LT_CCLM или INTRA_T_CCLM.

[00359] Понижающая дискретизация, по меньшей мере, для одной из левой или верхней соседних областей для блока яркости (в дальнейшем в этом документе, для опорной области яркости) может выполняться только с использованием соответствующего пиксела pY[-2][2*y] в конкретной позиции и окружающих пикселов. Здесь, конкретная позиция может определяться на основе позиции выбранного пиксела из множества пикселов, принадлежащих по меньшей мере одной из левой или верхней соседних областей для блока цветности (в дальнейшем в этом документе, называемой "опорной областью цветности").

[00360] Выбранный пиксел может представлять собой пиксел с нечетным номером или пиксел с четным номером в опорной области цветности. Альтернативно, выбранный пиксел может представлять собой начальный пиксел и один или более пикселов, позиционированных с предварительно определенными интервалами относительно начального пиксела. Здесь, начальный пиксел может представлять собой пиксел, позиционированный в первой, второй или третьей позиции в опорной области цветности. Интервал может составлять 1, 2, 3, 4 или более интервалов дискретных отсчетов. Например, когда интервал составляет интервал в один дискретный отсчет, выбранный пиксел может включать в себя n-ый пиксел, (n+2)-ой пиксел и т.п. Число выбранных пикселов может составлять 2, 4, 6, 8 или более.

[00361] Число выбранных пикселов, стартового пиксела и интервала может переменно определяться на основе по меньшей мере одного из длины опорной области цветности (т.е. numSampL и/или numSampT) или режима интра-предсказания блока цветности. Альтернативно, число выбранных пикселов может быть фиксированным числом (например, 4), заранее зафиксированным в устройстве кодирования/декодирования, независимо от длины опорной области цветности и режима интра-предсказания блока цветности.

[00362] Ссылаясь на фиг 8, параметр для межкомпонентной ссылки блока цветности может извлекаться (S830).

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

[00364] В частности, n пикселов могут классифицироваться на две группы посредством выполнения сравнения размеров между n пикселов, полученных посредством понижающей дискретизации опорной области яркости. Например, первая группа может представлять собой группу пикселов, имеющих относительно большое значение, из n пикселов, и вторая группа может представлять собой группу пикселов, отличных от пикселов первой группы, из n дискретных отсчетов. Таким образом, вторая группа может представлять собой группу пикселов, имеющих относительно небольшое значение. Здесь, n может быть равным 4, 8, 16 или больше. Среднее значение пикселов, принадлежащих первой группе, может задаваться в качестве максимального значения MaxL, и среднее значение пикселов, принадлежащих второй группе, может задаваться в качестве минимального значения MinL.

[00365] Согласно группировке n пикселов, полученных посредством понижающей дискретизации опорной области яркости, выбранные пикселы опорной области цветности могут группироваться. Первая группа для опорной области цветности сконфигурирована посредством использования пикселов опорной области цветности, соответствующей пикселам первой группы опорной области яркости. Вторая группа для опорной области цветности может быть сконфигурирована посредством использования пикселов опорной области цветности, соответствующей пикселам второй группы опорной области яркости. Аналогично, среднее значение пикселов в первой группе может задаваться в качестве максимального значения MaxC, и среднее значение пикселов во второй группе может задаваться в качестве минимального значения MinC.

[00366] На основе вычисленных максимальных значений (MaxL, MaxC) и минимальных значений (MinL, MaxC), могут извлекаться весовой коэффициент и/или смещение параметра.

[00367] Блок цветности может предсказываться на основе понижающе дискретизированного блока яркости и параметра (S840).

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

[00369] [00370] Фиг. 9 иллюстрирует способ конфигурирования опорной области в качестве варианта осуществления, к которому применяется настоящее изобретение.

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

[00372] Ссылаясь на фиг 9, пикселы в опорной области могут классифицироваться согласно предварительно определенной категории (SA00).

[00373] Опорная область может идентифицироваться/классифицироваться на k категорий, и k может быть целым числом, представляющим собой 1, 2, 3 или больше. Альтернативно, k может быть ограничено целым числом, представляющим собой 2 или меньше. Опорная область может классифицироваться в качестве одной из предварительно определенных категорий на основе типа изображения (I/P/B), типа компонента (Y/Cb/Cr и т.д.), свойства блока (размера, формы, информации разделения, глубины разделения и т.д.) и позиции опорного пиксела. Здесь, блок может означать текущий блок и/или соседний блок относительно текущего блока.

[00374] Например, она может классифицироваться согласно предварительно определенной категории согласно размеру блока. В случае размера блока, поддерживаемый диапазон может определяться посредством порогового размера. Каждый пороговый размер может выражаться как W, H, WxH и W*H на основе ширины (W) и высоты (H). W и H может быть натуральными числами, к примеру, 4, 8, 16, 32 и т.д. Два или более пороговых размеров поддерживаются и могут использоваться для того, чтобы задавать поддерживаемый диапазон, к примеру, минимальное значение и максимальное значение, которые может иметь блок.

[00375] Альтернативно, она может классифицироваться согласно предварительно определенной категории согласно позиции опорного пиксела. В этом случае, позиция опорного пиксела может задаваться в единицах пикселов либо может задаваться как направление блока, которому принадлежит опорный пиксел (левый, правый, верхний, нижний, левый верхний, правый верхний, левый нижний, правый нижний).

[00376] Ссылаясь на фиг 6, она может задаваться как то, включается она или нет в число позиций левого верхнего пиксела TL, правого верхнего пиксела TR, левого нижнего пиксела BL и правого нижнего пиксела BR. Кроме того, она может задаваться как то, включается она или нет в число пиксельных позиций TL0, TL1, TR0, TR1, BL0, BL1, BR0, BR1, расположенных на основе ширины (2*nW) текущего блока, высоты (2*nH) или суммы (nW+nH) ширины и высоты. Помимо этого, ссылаясь на фиг 12, она может задаваться как то, включается она или нет в число пиксельных позиций T0, T3, B0, B3, L0, L3, R0 и R3, которые представляют собой пикселы, расположенные на обоих концах верхнего, нижнего, левого и правого блоков. Альтернативно, она может задаваться как то, включается она или нет в число пикселов (T1, L2, B2, R1 и т.д.), расположенных в середине каждого блока.

[00377] Опорная область (опорный пиксел) может классифицироваться согласно каждой категории на основе различных элементов кодирования.

[00378] Ссылаясь на фиг 9, можно осуществлять поиск недоступного пиксела, принадлежащего опорной области (SA10).

[00379] Можно последовательно осуществлять поиск касательно того, существует или нет недоступный пиксел в опорной области. Ссылаясь на фиг 6, начальная позиция поиска может определяться из TL, TR, BL и BR, но не ограничена этим. В этом случае, когда поиск осуществляется последовательно, номер начальной позиции поиска может задаваться равным единице, но для случая параллельной обработки, он может задаваться равным двум или более.

[00380] Область поиска недоступного пиксела может определяться на основе начальной позиции поиска. Если одна позиция поиска обозначается (при условии TL), в верхней опорной области или левой опорной области можно осуществлять поиск перед правой опорной областью, но это может не иметь место в настройке кодирования (параллельной обработке).

[00381] Здесь, направление поиска может определяться как представляющее собой одно из по часовой стрелке или против часовой стрелки. В этом случае, одно из по часовой стрелке или против часовой стрелки может выбираться для всей опорной области. Альтернативно, оно может адаптивно выбираться согласно позиции опорной области. Таким образом, одно направление поиска по часовой стрелке или против часовой стрелки может поддерживаться для каждой из верхней/нижней/левой/правой опорных областей. Здесь, следует понимать, что позиция опорной области не ограничена только шириной (nW) и высотой (nH) текущего блока (т.е. включающего в себя опорную область, включенную в 2*nW, 2*nH, nW+nH и т.д.).

[00382] Здесь, в случае направления по часовой стрелке, оно может означать направление снизу вверх в левой опорной области, направление слева направо в верхней опорной области, направление сверху вниз в правой опорной области и направление справа налево в нижней опорной области. Против часовой стрелки может извлекаться из противоположности по часовой стрелке.

[00383] Например, когда поиск начинается с левого верхнего пиксела TL, смежного с текущим блоком, в верхней опорной области и правой опорной области можно осуществлять поиск в направлении по часовой стрелке (слева->направо, сверху->вниз). Помимо этого, в левой опорной области и нижней опорной области можно осуществлять поиск в направлении против часовой стрелки (сверху->вниз, слева->направо). Тем не менее, вышеприведенное описание является только частичным примером, и примеры различных модификаций могут быть возможными.

[00384] Ссылаясь на фиг 9, он может заменяться доступным пикселом посредством использования способа, заданного для каждой категории (SA20).

[00385] Недоступный пиксел может заменяться предварительно определенным значением по умолчанию (например, срединным значением диапазона пиксельных значений). Альтернативно, он может заменяться на основе предварительно определенного доступного пиксела, и недоступный пиксел может заменяться значением, полученным посредством копирования, линейной экстраполяции, интерполяции и т.п. одного или более смежных доступных пикселов. Во-первых, перед этим выполняется процесс классификации категории на основе позиции каждого пиксела. Ниже приводится пример того, как каждый способ применяется согласно множеству категорий, и недоступный пиксел упоминается как целевой пиксел.

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

[00387] В качестве примера <2>, когда доступный пиксел существует перед целевым пикселом и в начальной позиции поиска, целевой пиксел может заменяться посредством использования пиксельного значения, полученного на основе доступного пиксела, и когда доступный пиксел не существует перед целевым пикселом, он может заменяться значением по умолчанию.

[00388] В качестве примера <3>, целевой пиксел может заменяться значением по умолчанию.

[00389] В случае <1>, описывается способ замены доступным пикселом согласно тому, существует или нет доступный пиксел в опорной области. В случае <2>, описывается способ замены доступным пикселом согласно тому, существует или нет доступный пиксел во время предыдущего процесса поиска. В случае <3>, описывается способ замены одним фиксированным доступным пикселом.

[00390] Если одна категория поддерживается, может использоваться один способ из <1>-<3>. Если более одной категории поддерживается, один опорный пиксел, принадлежащий любой категории, может выбирать и использовать одно из <1>-<3>, и опорный пиксел, принадлежащий другой категории, может выбирать и использовать одно из <1>-<3>.

[00391] Ссылаясь на фиг 9, опорная область может быть сконфигурирована как доступный пиксел (SA30). Помимо этого, интра-предсказание может выполняться (SA40).

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

[00393] [00394] Фиг. 10 является примерной схемой для конфигурирования режима интра-предсказания, заданного поэтапно, в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00395] Что касается (этапа 1) по фиг. 10, может поддерживаться конфигурация различных групп потенциально подходящих вариантов режимов предсказания, и один из них может неявно или явно выбираться. Группа потенциально подходящих вариантов режимов предсказания может идентифицироваться посредством числа режимов, информации наклона (dy/dx) направленного режима, поддерживаемого диапазона направленного режима и т.п. В этом случае, даже если число режимов составляет k (a направленный, b ненаправленный), могут быть предусмотрены потенциально подходящие варианты режимов предсказания с различными a или b.

[00396] Информация выбора групп потенциально подходящих вариантов режимов предсказания может явно формироваться и может сигнализироваться, по меньшей мере, для одного уровня из VPS, SPS, PPS, PH и заголовка среза. Альтернативно, группа потенциально подходящих вариантов режимов предсказания может неявно выбираться согласно настройке кодирования. В этом случае, настройка кодирования может задаваться на основе типа изображения (I/P/B), типа компонента и свойства блока (размера, формы, информации разделения, глубины разделения и т.д.). Здесь, блок может означать текущий блок и/или соседний блок относительно текущего блока, и в настоящем варианте осуществления, идентичное описание может применяться.

[00397] Когда одна группа потенциально подходящих вариантов режимов предсказания выбирается через (этап 1) (B выбирается в этом примере), интра-предсказание или кодирование в режиме предсказания может выполняться на основе этого. Альтернативно, процесс для эффективной конфигурации групп потенциально подходящих вариантов может выполняться, и это описывается через (этап 2).

[00398] Что касается (этапа 2) по фиг. 10, может конфигурироваться различными способами конфигурация некоторых режимов предсказания, и один из них может неявно или явно выбираться. (B0)-(B2) могут представлять собой потенциально подходящие варианты конфигураций при условии, что режимы предсказания (пунктирные линии на чертеже) в некоторых направлениях не используются оптимально.

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

[00400] Здесь, форма блока может подразделяться согласно отношению ширины/высоты (W:H) блока, и группа потенциально подходящих вариантов режимов предсказания может быть сконфигурирована по-разному согласно всем возможным отношениям W:H или только согласно определенному отношению W:H.

[00401] Когда одна группа потенциально подходящих вариантов режимов предсказания выбирается через (этап 2) (B1 выбирается в этом примере), интра-предсказание или кодирование в режиме предсказания может выполняться на основе этого. Альтернативно, процесс для эффективной конфигурации групп потенциально подходящих вариантов может выполняться, и это описывается через (этап 3).

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

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

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

[00405] Например, когда соседний блок включает в себя позиции TL, T0, TR0, L0 и BL0 по фиг. 12, предполагается, что режим предсказания соответствующего блока имеет некоторую направленность (из позиции слева сверху в позицию справа снизу). В этом случае, режим предсказания текущего блока предположительно должен иметь некоторую направленность с высокой вероятностью, и следующая возможность обработки может существовать.

[00406] Например, интра-предсказание может выполняться для всех режимов в группе потенциально подходящих вариантов режимов предсказания. Помимо этого, кодирование в режиме предсказания может выполняться на основе группы потенциально подходящих вариантов режимов предсказания.

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

[00408] При сравнении вышеприведенных примеров, можно различать то, включается или нет режим предсказания, который предположительно имеет низкую вероятность появления, в фактический процесс предсказания и кодирования (который может включаться в качестве не-MPM и т.д.), либо удаляется.

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

[00410] [00411] Фиг. 11 иллюстрирует способ классификации режимов интра-предсказания на множество групп потенциально подходящих вариантов в качестве варианта осуществления, к которому применяется настоящее изобретение.

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

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

[00414] Например, когда режим предсказания классифицируется на три группы (A, B, C) потенциально подходящих вариантов, может использоваться флаг (первый флаг), указывающий то, извлекается или нет режим интра-предсказания текущего блока из группы A потенциально подходящих вариантов.

[00415] В этом случае, когда первый флаг имеет первое значение, группа A потенциально подходящих вариантов используется, и когда первый флаг имеет второе значение, может использоваться флаг (второй флаг), указывающий то, извлекается или нет режим интра-предсказания текущего блока из группы B потенциально подходящих вариантов.

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

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

[00418] Конфигурация флага выбора, когда три группы потенциально подходящих вариантов поддерживаются, описывается через вышеприведенный пример. Аналогично вышеуказанной конфигурации, флаги, указывающие то, извлекается или нет режим предсказания текущего блока из группы потенциально подходящих вариантов, имеющей высокий приоритет, могут последовательно поддерживаться (например, в порядке первый флаг->второй флаг). Таким образом, когда предварительно определенный флаг выбора группы потенциально подходящих вариантов формируется, и соответствующая группа потенциально подходящих вариантов не выбирается, флаг выбора группы потенциально подходящих вариантов, имеющей следующий приоритет, может формироваться.

[00419] Альтернативно, она может представлять собой конфигурацию, имеющую смысловое значение, отличающееся от флага выбора (EE). Например, может использоваться флаг (первый флаг), указывающий то, извлекается или нет режим интра-предсказания текущего блока из групп A или B потенциально подходящих вариантов.

[00420] В этом случае, когда первый флаг имеет первое значение, используется группа C потенциально подходящих вариантов, и когда первый флаг имеет второе значение, может использоваться флаг (второй флаг), указывающий то, извлекается или нет режим интра-предсказания текущего блока из группы A потенциально подходящих вариантов.

[00421] В этом случае, когда второй флаг имеет первое значение, может использоваться группа A потенциально подходящих вариантов, и когда второй флаг имеет второе значение, может использоваться группа B потенциально подходящих вариантов.

[00422] Каждая из групп A, B и C потенциально подходящих вариантов может иметь m, n и p потенциально подходящих вариантов, и m может быть целым числом, представляющим собой 1, 2, 3, 4, 5, 6 или больше; n может быть целым числом, представляющим собой 1, 2, 3, 4, 5, 6 или больше. Альтернативно, n может быть целым числом между 10 и 40; p может составлять (общее число режимов предсказания - m - n). Здесь, m может быть меньше или равно n, и n может быть меньше или равно p.

[00423] В качестве другого примера, когда режим предсказания классифицируется на четыре группы потенциально подходящих вариантов (A, B, C, D), могут использоваться флаги, указывающие то, извлекается или нет режим интра-предсказания текущего блока из групп A, B, C потенциально подходящих вариантов (первый флаг, второй флаг, третий флаг).

[00424] В этом случае, второй флаг может формироваться, когда первый флаг имеет второе значение, и третий флаг может формироваться, когда второй флаг имеет второе значение. Таким образом, когда первый флаг имеет первое значение, может использоваться группа A потенциально подходящих вариантов, и когда второй флаг имеет первое значение, может использоваться группа B потенциально подходящих вариантов. Помимо этого, когда третий флаг имеет первое значение, может использоваться группа C потенциально подходящих вариантов, и когда третий флаг имеет второе значение, может использоваться группа D потенциально подходящих вариантов. В этом примере, противоположная конфигурация также является возможной, как указано в некоторых примерах (EE) конфигурации трех групп потенциально подходящих вариантов.

[00425] Альтернативно, второй флаг может формироваться, когда первый флаг имеет первое значение, и третий флаг может формироваться, когда первый флаг имеет второе значение. Когда второй флаг имеет первое значение, может использоваться группа A потенциально подходящих вариантов, и когда второй флаг имеет второе значение, может использоваться группа B потенциально подходящих вариантов. Когда третий флаг имеет первое значение, может использоваться группа C потенциально подходящих вариантов, и когда второе значение имеет второе значение, может использоваться группа D потенциально подходящих вариантов.

[00426] Каждая из групп A, B, C и D потенциально подходящих вариантов может иметь m, n, p и q потенциально подходящих вариантов, и m может быть целым числом, представляющим собой 1, 2, 3, 4, 5, 6 или больше; n может быть целым числом, представляющим собой 1, 2, 3, 4, 5, 6 или больше. Альтернативно, n может быть целым числом между 8 и 24. p может быть целым числом, к примеру, 6, 7, 8, 9, 10, 11, 12 и т.п. Альтернативно, p может быть целым числом между 10 и 32; q может составлять (общее число режимов предсказания - m - n - p). Здесь, m может быть меньше или равно n, n может быть меньше или равно p, и p может быть меньше или равно q.

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

[00428] Например, на фиг. 11, когда категория 2(a), категория 3(b и c) и категория 4(d) представляют собой группы потенциально подходящих вариантов с наименьшим приоритетом, соответственно, группы потенциально подходящих вариантов могут быть сконфигурированы с использованием режима предсказания, который не включается ни в один из потенциально подходящих вариантов с предыдущим приоритетом. В этом варианте осуществления, поскольку группа потенциально подходящих вариантов состоит из оставшихся режимов предсказания, которые не включаются в предыдущую группу потенциально подходящих вариантов, предполагается, что она представляет собой группу потенциально подходящих вариантов, нерелевантную для приоритета между режимами предсказания, конфигурирующими каждую группу потенциально подходящих вариантов, которая описывается ниже (т.е. оставшимися режимами предсказания, которые не включаются в предыдущую группу потенциально подходящих вариантов без учета приоритета). Так же, предполагается, что приоритет (приоритет) между группами потенциально подходящих вариантов задается в порядке возрастания (категория 1->категория 2->категория 3->категория 4), как показано на фиг. 11, и приоритет в примерах, описанных ниже, представляет собой термин, используемый в перечне режимов для того, чтобы конфигурировать каждую группу потенциально подходящих вариантов.

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

[00430] Ссылаясь на фиг 11A, может поддерживаться приоритет для первой группы потенциально подходящих вариантов (категории 1). Когда первая группа потенциально подходящих вариантов сконфигурирована на основе номера первой группы потенциально подходящих вариантов согласно приоритету, оставшиеся режимы (b, j и т.д.) предсказания могут быть сконфигурированы как вторая группа потенциально подходящих вариантов (категория 2).

[00431] Ссылаясь на фиг 11B, может поддерживаться общий приоритет для первой группы потенциально подходящих вариантов и второй группы потенциально подходящих вариантов. Согласно приоритету, первая группа потенциально подходящих вариантов сконфигурирована на основе номера первой группы потенциально подходящих вариантов. Вторая группа потенциально подходящих вариантов сконфигурирована на основе номера второй группы потенциально подходящих вариантов согласно приоритету (после c) после режима (e) предсказания, в итоге включенного в первую группу потенциально подходящих вариантов. Помимо этого, оставшиеся режимы (b, j и т.д.) предсказания могут быть сконфигурированы как третья группа потенциально подходящих вариантов (категория 3).

[00432] Ссылаясь на фиг 11C, могут поддерживаться отдельные приоритеты (первый приоритет, второй приоритет) для первой группы потенциально подходящих вариантов и второй группы потенциально подходящих вариантов. Первая группа потенциально подходящих вариантов сконфигурирована на основе номера первой группы потенциально подходящих вариантов согласно первому приоритету. Затем вторая группа потенциально подходящих вариантов сконфигурирована на основе числа второй группы потенциально подходящих вариантов согласно второму приоритету. Помимо этого, оставшиеся режимы предсказания (b, w, x и т.д.) могут быть сконфигурированы как третья группа потенциально подходящих вариантов.

[00433] Здесь, второй приоритет может задаваться на основе режима предсказания соседнего блока <1>, режима по умолчанию <2>, предварительно определенного направленного режима<3> и т.п., аналогично существующему приоритету (первому приоритету). Тем не менее, приоритет может задаваться на основе важности, отличающейся от первого приоритета (например, если первый приоритет сконфигурирован в порядке 1-2-3, второй приоритет сконфигурирован в порядке 3-2-1 и т.д.). Помимо этого, второй приоритет может переменно конфигурироваться согласно режиму, включенному в предыдущую группу потенциально подходящих вариантов, и может затрагиваться посредством режима соседнего блока текущего блока. Второй приоритет может быть сконфигурирован по-другому по сравнению с первым приоритетом, но очевидно, что конфигурация второго приоритета может частично затрагиваться посредством конфигурации первой группы потенциально подходящих вариантов. В этом параграфе, следует понимать, что первый приоритет (предыдущее ранжирование), первая группа потенциально подходящих вариантов (предыдущая группа потенциально подходящих вариантов) и второй приоритет (текущее ранжирование) и вторая группа потенциально подходящих вариантов (текущая группа потенциально подходящих вариантов) не описываются в фиксированном ранжировании, таком как номер.

[00434] Ссылаясь на фиг 11D, может поддерживаться общий приоритет (первый приоритет) для первой группы потенциально подходящих вариантов и второй группы потенциально подходящих вариантов, и может поддерживаться отдельный приоритет (второй приоритет) для третьей группы потенциально подходящих вариантов. Первая группа потенциально подходящих вариантов сконфигурирована на основе номера первой группы потенциально подходящих вариантов согласно первому приоритету. Вторая группа потенциально подходящих вариантов сконфигурирована на основе номера второй группы потенциально подходящих вариантов согласно приоритету (после e) после режима (d) предсказания, в итоге включенного в первую группу потенциально подходящих вариантов. Затем согласно второму приоритету, третья группа потенциально подходящих вариантов сконфигурирована на основе числа третьей группы потенциально подходящих вариантов. Помимо этого, оставшиеся режимы предсказания (u, f и т.д.) могут быть сконфигурированы как четвертая группа потенциально подходящих вариантов.

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

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

[00437] Помимо этого, первый приоритет, используемый для первой группы потенциально подходящих вариантов, может использоваться для того, чтобы конфигурировать некоторые потенциально подходящие варианты второй группы потенциально подходящих вариантов. Таким образом, некоторые потенциально подходящие варианты (cand_A) второй группы потенциально подходящих вариантов могут определяться на основе первого приоритета (начиная с режима, не включенного в первую группу потенциально подходящих вариантов), и некоторые потенциально подходящие варианты (или остающиеся потенциально подходящие варианты, cand_B) второй группы потенциально подходящих вариантов могут определяться на основе второго приоритета. В этом случае, cand_A может быть целым числом, представляющим собой 0, 1, 2, 3, 4, 5 или больше. Таким образом, при конфигурировании первой группы потенциально подходящих вариантов режим предсказания, который не включается в первую группу потенциально подходящих вариантов, может включаться во вторую группу потенциально подходящих вариантов.

[00438] Например, три группы потенциально подходящих вариантов поддерживаются, и первая группа потенциально подходящих вариантов состоит из двух потенциально подходящих вариантов, и первый приоритет может определяться между режимом предсказания смежного блока (например, левый, верхний), предварительно определенным направленным режимом (например, Ver, Hor и т.д.), предварительно определенным ненаправленным режимом (например, DC-, планарный и т.д.) (например, Pmode_L-Pmode_U-DC-Planar-Ver-Hor и т.д.). Группа потенциально подходящих вариантов сконфигурирована на основе номера первой группы потенциально подходящих вариантов согласно первому приоритету (например, Pmode_L, Pmode_U).

[00439] В этом случае, вторая группа потенциально подходящих вариантов сконфигурирована с 6 потенциально подходящими вариантами, и второй приоритет может определяться для направленного режима, имеющего предварительно определенный интервал (1, 2, 3, 4 или более целочисленных) из режима предсказания смежного блока, и направленного режима, имеющего предварительно определенный наклон (dy/dx: 1:1, 1:2, 2:1, 4:1, 1:4 и т.д.) (например, вниз и влево по диагонали - вниз и вправо по диагонали - вверх и вправо по диагонали - <Pmode_L+2>,<Pmode_U+2>и т.д.).

[00440] Вторая группа потенциально подходящих вариантов может быть сконфигурирована на основе числа второй группы потенциально подходящих вариантов согласно второму приоритету. Альтернативно, два потенциально подходящих варианта второй группы потенциально подходящих вариантов могут быть сконфигурированы (DC-, планарный) на основе первого приоритета, и оставшиеся четыре потенциально подходящих варианта могут быть сконфигурированы (DDL, DDR, DUR) на основе второго приоритета.

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

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

[00443] [00444] Фиг. 12 является примерной схемой, иллюстрирующей текущий блок и пиксел, смежный с ним, в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00445] Ссылаясь на фиг 12, показаны пикселы (a-p) принадлежащие текущему блоку, и пикселы, смежные с ним. Подробно, он представляет пикселы (Ref_T, Ref_L, Ref_TL, Ref_TR и Ref_BL), которые являются смежными с текущим блоком и имеют возможность ссылки, и пикселы (B0 в B3, R0 в R3, BR), которые являются смежными с текущим блоком, но не имеют возможность ссылки. Эта схема задается при условии, что некоторый порядок кодирования, порядок сканирования и т.д. является фиксированным (можно ссылаться на левый, верхний, левый верхний, правый верхний и левый нижний блоки относительно текущего блока), и можно изменяться на другую конфигурацию согласно изменению настройки кодирования.

[00446] [00447] Фиг. 13 иллюстрирует способ выполнения интра-предсказания поэтапно в качестве варианта осуществления, к которому применяется настоящее изобретение.

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

[00449] Ссылаясь на фиг 13, произвольное пиксельное значение может получаться (SB00).

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

[00451] Фиг. 14 является примерной схемой для произвольного пиксела для интра-предсказания в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00452] Ссылаясь на фиг 14, не только пиксел (c), расположенный за пределами текущего блока, на который нельзя ссылаться, но также и пиксел (a, b), расположенный внутри текущего блока, может представлять собой произвольный пиксел. Далее предполагается, что размер текущего блока составляет "высота x ширина", и левая верхняя координата составляет (0, 0).

[00453] На фиг. 14, a и b могут быть расположены в от (0, 0) до (ширина-1, высота-1).

[00454] Например, они могут быть расположены на граничной линии (левой, правой, верхней, нижней) относительно текущего блока. Например, они могут быть расположены в правом столбце текущего блока, в от (ширина-1, 0) до (ширина-1, высота-1) или в нижней строке текущего блока, в от (0, высота-1) до (ширина-1, высота 1).

[00455] Например, они могут быть расположены в нечетном или четном столбце и строке текущего блока. Например, они могут быть расположены в четной строке текущего блока, либо они могут быть расположены в нечетном столбце текущего блока. Альтернативно, они могут быть расположены в ровной строке и нечетном столбце текущего блока или может быть расположено в нечетной строке и нечетном столбце текущего блока. Здесь, в дополнение к нечетному или четному числу, они могут быть расположены в столбце или строке, соответствующей нескольким k или экспоненте (2k), и k может быть целым числом, представляющим собой 1, 2, 3, 4, 5 или больше.

[00456] На фиг. 14, c может быть расположен за пределами пиксела с возможностью ссылки и текущего блока.

[00457] В качестве примера, он может быть расположен на граничной линии текущего блока (в этом примере, справа, снизу). Например, он может быть расположен на правой границе текущего блока, от (ширина, 0) до (ширина, высота) или на нижней границе текущего блока, от (0, высота) до (ширина, высота).

[00458] Например, он может быть расположен в нечетном или четном столбце и строке текущего блока. Например, он может быть расположен в четной строке за пределами правой границы текущего блока, или он может быть расположен в нечетном столбце за пределами нижней границы текущего блока. Здесь, в дополнение к нечетному или четному числу, он может быть расположен в столбце или строке, соответствующей нескольким k или экспоненте (2k), и k может быть целым числом, представляющим собой 1, 2, 3, 4, 5 или больше.

[00459] Число произвольных пикселов использовало/ссылалось для интра-предсказания текущего блока, может быть m, и m может составлять 1, 2, 3, 4 или более. Альтернативно, число произвольных пикселов может задаваться на основе размера (ширины или высоты) текущего блока. Например, число произвольных пикселов, используемых для интра-предсказания, может составлять Width/w_factor, Height/h_factor или (Width*Height)/wh_factor. Здесь, w_factor и h_factor может составлять предварительно определенные значения, используемые в качестве значений разделения на основе ширины и высоты каждого блока, и могут быть целыми числами, такими как 1, 2, 4 и 8. Здесь, wh_factor может составлять предварительно определенное значение, используемое в качестве значения разделения на основе размера блока, и может быть целым числом, к примеру, 2, 4, 8, 16 и т.п.

[00460] Кроме того, число произвольных пикселов может определяться на основе всех или некоторых элементов кодирования, таких как тип изображения, тип компонента, свойство блока и режим интра-предсказания.

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

[00462] В этом случае, пиксельное значение произвольного пиксела может получаться в качестве значения, полученного через копирование или усреднение со взвешиванием с использованием одного или более пикселов (k; k является целым числом, представляющим собой 1, 2, 3, 4, 5, 6 и т.д.), расположенных в (<1>горизонтальное направление/<2>вертикальное направление). В (<1>горизонтальное направление/<2>вертикальное направление), пиксел с возможностью ссылки, имеющий идентичный или аналогичный (<1>компонент по оси Y/<2>компонент по оси X) из числа координат произвольного пиксела, может использоваться/использоваться для ссылки, чтобы получать пиксельное значение. Тем не менее, в широком смысле, пиксел с возможностью ссылки, расположенный в (<1>направление влево/<2>направление вверх) текущего блока, может использоваться для того, чтобы получать пиксельное значение произвольного пиксела.

[00463] Пиксельное значение может получаться на основе либо горизонтального направления, либо вертикального направления или может получаться на основе обоих направлений. В этом случае, настройка получения пиксельных значений может определяться на основе различных элементов кодирования (описанных в вышеприведенном примере, таких как тип изображения и свойство блока).

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

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

[00466] Помимо этого, предварительно определенный список потенциально подходящих вариантов может быть сконфигурирован, и пиксельное значение произвольного пиксела может получаться посредством выбора по меньшей мере одного из них. Оно может сигнализироваться в одной из единиц, таких как CTU, блок кодирования, блок предсказания и блок преобразования. В этом случае, список потенциально подходящих вариантов может быть сконфигурирован с предварительно определенным значением или может быть сконфигурирован на основе вышеописанного пиксела с возможностью ссылки, смежного с текущим блоком. В этом случае, число списков потенциально подходящих вариантов может быть целым числом, представляющим собой 2, 3, 4, 5 или больше. Альтернативно, оно может быть целым числом между 10 и 20, целым числом между 20 и 40 либо целым числом между 10 и 40.

[00467] Здесь, в списке потенциально подходящих вариантов, пиксельное значение может быть сконфигурировано как потенциально подходящий вариант, либо уравнение для вывода пиксельного значения, значения признака и т.п. может быть сконфигурировано как потенциально подходящий вариант. Во втором случае, различные пиксельные значения могут извлекаться в единице произвольного пиксела на основе уравнения для получения позиции (координаты X или Y) произвольного пиксела и пиксельного значения или значения признака.

[00468] Как описано выше, один или более произвольных пикселов могут получаться, и интра-предсказание может выполняться на их основе. Ниже по тексту, для удобства пояснения предполагается, что число произвольных пикселов равно 1. Тем не менее, очевидно, что пример, описанный ниже, может расширяться на идентичный или аналогичный случай, даже когда получаются два или более произвольных пикселов.

[00469] Ссылаясь на фиг 13, может выполняться разделение на множество подобластей на основе произвольного пиксела (SB10).

[00470] Здесь, подобласти могут сегментироваться на основе горизонтальной или вертикальной линии, включающей в себя произвольный пиксел, и число подобластей может быть целым числом, представляющим собой 2, 3, 4 или больше. В дальнейшем описывается конфигурация подобласти со ссылкой на нижеприведенный чертеж.

[00471] Фиг. 15 является примерной схемой разделения на множество подобластей на основе произвольного пиксела в качестве варианта осуществления, к которому применяется настоящее изобретение.

[00472] Ссылаясь на фиг 15, предварительно определенная подобласть (b, c), которая представляет собой вертикальную или горизонтальную линию произвольного пиксела d, может получаться и предварительно определенная подобласть (a), может получаться на основе вертикальной и горизонтальной линий.

[00473] В этом случае, подобласть (b) может получаться между произвольным пикселом и пикселом T, на который можно ссылаться в вертикальном направлении, и подобласть (c) может получаться между произвольным пикселом и пикселом L, на который можно ссылаться в горизонтальном направлении. В этом случае, подобласти b и c могут не всегда возникать фиксированно, и только одна из двух может возникать согласно связанной с произвольным пикселом настройке текущего блока (например, b, или c также является произвольным пикселом и т.д.). Если только одна из подобластей b и c возникает, подобласть a может не возникать.

[00474] Как показано на фиг. 15, T или L ссылаться на означать пиксел с возможностью ссылки, смежный с текущим блоком. Альтернативно, T или L может ссылаться на любой пиксел (e, f) отличающийся от d, расположенного в вертикальном или горизонтальном направлении произвольного пиксела (d). Это означает то, что любой пиксел d также может представлять собой T или L для любого другого пиксела.

[00475] Как указано в вышеприведенном примере, размер подобласти может определяться на основе числа и компоновки произвольных пикселов в текущем блоке.

[00476] Например, когда два или более произвольных пикселов существуют и расположены с интервалами в один временной квант, каждая из подобластей a, b и c может иметь размер 1×1. Альтернативно, когда один произвольный пиксел существует и расположен в c по фиг. 14, подобласти a, b и c могут иметь размер (высота x ширина), (1 x высота) и (ширина x 1), соответственно.

[00477] Ссылаясь на фиг 13, интра-предсказание может выполняться согласно предварительно определенному порядку (SB20).

[00478] Здесь, согласно позиции произвольного пиксела, некоторые подобласти могут использоваться в качестве значения предсказания для интра-предсказания или могут использоваться в качестве временного опорного значения для интра-предсказания.

[00479] Например, когда произвольный пиксел (или подобласть d) расположен в c по фиг. 14, подобласти b и c расположены за пределами текущего блока, и только подобласть a может представлять собой цель интра-предсказания. Альтернативно, когда произвольный пиксел расположен выше c по фиг. 14, подобласть b расположена за пределами текущего блока, и подобласти a и c могут представлять собой цели интра-предсказания. Альтернативно, когда произвольный пиксел расположен относительно с по фиг. 14, подобласть c расположена за пределами текущего блока, и подобласти a и b могут представлять собой цели интра-предсказания. Альтернативно, когда произвольный пиксел расположен в текущем блоке, подобласти a, b и c могут представлять собой цели интра-предсказания.

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

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

[00482] Поскольку позиция и пиксельное значение произвольного пиксела получаются посредством предыдущих этапов, каждый процесс получения подобластей может выполняться согласно предварительно определенному приоритету для подобластей a, b и c. Например, пиксельное значение каждой подобласти может получаться в порядке b->c или c->b, и пиксельное значение подобласти a может получаться.

[00483] В случае подобласти b, пиксельное значение может получаться на основе произвольного пиксела d или T. В случае подобласти c, пиксельное значение может получаться на основе произвольного пиксела d или L.

[00484] Хотя не показано на чертеже, допустим, что левый верхний пиксел представляет собой TL (т.е. пересечение горизонтальной линии T и вертикальной линии L). Когда TL и T расположены сверху относительно текущего блока, можно ссылаться на пиксел между TL и T. Кроме того, когда TL и L расположен слева относительно текущего блока, можно ссылаться пиксел между TL и L. Это обусловлено тем, что пиксел с возможностью ссылки принадлежит блоку, смежному с текущим блоком.

[00485] С другой стороны, когда, по меньшей мере, один TL или T расположен в текущем блоке, можно ссылаться на пиксел между TL и T. Помимо этого, когда, по меньшей мере, один из TL или L расположен в текущем блоке, можно ссылаться на пиксел между TL и L. Это обусловлено тем, что пиксел с возможностью ссылки может быть подобластью, полученной на основе другого произвольного пиксела.

[00486] Следовательно, в случае подобласти a, пиксельное значение может получаться на основе подобластей b и c, области с возможностью ссылки между TL и T и области с возможностью ссылки между TL и L. Конечно, TL, T, L и d могут использоваться для того, чтобы получать пиксельные значения подобласти a. Здесь, это означает то, что также можно ссылаться на любой пиксел.

[00487] Через вышеуказанный процесс, интра-предсказание текущего блока может выполняться на основе произвольного пиксела.

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

[00489] Альтернативно, оно может классифицироваться в качестве одного потенциально подходящего варианта способов предсказания, и может формироваться информация выбора для него. Например, оно может рассматриваться в качестве дополнительного способа предсказания относительно способа выполнения интра-предсказания на основе направленного режима или ненаправленного режима. Информация выбора может сигнализироваться в CTU, блоке кодирования, блоке предсказания, блок преобразования и т.п.

[00490] [00491] Нижеприведенное описывается при условии, что позиция произвольного пиксела представляет собой c по фиг. 14. Тем не менее, настоящее изобретение не ограничено этим, и контент, описанный ниже, может применяться идентичным или аналогичным способом, даже при компоновке в различных позициях. В дальнейшем нижеприведенное описывается со ссылкой на фиг. 12.

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

[00493] Например, данные могут копироваться или извлекаться из Ref_TR, Ref_BL и т.д., которые представляют собой области, смежные с правой и нижней границами текущего блока, и затем правая или нижняя граница текущего блока может заполняться данными. В качестве примера, правая граница может заполняться посредством копирования одного из пикселов, к примеру, T3, TR0 и TR1 как есть или значением, полученным посредством применения фильтрации к T3, TRO и TR1.

[00494] Альтернативно, данные могут копироваться или извлекаться из Ref_TL, Ref_T, Ref_L, Ref_TR, Ref_BL и т.д., которые представляют собой области, смежные с текущим блоком, и правая нижняя граница текущего блока может заполняться данными. Например, правая нижняя граница текущего блока может заполняться значением, полученным на основе одного или более пикселов в смежной области.

[00495] Здесь, правая граница текущего блока может представлять собой (d~p) или (R0~R3). Нижняя граница текущего блока может представлять собой (m~p) или (B0~B3). Правая нижняя граница текущего блока может представлять собой одно из p, BR, R3 и B3.

[00496] В следующем примере, предполагается, что правая граница представляет собой R0~R3, нижняя граница представляет собой B0~B3, и правая нижняя граница представляет собой BR.

[00497] Обработка для правой границы и нижней границы

[00498] Например, правая граница может заполняться посредством копирования одного из T3, TR0 и TR1, смежного с вертикальным направлением, и нижняя граница может заполняться посредством копирования одного из L3, BL0 и BL1, смежного с горизонтальным направлением.

[00499] Альтернативно, правая граница может заполняться средним значением весового коэффициента в T3, TR0 и TR1, смежного с вертикальным направлением, и нижняя граница может заполняться средним значением весового коэффициента в L3, BL0 и BL1, смежного с горизонтальным направлением.

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

[00501] Обработка для правой нижней границы

[00502] Например, правая нижняя граница может заполняться посредством копирования одного из T3, TR0, TR1, L3, BL0 и BL1. Альтернативно, она может заполняться средним значением весового коэффициента одного из T3, TR0 и TR1 и одного из L3, BL0 и BL1. Альтернативно, она может заполняться одним из среднего значения весового коэффициента T3, TR0 и TR1 и среднего значения весового коэффициента L3, BL0 и BL1. Альтернативно, она может заполняться вторым средним значением весового коэффициента первого среднего значения весового коэффициента T3, TR0 и TR1 и первого среднего весового коэффициента L3, BL0 и BL1.

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

[00504] Далее продолжается описание обработки правой нижней границы.

[00505] Предположим конфигурацию, которая рассматривает позиции TL, TR0, BL0 и BR. Здесь, BR может означать пиксел в правой нижней границе, TR0 может представлять собой пиксел с возможностью ссылки, расположенным в вертикальном направлении BR, BL0 может представлять собой пиксел с возможностью ссылки, расположенный в горизонтальном направлении BR, и TL может представлять собой пиксел с возможностью ссылки, расположенный в левой верхней границе текущего блока или на пересечении между горизонтальным направлением TR0 и вертикальным направлением BL0.

[00506] На основе пиксельной позиции, может оцениваться направленность текущего блока и информации признаков (например, края и т.д.).

[00507] В качестве примера <1>, пиксельное значение может постепенно увеличиваться или уменьшаться при перемещении диагонально от TL к BR. В том случае, если TL превышает или равен TR0 и BL0, BR может быть меньше или равно TR0 и BL0. Альтернативно, она может представлять собой противоположную конфигурацию.

[00508] В качестве примера <2>, пиксельное значение может постепенно увеличиваться или уменьшаться при перемещении диагонально от BL0 к TR0. В том случае, если BL0 превышает или равен TL и BR, TR0 может быть меньше или равно TL и BR. Альтернативно, она может представлять собой противоположную конфигурацию.

[00509] В качестве примера <3>, пиксельное значение может постепенно увеличиваться или уменьшаться при перемещении в горизонтальном направлении слева (TL, BL0) направо (TR0, BR). В этом случае, если TL превышает или равен TR0, BL0 может превышать или быть равно BR. Альтернативно, она может представлять собой противоположную конфигурацию.

[00510] В качестве примера <4>, пиксельное значение может постепенно свидетельствоваться или снижаться при перемещении в вертикальном направлении сверху (TL, TR0) вниз (BL0, BR). В том случае, если TL превышает или равен BL0, TR0 может превышать или быть равно BR. Альтернативно, она может представлять собой противоположную конфигурацию.

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

[00512] <1> Пример: Когда TL<=TR0 и TL<=BL0, значение BR может извлекаться (предсказываться) на основе разности между пикселами посредством оценки того, что имеется тенденция увеличения от TL до BR.

[00513] Например, пиксельное значение BR может извлекаться посредством суммирования значения (BL0-TL) с TR0 либо посредством суммирования значения (TR0-TL) с BL0. Альтернативно, пиксельное значение BR может извлекаться посредством усреднения или усреднения со взвешиванием упомянутых двух значений.

[00514] <2> Пример: Когда TL>=BL0 и TL<=TR0, значение BR может извлекаться на основе разности между пикселами посредством оценки того, что имеется тенденция увеличения от BL0 до TR0.

[00515] Например, BR пиксельное значение может извлекаться посредством вычитания (TL-BL0) значения из TR0 или посредством суммирования значения (TR0-TL) с BL0. Альтернативно, пиксельное значение BR может извлекаться посредством усреднения или усреднения со взвешиванием упомянутых двух значений.

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

[00517] С этой целью, информация характеристик (например, дисперсия, среднеквадратическое отклонение и т.д.) верхней области и левой области текущего блока может вычисляться. В качестве примера, если определяется то, что информация характеристик пикселов между TL и TR0 или информация характеристик пикселов между TL и BL0 оптимально отражает увеличение или уменьшение блока, может использоваться способ извлечения значения произвольного пиксела, такого как BR на основе предварительно определенного пиксела текущего блока, такого как TL, TR0, BL0 и т.д.

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

[00520] Помимо этого, различные варианты осуществления настоящего раскрытия могут реализовываться посредством аппаратных средств, микропрограммного обеспечения, программного обеспечения либо комбинации вышеозначенного. В случае аппаратной реализации, аппаратные средства могут реализовываться посредством одной или более специализированных интегральных схем (ASIC), процессоров цифровых сигналов (DSP), устройств обработки цифровых сигналов (DSPD), программируемых логических устройств (PLD), программируемых пользователем вентильных матриц (FPGA), универсального процессора, контроллера, микроконтроллера, микропроцессора и т.п.

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

Промышленная применимость

[00522] Настоящее изобретение может использоваться для того, чтобы кодировать/декодировать видеосигнал.

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

название год авторы номер документа
Назначение импульсно-кодовой модуляции области квантованных на блочной основе остатков для выведения режима интра-предсказания 2020
  • Кобан, Мухаммед Зейд
  • Ван Дер Аувера, Герт
  • Карчевич, Марта
RU2816752C2
СПОСОБ И УСТРОЙСТВО КОДИРОВАНИЯ/ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ 2019
  • Ким, Ки Баек
RU2752009C1
СПОСОБ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ И СПОСОБ И УСТРОЙСТВО КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ В СИСТЕМЕ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ 2020
  • Чой, Дзангвон
  • Хео, Дзин
  • Ким, Сеунгхван
  • Лим, Дзаехиун
  • Ли, Линг
RU2804481C2
СПОСОБ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ И СПОСОБ И УСТРОЙСТВО КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ В СИСТЕМЕ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ 2023
  • Чой, Дзангвон
  • Хео, Дзин
  • Ким, Сеунгхван
  • Лим, Дзаехиун
  • Ли, Линг
RU2811779C1
СПОСОБ И УСТРОЙСТВО ДЕКОДИРОВАНИЯ ИЗОБРАЖЕНИЯ И СПОСОБ И УСТРОЙСТВО КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ В СИСТЕМЕ КОДИРОВАНИЯ ИЗОБРАЖЕНИЯ 2020
  • Чой, Дзангвон
  • Хео, Дзин
  • Ким, Сеунгхван
  • Лим, Дзаехиун
  • Ли, Линг
RU2780018C1
КОДЕР, ДЕКОДЕР И СООТВЕТСТВУЮЩИЕ СПОСОБЫ ДЛЯ ИНТРА-ПРЕДСКАЗАНИЯ 2020
  • Ван, Бяо
  • Эсенлик, Семих
  • Котра, Ананд Меер
  • Гао, Хань
  • Чен, Цзянле
RU2821012C2
Упрощенный способ сигнализации для режима аффинного линейного взвешенного внутреннего предсказания 2020
  • Чжао Лян
  • Чжао Синь
  • Ли Сян
  • Лю Шань
RU2780794C1
КОДИРОВАНИЕ ВИДЕО ИЛИ ИЗОБРАЖЕНИЙ НА ОСНОВЕ ОТОБРАЖЕНИЯ ЯРКОСТИ И МАСШТАБИРОВАНИЯ ЦВЕТНОСТИ 2020
  • Чжао, Цзе
  • Ким, Сеунгхван
RU2781435C1
КОДИРОВАНИЕ ВИДЕО ИЛИ ИЗОБРАЖЕНИЙ НА ОСНОВЕ ОТОБРАЖЕНИЯ ЯРКОСТИ И МАСШТАБИРОВАНИЯ ЦВЕТНОСТИ 2020
  • Чжао, Цзе
  • Ким, Сеунгхван
RU2804453C2
КОДИРОВАНИЕ ВИДЕО ИЛИ ИЗОБРАЖЕНИЙ НА ОСНОВЕ ОТОБРАЖЕНИЯ ЯРКОСТИ И МАСШТАБИРОВАНИЯ ЦВЕТНОСТИ 2023
  • Чжао, Цзе
  • Ким, Сеунгхван
RU2811987C1

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

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

Изобретение относится к способу и устройству кодирования/декодирования видео. Техническим результатом является повышение эффективности сжатия изображений. Результат достигается тем, что определяют опорную зону для интра-предсказания текущего блока; извлекают режим интра-предсказания текущего блока; и декодируют текущий блок на основе опорной зоны и режима интра-предсказания. 3 н. и 5 з.п. ф-лы, 15 ил., 6 табл.

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

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

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

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

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

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

при этом определение режима интра-предсказания блока цветности содержит этапы, на которых:

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

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

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

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

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

5. Способ по п.4, в котором определение режима интра-предсказания блока яркости содержит этапы, на которых:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

передают сформированный поток битов,

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

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

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

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

WO 2017043786 A1, 2017.03.16
WO 2016205699 A1, 2016.12.22
WO 2018066863 A1, 2018.04.12
ВИДЕОКОДИРОВАНИЕ ИНТРА-РЕЖИМА 2012
  • Серегин Вадим
  • Чиэнь Вей-Дзунг
  • Карчевич Марта
RU2584498C2
US 2017374369 A1, 2017.12.28
JP 2018064189 A, 2018.04.19
KR 20180135836 A, 2018.12.21
EP 3223521 A1, 2017.09.27
РАСШИРЕННАЯ СИГНАЛИЗАЦИЯ РЕЖИМА ВНУТРЕННЕГО ПРЕДСКАЗАНИЯ ДЛЯ КОДИРОВАНИЯ ВИДЕО, ИСПОЛЬЗУЮЩЕГО РЕЖИМ СОСЕДСТВА 2012
  • Чиэнь Вэй-Цзюн
  • Карчевич Марта
  • Ван Сянлинь
RU2601843C2

RU 2 809 684 C2

Авторы

Ким, Ки Баек

Даты

2023-12-14Публикация

2019-12-30Подача