Articulo de referencia

Implementación del espacio de escala

En los campos de la visión por computadora , el análisis de imágenes y el procesamiento de señales , la noción de representación en el espacio de escalas se utiliza para procesa...

En los campos de la visión por computadora , el análisis de imágenes y el procesamiento de señales , la noción de representación en el espacio de escalas se utiliza para procesar datos de medición en múltiples escalas, y específicamente para realzar o suprimir características de la imagen en diferentes rangos de escala (véase el artículo sobre el espacio de escalas ). Un tipo especial de representación en el espacio de escalas la proporciona el espacio de escalas gaussiano, donde los datos de la imagen en N dimensiones se someten a un suavizado mediante convolución gaussiana . La mayor parte de la teoría del espacio de escalas gaussiano se ocupa de imágenes continuas, mientras que al implementar esta teoría hay que tener en cuenta que la mayoría de los datos de medición son discretos. Por lo tanto, surge el problema teórico de cómo discretizar la teoría continua preservando o aproximando adecuadamente las propiedades teóricas deseables que llevan a la elección del núcleo gaussiano (véase el artículo sobre los axiomas del espacio de escalas ). Este artículo describe los enfoques básicos para esto que se han desarrollado en la literatura, ver también [ 1 ] para un tratamiento en profundidad sobre el tema de la aproximación de la operación de suavizado gaussiano y los cálculos de la derivada gaussiana en la teoría del espacio de escalas, y [ 2 ] para un tratamiento complementario sobre métodos de discretización híbridos.

Planteamiento del problema

La representación en el espacio de escalas gaussiano de una señal continua N -dimensional,

Fdo(incógnita1,,incógnitanorte,t),{\displaystyle f_{C}\left(x_{1},\cdots ,x_{N},t\right),}

se obtiene mediante la convolución de f C con un núcleo gaussiano N -dimensional :

gramonorte(incógnita1,,incógnitanorte,t).{\displaystyle g_{N}\left(x_{1},\cdots ,x_{N},t\right).}

En otras palabras:

L(incógnita1,,incógnitanorte,t)=1=norte=Fdo(incógnita11,,incógnitanortenorte,t)gramonorte(1,,norte,t)d1dnorte.{\displaystyle L\left(x_{1},\cdots ,x_{N},t\right)=\int _{u_{1}=-\infty }^{\infty }\cdots \int _{u_{N}=-\infty }^{\infty }f_{C}\left(x_{1}-u_{1},\cdots ,x_{N}-u_{N},t\right)\cdot g_{N}\left(u_{1},\cdots ,u_{N},t\right)\,du_{1}\cdots du_{N}.}

Sin embargo, para su implementación , esta definición resulta poco práctica, ya que es continua. Al aplicar el concepto de espacio de escalas a una señal discreta f D , se pueden adoptar diferentes enfoques. Este artículo ofrece un breve resumen de algunos de los métodos más utilizados.

Posibilidad de separación

Utilizando la propiedad de separabilidad del núcleo gaussiano

gramonorte(incógnita1,,incógnitanorte,t)=GRAMO(incógnita1,t)GRAMO(incógnitanorte,t){\displaystyle g_{N}\left(x_{1},\dots ,x_{N},t\right)=G\left(x_{1},t\right)\cdots G\left(x_{N},t\right)}

La operación de convolución N -dimensional se puede descomponer en un conjunto de pasos de suavizado separables con un núcleo gaussiano unidimensional G a lo largo de cada dimensión.

L(incógnita1,,incógnitanorte,t)=1=norte=Fdo(incógnita11,,incógnitanortenorte,t)GRAMO(1,t)d1GRAMO(norte,t)dnorte,{\displaystyle L(x_{1},\cdots ,x_{N},t)=\int _{u_{1}=-\infty }^{\infty }\cdots \int _{u_{N}=-\infty }^{\infty }f_{C}(x_{1}-u_{1},\cdots ,x_{N}-u_{N},t)G(u_{1},t)\,du_{1}\cdots G(u_{N},t)\,du_{N},}

dónde

GRAMO(incógnita,t)=12πtmiincógnita22t{\displaystyle G(x,t)={\frac {1}{\sqrt {2\pi t}}}e^{-{\frac {x^{2}}{2t}}}}

y la desviación estándar de la Gaussiana σ está relacionada con el parámetro de escala t según t = σ 2 .

En lo que sigue, se asumirá la separabilidad, incluso cuando el núcleo no sea exactamente gaussiano, ya que la separación de dimensiones es la forma más práctica de implementar el suavizado multidimensional, especialmente a escalas mayores. Por lo tanto, el resto del artículo se centra en el caso unidimensional.

El núcleo gaussiano muestreado

Al implementar en la práctica el paso de suavizado unidimensional, el enfoque presumiblemente más simple es convolucionar la señal discreta f D con un núcleo gaussiano muestreado :

L(incógnita,t)=norte=F(incógnitanorte)GRAMO(norte,t){\displaystyle L(x,t)=\sum _{n=-\infty }^{\infty }f(x-n)\,G(n,t)}

dónde

GRAMO(norte,t)=12πtminorte22t{\displaystyle G(n,t)={\frac {1}{\sqrt {2\pi t}}}e^{-{\frac {n^{2}}{2t}}}}

(con t = σ 2 ) que a su vez se trunca en los extremos para dar un filtro con respuesta de impulso finita

L(incógnita,t)=norte=METROMETROF(incógnitanorte)GRAMO(norte,t){\displaystyle L(x,t)=\sum _{n=-M}^{M}f(x-n)\,G(n,t)}

para M elegido suficientemente grande (ver función de error ) de tal manera que

2METROGRAMO(,t)d=2METROtGRAMO(v,1)dv<ε.{\displaystyle 2\int _{M}^{\infty }G(u,t)\,du=2\int _{\frac {M}{\sqrt {t}}}^{\infty }G(v,1)\,dv<\varepsilon .}

Una opción común es establecer M a una constante C multiplicada por la desviación estándar del núcleo gaussiano.

METRO=doσ+1=dot+1{\displaystyle M=C\sigma +1=C{\sqrt {t}}+1}

donde C suele elegirse en algún punto entre 3 y 6.

Sin embargo, el uso del núcleo gaussiano muestreado puede generar problemas de implementación, en particular al calcular derivadas de orden superior a escalas más finas mediante la aplicación de derivadas muestreadas de núcleos gaussianos. Por lo tanto, cuando la precisión y la robustez son criterios de diseño primordiales, se deben considerar enfoques de implementación alternativos.

Para valores pequeños de ε (10⁻⁶ a 10⁻⁸ ) , los errores introducidos al truncar la gaussiana suelen ser despreciables. Sin embargo, para valores mayores de ε, existen muchas mejores alternativas a una función de ventana rectangular . Por ejemplo, para un número dado de puntos, una ventana de Hamming , una ventana de Blackman o una ventana de Kaiser afectarán menos a las propiedades espectrales y otras propiedades de la gaussiana que un simple truncamiento. No obstante, dado que el núcleo gaussiano disminuye rápidamente en las colas, la principal recomendación sigue siendo utilizar un valor de ε suficientemente pequeño para que los efectos del truncamiento dejen de ser importantes.

El núcleo gaussiano discreto

El núcleo gaussiano discreto ideal (línea continua) comparado con el núcleo gaussiano ordinario muestreado (línea discontinua), para escalas t = [0,5, 1, 2, 4].

Un enfoque más refinado consiste en convolucionar la señal original con el núcleo gaussiano discreto T ( n , t ) [ 3 ] [ 4 ] [ 5 ]

L(incógnita,t)=norte=F(incógnitanorte)T(norte,t){\displaystyle L(x,t)=\sum _{n=-\infty }^{\infty }f(x-n)\,T(n,t)}

dónde

T(norte,t)=mitInorte(t){\displaystyle T(n,t)=e^{-t}I_{n}(t)}

yInorte(t){\displaystyle I_{n}(t)}denota las funciones de Bessel modificadas de orden entero, n . Esta es la contraparte discreta de la gaussiana continua, ya que es la solución de la ecuación de difusión discreta ( espacio discreto , tiempo continuo), al igual que la gaussiana continua es la solución de la ecuación de difusión continua. [ 3 ] [ 4 ] [ 6 ]

Este filtro puede truncarse en el dominio espacial como en el caso de la gaussiana muestreada.

L(incógnita,t)=norte=METROMETROF(incógnitanorte)T(norte,t){\displaystyle L(x,t)=\sum _{n=-M}^{M}f(x-n)\,T(n,t)}

o puede implementarse en el dominio de Fourier utilizando una expresión de forma cerrada para su transformada de Fourier de tiempo discreto :

T^(θ,t)=norte=T(norte,t)miiθnorte=mit(porqueθ1).{\displaystyle {\widehat {T}}(\theta ,t)=\sum _{n=-\infty }^{\infty }T(n,t)\,e^{-i\theta n}=e^{t(\cos \theta -1)}.}

Con este enfoque en el dominio de la frecuencia, las propiedades del espacio de escalas se transfieren exactamente al dominio discreto, o con una excelente aproximación utilizando una extensión periódica y una transformada de Fourier discreta suficientemente larga para aproximar la transformada de Fourier de tiempo discreto de la señal que se está suavizando. Además, las aproximaciones de derivadas de orden superior se pueden calcular de manera directa (y preservando las propiedades del espacio de escalas) aplicando operadores de diferencias centrales de soporte pequeño a la representación del espacio de escalas discretas . [ 7 ]

Al igual que con la gaussiana muestreada, una simple truncación de la respuesta de impulso infinita será, en la mayoría de los casos, una aproximación suficiente para valores pequeños de ε, mientras que para valores mayores de ε es mejor utilizar una descomposición de la gaussiana discreta en una cascada de filtros binomiales generalizados o, alternativamente, construir un núcleo aproximado finito multiplicando por una función de ventana . Si ε se ha elegido demasiado grande, de modo que comienzan a aparecer efectos del error de truncamiento (por ejemplo, como extremos espurios o respuestas espurias a operadores de derivada de orden superior), entonces las opciones son disminuir el valor de ε de modo que se utilice un núcleo finito más grande, con un corte donde el soporte es muy pequeño, o utilizar una ventana cónica.

Filtros recursivos

Núcleos en el espacio de escalas. Gaussiana discreta ideal basada en funciones de Bessel (rojo) y filtros de suavizado recursivos hacia adelante/atrás de dos pares de polos (azul) con polos como se describe en el texto. Arriba se muestran los núcleos individuales y abajo su convolución acumulativa entre sí; t = [0,5, 1, 2, 4].

Dado que la eficiencia computacional suele ser importante, a menudo se utilizan filtros recursivos de bajo orden para el suavizado en el espacio de escalas. Por ejemplo, Young y van Vliet [ 8 ] utilizan un filtro recursivo de tercer orden con un polo real y un par de polos complejos, aplicado hacia adelante y hacia atrás para obtener una aproximación simétrica de sexto orden a la gaussiana con baja complejidad computacional para cualquier escala de suavizado.

Al relajar algunos de los axiomas, Lindeberg [ 3 ] concluyó que los buenos filtros de suavizado serían " secuencias de frecuencia de Pólya normalizadas", una familia de núcleos discretos que incluye todos los filtros con polos reales en 0 < Z < 1 y/o Z > 1, así como con ceros reales en Z < 0. Para la simetría, que conduce a una homogeneidad direccional aproximada, estos filtros deben restringirse aún más a pares de polos y ceros que conducen a filtros de fase cero.

Para igualar la curvatura de la función de transferencia en frecuencia cero de la gaussiana discreta, lo que garantiza una propiedad de semigrupo aproximada de t aditivo , dos polos en

Z=1+2t(1+2t)21{\displaystyle Z=1+{\frac {2}{t}}-{\sqrt {\left(1+{\frac {2}{t}}\right)^{2}-1}}}

Se puede aplicar hacia adelante y hacia atrás, para lograr simetría y estabilidad. Este filtro es la implementación más simple de un núcleo de secuencia de frecuencia de Pólya normalizado que funciona para cualquier escala de suavizado, pero no es una aproximación tan excelente a la gaussiana como el filtro de Young y van Vliet, que no es una secuencia de frecuencia de Pólya normalizada, debido a sus polos complejos.

La función de transferencia, H 1 , de un filtro recursivo de pares de polos simétrico está estrechamente relacionada con la transformada de Fourier de tiempo discreto del núcleo gaussiano discreto a través de una aproximación de primer orden de la exponencial:

T^(θ,t)=1mit(1porqueθ)11+t(1porqueθ)=H1(θ,t),{\displaystyle {\widehat {T}}(\theta ,t)={\frac {1}{e^{t(1-\cos \theta )}}}\approx {\frac {1}{1+t(1-\cos \theta )}}=H_{1}(\theta ,t),}

donde el parámetro t aquí está relacionado con la posición del polo estable Z = p mediante:

t=2pag(1pag)2.{\displaystyle t={\frac {2p}{(1-p)^{2}}}.}

Además, dichos filtros con N pares de polos, como los dos pares de polos ilustrados en esta sección, son una aproximación aún mejor a la exponencial:

1(1+tnorte(1porqueθ))norte=Hnorte(θ,t),{\displaystyle {\frac {1}{\left(1+{\frac {t}{N}}(1-\cos \theta )\right)^{N}}}=H_{N}(\theta ,t),}

donde las posiciones de los polos estables se ajustan resolviendo:

tnorte=2pag(1pag)2.{\displaystyle {\frac {t}{N}}={\frac {2p}{(1-p)^{2}}}.}

Las respuestas impulsionales de estos filtros no se aproximan mucho a una distribución gaussiana a menos que se utilicen más de dos pares de polos. Sin embargo, incluso con solo uno o dos pares de polos por escala, una señal suavizada sucesivamente a escalas crecientes se aproximará mucho a una señal suavizada mediante una distribución gaussiana. La propiedad de semigrupo se aproxima de forma deficiente cuando se utilizan muy pocos pares de polos.

Los axiomas del espacio de escalas que aún satisfacen estos filtros son:

  • linealidad
  • Invariancia de desplazamiento (desplazamientos enteros)
  • no creación de extremos locales (cruces por cero) en una dimensión
  • no mejora de los extremos locales en cualquier número de dimensiones
  • positividad
  • normalización

Las siguientes condiciones se cumplen solo de forma aproximada, siendo la aproximación mejor para un mayor número de pares de polos:

  • existencia de un generador infinitesimal A (el generador infinitesimal de la gaussiana discreta, o un filtro que la aproxima, mapea aproximadamente una respuesta de filtro recursivo a una de t infinitesimalmente mayor )
  • la estructura de semigrupo con la propiedad de suavizado en cascada asociada (esta propiedad se aproxima considerando que los núcleos son equivalentes cuando tienen el mismo valor t , incluso si no son exactamente iguales).
  • simetría rotacional
  • invariancia de escala

Este método de filtro recursivo y sus variaciones para calcular tanto el suavizado gaussiano como las derivadas gaussianas han sido descritos por varios autores. [ 8 ] [ 9 ] [ 10 ] [ 11 ] Tan et al. han analizado y comparado algunos de estos enfoques y han señalado que los filtros de Young y van Vliet son una cascada (multiplicación) de filtros hacia adelante y hacia atrás, mientras que los filtros de Deriche y Jin et al. son sumas de filtros hacia adelante y hacia atrás. [ 12 ]

A escalas finas, ni el método de filtrado recursivo ni otros métodos separables garantizan la mejor aproximación posible a la simetría rotacional, por lo que se pueden considerar implementaciones no separables para imágenes 2D como alternativa.

Al calcular simultáneamente varias derivadas en el N-jet , el suavizado discreto del espacio de escalas con el análogo discreto del núcleo gaussiano, o con una aproximación de filtro recursivo, seguido de operadores de diferencia de soporte pequeño, puede ser más rápido y más preciso que el cálculo de aproximaciones recursivas de cada operador de derivada.

Suavizadores de respuesta de impulso finito (FIR)

Para escalas pequeñas, un filtro FIR de orden bajo puede ser un mejor filtro de suavizado que un filtro recursivo. El núcleo simétrico de 3 núcleos [ t /2, 1- t , t /2] , para t 0,5 suaviza a una escala de t usando un par de ceros reales en Z < 0, y se aproxima a la gaussiana discreta en el límite de t pequeño . De hecho, con t infinitesimal , tanto este filtro de dos ceros como el filtro de dos polos con polos en Z = t /2 y Z = 2/ t pueden usarse como generador infinitesimal para los núcleos gaussianos discretos descritos anteriormente.    

Los ceros del filtro FIR se pueden combinar con los polos del filtro recursivo para crear un filtro de suavizado general de alta calidad. Por ejemplo, si el proceso de suavizado consiste en aplicar siempre un filtro biquad (dos polos, dos ceros) hacia adelante y luego hacia atrás en cada fila de datos (y en cada columna en el caso 2D), tanto los polos como los ceros pueden realizar una parte del suavizado. Los ceros tienen un límite de t = 0,5 por par (ceros en Z = –1), por lo que, a grandes escalas, los polos realizan la mayor parte del trabajo. A escalas más finas, la combinación proporciona una excelente aproximación a la gaussiana discreta si tanto los polos como los ceros realizan aproximadamente la mitad del suavizado. Los valores de t para cada parte del suavizado (polos, ceros, aplicaciones múltiples hacia adelante y hacia atrás, etc.) son aditivos, de acuerdo con la propiedad de semigrupo aproximado.

Ubicación en el plano Z de cuatro polos (X) y cuatro ceros (círculos) para un filtro de suavizado que utiliza un biquad hacia adelante/atrás para suavizar a una escala t = 2, con la mitad del suavizado proveniente de los polos y la otra mitad de los ceros. Los ceros se encuentran en Z = –1; los polos están en Z = 0,172 y Z = 5,83. Los polos fuera del círculo unitario se implementan mediante filtrado hacia atrás con los polos estables.

La función de transferencia del filtro FIR está estrechamente relacionada con la DTFT del filtro gaussiano discreto, al igual que la del filtro recursivo. Para un único par de ceros, la función de transferencia es

T^(θ,t)=mit(1porqueθ)1t(1porqueθ)=F1(θ,t),{\displaystyle {\widehat {T}}(\theta ,t)=e^{-t(1-\cos \theta )}\approx {1-t(1-\cos \theta )}=F_{1}(\theta ,t),}

donde el parámetro t aquí está relacionado con las posiciones cero Z = z mediante:

t=2z(1z)2,{\displaystyle t=-{\frac {2z}{(1-z)^{2}}},}

y requerimos que t 0,5 para que la función de transferencia siga siendo no negativa. 

Además, dichos filtros con N pares de ceros son una aproximación aún mejor a la exponencial y se extienden a valores más altos de t  :

(1tnorte(1porqueθ))norte=Fnorte(θ,t),{\displaystyle \left(1-{\frac {t}{N}}(1-\cos \theta )\right)^{N}=F_{N}(\theta ,t),}

donde las posiciones cero estables se ajustan resolviendo:

tnorte=2z(1z)2.{\displaystyle {\frac {t}{N}}=-{\frac {2z}{(1-z)^{2}}}.}

Estos filtros FIR y de polos y ceros son núcleos de espacio de escalas válidos, que satisfacen los mismos axiomas que los filtros recursivos de polos.

Implementación en tiempo real dentro de pirámides y aproximación discreta de derivadas normalizadas a escala.

En cuanto al tema de la selección automática de escala basada en derivadas normalizadas, las aproximaciones piramidales se utilizan frecuentemente para obtener un rendimiento en tiempo real. [ 13 ] [ 14 ] [ 15 ] La idoneidad de aproximar las operaciones del espacio de escalas dentro de una pirámide se origina en el hecho de que el suavizado en cascada repetido con núcleos binomiales generalizados conduce a núcleos de suavizado equivalentes que, bajo condiciones razonables, se aproximan a la gaussiana. Además, se puede demostrar que los núcleos binomiales (o, más generalmente, la clase de núcleos binomiales generalizados) constituyen la única clase de núcleos de soporte finito que garantizan la no creación de extremos locales o cruces por cero con el aumento de la escala (véase el artículo sobre enfoques multiescala para más detalles). Sin embargo, puede ser necesario tener especial cuidado para evitar artefactos de discretización.

Otros enfoques multiescala

Para núcleos unidimensionales, existe una teoría bien desarrollada de enfoques multiescala , que abarca filtros que no generan nuevos extremos locales ni nuevos cruces por cero al aumentar la escala. Para señales continuas, los filtros con polos reales en el plano s pertenecen a esta clase, mientras que para señales discretas, los filtros recursivos y FIR descritos anteriormente satisfacen estos criterios. Junto con el requisito estricto de una estructura de semigrupo continua, la gaussiana continua y la gaussiana discreta constituyen la única opción para señales continuas y discretas, respectivamente.

Existen muchas otras técnicas de procesamiento de señales, procesamiento de imágenes y compresión de datos a múltiples escalas, que utilizan ondículas y diversos núcleos, que no aprovechan ni requieren los mismos requisitos que las descripciones del espacio de escalas ; es decir, no dependen de que una escala más gruesa no genere un nuevo extremo que no estuviera presente en una escala más fina (en 1D) o de que no se produzca una mejora de los extremos locales entre niveles de escala adyacentes (en cualquier número de dimensiones).

Véase también

  • pyscsp: Caja de herramientas de espacio de escala para Python en GitHub (que incluye implementaciones de diferentes métodos para aproximar el suavizado gaussiano para datos discretos).

Referencias

  1. Lindeberg, T., "Aproximaciones discretas del suavizado gaussiano y las derivadas gaussianas", Journal of Mathematical Imaging and Vision, 66(5): 759–800, 2024.
  2. Lindeberg (2025) ”Propiedades de aproximación relativas al espacio de escala continua para discretizaciones híbridas de operadores de derivada gaussiana”, Frontiers in Signal Processing, 4: 144784: 1-12.
  3. 1 2 3 Lindeberg, T., "Espacio de escalas para señales discretas," PAMI(12), No. 3, marzo de 1990, pp. 234-254.
  4. 1 2 Lindeberg, T., Teoría del espacio de escalas en visión por computadora, Kluwer Academic Publishers, 1994 , ISBN 0-7923-9418-6
  5. RA Haddad y AN Akansu, " Una clase de filtros binomiales gaussianos rápidos para el procesamiento de voz e imágenes ", IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 39, pp 723-727, marzo de 1991.
  6. Campbell, J, 2007, El modelo SMM como un problema de valores en la frontera utilizando la ecuación de difusión discreta , Theor Popul Biol. 2007 dic;72(4):539-46.
  7. Lindeberg, T. Aproximaciones de derivadas discretas con propiedades de espacio de escala: una base para la extracción de características de bajo nivel, J. of Mathematical Imaging and Vision, 3(4), pp. 349--376, 1993.
  8. 1 2 Ian T. Young y Lucas J. van Vliet (1995). "Implementación recursiva del filtro gaussiano" . Procesamiento de señales . 44 (2): 139– 151. Bibcode : 1995SigPr..44..139Y . CiteSeerX 10.1.1.12.2826 . doi : 10.1016/0165-1684(95)00020-E . 
  9. Deriche, R: Implementación recursiva de la gaussiana y sus derivadas, Informe de investigación INRIA 1893, 1993.
  10. Richard F. Lyon. "Reconocimiento de voz en el espacio de escalas", Actas de ICASSP de 1987. San Diego, marzo, págs. 29.3.14, 1987.
  11. Jin, JS, Gao Y. "Implementación recursiva del filtrado LoG". Real-Time Imaging 1997;3:59–65.
  12. . Archivado el 9 de mayo de 2006 en Wayback Machine Sovira Tan; Jason L. Dale y Alan Johnston (2003). "Rendimiento de tres algoritmos recursivos para filtrado gaussiano rápido con variación espacial". Real-Time Imaging . Vol. 9, n.º 3. págs. 215–228 . doi : 10.1016/S1077-2014(03)00040-8 .   
  13. Lindeberg, Tony y Bretzner, Lars (2003). «Selección de escala en tiempo real en representaciones híbridas multiescala». Métodos de espacio de escala en visión por computadora . Notas de clase en ciencias de la computación. Vol. 2695. Actas de Scale-Space'03, Springer Lecture Notes in Computer Science. págs. 148–163 . doi : 10.1007/3-540-44935-3_11 . ISBN   978-3-540-40368-5.
  14. Crowley, J, Riff O: Cálculo rápido de campos receptivos gaussianos normalizados a escala, Proc. Scale-Space'03, Isla de Skye, Escocia, Springer Lecture Notes in Computer Science, volumen 2695, 2003.
  15. Lowe, DG, “Características distintivas de imágenes a partir de puntos clave invariantes a la escala”, International Journal of Computer Vision, 60, 2, pp. 91-110, 2004.
Obtenido de " https://en.wikipedia.org/w/index.php?title=Scale_space_implementation&oldid=1319035390 "