Académique Documents
Professionnel Documents
Culture Documents
. 1
i,
'
Una ptCKnU<:i6n para C1tr10S de Grado
el l ,,,..,lca con M.tLib
..
nueva
librera
,'. , '
~
j '
INDICE
INDICE
Prefacio
Introduccin
......................................................................
............................................................................ 19
4. Anlisis de multirresolucin
4.1 Camino a la multirresolucn
............................................................................. 27
...................................................................... 30
............................................................................ 30
1995
Apindices:
J. Sobre los filtros digitales
................................................................... 1
l. 1 lntroducin
.............................................................................. 3
.............................................................................. 6
.............................................................................. 7
1.9 Un ejemplo
.............................................................................. 8
2. El teorema dl muestreo
.............................................................................. 1
PREFAClO
Teniendo en cuenta que aparece cada vez con mayor frecuencia la necesidad de poner en contacto
a los estudiantes de carreras de ingeniera con temas que en la actualidad son objeto de investigacin,
y demuestran tener importantes aplicaciones, es nuestro propsito en este trabajo difundir a nivel de
grado la teora de onditas (wavelets. ondelettes). Esta ha ido cobrando mayor importancia en los
ltimos allos y representa una alternativa al anlisis de fourier con ventanas para scllales, adems de
otras aplicaciones.
El libro que presentamos, est dirigido a alumnos que hayan finalizado un curso de Anlisis
Matemtico que incluya: funciones de variable compleja, series de fourier , transformada de Laplace ,
y que hayan asistido o estn asistiencio a un curso de sei\ales y sistemas.
Nuestra propuesta consiste en guiar gradualmente al alumno, desde temas conocidos como el
anlisis en frecuencias a travs de la Transformada de Fourier, hasta la Transformada Ondita,
pasando por las ventanas de Gabor. No nos proponemos desarrollar exhaustivamente los temas
tericos, sino ayudar a la formacin de los nuevos conceptos a travs de la simulacin de algunas
sel\alcs y su procesamiento para extraer informacin relevante de las mismas, transfonnndolas,
mostrando algunos grficos e induciendo al alumno a realizar las actividades sugeridas. Creemos que
sta es una forma adecuada para aproximarse a un tema nuevo. Posteriormente, el alumno interesado
podr profundizar en la bibliografa que se indica.
Para la realizacin de las actividades propuestas se ha elegido el programa utilitario MATUB que
demostr ser de sencillo manejo y verstil para el tratamiento de esta presentacin. Para algunas de
las actividades sugeridas se muestra el cdigo ea MATLA.B nentras que otras se dejan para ser
desarrolladas por el lector , pero mostrando los resultados a obtener a travs de representaciones
grficas. No se requiere demasiada experiencia en el manejo de este programa ; la consulta de Jos
manuales de usuario alcanza para realizar los ejercicios sugeridos.
En la seccin 1 se presentan una serie de actividades tendientes a lograr una fami liarizacin con
MATLA.B asi como la revisin de a lgunos conceptos relacionados con las seales de tiempo discreto.
Los apndices l y 2 complementan algunos de estos conceptos tales como la transformada Z ,
respuesta en frecuencia y el teorema del muestreo. En la seccin 2 se inicia el tratamiento de la
transformada de Gabor y los conceptos preliminares para comprender la resolucin en tiempo y
frecuencia .
La nocin de escala y los bancos de filtros son tratados en la seccin 3 . La introduccin del
escalamiento de la ventana de anlisis de una seal se utiliza para introducir las onditas . Finalmente
en la seccin 4 se presenta el anlisis de multirresolucin a travs de la descomposicin de una seal
en canales de frecuencia. Se muestra cmo dicho ami.lisis se puede implementar , para distintas
onditas spline de soporte compacto , a travs de filtros d igitales que son calculados y utilizados en
ejemplos con seales sintticas. Como ejemplo final se muestran algunos resultados obtenidos al
analizar la sel\al correspondiente a una palabra.
INTRODUCCION
i
1
'
I'
,.
-N_T_R_o_o_,,c
_-c_:1_
o_N_A__1_.A_s _ <_>N_n_1T
_A_s ______________________......;________________~
iv
Acti vidad Ml
SabihC!o que la transfonnada Z de la sucesin
A( z) =
L a( k) z -.t
, probar que si
{a ( k
r_ es
la transformada
Actividad M2
. -.;
, '
(o(a)Xk). y
f""f!,; ) '.".
.~
(0_1( aJ)(k)
'
2.2) Para una sucesin f a.f'/'aN.J.. o-i"M} realizar un corrimiento de forma tal que
el primer elemento sea a0 en forma directa y usando el algoritmo FFf.
Ejemplo: Siendo a(k)={l,3,5,Z,5,3,J} se desea realizar un corrimiento de forma tal que
7 sea el primer elemento
a) En forma directa:
a=[l 3 5 7 5 3 l];
% Ingresamos
a como vector
%
b
Re..~puesta
ans
7531135
b) Usando FFT:
Sabemos que (On(a))(t)= a (t-n); como FFT(a(t-n)) = FFT(a).ei2rt n t IN
1=0:11128:127/128 ;
a=(4cos(2*pi*t)+5)."( -1 ); % B"l(z)
% ser real ya que la sucesin dada es simtrica, sin embargo
b l =iffl(a);
% si se desea representar graficamente
% se deber realizar asi ...
% la parte imaginaria es practlcamente nula ...
plot(real(ifft.(a))
t=0:6;
g=exr( -i*2*pi*4*t/7); % corrimiento
4 lugares
"'(l 9 5 7 5 3 lJ;
b=re~l(ifft(g. *fft(a)));
% el vector original era real
de
b2=b1(1:30);
for j=!:29
b3Q)=b2(3 l-j);
end
invb=[b3 b2]
%Respuesll\
ans
7531135
conv(invb,{2 5 2))
% Sucesin Inversa
Actividad M3
,.:
Actividad M4
Teniendo en cuenta que el sobremuestreo de una sticesinfi'nJ se define como la
sucesin F(nJ tal-que
F(2n) ,;,, fin} ,
F(2n+ l } =O
Para:
3.1) b={2,5,2}
z ~ 4 + z-1 )16
JM'RODUCCION
A LAS ONl)JTM
k={):l:5: a2S+cos(4*pl*k/6);
Ejemplo: Sea d ={ 1357 9 8 6}.
usbsiffl(a);
%Respuesta
usb
ans
91r SUBMUESTREO
3 5 7 9 8 6];
Cor j ..t:(lengtb{d))/2
~[ l
502020
ds(j)=d(2*j);
end
ds
if rem(O+ 1},2) .. O;
bb(j)=b(O+ 1)12) ;
else
bb(j)= O;
end
end
378
% el veaor teudc el do!1le de elemenlOS de b
% sielrcstoesO,oseaj+l par
% se le asigna el valor corresspondiente
Actividad M6
Crear la funcin submuestm para MATLAB como archivo. ro y probarla para algunas
sucesiones o seales de tiempo discreto.
Analizar los espectros de una sena! de tiempo discreto y su submuestreo de orden _2
usando el algoritmo FFT disponible en MATLAB. Representar graficamente con
adecuadas escalas de frecuencias para poder observar las diferencias en los espectros.
bb
205020
% vecior b sobremuestreado
fsz64;
T=l/fs;
N=2S6;
t..O:T:(N-l)*T;
f=2*<:0S(4pi*t}+sin(16*pi*t);
CK,~
D=0.05;
b l l/4*sn(l6pi*(O:T:l-D));
h2=1/2+ t/2sio(pi/0.1 *((1-D:T: l+D)));
h3= 1/2+ l/4*sin(2*pi*(l +D:T:(N-1 )1));
4~c;.-
rf.".
~ ~
2osofo
h:[hl b2 b3};
% otra sella!
~ % espectro de amplitud de e
f::abs(Cft(t)};
. sobremuc(b,2)
hf:abs(CCt(h));
% espectro de amplitud de h
.200500200
~
F-oO: 1/N:0..5-1/N;
A<:ti~ldad MS
<ro esta sera una forma habitual de generar una escala de frecuencias donde
<ro Ja variable es la frecuencia en Hz sobre la frecuencia de muestreo y que
% llega basta 0.5 ( la mitad de.la frecuencia de muestreo , recuerde et
El submuestreo de orden 2 consiste en fonnar una nueva sucesi~n con los elementos de
.. ndice paf de fa sucesin original.
. :. - ~ubmue.Strear Jas siguientes sucesiones.
. 5.1) d =( i 3 5 7 9 8 6}
5.2) la sucesin a del ejercicio anterior
subplol(221),plot(t,0.xlabel('liempo'),ylabel('una seftal')
subplot(222),p10l(F,ff(l:Nf2)),xlabel('freo:ifrec de muestreo'), ylabel(' espectro de amplitud de f)
subplot(223),plot(t.h),xlabel('tiempo'),ylabel('otra sella!')
subolot(224),plot(F,hf(l:Nn)),,xlabel('frec/frec de muestreo'), ylabel (' espectro de amplitud de b')
'Actividad M7
l
i
:r
"
;!.
j{ro)=
f(t)
e-i(J)l
!:
dt
'~
IL
!~
,1
!~
,11t
i!'
!I
Ir
l
11
Representar grficamente w(t) para ex : 1 ,2 . y 1/4 con f3 :O, 1 y 1/2 a partir un archivo
.m con MATLAB . Representar tambin su transformada discreta de Fourier eon el
algoritmo FFf ( Transformada rpida de Fourier ) disponible cmo _fnci6n ctefulidl en
MA1LAB. Hallar la transfonnada de Fourier por defuticin y usando FFT, y observar
con atencin la relacin entre los desvos ( de l funcin gaussiana ) en los dominios
temporal y de las frecuencias. Recuerde que la transformada de Fourier de una funcin
gaussiana es otra funcin gaussiana.
El siguiente ejemplo corresponde al caso : ex= 1 y ex= 114 con ~=O :
J(<.O, x) =
t.
w( t - x)
f (~) e-Jw< dt
y
;
1
t
''
% VENTANA DE GADOR
% variable independiente entre .g y 8
1=8:1/16:8 1116;
gw=exp(-t ."214) .*(1/(2*sqrt(pi)));
plot(t,gw) . xlabel('t'), ylabel(' ventana de Gabor alfa= l')
pause
% Detenninacion del espectro de frecuencia
espgw:abs(ffl(gw));
=O:11256:.5-11256;
plot(f,espgw(1:128)), ylabel('espectro de la ventana '). xlabel ("frecuencia /frecuencia de muestreo'}
- 0.3r-----------;.,
11
l!
.l!
-;
~ 15
~02
~
.!!!
.. 10
l
~
"O
~ 5
0.1
.,~
0'----"''--~---"~---1
dondef(t) es la sefial, y w(t) es una funcin de L 2(R), denominada ventana, que e,s una
funcin real tal que su densidad espectral de energa est concentrada en las bajas
frecuencias. Se pide adems t w(t) e L 2(RJ, condicin que ser necesaria ms adelante.
En el caso de tieinpo discreto tenemos:
10
-5
0.02
11
~ 15
~
..
"'
-;;; 10
"O
O'---~--'-J'--_\~~--J
10
.5
o
5
10
g s
..
0'----~--==""-----1
0.02
a> O
o.04
o.e:;
frecuencia/!recuencia de muestreo
-(1-jl)'
2&
0.06
11
.l!
-;
-:;0.2
1
-w(t)=--e 4
0.04
~ 0,6,-...---~,,----~
<!>
frecuenclalfrecuencla de muestreo
~ 0.4
Jrro.n)= ,w<t-11)/(t)e-l-Olt
O'-----"'---~----'
10
9
4
j j
l
'
__
'
f<o:i,n) ,,w(1-n)f(t)e-10J1
Actividad M8
t.
1
Uempo
t:
t:
..
0.1
vl
'
'
,,.1
o
tiempo
1
1
1
0.2
0.3
01 .......---~~~-"--~~~.....J
o
0.1
0.2
0.3
rrecutncia/ trecuencl de muestreo
Flg 2 : Anli~s ?,e un~ se~ con In tmns!oro1ada de Oaoor .El espectro del producto
IW es una
ve.rs1n suaVttada del espectro de la seilal, es el producto de convolucio de los cspeClros de
ambas. Eo el primer grfico de espectros se muestrnn el espectro de la sena! ( 2 " picos " ) y el ~
la ventana ( un filtro pasabajos) .En este ejemplo se tom 11 =O y a. U16 .
w(tj
Actividad M9
f ( t) ={ 2 sen (2 1t32 t)
O s; l s; 1
2 1t 8 f) J < t ~ 2
Considerando ventanas de Oabor en 11 =0.5, 60164, 1, y 1.5 representar-grficamente
los espectros de Ja seilal y del producto sella! por ventana.
Ejemplo:
Dada la seal
Se/1 (
subplot(222)
plol( 1, f .gw) ;ylabel('producto seiial ventana') ;xlllbel('tiempo')
subplot(223)
espf=abs(fft(Q);
F=0:1/256:.5-lfl56;
plol(F,espf(l: 128)'); ylabel('espectro de la sella!') ;xlabel('frecuencia/frecuencia de muestreo')
espwf=abs(!fl(gw .*I));
subplot(224)
ll=O:l/128:1; 12=1:1/128:2;
t=ru aJ;
JJ
f
:xO: 11256:.5-112.56;
subplot(1j2i), plot(l,f,1,g) ,:xlabel('tiempo'),ylabel('scllal y ventana') _
subplot(W).plol(t,a) ,xlabel('tiempo),ylabel('producto' set1aIven1aila')
subplot(2f~).plot(x,bl,x,cl), xlabel('f/ fmuestteo), ylabel('espectros seal y ventana)
subplot(1:4). plol(x,dl) xlabel('C/ em=:reo') ,ylabel('espectro setlal ventana')
u:P;;.;lot:..;;(F~,es~p~w;.;.f(~l.;..:l;.;;2.;;,8)""');"'y-"la;;.;bc.;..l..:..('es.;.;;.:;.pec;;.;;..;;;tr.;..o.;..del~prod'-=u;;.;c:..;;to;.:'):...:;;.;;xla;;;;be:;.:;.;.:l(c..::'frec=u:..;;en;;;c;;;ia/;;.;f;;..recu;.:;.;;.e;;.;.n;.;.cl;;;a...;;d.;..e.:.:.m:..;;ue;;.;s:..;;lt.;..eo;.:')'----..... t.
J~
JNTROOVCCION A
10
'
ONDITAS
11
cy
10
J.;\&
150
100
1ij
so o
~
0.5
1.5
-10
0.5
1.5
tiempo
tiempo
11
.. 150
.,e:
..
e:
11
~100
.,..
D
g..
.,a.o
.,"'
150
150
100
o o
"
50
\.lo..
'-
0.2
0.4
0.6
frecuencia/frecuencia de muetlreo
50
00L-~~-o.~2~i..._~o.~
4~-~__,o.s
frecuencia/frecuencia da muestreo
Flg 3 : Ejemplo de Ja transfonnada de Fouricr con ventana para una seal cuyo espectro presenta dos
frecuencias. Se consider n =0.5 y a = 1164.
Actividad MlO
;
..
n-2sn(2*pi*32*ll); f2eSin(2"'p*812);
r..rn f2J;
alfa=l/64
G=[);
-20
% la seal
% parmetro de la ventana
for jxl:l6
g:(l/(2sqrt(piaJfa)Pexp(-(t-j/8)."2/(4*alfa));
% generacin de la ~~t.rlz G que co111endra 16 1rnnsformad11S
a=f. *g; d=abs(ffl(a)); G=(G;d(l:128)];
end
1,
200
mesb(G}
%Grfico3 D
300
400
tiempo en f/(frec.muestreo)
Flg5
'1
500
600
12
13
Ejemplo:
. 1200
tJ MODULAClON
1000
% seilal moduladora
% seuoldal a modular ( w=2 n:)
% modulaclon
a..exp(i*2"pi t) ;
ffcf.a;
800
Fl..abs(tft{O)
; F2=abs(fft(ft))
% espectro original y modulando una senoldal
.plot(FJ{l;256)) ;title(espectro sella! original y modulando senoidal '), bold on
plot(F2(1:256),'-.'), hold off
600
400
20
200
; Actividad M12
15
sen(21t8t )
i
Flg ~ Espectro de amplitud del fragmento de registro encefalogrfico de la figura 5 correspondiente a ,
distintas ttaslaciones de la ventana de Gabor. Son 12.ll. 111ues1.ras en frecuencia del espectro para 16 g
Dada la seilal
OS t S 1
sen(21t32t) 2 S t S 3
ro/ 27t eje valores 32 Hz y 16 Hz para la sel\al senoidal que mod.ula h(t).
i fA=continuacin
el ejemplo en MAJLAB.
tr.ulaciones de la venlanll.
2. Si se considera O> fijo, esto es, si se desea localizar en frecuencias, entonces j(w,n) ,
. puede considerarse desde dos puntos de vista :
.~ r.;-;;;;:;:::;-:-;::::-:::::::::-:::::::::-:::-:-::-=--::-:-____________...::6::!'.:..:A-~8~0:'.!:.;:::::.42..:....'.n__'.__ _
. .
a)como
i <oo.n) eselproductodeJ
convolucin de w(-(1-ri)) con /(t) e-t.>t. La modulacin que ft.t) produce sobre1 x"'l.S:l/256:3861256;
..\
2
815
e1<111 resulta en un espectro que es una rplica del de ft.t) pero centrado en ro, para gl=e)(p(-x." " 64>* qrt(pl); gl l=g1(322;450}; </ ventan:ide Gabor
clexp(i*2*pi 32*x)
htlh.*cl;
de~ alconv(hl t,gt t); na=al(65:lengtb(al)-64);
~ dlcxp(-i*2*pi*32*x);
. ..
\:i
% modulaclo
'7o filtrado y elitninacion de puntos agregados
:it
t d2-e)(p(-l*2*pi*l6*x); b=bb.*d2;
,:J
Actividad Mll
....>..
:t
1 ,_s_ub~Dp~lo~~~2~2~t)~,~~l~ot~(t.~b~)~,~~a~be~l~(~'ti~em~po~L),wY~la~be~l~('!se~n~ru~ru~t~rn~d~aJ)'...._~~~~~~~~~~_J
ti
14
0.5
-0.5
.,.
-1 LJ..Ll.U..l..L.WlJJ.W.ll.WJ,
o.os
free I
tiempo
..
:~
0.1
Actividad M13
free de muestreo
200
~ 0.5
..
. 100
1g
-
~
.. -100
- -0.5
o
Actividad M14
, .
Considerando ha sefial h de la actividad M12 realizar un filtrado con un filtro pasabanda
centrado en 32liz y tambin en 16 Hz usando la ventana de Gabor. .
A continuacin el ejemplo con un archivo . m desarrollado con MATI..AB.
.,"'
-200
-1 u.J.J.J..Ll..J.,.L;.~~"-'-
2
tiempo
Uempo
Flg 7 a Filtrado de una sella! con Lrt3 frecueoclas localizadas en el llempo. Puede observarse
como resulta filtrada quedando solamente el fragmenlo correspondiente al Intervalo ea
que est presente La frecuencia de 32 Hz.
200
~
~ o.s
....
..
~
.. 100
"'
~ o
gl~xp(-x."2*64)8Jsqi:t(pi);
1 cl=exp(l*2"pi*32*x);
.. -100
- -0.5
a
:
-1
Flg 7
-200
2
tiempo
con g(t)
1,
i'
:I
llempo
expresarse como
1.
b) Como
.t
15
= w(t) e'""
entonces
j(ro,n)
w( t)
puede
* g )( n )
modula a e
Q)I.
pause
gal=gl .et;
gal 1.. ga1(322:450);
al=conv(h,gal 1); a=al(-65:leoglh(al)-64);
c2.=exp(i*2pi*16*x);_
g~gl .*c2; ga12=ga2(322:450);
12=conv(h,ga12); b=a2(4S:lenglh(a2)-64);
sobplot(221)
.1
subplot(22 l)
Plot(rcal(ga2)) ,xlabcl('tiempo1 ,ylabcl('veutana modulada a 16 Hi')
lJ:oabs(rrt(ga2));
subplo t(222)
Plot(1,real(b)) ,xlabcl('tiempo') ,ylabel('setlal filtrada')
16
Actividad Ml6
... s
M
"'
"'
!o
f:.
17
:X:
<V
e:
:: o
I.
i> -5
-1
2
tiempo
2
tiempo
200
300
.; '
t~ 1-0.05
l
0.05
~
t ~ 1+0.05
h( t) = ~.5 + 0.5 sin(l01t( t -1))
1.05 ~ t
.."'
-0.5
Dada la seal:
CQ
0.5
~. :.
filtrarla con una ventana de Gabor de pr;netro a = 1164 para distintos valores de la
frecuencia central del filtro pasabanda generado. Sacar conclusiones.
:e
"' 100
'O
"" o
i.. -100
1
oL..J:.1---~--~---3~00
100
-200L-----~---'
200
tiempo
frecuencia
Ftg s Ftlltado conslderando que la ventana de Gabor modula una sena! scnodal ~ya frecuencia es la
cenital del muo pasabanda que queda determinado. Como en el caso anter:tor (Fig 7. ~puede
observarse como quedan detectados en el tiempo los fragmentos de la seal de detenrunada
frecuencia,
200~--~-----
.. 100
3 0
-=
L,L---~---~--~. i :,
tiempo
,
tiempo
Actividad M17
senoi~al
7t
20 t) buscando
lf.
,.,. ~ ..,...
~guioole <"!em~
cuya f.recuenJ
( 16 Hz en este caso) es Ja centml del fillCO pasabanda que queda determmado.Como en el C3S9
anterior (Fig 8.) puede observarse como quedan deteclados en el tiCUtpo los fragmentos de la set! ,
de determinada frecuencia.
Actividad M15
Flg 10 Fonnacin del banco de filtros caractedstico del anlisis de Fourier C\.:t la tr.uisformada
de Fourier con ventalla observese que el ancho de banda de cada fillCO pasabanda es
constante.
i Crear una funcin MATLAB en un archivo .m que solicite una seal como entrada UiI
I
..__ -
valor para el parmetro a de la ventana .,la frecuencia central del filtro pasabanda 'L,
retome la seal filtrada , representndola grficamente.
~
.~ -
.f
"'
19
. r.
Actividad M18
Considerar ahora como ventana la funcin
1:
sen( t)
w(t) =sin e( I) = -1
'J
1;
1,
!'L1
I' ,
L=lengtl1(t) ; F=(O:(L-1))/L;
for J=1: 12
% va variando la frecencia cen.tral del pasabanda
f=sln(pi*l)./(pi* t).*exp(i*2*pi*j*t) ;
ff=abs(ffi(O);
subplot(221),plot(F.ff),hold ou;
end;
1] Una vez elegida la ventana para el anlisis de una seal queda fijada la resolucin en
y frecuencia.
tiempo
~
2] Conocida previamente la banda de frecuencias que se desea ftrar se puede elegir el
t ancho de la ventana aqecuado para el caso , pero :
.
'
ll
xlabel('frec/frec de muestreo')
~u~1~Ie~('b~a~n~co~d~e~fi~1l~uo~s~c~o~ns~in~c(~0U)~__:.~~~~~~~~~~~~~~~~~~~~--'
banco de filtros con sinc(t)
15
!!
t:;; i -o.o5
1- 0.055.t5.1+0..05
1.05 5, t
o
o
i
.f
1i
10
[
!
.
1
0.5
free/free de muestreo
Flg 11 Banco de filtros obten ido considerando la ventana sin (t) I t . Es ~nteresante recordar el
fenmeoo de Gibbs para explicar porqut en este grfico no se obuene el banco de filtros
ideales, como el que muestra la fig 10.
Actividad M19
Filtrar las seales de las actividades anteriores ( M12 y M16 ) si la ventana considerada
es sinc(t) = sin (t) t. Realizar grficos y consideraiones similares a las comentadas Y
mostradas en las actividades mencionadas.
na rapida trans1c1on
.1
1 .5
0.5
-o . s----~-~-----.J
,,
:1
"'
'1
0.5
1.S
tiempo
vM>~
d<
Resulta evidente que la localizacin temporal del trans.itorio no puede ser mejor que la
da por el ancho de la ventana. ~ se disminuye demasiado el ancho de la ventana en el
tiem.po para localizar transiciones de este tipo se corre el ries~~ de no m~ar frecuencias
d cadas debido al aumenlo del ancho de la ventana en el dominio frecuencial :
esLa figura 13 muestra el proceso de filtrado de Ja sel\al h con la ventana de par~metr~
a:: 1164 y modulada en las frecuencias de 4 Hz y 8 ~~ . Estas frecuen~ias detennman e
:
centro de la banda de frecuencias de la ventana de anlisis en las frecuencias. .
. .
I~
l!
0.5
!:
~'
-0.1!
200
300
400
400
600
aoo ""o
I__ f(t)h(t-11)=(f(t),h(t-~))
Jro.>,n)= ,
1
1
200 ..
,___
-~i---.'\*
-2
100
40
' -1
. 011-------'
.21
t.5...-----------i
\:
500
' y
-(1->'
4
"
.f
senal lllreda
20~-~------,
F(a,n)=
siendo 1 I ..{;,
-'lo'---2-00--..-00--eo-o~-e~oo
.
Es frecuente al analtzar
sef\ales que se presen ten alt.as frecuencias producidas
. en
.
al de tiempo as como bajas frecuencias presentes en perfodos de tie~po
breves mterv os
d ancho ftjo no resuelve este tipo
grandes.EI anlisis realizado hasta ahora con ventanas e
. es que proponemos
ualizar una forma de reso1ve1 1as
de situaciones . Para comenzar a VlS
introducir un escalamiento de la funcin ventana.
:,
<l:
I'
L- f(t)h((t-n)la)
F lg 13 Proceso e
' I:
1
1
-200L-----o-oo---~1:::000
22 .
23
la
..
3.5
Flg 14 Banco de filtros donde ancho de banda y centro de banda son proporcionales
( se denominan filtros de Q constante ) .
'
Ejemplo :
caladas de
Se muesua a continuacin (Fg 15)los grficos correspondientes a versiones es
.
la ventana de Gabor para los valores de la escala a : 2, 4, 8, 16 .Se representan tambin
( Fig 16a) las correspondientes transformadas de Fouri~r en un solo grfico con el
propsi_<o ~~~o~parar sus anc~os caractersticos;}e han
Q)
..,.
.1
et
IL
..,.
rrr-
0
lle~
co
al
-;
-so
tiempo
0.5
.(" ..
{~'
50
o.1
0.2
o.3
-"
__,
Flg 16 a Representacin grfica del espectro de las ventanas de Gabor de la Fig 15. Obslvese
la proporcionalidad entre la frecuencia central del filtro pasabanda obtenido y el ancho de la
banda.
0
tiem:>o
ol......l~'-'--~'--'-----'....:..."'--..__
~,,
}_:
~
0.1
Actividad M21
~., -0.1
.. -0. 1
:I
1
oi,------------------,
.., 0.1
Flg 15
"' =1 ,
0.1
-o_~
sq
02
.. -0.1
-o._~
...."
f1Jtado
<Xo = 1
- -0.1
Actividad M20
-O., k
"----------0-- -- -- --50
Actividad M22
tiempo
O>o
= J
Dadas las seriales presentadas r!P, las actividades M8, M12 y M16 filtrarlas con una
ventana de Gabor escalada para distintos valores de la escala.
..
!
i
I" # '
25
0.1
~
e:
200
400
-0.1
600
50
100
liempo
150
200
..
e
~ 0.8
.a
>
~0.6
.,
~ 0.4
.."
!0.2
o
o
""
10
)~
0.2
0.4
0.6
-10
200
400
tiempo
16 t ) +
600
se11
NOTA:
% ESCALANDO LA VENTANA DE GABOR
a:input(' ingrese la escala: ' );
1 -
c.:-5*a:l:.5*a;
g=-(1/(2sqrt(pia)))*eitp(L"2/(a"2*4)).cxp(l*2*pi*t/a);
r-npul('iogrue la seilal : ');
b--conv(g,0 ; b lcb((length(l)+1)12:1englh{b)leogth{t)f2+1);
xzal:length(O ; xll:Jeogth(0/6;
al abs(fl(O) ;
a11=al(ltl);
gl[g u:ros(siie(l:leng1(0-lengtb(g)))] ;
a2=abs(fft(g 1)) ;
Podemos ver ahora que cuando.awnenta la escala (cambia el valor de a ), se tiene una
versin contrada de la seal, que es filtrada por un filtro de longitud constante .Es en este
sentido que el factor de escala "a"_tiene una interpretacin similar a la escala en un mapa:
las grandes escalas muestran una vista global, mintras las pequefias escalas revelan los
detalles.
a22-a2(d);
subplo1(221), plot(!), ylabel('sellal')
subplot(222) ,plot(reaJ(g)); xlabel{'tiempo');ylabel('venta.ua')
:1
Actividad M23
Considerar las seales de la actividad M22 , y el escalamiento JIat) de las mismas .Filtrar
esas seales escaladas con la vevr;i,na de Gabor.
Generar una funcin MATLAB donde las entradas sean la sef'lal , el parmetro de escala
.a y el ancho caracterstico de la ventana de Gabor.
La resolucin de una se'lal est vinculada con su contenido en frecuencias.En una seal
de tiempo continuo, si se cambia Ja escala, no vara Ja resolucin ya que con solo revertir
la escala, se recobra la se'lal original. No sucede lo mismo en las seales de tiempo
discreto, en las cuales un escalamiento involucra un submuest.reo: por ejemplo
considerandoftt) con factor de escala 2, hacemosft2t), que significa considerar solamente
las muestras que estn en los lugares de subndice par. Este submuestreo,
automticamente reduce la resolucin.Recprocamente, si reducimos la escala (por
ejemplo se hace g(t) = f(t/2)), queda determinado un sobremuestreo, que sin embargo no
cambia la ~olucin.
"'
{1100
e
o
2:.
:l
.5.___...._ _...__......__ _....'-'
50
o.._.,...__..._..~~-~~..J
0.5
llempo
0.2
o.~
o.s
Actividad M24
1
1
'
f
-5'---"---"---....IL..---'1..J
0.5
o.......
~~-~~--"-~..J
tiempo
0.2
0.4
0.6
Actividad M25
Las observaciones anteriores dan una base para otra aproltimacin al prdblema de
localizacin tiempo- frecuencia : considerar w1a funcin bsica y mediante cambios de
escala y traslaciones definir una familia de funciones que permita una descomposicin de
la sefial que exhiba claramente los efectos de localizacin buscados.
Sea considerar ahora una funcin 'V(t) ( la ond.ita) con la caracterstica de que posee
la modulacin en s misma, se denomina Transformada Ondita de una sealftt) a:
/\
W(a,n)=
o.,_,.~~~~~~"-~~
0.5
tiempo
0 .2
0.4
1 J~
(t-n l..,
,,Ja
_f(t)'V 7 f'
0.6
Si
Flg 18 a) La senaJ considerada y su espectro.
'tf(t)
c.= t rv~f d
entonces 'tf(I) se denomina "ondira bsica".
<
00
~'
28
r
,_
29.
- filtro endita
Si adems 'll(t) y i.V<roJ verifican la condicin para ser ventanas ( tw(t)) e L (R) );
o/< (1)) es una funcin continua y con la condicin c., < resulta
..
_o.e
00.
~0.6
..~.
i
J'
g, 0.4
0.2
o
o
y entonces 'lf(t) oscila en el tiempo como una onda de corta duracin y rpido
decaimiento. De all su nombre de 011dtta.
Estas condiciones ( ondita bsica , 'V( t ) y V( ro) ventanas ) son las requeridas para la
reconstruccin de la seilal a partir de su Transformada Ondita . La funcin de Oabor
presentada anteriormente no cumple es~ tiltima condicin.
0 .2
0.4
.f ::
;;
'I
=i
.!!
..
2
-4'-----~-----'
-4
o
0.5
lie!l'IPO
Flg 19 a
I f\
/ fA\,____.;_
01----'
:::
-0.3 ~----------'
200
<400
600
sanal r~llllda
..
~o.e
10r - -- - - - - - ---.
>-
;; 0.6
~
~ 0.4
~5!-0.2
..
-0.5
0.5
lie~
0 .5
~~~~
i o
la ondita
0.5
Generar una funcin como a.rchivo .m en MATLAB que solicite una sef'lal, el valor de
la escala y devuelva la sel\al filtrada con la ondita "sombrero mejicano " ( observese su
tiempo
Actividad M26
-4
0.6
ActMdad M27
WNNN
Flg 19 b. Filirado realizado a la sellal de dos frecuencias con la ond ita " sombrero mejicano'' .
La respuesta en fcecueocia del fillIO obtenido corresponde a un filtro pasabanda. La
La ~mxmente de 4 Hz es practicamente eliminada.
l.
aeal lillracia
4
o-----"-------~
20
40
0.2
0.4
0.6
frecuencia/freeuencia de muestreo
60
,,
lllg 20
-10~----------'
0.5
tiempo
's
d tro ejemplo de filtrado con la ondita " sombrero mejicano" . La sella! considerada es
....,.,,
. . la escala de manera que se pudiera
filtrar e dos
d senoidales como muestr"' ':! pruner
grn11co.
. Se ehg1
, :,
una e las dos componentes de la seiiAf como puede obsecvarse en el llltimo grfico.
~ uma
31
4. ANALISIS DE MULTIRRESOLUCION
z,
j (a) = f ( t j e_,., dt
subes~acios
para el caso
a =<J(t), WJ,k{t)>
Con la teora de onditas se obtienen resulta(!os similares ( Chui ] .Es.tos puntos se vern
con mayor claridad con el llamado anlisis de multirresolucMn. Para poder introducir el
anlisis de multirresolucin comenzaremos por presentar la descomposicin de una seal
en canales de frecuencia [Gopi].
Consideremos una divisin del eje de frecuenc::ias en intervalos.de la forma [2j-l , 2j+ 1),
...para.Ja.fncinftt) L2(R). Si Fjw) es la res~ de la transformada de Fourler F(w)
de j(t) al -intervalo , podemos representarla por una serie de Foucier con coeficientes
a;..
Es decir.
:
; '.
Consideraremos entonces una divisin del eje de frecuencias en octavas o sea en
1
y sea j(t) e L 2(R).
intervalos rt i) '[-i. -i'1) con j E
~uscaremos los ftros cuya respuesta en frecuencia coincida con estos filtros pasabanda
ideales . Antes de efectuar los clculos en fonna analtica , veamos algunos grficos de
respuestas en frecuencia correspondientes a j = -.1:
z'
1.5
1.5
1
., -
0.5
W E
donde
{-J/2, J/2)
0.5
O'--~~~--L~~~~~
en otro ca.so
0.5
'L-~-'-~~~~~~~
(a)
(b)
2.--~~~~~~~~~
entonces,
1.5
1.5
J,hZ
:L,
aj! W_i
0.5
(t)
donde
Wji{t)= W(t+k)ei21tjt
0.5
' '--~..L..~-L~~~~~
).tZ
w(t)
0.5
0.5
(C)
01'--~-'-~-L.~~~~
0 .5
(d)
Flg 21 Rcpresenlllcin de la divi$ivn del eje de frecuencias en octavas (a), b)) .En d) ~ ~muestra Ja
clifcr enca de los filtros ideales mostrados en a) y b).
';,
..
. ..
--
'
.!!INTR
!!;!!:20DU~CCl=9:0!:?!N~A_!L"5~_!:!0ND~IT!:A~-------------------S
32'.
Si observ~os que una funcin que vaie un~ en el interv~o [a 1 b] y cero fuera de l se
puede obtener corrio diferencia de las funciones que son iguales a uno en [O , b] Y ert
[O , a]
respectivamente , y cero afuera del correspondiente intervalo : los fillr03
simtricos que buscamos no son otra cosa que versiones escaladas en potencias de dos de
la funcin sine (1t t).
Los siguientes son grficos de los escalamientos de sine(1t t) :
.
sine(1rtd) j
0,1,2... 5, muestreados en los enteros t = -20 21 : 1 : 20 ')} , Y de lo.!
sus espectros de amplitud, abs( fft(sine( rd) .>) paraj =0,1,2,...5.
.
Actividad M29
Acl atacl6n : la funcin de variable continua sine ( x t), no dCcae rpidamente a cero en el Infinito Y ya
que la predsin que se lograrla tomando SOO ponts no es mucho me~or que la que hemos considerado i
:,s
1.5
..
,,
1 ----11_,.,.,,..,~--
0.5
0.5
'V ( t)
\.
ol.l.A.a....i..~~-~-----'
0.5
J. = 1 ,
teniendo en
0.5
b
2 . 5~--------.,
function y .. psinc(l)
y,. 2*sinc(2 i*t) slnc(pit);
1.5
~'
eje::
()Clavas
.s1
o.5 .
~puesta
1.5j
~-.tvv\~t{\'\f"'.1"'""-"i
j
/
M28
20
a) Generar como archivo .m la funcin sinc(t) .; tener.~. cuenta que dar error ~,
evaluarla en t 0 ,para eso UJl muestreo que evita la d~~lSl(\ por 0 es PO!" ejemplo
t 20: l + eps : 20 , donde eps es la menor dferencta entre dos ntimeros en punto
flotante en MA1LAB:
. .
.
-J+I
i)
b) Representar grfiamente el ~uestreo de las ~nc1ones $1 ( t ) = 2
smc(n t 1
j 0,1, .. :5 y para t -20*2': 1+eps: 20*2'
:1
.
10
1
1
e
:s
Activid~d
/'""
r'
10
20
0.5,
ot
0.5
rl/V'
r==
0.5
34
JPO"llODUCCION A LASONDITAS
r-i 1t' _
Pi.testo que
con je. z
1t) u
R = ( UJ
{- 7t, -f'
.. .
J-
Si se define
resulta
2J \V(X)dx =o
3J " (13( 'VXxJl 2.tixlJdx = 2ln2 < -
L,
b.1 txp(-ikwl2)
, se cumple:
de F/w) se tiene :
1t -peridica
Bjw)=
= 2 9( 2x) - cH x)
1] <?(x)dx =l
F(w)= I.;F/w).
'V ( x)
1t]
As resulla que '!f(x) cumple las condiciones para ser una ondita .
bj.k=f;(-kd)lt.
Actividad M30
ri 1t' 2}-J ~) /
>
1t'
i 1t), r-i 1t
'b'~sma
F ( w ) = B1 ( w ) ( 1.JJ. + 'Xll .)
6
F; ( w)
.
' 'F(w)
= F(w)~ L,
;.uz
1t))
!} (
t'
=i
1t sine(
1t sine(
f( x) = La,.to/ i..t( x)
J.kZ
es la serie de ondilas de f ( x)
Resumiendo:
l ] Quedan definidas dos funciones :
.se tiene:
(X)
=L
bj.1-2' (2 q,(2
J+I
(x-k/2 )) - cp (2 (x-k/2
)))
J.J.Z
a) Generar un archivo.ro que evalde 18.'! funciones 'Vp ( x ) = 2-1 1 'V ( 2-J+'x ; k )
muestreadas en los enteros t = -20*2'"1 : 1 : 20t . ( Nosotro~so
..wpinc.
W I A.Je_. h
forma que para la actividad M28 , generar un archivo .
a ue
.aparezcan en un mismo grfico F(1f) = abs( jft( o/)). Comparar con el grfico b) de la
figura 22.
ir-x > =
donde sine ( t)
=sin ( t) / t
'V ( t) = 2 H 21 J- H t J
- 4>(ix-kJ>
l>Z
L
/.kZ
(fJ(wtJJl2; l2[2ip(2(
2Jx-k)) -
$(21-x-kJ]
1111
SJ f(t)e
V;+1
<=> /(2t)e V.
Actividad M31
$ (t) = L
cj> ( t)
=2 n
1
tt (
L. u ( k)
112 sine ( 2
1t (
t - k / 2) / 2)
oy
u(k)
dado que
cj> ( t)
= 21n
cp ( k/2 )
= 21n
sin ( 1t k / 4) /
r. w <k J $ <21 -k J 2
resultando:
grfico b: W .L W; ,
V !::: Yo .
e: V
'V j > o.
'
1if <r J
w
rk J =
112
1i1 ( k 12)
112
i-112
r2H
< $ ( t ) , $ ( t -m ) >
= O( m )
= o( m) = L *w (le)
<
<I> (
t ) , 'V ( t - m) >
V j > O.
k J - cp k 12 )
J.
= L: k u ( k) " ( k + 2m)
=Lt
w(k
+ 2m)
u ( k ) w ( k + 2m )
21 v 1 V es denso en . L2(R).
3] n1 "={O}.
4) '11 = V+1 e W+1
1]
1t.
V;+1 !::
7t
__R_o_o_oc_c_1o_N
__A_L_A_s_o_m>
__
IT_AS___________________________________________ 39
~11<T
Como
Vf1 = ~
V j > O ,,
Actividad M32
{;)..,
A>
J +l (
t - 2 i k) - n)
Generar en archivos .mat los filtios u(n) y w(n), con los nom
vsnc lue 0 de
calcularlos como se indic antes. Para guardarlos : save usinc usnc y save v me vsinc
Notar que oor la simetra de sinc(t) estos filtros de anlisis resultan simtricos.
tesNeata frecuencia <:i os filtroii siCYY.iC.
2~--~--~---..----..---~---r----.----..----.---~
1 .51--------.--.~
112
I.
+1
<P(i1
u(n-2k)
= :E u ( n - 2k ) <!>
}-1.t (
0.5
(2k+11J .J
oL-___,____._____..____,____
O
(t-2JI n))
O.OS
0.1
O. 1S
0.2
.......~--"'-----'----'----'
..i....::~
0.2S
rre~ncialfr8!:!:'encia
0 .3
0.35
0.4
0.4S
0 .5
de muestreo
2..-~:.--~...-~~:::==;:=::..=c:;===:~==:::;::.~-...~--.~-,
1.5
t )
resulta entonces:
0.5
CJ.t
= <
<f> }.k ,
== <
Cj..t
= L
f (t) >
I. u ( n - 2Jc )
U (
f(t) >
= L U ( n 2k )
= ( u (-n)
C}I.
* cg. ) J. 2 ( k )
ij.1.
u (-n)
w (-n)
0
o
o.os
0.1
0.15 0.2
0.25
o.3
o.35
o.'4
0.45
o.5
frecuencia/frewencia de muestreo
Ejemplo:
Para todo este tipo de clculos conviene definir las funciones que los realizan en archivos
.m de MA'ILAB.En primer lugar, deberemos calcular los coeficientes c(k) . Puesto que
al efectuar la convoluin, siempre debemos conservar la cantidad de puntos de la seal
qutando los puntos agregados por el filtro , conviene generar una funcin que lo haga cada
vez que lo necesitemos :
HL.T@~M
functon y= fillO (x,z)
" x es lltla seilal. z un filtro
"Esta funcin filtra y quita los puntos que se agregan en el producto de convolucin
t, Esto resulta valido si z es simetrico .y oc lallto tiene un numero impar de P\lntos.
Nale11'g1(x);
Llenglh(z);
Y=conv(x,z);
y= Y(l+floor(U2):N+loor(LJ2));
~
JJ'(TROOOCCJON A LAS Ol>JTAS
Observar que en cada nivel se tiene la mitad de las muestras que en el nivel anterior la
resolucin "empeora" sin embargo los "detall~s" quedan en W , dado que ste es' el
. complemento ortogonl de V en V.1 Si llamamos:
"
dj.11
load usinc;
41
d;t
u..uslnc;
y subJDuest(f1llO(x,u));
Ejemplo:
De la misma manera que para los coeficientes c(k), el clculo de los coeficientes dj(k) , para
J ~ 1 , se puede hacer aplicando recursivamente una funcin que calcula estos "detalles":
donde
function y sub.muesl(lt)
% x es un vector
% Esta funcin sub.muestrea la su~ln x , toma la primera muestra de cada dos
% los indices van de 1 a length(x)
for j =1 : c:eil((lwg1h(x~)/2)
yQ) ,. x(2*j-l);
end
___________
M~3
20
20
20
10
10
10
-10
10
'.10
-20
20
-20
100
seal
200
load wsinc;
wswsinc;
y= submuest(fillO(x,w));
Actividad M34
Obtener los coeficientes dj(k) = <j.t para la funcin h del ejercicio anterior para los
nivelesj = 1,2. Representarlos grficamente.
20
20
.11;
lC
!
functlon y= detslnc(x)
'Ai x es un vector,
91> y resulta de fillrar x con el filtro
,,
--Adi'1idad
200
100
coeficientes nivel 1
'
.,
20
10
of"-/Vv"'v
0
~
100
200
ex>eflclentes nivel 2
-:i<
-2'
l- 11
-H
10
100
.,.n.1 t..
200
Q,
100
de~all
2()0
niv l 1
100
:oo
do~al~ nivel 2
_,~_r_R_CD_'U_c_
c_1o_N_A~L_AS~O_ND_i_1_11S~~~~~~~~~~~~~~~~~~~~~ 42
J(tJ
I.1d..t'l';;.t(tJ
I. 1 C.1 L u ( n - 2 k ) $ J-J.,. (
="L./
t) +
L.tC~u(n-2k)) q,.1...(1)
= I. C.1.n
I. l
d..t
+ I..(L.td;...tw(n-2k)] $j.1...{t)
'.l .lt
$ fl, ( t)
'
c.1.
~{.
;~.:
e.1..
I. 1 u ( n - 2 k)
= (u ( k) * ( c..t
Cj.t
I. 1 w ( n - 2 k
r.~
) <J..t
}
i2) )( n) +
:;>
...-...
* ( tj,.t i 2)) ( n)
( w ( k)
tJ'
~:~ i
~
1 '!'..
De modo que para recuperar los coeficientes del nivel anterior (mejorar la resolucin)
jebemos duplicar la cantidad de muestras intercalando ceros en los Jugares impares , tanto
?ara los coeficientes de la resolucin menos fina c.* como para los correspondientes a los
jetalles di. , utilizando luego los filtros u(k) y w(k) , que son los filtros de sntesis. Notar
Jue son idnticos a los filtros de anlisis .
tf
:;6r\l\Ahe.dI'\'\
Ejemplo:
:=z.eros(l :2*1);
:(1:2:2*1)=x: .
:
1
ti ,.r
Puesto que deberemos aplicar recurrente.mente las funciones que calculan los coeficientes
"e" y "d". nos resultar convenienl, tenerla$ disponibles como funciones MA1LAB. .
, ~2.
=length(x.);
i1.
'
I'
( '
i~
unction y= sbnnucst(x.)
I> x. es un vector, y es el sobremues1reo, in1etcala Oen los lugares impares
:-\i
"'
~~
l=Z;
Vl>. vn
1
unction y=up(x,N)
(, x es un vector, y es el sobremuestreo, intercala O,dejando los v11lores de
11. x. cada 2"N lugares.es la 2"N lterncion del sbrmuest(x).
-=lenglb(x);
:=:reros(1:(2"N)*I);
.(1:2"N:(2"N)*l)'=x;
function y-csnc(x.N)
C.x;
~ ,,
n;.l;
wbllen<N+t,
n-n+l;
C-coesioc(C);
cnd
y..C~
fnc.li9n y ,. dsine(x,N)
\.ctividad M35
~1
;'
1Va<te1sinc(csinc(x,N-l ));
= (u
c2 i2) ( k)
-+ ( w
.* d2
i2 )( k)
-'
<4 . ;t
lf
.''i
~
!i
r~
:1
~ :
'
::'
f "~
!" !
Jl :
ti
g(t)
, g ( t) =
L,d,,t'l'i..t
:r, 1
CJ.t
Esta funcin g (t) representa una "versin empeorada" de gen el nivel de resolucin j. .~
Es-ia "proyeccin" de gen Vj esc1ita en la base de V : ~i.k (t), donde los coeficientes srf
los c.1.
La suma doble representa a Jos detalles que se fueron perdiendo en ese nivelj. y en cada
uno de Jos niveles anteriores. La funcin
ri ( t)
= L1
'
fuoctlon y -~psinc(x,N)
t:. es el residual de nivel N cuando -x es una sella!
yy-dsiD~x.N);
..
sinc(yy,N);
functlon y .. ap.unc(x,N)
~para cada nivel N especificado asinc(x) esta en el S(psinc(.ll."N-k), k ea Z)
~ ( S es eJ subespaclo cerrado generado por psinc(.ll."N-k) )
~ N:-1.( N-0 es la seal )
~ faltad.l vidir poc la llOllWl.:..J)ilsqrt(2).
+L.
ISfSj
donde g1 ( t) e Yj
g(t).
45
44
Ejemplo:
Clculo de Ja aproximacin de nivel N
r;(t)eW;
a-2"N;
~-20*a: 1+ej)s:20a;
v.-pslDc(t);
ooditas(0.5fa)*w;
y flltO( x,N),ondita);
Actividad M36
a) Para .la seal h ( actividad M12 ) , calcular las aproximaciones y residuales de niveles
1,2 y 3.Representar grficamente.
b) Lo mismo. para la funcin hS= [ h l h2 h3 ) donde
bl =sin ( 22opi*tl ) : h2 =
sin ( 2"'80*pl*t2) ; h3 =sin ( 2*36"'pi*t3) ;
y h =hi k 1,2,3 en los intervalos
especificados en ti , i : 1,2,3 :
-
tl =o; 1/256 : 85/256 ; t2 = 861256: 11256: 170/256 t3 =1711256 : 1/256 :2551256; '
aprsinc( x,N) :
rS~l'\C ~'\\
. function y =aprsinc(x,N)
'fo es la aproxlmacion de nivel N cuaudo x es . una seal
YY"'csinc(x,N);
y= asinc(yy,N);
'foyy cnlcula los coeficientes de la proyeccin sobre V 11
'l>la funcin "asinc" efecll1a la combinacin Lineal en la base de V"
_,
2
100
209
prolnc rlvtl '
100
200
rcspllnc hlvtl 1
function y= asinc(x,N)
% para cada nivel N especificado asinc(x) esta en el S {sinc(./l."N-k), k en Z)
'1t ( S es el subespacio cerrado generado por siuc(.ll:"N-k} )
% N>=l.( N=O es la sellal )
% Caltadividir por la nonna .. pi/sqrt(2).
a=2"N;
t:<-20*a: l+eps:2on;
u=sinc(t);
escala=(0.5/a)*u;
y= fill(up(x,N),escala);
ol'-
........--"...
..
o,_.,,.,,...,..~
_,
_,
-2
tilo
. aprolnc nl~el '-
2
200
1(!0
200
1up1lnc me~2
''
_1NTR~--ou
......c_CJ_o_N_A~LA~
S ._o_N_D_IT_AS~~..--~~~~~~~~--..---..--............;......,................_
Actividad M37
0 ,05
o.es
47
ActMdad M38
o
100
200
np 1h\c nlvel 3
300
100
200
300
re,p31nc 11fve! 3
EjeJDJilo:
,
La figura 29 muestra Ja aproximacin y el residual de nivel 2 para la sllaI'b..
l~
"
L.. ~...l
...
hold on
, . .
. , , {,
plot(ss,ffi/mfi,1l .ss.tps1/mps1, g) , bold off
subplot( ll I) tpause
d 1 fil
d 1 nivel N
% Comparamos los graficos en frecuencia superpuestos de la seilal 'i e os 1 iros e
) ~~
(a)
)00
Cb)
'
,1
Otro hecho que debemos observar es que las funciones 'l'i.1t ( t ) son ortogonales no
solo para diferentes niveles j , sino tambin dentro del mismo nivel de resolucin j para
diferentes valores de k . Estas onditas se llaman ortogonales y para ellas los filtros de
anlisis que de ahora en adelante llamaremos vO y wO , y los filtros de sntesis que
llamaremos v y w resultan idnticos [Malll).
1 '
1:
1
) ~Id
subplot(211) j
J
J
plOl(sb,fh/mh) , hold on plot(ss.ffl/mfi.'b',ss.fpsi/mpsi,'g') , hold offr .,101(sa.fdmc o on
plot(ss,ffi/mfi,'b',ss, fpsi/mpsi,'g')
.
"
200
Lo que debemos tener en cuenta en todo es.te desarrollo es , en primer tnnino la poca
precisin con la que hemos trabajado , motivadS' por el lento decrecimiento de la escala de
la funcin sine y de la,ondita psinc . Para tener una mejor p1-ecisi6 hubiramos tenido que
considerar. ms de diez mil puntos para obtener ms de cuatro . dgit;Os exactos.
Naruralmente nos conformamos con mucho menos para tener una idea grfica dcl proeeso
de muitiresolucin.
-
.; mpsi=max(fpsi);
% normalizacion de las escalas pi [O 1)
Ui=lcngth01); /i,s..tenglh(fi); JLa=lengl.h(fa);
, sh=O: J/Lh:(Lhl)/Lh; Jsa=O:l/La:(La-1)/La; Jss=-0: 1/Ls:(Ls-1)/Ls;
J subplot(22 l} J
/
J plot(h) / plot(a) , plot(r) ,lplot(sa.fclmc)
.
.
% ubicamos Jos coef N_sol>rcm. y los filtros del mvel Nen el mismo grafico
100
,;
mfi=mait(ffi);
~\
I psi=abs(fft(psi));
0 .2
I ffi=als(ffi(li));
1(wvv
.
.
-1
l.----~-~--~ .
.i
.....
__rr_AS
________________________________________~
~NTR""--~~ov-c_c_Jo_N__;,,A.-.;;L~AS-O_ND
4.2
Mul~rresolucin
48
Para obtener urt muestreo mejor de la m (PCt)) completar con ceros hasta tener por
ejemplo 200 puntos y luego calcular la fft
g. (x)
c(k) ~ (x-k)
Esta representacin es l1nica y, por lo tanto , g. (x) queda unv-0eamente detenninada por
sus coeficientes { e (k) h.z }.
Si llamamos Yo al subespacio de L 1(R) cerrado, generado por
En lo que sigue nos ocuparemos de este tipo de funciones : funciones spline de orden n,
que son funciones continuas, polinmicas de grado nen los intervalos {k.. k+l) y con
derivadas continuas en todo punto hasta el orden 11-l;
entonces el conjunto de los subespacios V;. cerrados generados por los escalamientos y
je Z forma un anlisis de
traslaciones de la funcin ( P (2-j x-Jc) , ke Z }
multlrresolucin para L 2 (R) , cuya funcin de escala ser P ( x) .
~ (x)
= (X X*
t-
.... X) (x)
n +1 veces ~
P (x) =
a) SI.
(x) puede evaluarse como:
(c(k)Jef
ex
=l/ 6, utii.zando el
.i
proc~1m1efilp
quad .m para
Jlp (1)-G(1ld1
"= 0.00056
-l
'
Sugerencia : Para hacer uso del procedimiento quad8 ( rutina de integracin numrica en
MA1LAB)
R~ordando que el soporte del producto de convolucin de dos funciones est contenido
en la suma de los soportes de esas funciones , obtener un grfico de ~ (x) y de su
transfonnada de Fourier,
enteros.
~(x-k)
c(k)
Actividad M40
Actividad M39
Paran = 3, comprobar que la funcin
= !,
( g.(x)
q quad8 (' dilb3gb -2, 2 , le-8) 'lo calcula la Integral entre -2 y 2 con una tolerancia de 10
f.
J..~
} '
y.; dlfb3gb(t);
a. 116;
b spl3(l)
it t :'21 ( 4 *a):
Y ( b- g) ."2;
'
_11'"rR
__
o_oo_c_c_ro_N_A_LAS
_ _.o...
ND
....1_T....
AS_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 51 '.
Actividad M41
'
,1
0.8
0 .6
o~
o2 .
-3
En la prxima actividad veremos que la ondita spline 'V (x) , proporciona una aproximacin
aceptable a una ventana de Gabor con modulacin :
-1
-2
1 ,..
Actividad M42
Flg 30 La spline bsica cllbica ( .- ) y su aproximacin (_}por una gaussiana
Si
g ( t) =
a= .69706, ro0
=0.409177,
donde
cr 2 =0.561145
de la
xl2)
w(k)
mostrar que :
13 (x-k)
13 ( xl2)
y de la
u (k)
J3 '(x-k)
orlogonalidad :
=o
VkeZ
:O- a laOlldh -
0.3...---..,....,,...._--.----.-----.----~---.----..
'V (x)
0.2
= Ll w(k) J3(2x-k)
0.1
donde :
w(k)
= O si k < -6
-0.1
-4
-2
Uempo
. 3
Flg 31 La oadita spUae 'I' (x) aproximada por uua ventana de Gabor con mod.ulacln.
-3
Actividad M43
Compropar que el centro y radio de la ventana en el tiempo obrenida con 'ljf(t) son :
centro
.-NTR
.....-....._oo......u.c_.Cl:-'O_N_fl............LA
............
s .....
o
ND
~
IT
;;.;.
/l"S
'"
_ __ __ __ _ _ __
radio:
_ _ _ _ _ _ __ _
53 _.
b7 ( k) .
2.0Q107128
que es prcticamente la ventana ptima. Los clculos pueden verse en [O' Att] .
En forma amiloga hallar numricamente las dimensiones de las ventanas en tiempo Y
frecuencia para Ja ondita "sombrero mejicano" y comparar.
Analticamente por integracin directa resulta :
ventana en tiempo
respectivamente ,
Las funciones spline que consideraremos , son aquellas que pueden obtenerse por
convolucin :
cp(t)
= LP<k>P (t-k)
ka-
m =O
4> ( n ) = (p
ventana en frecuencia m =
* b3) ( n )
4
r
3..;rc
~"'
T )=
"\jF(t)
= !, q(k)'11r.(t -k)
h-
13Cx/2)= '!,u(k)p(x-k)
t-
donde u ( k )
= Osi
k S: - 3 o si
k ~3
La respuesta en frecuencia de u ( k ) es :
Y
1/8 1/2
3/4
l/ l.
1/8
U ( f) = 2 cos4 ( re f)
nivO.
En general,
g(n)
= !eo(k)cj>(n-k)
h-
L a(k)z-t
p3i,._.
es decir
k-
es tambin
Tengamos en cuenta adems , que para el anlisis de multirresolucin que se hizo con la
ondita asociada al seno cardinal : psinc(x) = sinc(x) - sinc(x/2)/l
,
dada una
seilal muestreada { g (k) h vimos que, para el nivel O de la multirrC$oluci6n , los
coeficientes coincidan. con las muestras de l seftal.Esto no ocurrir en general, de modo
que deberemos tambin, calcular los coeficientes para el nivel O, que se obtendrn filtrando
la sena! con un filtro que depender de la funcin de escala .A ese filtro Jo llamaremos
~ y q(k)
4> ( n ) ::: (p
* b3) ( n )
y como
=( c0
p b3) ( n )
entonces
Co ( n )
= (p
bJ )"1
"'
g ( n )
funclion y = fill(x,z)
<1>1
en
un filtro, filtra y quita los puntos que ngrega esto es valido si z es simetrico y por tanto
tiene un numero impar de puntos.
LxEJength(x); M - Lx -1 ; Lz,.Jength(z);
% x es una sena.1 z,
to--
'JI,
xO=esp(x);
yy = conv(z,xO);
!Y yy (M+l+floor(l.712): Lx+ floor{L712) + M );
Resumiendo , los clculos a realizar para el anlisis de multirrcsolucin para una ondta
dada son:
l. Calcular los coeficientes p ( k) que llamaremos p" ond" para la funcin de escala .4>
(con "ond" se hace referencia a la ondita de que se trale : pbas para la ondita bsica ,
pcard para la ondita cardinal , etc ... )
2. Calcular los coeficientes q ( k ) que llamaremos q "ond" para la ondita 'I' asociada a 4>
es decir la aproximacin del nivel j ms la suma de los residuales del nivel} y anteriores.
Los coeficientes d., ( k ) son Jos del desanollo en serie de onditas de g ; go es la
proyeccin sobre Vo .
S. Calcular el filtro correspondiente al nivel O de resolucin que esel nivel ms fino , los
coeficientes cO ( k) sern los de la proyeccin de la sel'lal sobre el subespacio Va , y
se obtendrn filtrando seal a analizar con nivO.
Un punto que debemos tener en cuenta es que para evitar las discontinuidades en los
extremos del fragmento de sel'lal a analizar [Uns2) ,resulta necesario recurrir al
~pejamiento de la sel'ial (completar la seal en los extremos con. una copia en esp~jo de_la
misma) . Dado que h~y que hacerlo , en todos los clculos, hemos definido la rutula filtro
a diferencia de la fiJtO.m que utilizamos con la ondita psnc, de la siguiente manera :
funaion y" esp(lC)
=lenglh(Jt);
y:=[x(:, N:-1:2) x x (:,N-1:-1:1) );
Actividad M44
Probar la funcin anterior con
x = (1 2 3 4 5 ).
sobremuestreo iterado N veces de los coeficientes del nivel N, con las muestras de
$ i ( t) en los enteros .
U.Calcular el residual del nivel N , que se obtiene por convolucin discreta de un
sobremuestreo iterado N veces de los detalles del nivel N , con las n:iuestras de 'lf ( t )
en los enteros .
56
En esta seccin , daremos como gua , algunas rntinas que permiten los clculos antes
enumerados para 4 tipos de onditas que veremos , lo haremos en el orden de los puntos
anteriores y comenzaremos con las que utilizaremos para todos los casos :
l. y 2. El clculo de los coeficientes p "ond" q y q "o.nd" lo haremos en cada uno de los
ejemplos .
k )= {p }
w( k
bb7
o.1
kJ
S. El filtro del nivel Ose calcula como nivO = (p bJr' y los coeficientes del nivel o
son:
cO
J = ( q J i2 uu
<I> :
function y=dspl"ond"(N)
i2 * U * ( p F1
= nivO * g
y= submuest(filt(x,vO));
donde:
~
~~~~~~~~~~~~~~. ~~~~~~~~~~~~~~~~~~~--.
( function y = dsp13(N)
~ % para cada nivel N especificado dsp13(N) son las muestras de la spl3 discreta
(-4): l/(2"N): 3;
}""SDl3(t);
l
ir
function y=dpsi"ond"(N)
: <JI> es la ondira para la mul tirrcsolucion spline cubica "ond"
function y =detalle(x)
CJI. y resul!a de filtcar el vector x con el filtro wO y submue.strar
% y quitar los pw1tos agregados por el filtro
load wO;
y= submuest(filt(x,wO));
8. Si se quiere un nivel detenninadQ conviene tener una funcin que lleve a cabo la
recurrencia .
Para los coeficientes :
function y -cc(x, N)
C=x;
n=l;
donde:
function y= dpsi(N)
CJI. para cada nivel N especificado dpsi(N) son las muestras de la psi discreta bsica.
la (-4) : l/(2"N) : 3;
ycPsi(l);
4. Las f61mulas generales de los filtros de anlisis y sfotesis para las enditas spline cbicas
son:
v0 <k
1 = 112 <P b7
r 1 r2 P b7 u ek J
1
whilc n<N+l,
n=n+l;
C=coef(C):
end
y=C;
function y dd(x,N)
y=detalle(cc(x,N l));
58
59
ActlvJdad M4S
a) Obtener los coeficientes cO(k) para la seilal hs ( actividad M36 ) sabiendo que
1
nivO = b1 (ya fue calculado en M3 3.3 ). Hacer el grfico
donde
function y .. aspl(x,i)
% para cada nivel especflcado aspl(x) esta en el S{sp13(.n."ik),k en Z)% con componentes: las de x
t= 2: 1/(2."i): 2;
yy=up(x,i);
h=sp13(t);
ap conv(yy(:, 1:Jength(yy)-2."l),b);
y= ap(l+loor(Jength(b)/2):1engtb(ap) floor(length(h)n));
11.
function y ., apsi(x,i)
.
.
% para cadn nivel especificado apsix(x,i} esta en el S(Psi(.n."i-k}.k en Z}% con compone ntes: las de x
t= (-4) : 1/(2"i): 3;
yl= up{x ,i);
h=Psi(t);
y2 = conv(y l(:. l:leng!h(yl)2.~i),h);
y-y2(:, l +floor(lenglh(b)/2):length(y2)floor(lenglb(h)/2));
En este caso es
O S t Sl/16
1116 s t s 2116
2116 s l s 3116
ActJvidad M46
J i2 que es ~)
, el COITespondiente filtro se llamar B27.
b?(z
t..0:11256:255/256
z0.:(2416+2*(119 I cos(4*pi *l)+ 120*cos(8*pi*t}+cos(l 2*pi*t)))/5040;
:zones(l:256)Jz.0;
zlifft(z.);
z.2rcal(-I);
z27[z.2(129:256) z.2(1: 128)};
B27,.z27(30:228);
2.5
2
2
1.5
si
(b7 )"
function y residual(x,N)
% es el residual de nivel N cuando x es CO de una sella! 8
yy=dd(x,N);
y apsi(yy,N};
sin ( 2n 64 t)
sin ( 2n 256 t)
sin ( 2n 128 t)
1i.........:::.._~
0.2
0.4
''--~~...___;,__~-~-
0.6
0.2
0 ,4
p=So =q
Flg 32 Fill.l'O de nivel O , y filtros de anlisis para la ondita spline bsica.
0 .6
__
LA_ s__
OND
__1_T_AS____________________________
_1N
_
~_R_o_
o_
u_
cc
_1_
o_~_A
~~----------~
61
Actividad M47
a) Obtener los coeficientes para Jos niveles 1,2, y 3 de la seal hs (actividad M36 ).
Obtener la aproximacin y el residual de 195 mismos niveles
b) Lo mismo para la sefial h de la actividad M33 .
c) Lo mismo para la seal g de la actividad anterior.
d) Lo mismo para la seal h de Ja actividad Ml6 que llamaremos es .
20
10
20
20
1o
10
1\f~1r \l~1
o
.10
-10
-20
-20
2CI
'
~.__~~~~~~~~
200
cocnctcnles nlvcl f
100
200
-1
100
200
oprox1msJn 1
300
.fo
fl
-. 1
coonelenlc ntvcl 2
50
100
150 200
coan<:lcnlot ntvel 3
'-o
~
too
20I'
o
1
-2
300
oproxhuncton 2
100
200
reolduol 1
300
;-*
200
.Osldul 2
101)
300
~--~---~----,
20
20
20
10
'
'
10
10
- 10
-20
. 20
-20
o---<
o llllltlilllfllll.
100
200 .
dctes nivel 1
200
100
dctalt 111\1012
Actividad M48
De la misma manera que se hizo para la ondita psinc , generar u~ archivo.ro que. permita
representar grficamente aproximaciones y residuales de dos niveles consecutivos.
Actividad M49
( splcard) :
Aqu se busca una interpolacin delas muesuas de Ja seal en el nivel O , y por lo tanto
debe ser nivO = Oo es decir p = (b3( que ya fue calculado.
Los coeficientes de ondita q(k) = ( [ b3 * 111t * bb7] !2 )"1
Actividad M51
'Calcular los.coeficientes q(k) , y los filtros vO y wO y guardarlos en archivos .m.at, como
qcard.mat vOcard.mat y wOcard.mat . Sus grficos y los de sus respuestas en frecuencia
se muestran a continuacin. Como gua pueden tomarse las sigufontes rutinas :
% COEFIClliNTES DE PESO Q PARA LA ONDITA SPLCARD ( ondlta cardinal )
load B3, load u , load bb7
q0..conv(bb7,uu);
ql~nv(b3,q0);
t:O:l/2.~6:2551256;
ra~al(irft(a));
'l{,
al=ra(l:28);
ql=al(28:-1:2);
qcard={ql al);
% Cnlculo del (litro vO para la splcard (se aplic la frmula genet-al ).
load 03 load u
load D27
V l=up(b3, 1);
v2"'conv(b7,vl);
v3=eonv(B3,B7);
v4:con v(v2, v3);
v5=0.5*conv(,v4);
v0cardin=v5(34:236);
wOcard = 'A {u* 112( uu
o
-1
-2~--~--~--~
100.
200
300
-2~---~--~----'
100
npro>ctmaclori i
~~-----
* b3 * bb7 +u * bb3
% Clculo del flltro wOcard
load B3. load B7. load u !9ad bh3 ,load bb7
cl=conv(uu,b3);
c2=conv(cl,bb7);
63
200
300
resldual 1
- - --
* b7) * B3 * Xi7 81 ) ( k)
-7. - - -....--~~---'
c3>=conv(u,bb3);
100
200
npro~l111adon 2
300
-2~--~--~--~
100
200
300
rosldval 2
c4=conv(c3,b7);
e=05*(c2+c4);
%bbh=b7(4)-2*(b7(5)cos(2"pi*t)-b7(6)*cos(4*pi*t)+b7(7)*cos(6*pi*l));
wl=conv(uu,c);
w2=conv(wl,B3);
w3=0.5*coiiv(w2,B7);
w4=w3(35:237);
Actividad M53
w0card-(w4(1) w4(1:202)];
De la misma manera que se hizo para la ondita psinc , generar un archivo.m que permita
representar graficamente aproximaciones y residuales de dos niveles consecutivos.
Actividad M54
Generar el ai:chivo mullca.rd.m , anlogo a los anteriores multsinc.m y multsplb.m .
1. s~-----~---,
Actividad MSS
1---
0.5
oo
0.4
cordlnoJ
'
( spldu) :
0.6
M52
ii si
<
'l'b (
j = i y k= l
O en otro caso
En este caso:
1
pd11 = <b7 r
Y
vOd11 = ~u,
\/ = u* b7. 827
=( {
qdu
bb7 b7 J .!-2
wOd1t = !h 1111 * bb7 * 1
y
w
uu * 827
b7 r'
.'
En este caso no solo hay ono&onalidad entre los distintos niveles , sino tambin dentro de
los mismos , por ello es que los filtros de anlisis y de sfutesis resultan idnticos , y se
pueden obtener de uno solo :
-~
0.8
0 .6
o.~
v0
p_o
o.~
0.4
02
nlvol O .oncll dunl
0.5
= ( b7 r112
o
o
0.6
O.~
0.2
lll-os de onhJ~a dual
0,2
0.8
06
'-
65
nivO_ o = ( b7)
112
* ( b3 )"1
En (Uns2J se presenta el siguiente cuadro para las respuestas en frecuencia de los filtros
vO, wO, v y w para la ondita spline onogonal :
Flg 37 Filtro de nivel O y filtros de anlisis para la roultirresolucin con la ondita dual
Actividad M56
1
=.];_u(f)
b?(f)
2
b7(2f)
v(f)=2v0(f)
vO (f)
r! "/ wO ( f) = 2u(f+112)
b7(f+l/2)
b?( f)
2
.~~~ri~~ i~---~--...,....--,
'T' :.
b7(2/)
o
Daremos las rutinas de MATLAB que se usaron para calcular estos flros y los grficos
correspondientes .
_,
-1
2'-----~----''---'
100
200
.2L---'--'----~--'
aproxlmacl011 1
100
1uldunl 1
200
% C'lculo de (D17)"1/2.
t..O: 11256:255/256;
.2 L--_
<'----~--~-~
100
200
300
300
Flg 38 Aproximaciones y ~iduales de Jos niveles 1 y 2 para la seilal hs con In multirresolucin generada
con la 011dita dual
z;.:(2416+2(l ! 9I cos{2*pi1}+120*cos(4*pi*t)+cos(6pi*t)))."(-112);
zl=sqr1(5040)*fft(z);
z2real(zl);
p_o....[z2(52:-1 :2) z2(1:52)];
'1o usaremos zz3 para calcular cOort
W<({2416+2*(1191*cos(2*pi*t)+120-cos(4*pi*l)+cos(6*pi*l)))/5040)."( 112);
b?.><(4+2*cos(2*pit))l6;
nz-zz./bz;
tzlifft(az);
uZ..real(izl); % hay que arreglarlo
tz3[zz2(43:-l :2) tz2(1 :43)):
Actividad M58
:,..-:..- -...--- - - 1
20
'
t
.20
100
ap10>11Mclort ondll boslca
30- - - - -- - ---i
- ---:2:::---
.20 L - -........
0
10 0 .
oproll.\ma~\on ondll
200
lOO
ielldoel onclla boslc
20
\00
~ordinal
20
20
-20L - - . - :- -- -:2::00;;-o
-:2:::00
; ;--
30 ---~----1
.20L--__.- - --:2:'oo-;-.:
30 ~------~--1
-zoL- - -1-0-0 -
Para concluir con una aplicacin de lo presentado proponemos procesar una sel'lal de
voz obteniendo coeficientes coeficientes de detalle , aproximaciones y residuales con
alguna de Jas estructuras de multitTesolucin generada por ondit.as spline. El procedimiento
a realizar es el siguiente :
\00
residuo!
ondll dUol
30.-- - - - - - --1
20
20
bOb=cO(b);
abl=aprox(bOb, 1); rbl=residual(hOb, 1)~
ab'boaprox(bOb,2); rb2..residual(b0b,2);
ab3=aprox(h0b,3); rb3=residual(b0b,3);
ab4=aprox(h0b,4); rb4=re.sidual(b0b,4);
subplot(2,2, 1) plot(h) xlabel('seiial "ndice" ') , pause
figure
subplot(2,2,l) , plol(abl) , Jtlabel('apro)(imaclon l? tille('ond. basica? pause
subplot(2,2.2) , plot(rbl) , xlabel('resldual l') pause
subplot(2,2,3) plot(ab2) , xlabel('aproximacion 2') , pause
subplo1(2,2,4) , plot(rb2) xlabcl('residual 2') pause
figure
subplot(2,2,l) . plot(ab3) xlabel('aproximacon 3'), pause
subplot(2,2,2) plot(rb3) , xlabcl('residual 3') , pause
subplot(2,2,3) , plot(ab4) xlabel('nproximacion 4') , pause
subplot(2,2,4) , plot(rb4) , xlabcl('residual 4') , pause
i.
1
l
'!
figure
.10
-20
100
200
oproxhnoCl011 ondlt3 ortogon:il
100
200
1f
.
I'
66
niv0_0"zz3;
% COEF Q_ORT (son guardados como q_o.mat)
load D7
load bl>7
qlconv(bb7,b7) : q2=submuesl(ql) : qconv{b7,q2);
~= 1/1024:1023/1024;
qz=q(7)+2*(q(6)cos(2pi*t)+q(5)"cos(4*pit)+q(4)*cos(6pi*t).+q(3)cos(8*pit)+q(2)*cos(10pi*t)+q(l)cos(l2*pi*t));qz.l,..(qz). "(-112);
q3crcal(irrt(qzl));
.. .
Actividad M57
Generar un archivo .m para la multirresolucin con Ja ondila ortogonal , y analizar con
el las seales hs , h , g y es de actividades anteriores .
i1- :1~
_,
% CLCULO
load u;
(,/
- o-------~-_J
2 --------~--' .2L-----''----~---'
too
200
200
7
l~:tn.56:2551256;
;-
o
-1
._____
100
ruldunl t
200
(00
200
1ptoxhu~cJon
-1
aprox1o11cJon 2
v0..(112)* conv(u,z5);
vO_o=v0(8:194);
100
fllHoJtlmticlon f
z0=(2416+2*(1l9! cos(4*piI)+120*oos(8*pi*t)+cos{l2*pi*t)));
z=ones(l :256)./zO;
z.1(2416+2*(1191 *cos(2*pi*t)+120*cos(4*pl*t)+cos(6*pi*t)));
z2(zJ. *z). "(112);
z3,.ifll(z2);
z4"'real(z3);
z,5o:(z4(99:-1:2) z4(1:99)J;
100
'
2
200
rcclduAI 2
'
rcth:fu"l 3
200
t;=ones(1:256)l:tO:
zl =(2416-2*(119 l *cos(2*pi*t)-120*oos(4pi*t)+cos(6*pi*t)));
z,2..(zl.*7.)."(112);
z3iffl(z2) ; z4real(z,3);
z5s(7A(99:-1:2) z4(1:99)];
w01=(1/2J* conv{uu,z5); w02-w01(8:194); w0_0=[w02(1) w02(1:186)); %traslaclon en l
% el que sigue es w_o
Flg 40 Aproximaciones y residuales de 1a selial h para los niveles 1 , 2 y, 3 con la ondita spline
ortogonal
w1=2'w02;
w o=[wl(2:187) wl(l)];
0 .9
0 .8
0.6
0.7
0.6,L.--~--~----'
0.2
o.~
o.&
0
02
o.~
o.6
0
rutrot dt anolll1 .011dllo 01logom1l7,
20'---~'------~
100
200
300
71
A continuacin mos1Iarnos los grficos de esta seal, de 1sus coeficientes y detalles para
los dos p1imeros niveles , de las aproximaciones y residuales para los niveles l a 4, as como
la reconstruccin que se obtiene a partir de la aproximacin del nivel 4.
2000
4000
6000
aprox. nivel 1
1000
2000
3000
sooo
4000
&000
7000
8000
2000
4 000
6000
resld. nivel 1
8000
8000
seftal 'lndlct"
2000
4000
6000
8000
2000 . 4000
6000
resld. nlvel 2
aprox. nlvI 2
1000
2000
3000
4000
6000
7000
1 000
recorulruedn
160
20
-20
50'---~--~~~~---'
1000
2000
3000
coeftcente nivel 1
4000
1000
2000
3000
6000
8000
2000
4000
6000
8000
resld. nivel 3
detale nlvtl 1
110
501'---~--~--~---'
500
1000
1500
coencftnte nlvel 2
4000
epro,r. nivel 3
4000
-+
o
2000
~o'--~--~-~---'
2000
-201'--_._--~-~-~
500
1000
1500
detaae nlyel 2
2000
Fig 42 La pah1bra Indice que fue digitalizada con una placa de sonido Sound Blaster de 8 bits a una
frecuencia de muestreo de 11025 Hz. El primer grfico muestra la seal en el tiempo ( 7770
muestras) mientras que el segundo la apro:dmacin del uivel 4. Los grficos restantes muestran
los coeficientes ' e y los coeficientes de detalle ele los niveles l y 2.
''o:--20~00--.-0~0-o--&~oo-o--a-.Jooo
apro(. ntvel 4
2000
000
6000
resld. nlvtl ~
PENDICE 1
Al'D!DICE
1 I ntroduccin
ia stal puede defmi..rse como una funcin que porta informacin acerca del estado o
nportamiento de un sistema.Matemticamente las seales se representan como
iciones de una o ms variables.La variable independiente de dicha representacin puede
continua o discreta. Las seffales de tiempo coT1tin110 estn definidas sobre un continuo
tiempo mientras que las seflales de tiempo discreto estn definidas sobre un conjunto
::reto y por consiguiente sern representadas mediante sucesiones. Los valores que
te la seal en cada instante tambin puede ser en un continuo o un discreto. Las
ales digitales son aquellas en lis cuales tanto el tiempo como s.u amplitud son
:retas ; las sef'lales de tiempo y amplitud continua son denonilnadas seales
16gicas.
:,as seales se procesan para poder extraer la informacin deseadiMuchas de las
ticas de procesamiento de seales consisten en la transformacin de la seal original en
..Por ejemplo , pueden disef!arse procedimientos para separar dos o ms seales que
nn combinadas de alguna manera .
os sistemas de procesamiento de seales son clasificados de la misma mci:rtera que -las
tles. As hay sistemas de tiempo continuo ( sistemas donde entrada y salida son
les de tiempo continuo ) y sistemas de tiempo discreto ( sistemas donde entrada y
la son seales de tiempo discreto ) . En forma similar los sistemas analgicos son
mas de entrada y salida analgicas , mientras que los sistemas digitales son aquellos
is entrada y salida son seales digi~es.
r''
Usando esta llima definicin no es dillcil ver que cualquier seal de tiempo discreto
puede ser representada de la siguiente manera :
x(n)= Lx(k)S(n._k)
!.
Los sistemas lineal~ son aq~ellos para los que vale el principio de superposicin , esto es
. !l operador T es lineal. S1 yl(n)
y
y2(n) son las respuestas del sistema cuando
las entradas a l son xl(n) y x2(n) entonces el sistema es lineal si y solo si
a(n)= { 1
11
y(n)=
J'Lhz
Lx( k)O(n-k )]
y usando Ja linealidad
y(n)= Lx(k)T[O(n -k )]
as operaciones pueden realizarse con las seales de tiempo discreto.. As por ejemplo
y) {n)= x(n) + y(n)
x)(n) =a x(n)
suma
= Lxk)hdn)
(3)
kZ
de donde se concluye que la respuesta del sistema puede ser expres~da en funci0n de Ja
respuesta a la entrada
(n-k).
Si adems se cumple que el sistema es invariante en el tiempo se obtiene una simplificacin
de mucho inters. Los sistemas invatiantes en el tiempo son aquel.los que estn
caracterizados por la siguiente propiedad : si y(n) es la respuesta a Ja enuada x(n ) ,
entonces la respuesta a la entrada x (n-k) es y (n-k) .
Esta propiedad de invariancia por una traslacin o desplazamiento implica que s h(n) es
la respuesta a la entrada
(n) entonces la respuesta a O(n-k) ser h(n-k).Entonces
Ja [3) resulta en
1 n ;;i:o
u{n)= .{ o n <o
=o
[2)
hZ
O n ;ieO
= T [ x(n))
(1)
te Z
producto
l1
l~ITROIJUCCION
APENDICE 1
A LAS OND!TAS
y(n)= ,x(k)h(n-k)
(4)
kcZ
APV.'DIC~ 1
Jn sistema estable es aquel para el cual se cumple que si la entrada es acotada entonces la
espuesta es acotada. Los sistemas lineales i.m'.ariantcs son estables si y solo s
f b, x(n-r)
r-C
entonces el sistema cuya relacin entrada - salida sea sta se denomina sistema lineal
invariante en tiempo de respuesta finita al impulso. Puede verse que se trata de un .
producto de convolucin entre x(f!) y una respuesta al impulso dada por:
. ''!
~J={~
n = 0,1, .. ., M
para otros n
\n muchas aplicaciones interesan los sistemas lineales invariantes para Jos cuales Ja
litrada y fa salida satisfacen una ecuacin en diferencias lineal , de orden N y con
oeficientes constantes de la forma :
r;O
[5]
y( n) = Lh( k
)eJw<-41
oiendo
1.7 La transformada Z
H ( w) = !,Ji( k)e-Pw
[7]
1-
.ta entonces
y(n)= H(w)ei-
X ( z)=
f,~n)z-
[11)
que H (w) es una funcin peridica de w, puede ser representada por una se~e
ier. De hecho, la expresin (7) expresa a H (w) en la fonna de un~ sene de Founer
. que los coeficientes de Fourier corresponden a la respuesta h(n) cuando la entrada
1 secuencia delta . Con tal observacin queda determinado que h (n) puede ser
iada a partir deH (w) mediante la expresin usada para obtener los coeficientes de
ier de una funcin peridica,
J
1
Jl(n)=-
1" ..
le
(8]
H(w)= Lh(n)e-Jwa
[9]
X(w)= L.x<n)e-...
X(z)= f,x(n)z -
(12)
"""
Evidentemente, si x(n) = O para n < O o sea que la secuencia es causal , entonces las
transformadas Z biltera y uniltera, son equivalentes, pero no en otros casos.
Tomando z = e r tiene una interpretacin en tnninos de la transfonnada de F0 wier
como se definiera en la seccin anterior.En efecto
J H(w)e . dw
21t -
[10)
X(z~<=.>'" =
,x(n )e-1"
La transformada Z no converge para todas las secuencias o para todos los valores de z.
Para cualquier secuencia dada, el conjunto de valores de z para los cuales converge la
transformada z, se denomina regi6n de convergencia. Una serie como (12) es una serie
de Laurent. De ese modo, un buen nt1mero de teoremas relacionados con la teora de las
funciones de variable compleja pueden ser empleadas en el estudio de la transformada Z.
Una serie de Laurent, y por consiguiente la transformada Z, representa una funcin
analtica en cualquier punto dentro de la regin de convergencia, y en consecuencia la
transfonnada Z y todas sus derivadas son funciones analticas de z dentro de la regin de
convergencia.
Una clase importante de transfo1madas z son aquellas para las cuales X(z) es una funcin
racional, esto es , un cociente de polinomios en z.. Las races del polinvmio numerador
son aquellos valoIB$ de .z para los cuales X(z) O y se hace referencia a stos corno los
ceros de X(z). Los valores de z para los cuales se anula el polinomio denominador se
Ar!NDICE 1
x(n)
x(n
+ m)
x(n) a"
X(z)
m entero
X(z) z'"
a complejo
)(Ja' z)
El ejemplo :
A una seal de tiempo discreto x(11) = sen( 2 n 5 0.001 11) + 0.2 se11( 2 n 20 0.001 n) con 11
variando entre O y 999 se le ha adicionado ruido de amplitud 0.4 con distribucin uniforme
(mediante una funcin random ). Esta seal consiste en una suma de una senoidal de frecuencia
5 Hz y otra de 20 Hz muestreadas a una frecuencia de 1000 Hz ( intervalo entre muestras 0.001
seg ).En la figura (a) se muestra un gr.fico de la seal. Se considera un filtro FIR caracterizado
por su respuesta al impulso unitario (figura (b)) h(n) = 1.05 ~ con n variando entre Oy 20 . Se
filtra la seal considerada con ese filtro realizando el producto de convolucin entre x(n) y h(n)
i:omo se muestra en la figura (c).
En la figura (d) se muestran el espectro de Ja seal ( observnse los picos en las frecuencias 5
Hz y 20 Hz ) y la respuesta en frecuencia del filtro ( en linea de puntos) . Recurdese que en las
frecuencias el espectro de la seal filtrada es el producto del espectro de la seal de entrada y la
. respuesta en frecuencia del filtro. Puede observarse que las componentes de alta frecuencia
(correspondientes al ruido) son atenuadas (se trata de un filtro pasabajos ).
+ Y(z)
dX(z)
x{-n)
X(l/z)
*y(n)
~~emplo
-z-;;-
n x(n)
x(n)
1.9 Un
Transformada Z
+ y(n)
X(z) Y(z)
~Fu ncin de
transferencia
Y(z)
0.8
=X(z) H(z)
APENDICE 1
0.6
O.<I
-1
0.2
-2
'1
l'
0,5
() tiempo
(ll)
20
30
100
150
10
.g 10
~
:I!
10
20
o
o
o
-10
~PvV\
-20
0.5
(e)
~empo
2
10
l10
..
to
10
50
( d)
free en Hz
'ENDICE 2
OREMA :
n T, Q > O constantes tales que T n ~ 1t y x.(t) .una'seal de tiempo contino
l lransfonnada de Fourier X.(0) tiene soporte en [-Ol , Ool2 ] ( x.(t) es una seal
anda limitada al intervalo [-Ol, Oq2 ] ). Entonces
>
f"'r X
1 ,L.
~
21t ,.,._
x(n)=-
APENDICE l
-7t/T
21tr
T
(Q+-)<!JCU.Te' 2""'d0.
1t /
T) mediante
(6)
e''- = 1 con,.
y n enteros , resulta
1
x(n)=-
t-
21t
J"'r [ .L,
~ X.(O.+-T
2nr )] e cu.rdQ
1
-KIT
[7]
,..,_
le sinc(x) sen(x) / x.
onvergencia es uniforme en R y en L2( R) .
Con la sustitucin n
IOSTRACION:
(2)
a sucesin { x(n) } con valores x(n) x,.(nT), obtenida por muestreo uniforme
e Tes el perodo de muestreo. Su recproca es la frecuencia de muestrr;o. De
rdo con [1)
. 21t -
(3)
J"
1 X(ro)efai>ndw
x(n)=-
21t ...,.
[4]
establecer una relacin entre (3) y [4] es conveniente expresar [3] como una suma
tegrales sobre intervalos de longitd 2rt / T , en la forma
j
x(n)=- .LJ
2Jt ,__
1 .L.i
~ X.
X(w)=-
=w/ T
T ,._
jO,.T JI"'\
W. .1.
X(.0)=
~ X.( n )
-1t/T
sn
rt!T
<
7t I
T. Entonces :
[9]
2Tt
[5)
(8]
x.(t)=f(2r+l)iclT
(ro-T +2rtr)
T
- a/T
(10)
APE:NDICE l
21t
-11./T
(11)
,
WAVELErS
[BeFra]
[Chui)
ntonces
X (O.)= I,x.,(kT)e-10n
.t-
[12)
[D' Att)
[Gopi]
[Malll)
[Mall2)
[Oppe)
[Unsl]
(Uns2]
Unser ,M ; Aldroubi , A : Polynomial Splines and Wavelets A S ignal Processing Perspective , en Wavelets - A tutora[ in Theory and
Applications C. S. Chui (ed.), 91 - 122, Academic Press, 1992
x (t ) =Ta
21t
(13]
.t- "
.x.(t)= L x.(kT)sinc{(n/T)(t-kT)]
t--
[14)
npo continuo
I,c
.t--
REFERENCIAS :
.x(t)=-
x,,(t)=
UFER.ENCIAS
4>.(t)
~.
[ 15)
( )- sen{(1t/TXt._kT)]
1
(n!TXt-kTJ
[16).
Hay muchas clases de familias de funciones 4iit) que pueden ser usadas para
resentar seales de tiempo continuo en la fonna de la expresin [15). La eleccin de la
Uia de funciones '.{t) determina expresiones de clculo diferentes para la seal de
1po discreto c1 que representa a la seal de tiempo continuo xa(t) . La seleccin de la
lia (16) deteJmina que los coeficientes c1 sean las muestras de Ja seal de tiempo
tinuo x.(t) .
"'[Marc)
[MathWl]
Marcus , Marvin ; Matrices & Matlah : a turorial , Prentice Hall , The Matlab
Curriculum Series , 1993.
The Mathworks Inc. , The Sti1dent version of Matlab
Currculum Series , Prentice Hall , 1992
The Matlab
~rR~O~OU;..;;..;C~O~O~N~A;;...;;LAS;;.;;._ON;;.;,;;D~rr""""AS;:;_____________________________________;RE:.;;;;.;F~EAEN
~=.;~
ClAS
;;;.;;;_____
rrji
..
i1
lathW2]
!athW3]
The Mathworks Inc. , Signal Processing toolbox for use with Matlab
Guide , Prentice Hall , 1993
User, .
',f
'~
. . ,,
d,.
d. ,.
l pfN8f!fft tirad
prim.r flcl6n
obf
trmin de /mprlmir .,, I mH de Ju/10 d 11195.
los lall&res gratlcos de Nuv Librerfa S.~.L..
si~ .,, SaJcarc 873 (1064} 8$. As. Arenana
II