Está en la página 1de 34

Traducido del inglés al español - www.onlinedoctranslator.

com

CAPÍTULO 4

Filtros lineales

Las imágenes de cebras y dálmatas tienen píxeles en blanco y negro, y también en


aproximadamente el mismo número. Las diferencias entre los dos tienen que ver con la
apariencia característica de pequeños grupos de píxeles, más que con los valores de los píxeles
individuales. En este capítulo, presentamos métodos para obtener descripciones de la
apariencia de un pequeño grupo de píxeles.
Nuestra estrategia principal es utilizar sumas ponderadas de valores de píxeles utilizando
diferentes patrones de pesos para encontrar diferentes patrones de imagen. A pesar de su
simplicidad, este proceso es sumamente útil. Nos permite suavizar el ruido en las imágenes y
encontrar bordes y otros patrones de imagen.

4.1 FILTROS LINEALES Y CONVOLUCIÓN


Se pueden modelar muchos efectos importantes con un modelo simple. Construya una nueva
matriz, del mismo tamaño que la imagen. Llene cada ubicación de esta nueva matriz con una
suma ponderada de los valores de píxeles de las ubicaciones que rodean la ubicación
correspondiente en la imagenusando el mismo juego de pesas cada vez. Podrían usarse
diferentes conjuntos de pesos para representar diferentes procesos. Un ejemplo es calcular un
promedio local tomado de una región fija. Podríamos promediar todos los píxeles dentro de un
2k + 1 × 2k + 1 bloque del píxel de interés. Para una imagen de entradaF, esto da una salida

u∑ + = j +∑k
= ikv
1
Rij = Fuv.
(2k + 1)2
u = i − kv = j − k

Los pesos en este ejemplo son simples (cada píxel está ponderado por la misma constante), pero
podríamos usar un conjunto de pesos más interesante. Por ejemplo, podríamos usar un conjunto de
pesos que fuera grande en el centro y cayera bruscamente a medida que aumentaba la distancia
desde el centro para modelar el tipo de suavizado que ocurre en un sistema de lentes desenfocado.

Cualesquiera que sean los pesos elegidos, el resultado de este procedimiento es


desplazamiento invariantelo que significa que el valor de la salida depende del patrón en
una vecindad de la imagen, en lugar de la posición de la vecindad, y lineal-lo que significa
que la salida para la suma de dos imágenes es la misma que la suma de las salidas
obtenidas para las imágenes por separado. El procedimiento se conoce comofiltrado lineal.

4.1.1 Convolución
Introducimos algo de notación en este punto. El patrón de pesos utilizado para un filtro
lineal se suele denominar elnúcleo del filtro. El proceso de aplicación del filtro
generalmente se conoce comocircunvolución. Hay una trampa: por razones que
aparecerán más adelante (Sección 4.2.1), es conveniente escribir el proceso de una manera
no obvia. En particular, dado un núcleo de filtroH la convolución del kernel con imagen

107
Sección 4.1 Filtros lineales y convolución 108

F es una imagen R. los yo, jth componente de R es dado por



Rij = Hyo − u, j − vFu, v.
u, v

Este proceso define la convolución: decimos que H ha sido convolucionado con F ceder
R. Debería mirar de cerca esta expresión; la "dirección" de la variable ficticia
u (resp. v) se ha invertido en comparación con la correlación. Esto es importante porque si
olvidas que está ahí, calculas la respuesta incorrecta. La razón de la inversión surge de la
derivación de la Sección 4.2.1. Evitamos cuidadosamente insertar el rango de la suma; en
efecto, asumimos que la suma se encuentra en un rango suficientemente grande detu y v que
se tengan en cuenta todos los valores distintos de cero. Además, asumimos que cualquier valor
que no se haya especificado es cero; esto significa que podemos modelar el núcleo como un
pequeño bloque de valores distintos de cero en un mar de ceros. Usamos esta convención
común con regularidad en lo que sigue.

Ejemplo: suavizado por promediado


Las imágenes suelen tener la propiedad de que el valor de un píxel suele ser similar al de
su vecino. Supongamos que la imagen se ve afectada por el ruido de una forma en la que
podemos esperar razonablemente que se conserve esta propiedad. Por ejemplo, es posible que
haya píxeles muertos ocasionales o que se hayan agregado pequeños números aleatorios con
media cero a los valores de píxeles. Es natural intentar reducir los efectos de este ruido
reemplazando cada píxel con un promedio ponderado de sus vecinos, un proceso que a
menudo se denominasuavizado o borrón.

FIGURA 4.1: Aunque un promedio local uniforme puede parecer un buen modelo de desenfoque, genera efectos
que normalmente no se ven al desenfocar una lente. Las imágenes de arriba comparan los efectos de un promedio
local uniforme con el promedio ponderado. La imagen en elizquierda muestra una vista de la hierba; en elcentrar,
el resultado de difuminar esta imagen utilizando un modelo local uniforme; y en elDerecha, el resultado de
difuminar esta imagen usando un conjunto de pesos gaussianos. El grado de desenfoque en cada caso es
aproximadamente el mismo, pero el promedio uniforme produce un conjunto de barras verticales y horizontales
estrechas, un efecto que a menudo se conoce comoEl sonar. Los pequeños recuadros muestran los pesos
utilizados para difuminar la imagen, renderizados ellos mismos como una imagen; los puntos brillantes
representan valores grandes y los puntos oscuros representan valores pequeños (en este ejemplo, los valores más
pequeños son cero).

Reemplazar cada píxel con un promedio no ponderado calculado sobre una región
fija centrada en el píxel es lo mismo que la convolución con un núcleo que es un bloque
Sección 4.1 Filtros lineales y convolución 109

de unos multiplicados por una constante. Puede (y debe) establecer este punto prestando mucha
atención al rango de la suma. Este proceso es un mal modelo de desenfoque; su salida no se parece a
la de una cámara desenfocada (Figura 4.1). La razón es clara. Suponga que tenemos una imagen en
la que todos los puntos menos el punto central son cero y el punto central es uno. Si difuminamos
esta imagen formando un promedio no ponderado en cada punto, el resultado parece una caja
pequeña y brillante, pero esto no es lo que hacen las cámaras desenfocadas. Queremos un proceso
de desenfoque que lleve un pequeño punto brillante a una región de desenfoque circularmente
simétrica, más brillante en el centro que en los bordes y que se desvanezca lentamente hacia la
oscuridad. Como sugiere la Figura 4.1, un conjunto de pesos de esta forma produce un modelo de
desenfoque mucho más convincente.

0.4

0,35

0,3

0,25

0,2

0,15

0,1

0,05

0
5

0
0

-5 -5

FIGURA 4.2: El kernel gaussiano simétrico en 2D. Esta vista muestra un kernel escalado para que su
suma sea igual a uno; esta escala se omite con bastante frecuencia. El kernel mostrado tiene
σ = 1. La convolución con este núcleo forma un promedio ponderado que enfatiza el punto en el
centro de la ventana de convolución e incorpora poca contribución de aquellos en el límite. Observe
cómo el gaussiano es cualitativamente similar a nuestra descripción de la función de dispersión de
puntos de la imagen borrosa: es circularmente simétrico, tiene la respuesta más fuerte en el centro y
desaparece cerca de los límites.

Ejemplo: suavizado con un gaussiano


Un buen modelo formal para esta mancha difusa es el núcleo gaussiano simétrico
()
1 (X2 + y2)
GRAMOσ(x, y) = exp -
2πσ2 2σ2

ilustrado en la Figura 4.2. σ se conoce comoDesviación Estándar del gaussiano (¡o su


“sigma”!); las unidades son espacios entre píxeles, generalmente denominadospíxeles. los
Sección 4.1 Filtros lineales y convolución 110

El término constante hace que la integral de todo el plano sea igual a uno y, a menudo, se
ignora en las aplicaciones de suavizado. El nombre proviene del hecho de que este núcleo tiene
la forma de la densidad de probabilidad para una variable aleatoria 2D normal (o gaussiana)
con una covarianza particular.
Este núcleo de suavizado forma un promedio ponderado que pondera los píxeles en
su centro con mucha más fuerza que en sus límites. Se puede justificar este enfoque
cualitativamente: el suavizado suprime el ruido al hacer cumplir el requisito de que los
píxeles se parezcan a sus vecinos. Al reducir la ponderación de los vecinos distantes en el
promedio, podemos garantizar que el requisito de que un píxel se parezca a sus vecinos se
imponga con menos fuerza a los vecinos lejanos. Un análisis cualitativo da lo siguiente:

• Si la desviación estándar del gaussiano es muy pequeña, digamos, más pequeña que un
píxel, el suavizado tendrá poco efecto porque los pesos de todos los píxeles fuera del
centro serán muy pequeños.

• Para una desviación estándar mayor, los píxeles vecinos tendrán mayores pesos en el
promedio ponderado, lo que a su vez significa que el promedio estará fuertemente
sesgado hacia un consenso de los vecinos. Esta será una buena estimación del valor de
un píxel y el ruido desaparecerá en gran medida a costa de algo de desenfoque.

• Finalmente, un kernel que tiene una gran desviación estándar hará que gran parte de los
detalles de la imagen desaparezcan, junto con el ruido.

La figura 4.3 ilustra estos fenómenos. Debe notar que el suavizado gaussiano puede
ser efectivo para suprimir el ruido.
En las aplicaciones, un kernel de suavizado discreto se obtiene construyendo un
2k + 1 × 2k + 1 matriz cuyo yo, jel valor es
( )
1 ((yo - k - 1)2 + (j - k - 1)2)
Hij = 2πσ2 exp - .
2σ2

Observe que se debe tener cuidado con σ. Si σ es demasiado pequeño, solo un elemento
de la matriz tendrá un valor distinto de cero. Si σ es grande, entoncesk debe ser grande
también; de lo contrario, ignoramos las contribuciones de los píxeles que deberían contribuir
con un peso sustancial.

Ejemplo: derivadas y diferencias finitas


Los derivados de la imagen se pueden aproximar usando otro ejemplo de un proceso de
convolución. Porque
∂f f (x + ϵ, y) - f (x, y)
= lim ,
∂x ϵ →0 ϵ
podríamos estimar una derivada parcial como una fi simétricadiferencia nita:

∂h
≈ hyo +1,j - hyo1,j.
∂x
Esto es lo mismo que una convolución, donde el núcleo de convolución es
⎧ ⎫
⎨0 0 0⎬
H= 1 0 - 1.
⎩ ⎭
0 0 0
Sección 4.1 Filtros lineales y convolución 111

σ = 0,05 σ = 0,1 σ = 0,2

no
suavizado

σ = 1 píxel

σ = 2 píxeles

FIGURA 4.3: los fila superior muestra imágenes de un nivel de gris medio constante corrompido por
ruido gaussiano aditivo. En este modelo de ruido, a cada píxel se le agrega una variable aleatoria
normal de media cero. El rango de valores de píxeles es de cero a uno, por lo que la desviación
estándar del ruido en la primera columna es aproximadamente 1/20 del rango completo. losfila
central muestra el efecto de suavizar la imagen correspondiente en la fila superior con un filtro
gaussiano de σ un píxel. Observe la molesta sobrecarga de notación aquí; hay ruido gaussiano y
filtros gaussianos, y ambos tienen σ. Uno usa el contexto para mantener estos dos rectos, aunque
esto no siempre es tan útil como podría ser, porque los filtros gaussianos son particularmente
buenos para suprimir el ruido gaussiano. Esto se debe a que los valores de ruido en cada píxel son
independientes, lo que significa que el valor esperado de su promedio será la media del ruido. los
fila inferior muestra el efecto de suavizar la imagen correspondiente en la fila superior con un
filtro gaussiano de σ dos píxeles.

Tenga en cuenta que este núcleo podría interpretarse como una plantilla: da una gran
respuesta positiva a una configuración de imagen que es positiva en un lado y negativa en
el otro, y una gran respuesta negativa a la imagen reflejada.
Como sugiere la figura 4.4, las diferencias finitas dan una estimación muy insatisfactoria de la
derivada. Esto se debe a que las diferencias finitas responden fuertemente (es decir, tienen una
salida de gran magnitud) a cambios rápidos, y los cambios rápidos son característicos del ruido. A
grandes rasgos, esto se debe a que los píxeles de la imagen tienden a parecerse entre sí. Por
ejemplo, si hubiéramos comprado una cámara de descuento con algunos píxeles que estuvieran
atascados en blanco o negro, la salida del proceso de diferencias finitas sería grande en esos
Sección 4.2 Shift Invariant Linear Systems 112

FIGURA 4.4: los fila superior muestra estimaciones de derivadas obtenidas por diferencias finitas. La
imagen en elizquierda muestra un detalle de una imagen de una cebra. loscentrar La imagen
muestra la derivada parcial en el y-dirección, que responde fuertemente a las rayas horizontales y
débilmente a las verticales, y la Derecha La imagen muestra la derivada parcial en el
X-dirección — que responde fuertemente a las rayas verticales y débilmente a las horizontales.
Sin embargo, las diferencias finitas responden fuertemente al ruido. La imagen encentro
izquierda muestra un detalle de una imagen de una cebra; la siguiente imagen de la fila se
obtiene agregando un número aleatorio con media cero y distribución normal (σ = 0.03; el valor
más oscuro en la imagen es 0 y el más claro 1) a cada píxel; y la tercera imagen se obtiene
agregando un número aleatorio con media cero y distribución normal (σ = 0.09) a cada píxel. los
fila inferior muestra la derivada parcial en el X-dirección de la imagen en la cabecera de la fila.
Observe con qué fuerza el proceso de diferenciación enfatiza el ruido de la imagen; las cifras
derivadas se ven cada vez más granuladas. En las cifras derivadas, un nivel de gris medio es un valor
cero, un nivel de gris oscuro es un valor negativo y un nivel de gris claro es un valor positivo.

píxeles porque son, en general, sustancialmente diferentes de sus vecinos. Todo esto
sugiere que alguna forma de suavizado es apropiada antes de la diferenciación; los
detalles aparecen en la Sección 5.1.

4.2 SISTEMAS LINEALES INVARIANTES DE CAMBIO

La convolución representa el efecto de una gran clase de sistema. En particular, la mayoría de los
sistemas de imágenes tienen, en una buena aproximación, tres propiedades importantes:

• Superposición: Esperamos que

R (f + g) = R (f) + R (g);
Sección 4.2 Shift Invariant Linear Systems 113

es decir, la respuesta a la suma de estímulos es la suma de las respuestas


individuales.

• Escalada: La respuesta a una entrada cero es cero. Tomado con superposición,


tenemos que la respuesta a un estímulo escalado es una versión escalada de la
respuesta al estímulo original; es decir,

R (kf) = kR (f).

Un dispositivo que exhibe superposición y escala es lineal.

• Invarianza de cambio: en un cambio invariante sistema, la respuesta a un estímulo


traducido es solo una traducción de la respuesta al estímulo. Esto significa que, por
ejemplo, si una vista de una pequeña luz dirigida al centro de la cámara es una mancha
pequeña y brillante, entonces si la luz se mueve a la periferia, deberíamos ver la misma
mancha pequeña y brillante, solo traducida .

Un dispositivo que es lineal e invariante de desplazamiento se conoce como desplazamiento del sistema lineal invariante,
o a menudo solo como un sistema.
La respuesta de un sistema lineal invariante de desplazamiento a un estímulo se obtiene
por convolución. Demostramos esto primero para sistemas que toman entradas discretas,
digamos, vectores o matrices, y producen salidas discretas. Luego usamos esto para describir el
comportamiento de sistemas que operan en funciones continuas de la línea o el plano, y de
este análisis obtenemos algunos datos útiles sobre la convolución.

4.2.1 Convolución discreta


En el caso 1D, tenemos un sistema lineal invariante de desplazamiento que toma un vector
y responde con un vector. Este caso es el más fácil de manejar porque hay menos índices
que cuidar. El caso 2D, un sistema que toma una matriz y responde con una matriz, sigue
fácilmente. En cada caso, asumimos que la entrada y la salida son de dimensión infinita.
Esto nos permite ignorar algunos problemas menores que surgen en los límites de la
entrada. Nos ocupamos de estos en la Sección 4.2.3.

Convolución discreta en una dimensión


Tenemos un vector de entrada F. Por conveniencia, asumimos que el vector tiene una longitud
infinita y sus elementos están indexados por los números enteros (es decir, hay un elemento con
índice -1, digamos). losIEl componente de este vector es FI. AhoraF es una suma ponderada de
elementos básicos. Una base conveniente es un conjunto de elementos que tienen un uno en un solo
componente y ceros en el resto. Nosotros escribimos

mi0 =. . .0, 0, 0, 1, 0, 0, 0,. . .

Este es un vector de datos que tiene un 1 en el lugar cero y ceros en el resto. Defina
una operación de desplazamiento, que lleve un vector a una versión desplazada de
ese vector. En particular, el vectorCambio(F, I) tiene, como su jth componente, el j - yo
th componente de F. Por ejemplo, Cambio(mi0, 1) tiene un cero en el primer
componente. Ahora podemos escribir ∑
f= FICambio(mi0, I).
I
Sección 4.2 Shift Invariant Linear Systems 114

Escribimos la respuesta de nuestro sistema a un vector F como

R (F).

Ahora, debido a que el sistema es invariante de desplazamiento, tenemos

R (Cambio(F, k)) = Cambio(R (F), k).

Además, debido a que es lineal, tenemos

R (kf) = kR (F).

Esto significa que


( )

R (f) = R FICambio(mi0, I)

∑I
= R (fICambio(mi0, I))
I

= FIR (Cambio(mi0, I))
I

= FICambio(R (mi0), I)).
I

Esto significa que para obtener la respuesta del sistema a cualquier vector de datos, necesitamos
conocer solo su respuesta a mi0. Esto generalmente se llama el sistemarespuesta impulsiva.
Suponga que la respuesta al impulso se puede escribir como gramo. Tenemos

R (f) = FICambio(gramo, i) = gramo ∗ F.
I

Esto define una operación, la versión discreta 1D de convolución, que escribimos con
un ∗.
Todo esto está muy bien, pero no nos da una expresión particularmente
fácil para la salida. Si consideramos eljel elemento de R (F), que escribimos
como RI, Debemos tener ∑
Rj = gramo F , j−i I

que se ajusta a (y explica el origen) del formulario utilizado en la Sección 4.1.1.

Convolución discreta en dos dimensiones Ahora usamos una matriz de


valores y escriba el yo, jth elemento de la matriz D como Dij. La analogía apropiada para
una respuesta de impulso es la respuesta a un estímulo que se parece a

... ... ... ... ...

... 0 0 0 ...

mi00 =. . . 0 1 0 ...

... 0 0 0 ...

... ... ... ... ...


Sección 4.2 Shift Invariant Linear Systems 115

Si GRAMO es la respuesta del sistema a este estímulo, las mismas consideraciones que para la
convolución 1D producen una respuesta a un estímulo F, es decir,

Rij = GRAMOyo − u, j − vFuv,
u, v

que escribimos como


R = G ∗ ∗ H.

4.2.2 Convolución continua


Hay sistemas lineales invariantes de desplazamiento que producen una respuesta continua a una
entrada continua; por ejemplo, la lente de una cámara toma un conjunto de radiancias y produce
otro conjunto, y muchas lentes son aproximadamente invariantes al cambio. Un breve estudio de
estos sistemas nos permite estudiar la información perdida al aproximar una función continua, los
valores de radiancia entrante a través de un plano de imagen, mediante una función discreta, el valor
en cada píxel.
La descripción natural es en términos de la respuesta del sistema a una función
poco natural, la función δ, que no es una función en términos formales. Primero
hacemos la derivación en una dimensión para facilitar la notación.

Convolución en una dimensión


Obtenemos una expresión para la respuesta de un sistema lineal invariante de desplazamiento
continuo a partir de nuestra expresión para un sistema discreto. Podemos tomar una entrada discreta y
reemplazar cada valor con un cuadro que se ubica a ambos lados del valor; esto da una función de entrada
continua. Luego hacemos las cajas más estrechas y consideramos lo que sucede en el límite.

Nuestro sistema toma una función de una dimensión y devuelve una función de una
dimensión. Nuevamente, escribimos la respuesta del sistema a alguna entradaf (x) como R (f);
cuando necesitamos enfatizar que F es una función, escribimos R (f (x)). La respuesta también
es una función; ocasionalmente, cuando necesitamos enfatizar este hecho, escribimos
R (f) (u). Podemos expresar la propiedad de linealidad en esta notación escribiendo

R (kf) = kR (f)

(por k alguna constante) y la propiedad de invariancia de desplazamiento mediante la introducción de una Cambio
operador, que lleva funciones a funciones:

Cambio(f, c) = f (u - c).

Con este Cambio operador, podemos escribir la propiedad de invariancia de desplazamiento como

R (Cambio(f, c)) = Cambio(R (f), c).

Definimos el caja funcionan como:


{
0 abs (x)> ϵ 2.
cajaϵ(x) =
1 abs (x) < ϵ 2
Sección 4.2 Shift Invariant Linear Systems 116

El valor de cajaϵ(ϵ /2) no importa para nuestros propósitos. La función de entrada esf (x).
Construimos una cuadrícula uniforme de puntos XI, dónde Xyo +1 - XI = ϵ. Ahora construimos
un vector F cuyo Ith componente (escrito FI) es f (xI). Este vector se puede utilizar para
representar la función. ∑
Obtenemos una representación aproximada de F por I FICambio(cajaϵ, XI). Nosotros
aplicar esta entrada a un sistema lineal invariante de desplazamiento; la respuesta es una suma ponderada
de respuestas desplazadas a funciones de caja. Esto significa que
()
∑ ∑
R FICambio(cajaϵ, XI) = R (fICambio(cajaϵ, XI))
I I

= FIR (Cambio(cajaϵ, XI))
I
∑ cajaϵ ϵ), X )
= FICambio(R ( I
I
ϵ

= FICambio(R ( cajaϵ ), XI).ϵ
I
ϵ

Hasta ahora, todo ha seguido nuestra derivación para funciones discretas. Ahora
tenemos algo que parece una integral aproximada si ϵ→ 0.
Introducimos un nuevo dispositivo, llamado función δ, para tratar el término cajaϵ/ ϵ.
Definir
cajaϵ(X)
Dϵ(x) = .
ϵ
La función δ es:
δ (x) = lim Dϵ(X).
ϵ →0

No intentamos evaluar este límite, por lo que no necesitamos discutir el valor de δ (0).
Una característica interesante de esta función es que, para sistemas lineales invariantes de
desplazamiento prácticos, la respuesta del sistema a una función δ existe y tienesoporte
compactoes decir, es cero excepto en un número finito de intervalos de longitud finita). Por
ejemplo, un buen modelo de una función δ en 2D es una luz extremadamente pequeña y
extremadamente brillante. Si hacemos la luz más pequeña y brillante mientras nos aseguramos
de que la energía total sea constante, esperamos ver un punto pequeño pero finito debido al
desenfoque de la lente. La función δ es el análogo natural demi0 en el caso continuo.
Esto significa que la expresión de la respuesta del sistema,

FICambio(R ( cajaϵ), x)I ϵ,
I
ϵ

se convierte en una integral cuando ϵ limita a cero. Obtenemos



R (f) = {R (δ) (u - x′)} f (x′) dx′

= g (u - x′) f (x′) dx′,
Sección 4.2 Shift Invariant Linear Systems 117

donde hemos escrito R (δ) -que generalmente se llama respuesta impulsiva del sistema,
como gramo y han omitido los límites de la integral. Estas integrales podrían ser de:∞ para
∞, pero podrían aplicarse límites más estrictos si gramo y h tienen soporte compacto. Esta
operación se llamaconvoluciónnuevamente), y escribimos la expresión anterior como

R (f) = (g ∗ F).
La convolución es conmutativo sentido

(gramo ∗ h) (x) = (h ∗ g) (x).

La convolución es de asociación, significa que

(F ∗ (gramo ∗ h)) = ((f ∗ gramo) ∗ h).

Esta última propiedad significa que podemos encontrar un sistema lineal invariante de
desplazamiento único que se comporta como la composición de dos sistemas diferentes. Esto será
útil cuando analicemos el muestreo.

Convolución en dos dimensiones


La derivación de la convolución en dos dimensiones requiere más notación. Una función
de caja ahora viene dada porcajaϵ2(x, y) = cajaϵ(x) cajaϵ(y); ahora tenemos

cajaϵ2(x, y)
Dϵ(x, y) = .
ϵ2
La función δ es el límite de Dϵ(x, y) funcionar como ϵ → 0. Finalmente, hay más términos en
la suma. Toda esta actividad da como resultado la expresión
∫∫
R (h) (x, y) = g (x - x′, y - y′) h (x′, y′) dxdy

= (gramo ∗ ∗h) (x, y),

donde hemos usado dos ∗s para indicar una convolución bidimensional. La convolución en
2D esconmutativo significa que

(gramo ∗ ∗h) = (h ∗ ∗gramo),

y de asociación, significa que

((F ∗ ∗gramo) ∗ ∗h) = (f ∗ ∗ (gramo ∗ ∗h)).

Un modelo natural para la respuesta al impulso de un sistema bidimensional es pensar en el patrón


visto en una cámara que mira una fuente de luz muy pequeña y distante (que subtiende un ángulo de
visión muy pequeño). En lentes prácticos, esta vista da como resultado una especie de mancha
difusa, que justifica el nombrefunción de dispersión de puntos, que se utiliza a menudo para la
respuesta al impulso de un sistema 2D. La función de dispersión de puntos de un sistema lineal a
menudo se conoce como sunúcleo.
Sección 4.3 Frecuencia espacial y transformadas de Fourier 118

4.2.3 Efectos de borde en convoluciones discretas

En sistemas prácticos, no podemos tener arreglos infinitos de datos. Esto significa que
cuando calculamos la convolución, tenemos que lidiar con los bordes de la imagen; en los
bordes, hay ubicaciones de píxeles donde calcular el valor de la imagen convolucionada
requiere valores de imagen que no existen. Hay una variedad de estrategias que podemos
adoptar:

• Ignore estas ubicaciones, lo que significa que solo informamos los valores para los que
existe cada ubicación de imagen requerida. Esto tiene la ventaja de la probidad, pero la
desventaja de que la salida es menor que la entrada. Las convoluciones repetidas
pueden hacer que la imagen se encoja drásticamente.

• Rellena la imagen con valores constantes, lo que significa que, cuando miramos los
valores de salida más cercanos al borde de la imagen, la medida en que la salida de
la convolución depende de la imagen desciende. Este es un truco conveniente
porque podemos asegurarnos de que la imagen no se encoja, pero tiene la
desventaja de que puede crear la apariencia de gradientes sustanciales cerca del
límite.

• Acolche la imagen de alguna otra manera. Por ejemplo, podríamos pensar en la


imagen como una función doblemente periódica de modo que si tenemos una norte
× metro imagen, luego columna m + 1 (necesario para la convolución) sería lo
mismo que la columna m− 1. Esto puede crear la apariencia de valores sustanciales
de la segunda derivada cerca del límite.

4.3 TRANSFORMACIONES DE FRECUENCIA ESPACIAL Y FOURIER

Hemos utilizado el truco de pensar en una señal. g (x, y) como una suma ponderada de un número grande
(o infinito) de funciones de caja pequeñas (o infinitamente pequeñas). Este modelo enfatiza que una señal
es un elemento de un espacio vectorial. Las funciones de caja forman una base conveniente y los pesos son
coeficientes sobre esta base. Necesitamos una nueva técnica para lidiar con dos problemas relacionados
que hasta ahora quedan abiertos:

• Aunque está claro que una versión de imagen discreta no puede representar la
información completa en una señal, todavía no hemos indicado qué se pierde.

• Está claro que no podemos encoger una imagen simplemente tomando cada kEste píxel
podría convertir una imagen de tablero de ajedrez en todo blanco o negro, y nos gustaría
saber cómo encoger una imagen de forma segura.

Todos estos problemas están relacionados con la presencia de cambios rápidos en una imagen. Por
ejemplo, al encoger una imagen es más probable que se pierdan efectos rápidos porque podrían deslizarse
entre muestras; de manera similar, la derivada es grande en cambios rápidos.
Estos efectos pueden ser estudiados por un cambio de base. Cambiamos la base para que sea
un conjunto de sinusoides y representamos la señal como una suma ponderada infinita de un
número infinito de sinusoides. Esto significa que los cambios rápidos en la señal son obvios, porque
corresponden a grandes cantidades de sinusoides de alta frecuencia en la nueva base.
Sección 4.3 Frecuencia espacial y transformadas de Fourier 119

FIGURA 4.5: El componente real de los elementos base de Fourier mostrados como imágenes de intensidad.
El punto más brillante tiene valor uno y el punto más oscuro tiene valor cero. El dominio es
[-1, 1] × [-1, 1], con el origen en el centro de la imagen. Sobre elizquierda, (u, v) = (0, 0,4); en
elcentro, (u, v) = (1, 2); y en elDerecha (u, v) = (10, -5). Estos son sinusoides de varias
frecuencias y orientaciones descritas en el texto.

4.3.1 Transformadas de Fourier

El cambio de base se efectúa mediante un Transformada de Fourier. Definimos la transformada


de Fourier de una señal g (x, y) ser

∫ ∫∞
F(g (x, y)) (u, v) = g (x, y) e−i2π (ux + vy)dxdy.
-∞

Suponga que las condiciones técnicas apropiadas son verdaderas para que esta integral
exista. Es suficiente para todos los momentos degramo ser finito; se dispone de una variedad
de otras condiciones posibles (Bracewell 1995). El proceso toma una función valorada compleja
dex, y y devuelve una función valorada compleja de u, v (las imágenes son funciones de valor
complejo con componente imaginario cero).
Por el momento, arregla tu y v, y consideremos el significado del valor de la
transformación en ese punto. Lo exponencial se puede reescribir

mi−i2π (ux + vy) = cos (2π (ux + vy)) + i pecado (2π (ux + vy)).

Estos términos son sinusoides en el x, y plano, cuya orientación y frecuencia están dadas
por u, v. Por ejemplo, considere el término real, que es constante cuando ux + vy
es constante (es decir, a lo largo de una línea recta en el x, y plano cuya orientación viene dada por
tan θ = v / u). El gradiente de este término es perp √mindicular a las líneas donde ux + vy es
constante, y la frecuencia de la sinusoide es tu2 + v2. Estos sinusoides a menudo se
denominancomponentes de frecuencia espacial; una variedad se ilustra en la Figura 4.5.
La integral debe verse como un producto escalar. Si arreglamostu y v, el valor de
la integral es el producto escalar entre una sinusoide en X y y y la función original.
Esta es una analogía útil porque los productos escalares miden la cantidad de un
vector en la dirección de otro.
De la misma manera, el valor de la transformación en un determinado tu y v puede verse
como la medición de la cantidad de la sinusoide con una frecuencia y orientación determinadas
Sección 4.3 Frecuencia espacial y transformadas de Fourier 120

en la señal. La transformación toma una función deX y y a la función de tu y v


cuyo valor en cualquier particular (u, v) es la cantidad de esa sinusoide particular en la función
original. Esta visión justifica el modelo de una transformada de Fourier como un cambio de
base.

Linealidad
La transformada de Fourier es lineal:

F(g (x, y) + h (x, y)) = F(g (x, y)) + F(h (x, y))
y
F(kg (x, y)) = kF(g (x, y)).

La transformada inversa de Fourier Es útil para recuperar una señal de su


transformada de Fourier. Este es otro cambio de base con la forma

∫ ∫∞
g (x, y) = F(g (x, y)) (u, v) eI2π (ux + vy)dudv.
-∞

Pares de transformadas de Fourier Las transformadas de Fourier se conocen en forma cerrada


para una variedad de casos útiles; un gran conjunto de ejemplos aparece en Bracewell (1995).
Enumeramos algunos en la Tabla 4.1 como referencia. La última línea de la Tabla 4.1 contiene la
teorema de convolución; la convolución en el dominio de la señal es lo mismo que la multiplicación
en el dominio de Fourier.

Fase y magnitud La transformada de Fourier consta de un componente real


y uno complejo:
∫∫∞
F(g (x, y)) (u, v) = g (x, y) cos (2π (ux + vy)) dxdy +
-∞
∫∫∞
I g (x, y) pecado (2π (ux + vy)) dxdy
-∞
= ℜ (F (g)) + yo ∗ ℑ (F (gramo))
= FR(g) + yo ∗ FI(gramo).

Por lo general, es inconveniente dibujar funciones complejas del plano. Una solución
es trazarFR(gramo) y FI(gramo) por separado; otro es considerar elmagnitud y
fase de las funciones complejas, y trazarlas en su lugar. Estos se denominan entonces
espectro de magnitud y espectro de fase, respectivamente.
El valor de la transformada de Fourier de una función en un determinado u, v el punto
depende de toda la función. Esto es obvio a partir de la definición porque el dominio de la
integral es el dominio completo de la función. Sin embargo, conduce a algunas propiedades
sutiles. Primero, un cambio local en la función (por ejemplo, poner a cero un bloque de puntos)
conducirá a un cambioen cada punto en la transformada de Fourier. Esto significa que la
transformada de Fourier es bastante difícil de usar como representación (por ejemplo,
Sección 4.4 Muestreo y aliasing 121

TABLA 4.1: Una variedad de funciones de dos dimensiones y sus transformadas de Fourier. Esta
tabla se puede utilizar en dos direcciones (con sustituciones apropiadas parau, v y x, y)
porque la transformada de Fourier de la transformada de Fourier de una función es la función. Los lectores
observadores podrían sospechar que los resultados sobre sumas infinitas de funciones δ contradicen la
linealidad de las transformadas de Fourier. Mediante una inspección cuidadosa de los límites, es posible
demostrar que no es así (ver, por ejemplo, Bracewell (1995)). Los lectores observadores también podrían
haber notado que una expresión paraF(
∂y∂f ) se puede obtener combinando dos líneas de esta tabla.

Función Transformada de Fourier

∫ ∫∞
g (x, y) g (x, y) e−i2π (ux + vy)dxdy
-∞
∫ ∫∞
F(g (x, y)) (u, v) eI2π (ux + vy)dudv F(g (x, y)) (u, v)
-∞
δ (x, y) 1

∂f (x, y) tuF(f) (u, v)


∂x

0.5δ (x + a, y) + 0.5δ (x - a, y) cos 2πau

mi−π (x2+ y2) mi−π (u2+ v2)

caja1(x, y) pecado tu pecado v

uv

F(f) (u / a, v / b)
f (hacha, por)
ab
∑∞ ∑∞ ∑∞ ∑∞
i = -∞ j = -∞
δ (x - yo, y - j) i = -∞ j = -∞
δ (u - yo, v - j)

(F ∗ ∗g) (x, y) F(F)F(g) (u, v)

f (x - a, y - b) mi−i2π (au + bv)F(F)

f (x cos θ - y pecado θ, X pecado θ + y cos θ) F(f) (u cos θ - v pecado θ, tu pecado θ + v cos θ)

podría ser muy difícil saber si un patrón estaba presente en una imagen con solo mirar la
transformada de Fourier). En segundo lugar, los espectros de magnitud de las imágenes
tienden a ser similares. Esto parece ser un hecho de la naturaleza, más que algo que pueda
probarse axiomáticamente. Como resultado, el espectro de magnitud de una imagen es
sorprendentemente poco informativo (consulte la Figura 4.6 para ver un ejemplo).

4.4 MUESTREO Y ALIAS


La razón crucial para discutir las transformadas de Fourier es obtener una idea de la diferencia
entre imágenes discretas y continuas. En particular, está claro que se ha perdido parte de la
información cuando trabajamos en una cuadrícula de píxeles discretos, pero ¿qué? Un buen y
sencillo ejemplo proviene de una imagen de un tablero de ajedrez, y se da en
Sección 4.4 Muestreo y aliasing 122

FIGURA 4.6: La segunda imagen de cada fila muestra el registro del espectro de magnitud de la
primera imagen de la fila; la tercera imagen muestra el espectro de fase escalado de modo que −π es
oscuro y π es claro. Las imágenes finales se obtienen intercambiando los espectros de magnitud.
Aunque este intercambio genera un ruido de imagen sustancial, no afecta sustancialmente la
interpretación de la imagen, lo que sugiere que el espectro de fase es más importante para la
percepción que el espectro de magnitud.

Figura 4.7. El problema tiene que ver con el número de muestras relativas a la función;
podemos formalizar esto con bastante precisión dado un modelo suficientemente poderoso.

4.4.1 Muestreo
Pasar de una función continua, como la irradiancia en la parte posterior de un sistema de
cámara, a una colección de valores en una cuadrícula discreta, como los valores de píxeles
informados por una cámara, se denomina muestreo. Construimos un modelo que nos permite
obtener una noción precisa de lo que se pierde en el muestreo.

Muestreo en una dimensión


El muestreo en una dimensión toma una función y devuelve un conjunto discreto de
valores. El caso más importante involucra el muestreo en una cuadrícula discreta uniforme, y
asumimos que las muestras están definidas en puntos enteros. Esto significa que tenemos un
proceso que toma alguna función y devuelve un vector de valores:

muestra1D(f (x)) = F.

Modelamos este proceso de muestreo asumiendo que los elementos de este


vector son los valores de la función f (x) en los puntos muestrales y permitiendo
índices negativos al vector (Figura 4.8). Esto significa que elIth componente de F es
f (xI).

Muestreo en dos dimensiones


Sección 4.4 Muestreo y aliasing 123

FIGURA 4.7: Los dos tableros de ajedrez en el cima ilustrar un procedimiento de muestreo que parece
tener éxito (si lo es o no depende de algunos detalles que trataremos más adelante). Los círculos
grises representan las muestras; si hay suficientes muestras, las muestras representan el detalle de
la función subyacente. Los procedimientos de muestreo que se muestran en lafondo son
inequívocamente infructuosos; las muestras sugieren que hay menos controles que los que hay. Esto
ilustra dos fenómenos importantes: primero, los esquemas de muestreo exitosos toman muestras de
datos con suficiente frecuencia; y en segundo lugar, los esquemas de muestreo fallidos hacen que la
información de alta frecuencia aparezca como información de baja frecuencia.

El muestreo en 2D es muy similar al muestreo en 1D. Aunque el muestreo puede ocurrir en


cuadrículas no regulares (el mejor ejemplo es la retina humana), partimos del supuesto de que las
muestras se extraen en puntos con coordenadas enteras. Esto produce una cuadrícula rectangular
uniforme, que es un buen modelo para la mayoría de las cámaras. Nuestras imágenes de muestra
son entonces matrices rectangulares de tamaño finito (todos los valores fuera de la cuadrícula son
cero).
En el modelo formal, muestreamos una función de dos dimensiones, en lugar de una,
produciendo una matriz (Figura 4.9). Permitimos que esta matriz tenga índices negativos en ambas
dimensiones, y luego podemos escribir

muestra2D(F (x, y)) = F,

donde el yo, jth elemento de la matriz F es F (xI, yj) = F (i, j).


Las muestras no siempre están espaciadas uniformemente en los sistemas prácticos. Esto es muy a menudo
Sección 4.4 Muestreo y aliasing 124

Muestra
1D

FIGURA 4.8: El muestreo en 1D toma una función y devuelve un vector cuyos elementos son valores
de esa función en los puntos muestrales. Para nuestros propósitos, es suficiente que los puntos
muestrales sean valores enteros del argumento. Permitimos que el vector sea de dimensión infinita y
tenga índices tanto negativos como positivos.

Sample2D

FIGURA 4.9: El muestreo en 2D toma una función y devuelve una matriz; de nuevo, permitimos que la
matriz sea de dimensión infinita y que tenga índices tanto negativos como positivos.

debido al efecto omnipresente de la televisión; Las pantallas de televisión tienen una relación de
aspecto de 4: 3 (ancho: alto). Las cámaras a menudo se adaptan a este efecto espaciando los puntos
de muestra ligeramente más separados horizontalmente que verticalmente (en la jerga, tienen
píxeles no cuadrados).
Sección 4.4 Muestreo y aliasing 125

Un modelo continuo de una señal muestreada


Necesitamos un modelo continuo de una señal muestreada. Generalmente, este modelo
se usa para evaluar integrales; en particular, tomar una transformada de Fourier implica
integrar el producto de nuestro modelo con una exponencial compleja. Está claro cómo debe
comportarse esta integral: el valor de la integral debe obtenerse sumando valores en cada
punto entero. Esto significa que no podemos modelar una señal muestreada como una función
que es cero en todas partes excepto en puntos enteros (donde toma el valor de la señal),
porque este modelo tiene una integral cero.
Un modelo continuo apropiado de una señal muestreada se basa en una propiedad
importante de la función δ:
∫∞ ∫∞
aδ (x) f (x) dx = a lim d (x; ϵ) f (x) dx
-∞ ϵ →0 ∫−∞

barra (x; ϵ)
= a lim (f (x)) dx
ϵ →0 -∞ ϵ
∑∞ barra (x; ϵ)
= a lim (f (iϵ) barra (x - iϵ; ϵ)) ϵ
ϵ →0 ϵ
i = -∞

= af0).

Aquí hemos utilizado la idea de una integral como el límite de una suma de pequeñas tiras.
Un modelo continuo apropiado de una señal muestreada consiste en una función δ
en cada punto de muestra ponderada por el valor de la muestra en ese punto. Podemos
obtener este modelo multiplicando la señal muestreada por un conjunto de funciones δ,
una en cada punto de muestra. En una dimensión, una función de esta forma se llama
función de peineporque así es como se ve el gráfico). En dos dimensiones, una función de
esta forma se llamafunción de lecho de uñaspor la misma razón).
Trabajando en 2D y asumiendo que las muestras están en puntos enteros, este
procedimiento obtiene

∑∞ ∑ ∞
muestra2D(f) = f (yo, j) δ (x - yo, y - j)
i = -∞ j =⎧ - ∞

⎨ ∑ ∑∞ ∞ ⎬
= f (x, y) δ (x - yo, y - j).
⎩ ⎭
i = -∞ j = -∞

Esta función es cero excepto en puntos enteros (porque la función δ es cero excepto en
puntos enteros), y su integral es la suma de los valores de la función en los puntos enteros.

4.4.2 Aliasing
El muestreo implica una pérdida de información. Como muestra esta sección, las muestras
tergiversan una señal muestreada con demasiada lentitud; Los componentes de alta frecuencia
espacial de la señal original aparecen como componentes de baja frecuencia espacial en la señal
muestreada, un efecto conocido comoaliasing.
Sección 4.4 Muestreo y aliasing 126

La transformada de Fourier de una señal muestreada


Una señal muestreada viene dada por un producto de la señal original con una función
de lecho de uñas. Según el teorema de la convolución, la transformada de Fourier de este
producto es la convolución de las transformadas de Fourier de las dos funciones. Esto significa
que la transformada de Fourier de una señal muestreada se obtiene convolucionando la
transformada de Fourier de la señal con otra función de lecho de clavos.
Ahora convolucionar una función con una función δ desplazada simplemente desplaza la
función (ver ejercicios). Esto significa que la transformada de Fourier de la señal muestreada es la
suma de una colección de versiones desplazadas de las transformadas de Fourier de la señal, es decir,

⎛ ⎧ ⎫⎞
⎨ ∑ ∑∞ ∞ ⎬
F(muestra2D(f (x, y))) = F ⎝f (x, y) δ (x - yo, y - j) ⎠
⎩ ⎭
i = -∞ j = -∞
⎛⎧ ⎫⎞
⎨∑ ∞ ∑∞ ⎬
= F(f (x, y)) ∗ ∗ F ⎝ δ (x - yo, y - j) ⎠
⎩ ⎭
i = -∞ j = -∞

∑∞
= F (u - yo, v - j),
i = -∞

donde hemos escrito la transformada de Fourier de f (x, y) como F (u, v).


Si el soporte de estas versiones desplazadas de la transformada de Fourier de la señal no
se cruza, podemos reconstruir fácilmente la señal a partir de la versión muestreada. Tomamos
la señal muestreada, la transformamos de Fourier y recortamos una copia de la transformada
de Fourier de la señal y la transformamos de Fourier (Figura 4.10).
Sin embargo, si las regiones de soporte hacer superposición, no podemos reconstruir la señal
porque no podemos determinar la transformada de Fourier de la señal en las regiones de
superposición, donde se sumarán diferentes copias de la transformada de Fourier. Esto da como
resultado un efecto característico, generalmente llamadoaliasing, donde las altas frecuencias
espaciales parecen ser bajas frecuencias espaciales (ver Figura 4.12 y ejercicios). Nuestro argumento
también produceTeorema de Nyquist: la frecuencia de muestreo debe ser al menos el doble de la
frecuencia más alta presente para que una señal se reconstruya a partir de una versión muestreada.
Por el mismo argumento, si tenemos una señal que tiene frecuencias presentes solo en el rango [2k−
1Ω, 2k +1Ω], entonces podemos representar esa señal exactamente si muestreamos a una frecuencia
de al menos 2Ω.

4.4.3 Suavizado y remuestreo


El teorema de Nyquist significa que es peligroso encoger una imagen simplemente tomando cada
kth píxel (como confirma la Figura 4.12). En su lugar, necesitamos filtrar la imagen para eliminar las
frecuencias espaciales por encima de la nueva frecuencia de muestreo. Podríamos hacer esto
exactamente multiplicando la transformada de Fourier de la imagen por una función de barra 2D
escalada, que actuaría como un filtro de paso bajo. De manera equivalente, convolveríamos la
imagen con un núcleo de la forma (sinX pecado y) / (xy). Esta es una manera difícil y costosa (una
forma educada de decir imposible) convolución porque esta función tiene soporte infinito.
El caso más interesante ocurre cuando queremos reducir a la mitad el ancho y el alto
de la imagen. Suponemos que la imagen muestreada no tiene alias (porque si
Sección 4.4 Muestreo y aliasing 127

Fourier
Transformar
Señal Magnitud
Espectro

Muestra Copiar y
Cambio

Muestreado Fourier
Señal Transformar Magnitud
Espectro

Recortado por

Precisamente multiplicación
Inverso con filtro de caja
Reconstruido
Fourier
Señal
Transformar Magnitud
Espectro

FIGURA 4.10: La transformada de Fourier de la señal muestreada consiste en una suma de


copias de la transformada de Fourier de la señal original, desplazadas entre sí por la frecuencia
de muestreo. Ocurren dos posibilidades. Si las copias desplazadas no se cruzan entre sí (como
en este caso), la señal original se puede reconstruir a partir de la señal muestreada (solo
cortamos una copia de la transformada de Fourier y la transformamos inversamente). Si se
cruzan (como en la figura 4.11), se agrega la región de intersección, por lo que no podemos
obtener una copia separada de la transformada de Fourier y la señal tiene un alias.

hizo, no habría nada que pudiéramos hacer al respecto de todos modos; una vez que se ha
muestreado una imagen, se ha producido cualquier aliasing que se vaya a producir y no hay mucho
que podamos hacer al respecto sin un modelo de imagen). Esto significa que la transformada de
Fourier de la imagen muestreada va a consistir en un conjunto de copias de alguna transformada de
Fourier, con centros desplazados a puntos enteros enu, v espacio.
Si volvemos a muestrear esta señal, las copias ahora tienen centros en los puntos medio
enteros en u, v espacio. Esto significa que, para evitar el alias, necesitamos aplicar un filtro que
reduzca fuertemente el contenido de la transformada de Fourier original fuera del rango.
| u | <1/2, |v | <1/2. Eso sí, si reducimos el contenido de la señaldentro en este rango, también
podríamos perder información. Ahora, la transformada de Fourier de un gaussiano es un gaussiano,
y los gaussianos mueren con bastante rapidez. Por lo tanto, si tuviéramos que convolucionar la
imagen con un gaussiano, o multiplicar su transformada de Fourier por un gaussiano, que es
Sección 4.4 Muestreo y aliasing 128

Fourier
Transformar
Señal Magnitud
Espectro

Muestra Copiar y
Cambio

Muestreado Fourier
Señal Transformar Magnitud
Espectro

Recortado por
multiplicación
Inexacto con filtro de caja
Inverso
Reconstruido
Fourier
Señal
Transformar Magnitud
Espectro

FIGURA 4.11: La transformada de Fourier de la señal muestreada consiste en una suma de copias de
la transformada de Fourier de la señal original, desplazadas entre sí por la frecuencia de muestreo.
Ocurren dos posibilidades. Si las copias desplazadas no se cruzan entre sí (como en la Figura 4.10), la
señal original se puede reconstruir a partir de la señal muestreada (simplemente cortamos una copia
de la transformada de Fourier y la transformamos inversamente). Si se cruzan (como en esta figura),
se agrega la región de intersección, por lo que no podemos obtener una copia separada de la
transformada de Fourier y la señal tiene un alias. Esto también explica la tendencia de las frecuencias
espaciales altas a alias a frecuencias espaciales más bajas.

lo mismo: podríamos lograr lo que queramos.


La elección de gaussiano depende de la aplicación. Si σ es grande, hay menos aliasing
(porque el valor del kernel fuera de nuestro rango es muy pequeño), pero se pierde
información porque el kernel no es plano dentro de nuestro rango; de manera similar, si σ es
pequeño, se pierde menos información dentro del rango, pero el aliasing puede ser más
sustancial. Las figuras 4.13 y 4.14 ilustran los efectos de diferentes elecciones de σ.
Hemos estado usando un gaussiano como filtro de paso bajo porque su respuesta a altas
frecuencias espaciales es baja y su respuesta a bajas frecuencias espaciales es alta. De hecho, el
gaussiano no es un filtro de paso bajo particularmente bueno. Lo que uno quiere es un filtro
cuya respuesta sea bastante cercana a la constante para algún rango de frecuencias espaciales
bajas (la banda de paso) y cuya respuesta también sea bastante cercana a cero, para
Sección 4.4 Muestreo y aliasing 129

256 x 256 128x128 64 x 64 32x32 16x16

FIGURA 4.12: los fila superior muestra versiones muestreadas de una imagen de una cuadrícula obtenida al
multiplicar dos sinusoides con una frecuencia que aumenta linealmente, una en X y uno en y. Las otras
imágenes de la serie se obtienen volviendo a muestrear por factores de dos sin suavizar (es decir, la
siguiente es una de 128x128, luego una de 64x64, etc., todas escaladas al mismo tamaño). Tenga en cuenta
el alias sustancial; las frecuencias espaciales altas se reducen al alias de las frecuencias espaciales bajas, y la
imagen más pequeña es una representación extremadamente pobre de la imagen grande. losfila inferior
muestra la magnitud de la transformada de Fourier de cada imagen mostrada como un registro para
comprimir la escala de intensidad. El componente constante está en el centro. Observe que la transformada
de Fourier de una imagen remuestreada se obtiene escalando la transformada de Fourier de la imagen
original y luego colocando en mosaico el plano. La interferencia entre copias de la transformada de Fourier
original significa que no podemos recuperar su valor en algunos puntos; este es el mecanismo subyacente
al alias.

frecuencias espaciales más altas: la banda de parada. Es posible diseñar filtros de paso bajo que sean
significativamente mejores que los gaussianos. El proceso de diseño implica un compromiso
detallado entre los criterios de ondulación (¿qué tan plana es la respuesta en la banda de paso y la
banda de parada?) Y la caída: ¿con qué rapidez la respuesta cae a cero y permanece allí? Los pasos
básicos para volver a muestrear una imagen se dan en el algoritmo 4.1.

Aplique un filtro de paso bajo a la imagen


original (un gaussiano con un σ de entre uno
y dos píxeles suele ser una opción aceptable). Cree una nueva
imagen cuyas dimensiones en el borde sean la mitad de las de la
imagen anterior.
Establecer el valor del yo, jel píxel de la nueva imagen al valor
de 2I, 2jel píxel de la imagen filtrada

Algoritmo 4.1: Submuestreo de una imagen por un factor de dos.


Sección 4.4 Muestreo y aliasing 130

256 x 256 128x128 64 x 64 32x32 16x16

FIGURA 4.13: Cima: Versiones remuestreadas de la imagen de la Figura 4.12, nuevamente por factores de
dos, pero esta vez cada imagen se suaviza con un gaussiano de σ un píxel antes de volver a muestrear. Este
filtro es un filtro de paso bajo y, por lo tanto, suprime los componentes de alta frecuencia espacial,
reduciendo el alias.Fondo: El efecto del filtro de paso bajo se ve fácilmente en estas imágenes de
logmagnitud; el filtro de paso bajo suprime los componentes de alta frecuencia espacial para que los
componentes interfieran menos, para reducir el aliasing.

256 x 256 128x128 64 x 64 32x32 16x16

FIGURA 4.14: Cima: Versiones remuestreadas de la imagen de la Figura 4.12, nuevamente por factores de
dos, pero esta vez cada imagen se suaviza con un gaussiano de σ dos píxeles antes del remuestreo. Este
filtro suprime los componentes de alta frecuencia espacial de forma más agresiva que el de la Figura 4.13.
Fondo: El efecto del filtro de paso bajo se ve fácilmente en estas imágenes de magnitud logarítmica; el filtro
de paso bajo suprime los componentes de alta frecuencia espacial para que los componentes interfieran
menos, para reducir el aliasing.
Sección 4.5 Filtros como plantillas 131

4.5 FILTROS COMO PLANTILLAS


Resulta que los filtros ofrecen un mecanismo natural para encontrar patrones simples porque
los filtros responden con más fuerza a los elementos del patrón que se parecen al filtro. Por
ejemplo, los filtros de derivada suavizados están pensados para dar una respuesta fuerte en
un punto donde la derivada es grande. En estos puntos, el núcleo del filtro parece el efecto que
se pretende detectar. losX-Los filtros derivados se ven como una mancha de luz vertical junto a
una mancha oscura vertical (una disposición donde hay una gran
X-derivada), y así sucesivamente.

FIGURA 4.15: Los núcleos de filtro se parecen a los efectos que pretenden detectar. Sobre elizquierda, una
derivada suavizada del filtro gaussiano que busca grandes cambios en el X-dirección (como una mancha
oscura junto a una mancha clara); sobre elDerecha, una derivada suavizada del filtro gaussiano que busca
grandes cambios en el y-dirección.

Por lo general, los filtros destinados a dar una respuesta fuerte a un patrón se
parecen a ese patrón (Figura 4.15). Este es un resultado geométrico simple.

4.5.1 Convolución como producto escalar

Recuerde de la Sección 4.1.1 que, para GRAMO, el núcleo de algún filtro lineal, la respuesta de
este filtro a una imagen H es dado por

Rij = GRAMOyo − u, j − vHuv.
u, v

Ahora considere la respuesta de un filtro en el punto donde I y j son cero. Este es



R= GRAMO−u, −vHu, v.
u, v

Esta respuesta se obtiene asociando elementos de imagen con elementos de


núcleo de filtro, multiplicando los elementos asociados y sumando. Podríamos
escanear la imagen en un vector y el núcleo del filtro en otro vector de tal manera que
Sección 4.6 Técnica: Correlación normalizada y búsqueda de patrones 132

los elementos asociados están en el mismo componente. Al insertar ceros según sea necesario,
podemos asegurarnos de que estos dos vectores tengan la misma dimensión. Una vez hecho esto, el
proceso de multiplicar elementos asociados y sumar es exactamente el mismo que tomar un
producto escalar.
Esta es una analogía poderosa porque este producto escalar, como cualquier otro, alcanza su
valor más grande cuando el vector que representa la imagen es paralelo al vector que representa el
núcleo del filtro. Esto significa que un filtro responde con más fuerza cuando encuentra un patrón de
imagen que se parece al filtro. La respuesta de un filtro se vuelve más fuerte a medida que una
región se vuelve más brillante también.
Ahora considere la respuesta de la imagen a un filtro en algún otro punto. Nada
significativo de nuestro modelo ha cambiado. Nuevamente, podemos escanear la imagen en un
vector y el núcleo del filtro en otro vector, de modo que los elementos asociados se encuentren
en los mismos componentes. Nuevamente, el resultado de aplicar este filtro es un producto
escalar. Hay dos formas útiles de pensar en este producto escalar.

4.5.2 Cambio de base


Podemos pensar en la convolución como un producto escalar entre la imagen y un vector diferente
porque hemos movido el núcleo del filtro para que se encuentre sobre algún otro punto de la
imagen). El nuevo vector se obtiene reordenando el anterior de modo que los elementos se
encuentren en los componentes correctos para hacer que la suma funcione. Esto significa que, al
convolucionar una imagen con un filtro, estamos representando la imagen en un nuevobase
del espacio vectorial de imágenes: la base dada por las diferentes versiones desplazadas del
filtro. Los elementos base originales eran vectores con cero en todas las ranuras excepto una.
Los nuevos elementos básicos son versiones cambiadas de un solo patrón.
Para muchos de los núcleos discutidos, esperamos que este proceso perder
información, por la misma razón que el suavizado suprime el ruido, de modo que los coeficientes
sobre esta base son redundantes. Esta transformación de base es valiosa en el análisis de texturas.
Por lo general, elegimos una base que consta de componentes de patrón pequeños y útiles. Los
valores grandes de los coeficientes de base sugieren que está presente un componente del patrón, y
la textura se puede representar representando las relaciones entre estos componentes del patrón,
generalmente con alguna forma de modelo de probabilidad.

4.6 TÉCNICA: CORRELACIÓN NORMALIZADA Y BÚSQUEDA DE PATRONES


Podemos pensar en la convolución como comparar un filtro con un parche de imagen centrado
en el punto cuya respuesta estamos mirando. En esta vista, la vecindad de la imagen
correspondiente al núcleo del filtro se escanea en un vector que se compara con el núcleo del
filtro. Por sí mismo, este producto escalar es una forma deficiente de encontrar características
porque el valor puede ser grande simplemente porque la región de la imagen es brillante. Por
analogía con los vectores, nos interesa el coseno del ángulo entre el vector de filtro y el vector
de vecindad de la imagen; esto sugiere calcular la suma de la raíz de los cuadrados de la región
de la imagen relevante (los elementos de la imagen que estarían debajo del núcleo del filtro) y
dividir la respuesta por ese valor.
Esto produce un valor que es grande y positivo cuando la región de la imagen se parece
al núcleo del filtro, y pequeño y negativo cuando la región de la imagen parece una versión
contrastada del núcleo del filtro. Este valor se puede elevar al cuadrado si la inversión de
contraste no importa. Este es un método económico y eficaz para encontrar patrones, a menudo
Sección 4.6 Técnica: Correlación normalizada y búsqueda de patrones 133

llamado correlación normalizada.

4.6.1 Controlar la televisión mediante la búsqueda de manos mediante correlación normalizada

Sería bueno tener sistemas que pudieran responder a los gestos humanos. Por ejemplo,
puede señalar la luz para encender las luces de la habitación, señalar el aire acondicionado
para cambiar la temperatura de la habitación o hacer un gesto apropiado a un político
molesto en la televisión para cambiar de canal. En las aplicaciones de consumo típicas,
existen límites bastante estrictos para la cantidad de cálculo disponible, lo que significa
que es esencial que el sistema de reconocimiento de gestos sea simple. Sin embargo,
estos sistemas también suelen ser bastante limitados en lo que deben hacer.

Controlando la Televisión
Por lo general, una interfaz de usuario está en algún estado, tal vez se muestra un menú, y
luego ocurre un evento, tal vez se presiona un botón en un control remoto. Este evento hace que la
interfaz cambie de estado (por ejemplo, se resalta un nuevo elemento del menú) y todo el proceso
continúa. En algunos estados, algunos eventos hacen que el sistema realice alguna acción, como
cambiar de canal. Todo esto significa que una máquina de estados es un modelo natural para una
interfaz de usuario.
Una forma de que la visión se adapte a este modelo es proporcionar eventos. Esto es
bueno porque generalmente hay pocos tipos diferentes de eventos y sabemos qué tipos
de eventos deberían preocupar al sistema en cualquier estado en particular. Como
resultado, el sistema de visión necesita determinar solo si no ha ocurrido nada o uno de
los pocos tipos de eventos conocidos. A menudo es posible construir sistemas que
cumplan con estas limitaciones.
Se requiere un conjunto relativamente pequeño de eventos para simular un control remoto;
uno necesita eventos que parezcan presionar un botón (por ejemplo, para encender o apagar la
televisión), y eventos que se vean como el movimiento del puntero (por ejemplo, para aumentar el
volumen; también es posible hacer esto con botones). Con estos eventos, la televisión se puede
encender y se puede navegar por un sistema de menú en pantalla.

Encontrar manos
Hombre libre et al. (1998) produjo una interfaz donde una mano abierta gira el
televisión encendida. Esto puede ser robusto porque todo lo que el sistema necesita hacer
es determinar si hay una mano a la vista. Además, el usuario cooperará levantando la
mano y abriéndola. Debido a que se espera que el usuario esté a una distancia bastante
constante de la cámara, por lo que el tamaño de la mano se conoce aproximadamente y
no hay necesidad de buscar en escalas, y frente al televisor, la región de la imagen que
debe buscarse. para determinar si hay una mano es bastante pequeña.
La mano se sostiene en una configuración y orientación bastante estándar para encender
el televisor y, por lo general, aparece aproximadamente a la misma distancia del televisor (por
lo que sabemos cómo se ve). Esto significa que una puntuación de correlación normalizada es
suficiente para encontrar la mano. Cualquier punto en la imagen de correlación donde la
puntuación sea lo suficientemente alta corresponde a manos. Este enfoque también se puede
utilizar para controlar el volumen, etc. Para hacerlo, necesitamos alguna noción de hacia dónde
va la mano (hacia un lado sube el volumen, hacia el otro lo baja) y esto se puede obtener
comparando la posición en el cuadro anterior con la del cuadro actual.
Sección 4.7 Técnica: pirámides de escala e imagen 134

B C

D mi
FIGURA 4.16: Ejemplos de Freeman et al. 's sistema que controla un televisor. Cada estado está
ilustrado con lo que ve la televisión en elizquierda y lo que ve el usuario en la Derecha.
En (a), la televisión está dormida, pero un proceso está mirando al usuario. Una mano abierta hace que el
televisor se encienda y muestre su panel de interfaz de usuario (B). El foco en el panel rastrea el movimiento
de la mano abierta del usuario en (C), y el usuario puede cambiar de canal utilizando este seguimiento para
mover un icono en la pantalla en (D). Finalmente, el usuario muestra una mano cerrada en (mi) para apagar
el televisor. Esta figura se publicó originalmente como Figura 12 de “Visión por computadora para gráficos
interactivos por computadora”, W. Freeman et al., Gráficos y aplicaciones informáticos IEEE, 1998 ⃝
C IEEE, 1998.

El sistema muestra una representación icónica de su interpretación de la posición de la mano


para que el usuario tenga alguna retroalimentación sobre lo que está haciendo el sistema
(Figura 4.16). Tenga en cuenta que una característica atractiva de este enfoque es que podría
autocalibrarse. En este enfoque, cuando instala su televisor, se sienta frente a él y le muestra la
mano unas cuantas veces para permitirle obtener una estimación de la escala en la que aparece
la mano.

4.7 TÉCNICA: PIRÁMIDES DE ESCALA E IMAGEN


Las imágenes se ven bastante diferentes a diferentes escalas. Por ejemplo, el hocico de la cebra
en la Figura 4.17 se puede describir en términos de pelos individuales, que pueden codificarse
en términos de la respuesta de filtros orientados que operan a una escala de una pequeña
cantidad de píxeles, o en términos de las rayas en el cebra. En el caso de la cebra, no
querríamos aplicar filtros grandes para encontrar las rayas. Esto se debe a que estos filtros
tienden a tener una precisión falsa (no queremos representar la disposición de cada cabello en
la raya), incómodos de construir y lentos de aplicar. Un enfoque más práctico que aplicar filtros
grandes es aplicar filtros más pequeños a las versiones suavizadas y remuestreadas de la
imagen.
Sección 4.7 Técnica: pirámides de escala e imagen 135

512 256 128 64 32 dieciséis 8

FIGURA 4.17: Una pirámide gaussiana de imágenes que van desde 512x512 hasta 8x8. En la fila superior,
hemos mostrado cada imagen con el mismo tamaño (de modo que algunas tienen píxeles más grandes que
otras), y la parte inferior de la figura muestra las imágenes a escala. Observe que si convertimos cada
imagen con un filtro de tamaño fijo, responde a fenómenos bastante diferentes. Un bloque de 8x8 píxeles
en la escala más fina puede contener algunos pelos; en una escala más gruesa, puede contener una franja
completa; y en la escala más burda, contiene el hocico del animal.

4.7.1 La pirámide de Gauss


Un pirámide de imágenes es una colección de representaciones de una imagen. El nombre
proviene de una analogía visual. Normalmente, cada capa de la pirámide tiene la mitad del
ancho y la mitad de la altura de la capa anterior; si tuviéramos que apilar las capas una encima
de la otra, resultaría una pirámide. en unPirámide gaussiana, cada capa se suaviza mediante un
núcleo gaussiano simétrico y se vuelve a muestrear para obtener la siguiente capa (Figura 4.17).
Estas pirámides son más convenientes si las dimensiones de la imagen son una potencia de dos
o un múltiplo de una potencia de dos. La imagen más pequeña es la más suavizada; las capas a
menudo se denominanescala gruesa versiones de la imagen.
Con un poco de notación, podemos escribir expresiones simples para las capas de una
pirámide gaussiana. El operadorS↓ reduce la resolución de una imagen; en particular, elj, kel
elemento de S↓(I) es el 2j, 2kel elemento de I. los norteel nivel de una pirámide PAG(I)
Sección 4.7 Técnica: pirámides de escala e imagen 136

se denota PAG(I)norte. Con esta notación, tenemos

PAGGaussianoI)n +1 = S↓(GRAMOσ ∗ ∗PAGGaussianoI)norte)

= (S↓GRAMOσ)PAGGaussianoI)norte)

(donde hemos escrito GRAMOσ para el operador lineal que lleva una imagen a la
convolución de esa imagen con un gaussiano). La capa de escala más fina es la imagen
original:
PAGGaussianoI)1 = I.

Establecer la capa de escala más fina a la imagen


Para cada capa, pasando de la siguiente a la más fina a la más
gruesa. Obtenga esta capa suavizando la siguiente capa más
fina con un gaussiano y luego submuestreándola al final

Algoritmo 4.2: Formando una pirámide gaussiana.

4.7.2 Aplicaciones de representaciones escaladas

Las pirámides de Gauss son útiles porque permiten extraer representaciones de


diferentes tipos de estructura en una imagen. Damos tres aplicaciones aquí; en la
sección 5.3.2, describimos otro método que puede acelerarse usando una pirámide
gaussiana.

Buscar sobre escala


Numerosos objetos se pueden representar como pequeños patrones de imagen. Un ejemplo
estándar es una vista frontal de una cara. Por lo general, a baja resolución, las vistas frontales de los rostros
tienen un patrón bastante distintivo: los ojos forman charcos oscuros, debajo de una barra oscura (las
cejas), separados por una barra más clara (reflejos especulares de la nariz) y por encima de una barra
oscura ( la boca). Existen varios métodos para encontrar caras que aprovechen estas propiedades (consulte
el Capítulo 17.1.1). Todos estos métodos asumen que la cara se encuentra en un rango pequeño de escalas.
Todas las demás caras se encuentran buscando una pirámide. Para encontrar caras más grandes, miramos
capas de escala más gruesa, y para encontrar caras más pequeñas, miramos capas de escala más fina. Este
útil truco se aplica a muchos tipos diferentes de funciones, como vemos en los capítulos siguientes.

Búsqueda espacial
Una aplicación es la búsqueda espacial, un tema común en la visión por computadora.
Normalmente, tenemos un punto en una imagen y estamos tratando de encontrar un punto en una
segunda imagen que le corresponda. Este problema ocurre en la estereopsis, donde el punto se ha
movido porque las dos imágenes se obtienen desde diferentes posiciones de visualización, y en el
análisis de movimiento, donde el punto de la imagen se ha movido, ya sea porque la cámara se
movió o porque está sobre un objeto en movimiento.
La búsqueda de una coincidencia en los pares de imágenes originales es ineficaz porque es
posible que tengamos que analizar una gran cantidad de detalles. Un mejor enfoque, que ahora es
Sección 4.8 Notas 137

bastante universal, es buscar una coincidencia en una imagen muy suavizada y


remuestreada y luego refinar esa coincidencia observando versiones cada vez más
detalladas de la imagen. Por ejemplo, podríamos reducir 1024× 1024 imágenes hasta 4 × 4
versiones, combínelas y luego mire 8 × 8 versiones (porque conocemos una coincidencia
aproximada, es fácil refinarla); luego miramos 16× 16 versiones, y así sucesivamente, hasta
1024 × 1024. Esto proporciona una búsqueda extremadamente eficiente porque un paso
de un solo píxel en el 4 × 4 es equivalente a un paso de 256 píxeles en 1024 × Versión 1024.
Esta estrategia se conoce comoCoincidencia de gruesa a fina.

Seguimiento de funciones
La mayoría de las características que se encuentran en niveles gruesos de suavizado están asociadas con
eventos de imagen grandes y de alto contraste porque para que una característica se marque en una escala
gruesa, un gran grupo de píxeles debe estar de acuerdo en que está allí. Por lo general, la búsqueda de fenómenos
de escala gruesa estima erróneamente tanto el tamaño como la ubicación de una característica. Por ejemplo, un
error de un solo píxel en una imagen de escala gruesa representa un error de píxeles múltiples en una imagen de
escala fina.
A escalas finas, hay muchas características, algunas de las cuales están asociadas con eventos más
pequeños y de bajo contraste. Una estrategia para mejorar un conjunto de características obtenidas a una
escala fina es rastrear características a través de escalas a una escala más gruesa y aceptar solo las
características de escala fina que tienen padres identificables en una escala más gruesa. Esta estrategia,
conocida comoseguimiento de funciones en principio, puede suprimir características resultantes de
regiones texturizadas (a menudo denominadas ruido) y características resultantes de ruido real.

4.8 NOTAS
No pretendemos ser exhaustivos en nuestro tratamiento de los sistemas lineales, pero no
sería posible leer la literatura sobre filtros en la visión sin comprender las ideas de este
capítulo. Hemos dado una explicación bastante sencilla aquí; Se pueden encontrar más
detalles sobre estos temas en los excelentes libros de Bracewell (1995), (2000).

Sistemas de imágenes reales versus sistemas lineales invariantes de desplazamiento

Los sistemas de imágenes son solo aproximadamente lineales. La película no es lineal, no responde a los
estímulos débiles y se satura para los estímulos brillantes, pero por lo general uno puede salirse con la suya
con un modelo lineal dentro de un rango razonable. Las cámaras CCD son lineales dentro de un rango de
trabajo. Dan una respuesta pequeña, pero distinta de cero, a una entrada cero como resultado del ruido
térmico (razón por la cual los astrónomos enfrían sus cámaras) y se saturan para estímulos muy brillantes.
Las cámaras CCD a menudo contienen componentes electrónicos que transforman su salida para que se
comporten más como una película porque los consumidores están acostumbrados a filmar. La invariancia
de cambio también es aproximada porque las lentes tienden a distorsionar las respuestas cerca del límite
de la imagen. Algunas lentes (las lentes de ojo de pez son un buen ejemplo) no son invariantes al cambio.

Escala

Existe una gran cantidad de trabajo sobre el espacio de escala y las representaciones a escala. Los
orígenes parecen estar en Witkin (1983) y la idea fue desarrollada por Koenderink y van Doorn (1986).
Desde entonces, ha surgido una gran cantidad de literatura (uno podría comenzar
Sección 4.8 Notas 138

con ter Haar Romeny et al. (1997) o Nielsen et al. (1999)). Aquí solo hemos ofrecido una
descripción más breve porque el análisis tiende a ser bastante complicado. La utilidad de
las técnicas también se debate acaloradamente.
Las pirámides de imágenes son útiles. El siguiente paso de una pirámide gaussiana, que
es altamente redundante, es la pirámide laplaciana, originalmente descrita por Burt y Adelson
(1983). Esta es una representación eficiente. En lugar de almacenar cada nivel de imagen de
una pirámide gaussiana, se almacena la diferencia entre el nivel observado de la pirámide
gaussiana y el predicho por el aumento del nivel de escala más grueso. Debido a que las
imágenes de escala gruesa son representaciones moderadamente buenas de imágenes de
escala más fina, esta diferencia es pequeña. Como resultado, hay numerosos ceros en la
pirámide y es un código de imagen conveniente.

Escalado anisotrópico

Una dificultad importante con los modelos espaciales a escala es que el proceso de suavizado
gaussiano simétrico tiende a difuminar los bordes de forma demasiado agresiva para brindar
comodidad. Por ejemplo, si tenemos dos árboles cerca uno del otro en un horizonte, las manchas a
gran escala correspondientes a cada árbol podrían comenzar a fusionarse antes de que hayan
terminado todas las manchas a pequeña escala. Esto sugiere que deberíamos suavizar de manera
diferente en los puntos de borde que en otros puntos. Por ejemplo, podríamos hacer una estimación
de la magnitud y orientación del gradiente. Para gradientes grandes, usaríamos un operador de
suavizado orientado que suavizara agresivamente perpendicular al gradiente y poco a lo largo del
gradiente; para gradientes pequeños, podríamos usar un operador de suavizado simétrico. Esta idea
solía ser conocida comosuavizado que conserva los bordes.
En la versión moderna, más formal, debido a Perona y Malik (1990B), notamos que la
familia de representación del espacio de escala es una solución a la ecuación de difusión

∂Φ ∂2Φ ∂2Φ
= +
∂σ ∂x2 ∂y2
= ∇2Φ,

con la condición inicial

Φ (x, y, 0) = I(x, y)

Si esta ecuación se modifica para tener la forma

∂Φ
= ∇ · (c (x, y, σ)∇Φ)
∂σ
= c (x, y, σ)∇2Φ + (∇c (x, y, σ)) · (∇Φ)

con la misma condición inicial, entonces si c (x, y, σ) = 1, tenemos la ecuación de


difusión con la que comenzamos, y si c (x, y, σ) = 0, no hay suavizado. Asumimos queC
no depende de σ. Si supiéramos dónde están los bordes en la imagen, podríamos
construir una máscara que constara de regiones dondec (x, y) = 1, aislado por parches a lo
largo de los bordes donde c (x, y) = 0; en este caso, una solución suavizaríadentro cada
región separada, pero no sobre el borde. Aunque no sabemos dónde están los bordes (el
ejercicio estaría vacío si lo supiéramos) podemos obtener opciones razonables de
Sección 4.8 Notas 139

c (x, y) a partir de la magnitud del degradado de la imagen. Si el gradiente es grande, entoncesC


debe ser pequeño y viceversa. Existe una bibliografía sustancial que se ocupa de este
enfoque; un buen lugar para comenzar es ter Haar Romeny (1994).

PROBLEMAS
4.1. Muestre que la formación de promedios locales no ponderados, que produce una operación de la
forma
u∑ + = j +∑k
= ikv
1
Rij = Fuv,
(2k + 1)2
u = i − kv = j − k

es una convolución. ¿Cuál es el núcleo de esta convolución?


4.2. Escribir mi0 para una imagen que consta de todos ceros con uno solo en el centro.
Demuestre que convolucionar esta imagen con el kernel
( )
1 ((yo - k - 1)2 + (j - k - 1)2)
Hij = exp -
2πσ2 2σ2

(que es un gaussiano discretizado) produce una mancha difusa circularmente simétrica.


4.3. Muestre que convolucionar una imagen con un núcleo de filtro 2D discreto y separable es
equivalente a convolucionar con dos núcleos de filtro 1D. Estime el número de
operaciones guardadas para unNxN imagen y un 2k + 1 × 2k + 1 grano.
4.4. Demuestre que convolucionar una función con una función δ simplemente reproduce la función
original. Ahora demuestre que convolucionar una función con una función δ desplazada
desplaza la función.
4.5. Dijimos que convolucionar la imagen con un núcleo de la forma (sin X pecado y) / (xy)
es imposible porque esta función tiene soporte infinito. ¿Por qué sería imposible transformar
la imagen de Fourier, multiplicar la transformada de Fourier por una función de caja y luego
transformar el resultado con la transformada de Fourier inversa? (Sugerencia: piense en el
apoyo).
4.6. La creación de alias lleva las frecuencias espaciales altas a las frecuencias espaciales bajas. Explique por qué
ocurren los siguientes efectos:
(a) En las viejas películas de vaqueros que muestran vagones en movimiento, la rueda a
menudo parece estar parada o moviéndose en la dirección incorrecta (es decir, el vagón
se mueve de izquierda a derecha y la rueda parece girar en sentido antihorario).
(B) Las camisas blancas con rayas finas y oscuras a menudo generan una gama brillante de
colores en la televisión.
(C) En las imágenes con trazado de rayos, las sombras suaves generadas por fuentes de área se ven en bloques.

EJERCICIOS DE PROGRAMACIÓN
4.7. Una forma de obtener un núcleo gaussiano es convolucionar un núcleo constante consigo
mismo muchas veces. Compare esta estrategia con la evaluación de un kernel gaussiano.
(a) ¿Cuántas convoluciones repetidas necesita para obtener una aproximación
razonable? (Debe establecer qué es una aproximación razonable; puede
graficar la calidad de la aproximación frente al número de convoluciones
repetidas).
(B) ¿Hay algún beneficio que se pueda obtener así? (Sugerencia: no todas las
computadoras vienen con una FPU).
4.8. Escribe un programa que produzca una pirámide gaussiana a partir de una imagen.
4.9. Un kernel gaussiano muestreado debe alias porque el kernel contiene componentes en
frecuencias espaciales arbitrariamente altas. Suponga que el kernel se muestrea en
Sección 4.8 Notas 140

una rejilla infinita. A medida que la desviación estándar se hace más pequeña, la energía
con alias debe aumentar. Grafique la energía que se alias contra la desviación estándar
del kernel gaussiano en píxeles. Ahora suponga que el kernel gaussiano se da en un 7×
7 cuadrícula. Si la energía con alias debe ser del mismo orden de magnitud que el error
debido a truncar el gaussiano, ¿cuál es la desviación estándar más pequeña que se
puede expresar en esta cuadrícula?

También podría gustarte