RU2360287C1 - Method of space-time anisotropic bilateral filtration of video signals - Google Patents
Method of space-time anisotropic bilateral filtration of video signals Download PDFInfo
- 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
Links
Images
Landscapes
- Image Processing (AREA)
- Picture Signal Circuits (AREA)
Abstract
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
θl,θs и собственные величины λl,λs корреляционной матрицы;θ l , θ s and eigenvalues λ l , λ s of the correlation matrix;
- определяют силу контуров Edge_Power по формуле- determine the strength of Edge_Power contours using the formula
где 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
, ,
где 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
, ,
где 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);
- выполняют билатеральную фильтрацию для первой и второй подобласти по следующей формуле - perform bilateral filtering for the first and second subdomains according to the following formula
где 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 производная в направлении .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 .
Горизонтальные и вертикальные производные для текущего пикселя вычисляются, какThe horizontal and vertical derivatives for the current pixel are calculated as
иand
соответственно.respectively.
Производные рассматривают как случайные переменные. Затем рассчитывают следующие величины для области текущего пикселяDerivatives are considered as random variables. Then, the following values are calculated for the region of the current pixel
Данные величины составляют ковариационную матрицу случайной переменной. Вычисляют меньшее собственное значение ковариационной матрицы какThese values make up the covariance matrix of a random variable. The smaller eigenvalue of the covariance matrix is calculated as
и большее собственное значение ковариационной матрицы какand the larger eigenvalue of the covariance matrix as
Вычисляют проекции вектора направления контура на горизонтальное и вертикальное направления как и соответственно. Определяют силу контура Edge_Power по формулеThe projections of the direction vector of the contour on the horizontal and vertical directions are calculated as and respectively. The Edge_Power contour strength is determined by the formula
где 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
где 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 изменяется в пределах от до в горизонтальном направлении,index i varies from before in the horizontal direction
индекс j изменяется в пределах от до в вертикальном направлении.index j varies from before in the vertical direction.
Затем рассчитывают коэффициенты адаптации временного и билатерального фильтров к силе контуров (Шаг 5). Коэффициент адаптации σt временного фильтра к энергии контура вычисляют по формуле ,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 ,
где 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 ,
где 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:
где обозначает пиксель из кадра tn+r с координатами xn+p и yn+s,Where denotes a pixel from the frame t n + r with coordinates x n + p and y n + s,
индекс p изменяется в пределах от до в горизонтальном направлении,the index p varies from before in the horizontal direction
индекс s изменяется в пределах от до в вертикальном направлении,the index s varies from before in the vertical direction
индекс r изменяется в пределах от до во временной области,the index r varies from before 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
σ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
Определяют вторую область, как область текущего пикселя, в которой текущему пикселю присвоено значение 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)
где 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).
где 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
w2 - вес результата фильтрации второй подобласти вычисляют подобным образом как w1 w 2 - the weight of the filtering result of the second subdomain is calculated similarly as w 1
где 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, θs и собственные величины λ1, λs корреляционной матрицы;
определяют силу контуров Edge-Power по формуле
где n - число, задающее чувствительность к контуру объекта в изображении;
определяют направление Ω контура объекта в изображении как угол, между собственным вектором θs корреляционной матрицы с меньшим значением собственной величины и горизонтальной линией;
для каждого кадра из выбранного числа соседних кадров, включая текущий кадр, выбирают вокруг пикселя, соответствующего текущему пикселю, область поиска, состоящую из текущего пикселя и ближайших соседних пикселей изображения;
вычисляют весовые коэффициенты временного фильтра путем сравнения первой области (окно с размером К×К) в текущем кадре с областями того же размера в области поиска (окно с размером N×N) в текущем и соседних кадрах;
рассчитывают коэффициенты адаптации временного и билатерального фильтров к силе контуров, причем коэффициент адаптации σt, временного фильтра к энергии контура вычисляют по формуле
,
где kt является регулируемым параметром, а коэффициент адаптации σr билатерального фильтра к энергии контура вычисляют по формуле
,
где kb - это регулируемый параметр;
выполняют фильтрацию во времени путем нахождения взвешенной суммы пикселей, которые находятся в области поиска в текущем и соседних кадрах, и результат фильтрации сохраняют в переменной out_pixelT;
определяют вторую область, как область текущего пикселя, в которой текущему пикселю присвоено значение out_pixelT;
разделяют вторую область на две подобласти вдоль направления Ω - первую и вторую подобласти;
- выполняют билатеральную фильтрацию для первой и второй подобласти по следующей формуле:
где 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
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
,
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
,
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:
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.
где inp1(xn, yn, tn) обозначает пиксель из текущего кадра tn с координатами xn и yn,
inp2(p,s,tn+r) обозначает пиксель из кадра tn+r с координатами р и s,
индекс i изменяется в пределах от до в горизонтальном направлении, индекс j изменяется в пределах от до в вертикальном направлении.2. The method according to claim 1, characterized in that a measure is used to compare the areas of pixels
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 before in the horizontal direction, the index j varies from before in the vertical direction.
где inp2(xn+p, yn+s, tn+r) обозначает пиксель из кадра tn+r с координатами xn+p и yn+s,
индекс р изменяется в пределах от до в горизонтальном направлении,
индекс s изменяется в пределах от до в вертикальном направлении,
индекс r изменяется в пределах от до во временной области,
Т - число соседних кадров, используемых для временной фильтрации,
w(p, s, r) - вес пикселя inp2(xn+p, yn+s, tn+r), который вычисляют, как
σt - коэффициент адаптации временного фильтра к энергии контура, при этом нормировочный множитель вычисляют по формуле
3. The method according to claim 1, characterized in that the temporary filtering is performed as follows:
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 before in the horizontal direction
the index s varies from before in the vertical direction
the index r varies from before 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
σ 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
bil_pixel=w1·filt_pixel1+w2·filt_pixel2,
где bil-pixel обозначает результат адаптивного билатерального пространственного фильтра,
flit-pixel1 обозначает результат фильтрации первой подобласти,
filt-pixel2 обозначает результат фильтрации второй подобласти,
w1 - вес результата фильтрации первой подобласти вычисляют следующим образом:
w2 - вес результата фильтрации второй подобласти вычисляют подобным образом как w1,
где 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:
w 2 - the weight of the filtering result of the second subdomain is calculated similarly as w 1 ,
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.
filt_pixel=w·bil_pixel+(1-w)·int_pixel,
где
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
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.
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)
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 |
-
2007
- 2007-09-17 RU RU2007134335/09A patent/RU2360287C1/en not_active IP Right Cessation
Cited By (3)
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 |