RU2533852C2 - Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions) - Google Patents

Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions) Download PDF

Info

Publication number
RU2533852C2
RU2533852C2 RU2012157008/08A RU2012157008A RU2533852C2 RU 2533852 C2 RU2533852 C2 RU 2533852C2 RU 2012157008/08 A RU2012157008/08 A RU 2012157008/08A RU 2012157008 A RU2012157008 A RU 2012157008A RU 2533852 C2 RU2533852 C2 RU 2533852C2
Authority
RU
Russia
Prior art keywords
block
pixels
reference block
encoded
current
Prior art date
Application number
RU2012157008/08A
Other languages
Russian (ru)
Other versions
RU2012157008A (en
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 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд."
Priority to RU2012157008/08A priority Critical patent/RU2533852C2/en
Priority to KR1020130140504A priority patent/KR102257886B1/en
Priority to US14/140,183 priority patent/US9615089B2/en
Publication of RU2012157008A publication Critical patent/RU2012157008A/en
Application granted granted Critical
Publication of RU2533852C2 publication Critical patent/RU2533852C2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction

Abstract

FIELD: physics, video.
SUBSTANCE: invention relates to means of encoding and decoding a multiview video sequence. The method comprises excluding from consideration pixels included in the vicinity of the current encoded block and in the vicinity of the reference block, the pixels being estimated to be unreliable for computation of parameters for changing illumination according to a given criterion; determining numerical ratios between pixels of the reference block, reliable pixels located in the vicinity of the current encoded block and reliable pixels located in the vicinity of the reference block; considering initial values; computing illumination correction parameter values based on the determined numerical ratios; estimating a change in values of pixels of the reference block; when the change is estimated to be substantial, the values of the pixels of the reference block are corrected using the computed correction parameters.
EFFECT: high efficiency of interframe prediction owing to compensation for illumination mismatches between a reference block and a current encoded block based on pixels located in the vicinity of said blocks.
71 cl, 11 dwg

Description

Изобретение относится к технологиям обработки цифровых сигналов в компьютерной системе, а более конкретно - к способам коррекции различий в яркости, которые могут возникать между кадрами многоракурсной видеопоследовательности. В частности, настоящее изобретение может быть использовано при кодировании и декодировании многоракурсных видеопоследовательностей.The invention relates to technologies for processing digital signals in a computer system, and more particularly to methods for correcting differences in brightness that may occur between frames of a multi-angle video sequence. In particular, the present invention can be used in the encoding and decoding of multi-angle video sequences.

Один из известных из уровня техники способов, применяемых для кодирования многоракурсных видеопоследовательностей, заключается в использовании кадров, принадлежащих соседним видам (ракурсам), а также кадров, синтезированных с помощью кадров соседних видов (ракурсов) и карт глубин. Такие кадры выступают в качестве опорных кадров при проведении кодирования с предсказанием [1]. При этом производится устранение возможного смещения объекта в текущем кадре относительно одного из опорных кадров. Под смещением может пониматься движение объекта или различие в положении объекта между текущим кодируемым кадром и кадрами, принадлежащими соседним видам (ракурсам), или синтезированным кадром. Цель устранения указанного смещения заключается в минимизации межкадровой разности. Полученная межкадровая разность затем кодируется (например, путем применения декоррелирующего преобразования, квантования и энтропийного кодирования) и помещается в выходной - битовый поток.One of the methods known from the prior art used for coding multi-angle video sequences is to use frames belonging to neighboring views (angles), as well as frames synthesized using frames of neighboring views (angles) and depth maps. Such frames act as reference frames during prediction coding [1]. This eliminates the possible displacement of the object in the current frame relative to one of the reference frames. Under the displacement can be understood the movement of the object or the difference in the position of the object between the current encoded frame and frames belonging to neighboring views (angles), or a synthesized frame. The purpose of eliminating this bias is to minimize the inter-frame difference. The resulting inter-frame difference is then encoded (for example, by applying decorrelation transform, quantization, and entropy coding) and placed in the output bitstream.

Возможные различия в параметрах камер, используемых для съемки многоракурсных видеопоследовательностей, а также различие в световом потоке, поступающем от объектов съемки к камерам, приводят к локальным различиям яркости между кадрами, принадлежащими разным ракурсам. Указанные различия в яркости также влияют на характеристики синтезированных кадров. Это может приводить к увеличению абсолютных значений межкадровой разности, что негативно сказывается на эффективности кодирования.Possible differences in the parameters of the cameras used for shooting multi-angle video sequences, as well as the difference in the luminous flux coming from the objects to the cameras, lead to local differences in brightness between frames belonging to different angles. The indicated differences in brightness also affect the characteristics of the synthesized frames. This can lead to an increase in the absolute values of the interframe difference, which negatively affects the coding efficiency.

Для решения указанной выше проблемы в стандарте Н.264 [2] используется взвешенный прогноз, изначально предназначенный для эффективного кодирования одновидовых (одноракурсных) видеопоследовательностей, в которых встречаются эффекты плавного введения и выведения изображения, мерцания или смены сцены. Взвешенный прогноз позволяет устранять различие в яркости между кодируемым кадром и опорными кадрами на уровне макроблоков. При этом используются одни и те же значения весовых коэффициентов для всех макроблоков, принадлежащих одному и тому же слою. Весовые коэффициенты могут определяться в процессе кодирования и сохраняться в выходном битовом потоке («явный» взвешенный прогноз) или вычисляться в процессе кодирования/декодирования («неявный» взвешенный прогноз). Однако в случае многоракурсных последовательностей, где могут наблюдаться локальные изменения яркости и/или контрастности, такой способ может оказаться неэффективным.To solve the above problem, the H.264 standard [2] uses a weighted forecast, which was originally intended for efficient coding of single-species (single-view) video sequences in which there are effects of smooth input and output of images, flicker or scene change. Weighted prediction eliminates the difference in brightness between the encoded frame and reference frames at the macroblock level. In this case, the same values of the weighting coefficients are used for all macroblocks belonging to the same layer. Weights can be determined during the encoding process and stored in the output bitstream (“explicit” weighted forecast) or calculated in the encoding / decoding process (“implicit” weighted forecast). However, in the case of multi-angle sequences, where local changes in brightness and / or contrast can be observed, this method may be ineffective.

Другим подходом к решению указанной проблемы является адаптивная поблочная коррекция различия в яркости [3]. Одним из способов, реализующих указанный подход, является способ одношаговой аффинной коррекции яркости для многоракурсных видеопоследовательностей (Multiview One-Step Affine Illumination Compensation - MOSAIC) [4, 5]. Указанный способ предполагает комбинацию поблочной коррекции различия в яркости с описанными в [2] режимами межкадрового предсказания. В процессе такого кодирования для каждого макроблока вычисляют средние значения пикселей текущего кодируемого блока и опорного блока-кандидата. Для указанных блоков формируют модифицированные блоки путем вычитания среднего значения для каждого пикселя блока. Затем для полученных блоков вычисляют сумму абсолютных разностей (Mean-Removed Sum of Absolute Difference - MRSAD). Результатом межкадрового предсказания являются относительные координаты опорного блока (вектор смещения), которые дают минимальное значение стоимости кодирования, а также разность между модифицированным кодируемым блоком и модифицированным опорным блоком. При этом вычисление стоимости кодирования основывается на вычисленном значении MRSAD и оценке битовых затрат на передачу дополнительной информации, необходимой для последующего декодирования. Помимо вектора смещения дополнительная информация включает в себя разность между средними значениями текущего и опорного блоков. Эта разность обозначается как DVIC (Difference Value of Illumination Compensation) и является параметром коррекции яркости. Значение DVIC подвергается дифференциальному кодированию и помещается в выходной битовый поток. Необходимо отметить, что в случае режима "Р Skip" значение DVIC определяется на основании значений DVIC соседних макроблоков, которые уже были закодированы на момент кодирования текущего макроблока. Таким образом, приведенный способ не позволяет полностью устранить необходимость явной передачи дополнительной информации, необходимой для последующего декодирования.Another approach to solving this problem is adaptive block correction of differences in brightness [3]. One of the methods that implements this approach is the method of one-step affine brightness correction for multi-angle video sequences (Multiview One-Step Affine Illumination Compensation - MOSAIC) [4, 5]. The specified method involves a combination of block correction of differences in brightness with the interframe prediction modes described in [2]. In the process of such coding, for each macroblock, the average pixel values of the current encoded block and the candidate reference block are calculated. For these blocks, modified blocks are formed by subtracting the average value for each pixel of the block. Then, for the obtained blocks, the Mean-Removed Sum of Absolute Difference (MRSAD) is calculated. The result of inter-frame prediction is the relative coordinates of the reference block (offset vector), which give the minimum value of the encoding, as well as the difference between the modified encoded block and the modified reference block. In this case, the calculation of the encoding cost is based on the calculated MRSAD value and an estimate of the bit cost of transmitting additional information necessary for subsequent decoding. In addition to the displacement vector, additional information includes the difference between the average values of the current and reference blocks. This difference is referred to as DVIC (Difference Value of Illumination Compensation) and is a brightness correction parameter. The DVIC value is differential encoded and placed in the output bitstream. It should be noted that in the case of the "P Skip" mode, the DVIC value is determined based on the DVIC values of neighboring macroblocks that were already encoded at the time of encoding the current macroblock. Thus, the above method does not completely eliminate the need for explicit transmission of additional information necessary for subsequent decoding.

Параметры, необходимые для коррекции различия яркости могут быть получены путем анализа восстановленных (закодированных, а затем декодированных) областей кадров. Это позволяет уменьшить количество дополнительной информации, которая должна быть закодирована в выходном битовом потоке. Указанный подход был реализован в способе взвешенного предсказания с использованием соседних пикселей (WPNP - Weighted Prediction using Neighboring Pixels) [6]. Этот способ использует значения пикселей кодируемого кадра, соседних с текущим кодируемым блоком, и значения пикселей опорного кадра, соседних с опорным блоком, для попиксельной оценки изменения яркости. При этом изменения яркости для выбираемых двух соседних пикселей умножаются на весовые коэффициенты и складываются, образуя оценку изменения яркости и контрастности между отдельными пикселями текущего и опорного блоков. Необходимо отметить, что весовые коэффициенты вычисляются отдельно для каждого положения пикселя кодируемого блока. Значения весовых коэффициентов определяются исходя из взаимного расстояния между пикселем кодируемого блока и выбранными соседними пикселями. На точность производимой оценки оказывает влияние то, что изменение яркости пикселей, соседних по отношению к кодируемому и опорному блокам, может отличаться от изменения яркости пикселей, принадлежащих непосредственно кодируемому и опорному блокам, а также то, что метод согласно [6], учитывает только взаимное пространственное положение пикселей, но не учитывает соотношения интенсивностей корректируемого пикселя и пикселя из окрестности.The parameters necessary for correcting the difference in brightness can be obtained by analyzing the reconstructed (encoded and then decoded) frame regions. This reduces the amount of additional information that must be encoded in the output bitstream. The indicated approach was implemented in the method of weighted prediction using neighboring pixels (WPNP - Weighted Prediction using Neighboring Pixels) [6]. This method uses the pixel values of the encoded frame adjacent to the current encoded block and the pixel values of the reference frame adjacent to the reference block for pixel-by-pixel estimation of brightness changes. In this case, the brightness changes for the selected two neighboring pixels are multiplied by weighting factors and added up, forming an estimate of the brightness and contrast changes between the individual pixels of the current and reference blocks. It should be noted that weights are calculated separately for each pixel position of the encoded block. The values of the weighting coefficients are determined based on the mutual distance between the pixel of the encoded block and the selected neighboring pixels. The accuracy of the estimation is influenced by the fact that a change in the brightness of pixels adjacent to the encoded and reference blocks may differ from a change in the brightness of pixels belonging directly to the encoded and reference blocks, and also that the method according to [6] takes into account only the mutual spatial position of pixels, but does not take into account the ratio of intensities of the adjusted pixel and the pixel from the neighborhood.

Другой вариант, реализующий подход, связанный с оценкой параметров изменения яркости и контрастности путем анализа восстановленных (закодированных, а затем декодированных) областей кадров, описан в патентной заявке США 2011/0286678 [7]. Описываемый в заявке способ кодирования многоракурсных видеопоследовательностей включает в себя коррекцию различия яркости в процессе кодирования с предсказанием. Параметры коррекции яркости оценивают исходя из оценки изменения яркости областей, соседних по отношению к кодируемому и опорному блокам областей. Так как указанные области доступны как на этапе кодирования, так и на этапе декодирования, отпадает необходимость явной передачи параметров коррекции в выходном битовом потоке. Получаемые параметры применяются для коррекции опорного блока. Надежность оценки параметров изменения яркости определяется путем коррекции яркости для области опорного кадра, смежной с опорным блоком, и сравнения полученной скорректированной области с восстановленной (закодированной и затем декодированной) областью кодируемого кадра, смежной с текущим кодируемым блоком. Недостаток указанного способа заключается в том, расчет параметров коррекции выполняется на основе всех пикселей выбранных смежных областей, при этом не предусматривается исключение из рассмотрения отдельных пикселей, которые могут негативно влиять на получаемые параметры коррекции, а лишь производится оценка надежности коррекции в целом, на основе которой затем принимается решение о том, имеет ли смысл выполнять коррекцию или нет. Это может приводить к исключению этапа коррекции в целом, либо к ошибочной коррекции, тем самым снижая эффективность межкадрового кодирования.Another option that implements the approach associated with assessing the parameters of changing the brightness and contrast by analyzing the reconstructed (encoded, and then decoded) areas of the frames is described in US patent application 2011/0286678 [7]. The encoding method for multi-angle video sequences described in the application includes the correction of the brightness difference in the prediction encoding process. The brightness correction parameters are estimated based on the assessment of changes in the brightness of areas adjacent to the coded and reference blocks of the areas. Since these areas are available both at the coding stage and at the decoding stage, there is no need to explicitly transmit correction parameters in the output bitstream. The resulting parameters are used to correct the reference block. The reliability of the estimation of brightness variation parameters is determined by adjusting the brightness for the region of the reference frame adjacent to the reference block, and comparing the obtained corrected region with the reconstructed (encoded and then decoded) region of the encoded frame adjacent to the current encoded block. The disadvantage of this method is that the calculation of the correction parameters is performed on the basis of all the pixels of the selected adjacent areas, while it does not exclude from consideration individual pixels that can adversely affect the obtained correction parameters, but only estimates the reliability of the correction as a whole, based on which then a decision is made on whether it makes sense to perform the correction or not. This can lead to the elimination of the correction stage as a whole, or to erroneous correction, thereby reducing the efficiency of inter-frame coding.

Наиболее близким к заявляемому изобретению является способ, описанный в патентной заявке США 2008/0304760 [8]. Указанный способ реализуется компьютерной системой и направлен на коррекции изменения яркости и контрастности для опорного блока. При этом данный способ включает в себя следующие этапы: получение восстановленных значений пикселей, соседних по отношению к текущему кодируемому блоку, и восстановленных значений пикселей, соседних по отношению к опорному блоку, в качестве входной информации; предсказание средних значений для текущего кодируемого и опорного блоков на основании восстановленных значений пикселей, соседних по отношению к текущему кодируемому блоку, и восстановленных значений пикселей, соседних по отношению к опорному блоку; определение параметров коррекции яркости для опорного блока на основе предсказанного среднего значения пикселей текущего кодируемого блока, предсказанного среднего значения опорного блока и значений пикселей текущего кодируемого блока и опорного блока; и выполнение коррекции яркости для опорного блока, используя ранее определенный параметр коррекции яркости.Closest to the claimed invention is the method described in US patent application 2008/0304760 [8]. The specified method is implemented by a computer system and is aimed at correcting changes in brightness and contrast for the reference block. Moreover, this method includes the following steps: obtaining the restored pixel values adjacent to the current block being encoded, and the restored pixel values adjacent to the reference block, as input information; predicting average values for the current encoded and reference blocks based on the restored pixel values adjacent to the current encoded block and the restored pixel values adjacent to the reference block; determining brightness correction parameters for the reference block based on the predicted average pixel value of the current encoded block, the predicted average value of the reference block and pixel values of the current encoded block and the reference block; and performing luminance correction for the reference block using a previously determined luminance correction parameter.

Недостаток прототипа [8] заключается в следующем. Восстановленные значения пикселей, соседних по отношению к текущему кодируемому блоку и опорному блоку, используются исключительно для предсказания средних значений. Это ограничение не позволяет использовать информацию, которая содержится в соседних пикселях. Кроме того, отсутствует анализ соотношений между значениями пикселей опорного блока и значениями пикселей, соседних по отношению к опорному блоку. Таким образом, не принимаются во внимание возможные различия в параметрах коррекции изменения яркости между рассматриваемыми блоками и областями, соседними по отношению к рассматриваемым блокам. Это может приводить к снижению надежности процедуры коррекции различия в яркости и контрастности, что негативным образом будет сказываться на эффективности кодирования. Помимо этого, способ не позволяет учесть наличие пикселей в смежных областях, значения которых в силу различных причин, например из-за внесенных искажений при сжатии с потерями, оказываются сильно отличающимися от общей совокупности пикселей в смежных областях. Ввиду этого точность финальной оценки параметров коррекции яркости может быть существенно снижена. Также недостатком прототипа является то, что параметры коррекции всегда передаются в выходном битовом потоке, что, в целом, может ухудшать эффективность компрессии.The disadvantage of the prototype [8] is as follows. The reconstructed values of pixels adjacent to the current encoded block and the reference block are used solely to predict average values. This restriction does not allow the use of information contained in neighboring pixels. In addition, there is no analysis of the relationship between the pixel values of the reference block and the values of pixels adjacent to the reference block. Thus, possible differences in the brightness correction correction parameters between the blocks under consideration and the regions adjacent to the blocks under consideration are not taken into account. This can lead to a decrease in the reliability of the procedure for correcting differences in brightness and contrast, which will negatively affect the encoding efficiency. In addition, the method does not allow to take into account the presence of pixels in adjacent areas, the values of which for various reasons, for example, due to introduced distortions during compression with losses, turn out to be very different from the total set of pixels in adjacent areas. In view of this, the accuracy of the final estimation of the brightness correction parameters can be significantly reduced. Another disadvantage of the prototype is that the correction parameters are always transmitted in the output bitstream, which, in general, can degrade the compression efficiency.

Задача, на решение которой направлено заявляемое изобретение, заключается в том, чтобы разработать реализуемый компьютерной системой способ, позволяющий повысить эффективность межкадрового предсказания при кодировании многоракурсной видеопоследовательности в сравнении с прототипом [8].The problem to which the claimed invention is directed is to develop a method implemented by a computer system that can improve the efficiency of inter-frame prediction when encoding a multi-angle video sequence in comparison with the prototype [8].

Технический результат достигается за счет разработки группы объединенных единым замыслом способов компьютерной обработки цифровых сигналов, основанных на усовершенствованном способе адаптивной локальной компенсации различий яркости между опорным блоком и текущим кодируемым блоком на основе пикселей из окрестностей опорного и кодируемого блоков, значения которых оцениваются как достоверные. При этом способ адаптивной локальной компенсации включает в себя выполнение следующих операций:The technical result is achieved by developing a group of methods for computer processing digital signals united by a single concept, based on an improved method of adaptive local compensation of brightness differences between the reference block and the current encoded block based on pixels from the neighborhoods of the reference and encoded blocks, the values of which are estimated as reliable. The method of adaptive local compensation includes the following operations:

- получают значения пикселей текущего кодируемого блока, принадлежащего кодируемому кадру, и значения пикселей опорного блока, принадлежащего опорному кадру;- get the pixel values of the current encoded block belonging to the encoded frame, and the pixel values of the reference block belonging to the reference frame;

- получают восстановленные (закодированные и затем декодированные) значения пикселей, соседних по отношению к текущему блоку кодируемого кадра, и значения пикселей, соседних по отношению к опорному блоку опорного кадра; при этом получаемые пиксели выбирают из одной или более пространственных областей, называемых также окрестностью, каждая из которых характеризуется наперед заданной пространственной близостью по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра; области, являющиеся смежными по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра, выбирают, исходя из типа и размера пространственного преобразования, применяемого впоследствии для кодирования остаточного сигнала, исходя из размеров уже закодированных соседних блоков, а также их логических связей с текущим кодируемым блоком;- receive the restored (encoded and then decoded) pixel values adjacent to the current block of the encoded frame, and pixel values adjacent to the reference block of the reference frame; wherein the resulting pixels are selected from one or more spatial areas, also called neighborhoods, each of which is characterized by a predetermined spatial proximity with respect to the current block of the encoded frame and the current reference block of the reference frame; areas that are adjacent to the current block of the encoded frame and the current reference block of the reference frame are selected based on the type and size of the spatial transform used subsequently to encode the residual signal, based on the sizes of neighboring blocks already encoded, as well as their logical connections with the current coded block;

- исключают из рассмотрения пиксели, принадлежащие как окрестности текущего кодируемого блока, так и окрестности опорного блока опорного кадра, которые оценивают как недостоверные для расчета параметров изменения яркости по заранее заданному, по меньшей мере, одному критерию;- exclude from consideration pixels belonging to both the vicinity of the current encoded block and the vicinity of the reference block of the reference frame, which are estimated as invalid for calculating the parameters of the brightness change according to a predetermined at least one criterion;

- определяют числовые соотношения между пикселями опорного блока, достоверными пикселями из окрестности текущего кодируемого блока и достоверными пикселями из окрестности опорного блока;- determine the numerical relationship between the pixels of the reference block, valid pixels from the vicinity of the current encoded block and reliable pixels from the neighborhood of the reference block;

- вычисляют значения параметров коррекции яркости на основе найденных числовых соотношений, учитывая начальные значения;- calculate the values of the brightness correction parameters based on the found numerical relationships, taking into account the initial values;

- оценивают изменения значений пикселей опорного блока; в случае, если изменение оценено как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.- evaluate changes in the pixel values of the reference block; if the change is estimated as significant, the correction of the pixel values of the reference block is performed using the found correction parameters.

В данном контексте под логическими связями понимаются определенные объективно существующие зависимости между текущим блоком и соседними блоками, задаваемые, например, методом кодирования. В этом случае подобной связью может быть объединение соседних блоков и текущего кодируемого блока вместе в единый элемент кодирования, для которого задан общий вектор смещения. Дополнительно рассчитывают оценку подобия совокупности пикселей, соседних по отношению к кодируемому блоку, и совокупности пикселей, соседних по отношению к опорному блоку. Значение рассчитанной оценки подобия пикселей может использоваться как дополнительное условие при принятии решения о целесообразности компенсации различий яркости пикселей опорного блока.In this context, logical relationships are understood as certain objectively existing dependencies between the current block and neighboring blocks, specified, for example, by the encoding method. In this case, such a connection can be the union of neighboring blocks and the current encoded block together into a single coding element for which a common displacement vector is specified. In addition, an estimate of the similarity of a plurality of pixels adjacent to the encoded block and a plurality of pixels adjacent to the reference block is calculated. The value of the calculated pixel similarity score can be used as an additional condition when deciding whether to compensate for differences in the brightness of the pixels of the reference block.

Таким образом, заявляемое изобретение заключается в применении более надежной процедуры оценки параметров компенсации различий яркости между опорным и кодируемым блоками, процедуры коррекции значений пикселей опорного блока, а также в использовании эффективного режима кодирования блока, основанного на малом наборе дополнительных служебных данных, необходимых для реализации. А более конкретно, существо заявляемого изобретения состоит в использовании большего количества данных для оценки параметров изменения яркости, а также учете существующих связей между значениями пикселей опорного блока, восстановленными значениями пикселей, соседних с опорным блоком, и восстановленными значениями пикселей, соседними с кодируемым блоком. Помимо этого, предусматривается использование критериев сходства областей для детектирования случаев, когда коррекция может быть малоэффективной, предложены новые способы выявления пикселей, сильно отличающихся от совокупности пикселей в смежных областях, на основе которых выполняется оценка параметров, а также предложены методы исключения сильно отличающихся значений пикселей из дальнейшего рассмотрения.Thus, the claimed invention consists in the application of a more reliable procedure for evaluating the compensation parameters for brightness differences between the reference and encoded blocks, the procedure for correcting the pixel values of the reference block, as well as in the use of an effective block encoding mode based on a small set of additional service data necessary for implementation. More specifically, the essence of the claimed invention consists in using more data to estimate the brightness variation parameters, as well as taking into account existing relationships between the pixel values of the reference block, the restored pixel values adjacent to the reference block, and the restored pixel values adjacent to the encoded block. In addition, it is planned to use the criteria for similarity of areas for detecting cases when the correction may be ineffective, new methods for identifying pixels that are very different from the set of pixels in adjacent areas, on the basis of which the parameters are estimated, and methods for eliminating very different pixel values from further consideration.

В частности, в одной из реализаций заявляемого способа проводится анализ соотношений между значениями пикселей опорного блока и значениями пикселей, соседних по отношению к опорному блоку, а также соотношений между восстановленными значениями пикселей, соседних по отношению к текущему кодируемому блоку, и значениями пикселей, соседних по отношению к опорному блоку.In particular, in one of the implementations of the proposed method, an analysis is made of the relationships between the pixel values of the reference block and the pixel values adjacent to the reference block, as well as the ratios between the restored pixel values adjacent to the current encoded block and pixel values adjacent to in relation to the support block.

При реализации способа также предусмотрено применение усовершенствованных способов кодирования и декодирования многоракурсных видеопоследовательностей, причем такие способы основаны на использовании компенсации яркости, что позволяет повысить эффективность сжатия благодаря тому, что при оценке изменения яркости используются значения пикселей, которые доступны как при кодировании, так и при декодировании. В этом случае параметры коррекции яркости могут быть точно восстановлены без необходимости передачи каких-либо дополнительных данных в выходном битовом потоке.When implementing the method, it is also envisaged to use improved methods of encoding and decoding multi-angle video sequences, and such methods are based on the use of brightness compensation, which allows to increase the compression efficiency due to the fact that when evaluating changes in brightness, pixel values are used that are available both for encoding and decoding . In this case, the brightness correction parameters can be accurately restored without the need to transmit any additional data in the output bitstream.

В другой реализации заявляемого способа при вычислении оценки параметров изменения яркости предлагается исключать из рассмотрения пиксели, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и взаимные отличия которых, рассчитанные численно, превышают отличия пикселей соответствующих смежных областей по заранее заданному критерию. Такие пиксели в дальнейшем обозначаются как недостоверные.In another implementation of the proposed method, when calculating an estimate of the brightness variation parameters, it is proposed to exclude from consideration pixels that belong to already decoded and reconstructed regions of the reference and encoded frames and whose mutual differences, calculated numerically, exceed the pixel differences of the corresponding adjacent regions according to a predetermined criterion. Such pixels are hereinafter referred to as invalid.

В одном из вариантов реализации заявляемого изобретения предлагается модификация упомянутого выше способа, заключающаяся в том, что процесс определения соотношений между пикселями текущего кодируемого кадра и опорного кадра, а также определения параметров коррекции яркости включает в себя выполнение следующих операций:In one embodiment of the claimed invention, a modification of the above method is proposed, which consists in the fact that the process of determining the relationship between the pixels of the current encoded frame and the reference frame, as well as determining the brightness correction parameters, includes the following operations:

- вычисляют статистические характеристики для восстановленных значений пикселей, соседних по отношению к текущему кодируемому блоку, статистических характеристик для пикселей опорного блока и статистических характеристик для пикселей, соседних по отношению к опорному блоку;- calculate the statistical characteristics for the restored values of pixels adjacent to the current encoded block, the statistical characteristics for the pixels of the reference block and the statistical characteristics for pixels adjacent to the reference block;

- определяют соотношения между статистическими характеристиками для пикселей опорного блока и статистическими характеристиками для восстановленных значений пикселей, соседних по отношению к опорному блоку;- determine the relationship between the statistical characteristics for the pixels of the reference block and the statistical characteristics for the restored values of pixels adjacent to the reference block;

- вычисляют оценку значения статистической характеристики для текущего кодируемого блока на основе вычисленных статистических характеристик и соотношений между ними производят:- calculate the value of the statistical characteristics for the current encoded block based on the calculated statistical characteristics and the relationships between them produce:

- определение параметра коррекции изменения яркости для компенсации различий яркости между опорным и текущим кодируемым блоками на основе найденной оценки статистической характеристики для текущего блока и статистической характеристики опорного блока.- determining a brightness correction correction parameter to compensate for brightness differences between the reference and the current encoded blocks based on the found estimate of the statistical characteristic for the current block and the statistical characteristic of the reference block.

Еще одна модификация заявляемого изобретения состоит в том, что способ коррекции яркости опорного блока в процессе кодирования многоракурсной видеопоследовательности, включает в себя:Another modification of the claimed invention is that the method for correcting the brightness of the reference block in the process of coding a multi-angle video sequence includes:

- получение значений пикселей текущего блока кодируемого кадра и значений пикселей опорного блока опорного кадра;- obtaining pixel values of the current block of the encoded frame and pixel values of the reference block of the reference frame;

- получение восстановленных (закодированных и затем декодированных) значений пикселей, соседних по отношению к текущему кодируемому блоку, и значений пикселей, соседних по отношению к опорному блоку;- obtaining restored (encoded and then decoded) pixel values adjacent to the current block being encoded, and pixel values adjacent to the reference block;

- вычисление первой оценки estDi,j для каждого положения (i, j) пикселя в опорном блоке; причем первая оценка estDi,j является линейной комбинацией восстановленных значений

Figure 00000001
пикселей, соседних по отношению к текущему кодируемому блоку, k=0, …, N-1, N - число пикселей, соседних по отношению к текущему кодируемому и опорному блокам;- calculating a first estimate estD i, j for each position (i, j) of the pixel in the reference block; moreover, the first estimate estD i, j is a linear combination of the restored values
Figure 00000001
pixels adjacent to the current encoded block, k = 0, ..., N-1, N is the number of pixels adjacent to the current encoded and reference blocks;

- вычисление второй оценки estRi,j для каждого положения (i, j) пикселя в опорном блоке; причем вторая оценка estRi,j является линейной комбинацией значений

Figure 00000002
пикселей, соседних по отношению к опорному блоку, k=0, …, N-1;- calculating a second estimate estR i, j for each position (i, j) of the pixel in the reference block; moreover, the second estimate estR i, j is a linear combination of values
Figure 00000002
pixels adjacent to the reference block, k = 0, ..., N-1;

- определение параметров коррекции изменения яркости для коррекции каждого пикселя в опорном блоке; при этом определение этих параметров основывается на значении первой оценки estDi,j значении второй оценки estRi,j, а также на значениях Ri,j пикселей опорного блока;- determination of the correction parameters of the brightness change for the correction of each pixel in the reference block; wherein the determination of these parameters is based on the value of the first estimate estD i, j, the value of the second estimate estR i, j , and also on the values of R i, j pixels of the reference block;

- выполнение коррекции изменения яркости для каждого пикселя в опорном блоке, используя найденные на предыдущем шаге параметры коррекции изменения яркости и контрастности.- performing correction of brightness changes for each pixel in the reference block, using the brightness and contrast correction parameters found in the previous step.

Согласно другой модификации заявляемого изобретения способ предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке и определение параметров коррекции изменения яркости для каждого положения пикселя в опорном блоке включает в себя:According to another modification of the claimed invention, the method provides that the calculation of the first and second estimates for each pixel position in the reference block and determination of brightness correction parameters for each pixel position in the reference block includes:

- вычисление первой оценки estDi,j как- calculation of the first estimate estD i, j as

Figure 00000003
,
Figure 00000003
,

- вычисление второй оценки estRi,j как- calculation of the second estimate estR i, j as

Figure 00000004
,
Figure 00000004
,

где Wk(i, j), k=0, …, N-1 - весовые коэффициенты, зависящие от интенсивности пикселя опорного блока в позиции (i, j) и интенсивности пикселя с индексом k=0, …, N-1 из заранее заданной близлежащей окрестности опорного блока,

Figure 00000001
, k=0, …, N-1, восстановленные значения пикселей, соседних по отношению к текущему кодируемому блоку,
Figure 00000005
, k=0, …, N-1 - значения пикселей, соседних по отношению к опорному блоку, N - это число пикселей, соседних по отношению к текущему кодируемому и опорному блокам; начальное значение BaseR для первой оценки и начальное значение BaseD для второй оценки заданы таким образом, что BaseR и BaseD либо оба неотрицательные, либо оба неположительные числа;where W k (i, j), k = 0, ..., N-1 - weighting coefficients depending on the intensity of the pixel of the reference block at position (i, j) and the intensity of the pixel with index k = 0, ..., N-1 from a predetermined nearby neighborhood of the support block,
Figure 00000001
, k = 0, ..., N-1, restored values of pixels adjacent to the current block being encoded,
Figure 00000005
, k = 0, ..., N-1 are the values of pixels adjacent to the reference block, N is the number of pixels adjacent to the current encoded and reference blocks; the initial BaseR value for the first evaluation and the initial BaseD value for the second evaluation are set such that BaseR and BaseD are either both non-negative or both non-positive numbers;

- определение параметров коррекции изменения яркости для каждого положения (i, j) пикселя в опорном блоке; этот параметр определяется как

Figure 00000006
, если вторая оценка estRi,j не равна нулю. В противном случае αi,j полагается равным 1;- determination of correction parameters for brightness changes for each position (i, j) of the pixel in the reference block; this parameter is defined as
Figure 00000006
if the second estimate estR i, j is not equal to zero. Otherwise, α i, j is set equal to 1;

- выполнение коррекции изменения яркости для опорного блока путем умножения значения каждого пикселя опорного блока Ri,j на соответствующий ему параметр коррекции αi,j.- performing correction of the brightness change for the reference block by multiplying the value of each pixel of the reference block R i, j by the corresponding correction parameter α i, j .

Также заявляемое изобретение предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке и определение параметров коррекции изменения яркости для каждого положения пикселя в опорном блоке включает в себя:The claimed invention also provides that the calculation of the first and second estimates for each pixel position in the reference block and determination of brightness correction parameters for each pixel position in the reference block includes:

- вычисление первой оценки estDl,j как- calculation of the first estimate estD l, j as

Figure 00000007
,
Figure 00000007
,

где Wk(i, j), k=0, …, N-1 и LK(i, j), k=0…N-1 - два набора весовых коэффициентов, LK(i, j), k=0…N-1 зависит от позиции (i, j) пикселя в опорном блоке и индекса k=0, …, N-1 и

Figure 00000001
, k=0, …, N-1 восстановленные значения пикселей, соседних по отношению к текущему кодируемому блоку, N - это число пикселей, соседних по отношению к текущему кодируемому и опорному блокам;where W k (i, j), k = 0, ..., N-1 and L K (i, j), k = 0 ... N-1 are two sets of weights, L K (i, j), k = 0 ... N-1 depends on the position (i, j) of the pixel in the reference block and the index k = 0, ..., N-1 and
Figure 00000001
, k = 0, ..., N-1 restored values of pixels adjacent to the current encoded block, N is the number of pixels adjacent to the current encoded and reference blocks;

- вычисление второй оценки как- calculation of the second estimate as

Figure 00000008
,
Figure 00000008
,

где Wk(i, j), k=0, …, N-1 и LK(i, j), k=0…N-1 - два набора весовых коэффициентов, LK(i, j),k=0…N-1 зависит от позиции (i, j) пикселя в опорном блоке и индекса k=0, …, N-1 и

Figure 00000009
, k=0, …, N-1 - значения пикселей, соседних по отношению к опорному блоку; начальное значение BaseR для первой оценки и начальное значение BaseD для второй оценки заданы таким образом, что BaseR и BaseD либо оба неотрицательные, либо оба неположительные числа;where W k (i, j), k = 0, ..., N-1 and L K (i, j), k = 0 ... N-1 are two sets of weights, L K (i, j), k = 0 ... N-1 depends on the position (i, j) of the pixel in the reference block and the index k = 0, ..., N-1 and
Figure 00000009
, k = 0, ..., N-1 are the values of pixels adjacent to the reference block; the initial BaseR value for the first evaluation and the initial BaseD value for the second evaluation are set such that BaseR and BaseD are either both non-negative or both non-positive numbers;

- определение параметров коррекции изменения яркости для каждого положения (i, j) пикселя в опорном блоке; этот параметр определяется как

Figure 00000006
, если вторая оценка estRi,j не равна нулю. В противном случае αi,j и полагается равным 1;- determination of correction parameters for brightness changes for each position (i, j) of the pixel in the reference block; this parameter is defined as
Figure 00000006
if the second estimate estR i, j is not equal to zero. Otherwise, α i, j and is set equal to 1;

- выполнение коррекции изменения яркости для опорного блока путем умножения значения каждого пикселя опорного блока Ri,j на соответствующий ему параметр коррекции αi,j.- performing correction of the brightness change for the reference block by multiplying the value of each pixel of the reference block R i, j by the corresponding correction parameter α i, j .

Еще одна модификация заявляемого изобретения предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя:Another modification of the claimed invention provides that the calculation of the first and second estimates for each pixel position in the reference block includes:

- вычисление весовых коэффициентов Wk(i, j) , k=0, …, N-1 для первой оценки estDi,j и второй оценки estRi,j; для каждого положения (i, j) пикселя в опорном блоке весовой коэффициент Wk(i, j) равен невозрастающей функции абсолютной разности:- calculation of weighting factors Wk(i, j) , k = 0, ...N-1 for the first estD scorei, j and second estR scorei, j; for each position (i, j) of the pixel in the reference block, the weight coefficient Wk(i, j) is equal to the non-increasing function of the absolute difference:

Figure 00000010
,
Figure 00000010
,

что обеспечивает обратно пропорциональное увеличение/уменьшение значения Wk(i, j) в зависимости от уменьшения/увеличения абсолютной разности. Здесь Ri,j - это значение пикселя опорного блока;

Figure 00000011
- значение пикселя, соседнего по отношению к опорному блоку; N - число пикселей, соседних по отношению к текущему кодируемому и опорному блокам.which provides an inversely proportional increase / decrease in the value of W k (i, j) depending on the decrease / increase in the absolute difference. Here R i, j is the pixel value of the reference block;
Figure 00000011
- value of a pixel adjacent to the reference block; N is the number of pixels adjacent to the current encoded and reference blocks.

Также другой вариант модификации заявляемого изобретения предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя:Also, another variant of the modification of the claimed invention provides that the calculation of the first and second estimates for each position of the pixel in the reference block includes:

- вычисление весовых коэффициентов LK(i, j), k=0, …, N-1 для первой оценки и второй оценки для каждого положения (i, j) пикселя в опорном блоке так, что весовой коэффициент LK(i, j) равен невозрастающей функции f расстояния между пикселями

Figure 00000012
: - calculation of the weighting coefficients L K (i, j), k = 0, ..., N-1 for the first estimate and the second estimate for each position (i, j) of the pixel in the reference block so that the weighting coefficient L K (i, j ) is equal to the non-increasing function f of the distance between pixels
Figure 00000012
:

Figure 00000013
Figure 00000013

что обеспечивает обратно пропорциональное увеличение/уменьшение значения LK(i, j) в зависимости от приближения или удаления пикселя

Figure 00000011
от корректируемого пикселя Ri,j. Здесь это значение пикселя опорного блока;
Figure 00000011
- значение пикселя, соседнего по отношению к опорному блоку; N - число пикселей, соседних по отношению к текущему кодируемому и опорному блокам.which provides an inversely proportional increase / decrease in the value of L K (i, j) depending on the approximation or removal of a pixel
Figure 00000011
from the corrected pixel R i, j . Here is the pixel value of the reference block;
Figure 00000011
- value of a pixel adjacent to the reference block; N is the number of pixels adjacent to the current encoded and reference blocks.

В другом варианте реализации заявляемого изобретения предлагается модификация упомянутого выше метода, которая предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя:In another embodiment of the claimed invention, a modification of the above method is proposed, which provides that the calculation of the first and second estimates for each pixel position in the reference block includes:

- вычисление весовых коэффициентов LK(i, j), k=0, …, N-1 для первой оценки estDi,j и второй оценки estRi,j; для каждого положения (i, j) пикселя в опорном блоке весовой коэффициент равен невозрастающей функции абсолютной разности:- calculation of weight coefficients L K (i, j), k = 0, ..., N-1 for the first estimate estD i, j and the second estimate estR i, j ; for each position (i, j) of the pixel in the reference block, the weight coefficient is equal to a non-increasing function of the absolute difference:

Figure 00000010
,
Figure 00000010
,

что обеспечивает обратно пропорциональное увеличение/уменьшение значения Wk(i, j) в зависимости от уменьшения/увеличения абсолютной разности в случае

Figure 00000014
, где Thr - предопределенное пороговое значение; иначе wk(i, j). Здесь Ri,j - значение пикселя опорного блока;
Figure 00000011
- значение пикселя, соседнего по отношению к опорному блоку; N - число пикселей, соседних по отношению к текущему кодируемому и опорному блокам.which provides an inversely proportional increase / decrease in the value of W k (i, j) depending on the decrease / increase in the absolute difference in the case
Figure 00000014
where Thr is a predetermined threshold value; otherwise w k (i, j). Here R i, j is the pixel value of the reference block;
Figure 00000011
- value of a pixel adjacent to the reference block; N is the number of pixels adjacent to the current encoded and reference blocks.

При реализации заявляемого изобретения имеет смысл применить еще одну модификацию упомянутого выше метода, которая предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя:When implementing the claimed invention, it makes sense to apply another modification of the above method, which provides that the calculation of the first and second estimates for each pixel position in the reference block includes:

- вычисление весовых коэффициентов Wk(i, j), k=0, …, N-1 для первой оценки estDi,j и второй оценки estRi,j; для каждого положения (i, j) пикселя в опорном блоке весовой коэффициент Wk(i, j) равен невозрастающей функции абсолютной разности:- calculation of weighting factors W k (i, j), k = 0, ..., N-1 for the first estimate estD i, j and the second estimate estR i, j ; for each position (i, j) of the pixel in the reference block, the weight coefficient W k (i, j) is equal to a non-increasing function of the absolute difference:

Figure 00000010
,
Figure 00000010
,

что обеспечивает обратно пропорциональное увеличение/уменьшение значения Wk(i, j) в зависимости от уменьшения/увеличения абсолютной разности; при этом вычисление весовых коэффициентов подобным образом производится только для пикселей

Figure 00000015
и
Figure 00000011
, которые оценены как надежные путем проверки условия
Figure 00000016
, где
Figure 00000017
- значение пикселя, соседнего по отношению к текущему кодируемому блоку, Thr1 - первый предопределенный порог; кроме того, вычисление весовых коэффициентов подобным образом выполняется, если
Figure 00000018
, где thr2 - второй предопределенный порог; иначе Wk(i, j)=0. Здесь Ri,j - значение пикселя опорного блока;
Figure 00000011
- значение пикселя, соседнего по отношению к опорному блоку; N - число пикселей, соседних по отношению к текущему кодируемому и опорному блокам.which provides an inversely proportional increase / decrease in the value of W k (i, j) depending on the decrease / increase in the absolute difference; however, the calculation of weights in a similar way is done only for pixels
Figure 00000015
and
Figure 00000011
that are rated as reliable by checking the conditions
Figure 00000016
where
Figure 00000017
- the value of a pixel adjacent to the current encoded block, Thr1 is the first predetermined threshold; in addition, the calculation of weights in a similar manner is performed if
Figure 00000018
where thr2 is the second predetermined threshold; otherwise, W k (i, j) = 0. Here R i, j is the pixel value of the reference block;
Figure 00000011
- value of a pixel adjacent to the reference block; N is the number of pixels adjacent to the current encoded and reference blocks.

Согласно другому варианту реализации заявляемого изобретения предлагается модификация упомянутого выше метода, которая предусматривает, что вычисление первой и второй оценки для каждого положения пикселя в опорном блоке включает в себя:According to another embodiment of the claimed invention, a modification of the above method is proposed, which provides that the calculation of the first and second estimates for each pixel position in the reference block includes:

- вычисление весовых коэффициентов Wk(i, j), k=0, …, N-1 для первой оценки estDi,j и второй оценки estRi,j; для каждого положения пикселя в опорном блоке весовой коэффициент Wk(i, j) определяется как:

Figure 00000019
, где С1, С2, С3 - численные параметры, задающие нелинейную зависимость весового коэффициента от величины Ak(i, j) и Ak(i, j), где определяется как
Figure 00000020
, Ri,j - значение пикселя опорного блока,
Figure 00000011
- значение пикселя, соседнего по отношению к опорному блоку, в случае
Figure 00000014
, где Thr - предопределенный порог; иначе Wk(i, j)=0.- calculation of weighting factors W k (i, j), k = 0, ..., N-1 for the first estimate estD i, j and the second estimate estR i, j ; for each pixel position in the reference block, the weight coefficient W k (i, j) is defined as:
Figure 00000019
, where C1, C2, C3 are numerical parameters defining a nonlinear dependence of the weight coefficient on the quantities A k (i, j) and A k (i, j), where it is defined as
Figure 00000020
, R i, j is the pixel value of the reference block,
Figure 00000011
is the value of a pixel adjacent to the reference block, in the case
Figure 00000014
where Thr is a predetermined threshold; otherwise, W k (i, j) = 0.

Дальнейшее развитие предлагаемого варианта заявляемого изобретения заключается в том, что параметры, определяющие зависимость весовых коэффициентов Wk(i, j), в частности параметры С1, С2 и C3 могут адаптивно изменяться в зависимости от расстояния между пикселем Ri,j в опорном блоке и пикселями

Figure 00000011
, соседними по отношению к опорному блоку. Тем самым может быть учитывается различное влияние пикселей, соседних с текущим блоком и соседних с опорным блоком, и участвующих в вычислении параметров коррекции в зависимости от расстояния до корректируемого пикселя.A further development of the proposed variant of the claimed invention lies in the fact that the parameters determining the dependence of the weight coefficients W k (i, j), in particular, the parameters C1, C2 and C3 can adaptively vary depending on the distance between the pixel R i, j in the reference block and pixels
Figure 00000011
adjacent to the support block. Thus, the different influence of pixels adjacent to the current block and neighboring to the reference block and participating in the calculation of correction parameters depending on the distance to the pixel being corrected can be taken into account.

В качестве альтернативы при реализации заявляемого изобретения предлагается модификация упомянутого выше метода, которая предусматривает, что вычисление первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя:As an alternative to the implementation of the claimed invention, a modification of the above method is proposed, which provides that the calculation of the first and second estimates for each pixel position in the reference block includes:

- вычисление весовых коэффициентов Wk(i, j), k=0, …, N-1 для первой оценки estDi,j и второй оценки estRi,j, для каждого положения Wk(i, j) пикселя в опорном блоке весовой коэффициент wk(i, j) равен

Figure 00000019
, где C1, C2, C3 - численные параметры, задающие нелинейную зависимость весового коэффициента от величины Ak(i, j), которая определяется как
Figure 00000020
, где Ri,j - значение пикселя опорного блока,
Figure 00000011
- значение пикселя, соседнего по отношению к опорному блоку, а вычисление весовых коэффициентов подобным образом производится только для пикселей
Figure 00000021
и
Figure 00000022
, которые оценены как надежные путем проверки условия
Figure 00000016
, где
Figure 00000023
, k=0,…, N-1 - значение пикселя, соседнего по отношению к текущему кодируемому блоку, rhr1 - первый предопределенный порог; кроме того, вычисление весовых коэффициентов подобным образом выполняется, если
Figure 00000024
, где Thr-2 - второй предопределенный порог; иначе Wk(i, j)=0.- calculation of weight coefficients W k (i, j), k = 0, ..., N-1 for the first estimate estD i, j and the second estimate estR i, j , for each position W k (i, j) of the pixel in the reference block weight coefficient w k (i, j) is equal to
Figure 00000019
, where C1, C2, C3 are numerical parameters defining a nonlinear dependence of the weight coefficient on the quantity A k (i, j), which is defined as
Figure 00000020
Where R i, j - pixel value of the reference block,
Figure 00000011
- the value of a pixel adjacent to the reference block, and the calculation of weighting coefficients in this way is performed only for pixels
Figure 00000021
and
Figure 00000022
that are rated as reliable by checking the conditions
Figure 00000016
where
Figure 00000023
, k = 0, ..., N-1 is the value of a pixel adjacent to the current block being encoded, rhr1 is the first predetermined threshold; in addition, the calculation of weights in a similar manner is performed if
Figure 00000024
where Thr-2 is the second predetermined threshold; otherwise, W k (i, j) = 0.

Заявляемое изобретение предусматривает реализацию метода, при которой для уменьшения вычислительных затрат, связанных с компенсаций пикселей опорного блока для выявления случая, когда первая оценка estDi,j и вторая оценка estRi,j таковы, что параметр коррекции αi,j близок к 1, выполняется проверка условия: EstRi,j+Δ1>>Qbits1==EstDi,j+Δ1>>Qbits1, где Qbits1 и Δ1 - неотрицательные целые числа, а   обозначает операцию целочисленного округления, и если условие верно, то параметр коррекции задается равным 1.The claimed invention provides for the implementation of a method in which to reduce the computational cost associated with the compensation of the pixels of the reference block to identify cases when the first estimate estDi, j and second estR scorei, j such that the correction parameter αi, j close to 1, the condition is checked: EstRi, j+ Δ1 >> Qbitsone== EstDi, j+ Δ1 >> Qbitsonewhere Qbitsone and Δ1 are non-negative integers, and   denotes the operation of integer rounding, and if the condition is true, then the correction parameter is set to 1.

Для повышения точности метода компенсации локальных отличий яркости, при котором достигается снижение вычислительных затрат, связанных с компенсаций пикселей опорного блока в случае, если первая оценка estDi,j и вторая оценка estRi,j таковы, что параметр коррекции αi,j близок к 1, может выполняться проверка условия (|EstDi,j-EstRi,j|+Δ2>>Qbits2==0, где Obits2 и Δ2 - неотрицательные целые числа, а   обозначает операцию целочисленного округления, и если условие верно, то параметр коррекции задается равным 1. Также имеет смысл рассмотреть и более общий критерий, позволяющий определять ситуацию близости параметра коррекции к 1, который подразумевает проверку следующего неравенства: Δ3×EstRi,j<EstDi,j<Δ4×EstRi,j, где Δ3, Δ4 - заранее заданные неотрицательные числа, и в случае его выполнения задание параметра коррекции равным 1.To improve the accuracy of the method of compensating for local differences in brightness, at which the computational costs associated with pixel compensation of the reference block are reduced in case the first estimate is estDi, j and second estR scorei, j such that the correction parameter αi, j close to 1, the condition can be checked ( | EstDi, j-EstRi, j|  + Δ2 >> Qbits2== 0, where Obits2 and Δ2 are non-negative integers, and   denotes the operation of integer rounding, and if the condition is true, then the correction parameter is set to 1. It also makes sense to consider a more general criterion that allows us to determine the situation where the correction parameter is close to 1, which implies checking the following inequality: Δ3 × EstRi, j<EstDi, j<Δ4 × EstRi, j, where Δ3, Δ4 are predefined non-negative numbers, and in case of its execution, the correction parameter is set to 1.

Заявляемое изобретение также предусматривает оценку подобия восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком для принятия возможного решения о применении коррекции в случае сильного подобия. В частности, для оценки подобия восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком, заявляемое изобретение предусматривает:The invention also provides an assessment of the similarity of the restored pixels adjacent to the reference block, and the restored pixels adjacent to the encoded block to make a possible decision on the application of correction in the case of strong similarity. In particular, to assess the similarity of the restored pixels adjacent to the reference block, and the restored pixels adjacent to the encoded block, the claimed invention provides:

- все уже восстановленные пиксели

Figure 00000011
, соседние с опорным блоком, и все уже восстановленные пиксели
Figure 00000025
, k=0, …, N-1, соседние с кодируемым блоком, образуя совместно пары
Figure 00000026
, однозначно задаваемые пространственным положением пикселей
Figure 00000011
и
Figure 00000025
, k=0, …, N-1 в соответствующих областях, которое определяется значением номера пикселя k, группируются в М непересекающихся групп G0…GM-1, таких что пара
Figure 00000027
, k=0…N-1∈{G0∩…G1∩…∩GM-1}. Пары пикселей, принадлежащих группе Gi, обозначаются так же, как
Figure 00000028
;- all pixels already recovered
Figure 00000011
adjacent to the reference block, and all pixels already restored
Figure 00000025
, k = 0, ..., N-1, adjacent to the encoded block, forming together pairs
Figure 00000026
uniquely determined by the spatial position of the pixels
Figure 00000011
 and
Figure 00000025
, k = 0, ..., N-1 in the corresponding areas, which is determined by the value of the pixel number k, are grouped in M disjoint groups G0 ... GM-1, such that the pair
Figure 00000027
, k = 0 ... N-1∈ {G0∩ ... Gone∩ ... ∩GM-1}. Pairs of pixels belonging to the group Gi are denoted in the same way as
Figure 00000028
;

- для каждой группы Gi рассчитывается метрика, которая основана на учете различий между

Figure 00000029
и
Figure 00000030
и которая не зависит от различий средних значений всех пикселей
Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi;- for each group Gi, a metric is calculated that is based on taking into account the differences between
Figure 00000029
 and
Figure 00000030
 and which does not depend on differences in the average values of all pixels
Figure 00000029
 and average values of all pixels
Figure 00000030
 each group Gi;

- для каждой группы Gi рассчитывается метрика, основанная на различиях средних значений всех пикселей

Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi;- for each group Gi, a metric is calculated based on differences in the average values of all pixels
Figure 00000029
and average values of all pixels
Figure 00000030
each group Gi;

- рассчитывается общая метрика, обозначаемая MR_Norm, для групп G0…GM-1, которая основана на учете пиксельных различий пикселей

Figure 00000029
и
Figure 00000030
по каждой из групп и которая не зависит от различий средних значений всех пикселей
Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi;- the general metric, denoted by MR_Norm, is calculated for the groups G0 ... GM-1, which is based on the consideration of pixel differences in pixels
Figure 00000029
 and
Figure 00000030
 for each of the groups and which does not depend on differences in the average values of all pixels
Figure 00000029
 and average values of all pixels
Figure 00000030
 each group Gi;

- рассчитывается общая метрика, обозначаемая М_Norm, для групп G0…GM-1, которая основана на учете различия средних значений всех пикселей

Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi;- the general metric, denoted by M_Norm, is calculated for groups G0 ... GM-1, which is based on the difference in the average values of all pixels
Figure 00000029
and average values of all pixels
Figure 00000030
each group Gi;

- производится сравнение значений рассчитанных метрик MR_Norm и M_Norm с наперед заданными пороговыми значениями, и в случае если MR_Norm больше первого заданного порогового значения или M_Norm меньше второго заданного порогового значения, подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком считается слабым; в противном случае подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком считается сильным;- the values of the calculated MR_Norm and M_Norm metrics are compared with the predetermined threshold values, and if MR_Norm is greater than the first specified threshold value or M_Norm is less than the second specified threshold value, the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block considered weak; otherwise, the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is considered strong;

- если подобие восстановленных пикселей, соседних с опорным блоком и восстановленных пикселей, соседних с кодируемым блоком слабое, коррекция может не применяться;- if the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is weak, correction may not be applied;

- если подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком сильное, коррекция выполняется безусловно.- if the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is strong, the correction is performed unconditionally.

Дальнейшее развитие метода предусматривает следующее:Further development of the method provides for the following:

- для каждой группы Gi рассчитывается метрика MR_Norn(Gl), которая основана на учете пиксельных различий

Figure 00000029
и
Figure 00000030
и которая не зависит от различий средних значений всех пикселей
Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi по формуле: - for each group Gi, the metric MR_Norn (Gl), which is based on pixel differences
Figure 00000029
 and
Figure 00000030
 and which does not depend on differences in the average values of all pixels
Figure 00000029
 and average values of all pixels
Figure 00000030
 each Gi group according to the formula:

Figure 00000031
,
Figure 00000031
,

где значение степенного показателя Р1 определяется экспериментально;where the value of the power exponent P1 is determined experimentally;

- для каждой группы Gi рассчитывается метрика М_NormGl, основанная на различиях средних значений всех пикселей

Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi по формуле:- for each group Gi, the metric M_NormG l is calculated, based on the differences in the average values of all pixels
Figure 00000029
and average values of all pixels
Figure 00000030
each Gi group according to the formula:

Figure 00000032
,
Figure 00000032
,

где значение степенного показателя P2 определяется экспериментально;where the value of the power exponent P2 is determined experimentally;

рассчитывается общая метрика, обозначаемая MR_Norm, для групп G0…GM-1, которая основана на учете пиксельных различий пикселей

Figure 00000029
и
Figure 00000030
по каждой из групп за исключением различий средних значений всех пикселей
Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi по формуле:the general metric, denoted by MR_Norm, is calculated for groups G0 ... GM-1, which is based on the consideration of pixel differences
Figure 00000029
 and
Figure 00000030
 for each of the groups, with the exception of differences in the average values of all pixels
Figure 00000029
 and average values of all pixels
Figure 00000030
 each Gi group according to the formula:

Figure 00000033
;
Figure 00000033
;

рассчитывается общая метрика, обозначаемая М_Norm, для групп G0…GM-1, которая основана на учете различия средних значений всех пикселей

Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi по формуле:the general metric, denoted by M_Norm, is calculated for groups G0 ... GM-1, which is based on the difference in the average values of all pixels
Figure 00000029
and average values of all pixels
Figure 00000030
each Gi group according to the formula:

Figure 00000034
;
Figure 00000034
;

- производится сравнение значений рассчитанных метрик MR_Norm и M_Norm с наперед заданными пороговыми значениями, и в случае если MR_Norm больше первого заданного порогового значения или M_Norm меньше второго заданного порогового значения, подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком считается слабым; в противном случае подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком считается сильным;- the values of the calculated MR_Norm and M_Norm metrics are compared with the predetermined threshold values, and if MR_Norm is greater than the first specified threshold value or M_Norm is less than the second specified threshold value, the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block considered weak; otherwise, the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is considered strong;

- если подобие восстановленных пикселей, соседних с опорным блоком и восстановленных пикселей, соседних с кодируемым блоком слабое, коррекция может не применятся;- if the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is weak, the correction may not be applied;

- если подобие восстановленных пикселей, соседних с опорным блоком и восстановленных пикселей, соседних с кодируемым блоком сильное, коррекция применяется обязательно.- if the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is strong, correction is required.

Для повышения точности оценки отличия яркости пикселей опорного блока в сравнении с кодируемым блоком, заявляемое изобретение предусматривает, что для исключения из расчетов значений полученных пикселей

Figure 00000035
и
Figure 00000036
, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые существенно отличаются друг от друга, для каждого k=0…N-1 выполняют проверку условия
Figure 00000016
, где Thr1 неотрицательное пороговое значение, задаваемое наперед.To improve the accuracy of assessing differences in the brightness of the pixels of the reference block in comparison with the encoded block, the claimed invention provides that to exclude from the calculation the values of the received pixels
Figure 00000035
and
Figure 00000036
which belong to the already decoded and reconstructed regions of the reference and encoded frames and which differ significantly from each other, for each k = 0 ... N-1, they check the condition
Figure 00000016
where Thr1 is a non-negative threshold value set in advance.

Развитие метода предполагает, что для дальнейшего повышения точности оценки отличия яркости пикселей опорного блока в сравнении с кодируемым блоком, заявляемое изобретение предусматривает, что для исключения из расчетов значений полученных пикселей

Figure 00000035
и
Figure 00000037
, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые существенно отличаются от общей выборки (совокупности) пикселей в указанных областях выполняют следующие шаги:The development of the method suggests that in order to further improve the accuracy of assessing the differences in the brightness of the pixels of the reference block in comparison with the encoded block, the claimed invention provides that, to exclude the values of the obtained pixels from the calculations
Figure 00000035
and
Figure 00000037
which belong to the already decoded and reconstructed areas of the reference and encoded frames and which differ significantly from the total sample (set) of pixels in these areas perform the following steps:

- группируют пиксели

Figure 00000038
таким образом, что для всех пикселей
Figure 00000035
, удовлетворяющих условию
Figure 00000039
и
Figure 00000040
, пиксели
Figure 00000037
, которые соответствуют пикселям
Figure 00000035
исходя из их порядкового номера k=0…N-1 и пространственного положения в опорном и кодируемом кадрах, группируются в группы, обозначаемые B(LRi, LRi+1):- group pixels
Figure 00000038
such that for all pixels
Figure 00000035
satisfying the condition
Figure 00000039
and
Figure 00000040
pixels
Figure 00000037
that match the pixels
Figure 00000035
based on their serial number k = 0 ... N-1 and the spatial position in the reference and encoded frames, are grouped into groups denoted by B (LR i , LR i + 1 ):

Figure 00000041
,
Figure 00000041
,

- при этом величины LRi, LRi+1 определяют границы диапазона, задающего группу B(LRi, LRi+1) и удовлетворяют условию LRi>-1; LRi+1>Ri. Количество групп B(LRi, LRi+1) NB определяется экспериментально и задает максимально возможное значение индекса i, используемого при нумерации величин (LRi, LRi+1): -1<LR0<LR0<LR0…<LRNB;- in this case, the values LR i , LR i + 1 determine the boundaries of the range defining the group B (LR i , LR i + 1 ) and satisfy the condition LR i >-1; LR i + 1 > R i . The number of groups B (LR i , LR i + 1 ) N B is determined experimentally and sets the maximum possible value of the index i used for numbering the quantities (LR i , LR i + 1 ): -1 <LR 0 <LR 0 <LR 0 ... <LR NB ;

- для каждой группы B(LRi, LRi+1), задаваемой величинами (LRi, LRi+1), рассчитывают следующие величины:- for each group B (LR i , LR i + 1 ) defined by the values (LR i , LR i + 1 ), the following values are calculated:

Figure 00000042
Figure 00000042

Figure 00000043
Figure 00000043

- для каждого пикселя

Figure 00000044
группы B(LRi, LRi+1) проверяют верность следующих трех условий:- for each pixel
Figure 00000044
 Group B (LRi, LRi + 1) verify the following three conditions:

- Условие 1:- Condition 1:

Figure 00000045
;
Figure 00000045
;

- Условие 2:- Condition 2:

Figure 00000046
;
Figure 00000046
;

- Условие 3:- Condition 3:

Figure 00000047
; в том случае, если верным является хотя бы одно из проверяемых условий 1…3 для очередного рассматриваемого пикселя
Figure 00000048
группы B(LRi, LRi+1), рассматриваемый пиксель
Figure 00000049
включается в дальнейшие расчеты параметров коррекции яркости опорного блока.
Figure 00000047
; in the event that at least one of the checked conditions 1 ... 3 is true for the next pixel in question
Figure 00000048
group B (LR i , LR i + 1 ), the pixel in question
Figure 00000049
included in further calculations of the brightness correction parameters of the reference block.

Еще одним вариантом реализации заявляемого изобретения, направленным на повышение точности оценки отличия яркости пикселей опорного блока в сравнении с кодируемым блоком, является следующая модификация.Another embodiment of the claimed invention, aimed at improving the accuracy of assessing differences in the brightness of the pixels of the reference block in comparison with the encoded block, is the following modification.

Для всех вышеопределенных пар пикселей

Figure 00000050
рассматриваются пиксели
Figure 00000051
, так что
Figure 00000052
и
Figure 00000053
и соответствующие им пиксели
Figure 00000054
сгруппируются в логические группы, обозначаемые B(LRi, LRi+1).For all the above pixel pairs
Figure 00000050
pixels are considered
Figure 00000051
, so that
Figure 00000052
and
Figure 00000053
and their corresponding pixels
Figure 00000054
are grouped into logical groups denoted by B (LR i , LR i + 1 ).

Figure 00000041
,
Figure 00000041
,

где LRi, LRi+1 определяют границы диапазона, задающего группу B(LRi, LRi+1) и удовлетворяют условию LRf>-1; LRi+1>Ri. Количество групп B(LRi, LRi+1) Nb определяется экспериментально и задает максимально возможное значение индекса i, используемого при нумерации величин (LRi, LRi+1): -1<LR0<LRo<LR0…<LRNB.where LR i , LR i + 1 determine the boundaries of the range defining the group B (LR i , LR i + 1 ) and satisfy the condition LRf>-1; LR i + 1 > R i . The number of groups B (LR i , LR i + 1 ) Nb is determined experimentally and sets the maximum possible value of the index i used for numbering the quantities (LR i , LR i + 1 ): -1 <LR 0 <LRo <LR 0 ... <LR NB .

Для всех пикселей Тк, принадлежащих B(LRi, LRi+1), рассчитываются следующие величины:For all pixels T k belonging to B (LR i , LR i + 1 ), the following values are calculated:

- среднее значение Mean (B(LRi, LRi+1)) по группе B(LRi, LRi+1), определяемо по формуле:- the average value of Mean (B (LR i , LR i + 1 )) for group B (LR i , LR i + 1 ), determined by the formula:

Figure 00000055
,
Figure 00000055
,

где | B(LRi, LRi+1)| обозначает количество пикселей в группе B(LRi, LRi+1).where | B (LRi, LRi + 1) | indicates the number of pixels in group B (LRi, LRi + 1)

- медианное значение Med(B(LRi, LRi+1)) по группе B(LRi, LRi+1), определяемое как такое значение пикселя, принадлежащего группе B(LRi, LRi+1), что количество пикселей, принадлежащих группе B(LRi, LRi+1) и не превышающих по своему значению определяемое медианное значение, равно количеству пикселей, принадлежащих группе B(LRi, LRi+1), которые не меньше определяемого медианного значения группы B(LRi, LRi+1);is the median value of Med (B (LR i , LR i + 1 )) for group B (LR i , LR i + 1 ), defined as the value of a pixel belonging to group B (LR i , LR i + 1 ) such that the number pixels belonging to group B (LR i , LR i + 1 ) and not exceeding the determined median value in terms of value is equal to the number of pixels belonging to group B (LR i , LR i + 1 ) that are not less than the determined median value of group B ( LR i , LR i + 1 );

- наиболее вероятное значение Mod(B(LRi, LRi+1))в группе B(LRi, LRi+1);- the most likely value of Mod (B (LR i , LR i + 1 )) in group B (LR i , LR i + 1 );

- среднее отклонение Dev(B(LRi, LRi+1)) значений пикселей в группе B(LRi, LRi+1), которое может быть рассчитано по одной из широко известных формул, позволяющих оценить параметры разброса значений пикселей в группе B(LRi, LRi+1), например в одном из вариантов, величина Dev(B(LRi, LRi+1)) может быть рассчитана по формуле:- the average deviation Dev (B (LR i , LR i + 1 )) of pixel values in group B (LR i , LR i + 1 ), which can be calculated using one of the well-known formulas that allow us to estimate the parameters of the spread of pixel values in the group B (LR i , LR i + 1 ), for example, in one of the options, the value Dev (B (LR i , LR i + 1 )) can be calculated by the formula:

Figure 00000056
,
Figure 00000056
,

где |B(LRi, LRi+1)| обозначает количество пикселей в логической группе B(LRi, LRi+1); в другой реализации величина Dev(B(LRi, LRi+1)) может быть рассчитана по формуле:where | B (LR i , LR i + 1 ) | denotes the number of pixels in logical group B (LR i , LR i + 1 ); in another implementation, the value Dev (B (LR i , LR i + 1 )) can be calculated by the formula:

Figure 00000057
,
Figure 00000057
,

отличающейся от предыдущей тем, что оценка отклонения получается несмещенной, что особенно важно для случая сравнительно небольшого количества элементов в группе B(LRi, LRi+1); также в целях упрощения может быть применена следующая формула для оценки величины среднего отклонения по группе B(LRi, LRi+1):different from the previous one in that the deviation estimate is unbiased, which is especially important for the case of a relatively small number of elements in group B (LR i , LR i + 1 ); also, for the sake of simplification, the following formula can be applied to estimate the average deviation for group B (LR i , LR i + 1 ):

Figure 00000058
.
Figure 00000058
.

Эксперты могут также использовать иные способы оценки величины Dev(B(LRi, LRj)), характеризующей, по сути, степень разброса пикселей, принадлежащих группе B(LRi, LRi+1).Experts can also use other methods of estimating the value of Dev (B (LR i , LR j )), which characterizes, in essence, the degree of spread of pixels belonging to group B (LR i , LR i + 1 ).

Для повышения надежности дальнейших оценок предусматривается исключение из дальнейшего рассмотрения тех значений пикселей группы B(LRi, LRj), для которых модуль разности между значением отдельного пикселя и средним значением по группе B(LRi, LRj) и/или медианным значением по группе B(LRi, LRj) и/или наиболее вероятным значением по группе B(LRi, LRj) оказывается больше, чем значение Dev(B(LRi, LRj)), рассчитанное по одной из широко известных формул, умноженное на величину, большую 0, задающее совместно допустимый разброс в группе B(LRi, LRj).To increase the reliability of further estimates, it is intended to exclude from further consideration those pixel values of group B (LR i , LR j ) for which the absolute value of the difference between the value of an individual pixel and the average value of group B (LR i , LR j ) and / or the median value of group B (LR i , LR j ) and / or the most probable value for group B (LR i , LR j ) is greater than the value Dev (B (LR i , LR j )) calculated according to one of the well-known formulas, multiplied by a value greater than 0, which defines the jointly permissible spread in group B (LR i , LR j ).

Согласно другому варианту реализации заявляемого изобретения предлагается модификация упомянутого выше метода, в которой предусматривается, что позиции восстановленных значений пикселей, соседних по отношению к текущему кодируемому блоку, и позиции значений пикселей, соседних по отношению к опорному блоку определяются адаптивно вместо соответствующих пикселей с наперед заданными позициями.According to another embodiment of the claimed invention, a modification of the aforementioned method is proposed in which it is provided that the positions of the restored pixel values adjacent to the current encoded block and the positions of the pixel values adjacent to the reference block are adaptively determined instead of the corresponding pixels with the predetermined positions .

Согласно другому варианту реализации заявляемого изобретения, предлагается модификация упомянутого выше метода, в которой предусматривается, что при получении восстановленных значений пикселей из окрестностей текущего и опорного блоков выполняют прореживание по заранее заданному шаблону. Под шаблоном подразумевается множество пространственных позиций пикселей, которые определяются по заданным правилам внутри окрестностей текущего и опорного блоков. При этом выбираются не все пиксели указанных окрестностей, а только их часть. Значения выбранных пикселей позволяют получить представление о значениях интенсивностей всех пикселей (об их возможных значениях, распределении и т.п.) рассматриваемых областей с заданной точностью, сокращая при этом количество обрабатываемой информации. Например, осуществляют прореживание окрестности текущего и опорного блоков путем исключения пикселей, хотя бы одна из координат которых четна, что соответствует прореживанию в два раза по вертикали и горизонтали. Приведенный пример носит иллюстративный характер и не ограничивает множество возможных способов формирования шаблона.According to another embodiment of the claimed invention, a modification of the aforementioned method is proposed, which provides that, when retrieving the restored pixel values from the vicinity of the current and reference blocks, thinning is performed according to a predetermined pattern. By a template we mean a lot of spatial positions of pixels, which are determined by the given rules inside the neighborhood of the current and reference blocks. At the same time, not all pixels of the specified neighborhoods are selected, but only a part of them. The values of the selected pixels provide an idea of the values of the intensities of all the pixels (their possible values, distribution, etc.) of the regions under consideration with a given accuracy, while reducing the amount of processed information. For example, thinning out the neighborhood of the current and reference blocks is performed by eliminating pixels, at least one of the coordinates of which is even, which corresponds to thinning twice vertically and horizontally. The above example is illustrative and does not limit the many possible ways of forming a template.

В группу связанных единым замыслом изобретений входит также оригинальный способ кодирования многоракурсных видеопоследовательностей, основанный на адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров, в котором кодируемый кадр представляется совокупностью неперекрывающихся областей пикселей, называемых единицами кодирования.The group of inventions related by a single concept also includes an original method of coding multi-angle video sequences, based on adaptive compensation of local differences in brightness during inter-frame prediction of frames, in which the encoded frame is represented by a set of non-overlapping pixel areas called coding units.

Этот способ включает в себя выполнение следующих операций:This method includes the following operations:

- выбор текущего кодируемого блока, принадлежащего текущей единице кодирования;- selection of the current encoded block belonging to the current encoding unit;

- определение как минимум одного опорного блока, который используется для формирования блока-предсказания для текущего кодируемого блока и пиксели которого уже полностью закодированы и декодированы;- determination of at least one reference block, which is used to form a prediction block for the current block being encoded and whose pixels are already fully encoded and decoded;

- определение параметров коррекции яркости опорного блока;- determination of brightness correction parameters of the reference block;

- коррекция яркости, которая заключается в коррекции значений всех пикселей опорного блока на основе определенных параметров коррекции яркости;- brightness correction, which consists in correcting the values of all the pixels of the reference block based on certain brightness correction parameters;

- формирование блока-предсказания для текущего кодируемого блока, используя скорректированный опорный блок;- the formation of the prediction block for the current encoded block using the adjusted reference block;

- кодирование текущего блока с помощью сформированного блока-предсказания;- encoding the current block using the generated prediction block;

при этом определение параметров коррекции яркости и выполнения коррекции яркости включает в себя:wherein the determination of brightness correction parameters and performing brightness correction includes:

- получение восстановленных (закодированных и затем декодированных) значений пикселей, соседних по отношению к текущему блоку кодируемого кадра, и значений пикселей, соседних по отношению к опорному блоку опорного кадра; при этом получаемые пиксели могут выбираться из одной или более пространственных областей, каждая из которых характеризуется наперед заданной пространственной близостью по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра; выбор указанных областей, являющихся смежными по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра, может производиться исходя из типа и размера пространственного преобразования, применяемого впоследствии для кодирования межкадровой разности, уже декодированных пикселей, исходя из размеров уже закодированных соседних блоков, а также их логических связей с текущим кодируемым блоком (под логическими связями понимаются определенные объективно существующие зависимости между текущим блоком и соседними блоками, задаваемые, например, методом кодирования). В этом случае подобной связью может быть объединение соседних блоков и текущего кодируемого блока вместе в единый элемент кодирования, для которого задан общий вектор смещения. Дополнительно рассчитывается оценка подобия совокупности пикселей, соседних по отношению к кодируемому блоку, и совокупности пикселей, соседних по отношению к опорному блоку.- obtaining the restored (encoded and then decoded) pixel values adjacent to the current block of the encoded frame, and pixel values adjacent to the reference block of the reference frame; while the resulting pixels can be selected from one or more spatial regions, each of which is characterized by a predetermined spatial proximity with respect to the current block of the encoded frame and the current reference block of the reference frame; the selection of these regions that are adjacent to the current block of the encoded frame and the current reference block of the reference frame can be made based on the type and size of the spatial transform used subsequently to encode the interframe difference, already decoded pixels, based on the sizes of neighboring blocks already encoded, and also their logical connections with the current block being encoded (logical connections are understood as certain objectively existing dependencies between the current block and neighboring and blocks asked, for example, the encoding method). In this case, such a connection can be the union of neighboring blocks and the current encoded block together into a single coding element for which a common displacement vector is specified. Additionally, a similarity score is calculated for the set of pixels adjacent to the block being encoded and the set of pixels neighboring for the reference block.

Значение рассчитанной оценки подобия пикселей может использоваться как дополнительное условие при принятии решения об использовании коррекции яркости пикселей опорного блока;The value of the calculated pixel similarity score can be used as an additional condition when deciding on the use of pixel brightness correction of the reference block;

- исключение из рассмотрения при определении параметров изменения яркости недостоверных пикселей, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые отличаются от общей выборки (совокупности) пикселей в указанных областях по заранее заданному критерию, который основан на анализе распределения значений пикселей в указанных областях, расчете статистических характеристик, а также сравнении значений всех проверяемых пикселей и статистических характеристик в указанных областях;- an exception from consideration when determining the parameters for changing the brightness of unreliable pixels that belong to already decoded and reconstructed areas of the reference and encoded frames and which differ from the total sample (set) of pixels in these areas according to a predetermined criterion, which is based on an analysis of the distribution of pixel values in the specified areas, calculation of statistical characteristics, as well as a comparison of the values of all tested pixels and statistical characteristics in these areas;

- определение числовых соотношений между пикселями опорного блока, достоверными пикселями из окрестности текущего декодируемого блока и достоверными пикселями из окрестности опорного блока;- determination of the numerical relationships between the pixels of the reference block, valid pixels from the vicinity of the current decoded block and reliable pixels from the vicinity of the reference block;

- вычисление значений параметров коррекции яркости на основе найденных числовых соотношений с учетом начальных значений параметров коррекции;- calculation of the values of the brightness correction parameters based on the found numerical relationships taking into account the initial values of the correction parameters;

- оценка изменения значений пикселей опорного блока; в случае если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.- assessment of changes in the pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.

В рамках единого изобретательского замысла предусматривается также использование оригинального способа декодирования многоракурсных видеопоследовательностей, основанного на адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров, в котором декодируемый кадр представляется совокупностью неперекрывающихся областей пикселей, называемых единицами кодирования. Этот способ включает в себя:Within the framework of a single inventive concept, it is also envisaged to use an original method for decoding multi-angle video sequences, based on adaptive compensation of local differences in brightness during inter-frame prediction of frames, in which the decoded frame is a set of non-overlapping areas of pixels called coding units. This method includes:

- выбор текущего декодируемого блока, принадлежащего текущей единице кодирования;- selection of the current decoded block belonging to the current coding unit;

- определение опорного блока для текущего декодируемого блока;- determination of the reference block for the current decoded block;

- определение параметров коррекции изменения для коррекции яркости найденного опорного блока;- determination of correction correction parameters for brightness correction of the found reference block;

- коррекция яркости, которая заключается в коррекции значений всех пикселей опорного блока на основе определенных параметров коррекции яркости;- brightness correction, which consists in correcting the values of all the pixels of the reference block based on certain brightness correction parameters;

- формирование блока-предсказания для текущего декодируемого блока, используя скорректированный опорный блок;- generating a prediction block for the current decoded block using the adjusted reference block;

- декодирование текущего блока с помощью сформированного блока-предсказания;- decoding the current block using the generated prediction block;

при этом определение параметров коррекции яркости и выполнения коррекции яркости включает в себя:wherein the determination of brightness correction parameters and performing brightness correction includes:

- получение восстановленных (закодированных и затем декодированных) значений пикселей, соседних по отношению к текущему блоку кодируемого кадра, и значений пикселей, соседних по отношению к опорному блоку опорного кадра; при этом получаемые пиксели могут выбираться из одной или более пространственных областей, каждая из которых характеризуется наперед заданной пространственной близостью по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра; выбор указанных областей, являющихся смежными по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра, может производиться исходя из типа и размера пространственного преобразования, применяемого впоследствии для кодирования межкадровой разности, уже декодированных пикселей, исходя из размеров уже закодированных соседних блоков, а также их логических связей с текущим кодируемым блоком (под логическими связями понимаются определенные объективно существующие зависимости между текущим блоком и соседними блоками, задаваемые, например, методом кодирования. В этом случае подобной связью может быть объединение соседних блоков и текущего кодируемого блока вместе в единый элемент кодирования, для которого задан общий вектор смещения); дополнительно рассчитывается оценка подобия совокупности пикселей, соседних по отношению к кодируемому блоку, и совокупности пикселей, соседних по отношению к опорному блоку. Значение рассчитанной оценки подобия пикселей может использоваться как дополнительное условие при принятии решения об использовании коррекции яркости пикселей опорного блока;- obtaining the restored (encoded and then decoded) pixel values adjacent to the current block of the encoded frame, and pixel values adjacent to the reference block of the reference frame; while the resulting pixels can be selected from one or more spatial regions, each of which is characterized by a predetermined spatial proximity with respect to the current block of the encoded frame and the current reference block of the reference frame; the selection of these regions that are adjacent to the current block of the encoded frame and the current reference block of the reference frame can be made based on the type and size of the spatial transform used subsequently to encode the interframe difference, already decoded pixels, based on the sizes of neighboring blocks already encoded, and also their logical connections with the current block being encoded (logical connections are understood as certain objectively existing dependencies between the current block and neighboring and blocks asked, for example, the encoding method in this case, such a connection may be to combine the neighboring blocks and the current block to be coded together in a single coding unit for which the total displacement vector set).; additionally, an assessment of the similarity of the set of pixels adjacent to the encoded block and the set of pixels adjacent to the reference block is calculated. The value of the calculated pixel similarity score can be used as an additional condition when deciding on the use of pixel brightness correction of the reference block;

- исключение из рассмотрения при определении параметров изменения яркости недостоверных пикселей, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые отличаются от общей выборки (совокупности) пикселей в указанных областях по заранее заданному критерию, который основан на анализе распределения значений пикселей в указанных областях, расчете статистических характеристик, а также сравнении значений всех проверяемых пикселей и статистических характеристик в указанных областях;- an exception from consideration when determining the parameters for changing the brightness of unreliable pixels that belong to already decoded and reconstructed areas of the reference and encoded frames and which differ from the total sample (set) of pixels in these areas according to a predetermined criterion, which is based on an analysis of the distribution of pixel values in the specified areas, calculation of statistical characteristics, as well as a comparison of the values of all tested pixels and statistical characteristics in these areas;

- определение соотношений между значениями пикселей опорного блока и значениями пикселей, соседних по отношению к опорному блоку, а также соотношений между восстановленными значениями пикселей, соседних по отношению к текущему кодируемому блоку, и значениями пикселей, соседних по отношению к опорному блоку;- determination of the relationship between the pixel values of the reference block and the values of pixels adjacent to the reference block, as well as the ratios between the restored pixel values adjacent to the current encoded block and the pixel values adjacent to the reference block;

- определение числовых соотношений между пикселями опорного блока, достоверными пикселями из окрестности текущего декодируемого блока и достоверными пикселями из окрестности опорного блока;- determination of the numerical relationships between the pixels of the reference block, valid pixels from the vicinity of the current decoded block and reliable pixels from the vicinity of the reference block;

- вычисление значений параметров коррекции яркости на основе найденных числовых соотношений с учетом начальных значений параметров коррекции;- calculation of the values of the brightness correction parameters based on the found numerical relationships taking into account the initial values of the correction parameters;

- оценка изменения значений пикселей опорного блока; в случае, если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.- assessment of changes in the pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.

Далее существо изобретения поясняется с привлечением графических материалов.Further, the invention is illustrated with the use of graphic materials.

Фиг.1 - структурная схема гибридного кодера многоракурсных видеопоследовательностей и место применения заявляемого изобретения.Figure 1 is a structural diagram of a hybrid encoder multi-angle video sequences and the place of application of the claimed invention.

Фиг.2 - структурная схема части гибридного видеокодера, реализующей заявляемый способ, входящий в состав процесса кодирования с предсказанием.Figure 2 is a structural diagram of a part of a hybrid video encoder that implements the inventive method, which is part of the predictive coding process.

Фиг.3 - диаграмма, отражающая основные элементы кодируемого, опорного кадров, которые участвуют в расчете коррекции изменения яркости для опорного блока в соответствии с заявляемым изобретением.Figure 3 is a diagram showing the main elements of the encoded reference frame that are involved in calculating the correction of brightness changes for the reference block in accordance with the claimed invention.

Фиг.4 - диаграмма, иллюстрирующая понятие супер-блока, одну из возможных комбинаций размеров блоков, входящих в супер-блок, а также два типа пространственных преобразований, используемых для декорреляции разностных данных.4 is a diagram illustrating the concept of a super-block, one of the possible combinations of block sizes included in the super-block, as well as two types of spatial transformations used for decorrelation of difference data.

Фиг.5 (вид 5.1 и вид 5.2) - диаграммы, иллюстрирующие процедуру выбора входных данных в текущем кадре в процессе вычисления параметров коррекции яркости согласно одному из примеров реализации заявляемого изобретения, а также понятие пространственной близости.5 (view 5.1 and view 5.2) are diagrams illustrating the procedure for selecting input data in the current frame during the calculation of brightness correction parameters according to one example of the implementation of the claimed invention, as well as the concept of spatial proximity.

Фиг.6 - диаграмма, иллюстрирующая способ коррекции изменения яркости для опорного блока в соответствии с одним из вариантов реализации заявляемого изобретения.6 is a diagram illustrating a method for correcting brightness changes for a reference block in accordance with one embodiment of the claimed invention.

Фиг.7 - блок-схема, иллюстрирующая способ пиксельной коррекции изменения яркости для опорного блока согласно одному из примеров реализации заявляемого изобретения.Fig. 7 is a flowchart illustrating a method for pixel correction of brightness variation for a reference block according to one embodiment of the claimed invention.

Фиг.8 - диаграмма, поясняющая способ коррекции изменения яркости для опорного блока в соответствии с другим вариантом реализации заявляемого изобретения.Fig. 8 is a diagram explaining a method for correcting a brightness change for a reference block in accordance with another embodiment of the claimed invention.

Фиг.9 - блок-схема, описывающая способ кодирования многоракурсных видеопоследовательностей, основанный на коррекции изменения яркости согласно одному из примеров реализации заявляемого изобретения.Fig.9 is a flowchart describing a method of encoding multi-angle video sequences based on the correction of brightness changes according to one example of the implementation of the claimed invention.

Фиг.10 - блок-схема, описывающая способ декодирования многоракурсных видеопоследовательностей на основе коррекции изменения яркости согласно одному из примеров реализации заявляемого изобретения.Figure 10 is a flowchart describing a method for decoding multi-angle video sequences based on the correction of brightness changes according to one example implementation of the claimed invention.

На Фиг.1 изображена структурная схема гибридного кодера многоракурсных видеопоследовательностей. Входные данные гибридного кодера 105 многоракурсных видеопоследовательностей включают в себя исходный вид (кодируемый ракурс) 101 и уже закодированные и затем декодированные виды (ракурсы) 102, которые являются частью закодированных многоракурсных видеоданных. Уже закодированные/декодированные виды 102 и уже закодированные/декодированные последовательности 103 карт глубин используются для формирования синтезированного вида (ракурса) для исходного вида (кодируемого ракурса) с помощью процедуры 104 синтеза. Сформированный синтезированный вид (ракурс) также поступает на вход гибридного кодера 105.Figure 1 shows a structural diagram of a hybrid encoder multi-angle video sequences. The input to the hybrid multi-view video sequence encoder 105 includes the original view (encoded view) 101 and the already encoded and then decoded views (views) 102 that are part of the encoded multi-view video data. Already encoded / decoded views 102 and already encoded / decoded sequences of depth maps 103 are used to form a synthesized view (view) for the original view (encoded view) using synthesis procedure 104. The generated synthesized view (angle) is also input to the hybrid encoder 105.

Гибридный кодер 105 содержит следующие функциональные блоки, используемые для кодирования исходного вида (ракурса): блок 106 управления опорными кадрами, блок 107 межкадрового предсказания, блок 108 внутрикадрового предсказания, блок 109 межкадровой и внутрикадровой компенсации, блок 110 пространственного преобразования, блок 111 оптимизации отношения скорость/искажение, блок 112 энтропийного кодирования. Детальная информация об упомянутых функциональных блоках содержится в [9]. Заявляемый способ может быть реализован в рамках блока 107 межкадрового предсказания.The hybrid encoder 105 contains the following functional blocks used for encoding the original view: the reference frame control unit 106, the inter prediction unit 107, the intraframe prediction unit 108, the inter-frame and intraframe compensation unit 109, the spatial transform unit 110, the speed ratio optimization unit 111 / distortion, entropy encoding unit 112. Detailed information on the mentioned functional blocks is contained in [9]. The inventive method can be implemented within the block 107 inter-frame prediction.

Фиг.2 содержит схему части гибридного видеокодера, которая реализует заявляемый способ в составе функционального блока кодирования с предсказанием. Гибридный кодер включает в себя блок 201 вычитания, блок 202 преобразования и квантования, блок 203 энтропийного кодирования, блок 204 обратного преобразования и обратного квантования, блок 205 компенсации смещения и коррекции изменения яркости/контрастности, блок 206 синтеза вида (ракурса), блок 207 сложения, блок 208 буферизации опорных кадров и карт глубины, блок 209 предсказания параметров компенсации и коррекции, блок 210 оценки смещения и изменения яркости/контрастности и блок 211 принятия решения о режиме кодирования макроблока. Блоки 201-204, 207-209 и 211 являются стандартными блоками кодирования, которые используются в базовом гибридном способе кодирования [9]. Блок 206 синтеза вида (ракурса) является блоком, характерным для систем для многоракурсного кодирования, т.к. выполняет формирование(синтез) дополнительных опорных кадров из уже закодированных/декодированных кадров и карт глубины.Figure 2 contains a diagram of a portion of a hybrid video encoder that implements the inventive method as part of a prediction encoding functional block. The hybrid encoder includes a subtraction unit 201, a transform and quantization unit 202, an entropy encoding unit 203, an inverse transform and inverse quantization unit 204, a bias compensation and correction unit for brightness / contrast changes 205, a view synthesis unit 206, an addition unit 207 , a block 208 for buffering reference frames and depth maps, a block 209 for predicting compensation and correction parameters, a block 210 for estimating an offset and changing the brightness / contrast, and a block 211 for deciding on a macroblock coding mode. Blocks 201-204, 207-209 and 211 are standard coding blocks that are used in the basic hybrid coding method [9]. Block 206 synthesis of the form (view) is a block characteristic of systems for multi-angle coding, because performs the formation (synthesis) of additional reference frames from already encoded / decoded frames and depth maps.

Заявляемый способ реализуется в блоках 205 и 210. Эти блоки осуществляют способ поблочного кодирования с предсказанием, который включает в себя следующие этапы:The inventive method is implemented in blocks 205 and 210. These blocks implement a predictive block coding method, which includes the following steps:

- для текущего блока текущего кодируемого кадра выполняют поиск опорного блока, при этом определяется вектор смещения (DV), задаваемый парой чисел (i, j), который обычно определяет совокупный оптимум между битовыми затратами на кодирование вектора смещения как такового и величины разбежки между кодируемым блоком и скорректированным опорным блоком, которое может быть, например, вычислено по формуле:- for the current block of the current encoded frame, a search for the reference block is performed, and the offset vector (DV) is determined by a pair of numbers (i, j), which usually determines the cumulative optimum between the bit costs of encoding the offset vector as such and the spacing between the encoded block and adjusted reference block, which can, for example, be calculated by the formula:

Figure 00000059
Figure 00000059

где I(m, n) представляет собой значение яркости пикселя с координатами (m, n) внутри текущего блока. Размер текущего кодируемого блока равен H×W. (i, j) определяет вектор смещения, который указывает на опорный блок R в пределах предопределенной области поиска, Ψ(x) - функция, корректирующая возможные различия в яркости и контрастности между текущим блоком и опорным блоком. Степенной показатель Р, больший 0, обычно принимает одно из значений 1 или 2. Описанный способ реализуется в блоке 210. Найденные параметры коррекции изменения яркости, совместно с полученным DV, передаются в блок 205 и в блок 209. При практической реализации вектор смещения может также определяться сразу для нескольких рассматриваемых далее блоков в целях более компактного представления служебной информации, в этом случае критерий минимизации будет задаваться для супер-блока, включающего сразу несколько рассматриваемых далее блоков. В этом случае, критерий минимизации может быть задан следующим образом:where I (m, n) is the pixel brightness value with coordinates (m, n) inside the current block. The size of the current encoded block is H × W. (i, j) defines a displacement vector that points to the reference block R within the predefined search area, Ψ (x) is a function that corrects for possible differences in brightness and contrast between the current block and the reference block. A power exponent P greater than 0 usually takes one of the values 1 or 2. The described method is implemented in block 210. The brightness correction correction parameters found, together with the obtained DV, are transmitted to block 205 and to block 209. In practical implementation, the displacement vector can also be determined at once for the several blocks considered below in order to more compactly present the service information, in this case the minimization criterion will be set for the super-block, which includes several blocks considered further below. In this case, the minimization criterion can be defined as follows:

Figure 00000060
,
Figure 00000060
,

где H1, W1 - размеры супер-блока.where H1, W1 are the sizes of the super block.

Найденный опорный блок преобразуют в соответствии с найденными параметрами коррекции изменения яркости (блок 205). После этого блок 201 формирует разностный блок. Затем, разностный блок преобразуется с помощью Дискретного Косинусного Преобразования (ДКП), квантуется (блок 202) и кодируется энтропийным кодером (блок 203). Дополнительные данные (SI), необходимые для последующего декодирования, также кодируются энтропийным кодером (блок 203).The found reference block is converted in accordance with the found brightness correction correction parameters (block 205). After that, block 201 forms a difference block. Then, the difference block is converted using the Discrete Cosine Transform (DCT), quantized (block 202) and encoded by an entropy encoder (block 203). Additional data (SI) necessary for subsequent decoding is also encoded by an entropy encoder (block 203).

На Фиг.3 схематично указаны основные элементы кодируемого, опорного кадров, участвующие в расчете коррекции изменения яркости для опорного блока в соответствии с заявляемым изобретением. В соответствии с Фиг.3 для текущего блока 311 (который может входить в состав кодируемого супер-блока 315), текущего кодируемого кадра 310 определятся вектор 320 смещения (DV), который также может быть определен для кодируемого супер-блока 315. Вектор 320 позволяет однозначно определить опорный блок 301 из опорного кадра 300 для текущего кодируемого блока 311, при этом вектор смещения также однозначно задает опорный супер-блок 305, который соответствует кодируемому супер-блоку 315. Следует отметить, что опорный кадр 300, блоки 301, 302, 303, 304, 305 и восстановленные (закодированные и затем декодированные) блоки текущего кадра 310: 312, 313, 314 доступны как во время кодирования, так и при декодировании.Figure 3 schematically shows the main elements of the encoded, reference frames involved in the calculation of the correction of brightness changes for the reference block in accordance with the claimed invention. In accordance with FIG. 3, for the current block 311 (which may be part of the encoded super block 315), the current encoded frame 310, a displacement vector (DV) 320 is determined, which can also be determined for the encoded super block 315. The vector 320 allows uniquely determine the reference block 301 from the reference frame 300 for the current encoded block 311, and the offset vector also uniquely sets the reference super block 305, which corresponds to the encoded super block 315. It should be noted that the reference frame 300, blocks 301, 302, 303 , 304, 305 and restored (per encoded and then decoded) blocks of the current frame 310: 312, 313, 314 are available both during encoding and during decoding.

На Фиг.4 кодируемый кадр 400 содержит внутри себя супер-блок 401, который характерен тем, что в него может входить один или более кодируемых блоков, и для супер-блока задается вектор смещения 407, обеспечивающий однозначное определение опорного супер-блока 408 в опорном кадре 406. Супер-блок 401 включает в себя в данном случае блоки 402, 403, 404, 405, при этом блок 404, также как и блок 402, кодируется с использованием преобразования, имеющего меньший размер, чем преобразование, применяемое в данном примере для блоков 403 и 405. Выбор размеров супер-блока, типов и размеров преобразования определяется кодером исходя из заранее заданных критериев минимизации стоимости кодирования информации для данного участка кодируемого кадра. Как следует из Фиг.4, блоки 402, 403, 404, 405 логически связаны т.к. входят в супер-блок 401 как составные части.4, the encoded frame 400 contains within itself a super-block 401, which is characterized in that it can include one or more coded blocks, and for the super-block an offset vector 407 is defined that uniquely determines the reference super-block 408 in the reference frame 406. Super block 401 includes in this case blocks 402, 403, 404, 405, while block 404, like block 402, is encoded using a transform having a smaller size than the transform used in this example for blocks 403 and 405. The choice of super-block sizes, types and times conversion measures are determined by the encoder based on predefined criteria to minimize the cost of encoding information for a given section of the encoded frame. As follows from Figure 4, blocks 402, 403, 404, 405 are logically connected since come in super block 401 as components.

Фиг.5 (виды 5.1 и 5.2) иллюстрируют взаимное расположение основных рассматриваемых в данном изобретении областей текущего кадра 500. Так, область 501 текущего кадра 500 доступна во время кодирования и декодирования текущего кодируемого блока 502. Область 501 иногда также называют «шаблоном». Область 503 не доступна во время декодирования текущего блока 502. Поскольку в заявляемом изобретении расчет параметров коррекции яркости опорного блока основан на пикселях текущего кадра, которые расположены только в области 501, при реализации подобной коррекции в кодере и декодере нет необходимости в передаче дополнительных параметров коррекции яркости в выходном битовом потоке. Некоторые пиксели, принадлежащие области 501, используются для расчета параметров коррекции яркости опорного блока. На Фиг.5 (виды 5.1 и 5.2) эти пиксели представлены областью 505.5 (views 5.1 and 5.2) illustrate the relative positioning of the main regions of the current frame 500 considered in the present invention. Thus, the region 501 of the current frame 500 is available during encoding and decoding of the current encoded block 502. Region 501 is sometimes also called a “pattern”. Region 503 is not available during decoding of the current block 502. Since in the claimed invention the calculation of the brightness correction parameters of the reference block is based on the pixels of the current frame, which are located only in region 501, when implementing such correction in the encoder and decoder, there is no need to transmit additional brightness correction parameters in the output bitstream. Some pixels belonging to area 501 are used to calculate brightness correction parameters of the reference block. In Fig. 5 (views 5.1 and 5.2), these pixels are represented by area 505.

Пиксели, используемые для расчета параметров коррекции, могут выбираться из одной или более пространственных областей, каждая из которых характеризуется наперед заданной пространственной близостью по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра; так на Фиг.5 (вид 5.2) выбранной пространственной областью является область 505, а пространственная близость определяется кратчайшим расстоянием между областью и границей блока, обозначенное на Фиг.5 (вид 5.2) как 506.The pixels used to calculate the correction parameters can be selected from one or more spatial areas, each of which is characterized by a predetermined spatial proximity with respect to the current block of the encoded frame and the current reference block of the reference frame; so in FIG. 5 (view 5.2), the selected spatial region is region 505, and spatial proximity is determined by the shortest distance between the region and the block boundary, indicated in FIG. 5 (view 5.2) as 506.

Выбор области может производиться, исходя из типа пространственного преобразования 202 (Фиг.2), применяемого впоследствии для кодирования разностной пиксельной информации, уже декодированных пикселей, исходя из размеров уже закодированных соседних блоков, а также их логических связей с текущим кодируемым блоком, задаваемых алгоритмом кодирования; дополнительно рассчитывается оценка схожести пикселей, соседних по отношению к кодируемому блоку и рассматриваемых совместно, и пикселей, соседних по отношению к опорному блоку и рассматриваемых совместно; значение рассчитанной оценки схожести пикселей может использоваться как дополнительное условие при принятии решения об использовании коррекции яркости пикселей опорного блока.The choice of the region can be made based on the type of spatial transformation 202 (Figure 2), which is subsequently used to encode difference pixel information, already decoded pixels, based on the sizes of neighboring blocks already encoded, as well as their logical connections with the current encoded block, specified by the encoding algorithm ; additionally, an assessment is made of the similarity of pixels adjacent to the block being encoded and considered together and pixels adjacent to the reference block and considered together; the value of the calculated pixel similarity score can be used as an additional condition when deciding on the use of pixel brightness correction of the reference block.

Одна из основных реализаций заявляемого изобретения предусматривает пиксельную коррекцию изменения яркости для опорного блока при кодировании с предсказанием. Ключевая идея заключается в пиксельной оценке параметра коррекции изменения яркости, причем коррекция основывается на восстановленных значениях пикселей, соседних с текущим блоком, значениях пикселей опорного кадра и их взаимном подобии. Фиг.6 иллюстрирует конкретное применение этой техники.One of the main implementations of the claimed invention provides for pixel correction of a change in brightness for a reference block in prediction coding. The key idea is to make a pixel estimate of the brightness correction correction parameter, and the correction is based on the restored pixel values adjacent to the current block, the pixel values of the reference frame, and their mutual similarity. 6 illustrates a specific application of this technique.

Согласно Фиг.6 для текущего блока 611, принадлежащего текущему кодируемому кадру 610, определяется вектор смещения (DV) 620. DV указывает на опорный блок 601 из опорного кадра 600. Текущий блок 611, имеющий для определенности размеры 4×4 пикселя, содержит пиксели, которые обозначены как A00~A33. Опорный блок 601 содержит пиксели, которые обозначены как R00~R33. Восстановленные значения пикселей (блоки 612 и 613, размеры которых для определенности заданы как 4×2 и 2×4), соседних по отношению к текущему кодируемому блоком, обозначены как

Figure 00000061
.
Figure 00000062
-пиксели, принадлежащие блокам 602 и 603. Блоки 602 и 603 являются соседними по отношению к опорному блоку 601 и ставятся в соответствие блокам 612 и 613.6, for the current block 611 belonging to the current encoded frame 610, an offset vector (DV) 620 is determined. DV points to the reference block 601 from the reference frame 600. The current block 611, for definiteness, is 4x4 pixels, contains pixels, which are designated as A00 ~ A33. The reference block 601 contains pixels, which are designated as R00 ~ R33. The restored pixel values (blocks 612 and 613, the dimensions of which for definiteness are specified as 4 × 2 and 2 × 4), adjacent to the current encoded block, are indicated as
Figure 00000061
.
Figure 00000062
-pixels belonging to blocks 602 and 603. Blocks 602 and 603 are adjacent to the reference block 601 and are mapped to blocks 612 and 613.

Для каждого положения (i, j) пикселя в опорном блоке 601 коррекция изменения яркости осуществляется в соответствии со следующим выражением:For each position (i, j) of the pixel in the reference block 601, the correction of the brightness change is carried out in accordance with the following expression:

Ψ(xi,j)=αi,j·xi,j. Ψ (x i, j) = α i, j · x i, j.

Здесь параметр пиксельной коррекции изменения яркости αi,j (в случае, если estRi,j не равно 0) описывается как:Here, the pixel correction parameter of the brightness change α i, j (in case estR i, j is not equal to 0) is described as:

Figure 00000063
,
Figure 00000063
,

где estDi,j - это первая оценка для пикселя с координатами (i, j) в опорном блоке; estRi,j - это вторая оценка пикселя с координатами (i, j) в опорном блоке. В противном случае αi,j полагается равным 1.where estD i, j is the first estimate for a pixel with coordinates (i, j) in the reference block; estR i, j is the second pixel estimate with the coordinates (i, j) in the reference block. Otherwise, α i, j is set equal to 1.

Блок-схема способа пиксельной коррекции изменения яркости для опорного блока приведена на Фиг.7. Этот способ включает следующие основные этапы:The block diagram of a method for pixel correction of brightness changes for the reference block is shown in Fig.7. This method includes the following main steps:

1. Получение значений пикселей блоков 601, 602, 603 из опорного кадра 600, блока 611 и блоков 612, 613, принадлежащих области шаблона текущего кодируемого кадра 610 (операция 701). Далее, для оценки сходства пикселей блоков 602, 603 и пикселей блоков 612, 613 предусмотрены следующие этапы:1. Obtaining pixel values of blocks 601, 602, 603 from the reference frame 600, block 611 and blocks 612, 613 belonging to the template area of the current encoded frame 610 (operation 701). Further, to evaluate the similarity of the pixels of blocks 602, 603 and the pixels of blocks 612, 613, the following steps are provided:

- все уже восстановленные пиксели

Figure 00000011
соседние с опорным блоком (в частности пиксели, входящие в блоки 602 и 603) и все уже восстановленные пиксели
Figure 00000064
соседние с кодируемым блоком (в частности пиксели, входящие в блоки 612 и 613), образуя совместно пары
Figure 00000027
, однозначно задаваемые пространственным положением пикселей
Figure 00000011
и
Figure 00000064
в соответствующих областях, которое определяется значением номера пикселя к, группируются в M не пересекающихся групп G0…GM-1, таких, что
Figure 00000027
, k=0…N-1∈{G0∩…G1∩…∩GM-1}. Группой может являться блок пар пикселей с вообще говоря произвольными размерами, например, размерами 2×2 пары пикселей, 4×4 пары пикселей и т.д. в зависимости от фактических размеров исходных блоков 602, 603, 612, 613. Пары пикселей, принадлежащих группе Gi, обозначаются также как
Figure 00000028
;- all pixels already recovered
Figure 00000011
adjacent to the reference block (in particular pixels included in blocks 602 and 603) and all pixels already restored
Figure 00000064
adjacent to the encoded block (in particular, the pixels included in blocks 612 and 613), forming together pairs
Figure 00000027
uniquely determined by the spatial position of the pixels
Figure 00000011
and
Figure 00000064
in the corresponding areas, which is determined by the value of the pixel number k, are grouped in M disjoint groups G0 ... GM-1, such that
Figure 00000027
, k = 0 ... N-1∈ {G 0 ∩ ... G 1 ∩ ... ∩ G M-1 }. A group can be a block of pairs of pixels with generally speaking arbitrary sizes, for example, sizes 2 × 2 pairs of pixels, 4 × 4 pairs of pixels, etc. depending on the actual sizes of the source blocks 602, 603, 612, 613. Pairs of pixels belonging to the group Gi are also denoted as
Figure 00000028
;

- для каждой группы Gi рассчитывается метрика MR_Norm(Gi), которая основана на учете пиксельных различий

Figure 00000029
и
Figure 00000030
за исключением различия средних значений всех пикселей
Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi по формуле:- for each group Gi, the metric MR_Norm (Gi) is calculated, which is based on the consideration of pixel differences
Figure 00000029
 and
Figure 00000030
 except for the difference in average values of all pixels
Figure 00000029
 and average values of all pixels
Figure 00000030
 each Gi group according to the formula:

Figure 00000031
,
Figure 00000031
,

где значение степенного показателя P1 определяется экспериментально и для определенности может быть задано равным 1;where the value of the power exponent P1 is determined experimentally and for definiteness can be set equal to 1;

- для каждой группы Gi рассчитывается метрика M_Norm(Gt), основанная на различиях средних значений всех пикселей

Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой группы Gi по формуле:- for each group Gi, the metric M_Norm (G t ) is calculated based on the differences in the average values of all pixels
Figure 00000029
and average values of all pixels
Figure 00000030
each Gi group according to the formula:

Figure 00000032
,
Figure 00000032
,

где значение степенного показателя P2 определяется экспериментально, и для определенности может быть задано равным 1;where the value of the power exponent P2 is determined experimentally, and for definiteness can be set equal to 1;

- рассчитывается общая метрика, обозначаемая MR_Norm, для групп G0…GM-1, которая основана на учете пиксельных различий пикселей

Figure 00000029
и
Figure 00000030
по каждой из групп за исключением различий средних значений всех пикселей
Figure 00000029
и средних значений всех пикселей всех пикселей
Figure 00000030
каждой группы Gi по формуле:- the general metric, denoted by MR_Norm, is calculated for the groups G0 ... GM-1, which is based on the consideration of pixel differences in pixels
Figure 00000029
and
Figure 00000030
for each of the groups with the exception of differences in the average values of all pixels
Figure 00000029
and average values of all pixels of all pixels
Figure 00000030
each Gi group according to the formula:

Figure 00000033
;
Figure 00000033
;

- рассчитывается общая метрика, обозначаемая M_Norm, для групп G0…GM-1, которая основана на учете различия средних значений всех пикселей

Figure 00000029
и средних значений всех пикселей
Figure 00000030
каждой труппы Gi по формуле:- the general metric, denoted by M_Norm, is calculated for the groups G0 ... GM-1, which is based on the difference in the average values of all pixels
Figure 00000029
and average values of all pixels
Figure 00000030
each troupe Gi according to the formula:

Figure 00000034
;
Figure 00000034
;

- производится сравнение значений рассчитанных метрик MR_Norm и М_Norm с наперед заданными пороговыми значениями, и в случае если MR_Norm больше первого заданного порогового значения или M_Norm меньше второго заданного порогового значения, подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком считается слабым; в противном случае подобие восстановленных пикселей, соседних с опорным блоком и восстановленных пикселей, соседних с кодируемым блоком считается сильным;- the values of the calculated MR_Norm and М_Norm metrics are compared with the predetermined threshold values, and if MR_Norm is greater than the first specified threshold value or M_Norm is less than the second specified threshold value, the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block considered weak; otherwise, the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is considered strong;

- если подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком, слабое, коррекция может не применятся;- if the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is weak, the correction may not be applied;

- если подобие восстановленных пикселей, соседних с опорным блоком, и восстановленных пикселей, соседних с кодируемым блоком, сильное, коррекция применяется обязательно.- if the similarity of the restored pixels adjacent to the reference block and the restored pixels adjacent to the encoded block is strong, correction is necessary.

2. Вычисление весовых коэффициентов Wk(i,j), k=0, …, N-1 для каждого положения (i, j) пикселя в опорном блоке 601 (операция 702). Весовые коэффициенты Wk(i, j) выражаются следующим образом:2. The calculation of the weights W k (i, j), k = 0, ..., N-1 for each position (i, j) of the pixel in the reference block 601 (operation 702). Weighting factors W k (i, j) are expressed as follows:

Wk(i, j)=exp(-C1·Ak(i, j)C2+C3)W k (i, j) = exp (-C1A k (i, j) C2 + C3)

A k ( i , j ) = | R i , j T k R |

Figure 00000065
, A k ( i , j ) = | | | R i , j - T k R | | |
Figure 00000065
,

где C1, C2, C3 - численные параметры, задающие нелинейную зависимость весового коэффициента от величины Ak(i, j), определяется экспериментально. Здесь N - это общее число пикселей в блоках 612, 613 (или 602, 603). Необходимо отметить, что весовые коэффициенты отражают тот факт, что чем значение Ri,j ближе к T k R

Figure 00000066
, тем больше его вклад при определении параметра коррекции изменения яркости для опорного блока.where C1, C2, C3 are numerical parameters specifying the nonlinear dependence of the weight coefficient on the quantity A k (i, j), is determined experimentally. Here N is the total number of pixels in blocks 612, 613 (or 602, 603). It should be noted that the weights reflect the fact that the closer the value of R i, j is closer to T k R
Figure 00000066
, the greater its contribution in determining the brightness correction correction parameter for the reference block.

3. Вычисление значений estDi,j для каждого положения (i, j) пикселя в опорном блоке 601 (операция 703) в соответствии со следующим выражением:3. The calculation of the values estD i, j for each position (i, j) of the pixel in the reference block 601 (operation 703) in accordance with the following expression:

e s t D i , j = B a s e D + k = 0 _ N 1 k i | T k R T k D | T h r 1 a n d | T k R R i j | T h r 2 W k ( i , j ) × L k ( i , j ) × T k D

Figure 00000067
e s t D i , j = B a s e D + k = 0 _ N - one k i | | | T k R - T k D | | | T h r one a n d | | | T k R - R i j | | | T h r 2 W k ( i , j ) × L k ( i , j ) × T k D
Figure 00000067

Thr1 и Thr2 - это предопределенные пороговые значения, BaseD - начальное значение первой оценки. Пороговые значения используются для исключения значений пикселей, соседних по отношению к опорному блоку, которые существенно отличаются от значений Ri,j, и значений T k D

Figure 00000068
, соседних по отношению к текущему кодируемому блоку.Thr1 and Thr2 are predefined threshold values, BaseD is the initial value of the first estimate. Threshold values are used to exclude pixel values adjacent to the reference block, which differ significantly from the values of R i, j , and values T k D
Figure 00000068
adjacent to the current encoded block.

4. Вычисление значений для каждого положения i,j пикселя в опорном блоке 601 (операция 704) в соответствии со следующим выражением:4. The calculation of values for each position i, j of the pixel in the reference block 601 (operation 704) in accordance with the following expression:

e s t D i , j = B a s e D + k = 0 _ N 1 k i | T k R T k D | T h r 1 a n d | T k R R i j | T h r 2 W k ( i , j ) × L k ( i , j ) × T k R

Figure 00000069
e s t D i , j = B a s e D + k = 0 _ N - one k i | | | T k R - T k D | | | T h r one a n d | | | T k R - R i j | | | T h r 2 W k ( i , j ) × L k ( i , j ) × T k R
Figure 00000069

Предопределенные пороговые значения Thr1 и Thr2 являются такими же, как в вычислении для вычисления estDi,j, BaseR - начальное значение первой оценки.The predefined threshold values Thr1 and Thr2 are the same as in the calculation for calculating estD i, j , BaseR is the initial value of the first estimate.

Для повышения точности оценки величины параметра коррекции изменения яркости αi,j, заявляемое изобретение предусматривает, что для исключения из рассмотрения полученных пикселей T k R

Figure 00000070
и T k D
Figure 00000068
, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые отличаются от общей выборки (совокупности) пикселей в указанных областях, выполняют следующие действия:To improve the accuracy of estimating the value of the correction parameter of the brightness change α i, j , the claimed invention provides that to exclude from consideration the received pixels T k R
Figure 00000070
and T k D
Figure 00000068
which belong to the already decoded and reconstructed areas of the reference and encoded frames and which differ from the total sample (set) of pixels in these areas, perform the following actions:

- группируют пиксели T k D

Figure 00000068
таким образом, что для всех пикселей T k R
Figure 00000071
, удовлетворяющих условию T k R > L R i
Figure 00000072
и T k R < L R i + 1
Figure 00000073
, пиксели T k D
Figure 00000068
, которые соответствуют пикселям T k R
Figure 00000074
исходя из их порядкового номера k=0…N-1 и пространственного положения в опорном и кодируемом кадрах, группируются в группы, обозначаемые B(LRi, LRi+1):- group pixels T k D
Figure 00000068
such that for all pixels T k R
Figure 00000071
satisfying the condition T k R > L R i
Figure 00000072
and T k R < L R i + one
Figure 00000073
pixels T k D
Figure 00000068
that match the pixels T k R
Figure 00000074
based on their serial number k = 0 ... N-1 and the spatial position in the reference and encoded frames, are grouped into groups denoted by B (LR i , LR i + 1 ):

B ( L R i , L R i + 1 ) = { T k D k = 0 N 1 : T k R > L R i T k R < L R i + 1 }

Figure 00000075
B ( L R i , L R i + one ) = { T k D k = 0 ... N - one : T k R > L R i T k R < L R i + one }
Figure 00000075

- при этом величины LRb LRi+] определяют границы диапазона, задающего группу B(LRi, LRi+1) и удовлетворяют условию LRi>-1; LRi+1>Ri. Количество групп B(LRi, LRi+1) NB определяется экспериментально и задает максимально возможное значение индекса i, используемого при нумерации величин (LR-, LRi+1): -1<LR0<LR0<LR0…<LRNB;- in this case, the values LR b LR i +] determine the boundaries of the range defining the group B (LR i , LR i + 1 ) and satisfy the condition LR i >-1; LR i + 1 > R i . The number of groups B (LR i , LR i + 1 ) N B is determined experimentally and sets the maximum possible value of the index i used for numbering the quantities (LR-, LR i + 1 ): -1 <LR 0 <LR 0 <LR 0 ... <LR NB ;

- для каждой группы B(LRi, LRi+1), задаваемой величинами (LRi,LRi+1), рассчитывают следующие величины:- for each group B (LR i , LR i + 1 ) defined by the values (LR i , LR i + 1 ), the following values are calculated:

C _ P l u s ( L R i , L R i + 1 ) = T k D B ( L R i , L R i + 1 ) { 1, T k R T k D + T h r 5 0, T k R < T k D + T h r 5

Figure 00000042
C _ P l u s ( L R i , L R i + one ) = T k D B ( L R i , L R i + one ) { one, T k R T k D + T h r 5 0 T k R < T k D + T h r 5
Figure 00000042

C _ M i n u s ( L R i , L R i + 1 ) = T k D B ( L R i , L R i + 1 ) { 1, T k R T k D T h r 5 0, T k R > T k D T h r 5

Figure 00000043
C _ M i n u s ( L R i , L R i + one ) = T k D B ( L R i , L R i + one ) { one, T k R T k D - T h r 5 0 T k R > T k D - T h r 5
Figure 00000043

- для каждого пикселя T k D B ( L R i , L R i + 1 )

Figure 00000044
группы B(LRi, LRi+1) проверяют верность следующих трех условий:- for each pixel T k D B ( L R i , L R i + one )
Figure 00000044
groups B (LR i , LR i + 1 ) verify the following three conditions:

Условие 1:Condition 1:

| C _ P l u s ( L R i , L R i + 1 ) C _ M i n u s ( L R i , L R i + 1 ) < T h r 6 |

Figure 00000045
| | | C _ P l u s ( L R i , L R i + one ) - C _ M i n u s ( L R i , L R i + one ) < T h r 6 | | |
Figure 00000045
;;

Условие 2:Condition 2:

C _ P l u s ( L R i , L R i + 1 ) C _ M i n u s ( L R i , L R i + 1 ) > = T h r 6 A N D T k R T k D + T h r 5

Figure 00000046
C _ P l u s ( L R i , L R i + one ) - C _ M i n u s ( L R i , L R i + one ) > = T h r 6 A N D T k R T k D + T h r 5
Figure 00000046
;;

Условие 3:Condition 3:

C _ P l u s ( L R i , L R i + 1 ) C _ M i n u s ( L R i , L R i + 1 ) < = T h r 6 A N D T k R T k D T h r 5

Figure 00000047
; C _ P l u s ( L R i , L R i + one ) - C _ M i n u s ( L R i , L R i + one ) < = - T h r 6 A N D T k R T k D - T h r 5
Figure 00000047
;

в том случае, если верным является хотя бы одно из проверяемых условий 1…3 для очередного рассматриваемого пикселя T k D B ( L R i , L R i + 1 )

Figure 00000044
группы B(LRi, LRi+1), рассматриваемый пиксель T k D B ( L R i , L R i + 1 )
Figure 00000044
включается в дальнейшие расчеты параметров коррекции яркости опорного блока.in the event that at least one of the checked conditions 1 ... 3 is true for the next pixel in question T k D B ( L R i , L R i + one )
Figure 00000044
group B (LR i , LR i + 1 ), the pixel in question T k D B ( L R i , L R i + one )
Figure 00000044
included in further calculations of the brightness correction parameters of the reference block.

5. Вычисление параметра коррекции изменения яркости αi,j (операция 705) для каждого пикселя с координатами (i, j) в опорном блоке 601 на основании полученных значений и estDi,j в случае, если estDi,j не равно 0. В противном случае αi,j полагается равным 1.5. The calculation of the brightness correction parameter α i, j (operation 705) for each pixel with coordinates (i, j) in the reference block 601 based on the obtained values and estD i, j if estD i, j is not equal to 0. Otherwise, α i, j is assumed to be equal to 1.

Предусматривается, что для уменьшения вычислительных затрат, связанных с компенсаций пикселей опорного блока в случае, если первая оценка estDi,j и вторая оценка estRi,j таковы, что параметр коррекции αi,j близок к 1, выполняется проверка условия: EstRi,j+Δ1>>Qbits1==EstDi,j+Δ1>>Qbits1, где Qbits1 и Δ1 - неотрицательные целые числа, и если условие верно, то параметр коррекции задается равным 1.It is envisaged that in order to reduce the computational costs associated with compensating the pixels of the reference block if the first estimate estD i, j and the second estimate estR i, j are such that the correction parameter α i, j is close to 1, the condition is checked: EstR i, j + Δ1 >> Qbits 1 == EstD i, j + Δ1 >> Qbits 1 , where Qbits 1 and Δ1 are non - negative integers, and if the condition is true, then the correction parameter is set to 1.

Также, для повышения точности метода компенсации локальных отличий яркости при котором достигается снижение вычислительных затрат, связанных с компенсаций пикселей опорного блока в случае, если первая оценка estDi,j и вторая оценка estRi,j таковы, что параметр коррекции αi,j близок к 1, может выполняться проверка условия (|EstDi,j -EstRi,j|+Δ2>>Qbits2==0, где Obits2 и Δ2 где Qbits2 и Δ2 - неотрицательные целые числа, и если условие верно, то параметр коррекции задается равным 1. Имеет смысл рассмотреть и более общий критерий, позволяющий определять ситуацию близости параметра коррекции к 1, который подразумевает проверку следующего неравенства: Δ3×EstR<EstD<Δ4×EstR, где Δ3, Δ4 - заранее заданные неотрицательные числа, и в случае его выполнения задание параметра коррекции равным 1.Also, to improve the accuracy of the method for compensating for local differences in brightness, in which the computational costs associated with compensation of pixels of the reference block are reduced if the first estimate estD i, j and the second estimate estR i, j are such that the correction parameter α i, j is close to 1, the condition can be checked ( | EstD i, j - EstR i, j |  + Δ2 >> Qbits 2 == 0, where Obits 2 and Δ2 where Qbits 2 and Δ2 are non-negative integers, and if the condition is true , then the correction parameter is set to 1. It makes sense to consider a more general criterion, which allows to determine the situation spine correction parameter to 1, which means by the following inequality: Δ3 × EstR <EstD <Δ4 × EstR, where Δ3, Δ4 - predetermined non-negative numbers, and in case of performing the task of correction parameter 1.

6. Выполнение коррекции изменения яркости (операция 706) для опорного блока 601 на основе использования вычисленных параметров αi,j в том случае, если подобие пикселей блоков 602, 603 и 612, 613 признано сильным.6. Performing a correction of the brightness change (operation 706) for the reference block 601 based on the use of the calculated parameters α i, j if the pixel similarity of the blocks 602, 603 and 612, 613 is considered strong.

Стоит отметить, что заявляемое изобретение также предусматривает такую коррекцию значений яркости пикселей опорного блока, при котором вместо использования интенсивности каждого пикселя опорного блока в отдельности, может корректироваться обобщенная статистическая характеристика более чем одного пикселя опорного блока. Например, для пикселей A00, A01, A10, A11 из блока 601 возможно рассчитать среднее значение, для которого будет рассчитан параметр коррекции в соответствии с вариантами реализации заявляемого изобретения, описанными выше. Затем, среднее значение совокупности пикселей A00, A01, A10, A11 будет заменено на скорректированное значение. В другой реализации пиксели опорного блока группируются в одну или более групп пикселей на основе явно определяемого общего признака (например, близости интенсивностей), с последующим выделением общего параметра (такого, как например среднее значение), его коррекцией и финальной заменой исходного значения общего параметра для выделенной группы пикселей на скорректированное.It is worth noting that the claimed invention also provides such a correction of the brightness values of the pixels of the reference block, in which instead of using the intensity of each pixel of the reference block individually, the generalized statistical characteristic of more than one pixel of the reference block can be adjusted. For example, for pixels A00, A01, A10, A11 from block 601, it is possible to calculate the average value for which the correction parameter will be calculated in accordance with the embodiments of the claimed invention described above. Then, the average value of the pixel population A00, A01, A10, A11 will be replaced by the adjusted value. In another implementation, the pixels of the reference block are grouped into one or more groups of pixels on the basis of a clearly defined common feature (for example, proximity of intensities), with the subsequent selection of a common parameter (such as an average value), its correction and the final replacement of the initial value of the common parameter for selected group of pixels on the adjusted.

Другой вариант реализации заявляемого изобретения основан на следующем. Обычно в качестве пикселей, соседних по отношению к опорному блоку, выбирают группу пикселей, непосредственно прилегающих к опорному блоку. Однако процедура поиска опорного блока может выбрать такой вектор смещения, что значения пикселей в указанной группе не будут в достаточной степени схожи с соответствующими им значениями пикселей, соседних по отношению к текущему кодируемому блоку. Более того, значения пикселей, непосредственно прилегающих к опорному блоку, могут значительно отличаться от значений пикселей опорного блока. В этих случаях, коррекция изменения яркости и контрастности может выполняться неверно.Another embodiment of the claimed invention is based on the following. Typically, as pixels adjacent to the reference block, a group of pixels adjacent to the reference block is selected. However, the search procedure for the reference block can select such a displacement vector that the pixel values in the indicated group will not be sufficiently similar to the corresponding pixel values adjacent to the current encoded block. Moreover, the values of pixels directly adjacent to the reference block may differ significantly from the pixel values of the reference block. In these cases, correction of changes in brightness and contrast may not be performed correctly.

Для решения указанной проблемы, в варианте реализации заявляемого изобретения предлагается использовать "плавающее" (относительно опорного блока) положение упомянутой группы пикселей, соседних по отношению к опорному блоку. Фиг.8 объясняет заявляемый способ в соответствии с одним из вариантов реализации заявляемого изобретения. Согласно Фиг.8, на каждой итерации процедуры поиска опорного блока для текущего блока 811 текущего кодируемого кадра 810 определяют вектор 820 смещения (DV). DV указывает на опорный блок 801 опорного кадра 800. Координаты группы пикселей опорного кадра (которую образуют пиксели блоков 802 и 803) определяются с помощью дополнительного уточняющего вектора 804 смещения. Уточняющий вектор 804 смещения является результатом дополнительной процедуры оценки смещения. При этом определяется такой вектор 804 смещения, который дает минимальное значение штрафной функции, определяющей степень подобия блоков 812, 813 и блоков 802, 803 соответственно. В качестве штрафной функции могут выступать такие известные функции как: средне - квадратичная ошибка, сумма абсолютных разностей, сумма абсолютных разностей для сигналов с нулевым средним, и т.д. Вектор 804 определяется неявно во время процесса кодирования и декодирования без передачи дополнительной информации в выходном битовом потоке.To solve this problem, in an embodiment of the claimed invention, it is proposed to use the "floating" (relative to the reference block) position of said group of pixels adjacent to the reference block. Fig.8 explains the inventive method in accordance with one embodiment of the claimed invention. 8, at each iteration of the reference block search procedure for the current block 811 of the current encoded frame 810, a displacement vector (DV) 820 is determined. DV points to the reference block 801 of the reference frame 800. The coordinates of the group of pixels of the reference frame (which are formed by the pixels of the blocks 802 and 803) are determined using an additional refinement offset vector 804. The bias refinement vector 804 is the result of an additional bias estimation procedure. In this case, such a displacement vector 804 is determined that gives the minimum value of the penalty function that determines the degree of similarity of blocks 812, 813 and blocks 802, 803, respectively. Such a well-known function as the mean square error, the sum of the absolute differences, the sum of the absolute differences for signals with a zero mean, and so on, can serve as a penalty function. Vector 804 is implicitly determined during the encoding and decoding process without transmitting additional information in the output bitstream.

Логическим продолжением описанного аспекта заявляемого изобретения является следующая модификация. Обычно в качестве пикселей, соседних по отношению к опорному блоку, выбирают группу пикселей, непосредственно прилегающих к опорному блоку. При этом процедура поиска опорного блока может выбрать вектор смещения, заданный с дробной точностью, т.е. такой что указывает на некоторую промежуточную пространственную позицию, расположенную между целочисленными позициями пикселей. В этом случае, в целях упрощения предусматривается выбор такой группы пикселей, соседних по отношению к опорному блоку, что их положение задано одним из ближайших пиксельных позиций, которые могут быть заданы с меньшей точностью, нежели точность выбранного вектора смещения (например, вместо четвертьпиксельной точности для задания окрестностей будет использована пиксельная точность, что в некоторых реализациях может снижать вычислительную сложность).The logical continuation of the described aspect of the claimed invention is the following modification. Typically, as pixels adjacent to the reference block, a group of pixels adjacent to the reference block is selected. In this case, the search procedure for the reference block can select the displacement vector specified with fractional accuracy, i.e. such that it indicates some intermediate spatial position located between integer pixel positions. In this case, in order to simplify, it is envisaged to select a group of pixels adjacent to the reference block such that their position is specified by one of the closest pixel positions that can be set with less accuracy than the accuracy of the selected displacement vector (for example, instead of quarter pixel accuracy for neighborhoods will use pixel accuracy, which in some implementations may reduce computational complexity).

На Фиг.9 представлена блок-схема, которая описывает способ кодирования многоракурсных видеопоследовательностей, на основе коррекции яркости согласно одному из вариантов реализации заявляемого изобретения. На этапе 901 выбирают текущий кодируемый блок принадлежащего текущей единице кодирования. На этапе 902 определяют как минимум один опорный блок, который используется для формирования блока-предсказания для текущего кодируемого блока и пиксели которого уже полностью закодированы и декодированы. На этапе 903 определяют параметры коррекции яркости опорного блока. На этапе 904 выполняют коррекцию значений всех пикселей опорного блока на основе определенных параметров коррекции яркости. При этом определение параметров коррекции яркости и выполнения коррекции яркости включает в себя:Figure 9 presents a flowchart that describes a method of encoding multi-angle video sequences based on brightness correction according to one embodiment of the claimed invention. At step 901, the current coded block belonging to the current coding unit is selected. At 902, at least one reference block is determined, which is used to generate a prediction block for the current block being encoded and whose pixels are already fully encoded and decoded. At 903, brightness correction parameters of the reference block are determined. At 904, values of all pixels of the reference block are corrected based on the determined brightness correction parameters. In this case, the determination of the brightness correction parameters and performing the brightness correction includes:

- получение восстановленных (закодированных и затем декодированных) значений пикселей, соседних по отношению к текущему блоку кодируемого кадра, и значений пикселей, соседних по отношению к опорному блоку опорного кадра; при этом получаемые пиксели могут выбираться из одной или более пространственных областей, каждая из которых характеризуется наперед заданной пространственной близостью по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра; выбор указанных областей, являющихся смежными по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра, может производиться исходя из типа и размера пространственного преобразования, применяемого впоследствии для кодирования межкадровой разности, уже декодированных пикселей, исходя из размеров уже закодированных соседних блоков, а также их логических связей с текущим кодируемым блоком (под логическими связями понимаются определенные объективно существующие зависимости между текущим блоком и соседними блоками, задаваемые, например, методом кодирования). В этом случае подобной связью может быть объединение соседних блоков и текущего кодируемого блока вместе в единый элемент кодирования, для которого задан общий вектор смещения. Дополнительно рассчитывается оценка подобия совокупности пикселей, соседних по отношению к кодируемому блоку, и совокупности пикселей, соседних по отношению к опорному блоку. Значение рассчитанной оценки подобия пикселей может использоваться как дополнительное условие при принятии решения об использовании коррекции яркости пикселей опорного блока;- obtaining the restored (encoded and then decoded) pixel values adjacent to the current block of the encoded frame, and pixel values adjacent to the reference block of the reference frame; while the resulting pixels can be selected from one or more spatial regions, each of which is characterized by a predetermined spatial proximity with respect to the current block of the encoded frame and the current reference block of the reference frame; the selection of these regions that are adjacent to the current block of the encoded frame and the current reference block of the reference frame can be made based on the type and size of the spatial transform used subsequently to encode the interframe difference, already decoded pixels, based on the sizes of neighboring blocks already encoded, and also their logical connections with the current block being encoded (logical connections are understood as certain objectively existing dependencies between the current block and neighboring and blocks asked, for example, the encoding method). In this case, such a connection can be the union of neighboring blocks and the current encoded block together into a single coding element for which a common displacement vector is specified. Additionally, a similarity score is calculated for the set of pixels adjacent to the block being encoded and the set of pixels neighboring for the reference block. The value of the calculated pixel similarity score can be used as an additional condition when deciding on the use of pixel brightness correction of the reference block;

- исключение из рассмотрения при определении параметров изменения яркости недостоверных пикселей, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые отличаются от общей выборки (совокупности) пикселей в указанных областях по заранее заданному критерию, который основан на анализе распределения значений пикселей в указанных областях, расчете статистических характеристик, а также сравнении значений всех проверяемых пикселей и статистических характеристик в указанных областях;- an exception from consideration when determining the parameters for changing the brightness of unreliable pixels that belong to already decoded and reconstructed areas of the reference and encoded frames and which differ from the total sample (set) of pixels in these areas according to a predetermined criterion, which is based on an analysis of the distribution of pixel values in the specified areas, calculation of statistical characteristics, as well as a comparison of the values of all tested pixels and statistical characteristics in these areas;

- определение числовых соотношений между пикселями опорного блока, достоверными пикселями из окрестности текущего декодируемого блока и достоверными пикселями из окрестности опорного блока;- determination of the numerical relationships between the pixels of the reference block, valid pixels from the vicinity of the current decoded block and reliable pixels from the vicinity of the reference block;

- вычисление значений параметров коррекции яркости на основе найденных числовых соотношений с учетом начальных значений параметров коррекции;- calculation of the values of the brightness correction parameters based on the found numerical relationships taking into account the initial values of the correction parameters;

- оценка изменения значений пикселей опорного блока; в случае, если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.- assessment of changes in the pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.

На этапе 905 формируют блок-предсказание для текущего кодируемого блока, используя скорректированный опорный блок. На этапе 906 кодируют текущий блок с помощью сформированного блока-предсказания.At 905, a prediction block is generated for the current block to be encoded using the adjusted reference block. At 906, the current block is encoded using the generated prediction block.

Фиг.10 иллюстрирует способ декодирования многоракурсных видеопоследовательностей на основе коррекции изменения яркости согласно одному из примеров реализации заявляемого изобретения. Согласно фиг.10 на этапе 1001 выбирают текущий декодируемый блок, принадлежащий текущей единице кодирования. На этапе 1002 определяют опорный блок для текущего декодируемого блока. На этапе 1003 определяют параметры коррекции изменения для коррекции яркости найденного опорного блока. На этапе 1004 выполняют коррекцию значений всех пикселей опорного блока на основе определенных параметров коррекции яркости. При этом определение параметров коррекции яркости и выполнения коррекции яркости включает в себя:Figure 10 illustrates a method for decoding multi-angle video sequences based on the correction of brightness changes according to one example implementation of the claimed invention. 10, in step 1001, a current decoded block belonging to the current coding unit is selected. At step 1002, a reference block is determined for the current decoded block. At 1003, change correction parameters are determined to correct the brightness of the found reference block. At 1004, values of all pixels of the reference block are corrected based on the determined brightness correction parameters. In this case, the determination of the brightness correction parameters and performing the brightness correction includes:

- получение восстановленных (закодированных и затем декодированных) значений пикселей, соседних по отношению к текущему блоку кодируемого кадра, и значений пикселей, соседних по отношению к опорному блоку опорного кадра; при этом получаемые пиксели могут выбираться из одной или более пространственных областей, каждая из которых характеризуется наперед заданной пространственной близостью по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра; выбор указанных областей, являющихся смежными по отношению к текущему блоку кодируемого кадра и текущему опорному блоку опорного кадра, может производиться исходя из типа и размера пространственного преобразования, применяемого впоследствии для кодирования межкадровой разности уже декодированных пикселей, исходя из размеров уже закодированных соседних блоков, а также их логических связей с текущим кодируемым блоком (под логическими связями понимаются определенные объективно существующие зависимости между текущим блоком и соседними блоками, задаваемые, например, методом кодирования. В этом случае подобной связью может быть объединение соседних блоков и текущего кодируемого блока вместе в единый элемент кодирования, для которого задан общий вектор смещения); дополнительно рассчитывается оценка подобия совокупности пикселей, соседних по отношению к кодируемому блоку, и совокупности пикселей, соседних по отношению к опорному блоку. Значение рассчитанной оценки подобия пикселей может использоваться как дополнительное условие при принятии решения об использовании коррекции яркости пикселей опорного блока;- obtaining the restored (encoded and then decoded) pixel values adjacent to the current block of the encoded frame, and pixel values adjacent to the reference block of the reference frame; while the resulting pixels can be selected from one or more spatial regions, each of which is characterized by a predetermined spatial proximity with respect to the current block of the encoded frame and the current reference block of the reference frame; the selection of these areas that are adjacent to the current block of the encoded frame and the current reference block of the reference frame can be made based on the type and size of the spatial transform used subsequently to encode the interframe difference of the already decoded pixels, based on the sizes of neighboring blocks already encoded, and their logical connections with the current block being encoded (logical connections are understood as certain objectively existing dependencies between the current block and the neighboring and blocks specified, for example, by the encoding method. In this case, such a connection can be the combination of neighboring blocks and the current encoded block together into a single encoding element for which a common displacement vector is specified); additionally, an assessment of the similarity of the set of pixels adjacent to the encoded block and the set of pixels adjacent to the reference block is calculated. The value of the calculated pixel similarity score can be used as an additional condition when deciding on the use of pixel brightness correction of the reference block;

- исключение из рассмотрения при определении параметров изменения яркости недостоверных пикселей, которые принадлежат уже декодированным и восстановленным областям опорного и кодируемого кадров и которые отличаются от общей выборки (совокупности) пикселей в указанных областях по заранее заданному критерию, который основан на анализе распределения значений пикселей в указанных областях, расчете статистических характеристик, а также сравнении значений всех проверяемых пикселей и статистических характеристик в указанных областях;- an exception from consideration when determining the parameters for changing the brightness of unreliable pixels that belong to already decoded and reconstructed areas of the reference and encoded frames and which differ from the total sample (set) of pixels in these areas according to a predetermined criterion, which is based on an analysis of the distribution of pixel values in the specified areas, calculation of statistical characteristics, as well as a comparison of the values of all tested pixels and statistical characteristics in these areas;

- определение соотношений между значениями пикселей опорного блока и значениями пикселей, соседних по отношению к опорному блоку, а также соотношений между восстановленными значениями пикселей, соседних по отношению к текущему кодируемому блоку, и значениями пикселей, соседних по отношению к опорному блоку;- determination of the relationship between the pixel values of the reference block and the values of pixels adjacent to the reference block, as well as the ratios between the restored pixel values adjacent to the current encoded block and the pixel values adjacent to the reference block;

- определение числовых соотношений между пикселями опорного блока, достоверными пикселями из окрестности текущего декодируемого блока и достоверными пикселями из окрестности опорного блока;- determination of the numerical relationships between the pixels of the reference block, valid pixels from the vicinity of the current decoded block and reliable pixels from the vicinity of the reference block;

- вычисление значений параметров коррекции яркости на основе найденных числовых соотношений с учетом начальных значений параметров коррекции;- calculation of the values of the brightness correction parameters based on the found numerical relationships taking into account the initial values of the correction parameters;

- оценка изменения значений пикселей опорного блока; в случае, если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.- assessment of changes in the pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.

На этапе 1005 формируют блок-предсказание для текущего декодируемого блока, используя скорректированный опорный блок. На этапе 1006 декодируют текущий блок с помощью сформированного блока-предсказания.In step 1005, a prediction block is generated for the current decoded block using the adjusted reference block. At 1006, the current block is decoded using the generated prediction block.

Указанные выше способы адаптивной компенсации локальных различий яркости при межкадровом предсказании, а также способы кодирования и декодирования многоракурсных видеопоследовательностей, основанные на адаптивной компенсации локальных различий яркости реализуются в виде компьютерной системы. Например, компьютерная система может включать в себя один или несколько процессоров, оперативную память, запоминающее устройство и блок ввода-вывода данных. В этом случае последовательность операций по каждому из указанных выше способов представляется последовательностью команд процессора, которые хранятся в запоминающем устройстве. При поступлении на блок ввода-вывода необходимых данных процессор размещает в оперативной памяти и/или считывает с запоминающего устройства данные, а затем выполняет последовательность команд, хранящихся в запоминающем устройстве, тем самым реализуя один из способов в соответствии с настоящим изобретением.The above methods for adaptive compensation of local differences in brightness during inter-frame prediction, as well as methods for encoding and decoding multi-angle video sequences based on adaptive compensation for local differences in brightness, are implemented as a computer system. For example, a computer system may include one or more processors, RAM, memory, and a data input / output unit. In this case, the sequence of operations for each of the above methods is represented by a sequence of processor instructions that are stored in a storage device. Upon receipt of the necessary data on the input / output unit, the processor places in the RAM and / or reads data from the storage device, and then executes a sequence of instructions stored in the storage device, thereby implementing one of the methods in accordance with the present invention.

Варианты реализации заявляемого изобретения, описанные выше, приведены лишь с целью иллюстрации и не имеют ограничительного характера. Объем охраны изобретения определяется прилагаемой формулой изобретения.The embodiments of the claimed invention described above are provided for purposes of illustration only and are not restrictive. The scope of protection of the invention is determined by the attached claims.

СсылкиReferences

[1] Yea, S.; Vetro, A., «View Synthesis Prediction for Multiview Video Coding», Image Communication, ISSN: 0923-5965, Vol.24, Issue 1-2, pp.89-100, January 2009;[1] Yea, S .; Vetro, A., “View Synthesis Prediction for Multiview Video Coding”, Image Communication, ISSN: 0923-5965, Vol.24, Issue 1-2, pp.89-100, January 2009;

[2] ITU-T Rec. H.264. Advanced video coding for generic audiovisual services. 2010.[2] ITU-T Rec. H.264. Advanced video coding for generic audiovisual services. 2010.

[3] US Patent 7,924,923. Motion Estimation and Compensation Method and Device Adaptive to Change in Illumination. April, 2011.[3] US Patent 7,924,923. Motion Estimation and Compensation Method and Device Adaptive to Change in Illumination. April 2011.

[4] Y.Lee, J.Hur, Y.Lee, R.Han, S.Cho, N.Hur, J.Kim, J.Kim, P.Lai, A.Ortega, Y.Su, P.Yin and C.Gomila. CE11: Illumination compensation. Joint Video Team (JVT) of ISOAEC MPEG and ITU-T VCEG JVT-U052, Oct. 2006.[4] Y. Lee, J. Hur, Y. Lee, R. Han, S. Cho, N. Hur, J. Kim, J. Kim, P. Lai, A. Ortega, Y.Su, P. Yin and C. Gomila. CE11: Illumination compensation. Joint Video Team (JVT) of ISOAEC MPEG and ITU-T VCEG JVT-U052, Oct. 2006.

[5] J.H.Kim, P.Lai, J.Lopez, A.Ortega, Y.Su, P.Yin, and C.Gomila. New coding tools for illumination and focus mismatch compensation in multiview video coding. IEEE Trans, on Circuits and Systems for Video Technology, vol. 17, no.11, pp.1519-1535, Nov. 2007.[5] J. H. Kim, P. Lai, J. Lopez, A. Ortega, Y.Su, P. Yin, and C. Gomila. New coding tools for illumination and focus mismatch compensation in multiview video coding. IEEE Trans, on Circuits and Systems for Video Technology, vol. 17, no.11, pp. 1519-1535, Nov. 2007.

[6] T.Yamamoto, T.Ikai, "Weighted prediction using neighboring pixels," ITU-T Q.6/SG16 VCEG, Proposal VCEG-AH19, January 2008.[6] T. Yamamoto, T. Ikai, "Weighted prediction using neighboring pixels," ITU-T Q.6 / SG16 VCEG, Proposal VCEG-AH19, January 2008.

[7] US Patent Application 2011/0286678. Multi-view Image Coding Method, Multi-view Image Decoding Method, Multi-view Image Coding Device, Multi-view Image Decoding device, Multi-view Image Coding Program, and Multi-view Image Decoding Program. November, 2011.[7] US Patent Application 2011/0286678. Multi-view Image Coding Method, Multi-view Image Decoding Method, Multi-view Image Coding Device, Multi-view Image Decoding device, Multi-view Image Coding Program, and Multi-view Image Decoding Program. November, 2011.

[8] US patent application 2008/0304760. Method and Apparatus for Illumination Compensation and Method and Apparatus for Encoding and Decoding Image Based on Illumination Compensation. December. 2008.[8] US patent application 2008/0304760. Method and Apparatus for Illumination Compensation and Method and Apparatus for Encoding and Decoding Image Based on Illumination Compensation. December. 2008.

[9] Richardson I.E. The H.264 Advanced Video Compression Standard. Second Edition. 2010.[9] Richardson I.E. The H.264 Advanced Video Compression Standard. Second Edition. 2010.

[10] Martucci S.A. «Reversible compression of HDTV images using median adaptive prediction and arithmetic coding», in IEEE Int. Symp. on Circuits and Systems, 1990.[10] Martucci S.A. “Reversible compression of HDTV images using median adaptive prediction and arithmetic coding”, in IEEE Int. Symp on Circuits and Systems, 1990.

Claims (71)

1. Способ адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров в процессе кодирования и декодирования многоракурсной видеопоследовательности, реализуемый компьютерной системой и включающий в себя выполнение следующих операций:
- получают значения пикселей текущего кодируемого блока, принадлежащего кодируемому кадру, и значения пикселей опорного блока, принадлежащего опорному кадру;
- получают восстановленные, то есть закодированные и затем декодированные, значения пикселей, из окрестности текущего кодируемого блока кодируемого кадра и значения пикселей, из окрестности опорного блока опорного кадра;
отличающийся тем, что:
- исключают из рассмотрения пиксели, принадлежащие окрестности текущего кодируемого блока и окрестности опорного блока опорного кадра, которые оцениваются как недостоверные для расчета параметров изменения яркости по заранее заданному, по меньшей мере, одному критерию;
- определяют числовые соотношения между пикселями опорного блока, достоверными пикселями из окрестности текущего кодируемого блока и достоверными пикселями из окрестности опорного блока;
- учитывая начальные значения, вычисляют значения параметров коррекции яркости на основе найденных числовых соотношений;
- оценивают изменение значений пикселей опорного блока; в случае, если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.
1. The method of adaptive compensation of local differences in brightness during inter-frame prediction of frames in the process of encoding and decoding a multi-angle video sequence, implemented by a computer system and includes the following operations:
- get the pixel values of the current encoded block belonging to the encoded frame, and the pixel values of the reference block belonging to the reference frame;
- get restored, that is, encoded and then decoded, the pixel values from the vicinity of the current encoded block of the encoded frame and the pixel values from the neighborhood of the reference block of the reference frame;
characterized in that:
- exclude from consideration the pixels belonging to the vicinity of the current encoded block and the neighborhood of the reference block of the reference frame, which are estimated as invalid for calculating the parameters of the brightness change according to a predetermined at least one criterion;
- determine the numerical relationship between the pixels of the reference block, valid pixels from the vicinity of the current encoded block and reliable pixels from the neighborhood of the reference block;
- taking into account the initial values, the values of the brightness correction parameters are calculated based on the found numerical ratios;
- evaluate the change in pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.
2. Способ по п.1, отличающийся тем, что процедуры определения соотношений для пикселей текущего кодируемого кадра и опорного кадра, определение параметра коррекции изменения яркости, а также коррекция значений пикселей опорного блока включают в себя следующие этапы:
- определяют близлежащую окрестность текущего кодируемого блока и близлежащую окрестность опорного блока, так что пиксели, принадлежащие этим окрестностям, уже восстановлены;
- вычисляют, по меньшей мере, две численных оценки estDi,j и estRi,j для каждого положения (i, j) пикселя в опорном блоке, на основе восстановленных значений T k D
Figure 00000076
пикселей из определенной близлежащей окрестности текущего кодируемого блока и значений T k R
Figure 00000077
пикселей, из определенной близлежащей окрестности опорного блока, где N - число пикселей из определенной близлежащей окрестности текущего кодируемого блока, которое также равно числу пикселей из определенной близлежащей окрестности опорного блока и k=0, …, N-1;
- определяют на основе, по меньшей мере, первой оценки estDi,j второй оценки estRi,j значений Ri,j пикселей опорного блока, восстановленных значений пикселей T k D
Figure 00000078
и T k R
Figure 00000079
параметр коррекции изменения яркости для каждого положения пикселя в опорном блоке;
- выполняют коррекцию значений пикселей опорного блока с помощью параметров коррекции.
2. The method according to claim 1, characterized in that the procedures for determining the ratios for the pixels of the current encoded frame and the reference frame, the determination of the correction parameter of the brightness change, as well as the correction of the pixel values of the reference block include the following steps:
- determine the nearby neighborhood of the current encoded block and the nearby neighborhood of the reference block, so that the pixels belonging to these neighborhoods are already restored;
- calculate at least two numerical estimates estD i, j and estR i, j for each position (i, j) of the pixel in the reference block, based on the restored values T k D
Figure 00000076
pixels from a specific nearby neighborhood of the current encoded block and values T k R
Figure 00000077
pixels, from a certain nearby neighborhood of the reference block, where N is the number of pixels from a certain nearby neighborhood of the current encoded block, which is also equal to the number of pixels from a certain nearby neighborhood of the reference block and k = 0, ..., N-1;
- determined based on at least a first estimate estD i, j of a second estimate estR i, j of values R i, j of pixels of the reference block, the restored pixel values T k D
Figure 00000078
and T k R
Figure 00000079
a brightness correction correction parameter for each pixel position in the reference block;
- perform the correction of the pixel values of the reference block using the correction parameters.
3. Способ по п.2, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке и определения параметров коррекции значений пикселей опорного блока включает в себя выполнение следующих операций:
- задают начальное значение BaseR для первой оценки и начальное значение BaseD для второй оценки так, что BaseR и BaseD либо оба неотрицательные, либо оба неположительные числа;
- вычисляют весовые коэффициенты Wk(i, j), k=0, …, N-1, зависящие от интенсивности пикселя опорного блока в позиции (i, j) и интенсивности пикселя с индексом k=0, …, N-1 из заранее заданной близлежащей окрестности опорного блока;
- вычисляют первую оценку как e s t D i , j = B a s e D + k = 0 _ N 1 W k ( i , j ) × T k D
Figure 00000003
;
- вычисляют вторую оценку как e s t R i , j = B a s e R + k = 0 _ N 1 W k ( i , j ) × T k R
Figure 00000004
;
- в том случае, если вторая оценка estRi,j не равна нулю, определяют параметр коррекции значения каждого пикселя опорного блока как α i , j = e s t D i , j e s t R i , j
Figure 00000080
; в противном случае параметр коррекции αi,j задается равным 1;
- выполняют коррекцию яркости опорного блока путем умножения значения каждого пикселя опорного блока Ri,j на соответствующий параметр коррекции αi,j в случае, если параметр коррекции αi,j не равен 1.
3. The method according to claim 2, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block and determining the correction parameters of the pixel values of the reference block includes the following operations:
- set the initial value of BaseR for the first evaluation and the initial value of BaseD for the second evaluation so that BaseR and BaseD are either both non-negative or both non-positive numbers;
- calculate the weight coefficients W k (i, j), k = 0, ..., N-1, depending on the intensity of the pixel of the reference block at position (i, j) and the intensity of the pixel with the index k = 0, ..., N-1 from a predetermined nearby neighborhood of the support block;
- calculate the first estimate as e s t D i , j = B a s e D + k = 0 _ N - one W k ( i , j ) × T k D
Figure 00000003
;
- calculate the second score as e s t R i , j = B a s e R + k = 0 _ N - one W k ( i , j ) × T k R
Figure 00000004
;
- if the second estimate estR i, j is not equal to zero, the correction parameter of the value of each pixel of the reference block is determined as α i , j = e s t D i , j e s t R i , j
Figure 00000080
; otherwise, the correction parameter α i, j is set to 1;
- carry out the correction of the brightness of the reference block by multiplying the value of each pixel of the reference block R i, j by the corresponding correction parameter α i, j if the correction parameter α i, j is not equal to 1.
4. Способ по п.3, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке и определения параметров коррекции значений каждого пикселя в опорном блоке включает в себя выполнение следующих операций:
- задают начальное значение BaseR для первой оценки и начальное значение BaseD для второй оценки так, что BaseR и BaseD либо оба неотрицательные, либо оба неположительные числа;
- вычисляют весовые коэффициенты Wk(i, j), k=0, …, N-1, зависящие от интенсивности пикселя опорного блока в позиции (i, j) и интенсивности пикселя с индексом k=0, …, N-1 из окрестности опорного блока;
- вычисляют второй набор весовых коэффициентов LK(i, j), k=0…N-1, зависящих от позиции (i, j) пикселя в опорном блоке и индекса k=0, …, N-1;
- вычисляют первую оценку как e s t D i , j = B a s e D + k = 0 _ N 1 W k ( i , j ) × L K ( i , j ) × T k D
Figure 00000007
;
- вычисляют вторую оценку как e s t R i , j = B a s e R + k = 0 _ N 1 W k ( i , j ) × L K ( i , j ) × T k R
Figure 00000008
.
4. The method according to claim 3, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block and determining the correction parameters for the values of each pixel in the reference block includes the following operations:
- set the initial value of BaseR for the first evaluation and the initial value of BaseD for the second evaluation so that BaseR and BaseD are either both non-negative or both non-positive numbers;
- calculate the weight coefficients W k (i, j), k = 0, ..., N-1, depending on the intensity of the pixel of the reference block at position (i, j) and the intensity of the pixel with the index k = 0, ..., N-1 from neighborhood of the reference block;
- calculate the second set of weights L K (i, j), k = 0 ... N-1, depending on the position (i, j) of the pixel in the reference block and the index k = 0, ..., N-1;
- calculate the first estimate as e s t D i , j = B a s e D + k = 0 _ N - one W k ( i , j ) × L K ( i , j ) × T k D
Figure 00000007
;
- calculate the second score as e s t R i , j = B a s e R + k = 0 _ N - one W k ( i , j ) × L K ( i , j ) × T k R
Figure 00000008
.
5. Способ по п.3, отличающийся тем, что параметр коррекции изменения яркости αi,j для каждой позиции (i, j) представляют целым неотрицательным числом, вычисляют коррекцию значения каждого пикселя опорного блока посредством, как минимум, умножения значения каждого пикселя на параметр коррекции изменения яркости и битового сдвига вправо на заранее заданное целое неотрицательное число.5. The method according to claim 3, characterized in that the brightness correction parameter α i, j for each position (i, j) is a non-negative integer, the correction value of each pixel of the reference block is calculated by at least multiplying the value of each pixel by a correction parameter for changing the brightness and bit shift to the right by a predetermined non-negative integer. 6. Способ по п.3, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя выполнение следующих операций:
- вычисляют весовые коэффициенты Wk(i, j), k=0, …, N-1 для каждого положения (i, j) пикселя в опорном блоке, при этом весовой коэффициент Wk(i, j) равен невозрастающей функции от абсолютной разности | R i , j T k R |
Figure 00000010
, что обеспечивает обратно пропорциональное увеличение/уменьшение Wk(i, j) в зависимости от уменьшения/увеличения абсолютной разности.
6. The method according to claim 3, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block includes the following operations:
- calculate the weight coefficients W k (i, j), k = 0, ..., N-1 for each position (i, j) of the pixel in the reference block, while the weight coefficient W k (i, j) is equal to a non-increasing function of the absolute differences | | | R i , j - T k R | | |
Figure 00000010
that provides an inversely proportional increase / decrease W k (i, j) depending on the decrease / increase in the absolute difference.
7. Способ по п.4, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя выполнение следующих операций:
- вычисляют весовые коэффициенты Wk(i, j), k=0, …, N-1 для каждого положения (i, j) пикселя в опорном блоке, при этом весовой коэффициент Wk(i, j) равен невозрастающей функции от абсолютной разности | R i , j T k R |
Figure 00000010
, что обеспечивает обратно пропорциональное увеличение/уменьшение Wk(i, j) в зависимости от уменьшения/увеличения абсолютной разности;
- вычисляют весовые коэффициенты LK(i, j), k=0…N-1 для первой оценки estDi,j и для второй оценки estRi,j для каждого положения (i, j) пикселя в опорном блоке так, что весовой коэффициент LK(i, j) равен невозрастающей функции f расстояния между пикселями R i , j , T K R
Figure 00000081
: L K ( i , j ) = f ( R i , j , T K R )
Figure 00000082
, что обеспечивает обратно пропорциональное увеличение/уменьшение значения LK(i, j) в зависимости от приближения или удаления пикселя T k R ( k = 0, , N 1 )
Figure 00000011
от корректируемого пикселя Ri,j.
7. The method according to claim 4, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block includes the following operations:
- calculate the weight coefficients W k (i, j), k = 0, ..., N-1 for each position (i, j) of the pixel in the reference block, while the weight coefficient W k (i, j) is equal to a non-increasing function of the absolute differences | | | R i , j - T k R | | |
Figure 00000010
that provides an inversely proportional increase / decrease W k (i, j) depending on the decrease / increase in the absolute difference;
- calculate the weight coefficients L K (i, j), k = 0 ... N-1 for the first estimate estD i, j and for the second estimate estR i, j for each position (i, j) of the pixel in the reference block so that the weight coefficient L K (i, j) is equal to a non-increasing function f of the distance between pixels R i , j , T K R
Figure 00000081
: L K ( i , j ) = f ( R i , j , T K R )
Figure 00000082
that provides an inversely proportional increase / decrease in the value of L K (i, j) depending on the approximation or removal of the pixel T k R ( k = 0 ... , N - one )
Figure 00000011
from the corrected pixel R i, j .
8. Способ по любому из пп.3 или 4, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке перед вычислением весовых коэффициентов Wk(i, j), k=0, …, N-1 предусматривает выполнение следующих операций:
- проверяют первое условие достоверности пикселя: | T k R T k D | T h r 1
Figure 00000016
, где Thr1 является первым предопределенным порогом;
- проверяют второе условие достоверности пикселя: | T k R R i , j | T h r 2
Figure 00000018
, где Thr2 является вторым предопределенным порогом;
- исключают из дальнейших расчетов такие пиксели T k R ( k = 0, , N 1 )
Figure 00000011
и T k D ( k = 0, , N 1 )
Figure 00000017
, которые оцениваются как недостоверные для расчета в случае невыполнения, как минимум, одного из двух предусмотренных условий достоверности.
8. The method according to any one of claims 3 or 4, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block before calculating the weight coefficients W k (i, j), k = 0, ..., N-1 provides for the following operations:
- check the first pixel confidence condition: | | | T k R - T k D | | | T h r one
Figure 00000016
where Thr1 is the first predetermined threshold;
- check the second pixel confidence condition: | | | T k R - R i , j | | | T h r 2
Figure 00000018
where Thr2 is the second predetermined threshold;
- exclude such pixels from further calculations T k R ( k = 0 ... , N - one )
Figure 00000011
and T k D ( k = 0 ... , N - one )
Figure 00000017
, which are evaluated as unreliable for calculation in case of failure to fulfill at least one of the two specified conditions of reliability.
9. Способ по п.8, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя выполнение следующих операций:
- задают значения весовых коэффициентов Wk(i, j), k=0, …, N-1 для первой оценки estDi,j и второй оценки estRi,j равными единице для каждого положения (i, j) пикселя в опорном блоке для всех позиций k=0…N-1 таких, что пиксели T k D
Figure 00000083
и T k R
Figure 00000084
оценены как достоверные.
9. The method according to claim 8, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block includes the following operations:
- set the values of the weighting coefficients W k (i, j), k = 0, ..., N-1 for the first estimate estD i, j and the second estimate estR i, j equal to one for each position (i, j) of the pixel in the reference block for all positions k = 0 ... N-1 such that pixels T k D
Figure 00000083
and T k R
Figure 00000084
rated as reliable.
10. Способ по п.6, отличающийся тем, что процедура вычисления первой и второй оценок для каждого положения пикселя в опорном блоке включает в себя выполнение следующей операции:
- вычисляют весовые коэффициенты Wk(i, j), k=0, …, N-1 так, что весовой коэффициент Wk(i, j) равен W k ( i , j ) = e ( C 1 A k ( i , j ) C 2 + C 3 )
Figure 00000019
, где C1, C2, C3 - параметры, задающие нелинейную зависимость весового коэффициента от величины, Ak(i, j) равно A k ( i , j ) = | R i , j T k R |
Figure 00000020
.
10. The method according to claim 6, characterized in that the procedure for calculating the first and second estimates for each pixel position in the reference block includes the following operations:
- calculate the weight coefficients W k (i, j), k = 0, ..., N-1 so that the weight coefficient W k (i, j) is W k ( i , j ) = e ( - C one A k ( i , j ) C 2 + C 3 )
Figure 00000019
, where C1, C2, C3 are parameters defining a nonlinear dependence of the weight coefficient on a quantity, A k (i, j) is A k ( i , j ) = | | | R i , j - T k R | | |
Figure 00000020
.
11. Способ по п.10, отличающийся тем, что весовой коэффициент Wk(i, j) рассчитывают как:
W K ( i , j ) = e C 1 ( R i , j , T K R ) × A K ( i , j ) C 2 ( R i , j , T K R ) + C 3 ( R i , j , T K R )
Figure 00000085
, где C 1 ( R i , j , T K R )
Figure 00000086
, C 2 ( R i , j , T K R )
Figure 00000087
и C 3 ( R i , j , T K R )
Figure 00000088
- параметры, функционально зависящие от расстояния R i , j , T K R
Figure 00000089
, A k ( i , j ) = | R i , j T k R |
Figure 00000090
.
11. The method according to claim 10, characterized in that the weight coefficient W k (i, j) is calculated as:
W K ( i , j ) = e - C one ( R i , j , T K R ) × A K ( i , j ) C 2 ( R i , j , T K R ) + C 3 ( R i , j , T K R )
Figure 00000085
where C one ( R i , j , T K R )
Figure 00000086
, C 2 ( R i , j , T K R )
Figure 00000087
and C 3 ( R i , j , T K R )
Figure 00000088
- parameters functionally dependent on distance R i , j , T K R
Figure 00000089
, A k ( i , j ) = | | | R i , j - T k R | | |
Figure 00000090
.
12. Способ по п.2, отличающийся тем, что положение позиции близлежащей окрестности текущего кодируемого блока и положение близлежащей окрестности опорного блока определяют адаптивно вместо позиций, заданных изначально.12. The method according to claim 2, characterized in that the position position of a nearby neighborhood of the current encoded block and the position of a nearby neighborhood of the reference block are determined adaptively instead of the positions set initially. 13. Способ по п.2, отличающийся тем, что при расчете, по меньшей мере, двух численных оценок estDi,j и estRi,j используют только часть пикселей, расположенных в заранее заданной близлежащей окрестности текущего блока, и соответствующую им часть пикселей в заранее заданной близлежащей окрестности опорного блока, выполняя предварительное прореживание пикселей.13. The method according to claim 2, characterized in that when calculating at least two numerical estimates estD i, j and estR i, j , only a part of the pixels located in a predetermined nearby neighborhood of the current block and the corresponding part of the pixels are used in a predetermined nearby neighborhood of the reference block, performing preliminary thinning pixels. 14. Способ по п.8, отличающийся тем, что исключение недостоверных пикселей, соседних по отношению к кодируемому блоку и недостоверных пикселей, соседних по отношению к опорному блоку, осуществляют путем выполнения следующих дополнительных операций:
- используя все уже восстановленные пиксели T k R ( k = 0, , N 1 )
Figure 00000011
и все уже восстановленные пиксели T k D
Figure 00000025
, k=0, …, N-1, образуют пары ( T k R , T k D )
Figure 00000026
, которые однозначно задаются значением номера пикселя k, затем полученные пары группируют в M непересекающихся групп G0…GM-1, таких что ( T k R , T k D )
Figure 00000027
, k=0…N-1∈{G0∩…G1∩…∩GM-1}, при этом пары пикселей, принадлежащих группе Gi, обозначаются также как { ( T k i R , T k i D ) G i }
Figure 00000028
;
- для каждой группы Gi рассчитывают метрику, которая основана на учете пиксельных различий T k i R
Figure 00000029
и T k i D
Figure 00000030
за исключением различия средних значений всех пикселей T k i R
Figure 00000091
и средних значений всех пикселей T k i D
Figure 00000092
каждой группы Gi;
- для каждой группы Gi рассчитывают метрику, основанную на различиях средних значений всех пикселей T k i R
Figure 00000093
и средних значений всех пикселей T k i D
Figure 00000092
каждой группы Gi;
- рассчитывают общую метрику, обозначаемую MR_Norm, для групп G0…GM-1, которая основана на учете пиксельных различий пикселей T k i R
Figure 00000091
и T k i D
Figure 00000030
по каждой из групп за исключением различий средних значений всех пикселей T k i R
Figure 00000091
и средних значений всех пикселей T k i D
Figure 00000030
каждой группы Gi;
- рассчитывают общую метрику, обозначаемую M_Norm, для групп G0…GM-1, которая основана на учете различия средних значений всех пикселей T k i R
Figure 00000091
и средних значений всех пикселей T k i D
Figure 00000030
каждой группы Gi;
- производят сравнение значений рассчитанных метрик MR_Norm и M_Norm с наперед заданными пороговыми значениями, и в случае, если MR_Norm больше первого заданного порогового значения или M_Norm меньше второго заданного порогового значения, все пиксели, из близлежащей окрестности опорного блока и все пиксели из близлежащей окрестности кодируемого блока считают недостоверными.
14. The method according to claim 8, characterized in that the exclusion of invalid pixels adjacent to the encoded block and invalid pixels adjacent to the reference block is carried out by performing the following additional operations:
- using all already restored pixels T k R ( k = 0 ... , N - one )
Figure 00000011
and all already restored pixels T k D
Figure 00000025
, k = 0, ..., N-1, form pairs ( T k R , T k D )
Figure 00000026
, which are uniquely determined by the value of the pixel number k, then the resulting pairs are grouped into M disjoint groups G0 ... GM-1, such that ( T k R , T k D )
Figure 00000027
, k = 0 ... N-1∈ {G 0 ∩ ... G 1 ∩ ... ∩ G M-1 }, while the pairs of pixels belonging to the group Gi are also denoted as { ( T k i R , T k i D ) G i }
Figure 00000028
;
- for each group Gi, a metric is calculated that is based on the consideration of pixel differences T k i R
Figure 00000029
and T k i D
Figure 00000030
except for the difference in average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000092
each group Gi;
- for each group Gi, a metric is calculated based on differences in the average values of all pixels T k i R
Figure 00000093
and average values of all pixels T k i D
Figure 00000092
each group Gi;
- calculate the general metric, denoted by MR_Norm, for groups G0 ... GM-1, which is based on the consideration of pixel differences in pixels T k i R
Figure 00000091
and T k i D
Figure 00000030
for each of the groups with the exception of differences in the average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000030
each group Gi;
- calculate the general metric, denoted by M_Norm, for groups G0 ... GM-1, which is based on the difference in the average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000030
each group Gi;
- comparing the values of the calculated metrics MR_Norm and M_Norm with predetermined threshold values, and if MR_Norm is greater than the first specified threshold value or M_Norm is less than the second specified threshold value, all pixels from a nearby neighborhood of the reference block and all pixels from a nearby neighborhood of the encoded block consider unreliable.
15. Способ по п.14, отличающийся тем, что для каждой группы Gi рассчитывают метрику MR_Norm(Gi), которая основана на учете пиксельных различий T k i R
Figure 00000091
и T k i D
Figure 00000030
за исключением различия средних значений всех пикселей T k i R
Figure 00000091
и средних значений всех пикселей T k i D
Figure 00000030
каждой группы Gi по формуле:
M R _ N o r m ( G i ) = ( T k i R , T k i D ) G i ( | T k i R T k i D ( T k i R , T k i D ) G i T k i R | G i | + ( T k i R , T k i D ) G i T k i D | G i | | P 1 )
Figure 00000031
,
где значение степенного показателя P1 определяется экспериментально;
- для каждой группы Gi рассчитывают метрику M_Norm(Gi), основанную на различиях между средними значениями всех пикселей T k i R
Figure 00000091
и средними значениями всех пикселей T k i D
Figure 00000030
каждой группы Gi по формуле:
M _ N o r m ( G i ) = ( T k i R , T k i D ) G i ( | ( T k i R , T k i D ) G i T k i R | G i | ( T k i R , T k i D ) G i T k i D | G i | | P 2 )
Figure 00000032
,
где значение степенного показателя P2 определяют экспериментально;
- рассчитывают общую метрику, обозначаемую MR_Norm, для групп G0…GM-1, которая основана на учете пиксельных различий пикселей T k i R
Figure 00000091
и T k i D
Figure 00000030
по каждой из групп за исключением различий между средними значениями всех пикселей T k i R
Figure 00000091
и средними значениями всех пикселей T k i D
Figure 00000030
каждой группы Gi по формуле:
M R _ N o r m = i = 0 M 1 M R _ N o r m ( G i )
Figure 00000033

- рассчитывают общую метрику, обозначаемую M_Norm, для групп G0…GM-1, которая основана на учете различия между средними значениями всех пикселей T k i R
Figure 00000091
и средними значениями всех пикселей T k i D
Figure 00000030
каждой группы Gi по формуле:
M _ N o r m = i = 0 M 1 M _ N o r m ( G i )
Figure 00000034
.
15. The method according to 14, characterized in that for each group Gi the metric MR_Norm (G i ) is calculated, which is based on the consideration of pixel differences T k i R
Figure 00000091
and T k i D
Figure 00000030
except for the difference in average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000030
each Gi group according to the formula:
M R _ N o r m ( G i ) = ( T k i R , T k i D ) G i ( | | | T k i R - T k i D - ( T k i R , T k i D ) G i T k i R | | | G i | | | + ( T k i R , T k i D ) G i T k i D | | | G i | | | | | | P one )
Figure 00000031
,
where the value of the power exponent P1 is determined experimentally;
- for each group Gi, the metric M_Norm (G i ) is calculated based on the differences between the average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000030
each Gi group according to the formula:
M _ N o r m ( G i ) = ( T k i R , T k i D ) G i ( | | | ( T k i R , T k i D ) G i T k i R | | | G i | | | - ( T k i R , T k i D ) G i T k i D | | | G i | | | | | | P 2 )
Figure 00000032
,
where the value of the power exponent P2 is determined experimentally;
- calculate the general metric, denoted by MR_Norm, for groups G0 ... GM-1, which is based on the consideration of pixel differences in pixels T k i R
Figure 00000091
and T k i D
Figure 00000030
for each of the groups, with the exception of differences between the average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000030
each Gi group according to the formula:
M R _ N o r m = i = 0 ... M - one M R _ N o r m ( G i )
Figure 00000033

- calculate the general metric, denoted by M_Norm, for groups G0 ... GM-1, which is based on taking into account the difference between the average values of all pixels T k i R
Figure 00000091
and average values of all pixels T k i D
Figure 00000030
each Gi group according to the formula:
M _ N o r m = i = 0 ... M - one M _ N o r m ( G i )
Figure 00000034
.
16. Способ по п.1, отличающийся тем, что исключают недостоверные пиксели T k R
Figure 00000094
из определенной близлежащей окрестности опорного блока и восстановленные пиксели T k D
Figure 00000095
из определенной близлежащей окрестности текущего кодируемого блока посредством выполнения следующих операций:
- для всех пикселей T k R
Figure 00000096
, удовлетворяющих условию T k R > L R i
Figure 00000039
и T k R < L R i + 1
Figure 00000040
, пиксели T k D
Figure 00000097
, которые соответствуют пикселям T k R
Figure 00000096
, исходя из их порядкового номера k=0…N-1 и пространственного положения в опорном и кодируемом кадрах, объединяют в группы, обозначаемые B(LRi, LRi+1):
B ( L R i , L R i + 1 ) = { T k D k = 0 N 1 : T k R > L R i T k R < L R i + 1 }
Figure 00000041
,
при этом величины LRi, LRi+1 определяют границы диапазона, задающего группу B(LRi, LRi+1) и удовлетворяют условию LRi>-1; LRi+1>Ri, количество групп B(LRi, LRi+1); NB задает максимально возможное значение индекса i, используемого при нумерации величин (LRi, LRi+1): -1<LR0<LR0<LR0…<LRNB;
- для каждой группы B(LRi, LRi+1), задаваемой величинами (LRi, LRi+1), рассчитывают следующие величины:
C _ P l u s ( L R i , L R i + 1 ) = T k D B ( L R i , L R i + 1 ) { 1, T k R T k D + T h r 5 0, T k R < T k D + T h r 5
Figure 00000042

C _ M i n u s ( L R i , L R i + 1 ) = T k D B ( L R i , L R i + 1 ) { 1, T k R T k D T h r 5 0, T k R > T k D T h r 5
Figure 00000043
,
где Thr5 - наперед заданное или определяемое адаптивно в процессе обработки кадра пороговое значение,
- для каждого пикселя T k D B ( L R i , L R i + 1 )
Figure 00000044
группы B(LRi, LRi+1) проверяют верность следующих трех условий:
- условие 1:
| C _ P l u s ( L R i , L R i + 1 ) C _ M i n u s ( L R i , L R i + 1 ) | < T h r 6
Figure 00000098
;
- условие 2:
C _ P l u s ( L R i , L R i + 1 ) C _ M i n u s ( L R i , L R i + 1 ) > = T h r 6 A N D T k R T k D + T h r 5
Figure 00000046
;
- условие 3:
C _ P l u s ( L R i , L R i + 1 ) C _ M i n u s ( L R i , L R i + 1 ) < = T h r 6 A N D T k R T k D T h r 5
Figure 00000047

в том случае, если верно одно из проверяемых условий 1…3 для очередного рассматриваемого пикселя T k D B ( L R i , L R i + 1 )
Figure 00000044
группы B(LRi, LRi+1), рассматриваемый пиксель T k D B ( L R i , L R i + 1 )
Figure 00000044
считается достоверным.
16. The method according to claim 1, characterized in that exclude unreliable pixels T k R
Figure 00000094
from a specific nearby neighborhood of the reference block and recovered pixels T k D
Figure 00000095
from a certain nearby neighborhood of the current encoded block by performing the following operations:
- for all pixels T k R
Figure 00000096
satisfying the condition T k R > L R i
Figure 00000039
and T k R < L R i + one
Figure 00000040
pixels T k D
Figure 00000097
that match the pixels T k R
Figure 00000096
based on their serial number k = 0 ... N-1 and the spatial position in the reference and encoded frames, are combined into groups denoted by B (LR i , LR i + 1 ):
B ( L R i , L R i + one ) = { T k D k = 0 ... N - one : T k R > L R i T k R < L R i + one }
Figure 00000041
,
the values LR i , LR i + 1 determine the boundaries of the range defining the group B (LR i , LR i + 1 ) and satisfy the condition LR i >-1; LR i + 1 > R i , the number of groups B (LR i , LR i + 1 ); N B sets the maximum possible value of the index i used in the numbering of quantities (LR i , LR i + 1 ): -1 <LR 0 <LR 0 <LR 0 ... <LR NB ;
- for each group B (LR i , LR i + 1 ) defined by the values (LR i , LR i + 1 ), the following values are calculated:
C _ P l u s ( L R i , L R i + one ) = T k D B ( L R i , L R i + one ) { one, T k R T k D + T h r 5 0 T k R < T k D + T h r 5
Figure 00000042

C _ M i n u s ( L R i , L R i + one ) = T k D B ( L R i , L R i + one ) { one, T k R T k D - T h r 5 0 T k R > T k D - T h r 5
Figure 00000043
,
where Thr5 is the threshold value specified in advance or determined adaptively during the processing of the frame,
- for each pixel T k D B ( L R i , L R i + one )
Figure 00000044
groups B (LR i , LR i + 1 ) verify the following three conditions:
- condition 1:
| | | C _ P l u s ( L R i , L R i + one ) - C _ M i n u s ( L R i , L R i + one ) | | | < T h r 6
Figure 00000098
;
- condition 2:
C _ P l u s ( L R i , L R i + one ) - C _ M i n u s ( L R i , L R i + one ) > = T h r 6 A N D T k R T k D + T h r 5
Figure 00000046
;
- condition 3:
C _ P l u s ( L R i , L R i + one ) - C _ M i n u s ( L R i , L R i + one ) < = - T h r 6 A N D T k R T k D - T h r 5
Figure 00000047

in the event that one of the checked conditions 1 ... 3 is true for the next pixel in question T k D B ( L R i , L R i + one )
Figure 00000044
group B (LR i , LR i + 1 ), the pixel in question T k D B ( L R i , L R i + one )
Figure 00000044
considered reliable.
17. Способ по п.16, отличающийся тем, что выполняют следующие операции:
- для всех пикселей T k R
Figure 00000099
, удовлетворяющих условию T k R > L R i
Figure 00000039
и T k R < L R i + 1
Figure 00000040
, пиксели T k D
Figure 00000100
, которые соответствуют пикселям T k R
Figure 00000101
, исходя из их порядкового номера k=0…N-1 и пространственного положения в опорном и кодируемом кадрах, объединяют в группы, обозначаемые B(LRi, LRi+1):
B ( L R i , L R i + 1 ) = { T k D k = 0 N 1 : T k R > L R i T k R < L R i + 1 }
Figure 00000102
,
при этом величины LRi, LRi+1 определяют границы диапазона, задающего группу B(LRi, LRi+1) и удовлетворяют условию LRi>-1; LRi+1>LRi, количество групп B(LRi, LRi+1) NB задает максимально возможное значение индекса i, используемого при нумерации величин (LRi, LRi+1): -1<LR0<LR0<LR0…<LRNB;
- для всех пикселей T k D
Figure 00000103
, принадлежащих группе B(LRi, LRi+1), рассчитывают следующие величины:
○ среднее значение Mean(B(LRi, LRi+1)) по группе B(LRi, LRi+1):
M e a n ( B ( L R i , L R i + 1 ) ) = T k D B ( L R i , L R i + 1 ) ( T k D ) | B ( L R i , L R i + 1 ) |
Figure 00000055
,
где |B(LRi, LRi+1)| обозначает количество пикселей в группе B(LRi, LRi+1),
○ среднее отклонение Dev(B(LRi, LRi+1)) значений пикселей в группе B(LRi, LRi+1):
D e v ( B ( L R i , L R i + 1 ) ) = T k D B ( L R i , L R i + 1 ) ( T k D M e a n ( B ( L R i , L R i + 1 ) ) ) 2 | B ( L R i , L R i + 1 ) |
Figure 00000104
;
в том случае, если для очередного рассматриваемого пикселя T k D B ( L R i , L R i + 1 )
Figure 00000044
группы B(LRi, LRi+1), модуль разности между его значением и средним значением по группе B(LRi, LRj) оказывается больше, чем значение Dev(B(LRi, LRj)), умноженное на величину, большую 0, задающее совместно допустимый разброс в группе B(LRi, LRj), рассматриваемый пиксель T k D B ( L R i , L R i + 1 )
Figure 00000044
считается недостоверным.
17. The method according to clause 16, characterized in that the following operations are performed:
- for all pixels T k R
Figure 00000099
satisfying the condition T k R > L R i
Figure 00000039
and T k R < L R i + one
Figure 00000040
pixels T k D
Figure 00000100
that match the pixels T k R
Figure 00000101
based on their serial number k = 0 ... N-1 and the spatial position in the reference and encoded frames, are combined into groups denoted by B (LRi, LR i + 1 ):
B ( L R i , L R i + one ) = { T k D k = 0 ... N - one : T k R > L R i T k R < L R i + one }
Figure 00000102
,
the values LR i , LR i + 1 determine the boundaries of the range defining the group B (LR i , LR i + 1 ) and satisfy the condition LR i >-1; LR i + 1 > LR i , the number of groups B (LR i , LR i + 1 ) N B sets the maximum possible value of the index i used for numbering the quantities (LR i , LR i + 1 ): -1 <LR 0 <LR 0 <LR 0 ... <LR NB ;
- for all pixels T k D
Figure 00000103
belonging to group B (LR i , LR i + 1 ), the following values are calculated:
○ mean value of Mean (B (LR i , LR i + 1 )) for group B (LR i , LR i + 1 ):
M e a n ( B ( L R i , L R i + one ) ) = T k D B ( L R i , L R i + one ) ( T k D ) | | | B ( L R i , L R i + one ) | | |
Figure 00000055
,
where | B (LR i , LR i + 1 ) | denotes the number of pixels in group B (LR i , LR i + 1 ),
○ average deviation Dev (B (LR i , LR i + 1 )) of pixel values in group B (LR i , LR i + 1 ):
D e v ( B ( L R i , L R i + one ) ) = T k D B ( L R i , L R i + one ) ( T k D - M e a n ( B ( L R i , L R i + one ) ) ) 2 | | | B ( L R i , L R i + one ) | | |
Figure 00000104
;
if for the next pixel in question T k D B ( L R i , L R i + one )
Figure 00000044
of group B (LR i , LR i + 1 ), the modulus of the difference between its value and the average value of group B (LR i , LR j ) is greater than the value Dev (B (LR i , LR j )) times greater than 0, which defines the jointly acceptable spread in group B (LR i , LR j ), the pixel in question T k D B ( L R i , L R i + one )
Figure 00000044
deemed unreliable.
18. Способ по п.17, отличающийся тем, что среднее отклонение Dev(B(LRi, LRi+1)) значений пикселей в группе B(LRi, LRi+1) рассчитывают по формуле:
D e v ( B ( L R i , L R j ) ) = T k D B ( L R i , L R j ) | T k D M e a n ( B ( L R i , L R j ) ) | | B ( L R i , L R j ) |
Figure 00000058
.
18. The method according to 17, characterized in that the average deviation Dev (B (LR i , LR i + 1 )) of the pixel values in group B (LR i , LR i + 1 ) is calculated by the formula:
D e v ( B ( L R i , L R j ) ) = T k D B ( L R i , L R j ) | | | T k D - M e a n ( B ( L R i , L R j ) ) | | | | | | B ( L R i , L R j ) | | |
Figure 00000058
.
19. Способ по п.2, отличающийся тем, что:
- оценивают возможное изменение каждого значения пикселя опорного блока на основе заранее заданного численного критерия и уже рассчитанных, как минимум, двух оценок estDi,j и estRi,j определяя его как существенное или несущественное в зависимости от рассчитанного значения численного критерия.
19. The method according to claim 2, characterized in that:
- evaluate the possible change in each pixel value of the reference block based on a predetermined numerical criterion and at least two estimates estD i, j and estR i, j already calculated, determining it as significant or non-essential depending on the calculated value of the numerical criterion.
20. Способ по п.19, отличающийся тем, что если первая оценка estDi,j и вторая оценка estRi,j таковы, что выполняется равенство: EstRi,j+Δ1>>Qbits1==EstDi,j+Δ1>>Qbits1, где Qbits1 и Δ1 - неотрицательные целые числа, то степень коррекции оценивают как несущественную.20. The method according to claim 19, characterized in that if the first estimate estD i, j and the second estimate estR i, j are such that the equality holds: EstR i, j + Δ1 >> Qbits 1 == EstD i, j + Δ1 >> Qbits 1 , where Qbits 1 and Δ1 are non-negative integers, the degree of correction is estimated as insignificant. 21. Способ по п.19, отличающийся тем, что если первая оценка estDi,j и вторая оценка estRi,j таковы, что выполняется равенство: (|EstDi,j-EstRi,j|+Δ2)>>Qbits2==0, где Obits2 и Δ2 - неотрицательные целые числа, то степень коррекции оценивают как несущественную.21. The method according to claim 19, characterized in that if the first estimate estD i, j and the second estimate estR i, j are such that the equality holds: ( | EstD i, j -EstR i, j |  + Δ2)>> Qbits 2 == 0, where Obits 2 and Δ2 are non-negative integers, the degree of correction is estimated as insignificant. 22. Способ по п.19, отличающийся тем, что если первая оценка estDi,j и вторая оценка estRi,j таковы, что выполняется неравенство: Δ3×EstRi,j<EstDi,j<Δ4×EstRi,j, где Δ3, Δ4 - заранее заданные неотрицательные числа, то степень коррекции оценивают как несущественную.22. The method according to claim 19, characterized in that if the first estimate estD i, j and the second estimate estR i, j are such that the following inequality holds: Δ3 × EstR i, j <EstD i, j <Δ4 × EstR i, j , where Δ3, Δ4 are predefined non-negative numbers, the degree of correction is estimated as insignificant. 23. Способ адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров в процессе кодирования и декодирования многоракурсной видеопоследовательности, реализуемый компьютерной системой и включающий в себя выполнение следующих операций:
- получают значения пикселей текущего кодируемого блока, принадлежащего кодируемому кадру, и значения пикселей опорного блока, принадлежащего опорному кадру;
- получают восстановленные, то есть закодированные и затем декодированные, значения пикселей, из окрестности текущего блока кодируемого кадра и значения пикселей из окрестности опорного блока опорного кадра;
отличающийся тем, что:
- исключают из рассмотрения пиксели, которые оцениваются как недостоверные для расчета параметров изменения яркости по заранее заданному, по меньшей мере, одному критерию и которые принадлежат окрестности текущего блока кодируемого кадра и окрестности опорного блока опорного кадра;
- учитывая начальные значения и используя только достоверные пиксели, вычисляют параметры коррекции яркости;
- оценивают изменение значений пикселей опорного блока; в случае, если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.
23. A method of adaptive compensation of local differences in brightness during inter-frame prediction of frames in the process of encoding and decoding a multi-angle video sequence, implemented by a computer system and including the following operations:
- get the pixel values of the current encoded block belonging to the encoded frame, and the pixel values of the reference block belonging to the reference frame;
- receive restored, that is, encoded and then decoded, pixel values from the vicinity of the current block of the encoded frame and pixel values from the neighborhood of the reference block of the reference frame;
characterized in that:
- exclude from consideration pixels that are estimated to be inaccurate for calculating brightness change parameters according to a predetermined at least one criterion and which belong to a neighborhood of the current block of the encoded frame and a neighborhood of the reference block of the reference frame;
- taking into account the initial values and using only reliable pixels, the brightness correction parameters are calculated;
- evaluate the change in pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.
24. Способ по п.23, отличающийся тем, что вычисление параметров коррекции яркости включает в себя выполнение следующих операций:
- вычисляют, по меньшей мере, две численных оценки EstD и EstR на основе восстановленных значений T k D
Figure 00000105
пикселей из окрестности текущего кодируемого блока и значений T k R
Figure 00000106
пикселей из окрестности опорного блока, где N - число пикселей, соседних по отношению к текущему кодируемому и опорным блокам, k=0, …, N-1;
- определяют на основе, по меньшей мере, первой и второй оценки EstD и EstR параметр коррекции яркости всех пикселей опорного блока.
24. The method according to item 23, wherein the calculation of the brightness correction parameters includes the following operations:
- calculate at least two numerical estimates EstD and EstR based on the restored values T k D
Figure 00000105
pixels from the neighborhood of the current block being encoded and values T k R
Figure 00000106
pixels from the vicinity of the reference block, where N is the number of pixels adjacent to the current encoded and reference blocks, k = 0, ..., N-1;
- determining, on the basis of at least the first and second estimates EstD and EstR, a brightness correction parameter of all pixels of the reference block.
25. Способ по п.24, отличающийся тем, что процедура вычисления первой и второй оценок включает в себя выполнение следующих операций:
- задают начальное значение BaseR для первой оценки и начальное значение BaseD для второй оценки так, что BaseR и BaseD либо оба неотрицательные, либо оба неположительные целые числа;
- вычисляют первую оценку e s t D = B a s e D + k = 0 _ N 1 T k D
Figure 00000107
, где T k D
Figure 00000108
, k=0, …, N-1 - восстановленные значения пикселей, из определенной близлежащей окрестности текущего кодируемого блока, N - число пикселей в заранее заданной близлежащей окрестности кодируемого блока;
- вычисляют вторую оценку e s t R = B a s e R + k = 0 _ N 1 T k R
Figure 00000109
, где и T k D
Figure 00000110
, k=0, …, N-1 - значения пикселей, из определенной близлежащей окрестности опорного блока;
- в том случае, если BaseR равно нулевому значению и вторая оценка EstR не равна нулю, или BaseR не равно нулевому значению, определяют параметр коррекции яркости как отношение α = E s t D E s t R
Figure 00000111
;
- в том случае, если BaseR равно нулевому значению и вторая оценка EstR равна нулю, параметр α задается равным 1;
- выполняют коррекцию яркости опорного блока путем умножения значения каждого пикселя опорного блока Ri,j на определенный параметр коррекции яркости α в случае, если параметр α отличен от 1.
25. The method according to paragraph 24, wherein the procedure for calculating the first and second estimates includes the following operations:
- set the initial value of BaseR for the first evaluation and the initial value of BaseD for the second evaluation so that BaseR and BaseD are either both non-negative or both non-positive integers;
- calculate the first score e s t D = B a s e D + k = 0 _ N - one T k D
Figure 00000107
where T k D
Figure 00000108
, k = 0, ..., N-1 - restored pixel values from a specific nearby neighborhood of the current encoded block, N - number of pixels in a predetermined nearby neighborhood of the encoded block;
- calculate the second score e s t R = B a s e R + k = 0 _ N - one T k R
Figure 00000109
where and T k D
Figure 00000110
, k = 0, ..., N-1 - pixel values, from a certain nearby neighborhood of the reference block;
- if BaseR is equal to zero and the second EstR estimate is not equal to zero, or if BaseR is not equal to zero, the brightness correction parameter is determined as the ratio α = E s t D E s t R
Figure 00000111
;
- if BaseR is equal to zero and the second EstR estimate is zero, the parameter α is set to 1;
- perform the correction of the brightness of the reference block by multiplying the values of each pixel of the reference block R i, j by a certain brightness correction parameter α if the parameter α is different from 1.
26. Способ по п.23, отличающийся тем, что:
- определяют окрестность текущего кодируемого блока как близлежащую, так что она непосредственно прилегает к кодируемому блоку, и пиксели, входящие в нее, уже восстановлены;
- определяют окрестность опорного блока как близлежащую, так что она непосредственно окружает опорный блок, пиксели, входящие в нее, уже восстановлены, общее количество пикселей совпадает с общим количеством пикселей в заданной окрестности текущего кодируемого блока, и между пикселями окрестности опорного блока и пикселями окрестности текущего кодируемого блока установлено взаимно-однозначное соответствие:
e s t D = B a s e D + k = 0 _ N 1 T k D E s t R = B a s e R + k = 0 _ N 1 T k R
Figure 00000112
T k R
Figure 00000113
, k=0, …, N-1 α α α.
26. The method according to item 23, wherein:
- determine the vicinity of the current encoded block as nearby, so that it is directly adjacent to the encoded block, and the pixels included in it are already restored;
- determine the neighborhood of the reference block as nearby, so that it directly surrounds the reference block, the pixels included in it are already restored, the total number of pixels coincides with the total number of pixels in a given neighborhood of the current block being encoded, and between the pixels of the neighborhood of the reference block and the pixels of the neighborhood of the current the block being encoded a one-to-one correspondence is established:
e s t D = B a s e D + k = 0 _ N - one T k D E s t R = B a s e R + k = 0 _ N - one T k R
Figure 00000112
T k R
Figure 00000113
, k = 0, ..., N-1 α α α.
27. Способ по п.26, отличающийся тем, что положение окрестности текущего кодируемого блока и положение окрестности опорного блока определяют адаптивно вместо близлежащих расположений окрестностей заданных относительно соответствующих блоков в кодируемом и опорном кадрах.27. The method according to p. 26, characterized in that the position of the vicinity of the current encoded block and the position of the neighborhood of the reference block is determined adaptively instead of nearby locations of the neighborhoods specified relative to the corresponding blocks in the encoded and reference frames. 28. Способ по п.26, отличающийся тем, что:
- оценивают возможные изменения значений пикселей опорного блока на основе заранее заданного численного критерия и уже рассчитанных как минимум двух оценок EstD, EstR, определяя их как существенные или несущественные в зависимости от рассчитанного значения численного критерия.
28. The method according to p, characterized in that:
- evaluate possible changes in the pixel values of the reference block based on a predetermined numerical criterion and already calculated at least two estimates EstD, EstR, determining them as significant or insignificant depending on the calculated value of the numerical criterion.
29. Способ по п.28, отличающийся тем, что, если первая оценка EstD и вторая оценка EstR таковы, что выполняется равенство: (EstR+Δ1)>>Qbits1==(EstD+Δ1)>>Qbits1, где Qbits1 и Δ1 - неотрицательные целые числа, степень коррекции оценивается как несущественная.29. The method according to p. 28, characterized in that if the first estimate of EstD and the second estimate of EstR are such that the equality holds: (EstR + Δ1) >> Qbits 1 == (EstD + Δ1) >> Qbits 1 , where Qbits 1 and Δ1 are non-negative integers, the degree of correction is estimated as insignificant. 30. Способ по п.28, отличающийся тем, что, если первая оценка EstD и вторая оценка EstR таковы, что выполняется равенство: (|EstD-EstR|+Δ2)>>Qbits2==0, где Qbits2 и Δ2 - неотрицательные целые числа, степень коррекции оценивается как несущественная.30. The method according to p. 28, characterized in that if the first estimate of EstD and the second estimate of EstR are such that the equality holds: (| EstD-EstR | + Δ2) >> Qbits 2 == 0, where Qbits 2 and Δ2 - non-negative integers, the degree of correction is estimated as insignificant. 31. Способ по п.28, отличающийся тем, что, если первая оценка EstD и вторая оценка EstR таковы, что выполняется неравенство: Δ3×EstR<EstD<Δ4×EstR, где Δ3, Δ4 - неотрицательные целые числа, степень коррекции оценивается как несущественная.31. The method according to p. 28, characterized in that if the first estimate of EstD and the second estimate of EstR are such that the following inequality holds: Δ3 × EstR <EstD <Δ4 × EstR, where Δ3, Δ4 are non-negative integers, the degree of correction is estimated as inconsequential. 32. Способ по п.23, отличающийся тем, что параметр коррекции яркости α в целях упрощения представляют целым неотрицательным числом, таким что коррекция значения каждого пикселя вычисляется как минимум умножением каждого значения пикселя на целое неотрицательное число, представляющее параметр коррекции яркости в целочисленном виде для всех пикселей опорного блока и битовым сдвигом вправо на другое заранее заданное целое неотрицательное число.32. The method according to item 23, wherein the brightness correction parameter α, for simplicity, is a non-negative integer such that the correction of each pixel value is calculated by at least multiplying each pixel value by a non-negative integer representing the integer brightness correction parameter for all pixels of the reference block and a bit shift to the right by another predetermined non-negative integer. 33. Способ по п.23, отличающийся тем, что:
- оценивают пиксели T k R
Figure 00000114
, T k D
Figure 00000115
как недостоверные, если для значения k=0…N-1 не выполняется неравенство | T k R T k D | T h r 1
Figure 00000116
, где величина Thr1 является заранее заданным численным порогом;
- исключают из дальнейших расчетов пиксели T k R
Figure 00000117
, T k D
Figure 00000118
, которые оценены как недостоверные.
33. The method according to item 23, wherein:
- rate pixels T k R
Figure 00000114
, T k D
Figure 00000115
as unreliable if for the value k = 0 ... N-1 the inequality | | | T k R - T k D | | | T h r one
Figure 00000116
where Thr1 is a predetermined numerical threshold;
- exclude pixels from further calculations T k R
Figure 00000117
, T k D
Figure 00000118
which are rated as unreliable.
34. Способ по п.23, отличающийся тем, что при получении восстановленных значений пикселей из окрестностей текущего и опорного блоков выполняют прореживание по заранее заданному шаблону.34. The method according to item 23, wherein when obtaining the restored pixel values from the vicinity of the current and reference blocks, thinning is performed according to a predetermined pattern. 35. Способ кодирования многоракурсных видеопоследовательностей, основанный на адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров, в котором кодируемый кадр представляется совокупностью неперекрывающихся областей пикселей, выступающих в роли единиц кодирования, при этом способ реализуется компьютерной системой и включает в себя выполнение следующих операций:
- выбирают текущий кодируемый блок, принадлежащий текущей единице кодирования;
- определяют, как минимум, один опорный блок, который используется для формирования блока-предсказания для текущего кодируемого блока и пиксели которого уже полностью закодированы и декодированы;
- определяют параметры коррекции яркости опорного блока;
- выполняют коррекцию яркости, корректируя значения всех пикселей опорного блока на основе определенных параметров коррекции яркости;
- формируют блок-предсказание для текущего кодируемого блока, используя скорректированный опорный блок:
- кодируют текущий блок с помощью сформированного блока-предсказания;
отличающийся тем, что этапы определения параметров коррекции яркости и выполнения коррекции яркости включают в себя следующее:
- получают восстановленные, то есть закодированные и затем декодированные, значения пикселей, из окрестности текущего блока кодируемого кадра и значения пикселей из окрестности опорного блока опорного кадра;
- исключают из рассмотрения пиксели, которые оцениваются как недостоверные для расчета параметров коррекции яркости по заранее заданному, по меньшей мере, одному критерию и которые принадлежат окрестности текущего блока кодируемого кадра и окрестности опорного блока опорного кадра;
- вычисляют параметры коррекции яркости, учитывая начальные значения и используя только достоверные пиксели;
- оценивают изменение значений пикселей опорного блока; в случае, если изменение оценивается как существенное, выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции.
35. The method of encoding multi-angle video sequences, based on adaptive compensation of local differences in brightness during inter-frame prediction of frames, in which the encoded frame is a set of non-overlapping areas of pixels acting as coding units, the method being implemented by a computer system and includes the following operations:
- choose the current encoded block belonging to the current coding unit;
- determine at least one reference block, which is used to generate a prediction block for the current block being encoded and whose pixels are already fully encoded and decoded;
- determine the brightness correction parameters of the reference block;
- perform brightness correction by adjusting the values of all pixels of the reference block based on certain brightness correction parameters;
- form a prediction block for the current encoded block using the adjusted reference block:
- encode the current block using the generated prediction block;
characterized in that the steps of determining brightness correction parameters and performing brightness correction include the following:
- receive restored, that is, encoded and then decoded, pixel values from the vicinity of the current block of the encoded frame and pixel values from the neighborhood of the reference block of the reference frame;
- exclude from consideration pixels that are estimated to be inaccurate for calculating brightness correction parameters according to a predetermined at least one criterion and which belong to a neighborhood of the current block of the encoded frame and a neighborhood of the reference block of the reference frame;
- calculate the brightness correction parameters, taking into account the initial values and using only reliable pixels;
- evaluate the change in pixel values of the reference block; if the change is assessed as significant, correct the pixel values of the reference block using the found correction parameters.
36. Способ по п.35, отличающийся тем, что при выборе текущего кодируемого блока, принадлежащего текущей единице кодирования, определяют размер текущего кодируемого блока, а также относительное расположение и размер окрестности кодируемого и опорного блоков, пиксели которых используются для расчета параметров коррекции на основании параметров кодирования текущей единицы кодирования.36. The method according to p. 35, characterized in that when selecting the current encoded block belonging to the current coding unit, determine the size of the current encoded block, as well as the relative location and size of the neighborhood of the encoded and reference blocks, the pixels of which are used to calculate correction parameters based on encoding parameters of the current encoding unit. 37. Способ по п.36, отличающийся тем, что размер текущего кодируемого блока, а также относительное расположение и размер окрестности кодируемого и опорного блоков, пиксели которых используются для расчета параметров коррекции, определяют исходя из типа применяемого декоррелирующего преобразования.37. The method according to clause 36, wherein the size of the current encoded block, as well as the relative location and size of the neighborhood of the encoded and reference blocks, the pixels of which are used to calculate the correction parameters, is determined based on the type of decorrelation transformation used. 38. Способ по п.36, отличающийся тем, что размер текущего кодируемого блока определяют на основании заранее заданного деления единицы кодирования на подблоки, имеющие отдельные векторы движения.38. The method according to clause 36, wherein the size of the current encoded block is determined based on a predetermined division of the coding unit into subunits having separate motion vectors. 39. Способ по п.36, отличающийся тем, что размер текущего кодируемого блока должен быть меньше, чем размер подблока, который принадлежит текущей единице кодирования и имеет отдельный вектор движения.39. The method according to clause 36, wherein the size of the current encoded block must be less than the size of the sub-block, which belongs to the current coding unit and has a separate motion vector. 40. Способ по п.35, отличающийся тем, что при выборе текущего кодируемого блока, принадлежащего текущей единице кодирования явно определяют и кодируют в потоке размер текущего кодируемого блока.40. The method according to clause 35, wherein when selecting the current encoded block belonging to the current coding unit, the size of the current encoded block is explicitly determined and encoded in the stream. 41. Способ по п.35, отличающийся тем, что при определении опорного блока, который используется для формирования блока-предсказания для текущего кодируемого блока, из всех опорных кадров, используемых для поиска опорного блока, выбирают только один опорный кадр по заранее определенным правилам; при этом не кодируют информацию о выбранном опорном кадре.41. The method according to p. 35, characterized in that when determining the reference block, which is used to generate the prediction block for the current encoded block, from all the reference frames used to search for the reference block, only one reference frame is selected according to predetermined rules; they do not encode information about the selected reference frame. 42. Способ по п.41, отличающийся тем, что при выборе только одного опорного кадра выбирают синтезированный кадр для текущего ракурса с той же самой меткой времени, что и кодируемый кадр.42. The method according to paragraph 41, wherein when selecting only one reference frame, a synthesized frame is selected for the current view with the same time stamp as the encoded frame. 43. Способ по п.41, отличающийся тем, что при выборе только одного опорного кадра выбирают опорный кадр, принадлежащий одному из соседних ракурсов и имеющий ту же самую метку времени, что и кодируемый кадр.43. The method according to paragraph 41, wherein when selecting only one reference frame, a reference frame belonging to one of the neighboring views and having the same time stamp as the encoded frame is selected. 44. Способ по п.35, отличающийся тем, что при определении опорного блока, который используется для формирования блока-предсказания для текущего кодируемого блока, определяют вектор движения на основании функции сходства, которая дополнительно учитывает различия в средних уровнях яркости текущего кодируемого блока и опорного блока-кандидата.44. The method according to clause 35, wherein when determining the reference block, which is used to generate the prediction block for the current encoded block, determine the motion vector based on the similarity function, which further takes into account differences in the average brightness levels of the current encoded block and the reference candidate block. 45. Способ по п.44, отличающийся тем, что при определении вектора движения, вычисляют функцию сходства следующим образом:
- разбивают на подблоки кодируемый блок и опорный блок, при этом размеры подблоков не превышают размеров кодируемого и опорного блоков;
- вычисляются средний уровень яркости для каждого подблока кодируемого и опорного блока;
- корректируют каждый подблок кодируемого и опорного блока; для этого вычитают из каждого пикселя подблока соответствующий ему средний уровень яркости;
- вычисляют сумму абсолютных разностей скорректированного опорного и скорректированного кодируемого блока;
- вычисляют сумму абсолютных разностей для средних уровней всех подблоков опорного и кодируемого блока;
- рассчитывают показатель сходства как сумму абсолютных разностей средних уровней подблоков, умноженную на первое неотрицательное число, прибавленную к сумме абсолютных разностей скорректированных блоков, умноженной на второе неотрицательное число.
45. The method according to item 44, wherein in determining the motion vector, calculate the similarity function as follows:
- the coded block and the reference block are divided into subblocks, while the sizes of the subblocks do not exceed the sizes of the coded and reference blocks;
- the average brightness level for each sub-block of the encoded and reference block is calculated;
- adjust each sub-block of the encoded and reference block; for this, the average brightness level corresponding to it is subtracted from each pixel of the subblock;
- calculate the sum of the absolute differences of the adjusted reference and the corrected encoded block;
- calculate the sum of the absolute differences for the average levels of all sub-blocks of the reference and encoded block;
- calculate the similarity index as the sum of the absolute differences of the average levels of the subunits, multiplied by the first non-negative number, added to the sum of the absolute differences of the adjusted blocks, multiplied by the second non-negative number.
46. Способ по п.35, отличающийся тем, что определяют опорный блок с помощью вектора смещения, при этом ограничивают максимально возможное расстояние между вектором смещения и прогнозом вектора смещения так, что разница горизонтальных компонент вектора смещения и прогноза вектора смещения, называемая горизонтальной проекцией, и разница вертикальных компонент вектора смещения и прогноза вектора, называемая вертикальной проекцией смещения, имеют различные ограничения.46. The method according to clause 35, wherein the reference block is determined using the displacement vector, while limiting the maximum possible distance between the displacement vector and the prediction of the displacement vector so that the difference of the horizontal components of the displacement vector and the forecast of the displacement vector, called horizontal projection, and the difference between the vertical components of the displacement vector and the forecast of the vector, called the vertical projection of the displacement, have various limitations. 47. Способ по п.46, отличающийся тем, что при определении ограничений для горизонтальной проекции и вертикальной проекции ограничение вертикальной проекции не превышает ограничений для горизонтальной проекции.47. The method according to item 46, wherein in determining the restrictions for horizontal projection and vertical projection, the restriction of vertical projection does not exceed the restrictions for horizontal projection. 48. Способ по п.35, отличающийся тем, что при кодировании текущего блока с помощью сформированного блока-предсказания, кодируют дополнительный синтаксический элемент для единицы кодирования, которой принадлежит кодируемый блок; значение синтаксического элемента определяет, существенны изменения значений пикселей опорных блоков единицы кодирования, или нет.48. The method according to clause 35, wherein when encoding the current block using the generated prediction block, an additional syntax element is encoded for the encoding unit to which the encoded block belongs; the value of the syntax element determines whether changes in the pixel values of the reference blocks of the coding unit are significant or not. 49. Способ по п.35, отличающийся тем, что при кодировании текущего блока с помощью сформированного блока-предсказания кодируют по одному дополнительному синтаксическому элементу для каждого подблока единицы кодирования, который может иметь уникальный индекс опорного кадра в данной единице кодирования; значение синтаксического элемента определяет, существенны изменения значений пикселей опорного блока или нет.49. The method according to claim 35, characterized in that when encoding the current block using the generated prediction block, one additional syntax element is encoded for each coding unit sub-block, which may have a unique reference frame index in a given coding unit; the value of the syntax element determines whether changes in the pixel values of the reference block are significant or not. 50. Способ по п.35, отличающийся тем, что при кодировании текущего блока с помощью сформированного блока-предсказания для единицы кодирования, которой принадлежит кодируемый блок, кодируют дополнительный синтаксический элемент, значение которого может принимать как минимум два значения; при одном значении закодированного дополнительного синтаксического элемента при определении опорного блока используют прогнозирование вектора движения, адаптированное к способу коррекции значений пикселей опорного блока и выполняют вычисление параметров коррекции яркости и коррекцию значений пикселей опорного блока; при другом значении закодированного дополнительного синтаксического элемента при определении опорного блока используют стандартное прогнозирование вектора движения и не выполняют вычисление параметров коррекции яркости и коррекцию значений пикселей опорного блока.50. The method according to p. 35, characterized in that when encoding the current block using the generated prediction block for the encoding unit to which the encoded block belongs, an additional syntax element is encoded, the value of which can take at least two values; when one value of the encoded additional syntax element is used when determining the reference block, motion vector prediction is used, adapted to the method of correcting pixel values of the reference block and calculating brightness correction parameters and correcting pixel values of the reference block; at a different value of the encoded additional syntax element, the standard prediction of the motion vector is used to determine the reference block and the brightness correction parameters and the correction of the pixel values of the reference block are not calculated. 51. Способ по п.50, отличающийся тем, что прогнозирование вектора движения, адаптированное к способу коррекции значений пикселей опорного блока, выполняется только в опорном кадре соседнего вида.51. The method according to p. 50, characterized in that the prediction of the motion vector, adapted to the method of correction of pixel values of the reference block, is performed only in the reference frame of the neighboring view. 52. Способ по п.51, отличающийся тем, что прогнозирование вектора движения, выполняется с использованием ранее найденных векторов движения, указывающих в опорный кадр соседнего вида и с использованием уже закодированных карт глубин.52. The method according to 51, wherein the motion vector prediction is performed using previously found motion vectors pointing to a reference frame of a neighboring view and using already encoded depth maps. 53. Способ по п.35, отличающийся тем, что при кодировании текущего блока вычисленные параметры коррекции яркости не кодируются.53. The method according to clause 35, wherein when encoding the current block, the calculated brightness correction parameters are not encoded. 54. Способ по п.35, отличающийся тем, что вычисляют дополнительные параметры коррекции яркости на основе значений пикселей опорного блока и пикселей кодируемого блока, которые используются для коррекции значений пикселей опорного блока, и при кодировании текущего блока кодируют дополнительные параметры коррекции яркости с использованием параметров коррекции яркости, вычисленных на основе восстановленных значений пикселей из окрестности кодируемого блока и значений пикселей из окрестности опорного блока.54. The method according to clause 35, wherein additional brightness correction parameters are calculated based on the pixel values of the reference block and the pixels of the encoded block, which are used to correct the pixel values of the reference block, and when encoding the current block, additional brightness correction parameters are encoded using the parameters correction of brightness calculated on the basis of the restored pixel values from the vicinity of the encoded block and pixel values from the vicinity of the reference block. 55. Способ декодирования многоракурсных видеопоследовательностей, основанный на адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров, в котором декодируемый кадр представляется совокупностью неперекрывающихся областей пикселей, выступающих в роли единиц кодирования, при этом способ реализуется компьютерной системой и включает в себя выполнение следующих операций:
- выбирают текущий декодируемый блок, принадлежащий текущей единице кодирования;
- определяют опорный блок для текущего декодируемого блока;
- определяют параметры коррекции изменения для коррекции яркости найденного опорного блока;
- выполняют коррекцию яркости, корректируя значения всех пикселей опорного блока на основе определенных параметров коррекции яркости;
- формируют блок-предсказание для текущего декодируемого блока, используя скорректированный опорный блок;
- декодируют текущий блок с помощью сформированного блока-предсказания;
отличающийся тем, что этапы определения параметров коррекции яркости и выполнения коррекции яркости включают в себя следующее:
- получают восстановленные, то есть закодированные и затем декодированные, значения пикселей, из окрестности текущего блока декодируемого кадра и значения пикселей из окрестности опорного блока опорного кадра;
- исключают из рассмотрения пиксели, принадлежащие окрестности текущего декодируемого блока и окрестности опорного блока опорного кадра, которые оцениваются как недостоверные для расчета параметров изменения яркости по заранее заданному, по меньшей мере, одному критерию;
- учитывая начальные значения, вычисляют значения параметров коррекции яркости на основе найденных числовых соотношений;
- выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции в том случае, если изменения значений пикселей опорного блока оцениваются как существенные.
55. The method of decoding multi-angle video sequences, based on adaptive compensation of local differences in brightness during inter-frame prediction of frames, in which the decoded frame is a set of non-overlapping areas of pixels acting as coding units, the method being implemented by a computer system and includes the following operations:
- choose the current decoded block belonging to the current coding unit;
- determine the reference block for the current decoded block;
- determine the correction parameters of the change to correct the brightness of the found reference block;
- perform brightness correction by adjusting the values of all pixels of the reference block based on certain brightness correction parameters;
- form a prediction block for the current decoded block using the adjusted reference block;
- decode the current block using the generated prediction block;
characterized in that the steps of determining brightness correction parameters and performing brightness correction include the following:
- receive restored, that is, encoded and then decoded, pixel values from the vicinity of the current block of the decoded frame and pixel values from the neighborhood of the reference block of the reference frame;
- exclude from consideration the pixels belonging to the vicinity of the current decoded block and the neighborhood of the reference block of the reference frame, which are estimated as invalid for calculating the parameters of the brightness change according to a predetermined at least one criterion;
- taking into account the initial values, the values of the brightness correction parameters are calculated based on the found numerical ratios;
- carry out the correction of the pixel values of the reference block using the found correction parameters in the event that changes in the pixel values of the reference block are evaluated as significant.
56. Способ по п.55, отличающийся тем, что при выборе текущего декодируемого блока, принадлежащего текущей единице кодирования, определяют размер текущего декодируемого блока, а также относительное расположение и размер окрестности декодируемого и опорного блоков, пиксели которых используются для расчета параметров коррекции на основании параметров кодирования текущей единицы кодирования.56. The method according to item 55, wherein when selecting the current decoded block belonging to the current coding unit, determine the size of the current decoded block, as well as the relative location and size of the neighborhood of the decoded and reference blocks, the pixels of which are used to calculate correction parameters based on encoding parameters of the current encoding unit. 57. Способ по п.56, отличающийся тем, что размер текущего декодируемого блока, а также относительное расположение и размер окрестности декодируемого и опорного блоков, пиксели которых используются для расчета параметров коррекции, определяют исходя из типа применяемого декоррелирующего преобразования.57. The method according to p. 56, characterized in that the size of the current decoded block, as well as the relative location and size of the neighborhood of the decoded and reference blocks, the pixels of which are used to calculate the correction parameters, are determined based on the type of decorrelation transformation used. 58. Способ по п.56, отличающийся тем, что размер текущего декодируемого блока определяют на основании заранее заданного деления единицы кодирования на подблоки, имеющие отдельные векторы движения.58. The method according to p, characterized in that the size of the current decoded block is determined based on a predetermined division of the coding unit into subunits having separate motion vectors. 59. Способ по п.56, отличающийся тем, что размер текущего декодируемого блока должен быть меньше, чем размер подблока, который принадлежит текущей единице кодирования и имеет отдельный вектор движения.59. The method according to p, characterized in that the size of the current decoded block should be less than the size of the sub-block, which belongs to the current coding unit and has a separate motion vector. 60. Способ по п.55, отличающийся тем, что при выборе текущего декодируемого блока, принадлежащего текущей единице кодирования, определяют размер текущего декодируемого блока на основании декодированной информации из входного битового потока.60. The method according to item 55, wherein when selecting the current decoded block belonging to the current coding unit, determine the size of the current decoded block based on the decoded information from the input bit stream. 61. Способ по п.55, отличающийся тем, что при определении опорного блока, который используется для формирования блока-предсказания для текущего декодируемого блока, из всех опорных кадров, выбирают только один опорный кадр по заранее определенным правилам; при этом информация о выбранном опорном кадре не содержится во входном битовом потоке.61. The method according to item 55, wherein in determining the reference block, which is used to generate the prediction block for the current decoded block, from all the reference frames, only one reference frame is selected according to predetermined rules; however, information about the selected reference frame is not contained in the input bitstream. 62. Способ по п.61, отличающийся тем, что при выборе опорного кадра выбирают синтезированный кадр для текущего ракурса с той же самой меткой времени, что и декодируемый кадр.62. The method according to p, characterized in that when selecting a reference frame, a synthesized frame is selected for the current view with the same time stamp as the decoded frame. 63. Способ по п.61, отличающийся тем, что при выборе опорного кадра выбирают опорный кадр, принадлежащий одному из соседних ракурсов, и имеющий ту же самую метку времени, что и декодируемый кадр.63. The method according to p, characterized in that when selecting a reference frame select a reference frame belonging to one of the neighboring angles, and having the same time stamp as the decoded frame. 64. Способ по п.55, отличающийся тем, что при декодировании текущего блока с помощью сформированного блока-предсказания декодируют дополнительный синтаксический элемент для единицы кодирования, которой принадлежит декодируемый блок; значение синтаксического элемента определяет, существенны изменения значений пикселей опорных блоков единицы кодирования или нет.64. The method according to claim 55, characterized in that when decoding the current block using the generated prediction block, an additional syntax element is decoded for the coding unit to which the decoded block belongs; the value of the syntax element determines whether significant changes in the pixel values of the reference blocks of the coding unit or not. 65. Способ по п.55, отличающийся тем, что при декодировании текущего блока с помощью сформированного блока-предсказания декодируют по одному дополнительному синтаксическому элементу для каждого подблока единицы кодирования, который может иметь уникальный индекс опорного кадра в данной единице кодирования; значение синтаксического элемента определяет, существенны изменения значений пикселей опорного блока или нет.65. The method according to claim 55, characterized in that when decoding the current block using the generated prediction block, one additional syntax element is decoded for each coding unit sub-block, which may have a unique reference frame index in a given coding unit; the value of the syntax element determines whether changes in the pixel values of the reference block are significant or not. 66. Способ по п.55, отличающийся тем, что при декодировании текущего блока с помощью сформированного блока-предсказания для единицы кодирования, которой принадлежит декодируемый блок, декодируют дополнительный синтаксический элемент, значение которого может принимать, как минимум, два значения, при одном из которых при определении опорного блока используют прогнозирование вектора движения, адаптированное к способу коррекции значений пикселей опорного блока, и выполняют вычисление параметров коррекции яркости и коррекцию значений пикселей опорного блока; при другом значении декодированного дополнительного синтаксического элемента при определении опорного блока используют стандартное прогнозирование вектора движения и не выполняют вычисление параметров коррекции яркости и коррекцию значений пикселей опорного блока.66. The method according to claim 55, characterized in that when decoding the current block using the generated prediction block, an additional syntax element is decoded for the coding unit to which the decoded block belongs, the value of which can take at least two values, with one of which, in determining the reference block, motion vector prediction is used, adapted to the method of correcting pixel values of the reference block, and the brightness correction parameters are calculated and pixel values are corrected leu support block; for a different value of the decoded additional syntax element, the standard prediction of the motion vector is used to determine the reference block and the calculation of the brightness correction parameters and the correction of the pixel values of the reference block are not performed. 67. Способ по п.66, отличающийся тем, что прогнозирование вектора движения, адаптированное к способу коррекции значений пикселей опорного блока, выполняют только в опорном кадре соседнего вида.67. The method according to p, characterized in that the prediction of the motion vector, adapted to the method of correction of pixel values of the reference block, is performed only in the reference frame of the neighboring view. 68. Способ по п.66, отличающийся тем, что прогнозирование вектора движения выполняют с использованием ранее найденных векторов движения, указывающих в опорный кадр соседнего вида и с использованием уже закодированных карт глубин.68. The method according to p, characterized in that the prediction of the motion vector is performed using previously found motion vectors pointing to the reference frame of a neighboring view and using already encoded depth maps. 69. Способ по п.55, отличающийся тем, что при декодировании текущего блока информация о параметрах коррекции яркости не содержится во входном битовом потоке.69. The method according to item 55, wherein when decoding the current block, information about the brightness correction parameters is not contained in the input bit stream. 70. Способ по п.55, отличающийся тем, что при декодировании текущего блока декодируют дополнительные параметры коррекции яркости, расположенные во входном битовом потоке, с использованием параметров коррекции яркости, вычисленных на основе восстановленных значений пикселей, из окрестности кодируемого блока значений пикселей из окрестности опорного блока.70. The method according to claim 55, characterized in that, when decoding the current block, additional brightness correction parameters located in the input bitstream are decoded using the brightness correction parameters calculated based on the restored pixel values from a neighborhood of the encoded block of pixel values from a reference neighborhood block. 71. Способ декодирования многоракурсных видеопоследовательностей, основанный на адаптивной компенсации локальных различий яркости при межкадровом предсказании кадров, в котором декодируемый кадр представляется совокупностью неперекрывающихся областей пикселей, называемых единицами кодирования, при этом способ реализуется компьютерной системой и включает в себя выполнение следующих операций:
- выбирают текущий декодируемый блок, принадлежащий текущей единице кодирования;
- определяют опорный блок для текущего декодируемого блока;
- определяют параметры коррекции изменения для коррекции яркости найденного опорного блока;
- выполняют коррекцию яркости, корректируя значения всех пикселей опорного блока на основе определенных параметров коррекции яркости;
- формируют блок-предсказание для текущего декодируемого блока, используя скорректированный опорный блок;
- декодируют текущий блок с помощью сформированного блока-предсказания;
отличающийся тем, что этапы определения параметров коррекции яркости и выполнения коррекции яркости включают в себя следующее:
- получают восстановленные, то есть закодированные и затем декодированные, значения пикселей, из окрестности текущего блока декодируемого кадра и значения пикселей из окрестности опорного блока опорного кадра;
- исключают из рассмотрения пиксели, принадлежащие окрестности текущего декодируемого блока и окрестности опорного блока опорного кадра, которые оцениваются как недостоверные для расчета параметров изменения яркости по заранее заданному, по меньшей мере, одному критерию;
- определяют числовые соотношения между пикселями опорного блока, достоверными пикселями из окрестности текущего декодируемого блока и достоверными пикселями из окрестности опорного блока;
- учитывая начальные значения, вычисляют значения параметров коррекции яркости на основе найденных числовых соотношений;
- выполняют коррекцию значений пикселей опорного блока, используя найденные параметры коррекции в том случае, если изменения значений пикселей опорного блока оцениваются как существенные.
71. A method for decoding multi-angle video sequences based on adaptive compensation of local differences in brightness during inter-frame prediction of frames, in which the decoded frame is a set of non-overlapping areas of pixels called coding units, the method being implemented by a computer system and includes the following operations:
- choose the current decoded block belonging to the current coding unit;
- determine the reference block for the current decoded block;
- determine the correction parameters of the change to correct the brightness of the found reference block;
- perform brightness correction by adjusting the values of all pixels of the reference block based on certain brightness correction parameters;
- form a prediction block for the current decoded block using the adjusted reference block;
- decode the current block using the generated prediction block;
characterized in that the steps of determining brightness correction parameters and performing brightness correction include the following:
- receive restored, that is, encoded and then decoded, pixel values from the vicinity of the current block of the decoded frame and pixel values from the neighborhood of the reference block of the reference frame;
- exclude from consideration the pixels belonging to the vicinity of the current decoded block and the neighborhood of the reference block of the reference frame, which are estimated as invalid for calculating the parameters of the brightness change according to a predetermined at least one criterion;
- determine the numerical relationship between the pixels of the reference block, valid pixels from the vicinity of the current decoded block and reliable pixels from the neighborhood of the reference block;
- taking into account the initial values, the values of the brightness correction parameters are calculated based on the found numerical ratios;
- carry out the correction of the pixel values of the reference block using the found correction parameters in the event that changes in the pixel values of the reference block are evaluated as significant.
RU2012157008/08A 2012-12-26 2012-12-26 Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions) RU2533852C2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
RU2012157008/08A RU2533852C2 (en) 2012-12-26 2012-12-26 Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions)
KR1020130140504A KR102257886B1 (en) 2012-12-26 2013-11-19 Method of encoding/decoding of multiview video sequence based on adaptive compensation of local illumination mismatches at interframe prediction
US14/140,183 US9615089B2 (en) 2012-12-26 2013-12-24 Method of encoding and decoding multiview video sequence based on adaptive compensation of local illumination mismatch in inter-frame prediction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2012157008/08A RU2533852C2 (en) 2012-12-26 2012-12-26 Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions)

Publications (2)

Publication Number Publication Date
RU2012157008A RU2012157008A (en) 2014-07-10
RU2533852C2 true RU2533852C2 (en) 2014-11-20

Family

ID=51215476

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2012157008/08A RU2533852C2 (en) 2012-12-26 2012-12-26 Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions)

Country Status (2)

Country Link
KR (1) KR102257886B1 (en)
RU (1) RU2533852C2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2680197C1 (en) * 2015-06-05 2019-02-18 Телефонактиеболагет Лм Эрикссон (Пабл) Input video sequence pixel encoding
RU2689426C1 (en) * 2015-05-15 2019-05-28 Хуавэй Текнолоджиз Ко., Лтд. Method of video image encoding, method of video image decoding, encoding device and decoding device

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019194498A1 (en) * 2018-04-01 2019-10-10 엘지전자 주식회사 Inter prediction mode-based image processing method and device therefor
US10992938B2 (en) * 2018-09-28 2021-04-27 Ati Technologies Ulc Spatial block-level pixel activity extraction optimization leveraging motion vectors
CN111526362B (en) * 2019-02-01 2023-12-29 华为技术有限公司 Inter-frame prediction method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2189120C2 (en) * 1996-09-09 2002-09-10 Сони Корпорейшн Image coding and decoding
US20060274956A1 (en) * 2005-06-03 2006-12-07 Samsung Electronics Co., Ltd. Intraprediction method and apparatus using video symmetry and video encoding and decoding method and apparatus
US20080240238A1 (en) * 2007-03-28 2008-10-02 Tomonobu Yoshino Intra prediction system of video encoder and video decoder
RU2377737C2 (en) * 2004-07-20 2009-12-27 Квэлкомм Инкорпорейтед Method and apparatus for encoder assisted frame rate up conversion (ea-fruc) for video compression
RU2402885C2 (en) * 2005-03-10 2010-10-27 Квэлкомм Инкорпорейтед Classification of content for processing multimedia data
RU2426267C2 (en) * 2007-01-08 2011-08-10 Нокиа Корпорейшн Improved inter-layer prediction for extended spatial scalability in video coding
US20110235708A1 (en) * 2010-03-27 2011-09-29 Hyung Joon Kim Method and System for Detecting Global Brightness Change for Weighted Prediction in Video Encoding

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100856411B1 (en) * 2006-12-01 2008-09-04 삼성전자주식회사 Method and apparatus for compensating illumination compensation and method and apparatus for encoding moving picture based on illumination compensation, and method and apparatus for encoding moving picture based on illumination compensation
KR101244917B1 (en) * 2007-06-11 2013-03-18 삼성전자주식회사 Method and apparatus for compensating illumination compensation and method and apparatus for encoding and decoding video based on illumination compensation
CN101911705B (en) 2007-12-28 2012-08-29 夏普株式会社 Moving image encoder and moving image decoder
KR101187580B1 (en) * 2008-06-02 2012-10-02 삼성전자주식회사 Method and apparatus for compensating illumination compensation and method and apparatus for encoding moving picture based on illumination compensation, and method and apparatus for encoding moving picture based on illumination compensation

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2189120C2 (en) * 1996-09-09 2002-09-10 Сони Корпорейшн Image coding and decoding
RU2377737C2 (en) * 2004-07-20 2009-12-27 Квэлкомм Инкорпорейтед Method and apparatus for encoder assisted frame rate up conversion (ea-fruc) for video compression
RU2402885C2 (en) * 2005-03-10 2010-10-27 Квэлкомм Инкорпорейтед Classification of content for processing multimedia data
US20060274956A1 (en) * 2005-06-03 2006-12-07 Samsung Electronics Co., Ltd. Intraprediction method and apparatus using video symmetry and video encoding and decoding method and apparatus
RU2426267C2 (en) * 2007-01-08 2011-08-10 Нокиа Корпорейшн Improved inter-layer prediction for extended spatial scalability in video coding
US20080240238A1 (en) * 2007-03-28 2008-10-02 Tomonobu Yoshino Intra prediction system of video encoder and video decoder
US20110235708A1 (en) * 2010-03-27 2011-09-29 Hyung Joon Kim Method and System for Detecting Global Brightness Change for Weighted Prediction in Video Encoding

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2689426C1 (en) * 2015-05-15 2019-05-28 Хуавэй Текнолоджиз Ко., Лтд. Method of video image encoding, method of video image decoding, encoding device and decoding device
US10390036B2 (en) 2015-05-15 2019-08-20 Huawei Technologies Co., Ltd. Adaptive affine motion compensation unit determing in video picture coding method, video picture decoding method, coding device, and decoding device
US10887618B2 (en) 2015-05-15 2021-01-05 Huawei Technologies Co., Ltd. Adaptive affine motion compensation unit determining in video picture coding method, video picture decoding method, coding device, and decoding device
US11490115B2 (en) 2015-05-15 2022-11-01 Huawei Technologies Co., Ltd. Adaptive affine motion compensation unit determining in video picture coding method, video picture decoding method, coding device, and decoding device
US11949908B2 (en) 2015-05-15 2024-04-02 Huawei Technologies Co., Ltd. Adaptive affine motion compensation unit determining in video picture coding method, video picture decoding method, coding device, and decoding device
RU2680197C1 (en) * 2015-06-05 2019-02-18 Телефонактиеболагет Лм Эрикссон (Пабл) Input video sequence pixel encoding
US10841597B2 (en) 2015-06-05 2020-11-17 Telefonaktiebolaget Lm Ericsson (Publ) Encoding a pixel of an input video sequence

Also Published As

Publication number Publication date
RU2012157008A (en) 2014-07-10
KR20140085300A (en) 2014-07-07
KR102257886B1 (en) 2021-05-28

Similar Documents

Publication Publication Date Title
RU2510944C2 (en) Method of encoding/decoding multi-view video sequence based on adaptive local adjustment of brightness of key frames without transmitting additional parameters (versions)
US11546627B2 (en) Moving picture decoding method and moving picture encoding method
US7856053B2 (en) Image coding control method and device
US8385628B2 (en) Image encoding and decoding method, apparatuses therefor, programs therefor, and storage media for storing the programs
KR101944289B1 (en) Encoding method and device, decoding method and device, and computer readable storage medium
US8040948B2 (en) Method and system for coding moving image signals, corresponding computer program product
RU2533852C2 (en) Method of encoding/decoding multiview video sequence based on adaptive compensation of local illumination mismatches with interframe prediction (versions)
US20130243085A1 (en) Method of multi-view video coding and decoding based on local illumination and contrast compensation of reference frames without extra bitrate overhead
JP5553979B2 (en) Selection of coding tools for video coding based on human visual tolerance
JP2013509063A (en) Method for coding a block of an image sequence and method for reconstructing this block
KR20100043857A (en) Video encoding/decoding apparatus, and method and apparatus of adaptive overlapped block motion compensation using adaptive weights
US9615089B2 (en) Method of encoding and decoding multiview video sequence based on adaptive compensation of local illumination mismatch in inter-frame prediction
US20140126644A1 (en) A Method a Decoder and Encoder for Processing a Motion Vector
CN101313581A (en) Method and device for coding a video image
US20120207212A1 (en) Visually masked metric for pixel block similarity
KR20110067539A (en) Method and apparatus for video coding and decoding using intra prediction
RU2493668C1 (en) Method of encoding/decoding multi-view video sequence based on local adjustment of brightness and contract of reference frames without transmitting additional service data
JP5043849B2 (en) Variable shape motion estimation in video sequences
JP7185467B2 (en) Image decoding device, image encoding device, image processing system and program
JP2007116206A (en) Device and method for evaluating image, image encoding method, and image encoder
JP2011055245A (en) Motion vector estimating method and image processing apparatus using the method, image processing method and image processing program