• Lunes 23 de Diciembre de 2024, 18:13

Autor Tema:  Serapar De Un Archivo De Audio La Señal De Voz  (Leído 11698 veces)

juanalajo

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Serapar De Un Archivo De Audio La Señal De Voz
« en: Martes 12 de Junio de 2007, 23:07 »
0
Hola a todos, simplemente les agradesco el solo hecho de entrar aquì, pues si asi es, es por que vieron la posibilidad de ayudarme, estoy asiendo mi tesis y necesito eliminar la voz de un archivo de audio utilizando matlab, si alguien me puede dar una pista desde ya le agradesco :D

fa61an

  • Miembro MUY activo
  • ***
  • Mensajes: 100
    • Ver Perfil
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #1 en: Miércoles 13 de Junio de 2007, 06:45 »
0
Según tengo entendido ADSL filtra la señal de 4 Hz a 4 kHz que hace referencia a la voz humana por tanto si quieres eliminar esa frecuencia en matlab primero deberias saber que espectro de frecuencia tiene tu señal y lo haces de la siguiente forma


Código: Text
  1.  
  2. [y,FS,NBITS]=wavread('path de tu señal');   % FS es la f de muestreo de tu señal                  
  3. y(:,1)=[];                                                  % señal es estereo a mono....
  4. y = y';                                                      % la transpuesta para vector fila
  5. Y=fft(y);                                                   % Transformada  fourier
  6. Y=abs(Y);                                                 % valor absoluto
  7. N=size(Y);      
  8. N=N(2);
  9. F = FS*(0:N-1)/N;                                     % eje X de frecuencias
  10. figure (1)
  11. stem(F(1:N/2),Y(1:N/2));
  12. title('FFT ')
  13. xlabel('frequency (Hz)')
  14.  

luego de tener ese espectro debes implementar un filtro y con matlab en el prom escribes lo siguiente

Código: Text
  1. >> FDATool
  2.  
  3.  
lo exportas al workspace y le haces convolucion y listo filtrada tu señal !!!

juanalajo

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #2 en: Miércoles 13 de Junio de 2007, 18:22 »
0
Cita de: "fa61an"
Según tengo entendido ADSL filtra la señal de 4 Hz a 4 kHz que hace referencia a la voz humana por tanto si quieres eliminar esa frecuencia en matlab primero deberias saber que espectro de frecuencia tiene tu señal y lo haces de la siguiente forma


Código: Text
  1.  
  2. [y,FS,NBITS]=wavread('path de tu señal');   % FS es la f de muestreo de tu señal                  
  3. y(:,1)=[];                                                  % señal es estereo a mono....
  4. y = y';                                                      % la transpuesta para vector fila
  5. Y=fft(y);                                                   % Transformada  fourier
  6. Y=abs(Y);                                                 % valor absoluto
  7. N=size(Y);      
  8. N=N(2);
  9. F = FS*(0:N-1)/N;                                     % eje X de frecuencias
  10. figure (1)
  11. stem(F(1:N/2),Y(1:N/2));
  12. title('FFT ')
  13. xlabel('frequency (Hz)')
  14.  

luego de tener ese espectro debes implementar un filtro y con matlab en el prom escribes lo siguiente

Código: Text
  1. >> FDATool
  2.  
  3.  
lo exportas al workspace y le haces convolucion y listo filtrada tu señal !!!
Gracias por contestarme, tengo todavia un problema al diseñar el filtro en el FDATOOL no se cual utilizar porque al realizar la convolucion me sale solo ruido :hola:

fa61an

  • Miembro MUY activo
  • ***
  • Mensajes: 100
    • Ver Perfil
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #3 en: Viernes 29 de Junio de 2007, 00:00 »
0
que pena no contestarte con prontitud pero no recibí la notificación de tu respuesta...

La frecuencia de muestreo de tu señal de audio debe ser la misma frecuencia de muestreo para el filtro tenlo bien presente.

El tipo yo diría que un band pass osea pasa banda tipo FIR WINDOW "kaiser" ("no me preguntes por que ese, solo te puedo decir que es el que he usado en la universidad") especificale un orden al filtro yo creo que con un orden de 128 estaría bien. no se que mas inconvenientes puedas tener.

yonni

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #4 en: Sábado 21 de Julio de 2007, 03:44 »
0
hello :D

como puedo hacer reconocimiento de voz en matlab ....ulguna  ayuda.... :rolleyes:
 :comp:------------- kyorijun@hotmail.com      :rolleyes:

christian_emr

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #5 en: Sábado 18 de Octubre de 2008, 19:26 »
0
Hola a todos,
Necesito reconocer patrones de voz en una señal de radio que la estoy grabando en el computador, es posible hacerlo en Matlab o Scilab?
Les agradezco cualquier sugerencia.
 :wacko:

Geo

  • Miembro de PLATA
  • *****
  • Mensajes: 1011
  • Nacionalidad: mx
    • Ver Perfil
    • http://hsblog.mexchip.com
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #6 en: Domingo 26 de Octubre de 2008, 00:29 »
0
Matlab solo es una herramienta para implementar algoritmos, filtros o métodos; todos ellos deben ser investigados antes.
La imaginación es el límite.
Hardware & Software | Mexchip

Quicksilver

  • Miembro activo
  • **
  • Mensajes: 93
  • Nacionalidad: co
    • Ver Perfil
Re: Serapar De Un Archivo De Audio La Señal De Voz
« Respuesta #7 en: Sábado 22 de Noviembre de 2008, 05:36 »
0
Citar
Hola a todos,
Necesito reconocer patrones de voz en una señal de radio que la estoy grabando en el computador, es posible hacerlo en Matlab o Scilab?
Les agradezco cualquier sugerencia.

Si es posible, si investigas un poco mas, verás que con la transformada de fourier es posible reconocer cierto tipo de patrones, si eliminas el ruido de la señal, posiblemente puedas reconocer muchos mas, pues ya despues de cierta cantidad, la transformada de Fourier puede tener cierto grado de incertidumbre y no ser muy precisa, pero puedes lograr un número considerable con ella.

Otra opción, pero creo que un poco mas complicada (por que no tengo todavía mucho conocimiento) sería realizar una red neuronal.

Te invito a que investigues sobre la transformada de Fourier, pues no solo sirve para eliminiar el "Ruido Blanco" también sirve para reconocimiento de imágenes y de sonido, yo ya lo he hecho, ánimo.

Un saludo cofrade programador.
Everything that has a beginning has an end