Anda di halaman 1dari 40

TRATAMIENTO DE

SEÑALES DIGITALES
Señales digitales

Vamos a estudiar sistemas lineales que trabajan con


señales temporales. Hasta ahora hemos trabajado con datos
multidimensionales pero estáticos, que nunca dependían del
tiempo, como la clasificación de patrones.
El tiempo establece un orden en la entrada de datos, i.e.
los datos están indexados por una variable continua t. Los
llamaremos señales temporales o series temporales. Esto da
lugar a una estructura en el espacio de entrada que debe ser
organizada mediante topologías adecuadas.
Señales digitales
La mayor parte de lo que percibimos del mundo son
fenómenos que existen en el tiempo. Los mensajes están
asociados a variables físicas (la presión en el oído, ondas
luminosas en la vista, etc.) que pueden ser interpretadas
como funciones reales de variable real D = x(t). El tiempo es
continuo y las funciones son continuas. A estas señales se las
llama señales analógicas.
Normalmente imponemos restricciones para simplificar el
desarrollo, que no afecten a las conclusiones. Supondremos
que las funciones son suaves (derivables) y tienen una
cantidad finita de energía:

x 2 (t )dt < ∞
−∞
Señales digitales
Los ordenadores no pueden trabajar directamente con
señales analógicas (continuas). Es necesario transformarlas
en discretas mediante un proceso que consiste en tomar los
valores de la función en diferentes valores del tiempo:
x( n0 ) = x(t ) |t = n0

físicamente esto se implementa en un convertidor


analógico a digital (A/D)

A/D
Señales digitales

A/D

Así transformamos una función real en una sucesión de


números reales:
{x(nT)} = x(T), x(2T), ... x(NT)
y la variable se transforma en un número entero de modo
que se puede almacenar en un número finito de bits.
El problema consiste ahora en decidir cual debe ser el
intervalo T que se elige de modo que no se pierdan las
características esenciales de la señal
Señales digitales

El teorema de Nyquist dice que x(t) puede ser recuperada


con precisión y los datos x(nT) contienen toda la información
necesaria para reconstruir la señal analógica si el inverso del
intervalo, es decir la frecuencia elegida cumple

1
f s = > 2 f max
Ts
donde fmax es la frecuencia máxima de la señal.
Procesamiento digital

Se puede considerar una señal digital


{x(nT)} = x(T), x(2T), ... x(NT)
o simplificando la notación
x = [ x(n), x(n-1), ... x(n-N+1) ]t
como un vector de longitud N
Procesamiento digital
Suponiendo una base ortonormal φ0, .. φN-1se puede
escribir en términos de las proyecciones:
N −1 N −1
x= x(i )φ i = x(i )δ(n − i )
i =0 i =0

ì1 si n = 0
δ( n) = í
0 si n ≠ 0
Lo que quiere decir que para representar una señal
discreta de longitud N necesitamos el valor actual y los N-1
anteriores. Un delay (operador que retrasa la señal en un
tiempo sin modificarla) es la topología natural para
implementar esta descomposición.
Procesamiento digital

x(n) x(n-1)
z-1

z es el operador delay en el campo complejo, dado por


z = esT donde s=σ + i w y T es el periodo.
Procesamiento digital
En cada momento el vector señal cambia su posición en el
espacio creando una trayectoria que se denomina trayectoria
de la señal
Procesamiento digital

La diferencia con los problemas estáticos es que al añadir


un nuevo dato x(n+1) el vector x que se genera tiene todas
las componentes del anterior salvo la x(n-N+1) que
desaparece para dejar sitio al nuevo dato. Todos los valores
intermedios siguen almacenados pero en diferente posición.
El vector así generado no es demasiado diferente del anterior
y produce una trayectoria en espiral, mientras que en los
problemas estáticos no hay ninguna relación entre un patrón
y otro.
Procesamiento digital

Si queremos analizar una señal discreta y periódica con


1.000.000 de datos, necesitaríamos un espacio de dimensión
1.000.000, completamente intratable. Si lo consideramos
como una señal temporal, podemos limitar la posición de la
trayectoria de la señal a un espacio de dimensión mucho
menor (bastaría la longitud del periodo) y analizar la señal
original como una trayectoria en dicho espacio.
Procesamiento digital
Una de los objetivos del procesamiento digital es
encontrar la dimensión del espacio de reconstrucción que
cuantifica apropiadamente las características de la señal. El
tamaño del este espacio determina la longitud N de una
ventana de tiempo que se desliza sobre toda la serie. Tamaño
que corresponde a la dimensión del espacio de
reconstrucción.
Procesamiento digital
La elección de la dimensión no es trivial, ya que depende
entre otras cosas de los objetivos del proceso. Si
reconstruimos la trayectoria del ejemplo anterior en un
espacio bidimensional, aparecerá una trayectoria diferente, lo
que puede complicar el procesamiento de la señal
Filtros
Un sistema lineal FIR (finite impulse response) es un
sistema cuya respuesta es finita y se calcula como
combinación lineal de los valores anteriores de la entrada.
N
y ( n) = wi x(n − i )
i =0
Donde los wi son los pesos o coeficientes del filtro, o, en
notación vectorial: y (n) = wT x(n) = xT (n) w
Filtros

Así un sistema lineal crea una proyección de la entrada


sobre un vector w definido por los parámetros del sistema y
está contenido en el hiperplano generado por los últimos
datos de la señal.
Filtros

Dependiendo de la posición relativa del vector de pesos y


de la trayectoria de la señal, esta proyección puede que
preserve la mayor parte de la información de la señal o, por
el contrario, que la distorsione seriamente.
El trabajo del diseñador consiste en elegir la dirección de
la proyección de modo que se conserve la información
esencial de la señal.
Análisis en el tiempo de sistemas lineales
Una manera de describir un sistema lineal es por medio de
la respuesta a un impulso h(n), la respuesta en tiempo 0
cuando la entrada es δ(n).
La respuesta transitoria (transient response) es el tiempo
que tarda el sistema en estabilizarse ante una entrada
constante.
La respuesta a un impulso describe completamente un
sistema lineal, para el filtro estudiado sería:
N
y ( n) = wi δ(n − i )
i =0

es decir, una función de tiempo con valores iguales a los


pesos h(i)=wi por lo que será finita (máximo N+1 valores)
Análisis en el tiempo de sistemas lineales
La respuesta a un sistema lineal frente a una entrada
arbitraria se puede calcular por la convolución de la entrada
con la respuesta a un impulso del sistema h(n):

y ( n ) = x ( n) * h ( n ) = x(n − i )h(i )
i = −∞

Si el filtro se inicializa a 0,
para n=0, y(0)=w0x(0),
para n=1, y(1)=w0x(1)+w1x(0),
para n=2, y(1)=w0x(2)+w1x(1)+w2x(0)
N
para n=N, y ( N ) = wi x( N − i )
i =0
y para un segmento de señal de longitud M tiene M+N-1
sumandos
Análisis en el tiempo de sistemas lineales

Una aplicación importante de esta técnica es la llamada


detección, búsqueda de una señal oculta por un ruido.
Se crea un filtro cuyos pesos son los datos, conocidas a
priori, de la señal. Este filtro maximiza la salida de la señal
sobre el ruido circundante.
De esta manera, observando los picos de la salida se
puede detectar dónde se encuentra la respuesta transitoria de
la señal a pesar del ruido.
Este tipo de filtros se usan frecuentemente en comunica-
ciones como receptores óptimos.
Análisis en el tiempo de sistemas lineales
Hasta ahora hemos estudiado filtros de respuesta finita al
impulso (FIR), otro tipo, los de respuesta infinita (IIR),
contiene a los sistemas recurrentes, como por ejemplo el
sistema:

y (n) = (1 − µ ) y (n − 1) + x(n)
Análisis en el tiempo de sistemas lineales

La respuesta de este sistema al impulso δ(n) es:

h(0) = 0 + 1
h(1) = (1 − µ ) + 0
h(2) = (1 − µ ) 2 + 0
h(n) = (1 − µ ) n + 0

que es infinita.
Análisis en el tiempo de sistemas lineales
Si 0 < µ < 1 h(n) tiende a 0 con una velocidad que
dependerá del coeficiente de retroalimentación µ. Se puede
considerar 0 después de un tiempo finito n0. El sistema será
afectado por cualquier entrada que le sea aplicada.
Para µ < 0 o µ > 2 la respuesta diverge para condiciones
iniciales 0. La respuesta al impulso nunca desaparece y
prácticamente no es afectado por las entradas.
Análisis en el tiempo de sistemas lineales
El sistema se considerará estable si a una entrada finita,
corresponde una respuesta finita, eso significa que la suma
de los valores de respuesta al impulso debe ser finita.
En sistemas recurrentes, en los que la relación viene dada
por los parámetros de retroalimentación, la estabilidad se
garantiza por la condición |1 - µ| < 1
Análisis en el tiempo de sistemas lineales
Este sistema es un buen método para describir sistemas
lineales, pero no es muy práctico porque:
•La salida del sistema no puede ser calculada por
evaluaciones sucesivas (ya que requiere la convolución
entre la entrada y la respuesta al impulso)
•El cálculo de la respuesta requiere un número de
multiplicaciones del orden de O(N2)
•No es muy adecuada para calcular el efecto de los
sistemas lineales como filtros, que es el objetivo del
tratamiento de señales lineales.
Debemos buscar métodos que puedan ser usados para
describir sistemas y calcular su respuesta en evaluaciones
sucesivas con un menor coste.
Análisis en la frecuencia de sistemas lineales
Esta técnica está basada en el análisis de Fourier. Consiste
en descomponer la señal en energía por frecuencia y se
denomina análisis espectral.
Se descompone la señal en forma compleja:
anT + i∆ωnT
e snT
=e
donde s es una variable compleja, n es un entero, a y ∆ω
son reales y T es el periodo. ω es la resolución de la
frecuencia, es inversa del tiempo y se considera como el
incremento de frecuencia más pequeño que puede ser
representado en NT segundos (∆ω = 2π/NT) También se
puede considerar como la frecuencia menor que puede ser
medida en una ventana de NT segundos.
Análisis en la frecuencia de sistemas lineales
La señal {x(n)}se proyecta en la base ortonormal formada
k
i 2π
i∆ωkT
por los vectores X ( k ) = e =e N
. Cada uno de
ellos describe una elipse en el espacio de señales. A esto se
le llama análisis armónico o de Fourier.
X(k) es el k-esimo coeficiente de Fourier y el conjunto se
denomina Serie de Fourier Discreta (DFS) de x(n) o espectro
de x(n).
Análisis en la frecuencia de sistemas lineales
Los X(k) son periódicos respecto a N y se pueden
descomponer en magnitud, simétrica respecto a N/2 y fase,
antisimétrica respecto a N/2.
Es fácil calcularlos mediante un algoritmo del orden
O(NlogN) llamado fast Fourier transform (FFT)
Análisis en la frecuencia de sistemas lineales
Además como la longitud de un vector es independiente
de las bases si éstas son ortonormales, no se pierde
información.
La transformada Z
y la función de transferencia
Hemos usado el análisis espectral aplicado a señales, ¿se
puede aplicar el mismo principio a sistemas?.
Un sistema se describe por su respuesta al impulso, que
puede ser considerado como una señal, pero este camino no
es eficiente ya que requiere un conocimiento a priori de la
respuesta al impulso.
La salida de un sistema se puede calcular:
•Mediante la convolución de la respuesta al impulso con
la entrada
•Generando las salidas mediante la ecuación de
diferencias
La transformada Z
y la función de transferencia
La ecuación de diferencias da un algoritmo para calcular
la salida del sistema, pero no predice lo que va a suceder a
las características de la señal que entra, ya que el sistema y la
entrada están mezcladas en la misma ecuación. Sería
conveniente separar la función del sistema de la entrada.

La transformada Z X ( z ) = x(n) z − n convierte ecua-
n = −∞
ciones en diferencias en ecuaciones algebraicas, por ejemplo
en el operador delay:

D( z ) = δ(n − 1) z − n = z −1
n = −∞
La transformada Z
y la función de transferencia
Si aplicamos la transformada Z al combinador lineal:
∞ n N
æ ∞ −n ö
Y ( z) = wi x(n − i ) z − n = wi ç x(n − i ) z
n = −∞ i = 0 i =0 è n = −∞
N
æ ∞ ö N
wi ç x(n) z − n −i = X ( z ) wi z −1 = X ( z ) H ( z )
i =0 è n = −∞ i =0

Donde Y(z) y X(z) son las transformadas Z de la salida y


la entrada respectivamente. H(z) es la denominada función
de transferencia que describe el comportamiento del sistema
lineal. La salida se obtiene así multiplicando la transformada
de la entrada y la función de transferencia.
La respuesta de frecuencia
Podemos también construir la respuesta de cualquier
sistema lineal S mediante el cálculo de la respuesta del
sistema a cada uno de los vectores de la base ortonormal:
N N N
y (n) = S ( x(n)) = S α k e iω k n = α k H ( e iω k n ) = α k λ k e iω k n
k =0 k =0 k =0

Lo que significa que cualquier sistema lineal afecta a la


fase y a la amplitud de cada frecuancia de la señal de entrada
y que el efecto puede ser calculado independientemente en
cada frecuencia.
Las cantidades λ k = H (e iω k n ) representan el efecto del
sistema lineal en cada frecuencia y se denominan respuesta
de frecuencia.
La respuesta de frecuencia

Y ( e iω k n ) = H ( e iω k n ) X ( e iω k n )
Esta relación es muy importante ya que nos permite
predecir lo que va a suceder con la señal de entrada al
atravesar el sistema lineal y por tanto especificar a través del
diseño la respuesta del sistema para conseguir los objetivos
de proceso que busquemos.
La gran ventaja de la respuesta de frecuencia es que la
inversa puede ser calculada mediante el algoritmo FFT
mientras que con la función de transferencia se requiere el
cálculo de la transformada Z, mucho más difícil.
Respuesta de frecuencia, polos y ceros
Un aspecto que los ingenieros suelen usar es la predicción
de la respuesta de frecuencia mediante los polos y los ceros
de la función de transferencia. Estos se pueden calcular
fácilmente a partir de la ecuación en diferencias:
y (n) − (1 − µ ) y (n − 1) = x(n)
−1
Y ( z ) = [1 − (1 − µ ) z ] = X (n)
1 z
. H ( z) = −1
=
1 − (1 − µ ) z z − (1 − µ )
Que indica que la función de transferencia tiene un cero
en z = 0 y un polo en z = 1 - µ
Respuesta de frecuencia, polos y ceros
La forma de la respuesta de frecuencia λ k = H (e iω k n ) de-
pende exclusivamente de la situación de los polos y los ceros
de la función de transferencia
La respuesta de frecuencia puede ser obtenida
gráficamente considerando la respuesta del sistema como
una tienda de campaña colocada alrededor del círculo
unidad. Un polo es uno de los soportes de la tienda y un cero
una de las clavijas. La altura del soporte es la inversa de la
distancia del polo al círculo unidad y la longitud de la clavija
proporcional a la distancia del cero.
Un valor alto en una frecuencia dada significará que esa
frecuencia quedará amplificada, mientras que uno bajo que
será atenuada.
Respuesta de frecuencia, polos y ceros

Cuanto mas cerca estén las singularidades (polos o ceros)


del círculo unidad, mayores serán sus efectos (picos
escarpados y valles estrechos respectivamente).
La relación entre las singularidades y sus efectos en la
frecuencia de respuesta es muy importante, porque conocida
la situación de ceros y unos se pueden predecir los efectos
que producirán sobre la señal de entrada
Tipos de filtros lineales
Podemos diseñar la función de transferencia para que
efectúe la operación deseada. Por ejemplo si la señal está
contaminada por ruido de alta frecuencia se puede diseñar un
sistema que multiplique las frecuencias bajas por números
cercanos a1 y las altas por cercanos a 0 (lowpass filter)
ì1 k < k0
H (k ) = í
0 k > k0
Tipos de filtros lineales
Otros tipos de filtros son: highpass, para atenuar ruidos de
baja frecuencia, bandpass, que sólo permite el paso de una
banda de frecuencias o stopband, que corta una banda.
Tipos de filtros lineales
Se pueden diseñar filtros mediante optimización, i.e.
dando la respuesta deseada y dejando que sea el combinador
lineal el que elija el mejor conjunto de pesos para cumplir las
condiciones pedidas.
En cualquier caso, los filtros lineales sólo trabajan bien si
el ruido no se superpone a la señal, en otro caso, al atenuar el
ruido, atenuaremos también la señal.
Aquí es donde son necesarios otros filtros no lineales y
más sofisticados.