El filtro Gabor es un filtro electrónico lineal cuya respuesta de impulso se define como una función armónica multiplicada por una Gaussiana . En el procesamiento de imágenes digitales , este filtro se utiliza para reconocer los límites de los objetos.
Debido a la propiedad de hacer coincidir la convolución en el dominio del tiempo con la multiplicación en el dominio de la frecuencia, la transformada de Fourier de la respuesta de impulso del filtro Gabor es la convolución de las transformadas de Fourier de la función armónica y la gaussiana.
dónde
En esta ecuación , representa la longitud de onda del multiplicador del coseno, determina la orientación de la normal de las tiras paralelas de la función de Gabor en grados, es el desfase en grados, y es el factor de compresión que caracteriza la elipticidad de la función de Gabor.
Los filtros de Gabor están directamente relacionados con las wavelets de Gabor , ya que se pueden construir a través de una serie de compresiones y rotaciones. El espacio Gabor (convolución de un filtro con una señal) se usa a menudo en diversas aplicaciones de imágenes , en particular para el reconocimiento del iris en sistemas de seguridad biométricos y en sistemas de control de acceso automatizados basados en el reconocimiento de huellas dactilares.
Para construir un filtro Gabor unidimensional, se utiliza la siguiente fórmula: ,
Cuanto más grande , más plana será la función. Cuanto más pequeño , más nítido será el pico como resultado de trazar la función.
La función exponencial anterior tiene las propiedades de una distribución normal de una variable aleatoria. De acuerdo con la regla de los tres sigma, casi todos los valores del exponente se encuentran en el intervalo . Para el análisis de señales, los valores de función se calculan dentro de los límites especificados.
Coseno, exponente y su composición en una función de Gabor
Dependencia de la función en
Dependencia de la función en
Cada punto de la señal de entrada se transforma en el punto correspondiente de la señal de salida , promediando los valores de la señal de entrada sobre el área , teniendo en cuenta los coeficientes de peso de la fórmula de Gabor.
Para construir un filtro Gabor bidimensional, se utiliza la siguiente fórmula:
dónde: son las desviaciones estándar del núcleo gaussiano, a lo largo de los ejes y , que determinan la extensión del filtro a lo largo de los ejes, es la modulación de frecuencia del filtro,
El procesamiento de imágenes por el filtro Gabor se logra promediando los valores de la imagen procesada sobre un área determinada en cada punto. En consecuencia, la imposición del filtro Gabor sobre la imagen tiene la forma:
donde: es la intensidad de la imagen original en el punto , es la intensidad de la nueva imagen en el punto , es el valor de la función Gabor, .
Si descartamos la componente sinusoidal de la función en el filtro Gabor, degenerará en un filtro de desenfoque gaussiano (Gaussian Blur) . Por lo tanto, es obvio que estos dos filtros tienen casi el mismo algoritmo de aplicación, que difiere en algunos detalles.
Se puede ver a partir de la fórmula de Gabor que el filtro depende de la frecuencia y la dirección de la estructura cuasi-periódica de la imagen. Por lo tanto, antes de aplicar el filtro, es necesario construir los campos de frecuencia y orientación para la imagen actual. Por lo general, para simplificar la tarea, se calcula la frecuencia promedio de la imagen, que se considera sin cambios en cada punto.
Para construir el campo de dirección , se pueden usar varios métodos, el más rápido de los cuales es el método diferencial, que le permite construir un campo de dirección de cuatro gradaciones.
Así, al tener una frecuencia y 4 direcciones, se preconstruyen 4 filtros Gabor, uno para cada dirección. Después de eso, en cada punto de la imagen, el filtro se convoluciona con la imagen sobre un área determinada, lo que da el valor de salida de la nueva imagen.
El filtro Gabor es efectivo en el procesamiento de imágenes con redundancia estructural que tienen una estructura cuasi-periódica. Estos incluyen imágenes de huellas dactilares, imágenes de cristalogramas e interferrogramas. En la vida silvestre, a menudo se encuentra un color similar en las cebras, varios felinos (tigres, linces, gatos ahumados), pájaros (urogallos negros), peces (leporinos rayados) y otros representantes de la flora y la fauna.
Aquí hay un ejemplo de implementación del filtro Gabor para el paquete Matlab :
función gb = gabor_fn ( sigma_x, theta, lambda, psi, gamma ) sz_x = arreglar ( 6 * sigma_x ); % basado en el valor de sigma obtuvo el tamaño del kernel sz_x = sz_x - mod ( sz_x , 2 ) + 1 ; % si es par - hazlo impar sz_y = arreglar ( 6 * sigma_x / gamma ); % basado en el valor de sigma y coeficiente. la compresión obtuvo el segundo tamaño del kernel sz_y = sz_y - mod ( sz_y , 2 ) + 1 ; % si es par - hazlo impar [ x y ] = meshgrid ( - arreglo ( sz_x / 2 ): arreglo ( sz_x / 2 ), arreglo ( - sz_y / 2 ): arreglo ( sz_y / 2 )); % de alcance % Rotar x_theta = x * cos ( theta ) + y * sin ( theta ); y_theta = - x * sin ( theta ) + y * cos ( theta ); gb = exp ( - .5 * ( x_theta .^ 2 / sigma_x ^ 2 + gamma ^ 2 * y_theta .^ 2 / sigma_x ^ 2 )) * cos ( 2 * pi * x_theta ./ lambda + psi ); % núcleo