apliacacion de series de fourier

Upload: joorge-ivaan-b-n

Post on 23-Feb-2018

234 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 Apliacacion de series de Fourier

    1/19

    Matemticas Avanzadas

    Para IngenieraSistema de reconocimiento de voz

    2/12/2015

    CETI (Colomos)

    5B

    Luis Enrique Prez Murillo 13310279Marco Antonio Lopez Madera 13310194

    Jorge Ivn Becerra Npoles 13310035

  • 7/24/2019 Apliacacion de series de Fourier

    2/19

    INTRODUCCIN

    El Sistema de Reconocimiento es muy importante debido a que el habla es una de

    las partes ms importantes de la expresin humana, es algo que nos diferencia del

    resto de seres vivos en planeta, ya que sin el habla el pensamiento mismo del

    hombre no sera posible. No se trata simplemente de un sistema para transmitirinformacin, aunque sea claro, una de sus funciones. Dada la importancia del

    habla, el presente trabajo de final de la materia de Matemticas Avanzadas del

    curso agosto-diciembre del 2015 pretende crear una interaccin entre una de las

    expresiones esenciales del hombre con la computadora, creando as un Sistema

    de Reconocimiento de Voz. El procesamiento digital de seales de voz tiene una

    gran variedad de aplicaciones, existe una base para el tratamiento digital de

    seales, que puede ser implementada para lograr obtener lo que nos interese

    segn la aplicacin. El Sistema de Reconocimiento de Voz es una de las

    aplicaciones del procesamiento digital de seales de voz. El sistema consiste en

    obtener una seal de voz que permita reconocer qu vocal o nmero se est

    hablando. Consta de una interfaz grfica que permite la interaccin del usuario pormedio de un micrfono con la computadora, la que procesa automticamente los

    datos adquiridos. Basado en los resultados de este sistema, se puede ver como se

    plantea la base del procesamiento digital de seales de voz y queda a la libre

    imaginacin como puede ser utilizado para otras aplicaciones, adems del de

    reconocimiento de voz.

    La voz humana se produce por medio del aparato fonatorio. Este est formado por

    los pulmones como fuente de energa, en forma de flujo de aire, la laringe que

    contiene las cuerdas vocales, la faringe, las cavidades oral y nasal y una serie de

    elementos articulatorios: los labios, los dientes, el alveolo, el paladar, el velo del

    paladar y la lengua, al cerrarse la glotis, las cuerdas vocales comienzan a vibrar

    de modo audible, producindose un sonido tonal, es decir peridico. La frecuencia

    de este sonido depende de varios factores, entre otros del tamao y la masa de

    las cuerdas vocales, de la tensin de las cuerdas vocales, de la tensin que se les

    aplique y de la velocidad del flujo del aire proveniente de los pulmones.

    Para la elaboracin de este proyecto final fue necesario tener conocimientos o

    adquirir conocimiento de un software especial, conocido como MATLAB,es el

    lenguaje de alto nivel y un entorno interactivo utilizado por millones de ingenieros y

    cientficos de todo el mundo . Se le permite explorar y visualizar las ideas ycolaborar en todas las disciplinas , incluyendo la seal y el procesamiento de

    imgenes , comunicaciones, sistemas de control , y las finanzas computacional

    .

    1

  • 7/24/2019 Apliacacion de series de Fourier

    3/19

    TRANSFORMADA RAPIDA DE FOURIER

    Las Transformadas Rpidas de Fourier son algoritmos especializados que

    permiten a un procesador digital hacer el clculo de la Transformada Discreta deFourier de una forma eficiente, en lo que respecta a carga computacional y tiempo

    de procesamiento. Se busca realizar la representacin de una seal originalmente

    adquirida en el dominio del tiempo (serie de tiempo), como funcin del dominio de

    la frecuencia. Dado que el proceso inverso tambin se puede implementar

    mediante este algoritmo, se concluye que la FFT permite saltar de un dominio

    cualquiera al otro. Por tratarse de un algoritmo desarrollado para un procesador

    digital, se debe pensar en el carcter discreto de las dos representaciones, pues

    un sistema de clculo artificial tiene recursos limitados de memoria y capacidad de

    cmputo y desde esta perspectiva no se puede pensar en procesar las secuenciasinfinitas datos propias del tiempo o de la frecuencia continuas.

    Es una de las herramientas principales de anlisis con que se cuenta hoy en los

    medios de ciencia y tecnologa. Su poder radica en la posibilidad establecer

    relaciones entre puntos de vista muy diferentes relativos a un mismo problema.

    As, al visualizar un fenmeno tanto en trminos de la funcin asociada, como de

    su transformada de Fourier, se tiene frecuentemente un procedimiento de anlisis

    til para resolver un problema determinado.

    La FFT es un algoritmo que permite calcular la transformada discreta de fourier

    (DFT) y su inversa.

    2

    https://es.wikipedia.org/wiki/Transformada_de_Fourier_discreta
  • 7/24/2019 Apliacacion de series de Fourier

    4/19

    La formula esta dada por:

    EXPLICACIN DEL REA DE CONOCIMIENTOProcesamiento de Seales DigitalesEl procesamiento digital de seales (DSP) es la manipulacin matemtica de una

    seal de informacin para modificarla o mejorarla en algn sentido. Este est

    caracterizado por la representacin en el dominio del tiempo discreto, en el

    dominio frecuencia discreta, u otro dominio discreto de seales por medio de una

    secuencia de nmeros o smbolos y el procesado de esas seales.

    Esto se puede conseguir mediante un sistema basado en un procesador o

    microprocesador que posee un juego de instrucciones, un hardware y un software

    optimizados para aplicaciones que requieran operaciones numricas a muy alta

    velocidad.

    Se puede procesar una seal para obtener una disminucin del nivel de ruido,

    para mejorar la presencia de determinados matices, como los graves o los agudos

    y se realiza combinando los valores de la seal para generar otros nuevos. As, el

    DSP se utiliza en el procesamiento de msica (por ejemplo MP3), de voz (por

    ejemplo,

    reconocimiento de voz) en

    telfonos celulares, de imgenes (en la

    transmisin de imgenes satelitales) y vdeo (DVD).

    FonticaLa fontica es el estudio de los sonidos fsicos del discurso humano. Es la rama de

    la lingstica que estudia la produccin y percepcin de los sonidos de una lengua

    con respecto a sus manifestaciones fsicas. Sus principales ramas son: fontica

    experimental, fontica articulatoria, fonemtica, fontica acstica y fontica

    auditiva. constituye uno de los mbitos de la lingstica que ms se ha beneficiado

    de los avances informticos dado su carcter experimental. Disponer de potentes

    herramientas de anlisis ha favorecido el desarrollo de teoras cuyo fin principal es

    explicar la comunicacin mediante el habla entre los seres humanos.

    3

    https://es.wikipedia.org/wiki/Lenguaje#Lenguaje_ac.C3.BAsticohttps://es.wikipedia.org/wiki/Sat%C3%A9lite_artificialhttps://es.wikipedia.org/wiki/Telefon%C3%ADa_m%C3%B3vilhttps://es.wikipedia.org/wiki/Reconocimiento_de_vozhttps://es.wikipedia.org/wiki/MP3https://es.wikipedia.org/wiki/M%C3%BAsicahttps://es.wikipedia.org/wiki/Softwarehttps://es.wikipedia.org/wiki/Hardwarehttps://es.wikipedia.org/wiki/Microprocesadorhttps://es.wikipedia.org/wiki/Dominio_de_la_frecuenciahttps://es.wikipedia.org/wiki/Dominio_del_tiempo
  • 7/24/2019 Apliacacion de series de Fourier

    5/19

    El estudio experimental del habla desde las diferentes perspectivas de la fontica

    (articulatorio, acstico, perceptivo) condiciona y determina la eleccin de las

    tcnicas de anlisis adecuadas. Tcnicas que determinarn los parmetros que

    caracterizan a los sonidos , as como los patrones entonativos y rtmicos.

    Desde el punto de vista acstico el estudio del habla requiere de un profundo

    anlisis en los dominios de la frecuencia,amplitud y tiempo que configuran la onda

    sonora portadora del habla.

    En la determinacin de los formantes tambin es posible utilizar el anlisis

    espectral mediante el que obtenemos una representacin de la onda sonora en el

    dominio de la frecuencia y amplitud. El espectro de un sonido es la funcin

    resultante de aplicar el algoritmo denominado Transformada rpida de Fourier

    (FFT,Fast Fourier Transform)que descompone la onda sonora en sus armnicos.

    Este procedimiento no proporciona informacin acerca de la evolucin frecuencialen el tiempo y por tanto no permite analizar transiciones . Sin embargo permite

    obtener informacin sobre la distribucin de energa en la escala de frecuencias.

    En el espectro, los formantes aparecen como agrupacin de armnicos.La

    frecuencia del formante se toma en el punto medio de la agrupacin mientras que

    la intensidad corresponde al armnico con mayor amplitud.

    El armnico de frecuencia ms baja que se observa en el espectro corresponde a

    la frecuencia fundamental (Fo), que tiene como correlato articulatorio la frecuenciade vibracin de las cuerdas vocales.

    Formantes

    La principal categora acstica para caracterizar las vocales son los formantes, en

    especial los dos primeros.

    Los dos formantes se relacionan con las dimensiones del movimiento lingual.

    El primer formante con la dimensin alto-bajo y el segundo con la dimensin

    anterior-posterior.

    4

  • 7/24/2019 Apliacacion de series de Fourier

    6/19

    los siguientes valores promedio para los formantes 1 y 2 en informantes

    femeninos:

    Hombres Mujeres

    Vocal F1 F2 F1 F2

    i 265 Hz 2318 Hz 241 Hz 2835 Hz

    e 454 Hz 1995 Hz 492 Hz 2252 Hz

    a 657 Hz 1215 Hz 664 Hz 1168 Hz

    o 475 Hz 888 Hz 511 Hz 981 Hz

    u 294 Hz 669 Hz 243 Hz 629 Hz

    Esquema de la trayectoria de F1 y F2 en las cinco vocales del espaol.

    Asi pues, los formantes nos ayudan poder realizar la identificacin de las vocales o

    los nmeros de una manera ms sencilla.

    DomticaSe llama domtica al conjunto de sistemas capaces de automatizar una vivienda,

    aportando servicios de gestin energtica, seguridad, bienestar y comunicacin, y

    5

    https://es.wikipedia.org/wiki/Viviendahttps://es.wikipedia.org/wiki/Regulaci%C3%B3n_autom%C3%A1ticahttps://es.wikipedia.org/wiki/Sistema
  • 7/24/2019 Apliacacion de series de Fourier

    7/19

    que pueden estar integrados por medio de redes interiores y exteriores de

    comunicacin, cableadas o inalmbricas, y cuyo control goza de cierta ubicuidad,

    desde dentro y fuera del hogar. Se podra definir como la integracin de la

    tecnologa en el diseo inteligente de un recinto cerrado.

    Desarrollo:

    Bsicamente este es el funcionamiento de nuestro reconocedor de voz, por medio

    de un diagrama a bloques el cual primeramente, toma una muestra de voz por

    medio de un micrfono para despus establecer ciertas caractersticas de

    comparacin para mandarlas a la siguiente etapa y poder compararla con nuestras

    diferentes patrones anteriormente pregrabados, despus una vez que se calcula

    el error entre las dos comparaciones toma una decisin. Para tomar esa decisin y

    mostrarla fue necesario comparar la muestra de voz con todo nuestra base de

    datos de espectros pregrabados.

    6

  • 7/24/2019 Apliacacion de series de Fourier

    8/19

    En el desarrollo de este proyecto se presenta la siguiente interfaz,la cual consta de

    tres partes principales y se describen a continuacin:

    1. Axes 1 : parte en la cual nos mostrar cmo se comporta la grfica de voz que se

    haya guardado en ese momento.

    2. Panel en esta parte nos muestra los dos botones que tiene nuestro men grfico,

    la cual es se divide en:

    1. Botn Grabar: este botn llamar a la funcin de grabar, la cual tambin crear unarchivo llamado voz donde contenera la voz grabada por el usuario en la carpeta

    voces.

    2. Botn reconocer: este botn tiene la funcin de normalizar la voz y de comparar la

    voz grabada con la base de datos previamente cargada, adems se analizaran y

    compararan el archivo de la voz grabada con los de la bases de datos

    3. Text : es donde nos mostrar la vocal o nmero correspondiente obtenida de

    comparar la voz grabada con la base de datos establecida.

    7

  • 7/24/2019 Apliacacion de series de Fourier

    9/19

    Espectro de las vocales

    vocal a vocal e

    vocal i vocal o

    vocal u

    8

  • 7/24/2019 Apliacacion de series de Fourier

    10/19

    Espectro de nmeros

    nmero 1 nmero 2

    nmero 3 nmero 4

    nmero 5

    9

  • 7/24/2019 Apliacacion de series de Fourier

    11/19

    nmero 6 nmero 7

    nmero 8 nmero 9

    nmero 10

    10

  • 7/24/2019 Apliacacion de series de Fourier

    12/19

    El programa se divide en 4 Scrips principales

    1. Guardar.m:// en este apartado capta la seal de entrada por medio delmicrfono el cual est conectado a la entrada de la computadora paraposteriormente guardar el dato de entrada en un archivo llamadovoz.wav

    %1 Grabar

    %2 Guardar

    Fs=44100 % frecuencia de la voz

    y=audiorecorder(Fs,16,1)

    disp('Grabando')

    recordblocking(y,2)

    disp('Fin Grabacin')

    myRecording=getaudiodata(y)

    play(y)

    plot(myRecording)

    audiowrite('voces\voz.wav',myRecording,Fs)

    2. Normalizar.m// en normalizar el sonido de entrada bsicamentecalculas el tamao de la descomposicin vectorial paraposteriormente comparar dato por dato de esa matriz del vector

    % Normalizar

    function sonidoN = normalizar(sonido)

    maximo = max(abs(sonido))

    n = length(sonido) %calcula el tamao del vector

    sonidoN = zeros(1,n)for i=1:1:n

    sonidoN(i)=sonido(i)/maximo

    end

    end

    3. Reconocer.m// en este apartado se tienen los archivos ya grabados decada uno de los nmeros y vocales, los cuales se mandan anormalizar para hacer la descomposicin vectorial de cada sonido,una vez obtenido esto se le saca la transformada rapida de fourier y

    los valores absolutos de cada dato.%reconocer

    v1 = audioread('voces\a.wav')

    v2 = audioread('voces\e.wav')

    11

  • 7/24/2019 Apliacacion de series de Fourier

    13/19

    v3 = audioread('voces\i.wav')

    v4 = audioread('voces\o.wav')

    v5 = audioread('voces\u.wav')

    v6 = audioread('voces\1.wav')

    v7 = audioread('voces\2.wav')v8 = audioread('voces\3.wav')

    v9 = audioread('voces\4.wav')

    v10 = audioread('voces\5.wav')

    v11 = audioread('voces\6.wav')

    v12 = audioread('voces\7.wav')

    v13 = audioread('voces\8.wav')

    v14 = audioread('voces\9.wav')

    v15 = audioread('voces\10.wav')

    %normalizar

    vocala = normalizar(v1)vocale = normalizar(v2)

    vocali = normalizar(v3)

    vocalo = normalizar(v4)

    vocalu = normalizar(v5)

    num1 = normalizar(v6)

    num2 = normalizar(v7)

    num3 = normalizar(v8)

    num4 = normalizar(v9)

    num5 = normalizar(v10)

    num6 = normalizar(v11)

    num7 = normalizar(v12)

    num8 = normalizar(v13)

    num9 = normalizar(v14)

    num10 = normalizar(v15)

    %transformada rapida de fuorier y le sacamos el valor absoluto

    transfvocala = abs(fft(vocala))

    transfvocale = abs(fft(vocale))

    transfvocali = abs(fft(vocali))

    transfvocalo = abs(fft(vocalo))transfvocalu = abs(fft(vocalu))

    transfnum1 = abs(fft(num1))

    transfnum2 = abs(fft(num2))

    12

  • 7/24/2019 Apliacacion de series de Fourier

    14/19

    transfnum3 = abs(fft(num3))

    transfnum4 = abs(fft(num4))

    transfnum5 = abs(fft(num5))

    transfnum6 = abs(fft(num6))

    transfnum7 = abs(fft(num7))

    transfnum8 = abs(fft(num8))transfnum9 = abs(fft(num9))

    transfnum10 = abs(fft(num10))

    4. Menu_grafico.m// se encuentra la interfaz grfica que se visualiza en elprograma mostrado en la presentacin el cual cada botn o etiquetatiene una funcin en especfico( explicados en la primera parte dedesarrollo) y en esta parte del codigo se hace la comparacin dato pordato de la matriz del vector para poder arrojar una comparacin con elnumero o letra selecccionado

    function varargout = menu_grafico(varargin)

    % MENU_GRAFICO MATLAB code for menu_grafico.fig

    % MENU_GRAFICO, by itself, creates a new MENU_GRAFICO or raises

    the existing

    % singleton*.

    %

    % H = MENU_GRAFICO returns the handle to a new MENU_GRAFICO

    or the handle to

    % the existing singleton*.%

    % MENU_GRAFICO('CALLBACK',hObject,eventData,handles,...) calls

    the local

    % function named CALLBACK in MENU_GRAFICO.M with the given

    input arguments.

    %

    % MENU_GRAFICO('Property','Value',...) creates a new

    MENU_GRAFICO or raises the

    % existing singleton*. Starting from the left, property value pairs are

    % applied to the GUI before menu_grafico_OpeningFcn gets called. An% unrecognized property name or invalid value makes property

    application

    % stop. All inputs are passed to menu_grafico_OpeningFcn via varargin.

    %

    13

  • 7/24/2019 Apliacacion de series de Fourier

    15/19

    % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only

    one

    % instance to run (singleton)".

    %

    % See also: GUIDE, GUIDATA, GUIHANDLES

    % Edit the above text to modify the response to help menu_grafico

    % Last Modified by GUIDE v2.5 23-Nov-2015 10:10:14

    % Begin initialization code - DO NOT EDIT

    gui_Singleton = 1

    gui_State = struct('gui_Name', mfilename, ...

    'gui_Singleton', gui_Singleton, ...

    'gui_OpeningFcn', @menu_grafico_OpeningFcn, ...

    'gui_OutputFcn', @menu_grafico_OutputFcn, ...

    'gui_LayoutFcn', [] , ...'gui_Callback', [])

    if nargin && ischar(varargin{1})

    gui_State.gui_Callback = str2func(varargin{1})

    end

    if nargout

    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:})

    else

    gui_mainfcn(gui_State, varargin{:})

    end

    % End initialization code - DO NOT EDIT

    % --- Executes just before menu_grafico is made visible.

    function menu_grafico_OpeningFcn(hObject, eventdata, handles, varargin)

    % This function has no output args, see OutputFcn.

    % hObject handle to figure

    % eventdata reserved - to be defined in a future version of MATLAB

    % handles structure with handles and user data (see GUIDATA)

    % varargin command line arguments to menu_grafico (see VARARGIN)

    % Choose default command line output for menu_grafico

    handles.output = hObject

    % Update handles structure

    14

  • 7/24/2019 Apliacacion de series de Fourier

    16/19

    guidata(hObject, handles)

    % UIWAIT makes menu_grafico wait for user response (see UIRESUME)

    % uiwait(handles.figure1)

    % --- Outputs from this function are returned to the command line.

    function varargout = menu_grafico_OutputFcn(hObject, eventdata, handles)

    % varargout cell array for returning output args (see VARARGOUT)

    % hObject handle to figure

    % eventdata reserved - to be defined in a future version of MATLAB

    % handles structure with handles and user data (see GUIDATA)

    % Get default command line output from handles structure

    varargout{1} = handles.output

    % --- Executes on button press in pushbutton1.

    function pushbutton1_Callback(hObject, eventdata, handles)

    clear all

    guardar

    % --- Executes on button press in pushbutton2.

    function pushbutton2_Callback(hObject, eventdata, handles)

    play(y)

    % --- Executes on button press in pushbutton3.

    function pushbutton3_Callback(hObject, eventdata, handles)

    reconocer

    voz_usuario = audioread('voces\voz.wav')

    usuario = normalizar(voz_usuario)

    transfusuario = abs(fft(usuario))

    nu=length(transfusuario)

    error(1) = mean(abs(transfvocala - transfusuario))

    error(2) = mean(abs(transfvocale - transfusuario))

    error(3) = mean(abs(transfvocali - transfusuario))

    15

  • 7/24/2019 Apliacacion de series de Fourier

    17/19

    error(4) = mean(abs(transfvocalo - transfusuario))

    error(5) = mean(abs(transfvocalu - transfusuario))

    error(6) = mean(abs(transfnum1 - transfusuario))

    error(7) = mean(abs(transfnum2 - transfusuario))

    error(8) = mean(abs(transfnum3 - transfusuario))error(9) = mean(abs(transfnum4 - transfusuario))

    error(10) = mean(abs(transfnum5 - transfusuario))

    error(11) = mean(abs(transfnum6 - transfusuario))

    error(12) = mean(abs(transfnum7 - transfusuario))

    error(13) = mean(abs(transfnum8 - transfusuario))

    error(14) = mean(abs(transfnum9 - transfusuario))

    error(15) = mean(abs(transfnum10 - transfusuario))

    min_error = min(error)

    disp(min_error)

    disp(error)

    %comparar y mostrar dependeidno del error

    if(min_error == error(1))

    set(handles.text2, 'String','A')

    end

    if(min_error == error(2))

    set(handles.text2, 'String','E')

    end

    if(min_error == error(3))

    set(handles.text2, 'String','I')

    end

    if(min_error == error(4))

    set(handles.text2, 'String','O')

    end

    if(min_error == error(5))

    set(handles.text2, 'String','U')

    end

    if(min_error == error(6))

    set(handles.text2, 'String','1')end

    if(min_error == error(7))

    set(handles.text2, 'String','2')

    end

    16

  • 7/24/2019 Apliacacion de series de Fourier

    18/19

    if(min_error == error(8))

    set(handles.text2, 'String','3')

    end

    if(min_error == error(9))

    set(handles.text2, 'String','4')

    endif(min_error == error(10))

    set(handles.text2, 'String','5')

    end

    if(min_error == error(11))

    set(handles.text2, 'String','6')

    end

    if(min_error == error(12))

    set(handles.text2, 'String','7')

    end

    if(min_error == error(13))

    set(handles.text2, 'String','8')end

    if(min_error == error(14))

    set(handles.text2, 'String','9')

    end

    if(min_error == error(15))

    set(handles.text2, 'String','10')

    end

    % --- Executes during object creation, after setting all properties.

    function text2_CreateFcn(hObject, eventdata, handles)

    % hObject handle to text2 (see GCBO)

    % eventdata reserved - to be defined in a future version of MATLAB

    % handles empty - handles not created until after all CreateFcns called

    17

  • 7/24/2019 Apliacacion de series de Fourier

    19/19

    Conclusion.

    En la elaboracin de este proyecto se aprendieron varias cosas, entre ellas fue

    darnos idea de algunas posibles aplicaciones de las transformadas de fourier,

    adems se adquirieron conocimientos en el software de MATLAB ya que no

    poseamos conocimientos de como programar ni usar este software, que ademsresult una herramienta de gran ayuda en la elaboracin y creacin de proyectos

    relacionados con las ciencias exactas. Nuestro proyecto adems puede ser escalable

    o adaptable, en este caso solo demostramos con las vocales y numeros del 1 al 10,

    pero puede reconocer palabras o expresiones, hacindolo ms complejo, entre otras

    cosas nos dimos cuenta de la gran importancia que tienen los temas vistos en clase

    para solucionar algn problema de la vida diaria, en este caso, la aplicacin de las

    Transformadas de Fourier, que nos permite, realizar un procesamiento de seales

    digitales para poder hacer un reconocimiento de voz.

    Con esto, concluimos que los conocimientos obtenidos de la materia de matemticas

    avanzadas no quedan solamente en eso, en conocimientos, si no en herramientas

    que nos ayudaran a resolver o ver el comportamiento de algn fenmeno en

    especfico.

    Referencias.

    http://www.mathworks.com/index.html?s_tid=gn_logo

    http://www.mathworks.com/videos/creating-a-gui-with-guide-68979.html Proakis, J.G. y D.G. Manolakis. Digital Signal Processing: Principles,

    algorithms and applications. Prentice-Hall, Inc. 1996

    ftp.udistrital.edu.co/Documentacion/Electronica/Dsp/capitulo6.PDF

    http://www.cedom.es/sobre-domotica/que-es-domotica

    http://www.domingo-roman.net/vocales_esp_caract_acustica.html

    18

    http://www.domingo-roman.net/vocales_esp_caract_acustica.htmlhttp://www.cedom.es/sobre-domotica/que-es-domoticahttp://ftp.udistrital.edu.co/Documentacion/Electronica/Dsp/capitulo6.PDFhttp://www.mathworks.com/videos/creating-a-gui-with-guide-68979.htmlhttp://www.mathworks.com/index.html?s_tid=gn_logo