RU2775829C1 - Method and apparatus for encoding/decoding an image and record medium storing a bitstream - Google Patents

Method and apparatus for encoding/decoding an image and record medium storing a bitstream Download PDF

Info

Publication number
RU2775829C1
RU2775829C1 RU2021105676A RU2021105676A RU2775829C1 RU 2775829 C1 RU2775829 C1 RU 2775829C1 RU 2021105676 A RU2021105676 A RU 2021105676A RU 2021105676 A RU2021105676 A RU 2021105676A RU 2775829 C1 RU2775829 C1 RU 2775829C1
Authority
RU
Russia
Prior art keywords
motion information
block
list
prediction
current block
Prior art date
Application number
RU2021105676A
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 RU2775829C1 publication Critical patent/RU2775829C1/en

Links

Images

Abstract

FIELD: encoding.
SUBSTANCE: group of inventions relates to the technology for encoding/decoding images utilising a list of motion information storing previously retrieved motion information. Proposed is a method for generating a list of motion information candidates, generated when decoding an image. The method includes a stage of generating a list of candidates, including motion information generated using the information of a neighbouring block adjacent to the current block. The motion information of the current block is then output using the list of candidates. A prediction block of the current block is generated using the output second motion information of the current block. The list of motion information is also updated in order to store the output motion information of the current block. The list of candidates therein includes at least one of the motion information included in the list of motion information used for the block decoded prior to decoding for the current block.
EFFECT: increase in the efficiency of image compression utilising a list of motion information.
20 cl, 27 dwg

Description

Область техникиTechnical field

[0001] Настоящее изобретение относится к способу и устройству для кодирования/декодирования изображения и носителю записи для хранения битового потока. Более конкретно, настоящее изобретение относится к способу и устройству для кодирования/декодирования изображения, которые используют список информации движения, хранящий предварительно восстановленную информацию движения.[0001] The present invention relates to a method and apparatus for encoding/decoding an image and a recording medium for storing a bit stream. More specifically, the present invention relates to a method and apparatus for encoding/decoding an image that uses a motion information list storing previously recovered motion information.

Предшествующий уровень техникиPrior Art

[0002] В последнее время, потребности в изображениях высокого разрешения и высокого качества, таких как изображения высокой четкости (HD) и изображения ультравысокой четкости (UHD), возросли в различных областях применения. По мере повышения разрешения и качества данных изображения, объемы данных возрастают по сравнению с данными обычного изображения. Поэтому при передаче данных изображения с использованием носителя, такого как традиционный проводной/беспроводной широкополосный канал, или при хранении с использованием известного носителя хранения, затраты на передачу и хранение увеличиваются. Чтобы решить эти проблемы, вызванные повышением разрешения и качества данных изображения, требуется высокоэффективный метод кодирования/декодирования изображения для изображения, имеющего высокое разрешение и качество. [0002] Recently, the demand for high resolution and high quality images such as high definition (HD) images and ultra high definition (UHD) images has increased in various applications. As the resolution and quality of image data increases, the amount of data increases compared to conventional image data. Therefore, when image data is transmitted using a medium such as a conventional wired/wireless broadband channel or stored using a known storage medium, the transmission and storage costs increase. In order to solve these problems caused by increasing the resolution and quality of image data, a highly efficient image encoding/decoding method for an image having high resolution and quality is required.

[0003] В качестве метода сжатия изображения, существуют различные методы, такие как метод интер-предсказания для предсказания пиксельных значений, включенных в текущую картинку, из картинки перед или после текущей картинки; метод интра-предсказания для предсказания пиксельных значений, включенных в текущую картинку, с использованием пиксельной информации в текущей картинке; метод преобразования и квантования для сжатия энергии остаточного сигнала и метод энтропийного кодирования для выделения короткого кода значению с высокой частотой появления и длинного кода значению с низкой частотой появления. Такие технологии сжатия изображения могут быть использованы, чтобы эффективно сжимать и передавать или сохранять данные изображения.[0003] As an image compression method, there are various methods such as an inter-prediction method for predicting pixel values included in the current picture from a picture before or after the current picture; an intra prediction method for predicting pixel values included in the current picture using the pixel information in the current picture; a transformation and quantization method for compressing the energy of the residual signal; and an entropy encoding method for extracting a short code for a value with a high occurrence frequency and a long code for a value with a low occurrence frequency. Such image compression techniques can be used to efficiently compress and transmit or store image data.

РаскрытиеDisclosure

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

[0004] Задачей настоящего изобретения является обеспечить способ и устройство для кодирования и декодирования изображения и носитель записи, хранящий битовый поток, которые повышают эффективность сжатия с использованием списка информации движения, хранящего предварительно восстановленную информацию движения.[0004] It is an object of the present invention to provide a method and apparatus for encoding and decoding an image and a recording medium storing a bitstream that improve compression efficiency using a motion information list storing previously recovered motion information.

ТЕХНИЧЕСКОЕ РЕШЕНИЕTECHNICAL SOLUTION

[0005] Способ декодирования изображения в соответствии с вариантом осуществления настоящего изобретения, способ может содержать генерирование списка кандидатов, включающего в себя информацию движения, выведенную из пространственного соседнего блока и временного соседнего блока, смежных с текущим блоком, выведение информации движения текущего блока с использованием списка кандидатов, генерирование блока предсказания текущего блока с использованием выведенной информации движения, обновление выведенной информации движения в списке информации движения, причем генерирование списка кандидатов выполняется таким образом, чтобы включать по меньшей мере одну из информации движения, включенной в обновленный список информации движения в блоке, который декодируется перед текущим блоком.[0005] An image decoding method according to an embodiment of the present invention, the method may comprise generating a candidate list including motion information derived from a spatial neighbor block and a temporal neighbor block adjacent to the current block, deriving the motion information of the current block using the list candidates, generating a prediction block of the current block using the derived motion information, updating the derived motion information in the motion information list, wherein the generation of the candidate list is performed to include at least one of the motion information included in the updated motion information list in the block, which decoded before the current block.

[0006] В способе декодирования изображения в соответствии с настоящим изобретением, список информации движения инициализируется, когда декодирование предопределенной области завершено, так что область изменяется. [0006] In the image decoding method according to the present invention, the motion information list is initialized when decoding of a predetermined area is completed, so that the area is changed.

[0007] В способе декодирования изображения в соответствии с настоящим изобретением, предопределенная область представляет собой любое одно из блока, составленного из одной или более единиц кодирования (CU), или блока, состоящего из одной или более единиц дерева кодирования (CTU).[0007] In the image decoding method according to the present invention, the predefined area is any one of a block composed of one or more coding units (CUs) or a block composed of one or more coding tree units (CTUs).

[0008] В способе декодирования изображения в соответствии с настоящим изобретением, когда существует множество информаций движения в обновленном списке информации движения в блоке, декодированном перед текущим блоком, генерирование списка кандидатов выполняется таким образом, чтобы включать среднее по меньшей мере двух или более информаций движения из множества информаций движения в список кандидатов.[0008] In the image decoding method according to the present invention, when there is a plurality of motion information in the updated motion information list in a block decoded before the current block, generation of the candidate list is performed so as to include an average of at least two or more motion information from a set of traffic information in the list of candidates.

[0009] В способе декодирования изображения в соответствии с настоящим изобретением, когда информация движения обновленного списка информации движения в блоке, декодированном перед текущим блоком, является той же самой, что и информация движения, ранее включенная в список кандидатов, генерирование списка кандидатов выполняется таким образом, чтобы не включать информацию движения списка информации движения в список кандидатов.[0009] In the image decoding method according to the present invention, when the motion information of the updated motion information list in the block decoded before the current block is the same as the motion information previously included in the candidate list, generation of the candidate list is performed as follows to not include the movement information of the movement information list in the list of candidates.

[0010] В способе декодирования изображения в соответствии с настоящим изобретением, когда текущий блок представляет собой режим предсказания IBC и список кандидатов представляет собой совместно используемый список слияния, обновление выведенной информации движения в списке информации движения опускается.[0010] In the image decoding method according to the present invention, when the current block is the IBC prediction mode and the candidate list is the shared merge list, updating the outputted motion information in the motion information list is omitted.

[0011] В способе декодирования изображения в соответствии с настоящим изобретением, список информации движения имеет ограничение предопределенного размера. [0011] In the image decoding method according to the present invention, the motion information list has a predetermined size limitation.

[0012] В способе декодирования изображения в соответствии с настоящим изобретением, когда количество информации движения, сохраненной в списке информации движения, представляет собой предопределенное значение, обновление выведенной информации движения в списке информации движения включает в себя удаление информации движения, сохраненной первой в списке информации движения, и сохранение выведенной информации движения.[0012] In the image decoding method according to the present invention, when the amount of motion information stored in the motion information list is a predetermined value, updating the output motion information in the motion information list includes deleting the motion information stored first in the motion information list , and storing the derived motion information.

[0013] Способ кодирования изображение в соответствии с вариантом осуществления настоящего изобретения, причем способ может содержать генерирование списка кандидатов, включающего в себя информацию движения, выведенную из пространственного соседнего блока и временного соседнего блока, смежных с текущим блоком, выведение информации движения текущего блока с использованием списка кандидатов, генерирование блока предсказания текущего блока с использованием выведенной информации движения, обновление выведенной информации движения в списке информации движения, и причем генерирование списка кандидатов выполняется таким образом, чтобы включать по меньшей мере одну из информации движения, включенной в обновленный список информации движения в блоке, который закодирован перед текущим блоком.[0013] A method for encoding an image according to an embodiment of the present invention, the method may comprise generating a candidate list including motion information derived from a spatial neighbor block and a temporal neighbor block adjacent to the current block, deriving the motion information of the current block using a candidate list, generating a prediction block of the current block using the derived motion information, updating the derived motion information in the motion information list, and wherein generating the candidate list is performed to include at least one of the motion information included in the updated motion information list in the block The that is encoded before the current block.

[0014] В способе кодирования изображения в соответствии с настоящим изобретением, список информации движения инициализируется, когда кодирование предопределенной области завершено, так что область изменяется.[0014] In the image encoding method according to the present invention, the motion information list is initialized when encoding of a predetermined area is completed, so that the area is changed.

[0015] В способе кодирования изображения в соответствии с настоящим изобретением, предопределенная область представляет собой любое одно из блока, состоящего из одной или более единиц кодирования (CU), или блока, состоящего из одной или более единиц дерева кодирования (CTU).[0015] In the image encoding method according to the present invention, the predefined area is any one of one or more coding tree units (CUs) or one or more coding tree units (CTUs).

[0016] В способе кодирования изображения в соответствии с настоящим изобретением, когда существует множество информаций движения в обновленном списке информации движения в блоке, закодированном перед текущим блоком, генерирование списка кандидатов выполняется таким образом, чтобы включать среднее по меньшей мере двух или более информаций движения из множества информаций движения в список кандидатов.[0016] In the picture encoding method according to the present invention, when there are a plurality of motion information in the updated motion information list in a block encoded before the current block, generation of the candidate list is performed to include an average of at least two or more motion information from a set of traffic information in the list of candidates.

[0017] В способе кодирования изображения в соответствии с настоящим изобретением, когда информация движения обновленного списка информации движения в блоке, закодированном перед текущим блоком, является той же самой, что и информация движения, ранее включенная в список кандидатов, генерирование списка кандидатов выполняется таким образом, чтобы не включать информацию движения списка информации движения в список кандидатов.[0017] In the picture encoding method according to the present invention, when the motion information of the updated motion information list in the block encoded before the current block is the same as the motion information previously included in the candidate list, generation of the candidate list is performed as follows to not include the movement information of the movement information list in the list of candidates.

[0018] В способе кодирования изображения в соответствии с настоящим изобретением, когда текущий блок представляет собой режим предсказания IBC и список кандидатов представляет собой совместно используемый список слияния, обновление выведенной информации движения в списке информации движения опускается.[0018] In the image encoding method according to the present invention, when the current block is the IBC prediction mode and the candidate list is the shared merge list, updating the outputted motion information in the motion information list is omitted.

[0019] В способе кодирования изображения в соответствии с настоящим изобретением, список информации движения имеет ограничение предопределенного размера. [0019] In the image encoding method according to the present invention, the motion information list has a predetermined size limitation.

[0020] В способе кодирования изображения в соответствии с настоящим изобретением, когда количество информации движения, хранящейся в списке информации движения, представляет собой предопределенное значение, обновление выведенной информации движения в списке информации движения включает в себя удаление информации движения, сохраненной первой в списке информации движения, и сохранение выведенной информации движения.[0020] In the image encoding method according to the present invention, when the amount of motion information stored in the motion information list is a predetermined value, updating the output motion information in the motion information list includes deleting the motion information stored first in the motion information list , and storing the derived motion information.

[0021] В долговременном считываемом компьютером носителе записи, содержащем битовый поток, декодированный способом декодирования изображения в соответствии с вариантом осуществления настоящего изобретения, способ декодирования изображения может содержать генерирование списка кандидатов, включающего в себя информацию движения, выведенную из пространственного соседнего блока и временного соседнего блока, смежных с текущим блоком, выведение информации движения текущего блока с использованием списка кандидатов, генерирование блока предсказания текущего блока с использованием выведенной информации движения, обновление выведенной информации движения в списке информации движения, и причем генерирование списка кандидатов выполняется таким образом, чтобы включать по меньшей мере одну информацию из информации движения, включенной в обновленный список информации движения в блоке, декодированном перед текущим блоком.[0021] In a long-term computer-readable recording medium comprising a bitstream decoded by the image decoding method according to an embodiment of the present invention, the image decoding method may comprise generating a candidate list including motion information derived from a spatial neighbor block and a temporal neighbor block adjacent to the current block, deriving motion information of the current block using the candidate list, generating a prediction block of the current block using the derived motion information, updating the derived motion information in the motion information list, and wherein generating the candidate list is performed to include at least one information from the motion information included in the updated motion information list in the block decoded before the current block.

ПОЛЕЗНЫЕ РЕЗУЛЬТАТЫUSEFUL RESULTS

[0022] Настоящее изобретение может обеспечить способ и устройство для кодирования и декодирования изображения и носитель записи, хранящий битовый поток, которые повышают эффективность сжатия с использованием списка информации движения, хранящего предварительно восстановленную информацию движения.[0022] The present invention can provide a method and apparatus for encoding and decoding an image and a recording medium storing a bitstream that improve compression efficiency using a motion information list storing previously recovered motion information.

[0023] В соответствии с настоящим изобретением, когда имеется мало информации движения или информация движения отсутствует в списке информации движения, хранящем предварительно восстановленную информацию движения, информация предсказания может храниться в списке информации движения и использоваться, чтобы более точно выполнять интер-предсказание.[0023] According to the present invention, when there is little motion information or no motion information in the motion information list storing previously recovered motion information, the prediction information can be stored in the motion information list and used to more accurately perform inter-prediction.

[0024] В соответствии с настоящим изобретением, может быть повышена эффективность кодирования и декодирования изображения.[0024] According to the present invention, the coding and decoding efficiency of an image can be improved.

[0025] В соответствии с настоящим изобретением, может быть снижена вычислительная сложность кодера и декодера изображения.[0025] In accordance with the present invention, the computational complexity of the image encoder and decoder can be reduced.

ОПИСАНИЕ ЧЕРТЕЖЕЙDESCRIPTION OF THE DRAWINGS

[0026] Фиг. 1 представляет собой блок-схему, иллюстрирующую конфигурацию устройства кодирования в соответствии с вариантом осуществления настоящего изобретения.[0026] FIG. 1 is a block diagram illustrating the configuration of an encoder according to an embodiment of the present invention.

[0027] Фиг. 2 представляет собой блок-схему, иллюстрирующую конфигурацию устройства декодирования в соответствии с вариантом осуществления настоящего изобретения.[0027] FIG. 2 is a block diagram illustrating the configuration of a decoding apparatus according to an embodiment of the present invention.

[0028] Фиг. 3 представляет диаграмму, схематично иллюстрирующую структуру разбиения изображения при кодировании и декодировании изображения.[0028] FIG. 3 is a diagram schematically illustrating an image partition structure in image encoding and decoding.

[0029] Фиг. 4 представляет собой диаграмму, иллюстрирующую вариант осуществления процесса интра-предсказания.[0029] FIG. 4 is a diagram illustrating an embodiment of an intra-prediction process.

[0030] Фиг. 5 представляет собой диаграмму, иллюстрирующую вариант осуществления процесса интер-предсказания.[0030] FIG. 5 is a diagram illustrating an embodiment of an inter-prediction process.

[0031] Фиг. 6 представляет собой диаграмму, иллюстрирующую процесс преобразования и квантования.[0031] FIG. 6 is a diagram illustrating the conversion and quantization process.

[0032] Фиг. 7 представляет собой диаграмму, иллюстрирующую опорные выборки, доступные для интра-предсказания.[0032] FIG. 7 is a diagram illustrating the reference samples available for intra prediction.

[0033] Фиг. 8 и 9 представляют собой диаграммы, иллюстрирующие кодер и декодер, использующие список информации движения.[0033] FIG. 8 and 9 are diagrams illustrating an encoder and a decoder using a motion information list.

[0034] Фиг. 10 представляет собой блок-схему последовательности операций, иллюстрирующую способ интер-предсказания с использованием списка информации движения в соответствии с настоящим изобретением.[0034] FIG. 10 is a flowchart illustrating an inter prediction method using a motion information list according to the present invention.

[0035] Фиг. 11 представляет собой блок-схему последовательности операций, иллюстрирующую способ интер-предсказания с использованием списка информации движения.[0035] FIG. 11 is a flowchart illustrating an inter prediction method using a motion information list.

[0036] Фиг. 12 представляет собой блок-схему последовательности операций, иллюстрирующую способ интер-предсказания, в котором предсказание списка информации движения выполняется в момент времени инициализации списка информации движения и момент времени добавления информации движения.[0036] FIG. 12 is a flowchart illustrating an inter prediction method in which motion information list prediction is performed at a motion information list initialization time and a motion information addition time.

[0037] Фиг. 13 и 14 представляют собой диаграммы, иллюстрирующие кодер и декодер, включающие в себя предсказатель списка информации движения.[0037] FIG. 13 and 14 are diagrams illustrating an encoder and a decoder including a motion information list predictor.

[0038] Фиг. 15 представляет собой диаграмму, иллюстрирующую вариант осуществления выполнения сигнализации, включающий в себя указатель, указывающий, следует ли применить список информации движения к синтаксису набора параметров последовательности (SPS). [0038] FIG. 15 is a diagram illustrating an embodiment of signaling including a pointer indicating whether to apply a motion information list to sequence parameter set (SPS) syntax.

[0039] Фиг. 16 представляет собой диаграмму, иллюстрирующую вариант осуществления выполнения сигнализации, включающий в себя указатель, указывающий, следует ли применить список информации движения к синтаксису набора параметров картинки (PPS).[0039] FIG. 16 is a diagram illustrating an embodiment of signaling including a pointer indicating whether to apply a motion information list to a picture parameter set (PPS) syntax.

[0040] Фиг. 17 представляет собой диаграмму, иллюстрирующую вариант осуществления выполнения сигнализации, включающий в себя указатель, указывающий, следует ли применить список информации движения к синтаксису заголовка слайса.[0040] FIG. 17 is a diagram illustrating an embodiment of signaling including a pointer indicating whether to apply the motion information list to the slice header syntax.

[0041] Фиг. 18 представляет собой диаграмму, иллюстрирующую пример предсказания информации движения текущего списка информации движения из области, смежной по времени с текущим блоком.[0041] FIG. 18 is a diagram illustrating an example of motion information prediction of the current motion information list from an area adjacent in time to the current block.

[0042] Фиг. 19 представляет собой диаграмму, иллюстрирующую пример предсказания информации движения текущего списка информации движения из области, пространственно смежной с текущим блоком кодирования.[0042] FIG. 19 is a diagram illustrating an example of motion information prediction of the current motion information list from an area spatially adjacent to the current coding block.

[0043] Фиг. 20 представляет собой диаграмму, иллюстрирующую пример способа выполнения предсказания текущего списка информации движения со ссылкой на список информации движения предварительно восстановленной UPU.[0043] FIG. 20 is a diagram illustrating an example of a method for performing prediction of the current motion information list with reference to the motion information list of the previously recovered UPU.

[0044] Фиг. 21 представляет собой диаграмму, иллюстрирующую способ выполнения предсказания списка информации движения из информации движения, хранящейся в текущем списке информации движения.[0044] FIG. 21 is a diagram illustrating a method for performing motion information list prediction from motion information stored in the current motion information list.

[0045] Фиг. 22 представляет собой диаграмму, иллюстрирующую пример процесса выведения информации движения предсказания путем изменения опорной картинки существующей информации движения и соответственной корректировки вектора движения.[0045] FIG. 22 is a diagram illustrating an example of a prediction motion information derivation process by changing the reference picture of the existing motion information and adjusting the motion vector accordingly.

[0046] Фиг. 23 представляет собой диаграмму, иллюстрирующую способ предсказания списка информации движения, который не перекрывается с кандидатом способа предсказания движения.[0046] FIG. 23 is a diagram illustrating a motion information list prediction method that does not overlap with a motion prediction method candidate.

[0047] Фиг. 24 представляет собой диаграмму, иллюстрирующую вариант осуществления настройки положения, которое является опорным для предсказания списка информации движения в единице CTU, когда положение временного кандидата способа предсказания движения является тем же самым, что и положения C и H на фиг. 23.[0047] FIG. 24 is a diagram illustrating an embodiment of setting a position that is a reference for motion information list prediction in a CTU when the position of a temporal candidate of the motion prediction method is the same as positions C and H in FIG. 23.

[0048] Фиг. 25 и 26 представляют собой диаграммы, иллюстрирующие вариант осуществления способа использования предсказанной информации движения и общей информации движения по отдельности.[0048] FIG. 25 and 26 are diagrams illustrating an embodiment of a method for using predicted motion information and common motion information separately.

[0049] Фиг. 27 представляет собой блок-схему последовательности операций, иллюстрирующую способ декодирования изображения в соответствии с вариантом осуществления настоящего изобретения.[0049] FIG. 27 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.

режим ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯMODE OF CARRYING OUT THE INVENTION

[0050] Множество модификаций может быть выполнено в настоящем изобретении, и имеются различные варианты осуществления настоящего изобретения, примеры которых будут представлены далее и подробно описаны со ссылками на чертежи. Однако настоящее изобретение не ограничено ими, хотя примерные варианты осуществления могут быть истолкованы как включающие все модификации, эквиваленты или замены в техническом принципе и техническом объеме настоящего изобретения. Сходные ссылочные позиции относятся к одинаковым или сходным функциям в различных аспектах. На чертежах, формы и размеры элементов могут быть преувеличены для ясности. В последующем подробном описании настоящего изобретения ссылки даются на приложенные чертежи, которые показывают, для иллюстрации, конкретные варианты осуществления, в которых может быть реализовано настоящее изобретение. Эти варианты осуществления описаны достаточно детально, чтобы позволить специалистам в данной области реализовать настоящее раскрытие. Многочисленные варианты осуществления настоящего раскрытия, хотя и различные, не обязательно являются взаимно исключающими. Например, конкретные признаки, структуры и характеристики, описанные здесь в связи с одним вариантом осуществления, могут быть реализованы в других вариантах осуществления без отклонения от сущности и объема настоящего раскрытия. Кроме того, должно быть понятно, что местоположение или компоновка отдельных элементов в каждом раскрытом варианте осуществления может модифицироваться без отклонения от сущности и объема настоящего раскрытия. Поэтому последующее подробное описание не следует понимать в ограничивающем смысле, и объем настоящего раскрытия определяется только приложенными пунктами формулы изобретения, интерпретируемыми надлежащим образом, вместе с полным диапазоном эквивалентов того, что заявляется в пунктах формулы изобретения. [0050] Many modifications can be made to the present invention, and there are various embodiments of the present invention, examples of which will be presented below and described in detail with reference to the drawings. However, the present invention is not limited thereto, although the exemplary embodiments may be construed as including all modifications, equivalents, or substitutions within the technical principle and scope of the present invention. Like reference numerals refer to the same or similar functions in various aspects. In the drawings, the shapes and sizes of elements may be exaggerated for clarity. In the following detailed description of the present invention, reference is made to the accompanying drawings which show, by way of illustration, specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to implement the present disclosure. The numerous embodiments of the present disclosure, while varied, are not necessarily mutually exclusive. For example, specific features, structures, and characteristics described herein in connection with one embodiment may be implemented in other embodiments without departing from the spirit and scope of the present disclosure. In addition, it should be clear that the location or layout of the individual elements in each disclosed embodiment can be modified without deviating from the spirit and scope of the present disclosure. Therefore, the following detailed description is not to be taken in a limiting sense, and the scope of the present disclosure is only defined by the appended claims, properly interpreted, together with the full range of equivalents of what is claimed in the claims.

[0051] Используемые в спецификации термины ‘первый’, ‘второй’ и т.д. могут использоваться для описания различных компонентов, но компоненты не должны подразумеваться ограниченными этими терминами. Эти термины используются только для различения одного компонента от других компонентов. Например, ‘первый’ компонент может именоваться ‘вторым’ компонентом без отклонения от объема настоящего изобретения, и ‘второй’ компонент может также аналогичным образом именоваться ‘первым’ компонентом. Термин ‘и/или’ включает в себя комбинацию множества элементов или любой один из множества членов.[0051] As used in the specification, the terms 'first', 'second', etc. may be used to describe various components, but components should not be meant to be limited by these terms. These terms are only used to distinguish one component from other components. For example, the 'first' component may be referred to as the 'second' component without deviating from the scope of the present invention, and the 'second' component may also be referred to as the 'first' component in the same way. The term ‘and/or’ includes a combination of a plurality of elements or any one of a plurality of members.

[0052] Следует понимать, что когда элемент просто упоминается как ‘соединенный с’ или ‘связанный с’ другим элементом, не будучи ‘непосредственно соединенным с’ или ‘непосредственно связанным с’ другим элементом в настоящем описании, он может быть ‘непосредственно соединенным с’ или ‘непосредственно связанным с’ другим элементом или быть соединенным или связанным с другим элементом, имея другой элемент, промежуточный между ними. Напротив, следует понимать, что когда элемент упоминается как “непосредственно связанный” или “непосредственно соединенный” с другим элементом, то не имеется промежуточных элементов.[0052] It should be understood that when an element is simply referred to as 'connected to' or 'connected to' another element without being 'directly connected to' or 'directly connected to' another element in the present description, it may be 'directly connected to ' or 'directly related to' another element, or be connected or related to another element, having another element intermediate between them. On the contrary, it should be understood that when an element is referred to as "directly connected" or "directly connected" to another element, there are no intermediate elements.

[0053] Кроме того, составные части, показанные в вариантах осуществления настоящего изобретения, показаны независимо, чтобы представлять характерные функции, отличающиеся друг от друга. Таким образом, это не означает, что каждая составная часть содержится в составном блоке отдельного аппаратного средства или программного обеспечения. Иными словами, каждая составная часть включает в себя каждую из пронумерованных составных частей, для удобства. Таким образом, по меньшей мере две составные части каждой составной части могут объединяться, чтобы образовывать одну составную часть, или одна составная часть может быть разделена на множество составных частей, чтобы выполнять каждую функцию. Вариант осуществления, где каждая составная часть объединена, и вариант осуществления, где одна составная часть разделена, также включены в объем настоящего изобретения, если это не приводит к отклонению от сущности настоящего изобретения.[0053] In addition, the constituent parts shown in the embodiments of the present invention are shown independently to represent characteristic functions that differ from each other. Thus, it does not mean that each sub-part is contained within a sub-unit of separate hardware or software. In other words, each sub-part includes each of the numbered sub-parts, for convenience. Thus, at least two constituent parts of each constituent part may be combined to form one constituent part, or one constituent part may be divided into a plurality of constituent parts to perform each function. The embodiment where each component is combined and the embodiment where one component is separated are also included in the scope of the present invention, if this does not deviate from the essence of the present invention.

[0054] Термины, используемые в настоящей спецификации, используются просто для описания конкретных вариантов осуществления и не подразумевают ограничения настоящего изобретения. Выражение, использованное в единственном числе, включает в себя выражение во множественном числе, если только это не имеет явно отличающегося значения в контексте. В настоящей спецификации, следует понимать, что такие термины, как “включающий в себя”, “имеющий” и т.д., предназначены, чтобы указывать наличие признаков, количеств, этапов, действий, элементов, частей или их комбинаций, раскрытых в спецификации, не должны исключать возможность того, один или более других признаков, количеств, этапов, действий, элементов, частей или их комбинаций могут существовать или могут добавляться. Иными словами, когда конкретный элемент упоминается как “включенный”, элементы иные, чем соответствующий элемент, не исключаются, но дополнительные элементы могут быть включены в варианты осуществления настоящего изобретения или объем настоящего изобретения.[0054] The terms used in this specification are used merely to describe specific embodiments and are not intended to limit the present invention. An expression used in the singular includes a plural expression, unless it has a distinctly different meaning in the context. In this specification, it should be understood that terms such as "comprising", "having", etc., are intended to indicate the presence of the features, quantities, steps, acts, elements, parts, or combinations thereof disclosed in the specification. , should not exclude the possibility that one or more other features, quantities, steps, acts, elements, parts, or combinations thereof may exist or may be added. In other words, when a particular element is referred to as “included”, elements other than the corresponding element are not excluded, but additional elements may be included in embodiments of the present invention or the scope of the present invention.

[0055] Кроме того, некоторые из компонентов могут не являться необходимыми компонентами, выполняющими существенные функции настоящего изобретения, а являются конкретными компонентами, лишь улучшающими его рабочие характеристики. Настоящее изобретение может быть реализовано путем включения в него только необходимых составных частей для реализации сущности настоящего изобретения, исключая компоненты, используемые для улучшения рабочих характеристик. Структура, включающая в себя только необходимые компоненты, исключая конкретные компоненты, используемые только для улучшения рабочих характеристик, также включена в объем настоящего изобретения. [0055] In addition, some of the components may not be necessary components that perform the essential functions of the present invention, but are specific components that only improve its performance. The present invention can be implemented by including only the necessary components to implement the essence of the present invention, excluding components used to improve performance. A structure that includes only the necessary components, excluding specific components used only to improve performance, is also included in the scope of the present invention.

[0056] Далее, варианты осуществления настоящего изобретения будут описаны подробно со ссылками на приложенные чертежи. При описании примерных вариантов осуществления настоящего изобретения, хорошо известные функции или конструкции не будут подробно описываться, поскольку они могли бы ненужным образом усложнить понимание настоящего изобретения. Одинаковые компоненты на чертежах обозначены теми же самыми ссылочными позициями, и повторное описание одних и тех же элементов будет опущено. [0056] Further, embodiments of the present invention will be described in detail with reference to the attached drawings. In describing exemplary embodiments of the present invention, well-known functions or constructions will not be described in detail as they could unnecessarily complicate the understanding of the present invention. Like components in the drawings are designated by the same reference numerals, and repeated description of the same elements will be omitted.

[0057] Далее, изображение может означать картинку, конфигурирующую видео, или может означать само видео. Например, “кодирование или декодирование, или оба из них, изображения” может означать “кодирование или декодирование, или оба из них, движущейся картинки” и может означать “кодирование или декодирование, или оба из них, одного изображения среди изображений движущейся картинки”. [0057] Further, the image may mean a picture configuring the video, or may mean the video itself. For example, “encoding or decoding or both of a picture” may mean “encoding or decoding or both of a moving picture” and may mean “encoding or decoding or both of a single picture among moving picture pictures”.

[0058] Далее, термины “движущаяся картинка” и “видео” могут использоваться как имеющие одно и то же значение и могут заменять друг друга.[0058] Further, the terms "moving picture" and "video" can be used as having the same meaning and can be interchanged.

[0059] Далее, целевое изображение может быть целевым изображением кодирования, которое является целью кодирования, и/или целевым изображением декодирования, которое является целью декодирования. Также, целевое изображение может быть входным изображением, введенным в устройство кодирования, и входным изображением, введенным в устройство декодирования. Здесь, целевое изображение может иметь то же самое значение, что и текущее изображение.[0059] Further, the target image may be an encoding target image that is an encoding target and/or a decoding target image that is a decoding target. Also, the target image may be an input image input to the encoding device and an input image input to the decoding device. Here, the target image can have the same value as the current image.

[0060] Далее, термины “изображение”, “картинка”, “кадр” и “экран” могут использоваться как имеющие то же самое значение и заменять друг друга.[0060] Further, the terms "image", "picture", "frame" and "screen" can be used as having the same meaning and replace each other.

[0061] Далее, целевой блок может представлять собой целевой блок кодирования, который является целью кодирования, и/или целевой блок декодирования, который является целью декодирования. Также целевой блок может представлять собой текущий блок, который является целью текущего кодирования и/или декодирования. Например, термины “целевой блок” и “текущий блок” могут использоваться как имеющие то же самое значение и заменять друг друга.[0061] Further, the target block may be an encoding target that is an encoding target and/or a decoding target that is a decoding target. Also, the target block may be the current block, which is the target of the current encoding and/or decoding. For example, the terms "target block" and "current block" can be used as having the same meaning and interchangeable.

[0062] Далее, термины “блок” и “единица” могут использоваться как имеющие то же самое значение и заменять друг друга. Или “блок” может представлять конкретную единицу.[0062] Further, the terms "block" and "unit" can be used as having the same meaning and replace each other. Or a "block" could represent a specific unit.

[0063] Далее, термины “область” и “сегмент” могут заменять друг друга.[0063] Further, the terms "region" and "segment" can be used interchangeably.

[0064] Далее, конкретный сигнал может быть сигналом, представляющим конкретный блок. Например, исходный сигнал может быть сигналом, представляющим целевой блок. Сигнал предсказания может быть сигналом, представляющим блок предсказания. Остаточный сигнал может быть сигналом, представляющим остаточный блок.[0064] Further, the specific signal may be a signal representing a specific block. For example, the source signal may be a signal representing the target block. The prediction signal may be a signal representing a prediction block. The residual signal may be a signal representing the residual block.

[0065] В вариантах осуществления, каждое из конкретной информации, данных, флага, индекса, элемента и атрибута и т.д. может иметь значение. Значение информации, данных, флага, индекса, элемента и атрибута, равное “0”, может представлять логическое “ложно” или первое предопределенное значение. Иными словами, значение “0”, “ложно”, логическое “ложно” и первое предопределенное значение могут быть взаимозаменяемыми. Значение информации, данных, флага, индекса, элемента и атрибута, равное “1”, может представлять логическое “истинно” или второе предопределенное значение. Иными словами, значение “1”, “истинно”, логическое “истинно” и второе предопределенное значение могут быть взаимозаменяемыми. [0065] In embodiments, each of the specific information, data, flag, index, element, and attribute, etc. may matter. An information, data, flag, index, element, and attribute value of "0" may represent a logical "false" or the first predefined value. In other words, the value "0", "false", the logical "false" and the first predefined value can be interchanged. An information, data, flag, index, element, and attribute value of "1" may represent a logical "true" or a second predefined value. In other words, the value "1", "true", the logical "true" and the second predefined value can be interchanged.

[0066] Когда переменная i или j используется для представления столбца, строки или индекса, значение i может быть целым числом равным или большим, чем 0, или равным или большим, чем 1. То есть, столбец, строка, индекс и т.д. могут отсчитываться от 0 или могут отсчитываться от 1.[0066] When a variable i or j is used to represent a column, row, or index, the value of i can be an integer equal to or greater than 0, or equal to or greater than 1. That is, column, row, index, etc. . may be 0-based or may be 1-based.

[0067] [0067]

[0068] Описание терминов[0068] Description of terms

[0069] Кодер: означает устройство, выполняющее кодирование. То есть, означает устройство кодирования.[0069] Encoder: means a device that performs encoding. That is, means encoding device.

[0070] Декодер: означает устройство, выполняющее декодирование. То есть, означает устройство декодирования.[0070] Decoder: means a device that performs decoding. That is, means a decoding device.

[0071] Блок: представляет собой M×N массив выборки. Здесь, M и N могут означать положительные целые числа, и блок может означать массив выборки двумерной формы. Блок может относиться к единице. Текущий блок может означать целевой блок кодирования, который становится целью при кодировании, или целевой блок декодирования, который становится целью при декодировании. Кроме того, текущий блок может быть по меньшей мере одним из блока кодирования, блока предсказания, остаточного блока и блока преобразования.[0071] Block: is an M×N sample array. Here, M and N can mean positive integers, and block can mean a two-dimensional sample array. A block can refer to a unit. The current block may mean a target encoding block that becomes a target when encoding, or a target decoding block that becomes a target when decoding. In addition, the current block may be at least one of a coding block, a prediction block, a residual block, and a transform block.

[0072] Выборка: представляет собой базовую единицу, образующую блок. Она может быть выражена как значение от 0 до 2Bd-1 в соответствии с битовой глубиной (Bd). В настоящем изобретении, выборка может использоваться как обозначение пиксела. То есть, выборка, элемент изображения, пиксел могут иметь то же самое значение.[0072] Sample: is the basic unit that forms the block. It can be expressed as a value from 0 to 2 Bd-1 according to the bit depth (Bd). In the present invention, a sample may be used as a pixel designator. That is, sample, image element, pixel can have the same value.

[0073] Единица: может относиться к единице кодирования и декодирования. При кодировании и декодировании изображения, единица может представлять собой область, генерируемую разбиением одного изображения. Кроме того, единица может означать подразделенную единицу, когда одно изображение разбивается на подразделенные единицы во время кодирования или декодирования. То есть, изображение может разбиваться на множество единиц. При кодировании и декодировании изображения, предопределенный процесс может выполняться для каждой единицы. Одна единица может разбиваться на под-единицы, которые имеют размеры меньше, чем размер единицы. В зависимости от функций, единица может означать блок, макроблок, единицу дерева кодирования, блок дерева кодирования, единицу кодирования, блок кодирования, единицу предсказания, блок предсказания, остаточную единицу, остаточный блок, единицу преобразования, блок преобразования и т.д. Кроме того, чтобы различать единицу от блока, единица может включать блок компонента яркости, блок компонента цветности, ассоциированный с блоком компонента яркости, и синтаксический элемент каждого блока цветового компонента. Единица может иметь различные размеры и формы, в частности, форма единицы может быть двумерной геометрической фигурой, такой как квадратная форма, прямоугольная форма, трапецеидальная форма, треугольная форма, пятиугольная форма и т.д. Кроме того, информация единицы может включать по меньшей мере одно из типа единицы, указывающего единицу кодирования, единицу предсказания, единицу преобразования и т.д., и размера единицы, глубины единицы, последовательности кодирования и декодирования единицы и т.д.[0073] Unit: may refer to a unit of encoding and decoding. When encoding and decoding an image, a unit may be an area generated by splitting one image. In addition, one may mean a subdivided unit when one picture is divided into subdivided units during encoding or decoding. That is, the image can be divided into many units. When encoding and decoding an image, a predetermined process may be performed for each unit. One unit may be broken down into sub-units that are smaller than the size of the unit. Depending on the functions, a unit may mean a block, a macroblock, a coding tree unit, a coding tree block, a coding unit, a coding block, a prediction unit, a prediction unit, a residual unit, a residual block, a transformation unit, a transformation block, and so on. In addition, to distinguish a unit from a block, the unit may include a luminance component block, a chrominance component block associated with a luma component block, and a syntax element of each color component block. The unit may have various sizes and shapes, in particular, the shape of the unit may be a two-dimensional geometric figure such as a square shape, a rectangular shape, a trapezoid shape, a triangular shape, a pentagonal shape, and so on. In addition, the unit information may include at least one of a unit type indicating a coding unit, a prediction unit, a transformation unit, etc., and a unit size, a unit depth, a unit encoding and decoding sequence, etc.

[0074] Единица дерева кодирования: конфигурируется с одним блоком дерева кодирования компонента яркости Y и двумя блоками дерева кодирования, относящимися к компонентам цветности Cb и Cr. Кроме того, это может означать, что включаются блоки и синтаксический элемент каждого блока. Каждая единица дерева кодирования может быть подразделена с использованием по меньшей мере одного из способа разбиения квадродерева, способа разбиения двоичного дерева и способа разбиения троичного дерева, чтобы конфигурировать более низкую единицу, такую как единица кодирования, единица предсказания, единица преобразования и т.д. Это может использоваться как термин для обозначения блока выборки, который становится единицей обработки при кодировании/декодировании изображения в качестве входного изображения. Здесь, квадродерево может означать квартернарное дерево.[0074] Coding tree unit: configured with one luma Y component coding tree block and two coding tree blocks related to Cb and Cr chrominance components. It may also mean that blocks and the syntax element of each block are included. Each coding tree unit may be subdivided using at least one of a quadtree partitioning method, a binary tree partitioning method, and a ternary tree partitioning method to configure a lower unit such as a coding unit, a prediction unit, a transformation unit, and so on. This can be used as a term for a sample block that becomes a processing unit when an image is encoded/decoded as an input image. Here, quadtree can mean quaternary tree.

[0075] Когда размер блока кодирования находится в пределах предопределенного диапазона, деление возможно с использованием только разбиения квадродерева. Здесь, предопределенный диапазон может быть определен как по меньшей мере одно из максимального размера и минимального размера блока кодирования, в котором разделение возможно с использованием только разбиения квадродерева. Информация, указывающая максимальный/минимальный размер блока кодирования, в котором разрешено разбиение квадродерева, может сигнализироваться битовым потоком, и информация может сигнализироваться по меньшей мере в одной единице последовательности, параметре картинки, группе мозаичных элементов или слайсе (сегменте). Альтернативно, максимальный/минимальный размер блока кодирования может быть фиксированным размером, предварительно определенным в кодере/декодере. Например, когда размер блока кодирования соответствует от 256×256 до 64×64, разделение возможно только с использованием разбиения квадродерева. Альтернативно, когда размер блока кодирования больше, чем размер максимального блока преобразования, разделение возможно только с использованием разбиения квадродерева. Здесь, блок, подлежащий разделению, может быть по меньшей мере одним из блока кодирования и блока преобразования. В этом случае, информация, указывающая разделение кодированного блока (например, split_flag) может представлять собой флаг, указывающий, следует ли или нет выполнять разбиение квадродерева. Когда размер блока кодирования попадает в предопределенный диапазон, разделение возможно только с использованием разбиения двоичного дерева или троичного дерева. В этом случае, приведенное выше описание разбиения квадродерева может применяться к разбиению двоичного дерева или разбиению троичного дерева одинаковым образом. [0075] When the coding block size is within a predetermined range, division is possible using only quadtree splitting. Here, the predetermined range may be defined as at least one of a maximum size and a minimum size of a coding block in which partitioning is possible using only quadtree partitioning. Information indicating the maximum/minimum size of a coding block in which quadtree splitting is allowed may be signaled by a bitstream, and information may be signaled in at least one sequence unit, picture parameter, tile group, or slice (segment). Alternatively, the maximum/minimum coding block size may be a fixed size predetermined in the encoder/decoder. For example, when the coding block size is from 256x256 to 64x64, division is only possible using quadtree splitting. Alternatively, when the coding block size is larger than the maximum transform block size, partitioning is only possible using quadtree partitioning. Here, the block to be divided may be at least one of an encoding block and a transformation block. In this case, the information indicating splitting of the encoded block (eg, split_flag) may be a flag indicating whether or not to perform quadtree splitting. When the coding block size falls within a predetermined range, splitting is only possible using binary tree splitting or ternary tree splitting. In this case, the above description of quadtree splitting can be applied to binary tree splitting or ternary tree splitting in the same way.

[0076] Блок дерева кодирования: может быть использован как термин для обозначения любого одного из Y блока дерева кодирования, Cb блока дерева кодирования и Cr блока дерева кодирования.[0076] Coding tree block: can be used as a term to refer to any one of Y coding tree block, Cb coding tree block, and Cr coding tree block.

[0077] Соседний блок: может означать блок, смежный с текущим блоком. Блок, смежный с текущим блоком, может означать блок, который контактирует с границей текущего блока, или блок, позиционированный в пределах предопределенного расстояния от текущего блока. Соседний блок может означать блок, смежный с вершиной текущего блока. Здесь, блок, смежный с вершиной текущего блока, может означать блок, вертикально смежный с соседним блоком, который является горизонтально смежным с текущим блоком, или блок, горизонтально смежный с соседним блоком, который является вертикально смежным с текущим блоком.[0077] Adjacent block: may mean a block adjacent to the current block. A box adjacent to the current box may mean a box that is in contact with the boundary of the current box, or a box positioned within a predetermined distance from the current box. Adjacent block may mean a block adjacent to the top of the current block. Here, the box adjacent to the top of the current box may mean a box vertically adjacent to an adjacent box that is horizontally adjacent to the current box, or a box horizontally adjacent to a neighboring box that is vertically adjacent to the current box.

[0078] Восстановленный соседний блок: может означать соседний блок, смежный с текущим блоком и который уже был пространственно/по времени кодирован или декодирован. Здесь, восстановленный соседний блок может означать восстановленную соседнюю единицу. Восстановленный пространственный соседний блок может быть блоком в пределах текущей картинки, который уже был восстановлен посредством кодирования или декодирования или обоих из них. Восстановленный временной соседний блок представляет собой блок в соответствующем положении как у текущего блока текущей картинки в пределах опорного изображения или его соседнего блока.[0078] Recovered adjacent block: may mean a neighboring block adjacent to the current block and which has already been spatially/temporally encoded or decoded. Here, a recovered neighbor block may mean a recovered neighbor unit. The recovered spatial neighbor block may be a block within the current picture that has already been recovered by encoding or decoding or both. The reconstructed temporal neighbor block is a block at a corresponding position as the current block of the current picture within the reference picture or its neighbor block.

[0079] Глубина единицы: может означать степень разбиения единицы. В древовидной структуре, наивысший узел (корневой узел) может соответствовать первой единице, которая не разделена. Также, наивысший узел может иметь наименьшее значение глубины. В этом случае, наивысший узел может иметь глубину уровня 0. Узел, имеющий глубину уровня 1, может представлять единицу, генерируемую путем разбиения первой единицы однократно. Узел, имеющий глубину уровня 2, может представлять единицу, генерируемую путем разбиения первой единицы дважды. Узел, имеющий глубину уровня n, может представлять единицу, генерируемую путем разбиения первой единицы n раз. Листовой узел может быть самым низким узлом и узлом, который не может далее разделяться. Глубина листового узла может соответствовать максимальному уровню. Например, предопределенное значение максимального уровня может быть равно 3. Глубина корневого узла может быть самой низкой, а глубина листового узла может быть самой глубокой. Кроме того, когда единица выражена как древовидная структура, уровень, в котором присутствует единица, может означать глубину единицы. [0079] Depth of the unit: may mean the degree of partitioning of the unit. In a tree structure, the highest node (the root node) may correspond to the first unit that is not split. Also, the highest node can have the smallest depth value. In this case, the highest node may have a level depth of 0. A node having a level depth of 1 may represent a unit generated by splitting the first unit once. A node having a level depth of 2 may represent a unit generated by splitting the first unit twice. A node having a level depth of n may represent a unit generated by splitting the first unit n times. A leaf node can be the lowest node and a node that cannot be further split. The depth of the leaf node can correspond to the maximum level. For example, the predefined maximum level value may be 3. The depth of the root node may be the lowest, and the depth of the leaf node may be the deepest. In addition, when a unit is expressed as a tree structure, the level at which the unit is present may indicate the depth of the unit.

[0080] Битовый поток: может означать битовый поток, включающий в себя информацию кодирования изображения.[0080] Bitstream: may mean a bitstream including image encoding information.

[0081] Набор параметров: соответствует информации заголовка среди конфигурации в битовом потоке. По меньшей мере один из набора параметров видео, набора параметров последовательности, набора параметров картинки и набора параметров адаптации может быть включен в набор параметров. Кроме того, набор параметров может включать в себя заголовок слайса, заголовок группы мозаичных элементов и информацию заголовка мозаичного элемента. Термин “группа мозаичных элементов” означает группу мозаичных элементов и имеет то же самое значение, что и слайс.[0081] Parameter set: corresponds to the header information among the configuration in the bitstream. At least one of a video parameter set, a sequence parameter set, a picture parameter set, and an adaptation parameter set may be included in the parameter set. In addition, the parameter set may include a slice header, a tile group header, and tile header information. The term "tile group" means a group of tiles and has the same meaning as a slice.

[0082] Синтаксический анализ: может означать определение значения синтаксического элемента путем выполнения энтропийного декодирования или может означать само энтропийное декодирование. [0082] Parsing: may refer to determining the meaning of a syntax element by performing entropy decoding, or may refer to entropy decoding itself.

[0083] Символ: может означать по меньшей мере одно из синтаксического элемента, параметра кодирования и значения коэффициента преобразования целевой единицы кодирования/ декодирования. Кроме того, символ может означать цель энтропийного кодирования или результат энтропийного декодирования.[0083] Character: may mean at least one of a syntax element, an encoding parameter, and a transform coefficient value of an encoding/decoding target unit. In addition, the symbol may mean the target of entropy encoding or the result of entropy decoding.

[0084] Режим предсказания: может быть информацией, указывающей режим, кодированный/декодированный с интра-предсказанием, или режим, кодированный/декодированный с интер-предсказанием. [0084] Prediction mode: may be information indicating an intra-prediction encoded/decoded mode or an inter-prediction encoded/decoded mode.

[0085] Единица предсказания: может означать базовую единицу при выполнении предсказания, такого как интер-предсказание, интра-предсказание, интер- (взаимная) компенсация, интра- (внутренняя) компенсация и компенсация движения. Одна единица предсказания может разбиваться во множество разбиений, имеющих меньший размер, или может разбиваться на множество более низких единиц предсказания. Множество разбиений может представлять собой базовую единицу при выполнении предсказания или компенсации. Разбиение, которое генерируется путем разделения единицы предсказания, может также представлять собой единицу предсказания.[0085] Prediction unit: may mean a base unit when performing prediction such as inter prediction, intra prediction, inter (mutual) compensation, intra (internal) compensation, and motion compensation. One prediction unit may be split into multiple smaller partitions, or may be split into multiple smaller prediction units. The set of partitions may be the basic unit when performing prediction or compensation. The partition that is generated by dividing the prediction unit may also be the prediction unit.

[0086] Разбиение единицы предсказания: может означать форму, полученную путем разбиения единицы предсказания.[0086] Split prediction unit: may mean a shape obtained by splitting a prediction unit.

[0087] Список опорных картинок: может относиться к списку, включающему в себя одну или более опорных картинок, используемых для интер-предсказания или компенсации движения. Имеется несколько типов используемых списков опорных картинок, включая LC (объединенный список), L0 (список 0), L1 (список 1), L2 (список 2), L3 (список 3).[0087] Reference picture list: may refer to a list including one or more reference pictures used for inter-prediction or motion compensation. There are several types of reference picture lists used, including LC (combined list), L0 (list 0), L1 (list 1), L2 (list 2), L3 (list 3).

[0088] Указатель интер-предсказания: может относиться к направлению интер-предсказания (однонаправленное предсказание, двунаправленное предсказание и т.д.) текущего блока. Альтернативно, он может относиться к числу опорных картинок, используемых для генерации блока предсказания текущего блока. Альтернативно, он может относиться к числу блоков предсказания, используемых во время выполнения интер-предсказания или компенсации движения над текущим блоком.[0088] Inter-prediction pointer: may refer to the direction of inter-prediction (unidirectional prediction, bidirectional prediction, etc.) of the current block. Alternatively, it may refer to the number of reference pictures used to generate the prediction block of the current block. Alternatively, it may refer to the number of prediction blocks used while performing inter-prediction or motion compensation on the current block.

[0089] Флаг использования списка предсказания: указывает, генерируется ли блок предсказания с использованием по меньшей мере одной опорной картинки в конкретном списке опорных картинок. Указатель интер-предсказания может быть выведен с использованием флага использования списка предсказания, и наоборот, флаг использования списка предсказания может быть выведен с использованием указателя интер-предсказания. Например, когда флаг использования списка предсказания имеет первое значение, равное нулю (0), это означает, что опорная картинка в списке опорных картинок не используется для генерации блока предсказания. С другой стороны, когда флаг использования списка предсказания имеет второе значение, равное единице (1), это означает, что список опорных картинок используется для генерирования блока предсказания.[0089] Prediction list use flag: indicates whether a prediction block is generated using at least one reference picture in a particular reference picture list. The inter-prediction pointer may be derived using the prediction list use flag, and vice versa, the prediction list use flag may be derived using the inter-prediction pointer. For example, when the prediction list use flag has a first value of zero (0), it means that the reference picture in the reference picture list is not used to generate a prediction block. On the other hand, when the prediction list use flag has a second value of one (1), it means that the reference picture list is used to generate a prediction block.

[0090] Индекс опорной картинки: может относиться к индексу, указывающему конкретную опорную картинку в списке опорных картинок.[0090] Reference picture index: may refer to an index indicating a particular reference picture in the reference picture list.

[0091] Опорная картинка: может означать опорную картинку, на которую ссылается конкретный блок для целей интер-предсказания или компенсации движения конкретного блока. Альтернативно, опорная картинка может представлять собой картинку, включающую в себя опорный блок, на который ссылается текущий блок для интер-предсказания или компенсации движения. Далее, термины “опорная картинка” и “опорное изображение” имеют то же самое значение и могут использоваться взаимозаменяемым образом.[0091] Reference picture: may mean a reference picture referenced by a particular block for purposes of inter-prediction or motion compensation of a particular block. Alternatively, the reference picture may be a picture including a reference block referenced by the current block for inter-prediction or motion compensation. Further, the terms "reference picture" and "reference picture" have the same meaning and can be used interchangeably.

[0092] Вектор движения: может представлять собой двумерный вектор, используемый для интер-предсказания или компенсации движения. Вектор движения может означать смещение между целевым блоком кодирования/декодирования и опорным блоком. Например, (mvX, mvY) может представлять вектор движения. Здесь, mvX может представлять горизонтальный компонент, и mvY может представлять вертикальный компонент.[0092] Motion vector: may be a two-dimensional vector used for inter-prediction or motion compensation. The motion vector may mean an offset between an encoding/decoding target block and a reference block. For example, (mvX, mvY) could represent a motion vector. Here, mvX may represent a horizontal component and mvY may represent a vertical component.

[0093] Диапазон поиска: может представлять собой двумерную область, в которой осуществляется поиск, чтобы извлечь вектор движения во время интер-предсказания. Например, размер диапазона поиска может быть M×N. Здесь, M и N оба являются целыми числами.[0093] Search range: may be a two-dimensional area in which a search is performed to extract a motion vector during inter-prediction. For example, the size of the search range may be M×N. Here, M and N are both integers.

[0094] Кандидат вектора движения: может относиться к блоку кандидата предсказания или вектору движения блока кандидата предсказания при предсказании вектора движения. Кроме того, кандидат вектора движения может быть включен в список кандидатов вектора движения.[0094] Motion vector candidate: may refer to a prediction candidate block or a motion vector of a prediction candidate block in motion vector prediction. In addition, the motion vector candidate may be included in the list of motion vector candidates.

[0095] Список кандидатов вектора движения: может означать список, составленный из одного или более кандидатов вектора движения.[0095] Motion vector candidate list: may mean a list composed of one or more motion vector candidates.

[0096] Индекс кандидата вектора движения: может означать указатель, указывающий кандидата вектора движения в списке кандидатов вектора движения. Альтернативно, он может представлять собой индекс предсказателя вектора движения.[0096] Motion vector candidate index: may mean a pointer indicating a motion vector candidate in the list of motion vector candidates. Alternatively, it may be an index of the motion vector predictor.

[0097] Информация движения: может означать информацию, включающую в себя по меньшей мере один из элементов, включая вектор движения, индекс опорной картинки, указатель интер-предсказания, флаг использования списка предсказания, информацию списка опорных картинок, опорную картинку, кандидат вектора движения, индекс кандидата вектора движения, кандидат слияния и индекс слияния.[0097] Motion information: may mean information including at least one of a motion vector, a reference picture index, an inter-prediction pointer, a prediction list use flag, reference picture list information, a reference picture, a motion vector candidate, a motion vector candidate index, a merge candidate, and a merge index.

[0098] Список кандидатов слияния: может означать список, составленный из одного или более кандидатов слияния.[0098] Merge candidate list: may mean a list composed of one or more merge candidates.

[0099] Кандидат слияния: может означать пространственный кандидат слияния, временной кандидат слияния, объединенный кандидат слияния, объединенный би-предиктивный кандидат слияния, или нулевой кандидат слияния. Кандидат слияния может включать информацию движения, такую как указатель интер-предсказания, индекс опорной картинки для каждого списка, вектор движения, флаг использования списка предсказания и указатель интер-предсказания.[0099] Merge candidate: can mean a spatial merge candidate, a temporal merge candidate, a joint merge candidate, a joint bi-predictive merge candidate, or a null merge candidate. The merge candidate may include motion information such as an inter prediction indicator, a reference picture index for each list, a motion vector, a prediction list usage flag, and an inter prediction indicator.

[00100] Индекс слияния: может означать указатель, указывающий кандидата слияния в списке кандидатов слияния. Альтернативно, индекс слияния может указывать блок, из которого был выведен кандидат слияния, среди восстановленных блоков пространственно/по времени смежных с текущим блоком. Альтернативно, индекс слияния может указывать по меньшей мере одну часть информации движения кандидата слияния.[00100] Merge index: may mean a pointer indicating a merge candidate in the list of merge candidates. Alternatively, the merge index may indicate the block from which the merge candidate was derived, among the reconstructed blocks spatially/temporally adjacent to the current block. Alternatively, the merge index may indicate at least one piece of merge candidate movement information.

[00101] Единица преобразования: может означать базовую единицу при выполнении кодирования/декодирования, такого как преобразование, обратное преобразование, квантование, деквантование, кодирование/декодирование коэффициентов преобразования остаточного сигнала. Одна единица преобразования может разбиваться на множество единиц преобразования более низкого уровня, имеющих меньший размер. Здесь, преобразование/обратное преобразование может содержать по меньшей мере одно из первого преобразования/первого обратного преобразования и второго преобразования/второго обратного преобразования.[00101] Transform unit: may mean a base unit when performing encoding/decoding such as transform, inverse transform, quantization, dequantization, encoding/decoding of residual signal transform coefficients. One transformation unit may be broken down into multiple lower level transformation units having a smaller size. Here, the transform/inverse transform may comprise at least one of the first transform/first inverse transform and the second transform/second inverse transform.

[00102] Масштабирование: может означать процесс умножения квантованного уровня на коэффициент. Коэффициент преобразования может генерироваться путем масштабирования квантованного уровня. Масштабирование может также упоминаться как деквантование.[00102] Scaling: may refer to the process of multiplying a quantized level by a factor. The transform coefficient may be generated by scaling the quantized level. Scaling may also be referred to as dequantization.

[00103] Параметр квантования: может означать значение, используемое при генерировании квантованного уровня с использованием коэффициента преобразования при квантовании. Параметр квантования также может означать значение, используемое при генерировании коэффициента преобразования путем масштабирования квантованного уровня при деквантовании. Параметр квантования может представлять собой значение, отображаемое на размер шага квантования.[00103] Quantization parameter: may mean a value used when generating a quantized level using a quantization transform coefficient. The quantization parameter may also mean a value used in generating the transform coefficient by scaling the quantized level in dequantization. The quantization parameter may be a value mapped to the quantization step size.

[00104] Дельта-параметр квантования: может означать разностное значение между предсказанным параметром квантования и параметром квантования целевой единицы кодирования/ декодирования.[00104] Delta quantization parameter: may mean a difference between the predicted quantization parameter and the quantization parameter of the target coding/decoding unit.

[00105] Сканирование: может означать способ упорядочения коэффициентов в пределах единицы, блока или матрицы. Например, переход от двумерной матрицы коэффициентов к одномерной матрице может упоминаться как сканирование, и переход от одномерной матрицы коэффициентов к двумерной матрице может упоминаться как сканирование или обратное сканирование.[00105] Scanning: can mean a way of ordering coefficients within a unit, block, or matrix. For example, a transition from a two-dimensional coefficient matrix to a one-dimensional matrix may be referred to as a scan, and a transition from a one-dimensional coefficient matrix to a two-dimensional matrix may be referred to as a scan or inverse scan.

[00106] Коэффициент преобразования: может означать значение коэффициента, генерируемое после выполнения преобразования в кодере. Он может означать значение коэффициента, генерируемое после выполнения по меньшей мере одного из энтропийного декодирования и деквантования в декодере. Квантованный уровень, полученный путем квантования коэффициента преобразования или остаточного сигнала, или уровень квантованного коэффициента преобразования также может охватываться смысловым значением коэффициента преобразования.[00106] Transform Coefficient: may refer to a coefficient value generated after performing a transform in an encoder. It may mean a coefficient value generated after performing at least one of entropy decoding and dequantization in a decoder. The quantized level obtained by quantizing the transform coefficient or the residual signal, or the level of the quantized transform coefficient may also be covered by the meaning of the transform coefficient.

[00107] Квантованный уровень: может означать значение, генерируемое квантованием коэффициента преобразования или остаточного сигнала в кодере. Альтернативно, квантованный уровень может означать значение, которое является целью деквантования для выполнения деквантования в декодере. Аналогичным образом, уровень квантованного коэффициента преобразования, который является результатом преобразования и квантования, также может охватываться смысловым значением квантованного уровня.[00107] Quantized level: may mean a value generated by quantizing a transform coefficient or residual signal in an encoder. Alternatively, the quantized level may mean a value that is the target of dequantization for performing dequantization at the decoder. Similarly, the level of the quantized transform coefficient, which is the result of the transformation and quantization, may also be covered by the semantic value of the quantized level.

[00108] Ненулевой коэффициент преобразования: может означать коэффициент преобразования, имеющий значение иное, чем нуль, или уровень коэффициента преобразования или квантованный уровень, имеющий значение иное, чем нуль.[00108] Non-zero transform coefficient: may mean a transform coefficient having a value other than zero, or a transform coefficient level or a quantized level having a value other than zero.

[00109] Матрица квантования: может означать матрицу, используемую в процессе квантования или процессе деквантования, выполняемом для улучшения субъективного или объективного качества изображения. Матрица квантования также может упоминаться как список масштабирования.[00109] Quantization matrix: may mean a matrix used in a quantization process or a dequantization process performed to improve subjective or objective image quality. The quantization matrix may also be referred to as a scaling list.

[00110] Коэффициент матрицы квантования: может означать каждый элемент в матрице квантования. Коэффициент матрицы квантования также может упоминаться как коэффициент матрицы.[00110] Quantization matrix coefficient: may mean each element in the quantization matrix. The coefficient of the quantization matrix may also be referred to as the coefficient of the matrix.

[00111] Матрица по умолчанию: может означать предопределенную матрицу квантования, заранее определенную в кодере или декодере.[00111] Default matrix: may mean a predefined quantization matrix predefined in the encoder or decoder.

[00112] Матрица не по умолчанию: может означать матрицу квантования, которая не определена заранее в кодере или декодере, а сигнализируется пользователем.[00112] Non-default matrix: may mean a quantization matrix that is not predefined in the encoder or decoder, but signaled by the user.

[00113] Статистическое значение: статистическое значение для по меньшей мере одного из переменной, параметра кодирования, постоянного значения и т.д., которые имеют вычисляемое конкретное значение, может быть одним или более из среднего значения, суммарного значения, взвешенного среднего значения, взвешенного суммарного значения, минимального значения, максимального значения, наиболее частого значения, медианного значения, интерполированного значения соответствующего конкретного значения.[00113] Statistic value: the statistic value for at least one of a variable, an encoding parameter, a constant value, etc., which have a specific value calculated, may be one or more of an average value, a sum value, a weighted average, a weighted total value, minimum value, maximum value, most frequent value, median value, interpolated value of the corresponding particular value.

[00114] Фиг. 1 представляет собой блок-схему, показывающую конфигурацию устройства кодирования в соответствии с вариантом осуществления, в котором применимо настоящее изобретение.[00114] FIG. 1 is a block diagram showing the configuration of an encoding apparatus according to an embodiment to which the present invention is applicable.

[00115] Устройство 100 кодирования может быть кодером, устройством кодирования видео или устройством кодирования изображения. Видео может включать по меньшей мере одно изображение. Устройство 100 кодирования может последовательно кодировать по меньшей мере одно изображение.[00115] The encoding device 100 may be an encoder, a video encoding device, or an image encoding device. The video may include at least one image. Encoder 100 may sequentially encode at least one picture.

[00116] Со ссылкой на фиг. 1, устройство 100 кодирования может включать в себя модуль 111 предсказания движения, модуль 112 компенсации движения, модуль 120 интра-предсказания, переключатель 115, вычитатель 125, модуль 130 преобразования, модуль 140 квантования, модуль 150 энтропийного кодирования, модуль 160 деквантования, модуль 170 обратного преобразования, сумматор 175, модуль 180 фильтрации и буфер 190 опорных картинок.[00116] With reference to FIG. 1, the encoding device 100 may include a motion prediction module 111, a motion compensation module 112, an intra prediction module 120, a switch 115, a subtractor 125, a transform module 130, a quantization module 140, an entropy encoding module 150, a dequantization module 160, a module 170 inverse transform, adder 175, filter module 180, and reference picture buffer 190.

[00117] Устройство 100 кодирования может выполнять кодирование входного изображения с использованием интра-режима или интер-режима или их обоих. Кроме того, устройство 100 кодирования может генерировать битовый поток, включающий в себя кодированную информацию, посредством кодирования входного изображения, и выводить сгенерированный битовый поток. Сгенерированный битовый поток может быть сохранен в считываемом компьютером носителе записи или может передаваться потоком по проводной/беспроводной среде передачи. Когда интра-режим используется в качестве режима предсказания, переключатель 115 может переключаться на интра-режим. Альтернативно, когда интер-режим используется в качестве режима предсказания, переключатель 115 может переключаться на интер-режим. Здесь, интра-режим может означать режим интра-предсказания, и интер-режим может означать режим интер-предсказания. Устройство 100 кодирования может генерировать блок предсказания для входного блока входного изображения. Кроме того, устройство 100 кодирования может кодировать остаточный блок с использованием остатка входного блока и блока предсказания после генерации блока предсказания. Входное изображение может называться текущим изображением, которое представляет собой текущую цель кодирования. Входной блок может называться текущим блоком, который представляет собой текущую цель кодирования, или целевым блоком кодирования.[00117] Encoder 100 may encode an input image using intra mode or inter mode, or both. In addition, the encoding apparatus 100 can generate a bitstream including encoded information by encoding an input image and output the generated bitstream. The generated bitstream may be stored in a computer-readable recording medium, or may be streamed over a wired/wireless transmission medium. When the intra mode is used as the prediction mode, the switch 115 may switch to the intra mode. Alternatively, when the inter mode is used as the prediction mode, the switch 115 may switch to the inter mode. Here, the intra mode may mean the intra prediction mode, and the inter mode may mean the inter prediction mode. Encoder 100 may generate a prediction block for an input block of an input image. In addition, the encoding apparatus 100 can encode the residual block using the remainder of the input block and the prediction block after generating the prediction block. The input image may be referred to as the current image, which is the current encoding target. An input block may be referred to as a current block, which is the current encoding target, or an encoding target block.

[00118] Когда режим предсказания является интра-режимом, модуль 120 интра-предсказания может использовать выборку блока, который уже был кодирован/декодирован и является смежным с текущим блоком, в качестве опорной выборки. Модуль 120 интра-предсказания может выполнять пространственное предсказание для текущего блока с использованием опорной выборки или генерировать выборки предсказания входного блока путем выполнения пространственного предсказания. Здесь, внутреннее (интра) предсказание может означать интра-предсказание,[00118] When the prediction mode is intra mode, intra prediction module 120 may use a sample of a block that has already been coded/decoded and is adjacent to the current block as a reference sample. Intra-prediction module 120 may perform spatial prediction for the current block using a reference sample, or generate input block prediction samples by performing spatial prediction. Here, intra-prediction can mean intra-prediction,

[00119] Когда режим предсказания является интер-режимом, модуль 111 предсказания движения может извлекать область, которая наилучшим образом согласуется с входным блоком, из опорного изображения при выполнении предсказания движения и выводить вектор движения с использованием извлеченной области. В этом случае, область поиска может быть использована в качестве упомянутой области. Опорное изображение может быть сохранено в буфере 190 опорных картинок. Здесь, когда кодирование/ декодирование для опорного изображения выполнено, оно может быть сохранено в буфере 190 опорных картинок.[00119] When the prediction mode is the inter mode, the motion prediction unit 111 can extract an area that best matches the input block from the reference image when performing motion prediction, and output a motion vector using the extracted area. In this case, the search area may be used as said area. The reference picture may be stored in the reference picture buffer 190 . Here, when encoding/decoding for a reference picture is performed, it may be stored in the reference picture buffer 190 .

[00120] Модуль 112 компенсации движения может генерировать блок предсказания путем выполнения компенсации движения для текущего блока с использованием вектора движения. Здесь, интер-предсказание может означать интер-предсказание или компенсацию движения.[00120] The motion compensation unit 112 may generate a prediction block by performing motion compensation for the current block using the motion vector. Here, inter-prediction may mean inter-prediction or motion compensation.

[00121] Когда значение вектора движения не является целым числом, модуль 111 предсказания движения и модуль 112 компенсации движения могут генерировать блок предсказания путем применения интерполяционного фильтра к частичной области опорной картинки. Чтобы выполнить предсказание между картинками или компенсацию движения над единицей кодирования, может определяться, какой режим из режима пропуска, режима слияния, режима расширенного предсказания вектора движения (AMVP) и режима ссылки на текущую картинку используется для предсказания движения и компенсации движения единицы предсказания, включенной в соответствующую единицу кодирования. Затем, предсказание между картинками или компенсация движения могут выполняться по-разному в зависимости от определенного режима.[00121] When the motion vector value is not an integer, the motion prediction module 111 and the motion compensation module 112 may generate a prediction block by applying an interpolation filter to a partial area of the reference picture. In order to perform inter-picture prediction or motion compensation on a coding unit, which mode of skip mode, merge mode, advanced motion vector prediction (AMVP) mode, and current picture reference mode is used for motion prediction and motion compensation of the prediction unit included in corresponding coding unit. Then, inter-picture prediction or motion compensation may be performed differently depending on the specific mode.

[00122] Вычитатель 125 может генерировать остаточный блок с использованием разности входного блока и блока предсказания. Остаточный блок может называться остаточным сигналом. Остаточный сигнал может означать разность между исходным сигналом и сигналом предсказания. Кроме того, остаточный сигнал может быть сигналом, генерируемым путем преобразования или квантования или преобразования и квантования разности между исходным сигналом и сигналом предсказания. Остаточный блок может быть остаточным сигналом единицы блока.[00122] Subtractor 125 may generate a residual block using the difference between the input block and the prediction block. The residual block may be referred to as a residual signal. The residual signal may mean the difference between the original signal and the prediction signal. In addition, the residual signal may be a signal generated by transforming or quantizing or transforming and quantizing a difference between the original signal and the prediction signal. The residual block may be a block unit residual signal.

[00123] Модуль 130 преобразования может генерировать коэффициент преобразования путем выполнения преобразования остаточного блока и выводить сгенерированный коэффициент преобразования. Здесь, коэффициент преобразования может быть значением коэффициента, генерируемым путем выполнения преобразования остаточного блока. Когда применяется режим пропуска преобразования, модуль 130 преобразования может пропустить преобразование остаточного блока.[00123] The transform unit 130 may generate a transform coefficient by performing a residual block transform, and output the generated transform coefficient. Here, the transform coefficient may be a coefficient value generated by performing a residual block transform. When the conversion skip mode is applied, the conversion unit 130 may skip the conversion of the residual block.

[00124] Квантованный уровень может генерироваться путем применения квантования к коэффициенту преобразования или к остаточному сигналу. Далее, квантованный уровень может также называться коэффициентом преобразования в вариантах осуществления.[00124] The quantized level may be generated by applying quantization to the transform coefficient or to the residual signal. Further, the quantized level may also be referred to as a transform coefficient in the embodiments.

[00125] Модуль 140 квантования может генерировать квантованный уровень путем квантования коэффициента преобразования или остаточного сигнала в соответствии с параметром и выводить сгенерированный квантованный уровень. Здесь, модуль 140 квантования может квантовать коэффициент преобразования с использованием матрицы квантования.[00125] The quantization unit 140 may generate a quantized level by quantizing a transform coefficient or a residual signal according to a parameter, and output the generated quantized level. Here, the quantizer 140 may quantize the transform coefficient using a quantization matrix.

[00126] Модуль 150 энтропийного кодирования может генерировать битовый поток путем выполнения энтропийного кодирования в соответствии с распределением вероятности по значениям, вычисленным модулем 140 квантования, или по значениям параметра кодирования, вычисленным при выполнении кодирования, и выводить сгенерированный битовый поток. Модуль 150 энтропийного кодирования может выполнять энтропийное кодирование информации выборки изображения и информации для декодирования изображения. Например, информация для декодирования изображения может включать синтаксический элемент. [00126] Entropy encoding unit 150 may generate a bitstream by performing entropy encoding according to a probability distribution over values calculated by quantization unit 140 or over encoding parameter values calculated when encoding is performed, and output the generated bitstream. The entropy encoding unit 150 may perform entropy encoding of image sample information and image decoding information. For example, information for decoding an image may include a syntax element.

[00127] Когда применяется энтропийное кодирование, символы представляются таким образом, что меньшее число битов назначается символу, имеющему высокую вероятность генерации, и большее число битов назначается символу, имеющему низкую вероятность генерации, и, таким образом, размер битового потока для символов, подлежащих кодированию, может уменьшаться. Модуль 150 энтропийного кодирования может использовать способ кодирования для энтропийного кодирования, такой как экспоненциальное кодирование Голомба, контекстно-адаптивное кодирование переменной длины (CAVLC), контекстно-адаптивное двоичное арифметическое кодирование (CABAC) и т.д. Например, модуль 150 энтропийного кодирования может выполнять энтропийное кодирование с использованием таблицы кодирования/кода переменной длины (VLC). Кроме того, модуль 150 энтропийного кодирования может выводить способ бинаризации целевого символа и модель вероятности целевого символа/бина и выполнять арифметическое кодирование с использованием выведенного способа бинаризации и контекстной модели.[00127] When entropy encoding is applied, symbols are represented such that fewer bits are assigned to a symbol having a high generation probability and more bits are assigned to a symbol having a low generation probability, and thus the bitstream size for the symbols to be encoded , may decrease. The entropy encoding unit 150 may use an encoding method for entropy encoding such as exponential Golomb coding, context adaptive variable length coding (CAVLC), context adaptive binary arithmetic coding (CABAC), and so on. For example, entropy encoding module 150 may perform entropy encoding using a variable length coding/code (VLC) table. In addition, the entropy encoding unit 150 can derive the target symbol binarization method and the target symbol/bin probability model, and perform arithmetic encoding using the derived binarization method and the context model.

[00128] Чтобы кодировать уровень коэффициента преобразования (квантованный уровень), модуль 150 энтропийного кодирования может преобразовать коэффициент в форме двумерного блока в форму одномерного вектора с использованием способа сканирования коэффициентов преобразования.[00128] In order to encode a transform coefficient level (quantized level), the entropy encoding unit 150 may convert the coefficient in the form of a two-dimensional block into the form of a one-dimensional vector using a transform coefficient scan method.

[00129] Параметр кодирования может включать информацию (флаг, индекс, и т.д.), такую как синтаксический элемент, который кодируется в кодере и сигнализируется в декодер, и информацию, выведенную при выполнении кодирования или декодирования. Параметр кодирования может означать информацию, требуемую при кодировании или декодировании изображения. Например, по меньшей мере одно значение или форма комбинации из размера единицы/блока, глубины единицы/блока, информации разбиения единицы/блока, формы единицы/блока, структуры разбиения единицы/блока, следует ли разбивать в форме квадродерева, следует ли разбивать в форме двоичного дерева, направления разбиения формы двоичного дерева (горизонтальное направление или вертикальное направление), формы разбиения в форме двоичного дерева (симметричное разбиение или асимметричное разбиение), разбита ли текущая единица кодирования путем разбиения троичного дерева, направления (горизонтальное или вертикальное направление) разбиения троичного дерева, типа (симметричный или асимметричный тип) разбиения троичного дерева, разбита ли текущая единица кодирования путем разбиения дерева множества типов, направления (горизонтальное или вертикальное направление) разбиения дерева множества типов, типа (симметричный или асимметричный тип) разбиения дерева множества типов и структуры дерева (двоичное дерево или троичное дерево) разбиения дерева множества типов, режима предсказания (интра-предсказание или интер-предсказание), режима/направления интра-предсказания яркости, режима/направления интра-предсказания цветности, информации интра-разбиения, информации интер-разбиения, флага разбиения блока кодирования, флага разбиения блока предсказания, флага разбиения блока преобразования, способа фильтрации опорной выборки, отвода фильтра опорной выборки, коэффициента фильтра опорной выборки, способа фильтрации блока предсказания, отвода фильтра блока предсказания, коэффициента фильтра блока предсказания, способа фильтрации границы блока предсказания, отвода фильтра границы блока предсказания, коэффициента фильтра границы блока предсказания, режима интра-предсказания, режима интер-предсказания, информации движения, вектора движения, разности векторов движения, индекса опорной картинки, угла интер-предсказания, указателя интер-предсказания, флага использования списка предсказания, списка опорных картинок, опорной картинки, индекса предсказателя вектора движения, кандидата предсказателя вектора движения, списка кандидатов вектора движения, следует ли использовать режим слияния, индекса слияния, кандидата слияния, списка кандидатов слияния, следует ли использовать режим пропуска, типа фильтра интерполяции, отвода фильтра интерполяции, коэффициента фильтра интерполяции, размера вектора движения, точности представления вектора движения, типа преобразования, размера преобразования, информации, используется ли первичное (первое) преобразование, информации, используется ли вторичное преобразование, индекса первичного преобразования, индекса вторичного преобразования, информации, представлен ли остаточный сигнал, шаблона кодированного блока, флага кодированного блока (CBF), параметра квантования, остатка параметра квантования, матрицы квантования, следует ли применять внутриконтурный фильтр, коэффициента внутриконтурного фильтра, отвода внутриконтурного фильтра, формы внутриконтурного фильтра, следует ли применять фильтр устранения блочности, коэффициента фильтра устранения блочности, отвода фильтра устранения блочности, силы фильтра устранения блочности, формы фильтра устранения блочности, следует ли применять адаптивное смещение выборки, значения адаптивного смещения выборки, категории адаптивного смещения выборки, типа адаптивного смещения выборки, следует ли применять адаптивный контурный фильтр, коэффициента адаптивного контурного фильтра, отвода адаптивного контурного фильтра, формы адаптивного контурного фильтра, способа бинаризации/обратной бинаризации, способа определения контекстной модели, способа обновления контекстной модели, следует ли выполнять регулярный режим, следует ли выполнять режим обхода, бина контекста, бина обхода, флага значимого коэффициента, флага последнего значимого коэффициента, кодированного флага для единицы группы коэффициентов, положения последнего значимого коэффициента, флага для того, является ли значение коэффициента большим, чем 1, флага для того, является ли значение коэффициента большим, чем 2, флага для того, является ли значение коэффициента большим, чем 3, информации об остаточном значении коэффициента, информации знака, восстановленной выборки яркости, восстановленной выборки цветности, остаточной выборки яркости, остаточной выборки цветности, коэффициента преобразования яркости, коэффициента преобразования цветности, квантованного уровня яркости, квантованного уровня цветности, способа сканирования уровня коэффициента преобразования, размера области поиска вектора движения на стороне декодера, формы области поиска вектора движения на стороне декодера, числа раз поиска вектора движения на стороне декодера, информации о размере CTU, информации о минимальном размере блока, информации о максимальном размере блока, информации о максимальной глубине блока, информации о минимальной глубине блока, последовательности отображения/вывода изображения, информации идентификации слайса, типа слайса, информации разбиения слайса, информации идентификации мозаичного элемента, типа мозаичного элемента, информации мозаичного разбиения, информации идентификации группы мозаичных элементов, типа группы мозаичных элементов, информации разбиения группы мозаичных элементов, типа картинки, битовой глубины входной выборки, битовой глубины восстановленной выборки, битовой глубины остаточной выборки, битовой глубины коэффициента преобразования, битовой глубины квантованного уровня и информации о сигнале яркости или информации о сигнале цветности могут быть включены в параметр кодирования.[00129] The encoding parameter may include information (flag, index, etc.) such as a syntax element that is encoded in the encoder and signaled to the decoder, and information output when encoding or decoding is performed. The encoding parameter may mean information required when encoding or decoding an image. For example, at least one value or form of combination of unit/block size, unit/block depth, unit/block split information, unit/block shape, unit/block split structure, whether to split in quadtree shape, whether to split in shape of the binary tree, direction of the split the shape of the binary tree (horizontal direction or vertical direction), the shape of the split in the form of the binary tree (symmetric split or asymmetric split), whether the current coding unit is split by splitting the ternary tree, the direction (horizontal or vertical direction) of splitting the ternary tree , the type (symmetric or asymmetric type) of the ternary tree split, whether the current coding unit is split by a set type tree split, the direction (horizontal or vertical direction) of the set type tree split, the type (symmetric or asymmetric type) of the set type tree split, and the tree structure ( binary tree o or ternary tree) split tree of multiple types, prediction mode (intra-prediction or inter-prediction), luma intra-prediction mode/direction, chroma intra-prediction mode/direction, intra-split information, inter-split information, split flag coding block, prediction block split flag, transform block split flag, reference sample filtering method, reference sample filter tap, reference sample filter coefficient, prediction block filtering method, prediction block filter tap, prediction block filter coefficient, prediction block boundary filtering method, tap prediction block boundary filter, prediction block boundary filter coefficient, intra prediction mode, inter prediction mode, motion information, motion vector, motion vector difference, reference picture index, inter prediction angle, inter prediction pointer, prediction list use flag, list of reference of pictures, reference picture, motion vector predictor index, motion vector predictor candidate, motion vector candidate list, whether to use merge mode, merge index, merge candidate, merge candidate list, whether to use skip mode, interpolation filter type, interpolation filter tap, interpolation filter coefficient, motion vector size, motion vector representation precision, transform type, transform size, information whether primary (first) transform is used, information whether secondary transform is used, primary transform index, secondary transform index, information whether residual signal is presented , code block pattern, code block flag (CBF), quantization parameter, quantization parameter remainder, quantization matrix, whether to apply in-loop filter, in-loop filter gain, in-loop filter tap, in-loop shape filter o, whether to apply deblocking filter, deblocking filter coefficient, deblocking filter tap, deblocking filter strength, deblocking filter shape, whether to apply adaptive sampling bias, adaptive sampling bias values, adaptive sampling bias category, adaptive bias type sampling, whether to apply adaptive loop filter, adaptive loop filter coefficient, adaptive loop filter tap, adaptive loop filter shape, binarization/inverse binarization method, context model determination method, context model update method, whether to perform regular mode, whether to perform mode bypass, context bin, bypass bin, significant coefficient flag, last significant coefficient flag, encoded flag for coefficient group unit, position of last significant coefficient, flag for whether coefficient value is large, than 1, a flag for whether the coefficient value is greater than 2, a flag for whether the coefficient value is greater than 3, coefficient residual value information, sign information, recovered luma sample, recovered chrominance sample, residual luminance sample, chrominance residual sampling, luminance transform coefficient, chroma transform coefficient, quantized luma level, quantized chrominance level, transform coefficient level scanning method, decoder-side motion vector search region size, decoder-side motion vector search region shape, number of times of motion vector search at decoder side, CTU size information, minimum block size information, maximum block size information, maximum block depth information, minimum block depth information, picture display/output sequence, slice identification information, slice type, slice, tile identification information, tile type, tile split information, tile group identification information, tile group type, tile group split information, picture type, input sample bit depth, reconstructed sample bit depth, residual sample bit depth , bit depth of the transform coefficient, bit depth of the quantized level, and luma information or chroma information may be included in the coding parameter.

[00130] Здесь, сигнализация флага или индекса может означать, что соответствующий флаг или индекс энтропийно закодирован и включен в битовый поток кодером, и может означать, что соответствующий флаг или индекс энтропийно декодируется из битового потока декодером.[00130] Here, flag or index signaling may mean that the corresponding flag or index is entropy encoded and included in the bitstream by the encoder, and may mean that the corresponding flag or index is entropy decoded from the bitstream by the decoder.

[00131] Когда устройство 100 кодирования выполняет кодирование посредством интер-предсказания, кодированное текущее изображение может быть использовано как опорное изображение для другого изображения, которое обрабатывается после этого. Соответственно, устройство 100 кодирования может восстанавливать или декодировать закодированное текущее изображение, или сохранять восстановленное или декодированное изображение как опорное изображение в буфере 190 опорных картинок.[00131] When the encoder 100 performs inter-prediction encoding, the encoded current picture can be used as a reference picture for another picture that is processed thereafter. Accordingly, the encoding device 100 may restore or decode the encoded current picture, or store the restored or decoded picture as a reference picture in the reference picture buffer 190 .

[00132] Квантованный уровень может деквантоваться в модуле 160 деквантования или может обратно преобразовываться в модуле 170 обратного преобразования. Деквантованный и/или обратно преобразованный коэффициент может суммироваться с блоком предсказания посредством сумматора 175. Путем суммирования деквантованного и/или обратно преобразованного коэффициента с блоком предсказания может генерироваться восстановленный блок. Здесь, деквантованный и/или обратно преобразованный коэффициент может означать коэффициент, над которым выполнено по меньшей мере одно из деквантования и обратного преобразования, и может означать восстановленный остаточный блок.[00132] The quantized level may be dequantized in dequantization module 160, or may be inversely transformed in inverse transform module 170. The dequantized and/or inversely transformed coefficient may be added to the prediction block via adder 175. By adding the dequantized and/or inversely transformed coefficient to the prediction block, a reconstructed block may be generated. Here, the dequantized and/or inversely transformed coefficient may mean a coefficient on which at least one of dequantization and inverse transformation has been performed, and may mean a reconstructed residual block.

[00133] Восстановленный блок может проходить через модуль 180 фильтрации. Модуль 180 фильтрации может применять по меньшей мере одно из фильтра устранения блочности, адаптивного смещения выборки (SAO) и адаптивного контурного фильтра (ALF) к восстановленной выборке, восстановленному блоку или восстановленному изображению. Модуль 180 фильтрации может упоминаться как контурный фильтр.[00133] The recovered block may pass through the filter module 180. Filter module 180 may apply at least one of a deblocking filter, an adaptive sample offset (SAO), and an adaptive loop filter (ALF) to the reconstructed sample, reconstructed block, or reconstructed image. The filter module 180 may be referred to as a loop filter.

[00134] Фильтр устранения блочности может устранять блочное искажение, генерируемое на границах между блоками. Для определения того, следует ли применять фильтр устранения блочности, может определяться, следует ли применять фильтр устранения блочности к текущему блоку, на основе выборок, включенных в различные строки или столбцы, которые включены в блок. Когда фильтр устранения блочности применяется к блоку, другой фильтр может быть применен в соответствии с требуемой силой (уровнем) фильтрации устранения блочности.[00134] The deblocking filter can deblock the block distortion generated at the boundaries between blocks. In order to determine whether a deblocking filter should be applied, it may be determined whether a deblocking filter should be applied to the current block based on the samples included in the various rows or columns that are included in the block. When a deblocking filter is applied to a block, a different filter may be applied according to the desired strength (level) of the deblocking filtering.

[00135] Для того чтобы скомпенсировать ошибку кодирования, надлежащее значение смещения может быть добавлено к значению выборки с использованием адаптивного смещения выборки. Адаптивное смещение выборки может корректировать смещение изображения с устраненной блочностью относительно исходного изображения на единицу выборки. Может использоваться способ разбиения выборок изображения на предопределенное количество областей, определения области, к которой применяется смещение, и применения смещения к определенной области, или способ применения смещения с учетом краевой информации по каждой выборке.[00135] In order to compensate for an encoding error, an appropriate bias value may be added to the sample value using an adaptive sample bias. The adaptive sampling bias can correct the bias of the deblocked image relative to the original image per sample unit. A method of dividing the image samples into a predetermined number of areas, determining the area to which the offset is applied, and applying the offset to the determined area, or a method of applying the offset based on edge information on each sample may be used.

[00136] Адаптивный контурный фильтр может выполнять фильтрацию на основе результата сравнения отфильтрованного восстановленного изображения и исходного изображения. Выборки, включенные в изображение, могут разбиваться на предопределенные группы, может определяться фильтр для применения к каждой группе, и может выполняться дифференциальная фильтрация для каждой группы. Информация о том, следует ли применять ALF, может сигнализироваться посредством единиц кодирования (CU), и форма и коэффициент ALF, подлежащего применению к каждому блоку, могут варьироваться. [00136] The adaptive edge filter may perform filtering based on a comparison result of the filtered reconstructed image and the original image. The samples included in the image may be divided into predefined groups, a filter may be defined to apply to each group, and differential filtering may be performed for each group. Whether or not ALF should be applied may be signaled by coding units (CUs), and the shape and factor of the ALF to be applied to each block may vary.

[00137] Восстановленный блок или восстановленное изображение, после прохождения через модуль 180 фильтрации, может сохраняться в буфере 190 опорных картинок. Восстановленный блок, обработанный модулем 180 фильтрации, может быть частью опорного изображения. То есть, опорное изображение представляет собой восстановленное изображение, составленное из восстановленных блоков, обработанных модулем 180 фильтрации. Сохраненное опорное изображение может быть использовано позже в интер-предсказании или компенсации движения.[00137] The restored block or restored image, after passing through the filter module 180, may be stored in the reference picture buffer 190. The reconstructed block processed by filter module 180 may be part of a reference image. That is, the reference image is a reconstructed image composed of the reconstructed blocks processed by the filter module 180 . The stored reference image can be used later in inter-prediction or motion compensation.

[00138] Фиг. 2 представляет собой блок-схему, показывающую конфигурацию устройства декодирования в соответствии с вариантом осуществления, в котором применимо настоящее изобретение.[00138] FIG. 2 is a block diagram showing a configuration of a decoding apparatus according to an embodiment to which the present invention is applicable.

[00139] Устройство 200 декодирования может представлять собой декодер, устройство декодирования видео или устройство декодирования изображения.[00139] The decoding device 200 may be a decoder, a video decoding device, or an image decoding device.

[00140] Со ссылкой на фиг. 2, устройство 200 декодирования может включать в себя модуль 210 энтропийного декодирования, модуль 220 деквантования, модуль 230 обратного преобразования, модуль 240 интра-предсказания, модуль 250 компенсации движения, сумматор 225, модуль 260 фильтрации и буфер 270 опорных картинок.[00140] With reference to FIG. 2, the decoding apparatus 200 may include an entropy decoding unit 210, a dequantization unit 220, an inverse transform unit 230, an intra prediction unit 240, a motion compensation unit 250, an adder 225, a filter unit 260, and a reference picture buffer 270.

[00141] Устройство 200 декодирования может принимать битовый поток, выведенный из устройства 100 кодирования. Устройство 200 декодирования может принимать битовый поток, сохраненный в считываемом компьютером носителе записи, или может принимать битовый поток, передаваемый путем потоковой передачи посредством проводной/беспроводной среды передачи. Устройство 200 декодирования может декодировать битовый поток с использованием интра-режима или интер-режима. Кроме того, устройство 200 декодирования может генерировать восстановленное изображение, генерируемое путем декодирования, или декодированное изображение и выводить восстановленное изображение или декодированное изображение.[00141] The decoder 200 may receive a bitstream output from the encoder 100. The decoding apparatus 200 may receive a bitstream stored in a computer-readable recording medium, or may receive a bitstream transmitted by streaming via a wired/wireless transmission medium. The decoder 200 may decode the bitstream using intra mode or inter mode. In addition, the decoding apparatus 200 can generate a reconstructed image generated by decoding or a decoded image, and output the reconstructed image or the decoded image.

[00142] Когда режим предсказания, используемый при декодировании, является интра-режимом, переключатель может быть переключен на интра-режим. Альтернативно, когда режим предсказания, используемый при декодировании, является интер-режимом, переключатель может быть переключен на интер-режим.[00142] When the prediction mode used in decoding is intra mode, the switch may be switched to intra mode. Alternatively, when the prediction mode used in decoding is the inter mode, the switch may be switched to the inter mode.

[00143] Устройство 200 декодирования может получать восстановленный остаточный блок путем декодирования входного битового потока и генерировать блок предсказания. Когда восстановленный остаточный блок и блок предсказания получены, устройство 200 декодирования может генерировать восстановленный блок, который становится целью декодирования, путем суммирования восстановленного остаточного блока с блоком предсказания. Целевой блок декодирования может называться текущим блоком.[00143] The decoder 200 may obtain the recovered residual block by decoding the input bitstream and generate a prediction block. When the recovered residual block and the prediction block are obtained, the decoding apparatus 200 may generate a recovered block that becomes a decoding target by summing the recovered residual block with the prediction block. The decoding target block may be referred to as the current block.

[00144] Модуль 210 энтропийного декодирования может генерировать символы путем энтропийного декодирования битового потока в соответствии с распределением вероятности. Сгенерированные символы могут включать в себя символ формы квантованного уровня. Здесь, способ энтропийного декодирования может быть процессом, обратным способу энтропийного кодирования, описанному выше.[00144] The entropy decoding module 210 may generate symbols by entropy decoding the bitstream according to a probability distribution. The generated symbols may include a quantized level shape symbol. Here, the entropy decoding method may be a reverse process to the entropy encoding method described above.

[00145] Для того чтобы декодировать уровень коэффициента преобразования (квантованный уровень), модуль 210 энтропийного декодирования может преобразовать коэффициент в форме одномерного вектора в форму двумерного блока с использованием способа сканирования коэффициента преобразования.[00145] In order to decode the transform coefficient level (quantized level), the entropy decoding module 210 may transform the coefficient in the form of a one-dimensional vector into the form of a two-dimensional block using a transform coefficient scan method.

[00146] Квантованный уровень может быть деквантован в модуле 220 деквантования или обратно преобразован в модуле 230 обратного преобразования. Квантованный уровень может быть результатом деквантования и/или обратного преобразования и может генерироваться как восстановленный остаточный блок. Здесь, модуль 220 деквантования может применять матрицу квантования к квантованному уровню.[00146] The quantized level may be dequantized in dequantizing module 220 or inverted in inverse transform module 230 . The quantized level may be the result of dequantization and/or inverse transformation and may be generated as a reconstructed residual block. Here, dequantizer 220 may apply a quantization matrix to the quantized level.

[00147] Когда используется интра-режим, модуль 240 интра-предсказания может генерировать блок предсказания путем выполнения, для текущего блока, пространственного предсказания, которое использует значение выборки блока, смежного с целевым блоком декодирования, и который уже был декодирован.[00147] When intra mode is used, intra prediction module 240 may generate a prediction block by performing, for the current block, a spatial prediction that uses a sample value of a block adjacent to a decoding target block and that has already been decoded.

[00148] Когда используется интер-режим, модуль 250 компенсации движения может генерировать блок предсказания путем выполнения, для текущего блока, компенсации движения, которая использует вектор движения и опорное изображение, сохраненное в буфере 270 опорных картинок.[00148] When the inter mode is used, the motion compensation module 250 may generate a prediction block by performing, for the current block, motion compensation that uses a motion vector and a reference image stored in the reference picture buffer 270.

[00149] Сумматор 225 может генерировать восстановленный блок путем суммирования восстановленного остаточного блока с блоком предсказания. Модуль 260 фильтрации может применять по меньшей мере одно из фильтра устранения блочности, адаптивного смещения выборки и адаптивного контурного фильтра к восстановленному блоку или восстановленному изображению. Модуль 260 фильтрации может выводить восстановленное изображение. Восстановленный блок или восстановленное изображение может сохраняться в буфере 270 опорных картинок и использоваться при выполнении интер-предсказания. Восстановленный блок, обработанный модулем 260 фильтрации, может быть частью опорного изображения. То есть, опорное изображение представляет собой восстановленное изображение, составленное из восстановленных блоков, обработанных модулем 260 фильтрации. Сохраненное опорное изображение может быть использовано позже при интер-предсказании или компенсации движения.[00149] The adder 225 may generate a recovered block by adding the recovered residual block to the prediction block. The filter module 260 may apply at least one of a deblocking filter, an adaptive sample bias, and an adaptive loop filter to the reconstructed block or reconstructed image. The filter module 260 may output the reconstructed image. The reconstructed block or reconstructed image may be stored in the reference picture buffer 270 and used when performing inter-prediction. The reconstructed block processed by filter module 260 may be part of a reference image. That is, the reference image is a reconstructed image composed of the reconstructed blocks processed by the filter module 260 . The stored reference image can be used later for inter-prediction or motion compensation.

[00150] Фиг. 3 представляет собой вид, схематично показывающий структуру разбиения изображения при кодировании и декодировании изображения. Фиг. 3 схематично показывает пример разбиения одной единицы во множество более низких единиц.[00150] FIG. 3 is a view schematically showing an image partition structure in image encoding and decoding. Fig. 3 schematically shows an example of splitting one unit into many lower units.

[00151] Для того чтобы эффективно разбивать изображение, при кодировании и декодировании, может быть использована единица кодирования (CU). Единица кодирования может быть использована как базовая единица при кодировании/декодировании изображения. Кроме того, единица кодирования может быть использована в качестве единицы для различения режима интра-предсказания и режима интер-предсказания при кодировании/декодировании изображения. Единица кодирования может быть базовой единицей, используемой для предсказания, преобразования, квантования, обратного преобразования, деквантования или процесса кодирования/декодирования коэффициента преобразования. [00151] In order to efficiently partition an image, a coding unit (CU) can be used in encoding and decoding. A coding unit may be used as a base unit for encoding/decoding an image. In addition, the coding unit may be used as a unit for distinguishing between the intra prediction mode and the inter prediction mode in image encoding/decoding. A coding unit may be a base unit used for prediction, transform, quantization, inverse transform, dequantization, or a transform coefficient encoding/decoding process.

[00152] Со ссылкой на фиг. 3, изображение 300 последовательно разбивается на наибольшую единицу кодирования (LCU), и единица LCU определяется как структура разбиения. Здесь, LCU может быть использована в том же смысле, что и единица дерева кодирования (CTU). Разбиение единицы может означать разбиение блока, ассоциированного с единицей. В информацию разбиения блока может быть включена информация о глубине единицы. Информация глубины может представлять число раз и/или степень, в которой разбивается единица. Одна единица может разбиваться на множество единиц более низкого уровня, иерархически ассоциированных с информацией глубины на основе древовидной структуры. Иными словами, некоторая единица и единица более низкого уровня, генерируемая путем разбиения данной единицы, могут соответствовать узлу и дочернему узлу данного узла, соответственно. Каждая разделенная более низкая единица может иметь информацию глубины. Информация глубины может представлять собой информацию, представляющую размер CU, и может быть сохранена в каждой CU. Глубина единицы представляет число раз и/или степеней разбиения единицы. Поэтому информация разбиения единицы более низкого уровня может содержать информацию о размере единицы более низкого уровня.[00152] With reference to FIG. 3, the picture 300 is sequentially partitioned into a largest coding unit (LCU), and the LCU is defined as a partition structure. Here, an LCU can be used in the same sense as a coding tree unit (CTU). Splitting a unit may mean splitting a block associated with a unit. Unit-depth information may be included in the block split information. The depth information may represent the number of times and/or the extent to which the unit is broken. One unit may be broken down into multiple lower level units associated hierarchically with depth information based on a tree structure. In other words, a certain unit and a lower-level unit generated by splitting a given unit can correspond to a node and a child node of this node, respectively. Each subdivided lower unit may have depth information. The depth information may be information representing the size of a CU and may be stored in each CU. The depth of the unit represents the number of times and/or degrees of partitioning of the unit. Therefore, the split information of the lower level unit may contain information about the size of the lower level unit.

[00153] Структура разбиения может означать распределение единицы кодирования (CU) в пределах LCU 310. Такое распределение может быть определено в соответствии с тем, следует ли разбивать одну CU на множество (положительное целое число, равное или большее, чем 2, включая 2, 4, 8, 16 и т.д.) CU. Горизонтальный размер и вертикальный размер CU, генерируемой путем разбиения, может соответственно быть половиной горизонтального размера и вертикального размера CU перед разбиением или может соответственно иметь размеры меньше, чем горизонтальный размер и вертикальный размер перед разбиением, в соответствии с числом раз разбиения. CU может рекурсивно разбиваться во множество CU. Путем рекурсивного разбиения, по меньшей мере одно из высоты и ширины CU после разбиения может уменьшаться по сравнению с по меньшей мере одним из высоты и ширины CU перед разбиением. Разбиение CU может рекурсивно выполняться до предопределенной глубины или предопределенного размера. Например, глубина LCU может быть равна 0, а глубина наименьшей единицы кодирования (SCU) может быть предопределенной максимальной глубиной. Здесь, LCU может представлять собой единицу кодирования, имеющую максимальный размер единицы кодирования, и SCU может представлять собой единицу кодирования, имеющую минимальный размер единицы кодирования, как описано выше. Разбиение начинается от LCU 310, глубина CU возрастает на 1, по мере того как горизонтальный размер и/или вертикальный размер CU уменьшается путем разбиения. Например, для каждой глубины, CU, которая не разделена, может иметь размер 2N×2N. Также, в случае CU, которая разделена, CU с размером 2N×2N может разбиваться на четыре CU с размером N×N. Размер N может уменьшаться наполовину, когда глубина возрастает на 1.[00153] A split structure may mean a distribution of a coding unit (CU) within an LCU 310. Such a distribution may be determined according to whether one CU should be split into a plurality (a positive integer equal to or greater than 2, including 2, 4, 8, 16, etc.) CU. The horizontal size and vertical size of the CU generated by splitting may respectively be half of the horizontal size and vertical size of the CU before splitting, or may respectively be smaller than the horizontal size and vertical size before splitting, according to the number of times of splitting. A CU can be recursively split into multiple CUs. By recursively splitting, at least one of the height and width of the CU after splitting may be reduced compared to at least one of the height and width of the CU before splitting. Splitting a CU may be recursively performed to a predetermined depth or a predetermined size. For example, the LCU depth may be 0 and the smallest coding unit (SCU) depth may be a predetermined maximum depth. Here, an LCU may be a coding unit having a maximum coding unit size, and an SCU may be a coding unit having a minimum coding unit size, as described above. The split starts from LCU 310, the depth of the CU increases by 1 as the horizontal size and/or vertical size of the CU is reduced by the split. For example, for each depth, a CU that is not divided may have a size of 2N×2N. Also, in the case of a CU that is partitioned, a CU with a size of 2N×2N may be split into four CUs with a size of N×N. The size of N can decrease by half when the depth increases by 1.

[00154] Кроме того, информация о том, следует ли разбивать CU, может быть представлена с использованием информации разбиения CU. Информация разбиения может представлять собой 1-битовую информацию. Все CU, за исключением SCU, могут включать информацию разбиения. Например, когда значение информации разбиения равно первому значению, CU может не разбиваться, когда значение информации разбиения равно второму значению, CU может разбиваться. [00154] In addition, information about whether to split a CU can be represented using CU split information. The split information may be 1-bit information. All CUs except SCUs may include split information. For example, when the value of the split information is equal to the first value, the CU may not be split, when the value of the split information is equal to the second value, the CU may be split.

[00155] Со ссылкой на фиг. 3, LCU, имеющая глубину 0, может представлять собой 64×64 блок. 0 может быть минимальной глубиной. SCU, имеющая глубину 3, может представлять собой 8×8 блок. 3 может быть максимальной глубиной. CU в виде 32×32 блока и 16×16 блока могут быть соответственно представлены как глубина 1 и глубина 2. [00155] With reference to FIG. 3, an LCU having a depth of 0 may be a 64x64 block. 0 can be the minimum depth. An SCU having a depth of 3 may be an 8x8 block. 3 can be the maximum depth. CUs as 32x32 blocks and 16x16 blocks can be respectively represented as depth 1 and depth 2.

[00156] Например, когда одна единица кодирования разбивается на четыре единицы кодирования, горизонтальный размер и вертикальный размер четырех разделенных единиц кодирования могут быть равны половинному размеру горизонтального и вертикального размера CU перед разбиением. В одном варианте осуществления, когда единица кодирования, имеющая размер 32×32, разбивается на четыре единицы кодирования, каждая из четырех разделенных единиц кодирования может иметь размер 16×16. Когда одна единица кодирования разбивается на четыре единицы кодирования, можно сказать, что единица кодирования может разбиваться в форму квадродерева.[00156] For example, when one coding unit is split into four coding units, the horizontal size and vertical size of the four split coding units may be equal to half the size of the horizontal and vertical size of the CU before splitting. In one embodiment, when a coding unit having a size of 32x32 is split into four coding units, each of the four divided coding units may have a size of 16x16. When one coding unit is split into four coding units, it can be said that the coding unit can be split into a quadtree shape.

[00157] Например, когда одна единица кодирования разбита на две под-единицы кодирования, горизонтальный или вертикальный размер (ширина или высота) каждой из двух под-единиц кодирования может быть половиной горизонтального или вертикального размера исходной единицы кодирования. Например, когда единица кодирования, имеющая размер 32×32, вертикально разбита на две под-единицы кодирования, каждая из двух под-единиц кодирования может иметь размер 16×32. Например, когда единица кодирования, имеющая размер 8×32, горизонтально разбита на две под-единицы кодирования, каждая из двух под-единиц кодирования может иметь размер 8×16. Когда одна единица кодирования разбита на две под-единицы кодирования, можно сказать, что единица кодирования двоично разбита или разбита посредством структуры разбиения двоичного дерева.[00157] For example, when one coding unit is split into two sub-coding units, the horizontal or vertical size (width or height) of each of the two sub-coding units may be half the horizontal or vertical size of the original coding unit. For example, when a coding unit having a size of 32×32 is vertically split into two sub-coding units, each of the two sub-coding units may have a size of 16×32. For example, when a coding unit having a size of 8×32 is horizontally split into two sub-coding units, each of the two sub-coding units may have a size of 8×16. When one coding unit is split into two sub-coding units, the coding unit can be said to be binary split or split by a binary tree split structure.

[00158] Например, когда одна единица кодирования разбита на три под-единицы кодирования, горизонтальный или вертикальный размер единицы кодирования может разбиваться в отношении 1:2:1, тем самым формируя три под-единицы кодирования, горизонтальный или вертикальный размеры которых находятся в отношении 1:2:1. Например, когда единица кодирования, имеющая размер 16×32, горизонтально разбита на три под-единицы кодирования, три под-единицы кодирования могут иметь размеры 16×8, 16×16 и 16×8, соответственно, в порядке от самой верхней до самой нижней под-единицы кодирования. Например, когда единица кодирования, имеющая размер 32×32 вертикально разделяется на три под-единицы кодирования, три под-единицы кодирования могут иметь размеры 8×32, 16×32 и 8×32, соответственно, в порядке от левой до правой под-единицы кодирования. Когда одна единица кодирования разбита на три под-единицы кодирования, можно сказать, что единица кодирования троично разбита или разбита посредством структуры разбиения троичного дерева.[00158] For example, when one coding unit is split into three coding sub-units, the horizontal or vertical dimension of the coding unit may be split in a ratio of 1:2:1, thereby forming three sub-coding units whose horizontal or vertical dimensions are in the ratio 1:2:1. For example, when a coding unit having a size of 16x32 is horizontally divided into three coding sub-units, the three coding sub-units may have sizes of 16x8, 16x16, and 16x8, respectively, in order from top to bottom. lower sub-unit of coding. For example, when a coding unit having a size of 32x32 is vertically divided into three coding sub-units, the three coding sub-units may have sizes of 8x32, 16x32, and 8x32, respectively, in order from left to right sub- coding units. When one coding unit is split into three sub-coding units, the coding unit can be said to be ternary split or split by a ternary tree splitting structure.

[00159] На фиг. 3, единица дерева кодирования (CTU) 320 является примером CTU, к которой применяются структура разбиения квадродерева, структура разбиения двоичного дерева и структура разбиения троичного дерева.[00159] FIG. 3, a coding tree unit (CTU) 320 is an example of a CTU to which a quadtree split structure, a binary tree split structure, and a ternary tree split structure are applied.

[00160] Как описано выше, для того чтобы разбить CTU, может применяться по меньшей мере одна из структуры разбиения квадродерева, структуры разбиения двоичного дерева и структуры разбиения троичного дерева. Различные структуры древовидного разбиения могут последовательно применяться к CTU, в соответствии с предопределенным порядком приоритета. Например, структура разбиения квадродерева может преимущественным образом применяться к CTU. Единица кодирования, которая больше не может быть разбита с использованием структуры разбиения квадродерева, может соответствовать листовому узлу квадродерева. Единица кодирования, соответствующая листовому узлу квадродерева, может служить в качестве корневого узла структуры разбиения двоичного и/или троичного дерева. То есть, единица кодирования, соответствующая листовому узлу квадродерева, может быть далее разбита согласно структуре разбиения двоичного дерева или структуре разбиения троичного дерева или может больше не разбиваться. Поэтому, путем запрещения блоку кодирования, который является результатом разбиения двоичного дерева или разбиения троичного дерева единицы кодирования, соответствующей листовому узлу квадродерева, подвергаться дальнейшему разбиению квадродерева, может эффективно выполняться разбиение блока и/или сигнализация информации разбиения.[00160] As described above, in order to split the CTU, at least one of a quadtree split structure, a binary tree split structure, and a ternary tree split structure can be applied. Various tree partitioning structures may be sequentially applied to CTUs, according to a predetermined order of precedence. For example, the quadtree split structure may be advantageously applied to CTUs. A coding unit that can no longer be split using a split quadtree structure may correspond to a leaf node of the quadtree. The coding unit corresponding to a quadtree leaf node may serve as the root node of a binary and/or ternary tree partitioning structure. That is, a coding unit corresponding to a quadtree leaf node may be further split according to a binary tree splitting structure or a ternary tree splitting structure, or may no longer be split. Therefore, by preventing a coding block that is the result of splitting a binary tree or splitting a ternary tree of a coding unit corresponding to a leaf node of a quadtree from further splitting the quadtree, splitting the block and/or signaling the splitting information can be efficiently performed.

[00161] Тот факт, что единица кодирования, соответствующая узлу квадродерева, является разделенной, может сигнализироваться с использованием информации квадро-разбиения. Информация квадро-разбиения, имеющая первое значение (например, “1”), может указывать, что текущая единица кодирования разбита согласно структуре разбиения квадродерева. Информация квадро-разбиения, имеющая второе значение (например, “0”), может указывать, что текущая единица кодирования не разбита согласно структуре разбиения квадродерева. Информация квадро-разбиения может представлять собой флаг, имеющий предопределенную длину (например, один бит).[00161] The fact that a coding unit corresponding to a quadtree node is split can be signaled using quad split information. The quad-split information having a first value (eg, “1”) may indicate that the current coding unit is split according to a quadtree split structure. The quad-split information having a second value (eg, “0”) may indicate that the current coding unit is not split according to a quadtree split structure. The squaring information may be a flag having a predetermined length (eg, one bit).

[00162] Может не иметься приоритета между разбиением двоичного дерева и разбиением троичного дерева. То есть, единица кодирования, соответствующая листовому узлу квадродерева, может далее подвергаться произвольному разбиению из разбиения двоичного дерева и разбиения троичного дерева. Кроме того, единица кодирования, сгенерированная посредством разбиения двоичного дерева или разбиения троичного дерева, может подвергаться дальнейшему разбиению двоичного дерева или дальнейшему разбиению троичного дерева или может не разбиваться далее.[00162] There may be no priority between splitting a binary tree and splitting a ternary tree. That is, a coding unit corresponding to a leaf node of the quadtree may further be subjected to an arbitrary split from a binary tree split and a ternary tree split. In addition, a coding unit generated by binary tree splitting or ternary tree splitting may be subject to further binary tree splitting or further ternary tree splitting, or may not be split further.

[00163] Древовидная структура, в которой не имеется приоритета среди разбиения двоичного дерева и разбиения троичного дерева, упоминается как структура дерева множества типов. Единица кодирования, соответствующая листовому узлу квадродерева, может служить в качестве корневого узла дерева множества типов. То, следует ли разбивать единицу кодирования, которая соответствует узлу дерева множества типов, может сигнализироваться с использованием по меньшей мере одной из информации указания разбиения дерева множества типов, информации направления разбиения и информации дерева разбиения. Для разбиения единицы кодирования, соответствующей узлу дерева множества типов, информация указания разбиения дерева множества типов, направление разбиения и информация дерева разбиения могут последовательно сигнализироваться.[00163] A tree structure in which there is no priority among binary tree splitting and ternary tree splitting is referred to as a multitype tree structure. A coding unit corresponding to a leaf node of a quadtree can serve as the root node of a tree of a set of types. Whether or not to split a coding unit that corresponds to a tree node of the plurality of types may be signaled using at least one of the multiple type tree split indication information, the split direction information, and the split tree information. To split a coding unit corresponding to a tree node of the set of types, the split type tree split indication information, split direction, and split tree information may be sequentially signaled.

[00164] Информация указания разбиения дерева множества типов, имеющая первое значение (например, “1”), может указывать, что текущая единица кодирования должна подвергаться разбиению дерева множества типов. Информация указания разбиения дерева множества типов, имеющая второе значение (например, “0”), может указывать, что текущая единица кодирования не должна подвергаться разбиению дерева множества типов.[00164] The set type tree split indication information having a first value (eg, “1”) may indicate that the current coding unit is to be subjected to a set type tree split. The type set tree split indication information having a second value (eg, “0”) may indicate that the current coding unit should not be subject to type set tree split.

[00165] Когда единица кодирования, соответствующая узлу дерева множества типов, дополнительно разбивается согласно структуре разбиения дерева множества типов, единица кодирования может включать информацию направления разбиения. Информация направления разбиения может указывать, в каком направлении следует разбивать текущую единицу кодирования для разбиения дерева множества типов. Информация направления разбиения, имеющая первое значение (например, “1”), может указывать, что текущая единица кодирования должна разбиваться по вертикали. Информация направления разбиения, имеющая второе значение (например, “0”), может указывать, что текущая единица кодирования должна разбиваться по горизонтали.[00165] When a coding unit corresponding to a tree node of the set of types is further split according to a splitting structure of the set of type tree, the coding unit may include splitting direction information. The split direction information may indicate in which direction to split the current coding unit to split the tree of the plurality of types. The split direction information having a first value (eg, “1”) may indicate that the current coding unit is to be split vertically. Split direction information having a second value (eg, “0”) may indicate that the current coding unit should be split horizontally.

[00166] Когда единица кодирования, соответствующая узлу дерева множества типов, дополнительно разбивается согласно структуре разбиения дерева множества типов, текущая единица кодирования может включать информацию дерева разбиения. Информация дерева разбиения может указывать структуру дерева разбиения, которая должна использоваться для разбиения узла дерева множества типов. Информация дерева разбиения, имеющая первое значение (например, “1”), может указывать, что текущая единица кодирования должна разбиваться согласно структуре разбиения двоичного дерева. Информация дерева разбиения, имеющая второе значение (например, “0”), может указывать, что текущая единица кодирования должна разбиваться согласно структуре разбиения троичного дерева.[00166] When a coding unit corresponding to a node of a tree of a set of types is further split according to a splitting structure of a tree of a set of types, the current coding unit may include splitting tree information. The split tree information may indicate a split tree structure to be used to split a tree node of the plurality of types. The split tree information having a first value (eg, “1”) may indicate that the current coding unit is to be split according to a binary tree split structure. The split tree information having a second value (eg, "0") may indicate that the current coding unit is to be split according to a ternary tree split structure.

[00167] Информация указания разбиения, информация дерева разбиения и информация направления разбиения могут, каждая, представлять собой флаг, имеющий предопределенную длину (например, один бит).[00167] The split indication information, the split tree information, and the split direction information may each be a flag having a predetermined length (eg, one bit).

[00168] По меньшей мере любая одна из информации указания разбиения квадродерева, информации указания разбиения дерева множества типов, информации направления разбиения и информации дерева разбиения может энтропийно кодироваться/декодироваться. Для энтропийного кодирования/декодирования этих типов информации, может использоваться информация о соседней единице кодирования, смежной с текущей единицей кодирования. Например, существует высокая вероятность того, что тип разбиения (разбита или неразбита, дерево разбиения и/или направление разбиения) левой соседней единицы кодирования и/или верхней соседней единицы кодирования текущей единицы кодирования подобен таковому для текущей единицы кодирования. Поэтому, контекстная информация для энтропийного кодирования/декодирования информации о текущей единице кодирования может быть выведена из информации о соседних единицах кодирования. Информация о соседних единицах кодирования может включать по меньшей мере любое одно из информации квадро-разбиения, информации указания разбиения дерева множества типов, информации направления разбиения и информации дерева разбиения.[00168] At least any one of quadtree split indication information, multiple type tree split indication information, split direction information, and split tree information can be entropy encoded/decoded. For entropy encoding/decoding of these types of information, information about a neighboring coding unit adjacent to the current coding unit may be used. For example, there is a high probability that the split type (split or unsplit, split tree and/or split direction) of the left neighbor coding unit and/or top neighbor coding unit of the current coding unit is similar to that of the current coding unit. Therefore, context information for entropy encoding/decoding information about the current coding unit can be derived from information about neighboring coding units. The neighbor coding unit information may include at least any one of quad split information, multiple type tree split indication information, split direction information, and split tree information.

[00169] В качестве другого примера, из разбиения двоичного дерева и разбиения троичного дерева, предпочтительно может выполняться разбиение двоичного дерева. То есть, текущая единица кодирования может главным образом подвергаться разбиению двоичного дерева, и затем единица кодирования, соответствующая листовому узлу двоичного дерева, может быть установлена в качестве корневого узла для разбиения троичного дерева. В этом случае, ни разбиение квадродерева, ни разбиение двоичного дерева может не выполняться над единицей кодирования, соответствующей узлу троичного дерева.[00169] As another example, from binary tree splitting and ternary tree splitting, binary tree splitting can preferably be performed. That is, the current coding unit may be mainly subjected to splitting the binary tree, and then the coding unit corresponding to the leaf node of the binary tree may be set as the root node for splitting the ternary tree. In this case, neither quadtree splitting nor binary tree splitting may be performed on the coding unit corresponding to the ternary tree node.

[00170] Единица кодирования, которая не может разбиваться согласно структуре разбиения квадродерева, структуре разбиения двоичного дерева и/или структуре разбиения троичного дерева, становится базовой единицей для кодирования, предсказания и/или преобразования. То есть, единица кодирования не может далее разбиваться для предсказания и/или преобразования. Поэтому, информация структуры разбиения и информация разбиения, используемая для разбиения единицы кодирования в единицы предсказания и/или единицы преобразования, может не быть представлена в битовом потоке.[00170] A coding unit that cannot be split according to a quadtree split structure, a binary tree split structure, and/or a ternary tree split structure becomes a base unit for encoding, prediction, and/or transformation. That is, the coding unit cannot be further split for prediction and/or transformation. Therefore, split structure information and split information used to split a coding unit into prediction units and/or transform units may not be represented in the bitstream.

[00171] Однако, когда размер единицы кодирования (т.е., базовой единицы для разбиения) больше, чем размер максимального блока преобразования, единица кодирования может рекурсивно разбиваться до тех пор, пока размер единицы кодирования не уменьшится, чтобы стать равным или меньшим, чем размер максимального блока преобразования. Например, когда размер единицы кодирования равен 64×64 и когда размер максимального блока преобразования равен 32×32, единица кодирования может разбиваться на четыре 32×32 блока для преобразования. Например, когда размер единицы кодирования равен 32×64 и размер максимального блока преобразования равен 32×32, единица кодирования может разбиваться на два 32×32 блока для преобразования. В этом случае, разбиение единицы кодирования для преобразования не сигнализируется отдельно и может определяться путем сравнения между горизонтальным или вертикальным размером единицы кодирования и горизонтальным или вертикальным размером максимального блока преобразования. Например, когда горизонтальный размер (ширина) единицы кодирования больше, чем горизонтальный размер (ширина) максимального блока преобразования, единица кодирования может быть вертикально разделена пополам. Например, когда вертикальный размер (длина) единицы кодирования больше, чем вертикальный размер (длина) максимального блока преобразования, единица кодирования может быть горизонтально разделена пополам.[00171] However, when the size of a coding unit (i.e., the base unit to split) is larger than the size of the maximum transform unit, the coding unit may be recursively split until the size of the coding unit decreases to be equal to or smaller than than the maximum transform block size. For example, when the size of a coding unit is 64x64 and when the size of the maximum transformation block is 32x32, the coding unit may be divided into four 32x32 blocks for transformation. For example, when the size of a coding unit is 32x64 and the size of the maximum transformation block is 32x32, the coding unit may be split into two 32x32 blocks for transformation. In this case, the split of a coding unit for a transform is not separately signaled and may be determined by comparing between the horizontal or vertical size of the coding unit and the horizontal or vertical size of the maximum transform block. For example, when the horizontal dimension (width) of the coding unit is larger than the horizontal dimension (width) of the maximum transform block, the coding unit may be vertically divided in half. For example, when the vertical dimension (length) of the coding unit is larger than the vertical dimension (length) of the maximum transform block, the coding unit may be horizontally divided in half.

[00172] Информация о максимальном и/или минимальном размере единицы кодирования и информация о максимальном и/или минимальном размере блока преобразования может сигнализироваться или определяться на более высоком уровне единицы кодирования. Более высокий уровень может представлять собой, например, уровень последовательности, уровень картинки, уровень слайса, уровень группы мозаичных элементов, уровень мозаичного элемента или т.п. Например, минимальный размер единицы кодирования может быть определен как 4×4. Например, максимальный размер блока преобразования может быть определен как 64×64. Например, минимальный размер блока преобразования может быть определен как 4×4.[00172] Maximum and/or minimum coding unit size information and maximum and/or minimum transform block size information may be signaled or determined at a higher coding unit level. The higher level may be, for example, a sequence level, a picture level, a slice level, a tile group level, a tile level, or the like. For example, the minimum size of a coding unit may be defined as 4×4. For example, the maximum transform block size may be defined as 64x64. For example, the minimum transform block size may be defined as 4×4.

[00173] Информация о минимальном размере (минимальном размере квадродерева) единицы кодирования, соответствующей листовому узлу квадродерева, и/или информация о максимальной глубине (максимальной глубине дерева для дерева множества типов) от корневого узла до листового узла дерева множества типов может сигнализироваться или определяться на более высоком уровне единицы кодирования. Например, более высокий уровень может представлять собой уровень последовательности, уровень картинки, уровень слайса, уровень группы мозаичных элементов, уровень мозаичного элемента или т.п. Информация о минимальном размере квадродерева и/или информация о максимальной глубине дерева множества типов может сигнализироваться или определяться для каждого из внутри-картинного слайса и меж-картинного слайса.[00173] Minimum size information (minimum quadtree size) of a coding unit corresponding to a quadtree leaf node and/or maximum depth information (maximum tree depth for a set type tree) from the root node to the leaf node of the set type tree may be signaled or determined at higher level of coding unit. For example, the higher level may be a sequence level, a picture level, a slice level, a tile group level, a tile level, or the like. The minimum quadtree size information and/or the maximum tree depth information of the plurality of types may be signaled or determined for each of the intra-picture slice and the inter-picture slice.

[00174] Разностная информация между размером CTU и максимальным размером блока преобразования может сигнализироваться или определяться на более высоком уровне единицы кодирования. Например, более высокий уровень может представлять собой уровень последовательности, уровень картинки, уровень слайса, уровень группы мозаичных элементов, уровень мозаичного элемента или т.п. Информация о максимальном размере единиц кодирования, соответствующих соответственным узлам двоичного дерева (далее упоминается как максимальный размер двоичного дерева), может определяться на основе размера единицы дерева кодирования и разностной информации. Максимальный размер единиц кодирования, соответствующих соответственным узлам троичного дерева (далее упоминается как максимальный размер троичного дерева), может варьироваться в зависимости от типа слайса. Например, для внутри-картинного слайса, максимальный размер троичного дерева может быть 32×32. Например, для меж-картинного слайса, максимальный размер троичного дерева может быть 128×128. Например, минимальный размер единиц кодирования, соответствующих соответственным узлам двоичного дерева (далее упоминается как минимальный размер двоичного дерева), и/или минимальный размер единиц кодирования, соответствующих соответственным узлам троичного дерева (далее упоминается как минимальный размер троичного дерева), может быть установлен в качестве минимального размера блока кодирования.[00174] The difference information between the CTU size and the maximum transform unit size may be signaled or determined at a higher coding unit level. For example, the higher level may be a sequence level, a picture level, a slice level, a tile group level, a tile level, or the like. Information about the maximum size of coding units corresponding to the respective nodes of the binary tree (hereinafter referred to as the maximum size of the binary tree) may be determined based on the unit size of the coding tree and the difference information. The maximum size of coding units corresponding to the respective nodes of the ternary tree (hereinafter referred to as the maximum size of the ternary tree) may vary depending on the slice type. For example, for an intra-picture slice, the maximum size of a ternary tree could be 32x32. For example, for an inter-picture slice, the maximum ternary tree size could be 128x128. For example, the minimum size of coding units corresponding to the respective nodes of the binary tree (hereinafter referred to as the minimum size of the binary tree) and/or the minimum size of the coding units corresponding to the respective nodes of the ternary tree (hereinafter referred to as the minimum size of the ternary tree) may be set as minimum coding block size.

[00175] В качестве другого примера, максимальный размер двоичного дерева и/или максимальный размер троичного дерева может сигнализироваться или определяться на уровне слайса. Альтернативно, минимальный размер двоичного дерева и/или минимальный размер троичного дерева может сигнализироваться или определяться на уровне слайса.[00175] As another example, the maximum binary tree size and/or the maximum ternary tree size may be signaled or determined at the slice level. Alternatively, the minimum binary tree size and/or the minimum ternary tree size may be signaled or determined at the slice level.

[00176] В зависимости от размера и информации глубины вышеописанных различных блоков, информация квадро-разбиения, информация указания разбиения дерева множества типов, информация дерева разбиения и/или информация направления разбиения могут включаться или могут не включаться в битовый поток.[00176] Depending on the size and depth information of the various blocks described above, quad split information, multiple type tree split indication information, split tree information, and/or split direction information may or may not be included in the bitstream.

[00177] Например, когда размер единицы кодирования не больше, чем минимальный размер квадродерева, единица кодирования не содержит информацию квадро-разбиения. Таким образом, информация квадро-разбиения может быть выведена из второго значения.[00177] For example, when the coding unit size is not larger than the minimum quadtree size, the coding unit does not contain quad-partition information. Thus, squaring information can be derived from the second value.

[00178] Например, когда размеры (горизонтальный и вертикальный размеры) единицы кодирования, соответствующей узлу дерева множества типов, больше, чем максимальные размеры (горизонтальный и вертикальный размеры) двоичного дерева и/или максимальные размеры (горизонтальный и вертикальный размеры) троичного дерева, единица кодирования может не быть двоично разделенной или троично разделенной. Соответственно, информация указания разбиения дерева множества типов может не сигнализироваться, а может выводиться из второго значения.[00178] For example, when the dimensions (horizontal and vertical dimensions) of an encoding unit corresponding to a tree node of the set of types are larger than the maximum dimensions (horizontal and vertical dimensions) of a binary tree and/or the maximum dimensions (horizontal and vertical dimensions) of a ternary tree, the unit encoding may not be binary separated or ternary divided. Accordingly, the split type tree split indication information may not be signaled, but may be derived from the second value.

[00179] Альтернативно, когда размеры (горизонтальный и вертикальный размеры) единицы кодирования, соответствующей узлу дерева множества типов, являются теми же самыми, что и максимальные размеры (горизонтальный и вертикальный размеры) двоичного дерева и/или в два раза больше, чем максимальные размеры (горизонтальный и вертикальный размеры) троичного дерева, единица кодирования не может далее двоично разделяться или троично разделяться. Соответственно, информация указания разбиения дерева множества типов может не сигнализироваться, а может выводиться из второго значения. Это объясняется тем, что когда единица кодирования разбивается согласно структуре разбиения двоичного дерева и/или структуре разбиения троичного дерева, генерируется единица кодирования меньшая, чем минимальный размер двоичного дерева и/или минимальный размер троичного дерева.[00179] Alternatively, when the dimensions (horizontal and vertical dimensions) of the coding unit corresponding to a tree node of the set of types are the same as the maximum dimensions (horizontal and vertical dimensions) of the binary tree and/or twice as large as the maximum dimensions (horizontal and vertical dimensions) of a ternary tree, the coding unit cannot be further binary-separable or ternary-separable. Accordingly, the split type tree split indication information may not be signaled, but may be derived from the second value. This is because when a coding unit is split according to a binary tree split structure and/or a ternary tree split structure, a coding unit smaller than the minimum binary tree size and/or the minimum ternary tree size is generated.

[00180] Альтернативно, разбиение двоичного дерева или разбиение троичного дерева может быть ограничено на основе размера единицы данных виртуального конвейера (далее, размер буфера конвейера). Например, когда единица кодирования разделяется на под-единицы кодирования, которые не соответствуют размеру буфера конвейера, посредством разбиения двоичного дерева или разбиения троичного дерева, соответствующее разбиение двоичного дерева или разбиение троичного дерева может ограничиваться. Размер буфера конвейера может быть размером максимального блока преобразования (например, 64×64). Например, когда размер буфера конвейера составляет 64×64, разделение, приведенное ниже, может ограничиваться.[00180] Alternatively, splitting a binary tree or splitting a ternary tree may be limited based on the size of the virtual pipeline data unit (hereinafter, pipeline buffer size). For example, when a coding unit is divided into sub-coding units that do not fit the pipeline buffer size by binary tree splitting or ternary tree splitting, the corresponding binary tree splitting or ternary tree splitting may be limited. The size of the pipeline buffer may be the size of the maximum transform block (eg, 64×64). For example, when the pipeline buffer size is 64x64, the division below may be limited.

[00181] - N×M (N и/или M равно 128) Разбиение троичного дерева для единиц кодирования[00181] - N×M (N and/or M is 128) Ternary tree split for coding units

[00182] - 128×N (N<=64) Разбиение двоичного дерева в горизонтальном направлении для единиц кодирования[00182] - 128×N (N<=64) Binary tree split in horizontal direction for coding units

[00183] - N×128 (N<=64) Разбиение двоичного дерева в вертикальном направлении для единиц кодирования[00183] - N×128 (N<=64) Splitting the binary tree in the vertical direction for coding units

[00184] Альтернативно, когда глубина единицы кодирования, соответствующей узлу дерева множества типов, равна максимальной глубине дерева множества типов, единица кодирования не может далее двоично разбиваться и/или троично разбиваться. Соответственно, информация указания разбиения дерева множества типов может не сигнализироваться, а может выводиться из второго значения.[00184] Alternatively, when the depth of a coding unit corresponding to a tree node of the type set is equal to the maximum depth of the type set tree, the coding unit cannot be further binarized and/or ternary tiled. Accordingly, the split type tree split indication information may not be signaled, but may be derived from the second value.

[00185] Альтернативно, только когда по меньшей мере одно из разбиения двоичного дерева в вертикальном направлении, разбиения двоичного дерева в горизонтальном направлении, разбиения троичного дерева в вертикальном направлении и разбиения троичного дерева в горизонтальном направлении возможно для единицы кодирования, соответствующей узлу дерева множества типов, может сигнализироваться информация указания разбиения дерева множества типов. В противном случае, единица кодирования не может двоично разбиваться и/или троично разбиваться. Соответственно, информация указания разбиения дерева множества типов может не сигнализироваться, а может выводиться из второго значения.[00185] Alternatively, only when at least one of binary tree splitting in the vertical direction, binary tree splitting in the horizontal direction, ternary tree splitting in the vertical direction, and ternary tree splitting in the horizontal direction is possible for the coding unit corresponding to the tree node of the set of types, the multitype tree split indication information may be signalled. Otherwise, the coding unit cannot be binarized and/or ternary binarized. Accordingly, the split type tree split indication information may not be signaled, but may be derived from the second value.

[00186] Альтернативно, только когда для единицы кодирования, соответствующей узлу дерева множества типов, возможны как разбиение двоичного дерева в вертикальном направлении, так и разбиение двоичного дерева в горизонтальном направлении, или как разбиение троичного дерева в вертикальном направлении, так и разбиение троичного дерева в горизонтальном направлении, информация направления разбиения может сигнализироваться. В противном случае, информация направления разбиения может не сигнализироваться, а может выводиться из значения, указывающего возможные направления разбиения.[00186] Alternatively, only when, for the coding unit corresponding to a tree node of the set of types, both a binary tree split in the vertical direction and a binary tree split in the horizontal direction, or both a ternary tree split in the vertical direction and a ternary tree split in the horizontal direction, split direction information can be signaled. Otherwise, split direction information may not be signaled, but may be derived from a value indicating possible split directions.

[00187] Альтернативно, только когда для дерева кодирования, соответствующего узлу дерева множества типов, возможны как разбиение двоичного дерева в вертикальном направлении, так и разбиение троичного дерева в вертикальном направлении, или как разбиение двоичного дерева в горизонтальном направлении, так и разбиение троичного дерева в горизонтальном направлении, информация дерева разбиения может сигнализироваться. В противном случае, информация дерева разбиения может не сигнализироваться, а может выводиться из значения, указывающего возможное разбиение древовидной структуры.[00187] Alternatively, only when, for the coding tree corresponding to the tree node of the set of types, both a binary tree split in the vertical direction and a ternary tree split in the vertical direction, or both a binary tree split in the horizontal direction and a ternary tree split in the horizontal direction, split tree information can be signaled. Otherwise, the split tree information may not be signaled, but may be derived from a value indicating a possible split of the tree structure.

[00188] Фиг. 4 представляет собой вид, показывающий процесс интра-предсказания.[00188] FIG. 4 is a view showing an intra prediction process.

[00189] Стрелки от центра наружу на фиг. 4 могут представлять направления предсказания режимов интра-предсказания.[00189] Arrows from the center outward in FIG. 4 may represent prediction directions of intra-prediction modes.

[00190] Интра-кодирование и/или декодирование может выполняться с использованием опорной выборки соседнего блока текущего блока. Соседний блок может быть восстановленным соседним блоком. Например, интра-кодирование и/или декодирование может выполняться с использованием параметра кодирования или значения опорной выборки, включенной в восстановленный соседний блок.[00190] Intra-coding and/or decoding may be performed using a neighbor block reference sample of the current block. The neighbor block may be a reconstructed neighbor block. For example, intra-coding and/or decoding may be performed using an encoding parameter or a reference sample value included in the reconstructed adjacent block.

[00191] Блок предсказания может означать блок, сгенерированный посредством выполнения интра-предсказания. Блок предсказания может соответствовать по меньшей мере одной из CU, PU и TU. Единица блока предсказания может иметь размер одной из CU, PU и TU. Блок предсказания может быть квадратным блоком, имеющим размер 2×2, 4×4, 16×16, 32×32 или 64×64 и т.д., или может быть прямоугольным блоком, имеющим размер 2×8, 4×8, 2×16, 4×16 и 8×16 и т.д.[00191] A prediction block may mean a block generated by performing intra-prediction. The prediction block may correspond to at least one of the CU, PU, and TU. A prediction block unit may have a size of one of CU, PU, and TU. The prediction block may be a square block having a size of 2x2, 4x4, 16x16, 32x32, or 64x64, etc., or may be a rectangular block having a size of 2x8, 4x8, 2x16, 4x16 and 8x16 etc.

[00192] Интра-предсказание может выполняться согласно режиму интра-предсказания для текущего блока. Количество режимов интра-предсказания, которые может иметь текущий блок, может быть фиксированным значением и может быть значением, определяемым по-разному в соответствии с атрибутом блока предсказания. Например, атрибут блока предсказания может содержать размер блока предсказания и форму блока предсказания и т. д.[00192] Intra prediction may be performed according to the intra prediction mode for the current block. The number of intra prediction modes that the current block may have may be a fixed value, and may be a value defined differently according to an attribute of the prediction block. For example, a prediction block attribute may contain the size of the prediction block and the shape of the prediction block, etc.

[00193] Количество режимов интра-предсказания может быть зафиксировано равным N независимо от размера блока. Или количество режимов интра-предсказания может быть 3, 5, 9, 17, 34, 35, 36, 65 или 67 и т.д. Альтернативно, количество режимов интра-предсказания может варьироваться в соответствии с размером блока или типом цветового компонента или обоими. Например, количество режимов интра-предсказания может варьироваться в соответствии с тем, является ли цветовой компонент сигналом яркости или сигналом цветности. Например, когда размер блока становится большим, количество режимов интра-предсказания может увеличиваться. Альтернативно, количество режимов интра-предсказания блока компонента яркости может быть больше, чем количество режимов интра-предсказания блока компонента цветности.[00193] The number of intra prediction modes can be fixed to N regardless of the block size. Or the number of intra-prediction modes can be 3, 5, 9, 17, 34, 35, 36, 65 or 67, etc. Alternatively, the number of intra prediction modes may vary according to block size or color component type, or both. For example, the number of intra prediction modes may vary according to whether the color component is a luminance signal or a chrominance signal. For example, as the block size becomes large, the number of intra prediction modes may increase. Alternatively, the number of intra-prediction modes of the luma component block may be greater than the number of intra-prediction modes of the chrominance component block.

[00194] Режим интра-предсказания может быть неугловым режимом или угловым режимом. Неугловой режим может быть режимом DC или планарным режимом, а угловой режим может быть режимом предсказания, имеющим конкретное направление или угол. Режим интра-предсказания может быть выражен по меньшей мере одним из номера режима, значения режима, символа номера режима, угла режима и направления режима. Количество режимов интра-предсказания может быть M, которое больше 1, включая неугловой и угловой режим. Для интра-предсказания текущего блока может быть выполнен этап определения того, могут ли выборки, включенные в восстановленный соседний блок, использоваться в качестве опорных выборок текущего блока. Когда присутствует выборка, которая не может использоваться в качестве опорной выборки текущего блока, значение, полученное путем дублирования или выполнения интерполяции по меньшей мере одного значения выборки среди выборок, включенных в восстановленный соседний блок, или оба могут использоваться для замены неиспользуемым значением выборки для выборки, таким образом, замененное значение выборки используется в качестве опорной выборки текущего блока.[00194] The intra-prediction mode may be a non-angle mode or an angle mode. The non-angular mode may be a DC mode or a planar mode, and the angular mode may be a prediction mode having a specific direction or angle. The intra prediction mode may be expressed by at least one of a mode number, a mode value, a mode number symbol, a mode angle, and a mode direction. The number of intra prediction modes may be M, which is greater than 1, including non-angular and angular modes. For intra-prediction of the current block, the step of determining whether the samples included in the reconstructed neighboring block can be used as reference samples of the current block can be performed. When there is a sample that cannot be used as a reference sample of the current block, a value obtained by duplicating or interpolating at least one sample value among the samples included in the reconstructed adjacent block, or both, can be used to replace an unused sample value for the sample, thus, the replaced sample value is used as the reference sample of the current block.

[00195] Фиг. 7 представляет собой диаграмму, иллюстрирующую опорные выборки, которые могут использоваться для интра-предсказания.[00195] FIG. 7 is a diagram illustrating reference samples that may be used for intra prediction.

[00196] Как показано на фиг. 7, по меньшей мере одна из линии 0 опорной выборки и линии 3 опорной выборки может использоваться для интра-предсказания текущего блока. На фиг. 7, выборки сегмента A и сегмента F могут быть дополнены выборками, ближайшими к сегменту B и сегменту E, соответственно, вместо извлечения из восстановленного соседнего блока. Информация индекса, указывающая линию опорной выборки, которая должна использоваться для интра-предсказания текущего блока, может сигнализироваться. Когда верхняя граница текущего блока является границей CTU, может быть доступна только линия 0 опорной выборки. Следовательно, в этом случае информация индекса может не сигнализироваться. Когда используется линия опорной выборки, отличная от линии 0 опорной выборки, фильтрация для блока предсказания, который будет описан далее, может не выполняться.[00196] As shown in FIG. 7, at least one of reference sample line 0 and reference sample line 3 may be used for intra-prediction of the current block. In FIG. 7, segment A and segment F samples may be padded with samples closest to segment B and segment E, respectively, instead of being extracted from the reconstructed neighboring block. Index information indicating a reference sample line to be used for intra-prediction of the current block may be signaled. When the upper boundary of the current block is the CTU boundary, only reference sample line 0 may be available. Therefore, in this case, the index information may not be signaled. When a reference sample line other than reference sample line 0 is used, filtering for a prediction block to be described later may not be performed.

[00197] При интра-предсказании, фильтр может применяться по меньшей мере к одной из опорной выборки и выборки предсказания на основе режима интра-предсказания и текущего размера блока.[00197] In intra-prediction, a filter may be applied to at least one of a reference sample and a prediction sample based on the intra-prediction mode and the current block size.

[00198] В случае планарного режима, при генерации блока предсказания текущего блока, в соответствии с положением целевой выборки предсказания в блоке предсказания, значение выборки целевой выборки предсказания может быть сгенерировано с использованием взвешенной суммы опорной выборки верхней и левой стороны для текущей выборки, и опорной выборки правой верхней стороны и левой нижней стороны текущего блока. Кроме того, в случае режима DC, при генерации блока предсказания текущего блока, может использоваться среднее значение опорных выборок верхней и левой стороны текущего блока. Кроме того, в случае углового режима, блок предсказания может быть сгенерирован с использованием опорной выборки верхней стороны, левой стороны, правой верхней стороны и/или левой нижней стороны текущего блока. Чтобы сгенерировать значение выборки предсказания, может выполняться интерполяция единицы действительного числа.[00198] In the case of the planar mode, when generating the prediction block of the current block, in accordance with the position of the prediction target sample in the prediction block, the sample value of the prediction target sample can be generated using the weighted sum of the top and left side reference samples for the current sample, and the reference selections of the upper right side and lower left side of the current block. In addition, in the case of the DC mode, when generating the prediction block of the current block, the average value of the reference samples of the top and left sides of the current block can be used. Further, in the case of the angular mode, a prediction block may be generated using a reference sample of the top side, left side, top right side, and/or bottom left side of the current block. In order to generate a prediction sample value, a real number unit interpolation may be performed.

[00199] В случае интра-предсказания между цветовыми компонентами, блок предсказания для текущего блока второго цветового компонента может быть сгенерирован на основе соответствующего восстановленного блока первого цветового компонента. Например, первый цветовой компонент может быть компонентом яркости, а второй цветовой компонент может быть компонентом цветности. Для интра-предсказания между цветовыми компонентами, параметры линейной модели между первым цветовым компонентом и вторым цветовым компонентом могут быть получены на основе шаблона. Шаблон может включать в себя верхние и/или левые соседние выборки текущего блока и верхние и/или левые соседние выборки восстановленного блока первого цветового компонента, соответствующего ему. Например, параметры линейной модели могут быть выведены с использованием значения выборки первого цветового компонента, имеющего максимальное значение среди выборок в шаблоне, и значения выборки второго цветового компонента, соответствующего ему, и значения выборки первого цветового компонента, имеющего минимальное значение среди выборок в шаблоне, и значения выборки второго цветового компонента, соответствующего ему. Когда параметры линейной модели выведены, соответствующий восстановленный блок может быть применен к линейной модели, чтобы сгенерировать блок предсказания для текущего блока. В соответствии с форматом видео, субдискретизация может выполняться над соседними выборками восстановленного блока первого цветового компонента и соответствующего восстановленного блока. Например, когда одна выборка второго цветового компонента соответствует четырем выборкам первого цветового компонента, четыре выборки первого цветового компонента могут быть субдискретизированы для вычисления одной соответствующей выборки. В этом случае выведение параметров линейной модели и интра-предсказание между цветовыми компонентами может выполняться на основе соответствующих субдискретизированных выборок. Следует ли или нет выполнять интра-предсказание между цветовыми компонентами и/или диапазон шаблона, может сигнализироваться как режим интра-предсказания.[00199] In the case of intra-prediction between color components, a prediction block for the current block of the second color component may be generated based on the corresponding reconstructed block of the first color component. For example, the first color component may be a luminance component and the second color component may be a chrominance component. For intra-prediction between color components, linear model parameters between the first color component and the second color component may be obtained based on the template. The pattern may include the top and/or left adjacent samples of the current block and the top and/or left adjacent samples of the reconstructed block of the first color component corresponding to it. For example, the parameters of the linear model may be derived using the sample value of the first color component having the maximum value among the samples in the template and the sample value of the second color component corresponding thereto and the sample value of the first color component having the minimum value among the samples in the template, and sample values of the second color component corresponding to it. When the linear model parameters are inferred, the corresponding reconstructed block can be applied to the linear model to generate a prediction block for the current block. According to the video format, downsampling may be performed on adjacent samples of the reconstructed block of the first color component and the corresponding reconstructed block. For example, when one sample of the second color component corresponds to four samples of the first color component, the four samples of the first color component may be downsampled to compute one corresponding sample. In this case, linear model derivation and intra-prediction between color components can be performed based on the respective downsampled samples. Whether or not to perform intra-prediction between color components and/or pattern range may be signaled as an intra-prediction mode.

[00200] Текущий блок может разбиваться на два или четыре подблока в горизонтальном или вертикальном направлении. Разбитые подблоки могут быть последовательно восстановлены. То есть, интра-предсказание может выполняться над подблоком, чтобы сгенерировать подблок предсказания. Кроме того, деквантование и/или обратное преобразование может выполняться над подблоками для генерации остаточных подблоков. Восстановленный подблок может быть сгенерирован путем добавления подблока предсказания к остаточному подблоку. Восстановленный подблок может быть использован в качестве опорной выборки для интра-предсказания под-подблоков. Подблок может быть блоком, содержащим предопределенное количество (например, 16) или более выборок. Соответственно, например, когда текущий блок является блоком 8×4 или 4×8, текущий блок может разбиваться на два подблока. Кроме того, когда текущий блок является блоком 4×4, текущий блок не может разбиваться на подблоки. Когда текущий блок имеет другие размеры, текущий блок может разбиваться на четыре подблока. Информация о том, выполнять ли интра-предсказание на основе подблоков и/или направление разбиения (горизонтальное или вертикальное), может сигнализироваться. Интра-предсказание, основанное на подблоках, может быть ограничено выполнением только тогда, когда используется линия 0 опорной выборки. Когда выполняется интра-предсказание на основе подблока, фильтрация для блока предсказания, которая будет описана позже, может не выполняться.[00200] The current block may be split into two or four sub-blocks in the horizontal or vertical direction. Broken sub-blocks can be sequentially restored. That is, intra-prediction may be performed on a sub-block to generate a prediction sub-block. In addition, dequantization and/or inverse transformation may be performed on the sub-blocks to generate residual sub-blocks. The recovered subblock may be generated by adding the prediction subblock to the residual subblock. The reconstructed sub-block can be used as a reference sample for sub-sub-block intra-prediction. A sub-block may be a block containing a predetermined number (eg, 16) or more samples. Accordingly, for example, when the current block is an 8×4 or 4×8 block, the current block may be divided into two sub-blocks. In addition, when the current block is a 4x4 block, the current block cannot be subblocked. When the current block has other dimensions, the current block may be split into four sub-blocks. Information about whether to perform intra-prediction based on sub-blocks and/or the splitting direction (horizontal or vertical) may be signaled. Sub-block based intra-prediction can only be limited to execution when reference sample line 0 is used. When sub-block-based intra-prediction is performed, filtering for a prediction block to be described later may not be performed.

[00201] Окончательный блок предсказания может быть сгенерирован путем выполнения фильтрации над блоком предсказания, который является интра-предсказанным. Фильтрация может быть выполнена путем применения предопределенных весов к целевой выборке фильтрации, левой опорной выборке, верхней опорной выборке и/или верхней левой опорной выборке. Вес и/или опорная выборка (диапазон, положение и т.д.), используемые для фильтрации, могут быть определены на основе по меньшей мере одного из размера блока, режима интра-предсказания и положения целевой выборки фильтрации в блоке предсказания. Фильтрация может выполняться только в случае предопределенного режима интра-предсказания (например, DC, планарный, вертикальный, горизонтальный, диагональный и/или смежный диагональный режимы). Смежный диагональный режим может быть режимом, в котором k добавляется к диагональному режиму или вычитается из него. Например, k может быть целым положительным числом 8 или меньше.[00201] The final prediction block may be generated by performing filtering on a prediction block that is intra-predicted. Filtering may be performed by applying predefined weights to the filter target, left pivot, top pivot, and/or top left pivot. The weight and/or reference sample (range, position, etc.) used for filtering may be determined based on at least one of the block size, the intra-prediction mode, and the position of the filter target sample in the prediction block. Filtering can only be performed in the case of a predefined intra-prediction mode (eg, DC, planar, vertical, horizontal, diagonal, and/or adjacent diagonal modes). The adjacent diagonal mode may be a mode in which k is added to or subtracted from the diagonal mode. For example, k may be a positive integer 8 or less.

[00202] Режим интра-предсказания текущего блока может быть энтропийно закодирован/декодирован посредством предсказания режима интра-предсказания блока, расположенного смежно с текущим блоком. Когда режимы интра-предсказания текущего блока и соседнего блока идентичны, информация о том, что режимы интра-предсказания текущего блока и соседнего блока идентичны, может сигнализироваться с использованием информации предопределенного флага. Кроме того, может сигнализироваться информация указателя режима интра-предсказания, который идентичен режиму интра-предсказания текущего блока среди режимов интра-предсказания множества соседних блоков. Когда режимы интра-предсказания текущего блока и соседнего блока различны, информация режима интра-предсказания текущего блока может быть энтропийно кодирована/декодирована посредством выполнения энтропийного кодирования/декодирования на основе режима интра-предсказания соседнего блока.[00202] The intra-prediction mode of the current block may be entropy encoded/decoded by predicting the intra-prediction mode of a block adjacent to the current block. When the intra prediction modes of the current block and the neighboring block are identical, information that the intra prediction modes of the current block and the neighboring block are identical can be signaled using predetermined flag information. In addition, information of an intra prediction mode indicator that is identical to the intra prediction mode of the current block among the intra prediction modes of a plurality of neighboring blocks can be signaled. When the intra prediction modes of the current block and the neighboring block are different, the intra prediction mode information of the current block can be entropy encoded/decoded by performing entropy encoding/decoding based on the intra prediction mode of the neighboring block.

[00203] Фиг. 5 представляет собой диаграмму, иллюстрирующую вариант осуществления процесса интер-предсказания.[00203] FIG. 5 is a diagram illustrating an embodiment of an inter-prediction process.

[00204] На фиг. 5 прямоугольник может представлять картинку. На фиг. 5 стрелка представляет направление предсказания. Картинки могут быть классифицированы на внутренние картинки (I-картинки), картинки с предсказанием (предиктивные) (P-картинки) и картинки с двунаправленным предсказанием (би-предиктивные) (B-картинки) в соответствии с их типом кодирования.[00204] FIG. 5, a rectangle can represent a picture. In FIG. 5, an arrow represents the prediction direction. Pictures can be classified into intra pictures (I-pictures), predictive pictures (P-pictures), and bidirectional prediction pictures (bi-predictive) (B-pictures) according to their coding type.

[00205] I-картинка может кодироваться посредством интра-предсказания без необходимости меж-картинного (межкадрового) предсказания. Р-картинка может кодироваться посредством меж-картинного предсказания с использованием опорной картинки, которая присутствует в одном направлении (то есть, в прямом направлении или обратном направлении) относительно текущего блока. B-картинка может кодироваться посредством меж-картинного предсказания с использованием опорных картинок, которые предварительно установлены в двух направлениях (то есть прямом направлении и обратном направлении) относительно текущего блока. Когда используется меж-картинное предсказание, кодер может выполнять интер-предсказание или компенсацию движения, а декодер может выполнять соответствующую компенсацию движения.[00205] An I-picture can be encoded by intra-prediction without the need for inter-picture (inter-picture) prediction. A P-picture may be encoded by inter-picture prediction using a reference picture that is present in one direction (ie, forward or backward) relative to the current block. The B-picture may be encoded by inter-picture prediction using reference pictures that are preset in two directions (ie, forward and backward) relative to the current block. When inter-picture prediction is used, the encoder may perform inter-prediction or motion compensation, and the decoder may perform the corresponding motion compensation.

[00206] Ниже будет подробно описан вариант осуществления меж-картинного (интер-) предсказания.[00206] An embodiment of inter-picture (inter-) prediction will be described in detail below.

[00207] Интер-предсказание или компенсация движения могут выполняться с использованием опорной картинки и информации движения.[00207] Inter-prediction or motion compensation may be performed using the reference picture and motion information.

[00208] Информация движения текущего блока может быть выведена во время интер-предсказания каждым из устройства 100 кодирования и устройства 200 декодирования. Информация движения текущего блока может быть выведена с использованием информации движения восстановленного соседнего блока, информации движения совмещенного блока (также называемого col-блоком или совмещенным блоком) и/или блока, смежного с совмещенным блоком. Совмещенный блок может означать блок, который пространственно расположен в том же положении, что и текущий блок, в ранее восстановленной совмещенной картинке (также упоминаемой как col-картинка или совмещенная картинка). Совмещенная картинка может быть одной картинкой из одной или более опорных картинок, включенных в список опорных картинок.[00208] Motion information of the current block may be output during inter-prediction by each of the encoder 100 and the decoder 200. The motion information of the current block may be inferred using the motion information of the reconstructed adjacent block, the motion information of the aligned block (also referred to as a col block or aligned block), and/or the block adjacent to the aligned block. A merged block may mean a block that is spatially located at the same position as the current block in a previously restored merged picture (also referred to as a col picture or merged picture). The merged picture may be one picture from one or more reference pictures included in the reference picture list.

[00209] Способ выведения информации движения может отличаться в зависимости от режима предсказания текущего блока. Например, режим предсказания, применяемый для интер-предсказания, включает в себя режим AMVP, режим слияния, режим пропуска, режим слияния с разностью векторов движения, режим слияния подблоков, режим треугольного разбиения, режим интер-интра комбинированного предсказания, аффинный режим и т.п. Здесь режим слияния может упоминаться как режим слияния движения.[00209] The motion information output method may differ depending on the prediction mode of the current block. For example, the prediction mode applied for inter-prediction includes AMVP mode, merge mode, skip mode, motion vector difference merge mode, sub-block merge mode, triangular split mode, inter-intra combined prediction mode, affine mode, etc. P. Here, the fusion mode may be referred to as the motion fusion mode.

[00210] Например, когда AMVP используется в качестве режима предсказания, по меньшей мере один из векторов движения восстановленных соседних блоков, векторов движения совмещенных блоков, векторов движения блоков, смежных с совмещенными блоками, и (0, 0) вектор движения могут быть определены в качестве кандидатов вектора движения для текущего блока, и список кандидатов вектора движения генерируется с использованием кандидатов вектора движения. Кандидат вектора движения текущего блока может быть выведен с использованием сгенерированного списка кандидатов вектора движения. Информация движения текущего блока может быть определена на основе выведенного кандидата вектора движения. Векторы движения совмещенных блоков или векторы движения блоков, смежных с совмещенными блоками, могут упоминаться как временные кандидаты вектора движения, а векторы движения восстановленных соседних блоков могут упоминаться как пространственные кандидаты вектора движения.[00210] For example, when AMVP is used as the prediction mode, at least one of the motion vectors of the reconstructed adjacent blocks, the motion vectors of the aligned blocks, the motion vectors of blocks adjacent to the aligned blocks, and the (0, 0) motion vector may be defined in as motion vector candidates for the current block, and a list of motion vector candidates is generated using the motion vector candidates. The motion vector candidate of the current block may be inferred using the generated list of motion vector candidates. The motion information of the current block may be determined based on the derived motion vector candidate. Motion vectors of aligned blocks or motion vectors of blocks adjacent to aligned blocks may be referred to as temporal motion vector candidates, and motion vectors of reconstructed adjacent blocks may be referred to as spatial motion vector candidates.

[00211] Устройство 100 кодирования может вычислять разность векторов движения (MVD) между вектором движения текущего блока и кандидатом вектора движения и может выполнять энтропийное кодирование разности векторов движения (MVD). Кроме того, устройство 100 кодирования может выполнять энтропийное кодирование индекса кандидата вектора движения и генерировать битовый поток. Индекс кандидата вектора движения может указывать оптимального кандидата вектора движения среди кандидатов вектора движения, включенных в список кандидатов вектора движения. Устройство декодирования может выполнять энтропийное декодирование над индексом кандидата вектора движения, включенным в битовый поток, и может выбирать кандидата вектора движения целевого блока декодирования из числа кандидатов вектора движения, включенных в список кандидатов вектора движения, с использованием энтропийно декодированного индекса кандидата вектора движения. Кроме того, устройство 200 декодирования может суммировать энтропийно декодированную MVD и кандидат вектора движения, извлеченный посредством энтропийного декодирования, тем самым выводя вектор движения целевого блока декодирования.[00211] Encoding apparatus 100 may calculate a motion vector difference (MVD) between a motion vector of the current block and a motion vector candidate, and may perform motion vector difference (MVD) entropy coding. In addition, the encoder 100 can perform entropy encoding of a motion vector candidate index and generate a bitstream. The motion vector candidate index may indicate the optimal motion vector candidate among the motion vector candidates included in the motion vector candidate list. The decoding apparatus may perform entropy decoding on a motion vector candidate index included in the bitstream, and may select a motion vector candidate of the decoding target block from among the motion vector candidates included in the motion vector candidate list using the entropy decoded motion vector candidate index. In addition, the decoding apparatus 200 can sum the entropy decoded MVD and the motion vector candidate extracted by the entropy decoding, thereby outputting the motion vector of the decoding target block.

[00212] Между тем, устройство 100 кодирования может выполнять энтропийное кодирование над информацией разрешения вычисленной MVD. Устройство 200 декодирования может регулировать разрешение энтропийно декодированной MVD с использованием информации разрешения MVD.[00212] Meanwhile, the encoder 100 can perform entropy encoding on the resolution information of the computed MVD. The decoder 200 may adjust the resolution of the entropy decoded MVD using the resolution information of the MVD.

[00213] Между тем, устройство 100 кодирования вычисляет разность векторов движения (MVD) между вектором движения и кандидатом вектора движения в текущем блоке на основе аффинной модели и выполняет энтропийное кодирование над MVD. Устройство 200 декодирования выводит вектор движения для каждого подблока путем выведения вектора движения аффинного управления целевого блока декодирования через сумму энтропийно декодированной MVD и кандидата вектора движения аффинного управления.[00213] Meanwhile, the encoding apparatus 100 calculates a motion vector difference (MVD) between a motion vector and a motion vector candidate in the current block based on the affine model, and performs entropy encoding on the MVD. The decoder 200 derives a motion vector for each subblock by deriving the affine control motion vector of the decoding target block through the sum of the entropy decoded MVD and the affine control motion vector candidate.

[00214] Битовый поток может включать в себя индекс опорной картинки, указывающий опорную картинку. Индекс опорной картинки может энтропийно кодироваться устройством 100 кодирования и затем сигнализироваться как битовый поток в устройство 200 декодирования. Устройство 200 декодирования может генерировать блок предсказания из целевого блока декодирования на основе выведенного вектора движения и информации индекса опорной картинки.[00214] The bitstream may include a reference picture index indicating the reference picture. The reference picture index may be entropy encoded by the encoder 100 and then signaled as a bit stream to the decoder 200 . The decoding apparatus 200 may generate a prediction block from a decoding target block based on the derived motion vector and the reference picture index information.

[00215] Другим примером способа выведения текущей информации движения может быть режим слияния. Режим слияния может означать способ слияния движения множества блоков. Режим слияния может означать режим выведения информации движения текущего блока из информации движения соседних блоков. Когда применяется режим слияния, список кандидатов слияния может генерироваться с использованием информации движения восстановленных соседних блоков и/или информации движения совмещенных блоков. Информация движения может включать в себя по меньшей мере одно из вектора движения, индекса опорной картинки и указателя интер-предсказания. Указатель предсказания может указывать однонаправленное предсказание (предсказание L0 или предсказание L1) или двунаправленное предсказание (предсказание L0 и предсказание L1).[00215] Another example of a method for deriving current motion information may be a merge mode. Merging mode may mean a way to merge the movement of a plurality of blocks. The merge mode may mean a mode of deriving the motion information of the current block from the motion information of neighboring blocks. When the merge mode is applied, the merge candidate list may be generated using motion information of reconstructed neighboring blocks and/or motion information of aligned blocks. The motion information may include at least one of a motion vector, a reference picture index, and an inter prediction indicator. The prediction indicator may indicate unidirectional prediction (L0 prediction or L1 prediction) or bidirectional prediction (L0 prediction and L1 prediction).

[00216] Список кандидатов слияния может быть списком сохраненной информации движения. Информация движения, включенная в список кандидатов слияния, может быть по меньшей мере одной из информации движения (кандидата пространственного слияния) соседнего блока, смежного с текущим блоком, информации движения (кандидата временного слияния) совмещенного блока текущего блока в опорной картинке, новой информации движения, сгенерированной комбинацией информации движения, выходящей из списка кандидатов слияния, информации движения (кандидата слияния на основе истории) блока, который кодирован/декодирован перед текущим блоком, и нулевого кандидата слияния.[00216] The merge candidate list may be a list of stored motion information. The motion information included in the merge candidate list may be at least one of motion information (spatial merge candidate) of an adjacent block adjacent to the current block, motion information (temporal merge candidate) of a merged block of the current block in the reference picture, new motion information, generated by a combination of the motion information coming out of the merge candidate list, the motion information (history-based merge candidate) of the block that is coded/decoded before the current block, and the null merge candidate.

[00217] Устройство 100 кодирования может генерировать битовый поток путем выполнения энтропийного кодирования по меньшей мере над одним из флага слияния и индекса слияния и может сигнализировать битовый поток устройству 200 декодирования. Флаг слияния может быть информацией, указывающей, следует ли выполнять режим слияния для каждого блока, и индекс слияния может быть информацией, указывающей, какой соседний блок среди соседних блоков текущего блока является целевым блоком слияния. Например, соседние блоки текущего блока могут включать в себя левый соседний блок с левой стороны текущего блока, верхний соседний блок, расположенный над текущим блоком, и временной соседний блок, смежный по времени с текущим блоком.[00217] Encoder 100 may generate a bitstream by performing entropy encoding on at least one of the merge flag and merge index, and may signal the bitstream to decoder 200. The merge flag may be information indicating whether the merge mode should be performed for each block, and the merge index may be information indicating which neighboring block among the neighboring blocks of the current block is the target block of the merge. For example, the adjacent blocks of the current block may include a left adjacent block on the left side of the current block, an upper adjacent block located above the current block, and a temporal adjacent block temporally adjacent to the current block.

[00218] Между тем, устройство 100 кодирования выполняет энтропийное кодирование над информацией коррекции для коррекции вектора движения среди информации движения кандидата слияния и сигнализирует об этом в устройство 200 декодирования. Устройство 200 декодирования может корректировать вектор движения кандидата слияния, выбранный индексом слияния, на основе информации коррекции. Здесь информация коррекции может включать в себя по меньшей мере одну из информации о том, выполнять ли коррекцию или нет, информации направления коррекции и информации размера коррекции. Как описано выше, режим предсказания, который корректирует вектор движения кандидата слияния на основе сигнализированной информации коррекции, может упоминаться как режим слияния, имеющий разность векторов движения.[00218] Meanwhile, the encoder 100 performs entropy encoding on the correction information to correct the motion vector among the motion information of the merge candidate, and signals this to the decoder 200. The decoder 200 may correct the merge candidate motion vector selected by the merge index based on the correction information. Here, the correction information may include at least one of whether or not to perform correction, correction direction information, and correction size information. As described above, a prediction mode that corrects a motion vector of a merge candidate based on signaled correction information may be referred to as a merge mode having a motion vector difference.

[00219] Режим пропуска может быть режимом, в котором информация движения соседнего блока применяется к текущему блоку как есть. Когда применяется режим пропуска, устройство 100 кодирования может выполнять энтропийное кодирование информации о том, что информация движения конкретного блока должна быть использована в качестве информации движения текущего блока для генерации битового потока, и может сигнализировать битовый поток к устройству 200 декодирования. Устройство 100 кодирования может не сигнализировать синтаксический элемент касательно по меньшей мере любого одного из информации о разности векторов движения, флага блока кодирования и уровня коэффициентов преобразования в устройство 200 декодирования.[00219] The skip mode may be a mode in which motion information of a neighboring block is applied to the current block as is. When the skip mode is applied, the encoder 100 may entropy encode information that the motion information of a particular block is to be used as the current block's motion information to generate a bitstream, and may signal the bitstream to the decoder 200. Encoder 100 may not signal a syntax element regarding at least any one of motion vector difference information, encoder block flag, and transform coefficient level to decoder 200.

[00220] Режим слияния подблоков может означать режим, который выводит информацию движения в единицах подблоков блока кодирования (CU). Когда применяется режим слияния подблоков, список кандидатов слияния подблока может быть сгенерирован с использованием информации движения (кандидат временного слияния на основе подблока) подблока, совмещенного с текущим подблоком в опорном изображении, и/или кандидата слияния вектора движения точки аффинного управления.[00220] The sub-block merge mode may mean a mode that outputs motion information in units of coding unit (CU) sub-blocks. When the sub-block merge mode is applied, the sub-block merge candidate list may be generated using the motion information (sub-block-based temporal merge candidate) of the sub-block aligned with the current sub-block in the reference picture and/or the affine control point motion vector merge candidate.

[00221] Режим треугольного разбиения может означать режим, который выводит информацию движения путем разбиения текущего блока на диагональные направления, выводит каждую выборку предсказания с использованием каждой выведенной информации движения и извлекает выборку предсказания текущего блока путем взвешивания каждой из выведенных выборок предсказания.[00221] The triangular split mode may mean a mode that outputs motion information by splitting the current block into diagonal directions, outputs each prediction sample using each derived motion information, and extracts a prediction sample of the current block by weighting each of the output prediction samples.

[00222] Режим объединенного интер-интра предсказания может означать режим, который выводит выборку предсказания текущего блока путем взвешивания выборки предсказания, сгенерированной с помощью интер-предсказания, и выборки предсказания, сгенерированной с помощью интра-предсказания.[00222] The combined inter-intra prediction mode may mean a mode that outputs a prediction sample of the current block by weighting the prediction sample generated by inter-prediction and the prediction sample generated by intra-prediction.

[00223] Устройство 200 декодирования может самостоятельно корректировать выведенную информацию движения. Устройство 200 декодирования может осуществлять поиск в заданной области на основе опорного блока, указанного выведенной информацией движения, и выводить информацию движения, имеющую минимальную SAD, как скорректированную информацию движения.[00223] The decoding device 200 can independently correct the output motion information. The decoding apparatus 200 may search in a predetermined area based on a reference block indicated by the outputted motion information, and output motion information having a minimum SAD as corrected motion information.

[00224] Устройство 200 декодирования может компенсировать выборку предсказания, выведенную посредством интер-предсказания, с использованием оптического потока.[00224] The decoding apparatus 200 may compensate for the prediction sample output by inter-prediction using the optical stream.

[00225] Фиг. 6 представляет собой диаграмму, иллюстрирующую процесс преобразования и квантования.[00225] FIG. 6 is a diagram illustrating the conversion and quantization process.

[00226] Как показано на фиг. 6, процесс преобразования и/или квантования выполняется над остаточным сигналом, чтобы сгенерировать сигнал квантованного уровня. Остаточный сигнал представляет собой разницу между исходным блоком и блоком предсказания (то есть, блоком интра-предсказания или блоком интер-предсказания). Блок предсказания представляет собой блок, сгенерированный посредством интра-предсказания или интер-предсказания. Преобразование может быть первичным преобразованием, вторичным преобразованием или и тем, и другим. Первичное преобразование остаточного сигнала приводит к коэффициентам преобразования, а вторичное преобразование коэффициентов преобразования приводит к вторичным коэффициентам преобразования.[00226] As shown in FIG. 6, a transformation and/or quantization process is performed on the residual signal to generate a quantized level signal. The residual signal is the difference between the original block and the prediction block (ie, intra-prediction block or inter-prediction block). A prediction block is a block generated by intra-prediction or inter-prediction. The transformation can be a primary transformation, a secondary transformation, or both. Primary transform of the residual signal results in transform coefficients, and secondary transform of the transform coefficients results in secondary transform coefficients.

[00227] По меньшей мере одна схема, выбранная из различных схем преобразования, которые предварительно определены, используется для выполнения первичного преобразования. Например, примеры предопределенных схем преобразования включают дискретное косинусное преобразование (DCT), дискретное синусное преобразование (DST) и преобразование Карунена-Лоэва (KLT). Коэффициенты преобразования, сгенерированные посредством первичного преобразования, могут подвергаться вторичному преобразованию. Схемы преобразования, используемые для первичного преобразования и/или вторичного преобразования, могут быть определены согласно параметрам кодирования текущего блока и/или соседних блоков текущего блока. Альтернативно может сигнализироваться информация о преобразовании, указывающая схему преобразования. Преобразование на основе DCT может включать в себя, например, DCT-2, DCT-8 и т.п. Преобразование на основе DST может включать, например, DST-7.[00227] At least one scheme selected from various conversion schemes that are predefined is used to perform the primary conversion. For example, examples of predefined transform schemes include discrete cosine transform (DCT), discrete sine transform (DST), and Karhunen-Loeve transform (KLT). The transform coefficients generated by the primary transform may be subjected to a secondary transform. The transform schemes used for the primary transform and/or the secondary transform may be determined according to the coding parameters of the current block and/or neighboring blocks of the current block. Alternatively, conversion information indicating a conversion scheme may be signaled. The DCT-based transform may include, for example, DCT-2, DCT-8, and the like. The DST-based transform may include, for example, DST-7.

[00228] [00228]

[00229] Сигнал квантованного уровня (коэффициенты квантования) может быть сгенерирован путем выполнения квантования остаточного сигнала или результата выполнения первичного преобразования и/или вторичного преобразования. Сигнал квантованного уровня может сканироваться согласно по меньшей мере одному из диагонального сканирования вверх-вправо, вертикального сканирования и горизонтального сканирования, в зависимости от режима интра-предсказания блока или размера/формы блока. Например, когда коэффициенты сканируются при диагональном сканировании вверх-вправо, коэффициенты в блочной форме преобразуются в форму одномерного вектора. Помимо диагонального сканирования вверх-вправо, горизонтальная развертка горизонтального сканирования двумерной формы блока коэффициентов или вертикальная развертка вертикального сканирования двумерной формы блока коэффициентов может использоваться в зависимости от режима интра-предсказания и/или размера блока преобразования. Отсканированные коэффициенты квантованного уровня могут быть энтропийно закодированы для вставки в битовый поток.[00229] A quantized level signal (quantization coefficients) may be generated by performing quantization of a residual signal or the result of performing a primary transform and/or a secondary transform. The quantized level signal may be scanned according to at least one of up-right diagonal scan, vertical scan, and horizontal scan, depending on the block intra-prediction mode or block size/shape. For example, when the coefficients are scanned in an up-right diagonal scan, the block-form coefficients are converted to a one-dimensional vector form. In addition to the up-right diagonal scan, a horizontal scan of a horizontal scan of a 2D coefficient block shape or a vertical scan of a vertical scan of a 2D coefficient block shape may be used depending on the intra-prediction mode and/or transform block size. The scanned quantized-level coefficients may be entropy encoded for insertion into a bitstream.

[00230] Декодер выполняет энтропийное декодирование битового потока для получения коэффициентов квантованного уровня. Коэффициенты квантованного уровня могут быть скомпонованы в двумерной форме блока посредством обратного сканирования. Для обратного сканирования может использоваться по меньшей мере одно из диагонального сканирования вверх-вправо, вертикального сканирования и горизонтального сканирования.[00230] The decoder performs entropy decoding of the bitstream to obtain quantized-level coefficients. The quantized level coefficients can be arranged in a two-dimensional block form by inverse scanning. For reverse scanning, at least one of upward-right diagonal scanning, vertical scanning, and horizontal scanning may be used.

[00231] Коэффициенты квантованного уровня затем могут быть деквантованы, затем могут быть подвергнуты вторичному обратному преобразованию, если необходимо, и, наконец, первичному обратному преобразованию, если необходимо, для генерации восстановленного остаточного сигнала.[00231] The quantized level coefficients may then be dequantized, then subjected to a second inverse transform if necessary, and finally a primary inverse transform if necessary to generate a reconstructed residual signal.

[00232] Обратное отображение в динамическом диапазоне может выполняться для компонента яркости, восстановленного посредством интра-предсказания или интер-предсказания, перед внутриконтурной фильтрацией. Динамический диапазон может разбиваться на 16 равных частей, и функция отображения для каждой части может сигнализироваться. Функция отображения может сигнализироваться на уровне слайса или уровне группы мозаичных элементов. Функция обратного отображения для выполнения обратного отображения может быть выведена на основе функции отображения. Контурная фильтрация, сохранение опорных картинок и компенсация движения выполняются в области обратного отображения, и блок предсказания, сгенерированный посредством интер-предсказания, преобразуется в отображаемую область посредством отображения с использованием функции отображения, а затем используется для генерации восстановленного блока. Однако, поскольку интра-предсказание выполняется в отображаемой области, блок предсказания, сгенерированный посредством интра-предсказания, может использоваться для генерации восстановленного блока без отображения/обратного отображения.[00232] Dynamic range demapping may be performed on the luma component recovered by intra-prediction or inter-prediction before in-loop filtering. The dynamic range can be divided into 16 equal parts, and the display function for each part can be signaled. The display function can be signaled at the slice level or the tile group level. A reverse mapping function for performing reverse mapping may be derived based on the mapping function. Peak filtering, reference picture storage, and motion compensation are performed on the inverse mapping area, and the prediction block generated by inter-prediction is converted to a displayable area by mapping using a mapping function, and then used to generate a reconstructed block. However, since intra-prediction is performed in the mapped area, a prediction block generated by intra-prediction can be used to generate a reconstructed block without mapping/demapping.

[00233] Когда текущий блок является остаточным блоком цветового компонента, остаточный блок может быть преобразован в область обратного отображения путем выполнения масштабирования компонента цветности отображенной области. Доступность масштабирования может сигнализироваться на уровне слайса или уровне группы мозаичных элементов. Масштабирование может применяться только тогда, когда доступно отображение для компонента яркости, и разделение компонента яркости и разделение компонента цветности следуют одной и той же древовидной структуре. Масштабирование может выполняться на основе среднего значения выборок блока предсказания яркости, соответствующего блоку цветовой разности. В этом случае, когда текущий блок использует интер-предсказание, блок предсказания яркости может означать отображенный блок предсказания яркости. Значение, необходимое для масштабирования, может быть получено путем обращения к поисковой таблице с использованием индекса фрагмента, которому принадлежит среднее значение выборок блока предсказания яркости. Наконец, путем масштабирования остаточного блока с использованием выведенного значения, остаточный блок может быть переключен в область обратного отображения. Затем восстановление блока компонента цветности, интра-предсказание, интер-предсказание, контурная фильтрация и сохранение опорных картинок могут выполняться в области обратного отображения.[00233] When the current block is a residual block of a color component, the residual block can be converted to an inverse display area by performing scaling of the chrominance component of the displayed area. Zoom availability can be signaled at the slice level or the tile group level. Scaling can only be applied when mapping is available for the luminance component and both the luma component split and the chroma component split follow the same tree structure. The scaling may be performed based on the average value of the samples of the luminance prediction block corresponding to the color difference block. In this case, when the current block uses inter-prediction, the luminance prediction block may mean a mapped luminance prediction block. The value needed for scaling can be obtained by referring to a lookup table using the index of the chunk to which the mean value of the samples of the luminance predictor belongs. Finally, by scaling the residual block using the inferred value, the residual block can be switched to the inverse display area. Then, chrominance component block reconstruction, intra-prediction, inter-prediction, contour filtering, and reference picture storage may be performed in the inverse mapping area.

[00234] Информация, указывающая, доступно ли отображение/обратное отображение компонента яркости и компонента цветности, может сигнализироваться через набор параметров последовательности.[00234] Information indicating whether display/inverse display of the luminance component and the chrominance component is available may be signaled via a set of sequence parameters.

[00235] Блок предсказания текущего блока может быть сгенерирован на основе вектора блока, указывающего смещение между текущим блоком и опорным блоком в текущем изображении. Таким образом, режим предсказания для генерации блока предсказания со ссылкой на текущую картинку называется режимом внутриблочного копирования (IBC). Режим IBC может применяться к единицам кодирования M×N (M<=64, N<=64). Режим IBC может включать в себя режим пропуска, режим слияния, режим AMVP и т.п. В случае режима пропуска или режима слияния, формируется список кандидатов слияния, и индекс слияния сигнализируется, так что может быть указан один кандидат слияния. Вектор блока указанного кандидата слияния может использоваться как вектор блока текущего блока. Список кандидатов слияния может включать в себя по меньшей мере одно из пространственного кандидата, кандидата на основе истории, кандидата, основанного на среднем двух кандидатов, и кандидата нулевого слияния. В случае режима AMVP может сигнализироваться вектор разностного блока. Кроме того, вектор блока предсказания может быть выведен из левого соседнего блока и верхнего соседнего блока текущего блока. Индекс для соседнего блока, который должен использоваться, может сигнализироваться. Блок предсказания в режиме IBC включается в текущую CTU или левую CTU и ограничивается блоком в уже восстановленной области. Например, значение вектора блока может быть ограничено таким образом, чтобы блок предсказания текущего блока располагался в области из трех блоков 64×64, предшествующих блоку 64×64, которому принадлежит текущий блок, в порядке кодирования/декодирования. Путем ограничения значения вектора блока таким образом, потребление памяти и сложность устройства в соответствии с реализацией режима IBC могут быть уменьшены.[00235] A prediction block of the current block may be generated based on a block vector indicating an offset between the current block and a reference block in the current picture. Thus, the prediction mode for generating a prediction block with reference to the current picture is called an intra-block copy (IBC) mode. The IBC mode may be applied to MxN (M<=64, N<=64) coding units. The IBC mode may include a skip mode, a merge mode, an AMVP mode, and the like. In the case of a skip mode or a merge mode, a list of merge candidates is generated and the merge index is signaled so that one merge candidate can be specified. The block vector of the specified merge candidate may be used as the block vector of the current block. The merge candidate list may include at least one of a spatial candidate, a history based candidate, a candidate based on an average of two candidates, and a null merge candidate. In the case of the AMVP mode, the delta block vector may be signaled. In addition, the prediction block vector can be derived from the left neighbor block and the top neighbor block of the current block. The index for the adjacent block to be used can be signaled. The IBC mode prediction block is included in the current CTU or left CTU and limited to a block in the already recovered area. For example, the value of the block vector may be constrained such that the prediction block of the current block is located in a region of three 64x64 blocks preceding the 64x64 block to which the current block belongs, in coding/decoding order. By limiting the value of the block vector in this way, memory consumption and device complexity according to the implementation of the IBC mode can be reduced.

[00236] [00236]

[00237] Далее, будет описан способ генерации списка информации движения в соответствии с вариантом осуществления настоящего изобретения.[00237] Next, a method for generating a motion information list according to an embodiment of the present invention will be described.

[00238] Далее, список информации движения может относиться к списку, в котором хранится информация движения, сгенерированная при кодировании или декодировании изображения. [00238] Further, the motion information list may refer to a list that stores motion information generated when encoding or decoding an image.

[00239] В соответствии с вариантом осуществления настоящего изобретения, информация движения, сгенерированная в интер-предсказании, может храниться в списке информации движения, и информация движения может генерироваться с использованием списка информации движения в интер-предсказании следующего целевого блока кодирования/декодирования.[00239] According to an embodiment of the present invention, motion information generated in inter prediction may be stored in a motion information list, and motion information may be generated using the motion information list in inter prediction of the next encoding/decoding target block.

[00240] Здесь, информация движения может означать по меньшей мере одно из вектора движения, индекса опорной картинки, указателя интер-предсказания, как описано выше, а также флага использования списка предсказания, информации списка опорных картинок, опорной картинки, кандидата вектора движения, индекса кандидата вектора движения, кандидата слияния, индекса слияния и тому подобного.[00240] Here, the motion information may mean at least one of a motion vector, a reference picture index, an inter prediction indicator as described above, and a prediction list use flag, reference picture list information, a reference picture, a motion vector candidate, an index a motion vector candidate, a merge candidate, a merge index, and the like.

[00241] Список информации движения может хранить информацию движения, сгенерированную в предопределенной области.[00241] The motion information list may store motion information generated in a predetermined area.

[00242] В качестве примера, список информации движения может инициализироваться удалением информации движения из списка информации движения или генерацией нового списка информации движения, когда кодирование/декодирование завершено в предопределенной области, так что область меняется.[00242] As an example, the motion information list may be initialized by deleting the motion information from the motion information list or generating a new motion information list when encoding/decoding is completed in a predetermined area so that the area changes.

[00243] То есть, список информации движения может генерироваться на основе предопределенной области (или предопределенной секции, предопределенной единицы). Здесь, предопределенная область, относящаяся к списку информации движения, может быть единицей, большей, чем единица, в которой выполняется интер-предсказание. [00243] That is, the motion information list may be generated based on a predefined area (or a predefined section, a predefined unit). Here, the predetermined area related to the motion information list may be a unit larger than the unit in which inter prediction is performed.

[00244] В качестве примера, предопределенная область, относящаяся к списку информации движения, может представлять собой любое одно из блока, состоящего из одной или более CU, CTU, блока, состоящего из одной или более CTU (например, строки CTU), бруска (кирпичика), мозаичного элемента, слайса, картинки, кадра и группы картинок (GOP).[00244] As an example, the predefined area related to the motion information list may be any one of a block consisting of one or more CUs, a CTU, a block consisting of one or more CTUs (e.g., a CTU string), a bar ( brick), tile, slice, picture, frame, and group of pictures (GOP).

[00245] Предопределенная область, ассоциированная со списком информации движения, может называться верхней единицей предсказания (UPU) или областью инициализации.[00245] A predefined area associated with the motion information list may be called an upper prediction unit (UPU) or an initialization area.

[00246] Между тем, список информации движения может называться списком появления адаптивного вектора движения (AMVOL) или списком предсказателя вектора движения на основе истории (списком HMVP) в соответствии с вариантом осуществления.[00246] Meanwhile, the motion information list may be called an adaptive motion vector occurrence list (AMVOL) or a history-based motion vector predictor list (HMVP list) according to an embodiment.

[00247] Между тем, список информации движения может использоваться, только когда кодер/декодер работает в режиме интер-предсказания или режиме IBC.[00247] Meanwhile, the motion information list can only be used when the encoder/decoder operates in the inter prediction mode or the IBC mode.

[00248] Фиг. 8 и 9 представляют собой диаграммы, иллюстрирующие кодер и декодер, использующие список информации движения.[00248] FIG. 8 and 9 are diagrams illustrating an encoder and a decoder using a motion information list.

[00249] Со ссылкой на фиг. 8 и 9, кодер и декодер могут повышать эффективность предсказания с использованием информации движения, сохраненной в списке информации движения в процессе интер-предсказания или процессе предсказания IBC.[00249] With reference to FIG. 8 and 9, the encoder and the decoder can improve the prediction performance using the motion information stored in the motion information list in the inter-prediction process or the IBC prediction process.

[00250][00250]

[00251] Между тем, список информации движения может инициализироваться или генерироваться, когда начинается кодирование/декодирование новой UPU. Поэтому, когда начинается кодирование/декодирование новой UPU, список информации движения может не иметь информации движения, поскольку интер-предсказание не выполнено в новой UPU. Поскольку список информации движения не имеет информации движения, список информации движения может не использоваться в интер-предсказании. Кроме того, когда количество информации движения, сохраненной в списке информации движения, мало, сложно ожидать эффективного кодирования, поскольку существует мало информации, используемой для интер-предсказания.[00251] Meanwhile, the motion information list may be initialized or generated when encoding/decoding of a new UPU starts. Therefore, when encoding/decoding of a new UPU starts, the motion information list may not have motion information because inter-prediction is not performed in the new UPU. Since the motion information list has no motion information, the motion information list may not be used in inter prediction. In addition, when the amount of motion information stored in the motion information list is small, it is difficult to expect efficient coding because there is little information used for inter prediction.

[00252] В настоящем изобретении, при выполнении интер-предсказания (или предсказания IBC), когда имеется мало или не имеется информации движения, сохраненной в списке информации движения, предлагается способ дополнительного сохранения предсказанной информации движения в списке информации движения, чтобы генерировать список информации движения. [00252] In the present invention, when performing inter-prediction (or IBC prediction) when there is little or no motion information stored in the motion information list, a method is provided for further storing the predicted motion information in the motion information list to generate a motion information list .

[00253] Посредством вышеописанного способа, можно повысить эффективность кодирования путем более точного выполнения интер-предсказания с использованием списка информации движения.[00253] Through the above method, it is possible to improve coding efficiency by more accurately performing inter prediction using a motion information list.

[00254][00254]

[00255] Список информации движения в соответствии с настоящим изобретением может хранить информацию движения, сгенерированную в текущей UPU.[00255] The motion information list according to the present invention may store motion information generated in the current UPU.

[00256] Фиг. 10 представляет собой блок-схему последовательности операций, иллюстрирующую способ интер-предсказания с использованием списка информации движения в соответствии с настоящим изобретением.[00256] FIG. 10 is a flowchart illustrating an inter prediction method using a motion information list according to the present invention.

[00257] Со ссылкой на фиг. 10, когда начинается кодирование/декодирование новой UPU, этап инициализации списка информации движения является этапом удаления всей информации в списке информации движения или возвращение ее в установленное по умолчанию значение.[00257] With reference to FIG. 10, when the encoding/decoding of the new UPU starts, the step of initializing the motion information list is the step of deleting all information in the motion information list or returning it to a default value.

[00258] Этап предсказания списка информации движения является этапом предсказания информации движения, подлежащей вводу в список информации движения, и добавления ее в список информации движения.[00258] The motion information list prediction step is a step of predicting the motion information to be entered into the motion information list and adding it to the motion information list.

[00259] Здесь, этап предсказания списка информации движения может добавлять множество предсказанной информации движения в список информации движения. [00259] Here, the motion information list prediction step may add a plurality of predicted motion information to the motion information list.

[00260] Этап интер-предсказания включает в себя этап предсказания информации движения и является этапом предсказания текущего блока через опорную картинку.[00260] The inter-prediction step includes a motion information prediction step, and is a step of predicting the current block via the reference picture.

[00261] Этап добавления информации движения является этапом добавления информации движения, полученной в результате интер-предсказания, в список информации движения. В соответствии с вариантом осуществления, этап добавления информации движения может опускаться или изменяться. Например, когда выполняется режим троичного разбиения, этап добавления информации движения может опускаться. То есть, когда блоки, являющиеся результатом разбиения в диагональном направлении, совместно используют один и тот же список информации движения в режиме троичного разбиения, этап добавления информации движения может опускаться.[00261] The step of adding motion information is the step of adding motion information obtained as a result of inter prediction to the motion information list. According to an embodiment, the step of adding motion information may be omitted or changed. For example, when the ternary split mode is executed, the step of adding motion information may be omitted. That is, when the blocks resulting from splitting in the diagonal direction share the same list of motion information in the ternary split mode, the step of adding motion information may be omitted.

[00262] Этап интер-предсказания и этап добавления информации движения могут выполняться в единицах блоков и могут выполняться для всех блоков в соответствующей UPU.[00262] The inter prediction step and the motion information adding step may be performed in units of blocks, and may be performed for all blocks in the corresponding UPU.

[00263] После проверки, завершено ли исполнение для всех блоков в UPU, когда исполнение не завершено, процесс переходит к следующему блоку, так что интер-предсказание может выполняться.[00263] After checking whether execution is completed for all blocks in the UPU, when execution is not completed, the process proceeds to the next block so that inter-prediction can be performed.

[00264] Когда интер-предсказание выполнено над всеми блоками в UPU и список информации движения UPU больше не используется, список информации движения может инициализироваться.[00264] When inter-prediction is performed on all blocks in the UPU and the UPU motion information list is no longer used, the motion information list may be initialized.

[00265] Фиг. 11 представляет собой блок-схему последовательности операций, иллюстрирующую способ интер-предсказания с использованием списка информации движения. Описание каждого этапа, проиллюстрированного в блок-схеме последовательности операций на фиг. 11, может быть тем же самым, что и описание фиг. 10.[00265] FIG. 11 is a flowchart illustrating an inter prediction method using a motion information list. Description of each step illustrated in the flowchart of FIG. 11 may be the same as the description of FIG. ten.

[00266] Однако, момент времени, в который выполняется этап предсказания списка информации движения согласно фиг. 11, может отличаться от момента времени согласно фиг. 10.[00266] However, the point in time at which the motion information list prediction step of FIG. 11 may be different from the time of FIG. ten.

[00267] На фиг. 10, этап предсказания списка информации движения может выполняться после того, как выполнен этап инициализации списка информации движения. То есть, этап предсказания списка информации движения может выполняться вместе с этапом инициализации списка информации движения, и, таким образом, этап предсказания списка информации движения может выполняться, когда UPU изменяется.[00267] FIG. 10, the motion information list prediction step may be performed after the motion information list initialization step is performed. That is, the motion information list prediction step may be performed together with the motion information list initialization step, and thus the motion information list prediction step may be performed when the UPU changes.

[00268] На фиг. 11, этап предсказания списка информации движения может выполняться после того, как выполнен этап добавления информации движения. То есть, предсказание списка информации движения может выполняться всякий раз, когда информация движения добавляется в список информации движения.[00268] FIG. 11, the motion information list prediction step may be performed after the motion information adding step is performed. That is, motion information list prediction may be performed whenever motion information is added to the motion information list.

[00269] Фиг. 11 отличается от фиг. 10 тем, что дополнительная информация движения может быть предсказана с использованием информации движения, хранящейся в текущем списке информации движения.[00269] FIG. 11 is different from FIG. 10 in that the additional motion information can be predicted using the motion information stored in the current motion information list.

[00270] Кроме того, в случае фиг. 11, предсказанная информация движения может также непрерывно обновляться или добавляться в список информации движения путем предсказания более эффективных кандидатов, но предсказание списка информации движения выполняется над каждым блоком, так что объем вычислений системы может возрасти.[00270] In addition, in the case of FIG. 11, the predicted motion information may also be continuously updated or added to the motion information list by predicting more efficient candidates, but motion information list prediction is performed on each block, so that the amount of system computation may increase.

[00271] В блок-схемах последовательности операций примеров согласно фиг. 10 и 11, порядок каждого этапа может изменяться. При кодировании/декодировании блока другой UPU в ситуации, где кодирование/декодирование текущей UPU не завершено, каждый этап на фиг. 10 и 11 может применяться или опускаться в различном порядке.[00271] In the flowcharts of the examples of FIG. 10 and 11, the order of each step may vary. When encoding/decoding a block of another UPU in a situation where encoding/decoding of the current UPU is not completed, each step in FIG. 10 and 11 may be applied or omitted in a different order.

[00272] Когда отсутствует отношение пространственной привязки между блоками на границе UPU, как в случае, когда UPU представляет собой единицу картинки, единицу слайса или единицу мозаичного элемента, порядок кодирования/декодирования не может проходить между UPU, отличающимися друг от друга. В этом случае, когда кодирование/декодирование текущей UPU не закончено, кодирование может выполняться в той же самой UPU даже после перехода к следующему блоку.[00272] When there is no spatial reference relationship between blocks on a UPU boundary, as in the case where the UPU is a picture unit, a slice unit, or a tile unit, the encoding/decoding order cannot pass between UPUs different from each other. In this case, when encoding/decoding of the current UPU is not completed, encoding can be performed in the same UPU even after moving to the next block.

[00273] Однако, когда UPU разделена на множество единиц в пределах одной и той же картинки, слайса или мозаичного элемента, случай, в котором следующий блок кодирования/ декодирования принадлежит другой UPU, может возникать, даже когда кодирование/декодирование не закончено в текущей UPU в соответствии с последовательностью кодирования/декодирования. В этом случае, отличающиеся друг от друга UPU могут иметь различные списки информации движения, и информация кодирования текущего блока может храниться в списке информации движения UPU, которой принадлежит текущий блок. В этом случае, список информации движения может также быть предсказан из списка информации движения, сохраненного в другой UPU до настоящего времени.[00273] However, when a UPU is divided into multiple units within the same picture, slice, or tile, a case in which the next encoding/decoding unit belongs to another UPU may occur even when encoding/decoding is not completed in the current UPU according to the encoding/decoding sequence. In this case, different UPUs may have different motion information lists, and the coding information of the current block may be stored in the motion information list of the UPU to which the current block belongs. In this case, the motion information list may also be predicted from the motion information list stored in the other UPU up to now.

[00274] Между тем, этап предсказания списка информации движения может выполняться как в момент времени инициализации списка информации движения, так и в момент времени добавления информации движения.[00274] Meanwhile, the motion information list prediction step may be performed at both the motion information list initialization time and the motion information addition time.

[00275] Фиг. 12 представляет собой блок-схему последовательности операций, иллюстрирующую способ интер-предсказания, в котором предсказание списка информации движения выполняется в момент времени инициализации списка информации движения и в момент времени добавления информации движения. Описание каждого этапа, проиллюстрированного в блок-схеме последовательности операций на фиг. 12, может быть тем же самым, что и на фиг. 10.[00275] FIG. 12 is a flowchart illustrating an inter-prediction method in which motion information list prediction is performed at a motion information list initialization time and a motion information addition time. Description of each step illustrated in the flowchart of FIG. 12 may be the same as in FIG. ten.

[00276] Способ интер-предсказания с использованием списка информации движения был описан на фиг. 10-12. Этап интер-предсказания на фиг. 10-12 может заменяться на этап предсказания IBC, и вектор блока, сгенерированный посредством этапа предсказания IBC, может быть включен в список информации движения. В следующем описании имеется в виду, что интер-предсказание включает в себя предсказание IBC.[00276] An inter prediction method using a motion information list has been described in FIG. 10-12. The inter-prediction step in FIG. 10-12 may be replaced with the IBC prediction step, and the block vector generated by the IBC prediction step may be included in the motion information list. In the following description, it is meant that inter-prediction includes IBC prediction.

[00277] Между тем, при использовании совместно используемого списка слияния в предсказании IBC, этап добавления информации движения может опускаться.[00277] Meanwhile, when using the shared merge list in IBC prediction, the step of adding motion information may be omitted.

[00278][00278]

[00279] Фиг. 13 и 14 иллюстрируют кодер и декодер, включающие в себя предсказатель списка информации движения.[00279] FIG. 13 and 14 illustrate an encoder and a decoder including a motion information list predictor.

[00280] Со ссылкой на фиг. 13 и 14, модуль интер-предсказания выполняет интер-предсказание над текущим блоком посредством опорной картинки. Здесь, модуль интер-предсказания может выполнять интер-предсказание, обращаясь к списку информации движения.[00280] With reference to FIG. 13 and 14, the inter-prediction module performs inter-prediction on the current block by means of the reference picture. Here, the inter prediction module may perform inter prediction by referring to the motion information list.

[00281] Модуль добавления списка информации движения может добавлять информацию движения, сгенерированную в результате интер-предсказания, в список информации движения. [00281] The motion information list adding unit may add motion information generated as a result of inter prediction to the motion information list.

[00282] Модуль инициализации списка информации движения может инициализировать информацию, сохраненную в списке информации движения, в соответствии с изменением UPU или созданием нового списка информации движения.[00282] The motion information list initialization module may initialize the information stored in the motion information list according to the change of the UPU or the creation of a new motion information list.

[00283] Модуль предсказания списка информации движения может предсказывать информацию движения и сохранять информацию движения в списке информации движения. Здесь, можно обращаться к различным типам информации в соответствии со способом предсказания списка информации движения, выполняемым модулем предсказания списка информации движения. [00283] The motion information list prediction module can predict the motion information and store the motion information in the motion information list. Here, it is possible to refer to various types of information according to the motion information list prediction method performed by the motion information list prediction unit.

[00284] Соединение (A) показывает соединение между модулями в случае, если модуль предсказания списка информации движения использует информацию текущего блока, такую как пространственное и временное положение текущего блока; соединение (B) показывает соединение между модулями в случае, если модуль предсказания списка информации движения использует информацию блоков, пространственно и во времени смежных с текущим блоком, или информацию опорной картинки с различными типами информации, к которым может обращаться текущий блок; и соединение (C) показывает соединение между модулями в случае, если модуль предсказания списка информации движения использует информацию, сохраненную в текущем списке информации движения. Поэтому, по меньшей мере одно из соединения (A), (B) и (C) может быть опущено в соответствии со способом предсказания, выполняемым модулем предсказания списка информации движения.[00284] Connection (A) shows a connection between modules in case the motion information list prediction module uses information of the current block, such as the spatial and temporal position of the current block; connection (B) shows a connection between modules in case that the motion information list prediction module uses information of blocks spatially and temporally adjacent to the current block, or reference picture information with different types of information that the current block can access; and the connection (C) shows the connection between the modules in case the motion information list prediction module uses the information stored in the current motion information list. Therefore, at least one of the connections (A), (B) and (C) can be omitted according to the prediction method performed by the motion information list prediction unit.

[00285] Также, как показано на фиг. 10, модуль предсказания списка информации движения может выполняться, когда список информации движения инициализируется. В этом случае, модуль предсказания списка информации движения может работать путем приема сигнала от модуля инициализации списка информации движения через соединение (D). Как показано на фиг. 11, при работе модуля предсказания списка информации движения независимо от инициализации списка информации движения, соединение (D) может быть опущено.[00285] Also, as shown in FIG. 10, the motion information list prediction unit may be executed when the motion information list is initialized. In this case, the motion information list prediction unit may operate by receiving a signal from the motion information list initialization unit via a connection (D). As shown in FIG. 11, when the motion information list prediction unit is operated, regardless of the initialization of the motion information list, the connection (D) may be omitted.

[00286] Между тем, модуль кодирования информации движения на фиг. 13 может кодировать информацию движения, сгенерированную в результате интер-предсказания. Модуль декодирования информации движения, показанный на фиг. 14, декодирует сигнал, закодированный модулем кодирования информации движения согласно фиг. 13, и позволяет выполнять интер-предсказание так же, как и кодер, посредством декодированного сигнала.[00286] Meanwhile, the motion information encoding unit in FIG. 13 may encode motion information generated as a result of inter prediction. The motion information decoding unit shown in FIG. 14 decodes the signal encoded by the motion information encoding unit of FIG. 13 and allows inter-prediction to be performed in the same way as the encoder on the decoded signal.

[00287][00287]

[00288] Указатель, указывающий, следует ли применить список информации движения во время интер-предсказания, может передаваться в наборе параметров, таком как набор параметров последовательности или набор параметров картинки, заголовок мозаичного элемента, заголовок слайса и тому подобное.[00288] A pointer indicating whether to apply the motion information list during inter prediction may be transmitted in a parameter set such as a sequence parameter set or a picture parameter set, a tile header, a slice header, and the like.

[00289] Фиг. 15 представляет собой диаграмму, иллюстрирующую вариант осуществления, который выполняет сигнализацию, включающую в себя указатель, указывающий, следует ли применить список информации движения к синтаксису набора параметров последовательности (SPS).[00289] FIG. 15 is a diagram illustrating an embodiment that performs signaling including a pointer indicating whether to apply a motion information list to sequence parameter set (SPS) syntax.

[00290] Фиг. 16 представляет собой диаграмму, иллюстрирующую вариант осуществления, который выполняет сигнализацию, включающую в себя указатель, указывающий, следует ли применить список информации движения к синтаксису набора параметров картинки (PPS).[00290] FIG. 16 is a diagram illustrating an embodiment that performs signaling including a pointer indicating whether to apply a motion information list to a picture parameter set (PPS) syntax.

[00291] Фиг. 17 представляет собой диаграмму, иллюстрирующую вариант осуществления, который выполняет сигнализацию, включающую в себя указатель, указывающий, следует ли применить список информации движения к синтаксису заголовка слайса.[00291] FIG. 17 is a diagram illustrating an embodiment that performs signaling including a pointer indicating whether to apply the motion information list to the slice header syntax.

[00292] На фиг. 15-17, amvol_enable_flag является информацией, указывающей, разрешено ли интер-предсказание с использованием списка информации движения. Когда amvol_enable_flag имеет значение “истинно”, это указывает, что интер-предсказание с использованием списка информации движения разрешено, а когда имеет значение “ложно”, это указывает, что интер-предсказание с использованием списка информации движения не разрешено.[00292] FIG. 15-17, amvol_enable_flag is information indicating whether inter prediction is enabled using the motion information list. When amvol_enable_flag is true, it indicates that inter-prediction using the motion information list is enabled, and when it is false, it indicates that inter-prediction using the motion information list is not enabled.

[00293] Кроме того, amvol_prediction_flag является информацией, указывающей, выполняется ли предсказание списка информации движения. То есть, amvol_prediction_flag может указывать, следует ли выполнить этап предсказания списка информации движения согласно фиг. 10-12. amvol_prediction_flag может сигнализироваться, только когда amvol_enable_flag имеет значение “истинно”.[00293] In addition, amvol_prediction_flag is information indicating whether motion information list prediction is performed. That is, the amvol_prediction_flag may indicate whether the motion information list prediction step of FIG. 10-12. amvol_prediction_flag can only be signaled when amvol_enable_flag is true.

[00294] Между тем, когда amvol_enable_flag и amvol_prediction_flag сигнализируются в заголовке слайса, как в примере на фиг. 17, сигнализация выполняется, когда тип слайса не является I-слайсом. Это объясняется тем, что слайс типа I-слайса не выполняет интер-предсказание, так что интер-предсказание с использованием списка информации движения не выполняется. Однако когда IBC выполняется в слайсе типа I-слайса и список информации движения доступен в IBC, amvol_enable_flag может сигнализироваться. Кроме того, когда IBC выполняется над слайсом типа I-слайса и предсказание списка информации движения доступно, amvol_prediction_flag может сигнализироваться.[00294] Meanwhile, when amvol_enable_flag and amvol_prediction_flag are signaled in the slice header, as in the example of FIG. 17, signaling is performed when the slice type is not an I-slice. This is because the I-slice type slice does not perform inter prediction, so inter prediction using the motion information list is not performed. However, when an IBC is executed in an I-slice type slice and a motion information list is available in the IBC, the amvol_enable_flag may be signaled. In addition, when IBC is performed on an I-slice type slice and motion information list prediction is available, amvol_prediction_flag may be signaled.

[00295][00295]

[00296] Далее, будет описан способ предсказания списка информации движения в соответствии с настоящим изобретением.[00296] Next, the motion information list prediction method according to the present invention will be described.

[00297] В настоящей спецификации, текущая UPU может означать UPU, которой принадлежит текущий блок, и текущий список информации движения может означать список информации движения текущего блока. [00297] In the present specification, the current UPU may mean the UPU to which the current block belongs, and the current motion information list may mean the motion information list of the current block.

[00298] Кроме того, предсказание списка информации движения означает предсказание информации движения с целью включения в инициализированный или вновь сгенерированный список информации движения.[00298] In addition, motion information list prediction means motion information prediction to be included in the initialized or newly generated motion information list.

[00299] Информация движения текущего списка информации движения может быть предсказана с использованием области, в которой кодирование/декодирование завершено раньше, чем текущая UPU (то есть, предварительно восстановленной области).[00299] The motion information of the current motion information list can be predicted using an area in which encoding/decoding is completed earlier than the current UPU (ie, a pre-recovered area).

[00300] Поскольку информация движения изображения имеет тенденцию, подобную смежной по пространству и по времени области, текущая UPU может иметь информацию движения, аналогичную другим смежным по пространству и по времени областям. Поэтому, путем обращения к информации движения в предварительно восстановленной области, можно предсказать информацию движения списка информации движения текущей UPU.[00300] Because the image motion information tends to be similar to the spatially and temporally contiguous region, the current UPU may have motion information similar to other spatially and temporally contiguous regions. Therefore, by referring to the motion information in the previously reconstructed area, it is possible to predict the motion information of the motion information list of the current UPU.

[00301] Например, может существовать способ предсказания информации движения списка информации движения из области, смежной по пространству и времени, для текущего блока и способ предсказания информации движения списка информации движения текущей UPU из списка информации движения предварительно восстановленной UPU.[00301] For example, there may be a method for predicting the motion information of the motion information list from an area contiguous in space and time for the current block, and a method for predicting the motion information of the motion information list of the current UPU from the motion information list of the previously recovered UPU.

[00302][00302]

[00303] 1. Способ предсказания информации движения списка информации движения из области, смежной по пространству и времени с текущим блоком[00303] 1. A method for predicting motion information of a motion information list from a region adjacent in space and time to the current block

[00304] [00304]

[00305] Возможно предсказать информацию движения текущего списка информации движения из областей, смежных по пространству и времени и принадлежащих UPU, отличающимся от текущей UPU, включающей в себя текущий блок.[00305] It is possible to predict motion information of the current motion information list from areas contiguous in space and time and belonging to UPUs other than the current UPU including the current block.

[00306] Фиг. 18 является примером предсказания информации движения текущего списка информации движения из области, смежной по времени с текущим блоком.[00306] FIG. 18 is an example of motion information prediction of the current motion information list from an area adjacent in time to the current block.

[00307] На фиг. 18 предполагается, что UPU является единицей картинки. Поэтому, когда картинка изменяется, список информации движения может быть также инициализирован.[00307] FIG. 18 assumes that the UPU is a picture unit. Therefore, when the picture changes, the motion information list can also be initialized.

[00308] Фиг. 18 иллюстрирует способ предсказания информации движения списка информации движения (AMOVL) из опорной картинки, к которой обращается текущая картинка. Здесь, опорная картинка является предварительно восстановленной картинкой и может содержать информацию движения, используемую, чтобы восстановить картинку.[00308] FIG. 18 illustrates a method for predicting motion information of a motion information list (AMOVL) from a reference picture referenced by the current picture. Here, the reference picture is a previously reconstructed picture and may contain motion information used to reconstruct the picture.

[00309] Со ссылкой на фиг. 18, информация движения может быть предсказана из соответствующего блока (далее упоминается как “временной соседний блок”) опорной картинки, который пространственно идентичен, но по времени отличается от текущего блока кодирования (например, CU, PU, макроблока, CTU и т.д.), подлежащего кодированию/декодированию в текущей картинке, и может добавляться в текущий список информации движения.[00309] With reference to FIG. 18, motion information can be predicted from a corresponding block (hereinafter referred to as “temporal neighbor block”) of a reference picture that is spatially identical but different in time from the current coding block (e.g., CU, PU, macroblock, CTU, etc.). ) to be encoded/decoded in the current picture and may be added to the current motion information list.

[00310] Поскольку список информации движения инициализируется в момент времени, когда восстановлен первый блок кодирования текущей картинки, не должно иметься информации, сохраненной в списке информации движения. Однако, в примере на фиг. 18, к которому применяется настоящее изобретение, можно видеть, что информация движения A’, B’ и C’, выведенная из временных соседних блоков опорной картинки, добавляется в список информации движения.[00310] Since the motion information list is initialized at the point in time when the first coding block of the current picture is restored, there should be no information stored in the motion information list. However, in the example of FIG. 18 to which the present invention is applied, it can be seen that the motion information A', B' and C' outputted from the temporal neighboring blocks of the reference picture is added to the motion information list.

[00311] Фиг. 19 представляет собой диаграмму, иллюстрирующую пример предсказания информации движения текущего списка информации движения из области, пространственно смежной с текущим блоком кодирования.[00311] FIG. 19 is a diagram illustrating an example of motion information prediction of the current motion information list from an area spatially adjacent to the current coding block.

[00312] На фиг. 19, предполагается, что UPU является единицей слайса. Поэтому, может существовать множество UPU в одной картинке.[00312] FIG. 19, the UPU is assumed to be a slice unit. Therefore, there may be multiple UPUs in one picture.

[00313] Фиг. 19 показывает способ предсказания информации движения списка информации движения (AMOVL) блока, пространственно смежного с текущим блоком кодирования (далее упоминается как “пространственный соседний блок”).[00313] FIG. 19 shows a motion information prediction method of a motion information list (AMOVL) of a block spatially adjacent to the current coding block (hereinafter referred to as “spatial neighboring block”).

[00314] Со ссылкой на фиг. 19, UPU 0 состоит из трех блоков и соответствует предварительно восстановленной области, которая уже была восстановлена.[00314] With reference to FIG. 19, UPU 0 is composed of three blocks, and corresponds to a previously restored area that has already been restored.

[00315] Поскольку список информации движения инициализируется в момент времени, когда восстановлен первый блок кодирования UPU 1, не должно иметься информации, сохраненной в списке информации движения. Однако, в примере на фиг. 18, к которому применяется настоящее изобретение, информация движения списка информации движения может быть предсказана путем обращения к информации движения области, пространственно смежной с текущим блоком кодирования, из предварительно восстановленной UPU 0. Поэтому, можно видеть, что информация движения A и B добавляется в список информации движения UPU 1.[00315] Since the motion information list is initialized at the point in time when the first coding unit UPU 1 is restored, there should be no information stored in the motion information list. However, in the example of FIG. 18 to which the present invention is applied, the motion information of the motion information list can be predicted by referring to the motion information of an area spatially adjacent to the current coding block from the previously recovered UPU 0. Therefore, it can be seen that motion information A and B are added to the list traffic information UPU 1.

[00316] Между тем, описание выше было приведено на основе блока кодирования согласно фиг. 18 и 19, но может быть описано на основе единицы дерева кодирования (CTU), единицы кодирования (CU), единицы предсказания (PU), единицы преобразования (TU), макроблока или блока предопределенного размера.[00316] Meanwhile, the description above has been given based on the coding block of FIG. 18 and 19, but may be described in terms of a coding tree unit (CTU), a coding unit (CU), a prediction unit (PU), a transform unit (TU), a macroblock, or a predetermined size block.

[00317] [00317]

[00318] Блок кодирования может хранить информацию движения в единицах подблоков. Соответственно, разная информация движения может обеспечиваться в единицах подблоков, и к информации движения можно обращаться независимо от типа разбиения блока кодирования.[00318] An encoding block may store motion information in units of subblocks. Accordingly, different motion information can be provided in units of sub-blocks, and the motion information can be accessed regardless of the partition type of the coding block.

[00319] Даже в случае предсказания списка информации движения из области, смежной по пространству и времени, можно обращаться к подблоку смежного по пространству и времени блока кодирования. Здесь, поскольку обращение ко всем подблокам требует большого количества вычислений, предсказание списка информации движения может выполняться посредством обращения к подблоку, имеющем предопределенный диапазон или положение. Репрезентативное значение n подблоков может использоваться вместо минимальной единицы, так что информация движения всех подблоков не сохраняется.[00319] Even in the case of predicting a list of motion information from an area contiguous in space and time, it is possible to refer to a sub-block of the contiguous in space and time of the coding block. Here, since referring to all sub-blocks requires a lot of calculation, motion information list prediction can be performed by referring to a sub-block having a predetermined range or position. A representative value of n sub-blocks may be used instead of the minimum one, so that motion information of all sub-blocks is not stored.

[00320] В качестве примера, когда размер подблока составляет 4×4, четыре подблока принадлежат области 8×8. Путем выбора репрезентативного значения из четырех подблоков и сохранения только одной информации движения в области 8×8, можно уменьшить использование памяти для хранения информации движения подблока. Здесь, предсказание списка информации движения может обращаться к информации движения, указанной в качестве репрезентативной в области 8×8.[00320] As an example, when the subblock size is 4×4, four subblocks belong to an 8×8 area. By selecting a representative value from four sub-blocks and storing only one motion information in an 8×8 area, the memory usage for storing sub-block motion information can be reduced. Here, the motion information list prediction may refer to the motion information indicated as representative in the 8×8 region.

[00321] Диапазон для выбора репрезентативного значения подблоков может быть задан в различных размерах, таких как 4×4, 8×8, 16×16 и т.п. Способ выбора репрезентативного значения из подблоков может включать в себя способ использования фиксированного положения в диапазоне выбора репрезентативного значения, способ учета частоты появления, способ использования среднего значения и т.п. Кроме того, репрезентативное значение может определяться с использованием по меньшей мере одного из взвешенной суммы, взвешенного среднего значения, медианного значения, минимального значения и максимального значения, в дополнение к среднему значению.[00321] The range for selecting a representative value of the sub-blocks may be set in various sizes such as 4x4, 8x8, 16x16, and the like. The method for selecting a representative value from the sub-blocks may include a method for using a fixed position in the selection range of the representative value, a method for considering the frequency of occurrence, a method for using an average value, and the like. In addition, a representative value may be determined using at least one of a weighted sum, a weighted average, a median, a minimum value, and a maximum value, in addition to the average value.

[00322][00322]

[00323] При предсказании списка информации движения из смежной по времени области, поскольку картинка временного соседнего блока отличается от текущей картинки, и опорная картинка временного соседнего блока отличается от опорной картинки текущего блока, временное расстояние, указанное информацией движения, может варьироваться.[00323] When predicting a list of motion information from a time-contiguous area, since the picture of the temporal neighbor block is different from the current picture, and the reference picture of the temporal neighbor block is different from the reference picture of the current block, the temporal distance indicated by the motion information may vary.

[00324] Например, в случае, где текущей картинкой является POC 4, картинкой временного соседнего блока, к которой обращаются для предсказания списка информации движения, является POC 8, опорной картинкой текущего блока является POC 8, и опорной картинкой временного соседнего блока является POC 1, временное расстояние между текущей картинкой и опорной картинкой текущего блока имеет различие на четыре относительно POC, и временное расстояние между картинкой временного соседнего блока и опорной картинкой временного соседнего блока имеет различие на семь относительно POC. Кроме того, поскольку текущий блок обращается к будущей картинке, а временной соседний блок обращается к прошлой картинке, можно видеть, что временные направления обращения также противоположны друг другу.[00324] For example, in the case where the current picture is POC 4, the temporal neighbor picture referred to for motion information list prediction is POC 8, the reference picture of the current block is POC 8, and the temporal neighbor picture is POC 1 , the temporal distance between the current picture and the current block reference picture has a difference of four with respect to the POC, and the temporal distance between the temporal neighbor picture and the temporal neighbor block reference picture has a difference of seven with respect to the POC. In addition, since the current block refers to the future picture, and the temporal neighbor block refers to the past picture, it can be seen that the temporal directions of reference are also opposite to each other.

[00325] Поэтому, необходимо предсказывать и корректировать изменение в информации движения во временных интервалах. Это называется масштабированием информации движения.[00325] Therefore, it is necessary to predict and correct the change in motion information in time intervals. This is called motion information scaling.

[00326] Когда предсказание списка информации движения выполняется из смежной по времени области, масштабирование информации движения может также применяться к информации движения, к которой обращаются для предсказания списка информации движения.[00326] When motion information list prediction is performed from a time-contiguous area, motion information scaling may also be applied to motion information that is referred to for motion information list prediction.

[00327] Даже в случае предсказания списка информации движения из временного соседнего блока, можно ожидать повышения эффективности кодирования за счет масштабирования информации движения.[00327] Even in the case of predicting a motion information list from a temporal neighbor block, an increase in coding efficiency by scaling the motion information can be expected.

[00328] Однако масштабирование информации движения может требовать большого объема вычислений. Поэтому, при выполнении предсказания списка информации движения, масштабирование информации движения может опускаться, или информация движения, требующая масштабирования информации движения, может не использоваться для предсказания.[00328] However, scaling the motion information may be computationally intensive. Therefore, when motion information list prediction is performed, motion information scaling may be omitted, or motion information requiring motion information scaling may not be used for prediction.

[00329] Когда имеет место незначительное движение временного соседнего блока, масштабирование информации движения может не требоваться.[00329] When there is little movement of the temporary neighboring block, scaling of the movement information may not be required.

[00330] Альтернативно, масштабирование информации движения может опускаться, когда временной интервал между текущей картинкой и опорной картинкой текущего блока равен временному интервалу между картинкой временного соседнего блока и опорной картинкой временного соседнего блока или меньше, чем предопределенный диапазон.[00330] Alternatively, motion information scaling may be omitted when the time interval between the current picture and the reference picture of the current block is equal to the time interval between the temporal neighbor block picture and the temporal neighbor block reference picture, or less than a predetermined range.

[00331] Как таковая, только информация движения, которая не требует масштабирования информации движения, используется для предсказания, и соответственно можно избежать увеличения объема вычислений из-за масштабирования информации движения.[00331] As such, only motion information that does not require motion information scaling is used for prediction, and accordingly, an increase in the amount of computation due to motion information scaling can be avoided.

[00332] Между тем, информации движения, требующей масштабирования информации движения, может назначаться более низкий приоритет, чем информации движения, которая не требует масштабирования информации движения при предсказании.[00332] Meanwhile, motion information requiring motion information scaling may be assigned a lower priority than motion information that does not require motion information scaling in prediction.

[00333][00333]

[00334] 2. Способ предсказания информации движения списка информации движения из списка информации движения предварительно восстановленной UPU[00334] 2. A method for predicting motion information of a motion information list from a motion information list of a pre-recovered UPU

[00335][00335]

[00336] Настоящий способ является способом выполнения предсказания списка информации движения текущей UPU с использованием списка информации движения предварительно восстановленной UPU.[00336] The present method is a method for performing motion information list prediction of a current UPU using a motion information list of a previously recovered UPU.

[00337] UPU могут иметь списки информации движения, отличающиеся друг от друга, и смежные по пространству и времени UPU могут иметь списки информации движения, сходные друг с другом. Поэтому, текущая UPU может предсказывать информацию движения текущего списка информации движения путем обращения к списку информации движения смежной по пространству и времени UPU, которая предварительно восстановлена.[00337] UPUs may have motion information lists that are different from each other, and spatially and temporally adjacent UPUs may have motion information lists that are similar to each other. Therefore, the current UPU can predict the motion information of the current motion information list by referring to the motion information list of the spatially and temporally adjacent UPU that has been previously recovered.

[00338][00338]

[00339] Фиг. 20 представляет собой диаграмму, иллюстрирующую пример способа выполнения предсказания текущего списка информации движения с обращением к списку информации движения предварительно восстановленной UPU.[00339] FIG. 20 is a diagram illustrating an example of a method for performing prediction of the current motion information list with reference to the motion information list of the pre-recovered UPU.

[00340] На фиг. 20 показан момент времени, когда первый блок кодирования UPU 1 восстановлен, и список информации движения может быть инициализирован в этот момент времени, так что информация движения, сгенерированная из текущей UPU (UPU 1), не может быть добавлена.[00340] FIG. 20 shows the point in time when the first coding unit UPU 1 is recovered and the motion information list can be initialized at this point in time so that the motion information generated from the current UPU (UPU 1) cannot be added.

[00341] В примере на фиг. 20, к которому применяется настоящее изобретение, с обращением к списку информации движения предварительно восстановленной UPU 0, предсказание списка информации движения выполняется путем добавления информации движения списка информации движения UPU 0 в список информации движения UPU 1.[00341] In the example of FIG. 20 to which the present invention is applied, with reference to the motion information list of the previously recovered UPU 0, motion information list prediction is performed by adding the motion information of the UPU 0 motion information list to the motion information list of the UPU 1.

[00342] После того, как интер-предсказание первого блока текущей картинки окончено, информация движения первого блока может быть добавлена в список информации движения. Здесь, соответствующая информация движения может быть установлена, чтобы иметь самое низкое значение индекса в списке информации движения. Значения индекса информации движения, существующей в существующем списке информации движения, могут увеличиваться на единицу и таким образом сохраняться. [00342] After inter-prediction of the first block of the current picture is completed, motion information of the first block may be added to the motion information list. Here, the corresponding motion information may be set to have the lowest index value in the motion information list. The index values of the motion information existing in the existing motion information list may be incremented by one and thus stored.

[00343] Альтернативно, информация движения первого блока может быть установлена, чтобы иметь предопределенное значение индекса в списке информации движения. Значение индекса информации движения, существующей в существующем списке информации движения, может сохраняться при увеличении на единицу.[00343] Alternatively, the motion information of the first block may be set to have a predetermined index value in the motion information list. The index value of the motion information existing in the existing motion information list may be kept when incremented by one.

[00344][00344]

[00345] Между тем, когда вся картинка представляет собой UPU, последний блок предварительно восстановленной картинки кодируется/декодируется, и затем окончательный список информации движения, в котором сохранена информация движения блока, используется для предсказания списка информации движения первого блока текущей картинки.[00345] Meanwhile, when the entire picture is a UPU, the last block of the previously reconstructed picture is encoded/decoded, and then the final motion information list in which the motion information of the block is stored is used to predict the motion information list of the first block of the current picture.

[00346] То есть, вся или часть информации движения, сохраненной в окончательном списке информации движения UPU предварительно восстановленной картинки, используется, чтобы предсказывать или инициализировать список информации движения текущей UPU, которая является текущей картинкой. Здесь, UPU предварительно восстановленной картинки может называться опорной UPU.[00346] That is, all or part of the motion information stored in the final UPU motion information list of the previously recovered picture is used to predict or initialize the motion information list of the current UPU, which is the current picture. Here, the UPU of the previously restored picture may be referred to as the reference UPU.

[00347] Список информации движения может не хранить информацию движения из текущей картинки перед тем, как выполняется интер-предсказание первого блока текущей картинки. Это объясняется тем, что отсутствует информация движения в текущей картинке. Здесь, список информации движения может быть предсказан или инициализирован путем сохранения некоторой или всей информации движения, сохраненной в окончательном списке информации движения опорной UPU, в текущем списке информации движения. Информация движения, сохраненная в текущем списке информации движения через предсказание или инициализацию списка информации движения, может использоваться для интер-предсказания первого блока текущей картинки.[00347] The motion information list may not store motion information from the current picture before inter-prediction of the first block of the current picture is performed. This is because there is no motion information in the current picture. Here, the motion information list may be predicted or initialized by storing some or all of the motion information stored in the final motion information list of the reference UPU in the current motion information list. The motion information stored in the current motion information list through prediction or initialization of the motion information list can be used for inter-prediction of the first block of the current picture.

[00348][00348]

[00349] Когда текущей список информации движения предсказывается из списка информации движения предварительно восстановленной области, можно обращаться к промежуточно сконфигурированному списку информации движения вместо окончательно сконфигурированного списка информации движения, в предварительно восстановленной области. [00349] When the current motion information list is predicted from the motion information list of the previously restored area, it is possible to refer to the intermediately configured motion information list instead of the finally configured motion information list in the previously restored area.

[00350] Список информации движения может накапливать и сохранять информацию движения, сгенерированную в соответствующей UPU, и может также удалять сохраненную информацию движения. Поэтому, по мере выполнения кодирования/декодирования, сохраненная информация может изменяться. При предсказании или инициализации текущего списка информации движения, в случае, когда местоположение блока кодирования для выполнения предсказания посредством текущего списка информации движения удалено от местоположения генерации информации движения, окончательно сохраненной списком информации движения в предварительно восстановленной области, к которой обращается текущий список информации движения, эффективность предсказания списка информации движения может снижаться.[00350] The motion information list may accumulate and store motion information generated in the corresponding UPU, and may also delete the stored motion information. Therefore, as encoding/decoding is performed, the stored information may change. When predicting or initializing the current motion information list, in the case where the location of the coding block to perform prediction by the current motion information list is far from the generation location of the motion information finally stored by the motion information list in the previously reconstructed area referred to by the current motion information list, efficiency motion information list prediction may be reduced.

[00351] Например, когда UPU является единицей картинки, информация движения, окончательно сохраненная в списке информации движения, может быть информацией движения, сгенерированной из блока кодирования снизу справа картинки. Здесь, когда количество информации движения, сохраненной в списке информации движения, ограничено, информация движения, сгенерированная рядом с верхним левым концом, который является начальной частью картинки из окончательно сохраненной информации движения, удаляется из списка информации движения, а информация движения рядом с нижним правым концом, который является конечной частью картинки, может сохраняться в списке информации движения. Поскольку первый блок кодирования текущей UPU соответствует верхней левой области картинки, информация движения, сгенерированная из нижней правой области опорной картинки, имеет низкую корреляцию, при этом эффективность предсказания невысока. При предсказании или инициализации списка информации движения, эффективность кодирования может быть выше при обращении к списку информации движения во время сохранения информации рядом с верхней левой областью, вместо предварительно восстановленного списка информации движения, который окончательно создан, чем при обращении к окончательному списку информации движения.[00351] For example, when the UPU is a picture unit, the motion information finally stored in the motion information list may be the motion information generated from the bottom right coding block of the picture. Here, when the amount of motion information stored in the motion information list is limited, the motion information generated near the upper left end, which is the initial part of the picture from the finally stored motion information, is removed from the motion information list, and the motion information near the lower right end , which is the end part of the picture, can be stored in the motion information list. Since the first coding block of the current UPU corresponds to the top left picture area, the motion information generated from the bottom right area of the reference picture has a low correlation, and the prediction efficiency is not high. When predicting or initializing the motion information list, coding efficiency may be higher when referring to the motion information list at the time of storing information near the upper left area, instead of the previously restored motion information list that is finally created, than when referring to the final motion information list.

[00352] Однако, использование памяти значительно выше, когда список информации движения сохраняется на всех этапах. Соответственно, после копирования и сохранения предопределенного списка информации движения в конкретный момент времени так, что использование памяти может быть уменьшено, можно отдельно использовать буфер опорного списка информации движения, который может использоваться, чтобы предсказывать или инициализировать список информации движения.[00352] However, the memory usage is significantly higher when the list of motion information is stored in all stages. Accordingly, after copying and storing a predetermined motion information list at a specific point in time so that memory usage can be reduced, it is possible to separately use a motion information reference list buffer that can be used to predict or initialize the motion information list.

[00353] Например, списки информации движения верхней левой и нижней правой областей единицы UPU могут сохраняться в буфере опорного списка информации движения.[00353] For example, the motion information lists of the upper left and lower right regions of the UPU may be stored in the reference motion information list buffer.

[00354] [00354]

[00355] Кроме того, когда список информации движения предварительно восстановленной картинки используется для предсказания списка информации движения, текущая картинка отличается от предварительно восстановленной картинки, и опорная картинка текущего блока отличается от опорной картинки, к которой обращается информация движения в списке информации движения предварительно восстановленной картинки. Здесь, поскольку эффективность предсказания может снижаться вследствие разницы временного расстояния между предварительно восстановленной картинкой и опорной картинкой, к которой обращается информация движения, может использоваться коррекция, такая как масштабирование информации движения и тому подобное.[00355] In addition, when the motion information list of the previously restored picture is used to predict the motion information list, the current picture is different from the previously restored picture, and the reference picture of the current block is different from the reference picture referred to by the motion information in the motion information list of the previously restored picture . Here, since the prediction performance may decrease due to the time distance difference between the previously reconstructed picture and the reference picture referred to by the motion information, correction such as motion information scaling and the like can be used.

[00356][00356]

[00357] Кроме того, вышеописанный способ может назначать UPU для обращения. В качестве способа назначения UPU для обращения, существует способ разрешения кодеру и декодеру обращаться к одной и той же UPU путем передачи и приема закодированного сигнала и способ пропуска дополнительной передачи и приема сигнала за счет выбора UPU предопределенным способом.[00357] In addition, the above-described method may assign a UPU for the call. As a method for assigning a UPU for access, there is a method for allowing an encoder and a decoder to access the same UPU by transmitting and receiving an encoded signal, and a method for skipping additional transmission and receiving a signal by selecting the UPU in a predetermined manner.

[00358] Хотя на фиг. 20 описан способ копирования всего списка информации движения опорной UPU в качестве способа предсказания текущего списка информации движения, может применяться способ копирования только части информации движения из списка информации движения в текущий список информации движения.[00358] Although in FIG. 20 describes a method of copying the entire motion information list of the reference UPU as a method of predicting the current motion information list, a method of copying only a portion of the motion information from the motion information list to the current motion information list may be applied.

[00359] В качестве примера, только информация движения ниже предопределенного индекса из списка информации движения опорной UPU может добавляться в текущий список информации движения.[00359] As an example, only motion information below a predetermined index from the reference UPU's motion information list may be added to the current motion information list.

[00360][00360]

[00361] 3. Способ предсказания информации движения текущего списка информации движения из информации движения, ранее включенной в текущий список информации движения[00361] 3. A method for predicting motion information of the current motion information list from motion information previously included in the current motion information list

[00362] [00362]

[00363] Когда количество информации движения, сохраненной в списке информации движения, является недостаточным, недостаточное количество списка информации движения может быть предсказано и добавлено из текущего списка информации движения.[00363] When the amount of motion information stored in the motion information list is insufficient, an insufficient amount of the motion information list can be predicted and added from the current motion information list.

[00364] Дополнительное предсказание информации движения текущего списка информации движения из информации движения, ранее включенной в текущий список информации движения, может выполняться по меньшей мере в один из момента времени после добавления информации движения в список информации движения, момента времени, который добавлен, и момента времени, в который информация движения генерируется в блоке кодирования, прежде чем информация движения добавляется в список информации движения.[00364] Further prediction of the motion information of the current motion information list from the motion information previously included in the current motion information list may be performed at at least one of the time after the motion information is added to the motion information list, the time that is added, and the time the time at which the motion information is generated in the coding block before the motion information is added to the motion information list.

[00365][00365]

[00366] Фиг. 21 представляет собой диаграмму, иллюстрирующую способ выполнения предсказания списка информации движения из информации движения, хранящейся в текущем списке информации движения.[00366] FIG. 21 is a diagram illustrating a method for performing motion information list prediction from motion information stored in the current motion information list.

[00367] Со ссылкой на фиг. 21, можно видеть, что информация движения А, сгенерированная интер-предсказанием первого блока кодирования, добавляется в список информации движения (обновление AMVOL). Это означает состояние, в котором только одна информация движения сохранена в списке информации движения. Поэтому, когда интер-предсказание выполняется посредством списка информации движения, эффективность кодирования может ухудшаться.[00367] With reference to FIG. 21, it can be seen that the motion information A generated by the inter-prediction of the first coding block is added to the motion information list (AMVOL update). This means a state in which only one motion information is stored in the motion information list. Therefore, when inter-prediction is performed by the motion information list, coding performance may be degraded.

[00368] На фиг. 21 можно видеть, что предсказание списка информации движения выполняется перед выполнением интер-предсказания следующего блока кодирования (или после обновления списка информации движения). Количество информации движения, хранящейся в списке информации движения, может быть увеличено путем предсказания информации движения A’ и A’’ из информации движения А, сохраненной в текущем списке информации движения, и сохранения ее в списке информации движения. Путем увеличения количества информации движения в текущем списке информации движения, эффективность интер-предсказания с использованием списка информации движения может быть улучшена.[00368] FIG. 21, it can be seen that motion information list prediction is performed before inter-prediction of the next coding block is performed (or after the motion information list is updated). The amount of motion information stored in the motion information list can be increased by predicting the motion information A' and A'' from the motion information A stored in the current motion information list and storing it in the motion information list. By increasing the amount of motion information in the current motion information list, the performance of inter-prediction using the motion information list can be improved.

[00369] [00369]

[00370] Далее, информация движения, существующая в текущем списке информации движения, называется существующей информацией движения, и вновь предсказанная информация движения называется предсказанной информацией движения.[00370] Hereinafter, motion information existing in the current motion information list is referred to as existing motion information, and newly predicted motion information is referred to as predicted motion information.

[00371] Следующие способы 1)-3) являются примерами способа выведения предсказанной информации движения с использованием существующей информации движения. [00371] The following methods 1)-3) are examples of a method for deriving predicted motion information using existing motion information.

[00372] [00372]

[00373] 1) Способ преобразования вектора движения существующей информации движения и выведения предсказанной информации движения[00373] 1) Method for transforming motion vector of existing motion information and deriving predicted motion information

[00374][00374]

[00375] Вектор движения представляет, как движение, пространственное расстояние между блоком, использующим соответствующую информацию движения, и областью, к которой следует обращаться. Поэтому, когда вектор движения преобразуется, область, к которой следует обращаться, изменяется.[00375] The motion vector represents, as motion, the spatial distance between the block using the corresponding motion information and the area to be addressed. Therefore, when the motion vector is converted, the area to be addressed changes.

[00376] Например, существует способ модифицирования вектора движения существующей информации движения с использованием предопределенного способа. [00376] For example, there is a method for modifying a motion vector of existing motion information using a predetermined method.

[00377] Способ модифицирования вектора движения может быть по меньшей мере одним из добавления смещения, масштабирования и зеркального отражения.[00377] The motion vector modification method may be at least one of adding offset, scaling, and mirroring.

[00378] Добавление смещения является способом модифицирования вектора движения путем добавления предопределенного смещения к вектору движения.[00378] Adding an offset is a method of modifying a motion vector by adding a predetermined offset to the motion vector.

[00379] В качестве примера, вектор движения может быть выражен как MV(x, y), имеющий смещение по оси x и смещение по оси y, и путем добавления предопределенного смещения dx, dy к MV(x, y) можно сгенерировать модифицированный вектор движения MV’(x+dx, y+dy). Здесь, dx и dy могут быть целыми, и dx и dy могут быть значениями, отличающимися друг от друга.[00379] As an example, a motion vector can be expressed as MV(x, y) having an x-axis offset and a y-axis offset, and by adding a predefined offset dx, dy to MV(x, y), a modified vector can be generated movements MV'(x+dx, y+dy). Here, dx and dy can be integers, and dx and dy can be different values.

[00380] Масштабирование является способом модифицирования вектора движения путем умножения предопределенного коэффициента увеличения sx и sy на вектор движения MV(x, y). Может генерироваться MV’(sx*x, sy*y), который представляет собой вектор движения, модифицированный посредством масштабирования. С использованием разных коэффициентов увеличения, могут генерироваться различные модифицированные векторы движения. Здесь, sx и sy могут быть целыми, и sx и sy могут быть значениями, отличающимися друг от друга.[00380] Scaling is a method of modifying a motion vector by multiplying a predetermined magnification factor sx and sy by a motion vector MV(x, y). An MV'(sx*x, sy*y) may be generated, which is a motion vector modified by scaling. By using different magnification factors, various modified motion vectors can be generated. Here, sx and sy can be integers, and sx and sy can be different values.

[00381] Зеркальное отражение является способом модифицирования вектора движения путем реверсирования направления при поддержании размера вектора движения. Например, когда зеркальное отражение оси x и оси y применяется к вектору движения MV(x, y), можно сгенерировать MV’(-x, -y), который представляет собой модифицированный вектор движения. Путем определения применяемой оси, можно сгенерировать различные модифицированные векторы движения.[00381] Mirroring is a method of modifying a motion vector by reversing the direction while maintaining the size of the motion vector. For example, when mirroring the x-axis and y-axis is applied to the motion vector MV(x, y), you can generate MV'(-x, -y) which is the modified motion vector. By specifying the applied axis, various modified motion vectors can be generated.

[00382][00382]

[00383] 2) Способ преобразования опорной информации существующей информация движения и выведения предсказанной информации движения[00383] 2) Method for converting reference information of existing motion information and deriving predicted motion information

[00384][00384]

[00385] Опорная информация является информацией об опорной картинке, включающей в себя область, к которой обращаются в интер-предсказании. Путем изменения опорной информации, включенной в информацию движения, опорная картинка изменяется так, что область, к которой обращаются, может изменяться. Даже в случае того же самого вектора движения, когда опорная картинка изменяется, информация пиксела, к которому обращаются, может изменяться, и, таким образом, результат интер-предсказания может изменяться. Здесь, вектор движения корректируется с использованием расстояния на временной оси между текущей картинкой и опорной картинкой существующей информации движения и расстояния на временной оси между текущей картинкой и измененной опорной картинкой, тем самым улучшая точность предсказания информации движения.[00385] The reference information is information about a reference picture including an area that is referred to in inter-prediction. By changing the reference information included in the motion information, the reference picture is changed so that the referenced area can be changed. Even in the case of the same motion vector, when the reference picture changes, the referenced pixel information may change, and thus the inter-prediction result may change. Here, the motion vector is corrected using the distance on the time axis between the current picture and the reference picture of the existing motion information and the distance on the time axis between the current picture and the changed reference picture, thereby improving the motion information prediction accuracy.

[00386] Фиг. 22 является примером, иллюстрирующим процесс выведения предсказанной информации движения путем изменения опорной картинки существующей информации движения и корректирования вектора движения соответствующим образом.[00386] FIG. 22 is an example illustrating the process of deriving the predicted motion information by changing the reference picture of the existing motion information and adjusting the motion vector accordingly.

[00387] Со ссылкой на фиг. 22, текущая картинка расположена в точке t на временной оси, и опорная картинка, к которой может обращаться текущая картинка, расположена в точках t-k, t-m и t+n на временной оси. Текущий список информации движения имеет вектор движения А, обращающийся к L0 опорной картинке 0, которая является опорной картинкой в момент времени t-m с нулевым индексом.[00387] With reference to FIG. 22, the current picture is located at point t on the time axis, and the reference picture that can be accessed by the current picture is located at points t-k, t-m, and t+n on the time axis. The current motion information list has motion vector A referring to L0 reference picture 0, which is the reference picture at time t-m with index zero.

[00388] Информация движения А может быть скорректирована с учетом расстояния (картинка счетчика, POC) на временной оси между текущей картинкой и каждой опорной картинкой, предполагая, что движение объекта близко к линейному в пределах короткого промежутка времени.[00388] Motion information A can be corrected for the distance (counter picture, POC) on the time axis between the current picture and each reference picture, assuming that the movement of the object is close to linear within a short period of time.

[00389] Когда опорная информация изменяется на L0 опорную картинку 1, которая является опорной картинкой в момент времени t-k, и L1 опорную картинку 0, которая является опорной картинкой в момент времени t+n, информация движения А может быть скорректирована в A’ и A’’, соответственно, с учетом расстояния на временной оси между картинкой и опорной картинкой. Предсказанная информация движения, выведенная вышеописанным образом, может добавляться в список информации движения.[00389] When the reference information is changed to L0 reference picture 1, which is the reference picture at time t-k, and L1 reference picture 0, which is the reference picture at time t+n, motion information A can be corrected in A' and A '', respectively, taking into account the distance on the time axis between the picture and the reference picture. The predicted motion information outputted in the above manner may be added to the motion information list.

[00390][00390]

[00391] 3) Способ выведения предсказанной информации движения с использованием множества существующей информации движения[00391] 3) Method for deriving predicted motion information using a plurality of existing motion information

[00392][00392]

[00393] Когда две или более информаций движения присутствуют в списке информации движения, предсказанная информация движения может выводиться путем частичного использования каждой из существующей информации движения или использования среднего из двух или более информаций движения.[00393] When two or more motion information is present in the motion information list, the predicted motion information may be derived by partially using each of the existing motion information or using the average of the two or more motion information.

[00394] Кроме того, по меньшей мере одно из статистических значений, таких как взвешенная сумма, взвешенное среднее значение, медианное значение, минимальное значение, максимальное значение и тому подобное, может использоваться, в дополнение к среднему. [00394] In addition, at least one of statistical values such as weighted sum, weighted average, median, minimum value, maximum value, and the like can be used, in addition to the average.

[00395] Между тем, опорная информация любой одной из существующей информации движения может использоваться в качестве опорной информации предсказанной информации движения.[00395] Meanwhile, the reference information of any one of the existing motion information may be used as the reference information of the predicted motion information.

[00396] Альтернативно, может выводиться предсказанная информация движения, имеющая опорную информацию, отличающуюся от опорной информации существующей информации движения.[00396] Alternatively, the predicted motion information having reference information different from the reference information of the existing motion information may be output.

[00397] В качестве примера, опорная информация может сигнализироваться в верхнем наборе параметров, заголовке слайса или тому подобном, и картинка, указанная первым индексом списка опорных картинок, может использоваться в качестве опорной информации предсказанной информации движения.[00397] As an example, the reference information may be signaled in the upper parameter set, slice header, or the like, and the picture indicated by the first index of the reference picture list may be used as the reference information of the predicted motion information.

[00398][00398]

[00399] 4. Способ предсказания предопределенной информации движения как информации движения текущего списка информации движения[00399] 4. Method for predicting predetermined motion information as motion information of the current motion information list

[00400][00400]

[00401] Данный способ является способом предсказания предопределенной информации движения как информации движения текущего списка информации движения. Конкретно, информация движения, определенная аналогично в кодере и декодере, может добавляться в текущий список информации движения.[00401] This method is a method for predicting predetermined motion information as motion information of the current motion information list. Specifically, motion information defined similarly in the encoder and decoder may be added to the current motion information list.

[00402] Предопределенная информация движения может включать в себя информацию вектора движения, имеющего конкретное значение движения в направлениях x и y, такое как (0, 0), (0, 1), (0, -1), (1, 0), (-1, 0) и тому подобное.[00402] The predetermined motion information may include motion vector information having a specific motion value in the x and y directions such as (0, 0), (0, 1), (0, -1), (1, 0) , (-1, 0) and the like.

[00403] Кроме того, опорная информация предопределенной информации движения может определяться заранее, например, “0”-ая картинка списка L0 опорных картинок или “0”-ая картинка списка L1 опорных картинок.[00403] In addition, the reference information of the predetermined motion information may be determined in advance, for example, the “0”th picture of the reference picture list L0 or the “0”th picture of the reference picture list L1.

[00404] С другой стороны, кодер может генерировать флаг, указывающий, следует или нет использовать предопределенную информацию движения, и доставлять его на декодер.[00404] On the other hand, the encoder may generate a flag indicating whether or not to use the predefined motion information and deliver it to the decoder.

[00405] Когда существует множество предопределенной информации движения, кодер может генерировать идентификатор (или индекс и т.д.), указывающий, какую информацию движения следует применить, и передавать его на декодер.[00405] When there is a plurality of predefined motion information, the encoder may generate an identifier (or index, etc.) indicating which motion information should be applied and transmit it to the decoder.

[00406] Декодер может определять, следует ли применить предопределенную информацию движения и какую информацию движения следует применить, на основе переданной информации.[00406] The decoder may determine whether the predetermined motion information should be applied and which motion information should be applied based on the transmitted information.

[00407][00407]

[00408] Может существовать случай, когда отсутствует предварительно восстановленная область, к которой может обращаться текущая UPU, или случай, когда количество информации движения, которая может предсказываться из предварительно восстановленной области, к которой обращаются, достаточно. В таких случаях, вышеописанные способы 3 и 4 могут использоваться для предсказания списка информации движения. [00408] There may be a case where there is no pre-restored area that can be accessed by the current UPU, or a case where the amount of motion information that can be predicted from the pre-recovered area that is accessed is sufficient. In such cases, the above methods 3 and 4 can be used to predict the motion information list.

[00409][00409]

[00410] 5. Способ исключения кандидатов, перекрытых другими способами предсказания движения [00410] 5. Method for eliminating candidates overlapped by other motion prediction methods

[00411] [00411]

[00412] Множество способов интер-предсказания могут использоваться в кодировании и декодировании, и информация движения, включенная в список информации движения, может использоваться для предсказания информации движения в различных способах интер-предсказания. Здесь, кандидат предсказания движения, используемый способом интер-предсказания, может перекрываться предсказанной информацией движения списка информации движения.[00412] A plurality of inter prediction methods may be used in encoding and decoding, and motion information included in the motion information list may be used to predict motion information in various inter prediction methods. Here, the motion prediction candidate used by the inter-prediction method may be overlapped by the predicted motion information of the motion information list.

[00413] В качестве примера, информация движения кандидата временного слияния в режиме слияния и информация движения, предсказанная для списка информации движения, идентичны и, таким образом, перекрываются друг с другом.[00413] As an example, the motion information of the temporary merge candidate in the merge mode and the motion information predicted for the motion information list are identical and thus overlap with each other.

[00414] В вышеуказанном случае, при использовании той же самой информации движения для интер-предсказания, эффективность предсказания может ухудшаться. Поэтому, с учетом способа предсказания движения (например, кандидат слияния в режиме слияния, кандидат вектора движения в режиме AMVP и т.д.), используемого для интер-предсказания, информация движения может устанавливаться, чтобы иметь более разнообразную предсказанную информацию без перекрытия.[00414] In the above case, when using the same motion information for inter-prediction, the prediction performance may deteriorate. Therefore, considering the motion prediction method (eg, merge mode merge candidate, AMVP mode motion vector candidate, etc.) used for inter prediction, the motion information can be set to have more diverse predictive information without overlap.

[00415][00415]

[00416] Когда кандидаты способа предсказания движения и предсказанная информация движения списка информации движения перекрывают друг друга, можно определить, следует ли использовать предсказанную информацию движения списка информации движения в соответствии с приоритетом.[00416] When the candidates of the motion prediction method and the predicted motion information of the motion information list overlap each other, it can be determined whether to use the predicted motion information of the motion information list according to priority.

[00417] Когда приоритет кандидатов способа предсказания движения является высоким, предсказанная информация движения списка информации движения может не использоваться. То есть, предсказанная информация движения может не включаться в список информации движения.[00417] When the priority of motion prediction method candidates is high, the predicted motion information of the motion information list may not be used. That is, the predicted motion information may not be included in the motion information list.

[00418] Напротив, когда приоритет кандидатов способа предсказания движения является низким, может использоваться предсказанная информация движения списка информации движения. То есть, предсказанная информация движения может включаться в список информации движения. Кандидат способа предсказания движения может не включаться в список информации движения.[00418] In contrast, when the priority of the motion prediction method candidates is low, the predicted motion information of the motion information list can be used. That is, the predicted motion information may be included in the motion information list. The motion prediction method candidate may not be included in the motion information list.

[00419] Кроме того, когда приоритет кандидатов способа предсказания движения и приоритет предсказанной информации движения списка информации движения являются одинаковыми, предсказанная информация движения списка информации движения может использоваться или может заменяться на предопределенную информацию движения.[00419] Further, when the priority of the motion prediction method candidates and the priority of the motion information list predicted motion information are the same, the motion information list predicted motion information may be used or may be replaced with predetermined motion information.

[00420][00420]

[00421] Чтобы препятствовать перекрытию предсказанной информации движения списка предсказания движения и кандидата способа предсказания движения, предсказанный список информации движения списка информации движения может быть установлен, чтобы выводиться в предопределенном положении, которое не перекрывается с положением блока кандидата способа предсказания движения в момент времени, когда начинается кодирование/ декодирование.[00421] In order to prevent the motion prediction information of the motion prediction list and the motion prediction method candidate from overlapping, the predicted motion information list of the motion information list can be set to be output at a predetermined position that does not overlap with the position of the motion prediction method candidate block at the time when encoding/decoding starts.

[00422] Например, может быть назначена совмещенная единица CTU, и информация движения может выводиться из предопределенного положения в CTU. [00422] For example, a co-located CTU may be assigned and traffic information may be output from a predetermined position in the CTU.

[00423][00423]

[00424] Фиг. 23 представляет собой диаграмму, иллюстрирующую способ предсказания списка информации движения, который не перекрывается с кандидатом способа предсказания движения. На фиг. 23, положения C и H, указанные диагональным шаблоном (диагональный шаблон от верхнего правого конца в нижний левый конец), могут обращаться к положениям временных кандидатов, которые могут использоваться в интер-предсказании текущего блока кодирования. [00424] FIG. 23 is a diagram illustrating a motion information list prediction method that does not overlap with a motion prediction method candidate. In FIG. 23, C and H positions indicated by a diagonal pattern (a diagonal pattern from the upper right end to the lower left end) may refer to positions of temporary candidates that may be used in inter-prediction of the current coding block.

[00425] Со ссылкой на фиг. 23, предварительно восстановленная область, используемая для предсказания списка информации движения, может быть установлена в область в положении, отличающемся от положений C и H.[00425] With reference to FIG. 23, the previously reconstructed area used for motion information list prediction may be set to an area at a position different from the positions C and H.

[00426] Как показано на фиг. 23, информация движения списка информации движения может быть установлена как подлежащая выводу в положениях a, b, c, d и e за исключением положений C и H.[00426] As shown in FIG. 23, the motion information of the motion information list can be set to be output at positions a, b, c, d, and e except for positions C and H.

[00427] Кроме того, при добавлении информации движения в список информации движения, та же самая информация движения, что и информация движения положений C или H, не может добавляться в список информации движения.[00427] In addition, when motion information is added to the motion information list, the same motion information as the motion information of positions C or H cannot be added to the motion information list.

[00428] Фиг. 24 представляет собой диаграмму, иллюстрирующую вариант осуществления установки положения, к которому обращаются для предсказания списка информации движения в единицах CTU, когда положения временных кандидатов способа предсказания движения являются теми же самыми, что и положения C и H на фиг. 23. [00428] FIG. 24 is a diagram illustrating an embodiment of setting a position referenced for motion information list prediction in CTUs when the positions of the temporal candidates of the motion prediction method are the same as the positions C and H in FIG. 23.

[00429] При конфигурировании опорного положения в единицах CTU таким же образом, что и на фиг. 24, можно упростить структуру предсказания списка информации движения с использованием фиксированного положения при повышении эффективности кодирования путем обращения к области, не предсказанной существующим способом предсказания движения.[00429] When configuring the reference position in CTU units in the same manner as in FIG. 24, it is possible to simplify the motion information list prediction structure using a fixed position while improving coding efficiency by referring to an area not predicted by the existing motion prediction method.

[00430] На фиг. 24, блок диагонального шаблона (блок диагонального шаблона сверху справа вниз налево) и блок обратного диагонального шаблона (блок диагонального шаблона сверху слева вниз направо) могут означать положения информации движения, к которой обращаются для предсказания текущего списка информации движения в совмещенной CTU. Блок диагонального шаблона означает опорную область, имеющую более высокий приоритет, чем блок обратного диагонального шаблона.[00430] FIG. 24, the diagonal pattern block (diagonal pattern block from top right to bottom left) and the reverse diagonal pattern block (diagonal pattern block from top left to bottom right) may indicate the positions of motion information that is referred to for predicting the current motion information list in the co-located CTU. A diagonal pattern block means a reference area having a higher priority than a reverse diagonal pattern block.

[00431][00431]

[00432] Между тем, когда кандидат предсказания движения, используемый способом интер-предсказания, перекрывается предсказанной информацией движения списка информации движения, перекрытая предсказанная информация движения не может использоваться для интер-предсказания.[00432] Meanwhile, when the motion prediction candidate used by the inter-prediction method is overlapped by the motion information list prediction motion information, the overlapped motion information cannot be used for inter-prediction.

[00433][00433]

[00434] 6. Способ использования предсказанной информации движения отдельно от общей информации движения[00434] 6. Method for using predicted motion information separately from general motion information

[00435][00435]

[00436] В настоящей спецификации, общая информация движения может означать информацию движения, добавленную в список информации движения в качестве информации движения, сгенерированной интер-предсказанием, и информацию движения, добавленную в список информации движения на этапе добавления информации движения согласно фиг. 10 и 11. Предсказанная информация движения может означать информацию движения, сгенерированную посредством предсказания списка информации движения, как описано выше, и может являться информацией движения, добавленной в список информации движения на этапах предсказания списка информации движения согласно фиг. 10 и 11.[00436] In the present specification, the general motion information may mean motion information added to the motion information list as motion information generated by inter prediction and motion information added to the motion information list in the motion information adding step of FIG. 10 and 11. The predicted motion information may mean motion information generated by motion information list prediction as described above, and may be motion information added to the motion information list in the motion information list prediction steps of FIG. 10 and 11.

[00437][00437]

[00438] Предсказанная информация движения может иметь более низкую эффективность предсказания информации движения, чем общая информация движения. Поэтому, когда предсказанная информация движения имеет более высокий приоритет, чем общая информация движения, эффективность кодирования может быть снижена. Поэтому предсказанная информация движения может создаваться отдельно от общей информации движения, так что приоритет предсказанной информации движения может снижаться или корректироваться.[00438] The predicted motion information may have a lower motion information prediction performance than the general motion information. Therefore, when the predicted motion information has a higher priority than the general motion information, the coding efficiency may be lowered. Therefore, the predicted motion information may be generated separately from the general motion information, so that the priority of the predicted motion information may be reduced or corrected.

[00439] Кроме того, в случае, если добавляется общая информация движения, когда список информации движения уже имел ограниченное максимальное количество информации движения, предсказанная информация движения может удаляться первой. [00439] In addition, in case general motion information is added when the motion information list already had a limited maximum amount of motion information, the predicted motion information may be removed first.

[00440][00440]

[00441] Фиг. 25 и 26 являются диаграммами, иллюстрирующими вариант осуществления способа отдельного использования предсказанной информации движения и общей информации движения. Информация движения может добавляться в список информации движения на фиг. 25 и 26 по правилу “первым пришел - первым обслужен” (FIFO), и размер списка информации движения ограничен пятью. Здесь, размер списка информации движения также включает в себя размер под-списка движения.[00441] FIG. 25 and 26 are diagrams illustrating an embodiment of a method for separately using predicted motion information and common motion information. The motion information may be added to the motion information list in FIG. 25 and 26 on a first-come-first-served (FIFO) basis, and the size of the motion information list is limited to five. Here, the size of the motion information list also includes the size of the motion sub-list.

[00442] Со ссылкой на фиг. 25, может существовать список информации движения (AMVOL), хранящий общую информацию движения, и под-список информации движения (под-AMVOL), хранящий список предсказанной информации движения.[00442] With reference to FIG. 25, there may be a motion information list (AMVOL) storing general motion information and a motion information sub-list (sub-AMVOL) storing a list of predicted motion information.

[00443] До выполнения интер-предсказания первого блока кодирования, никакая информация не хранится в списке информации движения, а информация движения A’, B’ и C’, предсказанная из опорной картинки, может сохраняться в под-списке информации движения.[00443] Prior to performing inter-prediction of the first coding block, no information is stored in the motion information list, and motion information A', B', and C' predicted from the reference picture may be stored in the motion information sub-list.

[00444] Затем, информация движения может добавляться в список информации движения по мере того как выполняется интер-предсказание каждого блока кодирования.[00444] Then, motion information may be added to the motion information list as inter-prediction of each coding block is performed.

[00445] Здесь, при достижении максимального размера списка информации движения, информация движения сначала удаляется из под-списка информации движения, в котором хранится предсказанная информация движения, и новая информация движения может добавляться в список информации движения. [00445] Here, when the maximum size of the motion information list is reached, the motion information is first removed from the motion information sub-list in which the predicted motion information is stored, and new motion information may be added to the motion information list.

[00446] Между тем, информация, указывающая, используется ли под-список информации движения, информация размера списка информации движения или информация размера под-списка информации движения, может быть информацией, предварительно установленной в кодере/декодере.[00446] Meanwhile, information indicating whether the motion information sub-list, motion information list size information, or motion information sub-list size information is used may be information preset in the encoder/decoder.

[00447] Альтернативно, информация, указывающая, используется ли под-список информации движения, информация размера списка информации движения или информация размера под-списка информации движения, может быть информацией, сигнализируемой от кодера на декодер.[00447] Alternatively, information indicating whether the motion information sub-list, motion information list size information, or motion information sub-list size information is used may be information signaled from an encoder to a decoder.

[00448] Здесь, размер списка информации движения может быть ограничен предварительно установленным диапазоном. Например, предварительно установленный диапазон может составлять от 0 до 5.[00448] Here, the size of the motion information list may be limited to a predetermined range. For example, the preset range could be 0 to 5.

[00449] Кроме того, размер списка информации движения может быть ограничен информацией, сигнализируемой от кодера на декодер. Информация, указывающая размер списка информации движения, может сигнализироваться на более высоком уровне битового потока, таком как набор параметров последовательности, набор параметров картинки, заголовок слайса, заголовок мозаичного элемента, заголовок группы мозаичных элементов и тому подобное.[00449] In addition, the size of the motion information list may be limited by the information signaled from the encoder to the decoder. Information indicating the size of the motion information list may be signaled at a higher bitstream level such as a sequence parameter set, a picture parameter set, a slice header, a tile header, a tile group header, and the like.

[00450] [00450]

[00451] Фиг. 26 представляет собой диаграмму, иллюстрирующую вариант осуществления, в котором один список информации движения используется без использования под-списка информации движения, в отличие от фиг. 25.[00451] FIG. 26 is a diagram illustrating an embodiment in which one motion information list is used without using a motion information sub-list, unlike FIG. 25.

[00452] В примере на фиг. 26, список информации движения может управляться способом FIFO. То есть, список информации движения использует способ добавления сгенерированной информации движения в последнюю часть списка информации движения и удаления сначала предшествующей информации движения, которая введена первой, при превышении максимального размера списка информации движения.[00452] In the example of FIG. 26, the motion information list may be controlled in a FIFO manner. That is, the motion information list uses a method of adding the generated motion information to the last part of the motion information list and deleting first the preceding motion information which is inputted first when the maximum size of the motion information list is exceeded.

[00453] Другими словами, когда количество информации движения, сохраненной в списке информации движения, достигает максимального значения, информация движения, указанная в последнем индексе списка информации движения, удаляется, и вновь выведенная информация движения добавляется в список информации движения. Здесь, индекс информации движения, включенной в список информации движения, может увеличиваться на единицу. Вновь добавленная информация движения может добавляться в список информации движения таким образом, чтобы указываться индексом 0.[00453] In other words, when the amount of motion information stored in the motion information list reaches the maximum value, the motion information specified in the last index of the motion information list is deleted, and the newly derived motion information is added to the motion information list. Here, the index of the motion information included in the motion information list may be incremented by one. The newly added motion information may be added to the motion information list so as to be indicated by index 0.

[00454][00454]

[00455] Кроме того, информация движения, сохраненная в списке информации движения, может иметь приоритет тем выше, чем ниже индекс.[00455] In addition, the motion information stored in the motion information list may be given higher priority as the index is lower.

[00456] Здесь, информация движения, сохраненная предсказанием списка информации движения, может обрабатываться отдельно от общей информации движения списка информации движения, сгенерированной и сохраненной в текущей UPU.[00456] Here, the motion information stored by the motion information list prediction may be processed separately from the general motion information of the motion information list generated and stored in the current UPU.

[00457] Поскольку предсказанная информация движения имеет низкий приоритет, когда вновь добавляется общая информация движения, может назначаться индекс ниже, чем в случае информации движения в списке предсказанной информации движения.[00457] Because the predicted motion information has a low priority, when the general motion information is added again, an index lower than in the case of the motion information in the predicted motion information list may be assigned.

[00458] Кроме того, при достижении максимального размера списка информации движения, предсказанная информация движения может предпочтительно удаляться, и новая информация движения может добавляться в список информации движения.[00458] In addition, when the maximum size of the motion information list is reached, the predicted motion information may be preferably deleted, and new motion information may be added to the motion information list.

[00459][00459]

[00460] При этом, чем ниже индекс, тем выше приоритет, как описано ранее. Напротив, чем выше индекс, тем ниже приоритет.[00460] In this case, the lower the index, the higher the priority, as described earlier. On the contrary, the higher the index, the lower the priority.

[00461] Поэтому, способ FIFO для списка информации движения может также выполняться, как описано далее. То есть, когда количество информации движения, сохраненной в списке информации движения, достигает максимального значения, информация движения, указанная индексом 0 списка информации движения, может удаляться, и вновь выведенная информация движения может быть добавлена в список информации движения. Здесь, индекс информации движения, включенной в список информации движения, может уменьшаться на единицу. Вновь добавленная информация движения может добавляться в список информации движения таким образом, чтобы указываться наибольшим индексом среди информации движения, включенной в список информации движения.[00461] Therefore, the FIFO method for the motion information list may also be performed as described later. That is, when the amount of motion information stored in the motion information list reaches the maximum value, motion information indicated by index 0 of the motion information list may be deleted, and newly outputted motion information may be added to the motion information list. Here, the index of the motion information included in the motion information list may decrease by one. The newly added motion information may be added to the motion information list so as to be indicated by the largest index among the motion information included in the motion information list.

[00462] Между тем, когда вновь добавленная информация движения сохраняется в списке информации движения, ранее сохраненная информация движения, которая перекрывается, удаляется из списка информации движения, и вновь выведенная информация движения может быть включена в список информации движения. Здесь, индексы информации движения списка информации движения, имеющие значение индекса больше, чем удаленная информация движения, могут уменьшаться на единицу. Вновь добавленная информация движения может добавляться в список движения таким образом, чтобы указываться наибольшим индексом среди информации движения, включенной в список информации движения.[00462] Meanwhile, when the newly added motion information is stored in the motion information list, the previously stored motion information that overlaps is removed from the motion information list, and the newly derived motion information can be included in the motion information list. Here, the motion information indexes of the motion information list having an index value greater than the deleted motion information may decrease by one. The newly added motion information may be added to the motion list so as to be indicated by the largest index among the motion information included in the motion information list.

[00463][00463]

[00464] Информация движения, включенная в список информации движения, может иметь приоритет при использовании для предсказания информации движения. Информация движения может быть неявно выражена в соответствии с порядком, в котором информация движения сохраняется в списке информации движения, приоритет явно устанавливается как кандидаты при выполнении интер-предсказания с использованием списка информации движения, или возможно избирательное использование по приоритету.[00464] Motion information included in the motion information list may be prioritized when used to predict motion information. The motion information may be implicitly expressed according to the order in which the motion information is stored in the motion information list, the priority is explicitly set as candidates when performing inter-prediction using the motion information list, or selective use by priority is possible.

[00465] Кроме того, поскольку список информации движения может иметь ограниченный размер, при достижении ограниченного размера, информация движения, сохраненная в списке информации движения, может удаляться и новая информация движения может быть добавлена в соответствии с приоритетом.[00465] In addition, since the motion information list may have a limited size, when the limited size is reached, motion information stored in the motion information list may be deleted and new motion information may be added according to priority.

[00466][00466]

[00467] Между тем, предсказанная информация движения может иметь эффективность предсказания ниже, чем эффективность предсказания нормальной информации движения. Однако, поскольку это не во всех случаях, приоритет предсказанной информации движения может быть перенастроен.[00467] Meanwhile, the predicted motion information may have a prediction performance lower than the prediction performance of the normal motion information. However, since this is not the case in all cases, the priority of the predicted motion information can be reset.

[00468][00468]

[00469] Для перенастройки приоритета предсказанной информации движения может использоваться дополнительная информация.[00469] Additional information may be used to re-prioritize the predicted motion information.

[00470] Список информации движения может включать в себя дополнительную информацию в дополнение к информации движения. Здесь, дополнительная информация может означать информацию, указывающую эффективность интер-предсказания информации движения, включенной в список информации движения, и может также называться потенциальной информацией предсказания. Например, дополнительная информация может являться информацией, выведенной на основе числа появлений той же самой информации движения в UPU.[00470] The motion information list may include additional information in addition to the motion information. Here, the side information may mean information indicating the inter-prediction performance of the motion information included in the motion information list, and may also be referred to as potential prediction information. For example, the additional information may be information derived based on the number of occurrences of the same motion information in the UPU.

[00471] Дополнительная информация может представлять относительную изменчивость эффективности кодирования при использовании списка информации движения для интер-предсказания.[00471] The side information may represent the relative variability in coding efficiency when using a list of motion information for inter-prediction.

[00472] В качестве способа для определения дополнительной информации, может существовать способ определения на основе частоты появления информации движения, способ определения на основе эффективности предсказания с использованием информации движения, способ определения на основе местоположения, где выведена информация движения, и способ определения на основе того, следует ли использовать информацию движения.[00472] As a method for determining the additional information, there may be a determination method based on the occurrence frequency of the motion information, a determination method based on the prediction performance using the motion information, a determination method based on the location where the motion information is output, and a determination method based on whether whether to use motion information.

[00473] Способ определения на основе частоты появления информации движения является способом определения дополнительной информации на основе числа раз, когда та же самая информация движения, что и информация движения, сохраненная в списке информации движения, генерируется в UPU.[00473] The determination method based on the frequency of occurrence of motion information is a method for determining additional information based on the number of times the same motion information as the motion information stored in the motion information list is generated in the UPU.

[00474] Способ определения на основе эффективности предсказания с использованием информации движения является способом определения дополнительной информации на основе распределения энергии остаточного сигнала или среднего значения энергии остаточного сигнала в блоке кодирования, в котором используется информация движения, сохраненная в списке информации движения.[00474] The determination method based on the prediction efficiency using motion information is a method for determining side information based on the residual signal energy distribution or the average value of the residual signal energy in a coding block using motion information stored in the motion information list.

[00475] Способ определения на основе местоположения, из которого выведена информация движения, является способом определения дополнительной информации на основе пространственного и временного расстояния между текущим блоком кодирования и блоком кодирования, в котором выведена информация движения, сохраненная в списке информации движения.[00475] The determination method based on the location from which motion information is derived is a method for determining additional information based on the spatial and temporal distance between the current coding block and the coding block in which the motion information stored in the motion information list is derived.

[00476] В то же время, приоритет предсказанной информации движения может переустанавливаться на основе того, используется ли предсказанная информация движения для интер-предсказания. Причина в том, что соответствующая предсказанная информация движения вероятно будет использоваться в будущем, когда она используется для интер-предсказания.[00476] At the same time, the priority of the predicted motion information may be reset based on whether the predicted motion information is used for inter-prediction. The reason is that the corresponding predicted motion information is likely to be used in the future when it is used for inter-prediction.

[00477] Информация, необходимая для переустановки приоритета предсказанной информации движения, может быть информацией, которая предварительно установлена в кодере/декодере или сигнализируется от кодера на декодер.[00477] The information necessary to reset the priority of the predicted motion information may be information that is preset in the encoder/decoder or signaled from the encoder to the decoder.

[00478][00478]

[00479] Фиг. 27 представляет собой блок-схему последовательности операций, иллюстрирующую способ декодирования изображения в соответствии с вариантом осуществления настоящего изобретения. [00479] FIG. 27 is a flowchart illustrating an image decoding method according to an embodiment of the present invention.

[00480] Со ссылкой на фиг. 27, устройство декодирования изображения может генерировать список кандидатов, включающий в себя информацию движения, выведенную из пространственного соседнего блока и временного соседнего блока, смежных с текущим блоком (S2710).[00480] With reference to FIG. 27, the image decoding apparatus may generate a candidate list including motion information derived from the spatial neighbor block and the temporal neighbor block adjacent to the current block (S2710).

[00481] Здесь, список кандидатов может представлять собой любое одно из списка кандидатов слияния в режиме слияния, списка кандидатов векторов движения в режиме AMVP, списка кандидатов слияния в режиме IBC, списка кандидатов векторов блока в режиме IBC и совместно используемого списка слияния в режиме IBC.[00481] Here, the candidate list can be any one of the merge mode merge candidate list, the AMVP mode motion vector candidate list, the IBC mode merge candidate list, the IBC mode block vector candidate list, and the shared IBC mode merge list .

[00482] Кроме того, устройство декодирования изображения может вывести информацию движения текущего блока с использованием списка кандидатов (S2720).[00482] In addition, the image decoding apparatus may output motion information of the current block using the candidate list (S2720).

[00483] Устройство декодирования изображения может генерировать блок предсказания текущего блока с использованием выведенной информации движения (S2730). Подробно, устройство декодирования изображения может генерировать блок предсказания текущего блока путем выполнения интер-предсказания или предсказания IBC.[00483] The image decoding apparatus may generate a prediction block of the current block using the derived motion information (S2730). In detail, the image decoding apparatus may generate a prediction block of the current block by performing inter-prediction or IBC prediction.

[00484] Кроме того, устройство декодирования изображения может обновлять выведенную информацию движения в списке информации движения (S2740). Этап S2740 может быть тем же самым, что и этап добавления информации движения на фиг. 10 и 11, описанный выше.[00484] In addition, the image decoding apparatus may update the outputted motion information in the motion information list (S2740). Step S2740 may be the same as the step of adding motion information in FIG. 10 and 11 described above.

[00485] При этом может генерироваться список кандидатов, включающий в себя по меньшей мере одну из информации движения, включенной в список информации движения, обновленный в блоке, декодированном перед текущим блоком. Здесь, список информации движения может представлять собой вышеописанный список AMVOL или HMVP.[00485] This may generate a candidate list including at least one of the motion information included in the motion information list updated in the block decoded before the current block. Here, the motion information list may be the above-described AMVOL or HMVP list.

[00486] Между тем, когда декодирование предопределенной области завершено, так что область в списке информации движения изменяется, устройство декодирования изображения может инициализировать список информации движения. Здесь, предопределенная область может представлять собой любое одно из блока, состоящего из одной или более CU, или блока, состоящего из одной или более CTU. Вышеописанная инициализация может быть той же самой, что и этап инициализации информации движения на фиг. 10 и 11.[00486] Meanwhile, when the decoding of the predetermined area is completed so that the area in the motion information list is changed, the image decoding apparatus may initialize the motion information list. Here, the predefined area may be any one of a block consisting of one or more CUs, or a block consisting of one or more CTUs. The above-described initialization may be the same as the motion information initialization step in FIG. 10 and 11.

[00487] Между тем, список информации движения может иметь ограничение предопределенного размера. Здесь, предопределенный размер может составлять шесть.[00487] Meanwhile, the motion information list may have a predetermined size limit. Here, the predetermined size may be six.

[00488] Между тем, когда существует множество информаций движения в списке информации движения, обновленном в блоке, декодированном перед текущим блоком, устройство декодирования изображения может включать среднее по меньшей мере двух или более информаций движения из множества информаций движения в список кандидатов.[00488] Meanwhile, when there is a plurality of motion information in the motion information list updated in the block decoded before the current block, the picture decoding apparatus may include an average of at least two or more motion information from the plurality of motion information in the candidate list.

[00489] Между тем, когда информация движения списка информации движения, обновленная в блоке, декодированном перед текущим блоком, является той же самой, что и информация движения, ранее включенная в список кандидатов, устройство декодирования изображения может разрешать не включать информацию движения списка информации движения в список кандидатов.[00489] Meanwhile, when the motion information of the motion information list updated in the block decoded before the current block is the same as the motion information previously included in the candidate list, the picture decoding apparatus may allow not to include the motion information of the motion information list to the list of candidates.

[00490] Кроме того, когда текущей блок является режимом предсказания IBC и список кандидатов представляет собой совместно используемый список слияния, способ обновления выведенной информации движения в списке информации движения может опускаться.[00490] In addition, when the current block is the IBC prediction mode and the candidate list is a shared merge list, the method of updating the outputted motion information in the motion information list may be omitted.

[00491] Между тем, когда количество информации движения, сохраненной в списке информации движения, является предварительно установленным значением, устройство декодирования изображения может удалять информацию движения, сохраненную первой в списке информации движения, и сохранять информацию движения, выведенную на этапе S2720.[00491] Meanwhile, when the amount of motion information stored in the motion information list is a preset value, the image decoding apparatus may delete the motion information stored first in the motion information list and store the motion information outputted in step S2720.

[00492] Способ декодирования изображения был описан выше со ссылкой на фиг. 27. Поскольку способ кодирования изображения настоящего изобретения может быть описан аналогично способу декодирования изображения, описанному со ссылкой на фиг. 27, избыточное описание опускается. [00492] The image decoding method has been described above with reference to FIG. 27. Since the image encoding method of the present invention can be described similarly to the image decoding method described with reference to FIG. 27, the redundant description is omitted.

[00493] Битовый поток, сгенерированный способом кодирования изображения настоящего изобретения, может временно храниться в считываемом компьютером долговременном носителе записи и может декодироваться вышеописанным способом декодирования изображения.[00493] The bit stream generated by the image encoding method of the present invention may be temporarily stored in a computer-readable durable recording medium, and may be decoded by the image decoding method described above.

[00494][00494]

[00495] Вышеупомянутые варианты осуществления могут выполняться одним и тем же способом в кодере и декодере.[00495] The above embodiments may be performed in the same manner in the encoder and decoder.

[00496] По меньшей мере один или комбинация вышеупомянутых вариантов осуществления могут использоваться для кодирования/декодирования видео.[00496] At least one or a combination of the above embodiments may be used for video encoding/decoding.

[00497] Последовательность применения к вышеуказанному варианту осуществления может быть разной для кодера и декодера, или последовательность, применяемая к вышеуказанному варианту осуществления, может быть одинаковой в кодере и декодере.[00497] The sequence applied to the above embodiment may be different for the encoder and decoder, or the sequence applied to the above embodiment may be the same in the encoder and decoder.

[00498] Вышеупомянутый вариант осуществления может выполняться для каждого сигнала яркости и сигнала цветности, или указанный выше вариант осуществления может идентично выполняться для сигналов яркости и цветности.[00498] The above embodiment may be performed for each luminance signal and chrominance signal, or the above embodiment may be identically performed for luminance and chrominance signals.

[00499] Форма блока, к которой применяются вышеупомянутые варианты осуществления настоящего изобретения, может быть квадратной или неквадратной формой.[00499] The shape of the block to which the above embodiments of the present invention apply may be square or non-square.

[00500] Вышеупомянутый вариант осуществления настоящего изобретения может применяться в зависимости от размера по меньшей мере одного из блока кодирования, блока предсказания, блока преобразования, блока, текущего блока, единицы кодирования, единицы предсказания, единицы преобразования, единицы и текущей единицы. Здесь, размер может быть определен как минимальный размер или максимальный размер, или и то, и другое, чтобы применять вышеупомянутые варианты осуществления, или может быть определен как фиксированный размер, к которому применяется вышеупомянутый вариант осуществления. Кроме того, в вышеупомянутых вариантах осуществления, первый вариант осуществления может применяться к первому размеру, и второй вариант осуществления может применяться ко второму размеру. Другими словами, вышеуказанные варианты осуществления могут применяться в комбинации в зависимости от размера. Кроме того, вышеупомянутые варианты осуществления могут применяться, когда размер равен или больше минимального размера и равен или меньше максимального размера. Другими словами, вышеупомянутые варианты осуществления могут применяться, когда размер блока входит в определенный диапазон.[00500] The above embodiment of the present invention may be applied depending on the size of at least one of a coding block, a prediction block, a transform block, a block, a current block, a coding unit, a prediction unit, a transform unit, a unit, and a current unit. Here, the size may be defined as a minimum size or a maximum size, or both, to apply the above embodiments, or may be defined as a fixed size to which the above embodiment is applied. In addition, in the above embodiments, the first embodiment may be applied to the first dimension, and the second embodiment may be applied to the second dimension. In other words, the above embodiments may be applied in combination depending on the size. In addition, the above embodiments can be applied when the size is equal to or greater than the minimum size and equal to or less than the maximum size. In other words, the above embodiments can be applied when the block size falls within a certain range.

[005001] Например, описанные выше варианты осуществления могут применяться, когда размер текущего блока составляет 8×8 или больше. Например, вышеупомянутые варианты осуществления могут применяться, когда размер текущего блока составляет 4×4 или больше. Например, описанные выше варианты осуществления могут применяться, когда размер текущего блока составляет 16×16 или больше. Например, вышеупомянутые варианты осуществления могут применяться, когда размер текущего блока равен или больше 16×16 и равен или меньше 64×64.[005001] For example, the embodiments described above may be applied when the current block size is 8×8 or larger. For example, the above embodiments may be applied when the current block size is 4×4 or larger. For example, the embodiments described above may be applied when the current block size is 16×16 or larger. For example, the above embodiments may be applied when the size of the current block is equal to or greater than 16×16 and equal to or less than 64×64.

[00502] Вышеупомянутые варианты осуществления настоящего изобретения могут применяться в зависимости от временного уровня. Чтобы идентифицировать временной уровень, к которому могут применяться вышеупомянутые варианты осуществления, может сигнализироваться соответствующий идентификатор, и вышеупомянутые варианты осуществления могут применяться к указанному временному уровню, идентифицированному соответствующим идентификатором. Здесь, идентификатор может быть определен как самый низкий уровень или самый высокий уровень, или оба, к которым может применяться вышеупомянутый вариант осуществления, или может быть определен для указания конкретного уровня, к которому применяется этот вариант осуществления. Кроме того, может быть определен фиксированный временной уровень, к которому применяется вариант осуществления.[00502] The above embodiments of the present invention may be applied depending on the temporal level. In order to identify the temporal layer to which the above embodiments may apply, a corresponding identifier may be signaled, and the above embodiments may apply to the indicated temporal layer identified by the corresponding identifier. Here, the identifier may be defined as the lowest level or the highest level, or both, to which the above embodiment may apply, or may be defined to indicate the specific level to which this embodiment applies. In addition, a fixed time level to which the embodiment applies can be determined.

[00503] Например, описанные выше варианты осуществления могут применяться, когда временной уровень текущего изображения является самым низким уровнем. Например, вышеупомянутые варианты осуществления могут применяться, когда идентификатор временного уровня текущего изображения равен или больше 1. Например, вышеупомянутые варианты осуществления могут применяться, когда временной уровень текущего изображения является наивысшим уровнем.[00503] For example, the embodiments described above may be applied when the temporal level of the current image is the lowest level. For example, the above embodiments can be applied when the temporal level identifier of the current picture is equal to or greater than 1. For example, the above embodiments can be applied when the temporal level of the current picture is the highest level.

[00504] Тип слайса или тип группы мозаичных элементов, к которым применяются вышеприведенные варианты осуществления настоящего изобретения, может быть определен, и вышеупомянутые варианты осуществления могут применяться в зависимости от соответствующего типа слайса или типа группы мозаичных элементов.[00504] The slice type or tile group type to which the above embodiments of the present invention apply can be determined, and the above embodiments can be applied depending on the corresponding slice type or tile group type.

[00505] В вышеописанных вариантах осуществления, способы описаны на основе блок-схем последовательности операций с последовательностью этапов или модулей, но настоящее изобретение не ограничивается порядком этапов, и, скорее, некоторые этапы могут выполняться одновременно или в другом порядке с другими этапами. Кроме того, специалисту в данной области техники должно быть понятно, что этапы в блок-схемах последовательностей операций не исключают друг друга и что другие этапы могут быть добавлены к блок-схемам последовательностей операций, или некоторые из этапов могут быть удалены из блок-схем последовательностей операций, не влияя на объем настоящего изобретения.[00505] In the above embodiments, the methods are described based on flowcharts with a sequence of steps or modules, but the present invention is not limited to the order of the steps, and rather, some steps may be performed simultaneously or in a different order with other steps. In addition, one skilled in the art will appreciate that the steps in the flowcharts are not mutually exclusive and that other steps may be added to the flowcharts, or some of the steps may be removed from the flowcharts. operations without affecting the scope of the present invention.

[00506] Варианты осуществления включают различные аспекты примеров. Все возможные комбинации для различных аспектов могут быть не описаны, но специалисты в данной области техники смогут распознать различные комбинации. Соответственно, настоящее изобретение может включать все замены, модификации и изменения в пределах объема формулы изобретения.[00506] Embodiments include various aspects of the examples. All possible combinations for various aspects may not be described, but those skilled in the art will recognize various combinations. Accordingly, the present invention may include all substitutions, modifications and changes within the scope of the claims.

[00507] Варианты осуществления настоящего изобретения могут быть реализованы в форме программных инструкций, которые исполняются различными компьютерными компонентами и записываются на считываемый компьютером носитель записи. Считываемый компьютером носитель записи может включать в себя отдельно или в комбинации программные инструкции, файлы данных, структуры данных и т.д. Программные инструкции, записанные на считываемом компьютером носителе записи, могут быть специально разработаны и сконструированы для настоящего изобретения или хорошо известны специалисту в области компьютерных программных технологий. Примеры считываемого компьютером носителя записи включают в себя магнитные носители записи, такие как жесткие диски, гибкие диски и магнитные ленты; оптические носители данных, такие как CD-ROM или DVD-ROM; магнитооптические носители, такие как флоптические диски; и аппаратные устройства, такие как постоянная память (ROM), память с произвольным доступом (RAM), флэш-память и т.д., которые конкретно структурированы для хранения и реализации программной инструкции. Примеры программных инструкций включают в себя не только механический код языка, форматируемый компилятором, но высокоуровневый код языка, который может быть реализован компьютером с использованием интерпретатора. Аппаратные устройства могут быть сконфигурированы для работы с одним или более программными модулями или, наоборот, для выполнения процессов в соответствии с настоящим изобретением.[00507] Embodiments of the present invention may be implemented in the form of program instructions that are executed by various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include, individually or in combination, program instructions, data files, data structures, and so on. The program instructions recorded on a computer-readable recording medium may be specially designed and constructed for the present invention, or well known to those skilled in the art of computer program technology. Examples of computer-readable recording media include magnetic recording media such as hard disks, floppy disks, and magnetic tapes; optical storage media such as CD-ROM or DVD-ROM; magneto-optical media such as floppy disks; and hardware devices such as read only memory (ROM), random access memory (RAM), flash memory, etc., which are specifically structured to store and implement a program instruction. Examples of program instructions include not only mechanical language code formatted by a compiler, but high-level language code that can be implemented by a computer using an interpreter. The hardware devices may be configured to operate with one or more software modules or, conversely, to perform processes in accordance with the present invention.

[00508] Хотя настоящее изобретение было описано в терминах специфических объектов, таких как детальные элементы, а также ограниченные варианты осуществления и чертежи, они предоставлены только для облегчения более общего понимания изобретения, и настоящее изобретение не ограничивается приведенными выше вариантами осуществления. Специалистам в области техники, к которой относится настоящее изобретение, будет понятно, что на основе приведенного выше описания могут быть сделаны различные модификации и изменения.[00508] Although the present invention has been described in terms of specific subjects such as detailed elements as well as limited embodiments and drawings, they are provided only to facilitate a more general understanding of the invention, and the present invention is not limited to the above embodiments. Those skilled in the art to which the present invention pertains will appreciate that various modifications and changes may be made based on the above description.

[00509] Поэтому сущность настоящего изобретения не должна ограничиваться описанными выше вариантами осуществления, и весь объем прилагаемой формулы изобретения и ее эквивалентов будет находиться в пределах объема и сущности изобретения.[00509] Therefore, the scope of the present invention should not be limited to the embodiments described above, and the entire scope of the appended claims and their equivalents will be within the scope and spirit of the invention.

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

[00510] Настоящее изобретение может быть использовано для кодирования или декодирования изображения.[00510] The present invention can be used to encode or decode an image.

Claims (42)

1. Способ генерирования списка кандидатов информации движения, генерируемого при декодировании изображения, содержащий:1. A method for generating a candidate list of motion information generated during image decoding, comprising: генерирование списка кандидатов, включающего в себя информацию движения, генерируемую с использованием информации соседнего блока, смежного с текущим блоком;generating a candidate list including motion information generated using neighboring block information adjacent to the current block; выведение информации движения текущего блока с использованием списка кандидатов;outputting movement information of the current block using the candidate list; генерирование блока предсказания текущего блока с использованием выведенной второй информации движения текущего блока; иgenerating a prediction block of the current block using the derived second motion information of the current block; and обновление списка информации движения для сохранения выведенной информации движения текущего блока,updating the motion information list to store the derived motion information of the current block, причем список кандидатов включает в себя по меньшей мере одну из информации движения, включенной в список информации движения, используемый для блока, декодируемого перед декодированием для текущего блока.wherein the candidate list includes at least one of the motion information included in the motion information list used for the block being decoded before decoding for the current block. 2. Способ по п. 1, причем список информации движения инициализируется, когда декодирование предопределенной области завершено, так что область изменяется. 2. The method of claim 1, wherein the motion information list is initialized when decoding of the predetermined area is completed, so that the area is changed. 3. Способ по п. 2, причем предопределенная область представляет собой любое одно из блока, состоящего из одной или более единиц (CU) кодирования, или блока, состоящего из одной или более единиц (CTU) дерева кодирования.3. The method of claim 2, wherein the predefined region is any one of a one or more coding tree unit (CU) or a one or more coding tree unit (CTU). 4. Способ по п. 1, причем, когда существует множество информаций движения в списке информации движения, используемом для блока, декодируемого перед декодированием для текущего блока, генерирование списка кандидатов выполняется таким образом, чтобы включать среднее по меньшей мере двух или более информаций движения из множества информаций движения в список кандидатов.4. The method of claim 1, wherein when there is a plurality of motion information in the motion information list used for a block being decoded before decoding for the current block, generating the candidate list is performed to include an average of at least two or more motion information from set of motion information in the list of candidates. 5. Способ по п. 1, причем, когда информация движения списка информации движения, используемого для блока, декодируемого перед декодированием для текущего блока, является той же самой, что и информация движения, ранее включенная в список кандидатов, генерирование списка кандидатов выполняется таким образом, чтобы не включать эту информацию движения списка информации движения в список кандидатов.5. The method of claim 1, wherein when the motion information of the motion information list used for the block being decoded before decoding for the current block is the same as the motion information previously included in the candidate list, generation of the candidate list is performed as follows not to include this traffic information list traffic information in the list of candidates. 6. Способ по п. 1, причем, когда режимом предсказания для текущего блока является режим внутриблочного копирования (IBC) и списком кандидатов является совместно используемый список слияния, обновление списка информации движения опускается.6. The method of claim 1, wherein when the prediction mode for the current block is intra-block copy (IBC) mode and the candidate list is a shared merge list, updating the motion information list is omitted. 7. Способ по п. 1, причем выведенная информация движения для текущего блока сохраняется в списке информации движения для использования для режима внутриблочного копирования (IBC), когда размер текущего блока больше или равен первому предопределенному размеру и этот размер меньше или равен второму предопределенному размеру. 7. The method according to claim 1, wherein the outputted motion information for the current block is stored in the motion information list for use for the intra-block copy (IBC) mode when the size of the current block is greater than or equal to the first predetermined size and this size is less than or equal to the second predetermined size. 8. Способ по п. 1, причем, когда количество информации движения, хранящейся в списке информации движения, является предопределенным значением, обновление выведенной информации движения в списке информации движения включает в себя удаление информации движения, сохраненной первой в списке информации движения, и сохранение выведенной информации движения.8. The method of claim 1, wherein when the amount of motion information stored in the motion information list is a predetermined value, updating the outputted motion information in the motion information list includes deleting the motion information stored first in the motion information list and storing the outputted movement information. 9. Способ генерирования списка кандидатов информации движения, генерируемого при кодировании изображения, содержащий:9. A method for generating a candidate list of motion information generated when encoding an image, comprising: генерирование списка кандидатов, включающего в себя информацию движения, генерируемую с использованием информации соседнего блока, смежного с текущим блоком;generating a candidate list including motion information generated using neighboring block information adjacent to the current block; выведение информации движения текущего блока с использованием списка кандидатов;outputting movement information of the current block using the candidate list; генерирование блока предсказания текущего блока с использованием выведенной информации движения текущего блока; иgenerating a prediction block of the current block using the derived motion information of the current block; and обновление списка информации движения для сохранения выведенной информации движения текущего блока,updating the motion information list to store the derived motion information of the current block, причем список кандидатов включает в себя по меньшей мере одну информацию из информации движения, включенной в список информации движения, используемый для блока, кодируемого перед кодированием для текущего блока.wherein the candidate list includes at least one information from the motion information included in the motion information list used for the block being encoded before encoding for the current block. 10. Способ по п. 9, причем список информации движения инициализируется, когда кодирование предопределенной области завершено, так что область изменяется. 10. The method of claim 9, wherein the motion information list is initialized when encoding of the predetermined area is completed so that the area is changed. 11. Способ по п. 10, причем предопределенная область представляет собой любое одно из блока, состоящего из одной или более единиц (CU) кодирования, или блока, состоящего из одной или более единиц (CTU) дерева кодирования.11. The method of claim 10, wherein the predefined region is any one of a one or more coding tree unit (CU) or a one or more coding tree unit (CTU). 12. Способ по п. 9, причем, когда существует множество информаций движения в списке информации движения, используемом для блока, кодируемого перед кодированием для текущего блока, генерирование списка кандидатов выполняется таким образом, чтобы включать среднее по меньшей мере двух или более информаций движения из множества информаций движения в список кандидатов.12. The method of claim 9, wherein when there is a plurality of motion information in the motion information list used for the block being encoded before encoding for the current block, generating the candidate list is performed to include an average of at least two or more motion information from set of motion information in the list of candidates. 13. Способ по п. 9, причем, когда информация движения списка информации движения, используемого для блока, кодируемого перед кодированием для текущего блока, является той же самой, что и информация движения, ранее включенная в список кандидатов, генерирование списка кандидатов выполняется таким образом, чтобы не включать эту информацию движения списка информации движения в список кандидатов.13. The method of claim 9, wherein when the motion information of the motion information list used for the block being encoded before encoding for the current block is the same as the motion information previously included in the candidate list, generation of the candidate list is performed as follows not to include this traffic information list traffic information in the list of candidates. 14. Способ по п. 9, причем, когда режимом предсказания для текущего блока является режим внутриблочного копирования (IBC) и списком кандидатов является совместно используемый список слияния, обновление списка информации движения опускается.14. The method of claim 9, wherein when the prediction mode for the current block is intra-block copy (IBC) mode and the candidate list is a shared merge list, updating the motion information list is omitted. 15. Способ по п. 9, причем выведенная информация движения для текущего блока сохраняется в списке информации движения для использования для режима внутриблочного копирования (IBC), когда размер текущего блока больше или равен первому предопределенному размеру и этот размер меньше или равен второму предопределенному размеру. 15. The method of claim 9, wherein the outputted motion information for the current block is stored in a motion information list for use for intra-block copy (IBC) mode when the size of the current block is greater than or equal to the first predetermined size and that size is less than or equal to the second predetermined size. 16. Способ по п. 9, причем, когда количество информации движения, хранящейся в списке информации движения, является предопределенным значением, обновление выведенной информации движения в списке информации движения включает в себя удаление информации движения, сохраненной первой в списке информации движения, и сохранение выведенной информации движения.16. The method of claim 9, wherein when the amount of motion information stored in the motion information list is a predetermined value, updating the outputted motion information in the motion information list includes deleting the motion information stored first in the motion information list and storing the outputted movement information. 17. Считываемый компьютером носитель записи, содержащий битовый поток, декодируемый способом декодирования изображения, причем способ декодирования изображения содержит:17. A computer-readable recording medium comprising a bitstream decoded by an image decoding method, the image decoding method comprising: генерирование списка кандидатов, включающего в себя информацию движения, генерируемую с использованием информации соседнего блока, смежного с текущим блоком;generating a candidate list including motion information generated using neighboring block information adjacent to the current block; выведение информации движения текущего блока с использованием списка кандидатов;outputting movement information of the current block using the candidate list; генерирование блока предсказания текущего блока с использованием выведенной информации движения текущего блока; иgenerating a prediction block of the current block using the derived motion information of the current block; and обновление списка информации движения для сохранения выведенной информации движения текущего блока,updating the motion information list to store the derived motion information of the current block, причем список кандидатов включает в себя по меньшей мере одну информацию из информации движения, включенной в список информации движения, используемый для блока, декодируемого перед декодированием для текущего блока.wherein the candidate list includes at least one information from the motion information included in the motion information list used for the block being decoded before decoding for the current block. 18. Считываемый компьютером носитель записи по п. 17, причем выведенная информация движения для текущего блока сохраняется в списке информации движения для использования для режима внутриблочного копирования (IBC), когда размер текущего блока больше или равен первому предопределенному размеру. 18. The computer-readable recording medium of claim 17, wherein the derived motion information for the current block is stored in the motion information list to be used for the intra-block copy (IBC) mode when the size of the current block is greater than or equal to the first predetermined size. 19. Считываемый компьютером носитель записи, содержащий битовый поток, причем битовый поток содержит:19. A computer-readable recording medium containing a bitstream, and the bitstream contains: информацию для режима предсказания, при этом information for the prediction mode, while предсказание для текущего блока выполняется с использованием информации для режима предсказания,prediction for the current block is performed using the information for the prediction mode, список кандидатов, включающий в себя информацию движения, генерируемую с использованием информации соседнего блока, смежного с текущим блоком, генерируется;a candidate list including motion information generated using neighboring block information adjacent to the current block is generated; информация движения текущего блока выводится с использованием списка кандидатов,the movement information of the current block is output using the list of candidates, блок предсказания текущего блока генерируется с использованием выведенной информации движения текущего блока,a prediction block of the current block is generated using the derived motion information of the current block, список информации движения обновляется для сохранения выведенной информации движения текущего блока, иthe motion information list is updated to store the output motion information of the current block, and причем список кандидатов включает в себя по меньшей мере одну информацию из информации движения, включенной в список информации движения, используемый для блока, декодируемого перед декодированием для текущего блока.wherein the candidate list includes at least one information from the motion information included in the motion information list used for the block being decoded before decoding for the current block. 20. Считываемый компьютером носитель записи по п. 19, причем выведенная информация движения для текущего блока сохраняется в списке информации движения для использования для режима внутриблочного копирования (IBC), когда размер текущего блока больше или равен первому предопределенному размеру.20. The computer-readable recording medium of claim 19, wherein the derived motion information for the current block is stored in the motion information list to be used for the intra-block copy (IBC) mode when the size of the current block is greater than or equal to the first predetermined size.
RU2021105676A 2018-08-06 2019-08-06 Method and apparatus for encoding/decoding an image and record medium storing a bitstream RU2775829C1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0091365 2018-08-06
KR10-2018-0113484 2018-09-21

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2022118003A Division RU2806878C2 (en) 2018-08-06 2022-07-01 Method and device for image encoding/decoding and record medium which stores bitstream

Publications (1)

Publication Number Publication Date
RU2775829C1 true RU2775829C1 (en) 2022-07-11

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140010283A1 (en) * 2009-12-16 2014-01-09 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
RU2566955C9 (en) * 2011-11-08 2016-11-27 Самсунг Электроникс Ко., Лтд. Method and apparatus for motion vector determination in video encoding or decoding
KR101721345B1 (en) * 2012-11-06 2017-03-29 닛본 덴끼 가부시끼가이샤 Video encoding method, video encoding device, and video encoding program
US20180109805A1 (en) * 2011-06-30 2018-04-19 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
WO2018105757A1 (en) * 2016-12-05 2018-06-14 엘지전자 주식회사 Method and device for decoding image in image coding system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140010283A1 (en) * 2009-12-16 2014-01-09 Electronics And Telecommunications Research Institute Adaptive image encoding device and method
US20180109805A1 (en) * 2011-06-30 2018-04-19 JVC Kenwood Corporation Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program
RU2566955C9 (en) * 2011-11-08 2016-11-27 Самсунг Электроникс Ко., Лтд. Method and apparatus for motion vector determination in video encoding or decoding
KR101721345B1 (en) * 2012-11-06 2017-03-29 닛본 덴끼 가부시끼가이샤 Video encoding method, video encoding device, and video encoding program
WO2018105757A1 (en) * 2016-12-05 2018-06-14 엘지전자 주식회사 Method and device for decoding image in image coding system

Similar Documents

Publication Publication Date Title
CN111279695B (en) Method and apparatus for asymmetric subblock-based image encoding/decoding
US12034977B2 (en) Video encoding/decoding method and device, and recording medium for storing bitstream
KR20190108506A (en) Method and apparatus for encoding/decoding image and recording medium for storing bitstream
CN116347074A (en) Image encoding/decoding method and apparatus using sample filtering
US11838514B2 (en) Image encoding/decoding method and device, and recording medium storing bitstream
RU2769959C1 (en) Method and apparatus for encoding/decoding image and recording medium on which bit stream is stored
CN113273188B (en) Image encoding/decoding method and apparatus, and recording medium storing bit stream
US20220070475A1 (en) Image encoding/decoding method and apparatus, and recording media storing bitstream
US20220124310A1 (en) Method and device for encoding/decoding video, and recording medium for storing bitstream
CN114788286A (en) Image encoding/decoding method and apparatus, and recording medium storing bit stream
KR20200144509A (en) Method and Apparatus for Inter Prediction Information Encoding and Decoding Thereof
US20240323363A1 (en) Image encoding/decoding method and device, and recording medium storing bitstream
US20220060714A1 (en) Image encoding/decoding method and apparatus, and recording medium storing bitstream
CN112740693B (en) Image encoding/decoding method, apparatus and recording medium having stored bit stream
KR20200119744A (en) Method and apparatus for signaling signals related prediction mode in intra prediction
RU2775829C1 (en) Method and apparatus for encoding/decoding an image and record medium storing a bitstream
US20210377526A1 (en) Method and device for encoding/decoding image, and recording medium for storing bitstream
RU2806878C2 (en) Method and device for image encoding/decoding and record medium which stores bitstream
RU2824753C1 (en) Method and apparatus for encoding/decoding image and recording medium storing bit stream
RU2795811C2 (en) Method and device for image encoding/decoding and record medium which stores bitstream
RU2818968C2 (en) Method and apparatus for encoding/decoding image and recording medium on which bit stream is stored
CN113261286B (en) Method and apparatus for deriving intra prediction modes
KR20200045437A (en) Method and apparatus for adaptively constructing mpm list in intra prediction