Subido por Hime_ Sama

Análisis y procesado de señales de sonido en Matlab

Anuncio
Análisis y procesado de señales de sonido en Matlab
Manual de Usuario
Versión: 1.0
Fecha: 05/11/2022
[Versión del Producto]
Queda prohibido cualquier tipo de explotación y, en particular, la reproducción, distribución, comunicación
pública y/o transformación, total o parcial, por cualquier medio, de este documento sin el previo
consentimiento expreso y por escrito de los autores del proyecto.
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
ÍNDICE
1.
2.
INTRODUCCIÓN .............................................................................................................................. 3
1.1.
Objetivos ............................................................................................................................................ 3
1.2.
Funcionalidades ................................................................................................................................. 3
INSTALACIÓN DEL SISTEMA ............................................................................................................. 4
2.1.
Requisitos para Windows .................................................................................................................. 4
2.2.
Requisitos para MAC ......................................................................................................................... 4
2.3.
Requisitos para Linux ......................................................................................................................... 5
2.4.
Instalación de MATLAB ...................................................................................................................... 6
Descarga del Instalador ............................................................................................................................. 6
Instalación y activación.............................................................................................................................. 6
2.5.
Instalación de las extensiones necesarias ......................................................................................... 6
3.
DIAGRAMA GENERAL DEL SISTEMA ................................................................................................. 8
4.
MANUAL DE REFERENCIA ................................................................................................................ 9
4.1.
Módulo 1 (Acción) .............................................................................................................................. 9
4.2.
Módulo 2 (Controles de Audio) .......................................................................................................... 9
4.3.
Módulo 3 (Controles Grabar) ........................................................................................................... 10
4.4.
Módulo 4 (Display)........................................................................................................................... 11
4.5.
Módulo 5 (Señal sencilla) ................................................................................................................. 12
5.
GLOSARIO .................................................................................................................................... 14
6.
BIBLIOGRAFÍA Y REFERENCIAS ....................................................................................................... 15
Página 2 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
1. INTRODUCCIÓN
1.1.
Objetivos
A través de este documento de comunicación técnica se busca brindar asistencia a los usuarios que
utilizaran este sistema. Este proyecto se ha desarrollado en el ámbito de clase a través de la aplicación
de MATLAB r2022b, con el objetivo de aprender a desarrollar un interfaz gráfico claro para el
procesado básico pero preciso de señales de audio/voz, grabación/reproducción de señales de audio, y
visualización de los dominios tiempo-frecuencia de las señales.
1.2.
Funcionalidades
A través de este proyecto el usuario será capaz de analizar y procesar diferentes tipos de señales,
desde señales de audio simples como senos, cosenos, etc., hasta señales más complejas como
canciones y voz grabada.
Lista de las funcionalidades del programa:
 -Acceso al micrófono y altavoces
 -Tratamiento de señales deterministas simples: senos, cosenos, ondas cuadradas, ondas
triangulares y dientes de sierra
 -Dominio del tiempo
 -Domino de la frecuencia: espectrograma.
 -Formatos de audio habituales (.wav)
 -Compresión-expansión tiempo y frecuencia: inversión del eje temporal.
 -Gráficas: ejes con magnitudes físicas claras, auto escaladas y debidamente etiquetados.
 -Tratamiento señales audio, voz, músicas complejas: otros formatos de audio.
 -Contaminación con ruido blanco gaussiano.
 -Filtrado de señales simples con un filtro paso-bajo
Página 3 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
2. INSTALACIÓN DEL SISTEMA
Para poder utilizar el programa de este proyecto será necesario instalar la aplicación MATLAB r2022b o
versiones posteriores además se deberán instalar diferentes extensiones dentro de la aplicación que se
detallarán en los siguientes apartados.
Plataformas soportadas: MAC, Windows y Linux.
2.1.
Requisitos para Windows
Sistema Operativo:
Windows 11
Windows 10 (versión 202H o superior)
Windows server 2019
Windows server 2022
Procesador
Mínimo: Cualquier procesador Intel o AMD x86-64
Recomendado: Cualquier procesador Intel o AMD x86-64
con cuatro núcleos lógicos y compatibilidad con el conjunto
de instrucciones AVX2
Nota: Una versión futura de MATLAB requerirá un
procesador compatible con el conjunto de instrucciones
AVX2.
Mínima: 4 GB
Recomendada: 8 GB para Polyspace, se recomiendan 4 GB
por núcleo.
RAM
Almacenamiento
4,0 GB solo para MATLAB
5-8 GB para una instalación típica
31,5 GB para una instalación de todos los productos
Se recomienda encarecidamente una SSD
Gráfica
No se requiere una tarjeta gráfica específica, pero se
recomienda una tarjeta gráfica acelerada por hardware
compatible con OpenGL 3.3 con memoria GPU de 1 GB.
2.2.
Requisitos para MAC
Sistema Operativo:
macOS Ventura (13)
macOS Monterey (12)
macOS Big Sur (11.6)
Nota: macOS Catalina (10.15) ya no es compatible.
Procesador
Intel
Página 4 de 15
Mínimo: Cualquier procesador Intel o
AMD x86-64
Recomendado: Cualquier procesador
Intel o AMD x86-64 con cuatro núcleos
lógicos y compatibilidad con el conjunto
de instrucciones AVX2.
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
Procesador
Apple Silicon
RAM
Mínima: 4 GB
Recomendada: 8 GB
Nota: Para Polyspace, se recomiendan 4 GB por núcleo.
Almacenamiento
3,7 GB solo para MATLAB
5-8 GB para una instalación típica
25 GB para una instalación de todos los productos
Se recomienda encarecidamente una SSD
Gráfica
Cualquier Mac capaz de ejecutar macOS Big Sur tiene una GPU
capaz de ejecutar MATLAB.
2.3.
Mínimo: Cualquier chip de la serie M
Nota: En los Mac con Apple Silicon,
MATLAB se ejecuta usando Rosetta 2
Requisitos para Linux
Distribuciones:
Procesador
RAM
Almacenamiento
Gráfica
Ubuntu 22.04 LTS
Ubuntu 20.04 LTS
Ubuntu 18.04 LTS
Debian 11
Debian 10
Red Hat Enterprise Linux 9
Red Hat Enterprise Linux 8 (minima 8.4)
Red Hat Enterprise Linux 7 (minima 7.9)
SUSE Linux Enterprise Desktop 15
SUSE Linux Enterprise Server 12 (minima SP2)
SUSE Linux Enterprise Server 15
Mínimo: Cualquier procesador Intel o AMD x86-64
Recomendado: Cualquier procesador Intel o AMD x86-64
con cuatro núcleos lógicos y compatibilidad con el conjunto
de instrucciones AVX2
Nota: Una versión futura de MATLAB requerirá un
procesador compatible con el conjunto de instrucciones
AVX2
Mínima: 4 GB
Recomendada: 8 GB
Nota: Para Polyspace, se recomiendan 4 GB por núcleo.
4,0 GB solo para MATLAB
5-8 GB para una instalación típica
30 GB para una instalación de todos los productos
Se recomienda encarecidamente una SSD
No se requiere una tarjeta gráfica específica, pero se
recomienda una tarjeta gráfica acelerada por hardware
compatible con OpenGL 3.3 con memoria GPU de 1 GB.
Se recomienda encarecidamente el uso de controladores
proporcionados por el proveedor.
Página 5 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
2.4.
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
Instalación de MATLAB
Nota: Para la instalación e Matlab será necesario que el usuario posea una licencia del producto.
Pasos que seguir para la instalación de MATLAB:
Descarga del Instalador
1. Inicie sesión en https://es.mathworks.com/login con la cuenta de MathWorks asociada a su
dirección de correo electrónico. Si no tiene una cuenta, cree una mediante su dirección de
correo electrónico.
2. Haga clic en el icono de descarga de la licencia Individual.
3. Seleccione la versión a descargar (r2022b o posterior).
4. Elija una plataforma compatible y descargue el instalador.
Instalación y activación
1. Ejecute el instalador.
2. En el instalador, seleccione Log in with a MathWorks Account (Iniciar sesión con una cuenta
de MathWorks) y siga las instrucciones online.
3. Cuando se le solicite, seleccione la licencia Individual.
4. Tras la descarga, mantenga seleccionada la casilla Activate MATLAB (Activar MATLAB) y
haga clic en Next (Siguiente)
5. Cuando se le pida que proporcione el nombre de usuario, compruebe que el nombre de
usuario mostrado sea correcto. Continue con el proceso hasta que se haya completado la
activación.
2.5.
Instalación de las extensiones necesarias
Para que el proyecto realizado funcione de manera correcta se deberán descargar dos extensiones
adicionales
Pasos para descargar las extensiones:
1. Abrimos el programa de Matlab
2. Vamos a la pestaña de APPS y seleccionamos GET MORE APPS.
Figura 1
Figura 2
Página 6 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
3. Se abrirá una nueva pestaña y en la barra de búsqueda que aparece en la esquina superior
derecha buscamos la extensión Signal Processing Toolbox y la extensión Audio Toolbox y las
instalamos.
Figura 3
Figura 4
4. Una vez instaladas las dos extensiones se debe reiniciar Matlab.
Página 7 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
3. DIAGRAMA GENERAL DEL SISTEMA
Figura 5
En la Figura 5 se muestra un diagrama general del programa donde se puede observar las diferentes
acciones que el programa puede realizar y que se explicará de forma detallada en el apartado MANUAL DE
REFERENCIA.
Página 8 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
4. MANUAL DE REFERENCIA
4.1.
Módulo 1 (Acción)
Este módulo posee dos botones, OPEN y SAVE y un cuadro de información.
El botón OPEN de la parte superior, marcado con un círculo rojo, sirve para
abrir un explorador de archivos y poder cargar la señal de audio a analizar que
podremos reproducir, parar, eliminar o invertir gracias al Módulo 2 que se
explicará a continuación, esta señal puede ser de un canal o de dos canales, los
formatos de audio que acepta el programa son .wav, .mp3, .mp4, .avi, .wmv,
.m4v, .ogg, .flac, .au, .aiff, .aif, .aifc y .m4a.
El botón SAVE, situado en la parte inferior de este módulo, marcado con un
círculo verde, sirve para guardar la señal de voz que se graba en el Módulo 3,
se guardará en formato .wav.
Figura 6
El cuadro de información indica al usuario lo que está haciendo el programa en
cada momento cuando cargamos, reproducimos y grabamos un audio como se muestra en la Figura 6.
4.2.
Módulo 2 (Controles de Audio)
En este módulo hay cuatro botones, el botón PLAY, el botón STOP, el botón DELETE y el botón Reverse
Audio.
Una vez cargada la señal de audio que queremos analizar como se explica en
el Módulo 1 podremos pasar a utilizar este módulo.
Figura 7
El botón PLAY
, permitirá la reproducción del audio que el usuario
podrá escuchar a través de los altavoces de su dispositivo. Si la señal de
audio se ha invertido y se pulsa el botón PLAY, volverá de nuevo a su estado
original.
El botón STOP
, permite al usuario parar la señal de audio cuando ha pasado un tiempo determinado
y si vuelve a pulsar el botón PLAY, seguirá con la reproducción de audio donde se había detenido.
El botón DELETE
de audio.
, permite al usuario eliminar el audio cargado y limpiar todos los displays de la señal
El botón Reverse Audio
, permite al usuario invertir la señal de audio que hacargado en
el programa y al mismo tiempo la reproduce, si queremos que vuelva a su estado original debemos pulsar
el botón PLAY. Nota: El audio invertido solo se reproducirá una vez cuando se pulse el botón Reverse Audio.
Página 9 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
4.3.
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
Módulo 3 (Controles Grabar)
En este módulo hay cinco botones, el botón RECORD, el botón PLAY, el botón STOP, el botón DELETE y el
botón Reverse Voice, y dos pestañas de selección Fs y N.
El botón RECORD
, permite grabar la voz del usuario a través del
micrófono del dispositivo, se podrá seleccionar los valores de las dos
pestañas de selección, Fs y N, por defecto Fs valdrá 44100
muestras/segundo y N valdrá 24 bits. Una vez grabado el audio, para pausar
la grabación es necesario pulsar el botón STOP.
El botón STOP
desee.
Figura 8
El botón DELETE
voz.
, permite al usuario detener la grabación de voz cuando
El botón PLAY
, reproducirá la señal de voz que el usuario haya
grabado anteriormente.
, permite al usuario eliminar la voz grabada y limpiar todos los displays de la señal de
La pestaña de selección Fs
, permite que el usuario elija el valor de la Frecuencia de
Muestreo con la que se quiere grabar la voz, los valores posibles son 8000 muestras/s y 44100 muestras/s.
La pestaña de selección N
, permite que el usuario elija el número de bits con los que
quiere grabar la voz, los valores posibles son 8 bits, 16 bits y 24 bits.
El botón Reverse Voice
, permite invertir la señal de voz que el usuario a grabado y
reproducirla al mismo tiempo. Nota: El audio invertido solo se reproducirá una vez cuando se pulse el botón Reverse Voice.
Página 10 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
4.4.
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
Módulo 4 (Display)
Figura 9
En este módulo se pueden ver las gráficas de las señales de audio y de las señales de voz que el usuario ha
cargado o ha grabado, así como los espectrogramas y la FFT de ambas señales.
El primer Display (Arriba, Izquierda), mostrará la señal
de audio que el usuario ha cargado desde el explorador
de archivos como se ha explicado en el Módulo 1, el
Display mostrara la amplitud en Voltios (V) de la señal y
el tiempo que dura esa señal de audio en segundos(s).
Ошибка! Источник ссылки не
найден.Ошибка! Источник
ссылки не найден. 10.
El segundo Display (Arriba,
Derecha), podrá mostrar tres gráficas diferentes
dependiendo de la opción que el usuario seleccione en la pestaña que se encuentra a
Figura 14
la derecha de la gráfica (Figura 14), por defecto mostrará la FFT de la señal medida
Figura 10
Figura 13
Figura 12
Página 11 de 15
Figura 11
Análisis y procesado de señales de sonido Matlab
Pablo N. Cristóbal Navas
Manual de Usuario
Jimena Lozano Sánchez
en dBV, pero también puede mostrar el espectrograma de la señal de audio en dB y en Hz.
(Figura 11, Figura 12 y Figura 13).
El tercer Display (Abajo, Izquierda), mostrará la señal de voz que el usuario ha grabado, el Display mostrara
la amplitud en Voltios (V) de la señal de voz y el tiempo que dura esa señal de voz en segundos(s).
El cuarto segundo Display (Abajo, Derecha), podrá
mostrar tres gráficas diferentes dependiendo de la
opción que el usuario seleccione en la pestaña que
se encuentra a la derecha de la gráfica (Figura 15),
por defecto mostrará la FFT de
la señal en dBV, pero también
puede mostrar el
espectrograma de la señal de
Figura 15
audio en dB y en Hz.
Figura 18
Figura 19
(Figura 11, Figura 12 y Figura 13)
Figura 16
Figura 17
Nota: El primer y el tercer Display, también podrán mostrar la señal de audio o de voz invertida cuando se pulse el botón correspondiente a la
inversión del audio.
4.5.
Módulo 5 (Señal sencilla)
En este módulo se podrán generar diferentes señales simples determinísticas como senos, cosenos, etc.
Estas señales generadas se verán en el display que hay incluido en el módulo también podrán ser
modificadas por el usuario añadiendo ruido, modificando su frecuencia, amplitud, etc. A continuación, se
explicará el funcionamiento de cada botón y como afecta a cada señal generada.
Figura 20
Página 12 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
En la Figura 20 se puede observar lo que posee este módulo:
 6 cuadros de valores: Amplitud, Frecuencia, Muestreo, Periodos, Factor Comprensión/Expansión y
Banda de paso del filtro normalizado.
 2 pestañas: Tipo de señal a generar y Tipo de ruido.
 3 botones: Generar señal, Aplicar ruido y Filtrar Ruido.
Modificando el valor del cuadro Amplitud, se podrá modificar la amplitud
de la señal en Voltios, por defecto la amplitud será de 1V. El cuadro
Frecuencia modificará la frecuencia de la señal en Hertzios, por defecto
será de 1000 Hz. El cuadro Muestreo modificará el muestreo de la señal
que se genera que por defecto valdrá 100000 muestras/segundo. El cuadro
Periodos indica el número de periodos que tendrá la señal que por defecto
será de 5. El cuadro Factor Comprensión/Expansión que se puede ver en la
Figura 21
Figura 22, comprimirá o expandirá la señal x(t) a través del valor (k) que el
usuario introduzca en el cuadro de forma que la señal queda de la siguiente
forma x(k*t), entonces, si k<1 se comprime la señal y si k>1 la señal se expande, siendo k siempre un
numero positivo, por defecto el valor será 1 por tanto la señal no estará ni comprimida ni expandida.
El cuadro Banda de paso del filtro normalizado permite al usuario
escoger la banda de paso del filtro que se va a usar cuando el usuario
desee filtrar la señal, se puede ver en la Figura 23.
Figura 22
En la pestaña Tipo de señal a generar se puede seleccionar la señal
que se va a generar (Figura 22), por defecto se generará un seno,
pero se puede escoger entre seno, coseno, Señal Cuadrada, Señal
Triangular y Dientes de Sierra.
En la pestaña Tipo de Ruido (Figura 23), el usuario puede escoger el tipo de Ruido que se va a aplicar a la
señal, por defecto es Ruido blanco pero el usuario puede escoger entre ruido Blanco o ruido Rosa.
Con el botón Generar Señal se generará la señal cuyos parámetros
haya seleccionada el usuario anteriormente en ese módulo, se
mostrará en el display y se reproducirá.
El botón Aplicar ruido, aplicará el ruido que el usuario haya
seleccionado sobre la señal que ya se haya generado y se mostrará en
el display.
Figura 23
El Botón Filtrar Ruido, filtrará la señal con ruido que se ha generado
con el filtro que el usuario haya seleccionado y se mostrará en el
display.
Página 13 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
Figura 24: Señal seno por defecto.
Figura 25: Señal seno con ruido rosa.
Figura 26: Señal seno con ruido rosa y filtrada con un filtro cuya banda de paso es de 0,3.
5. GLOSARIO
GLOSARIO
Término
Espectrograma
FFT
Fs
Muestreo
Definición
El espectrograma es una representación visual que permite identificar las
diferentes variaciones de la frecuencia y la intensidad del sonido a lo largo de
un periodo de tiempo.
La "Transformación rápida de Fourier", FFT para abreviar, es un importante
método de medición en la tecnología de medición de audio y acústica.
Descompone una señal en sus componentes espectrales individuales y así
proporciona información sobre su composición.
Frecuencia de muestreo, numero de muestras por segundo.
El proceso de muestreo temporal se utiliza principalmente para señales de
audio y señales de vídeo que son de naturaleza continua, es decir, definidos
en todos los instantes de tiempo. Muestrear una señal continua en el tiempo
da una señal que sólo tendrá valores en instantes de tiempo en concreto
(valores discretos de la señal).
Página 14 de 15
Análisis y procesado de señales de sonido Matlab
Manual de Usuario
Término
N
Señal de audio
Filtro
Ruido
Señal Determinística
Simple
Compresión/Expansión
Periodo
Frecuencia
Amplitud
Tiempo
Pablo N. Cristóbal Navas
Jimena Lozano Sánchez
Definición
Resolución. Es el número de bits utilizados para almacenar cada muestra de la
señal analógica. Una resolución de 8-bits proporciona 256 (28) niveles de
amplitud, mientras que una resolución de 16-bits alcanza 65536 (216). Un
audio digital tendrá más calidad cuanto mayor sea su resolución.
Un audio es una señal analógica eléctricamente exacta a una señal sonora;
normalmente está acotada al rango de frecuencias audibles por los seres
humanos, que está aproximadamente entre los 20 y los 20.000 Hz
Un filtro transforma la señal, en este caso digitalmente, para conseguir una
mejora en alguno de sus aspectos sonoros, la normaliza e incluso la deforma
creativamente a gusto del editor de audio
En comunicación, se denomina ruido a toda señal no deseada que se mezcla
con la señal útil que se quiere transmitir. Es el resultado de diversos tipos de
perturbaciones que tiende a enmascarar la información cuando se presenta
en la banda de frecuencias del espectro de la señal, es decir, dentro de su
ancho de banda.
Una señal determinística es una señal en la cual cada valor esta fijo y puede
ser determinado por una expresión matemática, regla, o tabla.
Transformación temporal que se realiza sobre una señal para modificarla.
El periodo es el tiempo en el que se repite la forma de onda a partir de un
punto de referencia de la señal.
Se denomina frecuencia de la señal a la cantidad de ciclos que pueden
desarrollarse en un segundo.
Es la distancia entre el punto más alejado de una onda y el punto de equilibrio
o medio.
El tiempo (es una magnitud física con la que se mide la duración o separación
de acontecimientos, en este caso se usa para medir la duración de las señales.
6. BIBLIOGRAFÍA Y REFERENCIAS
MathWorks, Inc, A. (19 de Noviembre de 2022). Audio Toolbox Getting Started Guide [Archivo PDF].
MathWorks https://es.mathworks.com/help/pdf_doc/audio/audio_gs.pdf
MathWorks, Inc, A. (19 de Noviembre de 2022). Audio Toolbox User’s Guide [Archivo PDF]. MathWorks
https://es.mathworks.com/help/pdf_doc/audio/audio_ug.pdf
MathWorks, Inc, A. (19 de Noviembre de 2022). Audio Toolbox Reference [Archivo PDF]. MathWorks
https://es.mathworks.com/help/pdf_doc/audio/audio_ref.pdf
MathWorks, Inc, A. (19 de Noviembre de 2022). Signal Processing Toolbox Getting Started Guide [Archivo
PDF]. MathWorks https://es.mathworks.com/help/pdf_doc/signal/signal_gs.pdf
MathWorks, Inc, A. (19 de Noviembre de 2022). Signal Processing Toolbox User’s Guide [Archivo PDF].
MathWorks https://es.mathworks.com/help/pdf_doc/signal/signal.pdf
MathWorks, Inc, A. (19 de Noviembre de 2022). Signal Processing Toolbox Reference [Archivo PDF].
MathWorks https://es.mathworks.com/help/pdf_doc/signal/signal_ref.pdf
Página 15 de 15
Descargar