stringtranslate.com

Codificación predictiva lineal

La codificación predictiva lineal ( LPC ) es un método utilizado principalmente en el procesamiento de señales de audio y procesamiento de voz para representar la envolvente espectral de una señal digital de voz en forma comprimida , utilizando la información de un modelo predictivo lineal . [1] [2]

LPC es el método más utilizado en la codificación y síntesis de voz . Es una técnica de análisis de voz potente y un método útil para codificar voz de buena calidad a una tasa de bits baja .

Descripción general

El modelo LPC parte de la suposición de que una señal de voz es producida por un zumbador al final de un tubo (para sonidos sonoros ), con silbidos y estallidos ocasionales añadidos (para sonidos sordos como sibilantes y oclusivas ). Aunque aparentemente rudimentario, este modelo de filtro de fuente es en realidad una aproximación cercana a la realidad de la producción del habla. La glotis (el espacio entre las cuerdas vocales) produce el zumbido, que se caracteriza por su intensidad ( volumen ) y frecuencia (tono). El tracto vocal (la garganta y la boca) forma el tubo, que se caracteriza por sus resonancias; estas resonancias dan lugar a formantes o bandas de frecuencia mejoradas en el sonido producido. Los silbidos y los estallidos son generados por la acción de la lengua, los labios y la garganta durante las sibilantes y las oclusivas.

El LPC analiza la señal de voz estimando los formantes, eliminando sus efectos de la señal de voz y estimando la intensidad y frecuencia del zumbido restante. El proceso de eliminación de los formantes se denomina filtrado inverso y la señal restante después de la sustracción de la señal modelada filtrada se denomina residuo.

Los números que describen la intensidad y frecuencia del zumbido, los formantes y la señal residual se pueden almacenar o transmitir en otro lugar. LPC sintetiza la señal de voz invirtiendo el proceso: utiliza los parámetros del zumbido y el residuo para crear una señal fuente, utiliza los formantes para crear un filtro (que representa el tubo) y pasa la fuente por el filtro, lo que da como resultado la voz.

Debido a que las señales de voz varían con el tiempo, este proceso se realiza en fragmentos cortos de la señal de voz, que se denominan fotogramas; generalmente, de 30 a 50 fotogramas por segundo dan un habla inteligible con buena compresión.

Historia temprana

La predicción lineal (estimación de señales) se remonta al menos a la década de 1940, cuando Norbert Wiener desarrolló una teoría matemática para calcular los mejores filtros y predictores para detectar señales ocultas en el ruido. [3] [4] Poco después de que Claude Shannon estableciera una teoría general de codificación , C. Chapin Cutler , [5] Bernard M. Oliver [6] y Henry C. Harrison realizaron trabajos sobre codificación predictiva . [7] Peter Elias publicó en 1955 dos artículos sobre codificación predictiva de señales. [8] [9]

Fumitada Itakura de la Universidad de Nagoya y Shuzo Saito de Nippon Telegraph and Telephone aplicaron predictores lineales al análisis del habla de forma independiente en 1966 y en 1967 por Bishnu S. Atal , Manfred R. Schroeder y John Burg. Itakura y Saito describieron un enfoque estadístico basado en la estimación de máxima verosimilitud ; Atal y Schroeder describieron un enfoque de predictor lineal adaptativo ; Burg describió un enfoque basado en el principio de máxima entropía . [4] [10] [11] [12]

En 1969, Itakura y Saito introdujeron el método basado en correlación parcial (PARCOR), Glen Culler propuso la codificación de voz en tiempo real y Bishnu S. Atal presentó un codificador de voz LPC en la Reunión Anual de la Sociedad Acústica de América . En 1971, Philco-Ford demostró LPC en tiempo real utilizando hardware LPC de 16 bits ; se vendieron cuatro unidades. [13] La tecnología LPC fue avanzada por Bishnu Atal y Manfred Schroeder durante la década de 1970 y 1980. [13] En 1978, Atal y Vishwanath et al. de BBN desarrollaron el primer algoritmo LPC de tasa variable . [13] El mismo año, Atal y Manfred R. Schroeder en Bell Labs propusieron un códec de voz LPC llamado codificación predictiva adaptativa , que utilizaba un algoritmo de codificación psicoacústica que explotaba las propiedades de enmascaramiento del oído humano. [14] [15] Esto más tarde se convirtió en la base para la técnica de codificación perceptiva utilizada por el formato de compresión de audio MP3 , introducido en 1993. [14] La predicción lineal excitada por código (CELP) fue desarrollada por Schroeder y Atal en 1985. [16]

LPC es la base de la tecnología de voz sobre IP (VoIP). [13] En 1972, Bob Kahn de ARPA con Jim Forgie de Lincoln Laboratory (LL) y Dave Walden de BBN Technologies iniciaron los primeros desarrollos en voz en paquetes, que eventualmente conducirían a la tecnología de voz sobre IP. En 1973, según la historia informal de Lincoln Laboratory, Ed Hofstetter implementó el primer LPC de 2400  bit / s en tiempo real . En 1974, se logró la primera comunicación de voz en paquetes LPC bidireccional en tiempo real a través de ARPANET a 3500 bit/s entre Culler-Harrison y Lincoln Laboratory. En 1976, se llevó a cabo la primera conferencia LPC a través de ARPANET utilizando el Protocolo de voz en red , entre Culler-Harrison, ISI, SRI y LL a 3500 bit/s. [ cita requerida ] [ aclaración necesaria ]

Representaciones de coeficientes LPC

El LPC se utiliza con frecuencia para transmitir información de la envolvente espectral y, como tal, debe ser tolerante a los errores de transmisión. La transmisión directa de los coeficientes del filtro (consulte la predicción lineal para obtener una definición de coeficientes) no es deseable, ya que son muy sensibles a los errores. En otras palabras, un error muy pequeño puede distorsionar todo el espectro o, peor aún, un pequeño error puede hacer que el filtro de predicción sea inestable.

Existen representaciones más avanzadas, como las razones de área logarítmica (LAR), la descomposición de pares espectrales de líneas (LSP) y los coeficientes de reflexión . De estas, la descomposición LSP ha ganado popularidad, ya que garantiza la estabilidad del predictor y los errores espectrales son locales para pequeñas desviaciones de coeficientes.

Aplicaciones

LPC es el método más utilizado en codificación y síntesis de voz . [17] Generalmente se utiliza para análisis y resíntesis de voz. Las compañías telefónicas lo utilizan como una forma de compresión de voz, como en el estándar GSM , por ejemplo. También se utiliza para comunicaciones inalámbricas seguras , donde la voz debe digitalizarse , cifrarse y enviarse a través de un canal de voz estrecho; un ejemplo temprano de esto es el Navajo I del gobierno de los EE. UU .

La síntesis LPC se puede utilizar para construir vocoders donde se utilizan instrumentos musicales como señal de excitación para el filtro variable en el tiempo estimado a partir del habla de un cantante. Esto es bastante popular en la música electrónica . Paul Lansky creó la conocida pieza musical por computadora notjustmoreidlechatter utilizando codificación predictiva lineal. [18] Se utilizó una LPC de décimo orden en el popular juguete educativo Speak & Spell de los años 80 .

Los predictores LPC se utilizan en los códecs de audio Shorten , MPEG-4 ALS , FLAC , SILK y otros códecs de audio sin pérdida .

El LPC ha recibido cierta atención como herramienta para su uso en el análisis tonal de violines y otros instrumentos musicales de cuerda. [19]

Véase también

Referencias

  1. ^ Deng, Li; Douglas O'Shaughnessy (2003). Procesamiento del habla: un enfoque dinámico y orientado a la optimización. Marcel Dekker . Págs. 41–48. ISBN. 978-0-8247-4040-5.
  2. ^ Beigi, Homayoon (2011). Fundamentos del reconocimiento de hablantes . Berlín: Springer-Verlag. ISBN 978-0-387-77591-3.
  3. ^ BS Atal (2006). "La historia de la predicción lineal". Revista IEEE Signal Processing . 23 (2): 154–161. Bibcode :2006ISPM...23..154A. doi :10.1109/MSP.2006.1598091. S2CID  15601493.
  4. ^ ab Y. Sasahira; S. Hashimoto (1995). "Cambio del tono de voz mediante el método de codificación predictiva lineal para mantener el timbre personal del cantante" (pdf) . Michigan Publishing. {{cite journal}}: Requiere citar revista |journal=( ayuda )
  5. ^ US 2605361, CC Cutler, "Cuantización diferencial de señales de comunicación", publicado el 29 de julio de 1952 
  6. ^ BM Oliver (1952). "Codificación eficiente". The Bell System Technical Journal . 31 (4). Nokia Bell Labs: 724–750. doi :10.1002/j.1538-7305.1952.tb01403.x.
  7. ^ HC Harrison (1952). "Experimentos con predicción lineal en televisión". Bell System Technical Journal . 31 (4): 764–783. doi :10.1002/j.1538-7305.1952.tb01405.x.
  8. ^ P. Elias (1955). "Codificación predictiva I". IRE Trans. Inform.Theory . IT-1 núm. 1: 16–24. doi :10.1109/TIT.1955.1055126.
  9. ^ P. Elias (1955). "Codificación predictiva II". IRE Trans. Inform. Theory . IT-1 núm. 1: 24–33. doi :10.1109/TIT.1955.1055116.
  10. ^ S. Saito; F. Itakura (enero de 1967). "Consideración teórica del reconocimiento estadístico óptimo de la densidad espectral del habla". J. Acoust. Soc.Japan .
  11. ^ BS Atal; MR Schroeder (1967). "Codificación predictiva del habla". Conf. Communications and Proc .
  12. ^ JP Burg (1967). "Análisis espectral de máxima entropía". Actas de la 37.ª reunión de la Sociedad de Geofísica de Exploración, Oklahoma City .
  13. ^ abcd Gray, Robert M. (2010). "Una historia del habla digital en tiempo real en redes de paquetes: Parte II de la codificación predictiva lineal y el protocolo de Internet" (PDF) . Encontrado. Trends Signal Process . 3 (4): 203–303. doi : 10.1561/2000000036 . ISSN  1932-8346. Archivado (PDF) desde el original el 2022-10-09.
  14. ^ ab Schroeder, Manfred R. (2014). "Bell Laboratories". Acústica, información y comunicación: volumen conmemorativo en honor a Manfred R. Schroeder . Springer. pág. 388. ISBN 9783319056609.
  15. ^ Atal, B.; Schroeder, M. (1978). "Codificación predictiva de señales de voz y criterios de error subjetivo". ICASSP '78. IEEE International Conference on Acoustics, Speech, and Signal Processing . Vol. 3. págs. 573–576. doi :10.1109/ICASSP.1978.1170564.
  16. ^ Schroeder, Manfred R. ; Atal, Bishnu S. (1985). "Predicción lineal excitada por código (CELP): voz de alta calidad a velocidades de bits muy bajas". ICASSP '85. IEEE International Conference on Acoustics, Speech, and Signal Processing . Vol. 10. págs. 937–940. doi :10.1109/ICASSP.1985.1168147. S2CID  14803427.
  17. ^ Gupta, Shipra (mayo de 2016). "Aplicación de MFCC en el reconocimiento de locutor independiente del texto" (PDF) . Revista internacional de investigación avanzada en informática e ingeniería de software . 6 (5): 805–810 (806). ISSN  2277-128X. S2CID  212485331. Archivado desde el original (PDF) el 18 de octubre de 2019. Consultado el 18 de octubre de 2019 .
  18. ^ Lansky, Paul. "Más que charlatanería". Archivado desde el original el 24 de diciembre de 2017. Consultado el 2 de junio de 2024 .
  19. ^ Tai, Hwan-Ching; Chung, Dai-Ting (14 de junio de 2012). "Los violines Stradivarius exhiben frecuencias de formantes que se asemejan a las vocales producidas por mujeres". Savart Journal . 1 (2).

Lectura adicional

Enlaces externos