# Separación ciega de fuentes 2 señales superpuestas



## AlvaroII (Feb 8, 2008)

Buenas, antes de nada me presento.

Mi nombre es Álvaro y soy estudiante de Telecomunicaciones de España. 

La semana pasada mi profesor de Señales Analógicas nos propuso este trabajo que consiste en separar dos señales acusticas superpuestas, dandonos el un fichero .wav que recogia dicha situación. Pues bien tras una semana intentandolo aun no lo he conseguido asi que recurro a vuestra ayuda altruista haber si empiezo a encontra el camino. Todo esto lo tengo que realizar mediante el Matlab.

Si alguien tiene el conocimiento para ayudarme a plantear el problema y los pasos a seguir se lo agradece muchisimo

Pd. Si alguien esta interesad en conseguir el fichero .wav que me escriba a mi direccion de correo "xxxxxxxxxxxxxxxxxxxxxxxxx

A continuación presento el trabajo:

Separación ciega de fuentes

Descripción del problema

Un concierto de piano se graba en estéreo. Al escuchar la grabación se observa que por razones desconocidas se ha recogido, junto a la música de piano, otro concierto de guitarra que se celebraba en una sala contigua. 
Las señal estéreo recogida es la del fichero grabacion.wav

Objetivo

El objetivo del presente trabajo es recuperar una grabación limpia (aunque no sea estéreo) del concierto de piano, a partir de las dos señales proporcionadas por ambos micrófonos, utilizando alguna técnica de separación ciega de fuentes.  

Fundamentos de la separación ciega de fuentes
El problema consiste en la señales mezcladas (fuentes) han dado lugar a un conjunto de observaciones (los dos canales de la grabación estéreo). El objetivo de la separación ciega de fuentes consiste en obtener las señales originales a partir de las observaciones. Se habla de separación ciega porque no se conoce la forma concreta en que se ha realizado la mezcla.
Formalmente, el proceso de mezcla se puede representar en el dominio de la transformadorrmada de Laplace mediante la expresión X(s) = G(s) F(s), en la que F(s) es el vector de señales originales (transformadorrmadas), X(s) es el vector de observaciones (transformadorrmadas), y G(s) es la matriz de mezclas, desconocida.
Si H(s) es una estimación de la matriz G(s), se pueden recuperar las señales originales a partir de las observaciones mediante  R(s) = H-1(s) X(s) = E(s) X(s). Si H(s) es una estimación suficientemente buena de G(s), las señales recuperadas R(s) se parecerán bastante a las señales originales F(s)
El caso más sencillo de mezcla es el que ha ocurrido en este caso, simple suma ponderada de las dos señales temporales. Es decir,
x1(t) = g11 f1(t) + g12 f2(t)
x2(t) = g21 f1(t) + g22 f2(t)
Las señales recuperadas serán
r1(t) = e11 x1(t) + e12 x2(t)
r2(t) = e21 x1(t) + e22 x2(t)
Una posible forma de obtener E(s) = H-1(s) es suponer que, aunque las fuentes, f(t), sean independientes entre sí las observaciones, x(t), no lo serán, debido a la mezcla.
Por tanto, se trata de forma ajustar los elementos de la matriz E que se minimice la correlación entre la señal recuperada r1(t) y la señal observada x2(t) y se maximice la correlación entre la señal recuperada r1(t) y la observación x1(t).
Con r2(t) se podría proceder igual pero puede dar lugar a indeterminaciones. En ese caso se puede usar la correlación de las observaciones con el cubo de [r2(t)]3 en lugar de con la propia señal recuperada r2(t).

Nota: La grabación suministrada es digital, por lo que podrá hacerse una simulación de todo el proceso en MATLAB o con cualquier otro sistema de procesado digital de señales.


----------



## ELCHAVO (Feb 14, 2008)

estimado amigo

lo primero que tendras que hacer es entender la parte matematica del asunto, es decir si ya entiendes realmente bien el algoritmo y sabes el porque realmente se pueden recuperar las señales originales aplicando esos algoritmos matematicos, entonces ya es solo usar la onda .wav en matlab y aplicarle esos metodos o mejor aplicar ese algoritmo matematico en matlab a la señal original y matlab usara esas ecuaciones para ir separando las dos señales y asi las ira recuperando.


pero .....aqui lo dificil es entender y visualizar claramente el porque ese algoritmo matematico recupera las señales originales.

si ya entiendes la parte matematica con claridad, entonces seras capaz de modelar tus ecuaciones reales que seran la maquinaria que desgloce tu .wav y puedas escuchar tus ondas recuperadas.

en que parte necesitas ayuda mas exactamente ? en la parte del modelamiento matematico ? en la parte de programacion de matlab ? o en electronica ?


----------

