UFPR Departamento de Universidade Federal do Paraná Engenharia Elétrica Processamento Digital de Sinais Professor : Marcelo Rosa CANCELAMENTO DE ECO Mark Ogawa GRR20034997 Curitiba, 25 de novembro de 2007. INTRODUÇÃO O cancelamento de eco é uma técnica de processamento de sinal que remove sinais não desejados da fala e áudio. O objetivo do cancelamento é melhorar a qualidade do sinal. Um exemplo em que se aplica o cancelamento de eco é em teleconferências onde a presença de eco prejudica a interação entre os participantes, uma vez que a pessoa que fala no momento escuta a sua própria voz. Imagine em uma reunião em teleconferência em que um telefone esteja com o viva-voz ligado e haja várias pessoas na mesa. Sem o cancelamento de eco a reunião será prejudicada, pois essas pessoas que estão na mesa escutarão suas vozes e isso trará desconforto e improdutividade pois terão que interromper o raciocínio devido este som indesejado. Há dois tipos de ecos: eco acústico e eco híbrido. PROBLEMA DO ECO Em uma teleconferência ponto a ponto, há o par speaker/microfone em cada local da conexão. Quando o participante remoto está falando, sua voz é recebida pelo seu microfone e transmitida para o participante local onde é amplificada através do speaker. O microfone do participante local irá receber o sinal remoto direto de seu speaker, mas também de vários sinais refletidos em vários locais da sala. Se o sistema não possui um cancelador de eco, o participante remoto irá ouvir várias versões atrasadas de sua própria voz. O eco é um incômodo desconcertante que tende a interromper a conversa. Figura 1: exemplo de eco. Os objetos mais comuns tendem a refletir sons atenuados. Os sinais refletidos possuem menor conteúdo de alta freqüência. A figura 2 mostra um modelo em Simulink de um eco acústico. Neste modelo, é representada uma conexão direta entre o speaker e o microfone. O atraso é causado pela velocidade do som (aproximadamente 360 m/s), enquanto os filtros utilizados modelam a atenuação da energia do som de alta freqüência.Os componentes refletidos são atenuados para simular a propagação e perda pela reflexão. Figura 2: Modelo representado em Simulink para simular eco acústico. O modelo representado na figura 2 é conhecido como função de transferência acústica. Representa a função de transferência do microfone para o speaker. É possível correlacionar a função do modelo acústico diretamente como mostra a figura 3. O objetivo do filtro adaptativo em um cancelador de eco acústico é de medir indiretamente uma versão deste modelo uma forma de onda (som) transmitida e recebida. O filtro adaptativo é necessário porque o modelo não é conhecido prioritariamente. Logo, ele é necessário para corrigir qualquer mudança no ambiente acústico, como movimento do speaker ou microfone. Figura 3: Cancelamento de eco na rede telefônica usando um adaptativo. Figura 4: Medida direta do canal acústico. O modelo Simulink na figura 4 mostra que ao transmitir uma seqüência aleatória, o sinal recebido no microfone deverá exibir apenas a alta correlação da cópia da seqüência original. Através da correlação cruzada desta seqüência aleatória é possível obter a medida direta do ambiente acústico. Do modelo de eco apresentado, é esperado um atraso e características de um filtro passa-baixa. A figura 5 mostra um exemplo de duas correlações medidas. A primeira figura foi medida com o microfone na frente do speaker. O atraso foi praticamente zero. A função de correlação medida é consistente com a resposta atrasada de um filtro passa-banda. Isto se deve às significantes freqüências (alta e baixa) do microfone e speaker. A segunda figura foi medida com o microfone longe do speaker. O sinal sofreu um atraso e uma atenuação. Figura 5: Medidas de reflexões acústicas. Ambas as medidas apresentam reflexões de áudio. Os caminhos da segunda transmissão mostram que os sinais são mais fracos conforme há atrasos mais longos. Na segunda figura, vários ecos são combinados para produzir uma função de transferência de áudio bem complexa. Apesar de o caminho direto do microfone para o speaker não ser causado pela reflexão acústica, vai parecer um eco para o participante remoto se o sistema de transmissão ter um atraso significativo. Isto ocorre, por exemplo, quando se está tendo uma conversa pelo Skype quando um participante consegue escutar a sua própria voz. O que ocorre não é um eco e sim um atraso do sinal e o participante remoto não está utilizando um headset ou um fone para escutar e sim as caixas de som de seu próprio computador. Em geral, os sistemas de transmissão de telefone tentam reduzir a latência do sistema para o ponto onde uma conversa normal não é contrariamente interrompida. CANCELAMENTO DE ECO DE LONGO ATRASO Os filtros adaptativos em cancelamento de eco são habitualmente implementados recorrendo à estrutura de resposta impulsional finita. Esta estrutura exige maiores recursos computacionais que a de resposta impulsional infinita, tanto em nível de memória ocupada como em número de coeficientes a ajustar. É a mais usada devido à garantia de estabilidade. Contudo é inviável o seu uso direto nas comunicações via satélite e em teleconferências porque os atrasos são superiores a 500ms, implicando um número de elementos de atraso e respectivos coeficientes ajustáveis superior a 4000. Ainda que a utilização de todos os coeficientes e o cálculo do eco simétrico em cada iteração sejam computacionalmente realizáveis, o resultado será insatisfatório porque o passo de adaptação será tão pequeno que tornará a velocidade de convergência inaceitável. A precisão finita por seu lado limitará a atenuação do eco retornado originando um mau cancelador de eco. CANCELAMENTO DE ECO UTILIZANDO CENTRADOS DE BAIXO COMPRIMENTO FILTROS TRANSVERSAIS Este cancelador consiste em dois canceladores, um para cada direção de comunicação, e um detector de fala. Cada cancelador é constituído por um filtro adaptativo de baixo comprimento e um estimador de atraso. O estimador de atraso localiza e acompanha a posição da reflexão do sinal, onde se mantém centrado o filtro adaptativo correspondente, ignorando o restante do caminho de eco, como mostra a figura 6. Figura 6: Cancelador de eco com filtros transversais centrados. Este sistema alcança os objetivos de conseguir elevada atenuação do sinal de eco, grande velocidade de convergência pois o número de coeficientes a utilizar é bastante inferior ao total de atraso suportado e baixa deriva na ausência de sinal ou em situações de conversação cruzada pois o detector de fala inibe a adaptação nessas situações. CANCELADOR DE ECO LMS Uma das técnicas mais conhecidas para implementação de um filtro adaptativo é o algoritmo LMS (Least Mean Squares) que utiliza um algoritmo de gradiente estocástico para adaptar a carga de um filtro. Ajusta a carga do filtro para minimizar o erro no sentido da média dos quadrados. O método LMS trabalha no domínio do tempo. A figura 7 mostra um modelo em Simulink de um algoritmo LMS aplicado em cancelamento de eco. O algoritmo possui duas entradas, u(n) e e(n). Para o cancelamento de eco, a entrada “u” é o sinal recebido do participante remoto antes de ser transmitida na sala. A outra entrada é o erro residual “e” que permanece aplicando o filtro para remover o eco. O LMS pode ser expresso pelas equações abaixo. Figura 7: Modelo em Simulink de LMS. A equação LMS tem um termo adicional μ que é utilizado para ajustar a magnitude que é aplicada no filtro que varia de 0 a 2. Extensões na técnica do LMS foram desenvolvidas para melhorar a performance e utilidade no cancelamento de eco. Para melhorar a performance foram desenvolvidas NLMS e PNLMS que melhoraram a capacidade de rejeitar sinais quando aplicadas em aplicações no mundo real. Porém, há um significante problema em utilizar o LMS para cancelamento de ecos acústicos. Atrasos muito longos em eco requerem filtros adaptativos com muitos taps. Conseqüentemente, o algoritmo pode se tornar muito intenso computacionalmente e difícil de se implementar. Para isso foi desenvolvido o BLMS que aproveita as características do hardware de DSP para melhorar a eficiência do processo tornando as amostras em frames. CONCLUSÃO O cancelamento de eco é muito importante para a melhoria da qualidade de voz em uma ligação pois, devido às técnicas de compressão de voz e o processo de empacotamento, que geram atrasos no encaminhamento do sinal, são gerados os ecos. Existem várias maneiras de cancelar o eco que foram apresentadas neste trabalho e, apesar de um método ser melhor em um aspecto pode ser pior em outro. Por isso ainda se pesquisa um método que possa solucionar ou pelo menos reduzir todos os incômodos que o eco traz com rapidez e eficiência. REFERÊNCIAS BIBIOGRÁFICAS http://www.lps.ufrj.br/profs/sergioln/papers/BC14.pdf http://www.cisco.com/univercd/cc/td/doc/product/software/ios123/123cgcr/vvfax_c/ int_c/vpcg/ch5_echo.htm#wp1008877 http://en.wikipedia.org/wiki/Echo_cancellation Marques, P.A.C.; Sousa, F.M.G.; Leitão J.M.N.; “Cancelamento de Eco de Longo Atraso” http://www.arcx.com/sites/EchoCancellers.htm