[bibshow file=ref.bib]

Objetivos

Realizar a síntese de um sinal de voz com parâmetros conhecidos, utilizando o modelo do pulso glotal proposto por Rosenberg [bibcite key=rosenberg1971effect] e um filtro IIR (Infinite Impulse Response) para modelar o trato vocal. Esta síntese permitirá fazer uma verificação da eficácia do algoritmo do IAIF [bibcite key=alku1991analysis] implementado, por meio da comparação entre o pulso glotal estimado pelo IAIF e o pulso utilizado para a síntese.

Metodologia

Modelo de Rosenberg para o Pulso Glotal

Para modelar o formato de um pulso glotal natural, Rosenberg [bibcite key=rosenberg1971effect] propôs uma aproximação para sintetizar este pulso utilizando uma função contínua por partes da seguinte forma [bibcite key=Rabiner1978]:

(1)   \begin{equation*} g[n]=\begin{cases} \frac{1}{2}\left(1-cos\left(\frac{\pi n}{N_1} \right) \right), & 0\leq n \leq N_1\\\\ cos\left(\frac{\pi\left(n-N_1\right)}{2 N_2} \right), & N_1\leq n \leq N_1+N_2\\ 0, & \text{para os demais casos} \end{cases} \end{equation*}

em que N_1 e N_2 modelam o tempo de abertura e de fechamento da glote, respectivamente, como ilustrado na Figura 1. Comumente, na literatura, N_1>N_2.

Figura 1 – Pulso glotal de Rosenberg

 

 

Filtro IIR

O Infinite Impulse Response (IIR) é um filtro digital que faz uso de uma realimentação, de modo que a saída é computada com base em seus valores passados e nos valores presentes e passados de sua entrada [bibcite key=Rabiner1978], de acordo com a seguinte equação a diferenças:

(2)   \begin{equation*} y[n]= \sum_{k=1}^{N} a_k y[n-k] +\sum_{r=0}^{M} b_r x[n-r] \end{equation*}

em que N representa o número de polos, M o número de zeros, y é a saída do filtro e x é o sinal de entrada.

A resposta espectral do filtro IIR pode ser obtida a partir da função de transferência do filtro. Esta, por sua vez, é obtida pela aplicação da transformada Z em (2), resultando na seguinte expressão:

(3)   \begin{equation*} H(z)=\frac{\sum_{r=0}^{M} b_r z^{-r}}{1-\sum_{k=1}^{N} a_k z^{-k}} \end{equation*}

Foi utilizado um filtro IIR composto apenas por polos, i.e., b_r=\{^{1, r=0}_{0, r\neq 0}. A escolha desse tipo de filtro se dá pelo fato de que, com exceção de sons nasais e fricativos, o trato vocal pode ser modelado apenas por ressonâncias [bibcite key=rosenberg1971effect].

Procedimento para a Síntese do Sinal

No processo de síntese, primeiramente foi gerado um trem de impulsos em que a distância entre cada impulso corresponde ao período fundamental escolhido. Em seguida, esse trem de impulsos foi convoluído com um pulso glotal de Rosenberg sintetizado. Então, este resultado foi tratado por um filtro IIR, como um modelo de trato vocal, de acordo com o proposto anteriormente, com N=6. Esta configuração foi utilizada para que houvessem três frequências de ressonância na filtragem, possibilitando a simulação do surgimento de três formantes. Por fim, o sinal de voz sintetizado, resultante da filtragem, foi salvo para ser utilizado na estimação feita pelo IAIF.

IAIF

O sinal sintetizado foi utilizado para testar os resultados da implementação do IAIF (Iterative Adaptative Inverse Filtering) [bibcite key=alku1991analysis], de forma que os pulsos glotais sintetizado e estimado puderam ser comparados. O IAIF foi implementado de acordo com a metodologia apresentada no Relatório nº1 e ilustrado na Figura 2.

Figura 2 – Diagrama de blocos do IAIF

Resultados

Foi sintetizado, como exemplo para o teste, três sinais de voz com as seguintes frequências fundamentais, f_0=300Hz, 205Hz, 110Hz (voz de criança, voz feminina e voz masculina, respectivamente). O pulso glotal de Rosenberg foi implementado utilizando valores arbitrários de N_1 e N_2, respeitando N_1>N_2, de acordo com o representado na Tabela 1.

Rendered by QuickLaTeX.com

O filtro foi projetado de acordo com o descrito na subseção ??, para N=6, resultando em 3 pares de polos conjugado. Os pares de polos foram ajustados para que as frequências de ressonância fossem equivalentes às formantes da vogal /a/ (f_1=730Hz, f_2=1090Hz e f_3=2440Hz, para a voz masculina; f_1=850Hz, f_2=1220Hz e f_3=2810Hz, para a voz feminina; f_1=1030Hz, f_2=1370Hz e f_3=3170Hz, para a voz de criança [bibcite key=ferrand2001speech]) e os raios de cada par de polos conjugados foram escolhidos como r_1=0.95, r_2=0.93 e r_3=0.9 para todos os sinais. Para representar o sinal sintetizado, foi estimado seu espectro utilizando FFT. Na Figura 3 é possível visualizá-lo junto ao contorno do filtro planejado. Nela, as linhas pretas tracejadas indicam as frequências formantes.


Figura 3 – Representação espectral do filtro implementado e do sinal sintetizado.

 

Foi utilizado o IAIF com preditores de ordem v=10 e g=4, encontradas de forma empírica de modo a reduzir o erro de estimação, para estimar o pulso glotal do sinal de voz sintetizado. Foi possível observar na estimação do sinal resultante muita sensibilidade à mudança das ordens dos preditores. Para evitar uma flutuação indesejada na saída do sinal, a estimação do pulso foi feita com um pequeno trecho do sinal. Optou-se por utilizar apenas três ciclos do sinal para a estimação. Após a aplicação do método verificou-se um comportamento inesperado na predição linear, de forma que o sinal estimado aparentou estar invertido verticalmente (“de cabeça pra baixo”). Para a comparação com o sinal glotal sintetizado, foi feito um ajuste manual em que o sinal estimado, com a inversão corrigida e normalizado, pudesse ser comparado com o trecho equivalente do sinal sintetizado original. A comparação entre os sinais encontra se representada na Figura 4.

Figura 4 –  Comparação entre pulso glotal sintetizado original e pulso glotal estimado para f_0=110Hz, f_0=205Hz e f_0=300Hz.

 

Conclusão e Próxima Etapa

O uso de sinais sintetizados para a implementação do IAIF possibilitou que os resultados da estimação fossem verificados e comparados com o sinal original (o que não seria possível com sinais de voz sem o seu respectivo registro eletroglotográfico). Apesar do sinal estimado pelo IAIF apresentar um comportamento similar ao formato de um pulso glotal, a comparação com o sinal sintetizado permitiu observar que a estimação não representa com precisão o pulso glotal original. A sensibilidade do sinal estimado se encontra em função das ordens dos preditores, e a inexistência de um critério bem definido para o ajuste destas ordens causa problemas quanto a exatidão do método aplicado.

Na próxima etapa do trabalho, pretende-se implementar outro método de estimação de pulso glotal, proposto por Dias e Ferreira [bibcite key=dias2014glottal]. Serão comparados os resultados obtidos com os estimados utilizando o IAIF.

 

[/bibshow]

Sobre o Autor

Mestrando em Engenharia Elétrica e Bacharel em Engenharia Eletrônica pela Universidade Federal de Sergipe. Interessado nas áreas de Modelagem Computacional, Processamento Digital de Sinais, Processamento Digital da Fala e Reconhecimento de Padrões. Atualmente desenvolve pesquisa no estudo de modelos computacionais dos mecanismos de produção vocal.

Áreas de Pesquisa: Modelagem Computacional, Processamento Digital de Sinais, Reconhecimento de Padrões, Processamento de Sinais de Voz e Fala, Qualidade Vocal.

Sobre o Autor

Estudante de Graduação em Engenharia Eletrônica na Universidade Federal de Sergipe. Áreas de interesse são Processamento Digital de Sinais, Processamento Digital da Fala e Reconhecimento de Padrões.

1 thought on “Síntese de um Sinal de Voz para a Análise da Estimação do Pulso Glotal

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

pt_BRPortuguês do Brasil