ES2211057T3 - Sistema y metodo para el ajuste del umbral de ruido usado para detectar actividad vocal en ambientes ruidosos no estacionario. - Google Patents
Sistema y metodo para el ajuste del umbral de ruido usado para detectar actividad vocal en ambientes ruidosos no estacionario.Info
- Publication number
- ES2211057T3 ES2211057T3 ES99911001T ES99911001T ES2211057T3 ES 2211057 T3 ES2211057 T3 ES 2211057T3 ES 99911001 T ES99911001 T ES 99911001T ES 99911001 T ES99911001 T ES 99911001T ES 2211057 T3 ES2211057 T3 ES 2211057T3
- Authority
- ES
- Spain
- Prior art keywords
- signal
- power
- noise
- lower envelope
- period
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000001755 vocal effect Effects 0.000 title description 48
- 238000001514 detection method Methods 0.000 claims abstract description 17
- 238000012795 verification Methods 0.000 claims description 33
- 230000002688 persistence Effects 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 19
- 230000007423 decrease Effects 0.000 claims description 9
- 230000006978 adaptation Effects 0.000 abstract description 8
- 230000000694 effects Effects 0.000 abstract description 8
- 238000004088 simulation Methods 0.000 abstract description 7
- 238000013459 approach Methods 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000010348 incorporation Methods 0.000 abstract 1
- 230000014509 gene expression Effects 0.000 description 45
- 230000007704 transition Effects 0.000 description 23
- 239000000243 solution Substances 0.000 description 11
- 238000009499 grossing Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 230000003595 spectral effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 1
- 206010019133 Hangover Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 239000003637 basic solution Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
- G10L2025/783—Detection of presence or absence of voice signals based on threshold decision
- G10L2025/786—Adaptive threshold
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Noise Elimination (AREA)
- Time-Division Multiplex Systems (AREA)
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
- Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)
Abstract
El sistema y el procedimiento de la invención se refiere a una tecnología de detección de voz para determinar los instantes de tiempo en los que una instantánea de las características de ruido da como resultado una adaptación mejorada de los niveles bajos de ruido usados en la detección de voz. La aproximación se basa en la "envolvente inferior" de la potencia de señal de entrada suavizada. La incorporación de esta aproximación en un único VAD en el dominio del tiempo (Detector de la Actividad de Voz) da como resultado un sistema efectivo de baja complejidad que, en base a simulaciones, da un buen rendimiento bajando a valores de SNR de aproximadamente 0 dB. En la invención la envolvente inferior también proporciona el valor actualizado del umbral de ruido durante la presencia de voz. La invención también puede ser incluida en otros VAD, más complejos (por ejemplo, en el dominio de la frecuencia) a un bajo coste de cálculo.
Description
Sistema y método para el ajuste del umbral de
ruido usado para detectar actividad vocal en ambientes ruidosos no
estacionarios.
La invención se refiere a la tecnología de
detección de voz, y más en particular a la estimación de niveles
mínimos de ruido para ayudar a la discriminación de voz.
Los Detectores de Actividad Vocal (VADs)
constituyen un importante componente en los sistemas de codificación
del habla que hacen uso de los períodos de silencio naturales que se
dan en la señal de habla para incrementar el rendimiento de la
transmisión. Dichos Detectores de Actividad Vocal constituyen
también una parte esencial de los de la mayoría de los sistemas de
mejoramiento de la palabra, puesto que en estos sistemas el nivel y
la forma espectral del ruido de entrada son típicamente medidos y
actualizados solamente en aquellos segmentos que contienen tan sólo
ruido. En la EP-A-0140249 está
descrito un ejemplo de un VAD conocido.
La información de los VADs es útil también en
otras aplicaciones tales como la de racionalizar los paquetes de
habla en Internet compensando los retrasos de la red en las lagunas
de actividad vocal, o la de detectar los puntos finales de las
expresiones verbales bajo condiciones ruidosas en las tareas de
reconocimiento del habla.
En la mayoría de estas aplicaciones, el ruido de
fondo no siempre es estacionario. En un sistema de telefonía móvil
de manos libres, por ejemplo, puede variar rápidamente el ruido
tanto del coche como de la carretera. El VAD debe por consiguiente
adaptarse rápidamente a las cambiantes condiciones de ruido para
proporcionar una precisa indicación de los segmentos sólo de ruido.
Puesto que tampoco es estacionaria la propia señal de habla, esta
tarea no es habitualmente una tarea sencilla. Han sido descritos en
los últimos años varios métodos de adaptación y algoritmos para
VADs, siendo algunos de ellos parte (o estando algunos de ellos en
curso de ser normalizados como parte) de sistemas de codificación
del habla estándar que son conocidos en la técnica. Sin embargo,
estos VADs son complicados y susceptibles de perfeccionamiento tanto
en cuanto a las prestaciones como en cuanto a la complejidad,
particularmente para aplicaciones distintas de la codificación del
habla.
La invención, que supera estos y otros problemas
de la técnica, se refiere a un sistema y un método para la
adaptación del umbral de ruido para la detección de voz como los
reivindicados en las reivindicaciones adjuntas, estando dichos
sistema y método basados en parte en la observación de que el nivel
de ruido de fondo puede ser actualizado incluso durante cortos
intervalos de silencio en la señal de habla, a base de efectuar un
seguimiento de un parámetro al que se denomina "envolvente
inferior" de la señal de entrada. En aras de la sencillez, se
describe la invención como parte de un VAD en el dominio temporal de
escasa complejidad que resulta que funciona bien hasta valores de la
relación señal/ruido de aproximadamente 0 dB. Se comprenderá sin
embargo que la invención puede ser incorporada a VADs más complejos
capaces de dar buenas prestaciones incluso con valores más bajos de
la relación señal/ruido.
Se describe a continuación la invención haciendo
referencia a los dibujos siguientes, en los cuales los elementos
iguales están designados por números iguales, y en los cuales:
La Fig. 1 ilustra un diagrama esquemático de
bloques de un sistema VAD según la invención;
la Fig. 2 ilustra el uso de la verificación de la
estacionariedad de la potencia durante una transición de ruido de
helicóptero;
la Fig. 3 ilustra una forma de onda de transición
de ruido de helicóptero con decisiones de VAD superpuestas;
la Fig. 4 ilustra el uso de una envolvente
inferior para actualizar el umbral de ruido según la invención;
la Fig. 5 ilustra la forma de onda de dos frases
habladas en una rampa de ruido blanco con decisiones de VAD
superpuestas según la invención;
la Fig. 6 ilustra la combinación de la
verificación de la estacionariedad de la potencia con el seguimiento
de la envolvente inferior según la invención;
la Fig. 7 ilustra un organigrama de la generación
de la envolvente inferior y del umbral de ruido según la
invención;
la Fig. 8 ilustra la salida de VAD para
transición de silbido de cinta seguida por música y habla según la
invención;
la Fig. 9 ilustra una forma de onda de transición
de silbido de cinta seguida por el comienzo de música y habla según
la invención con decisiones de VAD superpuestas según la
invención;
la Fig. 10 ilustra la salida de VAD para frases
habladas en ruido de coche según la invención;
la Fig. 11 ilustra una forma de onda de seis
frases en ruido de coche con decisiones de VAD superpuestas según la
invención;
la Fig. 12 ilustra la salida de VAD para palabras
habladas aisladas en ruido de helicóptero según la invención;
la Fig. 13 ilustra la forma de onda de palabras
habladas aisladas en ruido de helicóptero con decisiones de VAD
superpuestas según la invención;
la Fig. 14 ilustra la salida de VAD para seis
frases habladas en ruido blanco según la invención; y
la Fig. 15 ilustra una forma de onda de seis
frases habladas en ruido blanco con decisiones de VAD superpuestas
según la invención.
Para demostrar el sistema y método de la
invención, se describe en primer lugar una implementación de VAD en
el dominio temporal de escasa complejidad en conjunción con la cual
opera la invención, como se ilustra en la Fig. 1. El VAD 20 incluye
un procesador 80 conectado a la memoria electrónica 90 y al
almacenamiento de disco duro 100 en el cual está almacenado el
programa de control 120 para llevar a cabo los aspectos
computacionales y otros aspectos de la invención. El VAD 20 está
conectado a una unidad de entrada 70 que puede ser un micrófono u
otra fuente de señales de entrada, y a la unidad de salida 110, que
puede incluir una unidad de salida audible o una circuitería de
procesamiento de señales digitales u otra circuitería. Para cada
segmento de señales de entrada de la longitud N_{seg}, el
VAD 20 toma una decisión sobre si está presente (V = 1) habla
o si no está presente (V = 0) habla. La decisión es tomada
comparando el nivel de potencia de la señal en cada segmento con un
umbral determinado. Sin embargo, puesto que se preve que varíe la
potencia de ruido, el umbral debe ser adaptado al nivel de
ruido.
Digamos que \lambda_{m} denota la potencia de
ruido en el m^{ésimo} segmento y que Y_{m} denota la
potencia de señal ruidosa de entrada en ese segmento, es decir:
Ecuación
1
donde y_{m}(n) es la
n^{ésima} muestra de señal de entrada en el
m^{ésimo} segmento, lo cual puede escribirse bajo un
supuesto de ruido aditivo
como:
Ecuación
2
\vskip1.000000\baselineskip
donde x denota la señal de habla limpia y
v es el ruido.
Podría entonces decidirse que está presenta habla
en el m^{ésimo} segmento si 3 , donde
4 es la potencia de ruido estimada para ese
segmento. Sin embargo, puesto que incluso si el ruido es
estacionario, una estimación a corto plazo de su potencia (cuando
está ausente el habla) fluctuaría de segmento a segmento, debería
usarse un valor umbral algo más alto que 5 para
evitar las demasiado frecuentes decisiones erróneas de que está
presente habla. Por consiguiente, se elige que el valor umbral de
ruido Th_{\lambda}(m) con el cual se compara
Y_{m} sea
Ecuación
3
donde b_{\lambda} es un factor de
tendencia que sirve para eliminar este efecto. Un factor de
tendencia demasiado grande podría hacer que el VAD decidiese que hay
ausencia de habla (V = 0) a bajos niveles de habla (como p.
ej. en el habla muda), por lo cual b_{\lambda} es
típicamente limitado a valores de menos de 2. Han sido usados
valores situados dentro de la gama de valores que va desde 1,1 hasta
1,6, adaptados al nivel de
ruido.
Además, puesto que Y_{m} puede también
presentar indeseadas fluctuaciones de segmento a segmento,
particularmente cuando los segmentos son cortos, se hace un
alisamiento de la potencia de entrada a corto plazo mediante la
siguiente relación recursiva:
Ecuación
4
donde 0 < \alpha_{y} < 1 es un factor
de alisamiento, y 8 es la potencia de entrada a
corto plazo
alisada.
Así, la regla de decisión para el VAD es:
Ecuación
5
V = 1 (presencia de habla) si
9
V = 0 (sólo ruido) si
10
Puesto que la potencia de una típica expresión
verbal disminuye lentamente al final de la misma (en comparación con
el típicamente rápido comienzo de la expresión verbal), es habitual
en la técnica demorar la decisión V = 1 por espacio de unos
pocos segmentos más a continuación del final de una expresión verbal
(siendo ésta una técnica que es conocida como "persistencia")
(en inglés "persistencia" = "hangover", y en abreviatura
"hngovr"). Con esto se evita cortar (cuando V es
considerada como una función de ganancia) el final de la expresión
verbal, lo cual podría suceder como consecuencia de haber decidido
demasiado pronto que V = 0. Al diseñar un VAD, debe
establecerse en general un valor para el intervalo de persistencia,
T_{hngovr}, el cual determina el correspondiente número de
segmentos de persistencia, L_{hngovr}, por medio de la
relación 11 , donde T_{step} es la duración
del intervalo de actualización de segmento.
Puesto que la decisión en la Ecuación (5) está
basada en la potencia de entrada alisada 12 , hay ya
una persistencia natural debido al alisamiento. Por consiguiente,
T_{hngovr} queda inicialmente limitado a menos de 0,1 seg.
T_{hngovr} puede ser también adaptado al nivel de ruido,
como es sabido en la técnica (véase E. Paksoy, K. Srinivasan y A.
Gersho, "Variable Rate Speech Coding with Phonetic
Segmentation", ICASSP-93, Minneapolis, pp.
II-155 - II-158, 1993), por ejemplo
permitiendo que varíe desde 64 mseg. hasta 192 mseg. Es también
común en la técnica (véase ETSI-GSM Technical
Specification: Voice Activity Detector, GSM 06.32 Version 3.0.0,
European Telecommunications Standards Institute, 1991) evitar una
persistencia si el estado V = 1 prevalece tan sólo por
espacio de unos pocos segmentos antes de decidir que V = 0,
puesto que tal situación es atribuida a una ráfaga de ruido que es
demasiado corta como para ser considerada una expresión verbal. Tal
mecanismo de detección de ráfaga es también preferiblemente
implementado en el VAD 20 usado en la invención con el intervalo de
ráfaga T_{burst} ajustado a un máximo de 64 mseg.
Al ser descrita la solución de la invención
consistente en el uso de la envolvente inferior, es necesaria una
indicación de si la decisión V = 1 es debida a un estado de
persistencia. Es usado un indicador HNG para indicar este
estado. Así, HNG = 1 cuando el VAD está en un estado de
persistencia, y HNG = 0 cuando no lo está.
Una cuestión importante en los entornos no
estacionarios es la de estimar el nivel de potencia de ruido al
variar el mismo de segmento a segmento. Se supone típicamente en la
técnica que los segmentos iniciales contienen solamente ruido, y por
consiguiente los mismos pueden ser usados para obtener una
estimación inicial de la potencia de ruido. Entonces, siempre que la
decisión del VAD es la de que un segmento no contiene habla
(V = 0), la estimación del nivel de ruido es actualizada
usando alisamiento recursivo de la forma:
Ecuación
6
\vskip1.000000\baselineskip
La misma se mantiene invariable si
V(m) = 1. \alpha_{\lambda} es un factor de
alisamiento, 0 < \alpha_{\lambda} < 1. V(m)
es el valor de la decisión del VAD para el segmento m^{ésimo}.
En la invención la recursión puede ser aplicada
directamente al umbral de ruido (cuando está ausente el habla),
concretamente de la manera siguiente:
Ecuación
7
donde el factor de alisamiento 15
deberá ser menor que \alpha_{\lambda} de la Ecuación (6), puesto
que en la Ecuación (7) se usa una versión ya alisada,
16 , de la potencia de la señal de
entrada.
Esta solución para actualizar el nivel de ruido
es efectiva cuando está ausente el habla y el nivel de ruido no
aumenta rápidamente. Sin embargo, incluso un relativamente pequeño
incremento de la potencia de ruido (p. ej. con un factor igual al
factor de tendencia b_{\lambda}) durante una expresión verbal hará
que al VAD 20 se le escape el final de la expresión verbal. El VAD
20 continuará entonces suponiendo que está presente habla hasta que
el nivel de ruido descienda hasta llegar a ser inferior a
b_{\lambda} multiplicado por el valor que tenía antes de comenzar
la expresión verbal. Una disminución del nivel de ruido, incluso
cuando está presente habla, no plantea un problema importante puesto
que el VAD 20 puede seguir detectando el final de la expresión
verbal correctamente y el umbral de ruido decaerá finalmente hasta
el nivel de ruido inferior, mediante la aplicación de la Ecuación
(7).
Cuando tiene lugar una transición que tiene la
forma de un incremento relativamente empinado del nivel de ruido,
puede fallar el seguimiento del umbral de ruido de la Ecuación (7),
aunque esté ausente el habla. En este caso, el VAD 20 interpretará
el cambio de nivel como un comienzo del habla (a no ser que sean
examinados atributos adicionales de la señal, tales como la
presencia de un espaciamiento, la velocidad de pasos por cero, etc.,
como se hace en algunos VADs más complejos conocidos en la técnica,
tales como los reflejados en: ETSI-GSM Technical
Specification: Voice Activity Detector, GSM 06.32 Version 3.0.0,
European Telecommunications Standards Institute, 1991;
ITU-T, Annex A to Recommendation G.723.1: Silence
Compression Scheme for Dual Rate Speech Coder for Multimedia
Communications Transmitting at 5.3 & 6,3 Kbit/s, mayo 1996;
ITU-T, G.729A: A Proposal for a Silence Compression
Scheme Optimized for the ITU-T G.729 Annex A Speech
Coding Algorithm, de France Telecom/CNET, junio 1996; R. Tucker,
"Voice Activity Detection using a Periodicity Measure", IEE
Proceedings-I, Vol. 139, Nº 4, pp.
377-380, agosto 1992). Tal transición en el nivel de
ruido es típica de los entornos de comunicación con móviles (p. ej.
al pasar un camión, al tener lugar una aceleración del coche, al ser
abierta una ventana, al ser conectado el acondicionador de aire,
etc.).
Una manera de aliviar el efecto de una transición
de este tipo en el VAD 20 (suponiendo que a continuación de la
transición el nivel de ruido devenga estacionario durante un rato)
es la de medir la estacionariedad de la potencia a corto plazo de la
entrada a lo largo de un intervalo T_{PS} lo
suficientemente largo (digamos de 1 seg.). Puesto que no se preve
que el habla sea estacionaria durante un intervalo relativamente
largo de este tipo, esa medición puede indicar la ausencia de habla.
Así, a continuación de la transición a un nivel de ruido más alto,
si la potencia medida dentro de ese intervalo de verificación no
varía mucho (digamos en menos de 2 ó 3 dB), puede suponerse que la
señal de entrada es ruido solamente. El umbral de ruido puede ser
entonces actualizado, siendo a continuación efectuado un seguimiento
según la Ecuación (7).
Antes de describir esta solución, hay que señalar
que los ejemplos que se presentan son para una longitud de segmento
de N_{seg} = 256 muestras a una velocidad de muestreo de
f_{s} = 8 kHz (es decir, para una duración de segmento
T_{seg} = N_{seg}/f_{s} = 32 mseg.) y un
paso de actualización, N_{step} = T_{step}
f_{s} = N_{seg} (es decir, sin superposición
parcial entre segmentos consecutivos).
La Figura 2 demuestra el uso de esta solución
para una transición debida a un incremento empinado del ruido de
helicóptero. En esta figura, la fina línea continua describe el
nivel de potencia de entrada alisada, 17 , (a escala
logarítmica) al variar de segmento a segmento. La línea de puntos en
esta figura denota el umbral de ruido, Th_{\lambda}, y el
impulso rectangular superpuesto define el intervalo para el cual el
VAD 20 toma la decisión de que está presente habla (es decir, V = 1,
la cual es una decisión errónea en este caso). Se ve por la figura
que la transición termina aproximadamente en el segmento 110, y tan
sólo aproximadamente 32 segmentos después de haber terminado la
transición (el intervalo de verificación, T_{PS}, tiene una
longitud de 1 seg.), en el segmento 142, es finalmente actualizado
el umbral de ruido. A continuación de esta actualización, el VAD 20
toma la correcta decisión de que V = 0. La correspondiente
forma de onda está ilustrada en la Fig. 3, con las decisiones del
VAD 20
superpuestas.
superpuestas.
Claramente, esta solución supone un retraso de la
duración de la transición del ruido de un nivel a otro más la
duración del intervalo de verificación de la estacionariedad de la
potencia (un total de aproximadamente 100 segmentos (aproximadamente
3 segundos) en el ejemplo ilustrado en la Fig. 2).
La verificación de la estacionariedad de la
potencia a corto plazo es implementada en el VAD 20 a base de cargar
primeramente los valores de 18 en una memoria
intermedia cíclica (B_{Y}) 30 de longitud
100 (un entero igual al número de mediciones de la
potencia a corto plazo efectuadas en el intervalo de verificación).
Entonces, para cada segmento, la relación entre los valores de datos
mayor y menor que están presentes en la memoria intermedia 30 es
comparada con un determinado umbral Th_{PS}. Si esta
relación es menor que o igual a Th_{PS}, es positiva la
verificación de la estacionariedad de la potencia (PST = 1),
o de lo contrario PST = 0. En el ejemplo que está ilustrado
en las Figs. 2 y 3, T_{SP} = 1 seg. (L_{PS} = 31)
y Th_{PS} = 1,6 (2 dB). Formalmente, las ecuaciones que
describen la verificación de la estacionariedad de la
potencia (verificación de la PS) son las siguientes:
\newpage
Ecuación
8
Ecuación
9
El nivel de ruido es actualizado cuando el
resultado de la verificación pasa de PST = 0 a PST = 1
y se supone que está presente habla (V(m-1) = 1), es
decir,
Ecuación
10
Si 21
Para evitar problemas numéricos, el mínimo valor
permitido en la memoria intermedia 30 es 1 (según la Ecuación (8)).
El máximo valor posible en la memoria intermedia 30 viene dado
por
Ecuación
11
donde N_{B} es el número de bits en la
representación de la señal de entrada (16 bits en las simulaciones
efectuadas por el Inventor). La memoria intermedia 30 debe ser
inicializada con 1's. Es también preferible reinicializar la memoria
intermedia 30 cada vez que el VAD 20 cambia su
decisión.
Puede señalarse que la verificación de la
estacionariedad de la potencia es en realidad una forma simplificada
de una verificación más compleja basada en la medición de las
variaciones espectrales entre segmentos consecutivos, la cual
constituye una parte central de los VADs más complejos del estado de
la técnica anteriormente mencionados. Se adopta por consiguiente una
solución de compromiso entre la complejidad y el retraso.
La verificación de la estacionariedad de la
potencia que es conocida en la técnica y ha sido descrita
anteriormente aún no resuelve el problema de efectuar un seguimiento
de los incrementos del nivel de ruido que se producen durante y
entre expresiones verbales muy cercanas unas a otras, a no ser que
haya intervalos relativamente largos entre las expresiones verbales
(más largos que el intervalo de verificación) y que el nivel de
ruido sea estacionario dentro de esos intervalos.
Como se ha señalado, estos y otros problemas son
abordados por el sistema y método de la invención, estando incluida
en ello la utilización de un método de la envolvente inferior para
actualizar el umbral de ruido. Esta solución puede también ayudar a
actualizar el nivel de ruido a continuación de una transición
empinada, pero puede suponer un retraso más largo que la
verificación de la estacionariedad de la potencia a corto plazo
anteriormente descrita. Por otro lado, esta solución no requiere que
la potencia de ruido devenga estacionaria a continuación de la
transición.
Como se ha explicado anteriormente, un importante
problema que es abordado por la invención es el de cómo actualizar
el umbral de ruido cuando el nivel de ruido de entrada aumenta
durante y entre expresiones verbales muy cercanas unas a otras. En
tal situación, si el umbral de ruido, Th_{\lambda}, no es
correctamente actualizado, el VAD 20 continuará decidiendo que está
presente habla, a pesar de no estar la misma presente, hasta que
arroje un resultado positivo la verificación de la estacionariedad
de la potencia.
La solución del umbral de ruido de la invención
está basada en parte en la observación de que el nivel de potencia
de la señal de entrada disminuye incluso durante cortas lagunas en
la señal de habla (p. ej. entre palabras y en particular entre
frases) hasta el nivel del ruido. Por consiguiente, si se efectúa un
correcto seguimiento de la envolvente inferior de la potencia de
señal, el umbral de ruido puede ser correctamente actualizado al
nuevo nivel al final de una expresión verbal. Se aprovecha el hecho
de que a efectos de detectar la ausencia de habla, una correcta
actualización del umbral de ruido tan sólo tiene que ser efectuada
al final de una expresión verbal y no necesariamente mientras está
presente habla. Éste puede no ser el caso en los sistemas de
mejoramiento de la palabra, en los que es importante el conocimiento
del nivel de ruido (y su forma espectral) en cada segmento durante
la expresión verbal, por cuanto que el mismo afecta directamente a
la atenuación de ruido que es aplicada en cada segmento. Puesto que
ésta es una tarea bastante difícil, y típicamente el ruido no varía
tanto durante una expresión verbal (excepto para las transiciones),
habitualmente es satisfactoria y se hace por lo común una
actualización del ruido en los intervalos entre expresiones
verbales. Sin embargo, el VAD 20 debería detectar correctamente el
final de las expresiones verbales, lo cual constituye un problema
que es abordado por la invención.
En la Fig. 4 se muestra una ilustración de la
solución básica que se sirve de la envolvente inferior y es usada en
la invención. Esta figura refleja dos frases en ruido blanco cuya
potencia aumenta con el paso del tiempo a una velocidad de
aproximadamente 1 dB/seg. El valor de la relación señal/ruido
inicial es de aproximadamente 15 dB. Como en la Fig. 2, la fina
línea continua es la potencia de la señal de entrada alisada,
23 , y la línea de puntos es el umbral de ruido
(Th_{\lambda}) 50 usado por el VAD 20 según la Ecuación
(5). La línea de trazos es la envolvente inferior 40, que es una
señal que es usada para indicar los instantes en los cuales deberá
ser actualizado el valor de Th_{\lambda}. En el VAD en el
dominio temporal 20 ilustrativo el valor de la envolvente inferior
40 en un instante de actualización es usado como el valor al cual es
actualizado el umbral de ruido 50, pero éste no tiene que ser el
caso en los VADs que usan la forma espectral del ruido.
El enfoque es el de que una actualización del
umbral de ruido 50 es llevada a cabo solamente en aquellos segmentos
para los cuales la última decisión del VAD era V = 1 (hay
presencia de habla) y la envolvente inferior 40 está en un punto de
inflexión 60, es decir desviándose hacia arriba (a continuación de
un segmento en el cual la envolvente no seguía un trazado
ascendente). El punto de inflexión 60 es elegido porque indica
potencialmente que la envolvente inferior 40 ha alcanzado el nivel
de ruido, como por ejemplo se ilustra en la Fig. 4 hacia el final de
la segunda expresión verbal (en torno al segmento 175). La
actualización del umbral de ruido 50 en el punto de inflexión 60 de
la envolvente inferior 40 antes del final de la expresión verbal no
necesariamente refleja el nivel de ruido real dentro de la expresión
verbal. Dicha actualización ayuda sin embargo a alcanzar el correcto
valor del nivel de ruido al final de la expresión verbal, o poco
después del mismo.
Claramente, como se ilustra en la Fig. 4, el VAD
20 decide que está presente habla (V = 1) en todos aquellos
segmentos en los que el nivel de potencia de entrada está por encima
de la línea de puntos. Esto es indicado por los impulsos
rectangulares superpuestos. Además, el valor V = 1 es
mantenido por espacio de 3 segmentos más (correspondientes a
T_{hngovr} 96 mseg.) más allá del punto de cruce entre la
potencia de entrada y el umbral de ruido 50 al final de la expresión
verbal, debido al estado de persistencia sobre el que se ha tratado
anteriormente. Las decisiones del VAD 20 para este ejemplo están
ilustradas como superpuestas a la forma de onda de entrada en la
Fig. 5. Se ve que el VAD 20 actúa adecuadamente, a pesar del
incremento del nivel de ruido en bastante más allá del factor
b\lambda = 1,3 ( 1,2 dB) mientras hay presencia de
habla.
El valor de la envolvente inferior 40 en el
m^{ésimo} segmento, L_{E}(m), es generado
según la expresión siguiente:
Ecuación
12
donde r_{E} > 1 es el factor de
variación de la envolvente
inferior.
El valor de la envolvente inferior 40,
L_{E}(m), es usado aquí para actualizar
convencionalmente el umbral de ruido según:
Ecuación
13
O de lo contrario, es mantenido el valor anterior
de Th_{\lambda}.
De nuevo, HNG es el indicador de persistencia. La
condición que se estipula en la Ecuación (13) indica que es llevada
a cabo una actualización si la envolvente inferior 40 está en un
punto de inflexión 60, siempre que la última decisión del VAD 20 sea
la de que está presente habla (V = 1, pero no en un estado de
"persistencia"). La decisión del VAD 20 para el actual segmento
(m) es entonces tomada según la Ecuación (5), exceptuando que
si según la Ecuación (13) es llevada a cabo la actualización
condicional en el segmento m, V(m) es puesto a
1.
Una cuestión importante en la implementación de
la invención es la selección del factor r_{E} de variación
de la envolvente inferior (Ecuación (12)). Por un lado,
r_{E} deberá ser menor que la velocidad de incremento de la
señal de habla al comienzo de cada parte de la expresión verbal
cuando el ruido es estacionario. Esta última velocidad es
típicamente más baja hacia el final de una expresión verbal en
comparación con su comienzo. Adicionalmente, la misma disminuye al
aumentar el nivel de ruido en el cual está inmersa la señal. Por
consiguiente, para hacer frente a estas exigencias es deseable y se
describe a continuación una adaptación al establecer el valor de
r_{E}.
Como se ha mencionado anteriormente, la solución
que consiste en utilizar la envolvente inferior y es implementada en
la invención puede ser eficaz para actualizar el umbral de ruido 50
tras haberse producido un empinado incremento del nivel de ruido
debido a una transición tal como la ilustrada en la Fig. 2. Sin
embargo, este procesamiento puede suponer un retraso más largo que
la convencional verificación de la estacionariedad de la potencia.
El motivo de ello es el de que la velocidad de incremento
(pendiente) de la envolvente inferior 40 está limitada a coincidir,
por término medio, con el previsto incremento de una señal de habla.
Puesto que el VAD 20 supone durante una transición empinada que está
presente habla, la envolvente inferior 40 satisfará las condiciones
para una actualización (según la Ecuación (13)) tan sólo después de
un retraso relativamente largo. Por consiguiente, sería ventajoso
aplicar esta verificación suplementaria a la invención, al menos
bajo determinadas circunstancias. Esto puede hacerse a base de
aplicar primeramente la verificación de la estacionariedad de la
potencia en cada segmento, y siempre que la misma redunde en una
actualización del umbral de ruido 50 (según la Ecuación (10)),
llevando la envolvente inferior 40 al valor de la potencia de
entrada. Esto significa que lo que hay que añadir a la Ecuación (10)
es lo siguiente:
Ecuación 14 poner 25 si se cumple
la condición de la Ecuación
(10).
La Ecuación (14) precede por consiguiente a las
operaciones que son llevadas a cabo según las Ecuaciones (12) y
(13), que van entonces seguidas por la operación de la Ecuación (5).
Está ilustrado en la Fig. 7 un organigrama esquemático de esa
secuencia.
La combinación de estas soluciones está ilustrada
en la Fig. 6, que añade la envolvente inferior (línea de trazos) 40
a la Fig. 2, y el efecto de la Ecuación (14). Esta figura indica
también que sin la verificación de la estacionariedad de la potencia
la actualización del umbral de ruido 40 habría tenido lugar más
tarde, puesto que la pendiente de la envolvente inferior 40 es
relativamente pequeña en comparación con la velocidad de incremento
de la transición. Además, el hecho de obligar a la envolvente
inferior 40 a ser actualizada al valor de la potencia de entrada
tras la transición asegura que el VAD 20 funcionará como se pretende
una vez que aparezca una expresión verbal. De lo contrario, si
aparece una expresión verbal antes de que la envolvente inferior 40
alcance el nivel de ruido de entrada, puede que el VAD 20 no alcance
ese nivel a tiempo, incluso al final de la expresión verbal. Así, el
VAD 20 puede no detectar el final de la expresión verbal si durante
la expresión verbal hubo aunque fuese un pequeño incremento (más
allá del factor b_{\lambda}) del nivel de ruido.
Además, incluso si fallase la verificación de la
estacionariedad de la potencia, debido p. ej. al hecho de ser
demasiado grandes las fluctuaciones del nivel de potencia de ruido a
continuación de la transición, la envolvente inferior 40 se
recuperaría al menos finalmente, y el VAD 20 se recuperará y
continuará funcionando correctamente. De otro modo, esto sucedería
tan sólo si el nivel de ruido disminuyese hasta aproximadamente el
nivel de antes de la transición.
La implementación de la invención supone la
selección de varios parámetros, y también una adaptación para
algunos de ellos, como el factor de variación de la envolvente
inferior, r_{E}.
Antes de pasar a la discusión de la selección de
los parámetros, se examinan las cuestiones de la longitud de los
segmentos y del paso de actualización de segmento. La selección de
estos valores viene habitualmente impuesta por una aplicación
determinada. Sin embargo, debido al hecho de que un típico intervalo
de "cuasi-estacionariedad" del habla está
limitado a aproximadamente 32 mseg., la anterior selección de una
longitud de segmento de una duración T_{seg} = 32 mseg.
(correspondiente a N_{seg} = 256 muestras a una velocidad
de muestreo de fs = 8 kHz) se toma como la longitud de
segmento nominal, 101 Habitualmente, el paso de
actualización de segmento N_{step} se selecciona para que
sea igual a la longitud de segmento N_{seg}. Sin embargo,
no hay razón para que un usuario deba limitarse a esta opción. Por
consiguiente, pueden usarse otros valores de la longitud de segmento
y del paso de actualización por medio de la relación de la longitud
de segmento, r_{seg}, y de la relación del paso de
actualización, r_{step}, que están definidas como
sigue:
Ecuación
15
Se toma ahora en consideración el parámetro
r_{E}, que es el factor de variación de la envolvente inferior en
la Ecuación (12). Según la exposición anterior, una exigencia que
debe satisfacer r_{E} es la de que durante la presencia de habla
su valor esté situado dentro de una limitada gama de valores
27 . El valor inferior, 28 , deberá
ser seleccionado para lograr un correcto funcionamiento del VAD 20
cuando el ruido es estacionario. El valor superior,
29 , deberá ser seleccionado para proporcionar la
mayor pendiente posible cuando el ruido aumente durante una
expresión verbal. Sin embargo, 30 no deberá ser
demasiado grande en comparación con la velocidad de incremento de la
potencia de habla a corto plazo al final de baja de potencia de la
expresión verbal. Basándose en simulaciones, el inventor ha elegido
que las pendientes de la envolvente inferior (a escala logarítmica)
estén situadas dentro de la gama de pendientes que va desde
aproximadamente 1,3 dB/seg. hasta 13 dB/seg., las cuales para
N_{seg} = N_{step} = 256 y fs = 8 kHz
corresponden a 1,01 \leq r_{E} \leq 1,1. Para acomodar
distintas longitudes de segmento y distintos valores del paso de
actualización de segmento, el cálculo es:
Ecuación
16
(está presente
habla)
El valor real de r_{E} usado durante la
presencia de habla es puesto dentro de la gama anteriormente
mencionada al comienzo de la expresión verbal (es decir, cuando
V(m) = 1 y V(m-1) = 0)
según otras dos consideraciones. Esas consideraciones son la
velocidad de variación del nivel de potencia de ruido y el propio
nivel de potencia de ruido. La Velocidad de variación del nivel de
potencia de ruido es supervisada computando en cada comienzo de una
expresión verbal la relación entre el valor de potencia de ruido
medido justo antes del comienzo y el valor obtenido justo antes del
comienzo de la expresión verbal anterior. Esta relación es denotada
por R_{\lambda}, y N_{V} representa el número de
actualizaciones de segmento entre las dos mediciones. Estos dos
parámetros y el valor más bajo permitido para r_{E},
denotado anteriormente por 32 , son entonces usados
para determinar un valor del factor de variación denotado por
33 , mediante
Ecuación
17
Para el valor de r_{E} es establecido un
límite que depende del valor estimado de la potencia de ruido,
35 , justo antes del comienzo de la expresión verbal,
en comparación con el nivel de potencia de entrada máximo posible en
el sistema, Y_{max}, que viene dado por la Ecuación
(11).
Puesto que justo antes del comienzo de la
expresión verbal 36 (véase la Ecuación (3)) y
b_{\lambda} es cercano a 1, preferiblemente es usado
Th_{\lambda} en la siguiente definición de la Relación de
Ruido Logarítmico a Señal Máxima Logarítmica (LNPSR):
Ecuación
18
P_{N} es entonces usada para obtener
otro valor del factor de variación, denotado por
38
Ecuación
19
Finalmente, el valor actual elegido para
r_{E} que debe ser usado durante la expresión verbal actual
viene dado por:
Ecuación
20
\vskip1.000000\baselineskip
(Hay presencia de
Habla)
Este valor r_{E} está dentro de la
deseada gama de valores 41 y toma también en
consideración tanto el incremento previsto del nivel de ruido como
el propio nivel de ruido, dentro de las anteriormente mencionadas
limitaciones de gama.
Como se ha señalado anteriormente, el valor de
r_{E} según la Ecuación (20) es usado durante la presencia
de la expresión verbal actual. Una vez que el VAD 20 ha detectado el
final de la expresión verbal, el valor r_{E} puede ser
ajustado de acuerdo con la velocidad real de incremento de la
potencia de ruido, es decir a
Ecuación
21
(En ausencia de
habla)
Otros parámetros que son usados en la
implementación de la invención son los siguientes: El intervalo de
persistencia, T_{hngovr}, a partir del cual es computado el
L_{hngovr}; los factores de alisamiento \alpha_{Y} y
43 , que aparecen en la Ecuación (4) y (7),
respectivamente; el factor de tendencia del ruido,
b_{\lambda}, que aparece en la Ecuación (7); y el intervalo
de verificación de la estacionariedad de la potencia,
T_{PS} (a partir del cual se determina L_{PS}), y
el umbral Th_{PS} que aparece en la verificación de la
estacionariedad de la potencia de la Ecuación (9). Como se ha
mencionado anteriormente, un valor típico para T_{PS} es el
de 1 seg. Los otros parámetros podrían ser también ajustados a
valores fijos. Sin embargo, el inventor ha descubierto (y para el
intervalo de persistencia se sugiere en E. Paksoy, K. Srinivasan y
A. Gersho, "Variable Rate Speech Coding with Phonetic
Segmentation" ICASSP 93, Minneapolis, pp. II-155
- II-158, 1993) que es ventajoso adaptar estos
parámetros al nivel de potencia de ruido. Esto se hace usando la
LNPSR, P_{N}, definida en la Ecuación (18), de acuerdo
con:
Ecuación
22
donde, sobre la base de las simulaciones, se hace
la selección de \delta_{0} = \delta_{1} =
0,2.
La motivación existente para esta adaptación es
la de que al aumentar el nivel de ruido es ventajoso tener más
alisamiento, lo cual se logra haciendo que el factor de alisamiento
sea más próximo a 1. Para los valores nominales de r_{seg}
= r_{step} = 1, y puesto que P_{N} está entre 0
(sin ruido) y 1, los valores de los factores de alisamiento están
situados dentro de la gama de valores de 0,6 a 0,8. Si se desea un
valor fijo, el valor preferido es el de 0,7.
La adaptación del intervalo de persistencia se
hace de acuerdo con:
Ecuación
23
donde 46 es el número mínimo de
segmentos de persistencia (caso de muy poco ruido), que es obtenido
a partir del mínimo intervalo de persistencia 47
por medio de 48 . El inventor ha usado
49 = 64 mseg. Con T_{step} = 32 mseg.,
L_{hngovr} puede variar de 2 a 6, en dependencia del nivel
de ruido, a través de
P_{N}.
Con respecto a los otros dos parámetros, en la
práctica han sido usados valores según:
Ecuación
24
\vskip1.000000\baselineskip
b_{\lambda} =
1,6-0,5P_{N} \rightarrow 1,1 <
b_{\lambda} \leq
1,6
Th_{PS} = 2-P_{N} \rightarrow
1 < Th_{PS} \leq
2
La necesidad de adaptar estos dos parámetros se
deriva del hecho de que al aumentar el nivel de ruido disminuye el
margen del nivel de potencia del habla por encima del ruido. Por
consiguiente, para evitar "cortar el habla" (o sea, decidir que
V = 0) en los segmentos de habla de baja potencia,
b_{\lambda} deberá ser reducido. Con respecto a
Th_{PS}, el mismo deberá ser reducido asimismo entonces,
puesto que de lo contrario la potencia de habla de bajo nivel (por
encima del ruido) podría cumplir con la verificación de la
estacionariedad de la potencia y ocasionar una no deseada
actualización del umbral de ruido 50.
La adaptación anteriormente indicada es llevada a
cabo tan sólo cuando está ausente el habla (V = 0), porque
solamente entonces es actualizado el valor de P_{N} (véase
la Ecuación (18)).
Con el ajuste de parámetros anteriormente
indicado el inventor ha obtenido buenas características funcionales
hasta una relación señal/ruido de aproximadamente 0 dB, como se
demuestra a continuación.
Antes de presentar resultados de simulación se
presentan los principales pasos de procesamiento en la ejecución de
la invención, en conjunción con la Fig. 7.
- (i) Dados la frecuencia de muestreo f y el número de bits, N_{B}, en la representación de la señal de entrada, establecer o computar (los correspondientes números de ecuación aparecen entre paréntesis; y la flecha, \rightarrow, indica "a partir de lo cual, computar") los parámetros siguientes:
- (ii) Establecer m-1 (primer segmento; del que se supone que es "sólo ruido").
- Computar Y_{m} (1) y
establecer
51
- Poner la decisión del VAD a V(m) = 0
- Computar
52
- Computar el umbral de ruido actualizado para usarlo en el siguiente segmento, Th_{\lambda}(m + 1) (7).
- 2.
- Incrementar en uno el valor de m.
- 3.
- Computar
53 , y actualizar la memoria intermedia de la estacionariedad de la potencia B_{Y} (8).
- 4.
- Llevar a cabo la verificación de la estacionariedad de la potencia (9).
- Si es satisfecha la condición
que se estipula en (10), establecer
54
- 5.
- Actualizar la envolvente inferior L_{E}(m) (12).
- Si se satisface la condición estipulada en (13), establecer Th_{\lambda}(m) = L_{E}(m).
- 6.
- Obtener la decisión del VAD, V(m), a partir de (5). Sin embargo, si se satisface la condición estipulada en (13), poner V(m) = 1.
- Si V(m) = 0, comprobar si deberá aplicarse persistencia. Si se está en estado de persistencia, poner el indicador HNG(m) = 1 y V(m) = 1; o de lo contrario HNG(m) = 0.
- (i)
\hskip0,5cm
Si V(m) = 0, computar el umbral de ruido actualizado Th_{\lambda}(m+1) (7).
- (ii)
\hskip0,4cm
Si V(m) = 1 y V(m-1) = 0 (comienzo del habla), actualizar r_{E} según (20).
- (iii)
\hskip0,3cm
Si V(m) = 0 y V(m-1) = 1 (final de expresión verbal), actualizar r_{E} según (21);
- actualizar
55
- 8.
- Si fue alcanzado el último segmento: FIN. De lo contrario, ir al paso 2.
El correspondiente organigrama esquemático está
ilustrado en la Fig. 7, estando los bloques en la figura numerados
según los pasos anteriormente indicados.
En los resultados de simulación que se exponen a
continuación, el VAD 20 anteriormente indicado supone que el habla
de entrada no tiene componentes de deriva de continua o de muy baja
frecuencia. Si el habla tiene tales componentes, la señal de entrada
deberá ser filtrada con filtro de paso alto (o deberá ser pasada a
través de un filtro de respuesta en hendidura con una hendidura para
la c.c.) antes de su procesamiento mediante el algoritmo
anteriormente indicado, como es práctica común en los sistemas VAD
(véase la Especificación Técnica ETSI-GSM: Voice
Activity Detector, GSM 06.32 Version 3.0.0, European
Telecommunications Standards Institute, 1991, ITU-T,
Annex A to Recommendation G.723.1: Silence Compression Scheme for
Dual Rate Speech Coder for Multimedia Communications Transmitting at
5.3 & 6,3 Kbit/s, mayo 1996; ITU-T, G.729A: A
Proposal for a Silence Compression Scheme Optimized for the
ITU-T G.729 Annex A Speech Coding Algorithm, de
France Telecom/CNET, junio 1996).
Los principios del sistema y método de la
invención fueron programados en MATLAB, y fueron puestos en práctica
en archivos de habla ruidosa. Fueron registrados tanto el tiempo de
ejecución como el número de flops (operaciones de coma
flotante/seg.). Se comprobó que era relativamente pequeña la carga
computacional. Para todas las simulaciones ejecutadas fueron
necesarias menos de 18000 flops/seg., es decir menos de 600
flops/segmento (para una longitud de segmento de 256 muestras a una
velocidad de muestreo de 8 kHz). En una estación de trabajo SGI Indy
disponible comercialmente, la invención fue ejecutada más
rápidamente que el tiempo real con un factor de al menos 2.
En calidad de otra demostración del
funcionamiento de la invención en presencia de una transición de
ruido, la Fig. 8 muestra los resultados de procesamiento para una
señal obtenida de un magnetófono, donde antes de comenzar la señal
grabada (música y habla) el nivel de silbido de cinta aumenta
repentinamente (en torno al segmento 60 en la figura). La
verificación de la estacionariedad de la potencia ocasiona una
actualización del umbral de ruido 50 (línea de puntos) en torno al
segmento 100 (junto con una actualización de la envolvente inferior
40 ilustrada mediante la línea de trazos). El comienzo de la señal
grabada tiene lugar alrededor de 240. Incluso sin el mecanismo de
actualización de la estacionariedad de la potencia, la envolvente
inferior 40 habría redundado finalmente en una actualización del
umbral de ruido 50 (una vez que la misma se encuentra con la
envolvente de la potencia de señal). Sin embargo, debido a su escasa
pendiente, esto habría sucedido más tarde, más allá de la parte
ilustrada en esta figura. En un caso así, el VAD 20 habría emitido
asimismo la decisión V = 1 a lo largo de los segmentos 100 a
240. La Fig. 9 muestra la forma de onda de la señal de entrada con
las decisiones del VAD superpuestas a la misma.
El inventor ha examinado asimismo el
funcionamiento de la invención a distintos niveles de ruido de
entrada. La Fig. 10 muestra los resultados obtenidos para 6 frases
en ruido de coche con una relación señal/ruido de 10 dB. Está
también ilustrada en la Fig. 10 la correspondiente forma de onda
(con las decisiones del VAD 20 superpuestas). A pesar de las
fluctuaciones del nivel de ruido, la envolvente inferior 40 usada en
la invención facilita una correcta actualización del umbral de ruido
50, y las decisiones del VAD 20 son correctas. En algunos segmentos
(como p. ej. en torno a 190 y a 290), la envolvente de la potencia
de señal se cruza con el umbral de ruido 50 (llega a situarse por
debajo del mismo), pero la decisión del VAD 20 sigue siendo V
= 1. Esto es debido a la "persistencia", que es más larga (3
segmentos) que la corta laguna del habla en torno a esos segmentos.
La Fig. 11 muestra la correspondiente forma de onda y las decisiones
superpuestas del VAD 20.
En la Fig. 12 está demostrado un caso más
difícil. Aquí el ruido no tan sólo es más alto que en las Figs. 10 y
11 (habla en ruido de helicóptero con una relación señal/ruido de 5
dB), sino que también fluctúa más. Incluso aquí, usando la invención
el VAD 20 no pierde eventos de habla, que son aquí palabras aisladas
de un Ensayo de Rima Diagnóstica (véase también la correspondiente
forma de onda en la Fig. 13). Sin embargo, el VAD 20 no detecta la
corta laguna entre la 3ª y 4ª expresión verbal (en torno al segmento
140). Puede señalarse que si hubiese sido usado un umbral de ruido
fijo según el nivel de potencia de ruido en los segmentos iniciales
(aproximadamente 10^{6} - correspondiente a 60 dB en la Fig. 12),
la 3ª expresión verbal habría sido cortada porque la misma tiene una
potencia relativamente baja.
La Fig. 14 presenta los resultados obtenidos para
las mismas seis frases de la Fig. 10 en ruido blanco con una
relación señal/ruido de 0 dB. También aquí, el VAD 20 que funciona
según la invención no pierde evento de habla alguno (véase también
la correspondiente forma de onda en la Fig. 15), a pesar de que,
debido al más alto nivel de ruido, el VAD 20 detecta cortas lagunas
dentro de la 2ª frase (en torno al segmento 175), de la 3ª frase (en
torno al segmento 275) y de la 5ª frase (en torno al segmento
500).
En todos los ejemplos anteriores fue producida
una señal de salida en la cual fueron anulados los segmentos para
los cuales la decisión del VAD 20 era V = 0 (ausencia de
habla). Escuchando esta señal de salida, el inventor consideró
subjetivamente si estaba cortada la propia habla. En todos los
ejemplos el habla no había sido dañada, exceptuando el caso en el
que la relación señal/ruido era de 0 dB, en el cual había unos pocos
segmentos de habla de bajo nivel que fueron cortados. En el ejemplo
de las Figs. 14 y 15, esto sucede tan sólo en la 5ª frase en torno
al segmento 500. Por consiguiente, parece que la implementación de
la invención en el VAD en el dominio temporal es adecuada para
funcionar hasta una relación señal/ruido de aproximadamente 0
dB.
Claims (22)
1. Método para actualizar un umbral de ruido
usado para detectar la presencia de una señal en una señal de
entrada que tiene ruido; estando dicho método caracterizado
por los pasos de:
obtener una señal de detección que indica
mediante un valor positivo si la señal está presente en un período
de tiempo anterior;
obtener una señal de la envolvente inferior de la
señal de entrada para un período de tiempo actual;
obtener una señal del umbral de ruido para el
período de tiempo actual; y
actualizar la señal del umbral de ruido para
igualar la señal de la envolvente inferior cuando la señal de
detección es positiva y la señal de la envolvente inferior está en
un punto de inflexión de la potencia de la señal de entrada
alisada.
2. El método de la reivindicación 1, en el que la
señal está inmersa en una señal de entrada; estando dicho método
caracterizado además por los pasos de:
obtener una señal de potencia que indica la
potencia de la señal de entrada;
y el paso de obtener una envolvente inferior para
un período actual comprende el paso de actualizar la envolvente
inferior para el período actual para igualar la señal de potencia
para el período actual si la señal de la envolvente inferior para un
período anterior es menor que o igual a la señal de potencia para el
período actual, y actualizar la envolvente inferior para el período
actual para igualarla a la envolvente inferior para un período
anterior multiplicada por un factor de variación, de lo
contrario.
3. El método de la reivindicación 2,
caracterizado por el hecho de que el paso de obtener una
señal de potencia comprende el paso de computar una señal de
potencia alisada de la señal de entrada dentro de al menos
dos
períodos.
períodos.
4. El método de la reivindicación 2,
caracterizado por el hecho de que el factor de variación es
establecido para que sea inferior a una velocidad de incremento de
la señal al comienzo de la señal cuando el ruido es estacionario, y
es ajustado para disminuir cuando aumenta el ruido.
5. El método de la reivindicación 1,
caracterizado por el hecho de que el paso de determinar si la
señal de la envolvente inferior está en un punto de inflexión
comprende el paso de obtener una señal de la envolvente inferior
para un período anterior y comparar la señal de la envolvente
inferior para un período anterior con la señal de la envolvente
inferior para el período actual para determinar si la envolvente
inferior está desviándose hacia arriba después de un mínimo
local.
6. El método de la reivindicación 1,
caracterizado por el hecho de que el paso de obtener una
señal de detección comprende el paso de determinar si la señal está
presente usando información de retraso en persistencia.
7. El método de la reivindicación 1,
caracterizado además por el paso de producir una señal de
detección positiva si la señal de entrada sobrepasa la señal del
umbral de ruido actualizado.
8. El método de la reivindicación 7,
caracterizado además por el paso de aplicar una verificación
de la estacionariedad de la potencia además de verificar la señal de
entrada contra la señal del umbral de ruido, y producir una señal de
detección positiva solamente si la verificación de la
estacionariedad de la potencia da también resultado
positivo.
positivo.
9. El método de la reivindicación 8,
caracterizado por el hecho de que el paso de aplicar una
verificación de la estacionariedad de la potencia comprende el paso
de determinar una relación de los valores mayor y menor de una señal
de potencia que indica la potencia de la señal de entrada dentro de
un número predeterminado de
períodos.
períodos.
10. El método de la reivindicación 8,
caracterizado por el hecho de que la señal está inmersa en
una señal de entrada; estando dicho método caracterizado
además por los pasos de:
obtener una señal de potencia que indica la
potencia de la señal de entrada; y
el paso de obtener una envolvente inferior para
un período actual comprende el paso de actualizar la envolvente
inferior para el período actual para igualar la señal de potencia
para el período actual si la verificación de la estacionariedad de
la potencia para el período anterior no da resultado positivo y se
cumple la estacionariedad de la potencia para el período actual y la
señal de detección para el período anterior es positiva.
11. El método de la reivindicación 1,
caracterizado por el hecho de que la señal es una señal de
voz.
12. Sistema para actualizar un umbral de ruido
usado para detectar la presencia de una señal en una señal de
entrada que tiene ruido, caracterizado por:
una unidad de entrada para recibir la señal de
entrada en la cual está inmersa la señal;
una unidad de procesamiento, estando la unidad de
procesamiento conectada a la unidad de entrada;
obteniendo la unidad de procesamiento una señal
de detección que indica mediante un valor positivo si la señal está
presente en un período de tiempo anterior;
obteniendo la unidad de procesamiento una señal
de la envolvente inferior de la señal de entrada para un período de
tiempo actual;
obteniendo la unidad de procesamiento una señal
del umbral de ruido para el período de tiempo actual;
y actualizando la unidad de procesamiento la
señal del umbral de ruido para igualar la señal de la envolvente
inferior cuando la señal de detección es positiva y la señal de la
envolvente inferior está en un punto de inflexión de la potencia de
la señal de entrada alisada.
13. El sistema de la reivindicación 12,
caracterizado por el hecho de que la unidad de procesamiento
obtiene una señal de potencia que indica la potencia de la señal de
entrada, y actualiza la envolvente inferior para el período actual
para igualar la señal de potencia para el período actual si la señal
de la envolvente inferior para un período anterior es menor que o
igual a la señal de potencia para el período actual, y actualiza la
envolvente inferior para el período actual para igualarla a la
envolvente inferior para un período anterior multiplicada por un
factor de ajuste, de lo
contrario.
contrario.
14. El sistema de la reivindicación 13,
caracterizado por el hecho de que la unidad de procesamiento
obtiene la señal de potencia computando una señal de potencia
alisada de la señal de entrada dentro de al menos dos
períodos.
períodos.
15. El sistema de la reivindicación 13,
caracterizado por el hecho de que el factor de variación es
establecido para que sea inferior a una velocidad de incremento de
la señal al comienzo de la señal cuando el ruido es estacionario, y
es ajustado para disminuir cuando aumenta el ruido.
16. El sistema de la reivindicación 12,
caracterizado por el hecho de que la unidad de procesamiento
determina si la señal de la envolvente inferior está en un punto de
inflexión obteniendo una señal de la envolvente inferior de un
período anterior y comparando la señal de la envolvente inferior
para el período anterior con la señal de la envolvente inferior para
el período actual para determinar si la envolvente inferior está
desviándose hacia arriba después de un mínimo local.
17. El sistema de la reivindicación 12,
caracterizado por el hecho de que la unidad de procesamiento
obtiene la señal de detección usando información de retraso en
persistencia.
18. El sistema de la reivindicación 12,
caracterizado por el hecho de que la unidad de procesamiento
detecta la presencia de la señal si la señal de entrada sobrepasa la
señal del umbral de ruido actualizado.
19. El sistema de la reivindicación 18,
caracterizado por el hecho de que la unidad de procesamiento
aplica una verificación de la estacionariedad de la potencia además
de verificar la señal de entrada contra la señal del umbral de
ruido, y produce una señal de detección positiva solamente si la
verificación de la estacionariedad de la potencia da también
resultado positivo.
20. El sistema de la reivindicación 19,
caracterizado por el hecho de que la unidad de procesamiento
aplica la verificación de la estacionariedad de la potencia
determinado una relación de los valores mayor y menor de una señal
de potencia que indica la potencia de la señal de entrada dentro de
un número predeterminado de períodos.
21. El sistema de la reivindicación 18,
caracterizado por el hecho de que la señal está inmersa en
una señal de entrada; estando la unidad de procesamiento
caracterizada además por:
obtener una señal de potencia que indica la
potencia de la señal de entrada; y
obtener la envolvente inferior para el período
actual actualizando la envolvente inferior para el período actual
para igualar la señal de potencia para el período actual si la
verificación de la estacionariedad de la potencia para el período
anterior no da resultado positivo y la verificación de la
estacionariedad de la potencia para el período actual da resultado
positivo y la señal de detección para el período anterior es
positiva.
22. El sistema de la reivindicación 12,
caracterizado por el hecho de que la señal es una señal de
voz.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/031,726 US5991718A (en) | 1998-02-27 | 1998-02-27 | System and method for noise threshold adaptation for voice activity detection in nonstationary noise environments |
US31726 | 1998-02-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2211057T3 true ES2211057T3 (es) | 2004-07-01 |
Family
ID=21861065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES99911001T Expired - Lifetime ES2211057T3 (es) | 1998-02-27 | 1999-02-26 | Sistema y metodo para el ajuste del umbral de ruido usado para detectar actividad vocal en ambientes ruidosos no estacionario. |
Country Status (6)
Country | Link |
---|---|
US (1) | US5991718A (es) |
EP (1) | EP0979504B1 (es) |
CA (1) | CA2288115C (es) |
DE (1) | DE69913262T2 (es) |
ES (1) | ES2211057T3 (es) |
WO (1) | WO1999044191A1 (es) |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0909442B1 (en) * | 1996-07-03 | 2002-10-09 | BRITISH TELECOMMUNICATIONS public limited company | Voice activity detector |
US6415253B1 (en) * | 1998-02-20 | 2002-07-02 | Meta-C Corporation | Method and apparatus for enhancing noise-corrupted speech |
JP3273599B2 (ja) * | 1998-06-19 | 2002-04-08 | 沖電気工業株式会社 | 音声符号化レート選択器と音声符号化装置 |
US6108610A (en) * | 1998-10-13 | 2000-08-22 | Noise Cancellation Technologies, Inc. | Method and system for updating noise estimates during pauses in an information signal |
US6768979B1 (en) * | 1998-10-22 | 2004-07-27 | Sony Corporation | Apparatus and method for noise attenuation in a speech recognition system |
US6289309B1 (en) | 1998-12-16 | 2001-09-11 | Sarnoff Corporation | Noise spectrum tracking for speech enhancement |
US6453291B1 (en) * | 1999-02-04 | 2002-09-17 | Motorola, Inc. | Apparatus and method for voice activity detection in a communication system |
WO2000046789A1 (fr) * | 1999-02-05 | 2000-08-10 | Fujitsu Limited | Detecteur de la presence d'un son et procede de detection de la presence et/ou de l'absence d'un son |
US6381570B2 (en) * | 1999-02-12 | 2002-04-30 | Telogy Networks, Inc. | Adaptive two-threshold method for discriminating noise from speech in a communication signal |
US6556967B1 (en) * | 1999-03-12 | 2003-04-29 | The United States Of America As Represented By The National Security Agency | Voice activity detector |
DE19939102C1 (de) * | 1999-08-18 | 2000-10-26 | Siemens Ag | Verfahren und Anordnung zum Erkennen von Sprache |
US7263074B2 (en) * | 1999-12-09 | 2007-08-28 | Broadcom Corporation | Voice activity detection based on far-end and near-end statistics |
US6671667B1 (en) * | 2000-03-28 | 2003-12-30 | Tellabs Operations, Inc. | Speech presence measurement detection techniques |
US6898566B1 (en) | 2000-08-16 | 2005-05-24 | Mindspeed Technologies, Inc. | Using signal to noise ratio of a speech signal to adjust thresholds for extracting speech parameters for coding the speech signal |
JP4201471B2 (ja) * | 2000-09-12 | 2008-12-24 | パイオニア株式会社 | 音声認識システム |
US6662155B2 (en) * | 2000-11-27 | 2003-12-09 | Nokia Corporation | Method and system for comfort noise generation in speech communication |
US6876965B2 (en) | 2001-02-28 | 2005-04-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Reduced complexity voice activity detector |
US7146314B2 (en) * | 2001-12-20 | 2006-12-05 | Renesas Technology Corporation | Dynamic adjustment of noise separation in data handling, particularly voice activation |
US7299173B2 (en) * | 2002-01-30 | 2007-11-20 | Motorola Inc. | Method and apparatus for speech detection using time-frequency variance |
US7146316B2 (en) * | 2002-10-17 | 2006-12-05 | Clarity Technologies, Inc. | Noise reduction in subbanded speech signals |
US7272552B1 (en) * | 2002-12-27 | 2007-09-18 | At&T Corp. | Voice activity detection and silence suppression in a packet network |
US7230955B1 (en) | 2002-12-27 | 2007-06-12 | At & T Corp. | System and method for improved use of voice activity detection |
US7596488B2 (en) * | 2003-09-15 | 2009-09-29 | Microsoft Corporation | System and method for real-time jitter control and packet-loss concealment in an audio signal |
US7412376B2 (en) * | 2003-09-10 | 2008-08-12 | Microsoft Corporation | System and method for real-time detection and preservation of speech onset in a signal |
EP1676261A1 (en) * | 2003-10-16 | 2006-07-05 | Koninklijke Philips Electronics N.V. | Voice activity detection with adaptive noise floor tracking |
JP4490090B2 (ja) * | 2003-12-25 | 2010-06-23 | 株式会社エヌ・ティ・ティ・ドコモ | 有音無音判定装置および有音無音判定方法 |
JP4601970B2 (ja) * | 2004-01-28 | 2010-12-22 | 株式会社エヌ・ティ・ティ・ドコモ | 有音無音判定装置および有音無音判定方法 |
GB2422279A (en) * | 2004-09-29 | 2006-07-19 | Fluency Voice Technology Ltd | Determining Pattern End-Point in an Input Signal |
WO2006104576A2 (en) | 2005-03-24 | 2006-10-05 | Mindspeed Technologies, Inc. | Adaptive voice mode extension for a voice activity detector |
US8566086B2 (en) * | 2005-06-28 | 2013-10-22 | Qnx Software Systems Limited | System for adaptive enhancement of speech signals |
WO2007091956A2 (en) * | 2006-02-10 | 2007-08-16 | Telefonaktiebolaget Lm Ericsson (Publ) | A voice detector and a method for suppressing sub-bands in a voice detector |
US8725499B2 (en) * | 2006-07-31 | 2014-05-13 | Qualcomm Incorporated | Systems, methods, and apparatus for signal change detection |
US20080189109A1 (en) * | 2007-02-05 | 2008-08-07 | Microsoft Corporation | Segmentation posterior based boundary point determination |
US8417518B2 (en) * | 2007-02-27 | 2013-04-09 | Nec Corporation | Voice recognition system, method, and program |
GB2450886B (en) | 2007-07-10 | 2009-12-16 | Motorola Inc | Voice activity detector and a method of operation |
US9495971B2 (en) | 2007-08-27 | 2016-11-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Transient detector and method for supporting encoding of an audio signal |
KR101444099B1 (ko) * | 2007-11-13 | 2014-09-26 | 삼성전자주식회사 | 음성 구간 검출 방법 및 장치 |
CN101419795B (zh) * | 2008-12-03 | 2011-04-06 | 北京志诚卓盛科技发展有限公司 | 音频信号检测方法及装置、以及辅助口语考试系统 |
TWI601032B (zh) | 2013-08-02 | 2017-10-01 | 晨星半導體股份有限公司 | 應用於聲控裝置的控制器與相關方法 |
CN103489454B (zh) * | 2013-09-22 | 2016-01-20 | 浙江大学 | 基于波形形态特征聚类的语音端点检测方法 |
US8990079B1 (en) * | 2013-12-15 | 2015-03-24 | Zanavox | Automatic calibration of command-detection thresholds |
CN107293287B (zh) * | 2014-03-12 | 2021-10-26 | 华为技术有限公司 | 检测音频信号的方法和装置 |
US9685156B2 (en) * | 2015-03-12 | 2017-06-20 | Sony Mobile Communications Inc. | Low-power voice command detector |
US10242696B2 (en) * | 2016-10-11 | 2019-03-26 | Cirrus Logic, Inc. | Detection of acoustic impulse events in voice applications |
US10475471B2 (en) * | 2016-10-11 | 2019-11-12 | Cirrus Logic, Inc. | Detection of acoustic impulse events in voice applications using a neural network |
US11380321B2 (en) * | 2019-08-01 | 2022-07-05 | Semiconductor Components Industries, Llc | Methods and apparatus for a voice detector |
TW202226230A (zh) * | 2020-12-29 | 2022-07-01 | 新加坡商創新科技有限公司 | 將麥克風信號靜音和取消靜音之方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4696039A (en) * | 1983-10-13 | 1987-09-22 | Texas Instruments Incorporated | Speech analysis/synthesis system with silence suppression |
DE3473373D1 (en) * | 1983-10-13 | 1988-09-15 | Texas Instruments Inc | Speech analysis/synthesis with energy normalization |
US4696040A (en) * | 1983-10-13 | 1987-09-22 | Texas Instruments Incorporated | Speech analysis/synthesis system with energy normalization and silence suppression |
US5459814A (en) * | 1993-03-26 | 1995-10-17 | Hughes Aircraft Company | Voice activity detector for speech signals in variable background noise |
IN184794B (es) * | 1993-09-14 | 2000-09-30 | British Telecomm | |
CA2153170C (en) * | 1993-11-30 | 2000-12-19 | At&T Corp. | Transmitted noise reduction in communications systems |
-
1998
- 1998-02-27 US US09/031,726 patent/US5991718A/en not_active Expired - Lifetime
-
1999
- 1999-02-26 ES ES99911001T patent/ES2211057T3/es not_active Expired - Lifetime
- 1999-02-26 DE DE1999613262 patent/DE69913262T2/de not_active Expired - Lifetime
- 1999-02-26 WO PCT/US1999/004176 patent/WO1999044191A1/en active IP Right Grant
- 1999-02-26 CA CA002288115A patent/CA2288115C/en not_active Expired - Fee Related
- 1999-02-26 EP EP99911001A patent/EP0979504B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CA2288115C (en) | 2003-08-26 |
US5991718A (en) | 1999-11-23 |
EP0979504A1 (en) | 2000-02-16 |
DE69913262T2 (de) | 2004-11-18 |
DE69913262D1 (de) | 2004-01-15 |
CA2288115A1 (en) | 1999-09-02 |
EP0979504B1 (en) | 2003-12-03 |
WO1999044191A1 (en) | 1999-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2211057T3 (es) | Sistema y metodo para el ajuste del umbral de ruido usado para detectar actividad vocal en ambientes ruidosos no estacionario. | |
US7983906B2 (en) | Adaptive voice mode extension for a voice activity detector | |
KR101092267B1 (ko) | 프레임 삭제 복구를 위한 시스템, 방법, 및 장치 | |
CA2575632C (en) | Speech end-pointer | |
ES2329046T3 (es) | Procedimiento y dispositivo para la mejora de voz en presencia de ruido de fondo. | |
KR100389179B1 (ko) | 압축음성정보의제1및제2연속적인각프레임의적어도일부를신뢰성있게수신하지못한경우,상기벡터신호를디코드된음성신호를발생하는데사용하는,음성디코더내에서이용하기위한방법 | |
KR100909679B1 (ko) | 강화된 인위적 대역폭 확장 시스템 및 방법 | |
US5341456A (en) | Method for determining speech encoding rate in a variable rate vocoder | |
US8239192B2 (en) | Transmission error concealment in audio signal | |
JP3224132B2 (ja) | 音声活動検出装置 | |
FI115328B (fi) | Äänen aktiivisuuden ilmaisu | |
JPH11327582A (ja) | 騒音下での音声検出システム | |
US20080033585A1 (en) | Decimated Bisectional Pitch Refinement | |
US20010014857A1 (en) | A voice activity detector for packet voice network | |
BRPI0116002B1 (pt) | Método e equipamento para classificação de fala robusta | |
KR102012325B1 (ko) | 오디오 신호의 배경 잡음 추정 | |
US7231348B1 (en) | Tone detection algorithm for a voice activity detector | |
RU2127912C1 (ru) | Способ обнаружения и кодирования и/или декодирования стационарных фоновых звуков и устройство для кодирования и/или декодирования стационарных фоновых звуков | |
US6868378B1 (en) | Process for voice recognition in a noisy acoustic signal and system implementing this process | |
KR100315692B1 (ko) | 가변 비율 음성부호화기의 음성 부호화 비율 결정장치 및방법 | |
US6539350B1 (en) | Method and circuit arrangement for speech level measurement in a speech signal processing system | |
JP3413862B2 (ja) | 音声区間検出方法 | |
US9431022B2 (en) | Semiconductor device and voice communication device | |
JPH1091184A (ja) | 音声検出装置 | |
NZ286953A (en) | Speech encoder/decoder: discriminating between speech and background sound |