








Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Codificação Voz
Tipologia: Notas de estudo
1 / 14
Esta página não é visível na pré-visualização
Não perca as partes importantes!
O sinal de voz é um sinal limitado em frequência, contínuo no tempo e em amplitude. Embora a frequência máxima deste sinal esteja em torno de 10 kHz, para telefonia limitamos esta frequência em 3,4 kHz, reduzindo a largura de faixa necessária para transmiti-lo, sem perda de inteligibilidade e da capacidade de identificar o locutor, embora com perda de qualidade.
Os sinais de voz são não-estacionários, mas podem ser considerados quase- estacionários em segmentos curtos, tipicamente entre 5 e 20 ms. Logo, os processos de codificação que dependem de propriedades estatísticas e espectrais do sinal são definidos em segmentos curtos. [SPANIAS, 1994].
Os codificadores de voz podem ser classificados em codificadores de forma de onda, codificadores paramétricos e codificadores híbridos.
Nos codificadores de forma de onda, buscamos a representação da informação contida no sinal por meio de um processo de amostragem, quantização e codificação. As técnicas de codificação de forma de onda se aplicam a qualquer sinal analógico (não necessariamente voz).
Os codificadores paramétricos, também denominados de Vocoders , operam utilizando um modelo que representa o processo de geração do sinal de voz. O sinal codificado contém os parâmetros do modelo criado para simular o processo fisiológico de geração da voz. O transmissor define os parâmetros necessários para implementar este modelo e os transmite ao receptor que, com base nestes parâmetros, gera o sinal de voz novamente.
Os codificadores híbridos são aqueles que mesclam conceitos associados a codificadores de forma de onda e aos paramétricos.
Os codificadores mais comuns em telecomunicações são os de forma de onda, como PCM ( Pulse Code Modulation ), e os híbridos, como CELP ( Code Excited Linear Predictive ).
Nas seções 5.2.1 a 5.2.3 apresentaremos um resumo sobre a operação de alguns codificadores de voz importantes utilizados em telecomunicações, sem, no entanto, entrar em detalhes sobre a análise matemática destes codificadores e sem abordar questões relacionadas à implementação, que em geral envolvem complexos conceitos de processamento digital de sinais, que estão fora do escopo deste texto.
Uma análise um pouco mais detalhada sobre codificação de voz pode ser encontrada no Capítulo 13 de [SKLAR,2001]. Um bom texto tutorial sobre o assunto pode ser encontrado em [SPANIAS,1994]. Para um estudo mais completo e profundo, recomendamos ao leitor interessado as referências [CHU,2003] e [OGUNFUNMI, 2010].
5.2.1. PCM (Pulse Code Modulation)
A Modulação por Códigos de Pulsos (PCM – Pulse Code Modulation ) é uma das técnicas mais importantes para codificação de voz, sendo classificada na família de codificadores de forma de onda.
Para a geração do sinal PCM, o primeiro passo é amostrar o sinal. O Teorema de Nyquist diz que é possível recuperar completamente o sinal a partir de suas amostras, desde que a amostragem ocorra a uma frequência, no mínimo, duas vezes superior à máxima frequência do sinal. As Figuras 5.2 a 5.4 ilustram o processo de amostragem. Na Figura 5.2 temos o sinal analógico original; ou seja, o que se deseja digitalizar; na Figura 5.3 temos um trem de impulsos e na Figura 5.4 temos o sinal original, mostrado em cinza, e o sinal amostrado (em preto), que é obtido pela multiplicação do sinal analógico original pelo trem de impulsos. A frequência de amostragem é o inverso do intervalo entre amostras sucessivas, TS na Figura 5.4. Perceba que o sinal amostrado é
um sinal discreto no tempo, só existe nos instantes de amostragem, mas ainda não é um sinal digital, pois ainda pode assumir qualquer valor de amplitude, uma vez que a amplitude de cada amostra corresponde à do sinal original no instante de amostragem.
Como já dissemos, se a freqüência de amostragem for maior ou igual a duas vezes a máxima freqüência do sinal, o sinal original pode ser completamente recuperado a partir de suas amostras. Para entender esta propriedade é necessário analisar o processo no domínio da freqüência. Por exemplo, considere que o sinal analógico original tem freqüência máxima f (^) m e espectro de freqüência como mostrado na Figura 5.5. Quem é
familiarizado com análise de Fourier sabe que o espectro de um trem de impulsos é outro trem de impulsos e que o processo de multiplicação de sinais no domínio do tempo corresponde à convolução dos mesmos sinais no domínio da freqüência1. A Figura 5.6 ilustra a representação no domínio da freqüência do trem de impulsos
1 Se você não está familiarizado com análise de Fourier e este parágrafo está parecendo estar escrito em grego, simplesmente acredite que isto funciona e siga para o texto após a figura 5.8.
Figura 5.4. – Sinal amostrado.
Figura 5.5. – Espectro do Sinal analógico a ser digitalizado.
Figura 5.6. – Espectro do trem de impulsos da Figura 5.3.
Figura 5.7. – Espectro do sinal amostrado.
a cada nível de quantização temos uma palavra código associada, como ilustrado na Figura 5.10. Neste exemplo, o sinal analógico original da Figura 5.2 será transmitido pela seguinte sequência binária, na qual cada três bits representam uma amostra do sinal original: 001 011 011 011 011 010 001 000 000 011 100 011 010 010.
O número de bits da palavra código que irá representar cada amostra quantizada pode ser calculado por:
(5.5)
onde L representa o número de níveis de quantização.
Como o espaço entre amostras é definido pela freqüência de amostragem, que é definido pela máxima freqüência do sinal a ser transmitido, o número de níveis de quantização definirá a taxa de transmissão. Por exemplo, se admitirmos que o sinal ilustrado na Figura 5.2 tem freqüência máxima de 500 Hz, podemos utilizar uma freqüência de amostragem de 1 kHz (2 fm ) e o espaçamento entre amostras adjacentes é de 1 ms. Como cada amostra é representada por três bits (veja Figura 5.10), é preciso transmitir 3 bits em 1 ms, resultando em uma taxa de transmissão de 3 kbps. Em geral, a taxa de transmissão do sinal codificado é calculada por:
(5.6) Como podemos observar na Figura 5.10, o processo de quantização introduz um erro, denominado erro de quantização, que é a diferença entre a magnitude da amostra antes da quantização e a magnitude da amostra quantizada. Quanto maior este erro, pior a qualidade do sistema. É fácil perceber que o máximo erro de quantização possível é igual a metade do passo de quantização, q , que é o espaçamento entre níveis de quantização adjacentes.
Assumindo que o erro de quantização é uniformemente distribuído entre – q /2 e + q /2, sua média é nula e a variância do ruído de quantização (que representa o ruído do quantizador ou potência do erro) pode ser calculada por [SKLAR,2001]:
(5.7) Logo, para diminuirmos o erro de quantização é necessário aumentar o número de níveis de quantização, reduzindo assim o espaçamento entre níveis adjacentes. No entanto, aumentar o número de níveis de quantização significa aumentar o número de bits necessários para codificar cada nível e, consequentemente, aumentar a taxa de transmissão. Ou seja, podemos concluir que na técnica PCM há um compromisso entre
qualidade e taxa de transmissão. Para obtermos mais qualidade é necessário aumentar a taxa de transmissão.
A relação entre a potência de pico do sinal e a potência média do ruído de quantização, dada pela equação (5.7), pode ser calculada por [HAYKIN,2001]:
(5.8) Ou seja, para melhorarmos a qualidade do sistema é preciso aumentar o número de níveis de quantização, o que resulta no aumento da taxa de transmissão, como já concluímos anteriormente.
O processo de quantização descrito acima é denominado de quantização linear, pois o passo de quantização é constante em toda faixa de operação do quantizador. O problema com esta abordagem é que o ruído de quantização também é constante, resultando em uma relação sinal/ruído variável, que diminui à medida que o sinal a ser quantizado tem menor amplitude. Para contornar este problema, uma abordagem é utilizar um quantizador não-uniforme, no qual o passo de quantização varia, com valores menores para menores magnitudes do sinal e valores maiores para maiores magnitudes do sinal. Ou seja, a ideia é distribuir os níveis de quantização com espaçamento não uniforme, objetivando manter a relação sinal/ruído constante, independente da magnitude do sinal, mantendo no entanto o número total de níveis de quantização. A Figura 5.11 ilustra a ideia do quantizador não-uniforme para um quantizador com cinco níveis de quantização, similar ao ilustrado na Figura 5.10.
Figura 5.11 – Ideia do quantizador não-uniforme.
Figura 5.13 – Ilustração das leis de compressão μ e A.
O padrão G.711 do ITU-T utiliza a técnica PCM para digitalização de sinais de voz para transmissão pela rede telefônica. Neste padrão o sinal é amostrado a uma taxa de 8.000 amostras por segundo e cada amostra é codificada em 8 bits, pois são utilizados 256 níveis de quantização. Logo, a taxa de transmissão resultante é de 64 kbps (8. amostras por segundo vezes 8 bits por amostra).
5.2.2. Differential PCM (DPCM)
A técnica DPCM consiste em quantizar diferenças de amplitude entre amostras sucessivas do sinal amostrado, ao invés de quantizar o valor absoluto de cada amostra. Como no sinal de voz não há variação muito abrupta nos valores de magnitude de uma amostra para a próxima, esta abordagem resulta na diminuição da faixa dinâmica do sinal quantizado (diferença entre o maior e o menor valor possível do sinal quantizado), permitindo o uso de um menor número de níveis de quantização e, consequentemente, a redução na taxa de bits resultante do processo de codificação. A Figura 5.14 ilustra a ideia do DPCM para um sinal sem variação abrupta de magnitude: podemos observar na figura o sinal amostrado a partir do sinal original e o sinal resultante da diferença entre amostras sucessivas; os níveis de quantização estão também ilustrados na figura (linhas tracejadas). Podemos perceber facilmente que a quantização do sinal resultante da diferença entre amostras sucessivas requer uma menor quantidade de níveis de quantização se comparado ao sinal amostrado a partir do sinal original.
Figura 5.14 – Ilustração do processo de quantização do sinal diferença entre amostras sucessivas.
Como sucessivas amostras do sinal de voz são altamente correlacionadas, é possível reduzir ainda mais a taxa de transmissão utilizando um algoritmo de predição das amostras do sinal de voz. Nesta abordagem, ilustrada na Figura 5.15, um preditor estima o valor de cada amostra e o sinal quantizado e codificado é a diferença entre o valor real da amostra e o valor estimado pelo preditor, denominado de erro de predição. A alta correlação entre amostras sucessivas garante um bom desempenho do preditor, resultando em um sinal de erro de predição com faixa dinâmica reduzida, o que permite a redução no número de níveis de quantização e, consequentemente, a redução na taxa de transmissão.
A saída de um preditor linear de N passos é uma combinação linear dos N sinais prévios presentes em sua entrada. Em outras palavras, a estimativa para a n -ésima amostra é obtida com base nas amostras ( n – 1), ( n – 2), ..., ( n – N), ou seja:
(5.11) onde h (^) 1, h 2, ..., h N são os coeficientes de predição; y ( n – 1), y ( n – 2), y ( n – N) são os
sinais na entrada do preditor e ( n ) é a o sinal estimado na saída do preditor para a n - ésima amostra. Os valores dos coeficientes de predição devem ser definidos de forma a maximizar o ganho obtido com a codificação diferencial. Para detalhes, veja [JAYANT, 1984].
Uma abordagem mais simples, e em geral mais ineficiente, é fazer a estimativa para a n -ésima amostra com base apenas na amostra anterior (preditor de 1 passo), ou seja:
(5.12)
para a sintetização do sinal de voz, que são transmitidos para o receptor e utilizados para a sintetização da voz. Os parâmetros transmitidos são: os parâmetros para implementação do filtro de síntese; um flag para indicar se o sinal a ser gerado é sonoro ou não-sonoro; para sinais sonoros, a periodicidade do sinal (denominado de período de pitch , que mede o intervalo entre sucessivos ciclos de abertura e fechamento das cordas vocais); e o ganho do amplificador. Como já citado no início desta seção, estes parâmetros são atualizados a cada 10-20 ms para acompanhar a natureza não- estacionária do sinal de voz.
Figura 5.17 – Princípio básico de um codificador paramétrico. Os codificadores paramétricos, embora consigam codificar a voz a taxas muito baixas, não conseguem representar fielmente o sinal de voz, resultando em imperfeições, como, por exemplo, a dificuldade de se identificar o locutor.
Os codificadores híbridos buscam contornar as deficiências dos codificadores paramétricos por meio da sofisticação do processo. A Figura 5.18 ilustra o princípio de uma importante categoria de codificador híbrido: denominada de técnica de Analysis- by-synthesis. Nesta técnica o codificador é composto por um filtro de síntese, que busca representar um modelo do trato vocal, um gerador de excitação e um processador de erro. O gerador de excitação e o filtro geram um sinal de voz que é comparado com o sinal que se deseja transmitir. O erro é processado e realimenta o gerador de excitação, alterando as suas características de modo a aproximar mais o sinal sintetizado pelo filtro do sinal a ser transmitido. O processo realimentado continua até que o sinal sintetizado esteja suficientemente próximo do sinal que se deseja transmitir. Novamente, o sinal de voz é processado em intervalos curtos de tempo, tipicamente quadros de 20 ms. Para cada quadro, determinamos os parâmetros do filtro de síntese e buscamos uma excitação que resulte no menor erro entre o sinal de voz de entrada e o sinal sintetizado. Os parâmetros do filtro e a excitação são transmitidos para o receptor.
Um exemplo importante de codificador de voz que utiliza a técnica de Analysis by Syntheses é o codificador CELP ( Code-Excited Linear Predictive )
Figura 5.18. - Ideia básica de codificador com a técnica Analysis by Synthesis.
Com os codificadores híbridos, ao custo de uma maior complexidade de implementação, é possível reduzir a taxa de transmissão sem perda significativa de qualidade. Por exemplo, o codificador G.728 LD-CELP ( Low Delay Code Excited Linear Predictive ) codifica o sinal de voz a 16 kbps com boa qualidade.
A Figura 5.19 compara os tipos de codificadores em função da qualidade e da taxa de transmissão requerida. Como se pode observar, os codificadores paramétricos ( Vocoders ) não conseguem produzir sinais de boa qualidade. Nos codificadores de forma de onda, como já discutido, a qualidade aumenta com a taxa de transmissão. Os codificadores híbridos não conseguem obter qualidade excelente, mas oferecem qualidade boa com taxas de transmissão menores que os codificadores de forma de onda.
Figura 5.19. - Comparando os tipos de codificadores de voz.