RU2817405C1 - Method, equipment and devices for encoding and decoding - Google Patents

Method, equipment and devices for encoding and decoding Download PDF

Info

Publication number
RU2817405C1
RU2817405C1 RU2023122954A RU2023122954A RU2817405C1 RU 2817405 C1 RU2817405 C1 RU 2817405C1 RU 2023122954 A RU2023122954 A RU 2023122954A RU 2023122954 A RU2023122954 A RU 2023122954A RU 2817405 C1 RU2817405 C1 RU 2817405C1
Authority
RU
Russia
Prior art keywords
value
pixel
pixel point
current
refinement
Prior art date
Application number
RU2023122954A
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 RU2817405C1 publication Critical patent/RU2817405C1/en

Links

Abstract

FIELD: video encoding and decoding technologies.
SUBSTANCE: result is achieved by the fact that if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining the gradient value of the current pixel point based on the initial pixel value of the current pixel point and the initial pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the initial pixel value of the current pixel point, a specified pixel value of the current pixel point is determined.
EFFECT: high efficiency of encoding video images.
15 cl, 7 dwg, 2 tbl

Description

ОБЛАСТЬ ТЕХНИКИTECHNICAL FIELD

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

ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯPREREQUISITES FOR CREATION OF THE INVENTION

[0002] Для экономии места видеоизображения всегда передаются после кодирования. Полный способ кодирования видео может включать в себя такие процессы, как предсказание, преобразование, квантование, энтропийное кодирование, фильтрацию и т.д., при этом кодирование с предсказанием может включать внутреннее кодирование и внешнее кодирование. Далее, внешнее кодирование относится к операции использования корреляции видео во временной области для предсказания значений пикселей текущего изображения с использованием значений пикселей соседних кодированных изображений для эффективного устранения избыточности видео во временной области. Внутреннее кодирование относится к операции использования корреляции видео в пространственной области для предсказания значения текущего пикселя с использованием значений пикселей одного или более кодированных блоков текущего изображения для устранения избыточности видео в пространственной области.[0002] To save space, video images are always transmitted after encoding. A complete video encoding method may include processes such as prediction, transform, quantization, entropy encoding, filtering, etc., and predictive encoding may include inner encoding and outer encoding. Further, outer encoding refers to the operation of using time domain video correlation to predict pixel values of the current image using the pixel values of neighboring encoded images to effectively eliminate redundancy in time domain video. Intra coding refers to the operation of using spatial domain video correlation to predict a current pixel value using the pixel values of one or more coded blocks of the current image to eliminate spatial domain video redundancy.

[0003] Общие технологии фильтрации включают технологию фильтра устранения блочности (DBF, deblocking filter), технологию адаптивного смещения отсчетов (SAO, Sample Adaptive Offset) и технологию адаптивного контурного фильтра (ALF, Adaptive Loop Filter). Технология DBF используется для устранения эффекта границы блоков, создаваемого блочным кодированием. Технология SAO заключается в выполнении классификации на основе значений пикселей отсчетов и значений градиента окружающих блоков и добавлении различного значения компенсации для каждого класса значений пикселей для обеспечения того, чтобы реконструированное изображение было ближе к исходному изображению. Технология ALF используется для фильтрации реконструированного изображения с помощью фильтра Винера для обеспечения того, чтобы реконструированное изображение было ближе к исходному изображению.[0003] Common filtering technologies include deblocking filter technology (DBF), sample adaptive offset technology (SAO), and adaptive loop filter technology (ALF). DBF technology is used to eliminate the block boundary effect created by block coding. SAO technology consists of performing classification based on the pixel values of the samples and the gradient values of the surrounding blocks, and adding a different compensation value for each class of pixel values to ensure that the reconstructed image is closer to the original image. ALF technology is used to filter the reconstructed image using a Wiener filter to ensure that the reconstructed image is closer to the original image.

[0004] Но все технологии фильтрации, такие как DBF, SAO и ALF, выполняют классификацию на основе значения пикселя текущей точки пикселя или на основе взаимосвязи между значением пикселя текущей точки пикселя и значением пикселя окружающей точки пикселя и затем выполняют различные операции фильтрации на основе различных классов. В этом случае может иметь место явление избыточной фильтрации: значения отфильтрованных пикселей намного больше или намного меньше, чем значения неотфильтрованных пикселей, и намного больше или намного меньше, чем исходные значения пикселей. Таким образом, возникают такие проблемы, как плохой эффект фильтрации и плохая производительность кодирования.[0004] But all filtering technologies such as DBF, SAO and ALF perform classification based on the pixel value of the current pixel point or based on the relationship between the pixel value of the current pixel point and the pixel value of the surrounding pixel point, and then perform various filtering operations based on different classes. In this case, the phenomenon of overfiltering may occur: the filtered pixel values are much larger or much smaller than the unfiltered pixel values, and much larger or much smaller than the original pixel values. Thus, problems such as poor filtering effect and poor encoding performance occur.

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

[0005] В настоящем раскрытии предоставлены способ и оборудование для кодирования и декодирования, а также соответствующие устройства, чтобы улучшить производительность кодирования.[0005] The present disclosure provides encoding and decoding method and equipment, as well as corresponding devices, to improve encoding performance.

[0006] В настоящем раскрытии предоставляется способ кодирования и декодирования. Способ включает:[0006] The present disclosure provides an encoding and decoding method. The method includes:

[0007] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определение уточненного значения пикселя текущей точки пикселя.[0007] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining a gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining the refined pixel value of the current pixel point.

[0008] В настоящем раскрытии предусмотрено устройство декодирования. Устройство содержит:[0008] In the present disclosure, a decoding apparatus is provided. The device contains:

[0009] память, сконфигурированную для хранения видеоданных;[0009] a memory configured to store video data;

[00010] декодер, сконфигурированный:[00010] decoder configured:

[00011] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определять значение градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определять уточненное значение пикселя текущей точки пикселя.[00011] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determine the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; Based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determine the refined pixel value of the current pixel point.

[00012] В настоящем раскрытии предусмотрено устройство кодирования.[00012] The present disclosure provides an encoding device.

Устройство содержит:The device contains:

[00013] память, сконфигурированную для хранения видеоданных;[00013] a memory configured to store video data;

[00014] кодер, сконфигурированный:[00014] encoder configured:

[00015] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определять значение градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определять уточненное значение пикселя текущей точки пикселя.[00015] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determine the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; Based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determine the refined pixel value of the current pixel point.

[00016] В настоящем раскрытии предусмотрено устройство декодера. Устройство содержит: процессор и машиночитаемый носитель данных, на котором хранятся машиночитаемые инструкции, выполняемые процессором;[00016] In the present disclosure, a decoder device is provided. The device includes: a processor and a computer-readable storage medium on which computer-readable instructions executed by the processor are stored;

[00017] процессор сконфигурирован для выполнения машиночитаемых инструкций для осуществления следующих этапов:[00017] The processor is configured to execute machine-readable instructions to carry out the following steps:

[00018] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определение уточненного значения пикселя текущей точки пикселя.[00018] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining the refined pixel value of the current pixel point.

[00019] В настоящем раскрытии предусмотрено устройство кодера. Устройство содержит процессор и машиночитаемый носитель данных, на котором хранятся машиночитаемые инструкции, выполняемые процессором;[00019] The present disclosure provides an encoder apparatus. The device includes a processor and a computer-readable storage medium on which computer-readable instructions executable by the processor are stored;

[00020] процессор сконфигурирован для выполнения машиночитаемых инструкций для осуществления следующих этапов:[00020] The processor is configured to execute machine-readable instructions to carry out the following steps:

[00021] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определение уточненного значения пикселя текущей точки пикселя.[00021] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining the refined pixel value of the current pixel point.

[00022] Из приведенных выше технических решений видно, что в вариантах осуществления настоящего раскрытия, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, может быть определено уточненное значение пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, а именно уточнение выполняется для исходного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя, для обеспечения того, чтобы уточненное значение пикселя текущей точки пикселя было ближе к исходному пикселю, что улучшает производительность кодирования. В процессах фильтрации, таких как DBF, SAO и ALF, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, уточнение может выполняться для исходного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя, чтобы улучшить эффект фильтрации и производительность кодирования.[00022] From the above technical solutions, it can be seen that in embodiments of the present disclosure, if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, the refined pixel value of the current pixel point can be determined based on the gradient value of the current pixel point and the original value pixel of the current pixel point, namely, refinement is performed on the original pixel value of the current pixel point based on the gradient value of the current pixel point, to ensure that the refined pixel value of the current pixel point is closer to the original pixel, which improves encoding performance. In filtering processes such as DBF, SAO and ALF, if the current pixel point in the current block satisfies the condition of enabling the advanced refinement mode, refinement can be performed on the original pixel value of the current pixel point based on the gradient value of the current pixel point to improve the filtering effect and performance coding.

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

[00023] Фиг. 1 представляет собой схематическую диаграмму, иллюстрирующую структуру кодирования и декодирования согласно варианту осуществления настоящего изобретения.[00023] FIG. 1 is a schematic diagram illustrating an encoding and decoding structure according to an embodiment of the present invention.

[00024] Фиг. 2А и 2В представляют собой схемы, иллюстрирующие разделение блоков в соответствии с вариантом осуществления настоящего изобретения.[00024] FIG. 2A and 2B are diagrams illustrating block division in accordance with an embodiment of the present invention.

[00025] Фиг. 3 представляет собой схематическое представление,[00025] FIG. 3 is a schematic diagram,

иллюстрирующее фильтрацию для устранения блочности согласно варианту осуществления настоящего раскрытия.illustrating deblocking filtering according to an embodiment of the present disclosure.

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

[00027] Фиг. 5А представляет собой схематическое представление,[00027] FIG. 5A is a schematic diagram,

иллюстрирующее аппаратную структуру устройства декодера согласно варианту осуществления настоящего раскрытия.illustrating a hardware structure of a decoder device according to an embodiment of the present disclosure.

[00028] Фиг. 5В представляет собой схематическое представление, иллюстрирующее аппаратную структуру устройства кодера в соответствии с вариантом осуществления настоящего изобретения.[00028] FIG. 5B is a schematic diagram illustrating a hardware structure of an encoder device according to an embodiment of the present invention.

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯDETAILED DESCRIPTION OF THE INVENTION

[00029] Термины, используемые в вариантах осуществления настоящего раскрытия, предназначены только для описания конкретных вариантов осуществления изобретения, а не для ограничения вариантов осуществления настоящего раскрытия. Формы единственного числа, используемые в настоящем раскрытии и формуле изобретения, также предназначены для включения форм множественного числа, если в контексте явно не указано иное. Также следует понимать, что используемое здесь сочетание «и/или» относится к любой одной или всем возможным комбинациям одного или более связанных перечисленных элементов. Следует понимать, что, хотя такие термины, как «первый», «второй», «третий» и т.д., могут использоваться в вариантах осуществления настоящего раскрытия для описания различной информации, информация не должна ограничиваться этими терминами. Эти термины используются только для различения информации одного и того же типа. Например, в пределах сущности вариантов осуществления настоящего раскрытия, первая информация также может упоминаться как вторая информация, и аналогичным образом вторая информация также может упоминаться как первая информация, таким образом, выбор терминов зависит от контекста. Кроме того, используемое слово «если» можно интерпретировать как «после», «когда» или «в ответ на».[00029] The terms used in the embodiments of the present disclosure are intended only to describe specific embodiments of the invention and not to limit the embodiments of the present disclosure. The singular forms used in the present disclosure and claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the combination “and/or” as used herein refers to any one or all possible combinations of one or more related listed elements. It should be understood that although terms such as “first”, “second”, “third”, etc. may be used in embodiments of the present disclosure to describe various information, the information should not be limited to these terms. These terms are used only to distinguish information of the same type. For example, within the spirit of embodiments of the present disclosure, first information may also be referred to as second information, and similarly, second information may also be referred to as first information, so the choice of terms depends on the context. Additionally, the word “if” used can be interpreted as “after,” “when,” or “in response to.”

[00030] Для того чтобы специалисты в данной области могли лучше понять технические решения настоящего раскрытия, технические термины кратко представлены ниже.[00030] To enable those skilled in the art to better understand the technical concepts of the present disclosure, technical terms are briefly presented below.

[00031] Структура кодирования видео: со ссылкой на фиг. 1, структура кодирования видео может использоваться для реализации потока обработки кодера в вариантах осуществления настоящего раскрытия. Схематическое представление структуры декодирования видео может быть аналогично фиг. 1, и поэтому здесь повторяться не будет. Структура декодирования видео может использоваться для реализации потока обработки декодера в вариантах осуществления настоящего раскрытия. Структура кодирования видео и структура декодирования видео могут включать, не ограничиваясь этим: модуль предсказания (например, модуль внутреннего предсказания и модуль внешнего предсказания и т.п.), модуль оценки/компенсации движения, буфер опорных изображений, модуль внутриконтурной фильтрации, модуль реконструкции, модуль преобразования, модуль квантования, модуль обратного преобразования, модуль обратного квантования, энтропийный кодер и т.д. В кодере, благодаря взаимодействию этих модулей, может обеспечиваться поток обработки кодера; в декодере за счет взаимодействия этих модулей может обеспечиваться поток обработки декодера.[00031] Video Coding Structure: With reference to FIG. 1, a video encoding framework may be used to implement an encoder processing flow in embodiments of the present disclosure. A schematic diagram of the video decoding structure may be similar to FIG. 1, and therefore will not be repeated here. A video decoding structure may be used to implement a decoder processing flow in embodiments of the present disclosure. The video encoding structure and the video decoding structure may include, but are not limited to: a prediction module (for example, an intra prediction module and an inter prediction module, etc.), a motion estimation/compensation module, a reference picture buffer, an in-loop filtering module, a reconstruction module, conversion module, quantization module, inverse transformation module, inverse quantization module, entropy encoder, etc. In the encoder, through the interaction of these modules, the encoder processing flow can be provided; in the decoder, through the interaction of these modules, the decoder processing flow can be provided.

[00032] Контурный фильтр используется для уменьшения таких проблем, как эффект блочности изображения или плохое качество изображения, для улучшения качества изображения. Контурный фильтр может включать в себя: три фильтра, т.е. DBF, SAO и ALF. DBF является фильтром устранения блочности и используется для устранения эффекта границы блоков, создаваемого кодированием блоков. SAO - это фильтр адаптивного смещения отсчетов, который используется для выполнения классификации на основе значений пикселей отсчетов и значений градиента окружающих блоков и добавления различного значения компенсации для каждого класса значений пикселей для обеспечения того, чтобы реконструированное изображение было ближе к исходному изображению. ALF представляет собой адаптивный контурный фильтр и используется для фильтрации реконструированного изображения с помощью фильтра Винера для обеспечения того, чтобы реконструированное изображение было ближе к исходному изображению.[00032] A contour filter is used to reduce problems such as image blocking or poor image quality to improve image quality. A loop filter may include: three filters, i.e. DBF, SAO and ALF. DBF is a deblocking filter and is used to eliminate the block boundary effect created by block encoding. SAO is an adaptive sample offset filter that is used to perform classification based on the pixel values of the samples and the gradient values of the surrounding blocks and add a different compensation value for each class of pixel values to ensure that the reconstructed image is closer to the original image. ALF is an adaptive contour filter and is used to filter the reconstructed image using a Wiener filter to ensure that the reconstructed image is closer to the original image.

[00033] В некоторых вариантах осуществления изобретения в процессе кодирования видео и в процессе декодирования видео процесс предсказания может включать в себя внутреннее предсказание и внешнее предсказание. При внутреннем предсказании из-за сильной корреляции в пространственной области между соседними блоками окружающие реконструированные пиксели используются в качестве опорных пикселей для предсказания текущего некодированного блока. Таким образом, необходимо далее кодировать только остаточные значения без кодирования исходных значений, что эффективно устраняет избыточность в пространственной области и значительно повышает эффективность сжатия. Внешнее предсказание относится к операции использования корреляции видео во временной области для предсказания значений пикселей текущего изображения с использованием значений пикселей соседних кодированных изображений для устранения избыточности видео во временной области.[00033] In some embodiments of the invention, in the video encoding process and in the video decoding process, the prediction process may include intra prediction and inter prediction. In intra-prediction, due to the strong correlation in the spatial domain between neighboring blocks, the surrounding reconstructed pixels are used as reference pixels to predict the current uncoded block. Thus, it is further necessary to encode only the residual values without encoding the original values, which effectively eliminates the redundancy in the spatial domain and greatly improves the compression efficiency. Inter-prediction refers to the operation of using time-domain video correlation to predict the pixel values of the current image using the pixel values of neighboring encoded images to eliminate redundancy in the time-domain video.

[00034] В некоторых вариантах осуществления изобретения в процессе кодирования видео и в процессе декодирования видео преобразование относится к преобразованию изображения, описанного в виде пикселей в пространственной области, в изображение преобразованной области, которое представлено в виде коэффициента преобразования. Поскольку большинство изображений содержат много плоских областей и медленно меняющихся областей, децентрализованное распределение энергии изображения в пространственной области преобразуют в централизованное распределение в преобразованной области в правильном процессе преобразования, чтобы устранить корреляцию между сигналами в частотной области и эффективно сжать битовый поток совместно с процессом квантования.[00034] In some embodiments of the invention, in a video encoding process and in a video decoding process, transform refers to transforming an image described as pixels in a spatial domain into a transformed domain image that is represented as a transform coefficient. Since most images contain many flat regions and slowly varying regions, the decentralized energy distribution of the image in the spatial domain is converted into a centralized distribution in the transformed region in a proper conversion process to eliminate the correlation between signals in the frequency domain and effectively compress the bit stream in conjunction with the quantization process.

[00035] В некоторых вариантах осуществления изобретения энтропийное кодирование относится к выполнению кодирования без потерь на основе принципа информационной энтропии, которое заключается в том, чтобы последний модуль обработки при сжатии видео преобразовывал последовательность символов элементов, представляющих видеопоследовательность, в один двоичный битовый поток для передачи или хранения. Входные символы могут включать квантованный(е) коэффициенты) преобразования, информацию о векторе движения, информацию о режиме предсказания и синтаксис, относящийся к преобразованию и квантованию, и т.п. Выходные данные модуля энтропийного кодирования - это конечный битовый поток после сжатия исходного видео. Энтропийное кодирование может эффективно устранить статистическую избыточность символов этих видеоэлементов и является одним из важных инструментов для обеспечения эффективности сжатия при кодировании видео.[00035] In some embodiments of the invention, entropy encoding refers to performing lossless encoding based on the principle of information entropy, which consists of having the final processing module in video compression convert the symbol sequence of elements representing the video sequence into a single binary bitstream for transmission or storage The input symbols may include quantized transform coefficient(s), motion vector information, prediction mode information, and syntax related to transform and quantization, and the like. The output of the entropy encoding module is the final bitstream after the original video has been compressed. Entropy coding can effectively eliminate the statistical symbol redundancy of these video elements and is one of the important tools to ensure compression efficiency in video coding.

[00036] В некоторых вариантах осуществления изобретения контурный фильтр используется для уменьшения таких проблем, как эффект блочности или плохое качество изображения, для улучшения качества изображения. Контурный фильтр может включать, не ограничиваясь этим: DBF, SAO и ALF и т.п. Например, в видеоизображении границы блоков изображения не являются непрерывными, и при сжатии и реконструкции изображения наблюдается очевидный эффект блочности, сильно влияющий на качество изображения. Технология DBF может использоваться для выполнения, на границе, фильтрации для устранения блочности. Фильтрация для устранения блочности выполняется на границах всех блоков предсказания (PU, Prediction Unit) и блоков преобразования (TU, Transform Unit), причем фильтрация для устранения блочности включает в себя решение о фильтрации и операцию фильтрации. В процессе принятия решения о фильтрации получают силу границы (например, отсутствие фильтрации, слабая фильтрация или сильная фильтрация) и параметр фильтрации. В процессе операции фильтрации коррекцию для пикселя выполняют на основе силы границы и параметра фильтрации. Например, когда фильтрация выполняется на границе, фильтрация может быть сильной или слабой фильтрацией, которая выполняется с использованием различного количества элементов.[00036] In some embodiments of the invention, a loop filter is used to reduce problems such as blocking or poor image quality to improve image quality. The loop filter may include, but is not limited to: DBF, SAO and ALF, etc. For example, in a video image, the boundaries of the image blocks are not continuous, and when the image is compressed and reconstructed, there is an obvious blocking effect, which greatly affects the image quality. DBF technology can be used to perform,at the edge, filtering to eliminate blocking. Deblocking filtering is performed at the boundaries of all Prediction Units (PUs) and Transform Units (TUs), and deblocking filtering includes a filtering decision and a filtering operation. In the filtering decision process, the boundary strength (eg, no filtering, weak filtering, or strong filtering) and the filtering parameter are obtained. During the filtering operation, correction for a pixel is performed based on the edge strength and the filtering parameter. For example, when filtering is performed at the edge, the filtering can be strong or weak filtering, which is performed using different numbers of elements.

[00037] Фильтр SAO используется для устранения эффекта звона (ringing effect). Эффект звона относится к явлению пульсации, возникающему вокруг края после декодирования из-за искажения квантования высокочастотного переменного коэффициента. Чем больше размер преобразованного блока, тем заметнее эффект звона. Основной принцип SAO состоит в том, чтобы выполнить компенсацию пиковых пикселей кривой реконструкции путем добавления отрицательного значения, а нижних пикселей - путем добавления положительного значения. SAO может, с единицей дерева кодирования (CTU, Coding Tree Unit) в качестве базовой единицы, включать в себя два основных класса форм компенсации: смещение края (ЕО, Edge Offset) и смещение полосы (ВО, Band Offset). Далее вводится технология слияния параметров.[00037] The SAO filter is used to eliminate the ringing effect. Ringing effect refers to the ripple phenomenon occurring around the edge after decoding due to the quantization distortion of the high frequency variable coefficient. The larger the converted block size, the more noticeable the ringing effect. The basic principle of SAO is to compensate the peak pixels of the reconstruction curve by adding a negative value, and the bottom pixels by adding a positive value. SAO can, with the Coding Tree Unit (CTU) as the base unit, include two main classes of compensation forms: Edge Offset (ED) and Band Offset (BO). Next, the parameter fusion technology is introduced.

[00038] Фильтр ALF используется для получения оптимального фильтра в среднеквадратическом смысле, т.е. фильтра Винера, на основе исходных сигналов и сигналов искажения. Фильтр ALF может включать, не ограничиваясь этим: ромбовидный фильтр 7*7 или ромбовидный фильтр 5*5, крестообразный фильтр 7*7 плюс квадратный центросимметричный фильтр 3*3 или крестообразный фильтр 7*7 плюс квадратный центросимметричный фильтр 5*5.[00038] The ALF filter is used to obtain the optimal filter in the root mean square sense, i.e. Wiener filter, based on the original signals and distortion signals. The ALF filter may include, but is not limited to: a 7*7 diamond filter or a 5*5 diamond filter, a 7*7 cross filter plus a 3*3 square centrosymmetric filter, or a 7*7 cross filter plus a 5*5 square centrosymmetric filter.

[00039] Внутреннее предсказание должно использовать корреляцию видео в пространственной области для выполнения предсказания по одному или более кодированным блокам текущего блока для устранения избыточности видео в пространственной области. Внутреннее предсказание обеспечивает несколько режимов предсказания, каждый из которых соответствует одному направлению текстуры (за исключением режима DC). Например, если текстура изображения расположена горизонтально, режим горизонтального предсказания может лучше предсказывать информацию изображения.[00039] Intra prediction must use spatial domain video correlation to perform prediction on one or more coded blocks of the current block to eliminate spatial domain video redundancy. Intra prediction provides multiple prediction modes, each corresponding to one texture direction (except DC mode). For example, if the image texture is horizontal, the horizontal prediction mode can better predict image information.

[00040] Внешнее предсказание заключается в том, чтобы на основе корреляции видео во временной области, используя пиксели соседних кодированных изображений, предсказать пиксель текущего изображения, поскольку видеопоследовательность содержит сильную корреляцию во временной области, для эффективного устранения избыточности видео во временной области. Все части внешнего предсказания в стандартах кодирования видео используют технологию компенсации движения на основе блоков, основной принцип которой заключается в поиске наилучшего согласующегося блока в ранее закодированном изображении для каждого блока пикселей текущего изображения, и этот процесс называется оценкой движения (ME, Motion Estimation).[00040] External prediction is to predict a pixel of the current image based on the correlation of the time domain video using pixels of neighboring encoded images because the video sequence contains a strong correlation in the time domain, to effectively eliminate the redundancy of the time domain video. All parts of inter-prediction in video coding standards use block-based motion compensation technology, the basic principle of which is to find the best matching block in a previously encoded image for each block of pixels in the current image, a process called ME (Motion Estimation).

[00041] Вектор движения (MV, Motion Vector) при внешнем предсказании может использоваться для представления относительного смещения между текущим блоком текущего изображения и опорным блоком опорного изображения. Каждый блок, полученный разделением, имеет соответствующий вектор движения, который должен быть передан в декодер. Если вектор движения каждого блока кодируется и передается независимо, для большого количества блоков меньшего размера потребляется много битов. Чтобы уменьшить количество битов, используемых для кодирования вектора движения, можно использовать корреляцию в пространственной области между соседними блоками для предсказания вектора движения текущего подлежащего кодированию блока на основе вектора движения соседнего кодированного блока, а затем кодировать разность предсказания. Таким образом, количество битов, представляющих вектор движения, может быть эффективно уменьшено. Исходя из этого, в процессе кодирования вектора движения текущего блока для предсказания вектора движения текущего блока сначала используют вектор движения соседнего кодированного блока, а затем кодируют разность векторов движения (MVD, motion vector difference) между значением предсказания вектора движения (MVP, motion vector prediction) и реальным значением оценки вектора движения.[00041] An inter-prediction Motion Vector (MV) may be used to represent the relative offset between the current block of the current image and a reference block of the reference image. Each block obtained by division has a corresponding motion vector that must be transmitted to the decoder. If the motion vector of each block is encoded and transmitted independently, many smaller blocks consume many bits. To reduce the number of bits used to encode the motion vector, it is possible to use the spatial domain correlation between adjacent blocks to predict the motion vector of the current block to be encoded based on the motion vector of the adjacent encoded block, and then encode the prediction difference. In this way, the number of bits representing the motion vector can be effectively reduced. Based on this, in the process of encoding the motion vector of the current block, to predict the motion vector of the current block, first use the motion vector of the adjacent encoded block, and then encode the motion vector difference (MVD) between the motion vector prediction value (MVP) and the real value of the motion vector estimate.

[00042] Для информации о движении, поскольку вектор движения представляет собой отклонение положения текущего блока относительно опорного блока, для точного получения информации об указанном блоке в дополнение к вектору движения также необходима индексная информация опорного изображения для указания, какое опорное изображение используется для текущего блока. В технологии видеокодирования для текущего изображения обычно может быть установлен список опорных изображений, и индексная информация опорного изображения указывает, какое опорное изображение, указанное в списке опорных изображений, используется для текущего блока. Кроме того, многие технологии кодирования также поддерживают несколько списков опорных изображений, поэтому значение индекса также может использоваться для указания того, какой список опорных изображений используется, и это значение индекса может упоминаться как опорное направление. Подводя итог, можно сказать, что в технологии видеокодирования информация, относящаяся к движению, такая как вектор движения, индексная информация опорного изображения и опорное направление, может в совокупности называться информацией о движении.[00042] For motion information, since the motion vector represents the deviation of the position of the current block relative to the reference block, to accurately obtain information about the specified block, in addition to the motion vector, reference image index information is also needed to indicate which reference image is used for the current block. In video coding technology, a reference picture list may generally be set for the current picture, and the reference picture index information indicates which reference picture specified in the reference picture list is used for the current block. In addition, many encoding technologies also support multiple reference picture lists, so an index value can also be used to indicate which reference picture list is used, and this index value can be referred to as a reference direction. To summarize, in video coding technology, motion-related information such as motion vector, reference image index information, and reference direction may be collectively referred to as motion information.

[00043] Для кодирования флага в кодировании видео существует множество режимов. Для конкретного блока может быть принят один из этих режимов. Чтобы представить, какой режим принят, каждый блок должен пометить режим путем кодирования соответствующего флага. Например, для кодера значение флага определяется решением кодера, а затем значение флага кодируется и передается в декодер. Для декодера путем декодирования значения флага определяется, включен ли соответствующий режим.[00043] There are many modes for flag encoding in video encoding. For a particular block, one of these modes can be adopted. To represent which mode is accepted, each block must mark the mode by encoding the appropriate flag. For example, for an encoder, the value of a flag is determined by the decision of the encoder, and then the value of the flag is encoded and passed to the decoder. For the decoder, decoding the flag value determines whether the corresponding mode is enabled.

[00044] В процессе кодирования флага кодирование флага может осуществляться посредством высокоуровневого синтаксиса. Высокоуровневый синтаксис может использоваться для представления того, разрешить ли включение режима, а именно включение режима разрешается или запрещается высокоуровневым синтаксисом.[00044] In the flag encoding process, encoding the flag may be accomplished through high-level syntax. High-level syntax can be used to represent whether to enable a mode, namely, enabling a mode is enabled or disabled by high-level syntax.

[00045] В некоторых вариантах осуществления изобретения высокоуровневый синтаксис может быть высокоуровневым синтаксисом набора параметров последовательности, или высокоуровневым синтаксисом набора параметров изображения, или высокоуровневым синтаксисом заголовка слайса, или высокоуровневым синтаксисом заголовка изображения, что здесь не ограничивается.[00045] In some embodiments, the high-level syntax may be high-level sequence parameter set syntax, or high-level image parameter set syntax, or high-level slice header syntax, or high-level image header syntax, but is not limited to this.

[00046] Для высокоуровневого синтаксиса набора параметров последовательности (SPS, sequence parameter set) имеется флаг для определения того, разрешать ли включать или выключать некоторые режимы (инструмент/способ) во всей видеопоследовательности (т.е. в нескольких видеоизображениях). Например, если значением флага является значение А (например, значение 1 и т.п.), видеопоследовательность разрешает включить режим, соответствующий флагу; или, если значением флага является значение В (например, значение 0 и т.п.), видеопоследовательность запрещает включение режима, соответствующего флагу.[00046] For high-level sequence parameter set syntax (SPS), there is a flag for determining whether to enable or disable certain modes (tool/method) in an entire video sequence (ie, across multiple video images). For example, if the value of the flag is the value A (for example, the value 1, etc.), the video sequence allows the mode corresponding to the flag to be turned on; or, if the value of the flag is the value B (for example, the value 0, etc.), the video sequence prohibits the inclusion of the mode corresponding to the flag.

[00047] Для высокоуровневого синтаксиса набора параметров изображения (PPS, picture parameter set) имеется флаг для определения того, разрешать ли включать или выключать некоторые режимы (инструмент/способ) в изображении (например, в видеоизображении). Если значение флага равно значению А, видеоизображение разрешает включать режим, соответствующий флагу; если значение флага равно значению В, видеоизображение запрещает включение режима, соответствующего флагу.[00047] For high-level picture parameter set syntax (PPS), there is a flag for determining whether to enable or disable certain modes (tool/method) in a picture (eg, a video picture). If the flag value is equal to the value A, the video image allows the mode corresponding to the flag to be turned on; if the flag value is equal to value B, the video image prohibits the inclusion of the mode corresponding to the flag.

[00048] Для высокоуровневого синтаксиса заголовка изображения имеется флаг для определения того, разрешать ли включать или выключать некоторые режимы (инструмент/способ) в заголовке изображения. Если значением флага является значение А, заголовок изображения разрешает включать режим, соответствующий флагу; если значением флага является значение В, заголовок изображения запрещает включение режима, соответствующего флагу. В некоторых вариантах осуществления изобретения заголовок изображения хранит общую информацию только для текущего изображения. Например, когда изображение включает в себя множество слайсов, множество слайсов могут совместно использовать информацию в заголовке изображения.[00048] For high-level image header syntax, there is a flag for determining whether to enable or disable certain modes (tool/method) in the image header. If the value of the flag is A, the image header allows the mode corresponding to the flag to be enabled; if the value of the flag is B, the image header disables the mode corresponding to the flag from being enabled. In some embodiments of the invention, the image header stores general information only for the current image. For example, when an image includes multiple slices, the multiple slices may share information in the image header.

[00049] Для высокоуровневого синтаксиса заголовка слайса имеется флаг для определения того, разрешать ли включать или выключать некоторые режимы (инструмент/способ) в слайсе. Если значением флага является значение А, слайс разрешает включать режим, соответствующий флагу; если значением флага является значение В, слайс запрещает включение режима, соответствующего флагу. В некоторых вариантах осуществления изобретения одно изображение может включать в себя один или более слайсов, и высокоуровневый синтаксис для заголовка слайса представляет собой высокоуровневый синтаксис, сконфигурированный для каждого слайса.[00049] For the high-level slice header syntax, there is a flag to determine whether to enable or disable certain modes (tool/method) in the slice. If the value of the flag is the value A, the slice allows the mode corresponding to the flag to be enabled; if the value of the flag is B, the slice prevents the mode corresponding to the flag from being enabled. In some embodiments, one image may include one or more slices, and the high-level syntax for the slice header is the high-level syntax configured for each slice.

[00050] Высокоуровневый синтаксис используется для представления того, разрешать ли включение некоторых инструментов (способов), а именно, включение некоторых инструментов (способов) может быть разрешено или запрещено высокоуровневым синтаксисом. В некоторых вариантах осуществления изобретения, как описано выше, высокоуровневый синтаксис может быть высокоуровневым синтаксисом набора параметров последовательности, или высокоуровневым синтаксисом набора параметров изображения, или высокоуровневым синтаксисом заголовка слайса, или высокоуровневым синтаксисом заголовка изображения, что здесь не ограничивается, если могут быть реализованы вышеуказанные функции.[00050] High-level syntax is used to represent whether to enable the inclusion of some tools (methods), namely, the inclusion of some tools (methods) can be enabled or disabled by high-level syntax. In some embodiments of the invention, as described above, the high-level syntax may be high-level sequence parameter set syntax, or high-level image parameter set syntax, or high-level slice header syntax, or high-level image header syntax, which is not limited to herein, as long as the above functions can be implemented .

[00051] Для оптимизированного искажения-скорости (RDO, Rate distortion optimized) есть два показателя для оценки эффективности кодирования: битовая скорость передачи и PSNR (peak signal to noise ratio, пиковое отношение сигнал/шум). Чем меньше битовый поток, тем больше степень сжатия; и чем выше PSNR, тем лучше качество восстановленного изображения. При выборе режима дискриминантная формула, по сути, представляет собой комплексную оценку этих двух показателей. Например, стоимость, соответствующая режиму, может быть рассчитана по следующей формуле: J (режим)=В+X*R, где D представляет собой искажение, обычно измеряемое с помощью показателя SSE (sum of squared error, сумма квадратов ошибок), a SSE относится к сумме среднеквадратичных разностей между реконструированным блоком изображения и исходным изображением; X представляет множитель Лагранжа; R представляет фактическое количество битов, необходимых для кодирования блока изображения в этом режиме, включая общее количество битов, необходимых для кодирования информации о режиме, информации о движении, остатках и т.д. При выборе режима, если сравнительное решение принимается для режима кодирования на основе принципа RDO, обычно обеспечивается оптимальная производительность кодирования.[00051] For rate distortion optimized (RDO), there are two metrics to evaluate coding efficiency: bit rate and PSNR (peak signal to noise ratio). The smaller the bit stream, the greater the compression ratio; and the higher the PSNR, the better the quality of the reconstructed image. When choosing a mode, the discriminant formula is essentially a complex assessment of these two indicators. For example, the cost associated with a mode can be calculated using the following formula: J (mode)=B+X*R, where D represents the distortion, usually measured using the SSE (sum of squared error), a SSE refers to the sum of the root mean square differences between the reconstructed image block and the original image; X represents the Lagrange multiplier; R represents the actual number of bits required to encode a block of an image in this mode, including the total number of bits required to encode mode information, motion information, residuals, etc. In mode selection, if a comparative decision is made for the encoding mode based on the RDO principle, optimal encoding performance is generally achieved.

[00052] Технология блочного разделения: одна единица дерева кодирования (CTU, coding tree unit) делится на единицы кодирования (CU, coding unit) с помощью рекурсии квадрадерева. Использование внутреннего или внешнего кодирования определяется на уровне CU выходного узла. CU может быть разделена на две или четыре единицы предсказания (PU, prediction unit), и одна и та же информация предсказания используется в одной PU. После получения остаточной информации после завершения предсказания одна CU может быть разделена посредством квадрадерева на множество единиц преобразования (TU, transform unit). Например, в настоящем раскрытии текущий блок изображения представляет собой одну PU. Кроме того, технология блочного разделения может быть изменена, например, используют структуру разделения, сочетающую двоичное дерево/троичное дерево/квадратичное дерево, для замены исходного режима разделения, чтобы отменить концептуальное различие CU, PU и TU и поддерживать более гибкое разделение CU. CU могут быть получены путем квадратного или прямоугольного разделения. CTU сначала разделяется посредством квадрадерева, а затем конечный узел разделения посредством квадрадерева разделяется посредством двоичного дерева и троичного дерева. Со ссылкой на фиг. 2А, CU могут быть разделены пятью типами разделения, которые представляют собой разделение посредством квадрадерева, разделение посредством горизонтального бинарного дерева, разделение посредством вертикального бинарного дерева, разделение посредством горизонтального троичного дерева и разделение посредством вертикального троичного дерева. Со ссылкой на фиг. 2B, разделение CU в CTU может быть любой комбинацией пяти вышеупомянутых типов разделения. Из вышеизложенного может быть известно, что различные способы разделения позволяют PU иметь разные формы, например, прямоугольники и квадраты разных размеров.[00052] Block partitioning technology: one coding tree unit (CTU, coding tree unit) is divided into coding units (CU, coding unit) using quadtree recursion. The use of internal or external coding is determined at the CU level of the output node. A CU can be divided into two or four prediction units (PUs), and the same prediction information is used in one PU. After obtaining the residual information after completion of the prediction, one CU can be divided into a plurality of transform units (TUs) by a quadtree. For example, in the present disclosure, the current image block is one PU. In addition, the block partitioning technology can be modified, for example, using a partition structure combining binary tree/ternary tree/quad tree to replace the original partitioning mode, so as to cancel the conceptual distinction of CU, PU and TU and support more flexible CU partitioning. CUs can be obtained by square or rectangular division. The CTU is first split by a quadtree, and then the end node of the quadtree split is split by a binary tree and a ternary tree. With reference to FIG. 2A, CUs can be divided by five types of partitioning, which are quad-tree partitioning, horizontal binary tree partitioning, vertical binary tree partitioning, horizontal ternary tree partitioning, and vertical ternary tree partitioning. With reference to FIG. 2B, the division of a CU into a CTU may be any combination of the above five types of division. From the above, it may be known that different partitioning methods allow the PU to have different shapes, such as rectangles and squares of different sizes.

[00053] Способ DBF-фильтрации (фильтрация для устранения блочности): обработка DBF-фильтрации включает два процесса: решение о фильтрации и операцию фильтрации.[00053] DBF filtering (deblocking filtering) method: DBF filtering processing includes two processes: filtering decision and filtering operation.

[00054] Решение о фильтрации включает в себя 1) получение значения силы границы (значения BS (boundary strength)); 2) решение о включении фильтрации; и 3) выбор силы фильтрации. Для компонента цветности существует только этап 1), и значение BS компонента яркости напрямую мультиплексируется. Для компонента цветности операция фильтрации выполняется только тогда, когда значение BS равно 2 (а именно, по меньшей мере один из блоков с обеих сторон текущего блока использует внутренний режим).[00054] The filtering decision includes 1) obtaining a boundary strength value (BS (boundary strength) value); 2) decision to enable filtering; and 3) selection of filtration strength. For the chrominance component, there is only stage 1), and the BS value of the luminance component is directly multiplexed. For the chrominance component, the filtering operation is performed only when the BS value is 2 (namely, at least one of the blocks on both sides of the current block is using the internal mode).

[00055] Операция фильтрации включает 1) сильную фильтрацию и слабую фильтрацию компонента яркости; и 2) фильтрацию компонента цветности.[00055] The filtering operation includes 1) strong filtering and weak filtering of the luminance component; and 2) chrominance component filtering.

[00056] В некоторых вариантах осуществления изобретения обработка DBF-фильтрации обычно включает в себя выполнение фильтрации горизонтальной границы (также называемой горизонтальной DBF-фильтрацией) и фильтрации вертикальной границы (также называемой вертикальной DBF-фильтрацией) с 8x8 пикселями в качестве блока. Фильтруется не более трех точек пикселя с обеих сторон границы, и для фильтрации используется не более четырех точек пикселя с обеих сторон границы. Таким образом, горизонтальная DBF-фильтрация и вертикальная DBF-фильтрация разных блоков не влияют друг на друга, а именно горизонтальная DBF-фильтрация и DBF-фильтрация могут выполняться параллельно.[00056] In some embodiments of the invention, DBF filtering processing typically includes performing horizontal edge filtering (also called horizontal DBF filtering) and vertical edge filtering (also called vertical DBF filtering) with 8x8 pixels as a block. A maximum of three pixel points on both sides of the border are filtered, and a maximum of four pixel points on both sides of the border are used for filtering. In this way, horizontal DBF filtering and vertical DBF filtering of different blocks do not affect each other, namely, horizontal DBF filtering and DBF filtering can be performed in parallel.

[00057] Как показано на фиг. 3, для текущего блока (например, 8*8 пикселей) вертикальная DBF-фильтрация выполняется по трем столбцам точек пикселей слева от текущего блока и трем столбцам точек пикселей справа от левого блока (блок слева от текущего блока), а затем выполняется горизонтальная DBF-фильтрация по трем строкам точек пикселей на верхней стороне текущего блока и трем строкам точек пикселей на нижней стороне верхнего блока (блок сверху от текущего блока).[00057] As shown in FIG. 3, for the current block (for example, 8*8 pixels), vertical DBF filtering is performed on three columns of pixel points to the left of the current block and three columns of pixel points to the right of the left block (the block to the left of the current block), and then horizontal DBF filtering is performed filtering by three rows of pixel points on the top side of the current block and three rows of pixel points on the bottom side of the top block (the block above the current block).

[00058] В некоторых вариантах осуществления изобретения для точек пикселей, подлежащих вертикальной DBF-фильтрации и горизонтальной DBF-фильтрации, вертикальная DBF-фильтрация обычно выполняется до горизонтальной DBF-фильтрации. Конечно, горизонтальная DBF-фильтрация также может выполняться до вертикальной DBF-фильтрации. В последующих вариантах осуществления изобретения, например, вертикальная DBF-фильтрация выполняется перед горизонтальной DBF-фильтрацией.[00058] In some embodiments of the invention, for pixel points subject to vertical DBF filtering and horizontal DBF filtering, vertical DBF filtering is typically performed before horizontal DBF filtering. Of course, horizontal DBF filtering can also be performed before vertical DBF filtering. In subsequent embodiments of the invention, for example, vertical DBF filtering is performed before horizontal DBF filtering.

[00059] В одной возможной реализации поток DBF-фильтрации может включать в себя следующие этапы.[00059] In one possible implementation, the DBF filtering flow may include the following steps.

[00060] На этапе S11 значения краевого условия горизонтального направления и вертикального направления соответственно вычисляют с 4*4 в качестве единицы.[00060] In step S11, the boundary condition values of the horizontal direction and the vertical direction are respectively calculated with 4*4 as the unit.

[00061] Для границы CU, которая является границей 8*8, значение краевого условия равно 2 (используется для указания того, что компонент яркости и компонент цветности оба подвергаются фильтрации). Для границы единицы предсказания (PU) (например, 1/4, 1/2 и 3/4 горизонтальной линии внутри 2N*hN), которая также является границей 8*8, значение краевого условия равно 1 (используется для указания того, что компонент яркости фильтруется, но компонент цветности не фильтруется). При других обстоятельствах, отличных от двух указанных выше, значение краевого условия равно 0.[00061] For a CU boundary, which is an 8*8 boundary, the edge condition value is 2 (used to indicate that the luma component and the chrominance component are both filtered). For a prediction unit (PU) boundary (such as 1/4, 1/2 and 3/4 horizontal line inside 2N*hN), which is also an 8*8 boundary, the value of the boundary condition is 1 (used to indicate that the component The luminance component is filtered, but the chrominance component is not filtered). Under circumstances other than the two mentioned above, the value of the boundary condition is 0.

[00062] На этапе S12 с размером 4*4 в качестве единицы (фильтрацию выполняют с размером 8*8 в качестве единицы, но такую информацию, как значение краевого условия, сохраняют с единицей 4*4), вертикальную фильтрацию по всем блокам завершают. Когда значение краевого условия не равно 0, выполняют следующий процесс фильтрации.[00062] In step S12, with the size 4*4 as the unit (filtering is performed with the size 8*8 as the unit, but information such as the boundary condition value is stored with the unit 4*4), vertical filtering on all blocks is completed. When the value of the boundary condition is not 0, the following filtering process is performed.

[00063] 1. Фильтрация компонентов яркости (вертикальную фильтрацию выполняют по четырем строкам вертикальной границы, а горизонтальную фильтрацию выполняют по четырем столбцам горизонтальной границы):[00063] 1. Luminance component filtering (vertical filtering is performed on the four rows of the vertical boundary, and horizontal filtering is performed on the four columns of the horizontal boundary):

[00064] 1.1 В первую очередь определяют необходимость пропуска процесса фильтрации. В некоторых вариантах осуществления изобретения, если блоки по обеим сторонам границы являются блоками, не относящимися к внутреннему режиму, без остатков и с согласованным движением, процесс фильтрации будет пропущен, а в противном случае процесс фильтрации будет выполняться.[00064] 1.1 The first step is to determine whether to skip the filtering process. In some embodiments of the invention, if the blocks on both sides of the boundary are non-internal mode blocks with no residuals and consistent motion, the filtering process will be skipped, otherwise the filtering process will be performed.

[00065] 1.2 Если процесс фильтрации не пропущен, выполняют следующую обработку.[00065] 1.2 If the filtering process is not skipped, the following processing is performed.

[00066] 1.2.1 Если тип фильтрации (dftype) текущего изображения является типом 1 и ABS(R0-L0)>=4* Alpha, FS равно 0; в противном случае выполняют этап 1.2.2 для определения FS. Alpha - это заранее заданное значение, a ABS() указывает на операцию взятия абсолютного значения.[00066] 1.2.1 If the filtering type (dftype) of the current image is type 1 and ABS(R0-L0)>=4* Alpha, FS is 0; otherwise, step 1.2.2 is performed to determine FS. Alpha is a predefined value, and ABS() indicates the operation of taking an absolute value.

[00067] 1.2.2 Рассчитывают FL (Flatness Left, плоскостность слева, которая принимает значения 0, 2 или 3) и FR (Flatness Right, плоскостность справа, которая принимает значения 0, 2 или 3). FL и FR используют для определения степени плоскостности внутренней части обеих сторон. Затем определяют FS на основе FL и FR. Например, для определения FS можно использовать следующую формулу: FS=FL+FR.[00067] 1.2.2 FL (Flatness Left, which takes the values 0, 2, or 3) and FR (Flatness Right, which takes the values 0, 2, or 3) are calculated. FL and FR are used to determine the degree of flatness of the inside of both sides. FS is then determined based on FL and FR. For example, to determine FS, you can use the following formula: FS=FL+FR.

[00068] 1.2.2.1 Если ABS(L1-L0)<Beta и ABS(L2-L0)<Beta, FL равно 3; если ABS(L1-L0)<Beta и ABS(L2-L0)>=Beta, FL равно 2; если ABS(L1-L0)>=Beta и ABS(L2-L0)<Beta, FL равно 1; в противном случае FL равно 0. Beta - это заранее заданное значение, a ABS() указывает на операцию взятия абсолютного значения.[00068] 1.2.2.1 If ABS(L1-L0)<Beta and ABS(L2-L0)<Beta, FL is 3; if ABS(L1-L0)<Beta and ABS(L2-L0)>=Beta, FL is 2; if ABS(L1-L0)>=Beta and ABS(L2-L0)<Beta, FL is 1; otherwise, FL is 0. Beta is a predefined value, and ABS() indicates the operation of taking an absolute value.

[00069] 1.2.2.2 FR можно рассчитать таким же образом, как и FL, и здесь это повторяться не будет.[00069] 1.2.2.2 FR can be calculated in the same way as FL and will not be repeated here.

[00070] 1.2.3 Значение BS может быть определено на основе FS (FS может принимать значения 0, 2, 3, 4, 5 или 6, a BS может принимать значения 0, 1, 2, 3 или 4). Например, после получения FS значение BS может быть определено на основе значения FS.[00070] 1.2.3 The value of BS can be determined based on FS (FS can be 0, 2, 3, 4, 5 or 6 and BS can be 0, 1, 2, 3 or 4). For example, after receiving FS, the value of BS can be determined based on the value of FS.

[00071] 1.2.3.1 Если FS меньше или равно 2 (максимум одна сторона умеренно плоская), BS=0.[00071] 1.2.3.1 If FS is less than or equal to 2 (at most one side is moderately flat), BS=0.

[00072] 1.2.3.2 Если FS равно 3 (только если одна сторона очень плоская),[00072] 1.2.3.2 If FS is 3 (only if one side is very flat),

BS=(ABS(L1-R1)<Beta) ? 1:0, а именно, если ABS (L1-R1)<Beta, BS=1, а в противном случае BS=0.BS=(ABS(L1-R1)<Beta) ? 1:0, namely, if ABS (L1-R1)<Beta, BS=1, and otherwise BS=0.

[00073] 1.2.3.3 Если FS равно 4 (обе стороны умеренно плоские), BS=(FL==2)? 2:1, а именно, если FL=2, BS=2, а если FL не равно 2, BS=1.[00073] 1.2.3.3 If FS is 4 (both sides are moderately flat), BS=(FL==2)? 2:1, namely, if FL=2, BS=2, and if FL is not equal to 2, BS=1.

[00074] 1.2.3.4 Если FS равно 5 (т.е. одна сторона умеренно плоская, а другая сильно плоская), то:[00074] 1.2.3.4 If FS is 5 (i.e. one side is moderately flat and the other is very flat), then:

[00075] если тип фильтрации (df type) текущего изображения является типом 1, BS=(R1==R0 && L0==L1 && ABS(R2-L2)<Alpha) ? 3: 2; а именно, если значение пикселя точки пикселя R1 равно значению пикселя точки пикселя R0, а значение пикселя точки пикселя L0 равно значению пикселя точки пикселя L1, и абсолютное значение разности между значением пикселя точки R2 пикселя и значением пикселя точки L2 пикселя меньше, чем Alpha (т.е. заранее сконфигурированного значения), BS=3, а в противном случае BS=2.[00075] if the filtering type (df type) of the current image is type 1, BS=(R1==R0 && L0==L1 && ABS(R2-L2)<Alpha) ? 3:2; namely, if the pixel value of pixel point R1 is equal to the pixel value of pixel point R0, and the pixel value of pixel point L0 is equal to the pixel value of pixel point L1, and the absolute value of the difference between the pixel value of pixel point R2 and the pixel value of pixel point L2 is less than Alpha ( i.e. pre-configured value), BS=3, otherwise BS=2.

[00076] В противном случае (а именно, когда тип фильтрации (df type) текущего изображения не является типом 1), если тип фильтрации текущего изображения имеет тип 0, BS=(R1=R0 && L0=L1) ? 3:2; а именно, значение пикселя в точке пикселя R1 равно значению пикселя в точке пикселя R0, а значение пикселя в точке пикселя L0 равно значению пикселя в точке пикселя L1, BS=3, а в противном случае BS=2.[00076] Otherwise (namely, when the df type of the current image is not type 1), if the filter type of the current image is type 0, BS=(R1=R0 && L0=L1) ? 3:2; namely, the pixel value at pixel point R1 is equal to the pixel value at pixel point R0, and the pixel value at pixel point L0 is equal to the pixel value at pixel point L1, BS=3, and otherwise BS=2.

[00077] 1.2.3.5 Если FS равно 6 (обе стороны очень плоские), то:[00077] 1.2.3.5 If FS is 6 (both sides are very flat), then:

[00078] если тип фильтрации (df type) текущего изображения является типом 1, BS=(ABS(R0-R1)<=Beta / 4 && ABS(L0-L1)<=Beta / 4 && ABS(R0-L0)<Alpha) && ABS(R0-R3)<=Beta / 2 && ABS(L0-L3)<=Beta / 2 ? 4:3; а именно, если условия ABS(R0-R1)<=Beta/4, ABS(L0-L1)<=Beta/4, ABS(R0-L0)<Alpha, ABS(R0-R3)<=Beta/2 и ABS(L0-L3)<=Beta / 2 все выполнены, BS=4, а в противном случае BS=3.[00078] if the df type of the current image is type 1, BS=(ABS(R0-R1)<=Beta / 4 && ABS(L0-L1)<=Beta / 4 && ABS(R0-L0)< Alpha) && ABS(R0-R3)<=Beta / 2 && ABS(L0-L3)<=Beta / 2 ? 4:3; namely, if the conditions ABS(R0-R1)<=Beta/4, ABS(L0-L1)<=Beta/4, ABS(R0-L0)<Alpha, ABS(R0-R3)<=Beta/2 and ABS(L0-L3)<=Beta / 2 are all satisfied, BS=4, otherwise BS=3.

[00079] В противном случае (т.е. когда тип фильтрации (df type) текущего изображения не является типом 1), если тип фильтрации текущего изображения является типом 0, BS=(ABS(R0-R1)<=Beta / 4 && ABS(L0-L1)<=Beta / 4 && ABS(R0-L0)<Alpha) ? 4:3; а именно, если выполняются условия ABS(R0-R1)<=Beta / 4, ABS(L0-L1)<=Beta / 4 и ABS(R0-L0)<Alpha, BS=4, а в противном случае BS=3.[00079] Otherwise (i.e., when the df type of the current image is not type 1), if the filter type of the current image is type 0, BS=(ABS(R0-R1)<=Beta / 4 && ABS(L0-L1)<=Beta / 4 && ABS(R0-L0)<Alpha) ? 4:3; namely, if the conditions ABS(R0-R1)<=Beta / 4, ABS(L0-L1)<=Beta / 4 and ABS(R0-L0)<Alpha, BS=4 are met, and otherwise BS=3 .

[00080] 1.2.4 На основе значения BS определяют коэффициент фильтрации и количество отфильтрованных пикселей. Например, если четыре точки пикселя на левой или верхней стороне границы имеют значения от L0 до L3 соответственно (как показано на фиг. 3, с левой стороной на фиг. 3 в качестве примера); четыре точки пикселя на правой или нижней стороне границы имеют значения от R0 до R3 соответственно (как показано на фиг. 3, с правой стороной на фиг. 3 в качестве примера). Для компонента яркости:[00080] 1.2.4 Based on the BS value, the filter coefficient and the number of filtered pixels are determined. For example, if the four pixel points on the left or top side of the border have values from L0 to L3 respectively (as shown in Fig. 3, with the left side in Fig. 3 as an example); the four pixel points on the right or bottom side of the border have values from R0 to R3 respectively (as shown in Fig. 3, with the right side in Fig. 3 as an example). For the brightness component:

[00081] 1.2.4.1 Если BS=4, фильтрацию выполняют по трем пикселям с каждой из обеих сторон границы.[00081] 1.2.4.1 If BS=4, filtering is performed on three pixels on each of both sides of the border.

[00082] Для L0 и R0 коэффициент фильтрации равен [3,8,10,8,3]/32, а именно, чтобы определить отфильтрованное значение пикселя точки пикселя L0, выполняют взвешенное суммирование значений пикселей точек пикселей L2, L1, L0, R0 и R1 с соответствующими весовыми коэффициентами (коэффициентами фильтрации), последовательно равными 3/32, 8/32, 10/32, 8/32 и 3/32. Если wj указывает коэффициент фильтрации, когда j=-2 (вторая точка L2 пикселя слева от текущей точки пикселя), wj=3/32; когда j=-1 (первая точка L1 пикселя слева от текущей точки пикселя), wj=8/32; когда j=0 (текущая точка пикселя, т.е. L0), wj=10/32; когда j=1 (первая точка пикселя R0 справа от текущей точки пикселя), wj=8/32; когда j=2 (вторая точка R1 пикселя справа от текущей точки пикселя), wj=3/32. Чтобы определить отфильтрованное значение пикселя точки пикселя R0, выполняют взвешенное суммирование для значений пикселей точек пикселей R2, R1, R0, L0 и L1 с соответствующими весовыми коэффициентами, последовательно равными 3/32, 8/32, 10/32, 8/32 или 3/32. Если wj указывает коэффициент фильтрации, когда j=-2 (вторая точка пикселя R2 справа от текущей точки пикселя), wj=3/32; когда j=-1 (первая точка пикселя R1 справа от текущей точки пикселя), wj=8/32; когда j=0 (текущая точка пикселя, т.е. R0), wj=10/32; когда jj=1 (первая точка пикселя L0 слева от текущей точки пикселя), wj=8/32; когда j=2 (вторая точка L1 пикселя слева от текущей точки пикселя), wj=3/32.[00082] For L0 and R0, the filter coefficient is [3,8,10,8,3]/32, namely, to determine the filtered pixel value of pixel point L0, a weighted sum of the pixel values of pixel points L2, L1, L0, R0 is performed and R1 with corresponding weighting coefficients (filtering coefficients) successively equal to 3/32, 8/32, 10/32, 8/32 and 3/32. If wj indicates the filter coefficient when j=-2 (second pixel point L2 to the left of the current pixel point), wj=3/32; when j=-1 (first pixel point L1 to the left of the current pixel point), wj=8/32; when j=0 (current pixel point, i.e. L0), wj=10/32; when j=1 (first pixel point R0 to the right of the current pixel point), wj=8/32; when j=2 (second pixel point R1 to the right of the current pixel point), wj=3/32. To determine the filtered pixel value of pixel point R0, a weighted sum is performed on the pixel values of pixel points R2, R1, R0, L0, and L1 with corresponding weights successively equal to 3/32, 8/32, 10/32, 8/32, or 3 /32. If wj indicates the filter coefficient when j=-2 (second pixel point R2 to the right of the current pixel point), wj=3/32; when j=-1 (first pixel point R1 to the right of the current pixel point), wj=8/32; when j=0 (current pixel point, i.e. R0), wj=10/32; when jj=1 (first pixel point L0 to the left of the current pixel point), wj=8/32; when j=2 (second pixel point L1 to the left of the current pixel point), wj=3/32.

[00083] В заключение, L0'=clip(L2*3+L1*8+L0*10+R0*8+R1*3+16) >> 5), где L0' - отфильтрованное значение пикселя точки пикселя L0, L0 до L2 соответственно указывают значения пикселей в точках пикселей от L0 до L2 перед фильтрацией, a R0 до R1 соответственно указывают значения пикселей в точках пикселей от R0 до R1, те же обозначения используются ниже. R0 - clip((R2*3+R1*8+R0*10+L0*8+L1*3+16) >> 5) >> 5).[00083] In conclusion, L0'=clip(L2*3+L1*8+L0*10+R0*8+R1*3+16) >> 5), where L0' is the filtered pixel value of pixel point L0, L0 to L2 respectively indicate the pixel values at pixel points L0 to L2 before filtering, and R0 to R1 respectively indicate the pixel values at pixel points R0 to R1, the same notations being used below. R0 - clip((R2*3+R1*8+R0*10+L0*8+L1*3+16) >> 5) >> 5).

[00084] В приведенных выше формулах «»» указывает на операцию сдвига вправо вместо деления, например, «>>5» эквивалентно делению на 25 (32). Умножение («*») можно заменить сдвигом влево, например, а, умноженное на 4, можно заменить сдвигом на две позиции влево, а именно на а<<2; а, умноженное на 10, может быть заменено на (а<<3)+(а<<1). ««» - это операция сдвига влево для замены умножения, например, «а<<2» эквивалентно умножению на 22 (4). Когда операция деления выполняется сдвигом, результат операции может быть округлен напрямую, а именно, когда результат операции является нецелым числом между N и N+1, результатом операции является N. Когда дробная часть больше 0,5, результат операции получают как N+1 для повышения точности. Поэтому, для повышения точности определенного значения пикселя 1/2 знаменателя (т.е. делимого) может быть добавлена к числителю вышеуказанной взвешенной суммы во время работы для достижения эффекта округления. Возьмем, к примеру, L0', сдвиг на пять позиций вправо эквивалентен делению на 25 (32). В результате к числителю взвешенной суммы можно добавить 16. clip(x) указывает операцию обрезки. Когда х выше верхнего предела заданного диапазона значений, значение х устанавливают равным верхнему пределу заданного диапазона значений; когда х ниже нижнего предела заданного диапазона значений, значение х устанавливают равным нижнему пределу заданного диапазона значений.[00084] In the above formulas, """ indicates a right shift operation instead of division, for example, ">>5" is equivalent to dividing by 2 5 (32). Multiplication (“*”) can be replaced by a shift to the left, for example, a multiplied by 4 can be replaced by a shift two positions to the left, namely by a<<2; a multiplied by 10 can be replaced by (a<<3)+(a<<1). """ is a left shift operation to replace multiplication, for example "a<<2" is equivalent to multiplying by 2 2 (4). When the division operation is performed by shift, the result of the operation can be rounded directly, namely, when the result of the operation is a non-integer number between N and N+1, the result of the operation is N. When the fractional part is greater than 0.5, the result of the operation is obtained as N+1 for increasing accuracy. Therefore, to improve the accuracy of a certain pixel value, 1/2 of the denominator (i.e., the dividend) can be added to the numerator of the above weighted sum during operation to achieve a rounding effect. Taking L0' for example, shifting it five positions to the right is equivalent to dividing by 2 5 (32). As a result, 16 can be added to the numerator of the weighted sum. clip(x) specifies the clipping operation. When x is higher than the upper limit of the specified value range, the value of x is set equal to the upper limit of the specified value range; when x is below the lower limit of the specified value range, the value of x is set equal to the lower limit of the specified value range.

[00085] Для L1 и R1 коэффициент фильтрации равен [4, 5, 4, 3]/16, и на основе этого L1'=clip((L2*4+L1*5+L0*4+R0*3+8) >> 4), и R1'=clip((R2*4+R1*5+R0*4+L0*3+8) >> 4).[00085] For L1 and R1, the filter coefficient is [4, 5, 4, 3]/16, and based on this L1'=clip((L2*4+L1*5+L0*4+R0*3+8) >> 4), and R1'=clip((R2*4+R1*5+R0*4+L0*3+8) >> 4).

[00086] Для L2 и R2 коэффициент фильтрации равен [2, 2, 2, 1, 1]/8, и, таким образом, L2'=clip((L3*2+L2*2+L1*2+L0*1+R0*1+4) >> 3) и R2'=clip((R3*2+R2*2+R1*2+R0* 1+L0* 1+4) >> 3).[00086] For L2 and R2, the filter coefficient is [2, 2, 2, 1, 1]/8, and thus L2'=clip((L3*2+L2*2+L1*2+L0*1 +R0*1+4) >> 3) and R2'=clip((R3*2+R2*2+R1*2+R0* 1+L0* 1+4) >> 3).

[00087] 1.2.4.2 Если BS=3, фильтрацию выполняют по двум пикселям с каждой из обеих сторон границы:[00087] 1.2.4.2 If BS=3, filtering is performed on two pixels on each of both sides of the border:

[00088] Для L0 и R0 коэффициент фильтрации равен [1, 4, 6, 4, 1]/16, поэтому L0'=clip(L2*1+L1*4+L0*6+R0*4+R1*1+8) >> 4 и R0'=clip(R2*1+R1*4+R0*6+L0*4+L1*1+8) >> 4.[00088] For L0 and R0, the filter coefficient is [1, 4, 6, 4, 1]/16, so L0'=clip(L2*1+L1*4+L0*6+R0*4+R1*1+ 8) >> 4 and R0'=clip(R2*1+R1*4+R0*6+L0*4+L1*1+8) >> 4.

[00089] Для L1 и R1 коэффициент фильтрации равен [3, 8, 4, 1]/16 и, таким образом, L1'=clip((L2*3+L1*8+L0*4+R0*1+8) >> 4) и R1'=clip((R2*3+R1*8+R0*4+L0*1+8) >> 4).[00089] For L1 and R1, the filter coefficient is [3, 8, 4, 1]/16 and thus L1'=clip((L2*3+L1*8+L0*4+R0*1+8) >> 4) and R1'=clip((R2*3+R1*8+R0*4+L0*1+8) >> 4).

[00090] 1.2.4.3 Если BS=2, фильтрацию выполняют по одному пикселю с каждой из обеих сторон границы:[00090] 1.2.4.3 If BS=2, filtering is performed on one pixel on each of both sides of the border:

[00091] Для L0 и R0 коэффициент фильтрации равен [3, 10, 3]/16, и на основе этого L0'=clip(L1*3+L0*10+R0*3+8) >> 4 и R0'=clip(R1*3+R0*10+L0*3+8) >> 4.[00091] For L0 and R0, the filter coefficient is [3, 10, 3]/16, and based on this, L0'=clip(L1*3+L0*10+R0*3+8) >> 4 and R0'= clip(R1*3+R0*10+L0*3+8) >> 4.

[00092] 1.2.4.4 Если BS=1, фильтрацию выполняют по одному пикселю с каждой из обеих сторон границы: для L0 и R0 коэффициент фильтрации равен [3, 1]/4, и, таким образом, L0'=clip(L0*3+R0*1+2)»2, и R0'=clip(R0*3+L0*1+2)»2.[00092] 1.2.4.4 If BS=1, filtering is performed on one pixel on each of both sides of the border: for L0 and R0, the filter coefficient is [3, 1]/4, and thus L0'=clip(L0* 3+R0*1+2)»2, and R0'=clip(R0*3+L0*1+2)»2.

[00093] 1.2.4.5 Если BS=0, фильтрацию не выполняют, а именно фильтрацию не выполняют для пикселей по обе стороны от границы.[00093] 1.2.4.5 If BS=0, no filtering is performed, namely, no filtering is performed on the pixels on either side of the boundary.

[00094] 2. Когда значение краевого условия равно 2, выполняют фильтрацию цветности на границе блока 16x16, а именно выполняют фильтрацию компонента цветности на границе блока 16×16. Процесс фильтрации компонента цветности описан ниже:[00094] 2. When the value of the edge condition is 2, chrominance filtering is performed on the 16x16 block boundary, namely, chrominance component filtering is performed on the 16x16 block boundary. The chroma component filtering process is described below:

[00095] 2.1 Сначала определяют, следует ли выполнять фильтрацию, и процесс аналогичен процессу фильтрации компонента яркости и не будет здесь повторяться.[00095] 2.1 First, it is determined whether to perform filtering, and the process is similar to the process of luminance component filtering and will not be repeated here.

[00096] 2.2 Если необходимо выполнить фильтрацию (т.е. процесс фильтрации не пропускают), то соответственно вычисляют FL и FR, затем на основе FL и FR получают FS, а затем на основе FS получают значение BS. Этот процесс также аналогичен процессу фильтрации компонента яркости, поэтому здесь он повторяться не будет.[00096] 2.2 If filtering is necessary (ie the filtering process is not skipped), then FL and FR are calculated respectively, then FS is obtained from FL and FR, and then BS is obtained from FS. This process is also similar to the process of filtering the luminance component, so it will not be repeated here.

[00097] 2.3 Полученное значение BS (например, 4, 3, 2, 1, 0 и т.п.) компонента цветности уменьшают на 1, а именно, значение BS может быть равно 3, 2, 1 или 0. Процесс фильтрации компонента цветности выполняют на основе значения BS в следующем процессе.[00097] 2.3 The obtained BS value (for example, 4, 3, 2, 1, 0, etc.) of the chrominance component is reduced by 1, namely, the BS value may be 3, 2, 1 or 0. Component filtering process The chromaticities are performed based on the BS value in the following process.

[00098] Если BS=3, фильтрацию выполняют на двух пикселях с каждой из обеих сторон границы: для L0 и R0 коэффициент фильтрации равен [3, 10, 3]/16, таким образом, L0'=clip(L1*3+L0*10+R0*3+8) >> 4 и R0'=clip(R1*3+R0*10+L0*3+8) >> 4. Для L1 и R1 коэффициент фильтрации равен [3, 8, 3, 2]/16, и, таким образом, L1'=clip((L2*3+L1*8+L0*3+R0*2+8) >> 4) и R1'=clip((R2*3+R1*8+R0*3+L0*2+8) >> 4).[00098] If BS=3, filtering is performed on two pixels on each of both sides of the border: for L0 and R0, the filter coefficient is [3, 10, 3]/16, so L0'=clip(L1*3+L0 *10+R0*3+8) >> 4 and R0'=clip(R1*3+R0*10+L0*3+8) >> 4. For L1 and R1, the filter coefficient is [3, 8, 3, 2]/16, and thus L1'=clip((L2*3+L1*8+L0*3+R0*2+8) >> 4) and R1'=clip((R2*3+R1 *8+R0*3+L0*2+8) >> 4).

[00099] Если BS=2 или BS=1, фильтрацию выполняют по одному пикселю с каждой из обеих сторон границы: для L0 и R0 коэффициент фильтрации равен [3, 10, 3]/16, и, таким образом, L0'=clip (L1*3+L0*10+R0*3+8) >> 4 и R0'=clip(R1*3+R0*10+L0*3+8) >> 4. Если BS=0, фильтрацию не выполняют, а именно фильтрацию не выполняют для пикселей по обе стороны от границы.[00099] If BS=2 or BS=1, filtering is performed on one pixel on each of both sides of the border: for L0 and R0 the filter factor is [3, 10, 3]/16, and thus L0'=clip (L1*3+L0*10+R0*3+8) >> 4 and R0'=clip(R1*3+R0*10+L0*3+8) >> 4. If BS=0, no filtering is performed , namely, filtering is not performed for pixels on either side of the border.

[000100] В некоторых вариантах осуществления изобретения Alpha и Beta в описанном выше процессе связаны со средним значением QP блоков по обеим сторонам границы, а именно со средним значением QP текущего блока и левого блока текущего блока (для вертикального DBF-фильтра) или средним значением QP текущего блока и верхнего блока текущего блока (для горизонтального DBF-фильтра). Значения Alpha и Beta могут быть получены путем поиска в таблице, что здесь не ограничивается.[000100] In some embodiments, Alpha and Beta in the process described above are related to the average QP value of the blocks on both sides of the boundary, namely the average QP value of the current block and the left block of the current block (for a vertical DBF filter) or the average QP value the current block and the top block of the current block (for a horizontal DBF filter). Alpha and Beta values can be obtained by searching the table, but are not limited to this.

[000101] На этапе S13 с размером 4*4 в качестве единицы (фильтрацию выполняют с размером 8*8 в качестве единицы, и такую информацию, как значение краевого условия, сохраняют с размером 4*4 в качестве единицы), горизонтальную фильтрацию для всех блоков завершают, и реализация аналогична этапу S12 и здесь не повторяется.[000101] In step S13, with the size 4*4 as the unit (filtering is performed with the size 8*8 as the unit, and information such as the value of the boundary condition is stored with the size 4*4 as the unit), horizontal filtering for all blocks are completed, and the implementation is similar to step S12 and is not repeated here.

[000102] В смежных областях технологии фильтрации, такие как DBF, SAO и ALF, выполняют классификацию на основе значения пикселя текущей точки пикселя или на основе взаимосвязи между значением пикселя текущей точки пикселя и значением пикселя окружающей точки пикселя, а затем выполняют различные операции фильтрации на основе различных классов. В этом случае может иметь место явление избыточной фильтрации, а именно, значения отфильтрованных пикселей намного больше или намного меньше, чем значения неотфильтрованных пикселей, и намного больше или намного меньше, чем исходные значения пикселей. Таким образом, возникают такие проблемы, как плохой эффект фильтрации и плохая производительность кодирования.[000102] In related fields, filtering technologies such as DBF, SAO and ALF perform classification based on the pixel value of the current pixel point or based on the relationship between the pixel value of the current pixel point and the pixel value of the surrounding pixel point, and then perform various filtering operations on based on different classes. In this case, the phenomenon of over-filtering may occur, namely, the values of the filtered pixels are much larger or much smaller than the values of the unfiltered pixels, and much larger or much smaller than the original pixel values. Thus, problems such as poor filtering effect and poor encoding performance occur.

[000103] В связи с этим, варианты осуществления настоящего раскрытия обеспечивают способ кодирования и декодирования, в котором исходное значение пикселя текущей точки пикселя уточняют на основе значения градиента текущей точки пикселя, чтобы сделать уточненное значение пикселя текущей точки пикселя ближе к исходному пикселю, для улучшения производительности кодирования. В процессе фильтрации, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, исходное значение пикселя текущей точки пикселя уточняют на основе значения градиента текущей точки пикселя, чтобы улучшить эффект фильтрации и производительность кодирования.[000103] In this regard, embodiments of the present disclosure provide an encoding and decoding method in which the original pixel value of the current pixel point is refined based on the gradient value of the current pixel point to make the refined pixel value of the current pixel point closer to the original pixel, to improve coding performance. In the filtering process, if the current pixel point in the current block satisfies the condition of enabling the advanced refinement mode, the original pixel value of the current pixel point is refined based on the gradient value of the current pixel point to improve the filtering effect and encoding performance.

[000104] В сочетании с конкретными вариантами осуществления способ кодирования и декодирования в вариантах осуществления настоящего раскрытия будет подробно описан ниже.[000104] In combination with specific embodiments, the encoding and decoding method in the embodiments of the present disclosure will be described in detail below.

[000105] Вариант 1 осуществления изобретения: вариант осуществления настоящего раскрытия обеспечивает способ кодирования и декодирования, который применяется в кодере или декодере. На фиг. 4 показана блок-схема, иллюстрирующая способ кодирования и декодирования. Способ кодирования и декодирования может включать следующие этапы.[000105] Embodiment 1: An embodiment of the present disclosure provides an encoding and decoding method that is applied to an encoder or decoder. In fig. 4 is a flowchart illustrating an encoding and decoding method. The encoding and decoding method may include the following steps.

[000106] На этапе 401, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, значение градиента текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя.[000106] At step 401, if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, the gradient value of the current pixel point is determined based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point.

[000107] В некоторых вариантах осуществления изобретения значение градиента текущей точки пикселя может быть определено на основе разности между исходным значением пикселя текущей точки пикселя и исходным значением пикселя окружающей точки пикселя, а именно, значение градиента текущей точки пикселя отражает разность между двумя значениями пикселей.[000107] In some embodiments of the invention, the gradient value of the current pixel point can be determined based on the difference between the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point, namely, the gradient value of the current pixel point reflects the difference between the two pixel values.

[000108] В некоторых вариантах осуществления изобретения окружающая точка пикселя текущей точки пикселя может быть соседней точкой пикселя для текущей точки пикселя или точкой пикселя, не являющейся соседней для текущей точки пикселя. Окружающая точка пикселя текущей точки пикселя может быть одной или более точками пикселей, расположенными в текущем блоке, или одной или более точками пикселей, расположенными в соседнем блоке текущего блока. Например, окружающая точка пикселя текущей точки пикселя может быть точкой пикселя слева от текущей точки пикселя, или точкой пикселя справа от текущей точки пикселя, или точкой пикселя на верхней стороне текущей точки пикселя, или точкой пикселя на нижней стороне текущей точки пикселя. В вариантах осуществления изобретения положение окружающей точки пикселя текущей точки пикселя здесь не ограничено.[000108] In some embodiments of the invention, the surrounding pixel point of the current pixel point may be an adjacent pixel point to the current pixel point, or a pixel point that is not adjacent to the current pixel point. The surrounding pixel point of the current pixel point may be one or more pixel points located in the current block, or one or more pixel points located in the adjacent block of the current block. For example, the surrounding pixel point of the current pixel point may be a pixel point to the left of the current pixel point, or a pixel point to the right of the current pixel point, or a pixel point on the upper side of the current pixel point, or a pixel point on the lower side of the current pixel point. In embodiments of the invention, the position of the surrounding pixel point of the current pixel point is not limited here.

[000109] Например, как показано на фиг. 3, если текущая точка пикселя представляет собой R0 в текущем блоке, окружающая точка пикселя текущей точки пикселя может быть L0 в левом соседнем блоке текущего блока. Если текущая точка пикселя является точкой пикселя первой строки и второго столбца в текущем блоке, окружающая точка пикселя текущей точки пикселя может быть точкой пикселя восьмой строки и второго столбца в верхнем соседнем блоке текущего блока.[000109] For example, as shown in FIG. 3, if the current pixel point is R0 in the current block, the surrounding pixel point of the current pixel point may be L0 in the left adjacent block of the current block. If the current pixel point is the pixel point of the first row and second column in the current block, the surrounding pixel point of the current pixel point may be the pixel point of the eighth row and second column in the top adjacent block of the current block.

[000110] На этапе 402 определяют уточненное значение пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя. Например, уточненное значение пикселя текущей точки пикселя может быть определено на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения.[000110] At step 402, the refined pixel value of the current pixel point is determined based on the gradient value of the current pixel point and the original pixel value of the current pixel point. For example, the refined pixel value of the current pixel point may be determined based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value, and the second refinement offset value.

[000111] В одной возможной реализации, если значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения. Например, на основе суммы исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения определяют уточненное значение пикселя текущей точки пикселя. Если значение градиента текущей точки пикселя меньше второго порогового значения уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения. Например, на основе суммы исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения определяют уточненное значение пикселя текущей точки пикселя. В некоторых вариантах осуществления изобретения первое пороговое значение уточнения и второе пороговое значение уточнения могут быть противоположны друг другу. Конечно, первое пороговое значение уточнения и второе пороговое значение уточнения также могут не быть противоположными друг другу числами и могут быть установлены произвольно.[000111] In one possible implementation, if the gradient value of the current pixel point is greater than the first refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the first refinement offset value. For example, based on the sum of the original pixel value of the current pixel point and the first refinement offset value, the refined pixel value of the current pixel point is determined. If the gradient value of the current pixel point is less than the second refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the second refinement offset value. For example, based on the sum of the original pixel value of the current pixel point and the second refinement offset value, the refined pixel value of the current pixel point is determined. In some embodiments of the invention, the first refinement threshold and the second refinement threshold may be opposite to each other. Of course, the first refinement threshold value and the second refinement threshold value also may not be opposite numbers to each other and may be set arbitrarily.

[000112] В одной возможной реализации, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, опорная точка пикселя, соответствующая текущей точке пикселя, может быть определена из соседнего блока текущего блока, а значение градиента опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и исходного значения пикселя окружающей точки пикселя опорной точки пикселя; на основе значения градиента опорной точки пикселя и исходного значения пикселя опорной точки пикселя определяют уточненное значение пикселя опорной точки пикселя.[000112] In one possible implementation, if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, a pixel reference point corresponding to the current pixel point can be determined from an adjacent block of the current block, and the gradient value of the pixel reference point is determined based on the original the pixel value of the pixel reference point and the original pixel value of the surrounding pixel point of the pixel reference point; based on the gradient value of the pixel reference point and the original pixel value of the pixel reference point, a refined pixel value of the pixel reference point is determined.

[000113] В некоторых вариантах осуществления изобретения опорная точка пикселя может быть точкой пикселя, соседней с текущей точкой пикселя в соседнем блоке, или точкой пикселя, не соседствующей с текущей точкой пикселя в соседнем блоке, что здесь не ограничивается. Например, как показано на фиг. 3, если текущей точкой пикселя является R0 в текущем блоке, опорной точкой пикселя может быть L0 в левом соседнем блоке текущего блока, или L1, или L2 и т.п.в левом соседнем блоке текущего блока, что здесь не ограничивается. Если текущая точка пикселя представляет собой R1 в текущем блоке, опорной точкой пикселя может быть L0 в левом соседнем блоке текущего блока, или L1, или L2 и т.п.в левом соседнем блоке текущего блока, что здесь не ограничивается. Если текущая точка пикселя является точкой пикселя первой строки и второго столбца в текущем блоке, опорная точка пикселя может быть точкой пикселя восьмой строки и второго столбца в верхнем соседнем блоке текущего блока, или точкой пикселя седьмой строки и второго столбца в верхнем соседнем блоке текущего блока, что здесь не ограничивается.[000113] In some embodiments of the invention, the reference pixel point may be a pixel point adjacent to the current pixel point in an adjacent block, or a pixel point not adjacent to the current pixel point in an adjacent block, but is not limited to this. For example, as shown in FIG. 3, if the current pixel point is R0 in the current block, the pixel reference point may be L0 in the left adjacent block of the current block, or L1, or L2, etc. in the left adjacent block of the current block, which is not limited here. If the current pixel point is R1 in the current block, the reference pixel point may be L0 in the left adjacent block of the current block, or L1 or L2, etc. in the left adjacent block of the current block, which is not limited here. If the current pixel point is the first row and second column pixel point in the current block, the pixel reference point may be the eighth row and second column pixel point in the top adjacent block of the current block, or the seventh row and second column pixel point in the top adjacent block of the current block. which is not limited here.

[000114] В некоторых вариантах осуществления изобретения значение градиента опорной точки пикселя может быть определено на основе разности между исходным значением пикселя опорной точки пикселя и исходным значением пикселя окружающей точки пикселя опорной точки пикселя, а именно, значение градиента отражает разность между двумя значениями пикселей.[000114] In some embodiments of the invention, the gradient value of a pixel reference point may be determined based on the difference between the original pixel value of the pixel reference point and the original pixel value of the surrounding pixel reference point of the pixel, namely, the gradient value reflects the difference between the two pixel values.

[000115] В некоторых вариантах осуществления изобретения окружающая точка пикселя опорной точки пикселя может быть соседней точкой пикселя для опорной точки пикселя или точкой пикселя, не являющейся соседней для опорной точки пикселя. Окружающая точка пикселя для опорной точки пикселя может быть точкой пикселя, расположенной в блоке, где расположена опорная точка пикселя, или точкой пикселя, расположенной в соседнем блоке блока, где расположена опорная точка пикселя. Например, окружающая точка пикселя для опорной точки пикселя может быть точкой пикселя слева от опорной точки пикселя, или точкой пикселя справа от опорной точки пикселя, или точкой пикселя на верхней стороне опорной точки пикселя, или точкой пикселя на нижней стороне опорной точки пикселя. В вариантах осуществления изобретения положение окружающей точки пикселя для опорной точки пикселя здесь не ограничивается.[000115] In some embodiments of the invention, the surrounding pixel point of a pixel reference point may be an adjacent pixel point to the pixel reference point, or a pixel point that is not adjacent to the pixel reference point. The surrounding pixel point for a pixel reference point may be a pixel point located in the block where the pixel reference point is located, or a pixel point located in an adjacent block of the block where the pixel reference point is located. For example, the surrounding pixel point for a pixel anchor point may be a pixel point to the left of the pixel anchor point, or a pixel point to the right of the pixel anchor point, or a pixel point on the upper side of the pixel anchor point, or a pixel point on the lower side of the pixel anchor point. In embodiments of the invention, the position of the surrounding pixel point for the reference pixel point is not limited here.

[000116] В одной возможной реализации окружающая точка пикселя для опорной точки пикселя может быть текущей точкой пикселя в текущем блоке, и аналогичным образом окружающая точка пикселя текущей точки пикселя может быть опорной точкой пикселя в соседнем блоке текущего блока.[000116] In one possible implementation, the surrounding pixel point for a pixel reference point may be the current pixel point in the current block, and similarly, the surrounding pixel point of the current pixel point may be the reference pixel point in an adjacent block of the current block.

[000117] В некоторых вариантах осуществления изобретения на основе значения градиента опорной точки пикселя и исходного значения пикселя опорной точки пикселя определение уточненного значения пикселя опорной точки пикселя может включать, не ограничиваясь этим: на основе значения градиента опорной точки пикселя и исходного значения пикселя опорной точки пикселя, третьего порогового значения уточнения (такого же, как первое пороговое значение уточнения, или отличного от него), четвертого порогового значения уточнения (такого же, как второе пороговое значение уточнения, или отличного от него), третьего значения смещения уточнения (такого же, как первое значение смещения уточнения, или отличного от него) и четвертого значения смещения уточнения (такого же, как третье значение смещения уточнения, или отличного от него), определение уточненного значения пикселя опорной точки пикселя.[000117] In some embodiments, based on the pixel reference point gradient value and the pixel reference point's original pixel value, determining the refined pixel reference point pixel value may include, but is not limited to: based on the pixel reference point gradient value and the pixel reference point's original pixel value , a third refinement threshold (same as or different from the first refinement threshold), a fourth refinement threshold (same as or different from the second refinement threshold), a third refinement offset value (same as a first refinement offset value, or different therefrom) and a fourth refinement offset value (the same as or different from the third refinement offset value), determining a refined pixel value of the pixel reference point.

[000118] Например, если значение градиента опорной точки пикселя больше третьего порогового значения уточнения, уточненное значение пикселя опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и третьего значения смещения уточнения, например, уточненное значение пикселя опорной точки пикселя определяют на основе суммы исходного значения пикселя опорной точки пикселя и третьего значения смещения уточнения. Если значение градиента опорной точки пикселя меньше четвертого порогового значения уточнения, уточненное значение пикселя опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и четвертого значения смещения уточнения, например, уточненное значение пикселя опорной точки пикселя определяют на основе суммы исходного значения пикселя опорной точки пикселя и четвертого значения смещения уточнения.[000118] For example, if the pixel reference point gradient value is greater than the third refinement threshold value, the refined pixel reference point pixel value is determined based on the original pixel reference point pixel value and the third refinement offset value, for example, the refined pixel reference point pixel value is determined based on the sum the original pixel value of the pixel reference point and the third refinement offset value. If the pixel reference point gradient value is less than the fourth refinement threshold value, the refined pixel reference point pixel value is determined based on the original pixel reference point pixel value and the fourth refinement offset value, for example, the refined pixel reference point pixel value is determined based on the sum of the original reference point pixel value pixel and a fourth refinement offset value.

[000119] В некоторых вариантах осуществления изобретения третье пороговое значение уточнения и четвертое пороговое значение уточнения могут быть противоположными друг другу числами. Конечно, третье пороговое значение уточнения и четвертое пороговое значение уточнения также могут не быть противоположными друг другу числами и могут быть установлены произвольно.[000119] In some embodiments of the invention, the third refinement threshold value and the fourth refinement threshold value may be opposite numbers to each other. Of course, the third refinement threshold value and the fourth refinement threshold value also may not be opposite numbers to each other and can be set arbitrarily.

[000120] В одной возможной реализации первое пороговое значение уточнения, второе пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, третье пороговое значение уточнения, четвертое пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, первое пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, третье пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, второе пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, третье пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, первое пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, четвертое пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, второе пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, четвертое пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса.[000120] In one possible implementation, a first refinement threshold, a second refinement threshold, a first refinement offset value, a second refinement offset value, a third refinement threshold, a fourth refinement threshold, a third refinement offset value, and a fourth refinement offset value corresponding to the current block , is determined from high-level syntax. Optionally, a first refinement threshold value, a first refinement offset value, a second refinement offset value, a third refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block are determined from the high-level syntax. Optionally, a second refinement threshold value, a first refinement offset value, a second refinement offset value, a third refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block are determined from the high-level syntax. Optionally, a first refinement threshold value, a first refinement offset value, a second refinement offset value, a fourth refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block are determined from the high-level syntax. Optionally, a second refinement threshold value, a first refinement offset value, a second refinement offset value, a fourth refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block are determined from the high-level syntax.

[000121] В некоторых вариантах осуществления изобретения, если первое пороговое значение уточнения и второе пороговое значение уточнения являются числами, противоположными друг другу, второе пороговое значение уточнения может быть получено после того, как определено первое пороговое значение уточнения из высокоуровневого синтаксиса; и первое пороговое значение уточнения может быть получено после определения второго порогового значения уточнения из высокоуровневого синтаксиса. Если третье пороговое значение уточнения и четвертое пороговое значение уточнения являются числами, противоположными друг другу, четвертое пороговое значение уточнения может быть получено после определения третьего порогового значения уточнения из высокоуровневого синтаксиса; и третье пороговое значение уточнения может быть получено после определения четвертого порогового значения уточнения из высокоуровневого синтаксиса.[000121] In some embodiments of the invention, if the first refinement threshold value and the second refinement threshold value are opposite numbers of each other, the second refinement threshold value may be obtained after the first refinement threshold value is determined from the high-level syntax; and the first refinement threshold may be obtained after determining the second refinement threshold from the high-level syntax. If the third refinement threshold value and the fourth refinement threshold value are opposite numbers of each other, the fourth refinement threshold value can be obtained after determining the third refinement threshold value from the high-level syntax; and the third refinement threshold value may be obtained after determining the fourth refinement threshold value from the high-level syntax.

[000122] В одной возможной реализации определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, может включать, не ограничиваясь этим, следующее: если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения. Например, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, представляет собой заранее заданное первое значение, определяют, что сила границы подлежащей фильтрации границы удовлетворяет условию включения расширенного режима уточнения. В некоторых вариантах осуществления изобретения заранее заданное первое значение может быть равно 0. Конечно, заранее заданное первое значение может также быть другим числом.[000122] In one possible implementation, determining that the current pixel point in the current block satisfies the condition for enabling the enhanced refinement mode may include, but is not limited to, the following: if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the condition enabling the extended refinement mode, determining that the current pixel point satisfies the condition for enabling the extended refinement mode. For example, if the boundary strength of the boundary to be filtered corresponding to the current pixel point is a predetermined first value, it is determined that the boundary strength of the boundary to be filtered satisfies the condition for enabling the advanced refinement mode. In some embodiments of the invention, the predetermined first value may be 0. Of course, the predetermined first value may also be another number.

[000123] Опционально, если информация о свойствах, соответствующая текущему блоку, удовлетворяет условию включения расширенного режима уточнения, определяют, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения. В некоторых вариантах осуществления изобретения информация о свойствах, соответствующая текущему блоку, удовлетворяет условию включения расширенного режима уточнения, а это означает, что, если будет определено, что операция фильтрации не разрешена (операция фильтрации для устранения блочности и т.п.) для текущего блока на основе информации о свойствах, соответствующей текущему блоку, определяют, что информация о свойствах, соответствующая текущему блоку, удовлетворяет условию включения расширенного режима уточнения.[000123] Optionally, if the property information corresponding to the current block satisfies the extended refinement mode enabling condition, it is determined that the current pixel point in the current block satisfies the extended refinement mode enabling condition. In some embodiments of the invention, the property information corresponding to the current block satisfies the condition for enabling the extended refinement mode, which means that if it is determined that a filtering operation is not allowed (deblocking filtering operation, etc.) for the current block based on the property information corresponding to the current block, it is determined that the property information corresponding to the current block satisfies the condition for enabling the extended refinement mode.

[000124] В некоторых вариантах осуществления изобретения до того, как будет определено, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, может быть получен флаг включения расширенного режима уточнения, соответствующий текущему блоку. Если флаг включения расширенного режима уточнения, соответствующий текущему блоку, разрешает текущему блоку включать расширенный режим уточнения, определяют, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима уточнения, т.е. определяют, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения или не удовлетворяет условию включения расширенного режима уточнения.[000124] In some embodiments, before it is determined that the current pixel point in the current block satisfies the enhanced refinement mode enable condition, an enhanced refinement enable flag corresponding to the current block may be obtained. If the enhanced refinement mode enable flag corresponding to the current block allows the current block to enable the enhanced refinement mode, it is determined whether the current pixel point in the current block satisfies the enhanced refinement enable condition, i.e. determining that the current pixel point in the current block satisfies the condition for enabling the extended refinement mode or does not satisfy the condition for enabling the extended refinement mode.

[000125] Опционально, если флаг включения расширенного режима уточнения, соответствующий текущему блоку, запрещает текущему блоку включать расширенный режим уточнения, непосредственно определяют, что текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения.[000125] Optionally, if the enhanced refinement mode enable flag corresponding to the current block prohibits the current block from enabling the enhanced refinement mode, it is directly determined that the current pixel point in the current block does not satisfy the enhanced refinement mode enable condition.

[000126] В некоторых вариантах осуществления изобретения для декодера флаг включения расширенного режима уточнения, соответствующий текущему блоку, определяют из высокоуровневого синтаксиса, а затем на основе флага включения расширенного режима уточнения определяют, разрешить ли текущему блоку включить расширенный режим уточнения.[000126] In some embodiments, for a decoder, an extended refinement mode enable flag corresponding to a current block is determined from high-level syntax, and then based on the extended refinement enable flag, it is determined whether to allow the current block to enable extended refinement mode.

[000127] Например, если значение флага включения расширенного режима уточнения является первым значением (например, 1), то флаг включения расширенного режима уточнения разрешает текущему блоку включить расширенный режим уточнения; если значение флага включения расширенного режима уточнения является вторым значением (например, 0), то флаг включения расширенного режима уточнения запрещает текущему блоку включать расширенный режим уточнения.[000127] For example, if the value of the extended refinement mode enable flag is the first value (eg, 1), then the extended refinement mode enable flag allows the current block to enable the extended refinement mode; if the value of the extended refinement mode enable flag is the second value (eg, 0), then the extended refinement mode enable flag prevents the current block from enabling extended refinement mode.

[000128] В одной возможной реализации, если способ кодирования и декодирования применяется к процессу предсказания (например, внутреннему предсказанию или внешнему предсказанию), исходное значение пикселя текущей точки пикселя может быть значением предсказания, полученным посредством внутреннего предсказания или внешнего предсказания, и уточненное значение пикселя текущей точки пикселя берется в качестве целевого значения пикселя текущей точки пикселя (конечного значения пикселя процесса предсказания). Если способ кодирования и декодирования применяется к процессу фильтрации, исходное значение пикселя текущей точки пикселя может быть значением предсказания перед фильтрацией, а уточненное значение пикселя текущей точки пикселя принимается в качестве целевого значения пикселя текущей точки пикселя (конечного значения пикселя процесса фильтрации).[000128] In one possible implementation, if the encoding and decoding method is applied to a prediction process (eg, intra prediction or inter prediction), the original pixel value of the current pixel point may be the prediction value obtained by intra prediction or inter prediction, and the refined pixel value the current pixel point is taken as the target pixel value of the current pixel point (the final pixel value of the prediction process). If the encoding and decoding method is applied to the filtering process, the original pixel value of the current pixel point may be the prediction value before filtering, and the refined pixel value of the current pixel point is taken as the target pixel value of the current pixel point (the final pixel value of the filtering process).

[000129] Из приведенных выше технических решений видно, что в вариантах осуществления настоящего раскрытия, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, может быть определено уточненное значение пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, а именно уточнение выполняют для исходного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя, для обеспечения того, чтобы уточненное значение пикселя текущей точки пикселя было ближе к исходному пикселю, что улучшает производительность кодирования. В процессах фильтрации, таких как DBF, SAO и ALF, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, уточнение может выполняться для исходного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя, чтобы улучшить эффект фильтрации и производительность кодирования.[000129] From the above technical solutions, it can be seen that in embodiments of the present disclosure, if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, the refined pixel value of the current pixel point can be determined based on the gradient value of the current pixel point and the original value pixel of the current pixel point, namely, refinement is performed on the original pixel value of the current pixel point based on the gradient value of the current pixel point, to ensure that the refined pixel value of the current pixel point is closer to the original pixel, which improves encoding performance. In filtering processes such as DBF, SAO and ALF, if the current pixel point in the current block satisfies the condition of enabling the advanced refinement mode, refinement can be performed on the original pixel value of the current pixel point based on the gradient value of the current pixel point to improve the filtering effect and performance coding.

[000130] В одной возможной реализации, если текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации, фильтрация для устранения блочности (DBF-фильтрация) также может выполняться над исходным значением пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя. Конечно, фильтрация для устранения блочности является только примером, и, таким образом, может использоваться другой режим фильтрации для выполнения фильтрации исходного значения пикселя текущей точки пикселя. Например, фильтрация SAO выполняется для исходного значения пикселя текущей точки пикселя, чтобы получить отфильтрованное значение пикселя текущей точки пикселя. В качестве альтернативы фильтрация ALF выполняется для исходного значения пикселя текущей точки пикселя, чтобы получить отфильтрованное значение пикселя текущей точки пикселя.[000130] In one possible implementation, if the current pixel point in the current block satisfies the general filtering mode enable condition, deblocking filtering (DBF filtering) may also be performed on the original pixel value of the current pixel point to obtain a filtered pixel value of the current pixel point. Of course, deblocking filtering is only an example, and thus another filtering mode can be used to perform filtering on the original pixel value of the current pixel point. For example, SAO filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value of the current pixel point. Alternatively, ALF filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value of the current pixel point.

[000131] В некоторых вариантах осуществления изобретения, с фильтрацией для устранения блочности в качестве примера, со ссылкой на этапы S11-13, фильтрацию для устранения блочности выполняют над исходным значением пикселя текущей точки пикселя, чтобы получить отфильтрованное значение пикселя текущей точки пикселя, что здесь не повторяется.[000131] In some embodiments of the invention, with deblocking filtering as an example, with reference to steps S11-13, deblocking filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value of the current pixel point, which is here does not repeat.

[000132] Из непрерывного рассмотрения этапов S11-13 видно, что, если блоки по обеим сторонам границы являются блоками, не относящимися к внутреннему режиму, без остатков и с согласованным движением, процесс фильтрации будет пропущен, а в противном случае будет выполняться. Когда должен быть выполнен процесс фильтрации, также может быть получено значение BS. Если значение BS равно 0, фильтрацию не выполняют, а именно не выполняют фильтрацию пикселей по обе стороны от границы. Если значение BS больше 0, фильтрацию выполняют для пикселей с обеих сторон границы. В заключение, если блоки по обеим сторонам границы являются блоками, не относящимися к внутреннему режиму, без остатков и с согласованным движением, текущая точка пикселя в текущем блоке не удовлетворяет условию включения общего режима фильтрации. Если условие, согласно которому блоки по обе стороны границы являются блоками, не относящимися к внутреннему режиму, без остатков и с согласованным движением, не выполняется (т.е. блоки по обе стороны границы не являются блоками, не относящимися к внутреннему режиму, или блоки по обе стороны границы имеют остатки или движения блоков по обе стороны границы не согласованы) и BS равно 0, текущая точка пикселя в текущем блоке не удовлетворяет условию включения общего режима фильтрации. Если условие, согласно которому блоки по обе стороны от границы являются блоками, не относящимися к внутреннему режиму, без остатков и с согласованным движением, не выполняется, a BS больше 0, текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации.[000132] From the continuous consideration of steps S11-13, it can be seen that if the blocks on both sides of the boundary are non-internal mode blocks with no residues and consistent motion, the filtering process will be skipped, otherwise it will be executed. When the filtering process is to be performed, the BS value can also be obtained. If the BS value is 0, no filtering is performed, namely, no filtering is performed on the pixels on either side of the border. If the BS value is greater than 0, filtering is performed on pixels on both sides of the border. In conclusion, if the blocks on both sides of the boundary are non-internal mode blocks with no residuals and motion consistent, the current pixel point in the current block does not satisfy the condition for enabling the general filtering mode. If the condition that the blocks on both sides of the boundary are non-internal mode blocks, with no residues and with coordinated movement, is not satisfied (i.e., the blocks on both sides of the boundary are not non-internal mode blocks, or blocks on both sides of the border have residuals or the movements of the blocks on both sides of the border are not consistent) and BS is equal to 0, the current pixel point in the current block does not satisfy the condition for enabling the general filtering mode. If the condition that the blocks on either side of the boundary are non-inner mode, no residue, and motion-consistent blocks is not met, and BS is greater than 0, the current pixel point in the current block satisfies the general filtering mode enable condition.

[000133] Следует отметить, что, если текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации, текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения; если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, текущая точка пикселя в текущем блоке не удовлетворяет условию включения общего режима фильтрации.[000133] It should be noted that if the current pixel point in the current block satisfies the general filter mode enable condition, the current pixel point in the current block does not satisfy the advanced refinement mode enable condition; if the current pixel point in the current block satisfies the condition for enabling the advanced refinement mode, the current pixel point in the current block does not satisfy the condition for enabling the general filtering mode.

[000134] На основе того факта, что текущая точка пикселя удовлетворяет условию включения общего режима фильтрации и фильтрация для устранения блочности выполняется для исходного значения пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя, также необходимо определить, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима фильтрации. Если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, уточненное значение пикселя текущей точки пикселя определяют на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя, и уточненное значение пикселя текущей точки пикселя принимают в качестве целевого значения пикселя текущей точки пикселя (конечного значения пикселя процесса фильтрации для устранения блочности). Если текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации, отфильтрованное значение пикселя текущей точки пикселя не корректируют, а принимают в качестве целевого значения пикселя текущей точки пикселя (конечного значения пикселя процесса фильтрации для устранения блочности).[000134] Based on the fact that the current pixel point satisfies the general filtering mode enable condition and deblocking filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value of the current pixel point, it is also necessary to determine whether the current pixel point satisfies current block, the condition for enabling the advanced filtering mode. If the current pixel point in the current block satisfies the condition for enabling the extended filtering mode, the refined pixel value of the current pixel point is determined based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point, and the refined pixel value of the current pixel point is taken as the target pixel value current pixel point (the final pixel value of the deblocking filtering process). If the current pixel point in the current block does not satisfy the condition for enabling the advanced filtering mode, the filtered pixel value of the current pixel point is not adjusted, but is taken as the target pixel value of the current pixel point (the final pixel value of the filtering process for deblocking).

[000135] В некоторых вариантах осуществления изобретения, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, уточненное значение пикселя текущей точки пикселя определяют на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя, что может включать, не ограничиваясь этим: на основе отфильтрованного значения пикселя текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения фильтрации, второго порогового значения фильтрации, первого значения смещения фильтрации и второго значения смещения фильтрации, определение уточненного значения пикселя текущей точки пикселя.[000135] In some embodiments of the invention, if the current pixel point in the current block satisfies the advanced filtering mode enable condition, the refined pixel value of the current pixel point is determined based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point, which may include, without limitation: based on the filtered pixel value of the current pixel point, the original pixel value of the current pixel point, the first filtering threshold value, the second filtering threshold value, the first filtering offset value and the second filtering offset value, determining the refined pixel value of the current pixel point.

[000136] В некоторых вариантах осуществления изобретения первое пороговое значение фильтрации и второе пороговое значение фильтрации могут иметь противоположные значения. Конечно, первое пороговое значение фильтрации и второе пороговое значение фильтрации также могут не быть противоположными друг другу числами и могут быть установлены произвольно.[000136] In some embodiments of the invention, the first filtering threshold and the second filtering threshold may have opposite values. Of course, the first filter threshold value and the second filter threshold value also may not be opposite numbers to each other and can be set arbitrarily.

[000137] В одной возможной реализации, если текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации, опорная точка пикселя, соответствующая текущей точке пикселя, также может быть определена из соседнего блока текущего блока, и фильтрацию для устранения блочности (DBF-фильтрацию) выполняют для исходного значения пикселя опорной точки пикселя, чтобы получить отфильтрованное значение пикселя опорной точки пикселя. Конечно, фильтрация для устранения блочности является только примером, и может использоваться другой режим фильтрации для выполнения фильтрации исходного значения пикселя опорной точки пикселя. Например, фильтрацию SAO или фильтрацию ALF выполняют для исходного значения пикселя опорной точки пикселя, чтобы получить отфильтрованное значение пикселя опорной точки пикселя.[000137] In one possible implementation, if the current pixel point in the current block satisfies the general filtering mode enable condition, the pixel reference point corresponding to the current pixel point can also be determined from an adjacent block of the current block, and deblocking filtering (DBF filtering) ) is performed on the original pixel value of the pixel reference point to obtain the filtered pixel value of the pixel reference point. Of course, deblocking filtering is only an example, and another filtering mode may be used to perform filtering on the original pixel value of the pixel reference point. For example, SAO filtering or ALF filtering is performed on the original pixel value of the pixel reference point to obtain the filtered pixel value of the pixel reference point.

[000138] В некоторых вариантах осуществления изобретения, с фильтрацией для устранения блочности в качестве примера, со ссылкой на этапы S11-13, фильтрацию для устранения блочности выполняют над исходным значением пикселя опорной точки пикселя, чтобы получить отфильтрованное значение пикселя опорной точки пикселя, что здесь не повторяется.[000138] In some embodiments of the invention, with deblocking filtering as an example, with reference to steps S11-13, deblocking filtering is performed on the original pixel value of the pixel reference point to obtain the filtered pixel value of the pixel reference point, which is here does not repeat.

[000139] В некоторых вариантах осуществления изобретения опорная точка пикселя может быть точкой пикселя, соседней с текущей точкой пикселя в соседнем блоке, или точкой пикселя, не соседствующей с текущей точкой пикселя в соседнем блоке, что здесь не ограничивается.[000139] In some embodiments of the invention, the reference pixel point may be a pixel point adjacent to the current pixel point in an adjacent block, or a pixel point not adjacent to the current pixel point in an adjacent block, but is not limited to this.

[000140] На основе того факта, что текущая точка пикселя удовлетворяет условию включения общего режима фильтрации и фильтрация для устранения блочности выполняется для исходного значения пикселя опорной точки пикселя для получения отфильтрованного значения пикселя опорной точки пикселя, также необходимо определить, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима фильтрации. Если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, уточненное значение пикселя опорной точки пикселя определяют на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя, и уточненное значение пикселя опорной точки пикселя принимают в качестве целевого значения пикселя опорной точки пикселя (конечного значения пикселя процесса фильтрации для устранения блочности). Если текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации, отфильтрованное значение пикселя опорной точки пикселя не корректируют, а отфильтрованное значение пикселя опорной точки пикселя принимают в качестве целевого значения пикселя опорной точки пикселя (конечного значения пикселя процесса фильтрации для устранения блочности).[000140] Based on the fact that the current pixel point satisfies the general filtering mode enable condition and deblocking filtering is performed on the original pixel value of the pixel reference point to obtain the filtered pixel value of the pixel reference point, it is also necessary to determine whether the current pixel point satisfies current block, the condition for enabling the advanced filtering mode. If the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode, the refined pixel value of the pixel reference point is determined based on the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point, and the refined pixel value of the pixel reference point is taken as the target pixel value pixel reference point (the final pixel value of the filtering process for deblocking). If the current pixel point in the current block does not satisfy the condition for enabling the advanced filtering mode, the filtered pixel value of the pixel reference point is not adjusted, and the filtered pixel value of the pixel reference point is taken as the target pixel value of the pixel reference point (the final pixel value of the deblocking filtering process) .

[000141] В некоторых вариантах осуществления изобретения определение уточненного значения пикселя опорной точки пикселя на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя может включать в себя, не ограничиваясь этим: на основе отфильтрованного значения пикселя опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения фильтрации, четвертого порогового значения фильтрации, третьего значения смещения фильтрации и четвертого значения смещения фильтрации, определение уточненного значения пикселя опорной точки пикселя, где третье пороговое значение фильтрации и четвертое пороговое значение фильтрации могут быть числами, противоположными друг другу. Конечно, третье пороговое значение фильтрации и четвертое пороговое значение фильтрации также могут не быть противоположными друг другу числами и могут быть установлены произвольно.[000141] In some embodiments of the invention, determining a refined pixel reference point pixel value based on the filtered pixel reference point pixel value and the original pixel reference point pixel value may include, but is not limited to: based on the filtered pixel reference point pixel value, the original value pixel reference point pixel, a third filter threshold value, a fourth filter threshold value, a third filter offset value and a fourth filter offset value, determining a refined pixel reference point pixel value, where the third filter threshold value and the fourth filter threshold value may be opposite numbers to each other . Of course, the third filter threshold value and the fourth filter threshold value also may not be opposite numbers to each other and can be set arbitrarily.

[000142] В одной возможной реализации первое пороговое значение фильтрации, второе пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье пороговое значение фильтрации, четвертое пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, второе пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, четвертое пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса. Опционально, второе пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, четвертое пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса.[000142] In one possible implementation, a first filtering threshold, a second filtering threshold, a first filtering offset value, a second filtering offset value, a third filtering threshold, a fourth filtering threshold, a third filtering offset value, and a fourth filtering offset value corresponding to the current block , is determined from high-level syntax. Optionally, a first filtering threshold value, a first filtering offset value, a second filtering offset value, a third filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block are determined from the high-level syntax. Optionally, a second filtering threshold value, a first filtering offset value, a second filtering offset value, a third filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block are determined from the high-level syntax. Optionally, a first filtering threshold value, a first filtering offset value, a second filtering offset value, a fourth filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block are determined from the high-level syntax. Optionally, a second filtering threshold value, a first filtering offset value, a second filtering offset value, a fourth filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block are determined from the high-level syntax.

[000143] В некоторых вариантах осуществления изобретения, если первое пороговое значение фильтрации и второе пороговое значение фильтрации являются числами, противоположными друг другу, второе пороговое значение фильтрации может быть получено после того, как определено первое пороговое значение фильтрации из высокоуровневого синтаксиса; и первое пороговое значение фильтрации может быть получено после определения второго порогового значения фильтрации из высокоуровневого синтаксиса. Если третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются противоположными друг другу числами, четвертое пороговое значение фильтрации может быть получено после того, как будет определено третье пороговое значение фильтрации из высокоуровневого синтаксиса; и третье пороговое значение фильтрации может быть получено после того, как определено четвертое пороговое значение фильтрации из высокоуровневого синтаксиса.[000143] In some embodiments of the invention, if the first filtering threshold value and the second filtering threshold value are opposite numbers of each other, the second filtering threshold value may be obtained after the first filtering threshold value is determined from the high-level syntax; and the first filtering threshold value may be obtained after determining the second filtering threshold value from the high-level syntax. If the third filtering threshold value and the fourth filtering threshold value are opposite numbers to each other, the fourth filtering threshold value can be obtained after the third filtering threshold value is determined from the high-level syntax; and the third filtering threshold value may be obtained after the fourth filtering threshold value is determined from the high-level syntax.

[000144] В одной возможной реализации определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, может включать, не ограничиваясь этим, следующее: если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима фильтрации, и абсолютное значение разности между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя больше заранее заданного порогового значения (пороговое значение является положительным значением, которое не ограничено в настоящем документе; например, если первое пороговое значение фильтрации и второе пороговое значение фильтрации являются противоположными друг другу числами, когда первое пороговое значение фильтрации представляет собой положительное значение, заранее заданное пороговое значение является таким же, как первое пороговое значение фильтрации; когда второе пороговое значение фильтрации является положительным значением, заранее заданное пороговое значение является таким же, как второе пороговое значение фильтрации, и, конечно, заранее заданное пороговое значение также может быть другим значением), определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации. В некоторых вариантах осуществления изобретения сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима фильтрации, которое может включать, не ограничиваясь этим, следующее: если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, представляет собой заранее заданное второе значение (оно отличается от заранее заданного первого значения, а именно не равно 0, например, заранее заданное второе значение больше 0), определение того, что сила границы подлежащей фильтрации границы удовлетворяет условию включения расширенного режима фильтрации.[000144] In one possible implementation, determining that the current pixel point in the current block satisfies the condition for enabling the enhanced filtering mode may include, but is not limited to, the following: if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the condition enable the advanced filtering mode, and the absolute value of the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point is greater than a predetermined threshold value (the threshold value is a positive value, which is not limited herein; for example, if the first filtering threshold value and the second filtering threshold value are opposite numbers to each other; when the first filtering threshold value is a positive value, the predetermined threshold value is the same as the first filtering threshold value; when the second filtering threshold value is a positive value, the predetermined threshold value is the same; , as the second filtering threshold value, and of course the predetermined threshold value can also be another value), determining that the current pixel point satisfies the condition for enabling the advanced filtering mode. In some embodiments of the invention, the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies an advanced filtering mode enable condition, which may include, but is not limited to, the following: if the boundary strength of the boundary to be filtered corresponding to the current pixel point is a predetermined second value (it is different from the predetermined first value, namely not equal to 0, for example, the predetermined second value is greater than 0), determining that the boundary strength of the boundary to be filtered satisfies the condition for enabling the advanced filtering mode.

[000145] В некоторых вариантах осуществления изобретения до того, как будет определено, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, может быть получен флаг включения расширенного режима фильтрации, соответствующий текущему блоку. Если флаг включения расширенного режима фильтрации, соответствующий текущему блоку, разрешает текущему блоку включать расширенный режим фильтрации, определяют, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима фильтрации, т.е. определяют, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации или не удовлетворяет условию включения расширенного режима фильтрации.[000145] In some embodiments of the invention, before it is determined that the current pixel point in the current block satisfies the advanced filtering mode enable condition, an advanced filtering mode enable flag corresponding to the current block may be obtained. If the advanced filter mode enable flag corresponding to the current block allows the current block to enable the advanced filter mode, it is determined whether the current pixel point in the current block satisfies the advanced filter mode enable condition, i.e. determine that the current pixel point in the current block satisfies the condition for enabling the extended filtering mode or does not satisfy the condition for enabling the extended filtering mode.

[000146] Опционально, если флаг включения расширенного режима фильтрации, соответствующий текущему блоку, запрещает текущему блоку включать расширенный режим фильтрации, непосредственно определяют, что текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации.[000146] Optionally, if the advanced filter mode enable flag corresponding to the current block prohibits the current block from enabling the advanced filter mode, it is directly determined that the current pixel point in the current block does not satisfy the advanced filter mode enable condition.

[000147] В некоторых вариантах осуществления изобретения для декодера флаг включения расширенного режима фильтрации, соответствующий текущему блоку, анализируют из высокоуровневого синтаксиса, а затем на основе флага включения расширенного режима фильтрации определяют, разрешить ли текущему блоку включать расширенный режим фильтрации.[000147] In some embodiments, for a decoder, the extended filter mode enable flag corresponding to the current block is parsed from the high-level syntax, and then based on the enhanced filter mode enable flag, it is determined whether to allow the current block to enable the enhanced filter mode.

[000148] Например, если значение флага включения расширенного режима фильтрации является первым значением (например, 1), флаг включения расширенного режима фильтрации разрешает текущему блоку включить расширенный режим фильтрации; если значение флага включения расширенного режима фильтрации является вторым значением (например, 0), то флаг включения расширенного режима фильтрации запрещает текущему блоку включать расширенный режим фильтрации.[000148] For example, if the value of the advanced filtering mode enable flag is the first value (eg, 1), the advanced filtering mode enable flag allows the current block to enable the advanced filtering mode; if the value of the advanced filtering mode enable flag is the second value (for example, 0), then the advanced filtering mode enable flag prevents the current block from enabling the advanced filtering mode.

[000149] В некоторых вариантах осуществления изобретения, в приведенных выше вариантах осуществления изобретения, высокоуровневый синтаксис включает в себя, не ограничиваясь этим, один из следующих синтаксисов: высокоуровневый синтаксис набора параметров последовательности (SPS, sequence parameter set), высокоуровневый синтаксис набора параметров изображения (PPS, picture parameter set), высокоуровневый синтаксис заголовка изображения, высокоуровневый синтаксис изображения, высокоуровневый синтаксис заголовка слайса, высокоуровневый синтаксис единицы дерева кодирования (CTU) и высокоуровневый синтаксис единицы кодирования (CU).[000149] In some embodiments, in the above embodiments, the high-level syntax includes, but is not limited to, one of the following syntaxes: high-level sequence parameter set syntax (SPS), high-level image parameter set syntax ( PPS, picture parameter set), high-level picture header syntax, high-level picture syntax, high-level slice header syntax, high-level coding tree unit (CTU) syntax, and high-level coding unit (CU) syntax.

[000150] В некоторых вариантах осуществления изобретения, в приведенных выше вариантах осуществления изобретения, значение пикселя текущей точки пикселя в текущем блоке может быть компонентом яркости или компонентом цветности.[000150] In some embodiments, in the above embodiments, the pixel value of the current pixel point in the current block may be a luma component or a chrominance component.

[000151] Из приведенных выше технических решений видно, что, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, уточненное значение пикселя текущей точки пикселя может быть определено на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя, а именно уточнение выполняют для исходного значения пикселя текущей точки пикселя на основе отфильтрованного значения пикселя текущей точки пикселя, для обеспечения того, чтобы уточненное значение пикселя текущей точки пикселя было ближе к исходному пикселю, что улучшает производительность кодирования. В процессах фильтрации, таких как DBF, SAO и ALF, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, может выполняться уточнение исходного значения пикселя текущей точки пикселя на основе отфильтрованного значения пикселя текущей точки пикселя для улучшения эффекта фильтрации и производительности кодирования.[000151] From the above technical solutions, it can be seen that if the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode, the refined pixel value of the current pixel point can be determined based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point , namely, refinement is performed on the original pixel value of the current pixel point based on the filtered pixel value of the current pixel point, to ensure that the refined pixel value of the current pixel point is closer to the original pixel, which improves encoding performance. In filtering processes such as DBF, SAO and ALF, if the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode, refinement of the original pixel value of the current pixel point based on the filtered pixel value of the current pixel point can be performed to improve the filtering effect and encoding performance .

[000152] Вариант 2 осуществления изобретения: когда должна быть выполнена фильтрация, сначала определяют, следует ли пропустить процесс фильтрации. Например, если блоки с обеих сторон границы (т.е. текущий блок и соседний блок текущего блока, который для вертикальной границы является левым соседним блоком текущего блока, а для горизонтальной границы является верхним соседним блоком текущего блока) являются блоками, не относящимися к внутреннему режиму, (а именно, ни текущий блок, ни соседний блок не являются блоками внутреннего режима), без остатков (отсутствие остатков между текущим блоком и соседним блоком), но с согласованным движением (текущий блок и соседний блок согласованы в движении), процесс фильтрации пропускают, в противном случае процесс фильтрации не пропускают. Таким образом, «пропустить процесс фильтрации» можно использовать в качестве условия включения расширенного режима уточнения, а именно, если процесс фильтрации пропускают для текущей точки пикселя в текущем блоке, текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения. Когда текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения, исходное значение пикселя текущей точки пикселя может быть уточнено на основе расширенного режима уточнения, чтобы сделать значение пикселя ближе к исходному пикселю.[000152] Embodiment 2: When filtering is to be performed, it is first determined whether the filtering process should be skipped. For example, if the blocks on both sides of the border (i.e. the current block and the current block's neighbor block, which for a vertical border is the left neighbor block of the current block, and for a horizontal border is the top neighbor block of the current block) are non-inner blocks mode, (namely, neither the current block nor the neighboring block are internal mode blocks), without residuals (no residuals between the current block and the neighboring block), but with motion consistent (the current block and the neighboring block are motion consistent), filtering process skip, otherwise the filtering process is not skipped. Thus, "skip filtering process" can be used as a condition for enabling the advanced refinement mode, namely, if the filtering process is skipped for the current pixel point in the current block, the current pixel point in the current block satisfies the condition for enabling the extended refinement mode. When the current pixel point satisfies the condition for enabling the extended refinement mode, the original pixel value of the current pixel point can be refined based on the extended refinement mode to make the pixel value closer to the original pixel.

[000153] В некоторых вариантах осуществления изобретения, если информация о свойствах, соответствующая текущему блоку, удовлетворяет условию включения расширенного режима уточнения, определяют, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения. Информация о свойствах, соответствующая текущему блоку, используется для указания того, являются ли блоки по обе стороны границы блоками, не относящимися к внутреннему режиму, для указания того, не имеют ли блоки по обеим сторонам границы остатков, и для указания того, являются ли блоки на обеих сторонах границы согласованными в движении. В результате, если информация о свойствах, соответствующая текущему блоку, используется для указания того, что блоки по обеим сторонам границы являются блоками, не относящимися к внутреннему режиму, для указания того, что блоки по обе стороны границы не имеют остатков, и для указания того, являются ли блоки по обеим сторонам границы согласованными в движении, это указывает на то, что информация о свойствах, соответствующая текущему блоку, удовлетворяет условию включения расширенного режима уточнения, и определяют, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, а именно, каждая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения. Опционально, если информация о свойствах, соответствующая текущему блоку, используется для указания на то, что все блоки по обеим сторонам границы не являются блоками, не относящимися к внутреннему режиму, и/или информация о свойствах, соответствующая текущему блоку, используется для указания того, что блоки по обеим сторонам границы имеют остатки, и/или информация о свойствах, соответствующая текущему блоку, используется для указания того, что блоки по обеим сторонам границы не согласованы в движении, это указывает на то, что информация о свойствах, соответствующая текущему блоку, не удовлетворяет условию включения расширенного режима уточнения, и определяют, что текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения, а именно, каждая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения.[000153] In some embodiments of the invention, if the property information corresponding to the current block satisfies the extended refinement mode enabling condition, it is determined that the current pixel point in the current block satisfies the extended refinement mode enabling condition. Property information corresponding to the current block is used to indicate whether blocks on either side of the boundary are non-internal mode blocks, to indicate whether blocks on both sides of the boundary have no residues, and to indicate whether blocks are on both sides of the border coordinated in movement. As a result, if property information corresponding to the current block is used to indicate that blocks on both sides of the boundary are non-internal mode blocks, to indicate that blocks on both sides of the boundary have no remainders, and to indicate that whether the blocks on both sides of the boundary are motion consistent, indicating that the property information corresponding to the current block satisfies the enhanced refinement mode enabling condition, and determines that the current pixel point in the current block satisfies the enhanced refinement mode enabling condition, namely, each pixel point in the current block satisfies the condition for enabling the extended refinement mode. Optionally, if the property information corresponding to the current block is used to indicate that all blocks on both sides of the boundary are not non-inner mode blocks, and/or the property information corresponding to the current block is used to indicate that that the blocks on both sides of the boundary have remainders, and/or the property information corresponding to the current block is used to indicate that the blocks on both sides of the boundary are not consistent in motion, this indicates that the property information corresponding to the current block is does not satisfy the condition for enabling the extended refinement mode, and it is determined that the current pixel point in the current block does not satisfy the condition for enabling the extended refinement mode, namely, each pixel point in the current block does not satisfy the condition for enabling the extended refinement mode.

[000154] В некоторых вариантах осуществления изобретения, когда текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения, исходное значение пикселя текущей точки пикселя может быть уточнено на основе расширенного режима уточнения. Например, значение градиента текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя, а уточненное значение пикселя текущей точки пикселя определяют на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя. Процесс уточнения уточненного значения пикселя может относиться к последующим вариантам осуществления изобретения и здесь повторяться не будет.[000154] In some embodiments of the invention, when the current pixel point satisfies the enhanced refine mode enable condition, the original pixel value of the current pixel point may be refined based on the extended refine mode. For example, the gradient value of the current pixel point is determined based on the original pixel value of the current pixel point, and the refined pixel value of the current pixel point is determined based on the gradient value of the current pixel point and the original pixel value of the current pixel point. The process of refining the refined pixel value may apply to subsequent embodiments of the invention and will not be repeated here.

[000155] Вариант 3 осуществления изобретения: когда должна быть выполнена фильтрация, сначала определяют, следует ли пропустить процесс фильтрации. Например, если блоки по обеим сторонам границы являются блоками, не относящимися к внутреннему режиму, без остатков, но с согласованным движением, процесс фильтрации пропускают, в противном случае процесс фильтрации не пропускают. Когда процесс фильтрации не пропускают, также может быть определено значение BS. Если значение BS больше 0 (например, значение BS равно 1, 2, 3, 4 и т.п.), фильтрация может выполняться для пикселей с обеих сторон границы. Если значение BS равно 0, фильтрацию не выполняют, а именно фильтрацию не выполняют для пикселей по обе стороны от границы. Таким образом, «значение BS равно 0» может быть принято в качестве условия включения расширенного режима уточнения, а именно: если значение BS текущей точки пикселя в текущем блоке равно 0, текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения; если значение BS текущей точки пикселя в текущем блоке больше 0, текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения.[000155] Embodiment 3: When filtering is to be performed, it is first determined whether the filtering process should be skipped. For example, if the blocks on both sides of the boundary are non-internal mode blocks with no residues but consistent movement, the filtering process is skipped, otherwise the filtering process is not skipped. When the filtering process is not skipped, the BS value can also be determined. If the BS value is greater than 0 (eg, the BS value is 1, 2, 3, 4, etc.), filtering can be performed on pixels on both sides of the border. If the BS value is 0, no filtering is performed, namely, no filtering is performed on the pixels on either side of the boundary. Thus, "BS value is 0" can be taken as the condition for enabling the extended refinement mode, namely: if the BS value of the current pixel point in the current block is 0, the current pixel point in the current block satisfies the condition for enabling the extended refinement mode; if the BS value of the current pixel point in the current block is greater than 0, the current pixel point in the current block does not satisfy the condition for enabling the extended refinement mode.

[000156] В некоторых вариантах осуществления изобретения, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определяют, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения. Например, сначала определяют силу границы подлежащей фильтрации границы, соответствующей текущей точке пикселя. Если сила границы представляет собой заранее заданное первое значение, определяют, что сила границы удовлетворяет условию включения расширенного режима уточнения. Заранее заданное первое значение может быть установлено на основе опыта, например, установлено в 0. В заключение, сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, равна 0, это указывает на то, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, удовлетворяет условию включения расширенного режим уточнения, и определяют, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения.[000156] In some embodiments of the invention, if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the enhanced refinement mode enable condition, it is determined that the current pixel point satisfies the enhanced refinement mode enable condition. For example, the edge strength of the edge to be filtered corresponding to the current pixel point is first determined. If the boundary strength is a predetermined first value, it is determined that the boundary strength satisfies the condition for enabling the extended refinement mode. The predetermined first value can be set based on experience, for example, set to 0. Finally, the boundary strength of the boundary to be filtered corresponding to the current pixel point is 0, which indicates that the boundary strength of the boundary to be filtered corresponding to the current pixel point , satisfies the condition for enabling the extended refinement mode, and it is determined that the current pixel point satisfies the condition for enabling the extended refinement mode.

[000157] Опционально, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, не удовлетворяет условию включения расширенного режима уточнения, определяют, что текущая точка пикселя не удовлетворяет условию включения расширенного режима уточнения. Например, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, не является заранее заданным первым значением, определяют, что сила границы не удовлетворяет условию включения расширенного режима уточнения. Таким образом, определяют, что текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения.[000157] Optionally, if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block does not satisfy the enhanced refinement mode enabling condition, it is determined that the current pixel point does not satisfy the enhanced refinement mode enabling condition. For example, if the edge strength of the edge to be filtered corresponding to the current pixel point is not a predetermined first value, it is determined that the edge strength does not satisfy the condition for enabling the advanced refinement mode. Thus, it is determined that the current pixel point in the current block does not satisfy the condition for enabling the extended refinement mode.

[000158] В некоторых вариантах осуществления изобретения, когда текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения, исходное значение пикселя текущей точки пикселя может быть уточнено на основе расширенного режима уточнения, чтобы сделать значение пикселя ближе к исходному пикселю. Например, значение градиента текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя, а уточненное значение пикселя текущей точки пикселя определяют на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя. Процесс уточнения уточненного значения пикселя может относиться к последующим вариантам осуществления изобретения.[000158] In some embodiments of the invention, when the current pixel point satisfies the extended refine mode enable condition, the original pixel value of the current pixel point may be refined based on the extended refine mode to make the pixel value closer to the original pixel. For example, the gradient value of the current pixel point is determined based on the original pixel value of the current pixel point, and the refined pixel value of the current pixel point is determined based on the gradient value of the current pixel point and the original pixel value of the current pixel point. The process of refining the refined pixel value may be applied to subsequent embodiments of the invention.

[000159] Вариант 4 осуществления изобретения: когда должна выполняться фильтрация, сначала определяют, следует ли пропустить процесс фильтрации. Например, если блоки по обеим сторонам границы являются блоками, не относящимися к внутреннему режиму, без остатков, но с согласованным движением, процесс фильтрации пропускают, в противном случае процесс фильтрации не пропускают. Когда процесс фильтрации не пропускают, также может быть определено значение BS. Если значение BS больше 0 (например, значение BS равно 1, 2, 3, 4 и т.п.), фильтрация может выполняться для пикселей с обеих сторон границы. Если значение BS равно 0, фильтрацию не выполняют, а именно фильтрацию не выполняют для пикселей по обе стороны от границы. Таким образом, «значение BS больше 0» можно принять за условие включения общего режима фильтрации, а именно: если значение BS текущей точки пикселя в текущем блоке больше 0, текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации; если значение BS текущей точки пикселя в текущем блоке равно 0, текущая точка пикселя в текущем блоке не удовлетворяет условию включения общего режима фильтрации.[000159] Embodiment 4: When filtering is to be performed, it is first determined whether the filtering process should be skipped. For example, if the blocks on both sides of the boundary are non-internal mode blocks with no residues but consistent movement, the filtering process is skipped, otherwise the filtering process is not skipped. When the filtering process is not skipped, the BS value can also be determined. If the BS value is greater than 0 (eg, the BS value is 1, 2, 3, 4, etc.), filtering can be performed on pixels on both sides of the border. If the BS value is 0, no filtering is performed, namely, no filtering is performed on the pixels on either side of the boundary. Thus, “BS value is greater than 0” can be taken as the condition for enabling the general filtering mode, namely: if the BS value of the current pixel point in the current block is greater than 0, the current pixel point in the current block satisfies the condition for enabling the general filtering mode; if the BS value of the current pixel point in the current block is 0, the current pixel point in the current block does not satisfy the condition for enabling the general filtering mode.

[000160] В некоторых вариантах осуществления изобретения, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения общего режима фильтрации, определяют, что текущая точка пикселя удовлетворяет условию включения общего режима фильтрации. Например, сначала может быть определена сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя. Если сила границы представляет собой заранее заданное второе значение, определяют, что сила границы удовлетворяет условию включения общего режима фильтрации. Заранее заданное второе значение может быть установлено на основе опыта, например, может быть установлено больше 0, например, равным 1, 2, 3, 4 и т.п. Одним словом, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, больше 0 (т.е. сила границы не равна 0), это указывает на то, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, удовлетворяет условию включения общего режима фильтрации, и определяют, что текущая точка пикселя удовлетворяет условию включения общего режима фильтрации.[000160] In some embodiments of the invention, if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the general filtering mode enabling condition, it is determined that the current pixel point satisfies the general filtering mode enabling condition. For example, the edge strength of the edge to be filtered corresponding to the current pixel point may first be determined. If the boundary strength is a predetermined second value, it is determined that the boundary strength satisfies the condition for enabling the general filtering mode. The predetermined second value can be set based on experience, for example, it can be set to be greater than 0, such as 1, 2, 3, 4, and the like. In a word, if the edge strength of the edge to be filtered corresponding to the current pixel point is greater than 0 (that is, the edge strength is not equal to 0), this indicates that the edge strength of the edge to be filtered corresponding to the current pixel point satisfies the inclusion condition of the general filtering mode, and determining that the current pixel point satisfies the condition for enabling the general filtering mode.

[000161] В качестве альтернативы, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, не удовлетворяет условию включения общего режима фильтрации, определяют, что текущая точка пикселя не удовлетворяет условию включения общего режима фильтрации. Например, сила границы (например, 0) подлежащей фильтрации границы, соответствующей текущей точке пикселя, не является заранее заданным вторым значением, определяют, что сила границы не удовлетворяет условию включения общего режима фильтрации. Таким образом, определяют, что текущая точка пикселя в текущем блоке не удовлетворяет условию включения общего режима фильтрации.[000161] Alternatively, if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block does not satisfy the general filtering mode enabling condition, it is determined that the current pixel point does not satisfy the general filtering mode enabling condition. For example, the edge strength (eg, 0) of the edge to be filtered corresponding to the current pixel point is not a predetermined second value, it is determined that the edge strength does not satisfy the condition for enabling the general filtering mode. Thus, it is determined that the current pixel point in the current block does not satisfy the condition for enabling the general filtering mode.

[000162] В некоторых вариантах осуществления изобретения, когда текущая точка пикселя удовлетворяет условию включения общего режима фильтрации, фильтрация для устранения блочности (DBF-фильтрация, которая используется здесь в качестве примера) может выполняться над исходным значением пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя.[000162] In some embodiments of the invention, when the current pixel point satisfies the general filtering mode enable condition, deblocking filtering (DBF filtering, which is used here as an example) may be performed on the original pixel value of the current pixel point to obtain a filtered pixel value current pixel point.

[000163] Вариант 5 осуществления изобретения: на основе того факта, что текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации, и фильтрация для устранения блочности выполняется над исходным значением пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя, также должно быть определено, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима фильтрации. Например, определяют, превышает ли абсолютное значение разности между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя заранее заданное пороговое значение. Если абсолютное значение больше заранее заданного порогового значения, определяют, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации; если абсолютное значение не больше заранее заданного порогового значения, определяют, что текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации. В заключение, удовлетворение текущей точкой пикселя в текущем блоке условию включения расширенного режима фильтрации может включать следующее: если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима фильтрации, и абсолютное значение разности между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя превышает заранее заданное пороговое значение, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации.[000163] Embodiment 5: Based on the fact that the current pixel point in the current block satisfies the general filtering mode enable condition, and deblocking filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value of the current pixel point, also it must be determined whether the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode. For example, it is determined whether the absolute value of the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point exceeds a predetermined threshold value. If the absolute value is greater than a predetermined threshold value, it is determined that the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode; if the absolute value is not greater than a predetermined threshold value, it is determined that the current pixel point in the current block does not satisfy the condition for enabling the advanced filtering mode. Finally, the satisfaction of the advanced filtering mode enabling condition by the current pixel point in the current block may include the following: if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the advanced filtering mode enabling condition, and the absolute value of the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point exceeds a predetermined threshold value, determining that the current pixel point satisfies the condition for enabling the advanced filtering mode.

[000164] В сочетании с конкретными вариантами осуществления изобретения условие включения расширенного режима фильтрации будет описано ниже.[000164] In combination with specific embodiments of the invention, the condition for enabling the advanced filtering mode will be described below.

[000165] Когда должна выполняться фильтрация, сначала определяют, следует ли пропустить процесс фильтрации. Когда процесс фильтрации не пропускают, также может быть определено значение BS. Если значение BS больше 0, фильтрация может выполняться для пикселей с обеих сторон границы. Следовательно, «значение BS больше 0» принимается как условие включения расширенного режима фильтрации, а именно «значение BS больше 0» принимается как условия включения общего режима фильтрации и расширенного режима фильтрации одновременно. Когда значение BS больше 0, должна выполняться фильтрация для устранения блочности для исходного значения пикселя текущей точки пикселя, чтобы получить отфильтрованное значение пикселя текущей точки пикселя. После получения отфильтрованного значения пикселя текущей точки пикселя также определяют, превышает ли абсолютное значение разности между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя заранее заданное пороговое значение, и «абсолютное значение разности больше заранее заданного порогового значения» принимается в качестве условия включения расширенного режима фильтрации.[000165] When filtering is to be performed, it is first determined whether the filtering process should be skipped. When the filtering process is not skipped, the BS value can also be determined. If the BS value is greater than 0, filtering can be performed on pixels on both sides of the border. Therefore, “BS value is greater than 0” is accepted as the condition for enabling the advanced filtering mode, and specifically, “BS value is greater than 0” is accepted as the conditions for enabling the general filtering mode and the advanced filtering mode simultaneously. When the BS value is greater than 0, deblocking filtering must be performed on the original pixel value of the current pixel point to obtain the filtered pixel value of the current pixel point. After obtaining the filtered pixel value of the current pixel point, it is also determined whether the absolute value of the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point is greater than a predetermined threshold value, and "the absolute value of the difference is greater than the predetermined threshold value" is taken as a condition enable advanced filtering mode.

[000166] В заключение, если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима фильтрации, и абсолютное значение разности между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя превышает заранее заданное пороговое значение, определяют, что текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации. В противном случае определяют, что текущая точка пикселя не удовлетворяет условию включения расширенного режима фильтрации. Например, сначала определяют силу границы подлежащей фильтрации границы, соответствующей текущей точке пикселя. Если сила границы является заранее заданным вторым значением, определяют, что сила границы удовлетворяет условию включения расширенного режима фильтрации. Заранее заданное второе значение устанавливают на основе опыта, например, устанавливают его больше 0, например, равным 1, 2, 3 или 4 и т.п.[000166] Finally, if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode, and the absolute value of the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point exceeds a predetermined threshold value, determine that the current pixel point satisfies the condition for enabling the advanced filtering mode. Otherwise, it is determined that the current pixel point does not satisfy the condition for enabling the advanced filtering mode. For example, the edge strength of the edge to be filtered corresponding to the current pixel point is first determined. If the boundary strength is a predetermined second value, it is determined that the boundary strength satisfies the condition for enabling the advanced filtering mode. The predetermined second value is set based on experience, for example, it is set to be greater than 0, for example, equal to 1, 2, 3 or 4, etc.

[000167] В некоторых вариантах осуществления изобретения, когда текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации, уточненное значение пикселя текущей точки пикселя может быть определено на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя, а затем уточненное значение пикселя текущей точки пикселя берется в качестве целевого значения пикселя текущей точки пикселя (конечного значения пикселя процесса фильтрации для устранения блочности). Если текущая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации, отфильтрованное значение пикселя текущей точки пикселя не корректируют, а принимают в качестве целевого значения пикселя текущей точки пикселя (конечного значения пикселя процесса фильтрации для устранения блочности).[000167] In some embodiments of the invention, when the current pixel point satisfies the condition for enabling the advanced filtering mode, the refined pixel value of the current pixel point may be determined based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point, and then the refined pixel value of the current pixel point is taken as the target pixel value of the current pixel point (the final pixel value of the deblocking filtering process). If the current pixel point in the current block does not satisfy the condition for enabling the advanced filtering mode, the filtered pixel value of the current pixel point is not adjusted, but is taken as the target pixel value of the current pixel point (the final pixel value of the filtering process for deblocking).

[000168] Из приведенных выше вариантов осуществления изобретения 1, 2, 3, 4 и 5 видно, что на основе расширенного режима уточнения, общего режима фильтрации и расширенного режима фильтрации, используемых в настоящем раскрытии, исходное значение пикселя текущей точки пикселя обрабатывают для получения целевого значения пикселя текущей точки пикселя (т.е. конечного значения пикселя). Например, если текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения, исходное значение пикселя текущей точки пикселя может быть уточнено на основе значения градиента текущей точки пикселя в расширенном режиме уточнения для получения уточненного значения пикселя текущей точки пикселя, а уточненное значение пикселя принимают в качестве целевого значения пикселя. Другой пример: если текущая точка пикселя удовлетворяет условию включения общего режима фильтрации, но не удовлетворяет условию включения расширенного режима фильтрации, исходное значение пикселя текущей точки пикселя может быть отфильтровано в общем режиме фильтрации для получения отфильтрованного значения пикселя текущей точки пикселя, а отфильтрованное значение пикселя принимают в качестве целевого значения пикселя. В другом примере, если текущая точка пикселя удовлетворяет как условию включения общего режима фильтрации, так и условию включения расширенного режима фильтрации, исходное значение пикселя текущей точки пикселя фильтруют в расширенном режиме фильтрации для получения отфильтрованного значения пикселя текущей точки пикселя, и исходное значение пикселя текущей точки пикселя уточняют на основе отфильтрованного значения пикселя текущей точки пикселя для получения уточненного значения пикселя текущей точки пикселя, а затем отфильтрованное значение пикселя принимают в качестве целевого значения пикселя.[000168] From the above embodiments 1, 2, 3, 4 and 5, it can be seen that based on the advanced refinement mode, general filtering mode and advanced filtering mode used in the present disclosure, the original pixel value of the current pixel point is processed to obtain the target the pixel value of the current pixel point (i.e. the ending pixel value). For example, if the current pixel point satisfies the condition for enabling the extended refinement mode, the original pixel value of the current pixel point can be refined based on the gradient value of the current pixel point in the extended refinement mode to obtain the refined pixel value of the current pixel point, and the refined pixel value is taken as the target pixel value pixel values. Another example: if the current pixel point satisfies the general filtering mode enable condition but does not satisfy the advanced filtering mode enable condition, the original pixel value of the current pixel point can be filtered in the general filtering mode to obtain the filtered pixel value of the current pixel point, and the filtered pixel value is taken as the target pixel value. In another example, if the current pixel point satisfies both the general filtering mode enable condition and the advanced filtering mode enable condition, the original pixel value of the current pixel point is filtered in the advanced filtering mode to obtain the filtered pixel value of the current pixel point, and the original pixel value of the current point the pixel is refined based on the filtered pixel value of the current pixel point to obtain the refined pixel value of the current pixel point, and then the filtered pixel value is taken as the target pixel value.

[000169] В одной возможной реализации фильтрацию для устранения блочности выполняют для текущего блока, исходное значение пикселя текущей точки пикселя в текущем блоке может быть обработано на основе расширенного режима уточнения, общего режима фильтрации или расширенного режима фильтрации, а именно расширенный режим уточнения, общий режим фильтрации и расширенный режим фильтрации относятся к режиму фильтрации для устранения блочности, то есть расширенный режим уточнения, общий режим фильтрации и расширенный режим фильтрации могут быть подрежимами в режиме фильтрации для устранения блочности. На основе этого в режиме фильтрации для устранения блочности можно определить, следует ли использовать расширенный режим уточнения, или общий режим фильтрации, или расширенный режим фильтрации для обработки исходного значения пикселя текущей точки пикселя.[000169] In one possible implementation, deblocking filtering is performed on the current block, the original pixel value of the current pixel point in the current block may be processed based on an advanced refine mode, a general filtering mode, or an advanced filtering mode, namely, an advanced refine mode, a general mode The filtering mode and the advanced filtering mode refer to the deblocking filtering mode, that is, the advanced refinement mode, the general filtering mode and the advanced filtering mode may be sub-modes of the deblocking filtering mode. Based on this, the deblocking filtering mode can determine whether to use the advanced refine mode, or the general filtering mode, or the advanced filtering mode to process the original pixel value of the current pixel point.

[000170] Конечно, расширенный режим уточнения, общий режим фильтрации и расширенный режим фильтрации также могут относиться к другому типу режима фильтрации, например, режиму фильтрации SAO или режиму фильтрации ALF, а именно расширенный режим уточнения, общий режим фильтрации и расширенный режим фильтрации могут быть подрежимами в режиме фильтрации SAO или подрежимами в режиме фильтрации ALF. Следовательно, в режиме фильтрации SAO или в режиме фильтрации ALF может быть определено использование расширенного режима уточнения, или общего режима фильтрации, или расширенного режима фильтрации для обработки исходного значения пикселя текущей точки пикселя.[000170] Of course, the advanced refinement mode, the general filtering mode, and the advanced filtering mode may also refer to another type of filtering mode, for example, the SAO filtering mode or the ALF filtering mode, namely, the advanced refinement mode, the general filtering mode, and the advanced filtering mode may be submodes in SAO filtering mode or submodes in ALF filtering mode. Therefore, the SAO filtering mode or the ALF filtering mode may be determined to use the advanced refinement mode or the general filtering mode or the advanced filtering mode to process the original pixel value of the current pixel point.

[000171] В некоторых вариантах осуществления изобретения, например, расширенный режим уточнения, общий режим фильтрации и расширенный режим фильтрации относятся к режиму фильтрации для устранения блочности. Таким образом, общий режим фильтрации может называться общим режимом режима фильтрации для устранения блочности, а именно, после того, как фильтрация для устранения блочности выполняется над исходным значением пикселя текущей точки пикселя, чтобы получить отфильтрованное значение пикселя, значение пикселя больше не корректируют. Расширенный режим фильтрации может называться режимом уточнения для устранения блочности (DBR, deblocking refinement), а именно, после того, как фильтрация для устранения блочности выполнена для исходного значения пикселя текущей точки пикселя для получения отфильтрованного значения пикселя, также должно быть выполнено уточнение значения пикселя, отфильтрованного посредством фильтрации для устранения блочности. Расширенный режим уточнения может упоминаться как альтернативный режим уточнения для устранения блочности (ADBR, alternative deblocking refinement), а именно, без выполнения фильтрации для устранения блочности для исходного значения пикселя текущей точки пикселя, исходное значение пикселя текущей точки пикселя уточняют напрямую.[000171] In some embodiments of the invention, for example, the advanced refinement mode, the general filtering mode, and the advanced filtering mode refer to the deblocking filtering mode. Thus, the general filtering mode may be called the general mode of the deblocking filtering mode, namely, after the deblocking filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value, the pixel value is no longer adjusted. The advanced filtering mode can be called deblocking refinement mode (DBR), namely, after deblocking filtering is performed on the original pixel value of the current pixel point to obtain the filtered pixel value, pixel value refinement must also be performed. filtered through deblocking filtering. The advanced refinement mode may be referred to as an alternative deblocking refinement mode (ADBR), that is, without performing deblocking filtering on the original pixel value of the current pixel point, the original pixel value of the current pixel point is refined directly.

[000172] Вариант 6 осуществления изобретения: для вариантов осуществления изобретения 1, 2 и 3 исходное значение пикселя текущей точки пикселя может быть уточнено на основе расширенного режима уточнения. Уточнение исходного значения пикселя может включать в себя следующие этапы.[000172] Embodiment 6: For Embodiments 1, 2 and 3, the original pixel value of the current pixel point can be refined based on the advanced refinement mode. Refining the original pixel value may include the following steps.

[000173] На этапе S21 на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя определяют значение градиента текущей точки пикселя. Например, значение градиента текущей точки пикселя определяют на основе разности между исходным значением пикселя текущей точки пикселя и исходным значением пикселя окружающей точки пикселя, что не ограничивается здесь.[000173] In step S21, based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point, the gradient value of the current pixel point is determined. For example, the gradient value of the current pixel point is determined based on the difference between the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point, which is not limited here.

[000174] На этапе S22 опорную точку пикселя, соответствующую текущей точке пикселя, определяют из соседнего блока текущего блока (для вертикальной границы соседним блоком является левый соседний блок текущего блока, а для горизонтальной границы соседним блоком является верхний соседний блок текущего блока), и значение градиента опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и исходного значения пикселя окружающей точки пикселя опорной точки пикселя. Например, значение градиента опорной точки пикселя может быть определено на основе разности между исходным значением пикселя опорной точки пикселя и исходным значением пикселя окружающей точки пикселя опорной точки пикселя, что не ограничивается в настоящем документе.[000174] In step S22, the pixel reference point corresponding to the current pixel point is determined from the neighboring block of the current block (for a vertical boundary, the neighboring block is the left neighboring block of the current block, and for a horizontal boundary, the neighboring block is the top neighboring block of the current block), and the value The gradient of the pixel reference point is determined based on the original pixel value of the pixel reference point and the original pixel value of the surrounding pixel point of the pixel reference point. For example, the gradient value of the pixel reference point may be determined based on the difference between the original pixel value of the pixel reference point and the original pixel value of the surrounding pixel point of the pixel reference point, which is not limited herein.

[000175] В некоторых вариантах осуществления изобретения значение градиента текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя (например, окружающая точка пикселя является опорной точкой пикселя), а значение градиента опорной точки пикселя определяют на основе исходного значения пикселя окружающей точки пикселя опорной точки пикселя (например, окружающая точка пикселя является текущей точкой пикселя) и исходного значения пикселя опорной точки пикселя.[000175] In some embodiments of the invention, the gradient value of the current pixel point is determined based on the original pixel value of the current pixel point and the original pixel value of the current pixel point's surrounding pixel point (e.g., the surrounding pixel point is the pixel anchor point), and the gradient value of the pixel anchor point determined based on the original pixel value of the surrounding pixel point of the pixel reference point (eg, the surrounding pixel point is the current pixel point) and the original pixel value of the pixel reference point.

[000176] Например, предполагается, что pi указывает исходное значение пикселя текущей точки пикселя в текущем блоке, то есть исходное значение пикселя окружающей точки пикселя опорной точки пикселя, a qi указывает исходное значение пикселя опорной точки пикселя в соседнем блоке, а именно исходное значение пикселя окружающей точки пикселя текущей точки пикселя, и, другими словами, pi и qi соответственно указывают исходные значения пикселей с обеих сторон границы. Значение градиента DPi текущей точки пикселя pi может быть определено следующим образом: DPi=(pi-qi+2) >> 2. Значение градиента DQi опорной точки пикселя qi может быть определено следующим образом: DQi=(qi-pi+2) >> 2. Конечно, выше приведен только пример определения значения градиента текущей точки пикселя и значения градиента опорной точки пикселя, и здесь не делается никаких ограничений. Очевидно, значение градиента текущей точки пикселя определяют на основе разности между исходным значением пикселя текущей точки пикселя и исходным значением пикселя опорной точки пикселя, а значение градиента опорной точки пикселя определяют на основе разности между исходным значением пикселя опорной точки пикселя и исходным значением пикселя текущей точки пикселя.[000176] For example, it is assumed that pi indicates the original pixel value of the current pixel point in the current block, that is, the original pixel value of the surrounding pixel point of the reference point of the pixel, and qi indicates the original pixel value of the reference point of the pixel in the adjacent block, namely the original pixel value surrounding the pixel point of the current pixel point, and in other words, pi and qi respectively indicate the original pixel values on both sides of the boundary. The gradient value DPi of the current pixel point pi can be determined as follows: DPi=(pi-qi+2) >> 2. The gradient value DQi of the reference pixel point qi can be determined as follows: DQi=(qi-pi+2) >> 2. Of course, the above is only an example of determining the gradient value of the current pixel point and the gradient value of the anchor pixel point, and no restrictions are made here. Obviously, the gradient value of the current pixel point is determined based on the difference between the original pixel value of the current pixel point and the original pixel value of the reference pixel point, and the gradient value of the pixel reference point is determined based on the difference between the original pixel value of the reference pixel point and the original pixel value of the current pixel point .

[000177] Например, когда текущая точка пикселя pi равна p0 (соответствует R0 на фиг. 3), а опорная точка пикселя qi равна q0 (соответствует L0 на фиг. 3), значение градиента DP0 текущей точки пикселя p0 определяют следующим образом: DP0=(p0-q0+2) >> 2; значение градиента DQ0 опорной точки пикселя q0 определяют следующим образом: DQ0=(q0-p0+2) >> 2. DP0=(p0-q0+2) >> 2 может быть также выражено как DP0=(p0-q0+1) >> 1, a DQ0=(q0-p0+2) >> 2 может быть также выражено как DQ0=(q0-p0+1) >> 1.[000177] For example, when the current pixel point pi is equal to p0 (corresponding to R0 in FIG. 3) and the reference pixel point qi is equal to q0 (corresponding to L0 in FIG. 3), the gradient value DP0 of the current pixel point p0 is determined as follows: DP0= (p0-q0+2) >> 2; the gradient value DQ0 of the reference point of pixel q0 is determined as follows: DQ0=(q0-p0+2) >> 2. DP0=(p0-q0+2) >> 2 can also be expressed as DP0=(p0-q0+1) >> 1, and DQ0=(q0-p0+2) >> 2 can also be expressed as DQ0=(q0-p0+1) >> 1.

[000178] На этапе S23 определяют уточненное значение пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя. Например, если значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения (также называемого первой величиной смещения уточнения). Если значение градиента текущей точки пикселя меньше второго порогового значения уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения. В некоторых вариантах осуществления изобретения первое пороговое значение уточнения и второе пороговое значение уточнения могут быть противоположны друг другу.[000178] In step S23, the refined pixel value of the current pixel point is determined based on the gradient value of the current pixel point and the original pixel value of the current pixel point. For example, if the gradient value of the current pixel point is greater than the first refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the first refinement offset value (also called the first refinement offset value). If the gradient value of the current pixel point is less than the second refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the second refinement offset value. In some embodiments of the invention, the first refinement threshold and the second refinement threshold may be opposite to each other.

[000179] На этапе S24 определяют уточненное значение пикселя опорной точки пикселя на основе значения градиента опорной точки пикселя и исходного значения пикселя опорной точки пикселя. Например, если значение градиента опорной точки пикселя больше третьего порогового значения уточнения, уточненное значение пикселя опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и третьего значения смещения уточнения (также называемого третьей величиной смещения уточнения). Если значение градиента опорной точки пикселя меньше четвертого порогового значения уточнения, уточненное значение пикселя опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и четвертого значения смещения уточнения. В примере третье пороговое значение уточнения и четвертое пороговое значение уточнения могут быть противоположными друг другу числами.[000179] In step S24, the refined pixel value of the pixel reference point is determined based on the gradient value of the pixel reference point and the original pixel value of the pixel reference point. For example, if the gradient value of the pixel reference point is greater than the third refinement threshold value, the refined pixel value of the pixel reference point is determined based on the original pixel value of the pixel reference point and the third refinement offset value (also called the third refinement offset value). If the gradient value of the pixel reference point is smaller than the fourth refinement threshold value, the refined pixel value of the pixel reference point is determined based on the original pixel value of the pixel reference point and the fourth refinement offset value. In the example, the third refinement threshold value and the fourth refinement threshold value may be opposite numbers to each other.

[000180] Например, если значение градиента DPi текущей точки пикселя pi больше, чем alt_dbr_th (alt_dbr_th представляет первое пороговое значение уточнения), уточненное значение пикселя Pi текущей точки пикселя pi может быть определено следующим образом: Pi=clip(pi+alt_dbr_offset0), где alt_dbr_offset0 представляет первое значение смещения уточнения. В качестве альтернативы, если значение градиента DPi текущей точки пикселя pi меньше, чем -alt_dbr_th (-alt_dbr_th представляет второе пороговое значение уточнения), уточненное значение пикселя Pi текущей точки пикселя pi может быть определено следующим образом: Pi=clip(pi+alt_dbr_offset1), где alt_dbr_offset1 представляет второе значение смещения уточнения.[000180] For example, if the gradient value DPi of the current pixel point pi is greater than alt_dbr_th (alt_dbr_th represents the first refinement threshold value), the refined pixel value Pi of the current pixel point pi can be determined as follows: Pi=clip(pi+alt_dbr_offset0), where alt_dbr_offset0 represents the first refinement offset value. Alternatively, if the gradient value DPi of the current pixel point pi is less than -alt_dbr_th (-alt_dbr_th represents the second refinement threshold), the refined pixel value Pi of the current pixel point pi can be determined as follows: Pi=clip(pi+alt_dbr_offset1), where alt_dbr_offset1 represents the second refinement offset value.

[000181] В приведенном выше варианте осуществления изобретения i может быть 0, 1 или 2. Например, i равно 0, и в этом случае, если DP0>dbr_th, тогда P0=clip(p0+alt_dbr_offset0); если DP0<-dbr_th, то P0=clip(p0+alt_dbr_offset1).[000181] In the above embodiment, i may be 0, 1 or 2. For example, i is 0, in which case, if DP0>dbr_th then P0=clip(p0+alt_dbr_offset0); if DP0<-dbr_th, then P0=clip(p0+alt_dbr_offset1).

[000182] Например, если значение градиента DQi опорной точки пикселя qi больше, чем alt_dbr_th (alt_dbr_th представляет собой третье пороговое значение уточнения, а третье пороговое значение уточнения совпадает с первым пороговым значением уточнения. В практических приложениях третье пороговое значение уточнения может отличаться от первого порогового значения уточнения), уточненное значение пикселя Qi опорной точки пикселя qi может быть определено следующим образом: Qi=clip(qi+alt_dbr_offset0), где alt_dbr_offset0 представляет третье значение смещения уточнения. Здесь третье значение смещения уточнения такое же, как первое значение смещения уточнения. В практических приложениях третье значение смещения уточнения также может отличаться от первого значения смещения уточнения.[000182] For example, if the gradient value DQi of the reference point of pixel qi is greater than alt_dbr_th (alt_dbr_th is the third refinement threshold, and the third refinement threshold is the same as the first refinement threshold. In practical applications, the third refinement threshold may be different from the first threshold refinement value), the refined pixel value Qi of the reference point of pixel qi can be determined as follows: Qi=clip(qi+alt_dbr_offset0), where alt_dbr_offset0 represents the third refinement offset value. Here, the third refinement offset value is the same as the first refinement offset value. In practical applications, the third refinement offset value may also differ from the first refinement offset value.

[000183] В качестве альтернативы, если значение градиента DQi опорной точки пикселя qi меньше alt_dbr_th (alt_dbr_th представляет собой четвертое пороговое значение уточнения, а четвертое пороговое значение уточнения является таким же, как второе пороговое значение уточнения. В практических приложениях четвертое пороговое значение уточнения может отличаться от второго порогового значения уточнения), уточненное значение пикселя Qi опорной точки пикселя qi может быть определено следующим образом: Qi=clip(qi+alt_dbr_offset1), где alt_dbr_offset1 представляет четвертое значение смещения уточнения. Здесь четвертое значение смещения уточнения является таким же, как второе значение смещения уточнения. В практических приложениях четвертое значение смещения уточнения также может отличаться от второго значения смещения уточнения.[000183] Alternatively, if the gradient value DQi of the pixel reference point qi is less than alt_dbr_th (alt_dbr_th is the fourth refinement threshold, and the fourth refinement threshold is the same as the second refinement threshold. In practical applications, the fourth refinement threshold may be different from the second refinement threshold value), the refined pixel value Qi of the reference point of pixel qi can be determined as follows: Qi=clip(qi+alt_dbr_offset1), where alt_dbr_offset1 represents the fourth refinement offset value. Here, the fourth refinement offset value is the same as the second refinement offset value. In practical applications, the fourth refinement offset value may also differ from the second refinement offset value.

[000184] В приведенном выше варианте осуществления изобретения i может быть 0, 1 или 2. Например, когда i равно 0, если DQ0>dbr_th, тогда Q0=clip(q0+alt_dbr_offset0); если DQ0<dbr_th, то Q0=clip(q0+alt_dbr_offset1).[000184] In the above embodiment, i can be 0, 1 or 2. For example, when i is 0, if DQ0>dbr_th then Q0=clip(q0+alt_dbr_offset0); if DQ0<dbr_th, then Q0=clip(q0+alt_dbr_offset1).

[000185] В приведенном выше варианте осуществления изобретения pi представляет исходную точку пикселя текущей точки пикселя, DPi представляет значение градиента текущей точки пикселя, Pi представляет уточненное значение пикселя текущей точки пикселя, qi представляет исходное значение пикселя опорной точки пикселя, DQi представляет значение градиента опорной точки пикселя, Qi представляет уточненное значение пикселя опорной точки пикселя, clip(x) означает, что х ограничен в пределах [0, 2^(bit depth)-1] (включая 0 и 2^(bit depth)-1), a bit depth представляет битовую глубину изображения и обычно равно 8, 10 или 12 и т.п.[000185] In the above embodiment, pi represents the original pixel point of the current pixel point, DPi represents the gradient value of the current pixel point, Pi represents the refined pixel value of the current pixel point, qi represents the original pixel value of the reference point of the pixel, DQi represents the gradient value of the reference point pixel, Qi represents the refined pixel value of the pixel reference point, clip(x) means that x is limited to within [0, 2^(bit depth)-1] (including 0 and 2^(bit depth)-1), a bit depth represents the bit depth of the image and is typically 8, 10, or 12, etc.

[000186] В одной возможной реализации для декодера первое пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, третье пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, могут быть проанализированы из высокоуровневого синтаксиса. Поскольку первое пороговое значение уточнения и второе пороговое значение уточнения являются числами, противоположными друг другу, а третье пороговое значение уточнения и четвертое пороговое значение уточнения являются числами, противоположными друг другу, декодер может определить второе пороговое значение уточнения и четвертое пороговое значение уточнения.[000186] In one possible implementation for a decoder, a first refinement threshold value, a first refinement offset value, a second refinement offset value, a third refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block can be parsed from high-level syntax. Since the first refinement threshold value and the second refinement threshold value are opposite numbers of each other, and the third refinement threshold value and the fourth refinement threshold value are opposite numbers of each other, the decoder can determine the second refinement threshold value and the fourth refinement threshold value.

[000187] В другой возможной реализации для декодера первое пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, четвертое пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, могут быть проанализированы из высокоуровневого синтаксиса. Поскольку первое пороговое значение уточнения и второе пороговое значение уточнения являются числами, противоположными друг другу, а третье пороговое значение уточнения и четвертое пороговое значение уточнения являются числами, противоположными друг другу, декодер может определить второе пороговое значение уточнения и третье пороговое значение уточнения.[000187] In another possible implementation for the decoder, the first refinement threshold value, the first refinement offset value, the second refinement offset value, the fourth refinement threshold value, the third refinement offset value, and the fourth refinement offset value corresponding to the current block can be parsed from the high-level syntax. Since the first refinement threshold value and the second refinement threshold value are opposite numbers of each other, and the third refinement threshold value and the fourth refinement threshold value are opposite numbers of each other, the decoder can determine the second refinement threshold value and the third refinement threshold value.

[000188] В другой возможной реализации для декодера второе пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, третье пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, могут быть проанализированы из высокоуровневого синтаксиса. Поскольку первое пороговое значение уточнения и второе пороговое значение уточнения являются противоположными друг другу числами, а третье пороговое значение уточнения и четвертое пороговое значение уточнения являются противоположными друг другу числами, декодер может определить первое пороговое значение уточнения и четвертое пороговое значение уточнения.[000188] In another possible implementation for a decoder, a second refinement threshold value, a first refinement offset value, a second refinement offset value, a third refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block may be parsed from high-level syntax. Since the first refinement threshold value and the second refinement threshold value are opposite numbers of each other, and the third refinement threshold value and the fourth refinement threshold value are opposite numbers of each other, the decoder can determine the first refinement threshold value and the fourth refinement threshold value.

[000189] В другой возможной реализации для декодера второе пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, четвертое пороговое значение уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения, соответствующие текущему блоку, могут быть проанализированы из высокоуровневого синтаксиса. Поскольку первое пороговое значение уточнения и второе пороговое значение уточнения являются противоположными друг другу числами, а третье пороговое значение уточнения и четвертое пороговое значение уточнения являются противоположными друг другу числами, декодер может определить первое пороговое значение уточнения и третье пороговое значение уточнения.[000189] In another possible implementation for the decoder, the second refinement threshold value, the first refinement offset value, the second refinement offset value, the fourth refinement threshold value, the third refinement offset value, and the fourth refinement offset value corresponding to the current block can be parsed from the high-level syntax. Since the first refinement threshold value and the second refinement threshold value are opposite numbers of each other, and the third refinement threshold value and the fourth refinement threshold value are opposite numbers of each other, the decoder can determine the first refinement threshold value and the third refinement threshold value.

[000190] В другой возможной реализации для декодера первое пороговое значение уточнения (или второе пороговое значение уточнения, или третье пороговое значение уточнения, или четвертое пороговое значение уточнения, а именно, из одного порогового значения уточнения могут быть получены другие три пороговых значения уточнения), первое значение смещения уточнения (или третье значение смещения уточнения), второе значение смещения уточнения (или четвертое значение смещения уточнения), соответствующие текущему блоку, может быть проанализированы из высокоуровневого синтаксиса. Следовательно, поскольку первое пороговое значение уточнения и второе пороговое значение уточнения являются противоположными друг другу числами, может быть определено второе пороговое значение уточнения. Поскольку первое пороговое значение уточнения и третье пороговое значение уточнения одинаковы, можно определить третье пороговое значение уточнения. Поскольку третье значение смещения уточнения и первое значение смещения уточнения одинаковы, может быть определено третье значение смещения уточнения. Поскольку четвертое значение смещения уточнения и второе значение смещения уточнения одинаковы, можно определить четвертое значение смещения уточнения. Поскольку третье пороговое значение уточнения и четвертое пороговое значение уточнения являются числами, противоположными друг другу, можно определить четвертое пороговое значение уточнения.[000190] In another possible implementation for a decoder, a first refinement threshold (or a second refinement threshold, or a third refinement threshold, or a fourth refinement threshold, namely, from one refinement threshold the other three refinement thresholds can be derived), the first refinement offset value (or the third refinement offset value), the second refinement offset value (or the fourth refinement offset value) corresponding to the current block can be parsed from the high-level syntax. Therefore, since the first refinement threshold value and the second refinement threshold value are opposite numbers to each other, the second refinement threshold value can be determined. Since the first refinement threshold and the third refinement threshold are the same, a third refinement threshold can be determined. Since the third refinement offset value and the first refinement offset value are the same, the third refinement offset value can be determined. Since the fourth refinement offset value and the second refinement offset value are the same, the fourth refinement offset value can be determined. Since the third refinement threshold value and the fourth refinement threshold value are opposite numbers to each other, the fourth refinement threshold value can be determined.

[000191] Конечно, выше приведены лишь несколько примеров, которые здесь не ограничиваются, при условии, что декодер может получить первое пороговое значение уточнения, второе пороговое значение уточнения, третье пороговое значение уточнения, четвертое пороговое значение уточнения, первое значение смещения уточнения, второе значение смещения уточнения, третье значение смещения уточнения и четвертое значение смещения уточнения. Упомянутые выше значения могут быть получены путем анализа или вывода.[000191] Of course, the above are just a few examples, which are not limited to, provided that the decoder can obtain a first refinement threshold, a second refinement threshold, a third refinement threshold, a fourth refinement threshold, a first refinement offset value, a second value refinement offsets, a third refinement offset value, and a fourth refinement offset value. The values mentioned above can be obtained by analysis or inference.

[000192] В приведенном выше варианте осуществления изобретения высокоуровневый синтаксис включает, не ограничиваясь этим, один из следующих синтаксисов: высокоуровневый синтаксис SPS, высокоуровневый синтаксис PPS, высокоуровневый синтаксис заголовка изображения, высокоуровневый синтаксис изображения; высокоуровневый синтаксис заголовка слайса, высокоуровневый синтаксис CTU и высокоуровневый синтаксис CU. Конечно, выше приведены лишь несколько примеров высокоуровневых синтаксисов, и типы высокоуровневых синтаксисов здесь не ограничиваются, если пороговые значения уточнения и значения смещения уточнения, соответствующие текущему блоку, могут переноситься высокоуровневыми синтаксисами.[000192] In the above embodiment, the high-level syntax includes, but is not limited to, one of the following syntaxes: high-level SPS syntax, high-level PPS syntax, high-level image header syntax, high-level image syntax; high-level slice header syntax, high-level CTU syntax, and high-level CU syntax. Of course, the above are just a few examples of high-level syntaxes, and the types of high-level syntaxes are not limited here as long as the refinement threshold values and refinement offset values corresponding to the current block can be carried by the high-level syntaxes.

[000193] В описанных выше вариантах осуществления изобретения значение пикселя текущей точки пикселя в текущем блоке может быть компонентом яркости или компонентом цветности.[000193] In the embodiments described above, the pixel value of the current pixel point in the current block may be a luma component or a chrominance component.

[000194] В одной из возможных реализаций флаг включения расширенного режима уточнения показывает, включать ли расширенный режим уточнения. Если флаг включения расширенного режима уточнения разрешает текущему блоку включать расширенный режим уточнения, требуется определить, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима уточнения. Если текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения, исходное значение пикселя текущей точки пикселя уточняют на основе расширенного режима уточнения. Если флаг включения расширенного режима уточнения запрещает текущему блоку включать расширенный режим уточнения, непосредственно определяют, что каждая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения, и исходное значение пикселя текущей точки пикселя не корректируют на основе расширенного режима уточнения. Следовательно, если флаг включения расширенного режима уточнения, соответствующий текущему блоку, разрешает текущему блоку включать расширенный режим уточнения, определяют, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима уточнения. Если флаг включения расширенного режима уточнения, соответствующий текущему блоку, запрещает текущему блоку включать расширенный режим уточнения, определяют, что каждая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима уточнения.[000194] In one possible implementation, the extended refinement mode enable flag indicates whether to enable the extended refinement mode. If the enhanced refinement mode enable flag allows the current block to enable enhanced refinement mode, it is required to determine whether the current pixel point in the current block satisfies the enhanced refinement mode enable condition. If the current pixel point satisfies the condition for enabling the extended refinement mode, the original pixel value of the current pixel point is refined based on the extended refinement mode. If the enhanced refinement mode enable flag prohibits the current block from enabling the enhanced refinement mode, it is directly determined that each pixel point in the current block does not satisfy the enhanced refinement mode enable condition, and the original pixel value of the current pixel point is not adjusted based on the enhanced refinement mode. Therefore, if the enhanced refinement mode enable flag corresponding to the current block allows the current block to enable the enhanced refinement mode, it is determined whether the current pixel point in the current block satisfies the enhanced refinement mode enable condition. If the enhanced refinement mode enable flag corresponding to the current block prohibits the current block from enabling the enhanced refinement mode, it is determined that each pixel point in the current block does not satisfy the enhanced refinement enable condition.

[000195] В некоторых вариантах осуществления изобретения для декодера флаг включения расширенного режима уточнения, соответствующий текущему блоку, может быть проанализирован из высокоуровневого синтаксиса. Например, если флаг включения расширенного режима уточнения имеет первое значение (например, 1), это указывает на то, что флаг включения расширенного режима уточнения разрешает текущему блоку включить расширенный режим уточнения; если флаг включения расширенного режима уточнения имеет второе значение (например, 0), это указывает на то, что флаг включения расширенного режима уточнения запрещает текущему блоку включать расширенный режим уточнения.[000195] In some embodiments of the invention, for a decoder, the extended refinement mode enable flag corresponding to the current block can be parsed from high-level syntax. For example, if the extended refinement mode enable flag has a first value (eg, 1), this indicates that the extended refinement mode enable flag allows the current block to enable extended refinement mode; if the extended refinement mode enable flag has a second value (eg, 0), this indicates that the extended refinement mode enable flag prevents the current block from enabling extended refinement mode.

[000196] В приведенном выше варианте осуществления изобретения высокоуровневый синтаксис включает, не ограничиваясь этим, один из следующих синтаксисов: высокоуровневый синтаксис SPS, высокоуровневый синтаксис PPS, высокоуровневый синтаксис заголовка изображения, высокоуровневый синтаксис изображения; высокоуровневый синтаксис заголовка слайса, высокоуровневый синтаксис CTU и высокоуровневый синтаксис CU. Конечно, выше приведены лишь несколько примеров высокоуровневых синтаксисов, и типы высокоуровневых синтаксисов не ограничиваются здесь, пока флаг включения расширенного режима уточнения, соответствующий текущему блоку, может переноситься высокоуровневыми синтаксисами.[000196] In the above embodiment, the high-level syntax includes, but is not limited to, one of the following syntaxes: high-level SPS syntax, high-level PPS syntax, high-level image header syntax, high-level image syntax; high-level slice header syntax, high-level CTU syntax, and high-level CU syntax. Of course, the above are only a few examples of high-level syntaxes, and the types of high-level syntaxes are not limited here, as long as the extended refinement mode enable flag corresponding to the current block can be carried by high-level syntaxes.

[000197] Вариант 7 осуществления изобретения: для вариантов осуществления изобретения 1 и 5 исходное значение пикселя текущей точки пикселя может быть уточнено на основе расширенного режима фильтрации. Уточнение исходного значения пикселя текущей точки пикселя может включать в себя следующие этапы.[000197] Embodiment 7: For Embodiments 1 and 5, the original pixel value of the current pixel point can be refined based on the advanced filtering mode. Refining the original pixel value of the current pixel point may include the following steps.

[000198] На этапе S31 выполняют фильтрацию для устранения блочности исходного значения пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя.[000198] In step S31, filtering is performed to deblock the original pixel value of the current pixel point to obtain a filtered pixel value of the current pixel point.

[000199] На этапе S32 опорную точку пикселя, соответствующую текущей точке пикселя, определяют из соседнего блока текущего блока (для вертикальной границы соседним блоком является левый соседний блок текущего блока, а для горизонтальной границы соседним блоком является верхний соседний блок текущего блока), и фильтрацию для устранения блочности выполняют над исходным значением пикселя опорной точки пикселя, чтобы получить отфильтрованное значение пикселя опорной точки пикселя.[000199] In step S32, the pixel reference point corresponding to the current pixel point is determined from the neighboring block of the current block (for a vertical boundary, the neighboring block is the left neighboring block of the current block, and for a horizontal boundary, the neighboring block is the top neighboring block of the current block), and filtering to deblock, perform on the original pixel value of the pixel reference point to obtain the filtered pixel value of the pixel reference point.

[000200] В некоторых вариантах осуществления изобретения фильтрацию для устранения блочности выполняют для исходного значения пикселя текущей точки пикселя на основе фильтрации для устранения блочности (DBF) для получения отфильтрованного значения пикселя текущей точки пикселя и фильтрацию для устранения блочности выполняют для исходного значения пикселя опорной точки пикселя на основе DBF для получения отфильтрованного значения пикселя опорной точки пикселя. Конечно, фильтрация также может выполняться для исходного значения пикселя текущей точки пикселя на основе SAO для получения отфильтрованного значения пикселя текущей точки пикселя, и фильтрация выполняется для исходного значения пикселя опорной точки пикселя на основе SAO для получения отфильтрованного значения пикселя опорной точки пикселя. Альтернативно, фильтрация может выполняться для исходного значения пикселя текущей точки пикселя на основе ALF для получения отфильтрованного значения пикселя текущей точки пикселя, и фильтрация выполняется для исходного значения пикселя опорной точки пикселя на основе ALF для получения отфильтрованного значения пикселя опорной точки пикселя. Для простоты описания в последующих вариантах осуществления изобретения, например, фильтрация для устранения блочности выполняется для исходного значения пикселя текущей точки пикселя и опорной точки пикселя на основе DBF.[000200] In some embodiments of the invention, deblocking filtering is performed on the original pixel value of the current pixel point based on deblocking filtering (DBF) to obtain the filtered pixel value of the current pixel point, and deblocking filtering is performed on the original pixel value of the reference pixel point based on DBF to obtain the filtered pixel value of the pixel reference point. Of course, filtering may also be performed on the original pixel value of the current pixel point based on the SAO to obtain a filtered pixel value of the current pixel point, and filtering is performed on the original pixel value of the reference pixel point based on the SAO to obtain the filtered pixel value of the reference pixel point. Alternatively, filtering may be performed on the original pixel value of the current pixel point based on the ALF to obtain a filtered pixel value of the current pixel point, and filtering is performed on the original pixel value of the reference pixel point based on the ALF to obtain the filtered pixel value of the reference pixel point. For ease of description, in subsequent embodiments of the invention, for example, deblocking filtering is performed on the original pixel value of the current pixel point and the reference pixel point based on the DBF.

[000201] Со ссылкой на фиг. 3, в зависимости от положения текущей точки пикселя может выполняться только горизонтальная DBF-фильтрация для текущей точки пикселя и опорной точки пикселя, или выполняется только вертикальная DBF-фильтрация для текущей точки пикселя и опорной точки пикселя, или сначала выполняется вертикальная DBF-фильтрация в текущей точке пикселя и в опорной точке пикселя, а затем выполняется горизонтальная DBF-фильтрация в текущей точке пикселя и в опорной точке пикселя.[000201] With reference to FIG. 3, depending on the position of the current pixel point, only horizontal DBF filtering is performed on the current pixel point and the pixel reference point, or only vertical DBF filtering is performed on the current pixel point and the pixel reference point, or first, vertical DBF filtering is performed on the current pixel point and at the pixel reference point, and then performs horizontal DBF filtering at the current pixel point and at the pixel reference point.

[000202] На этапе S33 на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя определяют уточненное значение пикселя текущей точки пикселя. Например, на основе отфильтрованного значения пикселя текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения фильтрации, второго порогового значения фильтрации, первого значения смещения фильтрации и второго значения смещения фильтрации, определяют уточненное значение пикселя текущей точки пикселя. Первое пороговое значение фильтрации и второе пороговое значение фильтрации могут быть числами, противоположными друг другу.[000202] In step S33, based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point, the refined pixel value of the current pixel point is determined. For example, based on the filtered pixel value of the current pixel point, the original pixel value of the current pixel point, the first filtering threshold value, the second filtering threshold value, the first filtering offset value and the second filtering offset value, the refined pixel value of the current pixel point is determined. The first filter threshold value and the second filter threshold value may be opposite numbers to each other.

[000203] На этапе S34 на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя определяют уточненное значение пикселя опорной точки пикселя. Например, на основе отфильтрованного значения пикселя опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения фильтрации, четвертого порогового значения фильтрации, третьего значения смещения фильтрации и четвертого значения смещения фильтрации определяют уточненное значение пикселя опорной точки пикселя. Третье пороговое значение фильтрации и четвертое пороговое значение фильтрации могут быть противоположными друг другу числами.[000203] In step S34, based on the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point, the refined pixel value of the pixel reference point is determined. For example, based on the filtered pixel value of the pixel reference point, the original pixel value of the pixel reference point, the third filter threshold value, the fourth filter threshold value, the third filter offset value and the fourth filter offset value, the refined pixel value of the pixel reference point is determined. The third filter threshold value and the fourth filter threshold value may be opposite numbers to each other.

[000204] В некоторых вариантах осуществления изобретения, если текущая точка пикселя удовлетворяет только условию включения общего режима фильтрации, но не удовлетворяет условию включения расширенного режима фильтрации, выполняют этапы S31 и S32, чтобы принять отфильтрованное значение пикселя в качестве целевого значения пикселя (конечного значения пикселя процесса фильтрации для устранения блочности). Если текущая точка пикселя удовлетворяет как условию включения общего режима фильтрации, так и условию включения расширенного режима фильтрации, выполняют этапы S31-S34, чтобы принять уточненное значение пикселя в качестве целевого значения пикселя (конечного значения пикселя процесса фильтрации для устранения блочности).[000204] In some embodiments of the invention, if the current pixel point satisfies only the general filtering mode enable condition but does not satisfy the advanced filtering mode enable condition, steps S31 and S32 are performed to take the filtered pixel value as the target pixel value (final pixel value filtering process to remove blocking). If the current pixel point satisfies both the general filtering mode enable condition and the advanced filtering mode enable condition, steps S31 to S34 are performed to take the refined pixel value as the target pixel value (the final pixel value of the deblocking filtering process).

[000205] На этапах S33 и S34 обработка расширенной фильтрации может выполняться над исходным значением пикселя точки пикселя на основе отфильтрованного значения пикселя и неотфильтрованного исходного значения пикселя, а именно, обработку расширенной фильтрации выполняют над исходным значением пикселя точки пикселя для получения отфильтрованного посредством расширенной фильтрации уточненного значения пикселя, так что отфильтрованное посредством расширенной фильтрации уточненное значение пикселя ближе к реальному пикселю, чем отфильтрованное значение пикселя. Следовательно, избегают того, чтобы отфильтрованное значение пикселя было намного больше или намного меньше, чем реальный пиксель точки пикселя, из-за чрезмерной фильтрации, что улучшает качество изображения.[000205] In steps S33 and S34, advanced filtering processing may be performed on the original pixel value of the pixel point based on the filtered pixel value and the unfiltered original pixel value, namely, advanced filtering processing is performed on the original pixel value of the pixel point to obtain the advanced filtered refined pixel value, such that the refined pixel value filtered by advanced filtering is closer to the real pixel than the filtered pixel value. Therefore, the filtered pixel value is avoided to be much larger or much smaller than the actual pixel of the pixel point due to excessive filtering, which improves image quality.

[000206] В некоторых вариантах осуществления изобретения для этапа S33, если разность между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя больше, чем первое пороговое значение фильтрации, уточненное значение пикселя текущей точки пикселя может определяться на основе отфильтрованного значения пикселя текущей точки пикселя, исходного значения пикселя текущей точки пикселя и первого значения смещения фильтрации. Если разность между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя меньше второго порогового значения фильтрации, уточненное значение пикселя текущей точки пикселя может быть определено на основе отфильтрованного значения пикселя текущей точки пикселя, исходного значения пикселя текущей точки пикселя и второго значения смещения фильтрации.[000206] In some embodiments of the invention for step S33, if the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point is greater than the first filtering threshold value, the refined pixel value of the current pixel point may be determined based on the filtered pixel value of the current pixel point. pixel point, the original pixel value of the current pixel point, and the first filter offset value. If the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point is less than the second filtering threshold value, the refined pixel value of the current pixel point can be determined based on the filtered pixel value of the current pixel point, the original pixel value of the current pixel point and the second offset value filtration.

[000207] Например, предполагается, что Y1(i) представляет исходное значение пикселя текущей точки пикселя, Y2(i) представляет отфильтрованное значение пикселя текущей точки пикселя, Y3(i) представляет уточненное значение пикселя текущей точки пикселя, и Yv(i)=(Y1(i)+Y2(i)+1) >> 1.[000207] For example, it is assumed that Y 1 (i) represents the original pixel value of the current pixel point, Y 2 (i) represents the filtered pixel value of the current pixel point, Y 3 (i) represents the refined pixel value of the current pixel point, and Y v (i)=(Y 1 (i)+Y 2 (i)+1) >> 1.

[000208] Таким образом, если Y1(i)-Y2(i)>Tv, то если Y1(i)-Y2(i)<NTv, то В приведенных выше формулах Tv представляет первое пороговое значение фильтрации, представляет первое значение смещения фильтрации, NTV представляет второе пороговое значение фильтрации, представляет второе значение смещения фильтрации, NTV обычно установлено в значение - Tv или другое значение, clip(x) представляет х в пределах заранее заданного диапазона значений, который обычно равен [0, 2D - 1], где D - битовая глубина изображения. Для 8-битного изображения диапазон равен [0, 255], а для 10-битного изображения - [0, 1023].[000208] Thus, if Y 1 (i)-Y 2 (i)>T v , then if Y 1 (i)-Y 2 (i)<NT v , then In the above formulas, T v represents the first filtering threshold value, represents the first filtering offset value, NT V represents the second filtering threshold value, represents the second filter offset value, NT V is usually set to - T v or other value, clip(x) represents x within a predefined range of values, which is usually [0, 2 D - 1], where D is the bit depth of the image . For an 8-bit image, the range is [0, 255], and for a 10-bit image, the range is [0, 1023].

[000209] Для предотвращения превышения отфильтрованным посредством расширенной фильтрации уточненным значением пикселя диапазона значений пикселя, когда получено уточненное значение пикселя, уточненное значение пикселя может быть обрезано до заранее заданного диапазона значений с помощью операции Clip. Когда уточненное значение пикселя превышает верхний предел заранее заданного диапазона значений, уточненное значение пикселя устанавливают равным верхнему пределу заранее заданного диапазона значений; когда уточненное значение пикселя меньше нижнего предела заранее заданного диапазона значений, уточненное значение пикселя устанавливают равным нижнему пределу заранее заданного диапазона значений. Например, для 8-битного изображения, когда уточненное значение пикселя меньше 0, уточненное значение пикселя устанавливают равным 0; когда уточненное значение пикселя больше 255, уточненное значение пикселя устанавливают равным 255.[000209] To prevent the advanced filtered refined pixel value from exceeding the range of pixel values, when the refined pixel value is received, the refined pixel value may be clipped to a predetermined range of values using a Clip operation. When the refined pixel value exceeds the upper limit of the predetermined value range, the refined pixel value is set equal to the upper limit of the predetermined value range; when the refined pixel value is less than the lower limit of the predetermined value range, the refined pixel value is set equal to the lower limit of the predetermined value range. For example, for an 8-bit image, when the refined pixel value is less than 0, the refined pixel value is set to 0; when the refined pixel value is greater than 255, the refined pixel value is set to 255.

[000210] В некоторых вариантах осуществления изобретения для этапа S34, если разность между отфильтрованным значением пикселя опорной точки пикселя и исходным значением пикселя опорной точки пикселя превышает третье пороговое значение фильтрации, уточненное значение пикселя опорной точки пикселя определяют на основе отфильтрованного значения пикселя опорной точки пикселя, исходного значения пикселя опорной точки пикселя и третьего значения смещения фильтрации. Если разность между отфильтрованным значением пикселя опорной точки пикселя и исходным значением пикселя опорной точки пикселя меньше четвертого порогового значения фильтрации, уточненное значение пикселя опорной точки пикселя определяют на основе отфильтрованного значения пикселя опорной точки пикселя, исходного значения пикселя опорной точки пикселя и четвертого значения смещения фильтрации. Способ определения уточненного значения пикселя опорной точки пикселя аналогичен способу определения уточненного значения пикселя текущей точки пикселя и не будет здесь повторяться.[000210] In some embodiments of the invention, for step S34, if the difference between the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point exceeds the third filtering threshold value, the refined pixel value of the pixel reference point is determined based on the filtered pixel value of the pixel reference point, the original pixel value of the pixel reference point and the third filter offset value. If the difference between the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point is less than the fourth filtering threshold value, the refined pixel value of the pixel reference point is determined based on the filtered pixel value of the pixel reference point, the original pixel value of the pixel reference point and the fourth filtering offset value. The method for determining the refined pixel value of a reference pixel point is similar to the method for determining the refined pixel value of the current pixel point and will not be repeated here.

[000211] В некоторых вариантах осуществления изобретения третье пороговое значение фильтрации и первое пороговое значение фильтрации могут быть одинаковыми или различными; третье значение смещения фильтрации и первое значение смещения фильтрации могут быть одинаковыми или различными; четвертое пороговое значение фильтрации и второе пороговое значение фильтрации могут быть одинаковыми или различными; и четвертое значение смещения фильтрации и второе значение смещения фильтрации могут быть одинаковыми или различными.[000211] In some embodiments of the invention, the third filtering threshold and the first filtering threshold may be the same or different; the third filter offset value and the first filter offset value may be the same or different; the fourth filtering threshold value and the second filtering threshold value may be the same or different; and the fourth filter offset value and the second filter offset value may be the same or different.

[000212] В одной возможной реализации для декодера первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, могут анализироваться из высокоуровневого синтаксиса. Поскольку первое пороговое значение фильтрации и второе пороговое значение фильтрации являются противоположными друг другу числами, а третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются противоположными друг другу числами, декодер может определить второе пороговое значение фильтрации и четвертое пороговое значение фильтрации.[000212] In one possible implementation for a decoder, a first filtering threshold value, a first filtering offset value, a second filtering offset value, a third filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block may be parsed from high-level syntax. Since the first filtering threshold value and the second filtering threshold value are opposite numbers to each other, and the third filtering threshold value and the fourth filtering threshold value are opposite numbers to each other, the decoder can determine the second filtering threshold value and the fourth filtering threshold value.

[000213] В другой возможной реализации для декодера первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, четвертое пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, могут анализироваться из высокоуровневого синтаксиса. Поскольку первое пороговое значение фильтрации и второе пороговое значение фильтрации являются противоположными друг другу числами, а третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются противоположными друг другу числами, декодер может определить второе пороговое значение фильтрации и третье пороговое значение фильтрации.[000213] In another possible implementation for a decoder, a first filtering threshold value, a first filtering offset value, a second filtering offset value, a fourth filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block may be parsed from high-level syntax. Since the first filtering threshold value and the second filtering threshold value are opposite numbers to each other, and the third filtering threshold value and the fourth filtering threshold value are opposite numbers to each other, the decoder can determine the second filtering threshold value and the third filtering threshold value.

[000214] В другой возможной реализации для декодера второе пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, могут анализироваться из высокоуровневого синтаксиса. Поскольку первое пороговое значение фильтрации и второе пороговое значение фильтрации являются противоположными друг другу числами, а третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются противоположными друг другу числами, декодер может определить первое пороговое значение фильтрации и четвертое пороговое значение фильтрации.[000214] In another possible implementation for a decoder, a second filtering threshold value, a first filtering offset value, a second filtering offset value, a third filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block may be parsed from high-level syntax. Since the first filtering threshold value and the second filtering threshold value are opposite numbers to each other, and the third filtering threshold value and the fourth filtering threshold value are opposite numbers to each other, the decoder can determine the first filtering threshold value and the fourth filtering threshold value.

[000215] В одной возможной реализации для декодера второе пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, четвертое пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, могут анализироваться из высокоуровневого синтаксиса. Поскольку первое пороговое значение фильтрации и второе пороговое значение фильтрации являются противоположными друг другу числами, а третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются противоположными друг другу числами, декодер может определить первое пороговое значение фильтрации и третье пороговое значение фильтрации.[000215] In one possible implementation for a decoder, a second filtering threshold value, a first filtering offset value, a second filtering offset value, a fourth filtering threshold value, a third filtering offset value, and a fourth filtering offset value corresponding to the current block may be parsed from high-level syntax. Since the first filtering threshold value and the second filtering threshold value are opposite numbers to each other, and the third filtering threshold value and the fourth filtering threshold value are opposite numbers to each other, the decoder can determine the first filtering threshold value and the third filtering threshold value.

[000216] В другой возможной реализации для декодера первое пороговое значение фильтрации (или второе пороговое значение фильтрации, или третье пороговое значение фильтрации, или четвертое пороговое значение фильтрации, а именно, другие три пороговых значения фильтрации могут быть получены из одного порогового значения фильтрации), первое пороговое значение смещения фильтрации (или третье значение смещения фильтрации), второе значение смещения фильтрации (или четвертое значение смещения фильтрации), соответствующие текущему блоку, могут быть проанализированы из высокоуровневого синтаксиса. Следовательно, поскольку первое пороговое значение фильтрации и второе пороговое значение фильтрации являются противоположными друг другу числами, может быть определено второе пороговое значение фильтрации. Поскольку первое пороговое значение фильтрации и третье пороговое значение фильтрации одинаковы, можно определить третье пороговое значение фильтрации. Поскольку третье значение смещения фильтрации и первое значение смещения фильтрации одинаковы, можно определить третье значение смещения фильтрации. Поскольку четвертое значение смещения фильтрации и второе значение смещения фильтрации одинаковы, можно определить четвертое значение смещения фильтрации. Поскольку третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются числами, противоположными друг другу, можно определить четвертое пороговое значение фильтрации.[000216] In another possible implementation for a decoder, a first filtering threshold (or a second filtering threshold, or a third filtering threshold, or a fourth filtering threshold, namely, the other three filtering thresholds may be derived from one filtering threshold), the first filtering offset threshold value (or the third filtering offset value), the second filtering offset value (or the fourth filtering offset value) corresponding to the current block can be parsed from the high-level syntax. Therefore, since the first filtering threshold value and the second filtering threshold value are opposite numbers to each other, the second filtering threshold value can be determined. Since the first filtering threshold value and the third filtering threshold value are the same, a third filtering threshold value can be determined. Since the third filter offset value and the first filter offset value are the same, the third filter offset value can be determined. Since the fourth filter offset value and the second filter offset value are the same, the fourth filter offset value can be determined. Since the third filtering threshold value and the fourth filtering threshold value are opposite numbers to each other, the fourth filtering threshold value can be determined.

[000217] Конечно, выше приведены лишь несколько примеров, которые здесь не ограничиваются, при условии, что декодер может получить первое пороговое значение фильтрации, второе пороговое значение фильтрации, третье пороговое значение фильтрации, четвертое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации. Упомянутые выше значения могут быть получены путем анализа или вывода.[000217] Of course, the above are just a few examples, which are not limited to, provided that the decoder can obtain a first filtering threshold value, a second filtering threshold value, a third filtering threshold value, a fourth filtering threshold value, a first filtering offset value, a second value a filtering offset, a third filtering offset value, and a fourth filtering offset value. The values mentioned above can be obtained by analysis or inference.

[000218] В приведенном выше варианте осуществления изобретения высокоуровневый синтаксис включает, не ограничиваясь этим, один из следующих синтаксисов: высокоуровневый синтаксис SPS, высокоуровневый синтаксис PPS, высокоуровневый синтаксис заголовка изображения, высокоуровневый синтаксис изображения, высокоуровневый синтаксис заголовка слайса, высокоуровневый синтаксис CTU и высокоуровневый синтаксис CU. Конечно, выше приведены лишь несколько примеров высокоуровневых синтаксисов, и типы высокоуровневых синтаксисов не ограничиваются здесь, пока пороговые значения фильтрации и значения смещения фильтрации, соответствующие текущему блоку, могут переноситься высокоуровневыми синтаксисами.[000218] In the above embodiment, the high-level syntax includes, but is not limited to, one of the following syntax: high-level SPS syntax, high-level PPS syntax, high-level image header syntax, high-level image syntax, high-level slice header syntax, high-level CTU syntax, and high-level syntax xis C.U. Of course, the above are only a few examples of high-level syntaxes, and the types of high-level syntaxes are not limited here, as long as the filtering threshold values and filtering offset values corresponding to the current block can be carried by the high-level syntaxes.

[000219] В приведенном выше варианте осуществления изобретения значение пикселя текущей точки пикселя в текущем блоке может быть компонентом яркости или компонентом цветности.[000219] In the above embodiment of the invention, the pixel value of the current pixel point in the current block may be a luma component or a chrominance component.

[000220] В одной возможной реализации флаг включения расширенного режима фильтрации указывает, включать ли расширенный режим фильтрации. Если флаг включения расширенного режима фильтрации разрешает текущему блоку включать расширенный режим фильтрации, требуется определить, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима фильтрации. Если текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации, исходное значение пикселя текущей точки пикселя уточняют на основе расширенного режима фильтрации. Если флаг включения расширенного режима фильтрации запрещает текущему блоку включать расширенный режим фильтрации, непосредственно определяют, что каждая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации, и исходное значение пикселя текущей точки пикселя не корректируют на основе расширенного режима фильтрации. Следовательно, если флаг включения расширенного режима фильтрации, соответствующий текущему блоку, разрешает текущему блоку включать расширенный режим фильтрации, определяют, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима фильтрации. Если флаг включения расширенного режима фильтрации, соответствующий текущему блоку, запрещает текущему блоку включать расширенный режим фильтрации, определяют, что каждая точка пикселя в текущем блоке не удовлетворяет условию включения расширенного режима фильтрации.[000220] In one possible implementation, the advanced filtering mode enable flag indicates whether to enable the advanced filtering mode. If the advanced filtering mode enable flag allows the current block to enable advanced filtering mode, it is necessary to determine whether the current pixel point in the current block satisfies the condition for enabling advanced filtering mode. If the current pixel point satisfies the condition for enabling the advanced filtering mode, the original pixel value of the current pixel point is refined based on the advanced filtering mode. If the advanced filtering mode enable flag prohibits the current block from enabling the advanced filtering mode, it is directly determined that each pixel point in the current block does not satisfy the advanced filtering mode enabling condition, and the original pixel value of the current pixel point is not adjusted based on the advanced filtering mode. Therefore, if the advanced filtering mode enable flag corresponding to the current block allows the current block to enable the advanced filtering mode, it is determined whether the current pixel point in the current block satisfies the advanced filtering mode enabling condition. If the advanced filter mode enable flag corresponding to the current block prohibits the current block from enabling the advanced filter mode, it is determined that each pixel point in the current block does not satisfy the advanced filter mode enable condition.

[000221] Например, для декодера флаг включения расширенного режима фильтрации, соответствующий текущему блоку, может быть проанализирован из высокоуровневого синтаксиса. Например, если флаг включения расширенного режима фильтрации является первым значением (например, 1), это указывает на то, что флаг включения расширенного режима фильтрации разрешает текущему блоку включить расширенный режим фильтрации; если флаг включения расширенного режима фильтрации имеет второе значение (например, 0), это указывает на то, что флаг включения расширенного режима фильтрации запрещает текущему блоку включать расширенный режим фильтрации.[000221] For example, for a decoder, the advanced filter mode enable flag corresponding to the current block can be parsed from high-level syntax. For example, if the advanced filtering mode enable flag is the first value (eg, 1), this indicates that the advanced filtering mode enable flag allows the current block to enable the advanced filtering mode; if the advanced filtering mode enable flag has a second value (eg, 0), this indicates that the advanced filtering mode enable flag prevents the current block from enabling the advanced filtering mode.

[000222] В приведенном выше варианте осуществления изобретения высокоуровневый синтаксис включает, не ограничиваясь этим, один из следующих синтаксисов: высокоуровневый синтаксис SPS, высокоуровневый синтаксис PPS, высокоуровневый синтаксис заголовка изображения, высокоуровневый синтаксис изображения, высокоуровневый синтаксис заголовка слайса, высокоуровневый синтаксис CTU и высокоуровневый синтаксис CU. Конечно, выше приведены лишь несколько примеров высокоуровневых синтаксисов, и типы высокоуровневых синтаксисов здесь не ограничиваются, пока флаг включения расширенного режима фильтрации, соответствующий текущему блоку, может переноситься высокоуровневыми синтаксисами.[000222] In the above embodiment, the high-level syntax includes, but is not limited to, one of the following syntax: high-level SPS syntax, high-level PPS syntax, high-level image header syntax, high-level image syntax, high-level slice header syntax, high-level CTU syntax, and high-level syntax xis C.U. Of course, the above are just a few examples of high-level syntaxes, and the types of high-level syntaxes are not limited here, as long as the advanced filter mode enable flag corresponding to the current block can be carried by high-level syntaxes.

[000223] Вариант 8 осуществления изобретения: когда условие включения общего режима фильтрации выполнено, фильтрация для устранения блочности может выполняться над исходным значением пикселя точки пикселя на основе режима DBF-фильтрации (режима фильтрации для устранения блочности). Поскольку DBF-фильтрация включает в себя вертикальную DBF-фильтрацию и горизонтальную DBF-фильтрацию, фильтрация для устранения блочности может быть выполнена для исходного значения пикселя точки пикселя на следующих этапах.[000223] Embodiment 8: When the general filtering mode enable condition is satisfied, deblocking filtering can be performed on the original pixel value of a pixel point based on the DBF filtering mode (deblocking filtering mode). Since DBF filtering includes vertical DBF filtering and horizontal DBF filtering, deblocking filtering can be performed on the original pixel value of a pixel point in the following steps.

[000224] На этапе 1 отфильтрованное значение Y2(i) пикселя получают путем выполнения вертикальной DBF-фильтрации над исходным значением Y1(i) пикселя.[000224] In step 1, the filtered pixel Y 2 (i) value is obtained by performing vertical DBF filtering on the original pixel Y 1 (i) value.

[000225] На этапе 2 отфильтрованное значение Y3(i) пикселя получают путем выполнения горизонтальной DBF-фильтрации значения Y2(i) пикселя.[000225] In step 2, the filtered pixel Y 3 (i) value is obtained by performing horizontal DBF filtering on the pixel Y 2 (i) value.

[000226] В некоторых вариантах осуществления изобретения, если для точки пикселя выполняют только вертикальную DBF-фильтрацию, выполняют только этап 1 для получения отфильтрованного значения пикселя для точки пикселя; если для точки пикселя выполняют только горизонтальную DBF-фильтрацию, выполняют только этап 2 для получения отфильтрованного значения пикселя точки пикселя, где значение Y2(i) пикселя этапа 2 заменяется исходным значением пикселя точки пикселя. Если сначала выполняется вертикальная DBF-фильтрация в точке пикселя, а затем выполняется горизонтальная DBF-фильтрация в точке пикселя, этапы 1 и 2 выполняют последовательно.[000226] In some embodiments of the invention, if only vertical DBF filtering is performed on a pixel point, only step 1 is performed to obtain the filtered pixel value for the pixel point; if only horizontal DBF filtering is performed on a pixel point, only step 2 is performed to obtain the filtered pixel value of the pixel point, where the Y 2 (i) pixel value of step 2 is replaced by the original pixel value of the pixel point. If vertical DBF filtering is performed at a pixel point first, and then horizontal DBF filtering is performed at a pixel point, steps 1 and 2 are performed sequentially.

[000227] Когда условие включения общего режима фильтрации и условие включения расширенного режима фильтрации оба удовлетворяются, фильтрация для устранения блочности может быть выполнена для исходного значения пикселя точки пикселя на основе режима DBF-фильтрации (фильтрации для устранения блочности), а затем отфильтрованное фильтром устранения блочности значение отфильтрованного пикселя уточняют. Поскольку DBF-фильтрация включает в себя вертикальную DBF-фильтрацию и горизонтальную DBF-фильтрацию, фильтрация для устранения блочности может выполняться для исходного значения пикселя точки пикселя, и значение пикселя, отфильтрованное фильтром устранения блочности, уточняют на следующих этапах.[000227] When the general filtering mode enable condition and the advanced filtering mode enable condition are both satisfied, deblocking filtering can be performed on the original pixel value of the pixel point based on the DBF filtering (deblocking filtering) mode and then filtered by the deblocking filter the value of the filtered pixel is clarified. Since DBF filtering includes vertical DBF filtering and horizontal DBF filtering, deblocking filtering can be performed on the original pixel value of a pixel point, and the pixel value filtered by the deblocking filter is refined in the following steps.

[000228] На этапе 1 отфильтрованное значение Y2(i) пикселя получают путем выполнения вертикальной DBF-фильтрации над исходным значением Y1(i) пикселя.[000228] In step 1, the filtered pixel Y 2 (i) value is obtained by performing vertical DBF filtering on the original pixel Y 1 (i) value.

[000229] На этапе 2 уточненное значение Y3(i) пикселя получают на основе Y2(i)-Y1(i).[000229] In step 2, the refined Y 3 (i) value of the pixel is obtained based on Y 2 (i) - Y 1 (i).

[000230] На этапе 3 отфильтрованное значение Y4(i) пикселя получают путем выполнения горизонтальной DBF-фильтрации значения Y3(i) пикселя.[000230] In step 3, the filtered pixel Y 4 (i) value is obtained by performing horizontal DBF filtering on the Y 3 (i) pixel value.

[000231] На этапе 4 уточненное значение Y5(i) пикселя получают на основе Y4(i)-Y3(i).[000231] In step 4, the refined pixel Y 5 (i) value is obtained based on Y 4 (i) - Y 3 (i).

[000232] В некоторых вариантах осуществления изобретения, если для точки пикселя выполняется только вертикальная DBF-фильтрация, выполняют только этапы 1 и 2 для получения уточненного значения пикселя для точки пикселя. Если для точки пикселя выполняется только горизонтальная DBF-фильтрация, выполняют только этапы 3 и 4 для получения уточненного значения пикселя для точки пикселя, где значение Y3(i) пикселя этапа 3 заменяется исходным значением точки пикселя. Если сначала выполняется вертикальная DBF-фильтрация в точке пикселя, а затем выполняется горизонтальная DBF-фильтрация в точке пикселя, этапы 1, 2, 3 и 4 выполняют последовательно. Если сначала выполняется горизонтальная DBF-фильтрация в точке пикселя, а затем выполняется вертикальная DBF-фильтрация в точке пикселя, этапы аналогичны и здесь повторяться не будут.[000232] In some embodiments of the invention, if only vertical DBF filtering is performed on a pixel point, only steps 1 and 2 are performed to obtain a refined pixel value for the pixel point. If only horizontal DBF filtering is performed on a pixel point, only steps 3 and 4 are performed to obtain a refined pixel value for the pixel point, where the pixel Y 3 (i) value of step 3 is replaced by the original pixel point value. If vertical DBF filtering is performed at a pixel point first, and then horizontal DBF filtering is performed at a pixel point, steps 1, 2, 3, and 4 are performed sequentially. If you first do horizontal DBF filtering at a pixel point and then do vertical DBF filtering at a pixel point, the steps are similar and will not be repeated here.

[000233] В некоторых вариантах осуществления изобретения этапы 2 и 4 представляют собой процедуру обработки расширенного режима фильтрации, когда удовлетворяется условие включения расширенного режима фильтрации, а именно процесс корректировки отфильтрованного значения пикселя для получения уточненного значения пикселя.[000233] In some embodiments, steps 2 and 4 are an advanced filtering mode processing procedure when the advanced filtering mode enable condition is satisfied, namely a process of adjusting the filtered pixel value to obtain a refined pixel value.

[000234] На этапе 2 предполагается, что Yv(i)=(Y1(i)+Y2(i)+1) >> 1. Если Y1(i)-Y2(i)>Tv, то если Y1(i)-Y2(i)<NTV, то и в противном случае Y3(i)=Y2(i) (в одном варианте в этом случае Y3(i) может быть получено фильтрацией Y2(i), например, [000234] In step 2, it is assumed that Y v (i)=(Y 1 (i)+Y 2 (i)+1) >> 1. If Y 1 (i)-Y 2 (i)>T v , That if Y 1 (i)-Y 2 (i)<NT V , then and otherwise Y 3 (i)=Y 2 (i) (in one embodiment, in this case Y 3 (i) can be obtained by filtering Y 2 (i), for example,

[000235] В некоторых вариантах осуществления изобретения clip(x) представляет, что х ограничен заранее заданным диапазоном значений изображения, который обычно равен [0, 2D-1], где D представляет собой битовую глубину изображения. Для 8-битного изображения диапазон значений изображения может быть [0, 255]; для 10-битного изображения диапазон значений изображения составляет [0, 1023]. Пороговое значение NTV обычно устанавливается равным - Tv или другому значению.[000235] In some embodiments, clip(x) represents that x is limited to a predetermined range of image values, which is typically [0, 2 D -1], where D represents the bit depth of the image. For an 8-bit image, the range of image values can be [0, 255]; for a 10-bit image, the range of image values is [0, 1023]. The threshold value NT V is usually set equal to - T v or other value.

[000236] Аналогично этапу 2, на этапе 4, в предположении, что Yh(i)=(Y3(i)+Y4(i)+1) >> 1, если Y4(i)-Y3(i)>Th, то если Y1(i)-Y2(i)<NTh, то и в противном случае Y5(i)=Y4(i) (в одном варианте в этом случае Y5(i) может быть получено фильтрацией Y4(i); например, где NTh обычно имеет значение - Th или другое значение. [000237] В приведенном выше варианте осуществления изобретения Tv и NTv представляют пороговые значения фильтрации, f0v, f1v и f2v представляют значения смещения фильтрации, a clip(x) представляет собой значение х, ограниченное в пределах заранее заданного диапазона значений. Например, Tv относится к вышеупомянутому первому пороговому значению фильтрации и третьему пороговому значению фильтрации (например, первое пороговое значение фильтрации и третье пороговое значение фильтрации одинаковы), NTv относится к вышеупомянутому второму пороговому значению фильтрации и четвертому пороговому значению фильтрации (например, второе пороговое значение фильтрации и четвертое пороговое значение фильтрации совпадают), f0v относится к вышеупомянутому первому значению смещения фильтрации и третьему значению смещения фильтрации (например, первое значение смещения фильтрации и третье значение смещения фильтрации совпадают), a f1v относится к вышеупомянутому второму значению смещения фильтрации и четвертому значению смещения фильтрации (например, второе значение смещения фильтрации и четвертое значение смещения фильтрации совпадают). NTv=-Tv, где Tv и NTv - числа, противоположные друг другу.[000236] Similar to step 2, in step 4, assuming that Y h (i)=(Y 3 (i)+Y 4 (i)+1) >> 1, if Y 4 (i)-Y 3 ( i)>T h , then if Y 1 (i)-Y 2 (i)<NT h , then and otherwise Y 5 (i)=Y 4 (i) (in one embodiment, in this case Y 5 (i) can be obtained by filtering Y 4 (i); for example, where NT h usually has the value - T h or other value. [000237] In the above embodiment, Tv and NT v represent filtering threshold values, f0v, f1v and f2v represent filtering offset values, and clip(x) represents a value of x limited within a predetermined range of values. For example, Tv refers to the above-mentioned first filtering threshold and the third filtering threshold (for example, the first filtering threshold and the third filtering threshold are the same), NTv refers to the above-mentioned second filtering threshold and the fourth filtering threshold (for example, the second filtering threshold and the fourth filtering threshold value are the same), f0v refers to the above-mentioned first filtering offset value and the third filtering offset value (for example, the first filtering offset value and the third filtering offset value are the same), and f1v refers to the above-mentioned second filtering offset value and the fourth filtering offset value (eg, the second filter offset value and the fourth filter offset value are the same). NTv=-Tv, where Tv and NTv are numbers opposite to each other.

[000238] В приведенном выше варианте осуществления изобретения Th и NTh являются пороговыми значениями фильтрации, f0h, f1h и f2h являются значениями смещения фильтрации, a clip(x) представляет, что значение х ограничено в пределах заранее заданного диапазона значений. Например, Th относится к вышеупомянутому первому пороговому значению фильтрации и третьему пороговому значению фильтрации (например, первое пороговое значение фильтрации и третье пороговое значение фильтрации одинаковы), NTh относится к вышеупомянутому второму пороговому значению фильтрации и четвертому пороговому значению фильтрации (например, второе пороговое значение фильтрации и четвертое пороговое значение фильтрации совпадают), f0h относится к вышеупомянутому первому значению смещения фильтрации и третьему значению смещения фильтрации (например, первое значение смещения фильтрации и третье значение смещения фильтрации совпадают), a f1h относится к вышеупомянутому второму значению смещения фильтрации и четвертому значению смещения фильтрации (например, второе значение смещения фильтрации и четвертое значение смещения фильтрации совпадают). NTh=-Th, где Th и NTh - числа, противоположные друг другу.[000238] In the above embodiment, Th and NTh are filtering threshold values, f0h, f1h and f2h are filtering offset values, and clip(x) represents that the value of x is limited within a predetermined range of values. For example, Th refers to the above-mentioned first filtering threshold and the third filtering threshold (for example, the first filtering threshold and the third filtering threshold are the same), NTh refers to the above-mentioned second filtering threshold and the fourth filtering threshold (for example, the second filtering threshold and the fourth filtering threshold value are the same), f0h refers to the above-mentioned first filtering offset value and the third filtering offset value (for example, the first filtering offset value and the third filtering offset value are the same), and f1h refers to the above-mentioned second filtering offset value and the fourth filtering offset value (eg, the second filter offset value and the fourth filter offset value are the same). NTh=-Th, where Th and NTh are numbers opposite to each other.

[000239] Вариант 9 осуществления изобретения: в DBF, если фильтрация выполняется только на основе установленного правила, будет иметь место избыточная фильтрация или недостаточная фильтрация. Например, если значение реконструкции до DBF равно Y1, а значение пикселя после DBF равно Y2, классификация может выполняться на основе Y2-Y1. Классификация на основе остатка фильтрации имеет следующие основные преимущества: для некоторых значений пикселей, подвергнутых избыточной фильтрации или псевдофильтрации, может быть выполнено специальное расширение, чтобы сделать пиксели этих классов ближе к исходному значению. Избыточная фильтрация относится к тому, что Y2 намного больше (или намного меньше) Y1, и, следовательно, Y2 намного больше (или намного меньше) исходного значения пикселя. Псевдофильтрация относится к тому, что Y2-Y1 равно 0 или близко к 0, а именно, эти значения пикселей остаются неизменными после фильтрации, так что не удалось добиться эффекта фильтрации. Для вышеупомянутого обнаружения в настоящем варианте осуществления изобретения значение пикселя точки пикселя может быть уточнено на основе расширенного режима уточнения, а именно, если расширенный режим уточнения включен для текущей точки пикселя в текущем блоке, исходное значение пикселя текущей точки пикселя уточняют на основе расширенного режима уточнения, а не общего режима фильтрации или расширенного режима фильтрации.[000239] Embodiment 9: In DBF, if filtering is performed only based on a set rule, over-filtering or under-filtering will occur. For example, if the reconstruction value before DBF is Y1 and the pixel value after DBF is Y2, classification can be performed based on Y2-Y1. Classification based on the filter residual has the following main advantages: For some pixel values that are over-filtered or pseudo-filtered, special expansion can be performed to make the pixels of these classes closer to the original value. Over-filtering refers to Y2 being much larger (or much smaller) than Y1, and therefore Y2 being much larger (or much smaller) than the original pixel value. Pseudo-filtering refers to Y2-Y1 being 0 or close to 0, namely, these pixel values remain unchanged after filtering, so that the filtering effect cannot be achieved. For the above detection, in the present embodiment of the invention, the pixel value of the pixel point can be refined based on the extended refinement mode, namely, if the extended refinement mode is enabled for the current pixel point in the current block, the original pixel value of the current pixel point is refined based on the extended refinement mode. rather than general filtering mode or advanced filtering mode.

[000240] В одной возможной реализации процесс уточнения исходного значения пикселя может включать в себя следующие этапы.[000240] In one possible implementation, the process of refining the original pixel value may include the following steps.

[000241] На этапе 1 отфильтрованное значение Y2(i) пикселя получают путем выполнения вертикальной DBF-фильтрации исходного значения Y1(i) пикселя.[000241] In step 1, the filtered pixel Y 2 (i) value is obtained by performing vertical DBF filtering on the original pixel Y 1 (i) value.

[000242] На этапе 2 получают уточненное значение Y3(i) пикселя на основе Y2(i)-Y1(i).[000242] In step 2, the refined Y 3 (i) value of the pixel is obtained based on Y 2 (i) - Y 1 (i).

[000243] На этапе 3 получают отфильтрованное значение Y4(i) пикселя путем выполнения горизонтальной DBF-фильтрации значения Y3(i) пикселя.[000243] In step 3, the filtered pixel Y 4 (i) value is obtained by performing horizontal DBF filtering on the pixel Y 3 (i) value.

[000244] На этапе 4 получают уточненное значение пикселя Y5(i) на основе Y4(i)-Y3(i).[000244] In step 4, the refined pixel value Y 5 (i) is obtained based on Y 4 (i)-Y 3 (i).

[000245] На этапе 2 возможны следующие два случая: abs(Y2(i)-Y1(i))< порогового значения и abs(Y2(i)-Y1(i)) не меньше, чем пороговое значение. Если abs(Y2(i)-Y1((i))< порогового значения, могут иметь место следующие два случая: BS равно 0 и BS больше 0. В некоторых вариантах осуществления изобретения пороговое значение может быть вышеприведенным первым пороговым значением фильтрации или вторым пороговым значением фильтрации, при этом, например, первое пороговое значение фильтрации и второе пороговое значение фильтрации являются числами, противоположными друг другу. Если первое пороговое значение фильтрации является положительным значением, пороговое значение может быть первым пороговым значением фильтрации; если второе пороговое значение фильтрации является положительным значением, пороговое значение может быть вторым пороговым значением фильтрации.[000245] In step 2, the following two cases are possible: abs(Y 2 (i)-Y 1 (i))< threshold value and abs(Y 2 (i)-Y 1 (i)) not less than the threshold value. If abs(Y 2 (i)-Y 1 ((i))< threshold value, the following two cases may occur: BS is equal to 0 and BS is greater than 0. In some embodiments of the invention, the threshold value may be the above first filtering threshold value or a second filtering threshold value, wherein, for example, the first filtering threshold value and the second filtering threshold value are opposite numbers of each other. If the first filtering threshold value is a positive value, the threshold value may be the first filtering threshold value if the second filtering threshold value is; a positive value, the threshold value may be a second filtering threshold value.

[000246] В заключение, процесс уточнения исходного значения пикселя может включать в себя следующие три случая.[000246] Finally, the process of refining the original pixel value may include the following three cases.

[000247] Случай 1: когда BS равно 0, фильтрация не выполняется (т.е. Y2(i) равно Y1(i), что эквивалентно невыполнению вертикальной DBF-фильтрации исходного значения пикселя Y1(i), а именно, невыполнению этапа 1), но исходное значение Y1(i) пикселя может быть уточнено на основе расширенного режима уточнения для получения уточненного значения пикселя.[000247] Case 1: When BS is 0, no filtering is performed (i.e., Y 2 (i) is equal to Y 1 (i), which is equivalent to not performing vertical DBF filtering on the original pixel value Y 1 (i), namely, step 1), but the original Y1 (i) value of the pixel can be refined based on the advanced refinement mode to obtain the refined pixel value.

[000248] Случай 2: когда BS больше 0 и abs(Y2(i)-Y1(0)<порогового значения, может быть выполнена фильтрация (т.е. выполнение вертикальной DBF-фильтрации исходного значения Y1(i) пикселя, а именно выполнение этапа 1). На основе выполнения этапа 1 отфильтрованное значение Y2(i) пикселя может быть уточнено на основе расширенного режима фильтрации для получения уточненного значения Y3(i) пикселя точки пикселя.[000248] Case 2: When BS is greater than 0 and abs(Y 2 (i)-Y 1 (0) < threshold value, filtering can be performed (i.e., performing vertical DBF filtering on the original Y 1 (i) pixel value , namely the execution of step 1). Based on the execution of step 1, the filtered pixel Y 2 (i) value can be refined based on the advanced filtering mode to obtain the refined pixel point Y 3 (i) value.

[000249] Случай 3: когда BS больше 0 и abs(Y2(i)-Y1(i)) не меньше порогового значения, может быть выполнена фильтрация (т.е. выполнение вертикальной DBF-фильтрации исходного значения Y1(i) пикселя, а именно выполнение этапа 1). На основе выполнения этапа 1 отфильтрованное значение пикселя Y2(i) больше не уточняют на основе расширенного режима фильтрации, а именно этап 2 больше не выполняют, то есть Y3(i)=Y2(i).[000249] Case 3: When BS is greater than 0 and abs(Y 2 (i)-Y 1 (i)) is not less than the threshold value, filtering can be performed (i.e., performing vertical DBF filtering on the original value Y 1 (i ) pixel, namely the execution of step 1). Based on the execution of step 1, the filtered pixel value Y 2 (i) is no longer refined based on the advanced filtering mode, and specifically step 2 is no longer performed, that is, Y 3 (i)=Y 2 (i).

[000250] На этапе 4 возможны следующие два случая: abs(Y4(i)-Y3(i))< порогового значения и abs(Y4(i)-Y3(i)) не меньше порогового значения. Если abs(Y4(i)-Y3(i))<порогового значения, то возможны еще следующие два случая: BS равно 0 и BS больше 0.[000250] In step 4, the following two cases are possible: abs(Y4(i)-Y3(i))< threshold value and abs(Y4(i)-Y3(i)) not less than threshold value. If abs(Y4(i)-Y3(i))<threshold value, then the following two cases are possible: BS is equal to 0 and BS is greater than 0.

[000251] В заключение, процесс уточнения исходного значения пикселя может включать в себя следующие три случая.[000251] Finally, the process of refining the original pixel value may include the following three cases.

[000252] Случай 1: когда BS равно 0, фильтрация не выполняется (т.е. Y4(i) равно Y3(i), что эквивалентно невыполнению горизонтальной DBF-фильтрации исходного значения Y3(i) пикселя, а именно, невыполнению этапа 3), но исходное значение Y3(i) пикселя может быть уточнено на основе расширенного режима уточнения для получения уточненного значения пикселя.[000252] Case 1: When BS is 0, no filtering is performed (i.e., Y 4 (i) is equal to Y 3 (i), which is equivalent to not performing horizontal DBF filtering on the original pixel value Y 3 (i), namely step 3), but the original Y 3 (i) value of the pixel can be refined based on the advanced refinement mode to obtain the refined pixel value.

[000253] Случай 2: когда BS больше 0 и abs(Y4(i)-Y3(i))<порогового значения, может быть выполнена фильтрация (т.е. выполнение горизонтальной DBF-фильтрации для исходного значения Y3(i) пикселя, а именно выполнение этапа 3). На основе выполнения этапа 3 отфильтрованное значение Y4(i) пикселя точки пикселя может быть уточнено на основе расширенного режима фильтрации для получения уточненного значения пикселя Y3(i) точки пикселя.[000253] Case 2: When BS is greater than 0 and abs(Y4(i)-Y3(i))<threshold, filtering can be performed (i.e., performing horizontal DBF filtering on the original Y value 3 (i) pixel , namely the execution of step 3). Based on the execution of step 3, the filtered pixel value Y4 (i) of the pixel point can be refined based on the advanced filtering mode to obtain the refined pixel value Y3(i) of the pixel point.

[000254] Случай 3: когда BS больше 0 и abs(Y4(i)-Y3(i)) не меньше порогового значения, может быть выполнена фильтрация (т.е. выполнение горизонтальной DBF-фильтрации для исходного значения Y3(i) пикселя, а именно, выполнение этапа 3). На основе выполнения этапа 3 отфильтрованное значение Y4(i) пикселя не корректируют на основе расширенного режима фильтрации, а именно этап 4 не выполняют, то есть Y5(i)=Y4(i).[000254] Case 3: When BS is greater than 0 and abs(Y4(i)-Y3(i)) is not less than the threshold value, filtering can be performed (i.e., performing horizontal DBF filtering on the original value Y 3 (i) pixel, namely, performing step 3). Based on the execution of step 3, the filtered pixel value Y 4 (i) is not adjusted based on the advanced filtering mode, namely, step 4 is not performed, that is, Y 5 (i)=Y 4 (i).

[000255] В заключение, если BS равно 0, обработку выполняют на основе расширенного режима уточнения, а именно фильтрация может не выполняться, то есть Y2(i)=и Y4(i)=Y3(i). На основе этого, Y1(i) может быть уточнено на основе расширенного режима уточнения, и Y3(i) также может быть уточнено на основе расширенного режима уточнения. Следовательно, DBF-фильтрация может выполняться на следующих этапах.[000255] Finally, if BS is 0, processing is performed based on the extended refinement mode, namely, filtering may not be performed, that is, Y 2 (i)=and Y 4 (i)=Y 3 (i). Based on this, Y 1 (i) can be refined based on the extended refinement mode, and Y 3 (i) can also be refined based on the extended refinement mode. Therefore, DBF filtering can be performed in the following steps.

[000256] На этапе 1 получают отфильтрованное значение Y2(i) пикселя путем выполнения вертикальной DBF-фильтрации исходного значения Y1(ii) пикселя.[000256] In step 1, a filtered pixel Y 2 (i) value is obtained by performing vertical DBF filtering on the original pixel Y 1 (ii) value.

[000257] На этапе 2, если BS равно 0, Y1(i) уточняют на основе расширенного режима уточнения, чтобы получить уточненное значение Y3(i) пикселя. Если BS больше 0 и abs(Y2(i)-Y1(i)<< порогового значения, включают расширенный режим фильтрации для получения уточненного значения Y3(i) пикселя на основе Y2(i)-Y1(i), как показано на этапе 2 варианта 8 осуществления изобретения. Если BS больше 0 и abs(Y2(i)-Y1(i)) не меньше порогового значения, общий режим фильтрации включен, чтобы больше не выполнять уточнение отфильтрованного значения пикселя Y2(i), а именно Y3(i)=Y2(i).[000257] In step 2, if BS is 0, Y 1 (i) is refined based on the extended refine mode to obtain a refined pixel Y 3 (i) value. If BS is greater than 0 and abs(Y 2 (i)-Y 1 (i)<< threshold value, enable advanced filtering mode to obtain a refined Y 3 (i) pixel value based on Y 2 (i)-Y1(i), as shown in Step 2 of Embodiment 8. If BS is greater than 0 and abs(Y 2 (i)-Y 1 (i)) is not less than the threshold value, the general filtering mode is enabled to no longer refine the filtered pixel value Y 2 ( i), namely Y 3 (i)=Y 2 (i).

[000258] В некоторых вариантах осуществления изобретения, если BS равно 0, этап фактически не выполняют, а именно не требуется получать отфильтрованное значение Y2(i) пикселя.[000258] In some embodiments of the invention, if BS is 0, the step is not actually performed, namely, the filtered Y 2 (i) pixel value is not required to be obtained.

[000259] На этапе 3 отфильтрованное значение Y4(i) пикселя получают путем выполнения горизонтальной DBF-фильтрации значения Y3(i) пикселя.[000259] In step 3, the filtered pixel Y 4 (i) value is obtained by performing horizontal DBF filtering on the pixel Y 3 (i) value.

[000260] На этапе 4, если BS равно 0, выполняют уточнение Y3(i) на основе расширенного режима уточнения для получения уточненного значения Y5(i) пикселя. Если BS больше 0 и abs(Y4(i)-Y3(i))< порогового значения, включают расширенный режим фильтрации для получения уточненного значения Y3(i) пикселя на основе Y4(i)-Y3(i), как показано на этапе 4 варианта 8 осуществления изобретения. Если BS больше 0 и abs(Y4(i)-Y3(i)) не меньше порогового значения, включают общий режим фильтрации, чтобы больше не выполнять уточнение отфильтрованного значения Y4(i) пикселя, а именно Y5(i)=Y4(i).[000260] In step 4, if BS is 0, Y 3 (i) refinement is performed based on the extended refine mode to obtain the refined pixel Y 5 (i) value. If BS is greater than 0 and abs(Y4(i)-Y3(i))< threshold value, enable advanced filtering mode to obtain refined Y3 (i) value of pixel based on Y4 (i) -Y3 (i) as shown in step 4 of embodiment 8 of the invention. If BS is greater than 0 and abs(Y4(i)-Y3(i)) is not less than the threshold value, turn on the general filtering mode so as not to further refine the filtered value Y 4 (i) of the pixel, namely Y 5 (i)=Y 4 (i).

[000261] В некоторых вариантах осуществления изобретения, если BS равно 0, этап 3 фактически не выполняют, а именно не требуется получать отфильтрованное значение Y4(i) пикселя.[000261] In some embodiments of the invention, if BS is 0, step 3 is not actually performed, namely, the filtered pixel Y 4 (i) value is not required to be obtained.

[000262] В другой возможной реализации, если BS больше 0, выполняют фильтрацию, но abs(Y2(i)-Y1(i))<порогового значения после фильтрации. В этом случае для обработки используют расширенный режим фильтрации, а именно DBF-фильтрация может выполняться на следующих этапах.[000262] In another possible implementation, if BS is greater than 0, filtering is performed, but abs(Y 2 (i)-Y 1 (i)) < threshold value after filtering. In this case, an advanced filtering mode is used for processing, namely DBF filtering can be performed in the following stages.

[000263] На этапе 1 получают отфильтрованное значение Y2(i) пикселя путем выполнения вертикальной DBF-фильтрации для исходного значения Y1(i) пикселя.[000263] In step 1, a filtered pixel Y 2 (i) value is obtained by performing vertical DBF filtering on the original pixel Y 1 (i) value.

[000264] На этапе 2, если BS больше 0, когда abs(Y2(i)-Y1(i))<порогового значения все еще удовлетворяется после выполнения вертикальной DBF-фильтрации для Y1(i), получают уточненное значение Y3(i) пикселя на основе расширенного режима фильтрации. Например, Y3(i) получают как Y1(i) плюс значение компенсации. В противном случае, если abs(Y2(i)-Y1(i)) не меньше порогового значения, Y3(i)=Y2(i).[000264] In step 2, if BS is greater than 0 when abs(Y 2 (i)-Y 1 (i))<threshold value is still satisfied after performing vertical DBF filtering on Y 1 (i), the refined Y value is obtained 3 (i) pixels based on advanced filtering mode. For example, Y 3 (i) is obtained as Y 1 (i) plus the compensation value. Otherwise, if abs(Y 2 (i)-Y 1 (i)) is not less than the threshold, Y 3 (i)=Y 2 (i).

[000265] На этапе 3 получают отфильтрованное значение Y4(i) пикселя путем выполнения горизонтальной DBF-фильтрации значения Y3(i) пикселя.[000265] In step 3, the filtered pixel Y 4 (i) value is obtained by performing horizontal DBF filtering on the pixel Y 3 (i) value.

[000266] На этапе 4, если BS больше 0, когда abs(Y4(i)-Y3(i))< порогового значения все еще удовлетворяется после выполнения горизонтальной DBF-фильтрации для Y3(i), получают уточненное значение Y5(i) пикселя на основе расширенного режима фильтрации. Например, Y5(i) получают как Y3(i) плюс значение компенсации. В противном случае, если abs(Y4(i)-Y3(i)) не меньше порогового значения, то Y5(i)=Y4(i).[000266] In step 4, if BS is greater than 0 when abs(Y 4 (i)-Y 3 (i))< threshold value is still satisfied after performing horizontal DBF filtering on Y 3 (i), the refined Y value is obtained 5 (i) pixels based on advanced filtering mode. For example, Y 5 (i) is obtained as Y 3 (i) plus the compensation value. Otherwise, if abs(Y4(i)-Y3(i)) is not less than the threshold value, then Y 5 (i)=Y 4 (i).

[000267] Вариант 10 осуществления изобретения: для варианта 9 осуществления изобретения, если BS равно 0, Y1(i) уточняют на основе расширенного режима уточнения для получения уточненного значения Y3(i) пикселя. Конкретный процесс уточнения может обеспечиваться на следующих этапах. Если BS равно 0, Y3(i) уточняют на основе расширенного режима уточнения для получения уточненного значения Y3(i) пикселя. Этот процесс аналогичен процессу получения уточненного значения Y3(i) пикселя и поэтому здесь повторяться не будет.[000267] Embodiment 10: For Embodiment 9, if BS is 0, Y 1 (i) is refined based on the advanced refine mode to obtain a refined pixel Y 3 (i) value. The specific refinement process can be provided in the following steps. If BS is 0, Y 3 (i) is refined based on the extended refine mode to obtain a refined pixel Y 3 (i) value. This process is similar to the process of obtaining the refined Y 3 (i) pixel value and therefore will not be repeated here.

[000268] Во-первых, определяют значение градиента Y1(i), где Y1(i) может быть исходным значением пикселя текущей точки пикселя или исходным значением пикселя опорной точки пикселя. Для вертикальной границы может быть вычислено значение горизонтального градиента DY1(i) для Y1(i); для горизонтальной границы может быть вычислено значение вертикального градиента DY1(i) для Y1(i). Например, если pi и qi соответственно представляют исходное значение пикселя текущей точки пикселя и исходное значение пикселя опорной точки пикселя (соответствующее Y1(i)), значение градиента DP0 исходного значения пикселя pi текущей точки пикселя вычисляют по следующей формуле: DP0=(pi-qi+2) >> 2; значение градиента DQ0 исходного значения пикселя qi опорной точки пикселя вычисляют по следующей формуле: DQ0=(qi-pi+2)>>2.[000268] First, the gradient value Y 1 (i) is determined, where Y 1 (i) may be the original pixel value of the current pixel point or the original pixel value of the reference pixel point. For a vertical boundary, the value of the horizontal gradient DY 1 (i) for Y 1 (i) can be calculated; for a horizontal boundary, the value of the vertical gradient DY 1 (i) for Y 1 (i) can be calculated. For example, if pi and qi respectively represent the original pixel value of the current pixel point and the original pixel value of the reference pixel point (corresponding to Y 1 (i)), the gradient value DP0 of the original pixel value pi of the current pixel point is calculated by the following formula: DP0=(pi- qi+2) >>2; the gradient value DQ0 of the original pixel value qi of the pixel reference point is calculated using the following formula: DQ0=(qi-pi+2)>>2.

[000269] Далее, на основе размера DY1(i), Y3(i) получают уточнением компенсации. Например, уточненное значение Pi пикселя, соответствующее исходному значению pi текущей точки пикселя, определяют следующим образом: если DPi>alt_dbr_th, то Pi=clip(pi+alt_dbr_offset0); если DPi<alt_dbr_th, то Pi=clip(pi+alt_dbr_offset1), где i равно 0, 1, 2 и т.п. Уточненное значение Qi пикселя, соответствующее исходному значению qi пикселя опорной точки пикселя, определяют следующим образом: если DQi>alt_dbr_th, то Qi=clip(qi+alt_dbr_offset0); если DQi<-alt_dbr_th, то Qi=clip(qi+alt_dbr_offset1), где i равно 0, 1 или 2.[000269] Next, based on the size of DY 1 (i), Y 3 (i) is obtained by refining the compensation. For example, the refined value Pi of a pixel corresponding to the original value pi of the current pixel point is determined as follows: if DPi>alt_dbr_th, then Pi=clip(pi+alt_dbr_offset0); if DPi<alt_dbr_th, then Pi=clip(pi+alt_dbr_offset1), where i is 0, 1, 2, etc. The refined pixel Qi value corresponding to the original pixel qi value of the pixel reference point is determined as follows: if DQi>alt_dbr_th, then Qi=clip(qi+alt_dbr_offset0); if DQi<-alt_dbr_th, then Qi=clip(qi+alt_dbr_offset1), where i is 0, 1 or 2.

[000270] В приведенных выше формулах alt_dbr_th относится к первому пороговому значению уточнения и третьему пороговому значению уточнения (например, третье пороговое значение уточнения и первое пороговое значение уточнения совпадают), alt_dbr_offset0 относится к первому значению смещения уточнения и третьему значению смещения уточнения (например, первое значение смещения уточнения и третье значение смещения уточнения совпадают), alt_dbr_offset1 относится ко второму значению смещения уточнения и четвертому значению смещения уточнения (например, второе значение смещения уточнения и четвертое значение смещения уточнения совпадают), -alt_dbr_th относится ко второму пороговому значению уточнения и четвертому пороговому значению уточнения (например, второе пороговое значение уточнения и четвертое пороговое значение уточнения совпадают), a -alt_dbr_th и alt_dbr_th являются противоположными друг другу числами.[000270] In the above formulas, alt_dbr_th refers to the first refinement threshold and the third refinement threshold (e.g., the third refinement threshold and the first refinement threshold are the same), alt_dbr_offset0 refers to the first refinement offset value and the third refinement offset value (e.g., the first the refinement offset value and the third refinement offset value are the same), alt_dbr_offset1 refers to the second refinement offset value and the fourth refinement offset value (for example, the second refinement offset value and the fourth refinement offset value are the same), -alt_dbr_th refers to the second refinement threshold value and the fourth refinement value refinements (for example, the second refinement threshold and the fourth refinement threshold are the same), and -alt_dbr_th and alt_dbr_th are opposite numbers to each other.

[000271] Вариант 11 осуществления изобретения: расширенным режимом уточнения управляют так, чтобы он был включен высокоуровневым синтаксисом (например, высокоуровневым синтаксисом SPS). Например, в заголовке последовательности кодируют/декодируют флаг adbr_enable_flag, а именно, кодер кодирует флаг adbr_enable_flag в заголовке последовательности, а декодер декодирует флаг adbrenableflag в заголовке последовательности, adbrenableflag - это двоичная переменная, при этом значение «1» указывает на доступность расширенного режима уточнения, а значение «0» указывает на то, что расширенный режим уточнения недоступен. Значение AdbrEnableFlag равно adbr_enable_flag. Если в битовом потоке нет adbr_enable_flag, значение AdbrEnableFlag равно 0.[000271] Embodiment 11: The extended refinement mode is controlled to be enabled by high-level syntax (eg, high-level SPS syntax). For example, the adbr_enable_flag is encoded/decoded in the sequence header, namely, the encoder encodes the adbr_enable_flag flag in the sequence header, and the decoder decodes the adbrenableflag flag in the sequence header, adbrenableflag is a binary variable, with a value of "1" indicating the availability of the extended refinement mode. and a value of "0" indicates that advanced refinement mode is not available. The AdbrEnableFlag value is adbr_enable_flag. If there is no adbr_enable_flag in the bitstream, the value of AdbrEnableFlag is 0.

[000272] В заключение, для декодера флаг включения расширенного режима уточнения (т.е. AdbrEnableFlag), соответствующий текущему блоку, может быть проанализирован из высокоуровневого синтаксиса. Если значение флага включения расширенного режима уточнения равно 1, это указывает на то, что флаг включения расширенного режима уточнения позволяет текущему блоку включать расширенный режим уточнения; если значение флага включения расширенного режима уточнения равно 0, это указывает на то, что флаг включения расширенного режима уточнения запрещает текущему блоку включать расширенный режим уточнения.[000272] Finally, for the decoder, the advanced refinement mode enable flag (ie, AdbrEnableFlag) corresponding to the current block can be parsed from high-level syntax. If the value of the extended refinement mode enable flag is 1, this indicates that the extended refinement mode enable flag allows the current block to enable the extended refinement mode; If the value of the extended refinement mode enable flag is 0, this indicates that the extended refinement mode enable flag prevents the current block from enabling the extended refinement mode.

[000273] Вариант 12 осуществления изобретения: расширенным режимом фильтрации и расширенным режимом уточнения управляют одновременно, чтобы их можно было включить с помощью высокоуровневого синтаксиса (например, высокоуровневого синтаксиса SPS). Например, в заголовке последовательности кодируют/декодируют флаг dbr_enable_flag, а именно кодер кодирует флаг dbr_enable_flag в заголовке последовательности, а декодер декодирует флаг dbr_enable_flag в заголовке последовательности.[000273] Embodiment 12: The extended filter mode and the extended refine mode are controlled simultaneously so that they can be enabled using high-level syntax (eg, high-level SPS syntax). For example, the dbr_enable_flag is encoded/decoded in the sequence header, namely, the encoder encodes the dbr_enable_flag in the sequence header, and the decoder decodes the dbr_enable_flag in the sequence header.

[000274] dbr_enable_flag - двоичная переменная, где значение «1» указывает на использование расширенного режима фильтрации и разрешение расширенного режима уточнения, а значение «0» указывает на использование расширенного режима фильтрации и запрещение расширенного режима уточнения. Значение DbrEnableFlag равно dbr_enable_flag. Если в битовом потоке нет dbr_enable_flag, значение DbrEnableFlag равно 0.[000274] dbr_enable_flag is a binary variable where a value of "1" indicates the use of the advanced filtering mode and enabling the advanced refinement mode, and a value of "0" indicates the use of the advanced filtering mode and disabling the advanced refinement mode. The value of DbrEnableFlag is dbr_enable_flag. If there is no dbr_enable_flag in the bitstream, the value of DbrEnableFlag is 0.

[000275] В заключение, для декодера флаг включения расширенного режима фильтрации и флаг включения расширенного режима уточнения (т.е. DbrEnableFlag, который используется как флаг включения расширенного режима фильтрации и флаг включения расширенного режима уточнения одновременно), соответствующие текущему блоку, могут быть проанализированы из высокоуровневого синтаксиса. Если значение DbrEnableFlag равно 1, это указывает на то, что текущему блоку разрешено включать расширенный режим фильтрации и расширенный режим уточнения; если значение DbrEnableFlag равно 0, это указывает на то, что текущему блоку запрещено включать расширенный режим фильтрации и расширенный режим уточнения.[000275] Finally, for the decoder, the extended filtering mode enable flag and the extended refinement mode enable flag (i.e., DbrEnableFlag, which is used as the extended filtering mode enable flag and the extended refinement mode enable flag at the same time) corresponding to the current block can be analyzed from high-level syntax. If the value of DbrEnableFlag is 1, it indicates that the current block is allowed to enable advanced filtering mode and advanced refinement mode; if the value of DbrEnableFlag is 0, it indicates that the current block is not allowed to enable advanced filtering mode and advanced refinement mode.

[000276] Вариант 13 осуществления изобретения: можно сделать ссылку на таблицу 1 для выражения высокоуровневого синтаксиса (например, высокоуровневого синтаксиса заголовка изображения), например, синтаксиса кодирования/декодирования заголовка изображения, показанного в таблице 1. Кодер кодирует в заголовке изображения синтаксис, показанный в таблице 1, и декодер декодирует в заголовке изображения синтаксис, показанный в таблице 1.[000276] Embodiment 13: Reference may be made to Table 1 to express high-level syntax (for example, high-level image header syntax), for example, the image header encoding/decoding syntax shown in Table 1. The encoder encodes in the image header the syntax shown in Table 1, and the decoder decodes in the picture header the syntax shown in Table 1.

[000277] Значения соответствующих синтаксисов в таблице 1 описаны ниже.[000277] The meanings of the corresponding syntaxes in Table 1 are described below.

[000278] Флаг включения вертикального уточнения фильтрации для устранения блочности на уровне изображения представлен как picture_dbr_v_enable_flag, который является двоичной переменной, где значение «1» указывает на то, что текущее изображение разрешает использовать вертикальное уточнение фильтрации для устранения блочности, а значение «0» указывает на то, что текущее изображение запрещает использовать вертикальное уточнение фильтрации для устранения блочности. Значение Picture_dbr_v_enable_flag равно значению picture_dbr_v_enable_flag. Если в битовом потоке нет picture_dbr_v_enable_flag, значение PhDbrVEnableFlag равно 0.[000278] The image-level vertical deblocking refinement enable flag is represented as picture_dbr_v_enable_flag, which is a binary variable where a value of "1" indicates that the current image enables vertical deblocking filtering refinement and a value of "0" indicates that the current image prohibits the use of vertical filtering refinement to remove blocking. The value of Picture_dbr_v_enable_flag is equal to the value of picture_dbr_v_enable_flag. If there is no picture_dbr_v_enable_flag in the bitstream, the value of PhDbrVEnableFlag is 0.

[000279] В некоторых вариантах осуществления изобретения для расширенного режима уточнения Picture_dbr_v_enable_flag соответствует флагу включения расширенного режима уточнения и является флагом включения расширенного режима уточнения для вертикальной DBF-фильтрации. Другими словами, когда должна выполняться вертикальная DBF-фильтрация, Picture_dbr_v_enable_flag указывает на разрешение включения расширенного режима уточнения или запрещение включения расширенного режима уточнения.[000279] In some embodiments, for the enhanced refinement mode, Picture_dbr_v_enable_flag corresponds to the enhanced refinement enable flag and is the enhanced refinement enable flag for vertical DBF filtering. In other words, when vertical DBF filtering is to be performed, Picture_dbr_v_enable_flag indicates whether the enhanced refinement mode is enabled or whether the enhanced refinement mode is disabled.

[000280] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации Picture_dbr_v_enable_flag соответствует флагу включения расширенного режима фильтрации и является флагом включения расширенного режима фильтрации для вертикальной DBF-фильтрации. Другими словами, когда должна выполняться вертикальная DBF-фильтрация, Picture_dbr_v_enable_flag указывает на разрешение включения расширенного режима фильтрации или запрещение включения расширенного режима фильтрации.[000280] In some embodiments, for the enhanced filtering mode, Picture_dbr_v_enable_flag corresponds to the enhanced filtering mode enable flag and is the enhanced filtering mode enable flag for vertical DBF filtering. In other words, when vertical DBF filtering is to be performed, Picture_dbr_v_enable_flag indicates whether to enable the advanced filtering mode or to disable the enabling of the advanced filtering mode.

[000281] В заключение, Picture_dbr_v_enable_flag может представлять флаг включения расширенного режима уточнения для вертикальной DBF-фильтрации и флаг включения расширенного режима фильтрации для вертикальной DBF-фильтрации. Другими словами, флаг включения расширенного режима уточнения и флаг включения расширенного режима фильтрации имеют один и тот же флаг, а именно, текущее изображение разрешает включение расширенного режима уточнения и расширенного режима фильтрации одновременно или запрещает включение расширенного режима уточнения и расширенного режима фильтрации одновременно.[000281] Finally, Picture_dbr_v_enable_flag may represent an enhanced refine mode enable flag for vertical DBF filtering and an enhanced filter mode enable flag for vertical DBF filtering. In other words, the advanced refinement mode enable flag and the advanced filtering mode enable flag have the same flag, namely, the current image allows the advanced refinement mode and the advanced filtering mode to be turned on at the same time, or disables the advanced refinement mode and the advanced filtering mode to be turned on at the same time.

[000282] Пороговое значение вертикального уточнения фильтрации для устранения блочности представлено как dbr_v_threshold_minus1 и используется для определения порогового значения вертикального уточнения фильтрации для устранения блочности текущего изображения, где пороговое значение находится в диапазоне от 0 до 1. Значение DbrVThreshold равно значению dbr_v_threshold_minus1+1. Если в битовом потоке нет dbr_v_threshold_minus1, значение DbrVThreshold равно 0.[000282] The deblocking vertical refinement filtering threshold value is represented as dbr_v_threshold_minus1 and is used to determine the vertical refinement filtering threshold value for deblocking the current image, where the threshold value is in the range from 0 to 1. The value of DbrVThreshold is equal to the value of dbr_v_threshold_minus1+1. If there is no dbr_v_threshold_minus1 in the bitstream, the value of DbrVThreshold is 0.

[000283] В некоторых вариантах осуществления изобретения для расширенного режима уточнения DbrVThreshold соответствует первому пороговому значению уточнения (например, третье пороговое значение уточнения и первое пороговое значение уточнения одинаковы) и является первым пороговым значением уточнения для вертикальной DBF-фильтрации. Другими словами, когда должна выполняться вертикальная DBF-фильтрация, DbrVThreshold представляет первое пороговое значение уточнения в описанном выше варианте осуществления изобретения. Кроме того, второе пороговое значение уточнения (например, четвертое пороговое значение уточнения и второе пороговое значение уточнения одинаковы) и первое пороговое значение уточнения в приведенном выше варианте осуществления изобретения являются противоположными друг другу числами, и, таким образом, второе пороговое значение уточнения может быть определено на основе DbrVThreshold.[000283] In some embodiments of the invention for the advanced refinement mode, DbrVThreshold corresponds to the first refinement threshold (eg, the third refinement threshold and the first refinement threshold are the same) and is the first refinement threshold for vertical DBF filtering. In other words, when vertical DBF filtering is to be performed, DbrVThreshold represents the first refinement threshold value in the above-described embodiment of the invention. In addition, the second refinement threshold value (for example, the fourth refinement threshold value and the second refinement threshold value are the same) and the first refinement threshold value in the above embodiment of the invention are opposite numbers to each other, and thus the second refinement threshold value can be determined based on DbrVThreshold.

[000284] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации DbrVThreshold соответствует первому пороговому значению фильтрации (например, третье пороговое значение фильтрации и первое пороговое значение фильтрации одинаковы) и является первым пороговым значением фильтрации для вертикальной DBF-фильтрации. Другими словами, когда должна выполняться вертикальная DBF-фильтрация, DbrVThreshold представляет первое пороговое значение фильтрации в приведенном выше варианте осуществления изобретения. Кроме того, второе пороговое значение фильтрации (например, четвертое пороговое значение фильтрации и второе пороговое значение фильтрации одинаковы) в описанном выше варианте осуществления изобретения и первое пороговое значение фильтрации являются противоположными друг другу числами, и, таким образом, второе пороговое значение фильтрации может быть определено на основе DbrVThreshold.[000284] In some embodiments of the invention for the advanced filtering mode, DbrVThreshold corresponds to the first filtering threshold (eg, the third filtering threshold and the first filtering threshold are the same) and is the first filtering threshold for vertical DBF filtering. In other words, when vertical DBF filtering is to be performed, DbrVThreshold represents the first filtering threshold value in the above embodiment. In addition, the second filtering threshold value (for example, the fourth filtering threshold value and the second filtering threshold value are the same) in the above-described embodiment and the first filtering threshold value are opposite numbers to each other, and thus the second filtering threshold value can be determined based on DbrVThreshold.

[000285] В заключение, DbrVThreshold может представлять первое пороговое значение уточнения и первое пороговое значение фильтрации для вертикальной DBF-фильтрации, и, другими словами, первое пороговое значение уточнения и первое пороговое значение фильтрации являются одинаковыми и могут иметь одинаковое значение.[000285] Finally, DbrVThreshold may represent a first refinement threshold and a first filtering threshold for vertical DBF filtering, and in other words, the first refinement threshold and the first filtering threshold are the same and may have the same value.

[000286] Значение 0 смещения вертикального уточнения фильтрации для устранения блочности (dbr_v_offset0_minus1) используется для определения значения смещения 0 вертикального уточнения фильтрации для устранения блочности текущего изображения, которое принимает значение от 0 до 3. Значение DbrVOffset0 равно отрицательному значению, которое равно числу, противоположному результату суммы dbr_v_offset0_minus1+1. Если в битовом потоке нет dbr_v_offset0_minus1, значение DbrVOffset0 равно 0.[000286] The deblocking filtering vertical refinement offset value 0 (dbr_v_offset0_minus1) is used to determine the deblocking filtering vertical refinement offset value 0 of the current image, which takes a value from 0 to 3. The value of DbrVOffset0 is equal to a negative value, which is equal to the opposite number of the result amounts dbr_v_offset0_minus1+1. If there is no dbr_v_offset0_minus1 in the bitstream, the value of DbrVOffset0 is 0.

[000287] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации DbrVOffset0 соответствует первому значению смещения фильтрации (например, третье значение смещения фильтрации и первое значение смещения фильтрации совпадают) и является первым значением смещения фильтрации для вертикальной DBF-фильтрации. Когда должна выполняться вертикальная DBF-фильтрация, DbrVOffset0 представляет первое значение смещения фильтрации в описанном выше варианте осуществления изобретения.[000287] In some embodiments of the invention for the advanced filtering mode, DbrVOffset0 corresponds to the first filtering offset value (eg, the third filtering offset value and the first filtering offset value are the same) and is the first filtering offset value for vertical DBF filtering. When vertical DBF filtering is to be performed, DbrVOffset0 represents the first filtering offset value in the above-described embodiment of the invention.

[000288] Значение 1 смещения вертикального уточнения фильтрации для устранения блочности (dbr_v_offset1_minus1) используется для определения значения 1 смещения вертикального уточнения фильтрации для устранения блочности текущего изображения, которое принимает значения от 0 до 3. Значение DbrVOffset1 равно значению dbr_v_offset1 minus1+1. Если в битовом потоке нет dbr_v_offset1_minus1, значение DbrVOffset1 равно 0.[000288] The deblocking filtering vertical refinement offset value 1 (dbr_v_offset1_minus1) is used to determine the deblocking filtering vertical refinement offset value 1 of the current image, which takes values from 0 to 3. The value of DbrVOffset1 is equal to the value of dbr_v_offset1 minus1+1. If there is no dbr_v_offset1_minus1 in the bitstream, the value of DbrVOffset1 is 0.

[000289] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации DbrVOffset1 соответствует второму значению смещения фильтрации (например, четвертое значение смещения фильтрации и второе значение смещения фильтрации совпадают) и является вторым значением смещения фильтрации для вертикальной DBF-фильтрации. Когда должна быть выполнена вертикальная DBF-фильтрация, DbrVOffset1 представляет второе значение смещения фильтрации в описанном выше варианте осуществления изобретения.[000289] In some embodiments, for the advanced filtering mode, DbrVOffset1 corresponds to the second filter offset value (eg, the fourth filter offset value and the second filter offset value are the same) and is the second filter offset value for vertical DBF filtering. When vertical DBF filtering is to be performed, DbrVOffset1 represents the second filtering offset value in the above-described embodiment of the invention.

[000290] Значение 0 смещения вертикального уточнения расширенной фильтрации для устранения блочности (dbr_v_offset0_minus1) используется для определения значения 0 смещения вертикального уточнения фильтрации для устранения блочности текущего изображения, когда значение BS равно 0, при этом значение dbr_v_offset0_minus1 находится между 0 и 3. Значение DbrVAltOffset0 равно отрицательному значению, которое является числом, противоположным результату суммы dbr_v_alt_offset0_minus1+1. Если в битовом потоке нет dbr_v_alt_offset0_minus1, значение DbrVAltOffset0 равно 0.[000290] The Enhanced Deblocking Filtering Vertical Refinement Offset Value 0 (dbr_v_offset0_minus1) is used to determine the Deblocking Filtering Vertical Refinement Offset value 0 of the current image when the BS value is 0 and the value of dbr_v_offset0_minus1 is between 0 and 3. The DbrVAltOffset0 value is a negative value, which is the opposite number of the sum dbr_v_alt_offset0_minus1+1. If there is no dbr_v_alt_offset0_minus1 in the bitstream, the value of DbrVAltOffset0 is 0.

[000291] В некоторых вариантах осуществления изобретения для расширенного режима уточнения DbrVAltOffset0 соответствует первому значению смещения уточнения (например, третье значение смещения уточнения и первое значение смещения уточнения совпадают) и является первым значением смещения уточнения для вертикальной DBF-фильтрации. Когда должна выполняться вертикальная DBF-фильтрация, DbrVAltOffset0 представляет первое значение смещения уточнения в описанном выше варианте осуществления изобретения.[000291] In some embodiments of the invention for the advanced refinement mode, DbrVAltOffset0 corresponds to the first refinement offset value (eg, the third refinement offset value and the first refinement offset value are the same) and is the first refinement offset value for vertical DBF filtering. When vertical DBF filtering is to be performed, DbrVAltOffset0 represents the first refinement offset value in the above-described embodiment of the invention.

[000292] Значение 1 смещения вертикального уточнения расширенной фильтрации для устранения блочности (dbr_v_alt_offset1_minus1) используется для определения значения смещения 1 вертикального уточнения фильтрации для устранения блочности текущего изображения, когда значение BS равно 0, при этом значение dbr_v_alt_offset1_minus1 находится между 0 и 3. Значение DbrVAltOffsetl равно значению dbr_v_alt_offset1_minus1+1. Если в битовом потоке нет dbr_v_alt_offset1 minus1, значение DbrVAltOffsetl равно 0.[000292] The Deblocking Advanced Filtering Vertical Refinement Offset Value 1 (dbr_v_alt_offset1_minus1) is used to determine the Deblocking Filtering Vertical Refinement Offset value 1 of the current image when the BS value is 0 and the value of dbr_v_alt_offset1_minus1 is between 0 and 3. The DbrVAltOffsetl value is value dbr_v_alt_offset1_minus1+1. If there is no dbr_v_alt_offset1 minus1 in the bitstream, the value of DbrVAltOffsetl is 0.

[000293] В некоторых вариантах осуществления изобретения для расширенного режима уточнения DbrVAltOffsetl соответствует второму значению смещения уточнения (например, четвертое значение смещения уточнения и второе значение смещения уточнения совпадают) и является вторым значением смещения уточнения для вертикальной DBF-фильтрации. Когда должна выполняться вертикальная DBF-фильтрация, DbrVAltOffsetl представляет второе значение смещения уточнения в описанном выше варианте осуществления изобретения.[000293] In some embodiments of the invention for the advanced refinement mode, DbrVAltOffsetl corresponds to the second refinement offset value (eg, the fourth refinement offset value and the second refinement offset value are the same) and is the second refinement offset value for vertical DBF filtering. When vertical DBF filtering is to be performed, DbrVAltOffsetl represents the second refinement offset value in the above-described embodiment of the invention.

[000294] Флаг включения горизонтального уточнения фильтрации для устранения блочности на уровне изображения представлен как picture_dbr_h_enable_flag, который является двоичной переменной, где значение «1» указывает на то, что текущее изображение разрешает использовать горизонтальное уточнение фильтрации для устранения блочности, а значение «0» указывает на то, что текущее изображение не разрешает использовать горизонтальное уточнение фильтрации для устранения блочности. Значение PhDbrHEnableFlag равно значению picture_dbr_h_enable_flag. Если в битовом потоке нет picture_dbr_h_enable_flag, значение PhDbrHEnableFlag равно 0.[000294] The image-level horizontal deblocking refinement enable flag is represented as picture_dbr_h_enable_flag, which is a binary variable where a value of "1" indicates that the current image allows horizontal deblocking refinement to be used, and a value of "0" indicates that the current image does not allow the use of horizontal filtering refinement to remove blocking. The value of PhDbrHEnableFlag is equal to the value of picture_dbr_h_enable_flag. If there is no picture_dbr_h_enable_flag in the bitstream, the value of PhDbrHEnableFlag is 0.

[000295] В некоторых вариантах осуществления изобретения для расширенного режима уточнения PhDbrHEnableFlag соответствует флагу включения расширенного режима уточнения и является флагом включения расширенного режима уточнения для горизонтальной DBF-фильтрации. Другими словами, когда должна выполняться горизонтальная DBF-фильтрация, PhDbrHEnableFlag указывает на разрешение включения расширенного режима уточнения или запрещение включения расширенного режима уточнения.[000295] In some embodiments, for the advanced refinement mode, PhDbrHEnableFlag corresponds to the advanced refinement enable flag and is the advanced refinement enable flag for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, PhDbrHEnableFlag indicates whether extended refinement mode is enabled or whether enhanced refinement mode is not enabled.

[000296] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации PhDbrHEnableFlag соответствует флагу включения расширенного режима фильтрации и является флагом включения расширенного режима фильтрации для горизонтальной DBF-фильтрации. Другими словами, когда должна быть выполнена горизонтальная DBF-фильтрация, PhDbrHEnableFlag указывает на разрешение включения расширенного режима фильтрации или запрещение включения расширенного режима фильтрации.[000296] In some embodiments, for the advanced filtering mode, PhDbrHEnableFlag corresponds to the advanced filtering mode enable flag and is the advanced filtering mode enable flag for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, PhDbrHEnableFlag indicates whether the advanced filtering mode is enabled or whether the advanced filtering mode is disabled.

[000297] В заключение, PhDbrHEnableFlag может представлять флаг включения расширенного режима уточнения для горизонтальной DBF-фильтрации и флаг включения расширенного режима фильтрации для горизонтальной DBF-фильтрации. Другими словами, флаг включения расширенного режима уточнения и флаг включения расширенного режима фильтрации совместно используют один и тот же флаг, а именно, текущее изображение разрешает включение расширенного режима уточнения и расширенного режима фильтрации одновременно или запрещает включение расширенного режима уточнения и расширенного режима фильтрации одновременно.[000297] Finally, PhDbrHEnableFlag may represent an advanced refinement mode enable flag for horizontal DBF filtering and an advanced filter mode enable flag for horizontal DBF filtering. In other words, the advanced refinement mode enable flag and the advanced filtering mode enable flag share the same flag, namely, the current image enables the advanced refinement mode and the advanced filtering mode to be enabled simultaneously, or disables the enabling of the advanced refinement mode and the advanced filtering mode simultaneously.

[000298] Пороговое значение горизонтального уточнения фильтрации для устранения блочности представлено как dbr_h_threshold_minus1, которое используется для определения порогового значения горизонтального уточнения фильтрации для устранения блочности текущего изображения, при этом пороговое значение принимает значение между 0 и 1. Значение DbrHThreshold равно значению dbr_h_threshold_minus1+1. Если в битовом потоке нет dbr_h_threshold_minus1, значение DbrHThreshold равно 0.[000298] The horizontal refinement filtering threshold value for deblocking is represented as dbr_h_threshold_minus1, which is used to determine the horizontal refinement filtering threshold value for deblocking the current image, where the threshold value takes a value between 0 and 1. The value of DbrHThreshold is equal to the value dbr_h_threshold_minus1+1. If there is no dbr_h_threshold_minus1 in the bitstream, the value of DbrHThreshold is 0.

[000299] В некоторых вариантах осуществления изобретения для расширенного режима уточнения DbrHTreshold соответствует первому пороговому значению уточнения (например, третье пороговое значение уточнения и первое пороговое значение уточнения одинаковы) и является первым пороговым значением уточнения для горизонтальной DBF-фильтрации. Другими словами, когда должна выполняться горизонтальная DBF-фильтрация, DbrHThreshold представляет первое пороговое значение уточнения в описанном выше варианте осуществления изобретения. Кроме того, второе пороговое значение уточнения (например, четвертое пороговое значение уточнения и второе пороговое значение уточнения одинаковы) в описанном выше варианте осуществления изобретения и первое пороговое значение уточнения являются противоположными друг другу числами, и, таким образом, второе пороговое значение уточнения может быть определено на основе DbrHThreshold.[000299] In some embodiments of the invention for the advanced refinement mode, DbrHTreshold corresponds to the first refinement threshold (eg, the third refinement threshold and the first refinement threshold are the same) and is the first refinement threshold for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, DbrHThreshold represents the first refinement threshold value in the above-described embodiment of the invention. In addition, the second refinement threshold value (for example, the fourth refinement threshold value and the second refinement threshold value are the same) in the above-described embodiment of the invention and the first refinement threshold value are opposite numbers to each other, and thus the second refinement threshold value can be determined based on DbrHThreshold.

[000300] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации DbrHTreshold соответствует первому пороговому значению фильтрации (например, третье пороговое значение фильтрации и первое пороговое значение фильтрации одинаковы) и является первым пороговым значением фильтрации для горизонтальной DBF-фильтрации. Другими словами, когда должна быть выполнена горизонтальная DBF-фильтрация, DbrHThreshold представляет первое пороговое значение фильтрации в описанном выше варианте осуществления изобретения. Кроме того, второе пороговое значение фильтрации (например, четвертое пороговое значение фильтрации и второе пороговое значение фильтрации одинаковы) в описанном выше варианте осуществления изобретения и первое пороговое значение фильтрации являются противоположными друг другу числами, и, таким образом, второе пороговое значение фильтрации может быть определено на основе DbrHThreshold.[000300] In some embodiments of the invention for the advanced filtering mode, DbrHTreshold corresponds to the first filtering threshold (eg, the third filtering threshold and the first filtering threshold are the same) and is the first filtering threshold for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, DbrHThreshold represents the first filtering threshold value in the above-described embodiment of the invention. In addition, the second filtering threshold value (for example, the fourth filtering threshold value and the second filtering threshold value are the same) in the above-described embodiment and the first filtering threshold value are opposite numbers to each other, and thus the second filtering threshold value can be determined based on DbrHThreshold.

[000301] В заключение, DbrHTreshold может представлять первое пороговое значение уточнения и первое пороговое значение фильтрации для горизонтальной DBF-фильтрации, а именно, первое пороговое значение уточнения и первое пороговое значение фильтрации являются одинаковыми и имеют одно и то же значение.[000301] Finally, DbrHTreshold may represent a first refinement threshold and a first filtering threshold for horizontal DBF filtering, namely, the first refinement threshold and the first filtering threshold are the same and have the same value.

[000302] Значение 0 смещения горизонтального уточнения фильтрации для устранения блочности (dbr h offset0 minus1) используется для определения значения 0 смещения горизонтального уточнения фильтрации для устранения блочности текущего изображения, при этом значение смещения находится в диапазоне от 0 до 3. Значение DbrHOffset0 равно отрицательному значению, которое является числом, противоположным результату суммы dbr_h_offset0_minus1+1. Если в битовом потоке нет dbr_h_offset0_minus1, значение DbrHOffset0 равно 0.[000302] The horizontal deblocking filter refinement offset value 0 (dbr h offset0 minus1) is used to determine the horizontal deblocking filter refinement offset value 0 of the current image, where the offset value is in the range 0 to 3. The value of DbrHOffset0 is a negative value , which is the opposite number of the sum dbr_h_offset0_minus1+1. If there is no dbr_h_offset0_minus1 in the bitstream, the value of DbrHOffset0 is 0.

[000303] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации DbrHOffset0 соответствует первому значению смещения фильтрации (например, третье значение смещения фильтрации и первое значение смещения фильтрации совпадают) и является первым значением смещения фильтрации для горизонтальной DBF-фильтрации. Когда должна выполняться горизонтальная DBF-фильтрация, DbrHOffset0 представляет первое значение смещения фильтрации в описанном выше варианте осуществления изобретения.[000303] In some embodiments of the invention for the advanced filtering mode, DbrHOffset0 corresponds to the first filtering offset value (eg, the third filtering offset value and the first filtering offset value are the same) and is the first filtering offset value for horizontal DBF filtering. When horizontal DBF filtering is to be performed, DbrHOffset0 represents the first filtering offset value in the above-described embodiment of the invention.

[000304] Значение 1 смещения горизонтального уточнения фильтрации для устранения блочности (dbr_h_offset1_minus1) используется для определения значения смещения 1 горизонтального уточнения фильтрации для устранения блочности текущего изображения, при этом значение смещения находится в диапазоне от 0 до 3. Значение DbrHOffset1 равно значению dbr_h_offset1_minus1+1. Если в битовом потоке нет dbr_h_offset1_minus1, значение DbrHOffset1 равно 0.[000304] The deblocking horizontal filter refinement offset value 1 (dbr_h_offset1_minus1) is used to determine the deblocking horizontal filter refinement offset value 1 of the current image, where the offset value is in the range from 0 to 3. The value of DbrHOffset1 is equal to the value of dbr_h_offset1_minus1+1. If there is no dbr_h_offset1_minus1 in the bitstream, the value of DbrHOffset1 is 0.

[000305] В некоторых вариантах осуществления изобретения для расширенного режима фильтрации DbrHOffset1 соответствует второму значению смещения фильтрации (например, четвертое значение смещения фильтрации и второе значение смещения фильтрации совпадают) и является вторым значением смещения фильтрации для горизонтальной DBF-фильтрации. Другими словами, когда должна выполняться горизонтальная DBF-фильтрация, DbrHOffset1 представляет второе значение смещения фильтрации в описанном выше варианте осуществления изобретения.[000305] In some embodiments, for the advanced filtering mode, DbrHOffset1 corresponds to the second filter offset value (eg, the fourth filter offset value and the second filter offset value are the same) and is the second filter offset value for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, DbrHOffset1 represents the second filtering offset value in the above-described embodiment of the invention.

[000306] Значение 0 смещения горизонтального уточнения расширенной фильтрации для устранения блочности (dbr_h_alt_offset0_minus1) используется для определения значения 0 смещения горизонтального уточнения фильтрации для устранения блочности текущего изображения, когда значение BS равно 0, при этом значение dbr_h_alt_offset0_minus1 находится в диапазоне от 0 до 3. Значение DbrHAltOffset0 равно отрицательному значению, которое является числом, противоположным результату суммы dbrhaltoffset0minus1+1. Если в битовом потоке нет dbr_h_alt_offset0_minus1, значение DbrHAltOffset0 равно 0.[000306] The advanced deblocking filtering horizontal refinement offset value 0 (dbr_h_alt_offset0_minus1) is used to determine the deblocking filtering horizontal refinement offset value 0 of the current image when the BS value is 0, with the value of dbr_h_alt_offset0_minus1 being in the range of 0 to 3. The value DbrHAltOffset0 is equal to a negative value, which is the opposite number of the sum dbrhaltoffset0minus1+1. If there is no dbr_h_alt_offset0_minus1 in the bitstream, the value of DbrHAltOffset0 is 0.

[000307] В некоторых вариантах осуществления изобретения для расширенного режима уточнения DbrHAltOffset0 соответствует первому значению смещения уточнения (например, третье значение смещения уточнения и первое значение смещения уточнения совпадают) и является первым значением смещения уточнения для горизонтальной DBF-фильтрации. Другими словами, когда должна выполняться горизонтальная DBF-фильтрация, DbrHAltOffset0 представляет первое значение смещения уточнения в описанном выше варианте осуществления изобретения.[000307] In some embodiments of the invention for the advanced refinement mode, DbrHAltOffset0 corresponds to the first refinement offset value (eg, the third refinement offset value and the first refinement offset value are the same) and is the first refinement offset value for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, DbrHAltOffset0 represents the first refinement offset value in the above-described embodiment of the invention.

[000308] Значение 1 смещения горизонтального уточнения расширенной фильтрации для устранения блочности (dbr_h_alt_offset1_minus1) используется для определения значения 1 смещения горизонтального уточнения фильтрации для устранения блочности текущего изображения, когда значение BS равно 0, при этом значение dbr_h_alt_offset1_minus1 находится между 0 и 3. Значение DbrHAltOffsetl равно значению dbr_h_alt_offset1_minus1+1. Если в битовом потоке нет dbr_h_alt_offset1_minus1, значение DbrHAltOffsetl равно 0.[000308] Advanced Deblocking Filtering Horizontal Refinement Offset Value 1 (dbr_h_alt_offset1_minus1) is used to determine Deblocking Filtering Horizontal Refinement Offset Value 1 of the current image when the BS value is 0 and the value of dbr_h_alt_offset1_minus1 is between 0 and 3. The DbrHAltOffsetl value is value dbr_h_alt_offset1_minus1+1. If there is no dbr_h_alt_offset1_minus1 in the bitstream, the value of DbrHAltOffsetl is 0.

[000309] В некоторых вариантах осуществления изобретения для расширенного режима уточнения DbrHAltOffsetl соответствует второму значению смещения уточнения (например, четвертое значение смещения уточнения и второе значение смещения уточнения совпадают) и является вторым значением смещения уточнения для горизонтальной DBF-фильтрации. Другими словами, когда должна выполняться горизонтальная DBF-фильтрация, DbrHAltOffset1 представляет второе значение смещения уточнения в описанном выше варианте осуществления изобретения.[000309] In some embodiments of the invention for the extended refinement mode, DbrHAltOffsetl corresponds to the second refinement offset value (eg, the fourth refinement offset value and the second refinement offset value are the same) and is the second refinement offset value for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, DbrHAltOffset1 represents the second refinement offset value in the above-described embodiment of the invention.

[000310] Вариант 14 осуществления изобретения: можно сделать ссылку на таблицу 2 для выражения высокоуровневого синтаксиса (например, высокоуровневого синтаксиса заголовка изображения), например, синтаксиса кодирования/декодирования заголовка изображения, показанного в таблице 2. Кодер кодирует в заголовок изображения синтаксис, показанный в таблице 2, и декодер декодирует в заголовке изображения синтаксис, показанный в таблице 2. [000310] Embodiment 14: Reference may be made to Table 2 to express high-level syntax (eg, high-level image header syntax), such as the image header encoding/decoding syntax shown in Table 2. The encoder encodes into the image header the syntax shown in Table 2, and the decoder decodes in the picture header the syntax shown in Table 2.

[000311] Значения соответствующих синтаксисов в таблице 2 описаны ниже.[000311] The meanings of the corresponding syntaxes in Table 2 are described below.

[000312] Флаг включения расширенного вертикального уточнения на уровне изображения представлен как picture_alt_dbr_v_enable_flag, который является двоичной переменной, где значение «1» указывает на то, что текущее изображение разрешает использовать расширенное вертикальное уточнение, а значение «0» указывает на то, что текущее изображение запрещает использовать расширенное вертикальное уточнение. Значение PictureAltDbrVEnableFlag равно значению picture_alt_dbr_v_enable_flag. Если в битовом потоке нет picture_alt_dbr_v_enable_flag, значение PhAltDbrVEnableFlag равно 0.[000312] The image-level enhanced vertical enhancement enable flag is represented as picture_alt_dbr_v_enable_flag, which is a binary variable where a value of "1" indicates that the current image enables enhanced vertical enhancement and a value of "0" indicates that the current image prohibits the use of extended vertical refinement. The PictureAltDbrVEnableFlag value is equal to the picture_alt_dbr_v_enable_flag value. If there is no picture_alt_dbr_v_enable_flag in the bitstream, the value of PhAltDbrVEnableFlag is 0.

[000313] В некоторых вариантах осуществления изобретения для расширенного режима уточнения PictureAltDbrVEnableFlag соответствует флагу включения расширенного режима уточнения и является флагом включения расширенного режима уточнения для вертикальной DBF-фильтрации. Другими словами, когда должна выполняться вертикальная DBF-фильтрация, PictureAltDbrVEnableFlag указывает на разрешение включения расширенного режима уточнения или запрещение включения расширенного режима уточнения.[000313] In some embodiments, for the advanced refinement mode, PictureAltDbrVEnableFlag corresponds to the enhanced refinement enable flag and is the enhanced refinement enable flag for vertical DBF filtering. In other words, when vertical DBF filtering is to be performed, PictureAltDbrVEnableFlag indicates whether the enhanced refinement mode is enabled or whether the enhanced refinement mode is disabled.

[000314] В отличие от PictureAltDbrVEnableFlag в варианте 13 осуществления изобретения, PictureAltDbrVEnableFlag является только флагом включения расширенного режима уточнения для вертикальной DBF-фильтрации, а не флагом включения расширенного режима фильтрации для вертикальной DBF-фильтрации.[000314] Unlike PictureAltDbrVEnableFlag in Embodiment 13, PictureAltDbrVEnableFlag is only an advanced refinement mode enable flag for vertical DBF filtering, and not an advanced filter mode enable flag for vertical DBF filtering.

[000315] Флаг включения расширенного горизонтального уточнения на уровне изображения представлен как picture_alt_dbr_h_enable_flag, который является двоичной переменной, где значение «1» указывает на то, что текущее изображение разрешает использовать расширенное горизонтальное уточнение, а значение «0» указывает на то, что текущее изображение запрещает использовать расширенное горизонтальное уточнение. Значение PictureAltDbrHEnableFlag равно значению picture_alt_dbr_h_enable_flag. Если в битовом потоке отсутствует picture_alt_dbr_h_enable_flag, значение PhAltDbrHEnableFlag равно 0.[000315] The image-level enhanced horizontal enhancement enable flag is represented as picture_alt_dbr_h_enable_flag, which is a binary variable where a value of "1" indicates that the current image enables enhanced horizontal enhancement and a value of "0" indicates that the current image prohibits the use of extended horizontal refinement. The PictureAltDbrHEnableFlag value is equal to the picture_alt_dbr_h_enable_flag value. If the bitstream does not have picture_alt_dbr_h_enable_flag, the value of PhAltDbrHEnableFlag is 0.

[000316] В некоторых вариантах осуществления изобретения для расширенного режима уточнения PhAltDbrHEnableFlag соответствует флагу включения расширенного режима уточнения и является флагом включения расширенного режима уточнения для горизонтальной DBF-фильтрации. Другими словами, когда должна выполняться горизонтальная DBF-фильтрация, PhAltDbrHEnableFlag указывает на разрешение включения расширенного режима уточнения или запрещение включения расширенного режима уточнения.[000316] In some embodiments of the invention for the extended refinement mode, PhAltDbrHEnableFlag corresponds to the enhanced refinement enable flag and is the enhanced refinement enable flag for horizontal DBF filtering. In other words, when horizontal DBF filtering is to be performed, PhAltDbrHEnableFlag indicates whether the enhanced refinement mode is enabled or whether the enhanced refinement mode is disabled.

[000317] В отличие от PhAltDbrHEnableFlag в варианте 13 осуществления изобретения, PhAltDbrHEnableFlag является только флагом включения расширенного режима уточнения для горизонтальной DBF-фильтрации, а не флагом включения расширенного режима фильтрации для горизонтальной DBF-фильтрации.[000317] Unlike the PhAltDbrHEnableFlag in Embodiment 13, the PhAltDbrHEnableFlag is only an advanced refinement mode enable flag for horizontal DBF filtering, and not an advanced filter mode enable flag for horizontal DBF filtering.

[000318] Значения других синтаксисов в таблице 2 такие же, как значения соответствующих синтаксисов в таблице 1, и поэтому здесь не повторяются.[000318] The meanings of the other syntaxes in Table 2 are the same as the meanings of the corresponding syntaxes in Table 1 and therefore are not repeated here.

[000319] Вариант 15 осуществления изобретения: для варианта 11 осуществления изобретения adbr_enable_flag может быть кодирован и декодирован только тогда, когда включен режим фильтрации для устранения блочности. А именно, сначала может быть определено, включать ли режим фильтрации для устранения блочности, и, если режим фильтрации для устранения блочности включен, флаг adbr_enable_flag может быть кодирован/декодирован в заголовке последовательности, а если режим фильтрации для устранения блочности не включен, флаг adbr_enable_flag не кодируют/декодируют в заголовке последовательности. Одним словом, расширенный режим уточнения (adbr_enable_flag используется для управления включением расширенного режима уточнения) является подрежимом режима фильтрации для устранения блочности, который разрешено включать только тогда, когда включен режим фильтрации для устранения блочности.[000319] Embodiment 15: For Embodiment 11, adbr_enable_flag can be encoded and decoded only when the deblocking filtering mode is enabled. Namely, it can first be determined whether to enable the deblocking filtering mode, and if the deblocking filtering mode is enabled, the adbr_enable_flag can be encoded/decoded in the sequence header, and if the deblocking filtering mode is not enabled, the adbr_enable_flag is not enabled. encode/decode in the sequence header. In short, advanced refinement mode (adbr_enable_flag is used to control whether advanced refinement mode is enabled) is a submode of the deblocking filtering mode that is only allowed to be enabled when the deblocking filtering mode is enabled.

[000320] Для варианта 12 осуществления изобретения dbr_enable_flag может кодироваться и декодироваться только тогда, когда включен режим фильтрации для устранения блочности. А именно, сначала может быть определено, включать ли режим фильтрации для устранения блочности, и, если режим фильтрации для устранения блочности включен, флаг dbr_enable_flag может быть кодирован/декодирован в заголовке последовательности, а если режим фильтрации для устранения блочности не включен, флаг dbr_enable_flag не кодируют/декодируют в заголовке последовательности. Одним словом, расширенный режим фильтрации (dbr_enable_flag используется для управления включением расширенного режима фильтрации) является подрежимом режима фильтрации для устранения блочности, который разрешено включать только тогда, когда включен режим фильтрации для устранения блочности.[000320] For embodiment 12, the dbr_enable_flag can be encoded and decoded only when the deblocking filtering mode is enabled. Namely, it can first be determined whether to enable the deblocking filtering mode, and if the deblocking filtering mode is enabled, the dbr_enable_flag can be encoded/decoded in the sequence header, and if the deblocking filtering mode is not enabled, the dbr_enable_flag is not enabled. encode/decode in the sequence header. In short, the advanced filtering mode (dbr_enable_flag is used to control whether the advanced filtering mode is enabled) is a submode of the deblocking filtering mode that is only allowed to be enabled when the deblocking filtering mode is enabled.

[000321] Для варианта 13 осуществления изобретения высокоуровневые синтаксисы (используемые для управления включением расширенного режима фильтрации и расширенного режима уточнения), показанные в таблице 1, кодируют и декодируют только тогда, когда разрешен режим фильтрации для устранения блочности. А именно, сначала может быть определено, включать ли режим фильтрации для устранения блочности, и, если режим фильтрации для устранения блочности включен, высокоуровневые синтаксисы, показанные в таблице 1, кодируют/декодируют в заголовке изображения, а если режим фильтрации для устранения блочности не включен, высокоуровневые синтаксисы, показанные в таблице 1, не кодируют/декодируют в заголовке изображения.[000321] For embodiment 13, the high-level syntaxes (used to control the enablement of the extended filtering mode and the extended refinement mode) shown in Table 1 encode and decode only when the deblocking filtering mode is enabled. Namely, it can first be determined whether to enable the deblocking filtering mode, and if the deblocking filtering mode is enabled, the high-level syntaxes shown in Table 1 encode/decode in the image header, and if the deblocking filtering mode is not enabled ,The high-level syntaxes shown in Table 1 do not encode/decode ,in the image header.

[000322] Для варианта 14 осуществления изобретения высокоуровневые синтаксисы (используемые для управления включением расширенного режима фильтрации и расширенного режима уточнения), показанные в таблице 2, кодируют и декодируют только тогда, когда включен режим фильтрации для устранения блочности. А именно, сначала может быть определено, включен ли режим фильтрации для устранения блочности, и, если режим фильтрации для устранения блочности включен, высокоуровневые синтаксисы, показанные в таблице 2, кодируют/декодируют в заголовке изображения, а если режим фильтрации для устранения блочности не включен, высокоуровневые синтаксисы, показанные в таблице 2, не кодируют/декодируют в заголовке изображения.[000322] For embodiment 14, the high-level syntaxes (used to control the enablement of the extended filtering mode and the extended refinement mode) shown in Table 2 encode and decode only when the deblocking filtering mode is enabled. Namely, it can first be determined whether the deblocking filtering mode is enabled, and, if the deblocking filtering mode is enabled, the high-level syntaxes shown in Table 2 encode/decode in the image header, and if the deblocking filtering mode is not enabled ,The high-level syntaxes shown in Table 2 do not encode/decode ,in the image header.

[000323] Вариант 16 осуществления изобретения: для процесса фильтрации для устранения блочности компонента яркости (т.е. текущий блок является компонентом яркости), например, компонент яркости уточняют на основе расширенного режима уточнения или расширенного режима фильтрации.[000323] Embodiment 16: For a filtering process to deblock a luminance component (ie, the current block is a luminance component), for example, the luminance component is refined based on an advanced refinement mode or an advanced filtering mode.

[000324] Параметры DBR компонента яркости получают в следующем процессе:[000324] The luminance component DBR parameters are obtained in the following process:

[000325] Если текущая граница, подлежащая фильтрации, является вертикальной границей, а значение PhAltDbrVEnableFlag равно 1, или текущая граница, подлежащая фильтрации, является горизонтальной границей, а значение PhAltDbrHEnableFlag равно 1, значение Picture DbrEnableFlag равно 1; в противном случае значение PictureDbrEnableFlag равно 0. Если текущая граница, подлежащая фильтрации, является вертикальной границей, а значение PictureAltDbrVEnableFlag равно 1, или текущая граница, подлежащая фильтрации, является горизонтальной границей, а значение PictureAltDbrHEnableFlag равно 1, значение Picture AltDbrEnableFlag равно 1, в противном случае значение PictureAltDbrEnableFlag равно 0.[000325] If the current border to be filtered is a vertical border and the value of PhAltDbrVEnableFlag is 1, or the current border to be filtered is a horizontal border and the value of PhAltDbrHEnableFlag is 1, the value of Picture DbrEnableFlag is 1; otherwise, the value of PictureDbrEnableFlag is 0. If the current border to be filtered is a vertical border and the value of PictureAltDbrVEnableFlag is 1, or the current border to be filtered is a horizontal border and the value of PictureAltDbrHEnableFlag is 1, the value of Picture AltDbrEnableFlag is 1, otherwise In this case, the PictureAltDbrEnableFlag value is 0.

[000326] С помощью следующего способа можно получить dbr_th, dbr_offset0, dbr_offset1, alt_dbr_offset0 и alt_dbr_offset1:[000326] Using the following method, you can get dbr_th, dbr_offset0, dbr_offset1, alt_dbr_offset0 and alt_dbr_offset1:

[000327] Для вертикальной границы dbr_th=DbrVThreshold, dbr_offset0=DbrVOffset0, dbr_offset1=DbrVGffsetl, alt_dbr_offset0=DbrVAltOffset0 и alt_dbr_offset1=DbrVAltOffset1.[000327] For the vertical boundary, dbr_th=DbrVThreshold, dbr_offset0=DbrVOffset0, dbr_offset1=DbrVGffsetl, alt_dbr_offset0=DbrVAltOffset0 and alt_dbr_offset1=DbrVAltOffset1.

[000328] Для горизонтальной границы dbr_th=DbrHTreshold, dbr_offset0=DbrHOffset0, dbr_offset1=DbrHOffset1, alt_dbr_offset0=DbrHAltOffset0 и alt_dbr__offset1=DbrHAltOffset1.[000328] For a horizontal boundary, dbr_th=DbrHTreshold, dbr_offset0=DbrHOffset0, dbr_offset1=DbrHOffset1, alt_dbr_offset0=DbrHAltOffset0 and alt_dbr__offset1=DbrHAltOffset1.

[000329] (1) Процесс фильтрации границы, когда значение BS компонента яркости равно 4, выглядит следующим образом (используется расширенный режим фильтрации для обработки):[000329] (1) The edge filtering process when the luminance component BS value is 4 is as follows (using advanced filtering mode for processing):

[000330] Когда значение BS равно 4, процессы вычисления фильтрации для p0, p1, р2 и q0, q1, q2 следующие:[000330] When the BS value is 4, the filter calculation processes for p0, p1, p2 and q0, q1, q2 are as follows:

[000331] Р0=(р2*3+p1*8+p0*10+q0*8+q1*3+16) >> 5;[000331] P0=(p2*3+p1*8+p0*10+q0*8+q1*3+16) >> 5;

[000332] P1=(р2*4+p1*5+p0*4+q0*3+8) >> 4;[000332] P1=(p2*4+p1*5+p0*4+q0*3+8) >> 4;

[000333] Р2=(р3*2+р2*2+p1*2+p0*1+q0*1+4) >> 3;[000333] P2=(p3*2+p2*2+p1*2+p0*1+q0*1+4) >> 3;

[000334] Q0=(p1*3+p0*8+q0*10+q1*8+q2 * 3+16)>> 5;[000334] Q0=(p1*3+p0*8+q0*10+q1*8+q2 * 3+16)>> 5;

[000335] Q1=(p0*3+q0*4+q1*5+q2*4+8) >> 4;[000335] Q1=(p0*3+q0*4+q1*5+q2*4+8) >> 4;

[000336] Q2=(p0*1+q0*1+q1*2+q2*2+q3*2+4) >> 3.[000336] Q2=(p0*1+q0*1+q1*2+q2*2+q3*2+4) >> 3.

[000337] P0, P1, P2 и Q0, Q1, Q2 отфильтрованные значения (отфильтрованные значения пикселей).[000337] P0, P1, P2 and Q0, Q1, Q2 filtered values (filtered pixel values).

[000338] После получения Р0, P1, Р2 и Q0, Q1, Q2, если значение PhDbrEnableFlag равно 1, тогда,[000338] After receiving P0, P1, P2 and Q0, Q1, Q2, if the value of PhDbrEnableFlag is 1, then,

[000339] если pi>Pi+dbr_th, то Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); в противном случае, если pi<Pi dbr_th, то Pi-clip((Pi+pi+1) >> 1+dbr_offset1), где i=0, 1 или 2;[000339] if pi>Pi+dbr_th, then Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); otherwise, if pi<Pi dbr_th, then Pi-clip((Pi+pi+1) >> 1+dbr_offset1), where i=0, 1 or 2;

[000340] если qi>Qi+dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbr_offset0); в противном случае, если qi<Qi-dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbr_offset1), где i=0, 1 или 2.[000340] if qi>Qi+dbr_th, then Qi'=clip((Qi+qi+1) >> 1+dbr_offset0); otherwise, if qi<Qi-dbr_th then Qi'=clip((Qi+qi+1) >> 1+dbr_offset1), where i=0, 1 or 2.

[000341] В приведенных выше формулах pi может представлять собой исходное значение пикселя, qi может представлять собой исходное значение пикселя, Pi может представлять отфильтрованное значение пикселя, Qi может представлять отфильтрованное значение пикселя, Pi' может представлять уточненное значение пикселя, и Qi' может представлять собой уточненное значение пикселя.[000341] In the above formulas, pi may represent the original pixel value, qi may represent the original pixel value, Pi may represent the filtered pixel value, Qi may represent the filtered pixel value, Pi' may represent the refined pixel value, and Qi' may represent is a refined pixel value.

[000342] (2) Процесс фильтрации границы, когда значение BS компонента яркости (используется расширенный режим фильтрации для обработки) равно 3, выглядит следующим образом:[000342] (2) The edge filtering process when the luminance component BS value (using advanced filtering mode for processing) is 3 is as follows:

[000343] Когда значение BS равно 3, процессы вычисления фильтрации для p0, p1 и q0, q1 следующие:[000343] When the value of BS is 3, the filter calculation processes for p0, p1 and q0, q1 are as follows:

[000344] Р0=(р2+(p1 << 2)+(p0 << 2)+(p0 << 1)+(q0 << 2)+q1+8) >> 4;[000344] P0=(p2+(p1 << 2)+(p0 << 2)+(p0 << 1)+(q0 << 2)+q1+8) >> 4;

[000345] P1=((р2 << 1)+р2+(p1 << 3)+(p0 << 2)+q0+8) >> 4;[000345] P1=((p2 << 1)+p2+(p1 << 3)+(p0 << 2)+q0+8) >> 4;

[000346] Q0=(p1+(p0 << 2)+(q0 << 2)+(q0 << 1)+(q1 << 2)+q2+8) >> 4;[000346] Q0=(p1+(p0 << 2)+(q0 << 2)+(q0 << 1)+(q1 << 2)+q2+8) >> 4;

[000347] Q1=((q2 << 1)+q2+(q1 << 3)+(q0 << 2)+p0+8) >> 4.[000347] Q1=((q2 << 1)+q2+(q1 << 3)+(q0 << 2)+p0+8) >> 4.

[000348] P0, P1 и Q0, Q1 - отфильтрованные значения (отфильтрованные значения пикселей).[000348] P0, P1 and Q0, Q1 are filtered values (filtered pixel values).

[000349] После получения Р0, Р1 и Q0, Q1, если значение PhDbrEnableFlag равно 1, тогда,[000349] After receiving P0, P1 and Q0, Q1, if the value of PhDbrEnableFlag is 1, then,

[000350] если pi>Pi+dbr_th, то Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); в противном случае, если pi<Pi -dbr_th, то Pi -clip((Pi+pi+1) >> 1+dbr_offset1), где i=0, 1;[000350] if pi>Pi+dbr_th, then Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); otherwise, if pi<Pi -dbr_th, then Pi -clip((Pi+pi+1) >> 1+dbr_offset1), where i=0, 1;

[000351] если qi>Qi+dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbr_offset0); в противном случае, если qi<Qi-dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbr_offset1), где i=0, 1.[000351] if qi>Qi+dbr_th, then Qi'=clip((Qi+qi+1) >> 1+dbr_offset0); otherwise, if qi<Qi-dbr_th, then Qi'=clip((Qi+qi+1) >> 1+dbr_offset1), where i=0, 1.

[000352] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, Pi может представлять отфильтрованное значение пикселя, Qi может представлять отфильтрованное значение пикселя, Pi' может представлять уточненное значение пикселя, и Qi' может представлять уточненное значение пикселя.[000352] In the above formulas, pi may represent the original pixel value, qi may represent the original pixel value, Pi may represent the filtered pixel value, Qi may represent the filtered pixel value, Pi' may represent the refined pixel value, and Qi' may represent the refined value pixel.

[000353] (3) Процесс фильтрации границы, когда значение BS компонента яркости равно 2 (с использованием расширенного режима фильтрации для обработки), выглядит следующим образом:[000353] (3) The edge filtering process when the luminance component BS value is 2 (using the advanced filtering mode for processing) is as follows:

[000354] Когда значение BS равно 2, процессы вычисления фильтрации для p0 и q0 следующие:[000354] When the value of BS is 2, the filter calculation processes for p0 and q0 are as follows:

[000355] Р0=((p1 << 1)+p1+(p0 << 3)+(p0 << 1)+(q0 << 1)+q0+8) >> 4;[000355] P0=((p1 << 1)+p1+(p0 << 3)+(p0 << 1)+(q0 << 1)+q0+8) >> 4;

[000356] Q0=((p0 << 1)+p0+(q0 << 3)+(q0 << 1)+(q1 << 1)+q1+8) >> 4.[000356] Q0=((p0 << 1)+p0+(q0 << 3)+(q0 << 1)+(q1 << 1)+q1+8) >> 4.

[000357] P0 и Q0 оба являются отфильтрованными значениями (отфильтрованными значениями пикселей).[000357] P0 and Q0 are both filtered values (filtered pixel values).

[000358] После получения Р0 и Q0, если значение PhDbrEnableFlag равно 1, то:[000358] After receiving P0 and Q0, if the value of PhDbrEnableFlag is 1, then:

[000359] если pi>Pi+dbr_th, то Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); в противном случае, если pi<Pi -dbr_th, то Pi-clip((Pi+pi+1) >> 1+dbr_offset1), где i=0;[000359] if pi>Pi+dbr_th, then Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); otherwise, if pi<Pi -dbr_th, then Pi-clip((Pi+pi+1) >> 1+dbr_offset1), where i=0;

[000360] если qi>Qi+dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbroffset0); в противном случае, если qi<Qi-dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbr_offset1), где i=0.[000360] if qi>Qi+dbr_th, then Qi'=clip((Qi+qi+1) >> 1+dbroffset0); otherwise, if qi<Qi-dbr_th, then Qi'=clip((Qi+qi+1) >> 1+dbr_offset1), where i=0.

[000361] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, Pi может представлять отфильтрованное значение пикселя, Qi может представлять отфильтрованное значение пикселя, Pi' может представлять уточненное значение пикселя, и Qi' может представлять уточненное значение пикселя.[000361] In the above formulas, pi may represent the original pixel value, qi may represent the original pixel value, Pi may represent the filtered pixel value, Qi may represent the filtered pixel value, Pi' may represent the refined pixel value, and Qi' may represent the refined value pixel.

[000362] (4) Процесс фильтрации границы, когда значение BS компонента яркости равно 1 (с использованием расширенного режима фильтрации для обработки), выглядит следующим образом:[000362] (4) The edge filtering process when the luminance component BS value is 1 (using the advanced filtering mode for processing) is as follows:

[000363] Когда значение BS равно 1, процессы вычисления фильтрации для p0 и q0 следующие:[000363] When the value of BS is 1, the filter calculation processes for p0 and q0 are as follows:

[000364] Р0=((p0 << 1)+p0+q0+2) >> 2;[000364] P0=((p0 << 1)+p0+q0+2) >> 2;

[000365] Q0=((q0 << 1)+q0+p0+2) >> 2.[000365] Q0=((q0 << 1)+q0+p0+2) >> 2.

[000366] P0 и Q0 являются отфильтрованными значениями (отфильтрованными значениями пикселей).[000366] P0 and Q0 are filtered values (filtered pixel values).

[000367] После получения Р0 и Q0, если значение PhDbrEnableFla равно 1, тогда:[000367] After receiving P0 and Q0, if the value of PhDbrEnableFla is 1, then:

[000368] если pi>Pi+dbr_th, то Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); в противном случае, если pi<Pi -dbr_th, то Pi-clip((Pi+pi+1) >> 1+dbr_offset1), где i=0;[000368] if pi>Pi+dbr_th, then Pi'=clip((Pi+pi+1) >> 1+dbr_offset0); otherwise, if pi<Pi -dbr_th, then Pi-clip((Pi+pi+1) >> 1+dbr_offset1), where i=0;

[000369] если qi>Qi+dbr_th, то Qi'=clip((Qi+qi+1) >> 1+dbr_offset0); в противном случае, если qi<Qi-dbr_th, то Qi-clip((Qi+qi+1) >> 1+dbr_offset1), где i=0.[000369] if qi>Qi+dbr_th, then Qi'=clip((Qi+qi+1) >> 1+dbr_offset0); otherwise, if qi<Qi-dbr_th, then Qi-clip((Qi+qi+1) >> 1+dbr_offset1), where i=0.

[000370] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, Pi может представлять отфильтрованное значение пикселя, Qi может представлять отфильтрованное значение пикселя, Pi' может представлять уточненное значение пикселя, и Qi' может представлять уточненное значение пикселя.[000370] In the above formulas, pi may represent the original pixel value, qi may represent the original pixel value, Pi may represent the filtered pixel value, Qi may represent the filtered pixel value, Pi' may represent the refined pixel value, and Qi' may represent the refined value pixel.

[000371] (5) Процесс фильтрации границы, когда значение BS компонента яркости равно 0, выполняется способом 1 (с использованием расширенного режима уточнения для обработки):[000371] (5) The edge filtering process when the luminance component BS value is 0 is performed in Method 1 (using the advanced refine mode for processing):

[000372] Когда значение BS равно 0, процессы вычисления фильтрации для pi и qi следующие:[000372] When the value of BS is 0, the filtering calculation processes for pi and qi are as follows:

[000373] Определяют значение градиента DPi для pi и значение градиента DQi для qi. Например, DPi=(pi-qi+2) >> 2 и DQi=(qi-pi+2) >> 2, или DPi=(pi-qi+1) >> 1 и DQi=(qi-pi+1) >> 1.[000373] The gradient value DPi for pi and the gradient value DQi for qi are determined. For example, DPi=(pi-qi+2) >> 2 and DQi=(qi-pi+2) >> 2, or DPi=(pi-qi+1) >> 1 and DQi=(qi-pi+1 ) >> 1.

[000374] После получения DPi и DQi, если значение PhAltDbrEnableFlag равно 1, тогда:[000374] After receiving DPi and DQi, if the value of PhAltDbrEnableFlag is 1, then:

[000375] если DPi>dbr_th, то Pi=clip(pi+alt_dbr_offset0); в противном случае, если DPi<dbr_th, то Pi=clip(pi+alt_dbr_offset1);[000375] if DPi>dbr_th, then Pi=clip(pi+alt_dbr_offset0); otherwise, if DPi<dbr_th, then Pi=clip(pi+alt_dbr_offset1);

[000376] если DQi>dbr_th, то Qi=clip(qi+alt_dbr_offset0); в противном случае, если DQi<-dbr_th, то Qr=clip(qi+alt_dbr_offset1).[000376] if DQi>dbr_th, then Qi=clip(qi+alt_dbr_offset0); otherwise, if DQi<-dbr_th, then Qr=clip(qi+alt_dbr_offset1).

[000377] В приведенных выше формулах i может быть равно 0 или может быть равно 0, 1, 2 и т.п., что здесь не ограничивается.[000377] In the above formulas, i may be equal to 0 or may be equal to 0, 1, 2, etc., which is not limited here.

[000378] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, DPi может представлять значение градиента, DQi может представлять значение градиента, Pi может представлять уточненное значение пикселя, и Qi может представлять уточненное значение пикселя.[000378] In the above formulas, pi may represent an original pixel value, qi may represent an original pixel value, DPi may represent a gradient value, DQi may represent a gradient value, Pi may represent a refined pixel value, and Qi may represent a refined pixel value.

[000379] (6) Процесс фильтрации границы, когда значение BS компонента яркости равно 0, выполняется способом 2 (с использованием расширенного режима уточнения для обработки):[000379] (6) The edge filtering process when the luminance component BS value is 0 is performed in method 2 (using the advanced refinement mode for processing):

[000380] Когда значение BS равно 0, процессы вычисления фильтрации для pi и qi следующие:[000380] When the value of BS is 0, the filter calculation processes for pi and qi are as follows:

[000381] Определяют значение градиента DPi для pi и значение градиента DQi для qi. Например, DPi=(pi-qi+1) >> 1 и DQi=(qi-pi+1) >> 1.[000381] The gradient value DPi for pi and the gradient value DQi for qi are determined. For example, DPi=(pi-qi+1) >> 1 and DQi=(qi-pi+1) >> 1.

[000382] После получения DPi и DQi, если значение PhAltDbrEnableFlag равно 1, тогда:[000382] After receiving DPi and DQi, if the value of PhAltDbrEnableFlag is 1, then:

[000383] если DPi>2*dbr_th, то Pr=clip(pi+alt_dbr_offset0); в противном случае, если DPi<-2*dbr_th, то Pr=clip(pi+alt_dbr_offset1);[000383] if DPi>2*dbr_th, then Pr=clip(pi+alt_dbr_offset0); otherwise, if DPi<-2*dbr_th, then Pr=clip(pi+alt_dbr_offset1);

[000384] если DQi>2*dbr_th, то Qi=clip(qi+alt_dbr_offset0); в противном случае, если DQi<2*dbr_th, то Qi=clip(qi+alt_dbr_offset1).[000384] if DQi>2*dbr_th, then Qi=clip(qi+alt_dbr_offset0); otherwise, if DQi<2*dbr_th, then Qi=clip(qi+alt_dbr_offset1).

[000385] В приведенных выше формулах 2*dbr_th и 2*dbr_th могут быть пороговыми значениями уточнения в описанных выше вариантах осуществления изобретения.[000385] In the above formulas, 2*dbr_th and 2*dbr_th may be refinement thresholds in the embodiments described above.

[000386] В приведенных выше формулах i может быть равно 0 или может быть равно 0, 1, 2 и т.п., что здесь не ограничивается.[000386] In the above formulas, i may be equal to 0 or may be equal to 0, 1, 2, etc., which is not limited here.

[000387] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, DPi может представлять значение градиента, DQi может представлять значение градиента, Pi может представлять уточненное значение пикселя, и Qi может представлять уточненное значение пикселя.[000387] In the above formulas, pi may represent an original pixel value, qi may represent an original pixel value, DPi may represent a gradient value, DQi may represent a gradient value, Pi may represent a refined pixel value, and Qi may represent a refined pixel value.

[000388] (7) Процесс фильтрации границы, когда значение BS компонента яркости равно 0, выполняется способом 3 (с использованием расширенного режима уточнения для обработки):[000388] (7) The edge filtering process when the luminance component BS value is 0 is performed in method 3 (using the advanced refinement mode for processing):

[000389] Когда значение BS равно 0, процессы вычисления фильтрации для pi и qi следующие:[000389] When the value of BS is 0, the filtering calculation processes for pi and qi are as follows:

[000390] Определяют значение градиента DPi для pi и значение градиента DQi для qi. Например, значение градиента DPi и значение градиента DQi могут быть определены следующим образом: DPi=((pi << 1)+pi+qi+2) >> 2 и DQi=((qi << 1)+qi+pi+2) >> 2.[000390] The gradient value DPi for pi and the gradient value DQi for qi are determined. For example, the gradient value DPi and the gradient value DQi can be defined as follows: DPi=((pi << 1)+pi+qi+2) >> 2 and DQi=((qi << 1)+qi+pi+2 ) >> 2.

[000391] После получения DPi и DQi, если значение PhAltDbrEnableFlag равно 1, тогда:[000391] After receiving DPi and DQi, if the value of PhAltDbrEnableFlag is 1, then:

[000392] если pi>DPi+dbr_th, то Pi=clip(pi+alt_dbr_offset0); в противном случае, если pi<DPi-dbr_th, то Pi=clip(pi+alt_dbr_offset1);[000392] if pi>DPi+dbr_th, then Pi=clip(pi+alt_dbr_offset0); otherwise, if pi<DPi-dbr_th then Pi=clip(pi+alt_dbr_offset1);

[000393] если qi>DQi+dbr_th, то Qi=clip(qi+alt_dbr_offset0); в противном случае, если qi<DQi-dbr_th, то Qi=clip(qi+alt_dbr_offset1).[000393] if qi>DQi+dbr_th, then Qi=clip(qi+alt_dbr_offset0); otherwise, if qi<DQi-dbr_th then Qi=clip(qi+alt_dbr_offset1).

[000394] В одной возможной реализации приведенное выше выражение может быть эквивалентно следующей форме выражения:[000394] In one possible implementation, the above expression may be equivalent to the following form of the expression:

[000395] Определяют значение градиента DPi для pi и значение градиента DQi для qi. Например, значение градиента DPi и значение градиента DQi можно определить следующим образом: DPi=pi -(((pi << 1)+pi+qi+2) >> 2) и DQi=qi- (((qi << 1)+qi+pi+2) >> 2).[000395] The gradient value DPi for pi and the gradient value DQi for qi are determined. For example, the gradient value DPi and the gradient value DQi can be defined as follows: DPi=pi -(((pi << 1)+pi+qi+2) >> 2) and DQi=qi- (((qi << 1) +qi+pi+2) >> 2).

[000396] После получения DPi и DQi, если значение PhAltDbrEnableFlag равно 1, тогда:[000396] After receiving DPi and DQi, if the value of PhAltDbrEnableFlag is 1, then:

[000397] если DPi>dbr_th, то Pi=clip(pi+alt_dbr_offset0); в противном случае, если DPi<dbr_th, то Pi=clip(pi+alt_dbr_offset1);[000397] if DPi>dbr_th, then Pi=clip(pi+alt_dbr_offset0); otherwise, if DPi<dbr_th, then Pi=clip(pi+alt_dbr_offset1);

[000398] если DQi>dbr_th, то Qi=clip(qi+alt_dbr_offset0); в противном случае, если DQi<-dbr_th, то Qr=clip(qi+alt_dbr_offset1).[000398] if DQi>dbr_th, then Qi=clip(qi+alt_dbr_offset0); otherwise, if DQi<-dbr_th, then Qr=clip(qi+alt_dbr_offset1).

[000399] В приведенных выше формулах i может быть равно 0 или может быть равно 0, 1, 2 и т.п., что здесь не ограничивается.[000399] In the above formulas, i may be equal to 0 or may be equal to 0, 1, 2, etc., which is not limited here.

[000400] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, DPi может представлять значение градиента, DQi может представлять значение градиента, Pi может представлять уточненное значение пикселя, и Qi может представлять уточненное значение пикселя.[000400] In the above formulas, pi may represent an original pixel value, qi may represent an original pixel value, DPi may represent a gradient value, DQi may represent a gradient value, Pi may represent a refined pixel value, and Qi may represent a refined pixel value.

[000401] В приведенном выше варианте осуществления изобретения clip(x) представляет, что х ограничено в пределах [0, 2^(bit depth)-1] (интервал включает 0 и 2^(bit depth)-1), где bit depth представляет битовую глубину изображения, которая обычно равна 8, 10, 12 или т.п.[000401] In the above embodiment, clip(x) represents that x is limited to within [0, 2^(bit depth)-1] (the range includes 0 and 2^(bit depth)-1), where bit depth represents the bit depth of the image, which is usually 8, 10, 12, or the like.

[000402] (8) Процесс фильтрации границы, когда значение BS компонента яркости равно 0, выполняется способом 4 (с использованием расширенного режима уточнения для обработки):[000402] (8) The edge filtering process when the luminance component BS value is 0 is performed in method 4 (using the advanced refinement mode for processing):

[000403] Когда значение BS равно 0, процессы вычисления фильтрации для pi и qi следующие:[000403] When the value of BS is 0, the filtering calculation processes for pi and qi are as follows:

[000404] Определяют значение градиента DPi для pi и значение градиента DQi для qi. Например, значение градиента DPi и значение градиента DQi могут быть определены следующим образом: DPi=(qi-pi+2) >> 2 и DQi=(pi-qi+2) >> 2.[000404] The gradient value DPi for pi and the gradient value DQi for qi are determined. For example, the gradient value DPi and the gradient value DQi can be defined as follows: DPi=(qi-pi+2) >> 2 and DQi=(pi-qi+2) >> 2.

[000405] После получения DPi и DQi, если значение PhAltDbrEnableFlag равно 1, тогда:[000405] After receiving DPi and DQi, if the value of PhAltDbrEnableFlag is 1, then:

[000406] если DPi<dbr_th, то Pi=clip(pi+dbraltoffset0); в противном случае, если DPi>-dbr_th, то Pi=clip(pi+dbraltoffset1);[000406] if DPi<dbr_th, then Pi=clip(pi+dbraltoffset0); otherwise, if DPi>-dbr_th, then Pi=clip(pi+dbraltoffset1);

[000407] если DQKdbr_th, то Qi=clip(qi+alt_dbr_offset0); в противном случае, если DQi>dbr_th, то Qi=clip(qi+dbr alt offset1).[000407] if DQKdbr_th, then Qi=clip(qi+alt_dbr_offset0); otherwise, if DQi>dbr_th, then Qi=clip(qi+dbr alt offset1).

[000408] В приведенных выше формулах i может быть равно 0 или может быть равно 0, 1, 2 и т.п., что здесь не ограничивается.[000408] In the above formulas, i may be equal to 0 or may be equal to 0, 1, 2, etc., which is not limited here.

[000409] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, DPi может представлять значение градиента, DQi может представлять значение градиента, Pi может представлять уточненное значение пикселя, a Qi может представлять уточненное значение пикселя.[000409] In the above formulas, pi may represent an original pixel value, qi may represent an original pixel value, DPi may represent a gradient value, DQi may represent a gradient value, Pi may represent a refined pixel value, and Qi may represent a refined pixel value.

[000410] (9) Процесс фильтрации границы, когда значение BS компонента яркости равно 0, выполняется способом 5 (с использованием расширенного режима уточнения для обработки):[000410] (9) The edge filtering process when the luminance component BS value is 0 is performed in Method 5 (using the advanced refine mode for processing):

[000411] Когда значение BS равно 0, процессы вычисления фильтрации для pi и qi следующие:[000411] When the value of BS is 0, the filtering calculation processes for pi and qi are as follows:

[000412] Определяют значение градиента DPi для pi и значение градиента DQi для qi. Например, значение градиента DPi и значение градиента DQi могут быть определены следующим образом: DPi=pi - (((pi << 1)+pi+qi+2) >> 2), т.е. DPi=(pi-qi -2) >> 2, a DQi=qi - (((qi << 1)+qi+pi+2) >> 2), т.e. DQi=(qi-pi - 2) >> 2.[000412] The gradient value DPi for pi and the gradient value DQi for qi are determined. For example, the gradient value DPi and the gradient value DQi can be defined as follows: DPi=pi - (((pi << 1)+pi+qi+2) >> 2), i.e. DPi=(pi-qi -2) >> 2, and DQi=qi - (((qi << 1)+qi+pi+2) >> 2), i.e. DQi=(qi-pi - 2) >> 2.

[000413] После получения DPi и DQi, если значение PhAltDbrEnableFlag равно 1, тогда:[000413] After receiving DPi and DQi, if the value of PhAltDbrEnableFlag is 1, then:

[000414] если DPi>dbr_th, то Pi=clip (pi+dbr alt offset0); в противном случае, если DPi<- dbr_th, то Pi=clip (pi+dbr alt offset1);[000414] if DPi>dbr_th, then Pi=clip (pi+dbr alt offset0); otherwise, if DPi<- dbr_th, then Pi=clip (pi+dbr alt offset1);

[000415] если DQi>dbr_th, то Qi=clip (qi+dbr alt offset0); в противном случае, если DQi<-dbr_th, то Qi=clip (qi+dbr alt offset1).[000415] if DQi>dbr_th, then Qi=clip (qi+dbr alt offset0); otherwise, if DQi<-dbr_th, then Qi=clip (qi+dbr alt offset1).

[000416] В приведенных выше формулах i может быть равно 0 или может быть равно 0, 1, 2 и т.п., что здесь не ограничивается.[000416] In the above formulas, i may be equal to 0 or may be equal to 0, 1, 2, etc., which is not limited here.

[000417] В приведенных выше формулах pi может представлять исходное значение пикселя, qi может представлять исходное значение пикселя, DPi может представлять значение градиента, DQi может представлять значение градиента, Pi может представлять уточненное значение пикселя, и Qi может представлять уточненное значение пикселя.[000417] In the above formulas, pi may represent an original pixel value, qi may represent an original pixel value, DPi may represent a gradient value, DQi may represent a gradient value, Pi may represent a refined pixel value, and Qi may represent a refined pixel value.

[000418] Вариант 17 осуществления изобретения: для вариантов 11 и 12 осуществления изобретения высокоуровневый синтаксис SPS может быть заменен высокоуровневым синтаксисом PPS, или высокоуровневым синтаксисом заголовка изображения, или высокоуровневым синтаксисом изображения, или высокоуровневым синтаксисом заголовка слайса, или высокоуровневым синтаксисом CTU или высокоуровневым синтаксисом CU, причем типы высокоуровневых синтаксисов здесь не ограничены, при условии, что высокоуровневые синтаксисы могут передавать dbr_enable_flag или adbr_enable_flag. Для вариантов 13 и 14 осуществления изобретения высокоуровневый синтаксис заголовка изображения может быть заменен высокоуровневым синтаксисом SPS, или высокоуровневым синтаксисом PPS, или высокоуровневым синтаксисом изображения, или высокоуровневым синтаксисом заголовка слайса, или высокоуровневым синтаксисом CTU или высокоуровневым синтаксисом CU, причем типы высокоуровневых синтаксисов здесь не ограничены, если высокоуровневые синтаксисы могут передавать содержимое таблицы 1 и таблицы 2, а именно, высокоуровневые синтаксисы могут передавать флаг включения расширенного режима уточнения, флаг включения расширенного режима фильтрации, первое пороговое значение уточнения, первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, первое значение смещения уточнения, второе значение смещения уточнения и т.п., при этом конкретная реализация аналогична реализации вариантов 13 и 14 осуществления изобретения и здесь не повторяется.[000418] Embodiment 17: For Embodiments 11 and 12, the high-level SPS syntax may be replaced by the high-level PPS syntax, or the high-level image header syntax, or the high-level image syntax, or the high-level slice header syntax, or the high-level CTU syntax, or the high-level CU syntax , and the types of high-level syntaxes are not limited here, provided that high-level syntaxes can pass dbr_enable_flag or adbr_enable_flag. For Embodiments 13 and 14, the high-level image header syntax may be replaced by high-level SPS syntax, or high-level PPS syntax, or high-level image syntax, or high-level slice header syntax, or high-level CTU syntax, or high-level CU syntax, and the types of high-level syntaxes are not limited herein. , if the high-level syntaxes can convey the contents of Table 1 and Table 2, namely, the high-level syntaxes can convey the advanced refinement mode enable flag, the advanced filtering mode enable flag, the first refinement threshold, the first filtering threshold, the first filtering offset value, the second offset value filtering, the first refinement offset value, the second refinement offset value, etc., wherein the specific implementation is similar to the implementation of embodiments 13 and 14 of the invention and is not repeated here.

[000419] Для вариантов 13 и 14 осуществления изобретения высокоуровневый синтаксис заголовка изображения может быть заменен высокоуровневым синтаксисом CTU, который передает параметры, относящиеся к DBR, при этом параметры, относящиеся к DBR, включают первое пороговое значение уточнения, первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, первое значение смещения уточнения, второе значение смещения уточнения и т.п., как показано в вариантах 13 и 14 осуществления изобретения. Альтернативно, высокоуровневый синтаксис заголовка изображения может быть заменен высокоуровневым синтаксисом CU, который передает параметры, относящиеся к DBR, при этом параметры, относящиеся к DBR, включают первое пороговое значение уточнения, первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, первое значение смещения уточнения, второе значение смещения уточнения и т.п., как показано в вариантах 13 и 14 осуществления изобретения.[000419] For embodiments 13 and 14, the high-level image header syntax may be replaced by a high-level CTU syntax that conveys DBR-related parameters, wherein the DBR-related parameters include a first refinement threshold, a first filtering threshold, a first value a filtering offset value, a second filtering offset value, a first refinement offset value, a second refinement offset value, and the like, as shown in Embodiments 13 and 14 of the invention. Alternatively, the high-level image header syntax may be replaced by a high-level CU syntax that conveys DBR-related parameters, wherein the DBR-related parameters include a first refinement threshold value, a first filtering threshold value, a first filtering offset value, a second filtering offset value, a first refinement offset value, a second refinement offset value, and the like, as shown in Embodiments 13 and 14 of the invention.

[000420] Вариант 18 осуществления изобретения: для варианта 16 осуществления изобретения это процесс фильтрации для устранения блочности для компонента яркости; кроме того, компонент яркости может быть заменен компонентом цветности, и процесс фильтрации для устранения блочности выполняется для компонента цветности (т.е. текущий блок является компонентом цветности). Процесс фильтрации для устранения блочности компонента цветности аналогичен процессу фильтрации для устранения блочности компонента яркости, как показано в варианте 16 осуществления изобретения, и здесь не приводится избыточных описаний.[000420] Embodiment 18: For Embodiment 16, this is a deblocking filtering process for the luminance component; further, the luma component may be replaced by a chrominance component, and a deblocking filtering process is performed on the chrominance component (ie, the current block is a chrominance component). The filtering process for deblocking the chrominance component is similar to the filtering process for deblocking the luminance component as shown in Embodiment 16, and redundant descriptions are not given here.

[000421] В некоторых вариантах осуществления изобретения описанные выше варианты осуществления изобретения с 1 по 18 могут быть реализованы отдельно или в виде комбинаций, например, могут быть объединены вариант 1 осуществления изобретения и вариант 2 осуществления изобретения, могут быть объединены вариант 1 осуществления изобретения и вариант 3 осуществления изобретения, могут быть объединены вариант 1 осуществления изобретения и вариант 4 осуществления изобретения, могут быть объединены вариант 1 осуществления изобретения и вариант 5 осуществления изобретения, и могут быть объединены вариант 1 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18; могут быть произвольно объединены по меньшей мере два варианта осуществления изобретения с 8 по 18; могут быть объединены вариант 2 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18; могут быть объединены вариант 3 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18; могут быть объединены вариант 4 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18; могут быть объединены вариант 5 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18; могут быть объединены вариант 6 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18; могут быть объединены вариант 7 осуществления изобретения и по меньшей мере один из вариантов осуществления изобретения с 8 по 18. Конечно, выше приведены лишь несколько примеров комбинации, и по меньшей мере любые два варианта осуществления изобретения из вариантов осуществления изобретения с 1 по 18 могут быть объединены для реализации соответствующего процесса.[000421] In some embodiments, Embodiments 1 to 18 described above may be implemented separately or in combinations, for example, Embodiment 1 and Embodiment 2 may be combined, Embodiment 1 and Embodiment 2 may be combined, 3 embodiments of the invention, Embodiment 1 and Embodiment 4 may be combined, Embodiment 1 and Embodiment 5 may be combined, and Embodiment 1 and at least one of Embodiments 8 to 5 may be combined. 18; at least two embodiments 8 to 18 may be optionally combined; Embodiment 2 and at least one of Embodiments 8 to 18 may be combined; embodiment 3 and at least one of embodiments 8 to 18 may be combined; embodiment 4 and at least one of embodiments 8 to 18 may be combined; Embodiment 5 and at least one of Embodiments 8 to 18 may be combined; Embodiment 6 and at least one of Embodiments 8 to 18 may be combined; Embodiment 7 and at least one of Embodiments 8 to 18 may be combined. Of course, the above are just a few combination examples, and at least any two embodiments from Embodiments 1 to 18 may be combined to implement the corresponding process.

[000422] В некоторых вариантах осуществления изобретения, описание кодера в каждом из описанных выше вариантов осуществления изобретения может быть применено к декодеру, и декодер может выполнять обработку таким же образом. Описание декодера может быть применено к кодеру, и кодер может выполнять обработку таким же образом.[000422] In some embodiments of the invention, the description of the encoder in each of the embodiments described above may be applied to the decoder, and the decoder may perform processing in the same manner. The decoder description can be applied to the encoder, and the encoder can perform processing in the same way.

[000423] Вариант 19 осуществления изобретения: основанный на той же идее заявки, что и описанный выше способ, вариант осуществления настоящего раскрытия обеспечивает устройство декодирования, которое применяется в декодере. Устройство декодирования содержит: память, сконфигурированную для хранения видеоданных; декодер, сконфигурированный для осуществления способа кодирования и декодирования, показанного в вариантах осуществления изобретения с 1 по 18, а именно для реализации потока обработки декодера.[000423] Embodiment 19: Based on the same application idea as the method described above, an embodiment of the present disclosure provides a decoding apparatus that is used in a decoder. The decoding device includes: a memory configured to store video data; a decoder configured to implement the encoding and decoding method shown in Embodiments 1 to 18, namely, to implement a decoder processing flow.

[000424] Например, в одной из возможных реализаций декодер сконфигурирован для выполнения следующего:[000424] For example, in one possible implementation, the decoder is configured to do the following:

[000425] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определения значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя определения уточненного значения пикселя текущей точки пикселя.[000425] if the current pixel point in the current block satisfies the condition of enabling the extended refinement mode, determining the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining a refined pixel value of the current pixel point.

[000426] На основе той же идеи заявки, что и в описанном выше способе, вариант осуществления настоящего раскрытия обеспечивает устройство кодирования, которое применяется в кодере. Устройство кодирования содержит: память, сконфигурированную для хранения видеоданных; кодер, сконфигурированный для осуществления способа кодирования и декодирования, показанного в вариантах осуществления изобретения с 1 по 18, а именно для реализации потока обработки кодера.[000426] Based on the same application idea as the method described above, an embodiment of the present disclosure provides an encoding device that is used in an encoder. The encoding device includes: a memory configured to store video data; an encoder configured to implement the encoding and decoding method shown in Embodiments 1 to 18, namely, to implement an encoder processing flow.

[000427] Например, в одной из возможных реализаций кодер сконфигурирован для выполнения следующего:[000427] For example, in one possible implementation, the encoder is configured to do the following:

[000428] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определения значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определения уточненного значения пикселя текущей точки пикселя.[000428] if the current pixel point in the current block satisfies the condition of enabling the extended refinement mode, determining the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining the refined pixel value of the current pixel point.

[000429] На основе той же идеи заявки, что и в описанном выше способе, вариант осуществления настоящего раскрытия обеспечивает устройство декодера (также называемое видеодекодером). С точки зрения аппаратного уровня можно обратиться к фиг. 5А, иллюстрирующей схему аппаратной архитектуры устройства декодера, которое содержит: процессор 511 и машиночитаемый носитель 512 данных. Машиночитаемый носитель 512 данных хранит машиночитаемые инструкции, исполняемые процессором 511, и процессор 511 сконфигурирован для выполнения машиночитаемых инструкций для осуществления способа приведенных выше вариантов осуществления изобретения с 1 по 18. Например, процессор 511 сконфигурирован для выполнения машиночитаемых инструкций для выполнения следующих этапов:[000429] Based on the same application idea as the method described above, an embodiment of the present disclosure provides a decoder device (also called a video decoder). From a hardware level point of view, reference can be made to FIG. 5A, illustrating a hardware architecture diagram of a decoder device that includes: a processor 511 and a computer-readable storage medium 512. The computer-readable storage medium 512 stores computer-readable instructions executable by the processor 511, and the processor 511 is configured to execute the computer-readable instructions to implement the method of the above embodiments 1 to 18. For example, the processor 511 is configured to execute the computer-readable instructions to perform the following steps:

[000430] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя определение уточненного значения пикселя текущей точки пикселя.[000430] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; Based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining the refined pixel value of the current pixel point.

[000431] На основе той же идеи заявки, что и в описанном выше способе, вариант осуществления настоящего раскрытия обеспечивает устройство кодера (также называемое видеокодером). С точки зрения аппаратного уровня можно обратиться к фиг. 5В, иллюстрирующей схему аппаратной архитектуры устройства кодера, которое содержит: процессор 521 и машиночитаемый носитель 522 данных. Машиночитаемый носитель 522 данных хранит машиночитаемые инструкции, выполняемые процессором 521, и процессор 521 сконфигурирован для выполнения машиночитаемых инструкций для осуществления способа приведенных выше вариантов осуществления изобретения с 1 по 18. Например, процессор 521 сконфигурирован для выполнения машиночитаемых инструкций для выполнения следующих этапов:[000431] Based on the same application idea as the method described above, an embodiment of the present disclosure provides an encoder device (also called a video encoder). From a hardware level point of view, reference may be made to FIG. 5B, illustrating a hardware architecture diagram of an encoder device that includes: a processor 521 and a computer-readable storage medium 522. The computer-readable storage medium 522 stores computer-readable instructions executed by the processor 521, and the processor 521 is configured to execute the computer-readable instructions to implement the method of the above embodiments 1 to 18. For example, the processor 521 is configured to execute the computer-readable instructions to perform the following steps:

[000432] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определение уточненного значения пикселя текущей точки пикселя.[000432] if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining the refined pixel value of the current pixel point.

[000433] На основе той же идеи заявки, что и в описанном выше способе, вариант осуществления настоящего раскрытия обеспечивает машиночитаемый носитель данных, на котором хранятся компьютерные инструкции. Компьютерные инструкции выполняются процессором для осуществления способа, раскрытого в приведенных выше вариантах осуществления настоящего изобретения, например, способа кодирования и декодирования, упомянутого в приведенных выше вариантах осуществления изобретения. Машиночитаемый носитель данных может быть любым электронным, магнитным, оптическим или физическим запоминающим устройством и может содержать или хранить информацию, такую как исполняемые инструкции, данные и т.п. Например, машиночитаемый носитель данных может быть оперативной памятью (RAM, Random Access Memory), энергозависимой памятью, энергонезависимой памятью, флэш-памятью, запоминающим устройством (например, жестким диском), твердотельным жестким диском, любым типом диска для хранения (например, компакт-диском, цифровым видеодиском (DVD, Digital Video Disk)) или аналогичным носителем информации, или их комбинацией.[000433] Based on the same application idea as the method described above, an embodiment of the present disclosure provides a computer-readable storage medium on which computer instructions are stored. Computer instructions are executed by the processor to implement the method disclosed in the above embodiments of the present invention, for example, the encoding and decoding method mentioned in the above embodiments. A computer-readable storage medium may be any electronic, magnetic, optical, or physical storage device and may contain or store information such as executable instructions, data, and the like. For example, a computer-readable storage medium may be a random access memory (RAM, Random Access Memory), volatile memory, non-volatile memory, flash memory, a storage device (eg, a hard disk), a solid state hard drive, any type of storage disk (eg, a compact disk). disc, digital video disc (DVD, Digital Video Disk)) or similar storage medium, or a combination thereof.

[000434] На основе той же идеи заявки, что и в описанном выше способе, вариант осуществления настоящего раскрытия обеспечивает компьютерную прикладную программу, которая выполняется процессором для осуществления способа кодирования и декодирования, как раскрыто в приведенных выше вариантах осуществления изобретения.[000434] Based on the same application idea as the method described above, an embodiment of the present disclosure provides a computer application program that is executed by a processor to implement an encoding and decoding method as disclosed in the above embodiments.

[000435] На основе той же идеи заявки, что и в описанном выше способе, вариант осуществления настоящего раскрытия обеспечивает устройство кодирования и декодирования, которое применяется в кодере или декодере. Устройство кодирования и декодирования содержит:[000435] Based on the same application idea as the method described above, an embodiment of the present disclosure provides an encoding and decoding apparatus that is applied to an encoder or decoder. The encoding and decoding device contains:

[000436] модуль определения, выполненный с возможностью, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определять значение градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; и модуль обработки, выполненный с возможностью определять, на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, уточненное значение пикселя текущей точки пикселя.[000436] a determination module configured to, if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determine the gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; and a processing module configured to determine, based on the gradient value of the current pixel point and the original pixel value of the current pixel point, a refined pixel value of the current pixel point.

[000437] В некоторых вариантах осуществления изобретения модуль обработки при определении уточненного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя сконфигурирован для выполнения следующего:[000437] In some embodiments of the invention, the processing module, when determining the refined pixel value of the current pixel point based on the gradient value of the current pixel point and the original pixel value of the current pixel point, is configured to do the following:

[000438] на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения, определения уточненного значения пикселя текущей точки пикселя.[000438] based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value and the second refinement offset value, determining the refined pixel value of the current pixel point.

[000439] В некоторых вариантах осуществления изобретения модуль обработки, сконфигурированный, на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения, для определения уточненного значения пикселя текущей точки пикселя, сконфигурирован для того, чтобы: если значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, определять уточненное значение пикселя текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения;[000439] In some embodiments of the invention, a processing module configured, based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value, and the second refinement offset value, to determine the refined pixel value of the current pixel point is configured to: if the gradient value of the current pixel point is greater than the first refinement threshold value, determine the refined pixel value of the current pixel point based on the original pixel value of the current pixel point and the first refinement offset value;

[000440] если значение градиента текущей точки пикселя меньше, чем второе пороговое значение уточнения, определять уточненное значение пикселя текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения.[000440] If the gradient value of the current pixel point is less than the second refinement threshold value, determine the refined pixel value of the current pixel point based on the original pixel value of the current pixel point and the second refinement offset value.

[000441] В одной возможной реализации, если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, модуль определения также сконфигурирован для определения опорной точки пикселя, соответствующей текущей точке пикселя, из соседнего блока текущего блока и, на основе исходного значения пикселя опорной точки пикселя и исходного значения пикселя окружающей точки пикселя опорной точки пикселя, определения значения градиента опорной точки пикселя; модуль обработки также сконфигурирован для определения уточненного значения пикселя опорной точки пикселя на основе значения градиента опорной точки пикселя и исходного значения пикселя опорной точки пикселя.[000441] In one possible implementation, if the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, the determination module is also configured to determine a reference pixel point corresponding to the current pixel point from an adjacent block of the current block and, based on the original pixel value of the reference pixel point and the original pixel value of the surrounding pixel point of the pixel reference point, determining the gradient value of the pixel reference point; the processing module is also configured to determine the refined pixel value of the pixel reference point based on the gradient value of the pixel reference point and the original pixel value of the pixel reference point.

[000442] В некоторых вариантах осуществления изобретения модуль обработки при определении уточненного значения пикселя опорной точки пикселя на основе значения градиента опорной точки пикселя и исходного значения пикселя опорной точки пикселя сконфигурирован для выполнения следующего:[000442] In some embodiments of the invention, the processing module, when determining the refined pixel value of a pixel reference point based on the gradient value of the pixel reference point and the original pixel value of the pixel reference point, is configured to do the following:

[000443] на основе значения градиента опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения уточнения, четвертого порогового значения уточнения, третьего значения смещения уточнения и четвертого значения смещения уточнения, определения уточненного значения пикселя опорной точки пикселя.[000443] based on the pixel reference point gradient value, the original pixel reference point pixel value, the third refinement threshold value, the fourth refinement threshold value, the third refinement offset value and the fourth refinement offset value, determining the refined pixel reference point pixel value.

[000444] В некоторых вариантах осуществления изобретения модуль обработки, сконфигурированный, на основе значения градиента опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения уточнения, четвертого порогового значения уточнения, третьего значения смещения уточнения и четвертого значения смещения уточнения, для определения уточненного значения пикселя опорной точки пикселя, сконфигурирован для того, чтобы: если значение градиента опорной точки пикселя больше, чем третье пороговое значение уточнения, определять уточненное значение пикселя опорной точки пикселя на основе исходного значения пикселя опорной точки пикселя и третьего значения смещения уточнения;[000444] In some embodiments of the invention, a processing module configured, based on a pixel reference point gradient value, a pixel reference point original pixel value, a third refinement threshold value, a fourth refinement threshold value, a third refinement offset value, and a fourth refinement offset value, to determine the refined pixel reference point pixel value is configured to: if the pixel reference point gradient value is greater than the third refinement threshold value, determine the refined pixel reference point pixel value based on the original pixel reference point pixel value and the third refinement offset value;

[000445] если значение градиента опорной точки пикселя меньше четвертого порогового значения уточнения, определять уточненное значение пикселя опорной точки пикселя на основе исходного значения пикселя опорной точки пикселя и четвертого значения смещения уточнения.[000445] If the pixel reference point gradient value is less than the fourth refinement threshold value, determine the refined pixel reference point pixel value based on the original pixel reference point pixel value and the fourth refinement offset value.

[000446] В одной возможной реализации модуль определения при определении того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, сконфигурирован для выполнения следующего: если сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определения того, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения; или, если информация о свойствах, соответствующая текущему блоку, удовлетворяет условию включения расширенного режима уточнения, определения того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения.[000446] In one possible implementation, the determination module, when determining that the current pixel point in the current block satisfies the enhanced refine mode enable condition, is configured to do the following: if the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the enable condition extended refinement mode, determining that the current pixel point satisfies the condition for enabling the extended refinement mode; or, if the property information corresponding to the current block satisfies the enhanced refinement mode enablement condition, determining that the current pixel point in the current block satisfies the enhanced refinement mode enablement condition.

[000447] В некоторых вариантах осуществления изобретения модуль обработки также сконфигурирован для того, чтобы: если текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации, выполнять фильтрацию для устранения блочности исходного значения пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя; если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, определять уточненное значение пикселя текущей точки пикселя на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя.[000447] In some embodiments of the invention, the processing module is also configured to: if the current pixel point in the current block satisfies the general filtering mode enable condition, perform filtering to deblock the original pixel value of the current pixel point to obtain a filtered pixel value of the current pixel point ; if the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode, determine the refined pixel value of the current pixel point based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point.

[000448] В некоторых вариантах осуществления изобретения модуль обработки при определении уточненного значения пикселя текущей точки пикселя на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя сконфигурирован для выполнения следующего: на основе отфильтрованного значения пикселя текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения фильтрации, второго порогового значения фильтрации, первого значения смещения фильтрации и второго значения смещения фильтрации, определения уточненного значения пикселя текущей точки пикселя, при этом первое пороговое значение фильтрации и второе пороговое значение фильтрации являются числами, противоположными друг другу.[000448] In some embodiments of the invention, the processing module, when determining the refined pixel value of the current pixel point based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point, is configured to do the following: based on the filtered pixel value of the current pixel point, the original pixel value the current pixel point, the first filtering threshold value, the second filtering threshold value, the first filtering offset value and the second filtering offset value, determining the refined pixel value of the current pixel point, wherein the first filtering threshold value and the second filtering threshold value are numbers opposite to each other.

[000449] В некоторых вариантах осуществления изобретения, если текущая точка пикселя в текущем блоке удовлетворяет условию включения общего режима фильтрации, модуль обработки также сконфигурирован для определения опорной точки пикселя, соответствующей текущей точке пикселя, из соседнего блока текущего блока и выполнения фильтрации для устранения блочности для исходного значения пикселя опорной точки пикселя для получения отфильтрованного значения пикселя опорной точки пикселя;[000449] In some embodiments of the invention, if the current pixel point in the current block satisfies the general filtering mode enable condition, the processing module is also configured to determine a pixel reference point corresponding to the current pixel point from an adjacent block of the current block and perform deblocking filtering for an original pixel value of the pixel reference point to obtain a filtered pixel value of the pixel reference point;

[000450] если текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, определения уточненного значения пикселя опорной точки пикселя на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя.[000450] If the current pixel point in the current block satisfies the condition of enabling the advanced filtering mode, determining the refined pixel value of the pixel reference point based on the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point.

[000451] В некоторых вариантах осуществления изобретения модуль обработки при определении уточненного значения пикселя опорной точки пикселя на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя сконфигурирован для выполнения следующего: на основе отфильтрованного значения пикселя опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения фильтрации, четвертого порогового значения фильтрации, третьего значения смещения фильтрации и четвертого значения смещения фильтрации, определения уточненного значения пикселя опорной точки пикселя, при этом третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются числами, противоположными друг другу.[000451] In some embodiments of the invention, the processing module, when determining the refined pixel value of a pixel reference point based on the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point, is configured to do the following: based on the filtered pixel value of the pixel reference point, the original pixel value a pixel reference point, a third filtering threshold value, a fourth filtering threshold value, a third filtering offset value and a fourth filtering offset value, determining a refined pixel value of the pixel reference point, wherein the third filtering threshold value and the fourth filtering threshold value are numbers opposite to each other.

[000452] Системы, устройства, модули или блоки, описанные в приведенных выше вариантах осуществления изобретения, могут быть реализованы в виде компьютерных микросхем или объектов или в виде продуктов с определенными функциями. Типичным устройством реализации является компьютер, и компьютер, в конкретной форме, может быть персональным компьютером, портативным компьютером, сотовым телефоном, телефоном с камерой, смартфоном, персональным цифровым помощником, медиаплеером, навигационным оборудованием, приемопередатчиком электронной почты, игровой приставкой, планшетным компьютером, носимым устройством или комбинациями любых нескольких из этих устройств. Для удобства описания приведенное выше устройство при описании разделено на различные блоки по функциям. Конечно, при реализации настоящего раскрытия функции каждого блока могут быть реализованы в одном или более программных и/или аппаратных средствах.[000452] The systems, devices, modules or blocks described in the above embodiments of the invention may be implemented as computer chips or objects, or as products with certain functions. A typical implementation device is a computer, and a computer, in a specific form, may be a personal computer, laptop computer, cell phone, camera phone, smartphone, personal digital assistant, media player, navigation equipment, email transceiver, game console, tablet computer, wearable device or combinations of any number of these devices. For convenience of description, the above device is divided into various blocks according to function when described. Of course, in implementing the present disclosure, the functions of each block may be implemented in one or more software and/or hardware.

[000453] Специалистам в данной области техники должно быть понятно, что варианты осуществления настоящего изобретения могут быть предоставлены в виде способов, систем или компьютерных программных продуктов. Следовательно, настоящее раскрытие может принимать форму чисто аппаратного варианта осуществления изобретения, чисто программного варианта осуществления изобретения или варианта осуществления изобретения, сочетающего программное и аппаратное обеспечение. Кроме того, варианты осуществления настоящего раскрытия могут принимать форму компьютерного программного продукта, реализованного на одном или более доступных для компьютера носителях данных (включая, не ограничиваясь этим, дисковые запоминающие устройства, CD-ROM, оптические запоминающие устройства и т.д.), содержащие доступные для компьютера программные коды.[000453] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present disclosure may take the form of a pure hardware embodiment, a pure software embodiment, or an embodiment combining software and hardware. In addition, embodiments of the present disclosure may take the form of a computer program product embodied on one or more computer-accessible storage media (including, but not limited to, disk storage devices, CD-ROMs, optical storage devices, etc.) comprising computer-accessible program codes.

[000454] Настоящее описание представлено со ссылкой на блок-схемы и/или структурные схемы способов, устройств (систем) и компьютерных программных продуктов, раскрытых в вариантах осуществления настоящего раскрытия. Следует понимать, что каждый поток и/или блок на блок-схемах и/или структурных схемах и комбинации потоков и/или блоков на блок-схемах и/или структурных схемах могут быть реализованы инструкциями компьютерной программы. Эти инструкции компьютерной программы могут быть предоставлены процессору компьютера общего назначения, компьютера специального назначения, встроенному процессору или другому программируемому оборудованию обработки данных для создания машины, так что инструкции, выполняемые процессором или другим программируемым устройством обработки данных, обеспечивают устройство для реализации функций, указанных в одном или более потоках на блок-схеме и/или в одном или более блоках на структурной схеме.[000454] The present description is presented with reference to flowcharts and/or block diagrams of the methods, devices (systems), and computer program products disclosed in embodiments of the present disclosure. It should be understood that each flow and/or block in the block diagrams and/or block diagrams and combinations of threads and/or blocks in the block diagrams and/or block diagrams can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, a special purpose computer, an embedded processor, or other programmable data processing equipment to create a machine, such that the instructions executed by the processor or other programmable data processing equipment provide an apparatus for implementing the functions specified in one or more threads in a block diagram and/or in one or more blocks in a block diagram.

[000455] Эти инструкции компьютерной программы также могут быть сохранены в машиночитаемой памяти, способной управлять компьютером или другим программируемым устройством обработки данных для работы определенным образом, так что инструкции, хранящиеся в машиночитаемой памяти, создают промышленный продукт, включая устройство для выполнения инструкций, где устройство для выполнения инструкций реализует функции, указанные в одном или более потоках на блок-схеме и/или в одном или более блоках на структурной схеме. Эти инструкции компьютерной программы также могут быть загружены в компьютер или другое программируемое устройство обработки данных, так что последовательность рабочих этапов может быть выполнена на компьютере или другом программируемом устройстве для создания компьютерно-реализованной обработки, и, таким образом, инструкции, выполняемые на компьютере или другом программируемом устройстве, обеспечивают этапы для реализации функции, указанной в одном или более потоках на блок-схеме и/или в одном или более блоках на структурной схеме. Выше были приведены лишь некоторые примеры настоящего раскрытия, которые не ограничивают настоящее изобретение. Для специалистов в данной области техники настоящее раскрытие может иметь различные изменения и модификации. Любые модификации, эквивалентные замены, улучшения и т.д., выполненные в пределах сущности изобретения, находятся в пределах сущности формулы изобретения.[000455] These computer program instructions may also be stored in computer readable memory capable of controlling a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory create an industrial product, including a device for executing the instructions, where the device to execute instructions, implements functions specified in one or more threads in a block diagram and/or in one or more blocks in a block diagram. These computer program instructions may also be loaded into a computer or other programmable processing device such that a sequence of operating steps may be performed on the computer or other programmable device to create computer-implemented processing, and thus the instructions are executed on the computer or other programmable device. programmable device, provide steps for implementing a function specified in one or more flows in a block diagram and/or in one or more blocks in a block diagram. The above are only some examples of the present disclosure, which do not limit the present invention. For those skilled in the art, the present disclosure is subject to various changes and modifications. Any modifications, equivalent substitutions, improvements, etc. made within the scope of the invention are within the scope of the claims.

Claims (68)

1. Способ декодирования, включающий:1. A decoding method, including: в ответ на определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя;in response to determining that the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining a gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определение уточненного значения пикселя текущей точки пикселя;based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining a refined pixel value of the current pixel point; при этом определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, включает: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения;wherein determining that the current pixel point in the current block satisfies the enhanced refinement mode enabling condition includes: in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the enhanced refinement mode enabling condition, determining that the current pixel point satisfies the condition for enabling the extended refinement mode; причем определение уточненного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя включает:wherein determining the refined pixel value of the current pixel point based on the gradient value of the current pixel point and the original pixel value of the current pixel point includes: на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения, определение уточненного значения пикселя текущей точки пикселя;based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value and the second refinement offset value, determining the refined pixel value of the current pixel point; при этом в ответ на определение того, что значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения;wherein, in response to determining that the gradient value of the current pixel point is greater than the first refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the first refinement offset value; в ответ на определение того, что значение градиента текущей точки пикселя меньше, чем второе пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения.in response to determining that the gradient value of the current pixel point is less than the second refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the second refinement offset value. 2. Способ по п. 1, в котором определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, включает:2. The method of claim 1, wherein determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the condition for enabling the enhanced refinement mode includes: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, является заранее заданным первым значением, определение того, что сила границы подлежащей фильтрации границы удовлетворяет условию включения расширенного режима уточнения; при этом заранее заданное первое значение равно 0.in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point is a predetermined first value, determining that the boundary strength of the boundary to be filtered satisfies the condition for enabling the advanced refinement mode; in this case, the predetermined first value is 0. 3. Способ по п. 1, в котором,3. The method according to claim 1, in which, в ответ на определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, способ также включает:in response to determining that the current pixel point in the current block satisfies the enhanced refine mode enable condition, the method also includes: определение опорной точки пикселя, соответствующей текущей точке пикселя, из соседнего блока текущего блока и, на основе исходного значения пикселя опорной точки пикселя и исходного значения пикселя окружающей точки пикселя опорной точки пикселя, определение значения градиента опорной точки пикселя;determining a pixel reference point corresponding to the current pixel point from a neighboring block of the current block and, based on the original pixel value of the pixel reference point and the original pixel value of the surrounding pixel point of the pixel reference point, determining a gradient value of the pixel reference point; на основе значения градиента опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения уточнения, четвертого порогового значения уточнения, третьего значения смещения уточнения и четвертого значения смещения уточнения, определение уточненного значения пикселя опорной точки пикселя; при этом в ответ на определение того, что значение градиента опорной точки пикселя больше третьего порогового значения уточнения, уточненное значение пикселя опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и третьего значения смещения уточнения; в ответ на определение того, что значение градиента опорной точки пикселя меньше четвертого порогового значения уточнения, уточненное значение пикселя опорной точки пикселя определяют на основе исходного значения пикселя опорной точки пикселя и четвертого значения смещения уточнения.based on the gradient value of the pixel reference point, the original pixel value of the pixel reference point, the third refinement threshold value, the fourth refinement threshold value, the third refinement offset value and the fourth refinement offset value, determining the refined pixel value of the pixel reference point; wherein, in response to determining that the gradient value of the pixel reference point is greater than the third refinement threshold value, the refined pixel value of the pixel reference point is determined based on the original pixel value of the pixel reference point and the third refinement offset value; in response to determining that the gradient value of the pixel reference point is less than the fourth refinement threshold value, the refined pixel value of the pixel reference point is determined based on the original pixel value of the pixel reference point and the fourth refinement offset value. 4. Способ по любому из пп. 1-3, также включающий:4. Method according to any one of paragraphs. 1-3, also including: определение первого порогового значения уточнения, первого значения смещения уточнения, второго значения смещения уточнения, третьего порогового значения уточнения, третьего значения смещения уточнения и четвертого значения смещения уточнения, соответствующих текущему блоку, из высокоуровневого синтаксиса;determining a first refinement threshold value, a first refinement offset value, a second refinement offset value, a third refinement threshold value, a third refinement offset value, and a fourth refinement offset value corresponding to the current block from a high-level syntax; при этом перед определением того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, способ также включает:wherein, before determining that the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, the method also includes: в ответ на определение того, что флаг включения расширенного режима уточнения, соответствующий текущему блоку, разрешает текущему блоку включать расширенный режим уточнения, определение, удовлетворяет ли текущая точка пикселя в текущем блоке условию включения расширенного режима уточнения;in response to determining that the enhanced refinement mode enable flag corresponding to the current block allows the current block to enable the enhanced refinement mode, determining whether the current pixel point in the current block satisfies the enhanced refinement mode enable condition; при этом способ также включает: определение флага включения расширенного режима уточнения, соответствующего текущему блоку, из высокоуровневого синтаксиса.wherein the method also includes: determining an extended refinement mode enable flag corresponding to the current block from the high-level syntax. 5. Способ по п. 1, также включающий:5. The method according to claim 1, also including: в ответ на определение того, что текущая точка пикселя удовлетворяет условию включения общего режима фильтрации, выполнение фильтрации для устранения блочности для исходного значения пикселя текущей точки пикселя для получения отфильтрованного значения пикселя текущей точки пикселя; иin response to determining that the current pixel point satisfies the general filtering mode enable condition, performing deblocking filtering on the original pixel value of the current pixel point to obtain a filtered pixel value of the current pixel point; And в ответ на определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации, определение уточненного значения пикселя текущей точки пикселя на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя; и/илиin response to determining that the current pixel point satisfies the condition for enabling the extended filtering mode, determining a refined pixel value of the current pixel point based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point; and/or при этом определение уточненного значения пикселя текущей точки пикселя на основе отфильтрованного значения пикселя текущей точки пикселя и исходного значения пикселя текущей точки пикселя включает:wherein determining the refined pixel value of the current pixel point based on the filtered pixel value of the current pixel point and the original pixel value of the current pixel point includes: на основе отфильтрованного значения пикселя текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения фильтрации, второго порогового значения фильтрации, первого значения смещения фильтрации и второго значения смещения фильтрации, определение уточненного значения пикселя текущей точки пикселя; при этом первое пороговое значение фильтрации и второе пороговое значение фильтрации являются числами, противоположными друг другу; и/илиbased on the filtered pixel value of the current pixel point, the original pixel value of the current pixel point, the first filtering threshold value, the second filtering threshold value, the first filtering offset value and the second filtering offset value, determining a refined pixel value of the current pixel point; wherein the first filtering threshold value and the second filtering threshold value are numbers opposite to each other; and/or при этом значение пикселя текущей точки пикселя в текущем блоке представляет собой компонент яркости или компонент цветности; и/илиwherein the pixel value of the current pixel point in the current block is a luma component or a chrominance component; and/or при этом способ также включает:the method also includes: в ответ на определение того, что флаг включения расширенного режима фильтрации, соответствующий текущему блоку, разрешает текущему блоку включать расширенный режим фильтрации, определение, удовлетворяет ли текущая точка пикселя условию включения расширенного режима фильтрации.in response to determining that the advanced filtering mode enable flag corresponding to the current block allows the current block to enable the advanced filtering mode, determining whether the current pixel point satisfies the advanced filtering mode enabling condition. 6. Способ по п. 5, также включающий, в ответ на определение того, что текущая точка пикселя удовлетворяет условию включения общего режима фильтрации:6. The method of claim 5, further comprising, in response to determining that the current pixel point satisfies the general filtering mode enable condition: определение опорной точки пикселя, соответствующей текущей точке пикселя, из соседнего блока текущего блока иdetermining a pixel reference point corresponding to the current pixel point from an adjacent block of the current block, and выполнение фильтрации для устранения блочности для исходного значения пикселя опорной точки пикселя для получения отфильтрованного значения пикселя опорной точки пикселя;performing deblocking filtering on the original pixel value of the pixel reference point to obtain a filtered pixel value of the pixel reference point; при этом в ответ на определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации, способ также включает:wherein, in response to determining that the current pixel point satisfies the advanced filtering mode enable condition, the method also includes: определение уточненного значения пикселя опорной точки пикселя на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя.determining a refined pixel value of the pixel reference point based on the filtered pixel value of the pixel reference point and an original pixel value of the pixel reference point. 7. Способ по п. 6, в котором определение уточненного значения пикселя опорной точки пикселя на основе отфильтрованного значения пикселя опорной точки пикселя и исходного значения пикселя опорной точки пикселя включает:7. The method of claim 6, wherein determining the refined pixel value of the pixel reference point based on the filtered pixel value of the pixel reference point and the original pixel value of the pixel reference point includes: на основе отфильтрованного значения пикселя опорной точки пикселя, исходного значения пикселя опорной точки пикселя, третьего порогового значения фильтрации, четвертого порогового значения фильтрации, третьего значения смещения фильтрации и четвертого значения смещения фильтрации, определение уточненного значения пикселя опорной точки пикселя, при этом третье пороговое значение фильтрации и четвертое пороговое значение фильтрации являются числами, противоположными друг другу;based on the filtered pixel value of the pixel reference point, the original pixel value of the pixel reference point, the third filtering threshold value, the fourth filtering threshold value, the third filtering offset value and the fourth filtering offset value, determining the refined pixel value of the pixel reference point, wherein the third filtering threshold value and the fourth filtering threshold value are numbers opposite to each other; причем первое пороговое значение фильтрации, первое значение смещения фильтрации, второе значение смещения фильтрации, третье пороговое значение фильтрации, третье значение смещения фильтрации и четвертое значение смещения фильтрации, соответствующие текущему блоку, определяют из высокоуровневого синтаксиса.wherein the first filtering threshold value, the first filtering offset value, the second filtering offset value, the third filtering threshold value, the third filtering offset value and the fourth filtering offset value corresponding to the current block are determined from the high-level syntax. 8. Способ по п. 5, в котором определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима фильтрации, включает:8. The method of claim 5, wherein determining that the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode includes: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима фильтрации и абсолютное значение разности между отфильтрованным значением пикселя текущей точки пикселя и исходным значением пикселя текущей точки пикселя превышает заранее заданное пороговое значение, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима фильтрации.in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the condition for enabling the advanced filtering mode, and the absolute value of the difference between the filtered pixel value of the current pixel point and the original pixel value of the current pixel point exceeds a predetermined threshold value , determining that the current pixel point satisfies the condition for enabling the advanced filtering mode. 9. Способ по п. 8, в котором определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, удовлетворяет условию включения расширенного режима фильтрации, включает:9. The method of claim 8, wherein determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point satisfies the condition for enabling the advanced filtering mode includes: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя, является заранее заданным вторым значением, определение того, что сила границы подлежащей фильтрации границы удовлетворяет условию включения расширенного режима фильтрации.in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point is a predetermined second value, determining that the boundary strength of the boundary to be filtered satisfies the condition for enabling the advanced filtering mode. 10. Способ кодирования, включающий:10. Coding method, including: в ответ на определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определение значения градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя;in response to determining that the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determining a gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current pixel point; на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определение уточненного значения пикселя текущей точки пикселя;based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determining a refined pixel value of the current pixel point; при этом определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, включает: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения;wherein determining that the current pixel point in the current block satisfies the enhanced refinement mode enabling condition includes: in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the enhanced refinement mode enabling condition, determining that the current pixel point satisfies the condition for enabling the extended refinement mode; причем определение уточненного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя включает:wherein determining the refined pixel value of the current pixel point based on the gradient value of the current pixel point and the original pixel value of the current pixel point includes: на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения, определение уточненного значения пикселя текущей точки пикселя;based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value and the second refinement offset value, determining the refined pixel value of the current pixel point; при этом в ответ на определение того, что значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения;wherein, in response to determining that the gradient value of the current pixel point is greater than the first refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the first refinement offset value; в ответ на определение того, что значение градиента текущей точки пикселя меньше, чем второе пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения.in response to determining that the gradient value of the current pixel point is less than the second refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the second refinement offset value. 11. Устройство декодирования, содержащее:11. A decoding device comprising: модуль определения, выполненный с возможностью, в ответ на определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определять значение градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; иa determination module configured to, in response to determining that the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determine a gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current point pixel; And модуль обработки, выполненный с возможностью, на основе значения градиента текущей точки пикселя и исходного значения пикселя для текущей точки пикселя, определять уточненное значение пикселя текущей точки пикселя;a processing module configured to, based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determine a refined pixel value of the current pixel point; при этом определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, включает: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения;wherein determining that the current pixel point in the current block satisfies the enhanced refinement mode enabling condition includes: in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the enhanced refinement mode enabling condition, determining that the current pixel point satisfies the condition for enabling the extended refinement mode; причем определение уточненного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя включает:wherein determining the refined pixel value of the current pixel point based on the gradient value of the current pixel point and the original pixel value of the current pixel point includes: на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения, определение уточненного значения пикселя текущей точки пикселя;based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value and the second refinement offset value, determining the refined pixel value of the current pixel point; при этом в ответ на определение того, что значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения;wherein, in response to determining that the gradient value of the current pixel point is greater than the first refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the first refinement offset value; в ответ на определение того, что значение градиента текущей точки пикселя меньше, чем второе пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения.in response to determining that the gradient value of the current pixel point is less than the second refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the second refinement offset value. 12. Устройство кодирования, содержащее:12. An encoding device containing: модуль определения, выполненный с возможностью, в ответ на определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, определять значение градиента текущей точки пикселя на основе исходного значения пикселя текущей точки пикселя и исходного значения пикселя окружающей точки пикселя текущей точки пикселя; иa determination module configured to, in response to determining that the current pixel point in the current block satisfies the condition for enabling the extended refinement mode, determine a gradient value of the current pixel point based on the original pixel value of the current pixel point and the original pixel value of the surrounding pixel point of the current point pixel; And модуль обработки, выполненный с возможностью, на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя, определять уточненное значение пикселя текущей точки пикселя;a processing module configured to, based on the gradient value of the current pixel point and the original pixel value of the current pixel point, determine a refined pixel value of the current pixel point; при этом определение того, что текущая точка пикселя в текущем блоке удовлетворяет условию включения расширенного режима уточнения, включает: в ответ на определение того, что сила границы подлежащей фильтрации границы, соответствующей текущей точке пикселя в текущем блоке, удовлетворяет условию включения расширенного режима уточнения, определение того, что текущая точка пикселя удовлетворяет условию включения расширенного режима уточнения;wherein determining that the current pixel point in the current block satisfies the enhanced refinement mode enabling condition includes: in response to determining that the boundary strength of the boundary to be filtered corresponding to the current pixel point in the current block satisfies the enhanced refinement mode enabling condition, determining that the current pixel point satisfies the condition for enabling the extended refinement mode; причем определение уточненного значения пикселя текущей точки пикселя на основе значения градиента текущей точки пикселя и исходного значения пикселя текущей точки пикселя включает:wherein determining the refined pixel value of the current pixel point based on the gradient value of the current pixel point and the original pixel value of the current pixel point includes: на основе значения градиента текущей точки пикселя, исходного значения пикселя текущей точки пикселя, первого порогового значения уточнения, второго порогового значения уточнения, первого значения смещения уточнения и второго значения смещения уточнения, определение уточненного значения пикселя текущей точки пикселя;based on the gradient value of the current pixel point, the original pixel value of the current pixel point, the first refinement threshold value, the second refinement threshold value, the first refinement offset value and the second refinement offset value, determining the refined pixel value of the current pixel point; при этом в ответ на определение того, что значение градиента текущей точки пикселя больше, чем первое пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и первого значения смещения уточнения;wherein, in response to determining that the gradient value of the current pixel point is greater than the first refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the first refinement offset value; в ответ на определение того, что значение градиента текущей точки пикселя меньше, чем второе пороговое значение уточнения, уточненное значение пикселя текущей точки пикселя определяют на основе исходного значения пикселя текущей точки пикселя и второго значения смещения уточнения.in response to determining that the gradient value of the current pixel point is less than the second refinement threshold value, the refined pixel value of the current pixel point is determined based on the original pixel value of the current pixel point and the second refinement offset value. 13. Устройство декодера, содержащее процессор и машиночитаемый носитель данных, при этом машиночитаемый носитель данных хранит машиночитаемые инструкции, исполняемые процессором;13. A decoder device comprising a processor and a computer-readable storage medium, wherein the computer-readable storage medium stores computer-readable instructions executable by the processor; процессор сконфигурирован для выполнения машиночитаемых инструкций для осуществления способа по любому из пп. 1-9.the processor is configured to execute machine-readable instructions for implementing the method of any one of claims. 1-9. 14. Устройство кодера, содержащее процессор и машиночитаемый носитель данных, при этом машиночитаемый носитель данных хранит машиночитаемые инструкции, исполняемые процессором;14. An encoder device comprising a processor and a computer-readable storage medium, wherein the computer-readable storage medium stores computer-readable instructions executable by the processor; процессор сконфигурирован для выполнения машиночитаемых инструкций для осуществления способа по п. 10.the processor is configured to execute machine-readable instructions for implementing the method of claim 10. 15. Машиночитаемый носитель данных, на котором хранятся машиночитаемые инструкции, исполняемые процессором, при этом процессор сконфигурирован для выполнения машиночитаемых инструкций для осуществления способа по любому из пп. 1-9.15. A computer-readable storage medium on which computer-readable instructions executable by the processor are stored, wherein the processor is configured to execute the computer-readable instructions for implementing the method of any one of claims. 1-9.
RU2023122954A 2021-02-23 2022-02-22 Method, equipment and devices for encoding and decoding RU2817405C1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110204154.2 2021-02-23

Related Child Applications (1)

Application Number Title Priority Date Filing Date
RU2024109192A Division RU2024109192A (en) 2021-02-23 2022-02-22 Method, equipment and devices for encoding and decoding

Publications (1)

Publication Number Publication Date
RU2817405C1 true RU2817405C1 (en) 2024-04-16

Family

ID=

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012071417A1 (en) * 2010-11-24 2012-05-31 Thomson Licensing Adaptive loop filtering
JP2015104061A (en) * 2013-11-27 2015-06-04 三菱電機株式会社 Dynamic image encoding device and dynamic image decoding device
US9264739B2 (en) * 2011-09-20 2016-02-16 Lg Electronics Inc. Method and apparatus for encoding/decoding image information
RU2586003C2 (en) * 2011-10-25 2016-06-10 Квэлкомм Инкорпорейтед Determination of filtration boundary level of deblocking for video coding
US9906790B2 (en) * 2014-03-14 2018-02-27 Qualcomm Incorporated Deblock filtering using pixel distance
US10142658B2 (en) * 2011-04-01 2018-11-27 Ibex Pt Holdings Co., Ltd. Method of decoding moving pictures in intra prediction
WO2019026807A1 (en) * 2017-08-03 2019-02-07 Sharp Kabushiki Kaisha Systems and methods for partitioning video blocks in an inter prediction slice of video data
CN109889853A (en) * 2019-02-26 2019-06-14 北京大学深圳研究生院 A kind of block-eliminating effect filtering method, system, equipment and computer-readable medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012071417A1 (en) * 2010-11-24 2012-05-31 Thomson Licensing Adaptive loop filtering
US10142658B2 (en) * 2011-04-01 2018-11-27 Ibex Pt Holdings Co., Ltd. Method of decoding moving pictures in intra prediction
US9264739B2 (en) * 2011-09-20 2016-02-16 Lg Electronics Inc. Method and apparatus for encoding/decoding image information
RU2586003C2 (en) * 2011-10-25 2016-06-10 Квэлкомм Инкорпорейтед Determination of filtration boundary level of deblocking for video coding
JP2015104061A (en) * 2013-11-27 2015-06-04 三菱電機株式会社 Dynamic image encoding device and dynamic image decoding device
US9906790B2 (en) * 2014-03-14 2018-02-27 Qualcomm Incorporated Deblock filtering using pixel distance
WO2019026807A1 (en) * 2017-08-03 2019-02-07 Sharp Kabushiki Kaisha Systems and methods for partitioning video blocks in an inter prediction slice of video data
CN109889853A (en) * 2019-02-26 2019-06-14 北京大学深圳研究生院 A kind of block-eliminating effect filtering method, system, equipment and computer-readable medium

Similar Documents

Publication Publication Date Title
US11265540B2 (en) Apparatus and method for applying artificial neural network to image encoding or decoding
US11051009B2 (en) Video processing methods and apparatuses for processing video data coded in large size coding units
US9172961B2 (en) Method of applying edge offset
CN113228646A (en) Adaptive Loop Filtering (ALF) with non-linear clipping
US11979554B2 (en) Intra prediction-based video signal processing method and device
WO2018130413A1 (en) A method and a device for image encoding and decoding
JP2023090929A (en) Video decoding method, video decoding apparatus, and storage medium
US10834395B2 (en) Method and a device for decoding an intra predicted block of a picture and corresponding coding method and coding device
TWI806447B (en) Encoding and decoding method, encoding and decoding apparatus, and devices thereof
WO2020239038A1 (en) Video processing methods and apparatuses for determining deblocking filter decision in video coding systems
CN114125445B (en) Decoding method, device, equipment and machine readable storage medium
CN114640847B (en) Encoding and decoding method, device and equipment thereof
CN114630119B (en) Encoding and decoding method, device and equipment
GB2523076A (en) Improved palette mode in HEVC for the encoding process
RU2817405C1 (en) Method, equipment and devices for encoding and decoding
CN114143548B (en) Coding and decoding of transform coefficients in video coding and decoding
JP2019528648A (en) Method and apparatus for video coding using sample adaptive offset
CN116389737B (en) Coding and decoding of transform coefficients in video coding and decoding
WO2023246901A1 (en) Methods and apparatus for implicit sub-block transform coding
CN114222119B (en) Enhanced filtering method, device and machine-readable storage medium
CN114051727B (en) Encoding device, decoding device, and computer-readable storage medium
KR102410326B1 (en) Method and apparatus for encoding/decoding a video signal
KR20230137232A (en) Method And Apparatus for Video Coding Using Context Model Initialization
CN116888960A (en) Encoding method, decoding method, encoder, decoder, and storage medium