RU2792223C1 - Information coding regarding a set of transformation kernels - Google Patents

Information coding regarding a set of transformation kernels Download PDF

Info

Publication number
RU2792223C1
RU2792223C1 RU2022100983A RU2022100983A RU2792223C1 RU 2792223 C1 RU2792223 C1 RU 2792223C1 RU 2022100983 A RU2022100983 A RU 2022100983A RU 2022100983 A RU2022100983 A RU 2022100983A RU 2792223 C1 RU2792223 C1 RU 2792223C1
Authority
RU
Russia
Prior art keywords
index
permission
mts
transform
context
Prior art date
Application number
RU2022100983A
Other languages
Russian (ru)
Inventor
Дзунгхак НАМ
Моонмо КОО
Дзаехиун ЛИМ
Сеунгхван КИМ
Original Assignee
ЭлДжи ЭЛЕКТРОНИКС ИНК.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ЭлДжи ЭЛЕКТРОНИКС ИНК. filed Critical ЭлДжи ЭЛЕКТРОНИКС ИНК.
Application granted granted Critical
Publication of RU2792223C1 publication Critical patent/RU2792223C1/en

Links

Images

Abstract

FIELD: image coding technology.
SUBSTANCE: invention relates to image coding technology, specifically, to information coding regarding a set of transformation kernels. The technical result is achieved by the fact that image decoding comprises a step for obtaining a multiple transformation selection (MTS) index and residual information from the bit stream; a step for extracting transformation coefficients for the block regarding residual information and a step for forming residual selection of the block regarding MTS index and transformation coefficient, where the MTS index indicates the set of transformation kernels, which shall be applied to the block, from possible variants of the conversion kernels sets at least one resolution element from the MTS index resolution element string is extracted based on context coding, while context coding is performed based on the increase and decrease values in the context index related to the MTS index, and one increase and decrease value in the context index can be used to context encode the first resolution element from the resolution elements from the resolution element string.
EFFECT: invention improves an image/video compression gain.
9 cl, 13 dwg, 6 tbl

Description

Уровень техникиState of the art

Область техники, к которой относится изобретениеThe technical field to which the invention belongs

[1] Настоящее раскрытие относится к технологии кодирования изображений, а более конкретно, к кодированию информации относительно набора ядер преобразования.[1] The present disclosure relates to image coding technology, and more specifically, to encoding information regarding a set of transformation kernels.

Описание предшествующего уровня техникиDescription of the Prior Art

[2] В последнее время, спрос на высококачественное изображение/видео высокого разрешения, к примеру, 4K, 8K либо изображения/видео еще более сверхвысокой четкости (UHD), растет в различных областях техники. По мере того, как разрешение или качество изображений/видео становится более высоким, относительно больший объем информации или число битов передается, чем для традиционных данных изображений/видео. Следовательно, если данные изображений/видео передаются через такую среду, как существующая проводная/беспроводная широкополосная линия, либо сохраняются на унаследованном от прошлого носителе хранения данных, затраты на передачу и хранение серьезно увеличиваются.[2] Recently, the demand for high-quality high-definition image/video, such as 4K, 8K, or even more ultra-high definition (UHD) images/video, has been growing in various fields of technology. As the resolution or quality of images/video becomes higher, a relatively larger amount of information or number of bits is transmitted than for conventional image/video data. Therefore, if image/video data is transmitted via a medium such as an existing wired/wireless broadband line, or stored in a legacy storage medium, transmission and storage costs are greatly increased.

[3] Кроме того, растет интерес и спрос в отношении контента виртуальной реальности (VR) и искусственной реальности (AR) и иммерсивного мультимедиа, к примеру, голограммы; а также растет широковещательная передача изображений/видео, демонстрирующих характеристики изображений/видео, отличающиеся от характеристик фактического изображения/видео, к примеру, игровых изображений/видео.[3] In addition, there is growing interest and demand for virtual reality (VR) and artificial reality (AR) content and immersive multimedia such as holograms; and the broadcasting of images/videos showing image/video characteristics different from those of the actual image/video, such as game images/videos, is also on the rise.

[4] Следовательно, требуется высокоэффективная технология сжатия изображений/видео для того, чтобы эффективно сжимать и передавать, сохранять или воспроизводить высококачественные изображения/видео высокого разрешения, демонстрирующие различные характеристики, как описано выше.[4] Therefore, a highly efficient image/video compression technology is required in order to efficiently compress and transmit, store, or reproduce high-quality, high-resolution images/videos exhibiting various characteristics as described above.

Сущность изобретенияThe essence of the invention

[5] Согласно варианту осуществления настоящего документа, предоставляются способ и оборудование для повышения эффективности кодирования изображений/видео.[5] According to an embodiment of the present document, a method and equipment for improving image/video coding efficiency is provided.

[6] Согласно варианту осуществления настоящего документа, предоставляются способ и оборудование для кодирования MTS-индекса при кодировании видео.[6] According to an embodiment of the present document, a method and equipment for encoding an MTS index in video encoding are provided.

[7] Согласно варианту осуществления настоящего документа, предоставляются способ и оборудование для передачи в служебных сигналах информации MTS-индекса.[7] According to an embodiment of the present document, a method and equipment for signaling MTS index information is provided.

[8] Согласно варианту осуществления настоящего документа, предоставляются способ и оборудование для передачи в служебных сигналах информации, представляющей набор ядер преобразования, который должен применяться к текущему блоку, из множества наборов ядер преобразования.[8] According to an embodiment of the present document, a method and equipment is provided for signaling information representing a set of transform kernels to be applied to a current block from a plurality of transform kernel sets.

[9] Согласно варианту осуществления настоящего документа, предоставляются способ и оборудование для контекстного кодирования или обходного кодирования относительно элементов разрешения для MTS-индекса.[9] According to an embodiment of the present document, a method and equipment for context encoding or bypass encoding regarding bins for an MTS index is provided.

[10] Согласно варианту осуществления настоящего документа, предоставляется способ декодирования видео/изображений, осуществляемый посредством оборудования декодирования.[10] According to an embodiment of the present document, a video/image decoding method by means of decoding equipment is provided.

[11] Согласно варианту осуществления настоящего документа, предоставляется оборудование декодирования для выполнения декодирования видео/изображений.[11] According to an embodiment of the present document, decoding equipment is provided to perform video/image decoding.

[12] Согласно варианту осуществления настоящего документа, предоставляется способ кодирования видео/изображений, осуществляемый посредством оборудования кодирования.[12] According to an embodiment of the present document, there is provided a video/image encoding method performed by encoding equipment.

[13] Согласно варианту осуществления настоящего документа, предоставляется оборудование кодирования для выполнения кодирования видео/изображений.[13] According to an embodiment of the present document, encoding equipment for performing video/image encoding is provided.

[14] Согласно варианту осуществления настоящего документа, предоставляется компьютерно-читаемый цифровой носитель хранения данных, сохраняющий кодированную информацию видео/изображений, сформированную согласно способу кодирования видео/изображений, раскрытому по меньшей мере в одном из вариантов осуществления этого документа.[14] According to an embodiment of the present document, a computer-readable digital storage medium is provided that stores encoded video/image information generated according to the video/image coding method disclosed in at least one embodiment of this document.

[15] Согласно варианту осуществления настоящего документа, предоставляется компьютерно-читаемый цифровой носитель хранения данных, сохраняющий кодированную информацию или кодированную информацию видео/изображений, инструктирующую оборудованию декодирования осуществлять способ декодирования видео/изображений, раскрытый по меньшей мере в одном из вариантов осуществления этого документа.[15] According to an embodiment of the present document, a computer-readable digital storage medium is provided that stores encoded information or encoded video/image information instructing decoding equipment to perform the video/image decoding method disclosed in at least one embodiment of this document.

[16] Согласно настоящему документу, общая эффективность сжатия изображений/видео может повышаться.[16] According to the present document, the overall efficiency of image/video compression can be improved.

[17] Согласно настоящему документу, информация MTS-индекса может эффективно передаваться в служебных сигналах.[17] According to the present document, MTS index information can be efficiently signaled.

[18] Согласно настоящему документу, сложность системы кодирования может понижаться посредством эффективного кодирования информации MTS-индекса.[18] According to the present document, the complexity of the encoding system can be reduced by efficiently encoding the MTS index information.

[19] Преимущества, которые могут получаться через подробный пример настоящего документа, не ограничены преимуществами, перечисленными выше. Например, могут быть предусмотрены различные технические эффекты, которые могут пониматься или логически выводиться специалистами в данной области техники из настоящего документа. Соответственно, подробные преимущества настоящего документа не ограничены преимуществами, явно указанными в настоящем документе, и могут включать в себя различные преимущества, которые могут пониматься или логически выводиться из технических признаков настоящего документа.[19] The benefits that can be obtained through the detailed example of this document are not limited to the benefits listed above. For example, various technical effects may be envisaged, which may be understood or inferred by those skilled in the art from this document. Accordingly, the detailed benefits of this document are not limited to those expressly stated herein and may include various benefits that may be understood or inferred from the technical features of this document.

Краткое описание чертежейBrief description of the drawings

[20] Фиг. 1 схематично иллюстрирует пример системы кодирования видео/изображений, к которой является применимым настоящий документ.[20] FIG. 1 schematically illustrates an example of a video/image coding system to which this document is applicable.

[21] Фиг. 2 является схемой, схематично поясняющей конфигурацию оборудования кодирования видео/изображений, к которому является применимым настоящий документ.[21] FIG. 2 is a diagram schematically explaining the configuration of video/image coding equipment to which this document is applicable.

[22] Фиг. 3 является схемой, схематично поясняющей конфигурацию оборудования декодирования видео/изображений, к которому является применимым настоящий документ.[22] FIG. 3 is a diagram schematically explaining the configuration of video/image decoding equipment to which this document is applicable.

[23] Фиг. 4 схематично иллюстрирует технологию множественного преобразования согласно варианту осуществления настоящего документа.[23] FIG. 4 schematically illustrates a multiple conversion technology according to an embodiment of the present document.

[24] Фиг. 5 примерно иллюстрирует внутренние направленные режимы в 65 направлениях прогнозирования.[24] FIG. 5 roughly illustrates the intra-directional modes in 65 prediction directions.

[25] Фиг. 6 и 7 являются схемами, поясняющими RST согласно варианту осуществления настоящего документа.[25] FIG. 6 and 7 are diagrams explaining RST according to an embodiment of the present document.

[26] Фиг. 8 примерно иллюстрирует контекстно-адаптивное двоичное арифметическое кодирование (CABAC) для кодирования синтаксических элементов.[26] FIG. 8 exemplifies context-adaptive binary arithmetic coding (CABAC) for encoding syntax elements.

[27] Фиг. 9 и 10 схематично иллюстрируют способ кодирования видео/изображений и пример связанных компонентов согласно варианту(ам) осуществления настоящего документа.[27] FIG. 9 and 10 schematically illustrate a video/image coding method and an example of related components according to embodiment(s) of the present document.

[28] Фиг. 11 и 12 схематично иллюстрируют способ декодирования видео/изображений и пример связанных компонентов согласно варианту(ам) осуществления настоящего документа.[28] FIG. 11 and 12 schematically illustrate a video/image decoding method and an example of related components according to the embodiment(s) of the present document.

[29] Фиг. 13 иллюстрирует пример системы потоковой передачи контента, к которой являются применимыми варианты осуществления, раскрытые в настоящем документе.[29] FIG. 13 illustrates an example of a content streaming system to which the embodiments disclosed herein are applicable.

Подробное описание вариантов осуществленияDetailed description of embodiments

[30] Настоящее раскрытие может модифицироваться в различных формах, и его конкретные варианты осуществления описываются и иллюстрируются на чертежах. Тем не менее, эти варианты осуществления не предназначены для ограничения раскрытия. Термины, используемые в нижеприведенном описании, используются для того, чтобы просто описывать конкретные варианты осуществления, но не имеют намерение ограничивать раскрытие. Выражение единственного числа включает в себя выражение множественного числа, до тех пор, пока они четко трактуются по-разному. Такие термины, как "включать в себя" и "иметь", предназначены для того, чтобы указывать то, что существуют признаки, числа, этапы, операции, элементы, компоненты либо комбинации вышеозначенного, используемые в нижеприведенном описании, и в силу этого следует понимать, что не исключается возможность наличия или добавления одного или более других признаков, чисел, этапов, операций, элементов, компонентов либо комбинаций вышеозначенного.[30] The present disclosure may be modified in various forms, and specific embodiments thereof are described and illustrated in the drawings. However, these embodiments are not intended to limit the disclosure. The terms used in the description below are used to simply describe specific embodiments, but are not intended to limit the disclosure. The singular expression includes the plural expression as long as they are clearly interpreted differently. Terms such as "include" and "have" are intended to indicate that there are features, numbers, steps, operations, elements, components, or combinations of the foregoing used in the description below, and as such should be understood , which does not exclude the possibility of the presence or addition of one or more other features, numbers, steps, operations, elements, components, or combinations of the above.

[31] Помимо этого, каждая конфигурация чертежей, описанных в этом документе, является независимой иллюстрацией для пояснения функций в качестве признаков, которые отличаются друг от друга, и не означает то, что каждая конфигурация реализуется посредством взаимно различных аппаратных средств или различного программного обеспечения. Например, две или более конфигураций могут комбинироваться, чтобы формировать одну конфигурацию, и одна конфигурация также может разделяться на несколько конфигураций. Без отступления от сущности этого документа, варианты осуществления, в которых конфигурации комбинируются и/или разделяются, включаются в объем формулы изобретения.[31] In addition, each configuration of the drawings described herein is an independent illustration for explaining functions as features that differ from each other, and does not mean that each configuration is implemented by mutually different hardware or different software. For example, two or more patterns may be combined to form one pattern, and one pattern may also be split into multiple patterns. Without departing from the spirit of this document, embodiments in which configurations are combined and/or separated are included within the scope of the claims.

[32] В дальнейшем в этом документе подробно описываются примеры настоящего варианта осуществления со ссылкой на прилагаемые чертежи. Помимо этого, аналогичные ссылки с номерами используются для того, чтобы указывать аналогичные элементы на всех чертежах, и идентичные описания аналогичных элементов опускаются.[32] Hereinafter, examples of the present embodiment are described in detail with reference to the accompanying drawings. In addition, like reference numerals are used to refer to like elements throughout the drawings, and like descriptions of like elements are omitted.

[33] Этот документ относится к кодированию видео/изображений. Например, способы/варианты осуществления, раскрытые в этом документе, могут относиться к стандарту универсального кодирования видео (VVC) (ITU-T (Rec. (H.266), к стандарту кодирования видео/изображений следующего поколения после VVC либо к другим связанным с кодированием видео стандартам (например, к стандарту высокоэффективного кодирования видео (HEVC) (ITU-T (Rec. (H.265), к стандарту фундаментального кодирования видео (EVC), к AVS2-стандарту и т.п.).[33] This document relates to video/image coding. For example, the methods/embodiments disclosed in this document may relate to the Universal Video Coding (VVC) (ITU-T (Rec. (H.266)) standard, the next generation video/picture coding standard after VVC, or other related video coding standards (eg, High Efficiency Video Coding (HEVC) standard (ITU-T (Rec. (H.265), Fundamental Video Coding (EVC) standard, AVS2 standard, etc.).

[34] Этот документ предлагает различные варианты осуществления кодирования видео/изображений, и вышеуказанные варианты осуществления также могут выполняться в комбинации между собой, если не указано иное.[34] This document proposes various video/image coding embodiments, and the above embodiments may also be performed in combination with each other unless otherwise noted.

[35] В этом документе, видео может означать последовательность изображений во времени. Кадр, в общем, означает единицу, представляющую одно изображение в конкретном временном кинокадре, и срез/плитка означает единицу, составляющую часть кадра с точки зрения кодирования. Срез/плитка может включать в себя одну или более единиц дерева кодирования (CTU). Один кадр может состоять из одного или более срезов/плиток. Один кадр может состоять из одной или более групп плиток. Одна группа плиток может включать в себя одну или более плиток.[35] In this document, video can mean a sequence of images over time. A frame generally means a unit representing one image in a particular temporal movie frame, and a slice/tile means a unit that is part of a frame from an encoding point of view. A slice/tile may include one or more coding tree units (CTUs). One frame may consist of one or more slices/tiles. One frame may consist of one or more tile groups. One group of tiles may include one or more tiles.

[36] Пиксел или пел может означать наименьшую единицу, составляющую один кадр (или изображение). Кроме того, "выборка" может использоваться в качестве термина, соответствующего пикселу. Выборка, в общем, может представлять пиксел или значение пиксела и может представлять только пиксел/пиксельное значение компонента сигнала яркости либо только пиксел/пиксельное значение компонента сигнала цветности.[36] A pixel or pel can mean the smallest unit that makes up one frame (or image). In addition, "sample" can be used as a term corresponding to a pixel. A sample may generally represent a pixel or a pixel value, and may represent only a pixel/pixel value of a luma component, or only a pixel/pixel value of a chroma component.

[37] Единица может представлять базовую единицу обработки изображений. Единица может включать в себя по меньшей мере одно из конкретной области кадра и информации, связанной с областью. Одна единица может включать в себя один блок сигналов яркости и два блока сигналов цветности (например, Cb, Cr). Единица может использоваться взаимозаменяемо с такими терминами, как блок или зона в некоторых случаях. В общем случае, блок MxN может включать в себя выборки (или массивы выборок) либо набор (или массив) коэффициентов преобразования из M столбцов и N строк. Альтернативно, выборка может означать пиксельное значение в пространственной области и когда такое пиксельное значение преобразуется в частотную область, это может означать коэффициент преобразования в частотной области.[37] The unit may represent a basic image processing unit. The unit may include at least one of a specific area of the frame and information associated with the area. One unit may include one luminance block and two chrominance blocks (eg, Cb, Cr). The unit can be used interchangeably with terms such as block or zone in some cases. In general, an MxN block may include samples (or arrays of samples) or a set (or array) of transform coefficients of M columns and N rows. Alternatively, the sample may mean a pixel value in the spatial domain, and when such a pixel value is converted to the frequency domain, it can mean a transform factor in the frequency domain.

[38] В этом документе, термин "/" и "," должен интерпретироваться как указывающий "и/или". Например, выражение "A/B" может означать "A и/или B". Дополнительно, "A, B" может означать "A и/или B". Дополнительно, "A/B/C" может означать "по меньшей мере одно из A, B и/или C". Кроме того, "A/B/C" может означать "по меньшей мере одно из A, B и/или C".[38] In this document, the terms "/" and "," are to be interpreted as indicating "and/or". For example, the expression "A/B" can mean "A and/or B". Additionally, "A, B" may mean "A and/or B". Additionally, "A/B/C" may mean "at least one of A, B and/or C". In addition, "A/B/C" may mean "at least one of A, B and/or C".

[39] Дополнительно, в документе, термин "или" должен интерпретироваться как указывающий "и/или". Например, выражение "A или B" может содержать 1) только A, 2) только B и/или 3) как A, так и B. Другими словами, термин "или" в этом документе должен интерпретироваться как указывающий "дополнительно или альтернативно".[39] Additionally, in the document, the term "or" should be interpreted as indicating "and/or". For example, the expression "A or B" may contain 1) only A, 2) only B, and/or 3) both A and B. In other words, the term "or" in this document is to be interpreted as indicating "in addition or alternatively" .

[40] В настоящем описании изобретения, "по меньшей мере одно из A и B" может означать "только A", "только B" или "как A, так и B". Кроме того, в настоящем описании изобретения, выражение "по меньшей мере одно из A или B" или "по меньшей мере одно из A и/или B" может интерпретироваться идентично "по меньшей мере одно из A и B".[40] In the present description of the invention, "at least one of A and B" can mean "only A", "only B", or "both A and B". In addition, in the present description of the invention, the expression "at least one of A or B" or "at least one of A and/or B" can be interpreted identically to "at least one of A and B".

[41] Дополнительно, в настоящем описании изобретения, "по меньшей мере одно из A, B и C" может означать "только A", "только B", "только C" либо "любая комбинация A, B и C". Кроме того, "по меньшей мере одно из A, B или C" или "по меньшей мере одно из A, B и/или C" может означать "по меньшей мере одно из A, B и C".[41] Additionally, in the present description of the invention, "at least one of A, B and C" can mean "only A", "only B", "only C", or "any combination of A, B and C". In addition, "at least one of A, B or C" or "at least one of A, B and/or C" can mean "at least one of A, B and C".

[42] Дополнительно, круглые скобки, используемые в настоящем описании изобретения, могут означать "например". В частности, в случае если "прогнозирование (внутреннее прогнозирование)" выражается, может указываться то, что "внутреннее прогнозирование" предлагается в качестве примера "прогнозирования". Другими словами, термин "прогнозирование" в настоящем описании изобретения не ограничен "внутренним прогнозированием", и может указываться то, что "внутреннее прогнозирование" предлагается в качестве примера "прогнозирования". Дополнительно, даже в случае, если "прогнозирование (т.е. внутреннее прогнозирование)" выражается, может указываться то, что "внутреннее прогнозирование" предлагается в качестве примера "прогнозирования".[42] Additionally, the parentheses used in the present description of the invention may mean "for example". In particular, in the case where "prediction (internal prediction)" is expressed, it may be indicated that "internal prediction" is proposed as an example of "prediction". In other words, the term "prediction" in the present description of the invention is not limited to "intra prediction", and it may be indicated that "intra prediction" is offered as an example of "prediction". Additionally, even if "prediction (ie, intra prediction)" is expressed, it may be indicated that "intra prediction" is offered as an example of "prediction".

[43] В настоящем описании изобретения, технические признаки, отдельно поясненные на одном чертеже, могут реализовываться отдельно либо могут реализовываться одновременно.[43] In the present description of the invention, the technical features, separately explained in one drawing, may be implemented separately or may be implemented simultaneously.

[44] Фиг. 1 иллюстрирует пример системы кодирования видео/изображений, к которой может применяться раскрытие настоящего документа.[44] FIG. 1 illustrates an example of a video/image coding system to which the disclosure of this document may apply.

[45] Ссылаясь на фиг. 1, система кодирования видео/изображений может включать в себя исходное устройство и приемное устройство. Исходное устройство может передавать кодированную информацию или данные видео/изображений в приемное устройство через цифровой носитель хранения данных или сеть в форме файла или потоковой передачи.[45] Referring to FIG. 1, a video/image coding system may include a source device and a destination device. The source device may transmit the encoded information or video/image data to the receiving device via a digital storage medium or a network in the form of a file or streaming.

[46] Исходное устройство может включать в себя видеоисточник, оборудование кодирования и передатчик. Приемное устройство может включать в себя приемник, оборудование декодирования и модуль рендеринга. Оборудование кодирования может называться "оборудованием кодирования видео/изображений", и оборудование декодирования может называться "оборудованием декодирования видео/изображений". Передатчик может включаться в оборудование кодирования. Приемник может включаться в оборудование декодирования. Модуль рендеринга может включать в себя дисплей, и дисплей может быть сконфигурирован как отдельное устройство или внешний компонент.[46] The source device may include a video source, encoding equipment, and a transmitter. The receiver may include a receiver, decoding hardware, and a renderer. The encoding equipment may be referred to as "video/image coding equipment", and the decoding equipment may be referred to as "video/image decoding equipment". The transmitter may be included in the encoding equipment. The receiver may be included in the decoding equipment. The renderer may include a display, and the display may be configured as a separate device or an external component.

[47] Видеоисточник может получать видео/изображение посредством процесса захвата, синтезирования или формирования видео/изображения. Видеоисточник может включать в себя устройство захвата видео/изображений и/или устройство формирования видео/изображений. Устройство захвата видео/изображений может включать в себя, например, одну или более камер, архивы видео/изображений, включающие в себя ранее захваченные видео/изображения, и т.п. Устройство формирования видео/изображений может включать в себя, например, компьютеры, планшетные компьютеры и смартфоны и может (электронно) формировать видео/изображения. Например, виртуальное видео/изображение может формироваться через компьютер и т.п. В этом случае, процесс захвата видео/изображений может заменяться посредством процесса формирования связанных данных.[47] A video source may acquire a video/image through a process of capturing, synthesizing, or generating a video/image. The video source may include a video/image capture device and/or a video/image generation device. The video/image capture device may include, for example, one or more cameras, video/image archives including previously captured videos/images, and the like. The video/image generation apparatus may include, for example, computers, tablet computers, and smartphones, and may (electronically) generate video/images. For example, the virtual video/image may be generated via a computer or the like. In this case, the video/image capturing process may be replaced by a linked data generation process.

[48] Оборудование кодирования может кодировать входное видео/изображение. Оборудование кодирования может выполнять последовательность процедур, таких как прогнозирование, преобразование и квантование, для эффективности сжатия и кодирования. Кодированные данные (кодированная информация видео/изображений) могут выводиться в форме потока битов.[48] The encoding equipment may encode the input video/image. The encoding equipment may perform a series of procedures such as prediction, transformation, and quantization for compression and encoding efficiency. Encoded data (encoded video/picture information) may be output in the form of a bit stream.

[49] Передатчик может передавать информацию или данные кодированных изображений/изображений, выводимую в форме потока битов, в приемник приемного устройства через цифровой носитель хранения данных или сеть в форме файла или потоковой передачи. Цифровой носитель хранения данных может включать в себя различные носители хранения данных, такие как USB, SD, CD, DVD, Blu-Ray, HDD, SSD и т.п. Передатчик может включать в себя элемент для формирования мультимедийного файла через предварительно определенный формат файлов и может включать в себя элемент для передачи через широковещательную передачу/сеть связи. Приемник может принимать/извлекать поток битов и передавать принимаемый поток битов в оборудование декодирования.[49] The transmitter may transmit information or coded image/image data output in the form of a bit stream to the receiver of the receiving device via a digital storage medium or a network in the form of a file or streaming. The digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, and the like. The transmitter may include an element for generating a media file via a predetermined file format and may include an element for transmission via a broadcast/communication network. The receiver may receive/retrieve the bitstream and transmit the received bitstream to the decoding equipment.

[50] Оборудование декодирования может декодировать видео/изображение посредством выполнения последовательности процедур, таких как деквантование, обратное преобразование и прогнозирование, соответствующих работе оборудования кодирования.[50] The decoding equipment can decode the video/image by performing a sequence of procedures such as dequantization, inverse transform, and prediction corresponding to the operation of the encoding equipment.

[51] Модуль рендеринга может подготавливать посредством рендеринга декодированное видео/изображение. Подготовленное посредством рендеринга видео/изображение может отображаться через дисплей.[51] The rendering module may prepare a decoded video/image by rendering. The rendered video/image can be displayed through the display.

[52] Фиг. 2 является схемой, принципиально иллюстрирующей конфигурацию оборудования кодирования видео/изображений, к которому может применяться раскрытие настоящего документа. В дальнейшем в этом документе, то, что называется "оборудованием кодирования видео", может включать в себя оборудование кодирования изображений.[52] FIG. 2 is a diagram principally illustrating the configuration of video/image coding equipment to which the disclosure of this document may apply. Hereinafter in this document, what is referred to as "video encoding equipment" may include image encoding equipment.

[53] Ссылаясь на фиг. 2, оборудование 200 кодирования может включать в себя и конфигурироваться с помощью модуля 210 сегментации изображений, модуля 220 прогнозирования, остаточного процессора 230, энтропийного кодера 240, сумматора 250, фильтра 260 и запоминающего устройства 270. Модуль 220 прогнозирования может включать в себя модуль 221 взаимного прогнозирования и модуль 222 внутреннего прогнозирования. Остаточный процессор 230 может включать в себя преобразователь 232, квантователь 233, деквантователь 234 и обратный преобразователь 235. Остаточный процессор 230 дополнительно может включать в себя вычитатель 231. Сумматор 250 может называться "модулем восстановления" или "формирователем восстановленных блоков". Модуль 210 сегментации изображений, модуль 220 прогнозирования, остаточный процессор 230, энтропийный кодер 240, сумматор 250 и фильтр 260, которые описываются выше, могут конфигурироваться посредством одного или более аппаратных компонентов (например, наборов микросхем или процессоров кодера) согласно варианту осуществления. Помимо этого, запоминающее устройство 270 может включать в себя буфер декодированных кадров (DPB) и также может конфигурироваться посредством цифрового носителя хранения данных. Аппаратный компонент дополнительно может включать в себя запоминающее устройство 270 в качестве внутреннего/внешнего компонента.[53] Referring to FIG. 2, the encoding equipment 200 may include and be configured with an image segmentation module 210, a prediction module 220, a residual processor 230, an entropy encoder 240, an adder 250, a filter 260, and a memory 270. The prediction module 220 may include a mutual prediction and module 222 internal prediction. Residual processor 230 may include a transformer 232, a quantizer 233, a dequantizer 234, and an inverse transformer 235. Residual processor 230 may further include a subtractor 231. Adder 250 may be referred to as a "rebuilder" or "recovered block generator". The image segmentation module 210, prediction module 220, residual processor 230, entropy encoder 240, adder 250, and filter 260 as described above may be configured by one or more hardware components (e.g., chipsets or encoder processors) according to an embodiment. In addition, the storage device 270 may include a decoded frame buffer (DPB) and may also be configured by a digital storage medium. The hardware component may further include a storage device 270 as an internal/external component.

[54] Модуль 210 сегментации изображений может разбивать входное изображение (или кадр, кинокадр), вводимое в оборудование 200 кодирования, на одну или более единиц обработки. В качестве примера, единица обработки может называться "единицей кодирования (CU)". В этом случае, единица кодирования может рекурсивно разбиваться согласно структуре в виде дерева квадрантов, двоичного дерева и троичного дерева (QTBTTT) из единицы дерева кодирования (CTU) или наибольшей единицы кодирования (LCU). Например, одна единица кодирования может разбиваться на множество единиц кодирования большей глубины на основе структуры в виде дерева квадрантов, структуры в виде двоичного дерева и/или структуры в виде троичного дерева. В этом случае, например, сначала применяется структура в виде дерева квадрантов, и впоследствии может применяться структура в виде двоичного дерева и/или структура в виде троичного дерева. Альтернативно, также сначала может применяться структура в виде двоичного дерева. Процедура кодирования согласно настоящему раскрытию может выполняться на основе конечной единицы кодирования, которая более не разбивается. В этом случае, на основе эффективности кодирования согласно характеристикам изображений и т.п., максимальная единица кодирования может непосредственно использоваться в качестве конечной единицы кодирования, или при необходимости, единица кодирования может рекурсивно разбиваться на единицы кодирования большей глубины, так что единица кодирования, имеющая оптимальный размер, может использоваться в качестве конечной единицы кодирования. Здесь, процедура кодирования может включать в себя такую процедуру, как прогнозирование, преобразование и восстановление, которая описывается ниже. В качестве другого примера, единица обработки дополнительно может включать в себя единицу прогнозирования (PU) или единицу преобразования (TU). В этом случае, каждая из единицы прогнозирования и единицы преобразования может разбиваться или сегментироваться из вышеуказанной конечной единицы кодирования. Единица прогнозирования может представлять собой единицу выборочного прогнозирования, и единица преобразования может представлять собой единицу для логического вывода коэффициента преобразования и/или единицу для логического вывода остаточного сигнала из коэффициента преобразования.[54] The image segmentation module 210 may split the input image (or frame, movie frame) input to the encoding equipment 200 into one or more processing units. As an example, a processing unit may be referred to as a "coding unit (CU)". In this case, a coding unit may be recursively split according to a quadtree, binary tree, and ternary tree (QTBTTT) structure from a coding tree unit (CTU) or a largest coding unit (LCU). For example, one coding unit may be split into multiple deeper coding units based on a quadtree structure, a binary tree structure, and/or a ternary tree structure. In this case, for example, a quadtree structure is applied first, and a binary tree structure and/or a ternary tree structure may subsequently be applied. Alternatively, a binary tree structure may also be applied first. An encoding procedure according to the present disclosure may be performed based on a final coding unit that is no longer split. In this case, based on the coding efficiency according to the characteristics of images and the like, the maximum coding unit may be directly used as the final coding unit, or, if necessary, the coding unit may be recursively split into coding units of greater depth, so that a coding unit having optimal size, can be used as the final coding unit. Here, the encoding procedure may include a procedure such as prediction, transformation, and recovery, which is described below. As another example, the processing unit may further include a prediction unit (PU) or a transformation unit (TU). In this case, each of the prediction unit and the transformation unit may be split or segmented from the above final coding unit. The prediction unit may be a selective prediction unit, and the transform unit may be a unit for inferring a transform coefficient and/or a unit for inferring a residual signal from a transform coefficient.

[55] Единица может взаимозаменяемо использоваться с таким термином, как блок или зона, в некоторых случаях. Обычно, блок MxN может представлять выборки, состоящие из M столбцов и N строк или группы коэффициентов преобразования. Выборка, в общем, может представлять пиксел или значение пиксела и также может представлять только пиксел/пиксельное значение компонента сигнала яркости, а также представлять только пиксел/пиксельное значение компонента сигнала цветности. Выборка может использоваться в качестве термина, соответствующего пикселу или пелу, конфигурирующему один кадр (или изображение).[55] A unit can be used interchangeably with a term such as block or zone in some cases. Typically, an MxN block may represent samples consisting of M columns and N rows, or a group of transform coefficients. A sample can generally represent a pixel or a pixel value, and can also represent only a pixel/pixel value of the luminance signal component, as well as represent only a pixel/pixel value of the chrominance signal component. Sample can be used as a term corresponding to a pixel or pel configuring one frame (or image).

[56] Вычитатель 231 может формировать остаточный сигнал (остаточный блок, остаточные выборки или массив остаточных выборок) посредством вычитания прогнозного сигнала (прогнозированный блок, прогнозные выборки или массив прогнозных выборок), вывод из модуля 220 прогнозирования из сигнала входного изображения (исходный блок, исходные выборки или массив исходных выборок) и сформированный остаточный сигнал передается в преобразователь 232. Модуль 220 прогнозирования может выполнять прогнозирование для целевого блока обработки (далее называемого "текущим блоком") и формировать прогнозированный блок, включающий в себя прогнозные выборки для текущего блока. Модуль 220 прогнозирования может определять то, применяется либо нет внутреннее прогнозирование или взаимное прогнозирование, для текущего блока или в единицах CU. Как описано ниже в описании каждого режима прогнозирования, модуль прогнозирования может формировать различные виды информации, связанной с прогнозированием, к примеру, информацию режима прогнозирования, и передавать сформированную информацию в энтропийный кодер 240. Информация относительно прогнозирования может кодироваться в энтропийном кодере 240 и выводиться в форме потока битов.[56] The subtractor 231 may generate a residual signal (residual block, residual samples, or residual sample array) by subtracting the prediction signal (predicted block, predictive samples, or predictive sample array), output from prediction unit 220 from the input image signal (original block, original samples or an array of original samples) and the generated residual signal is provided to the converter 232. Prediction module 220 may perform prediction on a target processing block (hereinafter referred to as "current block") and generate a prediction block including prediction samples for the current block. Prediction module 220 may determine whether or not intra prediction or inter prediction is applied, for the current block or in units of CUs. As described below in the description of each prediction mode, the prediction module may generate various kinds of prediction-related information, such as prediction mode information, and pass the generated information to the entropy encoder 240. The prediction information may be encoded in the entropy encoder 240 and output in the form bit stream.

[57] Модуль 222 внутреннего прогнозирования может прогнозировать текущий блок со ссылкой на выборки в пределах текущего кадра. Выборки, на которые ссылаются, могут быть расположены как граничащие с текущим блоком либо также могут быть расположены на большом расстоянии от текущего блока согласно режиму прогнозирования. Режимы прогнозирования при внутреннем прогнозировании могут включать в себя множество ненаправленных режимов и множество направленных режимов. Ненаправленный режим может включать в себя, например, DC-режим или планарный режим. Направленный режим может включать в себя, например, 33 режима направленного прогнозирования или 65 режимов направленного прогнозирования согласно точной степени направления прогнозирования. Тем не менее, это является иллюстративным, и режимы направленного прогнозирования, которые больше или меньше вышеуказанного числа, могут использоваться согласно настройке. Модуль 222 внутреннего прогнозирования также может определять режим прогнозирования, применяемый к текущему блоку, посредством использования режима прогнозирования, применяемого к соседнему блоку.[57] Intra prediction module 222 may predict the current block with reference to samples within the current frame. The referenced samples may be located as adjacent to the current block, or may also be located at a large distance from the current block according to the prediction mode. Prediction modes in intra prediction may include a plurality of non-directional modes and a plurality of directional modes. The non-directional mode may include, for example, a DC mode or a planar mode. The directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes according to the fine prediction direction degree. However, this is illustrative, and directional prediction modes that are greater than or less than the above number may be used according to the setting. The intra prediction unit 222 may also determine the prediction mode applied to the current block by using the prediction mode applied to the adjacent block.

[58] Модуль 221 взаимного прогнозирования может логически выводить прогнозированный блок текущего блока на основе опорного блока (массива опорных выборок), указываемого посредством вектора движения для опорного кадра. В это время, чтобы снижать объем информации движения, передаваемой в режиме взаимного прогнозирования, информация движения может прогнозироваться в единицах блоков, субблоков или выборок на основе корреляции информации движения между соседним блоком и текущим блоком. Информация движения может включать в себя вектор движения и индекс опорного кадра. Информация движения дополнительно может включать в себя информацию направления взаимного прогнозирования (L0-прогнозирование, L1-прогнозирование, бипрогнозирование и т.п.). В случае взаимного прогнозирования, соседний блок может включать в себя пространственный соседний блок, существующий в текущем кадре, и временной соседний блок, существующий в опорном кадре. Опорный кадр, включающий в себя опорный блок, и опорный кадр, включающий в себя временной соседний блок, могут быть идентичными друг другу или отличающимися друг от друга. Временной соседний блок может упоминаться под таким названием, как "совместно размещенный опорный блок", "совместно размещенная CU (colCU)" и т.п., и опорный кадр, включающий в себя временной соседний блок, также может называться "совместно размещенным кадром (colPic)". Например, модуль 221 взаимного прогнозирования может конфигурировать список возможных вариантов информации движения на основе соседних блоков и формировать информацию, указывающую то, какой возможный вариант используется для того, чтобы извлекать вектор движения и/или индекс опорного кадра текущего блока. Взаимное прогнозирование может выполняться на основе различных режимов прогнозирования, и, например, в случае режима пропуска и режима объединения, модуль 221 взаимного прогнозирования может использовать информацию движения соседнего блока в качестве информации движения текущего блока. В случае режима пропуска, остаточный сигнал может не передаваться, в отличие от режима объединения. Режим прогнозирования векторов движения (MVP) может указывать вектор движения текущего блока посредством использования вектора движения соседнего блока в качестве предиктора вектора движения и передачи в служебных сигналах разности векторов движения.[58] The inter-prediction unit 221 may infer a predicted block of the current block based on a reference block (reference sample array) indicated by a motion vector for the reference frame. At this time, in order to reduce the amount of motion information transmitted in the inter-prediction mode, the motion information may be predicted in units of blocks, sub-blocks, or samples based on the correlation of the motion information between the adjacent block and the current block. The motion information may include a motion vector and a reference frame index. The motion information may further include inter-prediction direction information (L0 prediction, L1 prediction, bi-prediction, and the like). In the case of inter prediction, the neighbor block may include a spatial neighbor block existing in the current frame and a temporal neighbor block existing in the reference frame. The reference frame including the reference block and the reference frame including the temporal neighbor block may be identical to each other or different from each other. The temporal neighbor block may be referred to as a "collocated reference block", "collocated CU (colCU)" or the like, and a reference frame including the temporal neighbor block may also be referred to as a "collocated frame ( colpic)". For example, the inter prediction unit 221 may configure a motion information candidate list based on neighboring blocks, and generate information indicating which candidate is used to derive the motion vector and/or the reference frame index of the current block. Inter prediction may be performed based on various prediction modes, and, for example, in the case of the skip mode and the join mode, the inter prediction unit 221 may use the neighboring block motion information as the current block motion information. In the case of the skip mode, the residual signal may not be transmitted, in contrast to the combine mode. The motion vector prediction (MVP) mode may indicate the motion vector of the current block by using the motion vector of an adjacent block as a motion vector predictor and signaling the motion vector difference.

[59] Модуль 220 прогнозирования может формировать прогнозный сигнал на основе различных способов прогнозирования, описанных ниже. Например, модуль прогнозирования может не только применять внутреннее прогнозирование или взаимное прогнозирование для того, чтобы прогнозировать один блок, но также и одновременно применять как внутренние прогнозирование, так и взаимное прогнозирование. Это может называться "комбинированным взаимным и внутренним прогнозированием (CIIP)". Помимо этого, модуль прогнозирования может выполнять внутриблочное копирование (IBC) для прогнозирования блока. Внутриблочное копирование может использоваться для кодирования изображений контента/движущихся изображений игры и т.п., например, для кодирования экранного контента (SCC). IBC по существу выполняет прогнозирование в текущем кадре, но оно может выполняться аналогично взаимному прогнозированию, в котором опорный блок извлекается в текущем кадре. Таким образом, IBC может использовать по меньшей мере одну из технологий взаимного прогнозирования, описанных в настоящем документе.[59] The prediction module 220 may generate a prediction signal based on various prediction methods described below. For example, the prediction module may not only apply intra prediction or inter prediction to predict one block, but also apply both intra prediction and inter prediction at the same time. This may be referred to as "combined mutual and intra prediction (CIIP)". In addition, the prediction module may perform intra-block copy (IBC) to predict a block. Intra-block copying can be used for encoding content images/moving images of a game and the like, such as screen content coding (SCC). The IBC essentially performs prediction in the current frame, but it can be performed similar to inter prediction in which the reference block is retrieved in the current frame. Thus, the IBC may use at least one of the inter-prediction technologies described herein.

[60] Прогнозный сигнал, сформированный через модуль 221 взаимного прогнозирования и/или модуль 222 внутреннего прогнозирования, может использоваться для того, чтобы формировать восстановленный сигнал или формировать остаточный сигнал. Преобразователь 232 может формировать коэффициенты преобразования посредством применения технологии преобразования к остаточному сигналу. Например, технология преобразования может включать в себя по меньшей мере одно из дискретного косинусного преобразования (DCT), дискретного синусного преобразования (DST), преобразования на основе графа (GBT) или условно нелинейного преобразования (CNT). Здесь, GBT означает преобразование, полученное из графа, когда информация взаимосвязи между пикселами представляется посредством графа. CNT означает преобразование, полученное на основе прогнозного сигнала, сформированного с использованием всех ранее восстановленных пикселов. Помимо этого, процесс преобразования может применяться к квадратным пиксельным блокам, имеющим идентичный размер, или может применяться к блокам, имеющим переменный размер, а не квадратный.[60] The predictive signal generated through the inter prediction module 221 and/or the intra prediction module 222 may be used to generate a recovered signal or generate a residual signal. Converter 232 may generate transform coefficients by applying a transform technique to the residual signal. For example, the transform technique may include at least one of discrete cosine transform (DCT), discrete sine transform (DST), graph-based transform (GBT), or conditionally non-linear transform (CNT). Here, GBT means a transformation obtained from a graph when relationship information between pixels is represented by a graph. CNT means the transformation obtained based on the predictive signal generated using all previously reconstructed pixels. In addition, the transformation process may be applied to square pixel blocks having the same size, or may be applied to blocks having a variable size rather than square.

[61] Квантователь 233 может квантовать коэффициенты преобразования и передавать их в энтропийный кодер 240, и энтропийный кодер 240 может кодировать квантованный сигнал (информацию относительно квантованных коэффициентов преобразования) и выводить поток битов. Информация относительно квантованных коэффициентов преобразования может называться "остаточной информацией". Квантователь 233 может перекомпоновывать блочные квантованные коэффициенты преобразования в одномерную векторную форму на основе порядка сканирования коэффициентов и формировать информацию относительно квантованных коэффициентов преобразования на основе квантованных коэффициентов преобразования в одномерной векторной форме. Энтропийный кодер 240 может осуществлять различные способы кодирования, такие как, например, кодирование экспоненциальным кодом Голомба, контекстно-адаптивное кодирование переменной длины (CAVLC), контекстно-адаптивное двоичное арифметическое кодирование (CABAC) и т.п. Энтропийный кодер 240 может кодировать информацию, необходимую для восстановления видео/изображений вместе с или отдельно из квантованных коэффициентов преобразования (например, значения синтаксических элементов и т.п.). Кодированная информация (например, кодированная информация видео/изображений) может передаваться или сохраняться в единицах слоя абстрагирования от сети (NAL) в форме потока битов. Информация видео/изображений дополнительно может включать в себя информацию относительно различных наборов параметров, таких как набор параметров адаптации (APS), набор параметров кадра (PPS), набор параметров последовательности (SPS) или набор параметров видео (VPS). Помимо этого, информация видео/изображений дополнительно может включать в себя общую информацию ограничений. В настоящем документе, передаваемые в служебных сигналах/передаваемые информация и/или синтаксические элементы, которые описываются ниже, могут кодироваться через вышеописанную процедуру кодирования и включаться в поток битов. Поток битов может передаваться через сеть или может сохраняться на цифровом носителе хранения данных. Здесь, сеть может включать в себя широковещательную сеть и/или сеть связи, и цифровой носитель хранения данных может включать в себя различные носители хранения данных, такие как USB, SD, CD, DVD, Blu-Ray, HDD, SSD и т.п. Передатчик (не проиллюстрирован), передающий сигнал, выводимый из энтропийного кодера 240, и/или модуль хранения (не проиллюстрирован), сохраняющий сигнал, могут быть сконфигурированы в качестве внутреннего/внешнего элемента оборудования 200 кодирования, и альтернативно, передатчик может включаться в энтропийный кодер 240.[61] The quantizer 233 may quantize the transform coefficients and pass them to the entropy encoder 240, and the entropy encoder 240 may encode the quantized signal (information regarding the quantized transform coefficients) and output a bitstream. The information regarding the quantized transform coefficients may be referred to as "residual information". The quantizer 233 may repackage the block quantized transform coefficients into one-dimensional vector form based on the scan order of the coefficients, and generate information about the quantized transform coefficients based on the quantized transform coefficients in one-dimensional vector form. Entropy encoder 240 may implement various coding methods such as exponential Golomb coding, context adaptive variable length coding (CAVLC), context adaptive binary arithmetic coding (CABAC), and the like, for example. Entropy encoder 240 may encode information needed to reconstruct the video/images together with or separately from the quantized transform coefficients (eg, syntax element values, etc.). Encoded information (eg, encoded video/image information) may be transmitted or stored in units of a network abstraction layer (NAL) in the form of a bitstream. The video/image information may further include information regarding various parameter sets such as an adaptation parameter set (APS), a frame parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video/image information may further include general restriction information. Herein, signaling/transmitted information and/or syntax elements, which are described below, may be encoded via the above-described encoding procedure and included in a bitstream. The bitstream may be transmitted over a network or may be stored on a digital storage medium. Here, the network may include a broadcast network and/or a communication network, and the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, and the like. . A transmitter (not illustrated), a transmitting signal output from the entropy encoder 240, and/or a storage module (not illustrated) storing the signal may be configured as an internal/external element of the encoding equipment 200, and alternatively, the transmitter may be included in the entropy encoder. 240.

[62] Квантованные коэффициенты преобразования, выводимые из квантователя 233, могут использоваться для того, чтобы формировать прогнозный сигнал. Например, остаточный сигнал (остаточный блок или остаточные выборки) может восстанавливаться посредством применения деквантования и обратного преобразования к квантованным коэффициентам преобразования через деквантователь 234 и обратный преобразователь 235. Сумматор 250 суммирует восстановленный остаточный сигнал с прогнозным сигналом, выводимым из модуля 220 прогнозирования, чтобы формировать восстановленный сигнал (восстановленный кадр, восстановленные выборки или массив восстановленных выборок). Если отсутствует остаток для целевого блока для обработки, к примеру, в случае, когда режим пропуска применяется, прогнозированный блок может использоваться в качестве восстановленного блока. Сформированный восстановленный сигнал может использоваться для внутреннего прогнозирования следующего целевого блока для обработки в текущем кадре и может использоваться для взаимного прогнозирования следующего кадра посредством фильтрации, как описано ниже.[62] The quantized transform coefficients output from quantizer 233 may be used to generate a predictive signal. For example, the residual signal (residual block or residual samples) may be recovered by applying dequantization and inverse transform to the quantized transform coefficients via dequantizer 234 and inverse transform 235. Summer 250 adds the recovered residual signal to the predictive signal output from predictor 220 to generate a reconstructed signal (recovered frame, recovered samples, or array of recovered samples). If there is no remainder for the target block to be processed, such as when the skip mode is applied, the predicted block may be used as the reconstructed block. The generated reconstructed signal may be used to intra-predict the next target block for processing in the current frame, and may be used to inter-predict the next frame through filtering as described below.

[63] Между тем, преобразование сигнала яркости с масштабированием сигнала цветности (LMCS) может применяться в ходе процесса кодирования и/или восстановления кадров.[63] Meanwhile, luminance chrominance scaling (LMCS) transform may be applied during the encoding and/or frame reconstruction process.

[64] Фильтр 260 может повышать субъективное/объективное качество изображений посредством применения фильтрации к восстановленному сигналу. Например, фильтр 260 может формировать модифицированный восстановленный кадр посредством применения различных способов фильтрации к восстановленному кадру и сохранять модифицированный восстановленный кадр в запоминающем устройстве 270, а именно, в DPB запоминающего устройства 270. Различные способы фильтрации могут включать в себя, например, фильтрацию для удаления блочности, дискретизированное адаптивное смещение (SAO), адаптивный контурный фильтр, билатеральный фильтр и т.п. Фильтр 260 может формировать различные виды информации, связанной с фильтрацией, и передавать сформированную информацию в энтропийный кодер 290, как описано ниже в описании каждого способа фильтрации. Информация, связанная с фильтрацией, может кодироваться посредством энтропийного кодера 290 и выводиться в форме потока битов.[64] The filter 260 can improve subjective/objective image quality by applying filtering to the reconstructed signal. For example, filter 260 may generate a modified reconstructed frame by applying various filtering methods to the reconstructed frame and store the modified reconstructed frame in memory 270, namely the DPB of memory 270. Various filtering methods may include, for example, filtering to deblock , sampled adaptive offset (SAO), adaptive loop filter, bilateral filter, etc. The filter 260 may generate various kinds of information related to the filtering and pass the generated information to the entropy encoder 290 as described below in the description of each filtering method. Filtering related information may be encoded by an entropy encoder 290 and output in the form of a bit stream.

[65] Модифицированный восстановленный кадр, передаваемый в запоминающее устройство 270, может использоваться в качестве опорного кадра в модуле 221 взаимного прогнозирования. Когда взаимное прогнозирование применяется посредством оборудования кодирования, рассогласование прогнозирования между оборудованием 200 кодирования и оборудованием декодирования может исключаться, и эффективность кодирования может повышаться.[65] The modified reconstructed frame transmitted to the memory 270 may be used as a reference frame in the inter prediction module 221 . When inter prediction is applied by the encoding equipment, prediction mismatch between the encoding equipment 200 and the decoding equipment can be eliminated, and encoding efficiency can be improved.

[66] DPB запоминающего устройства 270 может сохранять модифицированный восстановленный кадр для использования в качестве опорного кадра в модуле 221 взаимного прогнозирования. Запоминающее устройство 270 может сохранять информацию движения блока, из которой информация движения в текущем кадре извлекается (или кодируется), и/или информацию движения уже восстановленных блоков в кадре. Сохраненная информация движения может передаваться в модуль 221 взаимного прогнозирования для использования в качестве информации движения пространственного соседнего блока или информации движения временного соседнего блока. Запоминающее устройство 270 может сохранять восстановленные выборки восстановленных блоков в текущем кадре и может передавать восстановленные выборки в модуль 222 внутреннего прогнозирования.[66] The DPB of the memory 270 may store the modified reconstructed frame for use as a reference frame in the inter prediction module 221 . The memory 270 may store block motion information from which motion information in the current frame is extracted (or encoded) and/or motion information of already reconstructed blocks in the frame. The stored motion information may be transmitted to the inter-prediction unit 221 for use as spatial neighbor block motion information or temporal neighbor block motion information. The memory 270 may store the recovered samples of the recovered blocks in the current frame and may pass the recovered samples to the intra prediction module 222 .

[67] Фиг. 3 является схемой для схематичного пояснения конфигурации оборудования декодирования видео/изображений, к которому может применяться раскрытие настоящего документа.[67] FIG. 3 is a diagram for schematically explaining the configuration of video/image decoding equipment to which the disclosure of the present document may apply.

[68] Ссылаясь на фиг. 3, оборудование 300 декодирования может включать в себя и конфигурироваться с помощью энтропийного декодера 310, остаточного процессора 320, модуля 330 прогнозирования, сумматора 340, фильтра 350 и запоминающего устройства 360. Модуль 330 прогнозирования может включать в себя модуль 331 взаимного прогнозирования и модуль 332 внутреннего прогнозирования. Остаточный процессор 320 может включать в себя деквантователь 321 и обратный преобразователь 322. Энтропийный декодер 310, остаточный процессор 320, модуль 330 прогнозирования, сумматор 340 и фильтр 350, которые описываются выше, могут конфигурироваться посредством одного или более аппаратных компонентов (например, наборов микросхем или процессоров декодера) согласно варианту осуществления. Дополнительно, запоминающее устройство 360 может включать в себя буфер декодированных кадров (DPB) и может конфигурироваться посредством цифрового носителя хранения данных. Аппаратный компонент дополнительно может включать в себя запоминающее устройство 360 в качестве внутреннего/внешнего компонента.[68] Referring to FIG. 3, the decoding equipment 300 may include and be configured with an entropy decoder 310, a residual processor 320, a prediction unit 330, an adder 340, a filter 350, and a memory 360. The prediction unit 330 may include an inter prediction unit 331 and an intra prediction unit 332. forecasting. Residual processor 320 may include a dequantizer 321 and an inverse converter 322. Entropy decoder 310, residual processor 320, predictor 330, summer 340, and filter 350, as described above, may be configured by one or more hardware components (e.g., chipsets or decoder processors) according to the embodiment. Additionally, memory 360 may include a decoded frame buffer (DPB) and may be configured by a digital storage medium. The hardware component may further include a storage device 360 as an internal/external component.

[69] Когда поток битов, включающий в себя информацию видео/изображений, вводится, оборудование 300 декодирования может восстанавливать изображение в ответ на процесс, в котором информация видео/изображений обрабатывается в оборудовании кодирования, проиллюстрированном на фиг. 2. Например, оборудование 300 декодирования может извлекать единицы/блоки на основе связанной с разбиением на блоки информации, полученной из потока битов. Оборудование 300 декодирования может выполнять декодирование с использованием единицы обработки, применяемой для оборудования кодирования. Следовательно, единица обработки для декодирования, например, может представлять собой единицу кодирования, и единица кодирования может разбиваться согласно структуре в виде дерева квадрантов, структуре в виде двоичного дерева и/или структуре в виде троичного дерева из единицы дерева кодирования или максимальной единицы кодирования. Одна или более единиц преобразования могут извлекаться из единицы кодирования. Помимо этого, восстановленный сигнал изображения, декодированный и выводимый посредством оборудования 300 декодирования, может воспроизводиться посредством оборудования воспроизведения.[69] When a bitstream including video/image information is input, the decoding equipment 300 may reconstruct an image in response to a process in which the video/image information is processed in the encoding equipment illustrated in FIG. 2. For example, decoding equipment 300 may extract units/blocks based on blocking-related information obtained from the bitstream. The decoding equipment 300 may perform decoding using the processing unit used for the encoding equipment. Therefore, the processing unit for decoding, for example, may be a coding unit, and the coding unit may be partitioned according to a quadtree structure, a binary tree structure, and/or a ternary tree structure from a coding tree unit or a maximum coding unit. One or more transformation units may be derived from a coding unit. In addition, the reconstructed image signal decoded and output by the decoding equipment 300 can be reproduced by the playback equipment.

[70] Оборудование 300 декодирования может принимать сигнал, выводимый из оборудования кодирования по фиг. 2 в форме потока битов, и принимаемый сигнал может декодироваться через энтропийный декодер 310. Например, энтропийный декодер 310 может синтаксически анализировать поток битов, чтобы извлекать информацию (например, информацию видео/изображений), необходимую для восстановления изображений (или восстановления кадров). Информация видео/изображений дополнительно может включать в себя информацию относительно различных наборов параметров, таких как набор параметров адаптации (APS), набор параметров кадра (PPS), набор параметров последовательности (SPS) или набор параметров видео (VPS). Помимо этого, информация видео/изображений дополнительно может включать в себя общую информацию ограничений. Оборудование декодирования дополнительно может декодировать кадр на основе информации относительно набора параметров и/или общей информации ограничений. Передаваемая в служебных сигналах/принимаемая информация и/или синтаксические элементы, описанные далее в этом документе, могут декодироваться, может декодировать процедуру декодирования и получаться из потока битов. Например, энтропийный декодер 310 декодирует информацию в потоке битов на основе способа кодирования, такого как кодирование экспоненциальным кодом Голомба, CAVLC или CABAC, и выходных синтаксических элементов, требуемых для восстановления изображений, и квантованных значений коэффициентов преобразования для остатка. Более конкретно, способ энтропийного CABAC-декодирования может принимать элемент разрешения, соответствующий каждому синтаксическому элементу в потоке битов, определять контекстную модель посредством использования информации целевого синтаксического элемента декодирования, информации декодирования целевого блока декодирования или информации символа/элемента разрешения, декодированного на предыдущей стадии, и выполнять арифметическое декодирование для элемента разрешения посредством прогнозирования вероятности появления элемента разрешения согласно определенной контекстной модели и формировать символ, соответствующий значению каждого синтаксического элемента. В этом случае, способ энтропийного CABAC-декодирования может обновлять контекстную модель посредством использования информации декодированного символа/элемента разрешения для контекстной модели следующего символа/элемента разрешения после определения контекстной модели. Информация, связанная с прогнозированием, из информации, декодированной посредством энтропийного декодера 310, может предоставляться в модуль 330 прогнозирования, и информация относительно остатка, для которого энтропийное декодирование выполнено в энтропийном декодере 310, т.е. квантованные коэффициенты преобразования и связанная информация параметров, может вводиться в деквантователь 321. Помимо этого, информация относительно фильтрации из информации, декодированной посредством энтропийного декодера 310, может предоставляться в фильтр 350. Между тем, приемник (не проиллюстрирован) для приема сигнала, выводимого из оборудования кодирования, может быть дополнительно сконфигурирован в качестве внутреннего/внешнего элемента оборудования 300 декодирования, или приемник может представлять собой составляющий элемент энтропийного декодера 310. Между тем, оборудование декодирования согласно настоящему документу может называться "оборудованием декодирования видео/изображений/кадров", и оборудование декодирования может классифицироваться на информационный декодер (декодер информации видео/изображений/кадров) и выборочный декодер (декодер выборок видео/изображений/кадров). Информационный декодер может включать в себя энтропийный декодер 310, и выборочный декодер может включать в себя по меньшей мере одно из деквантователя 321, обратного преобразователя 322, модуля 330 прогнозирования, сумматора 340, фильтра 350 и запоминающего устройства 360.[70] The decoding equipment 300 may receive a signal output from the encoding equipment of FIG. 2 in the form of a bitstream, and the received signal may be decoded via entropy decoder 310. For example, entropy decoder 310 may parse the bitstream to extract information (eg, video/image information) needed for image recovery (or frame recovery). The video/image information may further include information regarding various parameter sets such as an adaptation parameter set (APS), a frame parameter set (PPS), a sequence parameter set (SPS), or a video parameter set (VPS). In addition, the video/image information may further include general restriction information. The decoding equipment may further decode the frame based on the parameter set information and/or general constraint information. Signaling/receiving information and/or syntax elements described later in this document may be decoded, may be decoded by a decoding procedure, and obtained from a bit stream. For example, entropy decoder 310 decodes information in the bitstream based on an encoding method such as Exponential Golomb, CAVLC, or CABAC coding and output syntax elements required for image reconstruction and quantized transform coefficient values for the remainder. More specifically, the CABAC entropy decoding method can receive a bin corresponding to each syntax element in the bit stream, determine a context model by using the decoding target syntax element information, the decoding information of the decoding target block, or the symbol/bin information decoded in the previous step, and perform arithmetic decoding on the permission element by predicting the occurrence probability of the permission element according to the determined context model, and generating a character corresponding to the value of each syntax element. In this case, the CABAC entropy decoding method can update the context model by using the decoded symbol/bin information for the context model of the next symbol/bin after the context model is determined. Prediction-related information from the information decoded by the entropy decoder 310 may be provided to the prediction unit 330, and information regarding the residue for which entropy decoding is performed in the entropy decoder 310, i. quantized transform coefficients and related parameter information may be input to the dequantizer 321. In addition, information regarding filtering from the information decoded by the entropy decoder 310 may be provided to the filter 350. Meanwhile, a receiver (not illustrated) for receiving a signal output from the equipment encoding equipment may be further configured as an internal/external member of the decoding equipment 300, or a receiver may be a constituent element of the entropy decoder 310. Meanwhile, the decoding equipment according to the present document may be called "video/image/frame decoding equipment", and the decoding equipment can be classified into an information decoder (video/picture/frame information decoder) and a sampling decoder (video/picture/frame samples decoder). The information decoder may include an entropy decoder 310, and the selective decoder may include at least one of a dequantizer 321, an inverse transform 322, a predictor 330, an adder 340, a filter 350, and a memory 360.

[71] Деквантователь 321 может деквантовать квантованные коэффициенты преобразования, с тем чтобы выводить коэффициенты преобразования. Деквантователь 321 может перекомпоновывать квантованные коэффициенты преобразования в двумерной блочной форме. В этом случае, перекомпоновка может выполняться на основе порядка сканирования коэффициентов, выполняемого посредством оборудования кодирования. Деквантователь 321 может выполнять деквантование для квантованных коэффициентов преобразования с использованием параметра квантования (например, информации размера шага квантования) и получать коэффициенты преобразования.[71] The dequantizer 321 may dequantize the quantized transform coefficients so as to output the transform coefficients. The dequantizer 321 may recompose the quantized transform coefficients in a two-dimensional block form. In this case, the reassembly may be performed based on the scan order of the coefficients performed by the encoding equipment. A dequantizer 321 may perform dequantization on the quantized transform coefficients using a quantization parameter (eg, quantization step size information) and obtain transform coefficients.

[72] Обратный преобразователь 322 обратно преобразует коэффициенты преобразования, чтобы получать остаточный сигнал (остаточный блок, массив остаточных выборок).[72] The inverse transform 322 inversely transforms the transform coefficients to obtain a residual signal (residual block, array of residual samples).

[73] Модуль 330 прогнозирования может выполнять прогнозирование текущего блока и формировать прогнозированный блок, включающий в себя прогнозные выборки текущего блока. Модуль прогнозирования может определять то, применяется внутреннее прогнозирование, или применяется взаимное прогнозирование к текущему блоку, на основе информации относительно прогнозирования, выводимой из энтропийного декодера 310, и определять конкретный режим внутреннего/взаимного прогнозирования.[73] Prediction module 330 may perform prediction on the current block and generate a predicted block including the prediction samples of the current block. The prediction module may determine whether intra prediction is applied or inter prediction is applied to the current block based on the prediction information output from the entropy decoder 310 and determine a specific intra/inter prediction mode.

[74] Модуль прогнозирования может формировать прогнозный сигнал на основе различных способов прогнозирования, описанных ниже. Например, модуль прогнозирования может не только применять внутреннее прогнозирование или взаимное прогнозирование для того, чтобы прогнозировать один блок, но также и одновременно применять внутреннее прогнозирование и взаимное прогнозирование. Это может называться "комбинированным взаимным и внутренним прогнозированием (CIIP)". Помимо этого, модуль прогнозирования может выполнять внутриблочное копирование (IBC) для прогнозирования блока. Внутриблочное копирование может использоваться для кодирования изображений контента/движущихся изображений игры и т.п., например, для кодирования экранного контента (SCC). IBC по существу выполняет прогнозирование в текущем кадре, но оно может выполняться аналогично взаимному прогнозированию, в котором опорный блок извлекается в текущем кадре. Таким образом, IBC может использовать по меньшей мере одну из технологий взаимного прогнозирования, описанных в настоящем документе.[74] The prediction module may generate a prediction signal based on various prediction methods described below. For example, the prediction module may not only apply intra prediction or inter prediction in order to predict one block, but also apply intra prediction and inter prediction at the same time. This may be referred to as "combined mutual and intra prediction (CIIP)". In addition, the prediction module may perform intra-block copy (IBC) to predict the block. Intra-block copying can be used for encoding content images/moving images of a game and the like, such as screen content coding (SCC). The IBC essentially performs prediction in the current frame, but it can be performed similar to inter prediction in which the reference block is retrieved in the current frame. Thus, the IBC may use at least one of the inter-prediction technologies described herein.

[75] Модуль 332 внутреннего прогнозирования может прогнозировать текущий блок посредством ссылки на выборки в текущем кадре. Выборки для ссылки могут быть расположены в окружении текущего блока или могут быть расположены с разнесением относительно текущего блока согласно режиму прогнозирования. При внутреннем прогнозировании, режимы прогнозирования могут включать в себя множество ненаправленных режимов и множество направленных режимов. Модуль 332 внутреннего прогнозирования может определять режим прогнозирования, который должен применяться к текущему блоку, посредством использования режима прогнозирования, применяемого к соседнему блоку.[75] Intra prediction module 332 may predict the current block by referring to the samples in the current frame. The reference samples may be located in the surroundings of the current block, or may be spaced apart from the current block according to the prediction mode. In intra prediction, the prediction modes may include a plurality of non-directional modes and a plurality of directional modes. The intra prediction unit 332 may determine the prediction mode to be applied to the current block by using the prediction mode applied to the adjacent block.

[76] Модуль 331 взаимного прогнозирования может извлекать прогнозированный блок для текущего блока на основе опорного блока (массива опорных выборок), указываемого посредством вектора движения для опорного кадра. В этом случае, чтобы уменьшать объем информации движения, передаваемой в режиме взаимного прогнозирования, информация движения может прогнозироваться в единицах блоков, субблоков или выборок на основе корреляции информации движения между соседним блоком и текущим блоком. Информация движения может включать в себя вектор движения и индекс опорного кадра. Информация движения дополнительно может включать в себя информацию относительно направления взаимного прогнозирования (L0-прогнозирование, L1-прогнозирование, бипрогнозирование и т.п.). В случае взаимного прогнозирования, соседний блок может включать в себя пространственный соседний блок, существующий в текущем кадре, и временной соседний блок, существующий в опорном кадре. Например, модуль 331 взаимного прогнозирования может конструировать список возможных вариантов информации движения на основе соседних блоков и извлекать вектор движения текущего блока и/или индекс опорного кадра на основе принимаемой информации выбора возможных вариантов. Взаимное прогнозирование может выполняться на основе различных режимов прогнозирования, и информация относительно прогнозирования может включать в себя информацию, указывающую режим взаимного прогнозирования для текущего блока.[76] The inter prediction unit 331 may derive a predicted block for the current block based on a reference block (reference sample array) indicated by a motion vector for the reference frame. In this case, in order to reduce the amount of motion information transmitted in the inter-prediction mode, the motion information may be predicted in units of blocks, sub-blocks, or samples based on the correlation of the motion information between the adjacent block and the current block. The motion information may include a motion vector and a reference frame index. The motion information may further include information regarding the direction of inter-prediction (L0 prediction, L1 prediction, bi-prediction, and the like). In the case of inter prediction, the neighbor block may include a spatial neighbor block existing in the current frame and a temporal neighbor block existing in the reference frame. For example, inter-prediction unit 331 may construct a list of motion information candidates based on adjacent blocks, and extract the current block's motion vector and/or reference frame index based on the received candidate selection information. Inter prediction may be performed based on various prediction modes, and the prediction information may include information indicative of the inter prediction mode for the current block.

[77] Сумматор 340 может формировать восстановленный сигнал (восстановленный кадр, восстановленный блок или массив восстановленных выборок) посредством суммирования полученного остаточного сигнала с прогнозным сигналом (прогнозированным блоком или массивом прогнозированных выборок), выводимым из модуля 330 прогнозирования. Если отсутствует остаток для целевого блока обработки, к примеру, в случае, когда режим пропуска применяется, прогнозированный блок может использоваться в качестве восстановленного блока.[77] The adder 340 may generate a reconstructed signal (recovered frame, reconstructed block, or array of reconstructed samples) by summing the obtained residual signal with the predictive signal (predicted block or array of predicted samples) output from prediction module 330. If there is no remainder for the target processing block, such as when the skip mode is applied, the predicted block may be used as the reconstructed block.

[78] Сумматор 340 может называться "модулем восстановления" или "формирователем восстановленных блоков". Сформированный восстановленный сигнал может использоваться для внутреннего прогнозирования следующего блока, который должен обрабатываться в текущем кадре, и, как описано ниже, также может выводиться посредством фильтрации либо также может использоваться для взаимного прогнозирования следующего кадра.[78] The adder 340 may be referred to as a "recovery module" or "recovered block generator". The generated recovered signal may be used for intra-prediction of the next block to be processed in the current frame, and as described below, may also be filtered out, or may also be used for inter-prediction of the next frame.

[79] Между тем, преобразование сигнала яркости с масштабированием сигнала цветности (LMCS) также может применяться в процессе декодирования кадров.[79] Meanwhile, luma signal scaling (LMCS) transformation can also be applied in the frame decoding process.

[80] Фильтр 350 может повышать субъективное/объективное качество изображений посредством применения фильтрации к восстановленному сигналу. Например, фильтр 350 может формировать модифицированный восстановленный кадр посредством применения различных способов фильтрации к восстановленному кадру и сохранять модифицированный восстановленный кадр в запоминающем устройстве 360, а именно, в DPB запоминающего устройства 360. Различные способы фильтрации могут включать в себя, например, фильтрацию для удаления блочности, дискретизированное адаптивное смещение, адаптивный контурный фильтр, билатеральный фильтр и т.п.[80] The filter 350 can improve subjective/objective image quality by applying filtering to the reconstructed signal. For example, filter 350 may generate a modified reconstructed frame by applying various filtering methods to the reconstructed frame and store the modified reconstructed frame in memory 360, namely the DPB of memory 360. Various filtering methods may include, for example, filtering to deblock , sampled adaptive bias, adaptive loop filter, bilateral filter, etc.

[81] (Модифицированный) восстановленный кадр, сохраненный в DPB запоминающего устройства 360, может использоваться в качестве опорного кадра в модуле 331 взаимного прогнозирования. Запоминающее устройство 360 может сохранять информацию движения блока, из которой информация движения в текущем кадре извлекается (или декодируется), и/или информацию движения уже восстановленных блоков в кадре. Сохраненная информация движения может передаваться в модуль 331 взаимного прогнозирования, так что она используется в качестве информации движения пространственного соседнего блока или информации движения временного соседнего блока. Запоминающее устройство 360 может сохранять восстановленные выборки восстановленных блоков в текущем кадре и передавать восстановленные выборки в модуль 332 внутреннего прогнозирования.[81] The (modified) reconstructed frame stored in the DPB of the memory 360 may be used as a reference frame in the inter prediction unit 331 . The memory 360 may store block motion information from which motion information in the current frame is extracted (or decoded) and/or motion information of already reconstructed blocks in the frame. The stored motion information may be transmitted to the inter-prediction unit 331 so that it is used as spatial neighbor block motion information or temporal neighbor block motion information. The memory 360 may store the reconstructed samples of the reconstructed blocks in the current frame and pass the reconstructed samples to the intra prediction module 332 .

[82] В настоящем описании изобретения, варианты осуществления, описанные в модуле 330 прогнозирования, деквантователе 321, обратном преобразователе 322 и фильтре 350 оборудования 300 декодирования, также могут применяться идентичным способом или соответственно модулю 220 прогнозирования, деквантователю 234, обратному преобразователю 235 и фильтру 260 оборудования 200 кодирования.[82] In the present description of the invention, the embodiments described in the predictor 330, the dequantizer 321, the inverse transform 322, and the filter 350 of the decoding equipment 300 can also be applied in the same way or respectively to the predictor 220, the dequantizer 234, the inverse transform 235, and the filter 260 equipment 200 encoding.

[83] Между тем, как описано выше, при выполнении кодирования видео, прогнозирование выполняется для того, чтобы повышать эффективность сжатия. Через это, может формироваться прогнозированный блок, включающий в себя прогнозные выборки для текущего блока, в качестве блока, который должен кодироваться (т.е. целевого блока кодирования). Здесь, прогнозированный блок включает в себя прогнозные выборки в пространственной области (или пиксельной области). Прогнозированный блок извлекается идентично в оборудовании кодирования и оборудовании декодирования, и оборудование кодирования может передавать в служебных сигналах информацию (остаточную информацию) относительно остатка между исходным блоком и прогнозированным блоком, а не значение исходной выборки исходного блока, в оборудование декодирования, за счет этого повышая эффективность кодирования изображений. Оборудование декодирования может извлекать остаточный блок, включающий в себя остаточные выборки на основе остаточной информации, суммировать остаточный блок и прогнозированный блок, чтобы формировать восстановленные блоки, включающие в себя восстановленные выборки, и формировать восстановленный кадр, включающий в себя восстановленные блоки.[83] Meanwhile, as described above, when video encoding is performed, prediction is performed in order to improve compression efficiency. Through this, a predicted block including prediction samples for the current block can be generated as a block to be encoded (ie, an encoding target block). Here, the prediction block includes prediction samples in the spatial domain (or pixel domain). The prediction block is extracted identically in the encoding equipment and the decoding equipment, and the encoding equipment can signal information (residual information) about the residual between the original block and the predicted block, rather than the value of the original sample of the original block, to the decoding equipment, thereby improving efficiency. image encoding. The decoding equipment can extract a residual block including residual samples based on the residual information, sum the residual block and the predicted block to generate reconstructed blocks including the reconstructed samples, and generate a reconstructed frame including the reconstructed blocks.

[84] Остаточная информация может формироваться через процедуру преобразования и квантования. Например, оборудование кодирования может извлекать остаточный блок между исходным блоком и прогнозированным блоком, выполнять процедуру преобразования для остаточных выборок (массива остаточных выборок), включенных в остаточный блок, чтобы извлекать коэффициенты преобразования, выполнять процедуру квантования для коэффициентов преобразования, чтобы извлекать квантованные коэффициенты преобразования и связанную с сигналами остаточную информацию в оборудование декодирования (через поток битов). Здесь, остаточная информация может включать в себя информацию значений квантованных коэффициентов преобразования, информацию местоположения, технологию преобразования, ядро преобразования, параметр квантования и т.п. Оборудование декодирования может выполнять процедуру деквантования/обратного преобразования на основе остаточной информации и извлекать остаточные выборки (или остаточные блоки). Оборудование декодирования может формировать восстановленный кадр на основе прогнозированного блока и остаточного блока. Кроме того, для ссылки для взаимного прогнозирования изображения позднее, оборудование кодирования также может деквантовать/обратно преобразовывать квантованные коэффициенты преобразования, чтобы извлекать остаточный блок и формировать восстановленный кадр на его основе.[84] The residual information may be generated through a transformation and quantization procedure. For example, the encoding equipment may extract the residual block between the original block and the predicted block, perform a transform procedure on the residual samples (array of residual samples) included in the residual block to extract transform coefficients, perform a quantization procedure on the transform coefficients to extract the quantized transform coefficients, and signal-related residual information to the decoding equipment (via the bitstream). Here, the residual information may include quantized transform coefficient value information, location information, transform technology, transform kernel, quantization parameter, and the like. The decoding equipment may perform a dequantization/inverse transform procedure based on the residual information and extract residual samples (or residual blocks). The decoding equipment may generate a reconstructed frame based on the predicted block and the residual block. In addition, for reference for image inter-prediction later, the encoding equipment may also dequantize/inversely transform the quantized transform coefficients to extract the residual block and generate a reconstructed frame based on it.

[85] Фиг. 4 схематично иллюстрирует технологию множественного преобразования согласно настоящему документу.[85] FIG. 4 schematically illustrates the multiple transform technology of the present document.

[86] Ссылаясь на фиг. 4, преобразователь может соответствовать преобразователю в оборудовании кодирования по фиг. 2, как описано выше, и обратный преобразователь может соответствовать обратному преобразователю в оборудовании кодирования по фиг. 2 или обратному преобразователю в оборудовании декодирования по фиг. 3, как описано выше.[86] Referring to FIG. 4, the converter may correspond to the converter in the encoding equipment of FIG. 2 as described above, and the inverse converter may correspond to the inverse converter in the encoding equipment of FIG. 2 or the inverse converter in the decoding equipment of FIG. 3 as described above.

[87] Преобразователь может извлекать коэффициенты (первичного) преобразования посредством выполнения первичного преобразования на основе остаточной выборки (массива остаточных выборок) в остаточном блоке (S410). Такое первичное преобразование может называться "базовым преобразованием". Здесь, первичное преобразование может быть основано на множественном выборе преобразования (MTS), и в случае, если множественное преобразование применяется в качестве первичного преобразования, оно может называться "множественным базовым преобразованием".[87] The converter can extract (primary) transform coefficients by performing primary transform based on the residual sample (residual sample array) in the residual block (S410). Such a primary transformation may be referred to as a "basic transformation". Here, the primary transform may be based on multiple transform selection (MTS), and in case the multiple transform is applied as the primary transform, it may be referred to as "multiple basic transform".

[88] Например, множественное базовое преобразование может представлять способ преобразования посредством дополнительного использования дискретного косинусного преобразования (DCT) тип 2 (DCT-II), дискретного синусного преобразования (DST) тип 7 (DST-VII), DCT-типа 8 (DCT-VIII) и/или DST-типа 1 (DST-I). Таким образом, множественное базовое преобразование может представлять способ преобразования для преобразования остаточного сигнала (или остаточного блока) пространственной области в коэффициенты преобразования (или коэффициенты первичного преобразования) частотной области на основе множества ядер преобразования, выбранных из DCT-типа 2, DST-типа 7, DCT-типа 8 и DST-типа 1. Здесь, коэффициенты первичного преобразования могут называться "временными коэффициентами преобразования на стороне преобразователя".[88] For example, the multiple base transform may represent a transform method by further using discrete cosine transform (DCT) type 2 (DCT-II), discrete sine transform (DST) type 7 (DST-VII), DCT type 8 (DCT- VIII) and/or DST-type 1 (DST-I). Thus, the multiple base transform may represent a transform method for converting a spatial domain residual signal (or residual block) into frequency domain transform coefficients (or primary transform coefficients) based on a plurality of transform kernels selected from DCT type 2, DST type 7, DCT type 8 and DST type 1. Here, the primary transform coefficients may be referred to as "temporal transducer-side transform coefficients".

[89] Другими словами, в случае если существующий способ преобразования применяется, преобразование пространственной области для остаточного сигнала (или остаточного блока) в частотную область может применяться на основе DCT-типа 2, и коэффициенты преобразования могут формироваться. Тем не менее, в отличие от этого, в случае если множественное базовое преобразование применяется, преобразование пространственной области для остаточного сигнала (или остаточного блока) в частотную область может применяться на основе DCT-типа 2, DST-типа 7, DCT-типа 8 и/или DST-типа 1, и коэффициенты преобразования (или коэффициенты первичного преобразования) могут формироваться. Здесь, DCT-тип 2, DST-тип 7, DCT-тип 8 и DST-тип 1 могут называться "типом преобразования", "ядром преобразования" или "базой преобразования". Типы DCT/DST-преобразования могут задаваться на основе базисных функций.[89] In other words, if the existing transform method is applied, the spatial domain transform for the residual signal (or residual block) into the frequency domain can be applied based on DCT type 2, and transform coefficients can be generated. However, in contrast, in case a multiple base transform is applied, the spatial domain transform for the residual signal (or residual block) to the frequency domain may be applied based on DCT type 2, DST type 7, DCT type 8, and /or DST type 1, and transform coefficients (or primary transform coefficients) may be generated. Here, DCT type 2, DST type 7, DCT type 8, and DST type 1 may be referred to as "transformation type", "transformation core", or "transformation base". Types of DCT/DST transformations can be specified based on basis functions.

[90] В случае, если множественное базовое преобразование выполняется, ядро вертикального преобразования и/или ядро горизонтального преобразования для целевого блока могут выбираться из числа ядер преобразования, вертикальное преобразование для целевого блока может выполняться на основе ядра вертикального преобразования, и горизонтальное преобразование для целевого блока может выполняться на основе ядра горизонтального преобразования. Здесь, горизонтальное преобразование может представлять преобразование для горизонтальных компонентов целевого блока, и вертикальное преобразование может представлять преобразование для вертикальных компонентов целевого блока. Ядро вертикального преобразования/ядро горизонтального преобразования может адаптивно определяться на основе режима прогнозирования и/или индекса преобразования целевого блока (CU или субблока), включающего в себя остаточный блок.[90] In case multiple base transform is performed, the vertical transform kernel and/or the horizontal transform kernel for the target block may be selected from among the transform kernels, the vertical transform for the target block may be performed based on the vertical transform kernel, and the horizontal transform for the target block can be performed on the basis of the horizontal transformation kernel. Here, the horizontal transform may represent a transform for the horizontal components of the target box, and the vertical transform may represent the transform for the vertical components of the target box. The vertical transform kernel/horizontal transform kernel may be adaptively determined based on the prediction mode and/or transform index of the target block (CU or subblock) including the residual block.

[91] Дополнительно, например, в случае выполнения первичного преобразования посредством применения MTS, конкретные базисные функции могут быть сконфигурированы как указанные значения, и в случае вертикального преобразования или горизонтального преобразования, взаимосвязь преобразования для ядра преобразования может быть сконфигурирована посредством комбинирования того, какие базисные функции применяются. Например, в случае если ядро преобразования горизонтального направления представляется посредством trTypeHor, и ядро преобразования вертикального направления представляется посредством trTypeVer, trTypeHor или trTypeVer, имеющее значение 0, может быть сконфигурировано как DCT2, и trTypeHor или trTypeVer, имеющее значение 1, может быть сконфигурировано как DCT7; trTypeHor или trTypeVer, имеющее значение 2, может быть сконфигурировано как DCT8.[91] Further, for example, in the case of performing primary transformation by applying the MTS, specific basis functions can be configured as the specified values, and in the case of vertical transformation or horizontal transformation, the transformation relationship for the transformation kernel can be configured by combining which basis functions apply. For example, in the case where the horizontal direction transformation kernel is represented by trTypeHor and the vertical direction transformation kernel is represented by trTypeVer, trTypeHor or trTypeVer having a value of 0 can be configured as DCT2, and trTypeHor or trTypeVer having a value of 1 can be configured as DCT7 ; trTypeHor or trTypeVer having a value of 2 may be configured as DCT8.

[92] Альтернативно, например, чтобы указывать любой из множества наборов ядер преобразования, MTS-индекс может кодироваться, и информация MTS-индекса может передаваться в служебных сигналах в оборудование декодирования. Здесь, MTS-индекс может представляться как синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx. Например, если MTS-индекс равен 0, может представляться то, что значения trTypeHor и trTypeVer равны 0, и (trTypeHor, trTypeVer)=(DCT2, DCT2). Если MTS-индекс равен 1, может представляться то, что значения trTypeHor и trTypeVer равны 1, и (trTypeHor, trTypeVer)=(DST7, DST7). Если MTS-индекс равен 2, может представляться то, что значение trTypeHor равно 2, и значение trTypeVer равно 1, и (trTypeHor, trTypeVer)=(DCT8, DST7). Если MTS-индекс равен 3, может представляться то, что значение trTypeHor равно 1, и значение trTypeVer равно 2, и (trTypeHor, trTypeVer)=(DST7, DCT8). Если MTS-индекс равен 4, может представляться то, что значения trTypeHor и trTypeVer равны 2, и (trTypeHor, trTypeVer)=(DCT8, DCT8). Например, набор ядер преобразования согласно MTS-индексу может представляться так, как указано в следующей таблице.[92] Alternatively, for example, to indicate any of the plurality of transform core sets, the MTS index may be encoded, and the MTS index information may be signaled to the decoding equipment. Here, the MTS index may be represented as a tu_mts_idx syntax element or an mts_idx syntax element. For example, if the MTS index is 0, the values of trTypeHor and trTypeVer may appear to be 0, and (trTypeHor, trTypeVer)=(DCT2, DCT2). If the MTS index is 1, the values of trTypeHor and trTypeVer may appear to be 1, and (trTypeHor, trTypeVer)=(DST7, DST7). If the MTS index is 2, the trTypeHor value is 2 and the trTypeVer value is 1, and (trTypeHor, trTypeVer)=(DCT8, DST7) may be represented. If the MTS index is 3, the value of trTypeHor is 1 and the value of trTypeVer is 2, and (trTypeHor, trTypeVer)=(DST7, DCT8). If the MTS index is 4, the values of trTypeHor and trTypeVer may appear to be 2, and (trTypeHor, trTypeVer)=(DCT8, DCT8). For example, the set of transformation kernels according to the MTS index may be represented as indicated in the following table.

[93] Табл. 1[93] Tab. 1

Figure 00000001
Figure 00000001

[94] Преобразователь может извлекать модифицированные коэффициенты (вторичного) преобразования посредством выполнения вторичного преобразования на основе коэффициентов (первичного) преобразования (S420). Первичное преобразование может представлять собой преобразование пространственной области в частотную область, и вторичное преобразование может представлять преобразование в более сжимающее выражение посредством использования корреляции, существующей между коэффициентами (первичного) преобразования.[94] The converter can extract modified (secondary) transform coefficients by performing secondary transform based on the (primary) transform coefficients (S420). The primary transform may be a spatial-to-frequency domain transform, and the secondary transform may be a transform to a more compressive expression by using the correlation existing between the (primary) transform coefficients.

[95] Например, вторичное преобразование может включать в себя неразделимое преобразование. В этом случае, вторичное преобразование может называться "неразделимым вторичным преобразованием (NSST)" или "зависимым от режима неразделимым вторичным преобразованием (MDNSST)". Неразделимое вторичное преобразование может представлять преобразование для формирования модифицированных коэффициентов преобразования (или коэффициентов вторичного преобразования) для остаточного сигнала посредством вторичного преобразования коэффициентов (первичного) преобразования, извлекаемых через первичное преобразование на основе матрицы неразделимого преобразования. Здесь, вертикальное преобразование и горизонтальное преобразование могут не применяться отдельно (или независимо) относительно коэффициентов (первичного) преобразования на основе матрицы неразделимого преобразования, но могут применяться одновременно.[95] For example, the secondary transform may include an inseparable transform. In this case, the secondary transform may be referred to as "non-separable secondary transform (NSST)" or "mode-dependent non-separable secondary transform (MDNSST)". The non-separable second transform may represent a transform for generating modified transform coefficients (or secondary transform coefficients) for the residual signal by re-transforming the (primary) transform coefficients derived through the primary transform based on the non-separable transform matrix. Here, the vertical transform and the horizontal transform may not be applied separately (or independently) with respect to the (primary) transform coefficients based on the nonseparable transform matrix, but may be applied simultaneously.

[96] Другими словами, неразделимое вторичное преобразование может представлять способ преобразования для перекомпоновки, например, двумерных сигналов (коэффициентов преобразования) в одномерный сигнал через конкретно определенное направление (например, направление сначала по строкам или направление сначала по столбцам), без разделения коэффициентов (первичного) преобразования на вертикальные компоненты и горизонтальные компоненты, и последующего формирования модифицированных коэффициентов преобразования (или коэффициентов вторичного преобразования) на основе матрицы неразделимого преобразования.[96] In other words, an inseparable secondary transform may be a transform method for recomposing, for example, two-dimensional signals (transform coefficients) into a one-dimensional signal via a specifically defined direction (for example, a row first direction or a column first direction), without separating the coefficients (primary ) transforming into vertical components and horizontal components, and then generating modified transform coefficients (or secondary transform coefficients) based on an inseparable transform matrix.

[97] Например, направление (или порядок) сначала по строкам может представлять компоновку блока MxN в линии в порядке "первая строка - N-ая строка", и направление (или порядок) сначала по столбцам может представлять компоновку блока MxN в линии в порядке "первый столбец - M-ый столбец". Здесь, M и N могут представлять ширину (W) и высоту (H) блока и могут быть положительными целыми числами.[97] For example, a direction (or order) row first may represent the layout of an MxN box in a line in the order "first row - Nth row", and a direction (or order) column first may represent the layout of an MxN box in a line in the order "first column - Mth column". Here, M and N may represent the width (W) and height (H) of the block, and may be positive integers.

[98] Например, неразделимое вторичное преобразование может применяться к левой верхней области блока, состоящего из коэффициентов (первичного) преобразования (далее блока коэффициентов преобразования). Например, если ширина (W) и высота (H) блока коэффициентов преобразования равны или больше 8, неразделимое вторичное преобразование 8×8 может применяться к левой верхней зоне 8×8 блока коэффициентов преобразования. Дополнительно, если ширина (W) и высота (H) блока коэффициентов преобразования равны или больше 4 и меньше 8, неразделимое вторичное преобразование 4×4 может применяться к левой верхней зоне min(8, W) x min(8, H) блока коэффициентов преобразования. Тем не менее, варианты осуществления не ограничены этим, и, например, даже если такое условие, что ширина (W) и высота (H) блока коэффициентов преобразования равны или больше 4, удовлетворяется, неразделимое вторичное преобразование 4×4 может применяться к левой верхней зоне min(8, W) x min(8, H) блока коэффициентов преобразования.[98] For example, an inseparable secondary transform may be applied to the top left region of a block consisting of (primary) transform coefficients (hereinafter, the transform coefficient block). For example, if the width (W) and height (H) of the transform coefficient block are equal to or greater than 8, an 8×8 inseparable secondary transform may be applied to the upper left 8×8 region of the transform coefficient block. Additionally, if the width (W) and height (H) of the transform coefficient block are equal to or greater than 4 and less than 8, a 4x4 inseparable secondary transform may be applied to the upper left zone min(8, W) x min(8, H) of the coefficient block transformations. However, the embodiments are not limited to this, and for example, even if such a condition that the width (W) and height (H) of the transform coefficient block is equal to or greater than 4 is satisfied, a 4×4 inseparable secondary transform can be applied to the left upper zone min(8, W) x min(8, H) of the transform coefficient block.

[99] В частности, например, в случае, когда входной блок 4×4 используется, неразделимое вторичное преобразование может выполняться следующим образом.[99] Specifically, for example, in the case where a 4×4 input block is used, the non-separable secondary transform may be performed as follows.

[100] Входной блок X 4×4 может представляться следующим образом.[100] The input block X 4×4 can be represented as follows.

[101] уравнение 1[101] Equation 1

Figure 00000002
Figure 00000002

[102] Например, векторная форма X может представляться следующим образом.[102] For example, a vector shape X can be represented as follows.

[103] уравнение 2[103] Equation 2

Figure 00000003
Figure 00000003

[104] Ссылаясь на уравнение 2,

Figure 00000004
может представлять вектор X, и двумерный блок X в уравнении 1 может перекомпоновываться и представляться в качестве одномерного вектора в соответствии с порядком сначала по строкам.[104] Referring to Equation 2,
Figure 00000004
may represent a vector X, and the two-dimensional block X in Equation 1 may be rearranged and represented as a one-dimensional vector according to row first order.

[105] В этом случае, вторичное неразделимое преобразование может вычисляться следующим образом.[105] In this case, the secondary inseparable transformation can be calculated as follows.

[106] уравнение 3[106] Equation 3

Figure 00000005
Figure 00000005

[107] Здесь,

Figure 00000006
может представлять вектор коэффициентов преобразования, и T может представлять матрицу (неразделимого) преобразования 16×16.[107] Here,
Figure 00000006
may represent a vector of transform coefficients, and T may represent a 16×16 (inseparable) transform matrix.

[108] На основе уравнения 3,

Figure 00000006
, имеющий размер 16×1, может извлекаться, и
Figure 00000006
может реорганизовываться в качестве блока 4×4 через порядок сканирования (горизонтальный, вертикальный или диагональный). Тем не менее, вышеописанное вычисление является примерным, и чтобы уменьшать вычислительную сложность неразделимого вторичного преобразования, гиперкубическое преобразование Гивенса (HyGT) и т.п. может использоваться для того, чтобы вычислять неразделимое вторичное преобразование.[108] Based on Equation 3,
Figure 00000006
, having a size of 16×1, can be extracted, and
Figure 00000006
can be reorganized as a 4×4 block through the scan order (horizontal, vertical or diagonal). However, the above calculation is exemplary, and in order to reduce the computational complexity of the inseparable secondary transform, the Givens Hypercubic Transform (HyGT) and the like. can be used for computing an inseparable secondary transformation.

[109] Между тем, при неразделимом вторичном преобразовании, ядро преобразования (либо база преобразования или тип преобразования) может выбираться зависимым от режима способом. Здесь, режим может включать в себя режим внутреннего прогнозирования и/или режим взаимного прогнозирования.[109] Meanwhile, in an inseparable secondary transform, a transform kernel (either a transform base or a transform type) may be selected in a mode-dependent manner. Here, the mode may include an intra prediction mode and/or an inter prediction mode.

[110] Например, как описано выше, NSST может выполняться на основе преобразования 8×8 или преобразования 4×4, определенного на основе ширины (W) и высоты (H) блока коэффициентов преобразования. Например, если W и H равны или больше 8, преобразование 8×8 может представлять преобразование, которое может применяться к зоне 8×8, включенной в соответствующий блок коэффициентов преобразования, и зона 8×8 может представлять собой левую верхнюю зону 8×8 в соответствующем блоке коэффициентов преобразования. Дополнительно, аналогично, если W и H равны или больше 4, преобразование 4×4 может представлять преобразование, которое может применяться к зоне 4×4, включенной в соответствующий блок коэффициентов преобразования, и зона 4×4 может представлять собой левую верхнюю зону 4×4 в соответствующем блоке коэффициентов преобразования. Например, матрица ядра преобразования 8×8 может представлять собой матрицу 64×64/16×64, и матрица ядра преобразования 4×4 может представлять собой матрицу 16×16/8×16.[110] For example, as described above, the NSST may be performed based on an 8×8 transform or a 4×4 transform determined based on the width (W) and height (H) of the transform coefficient block. For example, if W and H are equal to or greater than 8, the 8×8 transform may represent a transform that can be applied to the 8×8 zone included in the corresponding transform coefficient block, and the 8×8 zone may represent the top left 8×8 zone in corresponding block of transformation coefficients. Further, similarly, if W and H are equal to or greater than 4, the 4×4 transform may represent a transform that can be applied to the 4×4 zone included in the corresponding transform coefficient block, and the 4×4 zone may represent the upper left 4× zone. 4 in the corresponding transform coefficient block. For example, an 8x8 transform kernel matrix may be a 64x64/16x64 matrix, and a 4x4 transform kernel matrix may be a 16x16/8x16 matrix.

[111] В этом случае, для выбора ядра преобразования на основе режима, два ядра неразделимого вторичного преобразования в расчете на набор для преобразования для неразделимого вторичного преобразования могут быть сконфигурированы относительно всех из преобразования 8×8 и преобразования 4×4, и могут предоставляться четыре набора для преобразования. Таким образом, четыре набора для преобразования могут быть сконфигурированы относительно преобразования 8×8, и четыре набора для преобразования могут быть сконфигурированы относительно преобразования 4×4. В этом случае, каждый из четырех наборов для преобразования для преобразования 8×8 может включать в себя два ядра преобразования 8×8, и каждый из четырех наборов для преобразования для преобразования 4×4 может включать в себя два ядра преобразования 4×4.[111] In this case, for mode-based transform core selection, two non-separable sub-transform cores per transform set for non-separable secondary transform can be configured with respect to all of 8×8 transform and 4×4 transform, and four can be provided. conversion set. Thus, four transform sets may be configured with respect to the 8×8 transform, and four transform sets may be configured with respect to the 4×4 transform. In this case, each of the four transform sets for 8×8 transform may include two 8×8 transform kernels, and each of the four transform sets for 4×4 transform may include two 4×4 transform kernels.

[112] Тем не менее, размер субблока преобразования, число наборов и число ядер преобразования в наборе являются примерными, и может использоваться размер, отличный от 8×8 или 4×4, либо n наборов могут быть сконфигурированы, и k ядер преобразования могут быть включены в каждый набор. Здесь, n и k могут быть положительными целыми числами.[112] However, the size of the transform sub-block, the number of sets, and the number of transform cores in the set are exemplary, and a size other than 8×8 or 4×4 may be used, or n sets may be configured, and k transform cores may be included in each set. Here, n and k can be positive integers.

[113] Например, набор для преобразования может называться "NSST-набором", и ядро преобразования в NSST-наборе может называться "NSSAT-ядром". Например, выбор конкретного набора из наборов для преобразования может выполняться на основе режима внутреннего прогнозирования целевого блока (CU или субблока).[113] For example, a transform set may be referred to as an "NSST set", and a transform core in an NSST set may be referred to as an "NSSAT core". For example, selection of a particular set of sets for transformation may be performed based on the intra prediction mode of the target block (CU or sub-block).

[114] Например, режим внутреннего прогнозирования может включать в себя два режима ненаправленного или неуглового внутреннего прогнозирования и 65 режимов направленного или углового внутреннего прогнозирования. Режимы ненаправленного внутреннего прогнозирования могут включать в себя режим планарного внутреннего прогнозирования номер 0 и режим внутреннего DC-прогнозирования номер 1, и режимы направленного внутреннего прогнозирования могут включать в себя 65 режимов внутреннего прогнозирования (номер 2-66). Тем не менее, это является примерным, и вариант осуществления согласно настоящему документу может применяться даже к случаю, в котором предоставляется другое число режимов внутреннего прогнозирования. Между тем, в некоторых случаях, режим внутреннего прогнозирования номер 67 дополнительно может использоваться, и режим внутреннего прогнозирования номер 67 может представлять режим на основе линейной модели (LM).[114] For example, the intra prediction mode may include two non-directional or non-angular intra prediction modes and 65 directional or angular intra prediction modes. The non-directional intra prediction modes may include a planar intra prediction mode number 0 and a DC intra prediction mode number 1, and the directional intra prediction modes may include 65 intra prediction modes (numbers 2-66). However, this is exemplary, and the embodiment according to the present document may be applied even to the case in which a different number of intra prediction modes are provided. Meanwhile, in some cases, the intra prediction mode number 67 may additionally be used, and the intra prediction mode number 67 may represent a linear model (LM) mode.

[115] Фиг. 5 примерно иллюстрирует внутренние направленные режимы в 65 направлениях прогнозирования.[115] FIG. 5 roughly illustrates the intra-directional modes in 65 prediction directions.

[116] Ссылаясь на фиг. 5, режимы могут разделяться на режимы внутреннего прогнозирования, имеющие горизонтальную направленность, и режимы внутреннего прогнозирования, имеющие вертикальную направленность относительно режима внутреннего прогнозирования номер 34, имеющего левое верхнее диагональное направление прогнозирования. На фиг. 5, H и V могут означать горизонтальную направленность и вертикальную направленность, соответственно, и номера от -32 до 32 могут представлять смещения в единицах 1/32 для позиции на сетке выборок. Оно может представлять смещение для значения индекса режима.[116] Referring to FIG. 5, the modes can be divided into intra prediction modes having a horizontal directionality and intra prediction modes having a vertical directionality with respect to the intra prediction mode number 34 having a left upper diagonal prediction direction. In FIG. 5, H and V may denote horizontal orientation and vertical orientation, respectively, and the numbers -32 to 32 may represent offsets in units of 1/32 for a position on the sample grid. It may represent an offset for the mode index value.

[117] Например, режимы внутреннего прогнозирования номер 2-33 могут иметь горизонтальную направленность, и режимы внутреннего прогнозирования номер 34-66 имеют вертикальную направленность. Между тем, с технической точки зрения, режим внутреннего прогнозирования номер 34 может считаться не имеющим ни горизонтальной направленности, ни вертикальной направленности, но может классифицироваться как принадлежащий горизонтальной направленности с точки зрения определения набора для преобразования для вторичного преобразования. Это обусловлено тем, что входные данные транспонируются и используются относительно вертикальных направленных режимов, симметричных относительно режима внутреннего прогнозирования номер 34, и способ компоновки входных данных для горизонтального направленного режима используется относительно режима внутреннего прогнозирования номер 34. Здесь, транспозиция входных данных может означать конфигурацию данных NxM таким способом, что строки становятся столбцами, и столбцы становятся строками относительно двумерных блочных данных MxN.[117] For example, intra prediction modes 2-33 may be horizontally directed, and intra prediction modes 34-66 may be vertically oriented. Meanwhile, from a technical point of view, the intra prediction mode number 34 can be considered to have neither horizontal directionality nor vertical directionality, but can be classified as belonging to horizontal directionality from the point of view of defining a transform set for secondary transformation. This is because the input data is transposed and used with respect to the vertical directional modes symmetrical with respect to the intra prediction mode number 34, and the layout method of the input data for the horizontal directional mode is used with respect to the intra prediction mode number 34. Here, the transposition of the input data may mean the NxM data configuration in such a way that rows become columns and columns become rows with respect to MxN two-dimensional block data.

[118] Дополнительно, режим внутреннего прогнозирования номер 18 и режим внутреннего прогнозирования номер 50 могут представлять режим горизонтального внутреннего прогнозирования и режим вертикального внутреннего прогнозирования, соответственно, и режим внутреннего прогнозирования номер 2 может называться "режимом правого верхнего диагонального внутреннего прогнозирования", поскольку прогнозирование выполняется в направлении вверх и вправо с левым опорным пикселом. В идентичном контексте, режим внутреннего прогнозирования номер 34 может называться "режимом правого нижнего диагонального внутреннего прогнозирования", и режим внутреннего прогнозирования номер 66 может называться "режимом левого нижнего диагонального внутреннего прогнозирования".[118] Additionally, the intra prediction mode number 18 and the intra prediction mode number 50 may represent the horizontal intra prediction mode and the vertical intra prediction mode, respectively, and the intra prediction mode number 2 may be referred to as the "right upper diagonal intra prediction mode" because the prediction is performed in the direction up and to the right with the left reference pixel. In the same context, intra prediction mode number 34 may be referred to as "right lower diagonal intra prediction mode", and intra prediction mode number 66 may be referred to as "left lower diagonal intra prediction mode".

[119] Между тем, если определяется то, что конкретный набор используется для неразделимого преобразования, одно из k ядер преобразования в конкретном наборе может выбираться через индекс неразделимого вторичного преобразования. Например, оборудование кодирования может извлекать индекс неразделимого вторичного преобразования, представляющий конкретное ядро преобразования, на основе проверки искажения в зависимости от скорости передачи (RD) и может передавать в служебных сигналах индекс неразделимого вторичного преобразования в оборудование декодирования. Например, оборудование декодирования может выбирать одно из k ядер преобразования в конкретном наборе на основе индекса неразделимого вторичного преобразования. Например, NSST-индекс, имеющий значение 0, может представлять первое ядро неразделимого вторичного преобразования, NSST-индекс, имеющий значение 1, может представлять второе ядро неразделимого вторичного преобразования, и NSST-индекс, имеющий значение 2, может представлять третье ядро неразделимого вторичного преобразования. Альтернативно, NSST-индекс, имеющий значение 0, может представлять то, что первое неразделимое вторичное преобразование не применяется к целевому блоку, и NSST-индекс, имеющий значение 1-3, может указывать три ядра преобразования, как описано выше.[119] Meanwhile, if it is determined that a specific set is used for a non-separable transform, one of the k transform kernels in the specific set may be selected through the non-separable secondary transform index. For example, the encoding equipment may derive a non-separable second transform index representing a particular transform kernel based on a rate-distortion (RD) test, and may signal the non-separable second transform index to the decoding equipment. For example, the decoding hardware may select one of the k transform cores in a particular set based on the non-separable secondary transform index. For example, an NSST index having a value of 0 may represent a first non-separable subtransform kernel, an NSST index of 1 may represent a second nonseparable secondary transform kernel, and an NSST index of 2 may represent a third nonseparable secondary transform kernel. . Alternatively, an NSST index having a value of 0 may represent that the first non-separable secondary transform is not applied to the target block, and an NSST index having a value of 1-3 may indicate three transformation kernels as described above.

[120] Преобразователь может выполнять неразделимое вторичное преобразование на основе выбранных ядер преобразования и может получать модифицированные коэффициенты (вторичного) преобразования. Модифицированные коэффициенты преобразования могут извлекаться в качестве квантованных коэффициентов преобразования через вышеописанный квантователь и могут кодироваться с возможностью передаваться в служебных сигналах в оборудование декодирования, и могут передаваться в деквантователь/обратный преобразователь в оборудовании кодирования.[120] The transformer may perform an inseparable secondary transform based on the selected transform kernels and may obtain modified (secondary) transform coefficients. The modified transform coefficients may be extracted as quantized transform coefficients via the above-described quantizer, and may be signal-coded to the decoding equipment, and may be transmitted to a dequantizer/inverse converter in the encoding equipment.

[121] Между тем, если вторичное преобразование опускается, как описано выше, коэффициенты (первичного) преобразования, которые представляют собой выводы первичного (разделимого) преобразования, могут извлекаться в качестве квантованных коэффициентов преобразования через квантователь, как описано выше, и могут кодироваться с возможностью передаваться в служебных сигналах в оборудование декодирования и могут передаваться в деквантователь/обратный преобразователь в оборудовании кодирования.[121] Meanwhile, if the secondary transform is omitted as described above, the (primary) transform coefficients, which are outputs of the primary (separable) transform, can be extracted as quantized transform coefficients via a quantizer as described above, and can be encoded with the possibility be signaled to the decoding equipment and may be sent to a dequantizer/inverter in the encoding equipment.

[122] Снова ссылаясь в фиг. 4, обратный преобразователь может выполнять последовательность процедур в обратном порядке по отношению к процедурам, выполняемым посредством вышеописанного преобразователя. Обратный преобразователь может принимать (деквантованные) коэффициенты преобразования, извлекать коэффициенты (первичного) преобразования посредством выполнения вторичного (обратного) преобразования (S450) и получать остаточный блок (остаточные выборки) посредством выполнения первичного (обратного) преобразования относительно коэффициентов (первичного) преобразования (S460). Здесь, коэффициенты первичного преобразования могут называться "модифицированными коэффициентами преобразования на стороне обратного преобразователя". Как описано выше, оборудование кодирования и/или оборудование декодирования могут формировать восстановленный блок на основе остаточного блока и прогнозированного блока и могут формировать восстановленный кадр на его основе.[122] Referring again to FIG. 4, the reverse converter may perform the sequence of procedures in reverse order of the procedures performed by the above-described converter. The inverse transform can receive (dequantized) transform coefficients, extract (primary) transform coefficients by performing a secondary (inverse) transform (S450), and obtain a residual block (residual samples) by performing a primary (inverse) transform with respect to the (primary) transform coefficients (S460) . Here, the primary transform coefficients may be referred to as "modified transform coefficients on the inverter side". As described above, the encoding equipment and/or the decoding equipment may generate a reconstructed block based on the residual block and the predicted block, and may generate a reconstructed frame based on them.

[123] Между тем, оборудование декодирования дополнительно может включать в себя модуль определения применения/неприменения вторичного обратного преобразования (или элемент для определения того, следует или нет применять вторичное обратное преобразование), и модуль определения вторичного обратного преобразования (или элемент для определения вторичного обратного преобразования). Например, модуль определения применения/неприменения вторичного обратного преобразования может определять то, следует или нет применять вторичное обратное преобразование. Например, вторичное обратное преобразование может представлять собой NSST или RST, и модуль определения применения/неприменения вторичного обратного преобразования может определять то, следует или нет применять вторичное обратное преобразование, на основе флага вторичного преобразования, синтаксически проанализированного или полученного из потока битов. Альтернативно, например, модуль определения применения/неприменения вторичного обратного преобразования может определять то, следует или нет применять вторичное обратное преобразование, на основе коэффициента преобразования остаточного блока.[123] Meanwhile, the decoding equipment may further include a secondary inverse transform application/non-application determination unit (or an element for determining whether or not to apply the secondary inverse transform), and a secondary inverse transformation determination unit (or an element for determining the secondary inverse transform). transformations). For example, the secondary inverse transform application/non-application determination module may determine whether or not the secondary inverse transformation should be applied. For example, the secondary inverse transform may be NSST or RST, and the secondary inverse transform apply/non-apply determination module may determine whether or not the secondary inverse transform should be applied based on the secondary transform flag parsed or obtained from the bit stream. Alternatively, for example, the second inverse transform application/non-application determination module may determine whether or not the secondary inverse transform should be applied based on the transform coefficient of the residual block.

[124] Модуль определения вторичного обратного преобразования может определять вторичное обратное преобразование. В этом случае, модуль определения вторичного обратного преобразования может определять вторичное обратное преобразование, применяемое к текущему блоку, на основе набора для NSST-(или RST-)преобразования, указываемого в соответствии с режимом внутреннего прогнозирования. Альтернативно, способ определения вторичного преобразования может определяться в зависимости от способа определения первичного преобразования. Альтернативно, различные комбинации первичного преобразования и вторичного преобразования могут определяться в соответствии с режимом внутреннего прогнозирования. Например, модуль определения вторичного обратного преобразования может определять зону, к которой вторичное обратное преобразование применяется, на основе размера текущего блока.[124] The secondary inverse transform determination module may determine the secondary inverse transform. In this case, the secondary inverse transform determination module may determine the secondary inverse transform applied to the current block based on the set for the NSST (or RST) transform specified according to the intra prediction mode. Alternatively, the method for determining the secondary transform may be determined depending on the method for determining the primary transform. Alternatively, different combinations of the primary transform and the secondary transform may be determined according to the intra prediction mode. For example, the secondary inverse transform determination module may determine the area to which the secondary inverse transform is applied based on the size of the current block.

[125] Между тем, если вторичное (обратное) преобразование опускается, как описано выше, остаточный блок (остаточные выборки) может получаться посредством приема (деквантованных) коэффициентов преобразования и выполнения первичного (разделимого) обратного преобразования. Как описано выше, оборудование кодирования и/или оборудование декодирования могут формировать восстановленный блок на основе остаточного блока и прогнозированного блока и могут формировать восстановленный кадр на его основе.[125] Meanwhile, if the secondary (inverse) transform is omitted as described above, the residual block (residual samples) can be obtained by receiving the (dequantized) transform coefficients and performing the primary (separable) inverse transform. As described above, the encoding equipment and/or the decoding equipment may generate a reconstructed block based on the residual block and the predicted block, and may generate a reconstructed frame based on them.

[126] Между тем, в настоящем документе, чтобы уменьшать объем вычислений и требуемый объем запоминающего устройства, вызываемые посредством неразделимого вторичного преобразования, сокращенное вторичное преобразование (RST), имеющее уменьшенный размер матрицы (ядра) преобразования, может применяться к понятию NSST.[126] Meanwhile, herein, in order to reduce the computational amount and the required storage space caused by the inseparable secondary transform, a reduced secondary transform (RST) having a reduced transform matrix (kernel) size can be applied to the NSST concept.

[127] В настоящем документе, RST может означать (упрощенное) преобразование, выполняемое относительно остаточных выборок для целевого блока, на основе матрицы преобразования, размер которой уменьшается в соответствии с коэффициентом упрощения. В случае выполнения этого объем вычислений, требуемый во время преобразования, может уменьшаться вследствие уменьшения размера матрицы преобразования. Таким образом, RST может использоваться для того, чтобы разрешать проблему сложности вычислений, возникающую во время преобразования блока, имеющего большой размер, или неразделимого преобразования.[127] As used herein, RST may mean a (simplified) transformation performed on the residual samples for a target block based on a transformation matrix whose size is reduced in accordance with the simplification factor. If this is done, the amount of computation required during the transformation may be reduced due to the reduction in the size of the transformation matrix. Thus, RST can be used to solve the problem of computational complexity arising during the transformation of a block having a large size or non-separable transformation.

[128] Например, RST может называться с помощью различных терминов, таких как "сокращенное преобразование", "сокращенное вторичное преобразование", "преобразование с сокращением", "упрощенное преобразование" или "простое преобразование", и названия, с помощью которых называется RST, не ограничены перечисленными примерами. Дополнительно, RST главным образом выполняется в низкочастотной области, включающей в себя коэффициенты, которые не равны 0 в блоке преобразования, и в силу этого может называться "низкочастотным неразделимым преобразованием (LFNST)".[128] For example, RST may be referred to by various terms such as "reduced transformation", "reduced secondary transformation", "reduced transformation", "simplified transformation", or "simple transformation", and the names by which the RST is called are not limited to the examples listed. Further, RST is mainly performed in the low frequency region including coefficients that are not 0 in the transform block, and thus may be referred to as "low frequency inseparable transform (LFNST)".

[129] Между тем, в случае если вторичное обратное преобразование выполняется на основе RST, обратный преобразователь 235 оборудования 200 кодирования и обратный преобразователь 322 оборудования 300 декодирования могут включать в себя обратный RST-модуль, извлекающий модифицированные коэффициенты преобразования на основе обратного RST для коэффициентов преобразования, и обратный первичный преобразователь, извлекающий остаточные выборки для целевого блока на основе обратного первичного преобразования для модифицированных коэффициентов преобразования. Обратное первичное преобразование означает обратное преобразование относительно первичного преобразования, применяемого к остатку. В настоящем документе, извлечение коэффициентов преобразования на основе преобразования может означать извлечение коэффициентов преобразования посредством применения соответствующего преобразования.[129] Meanwhile, in the case where the secondary inverse transform is performed based on the RST, the inverse transformer 235 of the encoding equipment 200 and the inverse transformer 322 of the decoding equipment 300 may include an inverse RST module extracting modified transform coefficients based on the inverse RST of the transform coefficients. , and an inverse primer extracting residual samples for the target block based on the inverse primer for the modified transform coefficients. Reverse primary means the reverse of the primary transform applied to the remainder. As used herein, extracting transform coefficients based on a transform may mean extracting transform coefficients by applying an appropriate transform.

[130] Фиг. 6 и 7 являются схемами, поясняющими RST согласно варианту осуществления настоящего документа.[130] FIG. 6 and 7 are diagrams explaining RST according to an embodiment of the present document.

[131] Например, фиг. 6 может представлять собой чертеж, поясняющий то, что прямое сокращенное преобразование применяется, и фиг. 7 может представлять собой чертеж, поясняющий то, что обратное сокращенное преобразование применяется. В настоящем документе, целевой блок может представлять текущий блок, остаточный блок или блок преобразования в зависимости от того, кодирование чего выполняется.[131] For example, FIG. 6 may be a drawing explaining that a direct shorthand transformation is applied, and FIG. 7 may be a drawing explaining that an inverse shorthand transformation is applied. Here, a target block may represent a current block, a residual block, or a transform block, depending on what is being encoded.

[132] Например, в RST, N-мерный вектор может преобразовываться в R-мерный вектор, расположенный в другом пространстве, и матрица сокращенного преобразования может определяться. Здесь, N и R могут быть положительными целыми числами, и R может быть меньше N. N может означать квадрат длины одной стороны блока, к которому применяется преобразование, или общее число коэффициентов преобразования, соответствующих блоку, к которому применяется преобразование, и коэффициент упрощения может означать значение R/N. Коэффициент упрощения может называться с помощью различных терминов, таких как "сокращенный коэффициент", "коэффициент сокращения", "упрощенный коэффициент" или "простой коэффициент". Между тем, R может называться "уменьшенным коэффициентом", и в некоторых случаях, коэффициент упрощения может означать R. Дополнительно, в некоторых случаях, коэффициент упрощения может означать N/R-значение.[132] For example, in RST, an N-dimensional vector may be transformed into an R-dimensional vector located in another space, and a shorthand transformation matrix may be determined. Here, N and R may be positive integers, and R may be less than N. N may mean the square of the length of one side of the block to which the transform is applied, or the total number of transform coefficients corresponding to the block to which the transform is applied, and the simplification factor may mean R/N value. The simplification factor may be referred to by various terms such as "reduced factor", "reduction factor", "simplified factor", or "simple factor". Meanwhile, R may be referred to as a "reduced factor", and in some cases, the simplification factor may mean R. Further, in some cases, the simplification factor may mean an N/R value.

[133] Например, коэффициент упрощения или уменьшенный коэффициент может передаваться в служебных сигналах через поток битов, но не ограничен этим. Например, предварительно заданные значения для коэффициента упрощения или уменьшенного коэффициента могут сохраняться в оборудовании 200 кодирования и оборудовании 300 декодирования, и в этом случае, коэффициент упрощения или уменьшенный коэффициент может не передаваться в служебных сигналах отдельно.[133] For example, the simplification factor or reduced factor may be signaled via the bitstream, but is not limited to this. For example, preset values for the simplification factor or the reduced factor may be stored in the encoding equipment 200 and the decoding equipment 300, in which case, the simplification factor or the reduced factor may not be signaled separately.

[134] Например, размер (RxN) матрицы упрощенного преобразования может быть меньше размера (NxN) матрицы регулярного преобразования и может задаваться в следующем уравнении.[134] For example, the size (RxN) of the simplified transformation matrix may be smaller than the size (NxN) of the regular transformation matrix, and may be given in the following equation.

[135] уравнение 4[135] Equation 4

Figure 00000007
Figure 00000007

[136] Например, матрица T в блоке сокращенного преобразования, проиллюстрированном на фиг. 6, может представлять матрицу TRxN уравнения 4. Как показано на фиг. 6, в случае если остаточные выборки для целевого блока умножаются на матрицу TRxN упрощенного преобразования, коэффициенты преобразования для целевого блока могут извлекаться.[136] For example, the matrix T in the reduced transform block illustrated in FIG. 6 may represent the TRxN matrix of Equation 4. As shown in FIG. 6, in case the residual samples for the target block are multiplied by the simplified transform matrix TRxN, the transform coefficients for the target block can be extracted.

[137] Например, в случае если размер блока, к которому применяется преобразование, составляет 8×8, и R равен 16 (т.е. R/N=16/64=1/4), RST согласно фиг. 6 может выражаться посредством матричной операции, как указано в нижеприведенном уравнении 5. В этом случае, запоминающее устройство и операция умножения могут уменьшаться приблизительно до 1/4 посредством коэффициента упрощения.[137] For example, in the case where the block size to which the transform is applied is 8×8 and R is 16 (i.e., R/N=16/64=1/4), the RST of FIG. 6 may be expressed by a matrix operation as indicated in Equation 5 below. In this case, the memory and the multiplication operation may be reduced to approximately 1/4 by the simplification factor.

[138] В настоящем документе, матричная операция может пониматься как операция получения вектора-столбца посредством размещения матрицы слева от вектора-столбца и умножения матрицы и вектора-столбца.[138] As used herein, a matrix operation can be understood as an operation to obtain a column vector by placing a matrix to the left of the column vector and multiplying the matrix and the column vector.

[139] уравнение 5[139] Equation 5

Figure 00000008
Figure 00000008

[140] В уравнении 5, r1-r64 могут представлять остаточные выборки для целевого блока. Альтернативно, например, они могут представлять собой коэффициенты преобразования, сформированные посредством применения первичного преобразования. На основе результата операции уравнения 5, коэффициенты ci преобразования для целевого блока могут извлекаться.[140] In Equation 5, r1-r64 may represent the residual samples for the target block. Alternatively, for example, they may be transform coefficients generated by applying a primary transform. Based on the operation result of Equation 5, the conversion coefficients ci for the target block can be retrieved.

[141] Например, в случае если R равен 16, коэффициенты c1-c16 преобразования для целевого блока могут извлекаться. Если матрица преобразования, имеющая размер 64×64 (NxN), через применение регулярного преобразования, а не RST, умножается на остаточные выборки, имеющие размер 64×1 (Nx1), 64 (N) коэффициента преобразования для целевого блока могут извлекаться, но поскольку RST применяется, только 16 (N) коэффициентов преобразования для целевого блока могут извлекаться. Поскольку общее число коэффициентов преобразования для целевого блока уменьшается с N до R, объем данных, которые оборудование 200 кодирования передает в оборудование 300 декодирования, может уменьшаться, и в силу этого эффективность передачи между оборудованием 200 кодирования и оборудованием 300 декодирования может повышаться.[141] For example, if R is 16, the transform coefficients c1-c16 for the target block may be extracted. If a transformation matrix having a size of 64×64 (NxN) is multiplied by the residual samples having a size of 64×1 (Nx1) through applying a regular transform rather than RST, 64 (N) transformation coefficients for the target block can be extracted, but since RST is applied, only 16 (N) transform coefficients for the target block can be extracted. Since the total number of transform coefficients for a target block is reduced from N to R, the amount of data that the encoding equipment 200 transmits to the decoding equipment 300 can be reduced, and therefore the transmission efficiency between the encoding equipment 200 and the decoding equipment 300 can be improved.

[142] С учетом размера матрицы преобразования, поскольку размер матрицы регулярного преобразования составляет 64×64 (NxN), и размер матрицы упрощенного преобразования уменьшается до 16×64 (RxN), использование запоминающего устройства при выполнении RST может уменьшаться в отношении R/N по сравнению со случаем, в котором регулярное преобразование выполняется. Дополнительно, по сравнению с числом (NxN) операций умножения, при использовании матрицы регулярного преобразования, использование матрицы упрощенного преобразования может сокращать число операций умножения (RxN) в отношении R/N.[142] Considering the size of the transformation matrix, since the size of the regular transformation matrix is 64×64 (NxN) and the size of the simplified transformation matrix is reduced to 16×64 (RxN), the memory usage when performing RST can be reduced in terms of R/N by compared to the case in which a regular transformation is performed. Additionally, compared to the number (NxN) of multiplications when using a regular transformation matrix, the use of a simplified transformation matrix can reduce the number of multiplications (RxN) with respect to R/N.

[143] В варианте осуществления, преобразователь 232 оборудования 200 кодирования может извлекать коэффициенты преобразования для целевого блока посредством выполнения первичного преобразования и вторичного преобразования на основе RST для остаточных выборок для целевого блока. Коэффициенты преобразования могут передаваться в обратный преобразователь оборудования 300 декодирования, и обратный преобразователь 322 оборудования 300 декодирования может извлекать модифицированные коэффициенты преобразования на основе обратного сокращенного вторичного преобразования (RST) для коэффициентов преобразования и может извлекать остаточные выборки для целевого блока на основе обратного первичного преобразования модифицированных коэффициентов преобразования.[143] In an embodiment, the transformer 232 of the encoding equipment 200 may derive transform coefficients for a target block by performing a primary transform and a secondary transform based on RST on the residual samples for the target block. The transform coefficients may be passed to an inverse transform of the decoding equipment 300, and the inverse transformer 322 of the decoding equipment 300 may derive modified transform coefficients based on an inverse reduced secondary transform (RST) for the transform coefficients, and may derive residual samples for a target block based on an inverse primary transform of the modified coefficients. transformations.

[144] Размер обратной RST-матрицы TNxR согласно варианту осуществления может составлять NxR, что меньше размера NxN матрицы регулярного обратного преобразования, и может иметь транспонированную взаимосвязь с матрицей TRxN упрощенного преобразования, проиллюстрированной в уравнении 4.[144] The size of the TNxR inverse RST matrix according to an embodiment may be NxR, which is smaller than the NxN size of the regular inverse transform matrix, and may have a transposed relationship with the simplified transform matrix TRxN illustrated in Equation 4.

[145] Матрица Tt в блоке сокращенного обратного преобразования, проиллюстрированном на фиг. 7, может представлять обратную RST-матрицу TRxNT. Здесь, надстрочный индекс T может представлять транспонирование. Как показано на фиг. 7, в случае если коэффициенты преобразования для целевого блока умножаются на обратную RST-матрицу TRxNT, модифицированные коэффициенты преобразования для целевого блока или остаточные выборки для целевого блока могут извлекаться. Обратная RST-матрица TRxNT может выражаться как (TRxN)TNxR.[145] The Tt matrix in the reduced inverse transform block illustrated in FIG. 7 may represent an inverse RST matrix of TRxNT. Here, the superscript T may represent a transposition. As shown in FIG. 7, in case the transform coefficients for the target block are multiplied by the inverse RST matrix TRxNT, modified transform coefficients for the target block or residual samples for the target block can be extracted. The inverse RST matrix TRxNT can be expressed as (TRxN)TNxR.

[146] Более конкретно, в случае если обратное RST применяется в качестве вторичного обратного преобразования, модифицированные коэффициенты преобразования для целевого блока могут извлекаться посредством умножения коэффициентов преобразования для целевого блока на обратную RST-матрицу TRxNT. Между тем, обратное RST может применяться в качестве обратного первичного преобразования, и в этом случае, остаточные выборки для целевого блока могут извлекаться, когда обратная RST-матрица TRxNT умножается на коэффициенты преобразования для целевого блока.[146] More specifically, in the case where an inverse RST is applied as a secondary inverse transform, the modified transform coefficients for the target block may be derived by multiplying the transform coefficients for the target block by the inverse RST matrix TRxNT. Meanwhile, the inverse RST may be applied as an inverse primary transform, in which case, the residual samples for the target block may be extracted when the inverse RST matrix TRxNT is multiplied by the transform coefficients for the target block.

[147] В варианте осуществления, в случае если размер блока, к которому применяется обратное преобразование, составляет 8×8, и R равен 16 (т.е. R/N=16/64=1/4), RST согласно фиг. 7 может выражаться посредством матричной операции, как указано в нижеприведенном уравнении 6.[147] In an embodiment, in the case where the block size to which the inverse transform is applied is 8x8 and R is 16 (i.e., R/N=16/64=1/4), the RST of FIG. 7 can be expressed by a matrix operation as indicated in Equation 6 below.

[148] уравнение 6[148] Equation 6

Figure 00000009
Figure 00000009

[149] В уравнении 6, c1-c16 могут представлять коэффициенты преобразования для целевого блока; rj, представляющий модифицированные коэффициенты преобразования для целевого блока или остаточные выборки для целевого блока, может извлекаться на основе результата операции уравнения 6. Таким образом, r1-rN, представляющие модифицированные коэффициенты преобразования для целевого блока или остаточные выборки для целевого блока, могут извлекаться.[149] In Equation 6, c1-c16 may represent transform coefficients for the target block; rj representing the modified transform coefficients for the target block or residual samples for the target block may be derived based on the result of the operation of Equation 6. Thus, r1-rN representing the modified transform coefficients for the target block or residual samples for the target block may be derived.

[150] С учетом размера матрицы обратного преобразования, поскольку размер матрицы регулярного обратного преобразования составляет 64×64 (NxN), и размер матрицы упрощенного обратного преобразования уменьшается до 64×16 (NxR), использование запоминающего устройства при выполнении обратного RST может уменьшаться в отношении R/N по сравнению со случаем, в котором регулярное обратное преобразование выполняется. Дополнительно, по сравнению с числом (NxN) операций умножения, при использовании матрицы регулярного обратного преобразования, использование матрицы упрощенного обратного преобразования может уменьшать число (NxR) операций умножения в отношении R/N.[150] Considering the size of the inverse transform matrix, since the size of the regular inverse transform matrix is 64×64 (NxN) and the size of the simplified inverse transform matrix is reduced to 64×16 (NxR), the memory usage when performing the inverse RST can be reduced in relation to R/N compared to the case in which a regular inverse transformation is performed. Additionally, compared to the number (NxN) of multiplications when using a regular inverse transform matrix, using a simplified inverse transform matrix can reduce the number (NxR) of multiplications in terms of R/N.

[151] Между тем, наборы для преобразования могут конфигурироваться и применяться даже относительно RST 8×8. Таким образом, соответствующее RST 8×8 может применяться в соответствии с набором для преобразования. Поскольку один набор для преобразования состоит из двух или трех ядер преобразования в соответствии с режимом внутреннего прогнозирования, он может быть выполнен с возможностью выбирать одно из четырех преобразований, что как максимум включает в себя даже случай, в котором вторичное преобразование не применяется. При преобразовании, когда вторичное преобразование не применяется, можно считать, что единичная матрица применяется. Если предполагается, что индекс 0, 1, 2 или 3 задается для четырех преобразований (например, индекс номер 0 может выделяться случаю, в котором единичная матрица, т.е. вторичное преобразование, не применяется), преобразование, которое должно применяться, может быть обозначено посредством передачи в служебных сигналах синтаксического элемента, которая представляет собой NSST-индекс, в каждый блок коэффициентов преобразования. Таким образом, через NSST-индекс NSST 8×8 может быть обозначено для левого верхнего блока 8×8, и в RST-конфигурации, RST 8×8 может быть обозначено. NSST 8×8 и RST 8×8 могут представлять преобразования, допускающие применение к зоне 8×8, включенной в соответствующий блок коэффициентов преобразования в случае, если W и H целевого блока, который становится целью преобразования, равны или больше 8, и зона 8×8 может представлять собой левую верхнюю зону 8×8 в соответствующем блоке коэффициентов преобразования. Аналогично, NSST 4×4 и RST 4×4 могут представлять преобразования, допускающие применение к зоне 4×4, включенной в соответствующий блок коэффициентов преобразования в случае, если W и H целевого блока равны или больше 4, и зона 4×4 может представлять собой левую верхнюю зону 4×4 в соответствующем блоке коэффициентов преобразования.[151] Meanwhile, conversion sets can be configured and applied even with respect to RST 8×8. Thus, the corresponding RST 8x8 can be applied according to the conversion set. Since one transform set is composed of two or three transform kernels according to the intra prediction mode, it can be configured to select one of four transforms, which at most includes even the case in which the secondary transform is not applied. In a transformation where no secondary transformation is applied, the identity matrix can be considered to be applied. If it is assumed that index 0, 1, 2, or 3 is given for four transformations (for example, index number 0 may be allocated to the case in which the identity matrix, i.e., the secondary transformation, is not applied), the transformation to be applied may be denoted by signaling a syntax element that is an NSST index to each block of transform coefficients. Thus, through the NSST index, NSST 8x8 can be denoted for the top left 8x8 block, and in the RST configuration, RST 8x8 can be denoted. NSST 8×8 and RST 8×8 may represent transforms capable of being applied to the 8×8 zone included in the corresponding transform coefficient block in case the W and H of the target block that becomes the transform target is equal to or greater than 8, and the zone is 8 x8 may represent the top left 8x8 zone in the corresponding transform coefficient block. Similarly, NSST 4x4 and RST 4x4 may represent transforms capable of being applied to a 4x4 zone included in the corresponding transform coefficient block in case W and H of the target block are equal to or greater than 4, and the 4x4 zone may represent is the top left 4×4 zone in the corresponding transform coefficient block.

[152] Между тем, например, оборудование кодирования может извлекать поток битов посредством кодирования значения синтаксического элемента или квантованных значений коэффициента преобразования для остатка на основе различных способов кодирования, таких как экспоненциальный код Голомба, контекстно-адаптивное кодирование переменной длины (CAVLC), контекстно-адаптивное двоичное арифметическое кодирование (CABAC) и т.п. Дополнительно, оборудование декодирования может извлекать значение синтаксического элемента или квантованных значений коэффициента преобразования для остатка на основе различных способов кодирования, таких как кодирование экспоненциальным кодом Голомба, CAVLC, CABAC и т.п.[152] Meanwhile, for example, the encoding equipment can extract a bit stream by encoding a syntax element value or quantized transform coefficient values for a residue based on various encoding methods such as exponential Golomb code, context adaptive variable length coding (CAVLC), context-sensitive adaptive binary arithmetic coding (CABAC), and the like. Additionally, the decoding equipment can extract the value of the syntax element or the quantized transform coefficient values for the residue based on various encoding methods such as Exponential Golomb encoding, CAVLC, CABAC, and the like.

[153] Например, вышеописанные способы кодирования могут выполняться в качестве контента, который описывается ниже.[153] For example, the above-described encoding methods can be performed as content, which is described below.

[154] Фиг. 8 примерно иллюстрирует контекстно-адаптивное двоичное арифметическое кодирование (CABAC) для кодирования синтаксического элемента.[154] FIG. 8 exemplifies context-adaptive binary arithmetic coding (CABAC) for encoding a syntax element.

[155] Например, в процессе CABAC-кодирования, если входной сигнал представляет собой синтаксический элемент, который не представляет собой двоичное значение, значение входного сигнала может преобразовываться в двоичное значение через преобразование в двоичную форму. Дополнительно, если входной сигнал уже представляет собой двоичное значение (т.е. если значение входного сигнала представляет собой двоичное значение), преобразование в двоичную форму может не выполняться, и входной сигнал может использоваться как есть. Здесь, каждое двоичное число 0 или 1, составляющее двоичное значение, может называться "элементом разрешения". Например, если двоичная строка после преобразования в двоичную форму представляет собой 110, каждое из 1, 1 и 0 может представляться как один элемент разрешения. Элемент(ы) разрешения для одного синтаксического элемента может представлять значение синтаксического элемента. Преобразование в двоичную форму может быть основано на различном способе преобразования в двоичную форму, таком как процесс преобразования в двоичную форму усеченным кодом Райса или процесс преобразования в двоичную форму кодом фиксированной длины, и способ преобразования в двоичную форму для целевого синтаксического элемента может быть предварительно задан. Процедура преобразования в двоичную форму может выполняться посредством модуля преобразования в двоичную форму в энтропийном кодере.[155] For example, in the CABAC encoding process, if the input signal is a syntax element that is not a binary value, the value of the input signal can be converted to a binary value through binarization. Additionally, if the input signal is already a binary value (ie, if the value of the input signal is a binary value), binarization may not be performed and the input signal may be used as is. Here, each binary number 0 or 1 constituting a binary value may be referred to as a "permission element". For example, if the binary string after binarization is 110, each of 1, 1, and 0 can be represented as one permission element. The permission element(s) for one syntax element may represent the value of the syntax element. The binarization may be based on a different binarization method such as a truncated Rice code binarization process or a fixed length code binarization process, and the binarization method for the target syntax element may be preset. The binarization procedure may be performed by a binarization module in the entropy encoder.

[156] После этого, преобразованные в двоичную форму элементы выборки синтаксического элемента могут вводиться в механизм регулярного кодирования или механизм обходного кодирования. Механизм регулярного кодирования оборудования кодирования может выделять контекстную модель, которая отражает значение вероятности относительно соответствующего элемента разрешения, и кодировать соответствующий элемент разрешения на основе выделяемой контекстной модели. Механизм регулярного кодирования оборудования кодирования может обновлять контекстную модель для соответствующего элемента разрешения после выполнения кодирования относительно соответствующих элементов разрешения. Элементы разрешения, кодируемые в качестве вышеописанного контента, могут представляться как контекстно-кодированные элементы разрешения.[156] Thereafter, the binarized syntax element sample elements may be input to a regular encoding engine or a bypass encoding engine. The regular coding engine of the encoding equipment may extract a context model that reflects a probability value with respect to a corresponding bin, and encode the corresponding bin based on the extracted context model. The encoding hardware's regular encoding engine may update the context model for the corresponding permission element after encoding is performed on the corresponding permission elements. Permission elements encoded as the content described above may be represented as context-encoded permission elements.

[157] Между тем, в случае если преобразованные в двоичную форму элементы выборки синтаксического элемента вводятся в механизм обходного кодирования, они могут кодироваться следующим образом. Например, механизм обходного кодирования оборудования кодирования может опускать процедуру для оценки вероятности относительно входного элемента выборки и процедуру для обновления вероятностной модели, применяемые к элементу разрешения после кодирования. В случае если обходное кодирование применяется, оборудование кодирования может кодировать входной элемент выборки посредством применения регулярного распределения вероятностей вместо выделения контекстной модели, и за счет этого может повышаться скорость кодирования. Элемент разрешения, кодируемый в качестве вышеописанного контента, может представляться как обходной элемент разрешения.[157] Meanwhile, in case the binarized syntax element sample elements are input to the bypass encoding mechanism, they may be encoded as follows. For example, the bypass encoding mechanism of the encoding equipment may omit a procedure for estimating a probability with respect to an input bin and a procedure for updating a probability model applied to a bin after encoding. In the case where bypass coding is applied, the coding equipment can encode the input bin by applying a regular probability distribution instead of extracting a context model, and thereby the coding speed can be improved. The permission element encoded as the content described above may be presented as a bypass permission element.

[158] Энтропийное декодирование может представлять процесс для выполнения процесса, идентичного вышеописанному энтропийному кодированию, в обратном порядке.[158] Entropy decoding may represent a process for performing a process identical to the above-described entropy encoding in reverse order.

[159] Оборудование декодирования (энтропийный декодер) может декодировать кодированную информацию изображений/видео. Информация изображений/видео может включать в себя связанную с сегментацией информацию, связанную с прогнозированием информацию (например, информацию разделения взаимного/внутреннего прогнозирования, информацию режима внутреннего прогнозирования, информацию режима взаимного прогнозирования и т.п.), остаточную информацию или связанную с внутриконтурной фильтрацией информацию либо может включать в себя различные синтаксические элементы из нее. Энтропийное кодирование может выполняться в единицах синтаксического элемента.[159] The decoding equipment (entropy decoder) can decode the encoded image/video information. The image/video information may include segmentation related information, prediction related information (e.g., inter/intra prediction separation information, intra prediction mode information, inter prediction mode information, and the like), residual information, or in-loop filtering related information. information or may include various syntactic elements from it. Entropy encoding may be performed in units of a syntax element.

[160] Оборудование декодирования может выполнять преобразование в двоичную форму целевых синтаксических элементов. Здесь, преобразование в двоичную форму может быть основано на различных способах преобразования в двоичную форму, таких как процесс преобразования в двоичную форму усеченным кодом Райса или процесс преобразования в двоичную форму кодом фиксированной длины, и способ преобразования в двоичную форму для целевого синтаксического элемента может быть предварительно задан. Оборудование декодирования может извлекать доступные строки элементов разрешения (возможные варианты строк элементов разрешения) для доступных значений целевых синтаксических элементов через процедуру преобразования в двоичную форму. Процедура преобразования в двоичную форму может выполняться посредством модуля преобразования в двоичную форму в энтропийном декодере.[160] The decoding hardware may binarize the target syntax elements. Here, the binarization may be based on various binarization methods such as a truncated Rice code binarization process or a fixed length code binarization process, and the binarization method for the target syntax element may be previously set. The decoding hardware can extract the available bin strings (possible bin strings) for the available target syntax element values via a binarization procedure. The binarization procedure may be performed by a binarization module in the entropy decoder.

[161] Оборудование декодирования может сравнивать извлеченную строку элементов разрешения с доступными строками элементов разрешения для соответствующих синтаксических элементов при последовательном декодировании или синтаксическом анализе соответствующих элементов разрешения на предмет целевых синтаксических элементов из входного бита(ов) в потоке битов. Если извлеченная строка элементов разрешения равна одной из доступных строк элементов разрешения, значение, соответствующее соответствующей строке элементов разрешения, извлекается в качестве значения соответствующего синтаксического элемента. Если нет, оборудование декодирования может повторно выполнять вышеописанную процедуру после дополнительного синтаксического анализа следующего бита в потоке битов. Посредством такого процесса, можно выполнять передачу в служебных сигналах конкретной информации (или конкретного синтаксического элемента) в потоке битов с использованием бита переменной длины даже без использования начального бита или конечного бита соответствующей информации. Через это, относительно меньший бит может выделяться относительно меньшего значения, и в силу этого может повышаться общая эффективность кодирования.[161] The decoding hardware may compare the extracted bin string with the available bin strings for the corresponding syntax elements when sequentially decoding or parsing the corresponding bins for target syntax elements from the input bit(s) in the bitstream. If the extracted permission element string is equal to one of the available permission element strings, the value corresponding to the corresponding permission element string is retrieved as the value of the corresponding syntax element. If not, the decoding hardware may re-execute the above procedure after further parsing the next bit in the bitstream. Through such a process, it is possible to signal specific information (or a specific syntax element) in a bit stream using a variable length bit even without using a start bit or end bit of the corresponding information. Through this, a relatively smaller bit can be allocated with respect to a smaller value, and thereby the overall coding efficiency can be improved.

[162] Оборудование декодирования может выполнять декодирование на основе контекстных моделей или обходное декодирование соответствующих элементов разрешения в строке элементов разрешения из потока битов на основе технологии энтропийного кодирования, такой как CABAC или CAVLC.[162] The decoding equipment may perform context model-based decoding or bypass decoding of the corresponding bins in a bin string from a bitstream based on an entropy coding technology such as CABAC or CAVLC.

[163] В случае если синтаксический элемент декодируется на основе контекстной модели, оборудование декодирования может принимать элемент разрешения, соответствующий синтаксическому элементу, через поток битов, может определять контекстную модель за счет использования синтаксического элемента и декодирования информации целевого блока декодирования или соседнего блока либо информации символов/элементов разрешения, декодированной на предыдущей стадии, и может извлекать значение синтаксического элемента посредством выполнения арифметического декодирования элемента разрешения через прогнозирование вероятности появления принимаемого элемента разрешения в соответствии с определенной контекстной моделью. После этого, контекстная модель следующего декодируемого элемента разрешения может обновляться на основе определенной контекстной модели.[163] In case the syntax element is decoded based on the context model, the decoding equipment may receive a permission element corresponding to the syntax element via the bit stream, may determine the context model by using the syntax element, and decoding the decoding target block or neighboring block information or character information / bins decoded in the previous step, and can extract the value of the syntax element by performing arithmetic decoding of the bin by predicting the occurrence probability of the received bin according to the determined context model. Thereafter, the context model of the next decodable permission element may be updated based on the determined context model.

[164] Контекстная модель может выделяться и обновляться посредством контекстно-кодированных (регулярно кодированных) элементов разрешения, и контекстная модель могут указываться на основе индекса контекста (ctxIdx) или приращения индекса контекста (ctxInc). CtxIdx может извлекаться на основе ctxInc. В частности, например, ctxIdx, представляющий контекстную модель для каждого из регулярно кодированных элементов разрешения, может извлекаться посредством суммы ctxInc и смещения индекса контекста (ctxIdxOffset). Например, ctxInc может извлекаться по-иному посредством элементов разрешения. ctxIdxOffset может представляться как наименьшее значение ctxIdx. Обычно, ctxIdxOffset может представлять собой значение, используемое для того, чтобы отличать ее от контекстных моделей для других синтаксических элементов, и контекстная модель для одного синтаксического элемента может разделяться или извлекаться на основе ctxInc.[164] The context model may be allocated and updated by context-encoded (regularly encoded) permission elements, and the context model may be specified based on a context index (ctxIdx) or a context index increment (ctxInc). CtxIdx can be derived based on ctxInc. In particular, for example, a ctxIdx representing the context model for each of the regularly encoded permission elements can be extracted by the sum of ctxInc and the context index offset (ctxIdxOffset). For example, ctxInc may be retrieved differently via permission elements. ctxIdxOffset can be represented as the smallest value of ctxIdx. Typically, ctxIdxOffset may be a value used to distinguish it from context models for other syntax elements, and the context model for one syntax element may be separated or derived based on ctxInc.

[165] В процедуре энтропийного кодирования, может определяться то, следует выполнять кодирование через механизм регулярного кодирования или выполнять кодирование через механизм обходного кодирования, и, соответственно, тракт кодирования может переключаться. Энтропийное декодирование может выполнять процесс, идентичный энтропийному кодированию, в обратном порядке.[165] In the entropy coding procedure, it may be determined whether to perform coding through a regular coding mechanism or to perform coding through a bypass coding mechanism, and the coding path may switch accordingly. Entropy decoding can perform the same process as entropy encoding in reverse order.

[166] Между тем, например, в случае если выполняется обходное декодирование синтаксического элемента, оборудование декодирования может принимать элемент разрешения, соответствующий синтаксическому элементу, через поток битов, и может декодировать входной элемент выборки посредством применения регулярного распределения вероятностей. В этом случае, оборудование декодирования может опускать процедуру извлечения контекстной модели синтаксического элемента и процедуру обновления контекстной модели, применяемые к элементу разрешения после декодирования.[166] Meanwhile, for example, in the case where the bypass decoding of the syntax element is performed, the decoding equipment may receive a bin corresponding to the syntax element via the bitstream, and may decode the input bin by applying a regular probability distribution. In this case, the decoding hardware may omit the syntax element context model extraction procedure and the context model update procedure applied to the permission element after decoding.

[167] Между тем, вариант осуществления настоящего документа может предлагать схему для передачи в служебных сигналах MTS-индекса. Здесь, MTS-индекс, как описано выше, может представлять любой из множества наборов ядер преобразования, и MTS-индекс может кодироваться, и информация MTS-индекса может передаваться в служебных сигналах в оборудование декодирования. Оборудование декодирования может получать MTS-индекс посредством декодирования информации MTS-индекса и может определять набор ядер преобразования, который должен применяться, на основе MTS-индекса. MTS-индекс может представляться как синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx. Например, MTS-индекс может преобразовываться в двоичную форму с использованием нулевого порядка параметров Райса-Голомба, но может преобразовываться в двоичную форму на основе усеченного кода Райса. В случае преобразования в двоичную форму на основе усеченного кода Райса, входной параметр cMax может иметь значение 4, и cRiceParam может иметь значение 0. Например, оборудование кодирования может извлекать элемент(ы) разрешения для MTS-индекса посредством преобразования в двоичную форму MTS-индекса, извлекать информацию MTS-индекса (бит(ы) для MTS-индекса) посредством кодирования извлеченного элемента(ов) разрешения и передавать в служебных сигналах информацию MTS-индекса в оборудование декодирования. Оборудование декодирования может извлекать элемент(ы) разрешения для MTS-индекса посредством декодирования информации MTS-индекса и извлекать MTS-индекс посредством сравнения извлеченного элемента(ов) разрешения для MTS-индекса с возможными вариантами элементов разрешения для MTS-индекса.[167] Meanwhile, an embodiment of the present document may propose a scheme for signaling an MTS index. Here, the MTS index as described above may represent any of a plurality of transform kernel sets, and the MTS index may be encoded, and the MTS index information may be signaled to the decoding equipment. The decoding equipment may obtain the MTS index by decoding the MTS index information, and may determine the set of transform kernels to be applied based on the MTS index. The MTS index may be represented as a tu_mts_idx syntax element or an mts_idx syntax element. For example, an MTS index may be binarized using zero order Rice-Golomb parameters, but may be binarized based on a truncated Rice code. In the case of binarization based on the truncated Rice code, the input parameter cMax may have the value 4 and cRiceParam may have the value 0. For example, the encoding equipment may extract the permission element(s) for the MTS index by binarizing the MTS index , extract the MTS index information (bit(s) for the MTS index) by encoding the extracted permission element(s), and signal the MTS index information to the decoding equipment. The decoding equipment can extract the MTS index bin(s) by decoding the MTS index information, and extract the MTS index by comparing the extracted MTS index bin(s) with candidate MTS index bins.

[168] Например, MTS-индекс (например, синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx) может контекстно кодироваться на основе контекстной модели или индекса контекста относительно всех элементов разрешения. В этом случае, приращение индекса контекста (ctxInc) для контекстного кодирования MTS-индекса или ctxInc согласно местоположению элемента разрешения может выделяться или определяться так, как указано в таблице 2. Дополнительно, контекстная модель может выбираться согласно местоположению элемента разрешения так, как указано в таблице 2.[168] For example, an MTS index (eg, the tu_mts_idx syntax element or the mts_idx syntax element) may be context-encoded based on a context model or a context index relative to all permission elements. In this case, the increment of the context index (ctxInc) for the context encoding of the MTS index or ctxInc according to the location of the permission element may be allocated or determined as indicated in Table 2. Additionally, the context model may be selected according to the location of the permission element as indicated in the table. 2.

[169] Табл. 2[169] Tab. 2

Figure 00000010
Figure 00000010

[170] Ссылаясь на таблицу 2, ctxInc для элемента разрешения номер 0 (первого элемента разрешения) может выделяться на основе cqtDepth. Здесь, cqtDepth может представлять глубину дерева квадрантов для текущего блока и может извлекаться в качестве одного значения в 0-5. Таким образом, ctxInc для нулевого элемента разрешения может выделяться одно значение в 0-5 согласно cqtDepth. Дополнительно, ctxInc для элемента разрешения номер 1 (второго элемента разрешения) может выделяться 6, ctxInc для элемента разрешения номер 2 (третьего элемента разрешения) может выделяться 7, и ctxInc для элемента разрешения номер 3 (четвертого элемента разрешения) может выделяться 8. Таким образом, элементу разрешения номер 0 - элементу разрешения номер 3 может выделяться ctxInc, имеющий различные значения. Здесь, различное значение ctxInc может представлять различные контекстные модели, и в этом случае, 9 контекстных моделей для кодирования MTS-индекса могут предоставляться.[170] Referring to Table 2, ctxInc for permission element number 0 (the first permission element) may be allocated based on cqtDepth. Here, cqtDepth may represent the depth of the quadtree for the current block, and may be retrieved as a single value in 0-5. Thus, ctxInc for a null permission element can allocate one value in 0-5 according to cqtDepth. Additionally, ctxInc for permission element number 1 (second permission element) may be allocated 6, ctxInc for permission element number 2 (third permission element) may be allocated 7, and ctxInc for permission element number 3 (fourth permission element) may be allocated 8. Thus , permission element number 0 - permission element number 3 can be allocated ctxInc, which has different values. Here, a different value of ctxInc may represent different context models, in which case, 9 context models for encoding the MTS index may be provided.

[171] Дополнительно, например, MTS-индекс (например, синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx) может подвергаться обходному кодированию относительно всех элементов разрешения так, как указано в таблице 3. В этом случае, 0 контекстных моделей для кодирования MTS-индекса могут предоставляться.[171] Additionally, for example, the MTS index (for example, the tu_mts_idx syntax element or the mts_idx syntax element) may be bypass-encoded with respect to all permission elements as indicated in Table 3. In this case, 0 context models for encoding the MTS index may be provided.

[172] Табл. 3[172] Tab. 3

Figure 00000011
Figure 00000011

[173] Дополнительно, например, MTS-индекс (например, синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx) может контекстно кодироваться на основе контекстной модели или индекса контекста относительно элемента разрешения номер 0 (первого элемента разрешения), как указано в таблице 4, и может подвергаться обходному кодированию относительно оставшихся элементов разрешения. Таким образом, ctxInc для элемента разрешения номер 0 (первого элемента разрешения) может выделяться 0. В этом случае, одна контекстная модель для кодирования MTS-индекса может предоставляться. [173] Additionally, for example, an MTS index (e.g., tu_mts_idx syntax element or mts_idx syntax element) may be context-encoded based on a context model or a context index relative to permission element number 0 (the first permission element) as indicated in Table 4, and may be bypassed with respect to the remaining permission elements. Thus, ctxInc for permission element number 0 (the first permission element) may be allocated 0. In this case, one context model for encoding the MTS index may be provided.

[174] Табл. 4[174] Tab. 4

Figure 00000012
Figure 00000012

[175] Дополнительно, например, MTS-индекс (например, синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx) может контекстно кодироваться на основе контекстной модели или индекса контекста относительно элемента разрешения номер 0 (первого элемента разрешения) и элемента разрешения номер 1 (второго элемента разрешения), как указано в таблице 5, и может подвергаться обходному кодированию относительно оставшихся элементов разрешения. Таким образом, ctxInc для элемента разрешения номер 0 (первого элемента разрешения) может выделяться 0, и ctxInc для элемента разрешения номер 1 (второго элемента разрешения) может выделяться 1. В этом случае, 2 контекстных модели для кодирования MTS-индекса могут предоставляться.[175] Additionally, for example, an MTS index (e.g., the tu_mts_idx syntax element or the mts_idx syntax element) may be context-encoded based on a context model or context index relative to permission element number 0 (the first permission element) and permission element number 1 (the second permission element ) as specified in Table 5 and may be bypassed with respect to the remaining bins. Thus, ctxInc for permission element number 0 (first permission element) may be allocated 0, and ctxInc for permission element number 1 (second permission element) may be allocated 1. In this case, 2 context models for encoding the MTS index may be provided.

[176] Табл. 5[176] Tab. 5

Figure 00000013
Figure 00000013

[177] Дополнительно, например, MTS-индекс (например, синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx) может контекстно кодироваться на основе контекстной модели или индекса контекста относительно всех элементов разрешения так, как указано в таблице 6, и может выделять один ctxInc относительно каждого элемента разрешения. Таким образом, ctxInc для элемента разрешения номер 0 (первого элемента разрешения) может выделяться 0, и ctxInc для элемента разрешения номер 1 (второго элемента разрешения) может выделяться 1; ctxInc для элемента разрешения номер 2 (третьего элемента разрешения) может выделяться 2, и ctxInc для элемента разрешения номер 3 (четвертого элемента разрешения) может выделяться 2. В этом случае, 4 контекстных модели для кодирования MTS-индекса могут предоставляться. [177] Additionally, for example, an MTS index (e.g., the tu_mts_idx syntax element or the mts_idx syntax element) may be context-encoded based on a context model or a context index relative to all permission elements as indicated in Table 6, and may allocate one ctxInc relative to each permission element. Thus, ctxInc for permission element number 0 (the first permission element) may be allocated 0, and ctxInc for permission element number 1 (the second permission element) may be allocated 1; ctxInc for permission element number 2 (the third permission element) may be allocated 2, and ctxInc for permission element number 3 (the fourth permission element) may be allocated 2. In this case, 4 context models for encoding the MTS index may be provided.

[178] Табл. 6[178] Tab. 6

Figure 00000014
Figure 00000014

[179] Как описано выше, согласно варианту осуществления, поскольку число контекстных моделей уменьшается посредством применения обходного кодирования ко всем или некоторым элементам разрешения MTS-индекса или применения конкретного значения к ctxInc, хотя контекстное кодирование применяется, сложность может понижаться, и объем вывода декодера может увеличиваться. Дополнительно, в варианте осуществления, в случае использования контекстных моделей, как описано выше, начальное значение и/или многооконный размер могут быть переменными на основе статистики возникновения для позиции каждого элемента разрешения.[179] As described above, according to an embodiment, since the number of context models is reduced by applying bypass coding to all or some of the MTS index bins or by applying a specific value to ctxInc while context coding is applied, the complexity can be reduced and the amount of decoder output can be increase. Additionally, in an embodiment, in the case of using context models as described above, the initial value and/or multi-window size may be variable based on the occurrence statistics for the position of each bin.

[180] Фиг. 9 и 10 схематично иллюстрируют способ кодирования видео/изображений и пример связанных компонентов согласно варианту(ам) осуществления настоящего документа.[180] FIG. 9 and 10 schematically illustrate a video/image coding method and an example of related components according to embodiment(s) of the present document.

[181] Способ, раскрытый на фиг. 9, может осуществляться посредством оборудования кодирования, раскрытого на фиг. 2 или фиг. 10. В частности, например, S900-S920 по фиг. 9 могут выполняться посредством остаточного процессора 230 оборудования кодирования по фиг. 10, и S930 по фиг. 9 может выполняться посредством энтропийного кодера 240 оборудования кодирования по фиг. 10. Дополнительно, хотя не проиллюстрировано на фиг. 9, прогнозные выборки или связанная с прогнозированием информация могут извлекаться посредством модуля 220 прогнозирования оборудования кодирования по фиг. 10, остаточная информация может извлекаться из исходных выборок или прогнозных выборок посредством остаточного процессора 230 оборудования кодирования, и поток битов может формироваться из остаточной информации или связанной с прогнозированием информации посредством энтропийного кодера 240 оборудования кодирования. Способ, раскрытый на фиг. 9, может включать в себя варианты осуществления, описанные выше в настоящем документе.[181] The method disclosed in FIG. 9 may be performed by the encoding equipment disclosed in FIG. 2 or fig. 10. In particular, for example, S900-S920 of FIG. 9 may be performed by the encoding equipment residual processor 230 of FIG. 10 and S930 of FIG. 9 may be performed by the entropy encoder 240 of the encoding equipment of FIG. 10. Additionally, although not illustrated in FIG. 9, the prediction samples or prediction-related information may be retrieved by the prediction module 220 of the encoding equipment of FIG. 10, residual information may be extracted from the original samples or predictive samples by the encoding equipment residual processor 230, and a bitstream may be generated from the residual information or prediction-related information by the encoding equipment entropy encoder 240. The method disclosed in FIG. 9 may include the embodiments described above herein.

[182] Ссылаясь на фиг. 9, оборудование кодирования извлекает остаточные выборки для текущего блока (S900). Например, оборудование кодирования может извлекать остаточные выборки на основе прогнозных выборок и исходных выборок. Хотя не проиллюстрировано на фиг. 9, чтобы формировать прогнозные выборки для текущего блока, оборудование кодирования может выполнять внутреннее прогнозирование или взаимное прогнозирование относительно текущего блока с учетом функции RD затрат на искажение в зависимости от скорости передачи и может формировать связанную с прогнозированием информацию, включающую в себя информацию режима/типа прогнозирования.[182] Referring to FIG. 9, the encoding equipment extracts residual samples for the current block (S900). For example, the encoding equipment may derive residual samples based on the predictive samples and the original samples. Although not illustrated in FIG. 9, in order to generate prediction samples for the current block, the encoding equipment may perform intra prediction or inter prediction with respect to the current block considering the rate-based distortion cost function RD, and may generate prediction-related information including prediction mode/type information. .

[183] Оборудование кодирования извлекает коэффициенты преобразования для текущего блока на основе остаточных выборок (S910). Например, оборудование кодирования может извлекать коэффициенты преобразования посредством выполнения преобразования относительно остаточных выборок. Здесь, преобразование может выполняться на основе ядра преобразования или набора ядер преобразования. Например, набор ядер преобразования может включать в себя ядро преобразования в горизонтальном направлении и ядро преобразования в вертикальном направлении. Например, оборудование кодирования может извлекать коэффициенты преобразования посредством выполнения первичного преобразования относительно остаточных выборок. Дополнительно, например, оборудование кодирования может извлекать временные коэффициенты преобразования посредством выполнения первичного преобразования относительно остаточных выборок и может извлекать коэффициенты преобразования посредством выполнения вторичного преобразования относительно временных коэффициентов преобразования. Например, преобразование, которое выполняется на основе набора ядер преобразования, может представляться как первичное преобразование.[183] The encoding equipment extracts transform coefficients for the current block based on the residual samples (S910). For example, the encoding equipment may derive transform coefficients by performing a transform on the residual samples. Here, the transformation may be performed based on a transformation kernel or a set of transformation kernels. For example, the set of transformation kernels may include a transformation kernel in the horizontal direction and a transformation kernel in the vertical direction. For example, the encoding equipment may derive transform coefficients by performing a primary transform on the residual samples. Further, for example, the encoding equipment may extract temporal transform coefficients by performing a primary transform on the residual samples, and may extract the transform coefficients by performing a secondary transform on the temporal transform coefficients. For example, a transformation that is performed based on a set of transformation kernels may be represented as a primary transformation.

[184] Оборудование кодирования формирует MTS-индекс и остаточную информацию на основе коэффициентов преобразования (S920). Другими словами, оборудование кодирования может формировать MTS-индекс и/или остаточную информацию на основе коэффициентов преобразования.[184] The encoding equipment generates an MTS index and residual information based on the transform coefficients (S920). In other words, the encoding equipment may generate an MTS index and/or residual information based on the transform coefficients.

[185] MTS-индекс может представлять набор ядер преобразования, применяемый к (коэффициентам преобразования) текущего блока, из возможных вариантов наборов ядер преобразования. Здесь, MTS-индекс может представляться как синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx. Как описано выше, набор ядер преобразования может включать в себя ядро преобразования в горизонтальном направлении и ядро преобразования в вертикальном направлении, и ядро преобразования в горизонтальном направлении может представляться как trTypeHor, и ядро преобразования в вертикальном направлении может представляться как trTypeVer.[185] The MTS index may represent a set of transform kernels applied to the (transform coefficients) of the current block, among the possible set of transform kernels. Here, the MTS index may be represented as a tu_mts_idx syntax element or an mts_idx syntax element. As described above, the set of transformation kernels may include a horizontal direction transformation kernel and a vertical direction transformation kernel, and the horizontal direction transformation kernel may be represented as trTypeHor, and the vertical direction transformation kernel may be represented as trTypeVer.

[186] Например, значения trTypeHor и trTypeVer могут представляться посредством ядра преобразования в горизонтальном направлении и ядра преобразования в вертикальном направлении, применяемых к (коэффициентам преобразования) текущего блока, и MTS-индекс может представляться как один из возможных вариантов, включающих в себя 0-4, посредством значений trTypeHor и trTypeVer.[186] For example, the values of trTypeHor and trTypeVer may be represented by a transform kernel in the horizontal direction and a transform kernel in the vertical direction applied to the (transform coefficients) of the current block, and the MTS index may be represented as one of the options including 0- 4 through the values trTypeHor and trTypeVer.

[187] Например, если MTS-индекс равен 0, может представляться то, что trTypeHor и trTypeVer равны 0. Дополнительно, если MTS-индекс равен 1, он может представлять то, что trTypeHor и trTypeVer равны 1. Дополнительно, если MTS-индекс равен 2, он может представлять то, что trTypeHor равен 2, и trTypeVer равен 1. Если MTS-индекс равен 3, он может представлять то, что trTypeHor равен 1, и trTypeVer равен 1. Дополнительно, если MTS-индекс равен 4, он может представлять то, что trTypeHor и trTypeVer равны 2. Например, если значение trTypeHor или trTypeVer равно 0, оно может представлять то, что DCT2 применяется к (коэффициентам преобразования) текущего блока в горизонтальном направлении или в вертикальном направлении, если 1, оно может представлять то, что DST7 применяется, и если 2, оно может представлять то, что DCT8 применяется. Таким образом, каждое из ядра преобразования, которое должно применяться в горизонтальном направлении, и ядра преобразования, которое должно применяться в вертикальном направлении, может представляться как один из возможных вариантов, включающих в себя DCT2, DST7 и DCT8, на основе MTS-индекса.[187] For example, if the MTS index is 0, it may represent that trTypeHor and trTypeVer are 0. Additionally, if the MTS index is 1, it may represent that trTypeHor and trTypeVer are equal to 1. Additionally, if the MTS index is is 2, it may represent that trTypeHor is 2 and trTypeVer is 1. If MTS index is 3, it may represent that trTypeHor is 1 and trTypeVer is 1. Additionally, if MTS index is 4, it may represent that trTypeHor and trTypeVer are 2. For example, if the value of trTypeHor or trTypeVer is 0, it may represent that DCT2 is applied to the (transformation factors) of the current block in the horizontal direction, or in the vertical direction, if 1, it may represent that DST7 applies, and if 2, it may represent that DCT8 applies. Thus, each of a transformation kernel to be applied in the horizontal direction and a transformation kernel to be applied in the vertical direction can be presented as one of the options including DCT2, DST7, and DCT8 based on the MTS index.

[188] MTS-индекс может представляться на основе элементов разрешения из строки элементов разрешения MTS-индекса. Другими словами, MTS-индекс может преобразовываться в двоичную форму и представляться в качестве (элементов разрешения) из строки элементов разрешения MTS-индекса, и (элементы разрешения) из строки элементов разрешения MTS-индекса могут энтропийно кодироваться.[188] The MTS index may be represented based on the permission elements from the permission element row of the MTS index. In other words, the MTS index may be binarized and represented as (lexi) from the MTS index le element string, and (leni) from the MTS index le row may be entropy encoded.

[189] Другими словами по меньшей мере один из элементов разрешения из строки элементов разрешения MTS-индекса может представляться на основе контекстного кодирования. Здесь, контекстное кодирование может выполняться на основе значения приращения индекса контекста (ctxInc). Дополнительно, контекстное кодирование может выполняться на основе индекса контекста (ctxIdx) или контекстной модели. Здесь, индекс контекста может представляться на основе значения приращения индекса контекста. Дополнительно, индекс контекста может представляться на основе значения приращения индекса контекста и смещения индекса контекста (ctxIdxOffset).[189] In other words, at least one of the permission elements from the permission element row of the MTS index may be represented based on the context encoding. Here, the context encoding may be performed based on the increment value of the context index (ctxInc). Additionally, context encoding may be performed based on a context index (ctxIdx) or a context model. Here, the context index may be represented based on the increment value of the context index. Additionally, the context index may be represented based on the value of the context index increment and the context index offset (ctxIdxOffset).

[190] Например, все элементы разрешения из строки элементов разрешения MTS-индекса могут представляться на основе контекстного кодирования. Например, ctxInc для первого элемента разрешения или нулевого элемента разрешения (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может представляться на основе cqtDepth. Здесь, cqtDepth может представлять глубину дерева квадрантов для текущего блока и может представляться как одно значение из 0-5. Дополнительно, ctxInc для второго элемента разрешения или элемента разрешения номер 1 (элемента 1 разрешения) может представляться как 6, ctxInc для третьего элемента разрешения или элемента разрешения номер 2 (элемента 2 разрешения) может представляться как 7, и ctxInc для четвертого элемента разрешения или элемента разрешения номер 3 (элемента 3 разрешения) может представляться как 8. Дополнительно, например, ctxInc для первого элемента разрешения или нулевого элемента разрешения (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может представляться как 0, ctxInc для второго элемента разрешения или элемента разрешения номер 1 (элемента 1 разрешения) может представляться как 1, ctxInc для третьего элемента разрешения или элемента разрешения номер 2 (элемента 2 разрешения) может представляться как 2, и ctxInc для четвертого элемента разрешения или элемента разрешения номер 3 (элемента 3 разрешения) может представляться как 3. Таким образом, число значений приращения индекса контекста, которые могут использоваться для контекстного кодирования первого элемента разрешения из элементов разрешения из строки элементов разрешения, может быть равно единице.[190] For example, all permission elements from the permission element row of the MTS index may be represented based on the context encoding. For example, ctxInc for the first permission element or permission element zero (permission element 0) of the permission elements in the MTS-index permission element row can be represented based on cqtDepth. Here, cqtDepth may represent the depth of the quadtree for the current block, and may be represented as one value from 0-5. Additionally, ctxInc for the second permission element or permission element number 1 (permission element 1) may be represented as 6, ctxInc for the third permission element or permission element number 2 (permission element 2) may be represented as 7, and ctxInc for the fourth permission element or permission element permission number 3 (permission element 3) may be represented as 8. Additionally, for example, ctxInc for the first permission element or permission element zero (permission element 0) of the permission elements from the MTS-index permission element row may be represented as 0, ctxInc for the second permission element permission or permission element number 1 (permission element 1) can be represented as 1, ctxInc for the third permission element or permission element number 2 (permission element 2) can be represented as 2, and ctxInc for the fourth permission element or permission element number 3 (element 3 permission) can be represented as 3. Thus, the number o the context index increment values that can be used to context-encode the first of the permission elements from the permission element string may be equal to one.

[191] Дополнительно, например, некоторые элементы разрешения из строки элементов разрешения MTS-индекса могут представляться на основе контекстного кодирования, и оставшиеся могут представляться на основе обходного кодирования. Например, ctxInc для первого элемента разрешения или элемента разрешения номер 0 (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может представляться как 0, и оставшиеся элементы разрешения могут представляться на основе обходного кодирования. Дополнительно, например, ctxInc для первого элемента разрешения или элемента разрешения номер 0 (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может представляться как 0, ctxInc для второго элемента разрешения или элемента разрешения номер 1 (элемента 1 разрешения) может представляться как 1, и оставшиеся элементы разрешения могут представляться на основе обходного кодирования. Таким образом, число значений приращения индекса контекста, которые могут использоваться для контекстного кодирования первого элемента разрешения из элементов разрешения из строки элементов разрешения, может быть равно единице.[191] Additionally, for example, some permission elements from the MTS index permission element row may be represented based on the context encoding, and the remaining ones may be represented based on the bypass encoding. For example, ctxInc for the first permission element or permission element number 0 (permission element 0) of the permission elements from the MTS-index permission element row may be represented as 0, and the remaining permission elements may be represented based on bypass encoding. Additionally, for example, ctxInc for the first permission element or permission element number 0 (permission element 0) of the permission elements from the MTS-index permission element row may be represented as 0, ctxInc for the second permission element or permission element number 1 (permission element 1) may be represented as 1, and the remaining bins may be represented based on bypass coding. Thus, the number of context index increment values that can be used to context-encode the first permission element of the permission elements of the permission element string may be one.

[192] Дополнительно, все элементы разрешения из строки элементов разрешения MTS-индекса могут представляться на основе обходного кодирования. Здесь, обходное кодирование может представлять выполнение контекстного кодирования на основе равномерного распределения вероятностей, и поскольку процедура обновления контекстного кодирования опускается, эффективность кодирования может повышаться.[192] Additionally, all permission elements from the permission element row of the MTS index may be represented based on bypass coding. Here, bypass encoding may represent performing context encoding based on a uniform probability distribution, and since the context encoding update procedure is omitted, encoding efficiency may be improved.

[193] Остаточная информация может представлять информацию, которая используется для того, чтобы извлекать остаточные выборки. Дополнительно, например, оборудование кодирования может выполнять квантование для коэффициентов преобразования, и остаточная информация может включать в себя информацию относительно остаточных выборок, связанную с преобразованием информацию и/или связанную с квантованием информацию. Например, остаточная информация может включать в себя информацию относительно квантованных коэффициентов преобразования.[193] The residual information may represent information that is used to extract residual samples. Additionally, for example, the encoding equipment may perform quantization for the transform coefficients, and the residual information may include information regarding the residual samples, transform-related information, and/or quantization-related information. For example, the residual information may include information regarding quantized transform coefficients.

[194] Оборудование кодирования кодирует информацию изображений, включающую в себя MTS-индекс и остаточную информацию (S930). Например, информация изображений дополнительно может включать в себя связанную с прогнозированием информацию. Например, оборудование кодирования может формировать поток битов посредством кодирования информации изображений. Здесь, поток битов может называться "кодированной информацией (изображений)".[194] The encoding equipment encodes image information including an MTS index and residual information (S930). For example, the image information may further include prediction related information. For example, the encoding equipment may generate a bit stream by encoding image information. Here, the bit stream may be referred to as "encoded information (pictures)".

[195] Дополнительно, хотя не проиллюстрировано на фиг. 9, например, оборудование кодирования может формировать восстановленные выборки на основе остаточных выборок и прогнозных выборок. Дополнительно, восстановленный блок и восстановленный кадр могут извлекаться на основе восстановленных выборок.[195] Additionally, although not illustrated in FIG. 9, for example, the encoding equipment may generate reconstructed samples based on residual samples and predictive samples. Additionally, the reconstructed block and the reconstructed frame may be derived based on the reconstructed samples.

[196] Например, оборудование кодирования может формировать информацию потока битов или кодированную информацию посредством кодирования информации изображений, включающей в себя все или части вышеописанных фрагментов информации (или синтаксических элементов). Дополнительно, информация может выводиться в форме потока битов. Дополнительно, поток битов или кодированная информация может передаваться в оборудование декодирования через сеть или носитель хранения данных. Дополнительно, поток битов или кодированная информация может сохраняться на компьютерно-читаемом носителе хранения данных, и поток битов или кодированная информация может формироваться посредством вышеописанного способа кодирования изображений.[196] For example, the encoding equipment may generate bitstream information or encoded information by encoding image information including all or parts of the above-described pieces of information (or syntax elements). Additionally, the information may be output in the form of a bitstream. Additionally, the bitstream or encoded information may be transmitted to the decoding equipment via a network or a storage medium. Further, the bitstream or encoded information may be stored in a computer-readable storage medium, and the bitstream or encoded information may be generated by the above-described image encoding method.

[197] Фиг. 11 и 12 схематично иллюстрируют способ декодирования видео/изображений и пример связанных компонентов согласно варианту(ам) осуществления настоящего документа.[197] FIG. 11 and 12 schematically illustrate a video/image decoding method and an example of related components according to the embodiment(s) of the present document.

[198] Способ, раскрытый на фиг. 11, может осуществляться посредством оборудования декодирования, раскрытого на фиг. 3 или фиг. 12. В частности, например, S1100 по фиг. 11 может выполняться посредством энтропийного декодера 310 оборудования декодирования по фиг. 12, и S1110 и S1120 по фиг. 11 могут выполняться посредством остаточного процессора 320 оборудования декодирования по фиг. 12. Дополнительно, хотя не проиллюстрировано на фиг. 11, связанная с прогнозированием информация или остаточная информация может извлекаться из потока битов посредством энтропийного декодера 310 оборудования декодирования по фиг. 12, и остаточные выборки могут извлекаться из остаточной информации посредством остаточного процессора 320 оборудования декодирования. Прогнозные выборки могут извлекаться из связанной с прогнозированием информации посредством модуля 330 прогнозирования оборудования декодирования, и восстановленный блок или восстановленный кадр может извлекаться из остаточных выборок или прогнозных выборок посредством сумматора 340 оборудования декодирования. Способ, раскрытый на фиг. 11, может включать в себя варианты осуществления, описанные выше в настоящем документе.[198] The method disclosed in FIG. 11 may be performed by the decoding equipment disclosed in FIG. 3 or fig. 12. In particular, for example, S1100 of FIG. 11 may be performed by the entropy decoder 310 of the decoding equipment of FIG. 12 and S1110 and S1120 of FIG. 11 may be performed by the decoding hardware residual processor 320 of FIG. 12. Additionally, although not illustrated in FIG. 11, prediction related information or residual information can be extracted from the bitstream by the entropy decoder 310 of the decoding equipment of FIG. 12 and the residual samples can be extracted from the residual information by the residual processor 320 of the decoding hardware. Predictive samples may be extracted from prediction-related information by decoding equipment predictor 330, and a reconstructed block or reconstructed frame may be extracted from residual samples or predictive samples by decoding equipment adder 340 . The method disclosed in FIG. 11 may include the embodiments described above herein.

[199] Ссылаясь на фиг. 11, оборудование декодирования получает MTS-индекс и остаточную информацию из потока битов (S1100). Например, оборудование декодирования может получать MTS-индекс и/или остаточную информацию посредством синтаксического анализа или декодирования потока битов. Здесь, поток битов может называться "кодированной информацией (изображений)".[199] Referring to FIG. 11, the decoding equipment obtains the MTS index and residual information from the bit stream (S1100). For example, the decoding equipment may obtain the MTS index and/or residual information by parsing or decoding the bitstream. Here, the bitstream may be referred to as "encoded information (pictures)".

[200] MTS-индекс может представлять набор ядер преобразования, который должен применяться к текущему блоку, из возможных вариантов наборов ядер преобразования. Здесь, MTS-индекс может представляться как синтаксический элемент tu_mts_idx или синтаксический элемент mts_idx. Дополнительно, набор ядер преобразования может включать в себя ядро преобразования, которое должно применяться к текущему блоку в горизонтальном направлении, и ядро преобразования, которое должно применяться к текущему блоку в вертикальном направлении. Здесь, ядро преобразования, которое должно применяться в горизонтальном направлении, может представляться как trTypeHor, и ядро преобразования, которое должно применяться в вертикальном направлении, может представляться как trTypeVer.[200] The MTS index may represent a set of transformation cores to be applied to the current block from among the possible sets of transformation cores. Here, the MTS index may be represented as a tu_mts_idx syntax element or an mts_idx syntax element. Additionally, the set of transformation kernels may include a transformation kernel to be applied to the current block in the horizontal direction and a transformation kernel to be applied to the current block in the vertical direction. Here, a transformation kernel to be applied in the horizontal direction may be represented as trTypeHor, and a transformation kernel to be applied in the vertical direction may be represented as trTypeVer.

[201] Например, MTS-индекс может извлекаться в качестве одного из возможных вариантов, включающих в себя 0-4, и в соответствии с MTS-индексом, каждый из trTypeHor и trTypeVer может извлекаться в качестве одного из 0-2. Например, если MTS-индекс равен 0, trTypeHor и trTypeVer могут быть равны 0. Дополнительно, если MTS-индекс равен 1, trTypeHor и trTypeVer могут быть равны 1. Дополнительно, если MTS-индекс равен 2, trTypeHor может быть равно 2, и trTypeVer может быть равно 1. Если MTS-индекс равен 3, trTypeHor может быть равно 1, и trTypeVer может быть равно 1. Дополнительно, если MTS-индекс равен 4, trTypeHor и trTypeVer могут быть равны 2. Например, значение trTypeHor или trTypeVer может представлять ядро преобразования, и если 0, оно может представлять DCT2, если 1, оно может представлять DST7, и если 2, оно может представлять DCT8. Таким образом, каждое из ядра преобразования, которое должно применяться в горизонтальном направлении, и ядра преобразования, которое должно применяться в вертикальном направлении, может извлекаться в качестве одного из возможных вариантов, включающих в себя DCT2, DST7 и DCT8, на основе MTS-индекса.[201] For example, the MTS index can be extracted as one of the options including 0-4, and according to the MTS index, each of trTypeHor and trTypeVer can be extracted as one of 0-2. For example, if the MTS index is 0, trTypeHor and trTypeVer may be 0. Additionally, if the MTS index is 1, trTypeHor and trTypeVer may be 1. Additionally, if the MTS index is 2, trTypeHor may be 2, and trTypeVer may be 1. If the MTS index is 3, trTypeHor may be 1, and trTypeVer may be 1. Additionally, if the MTS index is 4, trTypeHor and trTypeVer may be 2. For example, the value of trTypeHor or trTypeVer may be represent a transform kernel, and if 0, it may represent DCT2, if 1, it may represent DST7, and if 2, it may represent DCT8. Thus, each of a transformation kernel to be applied in the horizontal direction and a transformation kernel to be applied in the vertical direction can be extracted as one of the options including DCT2, DST7, and DCT8 based on the MTS index.

[202] MTS-индекс может извлекаться на основе элементов разрешения из строки элементов разрешения MTS-индекса. Другими словами, информация MTS-индекса может энтропийно декодироваться и может извлекаться в качестве преобразованного в двоичную форму MTS-индекса, и преобразованный в двоичную форму MTS-индекс может представляться как (элементы разрешения) из строки элементов разрешения MTS-индекса.[202] The MTS index may be derived based on the permission elements from the permission element row of the MTS index. In other words, the MTS index information can be entropy decoded and can be retrieved as a binarized MTS index, and the binarized MTS index can be represented as (bins) from the bin row of the MTS index.

[203] Другими словами по меньшей мере один из элементов разрешения из строки элементов разрешения MTS-индекса может извлекаться на основе контекстного кодирования. Здесь, контекстное кодирование может выполняться на основе значения приращения индекса контекста (ctxInc). Дополнительно, контекстное кодирование может выполняться на основе индекса контекста (ctxIdx) или контекстной модели. Здесь, индекс контекста может извлекаться на основе значения приращения индекса контекста. Дополнительно, индекс контекста может извлекаться на основе значения приращения индекса контекста и смещения индекса контекста (ctxIdxOffset).[203] In other words, at least one of the permission elements from the permission element row of the MTS index can be extracted based on the context encoding. Here, the context encoding may be performed based on the increment value of the context index (ctxInc). Additionally, context encoding may be performed based on a context index (ctxIdx) or a context model. Here, the context index may be derived based on the increment value of the context index. Additionally, the context index may be derived based on the value of the context index increment and the context index offset (ctxIdxOffset).

[204] Например, все элементы разрешения из строки элементов разрешения MTS-индекса могут извлекаться на основе контекста кодирования. Например, ctxInc для первого элемента разрешения или нулевого элемента разрешения (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может выделяться на основе cqtDepth. Здесь, cqtDepth может представлять глубину дерева квадрантов для текущего блока и может извлекаться в качестве одного значения из 0-5. Дополнительно, ctxInc для второго элемента разрешения или элемента разрешения номер 1 (элемента 1 разрешения) может выделяться 6, ctxInc для третьего элемента разрешения или элемента разрешения номер 2 (элемента 2 разрешения) может выделяться 7, и ctxInc для четвертого элемента разрешения или элемента разрешения номер 3 (элемента 3 разрешения) может выделяться 8. Дополнительно, например, ctxInc для первого элемента разрешения или нулевого элемента разрешения (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может выделяться 0, ctxInc для второго элемента разрешения или элемента разрешения номер 1 (элемента 1 разрешения) может выделяться 1, ctxInc для третьего элемента разрешения или элемента разрешения номер 2 (элемента 2 разрешения) может выделяться 2, и ctxInc для четвертого элемента разрешения или элемента разрешения номер 3 (элемента 3 разрешения) может выделяться 3. Таким образом, число значений приращения индекса контекста, которые могут использоваться для контекстного кодирования первого элемента разрешения из элементов разрешения из строки элементов разрешения, может быть равно единице.[204] For example, all permission elements from the permission element row of the MTS index can be extracted based on the encoding context. For example, ctxInc for the first permission element or permission element zero (permission element 0) of the permission elements in the MTS-index permission element row can be allocated based on cqtDepth. Here, cqtDepth may represent the depth of the quadtree for the current block, and may be retrieved as a single value from 0-5. Additionally, ctxInc for the second permission element or permission element number 1 (permission element 1) may be allocated 6, ctxInc for the third permission element or permission element number 2 (permission element 2) may be allocated 7, and ctxInc for the fourth permission element or permission element number 3 (permission element 3) can be allocated 8. Additionally, for example, ctxInc for the first permission element or permission element zero (permission element 0) of the permission elements from the MTS-index permission element string, 0 can be allocated, ctxInc for the second permission element or permission element number 1 (permission element 1) may be allocated 1, ctxInc for the third permission element or permission element number 2 (permission element 2) may be allocated 2, and ctxInc for the fourth permission element or permission element number 3 (permission element 3) may be allocated 3. Thus, the number of context index increment values that can and be used to context-encode the first permission element of the permission elements in the permission element string, may be equal to one.

[205] Дополнительно, например, некоторые элементы разрешения из строки элементов разрешения MTS-индекса могут извлекаться на основе контекстного кодирования, и оставшиеся могут извлекаться на основе обходного кодирования. Например, ctxInc для первого элемента разрешения или элемента разрешения номер 0 (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может выделяться 0, и оставшиеся элементы разрешения могут извлекаться на основе обходного кодирования. Дополнительно, например, ctxInc для первого элемента разрешения или элемента разрешения номер 0 (элемента 0 разрешения) из элементов разрешения из строки элементов разрешения MTS-индекса может выделяться 0, ctxInc для второго элемента разрешения или элемента разрешения номер 1 (элемента 1 разрешения) может выделяться 1, и оставшиеся элементы разрешения могут извлекаться на основе обходного кодирования. Таким образом, число значений приращения индекса контекста, которые могут использоваться для контекстного кодирования первого элемента разрешения из элементов разрешения из строки элементов разрешения, может быть равно единице.[205] Additionally, for example, some permission elements from the MTS index permission element row may be extracted based on the context encoding, and the remaining ones may be extracted based on the bypass encoding. For example, ctxInc for the first permission element or permission element number 0 (permission element 0) of the permission elements from the MTS-index permission element row can be allocated 0, and the remaining permission elements can be extracted based on bypass encoding. Additionally, for example, ctxInc for the first permission element or permission element number 0 (permission element 0) of the permission elements from the MTS index permission element row can be allocated 0, ctxInc for the second permission element or permission element number 1 (permission element 1) can be allocated 1 and the remaining permission elements may be extracted based on the bypass coding. Thus, the number of context index increment values that can be used to context-encode the first permission element of the permission elements of the permission element string may be one.

[206] Дополнительно, все элементы разрешения из строки элементов разрешения MTS-индекса могут извлекаться на основе обходного кодирования. Здесь, обходное кодирование может представлять выполнение контекстного кодирования на основе равномерного распределения вероятностей, и поскольку процедура обновления контекстного кодирования опускается, эффективность кодирования может повышаться.[206] Additionally, all permission elements from the permission element row of the MTS index may be extracted based on the bypass encoding. Here, bypass encoding may represent performing context encoding based on a uniform probability distribution, and since the context encoding update procedure is omitted, encoding efficiency may be improved.

[207] Остаточная информация может представлять информацию, которая используется для того, чтобы извлекать остаточные выборки, и может включать в себя информацию относительно остаточных выборок, связанную с обратным преобразованием информацию и/или связанную с деквантованием информацию. Например, остаточная информация может включать в себя информацию относительно квантованных коэффициентов преобразования.[207] The residual information may represent information that is used to extract residual samples and may include information on residual samples, inverse transform related information, and/or dequantization related information. For example, the residual information may include information regarding quantized transform coefficients.

[208] Оборудование декодирования извлекает коэффициенты преобразования для текущего блока на основе остаточной информации (S1110). Например, оборудование декодирования может извлекать квантованные коэффициенты преобразования для текущего блока на основе информации относительно квантованных коэффициентов преобразования, включенную в остаточную информацию. Например, оборудование декодирования может извлекать коэффициенты преобразования для текущего блока посредством выполнения деквантования относительно квантованных коэффициентов преобразования.[208] The decoding equipment extracts transform coefficients for the current block based on the residual information (S1110). For example, the decoding equipment may derive quantized transform coefficients for the current block based on information regarding quantized transform coefficients included in the residual information. For example, the decoding equipment may derive transform coefficients for the current block by performing dequantization with respect to the quantized transform coefficients.

[209] Оборудование декодирования формирует остаточные выборки текущего блока на основе MTS-индекса и коэффициентов преобразования (S1120). Например, остаточные выборки могут формироваться на основе набора ядер преобразования, представляемого посредством коэффициентов преобразования и MTS-индекса. Таким образом, оборудование декодирования может формировать остаточные выборки из коэффициентов преобразования через обратное преобразование с использованием набора ядер преобразования, представляемого посредством MTS-индекса. Здесь, обратное преобразование с использованием набора ядер преобразования, представляемого посредством MTS-индекса, может включаться в первичное обратное преобразование. Дополнительно, оборудование декодирования может использовать не только первичное обратное преобразование, но также и вторичное обратное преобразование при формировании остаточных выборок из коэффициентов преобразования. В этом случае, оборудование декодирования может извлекать модифицированные коэффициенты преобразования посредством выполнения вторичного обратного преобразования относительно коэффициентов преобразования и может формировать остаточные выборки посредством выполнения первичного обратного преобразования относительно модифицированных коэффициентов преобразования.[209] The decoding equipment generates residual samples of the current block based on the MTS index and transform coefficients (S1120). For example, the residual samples may be generated based on a set of transform kernels represented by transform coefficients and an MTS index. Thus, the decoding equipment can generate residual samples from the transform coefficients via an inverse transform using the set of transform kernels represented by the MTS index. Here, the inverse transform using the set of transform kernels represented by the MTS index may be included in the primary inverse transform. Additionally, the decoding equipment may use not only a primary inverse transform but also a secondary inverse transform when generating residual samples from the transform coefficients. In this case, the decoding equipment may extract the modified transform coefficients by performing a secondary inverse transform on the transform coefficients, and may generate residual samples by performing a primary inverse transform on the modified transform coefficients.

[210] Хотя не проиллюстрировано на фиг. 11, например, оборудование декодирования может получать связанную с прогнозированием информацию, включающую в себя режим/тип прогнозирования, из потока битов и может формировать прогнозные выборки для текущего блока посредством выполнения внутреннего прогнозирования или взаимного прогнозирования на основе информации режима/типа прогнозирования. Дополнительно, например, оборудование декодирования может формировать восстановленные выборки на основе прогнозных выборок и остаточных выборок. Дополнительно, например, восстановленный блок или восстановленный кадр может извлекаться на основе восстановленных выборок.[210] Although not illustrated in FIG. 11, for example, the decoding equipment may obtain prediction-related information including prediction mode/type from the bit stream and may generate prediction samples for the current block by performing intra prediction or inter prediction based on the prediction mode/type information. Additionally, for example, the decoding hardware may generate reconstructed samples based on the predictive samples and the residual samples. Additionally, for example, a reconstructed block or a reconstructed frame may be derived based on the reconstructed samples.

[211] Например, оборудование декодирования может получать информацию изображений, включающую в себя все или части вышеописанных фрагментов информации (или синтаксических элементов), посредством декодирования потока битов или кодированной информации. Дополнительно, поток битов или кодированная информация может сохраняться на компьютерно-читаемом носителе хранения данных и может инструктировать осуществление вышеописанного способа декодирования.[211] For example, the decoding equipment can obtain image information including all or parts of the above-described pieces of information (or syntax elements) by decoding the bit stream or encoded information. Additionally, the bit stream or encoded information may be stored in a computer-readable storage medium and may cause the decoding method described above to be performed.

[212] Хотя способы описываются на основе блок-схемы последовательности операций способа, на которой этапы или блоки перечисляются в последовательности в вышеописанных вариантах осуществления, этапы настоящего документа не ограничены определенным порядком, и определенный этап может выполняться на другом этапе или в другом порядке либо одновременно относительно того, что описано выше. Дополнительно, специалисты в данной области техники должны понимать, что этапы блок-схем последовательности операций способа не являются единственно возможными, и другой этап может включаться, либо один или более этапов на блок-схеме последовательности операций способа могут удаляться без влияния на объем настоящего раскрытия.[212] Although the methods are described based on a flowchart in which the steps or blocks are listed in sequence in the above-described embodiments, the steps of this document are not limited to a certain order, and a certain step may be performed in a different step or in a different order or simultaneously. regarding what is described above. Additionally, those skilled in the art will appreciate that the steps in the flowchart are not the only ones possible, and another step may be included, or one or more steps in the flowchart may be removed without affecting the scope of the present disclosure.

[213] Вышеуказанный способ согласно настоящему раскрытию может осуществляться в форме программного обеспечения, и оборудования кодирование и/или оборудование декодирования согласно настоящему раскрытию могут включаться в устройство для выполнения обработки изображений, например, в телевизор, компьютер, смартфон, абонентскую приставку, устройство отображения и т.п.[213] The above method according to the present disclosure may be implemented in the form of software, and the encoding equipment and/or decoding equipment according to the present disclosure may be included in an apparatus for performing image processing, such as a television, computer, smartphone, set-top box, display device, and etc.

[214] Когда варианты осуществления настоящего раскрытия реализуются посредством программного обеспечения, вышеуказанный способ может реализовываться посредством модуля (процесса или функции), который выполняет вышеуказанную функцию. Модуль может сохраняться в запоминающем устройстве и выполняться посредством процессора. Запоминающее устройство может устанавливаться внутри или снаружи процессора и может соединяться с процессором через различные известные средства. Процессор может включать в себя специализированную интегральную схему (ASIC), другие наборы микросхем, логическую схему и/или устройство обработки данных. Запоминающее устройство может включать в себя постоянное запоминающее устройство (ROM), оперативное запоминающее устройство (RAM), флэш-память, карту памяти, носитель хранения данных и/или другое устройство хранения данных. Другими словами, варианты осуществления согласно настоящему раскрытию могут реализовываться и выполняться на процессоре, микропроцессоре, контроллере или микросхеме. Например, функциональные модули, проиллюстрированные на соответствующих чертежах, могут реализовываться и выполняться на компьютере, процессоре, микропроцессоре, контроллере или микросхеме. В этом случае, информация относительно реализации (например, информация относительно инструкций) или алгоритмы могут сохраняться на цифровом носителе хранения данных.[214] When embodiments of the present disclosure are implemented by software, the above method may be implemented by a module (process or function) that performs the above function. The module may be stored in a storage device and executed by a processor. The storage device may be installed inside or outside the processor and may be connected to the processor through various known means. The processor may include an application specific integrated circuit (ASIC), other chipsets, logic, and/or a data processing device. The storage device may include Read Only Memory (ROM), Random Access Memory (RAM), flash memory, a memory card, a storage medium, and/or other storage device. In other words, embodiments according to the present disclosure may be implemented and executed on a processor, microprocessor, controller, or chip. For example, the functional modules illustrated in the respective drawings may be implemented and executed on a computer, processor, microprocessor, controller, or chip. In this case, implementation information (eg, information regarding instructions) or algorithms may be stored on a digital storage medium.

[215] Помимо этого, оборудование декодирования и оборудование кодирования, к которым применяется вариант(ы) осуществления настоящего документа, могут включаться в широковещательное мультимедийное приемо-передающее устройство, терминал мобильной связи, видеоустройство системы домашнего кинотеатра, видеоустройство системы цифрового кинотеатра, камеру наблюдения, устройство проведения видеочатов и устройство связи в реальном времени, к примеру, видеосвязи, мобильное устройство потоковой передачи, носитель хранения данных, записывающую видеокамеру, поставщик услуг на основе технологии "видео по запросу (VoD)", видеоустройство поверх сетей (OTT), поставщик услуг потоковой передачи по Интернету, трехмерное видеоустройство, устройство в стиле виртуальной реальности (VR), устройство в стиле дополненной реальности (AR), телефонное видеоустройство, терминал в транспортном средстве (например, терминал в транспортном средстве (в том числе в автономном транспортном средстве), терминал в воздушном судне или терминал в морском судне) и медицинское видеоустройство; и могут использоваться для того, чтобы обрабатывать сигнал изображения или данные. Например, OTT-видеоустройство может включать в себя игровую консоль, Blu-Ray-проигрыватель, телевизор с доступом в Интернет, систему домашнего кинотеатра, смартфон, планшетный PC и цифровое записывающее видеоустройство (DVR).[215] In addition, the decoding equipment and encoding equipment to which the embodiment(s) of this document applies may be included in a broadcast multimedia transceiver, a mobile communication terminal, a home theater system video device, a digital cinema system video device, a surveillance camera, video chatting device and real-time communication device, such as video communication, mobile streaming device, storage media, video recording camera, video-on-demand (VoD) service provider, video device over networks (OTT), service provider Internet streaming device, 3D video device, virtual reality (VR) style device, augmented reality (AR) style device, telephone video device, in-vehicle terminal (e.g., in-vehicle terminal (including autonomous vehicle), air terminal udne or terminal in a sea vessel) and a medical video device; and may be used to process the image signal or data. For example, an OTT video device may include a game console, a Blu-ray player, an Internet TV, a home theater system, a smartphone, a tablet PC, and a digital video recorder (DVR).

[216] Помимо этого, способ обработки, к которому применяется вариант(ы) осуществления настоящего документа, может формироваться в форме программы, выполняемой посредством компьютера, и может сохраняться на компьютерно-читаемом носителе записи. Мультимедийные данные, имеющие структуру данных согласно варианту(ам) осуществления настоящего документа, также могут сохраняться на компьютерно-читаемом носителе записи. Компьютерно-читаемый носитель записи включает в себя все виды устройств хранения данных и устройств распределенного хранения данных, на которых сохраняются компьютерно-читаемые данные. Компьютерно-читаемый носитель записи может включать в себя, например, Blu-Ray-диск (BD), универсальную последовательную шину (USB), ROM, PROM, EPROM, EEPROM, RAM, CD-ROM, магнитную ленту, гибкий диск и оптическое устройство хранения данных. Компьютерно-читаемый носитель записи также включает в себя среды, осуществленные в форме несущей волны (например, передачи по Интернету). Помимо этого, поток битов, сформированный посредством способа кодирования, может сохраняться на компьютерно-читаемом носителе записи или передаваться через сеть проводной или беспроводной связи.[216] In addition, the processing method to which the embodiment(s) of the present document is applied may be formed in the form of a program executable by a computer and may be stored in a computer-readable recording medium. The multimedia data having the data structure according to the embodiment(s) of the present document may also be stored in a computer-readable recording medium. The computer-readable recording medium includes all kinds of storage devices and distributed storage devices that store computer-readable data. The computer-readable recording medium may include, for example, a Blu-ray Disc (BD), Universal Serial Bus (USB), ROM, PROM, EPROM, EEPROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical device. data storage. The computer-readable recording medium also includes media implemented in the form of a carrier wave (eg, transmission over the Internet). In addition, the bit stream generated by the encoding method may be stored in a computer-readable recording medium or transmitted via a wired or wireless communication network.

[217] Помимо этого, вариант(ы) осуществления настоящего документа может осуществляться в качестве компьютерного программного продукта на основе программного кода, и программный код может выполняться на компьютере согласно варианту(ам) осуществления настоящего документа. Программный код может сохраняться на компьютерно-читаемом носителе.[217] In addition, the embodiment(s) of the present document may be implemented as a computer program product based on the program code, and the program code may be executed on the computer according to the embodiment(s) of the present document. The program code may be stored on a computer readable medium.

[218] Фиг. 13 иллюстрирует пример системы потоковой передачи контента, к которой являются применимыми варианты осуществления, раскрытые в настоящем документе.[218] FIG. 13 illustrates an example of a content streaming system to which the embodiments disclosed herein are applicable.

[219] Ссылаясь на фиг. 13, система потоковой передачи контента, к которой являются применимыми варианты осуществления, раскрытые в настоящем документе, в общем, может включать в себя сервер кодирования, потоковый сервер, веб-сервер, хранилище мультимедиа, пользовательское устройство и устройство ввода мультимедиа.[219] Referring to FIG. 13, a content streaming system to which the embodiments disclosed herein are applicable may generally include an encoding server, a streaming server, a web server, a media storage, a user device, and a media input device.

[220] Сервер кодирования функционирует для того, чтобы сжимать в цифровые данные контент, вводимый из устройств ввода мультимедиа, таких как смартфон, камера, записывающая видеокамера и т.п., чтобы формировать поток битов и передавать его на потоковый сервер. В качестве другого примера, в случае если устройство ввода мультимедиа, такое как смартфон, камера, записывающая видеокамера и т.п., непосредственно формирует поток битов, сервер кодирования может опускаться.[220] The encoding server functions to compress content input from media input devices such as a smartphone, camera, camcorder, and the like into digital data to generate a bitstream and transmit it to the streaming server. As another example, in the case where a media input device such as a smartphone, a camera, a camcorder or the like directly generates a bitstream, the encoding server may be omitted.

[221] Поток битов может формироваться посредством способа кодирования или способа формирования потоков битов, к которому применяются варианты осуществления настоящего документа. Кроме того, потоковый сервер может временно сохранять поток битов в процессе передачи или приема потока битов.[221] The bit stream may be generated by an encoding method or a bit stream generation method to which the embodiments of the present document apply. In addition, the streaming server may temporarily store the bitstream in the process of transmitting or receiving the bitstream.

[222] Потоковый сервер передает мультимедийные данные в абонентское устройство на основе запроса пользователя через веб-сервер, который функционирует в качестве инструментария, который информирует пользователя в отношении того, какая услуга предусмотрена. Когда пользователь запрашивает услугу, которую пользователь хочет, веб-сервер передает запрос на потоковый сервер, и потоковый сервер передает мультимедийные данные пользователю. В этом отношении, система потоковой передачи контента может включать в себя отдельный сервер управления, и в этом случае, сервер управления функционирует для того, чтобы управлять командами/ответами между соответствующим оборудованием в системе потоковой передачи контента.[222] The streaming server transmits media data to the user equipment based on a user request via a web server that functions as a tool that informs the user as to which service is provided. When the user requests a service that the user wants, the web server passes the request to the streaming server, and the streaming server transmits the media data to the user. In this regard, the content streaming system may include a separate control server, in which case, the control server functions to manage commands/responses between respective equipments in the content streaming system.

[223] Потоковый сервер может принимать контент из хранилища мультимедиа и/или сервера кодирования. Например, в случае если контент принимается из сервера кодирования, контент может приниматься в реальном времени. В этом случае, потоковый сервер может сохранять поток битов в течение предварительно определенного периода времени, чтобы плавно предоставлять услугу потоковой передачи.[223] The streaming server may receive content from a media store and/or an encoding server. For example, in case the content is received from the encoding server, the content may be received in real time. In this case, the streaming server may keep the bit stream for a predetermined period of time to smoothly provide the streaming service.

[224] Например, абонентское устройство может включать в себя мобильный телефон, смартфон, переносной компьютер, цифровой широковещательный терминал, персональное цифровое устройство (PDA), портативный мультимедийный проигрыватель (PMP), навигационное устройство, грифельный планшетный PC, планшетный PC, ультрабук, носимое устройство (например, терминал в виде часов (интеллектуальные часы), терминал в виде очков (интеллектуальные очки), наголовный дисплей (HMD)), цифровой телевизор, настольный компьютер, систему цифровых информационных табло и т.п.[224] For example, the subscriber equipment may include a mobile phone, a smartphone, a laptop computer, a digital broadcast terminal, a personal digital assistant (PDA), a portable media player (PMP), a navigation device, a stylus tablet PC, a tablet PC, an ultrabook, a wearable device (e.g., watch terminal (smart watch), glasses terminal (smart glasses), head-mounted display (HMD)), digital TV, desktop computer, digital signage system, etc.

[225] Каждый из серверов в системе потоковой передачи контента может работать в качестве распределенного сервера, и в этом случае, данные, принимаемые посредством каждого сервера, могут обрабатываться распределенным способом.[225] Each of the servers in the content streaming system may operate as a distributed server, in which case, data received by each server may be processed in a distributed manner.

[226] Пункты формулы изобретения в настоящем описании могут комбинироваться различными способами. Например, технические признаки в пунктах формулы изобретения на способ настоящего описания могут комбинироваться с возможностью реализовываться или выполняться в оборудовании, и технические признаки в пунктах формулы изобретения на оборудование могут комбинироваться с возможностью реализовываться или выполняться в способе. Дополнительно, технические признаки в пункте(ах) формулы изобретения на способ и пункте(ах) формулы изобретения на оборудование могут комбинироваться с возможностью реализовываться или выполняться в оборудовании. Дополнительно, технические признаки в пункте(ах) формулы изобретения на способ и пункте(ах) формулы изобретения на оборудование могут комбинироваться с возможностью реализовываться или выполняться в способе.[226] the Claims in the present description can be combined in various ways. For example, the technical features in the method claims of the present disclosure can be combined with the ability to be implemented or performed in equipment, and the technical features in the equipment claims can be combined with the ability to be implemented or performed in the method. Additionally, the technical features in the method claim(s) and the equipment claim(s) can be combined with the ability to be implemented or performed in the equipment. Additionally, the technical features in the method claim(s) and the equipment claim(s) can be combined with the ability to be implemented or performed in the method.

Claims (39)

1. Способ декодирования изображений, осуществляемый посредством оборудования декодирования, при этом способ содержит этапы, на которых:1. An image decoding method carried out by means of decoding equipment, the method comprising the steps of: получают индекс множественного выбора преобразования (MTS) и остаточную информацию посредством синтаксического анализа потока битов;obtaining a multiple choice transform index (MTS) and residual information by parsing the bit stream; извлекают коэффициенты преобразования для текущего блока на основе остаточной информации; иextracting transform coefficients for the current block based on the residual information; And формируют остаточные выборки текущего блока на основе MTS-индекса и коэффициентов преобразования,generating residual samples of the current block based on the MTS index and transform coefficients, при этом MTS-индекс представляет набор ядер преобразования, который должен применяться к текущему блоку, из возможных вариантов наборов ядер преобразования,at the same time, the MTS index represents a set of transformation kernels that should be applied to the current block, from the possible variants of sets of transformation kernels, при этом элементы разрешения из строки элементов разрешения MTS-индекса извлекаются на основе контекстного кодирования, контекстное кодирование выполняется на основе значений приращения индекса контекста для элементов разрешения из строки элементов разрешения MTS-индекса,wherein the permission elements from the MTS index permission element string are extracted based on the context encoding, the context encoding is performed based on the context index increment values for the permission elements from the MTS index permission element string, при этом элементы разрешения из строки элементов разрешения MTS-индекса включают в себя первый, второй, третий и четвертый элементы разрешения, и wherein the permission elements from the permission element row of the MTS index include the first, second, third and fourth permission elements, and при этом значение приращения индекса контекста для первого элемента разрешения фиксируется равным 0, значение приращения индекса контекста для второго элемента разрешения фиксируется равным 1, значение приращения индекса контекста для третьего элемента разрешения фиксируется равным 2 и значение приращения индекса контекста для четвертого элемента разрешения фиксируется равным 3.wherein the context index increment value for the first permit element is fixed at 0, the context index increment value for the second permit element is fixed at 1, the context index increment value for the third permit element is fixed at 2, and the context index increment value for the fourth permit element is fixed at 3. 2. Способ декодирования изображений по п. 1, в котором набор ядер преобразования содержит ядро преобразования, которое должно применяться к текущему блоку в горизонтальном направлении, и ядро преобразования, которое должно применяться к текущему блоку в вертикальном направлении.2. The image decoding method according to claim 1, wherein the set of transformation kernels comprises a transformation kernel to be applied to the current block in the horizontal direction and a transformation kernel to be applied to the current block in the vertical direction. 3. Способ декодирования изображений по п. 1, в котором каждое из ядра преобразования, которое должно применяться в горизонтальном направлении, и ядра преобразования, которое должно применяться в вертикальном направлении, извлекается в качестве одного из возможных вариантов, включающих в себя DCT2, DST7 и DCT8, на основе MTS-индекса.3. The image decoding method of claim 1, wherein each of a transformation kernel to be applied in the horizontal direction and a transformation kernel to be applied in the vertical direction is extracted as one of the options including DCT2, DST7, and DCT8, based on the MTS index. 4. Способ декодирования изображений по п. 1, в котором MTS-индекс извлекается в качестве одного из возможных вариантов, включающих в себя 0-4, и4. The image decoding method according to claim 1, wherein the MTS index is extracted as one of the options including 0-4, and MTS-индекс извлекается на основе элементов разрешения из строки элементов разрешения MTS-индекса.The MTS index is retrieved based on the permission entries from the MTS index's permission entries row. 5. Способ кодирования изображений, осуществляемый посредством оборудования кодирования, при этом способ содержит этапы, на которых:5. An image encoding method carried out by encoding equipment, the method comprising the steps of: извлекают остаточные выборки для текущего блока;extracting residual samples for the current block; извлекают коэффициенты преобразования для текущего блока на основе остаточных выборок;extracting transform coefficients for the current block based on the residual samples; формируют индекс множественного выбора преобразования (MTS) и остаточную информацию на основе коэффициентов преобразования; иgenerating a multiple choice transform index (MTS) and residual information based on the transform coefficients; And кодируют информацию изображений, включающую в себя MTS-индекс и остаточную информацию,encoding image information including MTS index and residual information, при этом MTS-индекс представляет набор ядер преобразования, который должен применяться к текущему блоку, из возможных вариантов наборов ядер преобразования,at the same time, the MTS index represents a set of transformation kernels that should be applied to the current block, from the possible variants of sets of transformation kernels, при этом элементы разрешения из строки элементов разрешения MTS-индекса представляются на основе контекстного кодирования, контекстное кодирование выполняется на основе значений приращения индекса контекста для элементов разрешения из строки элементов разрешения MTS-индекса, wherein the permission elements from the MTS index permission element string are represented based on the context encoding, the context encoding is performed based on the context index increment values for the permission elements from the MTS index permission element string, при этом элементы разрешения из строки элементов разрешения MTS-индекса включают в себя первый, второй, третий и четвертый элементы разрешения, и wherein the permission elements from the permission element row of the MTS-index include the first, second, third and fourth permission elements, and при этом значение приращения индекса контекста для первого элемента разрешения фиксируется равным 0, значение приращения индекса контекста для второго элемента разрешения фиксируется равным 1, значение приращения индекса контекста для третьего элемента разрешения фиксируется равным 2 и значение приращения индекса контекста для четвертого элемента разрешения фиксируется равным 3.wherein the context index increment value for the first permit element is fixed at 0, the context index increment value for the second permit element is fixed at 1, the context index increment value for the third permit element is fixed at 2, and the context index increment value for the fourth permit element is fixed at 3. 6. Способ кодирования изображений по п. 5, в котором набор ядер преобразования содержит ядро преобразования, которое должно применяться к текущему блоку в горизонтальном направлении, и ядро преобразования, которое должно применяться к текущему блоку в вертикальном направлении.6. The image encoding method according to claim 5, wherein the set of transformation kernels comprises a transformation kernel to be applied to the current block in the horizontal direction and a transformation kernel to be applied to the current block in the vertical direction. 7. Способ кодирования изображений по п. 5, в котором каждое из ядра преобразования, которое должно применяться в горизонтальном направлении, и ядра преобразования, которое должно применяться в вертикальном направлении, представляется как один из возможных вариантов, включающих в себя DCT2, DST7 и DCT8, на основе MTS-индекса.7. The image encoding method according to claim 5, wherein each of a transformation kernel to be applied in the horizontal direction and a transformation kernel to be applied in the vertical direction is represented as one of the options including DCT2, DST7, and DCT8 , based on the MTS index. 8. Энергонезависимый компьютерно-читаемый цифровой носитель хранения данных, сохраняющий поток битов, сформированный посредством способа кодирования изображений, при этом способ содержит:8. A non-volatile computer-readable digital storage medium that stores a bit stream generated by an image encoding method, the method comprising: извлечение остаточных выборок для текущего блока;extracting residual samples for the current block; извлечение коэффициентов преобразования для текущего блока на основе остаточных выборок;extracting transform coefficients for the current block based on the residual samples; формирование индекса множественного выбора преобразования (MTS) и остаточной информации на основе коэффициентов преобразования; иgenerating a multiple choice transform index (MTS) and residual information based on the transform coefficients; And кодирование информации изображений, чтобы формировать поток битов, при этом информация изображений включает в себя MTS-индекс и остаточную информацию,encoding image information to form a bit stream, wherein the image information includes an MTS index and residual information, при этом MTS-индекс представляет набор ядер преобразования, который должен применяться к текущему блоку, из возможных вариантов наборов ядер преобразования,at the same time, the MTS-index represents a set of transformation kernels that should be applied to the current block, from the possible options for sets of transformation kernels, при этом элементы разрешения из строки элементов разрешения MTS-индекса представляются на основе контекстного кодирования, контекстное кодирование выполняется на основе значений приращения индекса контекста для элементов разрешения из строки элементов разрешения MTS-индекса, wherein the permission elements from the MTS index permission element string are represented based on the context encoding, the context encoding is performed based on the context index increment values for the permission elements from the MTS index permission element string, при этом элементы разрешения из строки элементов разрешения MTS-индекса включают в себя первый, второй, третий и четвертый элементы разрешения, и wherein the permission elements from the permission element row of the MTS-index include the first, second, third and fourth permission elements, and при этом значение приращения индекса контекста для первого элемента разрешения фиксируется равным 0, значение приращения индекса контекста для второго элемента разрешения фиксируется равным 1, значение приращения индекса контекста для третьего элемента разрешения фиксируется равным 2 и значение приращения индекса контекста для четвертого элемента разрешения фиксируется равным 3.the context index increment value for the first permit element is fixed at 0, the context index increment value for the second permit element is fixed at 1, the context index increment value for the third permit element is fixed at 2, and the context index increment value for the fourth permit element is fixed at 3. 9. Способ передачи данных для изображения в оборудование декодирования, при этом способ содержит этапы, на которых:9. A method for transmitting data for an image to decoding equipment, the method comprising the steps of: получают поток битов для изображения, при этом поток битов формируется на основе извлечения остаточных выборок для текущего блока, извлечения коэффициентов преобразования для текущего блока на основе остаточных выборок, формирования индекса множественного выбора преобразования (MTS) и остаточной информации на основе коэффициентов преобразования и кодирования информации изображений, включающей в себя MTS-индекс и остаточную информацию; иa bitstream for an image is obtained, wherein the bitstream is generated based on extracting the residual samples for the current block, extracting transform coefficients for the current block based on the residual samples, generating a multiple choice transform index (MTS) and residual information based on the transform coefficients, and encoding image information , which includes the MTS index and residual information; And передают данные, содержащие поток битов в оборудование декодирования для осуществления декодирования и формирования восстановленного изображения на основе кодированной информации изображений,transmitting the data containing the bit stream to the decoding equipment to perform decoding and generate a reconstructed image based on the encoded image information, при этом MTS-индекс представляет набор ядер преобразования, который должен применяться к текущему блоку, из возможных вариантов наборов ядер преобразования,at the same time, the MTS-index represents a set of transformation kernels that should be applied to the current block, from the possible options for sets of transformation kernels, при этом элементы разрешения из строки элементов разрешения MTS-индекса представляются на основе контекстного кодирования, контекстное кодирование выполняется на основе значений приращения индекса контекста для элементов разрешения из строки элементов разрешения MTS-индекса, wherein the permission elements from the MTS index permission element string are represented based on the context encoding, the context encoding is performed based on the context index increment values for the permission elements from the MTS index permission element string, при этом элементы разрешения из строки элементов разрешения MTS-индекса включают в себя первый, второй, третий и четвертый элементы разрешения, и wherein the permission elements from the permission element row of the MTS-index include the first, second, third and fourth permission elements, and при этом значение приращения индекса контекста для первого элемента разрешения фиксируется равным 0, значение приращения индекса контекста для второго элемента разрешения фиксируется равным 1, значение приращения индекса контекста для третьего элемента разрешения фиксируется равным 2 и значение приращения индекса контекста для четвертого элемента разрешения фиксируется равным 3.the context index increment value for the first permit element is fixed at 0, the context index increment value for the second permit element is fixed at 1, the context index increment value for the third permit element is fixed at 2, and the context index increment value for the fourth permit element is fixed at 3.
RU2022100983A 2019-06-19 2020-06-11 Information coding regarding a set of transformation kernels RU2792223C1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US62/863,812 2019-06-19

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2023105483A Division RU2815810C2 (en) 2019-06-19 2020-06-11 Encoding information on set of transformation kernels

Publications (1)

Publication Number Publication Date
RU2792223C1 true RU2792223C1 (en) 2023-03-21

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2546590C2 (en) * 2011-01-24 2015-04-10 Квэлкомм Инкорпорейтед Alarm of quantisation parameter changes for coded units under highly efficient video coding (hevc)
WO2017191782A1 (en) * 2016-05-04 2017-11-09 Sharp Kabushiki Kaisha Systems and methods for coding transform data
US20170324643A1 (en) * 2016-05-03 2017-11-09 Qualcomm Incorporated Binarizing secondary transform index
KR20180075464A (en) * 2010-09-30 2018-07-04 한국전자통신연구원 Methods and apparatus for video transform encoding/decoding
WO2019009618A1 (en) * 2017-07-04 2019-01-10 삼성전자 주식회사 Image encoding method and apparatus, and image decoding method and apparatus

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180075464A (en) * 2010-09-30 2018-07-04 한국전자통신연구원 Methods and apparatus for video transform encoding/decoding
RU2546590C2 (en) * 2011-01-24 2015-04-10 Квэлкомм Инкорпорейтед Alarm of quantisation parameter changes for coded units under highly efficient video coding (hevc)
US20170324643A1 (en) * 2016-05-03 2017-11-09 Qualcomm Incorporated Binarizing secondary transform index
WO2017191782A1 (en) * 2016-05-04 2017-11-09 Sharp Kabushiki Kaisha Systems and methods for coding transform data
WO2019009618A1 (en) * 2017-07-04 2019-01-10 삼성전자 주식회사 Image encoding method and apparatus, and image decoding method and apparatus

Similar Documents

Publication Publication Date Title
US11831912B2 (en) Transform for matrix-based intra-prediction in image coding
US11831918B2 (en) Image coding using transform index
US20210344907A1 (en) Image coding method and device for carrying out mrl-based intra prediction
US11895300B2 (en) Signaling of information indicating transform kernel set in image coding
KR20210133299A (en) Video coding method and apparatus based on BDPCM
US11936911B2 (en) Image coding method based on secondary transform, and device therefor
US11516510B2 (en) Transform in intra prediction-based image coding
AU2020297214B2 (en) Coding of information about transform kernel set
US20230209061A1 (en) Context coding for information on transform kernel set in image coding system
US20220182677A1 (en) Image coding method based on secondary transform, and device therefor
EP4277278A1 (en) Transform-based image coding
RU2792223C1 (en) Information coding regarding a set of transformation kernels
RU2781079C1 (en) Transformation when encoding images based on internal prediction
RU2795696C2 (en) Image encoding transformation based on internal prediction
RU2815810C2 (en) Encoding information on set of transformation kernels
RU2781175C1 (en) Conversion for matrix internal prediction when encoding images
RU2795799C2 (en) Transformation for matrix intra prediction in image coding
RU2783336C1 (en) Bdpcm-based method for encoding images and apparatus therefor
RU2806813C2 (en) Method and device for image coding based on bdpcm
RU2808004C2 (en) Method and device for internal prediction based on internal subsegments in image coding system
RU2793777C1 (en) Method and device for internal prediction based on internal subsegments in image coding system
RU2780814C1 (en) Method for encoding images based on conversion and a device for this
CN113273210B (en) Method and apparatus for compiling information about consolidated data
US20220417506A1 (en) Deblocking filtering method and apparatus in video/image coding system
US20210321135A1 (en) Image coding method and apparatus using transform skip flag