RU2801154C1 - Device and method for motion vector encoding and device and method for motion vector decoding - Google Patents

Device and method for motion vector encoding and device and method for motion vector decoding Download PDF

Info

Publication number
RU2801154C1
RU2801154C1 RU2022128113A RU2022128113A RU2801154C1 RU 2801154 C1 RU2801154 C1 RU 2801154C1 RU 2022128113 A RU2022128113 A RU 2022128113A RU 2022128113 A RU2022128113 A RU 2022128113A RU 2801154 C1 RU2801154 C1 RU 2801154C1
Authority
RU
Russia
Prior art keywords
block
motion vector
coding unit
current block
split
Prior art date
Application number
RU2022128113A
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 RU2801154C1 publication Critical patent/RU2801154C1/en

Links

Abstract

FIELD: image encoding and decoding.
SUBSTANCE: resolution of the motion vectors of the current block is determined. The first neighbouring block is selected from the plurality of neighbouring blocks adjacent to the current block using the resolution of the motion vectors of the current block. If the current block refers to a reference frame in list 0 and the first neighbouring block refers to a reference frame in list 0, a motion vector predictor is determined using the motion vector of the first neighbouring block. If the current block refers to a reference frame in list 0 and the first neighbouring block refers to a reference frame in list 1, the default motion vector is determined based on the motion vector of the second neighbouring block from the plurality of neighbouring blocks adjacent to the current block, and the motion vector predictor of the current block is determined by using the default motion vector. A bitstream is generated containing information indicating the resolution of the motion vectors of the current block and the differential motion vector determined using the motion vector of the current block and the predictor of the motion vector of the current block.
EFFECT: increased efficiency of image encoding.
9 cl, 32 dwg

Description

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

Раскрытие относится к области техники кодирования и декодирования изображений. Более конкретно, раскрытие относится к оборудованию и способу для кодирования и декодирования текущего вектора движения посредством использования его соседнего вектора движения.The disclosure relates to the art of encoding and decoding images. More specifically, the disclosure relates to equipment and a method for encoding and decoding a current motion vector by using its adjacent motion vector.

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

При кодировании и декодировании изображений, изображение разбивается на блоки, и каждый блок кодируется с прогнозированием (предсказанием) и декодируется с прогнозированием через межкадровое (интер-) прогнозирование или внутрикадровое (интра-) прогнозирование.In image encoding and decoding, an image is divided into blocks, and each block is predictively encoded (prediction) and predictively decoded via inter-frame (inter-) prediction or intra-frame (intra-) prediction.

Интер-прогнозирование представляет собой способ удаления временной избыточности между изображениями, чтобы сжимать изображения. Характерный пример интер-прогнозирования представляет собой кодирование с оценкой движения. Кодирование с оценкой движения прогнозирует блоки текущего кадра посредством использования по меньшей мере одного опорного кадра. Опорный блок, который является наиболее аналогичным текущему блоку, ищется в пределах предварительно определенного диапазона поиска посредством использования предварительно определенной оценочной функции. Текущий блок прогнозируется на основе опорного блока, и блок прогнозирования, сформированный в качестве результата прогнозирования, вычитается из текущего блока, чтобы формировать остаточный блок. Остаточный блок затем кодируется. Чтобы более точно выполнять прогнозирование, интерполяция выполняется для опорного кадра, чтобы формировать пикселы в субпельной единице, которая меньше целопельной единицы, и интер-прогнозирование выполняется на основе пикселов в субпельной единице.Inter-prediction is a technique for removing temporal redundancy between images in order to compress images. A typical example of inter-prediction is motion estimation coding. Motion estimation coding predicts blocks of the current frame by using at least one reference frame. The reference block that is most similar to the current block is searched within a predetermined search range by using a predetermined evaluation function. The current block is predicted based on the reference block, and a prediction block generated as a prediction result is subtracted from the current block to form a residual block. The residual block is then encoded. In order to perform prediction more accurately, interpolation is performed on a reference frame to generate pixels in a sub-pellet unit that is smaller than an integer unit, and inter-prediction is performed based on the pixels in the sub-pellet unit.

В кодеке, к примеру, по стандарту усовершенствованного кодирования видео (AVC) H.264 и по стандарту высокоэффективного кодирования видео (HEVC), векторы движения ранее кодированных блоков, смежных с текущим блоком, или блоков, включенных в ранее кодированные изображения, используются для того, чтобы прогнозировать вектор движения текущего блока. Дифференциальные векторы движения, которые представляют разности между векторами движения текущего блока и векторами движения ранее кодированных блоков, сигнализируются стороне декодера через предварительно установленный способ.In a codec such as H.264 Advanced Video Coding (AVC) and High Efficiency Video Coding (HEVC), motion vectors of previously coded blocks adjacent to the current block or blocks included in previously coded pictures are used to to predict the motion vector of the current block. The differential motion vectors, which represent the differences between the motion vectors of the current block and the motion vectors of previously encoded blocks, are signaled to the decoder side via a preset method.

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

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

Предусмотрено оборудование и способ для кодирования вектора движения и оборудование и способ для декодирования вектора движения, за счет которых повышается точность прогнозирования вектора движения текущего блока.Equipment and method for motion vector encoding and equipment and method for motion vector decoding are provided, which improve the accuracy of motion vector prediction of the current block.

Предусмотрено оборудование и способ для кодирования вектора движения и оборудование и способ для декодирования вектора движения, за счет которых уменьшается размер дифференциального вектора движения, включенного в поток битов.Equipment and method for motion vector encoding and equipment and method for motion vector decoding are provided, which reduce the size of a differential motion vector included in a bit stream.

Решение задачиThe solution of the problem

Способ декодирования вектора движения, согласно варианту осуществления, включает в себя выбор первого соседнего блока из числа соседних блоков, смежных с текущим блоком, согласно информации, полученной из потока битов; когда первый соседний блок идентифицируется как доступный посредством использования информации, указывающей доступность первого соседнего блока, и вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не существует, получение прогнозного вектора движения текущего блока из вектора движения второго соседнего блока в предварительно определенном местоположении, причем второй соседний блок является смежным с текущим блоком; и получение вектора движения текущего блока посредством комбинирования прогнозного вектора движения текущего блока с дифференциальным вектором движения.A motion vector decoding method according to an embodiment includes selecting a first neighboring block from neighboring blocks adjacent to the current block according to information obtained from the bitstream; when the first neighbor block is identified as available by using information indicating the availability of the first neighbor block, and the motion vector of the first neighbor block in the prediction direction identical to the prediction direction of the current block does not exist, obtaining the prediction motion vector of the current block from the motion vector of the second neighbor block in advance a specific location, and the second neighboring block is adjacent to the current block; and deriving a motion vector of the current block by combining the predictive motion vector of the current block with the differential motion vector.

Преимущества раскрытияDisclosure Benefits

В оборудовании и способе для кодирования вектора движения и в оборудовании и способе для декодирования вектора движения, согласно варианту осуществления, может повышаться точность прогнозирования вектора движения текущего блока.In the motion vector encoding equipment and method and the motion vector decoding equipment and method according to the embodiment, the motion vector prediction accuracy of the current block can be improved.

В оборудовании и способе для кодирования вектора движения и в оборудовании и способе для декодирования вектора движения, согласно варианту осуществления, может уменьшаться размер дифференциального вектора движения, включенного в поток битов.In the equipment and method for motion vector coding and in the equipment and method for motion vector decoding, according to an embodiment, the size of the differential motion vector included in the bitstream can be reduced.

Следует отметить, что преимущества, которые могут достигаться посредством оборудования и способа для кодирования вектора движения и оборудования и способа для декодирования вектора движения, согласно варианту осуществления, не ограничены преимуществами, описанными выше, и другие преимущества, которые не упоминаются, должны становиться очевидными для специалистов в данной области техники из нижеприведенных описаний.It should be noted that the advantages that can be achieved by the motion vector encoding equipment and method and the motion vector decoding equipment and method according to the embodiment are not limited to the advantages described above, and other advantages that are not mentioned should become apparent to those skilled in the art. in the art from the following descriptions.

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

Краткое описание каждого чертежа предоставляется для лучшего понимания чертежей, приведенных в данном документе.A brief description of each drawing is provided for a better understanding of the drawings provided in this document.

Фиг. 1 является блок-схемой оборудования декодирования изображений согласно варианту осуществления.Fig. 1 is a block diagram of an image decoding equipment according to an embodiment.

Фиг. 2 является блок-схемой оборудования кодирования изображений согласно варианту осуществления.Fig. 2 is a block diagram of an image encoding equipment according to an embodiment.

Фиг. 3 иллюстрирует процесс определения, по меньшей мере, одной единицы кодирования посредством разбиения текущей единицы кодирования, согласно варианту осуществления.Fig. 3 illustrates a process for determining at least one coding unit by splitting the current coding unit, according to an embodiment.

Фиг. 4 иллюстрирует процесс определения, по меньшей мере, одной единицы кодирования посредством разбиения неквадратной единицы кодирования, согласно варианту осуществления.Fig. 4 illustrates a process for determining at least one coding unit by splitting a non-square coding unit, according to an embodiment.

Фиг. 5 иллюстрирует процесс разбиения единицы кодирования на основе, по меньшей мере, одного из информации формы блоков и информации режима согласно форме разбиения, согласно варианту осуществления.Fig. 5 illustrates a splitting process of a coding unit based on at least one of block shape information and mode information according to the split shape, according to an embodiment.

Фиг. 6 иллюстрирует способ определения предварительно установленной единицы кодирования из нечетного числа единиц кодирования, согласно варианту осуществления.Fig. 6 illustrates a method for determining a preset coding unit from an odd number of coding units, according to an embodiment.

Фиг. 7 иллюстрирует порядок обработки множества единиц кодирования при определении множества единиц кодирования посредством разбиения текущей единицы кодирования, согласно варианту осуществления.Fig. 7 illustrates a processing order of a plurality of coding units in determining a plurality of coding units by splitting a current coding unit, according to an embodiment.

Фиг. 8 иллюстрирует процесс определения того, что текущая единица кодирования должна разбиваться на нечетное число единиц кодирования, когда единицы кодирования не являются обрабатываемыми в предварительно установленном порядке, согласно варианту осуществления.Fig. 8 illustrates a process for determining that the current coding unit should be split into an odd number of coding units when the coding units are not pre-processable, according to an embodiment.

Фиг. 9 иллюстрирует процесс определения, по меньшей мере, одной единицы кодирования посредством разбиения первой единицы кодирования, согласно варианту осуществления.Fig. 9 illustrates a process for determining at least one coding unit by splitting the first coding unit, according to an embodiment.

Фиг. 10 иллюстрирует то, что форма, на которую является разбиваемой неквадратная вторая единица кодирования, определенная посредством разбиения первой единицы кодирования, ограничивается, когда вторая единица кодирования удовлетворяет предварительно установленному условию, согласно варианту осуществления.Fig. 10 illustrates that the shape into which the non-square second coding unit, determined by splitting the first coding unit, is split is limited when the second coding unit satisfies a predetermined condition, according to an embodiment.

Фиг. 11 иллюстрирует процесс разбиения квадратной единицы кодирования, когда информация режима согласно форме разбиения не указывает разбиение в единицах по четыре квадратных единицы кодирования, согласно варианту осуществления.Fig. 11 illustrates a process of splitting a square coding unit when the mode information according to the split form does not indicate a split in units of four square coding units, according to an embodiment.

Фиг. 12 иллюстрирует то, что порядок обработки между множеством единиц кодирования может изменяться в зависимости от процесса разбиения единицы кодирования, согласно варианту осуществления.Fig. 12 illustrates that the processing order between the plurality of coding units may change depending on the coding unit partitioning process according to the embodiment.

Фиг. 13 иллюстрирует процесс определения глубины единицы кодирования по мере того, как форма и размер единицы кодирования изменяются, когда единица кодирования рекурсивно разбивается таким образом, что множество единиц кодирования определяются, согласно варианту осуществления.Fig. 13 illustrates a process for determining the depth of a coding unit as the shape and size of a coding unit change when a coding unit is recursively split such that a plurality of coding units are determined, according to an embodiment.

Фиг. 14 иллюстрирует глубины, которые являются определимыми на основе форм и размеров единиц кодирования и индексов частей (PID) для различения единиц кодирования, согласно варианту осуществления.Fig. 14 illustrates depths that are definable based on shapes and sizes of coding units and part indices (PIDs) for distinguishing coding units, according to an embodiment.

Фиг. 15 иллюстрирует то, что множество единиц кодирования определяются на основе множества предварительно установленных единиц данных, включенных в кадр, согласно варианту осуществления.Fig. 15 illustrates that a plurality of coding units are determined based on a plurality of preset data units included in a frame, according to an embodiment.

Фиг. 16 иллюстрирует единицы кодирования отдельных кадров, когда отдельные кадры имеют различные комбинации форм разбиения единиц кодирования, согласно варианту осуществления.Fig. 16 illustrates individual frame coding units when individual frames have different combinations of coding unit split shapes, according to an embodiment.

Фиг. 17 иллюстрирует различные формы единиц кодирования, которые могут определяться на основе информации режима согласно форме разбиения, которая выражается двоичным кодом, согласно варианту осуществления.Fig. 17 illustrates various forms of coding units that can be determined based on mode information according to a partition form that is expressed in binary according to an embodiment.

Фиг. 18 иллюстрирует другие формы единиц кодирования, которые могут определяться на основе информации режима согласно форме разбиения, которая выражается двоичным кодом, согласно варианту осуществления.Fig. 18 illustrates other forms of coding units that can be determined based on mode information according to a partition form that is expressed in binary according to an embodiment.

Фиг. 19 является блок-схемой системы кодирования и декодирования изображений.Fig. 19 is a block diagram of an image encoding and decoding system.

Фиг. 20 является блок-схемой оборудования декодирования изображений согласно варианту осуществления.Fig. 20 is a block diagram of an image decoding equipment according to an embodiment.

Фиг. 21A иллюстрирует местоположения соседних блоков, когда левый блок относительно текущего блока доступен.Fig. 21A illustrates the locations of adjacent blocks when the left block relative to the current block is available.

Фиг. 21B иллюстрирует местоположения соседних блоков, когда левый блок и правый блок относительно текущего блока доступны.Fig. 21B illustrates the locations of neighboring blocks when a left block and a right block relative to the current block are available.

Фиг. 21C иллюстрирует местоположения соседних блоков, когда правый блок относительно текущего блока доступен.Fig. 21C illustrates the locations of adjacent blocks when the right block relative to the current block is available.

Фиг. 22 является таблицей, показывающей взаимосвязь на основе совпадения между индексами разрешений векторов движения, разрешений векторов движения и местоположений соседних блоков.Fig. 22 is a table showing a match-based relationship between indexes of motion vector permissions, motion vector permissions, and neighboring block locations.

Фиг. 23A иллюстрирует случай, в котором индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным предварительно определенному значению.Fig. 23A illustrates a case in which the reference frame index of the first adjacent block in the same prediction direction as the current block is not the same as a predetermined value.

Фиг. 23B иллюстрирует случай, в котором индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным предварительно определенному значению.Fig. 23B illustrates a case in which the reference frame index of the first adjacent block in the same prediction direction as the current block is the same as a predetermined value.

Фиг. 23C иллюстрирует случай, в котором, когда направление прогнозирования текущего блока представляет собой двойное направление, один из индекса опорного кадра первого соседнего блока в направлении списка 0 и индекса опорного кадра первого соседнего блока в направлении списка 1 является идентичным предварительно определенному значению, а другой не является идентичным предварительно определенному значению.Fig. 23C illustrates a case in which, when the prediction direction of the current block is the dual direction, one of the reference frame index of the first neighbor block in the list 0 direction and the reference frame index of the first neighbor block in the list 1 direction is the same as the predetermined value, and the other is not identical to the predefined value.

Фиг. 24 является блок-схемой последовательности операций способа декодирования вектора движения, согласно варианту осуществления.Fig. 24 is a flowchart of a motion vector decoding method according to an embodiment.

Фиг. 25 является блок-схемой оборудования кодирования изображений согласно варианту осуществления.Fig. 25 is a block diagram of an image encoding equipment according to an embodiment.

Фиг. 26 является блок-схемой последовательности операций способа кодирования вектора движения, согласно варианту осуществления.Fig. 26 is a flowchart of a motion vector encoding method according to an embodiment.

Фиг. 27 является видом для пояснения процесса получения прогнозного вектора движения, согласно варианту осуществления.Fig. 27 is a view for explaining a process for obtaining a predictive motion vector according to the embodiment.

Фиг. 28 является видом для пояснения процесса получения прогнозного вектора движения, согласно варианту осуществления.Fig. 28 is a view for explaining a process for obtaining a predictive motion vector according to the embodiment.

Оптимальный режим осуществления изобретенияOptimal Mode for Carrying Out the Invention

Способ декодирования вектора движения, согласно варианту осуществления, включает в себя выбор первого соседнего блока из числа соседних блоков, смежных с текущим блоком, согласно информации, полученной из потока битов; когда первый соседний блок идентифицируется как доступный посредством использования информации, указывающей доступность первого соседнего блока, и вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не существует, получение прогнозного вектора движения текущего блока из вектора движения второго соседнего блока в предварительно определенном местоположении, причем второй соседний блок является смежным с текущим блоком; и получение вектора движения текущего блока посредством комбинирования прогнозного вектора движения текущего блока с дифференциальным вектором движения.A motion vector decoding method according to an embodiment includes selecting a first neighboring block from neighboring blocks adjacent to the current block according to information obtained from the bit stream; when the first neighbor block is identified as available by using information indicating the availability of the first neighbor block, and the motion vector of the first neighbor block in the prediction direction identical to the prediction direction of the current block does not exist, obtaining the prediction motion vector of the current block from the motion vector of the second neighbor block in advance a specific location, and the second neighboring block is adjacent to the current block; and deriving a motion vector of the current block by combining the predictive motion vector of the current block with the differential motion vector.

Когда индекс опорного кадра второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, равен -1, вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, может не существовать.When the index of the reference frame of the second neighbor block in the same prediction direction as the current block is -1, the motion vector of the first neighbor block in the same prediction direction as the current block may not exist.

Доступность первого соседнего блока может определяться согласно, по меньшей мере, одному из того, отличается или нет плитка (клетка), включающая в себя первый соседний блок, от плитки, включающей в себя текущий блок, того, расположен или нет первый соседний блок за пределами текущего кадра, того, спрогнозирован ли первый соседний блок посредством интра-прогнозирования или нет, и того, восстанавливается или нет первый соседний блок.The accessibility of the first neighbor block may be determined according to at least one of whether or not the tile (cell) including the first neighbor block differs from the tile including the current block, whether or not the first neighbor block is located outside of the current frame, whether the first neighbor block is predicted by intra-prediction or not, and whether the first neighbor block is recovered or not.

Получение вектора движения текущего блока может включать в себя, когда первый соседний блок идентифицируется как доступный посредством использования информации, указывающей доступность первого соседнего блока, и вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, существует, получение прогнозного вектора движения текущего блока из вектора движения первого соседнего блока.Obtaining a motion vector of the current block may include, when a first neighboring block is identified as available by using information indicating the availability of the first neighboring block, and a motion vector of the first neighboring block in a prediction direction identical to the prediction direction of the current block exists, obtaining a predictive motion vector of the current block from the motion vector of the first neighboring block.

Информация, полученная из потока битов, может включать в себя информацию, указывающую разрешение векторов движения текущего блока из множества разрешений векторов движения, и множество разрешений векторов движения могут соотноситься с соседними блоками в различных местоположениях.The information obtained from the bitstream may include information indicating the motion vector resolution of the current block from the set of motion vector resolutions, and the set of motion vector resolutions may correspond to neighboring blocks at different locations.

Местоположение второго соседнего блока может варьироваться согласно информации, указывающей доступности левого и правого соседних блоков относительно текущего блока.The location of the second neighboring block may vary according to information indicating the availability of the left and right neighboring blocks relative to the current block.

Получение прогнозного вектора движения текущего блока может включать в себя, когда второй соседний блок идентифицируется как доступный посредством использования информации, указывающей доступность второго соседнего блока, и индекс опорного кадра второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным индексу опорного кадра текущего блока, или вектор движения второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, существует, получение прогнозного вектора движения текущего блока из вектора движения второго соседнего блока.Obtaining the predictive motion vector of the current block may include when the second neighboring block is identified as available by using information indicating the availability of the second neighboring block, and the reference frame index of the second neighboring block in the prediction direction identical to the current block prediction direction is identical to the reference frame index of the current block, or a motion vector of the second neighboring block in the prediction direction identical to the prediction direction of the current block exists, obtaining the prediction motion vector of the current block from the motion vector of the second neighboring block.

Получение прогнозного вектора движения текущего блока может включать в себя, когда второй соседний блок идентифицируется как недоступный посредством использования информации, указывающей доступность второго соседнего блока, или вектор движения второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не существует, получение прогнозного вектора движения текущего блока из вектора движения блока, декодированного перед текущим блоком.Obtaining a predictive motion vector of the current block may include, when the second neighboring block is identified as unreachable by using information indicating the availability of the second neighboring block, or the motion vector of the second neighboring block in a prediction direction identical to the prediction direction of the current block does not exist, obtaining a prediction vector motion of the current block from the motion vector of the block decoded before the current block.

Получение прогнозного вектора движения текущего блока может включать в себя, когда первый соседний блок идентифицируется как недоступный, получение прогнозного вектора движения текущего блока из вектора движения второго соседнего блока.Obtaining the predictive motion vector of the current block may include, when the first neighboring block is identified as unreachable, obtaining the predictive motion vector of the current block from the motion vector of the second neighboring block.

Оборудование декодирования изображений согласно варианту осуществления включает в себя модуль прогнозирования векторов движения, выполненный с возможностью выбирать первый соседний блок из числа соседних блоков, смежных с текущим блоком, согласно информации, полученной из потока битов, и когда первый соседний блок идентифицируется как доступный посредством использования информации, указывающей доступность первого соседнего блока, и вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не существует, получать прогнозный вектор движения текущего блока из вектора движения второго соседнего блока в предварительно определенном местоположении, причем второй соседний блок является смежным с текущим блоком; и модуль восстановления векторов движения, выполненный с возможностью получать вектор движения текущего блока посредством комбинирования прогнозного вектора движения текущего блока с дифференциальным вектором движения.The image decoding equipment according to the embodiment includes a motion vector prediction module configured to select a first neighbor block from among neighbor blocks adjacent to the current block according to information obtained from the bit stream, and when the first neighbor block is identified as available by using the information indicating the availability of the first neighboring block, and the motion vector of the first neighboring block in the prediction direction identical to the prediction direction of the current block does not exist, obtain the prediction motion vector of the current block from the motion vector of the second neighboring block at a predetermined location, the second neighboring block being adjacent to the current block; and a motion vector recovery module, configured to obtain a motion vector of the current block by combining the predictive motion vector of the current block with the differential motion vector.

Способ кодирования вектора движения, согласно варианту осуществления, включает в себя, когда первый соседний блок, выбранный из числа соседних блоков, смежных с текущим блоком, идентифицируется как доступный, и вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не существует, получение прогнозного вектора движения текущего блока из вектора движения второго соседнего блока в предварительно определенном местоположении, причем второй соседний блок является смежным с текущим блоком; и формирование потока битов, включающего в себя дифференциальный вектор движения между вектором движения текущего блока и прогнозным вектором движения текущего блока и информацию для указания первого соседнего блока.A motion vector encoding method according to an embodiment includes, when a first neighboring block selected from among neighboring blocks adjacent to the current block is identified as available, and the motion vector of the first neighboring block in a prediction direction identical to the prediction direction of the current block is not exists, deriving a predictive motion vector of the current block from a motion vector of a second neighboring block at a predetermined location, the second neighboring block being adjacent to the current block; and generating a bitstream including a differential motion vector between the motion vector of the current block and the predictive motion vector of the current block, and information for indicating a first neighboring block.

Режим согласно раскрытиюMode according to disclosure

Поскольку раскрытие обеспечивает возможность различных изменений и множества вариантов осуществления, конкретные варианты осуществления проиллюстрированы на чертежах и подробно описываются в письменном описании. Тем не менее, нет намерения ограничивать раскрытие конкретными режимами практического применения, и следует принимать во внимание, что все изменения, эквиваленты и замены, которые не отступают от сущности и объема раскрытия, включаются в раскрытие.Since the disclosure allows for various variations and many embodiments, specific embodiments are illustrated in the drawings and described in detail in the written description. However, it is not intended to limit the disclosure to particular modes of practice, and it should be appreciated that all modifications, equivalents, and replacements that do not depart from the spirit and scope of the disclosure are included in the disclosure.

В описании вариантов осуществления раскрытия, опускаются определенные подробные пояснения предшествующего уровня техники, когда считается, что они могут излишне затруднять понимание сути раскрытия. Хотя такие термины, как "первый", "второй" и т.д., могут использоваться для того, чтобы описывать различные компоненты, такие компоненты не должны быть ограничены вышеуказанными терминами. Вышеуказанные термины используются только для того, чтобы отличать один компонент от другого.In the description of embodiments of the disclosure, certain detailed explanations of the prior art are omitted when it is believed that they may unnecessarily obscure the essence of the disclosure. Although terms such as "first", "second", etc. may be used to describe various components, such components should not be limited to the above terms. The above terms are only used to distinguish one component from another.

Когда элемент (например, первый элемент) "подключается" или "соединяется" с другим элементом (например, со вторым элементом), первый элемент может непосредственно подключаться к или соединяться со вторым элементом, либо, если не описано иное, третий элемент может существовать между ними.When an element (e.g., the first element) "connects" or "connects" to another element (e.g., the second element), the first element may directly connect to or connect to the second element, or, unless otherwise described, the third element may exist between them.

Относительно компонента, представленного в качестве "части (единицы)" или "модуля", используемого в данном документе, два или более компонентов могут комбинироваться в один компонент, либо один компонент может разделяться на два или более компонентов согласно подразделенным функциям. Помимо этого, каждый компонент, описанный далее, дополнительно может выполнять часть или все функции, выполняемые посредством другого компонента, в дополнение к своим основным функциям, и некоторые основные функции каждого компонента могут выполняться полностью посредством другого компонента.With respect to a component presented as a "part (unit)" or "module" used herein, two or more components may be combined into one component, or one component may be separated into two or more components according to subdivided functions. In addition, each component described below may further perform some or all of the functions performed by the other component in addition to its primary functions, and some of the primary functions of each component may be performed entirely by the other component.

Кроме того, понятие "изображение" или "кадр", используемое в данном документе, может обозначать неподвижное изображение видео или движущийся кадр (видео).In addition, the term "image" or "frame" as used herein may refer to a still image of a video or a moving frame (video).

Кроме того, понятие “дискретный отсчет” ("выборка") или "сигнал", используемое в данном документе, означает, в качестве данных, назначенных местоположению дискретизации изображения, данные, которые должны обрабатываться. Например, пиксельные значения для изображения пространственной области и коэффициенты преобразования для области преобразования могут представлять собой выборки. Единица, включающая в себя такие одну или более выборок, может задаваться как блок.In addition, the term “sample” or “signal” used herein means, as the data assigned to the image sampling location, data to be processed. For example, the pixel values for a spatial region image and the transform coefficients for a transform region may be samples. A unit including such one or more samples may be defined as a block.

В дальнейшем в этом документе описываются способ и оборудование кодирования изображений и способ и оборудование декодирования изображений на основе единиц кодирования и единиц преобразования, имеющих древовидную структуру, согласно варианту осуществления, со ссылкой на фиг. 1-19.Hereinafter, this document describes an image encoding method and equipment and an image decoding method and equipment based on coding units and transformation units having a tree structure according to an embodiment with reference to FIG. 1-19.

Фиг. 1 является блок-схемой оборудования 100 декодирования изображений согласно варианту осуществления.Fig. 1 is a block diagram of an image decoding equipment 100 according to an embodiment.

Оборудование 100 декодирования изображений может включать в себя модуль 110 получения потоков битов и декодер 120. Модуль 110 получения потоков битов и декодер 120 могут включать в себя, по меньшей мере, один процессор. Модуль 110 получения потоков битов и декодер 120 могут включать в себя запоминающее устройство, сохраняющее инструкции, которые должны выполняться, по меньшей мере, посредством одного процессора.The image decoding equipment 100 may include a bitstream acquisition unit 110 and a decoder 120. The bitstream acquisition unit 110 and decoder 120 may include at least one processor. The bitstream receiving module 110 and the decoder 120 may include a memory storing instructions to be executed by at least one processor.

Модуль 110 получения потоков битов может принимать поток битов. Поток битов может включать в себя информацию, получающуюся в результате кодирования изображений посредством оборудования 200 кодирования изображений, которое описывается ниже. Поток битов может передаваться из оборудования 200 кодирования изображений. Оборудование 100 декодирования изображений может соединяться с оборудованием 200 кодирования изображений проводным или беспроводным способом, и модуль 110 получения потоков битов может принимать поток битов проводным или беспроводным способом. Модуль 110 получения потоков битов может принимать поток битов из носителя хранения данных, такого как оптические носители, жесткий диск и т.д. Декодер 120 может восстанавливать изображение, на основе информации, полученной из принимаемого потока битов. Декодер 120 может получать синтаксический элемент для восстановления изображения из потока битов. Декодер 120 может восстанавливать изображение, на основе синтаксического элемента.The bitstream receiving module 110 may receive a bitstream. The bitstream may include information resulting from image encoding by image encoding equipment 200, which is described below. The bit stream may be transmitted from the image encoding equipment 200 . The image decoding equipment 100 may be connected to the image encoding equipment 200 in a wired or wireless manner, and the bitstream receiving unit 110 may receive the bitstream in a wired or wireless manner. The bit stream receiving unit 110 may receive a bit stream from a storage medium such as optical media, a hard disk, and so on. Decoder 120 may reconstruct the image based on the information obtained from the received bit stream. Decoder 120 may receive a syntax element for reconstructing an image from the bit stream. Decoder 120 may reconstruct the image based on the syntax element.

При подробном описании работы оборудования 100 декодирования изображений, модуль 110 получения потоков битов может принимать поток битов.With a detailed description of the operation of the image decoding equipment 100, the bitstream obtaining unit 110 may receive a bitstream.

Оборудование 100 декодирования изображений может выполнять операцию получения строки двоичных элементов, соответствующей режиму согласно форме разбиения единицы кодирования, из потока битов. Оборудование 100 декодирования изображений может выполнять операцию определения правила разбиения единицы кодирования. Оборудование 100 декодирования изображений может выполнять операцию разбиения единицы кодирования на множество единиц кодирования, на основе, по меньшей мере, одного из строки двоичных элементов, соответствующей режиму согласно форме разбиения, и правила разбиения. Оборудование 100 декодирования изображений может определять первый диапазон, который представляет собой допустимый диапазон размеров единицы кодирования, согласно отношению высоты к ширине единицы кодирования, чтобы определять правило разбиения. Оборудование 100 декодирования изображений может определять второй диапазон, который представляет собой допустимый диапазон размеров единицы кодирования, согласно режиму согласно форме разбиения единицы кодирования, чтобы определять правило разбиения.The image decoding equipment 100 may perform an operation of obtaining a bin string corresponding to a mode according to a coding unit partition form from a bit stream. The image decoding equipment 100 may perform an operation of determining a splitting rule of a coding unit. The image decoding equipment 100 may perform an operation of splitting a coding unit into a plurality of coding units based on at least one of a bin string corresponding to a mode according to the split shape and a split rule. The image decoding equipment 100 may determine a first range, which is a valid coding unit size range, according to a height-to-width ratio of the coding unit, to determine a splitting rule. The image decoding equipment 100 may determine a second range, which is a valid range of sizes of a coding unit, according to a mode according to a split shape of a coding unit, to determine a split rule.

В дальнейшем в этом документе подробно описывается разбиение единицы кодирования согласно варианту осуществления раскрытия.Hereinafter, this document describes in detail the partitioning of a coding unit according to an embodiment of the disclosure.

Во-первых, один кадр может разбиваться на один или более срезов (слайсов) либо одну или более плиток. Один срез или одна плитка может представлять собой последовательность одной или более наибольших единиц кодирования (единиц дерева кодирования (CTU)). Согласно примеру реализации, один срез включает в себя одну или более плиток, либо один срез может включать в себя одну или более наибольших единиц кодирования. Срез, включающий в себя одну плитку или множество плиток, может определяться в кадре.First, one frame can be divided into one or more slices or one or more tiles. One slice or one tile may be a sequence of one or more largest coding units (coding tree units (CTU)). According to an implementation example, one slice includes one or more tiles, or one slice may include one or more largest coding units. A slice including a single tile or a plurality of tiles may be defined in a frame.

Имеется наибольший блок кодирования (блок дерева кодирования (CTB)) концептуально по сравнению с наибольшей единицей кодирования (CTU). Наибольший блок кодирования (CTB) обозначает блок NxN, включающий в себя NxN выборок (где N является целым числом). Каждый цветовой компонент может разбиваться на один или более наибольших блоков кодирования.There is a largest coding unit (a coding tree block (CTB)) conceptually compared to a largest coding unit (CTU). The largest coding block (CTB) denotes an NxN block including NxN samples (where N is an integer). Each color component may be decomposed into one or more larger coding units.

Когда кадр имеет три массива выборок (массивы выборок для Y-, Cr- и Cb-компонентов), наибольшая единица кодирования (CTU) включает в себя наибольший блок кодирования выборки яркости, два соответствующих наибольших блока кодирования выборок цветности и синтаксические структуры, используемые для того, чтобы кодировать выборку яркости и выборки цветности. Когда кадр представляет собой монохромный кадр, наибольшая единица кодирования включает в себя наибольший блок кодирования монохромной выборки и синтаксические структуры, используемые для того, чтобы кодировать монохромные выборки. Когда кадр представляет собой кадр, кодированный в цветовых плоскостях, разделяемых согласно цветовым компонентам, наибольшая единица кодирования включает в себя синтаксические структуры, используемые для того, чтобы кодировать выборки кадра.When a frame has three sample arrays (sample arrays for Y, Cr, and Cb components), the largest coding unit (CTU) includes the largest luminance sample coding unit, the two corresponding largest chrominance sample coding units, and the syntax structures used to to encode the luma sample and the chrominance sample. When a frame is a monochrome frame, the largest coding unit includes the largest monochrome sample coding unit and the syntax structures used to encode the monochrome samples. When a frame is a frame encoded in color planes separated according to color components, the largest coding unit includes the syntax structures used to encode samples of the frame.

Один наибольший блок кодирования (CTB) может разбиваться на MxN блоков кодирования, включающих в себя MxN выборок (M и N являются целыми числами).One largest coding block (CTB) may be split into MxN coding blocks including MxN samples (M and N are integers).

Когда кадр имеет массивы выборок для Y-, Cr- и Cb-компонентов, единица кодирования (CU) включает в себя блок кодирования выборки яркости, два соответствующих блока кодирования выборок цветности и синтаксические структуры, используемые для того, чтобы кодировать выборку яркости и выборки цветности. Когда кадр представляет собой монохромный кадр, единица кодирования включает в себя блок кодирования монохромной выборки и синтаксические структуры, используемые для того, чтобы кодировать монохромные выборки. Когда кадр представляет собой кадр, кодированный в цветовых плоскостях, разделяемых согласно цветовым компонентам, единица кодирования включает в себя синтаксические структуры, используемые для того, чтобы кодировать выборки кадра.When a frame has arrays of samples for Y, Cr, and Cb components, a coding unit (CU) includes a luminance sample coding block, two corresponding chrominance sample coding blocks, and syntax structures used to encode the luminance sample and the chrominance samples. . When a frame is a monochrome frame, the coding unit includes a monochrome sample coding block and syntax structures used to encode monochrome samples. When a frame is a frame encoded in color planes separated according to color components, the coding unit includes the syntax structures used to encode samples of the frame.

Как описано выше, наибольший блок кодирования и наибольшая единица кодирования концептуально отличаются друг от друга, и блок кодирования и единица кодирования концептуально отличаются друг от друга. Другими словами, (наибольшая) единица кодирования означает структуру данных, включающую в себя (наибольший) блок кодирования, включающий в себя соответствующую выборку, и синтаксическую структуру, соответствующую (наибольшему) блоку кодирования. Тем не менее, поскольку специалисты в данной области техники должны понимать, что (наибольшая) единица кодирования или (наибольший) блок кодирования означает блок предварительно установленного размера, включающий в себя предварительно установленное число выборок, наибольший блок кодирования и наибольшая единица кодирования либо блок кодирования и единица кодирования упоминаются в нижеприведенном описании изобретения без различения, если не описано иное.As described above, the largest coding unit and the largest coding unit are conceptually different from each other, and the coding unit and the coding unit are conceptually different from each other. In other words, the (largest) coding unit means a data structure including a (largest) coding unit including a corresponding sample and a syntax structure corresponding to the (largest) coding unit. However, as those skilled in the art would understand that a (largest) coding unit or (largest) coding unit means a predetermined size block including a predetermined number of samples, a largest coding unit, and a largest coding unit, or a coding block and the coding unit is referred to in the following description of the invention without distinction, unless otherwise stated.

Изображение может разбиваться на наибольшие единицы кодирования (CTU). Размер каждой наибольшей единицы кодирования может определяться на основе информации, полученной из потока битов. Форма каждой наибольшей единицы кодирования может представлять собой квадратную форму идентичного размера. Тем не менее, варианты осуществления раскрытия не ограничены этим.The picture may be split into largest coding units (CTU). The size of each largest coding unit may be determined based on information obtained from the bit stream. The shape of each largest coding unit may be an identically sized square shape. However, embodiments of the disclosure are not limited to this.

Например, информация относительно максимального размера блока кодирования яркости может получаться из потока битов. Например, максимальный размер блока кодирования яркости, указываемый посредством информации относительно максимального размера блока кодирования яркости, может составлять одно из 4×4, 8×8, 16×16, 32×32, 64×64, 128×128 и 256×256.For example, information regarding the maximum luminance coding block size may be obtained from the bitstream. For example, the maximum luminance coding block size indicated by information regarding the maximum luminance coding block size may be one of 4x4, 8x8, 16x16, 32x32, 64x64, 128x128, and 256x256.

Например, информация относительно разности размеров блоков яркости и максимального размера блока кодирования яркости, который может разбиваться на два, может получаться из потока битов. Информация относительно разности размеров блоков яркости может означать разность размеров между наибольшей единицей кодирования яркости и наибольшим блоком кодирования яркости, который может разбиваться на два. Соответственно, когда информация относительно максимального размера блока кодирования яркости, который может разбиваться на два, и информация относительно разности размеров блоков яркости, полученная из потока битов, комбинируются друг с другом, размер наибольшей единицы кодирования яркости может определяться. Размер наибольшей единицы кодирования цветности может определяться посредством использования размера наибольшей единицы кодирования яркости. Например, когда Y:Cb:Cr-соотношение составляет 4:2:0 согласно цветовому формату, размер блока цветности может составлять половину от размера блока яркости, и размер наибольшей единицы кодирования цветности может составлять половину от размера наибольшей единицы кодирования яркости.For example, information regarding the size difference of the luminance blocks and the maximum size of the luminance coding block that can be split into two may be obtained from the bitstream. The information regarding the size difference of luminance blocks may mean the difference in sizes between the largest luminance coding unit and the largest luminance coding block that can be split into two. Accordingly, when information regarding a maximum luminance coding block size that can be split into two and information regarding a luminance block size difference obtained from a bitstream are combined with each other, a size of the largest luminance coding unit can be determined. The size of the largest chroma coding unit may be determined by using the size of the largest luminance coding unit. For example, when the Y:Cb:Cr ratio is 4:2:0 according to the color format, the chrominance block size may be half of the luminance block size, and the size of the largest chroma coding unit may be half of the size of the largest luminance coding unit.

Согласно варианту осуществления, поскольку информация относительно максимального размера блока кодирования яркости, который является двоично разбиваемым, получается из потока битов, максимальный размер блока кодирования яркости, который является двоично разбиваемым, может переменно определяться. Напротив, максимальный размер блока кодирования яркости, который является троично разбиваемым, может быть фиксированным. Например, максимальный размер блока кодирования яркости, который является троично разбиваемым в I-кадре, может составлять 32×32, и максимальный размер блока кодирования яркости, который является троично разбиваемым в P-кадре или B-кадре, может составлять 64×64.According to an embodiment, since information regarding a maximum size of a luminance coding block that is binary-separable is obtained from a bit stream, a maximum size of a luminance coding block that is binary-separable can be variably determined. In contrast, the maximum size of a luma coding block that is tripartite-separable may be fixed. For example, the maximum size of a luma coding block that is tri-separable in an I-frame may be 32×32, and the maximum size of a luminance coding block that is tri-separable in a P-frame or a B-frame may be 64×64.

Наибольшая единица кодирования может иерархически разбиваться на единицы кодирования на основе информации режима согласно форме разбиения, полученной из потока битов. По меньшей мере одно из информации, указывающей то, выполняется или нет квадратическое разбиение, информации, указывающей то, выполняется или нет мультиразбиение, информации направления разбиения и информации типа разбиения может получаться в качестве информации режима согласно форме разбиения из потока битов.The largest coding unit may be hierarchically partitioned into coding units based on the mode information according to the partition form obtained from the bit stream. At least one of information indicating whether or not quadratic splitting is performed, information indicating whether or not multi-partitioning is performed, splitting direction information, and splitting type information can be obtained as mode information according to the splitting form from the bit stream.

Например, информация, указывающая то, выполняется или нет квадратическое разбиение, может указывать то, квадратически разбивается текущая единица кодирования (QUAD_SPLIT) или нет.For example, information indicating whether or not quadratic splitting is performed may indicate whether the current coding unit (QUAD_SPLIT) is quadratically split or not.

Когда текущая единица кодирования не разбивается квадратически, информация, указывающая то, выполняется или нет мультиразбиение, может указывать то, не разбивается ли более текущая единица кодирования (NO_SPLIT) либо двоично/троично разбивается.When the current coding unit is not quadratically split, information indicating whether or not multi-splitting is performed may indicate whether the current coding unit is no longer split (NO_SPLIT) or binary/ternary split.

Когда текущая единица кодирования двоично разбивается или троично разбивается, информация направления разбиения указывает то, что текущая единица кодирования разбивается в одном из горизонтального направления и вертикального направления.When the current coding unit is binary split or ternary split, the split direction information indicates that the current coding unit is split in one of the horizontal direction and the vertical direction.

Когда текущая единица кодирования разбивается в горизонтальном направлении или в вертикальном направлении, информация типа разбиения указывает то, что текущая единица кодирования двоично разбивается или троично разбивается.When the current coding unit is split in the horizontal direction or in the vertical direction, the split type information indicates that the current coding unit is binary split or ternary split.

Режим разбиения текущей единицы кодирования может определяться согласно информации направления разбиения и информации типа разбиения. Режим разбиения, когда текущая единица кодирования двоично разбивается в горизонтальном направлении, может определяться в качестве режима (SPLIT_BT_HOR) двоичного горизонтального разбиения, режим разбиения, когда текущая единица кодирования троично разбивается в горизонтальном направлении, может определяться в качестве режима (SPLIT_TT_HOR) троичного горизонтального разбиения, режим разбиения, когда текущая единица кодирования двоично разбивается в вертикальном направлении, может определяться в качестве режима (SPLIT_BT_VER) двоичного вертикального разбиения, и режим разбиения, когда текущая единица кодирования троично разбивается в вертикальном направлении, может определяться в качестве режима (SPLIT_TT_VER) троичного вертикального разбиения.The split mode of the current coding unit may be determined according to split direction information and split type information. The split mode when the current coding unit is binary split in the horizontal direction may be determined as the binary horizontal split mode (SPLIT_BT_HOR), the split mode when the current coding unit is triple split in the horizontal direction may be determined as the ternary horizontal split mode (SPLIT_TT_HOR), a split mode when the current coding unit is binary split in the vertical direction may be determined as a binary vertical split mode (SPLIT_BT_VER), and a split mode when the current coding unit is triple split in the vertical direction may be determined as a ternary vertical split mode (SPLIT_TT_VER) .

Оборудование 100 декодирования изображений может получать, из потока битов, информацию режима согласно форме разбиения из одной строки двоичных элементов (бинов). Форма потока битов, принимаемого посредством оборудования 100 декодирования изображений, может включать в себя двоичный код фиксированной длины, унарный код, усеченный унарный код, предварительно определенный двоичный код и т.п. Строка двоичных элементов представляет собой информацию в двоичном числе. Строка двоичных элементов может включать в себя по меньшей мере один бит. Оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения, соответствующую строке двоичных элементов, на основе правила разбиения. Оборудование 100 декодирования изображений может определять то, следует или нет квадратически разбивать единицу кодирования, то, следует или нет не разбивать единицу кодирования, направление разбиения и тип разбиения, на основе одной строки двоичных элементов.The image decoding equipment 100 can obtain, from the bit stream, mode information according to a split form from one line of bins. The form of the bit stream received by the image decoding equipment 100 may include a fixed length binary code, a unary code, a truncated unary code, a predetermined binary code, and the like. A string of binary elements represents information in a binary number. The bin string may include at least one bit. The image decoding equipment 100 can obtain mode information according to the split shape corresponding to the bin string based on the split rule. The image decoding equipment 100 can determine whether or not to quadratically split a coding unit, whether or not to not split a coding unit, a split direction, and a split type, based on a single bin string.

Единица кодирования может быть меньше или идентичной наибольшей единице кодирования. Например, поскольку наибольшая единица кодирования представляет собой единицу кодирования, имеющую максимальный размер, наибольшая единица кодирования представляет собой одну из единиц кодирования. Когда информация режима согласно форме разбиения относительно наибольшей единицы кодирования указывает то, что разбиение не выполняется, единица кодирования, определенная в наибольшей единице кодирования, имеет размер, идентичный размеру наибольшей единицы кодирования. Когда информация режима согласно форме разбиения относительно наибольшей единицы кодирования указывает то, что разбиение выполняется, наибольшая единица кодирования может разбиваться на единицы кодирования. Кроме того, когда информация режима согласно форме разбиения относительно единицы кодирования указывает то, что разбиение выполняется, единица кодирования может разбиваться на меньшие единицы кодирования. Тем не менее, разбиение изображения не ограничено этим, и наибольшая единица кодирования и единица кодирования могут не отличаться. В дальнейшем подробно описывается разбиение единицы кодирования со ссылкой на фиг. 3-16.The coding unit may be less than or identical to the largest coding unit. For example, since the largest coding unit is a coding unit having a maximum size, the largest coding unit is one of the coding units. When the mode information according to the split form with respect to the largest coding unit indicates that splitting is not performed, the coding unit specified in the largest coding unit has the same size as the size of the largest coding unit. When the mode information according to the split shape with respect to the largest coding unit indicates that splitting is performed, the largest coding unit may be split into coding units. In addition, when the mode information according to the split form with respect to a coding unit indicates that splitting is performed, the coding unit can be split into smaller coding units. However, image splitting is not limited to this, and the largest coding unit and the coding unit need not be different. In the following, partitioning of a coding unit will be described in detail with reference to FIG. 3-16.

Кроме того, один или более блоков прогнозирования для прогнозирования могут определяться из единицы кодирования. Блок прогнозирования может быть идентичным или меньшим единицы кодирования. Кроме того, один или более блоков преобразования для преобразования могут определяться из единицы кодирования. Блок преобразования может быть равным или меньше единицы кодирования.In addition, one or more prediction blocks for prediction may be determined from a coding unit. The prediction block may be the same as or smaller than the coding unit. In addition, one or more transform blocks for transform may be determined from a coding unit. The transform block may be equal to or less than the coding unit.

Формы и размеры блока преобразования и блока прогнозирования могут не быть связаны друг с другом.The shapes and sizes of the transformation block and the prediction block may not be related to each other.

В другом варианте осуществления, прогнозирование может выполняться посредством использования единицы кодирования в качестве предиктора. Кроме того, преобразование может выполняться посредством использования единицы кодирования в качестве блока преобразования.In another embodiment, prediction may be performed by using the coding unit as a predictor. In addition, the transformation can be performed by using the coding unit as the transformation block.

В дальнейшем подробно описывается разбиение единицы кодирования со ссылкой на фиг. 3-16. Текущий блок и соседний блок согласно настоящему раскрытию могут указывать одно из наибольшей единицы кодирования, единицы кодирования, блока прогнозирования и блока преобразования. Кроме того, текущий блок текущей единицы кодирования представляет собой блок, который в данный момент декодируется или кодируется, либо блок, который в данный момент разбивается. Соседний блок может представлять собой блок, восстановленный перед текущим блоком. Соседний блок может быть смежным с текущим блоком в пространственном или временном отношении. Соседний блок может быть расположен в одном из местоположений снизу слева, слева, сверху слева, сверху, сверху справа, справа, снизу справа относительно текущего блока.In the following, partitioning of a coding unit will be described in detail with reference to FIG. 3-16. The current block and the adjacent block according to the present disclosure may indicate one of the largest coding unit, coding unit, prediction block, and transform block. In addition, the current block of the current coding unit is a block that is currently being decoded or encoded, or a block that is currently being split. The adjacent block may be a block restored before the current block. An adjacent block may be spatially or temporally adjacent to the current block. The adjacent block can be located in one of the locations bottom left, left, top left, top, top right, right, bottom right relative to the current block.

Фиг. 3 иллюстрирует процесс, выполняемый посредством оборудования 100 декодирования изображений, для определения по меньшей мере одной единицы кодирования посредством разбиения текущей единицы кодирования, согласно варианту осуществления.Fig. 3 illustrates a process performed by the image decoding equipment 100 to determine at least one coding unit by splitting the current coding unit, according to an embodiment.

Форма блока может включать в себя 4Nx4N, 4Nx2N, 2Nx4N, 4NxN, Nx4N, 32NxN, Nx32N, 16NxN, Nx16N, 8NxN или Nx8N. Здесь, N может быть положительным целым числом. Информация формы блоков представляет собой информацию, указывающую, по меньшей мере, одно из формы, направления, отношения ширины и высоты или размера единицы кодирования.The block shape may include 4Nx4N, 4Nx2N, 2Nx4N, 4NxN, Nx4N, 32NxN, Nx32N, 16NxN, Nx16N, 8NxN, or Nx8N. Here, N can be a positive integer. The block shape information is information indicating at least one of a shape, a direction, a width-to-height ratio, or a size of a coding unit.

Форма единицы кодирования может включать в себя квадратную и неквадратную. Когда длины ширины и высоты единицы кодирования являются идентичными (т.е. когда форма блока единицы кодирования представляет собой 4Nx4N), оборудование 100 декодирования изображений может определять информацию формы блоков единицы кодирования как квадратную. Оборудование 100 декодирования изображений может определять форму единицы кодирования как неквадратную.The shape of the coding unit may include square and non-square. When the width and height lengths of the coding unit are identical (ie, when the shape of the coding unit block is 4Nx4N), the image decoding equipment 100 may determine the shape information of the coding unit blocks as square. The image decoding equipment 100 may determine the shape of the coding unit to be non-square.

Когда ширина и высота единицы кодирования отличаются друг от друга (т.е. когда форма блока единицы кодирования представляет собой 4Nx2N, 2Nx4N, 4NxN, Nx4N, 32NxN, Nx32N, 16NxN, Nx16N, 8NxN или Nx8N), оборудование 100 декодирования изображений может определять информацию формы блоков единицы кодирования в качестве неквадратной формы. Когда форма единицы кодирования является неквадратной, оборудование 100 декодирования изображений может определять отношение ширины и высоты из информации формы блоков единицы кодирования как составляющее, по меньшей мере, одно из 1:2, 2:1, 1:4, 4:1, 1:8, 8:1, 1:16, 16:1, 1:32 и 32:1. Кроме того, оборудование 100 декодирования изображений может определять то, протягивается единица кодирования в горизонтальном направлении или в вертикальном направлении, на основе длины ширины и длины высоты единицы кодирования. Кроме того, оборудование 100 декодирования изображений может определять размер единицы кодирования, на основе по меньшей мере одного из длины ширины, длины высоты или площади единицы кодирования.When the width and height of the coding unit are different from each other (i.e., when the shape of the coding unit block is 4Nx2N, 2Nx4N, 4NxN, Nx4N, 32NxN, Nx32N, 16NxN, Nx16N, 8NxN, or Nx8N), the image decoding equipment 100 can determine information the shape of the coding unit blocks as a non-square shape. When the shape of the coding unit is non-square, the image decoding equipment 100 can determine the width-to-height ratio from the shape information of the coding unit blocks as being at least one of 1:2, 2:1, 1:4, 4:1, 1: 8, 8:1, 1:16, 16:1, 1:32 and 32:1. In addition, the image decoding equipment 100 can determine whether the coding unit is stretched in the horizontal direction or in the vertical direction based on the width length and the height length of the coding unit. In addition, the image decoding equipment 100 can determine the size of the coding unit based on at least one of the length of the width, the length of the height, or the area of the coding unit.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять форму единицы кодирования посредством использования информации формы блоков и может определять способ разбиения единицы кодирования посредством использования информации режима согласно форме разбиения. Таким образом, способ разбиения единицы кодирования, указываемый посредством информации режима согласно форме разбиения, может определяться на основе формы блока, указываемой посредством информации формы блоков, используемой посредством оборудования 100 декодирования изображений.According to an embodiment, the image decoding equipment 100 can determine the shape of the coding unit by using the block shape information, and can determine the partitioning method of the coding unit by using the mode information according to the split shape. Thus, the splitting method of a coding unit indicated by the mode information according to the split shape can be determined based on the block shape indicated by the block shape information used by the image decoding equipment 100 .

Оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения из потока битов. Тем не менее, вариант осуществления не ограничен этим, и оборудование 100 декодирования изображений и оборудование 200 кодирования изображений могут определять предварительно согласованную информацию режима согласно форме разбиения, на основе информации формы блоков. Оборудование 100 декодирования изображений может определять предварительно согласованную информацию режима согласно форме разбиения относительно наибольшей единицы кодирования или минимальной единицы кодирования. Например, оборудование 100 декодирования изображений может определять информацию режима согласно форме разбиения относительно наибольшей единицы кодирования в качестве квадратического разбиения. Кроме того, оборудование 100 декодирования изображений может определять информацию режима согласно форме разбиения относительно наименьшей единицы кодирования в качестве "не выполнять разбиение". Подробно, оборудование 100 декодирования изображений может определять размер наибольшей единицы кодирования как составляющий 256×256. Оборудование 100 декодирования изображений может определять предварительно согласованную информацию режима согласно форме разбиения в качестве квадратического разбиения. Квадратическое разбиение представляет собой режим согласно форме разбиения, в котором ширина и высота единицы кодирования делятся пополам. Оборудование 100 декодирования изображений может получать единицу кодирования размера 128×128 из наибольшей единицы кодирования размера 256×256, на основе информации режима согласно форме разбиения. Кроме того, оборудование 100 декодирования изображений может определять размер наименьшей единицы кодирования как составляющий 4×4. Оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения, указывающую "не выполнять разбиение" относительно наименьшей единицы кодирования.The image decoding equipment 100 can obtain mode information according to the split shape from the bit stream. However, the embodiment is not limited to this, and the image decoding equipment 100 and the image encoding equipment 200 can determine the pre-negotiated mode information according to the partition shape based on the block shape information. The image decoding equipment 100 may determine the pre-negotiated mode information according to the partition shape with respect to the largest coding unit or the minimum coding unit. For example, the image decoding equipment 100 may determine the mode information according to the split shape with respect to the largest coding unit as the quadratic split. In addition, the image decoding equipment 100 may determine the mode information according to the split form with respect to the smallest coding unit as "do not split". In detail, the image decoding equipment 100 may determine the size of the largest coding unit to be 256×256. The image decoding equipment 100 may determine the pre-negotiated mode information according to the shape of the partition as a quadratic partition. Square splitting is a mode according to the splitting shape in which the width and height of a coding unit are divided in half. The image decoding equipment 100 can obtain a 128×128 coding unit from a 256×256 largest coding unit based on the mode information according to the split shape. In addition, the image decoding equipment 100 may determine the size of the smallest coding unit to be 4×4. The image decoding equipment 100 can obtain mode information according to a split shape indicating "do not split" with respect to the smallest coding unit.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать информацию формы блоков, указывающую то, что текущая единица кодирования имеет квадратную форму. Например, оборудование 100 декодирования изображений может определять то, следует или нет не разбивать квадратную единицу кодирования, то, следует или нет вертикально разбивать квадратную единицу кодирования, то, следует или нет горизонтально разбивать квадратную единицу кодирования, либо то, следует или нет разбивать квадратную единицу кодирования на четыре единицы кодирования, на основе информации режима согласно форме разбиения. Ссылаясь на фиг. 3, когда информация формы блоков текущей единицы 300 кодирования указывает квадратную форму, декодер 120 может не разбивать единицу 310a кодирования, имеющую размер, идентичный размеру текущей единицы 300 кодирования, на основе информации режима согласно форме разбиения, указывающей необходимость не выполнять разбиение, или может определять единицы 310b, 310c, 310d, 310e или 310f кодирования, разбитые на основе информации режима согласно форме разбиения, указывающей предварительно установленный способ разбиения.According to an embodiment, the image decoding equipment 100 may use block shape information indicating that the current coding unit is square. For example, the image decoding equipment 100 may determine whether or not to split a square coding unit, whether or not to vertically split a square coding unit, whether or not to horizontally split a square coding unit, or whether or not to split a square unit. coding into four coding units, based on the mode information according to the split shape. Referring to FIG. 3, when the block shape information of the current coding unit 300 indicates a square shape, the decoder 120 may not split the coding unit 310a having the same size as the current coding unit 300 based on the mode information according to the split shape indicating the need not to split, or may determine coding units 310b, 310c, 310d, 310e, or 310f partitioned based on mode information according to a partitioning form indicating a preset partitioning method.

Ссылаясь на фиг. 3, согласно варианту осуществления, оборудование 100 декодирования изображений может определять две единицы 310b кодирования, полученные посредством разбиения текущей единицы 300 кодирования в вертикальном направлении, на основе информации режима согласно форме разбиения, указывающей необходимость выполнять разбиение в вертикальном направлении. Оборудование 100 декодирования изображений может определять две единицы 310c кодирования, полученные посредством разбиения текущей единицы 300 кодирования в горизонтальном направлении, на основе информации режима согласно форме разбиения, указывающей необходимость выполнять разбиение в горизонтальном направлении. Оборудование 100 декодирования изображений может определять четыре единицы 310d кодирования, полученные посредством разбиения текущей единицы 300 кодирования в вертикальном и горизонтальном направлениях, на основе информации формы разбиения, указывающей необходимость выполнять разбиение в вертикальном и горизонтальном направлениях. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять три единицы 310e кодирования, полученные посредством разбиения текущей единицы 300 кодирования в вертикальном направлении, на основе информации режима согласно форме разбиения, указывающей необходимость выполнять троичное разбиение в вертикальном направлении. Оборудование 100 декодирования изображений может определять три единицы 310f кодирования, полученные посредством разбиения текущей единицы 300 кодирования в горизонтальном направлении, на основе информации режима согласно форме разбиения, указывающей необходимость выполнять троичное разбиение в горизонтальном направлении. Тем не менее, способы разбиения квадратной единицы кодирования не ограничены вышеописанными способами, и информация режима согласно форме разбиения может указывать различные способы. Ниже подробно описываются предварительно установленные способы разбиения для разбиения квадратной единицы кодирования относительно различных вариантов осуществления.Referring to FIG. 3, according to the embodiment, the image decoding equipment 100 can determine two coding units 310b obtained by splitting the current coding unit 300 in the vertical direction based on mode information according to the split shape indicating whether to perform splitting in the vertical direction. The image decoding equipment 100 can determine two coding units 310c obtained by splitting the current coding unit 300 in the horizontal direction based on the mode information according to the split shape indicating the need to split in the horizontal direction. The image decoding equipment 100 can determine the four coding units 310d obtained by splitting the current coding unit 300 in the vertical and horizontal directions based on the split shape information indicating the need to split in the vertical and horizontal directions. According to an embodiment, the image decoding equipment 100 can determine the three coding units 310e obtained by splitting the current coding unit 300 in the vertical direction based on mode information according to the split shape indicating the need to perform ternary split in the vertical direction. The image decoding equipment 100 can determine three coding units 310f obtained by splitting the current coding unit 300 in the horizontal direction based on mode information according to the split shape indicating whether to perform ternary splitting in the horizontal direction. However, the splitting methods of the square coding unit are not limited to the above-described methods, and the mode information according to the splitting shape may indicate various methods. The following describes in detail the preset splitting methods for splitting a square coding unit with respect to various embodiments.

Фиг. 4 иллюстрирует процесс, выполняемый посредством оборудования 100 декодирования изображений, для определения по меньшей мере одной единицы кодирования посредством разбиения неквадратной единицы кодирования, согласно варианту осуществления.Fig. 4 illustrates a process performed by the image decoding equipment 100 to determine at least one coding unit by splitting a non-square coding unit, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать информацию формы блоков, указывающую то, что текущая единица кодирования имеет неквадратную форму. Оборудование 100 декодирования изображений может определять то, следует или нет не разбивать неквадратную текущую единицу кодирования, либо то, следует или нет разбивать неквадратную текущую единицу кодирования посредством использования предварительно установленного способа разбиения, на основе информации режима согласно форме разбиения. Ссылаясь на фиг. 4, когда информация формы блоков текущей единицы 400 или 450 кодирования указывает неквадратную форму, оборудование 100 декодирования изображений может определять единицу 410 или 460 кодирования, имеющую размер, идентичный размеру текущей единицы 400 или 450 кодирования, на основе информации режима согласно форме разбиения, указывающей необходимость не выполнять разбиение, или может определять единицы 420a и 420b, 430a-430c, 470a и 470b или 480a-480c кодирования, разбитые на основе информации режима согласно форме разбиения, указывающей предварительно установленный способ разбиения. Ниже подробно описываются предварительно установленные способы разбиения для разбиения неквадратной единицы кодирования относительно различных вариантов осуществления.According to an embodiment, the image decoding equipment 100 may use block shape information indicating that the current coding unit is non-square. The image decoding equipment 100 can determine whether or not to split the non-square current coding unit, or whether or not to split the non-square current coding unit by using a preset splitting method, based on the mode information according to the splitting shape. Referring to FIG. 4, when the shape information of the blocks of the current coding unit 400 or 450 indicates a non-square shape, the image decoding equipment 100 may determine the coding unit 410 or 460 having the same size as the current coding unit 400 or 450, based on the mode information according to the split shape indicating the need not perform splitting, or may determine coding units 420a and 420b, 430a-430c, 470a and 470b, or 480a-480c split based on mode information according to a splitting form indicating a preset splitting method. The following describes in detail the preset splitting methods for splitting a non-square coding unit with respect to various embodiments.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять способ разбиения единицы кодирования посредством использования информации режима согласно форме разбиения, и, в этом случае, информация режима согласно форме разбиения может указывать число одной или более единиц кодирования, сформированных посредством разбиения единицы кодирования. Ссылаясь на фиг. 4, когда информация режима согласно форме разбиения указывает необходимость разбивать текущую единицу 400 или 450 кодирования на две единицы кодирования, оборудование 100 декодирования изображений может определять две единицы 420a и 420b или 470a и 470b кодирования, включенные в текущую единицу 400 или 450 кодирования посредством разбиения текущей единицы 400 или 450 кодирования на основе информации режима согласно форме разбиения.According to an embodiment, the image decoding equipment 100 may determine the splitting method of a coding unit by using the mode information according to the split shape, and in this case, the mode information according to the split shape can indicate the number of one or more coding units generated by splitting the coding unit. Referring to FIG. 4, when the mode information according to the split form indicates the need to split the current coding unit 400 or 450 into two coding units, the image decoding equipment 100 may determine the two coding units 420a and 420b or 470a and 470b included in the current coding unit 400 or 450 by splitting the current coding units 400 or 450 based on the mode information according to the split shape.

Согласно варианту осуществления, когда оборудование 100 декодирования изображений разбивает неквадратную текущую единицу 400 или 450 кодирования на основе информации режима согласно форме разбиения, оборудование 100 декодирования изображений может учитывать местоположение длинной стороны неквадратной текущей единицы 400 или 450 кодирования для того, чтобы разбивать текущую единицу кодирования. Например, оборудование 100 декодирования изображений может определять множество единиц кодирования посредством разбиения текущей единицы 400 или 450 кодирования в направлении разбиения длинной стороны текущей единицы 400 или 450 кодирования, с учетом формы текущей единицы 400 или 450 кодирования.According to an embodiment, when the image decoding equipment 100 splits the non-square current coding unit 400 or 450 based on the mode information according to the split shape, the image decoding equipment 100 can consider the location of the long side of the non-square current coding unit 400 or 450 in order to split the current coding unit. For example, the image decoding equipment 100 may determine a plurality of coding units by splitting the current coding unit 400 or 450 in the split direction of the long side of the current coding unit 400 or 450, considering the shape of the current coding unit 400 or 450.

Согласно варианту осуществления, когда информация режима согласно форме разбиения указывает необходимость разбивать (троично разбивать) единицу кодирования на нечетное число блоков, оборудование 100 декодирования изображений может определять нечетное число единиц кодирования, включенных в текущую единицу 400 или 450 кодирования. Например, когда информация режима согласно форме разбиения указывает необходимость разбивать текущую единицу 400 или 450 кодирования на три единицы кодирования, оборудование 100 декодирования изображений может разбивать текущую единицу 400 или 450 кодирования на три единицы 430a, 430b и 430c или 480a, 480b и 480c кодирования.According to an embodiment, when the mode information according to the split shape indicates a need to split (triple split) a coding unit into an odd number of blocks, the image decoding equipment 100 may determine an odd number of coding units included in the current coding unit 400 or 450. For example, when the mode information according to the split form indicates the need to split the current coding unit 400 or 450 into three coding units, the image decoding equipment 100 may split the current coding unit 400 or 450 into three coding units 430a, 430b, and 430c or 480a, 480b, and 480c.

Согласно варианту осуществления, отношение ширины и высоты текущей единицы 400 или 450 кодирования может составлять 4:1 или 1:4. Когда отношение ширины и высоты составляет 4:1, информация формы блоков может указывать горизонтальное направление, поскольку длина ширины превышает длину высоты. Когда отношение ширины и высоты составляет 1:4, информация формы блоков может указывать вертикальное направление, поскольку длина ширины меньше длины высоты. Оборудование 100 декодирования изображений может определять необходимость разбивать текущую единицу кодирования на нечетное число блоков, на основе информации режима согласно форме разбиения. Кроме того, оборудование 100 декодирования изображений может определять направление разбиения текущей единицы 400 или 450 кодирования, на основе информации формы блоков текущей единицы 400 или 450 кодирования. Например, когда текущая единица 400 кодирования протягивается в вертикальном направлении, оборудование 100 декодирования изображений может определять единицы 430a, 430b и 430c кодирования посредством разбиения текущей единицы 400 кодирования в горизонтальном направлении. Кроме того, когда текущая единица 450 кодирования находится в горизонтальном направлении, оборудование 100 декодирования изображений может определять единицы 480a, 480b и 480c кодирования посредством разбиения текущей единицы 450 кодирования в вертикальном направлении.According to an embodiment, the width to height ratio of the current coding unit 400 or 450 may be 4:1 or 1:4. When the width-to-height ratio is 4:1, the block shape information may indicate a horizontal direction because the length of the width is longer than the length of the height. When the width-to-height ratio is 1:4, the block shape information may indicate a vertical direction because the width length is shorter than the height length. The image decoding equipment 100 may determine whether to split the current coding unit into an odd number of blocks based on the mode information according to the split shape. In addition, the image decoding equipment 100 can determine the splitting direction of the current coding unit 400 or 450 based on the block shape information of the current coding unit 400 or 450. For example, when the current coding unit 400 is stretched in the vertical direction, the image decoding equipment 100 may determine the coding units 430a, 430b, and 430c by splitting the current coding unit 400 in the horizontal direction. In addition, when the current coding unit 450 is in the horizontal direction, the image decoding equipment 100 can determine the coding units 480a, 480b, and 480c by splitting the current coding unit 450 in the vertical direction.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять нечетное число единиц кодирования, включенных в текущую единицу 400 или 450 кодирования, и не все определенные единицы кодирования могут иметь идентичный размер. Например, предварительно установленная единица 430b или 480b кодирования из числа определенного нечетного числа единиц 430a, 430b и 430c или 480a, 480b и 480c кодирования может иметь размер, отличающийся от размера других единиц 430a и 430c или 480a и 480c кодирования. Таким образом, единицы кодирования, которые могут определяться посредством разбиения текущей единицы 400 или 450 кодирования, могут иметь несколько размеров, и, в некоторых случаях, все из нечетного числа единиц 430a, 430b и 430c или 480a, 480b и 480c кодирования могут иметь различные размеры.According to an embodiment, the image decoding equipment 100 may determine an odd number of coding units included in the current coding unit 400 or 450, and not all of the determined coding units may be of the same size. For example, a preset coding unit 430b or 480b of a certain odd number of coding units 430a, 430b and 430c or 480a, 480b and 480c may have a size different from that of other coding units 430a and 430c or 480a and 480c. Thus, the coding units that may be determined by splitting the current coding unit 400 or 450 may have multiple sizes, and, in some cases, an odd number of coding units 430a, 430b, and 430c or 480a, 480b, and 480c may all have different sizes. .

Согласно варианту осуществления, когда информация режима согласно форме разбиения указывает необходимость разбивать единицу кодирования на нечетное число блоков, оборудование 100 декодирования изображений может определять нечетное число единиц кодирования, включенных в текущую единицу 400 или 450 кодирования, и кроме того, может налагать предварительно установленное ограничение, по меньшей мере, на одну единицу кодирования из нечетного числа единиц кодирования, сформированных посредством разбиения текущей единицы 400 или 450 кодирования. Ссылаясь на фиг. 4, оборудование 100 декодирования изображений может задавать процесс декодирования относительно единицы 430b или 480b кодирования, расположенной в центре из трех единиц 430a, 430b и 430c или 480a, 480b и 480c кодирования, сформированных по мере того, как текущая единица 400 или 450 разбивается таким образом, что она отличается от других единиц 430a и 430c или 480a и 480c кодирования. Например, оборудование 100 декодирования изображений может ограничивать единицу 430b или 480b кодирования в центральном местоположении таким образом, что она более не разбивается или разбивается только предварительно установленное число раз, в отличие от других единиц 430a и 430c или 480a и 480c кодирования.According to an embodiment, when the mode information according to the split shape indicates the need to split a coding unit into an odd number of blocks, the image decoding equipment 100 may determine an odd number of coding units included in the current coding unit 400 or 450, and furthermore, may impose a preset limit, by at least one coding unit from an odd number of coding units generated by splitting the current coding unit 400 or 450. Referring to FIG. 4, the image decoding equipment 100 may specify a decoding process with respect to the coding unit 430b or 480b located in the center of the three coding units 430a, 430b and 430c or 480a, 480b and 480c generated as the current 400 or 450 is split in this way. that it is different from other coding units 430a and 430c or 480a and 480c. For example, the image decoding equipment 100 may restrict the coding unit 430b or 480b at the central location such that it is no longer split or only splits a predetermined number of times, unlike other coding units 430a and 430c or 480a and 480c.

Фиг. 5 иллюстрирует процесс, выполняемый посредством оборудования 100 декодирования изображений, для разбиения единицы кодирования на основе, по меньшей мере, одного из информации формы блоков и информации режима согласно форме разбиения, согласно варианту осуществления.Fig. 5 illustrates a process performed by the image decoding equipment 100 for splitting a coding unit based on at least one of block shape information and mode information according to the split shape, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять необходимость разбивать или не разбивать квадратную первую единицу 500 кодирования на единицы кодирования, на основе, по меньшей мере, одного из информации формы блоков и информации режима согласно форме разбиения. Согласно варианту осуществления, когда информация режима согласно форме разбиения указывает необходимость разбивать первую единицу 500 кодирования в горизонтальном направлении, оборудование 100 декодирования изображений может определять вторую единицу 510 кодирования посредством разбиения первой единицы 500 кодирования в горизонтальном направлении. Первая единица кодирования, вторая единица кодирования и третья единица кодирования, используемые согласно варианту осуществления, представляют собой термины, используемые для того, чтобы понимать взаимосвязь до и после разбиения единицы кодирования. Например, вторая единица кодирования может определяться посредством разбиения первой единицы кодирования, и третья единица кодирования может определяться посредством разбиения второй единицы кодирования. Следует понимать, что взаимосвязь первой единицы кодирования, второй единицы кодирования и третьей единицы кодирования соответствует вышеприведенным описаниям.According to an embodiment, the image decoding equipment 100 can determine whether or not to split the square first coding unit 500 into coding units based on at least one of block shape information and mode information according to the split shape. According to an embodiment, when the mode information according to the split shape indicates the need to split the first coding unit 500 in the horizontal direction, the image decoding equipment 100 can determine the second coding unit 510 by splitting the first coding unit 500 in the horizontal direction. The first coding unit, the second coding unit, and the third coding unit used according to the embodiment are terms used to understand the relationship before and after splitting the coding unit. For example, the second coding unit may be determined by splitting the first coding unit, and the third coding unit may be determined by splitting the second coding unit. It should be understood that the relationship of the first coding unit, the second coding unit, and the third coding unit is as described above.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять необходимость разбивать или не разбивать определенную вторую единицу 510 кодирования на единицы кодирования, на основе информации режима согласно форме разбиения. Ссылаясь на фиг. 5, оборудование 100 декодирования изображений может разбивать неквадратную вторую единицу 510 кодирования, которая определяется посредством разбиения первой единицы 500 кодирования, на одну или более третьих единиц 520a, 520b, 520c и 520d кодирования на основе, по меньшей мере, одной из информации режима согласно форме разбиения и информации режима согласно форме разбиения, либо может не разбивать неквадратную вторую единицу 510 кодирования. Оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения и может получать множество вторых единиц кодирования различной формы (например, 510) посредством разбиения первой единицы 500 кодирования, на основе полученной информации режима согласно форме разбиения, и вторая единица 510 кодирования может разбиваться посредством использования способа разбиения первой единицы 500 кодирования на основе информации режима согласно форме разбиения. Согласно варианту осуществления, когда первая единица 500 кодирования разбивается на вторые единицы 510 кодирования на основе информации режима согласно форме разбиения первой единицы 500 кодирования, вторая единица 510 кодирования также может разбиваться на третьи единицы кодирования (например, 520a или 520b, 520c и 520d) на основе информации режима согласно форме разбиения второй единицы 510 кодирования. Таким образом, единица кодирования может рекурсивно разбиваться на основе информации режима согласно форме разбиения каждой единицы кодирования. Следовательно, квадратная единица кодирования может определяться посредством разбиения неквадратной единицы кодирования, и неквадратная единица кодирования может определяться посредством рекурсивного разбиения квадратной единицы кодирования.According to an embodiment, the image decoding equipment 100 may determine whether or not to split the determined second coding unit 510 into coding units based on the mode information according to the split shape. Referring to FIG. 5, the image decoding equipment 100 may split the non-square second coding unit 510, which is determined by splitting the first coding unit 500, into one or more third coding units 520a, 520b, 520c, and 520d based on at least one of the mode information according to the form splitting and mode information according to the split shape, or may not split the non-square second coding unit 510 . The image decoding equipment 100 may obtain mode information according to the split shape, and may obtain a plurality of second coding units of different shape (for example, 510) by splitting the first coding unit 500, based on the obtained mode information according to the split shape, and the second coding unit 510 can be split by using a splitting method of the first coding unit 500 based on the mode information according to the splitting form. According to an embodiment, when the first coding unit 500 is split into second coding units 510 based on the mode information according to the split form of the first coding unit 500, the second coding unit 510 may also be split into third coding units (eg, 520a or 520b, 520c, and 520d) into based on the mode information according to the partition shape of the second coding unit 510 . Thus, a coding unit can be recursively partitioned based on the mode information according to the partitioning shape of each coding unit. Therefore, a square coding unit may be determined by splitting a non-square coding unit, and a non-square coding unit may be determined by recursively splitting a square coding unit.

Ссылаясь на фиг. 5, предварительно установленная единица кодирования (например, единица кодирования, расположенная в центральном местоположении, или квадратная единица кодирования) из числа нечетного числа третьих единиц 520b, 520c и 520d кодирования, определенных посредством разбиения неквадратной второй единицы 510 кодирования, может рекурсивно разбиваться. Согласно варианту осуществления, неквадратная третья единица 520b кодирования из нечетного числа третьих единиц 520b, 520c и 520d кодирования может разбиваться в горизонтальном направлении на множество четвертых единиц кодирования. Неквадратная четвертая единица 530b или 530d кодирования из множества четвертых единиц 530a, 530b, 530c и 530d кодирования может повторно разбиваться на множество единиц кодирования. Например, неквадратная четвертая единица 530b или 530d кодирования может повторно разбиваться на нечетное число единиц кодирования. Ниже описывается способ, который может использоваться для того, чтобы рекурсивно разбивать единицу кодирования, относительно различных вариантов осуществления.Referring to FIG. 5, a preset coding unit (eg, a coding unit located at a central location or a square coding unit) among an odd number of third coding units 520b, 520c, and 520d determined by splitting the non-square second coding unit 510 can be split recursively. According to an embodiment, the non-square third coding unit 520b of an odd number of third coding units 520b, 520c, and 520d may be split horizontally into a plurality of fourth coding units. The non-square fourth coding unit 530b or 530d of the plurality of fourth coding units 530a, 530b, 530c, and 530d may be re-partitioned into the plurality of coding units. For example, a non-square fourth coding unit 530b or 530d may be re-split into an odd number of coding units. The following describes a method that can be used to recursively split a coding unit with respect to various embodiments.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать каждую из третьих единиц 520a или 520b, 520c и 520d кодирования на единицы кодирования, на основе информации режима согласно форме разбиения. Кроме того, оборудование 100 декодирования изображений может определять необходимость не разбивать вторую единицу 510 кодирования на основе информации режима согласно форме разбиения. Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать неквадратную вторую единицу 510 кодирования на нечетное число третьих единиц 520b, 520c и 520d кодирования. Оборудование 100 декодирования изображений может задавать предварительно установленное ограничение на предварительно установленную третью единицу кодирования из нечетного числа третьих единиц 520b, 520c и 520d кодирования. Например, оборудование 100 декодирования изображений может ограничивать третью единицу 520c кодирования в центральном местоположении из нечетного числа третьих единиц 520b, 520c и 520d кодирования таким образом, что она более не разбивается или разбивается задаваемое число раз.According to an embodiment, the image decoding equipment 100 may partition each of the third coding units 520a or 520b, 520c, and 520d into coding units based on the mode information according to the split shape. In addition, the image decoding equipment 100 can determine whether to not split the second coding unit 510 based on the mode information according to the split shape. According to an embodiment, the image decoding equipment 100 may partition the non-square second coding unit 510 into an odd number of third coding units 520b, 520c, and 520d. The image decoding equipment 100 may set a preset limit on a preset third coding unit from an odd number of third coding units 520b, 520c, and 520d. For example, the image decoding equipment 100 may limit the third coding unit 520c at the central location of an odd number of third coding units 520b, 520c, and 520d such that it is no longer split or split a predetermined number of times.

Ссылаясь на фиг. 5, оборудование 100 декодирования изображений может ограничивать третью единицу 520c кодирования, которая находится в центральном местоположении из нечетного числа третьих единиц 520b, 520c и 520d кодирования, включенных в неквадратную вторую единицу 510 кодирования, так что что она более не разбивается, разбивается посредством использования предварительно установленного способа разбиения (например, разбивается только на четыре единицы кодирования либо разбивается посредством использования способа разбиения второй единицы 510 кодирования) или разбивается только предварительно установленного число раз (например, разбивается только n раз (где n>0)). Тем не менее, ограничения на третью единицу 520c кодирования в центральном местоположении не ограничены вышеописанными примерами и могут включать в себя различные ограничения для декодирования третьей единицы 520c кодирования в центральном местоположении по-другому по сравнению с другими третьими единицами 520b и 520d кодирования.Referring to FIG. 5, the image decoding equipment 100 may limit the third coding unit 520c that is at the center location of an odd number of third coding units 520b, 520c, and 520d included in the non-square second coding unit 510 so that it is no longer split, split by using a predetermined a set splitting method (eg, only split into four coding units, or split by using the splitting method of the second coding unit 510) or split only a predetermined number of times (eg, split only n times (where n>0)). However, restrictions on the third coding unit 520c at the center location are not limited to the examples described above and may include various restrictions for decoding the third coding unit 520c at the center location differently compared to other third coding units 520b and 520d.

Согласно варианту осуществления, оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения, которая используется для того, чтобы разбивать текущую единицу кодирования, из предварительно установленного местоположения в текущей единице кодирования.According to an embodiment, the image decoding equipment 100 can acquire mode information according to a split form that is used to split the current coding unit from a preset location in the current coding unit.

Фиг. 6 иллюстрирует способ, осуществляемый посредством оборудования 100 декодирования изображений, для определения предварительно установленной единицы кодирования из нечетного числа единиц кодирования, согласно варианту осуществления.Fig. 6 illustrates a method implemented by the image decoding equipment 100 for determining a preset coding unit from an odd number of coding units, according to an embodiment.

Ссылаясь на фиг. 6, информация режима согласно форме разбиения текущей единицы 600 или 650 кодирования может получаться из выборки предварительно установленного местоположения (например, из выборки 640 или 690 центрального местоположения) из множества выборок, включенных в текущую единицу 600 или 650 кодирования. Тем не менее, предварительно установленное местоположение в текущей единице 600 кодирования, из которой может получаться, по меньшей мере, один фрагмент информации режима согласно форме разбиения, не ограничено центральным местоположением на фиг. 6 и может включать в себя различные местоположения, включенные в текущую единицу 600 кодирования (например, верхнее, нижнее, левое, правое, верхнее левое, нижнее левое, верхнее правое, нижнее правое местоположения и т.п.). Оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения из предварительно установленного местоположения и может определять необходимость разбивать или не разбивать текущую единицу кодирования на единицы кодирования различной формы и различного размера.Referring to FIG. 6, mode information according to the split form of the current coding unit 600 or 650 may be obtained from a preset location sample (eg, from a central location sample 640 or 690) from a plurality of samples included in the current coding unit 600 or 650. However, the preset location in the current coding unit 600 from which at least one piece of mode information according to the split shape can be derived is not limited to the center location in FIG. 6 and may include various locations included in the current coding unit 600 (eg, top, bottom, left, right, top left, bottom left, top right, bottom right locations, etc.). The image decoding equipment 100 can acquire mode information according to the split shape from a preset location, and can determine whether or not to split the current coding unit into coding units of various shapes and sizes.

Согласно варианту осуществления, когда текущая единица кодирования разбивается на предварительно установленное число единиц кодирования, оборудование 100 декодирования изображений может выбирать одну из единиц кодирования. Различные способы могут использоваться для того, чтобы выбирать одну из множества единиц кодирования, как описано ниже относительно различных вариантов осуществления.According to an embodiment, when the current coding unit is divided into a predetermined number of coding units, the image decoding equipment 100 may select one of the coding units. Various methods may be used to select one of a plurality of coding units, as described below with respect to various embodiments.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать текущую единицу кодирования на множество единиц кодирования и может определять единицу кодирования в предварительно установленном местоположении.According to an embodiment, the image decoding equipment 100 may partition the current coding unit into a plurality of coding units, and may determine the coding unit at a preset location.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать информацию, указывающую местоположения нечетного числа единиц кодирования, чтобы определять единицу кодирования в центральном местоположении из нечетного числа единиц кодирования. Ссылаясь на фиг. 6, оборудование 100 декодирования изображений может определять нечетное число единиц 620a, 620b и 620c кодирования или нечетное число единиц 660a, 660b и 660c кодирования посредством разбиения текущей единицы 600 кодирования или текущей единицы 650 кодирования. Оборудование 100 декодирования изображений может определять среднюю единицу 620b кодирования или среднюю единицу 660b кодирования посредством использования информации относительно местоположений нечетного числа единиц 620a, 620b и 620c кодирования или нечетного числа единиц 660a, 660b и 660c кодирования. Например, оборудование 100 декодирования изображений может определять единицу 620b кодирования центрального местоположения посредством определения местоположений единиц 620a, 620b и 620c кодирования на основе информации, указывающей местоположения предварительно установленных выборок, включенных в единицы 620a, 620b и 620c кодирования. Подробно, оборудование 100 декодирования изображений может определять единицу 620b кодирования в центральном местоположении посредством определения местоположений единиц 620a, 620b и 620c кодирования на основе информации, указывающей местоположения верхних левых выборок 630a, 630b и 630c единиц 620a, 620b и 620c кодирования.According to an embodiment, the image decoding equipment 100 may use information indicating locations of an odd number of coding units to determine a coding unit at a central location from an odd number of coding units. Referring to FIG. 6, the image decoding equipment 100 may determine an odd number of coding units 620a, 620b, and 620c or an odd number of coding units 660a, 660b, and 660c by splitting the current coding unit 600 or the current coding unit 650. The image decoding equipment 100 may determine the average coding unit 620b or the average coding unit 660b by using information regarding the locations of an odd number of coding units 620a, 620b, and 620c or an odd number of coding units 660a, 660b, and 660c. For example, the image decoding equipment 100 may determine the central location coding unit 620b by determining the locations of the coding units 620a, 620b, and 620c based on information indicative of the locations of preset samples included in the coding units 620a, 620b, and 620c. In detail, the image decoding equipment 100 can determine the coding unit 620b at the center location by determining the locations of the coding units 620a, 620b, and 620c based on information indicating the locations of the top left samples 630a, 630b, and 630c of the coding units 620a, 620b, and 620c.

Согласно варианту осуществления, информация, указывающая местоположения верхних левых выборок 630a, 630b и 630c, которые включаются в единицы 620a, 620b и 620c кодирования, соответственно, может включать в себя информацию относительно местоположений или координат единиц 620a, 620b и 620c кодирования в кадре. Согласно варианту осуществления, информация, указывающая местоположения верхних левых выборок 630a, 630b и 630c, которые включаются в единицы 620a, 620b и 620c кодирования, соответственно, может включать в себя информацию, указывающую ширины или высоты единиц 620a, 620b и 620c кодирования, включенных в текущую единицу 600 кодирования, и ширины или высоты могут соответствовать информации, указывающей разности между координатами единиц 620a, 620b и 620c кодирования в кадре. Таким образом, оборудование 100 декодирования изображений может определять единицу 620b кодирования в центральном местоположении за счет непосредственного использования информации относительно местоположений или координат единиц 620a, 620b и 620c кодирования в кадре либо за счет использования информации относительно ширин или высот единиц кодирования, которые соответствуют разностным значениям между координатами.According to an embodiment, information indicating the locations of the top left samples 630a, 630b, and 630c that are included in coding units 620a, 620b, and 620c, respectively, may include information regarding the locations or coordinates of coding units 620a, 620b, and 620c in a frame. According to an embodiment, information indicative of the locations of the top left samples 630a, 630b, and 630c that are included in coding units 620a, 620b, and 620c, respectively, may include information indicative of the widths or heights of coding units 620a, 620b, and 620c included in the current coding unit 600, and the width or height may correspond to information indicating differences between the coordinates of the coding units 620a, 620b, and 620c in the frame. Thus, the image decoding equipment 100 can determine the coding unit 620b at the central location by directly using information regarding the locations or coordinates of the coding units 620a, 620b, and 620c in the frame, or by using information regarding the widths or heights of the coding units that correspond to the difference values between coordinates.

Согласно варианту осуществления, информация, указывающая местоположение верхней левой выборки 630a верхней единицы 620a кодирования, может включать в себя координаты (xa, ya), информация, указывающая местоположение верхней левой выборки 630b центральной единицы 620b кодирования, может включать в себя координаты (xb, yb), и информация, указывающая местоположение верхней левой выборки 630c нижней единицы 620c кодирования, может включать в себя координаты (xc, yc). Оборудование 100 декодирования изображений может определять среднюю единицу 620b кодирования посредством использования координат верхних левых выборок 630a, 630b и 630c, которые включаются в единицы 620a, 620b и 620c кодирования, соответственно. Например, когда координаты верхних левых выборок 630a, 630b и 630c сортируются в порядке по возрастанию или убыванию, единица 620b кодирования, включающая в себя координаты (xb, yb) выборки 630b в центральном местоположении, может определяться в качестве единицы кодирования в центральном местоположении из числа единиц 620a, 620b и 620c кодирования, определенных посредством разбиения текущей единицы 600 кодирования. Тем не менее, координаты, указывающие местоположения верхних левых выборок 630a, 630b и 630c, могут включать в себя координаты, указывающие абсолютные местоположения в кадре, или могут использовать координаты (dxb, dyb), указывающие относительное местоположение верхней левой выборки 630b средней единицы 620b кодирования, и координаты (dxc, dyc), указывающие относительное местоположение верхней левой выборки 630c нижней единицы 620c кодирования со ссылкой на местоположение верхней левой выборки 630a верхней единицы 620a кодирования. Способ определения единицы кодирования в предварительно установленном местоположении посредством использования координат выборки, включенной в единицу кодирования, в качестве информации, указывающей местоположение выборки, не ограничен вышеописанным способом и может включать в себя различные арифметические способы, допускающие использование координат выборки.According to an embodiment, information indicating the location of the upper left sample 630a of the upper coding unit 620a may include coordinates (xa, ya), information indicating the location of the upper left sample 630b of the center coding unit 620b may include coordinates (xb, yb ), and information indicating the location of the upper left sample 630c of the lower coding unit 620c may include coordinates (xc, yc). The image decoding equipment 100 may determine the middle coding unit 620b by using the coordinates of the top left samples 630a, 630b, and 630c, which are included in the coding units 620a, 620b, and 620c, respectively. For example, when the coordinates of the top left samples 630a, 630b, and 630c are sorted in ascending or descending order, the coding unit 620b including the coordinates (xb, yb) of the sample 630b at the center location may be determined as the coding unit at the center location from among coding units 620a, 620b, and 620c determined by splitting the current coding unit 600. However, the coordinates indicating the locations of the top left samples 630a, 630b, and 630c may include coordinates indicating absolute locations in the frame, or may use coordinates (dxb, dyb) indicating the relative location of the top left sample 630b of the middle coding unit 620b. , and coordinates (dxc, dyc) indicating the relative location of the upper left sample 630c of the lower coding unit 620c with reference to the location of the upper left sample 630a of the upper coding unit 620a. The method for determining the coding unit at a preset location by using the sample coordinates included in the coding unit as information indicating the sample location is not limited to the above-described method, and may include various arithmetic methods capable of using the sample coordinates.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать текущую единицу 600 кодирования на множество единиц 620a, 620b и 620c кодирования и может выбирать одну из единиц 620a, 620b и 620c кодирования на основе предварительно установленного критерия. Например, оборудование 100 декодирования изображений может выбирать единицу 620b кодирования, которая имеет размер, отличающийся от размера других, из числа единиц 620a, 620b и 620c кодирования.According to an embodiment, the image decoding equipment 100 may partition the current coding unit 600 into a plurality of coding units 620a, 620b, and 620c, and may select one of the coding units 620a, 620b, and 620c based on a predetermined criterion. For example, the image decoding equipment 100 may select a coding unit 620b that has a size different from the others from among the coding units 620a, 620b, and 620c.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину или высоту каждой из единиц 620a, 620b и 620c кодирования посредством использования координат (xa, ya), которые представляют собой информацию, указывающую местоположение верхней левой выборки 630a верхней единицы 620a кодирования, координат (xb, yb), которые представляют собой информацию, указывающую местоположение верхней левой выборки 630b средней единицы 620b кодирования, и координат (xc, yc), которые представляют собой информацию, указывающую местоположение верхней левой выборки 630c нижней единицы 620c кодирования. Оборудование 100 декодирования изображений может определять соответствующие размеры единиц 620a, 620b и 620c кодирования посредством использования координат (xa, ya), (xb, yb) и (xc, yc), указывающих местоположения единиц 620a, 620b и 620c кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину верхней единицы 620a кодирования как представляющую собой ширину текущей единицы 600 кодирования. Оборудование 100 декодирования изображений может определять высоту верхней единицы 620a кодирования как составляющую yb-ya. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину средней единицы 620b кодирования как представляющую собой ширину текущей единицы 600 кодирования. Оборудование 100 декодирования изображений может определять высоту средней единицы 620b кодирования как составляющую yc-yb. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину или высоту нижней единицы 620c кодирования посредством использования ширины или высоты текущей единицы 600 кодирования либо ширин или высот верхней и средней единиц 620a и 620b кодирования. Оборудование 100 декодирования изображений может определять единицу кодирования, которая имеет размер, отличающийся от размера других, на основе определенных ширин и высот единиц 620a, 620b и 620c кодирования. Ссылаясь на фиг. 6, оборудование 100 декодирования изображений может определять среднюю единицу 620b кодирования, которая имеет размер, отличающийся от размера верхней и нижней единиц 620a и 620c кодирования, в качестве единицы кодирования предварительно установленного местоположения. Тем не менее, вышеописанный способ, осуществляемый посредством оборудования 100 декодирования изображений, для определения единицы кодирования, имеющей размер, отличающийся от размера других единиц кодирования, просто соответствует примеру определения единицы кодирования в предварительно установленном местоположении посредством использования размеров единиц кодирования, которые определяются на основе координат выборок, и в силу этого могут использоваться различные способы определения единицы кодирования в предварительно установленном местоположении посредством сравнения размеров единиц кодирования, которые определяются на основе координат предварительно установленных выборок.According to an embodiment, the image decoding equipment 100 may determine the width or height of each of the coding units 620a, 620b, and 620c by using coordinates (xa, ya), which are information indicating the location of the upper left sample 630a of the upper coding unit 620a, coordinates (xb , yb), which are information indicating the location of the upper left sample 630b of the middle coding unit 620b, and coordinates (xc, yc), which are information indicating the location of the upper left sample 630c of the lower coding unit 620c. The image decoding equipment 100 may determine the respective sizes of the coding units 620a, 620b, and 620c by using the coordinates (xa, ya), (xb, yb), and (xc, yc) indicating the locations of the coding units 620a, 620b, and 620c. According to an embodiment, the image decoding equipment 100 may determine the width of the upper coding unit 620a as representing the width of the current coding unit 600. The image decoding equipment 100 may determine the height of the upper encoding unit 620a as the yb-ya component. According to an embodiment, the image decoding equipment 100 may determine the width of the middle coding unit 620b as being the width of the current coding unit 600. The image decoding equipment 100 may determine the height of the middle coding unit 620b as a component of yc-yb. According to an embodiment, the image decoding equipment 100 may determine the width or height of the lower coding unit 620c by using the width or height of the current coding unit 600 or the widths or heights of the upper and middle coding units 620a and 620b. The image decoding equipment 100 may determine a coding unit that has a size different from others based on the determined widths and heights of the coding units 620a, 620b, and 620c. Referring to FIG. 6, the image decoding equipment 100 may determine the middle coding unit 620b, which has a size different from the size of the upper and lower coding units 620a and 620c, as the preset location coding unit. However, the above-described method carried out by the image decoding equipment 100 for determining a coding unit having a size different from that of other coding units simply corresponds to an example of determining a coding unit at a preset location by using coding unit sizes that are determined based on coordinates samples, and thus various methods of determining the coding unit at the preset location by comparing the sizes of the coding units that are determined based on the coordinates of the preset samples can be used.

Оборудование 100 декодирования изображений может определять ширину или высоту каждой из единиц 660a, 660b и 660c кодирования посредством использования координат (xd, yd), которые представляют собой информацию, указывающую местоположение верхней левой выборки 670a левой единицы 660a кодирования, координат (xe, ye), которые представляют собой информацию, указывающую местоположение верхней левой выборки 670b средней единицы 660b кодирования, и координат (xf, yf), которые представляют собой информацию, указывающую местоположение верхней левой выборки 670c правой единицы 660c кодирования. Оборудование 100 декодирования изображений может определять соответствующие размеры единиц 660a, 660b и 660c кодирования посредством использования координат (xd, yd), (xe, ye) и (xf, yf), указывающих местоположения единиц 660a, 660b и 660c кодирования.The image decoding equipment 100 may determine the width or height of each of the encoding units 660a, 660b, and 660c by using coordinates (xd, yd), which are information indicating the location of the upper left sample 670a of the left encoding unit 660a, coordinates (xe, ye), which are information indicating the location of the upper left sample 670b of the middle coding unit 660b, and coordinates (xf, yf) which are information indicating the location of the upper left sample 670c of the right coding unit 660c. The image decoding equipment 100 can determine the respective sizes of the coding units 660a, 660b, and 660c by using the coordinates (xd, yd), (xe, ye), and (xf, yf) indicating the locations of the coding units 660a, 660b, and 660c.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину левой единицы 660a кодирования как составляющую xe-xd. Оборудование 100 декодирования изображений может определять высоту левой единицы 660a кодирования в качестве высоты текущей единицы 650 кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину средней единицы 660b кодирования как составляющую xf-xe. Оборудование 100 декодирования изображений может определять высоту средней единицы 660b кодирования в качестве высоты текущей единицы 650 кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять ширину или высоту правой единицы 660c кодирования посредством использования ширины или высоты текущей единицы 650 кодирования либо ширин или высот левой и средней единиц 660a и 660b кодирования. Оборудование 100 декодирования изображений может определять единицу кодирования, которая имеет размер, отличающийся от размера других, на основе определенных ширин и высот единиц 660a, 660b и 660c кодирования. Ссылаясь на фиг. 6, оборудование 100 декодирования изображений может определять среднюю единицу 660b кодирования, которая имеет размер, отличающийся от размеров левой и правой единиц 660a и 660c кодирования, в качестве единицы кодирования предварительно установленного местоположения. Тем не менее, вышеописанный способ, осуществляемый посредством оборудования 100 декодирования изображений, для определения единицы кодирования, имеющей размер, отличающийся от размера других единиц кодирования, просто соответствует примеру определения единицы кодирования в предварительно установленном местоположении посредством использования размеров единиц кодирования, которые определяются на основе координат выборок, и в силу этого могут использоваться различные способы определения единицы кодирования в предварительно установленном местоположении посредством сравнения размеров единиц кодирования, которые определяются на основе координат предварительно установленных выборок.According to an embodiment, the image decoding equipment 100 may determine the width of the left encoding unit 660a as a component of xe-xd. The image decoding equipment 100 may determine the height of the left coding unit 660a as the height of the current coding unit 650 . According to an embodiment, the image decoding equipment 100 may determine the width of the middle coding unit 660b as a component of xf-xe. The image decoding equipment 100 may determine the height of the middle coding unit 660b as the height of the current coding unit 650 . According to an embodiment, the image decoding equipment 100 may determine the width or height of the right coding unit 660c by using the width or height of the current coding unit 650 or the widths or heights of the left and middle coding units 660a and 660b. The image decoding equipment 100 may determine a coding unit that has a size different from others based on the determined widths and heights of the coding units 660a, 660b, and 660c. Referring to FIG. 6, the image decoding equipment 100 may determine the middle coding unit 660b, which has a size different from the sizes of the left and right coding units 660a and 660c, as the preset location coding unit. However, the above-described method carried out by the image decoding equipment 100 for determining a coding unit having a size different from that of other coding units simply corresponds to an example of determining a coding unit at a preset location by using coding unit sizes that are determined based on coordinates samples, and thus various methods of determining the coding unit at the preset location by comparing the sizes of the coding units that are determined based on the coordinates of the preset samples can be used.

Тем не менее, местоположения выборок, учитываемые для того, чтобы определять местоположения единиц кодирования, не ограничены вышеописанными верхними левыми местоположениями, и может использоваться информация относительно произвольных местоположений выборок, включенных в единицы кодирования.However, the sample locations taken into account in order to determine the locations of the coding units are not limited to the upper left locations described above, and information on arbitrary sample locations included in the coding units can be used.

Согласно варианту осуществления, оборудование 100 декодирования изображений может выбирать единицу кодирования в предварительно установленном местоположении из нечетного числа единиц кодирования, определенных посредством разбиения текущей единицы кодирования, с учетом формы текущей единицы кодирования. Например, когда текущая единица кодирования имеет неквадратную форму, ширина которой превышает высоту, оборудование 100 декодирования изображений может определять единицу кодирования в предварительно установленном местоположении в горизонтальном направлении. Таким образом, оборудование 100 декодирования изображений может определять одну из единиц кодирования в различных местоположениях в горизонтальном направлении и может налагать ограничение на единицу кодирования. Когда текущая единица кодирования имеет неквадратную форму, высота которой превышает ширину, оборудование 100 декодирования изображений может определять единицу кодирования в предварительно установленном местоположении в вертикальном направлении. Таким образом, оборудование 100 декодирования изображений может определять одну из единиц кодирования в различные местоположениях в горизонтальном направлении и может налагать ограничение на единицу кодирования.According to an embodiment, the image decoding equipment 100 may select a coding unit at a preset location from an odd number of coding units determined by splitting the current coding unit based on the shape of the current coding unit. For example, when the current coding unit has a non-square shape whose width exceeds the height, the image decoding equipment 100 can determine the coding unit at a preset location in the horizontal direction. Thus, the image decoding equipment 100 may determine one of the coding units at various locations in the horizontal direction, and may impose a restriction on the coding unit. When the current coding unit has a non-square shape whose height exceeds the width, the image decoding equipment 100 can determine the coding unit at a preset location in the vertical direction. Thus, the image decoding equipment 100 may determine one of the coding units at various locations in the horizontal direction, and may impose a restriction on the coding unit.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать информацию, указывающую соответствующие местоположения четного числа единиц кодирования, чтобы определять единицу кодирования в предварительно установленном местоположении из четного числа единиц кодирования. Оборудование 100 декодирования изображений может определять четное число единиц кодирования посредством разбиения (двоичного разбиения) текущей единицы кодирования и может определять единицу кодирования в предварительно установленном местоположении посредством использования информации относительно местоположений четного числа единиц кодирования. Операция в связи с этим может соответствовать операции определения единицы кодирования в предварительно установленном местоположении (например, в центральном местоположении) из нечетного числа единиц кодирования, которая описывается подробно выше относительно фиг. 6, и в силу этого подробные описания означенного не предоставляются здесь.According to an embodiment, the image decoding equipment 100 can use information indicating respective locations of an even number of coding units to determine a coding unit at a preset location from an even number of coding units. The image decoding equipment 100 may determine an even number of coding units by splitting (binary split) a current coding unit, and may determine a coding unit at a preset location by using information on the locations of an even number of coding units. The operation in this regard may correspond to the operation of determining a coding unit at a preset location (eg, a central location) from an odd number of coding units, which is described in detail above with respect to FIG. 6, and as such, detailed descriptions of what is meant are not provided here.

Согласно варианту осуществления, когда неквадратная текущая единица кодирования разбивается на множество единиц кодирования, предварительно установленная информация относительно единицы кодирования в предварительно установленном местоположении может использоваться при операции разбиения для того, чтобы определять единицу кодирования в предварительно установленном местоположении из множества единиц кодирования. Например, оборудование 100 декодирования изображений может использовать, по меньшей мере, одно из информации формы блоков и информации режима согласно форме разбиения, которая сохраняется в выборке, включенной в среднюю единицу кодирования, при операции разбиения для того, чтобы определять единицу кодирования в центральном местоположении из множества единиц кодирования, определенных посредством разбиения текущей единицы кодирования.According to an embodiment, when a non-square current coding unit is split into a plurality of coding units, preset information regarding a coding unit at a preset location may be used in a split operation to determine a coding unit at a preset location from among the plurality of coding units. For example, the image decoding equipment 100 may use at least one of the block shape information and the mode information according to the split shape that is stored in the sample included in the middle coding unit in the split operation to determine the coding unit at the central location of a plurality of coding units determined by splitting the current coding unit.

Ссылаясь на фиг. 6, оборудование 100 декодирования изображений может разбивать текущую единицу 600 кодирования на множество единиц 620a, 620b и 620c кодирования на основе информации режима согласно форме разбиения и может определять единицу 620b кодирования в центральном местоположении из множества единиц 620a, 620b и 620c кодирования. Кроме того, оборудование 100 декодирования изображений может определять единицу 620b кодирования в центральном местоположении, с учетом местоположения, из которого получается информация режима согласно форме разбиения. Таким образом, информация режима согласно форме разбиения текущей единицы 600 кодирования может получаться из выборки 640 в центральном местоположении текущей единицы 600 кодирования, и когда текущая единица 600 кодирования разбивается на множество единиц 620a, 620b и 620c кодирования на основе информации режима согласно форме разбиения, единица 620b кодирования, включающая в себя выборку 640, может определяться в качестве единицы кодирования в центральном местоположении. Тем не менее, информация, используемая для того, чтобы определять единицу кодирования в центральном местоположении, не ограничена информацией режима согласно форме разбиения, и различные типы информации могут использоваться для того, чтобы определять единицу кодирования в центральном местоположении.Referring to FIG. 6, the image decoding equipment 100 may partition the current coding unit 600 into a plurality of coding units 620a, 620b, and 620c based on the mode information according to the split shape, and may determine the coding unit 620b at a central location from the plurality of coding units 620a, 620b, and 620c. In addition, the image decoding equipment 100 can determine the coding unit 620b at the central location, considering the location from which the mode information is obtained according to the partition shape. Thus, the mode information according to the split shape of the current coding unit 600 can be obtained from the sample 640 at the center location of the current coding unit 600, and when the current coding unit 600 is split into a plurality of coding units 620a, 620b, and 620c based on the mode information according to the split shape, the unit An encoding 620b including sample 640 may be determined as the encoding unit at the central location. However, the information used to determine the coding unit at the central location is not limited to the mode information according to the split shape, and various types of information may be used to determine the coding unit at the central location.

Согласно варианту осуществления, предварительно установленная информация для идентификации единицы кодирования в предварительно установленном местоположении может получаться из предварительно установленной выборки, включенной в единицу кодирования, которая должна определяться. Ссылаясь на фиг. 6, оборудование 100 декодирования изображений может использовать информацию режима согласно форме разбиения, которая получается из выборки в предварительно установленном местоположении в текущей единице 600 кодирования (например, из выборки в центральном местоположении текущей единицы 600 кодирования), с этим чтобы определять единицу кодирования в предварительно установленном местоположении из множества единиц 620a, 620b и 620c кодирования, определенных посредством разбиения текущей единицы 600 кодирования (например, единицы кодирования в центральном местоположении из множества разбитых единиц кодирования). Таким образом, оборудование 100 декодирования изображений может определять выборку в предварительно установленном местоположении с учетом формы блока текущей единицы 600 кодирования, может определять единицу 620b кодирования, включающую в себя выборку, из которой может получаться предварительно установленная информация (например, информация режима согласно форме разбиения), из множества единиц 620a, 620b и 620c кодирования, определенных посредством разбиения текущей единицы 600 кодирования, и может налагать предварительно установленное ограничение на единицу 620b кодирования. Ссылаясь на фиг. 6, согласно варианту осуществления, оборудование 100 декодирования изображений может определять выборку 640 в центральном местоположении текущей единицы 600 кодирования в качестве выборки, из которой может получаться предварительно установленная информация, и может налагать предварительно установленное ограничение на единицу 620b кодирования, включающую в себя выборку 640, в операции декодирования. Тем не менее, местоположение выборки, из которой может получаться предварительно установленная информация, не ограничено вышеописанным местоположением и может включать в себя произвольные местоположения выборок, включенных в единицу 620b кодирования, которая должна определяться, для ограничения.According to an embodiment, preset information for identifying a coding unit at a preset location may be obtained from a preset sample included in a coding unit to be determined. Referring to FIG. 6, the image decoding equipment 100 may use the mode information according to the partition shape that is obtained from the sample at the preset location in the current coding unit 600 (for example, from the sample at the center location of the current coding unit 600), so as to determine the coding unit in the preset location from the plurality of coding units 620a, 620b, and 620c determined by splitting the current coding unit 600 (eg, coding units at the central location from the plurality of split coding units). Thus, the image decoding equipment 100 can determine a sample at a preset location considering the block shape of the current coding unit 600, can determine a coding unit 620b including a sample from which preset information can be obtained (for example, mode information according to the split shape) , from a plurality of coding units 620a, 620b, and 620c determined by splitting the current coding unit 600, and may impose a predetermined restriction on the coding unit 620b. Referring to FIG. 6, according to an embodiment, the image decoding equipment 100 may determine the sample 640 at the center location of the current coding unit 600 as a sample from which preset information can be obtained, and may impose a preset limit on the coding unit 620b including the sample 640, in the decoding operation. However, the location of the sample from which the preset information may be obtained is not limited to the above-described location, and may include arbitrary locations of the samples included in the coding unit 620b to be determined, for limitation.

Согласно варианту осуществления, местоположение выборки, из которой может получаться предварительно установленная информация, может определяться на основе формы текущей единицы 600 кодирования. Согласно варианту осуществления, информация формы блоков может указывать то, имеет текущая единица кодирования квадратную или неквадратную форму, и местоположение выборки, из которой может получаться предварительно установленная информация, может определяться на основе формы. Например, оборудование 100 декодирования изображений может определять выборку, расположенную на границе для разбиения, по меньшей мере, одного из ширины и высоты текущей единицы кодирования наполовину, в качестве выборки, из которой может получаться предварительно установленная информация, посредством использования, по меньшей мере, одного из информации относительно ширины текущей единицы кодирования и информации относительно высоты текущей единицы кодирования. В качестве другого примера, когда информация формы блоков текущей единицы кодирования указывает неквадратную форму, оборудование 100 декодирования изображений может определять одну из выборок, смежных с границей для разбиения длинной стороны текущей единицы кодирования наполовину, в качестве выборки, из которой может получаться предварительно установленная информация.According to an embodiment, the location of a sample from which preset information may be obtained may be determined based on the shape of the current coding unit 600 . According to an embodiment, the block shape information may indicate whether the current coding unit is square or non-square, and a sample location from which preset information may be obtained may be determined based on the shape. For example, the image decoding equipment 100 may determine a sample located at the boundary to split at least one of the width and height of the current coding unit by half as a sample from which preset information can be obtained by using at least one from information regarding the width of the current coding unit and information regarding the height of the current coding unit. As another example, when the block shape information of the current coding unit indicates a non-square shape, the image decoding equipment 100 may determine one of the samples adjacent to the boundary for splitting the long side of the current coding unit in half as a sample from which preset information can be obtained.

Согласно варианту осуществления, когда текущая единица кодирования разбивается на множество единиц кодирования, оборудование 100 декодирования изображений может использовать информацию режима согласно форме разбиения для того, чтобы определять единицу кодирования в предварительно установленном местоположении из множества единиц кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может получать информацию режима согласно форме разбиения из выборки в предварительно установленном местоположении в единице кодирования и может разбивать множество единиц кодирования, которые формируются посредством разбиения текущей единицы кодирования, посредством использования информации режима согласно форме разбиения, которая получается из выборки предварительно установленного местоположения в каждой из множества единиц кодирования. Таким образом, единица кодирования может рекурсивно разбиваться на основе информации режима согласно форме разбиения, которая получается из выборки в предварительно установленном местоположении в каждой единице кодирования. Операция рекурсивного разбиения единицы кодирования описывается выше относительно фиг. 5, и в силу этого подробные описания означенного не предоставляются здесь.According to an embodiment, when the current coding unit is split into a plurality of coding units, the image decoding equipment 100 can use the mode information according to the split shape to determine the coding unit at a preset location from the plurality of coding units. According to an embodiment, the image decoding equipment 100 can obtain mode information according to the split shape from a sample at a preset location in a coding unit, and can split a plurality of coding units that are generated by splitting the current coding unit by using mode information according to the split shape that is obtained from fetching a preset location in each of the plurality of coding units. Thus, a coding unit can be recursively partitioned based on mode information according to a split shape that is obtained from a sample at a preset location in each coding unit. The operation of recursively splitting a coding unit is described above with respect to FIG. 5, and as such, detailed descriptions of what is meant are not provided here.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять одну или более единиц кодирования посредством разбиения текущей единицы кодирования и может определять порядок декодирования одной или более единиц кодирования, на основе предварительно установленного блока (например, текущей единицы кодирования).According to an embodiment, the image decoding equipment 100 may determine one or more coding units by splitting the current coding unit, and may determine the decoding order of the one or more coding units based on a preset block (eg, the current coding unit).

Фиг. 7 иллюстрирует порядок обработки множества единиц кодирования, когда оборудование 100 декодирования изображений определяет множество единиц кодирования посредством разбиения текущей единицы кодирования, согласно варианту осуществления.Fig. 7 illustrates a processing order of a plurality of coding units when the image decoding equipment 100 determines a plurality of coding units by splitting a current coding unit, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять вторые единицы 710a и 710b кодирования посредством разбиения первой единицы 700 кодирования в вертикальном направлении, может определять вторые единицы 730a и 730b кодирования посредством разбиения первой единицы 700 кодирования в горизонтальном направлении либо может определять вторые единицы 750a, 750b, 750c и 750d кодирования посредством разбиения первой единицы 700 кодирования в вертикальном и горизонтальном направлениях, на основе информации режима согласно форме разбиения.According to an embodiment, the image decoding equipment 100 may determine the second coding units 710a and 710b by splitting the first coding unit 700 in the vertical direction, may determine the second coding units 730a and 730b by splitting the first coding unit 700 in the horizontal direction, or may determine the second units 750a, 750b, 750c, and 750d encoding by splitting the first coding unit 700 in vertical and horizontal directions based on the mode information according to the split shape.

Ссылаясь на фиг. 7, оборудование 100 декодирования изображений может определять необходимость обрабатывать вторые единицы 710a и 710b кодирования, которые определяются посредством разбиения первой единицы 700 кодирования в вертикальном направлении, в порядке 710c в горизонтальном направлении. Оборудование 100 декодирования изображений может определять необходимость обрабатывать вторые единицы 730a и 730b кодирования, которые определяются посредством разбиения первой единицы 700 кодирования в горизонтальном направлении, в порядке 730c в вертикальном направлении. Оборудование 100 декодирования изображений может определять вторые единицы 750a, 750b, 750c и 750d кодирования, которые определяются посредством разбиения первой единицы 700 кодирования в вертикальном и горизонтальном направлениях, согласно предварительно установленному порядку (например, порядку 750e растрового сканирования или порядку Z-сканирования), в котором обрабатываются единицы кодирования в строке, а затем обрабатываются единицы кодирования в следующей строке.Referring to FIG. 7, the image decoding equipment 100 may determine whether to process the second coding units 710a and 710b, which are determined by splitting the first coding unit 700 in the vertical direction, in order 710c in the horizontal direction. The image decoding equipment 100 may determine whether to process the second coding units 730a and 730b, which are determined by splitting the first coding unit 700 in the horizontal direction, in order 730c in the vertical direction. The image decoding equipment 100 may determine second coding units 750a, 750b, 750c, and 750d, which are determined by splitting the first coding unit 700 in vertical and horizontal directions, according to a predetermined order (e.g., raster scan order 750e or Z-scan order), in which processes the coding units in a line and then processes the coding units in the next line.

Согласно варианту осуществления, оборудование 100 декодирования изображений может рекурсивно разбивать единицы кодирования. Ссылаясь на фиг. 7, оборудование 100 декодирования изображений может определять множество единиц 710a и 710b, 730a и 730b или 750a, 750b, 750c и 750d кодирования посредством разбиения первой единицы 700 кодирования и может рекурсивно разбивать каждую из определенного множества единиц 710a, 710b, 730a, 730b, 750a, 750b, 750c и 750d кодирования. Способ разбиения множества единиц 710a и 710b, 730a и 730b или 750a, 750b, 750c и 750d кодирования может соответствовать способу разбиения первой единицы 700 кодирования. Соответственно, каждая из множества единиц 710a и 710b, 730a и 730b или 750a, 750b, 750c и 750d кодирования может независимо разбиваться на множество единиц кодирования. Ссылаясь на фиг. 7, оборудование 100 декодирования изображений может определять вторые единицы 710a и 710b кодирования посредством разбиения первой единицы 700 кодирования в вертикальном направлении и может определять необходимость независимо разбивать или не разбивать каждую из вторых единиц 710a и 710b кодирования.According to an embodiment, the image decoding equipment 100 can split coding units recursively. Referring to FIG. 7, the image decoding equipment 100 may determine a plurality of coding units 710a and 710b, 730a and 730b or 750a, 750b, 750c and 750d by splitting the first coding unit 700, and may split each of the determined plurality of units 710a, 710b, 730a, 730b, 750a recursively. , 750b, 750c and 750d encoding. The partitioning method of the plurality of coding units 710a and 710b, 730a and 730b or 750a, 750b, 750c and 750d may correspond to the partitioning method of the first coding unit 700. Accordingly, each of the plurality of coding units 710a and 710b, 730a and 730b or 750a, 750b, 750c and 750d may be independently partitioned into a plurality of coding units. Referring to FIG. 7, the image decoding equipment 100 may determine the second coding units 710a and 710b by splitting the first coding unit 700 in the vertical direction, and may determine whether or not to split each of the second coding units 710a and 710b independently.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третьи единицы 720a и 720b кодирования посредством разбиения левой второй единицы 710a кодирования в горизонтальном направлении и может не разбивать правую вторую единицу 710b кодирования.According to an embodiment, the image decoding equipment 100 may determine the third coding units 720a and 720b by splitting the left second coding unit 710a in the horizontal direction, and may not split the right second coding unit 710b.

Согласно варианту осуществления, порядок обработки единиц кодирования может определяться на основе операции разбиения единицы кодирования. Другими словами, порядок обработки разбитых единиц кодирования может определяться на основе порядка обработки единиц кодирования непосредственно перед разбиением. Оборудование 100 декодирования изображений может определять порядок обработки третьих единиц 720a и 720b кодирования, определенных посредством разбиения левой второй единицы 710a кодирования, независимо от правой второй единицы 710b кодирования. Поскольку третьи единицы 720a и 720b кодирования определяются посредством разбиения левой второй единицы 710a кодирования в горизонтальном направлении, третьи единицы 720a и 720b кодирования могут обрабатываться в порядке 720c в вертикальном направлении. Поскольку левая и правая вторые единицы 710a и 710b кодирования обрабатываются в порядке 710c в горизонтальном направлении, правая вторая единица 710b кодирования может обрабатываться после того, как третьи единицы 720a и 720b кодирования, включенные в левую вторую единицу 710a кодирования, обрабатываются в порядке 720c в вертикальном направлении. Операция определения порядка обработки единиц кодирования на основе единицы кодирования перед разбиением не ограничена вышеописанным примером, и различные способы могут использоваться для того, чтобы независимо обрабатывать единицы кодирования, которые разбиваются и определяются согласно различным формам, в предварительно установленном порядке.According to an embodiment, the processing order of coding units may be determined based on a coding unit split operation. In other words, the processing order of split coding units may be determined based on the processing order of coding units just before splitting. The image decoding equipment 100 may determine the processing order of the third coding units 720a and 720b determined by splitting the left second coding unit 710a independently of the right second coding unit 710b. Since the third coding units 720a and 720b are determined by splitting the left second coding unit 710a in the horizontal direction, the third coding units 720a and 720b can be processed in order 720c in the vertical direction. Since the left and right second coding units 710a and 710b are processed in the order 710c in the horizontal direction, the right second coding unit 710b can be processed after the third coding units 720a and 720b included in the left second coding unit 710a are processed in the order 720c in the vertical direction. direction. The operation of determining the processing order of coding units based on the coding unit before splitting is not limited to the above-described example, and various methods can be used to independently process coding units that are split and determined according to different shapes in a predetermined order.

Фиг. 8 иллюстрирует процесс, выполняемый посредством оборудования 100 декодирования изображений, для определения того, что текущая единица кодирования должна разбиваться на нечетное число единиц кодирования, когда единицы кодирования не являются обрабатываемыми в предварительно установленном порядке, согласно варианту осуществления.Fig. 8 illustrates a process performed by the image decoding equipment 100 for determining that the current coding unit should be split into an odd number of coding units when the coding units are not preprocessed according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять то, что текущая единица кодирования должна разбиваться на нечетное число единиц кодирования, на основе полученной информации режима согласно форме разбиения. Ссылаясь на фиг. 8, квадратная первая единица 800 кодирования может разбиваться на неквадратные вторые единицы 810a и 810b кодирования, и вторые единицы 810a и 810b кодирования могут независимо разбиваться на третьи единицы 820a и 820b и 820c, 820d и 820e кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять множество третьих единиц 820a и 820b кодирования посредством разбиения левой второй единицы 810a кодирования в горизонтальном направлении и может разбивать правую вторую единицу 810b кодирования на нечетное число третьих единиц 820c, 820d и 820e кодирования.According to an embodiment, the image decoding equipment 100 can determine that the current coding unit is to be split into an odd number of coding units based on the received mode information according to the split shape. Referring to FIG. 8, the square first coding unit 800 may be split into non-square second coding units 810a and 810b, and the second coding units 810a and 810b may be independently split into third coding units 820a and 820b and 820c, 820d and 820e. According to an embodiment, the image decoding equipment 100 may determine a plurality of third coding units 820a and 820b by splitting the left second coding unit 810a in the horizontal direction, and may split the right second coding unit 810b into an odd number of third coding units 820c, 820d, and 820e.

Согласно варианту осуществления, оборудование 100 декодирования видео может определять то, разбивается или нет любая единица кодирования на нечетное число единиц кодирования, посредством определения того, являются или нет третьи единицы 820a и 820b и 820c, 820d и 820e кодирования обрабатываемыми в предварительно установленном порядке. Ссылаясь на фиг. 8, оборудование 100 декодирования изображений может определять третьи единицы 820a и 820b и 820c, 820d и 820e кодирования посредством рекурсивного разбиения первой единицы 800 кодирования. Оборудование 100 декодирования изображений может определять то, разбивается или нет любая из первой единицы 800 кодирования, вторых единиц 810a и 810b кодирования и третьих единиц 820a и 820b и 820c, 820d и 820e кодирования на нечетное число единиц кодирования, на основе, по меньшей мере, одного из информации формы блоков и информации режима согласно форме разбиения. Например, единица кодирования, расположенная справа из числа вторых единиц 810a и 810b кодирования, может разбиваться на нечетное число третьих единиц 820c, 820d и 820e кодирования. Порядок обработки множества единиц кодирования, включенных в первую единицу 800 кодирования, может представлять собой предварительно установленный порядок (например, порядок 830 Z-сканирования), и оборудование 100 декодирования изображений может определять то, удовлетворяют или нет третьи единицы 820c, 820d и 820e кодирования, которые определяются посредством разбиения правой второй единицы 810b кодирования на нечетное число единиц кодирования, условию для обработки в предварительно установленном порядке.According to an embodiment, the video decoding equipment 100 can determine whether or not any coding unit is split into an odd number of coding units by determining whether or not the third coding units 820a and 820b and 820c, 820d and 820e are pre-processed. Referring to FIG. 8, the image decoding equipment 100 may determine the third coding units 820a and 820b and 820c, 820d and 820e by recursively splitting the first coding unit 800. The image decoding equipment 100 can determine whether or not any of the first coding unit 800, the second coding units 810a and 810b, and the third coding units 820a and 820b and 820c, 820d and 820e are split into an odd number of coding units based on at least one of the block shape information and the mode information according to the partition shape. For example, the coding unit to the right of the second coding units 810a and 810b may be split into an odd number of third coding units 820c, 820d and 820e. The processing order of the plurality of coding units included in the first coding unit 800 may be a preset order (for example, the Z-scan order 830), and the image decoding equipment 100 may determine whether or not the third coding units 820c, 820d, and 820e satisfy, which are determined by dividing the right second coding unit 810b into an odd number of coding units, a condition for processing in a predetermined order.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять то, удовлетворяют или нет третьи единицы 820a и 820b и 820c, 820d и 820e кодирования, включенные в первую единицу 800 кодирования, условию для обработки в предварительно установленном порядке, и условие связано с этим, разбивается или нет, по меньшей мере, одно из ширины и высоты вторых единиц 810a и 810b кодирования наполовину вдоль границы третьих единиц 820a и 820b и 820c, 820d и 820e кодирования. Например, третьи единицы 820a и 820b кодирования, определенные, когда высота левой второй единицы 810a кодирования неквадратной формы разбивается наполовину, могут удовлетворять условию. Может определяться то, что третьи единицы 820c, 820d и 820e кодирования не удовлетворяют условию, поскольку границы третьих единиц 820c, 820d и 820e кодирования, определенных, когда правая вторая единица 810b кодирования разбивается на три единицы кодирования, не могут разбивать ширину или высоту правой второй единицы 810b кодирования наполовину. Когда условие не удовлетворяется, как описано выше, оборудование 100 декодирования изображений может определять нарушение непрерывности порядка сканирования и может определять то, что правая вторая единица 810b кодирования должна разбиваться на нечетное число единиц кодирования, на основе результата определения. Согласно варианту осуществления, когда единица кодирования разбивается на нечетное число единиц кодирования, оборудование 100 декодирования изображений может налагать предварительно установленное ограничение на единицу кодирования в предварительно установленном местоположении из числа разбитых единиц кодирования. Ограничение или предварительно установленное местоположение описывается выше относительно различных вариантов осуществления, и в силу этого подробные описания означенного не предоставляются в данном документе.According to an embodiment, the image decoding equipment 100 can determine whether or not the third coding units 820a and 820b and 820c, 820d and 820e included in the first coding unit 800 satisfy the condition for pre-order processing, and the condition associated with this is broken or not, at least one of the width and height of the second coding units 810a and 810b is half along the border of the third coding units 820a and 820b and 820c, 820d and 820e. For example, the third coding units 820a and 820b determined when the height of the left second non-square shaped coding unit 810a is split by half can satisfy the condition. It may be determined that the third coding units 820c, 820d, and 820e do not satisfy the condition because the boundaries of the third coding units 820c, 820d, and 820e determined when the right second coding unit 810b is split into three coding units cannot split the width or height of the right second coding units 810b by half. When the condition is not satisfied as described above, the image decoding equipment 100 may determine a scan order discontinuity and may determine that the right second coding unit 810b should be split into an odd number of coding units based on the determination result. According to an embodiment, when a coding unit is partitioned into an odd number of coding units, the image decoding equipment 100 may impose a preset limit on the coding unit at a preset location among the split coding units. The restriction or preset location is described above with respect to the various embodiments, and therefore, detailed descriptions of the meaning are not provided herein.

Фиг. 9 иллюстрирует процесс, выполняемый посредством оборудования 100 декодирования изображений, для определения, по меньшей мере, одной единицы кодирования посредством разбиения первой единицы 900 кодирования, согласно варианту осуществления.Fig. 9 illustrates a process performed by the image decoding equipment 100 to determine at least one coding unit by splitting the first coding unit 900, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать первую единицу 900 кодирования, на основе информации режима согласно форме разбиения, которая получается через модуль 110 получения потоков битов. Квадратная первая единица 900 кодирования может разбиваться на четыре квадратных единицы кодирования или может разбиваться на множество неквадратных единиц кодирования. Например, ссылаясь на фиг. 9, когда первая единица 900 кодирования имеет квадратную форму, и информация режима согласно форме разбиения, указывает необходимость разбивать первую единицу 900 кодирования на неквадратные единицы кодирования, оборудование 100 декодирования изображений может разбивать первую единицу 900 кодирования на множество неквадратных единиц кодирования. Подробно, когда информация режима согласно форме разбиения указывает необходимость определять нечетное число единиц кодирования посредством разбиения первой единицы 900 кодирования в горизонтальном направлении или в вертикальном направлении, оборудование 100 декодирования изображений может разбивать квадратную первую единицу 900 кодирования на нечетное число единиц кодирования, например, вторых единиц 910a, 910b и 910c кодирования, определенных посредством разбиения квадратной первой единицы 900 кодирования в вертикальном направлении, или вторых единиц 920a, 920b и 920c кодирования, определенных посредством разбиения квадратной первой единицы 900 кодирования в горизонтальном направлении.According to an embodiment, the image decoding equipment 100 can split the first coding unit 900 based on the mode information according to the splitting form that is obtained through the bit stream obtaining unit 110 . The square first coding unit 900 may be split into four square coding units, or may be split into multiple non-square coding units. For example, referring to FIG. 9, when the first coding unit 900 is square, and the mode information according to the partition shape indicates a need to split the first coding unit 900 into non-square coding units, the image decoding equipment 100 may split the first coding unit 900 into a plurality of non-square coding units. In detail, when the mode information according to the split shape indicates the need to determine an odd number of coding units by splitting the first coding unit 900 in the horizontal direction or in the vertical direction, the image decoding equipment 100 may split the square first coding unit 900 into an odd number of coding units, such as second units. 910a, 910b, and 910c coding determined by splitting the square first coding unit 900 in the vertical direction, or second coding units 920a, 920b, and 920c determined by splitting the square first coding unit 900 in the horizontal direction.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять то, удовлетворяют или нет вторые единицы 910a, 910b, 910c, 920a, 920b и 920c кодирования, включенные в первую единицу 900 кодирования, условию для обработки в предварительно установленном порядке, и условие связано с этим, должно разбиваться или нет, по меньшей мере, одно из ширины и высоты первой единицы 900 кодирования наполовину вдоль границы вторых единиц 910a, 910b, 910c, 920a, 920b и 920c кодирования. Ссылаясь на фиг. 9, поскольку границы вторых единиц 910a, 910b и 910c кодирования, определенные посредством разбиения квадратной первой единицы 900 кодирования в вертикальном направлении, не разбивают ширину первой единицы 900 кодирования наполовину, может определяться то, что первая единица 900 кодирования не удовлетворяет условию для обработки в предварительно установленном порядке. Кроме того, поскольку границы вторых единиц 920a, 920b и 920c кодирования, определенные посредством разбиения квадратной первой единицы 900 кодирования в горизонтальном направлении, не разбивают высоту первой единицы 900 кодирования наполовину, может определяться то, что первая единица 900 кодирования не удовлетворяет условию для обработки в предварительно установленном порядке. Когда условие не удовлетворяется, как описано выше, оборудование 100 декодирования изображений может определять нарушение непрерывности порядка сканирования и может определять то, что первая единица 900 кодирования должна разбиваться на нечетное число единиц кодирования, на основе результата решения. Согласно варианту осуществления, когда единица кодирования разбивается на нечетное число единиц кодирования, оборудование 100 декодирования изображений может налагать предварительно установленное ограничение на единицу кодирования в предварительно установленном местоположении из числа разбитых единиц кодирования. Ограничение или предварительно установленное местоположение описывается выше относительно различных вариантов осуществления, и в силу этого подробные описания означенного не предоставляются в данном документе.According to an embodiment, the image decoding equipment 100 can determine whether or not the second coding units 910a, 910b, 910c, 920a, 920b, and 920c included in the first coding unit 900 satisfy a condition for processing in a preset order, and the condition is associated with it. , should split or not, at least one of the width and height of the first unit 900 coding half along the boundary of the second unit 910a, 910b, 910c, 920a, 920b and 920c coding. Referring to FIG. 9, since the boundaries of the second coding units 910a, 910b, and 910c determined by splitting the square first coding unit 900 in the vertical direction do not split the width of the first coding unit 900 in half, it can be determined that the first coding unit 900 does not satisfy the condition for pre-processing. in the prescribed manner. In addition, since the boundaries of the second coding units 920a, 920b, and 920c determined by splitting the square first coding unit 900 in the horizontal direction do not split the height of the first coding unit 900 in half, it can be determined that the first coding unit 900 does not satisfy the condition for processing in predetermined order. When the condition is not satisfied as described above, the image decoding equipment 100 may determine a scan order discontinuity and may determine that the first coding unit 900 should be split into an odd number of coding units based on the decision result. According to an embodiment, when a coding unit is split into an odd number of coding units, the image decoding equipment 100 may impose a preset limit on the coding unit at a preset location from among the split coding units. The limitation or preset location is described above with respect to the various embodiments, and therefore, detailed descriptions of the meaning are not provided herein.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять единицы кодирования различной формы посредством разбиения первой единицы кодирования.According to an embodiment, the image decoding equipment 100 can determine different shape coding units by splitting the first coding unit.

Ссылаясь на фиг. 9, оборудование 100 декодирования изображений может разбивать квадратную первую единицу 900 кодирования или неквадратную первую единицу 930 или 950 кодирования на единицы кодирования различной формы.Referring to FIG. 9, the image decoding equipment 100 may partition the square first coding unit 900 or the non-square first coding unit 930 or 950 into different shaped coding units.

Фиг. 10 иллюстрирует то, что форма, на которую является разбиваемой вторая единица кодирования, ограничивается, когда вторая единица кодирования, имеющая неквадратную форму, которая определяется, когда оборудование 100 декодирования изображений разбивает первую 1000 единицу кодирования, удовлетворяет предварительно установленному условию, согласно варианту осуществления.Fig. 10 illustrates that the shape into which the second coding unit is split is limited when the second coding unit having a non-square shape, which is determined when the image decoding equipment 100 splits the first 1000 coding unit, satisfies a predetermined condition, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять необходимость разбивать квадратную первую единицу 1000 кодирования на неквадратные вторые единицы 1010a и 1010b или 1020a и 1020b кодирования, на основе информации режима согласно форме разбиения, которая получается посредством модуля 110 получения потоков битов. Вторые единицы 1010a и 1010b или 1020a и 1020b кодирования могут независимо разбиваться. В связи с этим, оборудование 100 декодирования изображений может определять необходимость разбивать или не разбивать каждую из вторых единиц 1010a и 1010b или 1020a и 1020b кодирования на множество единиц кодирования, на основе информации режима согласно форме разбиения каждой из вторых единиц 1010a и 1010b или 1020a и 1020b кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третьи единицы 1012a и 1012b кодирования посредством разбиения неквадратной левой второй единицы 1010a кодирования, которая определяется посредством разбиения первой единицы 1000 кодирования в вертикальном направлении, в горизонтальном направлении. Тем не менее, когда левая вторая единица 1010a кодирования разбивается в горизонтальном направлении, оборудование 100 декодирования изображений может ограничивать правую вторую единицу 1010b кодирования таким образом, что она не разбивается в горизонтальном направлении, в котором разбивается левая вторая единица 1010a кодирования. Когда третьи единицы 1014a и 1014b кодирования определяются посредством разбиения правой второй единицы 1010b кодирования в идентичном направлении, поскольку левая и правая вторые единицы 1010a кодирования и 1010b независимо разбиваются в горизонтальном направлении, третьи единицы 1012a и 1012b кодирования или 1014a и 1014b могут определяться. Тем не менее, этот случай действует идентично случаю, в котором оборудование 100 декодирования изображений разбивает первую единицу 1000 кодирования на четыре квадратных вторых единицы 1030a, 1030b, 1030c и 1030d кодирования, на основе информации режима согласно форме разбиения, и может быть неэффективным с точки зрения декодирования изображений.According to an embodiment, the image decoding equipment 100 may determine whether to split the square first coding unit 1000 into non-square second coding units 1010a and 1010b or 1020a and 1020b coding, based on the mode information according to the split shape that is obtained by the bit stream obtaining unit 110. The second coding units 1010a and 1010b or 1020a and 1020b may be independently split. In this regard, the image decoding equipment 100 may determine whether or not to split each of the second coding units 1010a and 1010b or 1020a and 1020b into a plurality of coding units based on the mode information according to the split shape of each of the second units 1010a and 1010b or 1020a, and 1020b encoding. According to an embodiment, the image decoding equipment 100 can determine the third coding units 1012a and 1012b by splitting the non-square left second coding unit 1010a, which is determined by splitting the first coding unit 1000 in the vertical direction, in the horizontal direction. However, when the left second coding unit 1010a is split in the horizontal direction, the image decoding equipment 100 may restrict the right second coding unit 1010b so that it is not split in the horizontal direction in which the left second coding unit 1010a is split. When the third coding units 1014a and 1014b are determined by splitting the right second coding unit 1010b in the same direction, since the left and right second coding units 1010a and 1010b are independently split in the horizontal direction, third coding units 1012a and 1012b or 1014a and 1014b may be determined. However, this case operates identically to the case in which the image decoding equipment 100 partitions the first coding unit 1000 into four square second coding units 1030a, 1030b, 1030c, and 1030d based on the mode information according to the split shape, and may be inefficient in terms of image decoding.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третьи единицы 1022a и 1022b или 1024a и 1024b кодирования посредством разбиения неквадратной второй единицы 1020a или 1020b кодирования, которая определяется посредством разбиения первой единицы 1000 кодирования в горизонтальном направлении, в вертикальном направлении. Тем не менее, когда вторая единица кодирования (например, верхняя вторая единица 1020a кодирования) разбивается в вертикальном направлении, по вышеописанной причине, оборудование 100 декодирования изображений может ограничивать другую вторую единицу кодирования (например, нижнюю вторую единицу 1020b кодирования) таким образом, что она не разбивается в вертикальном направлении, в котором разбивается верхняя вторая единица 1020a кодирования.According to an embodiment, the image decoding equipment 100 may determine the third coding units 1022a and 1022b or 1024a and 1024b by splitting the non-square second coding unit 1020a or 1020b, which is determined by splitting the first coding unit 1000 in the horizontal direction, in the vertical direction. However, when the second coding unit (e.g., upper second coding unit 1020a) is split in the vertical direction, for the reason described above, the image decoding equipment 100 may restrict another second coding unit (e.g., lower second coding unit 1020b) such that it is not split in the vertical direction in which the top second coding unit 1020a is split.

Фиг. 11 иллюстрирует процесс, выполняемый посредством оборудования 100 декодирования изображений, для разбиения квадратной единицы кодирования, когда информация режима согласно форме разбиения указывает то, что квадратная единица кодирования не должна разбиваться на четыре квадратных единицы кодирования, согласно варианту осуществления.Fig. 11 illustrates a process performed by the image decoding equipment 100 for splitting a square coding unit when mode information according to the split shape indicates that a square coding unit should not be split into four square coding units, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять вторые единицы 1110a и 1110b или 1120a и 1120b кодирования и т.д. посредством разбиения первой единицы 1100 кодирования, на основе информации режима согласно форме разбиения. Информация режима согласно форме разбиения может включать в себя информацию относительно различных способов разбиения единицы кодирования, но информация относительно различных способов разбиения может не включать в себя информацию для разбиения единицы кодирования на четыре квадратных единицы кодирования. Согласно такой информации режима согласно форме разбиения, оборудование 100 декодирования изображений может не разбивать квадратную первую единицу 1100 кодирования на четыре квадратных вторых единицы 1130a, 1130b, 1130c и 1130d кодирования. Оборудование 100 декодирования изображений может определять неквадратные вторые единицы 1110a и 1110b или 1120a и 1120b кодирования и т.д., на основе информации режима согласно форме разбиения.According to an embodiment, the image decoding equipment 100 may determine second coding units 1110a and 1110b or 1120a and 1120b, and so on. by splitting the first coding unit 1100 based on the mode information according to the split shape. The mode information according to the partition shape may include information on various partitioning methods of a coding unit, but information on various partitioning methods may not include information for partitioning a coding unit into four square coding units. According to such mode information according to the split shape, the image decoding equipment 100 may not split the square first coding unit 1100 into four square second coding units 1130a, 1130b, 1130c, and 1130d. The image decoding equipment 100 may determine the non-square second coding units 1110a and 1110b or 1120a and 1120b, etc., based on the mode information according to the partition shape.

Согласно варианту осуществления, оборудование 100 декодирования изображений может независимо разбивать неквадратные вторые единицы 1110a и 1110b или 1120a и 1120b кодирования и т.д. Каждая из вторых единиц 1110a и 1110b или 1120a и 1120b кодирования и т.д. может рекурсивно разбиваться в предварительно установленном порядке, и этот способ разбиения может соответствовать способу разбиения первой единицы 1100 кодирования, на основе информации режима согласно форме разбиения.According to an embodiment, the image decoding equipment 100 can independently split non-square second coding units 1110a and 1110b or 1120a and 1120b coding, etc. Each of the second coding units 1110a and 1110b or 1120a and 1120b, etc. may be recursively split in a predetermined order, and this splitting method may correspond to the splitting method of the first coding unit 1100 based on the mode information according to the split shape.

Например, оборудование 100 декодирования изображений может определять квадратные третьи единицы 1112a и 1112b кодирования посредством разбиения левой второй единицы 1110a кодирования в горизонтальном направлении и может определять квадратные третьи единицы 1114a и 1114b кодирования посредством разбиения правой второй единицы 1110b кодирования в горизонтальном направлении. Кроме того, оборудование 100 декодирования изображений может определять квадратные третьи единицы 1116a, 1116b, 1116c и 1116d кодирования посредством разбиения обеих из левой и правой вторых единиц 1110a и 1110b кодирования в горизонтальном направлении. В этом случае, единицы кодирования, имеющие форму, идентичную форме четырех квадратных вторых единиц 1130a, 1130b, 1130c и 1130d кодирования, разбитых из первой единицы 1100 кодирования, могут определяться.For example, the image decoding equipment 100 may determine the square third coding units 1112a and 1112b by splitting the left second coding unit 1110a in the horizontal direction, and may determine the square third coding units 1114a and 1114b by splitting the right second coding unit 1110b in the horizontal direction. In addition, the image decoding equipment 100 can determine the square third coding units 1116a, 1116b, 1116c, and 1116d by splitting both of the left and right second coding units 1110a and 1110b in the horizontal direction. In this case, coding units having the same shape as the four square second coding units 1130a, 1130b, 1130c, and 1130d split from the first coding unit 1100 may be determined.

В качестве другого примера, оборудование 100 декодирования изображений может определять квадратные третьи единицы 1122a и 1122b кодирования посредством разбиения верхней второй единицы 1120a кодирования в вертикальном направлении и может определять квадратные третьи единицы 1124a и 1124b кодирования посредством разбиения нижней второй единицы 1120b кодирования в вертикальном направлении. Кроме того, оборудование 100 декодирования изображений может определять квадратные третьи единицы 1126a, 1126b, 1126c и 1126d кодирования посредством разбиения обеих из верхней и нижней вторых единиц 1120a и 1120b кодирования в вертикальном направлении. В этом случае, единицы кодирования, имеющие форму, идентичную форме четырех квадратных вторых единиц 1130a, 1130b, 1130c и 1130d кодирования, разбитых из первой единицы 1100 кодирования, могут определяться.As another example, the image decoding equipment 100 may determine the square third coding units 1122a and 1122b by splitting the upper second coding unit 1120a in the vertical direction, and may determine the square third coding units 1124a and 1124b by splitting the lower second coding unit 1120b in the vertical direction. In addition, the image decoding equipment 100 can determine the square third coding units 1126a, 1126b, 1126c, and 1126d by splitting both of the upper and lower second coding units 1120a and 1120b in the vertical direction. In this case, coding units having the same shape as the four square second coding units 1130a, 1130b, 1130c, and 1130d split from the first coding unit 1100 may be determined.

Фиг. 12 иллюстрирует то, что порядок обработки между множеством единиц кодирования может изменяться в зависимости от процесса разбиения единицы кодирования, согласно варианту осуществления.Fig. 12 illustrates that the processing order between the plurality of coding units may change depending on the coding unit partitioning process according to the embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать первую единицу 1200 кодирования, на основе информации режима согласно форме разбиения. Когда форма блока указывает квадратную форму, и информация режима согласно форме разбиения указывает необходимость разбивать первую единицу 1200 кодирования, по меньшей мере, в одном из горизонтального и вертикального направлений, оборудование 100 декодирования изображений может определять вторые единицы 1210a и 1210b или 1220a и 1220b кодирования и т.д. посредством разбиения первой единицы 1200 кодирования. Ссылаясь на фиг. 12, неквадратные вторые единицы 1210a и 1210b или 1220a и 1220b кодирования, определенные посредством разбиения первой единицы 1200 кодирования только в горизонтальном направлении или в вертикальном направлении, могут независимо разбиваться на основе информации режима согласно форме разбиения каждой единицы кодирования. Например, оборудование 100 декодирования изображений может определять третьи единицы 1216a, 1216b, 1216c и 1216d кодирования посредством разбиения вторых единиц 1210a и 1210b кодирования, которые формируются посредством разбиения первой единицы 1200 кодирования в вертикальном направлении, в горизонтальном направлении и может определять третьи единицы 1226a, 1226b, 1226c и 1226d кодирования посредством разбиения вторых единиц 1220a и 1220b кодирования, которые формируются посредством разбиения первой единицы 1200 кодирования в горизонтальном направлении, в вертикальном направлении. Операция разбиения вторых единиц 1210a и 1210b или 1220a и 1220b кодирования описывается выше относительно фиг. 11, и в силу этого подробные описания означенного не предоставляются в данном документе.According to an embodiment, the image decoding equipment 100 can split the first coding unit 1200 based on the mode information according to the split shape. When the block shape indicates a square shape, and the mode information according to the split shape indicates the need to split the first coding unit 1200 in at least one of the horizontal and vertical directions, the image decoding equipment 100 may determine the second coding units 1210a and 1210b or 1220a and 1220b, and etc. by splitting the first coding unit 1200 . Referring to FIG. 12, non-square second coding units 1210a and 1210b or 1220a and 1220b determined by splitting the first coding unit 1200 only in the horizontal direction or in the vertical direction can be independently split based on the mode information according to the split shape of each coding unit. For example, the image decoding equipment 100 may determine the third coding units 1216a, 1216b, 1216c, and 1216d by splitting the second coding units 1210a and 1210b, which are generated by splitting the first coding unit 1200 in the vertical direction, in the horizontal direction, and may determine the third coding units 1226a, 1226b , 1226c and 1226d coding by splitting the second coding units 1220a and 1220b, which are generated by splitting the first coding unit 1200 in the horizontal direction, in the vertical direction. The operation of splitting the second coding units 1210a and 1210b or 1220a and 1220b is described above with respect to FIG. 11, and as such, detailed descriptions of what is meant are not provided herein.

Согласно варианту осуществления, оборудование 100 декодирования изображений может обрабатывать единицы кодирования в предварительно установленном порядке. Операция обработки единиц кодирования в предварительно установленном порядке описывается выше относительно фиг. 7, и в силу этого подробные описания означенного не предоставляются в данном документе. Ссылаясь на фиг. 12, оборудование 100 декодирования изображений может определять четыре квадратных третьих единицы 1216a, 1216b, 1216c и 1216d и 1226a, 1226b, 1226c и 1226d кодирования посредством разбиения квадратной первой единицы 1200 кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять порядки обработки третьих единиц 1216a, 1216b, 1216c и 1216d и 1226a, 1226b, 1226c и 1226d кодирования на основе формы разбиения, посредством которой разбивается первая единица 1200 кодирования.According to an embodiment, the image decoding equipment 100 can process coding units in a predetermined order. The operation of processing coding units in a preset order is described above with respect to FIG. 7, and as such, detailed descriptions of what is meant are not provided herein. Referring to FIG. 12, the image decoding equipment 100 may determine four square third coding units 1216a, 1216b, 1216c, and 1216d and 1226a, 1226b, 1226c, and 1226d by splitting the square first coding unit 1200. According to an embodiment, the image decoding equipment 100 may determine the processing orders of the third coding units 1216a, 1216b, 1216c, and 1216d and 1226a, 1226b, 1226c, and 1226d based on the split shape by which the first coding unit 1200 is split.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третьи единицы 1216a, 1216b, 1216c и 1216d кодирования посредством разбиения вторых единиц 1210a и 1210b кодирования, сформированных посредством разбиения первой единицы 1200 кодирования в вертикальном направлении, в горизонтальном направлении, и может обрабатывать третьи единицы 1216a, 1216b, 1216c и 1216d кодирования в порядке 1217 обработки для первоначальной обработки третьих единиц 1226a и 1226c кодирования, которые включаются в левую вторую единицу 1210a кодирования, в вертикальном направлении, и затем обработки третьей единицы 1216b и 1216d кодирования, которые включаются в правую вторую единицу 1210b кодирования, в вертикальном направлении.According to an embodiment, the image decoding equipment 100 may determine the third coding units 1216a, 1216b, 1216c, and 1216d by splitting the second coding units 1210a and 1210b generated by splitting the first coding unit 1200 in the vertical direction, in the horizontal direction, and may process the third coding units 1216a , 1216b, 1216c and 1216d coding in the processing order 1217 for initially processing the third coding units 1226a and 1226c that are included in the left second coding unit 1210a in the vertical direction, and then processing the third coding unit 1216b and 1216d that are included in the right second coding unit 1210b encoding, in the vertical direction.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третьи единицы 1226a, 1226b, 1226c и 1226d кодирования посредством разбиения вторых единиц 1220a и 1220b кодирования, сформированных посредством разбиения первой единицы 1200 кодирования в горизонтальном направлении, в вертикальном направлении, и может обрабатывать третьи единицы 1226a, 1226b, 1226c и 1226d кодирования в порядке 1227 обработки для первоначальной обработки третьих единиц 1226a и 1226b кодирования, которые включаются в верхнюю вторую единицу 1220a кодирования, в горизонтальном направлении, и затем обработки третьей единицы 1226c и 1226d кодирования, которые включаются в нижнюю вторую единицу 1220b кодирования, в горизонтальном направлении.According to an embodiment, the image decoding equipment 100 may determine the third coding units 1226a, 1226b, 1226c, and 1226d by splitting the second coding units 1220a and 1220b generated by splitting the first coding unit 1200 in the horizontal direction, in the vertical direction, and may process the third coding units 1226a , 1226b, 1226c and 1226d coding in the processing order 1227 for initially processing the third coding units 1226a and 1226b that are included in the upper second coding unit 1220a in the horizontal direction, and then processing the third coding unit 1226c and 1226d that are included in the lower second coding unit 1220b encoding, in the horizontal direction.

Ссылаясь на фиг. 12, квадратные третьи единицы 1216a, 1216b, 1216c и 1216d и 1226a, 1226b, 1226c и 1226d кодирования могут определяться посредством разбиения вторых единиц 1210a и 1210b и 1220a и 1220b кодирования, соответственно. Хотя вторые единицы 1210a и 1210b кодирования определяются посредством разбиения первой единицы 1200 кодирования в вертикальном направлении по-другому по сравнению со вторыми единицами 1220a и 1220b кодирования, которые определяются посредством разбиения первой единицы 1200 кодирования в горизонтальном направлении, третьи единицы 1216a, 1216b, 1216c и 1216d и 1226a, 1226b, 1226c и 1226d кодирования, разбитые из нее, в конечном счете показывают единицы кодирования идентичной формы, разбитые из первой единицы 1200 кодирования. В связи с этим, посредством рекурсивного разбиения единицы кодирования различными способами на основе информации режима согласно форме разбиения, оборудование 100 декодирования изображений может обрабатывать множество единиц кодирования в различных порядках, даже когда единицы кодирования в конечном счете определяются как имеющие идентичную форму.Referring to FIG. 12, square third coding units 1216a, 1216b, 1216c, and 1216d and 1226a, 1226b, 1226c, and 1226d may be determined by splitting second coding units 1210a and 1210b and 1220a and 1220b, respectively. Although the second coding units 1210a and 1210b are determined by splitting the first coding unit 1200 in the vertical direction differently compared to the second coding units 1220a and 1220b, which are defined by splitting the first coding unit 1200 in the horizontal direction, the third units 1216a, 1216b, 1216c and 1216d and 1226a, 1226b, 1226c and 1226d encodings broken out of it eventually show identical shape coding units broken down from the first encoding unit 1200. In this regard, by recursively splitting a coding unit in various ways based on the mode information according to the split shape, the image decoding equipment 100 can process a plurality of coding units in different orders even when the coding units are ultimately determined to have the same shape.

Фиг. 13 иллюстрирует процесс определения глубины единицы кодирования по мере того, как форма и размер единицы кодирования изменяются, когда единица кодирования рекурсивно разбивается таким образом, что множество единиц кодирования определяются, согласно варианту осуществления.Fig. 13 illustrates a process for determining the depth of a coding unit as the shape and size of a coding unit change when a coding unit is recursively split such that a plurality of coding units are determined, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять глубину единицы кодирования, на основе предварительно установленного критерия. Например, предварительно установленный критерий может представлять собой длину длинной стороны единицы кодирования. Когда длина длинной стороны единицы кодирования перед разбиением в 2n раз (n>0) превышает длину длинной стороны разбитой текущей единицы кодирования, оборудование 100 декодирования изображений может определять то, что глубина текущей единицы кодирования увеличивается относительно глубины единицы кодирования перед разбиением, на n. В нижеприведенном описании, единица кодирования, имеющая увеличенную глубину, выражается как единица кодирования меньшей глубины.According to an embodiment, the image decoding equipment 100 can determine the depth of a coding unit based on a predetermined criterion. For example, the predetermined criterion may be the length of the long side of the coding unit. When the length of the long side of the coding unit before splitting is 2n times (n>0) the length of the long side of the splitted current coding unit, the image decoding equipment 100 may determine that the depth of the current coding unit is increased relative to the depth of the coding unit before splitting, by n. In the description below, a coding unit having an increased depth is expressed as a coding unit of a smaller depth.

Ссылаясь на фиг. 13, согласно варианту осуществления, оборудование 100 декодирования изображений может определять вторую единицу 1302 кодирования и третью единицу 1304 кодирования меньших глубин посредством разбиения квадратной первой единицы 1300 кодирования на основе информации формы блоков, указывающей квадратную форму (например, информация формы блоков может выражаться как "0: квадратная"). При условии, что размер квадратной первой единицы 1300 кодирования составляет 2Nx2N, вторая единица 1302 кодирования, определенная посредством разбиения ширины и высоты первой единицы 1300 кодирования на 1/2, может иметь размер в NxN. Кроме того, третья единица 1304 кодирования, определенная посредством разбиения ширины и высоты второй единицы 1302 кодирования на 1/2, может иметь размер в N/2xN/2. В этом случае, ширина и высота третьей единицы 1304 кодирования составляют 1/4 относительно ширины и высоты первой единицы 1300 кодирования. Когда глубина первой единицы 1300 кодирования составляет D, глубина второй единицы 1302 кодирования, ширина и высота которой составляют 1/2 относительно ширины и высоты первой единицы 1300 кодирования, может составлять D+1, и глубина третьей единицы 1304 кодирования, ширина и высота которой составляют 1/4 относительно ширины и высоты первой единицы 1300 кодирования, может составлять D+2.Referring to FIG. 13, according to an embodiment, the image decoding equipment 100 can determine the second coding unit 1302 and the third coding unit 1304 of smaller depths by splitting the square first coding unit 1300 based on the block shape information indicating a square shape (for example, the block shape information can be expressed as "0 : square"). Assuming that the size of the square first coding unit 1300 is 2Nx2N, the second coding unit 1302, determined by dividing the width and height of the first coding unit 1300 by 1/2, may have a size of NxN. In addition, the third coding unit 1304, determined by dividing the width and height of the second coding unit 1302 by 1/2, may have a size of N/2xN/2. In this case, the width and height of the third coding unit 1304 is 1/4 of the width and height of the first coding unit 1300. When the depth of the first coding unit 1300 is D, the depth of the second coding unit 1302, whose width and height are 1/2 of the width and height of the first coding unit 1300, may be D+1, and the depth of the third coding unit 1304, whose width and height are 1/4 with respect to the width and height of the first coding unit 1300 may be D+2.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять вторую единицу 1312 или 1322 кодирования и третью единицу 1314 или 1324 кодирования меньших глубин посредством разбиения неквадратной первой единицы 1310 или 1320 кодирования на основе информации формы блоков, указывающей неквадратную форму (например, информация формы блоков может выражаться как "1: NS_VER", указывающая неквадратную форму, высота которой превышает ширину, либо как "2: NS_HOR", указывающая неквадратную форму, ширина которой превышает высоту).According to an embodiment, the image decoding equipment 100 may determine the second coding unit 1312 or 1322 and the third lower depth coding unit 1314 or 1324 by splitting the non-square first coding unit 1310 or 1320 based on block shape information indicating a non-square shape (e.g., block shape information may expressed as "1: NS_VER" indicating a non-square shape whose height exceeds the width, or as "2: NS_HOR" indicating a non-square shape whose width exceeds the height).

Оборудование 100 декодирования изображений может определять вторую единицу 1302, 1312 или 1322 кодирования посредством разбиения, по меньшей мере, одного из ширины и высоты первой единицы 1310 кодирования, имеющей размер в Nx2N. Таким образом, оборудование 100 декодирования изображений может определять вторую единицу 1302 кодирования, имеющую размер в NxN, или вторую единицу 1322 кодирования, имеющую размер в NxN/2, посредством разбиения первой единицы 1310 кодирования в горизонтальном направлении, либо может определять вторую единицу 1312 кодирования, имеющую размер в N/2xN, посредством разбиения первой единицы 1310 кодирования в горизонтальном и вертикальном направлениях.The image decoding equipment 100 may determine the second coding unit 1302, 1312, or 1322 by splitting at least one of the width and height of the first coding unit 1310 having a size of Nx2N. Thus, the image decoding equipment 100 may determine a second coding unit 1302 having a size of NxN, or a second coding unit 1322 having a size of NxN/2, by splitting the first coding unit 1310 in the horizontal direction, or may determine the second coding unit 1312, having a size in N/2xN by splitting the first coding unit 1310 in the horizontal and vertical directions.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять вторую единицу 1302, 1312 или 1322 кодирования посредством разбиения, по меньшей мере, одного из ширины и высоты первой единицы 1320 кодирования, имеющей размер в 2NxN. Таким образом, оборудование 100 декодирования изображений может определять вторую единицу 1302 кодирования, имеющую размер в NxN, или вторую единицу 1312 кодирования, имеющую размер в N/2xN, посредством разбиения первой единицы 1320 кодирования в вертикальном направлении, либо может определять вторую единицу 1322 кодирования, имеющую размер в NxN/2, посредством разбиения первой единицы 1320 кодирования в горизонтальном и вертикальном направлениях.According to an embodiment, the image decoding equipment 100 may determine the second coding unit 1302, 1312, or 1322 by splitting at least one of the width and height of the first coding unit 1320 having a size of 2NxN. Thus, the image decoding equipment 100 may determine a second coding unit 1302 having a size of NxN, or a second coding unit 1312 having a size of N/2xN, by splitting the first coding unit 1320 in the vertical direction, or may determine the second coding unit 1322, having a size in NxN/2, by splitting the first coding unit 1320 in the horizontal and vertical directions.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третью единицу 1304, 1314 или 1324 кодирования посредством разбиения, по меньшей мере, одного из ширины и высоты второй единицы 1302 кодирования, имеющей размер в NxN. Таким образом, оборудование 100 декодирования изображений может определять третью единицу 1304 кодирования, имеющую размер в N/2xN/2, третью единицу 1314 кодирования, имеющую размер в N/4xN/2, или третью единицу 1324 кодирования, имеющую размер в N/2xN/4, посредством разбиения второй единицы 1302 кодирования в вертикальном и горизонтальном направлениях.According to an embodiment, the image decoding equipment 100 may determine the third coding unit 1304, 1314, or 1324 by splitting at least one of the width and height of the second coding unit 1302 having a size of NxN. Thus, the image decoding equipment 100 may determine a third coding unit 1304 having a size of N/2xN/2, a third coding unit 1314 having a size of N/4xN/2, or a third coding unit 1324 having a size of N/2xN/ 4 by splitting the second coding unit 1302 in the vertical and horizontal directions.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третью единицу 1304, 1314 или 1324 кодирования посредством разбиения, по меньшей мере, одного из ширины и высоты второй единицы 1312 кодирования, имеющей размер в N/2xN. Таким образом, оборудование 100 декодирования изображений может определять третью единицу 1304 кодирования, имеющую размер в N/2xN/2, или третью единицу 1324 кодирования, имеющую размер в N/2xN/4, посредством разбиения второй единицы 1312 кодирования в горизонтальном направлении, либо может определять третью единицу 1314 кодирования, имеющую размер в N/4xN/2, посредством разбиения второй единицы 1312 кодирования в вертикальном и горизонтальном направлениях.According to an embodiment, the image decoding equipment 100 may determine the third coding unit 1304, 1314, or 1324 by splitting at least one of the width and height of the second coding unit 1312 having a size of N/2xN. Thus, the image decoding equipment 100 may determine a third coding unit 1304 having a size of N/2xN/2 or a third coding unit 1324 having a size of N/2xN/4 by splitting the second coding unit 1312 in the horizontal direction, or may determine a third coding unit 1314 having a size of N/4xN/2 by splitting the second coding unit 1312 in the vertical and horizontal directions.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять третью единицу 1304, 1314 или 1324 кодирования посредством разбиения, по меньшей мере, одного из ширины и высоты второй единицы 1322 кодирования, имеющей размер в NxN/2. Таким образом, оборудование 100 декодирования изображений может определять третью единицу 1304 кодирования, имеющую размер в N/2xN/2, или третью единицу 1314 кодирования, имеющую размер в N/4xN/2, посредством разбиения второй единицы 1322 кодирования в вертикальном направлении, либо может определять третью единицу 1324 кодирования, имеющую размер в N/2xN/4, посредством разбиения второй единицы 1322 кодирования в вертикальном и горизонтальном направлениях.According to an embodiment, the image decoding equipment 100 may determine the third coding unit 1304, 1314, or 1324 by splitting at least one of the width and height of the second coding unit 1322 having a size of NxN/2. Thus, the image decoding equipment 100 may determine a third coding unit 1304 having a size of N/2xN/2 or a third coding unit 1314 having a size of N/4xN/2 by splitting the second coding unit 1322 in the vertical direction, or may determine a third coding unit 1324 having a size of N/2xN/4 by splitting the second coding unit 1322 in the vertical and horizontal directions.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать квадратную единицу 1300, 1302 или 1304 кодирования в горизонтальном или вертикальном направлении. Например, оборудование 100 декодирования изображений может определять первую единицу 1310 кодирования, имеющую размер в Nx2N, посредством разбиения первой единицы 1300 кодирования, имеющей размер в 2Nx2N, в вертикальном направлении, либо может определять первую единицу 1320 кодирования, имеющую размер в 2NxN, посредством разбиения первой единицы 1300 кодирования в горизонтальном направлении. Согласно варианту осуществления, когда глубина определяется на основе длины самой длинной стороны единицы кодирования, глубина единицы кодирования, определенная посредством разбиения первой единицы 1300 кодирования, имеющей размер в 2Nx2N, в горизонтальном или вертикальном направлении, может быть идентичной глубине первой единицы 1300 кодирования.According to an embodiment, the image decoding equipment 100 may partition a square coding unit 1300, 1302, or 1304 in a horizontal or vertical direction. For example, the image decoding equipment 100 may determine the first coding unit 1310 having a size of Nx2N by splitting the first coding unit 1300 having a size of 2Nx2N in the vertical direction, or may determine the first coding unit 1320 having a size of 2NxN by splitting the first coding units 1300 in the horizontal direction. According to an embodiment, when the depth is determined based on the length of the longest side of the coding unit, the depth of the coding unit determined by splitting the first coding unit 1300 having a size of 2Nx2N in the horizontal or vertical direction may be identical to the depth of the first coding unit 1300.

Согласно варианту осуществления, ширина и высота третьей единицы 1314 или 1324 кодирования могут составлять 1/4 относительно ширины и высоты первой единицы 1310 или 1320 кодирования. Когда глубина первой единицы 1310 или 1320 кодирования составляет D, глубина второй единицы 1312 или 1322 кодирования, ширина и высота которой составляют 1/2 относительно ширины и высоты первой единицы 1310 или 1320 кодирования, может составлять D+1, и глубина третьей единицы 1314 или 1324 кодирования, ширина и высота которой составляют 1/4 относительно ширины и высоты первой единицы 1310 или 1320 кодирования, может составлять D+2.According to an embodiment, the width and height of the third coding unit 1314 or 1324 may be 1/4 of the width and height of the first coding unit 1310 or 1320. When the depth of the first coding unit 1310 or 1320 is D, the depth of the second coding unit 1312 or 1322 whose width and height is 1/2 of the width and height of the first coding unit 1310 or 1320 may be D+1, and the depth of the third coding unit 1314 or An encoding 1324 whose width and height is 1/4 of the width and height of the first encoding unit 1310 or 1320 may be D+2.

Фиг. 14 иллюстрирует глубины, которые являются определимыми на основе форм и размеров единиц кодирования и индексов частей (PID) для различения единиц кодирования, согласно варианту осуществления.Fig. 14 illustrates depths that are definable based on shapes and sizes of coding units and part indices (PIDs) for distinguishing coding units, according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять вторые единицы кодирования различной формы посредством разбиения квадратной первой единицы 1400 кодирования. Ссылаясь на фиг. 14, оборудование 100 декодирования изображений может определять вторые единицы 1402a и 1402b, 1404a и 1404b и 1406a, 1406b, 1406c и 1406d кодирования посредством разбиения первой единицы 1400 кодирования, по меньшей мере, в одном из вертикального и горизонтального направлений на основе информации режима согласно форме разбиения. Таким образом, оборудование 100 декодирования изображений может определять вторые единицы 1402a и 1402b, 1404a и 1404b и 1406a, 1406b, 1406c и 1406d кодирования, на основе информации режима согласно форме разбиения первой единицы 1400 кодирования.According to an embodiment, the image decoding equipment 100 can determine second coding units of different shapes by splitting the square of the first coding unit 1400. Referring to FIG. 14, the image decoding equipment 100 can determine the second encoding units 1402a and 1402b, 1404a and 1404b and 1406a, 1406b, 1406c and 1406d by splitting the first encoding unit 1400 in at least one of the vertical and horizontal directions based on the mode information according to the form partitions. Thus, the image decoding equipment 100 can determine the second coding units 1402a and 1402b, 1404a and 1404b and 1406a, 1406b, 1406c and 1406d, based on the mode information according to the split shape of the first coding unit 1400.

Согласно варианту осуществления, глубины вторых единиц 1402a и 1402b, 1404a и 1404b и 1406a, 1406b, 1406c и 1406d кодирования, которые определяются на основе информации режима согласно форме разбиения квадратной первой единицы 1400 кодирования, могут определяться на основе длины их длинной стороны. Например, поскольку длина стороны квадратной первой единицы 1400 кодирования равна длине длинной стороны неквадратных вторых единиц 1402a и 1402b и 1404a и 1404b кодирования, первая единица 1400 кодирования и неквадратные вторые единицы 1402a и 1402b и 1404a и 1404b кодирования могут иметь идентичную глубину, например, D. Тем не менее, когда оборудование 100 декодирования изображений разбивает первую единицу 1400 кодирования на четыре квадратных вторых единицы 1406a, 1406b, 1406c и 1406d кодирования на основе информации режима согласно форме разбиения, поскольку длина стороны квадратных вторых единиц 1406a, 1406b, 1406c и 1406d кодирования составляет 1/2 относительно длины стороны первой единицы 1400 кодирования, глубина вторых единиц 1406a, 1406b, 1406c и 1406d кодирования может составлять D+1, что больше глубины D первой единицы 1400 кодирования на 1.According to an embodiment, the depths of the second coding units 1402a and 1402b, 1404a and 1404b and 1406a, 1406b, 1406c and 1406d, which are determined based on the mode information according to the split shape of the square first coding unit 1400, may be determined based on the length of their long side. For example, since the side length of the square first coding unit 1400 is equal to the length of the long side of the non-square second coding units 1402a and 1402b and 1404a and 1404b coding, the first coding unit 1400 and the non-square second coding units 1402a and 1402b and 1404a and 1404b coding may have the same depth, for example, D However, when the image decoding equipment 100 splits the first coding unit 1400 into four square second coding units 1406a, 1406b, 1406c, and 1406d based on the mode information according to the split shape, since the side length of the square second coding units 1406a, 1406b, 1406c, and 1406d is 1/2 of the side length of the first coding unit 1400, the depth of the second coding units 1406a, 1406b, 1406c, and 1406d may be D+1, which is greater than the depth D of the first coding unit 1400 by 1.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять множество вторых единиц 1412a и 1412b и 1414a, 1414b и 1414c кодирования посредством разбиения первой единицы 1410 кодирования, высота которой превышает ширину, в горизонтальном направлении на основе информации режима согласно форме разбиения. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять множество вторых единиц 1422a и 1422b и 1424a, 1424b и 1424c кодирования посредством разбиения первой единицы 1420 кодирования, ширина которой превышает высоту, в вертикальном направлении на основе информации режима согласно форме разбиения.According to an embodiment, the image decoding equipment 100 can determine a plurality of second coding units 1412a and 1412b and 1414a, 1414b and 1414c by splitting the first coding unit 1410 whose height exceeds the width in the horizontal direction based on the mode information according to the split shape. According to an embodiment, the image decoding equipment 100 can determine a plurality of second coding units 1422a and 1422b and 1424a, 1424b and 1424c by splitting the first coding unit 1420 whose width exceeds the height in the vertical direction based on the mode information according to the split shape.

Согласно варианту осуществления, глубина вторых единиц 1412a и 1412b и 1414a, 1414b и 1414c или 1422a и 1422b и 1424a, 1424b и 1424c кодирования, которая определяется на основе информации режима согласно форме разбиения неквадратной первой единицы 1410 или 1420 кодирования, может определяться на основе длины их длинной стороны. Например, поскольку длина стороны квадратных вторых единиц 1412a и 1412b кодирования составляет 1/2 относительно длины длинной стороны первой единицы 1410 кодирования, имеющей неквадратную форму, высота которой превышает ширину, глубина квадратных вторых единиц 1412a и 1412b кодирования составляет D+1, что больше глубины D неквадратной первой единицы 1410 кодирования на 1.According to an embodiment, the depth of the second coding units 1412a and 1412b and 1414a, 1414b and 1414c or 1422a and 1422b and 1424a, 1424b and 1424c, which is determined based on the mode information according to the split shape of the non-square first coding unit 1410 or 1420, may be determined based on the length their long side. For example, since the length of the side of the square second coding units 1412a and 1412b is 1/2 relative to the length of the long side of the first coding unit 1410 having a non-square shape whose height exceeds the width, the depth of the square second coding units 1412a and 1412b is D+1, which is greater than the depth D non-square first coding unit 1410 by 1.

Кроме того, оборудование 100 декодирования изображений может разбивать неквадратную первую единицу 1410 кодирования на нечетное число вторых единиц 1414a, 1414b и 1414c кодирования на основе информации режима согласно форме разбиения. Нечетное число вторых единиц 1414a, 1414b и 1414c кодирования может включать в себя неквадратные вторые единицы 1414a и 1414c кодирования и квадратную вторую единицу 1414b кодирования. В этом случае, поскольку длина длинной стороны неквадратных вторых единиц 1414a и 1414c кодирования и длина стороны квадратной второй единицы 1414b кодирования составляют 1/2 относительно длины длинной стороны первой единицы 1410 кодирования, глубина вторых единиц 1414a, 1414b и 1414c кодирования может составлять D+1, что больше глубины D неквадратной первой единицы 1410 кодирования на 1. Оборудование 100 декодирования изображений может определять глубины единиц кодирования, разбитых из первой единицы 1420 кодирования, имеющей неквадратную форму, ширина которой превышает высоту, посредством использования вышеописанного способа определения глубин единиц кодирования, разбитых из первой единицы 1410 кодирования.In addition, the image decoding equipment 100 can partition the non-square first coding unit 1410 into an odd number of second coding units 1414a, 1414b, and 1414c based on the mode information according to the split shape. An odd number of second coding units 1414a, 1414b, and 1414c may include non-square second coding units 1414a and 1414c and a square second coding unit 1414b. In this case, since the long side length of the non-square second coding units 1414a and 1414c and the side length of the square second coding unit 1414b are 1/2 of the long side length of the first coding unit 1410, the depth of the second coding units 1414a, 1414b, and 1414c may be D+1 , which is greater than the depth D of the non-square first coding unit 1410 by 1. The image decoding equipment 100 can determine the depths of coding units split from the first coding unit 1420 having a non-square shape whose width exceeds the height by using the above-described method for determining the depths of coding units split from the first unit 1410 coding.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять PID для идентификации разбитых единиц кодирования, на основе отношения размеров между единицами кодирования, когда нечетное число разбитых единиц кодирования не имеют равных размеров. Ссылаясь на фиг. 14, единица 1414b кодирования центрального местоположения из нечетного числа разбитых единиц 1414a, 1414b и 1414c кодирования может иметь ширину, равную ширине других единиц 1414a и 1414c кодирования, и высоту, которая в два раза больше высоты других единиц 1414a и 1414c кодирования. Таким образом, в этом случае, единица 1414b кодирования в центральном местоположении может включать в себя две из другой единицы 1414a или 1414c кодирования. Следовательно, когда PID единицы 1414b кодирования в центральном местоположении равен 1 на основе порядка сканирования, PID единицы 1414c кодирования, расположенной рядом с единицей 1414b кодирования, может увеличиваться на 2 и в силу этого может быть равным 3. Таким образом, разрывность в значениях PID может присутствовать. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять то, не имеют либо имеют нечетное число разбитых единиц кодирования равные размеры, на основе того, присутствует или нет разрывность в PID для идентификации разбитых единиц кодирования.According to an embodiment, the image decoding equipment 100 can determine a PID for identifying split coding units based on a size ratio between coding units when an odd number of split coding units do not have equal sizes. Referring to FIG. 14, a center location coding unit 1414b of an odd number of split coding units 1414a, 1414b, and 1414c may have a width equal to the width of the other coding units 1414a and 1414c and a height that is twice the height of the other coding units 1414a and 1414c. Thus, in this case, the coding unit 1414b at the central location may include two of the other coding unit 1414a or 1414c. Therefore, when the PID of the coding unit 1414b at the central location is 1 based on the scan order, the PID of the coding unit 1414c adjacent to the coding unit 1414b may increase by 2, and thus may be 3. Thus, discontinuity in PID values may be present. According to an embodiment, the image decoding equipment 100 can determine whether or not an odd number of split coding units have equal sizes based on whether or not a discontinuity is present in the PID to identify split coding units.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять то, следует или нет использовать конкретный способ разбиения, на основе значений PID для идентификации множества единиц кодирования, определенных посредством разбиения текущей единицы кодирования. Ссылаясь на фиг. 14, оборудование 100 декодирования изображений может определять четное число единиц 1412a и 1412b кодирования или нечетное число единиц 1414a, 1414b и 1414c кодирования посредством разбиения первой единицы 1410 кодирования, имеющей прямоугольную форму, высота которой превышает ширину. Оборудование 100 декодирования изображений может использовать PID, указывающие соответствующие единицы кодирования, с этим чтобы идентифицировать соответствующие единицы кодирования. Согласно варианту осуществления, PID может получаться из выборки в предварительно установленном местоположении каждой единицы кодирования (например, верхней левой выборки).According to an embodiment, the image decoding equipment 100 can determine whether or not to use a particular splitting method based on PID values to identify a plurality of coding units determined by splitting the current coding unit. Referring to FIG. 14, the image decoding equipment 100 may determine an even number of coding units 1412a and 1412b or an odd number of coding units 1414a, 1414b and 1414c by splitting the first coding unit 1410 having a rectangular shape whose height exceeds the width. The image decoding equipment 100 may use the PIDs indicating the respective coding units so as to identify the respective coding units. According to an embodiment, the PID may be derived from a sample at a predetermined location of each coding unit (eg, top left sample).

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять единицу кодирования в предварительно установленном местоположении из числа разбитых единиц кодирования, посредством использования PID для различения единиц кодирования. Согласно варианту осуществления, когда информация режима согласно форме разбиения первой единицы 1410 кодирования, имеющей прямоугольную форму, высота которой превышает ширину, указывает необходимость разбивать единицу кодирования на три единицы кодирования, оборудование 100 декодирования изображений может разбивать первую единицу 1410 кодирования на три единицы 1414a, 1414b и 1414c кодирования. Оборудование 100 декодирования изображений может назначать PID для каждой из трех единиц 1414a, 1414b и 1414c кодирования. Оборудование 100 декодирования изображений может сравнивать PID нечетного числа разбитых единиц кодирования, чтобы определять единицу кодирования в центральном местоположении из числа единиц кодирования. Оборудование 100 декодирования изображений может определять единицу 1414b кодирования, имеющую PID, соответствующий среднему значению, из PID единиц кодирования, в качестве единицы кодирования в центральном местоположении из числа единиц кодирования, определенных посредством разбиения первой единицы 1410 кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять PID для различения разбитых единиц кодирования, на основе отношения размеров между единицами кодирования, когда разбитые единицы кодирования не имеют равных размеров. Ссылаясь на фиг. 14, единица 1414b кодирования, сформированная посредством разбиения первой единицы 1410 кодирования, может иметь ширину, равную ширине других единиц 1414a и 1414c кодирования, и высоту, которая в два раза больше высоты других единиц 1414a и 1414c кодирования. В этом случае, когда PID единицы 1414b кодирования в центральном местоположении равен 1, PID единицы 1414c кодирования, расположенной рядом с единицей 1414b кодирования, может увеличиваться на 2 и в силу этого может быть равным 3. Когда PID равномерно не увеличивается, как описано выше, оборудование 100 декодирования изображений может определять то, что единица кодирования разбивается на множество единиц кодирования, включающих в себя единицу кодирования, имеющую размер, отличающийся от размера других единиц кодирования. Согласно варианту осуществления, когда информация режима согласно форме разбиения указывает необходимость разбивать единицу кодирования на нечетное число единиц кодирования, оборудование 100 декодирования изображений может разбивать текущую единицу кодирования таким образом, что единица кодирования предварительно установленного местоположения из нечетного числа единиц кодирования (например, единица кодирования центрального местоположения) имеет размер, отличающийся от размера других единиц кодирования. В этом случае, оборудование 100 декодирования изображений может определять единицу кодирования центрального местоположения, которое имеет другой размер, посредством использования PID единиц кодирования. Тем не менее, PID и размер или местоположение единицы кодирования предварительно установленного местоположения не ограничены вышеописанными примерами, и могут использоваться различные PID и различные местоположения и размеры единиц кодирования.According to an embodiment, the image decoding equipment 100 can determine a coding unit at a preset location from among the split coding units by using a PID to distinguish between coding units. According to an embodiment, when the mode information according to the split shape of the first coding unit 1410 having a rectangular shape whose height exceeds the width indicates the need to split the coding unit into three coding units, the image decoding equipment 100 may split the first coding unit 1410 into three units 1414a, 1414b and 1414c encoding. The image decoding equipment 100 may assign a PID to each of the three coding units 1414a, 1414b, and 1414c. The image decoding equipment 100 may compare the PIDs of an odd number of split coding units to determine a coding unit at a central location from among the coding units. The image decoding equipment 100 may determine the coding unit 1414b having the PID corresponding to the average of the coding unit PIDs as the coding unit at the central location from among the coding units determined by splitting the first coding unit 1410. According to an embodiment, the image decoding equipment 100 may determine a PID for distinguishing split coding units based on a size ratio between coding units when the split coding units do not have equal sizes. Referring to FIG. 14, a coding unit 1414b generated by splitting the first coding unit 1410 may have a width equal to the width of the other coding units 1414a and 1414c and a height that is twice the height of the other coding units 1414a and 1414c. In this case, when the PID of the coding unit 1414b at the central location is 1, the PID of the coding unit 1414c adjacent to the coding unit 1414b may be increased by 2, and thus may be 3. When the PID is not uniformly increased as described above, the image decoding equipment 100 may determine that a coding unit is partitioned into a plurality of coding units including a coding unit having a size different from that of other coding units. According to an embodiment, when the mode information according to the split form indicates a need to split a coding unit into an odd number of coding units, the image decoding equipment 100 can split the current coding unit such that a preset location coding unit of an odd number of coding units (for example, a central coding unit location) has a different size than other coding units. In this case, the image decoding equipment 100 can determine the coding unit of the central location, which has a different size, by using the PID of the coding units. However, the PID and the size or location of the coding unit of the preset location are not limited to the above-described examples, and different PIDs and different locations and sizes of the coding units may be used.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать предварительно установленную единицу данных, в которой единица кодирования начинает рекурсивно разбиваться.According to an embodiment, the image decoding equipment 100 may use a preset data unit at which the coding unit starts to split recursively.

Фиг. 15 иллюстрирует то, что множество единиц кодирования определяются на основе множества предварительно установленных единиц данных, включенных в кадр, согласно варианту осуществления.Fig. 15 illustrates that a plurality of coding units are determined based on a plurality of preset data units included in a frame, according to an embodiment.

Согласно варианту осуществления, предварительно установленная единица данных может задаваться как единица данных, в которой единица кодирования начинает рекурсивно разбиваться посредством использования информации режима согласно форме разбиения. Таким образом, предварительно установленная единица данных может соответствовать единице кодирования самой верхней глубины, которая используется для того, чтобы определять множество единиц кодирования, разбитых из текущего кадра. В нижеприведенном описании, для удобства пояснения, предварительно установленная единица данных упоминается как опорная единица данных.According to an embodiment, a preset data unit may be set as a data unit at which a coding unit starts to recursively split by using mode information according to a split shape. Thus, the preset data unit may correspond to the uppermost depth coding unit, which is used to determine the plurality of coding units split from the current frame. In the following description, for convenience of explanation, the preset data unit is referred to as the reference data unit.

Согласно варианту осуществления, опорная единица данных может иметь предварительно установленный размер и предварительно установленную форму. Согласно варианту осуществления, опорная единица данных может включать в себя MxN выборок. В данном документе, M и N могут быть равными друг другу и могут быть целыми числами, выражаемыми как степени 2. Таким образом, опорная единица данных может иметь квадратную или неквадратную форму и может разбиваться на целое число единиц кодирования.According to an embodiment, the reference data unit may have a preset size and a preset shape. According to an embodiment, the reference data unit may include MxN samples. Here, M and N may be equal to each other and may be integers expressed as powers of 2. Thus, a reference data unit may be square or non-square and may be subdivided into an integer number of coding units.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать текущий кадр на множество опорных единиц данных. Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать множество опорных единиц данных, которые разбиваются из текущего кадра, посредством использования информации режима согласно форме разбиения каждой опорной единицы данных. Операция разбиения опорной единицы данных может соответствовать операции разбиения с использованием структуры в виде дерева квадрантов.According to an embodiment, the image decoding equipment 100 may partition the current frame into a plurality of reference data units. According to an embodiment, the image decoding equipment 100 can split a plurality of reference data units that are split from the current frame by using mode information according to the split shape of each reference data unit. The split operation of the reference data unit may correspond to the split operation using a quadtree structure.

Согласно варианту осуществления, оборудование 100 декодирования изображений может предварительно определять минимальный размер, разрешенный для опорных единиц данных, включенных в текущий кадр. Соответственно, оборудование 100 декодирования изображений может определять различные опорные единицы данных, имеющие размеры, равные или большие минимальный размер, и может определять одну или более единиц кодирования посредством использования информации режима согласно форме разбиения со ссылкой на определенную опорную единицу данных.According to an embodiment, the image decoding equipment 100 may predetermine a minimum size allowed for reference data units included in the current frame. Accordingly, the image decoding equipment 100 can determine different reference data units having sizes equal to or greater than the minimum size, and can determine one or more coding units by using mode information according to a split shape with reference to the specific reference data unit.

Ссылаясь на фиг. 15, оборудование 100 декодирования изображений может использовать квадратную опорную единицу 1500 кодирования или неквадратную опорную единицу 1502 кодирования. Согласно варианту осуществления, форма и размер опорных единиц кодирования могут определяться на основе различных единиц данных, допускающих включение одной или более опорных единиц кодирования (например, последовательностей, кадров, срезов, сегментов срезов, плиток, групп плиток, наибольших единиц кодирования и т.п.).Referring to FIG. 15, the image decoding equipment 100 may use a square coding reference unit 1500 or a non-square coding reference unit 1502. According to an embodiment, the shape and size of reference coding units may be determined based on various data units allowing the inclusion of one or more reference coding units (e.g., sequences, frames, slices, slice segments, tiles, tile groups, largest coding units, etc. .).

Согласно варианту осуществления, модуль 110 получения потоков битов оборудования 100 декодирования изображений может получать, из потока битов, по меньшей мере, одно из информации формы опорных единиц кодирования или информации размера опорных единиц кодирования относительно каждой из различных единиц данных. Операция разбиения квадратной опорной единицы 1500 кодирования на одну или более единиц кодирования описывается выше относительно операции разбиения текущей единицы 300 кодирования по фиг. 3, и операция разбиения неквадратной опорной единицы 1502 кодирования на одну или более единиц кодирования описывается выше относительно операции разбиения текущей единицы 400 или 450 кодирования по фиг. 4. Таким образом, подробные описания означенного не предоставляются в данном документе.According to an embodiment, the bitstream acquisition unit 110 of the image decoding equipment 100 can obtain, from the bitstream, at least one of coding reference unit shape information or coding reference unit size information with respect to each of the various data units. The operation of splitting the square reference coding unit 1500 into one or more coding units is described above with respect to the operation of splitting the current coding unit 300 of FIG. 3, and the operation of splitting the non-square reference coding unit 1502 into one or more coding units is described above with respect to the operation of splitting the current coding unit 400 or 450 of FIG. 4. Thus, detailed descriptions of what is meant are not provided in this document.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать PID для идентификации размера и формы опорных единиц кодирования, чтобы определять размер и форму опорных единиц кодирования согласно некоторым единицам данных, предварительно определенным на основе предварительно установленного условия. Таким образом, модуль 110 получения потоков битов может получать, из потока битов, только PID для идентификации размера и формы опорных единиц кодирования относительно каждого среза, сегмента срезов, плитки, группы плиток или наибольшей единицы кодирования, которая представляет собой единицу данных, удовлетворяющую предварительно установленному условию (например, единицу данных, имеющую размер, равный или меньший среза), из различных единиц данных (например, последовательностей, кадров, срезов, сегментов срезов, плиток, групп плиток, наибольших единиц кодирования и т.п.). Оборудование 100 декодирования изображений может определять размер и форму опорных единиц данных относительно каждой единицы данных, которая удовлетворяет предварительно установленному условию, посредством использования PID. Когда информация формы опорных единиц кодирования и информация размера опорных единиц кодирования получаются и используются из потока битов согласно каждой единице данных, имеющей относительно небольшой размер, эффективность использования потока битов может не быть высокой, и в силу этого только PID может получаться и использоваться вместо прямого получения информации формы опорных единиц кодирования и информации размера опорных единиц кодирования. В этом случае, по меньшей мере, одно из размера и формы опорных единиц кодирования, соответствующих PID для идентификации размера и формы опорных единиц кодирования, может быть предварительно определено. Таким образом, оборудование 100 декодирования изображений может определять, по меньшей мере, одно из размера и формы опорных единиц кодирования, включенных в единицу данных, служащую в качестве единицы для получения PID, посредством выбора предварительно определенного, по меньшей мере, одного из размера и формы опорных единиц кодирования на основе PID.According to an embodiment, the image decoding equipment 100 may use the PID to identify the size and shape of the coding reference units to determine the size and shape of the coding reference units according to some data units predetermined based on a predetermined condition. Thus, the bitstream deriving unit 110 can obtain, from the bitstream, only a PID for identifying the size and shape of the reference coding units with respect to each slice, slice segment, tile, tile group, or largest coding unit, which is a data unit satisfying a preset condition (eg, a data unit having a size equal to or smaller than a slice), from various data units (eg, sequences, frames, slices, slice segments, tiles, tile groups, largest coding units, etc.). The image decoding equipment 100 can determine the size and shape of the reference data units with respect to each data unit that satisfies a predetermined condition by using the PID. When the shape information of the reference coding units and the size information of the reference coding units are obtained and used from the bitstream according to each data unit having a relatively small size, the utilization efficiency of the bitstream may not be high, and thus only the PID may be obtained and used instead of directly obtaining coding reference unit shape information; and coding reference unit size information. In this case, at least one of the size and shape of the coding reference units corresponding to the PID for identifying the size and shape of the coding reference units may be predetermined. Thus, the image decoding equipment 100 can determine at least one of the size and shape of the coding reference units included in the data unit serving as the unit for obtaining the PID by selecting at least one of the predetermined size and shape reference coding units based on the PID.

Согласно варианту осуществления, оборудование 100 декодирования изображений может использовать одну или более опорных единиц кодирования, включенных в наибольшую единицу кодирования. Таким образом, наибольшая единица кодирования, разбитая из кадра, может включать в себя одну или более опорных единиц кодирования, и единицы кодирования могут определяться посредством рекурсивного разбиения каждой опорной единицы кодирования. Согласно варианту осуществления, по меньшей мере, одно из ширины и высоты наибольшей единицы кодирования может превышать в целочисленное число раз, по меньшей мере, одно из ширины и высоты опорных единиц кодирования. Согласно варианту осуществления, размер опорных единиц кодирования может получаться посредством разбиения n раз наибольшей единицы кодирования на основе структуры в виде дерева квадрантов. Таким образом, оборудование 100 декодирования изображений может определять опорные единицы кодирования посредством разбиения n раз наибольшей единицы кодирования на основе структуры в виде дерева квадрантов и может разбивать опорную единицу кодирования на основе, по меньшей мере, одного из информации формы блоков и информации режима согласно форме разбиения согласно различным вариантам осуществления.According to an embodiment, the image decoding equipment 100 may use one or more reference coding units included in the largest coding unit. Thus, the largest coding unit split from a frame may include one or more reference coding units, and the coding units may be determined by recursively splitting each reference coding unit. According to an embodiment, at least one of the width and height of the largest coding unit may be an integer number of times at least one of the width and height of the reference coding units. According to an embodiment, the size of the reference coding units may be obtained by partitioning n times the largest coding unit based on a quadtree structure. Thus, the image decoding equipment 100 can determine the reference coding units by splitting n times the largest coding unit based on the quadtree structure, and can split the reference coding unit based on at least one of the block shape information and the mode information according to the split shape according to various embodiments.

Согласно варианту осуществления, оборудование 100 декодирования изображений может получать информацию формы блоков, указывающую форму текущей единицы кодирования, или информацию режима согласно форме разбиения, указывающую способ разбиения текущей единицы кодирования, из потока битов, и может использовать полученную информацию. Информация режима согласно форме разбиения может включаться в поток битов, связанный с различными единицами данных. Например, оборудование 100 декодирования изображений может использовать информацию режима согласно форме разбиения, включенную в набор параметров последовательности, набор параметров кадра, набор параметров видео, заголовок среза, заголовок сегмента срезов, заголовок плитки или заголовок группы плиток. Кроме того, оборудование 100 декодирования изображений может получать, из потока битов, синтаксический элемент, соответствующий информации формы блоков или информации режима согласно форме разбиения согласно каждой наибольшей единице кодирования, каждой наибольшей единице кодирования или каждой опорной единице кодирования, и может использовать полученный синтаксический элемент.According to an embodiment, the image decoding equipment 100 may obtain block shape information indicating the shape of the current coding unit or split shape mode information indicating the splitting method of the current coding unit from the bitstream, and may use the obtained information. The mode information according to the split form may be included in the bit stream associated with various data units. For example, the image decoding equipment 100 may use mode information according to the split shape included in a sequence parameter set, a frame parameter set, a video parameter set, a slice header, a slice segment header, a tile header, or a tile group header. In addition, the image decoding equipment 100 can obtain, from the bitstream, a syntax element corresponding to block shape information or mode information according to the partition shape according to each largest coding unit, each largest coding unit, or each reference coding unit, and can use the obtained syntax element.

В дальнейшем в этом документе подробно описывается способ определения правила разбиения, согласно варианту осуществления раскрытия.Hereinafter, this document describes in detail a method for determining a partitioning rule, according to an embodiment of the disclosure.

Оборудование 100 декодирования изображений может определять правило разбиения изображения. Правило разбиения может быть предварительно определено между оборудованием 100 декодирования изображений и оборудованием 200 кодирования изображений. Оборудование 100 декодирования изображений может определять правило разбиения изображения, на основе информации, полученной из потока битов. Оборудование 100 декодирования изображений может определять правило разбиения на основе информации, полученной из по меньшей мере одного из набора параметров последовательности, набора параметров кадра, набора параметров видео, заголовка среза, заголовка сегмента срезов, заголовка плитки и заголовка группы плиток. Оборудование 100 декодирования изображений может определять правило разбиения по-разному согласно кинокадрам, срезам, плиткам, временным слоям, наибольшим единицам кодирования или единицам кодирования.The image decoding equipment 100 may determine an image splitting rule. The split rule may be predetermined between the image decoding equipment 100 and the image encoding equipment 200 . The image decoding equipment 100 may determine an image splitting rule based on information obtained from the bit stream. The image decoding equipment 100 may determine a split rule based on information obtained from at least one of a sequence parameter set, a frame parameter set, a video parameter set, a slice header, a slice segment header, a tile header, and a tile group header. The image decoding equipment 100 may determine the split rule differently according to movie frames, slices, tiles, time layers, largest coding units, or coding units.

Оборудование 100 декодирования изображений может определять правило разбиения на основе формы блока единицы кодирования. Форма блока может включать в себя размер, форму, отношение ширины к высоте и направление единицы кодирования. Оборудование 200 кодирования изображений и оборудование 100 декодирования изображений могут предварительно определять необходимость определять правило разбиения на основе формы блока единицы кодирования. Тем не менее, варианты осуществления раскрытия не ограничены этим. Оборудование 100 декодирования изображений может определять правило разбиения на основе информации, полученной из потока битов, принимаемого из оборудования 200 кодирования изображений.The image decoding equipment 100 may determine a split rule based on the shape of the coding unit block. The block shape may include the size, shape, width-to-height ratio, and direction of the coding unit. The image encoding equipment 200 and the image decoding equipment 100 may predetermine whether to determine a partitioning rule based on the shape of the coding unit block. However, embodiments of the disclosure are not limited to this. The image decoding equipment 100 may determine a partitioning rule based on information obtained from the bit stream received from the image encoding equipment 200 .

Форма единицы кодирования может включать в себя квадратную и неквадратную. Когда длины ширины и высоты единицы кодирования являются идентичными, оборудование 100 декодирования изображений может определять форму единицы кодирования как квадратную. Кроме того, когда длины ширины и высоты единицы кодирования не являются идентичными, оборудование 100 декодирования изображений может определять форму единицы кодирования как неквадратную.The shape of the coding unit may include square and non-square. When the width and height lengths of the coding unit are identical, the image decoding equipment 100 may determine the shape of the coding unit to be square. In addition, when the width and height lengths of the coding unit are not identical, the image decoding equipment 100 may determine the shape of the coding unit to be non-square.

Размер единицы кодирования может включать в себя различные размеры, такие как 4×4, 8×4, 4×8, 8×8, 16×4, 16×8 и вплоть до 256×256. Размер единицы кодирования может классифицироваться на основе длины длинной стороны единицы кодирования, длины короткой стороны или площади. Оборудование 100 декодирования изображений может применять идентичное правило разбиения к единицам кодирования, классифицированным в качестве идентичной группы. Например, оборудование 100 декодирования изображений может классифицировать единицы кодирования, имеющие идентичные длины длинных сторон, как имеющие идентичный размер. Кроме того, оборудование 100 декодирования изображений может применять идентичное правило разбиения к единицам кодирования, имеющим идентичные длины длинных сторон.The coding unit size may include various sizes such as 4x4, 8x4, 4x8, 8x8, 16x4, 16x8, and up to 256x256. The size of a coding unit may be classified based on the length of the long side of the coding unit, the length of the short side, or the area. The image decoding equipment 100 may apply the same partitioning rule to the coding units classified as the same group. For example, the image decoding equipment 100 may classify coding units having identical long side lengths as having the same size. In addition, the image decoding equipment 100 may apply the same partitioning rule to coding units having identical long side lengths.

Отношение ширины и высоты единицы кодирования может включать в себя 1:2, 2:1, 1:4, 4:1, 1:8, 8:1, 1:16, 16:1, 32:1, 1:32 и т.п. Кроме того, направление единицы кодирования может включать в себя горизонтальное направление и вертикальное направление. Горизонтальное направление может указывать случай, в котором длина ширины единицы кодирования превышает ее длину высоты. Вертикальное направление может указывать случай, в котором длина ширины единицы кодирования меньше ее длины высоты.The width-to-height ratio of the coding unit may include 1:2, 2:1, 1:4, 4:1, 1:8, 8:1, 1:16, 16:1, 32:1, 1:32, and etc. In addition, the direction of the coding unit may include a horizontal direction and a vertical direction. The horizontal direction may indicate the case in which the width length of the coding unit exceeds its height length. The vertical direction may indicate the case in which the width length of the coding unit is less than its height length.

Оборудование 100 декодирования изображений может адаптивно определять правило разбиения на основе размера единицы кодирования. Оборудование 100 декодирования изображений может по-другому определять допустимый режим согласно форме разбиения на основе размера единицы кодирования. Например, оборудование 100 декодирования изображений может определять то, разрешается или нет разбиение на основе размера единицы кодирования. Оборудование 100 декодирования изображений может определять направление разбиения согласно размеру единицы кодирования. Оборудование 100 декодирования изображений может определять допустимый тип разбиения согласно размеру единицы кодирования.The image decoding equipment 100 can adaptively determine the split rule based on the size of the coding unit. The image decoding equipment 100 may differently determine the allowable mode according to the partition shape based on the coding unit size. For example, the image decoding equipment 100 may determine whether splitting is allowed or not based on the size of the coding unit. The image decoding equipment 100 may determine the splitting direction according to the size of the coding unit. The image decoding equipment 100 may determine the allowable partition type according to the coding unit size.

Правило разбиения, определенное на основе размера единицы кодирования, может представлять собой правило разбиения, предварительно определенное между оборудованием 200 кодирования изображений и оборудованием 100 декодирования изображений. Кроме того, оборудование 100 декодирования изображений может определять правило разбиения на основе информации, полученной из потока битов.The split rule determined based on the coding unit size may be a split rule predefined between the image encoding equipment 200 and the image decoding equipment 100 . In addition, the image decoding equipment 100 may determine the splitting rule based on the information obtained from the bitstream.

Оборудование 100 декодирования изображений может адаптивно определять правило разбиения на основе местоположения единицы кодирования. Оборудование 100 декодирования изображений может адаптивно определять правило разбиения на основе местоположения единицы кодирования в изображении.The image decoding equipment 100 can adaptively determine the split rule based on the location of the coding unit. The image decoding equipment 100 can adaptively determine the split rule based on the location of the coding unit in the image.

Кроме того, оборудование 100 декодирования изображений может определять правило разбиения таким образом, что единицы кодирования, сформированные через различные тракты разбиения, не имеют идентичной формы блока. Тем не менее, вариант осуществления не ограничен этим, и единицы кодирования, сформированные через различные тракты разбиения, имеют идентичную форму блока. Единицы кодирования, сформированные через различные тракты разбиения, могут иметь различные порядки обработки декодирования. Поскольку порядки обработки декодирования описываются выше со ссылкой на фиг. 12, подробности означенного не предоставляются снова.In addition, the image decoding equipment 100 can define a partitioning rule such that coding units generated through different partitioning paths do not have the same block shape. However, the embodiment is not limited to this, and coding units generated through different partitioning paths have the same block shape. Encoding units generated via different split paths may have different decoding processing orders. Since the decoding processing orders are described above with reference to FIG. 12, the details of what is meant are not provided again.

Фиг. 16 иллюстрирует единицы кодирования отдельных кадров, когда отдельные кадры имеют различные комбинации форм разбиения единиц кодирования, согласно варианту осуществления.Fig. 16 illustrates individual frame coding units when individual frames have different combinations of coding unit split shapes, according to an embodiment.

Ссылаясь на фиг. 16, оборудование 100 декодирования изображений может определять различные комбинации форм разбиения единиц кодирования для отдельных кадров. Например, оборудование 100 декодирования изображений может декодировать изображение посредством использования кадра 1600, который может разбиваться на четыре единицы кодирования, кадра 1610, который может разбиваться на две или четыре единицы кодирования, и кадра 1620, который может разбиваться на две, три или четыре единицы кодирования, по меньшей мере, из одного кадра, включенного в изображение. Оборудование 100 декодирования изображений может использовать только информацию формы разбиения, указывающую разбиение на четыре квадратных единицы кодирования, чтобы разбивать кадр 1600 на множество единиц кодирования. Оборудование 100 декодирования изображений может использовать только информацию формы разбиения, указывающую разбиение на две или четыре единицы кодирования, чтобы разбивать кадр 1610. Оборудование 100 декодирования изображений может использовать только информацию формы разбиения, указывающую разбиение на две, три или четыре единицы кодирования, чтобы разбивать кадр 1620. Вышеописанные комбинации форм разбиения представляют собой варианты осуществления для описания операций оборудования 100 декодирования изображений, и в силу этого вышеописанные комбинации форм разбиения не должны интерпретироваться как ограниченные вышеописанными вариантами осуществления. Следует интерпретировать то, что различные комбинации форм разбиения могут использоваться для каждой предварительно установленной единицы данных.Referring to FIG. 16, the image decoding equipment 100 can determine various combinations of coding unit split shapes for individual frames. For example, the image decoding equipment 100 may decode an image by using frame 1600, which may be split into four coding units, frame 1610, which may be split into two or four coding units, and frame 1620, which may be split into two, three, or four coding units. from at least one frame included in the image. The image decoding equipment 100 may use only the split shape information indicating the split into four square coding units to split the frame 1600 into a plurality of coding units. The image decoding equipment 100 may only use split shape information indicating split into two or four coding units to split the frame 1610. The image decoding equipment 100 may use only split shape information indicating split into two, three, or four coding units to split the frame. 1620. The above-described partition shape combinations are embodiments for describing the operations of the image decoding equipment 100, and thus the above-described partition shape combinations should not be interpreted as being limited to the above-described embodiments. It should be interpreted that different combinations of split shapes may be used for each preset data unit.

Согласно варианту осуществления, модуль 110 получения потоков битов оборудования 100 декодирования изображений может получать поток битов, включающий в себя индекс, представляющий комбинацию информации формы разбиения для каждой предварительно установленной единицы данных (например, последовательности, кадра, среза, сегмента срезов, плитки, группы плиток и т.д.). Например, модуль 110 получения потоков битов может получать индекс, представляющий комбинацию информации формы разбиения, из набора параметров последовательности, набора параметров кадра, заголовка среза, заголовка плитки или заголовка группы плиток. Модуль 110 получения потоков битов оборудования 100 декодирования изображений может использовать полученный индекс, чтобы определять комбинацию форм разбиения, на которую могут разбиваться единицы кодирования для каждой предварительно установленной единицы данных, и, соответственно, модуль 110 получения потоков битов может использовать различные комбинации форм разбиения для отдельных предварительно установленных единиц данных.According to an embodiment, the bitstream acquisition unit 110 of the image decoding equipment 100 can acquire a bitstream including an index representing a combination of split shape information for each preset data unit (e.g., sequence, frame, slice, slice segment, tile, tile group etc.). For example, the bitstream obtaining module 110 may obtain an index representing a combination of split shape information from a sequence parameter set, a frame parameter set, a slice header, a tile header, or a tile group header. The bitstream deriving unit 110 of the image decoding equipment 100 may use the obtained index to determine a combination of split shapes into which coding units for each preset data unit may be split, and accordingly, the bitstream deriving unit 110 may use different combinations of split shapes for individual preset units of data.

Фиг. 17 иллюстрирует различные формы единиц кодирования, которые могут определяться на основе информации режима согласно форме разбиения, которая может выражаться двоичным кодом, согласно варианту осуществления.Fig. 17 illustrates various forms of coding units that can be determined based on mode information according to a split form that can be expressed in binary according to an embodiment.

Согласно варианту осуществления, оборудование 100 декодирования изображений может разбивать единицы кодирования на различные формы посредством использования информации формы блоков и информации режима согласно форме разбиения, полученной через модуль 110 получения потоков битов. Формы, на которые могут разбиваться единицы кодирования, могут представлять собой различные формы, включающие в себя формы, описанные выше в вариантах осуществления.According to an embodiment, the image decoding equipment 100 can split the coding units into various forms by using block shape information and mode information according to the split shape obtained through the bit stream obtaining unit 110 . The forms into which coding units may be broken down may be various forms, including those described in the embodiments above.

Ссылаясь на фиг. 17, оборудование 100 декодирования изображений может разбивать единицу кодирования, имеющую квадратную форму, по меньшей мере, в одном направлении из горизонтального направления и вертикального направления, и единицу кодирования, имеющую неквадратную форму, в горизонтальном направлении или в вертикальном направлении, на основе информации режима согласно форме разбиения.Referring to FIG. 17, the image decoding equipment 100 can split a coding unit having a square shape in at least one direction of a horizontal direction and a vertical direction and a coding unit having a non-square shape in the horizontal direction or in the vertical direction based on the mode information according to splitting form.

Согласно варианту осуществления, когда оборудование 100 декодирования изображений может разбивать единицу кодирования, имеющую квадратную форму, в горизонтальном направлении и вертикальном направлении, чтобы определять четыре квадратных единицы кодирования, информация режима согласно форме разбиения для квадратной единицы кодирования может представлять четыре формы разбиения. Согласно варианту осуществления, информация режима согласно форме разбиения может выражаться двоичным кодом из 2 цифр, и каждой форме разбиения может назначаться двоичный код. Например, когда единица кодирования не разбивается, информация режима согласно форме разбиения может выражаться как (00)b, когда единица кодирования разбивается в горизонтальном направлении и в вертикальном направлении, информация режима согласно форме разбиения может выражаться как (01)b, когда единица кодирования разбивается в горизонтальном направлении, информация режима согласно форме разбиения может выражаться как (10)b, и когда единица кодирования разбивается в вертикальном направлении, информация режима согласно форме разбиения может выражаться как (11)b.According to an embodiment, when the image decoding equipment 100 can partition a coding unit having a square shape in a horizontal direction and a vertical direction to determine four square coding units, the mode information according to the split shape for the square coding unit can represent four split shapes. According to an embodiment, the mode information according to the split shape may be expressed by a 2-digit binary code, and each split shape can be assigned a binary code. For example, when the coding unit is not split, the mode information according to the split shape can be expressed as (00)b when the coding unit is split in the horizontal direction and in the vertical direction, the mode information according to the split shape can be expressed as (01)b when the coding unit is split in the horizontal direction, the mode information according to the split shape can be expressed as (10)b, and when the coding unit is split in the vertical direction, the mode information according to the split shape can be expressed as (11)b.

Согласно варианту осуществления, когда оборудование 100 декодирования изображений разбивает единицу кодирования, имеющую неквадратную форму, в горизонтальном направлении или в вертикальном направлении, виды форм разбиения, которые могут представляться посредством информации режима согласно форме разбиения, могут зависеть от числа единиц кодирования, на которые должна разбиваться единица кодирования. Ссылаясь на фиг. 17, оборудование 100 декодирования изображений может разбивать единицу кодирования, имеющую неквадратную форму, вплоть до трех, согласно варианту осуществления. Кроме того, оборудование 100 декодирования изображений может разбивать единицу кодирования на две единицы кодирования. В этом случае, информация режима согласно форме разбиения может выражаться как (10)b. Оборудование 100 декодирования изображений может разбивать единицу кодирования на три единицы кодирования. В этом случае, информация режима согласно форме разбиения может выражаться как (11)b. Оборудование 100 декодирования изображений может определять не разбивать единицу кодирования. В этом случае, информация режима согласно форме разбиения может выражаться как (0)b. Таким образом, оборудование 100 декодирования изображений может использовать кодирование переменной длины (VLC) вместо кодирования фиксированной длины (FLC), чтобы использовать двоичный код, представляющий информацию режима согласно форме разбиения.According to an embodiment, when the image decoding equipment 100 splits a coding unit having a non-square shape in the horizontal direction or in the vertical direction, kinds of split shapes that can be represented by mode information according to the split shape may depend on the number of coding units to be split into coding unit. Referring to FIG. 17, the image decoding equipment 100 can split a coding unit having a non-square shape up to three according to an embodiment. In addition, the image decoding equipment 100 may split a coding unit into two coding units. In this case, the mode information according to the partition form can be expressed as (10)b. The image decoding equipment 100 may partition a coding unit into three coding units. In this case, the mode information according to the partition form can be expressed as (11)b. The image decoding equipment 100 may determine not to split a coding unit. In this case, the mode information according to the partition form can be expressed as (0)b. Thus, the image decoding equipment 100 can use variable length coding (VLC) instead of fixed length coding (FLC) to use a binary code representing mode information according to the split shape.

Согласно варианту осуществления, ссылаясь на фиг. 17, двоичный код информации режима согласно форме разбиения, представляющей то, что единица кодирования не разбивается, может выражаться как (0)b. В случае, в котором двоичный код информации режима согласно форме разбиения, представляющей то, что единица кодирования не разбивается, задается равным (00)b, двоичный код информации режима согласно форме разбиения в 2 бита, возможно, должен использоваться, хотя отсутствует информация режима формы без разбиения, заданная равной (01)b. Тем не менее, в случае, в котором три формы разбиения используются для единицы кодирования, имеющей неквадратную форму, как показано на фиг. 17, оборудование 100 декодирования изображений может определять то, что единица кодирования не разбивается посредством использования двоичного кода (0)b в 1 бит в качестве информации режима согласно форме разбиения, в силу этого эффективно используя поток битов. Тем не менее, формы разбиения единицы кодирования, имеющей неквадратную форму, которые представляются посредством информации режима согласно форме разбиения, не должны интерпретироваться как ограниченные тремя формами, показанными на фиг. 17, а должны интерпретироваться в качестве различных форм, включающих в себя вышеописанные варианты осуществления.According to an embodiment, referring to FIG. 17, a mode information binary code according to a split form representing that a coding unit is not split can be expressed as (0)b. In the case in which the mode information binary code according to the split shape representing that the coding unit is not split is set to (00)b, the mode information binary code according to the split shape of 2 bits may be used although there is no shape mode information without splitting, set equal to (01)b. However, in a case in which three split shapes are used for a coding unit having a non-square shape as shown in FIG. 17, the image decoding equipment 100 can determine that the coding unit is not split by using the 1-bit binary code (0)b as mode information according to the split shape, thereby effectively using the bitstream. However, the split shapes of a coding unit having a non-square shape, which are represented by the mode information according to the split shape, should not be interpreted as being limited to the three shapes shown in FIG. 17a are to be interpreted as various forms including the above-described embodiments.

Фиг. 18 иллюстрирует другие формы единиц кодирования, которые могут определяться на основе информации режима согласно форме разбиения, которая может представляться с помощью двоичного кода, согласно варианту осуществления.Fig. 18 illustrates other forms of coding units that may be determined based on mode information according to a split form that can be represented with a binary code, according to an embodiment.

Ссылаясь на фиг. 18, оборудование 100 декодирования изображений может разбивать единицу кодирования, имеющую квадратную форму, в горизонтальном направлении или в вертикальном направлении, и единицу кодирования, имеющую неквадратную форму, в горизонтальном направлении или в вертикальном направлении, на основе информации режима согласно форме разбиения. Таким образом, информация режима согласно форме разбиения может указывать разбиение единицы кодирования, имеющей квадратную форму, в одном направлении. В этом случае, двоичный код информации режима согласно форме разбиения, представляющей то, что единица кодирования, имеющая квадратную форму, не разбивается, может выражаться как (0)b. В случае, в котором двоичный код информации режима согласно форме разбиения, представляющей то, что единица кодирования не разбивается, задается равным (00)b, двоичный код информации режима согласно форме разбиения в 2 бита, возможно, должен использоваться, хотя отсутствует информация режима формы без разбиения, заданная равной (01)b. Тем не менее, в случае, в котором три формы разбиения используются для единицы кодирования, имеющей квадратную форму, как показано на фиг. 18, оборудование 100 декодирования изображений может определять то, что единица кодирования не разбивается, посредством использования двоичного кода (0)b в 1 бит в качестве информации режима согласно форме разбиения, в силу этого эффективно используя поток битов. Тем не менее, формы разбиения единицы кодирования, имеющей квадратную форму, которые представляются посредством информации режима согласно форме разбиения, не должны интерпретироваться как ограниченные тремя формами, показанными на фиг. 18, а должны интерпретироваться в качестве различных форм, включающих в себя вышеописанные варианты осуществления.Referring to FIG. 18, the image decoding equipment 100 can partition a coding unit having a square shape in a horizontal direction or a vertical direction and a coding unit having a non-square shape in a horizontal direction or a vertical direction based on the mode information according to the split shape. Thus, the mode information according to the split shape can indicate splitting of a coding unit having a square shape in one direction. In this case, a mode information binary code according to a split shape representing that a coding unit having a square shape is not split can be expressed as (0)b. In the case in which the mode information binary code according to the split shape representing that the coding unit is not split is set to (00)b, the mode information binary code according to the split shape of 2 bits may be used although there is no format mode information without splitting, set equal to (01)b. However, in a case in which three split shapes are used for a coding unit having a square shape, as shown in FIG. 18, the image decoding equipment 100 can determine that the coding unit is not split by using the 1-bit binary code (0)b as mode information according to the split shape, thereby effectively using the bit stream. However, the split shapes of a coding unit having a square shape, which are represented by the mode information according to the split shape, should not be interpreted as limited to the three shapes shown in FIG. 18a are to be interpreted as various forms including the above-described embodiments.

Согласно варианту осуществления, информация формы блоков или информация режима согласно форме разбиения может выражаться посредством использования двоичного кода, и информация формы блоков или информация режима согласно форме разбиения может формироваться непосредственно в качестве потока битов. Кроме того, информация формы блоков или информация режима согласно форме разбиения, которая может выражаться двоичным кодом, может использоваться в качестве входного двоичного кода в контекстно-адаптивном двоичном арифметическом кодировании (CABAC) вместо формирования непосредственно в качестве потока битов.According to an embodiment, block shape information or mode information according to the split shape can be expressed by using a binary code, and block shape information or mode information according to the split shape can be generated directly as a bitstream. In addition, the block shape information or mode information according to the partition shape, which can be expressed in binary, can be used as an input binary code in context adaptive binary arithmetic coding (CABAC) instead of being generated directly as a bitstream.

В дальнейшем описывается процесс, в котором оборудование 100 декодирования изображений получает синтаксис для информации формы блоков или информации режима согласно форме разбиения через CABAC, согласно варианту осуществления. Оборудование 100 декодирования изображений может получать поток битов, включающий в себя двоичный код для синтаксиса, через модуль 110 получения потоков битов. Оборудование 100 декодирования изображений может отменять преобразование в двоичную форму строки двоичных элементов, включенной в полученный поток битов, чтобы обнаруживать синтаксический элемент, представляющий информацию формы блоков или информацию режима согласно форме разбиения. Согласно варианту осуществления, оборудование 100 декодирования изображений может получать группу двоичных строк двоичных элементов, соответствующих синтаксическому элементу, который должен декодироваться, и декодировать отдельные двоичные элементы посредством использования информации вероятности. Оборудование 100 декодирования изображений может повторять операцию до этих пор, до тех пор, пока строка двоичных элементов, сконфигурированная с декодированными двоичными элементами, не является идентичной одной из ранее полученных строк двоичных элементов. Оборудование 100 декодирования изображений может выполнять отмену преобразования в двоичную форму для строки двоичных элементов, чтобы определять синтаксический элемент.The following describes a process in which the image decoding equipment 100 acquires the syntax for block shape information or mode information according to the partition shape via CABAC, according to the embodiment. The image decoding equipment 100 can acquire a bit stream including a binary code for syntax through the bit stream acquisition unit 110 . The image decoding equipment 100 may debinarize the bit string included in the received bit stream to detect a syntax element representing block shape information or mode information according to the split shape. According to an embodiment, the image decoding equipment 100 can obtain a group of binary strings of bins corresponding to a syntax element to be decoded, and decode individual bins by using probability information. The image decoding equipment 100 may repeat the operation until then, until the bin string configured with the decoded bins is identical to one of the previously received bin strings. The image decoding equipment 100 may perform debinarization on the bin string to determine the syntax element.

Согласно варианту осуществления, оборудование 100 декодирования изображений может выполнять процесс декодирования адаптивного двоичного арифметического кодирования, чтобы определять синтаксис для строки двоичных элементов, и оборудование 100 декодирования изображений может обновлять вероятностную модель для двоичных элементов, полученных через модуль 110 получения потоков битов. Ссылаясь на фиг. 17, модуль 110 получения потоков битов оборудования 100 декодирования изображений может получать поток битов, который представляет двоичный код, представляющий информацию режима согласно форме разбиения, согласно варианту осуществления. Оборудование 100 декодирования изображений может определять синтаксис для информации режима согласно форме разбиения посредством использования полученного двоичного кода, имеющего размер в 1 или в 2 бита. Оборудование 100 декодирования изображений может обновлять вероятность для каждого бита двоичного кода в 2 бита, чтобы определять синтаксис для информации режима согласно форме разбиения. Таким образом, оборудование 100 декодирования изображений может обновлять, согласно этому, что одно из 0 или 1 составляет значение первого двоичного элемента двоичного кода в 2 бита, вероятность того, что следующий двоичный элемент должен иметь значение в 0 или 1 после декодирования.According to an embodiment, the image decoding equipment 100 may perform an adaptive binary arithmetic coding decoding process to determine a syntax for a string of binary elements, and the image decoding equipment 100 may update a probability model for the binary elements obtained through the bitstream obtaining unit 110 . Referring to FIG. 17, the bitstream acquisition unit 110 of the image decoding equipment 100 can acquire a bitstream that represents a binary code representing mode information according to a split shape, according to an embodiment. The image decoding equipment 100 can determine the syntax for the mode information according to the split form by using the obtained binary code having a size of 1 or 2 bits. The image decoding equipment 100 may update the probability for each bit of the 2-bit binary code to determine the syntax for the mode information according to the split shape. Thus, the image decoding equipment 100 can update, according to this, that one of 0 or 1 constitutes the value of the first binary element of the 2-bit code, the probability that the next binary element should have a value of 0 or 1 after decoding.

Согласно варианту осуществления, в процессе определения синтаксиса, оборудование 100 декодирования изображений может обновлять вероятности для двоичных элементов, которые используются в процессе декодирования двоичных элементов из строки двоичных элементов для синтаксиса, и оборудование 100 декодирования изображений может определять то, что конкретный бит строки двоичных элементов имеет идентичную вероятность, без обновления вероятности конкретного бита.According to an embodiment, in the process of determining the syntax, the image decoding equipment 100 may update the probabilities for the bins that are used in the process of decoding the bins from the bin string for the syntax, and the image decoding equipment 100 may determine that a particular bit of the bin string has identical probability, without updating the probability of a particular bit.

Ссылаясь на фиг. 17, в процессе определения синтаксиса посредством использования информации режима согласно форме разбиения представления строки двоичных элементов для единицы кодирования, имеющей неквадратную форму, оборудование 100 декодирования изображений может определять синтаксис для информации режима согласно форме разбиения посредством использования двоичного элемента, имеющего значение в 0 в случае, в котором единица кодирования, имеющая неквадратную форму, не разбивается. Таким образом, когда информация формы блоков представляет то, что текущая единица кодирования имеет неквадратную форму, первый двоичный элемент из строки двоичных элементов для информации режима согласно форме разбиения может быть равным 0 в случае, в котором единица кодирования, имеющая неквадратную форму, не разбивается, и может быть равным 1 в случае, в котором единица кодирования разбивается на две или три единицы кодирования. Соответственно, вероятность того, что первый двоичный элемент из строки двоичных элементов информации режима согласно форме разбиения для единицы кодирования, имеющей неквадратную форму, должен быть равен 0, может составлять 1/3, и вероятность того, что первый двоичный элемент должен быть равен 1, может составлять 2/3. Поскольку информация режима согласно форме разбиения, представляющая то, что единица кодирования, имеющая неквадратную форму, не разбивается, может выражаться строкой двоичных элементов в 1 бит, имеющего значение в 0, как описано выше, оборудование 100 декодирования изображений может определять то, только в случае, в котором первый двоичный элемент информации режима согласно форме разбиения равен 1, то, равен второй двоичный элемент 0 или 1, чтобы определять синтаксис для информации режима согласно форме разбиения. Согласно варианту осуществления, когда первый двоичный элемент для информации режима согласно форме разбиения равен 1, оборудование 100 декодирования изображений может определять то, что вероятность того, что второй двоичный элемент должен быть равен 0, равна вероятности того, что второй двоичный элемент должен быть равен 1, и декодировать второй двоичный элемент.Referring to FIG. 17, in the process of determining the syntax by using the mode information according to the splitting form of a bit string representation for a coding unit having a non-square shape, the image decoding equipment 100 can determine the syntax for the mode information according to the splitting form by using a bit element having a value of 0 in the case, in which the non-square coding unit is not split. Thus, when the block shape information represents that the current coding unit has a non-square shape, the first bin of the bin string for the mode information according to the split shape may be 0 in the case in which the coding unit having a non-square shape is not split, and may be equal to 1 in the case in which the coding unit is split into two or three coding units. Accordingly, the probability that the first bin of the mode information bin string according to the split shape for a coding unit having a non-square shape should be 0 may be 1/3, and the probability that the first bin should be 1, may be 2/3. Since the mode information according to the split shape representing that a coding unit having a non-square shape is not split can be expressed by a 1-bit bin string having a value of 0 as described above, the image decoding equipment 100 can determine that only in the case , in which the first binary element of the mode information according to the partition form is 1, then, the second binary element is 0 or 1 to determine the syntax for the mode information according to the partition form. According to an embodiment, when the first bin for the mode information according to the split shape is 1, the image decoding equipment 100 can determine that the probability that the second bin should be 0 is equal to the probability that the second bin should be 1 , and decode the second binary element.

Соответственно, оборудование 100 декодирования изображений может использовать, в процессе определения двоичных элементов из строки двоичных элементов для информации режима согласно форме разбиения, различные вероятности для отдельных двоичных элементов. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять различные вероятности двоичных элементов для информации режима согласно форме разбиения согласно ширине текущей единицы кодирования или длине более длинной стороны текущей единицы кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять различные вероятности двоичных элементов для информации режима согласно форме разбиения согласно, по меньшей мере, одной из формы текущей единицы кодирования и длины более длинной стороны текущей единицы кодирования. Согласно варианту осуществления, оборудование 100 декодирования изображений может определять различные вероятности двоичных элементов для информации режима согласно форме разбиения согласно, по меньшей мере, одной из формы текущей единицы кодирования и длины более длинной стороны текущей единицы кодирования.Accordingly, the image decoding equipment 100 can use, in the process of determining bins from the bin string for mode information according to the split shape, different probabilities for individual bins. According to an embodiment, the image decoding equipment 100 can determine different bin probabilities for mode information according to the split shape according to the width of the current coding unit or the length of the longer side of the current coding unit. According to an embodiment, the image decoding equipment 100 can determine different bin probabilities for the mode information according to the split shape according to at least one of the shape of the current coding unit and the longer side length of the current coding unit. According to an embodiment, the image decoding equipment 100 can determine different bin probabilities for the mode information according to the split shape according to at least one of the shape of the current coding unit and the longer side length of the current coding unit.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять то, что вероятности двоичных элементов для информации режима согласно форме разбиения являются идентичными относительно единиц кодирования, которые равны или выше предварительно установленного размера. Например, оборудование 100 декодирования изображений может определять то, что вероятности двоичных элементов для информации режима согласно форме разбиения являются идентичными относительно единиц кодирования, длины более длинных сторон которых равны или больше 64 выборок.According to an embodiment, the image decoding equipment 100 can determine that the bin probabilities for mode information according to the split shape are identical with respect to coding units that are equal to or greater than a preset size. For example, the image decoding equipment 100 may determine that the bin probabilities for the mode information according to the split shape are identical with respect to coding units whose longer side lengths are equal to or greater than 64 samples.

Согласно варианту осуществления, оборудование 100 декодирования изображений может определять начальные вероятности для двоичных элементов, составляющих строку двоичных элементов информации режима согласно форме разбиения, на основе типа среза (например, I-срез, P-срез или B-срез).According to an embodiment, the image decoding equipment 100 can determine seed probabilities for the bins constituting the mode information bin string according to the split shape based on the slice type (eg, I-slice, P-slice, or B-slice).

Фиг. 19 является блок-схемой системы кодирования и декодирования изображений.Fig. 19 is a block diagram of an image encoding and decoding system.

Кодер 1900 системы кодирования и декодирования изображений может передавать кодированный поток битов изображения, и декодер 1950 системы кодирования и декодирования изображений может принимать поток битов и декодировать поток битов, чтобы выводить восстановленное изображение. В данном документе, декодер 1950 может представлять собой конфигурацию, которая является аналогичной оборудованию 100 декодирования изображений.An image encoding/decoding system encoder 1900 may transmit an encoded image bitstream, and an image encoding/decoding system decoder 1950 may receive the bitstream and decode the bitstream to output a reconstructed image. Here, the decoder 1950 may be a configuration that is similar to the image decoding equipment 100.

В кодере 1900, когда режим прогнозирования текущего блока представляет собой режим интер-прогнозирования, модуль 1905 интер-прогнозирования формирует информацию движения текущего блока, указывающий опорный блок опорного кадра, смежного во времени с текущим кадром. Модуль 1905 интер-прогнозирования может определять прогнозные выборки текущего блока посредством использования выборок опорных блоков. Чтобы определять прогнозные выборки текущего блока посредством использования соседних выборок, пространственно смежных с текущим блоком, модуль 1910 интра-прогнозирования может определять информацию интра-прогнозирования, указывающую направление, в котором расположены соседние выборки, аналогичные текущему блоку, или способ определения прогнозных выборок.In the encoder 1900, when the prediction mode of the current block is the inter prediction mode, the inter prediction unit 1905 generates motion information of the current block indicating a reference block of a reference frame temporally adjacent to the current frame. Inter-prediction module 1905 may determine the prediction samples of the current block by using the reference block samples. To determine the prediction samples of the current block by using adjacent samples spatially adjacent to the current block, intra-prediction module 1910 may determine intra-prediction information indicating the direction in which adjacent samples similar to the current block are located, or a method for determining predictive samples.

Модуль 1905 интер-прогнозирования может определять опорные выборки, которые должны использоваться для прогнозирования текущего блока, из числа предварительно восстановленных выборок, сохраненных в буфере 1948 декодированных кадров (DPB).Module 1905 inter-prediction can determine the reference samples to be used to predict the current block, from among the pre-recovered samples stored in the buffer 1948 decoded frames (DPB).

Преобразователь 1920 выводит коэффициенты преобразования посредством выполнения преобразования для значений остаточных выборок, полученных посредством вычитания прогнозных выборок, сформированных посредством модуля 1905 интер-прогнозирования или модуля 1910 интра-прогнозирования, из исходной выборки текущего блока. Квантователь 1925 квантует коэффициенты преобразования, выводимые посредством преобразователя 1920, чтобы выводить квантованные коэффициенты преобразования. Энтропийный кодер 1930 может кодировать квантованные коэффициенты преобразования в остаточные синтаксические элементы, включающие в себя значения уровня для того, чтобы выводить квантованные коэффициенты преобразования в форме потока битов.Transformer 1920 outputs transform coefficients by performing transform on residual sample values obtained by subtracting predictive samples generated by inter-prediction module 1905 or intra-prediction module 1910 from the original sample of the current block. A quantizer 1925 quantizes the transform coefficients output by the transform 1920 to output the quantized transform coefficients. Entropy encoder 1930 may encode the quantized transform coefficients into residual syntax elements including level values in order to output the quantized transform coefficients in the form of a bitstream.

Квантованные коэффициенты преобразования, выводимые посредством квантователя 1925, могут обратно квантоваться и обратно преобразовываться через обратный квантователь 1933 и обратный преобразователь 1935, и в силу этого значения остаточных выборок могут формироваться снова.The quantized transform coefficients output by quantizer 1925 may be inversely quantized and inversely transformed through inverse quantizer 1933 and inverse transformer 1935, and thus residual sample values may be generated again.

Сумматор суммирует значения остаточных выборок с прогнозными выборочными значениями, чтобы выводить значение восстановленной выборки. Поствосстанавливающий фильтр 1940 может выполнять поствосстанавливающую фильтрацию относительно восстановленных выборок, и восстановленные выборки, обновленные через поствосстанавливающую фильтрацию, могут использоваться в качестве значений опорных выборок для интра-прогнозирования, которое должно выполняться в модуле 1910 интра-прогнозирования. Поствосстанавливающий фильтр 1940 может выполнять фильтрацию в области преобразования Адамара или билатеральную фильтрацию для значений восстановленных выборок.The adder adds the residual sample values with the predicted sample values to output the reconstructed sample value. The post-recovery filter 1940 may perform post-recovery filtering on the recovered samples, and the recovered samples updated through the post-recovery filtering may be used as reference sample values for intra-prediction to be performed in intra-prediction module 1910. The post-restoration filter 1940 may perform Hadamard domain filtering or bilateral filtering on the reconstructed sample values.

Внутриконтурный фильтр 1945 может выполнять, по меньшей мере, одну из фильтрации для удаления блочности и адаптивной контурной фильтрации для восстановленных выборок, обновленных через поствосстанавливающую фильтрацию. Значения восстановленных выборок, обновленные через фильтрацию внутриконтурного фильтра 1945, могут сохраняться в DPB 1948 и могут использоваться в качестве значений опорных выборок для интер-прогнозирования, которое должно выполняться посредством модуля 1905 интер-прогнозирования.The in-loop filter 1945 may perform at least one of deblocking filtering and adaptive loop filtering on the reconstructed samples updated via post-restorative filtering. The reconstructed sample values updated through the filtering of the in-loop filter 1945 may be stored in the DPB 1948 and may be used as reference sample values for inter-prediction to be performed by inter-prediction module 1905.

Энтропийный декодер 1955 декодера 1950 может синтаксически анализировать остаточные синтаксические элементы, включающие в себя значения уровня, посредством выполнения энтропийного декодирования для принимаемого потока битов. Энтропийный декодер 1955 может восстанавливать квантованные коэффициенты преобразования из остаточных синтаксических элементов. Обратный квантователь 1960 может выводить коэффициенты преобразования посредством выполнения обратного квантования для квантованных коэффициентов преобразования, и обратный преобразователь 1965 может выводить значения остаточных выборок посредством выполнения обратного преобразования для коэффициентов преобразования.Entropy decoder 1955 of decoder 1950 may parse residual syntax elements including level values by performing entropy decoding on the received bit stream. Entropy decoder 1955 may recover the quantized transform coefficients from the residual syntax elements. An inverse quantizer 1960 may output the transform coefficients by performing inverse quantization on the quantized transform coefficients, and an inverse transform 1965 may output residual sample values by performing an inverse transform on the transform coefficients.

Модуль 1970 интер-прогнозирования декодера 1950 может определять опорный кадр, смежный во времени с текущим кадром, посредством использования информации движения текущего блока, синтаксически проанализированной посредством энтропийного декодера 1955, и может определять опорный блок в опорном кадре. Модуль 1970 интер-прогнозирования может определять прогнозные выборки текущего блока посредством использования выборок опорных блоков. Модуль 1975 интра-прогнозирования декодера 1950 может определять опорные выборки, пространственно смежные с текущим блоком, посредством использования внутренней информации движения и информации движения текущего блока, синтаксически проанализированной посредством энтропийного декодера 1955, и может определять прогнозные выборки текущего блока посредством использования определенных соседних выборок.Inter prediction module 1970 of decoder 1950 may determine a reference frame temporally adjacent to the current frame by using the current block motion information parsed by entropy decoder 1955 and may determine the reference block in the reference frame. Inter-prediction module 1970 may determine the prediction samples of the current block by using the reference block samples. Intra-prediction module 1975 of decoder 1950 may determine reference samples spatially adjacent to the current block by using intra-motion information and current block motion information parsed by entropy decoder 1955, and may determine prediction samples of the current block by using certain adjacent samples.

Модуль 1970 интер-прогнозирования может определять опорные выборки, которые должны использоваться для прогнозирования текущего блока, из числа предварительно восстановленных выборок, сохраненных в буфере 1990 декодированных кадров (DPB).Inter-prediction module 1970 may determine the reference samples to be used to predict the current block from among the pre-recovered samples stored in the decoded frame buffer (DPB) 1990.

Сумматор 1995 декодера 1950 суммирует остаточные значения выборок с прогнозными значениями выборок, чтобы выводить значение восстановленной выборки текущего блока. Поствосстанавливающий фильтр 1980 декодера 1950 может выполнять фильтрацию в области преобразования Адамара или билатеральную фильтрацию в отношении значений восстановленных выборок. Восстановленные выборки, обновленные через поствосстанавливающую фильтрацию поствосстанавливающего фильтра 1980, могут использоваться в качестве значений опорных выборок для интра-прогнозирования, которое должно выполняться в модуле 1975 интра-прогнозирования.An adder 1995 of the decoder 1950 adds the residual sample values to the predicted sample values to output the reconstructed sample value of the current block. Post-recovery filter 1980 of decoder 1950 may perform Hadamard domain filtering or bilateral filtering on the values of the recovered samples. The recovered samples updated through the post-recovery filtering of the post-recovery filter 1980 may be used as reference sample values for intra-prediction to be performed in intra-prediction module 1975.

Внутриконтурный фильтр 1985 декодера 1950 может выполнять по меньшей мере одну из фильтрации для удаления блочности и адаптивной контурной фильтрации для восстановленных выборок, обновленных через поствосстанавливающую фильтрацию. Значения восстановленных выборок, обновленные через фильтрацию внутриконтурного фильтра 1985, могут сохраняться в DPB 1990 и могут использоваться в качестве значений опорных выборок для интер-прогнозирования, которое должно выполняться посредством модуля 1970 интер-прогнозирования.In-loop filter 1985 of decoder 1950 may perform at least one of deblocking and adaptive loop filtering on the reconstructed samples updated via post-restoration filtering. The reconstructed sample values updated through the filtering of the in-loop filter 1985 may be stored in the DPB 1990 and may be used as reference sample values for inter-prediction to be performed by inter-prediction module 1970.

Различные варианты осуществления, описанные выше, описывают операции, связанные со способом декодирования изображений, который осуществляется посредством оборудования 100 декодирования изображений. В дальнейшем в этом документе описываются операции оборудования 200 кодирования изображений, которое осуществляет способ кодирования изображений, соответствующий обратному порядку способа декодирования изображений, посредством различных вариантов осуществления.The various embodiments described above describe operations related to the image decoding method that is performed by the image decoding equipment 100 . Hereinafter, the operations of the image encoding equipment 200 that implements the image encoding method corresponding to the reverse order of the image decoding method through various embodiments will be described in this document.

Фиг. 2 является блок-схемой оборудования 200 кодирования изображений, допускающего кодирование изображения, на основе по меньшей мере одной из информации формы блоков и информации режима согласно форме разбиения, согласно варианту осуществления.Fig. 2 is a block diagram of an image encoding equipment 200 capable of encoding an image based on at least one of block shape information and mode information according to a partition shape, according to an embodiment.

Оборудование 200 кодирования изображений может включать в себя кодер 220 и формирователь 210 потоков битов. Кодер 220 может принимать входное изображение и кодировать входное изображение. Кодер 220 может кодировать входное изображение, чтобы получать по меньшей мере один синтаксический элемент. Синтаксический элемент может включать в себя по меньшей мере одно из флага пропуска, режима прогнозирования, разности векторов движения, способа (или индекса) прогнозирования векторов движения, квантованного коэффициента преобразования, шаблона кодированного блока, флага кодированного блока, режима интра-прогнозирования, прямого флага, флага объединения, дельта-QP, опорного индекса, направления прогнозирования или индекса преобразования. Кодер 220 может определять контекстную модель, на основе информации формы блоков, включающей в себя по меньшей мере одно из формы, направления, отношения высоты и ширины или размера единицы кодирования.Image encoding equipment 200 may include an encoder 220 and a bitstream generator 210 . Encoder 220 may receive an input image and encode the input image. Encoder 220 may encode the input image to obtain at least one syntax element. The syntax element may include at least one of a skip flag, a prediction mode, a motion vector difference, a motion vector prediction method (or index), a quantized transform coefficient, a coded block pattern, a coded block flag, an intra-prediction mode, a forward flag, union flag, delta-QP, reference index, prediction direction, or transformation index. Encoder 220 may determine a context model based on block shape information including at least one of shape, direction, height-width ratio, or coding unit size.

Формирователь 210 потоков битов может формировать поток битов на основе кодированного входного изображения. Например, формирователь 210 потоков битов может формировать поток битов посредством выполнения энтропийного кодирования в отношении синтаксического элемента на основе контекстной модели. Оборудование 200 кодирования изображений может передавать поток битов в оборудование 100 декодирования изображений.The bitstream generator 210 may generate a bitstream based on the encoded input image. For example, the bitstream generator 210 may generate a bitstream by performing entropy encoding on a syntax element based on a context model. The image encoding equipment 200 may transmit the bit stream to the image decoding equipment 100 .

Согласно варианту осуществления, кодер 220 оборудования 200 кодирования изображений может определять форму единицы кодирования. Например, единица кодирования может иметь квадратную форму или неквадратную форму, и информация, представляющая такую форму, может включаться в информацию формы блоков.According to an embodiment, the encoder 220 of the image encoding equipment 200 may determine the shape of the coding unit. For example, a coding unit may have a square shape or a non-square shape, and information representing such a shape may be included in block shape information.

Согласно варианту осуществления, кодер 220 может определять форму, на которую должна разбиваться единица кодирования. Кодер 220 может определять форму по меньшей мере одной единицы кодирования, включенной в единицу кодирования, и формирователь 210 потоков битов может формировать поток битов, включающий в себя информацию режима согласно форме разбиения, включающую в себя информацию относительно формы единицы кодирования.According to an embodiment, encoder 220 may determine the form into which a coding unit is to be partitioned. The encoder 220 may determine the shape of at least one coding unit included in the coding unit, and the bitstream generator 210 may generate a bitstream including mode information according to the split shape, including information regarding the shape of the coding unit.

Согласно варианту осуществления, кодер 220 может определять то, следует или нет разбивать единицу кодирования. Когда кодер 220 определяет то, что единица кодирования включает в себя только одну единицу кодирования, или то, что единица кодирования не разбивается, формирователь 210 потоков битов может формировать поток битов, включающий в себя информацию режима согласно форме разбиения, представляющую то, что единица кодирования не разбивается. Кодер 220 может разбивать единицу кодирования на множество единиц кодирования, включенных в единицу кодирования, и формирователь 210 потоков битов может формировать поток битов, включающий в себя информацию режима согласно форме разбиения, представляющую то, что единица кодирования должна разбиваться на множество единиц кодирования.According to an embodiment, encoder 220 may determine whether or not to split a coding unit. When the encoder 220 determines that the coding unit includes only one coding unit, or that the coding unit is not split, the bitstream generator 210 may generate a bitstream including mode information according to a split shape representing that the coding unit does not break. The encoder 220 may partition a coding unit into a plurality of coding units included in the coding unit, and the bitstream generator 210 may generate a bitstream including mode information according to a partition shape representing that the coding unit is to be partitioned into the plurality of coding units.

Согласно варианту осуществления, информация, представляющая число единиц кодирования, на которые разбивается единица кодирования, или направление, в котором разбивается единица кодирования, может включаться в информацию режима согласно форме разбиения. Например, информация режима согласно форме разбиения может представлять разбиение в по меньшей мере одном направлении из вертикального направления и горизонтального направления или может представлять неразбиение.According to an embodiment, information representing the number of coding units into which a coding unit is partitioned or the direction in which a coding unit is partitioned may be included in the mode information according to a split shape. For example, the mode information according to the partition shape may represent a partition in at least one direction of a vertical direction and a horizontal direction, or may represent a non- partition.

Оборудование 200 кодирования изображений может определять информацию режима согласно форме разбиения на основе режима согласно форме разбиения единицы кодирования. Оборудование 200 кодирования изображений может определять контекстную модель, на основе по меньшей мере одного из формы, направления, отношения ширины и высоты или размера единицы кодирования. Оборудование 200 кодирования изображений может формировать информацию относительно режима согласно форме разбиения для разбиения единицы кодирования в качестве потока битов на основе контекстной модели.The image encoding equipment 200 can determine the mode information according to the split shape based on the mode according to the split shape of the coding unit. The image encoding equipment 200 may determine a context model based on at least one of the shape, direction, width-to-height ratio, or size of the coding unit. The image encoding equipment 200 may generate mode information according to a split form for splitting a coding unit as a bitstream based on a context model.

Чтобы определять контекстную модель, оборудование 200 кодирования изображений может получать компоновку для соответствующего по меньшей мере одного из формы, направления, отношения ширины и высоты или размера единицы кодирования в индекс для контекстной модели. Оборудование 200 кодирования изображений может получать индекс для контекстной модели, на основе по меньшей мере одной из формы, направления, отношения ширины и высоты или размера единицы кодирования, из компоновки. Оборудование 200 кодирования изображений может определять контекстную модель на основе индекса для контекстной модели.To determine the context model, the image encoding equipment 200 may obtain an arrangement for corresponding at least one of shape, direction, width-to-height ratio, or coding unit size into an index for the context model. The image encoding equipment 200 may obtain an index for a context model based on at least one of the shape, direction, width-to-height ratio, or coding unit size, from the layout. The image encoding equipment 200 may determine a context model based on an index for the context model.

Чтобы определять контекстную модель, оборудование 200 кодирования изображений может определять контекстную модель дополнительно на основе информации формы блоков, включающей в себя по меньшей мере одно из формы, направления, отношения ширины и высоты или размера окружающей единицы кодирования, смежной с единицей кодирования. Окружающая единица кодирования может включать в себя по меньшей мере одну из единиц кодирования, расположенных в левой нижней стороне, левой стороне, левой верхней стороне, верхней стороне, правой верхней стороне, правой стороне или правой нижней стороне единицы кодирования.To determine the context model, the image encoding equipment 200 may determine the context model further based on block shape information including at least one of the shape, direction, width-to-height ratio, or size of the surrounding coding unit adjacent to the coding unit. The surrounding coding unit may include at least one of the coding units located at the bottom left side, left side, top left side, top side, top right side, right side, or bottom right side of the coding unit.

Чтобы определять контекстную модель, оборудование 200 кодирования изображений может сравнивать длину ширины верхней окружающей единицы кодирования с длиной ширины единицы кодирования. Оборудование 200 кодирования изображений может сравнивать длины высот левой и правой окружающих единиц кодирования с длиной высоты единицы кодирования. Оборудование 200 кодирования изображений может определять контекстную модель, на основе результатов сравнений.To determine the context model, the image encoding equipment 200 may compare the width length of the top surrounding coding unit with the width length of the coding unit. The image encoding equipment 200 may compare the height lengths of the left and right surrounding coding units with the height length of the coding unit. The image encoding equipment 200 may determine a context model based on the results of the comparisons.

Операции оборудования 200 кодирования изображений включают в себя контент, который является аналогичным контенту оборудования 100 декодирования изображений, описанного выше со ссылкой на фиг. 3-19, и в силу этого подробные описания означенного опускаются.The operations of the image encoding equipment 200 include content that is similar to the content of the image decoding equipment 100 described above with reference to FIG. 3-19, and therefore detailed descriptions of what is meant are omitted.

Фиг. 20 является блок-схемой структуры оборудования 2000 декодирования изображений согласно варианту осуществления.Fig. 20 is a block diagram of the structure of the image decoding equipment 2000 according to the embodiment.

Ссылаясь на фиг. 20, оборудование 2000 декодирования изображений может включать в себя модуль 2010 получения потоков битов и прогнозный декодер 2030. Прогнозный декодер 2030 включает в себя модуль 2032 прогнозирования векторов движения и модуль 2034 восстановления векторов движения.Referring to FIG. 20, the image decoding equipment 2000 may include a bitstream acquisition unit 2010 and a predictive decoder 2030. Predictive decoder 2030 includes a motion vector prediction unit 2032 and a motion vector recovery unit 2034.

Модуль 2010 получения потоков битов, показанный на фиг. 20, может соответствовать модулю 110 получения потоков битов, показанному на фиг. 1, и прогнозный декодер 2030 может соответствовать декодеру 120, показанному на фиг. 1.The bitstream receiving module 2010 shown in FIG. 20 may correspond to the bit stream acquisition module 110 shown in FIG. 1 and predictive decoder 2030 may correspond to decoder 120 shown in FIG. 1.

Модуль 2010 получения потоков битов и прогнозный декодер 2030, согласно варианту осуществления, могут реализовываться как, по меньшей мере, один процессор. Оборудование 2000 декодирования изображений может включать в себя одно или более запоминающих устройств (не показаны) для сохранения входных и выходных данных модуля 2010 получения потоков битов и прогнозного декодера 2030. Оборудование 2000 декодирования изображений может включать в себя контроллер запоминающего устройства (не показан) для управления вводами и выводами данных запоминающего устройства (не показано).The bitstream receiving module 2010 and the predictive decoder 2030, according to an embodiment, may be implemented as at least one processor. The image decoding equipment 2000 may include one or more memories (not shown) for storing input and output data of the bitstream obtaining module 2010 and the predictive decoder 2030. The image decoding equipment 2000 may include a memory controller (not shown) for controlling storage device data inputs and outputs (not shown).

Модуль 2010 получения потоков битов получает поток битов как результат кодирования кадра. Модуль 2010 получения потоков битов получает синтаксические элементы для декодирования кадра из потока битов. Двоичные значения, соответствующие синтаксическим элементам, могут включаться в поток битов согласно многослойной структуре кадра. Модуль 2010 получения потоков битов может получать синтаксические элементы посредством энтропийного декодирования двоичных значений, включенных в поток битов.Module 2010 receive bit streams receives a bit stream as a result of encoding a frame. Module 2010 receive bit streams receives syntax elements for decoding a frame from a bit stream. Binary values corresponding to the syntax elements may be included in the bitstream according to the layered frame structure. Module 2010 receiving bit streams can receive syntax elements by entropy decoding of binary values included in the bit stream.

Поток битов может включать в себя информацию относительно режима прогнозирования текущего блока в пределах текущего кадра. Текущий блок может означать блок наибольшей единицы кодирования, единицы кодирования или единицы преобразования, разбитой из текущего кадра, который должен декодироваться.The bitstream may include information regarding the prediction mode of the current block within the current frame. The current block may mean a block of the largest coding unit, coding unit, or transformation unit split from the current frame to be decoded.

Режим прогнозирования текущего блока может включать в себя режим интра-прогнозирования или режим интер-прогнозирования. Как описано выше, режим интер-прогнозирования представляет собой режим восстановления текущего блока из опорного блока, указываемого посредством вектора движения текущего блока в опорном кадре.The prediction mode of the current block may include an intra prediction mode or an inter prediction mode. As described above, the inter-prediction mode is the recovery mode of the current block from the reference block indicated by the motion vector of the current block in the reference frame.

Прогнозный декодер 2030 может восстанавливать текущий блок посредством использования интра-прогнозирования или интер-прогнозирования согласно режиму прогнозирования текущего блока.Predictive decoder 2030 may recover the current block by using intra-prediction or inter-prediction according to the prediction mode of the current block.

В режиме интер-прогнозирования, информация движения может использоваться для того, чтобы восстанавливать текущий блок. Информация движения текущего блока может включать в себя направление прогнозирования, индекс опорного кадра и вектор движения текущего блока. Направление прогнозирования, индекс опорного кадра и вектор движения текущего блока могут подтверждаться из информации, включенной в поток битов.In the inter-prediction mode, motion information can be used to reconstruct the current block. The motion information of the current block may include a prediction direction, a reference frame index, and a motion vector of the current block. The prediction direction, the reference frame index, and the motion vector of the current block may be confirmed from information included in the bitstream.

Направление прогнозирования текущего блока может представлять собой одно из направления списка 0, направления списка 1 и двойного направления. Направление прогнозирования, представляющее собой направление списка 0, означает использование кадра, включенного в список 0 опорных кадров, в качестве опорного кадра направления списка 0, и направление прогнозирования, представляющее собой направление списка 1, означает использование кадра, включенного в список 1 опорных кадров, в качестве опорного кадра направления списка 1. Направление прогнозирования, представляющее собой двойное направление, означает использование кадра, включенного в список 0 опорных кадров, в качестве опорного кадра направления списка 0, и использование кадра, включенного в список 1 опорных кадров, в качестве опорного кадра направления списка 1.The prediction direction of the current block may be one of a list 0 direction, a list 1 direction, and a dual direction. The prediction direction being the list 0 direction means using the frame included in the list 0 of the reference frames as the reference frame of the list 0 direction, and the prediction direction being the list 1 direction means using the frame included in the list 1 of the reference frames in as the reference frame of the list 1 direction. The prediction direction being the dual direction means using the frame included in the list 0 of the reference frames as the reference frame of the list 0 direction, and using the frame included in the list 1 of the reference frames as the direction reference frame. list 1.

Индекс опорного кадра указывает кадр, используемый в качестве опорного кадра блока, из числа кадров, включенных в список 0 опорных кадров и/или список 1 опорных кадров. Согласно индексу опорного кадра направления списка 0, кадр, используемый в качестве опорного кадра списка 0 опорных кадров, указывается из числа кадров, включенных в направление списка 0. Согласно индексу опорного кадра направления списка 1, кадр, используемый в качестве опорного кадра списка 1 опорных кадров, указывается из числа кадров, включенных в направление списка 1.The reference frame index indicates a frame used as the reference frame of the block from among the frames included in the reference frame list 0 and/or the reference frame list 1. According to the reference frame index of the list direction 0, the frame used as the reference frame of list 0 of the reference frames is indicated from among the frames included in the list 0 direction. According to the reference frame index of the list 1 direction, the frame used as the reference frame of list 1 of the reference frames , is indicated from the number of frames included in the direction of list 1.

Вектор движения указывает местоположение опорного блока в опорном кадре. Вектор движения направления списка 0 означает вектор движения, указывающий опорный блок в опорном кадре направления списка 0, и вектор движения направления списка 1 означает вектор движения, указывающий опорный блок в опорном кадре направления списка 1.The motion vector indicates the location of the reference block in the reference frame. The list direction motion vector 0 means a motion vector indicating the reference block in the list direction reference frame 0, and the list direction motion vector 1 means the motion vector indicating the reference block in the list direction reference frame 1.

Когда направление прогнозирования текущего блока представляет собой направление списка 0, информация движения текущего блока включает в себя, по меньшей мере, одно из информации, указывающей то, что направление прогнозирования текущего блока представляет собой направление списка 0, индекса опорного кадра направления списка 0 и вектора движения направления списка 0. Когда направление прогнозирования текущего блока представляет собой направление списка 1, информация движения текущего блока включает в себя, по меньшей мере, одно из информации, указывающей то, что направление прогнозирования текущего блока представляет собой направление списка 1, индекса опорного кадра направления списка 1 и вектора движения направления списка 1. Когда направление прогнозирования текущего блока представляет собой двойное направление, информация движения текущего блока включает в себя, по меньшей мере, одно из информации, указывающей то, что направление прогнозирования текущего блока представляет собой двойное направление, индекса опорного кадра направления списка 0, индекса опорного кадра направления списка 0, вектора движения направления списка 0 и вектора движения направления списка 1.When the prediction direction of the current block is the list 0 direction, the motion information of the current block includes at least one of information indicating that the prediction direction of the current block is the list 0 direction, a reference frame index of the list 0 direction, and a motion vector of the list direction 0. When the prediction direction of the current block is the list direction 1, the movement information of the current block includes at least one of information indicating that the prediction direction of the current block is the list direction 1, the reference frame index of the list direction 1 and the motion vector of the list direction 1. When the prediction direction of the current block is the dual direction, the motion information of the current block includes at least one of information indicating that the prediction direction of the current block is the dual direction, the index of the reference frame list direction 0, list direction reference frame index 0, list direction motion vector 0, and list direction motion vector 1.

Согласно варианту осуществления, когда режим прогнозирования текущего блока представляет собой режим интер-прогнозирования, модуль 2010 получения потоков битов может получать информацию, указывающую направление прогнозирования текущего блока и индекс опорного кадра текущего блока, из потока битов. Прогнозный декодер 2030 может получать дифференциальный вектор движения текущего блока из информации, включенной в поток битов, и комбинировать прогнозный вектор движения текущего блока с дифференциальным вектором движения, чтобы получать вектор движения текущего блока.According to an embodiment, when the prediction mode of the current block is the inter prediction mode, the bitstream obtaining unit 2010 can obtain information indicating the prediction direction of the current block and the reference frame index of the current block from the bitstream. Predictive decoder 2030 may obtain the differential motion vector of the current block from the information included in the bit stream and combine the predictive motion vector of the current block with the differential motion vector to obtain the motion vector of the current block.

Прогнозный декодер 2030 может восстанавливать текущий блок, на основе направления прогнозирования, индекса опорного кадра и вектора движения текущего блока.Predictive decoder 2030 may reconstruct the current block based on the prediction direction, the reference frame index, and the motion vector of the current block.

Ниже подробно описывается способ, осуществляемый посредством прогнозного декодера 2030, для получения прогнозного вектора движения текущего блока.The following describes in detail the method implemented by the predictive decoder 2030 to obtain the predictive motion vector of the current block.

Модуль 2032 прогнозирования векторов движения согласно варианту осуществления может получать прогнозный вектор движения посредством использования векторов движения соседних блоков, смежных с текущим блоком. Соседние блоки, которые представляют собой блоки в предварительно определенных местоположениях, используемые для того, чтобы получать прогнозный вектор движения текущего блока, включаются в текущий кадр вместе с текущим блоком.The motion vector prediction module 2032 according to an embodiment can obtain a predictive motion vector by using the motion vectors of neighboring blocks adjacent to the current block. Neighbor blocks, which are blocks at predetermined locations used to obtain the predictive motion vector of the current block, are included in the current frame along with the current block.

Соседние блоки могут включать в себя блок A0, блок A1, блок B0, блок B1 и блок B2.Neighbor blocks may include block A0, block A1, block B0, block B1, and block B2.

Модуль 2032 прогнозирования векторов движения может идентифицировать местоположения блока A0, блока A1, блока B0, блока B1 и блока B2, на основе информации, указывающей доступность левого и правого блоков относительно текущего блока.The motion vector prediction module 2032 may identify the locations of block A0, block A1, block B0, block B1, and block B2, based on information indicating the availability of left and right blocks relative to the current block.

В общем видеокодеке, декодирование в направлении растрового сканирования проводится для кадра. В этом случае, левый блок относительно текущего блока полностью декодируется перед текущим блоком и доступен, и правый блок относительно текущего блока не декодируется полностью и не доступен.In a general video codec, decoding in the bitmap direction is performed per frame. In this case, the left block relative to the current block is fully decoded before the current block and is available, and the right block relative to the current block is not fully decoded and not available.

В раскрытии, направление блоков декодирования, разбитых из кадра, может адаптивно определяться. Другими словами, эффективность кодирования может повышаться посредством декодирования некоторых блоков, разбитых из кадра в направлении справа налево, вместо декодирования всех блоков, разбитых из кадра в направлении растрового сканирования. Соответственно, правый блок относительно текущего блока доступен, и левый блок относительно текущего блока не доступен, либо левый и правый блоки относительно текущего блока доступны.In the disclosure, the direction of decoding blocks split from a frame may be adaptively determined. In other words, encoding efficiency can be improved by decoding some of the blocks split from a frame in the right-to-left direction instead of decoding all the blocks split from a frame in the raster scanning direction. Accordingly, the right block relative to the current block is available, and the left block relative to the current block is not available, or the left and right blocks relative to the current block are available.

Определение в отношении того, доступны или нет левый блок и правый блок, может осуществляться идентично определению в отношении доступности первого соседнего блока, которое описывается в дальнейшем.The determination as to whether or not the left block and the right block are available may be identical to the determination regarding the availability of the first neighboring block, which is described hereinafter.

Ниже описываются местоположения соседних блоков, которые варьируются согласно доступности левого и правого блоков относительно текущего блока, со ссылкой на фиг. 21A-21C.The following describes the locations of neighboring blocks, which vary according to the availability of the left and right blocks relative to the current block, with reference to FIG. 21A-21C.

Фиг. 21A иллюстрирует местоположения соседних блоков, когда левый блок относительно текущего блока 2100 доступен.Fig. 21A illustrates the locations of adjacent blocks when the left block relative to the current block 2100 is available.

Местоположения соседних блоков, когда левый блок относительно текущего блока 2100 доступен, могут быть идентичными местоположениям пространственных соседних блоков, заданных в стандарте HEVC.Neighbor block locations, when a left block relative to the current block 2100 is available, may be identical to the spatial neighbor block locations specified in the HEVC standard.

Ссылаясь на фиг. 21A соседние блоки могут включать в себя левый нижний угловой блок A0, левый нижний блок A1, правый верхний угловой блок B0, правый верхний блок B1 и левый верхний угловой блок B2 относительно текущего блока 2100. Как показано на фиг. 21A, левый нижний блок A1 может быть расположен поверх левого нижнего углового блока A0, и правый верхний блок B1 может быть расположен слева от правого верхнего углового блока B0.Referring to FIG. 21A, adjacent blocks may include a left lower corner block A0, a left lower block A1, a right upper corner block B0, a right upper block B1, and a left upper corner block B2 relative to the current block 2100. As shown in FIG. 21A, the lower left block A1 may be positioned on top of the lower left corner block A0, and the upper right block B1 may be positioned to the left of the upper right corner block B0.

Фиг. 21B иллюстрирует местоположения соседних блоков, когда левый и правый блоки относительно текущего блока 2100 доступны.Fig. 21B illustrates the locations of adjacent blocks when left and right blocks relative to the current block 2100 are available.

Ссылаясь на фиг. 21B, соседние блоки могут включать в себя правый верхний угловой блок A0, левый нижний блок A1, левый верхний блок B0, правый нижний блок B1 и левый верхний угловой блок B2 относительно текущего блока 2100. Как показано на фиг. 21B, левый верхний угловой блок B2 может быть расположен слева от левого верхнего блока B0.Referring to FIG. 21B, adjacent blocks may include a right upper corner block A0, a left lower block A1, a left upper block B0, a right lower block B1, and a left upper corner block B2 relative to the current block 2100. As shown in FIG. 21B, the upper left corner block B2 may be positioned to the left of the upper left block B0.

Фиг. 21C иллюстрирует местоположения соседних блоков, когда правый блок относительно текущего блока 2100 доступен.Fig. 21C illustrates the locations of adjacent blocks when the right block relative to the current block 2100 is available.

Ссылаясь на фиг. 21C, соседние блоки могут включать в себя правый нижний угловой блок A0, правый нижний блок A1, левый верхний угловой блок B0, левый верхний блок B1 и правый верхний угловой блок B2 относительно текущего блока 2100. Как показано на фиг. 21C, правый нижний блок A1 может быть расположен поверх правого нижнего углового блока A0, и левый верхний блок B1 может быть расположен справа от левого верхнего углового блока B0.Referring to FIG. 21C, adjacent blocks may include a right lower corner block A0, a right lower block A1, a left upper corner block B0, a left upper block B1, and a right upper corner block B2 relative to the current block 2100. As shown in FIG. 21C, the lower right block A1 may be positioned on top of the lower right corner block A0, and the upper left block B1 may be positioned to the right of the upper left corner block B0.

Местоположения соседних блоков, показанных на фиг. 21A-21C, представляют собой просто пример. Согласно вариантам осуществления, местоположения соседних блоков и число соседних блоков могут варьироваться.Locations of adjacent blocks shown in FIG. 21A-21C are merely an example. According to embodiments, the locations of neighboring blocks and the number of neighboring blocks may vary.

Модуль 2032 прогнозирования векторов движения может определять доступность левого и правого блоков относительно текущего блока и может указывать местоположения соседних блоков, которые должны использоваться для того, чтобы получать прогнозный вектор движения текущего блока, из информации, указывающей доступность левого и правого блоков относительно текущего блока.The motion vector prediction module 2032 may determine the availability of the left and right blocks relative to the current block and may indicate the locations of neighboring blocks to be used in order to obtain the predictive motion vector of the current block from the information indicating the availability of the left and right blocks relative to the current block.

Согласно варианту осуществления, модуль 2032 прогнозирования векторов движения выбирает первый соседний блок из информации, полученной из потока битов. Первый соседний блок может представлять собой один из блока A0, блока A1, блока B0, блока B1 и блока B2, соответствующих соседним блокам.According to an embodiment, the motion vector predictor 2032 selects the first neighbor block from the information obtained from the bitstream. The first neighboring block may be one of an A0 block, an A1 block, a B0 block, a B1 block, and a B2 block corresponding to the neighboring blocks.

Согласно варианту осуществления, информация, полученная из потока битов, может представлять собой информацию, указывающую разрешение векторов движения текущего блока. Модуль 2032 прогнозирования векторов движения может подтверждать информацию, указывающую разрешение векторов движения текущего блока, согласно информации, полученной из потока битов, из множества предварительно определенных разрешений векторов движения, и может выбирать первый соседний блок для получения прогнозного вектора движения.According to an embodiment, the information obtained from the bit stream may be information indicating the resolution of the motion vectors of the current block. The motion vector prediction unit 2032 may confirm information indicating the motion vector resolution of the current block according to the information obtained from the bitstream from among the plurality of predetermined motion vector resolutions, and may select the first neighboring block to obtain the predictive motion vector.

Разрешение векторов движения может означать точность местоположения пиксела, которое может указываться посредством вектора движения, определенного через интер-прогнозирование, из числа пикселов, включенных в опорный кадр (или интерполированный опорный кадр). Разрешение векторов движения, имеющее N-пиксельную единицу (где N является рациональным числом), означает то, что вектор движения может иметь точность в N-пиксельную единицу. Например, разрешение векторов движения в 1/4-пиксельную единицу может означать то, что вектор движения может указывать пиксел в 1/4-пиксельную единицу (т.е. в субпиксельную единицу) в интерполированном опорном кадре, и разрешение векторов движения в 1-пиксельную единицу может означать то, что вектор движения может указывать пиксел в 1-пиксельную единицу (т.е. в целочисленнопиксельную единицу) в интерполированном опорном кадре. Разрешение векторов движения, допускающее выражение вектора движения текущего блока из числа нескольких разрешений векторов движения, может адаптивно определяться.The resolution of motion vectors may mean the accuracy of a pixel location, which may be indicated by a motion vector determined via inter-prediction from among the pixels included in a reference frame (or interpolated reference frame). A motion vector resolution having an N-pixel unit (where N is a rational number) means that the motion vector can have N-pixel unit precision. For example, resolving the motion vectors to 1/4 pixel unit may mean that the motion vector can point to a pixel in 1/4 pixel unit (i.e., sub-pixel unit) in the interpolated reference frame, and resolving the motion vectors to 1- pixel unit may mean that the motion vector may point a pixel to a 1-pixel unit (ie, an integer pixel unit) in the interpolated reference frame. A motion vector resolution allowing a motion vector expression of the current block from among multiple motion vector resolutions may be adaptively determined.

Согласно варианту осуществления, информация, указывающая разрешение векторов движения, которое получается из потока битов, может указывать первый соседний блок из числа соседних блоков в различных местоположениях при указании одного разрешения векторов движения из числа нескольких разрешений векторов движения.According to an embodiment, the information indicating the motion vector resolution that is obtained from the bit stream may indicate the first neighboring block among neighboring blocks at different locations when indicating one motion vector resolution among multiple motion vector resolutions.

Фиг. 22 является таблицей, показывающей взаимосвязь на основе совпадения между индексами разрешений векторов движения, разрешений векторов движения и местоположений соседних блоков.Fig. 22 is a table showing a match-based relationship between indexes of motion vector permissions, motion vector permissions, and neighboring block locations.

Ссылаясь на фиг. 22, разрешение векторов движения и соседний блок, соответствующий первому соседнему блоку, могут определяться согласно значениям AMVR-индекса. Например, когда AMVR-индекс равен 0, разрешение векторов движения текущего блока может выбираться в качестве 1/4-пиксельной единицы (пела), и первый соседний блок может выбираться в качестве блока A1. Когда AMVR-индекс равен 1, разрешение векторов движения текущего блока может выбираться в качестве 1/2-пиксельной единицы (пела), и первый соседний блок может выбираться в качестве блока B1.Referring to FIG. 22, motion vector resolution and a neighbor block corresponding to the first neighbor block may be determined according to the AMVR index values. For example, when the AMVR index is 0, the resolution of the motion vectors of the current block may be selected as a 1/4 pixel unit (pel), and the first adjacent block may be selected as block A1. When the AMVR index is 1, the resolution of the motion vectors of the current block may be selected as a 1/2-pixel unit (pel), and the first adjacent block may be selected as the B1 block.

В существующем стандарте HEVC несколько соседних блоков включаются в список возможных вариантов, и вектор движения соседнего блока в списке возможных вариантов, выбранном из информации, сигнализируемой через поток битов, используется в качестве прогнозного вектора движения. Тем не менее, согласно раскрытию, первый соседний блок, используемый для того, чтобы получать прогнозный вектор движения текущего блока, может указываться согласно информации, полученной из потока битов, а именно, информации, указывающей разрешение векторов движения текущего блока. Соответственно, специальная информация (например, mvp_l0_flag и mvp_l1_flag в HEVC), указывающая один соседний блок, включенный в список возможных вариантов, не включается в поток битов.In the existing HEVC standard, multiple neighboring blocks are included in a candidate list, and the motion vector of the neighboring block in the candidate list selected from the information signaled via the bitstream is used as the predictive motion vector. However, according to the disclosure, the first neighboring block used to obtain the predictive motion vector of the current block may be indicated according to information obtained from the bit stream, namely, information indicating the resolution of the motion vectors of the current block. Accordingly, special information (eg, mvp_l0_flag and mvp_l1_flag in HEVC) indicating one neighbor block included in the candidate list is not included in the bitstream.

Модуль 2032 прогнозирования векторов движения определяет доступность первого соседнего блока, выбранного согласно информации, указывающей разрешение векторов движения. Подробно, модуль 2032 прогнозирования векторов движения определяет доступность первого соседнего блока, согласно по меньшей мере одному из того, отличается или нет плитка, включающая в себя первый соседний блок, от плитки, включающей в себя текущий блок, того, расположен или нет первый соседний блок за пределами текущего кадра, того, спрогнозирован ли первый соседний блок посредством интра-прогнозирования или нет, и того, выполнено или нет восстановление первого соседнего блока.The motion vector prediction unit 2032 determines the availability of the first neighbor block selected according to the information indicating resolution of the motion vectors. In detail, the motion vector prediction module 2032 determines the availability of the first neighbor block according to at least one of whether or not the tile including the first neighbor block is different from the tile including the current block, whether or not the first neighbor block is located. outside the current frame, whether the first neighbor block is predicted by intra-prediction or not, and whether or not the recovery of the first neighbor block is performed.

Например, когда любое из следующих четырех условий удовлетворяется, модуль 2032 прогнозирования векторов движения может определять то, что первый соседний блок не доступен.For example, when any of the following four conditions is satisfied, the motion vector prediction module 2032 may determine that the first neighboring block is not available.

(Условие 1) Плитка, включающая в себя первый соседний блок, отличается от плитки, включающей в себя текущий блок.(Condition 1) The tile including the first neighboring block is different from the tile including the current block.

(Условие 2) Первый соседний блок расположен за пределами текущего кадра.(Condition 2) The first adjacent block is outside the current frame.

(Условие 3) Первый соседний блок не восстанавливается.(Condition 3) The first neighboring block is not restored.

(Условие 4) Первый соседний блок кодирован в режиме интра-прогнозирования или режиме внутриблочного копирования (IBC).(Condition 4) The first adjacent block is encoded in intra-prediction mode or intra-block copy (IBC) mode.

В режиме IBC выполняется поиск блока прогнозирования, соответствующего текущему блоку, из текущего кадра. Блок прогнозирования может быть найден через оценку движения относительно текущего кадра. Например, можно выполнять поиск блока прогнозирования в текущем кадре в единицах целочисленных пикселов, и позиционная взаимосвязь между текущим блоком и найденным блоком прогнозирования может сообщаться в декодер.The IBC mode searches for a prediction block corresponding to the current block from the current frame. The prediction block can be found through motion estimation relative to the current frame. For example, a prediction block in the current frame may be searched in units of integer pixels, and a positional relationship between the current block and the found prediction block may be reported to the decoder.

Согласно варианту осуществления, когда из информации, указывающей доступность первого соседнего блока, идентифицируется то, что первый соседний блок доступен, и индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, не является идентичным предварительно определенному значению (например, -1), модуль 2032 прогнозирования векторов движения может определять то, что вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения. Когда вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения, модуль 2032 прогнозирования векторов движения извлекает прогнозный вектор движения текущего блока из вектора движения первого соседнего блока.According to an embodiment, when it is identified from the information indicating the availability of the first neighbor block that the first neighbor block is available, and the reference frame index of the first neighbor block for the prediction direction identical to the prediction direction of the current block is not the same as a predetermined value (for example, − 1), the motion vector prediction module 2032 may determine that the motion vector of the first neighbor block is available as the predictive motion vector. When the motion vector of the first neighbor block is available as the predictive motion vector, the motion vector prediction module 2032 extracts the predictive motion vector of the current block from the motion vector of the first neighbor block.

Даже когда из информации, указывающей доступность первого соседнего блока, идентифицируется то, что первый соседний блок не доступен, или первый соседний блок доступен, когда индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, является идентичным предварительно определенному значению, может определяться то, что вектор движения первого соседнего блока не доступен в качестве прогнозного вектора движения. В этом случае, модуль 2032 прогнозирования векторов движения может получать вектор движения по умолчанию согласно процедуре извлечения векторов движения по умолчанию, которая описывается ниже, и может получать прогнозный вектор движения текущего блока посредством использования вектора движения по умолчанию.Even when it is identified from the information indicating the availability of the first neighbor block that the first neighbor block is not available or the first neighbor block is available, when the reference frame index of the first neighbor block for the prediction direction identical to the prediction direction of the current block is the same as a predetermined value, it may be determined that the motion vector of the first neighboring block is not available as a predictive motion vector. In this case, the motion vector prediction unit 2032 may obtain a default motion vector according to the default motion vector extraction procedure to be described below, and may obtain the predictive motion vector of the current block by using the default motion vector.

Когда индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, не является идентичным предварительно определенному значению, это может означать то, что имеется вектор движения первого соседнего блока, который указывает опорный кадр направления прогнозирования, идентичного направлению прогнозирования текущего блока. С другой стороны, когда индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, является идентичным предварительно определенному значению, это может означать то, что отсутствуют векторы движения первого соседнего блока, которые указывают опорный кадр направления прогнозирования, идентичного направлению прогнозирования текущего блока.When the index of the reference frame of the first neighbor block for the prediction direction identical to the prediction direction of the current block is not the same as a predetermined value, it may mean that there is a first neighbor block motion vector that indicates a reference frame of the prediction direction identical to the prediction direction of the current block. On the other hand, when the reference frame index of the first neighbor block for the prediction direction identical to the prediction direction of the current block is the same as a predetermined value, it may mean that there are no motion vectors of the first neighbor block that indicate the reference frame of the prediction direction identical to the prediction direction. current block.

Индекс опорного кадра первого соседнего блока включает в себя индекс опорного кадра направления списка 0 и индекс опорного кадра направления списка 1. Значение индекса опорного кадра направления списка 0 и значение индекса опорного кадра направления списка 1 могут определяться согласно направлению прогнозирования первого соседнего блока.The first neighbor block reference frame index includes a list 0 direction reference frame index and a list 1 direction reference frame index. The list 0 direction reference frame index value and the list 1 direction reference frame index value may be determined according to the prediction direction of the first neighbor block.

Например, когда направление прогнозирования первого соседнего блока представляет собой направление списка 0, индекс опорного кадра направления списка 0 задается в качестве значения индекса (например, ref_idx_l0), полученного из потока битов, и индекс опорного кадра направления списка 1 задается в качестве предварительно определенного значения. Поскольку кадры, включенные в список опорных кадров, имеют индексы 0-n (где n является натуральным числом), предварительно определенное значение может быть значением, отличающимся от 0-n, например, -1.For example, when the prediction direction of the first neighbor block is the list 0 direction, the list 0 direction reference frame index is set as an index value (eg, ref_idx_l0) obtained from the bit stream, and the list 1 direction reference frame index is set as a predetermined value. Because the frames included in the reference frame list have indices 0-n (where n is a natural number), the predetermined value may be a value other than 0-n, such as -1.

Когда направление прогнозирования первого соседнего блока представляет собой направление списка 1, индекс опорного кадра направления списка 1 задается в качестве значения индекса (например, ref_idx_l1), полученного из потока битов, и индекс опорного кадра направления списка 0 задается в качестве предварительно определенного значения.When the prediction direction of the first neighbor block is the list 1 direction, the list 1 direction reference frame index is set as an index value (eg, ref_idx_l1) obtained from the bit stream, and the list 0 direction reference frame index is set as a predetermined value.

Когда направление прогнозирования первого соседнего блока представляет собой двойное направление, индекс опорного кадра направления списка 0 и индекс опорного кадра направления списка 1 задаются в качестве значений индексов (например, ref_idx_l0 и ref_idx_l1), полученных из потока битов.When the prediction direction of the first neighbor block is the dual direction, the list 0 direction reference frame index and the list 1 direction reference frame index are set as index values (eg, ref_idx_l0 and ref_idx_l1) obtained from the bit stream.

Ниже описывается случай, в котором индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, является идентичным предварительно определенному значению или не является идентичным предварительно определенному значению, со ссылкой на фиг. 23A-23C.The following describes the case in which the index of the reference frame of the first neighboring block for the same prediction direction as the current block is the same as the predetermined value or is not the same as the predetermined value, with reference to FIG. 23A-23C.

Фиг. 23A иллюстрирует случай, в котором индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным предварительно определенному значению.Fig. 23A illustrates a case in which the reference frame index of the first adjacent block in the same prediction direction as the current block is not the same as a predetermined value.

Ссылаясь на фиг. 23A, соответствующие направления прогнозирования текущего блока 2312 и первого соседнего блока 2314 представляют собой направление списка 0. Соответственно, вектор MV движения первого соседнего блока 2314 указывает опорный блок в опорном кадре 2330, включенном в список 0 опорных кадров. Индекс опорного кадра первого соседнего блока 2314 в направлении списка 0 задается согласно информации, полученной из потока битов, и индекс опорного кадра первого соседнего блока 2314 в направлении списка 1 задается в качестве предварительно определенного значения. Поскольку индекс опорного кадра первого соседнего блока 2314 в идентичном направлении прогнозирования, а именно, в направлении списка 0, с направлением прогнозирования текущего блока 2312 не является идентичным предварительно определенному значению, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 посредством использования вектора MV движения первого соседнего блока 2314.Referring to FIG. 23A, the respective prediction directions of the current block 2312 and the first neighboring block 2314 are the direction of list 0. Accordingly, the motion vector MV of the first neighboring block 2314 indicates a reference block in a reference frame 2330 included in list 0 of the reference frames. The reference frame index of the first neighbor block 2314 in the list 0 direction is set according to information obtained from the bitstream, and the reference frame index of the first neighbor block 2314 in the list 1 direction is set as a predetermined value. Since the reference frame index of the first adjacent block 2314 in the same prediction direction, namely, list 0 direction, with the prediction direction of the current block 2312 is not identical to the predetermined value, the motion vector predictor 2032 obtains the predictive motion vector of the current block 2312 by using the MV vector movement of the first adjacent block 2314.

Аналогично, когда соответствующие направления прогнозирования текущего блока 2312 и первого соседнего блока 2314 представляют собой направление списка 1, поскольку индекс опорного кадра первого соседнего блока 2314 в идентичном направлении прогнозирования, а именно, в направлении списка 1, с направлением прогнозирования текущего блока 2312 не является идентичным предварительно определенному значению, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 посредством использования вектора MV движения первого соседнего блока 2314.Similarly, when the respective prediction directions of the current block 2312 and the first neighboring block 2314 are the list 1 direction, since the index of the reference frame of the first neighboring block 2314 in the same prediction direction, namely the list 1 direction, with the prediction direction of the current block 2312 is not identical a predetermined value, the motion vector predictor 2032 obtains the predictive motion vector of the current block 2312 by using the motion vector MV of the first adjacent block 2314.

Фиг. 23B иллюстрирует случай, в котором индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным предварительно определенному значению.Fig. 23B illustrates a case in which the reference frame index of the first adjacent block in the same prediction direction as the current block is the same as a predetermined value.

Ссылаясь на фиг. 23B, направления прогнозирования текущего блока 2312 представляют собой направление списка 1, и направления прогнозирования первого соседнего блока 2314 представляет собой направление списка 0. Вектор MV движения первого соседнего блока 2314 указывает опорный блок в опорном кадре 2330, включенном в список 0 опорных кадров. Индекс опорного кадра первого соседнего блока 2314 в направлении списка 0 задается согласно информации, полученной из потока битов, и индекс опорного кадра первого соседнего блока 2314 в направлении списка 1 задается в качестве предварительно определенного значения. Поскольку индекс опорного кадра первого соседнего блока 2314 в идентичном направлении прогнозирования, а именно, в направлении списка 1, с направлением прогнозирования текущего блока 2312 является идентичным предварительно определенному значению, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 посредством использования вектора движения по умолчанию, который описывается ниже.Referring to FIG. 23B, the prediction directions of the current block 2312 are the list 1 direction, and the prediction directions of the first neighbor block 2314 are the list 0 direction. The motion vector MV of the first neighbor block 2314 indicates a reference block in a reference frame 2330 included in the reference frame list 0. The reference frame index of the first neighbor block 2314 in the list 0 direction is set according to information obtained from the bit stream, and the reference frame index of the first neighbor block 2314 in the list 1 direction is set as a predetermined value. Since the index of the reference frame of the first neighboring block 2314 in the same prediction direction, namely the list 1 direction, with the prediction direction of the current block 2312 is identical to the predetermined value, the motion vector predictor 2032 obtains the predictive motion vector of the current block 2312 by using the motion vector of default, which is described below.

Аналогично, когда направления прогнозирования текущего блока 2312 представляют собой направление списка 0, и направления прогнозирования первого соседнего блока 2314 представляют собой направление списка 1, поскольку индекс опорного кадра первого соседнего блока 2314 в идентичном направлении прогнозирования, а именно, в направлении списка 0, с направлением прогнозирования текущего блока 2312 является идентичным предварительно определенному значению, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 посредством использования вектора движения по умолчанию.Similarly, when the prediction directions of the current block 2312 are the list 0 direction and the prediction directions of the first neighboring block 2314 are the list 1 direction, since the reference frame index of the first neighboring block 2314 in the same prediction direction, namely, the list 0 direction, with the direction prediction of the current block 2312 is identical to the predetermined value, the motion vector predictor 2032 obtains the predictive motion vector of the current block 2312 by using the default motion vector.

Фиг. 23C иллюстрирует случай, в котором, когда направление прогнозирования текущего блока представляет собой двойное направление, один из индекса опорного кадра первого соседнего блока в направлении списка 0 и индекса опорного кадра первого соседнего блока в направлении списка 1 является идентичным предварительно определенному значению, а другой не является идентичным предварительно определенному значению.Fig. 23C illustrates a case in which, when the prediction direction of the current block is the dual direction, one of the reference frame index of the first neighbor block in the list 0 direction and the reference frame index of the first neighbor block in the list 1 direction is the same as the predetermined value, and the other is not identical to the predefined value.

Ссылаясь на фиг. 23C, направления прогнозирования текущего блока 2312 представляют собой двойное направление, и направления прогнозирования первого соседнего блока 2314 представляют собой направление списка 1. Вектор MV движения первого соседнего блока 2314 указывает опорный блок в опорном кадре 2350, включенном в список 1 опорных кадров. Индекс опорного кадра первого соседнего блока 2314 в направлении списка 0 задается в качестве предварительно определенного значения, и индекс опорного кадра первого соседнего блока 2314 в направлении списка 1 задается согласно информации, полученной из потока битов. Как описано выше, направление прогнозирования, представляющее собой двойное направление, включает в себя направление списка 0 и направление списка 1. Поскольку индекс опорного кадра первого соседнего блока 2314 в направлении списка 0 является идентичным предварительно определенному значению, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 в направлении списка 0 посредством использования вектора движения по умолчанию. Поскольку индекс опорного кадра первого соседнего блока 2314 в направлении списка 1 не является идентичным предварительно определенному значению, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 посредством использования вектора MV движения первого соседнего блока 2314 в направлении списка 1.Referring to FIG. 23C, the prediction directions of the current block 2312 are the dual direction, and the prediction directions of the first neighbor block 2314 are the list 1 direction. The motion vector MV of the first neighbor block 2314 indicates a reference block in a reference frame 2350 included in list 1 of the reference frames. The reference frame index of the first neighbor block 2314 in the list 0 direction is set as a predetermined value, and the reference frame index of the first neighbor block 2314 in the list 1 direction is set according to information obtained from the bitstream. As described above, the prediction direction being the dual direction includes the list 0 direction and the list 1 direction. the current block 2312 towards list 0 by using the default motion vector. Since the reference frame index of the first neighbor block 2314 in the list 1 direction is not identical to the predetermined value, the motion vector predictor 2032 obtains the predictive motion vector of the current block 2312 by using the motion vector MV of the first neighbor block 2314 in the list 1 direction.

Когда направление прогнозирования текущего блока 2312 представляет собой двойное направление, и направление прогнозирования первого соседнего блока 2314 представляет собой направление списка 0, модуль 2032 прогнозирования векторов движения получает прогнозный вектор движения текущего блока 2312 в направлении списка 1 посредством использования вектора MV движения первого соседнего блока 2314 в направлении списка 0 и получает прогнозный вектор движения текущего блока 2312 в направлении списка 1 посредством использования вектора движения по умолчанию.When the prediction direction of the current block 2312 is the dual direction, and the prediction direction of the first neighboring block 2314 is the list 0 direction, the motion vector predictor 2032 obtains the prediction motion vector of the current block 2312 in the list 1 direction by using the motion vector MV of the first neighboring block 2314 in direction of list 0 and obtains a predictive motion vector of the current block 2312 in the direction of list 1 by using the default motion vector.

В раскрытии, когда первый соседний блок доступен и индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным предварительно определенному значению, определяется то, что вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения. Прогнозный вектор движения текущего блока получается из вектора движения первого соседнего блока.In the disclosure, when the first neighbor block is available and the reference frame index of the first neighbor block in the same prediction direction as the current block is not the same as the predetermined value, it is determined that the motion vector of the first neighbor block is available as the predictive motion vector. The predictive motion vector of the current block is obtained from the motion vector of the first adjacent block.

Когда определено, что вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения, только согласно такому условию, что первый соседний блок должен быть доступным, прогнозный вектор движения первого соседнего блока с большой вероятностью задается в качестве нулевого вектора, а именно, (0, 0). Другими словами, когда первый соседний блок доступен, но отсутствуют векторы движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, вектор движения первого соседнего блока может не использоваться в качестве прогнозного вектора движения текущего блока. Таким образом, прогнозный вектор движения текущего блока может определяться в качестве нулевого вектора и в силу этого становится фактором, который увеличивает число битов, необходимых для выражения дифференциального вектора движения.When it is determined that the motion vector of the first neighbor block is available as the predictive motion vector, only according to such a condition that the first neighbor block is to be available, the predictive motion vector of the first neighbor block is set as the null vector with high probability, namely, (0, 0). In other words, when the first neighbor block is available, but there are no motion vectors of the first neighbor block in the same prediction direction as the current block, the motion vector of the first neighbor block may not be used as the prediction motion vector of the current block. Thus, the predictive motion vector of the current block can be determined as a null vector and thereby becomes a factor that increases the number of bits needed to express the differential motion vector.

В раскрытии, если не только такое условие, что первый соседний блок должен быть доступным, но также и такое условие, что вектор движения первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, должен существовать, удовлетворяются, прогнозный вектор движения текущего блока получается с использованием вектора движения первого соседнего блока, приводя к уменьшению числа битов, необходимых для выражения дифференциального вектора движения.In the disclosure, if not only such a condition that the first neighboring block must be available, but also such a condition that the motion vector of the first neighboring block in the prediction direction identical to the prediction direction of the current block must exist, is satisfied, the prediction motion vector of the current block is obtained using the motion vector of the first neighboring block, resulting in a reduction in the number of bits needed to express the differential motion vector.

Ниже описывается процесс извлечения вектора движения по умолчанию, когда вектор движения первого соседнего блока не доступен в качестве прогнозного вектора движения.The following describes the default motion vector extraction process when the motion vector of the first neighboring block is not available as a predictive motion vector.

Согласно варианту осуществления, когда вектор движения первого соседнего блока не доступен в качестве прогнозного вектора движения, модуль 2032 прогнозирования векторов движения может задавать вектор движения второго соседнего блока в предварительно определенном местоположении в качестве вектора движения по умолчанию. Второй соседний блок может предоставляться во множестве. В этом случае, вектор движения второго соседнего блока может задаваться в качестве вектора движения по умолчанию посредством определения доступности множества вторых соседних блоков.According to an embodiment, when the motion vector of the first neighbor block is not available as the predictive motion vector, the motion vector predictor 2032 may set the motion vector of the second neighbor block at the predetermined location as the default motion vector. The second neighbor block may be provided in a plurality. In this case, the motion vector of the second neighboring block may be set as the default motion vector by determining the availability of a plurality of second neighboring blocks.

Второй соседний блок может соответствовать, по меньшей мере, одному из соседних блоков. Например, второй соседний блок может включать в себя блок A1 и блок B1. В качестве другого примера, местоположение второго соседнего блока может отличаться от местоположений блока A0, блока A1, блока B0, блока B1 и блока B2.The second adjacent block may correspond to at least one of the adjacent blocks. For example, the second adjacent block may include block A1 and block B1. As another example, the location of the second adjacent block may be different from the locations of block A0, block A1, block B0, block B1, and block B2.

Когда второй соседний блок включает в себя блок A1 и блок B1, местоположения блока A1 и блока B1 могут варьироваться согласно доступности левого блока и правого блока относительно текущего блока, как описано выше. Подробно, ссылаясь на фиг. 21A-21C, когда левый блок относительно текущего блока доступен, блок A1 может быть расположен в левой верхней стороне текущего блока, и блок B1 может быть расположен в правой верхней стороне текущего блока. Когда левый и правый блоки относительно текущего блока доступны, блок A1 может быть расположен в левой нижней стороне текущего блока, и блок B1 может быть расположен в правой нижней стороне текущего блока. Когда правый блок относительно текущего блока доступен, блок A1 может быть расположен в правой нижней стороне текущего блока, и блок B1 может быть расположен в левой верхней стороне текущего блока.When the second adjacent block includes block A1 and block B1, the locations of block A1 and block B1 may vary according to the accessibility of the left block and right block relative to the current block, as described above. In detail, with reference to FIG. 21A-21C, when a left block relative to the current block is available, block A1 may be located at the upper left side of the current block, and block B1 may be located at the upper right side of the current block. When left and right blocks relative to the current block are available, block A1 may be located at the bottom left side of the current block, and block B1 may be located at the bottom right side of the current block. When the right block relative to the current block is available, block A1 may be located at the bottom right side of the current block, and block B1 may be located at the top left side of the current block.

Модуль 2032 прогнозирования векторов движения может определять доступность блока A1, и когда блок A1 идентифицируется как доступный согласно информации, указывающей то, доступен или нет блок A1, может определять вектор движения блока A1 в качестве вектора движения по умолчанию. Когда блок A1 не доступен, модуль 2032 прогнозирования векторов движения может определять доступность блока B1, и когда блок B1 идентифицируется как доступный согласно информации, указывающей то, доступен или нет блок B1, может определять вектор движения блока B1 в качестве вектора движения по умолчанию. Другими словами, модуль 2032 прогнозирования векторов движения может проверять то, могут или нет векторы движения блока A1 и блока B1 использоваться в качестве вектора движения по умолчанию в порядке "блок A1 --> блок B1".The motion vector prediction unit 2032 may determine the availability of the A1 block, and when the A1 block is identified as available according to information indicating whether the A1 block is available or not, may determine the motion vector of the A1 block as the default motion vector. When block A1 is not available, the motion vector prediction module 2032 may determine the availability of block B1, and when block B1 is identified as available according to information indicating whether block B1 is available or not, may determine the motion vector of block B1 as the default motion vector. In other words, the motion vector prediction unit 2032 can check whether or not the motion vectors of block A1 and block B1 can be used as the default motion vector in the order "block A1 --> block B1".

Доступность блока A1 и доступность блока B1 могут определяться на основе вышеописанных четырех условий для определения доступности первого соседнего блока.The availability of block A1 and the availability of block B1 may be determined based on the above-described four conditions for determining the availability of the first neighboring block.

Согласно варианту осуществления, когда второй соседний блок идентифицируется как доступный согласно информации, указывающей то, доступен или нет второй соседний блок, и индекс опорного кадра второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным индексу опорного кадра текущего блока или не является идентичным предварительно определенному значению (т.е. когда имеется вектор движения второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока), модуль 2032 прогнозирования векторов движения может задавать вектор движения второго соседнего блока в качестве вектора движения по умолчанию.According to an embodiment, when the second neighbor block is identified as available according to information indicating whether or not the second neighbor block is available, and the index of the reference frame of the second neighbor block in the prediction direction identical to the prediction direction of the current block is the same as the reference frame index of the current block or not is identical to the predetermined value (i.e., when there is a motion vector of the second neighboring block in the prediction direction identical to the prediction direction of the current block), the motion vector prediction unit 2032 may set the motion vector of the second neighboring block as the default motion vector.

Когда из информации, указывающей доступность второго соседнего блока, идентифицируется то, что второй соседний блок не доступен, или отсутствуют векторы движения второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, модуль 2032 прогнозирования векторов движения может задавать вектор движения блока, декодированного перед текущим блоком, в качестве вектора движения по умолчанию.When it is identified from the information indicating the availability of the second neighbor block that the second neighbor block is not available, or there are no motion vectors of the second neighbor block in the prediction direction identical to the prediction direction of the current block, the motion vector predictor 2032 may set the motion vector of the block decoded before current block as the default motion vector.

Модуль 2032 прогнозирования векторов движения может определять вектор движения первого соседнего блока или вектор движения по умолчанию в качестве прогнозного вектора движения текущего блока.The motion vector prediction module 2032 may determine the motion vector of the first neighboring block or the default motion vector as the predictive motion vector of the current block.

Когда вектор движения первого соседнего блока определяется в качестве прогнозного вектора движения, и индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным индексу опорного кадра текущего блока, модуль 2032 прогнозирования векторов движения может обновлять прогнозный вектор движения текущего блока посредством масштабирования прогнозного вектора движения текущего блока согласно расстоянию между текущим кадром и опорным кадром текущего блока и расстоянию между текущим кадром и опорным кадром первого соседнего блока.When the motion vector of the first neighboring block is determined as the predictive motion vector, and the reference frame index of the first neighboring block in the same prediction direction as the current block is not the same as the reference frame index of the current block, the motion vector predictor 2032 may update the predictive motion vector of the current block. block by scaling the predictive motion vector of the current block according to the distance between the current frame and the reference frame of the current block and the distance between the current frame and the reference frame of the first adjacent block.

Согласно варианту осуществления, когда индекс опорного кадра второго соседнего блока (или блока, декодированного перед текущим блоком, причем блок используется для того, чтобы получать вектор движения по умолчанию) в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным индексу опорного кадра текущего блока, модуль 2032 прогнозирования векторов движения может определять вектор движения по умолчанию в качестве прогнозного вектора движения текущего блока. Когда индекс опорного кадра второго соседнего блока (или блока, декодированного перед текущим блоком, причем блок используется для того, чтобы получать вектор движения по умолчанию) в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным индексу опорного кадра текущего блока, модуль 2032 прогнозирования векторов движения может масштабировать вектор движения по умолчанию согласно расстоянию между текущим кадром и опорным кадром текущего блока и расстоянию между текущим кадром и опорным кадром второго соседнего блока (или блока, декодированного перед текущим блоком), и может определять масштабированный вектор движения по умолчанию в качестве прогнозного вектора движения текущего блока.According to an embodiment, when the index of the reference frame of the second adjacent block (or the block decoded before the current block, the block being used to obtain the default motion vector) in the same prediction direction of the current block is the same as the index of the current block's reference frame , the motion vector prediction module 2032 may determine a default motion vector as the predictive motion vector of the current block. When the index of the reference frame of the second adjacent block (or the block decoded before the current block, the block being used to obtain the default motion vector) in the same prediction direction of the current block is not the same as the index of the current block's reference frame, module 2032 motion vector prediction may scale the default motion vector according to the distance between the current frame and the reference frame of the current block and the distance between the current frame and the reference frame of the second neighboring block (or block decoded before the current block), and may determine the scaled default motion vector as predictive motion vector of the current block.

После получения прогнозного вектора движения текущего блока, модуль 2032 прогнозирования векторов движения может регулировать прогнозный вектор движения текущего блока, когда разрешение векторов движения текущего блока отличается от предварительно определенного разрешения векторов движения (например, минимального разрешения векторов движения из множества разрешений векторов движения). Причина регулирования прогнозного вектора движения состоит в этом, чтобы обеспечивать совпадение разрешения векторов движения текущего блока с разрешением прогнозного вектора движения.After obtaining the predictive motion vector of the current block, the motion vector prediction module 2032 may adjust the predictive motion vector of the current block when the motion vector resolution of the current block differs from a predetermined motion vector resolution (e.g., a minimum motion vector resolution of a set of motion vector resolutions). The reason for adjusting the predictive motion vector is to ensure that the resolution of the motion vectors of the current block matches the resolution of the predictive motion vector.

Чтобы регулировать прогнозный вектор движения, выражаемый в координате в кадре, интерполированном согласно минимальному разрешению векторов движения, до разрешения векторов движения текущего блока, модуль 2032 прогнозирования векторов движения может регулировать прогнозный вектор движения таким образом, что прогнозный вектор движения указывает соседние пикселы вместо пиксела, указываемого посредством прогнозного вектора движения.In order to adjust the predictive motion vector expressed as a coordinate in the frame interpolated according to the minimum motion vector resolution to the resolution of the motion vectors of the current block, the motion vector predictor 2032 may adjust the predictive motion vector such that the predictive motion vector indicates neighboring pixels instead of the pixel indicated by through the predictive motion vector.

Например, когда минимальное разрешение векторов движения составляет 1/4-пиксельную единицу, и разрешение векторов движения текущего блока составляет 1-пиксельную единицу, модуль 2032 прогнозирования векторов движения может регулировать прогнозный вектор движения (19, 27) до (20, 28). Это обусловлено этим, что, когда минимальное разрешение векторов движения составляет 1/4-пиксельную единицу, целочисленный пиксел имеет координату (4n, 4m) в интерполированном кадре.For example, when the minimum resolution of the motion vectors is 1/4 pixel unit and the resolution of the motion vectors of the current block is 1 pixel unit, the motion vector prediction unit 2032 may adjust the predictive motion vector (19, 27) to (20, 28). This is because when the minimum resolution of the motion vectors is 1/4 pixel unit, an integer pixel has a coordinate of (4n, 4m) in the interpolated frame.

Согласно варианту осуществления, при регулировании прогнозного вектора движения согласно разрешению векторов движения текущего блока, модуль 2032 прогнозирования векторов движения может обеспечивать возможность отрегулированному прогнозному вектору движения указывать пиксел, расположенный в правой верхней стороне пиксела, указываемого посредством прогнозного вектора движения, еще не отрегулированного. Согласно другому варианту осуществления, модуль 2032 прогнозирования векторов движения может обеспечивать возможность отрегулированному прогнозному вектору движения указывать пиксел, расположенный в левой верхней стороне пиксела, указываемого посредством прогнозного вектора движения, еще не отрегулированного, пиксел, расположенный в левой нижней стороне пиксела, указываемого посредством прогнозного вектора движения, еще не отрегулированного, либо пиксел, расположенный в правой нижней стороне пиксела, указываемого посредством прогнозного вектора движения, еще не отрегулированного.According to an embodiment, when adjusting the predictive motion vector according to the resolution of the motion vectors of the current block, the motion vector predictor 2032 may allow the adjusted predictive motion vector to indicate a pixel located in the upper right side of the pixel indicated by the predictive motion vector not yet adjusted. According to another embodiment, the motion vector prediction module 2032 may allow the adjusted predictive motion vector to indicate a pixel located on the upper left side of the pixel indicated by the predictive motion vector not yet adjusted, the pixel located on the lower left side of the pixel indicated by the predictive vector motion not yet adjusted, or a pixel located on the lower right side of the pixel indicated by the predictive motion vector not yet adjusted.

Для обобщения вышеописанного контента согласно варианту осуществления, когда вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения, вектор движения первого соседнего блока определяется в качестве прогнозного вектора движения текущего блока. Когда индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным индексу опорного кадра текущего блока, прогнозный вектор движения масштабируется. Когда разрешение векторов движения текущего блока не является идентичным предварительно определенному разрешению векторов движения из множества разрешений векторов движения, прогнозный вектор движения или масштабированный прогнозный вектор движения регулируется согласно разрешению векторов движения текущего блока.To summarize the above content, according to the embodiment, when the motion vector of the first neighbor block is available as the predictive motion vector, the motion vector of the first neighbor block is determined as the predictive motion vector of the current block. When the index of the reference frame of the first neighboring block in the prediction direction identical to the prediction direction of the current block is not the same as the index of the reference frame of the current block, the predictive motion vector is scaled. When the motion vector resolution of the current block is not identical to the predetermined motion vector resolution of the motion vector resolution set, the predictive motion vector or the scaled predictive motion vector is adjusted according to the motion vector resolution of the current block.

Когда вектор движения первого соседнего блока не доступен в качестве прогнозного вектора движения, вектор движения по умолчанию извлекается. Когда индекс опорного кадра блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока (блока, используемого для того, чтобы извлекать вектор движения по умолчанию) не является идентичным индексу опорного кадра текущего блока, вектор движения по умолчанию масштабируется, и масштабированный вектор движения по умолчанию определяется в качестве прогнозного вектора движения текущего блока. Когда разрешение векторов движения текущего блока не является идентичным предварительно определенному разрешению векторов движения из множества разрешений векторов движения, прогнозный вектор движения регулируется согласно разрешению векторов движения текущего блока.When the motion vector of the first neighboring block is not available as a predictive motion vector, a default motion vector is extracted. When the block reference frame index for the prediction direction identical to the prediction direction of the current block (the block used to derive the default motion vector) is not identical to the reference frame index of the current block, the default motion vector is scaled, and the scaled default motion vector is determined as the predictive motion vector of the current block. When the motion vector resolution of the current block is not identical to the predetermined motion vector resolution of the plurality of motion vector resolutions, the predictive motion vector is adjusted according to the motion vector resolution of the current block.

Модуль 2034 восстановления векторов движения получает вектор движения текущего блока посредством комбинирования прогнозного вектора движения текущего блока с дифференциальным вектором движения, полученным из потока битов. Модуль 2034 восстановления векторов движения может получать вектор движения текущего блока посредством суммирования прогнозного вектора движения текущего блока с дифференциальным вектором движения.The motion vector recovery module 2034 obtains the motion vector of the current block by combining the predictive motion vector of the current block with the differential motion vector obtained from the bit stream. The motion vector recovery module 2034 may obtain the motion vector of the current block by summing the predicted motion vector of the current block with the differential motion vector.

Прогнозный декодер 2030 может восстанавливать текущий блок посредством интер-прогнозирования текущего блока согласно направлению прогнозирования, индексу опорного кадра и вектору движения текущего блока.The predictive decoder 2030 may recover the current block by inter-predicting the current block according to the prediction direction, the reference frame index, and the motion vector of the current block.

Фиг. 24 является блок-схемой последовательности операций способа декодирования вектора движения, согласно варианту осуществления.Fig. 24 is a flowchart of a motion vector decoding method according to an embodiment.

На этапе S2410 оборудование 2000 декодирования изображений определяет доступность первого соседнего блока, выбранного согласно информации, полученной из потока битов, из числа соседних блоков, смежных с текущим блоком.In step S2410, the image decoding equipment 2000 determines the availability of the first neighboring block selected according to the information obtained from the bitstream from among the neighboring blocks adjacent to the current block.

Согласно варианту осуществления, информация, полученная из потока битов, может включать в себя информацию, указывающую разрешение векторов движения текущего блока из множества разрешений векторов движения.According to an embodiment, the information obtained from the bit stream may include information indicating the resolution of the motion vectors of the current block from the plurality of motion vector resolutions.

На этапе S2420 оборудование 2000 декодирования изображений определяет то, доступен или нет первый соседний блок, и то, существует или нет вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока.In step S2420, the image decoding equipment 2000 determines whether or not the first neighboring block is available, and whether or not the motion vector of the first neighboring block exists for a prediction direction identical to the prediction direction of the current block.

На этапе S2430, когда первый соседний блок доступен и вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, существует, оборудование 2000 декодирования изображений получает прогнозный вектор движения текущего блока из вектора движения первого соседнего блока.In step S2430, when the first neighbor block is available and the motion vector of the first neighbor block for the prediction direction identical to the prediction direction of the current block exists, the image decoding equipment 2000 obtains the prediction motion vector of the current block from the motion vector of the first neighbor block.

На этапе S2440, когда первый соседний блок не доступен или вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, не существует, оборудование 2000 декодирования изображений получает прогнозный вектор движения текущего блока из вектора движения второго соседнего блока.In step S2440, when the first neighbor block is not available or the motion vector of the first neighbor block for the prediction direction identical to the prediction direction of the current block does not exist, the image decoding equipment 2000 obtains the prediction motion vector of the current block from the motion vector of the second neighbor block.

Как описано выше, когда второй соседний блок не доступен, прогнозный вектор движения текущего блока может получаться из вектора движения блока, декодированного перед текущим блоком.As described above, when a second adjacent block is not available, the predictive motion vector of the current block may be obtained from the motion vector of the block decoded before the current block.

На этапе S2450 оборудование 2000 декодирования изображений получает вектор движения текущего блока посредством комбинирования прогнозного вектора движения текущего блока с дифференциальным вектором движения.In step S2450, the image decoding equipment 2000 obtains the motion vector of the current block by combining the predictive motion vector of the current block with the differential motion vector.

Фиг. 25 является блок-схемой структуры оборудования 2500 кодирования изображений согласно варианту осуществления.Fig. 25 is a block diagram of a structure of an image encoding equipment 2500 according to an embodiment.

Ссылаясь на фиг. 25, оборудование 2500 кодирования изображений включает в себя прогнозный кодер 2510 и формирователь 2530 потоков битов. Прогнозный кодер 2510 может включать в себя модуль 2512 прогнозирования векторов движения и модуль 2514 кодирования векторов движения.Referring to FIG. 25, the image encoding equipment 2500 includes a predictive encoder 2510 and a bitstream generator 2530. Predictive encoder 2510 may include a motion vector prediction module 2512 and a motion vector encoding module 2514 .

Прогнозный кодер 2510 может соответствовать кодеру 220, показанному на фиг. 2, и формирователь 2530 потоков битов может соответствовать формирователю 210 потоков битов, показанному на фиг. 2.Predictive encoder 2510 may correspond to encoder 220 shown in FIG. 2 and the bitstream generator 2530 may correspond to the bitstream generator 210 shown in FIG. 2.

Прогнозный кодер 2510 и формирователь 2530 потоков битов, согласно варианту осуществления, могут реализовываться как по меньшей мере один процессор. Оборудование 2500 кодирования изображений может включать в себя одно или более запоминающих устройств (не показаны) для сохранения входных и выходных данных прогнозного кодера 2510 и формирователя 2530 потоков битов. Оборудование 2500 кодирования изображений может включать в себя контроллер запоминающего устройства (не показан) для управления вводами и выводами данных запоминающего устройства (не показано).Predictive encoder 2510 and bitstream generator 2530, according to an embodiment, may be implemented as at least one processor. Image encoding equipment 2500 may include one or more memories (not shown) for storing input and output data of predictive encoder 2510 and bitstream generator 2530. The image encoding equipment 2500 may include a storage device controller (not shown) for controlling data inputs and outputs of the storage device (not shown).

Прогнозный кодер 2510 кодирует кадр согласно режиму прогнозирования, и формирователь 2530 потоков битов формирует поток битов, включающий в себя информацию, сформированную как результат кодирования кадра.A predictive encoder 2510 encodes a frame according to a prediction mode, and a bitstream generator 2530 generates a bitstream including information generated as a result of encoding the frame.

Прогнозный кодер 2510 может определять режим прогнозирования текущего блока в пределах текущего кадра. Когда режим прогнозирования текущего блока определяется в качестве режима интер-прогнозирования, формирователь 2530 потоков битов включает в себя информацию движения текущего блока в потоке битов.Predictive encoder 2510 may determine the prediction mode of the current block within the current frame. When the prediction mode of the current block is determined as the inter prediction mode, the bitstream generator 2530 includes motion information of the current block in the bitstream.

Модуль 2512 прогнозирования векторов движения прогнозирует вектор движения текущего блока, кодированного в режиме интер-прогнозирования.The motion vector prediction unit 2512 predicts the motion vector of the current block encoded in the inter-prediction mode.

Модуль 2512 прогнозирования векторов движения согласно варианту осуществления может получать прогнозный вектор движения посредством использования векторов движения соседних блоков, смежных с текущим блоком. Местоположения соседних блоков описываются выше, и в силу этого их подробное описание опускается.The motion vector predictor 2512 according to an embodiment may obtain a predictive motion vector by using the motion vectors of neighboring blocks adjacent to the current block. The locations of neighboring blocks are described above, and therefore their detailed description is omitted.

Согласно варианту осуществления, модуль 2512 прогнозирования векторов движения выбирает первый соседний блок из соседнего блока. Первый соседний блок может представлять собой один из блока A0, блока A1, блока B0, блока B1 и блока B2, соответствующих соседним блокам.According to an embodiment, motion vector predictor 2512 selects a first neighboring block from a neighboring block. The first neighboring block may be one of an A0 block, an A1 block, a B0 block, a B1 block, and a B2 block corresponding to the neighboring blocks.

Согласно варианту осуществления, модуль 2512 прогнозирования векторов движения может выбирать первый соседний блок, соотнесенный с разрешением векторов движения текущего блока из множества разрешений векторов движения.According to an embodiment, the motion vector prediction module 2512 may select the first neighboring block associated with the motion vector resolution of the current block from the plurality of motion vector resolutions.

Модуль 2512 прогнозирования векторов движения определяет доступность первого соседнего блока. Подробно, модуль 2512 прогнозирования векторов движения определяет доступность первого соседнего блока, согласно по меньшей мере одному из того, отличается или нет плитка, включающая в себя первый соседний блок, от плитки, включающей в себя текущий блок, того, расположен или нет первый соседний блок за пределами текущего кадра, того, спрогнозирован ли первый соседний блок посредством интра-прогнозирования или нет, и того, выполнено или нет восстановление первого соседнего блока.The motion vector predictor 2512 determines the availability of the first neighboring block. In detail, the motion vector prediction module 2512 determines the availability of the first neighbor block according to at least one of whether or not the tile including the first neighbor block is different from the tile including the current block, whether or not the first neighbor block is located. outside the current frame, whether the first neighbor block is predicted by intra-prediction or not, and whether or not the recovery of the first neighbor block is performed.

Согласно варианту осуществления, когда из информации, указывающей доступность первого соседнего блока, идентифицируется то, что первый соседний блок доступен и индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, не является идентичным предварительно определенному значению (т.е. когда вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, существует), модуль 2512 прогнозирования векторов движения может определять то, что вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения. Предварительно определенное значение, например, может составлять -1. Когда вектор движения первого соседнего блока доступен в качестве прогнозного вектора движения, модуль 2512 прогнозирования векторов движения извлекает прогнозный вектор движения текущего блока из вектора движения первого соседнего блока.According to an embodiment, when it is identified from the information indicating the availability of the first neighbor block that the first neighbor block is available and the reference frame index of the first neighbor block for the prediction direction identical to the prediction direction of the current block is not the same as a predetermined value (i.e., when a motion vector of the first neighbor block for a prediction direction identical to the prediction direction of the current block exists), the motion vector predictor 2512 may determine that the motion vector of the first neighbor block is available as a predictive motion vector. The predetermined value may be -1, for example. When the motion vector of the first neighbor block is available as the predictive motion vector, the motion vector prediction module 2512 extracts the predictive motion vector of the current block from the motion vector of the first neighbor block.

Когда из информации, указывающей доступность первого соседнего блока, идентифицируется то, что первый соседний блок не доступен, или индекс опорного кадра первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, является идентичным предварительно определенному значению, может определяться то, что вектор движения первого соседнего блока не доступен в качестве прогнозного вектора движения. В этом случае, модуль 2512 прогнозирования векторов движения может получать прогнозный вектор движения текущего блока посредством использования вектора движения по умолчанию.When it is identified from the information indicating the availability of the first neighboring block that the first neighboring block is not available, or the reference frame index of the first neighboring block for the prediction direction identical to the prediction direction of the current block is identical to a predetermined value, it can be determined that the motion vector the first neighboring block is not available as a predictive motion vector. In this case, the motion vector predictor 2512 may obtain the predictive motion vector of the current block by using the default motion vector.

Согласно варианту осуществления, когда вектор движения первого соседнего блока не доступен в качестве прогнозного вектора движения, модуль 2512 прогнозирования векторов движения может задавать вектор движения второго соседнего блока в предварительно определенном местоположении в качестве вектора движения по умолчанию. Второй соседний блок может предоставляться во множестве. В этом случае, вектор движения второго соседнего блока может задаваться в качестве вектора движения по умолчанию посредством определения доступности множества вторых соседних блоков.According to an embodiment, when the motion vector of the first neighbor block is not available as the predictive motion vector, the motion vector predictor 2512 may set the motion vector of the second neighbor block at a predetermined location as the default motion vector. The second neighbor block may be provided in a plurality. In this case, the motion vector of the second neighboring block may be set as the default motion vector by determining the availability of a plurality of second neighboring blocks.

Когда второй соседний блок включает в себя блок A1 и блок B1, модуль 2512 прогнозирования векторов движения может определять доступность блока A1, и когда блок A1 идентифицируется как доступный согласно информации, указывающей то, доступен или нет блок A1, может определять вектор движения блока A1 в качестве вектора движения по умолчанию. Когда блок A1 не доступен, модуль 2512 прогнозирования векторов движения может определять доступность блока B1, и когда блок B1 идентифицируется как доступный согласно информации, указывающей то, доступен или нет блок B1, может определять вектор движения блока B1 в качестве вектора движения по умолчанию. Другими словами, модуль 2512 прогнозирования векторов движения может проверять то, могут или нет векторы движения блока A1 и блока B1 использоваться в качестве вектора движения по умолчанию в порядке "блок A1 --> блок B1".When the second neighboring block includes block A1 and block B1, the motion vector predictor 2512 may determine the availability of block A1, and when block A1 is identified as available according to information indicating whether or not block A1 is available, may determine the motion vector of block A1 in as the default motion vector. When block A1 is not available, the motion vector predictor 2512 may determine the availability of block B1, and when block B1 is identified as available according to information indicating whether block B1 is available or not, may determine the motion vector of block B1 as the default motion vector. In other words, the motion vector predictor 2512 may check whether or not the motion vectors of block A1 and block B1 can be used as the default motion vector in the order "block A1 --> block B1".

Согласно варианту осуществления, когда второй соседний блок идентифицируется как доступный согласно информации, указывающей то, доступен или нет второй соседний блок, и индекс опорного кадра второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным индексу опорного кадра текущего блока или не является идентичным предварительно определенному значению (т.е. когда имеется вектор движения второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока), модуль 2512 прогнозирования векторов движения может задавать вектор движения второго соседнего блока в качестве вектора движения по умолчанию.According to an embodiment, when the second neighbor block is identified as available according to information indicating whether or not the second neighbor block is available, and the index of the reference frame of the second neighbor block in the prediction direction identical to the prediction direction of the current block is the same as the reference frame index of the current block or not is identical to the predetermined value (i.e., when there is a motion vector of the second neighboring block in the prediction direction identical to the prediction direction of the current block), the motion vector prediction unit 2512 may set the motion vector of the second neighboring block as the default motion vector.

Когда из информации, указывающей доступность второго соседнего блока, идентифицируется то, что второй соседний блок не доступен, или индекс опорного кадра второго соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным предварительно определенному значению, модуль 2512 прогнозирования векторов движения может задавать вектор движения блока, кодированного перед текущим блоком, в качестве вектора движения по умолчанию.When it is identified from the information indicating the availability of the second neighbor block that the second neighbor block is not available, or the index of the reference frame of the second neighbor block in the prediction direction identical to the prediction direction of the current block is identical to a predetermined value, the motion vector prediction unit 2512 may set the motion vector of the block encoded before the current block as the default motion vector.

Модуль 2512 прогнозирования векторов движения может определять вектор движения первого соседнего блока или вектор движения по умолчанию в качестве прогнозного вектора движения текущего блока.The motion vector predictor 2512 may determine the motion vector of the first neighboring block or the default motion vector as the predictive motion vector of the current block.

Когда вектор движения первого соседнего блока определяется в качестве прогнозного вектора движения и индекс опорного кадра первого соседнего блока в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным индексу опорного кадра текущего блока, модуль 2512 прогнозирования векторов движения может обновлять прогнозный вектор движения текущего блока посредством масштабирования прогнозного вектора движения текущего блока согласно расстоянию между текущим кадром и опорным кадром текущего блока и расстоянию между текущим кадром и опорным кадром первого соседнего блока.When the motion vector of the first neighboring block is determined as the predictive motion vector, and the reference frame index of the first neighboring block in the prediction direction identical to the current block prediction direction is not the same as the reference frame index of the current block, the motion vector predictor 2512 may update the predictive motion vector of the current block. by scaling the predictive motion vector of the current block according to the distance between the current frame and the reference frame of the current block and the distance between the current frame and the reference frame of the first neighboring block.

Когда вектор движения по умолчанию получен, согласно варианту осуществления, когда индекс опорного кадра второго соседнего блока (или блока, декодированного перед текущим блоком, причем блок используется для того, чтобы получать вектор движения по умолчанию) в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, является идентичным индексу опорного кадра текущего блока, модуль 2512 прогнозирования векторов движения может определять вектор движения по умолчанию в качестве прогнозного вектора движения текущего блока. Когда индекс опорного кадра второго соседнего блока (или блока, декодированного перед текущим блоком, причем блок используется для того, чтобы получать вектор движения по умолчанию) в направлении прогнозирования, идентичном направлению прогнозирования текущего блока, не является идентичным индексу опорного кадра текущего блока, модуль 2512 прогнозирования векторов движения может масштабировать вектор движения по умолчанию согласно расстоянию между текущим кадром и опорным кадром текущего блока и расстоянию между текущим кадром и опорным кадром второго соседнего блока (или блока, декодированного перед текущим блоком), и может определять масштабированный вектор движения по умолчанию в качестве прогнозного вектора движения текущего блока.When the default motion vector is obtained, according to the embodiment, when the reference frame index of the second adjacent block (or the block decoded before the current block, the block being used to obtain the default motion vector) in the same prediction direction as the current block, is the same as the index of the reference frame of the current block, the motion vector predictor 2512 may determine a default motion vector as the predictive motion vector of the current block. When the index of the reference frame of the second adjacent block (or the block decoded before the current block, the block being used to obtain the default motion vector) in the prediction direction identical to the prediction direction of the current block is not identical to the reference frame index of the current block, module 2512 motion vector prediction may scale the default motion vector according to the distance between the current frame and the reference frame of the current block and the distance between the current frame and the reference frame of the second neighboring block (or block decoded before the current block), and may determine the scaled default motion vector as predictive motion vector of the current block.

После того, как прогнозный вектор движения текущего блока получается, модуль 2512 прогнозирования векторов движения может регулировать прогнозный вектор движения текущего блока, когда разрешение векторов движения текущего блока отличается от предварительно определенного разрешения векторов движения (например, минимального разрешения векторов движения из множества разрешений векторов движения).After the predictive motion vector of the current block is obtained, the motion vector prediction module 2512 may adjust the predictive motion vector of the current block when the motion vector resolution of the current block differs from a predetermined motion vector resolution (e.g., the minimum motion vector resolution of the set of motion vector resolutions) .

Модуль 2514 кодирования векторов движения получает дифференциальный вектор движения между вектором движения текущего блока и прогнозным вектором движения. Модуль 2514 кодирования векторов движения может получать дифференциальный вектор движения посредством вычитания прогнозного вектора движения из вектора движения текущего блока.The motion vector encoding unit 2514 obtains a differential motion vector between the motion vector of the current block and the predictive motion vector. The motion vector encoding unit 2514 may obtain a differential motion vector by subtracting the predictive motion vector from the motion vector of the current block.

Формирователь 2530 потоков битов формирует поток битов, включающий в себя информацию, указывающую дифференциальный вектор движения, и информацию, указывающую первый соседний блок из числа соседних блоков. Как описано выше, информация, указывающая первый соседний блок, может представлять собой информацию, указывающую разрешение векторов движения текущего блока из множества разрешений векторов движения.The bitstream generator 2530 generates a bitstream including information indicating a differential motion vector and information indicating a first neighboring block among neighboring blocks. As described above, the information indicating the first neighboring block may be information indicating the resolution of the motion vectors of the current block from the plurality of motion vector resolutions.

Фиг. 26 является блок-схемой последовательности операций способа кодирования вектора движения, согласно варианту осуществления.Fig. 26 is a flowchart of a motion vector encoding method according to an embodiment.

На этапе S2610 оборудование 2500 кодирования изображений определяет доступность первого соседнего блока, выбранного из соседних блоков, смежных с текущим блоком. Согласно варианту осуществления, оборудование 2500 кодирования изображений может выбирать первый соседний блок, соответствующий разрешению векторов движения текущего блока.In step S2610, the image encoding equipment 2500 determines the availability of the first neighboring block selected from neighboring blocks adjacent to the current block. According to an embodiment, the image encoding equipment 2500 may select the first neighboring block corresponding to the resolution of the motion vectors of the current block.

На этапе S2620 оборудование 2500 кодирования изображений определяет то, доступен или нет первый соседний блок, и то, существует или нет вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока.In step S2620, the image encoding equipment 2500 determines whether or not the first neighboring block is available, and whether or not a motion vector of the first neighboring block exists for a prediction direction identical to the prediction direction of the current block.

На этапе S2630, когда первый соседний блок доступен и вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, существует, оборудование 2500 кодирования изображений получает прогнозный вектор движения текущего блока из вектора движения первого соседнего блока.In step S2630, when the first neighbor block is available and the motion vector of the first neighbor block for the prediction direction identical to the prediction direction of the current block exists, the image encoding equipment 2500 obtains the prediction motion vector of the current block from the motion vector of the first neighbor block.

На этапе S2640, когда первый соседний блок не доступен или вектор движения первого соседнего блока для направления прогнозирования, идентичного направлению прогнозирования текущего блока, не существует, оборудование 2500 кодирования изображений получает прогнозный вектор движения текущего блока из вектора движения второго соседнего блока.In step S2640, when the first neighbor block is not available or the motion vector of the first neighbor block for the prediction direction identical to the prediction direction of the current block does not exist, the image encoding equipment 2500 obtains the prediction motion vector of the current block from the motion vector of the second neighbor block.

Когда второй соседний блок не доступен, прогнозный вектор движения текущего блока может получаться из вектора движения блока, кодированного перед текущим блоком.When a second neighboring block is not available, the predictive motion vector of the current block may be obtained from the motion vector of the block encoded before the current block.

На этапе S2650 оборудование 2500 кодирования изображений получает дифференциальный вектор движения между вектором движения текущего блока и прогнозным вектором движения и формирует поток битов, включающий в себя информацию, указывающую дифференциальный вектор движения, и информацию, указывающую первый соседний блок. Информация, указывающая первый соседний блок, может представлять собой информацию, указывающую разрешение векторов движения текущего блока из множества разрешений векторов движения.In step S2650, the image encoding equipment 2500 obtains a differential motion vector between the motion vector of the current block and the predictive motion vector, and generates a bit stream including information indicating the differential motion vector and information indicating the first neighboring block. The information indicating the first neighboring block may be information indicating the resolution of the motion vectors of the current block from the plurality of motion vector resolutions.

Фиг. 27 и 28 являются видами для пояснения процесса получения прогнозного вектора движения, согласно варианту осуществления.Fig. 27 and 28 are views for explaining a process for obtaining a predictive motion vector according to the embodiment.

Фиг. 27 и 28 иллюстрируют примеры вышеописанных вариантов осуществления. На фиг. 27 и 28, LX, включенный в mvpLX и mvLX, указывает направление прогнозирования текущего блока. Другими словами, когда направление прогнозирования текущего блока представляет собой L0-направление, X равен 0, а когда направление прогнозирования текущего блока представляет собой L1-направление, X равен 1. Когда направление прогнозирования текущего блока представляет собой двойное направление, X может последовательно иметь значения в 0 и 1.Fig. 27 and 28 illustrate examples of the above described embodiments. In FIG. 27 and 28, LX included in mvpLX and mvLX indicates the prediction direction of the current block. In other words, when the prediction direction of the current block is the L0 direction, X is 0, and when the prediction direction of the current block is the L1 direction, X is 1. When the prediction direction of the current block is the dual direction, X can sequentially have values in 0 and 1.

На S2710 флаг mvpAvailFlag, представляющий доступность прогнозного вектора движения, задается равным 0.In S2710, the mvpAvailFlag flag representing the availability of the predictive motion vector is set to 0.

На S2720 блок, который должен использоваться для того, чтобы получать прогнозный вектор движения текущего блока, указывается согласно информации amvr_idx, указывающей разрешение векторов движения текущего блока. Когда информация amvr_idx равна 1, блок B1 выбирается. Доступность блока B1 определяется. Определение в отношении доступности блока B1 может выполняться согласно вышеописанным четырем условиям для определения доступности первого соседнего блока. Фиг. 27 иллюстрирует только процесс, когда amvr_idx равен 1, чтобы опускать избыточное описание, но блоки в различных местоположениях выбираются согласно значению amvr_idx. Например, как показано на фиг. 22, может выбираться блок, с которым соотнесена информация amvr_idx.In S2720, the block to be used to obtain the predictive motion vector of the current block is indicated according to amvr_idx information indicating the resolution of the motion vectors of the current block. When the amvr_idx information is 1, block B1 is selected. Block B1 availability is determined. The determination regarding the availability of block B1 may be performed according to the above-described four conditions for determining the availability of the first neighboring block. Fig. 27 only illustrates the process when amvr_idx is 1 to omit redundant description, but blocks at different locations are selected according to the value of amvr_idx. For example, as shown in FIG. 22, a block with which amvr_idx information is associated can be selected.

На S2730, когда блок B1 идентифицируется как доступный из информации availableB1, указывающей доступность блока B1, и индекс RefIdxLX опорного кадра блока B1 направления прогнозирования, идентичного направлению прогнозирования текущего блока, не является идентичным -1, флаг mvpAvailFlag, представляющий доступность прогнозного вектора движения, задается равным 1, и вектор движения блока B1 задается в качестве прогнозного вектора mvpLX движения.In S2730, when a block B1 is identified as available from the information availableB1 indicating the availability of block B1, and the index RefIdxLX of the reference frame of the prediction direction block B1 identical to the prediction direction of the current block is not the same as -1, a flag mvpAvailFlag representing the availability of the predictive motion vector is set equal to 1, and the motion vector of block B1 is set as the predictive motion vector mvpLX.

На S2740, когда индекс refIdxLX опорного кадра текущего блока не является идентичным индексу RefIdxLX[xNbB1][yNbB1] опорного кадра блока B1, прогнозный вектор mvpLX движения масштабируется согласно соотношению distScaleFactorLX между расстоянием currPocDiffLX между текущим кадром и опорным кадром RefPicListX[RefIdxLX[xNbB1][yNbB1]] блока B1 и расстоянием targetPocDiffLX между текущим кадром и опорным кадром RefPicListX[refIdxLX] текущего блока.In S2740, when the index refIdxLX of the reference frame of the current block is not identical to the index RefIdxLX[xNbB1][yNbB1] of the reference frame of block B1, the predictive motion vector mvpLX is scaled according to the distScaleFactorLX relation between the distance currPocDiffLX between the current frame and the reference frame RefPicListX[RefIdxLX[xNbB 1][ yNbB1]] of block B1 and the distance targetPocDiffLX between the current frame and the reference frame RefPicListX[refIdxLX] of the current block.

На S2750, когда amvr_idx не равен 0, а именно, когда разрешение векторов движения текущего блока отличается от предварительно определенного разрешения векторов движения (например, минимального разрешения векторов движения), прогнозный вектор mvpLX движения регулируется. Когда amvr_idx равен 0, а именно, когда прогнозный вектор движения получается из вектора движения блока A1, прогнозный вектор движения не регулируется.In S2750, when amvr_idx is not equal to 0, namely, when the motion vector resolution of the current block is different from the predetermined motion vector resolution (eg, the minimum motion vector resolution), the predictive motion vector mvpLX is adjusted. When amvr_idx is 0, namely, when the predictive motion vector is obtained from the motion vector of block A1, the predictive motion vector is not adjusted.

Затем, ссылаясь на фиг. 28, на S2810, когда флаг mvpAvailFlag, представляющий доступность прогнозного вектора движения равен 0, а именно, когда блок B1 идентифицируется как недоступный из информации availableB1, указывающей доступность блока B1, или индекс RefIdxLX[xNbB1][yNbB1] опорного кадра блока B1 направления прогнозирования, идентичного направлению прогнозирования текущего блока, является идентичным -1, процесс извлечения вектора движения по умолчанию через S2820-S2890 выполняется.Then, referring to FIG. 28, in S2810, when the flag mvpAvailFlag representing the availability of the predictive motion vector is 0, namely, when the block B1 is identified as unavailable from the information availableB1 indicating the availability of the block B1, or the index RefIdxLX[xNbB1][yNbB1] of the reference frame of the prediction direction block B1 , identical to the prediction direction of the current block, is the same as -1, the default motion vector extraction process through S2820-S2890 is performed.

На S2820 определяются доступность блока A1 и доступность блока B1. Определения в отношении доступности блока A1 и доступности блока B1 могут выполняться согласно вышеописанным четырем условиям для определения доступности первого соседнего блока.In S2820, the availability of block A1 and the availability of block B1 are determined. The determinations regarding the availability of block A1 and the availability of block B1 may be made according to the above four conditions to determine the availability of the first neighboring block.

На S2830 компонент по оси X и компонент по оси Y вектора DefaultMvLX движения по умолчанию задаются равными 0.In S2830, the X-axis component and the Y-axis component of the DefaultMvLX motion vector are set to 0 by default.

На S2840, когда блок A1 идентифицируется как доступный из информации availableA1, указывающей доступность блока A1, и индекс refIdxLX опорного кадра текущего блока является идентичным индексу RefIdxLX[xNbA1][yNbA1] опорного кадра блока A1, вектор движения блока A1 задается в качестве вектора движения по умолчанию.In S2840, when block A1 is identified as available from availableA1 information indicating the availability of block A1, and the index refIdxLX of the reference frame of the current block is the same as the index RefIdxLX[xNbA1][yNbA1] of the reference frame of block A1, the motion vector of block A1 is set as the motion vector along by default.

На S2850, когда условие, упомянутое на S2840, не удовлетворяется, блок B1 идентифицируется как доступный из информации availableB1, указывающей доступность блока B1, и индекс refIdxLX опорного кадра текущего блока является идентичным индексу RefIdxLX[xNbB1][yNbB1] опорного кадра блока B1, вектор движения блока B1 задается в качестве вектора движения по умолчанию.In S2850, when the condition mentioned in S2840 is not satisfied, block B1 is identified as available from availableB1 information indicating the availability of block B1, and the index refIdxLX of the reference frame of the current block is the same as the index RefIdxLX[xNbB1][yNbB1] of the reference frame of block B1, vector motion block B1 is set as the default motion vector.

На S2860, когда условие, упомянутое на S2850, не удовлетворяется, блок A1 идентифицируется как доступный из информации availableA1, указывающей доступность блока A1, и индекс RefIdxLX[xNbA1][yNbA1] опорного кадра блока A1 не является идентичным -1, вектор движения блока A1 задается в качестве вектора движения по умолчанию.In S2860, when the condition mentioned in S2850 is not satisfied, block A1 is identified as available from availableA1 information indicating the availability of block A1, and index RefIdxLX[xNbA1][yNbA1] of the reference frame of block A1 is not the same -1, motion vector of block A1 is set as the default motion vector.

На S2870, когда условие, упомянутое на S2860, не удовлетворяется, блок B1 идентифицируется как доступный из информации availableB1, указывающей доступность блока B1, и индекс RefIdxLX[xNbB1][yNbB1] опорного кадра блока B1 не является идентичным -1, вектор движения блока B1 задается в качестве вектора движения по умолчанию.In S2870, when the condition mentioned in S2860 is not satisfied, block B1 is identified as available from availableB1 information indicating the availability of block B1, and index RefIdxLX[xNbB1][yNbB1] of the reference frame of block B1 is not the same -1, motion vector of block B1 is set as the default motion vector.

На S2880, когда вектор движения блока A1 или вектор движения блока B1 не задается в качестве вектора движения по умолчанию, вектор движения блока, декодированного перед текущим блоком, задается в качестве вектора движения по умолчанию.In S2880, when the motion vector of block A1 or the motion vector of block B1 is not set as the default motion vector, the motion vector of the block decoded before the current block is set as the default motion vector.

На S2890, когда индекс refIdxLX опорного кадра текущего блока не является идентичным индексу DefaultRefIdxLX опорного кадра по умолчанию, вектор движения по умолчанию масштабируется согласно соотношению distScaleFactorLX между расстоянием currPocDiffLX между текущим кадром и кадром RefPicListX[DefaultRefIdxLX], указываемым посредством индекса DefaultRefIdxLX опорного кадра по умолчанию, и расстоянием targetPocDiffLX между текущим кадром и опорным кадром RefPicListX[refIdxLX] текущего блока. Индекс DefaultRefIdxLX опорного кадра по умолчанию может означать индекс опорного кадра блока, используемого для того, чтобы получать вектор движения по умолчанию.In S2890, when the reference frame index refIdxLX of the current block is not identical to the DefaultRefIdxLX index of the default reference frame, the default motion vector is scaled according to the distScaleFactorLX relation between the distance currPocDiffLX between the current frame and the frame RefPicListX[DefaultRefIdxLX] indicated by the DefaultRefIdxLX index of the default reference frame, and the distance targetPocDiffLX between the current frame and the reference frame RefPicListX[refIdxLX] of the current block. The DefaultRefIdxLX index of the default reference frame may mean the index of the reference frame of the block used to obtain the default motion vector.

На S2895, вектор DefaultMvLX движения по умолчанию задается в качестве прогнозного вектора mvpLX движения текущего блока.In S2895, the default motion vector DefaultMvLX is set as the predictive motion vector mvpLX of the current block.

Хотя не показано на фиг. 28, когда amvr_idx не равен 0, а именно, когда разрешение векторов движения текущего блока отличается от предварительно определенного разрешения векторов движения (например, минимального разрешения векторов движения), прогнозный вектор mvpLX движения регулируется.Although not shown in FIG. 28, when amvr_idx is not equal to 0, namely, when the motion vector resolution of the current block is different from the predetermined motion vector resolution (eg, the minimum motion vector resolution), the predictive motion vector mvpLX is adjusted.

Вышеописанные варианты осуществления раскрытия могут быть написаны в качестве машиноисполняемых программ, и написанные машиноисполняемые программы могут сохраняться в носителе.The above-described embodiments of the disclosure may be written as computer executable programs, and the written computer executable programs may be stored in a medium.

Носитель может непрерывно сохранять машиноисполняемые программы либо временно сохранять машиноисполняемые программы для выполнения или загрузки. Кроме того, носитель может представлять собой любой из различных носителей записи или носителей хранения данных, в которых комбинируются один элемент или множество элементов аппаратных средств, и носитель не ограничен носителем, непосредственно соединенным с компьютерной системой, и может распространяться по сети. Примеры носителя включают в себя магнитный носитель (например, жесткий диск, гибкий диск или магнитную ленту), оптический носитель (например, постоянное запоминающее устройство на компакт-дисках (CD-ROM) или универсальный цифровой диск (DVD), магнитооптический носитель (например, флоптический диск) и ROM, оперативное запоминающее устройство (RAM) и флэш-память, которые выполнены с возможностью сохранять программные инструкции. Другие примеры носителя включают в себя носители записи и носители хранения данных, управляемые посредством магазинов приложений, распространяющих приложения, или посредством веб-узлов, серверов и т.п., предоставляющих или распространяющих другие различные типы программного обеспечения.The medium may continuously store the executable programs or temporarily store the executable programs for execution or loading. In addition, the medium may be any of various recording media or storage media in which a single item or a plurality of hardware items are combined, and the medium is not limited to a medium directly connected to a computer system and can be distributed over a network. Examples of media include magnetic media (such as a hard disk, floppy disk, or magnetic tape), optical media (such as CD-ROM or DVD read only memory), magneto-optical media (such as floppy disk) and ROM, Random Access Memory (RAM), and flash memory, which are configured to store program instructions. hosts, servers, etc. providing or distributing various other types of software.

Хотя один или более вариантов осуществления раскрытия описываются со ссылкой на чертежи, специалисты в данной области техники должны понимать, что различные изменения в форме и подробностях могут вноситься в них без отступления от сущности и объема, определяемого прилагаемой формулой изобретения.While one or more embodiments of the disclosure are described with reference to the drawings, those skilled in the art will appreciate that various changes in form and detail may be made without departing from the spirit and scope of the appended claims.

Claims (25)

1. Способ декодирования вектора движения посредством устройства декодирования изображений, при этом способ содержит этапы, на которых:1. A method for decoding a motion vector by means of an image decoding device, the method comprising the steps of: получают из потока битов информацию, указывающую разрешение векторов движения текущего блока;receiving from the bit stream information indicating the resolution of the motion vectors of the current block; выбирают первый соседний блок из множества соседних блоков, смежных с текущим блоком, с использованием информации, указывающей разрешение векторов движения текущего блока;selecting a first neighboring block from a plurality of neighboring blocks adjacent to the current block using information indicating the resolution of motion vectors of the current block; если текущий блок ссылается на опорный кадр в списке 0 и первый соседний блок ссылается на опорный кадр в списке 0, определяют предиктор вектора движения с использованием вектора движения первого соседнего блока;if the current block refers to a reference frame in list 0 and the first neighboring block refers to a reference frame in list 0, determining a motion vector predictor using the motion vector of the first neighboring block; если текущий блок ссылается на опорный кадр в списке 0 и первый соседний блок ссылается на опорный кадр в списке 1, определяют вектор движения по умолчанию на основе вектора движения второго соседнего блока из множества соседних блоков, смежных с текущим блоком, и определяют предиктор вектора движения текущего блока с использованием вектора движения по умолчанию; иif the current block refers to a reference frame in list 0 and the first neighboring block refers to a reference frame in list 1, determine the default motion vector based on the motion vector of the second neighboring block from the plurality of neighboring blocks adjacent to the current block, and determine the motion vector predictor of the current block using the default motion vector; And определяют вектор движения текущего блока с использованием упомянутого определенного предиктора вектора движения.determining a motion vector of the current block using said determined motion vector predictor. 2. Способ по п.1, в котором если первый соседний блок доступен согласно информации, указывающей доступность первого соседнего блока, предиктор вектора движения текущего блока получается с использованием вектора движения первого соседнего блока.2. The method of claim 1, wherein if the first neighbor block is available according to information indicating the availability of the first neighbor block, a motion vector predictor of the current block is obtained using the motion vector of the first neighbor block. 3. Способ по п.2, в котором доступность первого соседнего блока определяется согласно по меньшей мере одному из того, отличается или нет плитка, включающая в себя первый соседний блок, от плитки, включающей в себя текущий блок, того, расположен или нет первый соседний блок за пределами текущего кадра, того, спрогнозирован ли первый соседний блок посредством интра-прогнозирования или нет, и того, восстанавливается или нет первый соседний блок.3. The method of claim 2, wherein the accessibility of the first adjacent block is determined according to at least one of whether or not the tile including the first adjacent block differs from the tile including the current block whether or not the first is located. adjacent block outside the current frame, whether the first adjacent block is predicted by intra-prediction or not, and whether or not the first adjacent block is recovered. 4. Способ по п.1, в котором разрешение векторов движения включается во множество разрешений векторов движения, при этом множество разрешений векторов движения соответствуют соседним блокам в разных местоположениях.4. The method of claim 1, wherein the motion vector resolution is included in a set of motion vector resolutions, wherein the set of motion vector resolutions correspond to neighboring blocks at different locations. 5. Способ по п.1, в котором местоположение второго соседнего блока определяется на основе информации, указывающей доступности левого соседнего блока и правого соседнего блока относительно текущего блока.5. The method of claim 1, wherein the location of the second neighbor block is determined based on information indicating the availability of the left neighbor block and the right neighbor block relative to the current block. 6. Способ по п.1, в котором вектор движения второго соседнего блока определяется в качестве вектора движения по умолчанию, если второй соседний блок доступен согласно информации, указывающей доступность второго соседнего блока, и второй соседний блок ссылается на опорный кадр в списке 0.6. The method of claim 1, wherein the motion vector of the second neighbor block is determined as the default motion vector if the second neighbor block is available according to information indicating the availability of the second neighbor block, and the second neighbor block refers to a reference frame in list 0. 7. Способ по п.6, в котором предиктор вектора движения текущего блока определяется с использованием вектора движения блока, декодированного перед текущим блоком, если второй соседний блок не доступен или второй соседний блок ссылается на опорный кадр в списке 1.7. The method of claim 6, wherein the motion vector predictor of the current block is determined using the motion vector of the block decoded before the current block if the second neighbor block is not available or the second neighbor block refers to a reference frame in list 1. 8. Устройство декодирования изображений, содержащее:8. An image decoding device, comprising: модуль получения, выполненный с возможностью получать из потока битов информацию, указывающую разрешение векторов движения текущего блока;an acquisition module, configured to obtain from the bit stream information indicating the resolution of the motion vectors of the current block; модуль прогнозирования векторов движения, выполненный с возможностью:a motion vector prediction module configured to: выбирать первый соседний блок из множества соседних блоков, смежных с текущим блоком, с использованием информации, указывающей разрешение векторов движения текущего блока,select a first neighboring block from a plurality of neighboring blocks adjacent to the current block using information indicating the resolution of the motion vectors of the current block, если текущий блок ссылается на опорный кадр в списке 0 и первый соседний блок ссылается на опорный кадр в списке 0, определять предиктор вектора движения с использованием вектора движения первого соседнего блока, иif the current block refers to a reference frame in list 0 and the first neighboring block refers to a reference frame in list 0, determine the motion vector predictor using the motion vector of the first neighboring block, and если текущий блок ссылается на опорный кадр в списке 0 и первый соседний блок ссылается на опорный кадр в списке 1, определять вектор движения по умолчанию на основе вектора движения второго соседнего блока из множества соседних блоков, смежных с текущим блоком, и определять предиктор вектора движения текущего блока с использованием вектора движения по умолчанию; иif the current block refers to a reference frame in list 0 and the first neighboring block refers to a reference frame in list 1, determine the default motion vector based on the motion vector of the second neighboring block from the set of neighboring blocks adjacent to the current block, and determine the motion vector predictor of the current block using the default motion vector; And модуль восстановления векторов движения, выполненный с возможностью определять вектор движения текущего блока с использованием упомянутого определенного предиктора вектора движения.a motion vector recovery module, configured to determine the motion vector of the current block using said determined motion vector predictor. 9. Способ кодирования вектора движения посредством устройства кодирования изображений, при этом способ содержит этапы, на которых:9. A method for encoding a motion vector by means of an image encoding device, the method comprising the steps of: определяют разрешение векторов движения текущего блока;determining the resolution of the motion vectors of the current block; выбирают первый соседний блок из множества соседних блоков, смежных с текущим блоком, с использованием разрешения векторов движения текущего блока;selecting a first neighboring block from a plurality of neighboring blocks adjacent to the current block using motion vector resolution of the current block; если текущий блок ссылается на опорный кадр в списке 0 и первый соседний блок ссылается на опорный кадр в списке 0, определяют предиктор вектора движения с использованием вектора движения первого соседнего блока;if the current block refers to a reference frame in list 0 and the first neighboring block refers to a reference frame in list 0, determining a motion vector predictor using the motion vector of the first neighboring block; если текущий блок ссылается на опорный кадр в списке 0 и первый соседний блок ссылается на опорный кадр в списке 1, определяют вектор движения по умолчанию на основе вектора движения второго соседнего блока из множества соседних блоков, смежных с текущим блоком, и определяют предиктор вектора движения текущего блока посредством использования вектора движения по умолчанию; иif the current block refers to a reference frame in list 0 and the first neighboring block refers to a reference frame in list 1, determine the default motion vector based on the motion vector of the second neighboring block from the plurality of neighboring blocks adjacent to the current block, and determine the motion vector predictor of the current block by using the default motion vector; And формируют поток битов, содержащий информацию, указывающую разрешение векторов движения текущего блока и дифференциальный вектор движения, определенный с использованием вектора движения текущего блока и предиктора вектора движения текущего блока.generating a bitstream containing information indicating the resolution of the motion vectors of the current block and a differential motion vector determined using the motion vector of the current block and the motion vector predictor of the current block.
RU2022128113A 2020-04-10 2021-01-27 Device and method for motion vector encoding and device and method for motion vector decoding RU2801154C1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0044297 2020-04-10
KR10-2021-0011031 2021-01-26

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2023119136A Division RU2818966C2 (en) 2020-04-10 2021-01-27 Device and method for encoding motion vector and device and method for decoding motion vector

Publications (1)

Publication Number Publication Date
RU2801154C1 true RU2801154C1 (en) 2023-08-02

Family

ID=

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130067874A (en) * 2011-12-14 2013-06-25 연세대학교 산학협력단 Image encoding method and apparatus, and image decoding method and apparatus according to prediction motion vector selection
WO2014051320A1 (en) * 2012-09-28 2014-04-03 삼성전자주식회사 Image processing method and apparatus for predicting motion vector and disparity vector
RU2530252C1 (en) * 2010-01-14 2014-10-10 Самсунг Электроникс Ко., Лтд. Movement vector coding and decoding method and device
US20180324456A1 (en) * 2015-11-11 2018-11-08 Samsung Electronics Co., Ltd. Method for encoding/decoding image, and device therefor
US10575012B2 (en) * 2011-03-21 2020-02-25 Lg Electronics Inc. Method for selecting motion vector predictor and device using same
WO2020050695A1 (en) * 2018-09-06 2020-03-12 엘지전자 주식회사 Motion prediction-based image decoding method and apparatus using merge candidate list in image coding system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2530252C1 (en) * 2010-01-14 2014-10-10 Самсунг Электроникс Ко., Лтд. Movement vector coding and decoding method and device
US10575012B2 (en) * 2011-03-21 2020-02-25 Lg Electronics Inc. Method for selecting motion vector predictor and device using same
KR20130067874A (en) * 2011-12-14 2013-06-25 연세대학교 산학협력단 Image encoding method and apparatus, and image decoding method and apparatus according to prediction motion vector selection
WO2014051320A1 (en) * 2012-09-28 2014-04-03 삼성전자주식회사 Image processing method and apparatus for predicting motion vector and disparity vector
US20180324456A1 (en) * 2015-11-11 2018-11-08 Samsung Electronics Co., Ltd. Method for encoding/decoding image, and device therefor
WO2020050695A1 (en) * 2018-09-06 2020-03-12 엘지전자 주식회사 Motion prediction-based image decoding method and apparatus using merge candidate list in image coding system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Benjamin Bross et al. "Versatile Video Coding (Draft 8)", Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 17th Meeting, Brussels, January 2020. *

Similar Documents

Publication Publication Date Title
EP3855738A1 (en) Method for encodng and decoding motion information, and apparatus for encodng and decoding motion information
KR102466900B1 (en) Video encoding and decoding method using tiles and tile groups, and video encoding and decoding apparatus using tiles and tile groups
EP4030762A1 (en) Image decoding device using tool set and image decoding method thereby, and image coding device and image coding method thereby
EP4054192A1 (en) Video decoding method and apparatus, and video encoding method and apparatus for performing inter prediction according to affine model
KR102332529B1 (en) Apparatus and method for encoding and decoding motion information by using neighboring motion information
KR20240101757A (en) Encoding apparatus and method of motion vector, and decoding apparatus and method of motion vector
KR102672758B1 (en) Image decoding apparatus and method using tool set, and image encoding apparatus and method
KR102546695B1 (en) Apparatus and method for encoding and decoding motion information by using neighboring motion information
EP3833020A1 (en) Method and device for encoding image and method and device for decoding image on basis of sub-block
RU2801154C1 (en) Device and method for motion vector encoding and device and method for motion vector decoding
RU2818966C2 (en) Device and method for encoding motion vector and device and method for decoding motion vector
JP7556979B2 (en) Apparatus and method for encoding motion vector, and apparatus and method for decoding motion vector
KR102493125B1 (en) Image decoding apparatus and method using tool set, and image encoding apparatus and method