RU2360287C1 - Method of space-time anisotropic bilateral filtration of video signals - Google Patents

Method of space-time anisotropic bilateral filtration of video signals Download PDF

Info

Publication number
RU2360287C1
RU2360287C1 RU2007134335/09A RU2007134335A RU2360287C1 RU 2360287 C1 RU2360287 C1 RU 2360287C1 RU 2007134335/09 A RU2007134335/09 A RU 2007134335/09A RU 2007134335 A RU2007134335 A RU 2007134335A RU 2360287 C1 RU2360287 C1 RU 2360287C1
Authority
RU
Russia
Prior art keywords
pixel
filtering
current pixel
current
result
Prior art date
Application number
RU2007134335/09A
Other languages
Russian (ru)
Other versions
RU2007134335A (en
Inventor
Сергей Михайлович СЕДУНОВ (RU)
Сергей Михайлович Седунов
Артем Константинович ИГНАТОВ (RU)
Артем Константинович Игнатов
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 RU2007134335/09A priority Critical patent/RU2360287C1/en
Publication of RU2007134335A publication Critical patent/RU2007134335A/en
Application granted granted Critical
Publication of RU2360287C1 publication Critical patent/RU2360287C1/en

Links

Images

Landscapes

  • Image Processing (AREA)
  • Picture Signal Circuits (AREA)

Abstract

FIELD: information technology.
SUBSTANCE: present invention relates to methods and devices for processing video signals and images, and particularly to methods and devices for suppressing noise in video signals and images. The method involves selecting the first region around the current pixel; selecting two lines (horizontal and vertical) through the current pixel and pixels in the region of the current pixel; determining the horizontal gradient; determining the vertical gradient; determining the correlation matrix for the horizontal and vertical gradients, as well as eigenvectors and eigen values of the correlation matrix; determining the number of contours; determining direction of the object contour into the image; calculating weighted coefficients of the time filter; calculating adaptation coefficients of the time and bilateral filters to the power of contours, carrying out time filtering; determining the second region; dividing the second region into two sub-regions along the direction of the contour; carrying out bilateral filtration for the first and second sub-regions; calculating the result of bilateral filtration as a weighted sum of results of filtering the first and second sub-ranges; carrying out approximation of the current pixel using pixels located along the direction of the contour; calculating the final result of filtration as a weighted sum of results of bilateral filtration and approximation along the contour.
EFFECT: wider functionality and improved quality of suppressing different types of noises.
5 cl, 2 dwg

Description

Изобретение относится к способам и устройствам обработки видеосигналов и изображений, а именно к способам и устройствам подавления шумов в видеосигналах и изображениях.The invention relates to methods and devices for processing video signals and images, and in particular to methods and devices for suppressing noise in video signals and images.

Проблема подавления шумов в видеосигналах и изображениях является одной из самых важных задач в сфере обработки видеосигналов и изображений. Подавление шумов может применяться как для улучшения видеосигналов и изображений, так и для специфической предварительной обработки видеосигналов и изображений. Существует множество методов для решения проблемы шумоподавления. Многие хорошие решения для шумоподавления основываются на сложных итерационных процедурах, но они являются неприменимыми для обработки видеосигналов вследствие чрезмерных вычислений. Среди неитерационных методов метод билатеральной фильтрации показывает хорошие результаты, при этом метод имеет умеренную сложность. Билатеральный фильтр - это нелинейный фильтр, в котором вес каждого пикселя вычисляется путем перемножения ядра фильтра нижних частот, например гауссиана, в пространственной области на функцию влияния в яркостной области, которая уменьшает вес пикселя с большой разностью по яркости. Данный фильтр очень хорошо сохраняет детали по сравнению с фильтрами, оперирующими только в пространственной области.The problem of noise suppression in video signals and images is one of the most important tasks in the field of processing video signals and images. Noise reduction can be used both to improve video signals and images, and for specific pre-processing of video signals and images. There are many methods to solve the noise reduction problem. Many good noise reduction solutions are based on complex iterative procedures, but they are not suitable for processing video signals due to excessive computations. Among non-iteration methods, the bilateral filtration method shows good results, while the method has moderate complexity. A bilateral filter is a non-linear filter in which the weight of each pixel is calculated by multiplying the core of a low-pass filter, such as a Gaussian, in the spatial domain by the influence function in the brightness domain, which reduces the weight of the pixel with a large difference in brightness. This filter preserves details very well compared to filters operating only in the spatial domain.

Одним из эффективных решений для билатеральной фильтрации является способ, предложенный в патенте США №7146059 [1]. В описанном способе выполняют быструю билатеральную фильтрацию и используют ее для отображения изображений с большим динамическим диапазоном. Разделяют изображение на базовый слой, который кодирует масштабные изменения, и слой деталей. В базовом слое уменьшают контраст изображения, сохраняя при этом детали изображения. Базовый слой получают при помощи билатерального фильтра, сохраняющего грани. Ускорение билатеральной фильтрации получают, используя кусочно-линейную аппроксимацию в яркостной области и соответствующую дискретизацию. К недостаткам способа можно отнести то, что способ разработан для фильтрации изображений и не учитывает временную природу видеосигналов. Если применить этот способ к видео сигналам, это приведет к эффекту мерцания. Также способ не подавляет некоторые виды шумов, такие как артефакты сжатия и шумы сенсора камеры.One effective solution for bilateral filtration is the method proposed in US patent No. 7146059 [1]. In the described method perform fast bilateral filtering and use it to display images with a large dynamic range. Separate the image into a base layer, which encodes large-scale changes, and a detail layer. In the base layer, image contrast is reduced while maintaining image details. The base layer is obtained using a bilateral filter that preserves faces. Acceleration of bilateral filtering is obtained using a piecewise linear approximation in the luminance region and corresponding sampling. The disadvantages of the method include the fact that the method is designed to filter images and does not take into account the temporal nature of video signals. Applying this method to video signals will cause a flicker effect. Also, the method does not suppress certain types of noise, such as compression artifacts and camera sensor noise.

В выложенной заявке на патент США №2005/0025378 [2], которая наиболее близка по замыслу к предлагаемому изобретению, описан способ билатеральной фильтрации, в котором сигнал пикселя корректируют путем прибавления билатерального поправочного члена к исходному сигналу пикселя. Билатеральный поправочный член - это функция локальных разностей сигнала между центральным пикселем ядра фильтра и его соседями. Билатеральный поправочный член вычисляют, используя эффективную, с точки зрения вычислений, аппроксимацию, основанную на разложении в ряд Тейлора выражения нормализации. К недостаткам способа можно отнести то, что способ разработан для фильтрации изображений и не учитывает временную природу видеосигналов. Если применить этот способ к видеосигналам, это приведет к эффекту мерцания. Также способ не подавляет некоторые виды шумов, такие как артефакты сжатия и шумы сенсора камеры.U.S. Patent Application Laid-Open No. 2005/0025378 [2], which is closest in concept to the present invention, describes a bilateral filtering method in which a pixel signal is corrected by adding a bilateral correction term to the original pixel signal. The bilateral correction term is a function of the local differences of the signal between the central pixel of the filter core and its neighbors. The bilateral correction term is calculated using an efficient, from the point of view of calculations, approximation based on the expansion in the Taylor series of the normalization expression. The disadvantages of the method include the fact that the method is designed to filter images and does not take into account the temporal nature of video signals. Applying this method to video signals will cause a flicker effect. Also, the method does not suppress certain types of noise, such as compression artifacts and camera sensor noise.

Задача, на решение которой направлено заявляемое изобретение, заключается в разработке способа адаптивной пространственно-временной анизотропной билатеральной фильтрации видеосигналов с расширенной функциональностью, а именно с возможностью обработки видеокадров в соответствии с их структурой, рассчитанной при помощи вычисления направления контуров и их силы, с возможностью адаптации уровня фильтрации в зависимости от структуры изображения, с возможностью подавления шумов различного рода, с возможностью шумоподавления как в пространственной области, так и во временной области, с возможностью реализации в конвейерных структурах с параллельными вычислениями и более высоким качеством подавления шума, при котором не возникают артефакты в итоговом отфильтрованном изображении.The problem to which the claimed invention is directed is to develop a method of adaptive spatial-temporal anisotropic bilateral filtering of video signals with expanded functionality, namely, with the possibility of processing video frames in accordance with their structure, calculated by calculating the direction of the contours and their strength, with the possibility of adaptation filtering level depending on the image structure, with the ability to suppress various kinds of noise, with the possibility of noise reduction as in ranstvennoy domain and time domain, to implement a pipelined in parallel computing structures with higher quality and noise reduction, which does not occur artifacts in the final filtered image.

Поставленная задача решена за счет создания нового способа адаптивной пространственно-временной анизотропной билатеральной фильтрации видеосигналов, предусматривающего выполнение следующих операций для каждого текущего пикселя изображения:The problem is solved by creating a new method of adaptive spatio-temporal anisotropic bilateral filtering of video signals, providing for the following operations for each current image pixel:

- выбирают вокруг текущего пикселя первую область, состоящую из текущего пикселя и нескольких ближайших соседних пикселей изображения;- select around the current pixel the first region consisting of the current pixel and several nearest neighboring pixels of the image;

- выбирают две линии, одна из которых проходит горизонтально (горизонтальная линия), а другая вертикально (вертикальная линия) через текущий пиксель и пиксели области текущего пикселя;- choose two lines, one of which runs horizontally (horizontal line), and the other vertically (vertical line) through the current pixel and pixels of the current pixel region;

- определяют горизонтальный градиент вдоль горизонтальной линии области текущего пикселя как разность между пикселем, расположенным слева от текущего пикселя, и пикселем, расположенным справа от текущего пикселя;- determine the horizontal gradient along the horizontal line of the region of the current pixel as the difference between the pixel located to the left of the current pixel and the pixel located to the right of the current pixel;

- определяют вертикальный градиент вдоль вертикальной линии области текущего пикселя как разность между пикселем, расположенным сверху от текущего пикселя, и пикселем, расположенным снизу от текущего пикселя;- determine the vertical gradient along the vertical line of the region of the current pixel as the difference between the pixel located above the current pixel and the pixel located below the current pixel;

- определяют корреляционную матрицу для горизонтальных градиентов и вертикальных градиентов области текущего пикселя, а также собственные векторы- determine the correlation matrix for horizontal gradients and vertical gradients of the current pixel region, as well as eigenvectors

θls и собственные величины λls корреляционной матрицы;θ l , θ s and eigenvalues λ l , λ s of the correlation matrix;

- определяют силу контуров Edge_Power по формуле- determine the strength of Edge_Power contours using the formula

Figure 00000001
Figure 00000001

где n - число, задающее чувствительность к контуру объекта в изображении;where n is a number that specifies the sensitivity to the contour of the object in the image;

- определяют направление Ω контура объекта в изображении как угол между собственным вектором θs, корреляционной матрицы с меньшим значением собственной величины и горизонтальной линией;- determine the direction Ω of the contour of the object in the image as the angle between the eigenvector θ s , the correlation matrix with a smaller value of the eigenvalue and the horizontal line;

- для каждого кадра из выбранного числа соседних кадров, включая текущий кадр, выбирают вокруг пикселя, соответствующего текущему пикселю, область поиска, состоящую из текущего пикселя и ближайших соседних пикселей изображения;- for each frame from the selected number of neighboring frames, including the current frame, select around the pixel corresponding to the current pixel, the search area consisting of the current pixel and the nearest neighboring pixels of the image;

- вычисляют весовые коэффициенты временного фильтра путем сравнения первой области (окно с размером К×К) в текущем кадре с областями того же размера в области поиска (окно с размером N×N) в текущем и соседних кадрах;- calculate the weighting coefficients of the time filter by comparing the first region (window with a size of K × K) in the current frame with areas of the same size in the search area (window with a size of N × N) in the current and neighboring frames;

- рассчитывают коэффициенты адаптации временного и билатерального фильтров к силе контуров. Коэффициент адаптации σt временного фильтра к энергии контура вычисляют по формуле- calculate the adaptation coefficients of the temporary and bilateral filters to the strength of the circuits. The adaptation coefficient σ t of the temporary filter to the loop energy is calculated by the formula

Figure 00000002
,
Figure 00000002
,

где kt является регулируемым параметром. Для коэффициента адаптации σt временного фильтра к энергии контура можно использовать также любую другую вогнутую функцию. Коэффициент адаптации σr билатерального фильтра к энергии контура вычисляют по формулеwhere k t is an adjustable parameter. For the adaptation coefficient σ t of the time filter to the loop energy, any other concave function can also be used. The adaptation coefficient σ r of the bilateral filter to the loop energy is calculated by the formula

Figure 00000003
,
Figure 00000003
,

где kb - это регулируемый параметр, причем для величины σr вместо функции квадратного корня представляется возможным использовать любую вогнутую функцию;where k b is an adjustable parameter, and for the value of σ r instead of the square root function it seems possible to use any concave function;

- выполняют фильтрацию во времени путем нахождения взвешенной суммы пикселей, которые находятся в области поиска в текущем и соседних кадрах. Результат фильтрации сохраняют в переменной out_pixelT;- perform filtering in time by finding the weighted sum of pixels that are in the search area in the current and neighboring frames. The filtering result is stored in the out_pixelT variable;

- определяют вторую область, как область текущего пикселя, в которой текущему пикселю присвоено значение out_pixelT;- define the second region as the region of the current pixel in which the current pixel is assigned the value out_pixelT;

- разделяют вторую область на две подобласти вдоль направления Ω - первую и вторую подобласти (Фиг.2);- divide the second region into two subregions along the direction Ω - the first and second subregions (Figure 2);

- выполняют билатеральную фильтрацию для первой и второй подобласти по следующей формуле

Figure 00000004
- perform bilateral filtering for the first and second subdomains according to the following formula
Figure 00000004

где Ii - это интенсивность точки с индексом i,where I i is the intensity of the point with index i,

Ip - интенсивность точки, для которой выполняется фильтрация (центральная точка маски). В качестве h(spatial) может использоваться любое ядро низкочастотного фильтра. Мы использовали Гауссиан в качестве такого ядра;I p is the intensity of the point for which filtering is performed (the center point of the mask). As h (spatial), any low-pass filter core can be used. We used Gaussian as such a core;

- вычисляют результат билатеральной фильтрации как взвешенное суммирование результатов фильтрации первой и второй подобласти;- calculate the result of bilateral filtering as a weighted summation of the filtering results of the first and second subregions;

- выполняют аппроксимацию текущего пикселя пикселями, расположенными вдоль направления контура, при этом аппроксимация представляет собой среднее арифметическое соседних к текущему пикселю пикселей, расположенных вдоль контура;- perform the approximation of the current pixel by pixels located along the direction of the path, while the approximation is the arithmetic average of the pixels adjacent to the current pixel located along the path;

- вычисляют окончательный результат фильтрации как взвешенную сумму результатов билатеральной фильтрации и аппроксимации вдоль контура.- calculate the final filtering result as a weighted sum of the results of bilateral filtering and approximation along the contour.

Техническим результатом заявленного изобретения является расширение функциональности и повышение качества подавления шумов различного рода, таких как артефакты сжатия, шумов сенсора камеры за счет обработки изображения как в пространственной области, так и во временной области, и адаптации фильтра к структуре изображения при помощи вычисления направления контура и разделения маски фильтра на две части вдоль контура с последующей фильтрацией обеих частей в раздельности.The technical result of the claimed invention is to expand the functionality and improve the quality of noise suppression of various kinds, such as compression artifacts, camera sensor noise due to image processing both in the spatial domain and in the time domain, and filter adaptation to the image structure by calculating the direction of the contour and dividing the filter mask into two parts along the contour, followed by filtering both parts separately.

Основная идея заявленного способа состоит в замене величины начальной интенсивности текущего пикселя функцией интенсивности окружающих пикселей, расположенных в текущем кадре и соседних кадрах. В способе определяют взвешенную сумму величин начальных интенсивностей пикселей соседних кадров и текущего кадра. При этом вес определяют как функцию разностей интенсивностей пикселей, составляющих области вокруг текущего пикселя и пикселя, для которого вычисляют вес. Затем результат взвешенного суммирования еще раз взвешенно суммируют с начальными интенсивностями окружающих пикселей, расположенных в текущем кадре. При этом вес определяют через функцию низкочастотного фильтра в пространственной и яркостной области. Степень фильтрации низкочастотного фильтра адаптируют к силе контуров.The main idea of the claimed method is to replace the value of the initial intensity of the current pixel with a function of the intensity of the surrounding pixels located in the current frame and adjacent frames. In the method, a weighted sum of the values of the initial intensities of pixels of adjacent frames and the current frame is determined. In this case, the weight is determined as a function of differences in the intensities of the pixels that make up the region around the current pixel and the pixel for which the weight is calculated. Then, the result of the weighted summation is again weightedly summed with the initial intensities of the surrounding pixels located in the current frame. The weight is determined through the function of the low-pass filter in the spatial and brightness region. The degree of filtration of the low-pass filter is adapted to the strength of the circuits.

Заявленный способ выполняется в реальном времени. Это означает, что время, которое требуется для обработки одного изображения, меньше времени смены изображений в видеопоследовательности изображений.The claimed method is performed in real time. This means that the time it takes to process a single image is less than the time it takes to change images in a video sequence of images.

В способе не требуются данные пикселей всего изображения, чтобы отфильтровать текущий пиксель - единовременно обрабатывают области изображения размером в несколько пикселей.The method does not require pixel data of the entire image in order to filter the current pixel - simultaneously process image areas of a few pixels.

Для лучшего понимания заявленного изобретения далее приводится его подробное описание с соответствующими чертежами.For a better understanding of the claimed invention the following is a detailed description with the corresponding drawings.

Фиг.1 - схема пошагового выполнения способа адаптивной пространственно-временной анизотропной билатеральной фильтрации видеосигналов, выполненного согласно изобретению.Figure 1 - diagram of a step-by-step implementation of the method of adaptive spatial-temporal anisotropic bilateral filtering of video signals, made according to the invention.

Фиг.2 - разделение маски билатерального фильтра вдоль контура.Figure 2 - separation mask bilateral filter along the contour.

Рассмотрим пошаговое выполнение заявленного способа (Фиг.1).Consider the step-by-step implementation of the claimed method (Figure 1).

Сначала выбирают вокруг текущего пикселя первую область, состоящую из текущего пикселя и ближайших соседних пикселей изображения (Шаг 1). Затем для каждого (текущего) пикселя изображения выполняют следующие операции.First, the first region consisting of the current pixel and the nearest neighboring pixels of the image is selected around the current pixel (Step 1). Then, for each (current) image pixel, the following operations are performed.

Вычисляют параметры ориентации и силы контуров (Шаг 2). Эти параметры включают в себя направление контура и 2 значения λs и λl, где λs - это производная в α направлении и λl производная в направлении

Figure 00000005
.The orientation parameters and contour strengths are calculated (Step 2). These parameters include the direction of the contour and 2 values of λ s and λ l , where λ s is the derivative in the α direction and λ l is the derivative in the direction
Figure 00000005
.

Горизонтальные и вертикальные производные для текущего пикселя вычисляются, какThe horizontal and vertical derivatives for the current pixel are calculated as

Figure 00000006
Figure 00000006

иand

Figure 00000007
Figure 00000007

соответственно.respectively.

Производные рассматривают как случайные переменные. Затем рассчитывают следующие величины для области текущего пикселяDerivatives are considered as random variables. Then, the following values are calculated for the region of the current pixel

Figure 00000008
Figure 00000009
Figure 00000010
Figure 00000008
Figure 00000009
Figure 00000010

Данные величины составляют ковариационную матрицу случайной переменной. Вычисляют меньшее собственное значение ковариационной матрицы какThese values make up the covariance matrix of a random variable. The smaller eigenvalue of the covariance matrix is calculated as

Figure 00000011
Figure 00000011

и большее собственное значение ковариационной матрицы какand the larger eigenvalue of the covariance matrix as

Figure 00000012
Figure 00000012

Вычисляют проекции вектора направления контура на горизонтальное и вертикальное направления как

Figure 00000013
и
Figure 00000014
соответственно. Определяют силу контура Edge_Power по формулеThe projections of the direction vector of the contour on the horizontal and vertical directions are calculated as
Figure 00000013
and
Figure 00000014
respectively. The Edge_Power contour strength is determined by the formula

Figure 00000015
Figure 00000015

где n - число, задающее чувствительность к контуру объекта в изображении.where n is a number specifying the sensitivity to the contour of the object in the image.

Затем для выбранного числа соседних кадров, включая текущий кадр, для каждого кадра выбирают вокруг пикселя соответствующему текущему пикселю область, состоящую из нескольких ближайших соседних пикселей изображения, так называемую область поиска (Шаг 3).Then, for a selected number of neighboring frames, including the current frame, for each frame, a region consisting of several nearest neighboring image pixels, the so-called search area, is selected around the pixel corresponding to the current pixel (Step 3).

Далее вычисляют веса для временного фильтра (Шаг 4). Веса считают путем сравнения первой области (окно с размером К×К) в текущем кадре с областями того же размера в области поиска (окно с размером N×N) в текущем и соседних кадрах. Для сравнения областей используют меру DNext, weights for the time filter are calculated (Step 4). Weights are calculated by comparing the first region (window with a size of K × K) in the current frame with regions of the same size in the search area (window with a size of N × N) in the current and neighboring frames. To compare the areas using measure D

Figure 00000016
Figure 00000016

где inp(xn,yn,tn) обозначает пиксель из текущего кадра tn с координатами xn и yn,where inp (x n , y n , t n ) denotes a pixel from the current frame t n with coordinates x n and y n ,

inp2(p,s,tn+r) обозначает пиксель из кадра tn+r с координатами р и s,inp 2 (p, s, t n + r) denotes a pixel from the frame t n + r with coordinates p and s,

индекс i изменяется в пределах от

Figure 00000017
до
Figure 00000018
в горизонтальном направлении,index i varies from
Figure 00000017
before
Figure 00000018
in the horizontal direction

индекс j изменяется в пределах от

Figure 00000019
до
Figure 00000018
в вертикальном направлении.index j varies from
Figure 00000019
before
Figure 00000018
in the vertical direction.

Затем рассчитывают коэффициенты адаптации временного и билатерального фильтров к силе контуров (Шаг 5). Коэффициент адаптации σt временного фильтра к энергии контура вычисляют по формуле

Figure 00000020
,Then, the adaptation coefficients of the temporary and bilateral filters to the loop strength are calculated (Step 5). The adaptation coefficient σ t of the temporary filter to the loop energy is calculated by the formula
Figure 00000020
,

где kt является регулируемым параметром. Для коэффициента адаптации σt временного фильтра к энергии контура можно использовать также любую другую вогнутую функцию. Коэффициент адаптации σr билатерального фильтра к энергии контура вычисляют по формуле

Figure 00000021
,where k t is an adjustable parameter. For the adaptation coefficient σ t of the time filter to the loop energy, any other concave function can also be used. The adaptation coefficient σ r of the bilateral filter to the loop energy is calculated by the formula
Figure 00000021
,

где kb - это регулируемый параметр. Для величины σr вместо функции квадратного корня может использоваться любая вогнутая функция. При этом поведение коэффициента σr можно описать следующим образом. Для областей изображения, не содержащих выраженных контуров, степень билатеральной фильтрации увеличивается. При этом сила контура Edge_Power близка к 1. В случае, если сила контура Edge_Power близка к 0, область с текущим пикселем содержит явно выраженный контур и степень билатеральной фильтрации уменьшается.where k b is an adjustable parameter. For the quantity σ r, instead of the square root function, any concave function can be used. Moreover, the behavior of the coefficient σ r can be described as follows. For image areas that do not contain pronounced contours, the degree of bilateral filtering increases. The Edge_Power contour strength is close to 1. If the Edge_Power contour strength is close to 0, the area with the current pixel contains a pronounced contour and the degree of bilateral filtering is reduced.

Далее выполняют фильтрацию во времени (Шаг 6). Фильтрация заключается в вычислении взвешенной суммы из пикселей, которые находятся в области поиска в текущем и соседних кадрах. Результат фильтрации зависит от количества соседних кадров, используемых для обработки. Чем больше кадров используют, тем лучше получают результат фильтрации. Результат временной фильтрации получают следующим образом:Next, filtering in time is performed (Step 6). Filtering consists in calculating the weighted sum of the pixels that are in the search area in the current and neighboring frames. The filtering result depends on the number of neighboring frames used for processing. The more frames you use, the better the filter result. The result of temporary filtering is obtained as follows:

Figure 00000022
Figure 00000022

где

Figure 00000023
обозначает пиксель из кадра tn+r с координатами xn+p и yn+s,Where
Figure 00000023
denotes a pixel from the frame t n + r with coordinates x n + p and y n + s,

индекс p изменяется в пределах от

Figure 00000024
до
Figure 00000025
в горизонтальном направлении,the index p varies from
Figure 00000024
before
Figure 00000025
in the horizontal direction

индекс s изменяется в пределах от

Figure 00000026
до
Figure 00000027
в вертикальном направлении,the index s varies from
Figure 00000026
before
Figure 00000027
in the vertical direction

индекс r изменяется в пределах от

Figure 00000028
до
Figure 00000029
во временной области,the index r varies from
Figure 00000028
before
Figure 00000029
in the time domain,

Т - число соседних кадров, используемых для временной фильтрации,T is the number of neighboring frames used for temporal filtering,

w(p,s,r) - вес пикселя inp2(xn+р,yn+s,tn+r), который вычисляют какw (p, s, r) - pixel weight inp 2 (x n + p, y n + s, t n + r), which is calculated as

Figure 00000030
Figure 00000030

σt - коэффициент адаптации временного фильтра к энергии контура.σ t is the coefficient of adaptation of the temporary filter to the energy of the circuit.

Нормировочный множитель вычисляют по формулеThe normalization factor is calculated by the formula

Figure 00000031
Figure 00000031

Определяют вторую область, как область текущего пикселя, в которой текущему пикселю присвоено значение out _pixelT (Шаг 7).The second region is determined as the region of the current pixel in which the current pixel is set to out _pixelT (Step 7).

Разделяют вторую область на две подобласти вдоль направления Ω - первую и вторую подобласти (Фиг.2) (Шаг 8).Divide the second region into two subregions along the direction Ω - the first and second subregions (Figure 2) (Step 8).

Выполняют билатеральную фильтрацию первой и второй подобласти по следующей формуле (Шаг 9 и 10)Bilateral filtration of the first and second subregions is performed according to the following formula (Step 9 and 10)

Figure 00000032
Figure 00000032

где Ii - это интенсивность точки с индексом i,where I i is the intensity of the point with index i,

Ip - интенсивность точки, для которой выполняется фильтрация (центральная точка маски).I p is the intensity of the point for which filtering is performed (the center point of the mask).

В качестве h(spatial) может использоваться любое ядро низкочастотного фильтра. Мы использовали Гауссиан в качестве такого ядра.As h (spatial), any low-pass filter core can be used. We used Gaussian as such a core.

Результат билатеральной фильтрации вычисляют через взвешенную сумму результатов фильтрации первой и второй подобласти (Шаг 11).The result of bilateral filtering is calculated through the weighted sum of the filtering results of the first and second subregions (Step 11).

Figure 00000033
Figure 00000033

где bil_pixel обозначает результат адаптивного билатеральногоwhere bil_pixel denotes the result of adaptive bilateral

пространственного фильтра,spatial filter

filt_pixel1 обозначает результат фильтрации первой подобласти,filt_pixel1 denotes the result of filtering the first subdomain,

filt_pixel2 обозначает результат фильтрации второй подобласти,filt_pixel2 indicates the result of filtering the second subarea,

w1 - вес результата фильтрации первой подобласти вычисляют следующим образомw 1 - the weight of the filtering result of the first subdomain is calculated as follows

Figure 00000034
Figure 00000034

w2 - вес результата фильтрации второй подобласти вычисляют подобным образом как w1 w 2 - the weight of the filtering result of the second subdomain is calculated similarly as w 1

Figure 00000035
Figure 00000035

где sum_grad1 - сумма градиентов, вычисленных вдоль контура со стороны первой подобласти,where sum_grad 1 is the sum of the gradients calculated along the contour from the side of the first subregion,

sum_grad2 - сумма градиентов, вычисленных вдоль контура со стороны второй подобласти.sum_grad 2 - the sum of the gradients calculated along the contour from the side of the second subregion.

Далее выполняют аппроксимацию текущего пикселя пикселями, расположенными вдоль направления контура (Шаг 12). Аппроксимация представляет собой комбинациюNext, the current pixel is approximated by pixels located along the direction of the path (Step 12). Approximation is a combination

int_pixel=(Idir-+Idir+)/2,int_pixel = (Idir - + Idir + ) / 2,

где Idir- и Idir+ соседние пиксели, расположенные вдоль контура.where Idir - and Idir + neighboring pixels located along the path.

В конечном счете, окончательный результат фильтрации вычисляют какUltimately, the final filtering result is calculated as

filt_pixel=w·bil_pixel+(1-w)·int_pixel (Шаг 13), гдеfilt_pixel = wbil_pixel + (1-w) int_pixel (Step 13), where

Th обозначает порог, который определяется в результате обучения алгоритма,Th denotes the threshold, which is determined as a result of learning the algorithm,

int_pixel обозначает результат аппроксимации текущего пикселя вдоль контура,int_pixel denotes the result of approximating the current pixel along the path,

filt_pixel обозначает окончательный результат фильтрации.filt_pixel indicates the final filter result.

Заявленный способ может быть реализован в системе, состоящей из функциональных элементов.The claimed method can be implemented in a system consisting of functional elements.

Изобретение может применяться в промышленно изготавливаемых устройствах, таких как видеокамеры, телевизионные устройства, дисплеи мобильных устройств и др., работающих с видеосигналами.The invention can be applied in industrially manufactured devices, such as video cameras, television devices, displays of mobile devices, etc., working with video signals.

Хотя указанный выше вариант выполнения изобретения был изложен с целью иллюстрации настоящего изобретения, специалистам ясно, что возможны разные модификации, добавления и замены, не выходящие из объема и смысла настоящего изобретения, раскрытого в прилагаемой формуле изобретения.Although the above embodiment of the invention has been set forth to illustrate the present invention, it is clear to those skilled in the art that various modifications, additions and substitutions are possible without departing from the scope and meaning of the present invention disclosed in the attached claims.

Claims (5)

1. Способ адаптивной пространственно-временной анизотропной билатеральной фильтрации видеосигналов, в котором для каждого (текущего) пикселя изображения выполняют следующие операции:
выбирают вокруг текущего пикселя первую область, состоящую из текущего пикселя и нескольких ближайших соседних пикселей изображения;
выбирают две линии, одна из которых проходит горизонтально (горизонтальная линия), а другая вертикально (вертикальная линия) через текущий пиксель и пиксели области текущего пикселя;
определяют горизонтальный градиент вдоль горизонтальной линии области текущего пикселя как разность между пикселем, расположенным слева от текущего пикселя, и пикселем, расположенным справа от текущего пикселя;
определяют вертикальный градиент вдоль вертикальной линии области текущего пикселя как разность между пикселем, расположенным сверху от текущего пикселя, и пикселем, расположенным снизу от текущего пикселя;
определяют корреляционную матрицу для горизонтальных градиентов и вертикальных градиентов области текущего пикселя, а также собственные векторы θ1, θs и собственные величины λ1, λs корреляционной матрицы;
определяют силу контуров Edge-Power по формуле
Figure 00000037

где n - число, задающее чувствительность к контуру объекта в изображении;
определяют направление Ω контура объекта в изображении как угол, между собственным вектором θs корреляционной матрицы с меньшим значением собственной величины и горизонтальной линией;
для каждого кадра из выбранного числа соседних кадров, включая текущий кадр, выбирают вокруг пикселя, соответствующего текущему пикселю, область поиска, состоящую из текущего пикселя и ближайших соседних пикселей изображения;
вычисляют весовые коэффициенты временного фильтра путем сравнения первой области (окно с размером К×К) в текущем кадре с областями того же размера в области поиска (окно с размером N×N) в текущем и соседних кадрах;
рассчитывают коэффициенты адаптации временного и билатерального фильтров к силе контуров, причем коэффициент адаптации σt, временного фильтра к энергии контура вычисляют по формуле
Figure 00000002
,
где kt является регулируемым параметром, а коэффициент адаптации σr билатерального фильтра к энергии контура вычисляют по формуле
Figure 00000003
,
где kb - это регулируемый параметр;
выполняют фильтрацию во времени путем нахождения взвешенной суммы пикселей, которые находятся в области поиска в текущем и соседних кадрах, и результат фильтрации сохраняют в переменной out_pixelT;
определяют вторую область, как область текущего пикселя, в которой текущему пикселю присвоено значение out_pixelT;
разделяют вторую область на две подобласти вдоль направления Ω - первую и вторую подобласти;
- выполняют билатеральную фильтрацию для первой и второй подобласти по следующей формуле:
Figure 00000038

где Ii - это интенсивность точки с индексом i, Ip - интенсивность точки, для которой выполняется фильтрация, а в качестве h(spatial) используют ядро низкочастотного фильтра;
вычисляют результат билатеральной фильтрации, как взвешенное суммирование результатов фильтрации первой и второй подобласти;
выполняют аппроксимацию текущего пикселя пикселями, расположенными вдоль направления контура, при этом аппроксимация представляет собой среднее арифметическое соседних к текущему пикселю пикселей, расположенных вдоль контура;
вычисляют окончательный результат фильтрации, как взвешенную сумму результатов билатеральной фильтрации и аппроксимации вдоль контура.
1. The method of adaptive spatio-temporal anisotropic bilateral filtering of video signals, in which for each (current) image pixel the following operations are performed:
around the current pixel, select a first region consisting of the current pixel and several nearest neighboring pixels of the image;
two lines are selected, one of which extends horizontally (horizontal line) and the other vertically (vertical line) through the current pixel and the pixels of the current pixel region;
determining a horizontal gradient along the horizontal line of the region of the current pixel as the difference between the pixel located to the left of the current pixel and the pixel located to the right of the current pixel;
determining a vertical gradient along the vertical line of the region of the current pixel as the difference between the pixel located above the current pixel and the pixel located below the current pixel;
determining a correlation matrix for horizontal gradients and vertical gradients of the current pixel region, as well as eigenvectors θ 1 , θ s and eigenvalues λ 1 , λ s of the correlation matrix;
determine the strength of Edge-Power circuits using the formula
Figure 00000037

where n is a number that specifies the sensitivity to the contour of the object in the image;
determine the direction Ω of the contour of the object in the image as the angle between the eigenvector θ s of the correlation matrix with a smaller value of the eigenvalue and the horizontal line;
for each frame from a selected number of neighboring frames, including the current frame, select around the pixel corresponding to the current pixel, a search area consisting of the current pixel and the nearest neighboring pixels of the image;
calculating the weight coefficients of the time filter by comparing the first region (window with a size of K × K) in the current frame with regions of the same size in the search area (window with a size of N × N) in the current and neighboring frames;
the coefficients of adaptation of the temporary and bilateral filters to the loop power are calculated, and the adaptation coefficient σ t of the temporary filter to the loop energy is calculated by the formula
Figure 00000002
,
where k t is an adjustable parameter, and the adaptation coefficient σ r of the bilateral filter to the loop energy is calculated by the formula
Figure 00000003
,
where k b is an adjustable parameter;
filtering in time by finding the weighted sum of pixels that are in the search area in the current and neighboring frames, and the filtering result is stored in the variable out_pixelT;
determining a second region as the region of the current pixel in which the current pixel is assigned the value out_pixelT;
divide the second region into two subdomains along the direction Ω — the first and second subdomains;
- perform bilateral filtering for the first and second subdomains according to the following formula:
Figure 00000038

where I i is the intensity of the point with index i, I p is the intensity of the point for which filtering is performed, and the core of the low-pass filter is used as h (spatial);
calculate the result of bilateral filtering, as a weighted summation of the filtering results of the first and second subregions;
approximating the current pixel by pixels located along the direction of the contour, the approximation being the arithmetic average of the pixels adjacent to the current pixel located along the contour;
calculate the final filtering result as a weighted sum of the results of bilateral filtering and approximation along the contour.
2. Способ по п.1, отличающийся тем, что для сравнения областей пикселей используют меру
Figure 00000039

где inp1(xn, yn, tn) обозначает пиксель из текущего кадра tn с координатами xn и yn,
inp2(p,s,tn+r) обозначает пиксель из кадра tn+r с координатами р и s,
индекс i изменяется в пределах от
Figure 00000017
до
Figure 00000018
в горизонтальном направлении, индекс j изменяется в пределах от
Figure 00000019
до
Figure 00000018
в вертикальном направлении.
2. The method according to claim 1, characterized in that a measure is used to compare the areas of pixels
Figure 00000039

where inp 1 (x n , y n , t n ) denotes a pixel from the current frame t n with coordinates x n and y n ,
inp 2 (p, s, t n + r) denotes a pixel from the frame t n + r with coordinates p and s,
index i varies from
Figure 00000017
before
Figure 00000018
in the horizontal direction, the index j varies from
Figure 00000019
before
Figure 00000018
in the vertical direction.
3. Способ по п.1, отличающийся тем, что временную фильтрацию выполняют следующим образом:
Figure 00000022

где inp2(xn+p, yn+s, tn+r) обозначает пиксель из кадра tn+r с координатами xn+p и yn+s,
индекс р изменяется в пределах от
Figure 00000024
до
Figure 00000025
в горизонтальном направлении,
индекс s изменяется в пределах от
Figure 00000024
до
Figure 00000025
в вертикальном направлении,
индекс r изменяется в пределах от
Figure 00000028
до
Figure 00000029
во временной области,
Т - число соседних кадров, используемых для временной фильтрации,
w(p, s, r) - вес пикселя inp2(xn+p, yn+s, tn+r), который вычисляют, как
Figure 00000040

σt - коэффициент адаптации временного фильтра к энергии контура, при этом нормировочный множитель вычисляют по формуле
Figure 00000041
3. The method according to claim 1, characterized in that the temporary filtering is performed as follows:
Figure 00000022

where inp 2 (x n + p, y n + s, t n + r) denotes a pixel from the frame t n + r with coordinates x n + p and y n + s,
p index varies from
Figure 00000024
before
Figure 00000025
in the horizontal direction
the index s varies from
Figure 00000024
before
Figure 00000025
in the vertical direction
the index r varies from
Figure 00000028
before
Figure 00000029
in the time domain,
T is the number of neighboring frames used for temporal filtering,
w (p, s, r) - pixel weight inp 2 (x n + p, y n + s, t n + r), which is calculated as
Figure 00000040

σ t is the coefficient of adaptation of the temporary filter to the energy of the circuit, while the normalization factor is calculated by the formula
Figure 00000041
4. Способ по п.1, отличающийся тем, что вычисляют результат билатеральной фильтрации через взвешенное суммирование результатов фильтрации первой и второй подобласти, как
bil_pixel=w1·filt_pixel1+w2·filt_pixel2,
где bil-pixel обозначает результат адаптивного билатерального пространственного фильтра,
flit-pixel1 обозначает результат фильтрации первой подобласти,
filt-pixel2 обозначает результат фильтрации второй подобласти,
w1 - вес результата фильтрации первой подобласти вычисляют следующим образом:
Figure 00000042

w2 - вес результата фильтрации второй подобласти вычисляют подобным образом как w1,
Figure 00000043

где sum_grad1 - сумма градиентов, вычисленных вдоль контура со стороны первой подобласти, sum_grad2 - сумма градиентов, вычисленных вдоль контура со стороны второй подобласти.
4. The method according to claim 1, characterized in that the result of bilateral filtering is calculated through a weighted summation of the filtering results of the first and second subregions, as
bil_pixel = w 1 filtrationpixel 1 + w 2 filtrationpixel 2 ,
where bil-pixel denotes the result of an adaptive bilateral spatial filter,
flit-pixel1 indicates the result of filtering the first subarea,
filt-pixel2 indicates the result of filtering the second sub-area,
w 1 - the weight of the filtering result of the first subdomain is calculated as follows:
Figure 00000042

w 2 - the weight of the filtering result of the second subdomain is calculated similarly as w 1 ,
Figure 00000043

where sum_grad 1 is the sum of the gradients calculated along the contour from the side of the first subdomain, sum_grad 2 is the sum of the gradients calculated along the contour from the side of the second subdomain.
5. Способ по п.1, отличающийся тем, что вычисляют окончательный результат фильтрации, как
filt_pixel=w·bil_pixel+(1-w)·int_pixel,
где
Figure 00000044

Th обозначает порог, который определяется в результате обучения алгоритма, bil_pixel обозначает результат билатеральной фильтрации, int_pixel обозначает результат аппроксимации текущего пикселя вдоль контура, filt_pixel обозначает окончательный результат фильтрации.
5. The method according to claim 1, characterized in that the final filtering result is calculated as
filt_pixel = w bil_pixel + (1-w) int_pixel,
Where
Figure 00000044

Th denotes the threshold that is determined as a result of learning the algorithm, bil_pixel denotes the result of bilateral filtering, int_pixel denotes the result of approximating the current pixel along the contour, filt_pixel denotes the final filtering result.
RU2007134335/09A 2007-09-17 2007-09-17 Method of space-time anisotropic bilateral filtration of video signals RU2360287C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2007134335/09A RU2360287C1 (en) 2007-09-17 2007-09-17 Method of space-time anisotropic bilateral filtration of video signals

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2007134335/09A RU2360287C1 (en) 2007-09-17 2007-09-17 Method of space-time anisotropic bilateral filtration of video signals

Publications (2)

Publication Number Publication Date
RU2007134335A RU2007134335A (en) 2009-03-27
RU2360287C1 true RU2360287C1 (en) 2009-06-27

Family

ID=40542246

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2007134335/09A RU2360287C1 (en) 2007-09-17 2007-09-17 Method of space-time anisotropic bilateral filtration of video signals

Country Status (1)

Country Link
RU (1) RU2360287C1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107292258A (en) * 2017-06-14 2017-10-24 南京理工大学 High spectrum image low-rank representation clustering method with filtering is modulated based on bilateral weighted
RU2646358C2 (en) * 2016-04-07 2018-03-02 Николай Дмитриевич Егоров Method for eliminating redundancy when compressing sequence of images

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2646358C2 (en) * 2016-04-07 2018-03-02 Николай Дмитриевич Егоров Method for eliminating redundancy when compressing sequence of images
CN107292258A (en) * 2017-06-14 2017-10-24 南京理工大学 High spectrum image low-rank representation clustering method with filtering is modulated based on bilateral weighted
CN107292258B (en) * 2017-06-14 2020-09-18 南京理工大学 High-spectral image low-rank representation clustering method based on bilateral weighted modulation and filtering

Also Published As

Publication number Publication date
RU2007134335A (en) 2009-03-27

Similar Documents

Publication Publication Date Title
US10339643B2 (en) Algorithm and device for image processing
CN112767289B (en) Image fusion method, device, medium and electronic equipment
KR100872253B1 (en) Method for eliminating noise of image generated by image sensor
CN110730336B (en) Demosaicing method and device
CN113436112B (en) Image enhancement method, device and equipment
CN103606132A (en) Multiframe digital image denoising method based on space domain and time domain combination filtering
US8965141B2 (en) Image filtering based on structural information
EP2816526B1 (en) Filtering method and apparatus for recovering an anti-aliasing edge
CN107492077B (en) Image deblurring method based on self-adaptive multidirectional total variation
CN109377450A (en) A kind of edge-protected denoising method
JP2010193199A (en) Image processor and image processing method
CN107979712A (en) A kind of vedio noise reduction method and device
CN117115033A (en) Electric power operation site weak light image enhancement method based on strong light inhibition
Wang et al. Nighttime image dehazing using color cast removal and dual path multi-scale fusion strategy
CN104766287A (en) Blurred image blind restoration method based on significance detection
RU2360287C1 (en) Method of space-time anisotropic bilateral filtration of video signals
KR101907451B1 (en) Filter based high resolution color image restoration and image quality enhancement apparatus and method
CN115965552B (en) Frequency-space-time domain joint denoising and recovering system for low signal-to-noise ratio image sequence
CN117372307A (en) Multi-unmanned aerial vehicle collaborative detection distributed image enhancement method
Sun et al. Adaptive bilateral filter considering local characteristics
Schöberl et al. Sparsity-based defect pixel compensation for arbitrary camera raw images
Park et al. False contour reduction using neural networks and adaptive bi-directional smoothing
Son et al. A pair of noisy/blurry patches-based PSF estimation and channel-dependent deblurring
Sadaka et al. Efficient perceptual attentive super-resolution
Kwon et al. Aliasing artifacts reduction with subband signal analysis for demosaicked images

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20180918