ES2388573T3 - Cancelación de eco multicanal con regulación por permutación circular - Google Patents

Cancelación de eco multicanal con regulación por permutación circular Download PDF

Info

Publication number
ES2388573T3
ES2388573T3 ES08019620T ES08019620T ES2388573T3 ES 2388573 T3 ES2388573 T3 ES 2388573T3 ES 08019620 T ES08019620 T ES 08019620T ES 08019620 T ES08019620 T ES 08019620T ES 2388573 T3 ES2388573 T3 ES 2388573T3
Authority
ES
Spain
Prior art keywords
regularization
correlation matrix
procedure
signal
subbands
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES08019620T
Other languages
English (en)
Inventor
Jack W. Stokes, Iii
John C. Platt
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Application granted granted Critical
Publication of ES2388573T3 publication Critical patent/ES2388573T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R3/00Circuits for transducers, loudspeakers or microphones
    • H04R3/02Circuits for transducers, loudspeakers or microphones for preventing acoustic reaction, i.e. acoustic oscillatory feedback

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Acoustics & Sound (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Otolaryngology (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Un procedimiento para cancelar ecos de una pluralidad de señales de reproducción en una señal capturada,comprendiendo la señal capturada subbandas capturadas inferiores y subbandas capturadas superiores, ycomprendiendo la pluralidad de señales de reproducción subbandas de reproducción inferiores y subbandas dereproducción superiores, estando el procedimiento caracterizado porusar un primer procedimiento de cancelación de eco para cancelar ecos de las subbandas capturadas superiores; yusar un procedimiento de cancelación de eco con regularización por permutación circular multicanal para cancelar losecos en las subbandas capturadas inferiores, en el que el procedimiento de cancelación de eco con regularización porpermutación circular multicanal comprende adicionalmente:aplicar (1010) una pluralidad de filtros adaptables, comprendiendo cada uno una matriz de correlación inversa, acada una de las subbandas de reproducción inferiores;seleccionar (1020) cada uno entre la pluralidad de filtros adaptables en una secuencia de permutación circular; yregularizar (1030) la matriz de correlación inversa de cada filtro adaptable seleccionado.

Description

Cancelación de eco multicanal con regularización por permutación circular
La presente invención se refiere, en general, al procesamiento de señales y, más específicamente, a un procedimiento y sistema de cancelación del eco de múltiples canales de reproducción en un canal capturado usando regularización por permutación circular.
La cancelación del eco es un elemento importante en una gran variedad de aplicaciones. En general, la cancelación del eco es la cancelación digital de ecos eléctricos y acústicos de modo tal que los ecos se atenúen o eliminen. La cancelación del eco es esencial en aplicaciones tales como los sistemas de comunicaciones, donde se usa para mejorar la calidad del sonido. La cancelación del eco se usa para superar varios tipos distintos de ecos, incluso ecos híbridos, causados por un desajuste de impedancia a lo largo de una línea eléctrica (incluso una línea telefónica), y ecos acústicos, causados por el acoplamiento acústico del sonido proveniente de un altavoz a un micrófono. Estos tipos de ecos aparecen en varias tecnologías distintas, tales como la telefonía inalámbrica, la telefonía de manos libres, los sistemas de teleconferencia, la telefonía por Internet y los sistemas de reconocimiento del habla. Al usar la cancelación de ecos, se mejora la calidad de sonido y la utilidad de estas y muchas otras tecnologías.
Un tipo de cancelación de ecos es la cancelación de ecos acústicos, que se usa para eliminar los ecos de las ondas sonoras acústicas. Habitualmente, estos ecos se forman cuando los sonidos emitidos por uno o más altavoces son recogidos por uno o más micrófonos. Los ecos acústicos pueden ser bastante perceptibles e incluso molestos para un usuario.
En general, la cancelación de ecos acústicos funciona obteniendo una o más señales de reproducción, yendo cada una a los correspondientes altavoces, y restando una estimación del eco producido por esa señal de reproducción a dicha(s) señal(es) de micrófono. Más específicamente, las señales de reproducción a través de este bucle de eco son transformadas y retardadas, se añaden el ruido de fondo y posiblemente el habla del extremo cercano en el micrófono y se usa un procedimiento de sustracción para la cancelación del eco. La señal obtenida después de la sustracción se llama la señal de error, y el objetivo es minimizar la señal de error cuando no está presente ninguna voz de extremo cercano en la señal del micrófono.
El corazón del sistema de cancelación de ecos acústicos es el filtrado adaptable. En general, un filtro adaptable se usa para identificar o “aprender” una función de transferencia de la habitación que contiene los altavoces y micrófonos. Esta función de transferencia dependerá en gran medida de las características físicas del entorno de la habitación. El filtro adaptable funciona tomando la señal de reproducción enviada a los altavoces y ajustando de manera recursiva algunos coeficientes que representan una respuesta de impulso de la habitación. La señal de error, que es el eco estimado restado al eco efectivo, se usa para cambiar los coeficientes del filtro de modo tal que se minimice el error.
Tradicionalmente, cada una de las señales de reproducción se procesa como un flujo único de muestras temporales, con una única línea de retardo y un único filtro. Para mejorar esto, la señal de reproducción puede dividirse en subbandas y una pluralidad de filtros adaptables pueden funcionar en paralelo, un filtro adaptable por subbanda. El cambio de la longitud de los filtros adaptables en las distintas subbandas, según la longitud del eco en esa subbanda, a fin de reducir la complejidad de cálculo, se expone en un artículo de A. Gilloire titulado “Experimentos con canceladores de ecos acústicos de subbandas para la teleconferencia” en la Conferencia Internacional de 1987 sobre Acústica, Voz y Procesamiento de Señales, 1987, págs. 2141 a 2144. Según ese artículo, los filtros adaptables para las subbandas inferiores pueden alargarse a fin de ahorrar ciclos de cálculo de la CPU, porque los sonidos bajos tienden a reverberar más tiempo. En las subbandas superiores, los filtros pueden ser más cortos. De esa manera, el artículo de Gilloire sugería que pueden usarse filtros adaptables más largos en las subbandas inferiores y filtros adaptables más cortos en las subbandas superiores.
Para cancelar los ecos en una señal capturada, cada subbanda de la señal de reproducción se almacena en una línea de retardo digital, donde las señales de subbandas retardadas se separan en tomas. En cada toma, se muestrea la señal de reproducción. El número de tomas de un filtro describe la longitud de la línea de retardo digital. Por ejemplo, cuatro tomas significa que la señal de reproducción se muestrea en la trama actual, la trama actual – 1, la trama actual
-
2 y la trama actual – 3. Cada uno de los retardos es igual a la longitud de trama (que puede ser, a modo de ejemplo, de aproximadamente 16 milisegundos o 20 milisegundos). Así, si la longitud de la trama es de 16 ms, y hay cuatro tomas (o un filtro adaptable de longitud 4), y si los filtros adaptables se implementan usando filtrado adaptable de subbandas en el dominio de frecuencia, la señal de reproducción se examina en una trama actual, la trama anterior en 16 ms, la trama anterior en 32 ms y la trama anterior en 48 ms al momento actual.
Cada muestra se multiplica por la conjugada compleja de un peso (llamado un peso de toma, W), se suma el peso multiplicado y luego se resta a la señal del micrófono. Cada peso de toma se ajusta para minimizar la potencia de salida. La minimización de la potencia de salida suprime tanto de la señal del altavoz como sea posible, reduciendo por ello los ecos.
La cancelación de ecos acústicos se usó por primera vez en sistemas monoaurales (o mono). La FIG. 1 ilustra un sistema 100 de cancelación de ecos acústicos (AEC) de canal único, usado para procesar una señal de reproducción monoaural. Una señal x 105 de reproducción monoaural se copia en señales iguales multicanal y se reproduce luego a través de un altavoz derecho 110 y un altavoz izquierdo 120. Los ecos 130, 140 de cada uno de los altavoces 110, 120 se reflejan desde una pared 150 en una habitación y son capturados por un micrófono 160. El micrófono también captura el habla deseada 165 (tal como la proveniente de un participante de teleconferencia) y el ruido 170 de fondo.
Los ecos 130, 140, el habla deseada 165 y el ruido 170 de fondo se combinan para construir una señal y de micrófono. La señal y de micrófono es procesada por un primer banco 175 de filtros de análisis y la señal x de reproducción es procesada por un segundo banco 180 de filtros de análisis, de modo tal que las señales x e y sean transformadas, desde el dominio temporal, en señales X e Y, respectivamente, del dominio de frecuencia. Es importante realizar la AEC en el dominio de frecuencia porque los ecos en la AEC son bastante largos y los filtros adaptables convergen más a menudo y más rápidamente en el dominio de frecuencia que en el dominio temporal. Debería observarse que los bancos 175, 180 de filtros de análisis pueden implementarse como cualquier transformación compleja del dominio de frecuencia, tal como una transformación rápida de Fourier (FFT) en ventanas (incluso la ventana de cuadro) o bien, en una realización ejemplar, una transformación compleja modulada por etapas (MCLT).
Las señales X e Y transformadas se ingresan a un procesador 185 monoaural de AEC que usa un filtro adaptable para aprender la función de transferencia de la habitación, a fin de minimizar la señal de error. La señal procesada se envía a un banco 190 de filtros de síntesis que transforma la señal del dominio de frecuencia, de eco reducido, que contiene voz del extremo cercano, nuevamente al dominio temporal. Obsérvese que el procesador monoaural de AEC en la FIG. 1 solamente usa un único filtro adaptable por subbanda.
La FIG. 2 es un diagrama en bloques detallado del procesador monoaural 185 de AEC mostrado en la FIG. 1 para una única subbanda m y trama n. El procesador 185 monoaural de AEC contiene un único filtro adaptable 200 para cada subbanda. Se usa una actualización 210 de coeficientes de filtro adaptable para actualizar los coeficientes procesados del filtro 200 adaptable de subbanda. Cuando la señal x de reproducción monoaural se reproduce para los altavoces 110, 120, según se muestra en la FIG. 1, se implementa el único filtro adaptable 200. En una realización típica, el filtro adaptable usa un algoritmo normalizado de cuadrados medios mínimos (NLMS) con regularización. El algoritmo NLMS con regularización se expone en detalle más adelante.
Al dividir un número entre un segundo número, la regularización es el procedimiento de añadir o restar un pequeño valor al denominador para asegurar que el denominador nunca se vuelva cero, lo que a su vez causaría que la fracción se hiciera infinita. Una manera alternativa de regularizar la fracción es fijar el denominador igual a algún umbral si el denominador es positivo y menor que el umbral. Análogamente, si el denominador es negativo, fijar el denominador en un umbral negativo si es menor que el umbral negativo.
El sistema 100 de AEC de canal único mostrado en la FIG. 1 es solamente para eliminar el eco de una señal de reproducción monoaural. Uno de los primeros artículos en exponer la extensión de la AEC a la estereofonía fue un artículo de M. Sondhi y D. Morgan, titulado “Cancelación de ecos acústicos para teleconferencia estereofónica” en los Procedimientos de las Aplicaciones del Taller de IEEE, Procesamiento de Señales, Acústica de Audio en 1991. Sin embargo, si bien el algoritmo NLMS funciona bien para el problema de AEC monoaural, el NLMS se desempeña malamente en el problema de AEC estereofónica (u otra AEC multicanal). Esto es debido a que el NLMS no considera la correlación entre canales de la señal de reproducción multicanal, lo que aminora significativamente la convergencia de los filtros adaptables.
Sondhi y Morgan sugirieron usar los cuadrados mínimos recursivos (RLS) en lugar del NLMS para resolver el problema de la AEC estereofónica. El algoritmo de RLS es un algoritmo alternativo para ajustar los parámetros (o pesos) de los filtros adaptables. El motivo por el que RLS funciona mejor que NLMS es que RLS tiende a decorrelacionar los canales de reproducción. Como el RLS calcula recursivamente una estimación de la inversa de una matriz de correlación de los datos de altavoz de entrada, puede aprender la correlación entre los canales de altavoz y converger rápidamente a la solución correcta. Shondhi y Morgan, sin embargo, simplemente propusieron usar potencialmente el algoritmo de RLS en lugar de NLMS, pero no proporcionaron ningún detalle.
La FIG. 3 ilustra un sistema 300 de AEC estereofónica usado para procesar una señal de reproducción estereofónica. El sistema 300 de AEC estereofónica mostrado en la FIG. 3 es un sistema basado en subbandas, lo que significa que la señal de altavoz se divide en una pluralidad de subbandas y se suministra un filtro adaptable para cada subbanda. Los filtros adaptables funcionan en paralelo. Debería observarse que la FIG. 3 ilustra el sistema 300 de AEC con una señal de reproducción estereofónica, aunque pueden diseñarse sistemas de AEC que también funcionan para señales de reproducción multicanal. Además, se ilustra un único micrófono en la FIG. 3, pero el sistema 300 de AEC es fácilmente extensible a múltiples micrófonos.
Con referencia a la FIG. 3, la señal x de reproducción estereofónica se compone de dos canales, un canal x(0) 302 estereofónico derecho y un canal x(1) 305 estereofónico izquierdo, para el caso de la reproducción estereofónica. Para
el caso de la AEC multicanal, el caso de reproducción de N canales, la señal estaría compuesta por los canales x(0) a x(N-1). Las señales 302 y 305 de reproducción son convertidas en una señal analógica por un convertidor de digital a analógico (D / A) (no mostrado).
La señal de reproducción multicanal (que incluye la señal estereofónica) puede crearse de varias maneras distintas. La FIG. 4 ilustra el sistema 300 de AEC de la FIG. 3 usado con un sistema de comunicaciones de voz, tal como el Messenger de Windows de Microsoft® o la tertulia de voces para los juegos por Internet. En la FIG. 4, una señal 400 digital de voz monoaural del extremo lejano llega desde un origen. La señal 400 de voz se mezcla localmente con algunos sonidos de audio estereofónico, tales como MúsicaIzquierda 410 y MúsicaDerecha 420, sonidos de juegos de ordenador o los sonidos del sistema del ordenador.
Alternativamente, la FIG. 5 ilustra el caso en que la señal de reproducción multicanal incluye música estereofónica. En este caso, la MúsicaIzquierda 410 se asigna a un canal de reproducción multicanal y la MúsicaDerecha 420 se asigna a otro canal de reproducción multicanal. No hay ninguna voz del extremo lejano que esté mezclada con el sonido multicanal.
En otro caso alternativo, la FIG. 6 ilustra el caso donde la señal multicanal incluye voz monoaural. Esta situación, mostrada en la FIG. 6, puede ser usada para un sistema de Messenger de Windows de Microsoft®. La voz monoaural 600 se copia a cada uno de los canales de reproducción, pero la señal de reproducción multicanal es monoaural.
Con referencia nuevamente a la FIG. 3, las señales 302, 305 de reproducción se reproducen luego mediante un altavoz derecho 310 y un altavoz 320, respectivamente. Un primer eco 330 y un segundo eco 340 se reflejan desde una pared 350 en una habitación (no mostrada) para producir ecos en el micrófono 355. En el caso de múltiples micrófonos, una instancia por separado del sistema 300 de AEC estereofónico puede procesar la señal capturada de cada micrófono independientemente, o bien un algoritmo de AEC podría ser procesado sobre la salida monoaural de un algoritmo de una formación de micrófonos. Además del eco de los altavoces, la señal de audio que es capturada por el micrófono 355 también está compuesta por una voz deseada 360 y el ruido 365 de fondo. La señal de audio analógica capturada por el micrófono 355 es convertida en una señal, y, de micrófono digital por un convertidor de analógico a digital (A /D) (no mostrado).
La cancelación de eco acústico a menudo se lleva a cabo usando un filtrado adaptable de subbandas en base a una transformación del dominio de frecuencia, tal como la transformación rápida por ventanas (FFT) o la transformación modulada compleja por etapas (MCLT). Un primer banco 370 de filtros y un segundo banco 375 de filtros convierten cada una de las señales x(0) y x(1) de reproducción estereofónica, del dominio temporal, respectivamente en las señales X(0) y X(1) del dominio de frecuencia. Análogamente, un tercer banco 380 de filtros de análisis convierte la señal y de micrófono monoaural del dominio temporal en la señal Y del dominio de frecuencia. Las señales son procesadas por el procesador 385 de AEC estereofónico y la salida Z se hace circular por un banco 390 de filtros de síntesis. Se emite luego una señal z del dominio temporal con eco reducido.
La FIG. 7 es un diagrama en bloques detallado del procesador 385 de AEC estereofónico para una única subbanda mostrada en la FIG. 3. El procesador de AEC estereofónico contiene un primer filtro adaptable 700 para la primera señal X(0) de reproducción multicanal y un segundo filtro adaptable 710 para la segunda señal X(1) de reproducción multicanal. Obsérvese que los filtros individuales de canal único funcionan en paralelo en cada subbanda, con independencia de las otras subbandas. Como se ha descrito anteriormente con respecto a la FIG. 3, se procesan las señales X(0), X(1) de reproducción y se usa una actualización 720 de coeficientes de filtro adaptable para actualizar los coeficientes procesados de los filtros 700, 710 de canal único. Se emite luego la señal Z del dominio de frecuencia, con eco reducido.
Sin embargo, un problema del algoritmo de RLS para calcular los pesos de filtros adaptables es que tiene una alta complejidad de cálculo. Esta complejidad es del orden de O(2N^2 + 6N) en comparación con O(2N) para el algoritmo de cuadrados medios mínimos (LMS), donde N = C*L, C es el número de canales de reproducción y L es la longitud del filtro adaptable en la subbanda. Anteriormente, esta complejidad de cálculo del RLS prohibía su uso en la AEC en los sistemas prácticos. Un artículo de B. Hatty titulado “Algoritmos recursivos de cuadrados mínimos que usan sistemas de multitasa para la cancelación de ecos acústicos” en la Conferencia Internacional de 1990 sobre Acústica, Habla y Procesamiento de Señales, 3 al 6 de abril de 1990, vol. 2, páginas 1145 a 1148, fue uno de los primeros artículos que expusieron el uso de un algoritmo rápido de RLS (FRLS) para la AEC monoaural. El FRLS aumenta la velocidad y reduce la complejidad del RLS evitando el uso de una matriz de correlación (u otros tipos cualesquiera de matrices). Un problema, sin embargo, del FRLS es que es bastante inestable. Como resultado de esta inestabilidad, el algoritmo de FRLS puede divergir rápidamente. Ha habido varios intentos de mejorar la estabilidad del FRLS. Sin embargo, a la fecha, nadie ha aportado una solución satisfactoria para el problema de la AEC multicanal. Hatty, en un intento de mejorar la estabilidad del FRLS, propuso usar un esquema de permutación circular reiniciando periódicamente todo el algoritmo de FRLS banda por banda. Lo que Hatty hizo fue reiniciar completamente una banda descartando el estado completo del algoritmo y reiniciándolo desde cero.
El problema de esta técnica de reinicio, sin embargo, es que este reinicio causaba la filtración del eco para la banda
reiniciada, debido a que el algoritmo de FRLS tiene que reconverger y reaprender la función de transferencia de la habitación después de cada reinicio. Además, la técnica de Hatty causaba la distorsión de la señal de reproducción debido al hecho de que, en cualquier momento dado, había al menos una parte del algoritmo reiniciándose.
En 1995, J. Benesty, J., et al., en un artículo titulado “Algoritmos de filtrado adaptable para la cancelación de eco acústico estereofónico” en la publicación Proc. ICASSP’95, páginas 3099 a 3102, usó el RLS rápido (RLS) para intentar resolver el problema de la AEC estereofónica. Sin embargo, el artículo de Benesty sugería usar el FRLS en el dominio temporal en lugar de usar el filtrado adaptable de subbandas.
En otro artículo de J. Benesty, D. Morgan y M. Sondhi titulado “Una mejor comprensión y una solución mejorada de los problemas de la cancelación del eco acústico estereofónico” en la publicación Proc. ICASSP’97, páginas 303 a 306, se propuso una actualización. En el artículo de Benesty de 1997, a fin de decorrelacionar el canal izquierdo del canal derecho (que eran muy similares), Benesty añadió una no linealidad a ambos canales. En una implementación, Benesty añadió la parte positiva de la no linealidad a un canal y la parte inversa (o negativa) de la no linealidad al otro canal. Esta no linealidad introducida forzaba a los canales a ser lo bastante distintos como para que los filtros adaptables pudieran aprender los trayectos individuales. De esta manera, los canales se decorrelacionaron y se hicieron lo bastante distintos como para que pudiera evitarse el problema de falta de unicidad asociado a tener que rastrear las funciones de transferencia del extremo lejano desde la persona del extremo lejano a los micrófonos estereofónicos del extremo lejano, así como las funciones de transferencia del extremo cercano, desde los altavoces del extremo cercano hasta los micrófonos del extremo cercano.
El problema de añadir una no linealidad a la señal (como se hace en el artículo de Benesty de 1997) es que añadir cualquier tipo de no linealidad tiende a distorsionar la señal. Básicamente, añadir una no linealidad es añadir distorsión a la señal. Añadir distorsión, sin embargo, es indeseable si el sistema de AEC ha de funcionar bien con un sistema que implica la reproducción de música. Idealmente, para la reproducción de música, la señal debería estar libre de distorsión, a fin de que la música se reproduzca fielmente.
En el artículo de P. Eneroth, S. Gay, T. Gansler y J. Benesty titulado “Una implementación en tiempo real de un cancelador de eco acústico estereofónico” en las Transacciones de IEEE sobre Voz y Procesamiento de Audio, Vol. 9, nº 5, julio de 2001, páginas 513 a 523, se propone una solución al problema de la AEC estereofónica usando el FRLS en las subbandas y añadiendo no linealidades a los canales de reproducción. Este artículo intenta aumentar la estabilidad ejecutando estructuras paralelas del algoritmo de FRLS, de modo tal que, cuando una de las estructuras “estalle” o se desestabilice, puedan recaer en otra estructura que sea menos que óptima. Esta implementación les ayuda a reinicializar el algoritmo.
En 1990, cuando el artículo de Hatty de 1990 proponía usar el FRLS para el procesamiento adaptable de AEC de subbandas, los microprocesadores eran mucho más lentos que los microprocesadores de hoy. Como resultado, el RLS no era una solución práctica para el problema de AEC multicanal. Sin embargo, con el significativo aumento en la velocidad de los microprocesadores modernos, el RLS puede usarse ahora. Sin embargo, el algoritmo de RLS se desestabilizará y divergirá si la matriz de correlación de la señal de reproducción multicanal se vuelve singular.
Por lo tanto, lo que se necesita es un sistema y procedimiento de cancelación de ecos que puedan usarse para una señal de reproducción multicanal. Además, lo que se necesita es un sistema y procedimiento de cancelación de ecos multicanal que eviten el uso del FRLS para impedir que el sistema se vuelva inestable. Además, lo que se necesita es un sistema y procedimiento de cancelación de ecos multicanal que eviten el uso del agregado de distorsión a la señal de reproducción. Lo que también se necesita es un sistema y procedimiento de cancelación de ecos multicanal que eviten y superen los problemas del algoritmo de RLS expuesto anteriormente, para eliminar efectivamente el eco conservando a la vez una reproducción fiel de la señal original.
El documento de BENESTY, J. ET AL.: “UN CANCELADOR HÍBRIDO DE ECO ACÚSTICO MONOAURAL / ESTEREOFÓNICO”, TRANSACCIONES DEL IEEE SOBRE VOZ Y PROCESAMIENTO DE AUDIO, CENTRO DE SERVICIOS DEL IEEE, Nueva York, NY, EE UU, vol. 6, nº 5, septiembre de 1998 (1998-09), páginas 468 a 475, XP000775780 ISSN: 1063-6676, concierne a un cancelador híbrido de eco acústico (AEC) monoaural / estereofónico, donde se usa un sonido estereofónico con una AEC estereofónica a bajas frecuencias y se usa un sonido monofónico con una AEC monoaural a mayores frecuencias.
El documento de S. L. GAY, “RLS RÁPIDO DINÁMICAMENTE REGULARIZADO CON APLICACIÓN A LA CANCELACIÓN DEL ECO”, CONFERENCIA INTERNACIONAL DE 1996 DEL IEEE SOBRE ACÚSTICA, VOZ Y PROCESAMIENTO DE SEÑALES - ANALES (ICASSP), ATLANTA, 7 al 10 de Mayo, revela un procedimiento para estabilizar el filtro adaptable de cuadrados mínimos recursivos de un procedimiento de cancelación de eco.
El documento de E. CHAU ET AL. “REDUCCIÓN DE COMPLEJIDAD Y REGULARIZACIÓN DE UN ALGORITMO DE PROYECCIÓN AFÍN RÁPIDA PARA FILTROS ADAPTABLES DE SUBBANDAS SOBREMUESTREADAS”, Acústica, Voz y Procesamiento de Señales, 2004. Anales (ICASSP ’04). Conferencia Internacional del IEEE en Montreal,
Quebec, Canadá, 17 al 21 de mayo de 2004, revela la aplicación de la regularización dentro de un cancelador de eco basado en subbandas.
Es el objeto de la presente invención proporcionar un procedimiento mejorado para cancelar ecos de una pluralidad de señales de reproducción en una señal capturada.
Este objeto es logrado por la materia en cuestión de la reivindicación independiente.
Las realizaciones preferidas están definidas por las reivindicaciones dependientes.
La invención revelada en el presente documento incluye un sistema y procedimiento de cancelación de eco multicanal con regularización por permutación circular. La presente invención puede usarse en señales tanto monoaurales como multicanal, y supera las deficiencias precitadas de los algoritmos actuales de filtro adaptable (tales como el RLS). En particular, la regularización por permutación circular asegura que el algoritmo de filtro adaptable no se singulariza ni estalla, regularizando la matriz de correlación del algoritmo de filtro adaptable. Esta regularización se lleva a cabo en forma de permutación circular. En otras palabras, se regulariza la matriz de correlación inversa de los datos de reproducción de subbandas asociados a cada filtro adaptable, en una secuencia de permutación circular, para impedir que diverja la matriz de correlación inversa. En una realización alternativa, cada matriz de correlación inversa es examinada en busca de divergencia. Si la matriz de correlación inversa comienza a divergir, entonces se regulariza la matriz.
El procedimiento de cancelación de eco con regularización por permutación circular multicanal incluye la obtención de una señal capturada que contiene eco de una pluralidad de señales de reproducción. La pluralidad de señales de reproducción se descompone en una pluralidad de subbandas, y una pluralidad de filtros adaptables se aplica a las subbandas. Cada filtro adaptable tiene una matriz de correlación inversa. Luego, se selecciona cada uno entre la pluralidad de filtros adaptables en una secuencia de permutación circular, de modo que en cada ronda se seleccione cada uno de los filtros. La matriz de correlación inversa asociada a cada filtro adaptable seleccionado se regulariza luego. El filtro adaptable regularizado se usa luego para eliminar el eco de la señal capturada.
La regularización de la matriz de correlación inversa puede lograrse regularizando la matriz de correlación. De esa manera, puede invertirse la matriz de correlación inversa, regularizarse luego la matriz de correlación e invertirse luego la matriz de correlación regularizada para obtener una matriz de correlación inversa regularizada.
La matriz de correlación puede regularizarse de al menos dos maneras. Una manera es añadir un valor pequeño a los elementos diagonales de la matriz de correlación cada vez que se regulariza la matriz. Esto garantiza que la matriz de correlación inversa no diverja. Otra manera es definir un valor de umbral y examinar cada elemento diagonal de la matriz de correlación. Toda vez que haya un peligro de división entre cero, entonces el elemento diagonal de la matriz de correlación se fija igual al valor de umbral. Si el elemento diagonal de la matriz de correlación es mayor que el valor de umbral, no se hace nada a ese elemento en la matriz de correlación.
La regularización se implementa en forma de permutación circular. Cada subbanda en el sistema se selecciona a su vez, a fin de que pueda examinarse el filtro adaptable para esa subbanda. Este examen puede incluir determinar si la regularización es necesaria en ese momento. El esquema de permutación circular se usa para asegurarse de que cada subbanda sea examinada con regularidad. El esquema de permutación circular puede implementarse de modo tal que se examine una única subbanda para cada trama. Alternativamente, el esquema de permutación circular puede implementarse de modo tal que se examinen varias de, o incluso todas, las subbandas por trama. Además, el esquema de permutación circular puede implementarse de modo tal que se examine una subbanda cada varias tramas.
Otra característica del sistema y procedimiento de cancelación de eco multicanal revelados en el presente documento es la conmutación dinámica entre la cancelación de eco monoaural y multicanal. En particular, esta característica proporciona la permutación dinámica entre un algoritmo de AEC monoaural (tal como el de cuadrados medios mínimos normalizados (NLMS)) y el algoritmo de AEC de la invención para múltiples canales, con una reinicialización eficaz del algoritmo de cancelación de eco de la invención. La conmutación es dinámica, de modo tal que muy poco, o ningún, eco se filtre, debido a la reinicialización eficaz del algoritmo de RLS. Esto se logra compartiendo variables de estado y usando una novedosa técnica de estimación para estimar la matriz de correlación inversa para el algoritmo de RLS, usando la regularización por permutación circular. Esto permite que la invención conmute desde el NMLS (monoaural) de vuelta al RLS (multicanal) sin ninguna filtración de ecos.
Otra característica adicional del sistema y procedimiento de cancelación de eco multicanal, revelados en el presente documento, es el procesamiento mixto para las subbandas inferiores y superiores. En particular, a fin de reducir las demandas de recursos de la CPU, se usa el RLS de regularización por permutación circular en las subbandas inferiores, mientras que se usa el procesamiento de NLMS en las subbandas superiores. Tanto la pluralidad de señales de reproducción como la señal capturada se dividen primero en subbandas inferiores (que contienen las frecuencias inferiores de la señal) y las subbandas superiores (que contienen las frecuencias mayores de la señal). En las subbandas inferiores, se usa la cancelación de eco con regularización por permutación circular del RLS revelado en el presente documento. En las subbandas superiores, se usa el procesamiento del NMLS. El NMLS usa menos recursos de CPU y se usa en las subbandas superiores porque el efecto estereofónico se atenúa en estas frecuencias. En frecuencias inferiores, donde el efecto estereofónico es más evidente, se usa la regularización superior por permutación circular del RLS de la invención.
Breve descripción de los dibujos
La presente invención puede comprenderse adicionalmente con referencia a la siguiente descripción y a los dibujos adjuntos que ilustran aspectos de la invención. Otras características y ventajas serán evidentes a partir de la siguiente descripción detallada de la invención, considerada conjuntamente con los dibujos adjuntos, que ilustran, a modo de ejemplo, los principios de la presente invención.
Con referencia ahora a los dibujos, en los cuales los números de referencia iguales representan partes correspondientes en toda su extensión:
La FIG. 1 ilustra un sistema de cancelación de eco acústico (AEC) de canal único de la tecnología anterior, usado para procesar una señal de reproducción monoaural.
La FIG. 2 es un diagrama en bloques detallado del procesador de AEC monoaural mostrado en la FIG. 1.
La FIG. 3 ilustra un sistema de AEC estereofónico de la tecnología anterior, usado para procesar una señal de reproducción estereofónica.
La FIG. 4 ilustra el sistema de AEC de la FIG. 3, usado con un sistema de comunicaciones de voz.
La FIG. 5 ilustra el sistema de AEC de la FIG. 3, donde la señal de reproducción multicanal incluye música estereofónica.
La FIG. 6 ilustra el sistema de AEC de la FIG. 3, donde la señal de reproducción multicanal incluye voz monoaural.
La FIG. 7 es un diagrama en bloques detallado del procesador de AEC estereofónico mostrado en la FIG. 3.
La FIG. 8 es un diagrama en bloques que ilustra una implementación ejemplar del sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, revelados en el presente documento.
La FIG. 9 ilustra un ejemplo de un entorno de sistema informático adecuado en el cual pueden implementarse el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, mostrados en la FIG. 8.
La FIG. 10 es un diagrama general de flujo que ilustra el funcionamiento general del sistema de cancelación de eco con regularización por permutación circular multicanal mostrado en la FIG. 8.
La FIG. 11 es un diagrama general de flujo que ilustra una implementación ejemplar de un esquema de permutación circular del procedimiento de cancelación de eco con regularización por permutación circular multicanal mostrado en la FIG. 10.
La FIG. 12 es un diagrama de flujo y en bloques que ilustra una implementación ejemplar del sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, mostrados en la FIG. 8.
La FIG. 13 es un diagrama de flujo y en bloques que ilustra otra implementación ejemplar del sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, mostrados en la FIG. 8.
La FIG. 14 ilustra el procesamiento de las subbandas mixtas inferiores / superiores, usando el procedimiento con regularización por permutación circular multicanal descrito en el presente documento.
Descripción detallada de la invención
En la siguiente descripción de la invención, se hace referencia a los dibujos adjuntos, que forman parte de la misma, y en los cuales se muestra, a modo de ilustración, un ejemplo específico, por el cual puede ponerse en práctica la invención. Ha de entenderse que pueden utilizarse otras realizaciones y que pueden hacerse cambios estructurales sin apartarse del alcance de la presente invención.
I. Introducción
Las técnicas actuales para la cancelación de ecos de señales padecen una gran variedad de inconvenientes. Por ejemplo, los cuadrados medios mínimos normalizados (NLMS) son útiles cuando la señal es una señal monoaural, pero
no funcionan bien en señales de reproducción multicanal correlacionadas. El procesamiento de la señal de reproducción multicanal con una no linealidad decorrelaciona los canales individuales, pero añade una distorsión indeseable a las señales de reproducción. Esto es inaceptable cuando las señales de reproducción contienen música que a un usuario le gustaría oír en su versión original no distorsionada. Los cuadrados mínimos recursivos (RLS) y los cuadrados mínimos recursivos rápidos (FRLS) también ayudan a decorrelacionar señales de reproducción multicanal. Sin embargo, el algoritmo FRLS puede ser extremadamente inestable. El RLS es de consumo intenso en términos de cálculo y puede volverse inestable para señales de reproducción sumamente correlacionadas.
El procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal revelados en el presente documento superan estos problemas de los procedimientos actuales. El procedimiento de cancelación de eco con regularización por permutación circular multicanal procesa una señal de reproducción multicanal (tal como una señal acústica) usando una pluralidad de filtros adaptables de cuadrados mínimos recursivos (RLS), y usando un esquema de regularización por permutación circular para garantizar que el algoritmo de RLS permanezca estable. La estabilidad se garantiza regularizando la matriz de correlación inversa en el algoritmo de RLS en modo de permutación circular, subbanda por subbanda. Esencialmente, la regularización por permutación circular garantiza que el determinante de la matriz de correlación inversa para los filtros adaptables de RLS, en cada una entre la pluralidad de subbandas, no “estalle” (o alcance un gran valor).
El procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal proporcionan una manera novedosa de impedir que la matriz de correlación inversa diverja, causando por ello que diverja el filtro adaptable de RLS. La matriz de correlación inversa se regulariza periódicamente para cada subbanda, en base a un esquema de permutación circular, a fin de garantizar que al algoritmo no diverja cuando los canales de la señal de altavoz sean dependientes.
El procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal también incluyen una característica novedosa que permite la conmutación dinámica entre un procedimiento multicanal de cancelación de eco de subbanda (tal como el procedimiento de regularización por permutación circular de RLS descrito en el presente documento) y un procedimiento de cancelación de eco de subbanda de canal único (usando un algoritmo de filtrado adaptable tal como uno de cuadrados medios mínimos normalizados (NLMS)). La conmutación dinámica se logra con una reinicialización eficaz de cualquiera de los procedimientos, para minimizar la distorsión al conmutar desde el procesamiento multicanal al procesamiento monoaural, y viceversa. El procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal también incluyen otra característica de un tipo de procesamiento de las subbandas inferiores, usando RLS y NLMS en las subbandas superiores. Esto permite que el procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal funcionen en entornos donde está limitada la potencia de procesamiento.
II. Visión General
La FIG. 8 es un diagrama en bloques que ilustra una implementación ejemplar del sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, revelados en el presente documento. Debería observarse que la FIG. 8 es una entre varias maneras en las cuales pueden implementarse y usarse el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal.
Con referencia a la FIG. 8, un sistema 800 de cancelación de eco con regularización por permutación circular multicanal reside en un dispositivo 810 informático. En la FIG. 8, las señales de reproducción P(1), P(2) a P(N) son generadas internamente (tal como la música desde un disco compacto) por el sistema 800. En una realización alternativa, las señales de reproducción P(1), P(2) a P(N) son externas y recibidas (tal como mediante clavijas de audio de entrada) por el sistema 800. Cada señal de reproducción es reproducida por su respectivo altavoz, de modo que P(1) se reproduce a través del altavoz S(1), P(2) se reproduce a través del altavoz S(2), y así sucesivamente. Además, se obtienen las señales de reproducción P(1) a P(N) y se ingresan al sistema 800 de cancelación de eco con regularización por permutación circular multicanal.
Según lo mostrado por las líneas discontinuas en la FIG. 8, la salida de los altavoces S(1) a S(N) causa que los ecos 820, 830, 840 se reflejen desde una pared 850 de una habitación (no mostrada). Estos ecos 820, 830, 840 son recogidos por un micrófono 860. Además, el micrófono recoge la voz deseada 870 y el ruido 880 de fondo. La señal desde el micrófono 865, también llamada la “señal capturada”, junto con las salidas de las señales de reproducción P(1) a P(N), se ingresan al sistema 800 de cancelación de eco con regularización por permutación circular multicanal. Después del procesamiento por parte del sistema 800 de cancelación de eco con regularización por permutación circular multicanal, se genera una nueva señal 890 de salida. La señal 890 de salida es la señal capturada 865 con ecos reducidos de las señales 820, 830 y 840 de altavoz.
Debería observarse que la invención no está limitada a señales acústicas. En general, puede haber N transmisores S(1) a S(N) y un receptor 860, y el sistema de cancelación de eco con regularización por permutación circular multicanal reducirá la magnitud de la señal transmitida en la señal 890 de salida.
También debería observarse que la invención no está limitada a un único receptor o micrófono 860. El dispositivo informático 810 puede estar conectado con una pluralidad de receptores 860, produciendo una pluralidad de señales
865. Cada una entre la pluralidad de señales 865 sería objeto de operación por parte de una única instancia independiente del sistema 800 de cancelación de eco con regularización por permutación circular multicanal. Cada una de esas instancias únicas produciría entonces una única salida con eco reducido 890.
III. Entorno operativo ejemplar
El sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal están diseñados para funcionar en un entorno de cálculo y en un dispositivo informático tal como el dispositivo informático 810 mostrado en la FIG. 8. El entorno de cálculo en el cual funcionan el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal se expondrá a continuación. La siguiente exposición está concebida para proporcionar una breve descripción general de un entorno informático adecuado en el cual puedan implementarse el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal.
La FIG. 9 ilustra un ejemplo de un entorno informático adecuado en el cual pueden implementarse el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, mostrados en la FIG. 8. El entorno 900 de sistema informático es solamente un ejemplo de un entorno informático adecuado y no está concebido para sugerir ninguna limitación en cuanto al alcance del uso o la funcionalidad de la invención. Tampoco debería interpretarse que el entorno informático 900 tenga dependencia o requisito alguno con respecto a cualquiera, o una combinación, de los componentes ilustrados en el entorno operativo ejemplar 900.
El sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal son operables con otros numerosos entornos o configuraciones de sistema informático de propósito general o de propósito especial. Los ejemplos de sistemas, entornos y / o configuraciones informáticos bien conocidos, que pueden ser adecuados para su uso con el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal, incluyen, pero no se limitan a, los ordenadores personales, los ordenadores servidores, los dispositivos de ordenador o de comunicaciones de mano, portátiles o móviles, tales como los teléfonos celulares y las agendas electrónicas, los sistemas multiprocesadores, los sistemas basados en microprocesadores, los equipos de sobremesa, los artículos electrónicos programables de consumo, los ordenadores personales en red, los miniordenadores, los ordenadores centrales, los entornos informáticos distribuidos que incluyen a cualquiera de los sistemas o dispositivos anteriores, y similares.
El sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal pueden describirse en el contexto general de instrucciones ejecutables por ordenador, tales como módulos de programa, ejecutadas por un ordenador. En general, los módulos de programa incluyen rutinas, programas, objetos, componentes, estructuras de datos, etc., que realizan tareas específicas o implementan tipos específicos de datos abstractos. El sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal también pueden ponerse en práctica en entornos informáticos distribuidos donde las tareas son realizadas por dispositivos de procesamiento remoto que están enlazados a través de una red de comunicaciones. En un entorno informático distribuido, los módulos de programa pueden situarse en medios de almacenamiento de ordenadores tanto locales como remotos, incluso dispositivos de almacenamiento en memoria. Con referencia a la FIG. 9, un sistema ejemplar para implementar el sistema y procedimiento de cancelación de eco con regularización por permutación circular multicanal incluye un dispositivo informático de propósito general en forma de un ordenador 910.
Los componentes del ordenador 910 pueden incluir, pero no se limitan a, una unidad 920 de procesamiento, una memoria 930 de sistema y un bus 921 de sistema que acopla diversos componentes de sistema, incluso la memoria del sistema, con la unidad 920 de procesamiento. El bus 921 de sistema puede ser de cualquiera entre varios tipos de estructuras de bus que incluyen un bus de memoria o un controlador de memoria, un bus periférico y un bus local, usando una cualquiera entre una gran variedad de arquitecturas de bus. A modo de ejemplo, y no de limitación, tales arquitecturas incluyen el bus de Arquitectura Estándar Industrial (ISA), el bus de Arquitectura de Micro Canal (MCA), el bus de ISA Mejorado (EISA), el bus local de la Asociación de Estándares de Electrónica de Vídeo (VESA) y el bus de Interconexión de Componentes Periféricos (PCI), también conocido como el bus Entresuelo.
El ordenador 910 incluye habitualmente una gran variedad de medios legibles por ordenador. Los medios legibles por ordenador pueden ser medios disponibles cualesquiera a los que pueda acceder el ordenador 910, e incluyen medios tanto volátiles como no volátiles, y medios extraíbles y no extraíbles. A modo de ejemplo, y no de limitación, los medios legibles por ordenador pueden comprender medios de almacenamiento de ordenador y medios de comunicación. Los medios de almacenamiento de ordenador incluyen medios volátiles y no volátiles, extraíbles y no extraíbles, implementados en cualquier procedimiento o tecnología para el almacenamiento de información, tal como instrucciones legibles por ordenador, estructuras de datos, módulos de programa u otros datos.
Los medios de almacenamiento de ordenador incluyen, pero no se limitan a, memoria RAM, ROM, EEPROM, flash u
otra tecnología de memoria, CD-ROM, discos versátiles digitales (DVD) u otro almacenamiento en disco óptico, casetes magnéticos, cinta magnética, almacenamiento de disco magnético u otros dispositivos de almacenamiento magnético,
o cualquier otro medio que pueda usarse para almacenar la información deseada y a la que pueda acceder el ordenador 910. Los medios de comunicación realizan habitualmente instrucciones legibles por ordenador, estructuras de datos, módulos de programa u otros datos en una señal de datos modulada, tal como una onda portadora u otro mecanismo de transporte, e incluyen a cualquier medio de entrega de información.
Obsérvese que el término “señal de datos modulada” significa una señal que tiene una o más de sus características fijada o cambiada de modo tal como para codificar información en la señal. A modo de ejemplo, y no de limitación, los medios de comunicación incluyen medios cableados tales como una red cableada o una conexión con cableado directo, y medios inalámbricos tales como medios acústicos, de Frecuencia de Radio, infrarrojos u otros medios inalámbricos. Las combinaciones de cualesquiera de los anteriores también deberían incluirse dentro del alcance de los medios legibles por ordenador.
La memoria 930 del sistema incluye medios de almacenamiento de ordenador en forma de memoria volátil y / o no volátil, tal como la memoria de sólo lectura (ROM) 931 y la memoria de acceso aleatorio (RAM) 932. Un sistema 933 de entrada / salida básica (BIOS), que contiene las rutinas básicas que ayudan a transferir información entre elementos dentro del ordenador 910, tal como durante el arranque, se almacena habitualmente en la memoria ROM 931. La memoria RAM 932 contiene habitualmente datos y / o módulos de programa que son inmediatamente accesibles a, y /
o que están siendo actualmente objeto de operación por parte de, la unidad 920 de procesamiento. A modo de ejemplo, y no de limitación, la FIG. 9 ilustra el sistema operativo 934, los programas 935 de aplicación, otros módulos 936 de programa y los datos 937 de programa.
El ordenador 910 también puede incluir otros medios de almacenamiento de ordenador, extraíbles / no extraíbles y volátiles / no volátiles. A modo de ejemplo solamente, la FIG. 9 ilustra un controlador 941 de disco rígido que lee de, o escribe en, medios magnéticos no extraíbles, no volátiles, un controlador 951 de disco magnético que lee de, o escribe en , un disco magnético 952 extraíble no volátil, y un controlador 955 de disco óptico que lee de, o escribe en, un disco óptico 956 extraíble no volátil, tal como un CD ROM u otros medios ópticos.
Otros medios de almacenamiento de ordenador extraíbles / no extraíbles, volátiles / no volátiles, que pueden usarse en el entorno operativo ejemplar incluyen, pero no se limitan a, casetes de cinta magnética, tarjetas de memoria flash, discos versátiles digitales, cinta de vídeo digital, memoria RAM de estado sólido, memoria ROM de estado sólido y similares. El controlador 941 de disco rígido está habitualmente conectado con el bus 921 del sistema a través de una interfaz de memoria no extraíble, tal como la interfaz 940, y el controlador 951 de disco magnético y el controlador 955 de disco óptico están habitualmente conectados con el bus 921 del sistema por una interfaz de memoria extraíble, tal como la interfaz 950.
Los controladores y sus medios asociados de almacenamiento de ordenador, expuestos anteriormente e ilustrados en la FIG. 9, proporcionan almacenamiento de instrucciones legibles por ordenador, estructuras de datos, módulos de programa y otros datos para el ordenador 910. En la FIG. 9, por ejemplo, el controlador 941 de disco rígido se ilustra almacenando el sistema operativo 944, los programas 945 de aplicación, otros módulos 946 de programa y los datos 947 de programa. Obsérvese que estos componentes pueden ser bien los mismos o bien distintos al sistema operativo 934, los programas 935 de aplicación, los otros módulos 936 de programa y los datos 937 de programa. El sistema operativo 944, los programas 945 de aplicación, los otros módulos 946 de programa y los datos 947 de programa reciben números distintos aquí para ilustrar que, como mínimo, son copias distintas. Un usuario puede ingresar comandos e información en el ordenador 910 mediante dispositivos de entrada tales como un teclado 962 y un dispositivo 961 de puntero, usualmente denominado ratón, una bola de rastreo o panel táctil.
Otros dispositivos de entrada (no mostrados) pueden incluir un micrófono, palanca de juegos, panel de juegos, disco de satélite, escáner, receptor de radio o un receptor de televisión o vídeo emitido, o similares. Estos y otros dispositivos de entrada están frecuentemente conectados con la unidad 920 de procesamiento a través de una interfaz 960 de entrada de usuario que está acoplada con el bus 921 del sistema, pero pueden estar conectados por otras estructuras de interfaz y de bus, tales como, por ejemplo, un puerto paralelo, un puerto de juegos o un bus universal en serie (USB). Un monitor 991 u otro tipo de dispositivo visor también está conectado con el bus 921 del sistema mediante una interfaz, tal como una interfaz 990 de vídeo. Además del monitor, los ordenadores también pueden incluir otros dispositivos periféricos de salida tales como los altavoces 997 y la impresora 996, que pueden estar conectados a través de una interfaz 995 periférica de salida.
El ordenador 910 puede funcionar en un entorno en red, usando conexiones lógicas con uno o más ordenadores remotos, tales como un ordenador remoto 980. El ordenador remoto 980 puede ser un ordenador personal, un servidor, un encaminador, un ordenador personal en red, un dispositivo a la par u otro nodo común de red, y habitualmente incluye muchos de, o todos, los elementos descritos anteriormente con respecto al ordenador 910, aunque solamente un dispositivo 981 de almacenamiento de memoria ha sido ilustrado en la FIG. 9. Las conexiones lógicas ilustradas en la FIG. 9 incluyen una red de área local (LAN) 971 y una red de área amplia (WAN) 973, pero también pueden incluir
otras redes. Tales entornos de red son habituales en oficinas, redes de ordenadores de ámbito empresarial, intranets e Internet.
Cuando se usa en un entorno de red LAN, el ordenador 910 está conectado con la LAN 971 a través de un interfaz de red o adaptador 970. Cuando se usa en un entorno de red WAN, el ordenador 910 incluye habitualmente un módem 972 u otro medio para establecer comunicaciones por la WAN 973, tal como Internet. El módem 972, que puede ser interno o externo, puede conectarse con el bus 921 del sistema mediante la interfaz 960 de entrada de usuario, u otro mecanismo adecuado. En un entorno en red, los módulos de programa ilustrados con respecto al ordenador 910, o partes de los mismos, pueden almacenarse en el dispositivo de almacenamiento de memoria remota. A modo de ejemplo, y no de limitación, la FIG. 9 ilustra los programas 985 de aplicación remota como residentes en el dispositivo 981 de memoria. Se apreciará que las conexiones de red mostradas son ejemplares y que pueden usarse otros medios de establecer un enlace de comunicaciones entre los ordenadores.
IV. Panorama operativo
El funcionamiento del sistema 800 de cancelación de eco con regularización por permutación circular multicanal, mostrado en la FIG. 8, se expondrá a continuación. La FIG. 10 es un diagrama general de flujo que ilustra el funcionamiento general del sistema de cancelación de eco con regularización por permutación circular multicanal mostrado en la FIG. 8. El procedimiento de cancelación de eco con regularización por permutación circular multicanal comienza descomponiendo una pluralidad de señales de reproducción en una pluralidad de señales de subbanda (cuadro 1000). Cada una de estas señales puede corresponder a un canal de reproducción. Luego, se aplica una pluralidad de filtros adaptables, cada uno con una matriz de correlación inversa, a la pluralidad de las señales de subbanda (cuadro 1010). Cada uno entre la pluralidad de filtros adaptables es seleccionado en una secuencia de permutación circular, de modo que cada uno de los filtros sea seleccionado a su vez (cuadro 1020). La matriz de correlación inversa asociada a cada filtro adaptable seleccionado se regulariza luego (cuadro 1030). Como se explica en detalle más adelante, la regularización significa procesar la matriz de correlación inversa de modo que el determinante de la matriz de correlación no esté cerca del cero. El filtro adaptable regularizado se usa entonces para reducir el eco en la señal capturada 865 proveniente de la pluralidad de señales de reproducción (cuadro 1040).
V. Detalles operativos y ejemplo de trabajo
El procedimiento de cancelación de eco con regularización por permutación circular multicanal mostrado en la FIG. 10 usa un esquema de permutación circular y la regularización para garantizar que los filtros adaptables en el algoritmo de cancelación de eco no diverjan cuando los canales de reproducción sean dependientes. Como se ha observado anteriormente, el procedimiento incluye implementar un esquema de permutación circular de la selección de cada filtro adaptable de una subbanda, y regularizar luego la matriz de correlación inversa para ese filtro adaptable seleccionado. Juntos, el esquema de permutación circular y el procedimiento de regularización componen el procedimiento de regularización por permutación circular del procedimiento de cancelación de eco con regularización por permutación circular multicanal. Se expondrán ahora diversas maneras de implementar el esquema de permutación circular y la regularización. La exposición incluye ejemplos de trabajo ejemplares de las implementaciones probadas de un esquema de permutación circular y un procedimiento de regularización. En particular, se presenta un ejemplo de trabajo ejemplar del procedimiento de cancelación de eco con regularización por permutación circular multicanal usando regularización en permutación circular en un algoritmo de cuadrados mínimos recursivos (RLS). Debería observarse que este ejemplo de trabajo es solamente una manera en la cual puede implementarse el procedimiento de regularización por permutación circular.
Descripción matemática de los procedimientos de filtrado adaptable
Para un único canal de datos de reproducción, el algoritmo NLMS con regularización es el siguiente:
Para cada trama de datos de audio, n = 1, 2, …, y cada subbanda m = 0, …, M-1, calcular
donde � es la señal de error entre la señal de micrófono, Y(n,m) es el eco estimado, �* es la conjugada de la señal de error,
son los coeficientes de filtro de eco estimados en el dominio de transformación, L es el número de tomas en el filtro de eco estimado,
es un vector columna de las más recientes L muestras de reproducción del dominio de frecuencia, µ es el tamaño del paso, �NLMS es el factor de regularización y PEst(n,m) es la estimación de la potencia en la m-ésima banda. Por ejemplo, PEst(n,m) puede hallarse como
donde ||X(n,m)||2 es el cuadrado de la magnitud de la señal compleja de altavoz X(n,m) y a es el parámetro 10 promediador.
Al dividir un número entre un segundo número, la regularización es el procedimiento de añadir o restar un valor pequeño al denominador para garantizar que el denominador nunca se vuelva cero y cause que la fracción se vuelva infinita. En la ecuación (2), �NLMS es el factor de regularización que garantiza que el denominador nunca llega al cero.
�NLMS se añade a PEst(n,m), ya que PEst(n,m) es una estimación de potencia y es siempre positivo. Una manera
15 alternativa de regularizar la fracción es fijar el denominador en algún umbral si el denominador es positivo y menor que el umbral.
Un problema de usar el algoritmo de NLMS para las señales de reproducción multicanal es que el NLMS no funciona muy bien. Esto es debido a que la correlación entre canales de la señal de reproducción multicanal aminora significativamente la convergencia de los filtros adaptables. Los cuadrados mínimos recursivos (RLS) son un algoritmo
20 alternativo para ajustar los parámetros (o pesos) de los filtros adaptables. Una de las principales ventajas del RLS es que tiende a decorrelacionar los canales. Dado que el RLS calcula recursivamente una estimación de la inversa de una matriz de correlación de los datos de altavoz de entrada multicanal, puede aprender la correlación entre los canales de altavoz y converger rápidamente a la solución correcta. Para señales de altavoz multicanal, el algoritmo de RLS es el siguiente:
Para cada trama n = 1, 2, … y subbanda m = 0, …, M-1, calcular
donde 5 es una constante pequeña, I es la matriz identidad, 5
es el vector de ganancia multicanal de Kalman, C es el número de canales de reproducción, L es la longitud del filtro en la subbanda,
es el vector de entrada de altavoz multicanal, P(n,m) es la inversa de la matriz R(n,m) de correlación de señales de altavoz de entrada,
A es el factor de olvido exponencial,
es el vector de peso y * es la conjugada del error.
Debería observarse que el filtro adaptable de RLS almacena y actualiza la matriz P de correlación inversa para cada subbanda. Esto se denomina en este documento “tener una matriz de correlación inversa”.
Esquema de permutación circular
En general, el esquema de permutación circular, según se usa en el procedimiento de cancelación de eco con regularización por permutación circular multicanal, garantiza que cada subbanda en el sistema sea seleccionada, a fin de que el filtro adaptable para esa subbanda pueda regularizarse. Alternativamente, el filtro adaptable puede ser examinado para determinar si la regularización es o no necesaria en ese momento. El esquema de permutación circular se usa para asegurarse de que cada subbanda sea examinada con regularidad.
El esquema de permutación circular puede implementarse de una gran variedad de maneras distintas. A modo de ejemplo, y no de limitación, un esquema de permutación circular puede describirse como aquel donde se regulariza una única subbanda en cada trama. Alternativamente, el esquema de permutación circular puede incluir regularizar varias de, o incluso todas, las subbandas por trama. En otra implementación, el esquema de permutación circular puede incluir regularizar una subbanda cada varias tramas. Según el esquema efectivo de permutación circular implementado, se actualiza un contador que está apuntando a la subbanda actual bajo examen, para que apunte a la próxima subbanda o grupo de bandas bajo examen y se reinicie a la primera banda si es necesario.
La FIG. 11 es un diagrama general de flujo que ilustra una implementación ejemplar de un esquema de permutación circular del procedimiento de cancelación de eco con regularización por permutación circular multicanal mostrado en la FIG. 10. Según se muestra en la FIG. 11, el esquema de permutación circular comienza ingresando una trama actual (cuadro 1100). Se selecciona luego una subbanda para su regularización (cuadro 1110). En esta realización, se selecciona cada subbanda a su vez según se ingresa una nueva trama actual. Sin embargo, en realizaciones alternativas, una única subbanda puede seleccionarse solamente cada pocas tramas, o bien pueden seleccionarse varias subbandas por trama.
La matriz de correlación inversa para la subbanda seleccionada se invierte para obtener la matriz de correlación para la subbanda seleccionada (cuadro 1120). La matriz de correlación se regulariza luego (cuadro 1130). En una realización alternativa, el cuadro 1130 examina primero la matriz de correlación para determinar si necesita o no ser regularizada, y luego regulariza solamente cuando es necesario. Luego, se reinvierte la matriz de correlación regularizada (cuadro 1140) y se almacena la matriz de correlación inversa regularizada para la subbanda seleccionada (cuadro 1150). Finalmente, todos los filtros adaptables para todas las subbandas se aplican a la pluralidad de subbandas y señales de reproducción para reducir el eco en la señal capturada (cuadro 1160). El control fluye luego de vuelta al cuadro 1100, que obtiene la próxima trama actual.
Regularización por permutación circular
A fin de entender más cabalmente el procedimiento de regularización por permutación circular revelado en el presente documento, se proporciona la siguiente exposición. La exposición incluye un ejemplo de trabajo ejemplar de una implementación probada del procedimiento de regularización por permutación circular en un algoritmo de cuadrados mínimos recursivos (RLS). Debería observarse que este ejemplo de trabajo es solamente una manera en que puede implementarse el procedimiento de regularización por permutación circular.
En general, el procedimiento de regularización por permutación circular impide que la matriz de correlación para cada filtro adaptable se vuelva singular. Esta regularización garantiza que la matriz de correlación inversa no se volverá inestable. En una implementación ejemplar, se usó la regularización por permutación circular con un algoritmo de RLS. Los detalles de esta implementación son los siguientes.
En general, el RLS es un procedimiento rápido para resolver la ecuación normal
donde w0 es el vector de peso óptimo, R es la matriz de correlación para los datos de altavoz de entrada dados en la ecuación (9) y p es el vector de correlación cruzada entre los datos de altavoz de entrada y los datos de micrófono.
Si R comienza a volverse singular, entonces los valores en su inversa se vuelven muy grandes y no puede hallarse una estimación válida del vector de peso. La matriz de correlación se vuelve singular si o bien sus filas o bien las columnas son dependientes. Esta condición ocurre cuando un canal de datos de audio es una transformación lineal de otro canal. Por ejemplo, la matriz de correlación es singular si un canal es igual a otro canal multiplicado por alguna ganancia. Este ejemplo corresponde a una señal monoaural trasladada secuencialmente por los altavoces en el sistema. Para una señal puramente monoaural, las señales reproducidas en cada altavoz son idénticas y la ganancia entre los canales es igual a 1. En ambos ejemplos, la matriz de correlación se vuelve rápidamente singular, según el valor del factor de olvido y cuánto tiempo ha sido reproducida la señal monoaural.
A fin de impedir que la matriz de correlación se vuelva singular, se usa el procedimiento de regularización por permutación circular para regularizar la matriz de correlación para una subbanda específica. Como se ha descrito anteriormente, la regularización implica garantizar que el denominador de una fracción nunca se acerque demasiado al cero, impidiendo por ello que el valor de la fracción se vuelva demasiado grande.
La regularización de la matriz R de correlación puede lograrse de una gran variedad de maneras distintas. Dado que los elementos diagonales de la matriz de correlación son no negativos, la invención solamente necesita regularizar elementos positivos o ceros de la matriz de correlación diagonal. A modo de ejemplo y no de limitación, la matriz de correlación puede regularizarse haciendo lo siguiente: (1) sumando un valor pequeño a los elementos de la diagonal de la matriz de correlación y (2) fijando los valores en la diagonal que estén cerca del cero en un umbral pequeño. Esta última técnica define un valor de umbral y examina cada elemento de la matriz de correlación. Toda vez que haya un peligro de división por cero (tal como cuando el elemento bajo examen se vuelve más pequeño que el valor de umbral), ese elemento de la matriz de correlación se fija igual al valor de umbral. El valor de umbral es un número pequeño que es mayor que cero. Si el elemento de la matriz de correlación es mayor que el valor de umbral, no se hace nada con ese elemento en la matriz de correlación.
La primera técnica de regularización que implica sumar un valor pequeño a los elementos diagonales de la matriz de correlación puede resumirse matemáticamente como:
donde R(n,m) es la matriz de correlación, P-1(n,m) es la inversa de la matriz de correlación inversa, βRLS es el factor de regularización e I es la matriz identidad. βRLS puede ser una constante pequeña (tal como 1.500 con datos de entrada de 16 bits), o bien βRLS puede escogerse usando otras técnicas no uniformes. Al regularizar cada subbanda en un esquema de permutación circular, el consumo de la unidad central de procesamiento (CPU) implicado con las dos
5 inversas matriciales puede minimizarse.
Como se ha descrito anteriormente, el esquema de permutación circular puede implementarse allí donde una única banda, o varias bandas, se regularizan por cada trama, o bien se regulariza una banda cada varias tramas. Según el esquema efectivo de permutación circular, se actualiza el contador que apunta a la banda actual a regularizar, para que apunte a la próxima banda, o grupo de bandas, a regularizar y se reinicialice a la primera banda si es necesario. Como
10 R y P son simétricas, puede usarse una descomposición de Cholesky para hallar R a partir de P-1 en lugar de la descomposición LU, que requiere el doble de operaciones. Sin embargo, en una implementación de prueba se usó la descomposición LU con pivote parcial para calcular la inversa, en lugar de la descomposición de Cholesky, debido a sus propiedades numéricas. Además, este procedimiento de regularización se calculó usando matemática de doble precisión para lograr prestaciones aceptables para las inversiones matriciales.
15 Como resultado, el nuevo algoritmo de RLS con regularización por permutación circular es el siguiente:
ContadorPermutaciónCircular = 0
Para cada trama n = 1,2, ... y subbanda m = 0, ..., M-1, calcular
Si (m == ContadorPermutaciónCircular)
fin fin ContadorPermutaciónCircular = ContadorPermutaciónCircular + 1 25 Si (ContadorPermutacionCircular == MáxContadorPermutaciónCircular) ContadorPermutaciónCircular = 0 fin
En esta realización de la invención, MáxContadorPermutaciónCircular se selecciona para que sea igual al número de subbandas en el procesamiento mixto de subbandas descrito anteriormente. La selección de un valor para 30 MáxContadorPermutaciónCircular depende del valor del factor exponencial λ de olvido. El valor de λ se escoge usualmente como un trueque entre la precisión de convergencia de la solución de RLS y la velocidad de rastreo. Si λ está muy cerca de 1, el algoritmo de RLS obtendrá pesos de toma muy precisos y, por tanto, cancelará la mayoría del
eco, siempre que nada se mueva en la habitación del extremo cercano. Sin embargo, si algo o alguien se mueve, entonces el algoritmo de RLS no puede rastrear rápidamente los cambios en el entorno acústico. El valor de MáxContadorPermutaciónCircular debería escogerse de modo tal que la matriz de correlación inversa de la señal de altavoz se regularice lo bastante a menudo como para que λMáxContadorPermutaciónCircular no alcance un valor que sea demasiado pequeño. Si λMáxContadorPermutaciónCircular es demasiado pequeño, la matriz de correlación inversa se volverá singular entre las actualizaciones de permutación circular. En este caso, las matrices de correlación inversa de múltiples subbandas deberán ser regularizadas por cada trama para aumentar la frecuencia de las ocasiones en que se regulariza la matriz de correlación inversa para cada subbanda.
La FIG. 12 es un diagrama de flujo y en bloques que ilustra una implementación ejemplar del sistema 800 de cancelación de eco con regularización por permutación circular multicanal y del procedimiento mostrado en la FIG. 8. Esta implementación ejemplar usa la técnica de regularización por permutación circular expuesta anteriormente. La FIG. 12 muestra la implementación que usa un filtro multicanal por subbanda, operando sobre datos compuestos. En particular, con referencia a la FIG. 12, las señales de subbanda provenientes de los múltiples canales de reproducción se componen en un único vector (cuadro 1200). Usando este vector compuesto, se actualiza la matriz de correlación inversa usando la ecuación (7) y la regularización por permutación circular (cuadro 1210). Las señales de subbanda compuestas y la matriz de correlación inversa se usan para actualizar la ganancia de Kalman usando la ecuación (4) (cuadro 1220). La ganancia de Kalman se usa para actualizar los coeficientes de filtro usando la ecuación (6) (cuadro 1230). Estos coeficientes de filtro se envían al filtro multicanal (cuadro 1240), aplicados al vector compuesto. El procedimiento continúa recursivamente en cada etapa. En cada etapa, se usa el estado actual de los filtros multicanal para reducir el eco en la señal multicanal. Se emite la señal capturada con eco reducido.
La FIG. 13 es un diagrama de flujo y en bloques que ilustra otra implementación ejemplar del sistema 800 de cancelación de eco con regularización por permutación circular multicanal y del procedimiento mostrado en la FIG. 8. Esta implementación ejemplar usa la técnica de regularización por permutación circular expuesta anteriormente e implementa cada filtro adaptable multicanal de la FIG. 12 como una pluralidad de filtros de canal único. En particular, con referencia a la FIG. 13, las señales de subbanda provenientes de los múltiples canales de reproducción se componen en un único vector (cuadro 1300). La matriz de correlación inversa se actualiza usando la ecuación (7) y la regularización por permutación circular (cuadro 1310). Las señales de subbanda compuestas y la matriz de correlación inversa se usan para actualizar la ganancia de Kalman usando la ecuación (4) (cuadro 1320). La ganancia de Kalman se usa para actualizar los coeficientes de filtro (cuadro 1330). Estos coeficientes de filtro contienen coeficientes para ambos canales izquierdo y derecho. Los pesos de canal se desagregan (cuadro 1340), en donde los coeficientes de filtro del primer canal se envían al filtro de canal único del primer canal (cuadro 1350) y los coeficientes de filtro del segundo canal se envían al filtro de canal único del segundo canal (cuadro 1360). El procedimiento continúa recursivamente en cada etapa. En cada etapa, se usa el estado actual de los filtros de canal único para reducir el eco en la señal multicanal. Se emite la señal capturada con eco reducido.
Conmutación dinámica entre cancelación de eco monoaural y multicanal
El procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal también incluyen la conmutación dinámica entre los algoritmos de cancelación de eco mejor adaptados para las señales de reproducción monoaural y la cancelación de eco mejor adaptada para señales de reproducción multicanal. La conmutación dinámica ocurre entre un algoritmo de AEC monoaural (tal como el NLMS) y el procedimiento de cancelación de eco con regularización por permutación circular multicanal, con una reinicialización eficaz de cualquiera de los procedimientos para minimizar la distorsión al conmutar desde el procesamiento multicanal al procesamiento monoaural, y viceversa.
En las señales con periodos de una señal monoaural (tal como el habla) y periodos de una señal multicanal (tal como la música), se usa un algoritmo de conmutación dinámica para determinar inteligentemente si la señal es monoaural (o casi monoaural) o una señal multicanal. Si es una señal monoaural, se usa un sistema de AEC monoaural según se muestra en la FIG. 1, con un algoritmo de cuadrados medios mínimos normalizados (NMLS). Si es una señal multicanal, se usa el procedimiento de cancelación de eco de RLS con regularización por permutación circular multicanal, según se muestra en la FIG. 12. La conmutación es dinámica, de modo que poco, o ningún, eco se filtra, porque los estados de los algoritmos NLMS y RLS se reinicializan eficazmente durante la conmutación entre un algoritmo al siguiente. Esto se logra compartiendo variables de estado y usando una novedosa técnica de estimación para estimar la matriz de correlación para el algoritmo de RLS. Esto permite conmutar desde el NMLS (monoaural) en un sentido u otro entre el RLS con regularización por permutación circular multicanal sin ningún fallo.
En particular, si se conoce que la señal de reproducción enviada a los altavoces es solamente una señal monoaural pura, entonces el uso de los cuadrados medios mínimos normalizados (NMLS) con un filtro adaptable monoaural (según se muestra en la FIG. 1) tiende a desempeñarse mejor que el uso del RLS con regularización por permutación circular (mostrado en la FIG. 8), por varios motivos. Para señales monoaurales copiadas a múltiples canales de reproducción, el RLS con regularización por permutación circular divergirá eventualmente, dependiendo el tiempo de
divergencia del factor A de olvido. Como resultado, el algoritmo de AEC puede alejarse a la deriva de la solución verdadera. Sin embargo, el NLMS con un único filtro adaptable funciona bien para señales monoaurales y se sabe que es estable. Además, el NLMS tiene un consumo de CPU significativamente menor que cualquier tipo de RLS multicanal.
Como el RLS, el NLMS también puede verse como intento de resolver la ecuación normal
Para NLMS, la ecuación normal se resuelve de forma estadística, usando el procedimiento de la pendiente más pronunciada, mientras que para RLS la ecuación normal se resuelve determinísticamente usando los cuadrados mínimos. Ambos procedimientos calculan esencialmente una estimación de R-1. Para RLS, la inversa de la matriz de correlación es estimada por P. Para NLMS, R-1 puede verse como una matriz diagonal con valores
Como resultado, el estado de la estimación de la matriz de correlación inversa puede inicializarse fácilmente al conmutar desde la AEC monoaural a la multicanal. Al efectuar la transición desde NLMS a RLS, los elementos diagonales pueden inicializarse según se muestra en la ecuación (10). Análogamente, al efectuar la transición desde el procedimiento y sistema de cancelación de eco con regularización por permutación circular multicanal (mostrados en la FIG. 8) a la AEC monoaural usando NLMS (mostrado en la FIG. 1), ningún estado ha de inicializarse explícitamente, ya que el estado se obtiene solamente a partir de la historia de los datos.
Procesamiento mixto de RLS y NMLS con regularización por permutación circular
A fin de reducir los recursos de la unidad central de procesamiento (CPU) necesarios para ejecutar el procedimiento de cancelación de eco con regularización por permutación circular multicanal, se usa un novedoso algoritmo de procesamiento mixto RLS / NLMS. En primer lugar, la señal se divide en subbandas inferiores (que contienen las frecuencias inferiores de una señal de reproducción multicanal) y subbandas superiores (que contienen las frecuencias superiores de la señal). En las subbandas inferiores, se usa el procedimiento de cancelación de eco con regularización por permutación circular multicanal que usa RLS. En las subbandas superiores, se usa el algoritmo NLMS. El algoritmo NLMS usa menos recursos de CPU y se usa en las subbandas superiores porque el efecto estereofónico se atenúa en estas frecuencias. En frecuencias inferiores, donde el efecto estereofónico es más evidente, se usa el procedimiento de cancelación de eco con regularización por permutación circular multicanal, al precio de mayores costes de procesamiento de CPU.
La FIG. 14 ilustra el procesamiento mixto de subbandas inferiores / superiores que usa el procedimiento de regularización por permutación circular multicanal descrito en el presente documento. En general, a fin de reducir requisitos de procesamiento, las subbandas inferiores se procesan usando el procedimiento de regularización por permutación circular multicanal implementado en RLS y las subbandas superiores se procesan usando el NLMS. Se muestra un sistema mixto 1400 de cancelación de eco de subbandas inferiores / superiores que usa el procedimiento de cancelación de eco con regularización por permutación circular multicanal. Según se muestra en la FIG. 14, se usan al menos dos señales x(0) y x(1) de reproducción. La señal x(1) de reproducción se reproduce mediante un altavoz derecho 1410 y x(0) se reproduce mediante un altavoz izquierdo 1420.
Un micrófono 1430 captura los ecos no deseados de una habitación (no mostrada) en la cual se sitúa el micrófono. Una señal y de micrófono es procesada por un primer banco 1440 de filtros de análisis y las señales x(0) y x(1) de reproducción son procesadas por un segundo banco 1450 de filtros de análisis y un tercer banco 1460 de filtros de análisis, de modo que las señales x(0), x(1) e y se transformen, desde el dominio temporal, respectivamente en las señales X(0), X(1) e Y del dominio de frecuencia. Los bancos 1440, 1450, 1460 de filtros de análisis pueden ser una transformación rápida de Fourier (FFT) en ventanas, una transformación compleja modulada por etapas (MCLT) o alguna otra transformación del dominio de frecuencia.
Las señales X(0) y X(1) de reproducción transformadas se envían a un módulo 1470 de separación de procesamiento mixto. El módulo 1470 usa un procedimiento de separación para dividir la señal X(0) de reproducción izquierda en las señales 1475 de subbanda izquierda inferior y las señales 1480 de subbanda izquierda superior. De manera similar, la señal X(1) de reproducción derecha se divide en las señales 1478 de subbanda derecha inferior y las señales 1483 de subbanda derecha superior. De manera similar, un módulo 1445 de separación de procesamiento mixto divide la señal Y capturada en señales 1448 de subbanda superior y señales 1447 de subbanda inferior. Una pluralidad de procesadores 1485 de NMLS reciben las subbandas superiores de la señal Y de micrófono transformada, las señales 1480 de subbanda izquierda superior y las señales 1483 de subbanda derecha superior para su procesamiento. Cada procesador 1485 de NLMS procesa una señal usando el algoritmo definido en las ecuaciones (1) y (2), donde la señal de altavoz de entrada monoaural en la ecuación (3) es reemplazada por la señal de altavoz multicanal en la ecuación (8). Una pluralidad de procesadores 1490 de RLS, que usan el procedimiento de cancelación de eco con regularización por permutación circular multicanal (un ejemplo de este procesador se muestra en la FIG. 13), se usan para procesar las señales 1475 de subbanda de reproducción izquierda inferior, las señales 1478 de subbanda de reproducción derecha inferior y las señales 1447 de captura de subbanda inferior. Las señales procesadas de subbanda inferior y de subbanda superior se envían a un banco 1495 de filtros de síntesis, que emite una señal z del dominio temporal con eco reducido.
La descripción precedente de la invención ha sido presentada con fines de ilustración y descripción. No está concebida para ser exhaustiva o para limitar la invención a la forma precisa descrita. Muchas modificaciones y variaciones son posibles a la luz de la revelación precedente. Se pretende que el alcance de la invención esté limitado no por esta descripción detallada de la invención, sino por las reivindicaciones adjuntas a la misma.
La siguiente es una lista de ejemplos adicionales:
Ejemplo 1: Un procedimiento para cancelar el eco de una pluralidad de señales de reproducción en una señal capturada, que comprende:
descomponer la pluralidad de señales de reproducción en una pluralidad de señales de subbanda;
aplicar una pluralidad de filtros adaptables, cada uno con una matriz de correlación inversa, a la pluralidad de señales de subbanda;
seleccionar cada uno entre la pluralidad de filtros adaptables, en una secuencia de permutación circular;
regularizar la matriz de correlación inversa de cada filtro adaptable seleccionado; y
reducir el eco en la señal capturada usando las salidas de los filtros adaptables.
Ejemplo 2: El procedimiento según lo definido en el ejemplo 1, en el cual la pluralidad de filtros adaptables comprende filtros adaptables de cuadrados mínimos recursivos (RLS).
Ejemplo 3: El procedimiento definido en el ejemplo 2, que comprende adicionalmente aplicar la pluralidad de filtros adaptables de RLS en paralelo.
Ejemplo 4: El procedimiento definido en el ejemplo 2, que comprende adicionalmente tener una longitud más larga de los filtros adaptables de RLS en las señales de subbanda inferior y más corta en las señales de subbanda superior.
Ejemplo 5: El procedimiento definido en el ejemplo 1, en el cual la regularización comprende adicionalmente garantizar que la pluralidad de los filtros adaptables sean estables.
Ejemplo 6: El procedimiento definido en el ejemplo 1, en el cual la regularización de la matriz de correlación inversa comprende adicionalmente procesar la matriz de correlación inversa de modo tal que un determinante de la matriz de correlación no esté cerca del cero.
Ejemplo 7: El procedimiento definido en el ejemplo 1, en el cual la regularización de la matriz de correlación inversa comprende:
invertir la matriz de correlación inversa para producir una matriz de correlación;
regularizar la matriz de correlación para producir una matriz de correlación regularizada; y
obtener una matriz de correlación inversa regularizada invirtiendo la matriz de correlación regularizada.
Ejemplo 8: El procedimiento definido en el ejemplo 7, en el cual la regularización de la matriz de correlación comprende adicionalmente sumar un pequeño valor positivo a los elementos diagonales de la matriz de correlación.
Ejemplo 9: El procedimiento definido en el ejemplo 7, en el cual la regularización de la matriz de correlación comprende:
definir un valor de umbral;
comparar cada elemento diagonal de la matriz de correlación con el valor de umbral; y
fijar el elemento diagonal igual al valor de umbral si el elemento diagonal de la matriz de correlación es más pequeño
que el valor de umbral. Ejemplo 10: El procedimiento definido en el ejemplo 1, en el cual la aplicación de una pluralidad de filtros adaptables comprende:
adaptar un vector de peso para cada uno entre la pluralidad de filtros adaptables;
desagregar el vector de peso para producir una pluralidad de vectores de coeficientes de filtro de canal único, de modo que haya un vector de coeficientes de filtro de canal único para cada canal de reproducción; y aplicar la pluralidad de vectores de coeficientes de filtro de canal único a la pluralidad de señales de subbanda. Ejemplo 11: El procedimiento definido en el ejemplo 1, en el cual la señal capturada comprende una señal acústica. Ejemplo 12: El procedimiento definido en el ejemplo 1, en el cual la señal capturada comprende una señal eléctrica. Ejemplo 13: El procedimiento definido en el ejemplo 1, en el cual la pluralidad de señales de reproducción es una señal
estereofónica.
Ejemplo 14: El procedimiento definido en el ejemplo 1, en el cual la aplicación de una pluralidad de filtros adaptables comprende adicionalmente identificar una función de transferencia de una habitación en la cual está presente el eco. Ejemplo 15: Un medio legible por ordenador con instrucciones ejecutables por ordenador para llevar a cabo el
procedimiento enunciado en el ejemplo 1.
Ejemplo 16: Un procedimiento implementado por ordenador para eliminar ecos de una pluralidad de señales de reproducción en una señal capturada, que comprende: descomponer la pluralidad de señales de reproducción en subbandas; procesar las subbandas usando un filtro adaptable de cuadrados mínimos recursivos (RLS) para cada una de las
subbandas; seleccionar cada uno de los filtros adaptables de RLS en un esquema de permutación circular; regularizar el filtro adaptable de RLS seleccionado para garantizar la estabilidad; y reducir los ecos en la señal capturada usando las salidas de los filtros adaptables de RLS. Ejemplo 17: El procedimiento implementado por ordenador del ejemplo 16, en el cual la señal capturada comprende
una señal acústica.
Ejemplo 18: El procedimiento implementado por ordenador del ejemplo 16, en el cual la señal capturada comprende una señal eléctrica. Ejemplo 19: El procedimiento implementado por ordenador del ejemplo 16, en el cual la regularización del filtro
adaptable de RLS comprende: calcular una matriz de correlación del filtro adaptable de RLS; regularizar una matriz de correlación del filtro adaptable de RLS; y calcular una matriz de correlación inversa regularizada del filtro adaptable de RLS a partir de la matriz de correlación
regularizada. Ejemplo 20: El procedimiento implementado por ordenador del ejemplo 19, en el cual la regularización del filtro
adaptable de RLS comprende adicionalmente examinar la matriz de correlación del filtro adaptable de RLS para determinar si la regularización es o no necesaria. Ejemplo 21: El procedimiento implementado por ordenador del ejemplo 19, en el cual la regularización de una matriz de
correlación comprende adicionalmente sumar un pequeño número positivo a cada elemento diagonal de la matriz de
correlación. Ejemplo 22: El procedimiento implementado por ordenador del ejemplo 19, en el cual la regularización de la matriz de correlación del filtro adaptable de RLS comprende adicionalmente:
definir un valor de umbral; y
fijar un elemento diagonal de la matriz de correlación igual al valor de umbral si el elemento diagonal es más pequeño que el valor de umbral.
Ejemplo 23: El procedimiento implementado por ordenador del ejemplo 19, en el cual el cálculo de una matriz de correlación comprende invertir la matriz de correlación inversa para obtener una matriz de correlación.
Ejemplo 24: El procedimiento implementado por ordenador del ejemplo 19, en el cual el cálculo de una matriz de correlación inversa regularizada comprende invertir la matriz de correlación regularizada para obtener una matriz de correlación inversa regularizada.
Ejemplo 25: El procedimiento implementado por ordenador del ejemplo 16, en el cual el esquema de permutación circular comprende seleccionar un único filtro adaptable de RLS para cada trama.
Ejemplo 26: El procedimiento implementado por ordenador del ejemplo 16, en el cual el esquema de permutación circular comprende seleccionar un único filtro adaptable de RLS cada varias tramas.
Ejemplo 27: El procedimiento implementado por ordenador del ejemplo 16, en el cual el esquema de permutación circular comprende seleccionar múltiples filtros adaptables de RLS para cada trama.
Ejemplo 28: Un procedimiento para conmutar automáticamente entre dos tipos distintos de procedimientos de cancelación de eco al procesar una o más señales de reproducción y una señal capturada que contiene eco, que comprende:
detectar si dicha(s) señal(es) de reproducción es(son) monoaural(es);
procesar la señal capturada y dicha(s) señal(es) de reproducción usando un procedimiento de cancelación de eco monoaural si dicha(s) señal(es) de reproducción es(son) monoaural(es);
procesar la señal capturada y dicha(s) señal(es) de reproducción usando un procedimiento de cancelación de eco con regularización por permutación circular multicanal si dicha(s) señal(es) de reproducción no es(son) monoaural(es); y
conmutar dinámicamente entre el procedimiento de cancelación de eco monoaural y el procedimiento de cancelación de eco con regularización por permutación circular multicanal toda vez que la detección cambia entre un tipo y otro.
Ejemplo 29: El procedimiento definido en el ejemplo 28, en el cual el procedimiento de cancelación de eco monoaural es la cancelación de eco de cuadrados medios mínimos normalizados (NLMS).
Ejemplo 30: El procedimiento definido en el ejemplo 28, en el cual el procedimiento de cancelación de eco monoaural es la cancelación de eco de cuadrados medios mínimos (LMS).
Ejemplo 31: El procedimiento definido en el ejemplo 28, en el cual el procedimiento de cancelación de eco monoaural y el procedimiento de cancelación de eco con regularización por permutación circular multicanal comparten variables de estado.
Ejemplo 32: El procedimiento definido en el ejemplo 28, que comprende adicionalmente usar una técnica de estimación para estimar una matriz de correlación para el procedimiento de cancelación de eco con regularización por permutación circular multicanal.
Ejemplo 33: El procedimiento definido en el ejemplo 32, en el cual el uso de una técnica de estimación comprende adicionalmente resolver una ecuación normal de manera estadística, usando un procedimiento de pendiente más pronunciada al conmutar dinámicamente desde el procedimiento de cancelación de eco con regularización por permutación circular multicanal al procedimiento de cancelación de eco monoaural.
Ejemplo 34: El procedimiento definido en el ejemplo 32, en el cual el uso de una técnica de estimación comprende adicionalmente resolver una ecuación normal determinísticamente, usando un procedimiento de cuadrados mínimos al conmutar dinámicamente desde el procedimiento de cancelación de eco monoaural al procedimiento de cancelación de eco con regularización por permutación circular multicanal.
Ejemplo 35: El procedimiento definido en el ejemplo 28, en el cual la señal capturada contiene subbandas capturadas inferiores y subbandas capturadas superiores, y que comprende adicionalmente procesar la subbanda capturada superior usando un procedimiento de cuadrados medios mínimos normalizados (NLMS).

Claims (6)

  1. REIVINDICACIONES
    1. Un procedimiento para cancelar ecos de una pluralidad de señales de reproducción en una señal capturada, comprendiendo la señal capturada subbandas capturadas inferiores y subbandas capturadas superiores, y comprendiendo la pluralidad de señales de reproducción subbandas de reproducción inferiores y subbandas de
    5 reproducción superiores, estando el procedimiento caracterizado por
    usar un primer procedimiento de cancelación de eco para cancelar ecos de las subbandas capturadas superiores; y
    usar un procedimiento de cancelación de eco con regularización por permutación circular multicanal para cancelar los ecos en las subbandas capturadas inferiores, en el que el procedimiento de cancelación de eco con regularización por permutación circular multicanal comprende adicionalmente:
    10 aplicar (1010) una pluralidad de filtros adaptables, comprendiendo cada uno una matriz de correlación inversa, a cada una de las subbandas de reproducción inferiores;
    seleccionar (1020) cada uno entre la pluralidad de filtros adaptables en una secuencia de permutación circular; y
    regularizar (1030) la matriz de correlación inversa de cada filtro adaptable seleccionado.
  2. 2.
    El procedimiento de la reivindicación 1, en el cual el primer procedimiento de cancelación de eco es un 15 procedimiento de cuadrados medios mínimos normalizados, NLMS.
  3. 3. El procedimiento de la reivindicación 1, en el cual la pluralidad de filtros adaptables son filtros adaptables de cuadrados mínimos recursivos, RLS, y que comprende adicionalmente calcular (1120) cada matriz de correlación a partir de una matriz de correlación inversa.
  4. 4.
    El procedimiento de la reivindicación 1, en el cual la regularización comprende adicionalmente sumar un valor 20 positivo pequeño a los elementos diagonales de la matriz de correlación.
  5. 5. El procedimiento de la reivindicación 1, en el cual la regularización de la matriz de correlación comprende adicionalmente:
    definir un valor de umbral;
    comparar cada elemento diagonal de la matriz de correlación con el valor de umbral; y
    25 fijar el elemento diagonal igual al valor de umbral si el elemento diagonal de la matriz de correlación es más pequeño que el valor de umbral.
  6. 6. El procedimiento de la reivindicación 1, en el cual la regularización de la matriz de correlación comprende adicionalmente garantizar que la pluralidad de filtros adaptables permanezcan estables.
ES08019620T 2004-06-30 2005-06-27 Cancelación de eco multicanal con regulación por permutación circular Active ES2388573T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US883128 2004-06-30
US10/883,128 US7352858B2 (en) 2004-06-30 2004-06-30 Multi-channel echo cancellation with round robin regularization

Publications (1)

Publication Number Publication Date
ES2388573T3 true ES2388573T3 (es) 2012-10-16

Family

ID=35106701

Family Applications (2)

Application Number Title Priority Date Filing Date
ES08019620T Active ES2388573T3 (es) 2004-06-30 2005-06-27 Cancelación de eco multicanal con regulación por permutación circular
ES08019621T Active ES2388575T3 (es) 2004-06-30 2005-06-27 Cancelación de eco multicanal con regularización por permutación circular

Family Applications After (1)

Application Number Title Priority Date Filing Date
ES08019621T Active ES2388575T3 (es) 2004-06-30 2005-06-27 Cancelación de eco multicanal con regularización por permutación circular

Country Status (8)

Country Link
US (2) US7352858B2 (es)
EP (3) EP2045929B1 (es)
JP (1) JP4955228B2 (es)
KR (1) KR101137159B1 (es)
CN (1) CN100573668C (es)
AT (1) ATE414351T1 (es)
DE (1) DE602005010942D1 (es)
ES (2) ES2388573T3 (es)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7240001B2 (en) 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
US7460990B2 (en) 2004-01-23 2008-12-02 Microsoft Corporation Efficient coding of digital media spectral data using wide-sense perceptual similarity
US7433463B2 (en) * 2004-08-10 2008-10-07 Clarity Technologies, Inc. Echo cancellation and noise reduction method
US20060035593A1 (en) * 2004-08-12 2006-02-16 Motorola, Inc. Noise and interference reduction in digitized signals
NO328256B1 (no) * 2004-12-29 2010-01-18 Tandberg Telecom As Audiosystem
US20080280679A1 (en) * 2005-03-09 2008-11-13 Pierre Beaupre Sound Filtering System for Gaming Environments
US8014516B2 (en) * 2006-01-27 2011-09-06 Mediatek Inc. Method and apparatus for echo cancellation
US7852889B2 (en) * 2006-02-17 2010-12-14 Cymer, Inc. Active spectral control of DUV light source
US8189765B2 (en) * 2006-07-06 2012-05-29 Panasonic Corporation Multichannel echo canceller
EP1879181B1 (en) * 2006-07-11 2014-05-21 Nuance Communications, Inc. Method for compensation audio signal components in a vehicle communication system and system therefor
US7852792B2 (en) * 2006-09-19 2010-12-14 Alcatel-Lucent Usa Inc. Packet based echo cancellation and suppression
US20080144808A1 (en) * 2006-12-19 2008-06-19 Goodrich Patrick D Circuit for adjusting impedance mismatch and method therefor
US8982744B2 (en) * 2007-06-06 2015-03-17 Broadcom Corporation Method and system for a subband acoustic echo canceller with integrated voice activity detection
US8045645B2 (en) * 2007-06-08 2011-10-25 Telefonaktiebolaget Lm Ericsson (Publ) Signal processor for estimating signal parameters using an approximated inverse matrix
US8046214B2 (en) * 2007-06-22 2011-10-25 Microsoft Corporation Low complexity decoder for complex transform coding of multi-channel sound
US7885819B2 (en) * 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
US8223959B2 (en) * 2007-07-31 2012-07-17 Hewlett-Packard Development Company, L.P. Echo cancellation in which sound source signals are spatially distributed to all speaker devices
US8249883B2 (en) * 2007-10-26 2012-08-21 Microsoft Corporation Channel extension coding for multi-channel source
US8254588B2 (en) 2007-11-13 2012-08-28 Stmicroelectronics Asia Pacific Pte., Ltd. System and method for providing step size control for subband affine projection filters for echo cancellation applications
US8350962B2 (en) * 2008-02-13 2013-01-08 Broadcom Corporation Method and system for video format conversion
US8385557B2 (en) 2008-06-19 2013-02-26 Microsoft Corporation Multichannel acoustic echo reduction
US8170226B2 (en) * 2008-06-20 2012-05-01 Microsoft Corporation Acoustic echo cancellation and adaptive filters
US8605890B2 (en) * 2008-09-22 2013-12-10 Microsoft Corporation Multichannel acoustic echo cancellation
US20100172232A1 (en) * 2009-01-07 2010-07-08 Mario Traeber Noise compensation in data transmission
WO2010106469A1 (en) * 2009-03-17 2010-09-23 Koninklijke Philips Electronics N.V. Audio processing in a processing system
EP2237271B1 (en) 2009-03-31 2021-01-20 Cerence Operating Company Method for determining a signal component for reducing noise in an input signal
US8208649B2 (en) * 2009-04-28 2012-06-26 Hewlett-Packard Development Company, L.P. Methods and systems for robust approximations of impulse responses in multichannel audio-communication systems
US20110058676A1 (en) * 2009-09-07 2011-03-10 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for dereverberation of multichannel signal
US8634569B2 (en) * 2010-01-08 2014-01-21 Conexant Systems, Inc. Systems and methods for echo cancellation and echo suppression
US9082106B2 (en) 2010-04-30 2015-07-14 American Teleconferencing Services, Ltd. Conferencing system with graphical interface for participant survey
US9189143B2 (en) 2010-04-30 2015-11-17 American Teleconferencing Services, Ltd. Sharing social networking content in a conference user interface
US9419810B2 (en) 2010-04-30 2016-08-16 American Teleconference Services, Ltd. Location aware conferencing with graphical representations that enable licensing and advertising
USD656504S1 (en) 2010-04-30 2012-03-27 American Teleconferencing Services, Ltd. Display screen portion with an animated image
USD656942S1 (en) 2010-04-30 2012-04-03 American Teleconferencing Services, Ltd. Display screen portion with an animated image
US10268360B2 (en) 2010-04-30 2019-04-23 American Teleconferencing Service, Ltd. Participant profiling in a conferencing system
USD656505S1 (en) 2010-04-30 2012-03-27 American Teleconferencing Services, Ltd. Display screen portion with animated image
USD656941S1 (en) 2010-04-30 2012-04-03 American Teleconferencing Services, Ltd. Display screen portion with an animated image
US9106794B2 (en) 2010-04-30 2015-08-11 American Teleconferencing Services, Ltd Record and playback in a conference
USD642587S1 (en) 2010-04-30 2011-08-02 American Teleconferencing Services, Ltd. Animated graphical user interface for a portion of a display screen
US9560206B2 (en) 2010-04-30 2017-01-31 American Teleconferencing Services, Ltd. Real-time speech-to-text conversion in an audio conference session
US10372315B2 (en) 2010-04-30 2019-08-06 American Teleconferencing Services, Ltd Location-aware conferencing with calendar functions
USD642586S1 (en) 2010-04-30 2011-08-02 American Teleconferencing Services, Ltd. Portion of a display screen with a user interface
USD656507S1 (en) 2010-04-30 2012-03-27 American Teleconferencing Services, Ltd. Display screen portion with an animated image
USD656506S1 (en) 2010-04-30 2012-03-27 American Teleconferencing Services, Ltd. Display screen portion with an animated image
US8626847B2 (en) 2010-04-30 2014-01-07 American Teleconferencing Services, Ltd. Transferring a conference session between client devices
EP2466864B1 (de) * 2010-12-14 2019-02-27 Deutsche Telekom AG Transparente Dekorrelation der Lautsprechersignale bei mehrkanaligen Echokompensatoren
US9160864B2 (en) 2011-01-05 2015-10-13 Conexant Systems, Inc. Systems and methods for stereo echo cancellation
US8411132B2 (en) 2011-01-27 2013-04-02 Audio Properties, Inc. System and method for real-time media data review
JP6094479B2 (ja) * 2011-05-19 2017-03-15 日本電気株式会社 音声処理装置、音声処理方法および音声処理プログラムを記録した記録媒体
US8320577B1 (en) * 2011-05-20 2012-11-27 Google Inc. Method and apparatus for multi-channel audio processing using single-channel components
CN102457632B (zh) * 2011-12-29 2014-07-30 歌尔声学股份有限公司 一种多受话端回声消除方法
US9143862B2 (en) * 2012-12-17 2015-09-22 Microsoft Corporation Correlation based filter adaptation
US9232072B2 (en) * 2013-03-13 2016-01-05 Google Inc. Participant controlled spatial AEC
EP2984763B1 (en) * 2013-04-11 2018-02-21 Nuance Communications, Inc. System for automatic speech recognition and audio entertainment
US9025711B2 (en) * 2013-08-13 2015-05-05 Applied Micro Circuits Corporation Fast filtering for a transceiver
US9613634B2 (en) * 2014-06-19 2017-04-04 Yang Gao Control of acoustic echo canceller adaptive filter for speech enhancement
US9456276B1 (en) * 2014-09-30 2016-09-27 Amazon Technologies, Inc. Parameter selection for audio beamforming
US9554207B2 (en) 2015-04-30 2017-01-24 Shure Acquisition Holdings, Inc. Offset cartridge microphones
US9565493B2 (en) 2015-04-30 2017-02-07 Shure Acquisition Holdings, Inc. Array microphone system and method of assembling the same
US9672821B2 (en) * 2015-06-05 2017-06-06 Apple Inc. Robust speech recognition in the presence of echo and noise using multiple signals for discrimination
KR20170032603A (ko) 2015-09-15 2017-03-23 삼성전자주식회사 전자 장치, 그의 반향 신호 제거 방법 및 비일시적 컴퓨터 판독가능 기록매체
CN106331402B (zh) * 2016-08-25 2019-03-22 西南交通大学 一种基于系数差成比例子带凸组合自适应回声消除法
WO2018119470A1 (en) 2016-12-23 2018-06-28 Synaptics Incorporated Online dereverberation algorithm based on weighted prediction error for noisy time-varying environments
US10930298B2 (en) * 2016-12-23 2021-02-23 Synaptics Incorporated Multiple input multiple output (MIMO) audio signal processing for speech de-reverberation
US10367948B2 (en) 2017-01-13 2019-07-30 Shure Acquisition Holdings, Inc. Post-mixing acoustic echo cancellation systems and methods
CN106782593B (zh) * 2017-02-27 2019-10-25 重庆邮电大学 一种用于声学回声消除的多带结构自适应滤波器切换方法
US10013995B1 (en) * 2017-05-10 2018-07-03 Cirrus Logic, Inc. Combined reference signal for acoustic echo cancellation
GB201709849D0 (en) * 2017-06-20 2017-08-02 Nokia Technologies Oy Processing audio signals
EP3652867B1 (en) * 2017-07-14 2021-05-26 Dolby Laboratories Licensing Corporation Mitigation of inaccurate echo prediction
US9947338B1 (en) * 2017-09-19 2018-04-17 Amazon Technologies, Inc. Echo latency estimation
CN108200522B (zh) * 2017-11-24 2020-02-18 华侨大学 一种变正则化比例归一化子带自适应滤波方法
EP3804356A1 (en) 2018-06-01 2021-04-14 Shure Acquisition Holdings, Inc. Pattern-forming microphone array
CN108806709B (zh) * 2018-06-13 2022-07-12 南京大学 基于频域卡尔曼滤波的自适应声回声抵消方法
US11297423B2 (en) 2018-06-15 2022-04-05 Shure Acquisition Holdings, Inc. Endfire linear array microphone
US11417351B2 (en) 2018-06-26 2022-08-16 Google Llc Multi-channel echo cancellation with scenario memory
US10841030B2 (en) * 2018-07-30 2020-11-17 Avago Technologies International Sales Pte. Limited Leg combining by FFT selection
KR102088355B1 (ko) * 2018-08-27 2020-03-12 서강대학교 산학협력단 스테레오 노이즈 제거 장치 및 스테레오 노이즈 제거 방법
KR102088375B1 (ko) * 2018-08-27 2020-03-12 서강대학교 산학협력단 스테레오 노이즈 제거 장치 및 스테레오 노이즈 제거 방법
KR20200024066A (ko) * 2018-08-27 2020-03-06 서강대학교산학협력단 스테레오 노이즈 제거 장치 및 스테레오 노이즈 제거 방법
WO2020061353A1 (en) 2018-09-20 2020-03-26 Shure Acquisition Holdings, Inc. Adjustable lobe shape for array microphones
CN110956973A (zh) * 2018-09-27 2020-04-03 深圳市冠旭电子股份有限公司 一种回声消除方法、装置及智能终端
CN111263252B (zh) * 2018-11-30 2021-11-30 上海哔哩哔哩科技有限公司 一种用于直播的连麦消音方法、系统和存储介质
US11094333B2 (en) * 2019-03-15 2021-08-17 Sogang University Research & Business Development Foundation Device and method for stereo noise cancellation
CN113841421A (zh) 2019-03-21 2021-12-24 舒尔获得控股公司 具有抑制功能的波束形成麦克风瓣的自动对焦、区域内自动对焦、及自动配置
EP3942842A1 (en) 2019-03-21 2022-01-26 Shure Acquisition Holdings, Inc. Housings and associated design features for ceiling array microphones
US11558693B2 (en) 2019-03-21 2023-01-17 Shure Acquisition Holdings, Inc. Auto focus, auto focus within regions, and auto placement of beamformed microphone lobes with inhibition and voice activity detection functionality
US11600287B2 (en) * 2019-03-28 2023-03-07 Bose Corporation Cancellation of vehicle active sound management signals for handsfree systems
EP3973716A1 (en) 2019-05-23 2022-03-30 Shure Acquisition Holdings, Inc. Steerable speaker array, system, and method for the same
JP2022535229A (ja) 2019-05-31 2022-08-05 シュアー アクイジッション ホールディングス インコーポレイテッド 音声およびノイズアクティビティ検出と統合された低レイテンシオートミキサー
EP4018680A1 (en) 2019-08-23 2022-06-29 Shure Acquisition Holdings, Inc. Two-dimensional microphone array with improved directivity
US11552611B2 (en) 2020-02-07 2023-01-10 Shure Acquisition Holdings, Inc. System and method for automatic adjustment of reference gain
USD944776S1 (en) 2020-05-05 2022-03-01 Shure Acquisition Holdings, Inc. Audio device
US11706562B2 (en) 2020-05-29 2023-07-18 Shure Acquisition Holdings, Inc. Transducer steering and configuration systems and methods using a local positioning system
US11785380B2 (en) 2021-01-28 2023-10-10 Shure Acquisition Holdings, Inc. Hybrid audio beamforming system
CN114582312B (zh) * 2022-02-14 2022-11-22 中国科学院声学研究所 一种车内抗干扰自适应路噪主动控制方法及控制系统

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4421182A (en) * 1982-03-16 1983-12-20 Moody Arlin R Combination clean-out and drilling tool
US5305307A (en) * 1991-01-04 1994-04-19 Picturetel Corporation Adaptive acoustic echo canceller having means for reducing or eliminating echo in a plurality of signal bandwidths
JP3397269B2 (ja) * 1994-10-26 2003-04-14 日本電信電話株式会社 多チャネル反響消去方法
US5677951A (en) * 1995-06-19 1997-10-14 Lucent Technologies Inc. Adaptive filter and method for implementing echo cancellation
JP3397282B2 (ja) * 1995-08-14 2003-04-14 日本電信電話株式会社 周波数帯域分割型反響消去装置
JP3654470B2 (ja) * 1996-09-13 2005-06-02 日本電信電話株式会社 サブバンド多チャネル音声通信会議用反響消去方法
FR2758677B1 (fr) * 1997-01-21 1999-04-02 Matra Communication Procede d'annulation d'echo et annuleur d'echo mettant en oeuvre un tel procede
US6055311A (en) * 1997-01-31 2000-04-25 Telefonaktiebolaget L M Ericsson (Publ) Dynamic echo canceller and parameter selection in telephony systems
FR2762467B1 (fr) * 1997-04-16 1999-07-02 France Telecom Procede d'annulation d'echo acoustique multi-voies et annuleur d'echo acoustique multi-voies
US5987098A (en) 1997-12-23 1999-11-16 Nortel Networks Corporation Method and system for sparing echo cancellers
EP0944228B1 (en) 1998-03-05 2003-06-04 Nippon Telegraph and Telephone Corporation Method and apparatus for multi-channel acoustic echo cancellation
DE19831320A1 (de) 1998-07-13 2000-01-27 Ericsson Telefon Ab L M Digitales adaptives Filter und akustischer Echokompensator
US6408269B1 (en) * 1999-03-03 2002-06-18 Industrial Technology Research Institute Frame-based subband Kalman filtering method and apparatus for speech enhancement
US6870882B1 (en) 1999-10-08 2005-03-22 At&T Corp. Finite-length equalization over multi-input multi-output channels
JP2002009675A (ja) * 2000-06-26 2002-01-11 Nec Corp 多重化回線用エコー除去方法及び装置
GB0027238D0 (en) * 2000-11-08 2000-12-27 Secr Defence Adaptive filter
US6785341B2 (en) 2001-05-11 2004-08-31 Qualcomm Incorporated Method and apparatus for processing data in a multiple-input multiple-output (MIMO) communication system utilizing channel state information
FR2824982B1 (fr) 2001-05-16 2003-07-04 France Telecom Procede de controle adaptatif de systeme d'annulation d'echo multivoies et dispositif pour mettre en oeuvre le procede
US7321568B2 (en) * 2001-06-01 2008-01-22 Texas Instruments Incorporated Realtime management of processing resources
JP2002368658A (ja) * 2001-06-08 2002-12-20 Matsushita Electric Ind Co Ltd 多チャネルエコー消去装置、方法、記録媒体及び音声通信システム
FR2841721B1 (fr) * 2002-06-28 2004-08-20 France Telecom Dispositif de traitement d'echo pour systeme de communication de type monovoie ou multivoies
US7227959B2 (en) 2003-03-10 2007-06-05 Shure Incorporated Multi-channel digital feedback reducer system
JP2006524970A (ja) 2003-04-28 2006-11-02 ソーラーフレア・コミュニケーションズ・インコーポレイテッド 多重チャネルにおける混信の解消
US6925176B2 (en) 2003-06-27 2005-08-02 Nokia Corporation Method for enhancing the acoustic echo cancellation system using residual echo filter
NO320942B1 (no) * 2003-12-23 2006-02-13 Tandberg Telecom As System og fremgangsmate for forbedret stereolyd

Also Published As

Publication number Publication date
US7352858B2 (en) 2008-04-01
EP1612963A2 (en) 2006-01-04
CN1716381A (zh) 2006-01-04
JP4955228B2 (ja) 2012-06-20
ATE414351T1 (de) 2008-11-15
ES2388575T3 (es) 2012-10-16
KR20060047950A (ko) 2006-05-18
US20060002546A1 (en) 2006-01-05
EP2045928A1 (en) 2009-04-08
EP2045929A1 (en) 2009-04-08
KR101137159B1 (ko) 2012-04-19
JP2006018254A (ja) 2006-01-19
CN100573668C (zh) 2009-12-23
EP1612963A3 (en) 2006-07-12
US20060002547A1 (en) 2006-01-05
DE602005010942D1 (de) 2008-12-24
EP2045928B1 (en) 2012-06-27
EP1612963B1 (en) 2008-11-12
EP2045929B1 (en) 2012-06-27
US7925007B2 (en) 2011-04-12

Similar Documents

Publication Publication Date Title
ES2388573T3 (es) Cancelación de eco multicanal con regulación por permutación circular
JP3405512B2 (ja) 音響エコーキャンセル方法とそのシステム
US7773743B2 (en) Integration of a microphone array with acoustic echo cancellation and residual echo suppression
US7693291B2 (en) Multi-channel frequency-domain adaptive filter method and apparatus
GB2497343A (en) Echo cancelling with a loudspeaker array
CN110602327B (zh) 语音通话方法、装置、电子设备及计算机可读存储介质
US9191519B2 (en) Echo suppressor using past echo path characteristics for updating
Papp et al. Hands-free voice communication with TV
CN111556210B (zh) 通话语音处理方法与装置、终端设备和存储介质
US10297245B1 (en) Wind noise reduction with beamforming
US6694020B1 (en) Frequency domain stereophonic acoustic echo canceller utilizing non-linear transformations
EP1219102A1 (en) Tagging echoes with low frequency noise
US9858944B1 (en) Apparatus and method for linear and nonlinear acoustic echo control using additional microphones collocated with a loudspeaker
Schmidt Applications of acoustic echo control-an overview
Fukui et al. Acoustic echo and noise canceller for personal hands-free video IP phone
Kobayashi et al. A hands-free unit with noise reduction by using adaptive beamformer
Gay et al. An introduction to acoustic echo and noise control
Fukui et al. Acoustic echo canceller software for VoIP hands-free application on smartphone and tablet devices
Ruiz et al. Distributed combined acoustic echo cancellation and noise reduction using GEVD-based distributed adaptive node specific signal estimation with prior knowledge
Emling General aspects of hands-free telephony
Nathwani et al. Joint adaptive beamforming and echo cancellation using a non reference anchor array framework
JPH0667692A (ja) 適応雑音低減型の音声入力装置
Santiago et al. Integration of Automatic Microphone Selection with Acoustic Echo Cancellation
Chowdary Acoustic Echo cancellation inside a Conference Room using Adaptive Algorithms
JPH10145487A (ja) 高品質拡声情報通信システム