0% encontró este documento útil (0 votos)
134 vistas3 páginas

Muestreo y Cuantificación de Señales

Este documento presenta un laboratorio sobre muestreo y cuantificación digital de señales. Introduce conceptos como frecuencia de muestreo, frecuencia de Nyquist y aliasing. Explica cómo remuestrear y recuantizar señales de audio y calcular el error de cuantificación. El laboratorio guía al estudiante a través de ejercicios prácticos como manipular la frecuencia de muestreo de señales, observar los efectos de aliasing, y comparar señales originales con versiones remuestreadas y recuantizadas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
134 vistas3 páginas

Muestreo y Cuantificación de Señales

Este documento presenta un laboratorio sobre muestreo y cuantificación digital de señales. Introduce conceptos como frecuencia de muestreo, frecuencia de Nyquist y aliasing. Explica cómo remuestrear y recuantizar señales de audio y calcular el error de cuantificación. El laboratorio guía al estudiante a través de ejercicios prácticos como manipular la frecuencia de muestreo de señales, observar los efectos de aliasing, y comparar señales originales con versiones remuestreadas y recuantizadas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Laboratorio 1

Procesamiento Digital de Señales


Muestreo y cuantificación digital
Nicanor Garcı́a, Jhony Giraldo, Juan Camilo Vásquez, Tomás Arias, Luis David Goyes
Febrero 2018-1

NOTAS:
Enviar el informe del laboratorio con el siguiente nombre: Lab1 PDS Apellido [Link]

Enviar junto con el informe los archivos adicionales generados y descargados. Todo esto debe ir en un archivo
comprimido con el siguiente nombre: Lab1 PDS Apellido [Link]
OJO! Recuerde tener cuidado con la indentación y caractéres como el sub-guı́on y las llaves cuando copie y
pegue el código entregado en esta guı́a.

1. Introducción
En este laboratorio se pretende afianzar los conceptos relacionados con muestreo y cuantificación de señales. Para
ello se usarán señales de audio que se van a re-muestrear y re-cuantizar.

2. Muestreo
2.1. Frecuencia de muestreo
1. Cargue, grafique, y escuche la señal de audio que acompaña esta guia. Utilice la señal “voz [Link] ” donde x es
“par” o “impar” de acuerdo al último dı́gito de su documento de identidad. ¿Qué dice el mensaje?
2. Responda las siguientes preguntas:

a) ¿Cuál es su número de muestras?


b) ¿Cuál es su frecuencia de muestreo (Fs)?
c) ¿Cuál es su longitud en tiempo (s)?
d ) ¿Cuántos bits de resolución digital tiene?

3. Genere un nuevo archivo de audio con la misma señal pero al doble de la frecuencia de muestreo original.
Escuche el audio, ¿qué diferencia nota? Tip: Para generar el archivo utilice las siguientes lı́neas:

from scipy . io . wavfile import write


write ( ' nuevarutadearcivo . wav ' , nueva_fs , senal )

4. Realice el mismo procedimiento, pero esta vez con una frecuencia la mitad y a un cuarto de la original. ¿Ahora
qué pasa con el audio?
5. Sub-muestree la señal a un cuarto de la frecuencia de muestreo original y escuche la nueva señal sub-muestreada
a la frecuencia de muestreo apropiada. Compare con la señal con frecuencia de muestreo a un cuarto sin
remuestrear.
Tip: use las siguientes instrucciones para el sub-muestreo:

1
from scipy . signal import resample
import numpy as np
senal2 = resample ( senal , len ( senal ) /4)
senal2 = senal2 / float ( np . max ( np . abs ( senal2 ) ) )

Más información: [Link]

2.2. Frecuencia de Nyquist y Aliasing


1. Dada una frecuencia de muestreo fs = 10 Hz, ¿cuál es la frecuencia de Nyquist?
2. Genere una señal sinusoidal muestreada a fs = 10 Hz y con frecuencia igual a la frecuencia de Nyquist.
Grafique esta señal. ¿Qué se puede observar?
3. Ahora, genere y grafique una señal cosenoidal con las mismas condiciones. ¿Qué se puede observar? ¿Qué
puede concluir?
4. Genere dos señales sinusoidales con frecuencias f1 = 1 Hz y f2 = 11 Hz, respectivamente, y muestreadas a
fs = 10 Hz. Grafique las señales ¿Qué observa? ¿Por qué se observan ası́ las señales?
5. Pruebe de nuevo con fs = 10 pero con f2 = 9 y luego con f2 = 12. ¿Qué observa? ¿Qué frecuencia tiene las
señales graficadas? (Cuente el número de periodos graficados).
6. ¿A qué se deben los efectos observados?
7. De acuerdo a la frecuencias dadas en los anteriores numerales, ¿Cual frecuencia se deberı́a utilizar para mues-
trear correctamente? Cambie la frecuencia de muestreo a esta frecuencia y verifique que ahora se muestrean
correctamente.

8. Las señales capturadas en el mundo real tienen componentes que pueden exceder la frecuencia de Nyquist,
¿cómo se puede evitar el efecto de aliasing en este caso?

3. Cuantificación
Utilice la siguiente función para re-cuantificar señales (recuerde normalizar la señal antes de pasarla por esta
función):

def fxquant (s , bit ) :


# s : senal de entrada , debe estar normalizada entre -1 y 1
# bit : bits de cuantizacion
Plus1 = np . power (2 , ( bit -1) )
X = s * Plus1
X = np . round ( X )
X = np . minimum ( Plus1 -1.0 , X )
X = np . maximum ( -1.0* Plus1 , X )
X = X / Plus1
return X

1. Explique brevemente la función de re-cuantificación. ¿En qué se parece y se diferencia de un cuantizador


utilizado en un ADC?

2. Re-cuantice la señal de audio utilizada en los numerales anteriores a 2, 4 y 8 bits. Escuche las señales. ¿Qué
percibe?
3. Grafique las señales re-cuantizadas y compare con la original, ¿qué puede observar?

2
3.1. Error de cuantificación
1. Calcule el error de cuantificación medio para las siguientes tasas de bits: 2, 4, 6, ...,30.
Tip: Para calcular el error cuadrático medio, usado para calcular el error de cuantificación, se usa la siguiente
ecuación: v
u
u1 X N
2
Error = t |x orig[k] − x cuantizada[k]|
N
k=0

La cual puede ser implementada de la siguiente forma

import numpy as np
error = np . sqrt ( np . sum ( np . abs ( senal - senal_quanti ) **2) / len ( senal ) )

2. Realice una gráfica de tasa de bits vs. error de cuantificación. ¿Qué puede concluir?

4. Enlaces de interés que pueden ayudar en las conclusiones


[Link]
uniform_characteristic.ipynb
[Link]
quantization_speech_signal.ipynb
[Link]
speech_signal.ipynb

También podría gustarte