Princípios, algoritmos e práticas de cancelamento de eco (AEC) —— Introdução aos módulos envolvidos na estrutura completa do algoritmo de cancelamento de eco

1. Um sistema completo de cancelamento de eco inclui os seguintes módulos:
1. Módulo de estimativa de atraso de tempo (TDE)
2. Módulo de cancelamento de eco (linear) (Cancelamento de eco acústico linear, AEC) (módulo de filtragem linear)
3. Detecção de fala dupla (DTD) ) módulo
4. Módulo de supressão de eco acústico residual não linear (supressão de eco acústico residual, RAES) (módulo de filtragem não linear)

 2. Módulo de estimativa de atraso

Motivos do atraso: o sinal de referência é retirado dos dados recebidos no downlink e o sinal do microfone é retirado dos dados coletados. Há um atraso no meio, tempo de propagação do som (independentemente de ser dentro ou fora) , o buffer para reproduzir o trabalho do encadeamento de coleta e a diferença de horário de inicialização. Dispositivos diferentes e ambientes diferentes têm atrasos diferentes.

A tecnologia de cancelamento de eco implementada usa principalmente dois tipos de sinais sonoros, um é o sinal de eco e o outro é o sinal de referência. Na implementação real do cancelamento de eco, há um certo atraso entre os dois sinais . Existem três fontes principais de atraso:

1. O atraso de tempo gerado desde a aquisição do sinal de referência até quando o sinal de referência é reproduzido no alto-falante.

2. O atraso causado pelo sinal de referência que chega ao microfone depois de ser transmitido pelo alto-falante.

3. Depois que o microfone obtém o sinal de eco, ele o envia para o atraso de tempo gerado pelo módulo de algoritmo de cancelamento de eco.

O objetivo do módulo de estimativa de atraso é controlar o atraso entre o sinal de eco e o sinal de referência para mantê-lo dentro de um determinado intervalo, o que é conveniente para os módulos seguintes processarem o eco.

Impacto do módulo de estimativa de atraso

O alinhamento de atraso pode reduzir a pressão no filtro adaptativo, reduzir o comprimento de rastreamento do filtro e reduzir a sobrecarga. Se não houver módulo de alinhamento de atraso, o comprimento do rastreamento do filtro precisa ser projetado para cobrir todos os sinais de referência ao sinal de eco O atraso, que geralmente é de centenas de milissegundos, é muito computacionalmente intensivo.

O alinhamento dos atrasos afeta o desempenho do filtro. Se o atraso de tempo não estiver alinhado, a correlação entre o sinal de referência e o sinal de eco rastreado pelo filtro é extremamente baixa e a convergência do filtro será afetada. O atraso é superestimado, o sinal de referência não pode ser encontrado no buffer de sinal rastreado pelo filtro e o filtro não pode convergir.

A velocidade de alinhamento do atraso afeta a velocidade de convergência geral, afeta a convergência do filtro e também afeta o processamento de eco não linear. Quando o atraso muda, é necessário ser capaz de rastrear rapidamente a mudança do atraso e ajustá-lo rapidamente, caso contrário, ecos aparecerão ocasionalmente.

Projeto de estimativa de latência

De um modo geral, devido à resposta dos alto-falantes e microfones do dispositivo, a distribuição dos ecos é aproximadamente na faixa de frequência média e há pouco eco nas partes de alta e baixa frequência, portanto, o eco pode ser rastreado em a faixa de frequência média.

O módulo aec do Webrtc utiliza o método do Espectro Binário no domínio da frequência. Mapeie a distribuição da banda de frequência média do espectro em ambas as extremidades para os dados binarizados, encontre o sinal da extremidade oposta com a maior semelhança e calcule o atraso de tempo correspondente. Este método tem uma quantidade baixa de cálculo, mas é muito afetado por barulho.

O módulo aec3 do Webrtc usa filtragem linear. O método de filtro combinado é executar diretamente o processamento NLMS (Normalized Least Mean Square) no sinal de domínio do tempo, que é muito robusto.

Haverá vários picos na correlação cruzada de sinais no domínio do tempo, resultando em estimativa de atraso imprecisa. Consideramos usar o método de correlação cruzada no domínio da frequência, combinado com filtragem linear, por um lado para garantir robustez, por outro lado, usar as características de velocidade de detecção rápida da correlação cruzada no domínio da frequência para acelerar a velocidade de detecção. 

3. Módulo de cancelamento de eco (linear) (cancelamento de eco acústico linear, AEC) (módulo de filtro linear)

O módulo de cancelamento de eco é projetado principalmente usando um filtro adaptativo, e indicadores relacionados, como estabilidade, complexidade do algoritmo e taxa de convergência, precisam ser considerados durante o projeto. Para obter um melhor efeito de cancelamento de eco, além do filtro adaptativo, ao projetar o módulo de cancelamento de eco linear, também é necessário introduzir a detecção de canal duplo.

x(n) é o sinal de entrada na extremidade oposta, através do caminho de eco desconhecido h(n) para obter y(n)=x(n)∗h(n), mais o ruído de observação v(n), para obter o sinal de entrada de extremidade próxima s(n)=y(n)+v(n). x(n) obtém o sinal de eco estimado por meio do filtro adaptativo w(n) e o subtrai do sinal de entrada da extremidade próxima s(n) para obter o sinal de erro e(n), ou seja, e(n)= s(n)− conj(w(n))x(n), quanto mais próximo o caminho de eco estimado pelo algoritmo de filtragem adaptativa estiver do caminho de eco real, menor será o erro e menor será o resíduo de eco. Portanto, use o tamanho do erro obtido como a direção do ajuste adaptativo.

O filtro usa um algoritmo adaptativo específico para ajustar continuamente o vetor de peso, de modo que o caminho de eco estimado w(n) se aproxime gradualmente do caminho de eco real h(n). Desta forma, a saída do filtro pode se aproximar do eco real, de forma que não haja sinal de eco no sinal de erro.

No estágio de convergência do filtro adaptativo, o sinal da extremidade próxima possui apenas o eco e a voz da extremidade próxima não pode ser mixada. Porque o near-end e o ruído irão perturbar o processo de convergência de h(n). Ou seja, o algoritmo de cancelamento de eco é necessário para convergir muito rapidamente após começar a ser executado. É melhor exigir que o algoritmo da outra parte converja assim que você falar. Após a conclusão da convergência, se a outra parte começar a falar , o coeficiente h(n) não deve mudar. Precisa se estabilizar.

O caminho do eco pode mudar. Uma vez que haja uma mudança, o algoritmo de cancelamento de eco deve ser capaz de julgá-la, pois o aprendizado do filtro adaptativo precisa ser reiniciado, ou seja, h(n) precisa de um novo processo de convergência para se aproximar do novo eco caminho h. Os filtros adaptativos precisam encontrar um equilíbrio entre velocidade de convergência e desempenho de rastreamento, desalinhamento em estado estacionário.

Projeto de Filtro Linear

Filtro adaptativo, filtro NLMS e filtro Kalman são comumente usados ​​atualmente, e esses dois filtros têm suas próprias vantagens e desvantagens. A filtragem de Kalman tem uma velocidade de convergência rápida e carece de desempenho de convergência; NLMS é relativamente estável. Basicamente, existem diferentes vieses na velocidade de convergência, desempenho de rastreamento e desalinhamento de estado estacionário. Mas não importa o tipo de filtro, você pode ajustar a velocidade de rastreamento para alterar o equilíbrio entre velocidade de convergência e desempenho de rastreamento. NLMS altera o valor do tamanho do passo e Kalaman altera o ganho.

Considere o uso misto de vários filtros, aproveite as vantagens de diferentes filtros, garanta a velocidade de convergência e também limite a divergência um do outro. O filtro não linear também participará da estimativa do status do eco e da conversa dupla, controlando assim o tamanho da etapa de rastreamento do filtro adaptativo e realizando o rastreamento de etapas variáveis ​​de acordo com o status.

4. Módulo de supressão de eco acústico residual não linear (supressão de eco acústico residual, RAES) (módulo de filtragem não linear)

É difícil para o filtro adaptativo eliminar completamente o eco. Para eliminar o eco residual, é necessário introduzir um módulo de supressão de eco residual. Quando projetamos o módulo de supressão de eco residual, não precisamos apenas alcançar um equilíbrio entre a distorção de fala próxima e a supressão de eco residual, mas também precisamos equilibrar o efeito do algoritmo e a complexidade computacional.

O módulo de processamento não linear geralmente calcula a correlação entre o sinal de referência, o sinal do microfone, o sinal de eco linear e o residual e estima o eco residual ou o estado do eco. A eliminação de eco por meio da filtragem de Wiener se concentra em como estimar o eco residual, e a estimativa do tamanho do eco residual também afeta diretamente o resultado final da eliminação. Se o eco residual for subestimado, pode haver ecos residuais; se o eco residual for superestimado, a voz do final próximo será danificada na conversa dupla.

Projeto de filtro não linear

Para o sinal de referência, sinal de microfone, sinal de eco linear e sinal residual, nosso módulo de processamento não linear adota as características de correlação de pico, correlação de domínio de frequência e similaridade de amplitude para julgar e obter informações em conjunto, como status de fala dupla e status de eco . Além da correlação acima, o peso de atualização do filtro linear também pode ser usado para obter o estado do eco. O que afeta a saída final é o eco residual ou a estimativa do tamanho do eco. A estimativa do eco residual adota o método de combinar o estado do eco e a estimativa ERL (Echo Return Loss) do filtro.

O filtro adaptativo tem três modos de trabalho (detectados pelo DTD):

  • Fala na ponta distante existe, fala na ponta próxima não existe: filtragem, atualização do coeficiente de filtro adaptativo
  • Fala na extremidade distante presente, fala na extremidade próxima presente: filtragem
  • Voz distante não existe: não faça nada

referências:

https://worktile.com/kb/ask/5708.html

https://www.cnblogs.com/LXP-Never/p/11703440.html

Acho que você gosta

Origin blog.csdn.net/qq_42233059/article/details/131959160
Recomendado
Clasificación