Artur Benneman Rafael Henrique de Moraes Feron Renan dos Santos Fagundes Motivação Comunicações de voz permanecer o meio predominante de comunicação humana. Proporciona a transmissão de sinais de fala com boa qualidade através de canais de comunicação com banda estreita. O sistema CELP é o núcleo da maioria dos sistema celular, e sistemas de comunicação de banda estreita(VoIP). SINAIS DA FALA Fala é produzido por um sinal de excitação gerada em nossa garganta, o que é modificado por ressonâncias produzidas por diferentes formatos de nosso trato vocal, nasal e da faringe. Vogais e Consoantes Este sinal de excitação pode ser a vibração glotal produzido pela abertura e fechamento periódico cordas vocais o que cria voz sonora, como as vogais ou apenas o fluxo continuo de ar empurrado por nossos pulmões, que cria a fala não articulada, tais como o consoantes, ou mesmo uma combinação de ambos ao mesmo tempo Anatomia da voz As três estruturas mais importantes são os pulmões as cordas vocais e a laringe. A fonte de energia para a geração de sons é provida pelo diafragma e músculos abdominais que pressionam os pulmões e geram um fluxo de ar controlado que passa pelas cordas vocais. O mecanismo de produção da voz apresenta uma resposta limitada em freqüência, com limite por volta de 10kHz. 95% da energia do sinal de voz esta concentrada na faixa de freqüência entre 300 e 3400 Hz, pode se limitar o canal a esta banda com uma perda tolerável em qualidade. Anatomia do voz Quando o ar vibrante entra na glote há uma mudança na resistência do ar (ao abrir ou fechar a continuidade da traquéia) e isso faz o processo de modulação da voz. Anatomia da voz O som é produzido quando a glote, que é uma abertura nas cordas vocais, vibra abrindo e fechando. O fluxo de ar é interrompido e assim se cria uma seqüência de impulsos que possuem algumas freqüências básicas chamadas de tom (pitch). Nos homens estas freqüências estão entre 80 e 160Hz e nas mulheres entre 180 e 320Hz. Vogais e consoantes Exemplos de sons do tipo VOICED são as 5 vogais, das quais notam-se claras diferenças no pitch e na “formant” do sinal ao comparar o som da vogal ‘A’ com o som da vogal ‘I’ dispostas nas figuras abaixo: Vogais e consoantes Vogais e Consoantes Já os sons do tipo UNVOICED, são bem caracterizados através do exemplo do fonema ‘S’, que consta abaixo. Sons deste tipo são descritos através de AWGN – Aditive White Gaussian Noise, e possui amplitude praticamente constante em todo espectro. Pitch e formantes O componente periódica da excitação glotal é caracterizado pela sua freqüência fundamental F0 [Hz], chamado pitch. As freqüências de ressonância o trato vocal, oral e da faringe são chamados formantes. No espectro de um quadro de fala, o pitch aparece como picos estreitos na fundamental e harmônicas Formantes aparecem como picos largos do envelope do espectro Pitch e formantes Codecs existentes Comparação rudimentar de alguns dos esquemas de codec existens na atualidade em termos de qualidade de voz e bitrate. Evolução dos algoritmos Linear Predictive Code Análise de predição linear de sinais de voz é o núcleo da maioria dos sistemas de codificação parametricos de voz (Celulares, VoIP, e etc). Um modelo simples de síntese da voz que tem sido usado em processamento de fala para várias aplicações de codificação. Modelo do aparelho fonador •Este modelo do sistema é inspirado no mecanismo humano de produção da fala. • Voz sonora é produzida pela exitação do filtro do trato vocal com pulsos quasi-periódica do glote. • A periodicidade da voz sonora é devido à vibração cordas vocais. •Fala não articulada (não vozeada) é produzido forçando o ar através de uma constrição no trato vocal. Linear Predictive Coding O trato vocal é geralmente representado por filtro digital de décima ordem do tipo somente pólos, como mostrado no modelo LPC da fala. A fala é produzida pela excitação do filtro do trato vocal, com pulsos quasi-periodicos pulsos da glote E a fala não articulada é gerada usando o estímulo ruído aleatório ou pseudo-branco. Os coeficientes do filtro e os parâmetros de excitação são geralmente determinadas a cada 20 ms ou menos . Codificador LPC Decodificador LPC Comparação entre real e LPC LINEAR PREDICTIVE CODING O filtro digital para aplicações do linear predictive coding é caracterizado pela seguinte equação de diferenças. • Os parâmetros de ai são os coeficientes do filtro e controlam as características de freqüência de resposta do filtro. Estes são determinados pela analise LPC. Analise LPC Derivação do algoritimo LPC O objetivo do LPC é minimizar a informação contida no sinal de exitação. Os parametros de predição ai são desconhecidos e são determinadas pela minimização Erro quadratico medio (MSE) do sinal de exitação (e(n)). Derivação do algoritimo LPC O sinal de excitação (e(n)) pode ser gerado apartir de um sinal de voz (s(n)) atraves da convolução com o filtro LPC inverso, o qual é um filtro FIR, com coeficientes ai (a determinar) Derivação do algoritimo LPC Isto é feito tomando a deriva do sinal de energia da exitação a cada uma dos coeficientes, e igualando a zero. Derivação do algoritimo LPC Isto gera uma Matriz Toepliz, que pode ser resolvida usando o algoritmo recursivo Levinson-Durbin. Fittro de sintese A predição dos parâmetros a(i) também são usados para formar o filtro digital somente pólos para síntese de voz. Os coeficientes do LPC são computados resolvendo o a matriz de autorrelação, gerando o filtro: Estruturas de Filtros ‘All-Pole’ Filtro ‘all-pole’, forma direta. Filtro lattice – Tem a vantagem de ter maior imunidade a quantização Estimação do ganho O valor do ganho a ser aplicado no sinal de exitação escolhido é determinado pelo valor RMS do sinal de exitação ideal. O qual é obtido na analise LPC, sendo o primeiro coeficiente dá matrix de autocorrelação Seleção de sinal vozeado não vozeado Apartir do sinal de autocorrelação do sinal (excluindo o valor R(0)) é definido um limiar de decisão. Usualmente 0,3 do valor normalizado do vetor. Estimação periodo do Pitch A fala possui uma falsa periodicidade, oque dificulta a estimativa do pitch Pode ser determinado apartir do sinal de autocorrelação do sinal, procurando os valores de pico e reptições do sinal (na faixa de 20 a 160). Como visto nas figuras abaixo. Estimativa do pitch - Sinal não vozeado Estimativa do pitch - Sinal vozeado Code Excited Linear Prediction Explora melhor a idéia de codificação análise-por- síntese da fala, utilizando o conceito de quantização vetorial (VQ) para a seqüência de excitação. O codificador seleciona uma sequência de excitação de um codebook de seqüências pré-definidas estocásticas. CELP CELP, adicionalmente, aproveita a periodicidade de sons vozeados e melhorar a eficiência do preditor. O filtro do preditor de termo longo é cascateado com o filtro de síntese, o que melhora a eficiência do codebook O mais simples preditor de longo prazo consiste de um filtro de um único polo, o qual representa um simples atraso com ganho ajustável O método de escolha dos vetores do Codebook é a analise por síntese CELP : Analise por sintese •O sistema varre cada um dos possíveis candidatos a sinal de excitação oriundos do gerador de excitação •Identifica o sinal que minimiza o erro entre o correspondente sinal sintetizado e o sinal de fala da entrada •O Decoder correspondente é simplesmente o gerador de excitação e o filtro de sintetização . CELP : Com filtro LTP Esta estrutura adiciona o filtro de predição longa (LTP), o qual é utilizado para aproveitar o fato de que o sinal de exitação tem uma alta autocorrelação na frequencia do pitch. CELP : Estrutura Original A estrutura do codificador CELP original tem como filtro LTP um filtro de um pólo apenas. Essa adição aproveita o fato de que o sinal de exitação apresenta uma alta autocorelação na frequencia do pitch. Porem esse modelo é computacionalmente ineficiente. CELP : Codebook Adaptativo Cada vetor do Codebook adaptativo representa diferentes valores de pitch. Assim a busca pelos os parâmetros do filtro de predição longa são simplificados a busca de um vetor no codebook adaptativo. CELP : Estrutura final •Retirar o efeito do frame anterior deixado nas condições iniciais do filtro de sintese. •Encontrar o vetor do codebook Adaptativo que minimiza o Erro quadratico do sinal sintetizado.E retirar o efeito desta exitação •Encontrar o vetor do codebook Fixo que minimiza o Erro quadratico do sinal sintetizado.