An Audio Compression Method Based on Wavelets Subband Coding G. Kemper and Y. Iano, Member, IEEE 1 Abstract— This paper presents an audio compression method based on wavelets sub-band quantization and coding, and proposes a coder based on that method. The proposed coder uses the wavelets packets transform in order to obtain the critical bands of the human auditory system. Some results of the MPEGlayer 2 psychoacoustic model are used in the wavelets coefficients coding. The MPEG results are transformed to the wavelet domain in order to determinate the quantizer type and the quantization levels number for each wavelet sub-band. The transform method of these results is also proposed. The coder uses scalar and vector quantization methods according with the sensibility of the human auditory system for each wavelet subband. The entropy coding is also used in order to improve the performance of the proposed coder. The results of the subjective evaluation demonstrate that the proposed coder achieve transparent coding of the monophonic CD signals at bit rates of 80-96 Kbit/seg. Keywords— audio coding, wavelet transform, quantization, entropy coding, subjective evaluation. E MPEG, I. INTRODUCCIÓN N LOS últimos años se han propuesto diferentes métodos de compresión y codificación de señales de audio, apuntando siempre a extraer cuidadosamente la información redundante e irrelevante (sin degradar la calidad de la señal). Muchos de los métodos propuestos fueron finalmente establecidos como estándares técnicos por las diferentes organizaciones especializadas, a fin de que puedan constituir opciones de aplicación en sistemas computacionales multimedia, o en sistemas digitales de comunicaciones como telefonía, radiodifusión, internet, HDTV (High Definition Television), etc. En la actualidad, los codificadores de audio más utilizados pertenecen a las familias ITU (International Telecommunication Union), MPEG (Motion Picture Expert Group) y DOLBY, los cuales han ido evolucionando continuamente a través de sus distintas versiones. Para el caso de la familia ITU, recién en el año 2008 se lanzó el primer codificador de audio Full Band (FB) G.719 (20Hz – 20KHz), apropiado para voz y música en las tasas de 32 a 128 Kbit/seg [1]. Para el caso de MPEG fueron propuestos inicialmente los 11 Este trabajo fue financiado por la “Fundação de Amparo à Pesquisa do Estado de São Paulo” (FAPESP). G. Kemper, Universidade Estadual de Campinas (UNICAMP), Campinas, São Paulo, [email protected] Y. Iano, Universidade Estadual de Campinas (UNICAMP), Campinas, São Paulo, [email protected] codificadores de audio de la línea MPEG-1, los cuales presentan 3 niveles de codificación: MP1, MP2 y MP3. El primer nivel es apropiado para tasas en torno de 192Kbit/seg por canal, mientras que el segundo es apropiado para tasas de 128Kbit/seg (por canal). Finalmente el nivel MP3 (muy utilizado hoy en día en diversas aplicaciones) es apropiado para tasas en torno de 160Kbit/seg para formato estéreo (aunque eso depende del tipo de música y de la evaluación subjetiva de la calidad de audio). Todos estos codificadores fueron estandarizados a través de la norma ISO/IEC – 11172-3:1993 [2]. Posteriormente fueron propuestos los codificadores de la línea MPEG-2 para los formatos monocanal, estéreo y 5.1 (320Kbit/seg). Estos codificadores fueron estandarizados en la norma ISO/IEC 13818-3 [3]. Una evolución de esta última norma lo constituyen hoy en día los codificadores MPEG-2-AAC–LC (Advanced Audio Coding-Low Complexity, 1997), MPEG-4 AAC-LC (1999), MPEG-4-HE(High Effciency)-AAC (2003), MPEG-4-HEAAC v2 (2004), los cuales fueron desarrollados con el propósito de crear métodos más eficientes de codificación (sin compatibilidad con sus antecesores) para canales periféricos de audio en los formatos 5.1, 7.1, 10.2, etc. (utilizados en las salas de cine y en los sistemas Home Theater). Los codificadores AAC presentan diversos niveles de complejidad según las tasas de compresión que se desea alcanzar. Asimismo involucran técnicas más avanzadas de codificación como el TNS (Temporal Noise Shaping) para reducir los problemas de ecos y ruidos temporales causados por el proceso de codificación. También utilizan la técnica de Spectral Band Replication (SBR) para explotar la redundancia armónica de la señal de audio en el dominio de la frecuencia [4]. Los codificadores DOLBY por otro lado han mostrado también una evolución en el tiempo a través de sus versiones AC-1, AC-2 y AC-3 (5.1 canales – 320Kbit/seg). Esta última es utilizada hoy en día en muchos sistemas de vídeo digital DVD y ha sido estandarizada como el codificador de audio para el sistema HDTV propuesto en los Estados Unidos de Norteamérica [5]. Generación y cuantización de los factores de escala Señal de entrada PCM, 16bits/muestra Señal Codificada 44.1KHz, monocanal Segmentación A Descomposición en sub -bandas wavelets (Wavelet Packet) nivel de ruido permitido en el dominio de la frecuencia Modelo Psico-Acústico MPEG - Model 2 B (tramas de bits) Cuantización escalar Cuantización vectorial Codificación de entropía Buffer Selección de Cuantizadores Transformación al dominio wavelets Asignación de bits Figura 1. Diagrama de bloques del codificador de audio propuesto. Una característica común de todos estos sistemas de compresión es la segmentación de la señal en bloques y la codificación de la misma en el dominio de la frecuencia, utilizando para ello la transformada modificada del coseno MDCT (Modified Discrete Cosine Transform). Cada codificador establece sin embargo diferentes formas de implementación y utilización de la transformada, así como distintos esquemas de codificación de los coeficientes resultantes. El proceso involucra en primer lugar el agrupamiento de los coeficientes MDCT según el modelo de bandas criticas del sistema de audición humano. Esto permite descorrelacionar perceptualmente la información y permitir una codificación adaptiva más eficiente de cada sub-banda. Tres tipos de redundancia son explotadas en el proceso de compresión. En primer lugar se tiene la redundancia perceptual. Este tipo de redundancia es explotada mediante la utilización de un modelo psicoacústico y un algoritmo de asignación de bits, a fin de establecer las resoluciones de los cuantizadores que serán utilizados en la codificación de cada sub-banda (compresión con pérdidas). En segundo lugar se tiene la redundancia temporal. Este tipo de redundancia es explotada a partir de la estacionaridad que presenta cierta información en bloques de audio adyacentes. Esto permite codificar las diferencias en lugar de los valores originales, obteniendo así una ganancia adicional de compresión. Finalmente se tiene la redundancia de codificación, la cual es explotada mediante la utilización de codificadores de entropía que asignan códigos de tamaño variable para la representación de la información. Esto permite obtener una ganancia de compresión de hasta un factor de 2 en el caso de audio (compresión sin perdidas). La generación de los códigos es realizada a través de diferentes métodos, siendo los mas utilizados los codificadores de Huffman. También se tienen los codificadores aritméticos y los codificadores por longitud de series (Run-length) [6]. Estos 3 tipos de redundancia son explotados en el codificador de audio propuesto, utilizando la transformada de Wavelets Packets en lugar de la MDCT. En función a ello se propone un método de codificación de coeficientes wavelets (localizados en cada sub-banda) apuntando a obtener la mayor tasa de compresión. Asimismo se propone un modelo piscoacústico híbrido FFT(Fast Fourier Transform)/wavelets adaptado al modelo psicoacútcio 2 del estándar MPEG-1. En [7] se proponen modelos basados totalmente en wavelets Munich y Gammachirp. Se muestra una comparación con el modelo MPEG-1 basado en la FFT y se verifica un desempeño ligeramente superior para señales de voz (en lo referente a factor de compresión). En [8] también se propone un nuevo modelo psicoacústico basado en este caso en wavelets Morlet Cambridge. De acuerdo a los resultados obtenidos, se verifican mejoras ligeramente superiores al modelo MPEG-1. El modelo propuesto en este trabajo constituye un esquema híbrido adaptado (FFT/Wavelets) que utiliza los resultados del modelo psicoacústico 2 del MPEG-1, para estimar la distribución e intensidad del ruido en cada sub-banda wavelet. Los resultados mostrados al final del trabajo no solo miden el factor de compresión alcanzado, sino también la calidad subjetiva de la señal decodificada. En este caso se logró una calidad de audio bastante satisfactoria para una tasa de salida de 80Kbit/seg (monocanal). La señal de entrada al codificador se estableció en el formato PCM monocanal, 16bits/muestra y 44.1KHz de frecuencia de muestreo (calidad Compact Disk- CD - monocanal). Esto resulta en una tasa de entrada 705Kbit/seg. En las siguientes secciones se describirá las diferentes partes que componen el codificador propuesto y los resultados obtenidos a partir de la evaluación subjetiva. II. DESCRIPCIÓN DEL CODIFICADOR PROPUESTO La Fig. 1 muestra el diagrama de bloques del codificador de audio propuesto. El funcionamiento general del sistema puede ser resumido de la siguiente forma: La señal original es segmentada en bloques de 1024 muestras con superposición de 48 muestras entre bloques de audio adyacentes. Cada bloque es descompuesto en subbandas wavelets a través del árbol de descomposición propuesto en [9]. Por cada sub-banda se calcula un factor de escala (máximo valor absoluto de los coeficientes que conforman la sub-banda) que es cuantizado exponencialmente utilizando 64 niveles de cuantización. Cada factor de escala es codificado y transmitido dentro de la trama de audio de salida. En paralelo a este proceso, el bloque de audio es ingresado al algoritmo del modelo psicoacústico 2 especificado en la norma ISO/IEC – 11172-3:1993 [2]. A partir del modelo se obtienen los niveles de ruido permitidos para cada componente de frecuencia que conforma el espectro del bloque. Los resultados del modelo son transformados al dominio de las sub-bandas wavelets, a fin de establecer los niveles de ruido que puede soportar cada coeficiente. Con estos resultados y a través de un algoritmo de asignación de bits, es posible determinar una relación señal/ruido (SNR) para cada sub-banda. Con ello se podrá establecer la resolución de los cuantizadores según el factor de compresión requerido. Los resultados de este último algoritmo permiten también decidir el método de cuantización (escalar o vectorial) a ser aplicado a cada sub-banda. La cuantización vectorial es utilizada para sub-bandas localizadas por encima de los 5KHz, aprovechando que el sistema de audición humano presenta menor capacidad de detección de ruido en esta región del espectro. Después del proceso de cuantización (escalar), los coeficientes son codificados a través de un codificador de entropía, a fin de explotar la redundancia de codificación e incrementar la ganancia de compresión. Debido a esta última codificación (códigos de longitud variable) se hizo necesario el uso de un buffer de control de tasa para mantener constante la tasa de bit de salida y el factor de compresión. Obsérvese que se utiliza una retroalimentación para regular el algoritmo de asignación de bits según el espacio libre en el buffer. Esto es realizado con el fin de evitar de que el buffer tienda a quedarse vacío o sobrecargado. En las siguientes secciones se describirán los bloques funcionales más importantes que conforman el codificador de audio propuesto. A. Segmentación en bloques Como se mencionó anteriormente, la señal de entrada al codificador es segmentada en bloques 1024 muestras con superposición de 48 muestras entre bloques de audio adyacentes. Para la generación de los bloques de audio se hace uso de una función ventana definida de la siguiente forma [9]: 1 1 2πn − cos 2 2 95 1 w (n ) = 1 1 2π(n − 976 + 48) − cos 95 2 2 0 ≤ n ≤ 47 48 ≤ n ≤ 975 (1) 976 ≤ n ≤ 1023 Luego, el m-ésimo bloque de audio como: x m ( n ) es definido x m ( n ) = x (m(N − 48) + n )w (n ) n=0,1,...,N-1 (2) donde x(n) constituye la señal de audio de entrada y “N” el tamaño de bloque utilizado (en este caso se tiene N=1024). El uso de la ventana facilita la decodificación de los bloques con superposición y mejora la resolución del espectro en frecuencia de cada bloque. La superposición de bloques es realizada con el objetivo de reducir el llamado “efecto de bloque” que se manifiesta como un ruido “click“ en la señal decodificada [9]. El proceso de segmentación es mostrado en la Fig. 2. Región de superposición ventana xm(n) xm+1(n) 48 N muestras (bloque m) N muestras (bloque m+1) Figura 2. Proceso de segmentación. B. Descomposición en sub-bandas wavelets Después del proceso de segmentación, cada bloque de audio es sometido a un árbol de descomposición wavelets packets para la generación de las sub-bandas. El árbol es mostrado en la Fig. 3 [9]. El árbol permite la obtención de 29 sub-bandas que se aproximan al esquema de bandas críticas de oído humano. Esto permite descorrelacionar perceptualmente la información y aplicar una codificación adaptiva más eficiente. Las respuestas impulsivas de los filtros de descomposición y reconstrucción deberán satisfacer por tanto las condiciones de ortogonalidad y perfecta reconstrucción [11], [12], [13]. En la Fig. 4, h d ( n ) y h r ( n ) (respuestas impulsivas), SB0[0.00,0.09] SB1[0.09,0.17] SB2[0.17,0.26] SB3[0.26,0.34] SB4[0.34,0.43] SB5[0.43,0.52] SB6[0.52,0.69] SB7[0.69,0.86] SB8[0.86,1.03] SB9[1.03,1.20] constituyen los filtros pasa-bajas de descomposición y reconstrucción respectivamente. Asimismo, g d (n ) y SB10[1.20,1.40] SB11[1.40,1.70] g r (n ) conforman los filtros pasa-altas. SB12[1.70,2.10] SB13[2.10,2.40] SB14[2.40,2.80] SB15[2.80,3.10] SB16[3.10,3.40] SB17[3.40,4.10] SB18[4.10,4.80] SB19[4.80,5.50] SB20[5.50,6.20] SB21[6.20,6.90] SB22[6.90,8.30] [0,22] SB23[8.30,9.60] SB24[9.60,11.00] SB25[11.00,13.80] SB26[13.80,16.50] frecuencias de corte en KHz SB27[16.50,19.30] SB28[19.30,22.00] Figura 3. Árbol de descomposición wavelets packets utilizado en el codificador propuesto [9]. La transformación puede ser expresada como: Cm p (i ) = W[x m ( n ), h d ( n ), g d ( n ) ] m=0,1,2,.... , i=0,1,...,Lp-1 , (3) p=0,1,...,28 donde W[ . ] indica la transformada wavelets packets basada en el árbol de descomposición de la Fig. 3; “i” constituye el índice de un coeficiente wavelet en la subbanda “p”; Lp indica el número de coeficientes de la subbanda; h d ( n ) y g d ( n ) constituyen finalmente las La implementación del árbol implica la ejecución de varias operaciones de convolución lineal y submuestreo en factor de 2. Lo ideal es que en la descomposición de cada nodo (ver Fig. 4), la entrada s1(n) y la salida s2(n) presenten la mitad de muestras de s(n). Sin embargo, cada operación de convolución produce a la salida una señal de mayor tamaño que el de la entrada, con lo cual no se obtendría los tamaños deseados. Para ello se utiliza el método de convolución por extensión periódica de la señal de entrada [14]. Con ello, el número de coeficientes de las 29 sub-bandas queda distribuido como muestra la Tabla I. Obsérvese que el número total de coeficientes coincide con el tamaño de cada bloque de audio. De esa forma son codificados 1024 coeficientes wavelets por cada 1024 muestras de audio. Las respuestas impulsivas de los filtros son generadas según el tipo de wavelet elegido para el proceso de descomposición. Para el caso de audio debe considerarse lo siguiente: - En la medida que se utilicen filtros wavelets de mayor orden, se irán obteniendo sub-bandas más selectivas [12], las cuales presentarán menor nivel de superposición. Filtros mas selectivos generan sin embargo mayor carga computacional por parte del codificador, por lo que se deberán establecer valores de equilibrio. - En este trabajo se hicieron pruebas con wavelets de Daubechies [11], Coiflets y Biortogonales [10]. Se comparó la calidad subjetiva de audio y se percibió una mejora de la señal con el uso de filtros wavelets de Daubechies comparados con sus pares Coiflets y Biortogonales. Esto demuestra que las Daubechies descorrelacionan mejor la información de audio y permiten un mejor desempeño del codificador. respuestas impulsivas de los filtros de descomposición pasabajas y pasa-altas respectivamente. El valor resultante C p (i ) constituye el coeficiente m wavelet “i” de la sub-banda “p” del bloque de audio “m”. Obsérvese que cada nodo del árbol se puede descomponer en dos sub-bandas o espacios ortogonales que generan al mismo tiempo dos nuevos nodos. Las sub-bandas generadas pueden posteriormente juntarse para reconstruir la sub-banda del nodo original (proceso de reconstrucción). Este proceso es mostrado en la Fig. 4 [10]. s1(n) h d (n ) 2 2 TABLA I NÚMERO DE COEFICIENTES POR SUB-BANDA [14] h r (n ) s(n) s(n) + s2(n) g d (n ) 2 2 g r (n ) Figura 4. Descomposición y reconstrucción de un nodo. Por cada árbol de descomposición existirá el correspondiente árbol de reconstrucción, el cual restablece consecutivamente los nodos a partir de las sub-bandas generadas [10]. Sub-banda SB0,SB1,...SB5 SB6,SB7,...,SB10 SB11,SB12,...,SB16 SB17,SB18,...,SB21 SB22,SB23,...,SB24 SB25,SB26,...,SB28 N° coeficientes (Lp) 4 8 16 32 64 128 Total Total 24 40 96 160 192 512 1024 C. Modelo Psicoacústico En paralelo al proceso de descomposición de sub-bandas es ejecutado parcialmente el modelo psico-acustico 2 especificado en la norma ISO/IEC 11172-3 [2]. A través de este algoritmo, cada bloque de audio es transformado al dominio de la frecuencia utilizando una FFT (Fast Fourier Transform) de 1024 puntos. El propósito del modelo es obtener una función en la frecuencia que especifique el máximo nivel de ruido permitido para cada componente de frecuencia que conforma un bloque de audio. El algoritmo modela el comportamiento del esquema de percepción de señales del oído humano, explotando sus limitaciones y sus niveles sensibilidad en el dominio de la frecuencia. Tres factores psicoacústicos son explotadas por el modelo [15], [16]: - - - Sensibilidad variable en función de la frecuencia. Esto implica que algunas componentes de frecuencia son percibidas con mayor intensidad que otras. La mayor sensibilidad de percepción se localiza aproximadamente en la banda media de 500 a 5000 Hz. Enmascaramiento de componentes de frecuencia. Este fenómeno se presenta cuando componentes de frecuencia de alta potencia, tornan inaudibles a componentes vecinas de baja potencia. Esto permite seleccionar y codificar solo aquellas componentes que son fuertemente percibidas por el oído. División del espectro auditivo en bandas criticas. La división del espectro en frecuencia en sub-bandas de anchura variable es una de las principales característica del sistema de audición humano. Esta segmentación permite definir la resolución del oído para detectar componentes o sonidos que conforman el espectro auditivo. El ancho de las bandas críticas es variable y se incrementa en la medida que aumenta la frecuencia. Esto significa que el oído presenta mayor resolución en bajas frecuencias y menor resolución en altas frecuencias (ver Fig. 5). Asimismo el nivel de sensibilidad en la percepción de cada sub-banda es variable. La descomposición de cada bloque de audio en subbandas wavelets permite por tanto emular el modelo de bandas críticas del oído humano. Con esta información el modelo psicoacústico será capaz de estimar el nivel de ruido que podrá soportar cada sub-banda, a partir de su energía y de los factores psicoacústicos que intervienen. Uno de los resultados parciales obtenidos a través del modelo psico-acustico MPEG, es el umbral absoluto de audibilidad “ thrkm ” para cada componente “k” del espectro en frecuencia (del bloque de audio “m”). En la norma se utiliza la nomenclatura “thrw”. Los niveles de audibilidad para este caso están expresados en densidad espectral de energía. Espectro Auditivo 0 20KHz Bandas Criticas Figura 5. División del espectro auditivo en bandas criticas. Para mapear estos niveles al dominio de las sub-bandas wavelets, se construye en primer lugar la siguiente función: Sm k thrkm = thr m 1024 − k k = 0,...,512 (4) k = 513,...,1023 Luego, aplicando la transformada inversa de Fourier se obtiene la función: Rm n = 1023 S mk e j2πnk (5) k =0 n = 0,1,...,1023 En seguida se descompone “ R m n ” en sub-bandas wavelets utilizando el árbol de la Fig. 3 (árbol de descomposición): [ Γpm (i ) = W R m n , f d ( n ), q d ( n ) m=0,1,2,.... , ] i=0,1,...,L(p)-1 p=0,1,...,28 (6) donde: f d (n ) = h d (n ) ∗ h d (−n ) (7) q d (n ) = g d (n ) ∗ g d (−n ) (8) Luego, por cada sub-banda se determina la norma de “ Γpm ”: Γpm = (Γ ) + (Γ (1)) 2 m p (0) m=0,1,2,.... , m p 2 ( + ... + Γpm ( L p − 1) ) 2 (9) p=0,1,...,28 Lo cual representa aproximadamente el umbral de audibilidad o enmascaramiento de la sub-banda “p”. Otro resultado obtenido a través del modelo psicoacústico 2, es el espectro del bloque de audio “m” expresado como “ Xm k ”. Esto es obtenido vía transformada rápida de Fourier FFT utilizando 1024 coeficientes en la frecuencia: Xm k = 1023 x m (n ).w h (n)e − j2πnk (10) n =0 m=0,1,2,.... k = 0,1,...,1023 donde “wh(n)” representa a la ventana de Hanning [1]. A partir de “ X m k ” se obtiene: Em n = 1023 X mk 2 e j2 πnk (11) k =0 m=0,1,2,.... fenorm m p = n = 0,1,...,1023 Luego se descompone “ E m n ” en sub-bandas wavelets, utilizando el árbol de la Fig. 3: Ψpm trama de salida del codificador. Para la codificación, se utiliza un procedimiento similar al propuesto en [2]. En primer lugar, se determina el factor de escala de la subbanda. Luego se normaliza este valor respecto al máximo valor absoluto que puede tomar un coeficiente en la sub-banda en cuestión ( fmax p ): (i ) = W[ Em n , m=0,1,2,.... , f d (n ), q d (n ) fe m p fmax p i=0,1,...,L(p)-1 , p=0,1,...,28 (12) (15) j=0,1,...,63 (16) Con los valores β j se determina: fcodm p = j0 , En seguida se obtiene la norma de “ Ψpm ”: p=0,1,...,28 Tanto el codificador como el decodificador tienen disponible los 64 valores de la siguiente función [14]: β j = 2 0.2816( j−64) ] , m si fenormm p − β j0 ≤ fenormp − β j (17) para todo j Ψpm = (Ψ ) + (Ψ (1)) 2 m p (0) m=0,1,2,.... , m p 2 ( + ... + Ψpm ( L p − 1) ) 2 (13) p=0,1,...,28 Lo cual representa el nivel de intensidad de señal en la subbanda “p” del bloque de audio “m”. Finalmente se determina para cada sub-banda la relación “señal a máscara” (SMR): Ψm p SMR m = 10 log p 10 + Cp Γpm m=0,1,2,.... p=0,1,...,28 (14) Lo cual representa (en decibeles) la porción de señal que es audible en la sub-banda “p”; “Cp” por otro lado es un factor de compensación que se ha adicionado con el objetivo de mejorar la calidad de audio del codificador [14]. La Tabla II presenta los valores asignados según la sub-banda requerida. TABLA II VALORES DEL FACTOR DE COMPENSACIÓN “CP” ASIGNADOS A CADA SUB-BANDA WAVELET [14] Índice de sub-banda Cp p=0,1...,21 p=22,...,24 p=25,...,26 p=27,...,29 4 -3 -8 -10 D. Factor de escala El factor de escala constituye el máximo valor absoluto de los coeficientes wavelets que conforman una determinada subbanda. Este valor permite normalizar el rango de cuantización escalar al intervalo [-1,1]. Cada factor de escala es codificado y colocado dentro de la donde “ fcod m p ” constituye el factor de escala codificado de la sub-banda “p”. En este caso se utilizan 6 bits de precisión para representar cada valor “ fcod m p ”, dado que 0 ≤ j ≤ 63 . Obsérvese también que la cuantización utilizada es de tipo exponencial. Esto obedece al esquema de percepción que presenta el oído humano a la envolvente de cada sub-banda; representada en este caso por los factores de escala. Cabe resaltar que cada valor “ fcod m p ” es finalmente codificado en forma diferencial. Esto se debe a que la envolvente del espectro permanece estacionaria entre bloques de audio adyacentes, lo que permite explotar las diferencias entre factores de escala de una misma sub-banda. Las diferencias son codificadas haciendo uso de la codificación de Huffman [6], explotando el hecho de que muchos de los valores diferencia son bastantes repetitivos y con alta probabilidad de ocurrencia. Finalmente en el decodificador el factor de escala es obtenido de la siguiente forma: fed m p =2 0.2816 (fcodm p −64) fmaxm p (18) donde “ fcod m p ” es primero decodificado por Huffman. E. Asignación de bits El algoritmo de asignación de bits determina el número de niveles de cuantización que serán utilizados en la codificación de cada sub-banda. La asignación es realizada iterativamente (bit a bit) a partir de los valores de SMR m p obtenidos mediante el modelo psicoacústico. Inicialmente el algoritmo recibe como dato el número de bits disponible (“ Nba m ”) para codificar el actual bloque de Los valores “ Bh m p ” constituyen lo códigos identificadores audio. El valor “ Nba m ” es determinado a partir de la siguiente expresión [14]: de la tablas de Huffman asignadas a las sub-bandas wavelets. La precisión en bits de estos identificadores es mostrada en la Tabla III. Los valores “ ba m p ” indican finalmente las sub-bandas con Nba m = TB ( N − 48) + Nbr m−1 fs (19) donde “TB” es la tasa de bit requerida y “fs” la frecuencia de muestreo; “ Nbr m−1 ” es el espacio en bits que no fue ocupado en el buffer de salida por el bloque de audio anterior. El buffer permite mantener la tasa de bit constante para aplicaciones donde se utiliza la codificación de entropía (como es en este caso). El valor 48 representa la superposición entre bloques de audio adyacentes. Asimismo, “N representa el tamaño del bloque de audio utilizado (1024 muestras). La asignación es basada en la minimización de la relación mascara a ruido “MNR” [2]. Esta función se define como: (20) m m MNR m p = SNR p − SMR p donde “ SNR m p ” constituye la relación señal a ruido de la subbanda “p” del bloque de audio “m”. Al inicio cada sub-banda presenta cero bits de asignación. Esto es contabilizado en el vector “ nb m p ” , el cual especifica el número de bits asignado al cuantizador escalar de la subbanda “p”. En seguida se determina la sub-banda con el menor valor MNR. Luego se incrementa en un bit su correspondiente m “ nb m p ” y en 6dB su SNR p . Es importante indicar que la primera asignación para las sub-bandas en el rango 0KHz-7KHz (p=0,1,...,21) es de 2 bits. Para el resto de sub-bandas la asignación mínima es de un bit. Esto es debido a que para estas ultimas se utiliza la cuantización vectorial. Después de cada iteración se recalcula el número total de bits que ocupan hasta el momento las sub-bandas codificadas. Este valor es definido por la siguiente expresión [14]: Nbt m = nba m + nbfs m + 28 p=0 m Bh m p ba p + 28 nb mp L p (21) p =0 donde nba m = (3).(29) = 87 y representa el número de bits que ocupa “ nb m p ” en la trama de audio. Esto implica 3 bits por sub-banda, lo cual indica que a lo máximo una sub-banda puede ser codificada con 7 bits por coeficiente (para el caso del codificador propuesto a lo máximo se considera 4 bits de asignación). Por otro lado se tiene el valor nbfsm que representa el número de bits que ocupan los factores de escala codificados en la trama. asignación diferente de cero. Estos valores pueden ser expresados como: ba m p 1 = 0 nb m p >0 nb m p =0 (22) m Luego de ser incrementados nb m p y SNR p , se recalcula el valor MNR de la sub-banda y se vuelve a determinar la subbanda con el mínimo valor MNR. La asignación culmina cuando “ Nbt m ” sobrepasa el valor “ Nba m ”, o cuando todas las bandas han llegado a una asignación máxima de 4 bits. Cabe resaltar que la ultima sumatória de (21) representa el número de bits que ocuparían las sub-bandas cuantizadas escalarmente (sin codificación de entropía). Sin embargo, este valor es reducido por la codificación de entropía de las subbandas en el rango 0KHz-7KHz (p=0,...,21). La reducción se incrementa aun más con la cuantización vectorial de las subbandas superiores en el rango de 7KHz-22KHz (p=22,...,28). El valor “ Nbr m ” en (19) es por tanto definido como: Nbr m = Nba m − Nbtc m (23) donde Nbtc m constituye el número de total de bits que ocupa finalmente el bloque de audio codificado (esto incluye Huffman y cuantización vectorial). F. Cuantización Escalar Una vez concluido el algoritmo de asignación de bits, se procede a cuantizar escalarmente las sub-bandas en el rango 0KHz-7KHz (p=0,...,21). La cuantización de un coeficiente wavelet puede ser expresada como [14]: m nb m −1 p − 1 C p (i) Cq m p (i) = round 2 fed m p (24) donde “round(x)” retorna el número entero mas próximo a “x” ; “ Cq m p (i ) ” constituye el coeficiente cuantizado “i” de la sub-banda “p” del bloque de audio “m” (valores enteros con precisión de “ nb m p ” bits). Finalmente el número de niveles de cuantización (“ Nq m p ”) asignado a una sub-banda puede ser obtenido de la siguiente forma: Nq m p =2 nb m p G. Codificación de entropía La codificación de entropía explota la redundancia estadística presente en las sub-bandas cuantizadas escalarmente [2]. En este caso es aplicado a sub-bandas en el rango 0KHz-7KHz (p=0,...,21). Los valores de los coeficientes cuantizados serán representados por códigos de tamaño variable generados por el método de Huffman [6]. Los códigos a ser asignados se extraen de una tabla que es generada a partir de una determinada distribución de probabilidad. La tabla de códigos asignada depende del histograma de valores de la sub-banda y del valor “ nb m p ”. Con esta información un algoritmo determinará la tabla de codificación mas optima, apuntando a obtener el mayor grado de compresión. Las tablas fueron generadas a partir de distribuciones de probabilidad Gaussena, Laplaciana y Triangular [17]. En todos los casos se consideró distribuciones con media cero: Gauseana - N(0, σ 2x ) : dG X ( x ) = −x2 1 2πσ 2x e (26) 2σ 2x Laplaciana - L(0, σ x ) : dL X ( x ) = 1 2σ x (27) − 2 x σ e x nb m p N(0, σ 2x ) L(0, σ x ) T (a , b ) Bh m p 2 ---------- ---------- T(0.25,0.5) 0 bits ---------- T(0.013, 0.16) 2 bits L(0, 1.0) L(0, 2.0) L(0, 3.0) L(0, 4.0) T(0.018, 0.13) T(0.016, 0.12) T(0.008, 0.09) T(0.005, 0.08) 3 4 N(0, 1.0) N(0, 1.5) N(0, 2.0) N(0,1.0) N(0,1.5) N(0,2.5) N(0,4.0) b b x ∈− , a a (28) Estas distribuciones en promedio son las más aproximadas a los histogramas de las sub-bandas cuantizadas. La Tabla III muestra las distribuciones utilizadas en función de los valores “ nb m p ” [14]. TABLA III 4 bits Con la aplicación de la codificación de entropía se consiguió niveles de compresión de hasta de un factor de 2, lo cual mejoró significativamente el desempeño del codificador propuesto. H. Cuantización vectorial La cuantización vectorial es aplicada (bajo ciertas condiciones) a sub-bandas que se encuentran en el rango de 7KHz a 22KHz (p=22,...,28). Los cuantizadores fueron construidos a partir de una base de datos de coeficientes wavelets localizados en el mencionado rango de frecuencias. Para la generación de los “codebooks” fue utilizado el “Lloyd Algorithm” [18]. Este algoritmo genera un árbol binario de centroides que presenta diferentes niveles de resolución. Con ello, el número de centroides que conformará un cuantizador dependerá del nivel de búsqueda que se alcanzará en un determinado árbol. La Fig. 6 muestra un árbol de búsqueda binaria de “n” etapas o niveles [18]-[21]. La resolución o número de centroides del cuantizador (“Ncq”) es expresado como: Ncq = 2 nbq Triangular - T(a, b) : dTX ( x ) = b − a x DISTRIBUCIONES UTILIZADAS EN FUNCIÓN DE LA ASIGNACIÓN DE BITS (25) −1 (29) donde “nbq” es el número de etapa o nivel que se alcanzó en el proceso de búsqueda (a mayor nivel de búsqueda mayor resolución del cuantizador asignado). Para la cuantización de las sub-bandas en el rango de 7KHz a 11KHz (p=22,23,24) se construyeron 4 arboles binarios de dimensión 2. Cada árbol es conformado por centroides cuyos valores presentan un mismo patrón de signo. Esto implica 4 patrones de signos para dimensión 2: (- , -) , (+ , -) , (- , +) y (+ , +). El máximo de nivel de búsqueda considerado en este caso es de 5. BLOQUE A CODIFICAR Etapa 1 VQ0 VQ1 Incremento de resolución Etapa 2 VQ0 VQ1 VQ2 VQ3 Etapa 3 VQ0 VQ1 VQ2 VQ3 VQ4 VQ5 VQ6 VQ7 Etapa 4 VQ0 VQ1 VQ2 VQ3 VQ4 VQ5 VQ6 VQ7 VQ8 VQ9 VQ10 VQ11VQ12 VQ13 VQ14 VQ15 Etapa n VQ0 VQ 2 n − 1 VQ1 VQ3 VQ4 Figura 6. Árbol de búsqueda binaria para un cuantizador vectorial. Para la cuantización de las sub-bandas en el rango de 11KHz a 22KHz (p=25,26,27,28) se construyeron 16 árboles binarios de dimensión 4 con patrón de signo y un árbol de dimensión 4 sin patrón de signo. El máximo nivel de búsqueda considerado para ambos casos fue de 3. Los diferentes niveles de búsqueda fueron asignados a cada sub-banda en función de la sensibilidad, resolución y nivel de ruido permitido por el oído humano. Cabe resaltar que a diferencia del proceso de cuantización vectorial tradicional, la cuantización con patrón de signo, se inicia identificando primeramente los signos de las muestras que conforman el bloque de entrada. Con ese patrón, se identifica el árbol correspondiente y luego se procede a buscar (mediante búsqueda binaria) el centroide que genera el menor error cuadrático medio con el bloque de entrada. El nivel de búsqueda que se alcanzará dependerá de la subbanda y del valor “ nb m p ” asignado. De acuerdo a ello, el número de bits que ocupa una subbanda “p” cuantizada vectorialmente puede ser expresado como: Lp (biar + nbq ) dim nvqs p = Lp nbq dim , con patrón de signo (30) , sin patrón de signo donde “biar” es el número de bits que ocupa el código identificador del árbol a utilizar (2 bits para dimensión 2 y 4 bits para dimensión 4); “dim” por otro lado constituye la dimensión del cuantizador. El nivel de búsqueda a ser asignado para una sub-banda “p” en un bloque de audio “m”, es obtenido de la siguiente forma: nbq m p nb m , p = 22,23,24 ∧ nb m p +1 p ≥4 m = nb m p + 1 , p = 25,26,27,28 ∧ 1 ≤ nb p ≤ 2 nb m , p = 25,26,27,28 ∧ nb m p −1 p ≥4 (31) Solo para la segunda condición de (31) se utiliza el árbol de dimensión 4 sin patrón de signo. Para los otros casos se utiliza la cuantización vectorial con patrón de signo. Finalmente la Tabla IV [14] muestra las condiciones de distribución de los diferentes métodos de cuantización utilizados en el codificador propuesto. III. BREVE DESCRIPCIÓN DEL DECODIFICADOR PROPUESTO El decodificador propuesto es mostrado en la Fig.7. Obsérvese que este proceso es mucho más simple que el ejecutado por el codificador. Para la decodificación de la información, el decodificador tiene disponible las tablas de Huffman y el “codebook” utilizado durante la codificación. Sin esta información es imposible decodificar la señal de audio. El árbol de reconstrucción wavelets packets reconstruye cada nodo del árbol de descomposición a partir de las subbandas decodificadas. Al final de este proceso se obtiene el bloque de audio reconstruido con el efecto de la ventana. Factores de escala codificados Códigos identificadores de tablas de Huffman Vector de asignación de bits TRAMA DE AUDIO CODIFICADA ( ) nb m p Decodificador de factores de escala Descuantizador Escalar Decodificador de Entropía Árbol de reconstrucción wavelets packets Decodificador de tramas Descuantizador Vectorial Sub-bandas cuantizadas vectorialmente Ventana inversa y reconstrucción de bloques de audio Códigos identificadores de los arboles de centroides SEÑAL DE AUDIO DECODIFICADA (PCM) Figura 7. Decodificador de audio propuesto. TABLA IV CONDICIONES PARA LA DISTRIBUCIÓN DE LOS MÉTODOS DE CODIFICACIÓN Y CUANTIZACIÓN DE SUB-BANDAS WAVELETS [14] Condición nb m p =2 p ≤ 24 nb m p ≥3 0 ≤ p ≤ 10 nb m p ≥3 11 ≤ p ≤ 21 nb m p =3 22 ≤ p ≤ 24 nb m p ≥4 22 ≤ p ≤ 24 nb m p ≥1 p ≥ 25 Codificación de Huffman Cuantización Escalar Cuantización Vectorial SI SI NO NO SI NO forma aleatoria el segmento original y el segmento de audio decodificado. El oyente debe evaluar (de acuerdo a una escala de valores), el nivel de distorsión de la fuente B con respecto al de la fuente “A” y el de fuente “C” con respecto también al de la fuente “A”. Una de las fuentes (“B” o “C”) debe ser idéntica en calidad a la de la fuente “A”. La escala de valores considerada para esta evaluación es mostrada en la Fig. 8 [22]. DISTORSIÓN IMPERCEPTIBLE SI SI NO SI SI NO NO NO SI NO NO SI El último paso del proceso es conformado por la aplicación inversa de la función ventana y el promedio de muestras compartidas entre bloques de audio adyacentes. IV. RESULTADOS Para la evaluación de codificador fue utilizado el método subjetivo estipulado en la recomendación ITU-R BS.1116 [22]. El procedimiento propuesto por este método se puede resumir de la siguiente forma: El oyente escucha tres segmentos de audio “A”, “B” y “C” (correspondientes exactamente a la misma melodía). La fuente “A” corresponde siempre a la señal original sin compresión (lo cual es informado al oyente). En las fuentes “B” y “C” se tiene en 5 PERCEPTIBLE CON REGULAR DISTORSIÓN 4 PERCEPTIBLE CON DISTORSIÓN ACEPTABLE 3 2 PERCEPTIBLE CON ALTA DISTORSIÓN PERCEPTIBLE CON ALTÍSIMA DISTORSIÓN (CALIDAD MUY POBRE) 1 Figura 8. Escala de puntajes considerada en el proceso de evaluación subjetiva. La medición de la calidad subjetiva de audio es obtenida a través del valor SDG (Grado de Diferencia Subjetiva), el cual es calculado en función de la prueba o medición a realizar. Al final de la evaluación, se promedian los valores SDG asignados por los oyentes (en su mayoría menores a 30 años) por cada melodía o segmento de audio evaluado. Las pruebas realizadas durante el proceso de evaluación son detalladas a continuación. A. Prueba 1 En esta prueba se compara directamente la calidad de la señal decodificada respecto a la de la señal original. El valor SDG se obtiene a partir de la diferencia de puntajes (mostrados la Fig. 8) asignados por los oyentes a la señal decodificada y a la señal original (reproducidas aleatoriamente como fuentes B y C). De acuerdo a ello, el SDG es obtenido de la siguiente forma: SDG = Puntajeseñal decodifcada − Puntajeseñal original (32) La calificación asignada al codificador propuesto será menor en la medida que el SDG sea mas negativo. La Tabla V muestra los resultados obtenido para los tipos de sonidos. Obsérvese que a menor tasa de salida (mayor factor de compresión) disminuye el desempeño del codificador. Sin embargo se trató de compensar esto con wavelets de mayor orden (y mayor selectividad) como la Daubechies 25 y la Daubechies 40. TABLA V RESULTADOS SDG DE LA PRUEBA 1 TIPO DE SONIDO WAVELET : DB40 80 KBIT/S WAVELET : DB25 96 KBIT/S WAVELET : DB15 128 KBIT/S Flauta Traversa Orquestas Música Disco Voz +Orquesta Guitarra Piano solo Rock Violines -0.45 -0.42 -0.58 -0.16 -0.74 -0.39 -0.49 -0.38 -0.33 -0.29 -0.13 -0.18 -0.29 -0.09 -0.13 -0.12 -0.29 -0.01 -0.06 -0.05 -0.03 -0.13 -0.03 -0.06 B. Prueba 2 En esta prueba se compara el desempeño del codificador propuesto frente a los codificadores MP2 y MP3. Obsérvese que para 128Kbit/s presenta el mismo desempeño del MP3. Para tasas menores es muy similar al desempeño del MP2. El valor SDG para este caso es obtenido de la siguiente forma: SDG = Puntajecodifcador prouesto − Puntajeotro codificadror (33) En este caso el oyente recibe aleatoriamente (en las fuentes B y C) la señal decodificada por el codificador propuesto y la decodificada por el otro codificador. Los puntajes asignados en cada caso son siempre con respecto a la señal original de la fuente “A”. Obsérvese que valores negativos indicarán mejor desempeño del otro codificador (caso contrario será mejor el codificador propuesto). La Tabla VI muestra los resultados obtenidos para este caso. TABLA VI RESULTADOS SDG DE LA PRUEBA 2 TIPO DE SONIDO Flauta Traversa Orquestas Música Disco Voz + Orquesta Guitarra Piano Solo Rock Violines CODIFICADOR PROPUESTO (DB40) VS CODIFICADOR MP2 TASA : 80 KBIT/S CODIFICADOR PROPUESTO (DB25) VS CODIFICADOR MP2 TASA : 96 KBIT/S CODIFICADOR PROPUESTO (DB15) VS CODIFICADOR MP3 TASA: 128 KBIT/S 0.31 -0.24 0.18 0.54 -0.31 0.56 0.33 0.19 0.53 0.16 0.08 -0.02 -0.06 0.11 -0.09 0.24 -0.10 0.28 0.13 0.31 0.05 0.09 0.06 0.07 wavelet adecuada, desarrollo de un modelo psicoacústico apropiado y codificación de los coeficientes wavelets. Optimizando el desempeño de los algoritmos involucrados, es posible obtener un codificador de alto desempeño para tasas en torno de los 64Kbit/seg y con alto nivel de calidad de audio. Si bien es cierto los mejores resultados fueron obtenidos con el uso de las wavelets de Daubechies, es indispensable buscar continuamente otras familias que mejoren los resultados y descorrelacionen mejor la información. Esto se aplica también al diseño de nuevos modelos psicoacústicos y al desarrollo de nuevos métodos de codificación de la información. Las resultados indican también que para 128Kbit/s la performance del codificador es similar al MP3 monocanal, sin embargo, observando un desempeño adecuado del codificador propuesto en 80Kbit/s (monocanal), se verifica un adecuado desempeño para señales estéreo en 160Kbit/seg. Por otro lado, el método de evaluación empleado ha tratado de que los usuarios juzguen la calidad en función de una referencia (señal original de alta calidad) y de esa forma ser lo mas estrictos en la medición de la calidad de la señal decodificada. Sin embargo, para trabajos futuros (y evitar la demora que implica el uso de métodos subjetivos) seria importante utilizar métodos objetivos de buen desempeño como el PEAQ (Perceptual Evaluation of Audio Quality) propuesto en la norma ITU-R BS.1387-1 [23] y el MOQA (Medida Objetiva da Qualidade de Áudio) propuesto en [24]. Finalmente es importante señalar que la complejidad de la codificación tiene que ser debidamente controlada, a fin de que el codificador sea atractivo para aplicaciones en comunicaciones multimedia y transmisiones en tiempo real. VI. AGRADECIMIENTOS Los autores agradecen a FAPESP (“Fundação de Amparo à Pesquisa do Estado de São Paulo”) por el apoyo brindado durante en el desarrollo del presente trabajo. REFERENCIAS [1] [2] [3] [4] [5] V. CONCLUSIONES El uso de la transformada wavelets en la codificación de señales de audio representa un campo de investigación bastante amplio en tres aspectos: elección de la familia de [6] [7] Xie Minjie, P. Chu, A. Taleb and M. Briand, “ITU-T G.719: A New Low-Complexity Full-Band (20 KHz) Audio Coding Standard for High-Quality Conversational Applications”, 2009 IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, October 1821, 2009, New Paltz, NY. ISO/IEC 11172-3:1993, “Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to About 1,5 Mbit/s - Part 3: Audio”, 1993. ISO/IEC 13818-3:1998, “Information Technology — Generic Coding of Moving Pictures and Associated Audio Information —Part 3: Audio”, 1998. ISO/IEC 13818-7:2004, “Information Technology — Generic Coding of Moving Pictures and Associated Audio Information —Part 7: Advanced Audio Coding (AAC) ”, 2004. United States Advanced Television Systems Committee, “Digital Audio Compression (AC-3) Standard”, Doc A/52, 10 Nov. 94 - 12 Apr 95. N.S. Jayant and Peter Noll, Digital Coding of Waveforms, Principles and Applications to Speech and Video, Prentice-Hall, 1984. D. Naveen and A. Jhansi, “Implementation of Psychoacoustic Model in Audio Compression using Munich and Gammachirp Wavelets”, [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] International Journal of Engineering Science and Technology, Vol. 2(5), 1066-1072, 2010. Khalil Abid and Kais.Ouni, “An Improved Psycho-acoustic Model for MPEG-1 Using a Morlet Cambridge Wavelet”, IEEE International Conference on Signals, Circuits and Systems, 2009. Deppen Sinha and Ahmed H. Tewfik, “Low Bit Rate Transparent Audio Compression using Adapted Wavelets”, IEEE Trans. Signal Processing, vol. 41, No. 12, 1993. Raghuveer M. Rao and Ajit S. Bopardikar, Wavelet Transform : Introduction to Theory and Applications. Addison Wesley Longman, Inc, 1998. Ingrid Daubechies, Ten Lectures on Wavelets , Philadelphia, PA: Springer-Verlag, 1992. P. P. Vaidyanathan, “Quadrature Mirror Filter Banks, M-Band Extensions and Perfect-Reconstruction Techniques”, IEEE ASSP Magazine, July 1987. Martin Vetterli and Cormac Herley, “Wavelets and Filter Banks : Theory and Design”, IEEE Trans. Signal Processing, vol. 40, no. 9. 1992. Guillermo Kemper, "Um Método de Compressão de Áudio Baseado na Codificação de Subbandas Wavelets", Tese de Doutorado, Faculdade de Engenharia Elétrica e de Computação (FEEC), Universidade Estadual de Campinas (UNICAMP), SP, Brasil, 2001. A. V. Oppenheim, Applications of Digital Signal Processing, Prentice Hall, 1987. Seymour Shlien, “Guide to MPEG-1 Audio Standard”, IEEE Trans. Broadcasting, vol 40, no. 4, 1998. Peyton Z. Peebles, Jr., Probability Random Variables, and Random Signal Principles, McGraw-Hill, 1993. Allen Gersho and Robert M. Gray, Vector Quantization and Signal Compression , Kluwer Academic Publishers, 1992. Allen Gersho, “On the Structure of Vector Quantizers”, IEEE Trans. on Information Theory, Vol. IT-28, N° 2, March 1982. Yoseph Linde, Andrés Buzo and Robert M. Gray, “An Algorithm for Vector Quantizer Design”, IEEE Trans. on Communications, Vol. COM-28, N° 1, January 1980. Andres Buzo, Augustine H. Gray Jr., and Robert M. Gray and John Markel, “Speech Coding Based Upon Vector Quantization”, IEEE Trans. on Acoustic and Signal Processing, Vol. ASSP-28, N° 5, October 1980. U-R Task Gropup 10/4, Preliminary Draft Recomendation, “Method For Objective Measurements Of Perceived Audio Quality” ITU-R Recommendation BS.1116, Doc. 10-4/19-E, 19 March, 1998. “Method for Objective Measurements of Perceived Audio Quality”, ITU-R, Recommendation BS.1387-1, 1998. A. Lopes, J. G. A. Barbedo, "A New Strategy for Objective Estimation of the Quality of Audio Signals", IEEE LATIN AMERICA TRANSACTIONS, Vol. 2, No. 3, pp. 162-167, Sept. 2004. Guillermo Kemper , recibió en 1994 el título de Ingeniero Electrónico de la Universidad Privada Antenor Orrego de Trujillo, Perú. En 1996 obtuvo el grado de Maestro de la Universidad Estadual de Campinas UNICAMP, Brasil. En el 2001 obtuvo el titulo de doctor en Ingeniería Eléctrica y Comunicaciones también de la UNICAMP. Ha participado durante mas de 3 años del Convenio CPqD (Centro de Pesquisa y Desenvolvimiento de Telebrás) – UNICAMP, desarrollando trabajos orientados al diseño, simulación y evaluación de codificadores de audio y vídeo. Actualmente es profesor investigador de los programas de pre-grado y post-grado de las Escuelas Ingeniería Electrónica de la Universidad de San Martín de Porres de Lima - Perú (USMP) y de la Universidad Peruana de Ciencias Aplicadas (UPC). Asimismo es investigador del Instituto Nacional de Investigación y Capacitación en Telecomunicaciones del Perú – INICTEL-UNI. Sus áreas de investigación son codificación de voz, audio, imágenes y vídeo; así como comunicaciones digitales y televisión digital. Yuzo Iano , recibió los títulos de ingeniero, maestro y doctor en Ingeniería Eléctrica, en la Universidad Estadual de Campinas, SP, Brasil (UNICAMP), en 1972, 1974 y 1986 respectivamente. Actualmente es Profesor Asociado de la Facultad de Ingeniería Eléctrica de la UNICAMP, siendo coordinador del Laboratorio de Comunicaciones Visuales de la misma institución. Fue responsable de los proyectos de procesamiento digital de señales (sonido y vídeo) desarrollados durante el Convenio CPqD (Centro de Pesquisa y Desenvolvimiento de Telebras) – UNICAMP. Sus áreas de interés son codificación e audio y vídeo, compresión de audio y vídeo digital y comunicaciones digitales.
Puede agregar este documento a su colección de estudio (s)
Iniciar sesión Disponible sólo para usuarios autorizadosPuede agregar este documento a su lista guardada
Iniciar sesión Disponible sólo para usuarios autorizados(Para quejas, use otra forma )