Anda di halaman 1dari 28

Captulo 5

Convolucin de tiempo
discreto
En matemticas y, en particular, anlisis funcional, una convoucin es un
operador matemtico que transforma dos funciones f y g en una tercera funcin.
Lo que representa esta tercera funcin es simplemente la magnitud en la que se
superponen f y una versin trasladada e invertida de g.
El sinicado de la convolucin vara segn las funciones a operar, por ejemplo:
En Ingeniera en Telecomunicaciones, si se convoluciona una seal excitatriz con la respuesta a pulso unitario de un sistema, el resultado es la
respuesta del sistema a la mencionada seal excitatriz.
La convolucin de tiempo discreto tambin es empleada para multiplicar
polinomios.
La operacin inversa de la convolucin o deconvolucin se emplea para
dividir polinomios.
En el presente captulo se denir la suma de convolucin tanto para seales
aperidicas como para seales peridicas. Tambin se denirn varios mtodos
que facilitan a los seres humanos su clculo.

5.1

Convolucin de tiempo discreto para seales


innitas

A continuacin se dene la operacin de convolucin considerando secuencias


de duracin innita. En este rubro no se considera si se trata de secuencias
peridicas o aleatorias.
109

110

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Definicin 5.1 Convolucin para seales de duracin innita y valuada en n = m. Sean f (n) y g(n) dos seales energa, su convolucin evaluada
para n = m se plantea como:
f (n) se mantiene ja.
f (n)
g(n) se reeja y se retrasa en m, es decir, n cambia por (n m) por lo
cual la funcin cambia como:
g (n) g ( (n m))
Las funciones se multiplican: punto a punto como en todo producto de
funciones.
f (n) g ( (n m))
Se calcula el rea del producto
f g (m) = lim

N
1

m=(N 1)

f (n) g ( (n m))

n, mZ

(5.1)

Siguiendo la denicin 5.1 si se desea conocer la convolucin para todo instante de tiempo se tendra que crear un registro para m tomando valores de un
extremo a otro del innito, es decir m (, ). Una forma de generalizar y
simplicar este proceso es mediante un cambio de variable tal como se dene a
continuacin.
Definicin 5.2 Convolucin de seales de duracin innita y para
toda n. Dadas las secuencias energa f (n) y g (n), su convolucin f g (n)
queda descrita por la siguiente ecuacin.
f g (n) = lim

5.2

N
1

m=(N 1)

f (m) g ( (m n)) ;

n, mZ

(5.2)

Convolucin para seales energa de tiempo


discreto

A continuacin se describe una formulacin para secuencias de duracin


nita. Tales secuencias se consideran seales del tipo energa.
Teorema 5.1 Convolucin de dos secuencias nitas f y g. Dada la secuencia de duracin nita f , de longitud Nf y cuyo dominio est en el intervalo
n [0 , Nf ]. Dada tamin dada la secuencia g, de longitud Ng y cuyo dominio est en el intervalo n [0 , Ng ]. La convolucin queda representada como
f g (n) = f (n) g (n) y matemticamente se dene como:

5.3. MTODOS DE PARA LA CONVOLUCIN

f g (n) =

Nf

m=0

f (m) g ( (m n)) n [0 , Nf + Ng 2]

111

(5.3)

Teorema 5.2 El dominio de la secuencia de convolucin. Dada la secuencia de duracin nita f , de longitud Nf y cuyo dominio est en el intervalo
n [0 , Nf ]. Dada tamin dada la secuencia g, de longitud Ng y cuyo dominio
est en el intervalo n [0 , Ng ]. El conjunto domnio de la secuencia convoucin
f g (n) es:
dom {f g} = [0 , Nf + Ng 2]

(5.4)

Teorema 5.3 La longitud de la secuencia de convolucin. Dada la secuencia de duracin nita f , de longitud Nf y cuyo dominio est en el intervalo
n [0 , Nf ]. Dada tamin dada la secuencia g, de longitud Ng y cuyo dominio est en el intervalo n [0 , Ng ]. La longitud de la secuencia de convolucin f g (n)
se representa como Nf g y se calcula como:
Nf g = Nf + Ng 1

5.3

(5.5)

Mtodos de para la convolucin

A continuacin se describen varios mtodos empleados para realizar la operacin de convolucin. El primer mtodo, por frmula, es el ms complicado y
es implementado solamente para su uso en computadoras. El mtodo de la cinta
deslizante facilita la compresin visual de la mecnica que sigue la convolucin.
Los mtodos de multiplicacin y malla son algoritmos rpidos para el uso de
humanos. El mtodo matricial es usado para el planteamiento de ecuaciones que
modelan algn sistema.

5.3.1

Convolucin por frmula

Para ilustrar el proceso de convolucin en una forma genrica considrense


las dos secuencias siguientes:
f
g

=
=

[f (0) , f (1) , f (2) , f (3)]


[g (0) , g (1) , g (2)]

(5.6)

En donde:
Nf

Ng

(5.7)

112

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO


f*g(0)
f*g(1)
f*g(2)
f*g(3)
f*g(4)
f*g(5)

=
=
=
=
=
=

f(0)g(0)
f(0)g(1)
f(0)g(2)
f(0)g(3)
f(0)g(4)
f(0)g(5)

+
+
+
+
+
+

f(1)g(-1)
f(1)g(0)
f(1)g(1)
f(1)g(2)
f(1)g(3)
f(1)g(4)

+
+
+
+
+
+

f(2)g(-2)
f(2)g(-1)
f(2)g(0)
f(2)g(1)
f(2)g(2)
f(2)g(3)

+
+
+
+
+
+

f(3)g(-3)
f(3)g(-2)
f(3)g(-1)
f(3)g(0)
f(3)g(1)
f(3)g(2)

Cuadro 5.1: Convolucin para las secuencias f = [f (0) , f (1) , f (2) , f (3)] y
g = [g (0) , g (1) , g (2)] . Los trminos marcados en rojo no son vlidos.
Ahora se desarrolla en la tabla del cuadro 5.1 la suma de convolucin para
las secuencias dadas en la ecuacin 5.6.
Los productos en rojo corresponden con ndices para los cuales el segundo
operando de la convolucin no tiene elementos denidos. Ahora bien, realizando
los productos indicados se tiene que la convolucin es:
f g = [f g(0), f g(1), g g (2) , f g(3), f g(4), f g(5)]

(5.8)

donde:
f
f
f
f
f
f

g (0)
g (1)
g (2)
g (3)
g (4)
g (5)

=
=
=
=
=
=

f (0) g (0)
f (0) g (1) + f (1) g (0)
f (0)g(2) + f (1)g(1) + f (2)g(0)
f (1)g(2) + f (2)g(1) + f (3)g(0)
f (2)g(2) + f (3)g(1)
f (3)g(2)

(5.9)

El dominio de la secuencia de convolucin se calcula siguiendo la ecuacin


5.4 y resulta en:
n [0 , 5]

(5.10)

La longitud de la secuencia de convolucin se calcula siguiendo la ecuacin


5.5 y resulta en:
Nf g = 6

5.3.2

(5.11)

El mtodo de la cinta deslizante

El mtodo de la cinta deslizante ilustra, de manera grca, el proceso de


convolucin entre dos secuencias, en este caso, para convolucionar una secuencia
f con una secuencia g:
La secuencia f se mantiene sin alteraciones.
La secuencia g se reeja y se desplaza de adelante hacia atrs.

5.3. MTODOS DE PARA LA CONVOLUCIN

113

Cuadro 5.2: Mtodo de la cinta deslizante. Note que la secuencia f se mantiene


sin cambios, en tanto que la funcin g se reeja y se desplaza. Debe realizarse
el producto punto entre f y cada desplazameinto de la funcin g.
En cada desplazameinto, se realiza el producto punto. En el caso de dos
secuencias nitas slo se consideran aquellos productos punto no nulos.
Ahora bien, siguiendo los pasos dados, se consideran las dos secuencias siguientes: son las mismas ecuaciones 5.6.
f
g

=
=

[f (0) , f (1) , f (2) , f (3)]


[g (0) , g (1) , g (2)]

Entonces, por el mtodo de la cinta deslizante se plantea una tabla como la


mostrada en el cuadro 5.2.
Ahora deben comparar los productos indicados en la tabla 5.2 con los productos indicados por la tabla 5.1. Entonces, la secuencia de convolucin resultante
en ambas tablas es la misma ecuacin 5.8.
Finalmente, el dominio de la secuencia de convolucin se calcula siguiendo
la ecuacin 5.4 en tanto que la longitud de la secuencia se calcula mediante la
ecuacin 5.5.

5.3.3

Ejemplo de la cinta deslizante

Convolucione las siguientes secuencias:


f
g

= [2, 5, 0, 4]
= [4, 1, 3]

(5.12)

114

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Cuadro 5.3: Convolucin de las secuencias f = [2, 5, 0, 4] y g = [4, 1, 3].


La tabla de cuadro ilustra el proceso de la cinta deslizante.
La longitud de la secuencia de convolucin se calcula siguiendo la ecuacin
5.5 y resulta en:
Nf g = 6

El dominio de la secuencia de convolucin es se calcula a partir de la ecuacin


5.4 y resulta en:
n [0, 5]
La secuencia de convolucin resultante es:
f g = [8, 22, 11, 31, 4, 12]

5.3.4

(5.13)

El mtodo matricial

Considrense las dos secuencias siguientes: son las mismas ecuaciones 5.6.
f
g

=
=

[f (0) , f (1) , f (2) , f (3)]


[g (0) , g (1) , g (2)]

El planteamiento de la convolucin por matriz qued denido en la tabla 5.2


Ahora bien, considerando los factores no nulos y factorizando los factores de la
secuencia f se logra el siguiente planteamiento:

5.3. MTODOS DE PARA LA CONVOLUCIN

f
f
f
f
f
f

g (0)
g (1)
g (2)
g (3)
g (4)
g (5)

g (0)
g (1)
g (2)
0
0
0

0
g (0)
g (1)
g (2)
0
0

0
0
g (0)
g (1)
g (2)
0

0
0
0
g (0)
g (1)
g (2)

115

f (0)
f (1)

f (2)
f (3)

(5.14)

La ecuacin anterior se puede expresar en forma compacta de la forma siguiente:


(5.15)

f g =GF

El dominio de la secuencia de convolucin se calcula siguiendo la ecuacin


5.4 en tanto que la longitud de la secuencia se calcula mediante la ecuacin 5.5.

5.3.5

Ejemplo del mtodo matricial

Convolucione las siguientes secuencias:


f
g

= [2, 5, 0, 4]
= [4, 1, 3]

Plantenado las matrices se logra:

f g (n) =

4
1
3
0
0
0

0
4
1
3
0
0

0
0
4
1
3
0

0
0
0
4
1
3

5
=
0

8
22
11
31
4
12

(5.16)

La longitud de la secuencia de convolucin se calcula siguiendo la ecuacin


5.5 y resulta en:
Nf g = 6
El dominio de la secuencia de convolucin es se calcula a partir de la ecuacin
5.4 y resulta en:
n [0, 5]
La secuencia de convolucin
f g = [8, 22, 11, 31, 4, 12]

116

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO


f(0)

f(1)

f(2)

f(3)

g(0)
g(1)
g(2)

Cuadro 5.4: Mtodo de malla. Planteamiento de la malla.


f(0)

f(1)

f(2)

f(3)

f(0)g(0)

f(1)g(0)

f(2)g(0)

f(3)g(0)

g(0)

f(0)g(1)

f(1)g(1)

f(2)g(1)

f(3)g(1)

g(1)

f(0)g(2)

f(1)g(2)

f(2)g(2)

f(3)g(2)

g(2)

Cuadro 5.5: Mtodo de malla. LLenado la malla.

5.3.6

El mtodo de la malla

Considrense las dos secuencias siguientes: son las mismas ecuaciones: 5.6.

f
g

=
=

[f (0) , f (1) , f (2) , f (3)]


[g (0) , g (1) , g (2)]

Primero se crea una malla tal como se ilustra en el cuadro 5.4: en el rengln
superior se coloca la secuencia f en tanto que en la columna ms a la derecha
se coloca la secuencia g.
Luego la malla se llena con el producto cartesiano de las secuencia, tal como
se indica en la tabla del cuadro 5.5.
Finalmente, se realizan sumas en diagonal hacia abajo-izquierda, tal como
se indica en el cuadro 5.6. Los totales son los trminos de la secuencia de convolucin.
donde:

Cuadro 5.6: Mtodo de malla. Realizacin de la convolucin.

5.3. MTODOS DE PARA LA CONVOLUCIN

117

Cuadro 5.7: Convolucin por el mtodo de malla para las secuencias f=[2,5,0,4]
y g=[4,1,3].

f
f
f
f
f
f

g (0)
g (1)
g (2)
g (3)
g (4)
g (5)

=
=
=
=
=
=

f (0) g (0)
f (0) g (1) + f (1) g (0)
f (0)g(2) + f (1)g(1) + f (2)g(0)
f (1)g(2) + f (2)g(1) + f (3)g(0)
f (2)g(2) + f (3)g(1)
f (3)g(2)

El dominio de la secuencia de convolucin se calcula siguiendo la ecuacin


5.4 en tanto que la longitud de la secuencia se calcula mediante la ecuacin 5.5.

5.3.7

Ejemplo del mtodo de malla

Convolucione las siguientes secuencias:


f
g

= [2, 5, 0, 4]
= [4, 1, 3]

El proceso por mtodo de malla queda denido como se indica en el cuadro.


La longitud de la secuencia de convolucin se calcula siguiendo la ecuacin
5.5 y resulta en:
Nf g = 6
El dominio de la secuencia de convolucin es se calcula a partir de la ecuacin
5.4 y resulta en:
n [2, 3]
La secuencia de convolucin
f g = [8, 22, 11, 31, 4, 12]

5.3.8

El mtodo del producto

Considrense las dos secuencias siguientes: son las mismas ecuaciones: 5.6.

118

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO


f(0)
g(0)

f(1)
g(1)

f(0)g(0)

f(2)
g(2)

f(1)g(0)
+

f(0)g(1)

f*g(0)

f(3)

f(2)g(0)
+

f(1)g(1)
f(0)g(2)

f*g(1)

f(3)g(0)
+

f*g(2)

f(2)g(1)
f(1)g(2)

f*g(3)

f(3)g(1)
f(2)g(2)

f(3)g(2)

f*g(4)

f*g(5)

Cuadro 5.8: Mtodo del producto para las secuencias:[f(0),f(1),f(2),f(3)] y


[g(0),g(1),g(2)].
2
4
8

5
1
20
2

22

0
3
0
5
6
11

4
+

16
0
15
31

4
0
4

12
12

Cuadro 5.9: Convolucin por el mtodo del producto para las secuencias
f=[2,5,0,4] y g=[4,1,3].

f
g

=
=

[f (0) , f (1) , f (2) , f (3)]


[g (0) , g (1) , g (2)]

El planteamiento de la convolucin por producto queda denido en la tabla


5.8. La suma, en cada columna, est limitada a la columna en particular, es
decir, no se llevan acarreos.
donde:
f
f
f
f
f
f

g (0)
g (1)
g (2)
g (3)
g (4)
g (5)

=
=
=
=
=
=

f (0) g (0)
f (0) g (1) + f (1) g (0)
f (0)g(2) + f (1)g(1) + f (2)g(0)
f (1)g(2) + f (2)g(1) + f (3)g(0)
f (2)g(2) + f (3)g(1)
f (3)g(2)

El dominio de la secuencia de convolucin se calcula siguiendo la ecuacin


5.4 en tanto que la longitud de la secuencia se calcula mediante la ecuacin 5.5.

5.3.9

Ejemplo del mtodo del producto

Convolucione las siguientes secuencias:


f
g

=
=

[2, 5, 0, 4]
[4, 1, 3]

El proceso por el mtodo del producto queda denido como se indica en el


cuadro 5.9.

5.4. PROPIEDADES DE LA CONVOLUCIN LINEAL

119

La longitud de la secuencia de convolucin se calcula siguiendo la ecuacin


5.5 y resulta en:
Nf g = 6
El dominio de la secuencia de convolucin es:
n [0, 5]
La secuencia de convolucin
f g = [8, 22, 11, 31, 4, 12]

5.4

Propiedades de la convolucin lineal

Teorema 5.4 Asociatividad


f (n) g (n) h (n)

=
=

f (n) [g (n) h (n)]


[f (n) g (n)] h (n)

(5.17)

Teorema 5.5 Distributividad:


f (n) [g (n) + h (n)] = f (n) g (n) + f (n) h (n)

(5.18)

Teorema 5.6 Homogeneidad:


[Af (n)] g (n) = A [f (n) g (n)]

(5.19)

f (n) [Bg (n)] = B [f (n) g (n)]

(5.20)

Af (n) Bg (n) = AB [f (n) g (n)]

(5.21)

Teorema 5.7 Identidad. El pulso unitario es el elemento identidad de la


convolucin.
f (n) (n) = f (n)

(5.22)

120

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Teorema 5.8 Invarianza temporal. La convolucin es invariante con el


tiempo. Dada la convolucin f (n) g (n) = h (n) se tiene que:
f (n ) g (n) = h (n )

(5.23)

f (n) g (n ) = h (n )

(5.24)

f (n ) g (n ) = h (n )

(5.25)

Teorema 5.9 Conmutatividad:


f (n) g (n) = g (n) f (n)

5.5

(5.26)

Convolucin discreta por software

En MATLAB, la convoucin tiene el formato:


conv(secuencia, f iltro)
conv(secuencia, f iltro, longitud)
Donde:
secuencia Es una secuencia discreta
f iltro Es la respuesta a pulso unitario de un ltro
longitud La longitud puede ser f ull o same.
f ull Retorna la secuencia completa de convolucion
same Retorna la parte central de la convolucin cuya longitud es
igual a la longitud de la secuencia.
Ntese que a pesar de que la convolucin es conmutativa, los operandos se deben
suministrar en un orden en particular a la funcin conv.
Por ejemplo

Por ejemplo

>
>
>

f = [2, 5, 0, 4]
g = [4, 1, 3]
conv (f, g)

>

[8, 22, 11, 31, 4, 12]

5.6. CONVOLUCIN CIRCULAR

121

> f = [2, 5, 0, 4]
> g = [4, 1, 3]
> conv (f, g, f ull )
> [8, 22, 11, 31, 4, 12]
Por ejemplo
> f = [2, 5, 0, 4]
> g = [4, 1, 3]
> conv (f, g, same )
> [22, 11, 31, 4]

5.6

Convolucin circular

Dada la secuencia peridica f (n) de longitud N a convolucionar con otra


secuencia peridica g (n) tambin de longitud N , el proceso de convolucin
exige N N productos e igual cantidad de sumas. Empleando una operacin
conocida como FFT1 para calcular la convolucin se logra reducir este nmero
a un mltiplo de N log2 N .
Dado que la FFT es una operacin que se aplica a seales peridicas, es lgico
pensar que los operandos de la convolucin por FFT tambin son peridicos. A
consecuencia, a la convolucin lograda por FFT se le concoe como convolucin
cclica no obstante que se ha preferido usar el nombre de convolucin circular.
La convolucin circular es un proceso parecido a la convolucin que se ha
revisado en secciones pasadas. Hay algunas diferencias fundamentales a considerar:
La convolucin circular opera sobre secuencias peridicas.
Ambas secuencias a convolucionar tienen la misma longitud.
La longitud de una secuencia peridica se reere a la longitud de un periodo.
El origen de ambas secuencias a convolucionar es forzosamente el primer
elemento listado.

5.6.1

Secuencia peridica

Sea la secuencia peridica f con longitud N = 3 tal como se ilustra a continuacin (note que en la ecuacin hay un origen denido)
1 FFT es la abreviacin de Fast Fourier Transform y es un algoritmo para calcular en
forma rpida la Transforma Discreta de Fourier.

122

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

f = . . . , f (0) , f (1) , f (2) , f (0), f (1) , f (2) , . . .

(5.27)

Esta secuencia tambin puede escribir con ndices no peridicos de la forma


siguiente

f = . . . , f (3) , f (2) , f (1) , f (0), f (1) , f (2) , . . .

(5.28)

Ambas formas, la peridica y la no peridica se consideran equivalentes y


sern usadas para demostrar la convolucin circular.

5.6.2

Sobre el origen de la secuencia peridica

Definicin 5.3 El origen de una secuencia peridica. El origen de una


secuencia peridica ser el primer elemento listado en la secuencia.

5.6.3

Desplazamiento hacia adelante de una secuencia peridica

Teorema 5.10 Desplazamiento hacia adelante de una secuencia peridica. Un dezplazamiento hacia adelante implica un corrimiento hacia la
izquierda de los elementoos de la secuencia. En este caso, el elemento ms a la
izquierda sale por izquierda e ingresa por la derecha, es decir.

5.6.4

x (n)

[x (0) , x (1) , x (2)]

x (n + 1)

[x (1) , x (2) , x (0)]

(5.29)

Desplazamiento hacia atrs de una secuencia peridica

Teorema 5.11 Desplazamiento hacia atrs de una secuencia peridica. Cuando una secuencia peridica se atrasa un paso, el elemento ms a la
derecha sale por derecha e ingresa por la izquierda, es decir.
x (n)

[x (0) , x (1) , x (2)]

x (n 1)

[x (2) , x (0) , x (1)]

(5.30)

5.6. CONVOLUCIN CIRCULAR

5.6.5

123

Denicin de la convolucin circular

Teorema 5.12 Convolucin circular de dos secuencias periodicas f (n)


y g (n). Dada la secuencia peridica f (n) de longitud N y dada la secuencia
g (n) tambin peridica y de longitud N . La convolucin queda representada
como f g (n) = f (n) g (n) y matemticamente, la convolucin circular se
dene como:
f g (n) =

N
1

m=0

f (m) g ( (m n)) ;

n [0, N 1]

(5.31)

Para ejemplicar el comportamiento peridico de la frmula, sta se desarrollar considerando las secuencias peridicas siguientes:
f

[f (0) , f (1) , f (2)]

[g (0) , g (1) , g (2)]

(5.32)

Desarrollando la frmula de la convolucin circular:


f g (0)

f (0) g (0) + f (1) g (1) + f (2) g (2)

f g (1)

f (0) g (1) + f (1) g (0) + f (2) g (1)

f g (2)

f (0) g (2) + f (1) g (1) + f (2) g (0)

(5.33)

Puede notarse que algunos de los ndices en las frmulas de convolucin


circular son negativos. Se puede aprovechar la periodicidad de las series de tal
forma que:
g (1)
g (2)
g (3)

=
=
=

g (2)
g (1)
g (0)

(5.34)

Entonces las ecuaciones de la convolucin circular se escriben como:

5.6.6

f g (0)

f (0) g (0) + f (1) g (2) + f (2) g (1)

f g (1)

f (0) g (1) + f (1) g (0) + f (2) g (2)

f g (2)

f (0) g (2) + f (1) g (1) + f (2) g (0)

(5.35)

Propiedad de longitud de la convolucin circular

Definicin 5.4 Longitud de la secuencia de convolucin circuilar. Dadas dos secuencias f (n) y g (n) de longitud N , la convolucin circular de ambas
funciones es otra funcin f g (n) de longitud N .

124

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Figura 5.1: (a)Representacin del operando f . (b) Acomodo de los dos operandos
f y g para la convolucin circular.

5.7

Mtodos para la convolucin circular

5.7.1

Ejemplo

Convolucione circularmente las secuencias peridicas


f

[2, 5, 0, 4]

[4, 1, 3, 0]

(5.36)

La correlacin circular de las secuencias se plantea resolviendo la frmula


5.31. Entonces queda el desarrollo planteado en la ecuacin 5.35. Susituyendo
nmeros resulta en:
f
f
f
f

5.7.2

g (0)
g (1)
g (2)
g (3)

=
=
=
=

24
21
23
20

+
+
+
+

50
54
51
53

+
+
+
+

03
00
04
01

+
+
+
+

41
43
40
44

=
=
=
=

12
34
11
31

(5.37)

Mtodo de los crculos concntricos

Sea la secuencia f = [f (0) , f (1) , f (2)] el primer operando de una convolucin circular. ste operando puede representarse con puntos equidistantes sobre
un crculo. Los puntos se numeran en el sentido de las manecillas del reloj tal como ilustra la gura 5.1.a. Preste atencin en donde se coloca el primer elemento
de la secuencia.
Sea la secuencia g = [g (0) , g (1) , g (2)] el segundo operando de una convolucin circular. Este operando se representa con puntos equidistantes sobre un
crculo inscrito en el crculo del operando f . Los puntos se numeran en sentido contrario al de las manecillas del reloj y haciendo coincidir el origen de la
secuencia g con el origen de la secuencia f . La gura 5.1.b ilustra tal acomodo.

5.7. MTODOS PARA LA CONVOLUCIN CIRCULAR

125

Figura 5.2: Proceso de convolucin circular para las secuencias f


[f (0) , f (1) , f (2)] y g = [g (0) , g (1) , g (2)] .

Ya dispuestos los crculos, se realiza el siguiente algoritmo:


Se realiza el producto punto de los vectores tal como indican los crculos
concntricos.
El crculo interior se gira un paso en sentido de las manecillas del reloj.
Se repiten los pasos hasta que el crculo interior ha realizado un vuelta
completa.
La gura 5.2 ilustra el proceso de convolucin circular para las secuencias
dadas.

126

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Figura 5.3: Aplicacin del mtodo de los crculos conentricos.

5.7.3

Ejemplo del mtodo de los crculos concntricos

Realice la convolucin de las secuencias:


f

[2, 5, 0, 4]

[4, 1, 3, 0]

La gura 5.3 ilustra cmo se realiza la convolucin circular de la secuencias.


Finalmente, la secuencia de convolucin es:
f g = [12, 34, 11, 31]

5.7.4

(5.38)

Mtodo matricial

Sean las secuencias peridicas siguientes:


f

[2, 5, 0, 4]

[4, 1, 3, 0]

En una seccin pasada se desarroll la frmula de la convolucin circular


para m [0, 1, 2] resultando:

5.7. MTODOS PARA LA CONVOLUCIN CIRCULAR

f g (0)

f (0) g (0) + f (1) g (2) + f (2) g (1)

f g (1)

f (0) g (1) + f (1) g (0) + f (2) g (2)

f g (2)

f (0) g (2) + f (1) g (1) + f (2) g (0)

127

Ahora las frmulas se expresan en forma matricial de la forma siguiente:


f g (0)
g (0)
f g (1) = g (1)
f g (2)
g (2)

g (1)
f (0)
g (2) f (1)
g (0)
f (2)

g (2)
g (0)
g (1)

Simplicando la frmula se tiene que:

(5.39)

(5.40)

[f g] = GF
En donde:

g (0)
G = g (1)
g (2)

g (1)
g (2)
g (0)

g (2)
g (0)
g (1)

(5.41)

f (0)
F = f (1)
f (2)

(5.42)

Obsrvense las columnas de la matriz G y ntese que los elementos de la


secuencia g (n) se acomodan por columnas que se rotan hacia abajo.

5.7.5

Ejemplo

Realice la convolucin de las secuencias:


f

[2, 5, 0, 4]

[4, 1, 3, 0]

Planteando la matriz de convolucin se tiene que:

f
f

f
f


g (0)
4
1
g (1)
=
g (2) 3
g (3)
0

0
4
1
3

3
0
4
1

Finalmente, la secuencia de convolucin es:

1
12
34
3

0 11
4
31

f g = [12, 34, 11, 31]

128

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

5.7.6

Teorema de aproximacin de la convolucin lineal


con la convolucin circular

Teorema 5.10. Clculo de la convolucin lineal con la convolucin


circular. Dada la secuencia no peridica f (n), de longitud Nf a convolucionar
con la secuencia no peridica f (n) de longitud Ng . Para calcular la convolucin
lineal a partir de la convolucin circular se agregan ceros a las dos secuencias
de tal forma que la longitud de cada una sea Nf + Ng + 1.

5.7.7

Ejemplo

Calcule la convolucin lineal de las siguientes dos secuencias empleando la


convolucin circular.
f

[2, 5, 0, 4]

[4, 1, 3]

Primero se calculan las longitudes


Nf

Ng

Entonces, la longitud de la secuencia convolucionada es:


Nf g

=
=
=

Nf + Ng 1
4+31
6

Luego a las secuencias a convolucionar se les agregan ceros para completar


cada una con 6 elementos:
f

[f, 0, 0]

[g, 0, 0, 0]

Finalmente, la convolucin circular

4 0 0 0
1 4 0 0

3 1 4 0
f g =
0 3 1 4

0 0 3 1
0 0 0 3

[2, 5, 0, 4, 0, 0]

(5.43)

[4, 1, 3, 0, 0, 0]
se calcula como:


3 1
2


0 3
5

0 0 0
=

0 0 4

4 0 0
1 4
0

8
22
11
31
4
12

(5.44)

Para conocer el origen de la secuencia, se recurre a las estrategias empleadas


para la convolucin lineal.

5.8. PROPIEDADES DE LA CONVOLUCIN CIRCULAR

5.8

129

Propiedades de la convolucin circular

Teorema 5.13 Asociatividad


f (n) g (n) h (n)

=
=

f (n) [g (n) h (n)]


[f (n) g (n)] h (n)

(5.45)

Teorema 5.14 Distributividad


f (n) [g (n) + h (n)] = f (n) g (n) + f (n) h (n)

(5.46)

Teorema 5.15 Homogeneidad


Af (n) g (n) = A [f (n) g (n)]

(5.47)

f (n) Bg (n) = B [f (n) g (n)]

(5.48)

Af (n) Bg (n) = AB [f (n) g (n)]

(5.49)

Teorema 5.16 Identidad. El pulso unitario es el elemento identidad de la


convolucin. Matemticamente se puede escribir:
f (n) (n) = f (n)

(5.50)

Teorema 5.17 Invarianza temporal


Dada la comvolucin f (n) g (n) = h (n) se tiene que:
f (n ) g (n) = h (n )

(5.51)

f (n) g (n ) = h (n )

(5.52)

f (n ) g (n ) = h (n )

(5.53)

Teorema 5.18 Conmutatividad


f (n) g (n) = g (n) f (n)

(5.54)

130

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

5.9

Convolucin lineal 2D en tiempo discreto

La convolucin 2D se suele aplicar en imgenes:


Obtenidas con sensores pticos en el rango visible.
Obtenidas son sensores pticos en rangos no visibles como el infrarrojo, el
ultravioleta, rayos gamma, rayos X, etc.
Obtenidas por radar.
El proceso de convolucin 2D en el dominio del tiempo discreto es ya demasiado complejo como para ilustrar en un texto el desarrollo de las frmulas. A
consecuencia, suelen usarse algoritmos especiales como el mtodo deslizante y
el mtodo de la convolucin circular.

5.9.1

Convolucin 2D

Dadas las matrices f (m, n) y g (m, n) no peridicas e innitas, mismas que


se ilustran a continuacin:

f (m, n) =

g (m, n) =

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

...
f (0, 1)
f (1, 1)
f (2, 1)
...

...
f (0, 0)
f (1, 0)
f (2, 0)
...

...
f (0, 1)
f (1, 1)
f (2, 1)
...

...
...
f (0, 2) . . .

f (1, 2) . . .

f (2, 2) . . .
...
...

(5.55)

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

...
g (0, 1)
g (1, 1)
g (2, 1)
...

...
g (0, 0)
g (1, 0)
g (2, 0)
...

...
g (0, 1)
g (1, 1)
g (2, 1)
...

...
...
g (0, 2) . . .

g (1, 2) . . .

g (2, 2) . . .
...
...

(5.56)

La convolucin entre ambas secuencias es:


f g (m, n) =

5.9.2

r= c=

f (r, c) g (m r, n c)

(5.57)

Convolucin 2D para matrices nitas

Se considera en este caso que las matrices de datos a convolucionar tienen


su origen en el elemento superior izquierdo, es decir, el elemento [0, 0].
Dadas las matrices f (m, n) y g (m, n) nitas, mismas que se ilustran a continuacin:

5.9. CONVOLUCIN LINEAL 2D EN TIEMPO DISCRETO

f (m, n) =

g (m, n) =

f (0, 0)
f (1, 0)
f (2, 0)
...
f (Mf , 0)

f (0, 1)
f (1, 1)
f (2, 1)
...
f (Mf , 1)

f (0, 2)
f (1, 2)
f (2, 2)
...
f (Mf , 2)

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

f (0, Nf )
f (1, Nf )
f (2, Nf )
...
f (Mf , Nf )

g (0, 0)
g (1, 0)
g (2, 0)
...
g (Mg , 0)

g (0, 1)
g (1, 1)
g (2, 1)
...
g (Mg , 1)

g (0, 2)
g (1, 2)
g (2, 2)
...
g (Mg , 2)

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

g (0, Ng )
g (1, Ng )
g (2, Ng )
...
g (Mg , Ng )

y cuyas dimensiones son:


size (f )

(Mf , Nf )

size (g)

(Mg , Ng )

131

(5.58)

(5.59)

(5.60)

La convolucin lineal 2D se puede escribir como sigue:


f g (m, n)

Mf 1 Nf 1
r=0

c=0

f (r, c) g (m r, n c)

(5.61)

m [0, Mf + Mg 2] n [0, Nf + Ng 2]

5.9.3

Las dimensiones de la matriz de convolucin

Teorema 5.19 Dimensiones de la matriz de convolucin. Dadas las


matrices f (m, n) y g (m, n) nitas y cuyas dimensiones son:
size (f )

(Mf , Nf )

size (g)

(Mg , Ng )

Las dimensiones de la matriz de convolucin son:


size (f g) = [Mf + Mg 1, Nf + Ng 1]

5.9.4

(5.62)

Reexin de una matriz

Para reejar una matriz se realizan dos pasos. El orden de los pasos no
importa.
Se reejan las columnas de la matriz.
Se reejan los renglones de la matriz.

132

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Cuadro 5.10: Proceso de convolucin entre dos matrices. f(m,n) se mantiene en


tanto que g(m,n) se reeja y desplaza en pasos. A cada paso, se multiplican
punto a punto las matrices.
A modo de ejemplo, considera la siguiente matriz

g (0, 0) g (0, 1) g (0, 2)


g (m, n) = g (1, 0) g (1, 1) g (1, 2)
g (2, 0) g (2, 1) g (2, 2)
Primero se reejan las columnas

g (2, 0) g (2, 1)
g (1, 2) g (1, 1)
g (0, 2) g (0, 1)
Segund, se reejan los renglones

g (2, 2)
g R (m, n) = g (1, 2)
g (0, 2)

5.9.5

g (2, 2)
g (1, 2)
g (0, 2)

g (2, 1)
g (1, 1)
g (0, 1)

g (2, 0)
g (1, 0)
g (0, 0)

(5.63)

(5.64)

(5.65)

Algoritmo deslizante para la convolucin lineal 2D

El algoritmo es simple:
La matriz f (m, n) se mantiene sin cambios.
La matriz g (m, n) se reeja y se desplaza en pasos de adelante hacia atrs
tanto en renglones como en columnas.

5.10. CONVOLUCIN CIRCULAR 2D

133

Las matrices se multiplican punto a punto (se omiten aquellos productos


donde las matrices no estn denidas).
Este algoritmo se repite para cada paso que se desplaza la matriz g (m, n).
Este algoritmo queda ilustrado en el cuadro 5.10.

5.9.6

Ejemplo

Sean las dos matrices siguientes, las cuales

1 1
f (m, n) = 1 1
1 1

1 2
g (m, n) = 2 4
1 2
Las dimensiones de las matrices son:

deben convolucionarse

1
1
1

1
2
1

size (f )

(Mf , Nf )

(3, 3)

size (g)

(Mg , Ng )

(3, 3)

(5.66)

(5.67)

(5.68)

Eso quiere decir que la matriz de convolucin tiene dimensiones de:


size (f g) = (Mf + Mg 1 , Nf + Ng 1) = (5, 5)

(5.69)

El cuadro ilustra el proceso de completo de convolucin. As entonces, resulta


la siguiente matriz:
Las dimensiones de la matriz de convolucin son:

1 3
4
3 1
3 9 12 9 3

(5.70)
f g (m, n) =
4 12 16 12 4
3 9 12 9 3
1 3
4
3 1

5.10

Convolucin circular 2D

5.10.1

Mtodo matricial para la convolucin circular 2D.

Se considera que las siguientes matrices deben convolucionarse circularmente

f (0, 0) f (0, 1) f (0, 2)


f (m, n) = f (1, 0) f (1, 1) f (1, 2)
f (2, 0) f (2, 1) f (2, 2)

134

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Cuadro 5.11: Convolucin 2D por el mtodo deslizante.

5.10. CONVOLUCIN CIRCULAR 2D

135

Cuadro 5.12: Proceso de convolucin circular 2D.

g (0, 0)
g (m, n) = g (1, 0)
g (2, 0)

g (0, 1)
g (1, 1)
g (2, 1)

g (0, 2)
g (1, 2)
g (2, 2)

El proceso de convolucin 2D circular f (m, n) g (m, n), por el mtodo


matricial se ilustra en el cuadro 5.12.

136

CAPTULO 5. CONVOLUCIN DE TIEMPO DISCRETO

Anda mungkin juga menyukai