MXPA98002475A - Deteccion seguimiento, cancelacion y llenado con interferencia de eco en tiempo real en un sistema de comunicaciones - Google Patents
Deteccion seguimiento, cancelacion y llenado con interferencia de eco en tiempo real en un sistema de comunicacionesInfo
- Publication number
- MXPA98002475A MXPA98002475A MXPA/A/1998/002475A MX9802475A MXPA98002475A MX PA98002475 A MXPA98002475 A MX PA98002475A MX 9802475 A MX9802475 A MX 9802475A MX PA98002475 A MXPA98002475 A MX PA98002475A
- Authority
- MX
- Mexico
- Prior art keywords
- echo
- sarasterized
- delay
- interferensia
- signals
- Prior art date
Links
Abstract
Un método para procesar señales detelecomunicaciones para aliviar eco durante comunicación de voz entre un conferenciante local y un conferenciante remoto, comprende la aplicación de memorias intermedias circulares para señales de extremo cercano y de extremo lejano, para conservar el tiempo de procesamiento. Bloques superpuestos de muestras se procesan e indexan al incrementar elíndice con el tiempo para generar un conjunto para almacenar coherencia de magnitud contra retardo de tiempo entre muestras de salida y de entrada. Se recorta eco con base en ajuste o correspondencia espectral de energía. El eco recortado se reemplaza con relleno de interferencia de al menos uno de dos tipos, interferencia blanca e interferencia tonal, a un nivel apropiado. También el ruido de fritura que comprende altos picos de energía y un efecto de eco residual que es bajo de energía, de ráfagas y no lineal puede identificarse y reemplazarse con relleno blanco.
Description
DETECCIÓN, SEGUIMIENTO, CANCELACIÓN Y LLENADO CON INTERFERENCIA DE ECO EN TIEMPO REAL EN UN SISTEMA DE COMUNICACIONES CAMPO DE LA INVENCIÓN Esta invención se relaciona a técnicas para procesar señales de habla reflejadas en un sistema de comunicaciones, comúnmente referido como eco, y más particularmente a la detección y seguimiento de eco durante una llamada, la cancelación del eco al recortar el eco de retorno desde una comunicación de voz recibida y el reemplazo del eco recortado con muestras de interferencia tal que el llenado de interferencia corresponda a la interferencia presente en el canal de comunicaciones . ANTECEDENTES DE LA INVENCIÓN En la patente de los E.U.A. No. 5,587,998, un método y aparato para reducir eco de extremo lejano residual en una red de comunicación de voz se describe, que introduce los conceptos de implementar control de eco en extremo lejano en una red local para mejorar la experiencia de comunicación del conferenciante local. El método involucra medir el retardo entre una señal de voz originada y su ocurrencia reflejada a fin de identificar pronosticablemente un eco, alisar la predicción con el tiempo, y atenuar s cancelar un eco que cae dentro de una gama definida. Las Figuras 1 y 2 de la patente 998, también reproducidas aquí como Figuras 1 y 2, describen
REF: 26046 el ambiente de red de comunicaciones de voz en donde la presente invención puede emplearse para aventajar. Las Figuras 3-6 proporciona una vista general de un algoritmo para reducir/cancelar eco una vez detectado. Las Figuras 3-5 de la patente *998 se reproducen en esta solicitud de patente. En la patente ? 998, de la columna 43 a columna 11, línea 19, se describe un algoritmo para detectar, dar seguimiento y alisar un estimado de eco con el tiempo, de acuerdo con la Figura 6 de la patente ?998. El eco, si ocurre suficientemente cerca a un conferenciante local, se escucha como un efecto de lluvia en barril. En comunicaciones de muy larga distancia sobre líneas terrestres, o en comunicaciones de satélite cuando las distancias (y retardos de trayectoria absolutos) son suficientemente grandes, el conferenciante local escucha el eco como una repetición del habla originada, retrasado por retardo de trayectoria desde el conferenciante local a un punto de reflexión (por ejemplo la ubicación de un híbrido u otro desacoplamiento de impedancia) y retorno. En una red de comunicaciones de voz en tiempo real, el eco no puede identificarse y manejarse fuera de línea pero debe identificarse y recortarse inmediatamente en tiempo real . Consecuentemente, es necesario i plementar un algoritmo de cancelación de eco, de manera tal que pueda actuar en eco tan pronto como se identifica. Consecuentemente, los diseñadores de software deben hacer elecciones en asignar tareas entre aquéllas que deben realizarse en tiempo real y aquéllas que pueden realizarse en otros tiempos. Una vez que se implementan decisiones de seguimiento y recorte, puede permanecer un período muerto incómodo en la comunicación de voz que se escucha por el conferenciante local. En otras palabras, puede haber un período de silencio absoluto a un conferenciante local que señala que ha ocurrido procesamiento de señal de voz. Consecuentemente, un objeto de la presente invención no es solo implementar un seguidor y recortador en tiempo real si no implementar un algoritmo de llenado de interferencia que llena el período muerto con interferencia similar a aquélla ya experimentada por el conferenciante local en el canal de comunicaciones de voz. Aún más, métodos y aparatos de cancelación de eco conocidos operan de manera tal que crean picos de alta energía de interferencia que pueden escucharse por un conferenciante de extremo cercano como "ruido de fritura", una interferencia caracterizada por un sonido no diferente al ruido de fritura o crepitar de un fuego. En nuestro objetivo adicional proporcionar un algoritmo de seguimiento y recorte para remoción de eco, que también toma en cuenta dicho ruido de fritura y retira el ruido de fritura y un algoritmo de llenado de interferencia, que de preferencia llena huecos de ruido de fritura retirado con relleno de interferencia no objetable.
De esta manera, permanece necesidad en la técnica por implementar un algoritmo para detección de eco, seguimiento, recorte y llenado con interferencia en tiempo real que proporciona al conferenciante local con un canal de comunicaciones de voz libre de eco, relativamente silencioso entre el conferenciante de extremo lejano y el conferenciante local . Si este procedimiento se implementa en ambos extremos del canal de comunicaciones, ambos conferenciantes experimentarán una comunicación de habla libre de eco. COMPENDIO DE LA INVENCIÓN De acuerdo con el algoritmo de la presente invención, se proporcionan dos corrientes de datos de alimentación: habla de extremo cercano de salida y habla de extremo lejano de entrada, que se obtienen de una comunicación de voz determinada entre un conferenciante de extremo cercano y un conferenciante de extremo lejano. Circuitos detectores para actividad de voz, detectan habla como actividad de voz en cada corriente. Cuando hay un alto grado de coherencia entre el habla de salida y el habla de ingreso y cuando la magnitud del habla reflejada es suficientemente grande en comparación con el habla de salida, hay una incidencia probable de eco audible, objetable. Consecuentemente, alimentaciones al seguidor del presente algoritmo se derivan de obtener una coherencia de magnitud promedio contra retardo de tiempo entre canales de salida y de entrada en una memoria de procesador. La presente invención puede describirse mejor al dividirla en tres porciones funcionales. Las tres porciones funcionales del algoritmo pueden describirse como l) detección y seguimiento de eco, 2) recorte y 3) relleno con interferencia. Respecto a la función de detección y seguimiento, la ubicación del eco se determina por una metodología para calcular retardo que encuentre el máximo en la magnitud promedio de coherencia, una función de retardo de tiempo entre canales de salida y entrada. Una porción de algoritmo seguidor se emplea para asegurar que el estimado de la ubicación de eco es relativamente consistente y no sujeto a estimados espurios y estimados externos. La segunda función es recorte. El recortador determina cuando cortar la señal de extremo lejano de ingreso, después de que el detector/seguidor ha determinado que existe eco en la conversación. La tercer función es relleno de interferencia y es responsable para generar y reemplazar muestras de interferencia una vez que las funciones de detección/seguimiento y recorte han determinado que la señal de ingreso corriente habrá de recortarse debido a la presencia de eco. Estas funcionalidades (detección/seguimiento, recorte y llenado con interferencia) del algoritmo, se implementan más convenientemente en un diseño de software y programas grabados en memoria inalterable que aseguran su operación en tiempo real . En este diseño , el desempeño en tiempo real se asegura al mantener las muestras de habla y otros datos en memorias intermedias circulares y por el arreglo de un programa funcional principal y subordinados en una estructura modular. En principio, con el tiempo, la incidencia de eco desde los mismos puntos de reflexión habrá de ser consistente. De esta manera, los retardos medidos entre el conferenciante local y los puntos de reflexión son pronosticables y así por igual el retardo de viaje redondo. Los segmentos de voz de salida y los segmentos de voz de entrada se confinan a la gama relativamente estrecha de frecuencias que comprenden el ancho de banda voz, de telefonía. Esta gama de frecuencias se define diferentemente por aquéllos en el campo pero aproximadamente comprende la gama de frecuencias entre 300 Hz y 3000 Hz. De esta manera, mientras que la magnitud de la pérdida de reflexión puede variar ligeramente con frecuencia de voz, habrá de haber un retardo de viaje redondo pronosticable. También, la pérdida de transmisión de viaje redondo es igualmente pronosticable. Los datos recolectados para la señal de extremo cercano se correlacionan con datos de señal de extremo lejano y diversas pruebas se aplican a datos históricos, para pronosticar la ocurrencia de ecos fuerte y débil. Este proceso se refiere aquí como detección y seguimiento de eco. Aún más, de acuerdo con la invención, muestras atenuadas del habla originada o de salida se retiran o recortan de la trayectoria de habla de retorno o de ingreso antes que el habla reflejada alcanza al conferenciante de extremo cercano después que un retardo anticipado ha pasado y a un nivel de energía pronosticado. Adicionalmente, de acuerdo con la presente invención, un segmento de interferencia de la trayectoria de habla de ingreso se estima, determina que es tonal o interferencia blanca, y se replica de acuerdo con la determinación. La interferencia replicada se emplea para llenar la duración de la señal de eco retirada incluyendo cualquier ruido de fritura, un efecto de interferencia indeseable adicional a menudo experimentado en cancelación de eco. Las operaciones de detectar y dar seguimiento, recortar y remover ruido de fritura y los algoritmos de llenado de interferencia aún pueden dejar un efecto de eco residual sin corregir. Un recortador de eco residual retira eco residual que en general es de baja energía, en ráfagas y corto en duración. Para este eco residual que además tiende a ser discontinuo y esporádico, se deriva una ventana de eco del nivel de energía de referencia (trayectoria de transmisición de extremo cercano) , el retardo de eco medido, el detector de actividad de voz de extremo cercano y el nivel de pérdida de eco. La ventana de eco proporciona una medida en intervalo de tiempo para que el algoritmo localice el eco residual y accionar el recortador para recortar la energía de eco residual a un umbral predeterminado.
Otras ventajas y características de la presente invención se comprenderán a partir de estudiar las Figuras 6-27 de la descripción anterior de una modalidad preferida. BREVE DESCRIPCIÓN DE LOS DIBUJOS Las Figuras 1-5 se toman de la patente de los E.U.A.
No. 5,587,998 de Patrick M. Velardo, Jr. y Woodson D. Wynn, incorporada completamente por referencia. La Figura 6A es un diagrama de flujo funcional para cálculo de coherencia entre habla de extremo cercano y señal regresada de extremo lejano; la Figura 6B es un diagrama de flujo funcional para los bucles alojados repetitivos para cálculo de coherencia. La Figura 7 proporciona una vista general de las alimentaciones para el detector/seguidor de la presente invención y como se revelan o desarrollan; La Figura 7a proporciona una gráfica de barras de estimados de coherencia en crudo ejemplares contra retardo de tiempo entre canales de salida y entrada; la Figura 7b muestra un trazo de coherencia ejemplar para un canal de comunicaciones de voz y la Figura 7c proporciona un correlograma que muestra retardo de trayectoria de eco con el tiempo, porciones oscurecidas que probablemente son incidencias de eco.
La Figura 8a muestra detalles de un almacenamiento de bloque y bastidor mediante una memoria intermedia circular que permite que ocurra detección de eco y seguimiento en tiempo real. La Figura 8b muestra un diagrama de memoria intermedia de datos circular para el procesamiento en tiempo real de la Figura 8a de señales de extremo cercano y extremo lejano. La Figura 9 proporciona una tabla ejemplar de variables para dar seguimiento a eco con el tiempo en un canal de comunicaciones empleado para habla. Las Figura 10-15 proporcionan detalles de las ocho etapas de la porción de algoritmo seguidor de la presente invención; las primeras tres etapas se ilustran en la Figura 10 todas referentes a como procesar las mediciones de coherencia en crudo entre los canales de salida y de entrada; la etapa 4 se ilustra en la Figura 11 y se relaciona a fuerte detección de eco; la etapa 5 se ilustra en las Figuras 12a y 12b y relaciona con detección de eco débil; la etapa 6 se ilustra en la Figura 13 y se relaciona a allanar o alisar los estimados de retardo de eco con el tiempo; la etapa 7 se ilustra en la Figura 14 y se relaciona a dar seguimiento al eco sobre múltiples exploraciones (cuadros) de la comunicación de voz; y la etapa 8 se ilustra en la Figura 15 y estimula a determinar si está presente eco.
La Figura 16a ilustra un conjunto para almacenar una historia de energía de cuadro de habla; la Figura 16b proporciona la fórmula del recortador seguidor para recortar eco altamente no lineal que se ha identificado como ruido de fritura utilizando el conjunto desarrollado de la Figura 16a; y la Figura 16c muestra un ejemplo del presente algoritmo en donde se ha detectado y reemplazado eco no lineal con restauración de interferencia. La Figura 17a proporciona una tabla ejemplar de alimentaciones requeridas para la porción de algoritmo seguidor/recortador y la Figura 17b proporciona una tabla ejemplar de las variables para la porción de seguidor/recortador; la Figura 18 proporciona fórmula para el cálculo de la distancia cepstral - un métrico que representa la distancia espectral desde el conferenciante local a un punto de reflexión de retorno; la Figura 19 proporciona algoritmos seguidor/recortador para remoción de eco por correspondencia espectral; la Figura 20 proporciona algoritmo seguidor/recortador para remoción de eco sin correspondencia espectral ; la Figura 21 muestra condiciones de recorte adicionales y la Figura 22, cuando el recorte se desactiva.
La Figura 23 muestra un ejemplo de la salida del presente algoritmo en donde el eco se detecta, se le da seguimiento, recorte y reemplaza con interferencia determinada y rellenado mediante el algoritmo para relleno de interferencia de al presente invención; la Figura 23a muestra una serie de tiempo antes de remoción de eco y la Figura 23b muestra una serie de tiempo después de remoción de eco y restauración de interferencia. La Figura 24 proporciona una tabla de las alimentaciones para un algoritmo de llenado de interferencia para llenar períodos de eco cancelados con interferencia; Las Figuras 25 y 26 proporcionan detalles del algoritmo de llenado de interferencia en donde la primer etapa es caracterizar la interferencia, por ejemplo como interferencia tonal o interferencia blanca en donde la Figura
se relaciona a caracterización de interferencia y la Figura
26 se relaciona a llenar un período con la interferencia caracterizado por la etapa de caracterización de interferencia; la Figura 25a proporciona los detalles del algoritmo de caracterización de interferencia, la Figura 25b proporciona una comparación de espectro de energia de interferencia para interferencia tonal e interferencia blanca y un nivel umbral, y la Figura 25c proporciona una autocorrelación de interferencia (para interferencia tonal); la Figura 26a proporciona detalles de algoritmo de llenado de interferencia, la Figura 26b proporciona una memoria intermedia de conjunto Noice ] y la Figura 26c un trazo de memoria intermedia de llenado con interferencia generada para un ejemplo de llenado con interferencia blanca, y la Figura 26d proporciona un trazo de memoria intermedia de conjunto Noice[] y la Figura 26e un trazo de memoria intermedia de llenado de interferencia generado para un ejemplo de llenado de interferencia tonal. La Figura 27 proporciona una vista general de presente detector/seguidor de eco, recortador de eco y rellenador de interferencia y una característica adicional, es decir recorte de eco residual en el contexto y un proceso de remoción de eco y reducción de interferencia total, que incluye detección de eco y seguimiento, recorte y llenado con interferencia; la Figura 27a proporciona la descripción funcional total en la forma de un diagrama de bloques funcional; la Figura 27b muestra el proceso de pronóstico de ventana de eco para recorte de eco residual; la Figura 27c muestra la detección del nivel de energía de habla en donde la Figura 27c(l) muestra energía de señal contra nivel de señal y la Figura 27c(2) ilustra muestreado de nivel de señal de habla sobre el cuadro de señal en ventanas de estimado de 100 ms; la Figura 27d muestra la formación de una ventana de estimado que corre y la Figura 27e muestra espectro de habla (0-4000 Hz) contra nivel de energía.
DESCRIPCIÓN nttTAT.T.?DA DE UNA MODALIDAD PREFERIDA La red de comunicaciones de la técnica previa Figuras 1 o 2, se ilustra que comprende una red local 10 y una red remota 20, que no se confundirán con los términos de telecomunicaciones tales como central urbana o local (LEC = local exchange carrier) o red de cuota y semejantes. La presente invención y aquélla descrita por la patente 998 se implementan más convenientemente lo más cerca a la parte local o abonado que llama local de la red local 10 posible, para poder corregir eco que ocurre en cualquier parte más allá de la invención de control de eco de extremo lejano residual (RFEC = residual far-end echo control) 60 (Figura 2) en la dirección de la parte remota (Figura 1). Consecuentemente, un operador de red privada, una LEC, tal como una compañía operadora Bell regional, o un proveedor de red de cuota, tal como AT&T Corporation, puede utilizar la presente invención para aprovechar utilizando la invención en forma privada u ofreciendo el método y/o aparato de la presente invención para venta o renta o como una oferta de servicio a un subscriptor de servicios, como una característica adicional. La presente invención es especialmente útil para un usuario que frecuentemente hace llamadas por cobrar en redes remotas que tienen deficientes instalaciones de transmisión, incluyendo instancias de falla de correspondencia por impedancia que provocan reflexión y eco. Por ejemplo, el servicio de la presente invención puede ser de enorme valor a clientes que hacen frecuentes llamadas a sitios remotos que han hecho poca o ninguna inversión en mejora de transmisión. En resumen entonces por "conferenciante local" se entiende una persona que origina habla quien se subscribe a, adquiere o de otra forma obtiene servicio que se proporciona por la presente invención. Aún más, la presente invención puede emplearse más convenientemente en un sitio cercano al conferenciante local. Con referencia a la Figura 2, puede considerarse que la invención puede utilizarse en cualquier parte en un canal de cuatro cables o bi-direccional, en donde las trayectorias de comunicación están separadas. Esto puede de hecho ocurrir por ejemplo incluso en un sitio de cliente tal como una centralita privada (PBX = prívate branch exchange) que tiene cuatro cables o instalaciones de troncal de PBX portadora en donde las trayectorias de transmisión están separadas. Otros términos se emplean aquí consistentes con los mismos términos empleados en la patente x998. Típicamente, las causas de reflexión y eco en una red de telecomunicaciones conmutada pública o no conmutada privada son faltas de acoplamiento por impedancia sufridas por ejemplo en redes híbridas, solo dos instancias de las cuales se ilustran en las Figuras 1 y 2, empleadas para convertir de dos cables (ambas direcciones de transmisión simultáneamente en la porción de dos cables) a cuatro cables o cuatro cables equivalentes (trayectorias de transmisión separadas, local a remoto y remoto a local, en una porción de cuatro cables o cuatro cables equivalentes). Faltas de acoplamiento por impedancia menos intrusivas se conocen a través de la red pero probablemente la más notoria de estas es la híbrida. Estas incluyen pero no están limitadas a ubicaciones de aplicador de voz y conmutador en las porciones de red de cuota y local de un enlace extremo-a-extremo y ubicaciones de cambios de calibre de par de cobre, bobinas de carga, derivaciones de puente y semejantes en un bucle de subscriptor local. Todos estos pueden provocar reflexiones y eco que pueden corregirse por el REFC 60 de la presente invención. En los dibujos, la Figura 6 proporciona detalles de las etapas para obtener mediciones de coherencia en bruto. En particular, la Figura 6A proporciona un diagrama de flujo funcional para cálculo de coherencia entre habla de extremo cercano y señales regresadas de extremo lejano incluyendo habla; la Figura 6B proporciona bucles de algoritmo interno para cálculo de coherencia. Con referencia a la Figura 6A, las casillas 300, 440 representan la acumulación de un almacenamiento de memoria de datos con el tiempo para un enlace de comunicaciones determinado que se establece entre un conferenciante local (habla de extremo cercano) y una parte remota (habla de extremo lejano) y eco del extremo lejano del habla de extremo cercano; (habla de extremo lejano más eco de habla de extremo cercano representa una señal de extremo lejano combinada). La casilla 300 representa el almacenamiento de memoria intermedia del cuadro pasado del conferenciante local que corresponde al retardo más grande de interés y el almacenamiento en memoria intermedia de la señal actual recibida del extremo lejano. Las primeras etapas del algoritmo para estimado de retardo aplican una ventana Hanning al cuadro en la casilla 310, tomando la Transformado Fourier Rápida (FFT - Fast Fourier Transform) del cuadro en la casilla 320, decimación de la FFT en la casilla 340 y cálculo del espectro de energía en la casilla 360. Estos cálculos se realizan por cada cuadro nuevo de extremo cercano y cada cuadro nuevo de extremo lejano. La Figura 6A muestra estos cálculos para el cuadro de extremo lejano corriente y el cuadro de extremo cercano pasado correspondiente al retardo más largo a probar (por ejemplo 980 ms) . Los espectros cruzados luego se obtienen (casilla 380) para el cuadro de extremo cercano pasado contra cada cuadro de extremo lejano retardado. Este proceso se realiza repetitivamente, con promediado del espectro de energía que se realiza en cada iteración, sobre un número predeterminado de cuadros de extremo cercano (por ejemplo veinticinco) . El flujo de control para este proceso se ilustra en la Figura 6B. Cuando el promediado del espectro de energía se ha actualizado para este número suficiente de cuadros por casilla 385, luego se calcula un estimado de coherencia en la casilla 390 y el proceso empieza de nuevo. Mayores detalles de la Figura 6 se describirán en conexión con la discusión de la Figura 8. De esta manera y en tiempo real , el cálculo de coherencia resulta en pronósticos para retardo de trayectoria de eco y pérdida de retorno de eco. Ahora de acuerdo con la presente invención, las funciones de detección y seguimiento de eco se describirán adicionalmente en relación a una modalidad de la presente invención descrita por las Figuras 6-15. Primero con referencia a la Figura 7, se proporcionan alimentaciones ejemplares, en particular un conjunto amt . ametric [ ] que comprende coherencia de magnitud promediada contra retardo de tiempo entre canales de salida (hacia la parte remota) y de entrada (de regreso al conferenciante local) de un enlace de telecomunicaciones (de preferencia un enlace de cuota o de larga distancia, a una parte remota distante en donde el significante en retardo en viaje redondo). La trayectoria de comunicaciones segmentada, por ejemplo se divide en incrementos de 20 milisegundos, 40 incrementos forman un segmento que tiene una duración total aproximada de 1 segundo de habla/fondo. Una velocidad de muestreado típica es 8000 muestras/segundo. Con referencia brevemente a la Figura 8a, una forma preferida para organizar corrientes de datos de señal de ingreso y de salida es en la forma de cuadros superpuestos que comprenden tres bloques de ocho muestras cada una o 240 muestras en total. Tres de estos cuadros se ilustra que tienen un bloque de superposición sencillo de muestras, en donde el cuadro más viejo está en la izquierda superior y el cuadro más reciente está en la derecha inferior. El diseño de software de preferencia emplea una estructura superior y una inferior en donde la rutina principal es corta y simple para facilidad de integración. También, la estructura de módulo de preferencia separa código de lenguaje de ensamblada dependiente de máquina desde el código de lenguaje C u otro código de lenguaje de nivel superior. El software para cálculo de retardo determina que el valor de retardo maximiza la coherencia para habla de extremo lejano y habla de extremo cercano. Luego decide si el habla de extremo lejano en ese punto es un eco del habla de extremo cercano. El módulo seguidor proporciona alisamiento de los estimados de retardo en el curso de una llamada a fin de evitar estimados espurios tales como estimados externos (deficientes estimados que se encuentran fuera de una región de anticipación) . Siguiendo con la práctica de diseño de software convencional, archivos de cabezal y banderas de compilación condicionales pueden de preferencia ser empleadas para dar seguimientos a dependencias de sistema y cada función solicitada habrá de realizar una tarea bien definida o proporcionar un control de nivel superior para un grupo de tareas relacionadas. Todas las constantes de preferencia se definen en un solo archivo de cabezal, de manera tal que cambios en valor de constantes se realizan solo en un sitio. La organización de los datos en estructuras y memorias intermedias, la separación del algoritmo de módulos y funciones y el flujo de control , todos de preferencia se diseñan para presentar la estructura de problema con claridad. En los siguientes párrafos, estos aspectos de la invención se discutirán en detalle. Primero, se describe el colocar en memoria intermedia a datos de habla y datos computados. Finalmente, el flujo de control del algoritmo de seguimiento se describe. Datos de habla y datos computados se organizan en memorias intermedias en una forma que refleja la estructura de los datos y el problema. A fin de describir el colocar en memoria intermedia la operación de la invención, es auxiliar el definir algunos términos. Se ha TREADY el intervalo de tiempo en el cual llega cada nuevo bloque de habla. Se ha BLKSZ el número de muestras en un bloque. La velocidad de muestreado puede referirse como SR. El nombre FRSZ puede ser el tamaño de cuadro es decir el número de muestras en un cuadro. Valores preferidos para estos valores son TREADY = 10 mseg, BLKSZ = 80, SR = 8000 Hz y FRSZ = 240. Estos valores son valores sugeridos para las variables presentadas; otros pueden elegir el variar a partir de estos valores sugeridos predeterminados en otras implementaciones de la presente invención.
De nuevo con referencia a la Figura 8a, se ilustra procesamiento de cuadro de superposición preferido para aplicación en la presente invención. El algoritmo tiene dos corrientes de alimentación por la Figura 6A, la señal de habla de salida y la señal de habla de ingreso del sitio remoto, tal como un país extranjero. Cada una de las corrientes de ingreso se divide en bloques que llegan a intervalos de tiempo regulares. Por ejemplo, el programa recibe un bloque de tamaño BLKSZ (por ejemplo 80 muestras) de muestras de extremo cercano y un bloque de muestras de extremo lejano. (Si la velocidad de muestreado SR es 8000 muestras por segundo, entonces cada bloque comprende 80 muestras en la modalidad descrita) . La señal de ingreso se procesa en cuadros de tamaño de muestra FRSZ (por ejemplo 240 muestras de tres bloques de 80 muestras) en donde un cuadro comprende tres bloques que consisten de un bloque más reciente, por conveniencia referido como Bloque C de un cuadro y dos bloques previos (un Bloque B y un Bloque A) de cuadro m, m+l o m+2. El bloque más viejo de un cuadro, un Bloque A, se superpone con (y es el mismo que) el bloque más reciente del cuadro precedente, un Bloque C Por ejemplo, el tercer bloque, Bloque C, del cuadro más viejo m superpone con el primer bloque, Bloque A del cuadro m + l. El Bloque C del cuadro m y el Bloque A del cuadro m+l y los bloques correspondientes de cuadros, m+l y m+2 son ejemplos de bloques de 80 muestras que superponen entre cuadros adyacentes.
Debido a la superposición entre cuadros, se obtienen dos bloques a fin de tener un nuevo cuadro listo para procesar. El nuevo cuadro (por ejemplo, cuadro m+ l) contendrá un bloque viejo (por ejemplo, que es el Bloque C de cuadro m o Bloque A de cuadro m+l) y dos nuevos bloques (Bloques B y C del cuadro m+l) . Al inicio de una llamada, se obtienen los tres bloques iniciales. Después de ese tiempo, cada vez que han llegado dos nuevos bloques, hay un nuevo cuadro que consiste de un viejo bloque y dos nuevos bloques. Por conveniencia, el primer de cualesquiera nuevos bloques se denominará Bloque 1 y el segundo Bloque 2. Cualquier procesamiento asociado con un nuevo cuadro, se realiza durante cada bloque salteado, por ejemplo después de que se obtiene el Bloque 2. Por lo tanto, 80 ms de tiempo real es la duración disponible para procesamiento de cuadro antes que llegue el siguiente Bloque 1 del siguiente cuadro, el cuadro más reciente m+2. Los módulos para procesamiento de habla se limitaron en tiempo operativo en el procesador de habla preferido de la implementación descrita aún más, por ejemplo aproximadamente 15% de estos 80 milisegundos o a 12 milisegundos. Debido a que cada nuevo cuadro de habla consiste de tres bloques de longitud igual , con una superposición de un bloque entre cuadros, dos nuevos bloques de habla se requieren para obtener un nuevo cuadro de habla. En vez de realizar procesamiento solo después de que se recibe el segundo bloque (lo que desperdiciaría tiempo de procesamiento que ocurre después del primer bloque disponible y antes que el segundo bloque esté disponible) , la estructura de control de esta invención divide las tareas de procesamiento en dos funciones: Procesa Bloque 1 (procjlockl) y Procesa Bloque 2 ( roc_blocl2) , de manera tal que algo de cálculo puede realizarse durante cada intervalo de tiempo entre los arribos de los bloques de habla. Estas dos rutinas se describen más a continuación. Cuando el Bloque 1 de un cuadro determinado está presente y después de que se procesa mientras que el Bloque 2 no ha llegado aún, el tiempo de procesamiento de preferencia no se desperdicia. El algoritmo de preferencia pasa a procesamiento el cálculo de coherencia y funciones de seguidor. Por ejemplo, si se ha realizado promediado sobre un número suficiente, por ejemplo 25 de cuadros de extremo cercano que contienen habla, entonces durante el siguiente intervalo del Bloque 1, los cálculos de coherencia y funciones de seguidor se ejecutan. Este proceso repetitivo se ilustra en la Figura 6B. Si el promediado no se ha llevado a cabo sobre un número suficiente de cuadros (por ejemplo menos de 25) , entonces no se realizara otro cálculo durante el Bloque 1. Las nuevas muestras obtenidas durante el Bloque 1 se ahorran para el intervalo de Bloque 1. Como se describe, una "main() routine" es breve y proporciona un flujo de control para obtener las entradas y para alternar entre procesamiento de Bloque 1 y Bloque 2. La Figura 8a puede considerarse como un diagrama de una memoria intermedia circular de entrada. Esta es una memoria intermedia para muestras de habla de recién arribo. Viendo en el "cuadro más viejo" entonces, el Bloque A puede ser los sitios 0-79, el Bloque B puede ser sitios 80-159 y Bloque C puede ser los sitios 160-239, mientras que los sitios 240-255 pueden acojinarse con ceros de una memoria intermedia circular de 256 posiciones. Consecuentemente, las posiciones 0-239 forman una memoria intermedia circular. La colocación de las muestras más vieja a más nueva alterna entre tres ordenamientos posibles como nuevos bloques se obtienen; Bloques A, B, C; Bloques c, A, B y Bloques B, C, A. Tanto las memorias intermedias de habla circular de extremo cercano y extremo lejano pueden construirse y operar en forma similar. La Figura 8b es un diagrama de la puesta en memoria intermedia de datos para procesamiento en tiempo real en el algoritmo. Con referencia a las Figuras 8a y 8b, se emplean memorias intermedias circulares para procesamiento de eficiencia, de manera tal que por ejemplo, se incrementa un puntero o índice en vez de copiar grandes cantidades de datos.
La idea es mantener una historia pasada de los datos espectrales calculados para cuadros de señal de salida, de manera tal que los datos pueden compararse (es decir probarse por coherencia) con todos los cuadros de eco de ingreso posible. Una gama de valores de retardo se elige, que comprende la gama de retardos en los cuales se puede esperar encontrar eco. En telefonía, la cantidad más baja de retardo de interés con respecto a molestia en conversación, puede caer en la gama de aproximadamente 160 a 400 milisegundos. En el ejemplo ilustrado en la Figura 8b, el valor elegido es 200 ms. En el sistema actual, este valor es un parámetro variable con un valor predefinido (por ejemplo 200 ms) y el valor del parámetro puede elegirse cuando el sistema se instala en una instalación de transmisión. La idea es que en el sistema actual, si se desea, el retardo mínimo de interés puede ajustarse de manera diferente en diferentes sitios, por ejemplo si diferentes instalaciones esperan recibir señales que llegan de medios de transmisión particulares o diferentes áreas del mundo. El retardo máximo posible de interés usualmente está en la gama de 900 a 1200 msegs, aunque en casos extremos pueden ocurrir retardos de hasta 2400 ms. En el ejemplo en la Figura 8b, el retardo máximo elegido es 980 ms. En la Figura 8b, la línea superior representa procesamiento de extremo cercano y la línea de fondo representa procesamiento de extremo lejano. A la izquierda de la Figura 8b, están bloques iniciales (en este ejemplo 20) que ocurren al inicio de una llamada. El TEST FRAME es el cuadro de salida pasado cuyo eco se busca. En este ejemplo, el TEST FRAME contiene bloques 0 a 2 y se denomina Cuadro 0. El CURRENT OUTGOING FRAME es el cuadro más reciente para el cual recién se han calculado datos espectrales. En este ejemplo, CURRENT OUTGOING FRAME es el Cuadro 49. De manera tal que conforme un nuevo cuadro se recibe, el procesamiento de señal detecta el eco del cuadro que ocurrió hace NDELFRAMES, en donde NDELFRAMES es igual a CURRENT OUTGOING FRAME menos TEST FRAME, o 49 en el ejemplo de la Figura 8b. La idea es que al inicio de una llamada, los datos para los cuadros de extremo cercano inicial se guardan, y se ignoran los cuadros de extremo lejano inicial, hasta que haya suficiente retardo para empezar buscando eco. Por ejemplo, la Figura 8b muestra los veinte bloques de extremo cercano iniciales, que forman los cuadros o a 9. Datos espectrales se guardan para estos cuadros. Los cuadros de ingreso inicial correspondientes no se analizan. Conforme empiezan a llegar los cuadros pirncipiando con MÍNIMUM EXPECTED DELAY, los datos tanto para los cuadros de ingreso como de salida se guardan. Cuando se alcanza el MÁXIMUM EXPECTED DELAY, se termina la inicialización y el procesador de señal empezará a buscar el eco del TEST FRAME. En el ejemplo de la Figura 8b, valores posibles dentro de las gamas discutidas anteriormente son un MÍNIMUM EXPECTED DELAY de 200 ms y un MÁXIMUM EXPECTED DELAY de 980 s. Estos retardos habrán de considerarse como ejemplares solamente y pueden variar sobre las gamas descritas anteriormente para aplicaciones en telefonía. En aplicaciones diferentes a telefonía, las gamas de retardo pueden ser diferentes . Sean NFAR y NNEAR el número de cuadros de extremo lejano y extremo cercano, para los cuales se almacenan datos respectivamente. Sea FIRST DELAY FRAME el cuadro que corresponde al MÍNIMUM EXPECTED DELAY y CURRENT INCOMING FRAME el cuadro que corresponde al MÁXIMUM EXPECTED DELAY (esto también es el cuadro de ingreso corriente). El NFAR es igual a CURRENT INCOMING FRAME menos FIRST DELAY FRAME, más uno. NNEAR es calculado como CURRENT OUTGOING FRAME menos TEST FRAME, más uno. Es necesario guardar datos para los cuadros NFAR del habla de extremo lejano. Por ejemplo, cincuenta cuadros de habla de extremo cercano y cuarenta cuadros de habla de extremo lejano. Para cumplir con los requerimientos de procesamiento para detectar eco, es necesario almacenar datos, por ejemplo a RFEC 60 (Figura 2), para cuadros NNEAR (total), por ejemplo 50 de cuadros de habla de extremo cercano y para cuadros NFAR, por ejemplo 40 de habla de extremo lejano.
Los conjuntos de almacenamiento para los datos de preferencia, son memorias intermedias circulares de manera tal que siempre que esté listo un nuevo cuadro, sus datos asociados sobre escriben los datos almacenados más viejos en la memoria intermedia. Solo tiene que modificarse un sitio, y no es necesario mover todos los datos hacia atrás. Como ya se indicó, un índice simple o puntero se emplea para cada una de las memorias intermedias de extremo cercano y extremo lejano para dar seguimiento a cuando habrán de escribirse los más recientes datos. Lo siguiente es una implementación particular de memorias intermedias circulares empleadas para almacenar y organizar datos. Primero, se introducirán algunos parámetros. Sean NFAR y NNEAR el número de cuadros de extremo lejano y extremo cercano para los cuales se almacenan datos, respectivamente. Como se describió anteriormente, valores preferidos para NFAR y NNEAR son NFAR = 40 y NNEAR = 50 como ya se sugirió anteriormente. Luego, hay una memoria intermedia circular para datos relacionados a habla de extremo lejano y esta memoria intermedia consiste de estructuras NFAR, cada una para almacenar datos para un cuadro de habla de extremo lejano. Los datos en cada estructura consisten de: 1) las muestras decimadas, limitadas en banda de procesamiento de Transformada Fourier Rápida (FFT), y 2) el espectro de energía.
También de preferencia hay otra memoria intermedia circular para los datos referentes a habla de extremo cercano. Esta memoria intermedia es un conjunto de estructuras de tamaño NNEAR, cada una que almacena datos calculados para el habla de salida. Los datos en cada estructura (extremo cercano) consisten de: 1) una bandera que dice si el cuadro contiene o no habla y 2) las muestras decimadas, limitadas en banda de Transformada Fourier Rápida. En resumen entonces, una memoria intermedia circular de extremo cercano de alimentación y una memoria intermedia circular de extremo lejano de alimentación forman cuadros de habla desde los bloques de ingreso de muestras de habla y una memoria intermedia circular decimada de extremo lejano de una memoria intermedia circular decimada de extremo cercano se emplean para administrar el almacenamiento de información espectral para cuadros pasados. Memorias intermedias no circulares también se emplean en la presente implementación. Una memoria intermedia tal almacena bloques de habla de extremo cercano en orden consecutivo ya que no necesariamente se disponen consecutivamente en la memoria intermedia circular. Otra memoria intermedia no circular almacena datos empleados para promediar. Este es un conjunto de estructuras NFAR, cada estructura contiene datos para un valor de retardo. Cada estructura contiene 1) la energía promedio, 2) el espectro de energía cruzada promedio. El índice a esta memoria intermedia de valor de retardo es una función del valor de retardo para los datos que contiene. Ahora como una separación preferida de las tareas de la porción de algoritmo seguidor y de cálculo de retardo se describirá como una estructura modular. En una operación, la main() routine es la rutina en nivel superior. Realiza inicialización y proporciona el control de alto nivel para dirigir el procesamiento alterno asociado con el Bloque 1 y Bloque 2, como se describe brevemente con anterioridad. Después de procesar un bloque, () actualiza los valores de todos los índices a las memorias intermedias circulares. El siguiente nivel de funciones, aquéllos solicitados por (), son: 1) una rutina para calcular previamente los valores de una ventana Hanning, 2) una rutina para obtener un nuevo bloque de muestras, 3) una rutina para hacer todas las tareas de procesamiento asociadas con el Bloque 1 y 4) una rutina que realiza todo el procesamiento asociado con el Bloque 2. En el siguiente nivel, hay una rutina para organizar los sálculos para un nuevo cuadro de habla de salida y otra rutina para organizar los cálculos para una nuevo cuadro de habla de entrada.
Las funciones de nivel inferior en esta estructura modular, de preferencia se clasifican como sigue. Primero, hay rutinas para obtener nuevos bloques de muestras de extremo cercano y extremo lejano. En segundo lugar, hay rutinas para realizar cálculos matemáticos hasta y excluyendo el estimado de coherencia. Hay una rutina para cada uno de los siguientes: 1) calcular previamente la ventana Hanning, de manera tal que el tiempo real puede ahorrarse por el uso de valores calculados previamente, 2) poner en ventana un cuadro de datos con una ventana Hanning, 3) la Transformada Fourier Rápida (FFT), 4) decimar y limitar en banda la FFT, 5) calcular el espectro de energía, 6) calcular el espectro cruzado, 7) actualizar los promedios para habla de salida, 8) actualizar los promedios para habla de entrada, 9) una función que estima si un cuadro contiene habla, 10) una función de bucle que se solicita cuando el programa espera hasta que un nuevo bloque de muestras de habla esté disponible. Además de estas funciones, hay una rutina para calcular la coherencia y solicitar al seguidor. Finalmente, hay varias rutinas asociadas con la porción de seguidor. A fin de lograr desempeño en tiempo real , varias de las rutinas se implementan en lenguaje ensamblado. Estas pueden incluir: la FFT, el espectro cruzado y la actualización de los promedios.
Ahora el flujo preferido de control del algoritmo se describirá en cierto detalle. Para ayudar a esta discusión, algunos parámetros adicionales se definirán. Sean ENDINIT1 u ENDINIT2 las cuentas de cuadro empleadas para determinar los puntos en la ejecución de programa en la cual va a empezar el procesamiento de cuadro. Valores preferidos para estos parámetros son ENINITI1 = 22 y ENDINIT2 = 51. En el flujo de control preferido, la función que procesa el Bloque 2 se solicita por main(). Administra todos los cálculos matemáticos hasta y excluyendo el estimado de coherencia. Solicita una rutina para obtener y decimar la FFT para el nuevo cuadro de salida. Si la cuenta de bloques es ENDINIT1 o mayor, solicita otra rutina para calcular y decimar la FFT para el cuadro de extremo lejano. Cuando el cuadro ENDINIT2 se ha obtenido, el cuadro de salida corriente puede compararse con los cuadros de extremo lejano retardado. Solicita la función de compuerta para determinar si hay presente habla, y de ser así, actualiza la cuenta de los números de cuadros promediados . Calcula el espectro de energía para el extremo cercano y solicita una rutina para actualizar la energía promedio para esta habla de salida. Solicita la rutina de espectro cruzado para calsular el vector de espectro cruzado para el cuadro de extremo cercano, con cada cuadro retardado. Luego solicita la rutina que actualiza la energía promedio que corresponde a los cuadros de extremo lejano.
La rutina que procesa un nuevo cuadro de salida solicita las funciones para calcular la puesta en ventana, la FFT y la decimación de la FFT. La rutina que procesa el nuevo cuadro de entrada solicita las funsiones que realizan la puesta en ventana, la FFT, la decimación de FFT y el cálculo de espectro de energía. La función que prosesa el Bloque 1 se solicita por main( ) . Si se ha realizado promediado por un número suficiente de cuadros , entonces esta rutina solicitará una función para estimar la coherencia que corresponde a cada valor de retardo. Si el valor máximo obtenido excede un umbral , el retardo correspondiente al valor máximo de coherencia se considera como una ubicación posible de eco. El valor de retardo y la bandera de eco se escriben en variables que pueden leerse por otras partes del programa. Una duda principal respondida por el algoritmo seguidor es si hay eco en el canal de ingreso del canal de salida. El algoritmo seguidor de esta manera es responsable para verificar mediciones de coherensia en bruto entre los sanales de ingreso y salida, para determinar si existe eso a través de la sonversación. El algoritmo seguidor empieza de nuevo en la siguiente llamada a una ubicación diferente sobre un enlace de comunicaciones diferente.
Con referensia a la Figura 7b, un trazo de soherensia (niveles de essala 0, .5 y 1.0 ilustrados vertisalmente) sontra retardo (ilustrado somo valores de 0 a 40 Tau u 800 milisegundos) sontra tiempo durante una llamada (ilustrados somo valores de essala 0-200) se ilustra del extremo lejano son señales de extremo sersano. Con referensia a la Figura 7s, se proporsiona un sorrelograma ilustrando retardo de viaje redondo sontra tiempo durante la misma llamada que experimenta un saso de eso débil. Las regiones de banda ossuresida del sorrelograma ilustran altas sorrelasiones e insidensias de eso débil . La Figura 9 proporsiona una tabla de variables ejemplares empleadas en el algoritmo seguidor de eso. Estas insluyen el sonjunto amétriso de la Figura 7, sonjuntos de histograma y sonjuntos de índises, índises de retardo de tiempo, banderas, retardos de tiempo alisados para primeros y segundos esos, sonstantes de promedio exponensial y semejantes. Ahora, el sorazón del algoritmo seguidor de osho etapas se dessribirá son referensia a las Figuras 10-15. Las primeras tres etapas se ilustran diagramátisamente en la Figura 10. Con referensia a la Figura 10, la primer etapa del proseso sonsiste en astualizar histogramas para un primer y segundo pisos de medisiones de soherensia en bruto en amt . ametric [ ] (para incidencias de eco). A la derecha de la primer etapa se proporcionan trazos de histograma para picos de coherensia primeros y segundos ejemplares (histoA e histoB) . La etapa 2 del algoritmo es astualizar el promedio exponensial ametric[] . Una funsión tal se ilustra somo un resultado a étriso promediado a la deresha para los mismos trazos histoA e HistoB. La etapa 3 se relasiona son astualizar los índises para sada uno de histoA e histoB así somo el amétriso. Con referensia a la Figura 11 , la etapa 4 que es la detessión de una fuerte osurrensia de eso, se ilustra. La sondisión para detectar la presencia de un fuerte eco ocurre cuando la soherensia promedio ( ametric[ ] ) para un retardo determinado excede un umbral de coherensia (Thr__Coh) . En el ejemplo de histograma amétrico ilustrado en el fondo de la Figura 11, esto ocurre en un retardo (Tau) de 31 u 820 mseg., ya que la coherensia promediada máxima que osurre a un retardo representado por Tau de 31 exsede el umbral de soherencia por ejemplo a .25. La etapa 5, como se ilustra en las Figuras 12a y 12b, se relasiona al detestar un primer y segundo esos débiles en el sanal de habla de ingreso. Un primer eso débil se detesta suando sualquiera de suatro sondisiones se sumplen somo se ilustra en la Figura 12a. Cada una de las suatro sondisiones i) a iv) examina la relasión entre la soherensia promediada sontra el étriso retardado ( ametricf ] ) y el histograma del piso máximo de soherensia en bruto (histoA[ ] ) sontra el étriso retardado. Si se sumplen sualquiera de las suatro sondisiones, un primer eso débil se detesta y se realiza mayor prueba por la presensia de un segundo eso débil al sumplir sualquiera de las suatro sondisiones ilustradas en la Figura 12b. Cada una de las suatro sondisiones para detessión de segundo eso débil examina la relasión entre la soherensia promediada sontra métriso de retardo de tiempo (ametricf ] ) y el histograma del segundo piso más alto de la soherensia en bruto (histoB[ ] ) contra el métrico de retardo. La etapa 6, ilustrada en la Figura 13, se relaciona a alisar el retardo de tiempo del eso detestado. Un algoritmo de alisamiento se ilustra sobre un trazo amétrico en la región Tp a Tn (entre 30 y 32). La etapa 7, ilustrada en la Figura 14, se relaciona a seguimiento de eco sobre el tiempo durante una llamada para explorasiones susesivas de soherensia en bruto sontra métriso de retardo ( amt. ametric [ ] ) . Como se ilustra, el seguimiento sonsiste de suentas asumuladas de asiertos (eso detestado) para el primer y segundo esos. Finalmente, son referensia a la Figura 15, el algoritmo de la ostava etapa para desidir si hay presente eso, se ilustra. Si la suenta de asierto ya sea para el primero y segundo eso ( track. TcountA e track. countB) exsede los umbrales de suenta de asierto (MinCntA e MinCntB) , entonses se solosa bandera de eso somo presente. Ahora, el algoritmo sortador seguidor para remoción de eco, se discutirá en algún detalle con referencia a las Figuras 16-23. El recortador seguidor puede dividirse en dos partes, una para remoción de ruido de fritura y la otra para remoción de eco . La parte de remoción de ruido de fritura del recortador seguidor, intenta detectar eco altamente no lineal en el canal de ingreso, probablemente resultante de canseladores de eso divergentes adisionales en el enlase de somunisasiones entre sanales de salida y de entrada. Para lograr remosión de ruido de fritura, la energía de suatro cuadros de habla de 10 mseg., de ingreso consesutivos , se almacena en un conjunto TotPowln[ ] , como se ilustra en la Figura 16a. Se detesta ruido de fritura cuando dos condiciones ilustradas en la Figura 16b se cumplen. Estas dos condisiones bussan sa bios de energia abruptos entre suadros de habla de ingreso sonsesutivos . Por cambio de energía abrupto se pretende un pico o impulso de amplitud que no es carasterístiso de habla o eso de habla y así es distinguible del habla o el eso. Cuando las dos sondisiones se sumplen, el sanal de habla de ingreso se resorta (reemplaza son relleno de interferensia) por los siguientes 30 msegs. La Figura 16s muestra un ejemplo en donde el resortador seguidor ha detestado ruido de fritura alrededor de 500-600 y 800-900 índises de tiempo y reemplazarlo son relleno de interferensia de fondo. Ahora, se dissutirá son mayor detalle la remosión de eco. La porción de remoción de eco del algoritmo recortador seguidor intenta detectar eco en el tiempo de procesamiento corriente del canal de ingreso. Con referencia a la Figura 17a, la lógica de recortador seguidor depende de las alimentaciones ilustradas. Con referencia a la Figura 17b, las variables enlistadas se calsulan por el algoritmo resortador seguidor y se emplean para determinar suando resortar el eso de la señal de entrada del sonferensiante losal. La distansia sepstral (sep_dist) se relasiona a una distansia espestral entre los sanales de ingreso y salida y se salsula a partir del modelo predistivo lineal (Ips = linear predistive model) del sanal de ingreso y el modelo lps del canal de salida en el retardo de eco medido (L = orden de modelo lpc) y de asuerdo con la fórmula de la Figura 18 en donde: lpc[n]: modeló predistivo lineal (orden L) para el cuadro de habla presente del canal de ingreso, y lpc_us[ntau] : modelo predictivo lineal (orden L) para el cuadro de habla retardado (como se calsula por el estimado de retardo de eso) del sanal de salida.
El pseudo-sódigo de las Figuras 19a-22 resume las sondisiones que requieren sumplirse para deslarar el suadro de habla de ingreso sorriente de 10 mseg., somo eso. La Figura 19b proporsiona un espestro de energía de sanal de ingreso sontra el de salida para una distansia sepstral de .22 y la Figura 19s proporsiona un espestro de energía de ingreso sontra sanal de salida para una distansia sepstral de 1.06. Hay que notar que la anterior Figura 19b ilustra un espestro de energía prástisamente alineado en la distansia sepstral de .22 para entrada y salida. También, la sondisión de sorrespondensia espestral se sumple marginalmente en la Figura 19s. Para que el recortador seguidor empiece su modo de recorte, idealmente debe haber correspondensia espestral entre el sanal de ingreso y el sanal de salida retardado de asuerdo son la distansia sepstral. Los bloques de algoritmo 1 y 2 de la Figura 19 se relasionan a sorrespondensia espestral y en partisular a las sondisiones adisionales aparte de sorrespondencia espectral que deben cumplirse para empezar a recortar un eco detestado. La Figura 20 proporsiona bloques de algoritmo 3, 4 y 5 para recortar cuando no hay correspondensia espestral. El bloque 3 se ejesuta suando ambos sanales se han deslarado somo habla pero no se ha detestado sorrespondensia espestral. Se ejesuta el bloque 4, suando el sanal de salida se ha deslarado como interferencia y el canal de entrada se ha declarado como habla. El bloque 5 se ejesuta suando ambos sanales de entrada y salida se deslaran somo interferensia. La Figura 21 proporsiona sondisiones de resorte adisionales, etapas 6 y 7. El bloque 6 resorta una muestra sin resorte previa, si está entre dos muestras de resorte. El bloque 7 sontiene sondisiones adisionales para mantener el resorte, si en el suadro de habla de ingreso previo se detestó eso. La Figura 22 proporsiona sondisiones para desastivar resorte somo bloques de algoritmo 8, 9 y 10. El bloque 8 intenta identifisar el inisio de habla de extremo lejano en el sanal de ingreso para luego desastivar el resorte. Los bloques 9 y 10 intentan identificar una condisión de doble habla o doble sonversasión para también desastivar el recorte al reajustar una bandera clip__echo . Al final del algoritmo recortador seguidor, si la bandera clip_echo se ajusta, entonces la salida del cuadro de habla de ingreso se recortará, de otra forma se pasará intacta. Adicionales condisiones de resorte se dessribirán en la dissusión subsecuente de la Figura 27, proporcionando una vista general de la presente invención y aún más , descriptiva de la eliminación de un efecto de eco residual, no corregido por el recortador anteriormente descrito. La Figura 23 muestra un segmento de datos de serie en tiempo, suando el resortador seguidor ha detestado eso son condiciones de los bloques de algoritmo 1 a 7 (excepto el bloque 2) y es un ejemplo del algoritmo para remoción de eco. La Figura 23a proporciona una serie de tiempo antes de remoción de eso en donde la señal de habla de ingreso está entre 4000 y 5500 y el eso indeseable está entre 0 y 3500. La Figura 23b muestra una serie de tiempo después de que se retira el eso y se ha empleado interferencia para llenar los espacios en donde había eco. Ahora, el algoritmo de llenado con interferencia se discutirá con cierto detalle con referencia a las Figuras 24-26. La Figura 24 proporciona las alimentaciones al proceso de llenado con interferencia. El algoritmo de llenado con interferensia intenta ajustar el fondo de interferensia en el sanal de ingreso, sada vez que se ha detestado una sondisión de resorte (por ejemplo el resortador seguidor para la remosión de eso) . El pseudo código para la subrutina noise_fill ( ) se ilustra en la Figura 26a. El algoritmo de relleno con interferencia permanece en el modo de inicializasión hasta 80 milisegundos de suadros de "interferensia real" de ingreso sonsesutivo se detectan y almacenan en el conjunto Noisef] (excluyendo cuadros de interferencia DCME) . Mientras que está en el modo de inicializasión (Nfill=0 ) , sualquier relleno de interferencia requerido debido a recorte, se efectúa por rellenado con ceros. Después de inisializasión (Nfill-1 ) , el rellenado son interferencia se ajusta al fondo de interferencia en el canal de ingreso. Dos tipos de relleno de interferencia se describen aquí; sin embargo los algoritmos pueden suplementarse son mayores tipos de interferensia que interferensial tonal y blansa, si se desea. La primer etapa de algoritmo de relleno de interferencia consiste en carasterizar la interferensia somo un tipo u otro. Con referensia a la Figura 25a, se proporsiona algoritmo para determinar si el relleno de interferensia deberá ser tonal o relleno son ruido blanco. Como se ilustra, la carasterizasión de interferensia se basa en las sarasterístisas de dominio de tiempo y fresuensia de la interferensia de sanal de ingreso resolestada. Si el espestro de la interferensia de sanal de ingreso resolestada, sumple son un sriterio de umbral de energía, y la serie de tiempo de la interferensia de sanal de ingreso resolestada sumple son sriterios de umbral de ssrrelasión, entonses la interferensia se slasifisa somo tonal son Nperiod que representa el período de tiempo de la interferensia tonal. Si no se sumplen cualquiera de los dos criterios, entonces la interferencia se clasifisa somo blansa y Nperiod se ajusta a 800. Se eligen los valores de lagl y lag2 para permitir tonos entre 33 Hz y 2666 Hz se han detestado. La Figura 25b ilustra un ejemplo del espestro de energía para interferensia tonal y blanca. La Figura 25c muestra un ejemplo de la autocorrelación para interferencia tonal .
Una vez que se sarasteriza la interferensia para rellenado son interferensia blansa, el relleno se genera al elegir aleatoriamente muestras para el sonjunto Noise[] , Las
Figuras 26b y 26s ilustran ejemplos de relleno de interferensia blansa generada del sonjunto Noise[ ] . Rara interferensia tonal, el relleno se genera al elegir en forma insremental muestras desde los módulos de sonjunto Noise[J para la durasión de tono almasenada en la variable Nperiod . Para ambos tipos de relleno, la energía del relleno sorresponderá al mínimo de la energía del sonjunto Noise [] o la energía de salida del suadro de habla previo. Las Figuras 26d y 26e muestran un ejemplo del relleno de interferensia tonal generado del sonjunto Noise ] . La Figura 27a proporsiona una vista general de la presente invensión en un sistema para proporsionar adisionalmente redussión de interferensia y mejora. La trayestoria de resepsión de extremo lejano entra en la parte superior del dibujo y la transmisión de extremo sersano se ilustra en la izquierda inferior. Un detestor de astividad de voz simple bien sonosido en la espesialidad, se proporsiona para sada trayestoria en las sasillas 2714 y 2716, respectivamente. En la ausencia de astividad de voz en la trayestoria de resepsión, se proporsiona algoritmo de redussión de interferensia, por ejemplo de asuerdo son la solisitud de patente de los E.U.A. No. de Serie 08/160,770 presentada en Noviembre 30, 1993 y la solisitud de sontinuasión-en-parte de patente de los E.U.A. No. de Serie 08/455,932 presentada en Mayo 31, 1995 de Woodson D. Wynn. El resortador seguidor de la presente invensión dessrito anteriormente se ilustra en la sasilla 2715 para assionar la sasilla de sontrol de resorte 2704 de asuerdo son un sálsulo estimado de retardo en la sasilla 2701. El seguimiento de retardo somo se dessribió anteriormente se ilustra somo sasilla 2702 para proporsionar una alimentasión a la sasilla de assionamiento de resorte de extremo lejano residual (RFEC = residual far end slipping) 2703. Una sasilla dissriminadora de forma de onda de habla 2705 que astúa en la trayestoria de resepsión, proporsiona una alimentasión al resortador RFEC 2706 que a su vez assiona el sontrol de resorte 2704. Como se dessribirá más a sontinuasión, el detestor de astividad de voz en la trayestoria de transmisión 2716 proporsiona una entrada a un proseso de pronóstiso de ventana de eso y a su vez al resortador RFEC 2706. Los efestos de eso residuales pueden apareser en suadros de ingreso desde el extremo lejano. Eso de extremo lejano residual se sarasteriza porque tiene sarensia de relasión lineal a una señal de voz de referensia; es de baja energía, de ráfaga, sorta en durasión, esporádiso y dissontínuo. Consesuentemente, el resortador RFEC opera son base en su propio sonjunto de medidas insluyendo formación de rampa en energia de señal, estado de resorte del resortador seguidor 2715, y la probabilidad de habla son voz desde el detestor 2716. Mientras que el resortador seguidor 2715 emplea promediado de largo plazo de los sálsulos de soherensia somo se dessribió anteriormente, el resortador RFEC no utiliza soherensia. De asuerdo son las Figuras 27s y 27d, el resortador RFEC mantiene un estimado que sorre de nivel de señal recibido para, por ejemplo 100 ms en una memoria intermedia cirsular de 10 suadros. En sada suadro, la energía de señal para fresuensias inferiores a 2000 hertz, en donde se sonesta la mayor parte de energía de habla, se salsula y un estimado de nivel de señal derivado son base en un sonjunto de umbrales fijos alrededor de un nivel esperado de eso residual. El estimado de nivel de señal reduse la fluctuación de energía de señal para detecsión de rampa. Con referencia a la Figura 27c, una decisión de rampa de energía luego se efectúa cuando un estimado que corre ponderado de los niveles de señal, por ejemplo de cinso suadros intersalados superpustos en la memoria intermedia circular está sobre el umbral (es decir 22222). Con referencia a la Figura 27d, se calsula el nivel de señal ponderado de 100 ms de valor de señal de habla utilizando la siguiente fórmula:
Nivel de señal ponderado = (nivel de señal de t+4 suadro)* 10000 + (nivel de señal de t+2 suadro)* 1000 + (nivel de señal de t suadro)* 100 + (nivel de señal de t-2 suadro)* 10 + (nivel de señal de t-4 suadro)* 1 Las ponderasiones de los suadros en la memoria intermedia circular se asignan por la secuensia de suadros resibidos. Debido a que el algoritmo tiene un retardo de prosesamiento de suatro suadros, si el suadro al tiempo "t" es el suadro de salida, entonses el suadro t+4 al tiempo t+4 es el suadro astualmente resibido . Los suadros t-1 , t-2 , ... , t-5 son los suadros que ya se enviaron de salida en tiempo. Si el resortador seguidor 2715 no resorta un suadro y la energía de señal está sobre el umbral predeterminado o el nivel de energía indisa una rampa de energía en una ventana de eso (que será dessrita en detalle), el resortador RFEC 2706 no prosesará el suadro y lo pasará. Si el nivel de señal está por debajo del umbral de eso residual y no tiene sarasterístisas de habla son voz (es desir detessión de formante por la Figura 27e) o la señal tiene una durasión inferior a 50 ms en la ventana de eso, el resortador RFEC 2706, retirará la señal de eso residual son ráfaga y la reemplazará son relleno de interferencia apropiado (que se proporciona por la casilla 2713). Con referencia a la Figura 27e, la desisión de habla son voz, de preferensia se realiza por la detessión de formante en el espestro de señal de voz . La presencia de formante se indica por el pico espectral y la proximidad de dos frecuensias de espestro de línea adyasentes (LSF = line spestru frequensies) derivada del sálsulo de pronóstiso lineal (LPC = linear predistion salsulation) de sada suadro de señal de voz. La Figura 27e ilustra el espestro de una señal de habla son voz, la envolvente de espestro de LPC y diez fresuensias de espestro de línea (LSF1s) derivadas del LPC. Por ejemplo, un piso espestral indisado por el primer par de LSF?s, desde la izquierda muestra una fresuensia de formante a aproximadamente 480 Hertz; el terser par de LSFxs de la izquierda indisa otro formante a aproximadamente 1700 Hertz. Brevemente con referencia a la Figura 27b, cuando se detecta eco y el algoritmo de RFEC se activa, una medida del intervalo de tiempo en el que puede ocurrir eco denominado una ventana de eco se deriva, como se ilustra para el nivel de energía de referencia (es decir la transmisión de extremo cersano) , el retardo de eso medido, la detessión de voz y el nivel de pérdida de eso. El resortador RFEC 2706 también mide la actividad del seguidor/resortador 2715 en la ventana de eso. Si el resortador seguidor 2706 deja de resortar en una ventana de eso en la que ha estado astivo retirando eso, entonses el resortador RFEC sontinuará resortando la señal en suadros que no tienen detessión de formante. Ahora sada una de las sasillas 2701-2707 se dissutirá individualmente. La sasilla 2701 es el sálsulo de soherensia dessrito anteriormente son respesto a las Figuras 6 y 8 para medir retardo de eso entre las señales transmitida y resibida. A los resultados de sálsulo de la sasilla 2701 se les da seguimiento en la sasilla de seguimiento de retardo 2702 para generar un estimado estable de retardo de eso en milisegundos. Si el retardo está dentro de la gama por ejemplo 200 a 1000 milisegundos, entonses la sasilla para sontrol de astivasión RFEC 2703 permite que la sasilla de sontrol de resorte 2704 inisia remosión de eso y relleno de interferensia por los sonmutadores 2710 y 2713 tanto para la sasilla de resortador seguidor 2715 y resortador RFEC 2706. El resortador de eso de extremo lejano residual 2706 opera mediante la misma funsión de sontrol de resorte 2704 y de esta manera resorta suando el resortador seguidor 2715 no. El sontrol de resorte 2704 sontrola la salida del algoritmo, suando el sontrol de resorte 2704 se astúa por la astivasión RFEC 2703, banderas de sontrol del resortador seguidor 2715 y el resortador RFEC 2706 pueden ajustarse de sonformidad suando un suadro de señal requiere ser resortado. Si se ajusta la bandera de resorte, el sontrol de resorte 2704 opera sonmutadores para reemplazar el suadro de señal son relleno de interferensia apropiado 2711. Si no se ajusta bandera de recorte, la salida de señal recibida del conmutador 2710 se pasa sin procesar por el presente algoritmo con un retardo fijo de 10 ms (para compensar el tiempo de procesamiento). En una forma similar, un retardo de 30 ms 2708, compensa la reducsión de interferensia 2709 dependiendo de la posición del conmutador del conmutador 2710. Ahora, se discutirá la casilla discriminadora de forma de onda de habla 2705. El dissriminador en forma de onda de habla 2705 mide si la alimentasión o el suadro de señal resibido sontiene habla son voz o formasión de rampa de energía. De nuevo son referensia a la Figura 27e, por sada suadro , las medisiones de energía de señal de fresuensias inferiores a 2000 hertz y niveles de piso espestral desde los primeros dos pares de frecuencias de espectro de línea adyacentes se calculan. Con referencia a la Figura 27c, si el nivel de energía está sobre el umbral y muestra un incremento cuando se compara a su historia de 100 milisegundos, una bandera de formación de rampa de energía, se ajusta para el cuadro de señal corriente. Si los niveles de pico espectrales están sobre el umbral, se ajusta una bandera de detecsión de formante. Las medisiones se mantienen en una memoria intermedia circular por 100 milisegundos (es decir 10 cuadros). El recortador RFEC 2706 toma las mediciones del discriminador de forma de onda de habla 2705 y determina si la señal recibida habrá de recortarse o no, cuando la ventana de eso se indisa por el pronostisador de ventana de eso 2707 (de acuerdo con la Figura 27b) . Si el nivel de señal está por debajo del umbral de eco residual y no tiene carasterístisa de habla son voz (es desir detessión de formante) o la señal tiene una durasión inferior a 50 milisegundos en ventana de eso, se ajustará una bandera en el sontrol de resorte 2704 para resortar la señal. Con referensia a la Figura 27b, suando se detesta eso y el algoritmo RFEC se astiva, sada pronostisador de ventana 2707 pronostisa el intervalo de tiempo de la señal resibida en donde puede osurrir el eso residual. Debido a que el eso residual se distorsiona en forma no lineal, no tiene semejanza a su señal original y los sálsulos de soherensia no pueden emplearse somo un pronostisador. La ventana de eso se deriva del nivel de energía de referensia desde la transmisión de extremo sersano, el retardo de eso medido desde el seguimiento de retardo 2702, la detessión de voz desde el detestor de astividad de voz 2716, y el nivel de pérdida de eso desde el seguimiento de retardo 2702. De esta manera, se ha ilustrado y dessrito un algoritmo para implementar somo un algoritmo para sontrol de eso de extremo lejano, para detestar eso (ya sea fuerte o débil), dar seguimiento al eso, retirar el eso que insluye efestos de eso residuales y llenar el espasio del eso retirado son uno u otro tipo de interferensia detestada a un nivel apropiado. La presente invensión puede ser útil aplisada dentro y fuera de las tésnicas de telecomunicaciones . Todas las solicitudes de patentes y patentes de los E.U.A. aquí referidas habrán de sonsiderarse insorporadas por referensia en suanto a todos sus sontenidos. El alcance de la invención solo habrá de considerarse limitado por las reivindicasiones que siguen. Se hase sonstar que son relación a esta fecha, el mejor método conosido por la solisitante para llevar a la práctica la citada invención, es el que resulta claro de la presente descripsión de la invensión. Habiéndose dessrito la invensión somo antesede, se reslama somo propiedad lo sontenido en las siguientes:
Claims (38)
- REIVINDICACIONES 1. Aparato para prosesar señales de teleso unisasiones generadas durante una somunisasión de voz entre un sonferensiante losal y un sonferensiante remoto, el aparato se saracteriza porque comprende: un procesador de señal para procesar muestras de las señales de telecomunisasiones y una memoria intermedia sirsular para almasenar las muestras de señales de telesomunisasiones.
- 2. Aparato de sonformidad son la reivindisasión 1 , sarasterizado porque se proporsiona una memoria intermedia sirsular para señales de extremo sersano y una memoria intermedia sirsular se proporsiona para señales de extremo lejano.
- 3. Aparato de sonformidad son la reivindisasión 2 , sarasterizado porque la memoria intermedia sirsular para señales de extremo lejano somprende estrusturas de datos para suadro de habla de extremo lejano.
- 4. Aparato de sonformidad son la reivindicación 1 , carasterizado porque las señales de telesomunisasiones muestreadas se recolectan como bloques superpuestos de muestras.
- 5. Aparato de sonformidad son la reivindisasión 1 , caracterizado porque el procesador de señal comprende una pluralidad de módulos de software que tienen una estructura de control superior-inferior.
- 6. Aparato de sonformidad son la reivindisación 1 , carasterizado porque el prosesador de señal somprende un detestor de astividad de voz y un estimador de retardo que responde a las señales de extremo sersano y lejano y un resortador seguidor que responde al estimador de retardo y el detestor de astividad de voz para resortar eso.
- 7. Aparato de sonformidad son la reivindisasión 6 , sarasterizado porque el prosesador de señal además somprende una funsión de relleno de interferensia para insertar relleno de interferencia que responde a recorte de eco.
- 8. Aparato de conformidad con la reivindicación 1 , carasterizado porque el prosesador de señal somprende un estimador de retardo que responde a las señales losal y remota y un recortador seguidor que responde al estimador de retardo.
- 9. Aparato de conformidad con la reivindicasión 1, sarasterizado porque el prosesador de señal somprende un dissriminador de forma de onda de habla, un pronostisador de ventana de eso y un resortador, que responde al dissriminador de forma de onda de habla y el pronostisador de ventana de eso, para resortar eso residual.
- 10. Un método para prosesar señales de telesomunisasiones generada durante una somunisasión de voz entre un sonferensiante losal y un conferenciante remoto, el método se carasteriza porque somprende las etapas de: almasenar datos de señal de comunicasiones en una memoria intermedia sirsular y asignar tareas de prosesamiento en tiempo real entre 1 ) salsular y promediar espestros de energía y espestros sruzados y 2) salsular soherensia.
- 11. Un método de sonformidad son la reivindisasión 10, sarasterizado porque la memoria intermedia sirsular al asena bloques superpuestos de muestras.
- 12. Un método de sonformidad son la reivindisasión 11, sarasterizado porque la primera y segunda memorias intermedias sirsulares almasenan señales de extremo sersano y de extremo lejano respestivamente y además somprende la etapa de indexar las memorias intermedias sirsulares.
- 13. Un método de sonformidad son la reivindisasión 10, sarasterizado porque además somprende la etapa de organizar datos de sálsulo de retardo de señal en estrusturas de datos.
- 14. Un método de conformidad con la reivindicación 11, carasterizado porque la etapa de almasenamiento además somprende las etapas de obtener suadros de habla, realizar sálsulos de habla y sontar suadros hasta que se alsanza una suenta predeterminada para determinasión de soherensia.
- 15. Un método de sonformidad son la reivindisasión 14, sarasterizado porque la etapa de realizar sálsulos de espestro está presedida por las etapas de formasión de ventana Hanning y análisis Fourier.
- 16. Un método de sonformidad son la reivindisasión 15, sarasterizado porque el análisis Fourier se sigue por desimasión.
- 17. Un método para prosesar señales de teleco unicasiones generadas durante una somunisasión de voz entre un sonferensiante losal y un sonferensiante remoto, el método se sarasteriza porque somprende las etapas de: organizar sorrientes de datos de alimentasión de datos de extremo sersano y extremo lejano en memorias intermedias sirsulares y no circulares, calcular retardo correspondiente a coherencia máxima entre datos de extremo cersano y extremo lejano y determinar la ubisasión de eso.
- 18. Un método de conformidad con la reivindicación 17, carasterizado porque además somprende las etapas de resortar el eco y reemplazar el eco son relleno de interferensia.
- 19. Un método de sonformidad con la reivindicasión 17, sarasterizado porque somprende las etapas de losalizar ruido de fritura y reemplazar el ruido de fritura son relleno de interferensia.
- 20. Un método de conformidad con la reivindicación 17, carasterizado porque además comprende las etapas de detectar actividad de voz, pronosticar una ventana de eco y localizar un efecto de eso residual.
- 21. Un método para procesar señales de telecomunisasiones para aliviar eco que ocurre durante una comunisasión de voz entre un sonferensiante losal y un sonferensiante remoto, sarasterizado porque somprende las etapas de: detestar eso, dar seguimiento al eso, retirar el eso y llenar los espasios de eso son interferensia.
- 22. Un método para prosesar señales de telesomunisasiones para aliviar eco de conformidad con la reivindicasión 21, sarasterizado porque además comprende la etapa de: detectar eco altamente no lineal en el canal de ingreso y si se detecta, recortar el canal de ingreso del conferensiante remoto.
- 23. Un método para prosesar señales de telecomunicasiones para aliviar eco de conformidad con la reivindicasión 21, sarasterizado porque además comprende las etapas de: dar seguimiento a interferencia, determinar cual de al menos dos tipos de interferencia está presente y la etapa de rellenar espacios de eco retirados con interferencia, además comprende la etapa de rellenar el espacio con interferencia del tipo determinado.
- 24. Un método para procesar señales de telecomunisasiones para aliviar eso de sonformidad son la reivindisasión 23, sarasterizado porque la etapa de determinasión de interferensia somprende la etapa de sarasterizar la interferensia entre interferensia tonal e interferensia blansa.
- 25. Un método para prosesar señales de telesomunisasiones para aliviar eso de sonformidad son la reivindisasión 24, sarasterizado porque la etapa de rellenar interferensia para interferensia tonal somprende la etapa de generar fresuensias tonales dentro de la gama de fresuensia de voz.
- 26. Un método para prosesar señales de telesomunisasiones para aliviar eso, sarasterizado porque comprende las etapas de: calsular una distansia cepstral, ajustar los espectros de energía de un canal de ingreso y uno de salida, y determinar las condisiones de resorte de retardo y nivel de energía a partir de la sorrespondencia espectral de energía.
- 27. Un método de conformidad con la reivindicasión 26, sarasterizado porque además somprende las etapas preliminares de formasión de ventana Hanning para los sanales de ingreso y salida, análisis Fourier rápido y desimar los resultados de análisis Fourier rápido.
- 28. Un método para remover ruido de fritura, sarasterizado porque somprende las etapas de: almasenar una pluralidad de suadros de datos de ingreso e identifisar sambios de energía tipo piso entre suadros de datos de ingreso sonsesutivos, no sarasterístisos de habla.
- 29. Un método de sonformidad son la reivindisasión 28, sarasterizado porque además somprende la etapa de retirar los sambios de energía tipo piso y reemplazar los mismos son relleno de interferensia.
- 30. Aparato para retirar eso de una señal generada de extremo lejano resibida, sarasterizado porque somprende un detector de actividad de voz para detectar actividad de voz en la señal de extremo lejano recibida y una señal de extremo cercano, un estimador de retardo para estimar retardo en las señales de extremo lejano y extremo cersano resibidas y un resortador seguidor que responde al detestor de astividad de voz y el estimador de retardo para assionar un resorte de eso.
- 31. Aparato para retirar eso de sonformidad son la reivindisasión 30, sarasterizado porque además somprende el relleno de interferensia para reemplazar eso reportado son interferensia.
- 32. Aparato para retirar eso de sonformidad son la reivindisasión 30, sarasterizado porque además somprende redussión de interferensia para redusir interferensia en la señal resibida en respuesta al detestor de astividad de voz, para detectar actividad de voz en la señal recibida.
- 33. Aparato para retirar eco de conformidad con la reivindicasión 30, sarasterizado porque además somprende un seguidor de retardo que responde al estimador de retardo y un assionador de eso de extremo lejano residual que responde al seguidor de retardo.
- 34. Aparato para retirar eso de sonformidad son la reivindisasión 30, sarasterizado porque además somprende un dissriminador de forma de onda de habla que responde la señal resibida, un pronostisador de ventana de eso que responde al detestor de astividad de voz, para detestar astividad de voz en la señal transmitida y un resortador de eso de extremo lejano residual, para accionar un recorte de efectos de eco residual.
- 35. Aparato para retirar eco de conformidad con la reivindicasión 34, sarasterizado porque además somprende relleno de interferensia para reemplazar eso residual resortado son interferensia.
- 36. Aparato para procesar señales de telecomunisasiones generadas durante una somunisasión de audio, que somprende una señal losal y una señal remota, el aparato es operable en tiempo real y somprende un estimador de retardo para ensontrar el retardo que sorresponde a un eso de la señal losal somo se resibe por el sonferensiante losal desde un sonferensiante remoto, y un seguidor para mantener los estimados de retardo a través de la somunisasión de audio.
- 37. Un método para detectar la ocurrensia de eso en un sanal de telesomunicaciones, sarasterizado porque somprende las etapas de: almasenar un histograma de soherensia para una coherencia de retardo en canal de telecomunicaciones promedio y detestar la osurrensia de eso a partir del evento de pisos del histograma de soherensia que exsede un umbral de soherensia.
- 38. Un método para clasificar interferensia de canal de telecomunisasiones somo interferensia tonal, sarasterizado porque somprende las etapas de: determinar si un espestro de señales de canal de telecomunicaciones de ingreso resolestadas , sumple son un sriterio de umbral de energía; determinar si una serie de tiempo de las señales de sanal de ingreso resolestadas cumple con criterios de umbral de correlación, y si los criterios de umbral para energía y correlasión se sumplen, clasificar la interferencia como tonal.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08831874 | 1997-04-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA98002475A true MXPA98002475A (es) | 1999-02-24 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6167133A (en) | Echo detection, tracking, cancellation and noise fill in real time in a communication system | |
EP1998539B1 (en) | Double talk detection method based on spectral acoustic properties | |
US8014519B2 (en) | Cross-correlation based echo canceller controllers | |
CN1064772C (zh) | 语音活动性检测器 | |
JP3228940B2 (ja) | 音声通信ネットワークにおける残留遠端エコーを低減するための方法と装置 | |
CA2888894C (en) | System and method for acoustic echo cancellation | |
US6269161B1 (en) | System and method for near-end talker detection by spectrum analysis | |
US8290141B2 (en) | Techniques for comfort noise generation in a communication system | |
US20050131678A1 (en) | Communication system tonal component maintenance techniques | |
EP0791251A1 (en) | Echo cancellation using cross-correlation of buffered receive and transmit sample segments to determine cancelling filter coefficients | |
US20090028321A1 (en) | Echo Path Change Detection in a Network Echo Canceller | |
US8019075B2 (en) | Hybrid echo canceller controllers | |
US8081753B2 (en) | Hybrid echo canceller controllers | |
US6091813A (en) | Acoustic echo canceller | |
US8009825B2 (en) | Signal processing | |
MXPA98002475A (es) | Deteccion seguimiento, cancelacion y llenado con interferencia de eco en tiempo real en un sistema de comunicaciones | |
Dyba | Parallel structures for fast estimation of echo path pure delay and their applications to sparse echo cancellers | |
Yoo et al. | A new double talk detector using the lattice predictors for an acoustic echo canceller | |
Khalife | Cancellation of acoustic reverberation using adaptive filters | |
Alexander et al. | Applications of the LMS Algorithm | |
Hila | Efficient time delay estimation and compensation applied to the cancellation of acoustic echo | |
Naylor et al. | Amélioration des télécommunications mains-libres | |
MXPA96005354A (es) | Metodo y aparato para reducir el eco residual del extremo lejano en redes de comunicacion de voz |