RU2810727C1 - Methods, equipment and devices for decoding, encoding and encoding/decoding - Google Patents

Methods, equipment and devices for decoding, encoding and encoding/decoding Download PDF

Info

Publication number
RU2810727C1
RU2810727C1 RU2022126916A RU2022126916A RU2810727C1 RU 2810727 C1 RU2810727 C1 RU 2810727C1 RU 2022126916 A RU2022126916 A RU 2022126916A RU 2022126916 A RU2022126916 A RU 2022126916A RU 2810727 C1 RU2810727 C1 RU 2810727C1
Authority
RU
Russia
Prior art keywords
current block
value
filter
inter
prediction
Prior art date
Application number
RU2022126916A
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 RU2810727C1 publication Critical patent/RU2810727C1/en

Links

Images

Abstract

FIELD: means for video encoding and decoding.
SUBSTANCE: if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in the inter prediction filter mode and the current block satisfies the conditions of the inter prediction filter, then the inter prediction filter flag is analysed. If the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, then the prediction target value for the current block is obtained by executing the inter prediction filter procedure. If the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, then the prediction target value is obtained by executing the enhanced inter prediction filter procedure. Obtaining a prediction target value for a current block by performing an improved inter prediction filter procedure includes obtaining an inter prediction value and a reconstructed value for reconstructed pixels adjacent to the current block, and determining a prediction target value in accordance with the inter prediction value and the reconstructed value.
EFFECT: increased efficiency of video coding.
15 cl, 13 dwg, 2 tbl

Description

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

[0001] Настоящее изобретение относится к области технологий кодирования и декодирования и, в частности, к способам декодирования, способам кодирования, способам, оборудованию и устройствам для кодирования и декодирования.[0001] The present invention relates to the field of encoding and decoding technologies and, in particular, to decoding methods, encoding methods, methods, equipment and devices for encoding and decoding.

Предпосылки создания изобретенияPrerequisites for creating the invention

[0002] Для уменьшения занимаемого объема, видеоизображения передают после кодирования, при этом способы видеокодирования могут включать такие процедуры, как предсказание, преобразование, квантование, энтропийное кодирование и фильтрация, причем процедура предсказания может включать внутреннее предсказание и внешнее предсказание. Внешним предсказанием называют предсказание пикселей текущих изображений, с использованием корреляции видео во временной области, на основе пикселей соседних кодированных изображений, чтобы устранить избыточность видео во временной области. Внутренним предсказанием называют предсказание текущих некодированных блоков, с учетом сильной корреляции между смежными блоками в пространственной области, на основе окружающих восстановленных пикселей в качестве опорных пикселей, для выполнения последующего кодирования только значения остатка, вместо кодирования исходного значения, что позволяет эффективно устранить избыточность в пространственной области и повысить эффективность сжатия.[0002] To reduce the footprint, video images are transmitted after encoding, and video encoding methods may include procedures such as prediction, transformation, quantization, entropy encoding and filtering, and the prediction procedure may include intra prediction and inter prediction. Extrinsic prediction refers to the prediction of pixels of current images using time domain video correlation based on the pixels of neighboring encoded images to eliminate redundancy in time domain videos. Intra prediction is the prediction of current uncoded blocks, taking into account the strong correlation between adjacent blocks in the spatial domain, based on the surrounding reconstructed pixels as reference pixels, to perform subsequent encoding of only the residual value instead of encoding the original value, which can effectively eliminate redundancy in the spatial domain. and improve compression efficiency.

[0003] Фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания представляют собой две технологии реализации внешнего предсказания, которые применяют в основном для устранения проблемы пространственной неоднородности между блоком предсказания и окружающими пикселями, которая вызвана внешним предсказанием. Однако до настоящего времени не было подходящего решения для реализации внешнего предсказания при кодировании в режиме фильтра внешнего предсказания или в режиме улучшенного фильтра внешнего предсказания, и имелись проблемы низкой эффективности кодирования.[0003] Inter prediction filter and improved inter prediction filter are two inter prediction technologies that are mainly used to eliminate the problem of spatial heterogeneity between the prediction block and surrounding pixels that is caused by inter prediction. However, until now, there has been no suitable solution for realizing inter prediction when encoding in the inter prediction filter mode or the enhanced inter prediction filter mode, and there have been problems of low coding efficiency.

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

[0004] В настоящей заявке предлагается способ декодирования, применяемый в устройстве декодирования и включающий: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, анализ флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, получение целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, получение целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[0004] The present application proposes a decoding method applied to a decoding apparatus, including: if an inter-prediction filter enable flag indicates that the current block is allowed to be encoded in the inter-prediction filter mode, and the current block satisfies the conditions of the inter-prediction filter, analyzing the filter flag inter-prediction for the current block from the bitstream data of the current block; if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, obtaining a prediction target value for the current block by executing an inter prediction filter procedure for the current block; if the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, obtaining a target prediction value for the current block by executing an enhanced inter prediction filter procedure for the current block.

[0005] В настоящей заявке предлагается способ кодирования, применяемый в устройстве кодирования и включающий: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, кодирование флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока, при этом, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; или, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания.[0005] The present application proposes an encoding method applied to an encoding apparatus, including: if an inter prediction filter enable flag indicates that a current block is allowed to be encoded in an inter prediction filter mode, and the current block satisfies the conditions of an inter prediction filter, encoding the filter flag inter prediction for the current block in the bit stream data of the current block according to the filter type for the current block, wherein if the filter type for the current block is an inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is a filter external prediction; or, if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter.

[0006] В настоящей заявке предлагается способ кодирования и декодирования, применяемый в устройстве кодирования или в устройстве декодирования и включающий: если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; определение целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[0006] The present application provides an encoding and decoding method applied to an encoding apparatus or a decoding apparatus, comprising: if it is determined that an enhanced inter prediction filter is activated for a current block, obtaining a target prediction value for a chrominance component by executing an enhanced inter prediction filter procedure for the chrominance component of the current block; determining a prediction target value for the current block in accordance with the prediction target value for the chroma component.

[0007] В настоящей заявке предлагается оборудование для декодирования, применяемое в устройстве декодирования и содержащее: модуль получения, сконфигурированный, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, для анализа флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока; модуль обработки, сконфигурированный, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, для получения целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока, и, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, для получения целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[0007] This application provides decoding equipment used in a decoding apparatus, comprising: an acquisition module configured if an inter prediction filter enable flag indicates that the current block is allowed to be encoded in an inter prediction filter mode, and the current block satisfies filter conditions inter prediction, for analyzing the inter prediction filter flag for the current block from the bit stream data of the current block; a processing module configured, if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, to obtain a prediction target value for the current block by executing an inter prediction filter procedure for the current block, and if the inter prediction filter flag indicates that the filter type for the current block is an improved inter prediction filter, to obtain a target prediction value for the current block by executing an improved inter prediction filter procedure for the current block.

[0008] В настоящей заявке предлагается оборудование для кодирования, применяемое в устройстве кодирования и содержащее: модуль кодирования, сконфигурированный, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, для кодирования флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока, при этом, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; или, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания; и модуль передачи, сконфигурированный для передачи данных битового потока текущего блока.[0008] This application provides encoding equipment used in an encoding apparatus, comprising: an encoding module configured if an inter prediction filter enable flag indicates that a current block is allowed to be encoded in an inter prediction filter mode, and the current block satisfies filter conditions inter prediction filter flag for encoding an inter prediction filter flag for the current block in the bit stream data of the current block according to the filter type for the current block, wherein if the filter type for the current block is an inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter; or, if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter; and a transmission module configured to transmit bit stream data of the current block.

[0009] В настоящей заявке предлагается оборудование для кодирования и декодирования, применяемое в устройстве кодирования или в устройстве декодирования и содержащее: модуль обработки, сконфигурированный, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, для получения целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; и модуль определения, сконфигурированный для определения целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[0009] This application provides encoding and decoding equipment used in an encoding apparatus or a decoding apparatus, comprising: a processing module configured, if it is determined that an enhanced inter prediction filter is activated for a current block, to obtain a target prediction value for a chrominance component by performing an enhanced inter-prediction filter procedure on the chrominance component of the current block; and a determination module configured to determine a prediction target value for the current block in accordance with the prediction target value for the chrominance component.

[0010] В настоящей заявке предлагается устройство декодирования, содержащее процессор и машиночитаемый носитель данных, при этом на машиночитаемом носителе данных хранятся машиночитаемые инструкции, которые могут исполняться процессором для выполнения следующих шагов: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, анализ флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, получение целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока; и, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, получение целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока, или, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; и определение целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[0010] This application provides a decoding apparatus comprising a processor and a computer-readable storage medium, wherein the computer-readable storage medium stores computer-readable instructions that can be executed by the processor to perform the following steps: if the inter-prediction filter enable flag indicates that the current block is enabled encode in inter-prediction filter mode, and the current block satisfies the conditions of the inter-prediction filter, analyzing the inter-prediction filter flag for the current block from the bitstream data of the current block; if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, obtaining a prediction target value for the current block by executing an inter prediction filter procedure for the current block; and, if the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, obtaining a target prediction value for the current block by performing an enhanced inter prediction filter procedure for the current block, or if it is determined that the enhanced inter prediction filter prediction is activated for the current block, obtaining a prediction target value for the chrominance component by executing an enhanced inter prediction filter procedure for the chrominance component of the current block; and determining a prediction target value for the current block in accordance with the prediction target value for the chrominance component.

[0011] В настоящей заявке предлагается устройство кодирования, содержащее процессор и машиночитаемый носитель данных, при этом на машиночитаемом носителе данных хранятся машиночитаемые инструкции, которые могут исполняться процессором для выполнения следующих шагов: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, кодирование флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока, при этом, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; или, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, или, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; и определение целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[0011] This application provides an encoding apparatus comprising a processor and a computer-readable storage medium, wherein the computer-readable storage medium stores computer-readable instructions that can be executed by the processor to perform the following steps: if the inter-prediction filter enable flag indicates that the current block is enabled encode in the inter prediction filter mode, and the current block satisfies the conditions of the inter prediction filter, encoding the inter prediction filter flag for the current block in the bitstream data of the current block according to the filter type for the current block, wherein if the filter type for the current block is filter inter prediction, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter; or, if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, or, if it is determined that an enhanced inter prediction filter is enabled for the current block, obtaining a prediction target value for the chrominance component by executing an enhanced inter-prediction filter procedure for the chrominance component of the current block; and determining a prediction target value for the current block in accordance with the prediction target value for the chrominance component.

[0012] Из рассмотренных выше технических решений следует, что в вариантах осуществления настоящего изобретения флаги для фильтра внешнего предсказания и улучшенного фильтра внешнего предсказания могут быть не связаны друг с другом, то есть флаг активации фильтра внешнего предсказания указывает на то, разрешено ли применение фильтра внешнего предсказания, а флаг активации улучшенного фильтра внешнего предсказания указывает на то, разрешено ли применение улучшенного фильтра внешнего предсказания, что позволяет эффективно использовать фильтр внешнего предсказания или улучшенный фильтр внешнего предсказания для реализации кодирования с внешним предсказанием и повысить эффективность кодирования без увеличения сложности кодирования и декодирования.[0012] From the technical solutions discussed above, in embodiments of the present invention, the flags for the inter prediction filter and the enhanced inter prediction filter may not be associated with each other, that is, the enable flag for the inter prediction filter indicates whether the use of the inter prediction filter is enabled. and the enhanced inter prediction filter activation flag indicates whether the use of the enhanced inter prediction filter is enabled, which allows the inter prediction filter or improved inter prediction filter to be effectively used to implement inter prediction coding and improve coding efficiency without increasing the complexity of encoding and decoding.

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

[0013] Фиг. 1А представляет собой схему, иллюстрирующую структуру видеокодирования в одном из вариантов осуществления настоящего изобретения.[0013] FIG. 1A is a diagram illustrating a video encoding structure in one embodiment of the present invention.

[0014] Фиг. 1В представляет собой схему, иллюстрирующую дерево разбиения в одном из вариантов осуществления настоящего изобретения.[0014] FIG. 1B is a diagram illustrating a partition tree in one embodiment of the present invention.

[0015] Фиг. 2А представляет собой блок-схему, иллюстрирующую способ декодирования в одном из вариантов осуществления настоящего изобретения.[0015] FIG. 2A is a flow chart illustrating a decoding method in one embodiment of the present invention.

[0016] Фиг. 2В представляет собой блок-схему, иллюстрирующую способ кодирования в одном из вариантов осуществления настоящего изобретения.[0016] FIG. 2B is a flow chart illustrating an encoding method in one embodiment of the present invention.

[0017] Фиг. 2С представляет собой блок-схему, иллюстрирующую способ кодирования и декодирования в одном из вариантов осуществления настоящего изобретения.[0017] FIG. 2C is a flowchart illustrating an encoding and decoding method in one embodiment of the present invention.

[0018] Фиг. 3 представляет собой блок-схему, иллюстрирующую способ кодирования и декодирования в еще одном из вариантов осуществления настоящего изобретения.[0018] FIG. 3 is a flowchart illustrating an encoding and decoding method in yet another embodiment of the present invention.

[0019] Фиг. 4 представляет собой блок-схему, иллюстрирующую процедуру декодирования с использованием фильтра внешнего предсказания в одном из вариантов осуществления настоящего изобретения.[0019] FIG. 4 is a flowchart illustrating a decoding procedure using an inter prediction filter in one embodiment of the present invention.

[0020] Фиг. 5 представляет собой блок-схему, иллюстрирующую взаимное расположение текущего блока и опорных пикселей в одном из вариантов осуществления настоящего изобретения.[0020] FIG. 5 is a block diagram illustrating the relative positions of a current block and reference pixels in one embodiment of the present invention.

[0021] Фиг. 6А представляет собой структурную схему, иллюстрирующую оборудование для декодирования в одном из вариантов осуществления настоящего изобретения.[0021] FIG. 6A is a block diagram illustrating decoding equipment in one embodiment of the present invention.

[0022] Фиг. 6В представляет собой структурную схему, иллюстрирующую оборудование для кодирования в одном из вариантов осуществления настоящего изобретения.[0022] FIG. 6B is a block diagram illustrating encoding equipment in one embodiment of the present invention.

[0023] Фиг. 6С представляет собой структурную схему, иллюстрирующую оборудование для кодирования и декодирования в одном из вариантов осуществления настоящего изобретения.[0023] FIG. 6C is a block diagram illustrating encoding and decoding equipment in one embodiment of the present invention.

[0024] Фиг. 7А представляет собой аппаратную структурную схему, иллюстрирующую устройство декодирования в одном из вариантов осуществления настоящего изобретения.[0024] FIG. 7A is a hardware block diagram illustrating a decoding apparatus in one embodiment of the present invention.

[0025] Фиг. 7В представляет собой аппаратную структурную схему, иллюстрирующую устройство кодирования в одном из вариантов осуществления настоящего изобретения.[0025] FIG. 7B is a hardware block diagram illustrating an encoding device in one embodiment of the present invention.

Подробное описание вариантов осуществления изобретенияDetailed Description of Embodiments of the Invention

[0026] Терминология, использованная при описании вариантов осуществления настоящего изобретения, предназначена исключительно для пояснения конкретных примеров и не должна рассматриваться как ограничивающая настоящее изобретение. За исключением случаев, когда обратное явно следует из контекста, выражения в единственном числе в вариантах осуществления настоящего изобретения, такие как «один», «один из» или «упомянутый», в настоящем описании и приложенной формуле изобретения следует трактовать как включающие также и множественное число. Нужно понимать, что выражение «и/или» в настоящем документе указывает на любые и все возможные комбинации из одного или более соответствующих элементов, перечисленных таким образом, или включает их. Для описания информации в вариантах осуществления настоящего изобретения могут использоваться такие выражения, как «первая», «вторая», «третья» или аналогичные им, однако нужно понимать, что такие выражения не накладывают никаких ограничений на описываемую информацию. Данные термины используются исключительно для различения одного типа информации от другого. Например, в пределах сущности настоящего изобретения «первая информация» может также называться «второй информацией»; и, аналогично, «вторая информация» может называться «первой информацией». В зависимости от контекста, выражение «если» в настоящем документе означает «когда», или «после того как», или «в ответ на определение того, что».[0026] The terminology used in describing embodiments of the present invention is intended solely to illustrate specific examples and should not be construed as limiting the present invention. Except where the context clearly indicates the contrary, expressions in the singular in embodiments of the present invention, such as “one,” “one of,” or “mentioned,” in this specification and the appended claims are to be construed as including the plural number. It is to be understood that the expression "and/or" as used herein refers to or includes any and all possible combinations of one or more of the corresponding elements so listed. Expressions such as “first,” “second,” “third,” or the like may be used to describe information in embodiments of the present invention, but it is understood that such expressions do not impose any limitations on the information described. These terms are used solely to distinguish one type of information from another. For example, within the spirit of the present invention, “first information” may also be referred to as “second information”; and, similarly, the "second information" may be called the "first information". Depending on the context, the expression “if” herein means “when” or “after” or “in response to a determination that”.

[0027] Ниже будут кратко описаны технические термины, необходимые для более полного понимания технических решений настоящего изобретения специалистами в соответствующей области техники.[0027] The following will briefly describe technical terms necessary for a more complete understanding of the technical solutions of the present invention by those skilled in the relevant field of technology.

[0028] Структура видеокодирования: показанная на фиг.1А структура видеокодирования может использоваться для реализации потока обработки данных в устройстве кодирования в вариантах осуществления настоящего изобретения, при этом схема, иллюстрирующая структуру видеодекодирования, аналогична фиг. 1А и не будет здесь повторяться. Упомянутая структура видеодекодирования может использоваться для реализации потока обработки данных в устройстве декодирования в вариантах осуществления настоящего изобретения. Структуры видеокодирования и видеодекодирования могут включать, не ограничиваясь этим, модуль предсказания, модуль оценки / компенсации движения, буфер опорных изображений, модуль внутриконтурной фильтрации, модуль восстановления, модуль преобразования, модуль квантования, модуль обратного преобразования, модуль деквантования, энтропийный кодер и другие модули. В устройстве кодирования посредством взаимодействия между этими модулями может быть реализован поток обработки данных устройства кодирования. В устройстве декодирования посредством взаимодействия между этими модулями может быть реализован поток обработки данных устройства декодирования.[0028] Video encoding structure: The video encoding structure shown in FIG. 1A may be used to implement a processing flow in an encoding apparatus in embodiments of the present invention, and a diagram illustrating the video decoding structure is similar to FIG. 1A and will not be repeated here. Said video decoding structure may be used to implement a processing flow in a decoding apparatus in embodiments of the present invention. The video encoding and video decoding structures may include, but are not limited to, a prediction module, a motion estimation/compensation module, a reference picture buffer, an in-loop filtering module, a reconstruction module, a transform module, a quantization module, an inverse transform module, a dequantization module, an entropy encoder, and other modules. In the encoding device, through the interaction between these modules, the data processing flow of the encoding device can be implemented. In the decoding device, through the interaction between these modules, the data processing flow of the decoding device can be implemented.

[0029] В некоторых из примеров при видеокодировании процедура предсказания может включать внутреннее предсказание и внешнее предсказание. Внутренним предсказанием называют предсказание текущих некодированных блоков, с учетом сильной корреляции между смежными блоками в пространственной области, на основе окружающих восстановленных пикселей в качестве опорных пикселей, для выполнения последующего кодирования только значения остатка, вместо кодирования исходного значения, чтобы эффективно устранить избыточность в пространственной области и повысить эффективность сжатия. Внешним предсказанием называют предсказание пикселей текущих изображений, с использованием корреляции видео во временной области, на основе пикселей соседних кодированных изображений, чтобы устранить избыточность видео во временной области.[0029] In some examples, in video encoding, the prediction procedure may include intra prediction and inter prediction. Intra prediction refers to the prediction of current uncoded blocks, taking into account the strong correlation between adjacent blocks in the spatial domain, based on the surrounding reconstructed pixels as reference pixels, to perform subsequent encoding of only the residual value, instead of encoding the original value, to effectively eliminate redundancy in the spatial domain and improve compression efficiency. Extrinsic prediction refers to the prediction of pixels of current images using time domain video correlation based on the pixels of neighboring encoded images to eliminate redundancy in time domain videos.

[0030] В некоторых из примеров при видеокодировании под преобразованием понимают преобразование изображения, описанного в форме пикселей в пространственной области, в изображение в области преобразования, которое выражено в виде коэффициентов преобразования. Поскольку большинство изображений включают множество однородных областей и медленно меняющихся областей, соответствующая процедура преобразования позволяет преобразовать неравномерное распределение энергии изображения в пространственной области в сравнительно сконцентрированное распределение энергии изображения в области преобразования. Соответственно, может быть устранена корреляция в частотной области между сигналами, что в сочетании с процедурой квантования позволяет эффективно сжимать данные битового потока.[0030] In some of the examples in video encoding, transform refers to transforming an image described in the form of pixels in a spatial domain into an image in a transform domain that is expressed in terms of transform coefficients. Since most images include many homogeneous regions and slowly varying regions, an appropriate conversion procedure can transform the uneven distribution of image energy in the spatial domain into a relatively concentrated distribution of image energy in the transformation domain. Accordingly, correlation in the frequency domain between signals can be eliminated, which, in combination with the quantization procedure, allows efficient compression of bitstream data.

[0031] В некоторых из примеров под энтропийным кодированием понимают способ кодирования без потерь в соответствии с принципом энтропии информации, при этом модуль энтропийного кодирования, как последний модуль обработки данных при видеосжатии, преобразует последовательность символов элементов, описывающих видеопоследовательность, в двоичные данные битового потока для передачи или хранения. Входные символы элементов могут включать квантованные коэффициенты преобразования, информацию векторов движения, информацию о режиме предсказания, соответствующий синтаксис преобразования и квантования и т.п.Выходные данные из модуля энтропийного кодера представляют собой окончательные данные битового потока после сжатия исходного видео. Энтропийное кодирование позволяет эффективно устранять статистическую избыточность этих символов элементов видео и является одним из важных инструментов, обеспечивающих эффективность сжатия при видеокодировании.[0031] In some of the examples, entropy encoding refers to a lossless encoding method in accordance with the principle of information entropy, wherein the entropy encoding module, as the last data processing module in video compression, converts the symbol sequence of elements describing the video sequence into binary bitstream data for transfer or storage. The input element symbols may include quantized transform coefficients, motion vector information, prediction mode information, associated transform and quantization syntax, etc. The output data from the entropy encoder module is the final bitstream data after compressing the original video. Entropy coding can effectively eliminate the statistical redundancy of these video element symbols and is one of the important tools to ensure compression efficiency in video coding.

[0032] В некоторых из примеров используют контурный фильтр для устранения артефактов блочности в изображении или проблем с качеством изображения, или иных проблем, что позволяет повысить качество изображения. К примеру, контурный фильтр может включать, не ограничиваясь этим, фильтр устранения блочности, адаптивный фильтр смещения отсчетов (sample adaptive offset, SAO), адаптивный контурный фильтр (adaptive loop filter, ALF), кросскомпонентный адаптивный контурный фильтр (Cross-Component Adaptive Loop Filter, CCALF) и т.п.[0032] Some of the examples use a contour filter to remove blocking artifacts in the image or image quality problems or other problems, thereby improving image quality. For example, a loop filter may include, but is not limited to, a deblocking filter, a sample adaptive offset (SAO) filter, an adaptive loop filter (ALF), a Cross-Component Adaptive Loop Filter , CCALF), etc.

[0033] Вектор движения (Motion Vector, MV): при внешнем предсказании может использоваться вектор движения для указания относительного смещения между текущим блоком в текущем изображении видео и опорным блоком в опорном изображении видео. Каждый блок разбиения имеет соответствующий ему вектор движения, передаваемый в устройство декодирования. Если вектор движения для каждого блока кодировать и передавать независимо, то потребуется значительное число битов, особенно в случае разбиения на большое число блоков малого размера. Для снижения количества битов для кодирования вектора движения может использоваться корреляция между смежными блоками в пространственной области для предсказания вектора движения для текущего кодируемого блока на основе векторов движения смежных кодированных блоков, а затем кодируют расхождение с предсказанием, благодаря чему может быть значительно уменьшено количество битов для указания векторов движения. В некоторых из примеров в процедуре кодирования вектора движения для текущего блока векторы движения смежных кодированных блоков могут использоваться для предсказания вектора движения текущего блока, а затем кодируют разность векторов движения (Motion Vector Difference, MVD) между предсказанием вектора движения (Motion Vector Prediction, MVP) и истинным вычисленным вектором движения, благодаря чему может быть значительно уменьшено количество битов для кодирования векторов движения.[0033] Motion Vector (MV): In inter-prediction, a motion vector may be used to indicate the relative offset between the current block in the current video image and a reference block in the video reference image. Each partitioning block has a corresponding motion vector transmitted to the decoding device. If the motion vector for each block is encoded and transmitted independently, a significant number of bits will be required, especially if divided into a large number of small blocks. To reduce the number of bits for encoding a motion vector, the correlation between adjacent blocks in the spatial domain can be used to predict the motion vector for the current coded block based on the motion vectors of adjacent coded blocks, and then the prediction divergence is encoded, whereby the number of bits for indicating motion vectors. In some of the examples, in the motion vector encoding procedure for the current block, the motion vectors of adjacent encoded blocks may be used to predict the motion vector of the current block, and then encode the Motion Vector Difference (MVD) between the Motion Vector Prediction (MVP) and the true computed motion vector, whereby the number of bits for encoding motion vectors can be significantly reduced.

[0034] Информация о движении: поскольку вектор движения указывает на смещение между текущим блоком и опорным блоком, то для точного получения информации об опорном блоке, помимо вектора движения, необходима информация индекса опорного изображения, которая указывает, какое из опорных изображений используется для текущего блока. Как правило, в технологии видеокодирования для текущего изображения формируют список опорных изображений, при этом информация индекса опорного изображения указывает, какое из опорных изображений в списке опорных изображений используют для текущего блока. Кроме того, во многих технологиях кодирования поддерживается множество списков опорных изображений. Соответственно, может использоваться значение индекса для указания, какой список опорных изображений используется, и это значение индекса может называться опорным направлением. Итак, в технологии видеокодирования информация, относящаяся к движению, такая как векторы движения, информация индекса опорного изображения и опорное направление, может совместно называться информацией о движении.[0034] Motion information: Since the motion vector indicates the offset between the current block and the reference block, to accurately obtain the reference block information, in addition to the motion vector, reference picture index information is needed, which indicates which of the reference pictures is used for the current block . Typically, in video coding technology, a reference picture list is generated for a current picture, and the reference picture index information indicates which of the reference pictures in the reference picture list is used for the current block. In addition, many encoding technologies support multiple reference picture lists. Accordingly, an index value may be used to indicate which reference picture list is used, and this index value may be referred to as a reference direction. Thus, in video coding technology, motion-related information such as motion vectors, reference image index information, and reference direction may be collectively referred to as motion information.

[0035] Стандартный режим внешнего предсказания, режим пропуска и прямой режим: при внешнем предсказании для предсказания текущего блока может использоваться один из режимов внешнего предсказания. Режимы внешнего предсказания могут включать: стандартный режим внешнего предсказания, режим пропуска, прямой режим и т.п.[0035] Standard inter prediction mode, skip mode and direct mode: In inter prediction, one of the inter prediction modes can be used to predict the current block. The inter prediction modes may include: standard inter prediction mode, skip mode, direct mode, and the like.

[0036] Режим пропуска является одним из режимов внешнего предсказания. Устройство кодирования не передает информацию остатка или MVD, а передает только индекс информации о движении. Устройство декодирования может вычислять информацию о движении текущего блока путем анализа индекса информации о движении. После получения информации о движении ее используют для определения значения предсказания, а значение предсказания используют напрямую в качестве восстановленного значения.[0036] The skip mode is one of the inter prediction modes. The encoder does not transmit residual or MVD information, but only transmits the motion information index. The decoding apparatus can calculate motion information of the current block by analyzing the motion information index. After the motion information is obtained, it is used to determine the prediction value, and the prediction value is directly used as the reconstructed value.

[0037] Прямой режим является режимом внешнего предсказания. Устройство кодирования передает информацию остатка, но не передает MVD, а передает только индекс информации о движении. Устройство декодирования может вычислять информацию о движении текущего блока путем анализа индекса информации о движении. После получения информации о движении ее используют для определения значения предсказания и добавляют значение предсказания к значению остатка для получения восстановленного значения.[0037] The forward mode is an inter prediction mode. The encoding device transmits the remainder information, but does not transmit the MVD, but only transmits the motion information index. The decoding apparatus can calculate motion information of the current block by analyzing the motion information index. Once the motion information is obtained, it is used to determine the prediction value, and the prediction value is added to the residual value to obtain a reconstructed value.

[0038] Еще одним из режимов внешнего предсказания является стандартный режим внешнего предсказания. В отличие от режима пропуска и прямого режима в стандартном режиме внешнего предсказания записывают индекс информации о движении, MVD, информацию остатка и другие данные, которые подлежат передаче. Однако в режиме пропуска или в прямом режиме информацию о движении текущего блока полностью мультиплексируют с информацией о движении смежного блока во временной или в пространственной области. К примеру, один элемент информации о движении может выбираться в качестве информации о движении из множества элементов информации о движении множества окружающих блоков. Соответственно, в режиме пропуска и в прямом режиме необходимо кодировать только значение индекса, указывающего, какая информация о движении из множества элементов информации о движении должна использоваться для текущего блока. Различие между режимом пропуска и прямым режимом заключается в том, что в режиме пропуска остатки не кодируют, а в прямом режиме - кодируют. Соответственно, прямой режим и режим пропуска позволяют значительно сократить объем служебной информации при кодировании информации о движении.[0038] Another inter prediction mode is the standard inter prediction mode. Unlike the skip mode and the direct mode, the standard inter-prediction mode records the motion information index, MVD, residual information and other data to be transmitted. However, in skip mode or direct mode, the motion information of the current block is completely multiplexed with the motion information of an adjacent block in the time or spatial domain. For example, one motion information item may be selected as the motion information from a plurality of motion information items of a plurality of surrounding blocks. Accordingly, in the skip mode and in the direct mode, only the index value indicating which motion information from the plurality of motion information elements is to be used for the current block needs to be encoded. The difference between the skip mode and the direct mode is that in the skip mode the remainders are not encoded, but in the direct mode they are encoded. Accordingly, the direct mode and the skip mode can significantly reduce the amount of overhead information when encoding motion information.

[0039] В прямом режиме способ формирования значения внешнего предсказания может определяться с использованием различных режимов внешнего предсказания, например, стандартного прямого режима, режима подблоков, режима слияния с разностью векторов движения (Merge with Motion Vector Difference mode, MMVD), комбинированного режима внешнего и внутреннего предсказания (Combine Inter Intra Prediction Mode, CUP), режима треугольного предсказания (Triangular Prediction Mode, TPM) или режима геометрического разбиения (Geometrical Partitioning mode, GEO). Режим подблоков может быть аффинным режимом или режимом предсказания временных векторов движения на основе подблоков (Subblock-based Temporal Motion Vector Prediction, SbTMVP).[0039] In the direct mode, the method of generating the inter prediction value can be determined using various inter prediction modes, for example, standard direct mode, sub-block mode, Merge with Motion Vector Difference mode (MMVD), combined external and internal prediction (Combine Inter Intra Prediction Mode (CUP), triangular prediction mode (TPM) or geometrical partitioning mode (GEO). The subblock mode can be an affine mode or a Subblock-based Temporal Motion Vector Prediction (SbTMVP) mode.

[0040] В стандартном прямом режиме из списка информации о возможном движении может выбираться один элемент информации о движении, и может быть сформировано значение предсказания для текущего блока на основе этой информации о движении. Список информации о возможном движении включает: информацию о возможном движении смежных блоков в пространственной области, информацию о возможном движении смежных блоков во временной области, информацию о возможном движении несмежных блоков в пространственной области, информацию о движении, полученную комбинированием существующей информации о движении, заданной по умолчанию информации о движении и т.п.Список информации о возможном движении может также включать такую информацию о движении, как предсказание векторов движения на основе предыстории (History based Motion Vector Prediction, HMVP) и/или предсказание угла вектора движения (Motion Vector Angle Prediction, MVAP), без ограничения настоящего изобретения в этом отношении.[0040] In standard forward mode, one motion information item may be selected from the list of possible motion information, and a prediction value for the current block may be generated based on this motion information. The list of possible motion information includes: information about the possible motion of adjacent blocks in the spatial domain, information about the possible motion of adjacent blocks in the time domain, information about the possible motion of non-adjacent blocks in the spatial domain, motion information obtained by combining existing motion information specified by default motion information, etc. The list of possible motion information may also include motion information such as History based Motion Vector Prediction (HMVP) and/or Motion Vector Angle Prediction , MVAP), without limiting the present invention in this regard.

[0041] Режим MMVD может называться режимом окончательного выражения вектора движения (Ultimate Motion Vector Expression, UMVE). На основе списка информации о возможном движении в стандартном прямом режиме информацию о движении выбирают в качестве опорной информации о движении из списка информации о возможном движении в стандартном прямом режиме и при помощи списка, по которому осуществляют поиск, получают разность информации о движении. Окончательную информацию о движении получают на основе опорной информации о движении и разности информации о движении и формируют значение предсказания для текущего блока на основе окончательной информации о движении. В режиме MMVD/UMVE выполняют смещение на основе сформированного возможного движения, в результате чего получают улучшенное возможное движение.[0041] The MMVD mode may be referred to as the Ultimate Motion Vector Expression (UMVE) mode. Based on the list of possible motion information in the standard forward mode, the motion information is selected as reference motion information from the list of possible motion information in the standard forward mode, and the motion information difference is obtained using the searchable list. The final motion information is obtained based on the reference motion information and the difference of the motion information, and a prediction value for the current block is generated based on the final motion information. In the MMVD/UMVE mode, a shift is performed based on the generated motion opportunity, resulting in an improved motion opportunity.

[0042] В аффинном режиме, аналогично стандартному прямому режиму, из списка информации о возможном движении выбирают один элемент информации о движении и формируют значение предсказания для текущего блока на основе этой информации о движении. Отличие от стандартного прямого режима заключается в том, что информация о движении из списка информации о возможном движении в стандартном прямом режиме представляет собой 2-параметровый смещающий вектор движения, тогда как информация о движении из списка информации о возможном движении в аффинном режиме представляет собой 4-параметровую, или 6-параметровую, или 8-параметровую информацию об аффинном движении.[0042] In the affine mode, similar to the standard direct mode, one element of motion information is selected from a list of possible motion information and a prediction value for the current block is generated based on this motion information. The difference from the standard direct mode is that the motion information from the possible motion information list in the standard direct mode is a 2-parameter displacement motion vector, whereas the motion information from the possible motion information list in the affine mode is a 4-parameter parameter, or 6-parameter, or 8-parameter information about affine motion.

[0043] В режиме SbTMVP, в опорном изображении во временной области, информация о движении блока может мультиплексироваться непосредственно, а значение предсказания для текущего блока формируют на основе информации о движении, при этом информация о движении для каждого подблока в блоке может быть различной.[0043] In the SbTMVP mode, in the time domain reference picture, the motion information of a block can be multiplexed directly, and a prediction value for the current block is generated based on the motion information, and the motion information for each sub-block in the block can be different.

[0044] В режиме СИР новое значение предсказания для текущего блока получают комбинированием значения внутреннего предсказания и значения внешнего предсказания. Режим СИР может называться режимом фильтра внешнего предсказания, то есть фильтром внешнего предсказания, и будет далее так называться.[0044] In the SIR mode, a new prediction value for the current block is obtained by combining the intra prediction value and the inter prediction value. The SIR mode may be called the inter-prediction filter mode, that is, the inter-prediction filter, and will be referred to as such in the following.

[0045] При использовании фильтра внешнего предсказания значение внешнего предсказания получают на основе информации о движении стандартного прямого режима или на основе информации о движении режима TPM/GEO, или на основе информации о движении режима SbTMVP, причем настоящее изобретение в данном отношении не ограничено. При использовании фильтра внешнего предсказания значение внутреннего предсказания может быть получено с использованием планарного режима, режима DC, любого углового режима и т.п.[0045] When using an inter prediction filter, the inter prediction value is obtained based on standard forward mode motion information or based on TPM/GEO mode motion information or based on SbTMVP mode motion information, and the present invention is not limited in this regard. When using an inter prediction filter, the intra prediction value can be obtained using planar mode, DC mode, any angular mode, and the like.

[0046] В режиме ТРМ блок разбивают на два треугольных подблока (45-градусный и 135-градусный треугольные подблоки), при этом два треугольных подблока имеют различную однонаправленную информацию о движении. Режим ТРМ используют только для процедуры предсказания, он не влияет на последующие процедуры преобразования и квантования. В данном случае однонаправленную информацию о движении получают непосредственно из списка информации о возможном движении.[0046] In TPM mode, a block is divided into two triangular sub-blocks (45-degree and 135-degree triangular sub-blocks), and the two triangular sub-blocks have different unidirectional motion information. The TPM mode is used only for the prediction procedure; it does not affect subsequent conversion and quantization procedures. In this case, unidirectional motion information is obtained directly from the list of possible motion information.

[0047] Режим GEO аналогичен режиму ТРМ, отличаются только формы разбиения. В режиме GEO прямоугольный блок разбивают на два подблока любой формы (отличающейся от формы двух треугольных блоков в режиме ТРМ), например, один может быть треугольным подблоком, а другой пятиугольным; один может быть треугольным, а другой четырехугольным; или оба могут быть трапециевидными подблоками, без ограничения настоящего изобретения в этом отношении. Два подблока, на которые выполняют разбиение в режиме GEO, могут иметь различную однонаправленную информацию о движении.[0047] The GEO mode is similar to the TPM mode, only the partition shapes differ. In GEO mode, a rectangular block is divided into two subblocks of any shape (different from the shape of two triangular blocks in TPM mode), for example, one could be a triangular subblock and the other pentagonal; one may be triangular and the other quadrangular; or both may be trapezoidal sub-blocks, without limiting the present invention in this regard. The two subblocks into which the GEO mode is partitioned may have different unidirectional motion information.

[0048] Кодирование флагов: в видеокодировании применяют множество режимов. Для каждого блока может применяться один из режимов. Для указания, какой из режимов следует использовать, каждый блок помечают кодированием соответствующего флага. К примеру, в случае устройства кодирования, значение флага определяют в устройстве кодирования, а затем значение флага кодируют и передают в устройство декодирования. В случае устройства декодирования при помощи анализа значения флага определяют, активирован ли соответствующий режим.[0048] Flag Coding: There are many modes used in video coding. One of the modes can be used for each block. To indicate which mode should be used, each block is marked by coding the appropriate flag. For example, in the case of an encoding device, a flag value is determined at the encoding device, and then the flag value is encoded and transmitted to the decoding device. In the case of a decoding device, analysis of the flag value determines whether the corresponding mode is activated.

[0049] Кодирование флагов может быть реализовано при помощи высокоуровневого синтаксиса. Высокоуровневый синтаксис может использоваться для указания, допускается ли активация режима, то есть разрешение и запрещение активации режима выполняют при помощи высокоуровневого синтаксиса.[0049] Flag encoding can be implemented using high-level syntax. High-level syntax can be used to indicate whether activation of a mode is allowed, that is, enabling and disabling activation of a mode is done using high-level syntax.

[0050] В некоторых из примеров таким высокоуровневым синтаксисом может быть высокоуровневый синтаксис набора параметров последовательности (Sequence Parameter Set, SPS), или высокоуровневый синтаксис набора параметров изображения (Picture Parameter Set, PPS), или высокоуровневый синтаксис заголовка слайса, или высокоуровневый синтаксис заголовка изображения, без ограничения настоящего изобретения в этом отношении.[0050] In some of the examples, such high-level syntax may be high-level Sequence Parameter Set (SPS) syntax, or high-level Picture Parameter Set (PPS) syntax, or high-level slice header syntax, or high-level picture header syntax , without limiting the present invention in this regard.

[0051] В случае высокоуровневого синтаксиса SPS имеются флаги, позволяющие определить, допускается ли активация некоторых режимов (инструментов/способов) во всей видеопоследовательности (то есть в множестве видеоизображений). К примеру, если флаг имеет значение А (например, значение 1), режим, соответствующий этому флагу, может быть активирован в видеопоследовательности; или, если флаг имеет значение В (например, значение 0), режим, соответствующий этому флагу, не может быть активирован в видеопоследовательности.[0051] In the case of high-level SPS syntax, there are flags to determine whether activation of certain modes (tools/techniques) is allowed in the entire video sequence (ie, in a plurality of video images). For example, if a flag has a value of A (eg, a value of 1), the mode corresponding to that flag may be activated in the video sequence; or, if the flag has a value of B (eg, a value of 0), the mode corresponding to that flag cannot be activated in the video sequence.

[0052] В случае высокоуровневого синтаксиса PPS имеются флаги, позволяющие определить, допускается ли активация некоторых режимов (инструментов/способов) в изображении (то есть в видеоизображении). Если флаг имеет значение А, режим, соответствующий этому флагу, может быть активирован в видеоизображении; если флаг имеет значение В, режим, соответствующий этому флагу, не может быть активирован в видеоизображении.[0052] In the case of high-level PPS syntax, there are flags to determine whether certain modes (tools/techniques) are allowed to be activated in an image (ie, a video image). If the flag has the value A, the mode corresponding to this flag can be activated in the video image; if the flag is set to B, the mode corresponding to this flag cannot be activated in the video image.

[0053] В случае высокоуровневого синтаксиса заголовка изображения имеются флаги для определения, допускается ли активация некоторых режимов (инструментов/способов) в заголовке изображения. Если флаг имеет значение А, режим, соответствующий этому флагу, может быть активирован в заголовке изображения; если флаг имеет значение В, режим, соответствующий этому флагу, не может быть активирован в заголовке изображения. В некоторых из примеров в заголовке изображения хранится общая информация только для текущего изображения. К примеру, если изображение включает множество слайсов, для этого множества слайсов может применяться общая информация из заголовка изображения.[0053] In the case of high-level image header syntax, there are flags to determine whether certain modes (tools/techniques) are allowed to be activated in the image header. If the flag has the value A, the mode corresponding to this flag can be activated in the image header; if the flag is set to B, the mode corresponding to this flag cannot be activated in the image header. In some of the examples, the image header stores general information only for the current image. For example, if an image includes multiple slices, the shared image header information may be applied to the multiple slices.

[0054] В случае высокоуровневого синтаксиса заголовка слайса имеются флаги для определения, допускается ли активация некоторых режимов (инструментов/способов) в слайсе. Если флаг имеет значение А, режим, соответствующий этому флагу, может быть активирован в слайсе; если флаг имеет значение В, режим, соответствующий этому флагу, не может быть активирован в слайсе. В некоторых из примеров изображение может включать один или более слайсов, при этом для каждого слайса высокоуровневый синтаксис заголовка слайса представляет собой высокоуровневый синтаксис, сконфигурированный для каждого слайса.[0054] In the case of high-level slice header syntax, there are flags to determine whether certain modes (tools/techniques) are allowed to be enabled in the slice. If the flag has the value A, the mode corresponding to that flag can be activated in the slice; if the flag is set to B, the mode corresponding to that flag cannot be activated in the slice. In some of the examples, an image may include one or more slices, wherein for each slice, the high-level syntax of the slice header is the high-level syntax configured for each slice.

[0055] Дерево разбиения: в соответствии с фиг.1 В, текущий блок может быть разбит с использованием разбиений четырех типов: квадродерево (Quad-tree, QT), двоичное дерево (Binary-tree, ВТ), расширенное квадродерево (Extended Quad-tree, EQT) и отсутствие разбиения (также называемое «без разбиения»). Соответственно, тип дерева разбиения может представлять собой QT, ВТ, EQT или отсутствие разбиения. В некоторых примерах разбиение QT означает разбиение текущего блока с использованием квадродерева для получения четырех подблоков одинакового размера, при этом ширина и высота каждого из подблоков равны половине текущего блока.[0055] Partition tree: in accordance with Fig. 1 B, the current block can be partitioned using four types of partitions: Quad-tree (QT), Binary-tree (BT), Extended Quad-tree tree, EQT) and no partitioning (also called "no partitioning"). Accordingly, the partition tree type may be QT, BT, EQT, or no partition. In some examples, QT splitting means splitting the current block using a quadtree to produce four equally sized subblocks, with each subblock's width and height equal to half the current block.

[0056] Под разбиением ВТ понимают разбиение текущего блока с использованием двоичного дерева для получения двух подблоков одинакового размера. Разбиение ВТ также разделяют на горизонтальное разбиение двоичного дерева (ВТ_HOR) и вертикальное разбиение двоичного дерева (ВТ_VER). В случае ВТ_HOR текущий блок разбивают на два подблока горизонтально, при этом ширина каждого подблока равна ширине текущего блока, а высота каждого подблока равна половине высоты текущего блока. В случае BT_VER текущий блок разбивают на два подблока вертикально, при этом ширина каждого подблока равна половине ширины текущего блока, а высота каждого подблока равна высоте текущего блока.[0056] BT partitioning refers to partitioning the current block using a binary tree to obtain two subblocks of the same size. VT partitioning is also divided into horizontal binary tree partitioning (BT_HOR) and vertical binary tree partitioning (BT_VER). In the case of BT_HOR, the current block is divided into two subblocks horizontally, with the width of each subblock equal to the width of the current block, and the height of each subblock equal to half the height of the current block. In the case of BT_VER, the current block is split vertically into two subblocks, with the width of each subblock equal to half the width of the current block, and the height of each subblock equal to the height of the current block.

[0057] Под разбиением EQT понимают разбиение текущего блока с помощью квадродерева для получения четырех подблоков, однако размеры этих четырех подблоков не являются все одинаковыми. Разбиение EQT также разделяют на горизонтально протяженное разбиение QT (EQT_HOR) и вертикально протяженное разбиение QT (EQT_VER). В случае разбиения EQT_HOR текущий блок размером M*N разбивают на два подблока размером M*(N/4) и два подблока размером (M/2)*(N/2). В случае разбиения EQT_VER текущий блок размером M*N разбивают на два подблока размером (M/4)*N и два подблока размером (M/2)*(N/2).[0057] EQT partitioning refers to partitioning the current block using a quadtree to produce four sub-blocks, however the sizes of these four sub-blocks are not all the same. The EQT partition is also divided into a horizontally extended QT partition (EQT_HOR) and a vertically extended QT partition (EQT_VER). In the case of EQT_HOR partitioning, the current block of size M*N is split into two subblocks of size M*(N/4) and two subblocks of size (M/2)*(N/2). In the case of EQT_VER partitioning, the current block of size M*N is split into two subblocks of size (M/4)*N and two subblocks of size (M/2)*(N/2).

[0058] Что касается аппаратной реализации, в случае компонентов цветности 2*N и N*2 затраты на аппаратную реализацию выше. Поэтому при разбиении блоки с компонентами цветности 2*N и N*2 пропускают.Когда для блока используют один из типов разбиения (QT, ВТ или EQT), формируют компонент цветности 2*N или N*2, а компоненты яркости для этого блока продолжают разбивать, в результате чего получают несколько подкомпонентов яркости, однако компонент цветности не разбивают, то есть формируют один компонент цветности. В таких случаях тип дерева разбиения в компонентах яркости не будет совпадать с типом дерева разбиения в компонентах цветности, то есть типом дерева разбиения в компонентах яркости является QT, ВТ или EQT, а в компонентах цветности «без разбиения».[0058] In terms of hardware implementation, in the case of 2*N and N*2 chrominance components, the hardware implementation cost is higher. Therefore, when partitioning, blocks with 2*N and N*2 chrominance components are skipped. When one of the partition types (QT, BT or EQT) is used for a block, a 2*N or N*2 chrominance component is formed, and the luma components for this block continue split, as a result of which several luminance subcomponents are obtained, but the chrominance component is not split, that is, one chrominance component is formed. In such cases, the type of partition tree in the luma components will not coincide with the type of partition tree in the chrominance components, that is, the type of partition tree in the luma components is QT, BT or EQT, and in the chrominance components “no partition”.

[0059] Оптимизация «скорость - искажения» (Rate-Distortion Optimized, RDO): существуют два основных показателя для оценки эффективности кодирования: степень сжатия и пиковое соотношение сигнала к шуму (Peak Signal to Noise Ratio, PSNR). Чем меньше битовый поток, тем больше степень сжатия. Чем больше PSNR, тем выше качество восстановленного изображения. При выборе режима дискриминантной формулой по существу является совокупная оценка этих двух показателей. К примеру, функция стоимости, соответствующая режиму, может иметь вид: J(mode)=D+λ*R, где D - искажения, которые, как правило, могут быть измерены при помощи показателя SSE, где SSE означает среднеквадратичную сумму разностей между блоками восстановленного изображения и исходным изображением; λ - множитель Лагранжа; R - фактическое количество битов, необходимое для кодирования блока изображения в этом режиме, включающее суммарное количество битов для кодирования информации о режиме, информации о движении, остатков и т.п. При выборе режима, если для решений о выборе режимов кодирования используют RDO, как правило, удается обеспечить наилучшую эффективность кодирования.[0059] Rate-Distortion Optimized (RDO): There are two main metrics for evaluating encoding efficiency: compression ratio and Peak Signal to Noise Ratio (PSNR). The smaller the bit stream, the greater the compression ratio. The higher the PSNR, the higher the quality of the reconstructed image. When selecting a mode, the discriminant formula is essentially the combined score of these two indicators. For example, the cost function corresponding to a mode could be: J(mode)=D+λ*R, where D is the distortion, which can typically be measured using the SSE metric, where SSE means the root mean square sum of the differences between blocks the restored image and the original image; λ - Lagrange multiplier; R is the actual number of bits required to encode a block of image in this mode, including the total number of bits for encoding mode information, motion information, residuals, etc. In mode selection, if RDO is used for encoding mode selection decisions, the best encoding efficiency can usually be achieved.

[0060] В известном уровне техники используют технологии реализации внешнего предсказания, например фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания, в основном для устранения проблемы пространственной неоднородности между предсказываемым блоком и окружающими блоками, которая вызвана внутренним предсказанием. Однако улучшенный фильтр внешнего предсказания используют только для компонентов яркости, но не для компонентов цветности, в результате чего проблема пространственной неоднородности между блоком предсказания и окружающими пикселями по-прежнему остается в компонентах цветности, и эффективность кодирования остается низкой. При этом, активированы ли фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания, указывают при помощи высокоуровневого синтаксиса, то есть высокоуровневым синтаксисом управляется одновременная активация фильтра внешнего предсказания и улучшенного фильтра внешнего предсказания, а также одновременная деактивация фильтра внешнего предсказания и улучшенного фильтра внешнего предсказания, что не позволяет реализовать раздельное управление фильтром внешнего предсказания и улучшенным фильтром внешнего предсказания и поддержку более гибкого выбора и снижает эффективность кодирования.[0060] In the prior art, inter prediction implementation technologies such as inter prediction filter and enhanced inter prediction filter are used, mainly to eliminate the problem of spatial heterogeneity between a predicted block and surrounding blocks that is caused by intra prediction. However, the improved inter-prediction filter is used only for the luma components but not for the chrominance components, resulting in the problem of spatial heterogeneity between the prediction unit and the surrounding pixels still remaining in the chrominance components, and the coding efficiency remains low. Here, whether the inter-prediction filter and the improved inter-prediction filter are activated is indicated by a high-level syntax, that is, the high-level syntax controls the simultaneous activation of the inter-prediction filter and the improved inter-prediction filter, as well as the simultaneous deactivation of the inter-prediction filter and the improved inter-prediction filter, such that does not allow the implementation of separate control of the inter-prediction filter and the improved inter-prediction filter and support for more flexible selection, and reduces the coding efficiency.

[0061] В свете представленных выше выводов, в одной из возможных реализаций, фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания могут быть активированы по отдельности, то есть, активирован ли фильтр внешнего предсказания (то есть активацию или деактивацию фильтра внешнего предсказания), указывают при помощи одного высокоуровневого синтаксиса, а активирован ли улучшенный фильтр внешнего предсказания (то есть активацию или деактивацию улучшенного фильтра внешнего предсказания) указывают при помощи другого высокоуровневого синтаксиса, что позволяет обеспечить более гибкий выбор и повысить эффективность кодирования.[0061] In light of the findings presented above, in one possible implementation, the inter prediction filter and the enhanced inter prediction filter may be activated separately, that is, whether the inter prediction filter is activated (i.e., activation or deactivation of the inter prediction filter) is indicated when using one high-level syntax, and whether the enhanced inter-prediction filter is activated (ie, activation or deactivation of the enhanced inter-prediction filter) is indicated using another high-level syntax, allowing for more flexible selection and improved encoding efficiency.

[0062] В еще одном из возможных вариантов реализации улучшенный фильтр внешнего предсказания может использоваться для обработки компонентов цветности, то есть улучшенный фильтр внешнего предсказания может использоваться и для обработки компонентов яркости, и для обработки компонентов цветности, что позволяет решить проблему пространственной неоднородности между блоком предсказания и окружающими пикселями, которая вызвана внешним предсказанием, к примеру, устранить проблему пространственной неоднородности компонентов цветности и повысить эффективность кодирования.[0062] In yet another possible embodiment, an improved inter prediction filter may be used to process chroma components, that is, an improved inter prediction filter may be used to process both luminance components and chrominance components, thereby solving the problem of spatial heterogeneity between a prediction block and surrounding pixels, which is caused by inter-prediction, for example, eliminate the problem of spatial heterogeneity of chrominance components and improve coding efficiency.

[0063] В еще одной из возможных реализаций фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания могут управляться по отдельности, то есть, активирован ли фильтр внешнего предсказания (то есть активацию или деактивацию фильтра внешнего предсказания), указывают при помощи одного высокоуровневого синтаксиса, а активирован ли улучшенный фильтр внешнего предсказания (то есть активацию или деактивацию улучшенного фильтра внешнего предсказания) указывают при помощи другого высокоуровневого синтаксиса, что позволяет обеспечить более гибкий выбор и повысить эффективность кодирования. Кроме того, при активации улучшенного фильтра внешнего предсказания, улучшенный фильтр внешнего предсказания может использоваться для обработки компонентов цветности, то есть улучшенный фильтр внешнего предсказания может использоваться и для обработки компонентов яркости, и для обработки компонентов цветности, что позволяет решить проблему пространственной неоднородности между блоком предсказания и окружающими пикселями, которая вызвана внешним предсказанием, к примеру, устранить проблему пространственной неоднородности компонентов цветности и повысить эффективность кодирования.[0063] In yet another possible implementation, the inter-prediction filter and the enhanced inter-prediction filter may be controlled separately, that is, whether the inter-prediction filter is activated (ie, activation or deactivation of the inter-prediction filter) is indicated using one high-level syntax, and activated Whether the enhanced inter prediction filter (ie, activation or deactivation of the enhanced inter prediction filter) is indicated using a different high-level syntax, allowing for more flexible selection and improved encoding efficiency. In addition, when the enhanced inter prediction filter is activated, the enhanced inter prediction filter can be used to process chrominance components, that is, the enhanced inter prediction filter can be used to both process luminance components and process chrominance components, which can solve the problem of spatial heterogeneity between the prediction block and surrounding pixels, which is caused by inter-prediction, for example, eliminate the problem of spatial heterogeneity of chrominance components and improve coding efficiency.

[0064] В некоторых из примеров фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания, в вариантах осуществления настоящего изобретения, могут представлять собой другие технологии фильтрации для процедуры внешнего предсказания, вместо контурного фильтра, показанного на фиг. 1А (например, фильтр устранения блочности, фильтр SAO, фильтр ALF или фильтр CCALF). Под фильтром внешнего предсказания понимают применение технологии фильтрации внешнего предсказания для фильтрации значений внешнего предсказания в процедуре внешнего предсказания. Фильтр внешнего предсказания может называться предсказанием с объединенными прямым и внутренним режимами (Unite Direct and Intra Mode Prediction, UDIP). Под улучшенным фильтром внешнего предсказания понимают применение технологии улучшенного фильтра внешнего предсказания для фильтрации значений внешнего предсказания в процедуре внешнего предсказания. Улучшенный фильтр внешнего предсказания может называться улучшенным предсказанием с объединенными прямым и внутренним режимами (Enhance Unite Direct and Intra Mode Prediction, EUDIP).[0064] In some of the examples, the inter prediction filter and the enhanced inter prediction filter, in embodiments of the present invention, may be other filtering technologies for the inter prediction procedure, instead of the loop filter shown in FIG. 1A (eg, deblocking filter, SAO filter, ALF filter, or CCALF filter). An inter-prediction filter refers to the application of inter-prediction filtering technology to filter inter-prediction values in an inter-prediction procedure. An external prediction filter may be called Unite Direct and Intra Mode Prediction (UDIP). By improved inter prediction filter we mean the use of improved inter prediction filter technology to filter inter prediction values in an inter prediction procedure. An enhanced inter-prediction filter may be referred to as Enhance Unite Direct and Intra Mode Prediction (EUDIP).

[0065] Ниже будут рассмотрены способ декодирования и способ кодирования в вариантах осуществления настоящего изобретения на нескольких конкретных примерах.[0065] Below, the decoding method and the encoding method in the embodiments of the present invention will be discussed using several specific examples.

[0066] Вариант 1 осуществления изобретения: фиг. 2А представляет собой блок-схему, иллюстрирующую способ декодирования. Способ может применяться в устройстве декодирования и включает:[0066] Embodiment 1: FIG. 2A is a flowchart illustrating a decoding method. The method can be applied to a decoding device and includes:

[0067] на шаге 211, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, анализируют флаг фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока.[0067] at step 211, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in the inter prediction filter mode, and the current block satisfies the inter prediction filter conditions, analyze the inter prediction filter flag for the current block from the bit stream data of the current block.

[0068] В некоторых примерах, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, анализируют флаг фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока.[0068] In some examples, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, and the current block satisfies inter prediction filter conditions, the inter prediction filter flag for the current block is analyzed from the bitstream data of the current block. block.

[0069] В некоторых примерах, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, выполняют шаг 212; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, выполняют шаг 213; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является тип «без фильтра», выполняют шаг 214.[0069] In some examples, if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, step 212 is performed; if the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, step 213 is performed; if the inter prediction filter flag indicates that the filter type for the current block is "no filter", step 214 is performed.

[0070] Исходя из этого, перед шагом 211 сначала может быть проанализирован флаг активации фильтра внешнего предсказания из данных битового потока (то есть данных битового потока высокоуровневого синтаксиса), при этом флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, или на то, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания.[0070] Based on this, before step 211, the inter prediction filter enable flag from the bitstream data (i.e., high-level syntax bitstream data) may first be analyzed, the inter prediction filter enable flag indicating that the current block is allowed to be encoded in inter prediction filter mode, or that the current block is not allowed to be encoded in inter prediction filter mode.

[0071] Если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания.[0071] If the inter prediction filter enable flag indicates that the current block is allowed to be encoded in the inter prediction filter mode, it is determined that the current block satisfies the conditions of the inter prediction filter.

[0072] Если текущий блок не удовлетворяет условиям фильтра внешнего предсказания, то запрещается анализировать флаг фильтра внешнего предсказания текущего блока из данных битового потока текущего блока, то есть для текущего блока не выполняют ни процедуру фильтра внешнего предсказания, ни процедуру улучшенного фильтра внешнего предсказания.[0072] If the current block does not satisfy the inter-prediction filter conditions, then the current block's inter-prediction filter flag is prohibited from being analyzed from the current block's bitstream data, that is, neither the inter-prediction filter procedure nor the enhanced inter-prediction filter procedure is performed on the current block.

[0073] Если текущий блок удовлетворяет условиям фильтра внешнего предсказания, флаг фильтра внешнего предсказания анализируют из данных битового потока текущего блока, определяют тип фильтра для текущего блока в соответствии с флагом фильтра внешнего предсказания и выполняют соответствующую обработку.[0073] If the current block satisfies the conditions of the inter-prediction filter, the inter-prediction filter flag is analyzed from the bitstream data of the current block, the filter type for the current block is determined according to the inter-prediction filter flag, and corresponding processing is performed.

[0074] В некоторых из примеров то, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, включает, не ограничиваясь этим, следующее: если режимом внешнего предсказания для текущего блока является прямой режим, и/или текущий блок удовлетворяет условию ограничения размера, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания.[0074] In some of the examples, the current block satisfying the inter prediction filter conditions includes, but is not limited to, the following: if the inter prediction mode for the current block is forward mode, and/or the current block satisfies the size limit condition, it is determined that the current block satisfies the conditions of the inter-prediction filter.

[0075] В некоторых из примеров после анализа флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока может быть определен тип фильтра для текущего блока в соответствии с флагом фильтра внешнего предсказания. К примеру, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, когда флаг фильтра внешнего предсказания принимает первое значение, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является тип «без фильтра», то есть определяют, что типом фильтра для текущего блока является тип «без фильтра»; когда флаг фильтра внешнего предсказания принимает второе значение, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, то есть определяют, что типом фильтра для текущего блока является фильтр внешнего предсказания; когда флаг фильтра внешнего предсказания принимает третье значение, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, то есть определяют, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания.[0075] In some of the examples, after analyzing the inter-prediction filter flag for the current block, the filter type for the current block can be determined from the bitstream data of the current block in accordance with the inter-prediction filter flag. For example, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, when the inter prediction filter flag takes the first value, the inter prediction filter flag indicates that the filter type for the current block is type " no filter”, that is, it is determined that the filter type for the current block is the “no filter” type; when the inter prediction filter flag takes the second value, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, that is, it is determined that the filter type for the current block is an inter prediction filter; when the inter prediction filter flag takes the third value, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, that is, it is determined that the filter type for the current block is an enhanced inter prediction filter.

[0076] Упомянутые первое значение, второе значение и третье значение могут быть заданы в соответствии с практическим применением и не ограничены в настоящем документе. К примеру, первым значением может быть 0, вторым значением может быть 10, а третьим значением может быть 11. Указанные значения приведены только в качестве примера.[0076] The first value, second value and third value may be set according to practical application and are not limited herein. For example, the first value could be 0, the second value could be 10, and the third value could be 11. The values shown are for illustrative purposes only.

[0077] На шаге 212 получают целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока.[0077] At step 212, a prediction target value for the current block is obtained by executing an inter prediction filter procedure for the current block.

[0078] В некоторых из примеров, когда для текущего блока выполняют процедуру фильтра внешнего предсказания, могут быть получены значение внешнего предсказания для текущего блока и значение внутреннего предсказания для текущего блока, и определяют целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и значением внутреннего предсказания.[0078] In some of the examples, when an inter prediction filter procedure is performed on a current block, an inter prediction value for the current block and an intra prediction value for the current block can be obtained, and a target prediction value for the current block is determined according to the inter prediction value and internal prediction value.

[0079] В одном из возможных вариантов реализации текущий блок включает компонент яркости и компонент цветности, при этом целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента яркости; или целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента цветности; или целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента яркости, и целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента цветности.[0079] In one exemplary embodiment, the current block includes a luma component and a chrominance component, wherein a prediction target value for the luma component may be obtained by executing an inter-prediction filter procedure for the luma component; or the target prediction value for the chrominance component can be obtained by performing an inter prediction filter procedure for the chrominance component; or the target prediction value for the luminance component may be obtained by performing an inter-prediction filter procedure on the luminance component, and the target prediction value for the chroma component may be obtained by executing an inter-prediction filter procedure on the chrominance component.

[0080] На шаге 213 получают целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[0080] At step 213, a prediction target value for the current block is obtained by executing an enhanced inter prediction filter procedure for the current block.

[0081] В некоторых из примеров, когда для текущего блока выполняют процедуру улучшенного фильтра внешнего предсказания, могут быть получены значение внешнего предсказания для текущего блока и восстановленное значение для восстановленных пикселей, смежных с текущим блоком (например, восстановленное значение для восстановленных пикселей в столбце слева от текущего блока и/или восстановленное значение для восстановленных пикселей в строке сверху от текущего блока), и определяют целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и восстановленным значением.[0081] In some of the examples, when the enhanced inter prediction filter procedure is performed on a current block, an inter prediction value for the current block and a reconstructed value for reconstructed pixels adjacent to the current block may be obtained (e.g., a reconstructed value for reconstructed pixels in the left column from the current block and/or a reconstructed value for reconstructed pixels in a row above the current block), and determining a prediction target value for the current block in accordance with the external prediction value and the reconstructed value.

[0082] В одном из возможных вариантов реализации текущий блок включает компонент яркости и компонент цветности, при этом целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; или целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; или целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости, и целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[0082] In one exemplary embodiment, the current block includes a luma component and a chrominance component, wherein a prediction target value for the luma component may be obtained by performing an enhanced inter prediction filter procedure for the luma component; or the target prediction value for the chrominance component can be obtained by performing an enhanced inter prediction filter procedure for the chrominance component; or the target prediction value for the luminance component can be obtained by performing an improved inter prediction filter procedure for the luminance component, and the target prediction value for the chrominance component can be obtained by performing an improved inter prediction filter procedure for the chrominance component.

[0083] В некоторых примерах получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности может включать, не ограничиваясь этим: получение значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности, и определение целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.[0083] In some examples, obtaining a target prediction value for a chroma component by performing an enhanced inter prediction filter procedure for the chroma component may include, but is not limited to: obtaining an inter prediction value for the chroma component and a reconstructed chroma value for reconstructed pixels adjacent to the chrominance component, and determining a target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the recovered chrominance value.

[0084] В некоторых примерах получение целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости может включать, не ограничиваясь этим: получение значения внешнего предсказания для компонента яркости и восстановленного значения яркости для восстановленных пикселей, смежных с компонентом яркости, и определение целевого значения предсказания для компонента яркости в соответствии со значением внешнего предсказания для компонента яркости и восстановленным значением яркости.[0084] In some examples, obtaining a target prediction value for the luminance component by performing an enhanced inter prediction filter procedure for the luminance component may include, but is not limited to: obtaining an inter prediction value for the luminance component and a reconstructed luminance value for reconstructed pixels adjacent to the luminance component, and determining a target prediction value for the luminance component in accordance with the external prediction value for the luminance component and the reconstructed luminance value.

[0085] В одном из возможных вариантов реализации получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности может включать следующее: если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, целевое значение предсказания для компонента цветности получают путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности. При этом то, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, может включать, не ограничиваясь этим, то, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости.[0085] In one exemplary embodiment, obtaining a prediction target value for a chrominance component by executing an enhanced inter-prediction filter procedure for the chroma component may include the following: if the chroma component satisfies the conditions of an enhanced inter-prediction filter, a target prediction value for the chrominance component is obtained by executing the procedure improved inter-prediction filter for the chrominance component. However, the fact that the chroma component satisfies the conditions of the improved inter prediction filter may include, but is not limited to, that the chroma component belongs to the same type of partition tree as the luma component.

[0086] На шаге 214 для текущего блока не выполняют процедуру фильтрации, при этом определяют значение внешнего предсказания для текущего блока в качестве целевого значения предсказания для текущего блока.[0086] At step 214, no filtering procedure is performed on the current block, and the inter prediction value for the current block is determined as the prediction target value for the current block.

[0087] В некоторых из примеров, когда для текущего блока не выполняют процедуру фильтрации, может быть получено значение внешнего предсказания для текущего блока, и значение внешнего предсказания может быть определено в качестве целевого значения предсказания для текущего блока, при этом для значения внешнего предсказания не выполняют процедуру фильтрации.[0087] In some of the examples, when no filtering procedure is performed on the current block, an inter prediction value for the current block may be obtained, and the inter prediction value may be determined as a target prediction value for the current block, without the inter prediction value perform the filtering procedure.

[0088] Вариант 2 осуществления изобретения: фиг. 2В представляет собой блок-схему, иллюстрирующую способ кодирования. Способ может применяться в устройстве кодирования и включает:[0088] Embodiment 2: FIG. 2B is a flowchart illustrating an encoding method. The method can be used in an encoding device and includes:

[0089] на шаге 221, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, флаг фильтра внешнего предсказания для текущего блока кодируют вместе с данными битового потока текущего блока в соответствии с типом фильтра для текущего блока.[0089] at step 221, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, and the current block satisfies the inter prediction filter conditions, the inter prediction filter flag for the current block is encoded along with the bitstream data current block according to the filter type for the current block.

[0090] В некоторых примерах, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, флаг фильтра внешнего предсказания кодируют вместе с данными битового потока текущего блока в соответствии с типом фильтра для текущего блока.[0090] In some examples, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, and the current block satisfies the inter prediction filter conditions, the inter prediction filter flag is encoded along with the current block's bitstream data in according to the filter type for the current block.

[0091] В некоторых из примеров, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания; или, если типом фильтра для текущего блока является тип «без фильтра», флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является тип «без фильтра».[0091] In some of the examples, if the filter type for the current block is an inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter; if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter; or, if the filter type for the current block is a "no filter" type, the inter prediction filter flag indicates that the filter type for the current block is a "no filter" type.

[0092] Исходя из этого, перед шагом 221, устройство кодирования может сначала кодировать флаг активации фильтра внешнего предсказания в данных битового потока (то есть в данных битового потока высокоуровневого синтаксиса), при этом флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, или на то, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания.[0092] Based on this, before step 221, the encoder may first encode an inter prediction filter enable flag in the bitstream data (ie, high-level syntax bitstream data), wherein the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, or that the current block is not allowed to be encoded in inter prediction filter mode.

[0093] Если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания.[0093] If the inter prediction filter enable flag indicates that the current block is allowed to be encoded in the inter prediction filter mode, it is determined that the current block satisfies the conditions of the inter prediction filter.

[0094] Если текущий блок не удовлетворяет условиям фильтра внешнего предсказания, то запрещается кодировать флаг фильтра внешнего предсказания текущего блока в данных битового потока текущего блока, то есть для текущего блока не выполняют ни процедуру фильтра внешнего предсказания, ни процедуру улучшенного фильтра внешнего предсказания.[0094] If the current block does not satisfy the inter-prediction filter conditions, then the current block's inter-prediction filter flag is prohibited from being encoded in the current block's bitstream data, that is, neither the inter-prediction filter procedure nor the enhanced inter-prediction filter procedure is performed on the current block.

[0095] Если текущий блок удовлетворяет условиям фильтра внешнего предсказания, флаг фильтра внешнего предсказания кодируют вместе с данными битового потока текущего блока, например, флаг фильтра внешнего предсказания для текущего блока кодируют вместе с данными битового потока текущего блока в соответствии с типом фильтра для текущего блока.[0095] If the current block satisfies the inter prediction filter conditions, the inter prediction filter flag is encoded along with the bitstream data of the current block, for example, the inter prediction filter flag for the current block is encoded along with the bitstream data of the current block according to the filter type for the current block. .

[0096] В некоторых из примеров то, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, может включать, не ограничиваясь этим, следующее: если режимом внешнего предсказания для текущего блока является прямой режим, и/или текущий блок удовлетворяет условию ограничения размера, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания.[0096] In some of the examples, the fact that the current block satisfies the inter prediction filter conditions may include, but is not limited to, the following: if the inter prediction mode for the current block is forward mode, and/or the current block satisfies the size limit condition, it is determined that that the current block satisfies the conditions of the inter-prediction filter.

[0097] В некоторых из примеров кодирование флага фильтра внешнего предсказания для текущего блока вместе с данными битового потока текущего блока в соответствии с типом фильтра текущего блока может включать, не ограничиваясь этим, следующее: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, то когда типом фильтра для текущего блока является тип «без фильтра», устройство кодирования кодирует флаг фильтра внешнего предсказания как первое значение в данных битового потока текущего блока, при этом флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является тип «без фильтра»; когда типом фильтра для текущего блока является фильтр внешнего предсказания, устройство кодирования кодирует флаг фильтра внешнего предсказания как второе значение в данных битового потока текущего блока, при этом флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; когда типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, устройство кодирования кодирует флаг фильтра внешнего предсказания как третье значение в данных битового потока текущего блока, при этом флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания. Упомянутые первое значение, второе значение и третье значение могут быть заданы в соответствии с практическим применением и не ограничены в настоящем документе. К примеру, первым значением может быть 0, вторым значением может быть 10, а третьим значением может быть 11.[0097] In some of the examples, encoding the inter prediction filter flag for the current block along with the bitstream data of the current block in accordance with the filter type of the current block may include, but is not limited to, the following: if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, when the filter type for the current block is “no filter” type, the encoding device encodes the inter prediction filter flag as the first value in the bit stream data of the current block, and the inter prediction filter flag indicates that that the filter type for the current block is "no filter"; when the filter type for the current block is an inter-prediction filter, the encoding device encodes the inter-prediction filter flag as a second value in the bitstream data of the current block, wherein the inter-prediction filter flag indicates that the filter type for the current block is an inter-prediction filter; when the filter type for the current block is an enhanced inter-prediction filter, the encoder encodes the inter-prediction filter flag as a third value in the bitstream data of the current block, wherein the inter-prediction filter flag indicates that the filter type for the current block is an enhanced inter-prediction filter . Said first value, second value and third value may be set according to practical application and are not limited herein. For example, the first value could be 0, the second value could be 10, and the third value could be 11.

[0098] В одном из возможных вариантов реализации перед кодированием флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока, тип фильтра для текущего блока может быть определен следующим образом: получают первое целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока; получают второе целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока; для текущего блока не выполняют процедуру фильтрации и определяют значение внешнего предсказания для текущего блока в качестве третьего целевого значения предсказания для текущего блока. Далее, тип фильтра для текущего блока может быть определен в соответствии со значением целевой функции «скорость - искажения», соответствующим первому целевому значению предсказания, значением целевой функции «скорость искажения», соответствующим второму целевому значению предсказания, и значением целевой функции «скорость - искажения», соответствующим третьему целевому значению предсказания.[0098] In one possible implementation, before encoding the inter prediction filter flag for the current block in the bitstream data of the current block according to the filter type for the current block, the filter type for the current block may be determined as follows: obtain the first target prediction value for the current block by executing an inter-prediction filter procedure for the current block; obtaining a second target prediction value for the current block by executing an enhanced inter prediction filter procedure for the current block; for the current block, no filtering procedure is performed, and an inter-prediction value for the current block is determined as a third prediction target value for the current block. Further, the filter type for the current block can be determined according to the rate-distortion objective function value corresponding to the first prediction target value, the distortion rate objective function value corresponding to the second prediction target value, and the rate-distortion objective function value " corresponding to the third prediction target value.

[0099] К примеру, если значение целевой функции «скорость искажения», соответствующее первому целевому значению предсказания, является наименьшим значением целевой функции «скорость - искажения», может быть определено, что типом фильтра для текущего блока является фильтр внешнего предсказания. Если значение целевой функции «скорость искажения», соответствующее второму целевому значению предсказания, является наименьшим значением целевой функции «скорость искажения», может быть определено, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания. Если значение целевой функции «скорость искажения», соответствующее третьему целевому значению предсказания, является наименьшим значением целевой функции «скорость -искажения», может быть определено, что типом фильтра для текущего блока является тип «без фильтра».[0099] For example, if the rate-distortion objective function value corresponding to the first prediction target value is the smallest value of the rate-distortion objective function, it may be determined that the filter type for the current block is an inter-prediction filter. If the distortion rate objective function value corresponding to the second prediction target value is the smallest value of the distortion rate objective function, it can be determined that the filter type for the current block is an enhanced inter prediction filter. If the distortion-rate objective function value corresponding to the third prediction target value is the smallest value of the distortion-rate objective function, the filter type for the current block can be determined to be a "no filter" type.

[00100] В некоторых из примеров, когда для текущего блока выполняют процедуру фильтра внешнего предсказания, могут быть получены значение внешнего предсказания для текущего блока и значение внутреннего предсказания для текущего блока, и может быть определено первое целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и значением внутреннего предсказания.[00100] In some of the examples, when the inter prediction filter procedure is performed on the current block, the inter prediction value for the current block and the intra prediction value for the current block can be obtained, and the first target prediction value for the current block can be determined according to the value external prediction and internal prediction value.

[00101] К примеру, когда текущий блок включает компонент яркости и компонент цветности, первое целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента яркости; или первое целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента цветности; или первое целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента яркости, и первое целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры фильтра внешнего предсказания для компонента цветности.[00101] For example, when the current block includes a luma component and a chrominance component, a first prediction target value for the luma component may be obtained by executing an inter prediction filter procedure for the luma component; or the first target prediction value for the chrominance component may be obtained by performing an inter prediction filter procedure for the chrominance component; or the first target prediction value for the luminance component may be obtained by executing an inter-prediction filter procedure for the luminance component, and the first target prediction value for the chroma component may be obtained by executing an inter-prediction filter procedure for the chrominance component.

[00102] В некоторых из примеров, когда для текущего блока выполняют процедуру улучшенного фильтра внешнего предсказания, могут быть получены значение внешнего предсказания для текущего блока и восстановленное значение для восстановленных пикселей, смежных с текущим блоком (например, восстановленное значение для восстановленных пикселей в столбце слева от текущего блока и/или восстановленное значение для восстановленных пикселей в строке сверху от текущего блока), и определяют второе целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и восстановленным значением.[00102] In some of the examples, when the enhanced inter prediction filter procedure is performed on the current block, the inter prediction value for the current block and the reconstructed value for the reconstructed pixels adjacent to the current block may be obtained (for example, the reconstructed value for the reconstructed pixels in the left column from the current block and/or a reconstructed value for reconstructed pixels in a row above the current block), and determining a second target prediction value for the current block in accordance with the external prediction value and the reconstructed value.

[00103] К примеру, когда текущий блок включает компонент яркости и компонент цветности, второе целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; или второе целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; или второе целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости, и второе целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00103] For example, when the current block includes a luma component and a chroma component, a second target prediction value for the luma component may be obtained by performing an improved inter prediction filter procedure for the luma component; or the second target prediction value for the chrominance component may be obtained by performing an enhanced inter prediction filter procedure for the chrominance component; or the second target prediction value for the luma component may be obtained by performing an improved inter prediction filter procedure for the luma component, and the second target prediction value for the chrominance component may be obtained by performing an improved inter prediction filter procedure for the chrominance component.

[00104] Получение второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности может включать, не ограничиваясь этим: получение значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности, и определение второго целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.[00104] Obtaining a second target prediction value for the chroma component by performing an enhanced inter prediction filter procedure for the chroma component may include, but is not limited to: obtaining an inter prediction value for the chroma component and a reconstructed chrominance value for reconstructed pixels adjacent to the chrominance component, and determining a second target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the recovered chrominance value.

[00105] Получение второго целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости может включать, не ограничиваясь этим: получение значения внешнего предсказания для компонента яркости и восстановленного значения яркости для восстановленных пикселей, смежных с компонентом яркости, и определение второго целевого значения предсказания для компонента яркости в соответствии со значением внешнего предсказания для компонента яркости и восстановленным значением яркости.[00105] Obtaining a second target prediction value for the luminance component by performing an enhanced inter prediction filter procedure for the luminance component may include, but is not limited to: obtaining an inter prediction value for the luminance component and a reconstructed luminance value for reconstructed pixels adjacent to the luminance component, and determining a second target prediction value for the luminance component according to the external prediction value for the luminance component and the reconstructed luminance value.

[00106] Получение второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности может включать, не ограничиваясь этим, следующее: если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, получение второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности. При этом то, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, может включать, не ограничиваясь этим, то, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости.[00106] Obtaining a second target prediction value for the chroma component by performing an enhanced inter prediction filter procedure for the chrominance component may include, but is not limited to, the following: if the chroma component satisfies the conditions of the improved inter prediction filter, obtaining a second target prediction value for the chrominance component by performing improved inter-prediction filter procedures for the chrominance component. However, the fact that the chroma component satisfies the conditions of the improved inter prediction filter may include, but is not limited to, that the chroma component belongs to the same type of partition tree as the luma component.

[00107] В некоторых из примеров, когда для текущего блока не выполняют процедуру фильтрации, может быть получено значение внешнего предсказания для текущего блока, и значение внешнего предсказания может быть определено в качестве третьего целевого значения предсказания для текущего блока, при этом для значения внешнего предсказания не выполняют процедуру фильтрации.[00107] In some of the examples, when the filtering procedure is not performed on the current block, the inter prediction value for the current block may be obtained, and the inter prediction value may be determined as the third target prediction value for the current block, wherein the inter prediction value do not perform the filtering procedure.

[00108] На шаге 222 данные битового потока текущего блока передают в устройство декодирования, при этом данные битового потока включают флаг фильтра внешнего предсказания, и флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, или типом фильтра для текущего блока является тип «без фильтра».[00108] In step 222, the bitstream data of the current block is transmitted to the decoding apparatus, wherein the bitstream data includes an inter prediction filter flag, and the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, the filter type for of the current block is an enhanced inter prediction filter, or the filter type for the current block is a "no filter" type.

[00109] Вариант 3 осуществления изобретения: фиг.2С представляет собой блок-схему, иллюстрирующую способ кодирования и декодирования. Способ может применяться в устройстве кодирования или в устройстве декодирования. Устройство кодирования реализует процедуру кодирования, соответствующую предлагаемому способу, а устройство декодирования реализует процедуру декодирования, соответствующую предлагаемому способу. Способ может включать:[00109] Embodiment 3: FIG. 2C is a flowchart illustrating an encoding and decoding method. The method may be applied to an encoding device or a decoding device. The encoding device implements an encoding procedure corresponding to the proposed method, and the decoding device implements a decoding procedure corresponding to the proposed method. The method may include:

[00110] на шаге 231, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получают целевое значение предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока.[00110] In step 231, if it is determined that the enhanced inter prediction filter is activated for the current block, obtain a target prediction value for the chrominance component by executing the enhanced inter prediction filter procedure for the chrominance component of the current block.

[00111] На шаге 232 определяют целевое значение предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[00111] At step 232, a prediction target value for the current block is determined in accordance with the prediction target value for the chroma component.

[00112] В некоторых примерах текущий блок может включать компонент яркости и компонент цветности, и, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, целевое значение предсказания для компонента цветности получают путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока, и целевое значение предсказания для текущего блока определяют в соответствии с целевым значением предсказания для компонента цветности, или целевое значение предсказания для компонента цветности получают путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока, целевое значение предсказания для компонента яркости получают путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости текущего блока, и целевое значение предсказания для текущего блока определяют в соответствии с целевым значением предсказания для компонента цветности и целевым значением предсказания для компонента яркости.[00112] In some examples, the current block may include a luma component and a chrominance component, and if it is determined that an enhanced inter prediction filter is activated for the current block, a target prediction value for the chrominance component is obtained by performing an enhanced inter prediction filter procedure on the chrominance component of the current block. , and the prediction target value for the current block is determined in accordance with the prediction target value for the chrominance component, or the prediction target value for the chrominance component is obtained by executing the enhanced inter prediction filter procedure for the chrominance component of the current block, the prediction target value for the luminance component is obtained by executing the procedure an improved inter prediction filter for the luminance component of the current block, and a prediction target value for the current block is determined in accordance with the prediction target value for the chrominance component and the prediction target value for the luminance component.

[00113] В некоторых примерах получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности может включать, не ограничиваясь этим: получение значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности, и определение целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.[00113] In some examples, obtaining a target prediction value for a chroma component by performing an enhanced inter prediction filter procedure for the chroma component may include, but is not limited to: obtaining an inter prediction value for the chroma component and a reconstructed chroma value for reconstructed pixels adjacent to the chrominance component, and determining a target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the recovered chrominance value.

[00114] В некоторых примерах получение целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости может включать, не ограничиваясь этим: получение значения внешнего предсказания для компонента яркости и восстановленного значения яркости для восстановленных пикселей, смежных с компонентом яркости, и определение целевого значения предсказания для компонента яркости в соответствии со значением внешнего предсказания для компонента яркости и восстановленным значением яркости.[00114] In some examples, obtaining a target prediction value for a luminance component by performing an enhanced inter prediction filter procedure for the luminance component may include, but is not limited to: obtaining an inter prediction value for the luminance component and a reconstructed luminance value for reconstructed pixels adjacent to the luminance component, and determining a target prediction value for the luminance component in accordance with the external prediction value for the luminance component and the reconstructed luminance value.

[00115] В некоторых из примеров получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности может включать, не ограничиваясь этим, следующее: если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, целевое значение предсказания для компонента цветности получают путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности. При этом то, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, может включать, не ограничиваясь этим, то, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости.[00115] In some of the examples, obtaining a target prediction value for a chroma component by performing an enhanced inter prediction filter procedure for the chrominance component may include, but is not limited to, the following: if the chrominance component satisfies the conditions of the improved inter prediction filter, a target prediction value for the chrominance component is obtained by performing an enhanced inter-prediction filter procedure on the chrominance component. However, the fact that the chroma component satisfies the conditions of the improved inter prediction filter may include, but is not limited to, that the chroma component belongs to the same type of partition tree as the luma component.

[00116] Как следует из рассмотренных выше технических решений, в вариантах осуществления настоящего изобретения улучшенный фильтр внешнего предсказания может использоваться для обработки компонентов цветности, то есть улучшенный фильтр внешнего предсказания может использоваться и для обработки компонентов яркости, и для обработки компонентов цветности, что позволяет решить проблему пространственной неоднородности между блоком предсказания и окружающими пикселями, которая вызвана внешним предсказанием, к примеру, устранить проблему пространственной неоднородности компонентов цветности и повысить эффективность кодирования.[00116] As can be seen from the technical solutions discussed above, in embodiments of the present invention, an improved inter prediction filter can be used to process chrominance components, that is, an improved inter prediction filter can be used to process both luma components and chrominance components, which allows solving the problem of spatial heterogeneity between the prediction unit and surrounding pixels, which is caused by inter-prediction, for example, to eliminate the problem of spatial heterogeneity of chrominance components and improve coding efficiency.

[00117] Вариант 4 осуществления изобретения: устройство кодирования может сначала получать высокоуровневый синтаксис, а высокоуровневый синтаксис может включать флаг активации фильтра внешнего предсказания. Способы упомянутого получения не ограничены при условии, что может быть получен флаг активации фильтра внешнего предсказания. Флаг активации фильтра внешнего предсказания может быть флагом в наборе SPS, флагом в наборе PPS, флагом в заголовке слайса или флагом в заголовке изображения. На типы высокоуровневого синтаксиса для таких флагов не накладывается никаких ограничений.[00117] Embodiment 4: The encoder may first obtain high-level syntax, and the high-level syntax may include an inter-prediction filter enable flag. The acquisition methods are not limited as long as the inter prediction filter activation flag can be obtained. The external prediction filter activation flag may be a flag in the SPS set, a flag in the PPS set, a flag in the slice header, or a flag in the image header. There are no restrictions on the types of high-level syntax for such flags.

[00118] Флаг активации фильтра внешнего предсказания указывает на то, что использование фильтра внешнего предсказания разрешено, или на то, что использование фильтра внешнего предсказания не разрешено. К примеру, когда флаг активации фильтра внешнего предсказания принимает значение А (например, значение, равное 1), использование фильтра внешнего предсказания может быть разрешено; когда флаг активации фильтра внешнего предсказания принимает значение В (например, значение, равное 0), использование фильтра внешнего предсказания не разрешено.[00118] The inter prediction filter enable flag indicates that the use of the inter prediction filter is enabled, or that the use of the inter prediction filter is not permitted. For example, when the inter-prediction filter enable flag is set to the value A (eg, a value equal to 1), the use of the inter-prediction filter may be enabled; When the inter prediction filter enable flag is set to B (eg, a value equal to 0), use of the inter prediction filter is not permitted.

[00119] В некоторых из примеров, если флаг активации фильтра внешнего предсказания указывает на то, что использование фильтра внешнего предсказания разрешено, когда устройство кодирования/декодирования обрабатывает(ют) текущий блок, то при помощи флага активации фильтра внешнего предсказания определяют, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания. Если флаг активации фильтра внешнего предсказания указывает на то, что использование фильтра внешнего предсказания не разрешено, то при обработке текущего блока, при помощи флага активации фильтра внешнего предсказания, определяют, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания.[00119] In some of the examples, if the inter prediction filter enable flag indicates that use of the inter prediction filter is enabled when the encoding/decoding apparatus processes the current block, then the inter prediction filter enable flag determines that the current block allowed to encode in inter-prediction filter mode. If the inter prediction filter enable flag indicates that use of the inter prediction filter is not permitted, then when processing the current block, it is determined that the current block is not permitted to be encoded in inter prediction filter mode using the inter prediction filter enable flag.

[00120] Итак, устройство кодирования/декодирования при помощи флага активации фильтра внешнего предсказания может определить, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, или что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания.[00120] Thus, the encoding/decoding apparatus can determine, using the inter-prediction filter enable flag, that the current block is allowed to be encoded in the inter-prediction filter mode, or that the current block is not allowed to be encoded in the inter-prediction filter mode.

[00121] Исходя из описанной выше процедуры, в соответствии с фиг.3, способ кодирования и декодирования, предлагаемый в вариантах осуществления настоящего изобретения, может включать:[00121] Based on the above procedure, in accordance with Fig. 3, the encoding and decoding method proposed in embodiments of the present invention may include:

[00122] на шаге 301 устройство кодирования определяет, указывает ли флаг активации фильтра внешнего предсказания на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания.[00122] In step 301, the encoder determines whether the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode.

[00123] Если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания, то запрещается кодировать флаг фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока, то есть для текущего блока не выполняют ни процедуру фильтра внешнего предсказания, ни процедуру улучшенного фильтра внешнего предсказания.[00123] If the inter prediction filter enable flag indicates that the current block is not allowed to be encoded in inter prediction filter mode, then the inter prediction filter flag for the current block is prohibited from being encoded in the bitstream data of the current block, that is, neither is performed for the current block. an inter prediction filter procedure, nor an enhanced inter prediction filter procedure.

[00124] Если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, выполняют шаг 302.[00124] If the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, step 302 is performed.

[00125] На шаге 302 устройство кодирования определяет, удовлетворяет ли текущий блок условиям фильтра внешнего предсказания.[00125] At step 302, the encoder determines whether the current block satisfies the conditions of the inter prediction filter.

[00126] Если текущий блок не удовлетворяет условиям фильтра внешнего предсказания, то запрещается кодировать флаг фильтра внешнего предсказания текущего блока в данных битового потока текущего блока, то есть для текущего блока не выполняют ни процедуру фильтра внешнего предсказания, ни процедуру улучшенного фильтра внешнего предсказания.[00126] If the current block does not satisfy the inter-prediction filter conditions, then the current block's inter-prediction filter flag is prohibited from being encoded in the current block's bitstream data, that is, neither the inter-prediction filter procedure nor the enhanced inter-prediction filter procedure is performed on the current block.

[00127] Если текущий блок удовлетворяет условиям фильтра внешнего предсказания, выполняют шаг 303.[00127] If the current block satisfies the conditions of the inter-prediction filter, step 303 is performed.

[00128] Процедура определения того, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, может включать, не ограничиваясь этим, следующее: если режимом внешнего предсказания для текущего блока является прямой режим, и/или текущий блок удовлетворяет условию ограничения размера, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания.[00128] The procedure for determining that the current block satisfies the inter prediction filter conditions may include, but is not limited to, the following: if the inter prediction mode for the current block is forward mode, and/or the current block satisfies the size limit condition, it is determined that the current the block satisfies the conditions of the inter-prediction filter.

[00129] В одном из возможных вариантов реализации режимы внешнего предсказания могут включать, не ограничиваясь этим, стандартный режим внешнего предсказания, режим пропуска, прямой режим и т.п.Исходя из этого, если режимом внешнего предсказания для текущего блока является прямой режим, может быть определено, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, а в противном случае определяют, что текущий блок не удовлетворяет условиям фильтра внешнего предсказания; или, если режимом внешнего предсказания для текущего блока не является ни стандартный режим внешнего предсказания, ни режим пропуска, может быть определено, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, а если режимом внешнего предсказания для текущего блока является стандартный режим внешнего предсказания или режим пропуска, определяют, что текущий блок не удовлетворяет условиям фильтра внешнего предсказания.[00129] In one possible embodiment, the inter prediction modes may include, but are not limited to, a standard inter prediction mode, a skip mode, a direct mode, and the like. Based on this, if the inter prediction mode for the current block is a forward mode, it may it is determined that the current block satisfies the conditions of the inter-prediction filter, and otherwise it is determined that the current block does not satisfy the conditions of the inter-prediction filter; or, if the inter prediction mode for the current block is neither a standard inter prediction mode nor a skip mode, it may be determined that the current block satisfies the inter prediction filter conditions, and if the inter prediction mode for the current block is a standard inter prediction mode or a skip mode , determine that the current block does not satisfy the conditions of the inter-prediction filter.

[00130] В некоторых из примеров прямой режим может включать, не ограничиваясь этим, стандартный прямой режим, аффинный режим, режим SbTMVP, режим UMVE, режим фильтра внешнего предсказания, режим ТРМ, режим GEO и т.п. Исходя из этого, если режимом внешнего предсказания для текущего блока является режим фильтра внешнего предсказания в прямом режиме, может быть определено, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, а если режимом внешнего предсказания для текущего блока не является режим фильтра внешнего предсказания в прямом режиме, может быть определено, что текущий блок не удовлетворяет условиям фильтра внешнего предсказания; или, если режимом внешнего предсказания для текущего блока не является ни режим UMVE, ни аффинный режим в прямом режиме, может быть определено, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, а если режимом внешнего предсказания для текущего блока является режим UMVE или аффинный режим в прямом режиме, может быть определено, что текущий блок не удовлетворяет условиям фильтра внешнего предсказания.[00130] In some examples, direct mode may include, but is not limited to, standard direct mode, affine mode, SbTMVP mode, UMVE mode, inter prediction filter mode, TPM mode, GEO mode, and the like. Based on this, if the inter prediction mode for the current block is the forward mode inter prediction filter mode, it can be determined that the current block satisfies the conditions of the inter prediction filter, and if the inter prediction mode for the current block is not the forward mode inter prediction filter mode , it may be determined that the current block does not satisfy the conditions of the inter prediction filter; or, if the inter prediction mode for the current block is neither UMVE mode nor affine mode in direct mode, it may be determined that the current block satisfies the conditions of the inter prediction filter, and if the inter prediction mode for the current block is UMVE mode or affine mode in forward mode, it can be determined that the current block does not satisfy the conditions of the inter prediction filter.

[00131] В еще одном из возможных вариантов реализации, если текущий блок удовлетворяет условию ограничения размера, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, а если текущий блок не удовлетворяет условию ограничения размера, определяют, что текущий блок не удовлетворяет условиям фильтра внешнего предсказания.[00131] In yet another exemplary embodiment, if the current block satisfies the size limitation condition, the current block is determined to satisfy the inter prediction filter conditions, and if the current block does not satisfy the size limitation condition, it is determined that the current block does not satisfy the inter prediction filter conditions. predictions.

[00132] То, что текущий блок удовлетворяет условию ограничения размера, может включать, не ограничиваясь этим, следующее: ширина текущего блока меньше или равна первому значению (которое может быть задано в соответствии с практическим применением, без ограничения настоящего изобретения в этом отношении, например, 64 или 128), высота текущего блока меньше или равна первому значению (которое может быть задано в соответствии с практическим применением, без ограничения настоящего изобретения в этом отношении, например, 64 или 128), или площадь текущего блока больше или равна третьему значению (которое может быть задано в соответствии с практическим применением, без ограничения настоящего изобретения в этом отношении, например, 64 или 128). Выше приведены лишь примеры, без ограничения настоящего изобретения в этом отношении.[00132] That the current block satisfies the size constraint condition may include, but is not limited to, the following: the width of the current block is less than or equal to the first value (which may be set according to practical application, without limiting the present invention in this regard, e.g. , 64 or 128), the height of the current block is less than or equal to the first value (which may be set in accordance with practical application, without limiting the present invention in this regard, for example, 64 or 128), or the area of the current block is greater than or equal to the third value ( which may be set according to practical application without limiting the present invention in this regard, for example 64 or 128). The above are examples only, without limiting the present invention in this regard.

[00133] К примеру, если ширина текущего блока меньше или равна 64, высота текущего блока меньше или равна 64, и площадь (то есть ширина * высота) текущего блока больше или равна 64, определяют, что текущий блок удовлетворяет условию ограничения размера.[00133] For example, if the width of the current block is less than or equal to 64, the height of the current block is less than or equal to 64, and the area (ie, width * height) of the current block is greater than or equal to 64, it is determined that the current block satisfies the size constraint condition.

[00134] В еще одном из возможных вариантов реализации, если режимом внешнего предсказания для текущего блока является прямой режим (например, режим фильтра внешнего предсказания в прямом режиме), и текущий блок удовлетворяет условию ограничения размера, определяют, что текущий блок удовлетворяет условиям фильтра внешнего предсказания.[00134] In yet another exemplary embodiment, if the inter prediction mode for the current block is forward mode (e.g., forward mode inter prediction filter mode), and the current block satisfies the size limit condition, it is determined that the current block satisfies the outer prediction filter condition. predictions.

[00135] На шаге 303 устройство кодирования определяет тип фильтра для текущего блока. Типом фильтра для текущего блока может быть тип «без фильтра», типом фильтра для текущего блока может быть фильтр внешнего предсказания, или типом фильтра для текущего блока может быть улучшенный фильтр внешнего предсказания.[00135] At step 303, the encoder determines the filter type for the current block. The filter type for the current block may be a "no filter" type, the filter type for the current block may be an inter prediction filter, or the filter type for the current block may be an enhanced inter prediction filter.

[00136] За описанием конкретного способа определения типа фильтра для текущего блока можно обратиться к варианту 2 осуществления настоящего изобретения, и оно не будет здесь повторяться.[00136] For a description of a specific method for determining the filter type for a current block, reference may be made to Embodiment 2 of the present invention and will not be repeated here.

[00137] В некоторых из примеров текущий блок может включать компонент яркости и компонент цветности, и, когда для текущего блока выполняют процедуру улучшенного фильтра внешнего предсказания, второе целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; или второе целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; или второе целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости, и второе целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00137] In some of the examples, the current block may include a luma component and a chrominance component, and when an improved inter prediction filter procedure is performed on the current block, a second target prediction value for the luma component may be obtained by performing an improved inter prediction filter procedure on the luma component ; or the second target prediction value for the chrominance component may be obtained by performing an enhanced inter prediction filter procedure for the chrominance component; or the second target prediction value for the luma component may be obtained by performing an improved inter prediction filter procedure for the luma component, and the second target prediction value for the chrominance component may be obtained by performing an improved inter prediction filter procedure for the chrominance component.

[00138] В некоторых из примеров, когда процедуру улучшенного фильтра внешнего предсказания выполняют для компонента цветности, если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, процедура улучшенного фильтра внешнего предсказания может быть выполнена для компонента цветности; если компонент цветности не удовлетворяет условиям улучшенного фильтра внешнего предсказания, запрещается выполнять процедуру улучшенного фильтра внешнего предсказания для компонента цветности. При этом то, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, может включать, не ограничиваясь этим, то, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости.[00138] In some of the examples, when the improved inter prediction filter procedure is performed on the chroma component, if the chrominance component satisfies the conditions of the improved inter prediction filter, the improved inter prediction filter procedure may be performed on the chrominance component; if the chrominance component does not satisfy the conditions of the improved inter-prediction filter, it is prohibited to perform the enhanced inter-prediction filter procedure on the chrominance component. However, the fact that the chroma component satisfies the conditions of the improved inter prediction filter may include, but is not limited to, that the chroma component belongs to the same type of partition tree as the luma component.

[00139] В одном из возможных вариантов реализации, если компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости, определяют, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, а если компонент цветности принадлежит типам дерева разбиения, отличающимся от типов дерева разбиения для компонента яркости, определяют, что компонент цветности не удовлетворяет условиям улучшенного фильтра внешнего предсказания.[00139] In one possible implementation, if the chroma component belongs to the same partition tree type as the luma component, the chrominance component is determined to satisfy the conditions of an enhanced inter-prediction filter, and if the chrominance component belongs to partition tree types different from the tree types splitting for the luma component, determines that the chrominance component does not satisfy the conditions of the improved inter prediction filter.

[00140] В некоторых из примеров, если удовлетворено по меньшей мере одно из следующих условий, определяют, что компонент цветности принадлежит типам дерева разбиения, отличающимся от типов дерева разбиения для компонента яркости, а в противном случае определяют, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости:[00140] In some of the examples, if at least one of the following conditions is satisfied, the chroma component is determined to belong to partition tree types different from the partition tree types for the luma component, and otherwise, the chroma component is determined to belong to the same type partition tree, the same as the brightness component:

[00141] текущий блок имеет тип разбиения QT, при этом ширина или высота текущего блока равна заранее заданному значению А (например, 8);[00141] the current block has a QT partition type, where the width or height of the current block is equal to a predetermined value A (for example, 8);

[00142] текущий блок имеет тип разбиения BT_VER, при этом ширина текущего блока равна заранее заданному значению В (например, 8);[00142] the current block has a partition type of BT_VER, and the width of the current block is equal to a predetermined value B (for example, 8);

[00143] текущий блок имеет тип разбиения BT_HOR, при этом высота текущего блока равна заранее заданному значению С (например, 8);[00143] the current block has a partition type of BT_HOR, and the height of the current block is equal to a predetermined value C (for example, 8);

[00144] текущий блок имеет тип разбиения EQT_VER, при этом ширина текущего блока равна заранее заданному значению D (например, 16);[00144] the current block has a partition type of EQT_VER, and the width of the current block is equal to a predetermined value D (for example, 16);

[00145] текущий блок имеет тип разбиения EQT_VER, при этом высота текущего блока равна заранее заданному значению Е (например, 8);[00145] the current block has a partition type of EQT_VER, and the height of the current block is equal to a predetermined value E (for example, 8);

[00146] текущий блок имеет тип разбиения EQT_HOR, при этом высота текущего блока равна заранее заданному значению F (например, 16); или[00146] the current block has a partition type of EQT_HOR, where the height of the current block is equal to a predetermined value F (for example, 16); or

[00147] текущий блок имеет тип разбиения EQT_HOR, при этом ширина текущего блока равна заранее заданному значению G (например, 8).[00147] The current block has a partition type of EQT_HOR, where the width of the current block is equal to a predetermined G value (for example, 8).

[00148] На шаге 304 устройство кодирования определяет флаг фильтра внешнего предсказания для текущего блока в соответствии с флагом активации фильтра внешнего предсказания и типом фильтра для текущего блока. Если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания; если типом фильтра для текущего блока является тип «без фильтра», флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является тип «без фильтра».[00148] In step 304, the encoder determines the inter-prediction filter flag for the current block in accordance with the inter-prediction filter enable flag and the filter type for the current block. If the filter type for the current block is an inter-prediction filter, the inter-prediction filter flag indicates that the filter type for the current block is an inter-prediction filter; if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter; if the filter type for the current block is a "no filter" type, the inter prediction filter flag indicates that the filter type for the current block is a "no filter" type.

[00149] На шаге 305 устройство кодирования кодирует флаг фильтра внешнего предсказания в данных битового потока текущего блока.[00149] At step 305, the encoder encodes the inter prediction filter flag into the bitstream data of the current block.

[00150] В некоторых из примеров за описанием процедур определения и кодирования флага фильтра внешнего предсказания можно обратиться к описанию варианта 2 осуществления настоящего изобретения, которое не будет здесь повторяться.[00150] In some of the examples, a description of the procedures for determining and encoding an inter prediction filter flag may be referred to the description of Embodiment 2 of the present invention, which will not be repeated here.

[00151] На шаге 306 устройство кодирования передает данные битового потока текущего блока в устройство декодирования.[00151] At step 306, the encoding device transmits the bitstream data of the current block to the decoding device.

[00152] В некоторых из примеров данные битового потока текущего блока, помимо флага фильтра внешнего предсказания, могут включать и другое содержимое, относящееся к текущему блоку, например, содержимое, относящееся к информации о движении, а также содержимое, относящееся к восстановленному значению, без ограничения настоящего изобретения в этом отношении.[00152] In some of the examples, the bitstream data of the current block, in addition to the inter prediction filter flag, may include other content related to the current block, such as content related to motion information, as well as content related to the reconstructed value, without limitations of the present invention in this regard.

[00153] В некоторых из примеров последовательность выполнения процедуры в устройстве кодирования может соответствовать приведенному выше описанию, при этом последовательность выполнения процедуры в устройстве декодирования может включать следующее (не показано на чертежах):[00153] In some of the examples, the flow of the encoding device may be as described above, and the flow of the decoding device may include the following (not shown in the drawings):

[00154] на шаге 307, после приема данных битового потока, устройство декодирования определяет, указывает ли флаг активации фильтра внешнего предсказания на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания.[00154] In step 307, after receiving the bitstream data, the decoding apparatus determines whether the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode.

[00155] Если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания, то запрещается анализировать флаг фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока, то есть для текущего блока не выполняют ни процедуру фильтра внешнего предсказания, ни процедуру улучшенного фильтра внешнего предсказания.[00155] If the inter prediction filter enable flag indicates that the current block is not allowed to be encoded in inter prediction filter mode, then it is prohibited to parse the inter prediction filter flag for the current block from the bitstream data of the current block, that is, nothing is performed for the current block. inter-prediction filter procedure, nor the enhanced inter-prediction filter procedure.

[00156] Если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, выполняют шаг 308.[00156] If the inter prediction filter enable flag indicates that the current block is permitted to be encoded in inter prediction filter mode, step 308 is performed.

[00157] На шаге 308 устройство декодирования определяет, удовлетворяет ли текущий блок условиям фильтра внешнего предсказания.[00157] At step 308, the decoder determines whether the current block satisfies the conditions of the inter prediction filter.

[00158] Если текущий блок не удовлетворяет условиям фильтра внешнего предсказания, то запрещается анализировать флаг фильтра внешнего предсказания текущего блока из данных битового потока текущего блока, то есть для текущего блока не выполняют ни процедуру фильтра внешнего предсказания, ни процедуру улучшенного фильтра внешнего предсказания.[00158] If the current block does not satisfy the inter-prediction filter conditions, then the current block's inter-prediction filter flag is prohibited from being analyzed from the current block's bitstream data, that is, neither the inter-prediction filter procedure nor the enhanced inter-prediction filter procedure is performed on the current block.

[00159] Если текущий блок удовлетворяет условиям фильтра внешнего предсказания, выполняют шаг 309.[00159] If the current block satisfies the inter-prediction filter conditions, step 309 is performed.

[00160] На шаге 309 устройство декодирования анализирует флаг фильтра внешнего предсказания из данных битового потока текущего блока.[00160] At step 309, the decoder analyzes the inter-prediction filter flag from the bitstream data of the current block.

[00161] На шаге 310 устройство декодирования определяет тип фильтра для текущего блока в соответствии с флагом активации фильтра внешнего предсказания и флагом фильтра внешнего предсказания.[00161] At step 310, the decoding apparatus determines the filter type for the current block in accordance with the inter prediction filter enable flag and the inter prediction filter flag.

[00162] В некоторых из примеров за описанием процедур определения типа фильтра можно обратиться к описанию варианта 1 осуществления настоящего изобретения, которое не будет здесь повторяться.[00162] In some of the examples, for a description of the filter type determination procedures, reference may be made to the description of Embodiment 1 of the present invention, which will not be repeated here.

[00163] В некоторых примерах, если типом фильтра для текущего блока является фильтр внешнего предсказания, выполняют шаг 311; если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, выполняют шаг 312; если типом фильтра для текущего блока является тип «без фильтра», выполняют шаг 313.[00163] In some examples, if the filter type for the current block is an inter-prediction filter, step 311 is performed; if the filter type for the current block is an enhanced inter prediction filter, perform step 312; if the filter type for the current block is "no filter", step 313 is performed.

[00164] На шаге 311 устройство декодирования получает целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока.[00164] In step 311, the decoder obtains the prediction target value for the current block by executing an inter prediction filter procedure for the current block.

[00165] На шаге 312 устройство декодирования получает целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[00165] At step 312, the decoder obtains a prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block.

[00166] В одном из возможных вариантов реализации текущий блок включает компонент яркости и компонент цветности, при этом целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; или целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; или целевое значение предсказания для компонента яркости может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости, и целевое значение предсказания для компонента цветности может быть получено путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00166] In one exemplary embodiment, the current block includes a luma component and a chrominance component, wherein a prediction target value for the luma component may be obtained by performing an enhanced inter prediction filter procedure for the luma component; or the target prediction value for the chrominance component can be obtained by performing an enhanced inter prediction filter procedure for the chrominance component; or the target prediction value for the luminance component can be obtained by performing an improved inter prediction filter procedure for the luminance component, and the target prediction value for the chrominance component can be obtained by performing an improved inter prediction filter procedure for the chrominance component.

[00167] На шаге 313 устройство декодирования не выполняет процедуру фильтрации для текущего блока и определяет значение внешнего предсказания для текущего блока в качестве целевого значения предсказания для текущего блока.[00167] In step 313, the decoding apparatus does not perform a filtering procedure for the current block and determines the inter prediction value for the current block as the prediction target value for the current block.

[00168] Посредством шага 311, или шага 312, или шага 313, устройство декодирования может получить целевое значение предсказания для текущего блока и определить восстановленное значение текущего блока на основе целевого значения предсказания для текущего блока, без ограничения настоящего изобретения в этом отношении.[00168] Through step 311 or step 312 or step 313, the decoding apparatus may obtain the prediction target value for the current block and determine the reconstructed value of the current block based on the prediction target value for the current block, without limiting the present invention in this regard.

[00169] При этом, в рассмотренном выше решении, улучшенный фильтр внешнего предсказания может использоваться для обработки компонентов цветности, то есть улучшенный фильтр внешнего предсказания может использоваться и для обработки компонентов яркости, и для обработки компонентов цветности, что позволяет решить проблему пространственной неоднородности между блоком предсказания и окружающими пикселями, которая вызвана внешним предсказанием, к примеру, устранить проблему пространственной неоднородности компонентов цветности и повысить эффективность кодирования.[00169] Meanwhile, in the solution discussed above, the improved inter prediction filter can be used to process chrominance components, that is, the improved inter prediction filter can be used to both process luminance components and process chrominance components, which can solve the problem of spatial heterogeneity between blocks prediction and surrounding pixels, which is caused by inter-prediction, for example, eliminate the problem of spatial heterogeneity of chrominance components and improve coding efficiency.

[00170] В вариантах осуществления настоящего изобретения улучшенный фильтр внешнего предсказания может поддерживать компоненты цветности. К примеру, для обработки компонентов цветности, которые удовлетворяют условиям улучшенного фильтра внешнего предсказания, может использоваться технология улучшенного фильтра внешнего предсказания.[00170] In embodiments of the present invention, the improved inter prediction filter may support chroma components. For example, enhanced inter prediction filter technology may be used to process chrominance components that satisfy the conditions of an enhanced inter prediction filter.

[00171] В некоторых из примеров, для устройства кодирования, если флаг активации фильтра внешнего предсказания (который далее обозначается interpf_enable_flag или udip_enable_flag) указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, устройство кодирования может выбрать тип фильтра из следующего: «без фильтра», фильтр внешнего предсказания и улучшенный фильтр внешнего предсказания, при помощи RDO и кодировать флаг фильтра внешнего предсказания в соответствии с типом фильтра, то есть флаг фильтра внешнего предсказания передают в данных битового потока.[00171] In some of the examples, for an encoder, if the inter-prediction filter enable flag (hereinafter referred to as interpf_enable_flag or udip_enable_flag) indicates that the current block is allowed to be encoded in inter-prediction filter mode, and the current block satisfies the conditions of the inter-prediction filter, the encoding device can select a filter type from the following: "no filter", inter prediction filter and enhanced inter prediction filter, using RDO, and encode the inter prediction filter flag according to the filter type, that is, the inter prediction filter flag is transmitted in the bit stream data.

[00172] В некоторых примерах, для устройства декодирования, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, устройство декодирования может анализировать флаг фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока и определять тип фильтра для текущего блока в соответствии с флагом фильтра внешнего предсказания. Если типом фильтра является фильтр внешнего предсказания, устройство декодирования получает целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока. Если типом фильтра является улучшенный фильтр внешнего предсказания, устройство декодирования получает целевое значение предсказания путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока. Если типом фильтра является тип «без фильтра», устройство декодирования не выполняет процедуру фильтрации для текущего блока и определяет значение внешнего предсказания для текущего блока в качестве целевого значения предсказания.[00172] In some examples, for a decoding device, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, and the current block satisfies inter prediction filter conditions, the decoding device may analyze the inter prediction filter flag for of the current block from the bitstream data of the current block, and determine the filter type for the current block according to the inter prediction filter flag. If the filter type is an inter-prediction filter, the decoding apparatus obtains the prediction target value for the current block by executing an inter-prediction filter procedure for the current block. If the filter type is an enhanced inter prediction filter, the decoding apparatus obtains the prediction target value by executing the enhanced inter prediction filter procedure for the current block. If the filter type is a "no filter" type, the decoding apparatus does not perform a filtering procedure for the current block and determines the inter prediction value for the current block as the prediction target value.

[00173] Вариант 5 осуществления изобретения: улучшенный фильтр внешнего предсказания поддерживает компоненты цветности. К примеру, процедура улучшенного фильтра внешнего предсказания может выполняться для всех компонентов цветности, или процедура улучшенного фильтра внешнего предсказания может выполняться для компонентов цветности, удовлетворяющих условиям улучшенного фильтра внешнего предсказания.[00173] Embodiment 5: The improved inter prediction filter supports chroma components. For example, the enhanced inter prediction filter procedure may be performed on all chrominance components, or the enhanced inter prediction filter procedure may be performed on chrominance components satisfying the conditions of the enhanced inter prediction filter.

[00174] В варианте 5 осуществления настоящего изобретения устройство кодирования может получать флаг активации фильтра внешнего предсказания (interpf_enable_ flag). Устройство кодирования может передавать флаг активации фильтра внешнего предсказания в устройство декодирования при помощи данных битового потока, в результате чего устройство декодирования может получать флаг активации фильтра внешнего предсказания. На основе этого может осуществляться управление фильтром внешнего предсказания и улучшенного фильтра внешнего предсказания при помощи флага активации фильтра внешнего предсказания. К примеру, когда флаг активации фильтра внешнего предсказания принимает значение А (например, 1), может обеспечиваться активация фильтра внешнего предсказания и улучшенного фильтра внешнего предсказания. Когда флаг активации фильтра внешнего предсказания принимает значение В (например, 0), может обеспечиваться деактивация фильтра внешнего предсказания и улучшенного фильтра внешнего предсказания. В рассмотренных ниже вариантах осуществления настоящего изобретения в качестве примера рассмотрены значение А, равное 1, и значение В, равное 0.[00174] In Embodiment 5 of the present invention, the encoding device may obtain an inter-prediction filter enable flag (interpf_enable_flag). The encoding device may transmit an inter-prediction filter activation flag to the decoding device using the bitstream data, whereby the decoding device can obtain the inter-prediction filter activation flag. Based on this, the inter prediction filter and the enhanced inter prediction filter can be controlled by the inter prediction filter activation flag. For example, when the inter prediction filter activation flag takes the value A (eg, 1), the inter prediction filter and the enhanced inter prediction filter may be enabled. When the inter prediction filter enable flag takes the value B (eg, 0), the inter prediction filter and the enhanced inter prediction filter may be deactivated. In the embodiments of the present invention discussed below, a value of A of 1 and a value of B of 0 are taken as an example.

[00175] В случае устройства кодирования сначала может быть определено значение interpf_enable_flag. Если значение interpf_enable_flag равно 1, текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и в режиме улучшенного фильтра внешнего предсказания. Если значение interpf_enable_flag равно 0, текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания и в режиме улучшенного фильтра внешнего предсказания. При этом, если текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и в режиме улучшенного фильтра внешнего предсказания, устройство кодирования определяет, удовлетворяет ли текущий блок условиям фильтра внешнего предсказания.[00175] In the case of an encoder, the interpf_enable_flag value may first be determined. If the value of interpf_enable_flag is 1, the current block is allowed to be encoded in inter-prediction filter mode and enhanced inter-prediction filter mode. If the value of interpf_enable_flag is 0, the current block is not allowed to be encoded in inter-prediction filter mode and enhanced inter-prediction filter mode. Here, if the current block is allowed to be encoded in the inter prediction filter mode and the enhanced inter prediction filter mode, the encoding device determines whether the current block satisfies the conditions of the inter prediction filter.

[00176] Если текущий блок удовлетворяет условиям фильтра внешнего предсказания, устройство кодирования может выбирать тип фильтра из следующего: «без фильтра», фильтр внешнего предсказания или улучшенный фильтр внешнего предсказания, при помощи RDO, использовать этот тип фильтра в качестве типа фильтра для текущего блока и кодировать флаг фильтра внешнего предсказания, соответствующий типу фильтра, то есть флаг фильтра внешнего предсказания передают в данных битового потока.[00176] If the current block satisfies the inter prediction filter conditions, the encoder can select a filter type from the following: no filter, inter prediction filter, or enhanced inter prediction filter, using RDO, use this filter type as the filter type for the current block and encode an inter-prediction filter flag corresponding to the filter type, that is, the inter-prediction filter flag is transmitted in the bitstream data.

[00177] В некоторых из примеров, когда устройство кодирования выбирает тип фильтра из следующего: «без фильтра», фильтр внешнего предсказания или улучшенный фильтр внешнего предсказания, при помощи RDO, это может выполняться следующим образом: устройство кодирования получает первое целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока; устройство кодирования получает второе целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока; устройство кодирования не выполняет процедуру фильтрации для текущего блока и определяет значение внешнего предсказания для текущего блока в качестве третьего целевого значения предсказания для текущего блока. Если значение целевой функции «скорость - искажения», соответствующее первому целевому значению предсказания, является наименьшим значением целевой функции «скорость - искажения», может быть определено, что типом фильтра является фильтр внешнего предсказания. Если значение целевой функции «скорость - искажения», соответствующее второму целевому значению предсказания, является наименьшим значением целевой функции «скорость искажения», может быть определено, что типом фильтра является улучшенный фильтр внешнего предсказания. Если значение целевой функции «скорость - искажения», соответствующее третьему целевому значению предсказания, является наименьшим значением целевой функции «скорость искажения», может быть определено, что типом фильтра является тип «без фильтра».[00177] In some of the examples, when the encoder selects a filter type from the following: no filter, inter prediction filter, or enhanced inter prediction filter, using RDO, it can be done as follows: the encoder obtains the first target prediction value for the current block by executing an inter-prediction filter procedure for the current block; the encoding device obtains a second prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block; the encoder does not perform a filtering procedure for the current block, and determines the inter prediction value for the current block as a third prediction target value for the current block. If the rate-distortion objective function value corresponding to the first prediction target value is the smallest value of the rate-distortion objective function, the filter type can be determined to be an inter-prediction filter. If the rate-distortion objective function value corresponding to the second prediction target value is the smallest value of the rate-distortion objective function, the filter type can be determined to be an enhanced inter-prediction filter. If the rate-distortion objective function value corresponding to the third prediction target value is the smallest value of the distortion rate objective function, the filter type can be determined to be a “no filter” type.

[00178] Когда устройство кодирования получает первое целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока, устройство кодирования может получить первое целевое значение предсказания для компонента яркости путем выполнения процедуры фильтра внешнего предсказания для компонента яркости текущего блока и получить первое целевое значение предсказания для компонента цветности путем выполнения процедуры фильтра внешнего предсказания для компонента цветности текущего блока.[00178] When the encoding apparatus obtains the first target prediction value for the current block by executing an inter-prediction filter procedure for the current block, the encoding apparatus may obtain the first target prediction value for the luminance component by executing the inter-prediction filter procedure for the luminance component of the current block and obtain the first target the prediction value for the chrominance component by performing an inter-prediction filter procedure on the chrominance component of the current block.

[00179] Когда устройство кодирования получает второе целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока, устройство кодирования может получить второе целевое значение предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости текущего блока и получить второе целевое значение предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока.[00179] When the encoding apparatus obtains the second target prediction value for the current block by executing the improved inter prediction filter procedure for the current block, the encoding apparatus may obtain the second target prediction value for the luminance component by executing the improved inter prediction filter procedure for the luminance component of the current block and obtain a second target prediction value for the chroma component by performing an enhanced inter prediction filter procedure for the chrominance component of the current block.

[00180] Когда устройство кодирования выполняет процедуру улучшенного фильтра внешнего предсказания для компонента цветности текущего блока, устройство кодирования может сначала определить, удовлетворяет ли компонент цветности условиям улучшенного фильтра внешнего предсказания. Если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, устройство кодирования получает второе целевое значение предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00180] When the encoder performs the improved inter prediction filter procedure on the chrominance component of the current block, the encoder may first determine whether the chrominance component satisfies the conditions of the improved inter prediction filter. If the chrominance component satisfies the conditions of the improved inter prediction filter, the encoder obtains a second target prediction value for the chrominance component by executing the improved inter prediction filter procedure for the chrominance component.

[00181] В некоторых из примеров, когда устройство кодирования кодирует флаг фильтра внешнего предсказания в соответствии с типами фильтров, указанными в таблице 1, если типом фильтра для текущего блока является тип «без фильтра», первый бит флага фильтра внешнего предсказания кодируют равным 0; если типом фильтра для текущего блока является фильтр внешнего предсказания или улучшенный фильтр внешнего предсказания, первый бит флага фильтра внешнего предсказания кодируют равным 1; если типом фильтра для текущего блока является фильтр внешнего предсказания, второй бит флага фильтра внешнего предсказания кодируют равным 0; и, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, второй бит флага фильтра внешнего предсказания кодируют равным 1.[00181] In some of the examples, when the encoder encodes the inter-prediction filter flag according to the filter types listed in Table 1, if the filter type for the current block is a “no filter” type, the first bit of the inter-prediction filter flag is encoded to 0; if the filter type for the current block is an inter prediction filter or an enhanced inter prediction filter, the first bit of the inter prediction filter flag is coded to 1; if the filter type for the current block is an inter-prediction filter, the second bit of the inter-prediction filter flag is coded to 0; and, if the filter type for the current block is an enhanced inter prediction filter, the second bit of the inter prediction filter flag is coded equal to 1.

[00182] Как можно видеть в таблице 1, если типом фильтра для текущего блока является тип «без фильтра», флаг фильтра внешнего предсказания равен 0, а индекс типа фильтра, соответствующий типу «без фильтра», равен 0; если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания равен 10, а индекс типа фильтра, соответствующий фильтру внешнего предсказания, равен 1; если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания равен 11, а индекс типа фильтра, соответствующий улучшенному фильтру внешнего предсказания, равен 2.[00182] As can be seen in Table 1, if the filter type for the current block is a "no filter" type, the inter prediction filter flag is 0, and the filter type index corresponding to the "no filter" type is 0; if the filter type for the current block is an inter-prediction filter, the inter-prediction filter flag is 10, and the filter type index corresponding to the inter-prediction filter is 1; if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag is 11, and the filter type index corresponding to the enhanced inter prediction filter is 2.

[00183] В случае устройства декодирования анализируют значение interpf_enable_flag из данных битового потока. Если значение interpf_enable_flag равно 1, текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и в режиме улучшенного фильтра внешнего предсказания. Если значение interpf_enable_flag равно 0, текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания и в режиме улучшенного фильтра внешнего предсказания. При этом, если текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и в режиме улучшенного фильтра внешнего предсказания, устройство декодирования может определять, удовлетворяет ли текущий блок условиям фильтра внешнего предсказания. Если текущий блок удовлетворяет условиям фильтра внешнего предсказания, устройство декодирования может анализировать флаг фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока и определять тип фильтра для текущего блока в соответствии с флагом фильтра внешнего предсказания.[00183] In the case of a decoding device, the interpf_enable_flag value is analyzed from the bitstream data. If the value of interpf_enable_flag is 1, the current block is allowed to be encoded in inter-prediction filter mode and enhanced inter-prediction filter mode. If the value of interpf_enable_flag is 0, the current block is not allowed to be encoded in inter-prediction filter mode and enhanced inter-prediction filter mode. Here, if the current block is allowed to be encoded in the inter-prediction filter mode and the enhanced inter-prediction filter mode, the decoding apparatus can determine whether the current block satisfies the conditions of the inter-prediction filter. If the current block satisfies the conditions of the inter-prediction filter, the decoding apparatus can analyze the inter-prediction filter flag for the current block from the bitstream data of the current block and determine the filter type for the current block according to the inter-prediction filter flag.

[00184] К примеру, в соответствии с таблицей 1, устройство декодирования может декодировать первый бит флага фильтра внешнего предсказания. Если первый бит равен 0, то есть флаг фильтра внешнего предсказания равен 0, определяют, что типом фильтра для текущего блока является тип «без фильтра». Если первый бит не равен 0 (первый бит равен 1), декодируют второй бит флага фильтра внешнего предсказания. Если второй бит равен 0, то есть флаг фильтра внешнего предсказания равен 10, определяют, что типом фильтра для текущего блока является фильтр внешнего предсказания. Если второй бит не равен 0 (второй бит равен 1), то есть флаг фильтра внешнего предсказания равен 11, определяют, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания.[00184] For example, according to Table 1, the decoding apparatus may decode the first bit of the inter prediction filter flag. If the first bit is 0, that is, the inter prediction filter flag is 0, the filter type for the current block is determined to be a “no filter” type. If the first bit is not 0 (the first bit is 1), the second bit of the inter prediction filter flag is decoded. If the second bit is 0, that is, the inter-prediction filter flag is 10, it is determined that the filter type for the current block is an inter-prediction filter. If the second bit is not 0 (the second bit is 1), that is, the inter prediction filter flag is 11, it is determined that the filter type for the current block is an enhanced inter prediction filter.

[00185] Как можно видеть в таблице 1, если флаг фильтра внешнего предсказания равен 0, определяют, что индекс типа фильтра равен 0, и что типом фильтра, соответствующим индексу типа фильтра, равному 0, является тип «без фильтра». Если флаг фильтра внешнего предсказания равен 10, определяют, что индекс типа фильтра равен 1, и что типом фильтра, соответствующим индексу типа фильтра, равному 1, является фильтр внешнего предсказания. Если флаг фильтра внешнего предсказания равен 11, определяют, что индекс типа фильтра равен 2, и что типом фильтра, соответствующим индексу типа фильтра, равному 2, является улучшенный фильтр внешнего предсказания.[00185] As can be seen in Table 1, if the inter prediction filter flag is 0, it is determined that the filter type index is 0, and that the filter type corresponding to the filter type index is 0 is a "no filter" type. If the inter prediction filter flag is 10, it is determined that the filter type index is 1, and that the filter type corresponding to the filter type index equal to 1 is an inter prediction filter. If the inter prediction filter flag is 11, it is determined that the filter type index is 2, and that the filter type corresponding to the filter type index is 2 is an improved inter prediction filter.

[00186] Если типом фильтра для текущего блока является тип «без фильтра», устройство декодирования не может выполнять процедуру фильтрации для текущего блока и определяет значение внешнего предсказания для текущего блока в качестве целевого значения предсказания. Если типом фильтра для текущего блока является фильтр внешнего предсказания, устройство декодирования может получать целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока. Если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, устройство декодирования может получать целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[00186] If the filter type for the current block is a "no filter" type, the decoding apparatus cannot perform a filtering procedure for the current block and determines the inter prediction value for the current block as the prediction target value. If the filter type for the current block is an inter-prediction filter, the decoding apparatus may obtain a prediction target value for the current block by executing an inter-prediction filter procedure for the current block. If the filter type for the current block is an enhanced inter prediction filter, the decoding apparatus may obtain a prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block.

[00187] Когда устройство декодирования получает целевое значение предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока, устройство декодирования может получать целевое значение предсказания для компонента яркости путем выполнения процедуры фильтра внешнего предсказания для компонента яркости текущего блока и получать целевое значение предсказания для компонента цветности путем выполнения процедуры фильтра внешнего предсказания для компонента цветности текущего блока.[00187] When the decoding device obtains the target prediction value for the current block by executing an inter-prediction filter procedure for the current block, the decoding device may obtain the target prediction value for the luminance component by executing the inter-prediction filter procedure for the luminance component of the current block and obtain the target prediction value for chrominance component by performing an inter-prediction filter procedure on the chrominance component of the current block.

[00188] Когда устройство декодирования получает целевое значение предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока, устройство декодирования может получать целевое значение предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости текущего блока и получать целевое значение предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока.[00188] When the decoding apparatus obtains the target prediction value for the current block by executing the improved inter prediction filter procedure for the current block, the decoding apparatus may obtain the target prediction value for the luminance component by executing the improved inter prediction filter procedure for the luminance component of the current block and obtains the target value prediction for the chrominance component by performing an enhanced inter-prediction filter procedure for the chrominance component of the current block.

[00189] Когда устройство декодирования выполняет процедуру улучшенного фильтра внешнего предсказания для компонента цветности текущего блока, устройство декодирования может сначала определить, удовлетворяет ли компонент цветности условиям улучшенного фильтра внешнего предсказания. Если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, устройство декодирования получает целевое значение предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00189] When the decoding apparatus performs the enhanced inter prediction filter procedure on the chrominance component of the current block, the decoding apparatus may first determine whether the chrominance component satisfies the conditions of the enhanced inter prediction filter. If the chrominance component satisfies the conditions of the improved inter-prediction filter, the decoding apparatus obtains a target prediction value for the chrominance component by executing the improved inter-prediction filter procedure for the chrominance component.

[00190] В рассмотренном выше варианте осуществления настоящего изобретения, для устройства кодирования и устройства декодирования, то, что текущий блок удовлетворяет условиям фильтра внешнего предсказания, может включать, не ограничиваясь этим, то, что текущий блок кодируют в прямом режиме (не в режиме пропуска и не в стандартном режиме внешнего предсказания), и то, что текущий блок не кодируют в режиме UMVE или в аффинном режиме, и при этом текущий блок удовлетворяет условию ограничения размера.[00190] In the above embodiment of the present invention, for an encoding device and a decoding device, the fact that the current block satisfies the conditions of the inter prediction filter may include, but is not limited to, that the current block is encoded in the forward mode (not in the skip mode and not in standard inter-prediction mode), and that the current block is not encoded in UMVE mode or affine mode, and the current block satisfies the size limit condition.

[00191] В рассмотренном выше варианте осуществления настоящего изобретения, для устройства кодирования и устройства декодирования процедура улучшенного фильтра внешнего предсказания может выполняться для всех компонентов цветности, и процедура улучшенного фильтра внешнего предсказания может выполняться для компонентов цветности, удовлетворяющих условиям улучшенного фильтра внешнего предсказания. К примеру, когда компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости, компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания.[00191] In the above embodiment of the present invention, for the encoding device and the decoding device, the improved inter prediction filter procedure can be performed on all chrominance components, and the improved inter prediction filter procedure can be performed on chrominance components satisfying the conditions of the improved inter prediction filter. For example, when the chrominance component belongs to the same partition tree type as the luma component, the chroma component satisfies the conditions of an improved inter-prediction filter.

[00192] Вариант 6 осуществления изобретения: в любом из вариантов 1-5 осуществления настоящего изобретения устройство кодирования/декодирования участвует в получении целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока. Ниже будет описана процедура реализации фильтра внешнего предсказания (interpf). Фильтр внешнего предсказания может применяться в прямом режиме. В прямом режиме получают значение внешнего предсказания, а также используют один из режимов внутреннего предсказания для получения значения внутреннего предсказания. Наконец, значение внешнего предсказания и значение внутреннего предсказания взвешивают для получения окончательного целевого значения предсказания. Фильтр внешнего предсказания позволяет устранить проблему пространственной неоднородности между блоком предсказания и окружающими пикселями, которая вызвана внешним предсказанием.[00192] Embodiment 6: In any of Embodiments 1 to 5 of the present invention, the encoding/decoding apparatus participates in obtaining a prediction target value for the current block by executing an inter prediction filter procedure for the current block. The procedure for implementing an inter-prediction filter (interpf) will be described below. The external prediction filter can be applied in direct mode. In the direct mode, the inter prediction value is obtained, and one of the intra prediction modes is also used to obtain the internal prediction value. Finally, the external prediction value and the internal prediction value are weighted to obtain the final target prediction value. The inter-prediction filter can eliminate the problem of spatial heterogeneity between the prediction block and surrounding pixels that is caused by inter-prediction.

[00193] Фиг. 4 представляет собой блок-схему, иллюстрирующую процедуру декодирования с использованием фильтра внешнего предсказания. В данном случае для примера выбрана процедура декодирования в устройстве декодирования, при этом процедура кодирования в устройстве кодирования аналогична ей. Фильтр внешнего предсказания применяют между процедурой внешнего предсказания и процедурой восстановления. Фильтр внешнего предсказания используют в основном для текущего блока в прямом режиме (не в режиме пропуска и не в режиме стандартного внешнего предсказания), при этом текущий блок не кодирован в режиме UMVE, или текущий блок не кодирован в аффинном режиме.[00193] FIG. 4 is a flowchart illustrating a decoding procedure using an inter prediction filter. In this case, the decoding procedure in the decoding device is chosen as an example, and the encoding procedure in the encoding device is similar to it. An inter-prediction filter is applied between the inter-prediction procedure and the reconstruction procedure. The inter prediction filter is used primarily on the current block in direct mode (not skip mode or standard inter prediction mode), where the current block is not UMVE encoded or the current block is not affine mode encoded.

[00194] Если для текущего блока должен быть использован фильтр внешнего предсказания, то сначала может применяться режим внешнего предсказания для получения значения внешнего предсказания для текущего блока и режим внутреннего предсказания для получения значения внутреннего предсказания для текущего блока. Затем определяют целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и значением внутреннего предсказания. На основе целевого значения предсказания для текущего блока выполняют процедуру восстановления. Если для текущего блока не должен использоваться фильтр внешнего предсказания, то может применяться режим внешнего предсказания для получения значения внешнего предсказания для текущего блока. Затем значение внешнего предсказания для текущего блока определяют в качестве целевого значения предсказания для текущего блока. На основе целевого значения предсказания для текущего блока выполняют процедуру восстановления.[00194] If an inter prediction filter is to be used for the current block, then an inter prediction mode may first be applied to obtain the inter prediction value for the current block and an intra prediction mode to obtain the intra prediction value for the current block. Then, a prediction target value for the current block is determined in accordance with the inter prediction value and the intra prediction value. Based on the prediction target value for the current block, a reconstruction procedure is performed. If no inter-prediction filter is to be used for the current block, then an inter-prediction mode may be used to obtain the inter-prediction value for the current block. Then, the inter-prediction value for the current block is determined as the target prediction value for the current block. Based on the prediction target value for the current block, a reconstruction procedure is performed.

[00195] В некоторых из примеров, для каждого местоположения пикселя в текущем блоке может использоваться режим внешнего предсказания для получения значения внешнего предсказания в местоположении пикселя, режим внутреннего предсказания (например, планарный режим, режим DC или любой угловой режим, без ограничения настоящего изобретения в этом отношении) может использоваться для получения значения внутреннего предсказания в местоположении пикселя, и упомянутые значение внешнего предсказания в местоположении пикселя и значение внутреннего предсказания в местоположении пикселя взвешивают для получения целевого значения предсказания в местоположении пикселя. Затем целевые значения предсказания во всех местоположениях пикселей текущего блока объединяют для получения целевого значения предсказания для текущего блока.[00195] In some of the examples, for each pixel location in the current block, an inter prediction mode may be used to obtain the inter prediction value at the pixel location, an intra prediction mode (e.g., planar mode, DC mode, or any angular mode, without limiting the present invention to in this regard) can be used to obtain the intra prediction value at the pixel location, and the inter prediction value at the pixel location and the intra prediction value at the pixel location are weighted to obtain the target prediction value at the pixel location. The prediction target values at all pixel locations of the current block are then combined to obtain the prediction target value for the current block.

[00196] В одном из возможных вариантов реализации, для каждого местоположения пикселя в текущем блоке, если допустить, что для получения значения внутреннего предсказания в местоположении пикселя используют планарный режим, то для получения значения внутреннего предсказания в местоположении пикселя могут использоваться следующие формулы:[00196] In one possible implementation, for each pixel location in the current block, assuming that planar mode is used to obtain the intra prediction value at the pixel location, the following formulas may be used to obtain the intra prediction value at the pixel location:

Pred_Q(x,y)=(Pred_V(x,y)+Pred_H(x,y)+1)»2,Pred_Q(x,y)=(Pred_V(x,y)+Pred_H(x,y)+1)»2,

Pred_V(x,y)=((h-1-y)*Recon(x,-l)+(y+1)*Recon(-l,h)+(h»l))»log2(h), иPred_V(x,y)=((h-1-y)*Recon(x,-l)+(y+1)*Recon(-l,h)+(h»l))»log2(h), And

Pred_H(x,y)=((w-1-x)*Recon(-1,y)+(x+1)*Recon(w,-1)+(w»1))»log2(w),Pred_H(x,y)=((w-1-x)*Recon(-1,y)+(x+1)*Recon(w,-1)+(w»1))»log2(w),

[00197] где Pred_Q(x,y) значение внутреннего предсказания в местоположении (х,у) пикселя, w и h - ширина и высота текущего блока, х и у - относительные координаты текущего блока, и Recon(x,y) - восстановленное значение пикселя вокруг текущего блока.[00197] where Pred_Q(x,y) is the internal prediction value at pixel location (x,y), w and h are the width and height of the current block, x and y are the relative coordinates of the current block, and Recon(x,y) is the reconstructed the pixel value around the current block.

[00198] В одном из возможных вариантов реализации, для каждого местоположения пикселя в текущем блоке выполняют взвешивание 5:3 на основе значения внешнего предсказания (Pred_inter) и значения внутреннего предсказания (Pred_Q), в результате чего получают целевое значение предсказания в местоположении пикселя. Значение 5:3 является всего лишь одним из примеров. Могут использоваться и другие весовые коэффициенты. К примеру, для получения целевого значения предсказания в местоположении пикселя может использоваться следующая формула:[00198] In one exemplary embodiment, for each pixel location in the current block, a 5:3 weighting is performed based on the inter prediction value (Pred_inter) and the intra prediction value (Pred_Q), resulting in a target prediction value at the pixel location. The 5:3 value is just one example. Other weighting factors may be used. For example, the following formula can be used to obtain the prediction target value at a pixel location:

Pred(x,y)=(Pred_inter(x,y)*5+Pred_Q(x,y)*3+4)»3,Pred(x,y)=(Pred_inter(x,y)*5+Pred_Q(x,y)*3+4)»3,

[00199] где Pred(x,y) - целевое значение предсказания в местоположении (х,у) пикселя, Pred_inter(x,y) значение внешнего предсказания в местоположении (х,у) пикселя, a Pred_Q(x,y) значение внутреннего предсказания в местоположении (х,у) пикселя.[00199] where Pred(x,y) is the target prediction value at pixel location (x,y), Pred_inter(x,y) is the inter prediction value at pixel location (x,y), and Pred_Q(x,y) is the internal prediction value predictions at (x,y) pixel location.

[00200] Вариант 7 осуществления изобретения: в любом из вариантов 1-5 осуществления настоящего изобретения устройство кодирования/декодирования участвует в получении целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока. Ниже будет описана процедура реализации улучшенного фильтра внешнего предсказания (enhance interpf). Когда для текущего блока выполняют процедуру улучшенного фильтра внешнего предсказания, могут быть получены значение внешнего предсказания для текущего блока и восстановленное значение для восстановленных пикселей, смежных с текущим блоком (например, восстановленное значение для восстановленных пикселей в столбце слева от текущего блока и/или восстановленное значение для восстановленных пикселей в строке сверху от текущего блока), и определяют целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и восстановленным значением.[00200] Embodiment 7: In any of Embodiments 1 to 5 of the present invention, the encoding/decoding apparatus participates in obtaining a prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block. The procedure for implementing an enhanced inter-prediction filter (enhance interpf) will be described below. When the enhanced inter prediction filter procedure is performed on the current block, the inter prediction value for the current block and the reconstructed value for the reconstructed pixels adjacent to the current block can be obtained (for example, the reconstructed value for the reconstructed pixels in the column to the left of the current block and/or the reconstructed value for the reconstructed pixels in the row above the current block), and determining a prediction target value for the current block according to the external prediction value and the reconstructed value.

[00201] Улучшенный фильтр внешнего предсказания получают на основе фильтра внутреннего предсказания (Intra Prediction Filter, IPF). Путем добавления IPF в фильтр внешнего предсказания, может выполняться процедура улучшенного фильтра внешнего предсказания для текущего блока, в результате чего могут быть более эффективно устранены шум и неоднородность после компенсации движения. Поскольку улучшенный фильтр внешнего предсказания получают на основе IPF, сначала будет рассмотрен IPF-фильтр. Для IPF-фильтра может использоваться 1 бит, указывающий, разрешено ли кодирование текущего блока в режиме IPF, при этом, следует ли блок кодировать в режиме IPF, определяют на стадии RDO. Технология IPF заключается в выборе опорных пикселей согласно режиму внутреннего предсказания текущего блока, что может включать три описанных ниже случая.[00201] An improved inter prediction filter is derived from an internal prediction filter (IPF). By adding IPF to the inter-prediction filter, an improved inter-prediction filter procedure can be performed for the current block, whereby noise and ripple after motion compensation can be more effectively eliminated. Since the improved inter-prediction filter is derived from IPF, the IPF filter will be discussed first. The IPF filter may use 1 bit to indicate whether the current block is allowed to be encoded in IPF mode, and whether the block should be encoded in IPF mode is determined at the RDO stage. IPF technology is to select reference pixels according to the intra prediction mode of the current block, which may include the three cases described below.

[00202] Случай 1: для режима DC, планарного режима и билинейного режима, в качестве опорных пикселей используют восстановленные пиксели из левого столбца и восстановленные пиксели из верхней строки, и при этом используют фильтр с тремя отводами. К примеру, для выполнения процедуры IPF может использоваться следующая формула:[00202] Case 1: For DC mode, planar mode and bilinear mode, reconstructed pixels from the left column and reconstructed pixels from the top row are used as reference pixels, and a three-tap filter is used. For example, the following formula can be used to perform the IPF procedure:

P'(x,y)=f(x)⋅Р(-1,у)+f(y)⋅Р(х, -1)+(1-f(x)-f(у))⋅Р(х,у) P'(x,y)=f(x)⋅P(-1,y)+f(y)⋅P(x, -1)+(1-f(x)-f(y))⋅P( x,y)

[00203] где 0≤х,у<N, Р'(х,у) -значение внутреннего предсказания после фильтрации, Р(х,у) значение внутреннего предсказания, полученное с помощью обычного режима внутреннего предсказания, f(x) и f(y) - коэффициенты фильтра, а N размер текущего блока.[00203] where 0≤x,y<N, P'(x,y) is the intra prediction value after filtering, P(x,y) is the intra prediction value obtained using the normal intra prediction mode, f(x) and f (y) are the filter coefficients, and N is the size of the current block.

[00204] Случай 2: для вертикального режима предсказания в высокопроизводительной модели (High-Performance Model, НРМ) (например, режимы 3-18), в качестве опорных пикселей используют восстановленные пиксели в левом столбце, а также используют фильтр с двумя отводами. К примеру, для выполнения процедуры IPF может использоваться следующая формула:[00204] Case 2: For the vertical prediction mode in the High-Performance Model (HPM) (eg, modes 3-18), the reconstructed pixels in the left column are used as reference pixels, and a two-tap filter is also used. For example, the following formula can be used to perform the IPF procedure:

P'(x,y)=f(x)⋅Р(-1,У)+(1-f(x))⋅Pix.y),P'(x,y)=f(x)⋅Р(-1,У)+(1-f(x))⋅Pix.y),

[00205] где x<N, P'(x,y) может быть значением внутреннего предсказания после фильтрации, P(x,у) может быть значением внутреннего предсказания, полученным с помощью обычного режима внутреннего предсказания, f(x) и f(y) могут быть коэффициентами фильтра, а N - размер текущего блока.[00205] where x<N, P'(x,y) may be an intra prediction value after filtering, P(x,y) may be an intra prediction value obtained using a conventional intra prediction mode, f(x) and f( y) can be filter coefficients, and N is the size of the current block.

[00206] Случай 3: для горизонтального режима предсказания в НРМ (например, режимы 19-32), в качестве опорных пикселей используют восстановленные пиксели в верхней строке, а также используют фильтр с двумя отводами. К примеру, может использоваться следующая формула:[00206] Case 3: For the horizontal prediction mode in HPM (eg, modes 19-32), the reconstructed pixels in the top row are used as reference pixels, and a two-tap filter is also used. For example, the following formula can be used:

Р'(х,у)=f(у)⋅Р(х,-1)+(1-f(у))⋅Р(х,у)P'(x,y)=f(y)⋅P(x,-1)+(1-f(y))⋅P(x,y)

[00207] где у<N, Р'(х,у) может быть значением внутреннего предсказания после фильтрации, Р(х,у) может быть значением внутреннего предсказания, полученным с помощью обычного режима внутреннего предсказания, f(x) и (у) могут быть коэффициентами фильтра, а N размер текущего блока.[00207] where y<N, P'(x,y) may be an intra prediction value after filtering, P(x,y) may be an intra prediction value obtained using a conventional intra prediction mode, f(x) and (y ) can be filter coefficients, and N is the size of the current block.

[00208] В некоторых из примеров, для случаев 1, 2 и 3, чтобы исключить вычисления с плавающей точкой коэффициенты фильтров могут подвергаться обработке с фиксированной точкой. Например, формула IPF для случая 1 может быть заменена на приведенную ниже формулу. В этой формуле F(x) и F(y) - коэффициенты после обработки с фиксированной точкой, то есть f(x) и f(у) преобразованы в F(x) и F(y). Случаи 2 и 3 аналогичны этому и не будут здесь описаны.[00208] In some of the examples, for cases 1, 2 and 3, to eliminate floating point calculations, the filter coefficients may be subjected to fixed point processing. For example, the IPF formula for case 1 can be replaced with the formula below. In this formula, F(x) and F(y) are the coefficients after fixed-point processing, that is, f(x) and f(y) are converted to F(x) and F(y). Cases 2 and 3 are similar to this and will not be described here.

р'(х)=(F(x)⋅р(-1,у)+F(y)⋅р(х,-1)+(64-F(x)-F(y))⋅р(х)+32)»6p'(x)=(F(x)⋅p(-1,y)+F(y)⋅p(x,-1)+(64-F(x)-F(y))⋅p(x )+32)»6

[00209] В некоторых из примеров F(x) и F(y) могут быть коэффициентами фильтра (то есть коэффициентами фильтра после усиления). В таблице 2 показаны примеры коэффициентов фильтра, при этом они относятся одновременно к размерам блока и к расстоянию от опорных пикселей. В таблице 2 размер блока предсказания представляет собой ширину или высоту текущего блока, а расстояние от опорных пикселей представляет собой расстояние предсказания. В таблице 2 максимальное расстояние предсказания задано равным 10. На практике максимальное расстояние предсказания может быть больше, без ограничения настоящего изобретения в этом отношении.[00209] In some of the examples, F(x) and F(y) may be filter coefficients (that is, filter coefficients after amplification). Table 2 shows examples of filter coefficients, and they relate to both the block size and the distance from the reference pixels. In Table 2, the prediction block size represents the width or height of the current block, and the distance from the reference pixels represents the prediction distance. In Table 2, the maximum prediction distance is set to 10. In practice, the maximum prediction distance may be larger without limiting the present invention in this regard.

[00210] К примеру, в соответствии с фиг. 5, для местоположения А пикселя в первой строке и третьем столбце текущего блока, при условии, что опорными пикселями являются восстановленные пиксели в левом столбце, расстояние между местоположением А пикселя и опорными пикселями равно 3; если допустить, что размер текущего блока равен 4*4, коэффициент фильтра равен 2; если допустить, что размер текущего блока равен 8*8, коэффициент фильтра равен 14; если допустить, что размер текущего блока равен 16*16, коэффициент фильтра равен 19; если допустить, что размер текущего блока равен 32*32, коэффициент фильтра равен 21, и т.д. Для других местоположений пикселей способ определения коэффициентов пикселей аналогичен способу для местоположения А пикселя и не будет описан здесь.[00210] For example, in accordance with FIG. 5, for the pixel location A in the first row and third column of the current block, under the condition that the reference pixels are the reconstructed pixels in the left column, the distance between the pixel location A and the reference pixels is 3; if we assume that the current block size is 4*4, the filter coefficient is 2; if we assume that the current block size is 8*8, the filter coefficient is 14; if we assume that the current block size is 16*16, the filter coefficient is 19; assuming that the current block size is 32*32, the filter coefficient is 21, etc. For other pixel locations, the method for determining the pixel coefficients is similar to the method for pixel location A and will not be described here.

[00211] В некоторых из примеров, путем добавления IPF в фильтр внешнего предсказания может применяться улучшенный фильтр внешнего предсказания для текущего блока, то есть помимо фильтра внешнего предсказания добавляют новый способ фильтрации, а именно, улучшенный фильтр внешнего предсказания. Улучшенный фильтр внешнего предсказания позволяет повысить эффективность кодирования без изменения сложности кодирования и декодирования. Флаг фильтра внешнего предсказания может использоваться для указания, использовать ли улучшенный фильтр внешнего предсказания, и затем для указания выбранного типа фильтра может использоваться флаг индекса.[00211] In some of the examples, by adding an IPF to the inter-prediction filter, an improved inter-prediction filter can be applied to the current block, that is, in addition to the inter-prediction filter, a new filtering method is added, namely, an improved inter-prediction filter. The improved inter-prediction filter improves encoding efficiency without changing encoding and decoding complexity. An inter prediction filter flag may be used to indicate whether to use an enhanced inter prediction filter, and then an index flag may be used to indicate the selected filter type.

[00212] Фиг. 4 представляет собой блок-схему, иллюстрирующую процедуру декодирования с использованием улучшенного фильтра внешнего предсказания. В данном случае для примера выбрана процедура декодирования в устройстве декодирования, при этом процедура кодирования в устройстве кодирования аналогична ей. Улучшенный фильтр внешнего предсказания применяют между процедурой внешнего предсказания и процедурой восстановления. Улучшенный фильтр внешнего предсказания используют в основном для текущего блока в прямом режиме (не в режиме пропуска и не в режиме стандартного внешнего предсказания), при этом текущий блок не кодирован в режиме UMVE, или текущий блок не кодирован в аффинном режиме.[00212] FIG. 4 is a flowchart illustrating a decoding procedure using an improved inter prediction filter. In this case, the decoding procedure in the decoding device is chosen as an example, and the encoding procedure in the encoding device is similar to it. An improved inter prediction filter is applied between the inter prediction procedure and the reconstruction procedure. The enhanced inter prediction filter is used primarily on the current block in direct mode (not skip mode or standard inter prediction mode), where the current block is not UMVE encoded or the current block is not affine mode encoded.

[00213] Если для текущего блока должен использоваться улучшенный фильтр внешнего предсказания, сначала может использоваться режим внешнего предсказания для получения значения внешнего предсказания для текущего блока, и может быть получено восстановленное значение для восстановленных пикселей, смежных с текущим блоком (например, восстановленное значение для восстановленных пикселей в левом столбце от текущего блока и/или восстановленное значение для восстановленных пикселей в верхней строке от текущего блока). Затем определяют целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и восстановленным значением. На основе целевого значения предсказания для текущего блока выполняют процедуру восстановления. К примеру, может использоваться формула, приведенная для случая 3 выше, при этом принципы реализации остаются аналогичными, без ограничения настоящего изобретения в данном отношении.[00213] If an enhanced inter prediction filter is to be used for the current block, an inter prediction mode may first be used to obtain the inter prediction value for the current block, and a reconstructed value for reconstructed pixels adjacent to the current block may be obtained (e.g., a reconstructed value for reconstructed pixels in the left column from the current block and/or the reconstructed value for the reconstructed pixels in the top row from the current block). Then, a prediction target value for the current block is determined in accordance with the inter-prediction value and the reconstructed value. Based on the prediction target value for the current block, a reconstruction procedure is performed. For example, the formula given for case 3 above can be used, while the principles of implementation remain the same, without limiting the present invention in this regard.

[00214] В некоторых из примеров варианты 17 осуществления настоящего изобретения могут быть реализованы по отдельности или в комбинации. К примеру, варианты 1 и 2 осуществления настоящего изобретения могут быть реализованы в комбинации. Варианты 1 и 3 осуществления настоящего изобретения могут быть реализованы в комбинации. Варианты 2 и 3 осуществления настоящего изобретения могут быть реализованы в комбинации. Варианты 3 и 5 осуществления настоящего изобретения могут быть реализованы в комбинации. Варианты 1, 6 и 7 осуществления настоящего изобретения могут быть реализованы в комбинации. Выше указаны лишь некоторые из примеров, и комбинации вариантов осуществления настоящего изобретения в данном документе не ограничены.[00214] In some of the examples, embodiments 17 of the present invention may be implemented individually or in combination. For example, embodiments 1 and 2 of the present invention can be implemented in combination. Embodiments 1 and 3 of the present invention can be implemented in combination. Embodiments 2 and 3 of the present invention can be implemented in combination. Embodiments 3 and 5 of the present invention can be implemented in combination. Embodiments 1, 6 and 7 of the present invention can be implemented in combination. The above are just some of the examples, and the combinations of embodiments of the present invention herein are not limited.

[00215] На основе той же идеи изобретения, что и в рассмотренных выше способах, в вариантах осуществления настоящего изобретения предлагается оборудование для декодирования, применяемое в устройстве декодирования. Фиг. 6А представляет собой структурную схему, иллюстрирующую оборудование для декодирования. Оборудование содержит: модуль 611 получения, сконфигурированный, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, для анализа флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока; модуль 612 обработки, сконфигурированный, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, для получения целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока, и, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, для получения целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[00215] Based on the same inventive concept as the methods discussed above, embodiments of the present invention provide decoding equipment used in a decoding apparatus. Fig. 6A is a block diagram illustrating decoding equipment. The equipment includes: an acquisition module 611, configured, if the inter-prediction filter activation flag indicates that the current block is allowed to be encoded in the inter-prediction filter mode, and the current block satisfies the inter-prediction filter conditions, to analyze the inter-prediction filter flag for the current block from the data bitstream of the current block; a processing unit 612, configured, if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, to obtain a prediction target value for the current block by executing an inter prediction filter procedure for the current block, and if the inter prediction filter flag Prediction indicates that the filter type for the current block is an improved inter prediction filter, to obtain a target prediction value for the current block by executing an improved inter prediction filter procedure for the current block.

[00216] Модуль 611 получения также сконфигурирован для анализа флага активации фильтра внешнего предсказания из данных битового потока, при этом флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, или на то, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания.[00216] The acquisition unit 611 is also configured to analyze an inter prediction filter enable flag from the bitstream data, wherein the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, or that the current block is not allowed to encode in inter-prediction filter mode.

[00217] В некоторых из примеров, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, когда флаг фильтра внешнего предсказания принимает первое значение, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является тип «без фильтра»; когда флаг фильтра внешнего предсказания принимает второе значение, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; когда флаг фильтра внешнего предсказания принимает третье значение, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания.[00217] In some of the examples, if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, when the inter prediction filter flag takes the first value, the inter prediction filter flag indicates that the filter type for the current block is of the “no filter” type; when the inter prediction filter flag takes the second value, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter; when the inter prediction filter flag takes the third value, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter.

[00218] Текущий блок включает компонент яркости и компонент цветности. Модуль 612 обработки при получении целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока также сконфигурирован для получения целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; или для получения целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; или для получения целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости и для получения целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00218] The current block includes a luma component and a chroma component. The processing unit 612, when obtaining a target prediction value for the current block by executing an improved inter prediction filter procedure for the current block, is also configured to obtain a target prediction value for the luminance component by executing an improved inter prediction filter procedure for the luminance component; or to obtain a target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure for the chrominance component; or for obtaining a target prediction value for the luminance component by performing an improved inter prediction filter procedure for the luminance component, and for obtaining a target prediction value for the chrominance component by performing an improved inter prediction filter procedure for the chrominance component.

[00219] Модуль 612 обработки при получении целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности также сконфигурирован для получения значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности, и определения целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.[00219] The processing unit 612, when obtaining a target prediction value for a chrominance component by executing an enhanced inter prediction filter procedure for a chrominance component, is also configured to obtain an inter prediction value for the chrominance component and a reconstructed chrominance value for reconstructed pixels adjacent to the chrominance component, and determine the target prediction values for the chrominance component according to the inter-prediction value for the chrominance component and the reconstructed chrominance value.

[00220] На основе той же идеи изобретения, что и в рассмотренных выше способах, в вариантах осуществления настоящего изобретения предлагается оборудование для кодирования, применяемое в устройстве кодирования. Фиг. 6А представляет собой структурную схему, иллюстрирующую оборудование для кодирования. Оборудование содержит: модуль 621 кодирования, сконфигурированный, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, для кодирования флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока, при этом, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; или, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания; модуль 622 передачи, сконфигурированный для передачи данных битового потока текущего блока.[00220] Based on the same inventive concept as the methods discussed above, embodiments of the present invention provide encoding equipment used in an encoding device. Fig. 6A is a block diagram illustrating encoding equipment. The equipment includes: an encoding unit 621, configured, if the inter-prediction filter activation flag indicates that the current block is allowed to be encoded in the inter-prediction filter mode, and the current block satisfies the inter-prediction filter conditions, to encode the inter-prediction filter flag for the current block in the data a bit stream of the current block according to a filter type for the current block, wherein if the filter type for the current block is an inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter; or, if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter; a transmission module 622 configured to transmit bit stream data of the current block.

[00221] Модуль 621 кодирования также сконфигурирован для кодирования флага активации фильтра внешнего предсказания из данных битового потока, при этом флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, или на то, что текущий блок не разрешено кодировать в режиме фильтра внешнего предсказания.[00221] The encoding unit 621 is also configured to encode an inter prediction filter enable flag from the bitstream data, wherein the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode, or that the current block is not allowed to encode in inter-prediction filter mode.

[00222] Модуль 621 кодирования при кодировании флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока также сконфигурирован, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, когда типом фильтра для текущего блока является тип «без фильтра», для кодирования флага фильтра внешнего предсказания как первого значения в данных битового потока текущего блока; когда типом фильтра для текущего блока является фильтр внешнего предсказания, для кодирования флага фильтра внешнего предсказания как второго значения в данных битового потока текущего блока; когда типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, для кодирования флага фильтра внешнего предсказания как третьего значения в данных битового потока текущего блока.[00222] The encoding unit 621, when encoding the inter prediction filter flag for the current block in the bitstream data of the current block according to the filter type for the current block, is also configured if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in the filter mode inter prediction, when the filter type for the current block is a “no filter” type, for encoding the inter prediction filter flag as a first value in the bitstream data of the current block; when the filter type of the current block is an inter prediction filter, for encoding the inter prediction filter flag as a second value in the bitstream data of the current block; when the filter type for the current block is an enhanced inter prediction filter, to encode the inter prediction filter flag as a third value in the bitstream data of the current block.

[00223] Модуль 621 кодирования также сконфигурирован для получения первого целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока; получения второго целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока; определения значения внешнего предсказания для текущего блока в качестве третьего целевого значения предсказания для текущего блока, без выполнения процедуры фильтрации для текущего блока; определения типа фильтра для текущего блока в соответствии со значением целевой функции «скорость - искажения», соответствующим первому целевому значению предсказания, значением целевой функции «скорость -искажения», соответствующим второму целевому значению предсказания, и значением целевой функции «скорость искажения», соответствующим третьему целевому значению предсказания.[00223] The encoding unit 621 is also configured to obtain a first prediction target value for the current block by executing an inter prediction filter procedure for the current block; obtaining a second prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block; determining the external prediction value for the current block as a third target prediction value for the current block, without performing a filtering procedure for the current block; determining the filter type for the current block in accordance with the value of the rate-distortion objective function corresponding to the first target prediction value, the value of the rate-distortion objective function corresponding to the second target prediction value, and the value of the rate-distortion objective function corresponding to the third target prediction value.

[00224] Текущий блок включает компонент яркости и компонент цветности. Модуль 621 кодирования при получении второго целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока также сконфигурирован для получения второго целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; или получения второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; или получения второго целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости и получения второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.[00224] The current block includes a luma component and a chrominance component. The encoding unit 621, when obtaining a second target prediction value for the current block by executing an improved inter prediction filter procedure for the current block, is also configured to obtain a second target prediction value for the luminance component by executing an improved inter prediction filter procedure for the luminance component; or obtaining a second target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure for the chrominance component; or obtaining a second target prediction value for the luminance component by performing an improved inter prediction filter procedure for the luminance component and obtaining a second target prediction value for the chrominance component by performing an improved inter prediction filter procedure for the chroma component.

[00225] Модуль 621 кодирования при получении второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности также сконфигурирован для получения значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности, и определения второго целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.[00225] The encoding unit 621, upon obtaining the second target prediction value for the chrominance component by executing the enhanced inter prediction filter procedure for the chrominance component, is also configured to obtain the inter prediction value for the chrominance component and the reconstructed chrominance value for the reconstructed pixels adjacent to the chrominance component, and determine a second target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the recovered chrominance value.

[00226] На основе той же идеи изобретения, что и в рассмотренных выше способах, в вариантах осуществления настоящего изобретения предлагается оборудование для кодирования и декодирования, применяемое в устройстве декодирования или в устройстве кодирования. Фиг. 6С представляет собой структурную схему, иллюстрирующую оборудование для кодирования и декодирования. Оборудование содержит: модуль 631 обработки, сконфигурированный, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, для получения целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; модуль 632 определения, сконфигурированный для определения целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[00226] Based on the same inventive concept as the methods discussed above, embodiments of the present invention provide encoding and decoding equipment used in a decoding device or an encoding device. Fig. 6C is a block diagram illustrating encoding and decoding equipment. The equipment includes: a processing unit 631, configured, if it is determined that an enhanced inter-prediction filter is activated for a current block, to obtain a target prediction value for a chrominance component by executing an enhanced inter-prediction filter procedure for the chrominance component of the current block; a determination module 632 configured to determine a prediction target value for the current block in accordance with the prediction target value for the chrominance component.

[00227] Модуль 631 обработки также сконфигурирован, если компонент цветности текущего блока удовлетворяет условиям улучшенного фильтра внешнего предсказания, для получения целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности, при этом то, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, включает, не ограничиваясь этим, то, что компонент цветности текущего блока принадлежит тому же типу дерева разбиения, что и компонент яркости текущего блока.[00227] Processing unit 631 is also configured, if the chrominance component of the current block satisfies the conditions of an improved inter prediction filter, to obtain a target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure on the chrominance component, such that the chrominance component satisfies the conditions of the improved inter-prediction filter includes, but is not limited to, that the chroma component of the current block belongs to the same partition tree type as the luminance component of the current block.

[00228] Модуль 631 обработки также сконфигурирован для получения значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности, и определения целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.[00228] The processing unit 631 is also configured to obtain an inter-prediction value for the chrominance component and a reconstructed chrominance value for reconstructed pixels adjacent to the chrominance component, and determine a target prediction value for the chrominance component in accordance with the inter-prediction value for the chrominance component and the reconstructed chrominance value. .

[00229] Модуль 631 обработки также сконфигурирован для получения целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости текущего блока; при этом модуль 632 определения также сконфигурирован для определения целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности и целевым значением предсказания для компонента яркости.[00229] Processing unit 631 is also configured to obtain a prediction target value for the luminance component by executing an enhanced inter prediction filter procedure for the luminance component of the current block; wherein the determining unit 632 is also configured to determine a prediction target value for the current block in accordance with the prediction target value for the chrominance component and the prediction target value for the luma component.

[00230] В вариантах осуществления настоящего изобретения предлагается устройство декодирования (в некоторых из примеров устройство декодирования может быть устройством видеодекодирования). На аппаратном уровне структурная аппаратная схема устройства декодирования может соответствовать фиг. 7А и включать процессор 711 и машиночитаемый носитель 712 данных. На машиночитаемом носителе 712 данных хранятся машиночитаемые инструкции, которые могут исполняться процессором 711. Процессор 711 сконфигурирован для исполнения машиночитаемых инструкций для осуществления способов, описанных в приведенных выше вариантах осуществления настоящего изобретения. К примеру, процессор может использоваться для исполнения машиночитаемых инструкций для выполнения следующих шагов: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, анализ флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, получение целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, получение целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока.[00230] In embodiments of the present invention, a decoding device is provided (in some of the examples, the decoding device may be a video decoding device). At the hardware level, a hardware block diagram of a decoding device may correspond to FIG. 7A and include a processor 711 and a computer readable storage medium 712. Computer readable storage medium 712 stores computer readable instructions that can be executed by processor 711. Processor 711 is configured to execute computer readable instructions to implement the methods described in the above embodiments of the present invention. For example, the processor may be used to execute machine-readable instructions to perform the following steps: If the inter-prediction filter enable flag indicates that the current block is permitted to be encoded in inter-prediction filter mode, and the current block satisfies the conditions of the inter-prediction filter, parsing the inter-prediction filter flag for the current block from the bitstream data of the current block; if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, obtaining a prediction target value for the current block by executing an inter prediction filter procedure for the current block; if the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, obtaining a target prediction value for the current block by executing an enhanced inter prediction filter procedure for the current block.

[00231] Альтернативно, процессор может использоваться для исполнения машиночитаемых инструкций для выполнения следующих шагов: если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; и определение целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[00231] Alternatively, the processor may be used to execute machine-readable instructions to perform the following steps: if it is determined that an enhanced inter-prediction filter is activated for the current block, obtaining a target prediction value for the chrominance component by executing an enhanced inter-prediction filter procedure for the chrominance component of the current block; and determining a prediction target value for the current block in accordance with the prediction target value for the chrominance component.

[00232] В вариантах осуществления настоящего изобретения предлагается устройство кодирования (в некоторых из примеров устройство кодирования может быть устройством видеокодирования). На аппаратном уровне структурная аппаратная схема устройства кодирования может соответствовать фиг. 7В и включать процессор 721 и машиночитаемый носитель 722 данных. На машиночитаемом носителе 722 данных хранятся машиночитаемые инструкции, которые могут исполняться процессором 721. Процессор 721 сконфигурирован для исполнения машиночитаемых инструкций для осуществления способов, описанных в приведенных выше вариантах осуществления настоящего изобретения. К примеру, процессор может использоваться для исполнения машиночитаемых инструкций для выполнения следующих шагов: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания, и текущий блок удовлетворяет условиям фильтра внешнего предсказания, кодирование флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока, при этом, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; или, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания. Альтернативно, процессор может использоваться для исполнения машиночитаемых инструкций для выполнения следующих шагов: если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока; и определение целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности.[00232] In embodiments of the present invention, an encoding device is provided (in some of the examples, the encoding device may be a video encoding device). At the hardware level, a hardware block diagram of an encoding device may correspond to FIG. 7B and include a processor 721 and a computer readable storage medium 722. Computer readable storage medium 722 stores computer readable instructions that can be executed by processor 721. Processor 721 is configured to execute computer readable instructions to implement the methods described in the above embodiments of the present invention. For example, the processor may be used to execute machine-readable instructions to perform the following steps: If the inter-prediction filter enable flag indicates that the current block is permitted to be encoded in inter-prediction filter mode, and the current block satisfies inter-prediction filter conditions, encoding the inter-prediction filter flag for the current block in the bitstream data of the current block according to the filter type for the current block, wherein if the filter type for the current block is an inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter ; or, if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter. Alternatively, the processor may be used to execute machine-readable instructions to perform the following steps: if it is determined that an enhanced inter-prediction filter is activated for the current block, obtaining a target prediction value for the chrominance component by executing an enhanced inter-prediction filter procedure for the chrominance component of the current block; and determining a prediction target value for the current block in accordance with the prediction target value for the chrominance component.

[00233] На основе той же идеи изобретения, что и в рассмотренных выше способах, в вариантах осуществления настоящего изобретения предлагается устройство камеры. Устройство камеры может включать оборудование для кодирования и/или оборудование для декодирования в соответствии с любым из рассмотренных выше вариантов осуществления настоящего изобретения.[00233] Based on the same inventive concept as the methods discussed above, embodiments of the present invention provide a camera device. The camera device may include encoding equipment and/or decoding equipment in accordance with any of the above-discussed embodiments of the present invention.

[00234] На основе той же идеи изобретения, что и в рассмотренных выше способах, в вариантах осуществления настоящего изобретения предлагается также машиночитаемый носитель данных. На машиночитаемом носителе данных хранятся компьютерные инструкции. Когда компьютерные инструкции исполняются процессором, может осуществляться способ декодирования, способ кодирования или способ кодирования и декодирования, описанные в приведенных выше вариантах осуществления настоящего изобретения, без ограничения настоящего изобретения в этом отношении.[00234] Based on the same inventive concept as the methods discussed above, embodiments of the present invention also provide a computer-readable storage medium. Computer instructions are stored on a machine-readable storage medium. When computer instructions are executed by the processor, the decoding method, encoding method, or encoding and decoding method described in the above embodiments of the present invention may be carried out, without limiting the present invention in this regard.

[00235] Системы, оборудование, модули или блоки, описанные в приведенных выше вариантах осуществления настоящего изобретения, могут быть реализованы при помощи компьютерных чипов или объектов, или при помощи изделий, имеющих заданные функции. Типовым устройством реализации является компьютер, при этом конкретной формой компьютера может быть персональный компьютер, портативный компьютер, сотовый телефон, телефон с камерой, смартфон, карманный персональный компьютер, медиапроигрыватель, навигационное устройство, устройство приема и передачи электронной почты, планшетный компьютер, носимое устройство или любая комбинация этих устройств.[00235] The systems, equipment, modules or units described in the above embodiments of the present invention may be implemented by computer chips or objects, or by products having specified functions. A typical implementation device is a computer, and the specific form of the computer may be a personal computer, a laptop computer, a cell phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a tablet computer, a wearable device, or any combination of these devices.

[00236] Для простоты при описании упомянутых выше устройств их различные блоки разделены в зависимости от их функций. При практической реализации настоящего изобретения функции каждого из блоков могут быть реализованы в виде аппаратного и/или программного обеспечения.[00236] For simplicity in describing the above-mentioned devices, their various blocks are divided depending on their functions. In the practical implementation of the present invention, the functions of each of the blocks can be implemented in the form of hardware and/or software.

[00237] Специалистам в данной области техники понятно, что варианты осуществления настоящего изобретения могут быть реализованы в виде способов, систем или компьютерных программных продуктов. Настоящее изобретение может принимать форму полностью аппаратных вариантов его осуществления, полностью программных вариантов его осуществления или вариантов осуществления, объединяющих программные и аппаратные аспекты. При этом варианты осуществления настоящего изобретения могут принимать форму компьютерного программного продукта, реализованного на одном или более подходящих носителях данных (включая, не ограничиваясь этим, дисковые накопители, CD-ROM, оптические накопители и т.п.), которые содержат машиночитаемые программные коды.[00237] Those skilled in the art will appreciate that embodiments of the present invention may be implemented as methods, systems, or computer program products. The present invention may take the form of all-hardware embodiments, all-software embodiments, or embodiments combining software and hardware aspects. Embodiments of the present invention may take the form of a computer program product embodied on one or more suitable storage media (including, but not limited to, disk drives, CD-ROMs, optical drives, and the like) that contain machine-readable program codes.

[00238] Выше были рассмотрены лишь возможные варианты осуществления настоящего изобретения, которые не ограничивают изобретение. Специалистам в данной области техники понятно, что настоящее изобретение может допускать множество различных изменений и модификаций. Все модификации, эквивалентные замены, улучшения и т.п., выполненные в пределах сущности настоящего изобретения, находятся в объеме формулы изобретения.[00238] The above discussed only possible embodiments of the present invention, which do not limit the invention. Those skilled in the art will appreciate that the present invention is subject to many different changes and modifications. All modifications, equivalent substitutions, improvements, etc. made within the spirit of the present invention are within the scope of the claims.

Claims (78)

1. Способ декодирования, выполняемый устройством декодирования и отличающийся тем, что он включает:1. A decoding method performed by a decoding device and characterized in that it includes: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и текущий блок удовлетворяет условиям фильтра внешнего предсказания, анализ (211) флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока;if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in the inter prediction filter mode and the current block satisfies the conditions of the inter prediction filter, parsing (211) the inter prediction filter flag for the current block from the bit stream data of the current block; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, получение (212) целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока;if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, obtaining (212) a prediction target value for the current block by executing an inter prediction filter procedure for the current block; если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, получение (213) целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока;if the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, obtaining (213) a prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block; при этом получение (213) целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока включает:wherein obtaining (213) a target prediction value for the current block by performing an enhanced inter prediction filter procedure for the current block includes: получение значения внешнего предсказания для текущего блока и восстановленного значения для восстановленных пикселей, смежных с текущим блоком; иobtaining an external prediction value for the current block and a reconstructed value for reconstructed pixels adjacent to the current block; And определение целевого значения предсказания для текущего блока в соответствии со значением внешнего предсказания и упомянутым восстановленным значением.determining a prediction target value for the current block in accordance with the inter-prediction value and said reconstructed value. 2. Способ по п. 1, в котором текущий блок включает компонент яркости и компонент цветности, при этом получение целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока включает:2. The method of claim 1, wherein the current block includes a luma component and a chrominance component, wherein obtaining a target prediction value for the current block by performing an enhanced inter prediction filter procedure for the current block includes: получение целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; илиobtaining a target prediction value for the luminance component by executing an improved inter-prediction filter procedure for the luminance component; or получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; илиobtaining a target prediction value for the chrominance component by executing an enhanced inter-prediction filter procedure for the chrominance component; or получение целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости и получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.obtaining a target prediction value for the luminance component by performing an improved inter prediction filter procedure for the luminance component; and obtaining a target prediction value for the chrominance component by performing an improved inter prediction filter procedure for the chroma component. 3. Способ по п. 2, в котором получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности включает:3. The method of claim 2, wherein obtaining a target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure for the chrominance component comprises: если компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности;if the chrominance component satisfies the conditions of the improved inter-prediction filter, obtaining a target prediction value for the chrominance component by executing an improved inter-prediction filter procedure for the chrominance component; при этом то, что компонент цветности удовлетворяет условиям улучшенного фильтра внешнего предсказания, включает то, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости.wherein, the chroma component satisfying the conditions of the enhanced inter prediction filter includes the chroma component belonging to the same partition tree type as the luma component. 4. Способ по п. 3, в котором то, что компонент цветности принадлежит тому же типу дерева разбиения, что и компонент яркости, включает то, что текущий блок не удовлетворяет ни одному из следующих условий:4. The method of claim 3, wherein the chroma component belongs to the same partition tree type as the luma component includes that the current block does not satisfy any of the following conditions: текущий блок имеет тип разбиения квадродерева (QT), при этом ширина или высота текущего блока равна 8;the current block has a quadtree (QT) partition type, and the width or height of the current block is 8; текущий блок имеет тип разбиения вертикального двоичного дерева (ВТ_VER), при этом ширина текущего блока равна 8;the current block has a vertical binary tree partition type (VT_VER), and the width of the current block is 8; текущий блок имеет тип разбиения горизонтального двоичного дерева (ВТ_HOR), при этом высота текущего блока равна 8;the current block has a horizontal binary tree partition type (BT_HOR), and the height of the current block is 8; текущий блок имеет тип разбиения вертикального расширенного квадродерева (EQT_VER), при этом ширина текущего блока равна 16;the current block has a partition type of vertical extended quadtree (EQT_VER), and the width of the current block is 16; текущий блок имеет тип разбиения вертикального расширенного квадродерева (EQT_VER), при этом высота текущего блока равна 8;the current block has a partition type of vertical extended quadtree (EQT_VER), and the height of the current block is 8; текущий блок имеет тип разбиения горизонтального расширенного квадродерева (EQT_HOR), при этом высота текущего блока равна 16; иthe current block has a splitting type of horizontal extended quadtree (EQT_HOR), and the height of the current block is 16; And текущий блок имеет тип разбиения горизонтального расширенного квадродерева (EQT_HOR), при этом ширина текущего блока равна 8.The current block has a split type of horizontal extended quadtree (EQT_HOR), and the width of the current block is 8. 5. Способ по п. 2, в котором получение целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности включает:5. The method of claim 2, wherein obtaining a target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure for the chrominance component comprises: получение значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности;obtaining an inter-prediction value for the chrominance component and a reconstructed chrominance value for the reconstructed pixels adjacent to the chrominance component; определение целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.determining a target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the reconstructed chrominance value. 6. Способ кодирования, выполняемый устройством кодирования и отличающийся тем, что он включает:6. An encoding method performed by an encoding device and characterized in that it includes: если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и текущий блок удовлетворяет условиям фильтра внешнего предсказания, кодирование (221) флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока,if the inter prediction filter enable flag indicates that the current block is allowed to be encoded in inter prediction filter mode and the current block satisfies the conditions of the inter prediction filter, encoding (221) the inter prediction filter flag for the current block in the bitstream data of the current block according to the type filter for the current block, при этом, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания; или,wherein, if the filter type for the current block is an inter-prediction filter, the inter-prediction filter flag indicates that the filter type for the current block is an inter-prediction filter; or, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания;if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter; при этом, если для текущего блока используется улучшенный фильтр внешнего предсказания, используют режим внешнего предсказания для получения значения внешнего предсказания для текущего блока, получают восстановленное значение для восстановленных пикселей, смежных с текущим блоком, и определяют целевое значение предсказания для текущего блока в соответствии со значением внешнего предсказания и упомянутым восстановленным значением.wherein, if an enhanced inter prediction filter is used for the current block, an inter prediction mode is used to obtain an inter prediction value for the current block, a reconstructed value for reconstructed pixels adjacent to the current block is obtained, and a prediction target value for the current block is determined in accordance with the value external prediction and said reconstructed value. 7. Способ по п. 6, в котором перед кодированием флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока способ также включает:7. The method of claim 6, wherein before encoding the inter prediction filter flag for the current block in the bitstream data of the current block according to the filter type for the current block, the method further includes: получение первого целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока;obtaining a first prediction target value for the current block by executing an inter-prediction filter procedure for the current block; получение второго целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока;obtaining a second prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block; определение значения внешнего предсказания для текущего блока в качестве третьего целевого значения предсказания для текущего блока, без выполнения процедуры фильтрации для текущего блока;determining the external prediction value for the current block as a third target prediction value for the current block, without performing a filtering procedure for the current block; определение типа фильтра для текущего блока в соответствии со значением целевой функции «скорость искажения», соответствующим первому целевому значению предсказания, значением целевой функции «скорость - искажения», соответствующим второму целевому значению предсказания, и значением целевой функции «скорость - искажения», соответствующим третьему целевому значению предсказания;determining the filter type for the current block in accordance with the value of the rate-distortion objective function corresponding to the first target prediction value, the value of the rate-distortion objective function corresponding to the second target prediction value, and the value of the rate-distortion objective function corresponding to the third target prediction value; при этом значение целевой функции «скорость - искажения» получают на основе функции «скорость - искажения»:in this case, the value of the “speed - distortion” objective function is obtained based on the “speed - distortion” function: J(режим)=D+λ*R,J(mode)=D+λ*R, где J представляет значение целевой функции «скорость - искажения», D представляет искажение, λ - множитель Лагранжа, a R - фактическое количество битов, необходимых для кодирования блока изображения в режиме.where J represents the value of the rate-distortion objective function, D represents the distortion, λ is the Lagrange multiplier, and R is the actual number of bits required to encode the image block in the mode. 8. Способ по п. 7, в котором текущий блок включает компонент яркости и компонент цветности, при этом получение второго целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока включает:8. The method of claim 7, wherein the current block includes a luma component and a chrominance component, wherein obtaining a second target prediction value for the current block by performing an enhanced inter prediction filter procedure for the current block comprises: получение второго целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости; илиobtaining a second target prediction value for the luminance component by performing an improved inter prediction filter procedure for the luminance component; or получение второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности; илиobtaining a second target prediction value for the chrominance component by executing an enhanced inter prediction filter procedure for the chrominance component; or получение второго целевого значения предсказания для компонента яркости путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента яркости и получение второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности.obtaining a second target prediction value for the luminance component by performing an improved inter prediction filter procedure for the luminance component; and obtaining a second target prediction value for the chrominance component by performing an improved inter prediction filter procedure for the chroma component. 9. Способ по п. 8, в котором получение второго целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности включает:9. The method of claim 8, wherein obtaining the second target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure for the chrominance component comprises: получение значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности;obtaining an inter-prediction value for the chrominance component and a reconstructed chrominance value for the reconstructed pixels adjacent to the chrominance component; определение второго целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.determining a second target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the recovered chrominance value. 10. Способ кодирования и декодирования, выполняемый устройством кодирования или устройством декодирования и отличающийся тем, что он включает:10. An encoding and decoding method performed by an encoding device or a decoding device and characterized in that it includes: если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, получение (231) целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока;if it is determined that the enhanced inter prediction filter is activated for the current block, obtaining (231) a target prediction value for the chrominance component by executing the enhanced inter prediction filter procedure for the chrominance component of the current block; определение (232) целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности;determining (232) a prediction target value for the current block in accordance with the prediction target value for the chrominance component; при этом получение (231) целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока включает:wherein obtaining (231) a target prediction value for the chrominance component by performing an enhanced inter prediction filter procedure for the chrominance component of the current block includes: получение значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности; иobtaining an inter-prediction value for the chrominance component and a reconstructed chrominance value for the reconstructed pixels adjacent to the chrominance component; And определение целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и восстановленным значением цветности.determining a target prediction value for the chrominance component according to the inter-prediction value for the chrominance component and the reconstructed chrominance value. 11. Оборудование для декодирования, применяемое в устройстве декодирования и отличающееся тем, что оно содержит:11. Decoding equipment used in a decoding device and characterized in that it contains: модуль (611) получения, сконфигурированный, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и текущий блок удовлетворяет условиям фильтра внешнего предсказания, для анализа флага фильтра внешнего предсказания для текущего блока из данных битового потока текущего блока;an acquisition module (611) configured, if the inter prediction filter activation flag indicates that the current block is allowed to be encoded in the inter prediction filter mode and the current block satisfies the inter prediction filter conditions, to analyze the inter prediction filter flag for the current block from the bitstream data current block; модуль (612) обработки, сконфигурированный:processing module (612), configured: если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, для получения целевого значения предсказания для текущего блока путем выполнения процедуры фильтра внешнего предсказания для текущего блока, и,if the inter prediction filter flag indicates that the filter type for the current block is an inter prediction filter, to obtain a prediction target value for the current block by executing an inter prediction filter procedure for the current block, and, если флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, для получения целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока;if the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter, for obtaining a target prediction value for the current block by executing an enhanced inter prediction filter procedure for the current block; при этом при получении целевого значения предсказания для текущего блока путем выполнения процедуры улучшенного фильтра внешнего предсказания для текущего блока модуль (612) обработки также сконфигурирован для:wherein, upon obtaining a prediction target value for the current block by executing an enhanced inter prediction filter procedure for the current block, the processing module 612 is also configured to: получения значения внешнего предсказания для текущего блока и восстановленного значения для восстановленных пикселей, смежных с текущим блоком; иobtaining an inter-prediction value for the current block and a reconstructed value for reconstructed pixels adjacent to the current block; And определения целевого значения предсказания для текущего блока в соответствии со значением внешнего предсказания и упомянутым восстановленным значением.determining a prediction target value for the current block in accordance with the inter prediction value and said reconstructed value. 12. Оборудование для кодирования, применяемое в устройстве кодирования и отличающееся тем, что оно содержит:12. Encoding equipment used in an encoding device and characterized in that it contains: модуль (621) кодирования, сконфигурированный, если флаг активации фильтра внешнего предсказания указывает на то, что текущий блок разрешено кодировать в режиме фильтра внешнего предсказания и текущий блок удовлетворяет условиям фильтра внешнего предсказания, для кодирования флага фильтра внешнего предсказания для текущего блока в данных битового потока текущего блока в соответствии с типом фильтра для текущего блока,an encoding unit (621) configured, if the inter prediction filter activation flag indicates that the current block is allowed to be encoded in inter prediction filter mode and the current block satisfies inter prediction filter conditions, to encode the inter prediction filter flag for the current block in the bitstream data the current block in accordance with the filter type for the current block, при этом,wherein, если типом фильтра для текущего блока является фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является фильтр внешнего предсказания, или,if the filter type for the current block is an inter-prediction filter, the inter-prediction filter flag indicates that the filter type for the current block is an inter-prediction filter, or, если типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания, флаг фильтра внешнего предсказания указывает на то, что типом фильтра для текущего блока является улучшенный фильтр внешнего предсказания;if the filter type for the current block is an enhanced inter prediction filter, the inter prediction filter flag indicates that the filter type for the current block is an enhanced inter prediction filter; модуль (622) передачи, сконфигурированный для передачи данных битового потока текущего блока;a transmission module (622) configured to transmit bit stream data of the current block; при этом, если для текущего блока используется улучшенный фильтр внешнего предсказания, режим внешнего предсказания используется для получения значения внешнего предсказания текущего блока, получают восстановленное значение для восстановленных пикселей, смежных с текущим блоком, и целевое значение предсказания для текущего блока определяется в соответствии со значением внешнего предсказания и упомянутым восстановленным значением.wherein, if the enhanced inter prediction filter is used for the current block, the inter prediction mode is used to obtain the inter prediction value of the current block, the reconstructed value for the reconstructed pixels adjacent to the current block is obtained, and the target prediction value for the current block is determined according to the external prediction value predictions and the said reconstructed value. 13. Оборудование для кодирования и декодирования, применяемое в устройстве кодирования или в устройстве декодирования и отличающееся тем, что оно содержит:13. Encoding and decoding equipment used in an encoding device or a decoding device and characterized in that it contains: модуль (631) обработки, сконфигурированный, если определено, что улучшенный фильтр внешнего предсказания активирован для текущего блока, для получения целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока;a processing module (631), configured, if it is determined that the enhanced inter prediction filter is activated for the current block, to obtain a target prediction value for the chrominance component by executing the enhanced inter prediction filter procedure for the chrominance component of the current block; модуль (632) определения, сконфигурированный для определения целевого значения предсказания для текущего блока в соответствии с целевым значением предсказания для компонента цветности;a determination module (632) configured to determine a prediction target value for the current block in accordance with the prediction target value for the chrominance component; при этом при получении целевого значения предсказания для компонента цветности путем выполнения процедуры улучшенного фильтра внешнего предсказания для компонента цветности текущего блока модуль (631) обработки сконфигурирован для:wherein, upon obtaining a target prediction value for a chrominance component by executing an enhanced inter-prediction filter procedure for the chrominance component of the current block, the processing module (631) is configured to: получения значения внешнего предсказания для компонента цветности и восстановленного значения цветности для восстановленных пикселей, смежных с компонентом цветности; иobtaining an inter-prediction value for the chrominance component and a reconstructed chrominance value for the reconstructed pixels adjacent to the chrominance component; And определения целевого значения предсказания для компонента цветности в соответствии со значением внешнего предсказания для компонента цветности и упомянутым восстановленным значением цветности.determining a target prediction value for the chrominance component in accordance with the inter-prediction value for the chrominance component and said reconstructed chrominance value. 14. Устройство декодирования, отличающееся тем, что оно содержит:14. A decoding device, characterized in that it contains: машиночитаемый носитель (712) данных, на котором хранятся машиночитаемые инструкции; иa computer-readable storage medium (712) on which computer-readable instructions are stored; And процессор (711) для исполнения машиночитаемых инструкций для выполнения способа по любому из пп. 1-5.a processor (711) for executing machine-readable instructions for performing the method of any one of claims. 1-5. 15. Устройство кодирования, отличающееся тем, что оно содержит:15. Encoding device, characterized in that it contains: машиночитаемый носитель (722) данных, на котором хранятся машиночитаемые инструкции; иa computer-readable storage medium (722) on which computer-readable instructions are stored; And процессор (721) для исполнения машиночитаемых инструкций для выполнения способа по любому из пп. 6-9.a processor (721) for executing machine-readable instructions for performing the method of any one of claims. 6-9.
RU2022126916A 2020-03-25 2021-03-23 Methods, equipment and devices for decoding, encoding and encoding/decoding RU2810727C1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010220367.X 2020-03-25

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2023134877A Division RU2023134877A (en) 2020-03-25 2021-03-23 Methods, equipment and devices for decoding, encoding and encoding/decoding

Publications (1)

Publication Number Publication Date
RU2810727C1 true RU2810727C1 (en) 2023-12-28

Family

ID=

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2543953C2 (en) * 2010-04-12 2015-03-10 Квэлкомм Инкорпорейтед Mixed tap filters
RU2579688C2 (en) * 2011-02-23 2016-04-10 Квэлкомм Инкорпорейтед Multimetric filtration
US10003805B2 (en) * 2013-07-01 2018-06-19 Samsung Electronics Co., Ltd. Video encoding and decoding method accompanied with filtering, and device thereof
US20190045183A1 (en) * 2015-09-06 2019-02-07 Mediatek Inc. Method and apparatus of adaptive inter prediction in video coding
CN107896330B (en) * 2017-11-29 2019-08-13 北京大学深圳研究生院 It is a kind of in frame and the filtering method of inter-prediction
US20190268594A1 (en) * 2016-11-28 2019-08-29 Electronics And Telecommunications Research Institute Method and device for filtering
WO2019172705A1 (en) * 2018-03-09 2019-09-12 한국전자통신연구원 Image encoding/decoding method and apparatus using sample filtering

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2543953C2 (en) * 2010-04-12 2015-03-10 Квэлкомм Инкорпорейтед Mixed tap filters
RU2579688C2 (en) * 2011-02-23 2016-04-10 Квэлкомм Инкорпорейтед Multimetric filtration
US10003805B2 (en) * 2013-07-01 2018-06-19 Samsung Electronics Co., Ltd. Video encoding and decoding method accompanied with filtering, and device thereof
US20190045183A1 (en) * 2015-09-06 2019-02-07 Mediatek Inc. Method and apparatus of adaptive inter prediction in video coding
US20190268594A1 (en) * 2016-11-28 2019-08-29 Electronics And Telecommunications Research Institute Method and device for filtering
CN107896330B (en) * 2017-11-29 2019-08-13 北京大学深圳研究生院 It is a kind of in frame and the filtering method of inter-prediction
WO2019172705A1 (en) * 2018-03-09 2019-09-12 한국전자통신연구원 Image encoding/decoding method and apparatus using sample filtering

Similar Documents

Publication Publication Date Title
KR102518242B1 (en) Encoding And Decoding Methods For Video Information
US10779001B2 (en) Image encoding method and image decoding method
KR101430048B1 (en) Apparatus for decoding a moving picture
KR20190016983A (en) Method and apparatus for encoding intra prediction information
KR101981905B1 (en) Encoding method and device, decoding method and device, and computer-readable storage medium
KR20160106022A (en) Apparatus for encoding a moving picture
WO2012172668A1 (en) Video encoding method and device, and video decoding method and device
KR20120012401A (en) Intra prediction decoding apparatus
KR20150027530A (en) High efficiency video coding intra frame prediction apparatus and method thereof
KR20190088020A (en) Video coding method and apparatus using multiple transform
JP7483921B2 (en) Decoding, encoding, encoding/decoding method, device and equipment thereof
RU2810727C1 (en) Methods, equipment and devices for decoding, encoding and encoding/decoding
KR101688085B1 (en) Video coding method for fast intra prediction and apparatus thereof
KR20200004749A (en) Method for rearranging residual and apparatus
KR20140135855A (en) Method and apparatus for processing moving image
KR101609427B1 (en) Method and apparatus for encoding/decoding video
JP2023086397A (en) Intra prediction device, decoding device, and program
KR20220116107A (en) Method and apparatus for encoding/decoding a video signal
JPWO2012172668A1 (en) Moving picture encoding method and apparatus, and moving picture decoding method and apparatus